[MPlayer-dev-eng] liba52 vs. libac3
Michael Niedermayer
michaelni at gmx.at
Mon Dec 17 17:52:54 CET 2001
Hi
On Monday 17 December 2001 16:23, Arpi wrote:
[...]
> We need these optimized functions ported to liba52, or re-optimizing new
> code. I think it shouldn't be hard for imdct, as it's a simple, well
SSE variant of imdct_do_512 is finished :)
imdct_do_256 seems to be allmost unused (i need to check it with all files i
have though) ...
> defined algorithm. But for downmix, we have different goals. downmix is now
> done by decoder, but we need fast float array -> 16bit short int array
> conversion and stereo channel interleaving. I think it should be done in
> 3dnow/sse/mmx. See resample.c in liba52.
>
> Maybe i'm wrong, and it's not so simple, tell me if so.
coeff_get / coeff_get_coupling need 35% of the time, they should be optimized
... but that isnt easy without knowing what they do ;)
>
> Comments welcomed...
[...]
gprof output, might be interresting ... perhaps
its from Canyon-5.1-48khz-448kbit.ac3 IIRC ;)
Each sample counts as 0.01 seconds.
% cumulative self self total
time seconds seconds calls ns/call ns/call name
27.78 0.35 0.35 14300 24475.52 24475.52 imdct_do_512
20.63 0.61 0.26 42732 6084.43 6554.41 coeff_get
15.08 0.80 0.19 7122 26677.90 26730.42 coeff_get_coupling
12.70 0.96 0.16 main
11.11 1.10 0.14 10673 13117.21 13117.21 bit_allocate
6.35 1.18 0.08 7152 11185.68 11185.68 mix32to2
2.38 1.21 0.03 416450 72.04 72.04 bitstream_get_bh
2.38 1.24 0.03 7122 4212.30 154426.98 a52_block
0.79 1.25 0.01 10631 940.65 1284.52 parse_exponents
0.79 1.26 0.01 7122 1404.10 1404.10 downmix_coeff
0.00 1.26 0.00 114139 0.00 0.00 bitstream_get_bh_2
0.00 1.26 0.00 7152 0.00 11185.68 downmix
0.00 1.26 0.00 1187 0.00 144.07 a52_frame
0.00 1.26 0.00 1187 0.00 0.00 a52_syncinfo
0.00 1.26 0.00 1187 0.00 72.04 bitstream_set_ptr
0.00 1.26 0.00 1187 0.00 0.00 downmix_init
0.00 1.26 0.00 31 0.00 0.00 imdct_do_256
0.00 1.26 0.00 29 0.00 0.00 upmix
0.00 1.26 0.00 1 0.00 0.00 a52_init
0.00 1.26 0.00 1 0.00 0.00 imdct_init
Michael
More information about the MPlayer-dev-eng
mailing list