GNOME Bugzilla – Bug 684977
Can't seek in AVI file in push mode
Last modified: 2012-09-28 15:08:56 UTC
Hi, I cannot seek in the following file in push mode: http://absolut.zogzog.org/share/samples/avi/%5bs1e02%5d%20-%20Sacramentum%20Gladiatorum.divx The first frame shows after seek and the pipeline prerolls, but the pipeline cannot get back to the playing state. Tested with gst-launch-1.0 filesrc location=\[s1e02\]\ -\ Sacramentum\ Gladiatorum.divx ! avidemux ! avdec_mpeg4 ! videoconvert ! navseek ! xvimagesink
Add a queue eleemnt after filesrc to enable push mode and trigger the bug
You can also pass a pushfile:///path/to/foo.avi URI to playbin or totem, fwiw.
Seems like there might be a subtitle stream (DXSB) (?) masquerading as a video stream, and that is confusing the seek heuristic in push mode.
Right, these are divx (xsub) subtitles, which are embedded bitmaps. Libav supports it: http://git.libav.org/?p=libav.git;a=blob;f=libavcodec/xsubdec.c
Also see bug #628429 (which needs cleaning up).
The following should take care of this problem: commit cb0e4b2059607a8bb2303ac6608da6ab7a401807 Author: Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> Date: Fri Sep 28 16:51:01 2012 +0200 avidemux: recognize all xsub frames as keyframes Fixes https://bugzilla.gnome.org/show_bug.cgi?id=684977 commit 511dfa5ee549d98f288303c17bf56248d5e29b28 Author: Mark Nauwelaerts <mark.nauwelaerts@collabora.co.uk> Date: Fri Sep 28 16:50:25 2012 +0200 avidemux: push mode: find the correct chunk for segment following seek Fixes https://bugzilla.gnome.org/show_bug.cgi?id=684977 Even then, this clip is not handled perfectly; the xsub frames have utterly bogus timestamps and videodecoder trips up heavily in timestamps since all incoming video frames are marked as keyframe in avi push mode. But I guess those are other problems ... (btw, any suggestion for proper xsub caps ?)