From d96e11806a6350ba56fd32d5d34e1b5ba0e839e9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Dr=C3=B6ge?= Date: Fri, 23 Nov 2007 10:01:33 +0000 Subject: gst/speexresample/gstspeexresample.c: Also post GST_MESSAGE_LATENCY if the latency changes. Original commit message from CVS: * gst/speexresample/gstspeexresample.c: (gst_speex_resample_update_state): Also post GST_MESSAGE_LATENCY if the latency changes. --- ChangeLog | 6 ++++++ gst/speexresample/gstspeexresample.c | 8 ++++++++ 2 files changed, 14 insertions(+) diff --git a/ChangeLog b/ChangeLog index b030de70..5a7d663a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2007-11-23 Sebastian Dröge + + * gst/speexresample/gstspeexresample.c: + (gst_speex_resample_update_state): + Also post GST_MESSAGE_LATENCY if the latency changes. + 2007-11-23 Sebastian Dröge * gst/speexresample/resample.c: (speex_resampler_get_latency), diff --git a/gst/speexresample/gstspeexresample.c b/gst/speexresample/gstspeexresample.c index da029c56..02738f6f 100644 --- a/gst/speexresample/gstspeexresample.c +++ b/gst/speexresample/gstspeexresample.c @@ -276,6 +276,10 @@ gst_speex_resample_update_state (GstSpeexResample * resample, gint channels, gint inrate, gint outrate, gint quality, gboolean fp) { gboolean ret = TRUE; + gboolean updated_latency = FALSE; + + updated_latency = (resample->inrate != inrate + || quality != resample->quality); if (resample->state == NULL) { ret = TRUE; @@ -320,6 +324,10 @@ gst_speex_resample_update_state (GstSpeexResample * resample, gint channels, resample->inrate = inrate; resample->outrate = outrate; + if (updated_latency) + gst_element_post_message (GST_ELEMENT (resample), + gst_message_new_latency (GST_OBJECT (resample))); + return ret; } -- cgit v1.2.1