[FFmpeg-devel] [PATCH] Common ACELP routines (2/3) - filters

Michael Niedermayer michaelni
Sat Apr 26 19:41:18 CEST 2008

On Sat, Apr 26, 2008 at 11:11:56PM +0700, Vladimir Voroshilov wrote:
> On Fri, Apr 25, 2008 at 6:16 PM, Michael Niedermayer <michaelni at gmx.at> wrote:
> [...]
> >  Yes thats also what i thought at first but vladimirs insistance made
> >  me belive that the output of this function would be the final audio
> >  samples returned from "decode_audio". In which cases one of course
> >  cannot have 10 samples before it.
> >  Now after looking at the actual code its clear that there are always
> >  some other filters applied afterwards. So i agree, none of this makes
> >  sense, no double writing, no special case for the first "10" samples
> >  nor a memcpy() should be needed. Except a memcpy to move the first
> >  "10" samples to the buffer start.
> To tell the truth i didn't understand should i fix patch somehow or
> not according to above.

ff_acelp_lp_synthesis_filter_inplace() is exactly what we need,
ff_acelp_lp_synthesis_filter() is unneeded, please remove it.

> After splitting ff_acelp_lp_synthesis_filter, one of routines still
> requires additional 10 items in filter data. It is possible to avoid
> such requirement in cost of additional 20 bytes long memcpy.
> But i don't know will this improve something or not.

Only a single memcpy() of 10 elements is needed.

memcpy(buf, buf+N, 10);
overflow= acelp_lp_synthesis_filter(buf+10, input, N);
    for(i=0; i<N; i++)
    acelp_lp_synthesis_filter(buf+10, input, N);

Ill review the rest later

Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Opposition brings concord. Out of discord comes the fairest harmony.
-- Heraclitus
-------------- 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/20080426/b86eccd3/attachment.pgp>

More information about the ffmpeg-devel mailing list