diff --git a/ChangeLog b/ChangeLog index 6f3ab58ce7..23567d3388 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2005-09-27 Andy Wingo + + * gst/sine/gstsinesrc.c (gst_sinesrc_wait): Add the base time. + 2005-09-26 Andy Wingo * gst/sine/gstsinesrc.h: diff --git a/gst/sine/gstsinesrc.c b/gst/sine/gstsinesrc.c index b2fc4a8a7b..7969c60408 100644 --- a/gst/sine/gstsinesrc.c +++ b/gst/sine/gstsinesrc.c @@ -235,12 +235,15 @@ static GstClockReturn gst_sinesrc_wait (GstSineSrc * src, GstClockTime time) { GstClockReturn ret; + GstClockTime base_time; GST_LOCK (src); /* clock_id should be NULL outside of this function */ g_assert (src->clock_id == NULL); g_assert (GST_CLOCK_TIME_IS_VALID (time)); - src->clock_id = gst_clock_new_single_shot_id (GST_ELEMENT_CLOCK (src), time); + base_time = GST_ELEMENT (src)->base_time; + src->clock_id = gst_clock_new_single_shot_id (GST_ELEMENT_CLOCK (src), + time + base_time); GST_UNLOCK (src); ret = gst_clock_id_wait (src->clock_id, NULL);