mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-26 03:31:05 +00:00
libs/gst/base/gstbasesrc.c: The start segment for reverse playback goes from start to last_stop.
Original commit message from CVS: * libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek), (gst_base_src_loop): The start segment for reverse playback goes from start to last_stop.
This commit is contained in:
parent
b85b7ff0cf
commit
0c964dd348
2 changed files with 19 additions and 4 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
2008-01-09 Wim Taymans <wim.taymans@collabora.co.uk>
|
||||||
|
|
||||||
|
* libs/gst/base/gstbasesrc.c: (gst_base_src_perform_seek),
|
||||||
|
(gst_base_src_loop):
|
||||||
|
The start segment for reverse playback goes from start to last_stop.
|
||||||
|
|
||||||
2008-01-09 Wim Taymans <wim.taymans@collabora.co.uk>
|
2008-01-09 Wim Taymans <wim.taymans@collabora.co.uk>
|
||||||
|
|
||||||
Patch by: Peter Kjellerstedt <pkj axis com>
|
Patch by: Peter Kjellerstedt <pkj axis com>
|
||||||
|
|
|
@ -1199,10 +1199,19 @@ gst_base_src_perform_seek (GstBaseSrc * src, GstEvent * event, gboolean unlock)
|
||||||
* next time it is scheduled. */
|
* next time it is scheduled. */
|
||||||
if (src->priv->start_segment)
|
if (src->priv->start_segment)
|
||||||
gst_event_unref (src->priv->start_segment);
|
gst_event_unref (src->priv->start_segment);
|
||||||
|
if (src->segment.rate >= 0.0) {
|
||||||
|
/* forward, we send data from last_stop to stop */
|
||||||
src->priv->start_segment =
|
src->priv->start_segment =
|
||||||
gst_event_new_new_segment_full (FALSE,
|
gst_event_new_new_segment_full (FALSE,
|
||||||
src->segment.rate, src->segment.applied_rate, src->segment.format,
|
src->segment.rate, src->segment.applied_rate, src->segment.format,
|
||||||
src->segment.last_stop, stop, src->segment.time);
|
src->segment.last_stop, stop, src->segment.time);
|
||||||
|
} else {
|
||||||
|
/* reverse, we send data from stop to last_stop */
|
||||||
|
src->priv->start_segment =
|
||||||
|
gst_event_new_new_segment_full (FALSE,
|
||||||
|
src->segment.rate, src->segment.applied_rate, src->segment.format,
|
||||||
|
src->segment.start, src->segment.last_stop, src->segment.time);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
src->priv->discont = TRUE;
|
src->priv->discont = TRUE;
|
||||||
|
|
Loading…
Reference in a new issue