[FFmpeg-devel] [PATCH 2/2] mips: Optimization of AAC psychoacoustic model functions

Zivkovic, Bojan (c) bojan at mips.com
Tue Nov 27 17:08:35 CET 2012


> First, our AAC encoder and its psy model are in not so good shape and
> its likely that at some point they will change to get them into better
> shape and produce better quality ...

We have already optimized the AAC floating point encoder - there are 2 more
patches with MIPS assembly, remaining for sending. We are willing to
try to integrate the optimizations into FFmpeg.

> But independant of that, optimiztaions need to have a clean API
> for example one can write a FIR filter that takes pointers
> to input, output, filter coefficients and the number of such values.
> and write an optimized version for that.
> The patch though would just take a random chunk of code and optimize
> that, thats very unflexible.
> It cant be reused anywhere and it will break with the tiniest change
> to the code.
> I also see that none of the named constants like PSY_LAME_FIR_LEN
> that are used in the C code appear in the MIPS code so any change
> to them will break it and this will not even be detected as no
> assert or anything check for these assumtations.

The main reason of extracting parts of functions into new ones was to
avoid unecessary copy-pasting of mainline code in the mips tree. I am not
sure if I have understood you correctly what were you suggesting to make
these optimizations acceptable - should we change the API of the extracted
functions, or something else?


More information about the ffmpeg-devel mailing list