⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ilbc_define.h

📁 KphoneSI (kpsi) is a SIP (Session Initiation Protocol) user agent for Linux, with which you can in
💻 H
字号:
   /******************************************************************       iLBC Speech Coder ANSI-C Source Code       iLBC_define.h       Copyright (C) The Internet Society (2004).       All Rights Reserved.   ******************************************************************/   #include <string.h>   #ifndef __iLBC_ILBCDEFINE_H   #define __iLBC_ILBCDEFINE_H   /* general codec settings */   #define FS                      (float)8000.0   #define BLOCKL_20MS             160   #define BLOCKL_30MS             240   #define BLOCKL_MAX              240   #define NSUB_20MS               4   #define NSUB_30MS               6   #define NSUB_MAX            6   #define NASUB_20MS              2   #define NASUB_30MS              4   #define NASUB_MAX               4   #define SUBL                40   #define STATE_LEN               80   #define STATE_SHORT_LEN_30MS    58   #define STATE_SHORT_LEN_20MS    57   /* LPC settings */   #define LPC_FILTERORDER         10   #define LPC_CHIRP_SYNTDENUM     (float)0.9025   #define LPC_CHIRP_WEIGHTDENUM   (float)0.4222   #define LPC_LOOKBACK        60   #define LPC_N_20MS              1   #define LPC_N_30MS              2   #define LPC_N_MAX               2   #define LPC_ASYMDIFF        20   #define LPC_BW                  (float)60.0   #define LPC_WN                  (float)1.0001   #define LSF_NSPLIT              3   #define LSF_NUMBER_OF_STEPS     4   #define LPC_HALFORDER           (LPC_FILTERORDER/2)   /* cb settings */   #define CB_NSTAGES              3   #define CB_EXPAND               2   #define CB_MEML                 147   #define CB_FILTERLEN        2*4   #define CB_HALFFILTERLEN    4   #define CB_RESRANGE             34   #define CB_MAXGAIN              (float)1.3   /* enhancer */   #define ENH_BLOCKL              80  /* block length */   #define ENH_BLOCKL_HALF         (ENH_BLOCKL/2)   #define ENH_HL                  3   /* 2*ENH_HL+1 is number blocks                                          in said second sequence */   #define ENH_SLOP            2   /* max difference estimated and                                          correct pitch period */   #define ENH_PLOCSL              20  /* pitch-estimates and pitch-                                          locations buffer length */   #define ENH_OVERHANG        2   #define ENH_UPS0            4   /* upsampling rate */   #define ENH_FL0                 3   /* 2*FLO+1 is the length of                                          each filter */   #define ENH_VECTL               (ENH_BLOCKL+2*ENH_FL0)   #define ENH_CORRDIM             (2*ENH_SLOP+1)   #define ENH_NBLOCKS             (BLOCKL_MAX/ENH_BLOCKL)   #define ENH_NBLOCKS_EXTRA       5   #define ENH_NBLOCKS_TOT         8   /* ENH_NBLOCKS +                                          ENH_NBLOCKS_EXTRA */   #define ENH_BUFL            (ENH_NBLOCKS_TOT)*ENH_BLOCKL   #define ENH_ALPHA0              (float)0.05   /* Down sampling */   #define FILTERORDER_DS          7   #define DELAY_DS            3   #define FACTOR_DS               2   /* bit stream defs */   #define NO_OF_BYTES_20MS    38   #define NO_OF_BYTES_30MS    50   #define NO_OF_WORDS_20MS    19   #define NO_OF_WORDS_30MS    25   #define STATE_BITS              3   #define BYTE_LEN            8   #define ULP_CLASSES             3   /* help parameters */   #define FLOAT_MAX               (float)1.0e37   #define EPS                     (float)2.220446049250313e-016   #define PI                      (float)3.14159265358979323846   #define MIN_SAMPLE              -32768   #define MAX_SAMPLE              32767   #define TWO_PI                  (float)6.283185307   #define PI2                     (float)0.159154943   /* type definition encoder instance */   typedef struct iLBC_ULP_Inst_t_ {       int lsf_bits[6][ULP_CLASSES+2];       int start_bits[ULP_CLASSES+2];       int startfirst_bits[ULP_CLASSES+2];       int scale_bits[ULP_CLASSES+2];       int state_bits[ULP_CLASSES+2];       int extra_cb_index[CB_NSTAGES][ULP_CLASSES+2];       int extra_cb_gain[CB_NSTAGES][ULP_CLASSES+2];       int cb_index[NSUB_MAX][CB_NSTAGES][ULP_CLASSES+2];       int cb_gain[NSUB_MAX][CB_NSTAGES][ULP_CLASSES+2];   } iLBC_ULP_Inst_t;   /* type definition encoder instance */   typedef struct iLBC_Enc_Inst_t_ {       /* flag for frame size mode */       int mode;       /* basic parameters for different frame sizes */       int blockl;       int nsub;       int nasub;       int no_of_bytes, no_of_words;       int lpc_n;       int state_short_len;       const iLBC_ULP_Inst_t *ULP_inst;       /* analysis filter state */       float anaMem[LPC_FILTERORDER];       /* old lsf parameters for interpolation */       float lsfold[LPC_FILTERORDER];       float lsfdeqold[LPC_FILTERORDER];       /* signal buffer for LP analysis */       float lpc_buffer[LPC_LOOKBACK + BLOCKL_MAX];       /* state of input HP filter */       float hpimem[4];   } iLBC_Enc_Inst_t;   /* type definition decoder instance */   typedef struct iLBC_Dec_Inst_t_ {       /* flag for frame size mode */       int mode;       /* basic parameters for different frame sizes */       int blockl;       int nsub;       int nasub;       int no_of_bytes, no_of_words;       int lpc_n;       int state_short_len;       const iLBC_ULP_Inst_t *ULP_inst;       /* synthesis filter state */       float syntMem[LPC_FILTERORDER];       /* old LSF for interpolation */       float lsfdeqold[LPC_FILTERORDER];       /* pitch lag estimated in enhancer and used in PLC */       int last_lag;       /* PLC state information */       int prevLag, consPLICount, prevPLI, prev_enh_pl;       float prevLpc[LPC_FILTERORDER+1];       float prevResidual[NSUB_MAX*SUBL];       float per;       unsigned long seed;       /* previous synthesis filter parameters */       float old_syntdenum[(LPC_FILTERORDER + 1)*NSUB_MAX];       /* state of output HP filter */       float hpomem[4];       /* enhancer state information */       int use_enhancer;       float enh_buf[ENH_BUFL];       float enh_period[ENH_NBLOCKS_TOT];   } iLBC_Dec_Inst_t;   #endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -