q191201771 / lal

🔥 Golang audio/video live streaming lib/client/server. support RTMP, RTSP(RTP/RTCP), HLS, HTTP[S]/WebSocket-FLV/TS, GB28181, H264/H265/AAC/G711/OPUS, relay, cluster, record, HTTP Notify/API/UI. 直播
https://pengrl.com/lal
MIT License
2.75k stars 467 forks source link

RTSP 1080视频花屏 #46

Closed ChungTak closed 3 years ago

ChungTak commented 3 years ago

测试环境

q191201771 commented 3 years ago

ffplay播放时,加上-buffer_size 1000000参数试试。

ChungTak commented 3 years ago

刚试了一下 不行~ffplay rtsp://localhost:5544/live/test110 -buffer_size 9000000 增加到9000000 也试过同样花屏,同样的位置

ChungTak commented 3 years ago

刚试了另外一个项目https://github.com/aler9/rtsp-simple-server 直播ffplay就可以播放,只有第一帧花,后面都很流畅。
这个也是golang项目,最新支持 push rtmp -> pull rtsp , @q191201771 可以有空看看参考下。

q191201771 commented 3 years ago

lal我这边使用ffplay -buffer_size 1000000 rtsp://localhost:5554/live/test110不会花屏。 你发的这个项目,我试了一下,也会花屏,同样,也可以通过-buffer_size 1000000解决。

请提供一下你使用lal时,ffplay(添加-buffer_size参数后)的输出日志。 另外,你发的这个项目,你测试的是推送rtsp,拉取rtsp吗,推流端和拉流端的运行参数是否和测试lal时完全一致。

ChungTak commented 3 years ago

1.附件是lal和ffplay日志 ffplay.log buffer_size_1000000_rtsp_lalserver.log 2.rtsp-simple-server 项目测试的是推送rtsp,拉取rtsp。推送参数和lal的一样,播放直接ffplay不接任何参数,不需要-buffer_size 1000000 ,我这里不花~~ 测试的视频 bbb_sunflower_1080p_30fps_normal.mp4 是国外下载的地址版本

q191201771 commented 3 years ago

1 我看你提供的ffplay日志显示,设置buffer_size失败了。 你可以尝试在启动ffplay前使用如下命令行命令,修改socket接收缓冲区的默认值,和允许设置的最大值。

echo 2000000 > /proc/sys/net/core/rmem_default
echo 2000000 > /proc/sys/net/core/rmem_max

2 你说的那个服务,也是和lal部署在同一个环境吗? 在我的环境是同样会花的。 由于我没法复现你所描述的对比场景,所以对我意义不大,我以后有空再看吧。