/************************************************************************* * * Function: gainQuant_reset * Purpose: Initializes state memory to zero * ************************************************************************** */ int gainQuant_reset (gainQuantState *state) { if (state == (gainQuantState *) NULL){ fprintf(stderr, "gainQuant_reset: invalid parameter\n"); return -1; } state->sf0_exp_gcode0 = 0; state->sf0_frac_gcode0 = 0; state->sf0_exp_target_en = 0; state->sf0_frac_target_en = 0; Set_zero (state->sf0_exp_coeff, 5); Set_zero (state->sf0_frac_coeff, 5); state->gain_idx_ptr = NULL; gc_pred_reset(state->gc_predSt); gc_pred_reset(state->gc_predUnqSt); gain_adapt_reset(state->adaptSt); return 0; }
/************************************************************************* * * Function: qua_gain_init * Purpose: Allocates state memory and initializes state memory * ************************************************************************** */ int gc_pred_init (gc_predState **state) { gc_predState* s; if (state == (gc_predState **) NULL) { fprintf(stderr, "gc_pred_init: invalid parameter\n"); return -1; } *state = NULL; /* allocate memory */ if ((s= (gc_predState *) malloc(sizeof(gc_predState))) == NULL) { fprintf(stderr, "gc_pred_init: can not malloc state structure\n"); return -1; } gc_pred_reset(s); *state = s; return 0; }
/* ************************************************************************** * * Function : Decoder_amr_reset * Purpose : Resets state memory * ************************************************************************** */ int Decoder_amr_reset (Decoder_amrState *state, enum Mode mode) { Word16 i; if (state == (Decoder_amrState *) NULL){ fprintf(stderr, "Decoder_amr_reset: invalid parameter\n"); return -1; } /* Initialize static pointer */ state->exc = state->old_exc + PIT_MAX + L_INTERPOL; /* Static vectors to zero */ Set_zero (state->old_exc, PIT_MAX + L_INTERPOL); if (mode != MRDTX) Set_zero (state->mem_syn, M); /* initialize pitch sharpening */ state->sharp = SHARPMIN; state->old_T0 = 40; /* Initialize state->lsp_old [] */ if (mode != MRDTX) { Copy(lsp_init_data, &state->lsp_old[0], M); } /* Initialize memories of bad frame handling */ state->prev_bf = 0; state->prev_pdf = 0; state->state = 0; state->T0_lagBuff = 40; state->inBackgroundNoise = 0; state->voicedHangover = 0; if (mode != MRDTX) { for (i=0;i<9;i++) state->excEnergyHist[i] = 0; } for (i = 0; i < 9; i++) state->ltpGainHistory[i] = 0; Cb_gain_average_reset(state->Cb_gain_averState); if (mode != MRDTX) lsp_avg_reset(state->lsp_avg_st); D_plsf_reset(state->lsfState); ec_gain_pitch_reset(state->ec_gain_p_st); ec_gain_code_reset(state->ec_gain_c_st); if (mode != MRDTX) gc_pred_reset(state->pred_state); Bgn_scd_reset(state->background_state); state->nodataSeed = 21845; ph_disp_reset(state->ph_disp_st); if (mode != MRDTX) dtx_dec_reset(state->dtxDecoderState); return 0; }