Redo banding for all transforms.
authorRonald S. Bultje <rbultje@google.com>
Mon, 25 Mar 2013 19:28:24 +0000 (12:28 -0700)
committerRonald S. Bultje <rbultje@google.com>
Tue, 26 Mar 2013 23:46:13 +0000 (16:46 -0700)
Now that the first AC coefficient in both directions use the same DC
as their context, there no longer is a purpose in letting both have
their own band. Merging these two bands allows us to split bands for
some of the very high-frequency AC bands.

In addition, I'm redoing the banding for the 1D-ADST col/row scans. I
don't think the old banding made any sense at all (it merged the last
coefficient of the first row/col in the same band as the first two of
the second row/col), which was clearly an oversight from the band being
applied in scan-order (rather than in their actual position). Now,
coefficients at the same position will be in the same band, regardless
what scan order is used. I think this makes most sense for the purpose
of banding, which is basically "predict energy for this coefficient
depending on the energy of context coefficients" (i.e. pt).

After full re-training, together with previous patch, derf gains about
1.2-1.3%, and hd/stdhd gain about 0.9-1.0%.

Change-Id: I7a0cc12ba724e88b278034113cb4adaaebf87e0c

vp9/common/vp9_default_coef_probs.h
vp9/common/vp9_entropy.c
vp9/common/vp9_entropy.h
vp9/decoder/vp9_detokenize.c
vp9/encoder/vp9_encodemb.c
vp9/encoder/vp9_rdopt.c
vp9/encoder/vp9_tokenize.c

