[FFmpeg-devel] [PATCH] AC3 LGPL relicense/split

Justin Ruggles justin.ruggles
Sat Mar 21 18:19:50 CET 2009


In my opinion, just one function could still be considered as derivative
of liba52, ac3_decode_transform_coeffs_ch().  The thing that makes it
very much like liba52 is that it uses pre-calculated tables to ungroup
the mantissa codes after encountering the first bap in a group.

I made a modified version of the function which does not use tables.  In
my tests, the function itself is about 10% slower, and decoding overall
is around 5% slower.  This can vary based on content.

The attached patch splits out the function which uses tables, as well as
the table generation code, into ac3dec_gpl.[ch].  There is some
unavoidable code duplication there.

The function could, of course, just be replaced with the LGPL version,
which would make for a cleaner solution, but we would sacrifice some speed.

Before relicensing, it would probably be good for someone other than me
to go through all of the AC3 decoder code and compare it to liba52 just
for a second opinion.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: ac3dec_lgpl.diff
Type: text/x-diff
Size: 113067 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20090321/8add3b7e/attachment.diff>

More information about the ffmpeg-devel mailing list