[theora] Loop Filter Limits

Tony O'Bryan theoradev at tonyobryan.com
Sun Feb 14 16:14:47 PST 2010


On Sunday February 14 2010, you wrote:
> I'm going to try documenting the various sections as I figure them out, in
> order to help others who are trying to implement the Theora CODEC.  I'll go
> back and document the stuff I've already done, but I'm starting at the loop
> filter limits because that is where I ran into my first uncertainties.
> 
> I found where libtheora did its loop filter limit decoding, and printed out
>  the array that was decoded.  My own decoder printed the same values after
>  I revised my bitstream reader to be big endian rather than little endian,
>  so I'm reasonably sure I've done it right.
> 
> All the values I'm posting from this point forward are for the Theora
>  sample 320x240.ogg video found at http://wiki.xiph.org/TheoraTestsuite.
> 
> Loop Filter Limits (5 bits per limit)
> 
> 00: 1E 19 14 14 0F 0F 0E 0E
> 08: 0D 0D 0C 0C 0B 0B 0A 0A
> 16: 09 09 08 08 07 07 07 07
> 24: 06 06 06 06 05 05 05 05
> 32: 04 04 04 04 03 03 03 03
> 40: 02 02 02 02 02 02 02 02
> 48: 00 00 00 00 00 00 00 00
> 56: 00 00 00 00 00 00 00 00
> 

My decoder and libtheora agree on these values as well, from the setup header:

AC Scale:

00: 0001F4 0001C2 000190 000172 000154 000136 00011D 000109
08: 0000F5 0000E1 0000D2 0000C3 0000B9 0000B4 0000AA 0000A0
16: 000096 000091 000087 000082 00007D 000073 00006E 00006B
24: 000064 000060 00005D 000059 000055 000052 00004B 00004A
32: 000046 000044 000040 00003C 000039 000038 000034 000032
40: 000031 00002D 00002C 00002B 000028 000026 000025 000023
48: 000021 000020 00001E 00001D 00001C 000019 000018 000016
56: 000015 000013 000012 000011 00000F 00000D 00000C 00000A



DC Scale:

00: 0000DC 0000C8 0000BE 0000B4 0000AA 0000AA 0000A0 0000A0
08: 000096 000096 00008C 00008C 000082 000082 000078 000078
16: 00006E 00006E 000064 000064 00005A 00005A 00005A 000050
24: 000050 000050 000046 000046 000046 00003C 00003C 00003C
32: 00003C 000032 000032 000032 000032 000028 000028 000028
40: 000028 000028 00001E 00001E 00001E 00001E 00001E 00001E
48: 00001E 000014 000014 000014 000014 000014 000014 000014
56: 000014 00000A 00000A 00000A 00000A 00000A 00000A 00000A


More information about the theora mailing list