[FFmpeg-soc] [soc]AMR-WB decoder branch, master, updated.

Marcelo Póvoa marspeoplester at gmail.com
Sun Aug 8 19:46:39 CEST 2010


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "AMR-WB decoder".

The branch, master has been updated
       via  98f6e7534f557e9800395ab0fa6c39bdc4a1f907 (commit)
      from  354f80024b78fec66ffeb8d86a680635d40a88f2 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 98f6e7534f557e9800395ab0fa6c39bdc4a1f907
Author: Marcelo Povoa <marspeoplester at gmail.com>
Date:   Sun Aug 8 14:45:17 2010 -0300

    Correct the anti_sparseness header and fix a bug in
    the integer case of upsampling

diff --git a/libavcodec/amrwbdec.c b/libavcodec/amrwbdec.c
index 127b57c..228617d 100644
--- a/libavcodec/amrwbdec.c
+++ b/libavcodec/amrwbdec.c
@@ -749,11 +749,11 @@ static float voice_factor(float *p_vector, float p_gain,
 /**
  * Reduce fixed vector sparseness by smoothing with one of three IR filters.
  * Also known as "adaptive phase dispersion".
- * Returns the filtered fixed vector address
+ * Returns the overwritten filtered fixed vector address
  *
  * @param[in] ctx                  The context
- * @param[in] fixed_vector         Unfiltered fixed vector
- * @param[in] out                  Space for modified vector if necessary
+ * @param[in,out] fixed_vector     Unfiltered fixed vector
+ * @param[out] out                 Space for modified vector if necessary
  */
 static float *anti_sparseness(AMRWBContext *ctx,
                               float *fixed_vector, float *out)
@@ -1016,7 +1016,7 @@ static void upsample_5_4(float *out, const float *in, int o_size)
         int frac_part = (i << 2) - 5 * int_part;
 
         if (!frac_part) {
-            out[i] = in[i];
+            out[i] = in[int_part];
         } else
             out[i] = ff_dot_productf(in0 + int_part, upsample_fir[4 - frac_part],
                                      UPS_MEM_SIZE);
@@ -1383,6 +1383,9 @@ static int amrwb_decode_frame(AVCodecContext *avctx, void *data, int *data_size,
         high_pass_filter(&ctx->samples_up[UPS_MEM_SIZE], hpf_31_coef,
                          ctx->hpf_31_mem, &ctx->samples_up[UPS_MEM_SIZE]);
 
+        /*for (i = 0; i < AMRWB_SUBFRAME_SIZE; i++)
+            ctx->samples_up[UPS_MEM_SIZE+i] = rint(ctx->samples_up[UPS_MEM_SIZE+i]);*/
+
         upsample_5_4(sub_buf, &ctx->samples_up[UPS_FIR_SIZE],
                      AMRWB_SFR_SIZE_OUT);
 

-----------------------------------------------------------------------

Summary of changes:
 libavcodec/amrwbdec.c |   11 +++++++----
 1 files changed, 7 insertions(+), 4 deletions(-)


hooks/post-receive
-- 
AMR-WB decoder


More information about the FFmpeg-soc mailing list