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

📄 ilbc_define.h

📁 MiniSip Client with DomainKeys Authentication, Sip, Audio communications, Echo Cancel
💻 H
字号:
//A.6 iLBC_define.h        /******************************************************************            iLBC Speech Coder ANSI-C Source Code            iLBC_define.h                Copyright (c) 2001,        Global IP Sound AB.        All rights reserved.        ******************************************************************/    #include <string.h>        #ifndef __iLBC_ILBCDEFINE_H    #define __iLBC_ILBCDEFINE_H        /* general codec settings */        #define FS (float)8000.0    #define BLOCKL 160    #define BLOCKL_MAX 240   #define NSUB 4     #define NSUB_MAX 6   #define NASUB 2   #define NASUB_MAX 4   #define SUBL 40    #define STATE_LEN 80    #define STATE_SHORT_LEN 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 1    #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        /* PLC */        #define PLC_BFIATTENUATE (float)0.9    #define PLC_GAINTHRESHOLD (float)0.5    #define PLC_BWEXPAND (float)0.99    #define PLC_XT_MIX (float)1.0    #define PLC_XB_MIX (float)0.0    #define PLC_YT_MIX (float)0.95    #define PLC_YB_MIX (float)0.0        /* Down sampling */        #define FILTERORDER_DS 7    #define DELAY_DS 3    #define FACTOR_DS 2        /* bit stream defs */        #define NO_OF_BYTES 38    #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_Enc_Inst_t_ {            /* 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_ {        /* 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 prevGain, prevLpc[LPC_FILTERORDER+1];        float prevResidual[NSUB_MAX*SUBL];        float energy;        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 + -