GNOME Bugzilla – Bug 695717
decodebin2, multiqueue: MPEG-2 file doesn't preroll
Last modified: 2018-11-03 11:24:56 UTC
The following media file doesn't play with playbin, when playing video and audio together: http://people.freedesktop.org/~leio/gstreamer/31740_The_Heat_trl.mpeg (228MB, so not sure how long I can keep it hosted there) It works when disabling audio or video via audio-sink=fakesink or video-sink=fakesink; or via manual pipelines with just video or audio. It prerolls, but then is stuck in some first frame or so. That's with some old 0.10. But Tim has tested it with 1.0.5 and git of a couple days ago as well and confirmed the problem (though I think he said it didn't preroll there). gst-discoverer seems to also say a wrong duration to it. totem just goes totally nuts on it, it seems. mplayer, vlc, ffplay and so on play it fine.
There's something a bit odd about how this file is interleaved. We find an audio + video packet right at the start, but then the demuxer goes 2-3 seconds just outputting video packets, before getting an audio packet (timestamped 2-3 secs back). I suspect this throws up multiqueue because it expands just as much as needed at the beginning, but then the interleaving gets larger afterwards. But this is just a guess. It works fine for me in decodebin3, so I'm tempted to say this is unlikely to get fixed in decodebin2 and just hits a corner case of a known issue with decodebin2 + multiqueue.
-- 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/81.