home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
AmigActive 6
/
AACD06.ISO
/
AACD
/
Sound
/
LAME
/
Source
/
loop-pvt.h
< prev
next >
Wrap
C/C++ Source or Header
|
1999-06-03
|
6KB
|
177 lines
/**********************************************************************
* ISO MPEG Audio Subgroup Software Simulation Group (1996)
* ISO 13818-3 MPEG-2 Audio Encoder - Lower Sampling Frequency Extension
*
* $Id: loop-pvt.h,v 1.1 1996/02/14 04:04:23 rowlands Exp $
*
* Private interface declarations for loop.c
*
* $Log: loop-pvt.h,v $
* Revision 1.1 1996/02/14 04:04:23 rowlands
* Initial revision
*
* Received from Mike Coleman
**********************************************************************/
#ifndef LOOP_PVT_H
#define LOOP_PVT_H
/*
Revision History:
Date Programmer Comment
========== ========================= ===============================
1995/10/01 mc@fivebats.com created
*/
void outer_loop( double xr[2][2][576], /*vector of the magnitudees of the spectral values */
int mean_bits,
int VBRbits[2][2],
int bit_rate,
int best_over[2],
III_psy_xmin *l3_xmin, /* the allowed distortion of the scalefactor */
int l3_enc[2][2][576], /* vector of quantized values ix(0..575) */
frame_params *fr_ps,
III_scalefac_t *scalefac, /* scalefactors */
int gr,
int ch,
III_side_info_t *l3_side,
III_psy_ratio *ratio,
double pe[2][2],
double ms_ratio[2]);
void outer_loop_old( double xr[2][2][576], /*vector of the magnitudees of the spectral values */
int mean_bits,
III_psy_xmin *l3_xmin, /* the allowed distortion of the scalefactor */
int l3_enc[2][2][576], /* vector of quantized values ix(0..575) */
frame_params *fr_ps,
III_scalefac_t *scalefac, /* scalefactors */
int gr,
int ch,
III_side_info_t *l3_side,
III_psy_ratio *ratio, double pe[2][2]);
int part2_length( III_scalefac_t *scalefac,
frame_params *fr_ps,
int gr,
int ch,
III_side_info_t *si );
int quantanf_init( double xr[576] );
int inner_loop( double xr[2][2][576], double xrpow[2][2][576],
int l3_enc[2][2][576],
int max_bits,
gr_info *cod_info,
int gr,
int ch );
void calc_xmin( double xr[2][2][576],
III_psy_ratio *ratio,
gr_info *cod_info,
III_psy_xmin *l3_xmin,
int gr,
int ch );
double xr_max( double xr[576],
unsigned int begin,
unsigned int end );
void calc_scfsi( double xr[576],
III_side_info_t *l3_side,
III_psy_xmin *l3_xmin,
int ch,
int gr );
void gr_deco( gr_info *cod_info );
int count_bit( int ix[576], unsigned int start, unsigned int end, unsigned int table);
int bigv_bitcount( int ix[576], gr_info *cod_info );
int choose_table( int max);
void bigv_tab_select( int ix[576], gr_info *cod_info );
void subdivide( gr_info *cod_info );
int count1_bitcount( int ix[576], gr_info *cod_info );
void calc_runlen( int ix[576],
gr_info *cod_info );
int scale_bitcount( III_scalefac_t *scalefac,
gr_info *cod_info,
int gr,
int ch );
void calc_noise( double xr[576],
int ix[576],
gr_info *cod_info,
double xfsf[4][CBLIMIT]);
int calc_noise1( double xr[576],
int ix[576],
gr_info *cod_info,
double xfsf[4][CBLIMIT],
int distort[4][CBLIMIT],
III_psy_xmin *l3_xmin,
int gr, int ch, double noise);
void calc_noise2( double xr[2][576],
int ix[2][576],
gr_info *cod_info[2],
double xfsf[2][4][CBLIMIT],
int distort[2][4][CBLIMIT],
III_psy_xmin *l3_xmin,
int gr, int ch, int over[2], double noise[2]);
int loop_break( III_scalefac_t *scalefac,
gr_info *cod_info,
int gr,
int ch );
void preemphasis( double xr[576],
double xfsf[4][CBLIMIT],
III_psy_xmin *l3_xmin,
int gr,
int ch,
III_side_info_t *l3_side );
int preemphasis2( double xr[576], double xrpow[576],
III_psy_xmin *l3_xmin,
int gr,
int ch,
III_side_info_t *l3_side,
int distort[4][CBLIMIT] );
int amp_scalefac_bands( double xr[576],
double xfsf[4][CBLIMIT],
III_psy_xmin *l3_xmin,
III_side_info_t *l3_side,
III_scalefac_t *scalefac,
int gr,
int ch,
int iteration);
int amp_scalefac_bands2( double xr[576], double xrpow[576],
III_psy_xmin *l3_xmin,
III_side_info_t *l3_side,
III_scalefac_t *scalefac,
int gr,
int ch,
int iteration,
int distort[4][CBLIMIT]);
void quantize( double xr[576],
int ix[576],
gr_info *cod_info );
void quantize_xrpow( double xr[576],
int ix[576],
gr_info *cod_info );
int ix_max( int ix[576],
unsigned int begin,
unsigned int end );
int
new_choose_table( int ix[576],
unsigned int begin,
unsigned int end, int * s );
/* New SS 20-12-96 */
int bin_search_StepSize(int desired_rate, double start, int bot, int ix[576],
double xrs[576], double xrspow[576], gr_info * cod_info);
int count_bits();
#endif