我收到以下H264错误日志.在FFMPEG的帮助下解码RTSP视频流时会出现此日志.5/6秒后显示的图像模糊.图片会不时恢复.但是,它在大多数情况下仍然模糊不清.
编辑:一些FFMPEG论坛建议升级FFMPEG版本以避免这些日志.我已经更新了2015年6月19日的最新FFMPEG版本.原木仍然存在,图片仍然模糊.
编辑2:RTSP流来自GANZ摄像机.本相机通过LAN连接进行连接.
[h264 @ 0abb2aa0] Cannot use next picture in error concealment
[h264 @ 0abb2aa0] concealing 1933 DC, 1933 AC, 1933 MV errors in P frame
[h264 @ 098e5c80] RTP: missed 131 packets
[h264 @ 0abb3300] error while decoding MB 66 25, bytestream (-9)
[h264 @ 0abb3300] Cannot use next picture in error concealment
[h264 @ 0abb3300] concealing 1583 DC, 1583 AC, 1583 MV errors in P frame
[h264 @ 098e5c80] RTP: missed 8 packets
[h264 @ 0b113e40] error …Run Code Online (Sandbox Code Playgroud) 注意:我知道 ffmpeg 和 libav 是不同的库。这是双方共同的问题。
免责声明:重复的SO 问题标记为已回答但实际上没有给出正确的解决方案。
UDP 缓冲区大小不足会导致多个高分辨率视频流的流中断。在 LibAV/FFMPEG 中,可以通过向其附加一些选项 (buffer_size)来设置 udp url (udp://...) 的 udp 缓冲区大小。
但是,对于 RTSP url,这是不支持的。
这些是我找到的唯一解决方案:
这些实际上都不是解决方案。根据我的发现,应该可以使用 APIAVOptions来查找和设置此值。否则,AVDictionary。
在 libav 或 ffmpeg 的整个文档中很难找到如何设置这些。
更新:
感谢 Libav 开发人员@lu_zero,以下补丁已提交给 Libav 来解决此主题:
这应该提供有关如何实现这些的提示,但这些仍然无法通过官方稳定 API 获得。