Skip to content

Deal with chroma coefficients that are exactly 0x100000

Ronald S. Bultje requested to merge rbultje/dav1d:fix325 into master

For chroma coefficients that are masked (&= 0xfffff) to no value, the context becomes in a weird state where it has no magnitude (ctx & 0x3f == 0), but it does have a sign (ctx & 0xc0 != 0x40). Our old code checked just the magnitude part of the context to set the skip context of neighbouring blocks, but libaom uses both sign and magnitude for this purpose. Therefore, adjust our code so it does the same thing.

Luma code only checks magnitude for this purpose and is thus not affected by this peculiarity. Fixes #325 (closed). Alternative to !876 (closed).

Merge request reports