📄 trigtabs.c
字号:
}
*/
const float look_subblock[8] = {
1.0000000000e+000f, 2.5000000000e-001f, 6.2500000000e-002f, 1.5625000000e-002f,
3.9062500000e-003f, 9.7656250000e-004f, 2.4414062500e-004f, 6.1035156250e-005f,
};
/* intensity stereo
* if ms mode quant pre-scales all values by 1.0/sqrt(2.0)
ms_mode in table compensates
pi = 4.0*atan(1.0);
t = pi/12.0;
for(i=0;i<7;i++) {
s = sin(i*t);
c = cos(i*t);
** ms_mode = 0 **
lr[0][i][0] = (float)(s/(s+c));
lr[0][i][1] = (float)(c/(s+c));
** ms_mode = 1 **
lr[1][i][0] = (float)(sqrt(2.0)*(s/(s+c)));
lr[1][i][1] = (float)(sqrt(2.0)*(c/(s+c)));
}
** sf = 7 **
** ms_mode = 0 **
lr[0][i][0] = 1.0f;
lr[0][i][1] = 0.0f;
** ms_mode = 1, in is bands is routine does ms processing **
lr[1][i][0] = 1.0f;
lr[1][i][1] = 1.0f;
*/
const float lr[2][8][2] = { /* [ms_mode 0/1][sf][left/right] */
{
{0.0000000000e+000f, 1.0000000000e+000f}, {2.1132487059e-001f, 7.8867512941e-001f},
{3.6602541804e-001f, 6.3397461176e-001f}, {5.0000000000e-001f, 5.0000000000e-001f},
{6.3397461176e-001f, 3.6602541804e-001f}, {7.8867512941e-001f, 2.1132487059e-001f},
{1.0000000000e+000f, 6.1230317691e-017f}, {1.0000000000e+000f, 0.0000000000e+000f},
},
{
{0.0000000000e+000f, 1.4142135382e+000f}, {2.9885849357e-001f, 1.1153550148e+000f},
{5.1763808727e-001f, 8.9657545090e-001f}, {7.0710676908e-001f, 7.0710676908e-001f},
{8.9657545090e-001f, 5.1763808727e-001f}, {1.1153550148e+000f, 2.9885849357e-001f},
{1.4142135382e+000f, 8.6592747298e-017f}, {1.0000000000e+000f, 1.0000000000e+000f},
}
};
/* intensity stereo MPEG2 */
/* lr2[intensity_scale][ms_mode][sflen_offset+sf][left/right] */
/* intensity stereo MPEG2
lr2[intensity_scale][ms_mode][sflen_offset+sf][left/right]
for(intensity_scale=0;intensity_scale<2;intensity_scale++) {
t = pow(2.0, -0.25*(1+intensity_scale));
for(ms_mode=0;ms_mode<2;ms_mode++) {
n = 1;
k = 0;
for(sflen=0;sflen<6;sflen++) {
for(sf=0;sf<(n-1);sf++, k++) {
if( sf == 0 ) {
lr[intensity_scale][ms_mode][k][0] = ms_factor[ms_mode]*1.0f;
lr[intensity_scale][ms_mode][k][1] = ms_factor[ms_mode]*1.0f;
}
else if( (sf & 1) ) {
lr[intensity_scale][ms_mode][k][0] =
(float)(ms_factor[ms_mode]*pow(t,(sf+1)/2));
lr[intensity_scale][ms_mode][k][1] = ms_factor[ms_mode]*1.0f;
}
else {
lr[intensity_scale][ms_mode][k][0] = ms_factor[ms_mode]*1.0f;
lr[intensity_scale][ms_mode][k][1] =
(float)(ms_factor[ms_mode]*pow(t,sf/2));
}
}
** illegal is_pos used to do ms processing **
if( ms_mode == 0 ) {** ms_mode = 0 **
lr[intensity_scale][ms_mode][k][0] = 1.0f;
lr[intensity_scale][ms_mode][k][1] = 0.0f;
}
else {
** ms_mode = 1, in is bands is routine does ms processing **
lr[intensity_scale][ms_mode][k][0] = 1.0f;
lr[intensity_scale][ms_mode][k][1] = 1.0f;
}
k++;
n = n + n;
}
}
}
*/
const float lr2[2][2][64][2] = {
{
{
{1.0000000000e+000f, 0.0000000000e+000f}, {1.0000000000e+000f, 1.0000000000e+000f},
{1.0000000000e+000f, 0.0000000000e+000f}, {1.0000000000e+000f, 1.0000000000e+000f},
{8.4089642763e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 8.4089642763e-001f},
{1.0000000000e+000f, 0.0000000000e+000f}, {1.0000000000e+000f, 1.0000000000e+000f},
{8.4089642763e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 8.4089642763e-001f},
{7.0710676908e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 7.0710676908e-001f},
{5.9460353851e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 5.9460353851e-001f},
{1.0000000000e+000f, 0.0000000000e+000f}, {1.0000000000e+000f, 1.0000000000e+000f},
{8.4089642763e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 8.4089642763e-001f},
{7.0710676908e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 7.0710676908e-001f},
{5.9460353851e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 5.9460353851e-001f},
{5.0000000000e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 5.0000000000e-001f},
{4.2044821382e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 4.2044821382e-001f},
{3.5355338454e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 3.5355338454e-001f},
{2.9730176926e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 2.9730176926e-001f},
{1.0000000000e+000f, 0.0000000000e+000f}, {1.0000000000e+000f, 1.0000000000e+000f},
{8.4089642763e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 8.4089642763e-001f},
{7.0710676908e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 7.0710676908e-001f},
{5.9460353851e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 5.9460353851e-001f},
{5.0000000000e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 5.0000000000e-001f},
{4.2044821382e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 4.2044821382e-001f},
{3.5355338454e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 3.5355338454e-001f},
{2.9730176926e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 2.9730176926e-001f},
{2.5000000000e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 2.5000000000e-001f},
{2.1022410691e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 2.1022410691e-001f},
{1.7677669227e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 1.7677669227e-001f},
{1.4865088463e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 1.4865088463e-001f},
{1.2500000000e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 1.2500000000e-001f},
{1.0511205345e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 1.0511205345e-001f},
{8.8388346136e-002f, 1.0000000000e+000f}, {1.0000000000e+000f, 8.8388346136e-002f},
{7.4325442314e-002f, 1.0000000000e+000f}, {1.0000000000e+000f, 7.4325442314e-002f},
{1.0000000000e+000f, 0.0000000000e+000f}, {0.0000000000e+000f, 0.0000000000e+000f},
},
{
{1.0000000000e+000f, 1.0000000000e+000f}, {1.4142135382e+000f, 1.4142135382e+000f},
{1.0000000000e+000f, 1.0000000000e+000f}, {1.4142135382e+000f, 1.4142135382e+000f},
{1.1892070770e+000f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.1892070770e+000f},
{1.0000000000e+000f, 1.0000000000e+000f}, {1.4142135382e+000f, 1.4142135382e+000f},
{1.1892070770e+000f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.1892070770e+000f},
{1.0000000000e+000f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.0000000000e+000f},
{8.4089642763e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 8.4089642763e-001f},
{1.0000000000e+000f, 1.0000000000e+000f}, {1.4142135382e+000f, 1.4142135382e+000f},
{1.1892070770e+000f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.1892070770e+000f},
{1.0000000000e+000f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.0000000000e+000f},
{8.4089642763e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 8.4089642763e-001f},
{7.0710676908e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 7.0710676908e-001f},
{5.9460353851e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 5.9460353851e-001f},
{5.0000000000e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 5.0000000000e-001f},
{4.2044821382e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 4.2044821382e-001f},
{1.0000000000e+000f, 1.0000000000e+000f}, {1.4142135382e+000f, 1.4142135382e+000f},
{1.1892070770e+000f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.1892070770e+000f},
{1.0000000000e+000f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.0000000000e+000f},
{8.4089642763e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 8.4089642763e-001f},
{7.0710676908e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 7.0710676908e-001f},
{5.9460353851e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 5.9460353851e-001f},
{5.0000000000e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 5.0000000000e-001f},
{4.2044821382e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 4.2044821382e-001f},
{3.5355338454e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 3.5355338454e-001f},
{2.9730176926e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 2.9730176926e-001f},
{2.5000000000e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 2.5000000000e-001f},
{2.1022410691e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 2.1022410691e-001f},
{1.7677669227e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.7677669227e-001f},
{1.4865088463e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.4865088463e-001f},
{1.2500000000e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.2500000000e-001f},
{1.0511205345e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.0511205345e-001f},
{1.0000000000e+000f, 1.0000000000e+000f}, {0.0000000000e+000f, 0.0000000000e+000f},
}
},
{
{
{1.0000000000e+000f, 0.0000000000e+000f}, {1.0000000000e+000f, 1.0000000000e+000f},
{1.0000000000e+000f, 0.0000000000e+000f}, {1.0000000000e+000f, 1.0000000000e+000f},
{7.0710676908e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 7.0710676908e-001f},
{1.0000000000e+000f, 0.0000000000e+000f}, {1.0000000000e+000f, 1.0000000000e+000f},
{7.0710676908e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 7.0710676908e-001f},
{5.0000000000e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 5.0000000000e-001f},
{3.5355338454e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 3.5355338454e-001f},
{1.0000000000e+000f, 0.0000000000e+000f}, {1.0000000000e+000f, 1.0000000000e+000f},
{7.0710676908e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 7.0710676908e-001f},
{5.0000000000e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 5.0000000000e-001f},
{3.5355338454e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 3.5355338454e-001f},
{2.5000000000e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 2.5000000000e-001f},
{1.7677669227e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 1.7677669227e-001f},
{1.2500000000e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 1.2500000000e-001f},
{8.8388346136e-002f, 1.0000000000e+000f}, {1.0000000000e+000f, 8.8388346136e-002f},
{1.0000000000e+000f, 0.0000000000e+000f}, {1.0000000000e+000f, 1.0000000000e+000f},
{7.0710676908e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 7.0710676908e-001f},
{5.0000000000e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 5.0000000000e-001f},
{3.5355338454e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 3.5355338454e-001f},
{2.5000000000e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 2.5000000000e-001f},
{1.7677669227e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 1.7677669227e-001f},
{1.2500000000e-001f, 1.0000000000e+000f}, {1.0000000000e+000f, 1.2500000000e-001f},
{8.8388346136e-002f, 1.0000000000e+000f}, {1.0000000000e+000f, 8.8388346136e-002f},
{6.2500000000e-002f, 1.0000000000e+000f}, {1.0000000000e+000f, 6.2500000000e-002f},
{4.4194173068e-002f, 1.0000000000e+000f}, {1.0000000000e+000f, 4.4194173068e-002f},
{3.1250000000e-002f, 1.0000000000e+000f}, {1.0000000000e+000f, 3.1250000000e-002f},
{2.2097086534e-002f, 1.0000000000e+000f}, {1.0000000000e+000f, 2.2097086534e-002f},
{1.5625000000e-002f, 1.0000000000e+000f}, {1.0000000000e+000f, 1.5625000000e-002f},
{1.1048543267e-002f, 1.0000000000e+000f}, {1.0000000000e+000f, 1.1048543267e-002f},
{7.8125000000e-003f, 1.0000000000e+000f}, {1.0000000000e+000f, 7.8125000000e-003f},
{5.5242716335e-003f, 1.0000000000e+000f}, {1.0000000000e+000f, 5.5242716335e-003f},
{1.0000000000e+000f, 0.0000000000e+000f}, {0.0000000000e+000f, 0.0000000000e+000f},
},
{
{1.0000000000e+000f, 1.0000000000e+000f}, {1.4142135382e+000f, 1.4142135382e+000f},
{1.0000000000e+000f, 1.0000000000e+000f}, {1.4142135382e+000f, 1.4142135382e+000f},
{1.0000000000e+000f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.0000000000e+000f},
{1.0000000000e+000f, 1.0000000000e+000f}, {1.4142135382e+000f, 1.4142135382e+000f},
{1.0000000000e+000f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.0000000000e+000f},
{7.0710676908e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 7.0710676908e-001f},
{5.0000000000e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 5.0000000000e-001f},
{1.0000000000e+000f, 1.0000000000e+000f}, {1.4142135382e+000f, 1.4142135382e+000f},
{1.0000000000e+000f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.0000000000e+000f},
{7.0710676908e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 7.0710676908e-001f},
{5.0000000000e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 5.0000000000e-001f},
{3.5355338454e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 3.5355338454e-001f},
{2.5000000000e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 2.5000000000e-001f},
{1.7677669227e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.7677669227e-001f},
{1.2500000000e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.2500000000e-001f},
{1.0000000000e+000f, 1.0000000000e+000f}, {1.4142135382e+000f, 1.4142135382e+000f},
{1.0000000000e+000f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.0000000000e+000f},
{7.0710676908e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 7.0710676908e-001f},
{5.0000000000e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 5.0000000000e-001f},
{3.5355338454e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 3.5355338454e-001f},
{2.5000000000e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 2.5000000000e-001f},
{1.7677669227e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.7677669227e-001f},
{1.2500000000e-001f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.2500000000e-001f},
{8.8388346136e-002f, 1.4142135382e+000f}, {1.4142135382e+000f, 8.8388346136e-002f},
{6.2500000000e-002f, 1.4142135382e+000f}, {1.4142135382e+000f, 6.2500000000e-002f},
{4.4194173068e-002f, 1.4142135382e+000f}, {1.4142135382e+000f, 4.4194173068e-002f},
{3.1250000000e-002f, 1.4142135382e+000f}, {1.4142135382e+000f, 3.1250000000e-002f},
{2.2097086534e-002f, 1.4142135382e+000f}, {1.4142135382e+000f, 2.2097086534e-002f},
{1.5625000000e-002f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.5625000000e-002f},
{1.1048543267e-002f, 1.4142135382e+000f}, {1.4142135382e+000f, 1.1048543267e-002f},
{7.8125000000e-003f, 1.4142135382e+000f}, {1.4142135382e+000f, 7.8125000000e-003f},
{1.0000000000e+000f, 1.0000000000e+000f}, {0.0000000000e+000f, 0.0000000000e+000f},
}
}
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -