@ -27,67 +27,52 @@
const uint8_t ff_svq1_block_type_vlc [ 4 ] [ 2 ] = {
/* { code, length } */
{ 0x1 , 1 } , { 0x1 , 2 } , { 0x1 , 3 } , { 0x0 , 3 }
} ;
/* values in this table range from -1..6; adjust retrieved value by -1 */
const uint8_t ff_svq1_intra_multistage_vlc [ 6 ] [ 8 ] [ 2 ] = {
/* { code, length } */
{
{ 0x1 , 5 } , { 0x1 , 1 } , { 0x3 , 3 } , { 0x2 , 3 } ,
{ 0x3 , 4 } , { 0x2 , 4 } , { 0x0 , 5 } , { 0x1 , 4 }
} , {
{ 0x1 , 4 } , { 0x3 , 2 } , { 0x5 , 3 } , { 0x4 , 3 } ,
{ 0x3 , 3 } , { 0x2 , 3 } , { 0x0 , 4 } , { 0x1 , 3 }
} , {
{ 0x1 , 5 } , { 0x1 , 1 } , { 0x3 , 3 } , { 0x0 , 5 } ,
{ 0x3 , 4 } , { 0x2 , 3 } , { 0x2 , 4 } , { 0x1 , 4 }
} , {
{ 0x1 , 6 } , { 0x1 , 1 } , { 0x1 , 2 } , { 0x0 , 6 } ,
{ 0x3 , 4 } , { 0x2 , 4 } , { 0x1 , 5 } , { 0x1 , 4 }
} , {
{ 0x1 , 6 } , { 0x1 , 1 } , { 0x1 , 2 } , { 0x3 , 5 } ,
{ 0x2 , 5 } , { 0x0 , 6 } , { 0x1 , 5 } , { 0x1 , 3 }
} , {
{ 0x1 , 7 } , { 0x1 , 1 } , { 0x1 , 2 } , { 0x1 , 3 } ,
{ 0x1 , 4 } , { 0x1 , 6 } , { 0x0 , 7 } , { 0x1 , 5 }
}
{ { 0x1 , 5 } , { 0x1 , 1 } , { 0x3 , 3 } , { 0x2 , 3 } ,
{ 0x3 , 4 } , { 0x2 , 4 } , { 0x0 , 5 } , { 0x1 , 4 } } ,
{ { 0x1 , 4 } , { 0x3 , 2 } , { 0x5 , 3 } , { 0x4 , 3 } ,
{ 0x3 , 3 } , { 0x2 , 3 } , { 0x0 , 4 } , { 0x1 , 3 } } ,
{ { 0x1 , 5 } , { 0x1 , 1 } , { 0x3 , 3 } , { 0x0 , 5 } ,
{ 0x3 , 4 } , { 0x2 , 3 } , { 0x2 , 4 } , { 0x1 , 4 } } ,
{ { 0x1 , 6 } , { 0x1 , 1 } , { 0x1 , 2 } , { 0x0 , 6 } ,
{ 0x3 , 4 } , { 0x2 , 4 } , { 0x1 , 5 } , { 0x1 , 4 } } ,
{ { 0x1 , 6 } , { 0x1 , 1 } , { 0x1 , 2 } , { 0x3 , 5 } ,
{ 0x2 , 5 } , { 0x0 , 6 } , { 0x1 , 5 } , { 0x1 , 3 } } ,
{ { 0x1 , 7 } , { 0x1 , 1 } , { 0x1 , 2 } , { 0x1 , 3 } ,
{ 0x1 , 4 } , { 0x1 , 6 } , { 0x0 , 7 } , { 0x1 , 5 } }
} ;
/* values in this table range from -1..6; adjust retrieved value by -1 */
const uint8_t ff_svq1_inter_multistage_vlc [ 6 ] [ 8 ] [ 2 ] = {
/* { code, length } */
{
{ 0x3 , 2 } , { 0x5 , 3 } , { 0x4 , 3 } , { 0x3 , 3 } ,
{ 0x2 , 3 } , { 0x1 , 3 } , { 0x1 , 4 } , { 0x0 , 4 }
} , {
{ 0x3 , 2 } , { 0x5 , 3 } , { 0x4 , 3 } , { 0x3 , 3 } ,
{ 0x2 , 3 } , { 0x1 , 3 } , { 0x1 , 4 } , { 0x0 , 4 }
} , {
{ 0x1 , 1 } , { 0x3 , 3 } , { 0x2 , 3 } , { 0x3 , 4 } ,
{ 0x2 , 4 } , { 0x1 , 4 } , { 0x1 , 5 } , { 0x0 , 5 }
} , {
{ 0x1 , 1 } , { 0x3 , 3 } , { 0x2 , 3 } , { 0x3 , 4 } ,
{ 0x2 , 4 } , { 0x1 , 4 } , { 0x1 , 5 } , { 0x0 , 5 }
} , {
{ 0x1 , 1 } , { 0x3 , 3 } , { 0x2 , 3 } , { 0x3 , 4 } ,
{ 0x2 , 4 } , { 0x1 , 4 } , { 0x1 , 5 } , { 0x0 , 5 }
} , {
{ 0x1 , 1 } , { 0x1 , 2 } , { 0x1 , 3 } , { 0x3 , 5 } ,
{ 0x2 , 5 } , { 0x1 , 5 } , { 0x1 , 6 } , { 0x0 , 6 }
}
{ { 0x3 , 2 } , { 0x5 , 3 } , { 0x4 , 3 } , { 0x3 , 3 } ,
{ 0x2 , 3 } , { 0x1 , 3 } , { 0x1 , 4 } , { 0x0 , 4 } } ,
{ { 0x3 , 2 } , { 0x5 , 3 } , { 0x4 , 3 } , { 0x3 , 3 } ,
{ 0x2 , 3 } , { 0x1 , 3 } , { 0x1 , 4 } , { 0x0 , 4 } } ,
{ { 0x1 , 1 } , { 0x3 , 3 } , { 0x2 , 3 } , { 0x3 , 4 } ,
{ 0x2 , 4 } , { 0x1 , 4 } , { 0x1 , 5 } , { 0x0 , 5 } } ,
{ { 0x1 , 1 } , { 0x3 , 3 } , { 0x2 , 3 } , { 0x3 , 4 } ,
{ 0x2 , 4 } , { 0x1 , 4 } , { 0x1 , 5 } , { 0x0 , 5 } } ,
{ { 0x1 , 1 } , { 0x3 , 3 } , { 0x2 , 3 } , { 0x3 , 4 } ,
{ 0x2 , 4 } , { 0x1 , 4 } , { 0x1 , 5 } , { 0x0 , 5 } } ,
{ { 0x1 , 1 } , { 0x1 , 2 } , { 0x1 , 3 } , { 0x3 , 5 } ,
{ 0x2 , 5 } , { 0x1 , 5 } , { 0x1 , 6 } , { 0x0 , 6 } }
} ;
/* values in this table range from 0..255; adjust retrieved value by +0 */
const uint16_t ff_svq1_intra_mean_vlc [ 256 ] [ 2 ] = {
/* { code, length } */
{ 0x37 , 6 } , { 0x56 , 7 } , { 0x1 , 17 } , { 0x1 , 20 } ,
{ 0x2 , 20 } , { 0x3 , 20 } , { 0x0 , 20 } , { 0x4 , 20 } ,
{ 0x5 , 20 } , { 0x3 , 19 } , { 0x15 , 11 } , { 0x42 , 9 } ,
{ 0x14 , 11 } , { 0x3 , 14 } , { 0x2 , 14 } , { 0x1 , 15 } ,
{ 0x1 , 16 } , { 0x1 , 12 } , { 0x2B , 10 } , { 0x18 , 11 } ,
{ 0xC , 11 } , { 0x41 , 9 } , { 0x78 , 8 } , { 0x6C , 8 } ,
{ 0x55 , 7 } , { 0xF , 4 } , { 0xE , 4 } , { 0x34 , 6 } ,
{ 0x37 , 6 } , { 0x56 , 7 } , { 0x01 , 17 } , { 0x01 , 20 } ,
{ 0x02 , 20 } , { 0x03 , 20 } , { 0x00 , 20 } , { 0x04 , 20 } ,
{ 0x0 5 , 20 } , { 0x0 3 , 19 } , { 0x15 , 11 } , { 0x42 , 9 } ,
{ 0x14 , 11 } , { 0x0 3 , 14 } , { 0x0 2 , 14 } , { 0x0 1 , 15 } ,
{ 0x0 1 , 16 } , { 0x0 1 , 12 } , { 0x2B , 10 } , { 0x18 , 11 } ,
{ 0x0 C , 11 } , { 0x41 , 9 } , { 0x78 , 8 } , { 0x6C , 8 } ,
{ 0x55 , 7 } , { 0x0 F , 4 } , { 0x0 E , 4 } , { 0x34 , 6 } ,
{ 0x51 , 7 } , { 0x72 , 8 } , { 0x6E , 8 } , { 0x40 , 9 } ,
{ 0x3F , 9 } , { 0x3E , 9 } , { 0x3D , 9 } , { 0x3C , 9 } ,
{ 0x3B , 9 } , { 0x3A , 9 } , { 0x39 , 9 } , { 0x38 , 9 } ,
@ -135,16 +120,16 @@ const uint16_t ff_svq1_intra_mean_vlc[256][2] = {
{ 0x19 , 10 } , { 0x2A , 10 } , { 0x17 , 10 } , { 0x16 , 10 } ,
{ 0x15 , 10 } , { 0x28 , 10 } , { 0x26 , 10 } , { 0x25 , 10 } ,
{ 0x22 , 10 } , { 0x21 , 10 } , { 0x18 , 10 } , { 0x14 , 10 } ,
{ 0x29 , 10 } , { 0x12 , 10 } , { 0xD , 10 } , { 0xE , 10 } ,
{ 0xF , 10 } , { 0x10 , 10 } , { 0x11 , 10 } , { 0x1A , 10 } ,
{ 0x29 , 10 } , { 0x12 , 10 } , { 0x0 D , 10 } , { 0x0 E , 10 } ,
{ 0x0 F , 10 } , { 0x10 , 10 } , { 0x11 , 10 } , { 0x1A , 10 } ,
{ 0x1B , 10 } , { 0x1C , 10 } , { 0x1D , 10 } , { 0x1E , 10 } ,
{ 0x1F , 10 } , { 0x20 , 10 } , { 0x13 , 10 } , { 0x23 , 10 } ,
{ 0x24 , 10 } , { 0x9 , 11 } , { 0x8 , 11 } , { 0x7 , 11 } ,
{ 0x27 , 10 } , { 0x5 , 11 } , { 0xB , 11 } , { 0x6 , 11 } ,
{ 0x4 , 11 } , { 0x3 , 11 } , { 0x2 , 11 } , { 0x1 , 11 } ,
{ 0xA , 11 } , { 0x16 , 11 } , { 0x19 , 11 } , { 0x17 , 11 } ,
{ 0xD , 11 } , { 0xE , 11 } , { 0xF , 11 } , { 0x10 , 11 } ,
{ 0x11 , 11 } , { 0x12 , 11 } , { 0x13 , 11 } , { 0x1 , 14 }
{ 0x24 , 10 } , { 0x0 9 , 11 } , { 0x0 8 , 11 } , { 0x0 7 , 11 } ,
{ 0x27 , 10 } , { 0x0 5 , 11 } , { 0x0 B , 11 } , { 0x0 6 , 11 } ,
{ 0x0 4 , 11 } , { 0x0 3 , 11 } , { 0x0 2 , 11 } , { 0x0 1 , 11 } ,
{ 0x0 A , 11 } , { 0x16 , 11 } , { 0x19 , 11 } , { 0x17 , 11 } ,
{ 0x0 D , 11 } , { 0x0 E , 11 } , { 0x0 F , 11 } , { 0x10 , 11 } ,
{ 0x11 , 11 } , { 0x12 , 11 } , { 0x13 , 11 } , { 0x0 1 , 14 }
} ;
/* values in this table range from -256..255; adjust retrieved value by -256 */
@ -159,12 +144,12 @@ const uint16_t ff_svq1_inter_mean_vlc[512][2] = {
{ 0xE7 , 22 } , { 0xEC , 22 } , { 0xED , 22 } , { 0xEE , 22 } ,
{ 0xEF , 22 } , { 0xF0 , 22 } , { 0xF1 , 22 } , { 0xF2 , 22 } ,
{ 0xF3 , 22 } , { 0xF4 , 22 } , { 0xF5 , 22 } , { 0xF6 , 22 } ,
{ 0xF7 , 22 } , { 0xF8 , 22 } , { 0x102 , 22 } , { 0xEB , 22 } ,
{ 0xF7 , 22 } , { 0xF8 , 22 } , { 0x102 , 22 } , { 0xEB , 22 } ,
{ 0xF9 , 22 } , { 0xFC , 22 } , { 0xFD , 22 } , { 0xFE , 22 } ,
{ 0x100 , 22 } , { 0x5C , 22 } , { 0x60 , 22 } , { 0x101 , 22 } ,
{ 0x71 , 22 } , { 0x104 , 22 } , { 0x105 , 22 } , { 0xFB , 22 } ,
{ 0x100 , 22 } , { 0x5C , 22 } , { 0x60 , 22 } , { 0x101 , 22 } ,
{ 0x71 , 22 } , { 0x104 , 22 } , { 0x105 , 22 } , { 0xFB , 22 } ,
{ 0xFF , 22 } , { 0x86 , 21 } , { 0xFA , 22 } , { 0x7C , 22 } ,
{ 0x75 , 22 } , { 0x103 , 22 } , { 0x78 , 22 } , { 0xD3 , 22 } ,
{ 0x75 , 22 } , { 0x103 , 22 } , { 0x78 , 22 } , { 0xD3 , 22 } ,
{ 0x7B , 22 } , { 0x82 , 22 } , { 0xD2 , 22 } , { 0xD1 , 22 } ,
{ 0xD0 , 22 } , { 0xCF , 22 } , { 0xCE , 22 } , { 0xCD , 22 } ,
{ 0xCC , 22 } , { 0xC3 , 22 } , { 0xCA , 22 } , { 0xC9 , 22 } ,
@ -206,19 +191,19 @@ const uint16_t ff_svq1_inter_mean_vlc[512][2] = {
{ 0x21 , 14 } , { 0x13 , 13 } , { 0x14 , 13 } , { 0x15 , 13 } ,
{ 0x16 , 13 } , { 0x17 , 13 } , { 0x18 , 13 } , { 0x19 , 13 } ,
{ 0x1A , 13 } , { 0x18 , 12 } , { 0x17 , 12 } , { 0x15 , 12 } ,
{ 0x14 , 12 } , { 0x13 , 12 } , { 0x12 , 12 } , { 0xF , 11 } ,
{ 0x14 , 12 } , { 0x13 , 12 } , { 0x12 , 12 } , { 0x0 F , 11 } ,
{ 0x10 , 11 } , { 0x12 , 11 } , { 0x13 , 11 } , { 0x1B , 11 } ,
{ 0x1A , 11 } , { 0xE , 10 } , { 0x13 , 10 } , { 0xF , 10 } ,
{ 0x10 , 10 } , { 0x11 , 10 } , { 0x12 , 10 } , { 0xD , 9 } ,
{ 0x14 , 9 } , { 0x15 , 9 } , { 0xC , 9 } , { 0x13 , 9 } ,
{ 0xF , 8 } , { 0xE , 8 } , { 0x10 , 8 } , { 0x11 , 8 } ,
{ 0xC , 7 } , { 0x9 , 7 } , { 0xA , 7 } , { 0x8 , 6 } ,
{ 0x9 , 6 } , { 0x9 , 5 } , { 0x8 , 5 } , { 0x5 , 4 } ,
{ 0x1 , 1 } , { 0x3 , 3 } , { 0x7 , 5 } , { 0x6 , 5 } ,
{ 0xB , 6 } , { 0xA , 6 } , { 0xE , 7 } , { 0xF , 7 } ,
{ 0xB , 7 } , { 0xD , 7 } , { 0xB , 8 } , { 0xD , 8 } ,
{ 0xC , 8 } , { 0xF , 9 } , { 0x10 , 9 } , { 0x11 , 9 } ,
{ 0xE , 9 } , { 0x12 , 9 } , { 0x17 , 10 } , { 0x14 , 10 } ,
{ 0x1A , 11 } , { 0x0 E , 10 } , { 0x13 , 10 } , { 0x0 F , 10 } ,
{ 0x10 , 10 } , { 0x11 , 10 } , { 0x12 , 10 } , { 0x0 D , 9 } ,
{ 0x14 , 9 } , { 0x15 , 9 } , { 0x0 C , 9 } , { 0x13 , 9 } ,
{ 0x0 F , 8 } , { 0x0 E , 8 } , { 0x10 , 8 } , { 0x11 , 8 } ,
{ 0x0 C , 7 } , { 0x0 9 , 7 } , { 0x0 A , 7 } , { 0x0 8 , 6 } ,
{ 0x0 9 , 6 } , { 0x0 9 , 5 } , { 0x0 8 , 5 } , { 0x0 5 , 4 } ,
{ 0x0 1 , 1 } , { 0x0 3 , 3 } , { 0x0 7 , 5 } , { 0x0 6 , 5 } ,
{ 0x0 B , 6 } , { 0x0 A , 6 } , { 0x0 E , 7 } , { 0x0 F , 7 } ,
{ 0x0 B , 7 } , { 0x0 D , 7 } , { 0x0 B , 8 } , { 0x0 D , 8 } ,
{ 0x0 C , 8 } , { 0x0 F , 9 } , { 0x10 , 9 } , { 0x11 , 9 } ,
{ 0x0 E , 9 } , { 0x12 , 9 } , { 0x17 , 10 } , { 0x14 , 10 } ,
{ 0x16 , 10 } , { 0x15 , 10 } , { 0x19 , 11 } , { 0x18 , 11 } ,
{ 0x17 , 11 } , { 0x16 , 11 } , { 0x15 , 11 } , { 0x14 , 11 } ,
{ 0x11 , 11 } , { 0x19 , 12 } , { 0x1A , 12 } , { 0x16 , 12 } ,
@ -274,10 +259,10 @@ const uint16_t ff_svq1_inter_mean_vlc[512][2] = {
{ 0x1B , 22 } , { 0x1A , 22 } , { 0x19 , 22 } , { 0x18 , 22 } ,
{ 0x17 , 22 } , { 0x16 , 22 } , { 0x15 , 22 } , { 0x14 , 22 } ,
{ 0x13 , 22 } , { 0x12 , 22 } , { 0x11 , 22 } , { 0x10 , 22 } ,
{ 0xF , 22 } , { 0xE , 22 } , { 0xD , 22 } , { 0xC , 22 } ,
{ 0xB , 22 } , { 0xA , 22 } , { 0x9 , 22 } , { 0x8 , 22 } ,
{ 0x7 , 22 } , { 0x6 , 22 } , { 0x5 , 22 } , { 0x4 , 22 } ,
{ 0x3 , 22 } , { 0x2 , 22 } , { 0x1 , 22 } , { 0x0 , 22 }
{ 0x0 F , 22 } , { 0x0 E , 22 } , { 0x0 D , 22 } , { 0x0 C , 22 } ,
{ 0x0 B , 22 } , { 0x0 A , 22 } , { 0x0 9 , 22 } , { 0x0 8 , 22 } ,
{ 0x0 7 , 22 } , { 0x0 6 , 22 } , { 0x0 5 , 22 } , { 0x0 4 , 22 } ,
{ 0x0 3 , 22 } , { 0x0 2 , 22 } , { 0x0 1 , 22 } , { 0x0 0 , 22 }
} ;
# endif /* AVCODEC_SVQ1_VLC_H */