From 4d517e94ef1083a62c88ea83312d7345c018f091 Mon Sep 17 00:00:00 2001 From: Kyosuke Nekomura Date: Fri, 12 Jul 2013 03:24:08 +0800 Subject: [PATCH] audioecho: Fix handling of delay property in PLAYING/PAUSED state https://bugzilla.gnome.org/show_bug.cgi?id=703901 --- gst/audiofx/audioecho.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/gst/audiofx/audioecho.c b/gst/audiofx/audioecho.c index 2c09c8864e..60220f02d3 100644 --- a/gst/audiofx/audioecho.c +++ b/gst/audiofx/audioecho.c @@ -187,6 +187,7 @@ gst_audio_echo_set_property (GObject * object, guint prop_id, switch (prop_id) { case PROP_DELAY:{ guint64 max_delay, delay; + guint rate; g_mutex_lock (&self->lock); delay = g_value_get_uint64 (value); @@ -201,6 +202,11 @@ gst_audio_echo_set_property (GObject * object, guint prop_id, self->delay = delay; self->max_delay = MAX (delay, max_delay); } + rate = GST_AUDIO_FILTER_RATE (self); + if (rate > 0) + self->delay_frames = + MAX (gst_util_uint64_scale (self->delay, rate, GST_SECOND), 1); + g_mutex_unlock (&self->lock); break; }