[FFmpeg-cvslog] r15168 - trunk/libavcodec/g729dec.c

Michael Niedermayer michaelni
Wed Sep 3 03:45:23 CEST 2008


On Wed, Sep 03, 2008 at 03:07:03AM +0200, voroshil wrote:
> Author: voroshil
> Date: Wed Sep  3 03:07:03 2008
> New Revision: 15168
> 
> Log:
> Another set of approved G.729 chunks (from decoder core)
> 
> 
> 
> Modified:
>    trunk/libavcodec/g729dec.c
> 
> Modified: trunk/libavcodec/g729dec.c
> ==============================================================================
> --- trunk/libavcodec/g729dec.c	(original)
> +++ trunk/libavcodec/g729dec.c	Wed Sep  3 03:07:03 2008
> @@ -79,6 +79,49 @@ static inline int g729_get_parity(uint8_
>     return (0x6996966996696996ULL >> (value >> 2)) & 1;
>  }
>  

> +        ff_acelp_weighted_vector_sum(
> +                fc + pitch_delay_int[i],
> +                fc + pitch_delay_int[i],
> +                fc,
> +                1 << 14,
> +                av_clip(ctx->gain_pitch, SHARP_MIN, SHARP_MAX),
> +                0,
> +                14,
> +                ctx->subframe_size - pitch_delay_int[i]);
> +
> +            ctx->gain_pitch  = cb_gain_1st_8k[parm->gc_1st_index[i]][0] +
> +                               cb_gain_2nd_8k[parm->gc_2nd_index[i]][0];
> +            gain_corr_factor = cb_gain_1st_8k[parm->gc_1st_index[i]][1] +
> +                               cb_gain_2nd_8k[parm->gc_2nd_index[i]][1];
...
> +        ff_acelp_weighted_vector_sum(
> +                ctx->exc + i * ctx->subframe_size,
> +                ctx->exc + i * ctx->subframe_size,
> +                fc,
> +                (!voicing && ctx->frame_erasure) ? 0 : ctx->gain_pitch,
> +                ( voicing && ctx->frame_erasure) ? 0 : ctx->gain_code,
> +                1<<13,
> +                14,
> +                ctx->subframe_size);
> +

these i approved


> +        /*
> +          This filter enhances harmonic components of the fixed-codebook vector to
> +          improve the quality of the reconstructed speech.
> +
> +                     / fc_v[i],                                    i < pitch_delay
> +          fc_v[i] = <
> +                     \ fc_v[i] + gain_pitch * fc_v[i-pitch_delay], i >= pitch_delay
> +        */
...
> +
> +        /* Routine requires rounding to lowest. */
> +        ff_acelp_interpolate(
> +                ctx->exc + i*ctx->subframe_size,
> +                ctx->exc + i*ctx->subframe_size - pitch_delay_3x/3,
> +                ff_acelp_interp_filter,
> +                6,
> +                (pitch_delay_3x%3)<<1,
> +                10,
> +                ctx->subframe_size);
> +

these i did not approve
(and i will not approve the comments, the code ive plain not reviewed yet)

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

Asymptotically faster algorithms should always be preferred if you have
asymptotical amounts of data
-------------- 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-cvslog/attachments/20080903/7cd7b040/attachment.pgp>



More information about the ffmpeg-cvslog mailing list