GNOME Bugzilla – Bug 684579
video decoders: send GAP event if frame can't be decoded?
Last modified: 2018-11-03 11:22:05 UTC
I have a file with invalid msmpeg4v1 video data (note to self: locate can-not-be-played-by-totem | grep MSMPEG4; available on request), which results in this for every frame: libav :0:: invalid startcode libav :0:: header damaged libav gstavviddec.c:1142:gst_ffmpegviddec_video_frame:<avdec_msmpeg4v1-0> after decode: len -1, have_data 0 libav gstavviddec.c:1208:gst_ffmpegviddec_video_frame:<avdec_msmpeg4v1-0> return flow ok, len -1 libav gstavviddec.c:1269:gst_ffmpegviddec_frame:<avdec_msmpeg4v1-0> avdec_msmpeg4v1: decoding error (len: -1, have_data: 0) libav gstavviddec.c:1404:gst_ffmpegviddec_handle_frame:<avdec_msmpeg4v1-0> Decoding error, breaking In 1.0 this never outputs any video and never prerolls, though arguably it should output GAP events for the broken frames, so we can move on and at least play the audio. Possibly this should be done in the base class instead (?)
Same issue with: http://samples.mplayerhq.hu/A-codecs/msadpcm-stereo/dance-b5th.asf Video is garbage and we don't get any output, so we basically only preroll once the video decoder passes through the EOS. (that adpcmdec only outputs silence for the most part is yet another issue)
Yes, should be done!
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/72.