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 347439 - [qtdemux] seeks poorly in files with slideshows
[qtdemux] seeks poorly in files with slideshows
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
0.10.3
Other Linux
: Normal normal
: 0.10.4
Assigned To: Wim Taymans
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2006-07-13 18:27 UTC by owen-bugs
Modified: 2006-07-17 10:27 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description owen-bugs 2006-07-13 18:27:57 UTC
Some podcasts online (http://thisweekintech.com/this_week_in_media, http://revision3.com/infected) distribute their files as m4a audio files or quicktimes with slideshows instead of video or just audio as their content.

This causes a problem in seeking, because it seems that gstreamer will only seek to a place where the picture changes (keyframes), and nowhere else in between.  This is using totem, but I get the same problem with other media players.  In the case of This Week in Media this is incredibly troublesome.  In episode 13, I can't navigate anywhere in between 9:45 and 47:10.  The playhead just pops backward to the last place the picture changes.

Steps to reproduce:
1. Download a quicktime that uses images instead of video as its content
2. Play the quicktime.
3. Try to seek

Expected results:
Gstreamer should figure out what the video should look like, and then play the audio from the selected point.

Actual result:
The playhead snaps back to the last time the picture changed (a keyframe I bet) making it impossible to reseek to the middle of a file.

Notes:
This works on Macintosh OSX, of course.
Comment 1 Wim Taymans 2006-07-14 08:08:26 UTC
totem does keyframes seeks by default for snapier seeking. qtdemux should be able to figure out that the video at the keyframe and requested position is the same and should just do an accurate seek. 

 
Comment 2 Wim Taymans 2006-07-14 08:24:16 UTC
can't get to a usable link, can you post a link that I can wget?
Comment 4 Wim Taymans 2006-07-17 10:27:21 UTC
Thanks!

        * gst/qtdemux/qtdemux.c: (gst_qtdemux_perform_seek),
        (gst_qtdemux_prepare_current_sample),
        (gst_qtdemux_loop_state_movie):
        Store duration in uint64 too instead of clipping.
        When we do a keyframe seek and the requested time is at the
        keyframe, don't seek back to the beginning of the keyframe.
        Fixes #347439.