mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-26 18:20:44 +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>
|
||||
|
||||
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. */
|
||||
if (src->priv->start_segment)
|
||||
gst_event_unref (src->priv->start_segment);
|
||||
src->priv->start_segment =
|
||||
gst_event_new_new_segment_full (FALSE,
|
||||
src->segment.rate, src->segment.applied_rate, src->segment.format,
|
||||
src->segment.last_stop, stop, src->segment.time);
|
||||
if (src->segment.rate >= 0.0) {
|
||||
/* forward, we send data from last_stop to stop */
|
||||
src->priv->start_segment =
|
||||
gst_event_new_new_segment_full (FALSE,
|
||||
src->segment.rate, src->segment.applied_rate, src->segment.format,
|
||||
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;
|
||||
|
|
Loading…
Reference in a new issue