[FFmpeg-devel] [PATCH] G.729 LSF decoding

Michael Niedermayer michaelni
Thu Jun 18 01:07:53 CEST 2009


On Thu, Jun 18, 2009 at 02:10:52AM +0700, Vladimir Voroshilov wrote:
> 2009/6/18 Diego Biurrun <diego at biurrun.de>:
> > On Thu, Jun 18, 2009 at 02:00:37AM +0700, Vladimir Voroshilov wrote:
> >> First patch for main decoding routine.
> >> Decodes LSF (Linear Spectrum Frequencies, if i'm not wrong).
> >>
> >> --- ffmpeg-r19188/libavcodec/g729dec.c
> >> +++ ffmpeg-r19188_v153/libavcodec/g729dec.c
> >> @@ -114,8 +119,74 @@ static inline int get_parity(uint8_t value)
> >>
> >> + ? ?/* Rotate past_quantizer_outputs. */
> >> + ? ?for(k=MA_NP-1; k>0; k--)
> >
> > nit: inconsistently formatted for construct
> 
> Damn. One was overlooked...
> Fixed.
> 

[...]
> @@ -114,8 +119,74 @@ static inline int get_parity(uint8_t value)
>     return (0x6996966996696996ULL >> (value >> 2)) & 1;
>  }
>  
> +/**
> + * Saves quantized LSF coefficients for use in next frame.
> + * @param past_quantizer_outputs [in/out] (2.13) quantizer outputs from previous frames
> + * @param quantizer_output (2.13) current quantizer output
> + */
> +static void lq_rotate(int16_t past_quantizer_outputs[MA_NP][10],
> +                      const int16_t* quantizer_output)
> +{
> +    int k;
> +
> +    /* Rotate past_quantizer_outputs. */
> +    for (k = MA_NP - 1; k > 0; k--)
> +        memcpy(past_quantizer_outputs[k], past_quantizer_outputs[k-1], 10 * sizeof(int16_t));
> +    memcpy(past_quantizer_outputs[0], quantizer_output, 10 * sizeof(int16_t));
> +}

used just once and 3 lines, must be inlined

note: memcpy() will not be approved before the neccessarity is clear


[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

If a bugfix only changes things apparently unrelated to the bug with no
further explanation, that is a good sign that the bugfix is wrong.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20090618/6e46cad5/attachment.pgp>



More information about the ffmpeg-devel mailing list