libs/gst/base/gstbasesink.c: Take current playback rate into account when reporting the position.

Original commit message from CVS:
* libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
Take current playback rate into account when reporting
the position.
This commit is contained in:
Wim Taymans 2005-12-12 10:16:11 +00:00
parent 74e0457155
commit 6a80d3c4ea
2 changed files with 9 additions and 1 deletions

View file

@ -1,3 +1,9 @@
2005-12-12 Wim Taymans <wim@fluendo.com>
* libs/gst/base/gstbasesink.c: (gst_base_sink_get_position):
Take current playback rate into account when reporting
the position.
2005-12-11 Tim-Philipp Müller <tim at centricular dot net> 2005-12-11 Tim-Philipp Müller <tim at centricular dot net>
* docs/manual/mime-world.fig: * docs/manual/mime-world.fig:

View file

@ -1366,7 +1366,9 @@ gst_base_sink_get_position (GstBaseSink * basesink, GstFormat format,
time = 0; time = 0;
base = GST_ELEMENT_CAST (basesink)->base_time; base = GST_ELEMENT_CAST (basesink)->base_time;
*cur = now - base - basesink->segment.accum + time; base += basesink->segment.accum;
base = MIN (now, base);
*cur = (now - base) * basesink->segment.abs_rate + time;
GST_DEBUG_OBJECT (basesink, GST_DEBUG_OBJECT (basesink,
"now %" GST_TIME_FORMAT " - base %" GST_TIME_FORMAT " - accum %" "now %" GST_TIME_FORMAT " - base %" GST_TIME_FORMAT " - accum %"