[Ffmpeg-devel] [PATCH][RFC] ac3 decoder
Michael Niedermayer
michaelni
Tue Sep 26 00:23:37 CEST 2006
Hi
On Mon, Sep 25, 2006 at 05:55:46PM +0200, Benjamin Larsson wrote:
> Loren Merritt skrev:
> >On Sat, 23 Sep 2006, Michael Niedermayer wrote:
> >>
> >>could you (or someone else) provide
> >>1. a benchmark of it and liba52 (both with mmx/sse optims enabled and
> >> disabled)
> >>2. lines of code / bytes of both decoder source
> >>3. compiled object sizes (and run strip over both)
> >>4. max and mse difference between liba52 and soc_ac3 output or if
> >> available against some reference decoder with reference bitstreams
> >
> >versions tested:
> >a52: liba52 as present in ffmpeg svn
> >a52mp: liba52 as present in mplayer svn
> >soc: Kartikey's codec, including the attached patch to enable simd mdct
> >
> >test content: the audio track of The Matrix. AC3 stereo 192kbps 8179sec.
> >cpu: Athlon64 2.2GHz
> >
> >decoding time (mean and stddev of 10 runs):
> >27.448 \pm .012 sse_a52mp
> >28.076 \pm .008 c_a52
> >28.657 \pm .009 sse_soc
> >35.132 \pm .015 c_a52mp
> >36.748 \pm .006 c_soc
> >
> Those numbers look quite ok to me. Hopefully we can speed it up some
> more with some optimizations from the aften ac3 encoder and maybe a
> faster imdct routine.
> >
> >bytes
> >22432 ac3_decoder.o
> I think there are some tables that the decoder takes from the ac3 parser
> in ffmpeg, it would add a few more bytes.
> >51064 a52dec.o liba52/*.o
> >94672 a52dec.o liba52mp/*.o
> >
> >pairwise differences:
> >psnr:101.06 mse: 0.34 max: 91 c_a52.wav c_a52mp.wav
> >psnr: 78.63 mse: 58.85 max: 6647 c_a52.wav sse_a52mp.wav
> >psnr: 78.66 mse: 58.52 max: 6647 c_a52mp.wav sse_a52mp.wav
> >psnr: 53.16 mse:20758.59 max:26788 c_soc.wav c_a52.wav
> >psnr: 53.16 mse:20750.29 max:26788 c_soc.wav c_a52mp.wav
> >psnr: 53.16 mse:20745.67 max:26788 c_soc.wav sse_a52mp.wav
> >psnr: inf mse: 0.00 max: 0 c_soc.wav sse_soc.wav
> >
> >--Loren Merritt
> >
> My suggestion is to commit the new decoder and keeping liba52 as they
can you post a patch to the mailinglist instead of instuctions to create one
(the instructions might not generate the same patch in the future thus
having it "archived" in the list is a good idea, i also dont like to
comment/accept/reject "external" patches as by the time someone applies
it it might no longer be what has been reviewed and accepted ...)
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
In the past you could go to a library and read, borrow or copy any book
Today you'd get arrested for mere telling someone where the library is
More information about the ffmpeg-devel
mailing list