Commit 50c1cc2d authored by Monty's avatar Monty

Put AoTuV tunings merge (along with bugfixes) on the mainline. This

is ready for wider correctness testing; no substantial issues
expected.


svn path=/trunk/vorbis/; revision=7037
parent 42f2d30b
......@@ -7,8 +7,8 @@ INCLUDES = -I$(top_srcdir)/include @OGG_CFLAGS@
noinst_PROGRAMS = decoder_example encoder_example chaining_example\
vorbisfile_example seeking_example
LDFLAGS = -all-static
LDADD = ../lib/libvorbis.la
LDFLAGS = -all-static
LDADD = ../lib/libvorbis.la
decoder_example_SOURCES = decoder_example.c
encoder_example_SOURCES = encoder_example.c
......
......@@ -121,12 +121,12 @@ int main(){
using the bitrate interface, and then turning bitrate management off:
ret = ( vorbis_encode_setup_managed(&vi,2,44100,-1,128000,-1) ||
vorbis_encode_ctl(&vi,OV_ECTL_RATEMANAGE_AVG,NULL) ||
vorbis_encode_ctl(&vi,OV_ECTL_RATEMANAGE2_SET,NULL) ||
vorbis_encode_setup_init(&vi));
*********************************************************************/
ret=vorbis_encode_init_vbr(&vi,2,44100,.5);
ret=vorbis_encode_init_vbr(&vi,2,44100,0.1);
/* do not continue if setup failed; this can happen if we ask for a
mode that libVorbis does not support (eg, too low a bitrate, etc,
......
......@@ -223,7 +223,7 @@ int vorbis_bitrate_flushpacket(vorbis_dsp_state *vd,ogg_packet *op){
if(vorbis_bitrate_managed(vb))
choice=bm->choice;
op->packet=oggpack_get_buffer(vbi->packetblob[choice]);
op->bytes=oggpack_bytes(vbi->packetblob[choice]);
op->b_o_s=0;
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
......@@ -416,7 +416,7 @@ static int _vorbis_pack_info(oggpack_buffer *opb,vorbis_info *vi){
}
static int _vorbis_pack_comment(oggpack_buffer *opb,vorbis_comment *vc){
char temp[]="Xiph.Org libVorbis I 20031230";
char temp[]="Xiph.Org libVorbis I 20040629";
int bytes = strlen(temp);
/* preamble */
......
......@@ -274,7 +274,20 @@ static int mapping0_forward(vorbis_block *vb){
gmdct[i]=_vorbis_block_alloc(vb,n/2*sizeof(**gmdct));
scale_dB=todB(&scale);
scale_dB=todB(&scale) + .345; /* + .345 is a hack; the original
todB estimation used on IEEE 754
compliant machines had a bug that
returned dB values about a third
of a decibel too high. The bug
was harmless because tunings
implicitly took that into
account. However, fixing the bug
in the estimator requires
changing all the tunings as well.
For now, it's easier to sync
things back up here, and
recalibrate the tunings in the
next major model upgrade. */
#if 0
if(vi->channels==2)
......@@ -301,11 +314,38 @@ static int mapping0_forward(vorbis_block *vb){
/* FFT yields more accurate tonal estimation (not phase sensitive) */
drft_forward(&b->fft_look[vb->W],pcm);
logfft[0]=scale_dB+todB(pcm);
logfft[0]=scale_dB+todB(pcm) + .345; /* + .345 is a hack; the
original todB estimation used on
IEEE 754 compliant machines had a
bug that returned dB values about
a third of a decibel too high.
The bug was harmless because
tunings implicitly took that into
account. However, fixing the bug
in the estimator requires
changing all the tunings as well.
For now, it's easier to sync
things back up here, and
recalibrate the tunings in the
next major model upgrade. */
local_ampmax[i]=logfft[0];
for(j=1;j<n-1;j+=2){
float temp=pcm[j]*pcm[j]+pcm[j+1]*pcm[j+1];
temp=logfft[(j+1)>>1]=scale_dB+.5f*todB(&temp);
temp=logfft[(j+1)>>1]=scale_dB+.5f*todB(&temp) + .345; /* +
.345 is a hack; the original todB
estimation used on IEEE 754
compliant machines had a bug that
returned dB values about a third
of a decibel too high. The bug
was harmless because tunings
implicitly took that into
account. However, fixing the bug
in the estimator requires
changing all the tunings as well.
For now, it's easier to sync
things back up here, and
recalibrate the tunings in the
next major model upgrade. */
if(temp>local_ampmax[i])local_ampmax[i]=temp;
}
......@@ -313,11 +353,13 @@ static int mapping0_forward(vorbis_block *vb){
if(local_ampmax[i]>global_ampmax)global_ampmax=local_ampmax[i];
#if 0
if(vi->channels==2)
if(i==0)
if(vi->channels==2){
if(i==0){
_analysis_output("fftL",seq,logfft,n/2,1,0,0);
else
}else{
_analysis_output("fftR",seq,logfft,n/2,1,0,0);
}
}
#endif
}
......@@ -345,7 +387,20 @@ static int mapping0_forward(vorbis_block *vb){
memset(floor_posts[i],0,sizeof(**floor_posts)*PACKETBLOBS);
for(j=0;j<n/2;j++)
logmdct[j]=todB(mdct+j);
logmdct[j]=todB(mdct+j) + .345; /* + .345 is a hack; the original
todB estimation used on IEEE 754
compliant machines had a bug that
returned dB values about a third
of a decibel too high. The bug
was harmless because tunings
implicitly took that into
account. However, fixing the bug
in the estimator requires
changing all the tunings as well.
For now, it's easier to sync
things back up here, and
recalibrate the tunings in the
next major model upgrade. */
#if 0
if(vi->channels==2){
......@@ -400,12 +455,30 @@ static int mapping0_forward(vorbis_block *vb){
masking. We then do a floor1-specific line fit. If we're
performing bitrate management, the line fit is performed
multiple times for up/down tweakage on demand. */
_vp_offset_and_mix(psy_look,
noise,
tone,
1,
logmask);
#if 0
{
float aotuv[psy_look->n];
#endif
_vp_offset_and_mix(psy_look,
noise,
tone,
1,
logmask,
mdct,
logmdct);
#if 0
if(vi->channels==2){
if(i==0)
_analysis_output("aotuvM1_L",seq,aotuv,psy_look->n,1,1,0);
else
_analysis_output("aotuvM1_R",seq,aotuv,psy_look->n,1,1,0);
}
}
#endif
#if 0
if(vi->channels==2){
......@@ -435,7 +508,9 @@ static int mapping0_forward(vorbis_block *vb){
noise,
tone,
2,
logmask);
logmask,
mdct,
logmdct);
#if 0
if(vi->channels==2){
......@@ -456,7 +531,9 @@ static int mapping0_forward(vorbis_block *vb){
noise,
tone,
0,
logmask);
logmask,
mdct,
logmdct);
#if 0
if(vi->channels==2)
......@@ -523,6 +600,11 @@ static int mapping0_forward(vorbis_block *vb){
psy_look,
info,
mag_memo);
hf_reduction(&ci->psy_g_param,
psy_look,
info,
mag_memo);
}
memset(sortindex,0,sizeof(*sortindex)*vi->channels);
......
......@@ -85,20 +85,12 @@ static static_codebook *_floor_128x17_books[]={
&_huff_book_line_128x17_3sub2,
&_huff_book_line_128x17_3sub3,
};
static static_codebook *_floor_512x17_books[]={
&_huff_book_line_512x17_class1,
&_huff_book_line_512x17_class2,
&_huff_book_line_512x17_class3,
&_huff_book_line_512x17_0sub0,
&_huff_book_line_512x17_1sub0,
&_huff_book_line_512x17_1sub1,
&_huff_book_line_512x17_2sub1,
&_huff_book_line_512x17_2sub2,
&_huff_book_line_512x17_2sub3,
&_huff_book_line_512x17_3sub1,
&_huff_book_line_512x17_3sub2,
&_huff_book_line_512x17_3sub3,
static static_codebook *_floor_256x4low_books[]={
&_huff_book_line_256x4low_class0,
&_huff_book_line_256x4low_0sub0,
&_huff_book_line_256x4low_0sub1,
&_huff_book_line_256x4low_0sub2,
&_huff_book_line_256x4low_0sub3,
};
static static_codebook *_floor_1024x27_books[]={
&_huff_book_line_1024x27_class1,
......@@ -118,6 +110,40 @@ static static_codebook *_floor_1024x27_books[]={
&_huff_book_line_1024x27_4sub2,
&_huff_book_line_1024x27_4sub3,
};
static static_codebook *_floor_2048x27_books[]={
&_huff_book_line_2048x27_class1,
&_huff_book_line_2048x27_class2,
&_huff_book_line_2048x27_class3,
&_huff_book_line_2048x27_class4,
&_huff_book_line_2048x27_0sub0,
&_huff_book_line_2048x27_1sub0,
&_huff_book_line_2048x27_1sub1,
&_huff_book_line_2048x27_2sub0,
&_huff_book_line_2048x27_2sub1,
&_huff_book_line_2048x27_3sub1,
&_huff_book_line_2048x27_3sub2,
&_huff_book_line_2048x27_3sub3,
&_huff_book_line_2048x27_4sub1,
&_huff_book_line_2048x27_4sub2,
&_huff_book_line_2048x27_4sub3,
};
static static_codebook *_floor_512x17_books[]={
&_huff_book_line_512x17_class1,
&_huff_book_line_512x17_class2,
&_huff_book_line_512x17_class3,
&_huff_book_line_512x17_0sub0,
&_huff_book_line_512x17_1sub0,
&_huff_book_line_512x17_1sub1,
&_huff_book_line_512x17_2sub1,
&_huff_book_line_512x17_2sub2,
&_huff_book_line_512x17_2sub3,
&_huff_book_line_512x17_3sub1,
&_huff_book_line_512x17_3sub2,
&_huff_book_line_512x17_3sub3,
};
static static_codebook **_floor_books[10]={
_floor_128x4_books,
......@@ -126,9 +152,9 @@ static static_codebook **_floor_books[10]={
_floor_256x7_books,
_floor_128x11_books,
_floor_128x17_books,
_floor_128x17_books,
_floor_1024x27_books,
_floor_256x4low_books,
_floor_1024x27_books,
_floor_2048x27_books,
_floor_512x17_books,
};
......@@ -165,7 +191,6 @@ static vorbis_info_floor1 _floor[10]={
60,30,500, 1.,18., -1
},
/* 128 x 11 */
{
4,{0,1,2,3},{2,3,3,3},{0,1,2,2},{-1,0,1,2},
......@@ -175,24 +200,21 @@ static vorbis_info_floor1 _floor[10]={
60,30,500, 1,18., -1
},
/* 128 x 17 */
{
6,{0,1,1,2,3,3},{2,3,3,3},{0,1,2,2},{-1,0,1,2},
{{3},{4,5},{-1,6,7,8},{-1,9,10,11}},
2,{0,128, 12,46, 4,8,16, 23,33,70, 2,6,10, 14,19,28, 39,58,90},
60,30,500, 1,18., -1
},
/* 1024 x 17 */
/* 256 x 4 (low bitrate version) */
{
6,{0,1,1,2,3,3},{2,3,3,3},{0,1,2,2},{-1,0,1,2},
{{3},{4,5},{-1,6,7,8},{-1,9,10,11}},
2,{0,1024, 93,372, 33,65,130, 186,260,556,
14,46,79, 111,158,220, 312,464,720},
60,30,500, 1,18., -1 /* lowpass! */
1,{0},{4},{2},{0},
{{1,2,3,4}},
4,{0,256, 66,16,32,140},
60,30,500, 1.,18., -1
},
/* 1024 x 27 */
{
......
......@@ -20,7 +20,7 @@ static double _psy_lowpass_11[3]={4.5,5.5,30.,};
static att3 _psy_tone_masteratt_11[3]={
{{ 30, 25, 12}, 0, 0}, /* 0 */
{{ 30, 25, 12}, 0, 0}, /* 0 */
{{ 20, 0, -14}, 0, 1.}, /* 0 */
{{ 20, 0, -14}, 0, 0}, /* 0 */
};
static vp_adjblock _vp_tonemask_adj_11[3]={
......
This diff is collapsed.
......@@ -21,6 +21,15 @@
/***** residue backends *********************************************/
static vorbis_info_residue0 _residue_44_low={
0,-1, -1, 9,-1,
/* 0 1 2 3 4 5 6 7 */
{0},
{-1},
{ .5, 1.5, 2.5, 2.5, 4.5, 8.5, 16.5, 32.5},
{ .5, .5, .5, 999., 4.5, 8.5, 16.5, 32.5},
};
static vorbis_info_residue0 _residue_44_mid={
0,-1, -1, 10,-1,
/* 0 1 2 3 4 5 6 7 8 */
......@@ -39,38 +48,57 @@ static vorbis_info_residue0 _residue_44_high={
{ .5, 1.5, 2.5, 3.5, 4.5, 8.5, 16.5, 71.5,157.5},
};
static static_bookblock _resbook_44s_n1={
{
{0},{0,0,&_44cn1_s_p1_0},{0,0,&_44cn1_s_p2_0},
{0,0,&_44cn1_s_p3_0},{0,0,&_44cn1_s_p4_0},{0,0,&_44cn1_s_p5_0},
{&_44cn1_s_p6_0,&_44cn1_s_p6_1},{&_44cn1_s_p7_0,&_44cn1_s_p7_1},
{&_44cn1_s_p8_0,&_44cn1_s_p8_1,&_44cn1_s_p8_2}
}
};
static static_bookblock _resbook_44sm_n1={
{
{0},{0,0,&_44cn1_sm_p1_0},{0,0,&_44cn1_sm_p2_0},
{0,0,&_44cn1_sm_p3_0},{0,0,&_44cn1_sm_p4_0},{0,0,&_44cn1_sm_p5_0},
{&_44cn1_sm_p6_0,&_44cn1_sm_p6_1},{&_44cn1_sm_p7_0,&_44cn1_sm_p7_1},
{&_44cn1_sm_p8_0,&_44cn1_sm_p8_1,&_44cn1_sm_p8_2}
}
};
static static_bookblock _resbook_44s_0={
{
{0},{0,0,&_44c0_s_p1_0},{0,0,&_44c0_s_p2_0},{0,0,&_44c0_s_p3_0},
{0,0,&_44c0_s_p4_0},{0,0,&_44c0_s_p5_0},{0,0,&_44c0_s_p6_0},
{&_44c0_s_p7_0,&_44c0_s_p7_1},{&_44c0_s_p8_0,&_44c0_s_p8_1},
{&_44c0_s_p9_0,&_44c0_s_p9_1,&_44c0_s_p9_2}
{0},{0,0,&_44c0_s_p1_0},{0,0,&_44c0_s_p2_0},
{0,0,&_44c0_s_p3_0},{0,0,&_44c0_s_p4_0},{0,0,&_44c0_s_p5_0},
{&_44c0_s_p6_0,&_44c0_s_p6_1},{&_44c0_s_p7_0,&_44c0_s_p7_1},
{&_44c0_s_p8_0,&_44c0_s_p8_1,&_44c0_s_p8_2}
}
};
static static_bookblock _resbook_44sm_0={
{
{0},{0,0,&_44c0_sm_p1_0},{0,0,&_44c0_sm_p2_0},{0,0,&_44c0_sm_p3_0},
{0,0,&_44c0_sm_p4_0},{0,0,&_44c0_sm_p5_0},{0,0,&_44c0_sm_p6_0},
{&_44c0_sm_p7_0,&_44c0_sm_p7_1},{&_44c0_sm_p8_0,&_44c0_sm_p8_1},
{&_44c0_sm_p9_0,&_44c0_sm_p9_1,&_44c0_sm_p9_2}
{0},{0,0,&_44c0_sm_p1_0},{0,0,&_44c0_sm_p2_0},
{0,0,&_44c0_sm_p3_0},{0,0,&_44c0_sm_p4_0},{0,0,&_44c0_sm_p5_0},
{&_44c0_sm_p6_0,&_44c0_sm_p6_1},{&_44c0_sm_p7_0,&_44c0_sm_p7_1},
{&_44c0_sm_p8_0,&_44c0_sm_p8_1,&_44c0_sm_p8_2}
}
};
static static_bookblock _resbook_44s_1={
{
{0},{0,0,&_44c1_s_p1_0},{0,0,&_44c1_s_p2_0},{0,0,&_44c1_s_p3_0},
{0,0,&_44c1_s_p4_0},{0,0,&_44c1_s_p5_0},{0,0,&_44c1_s_p6_0},
{&_44c1_s_p7_0,&_44c1_s_p7_1},{&_44c1_s_p8_0,&_44c1_s_p8_1},
{&_44c1_s_p9_0,&_44c1_s_p9_1,&_44c1_s_p9_2}
{0},{0,0,&_44c1_s_p1_0},{0,0,&_44c1_s_p2_0},
{0,0,&_44c1_s_p3_0},{0,0,&_44c1_s_p4_0},{0,0,&_44c1_s_p5_0},
{&_44c1_s_p6_0,&_44c1_s_p6_1},{&_44c1_s_p7_0,&_44c1_s_p7_1},
{&_44c1_s_p8_0,&_44c1_s_p8_1,&_44c1_s_p8_2}
}
};
static static_bookblock _resbook_44sm_1={
{
{0},{0,0,&_44c1_sm_p1_0},{0,0,&_44c1_sm_p2_0},{0,0,&_44c1_sm_p3_0},
{0,0,&_44c1_sm_p4_0},{0,0,&_44c1_sm_p5_0},{0,0,&_44c1_sm_p6_0},
{&_44c1_sm_p7_0,&_44c1_sm_p7_1},{&_44c1_sm_p8_0,&_44c1_sm_p8_1},
{&_44c1_sm_p9_0,&_44c1_sm_p9_1,&_44c1_sm_p9_2}
{0},{0,0,&_44c1_sm_p1_0},{0,0,&_44c1_sm_p2_0},
{0,0,&_44c1_sm_p3_0},{0,0,&_44c1_sm_p4_0},{0,0,&_44c1_sm_p5_0},
{&_44c1_sm_p6_0,&_44c1_sm_p6_1},{&_44c1_sm_p7_0,&_44c1_sm_p7_1},
{&_44c1_sm_p8_0,&_44c1_sm_p8_1,&_44c1_sm_p8_2}
}
};
static static_bookblock _resbook_44s_2={
{
{0},{0,0,&_44c2_s_p1_0},{0,0,&_44c2_s_p2_0},{0,0,&_44c2_s_p3_0},
......@@ -148,25 +176,34 @@ static static_bookblock _resbook_44s_9={
}
};
static vorbis_residue_template _res_44s_n1[]={
{2,0, &_residue_44_low,
&_huff_book__44cn1_s_short,&_huff_book__44cn1_sm_short,
&_resbook_44s_n1,&_resbook_44sm_n1},
{2,0, &_residue_44_low,
&_huff_book__44cn1_s_long,&_huff_book__44cn1_sm_long,
&_resbook_44s_n1,&_resbook_44sm_n1}
};
static vorbis_residue_template _res_44s_0[]={
{2,0, &_residue_44_mid,
{2,0, &_residue_44_low,
&_huff_book__44c0_s_short,&_huff_book__44c0_sm_short,
&_resbook_44s_0,&_resbook_44sm_0},
{2,0, &_residue_44_mid,
{2,0, &_residue_44_low,
&_huff_book__44c0_s_long,&_huff_book__44c0_sm_long,
&_resbook_44s_0,&_resbook_44sm_0}
};
static vorbis_residue_template _res_44s_1[]={
{2,0, &_residue_44_mid,
{2,0, &_residue_44_low,
&_huff_book__44c1_s_short,&_huff_book__44c1_sm_short,
&_resbook_44s_1,&_resbook_44sm_1},
{2,0, &_residue_44_mid,
{2,0, &_residue_44_low,
&_huff_book__44c1_s_long,&_huff_book__44c1_sm_long,
&_resbook_44s_1,&_resbook_44sm_1}
};
static vorbis_residue_template _res_44s_2[]={
{2,0, &_residue_44_mid,
&_huff_book__44c2_s_short,&_huff_book__44c2_s_short,
......@@ -241,6 +278,7 @@ static vorbis_residue_template _res_44s_9[]={
};
static vorbis_mapping_template _mapres_template_44_stereo[]={
{ _map_nominal, _res_44s_n1 }, /* -1 */
{ _map_nominal, _res_44s_0 }, /* 0 */
{ _map_nominal, _res_44s_1 }, /* 1 */
{ _map_nominal, _res_44s_2 }, /* 2 */
......@@ -252,3 +290,5 @@ static vorbis_mapping_template _mapres_template_44_stereo[]={
{ _map_nominal, _res_44s_8 }, /* 8 */
{ _map_nominal, _res_44s_9 }, /* 9 */
};
......@@ -56,6 +56,18 @@ static vorbis_info_mapping0 _map_nominal_u[2]={
{1, {0,0}, {1}, {1}, 0,{0},{0}}
};
static static_bookblock _resbook_44u_n1={
{
{0},
{0,0,&_44un1__p1_0},
{0,0,&_44un1__p2_0},
{0,0,&_44un1__p3_0},
{0,0,&_44un1__p4_0},
{0,0,&_44un1__p5_0},
{&_44un1__p6_0,&_44un1__p6_1},
{&_44un1__p7_0,&_44un1__p7_1,&_44un1__p7_2}
}
};
static static_bookblock _resbook_44u_0={
{
{0},
......@@ -187,6 +199,15 @@ static static_bookblock _resbook_44u_9={
}
};
static vorbis_residue_template _res_44u_n1[]={
{1,0, &_residue_44_low_un,
&_huff_book__44un1__short,&_huff_book__44un1__short,
&_resbook_44u_n1,&_resbook_44u_n1},
{1,0, &_residue_44_low_un,
&_huff_book__44un1__long,&_huff_book__44un1__long,
&_resbook_44u_n1,&_resbook_44u_n1}
};
static vorbis_residue_template _res_44u_0[]={
{1,0, &_residue_44_low_un,
&_huff_book__44u0__short,&_huff_book__44u0__short,
......@@ -283,6 +304,7 @@ static vorbis_residue_template _res_44u_9[]={
};
static vorbis_mapping_template _mapres_template_44_uncoupled[]={
{ _map_nominal_u, _res_44u_n1 }, /* -1 */
{ _map_nominal_u, _res_44u_0 }, /* 0 */
{ _map_nominal_u, _res_44u_1 }, /* 1 */
{ _map_nominal_u, _res_44u_2 }, /* 2 */
......
......@@ -22,7 +22,7 @@ static int blocksize_11[2]={
};
static int _floor_mapping_11[2]={
1,1,
6,6,
};
static double rate_mapping_11[3]={
......
......@@ -15,33 +15,22 @@
********************************************************************/
static double rate_mapping_32[11]={
28000.,35000.,45000.,56000.,60000.,
static double rate_mapping_32[12]={
18000.,28000.,35000.,45000.,56000.,60000.,
75000.,90000.,100000.,115000.,150000.,190000.,
};
static double rate_mapping_32_un[11]={
42000.,52000.,64000.,72000.,78000.,
static double rate_mapping_32_un[12]={
30000.,42000.,52000.,64000.,72000.,78000.,
86000.,92000.,110000.,120000.,140000.,190000.,
};
static double rate_mapping_32_low[2]={
20000.,28000.
};
static double rate_mapping_32_un_low[2]={
24000.,42000.,
};
static double _psy_lowpass_32_low[2]={
13.,13.,
};
static double _psy_lowpass_32[11]={
13.,13.,14.,15.,99.,99.,99.,99.,99.,99.,99.
static double _psy_lowpass_32[12]={
12.3,13.,13.,14.,15.,99.,99.,99.,99.,99.,99.,99.
};
ve_setup_data_template ve_setup_32_stereo={
10,
11,
rate_mapping_32,
quality_mapping_44,
2,
......@@ -92,7 +81,7 @@ ve_setup_data_template ve_setup_32_stereo={
};
ve_setup_data_template ve_setup_32_uncoupled={
10,
11,
rate_mapping_32_un,
quality_mapping_44,
-1,
......@@ -123,7 +112,7 @@ ve_setup_data_template ve_setup_32_uncoupled={
{_noise_start_short_44,_noise_start_long_44},
{_noise_part_short_44,_noise_part_long_44},
_noise_thresh_44_2,
_noise_thresh_44,
_psy_ath_floater,
_psy_ath_abs,
......@@ -141,106 +130,3 @@ ve_setup_data_template ve_setup_32_uncoupled={
_mapres_template_44_uncoupled
};
ve_setup_data_template ve_setup_32_stereo_low={
1,
rate_mapping_32_low,
quality_mapping_44_stereo_low,
2,
26000,
40000,
blocksize_short_44_low,
blocksize_long_44_low,
_psy_tone_masteratt_44_low,
_psy_tone_0dB,
_psy_tone_suppress,
_vp_tonemask_adj_otherblock,
_vp_tonemask_adj_longblock,