mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 20:21:24 +00:00
ext/ogg/gstoggdemux.c: Make seeking in ogg more accurate again by doing the more correct granuletime to stream time c...
Original commit message from CVS: * ext/ogg/gstoggdemux.c: (gst_ogg_pad_internal_chain), (gst_ogg_demux_do_seek), (gst_ogg_demux_read_chain): Make seeking in ogg more accurate again by doing the more correct granuletime to stream time conversion.
This commit is contained in:
parent
3ed1d62d9a
commit
149d818f38
2 changed files with 11 additions and 4 deletions
|
@ -1,3 +1,10 @@
|
|||
2006-07-26 Wim Taymans <wim@fluendo.com>
|
||||
|
||||
* ext/ogg/gstoggdemux.c: (gst_ogg_pad_internal_chain),
|
||||
(gst_ogg_demux_do_seek), (gst_ogg_demux_read_chain):
|
||||
Make seeking in ogg more accurate again by doing the more correct
|
||||
granuletime to stream time conversion.
|
||||
|
||||
2006-07-26 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||
|
||||
* gst/tcp/gstmultifdsink.c: (gst_multi_fd_sink_add_full),
|
||||
|
|
|
@ -135,7 +135,7 @@ struct _GstOggPad
|
|||
GstClockTime start_time; /* the timestamp of the first sample */
|
||||
|
||||
gint64 first_granule; /* the granulepos of first page == first sample in next page */
|
||||
GstClockTime first_time; /* the timestamp of the second page */
|
||||
GstClockTime first_time; /* the timestamp of the second page or granuletime of first page */
|
||||
|
||||
ogg_stream_state stream;
|
||||
|
||||
|
@ -1878,12 +1878,12 @@ gst_ogg_demux_do_seek (GstOggDemux * ogg, gint64 position, gboolean accurate,
|
|||
GST_WARNING_OBJECT (ogg, "could not convert granulepos to time");
|
||||
granuletime = target;
|
||||
} else {
|
||||
if (granuletime < pad->first_time)
|
||||
if (granuletime < pad->start_time)
|
||||
continue;
|
||||
GST_LOG_OBJECT (ogg, "granulepos %" G_GINT64_FORMAT "maps to time %"
|
||||
GST_LOG_OBJECT (ogg, "granulepos %" G_GINT64_FORMAT " maps to time %"
|
||||
GST_TIME_FORMAT, granulepos, GST_TIME_ARGS (granuletime));
|
||||
|
||||
granuletime -= pad->first_time;
|
||||
granuletime -= pad->start_time;
|
||||
}
|
||||
|
||||
GST_DEBUG_OBJECT (ogg,
|
||||
|
|
Loading…
Reference in a new issue