From 4203512af9bfaa0930979ba04794aeeaec1a7eeb Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Fri, 29 Feb 2008 15:22:34 +0000 Subject: [PATCH] gst/gstsegment.c: Improve some comment. Original commit message from CVS: * gst/gstsegment.c: (gst_segment_set_seek), (gst_segment_to_stream_time): Improve some comment. Update variables where it makes more sense. --- ChangeLog | 7 +++++++ gst/gstsegment.c | 10 ++++++---- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index ccfe4f3c19..fc03eb3f55 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2008-02-29 Wim Taymans + + * gst/gstsegment.c: (gst_segment_set_seek), + (gst_segment_to_stream_time): + Improve some comment. + Update variables where it makes more sense. + 2008-02-29 Rene Stadler * gst/gsturi.c: (gst_uri_handler_get_protocols): diff --git a/gst/gstsegment.c b/gst/gstsegment.c index 9b26e47b80..eef0a48c72 100644 --- a/gst/gstsegment.c +++ b/gst/gstsegment.c @@ -362,6 +362,9 @@ gst_segment_set_seek (GstSegment * segment, gdouble rate, segment->applied_rate = 1.0; segment->flags = flags; segment->start = start; + segment->stop = stop; + segment->time = start; + last_stop = segment->last_stop; if (update_start && rate > 0.0) { last_stop = start; @@ -382,9 +385,6 @@ gst_segment_set_seek (GstSegment * segment, gdouble rate, /* update new position */ segment->last_stop = last_stop; - - segment->time = start; - segment->stop = stop; } /** @@ -574,7 +574,9 @@ gst_segment_to_stream_time (GstSegment * segment, GstFormat format, /* correct for segment time */ result += time; } else { - /* correct for segment time, clamp at 0 */ + /* correct for segment time, clamp at 0. Streams with a negative + * applied_rate have timestamps between start and stop, as usual, but have + * the time member starting high and going backwards. */ if (time > result) result = time - result; else