From: Wim Taymans Date: Thu, 5 Apr 2007 15:44:40 +0000 (+0000) Subject: gst-libs/gst/audio/gstbaseaudiosink.c: Don't try to create invalid calibration parame... X-Git-Tag: 1.19.3~511^2~11222 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b802dea8319014f94fb9b02a7330ae0d9472bc7f;p=platform%2Fupstream%2Fgstreamer.git gst-libs/gst/audio/gstbaseaudiosink.c: Don't try to create invalid calibration parameters by making the internal time... Original commit message from CVS: * gst-libs/gst/audio/gstbaseaudiosink.c: (gst_base_audio_sink_skew_slaving): Don't try to create invalid calibration parameters by making the internal time go backwards, instead make external time go forward. --- diff --git a/ChangeLog b/ChangeLog index 1fdc290..6f85981 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,12 @@ 2007-04-05 Wim Taymans + * gst-libs/gst/audio/gstbaseaudiosink.c: + (gst_base_audio_sink_skew_slaving): + Don't try to create invalid calibration parameters by making the + internal time go backwards, instead make external time go forward. + +2007-04-05 Wim Taymans + Patch by: Tommi Myöhänen * gst/playback/gstplaybasebin.c: (add_stream): diff --git a/gst-libs/gst/audio/gstbaseaudiosink.c b/gst-libs/gst/audio/gstbaseaudiosink.c index adacbbc..a01666e 100644 --- a/gst-libs/gst/audio/gstbaseaudiosink.c +++ b/gst-libs/gst/audio/gstbaseaudiosink.c @@ -787,7 +787,7 @@ gst_base_audio_sink_skew_slaving (GstBaseAudioSink * sink, /* adjust playout pointer based on skew */ if (sink->priv->avg_skew > segtime) { - /* master is running slower */ + /* master is running slower, move internal time forward */ GST_WARNING_OBJECT (sink, "correct clock skew %" G_GINT64_FORMAT " > %" G_GINT64_FORMAT, sink->priv->avg_skew, segtime); @@ -797,11 +797,11 @@ gst_base_audio_sink_skew_slaving (GstBaseAudioSink * sink, gst_clock_set_calibration (sink->provided_clock, cinternal, cexternal, crate_num, crate_denom); } else if (sink->priv->avg_skew < -segtime) { - /* master is running faster */ + /* master is running faster, move external time forwards */ GST_WARNING_OBJECT (sink, "correct clock skew %" G_GINT64_FORMAT " < %" G_GINT64_FORMAT, sink->priv->avg_skew, -segtime); - cinternal -= segtime; + cexternal += segtime; sink->priv->avg_skew += segtime; sink->next_sample = -1; gst_clock_set_calibration (sink->provided_clock, cinternal, cexternal,