speex: fix latency query
authorTristan Matthews <tristan@sat.qc.ca>
Tue, 18 May 2010 19:27:06 +0000 (15:27 -0400)
committerSebastian Dröge <sebastian.droege@collabora.co.uk>
Thu, 20 May 2010 12:30:26 +0000 (14:30 +0200)
  Speex should report 30 ms latency for narrowband mode, 34 otherwise.
  Fixes #619018

ext/speex/gstspeexenc.c

index f0b257effd47bfcde5d041e21fabb47667ad5e9f..dff02e0fc10b67b8ff5946e962dcd21af46b47d2 100644 (file)
@@ -410,7 +410,11 @@ gst_speex_enc_convert_sink (GstPad * pad, GstFormat src_format,
 static gint64
 gst_speex_enc_get_latency (GstSpeexEnc * enc)
 {
-  return 30 * GST_MSECOND;
+  /* See the Speex manual section "Latency and algorithmic delay" */
+  if (enc->rate == 8000)
+    return 30 * GST_MSECOND;
+  else
+    return 34 * GST_MSECOND;
 }
 
 static const GstQueryType *