• Home
  • Raw
  • Download

Lines Matching refs:psDec

42     silk_decoder_state                  *psDec,             /* I/O Decoder state        */
47 silk_decoder_state *psDec, /* I/O Decoder state */
54 silk_decoder_state *psDec /* I/O Decoder state */ in silk_PLC_Reset() argument
57 psDec->sPLC.pitchL_Q8 = silk_LSHIFT( psDec->frame_length, 8 - 1 ); in silk_PLC_Reset()
58 psDec->sPLC.prevGain_Q16[ 0 ] = SILK_FIX_CONST( 1, 16 ); in silk_PLC_Reset()
59 psDec->sPLC.prevGain_Q16[ 1 ] = SILK_FIX_CONST( 1, 16 ); in silk_PLC_Reset()
60 psDec->sPLC.subfr_length = 20; in silk_PLC_Reset()
61 psDec->sPLC.nb_subfr = 2; in silk_PLC_Reset()
65 silk_decoder_state *psDec, /* I/O Decoder state */ in silk_PLC() argument
72 if( psDec->fs_kHz != psDec->sPLC.fs_kHz ) { in silk_PLC()
73 silk_PLC_Reset( psDec ); in silk_PLC()
74 psDec->sPLC.fs_kHz = psDec->fs_kHz; in silk_PLC()
81 silk_PLC_conceal( psDec, psDecCtrl, frame ); in silk_PLC()
83 psDec->lossCnt++; in silk_PLC()
88 silk_PLC_update( psDec, psDecCtrl ); in silk_PLC()
96 silk_decoder_state *psDec, /* I/O Decoder state */ in silk_PLC_update() argument
104 psPLC = &psDec->sPLC; in silk_PLC_update()
107 psDec->prevSignalType = psDec->indices.signalType; in silk_PLC_update()
109 if( psDec->indices.signalType == TYPE_VOICED ) { in silk_PLC_update()
111 for( j = 0; j * psDec->subfr_length < psDecCtrl->pitchL[ psDec->nb_subfr - 1 ]; j++ ) { in silk_PLC_update()
112 if( j == psDec->nb_subfr ) { in silk_PLC_update()
117 … temp_LTP_Gain_Q14 += psDecCtrl->LTPCoef_Q14[ ( psDec->nb_subfr - 1 - j ) * LTP_ORDER + i ]; in silk_PLC_update()
122 &psDecCtrl->LTPCoef_Q14[ silk_SMULBB( psDec->nb_subfr - 1 - j, LTP_ORDER ) ], in silk_PLC_update()
125 psPLC->pitchL_Q8 = silk_LSHIFT( psDecCtrl->pitchL[ psDec->nb_subfr - 1 - j ], 8 ); in silk_PLC_update()
153 psPLC->pitchL_Q8 = silk_LSHIFT( silk_SMULBB( psDec->fs_kHz, 18 ), 8 ); in silk_PLC_update()
158 …silk_memcpy( psPLC->prevLPC_Q12, psDecCtrl->PredCoef_Q12[ 1 ], psDec->LPC_order * sizeof( opus_int… in silk_PLC_update()
162 …silk_memcpy( psPLC->prevGain_Q16, &psDecCtrl->Gains_Q16[ psDec->nb_subfr - 2 ], 2 * sizeof( opus_i… in silk_PLC_update()
164 psPLC->subfr_length = psDec->subfr_length; in silk_PLC_update()
165 psPLC->nb_subfr = psDec->nb_subfr; in silk_PLC_update()
169 silk_decoder_state *psDec, /* I/O Decoder state */ in silk_PLC_conceal() argument
186 silk_PLC_struct *psPLC = &psDec->sPLC; in silk_PLC_conceal()
191 ALLOC( sLTP, psDec->ltp_mem_length, opus_int16 ); in silk_PLC_conceal()
192 ALLOC( sLTP_Q14, psDec->ltp_mem_length + psDec->frame_length, opus_int32 ); in silk_PLC_conceal()
197 if( psDec->first_frame_after_reset ) { in silk_PLC_conceal()
207 …silk_SMULWW( psDec->exc_Q14[ i + ( k + psPLC->nb_subfr - 2 ) * psPLC->subfr_length ], prevGain_Q10… in silk_PLC_conceal()
217 …rand_ptr = &psDec->exc_Q14[ silk_max_int( 0, ( psPLC->nb_subfr - 1 ) * psPLC->subfr_length - RAND_… in silk_PLC_conceal()
220 …rand_ptr = &psDec->exc_Q14[ silk_max_int( 0, psPLC->nb_subfr * psPLC->subfr_length - RAND_BUF_SIZE… in silk_PLC_conceal()
228 harm_Gain_Q15 = HARM_ATT_Q15[ silk_min_int( NB_ATT - 1, psDec->lossCnt ) ]; in silk_PLC_conceal()
229 if( psDec->prevSignalType == TYPE_VOICED ) { in silk_PLC_conceal()
230 rand_Gain_Q15 = PLC_RAND_ATTENUATE_V_Q15[ silk_min_int( NB_ATT - 1, psDec->lossCnt ) ]; in silk_PLC_conceal()
232 rand_Gain_Q15 = PLC_RAND_ATTENUATE_UV_Q15[ silk_min_int( NB_ATT - 1, psDec->lossCnt ) ]; in silk_PLC_conceal()
236 silk_bwexpander( psPLC->prevLPC_Q12, psDec->LPC_order, SILK_FIX_CONST( BWE_COEF, 16 ) ); in silk_PLC_conceal()
239 silk_memcpy( A_Q12, psPLC->prevLPC_Q12, psDec->LPC_order * sizeof( opus_int16 ) ); in silk_PLC_conceal()
242 if( psDec->lossCnt == 0 ) { in silk_PLC_conceal()
246 if( psDec->prevSignalType == TYPE_VOICED ) { in silk_PLC_conceal()
256 invGain_Q30 = silk_LPC_inverse_pred_gain( psPLC->prevLPC_Q12, psDec->LPC_order ); in silk_PLC_conceal()
268 sLTP_buf_idx = psDec->ltp_mem_length; in silk_PLC_conceal()
271 idx = psDec->ltp_mem_length - lag - psDec->LPC_order - LTP_ORDER / 2; in silk_PLC_conceal()
273 …silk_LPC_analysis_filter( &sLTP[ idx ], &psDec->outBuf[ idx ], A_Q12, psDec->ltp_mem_length - idx,… in silk_PLC_conceal()
277 for( i = idx + psDec->LPC_order; i < psDec->ltp_mem_length; i++ ) { in silk_PLC_conceal()
284 for( k = 0; k < psDec->nb_subfr; k++ ) { in silk_PLC_conceal()
287 for( i = 0; i < psDec->subfr_length; i++ ) { in silk_PLC_conceal()
314 … silk_min_32( psPLC->pitchL_Q8, silk_LSHIFT( silk_SMULBB( MAX_PITCH_LAG_MS, psDec->fs_kHz ), 8 ) ); in silk_PLC_conceal()
321 sLPC_Q14_ptr = &sLTP_Q14[ psDec->ltp_mem_length - MAX_LPC_ORDER ]; in silk_PLC_conceal()
324 silk_memcpy( sLPC_Q14_ptr, psDec->sLPC_Q14_buf, MAX_LPC_ORDER * sizeof( opus_int32 ) ); in silk_PLC_conceal()
326 silk_assert( psDec->LPC_order >= 10 ); /* check that unrolling works */ in silk_PLC_conceal()
327 for( i = 0; i < psDec->frame_length; i++ ) { in silk_PLC_conceal()
330 LPC_pred_Q10 = silk_RSHIFT( psDec->LPC_order, 1 ); in silk_PLC_conceal()
341 for( j = 10; j < psDec->LPC_order; j++ ) { in silk_PLC_conceal()
353 …silk_memcpy( psDec->sLPC_Q14_buf, &sLPC_Q14_ptr[ psDec->frame_length ], MAX_LPC_ORDER * sizeof( op… in silk_PLC_conceal()
368 silk_decoder_state *psDec, /* I/O decoder state */ in silk_PLC_glue_frames() argument
376 psPLC = &psDec->sPLC; in silk_PLC_glue_frames()
378 if( psDec->lossCnt ) { in silk_PLC_glue_frames()
384 if( psDec->sPLC.last_frame_lost ) { in silk_PLC_glue_frames()