Explorar el Código

avcodec/vp8: Export `vp8_token_update_probs` variable

This commit exports the `vp8_token_update_probs` variable to internal
library scope to facilitate its reuse within the library.

Signed-off-by: Jianhui Dai <jianhui.j.dai@intel.com>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Dai, Jianhui J hace 2 años
padre
commit
5cb8accd09
Se han modificado 3 ficheros con 172 adiciones y 171 borrados
  1. 1 1
      libavcodec/vp8.c
  2. 170 0
      libavcodec/vp8data.c
  3. 1 170
      libavcodec/vp8data.h

+ 1 - 1
libavcodec/vp8.c

@@ -458,7 +458,7 @@ static void vp78_update_probability_tables(VP8Context *s)
         for (j = 0; j < 8; j++)
             for (k = 0; k < 3; k++)
                 for (l = 0; l < NUM_DCT_TOKENS-1; l++)
-                    if (vpx_rac_get_prob_branchy(c, vp8_token_update_probs[i][j][k][l])) {
+                    if (vpx_rac_get_prob_branchy(c, ff_vp8_token_update_probs[i][j][k][l])) {
                         int prob = vp89_rac_get_uint(c, 8);
                         for (m = 0; vp8_coeff_band_indexes[j][m] >= 0; m++)
                             s->prob->token[i][vp8_coeff_band_indexes[j][m]][k][l] = prob;

+ 170 - 0
libavcodec/vp8data.c

@@ -40,3 +40,173 @@ const uint8_t *const ff_vp8_dct_cat_prob[] = {
     vp8_dct_cat6_prob,
 };
 
+const uint8_t ff_vp8_token_update_probs[4][8][3][11] = {
+    {
+        {
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 176, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 223, 241, 252, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 249, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 244, 252, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 234, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 246, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 239, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 254, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 248, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 251, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 251, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 254, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 254, 253, 255, 254, 255, 255, 255, 255, 255, 255 },
+            { 250, 255, 254, 255, 254, 255, 255, 255, 255, 255, 255 },
+            { 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+    },
+    {
+        {
+            { 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 225, 252, 241, 253, 255, 255, 254, 255, 255, 255, 255 },
+            { 234, 250, 241, 250, 253, 255, 253, 254, 255, 255, 255 },
+        },
+        {
+            { 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 223, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 238, 253, 254, 254, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 248, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 249, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 247, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 254, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+    },
+    {
+        {
+            { 186, 251, 250, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 234, 251, 244, 254, 255, 255, 255, 255, 255, 255, 255 },
+            { 251, 251, 243, 253, 254, 255, 254, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 236, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 251, 253, 253, 254, 254, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+    },
+    {
+        {
+            { 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 250, 254, 252, 254, 255, 255, 255, 255, 255, 255, 255 },
+            { 248, 254, 249, 253, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 246, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 252, 254, 251, 254, 254, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 254, 252, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 248, 254, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 253, 255, 254, 254, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 251, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 245, 251, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 253, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 251, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 252, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 249, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+        {
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
+        },
+    },
+};

+ 1 - 170
libavcodec/vp8data.h

@@ -513,176 +513,7 @@ static const uint8_t vp8_token_default_probs[4][8][3][NUM_DCT_TOKENS - 1] = {
     },
 };
 
-static const uint8_t vp8_token_update_probs[4][8][3][NUM_DCT_TOKENS - 1] = {
-    {
-        {
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 176, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 223, 241, 252, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 249, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 244, 252, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 234, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 246, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 239, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 254, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 248, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 251, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 251, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 254, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 254, 253, 255, 254, 255, 255, 255, 255, 255, 255 },
-            { 250, 255, 254, 255, 254, 255, 255, 255, 255, 255, 255 },
-            { 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-    },
-    {
-        {
-            { 217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 225, 252, 241, 253, 255, 255, 254, 255, 255, 255, 255 },
-            { 234, 250, 241, 250, 253, 255, 253, 254, 255, 255, 255 },
-        },
-        {
-            { 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 223, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 238, 253, 254, 254, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 248, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 249, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 247, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 254, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-    },
-    {
-        {
-            { 186, 251, 250, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 234, 251, 244, 254, 255, 255, 255, 255, 255, 255, 255 },
-            { 251, 251, 243, 253, 254, 255, 254, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 236, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 251, 253, 253, 254, 254, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-    },
-    {
-        {
-            { 248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 250, 254, 252, 254, 255, 255, 255, 255, 255, 255, 255 },
-            { 248, 254, 249, 253, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 246, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 252, 254, 251, 254, 254, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 254, 252, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 248, 254, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 253, 255, 254, 254, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 251, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 245, 251, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 253, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 251, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 252, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 249, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-        {
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-            { 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
-        },
-    },
-};
+extern const uint8_t ff_vp8_token_update_probs[4][8][3][11];
 
 static const uint8_t vp8_dc_qlookup[VP8_MAX_QUANT + 1] = {
       4,   5,   6,   7,   8,   9,  10,  10,  11,  12,  13,  14,  15,  16,  17,  17,