⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 umc_vc1_common_interlace_mv_tables.cpp

📁 audio-video-codecs.rar语音编解码器
💻 CPP
📖 第 1 页 / 共 5 页
字号:
/* /////////////////////////////////////////////////////////////////////////////
//
//                  INTEL CORPORATION PROPRIETARY INFORMATION
//     This software is supplied under the terms of a license agreement or
//     nondisclosure agreement with Intel Corporation and may not be copied
//     or disclosed except in accordance with the terms of that agreement.
//          Copyright(c) 2004-2007 Intel Corporation. All Rights Reserved.
//
//
//          VC-1 (VC1) decoder, Interlace MV tables
//
*/
#include "umc_defs.h"

#if defined (UMC_ENABLE_VC1_VIDEO_DECODER) || defined (UMC_ENABLE_VC1_SPLITTER) || defined (UMC_ENABLE_VC1_VIDEO_ENCODER)

#include "umc_vc1_common_defs.h"
#include "umc_vc1_common_interlace_mv_tables.h"

//VC-1 Table 133:  2-Field reference interlace MV table 0
// Index    VLC    VLC     Index   VLC     VLC  Index  VLC    VLC
//        Codeword Size          Codeword Size       Codeword Size
//    0      12     4        42    207     10    84    977     11
//    1      28     5        43    1395    12    85    408     11
//    2      11     5        44    9        5    86    489     11
//    3      0      5        45    35       7    87    1309    12
//    4      14     6        46    237      8    88    180     12
//    5      42     7        47    24       7    89    63      8
//    6      80     8        48    6        7    90    1109    12
//    7      872   10        49    68       8    91    555     11
//    8      2      2        50    245      9    92    553     11
//    9      26     5        51    121      9    93    1105    12
//    10     4      5        52    1746    11    94    1400    12
//    11     58     6        53    110      7    95    1970    12
//    12     29     6        54    43       9    96    1392    12
//    13     108    7        55    349     10    97    341     13
//    14     239    8        56    23       9    98    50      8
//    15     444    9        57    895     10    99    976     12
//    16     351   10        58    324     10   100    84      11
//    17     15     4        59    206     10   101    1747    11
//    18     3      5        60    40      10   102    1393    12
//    19     28     6        61    171     12   103    1108    12
//    20     13     6        62    16       6   104    820     12
//    21     11     7        63    437      9   105    7153    13
//    22     62     8        64    247      9   106    183     12
//    23     167    9        65    166      9   107    41      9
//    24     326   10        66    123      9   108    7812    14
//    25     409   11        67    40       9   109    364     13
//    26     6      4        68    493     10   110    411     11
//    27     31     6        69    489     10   111    7152    13
//    28     4      6        70    1789    11   112    1401    12
//    29     60     7        71    4        7   113    3907    13
//    30     7      7        72    245     10   114    181     12
//    31     446    9        73    41      10   115    2209    13
//    32     139    9        74    650     11   116    42      9
//    33     44    10        75    651     11   117    365     13
//    34     1971  12        76    655     11   118    2208    13
//    35     5      5        77    3577    12   119    1952    12
//    36     219    8        78    821     12   120    977     12
//    37     86     8        79    7813    14   121    2789    13
//    38     236    8        80    238      8   122    340     13
//    39     82     8        81    701     11   123    2788    13
//    40     445    9        82    43      10   124    2617    13
//    41     120    9        83    984     11   125    2616    13

//VC1_Field2ReferenceInterlaceMVTable0[]
const extern Ipp32s VC1_InterlacedMVDifTable0[] =
{
    14, /* max bits */
    2,  /* total subtables */
    7, 7,/* subtable sizes */

    0, /* 1-bit codes */
    1, /* 2-bit codes */
        2,0x010009,
    0, /* 3-bit codes */
    3, /* 4-bit codes */
        12,0x000101,      15,0x020012,       6, 0x03001B,
    8, /* 5-bit codes */
        28,0x000202,      11,0x000303,       0, 0x000404,
        26,0x01010A,      4, 0x01020B,       3, 0x020113,
        5, 0x040024,      9, 0x05002D,
    8, /* 6-bit codes */
        14,0x000505,      58,0x01030C,       29,0x01040D,
        28,0x020214,      13,0x020315,       31,0x03011C,
        4, 0x03021D,      16,0x07003F,
    10, /* 7-bit codes */
        42, 0x000606,     108,0x01050E,      11, 0x020416,
        60, 0x03031E,     7,  0x03041F,      35, 0x05012E,
        24, 0x050330,     6,  0x050431,      110,0x060036,
        4,  0x080048,
     12, /* 8-bit codes */
        80, 0x000707,     239,0x01060F,      62, 0x020517,
        219,0x040125,     86, 0x040226,      236,0x040327,
        82, 0x040428,     237,0x05022F,      68, 0x050532,
        238,0x090051,     63, 0x0A005A,      50, 0x0B0063,
    17, /* 9-bit codes */
        444,0x010710,     167,0x020618,      446,0x030520,
        139,0x030621,     445,0x040529,      120,0x04062A,
        245,0x050633,     121,0x050734,      43, 0x060137,
        23, 0x060339,     437,0x070140,      247,0x070241,
        166,0x070342,     123,0x070443,      40, 0x070544,
        41, 0x0C006C,     42, 0x0D0075,
    15, /* 10-bit codes */
        872,0x000808,     351,0x010811,     326,0x020719,
        44, 0x030722,     207,0x04072B,     349,0x060238,
        895,0x06043A,     324,0x06053B,     206,0x06063C,
        40, 0x06073D,     493,0x070645,     489,0x070746,
        245,0x080149,     41, 0x08024A,     43, 0x090253,
    16, /* 11-bit codes */
       409, 0x02081A,     1746,0x050835,     1789,0x070847,
       650, 0x08034B,     651, 0x08044C,     655, 0x08054D,
       701, 0x090152,     984, 0x090354,     977, 0x090455,
       408, 0x090556,     489, 0x090657,     555, 0x0A025C,
       553, 0x0A035D,     84,  0x0B0265,     1747,0x0B0366,
       411, 0x0C036F,
    21, /* 12-bit codes */
       1971,0x030823,     1395,0x04082C,     171, 0x06083E,
       3577,0x08064E,     821, 0x08074F,     1309,0x090758,
       180, 0x090859,     1109,0x0A015B,     1105,0x0A045E,
       1400,0x0A055F,     1970,0x0A0660,     1392,0x0A0761,
       976, 0x0B0164,     1393,0x0B0467,     1108,0x0B0568,
       820, 0x0B0669,     183, 0x0B086B,     1401,0x0C0571,
       181, 0x0C0773,     1952,0x0D0378,     977, 0x0D0479,
    13, /* 13-bit codes */
        341, 0x0A0862,    7153,0x0B076A,     364, 0x0C026E,
        7152,0x0C0470,    3907,0x0C0672,     2209,0x0C0874,
        365, 0x0D0176,    2208,0x0D0277,     2789,0x0D057A,
        340, 0x0D067B,    2788,0x0D077C,     2617,0x0D087D,
        2616,0x0E007E,
    2, /* 14-bit codes */
        7813,0x080850,    7812,0x0C016D,
-1 /* end of table */
};

//VC-1 Table 134:  2-Field reference interlace MV table 1
// Index  VLC      VLC     Index    VLC      VLC    Index    VLC        VLC
//       Codeword  Size            Codeword  Size           Codeword    Size
//    0      3     3        42     7408      13        84      827       10
//    1      9     4        43     2881      13        85      697       10
//    2     22     5        44     50         6        86      1771      11
//    3     16     6        45     230        8        87      1392      11
//    4    215     8        46     224        8        88      3620      12
//    5    821    10        47     207        8        89      925       10
//    6   1396    11        48     171        8        90      1442      12
//    7   1365    11        49     412        9        91      1443      12
//    8      0     2        50     683       10        92      3709      12
//    9     29     5        51     3627      12        93      1518      11
//    10     9     5        52     5593      13        94      1849      11
//    11    23     6        53     111        7        95      1364      11
//    12    44     7        54     451        9        96      2725      12
//    13   173     8        55     175        8        97      2724      12
//    14   884    10        56     191        8        98      887       10
//    15  1715    11        57     172        8        99      7413      13
//    16  1399    11        58     381        9        100     3022      12
//    17    15     4        59     1763      11        101     3705      12
//    18    24     5        60     3625      12        102     1632      11
//    19    10     5        61     6532      13        103     1652      11
//    20    46     6        62     84         7        104     1770      11
//    21    34     7        63     181        9        105     3708      12
//    22   380     9        64     378        9        106     3429      12
//    23  3707    12        65     429        9        107     758       10
//    24  7049    13        66     409        9        108     5594      13
//    25  5592    13        67     376        9        109     7048      13
//    26     8     4        68     856       10        110     1441      12
//    27    52     6        69     722       11        111     7412      13
//    28   109     7        70     7243      13        112     1510      11
//    29    35     7        71     91         8        113     3624      12
//    30   450     9        72     680       10        114     1397      11
//    31   886    10        73     817       10        115     3428      12
//    32   723    11        74     904       10        116     820       10
//    33  7242    13        75     907       10        117     13067     14
//    34 13066    14        76     880       10        118     5595      13
//    35    20     5        77     1811      11        119     2880      13
//    36   106     7        78     3267      12        120     3023      12
//    37   114     7        79     7409      13        121     3525      12
//    38   108     7        80     441        9        122     3626      12
//    39   227     8        81     1519      11        123     1653      11
//    40   411     9        82     1848      11        124     1393      11
//    41  1855    11        83     754       10        125     1363      11

//VC1_Field2ReferenceInterlaceMVTable1[]
const extern Ipp32s VC1_InterlacedMVDifTable1[] =
{
    14, /* max bits */
    2,  /* total subtables */
    7,7,

    0, /* 1-bit codes */
    1, /* 2-bit codes */
        0,   0x010009,
    1, /* 3-bit codes */
        3,   0x000101,
    3, /* 4-bit codes */
        9,   0x000202,      15,  0x020012,       8,   0x03001B,
    6, /* 5-bit codes */
        22,  0x000303,      29,  0x01010A,       9,   0x01020B,
        24,  0x020113,      10,  0x020214,       20,  0x040024,
    5, /* 6-bit codes */
        16,  0x000404,      23,  0x01030C,       46,  0x020315,
        52,  0x03011C,      50,  0x05002D,
    9, /* 7-bit codes */
        44,  0x01040D,      34,  0x020416,       109, 0x03021D,
        35,  0x03031E,      106, 0x040125,       114, 0x040226,
        108, 0x040327,      111, 0x060036,       84,  0x07003F,
    11, /* 8-bit codes */
        215, 0x000505,      173, 0x01050E,       227, 0x040428,
        230, 0x05012E,      224, 0x05022F,       207, 0x050330,
        171, 0x050431,      175, 0x060238,       191, 0x060339,
        172, 0x06043A,      91,  0x080048,
    12, /* 9-bit codes */
        380, 0x020517,      450, 0x03041F,       411, 0x040529,
        412, 0x050532,      451, 0x060137,       381, 0x06053B,
        181, 0x070140,      378, 0x070241,       429, 0x070342,
        409, 0x070443,      376, 0x070544,       441, 0x090051,
    17, /* 10-bit codes */
        821, 0x000606,      884, 0x01060F,       886, 0x030520,
        683, 0x050633,      856, 0x070645,       680, 0x080149,
        817, 0x08024A,      904, 0x08034B,       907, 0x08044C,
        880, 0x08054D,      754, 0x090354,       827, 0x090455,
        697, 0x090556,      925, 0x0A005A,       887, 0x0B0063,
        758, 0x0C006C,      820, 0x0D0075,
    24, /* 11-bit codes */
        1396, 0x000707,     1365, 0x000808,      1715, 0x010710,
        1399, 0x010811,     723,  0x030621,      1855, 0x04062A,
        1763, 0x06063C,     722,  0x070746,      1811, 0x08064E,
        1519, 0x090152,     1848, 0x090253,      1771, 0x090657,
        1392, 0x090758,     1518, 0x0A045E,      1849, 0x0A055F,
        1364, 0x0A0660,     1632, 0x0B0467,      1652, 0x0B0568,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -