[FFmpeg-devel] [PATCH] h264 CAVLC coeff_token decoder based on CLZ

Jason Garrett-Glaser darkshikari
Sun Jan 24 01:15:28 CET 2010


On Sat, Jan 23, 2010 at 11:03 AM, Pascal Massimino
<pascal.massimino at gmail.com> wrote:
> On Sat, Jan 23, 2010 at 10:18 AM, Michael Niedermayer <michaelni at gmx.at>wrote:
>
>> On Sat, Jan 23, 2010 at 03:28:53AM +0300, Anatoliy Nenashev wrote:
>> > Hi all!
>> > I have made some investigations in H264 CAVLC coeff_token decoder.
>> > In attached patch you can see special implementation of VLC decoder for
>> > coeff_token which is based on CLZ (count leading zeros).
>> > This method reduce size of VLC decoding tables for coeff_token from
>> > (520+332+280+256)*2 = 2776 byte to (2*4*16 + 64 + 67 + 63 + 63) = 385
>> byte.
>>
>
> FWIW: these table are not called that often,

~8-24 times per MB isn't that often?

> and the code you search for is
> often at the beginning of the table if you sort it by increasing code
> length.
> My point, FWIW: try a simple linear search on the sorted table.

Ugh, that seems nasty.  In my experience coeff_token is not so
lopsidedly distributed that this would work very well...

Dark Shikari



More information about the ffmpeg-devel mailing list