📄 const.h
字号:
;*--------------------------------------------------------------*
;* const.h
;* ~~~~~~
;* Constants use in G.729A
;*
;*--------------------------------------------------------------*
;--------------------------------------------------------------------------
; Maximum and minimum
;--------------------------------------------------------------------------
MAX_16 .set 07fffh
MIN_16 .set 08000h
;*--------------------------------------------------------------------------
;* Codec constant parameters (coder, decoder, and postfilter)
;*--------------------------------------------------------------------------
L_TOTAL .set 240 ;/* Total size of speech buffer. */
L_WINDOW .set 240 ;/* Window size in LP analysis. */
L_NEXT .set 40 ;/* Lookahead in LP analysis. */
L_FRAME .set 80 ;/* Frame size. */
L_SUBFR .set 40 ;/* Subframe size. */
M .set 10 ;/* Order of LP filter. */
MP1 .set (M+1) ;/* Order of LP filter + 1 */
MM1 .set (M-1) ;/* Order of LP filter - 1 */
PIT_MIN .set 20 ;/* Minimum pitch lag. */
PIT_MAX .set 143 ;/* Maximum pitch lag. */
L_INTERPOL .set (10+1) ;/* Length of filter for interpolation. */
PRM_SIZE .set 11 ;/* Size of vector of analysis parameters. */
SERIAL_SIZE .set (80+2) ;/* Bits/frame + bfi+ number of speech bits */
SHARPMAX .set 13017 ;/* Maximum value of pitch sharpening 0.8 Q14 */
SHARPMIN .set 3277 ;/* Minimum value of pitch sharpening 0.2 Q14 */
L_SUBFRP1 .set (L_SUBFR + 1)
GPCLIP .set 15564 ;/* Maximum pitch gain if taming is needed Q14*/
GPCLIP2 .set 481 ;/* Maximum pitch gain if taming is needed Q9 */
GP0999 .set 16383 ;/* Maximum pitch gain if taming is needed */
;L_THRESH_ERR .set 983040000L ;/* Error threshold taming 16384. * 60000. */
THRESH_ERR .set 30000 ; THRESH_ERR = L_THRESH_ERR >> 15
;*--------------------------------------------------------------------------
;* PWF constant parameters
;*--------------------------------------------------------------------------
A1_Q11 .set 4567 ;/* 2.23 in Q11 */
A2_Q11 .set 11776 ;/* 5.75 in Q11 */
A3_Q11 .set 27443 ;/* 13.40 in Q11 */
;L_B1 .set 3194L ;/* 0.78 in Q22 */
;L_B2 .set 15924L ;/* 3.90 in Q22 */
;L_B3 .set 54886L ;/* 11.16 in Q22 */
SEG1 .set 1299 ;/* 0.6341 in Q11 */
SEG2 .set 1815 ;/* 0.8864 in Q11 */
SEG3 .set 1944 ;/* 0.9490 in Q11 */
B1_Q11 .set 1597
B2_Q11 .set 7987
B3_Q11 .set 22856
;SEG1 .set 20778 ;/* 0.6341 in Q15 */
;SEG2 .set 29046 ;/* 0.8864 in Q15 */
;SEG3 .set 31097 ;/* 0.9490 in Q15 */
THRESH_L1 .set -3562 ;/* -1.74 in Q11 */
THRESH_L2 .set -3116 ;/* -1.52 in Q11 */
THRESH_H1 .set 1336 ;/* 0.65 in Q11 */
THRESH_H2 .set 890 ;/* 0.43 in Q11 */
;GAMMA1_0 .set 32113 ;/* 0.98 in Q15 */
;GAMMA1_1 .set 30802 ;/* 0.94 in Q15 */
;GAMMA2_0_L .set 13107 ;/* 0.40 in Q15 */
;GAMMA2_0_H .set 22938 ;/* 0.70 in Q15 */
;GAMMA2_1 .set 19661 ;/* 0.60 in Q15 */
ALPHA .set 19302 ;/* 6*pi in Q10 */
BETA .set 1024 ;/* 1 in Q10 */
;*--------------------------------------------------------------------------
;* LTP constant parameters
;*--------------------------------------------------------------------------
THRESHPIT .set 27853 ;/* Threshold to favor small pitch 0.85 Q15 */
UP_SAMP .set 3 ;/* upsampling factor for fractional pitch */
L_INTER4 .set 4 ;/* length/2 for interpolation filter */
FIR_SIZE_ANA .set (UP_SAMP*L_INTER4+1)
L_INTER10 .set 10 ;/* length/2 for interpolation filter */
FIR_SIZE_SYN .set (UP_SAMP*L_INTER10+1)
;*--------------------------------------------------------------------------
;* fixed codebook excitation.
;*--------------------------------------------------------------------------
;*--------------------------------------------------------------------------
;* FCB constant parameters
;*--------------------------------------------------------------------------
DIM_RR .set 616 ;/* size of correlation matrix */
NB_POS .set 8 ;/* */
STEP .set 5 ;/* spacing for individual pulse */
MSIZE .set 64
THRESHFCB .set 13107 ;/* 0.4 in Q15 */
MAX_TIME .set 75 ;/* maximum number of iterations */
;*-------------------------------------------------------------------------
;* LSP quantizer constant parameters
;*-------------------------------------------------------------------------
NC .set 5 ;/* NC = M/2 */
MA_NP .set 4 ;/* MA prediction order for LSP */
MODE .set 2 ;/* number of modes for MA prediction */
NC0_B .set 7 ;/* number of first stage bits */
NC1_B .set 5 ;/* number of second stage bits */
NC0 .set (1<<NC0_B) ;/* number of entries in first stage */
NC1 .set (1<<NC1_B) ;/* number of entries in second stage */
L_LIMIT .set 40 ;/* minimum lsf value Q13:0.005 */
M_LIMIT .set 25681 ;/* maximum lsf value Q13:3.135 */
GAP1 .set 10 ;/* bandwidth expansion factor Q13 */
GAP2 .set 5 ;/* bandwidth expansion factor Q13 */
GAP3 .set 321 ;/* bandwidth expansion factor Q13 */
;/////////////////////// Modify by Yuxb \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
; The number of points at which the polynomials F1(z) and F2(z) are
; evaluated,is reduced to 50 (instead of 60).
;GRID_POINTS .set 60 ;/* search grid */
GRID_POINTS .set 50 ;/* search grid
;\\\\\\\\\\\\\\\\\\\\\\\\ FRI JUL 16 1999 ////////////////////////////////
PI04 .set 1029 ;/* Q13 pi*0.04 */
PI92 .set 23677 ;/* Q13 pi*0.92 */
CONST10 .set 10*(1<<11) ;/* Q11 10.0 */
CONST12 .set 19661 ;/* Q14 1.2 */
;*--------------------------------------------------------------------------
;* gain VQ constants.
;*--------------------------------------------------------------------------
NCODE1_B .set 3 ;/* number of Codebook-bit */
NCODE2_B .set 4 ;/* number of Codebook-bit */
NCODE1 .set (1<<NCODE1_B) ;/* Codebook 1 size */
NCODE2 .set (1<<NCODE2_B) ;/* Codebook 2 size */
NCAN1 .set 4 ;/* Pre-selecting order for #1 */
NCAN2 .set 8 ;/* Pre-selecting order for #2 */
INV_COEF .set -17103 ;/* Q19 */
;*--------------------------------------------------------------------------
;* Postfilter constants and functions
;*--------------------------------------------------------------------------
;/* short term pst parameters : */
GAMMA1_PST .set 22938 ;/* denominator weighting factor (Q15) */
GAMMA2_PST .set 18022 ;/* numerator weighting factor (Q15) */
LONG_H_ST .set 20 ;/* impulse response length */
GAMMA3_PLUS .set 6554 ;/* tilt weighting factor when k1>0 (Q15) */
GAMMA3_MINUS .set 29491 ;/* tilt weighting factor when k1<0 (Q15) */
;/* long term pst parameters : */
F_UP_PST .set 8 ;/* resolution for fractional delay */
LH2_S .set 4 ;/* length of short interp. subfilters */
L2_LH2_L .set 4 ;/* log2(LH2_L) */
LH2_L .set (1 << L2_LH2_L)
MIN_GPLT .set 21845 ;/* LT gain minimum (Q15) */
LH_UP_S .set (LH2_S/2)
LH_UP_SM1 .set (LH_UP_S-1)
LH_UP_L .set (LH2_L/2)
LH2_L_P1 .set (LH2_L + 1)
;/* gain adjustment parameters */
AGC_FAC .set 32358 ;/* gain adjustment factor 0.9875 (Q15) */
AGC_FAC1 .set 32768 - AGC_FAC
;/* Array sizes */
MEM_RES2 .set (PIT_MAX + 1 + LH_UP_L)
SIZ_RES2 .set (MEM_RES2 + L_SUBFR)
SIZ_Y_UP .set ((F_UP_PST-1) * L_SUBFRP1)
SIZ_TAB_HUP_L .set ((F_UP_PST-1) * LH2_L)
SIZ_TAB_HUP_S .set ((F_UP_PST-1) * LH2_S)
;*-------------------------------------------------------------------------
;* Bitstream constants and functions
;*--------------------------------------------------------------------------
BIT_0 .set 0x007f ;/* definition of zero-bit in bit-stream */
BIT_1 .set 0x0081 ;/* definition of one-bit in bit-stream */
SYNC_WORD .set 0x6b21 ;/* definition of frame erasure flag */
SIZE_WORD .set 80 ;/* number of speech bits */
Sig1 .set 1
Algthm .set 35
Fixed .set 120
Tame .set 128
Pitch .set 1835
Lsp .set 2232
Speech .set 3750
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -