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

📄 umc_vc1_common_interlace_mb_mode_tables.cpp

📁 audio-video-codecs.rar语音编解码器
💻 CPP
📖 第 1 页 / 共 3 页
字号:
    2, /* 12bit codes */
        1599, 54,      1598, 59,

    -1 /* end of table */
};

//Table 165: Interlace Frame Non 4-MV MB Mode Table 0
//MB Type   MV Present   Field/Frame Transform VLC Codeword   VLC Size Index
// 1-MV         1           Frame                  9            4       60
// 1-MV         1           Field                  22           5       61
// 1-MV         1           No CBP                 0            2       62
// 1-MV         0           Frame                  17           5       63
// 1-MV         0           Field                  16           5       64
// 2-MV(F)      N/A         Frame                  10           4       65
// 2-MV(F)      N/A         Field                  1            2       66
// 2-MV(F)      N/A         No CBP                 3            2       67
// INTRA        N/A         N/A                    23           5       68
const extern Ipp32s VC1_Non4MV_MB_Mode_PBPic_Table0[] =
{
    5, /* max bits */
    1,  /* total subtables */
    5,/* subtable sizes */

    0, /* 1-bit codes */
    3, /* 2-bit codes */
        0, 62,     1, 66,     3, 67,
    0, /* 3-bit codes */
    2, /* 4-bit codes */
        9, 60,    10, 65,
    4, /* 5-bit codes */
        22, 61,   17, 63,     16, 64,     23, 68,

    -1 /* end of table */
};


//Table 166: Interlace Frame Non 4-MV MB Mode Table 1
//MB Type   MV Present   Field/Frame Transform  VLC Codeword  VLC Size Index
// 1-MV         1           Frame                   7           3       69
// 1-MV         1           Field                   0           4       70
// 1-MV         1           No CBP                  5           6       71
// 1-MV         0           Frame                   2           2       72
// 1-MV         0           Field                   1           3       73
// 2-MV(F)      N/A         Frame                   1           2       74
// 2-MV(F)      N/A         Field                   6           3       75
// 2-MV(F)      N/A         No CBP                  3           5       76
// INTRA        N/A         N/A                     4           6       77
const extern Ipp32s VC1_Non4MV_MB_Mode_PBPic_Table1[] =
{
    6, /* max bits */
    1,  /* total subtables */
    6,/* subtable sizes */

    0, /* 1-bit codes */
    2, /* 2-bit codes */
        2, 72,     1, 74,

    3, /* 3-bit codes */
        7, 69,     1, 73,     6, 75,
    1, /* 4-bit codes */
        0,  70,
    1, /* 5-bit codes */
        3, 76,
    2, /* 6-bit codes */
        5, 71,     4, 77,

    -1 /* end of table */
};


//Table 167: Interlace Frame Non 4-MV MB Mode Table 2
//MB Type   MV Present   Field/Frame Transform VLC Codeword VLC Size Index
// 1-MV         1           Frame                   1           2      78
// 1-MV         1           Field                   0           2      79
// 1-MV         1           No CBP                  10          4      80
// 1-MV         0           Frame                   23          5      81
// 1-MV         0           Field                   44          6      82
// 2-MV(F)      N/A         Frame                   8           4      83
// 2-MV(F)      N/A         Field                   3           2      84
// 2-MV(F)      N/A         No CBP                  9           4      85
// INTRA        N/A         N/A                     45          6      86
const extern Ipp32s VC1_Non4MV_MB_Mode_PBPic_Table2[] =
{
    6, /* max bits */
    1,  /* total subtables */
    6,/* subtable sizes */

    0, /* 1-bit codes */
    3, /* 2-bit codes */
        1, 78,       0, 79,       3, 84,
    0, /* 3-bit codes */
    3, /* 4-bit codes */
        10, 80,      8, 83,       9, 85,
    1, /* 5-bit codes */
        23, 81,

    2, /* 6-bit codes */
        44, 82,      45, 86,

    -1 /* end of table */
};

//Table 168: Interlace Frame Non 4-MV MB Mode Table 3
//MB Type   MV Present   Field/Frame Transform  VLC Codeword VLC Size Index
// 1-MV         1               Frame               7            4     87
// 1-MV         1               Field               97           8     88
// 1-MV         1               No CBP              1            1     89
// 1-MV         0               Frame               2            3     90
// 1-MV         0               Field               49           7     91
// 2-MV(F)      N/A             Frame               13           5     92
// 2-MV(F)      N/A             Field               25           6     93
// 2-MV(F)      N/A             No CBP              0            2     94
// INTRA        N/A             N/A                 96           8     95
const extern Ipp32s VC1_Non4MV_MB_Mode_PBPic_Table3[] =
{
    8, /* max bits */
    1,  /* total subtables */
    8,/* subtable sizes */

    1, /* 1-bit codes */
        1, 89,
    1, /* 2-bit codes */
        0, 94,
    1, /* 3-bit codes */
        2, 90,
    1, /* 4-bit codes */
        7, 87,
    1, /* 5-bit codes */
        13, 92,
    1, /* 6-bit codes */
        25, 93,
    1, /* 7-bit codes */
        49,  91,
    2, /* 8-bit codes */
        97, 88,     96, 95,

    -1 /* end of table */
};

const extern Ipp8u VC1_MB_Mode_PBPic_Transform_Table[] =
{
    // 0..9
    VC1_FRAME_TRANSFORM,    VC1_FIELD_TRANSFORM,
    VC1_NO_CBP_TRANSFORM,   VC1_FRAME_TRANSFORM,
    VC1_FIELD_TRANSFORM,    VC1_FRAME_TRANSFORM,
    VC1_FIELD_TRANSFORM,    VC1_NO_CBP_TRANSFORM,
    VC1_FRAME_TRANSFORM,    VC1_FIELD_TRANSFORM,
    // 10..19
    VC1_NO_CBP_TRANSFORM,   VC1_FRAME_TRANSFORM,
    VC1_FIELD_TRANSFORM,    VC1_NO_CBP_TRANSFORM,
    VC1_NA_TRANSFORM,       VC1_FRAME_TRANSFORM,
    VC1_FIELD_TRANSFORM,    VC1_NO_CBP_TRANSFORM,
    VC1_FRAME_TRANSFORM,    VC1_FIELD_TRANSFORM,
    // 20.. 29
    VC1_FRAME_TRANSFORM,    VC1_FIELD_TRANSFORM,
    VC1_NO_CBP_TRANSFORM,   VC1_FRAME_TRANSFORM,
    VC1_FIELD_TRANSFORM,    VC1_NO_CBP_TRANSFORM,
    VC1_FRAME_TRANSFORM,    VC1_FIELD_TRANSFORM,
    VC1_NO_CBP_TRANSFORM,   VC1_NA_TRANSFORM,
    //30..39
    VC1_FRAME_TRANSFORM,    VC1_FIELD_TRANSFORM,
    VC1_NO_CBP_TRANSFORM,   VC1_FRAME_TRANSFORM,
    VC1_FIELD_TRANSFORM,    VC1_FRAME_TRANSFORM,
    VC1_FIELD_TRANSFORM,    VC1_NO_CBP_TRANSFORM,
    VC1_FRAME_TRANSFORM,    VC1_FIELD_TRANSFORM,
    //40..49
    VC1_NO_CBP_TRANSFORM,   VC1_FRAME_TRANSFORM,
    VC1_FIELD_TRANSFORM,    VC1_NO_CBP_TRANSFORM,
    VC1_NA_TRANSFORM,       VC1_FRAME_TRANSFORM,
    VC1_FIELD_TRANSFORM,    VC1_NO_CBP_TRANSFORM,
    VC1_FRAME_TRANSFORM,    VC1_FIELD_TRANSFORM,
    //50..59
    VC1_FRAME_TRANSFORM,    VC1_FIELD_TRANSFORM,
    VC1_NO_CBP_TRANSFORM,   VC1_FRAME_TRANSFORM,
    VC1_FIELD_TRANSFORM,    VC1_NO_CBP_TRANSFORM,
    VC1_FRAME_TRANSFORM,    VC1_FIELD_TRANSFORM,
    VC1_NO_CBP_TRANSFORM,   VC1_NA_TRANSFORM,
    //60..69
    VC1_FRAME_TRANSFORM,    VC1_FIELD_TRANSFORM,
    VC1_NO_CBP_TRANSFORM,   VC1_FRAME_TRANSFORM,
    VC1_FIELD_TRANSFORM,    VC1_FRAME_TRANSFORM,
    VC1_FIELD_TRANSFORM,    VC1_NO_CBP_TRANSFORM,
    VC1_NA_TRANSFORM,       VC1_FRAME_TRANSFORM,
    //70..79
    VC1_FIELD_TRANSFORM,    VC1_NO_CBP_TRANSFORM,
    VC1_FRAME_TRANSFORM,    VC1_FIELD_TRANSFORM,
    VC1_FRAME_TRANSFORM,    VC1_FIELD_TRANSFORM,
    VC1_NO_CBP_TRANSFORM,   VC1_NA_TRANSFORM,
    VC1_FRAME_TRANSFORM,    VC1_FIELD_TRANSFORM,
    //80..89
    VC1_NO_CBP_TRANSFORM,   VC1_FRAME_TRANSFORM,
    VC1_FIELD_TRANSFORM,    VC1_FRAME_TRANSFORM,
    VC1_FIELD_TRANSFORM,    VC1_NO_CBP_TRANSFORM,
    VC1_NA_TRANSFORM,       VC1_FRAME_TRANSFORM,
    VC1_FIELD_TRANSFORM,    VC1_NO_CBP_TRANSFORM,
    //90..95
    VC1_FRAME_TRANSFORM,    VC1_FIELD_TRANSFORM,
    VC1_FRAME_TRANSFORM,    VC1_FIELD_TRANSFORM,
    VC1_NO_CBP_TRANSFORM,   VC1_NA_TRANSFORM
};

const extern Ipp8u VC1_MB_Mode_PBPic_MBtype_Table[] =
{
    // 0..9
    VC1_MB_1MV_INTER,                   VC1_MB_1MV_INTER,
    VC1_MB_1MV_INTER,                   VC1_MB_1MV_INTER,
    VC1_MB_1MV_INTER,                   VC1_MB_2MV_INTER,
    VC1_MB_2MV_INTER,                   VC1_MB_2MV_INTER,
    VC1_MB_4MV_INTER,                   VC1_MB_4MV_INTER,
    //10..19
    VC1_MB_4MV_INTER,                   VC1_MB_4MV_FIELD_INTER,
    VC1_MB_4MV_FIELD_INTER,             VC1_MB_4MV_FIELD_INTER,
    VC1_MB_INTRA,                       VC1_MB_1MV_INTER,
    VC1_MB_1MV_INTER,                   VC1_MB_1MV_INTER,
    VC1_MB_1MV_INTER,                   VC1_MB_1MV_INTER,
    //20..29
    VC1_MB_2MV_INTER,                   VC1_MB_2MV_INTER,
    VC1_MB_2MV_INTER,                   VC1_MB_4MV_INTER,
    VC1_MB_4MV_INTER,                   VC1_MB_4MV_INTER,
    VC1_MB_4MV_FIELD_INTER,             VC1_MB_4MV_FIELD_INTER,
    VC1_MB_4MV_FIELD_INTER,             VC1_MB_INTRA,
    //30..39
    VC1_MB_1MV_INTER,                   VC1_MB_1MV_INTER,
    VC1_MB_1MV_INTER,                   VC1_MB_1MV_INTER,
    VC1_MB_1MV_INTER,                   VC1_MB_2MV_INTER,
    VC1_MB_2MV_INTER,                   VC1_MB_2MV_INTER,
    VC1_MB_4MV_INTER,                   VC1_MB_4MV_INTER,
    //40..49
    VC1_MB_4MV_INTER,                   VC1_MB_4MV_FIELD_INTER,
    VC1_MB_4MV_FIELD_INTER,             VC1_MB_4MV_FIELD_INTER,
    VC1_MB_INTRA,                       VC1_MB_1MV_INTER,
    VC1_MB_1MV_INTER,                   VC1_MB_1MV_INTER,
    VC1_MB_1MV_INTER,                   VC1_MB_1MV_INTER,
    //50..59
    VC1_MB_2MV_INTER,                   VC1_MB_2MV_INTER,
    VC1_MB_2MV_INTER,                   VC1_MB_4MV_INTER,
    VC1_MB_4MV_INTER,                   VC1_MB_4MV_INTER,
    VC1_MB_4MV_FIELD_INTER,             VC1_MB_4MV_FIELD_INTER,
    VC1_MB_4MV_FIELD_INTER,             VC1_MB_INTRA,
    //60..69
    VC1_MB_1MV_INTER,                   VC1_MB_1MV_INTER,
    VC1_MB_1MV_INTER,                   VC1_MB_1MV_INTER,
    VC1_MB_1MV_INTER,                   VC1_MB_2MV_INTER,
    VC1_MB_2MV_INTER,                   VC1_MB_2MV_INTER,
    VC1_MB_INTRA,                       VC1_MB_1MV_INTER,
    //70..79
    VC1_MB_1MV_INTER,                   VC1_MB_1MV_INTER,
    VC1_MB_1MV_INTER,                   VC1_MB_1MV_INTER,
    VC1_MB_2MV_INTER,                   VC1_MB_2MV_INTER,
    VC1_MB_2MV_INTER,                   VC1_MB_INTRA,
    VC1_MB_1MV_INTER,                   VC1_MB_1MV_INTER,
    //80..89
    VC1_MB_1MV_INTER,                   VC1_MB_1MV_INTER,
    VC1_MB_1MV_INTER,                   VC1_MB_2MV_INTER,
    VC1_MB_2MV_INTER,                   VC1_MB_2MV_INTER,
    VC1_MB_INTRA,                       VC1_MB_1MV_INTER,
    VC1_MB_1MV_INTER,                   VC1_MB_1MV_INTER,
    //90..96
    VC1_MB_1MV_INTER,                   VC1_MB_1MV_INTER,
    VC1_MB_2MV_INTER,                   VC1_MB_2MV_INTER,
    VC1_MB_2MV_INTER,                   VC1_MB_INTRA
};

const extern Ipp8s VC1_MB_Mode_PBPic_MVPresent_Table[] =
{
    // 0..9
    1, 1, 1, 0, 0, -1, -1, -1, -1, -1,
    //10..19
    -1, -1, -1, -1, -1, 1, 1, 1, 0, 0,
    //20..29
    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
    //30..39
    1, 1, 1, 0, 0, -1, -1, -1, -1, -1,
    //40..49
    -1, -1, -1, -1, -1, 1, 1, 1, 0, 0,
    //50..59
    -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
    //60..69
    1, 1, 1, 0, 0, -1, -1, -1, -1, 1,
    //70..79
    1, 1, 0, 0, -1, -1, -1, -1, 1, 1,
    //80..89
    1, 0, 0, -1, -1, -1, -1, 1, 1, 1,
    //90..95
    0, 0, -1, -1, -1, -1

};


const extern Ipp8u VC1_MB_Mode_PBPic_FIELDTX_Table[] =
{
    // 0..9
    0, 1, 0, 0, 1, 0, 1, 1, 0, 1,
    //10..19
    0, 0, 1, 1, 0, 0, 1, 0, 0, 1,
    //20..29
    0, 1, 1, 0, 1, 0, 0, 1, 1, 0,
    //30..39
    0, 1, 0, 0, 1, 0, 1, 1, 0, 1,
    //40..49
    0, 0, 1, 1, 0, 0, 1, 0, 0, 1,
    //50..59
    0, 1, 1, 0, 1, 0, 0, 1, 1, 0,
    //60..69
    0, 1, 0, 0, 1, 0, 1, 1, 0, 0,
    //7..79
    1, 0, 0, 1, 0, 1, 1, 0, 0, 1,
    //80..89
    0, 0, 1, 0, 1, 1, 0, 0, 1, 0,
    //90..95
    0, 1, 0, 1, 1, 0
};

//table 111, 112
const extern Ipp8u VC1_MB_Mode_PBFieldPic_MBtype_Table[] =
{
    VC1_MB_INTRA,
    VC1_MB_INTRA,
    VC1_MB_1MV_INTER,
    VC1_MB_1MV_INTER,
    VC1_MB_1MV_INTER,
    VC1_MB_1MV_INTER,
    VC1_MB_4MV_INTER,
    VC1_MB_4MV_INTER
};

const extern Ipp8u VC1_MB_Mode_PBFieldPic_CBPPresent_Table[] =
{
    0, 1, 0, 0, 1, 1, 0, 1
};

const extern Ipp8s VC1_MB_Mode_PBFieldPic_MVData_Table[] =
{
    -1, -1, 0, 1, 0, 1, -1, -1
};

#endif  //UMC_ENABLE_VC1_VIDEO_DECODER

⌨️ 快捷键说明

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