gst/speexresample/gstspeexresample.c: Also post GST_MESSAGE_LATENCY if the latency...
authorSebastian Dröge <slomo@circular-chaos.org>
Fri, 23 Nov 2007 10:01:33 +0000 (10:01 +0000)
committerSebastian Dröge <slomo@circular-chaos.org>
Fri, 23 Nov 2007 10:01:33 +0000 (10:01 +0000)
Original commit message from CVS:
* gst/speexresample/gstspeexresample.c:
(gst_speex_resample_update_state):
Also post GST_MESSAGE_LATENCY if the latency changes.

gst/speexresample/gstspeexresample.c

index da029c5..02738f6 100644 (file)
@@ -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;
 }