]> granicus.if.org Git - libvpx/commit
vp10: skip unreachable cat6 token extrabits.
authorRonald S. Bultje <rsbultje@gmail.com>
Thu, 1 Oct 2015 01:37:20 +0000 (21:37 -0400)
committerRonald S. Bultje <rsbultje@gmail.com>
Tue, 6 Oct 2015 00:58:32 +0000 (20:58 -0400)
commit3461e8ce64739f8e70a9bcb8b062382e23a09cf9
tree954d66920e00cddc66c5d91dd41780a60a0a6693
parentd77a84bf52ea678b8ad484d492e8ef51b32cdf48
vp10: skip unreachable cat6 token extrabits.

We have historically added new bits to cat6 whenever we added a new
transform size (or bitdepth, for that matter). However, we have
always coded these new bits regardless of the actual transform size,
which means that for smaller transforms, we code bits that cannot
possibly be set. The coding (quality) impact of this is negligible,
but the bigger issue is that this allows creating bitstreams with
coefficient values that are nonsensible and can cause int overflows,
which then de facto become part of the bitstream spec. By not coding
these bits, we remove this possibility.

See issue 1065.

Change-Id: Ib3186eca2df6a7a15ddc60c8b55af182aadd964d
vp10/decoder/detokenize.c
vp10/encoder/bitstream.c
vp10/encoder/encodeframe.c
vp10/encoder/tokenize.c