diff options
-rw-r--r-- | libs/gst/base/gstbasesink.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/libs/gst/base/gstbasesink.c b/libs/gst/base/gstbasesink.c index 36fec5ff2d..0a116d6b9b 100644 --- a/libs/gst/base/gstbasesink.c +++ b/libs/gst/base/gstbasesink.c @@ -2205,7 +2205,11 @@ do_times: rstop = gst_segment_to_running_time (segment, format, cstop); /* In reverse playback, play from stop to start */ - if (segment->rate < 0.0 && GST_CLOCK_TIME_IS_VALID (rstop)) { + if (segment->rate < 0.0 && GST_CLOCK_TIME_IS_VALID (rstop) + /* FIXME: Current stepping implemenation expects unmodified rstart/rstop + * for reverse playback. Don't swap those values when stepping + * unless stepping code is updated as such */ + && !step->valid) { GstClockTime tmp = rstart; rstart = rstop; rstop = tmp; |