[FFmpeg-devel] [RFC] avcodec: Add native DCA decoder based on libdcadec.
Christophe Gisquet
christophe.gisquet at gmail.com
Thu Jan 7 12:57:56 CET 2016
Hi,
2016-01-07 12:48 GMT+01:00 foo86 <foobaz86 at gmail.com>:
> bench dca pcm_f32le
> bench dca2 pcm_f32le
> bench libdcadec pcm_s32le
OK, that was mostly out of curiosity, as "dca2" has benefits
surpassing such issues anyway. And the improvement is 10% for where it
matters (raspberry).
> synth_filter integrates just nicely without any changes, there is no need for
> rewrite. There is 64 subband version of it needed though, as well as fixed
> point versions for 32 and 64 subbands.
In my recollection, the code was weirdly shaped, so I could have
imagined needs for change (e.g., your libdcadec may not be able to
reuse it).
> Other parts can't be directly reused unfortunately. They need to be converted
> to operate on integer input and process entire frame at once (not just one
> subsubframe).
The gap between dca and dca2 will probably increase, as these
"constrains" should actually help make the operation faster.
> Temporary converting the input to floating point before calling them (what
> current dca code does) seems to negate any performance gain from using these
> assembly optimized routines in the first place...
I think it is ok to change the code and remove the arch-specific dsp
implementations. Whether to put that specific removal in a separate
patch is up to you.
--
Christophe
More information about the ffmpeg-devel
mailing list