oggdemux: accumulate base time
authorGuillaume Desmottes <guillaume.desmottes@collabora.co.uk>
Fri, 29 Aug 2014 12:00:06 +0000 (14:00 +0200)
committerSebastian Dröge <sebastian@centricular.com>
Mon, 1 Sep 2014 09:21:03 +0000 (12:21 +0300)
Base time should be accumulated so non flushing seeks have the expected base.
Not accumulating result in segments appearing as "too late" and so are not
played by the sink.

https://bugzilla.gnome.org/show_bug.cgi?id=735509

ext/ogg/gstoggdemux.c

index b96ef32..efbce46 100644 (file)
@@ -4186,7 +4186,7 @@ gst_ogg_demux_handle_page (GstOggDemux * ogg, ogg_page * page)
       segment.start = start;
       segment.stop = chain->segment_stop;
       segment.time = chain->begin_time;
-      segment.base = chain->begin_time;
+      segment.base += chain->begin_time;
       event = gst_event_new_segment (&segment);
       gst_event_set_seqnum (event, ogg->seqnum);