FFMpeg - 解码视频H264并发出警告:SEI类型被截断;错误隐瞒;没有加速的色彩空间转换

时间:2014-04-02 21:37:09

标签: ffmpeg h.264

调用avcodec_decode_video2(pCodecCtx,pFrame,& got_picture,& packet)时;从PMP文件解码H264视频。

我经常收到以下警告:

FF: SEI type 1 size 40 truncated at 36
FF: error while decoding MB 23 15, bytestream (td)
FF: Cannot use next picture in error concealment
...
FF: No accelerated colorspace conversion found from yuv420p to rgb24.
....

虽然,got_picture仍然返回1,但视频质量很差,经常模糊和闪烁。 问题是什么?我该怎么办?谢谢!

1 个答案:

答案 0 :(得分:0)

您要解码的内容来自较旧的ffmpeg / libav构建,以及较旧的libx264版本,生成无效的SEI有效负载。您看到的是相同内容的截断,被视为警告。

要解决此问题,您需要在启用以下位流过滤器的情况下重新编码(而非流复制):

-bsf:v 'h264_metadata=sei_user_data=dc45e9bde6d948b7962cd820d923eeef+x264 - core 150'

然后重新测试。

要进行错误更正,请使用-ec 0。 如果您正在使用mpv播放此文件,则还需要传递--vd-lavc-assume-old-x264选项。

参考:邮件列表上的This修补程序详细描述了该问题。