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 530068 - Ogg Streams with Skeleton and Granulepos > 0 do not work(aka streams from mod_annodex)
Ogg Streams with Skeleton and Granulepos > 0 do not work(aka streams from mod...
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-base
git master
Other Linux
: Normal normal
: 0.10.21
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2008-04-26 14:12 UTC by j^
Modified: 2008-07-27 11:12 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
this patch parses presentation time from skeleton and uses it as offset (2.00 KB, patch)
2008-05-12 14:12 UTC, j^
committed Details | Review
remove doulbe offset calculation in case basegranule is provided (703 bytes, patch)
2008-07-25 09:06 UTC, j^
committed Details | Review

Description j^ 2008-04-26 14:12:16 UTC
right now gstreamer gets the offset wrong for ogg files or streams with skeleton stream. i.e. those coming from mod_annodex

the problem is the first granulepos is seen as 0 instead  of the offset.

if you download or open this url in totem, totem starts playing at 0, displaying a still frame, while the video only starts playing at minute 42:21
 http://pad.ma/v/Vuhet2t0.ogv?t=npt:0:42:21.000

<arkadini|pb> the problem is - it shouldn't treat skeleton streams as part of the conten
Comment 1 j^ 2008-05-12 14:12:15 UTC
Created attachment 110766 [details] [review]
this patch parses presentation time from skeleton and uses it as offset
Comment 2 Sebastian Dröge (slomo) 2008-05-13 07:27:32 UTC
2008-05-13  Sebastian Dröge  <slomo@circular-chaos.org>

        Patch by: j^ <j at oil21 dot org>

        * ext/ogg/gstoggdemux.c: (gst_ogg_pad_parse_skeleton_fishead),
        (gst_ogg_pad_parse_skeleton_fisbone):
        * ext/ogg/gstoggdemux.h:
        Parse presentation time from skeleton streams and use it as offset
        for the timestamps. Fixes bug #530068.
Comment 3 j^ 2008-07-25 09:05:36 UTC
looks like it still os not quite right,

the basetime is just a delta which should be added to all timestamps
the basegranule is just a hint about what was the granulepos of the page
prior to the first page in the chopped stream

the new patch removes the part that uses the base granulepos to calculate the offset. this should be only done with prestime / basetime.
Comment 4 j^ 2008-07-25 09:06:35 UTC
Created attachment 115232 [details] [review]
remove doulbe offset calculation in case basegranule is provided
Comment 5 Sebastian Dröge (slomo) 2008-07-27 11:12:22 UTC
2008-07-27  Sebastian Dröge  <sebastian.droege@collabora.co.uk>

        Patch by: Jan Gerber <j at oil21 dot org>

        * ext/ogg/gstoggdemux.c: (gst_ogg_pad_parse_skeleton_fisbone):
        Fix calculation of the start time from skeleton streams.
        Fixes bug #530068.