]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/atrac9tab.h
avcodec/mss4: Don't duplicate standard JPEG tables
[ffmpeg] / libavcodec / atrac9tab.h
index d25c6f1b7fae3b7e08f9317f9498da34049a9eb1..4e0c3ee1ccdcf9a91b66ed4414f9157bed69c99a 100644 (file)
@@ -41,61 +41,48 @@ typedef struct ATRAC9BlockConfig {
 
 static const ATRAC9BlockConfig at9_block_layout[] = {
     { /* Mono */
-        AV_CH_LAYOUT_MONO,
-        {
-            ATRAC9_BLOCK_TYPE_SCE,
-        },
-        { { 0 }, },
-        1,
+        .channel_layout  = AV_CH_LAYOUT_MONO,
+        .type            = { ATRAC9_BLOCK_TYPE_SCE, },
+        .count           = 1,
     },
     { /* Dual Mono */
-        AV_CH_LAYOUT_STEREO,
-        {
-            ATRAC9_BLOCK_TYPE_SCE,
-            ATRAC9_BLOCK_TYPE_SCE,
-        },
-        { { 0 }, { 1 }, },
-        2,
+        .channel_layout  = AV_CH_LAYOUT_STEREO,
+        .type            = { ATRAC9_BLOCK_TYPE_SCE,
+                             ATRAC9_BLOCK_TYPE_SCE, },
+        .plane_map       = { { 0 }, { 1 }, },
+        .count           = 2,
     },
     { /* Stereo */
-        AV_CH_LAYOUT_STEREO,
-        {
-            ATRAC9_BLOCK_TYPE_CPE,
-        },
-        { { 0, 1 }, },
-        1,
+        .channel_layout  = AV_CH_LAYOUT_STEREO,
+        .type            = { ATRAC9_BLOCK_TYPE_CPE, },
+        .plane_map       = { { 0, 1 }, },
+        .count           = 1,
     },
     { /* 5.1 */
-        AV_CH_LAYOUT_5POINT1,
-        {
-            ATRAC9_BLOCK_TYPE_CPE,
-            ATRAC9_BLOCK_TYPE_SCE,
-            ATRAC9_BLOCK_TYPE_LFE,
-            ATRAC9_BLOCK_TYPE_CPE,
-        },
-        { { 0, 1 }, { 2 }, { 3 }, { 4, 5 }, },
-        4,
+        .channel_layout  = AV_CH_LAYOUT_5POINT1,
+        .type            = { ATRAC9_BLOCK_TYPE_CPE,
+                             ATRAC9_BLOCK_TYPE_SCE,
+                             ATRAC9_BLOCK_TYPE_LFE,
+                             ATRAC9_BLOCK_TYPE_CPE, },
+        .plane_map       = { { 0, 1 }, { 2 }, { 3 }, { 4, 5 }, },
+        .count           = 4,
     },
-    { /* 5.1 */
-        AV_CH_LAYOUT_7POINT1,
-        {
-            ATRAC9_BLOCK_TYPE_CPE,
-            ATRAC9_BLOCK_TYPE_SCE,
-            ATRAC9_BLOCK_TYPE_LFE,
-            ATRAC9_BLOCK_TYPE_CPE,
-            ATRAC9_BLOCK_TYPE_CPE,
-        },
-        { { 0, 1 }, { 2 }, { 3 }, { 4, 5 }, { 6, 7 }, },
-        5,
+    { /* 7.1 */
+        .channel_layout  = AV_CH_LAYOUT_7POINT1,
+        .type            = { ATRAC9_BLOCK_TYPE_CPE,
+                             ATRAC9_BLOCK_TYPE_SCE,
+                             ATRAC9_BLOCK_TYPE_LFE,
+                             ATRAC9_BLOCK_TYPE_CPE,
+                             ATRAC9_BLOCK_TYPE_CPE, },
+        .plane_map       = { { 0, 1 }, { 2 }, { 3 }, { 4, 5 }, { 6, 7 }, },
+        .count           = 5,
     },
     { /* Quad */
-        AV_CH_LAYOUT_QUAD,
-        {
-            ATRAC9_BLOCK_TYPE_CPE,
-            ATRAC9_BLOCK_TYPE_CPE,
-        },
-        { { 0, 1 }, { 2, 3 }, },
-        2,
+        .channel_layout  = AV_CH_LAYOUT_QUAD,
+        .type            = { ATRAC9_BLOCK_TYPE_CPE,
+                             ATRAC9_BLOCK_TYPE_CPE, },
+        .plane_map       = { { 0, 1 }, { 2, 3 }, },
+        .count           = 2,
     },
 };
 
@@ -117,7 +104,7 @@ static const int at9_q_unit_to_coeff_idx[] = {
     72, 80, 88, 96, 112, 128, 144, 160, 176, 192, 208, 224, 240, 256
 };
 
-const uint8_t at9_q_unit_to_codebookidx[] = {
+static const uint8_t at9_q_unit_to_codebookidx[] = {
     0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2,
     2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
 };
@@ -489,26 +476,25 @@ typedef struct HuffmanCodebook {
     const int value_cnt;
     const int value_cnt_pow;
     const int value_bits;
-    const int max_bit_size;
 } HuffmanCodebook;
 
 static const HuffmanCodebook at9_huffman_sf_unsigned[] = {
     { 0 },
-    { huff_sfb_a1_bits, huff_sfb_a1_codes,  2,  1,  0,  1,  1, },
-    { huff_sfb_a2_bits, huff_sfb_a2_codes,  4,  1,  0,  2,  3, },
-    { huff_sfb_a3_bits, huff_sfb_a3_codes,  8,  1,  0,  3,  6, },
-    { huff_sfb_a4_bits, huff_sfb_a4_codes, 16,  1,  0,  4,  8, },
-    { huff_sfb_a5_bits, huff_sfb_a5_codes, 32,  1,  0,  5,  8, },
-    { huff_sfb_a6_bits, huff_sfb_a6_codes, 64,  1,  0,  6,  8, },
+    { huff_sfb_a1_bits, huff_sfb_a1_codes,  2,  1,  0,  1 },
+    { huff_sfb_a2_bits, huff_sfb_a2_codes,  4,  1,  0,  2 },
+    { huff_sfb_a3_bits, huff_sfb_a3_codes,  8,  1,  0,  3 },
+    { huff_sfb_a4_bits, huff_sfb_a4_codes, 16,  1,  0,  4 },
+    { huff_sfb_a5_bits, huff_sfb_a5_codes, 32,  1,  0,  5 },
+    { huff_sfb_a6_bits, huff_sfb_a6_codes, 64,  1,  0,  6 },
 };
 
 static const HuffmanCodebook at9_huffman_sf_signed[] = {
     { 0 },
     { 0 },
-    { huff_sfb_b2_bits, huff_sfb_b2_codes,  4,  1,  0,  2,  2, },
-    { huff_sfb_b3_bits, huff_sfb_b3_codes,  8,  1,  0,  3,  6, },
-    { huff_sfb_b4_bits, huff_sfb_b4_codes, 16,  1,  0,  4,  8, },
-    { huff_sfb_b5_bits, huff_sfb_b5_codes, 32,  1,  0,  5,  8, },
+    { huff_sfb_b2_bits, huff_sfb_b2_codes,  4,  1,  0,  2 },
+    { huff_sfb_b3_bits, huff_sfb_b3_codes,  8,  1,  0,  3 },
+    { huff_sfb_b4_bits, huff_sfb_b4_codes, 16,  1,  0,  4 },
+    { huff_sfb_b5_bits, huff_sfb_b5_codes, 32,  1,  0,  5 },
 };
 
 static const uint8_t huff_spec_a21_bits[] = {
@@ -1552,40 +1538,40 @@ static const HuffmanCodebook at9_huffman_coeffs[][8][4] = {
         { { 0 } },
         { { 0 } },
         {
-            { huff_spec_a21_bits, huff_spec_a21_codes,  16,   2,   1,   2,   3, },
-            { huff_spec_a22_bits, huff_spec_a22_codes, 256,   4,   2,   2,   8, },
-            { huff_spec_a23_bits, huff_spec_a23_codes, 256,   4,   2,   2,   9, },
-            { huff_spec_a24_bits, huff_spec_a24_codes, 256,   4,   2,   2,  10, },
+            { huff_spec_a21_bits, huff_spec_a21_codes,  16,   2,   1,   2 },
+            { huff_spec_a22_bits, huff_spec_a22_codes, 256,   4,   2,   2 },
+            { huff_spec_a23_bits, huff_spec_a23_codes, 256,   4,   2,   2 },
+            { huff_spec_a24_bits, huff_spec_a24_codes, 256,   4,   2,   2 },
         },
         {
-            { huff_spec_a31_bits, huff_spec_a31_codes,  64,   2,   1,   3,   7, },
-            { huff_spec_a32_bits, huff_spec_a32_codes,  64,   2,   1,   3,   7, },
-            { huff_spec_a33_bits, huff_spec_a33_codes,  64,   2,   1,   3,   8, },
-            { huff_spec_a34_bits, huff_spec_a34_codes,  64,   2,   1,   3,  10, },
+            { huff_spec_a31_bits, huff_spec_a31_codes,  64,   2,   1,   3 },
+            { huff_spec_a32_bits, huff_spec_a32_codes,  64,   2,   1,   3 },
+            { huff_spec_a33_bits, huff_spec_a33_codes,  64,   2,   1,   3 },
+            { huff_spec_a34_bits, huff_spec_a34_codes,  64,   2,   1,   3 },
         },
         {
-            { huff_spec_a41_bits, huff_spec_a41_codes, 256,   2,   1,   4,   9, },
-            { huff_spec_a42_bits, huff_spec_a42_codes, 256,   2,   1,   4,  10, },
-            { huff_spec_a43_bits, huff_spec_a43_codes, 256,   2,   1,   4,  10, },
-            { huff_spec_a44_bits, huff_spec_a44_codes, 256,   2,   1,   4,  10, },
+            { huff_spec_a41_bits, huff_spec_a41_codes, 256,   2,   1,   4 },
+            { huff_spec_a42_bits, huff_spec_a42_codes, 256,   2,   1,   4 },
+            { huff_spec_a43_bits, huff_spec_a43_codes, 256,   2,   1,   4 },
+            { huff_spec_a44_bits, huff_spec_a44_codes, 256,   2,   1,   4 },
         },
         {
-            { huff_spec_a51_bits, huff_spec_a51_codes,  32,   1,   0,   5,   6, },
-            { huff_spec_a52_bits, huff_spec_a52_codes,  32,   1,   0,   5,   6, },
-            { huff_spec_a53_bits, huff_spec_a53_codes,  32,   1,   0,   5,   7, },
-            { huff_spec_a54_bits, huff_spec_a54_codes,  32,   1,   0,   5,   8, },
+            { huff_spec_a51_bits, huff_spec_a51_codes,  32,   1,   0,   5 },
+            { huff_spec_a52_bits, huff_spec_a52_codes,  32,   1,   0,   5 },
+            { huff_spec_a53_bits, huff_spec_a53_codes,  32,   1,   0,   5 },
+            { huff_spec_a54_bits, huff_spec_a54_codes,  32,   1,   0,   5 },
         },
         {
-            { huff_spec_a61_bits, huff_spec_a61_codes,  64,   1,   0,   6,   7, },
-            { huff_spec_a62_bits, huff_spec_a62_codes,  64,   1,   0,   6,   7, },
-            { huff_spec_a63_bits, huff_spec_a63_codes,  64,   1,   0,   6,   8, },
-            { huff_spec_a64_bits, huff_spec_a64_codes,  64,   1,   0,   6,   9, },
+            { huff_spec_a61_bits, huff_spec_a61_codes,  64,   1,   0,   6 },
+            { huff_spec_a62_bits, huff_spec_a62_codes,  64,   1,   0,   6 },
+            { huff_spec_a63_bits, huff_spec_a63_codes,  64,   1,   0,   6 },
+            { huff_spec_a64_bits, huff_spec_a64_codes,  64,   1,   0,   6 },
         },
         {
-            { huff_spec_a71_bits, huff_spec_a71_codes, 128,   1,   0,   7,   8, },
-            { huff_spec_a72_bits, huff_spec_a72_codes, 128,   1,   0,   7,   8, },
-            { huff_spec_a73_bits, huff_spec_a73_codes, 128,   1,   0,   7,   9, },
-            { huff_spec_a74_bits, huff_spec_a74_codes, 128,   1,   0,   7,  10, },
+            { huff_spec_a71_bits, huff_spec_a71_codes, 128,   1,   0,   7 },
+            { huff_spec_a72_bits, huff_spec_a72_codes, 128,   1,   0,   7 },
+            { huff_spec_a73_bits, huff_spec_a73_codes, 128,   1,   0,   7 },
+            { huff_spec_a74_bits, huff_spec_a74_codes, 128,   1,   0,   7 },
         },
     },
     {
@@ -1593,39 +1579,39 @@ static const HuffmanCodebook at9_huffman_coeffs[][8][4] = {
         { { 0 } },
         {
             { 0 },
-            { huff_spec_b22_bits, huff_spec_b22_codes,  256,  4,   2,   2,  10, },
-            { huff_spec_b23_bits, huff_spec_b23_codes,  256,  4,   2,   2,  10, },
-            { huff_spec_b24_bits, huff_spec_b24_codes,  256,  4,   2,   2,  10, },
+            { huff_spec_b22_bits, huff_spec_b22_codes,  256,  4,   2,   2 },
+            { huff_spec_b23_bits, huff_spec_b23_codes,  256,  4,   2,   2 },
+            { huff_spec_b24_bits, huff_spec_b24_codes,  256,  4,   2,   2 },
         },
         {
             { 0 },
-            { huff_spec_b32_bits, huff_spec_b32_codes,  64,   2,   1,   3,   9, },
-            { huff_spec_b33_bits, huff_spec_b33_codes,  64,   2,   1,   3,  10, },
-            { huff_spec_b34_bits, huff_spec_b34_codes,  64,   2,   1,   3,  10, },
+            { huff_spec_b32_bits, huff_spec_b32_codes,  64,   2,   1,   3 },
+            { huff_spec_b33_bits, huff_spec_b33_codes,  64,   2,   1,   3 },
+            { huff_spec_b34_bits, huff_spec_b34_codes,  64,   2,   1,   3 },
         },
         {
             { 0 },
-            { huff_spec_b42_bits, huff_spec_b42_codes, 256,   2,   1,   4,  10, },
-            { huff_spec_b43_bits, huff_spec_b43_codes, 256,   2,   1,   4,  10, },
-            { huff_spec_b44_bits, huff_spec_b44_codes, 256,   2,   1,   4,  10, },
+            { huff_spec_b42_bits, huff_spec_b42_codes, 256,   2,   1,   4 },
+            { huff_spec_b43_bits, huff_spec_b43_codes, 256,   2,   1,   4 },
+            { huff_spec_b44_bits, huff_spec_b44_codes, 256,   2,   1,   4 },
         },
         {
             { 0 },
-            { huff_spec_b52_bits, huff_spec_b52_codes,  32,   1,   0,   5,   7, },
-            { huff_spec_b53_bits, huff_spec_b53_codes,  32,   1,   0,   5,   8, },
-            { huff_spec_b54_bits, huff_spec_b54_codes,  32,   1,   0,   5,   9, },
+            { huff_spec_b52_bits, huff_spec_b52_codes,  32,   1,   0,   5 },
+            { huff_spec_b53_bits, huff_spec_b53_codes,  32,   1,   0,   5 },
+            { huff_spec_b54_bits, huff_spec_b54_codes,  32,   1,   0,   5 },
         },
         {
             { 0 },
-            { huff_spec_b62_bits, huff_spec_b62_codes,  64,   1,   0,   6,   8, },
-            { huff_spec_b63_bits, huff_spec_b63_codes,  64,   1,   0,   6,   9, },
-            { huff_spec_b64_bits, huff_spec_b64_codes,  64,   1,   0,   6,  10, },
+            { huff_spec_b62_bits, huff_spec_b62_codes,  64,   1,   0,   6 },
+            { huff_spec_b63_bits, huff_spec_b63_codes,  64,   1,   0,   6 },
+            { huff_spec_b64_bits, huff_spec_b64_codes,  64,   1,   0,   6 },
         },
         {
             { 0 },
-            { huff_spec_b72_bits, huff_spec_b72_codes, 128,   1,   0,   7,   9, },
-            { huff_spec_b73_bits, huff_spec_b73_codes, 128,   1,   0,   7,  10, },
-            { huff_spec_b74_bits, huff_spec_b74_codes, 128,   1,   0,   7,  10, },
+            { huff_spec_b72_bits, huff_spec_b72_codes, 128,   1,   0,   7 },
+            { huff_spec_b73_bits, huff_spec_b73_codes, 128,   1,   0,   7 },
+            { huff_spec_b74_bits, huff_spec_b74_codes, 128,   1,   0,   7 },
         },
     },
 };