?? sp_rom.h
字號:
/***************************************************************************
*
* Purpose: Define the structure of the Global Constants
*
**************************************************************************/
#ifndef ___ROM
#define ___ROM
#include "typedefs.h"
#include "mathhalf.h"
#include "mathdp31.h"
/*_________________________________________________________________________
| |
| Data Types |
|_________________________________________________________________________|
*/
/* gsp0 vector quantizer */
/*-----------------------*/
#define GSP0_NUM_OF_TABLES 4
#define GSP0_NUM 32
#define GSP0_VECTOR_SIZE 5
extern ShortwordRom pppsrGsp0
[GSP0_NUM_OF_TABLES][GSP0_NUM][GSP0_VECTOR_SIZE];
/* unvoiced code vectors */
/*-----------------------*/
#define UVCODEVEC_NUM_OF_CODE_BOOKS 2
#define UVCODEVEC_NUM_OF_CODE_BITS 7
extern ShortwordRom pppsrUvCodeVec
[UVCODEVEC_NUM_OF_CODE_BOOKS][UVCODEVEC_NUM_OF_CODE_BITS][S_LEN];
/* voiced code vectors */
/*---------------------*/
#define VCDCODEVEC_NUM_OF_CODE_BOOKS 1
#define VCDCODEVEC_NUM_OF_CODE_BITS 9
extern ShortwordRom pppsrVcdCodeVec
[VCDCODEVEC_NUM_OF_CODE_BOOKS][VCDCODEVEC_NUM_OF_CODE_BITS][S_LEN];
/* vector quantizer tables */
/*-------------------------*/
#define QUANT_NUM_OF_TABLES 3
#define QUANT1_NUM_OF_BITS 11
#define QUANT1_NUM_OF_ROWS (1 << QUANT1_NUM_OF_BITS)
#define QUANT1_NUM_OF_STAGES 3
#define QUANT1_NUM_OF_WORDS (QUANT1_NUM_OF_ROWS*QUANT1_NUM_OF_STAGES/2)
#define QUANT2_NUM_OF_BITS 9
#define QUANT2_NUM_OF_ROWS (1 << QUANT2_NUM_OF_BITS)
#define QUANT2_NUM_OF_STAGES 3
#define QUANT2_NUM_OF_WORDS (QUANT2_NUM_OF_ROWS*QUANT2_NUM_OF_STAGES/2)
#define QUANT3_NUM_OF_BITS 8
#define QUANT3_NUM_OF_ROWS (1 << QUANT3_NUM_OF_BITS)
#define QUANT3_NUM_OF_STAGES 4
#define QUANT3_NUM_OF_WORDS (QUANT3_NUM_OF_ROWS*QUANT3_NUM_OF_STAGES/2)
extern ShortwordRom psrQuant1[QUANT1_NUM_OF_WORDS];
extern ShortwordRom psrQuant2[QUANT2_NUM_OF_WORDS];
extern ShortwordRom psrQuant3[QUANT3_NUM_OF_WORDS];
/* lpc pre-quantizer */
/*-------------------*/
#define PREQ1_NUM_OF_BITS 6
#define PREQ1_NUM_OF_ROWS (1 << PREQ1_NUM_OF_BITS)
#define PREQ1_NUM_OF_STAGES 3
#define PREQ1_NUM_OF_WORDS (PREQ1_NUM_OF_ROWS*PREQ1_NUM_OF_STAGES/2)
#define PREQ2_NUM_OF_BITS 5
#define PREQ2_NUM_OF_ROWS (1 << PREQ2_NUM_OF_BITS)
#define PREQ2_NUM_OF_STAGES 3
#define PREQ2_NUM_OF_WORDS (PREQ2_NUM_OF_ROWS*PREQ2_NUM_OF_STAGES/2)
#define PREQ3_NUM_OF_BITS 4
#define PREQ3_NUM_OF_ROWS (1 << PREQ3_NUM_OF_BITS)
#define PREQ3_NUM_OF_STAGES 4
#define PREQ3_NUM_OF_WORDS (PREQ3_NUM_OF_ROWS*PREQ3_NUM_OF_STAGES/2)
extern ShortwordRom psrPreQ1[PREQ1_NUM_OF_WORDS];
extern ShortwordRom psrPreQ2[PREQ2_NUM_OF_WORDS];
extern ShortwordRom psrPreQ3[PREQ3_NUM_OF_WORDS];
/* size of the vq subset in the kth segment */
/*------------------------------------------*/
extern ShortwordRom psrQuantSz[QUANT_NUM_OF_TABLES];
/* pre-quantizer size */
/*--------------------*/
extern ShortwordRom psrPreQSz[QUANT_NUM_OF_TABLES];
/* reflection coeff scalar quantizer */
/*-----------------------------------*/
#define SQUANT_NUM_OF_BITS 8
#define SQUANT_NUM_OF_ROWS (1 << SQUANT_NUM_OF_BITS)
extern ShortwordRom psrSQuant[SQUANT_NUM_OF_ROWS];
/* index structure for LPC Vector Quantizer */
/*------------------------------------------*/
struct IsubLHn
{ /* index structure for LPC Vector
* Quantizer */
ShortwordRom l; /* lowest index index range
* from 1..NP */
ShortwordRom h; /* highest index */
ShortwordRom len; /* h-l+1 */
};
extern struct IsubLHn psvqIndex[QUANT_NUM_OF_TABLES];
/* square root of p0 table */
/*-------------------------*/
#define SQRTP0_NUM_OF_BITS 5
#define SQRTP0_NUM_OF_ROWS (1 << SQRTP0_NUM_OF_BITS)
#define SQRTP0_NUM_OF_MODES 3
extern ShortwordRom ppsrSqrtP0[SQRTP0_NUM_OF_MODES][SQRTP0_NUM_OF_ROWS];
/* interpolation filter used for C and G */
/*---------------------------------------*/
#define CGINTFILT_MACS 6
extern ShortwordRom ppsrCGIntFilt[CGINTFILT_MACS][OS_FCTR];
/* interpolation filter used pitch */
/*---------------------------------*/
#define PVECINTFILT_MACS 10
extern ShortwordRom ppsrPVecIntFilt[PVECINTFILT_MACS][OS_FCTR];
/* fractional pitch lag table lag*OS_FCTR */
/*----------------------------------------*/
#define LAGTBL_NUM_OF_ROWS 256
extern ShortwordRom psrLagTbl[LAGTBL_NUM_OF_ROWS];
/* R0 decision value table defines range (not the levels themselves */
/*------------------------------------------------------------------*/
#define R0DECTBL_NUM_OF_R0BITS 5
#define R0DECTBL_NUM_OF_ROWS ((1 << R0DECTBL_NUM_OF_R0BITS)*2 - 1)
extern ShortwordRom psrR0DecTbl[R0DECTBL_NUM_OF_ROWS];
/* high pass filter coefficients */
/*-------------------------------*/
#define HPFCOEFS_NUM_OF_CODES 10
extern ShortwordRom psrHPFCoefs[HPFCOEFS_NUM_OF_CODES];
/* spectral smoothing coefficients */
/*---------------------------------*/
#define NWCOEFS_NUM_OF_CODES 20
extern ShortwordRom psrNWCoefs[NWCOEFS_NUM_OF_CODES];
/* spectral smoothing coefficients for FLAT */
/*------------------------------------------*/
#define FLATSSTCOEFS_NUM_OF_CODES 10
extern LongwordRom pL_rFlatSstCoefs[FLATSSTCOEFS_NUM_OF_CODES];
extern ShortwordRom psrOldCont[4];
extern ShortwordRom psrNewCont[4];
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -