FreeCalypso > hg > gsm-codec-lib
diff libgsmefr/codec.h @ 52:988fd7ff514f
libgsmefr: add state pointers to ETSI function prototypes
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 25 Nov 2022 08:22:41 +0000 |
parents | 36e1363ad885 |
children | 1cc2968f883f |
line wrap: on
line diff
--- a/libgsmefr/codec.h Fri Nov 25 06:46:22 2022 +0000 +++ b/libgsmefr/codec.h Fri Nov 25 08:22:41 2022 +0000 @@ -1,13 +1,15 @@ -void Init_Coder_12k2 (void); +void Init_Coder_12k2 (struct EFR_encoder_state *st); void Coder_12k2 ( + struct EFR_encoder_state *st, Word16 ana[], /* output : Analysis parameters */ Word16 synth[] /* output : Local synthesis */ ); -void Init_Decoder_12k2 (void); +void Init_Decoder_12k2 (struct EFR_decoder_state *st); void Decoder_12k2 ( + struct EFR_decoder_state *st, Word16 parm[], /* input : vector of synthesis parameters parm[0] = bad frame indicator (bfi) */ Word16 synth[], /* output: synthesis speech */ @@ -16,9 +18,10 @@ Word16 SID_flag ); -void Init_Post_Filter (void); +void Init_Post_Filter (struct EFR_decoder_state *st); void Post_Filter ( + struct EFR_decoder_state *st, Word16 *syn, /* in/out: synthesis speech (postfiltered is output) */ Word16 *Az_4 /* input : interpolated LPC parameters in all subfr. */ ); @@ -36,7 +39,9 @@ Word16 index[], /* (i) : index of 10 pulses (sign+position) */ Word16 cod[] /* (o) : algebraic (fixed) codebook excitation */ ); + Word16 Dec_lag6 ( /* output: return integer pitch lag */ + struct EFR_decoder_state *st, Word16 index, /* input : received pitch index */ Word16 pit_min, /* input : minimum pitch lag */ Word16 pit_max, /* input : maximum pitch lag */ @@ -46,6 +51,7 @@ Word16 bfi /* input : bad frame indicator */ ); Word16 d_gain_pitch ( /* out : quantized pitch gain */ + struct EFR_decoder_state *st, Word16 index, /* in : index of quantization */ Word16 bfi, /* in : bad frame indicator (good = 0) */ Word16 state, /* in : state of the state machine */ @@ -54,6 +60,7 @@ ); void d_gain_code ( + struct EFR_decoder_state *st, Word16 index, /* input : received quantization index */ Word16 code[], /* input : innovation codevector */ Word16 lcode, /* input : codevector length */ @@ -67,6 +74,7 @@ ); void D_plsf_5 ( + struct EFR_decoder_state *st, Word16 *indice, /* input : quantization indices of 5 submatrices */ Word16 *lsp1_q, /* output: quantized 1st LSP vector */ Word16 *lsp2_q, /* output: quantized 2nd LSP vector */ @@ -75,6 +83,7 @@ Word16 rxdtx_ctrl, Word16 rx_dtx_state ); + Word16 Enc_lag6 ( /* output: Return index of encoding */ Word16 T0, /* input : Pitch delay */ Word16 *T0_frac, /* in/out: Fractional pitch delay */ @@ -90,6 +99,7 @@ ); Word16 q_gain_code ( /* Return quantization index */ + struct EFR_encoder_state *st, Word16 code[], /* (i) : fixed codebook excitation */ Word16 lcode, /* (i) : codevector size */ Word16 *gain, /* (i/o) : quantized fixed codebook gain */ @@ -152,7 +162,9 @@ Word16 frac, /* input : fraction of lag */ Word16 L_subfr /* input : subframe size */ ); + void Q_plsf_5 ( + struct EFR_encoder_state *st, Word16 *lsp1, /* input : 1st LSP vector */ Word16 *lsp2, /* input : 2nd LSP vector */ Word16 *lsp1_q, /* output: quantized 1st LSP vector */