[MPlayer-dev-eng] liba52 vs. libac3
Arpi
arpi at thot.banki.hu
Mon Dec 17 16:23:18 CET 2001
Hi,
It is planned to remove libac3 (replace by liba52) as soon as possible.
Why?
- liba52 is better designed, its API is better for our needs
- liba52 is more standards (dolby etc conformant, and also supports more
modes and formats
- liba52 is maintained by Walken, libac3 is not.
- liba52 is faster at C level, thanks to some tricks (downmix in freq space etc)
But...
- libac3 has lots of 3dnow (mmx too?) optimization mostly by Nick
- libac3 has some sse optimization (by Nick & Atmos ?)
Why ASAP?
- maintaining 2 libs for teh same purpose in paralell is waste of time
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 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.
Comments welcomed...
A'rpi / Astral & ESP-team
--
mailto:arpi at thot.banki.hu
http://esp-team.scene.hu
More information about the MPlayer-dev-eng
mailing list