|
|
|
@ -39,95 +39,94 @@ |
|
|
|
|
* for some slightly nonconventional bark-scale function |
|
|
|
|
*/ |
|
|
|
|
static const uint16_t bark_tab_l08_512[] = { |
|
|
|
|
7, 8, 7, 8, 8, 8, 8, 8, 8, 9, |
|
|
|
|
9, 10, 10, 11, 11, 12, 12, 14, 15, 16, |
|
|
|
|
18, 19, 21, 24, 27, 30, 35, 40, 46, 53 |
|
|
|
|
7, 8, 7, 8, 8, 8, 8, 8, 8, 9, |
|
|
|
|
9, 10, 10, 11, 11, 12, 12, 14, 15, 16, |
|
|
|
|
18, 19, 21, 24, 27, 30, 35, 40, 46, 53 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint16_t bark_tab_l11_512[] = { |
|
|
|
|
6, 6, 6, 6, 6, 6, 7, 6, 7, 7, |
|
|
|
|
8, 8, 8, 9, 10, 10, 11, 13, 13, 15, |
|
|
|
|
17, 18, 21, 25, 27, 33, 38, 45, 54, 66 |
|
|
|
|
6, 6, 6, 6, 6, 6, 7, 6, 7, 7, |
|
|
|
|
8, 8, 8, 9, 10, 10, 11, 13, 13, 15, |
|
|
|
|
17, 18, 21, 25, 27, 33, 38, 45, 54, 66 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint16_t bark_tab_l16_1024[] = { |
|
|
|
|
9, 9, 8, 9, 10, 9, 10, 10, 10, 12, |
|
|
|
|
11, 13, 13, 14, 16, 17, 19, 20, 24, 26, |
|
|
|
|
30, 35, 40, 48, 56, 68, 83, 102, 128, 165 |
|
|
|
|
9, 9, 8, 9, 10, 9, 10, 10, 10, 12, |
|
|
|
|
11, 13, 13, 14, 16, 17, 19, 20, 24, 26, |
|
|
|
|
30, 35, 40, 48, 56, 68, 83, 102, 128, 165 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint16_t bark_tab_l22_1024[] = { |
|
|
|
|
6, 7, 6, 6, 7, 7, 7, 7, 7, 8, |
|
|
|
|
9, 8, 10, 10, 11, 12, 13, 15, 16, 18, |
|
|
|
|
21, 24, 27, 33, 38, 46, 55, 68, 84, 107, |
|
|
|
|
140, 191 |
|
|
|
|
6, 7, 6, 6, 7, 7, 7, 7, 7, 8, |
|
|
|
|
9, 8, 10, 10, 11, 12, 13, 15, 16, 18, |
|
|
|
|
21, 24, 27, 33, 38, 46, 55, 68, 84, 107, |
|
|
|
|
140, 191 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint16_t bark_tab_l22_512[] = { |
|
|
|
|
3, 3, 3, 4, 3, 3, 4, 3, 4, 4, |
|
|
|
|
4, 5, 4, 5, 6, 6, 7, 7, 8, 9, |
|
|
|
|
10, 12, 14, 16, 20, 22, 28, 34, 42, 53, |
|
|
|
|
71, 95 |
|
|
|
|
3, 3, 3, 4, 3, 3, 4, 3, 4, 4, |
|
|
|
|
4, 5, 4, 5, 6, 6, 7, 7, 8, 9, |
|
|
|
|
10, 12, 14, 16, 20, 22, 28, 34, 42, 53, |
|
|
|
|
71, 95 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint16_t bark_tab_l44_2048[] = { |
|
|
|
|
5, 6, 5, 6, 5, 6, 6, 6, 6, 6, |
|
|
|
|
7, 7, 7, 8, 8, 9, 9, 10, 11, 11, |
|
|
|
|
13, 14, 16, 17, 19, 22, 25, 29, 33, 39, |
|
|
|
|
46, 54, 64, 79, 98, 123, 161, 220, 320, 512 |
|
|
|
|
5, 6, 5, 6, 5, 6, 6, 6, 6, 6, |
|
|
|
|
7, 7, 7, 8, 8, 9, 9, 10, 11, 11, |
|
|
|
|
13, 14, 16, 17, 19, 22, 25, 29, 33, 39, |
|
|
|
|
46, 54, 64, 79, 98, 123, 161, 220, 320, 512 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint16_t bark_tab_m08_256[] = { |
|
|
|
|
6, 5, 6, 6, 6, 6, 7, 7, 8, 8, |
|
|
|
|
9, 10, 11, 13, 15, 18, 20, 25, 31, 39 |
|
|
|
|
6, 5, 6, 6, 6, 6, 7, 7, 8, 8, |
|
|
|
|
9, 10, 11, 13, 15, 18, 20, 25, 31, 39 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint16_t bark_tab_m11_256[] = { |
|
|
|
|
4, 5, 4, 5, 5, 5, 6, 5, 7, 7, |
|
|
|
|
8, 9, 10, 12, 15, 17, 22, 28, 35, 47 |
|
|
|
|
4, 5, 4, 5, 5, 5, 6, 5, 7, 7, |
|
|
|
|
8, 9, 10, 12, 15, 17, 22, 28, 35, 47 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint16_t bark_tab_m16_512[] = { |
|
|
|
|
7, 6, 7, 7, 7, 8, 9, 9, 10, 11, |
|
|
|
|
14, 15, 18, 22, 27, 34, 44, 59, 81, 117 |
|
|
|
|
7, 6, 7, 7, 7, 8, 9, 9, 10, 11, |
|
|
|
|
14, 15, 18, 22, 27, 34, 44, 59, 81, 117 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint16_t bark_tab_m22_256[] = { |
|
|
|
|
3, 2, 3, 2, 3, 3, 4, 3, 4, 5, |
|
|
|
|
5, 7, 8, 9, 13, 16, 22, 30, 44, 70 |
|
|
|
|
3, 2, 3, 2, 3, 3, 4, 3, 4, 5, |
|
|
|
|
5, 7, 8, 9, 13, 16, 22, 30, 44, 70 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint16_t bark_tab_m22_512[] = { |
|
|
|
|
5, 5, 5, 6, 5, 7, 6, 7, 9, 9, |
|
|
|
|
11, 13, 15, 20, 24, 33, 43, 61, 88, 140 |
|
|
|
|
5, 5, 5, 6, 5, 7, 6, 7, 9, 9, |
|
|
|
|
11, 13, 15, 20, 24, 33, 43, 61, 88, 140 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint16_t bark_tab_m44_512[] = { |
|
|
|
|
3, 2, 3, 3, 3, 4, 3, 5, 4, 6, |
|
|
|
|
7, 8, 10, 14, 18, 25, 36, 55, 95, 208 |
|
|
|
|
3, 2, 3, 3, 3, 4, 3, 5, 4, 6, |
|
|
|
|
7, 8, 10, 14, 18, 25, 36, 55, 95, 208 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint16_t bark_tab_s08_64[] = { |
|
|
|
|
3, 3, 3, 3, 4, 5, 6, 8, 12, 17 |
|
|
|
|
3, 3, 3, 3, 4, 5, 6, 8, 12, 17 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint16_t bark_tab_s11_64[] = { |
|
|
|
|
2, 3, 2, 3, 3, 4, 6, 8, 12, 21 |
|
|
|
|
2, 3, 2, 3, 3, 4, 6, 8, 12, 21 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint16_t bark_tab_s16_128[] = { |
|
|
|
|
3, 4, 4, 4, 5, 7, 10, 16, 26, 49 |
|
|
|
|
3, 4, 4, 4, 5, 7, 10, 16, 26, 49 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint16_t bark_tab_s22_128[] = { |
|
|
|
|
3, 2, 3, 4, 4, 6, 9, 14, 26, 57 |
|
|
|
|
3, 2, 3, 4, 4, 6, 9, 14, 26, 57 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint16_t bark_tab_s44_128[] = { |
|
|
|
|
1, 2, 1, 2, 3, 4, 6, 10, 23, 76 |
|
|
|
|
1, 2, 1, 2, 3, 4, 6, 10, 23, 76 |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* TwinVQ codebooks. They are coded in a struct so we can use code such as |
|
|
|
|
* |
|
|
|
@ -10991,147 +10990,155 @@ static const struct twinvq_data { |
|
|
|
|
}, |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static const uint8_t tab7[][35] = { |
|
|
|
|
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0}, |
|
|
|
|
{0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0}, |
|
|
|
|
{0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, |
|
|
|
|
{0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0}, |
|
|
|
|
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,0,0}, |
|
|
|
|
{0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0}, |
|
|
|
|
{0,0,0,1,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, |
|
|
|
|
{0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0}, |
|
|
|
|
{0,0,1,0,1,0,0,1,0,1,0,0,1,0,1,0,0,1,0,1,0,0,1,0,1,0,0,1,0,1,0,0,1,0,1}, |
|
|
|
|
{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0}, |
|
|
|
|
{0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0} |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, |
|
|
|
|
0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, |
|
|
|
|
0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, |
|
|
|
|
0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, |
|
|
|
|
0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0 }, |
|
|
|
|
{ 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, |
|
|
|
|
0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0, |
|
|
|
|
1, 0, 1 }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0 } |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint8_t tab8[][5] = { |
|
|
|
|
{0, 0, 0, 1, 1}, |
|
|
|
|
{0, 1, 0, 0, 1}, |
|
|
|
|
{1, 1, 0, 0, 0}, |
|
|
|
|
{1, 0, 0, 1, 0}, |
|
|
|
|
{0, 0, 0, 1, 1}, |
|
|
|
|
{0, 1, 0, 0, 1}, |
|
|
|
|
{1, 1, 0, 0, 0}, |
|
|
|
|
{1, 0, 0, 1, 0}, |
|
|
|
|
{0, 0, 0, 1, 1}, |
|
|
|
|
{0, 1, 0, 0, 1}, |
|
|
|
|
{1, 1, 0, 0, 0}, |
|
|
|
|
{0, 0, 0, 0, 0}, |
|
|
|
|
{0, 1, 0, 1, 0} |
|
|
|
|
{ 0, 0, 0, 1, 1 }, |
|
|
|
|
{ 0, 1, 0, 0, 1 }, |
|
|
|
|
{ 1, 1, 0, 0, 0 }, |
|
|
|
|
{ 1, 0, 0, 1, 0 }, |
|
|
|
|
{ 0, 0, 0, 1, 1 }, |
|
|
|
|
{ 0, 1, 0, 0, 1 }, |
|
|
|
|
{ 1, 1, 0, 0, 0 }, |
|
|
|
|
{ 1, 0, 0, 1, 0 }, |
|
|
|
|
{ 0, 0, 0, 1, 1 }, |
|
|
|
|
{ 0, 1, 0, 0, 1 }, |
|
|
|
|
{ 1, 1, 0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 0 }, |
|
|
|
|
{ 0, 1, 0, 1, 0 } |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint8_t tab9[][45] = { |
|
|
|
|
{ |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 |
|
|
|
|
},{ |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 |
|
|
|
|
},{ |
|
|
|
|
0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 |
|
|
|
|
},{ |
|
|
|
|
0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 |
|
|
|
|
},{ |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 |
|
|
|
|
},{ |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 |
|
|
|
|
},{ |
|
|
|
|
0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 |
|
|
|
|
},{ |
|
|
|
|
0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 |
|
|
|
|
},{ |
|
|
|
|
0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, |
|
|
|
|
1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0 |
|
|
|
|
},{ |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 |
|
|
|
|
} |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, |
|
|
|
|
1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint8_t tab10[][25] = |
|
|
|
|
{ |
|
|
|
|
{1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0}, |
|
|
|
|
{1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0}, |
|
|
|
|
{1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0}, |
|
|
|
|
{1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0}, |
|
|
|
|
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1}, |
|
|
|
|
{0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1}, |
|
|
|
|
{0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1}, |
|
|
|
|
{1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0}, |
|
|
|
|
{0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1} |
|
|
|
|
static const uint8_t tab10[][25] = { |
|
|
|
|
{ 1, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, |
|
|
|
|
0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0 }, |
|
|
|
|
{ 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0, |
|
|
|
|
0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0 }, |
|
|
|
|
{ 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0, |
|
|
|
|
0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 0 }, |
|
|
|
|
{ 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }, |
|
|
|
|
{ 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, |
|
|
|
|
0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1 }, |
|
|
|
|
{ 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, |
|
|
|
|
0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1 }, |
|
|
|
|
{ 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, |
|
|
|
|
0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0 }, |
|
|
|
|
{ 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, |
|
|
|
|
0, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1 } |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint8_t tab11[][55] = { |
|
|
|
|
{ |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0 |
|
|
|
|
},{ |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
},{ |
|
|
|
|
0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
},{ |
|
|
|
|
0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
}, { |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
},{ |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
},{ |
|
|
|
|
0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
},{ |
|
|
|
|
0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
},{ |
|
|
|
|
0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
} |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, |
|
|
|
|
{ 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, |
|
|
|
|
0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
|
|
|
|
1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, } |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const uint8_t tab12[][15] = { |
|
|
|
|
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0}, |
|
|
|
|
{0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0}, |
|
|
|
|
{0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, |
|
|
|
|
{0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0}, |
|
|
|
|
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0}, |
|
|
|
|
{0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0}, |
|
|
|
|
{0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}, |
|
|
|
|
{0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0}, |
|
|
|
|
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0}, |
|
|
|
|
{0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0}, |
|
|
|
|
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1}, |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0 }, |
|
|
|
|
{ 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, |
|
|
|
|
{ 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0 }, |
|
|
|
|
{ 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, |
|
|
|
|
{ 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0 }, |
|
|
|
|
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1 }, |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
static const struct { |
|
|
|
|
int size; |
|
|
|
|
const uint8_t *tab; |
|
|
|
|
} tabs[] = { |
|
|
|
|
{0 , NULL}, |
|
|
|
|
{5 , &tab8 [0][0]},{5 , &tab8 [0][0]}, {15, &tab12[0][0]}, |
|
|
|
|
{5 , &tab8 [0][0]},{25, &tab10[0][0]}, {15, &tab12[0][0]}, |
|
|
|
|
{35, &tab7 [0][0]},{5 , &tab8 [0][0]}, {45, &tab9 [0][0]}, |
|
|
|
|
{25, &tab10[0][0]},{55, &tab11[0][0]}, {15, &tab12[0][0]} |
|
|
|
|
{ 0, NULL }, |
|
|
|
|
{ 5, &tab8[0][0] }, { 5, &tab8[0][0] }, { 15, &tab12[0][0] }, |
|
|
|
|
{ 5, &tab8[0][0] }, { 25, &tab10[0][0] }, { 15, &tab12[0][0] }, |
|
|
|
|
{ 35, &tab7[0][0] }, { 5, &tab8[0][0] }, { 45, &tab9[0][0] }, |
|
|
|
|
{ 25, &tab10[0][0] }, { 55, &tab11[0][0] }, { 15, &tab12[0][0] } |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
#endif /* AVCODEC_TWINVQ_DATA_H */ |
|
|
|
|