[FFmpeg-devel] [PATCH 2/2] Add SIPR decoder for 5k0,	6k5 and 8k5 	modes
    Ronald S. Bultje 
    rsbultje
       
    Mon Jan 11 19:11:12 CET 2010
    
    
  
Hi,
On Sun, Jan 10, 2010 at 4:43 PM, Vitor Sessak <vitor1001 at gmail.com> wrote:
> Now the patch that adds 16k support. I'm undecided if I should put this code
> in a separated file...
Index: libavcodec/siprdata.h
[..]
+static const float gain_cb_16k[32] =
+{
+    0.07499,     0.10593,     0.14125,     0.18836,
Lots of spaces?
[..]
Index: libavcodec/sipr.c
[..]
+    int ma_pred_switch;        ///< switched MA predictor
What's MA?
+/**
+ * Convert an lsf vector into an lsp vector.
+ *
+ * @param lsf               input lsf vector
+ * @param lsp               output lsp vector
+ */
+static void lsf2lsp(float *lsf, double *lsp)
+{
+    int i;
-static void dequant(float *out, const int *idx, const float *cbs[])
+    for (i = 0; i < LP_FILTER_ORDER_16k; i++)
+        lsp[i] = cos(lsf[i]);
+}
+
+static void dequant(float *out, const int *idx, const float *cbs[],
+                    int mode_16k)
I wish we could teach diff how silly this looks. Just look.
You can mark lsf as const, maybe makes it a bit faster, since it's not
changed in the function. the same could probably be done elsewhere
also (not critical...).
[..]
+    for (i = 0; i < LP_FILTER_ORDER_16k; i++)
+        ctx->lsp_history_16k[i] = cos((i+1) * M_PI /
(LP_FILTER_ORDER_16k + 1));
if (mode == 16k)?
I'll do the actual decode / postfilter functions later, I have some
other stuff to do first... :-(.
Ronald
    
    
More information about the ffmpeg-devel
mailing list