📄 dtx_dec.h
字号:
/******************************************************************************** GSM AMR-NB speech codec R98 Version 7.6.0 December 12, 2001* R99 Version 3.3.0 * REL-4 Version 4.1.0 ******************************************************************************** File : dtx_dec.h* Purpose : Decode comfort noice when in DTX*******************************************************************************/#ifndef dtx_dec_h#define dtx_dec_h "$Id $" /******************************************************************************* INCLUDE FILES******************************************************************************/#include "typedef.h"#include "dtx_enc.h"#include "d_plsf.h"#include "gc_pred.h"#include "c_g_aver.h"#include "frame.h"/******************************************************************************* LOCAL VARIABLES AND TABLES******************************************************************************/enum DTXStateType {SPEECH = 0, DTX, DTX_MUTE};#define DTX_MAX_EMPTY_THRESH 50/******************************************************************************* DEFINITION OF DATA TYPES******************************************************************************/typedef struct { Word16 since_last_sid; Word16 true_sid_period_inv; Word16 log_en; Word16 old_log_en; Word32 L_pn_seed_rx; Word16 lsp[M]; Word16 lsp_old[M]; Word16 lsf_hist[M*DTX_HIST_SIZE]; Word16 lsf_hist_ptr; Word16 lsf_hist_mean[M*DTX_HIST_SIZE]; Word16 log_pg_mean; Word16 log_en_hist[DTX_HIST_SIZE]; Word16 log_en_hist_ptr; Word16 log_en_adjust; Word16 dtxHangoverCount; Word16 decAnaElapsedCount; Word16 sid_frame; Word16 valid_data; Word16 dtxHangoverAdded; enum DTXStateType dtxGlobalState; /* contains previous state */ /* updated in main decoder */ Word16 data_updated; /* marker to know if CNI data is ever renewed */ } dtx_decState;/******************************************************************************* DECLARATION OF PROTOTYPES******************************************************************************//**************************************************************************** Function : dtx_dec_init* Purpose : Allocates memory and initializes state variables* Description : Stores pointer to filter status struct in *st. This* pointer has to be passed to dtx_dec in each call.* Returns : 0 on success****************************************************************************/ int dtx_dec_init (dtx_decState **st); /***************************************************************************** Function : dtx_dec_reset* Purpose : Resets state memory* Returns : 0 on success****************************************************************************/int dtx_dec_reset (dtx_decState *st); /***************************************************************************** Function : dtx_dec_exit* Purpose : The memory used for state memory is freed* Description : Stores NULL in *st****************************************************************************/void dtx_dec_exit (dtx_decState **st); /***************************************************************************** Function : dtx_dec* Purpose :* Description :* ***************************************************************************/int dtx_dec( dtx_decState *st, /* i/o : State struct */ Word16 mem_syn[], /* i/o : AMR decoder state */ D_plsfState* lsfState, /* i/o : decoder lsf states */ gc_predState* predState, /* i/o : prediction states */ Cb_gain_averageState* averState, /* i/o : CB gain average states */ enum DTXStateType new_state, /* i : new DTX state */ enum Mode mode, /* i : AMR mode */ Word16 parm[], /* i : Vector of synthesis parameters */ Word16 synth[], /* o : synthesised speech */ Word16 A_t[] /* o : decoded LP filter in 4 subframes*/ );void dtx_dec_activity_update(dtx_decState *st, Word16 lsf[], Word16 frame[]);/***************************************************************************** Function : rx_dtx_handler * Purpose : reads the frame type and checks history * Description : to decide what kind of DTX/CNI action to perform***************************************************************************/enum DTXStateType rx_dtx_handler(dtx_decState *st, /* i/o : State struct */ enum RXFrameType frame_type /* i : Frame type */ );#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -