项目案例使用有效 解决ffmpeg的播放摄像头的延时优化问题

在目前的项目中使用了flv的播放摄像头的方案 , 但是延时达到了7-8秒,所以客户颇有微词 , 没有办法,只能开始优化播放延时的问题 , 至于对接摄像头的方案有好几种,这种咱们以后在聊,今天只要聊聊聊优化参数的问题,我们以海康为例
我们可以看到 , 现在延时是11秒

项目案例使用有效 解决ffmpeg的播放摄像头的延时优化问题

文章插图
我们来贴下我们的配置参数
   '-vcodec libx264',    '-r 25',    '-video_size 1280x720',接下来就开始优化系列:
1.增加参数-tune zerolatency//设置零延时-preset ultrafast//--preset的参数主要调节编码速度和质量的平衡,有ultrafast(转码速度最快,视频往往也最模糊)、superfast、veryfast、faster、fast、medium、slow、slower、veryslow、placebo这10个选项,从快到慢目前的延时在6秒左右 , 效果很明显
项目案例使用有效 解决ffmpeg的播放摄像头的延时优化问题

文章插图
2.修改rtsp的通道号由主通道改为子通道
rtsp://admin:mima@192.168.1.100:554/h264/ch1/main/av_stream这里的main改为sub
rtsp://admin:mima@192.168.1.100:554/h264/ch1/sub/av_stream
然后增加以下参数
【项目案例使用有效 解决ffmpeg的播放摄像头的延时优化问题】 '-threads 4',        '-c:a copy',         '-fflags nobuffer',        '-max_delay 1',        '-vprofile baseline',        '-rtsp_transport tcp',        '-crf 20',        '-vsync 2',        '-f flv',我们来看下延时 , 延时已经达到了2-3秒
项目案例使用有效 解决ffmpeg的播放摄像头的延时优化问题

文章插图
我们用vlc来测试下 , vlc的延时是2秒,所以我们的优化还是很有效果的
项目案例使用有效 解决ffmpeg的播放摄像头的延时优化问题

文章插图
尾巴:这也是我经常调试总结出来的经验,希望对大家有所帮助

    推荐阅读