After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 332155 - Seeking problems in .mov files
Seeking problems in .mov files
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
0.10.1
Other All
: Normal normal
: 0.10.3
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2006-02-22 11:12 UTC by Lionel Dricot
Modified: 2006-05-03 21:53 UTC
See Also:
GNOME target: ---
GNOME version: 2.13/2.14



Description Lionel Dricot 2006-02-22 11:12:33 UTC
Please describe the problem:
When seeking in some mov files with totem, the video will freeze for 2-3 seconds
before continuing.

Also, if you are near the end of the file and you try to seek further (for
example with right arrow key), it will bypass the end of the file and play a
black screen forever. (this lead to the counter telling you you are at 3:31 in a
3:00 movie)

Steps to reproduce:
1. download http://movies.collegehumor.com/items/2005/07/collegehumor.248333.mov
2. try to seek with the slider. See the freeze.
3. Go a few seconds before the end of the file and press "->".
4. See the counter


Actual results:


Expected results:
No more freeze and no more eof bypass

Does this happen every time?
yes

Other information:
Just upgraded gstreamer0.10-plugins-bad to 0.10.1-0ubuntu1 in Ubuntu Dapper.

I'm just glad that those files are finally working with gstreamer. Thank you.
Keep the good work.
Comment 1 Wim Taymans 2006-03-23 10:16:20 UTC
qtdemux does a bad job seeking to keyframes, which makes it start playing video after it found the next keyframe. 

The second problem seems to be fixed now, you can however still try to seek past the end of the file using the arrow keys. This is a totem bug.
Comment 2 Wim Taymans 2006-04-04 08:39:57 UTC
        * gst/qtdemux/qtdemux.c: (gst_qtdemux_init),
        (gst_qtdemux_push_event), (gst_qtdemux_go_back),
        (gst_qtdemux_perform_seek), (gst_qtdemux_do_seek),
        (gst_qtdemux_handle_src_event), (plugin_init),
        (gst_qtdemux_change_state), (gst_qtdemux_loop_state_movie),
        (gst_qtdemux_loop), (gst_qtdemux_chain),
        (qtdemux_sink_activate_pull), (gst_qtdemux_add_stream),
        (qtdemux_parse), (qtdemux_parse_tree), (qtdemux_parse_trak),
        (qtdemux_parse_udta), (qtdemux_tag_add_str), (qtdemux_tag_add_num),
        (qtdemux_tag_add_gnre), (gst_qtdemux_handle_esds):
        * gst/qtdemux/qtdemux.h:
        Handle stss boxes so we can mark and find keyframes.
        Implement correct accurate and keyframe seeking.
        Use _DEBUG_OBJECT when possible.