index 26c857b..c9be8b2 100644 (file)
@@ -19,169 +19,169 @@ static const vp9_coeff_probs default_coef_probs_4x4[BLOCK_TYPES] = {
   { /* block Type 0 */
     { /* Intra */
       { /* Coeff Band 0 */
-        { 201,  32, 166, 187, 155, 167, 175, 141, 211, 179, 126 },
-        {  96,  39, 117, 157, 143, 158, 146, 131, 196, 159, 160 },
-        {  13,  28,  54, 109, 114, 147, 133, 120, 205, 154, 188 }
+        { 208,  32, 178, 198, 161, 167, 196, 147, 244, 194, 210 },
+        { 102,  43, 132, 185, 148, 162, 185, 141, 237, 181, 215 },
+        {  15,  36,  68, 143, 119, 151, 169, 133, 230, 173, 214 }
       }, { /* Coeff Band 1 */
-        { 128,  91, 156, 207, 155, 169, 211, 156, 244, 198, 224 },
-        {  72,  84, 154, 208, 157, 170, 211, 156, 244, 198, 227 },
-        {  34,  68, 123, 203, 149, 169, 211, 157, 243, 199, 227 },
-        {  14,  53,  92, 187, 127, 159, 210, 156, 244, 198, 223 },
-        {   3,  35,  56, 140, 108, 145, 200, 134, 245, 200, 227 },
-        {   1,  15,  22,  68,  92, 136, 117, 107, 218, 158, 208 }
+        {  71,  91, 178, 226, 169, 176, 232, 170, 252, 219, 231 },
+        {  72,  88, 174, 226, 168, 176, 232, 170, 252, 219, 234 },
+        {  40,  79, 154, 222, 161, 174, 231, 169, 251, 219, 238 },
+        {  21,  68, 126, 211, 144, 167, 230, 167, 252, 219, 236 },
+        {   7,  49,  84, 175, 121, 152, 223, 151, 251, 218, 237 },
+        {   1,  20,  32, 100,  97, 140, 163, 116, 237, 186, 222 }
       }, { /* Coeff Band 2 */
-        {  24,  81, 164, 207, 158, 170, 205, 153, 241, 193, 221 },
-        {  48,  75, 154, 206, 157, 169, 206, 154, 241, 193, 226 },
-        {  18,  64, 123, 201, 150, 168, 205, 154, 240, 192, 225 },
-        {   6,  51,  90, 187, 130, 161, 204, 152, 239, 192, 221 },
-        {   1,  33,  52, 143, 106, 145, 195, 139, 239, 191, 220 },
-        {   1,  15,  19,  65,  89, 135, 117, 105, 214, 157, 202 }
+        { 108, 110, 206, 237, 182, 183, 239, 181, 252, 221, 245 },
+        {  72,  98, 191, 236, 180, 182, 240, 183, 252, 223, 239 },
+        {  26,  77, 152, 230, 166, 179, 239, 181, 252, 222, 241 },
+        {   7,  57, 106, 212, 141, 167, 236, 173, 252, 223, 243 },
+        {   1,  35,  60, 171, 110, 149, 225, 155, 251, 218, 240 },
+        {   1,  14,  22,  90,  86, 134, 163, 116, 238, 181, 233 }
       }, { /* Coeff Band 3 */
-        {  46, 119, 186, 221, 170, 176, 214, 161, 241, 193, 228 },
-        {  50, 100, 175, 224, 170, 177, 219, 165, 243, 197, 227 },
-        {  17,  77, 137, 217, 157, 174, 219, 166, 243, 200, 230 },
-        {   6,  58,  98, 195, 133, 162, 216, 160, 244, 201, 228 },
-        {   2,  38,  61, 149, 111, 147, 200, 138, 243, 199, 225 },
-        {   1,  17,  25,  76,  94, 138, 126, 109, 221, 161, 212 }
+        { 105, 139, 222, 245, 196, 192, 245, 195, 253, 229, 255 },
+        {  76, 118, 205, 245, 192, 192, 247, 198, 254, 230, 255 },
+        {  21,  88, 164, 240, 175, 186, 246, 197, 255, 232, 255 },
+        {   5,  63, 118, 222, 149, 172, 242, 185, 255, 230, 254 },
+        {   1,  42,  74, 186, 120, 157, 227, 161, 253, 220, 250 },
+        {   1,  18,  30,  97,  92, 136, 163, 118, 244, 184, 244 }
       }, { /* Coeff Band 4 */
-        {  56, 131, 201, 231, 179, 181, 227, 172, 248, 209, 235 },
-        {  52, 105, 187, 233, 179, 183, 229, 175, 248, 213, 240 },
-        {  12,  77, 142, 225, 162, 178, 229, 173, 250, 214, 247 },
-        {   3,  53,  93, 197, 133, 163, 222, 163, 250, 211, 240 },
-        {   1,  31,  50, 145, 104, 145, 203, 140, 247, 204, 233 },
-        {   1,  13,  19,  66,  85, 132, 129, 105, 228, 166, 217 }
+        { 143, 117, 233, 251, 207, 201, 250, 210, 255, 239, 128 },
+        {  99, 104, 214, 249, 200, 199, 251, 211, 255, 238, 255 },
+        {  26,  81, 170, 245, 183, 192, 250, 206, 255, 242, 255 },
+        {   6,  60, 116, 226, 151, 176, 242, 187, 255, 235, 255 },
+        {   1,  38,  65, 178, 114, 153, 224, 157, 254, 224, 255 },
+        {   1,  15,  26,  86,  88, 133, 163, 110, 251, 197, 252 }
       }, { /* Coeff Band 5 */
-        {  93,  99, 221, 242, 194, 189, 240, 187, 251, 227, 199 },
-        { 104,  81, 205, 242, 191, 190, 240, 187, 253, 227, 248 },
-        {  39,  60, 155, 234, 172, 183, 237, 182, 254, 224, 251 },
-        {  14,  42,  96, 203, 136, 166, 226, 166, 253, 216, 244 },
-        {   4,  25,  49, 144, 102, 144, 205, 141, 249, 207, 238 },
-        {   1,  10,  19,  65,  86, 131, 132, 103, 233, 171, 221 }
+        { 155,  74, 238, 252, 215, 206, 252, 223, 255, 255, 128 },
+        { 152,  64, 223, 250, 205, 201, 254, 219, 255, 255, 128 },
+        {  67,  55, 182, 246, 187, 192, 251, 210, 255, 240, 128 },
+        {  27,  44, 127, 227, 155, 176, 244, 186, 255, 240, 255 },
+        {   9,  27,  69, 176, 115, 152, 227, 154, 255, 229, 255 },
+        {   2,  11,  28,  91,  84, 133, 177, 115, 254, 210, 255 }
       }
     }, { /* Inter */
       { /* Coeff Band 0 */
-        { 218, 134, 212, 233, 187, 182, 227, 169, 250, 213, 211 },
-        { 137, 121, 176, 211, 169, 173, 200, 153, 236, 191, 201 },
-        {  43,  96, 132, 181, 150, 164, 177, 141, 224, 175, 197 }
+        { 207, 112, 234, 244, 192, 193, 246, 194, 255, 237, 255 },
+        { 145, 120, 212, 233, 178, 183, 232, 177, 252, 216, 228 },
+        {  77, 114, 177, 214, 164, 174, 210, 159, 245, 199, 230 }
       }, { /* Coeff Band 1 */
-        { 128, 178, 225, 239, 192, 188, 232, 178, 250, 216, 243 },
-        {  29, 147, 210, 239, 191, 189, 231, 176, 249, 215, 239 },
-        {  20, 101, 159, 236, 177, 189, 231, 178, 249, 214, 248 },
-        {   7,  69, 107, 219, 132, 168, 235, 185, 250, 214, 245 },
-        {   2,  40,  62, 150, 106, 142, 228, 146, 252, 223, 242 },
-        {   1,  18,  28,  74,  96, 139, 127, 103, 234, 175, 228 }
+        {  93, 174, 243, 248, 205, 200, 245, 195, 255, 232, 255 },
+        { 100, 144, 231, 248, 204, 200, 244, 193, 255, 232, 255 },
+        {  28, 101, 186, 247, 194, 199, 244, 194, 255, 232, 255 },
+        {   9,  73, 132, 238, 155, 186, 245, 197, 255, 232, 250 },
+        {   2,  44,  76, 187, 112, 151, 240, 172, 255, 235, 249 },
+        {   1,  19,  33,  98,  92, 138, 176, 113, 252, 208, 249 }
       }, { /* Coeff Band 2 */
-        {  38, 163, 224, 240, 192, 188, 234, 178, 251, 217, 233 },
-        {  34, 134, 206, 239, 189, 188, 233, 177, 251, 218, 248 },
-        {  14,  95, 156, 234, 171, 186, 234, 179, 251, 220, 238 },
-        {   6,  68, 110, 215, 133, 166, 236, 181, 251, 217, 235 },
-        {   2,  43,  68, 155, 111, 146, 223, 144, 252, 224, 239 },
-        {   1,  21,  32,  86,  98, 139, 136, 110, 235, 174, 221 }
+        { 116, 175, 246, 250, 212, 202, 248, 198, 255, 238, 255 },
+        {  78, 142, 231, 250, 208, 203, 249, 200, 255, 241, 255 },
+        {  14,  93, 177, 245, 186, 196, 248, 198, 255, 241, 255 },
+        {   4,  65, 122, 227, 148, 177, 244, 186, 255, 241, 243 },
+        {   1,  38,  69, 180, 111, 152, 235, 162, 255, 237, 247 },
+        {   1,  18,  30, 101,  89, 133, 190, 116, 255, 219, 246 }
       }, { /* Coeff Band 3 */
-        {  61, 173, 225, 241, 195, 190, 236, 181, 252, 221, 221 },
-        {  39, 134, 205, 241, 191, 191, 237, 182, 252, 220, 239 },
-        {   6,  82, 144, 233, 167, 183, 237, 182, 252, 220, 242 },
-        {   2,  53,  92, 207, 130, 165, 232, 172, 253, 220, 243 },
-        {   1,  28,  49, 146,  98, 141, 217, 146, 252, 216, 245 },
-        {   1,  12,  21,  68,  88, 132, 140, 101, 241, 182, 236 }
+        { 138, 183, 249, 253, 220, 209, 252, 210, 255, 251, 128 },
+        {  93, 147, 237, 252, 213, 209, 253, 213, 255, 251, 128 },
+        {  21, 104, 187, 247, 185, 196, 252, 210, 255, 249, 128 },
+        {   6,  73, 131, 225, 147, 174, 248, 190, 255, 248, 128 },
+        {   1,  47,  83, 189, 119, 155, 239, 167, 255, 246, 128 },
+        {   1,  26,  44, 130,  96, 139, 209, 129, 255, 235, 255 }
       }, { /* Coeff Band 4 */
-        {  83, 175, 229, 246, 201, 195, 241, 190, 253, 225, 249 },
-        {  49, 134, 211, 245, 195, 195, 242, 192, 254, 228, 252 },
-        {  12,  86, 154, 237, 169, 185, 242, 190, 254, 227, 252 },
-        {   4,  56, 100, 208, 134, 166, 235, 173, 254, 228, 247 },
-        {   1,  33,  57, 157, 104, 146, 217, 148, 253, 219, 250 },
-        {   1,  16,  27,  82,  89, 132, 156, 108, 245, 188, 241 }
+        { 188, 143, 252, 255, 228, 218, 253, 218, 255, 209, 128 },
+        { 137, 124, 241, 253, 215, 211, 254, 221, 255, 255, 128 },
+        {  32,  89, 188, 248, 186, 198, 254, 216, 255, 253, 128 },
+        {   7,  61, 122, 231, 146, 176, 252, 201, 255, 250, 128 },
+        {   1,  34,  66, 186, 103, 149, 246, 176, 255, 249, 128 },
+        {   1,  18,  34, 115,  91, 134, 217, 124, 255, 233, 255 }
       }, { /* Coeff Band 5 */
-        { 142, 137, 243, 252, 218, 207, 250, 205, 255, 241, 128 },
-        { 117, 102, 224, 250, 204, 202, 249, 204, 255, 238, 255 },
-        {  40,  69, 169, 242, 175, 190, 247, 198, 255, 238, 209 },
-        {  14,  47, 106, 213, 135, 168, 239, 177, 255, 233, 244 },
-        {   4,  26,  53, 152,  99, 143, 220, 147, 254, 224, 252 },
-        {   1,  14,  25,  79,  87, 130, 160, 105, 249, 195, 249 }
+        { 198,  92, 253, 255, 231, 222, 255, 230, 128, 128, 128 },
+        { 189,  79, 244, 254, 220, 217, 255, 237, 255, 255, 128 },
+        {  78,  61, 200, 252, 196, 207, 255, 231, 255, 255, 128 },
+        {  34,  50, 146, 242, 161, 187, 255, 222, 255, 255, 128 },
+        {  11,  38,  93, 215, 122, 159, 253, 202, 255, 255, 128 },
+        {   1,  31,  55, 143, 102, 143, 227, 148, 255, 238, 128 }
       }
     }
   }, { /* block Type 1 */
     { /* Intra */
       { /* Coeff Band 0 */
-        { 198,  34, 200, 220, 173, 177, 207, 161, 219, 190, 170 },
-        { 100,  41, 144, 187, 152, 166, 179, 145, 219, 175, 182 },
-        {  24,  38,  81, 143, 126, 153, 161, 131, 222, 169, 201 }
+        { 207,  35, 219, 243, 195, 192, 243, 188, 251, 232, 238 },
+        { 126,  46, 182, 230, 177, 182, 228, 171, 248, 214, 232 },
+        {  51,  47, 125, 196, 147, 166, 206, 151, 245, 199, 229 }
       }, { /* Coeff Band 1 */
-        { 128, 132, 197, 226, 174, 179, 225, 167, 250, 206, 238 },
-        { 116, 117, 189, 226, 173, 179, 224, 168, 250, 212, 210 },
-        {  58,  97, 162, 226, 170, 181, 225, 170, 250, 210, 255 },
-        {  29,  76, 128, 216, 147, 171, 226, 171, 249, 217, 232 },
-        {  13,  52,  84, 175, 121, 152, 223, 155, 251, 212, 241 },
-        {   6,  29,  44, 102, 105, 142, 153, 115, 236, 180, 223 }
+        { 114, 124, 220, 244, 197, 192, 242, 189, 253, 226, 255 },
+        { 142, 116, 213, 243, 194, 191, 241, 188, 252, 226, 255 },
+        {  81, 101, 190, 242, 188, 190, 242, 190, 253, 229, 255 },
+        {  42,  83, 155, 235, 166, 183, 241, 190, 253, 227, 246 },
+        {  16,  62, 104, 205, 133, 161, 238, 176, 254, 227, 250 },
+        {   6,  40,  60, 132, 109, 145, 190, 128, 248, 202, 239 }
       }, { /* Coeff Band 2 */
-        {  84,  90, 195, 230, 178, 181, 225, 171, 248, 204, 249 },
-        {  75,  85, 186, 227, 174, 179, 225, 170, 249, 213, 246 },
-        {  49,  75, 163, 224, 169, 179, 225, 171, 249, 211, 251 },
-        {  27,  63, 131, 216, 150, 171, 225, 168, 250, 211, 239 },
-        {  10,  47,  88, 181, 124, 155, 221, 156, 249, 211, 241 },
-        {   3,  29,  47, 105, 106, 141, 153, 118, 233, 176, 221 }
+        { 139, 149, 228, 248, 205, 198, 244, 196, 255, 223, 255 },
+        { 115, 127, 221, 248, 202, 198, 245, 198, 255, 228, 255 },
+        {  43, 100, 189, 246, 195, 195, 244, 196, 254, 234, 228 },
+        {  13,  77, 141, 238, 168, 187, 243, 191, 255, 232, 255 },
+        {   3,  49,  88, 203, 125, 160, 237, 178, 253, 227, 251 },
+        {   1,  23,  41, 118,  97, 136, 191, 127, 250, 207, 247 }
       }, { /* Coeff Band 3 */
-        {  98, 143, 209, 237, 187, 186, 233, 177, 251, 216, 255 },
-        {  81, 118, 204, 237, 186, 186, 232, 178, 252, 213, 255 },
-        {  30,  91, 172, 234, 179, 184, 235, 177, 252, 221, 248 },
-        {  10,  68, 124, 223, 153, 176, 232, 175, 252, 221, 253 },
-        {   2,  41,  73, 181, 115, 153, 226, 163, 252, 217, 240 },
-        {   1,  18,  30,  93,  94, 134, 168, 113, 245, 192, 242 }
+        { 119, 185, 236, 251, 216, 205, 249, 202, 253, 237, 255 },
+        {  89, 140, 224, 251, 211, 205, 250, 208, 255, 241, 255 },
+        {  34, 105, 189, 248, 195, 197, 250, 208, 255, 245, 255 },
+        {  14,  78, 142, 235, 166, 182, 246, 194, 255, 242, 255 },
+        {   5,  49,  90, 196, 128, 160, 235, 165, 255, 237, 255 },
+        {   1,  22,  41, 114,  97, 139, 180, 124, 252, 201, 249 }
       }, { /* Coeff Band 4 */
-        { 119, 172, 224, 244, 198, 193, 239, 185, 251, 222, 255 },
-        {  89, 126, 213, 245, 196, 195, 241, 192, 254, 226, 255 },
-        {  35,  94, 180, 239, 182, 187, 242, 192, 255, 232, 255 },
-        {  11,  68, 129, 222, 156, 174, 237, 177, 253, 226, 255 },
-        {   2,  42,  78, 184, 121, 156, 225, 159, 253, 215, 240 },
-        {   1,  20,  35, 104,  96, 137, 171, 120, 246, 194, 248 }
+        { 162, 142, 244, 254, 228, 215, 255, 230, 128, 128, 128 },
+        { 129, 120, 231, 253, 216, 210, 255, 228, 255, 255, 128 },
+        {  44,  90, 189, 249, 195, 199, 253, 217, 255, 240, 128 },
+        {  14,  65, 132, 234, 158, 181, 249, 203, 255, 248, 128 },
+        {   3,  38,  72, 188, 112, 154, 239, 171, 255, 243, 128 },
+        {   1,  17,  39, 110,  86, 141, 201, 123, 255, 240, 128 }
       }, { /* Coeff Band 5 */
-        { 150, 126, 240, 252, 218, 204, 248, 204, 255, 255, 128 },
-        { 126, 100, 224, 250, 207, 202, 249, 207, 255, 244, 128 },
-        {  49,  77, 183, 245, 188, 194, 248, 202, 255, 255, 255 },
-        {  15,  55, 125, 225, 152, 175, 242, 183, 255, 235, 255 },
-        {   3,  32,  64, 174, 109, 152, 229, 158, 255, 225, 255 },
-        {   1,  18,  33,  96,  89, 135, 179, 117, 252, 208, 255 }
+        { 167,  96, 247, 255, 230, 218, 249, 231, 255, 255, 128 },
+        { 163,  84, 234, 253, 214, 209, 255, 231, 255, 255, 128 },
+        {  70,  63, 185, 249, 189, 197, 255, 230, 255, 255, 128 },
+        {  30,  44, 132, 238, 157, 180, 251, 210, 255, 220, 128 },
+        {  13,  30,  80, 195, 121, 153, 243, 179, 255, 224, 128 },
+        {   5,  13,  38, 103, 109, 128, 196, 147, 255, 255, 128 }
       }
     }, { /* Inter */
       { /* Coeff Band 0 */
-        { 242, 100, 229, 235, 190, 184, 229, 172, 249, 219, 192 },
-        { 162, 103, 196, 217, 175, 175, 208, 157, 237, 198, 191 },
-        {  60, 109, 167, 206, 167, 172, 192, 150, 235, 185, 211 }
+        { 242,  90, 246, 244, 200, 192, 242, 189, 255, 234, 255 },
+        { 186, 102, 228, 233, 187, 182, 231, 172, 254, 225, 252 },
+        { 102, 108, 203, 228, 181, 180, 218, 167, 243, 201, 223 }
       }, { /* Coeff Band 1 */
-        { 128, 183, 242, 246, 208, 196, 237, 185, 254, 222, 255 },
-        { 105, 152, 229, 247, 209, 198, 239, 185, 252, 225, 255 },
-        {  43, 109, 183, 247, 200, 203, 237, 186, 254, 212, 171 },
-        {  17,  76, 124, 238, 149, 185, 241, 198, 252, 213, 255 },
-        {   7,  45,  71, 176, 108, 145, 242, 172, 253, 224, 248 },
-        {   4,  26,  39,  95, 100, 137, 165, 109, 244, 196, 228 }
+        { 152, 169, 250, 253, 223, 209, 251, 208, 255, 250, 128 },
+        { 164, 149, 242, 253, 222, 209, 249, 207, 253, 238, 255 },
+        {  63, 108, 204, 252, 215, 211, 251, 211, 255, 242, 128 },
+        {  39,  83, 153, 248, 175, 199, 250, 214, 255, 245, 128 },
+        {  31,  66, 108, 214, 130, 161, 251, 196, 255, 237, 128 },
+        {  27,  65,  71, 150, 112, 149, 213, 133, 255, 230, 255 }
       }, { /* Coeff Band 2 */
-        { 110, 129, 232, 252, 220, 211, 242, 190, 253, 217, 255 },
-        {  82, 121, 222, 250, 211, 204, 243, 194, 242, 225, 219 },
-        {  43,  97, 185, 247, 198, 201, 241, 193, 251, 221, 255 },
-        {  22,  75, 135, 238, 154, 184, 243, 200, 252, 214, 255 },
-        {   9,  51,  86, 187, 118, 151, 242, 173, 252, 226, 221 },
-        {   3,  31,  49, 112, 107, 141, 169, 118, 240, 192, 232 }
+        { 161, 174, 250, 254, 226, 215, 254, 226, 255, 230, 128 },
+        { 133, 150, 239, 254, 222, 213, 254, 225, 255, 255, 128 },
+        {  32, 105, 197, 252, 206, 207, 253, 220, 255, 255, 128 },
+        {  10,  78, 147, 245, 173, 193, 253, 212, 255, 255, 128 },
+        {   2,  49,  99, 221, 133, 164, 250, 198, 255, 252, 128 },
+        {   1,  26,  53, 154,  96, 135, 234, 142, 255, 240, 128 }
       }, { /* Coeff Band 3 */
-        { 127, 158, 236, 251, 219, 208, 244, 199, 255, 235, 255 },
-        {  91, 134, 226, 250, 214, 204, 244, 196, 252, 228, 183 },
-        {  23,  98, 182, 247, 196, 197, 245, 195, 255, 224, 255 },
-        {   8,  69, 125, 233, 157, 182, 241, 186, 254, 232, 255 },
-        {   2,  42,  72, 187, 113, 152, 233, 170, 253, 228, 249 },
-        {   1,  19,  32,  95,  94, 134, 172, 111, 249, 199, 248 }
+        { 160, 187, 251, 255, 234, 223, 255, 233, 128, 128, 128 },
+        { 131, 155, 241, 255, 228, 222, 255, 232, 255, 255, 128 },
+        {  42, 108, 198, 253, 207, 212, 255, 234, 255, 255, 128 },
+        {  18,  81, 151, 246, 176, 194, 254, 222, 255, 255, 128 },
+        {   9,  60, 112, 225, 144, 167, 252, 199, 255, 255, 128 },
+        {   5,  35,  49, 163, 113, 150, 237, 118, 255, 255, 128 }
       }, { /* Coeff Band 4 */
-        { 145, 182, 245, 253, 228, 210, 250, 209, 255, 235, 128 },
-        { 106, 140, 233, 252, 220, 209, 250, 209, 255, 238, 128 },
-        {  41, 103, 195, 248, 196, 199, 249, 209, 255, 239, 128 },
-        {  13,  76, 137, 231, 161, 181, 244, 187, 255, 239, 255 },
-        {   2,  45,  79, 193, 121, 158, 234, 168, 255, 231, 255 },
-        {   1,  20,  34, 110,  94, 135, 195, 124, 251, 203, 255 }
+        { 195, 141, 253, 255, 242, 232, 255, 255, 128, 128, 128 },
+        { 169, 128, 245, 255, 235, 227, 255, 248, 128, 128, 128 },
+        {  62,  91, 204, 255, 216, 220, 255, 233, 128, 128, 128 },
+        {  23,  70, 150, 248, 178, 202, 255, 223, 128, 128, 128 },
+        {   2,  44,  78, 220, 110, 164, 255, 209, 128, 128, 128 },
+        {   1,   1, 128, 255, 255, 128, 128, 128, 128, 128, 128 }
       }, { /* Coeff Band 5 */
-        { 182, 133, 250, 255, 234, 217, 255, 215, 128, 128, 128 },
-        { 158, 113, 240, 254, 223, 212, 254, 225, 255, 255, 128 },
-        {  68,  83, 196, 250, 200, 201, 253, 217, 255, 255, 128 },
-        {  18,  60, 130, 235, 158, 180, 247, 193, 255, 245, 128 },
-        {   3,  34,  66, 186, 108, 149, 239, 174, 255, 232, 128 },
-        {   1,  20,  36, 111,  94, 145, 195, 123, 250, 212, 255 }
+        { 195, 104, 253, 255, 246, 246, 255, 171, 128, 128, 128 },
+        { 197,  92, 248, 255, 239, 228, 255, 239, 128, 128, 128 },
+        {  88,  71, 214, 255, 219, 220, 255, 244, 128, 128, 128 },
+        {  39,  56, 160, 250, 187, 204, 255, 255, 128, 128, 128 },
+        {  18,  28,  90, 217,  81, 137, 255, 128, 128, 128, 128 },
+        { 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128 }
       }
     }
   }
@@ -190,169 +190,169 @@ static const vp9_coeff_probs default_coef_probs_8x8[BLOCK_TYPES] = {
   { /* block Type 0 */
     { /* Intra */
       { /* Coeff Band 0 */
-        { 173,  27, 142, 173, 151, 161, 162, 140, 196, 179, 128 },
-        {  56,  32,  85, 136, 131, 154, 142, 123, 202, 161, 161 },
-        {   8,  26,  47, 104, 110, 146, 130, 119, 197, 153, 170 }
+        { 196,  40, 199, 180, 158, 161, 172, 135, 226, 183, 140 },
+        {  83,  38, 128, 153, 142, 157, 155, 128, 222, 164, 202 },
+        {  10,  29,  55, 116, 113, 146, 150, 122, 223, 169, 200 }
       }, { /* Coeff Band 1 */
-        { 128, 124, 161, 206, 156, 170, 210, 157, 241, 196, 214 },
-        {  56, 118, 160, 206, 157, 169, 208, 154, 241, 197, 218 },
-        {  33, 102, 144, 203, 153, 169, 210, 156, 241, 198, 237 },
-        {  17,  83, 121, 195, 143, 165, 206, 154, 241, 196, 219 },
-        {   6,  56,  86, 168, 125, 155, 200, 145, 242, 194, 221 },
-        {   1,  25,  37,  93, 103, 141, 132, 117, 211, 158, 195 }
+        {  33, 114, 160, 211, 155, 169, 223, 162, 248, 212, 215 },
+        {  69, 107, 155, 210, 154, 169, 224, 163, 248, 212, 216 },
+        {  30,  91, 138, 207, 150, 168, 223, 162, 248, 212, 216 },
+        {  12,  74, 115, 200, 140, 164, 222, 160, 249, 212, 219 },
+        {   4,  52,  80, 172, 121, 153, 216, 149, 249, 212, 226 },
+        {   1,  27,  40, 105, 101, 141, 157, 120, 231, 177, 210 }
       }, { /* Coeff Band 2 */
-        {  18,  89, 158, 208, 159, 170, 212, 158, 243, 205, 225 },
-        {  28,  86, 153, 207, 156, 170, 213, 156, 245, 200, 232 },
-        {  18,  77, 135, 202, 150, 167, 212, 156, 242, 207, 217 },
-        {  11,  65, 113, 192, 139, 161, 208, 151, 243, 202, 217 },
-        {   4,  46,  78, 163, 122, 153, 200, 142, 242, 196, 219 },
-        {   1,  22,  34,  90, 101, 140, 132, 114, 212, 159, 197 }
+        {  38, 159, 190, 227, 171, 177, 229, 172, 250, 214, 237 },
+        {  34, 130, 182, 229, 173, 180, 231, 174, 249, 215, 234 },
+        {  10,  97, 153, 226, 164, 178, 232, 175, 250, 215, 241 },
+        {   3,  71, 115, 213, 145, 170, 230, 171, 251, 217, 235 },
+        {   1,  41,  68, 172, 114, 152, 219, 154, 250, 212, 235 },
+        {   1,  16,  27,  88,  90, 135, 155, 113, 235, 180, 216 }
       }, { /* Coeff Band 3 */
-        {  29, 153, 186, 219, 167, 175, 214, 159, 243, 201, 228 },
-        {  37, 129, 180, 223, 170, 177, 219, 168, 243, 201, 222 },
-        {  12,  95, 149, 219, 161, 174, 219, 167, 241, 203, 234 },
-        {   3,  67, 108, 202, 140, 165, 218, 161, 246, 204, 223 },
-        {   1,  38,  61, 156, 112, 149, 201, 144, 242, 197, 220 },
-        {   1,  15,  22,  72,  91, 133, 126, 108, 218, 160, 206 }
+        {  41, 184, 214, 238, 187, 186, 235, 180, 252, 217, 236 },
+        {  24, 142, 199, 241, 188, 189, 237, 184, 252, 220, 235 },
+        {   6,  97, 159, 235, 172, 184, 239, 185, 252, 221, 243 },
+        {   1,  63, 110, 214, 144, 170, 234, 174, 253, 223, 243 },
+        {   1,  32,  58, 166, 109, 149, 218, 152, 251, 215, 238 },
+        {   1,  12,  21,  78,  85, 131, 152, 109, 236, 180, 224 }
       }, { /* Coeff Band 4 */
-        {  33, 182, 210, 231, 183, 184, 223, 169, 244, 207, 226 },
-        {  23, 137, 194, 236, 183, 187, 228, 176, 244, 204, 224 },
-        {   4,  89, 147, 228, 166, 179, 229, 176, 247, 208, 234 },
-        {   1,  56,  95, 200, 134, 164, 222, 164, 249, 209, 226 },
-        {   1,  28,  47, 141, 101, 144, 199, 139, 245, 199, 227 },
-        {   1,  11,  16,  58,  84, 131, 118, 101, 221, 160, 209 }
+        {  54, 207, 231, 245, 201, 193, 238, 186, 252, 221, 220 },
+        {  32, 156, 213, 246, 198, 195, 242, 192, 252, 224, 245 },
+        {   7,  98, 164, 240, 177, 187, 243, 193, 252, 227, 244 },
+        {   2,  62, 108, 216, 143, 170, 237, 177, 254, 227, 248 },
+        {   1,  32,  57, 165, 108, 148, 219, 152, 252, 217, 243 },
+        {   1,  13,  22,  79,  87, 132, 153, 109, 240, 182, 232 }
       }, { /* Coeff Band 5 */
-        {  58, 203, 233, 246, 208, 196, 233, 178, 251, 214, 255 },
-        {  37, 147, 214, 246, 201, 197, 238, 191, 249, 217, 213 },
-        {   7,  93, 160, 237, 175, 186, 239, 186, 251, 217, 240 },
-        {   1,  57,  98, 206, 136, 165, 229, 168, 252, 220, 235 },
-        {   1,  30,  51, 146, 103, 145, 206, 142, 249, 207, 229 },
-        {   1,  12,  20,  68,  87, 132, 133, 103, 231, 169, 214 }
+        {  89, 208, 239, 250, 216, 200, 240, 190, 255, 222, 219 },
+        {  53, 155, 223, 250, 209, 202, 245, 199, 253, 225, 246 },
+        {  12, 102, 170, 243, 183, 192, 246, 198, 254, 230, 255 },
+        {   3,  67, 111, 218, 144, 171, 239, 180, 254, 231, 248 },
+        {   1,  38,  60, 164, 108, 148, 221, 152, 253, 220, 246 },
+        {   1,  18,  26,  81,  88, 132, 157, 108, 245, 188, 241 }
       }
     }, { /* Inter */
       { /* Coeff Band 0 */
-        { 201, 133, 221, 227, 187, 180, 210, 161, 242, 194, 232 },
-        { 122, 113, 177, 201, 170, 170, 178, 146, 218, 175, 191 },
-        {  31,  85, 125, 175, 149, 163, 169, 138, 218, 171, 187 }
+        { 205, 121, 244, 237, 187, 188, 229, 174, 248, 215, 228 },
+        { 140, 120, 211, 219, 174, 177, 207, 158, 241, 195, 214 },
+        {  51, 100, 152, 198, 155, 168, 199, 148, 240, 193, 207 }
       }, { /* Coeff Band 1 */
-        { 128, 195, 224, 236, 188, 184, 230, 173, 249, 212, 245 },
-        {  41, 172, 213, 235, 185, 186, 230, 173, 250, 211, 235 },
-        {  31, 131, 178, 232, 175, 185, 229, 174, 250, 211, 236 },
-        {  14,  96, 134, 219, 146, 172, 230, 178, 251, 214, 239 },
-        {   5,  62,  87, 169, 120, 151, 223, 149, 250, 217, 239 },
-        {   1,  30,  41,  90, 105, 142, 131, 111, 224, 168, 199 }
+        {  66, 196, 236, 247, 202, 197, 243, 193, 254, 228, 246 },
+        {  99, 164, 223, 246, 199, 196, 243, 193, 254, 226, 255 },
+        {  29, 122, 187, 244, 187, 194, 244, 193, 255, 227, 239 },
+        {  14,  95, 145, 234, 156, 181, 244, 194, 254, 229, 246 },
+        {   6,  68,  97, 190, 123, 155, 240, 168, 254, 232, 245 },
+        {   3,  43,  50, 112, 105, 143, 170, 118, 245, 195, 230 }
       }, { /* Coeff Band 2 */
-        {  27, 178, 225, 238, 191, 187, 231, 175, 252, 213, 239 },
-        {  30, 159, 211, 237, 187, 186, 230, 177, 249, 217, 245 },
-        {  15, 123, 175, 233, 174, 183, 231, 177, 250, 215, 232 },
-        {   8,  93, 135, 219, 147, 171, 230, 176, 250, 216, 227 },
-        {   3,  63,  89, 171, 121, 152, 222, 150, 250, 216, 234 },
-        {   1,  33,  45,  97, 107, 143, 138, 113, 225, 169, 202 }
+        {  66, 202, 238, 248, 206, 199, 245, 196, 254, 233, 244 },
+        {  45, 155, 218, 248, 200, 199, 245, 197, 254, 229, 208 },
+        {   6,  96, 163, 242, 178, 191, 245, 196, 254, 233, 228 },
+        {   2,  64, 110, 224, 142, 175, 242, 185, 254, 232, 247 },
+        {   1,  34,  61, 172, 103, 147, 232, 164, 254, 226, 244 },
+        {   1,  13,  24,  82,  85, 133, 165, 105, 248, 199, 242 }
       }, { /* Coeff Band 3 */
-        {  40, 195, 228, 240, 193, 189, 233, 176, 250, 215, 235 },
-        {  28, 152, 205, 239, 188, 189, 232, 178, 250, 215, 223 },
-        {   3,  90, 147, 230, 166, 182, 232, 178, 249, 213, 224 },
-        {   1,  58,  96, 205, 131, 165, 228, 170, 249, 213, 209 },
-        {   1,  30,  50, 142, 100, 142, 211, 143, 246, 206, 216 },
-        {   1,  11,  19,  61,  87, 132, 123, 100, 225, 169, 206 }
+        {  66, 204, 242, 251, 213, 204, 248, 204, 255, 236, 255 },
+        {  38, 158, 222, 251, 206, 205, 249, 206, 255, 238, 255 },
+        {   6,  95, 166, 244, 178, 194, 249, 205, 255, 236, 255 },
+        {   2,  61, 111, 223, 141, 173, 244, 187, 255, 237, 255 },
+        {   1,  31,  59, 171, 104, 149, 230, 158, 255, 230, 252 },
+        {   1,  12,  22,  82,  79, 128, 171, 111, 251, 203, 249 }
       }, { /* Coeff Band 4 */
-        {  34, 200, 231, 244, 199, 193, 237, 182, 252, 220, 236 },
-        {  18, 153, 208, 244, 193, 193, 239, 187, 252, 222, 245 },
-        {   2,  87, 145, 233, 165, 183, 239, 186, 253, 224, 243 },
-        {   1,  52,  90, 201, 128, 163, 232, 169, 253, 222, 240 },
-        {   1,  25,  43, 136,  95, 140, 207, 140, 251, 213, 238 },
-        {   1,   9,  16,  57,  80, 128, 127,  99, 234, 170, 229 }
+        {  63, 214, 245, 252, 219, 208, 249, 206, 255, 241, 128 },
+        {  38, 164, 228, 252, 210, 208, 251, 212, 255, 245, 255 },
+        {   5, 101, 174, 246, 182, 196, 251, 207, 255, 244, 255 },
+        {   1,  64, 116, 224, 142, 174, 246, 190, 255, 241, 228 },
+        {   1,  34,  63, 172, 105, 148, 233, 160, 255, 235, 237 },
+        {   1,  14,  26,  88,  85, 130, 177, 110, 252, 210, 250 }
       }, { /* Coeff Band 5 */
-        {  58, 207, 238, 249, 211, 201, 243, 193, 253, 226, 240 },
-        {  33, 154, 218, 248, 201, 200, 246, 199, 254, 229, 252 },
-        {   5,  93, 158, 238, 170, 187, 245, 195, 254, 233, 253 },
-        {   1,  57,  99, 207, 131, 165, 236, 173, 254, 228, 251 },
-        {   1,  30,  52, 147,  99, 143, 213, 143, 253, 217, 245 },
-        {   1,  13,  22,  71,  84, 130, 145, 104, 243, 183, 239 }
+        {  91, 214, 246, 254, 226, 213, 251, 210, 255, 239, 255 },
+        {  55, 162, 233, 253, 215, 210, 253, 216, 255, 244, 128 },
+        {  10, 104, 179, 247, 184, 196, 252, 212, 255, 247, 255 },
+        {   2,  67, 119, 226, 143, 173, 249, 195, 255, 245, 255 },
+        {   1,  37,  66, 175, 106, 149, 237, 164, 255, 240, 255 },
+        {   1,  16,  30,  96,  87, 132, 188, 113, 255, 222, 255 }
       }
     }
   }, { /* block Type 1 */
     { /* Intra */
       { /* Coeff Band 0 */
-        { 190,  29, 192, 204, 171, 173, 162, 145, 175, 161, 147 },
-        {  90,  43, 136, 179, 150, 166, 167, 140, 220, 166, 201 },
-        {  21,  47,  90, 155, 132, 157, 164, 134, 229, 169, 216 }
+        { 211,  32, 212, 235, 185, 184, 223, 167, 239, 210, 182 },
+        { 121,  47, 171, 224, 171, 180, 211, 162, 238, 195, 221 },
+        {  40,  51, 118, 203, 145, 168, 211, 160, 246, 200, 236 }
       }, { /* Coeff Band 1 */
-        { 128, 156, 192, 220, 170, 177, 220, 162, 252, 214, 255 },
-        { 107, 138, 190, 218, 171, 176, 220, 161, 252, 208, 255 },
-        {  43, 115, 165, 215, 165, 174, 219, 163, 248, 208, 244 },
-        {  16,  84, 126, 204, 148, 169, 216, 156, 252, 210, 236 },
-        {   3,  44,  69, 160, 115, 149, 204, 143, 251, 203, 238 },
-        {   1,  15,  23,  67,  89, 133, 127, 103, 233, 165, 226 }
+        {  71, 129, 209, 244, 192, 194, 242, 188, 255, 230, 255 },
+        { 118, 122, 206, 244, 192, 192, 241, 187, 254, 227, 255 },
+        {  53, 104, 184, 241, 186, 190, 241, 184, 254, 232, 255 },
+        {  20,  81, 148, 234, 168, 183, 240, 183, 254, 231, 240 },
+        {   3,  47,  82, 197, 127, 160, 234, 166, 254, 228, 251 },
+        {   1,  18,  28,  96,  88, 134, 174, 116, 247, 194, 247 }
       }, { /* Coeff Band 2 */
-        {  41, 125, 196, 229, 177, 180, 230, 175, 252, 214, 255 },
-        {  56, 112, 187, 227, 171, 179, 228, 169, 249, 216, 205 },
-        {  31,  92, 163, 222, 165, 176, 227, 170, 253, 215, 171 },
-        {  12,  68, 124, 211, 147, 170, 225, 165, 249, 216, 229 },
-        {   2,  40,  68, 169, 115, 151, 215, 149, 250, 211, 235 },
-        {   1,  16,  24,  77,  88, 134, 144, 108, 233, 174, 222 }
+        {  86, 162, 220, 247, 203, 198, 245, 193, 255, 237, 255 },
+        {  84, 134, 216, 247, 201, 197, 244, 192, 255, 233, 255 },
+        {  26, 102, 186, 243, 190, 192, 244, 192, 255, 232, 255 },
+        {   7,  75, 135, 231, 163, 181, 240, 183, 255, 234, 255 },
+        {   1,  46,  79, 193, 121, 157, 233, 168, 255, 225, 242 },
+        {   1,  20,  35, 113,  94, 136, 191, 123, 252, 209, 250 }
       }, { /* Coeff Band 3 */
-        {  45, 175, 212, 232, 184, 183, 229, 174, 253, 222, 255 },
-        {  60, 135, 200, 232, 182, 182, 229, 170, 252, 213, 255 },
-        {  18,  96, 162, 227, 170, 179, 229, 171, 252, 216, 197 },
-        {   4,  65, 110, 210, 144, 170, 225, 167, 251, 216, 240 },
-        {   1,  37,  63, 165, 111, 148, 216, 151, 251, 211, 236 },
-        {   1,  16,  26,  86,  90, 133, 156, 111, 238, 182, 229 }
+        {  89, 191, 232, 250, 211, 203, 248, 202, 255, 230, 128 },
+        {  67, 148, 223, 250, 207, 201, 250, 207, 255, 247, 255 },
+        {  19, 105, 183, 245, 189, 193, 249, 202, 255, 244, 255 },
+        {   5,  72, 127, 228, 156, 177, 245, 186, 255, 238, 255 },
+        {   1,  44,  76, 190, 119, 156, 234, 167, 255, 231, 255 },
+        {   1,  21,  36, 116,  92, 138, 195, 128, 250, 208, 241 }
       }, { /* Coeff Band 4 */
-        {  46, 193, 216, 246, 203, 197, 239, 189, 255, 224, 255 },
-        {  40, 147, 204, 242, 190, 191, 242, 189, 255, 227, 255 },
-        {   8,  95, 160, 235, 172, 183, 240, 185, 253, 233, 255 },
-        {   1,  61, 104, 210, 141, 168, 233, 171, 254, 223, 255 },
-        {   1,  34,  58, 162, 107, 150, 216, 150, 252, 216, 253 },
-        {   1,  14,  24,  82,  88, 133, 157, 110, 242, 185, 239 }
+        {  94, 210, 236, 252, 215, 206, 253, 209, 255, 247, 128 },
+        {  68, 153, 224, 251, 209, 204, 251, 213, 255, 240, 128 },
+        {  14, 103, 178, 246, 188, 195, 251, 209, 255, 239, 128 },
+        {   2,  70, 122, 230, 154, 177, 247, 194, 255, 239, 128 },
+        {   1,  42,  72, 189, 115, 153, 234, 166, 255, 229, 255 },
+        {   1,  19,  34, 104,  98, 143, 180, 124, 252, 200, 255 }
       }, { /* Coeff Band 5 */
-        {  87, 208, 225, 251, 209, 210, 248, 204, 255, 210, 128 },
-        {  49, 147, 212, 248, 201, 200, 248, 204, 254, 239, 255 },
-        {  10, 102, 171, 241, 180, 189, 246, 196, 255, 236, 128 },
-        {   2,  66, 113, 217, 144, 170, 238, 177, 255, 229, 255 },
-        {   1,  36,  63, 167, 109, 149, 222, 152, 255, 223, 255 },
-        {   1,  17,  28,  92,  89, 133, 169, 112, 251, 193, 244 }
+        {  87, 200, 238, 254, 226, 214, 250, 212, 255, 226, 128 },
+        {  55, 151, 225, 253, 217, 212, 253, 217, 255, 233, 128 },
+        {  11, 106, 179, 249, 193, 200, 252, 213, 255, 247, 128 },
+        {   2,  72, 124, 232, 155, 180, 246, 195, 255, 230, 128 },
+        {   1,  42,  70, 182, 114, 153, 232, 163, 255, 236, 255 },
+        {   1,  17,  28,  95,  92, 137, 170, 115, 252, 208, 228 }
       }
     }, { /* Inter */
       { /* Coeff Band 0 */
-        { 226,  69, 242, 236, 199, 184, 218, 170, 242, 199, 238 },
-        { 133,  91, 206, 221, 182, 178, 202, 154, 240, 192, 232 },
-        {  40, 109, 163, 209, 167, 175, 190, 152, 231, 180, 205 }
+        { 238,  66, 250, 245, 205, 193, 232, 180, 254, 228, 255 },
+        { 178,  84, 226, 237, 192, 185, 230, 176, 253, 217, 251 },
+        {  76,  83, 168, 218, 166, 173, 225, 162, 252, 220, 243 }
       }, { /* Coeff Band 1 */
-        { 128, 201, 240, 246, 208, 196, 243, 181, 251, 219, 255 },
-        { 138, 176, 230, 245, 204, 195, 236, 186, 250, 209, 255 },
-        {  56, 141, 197, 244, 194, 195, 241, 186, 254, 221, 255 },
-        {  26, 108, 149, 233, 153, 179, 243, 194, 254, 227, 255 },
-        {  11,  66,  91, 176, 120, 149, 240, 160, 254, 231, 255 },
-        {   5,  31,  44, 102, 104, 143, 158, 113, 244, 193, 214 }
+        { 137, 176, 246, 252, 218, 207, 251, 208, 255, 238, 128 },
+        { 176, 160, 237, 252, 217, 206, 249, 209, 255, 247, 128 },
+        {  68, 128, 205, 251, 209, 207, 251, 207, 255, 248, 128 },
+        {  40, 105, 167, 246, 172, 192, 252, 215, 255, 247, 128 },
+        {  22,  84, 131, 214, 144, 164, 249, 185, 255, 250, 255 },
+        {  11,  60,  91, 161, 130, 155, 194, 133, 253, 214, 255 }
       }, { /* Coeff Band 2 */
-        {  77, 182, 236, 249, 212, 203, 244, 193, 251, 228, 255 },
-        {  63, 155, 225, 248, 207, 200, 241, 193, 251, 233, 255 },
-        {  33, 125, 192, 245, 193, 196, 242, 189, 255, 213, 128 },
-        {  18, 101, 151, 234, 158, 180, 242, 196, 254, 218, 255 },
-        {   7,  70,  98, 185, 126, 154, 236, 162, 254, 233, 255 },
-        {   2,  38,  50, 106, 109, 144, 156, 118, 238, 186, 236 }
+        { 124, 192, 247, 253, 223, 210, 254, 215, 255, 255, 128 },
+        { 103, 161, 234, 253, 218, 209, 253, 214, 255, 255, 128 },
+        {  19, 108, 190, 250, 202, 202, 251, 213, 255, 241, 128 },
+        {   6,  74, 131, 242, 165, 191, 251, 207, 255, 244, 128 },
+        {   1,  41,  72, 198, 111, 151, 249, 185, 255, 248, 128 },
+        {   1,  14,  24,  82,  90, 140, 185,  96, 254, 224, 255 }
       }, { /* Coeff Band 3 */
-        {  74, 203, 240, 249, 216, 199, 241, 183, 254, 223, 255 },
-        {  68, 160, 224, 248, 208, 199, 243, 188, 252, 220, 255 },
-        {  14, 106, 173, 242, 188, 192, 240, 187, 253, 218, 255 },
-        {   3,  68, 113, 226, 148, 179, 237, 182, 254, 227, 255 },
-        {   1,  36,  59, 171, 104, 145, 229, 164, 251, 215, 255 },
-        {   1,  15,  23,  80,  88, 134, 153, 109, 228, 173, 232 }
+        { 118, 200, 248, 254, 228, 216, 254, 222, 255, 213, 128 },
+        {  91, 166, 235, 254, 220, 212, 254, 223, 255, 233, 128 },
+        {  16, 110, 186, 251, 197, 201, 255, 225, 255, 255, 128 },
+        {   3,  72, 124, 239, 160, 186, 253, 209, 255, 239, 128 },
+        {   1,  39,  66, 198, 106, 151, 248, 191, 255, 247, 128 },
+        {   1,  14,  19,  94,  74, 124, 209, 109, 255, 245, 128 }
       }, { /* Coeff Band 4 */
-        {  59, 210, 234, 254, 223, 219, 244, 201, 255, 230, 128 },
-        {  46, 170, 222, 251, 208, 207, 246, 202, 252, 237, 255 },
-        {   8, 106, 172, 244, 186, 192, 247, 197, 254, 232, 255 },
-        {   1,  65, 108, 223, 147, 175, 238, 183, 255, 226, 255 },
-        {   1,  32,  55, 165, 102, 145, 223, 157, 254, 216, 255 },
-        {   1,  12,  19,  70,  86, 134, 139, 105, 236, 174, 240 }
+        { 112, 213, 248, 255, 231, 218, 255, 234, 255, 255, 128 },
+        {  80, 172, 234, 254, 220, 216, 255, 233, 255, 255, 128 },
+        {  11, 112, 182, 251, 195, 204, 255, 231, 255, 224, 128 },
+        {   2,  73, 126, 241, 159, 186, 254, 219, 255, 255, 128 },
+        {   1,  40,  69, 207, 111, 159, 249, 191, 255, 255, 128 },
+        {   1,  16,  24,  83,  78, 138, 230, 134, 255, 239, 128 }
       }, { /* Coeff Band 5 */
-        { 112, 212, 232, 255, 222, 218, 254, 227, 255, 217, 128 },
-        {  57, 156, 219, 253, 209, 208, 252, 219, 255, 250, 128 },
-        {  11, 107, 180, 247, 191, 198, 250, 199, 255, 247, 128 },
-        {   2,  75, 123, 222, 150, 172, 241, 182, 255, 241, 255 },
-        {   1,  34,  60, 166, 106, 148, 224, 151, 255, 228, 255 },
-        {   1,  15,  27,  90,  84, 133, 171, 118, 254, 206, 255 }
+        { 100, 209, 245, 255, 236, 225, 248, 231, 255, 192, 128 },
+        {  65, 164, 232, 255, 226, 221, 255, 240, 255, 255, 128 },
+        {  11, 117, 186, 253, 203, 209, 255, 240, 255, 255, 128 },
+        {   2,  83, 136, 245, 167, 191, 253, 222, 255, 255, 128 },
+        {   1,  55,  88, 213, 122, 157, 248, 182, 255, 255, 128 },
+        {   1,  10,  38,  58,  85,  43, 198, 107, 255, 255, 128 }
       }
     }
   }
@@ -361,169 +361,169 @@ static const vp9_coeff_probs default_coef_probs_16x16[BLOCK_TYPES] = {
   { /* block Type 0 */
     { /* Intra */
       { /* Coeff Band 0 */
-        {  12,  27,  83, 143, 133, 154, 129, 138, 141, 160,  80 },
-        {   1,  21,  47,  91, 116, 146,  97, 118, 147, 137, 121 },
-        {   1,  14,  24,  59, 101, 138,  82, 108, 147, 133, 128 }
+        {   8,  26, 101, 170, 141, 159, 166, 138, 205, 164, 158 },
+        {   2,  25,  67, 119, 124, 152, 121, 123, 189, 145, 175 },
+        {   1,  15,  28,  67, 102, 139,  95, 107, 191, 136, 187 }
       }, { /* Coeff Band 1 */
-        { 128,  87, 126, 176, 146, 159, 182, 142, 226, 174, 206 },
-        {  44,  85, 126, 177, 145, 162, 179, 142, 221, 171, 190 },
-        {  26,  79, 114, 172, 140, 159, 176, 138, 218, 177, 191 },
-        {   9,  64,  96, 163, 133, 157, 172, 138, 223, 173, 191 },
-        {   2,  41,  63, 138, 115, 149, 164, 133, 222, 174, 194 },
-        {   1,  13,  21,  55,  95, 135,  86, 104, 165, 136, 149 }
+        {  22,  73, 118, 160, 137, 157, 175, 132, 242, 184, 229 },
+        {  43,  73, 116, 160, 137, 157, 177, 132, 242, 185, 231 },
+        {  24,  66, 105, 158, 134, 156, 175, 133, 242, 185, 232 },
+        {   9,  54,  85, 150, 126, 153, 175, 132, 242, 185, 231 },
+        {   2,  34,  54, 123, 109, 145, 168, 124, 242, 183, 231 },
+        {   1,  14,  22,  63,  93, 134, 108, 103, 214, 149, 206 }
       }, { /* Coeff Band 2 */
-        {  13,  58, 117, 173, 141, 161, 177, 139, 223, 179, 208 },
-        {  21,  58, 113, 171, 140, 160, 177, 139, 224, 175, 195 },
-        {  14,  53, 100, 166, 134, 163, 172, 140, 227, 174, 189 },
-        {   8,  45,  81, 155, 125, 156, 171, 137, 225, 172, 201 },
-        {   2,  30,  51, 123, 109, 145, 160, 127, 223, 173, 197 },
-        {   1,  10,  16,  46,  91, 134,  77, 100, 164, 131, 157 }
+        {  34, 123, 149, 186, 148, 163, 195, 143, 245, 195, 233 },
+        {  34, 106, 147, 189, 149, 164, 198, 146, 246, 197, 234 },
+        {  10,  81, 123, 186, 143, 162, 200, 147, 246, 198, 235 },
+        {   2,  56,  87, 170, 127, 156, 201, 143, 248, 202, 234 },
+        {   1,  35,  56, 138, 109, 146, 187, 133, 246, 196, 233 },
+        {   1,  17,  27,  80,  93, 135, 136, 109, 229, 168, 215 }
       }, { /* Coeff Band 3 */
-        {  17, 128, 151, 184, 149, 164, 181, 141, 228, 178, 203 },
-        {  32, 110, 149, 187, 152, 165, 182, 145, 230, 184, 203 },
-        {  14,  86, 127, 184, 146, 163, 183, 145, 231, 179, 202 },
-        {   5,  63,  93, 166, 131, 157, 182, 141, 230, 182, 209 },
-        {   1,  35,  54, 124, 109, 146, 161, 127, 226, 173, 202 },
-        {   1,  11,  18,  52,  92, 134,  88, 102, 179, 137, 171 }
+        {  27, 159, 171, 208, 161, 171, 211, 155, 249, 205, 239 },
+        {  17, 119, 162, 213, 160, 172, 218, 160, 250, 210, 238 },
+        {   3,  81, 128, 207, 149, 168, 220, 161, 250, 213, 238 },
+        {   1,  53,  87, 183, 128, 158, 217, 153, 251, 214, 239 },
+        {   1,  31,  52, 143, 106, 145, 199, 137, 249, 205, 235 },
+        {   1,  14,  24,  77,  89, 133, 142, 109, 234, 174, 215 }
       }, { /* Coeff Band 4 */
-        {  21, 169, 177, 200, 162, 171, 192, 146, 234, 186, 205 },
-        {  15, 123, 165, 206, 161, 171, 198, 154, 236, 188, 205 },
-        {   2,  78, 122, 196, 147, 167, 200, 153, 238, 191, 218 },
-        {   1,  46,  76, 163, 122, 154, 192, 141, 240, 191, 219 },
-        {   1,  23,  39, 110,  99, 141, 163, 123, 233, 178, 217 },
-        {   1,   9,  14,  46,  88, 130,  89,  97, 193, 140, 188 }
+        {  24, 189, 200, 224, 177, 178, 221, 164, 250, 212, 234 },
+        {  14, 136, 184, 230, 176, 181, 228, 172, 252, 215, 231 },
+        {   2,  87, 140, 222, 159, 176, 230, 172, 252, 218, 238 },
+        {   1,  54,  90, 193, 130, 161, 223, 160, 252, 217, 241 },
+        {   1,  28,  49, 142, 103, 144, 202, 139, 250, 208, 233 },
+        {   1,  12,  21,  73,  87, 132, 141, 106, 234, 176, 209 }
       }, { /* Coeff Band 5 */
-        {  19, 207, 210, 228, 185, 182, 213, 164, 241, 198, 221 },
-        {   7, 137, 180, 229, 175, 181, 226, 173, 246, 207, 218 },
-        {   1,  77, 123, 213, 150, 171, 226, 168, 248, 212, 226 },
-        {   1,  43,  72, 169, 118, 153, 210, 148, 250, 210, 233 },
-        {   1,  22,  38, 113,  97, 139, 177, 124, 244, 193, 230 },
-        {   1,   9,  16,  52,  87, 130, 103,  98, 214, 151, 206 }
+        {  32, 220, 227, 242, 199, 190, 234, 180, 251, 220, 232 },
+        {  12, 155, 200, 242, 190, 191, 240, 187, 252, 225, 230 },
+        {   1,  90, 144, 231, 164, 180, 240, 184, 253, 229, 239 },
+        {   1,  53,  90, 198, 130, 162, 230, 165, 253, 226, 238 },
+        {   1,  28,  50, 145, 103, 144, 207, 140, 251, 213, 236 },
+        {   1,  13,  22,  74,  88, 132, 142, 107, 233, 176, 216 }
       }
     }, { /* Inter */
       { /* Coeff Band 0 */
-        {  13,  37, 232, 230, 195, 183, 193, 150, 215, 180, 165 },
-        {   6,  45, 178, 196, 172, 170, 165, 142, 206, 164, 162 },
-        {   2,  49, 101, 155, 142, 160, 144, 132, 196, 157, 160 }
+        {   5,  61, 234, 230, 183, 183, 212, 164, 241, 199, 205 },
+        {   3,  65, 184, 199, 164, 170, 182, 145, 232, 175, 223 },
+        {   1,  56, 104, 154, 137, 158, 156, 131, 221, 165, 210 }
       }, { /* Coeff Band 1 */
-        { 128, 182, 202, 226, 176, 180, 219, 163, 248, 207, 228 },
-        { 147, 171, 198, 223, 172, 177, 215, 164, 245, 200, 238 },
-        {  71, 141, 175, 219, 167, 175, 212, 161, 247, 204, 236 },
-        {  31, 109, 141, 207, 153, 170, 209, 160, 246, 197, 227 },
-        {  13,  72,  95, 167, 127, 155, 201, 143, 245, 198, 234 },
-        {   3,  33,  45,  92, 109, 144, 122, 114, 211, 155, 185 }
+        {  46, 183, 210, 229, 181, 182, 222, 165, 252, 214, 251 },
+        { 122, 166, 202, 228, 179, 181, 223, 164, 252, 217, 250 },
+        {  49, 125, 177, 225, 172, 179, 223, 163, 252, 215, 253 },
+        {  22,  99, 142, 216, 155, 173, 222, 164, 252, 215, 250 },
+        {   8,  69,  95, 180, 127, 156, 220, 153, 252, 214, 250 },
+        {   2,  38,  51, 112, 109, 144, 159, 118, 243, 184, 232 }
       }, { /* Coeff Band 2 */
-        {  28, 161, 205, 229, 178, 182, 221, 170, 245, 196, 205 },
-        {  42, 155, 197, 226, 174, 181, 216, 167, 244, 195, 234 },
-        {  23, 126, 172, 221, 165, 178, 215, 164, 245, 197, 246 },
-        {  12, 100, 137, 206, 149, 167, 211, 162, 246, 198, 234 },
-        {   6,  70,  93, 164, 126, 154, 199, 140, 245, 200, 227 },
-        {   1,  38,  47,  92, 110, 145, 121, 114, 203, 155, 163 }
+        {  56, 196, 218, 236, 187, 185, 231, 172, 254, 223, 239 },
+        {  38, 141, 195, 235, 182, 185, 233, 174, 254, 225, 232 },
+        {   7,  93, 147, 225, 164, 178, 233, 173, 255, 226, 248 },
+        {   2,  63, 101, 201, 137, 165, 227, 162, 254, 225, 248 },
+        {   1,  39,  61, 159, 110, 148, 213, 146, 254, 218, 247 },
+        {   1,  20,  33,  98,  95, 136, 166, 115, 247, 192, 231 }
       }, { /* Coeff Band 3 */
-        {  37, 193, 211, 230, 181, 183, 215, 168, 245, 203, 225 },
-        {  34, 143, 188, 229, 176, 182, 218, 167, 246, 202, 226 },
-        {   4,  88, 136, 217, 157, 174, 219, 166, 245, 204, 227 },
-        {   1,  57,  89, 187, 128, 160, 211, 153, 246, 202, 224 },
-        {   1,  28,  46, 128, 101, 142, 188, 132, 243, 194, 224 },
-        {   1,  10,  16,  52,  87, 131, 103,  98, 209, 153, 177 }
+        {  44, 206, 223, 240, 193, 189, 235, 177, 255, 231, 224 },
+        {  27, 147, 200, 240, 188, 189, 238, 181, 255, 229, 239 },
+        {   4,  93, 147, 230, 165, 180, 238, 180, 255, 231, 237 },
+        {   1,  58,  95, 201, 134, 164, 229, 164, 255, 228, 254 },
+        {   1,  32,  52, 152, 105, 146, 212, 142, 254, 221, 255 },
+        {   1,  14,  23,  81,  87, 133, 156, 109, 248, 191, 236 }
       }, { /* Coeff Band 4 */
-        {  26, 203, 213, 234, 185, 185, 225, 174, 248, 209, 226 },
-        {  15, 143, 186, 234, 179, 185, 227, 175, 249, 210, 245 },
-        {   1,  83, 130, 221, 155, 175, 227, 172, 250, 213, 240 },
-        {   1,  49,  79, 181, 123, 157, 214, 153, 250, 210, 235 },
-        {   1,  24,  39, 118,  97, 139, 186, 128, 246, 197, 234 },
-        {   1,   9,  15,  51,  85, 130, 103,  97, 214, 154, 192 }
+        {  39, 216, 227, 244, 200, 194, 237, 179, 255, 231, 255 },
+        {  22, 152, 204, 243, 192, 193, 240, 186, 255, 231, 240 },
+        {   2,  92, 148, 232, 167, 183, 239, 182, 255, 232, 255 },
+        {   1,  55,  91, 200, 132, 164, 229, 164, 255, 230, 255 },
+        {   1,  28,  47, 144,  99, 142, 211, 141, 255, 222, 251 },
+        {   1,  13,  21,  75,  86, 131, 152, 103, 249, 193, 242 }
       }, { /* Coeff Band 5 */
-        {  16, 214, 220, 243, 199, 193, 235, 183, 250, 214, 228 },
-        {   6, 147, 190, 242, 186, 191, 240, 190, 252, 222, 237 },
-        {   1,  86, 133, 227, 157, 178, 239, 183, 253, 225, 239 },
-        {   1,  49,  80, 187, 123, 157, 224, 160, 253, 219, 243 },
-        {   1,  25,  42, 124,  98, 140, 193, 130, 249, 204, 241 },
-        {   1,  11,  17,  57,  86, 130, 116,  99, 229, 162, 225 }
+        {  34, 228, 234, 249, 213, 201, 246, 194, 255, 239, 255 },
+        {  13, 161, 208, 247, 198, 197, 248, 197, 255, 243, 255 },
+        {   1,  95, 148, 234, 166, 183, 246, 190, 255, 243, 236 },
+        {   1,  55,  90, 199, 128, 161, 237, 168, 255, 239, 255 },
+        {   1,  30,  51, 147, 102, 144, 218, 142, 255, 232, 254 },
+        {   1,  16,  25,  86,  88, 131, 168, 109, 252, 207, 245 }
       }
     }
   }, { /* block Type 1 */
     { /* Intra */
       { /* Coeff Band 0 */
-        { 167,  42, 187, 172, 172, 174,  92, 141, 109, 109, 101 },
-        {  53,  53, 108, 159, 139, 160, 153, 136, 196, 156, 178 },
-        {   9,  61,  85, 142, 131, 158, 145, 128, 203, 161, 175 }
+        { 204,  33, 217, 233, 185, 184, 199, 165, 204, 163, 162 },
+        {  93,  48, 151, 209, 157, 171, 193, 161, 203, 167, 189 },
+        {  18,  43,  86, 173, 126, 156, 203, 149, 231, 193, 200 }
       }, { /* Coeff Band 1 */
-        { 128, 208, 190, 206, 165, 181, 204, 150, 236, 175, 255 },
-        {  84, 184, 186, 202, 157, 175, 198, 151, 215, 177, 242 },
-        {  35, 155, 170, 204, 159, 167, 194, 152, 237, 181, 228 },
-        {  13, 120, 142, 191, 152, 167, 198, 152, 242, 168, 219 },
-        {   2,  68,  91, 163, 131, 159, 181, 135, 233, 189, 239 },
-        {   1,  23,  34,  76, 102, 138, 106, 111, 195, 144, 185 }
+        {  43, 121, 184, 233, 173, 182, 235, 187, 248, 211, 237 },
+        {  93, 117, 177, 232, 170, 180, 235, 182, 246, 204, 224 },
+        {  33, 101, 158, 229, 165, 179, 235, 182, 245, 207, 236 },
+        {  11,  81, 129, 221, 153, 173, 233, 179, 246, 203, 229 },
+        {   2,  51,  82, 188, 124, 158, 224, 162, 248, 206, 228 },
+        {   1,  18,  29,  88,  93, 137, 141, 116, 222, 161, 217 }
       }, { /* Coeff Band 2 */
-        {  25, 180, 186, 213, 161, 173, 207, 164, 213, 197, 165 },
-        {  36, 145, 175, 211, 160, 170, 208, 158, 242, 193, 219 },
-        {  21, 116, 153, 207, 154, 166, 209, 165, 247, 193, 255 },
-        {  10,  79, 121, 197, 142, 163, 203, 159, 240, 189, 243 },
-        {   2,  42,  69, 149, 115, 149, 193, 143, 241, 192, 219 },
-        {   1,  16,  24,  64,  95, 134, 107, 100, 204, 154, 182 }
+        {  63, 154, 199, 239, 184, 187, 236, 187, 248, 209, 221 },
+        {  53, 128, 191, 239, 182, 188, 236, 188, 251, 209, 255 },
+        {  14,  99, 160, 235, 172, 184, 235, 187, 249, 207, 240 },
+        {   4,  75, 122, 219, 150, 173, 226, 177, 250, 204, 240 },
+        {   1,  47,  77, 176, 121, 154, 207, 153, 245, 197, 237 },
+        {   1,  18,  30,  84,  95, 136, 138, 112, 229, 167, 228 }
       }, { /* Coeff Band 3 */
-        {  27, 217, 204, 217, 173, 172, 204, 152, 253, 189, 255 },
-        {  45, 152, 188, 220, 173, 180, 205, 164, 236, 189, 216 },
-        {  16, 101, 151, 211, 163, 172, 203, 155, 238, 186, 230 },
-        {   7,  71, 110, 193, 136, 164, 201, 153, 240, 196, 245 },
-        {   1,  37,  58, 138, 112, 144, 188, 139, 236, 183, 210 },
-        {   1,  13,  21,  60,  92, 136, 112, 101, 205, 155, 187 }
+        {  48, 193, 210, 245, 194, 194, 241, 196, 252, 213, 255 },
+        {  26, 145, 201, 245, 194, 196, 240, 195, 251, 215, 240 },
+        {   6, 104, 165, 241, 179, 190, 239, 191, 253, 222, 255 },
+        {   1,  73, 120, 218, 151, 174, 227, 172, 251, 219, 248 },
+        {   1,  42,  69, 167, 118, 153, 205, 146, 251, 206, 245 },
+        {   1,  16,  27,  84,  89, 133, 148, 112, 240, 179, 238 }
       }, { /* Coeff Band 4 */
-        {  17, 221, 219, 231, 186, 181, 220, 161, 242, 212, 255 },
-        {  18, 153, 194, 229, 180, 181, 221, 168, 247, 212, 255 },
-        {   3,  89, 142, 219, 159, 176, 222, 167, 249, 208, 233 },
-        {   1,  53,  88, 185, 129, 162, 211, 152, 246, 201, 238 },
-        {   1,  25,  43, 128,  97, 139, 185, 137, 241, 190, 229 },
-        {   1,   9,  17,  54,  87, 131, 106,  99, 210, 153, 206 }
+        {  47, 213, 225, 248, 203, 199, 240, 194, 254, 211, 255 },
+        {  32, 153, 212, 248, 201, 199, 241, 196, 251, 226, 255 },
+        {   6, 102, 168, 240, 181, 190, 240, 187, 251, 225, 238 },
+        {   1,  66, 111, 211, 146, 169, 229, 167, 255, 224, 244 },
+        {   1,  36,  60, 157, 110, 148, 209, 143, 252, 215, 255 },
+        {   1,  16,  27,  83,  90, 133, 152, 111, 244, 184, 250 }
       }, { /* Coeff Band 5 */
-        {  30, 230, 209, 246, 189, 196, 239, 196, 251, 216, 255 },
-        {  11, 159, 191, 239, 183, 187, 240, 184, 253, 229, 255 },
-        {   1,  94, 141, 227, 162, 177, 235, 178, 253, 227, 255 },
-        {   1,  58,  90, 190, 130, 160, 220, 156, 252, 219, 249 },
-        {   1,  27,  46, 129, 100, 139, 191, 133, 249, 200, 246 },
-        {   1,  12,  19,  62,  89, 127, 120, 100, 228, 161, 229 }
+        {  46, 225, 232, 252, 219, 208, 247, 204, 254, 233, 255 },
+        {  24, 162, 214, 250, 208, 204, 247, 201, 254, 236, 255 },
+        {   3, 106, 165, 242, 182, 191, 245, 196, 255, 231, 255 },
+        {   1,  66, 108, 213, 142, 169, 235, 175, 255, 226, 247 },
+        {   1,  35,  59, 158, 108, 147, 216, 146, 254, 220, 255 },
+        {   1,  16,  27,  85,  90, 131, 159, 110, 248, 191, 252 }
       }
     }, { /* Inter */
       { /* Coeff Band 0 */
-        { 213,  63, 239, 223, 197, 181, 181, 153, 199, 154, 226 },
-        {  82, 106, 196, 220, 185, 180, 196, 150, 231, 189, 198 },
-        {  12, 143, 195, 219, 187, 180, 178, 148, 235, 167, 239 }
+        { 229,  28, 245, 227, 195, 182, 200, 145, 253, 186, 255 },
+        { 151,  44, 210, 214, 180, 175, 193, 146, 247, 185, 254 },
+        {  55,  48, 131, 183, 148, 163, 194, 138, 249, 201, 246 }
       }, { /* Coeff Band 1 */
-        { 128, 243, 247, 251, 209, 213, 255, 255, 128, 128, 128 },
-        { 136, 226, 244, 247, 208, 162, 224, 183, 255, 255, 128 },
-        {  88, 189, 230, 242, 208, 201, 236, 200, 255, 255, 128 },
-        {  66, 149, 198, 241, 193, 193, 230, 161, 255, 255, 128 },
-        {  41, 104, 142, 211, 145, 180, 236, 193, 255, 236, 128 },
-        {  24,  59,  76, 145, 114, 142, 188, 119, 255, 214, 128 }
+        { 126, 165, 239, 250, 206, 204, 248, 193, 255, 255, 128 },
+        { 199, 158, 231, 248, 206, 198, 247, 200, 243, 255, 255 },
+        { 102, 136, 209, 248, 203, 197, 247, 201, 255, 244, 128 },
+        {  64, 116, 181, 245, 185, 196, 248, 201, 255, 233, 128 },
+        {  44,  98, 151, 233, 162, 179, 248, 195, 255, 242, 128 },
+        {  44,  81, 119, 204, 140, 165, 222, 163, 252, 217, 255 }
       }, { /* Coeff Band 2 */
-        {  44, 230, 243, 250, 225, 193, 218, 151, 255, 255, 128 },
-        {  68, 203, 237, 252, 218, 212, 207, 166, 255, 255, 128 },
-        {  59, 156, 215, 251, 200, 210, 205, 160, 255, 255, 128 },
-        {  56, 122, 182, 245, 181, 196, 219, 176, 255, 213, 128 },
-        {  40, 105, 135, 210, 143, 166, 243, 190, 255, 224, 128 },
-        {  13,  90, 112, 157, 143, 154, 199, 139, 244, 201, 255 }
+        { 108, 185, 239, 252, 216, 209, 248, 205, 255, 230, 128 },
+        {  91, 155, 224, 252, 211, 205, 251, 211, 255, 230, 128 },
+        {  20, 116, 185, 248, 194, 196, 252, 206, 255, 255, 128 },
+        {   8,  86, 141, 239, 168, 185, 248, 196, 255, 247, 128 },
+        {   3,  50,  92, 206, 125, 164, 242, 176, 255, 246, 128 },
+        {   1,  21,  40, 131,  85, 141, 200, 131, 247, 236, 255 }
       }, { /* Coeff Band 3 */
-        {  46, 241, 247, 249, 212, 202, 226, 168, 255, 154, 128 },
-        {  49, 195, 233, 246, 213, 194, 218, 181, 255, 255, 128 },
-        {  14, 113, 176, 248, 198, 208, 240, 195, 255, 255, 128 },
-        {   6,  87, 125, 230, 157, 187, 240, 184, 255, 183, 128 },
-        {   1,  43,  74, 188, 118, 149, 229, 164, 242, 241, 255 },
-        {   1,  16,  47, 138,  88, 126, 210, 156, 236, 213, 255 }
+        {  94, 198, 243, 254, 226, 215, 254, 220, 255, 255, 128 },
+        {  67, 164, 228, 253, 217, 208, 250, 216, 255, 213, 128 },
+        {  14, 120, 185, 250, 196, 205, 248, 205, 255, 255, 128 },
+        {   4,  83, 134, 238, 161, 181, 250, 202, 255, 233, 128 },
+        {   1,  48,  82, 196, 119, 157, 248, 178, 255, 255, 128 },
+        {   1,  26,  38,  96,  84, 132, 221, 110, 255, 209, 128 }
       }, { /* Coeff Band 4 */
-        {  26, 244, 249, 252, 228, 214, 255, 212, 128, 128, 128 },
-        {  34, 199, 235, 249, 216, 197, 246, 198, 255, 255, 128 },
-        {   8, 106, 163, 244, 195, 193, 243, 176, 255, 255, 128 },
-        {   1,  65, 104, 222, 142, 174, 244, 181, 255, 255, 128 },
-        {   1,  36,  52, 147, 111, 136, 226, 136, 247, 238, 255 },
-        {   1,  26,  27,  68, 100, 110, 126, 107, 232, 194, 255 }
+        {  82, 210, 245, 255, 230, 215, 246, 221, 255, 255, 128 },
+        {  55, 170, 231, 254, 222, 213, 255, 220, 255, 255, 128 },
+        {   8, 118, 184, 251, 200, 207, 255, 219, 255, 255, 128 },
+        {   2,  78, 126, 239, 156, 185, 251, 216, 255, 255, 128 },
+        {   1,  43,  68, 189, 108, 151, 247, 187, 255, 228, 128 },
+        {   1,  34,  40, 121, 114, 102, 205,  96, 255, 255, 128 }
       }, { /* Coeff Band 5 */
-        {  62, 243, 199, 255, 213, 218, 255, 250, 255, 255, 128 },
-        {  26, 171, 191, 252, 194, 205, 255, 243, 255, 255, 128 },
-        {  14, 107, 167, 250, 188, 198, 255, 233, 255, 255, 128 },
-        {   7, 103, 144, 244, 171, 189, 252, 216, 255, 228, 128 },
-        {   1,  51,  74, 184, 124, 160, 238, 167, 255, 241, 128 },
-        {   1,  13,  13,  78, 105, 138, 169, 124, 241, 224, 255 }
+        {  65, 228, 241, 255, 231, 214, 253, 222, 255, 255, 128 },
+        {  33, 173, 226, 254, 222, 216, 255, 231, 255, 255, 128 },
+        {   5, 120, 180, 251, 197, 205, 251, 226, 255, 233, 128 },
+        {   1,  81, 130, 240, 159, 187, 251, 206, 255, 205, 128 },
+        {   1,  51,  78, 198, 119, 168, 238, 181, 255, 171, 128 },
+        {   1,  18,  49, 183, 119, 160, 255, 171, 128, 128, 128 }
       }
     }
   }
@@ -532,169 +532,169 @@ static const vp9_coeff_probs default_coef_probs_32x32[BLOCK_TYPES] = {
   { /* block Type 0 */
     { /* Intra */
       { /* Coeff Band 0 */
-        {  12,  16,  47,  79, 123, 148,  48, 154,  38, 139,  14 },
-        {   2,  12,  26,  59, 104, 136,  68, 115, 125, 120,  91 },
-        {   1,  10,  17,  44,  94, 133,  76,  98, 129, 139,  98 }
+        {  37,  34, 137, 205, 154, 170, 151, 159, 109, 172,  44 },
+        {   3,  26,  60, 113, 123, 154, 100, 124, 152, 131, 144 },
+        {   1,  13,  23,  54, 102, 139,  71, 106, 146, 123, 148 }
       }, { /* Coeff Band 1 */
-        { 128,  90, 111, 171, 128, 152, 183, 148, 211, 169, 180 },
-        {  34,  86, 117, 162, 128, 155, 178, 159, 212, 172, 149 },
-        {  17,  75, 114, 168, 133, 155, 171, 155, 209, 161, 179 },
-        {   5,  53,  92, 175, 138, 154, 180, 148, 209, 172, 170 },
-        {   1,  27,  48, 159,  96, 149, 187, 155, 213, 164, 162 },
-        {   8,  12,  18,  49,  92, 129,  92, 104, 150, 136, 125 }
+        {  26,  77, 122, 152, 144, 160, 143, 129, 216, 158, 201 },
+        {  43,  76, 123, 152, 142, 159, 145, 129, 218, 160, 204 },
+        {  25,  67, 112, 150, 141, 159, 144, 128, 218, 159, 204 },
+        {   9,  54,  90, 143, 134, 156, 144, 127, 218, 159, 204 },
+        {   2,  32,  52, 116, 114, 148, 138, 123, 217, 158, 207 },
+        {   1,  10,  15,  44,  91, 133,  75,  99, 172, 128, 169 }
       }, { /* Coeff Band 2 */
-        {   5,  52, 106, 140, 141, 159, 148, 130, 228, 201, 208 },
-        {  16,  52,  98, 140, 131, 161, 151, 125, 225, 194, 149 },
-        {  13,  47,  92, 138, 135, 158, 143, 127, 230, 190, 153 },
-        {   8,  43,  77, 136, 132, 158, 137, 121, 236, 195, 188 },
-        {   2,  33,  55, 118, 115, 152, 130, 120, 226, 175, 179 },
-        {   1,   8,  12,  34,  95, 134,  56,  94, 142, 129, 119 }
+        {  32, 122, 143, 163, 145, 161, 162, 131, 226, 171, 206 },
+        {  46, 105, 143, 168, 148, 161, 165, 133, 228, 174, 204 },
+        {  17,  79, 116, 164, 142, 161, 166, 134, 229, 174, 206 },
+        {   4,  53,  78, 143, 125, 153, 163, 129, 232, 175, 213 },
+        {   1,  29,  44, 105, 105, 142, 147, 120, 228, 168, 211 },
+        {   1,  12,  18,  52,  91, 133,  92, 100, 193, 140, 183 }
       }, { /* Coeff Band 3 */
-        {  14, 122, 145, 181, 153, 167, 171, 141, 217, 176, 176 },
-        {  29, 110, 149, 185, 156, 165, 169, 139, 214, 169, 191 },
-        {  12,  90, 135, 186, 154, 169, 168, 140, 217, 170, 185 },
-        {   5,  75, 107, 172, 145, 160, 171, 141, 215, 172, 182 },
-        {   1,  49,  71, 131, 121, 150, 153, 128, 211, 164, 177 },
-        {   1,  14,  21,  51, 101, 136,  81,  98, 150, 134, 133 }
+        {  33, 157, 160, 182, 149, 163, 185, 141, 236, 185, 218 },
+        {  20, 116, 152, 188, 152, 165, 191, 144, 238, 188, 217 },
+        {   4,  74, 114, 180, 141, 162, 192, 143, 240, 191, 219 },
+        {   1,  44,  69, 148, 119, 151, 183, 134, 243, 192, 227 },
+        {   1,  25,  40, 110, 101, 141, 162, 121, 238, 181, 223 },
+        {   1,  12,  18,  56,  89, 132, 103, 101, 206, 148, 196 }
       }, { /* Coeff Band 4 */
-        {  14, 179, 178, 193, 163, 170, 178, 143, 223, 176, 187 },
-        {  13, 139, 167, 198, 160, 172, 186, 147, 228, 175, 189 },
-        {   2,  90, 125, 187, 147, 164, 190, 148, 231, 186, 193 },
-        {   1,  54,  78, 154, 122, 154, 183, 135, 233, 187, 207 },
-        {   1,  22,  34,  94,  95, 139, 160, 111, 222, 173, 194 },
-        {   1,   7,  11,  35,  88, 132,  69,  93, 159, 131, 149 }
+        {  25, 183, 174, 207, 159, 171, 205, 156, 243, 194, 228 },
+        {  13, 124, 159, 209, 157, 171, 213, 160, 243, 200, 228 },
+        {   2,  75, 117, 199, 143, 166, 215, 158, 246, 205, 230 },
+        {   1,  45,  73, 165, 119, 153, 204, 144, 248, 205, 231 },
+        {   1,  26,  43, 120, 101, 141, 178, 127, 242, 192, 226 },
+        {   1,  12,  19,  59,  89, 132, 112, 102, 215, 154, 201 }
       }, { /* Coeff Band 5 */
-        {   6, 229, 210, 228, 186, 181, 211, 163, 238, 194, 217 },
-        {   2, 140, 169, 224, 170, 178, 222, 167, 244, 205, 214 },
-        {   1,  74, 112, 203, 143, 166, 220, 162, 247, 210, 220 },
-        {   1,  43,  64, 154, 113, 149, 198, 140, 246, 201, 229 },
-        {   1,  20,  32,  95,  95, 135, 167, 113, 237, 183, 222 },
-        {   1,   9,  14,  44,  88, 129,  87,  95, 197, 142, 190 }
+        {  13, 232, 223, 239, 196, 188, 225, 172, 248, 209, 226 },
+        {   4, 155, 187, 237, 184, 187, 233, 180, 250, 216, 232 },
+        {   1,  86, 131, 222, 156, 175, 233, 176, 251, 218, 237 },
+        {   1,  49,  79, 181, 123, 157, 218, 155, 251, 214, 237 },
+        {   1,  26,  43, 125, 100, 141, 188, 130, 246, 199, 231 },
+        {   1,  12,  20,  62,  88, 131, 119, 102, 222, 161, 209 }
       }
     }, { /* Inter */
       { /* Coeff Band 0 */
-        {  90,  25, 200, 240, 210, 196, 196, 160, 209, 175, 174 },
-        {  21,  29, 139, 218, 181, 181, 186, 146, 225, 177, 191 },
-        {  26,  35, 114, 203, 165, 176, 174, 142, 222, 174, 189 }
+        {  51,  37, 227, 237, 205, 184, 200, 162, 231, 187, 207 },
+        {   9,  36, 172, 204, 176, 173, 171, 145, 217, 167, 197 },
+        {  21,  26, 112, 162, 145, 162, 155, 133, 215, 165, 191 }
       }, { /* Coeff Band 1 */
-        { 128, 217, 229, 234, 186, 187, 215, 181, 224, 165, 255 },
-        { 154, 215, 234, 237, 179, 180, 226, 179, 255, 183, 128 },
-        { 125, 204, 225, 239, 185, 183, 230, 188, 233, 205,   1 },
-        {  74, 171, 200, 233, 180, 187, 222, 180, 249, 185,   1 },
-        {  39, 112, 154, 220, 154, 168, 219, 181, 247, 196, 255 },
-        {   9,  56,  81, 154, 124, 158, 177, 145, 227, 168, 207 }
+        {  79, 169, 219, 223, 176, 177, 222, 161, 248, 213, 244 },
+        { 177, 166, 216, 222, 175, 178, 222, 161, 246, 212, 226 },
+        { 119, 141, 196, 222, 174, 176, 220, 163, 250, 212, 236 },
+        {  63, 117, 165, 217, 163, 175, 218, 161, 248, 209, 231 },
+        {  30,  87, 117, 192, 138, 162, 216, 157, 247, 211, 224 },
+        {  14,  56,  60, 119, 111, 146, 156, 123, 227, 171, 220 }
       }, { /* Coeff Band 2 */
-        {  24, 153, 231, 245, 203, 194, 228, 187, 255, 158, 128 },
-        {  80, 153, 234, 242, 201, 192, 240, 195, 236, 171, 255 },
-        {  58, 153, 220, 242, 202, 194, 244, 178, 255, 205, 128 },
-        {  41, 132, 192, 237, 178, 194, 224, 185, 240, 221, 255 },
-        {  31, 104, 149, 213, 154, 166, 233, 172, 235, 206, 219 },
-        {  12,  82, 104, 157, 128, 153, 173, 133, 228, 185, 200 }
+        {  88, 195, 225, 229, 181, 181, 229, 171, 252, 212, 221 },
+        {  66, 145, 202, 229, 177, 180, 230, 172, 253, 220, 255 },
+        {  12,  97, 152, 221, 162, 174, 230, 169, 253, 218, 249 },
+        {   3,  66, 103, 198, 138, 165, 223, 159, 253, 219, 251 },
+        {   1,  38,  61, 158, 110, 148, 209, 146, 252, 212, 238 },
+        {   1,  19,  30,  94,  94, 136, 160, 114, 244, 185, 236 }
       }, { /* Coeff Band 3 */
-        {  64, 217, 240, 242, 198, 186, 238, 172, 243, 199, 255 },
-        {  74, 182, 225, 241, 190, 192, 234, 191, 255, 203, 128 },
-        {  21, 117, 176, 236, 176, 181, 238, 182, 248, 231, 255 },
-        {   7,  83, 126, 221, 153, 176, 232, 178, 250, 211, 128 },
-        {   1,  47,  74, 171, 116, 156, 208, 155, 243, 208, 238 },
-        {   1,  17,  31,  86,  83, 141, 135, 113, 220, 168, 190 }
+        {  79, 211, 228, 235, 186, 184, 233, 176, 255, 225, 255 },
+        {  50, 151, 205, 235, 182, 185, 237, 177, 254, 223, 255 },
+        {   7,  95, 149, 225, 162, 176, 236, 177, 254, 229, 219 },
+        {   1,  62,  98, 198, 134, 164, 228, 162, 254, 224, 238 },
+        {   1,  35,  57, 156, 108, 148, 211, 143, 253, 215, 238 },
+        {   1,  17,  26,  87,  89, 135, 161, 113, 246, 189, 237 }
       }, { /* Coeff Band 4 */
-        {  46, 236, 239, 243, 195, 192, 241, 189, 255, 195, 128 },
-        {  43, 189, 217, 242, 183, 185, 244, 196, 243, 208, 255 },
-        {   5, 101, 153, 234, 168, 181, 238, 201, 241, 224, 255 },
-        {   1,  64, 101, 212, 134, 165, 229, 175, 253, 202, 255 },
-        {   1,  32,  54, 149, 100, 140, 207, 145, 246, 198, 224 },
-        {   1,  12,  19,  51, 103, 140, 109,  98, 212, 157, 177 }
+        {  68, 225, 230, 239, 190, 187, 238, 180, 252, 234, 255 },
+        {  39, 156, 206, 239, 185, 187, 241, 187, 254, 231, 255 },
+        {   4,  94, 147, 229, 163, 178, 242, 183, 255, 236, 224 },
+        {   1,  58,  94, 200, 132, 163, 232, 166, 254, 230, 255 },
+        {   1,  32,  52, 153, 104, 146, 214, 144, 253, 222, 236 },
+        {   1,  15,  24,  84,  89, 131, 159, 109, 247, 192, 240 }
       }, { /* Coeff Band 5 */
-        {  25, 249, 228, 245, 205, 193, 241, 187, 252, 226, 219 },
-        {  12, 166, 186, 241, 183, 189, 246, 196, 254, 234, 199 },
-        {   1,  88, 130, 229, 156, 177, 245, 190, 255, 238, 255 },
-        {   1,  54,  84, 196, 124, 159, 237, 169, 255, 233, 237 },
-        {   1,  30,  49, 140, 102, 142, 211, 139, 251, 218, 225 },
-        {   1,  13,  21,  67,  89, 131, 130, 100, 229, 168, 233 }
+        {  45, 248, 234, 248, 208, 198, 244, 193, 255, 233, 255 },
+        {  19, 169, 204, 246, 195, 195, 246, 199, 255, 233, 255 },
+        {   2,  98, 145, 235, 166, 183, 245, 192, 255, 235, 255 },
+        {   1,  59,  92, 205, 131, 164, 236, 172, 254, 231, 250 },
+        {   1,  33,  52, 152, 103, 145, 216, 144, 253, 221, 240 },
+        {   1,  15,  24,  83,  87, 133, 156, 110, 246, 191, 242 }
       }
     }
   }, { /* block Type 1 */
     { /* Intra */
       { /* Coeff Band 0 */
-        {  77,  16,  83,  89, 131, 150,  46, 119,  43, 101,  50 },
-        {  15,  22,  42,  85, 105, 137, 110, 119, 153, 156, 117 },
-        {   4,  21,  34,  89,  98, 126, 120, 119, 149, 158, 105 }
+        { 179,  23, 200, 222, 180, 182, 150, 152, 148, 135, 125 },
+        {  60,  33, 113, 185, 143, 166, 168, 144, 189, 168, 152 },
+        {   8,  31,  59, 137, 114, 150, 163, 132, 206, 171, 169 }
       }, { /* Coeff Band 1 */
-        { 128, 129, 140, 212, 174, 179, 155, 105, 163, 146, 255 },
-        {  57, 121, 153, 189, 160, 191, 206, 148, 233, 230, 255 },
-        {  25, 105, 143, 193, 148, 174, 193, 134, 236, 213, 255 },
-        {   8,  95, 132, 197, 138, 174, 154, 165, 242, 161, 255 },
-        {   1,  67,  97, 165, 139, 143, 170, 143, 214, 188, 226 },
-        {   1,  22,  33,  65, 124, 144,  68, 123, 125, 118, 122 }
+        {  27, 103, 158, 215, 157, 174, 209, 165, 239, 191, 233 },
+        {  90, 101, 159, 213, 156, 173, 212, 164, 230, 185, 237 },
+        {  39,  91, 146, 212, 155, 169, 212, 165, 232, 186, 207 },
+        {  16,  75, 120, 203, 144, 169, 210, 161, 233, 189, 227 },
+        {   3,  48,  76, 167, 120, 154, 199, 146, 236, 190, 218 },
+        {   1,  18,  26,  72,  95, 137, 113, 109, 197, 146, 186 }
       }, { /* Coeff Band 2 */
-        {   9,  48, 113, 195, 136, 171, 209, 134, 255, 255, 128 },
-        {  15,  45, 110, 170, 139, 168, 209, 144, 219, 160, 255 },
-        {  16,  42,  92, 164, 131, 157, 210, 131, 247, 180,   1 },
-        {  14,  29,  78, 158, 117, 146, 191, 147, 229, 203, 192 },
-        {   2,  19,  36, 131,  94, 140, 185, 137, 232, 167, 216 },
-        {   1,   8,  14,  42,  95, 125,  89,  93, 163, 135, 145 }
+        {  45, 137, 177, 218, 166, 174, 206, 163, 234, 184, 214 },
+        {  47, 117, 167, 218, 166, 176, 206, 164, 234, 182, 229 },
+        {  16,  90, 136, 211, 153, 172, 205, 162, 236, 192, 231 },
+        {   6,  65, 100, 188, 136, 162, 193, 155, 237, 177, 228 },
+        {   1,  37,  58, 137, 113, 150, 166, 134, 229, 167, 234 },
+        {   1,  13,  19,  55,  90, 132,  93, 103, 196, 137, 202 }
       }, { /* Coeff Band 3 */
-        {  22, 137, 165, 202, 159, 183, 137, 133, 207, 136, 224 },
-        {  53, 123, 158, 206, 167, 176, 175, 178, 180, 171, 238 },
-        {  29, 103, 142, 187, 156, 167, 220, 170, 230, 142, 255 },
-        {  12,  75, 114, 182, 146, 168, 186, 132, 223, 191, 240 },
-        {   5,  42,  59, 140, 110, 149, 173, 138, 218, 173, 214 },
-        {   1,  13,  16,  42,  92, 122,  75,  99, 165, 133, 162 }
+        {  36, 171, 194, 227, 177, 179, 208, 165, 244, 196, 245 },
+        {  19, 129, 178, 227, 175, 184, 214, 165, 246, 188, 255 },
+        {   5,  90, 139, 217, 158, 174, 213, 166, 246, 198, 255 },
+        {   1,  59,  93, 182, 134, 162, 193, 150, 242, 188, 241 },
+        {   1,  31,  49, 122, 108, 145, 160, 127, 235, 172, 229 },
+        {   1,  10,  18,  54,  89, 132, 101,  99, 213, 144, 217 }
       }, { /* Coeff Band 4 */
-        {  14, 186, 183, 201, 164, 170, 198, 153, 233, 174, 205 },
-        {  13, 137, 172, 213, 169, 172, 187, 164, 235, 163, 228 },
-        {   2,  86, 128, 201, 151, 174, 198, 152, 221, 186, 192 },
-        {   1,  51,  79, 162, 125, 159, 190, 140, 237, 193, 198 },
-        {   1,  25,  37, 107, 107, 146, 141, 118, 223, 166, 212 },
-        {   1,   8,  11,  38,  85, 126,  78,  99, 180, 131, 190 }
+        {  37, 197, 210, 233, 187, 186, 216, 172, 250, 202, 255 },
+        {  20, 142, 191, 234, 183, 186, 219, 170, 249, 207, 246 },
+        {   3,  93, 144, 222, 163, 176, 219, 170, 249, 204, 224 },
+        {   1,  56,  88, 179, 130, 159, 199, 148, 246, 197, 243 },
+        {   1,  29,  47, 123, 104, 144, 172, 127, 244, 185, 234 },
+        {   1,  14,  22,  66,  91, 130, 120, 103, 225, 158, 221 }
       }, { /* Coeff Band 5 */
-        {   7, 224, 213, 235, 191, 183, 222, 170, 241, 212, 241 },
-        {   2, 142, 176, 232, 177, 181, 230, 175, 251, 215, 216 },
-        {   1,  79, 121, 214, 150, 170, 230, 171, 251, 220, 247 },
-        {   1,  44,  70, 168, 117, 151, 211, 148, 251, 211, 238 },
-        {   1,  25,  38, 113,  98, 137, 177, 123, 247, 192, 229 },
-        {   1,  12,  19,  56,  89, 128, 111,  99, 223, 156, 228 }
+        {  19, 227, 223, 245, 203, 194, 238, 187, 251, 225, 217 },
+        {   6, 152, 192, 242, 189, 190, 241, 190, 253, 225, 255 },
+        {   1,  89, 138, 228, 161, 177, 239, 181, 254, 224, 248 },
+        {   1,  52,  84, 188, 127, 157, 224, 159, 253, 222, 247 },
+        {   1,  29,  47, 132, 102, 140, 196, 132, 251, 208, 244 },
+        {   1,  14,  23,  71,  90, 133, 134, 103, 239, 174, 233 }
       }
     }, { /* Inter */
       { /* Coeff Band 0 */
-        { 113, 113, 206, 246, 197, 205, 228, 180, 255, 192, 128 },
-        {   8, 110, 179, 248, 197, 204, 215, 190, 245, 211, 255 },
-        {   1,  92, 181, 253, 212, 220, 197, 164, 255, 187, 128 }
+        { 205,  14, 245, 235, 216, 189, 190, 146, 249, 201, 255 },
+        {  97,  19, 213, 210, 194, 174, 176, 139, 241, 183, 250 },
+        {  31,  20, 144, 183, 160, 167, 171, 132, 240, 184, 253 }
       }, { /* Coeff Band 1 */
-        { 128, 250, 254, 255, 255, 128, 128, 128, 128, 128, 128 },
-        {  38, 247, 254, 255, 255, 128, 128, 128, 128, 128, 128 },
-        {  20, 239, 255, 255, 255, 128, 128, 128, 128, 128, 128 },
-        {  16, 221, 249, 255, 241, 255, 128, 128, 128, 128, 128 },
-        {  29, 121, 195, 240, 195, 209, 255, 255, 128, 128, 128 },
-        {  18,  48,  95, 175, 128, 146, 236, 149, 255, 255, 128 }
+        { 137, 182, 245, 254, 221, 216, 255, 160, 128, 128, 128 },
+        { 231, 185, 242, 251, 218, 205, 255, 233, 128, 128, 128 },
+        { 170, 175, 229, 252, 205, 209, 255, 211, 128, 128, 128 },
+        { 107, 157, 213, 250, 199, 205, 251, 207, 255, 255, 128 },
+        {  77, 126, 183, 243, 182, 183, 252, 206, 255, 255, 128 },
+        {  69,  96, 149, 229, 157, 170, 247, 169, 255, 255, 128 }
       }, { /* Coeff Band 2 */
-        {  14, 225, 235, 255, 236, 255, 128, 128, 128, 128, 128 },
-        {  23, 219, 238, 255, 242, 238, 128, 128, 128, 128, 128 },
-        {  14, 189, 228, 255, 239, 223, 128, 128, 128, 128, 128 },
-        {  20, 144, 194, 251, 206, 211, 255, 224, 128, 128, 128 },
-        {  22, 107, 164, 223, 160, 195, 255, 230, 128, 128, 128 },
-        {   4,  84, 155, 244, 166, 183, 255, 255, 128, 128, 128 }
+        { 107, 196, 241, 252, 211, 208, 255, 210, 128, 128, 128 },
+        {  92, 162, 221, 249, 203, 195, 255, 199, 128, 128, 128 },
+        {  20, 108, 181, 244, 190, 191, 250, 200, 255, 255, 128 },
+        {   7,  80, 132, 241, 172, 197, 253, 191, 255, 255, 128 },
+        {   2,  43,  75, 219, 122, 150, 255, 203, 128, 128, 128 },
+        {   1,  15,  48,  98,  51, 192, 255, 160, 128, 128, 128 }
       }, { /* Coeff Band 3 */
-        {   7, 244, 250, 255, 246, 238, 255,   1, 128, 128, 128 },
-        {   9, 201, 231, 255, 243, 245, 255, 255, 128, 128, 128 },
-        {   4,  79, 166, 255, 220, 243, 255, 255, 128, 128, 128 },
-        {   2,  40, 104, 254, 181, 214, 255, 255, 128, 128, 128 },
-        {   1,  29,  17, 221, 133, 149, 255, 255, 128, 128, 128 },
-        {   1,   1,   1,   1, 128, 128, 255, 255, 128, 128, 128 }
+        { 107, 202, 244, 254, 226, 215, 255, 192, 128, 128, 128 },
+        {  77, 167, 224, 252, 215, 212, 255, 235, 128, 128, 128 },
+        {  14, 117, 179, 249, 191, 196, 255, 212, 128, 128, 128 },
+        {   3,  84, 134, 237, 160, 194, 248, 216, 255, 255, 128 },
+        {   1,  57,  84, 216, 145, 136, 255, 161, 128, 128, 128 },
+        {   1,   1,   1, 255, 128, 255, 128, 128, 128, 128, 128 }
       }, { /* Coeff Band 4 */
-        {   7, 250, 251, 255, 251, 228, 128, 128, 128, 128, 128 },
-        {   6, 207, 237, 255, 246, 255, 128, 128, 128, 128, 128 },
-        {   1,  79, 158, 255, 229, 242, 128, 128, 128, 128, 128 },
-        {   1,  22,  89, 251, 183, 229, 255, 192, 128, 128, 128 },
-        {   1,  54, 102, 142, 255, 128, 192,   1, 255, 255, 128 },
-        {   1,   1,   1, 255,   1, 255, 128, 128, 128, 128, 128 }
+        {  88, 219, 248, 255, 239, 225, 255, 255, 128, 128, 128 },
+        {  61, 178, 234, 255, 227, 227, 255, 217, 128, 128, 128 },
+        {   6, 127, 188, 252, 201, 211, 255, 244, 128, 128, 128 },
+        {   1,  83, 130, 248, 173, 197, 255, 175, 128, 128, 128 },
+        {   1,  61,  66, 211, 121, 188, 255, 213, 128, 128, 128 },
+        { 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 128 }
       }, { /* Coeff Band 5 */
-        {  34, 251, 193, 247, 183, 192, 255, 225, 255, 255, 128 },
-        {  20, 187, 163, 240, 168, 180, 255, 222, 255, 255, 128 },
-        {   5, 100, 125, 237, 163, 179, 255, 214, 255, 255, 128 },
-        {   1,  90, 105, 232, 153, 178, 255, 204, 255, 255, 128 },
-        {   1,  79,  87, 219, 138, 168, 255, 210, 255, 255, 128 },
-        {   1,   1,   1, 255,   1,  64, 128, 128, 128, 128, 128 }
+        {  73, 243, 250, 255, 244, 220, 255, 205, 128, 128, 128 },
+        {  42, 197, 242, 255, 237, 227, 242, 166, 255, 255, 128 },
+        {  10, 137, 197, 252, 214, 199, 255, 238, 128, 128, 128 },
+        {   2,  85, 134, 242, 163, 185, 224, 238, 255, 255, 128 },
+        {   1,  70,  69, 199, 110,  64, 255, 213, 128, 128, 128 },
+        {   1,   1,   1,   1, 128, 128, 255,   1, 128, 128, 128 }
       }
     }
   }
index ca55699..1e13861 100644 (file)
@@ -42,15 +42,21 @@ DECLARE_ALIGNED(16, const uint8_t, vp9_norm[256]) = {
 };
 
 // Unified coefficient band structure used by all block sizes
-DECLARE_ALIGNED(16, const int, vp9_coef_bands[32]) = {
-  0, 1, 2, 3, 3, 3, 4, 4,
-  4, 4, 4, 4, 4, 4, 4, 5,
+DECLARE_ALIGNED(16, const int, vp9_coef_bands8x8[64]) = {
+  0, 1, 2, 3, 4, 4, 5, 5,
+  1, 2, 3, 4, 4, 5, 5, 5,
+  2, 3, 4, 4, 5, 5, 5, 5,
+  3, 4, 4, 5, 5, 5, 5, 5,
+  4, 4, 5, 5, 5, 5, 5, 5,
+  4, 5, 5, 5, 5, 5, 5, 5,
   5, 5, 5, 5, 5, 5, 5, 5,
   5, 5, 5, 5, 5, 5, 5, 5
 };
 DECLARE_ALIGNED(16, const int, vp9_coef_bands4x4[16]) = {
-  0, 1, 2, 3, 3, 3, 4, 4,
-  4, 4, 5, 5, 5, 5, 5, 5
+  0, 1, 2, 3,
+  1, 2, 3, 4,
+  2, 3, 4, 5,
+  3, 4, 5, 5
 };
 
 DECLARE_ALIGNED(16, const uint8_t, vp9_pt_energy_class[MAX_ENTROPY_TOKENS]) = {
index 45874e7..ec8cb72 100644 (file)
@@ -126,17 +126,20 @@ static INLINE void vp9_reset_sb64_tokens_context(MACROBLOCKD* const xd) {
   vpx_memset(xd->left_context, 0, sizeof(ENTROPY_CONTEXT_PLANES) * 4);
 }
 
-extern const int vp9_coef_bands[32];
+extern const int vp9_coef_bands8x8[64];
 extern const int vp9_coef_bands4x4[16];
 
-static int get_coef_band(TX_SIZE tx_size, int coef_index) {
+static int get_coef_band(const int *scan, TX_SIZE tx_size, int coef_index) {
   if (tx_size == TX_4X4) {
-    return vp9_coef_bands4x4[coef_index];
+    return vp9_coef_bands4x4[scan[coef_index]];
   } else {
-    if (coef_index < 32)
-      return vp9_coef_bands[coef_index];
-    else
+    const int pos = scan[coef_index];
+    const int sz = 1 << (2 + tx_size);
+    const int x = pos & (sz - 1), y = pos >> (2 + tx_size);
+    if (x >= 8 || y >= 8)
       return 5;
+    else
+      return vp9_coef_bands8x8[y * 8 + x];
   }
 }
 extern int vp9_get_coef_context(const int *scan, const int *neighbors,
index 9c168e1..3def217 100644 (file)
@@ -65,9 +65,11 @@ static int get_signed(BOOL_DECODER *br, int value_to_sign) {
 
 #define INCREMENT_COUNT(token)               \
   do {                                       \
-    coef_counts[type][ref][get_coef_band(txfm_size, c)][pt][token]++;     \
+    coef_counts[type][ref][get_coef_band(scan, txfm_size, c)] \
+               [pt][token]++;     \
     token_cache[c] = token; \
-    pt = vp9_get_coef_context(scan, nb, pad, token_cache, c, default_eob); \
+    pt = vp9_get_coef_context(scan, nb, pad, token_cache,     \
+                              c, default_eob); \
   } while (0)
 
 #if CONFIG_CODE_NONZEROCOUNT
@@ -212,10 +214,10 @@ static int decode_coefs(VP9D_COMP *dx, const MACROBLOCKD *xd,
     if (nzc == nzc_expected)
       break;
 #endif
-    prob = coef_probs[type][ref][get_coef_band(txfm_size, c)][pt];
+    prob = coef_probs[type][ref][get_coef_band(scan, txfm_size, c)][pt];
 #if CONFIG_CODE_NONZEROCOUNT == 0
     fc->eob_branch_counts[txfm_size][type][ref]
-                         [get_coef_band(txfm_size, c)][pt]++;
+                         [get_coef_band(scan, txfm_size, c)][pt]++;
     if (!vp9_read(br, prob[EOB_CONTEXT_NODE]))
       break;
 #endif
@@ -231,7 +233,7 @@ SKIP_START:
     if (!vp9_read(br, prob[ZERO_CONTEXT_NODE])) {
       INCREMENT_COUNT(ZERO_TOKEN);
       ++c;
-      prob = coef_probs[type][ref][get_coef_band(txfm_size, c)][pt];
+      prob = coef_probs[type][ref][get_coef_band(scan, txfm_size, c)][pt];
       goto SKIP_START;
     }
     // ONE_CONTEXT_NODE_0_
@@ -296,7 +298,8 @@ SKIP_START:
 
 #if CONFIG_CODE_NONZEROCOUNT == 0
   if (c < seg_eob)
-    coef_counts[type][ref][get_coef_band(txfm_size, c)][pt][DCT_EOB_TOKEN]++;
+    coef_counts[type][ref][get_coef_band(scan, txfm_size, c)]
+               [pt][DCT_EOB_TOKEN]++;
 #endif
 
   A0[aidx] = L0[lidx] = c > 0;
index 4ab8882..f51f4c5 100644 (file)
@@ -662,7 +662,7 @@ static void optimize_b(VP9_COMMON *const cm,
       t0 = (vp9_dct_value_tokens_ptr + x)->Token;
       /* Consider both possible successor states. */
       if (next < default_eob) {
-        band = get_coef_band(tx_size, i + 1);
+        band = get_coef_band(scan, tx_size, i + 1);
         pt = trellis_get_coeff_context(scan, nb, i, t0, token_cache,
                                        pad, default_eob);
         rate0 +=
@@ -721,7 +721,7 @@ static void optimize_b(VP9_COMMON *const cm,
         t0 = t1 = (vp9_dct_value_tokens_ptr + x)->Token;
       }
       if (next < default_eob) {
-        band = get_coef_band(tx_size, i + 1);
+        band = get_coef_band(scan, tx_size, i + 1);
         if (t0 != DCT_EOB_TOKEN) {
           pt = trellis_get_coeff_context(scan, nb, i, t0, token_cache,
                                          pad, default_eob);
@@ -763,7 +763,7 @@ static void optimize_b(VP9_COMMON *const cm,
      *  add a new trellis node, but we do need to update the costs.
      */
     else {
-      band = get_coef_band(tx_size, i + 1);
+      band = get_coef_band(scan, tx_size, i + 1);
       t0 = tokens[next][0].token;
       t1 = tokens[next][1].token;
       /* Update the cost of each path if we're past the EOB token. */
@@ -782,7 +782,7 @@ static void optimize_b(VP9_COMMON *const cm,
   }
 
   /* Now pick the best path through the whole trellis. */
-  band = get_coef_band(tx_size, i + 1);
+  band = get_coef_band(scan, tx_size, i + 1);
   VP9_COMBINEENTROPYCONTEXTS(pt, *a, *l);
   rate0 = tokens[next][0].rate;
   rate1 = tokens[next][1].rate;
index 8ba2220..f68afab 100644 (file)
@@ -565,12 +565,12 @@ static INLINE int cost_coeffs(VP9_COMMON *const cm, MACROBLOCK *mb,
       nzc += (v != 0);
 #endif
       token_cache[c] = t;
-      cost += token_costs[get_coef_band(tx_size, c)][pt][t];
+      cost += token_costs[get_coef_band(scan, tx_size, c)][pt][t];
       cost += vp9_dct_value_cost_ptr[v];
 #if !CONFIG_CODE_NONZEROCOUNT
       if (!c || token_cache[c - 1])
         cost += vp9_cost_bit(coef_probs[type][ref]
-                                       [get_coef_band(tx_size, c)]
+                                       [get_coef_band(scan, tx_size, c)]
                                        [pt][0], 1);
 #endif
       pt = vp9_get_coef_context(scan, nb, pad, token_cache, c, default_eob);
@@ -579,8 +579,9 @@ static INLINE int cost_coeffs(VP9_COMMON *const cm, MACROBLOCK *mb,
     cost += nzc_cost[nzc];
 #else
     if (c < seg_eob)
-      cost += mb->token_costs[tx_size][type][ref][get_coef_band(tx_size, c)]
-          [pt][DCT_EOB_TOKEN];
+      cost += mb->token_costs[tx_size][type][ref]
+                             [get_coef_band(scan, tx_size, c)]
+                             [pt][DCT_EOB_TOKEN];
 #endif
   }
 
index c03970d..c770a5c 100644 (file)
@@ -229,7 +229,7 @@ static void tokenize_b(VP9_COMP *cpi,
     seg_eob = 0;
 
   do {
-    const int band = get_coef_band(tx_size, c);
+    const int band = get_coef_band(scan, tx_size, c);
     int token;
     int v = 0;
 #if CONFIG_CODE_NONZEROCOUNT