Loading lib_dec/ivas_stereo_switching_dec.c +14 −9 Original line number Diff line number Diff line Loading @@ -1551,6 +1551,11 @@ void stereo_switching_dec( mvr2r( sts[0]->old_exc, sts[1]->old_exc, L_EXC_MEM_DEC ); mvr2r( sts[0]->lsf_old, sts[1]->lsf_old, M ); mvr2r( sts[0]->lsp_old, sts[1]->lsp_old, M ); #ifdef NONBE_FIX_1110_STEREO_DTX_BRATE_SWITCHING sts[1]->last_core_brate = sts[0]->last_core_brate; #endif if ( hCPE->element_mode == IVAS_CPE_MDCT ) { sts[1]->last_core = sts[0]->last_core; Loading Loading @@ -1580,16 +1585,16 @@ void stereo_switching_dec( sts[1]->hTcxDec->conceal_eof_gain = sts[0]->hTcxDec->conceal_eof_gain; } #ifdef NONBE_FIX_1110_STEREO_DTX_BRATE_SWITCHING //#ifdef NONBE_FIX_1110_STEREO_DTX_BRATE_SWITCHING /* In case of DTX in bitrate switching, there can happen that last_core_brate = 0/2400 from MDCT stereo CNG */ if ( hCPE->element_mode == IVAS_CPE_TD && hCPE->last_element_mode != IVAS_CPE_TD ) { if ( sts[1]->last_core_brate == FRAME_NO_DATA || sts[1]->last_core_brate == SID_2k40 ) { sts[1]->last_core_brate = sts[0]->last_core_brate; } } #endif //if ( hCPE->element_mode == IVAS_CPE_TD && hCPE->last_element_mode != IVAS_CPE_TD ) //{ // if ( sts[1]->last_core_brate == FRAME_NO_DATA || sts[1]->last_core_brate == SID_2k40 ) // { // sts[1]->last_core_brate = sts[0]->last_core_brate; // } //} //#endif return; } Loading lib_enc/ivas_stereo_switching_enc.c +14 −10 Original line number Diff line number Diff line Loading @@ -801,6 +801,10 @@ void stereo_switching_enc( mvr2r( sts[0]->lsf_old1, sts[1]->lsf_old1, M ); mvr2r( sts[0]->lsp_old1, sts[1]->lsp_old1, M ); #ifdef NONBE_FIX_1110_STEREO_DTX_BRATE_SWITCHING sts[1]->last_core_brate = sts[0]->last_core_brate; #endif sts[1]->GSC_noisy_speech = 0; if ( hCPE->element_mode == IVAS_CPE_MDCT ) { Loading Loading @@ -832,16 +836,16 @@ void stereo_switching_enc( sts[1]->hTcxCfg->tcx_curr_overlap_mode = sts[0]->hTcxCfg->tcx_curr_overlap_mode; } #ifdef NONBE_FIX_1110_STEREO_DTX_BRATE_SWITCHING /* In case of DTX in bitrate switching, there can happen that last_core_brate = 0/2400 from MDCT stereo CNG */ if ( sts[0]->Opt_DTX_ON && hCPE->element_mode == IVAS_CPE_TD && hCPE->last_element_mode != IVAS_CPE_TD ) { if ( sts[1]->last_core_brate == FRAME_NO_DATA || sts[1]->last_core_brate == SID_2k40 ) { sts[1]->last_core_brate = sts[0]->last_core_brate; } } #endif //#ifdef NONBE_FIX_1110_STEREO_DTX_BRATE_SWITCHING // /* In case of DTX in bitrate switching, there can happen that last_core_brate = 0/2400 from MDCT stereo CNG */ // if ( sts[0]->Opt_DTX_ON && hCPE->element_mode == IVAS_CPE_TD && hCPE->last_element_mode != IVAS_CPE_TD ) // { // if ( sts[1]->last_core_brate == FRAME_NO_DATA || sts[1]->last_core_brate == SID_2k40 ) // { // sts[1]->last_core_brate = sts[0]->last_core_brate; // } // } //#endif return; } Loading
lib_dec/ivas_stereo_switching_dec.c +14 −9 Original line number Diff line number Diff line Loading @@ -1551,6 +1551,11 @@ void stereo_switching_dec( mvr2r( sts[0]->old_exc, sts[1]->old_exc, L_EXC_MEM_DEC ); mvr2r( sts[0]->lsf_old, sts[1]->lsf_old, M ); mvr2r( sts[0]->lsp_old, sts[1]->lsp_old, M ); #ifdef NONBE_FIX_1110_STEREO_DTX_BRATE_SWITCHING sts[1]->last_core_brate = sts[0]->last_core_brate; #endif if ( hCPE->element_mode == IVAS_CPE_MDCT ) { sts[1]->last_core = sts[0]->last_core; Loading Loading @@ -1580,16 +1585,16 @@ void stereo_switching_dec( sts[1]->hTcxDec->conceal_eof_gain = sts[0]->hTcxDec->conceal_eof_gain; } #ifdef NONBE_FIX_1110_STEREO_DTX_BRATE_SWITCHING //#ifdef NONBE_FIX_1110_STEREO_DTX_BRATE_SWITCHING /* In case of DTX in bitrate switching, there can happen that last_core_brate = 0/2400 from MDCT stereo CNG */ if ( hCPE->element_mode == IVAS_CPE_TD && hCPE->last_element_mode != IVAS_CPE_TD ) { if ( sts[1]->last_core_brate == FRAME_NO_DATA || sts[1]->last_core_brate == SID_2k40 ) { sts[1]->last_core_brate = sts[0]->last_core_brate; } } #endif //if ( hCPE->element_mode == IVAS_CPE_TD && hCPE->last_element_mode != IVAS_CPE_TD ) //{ // if ( sts[1]->last_core_brate == FRAME_NO_DATA || sts[1]->last_core_brate == SID_2k40 ) // { // sts[1]->last_core_brate = sts[0]->last_core_brate; // } //} //#endif return; } Loading
lib_enc/ivas_stereo_switching_enc.c +14 −10 Original line number Diff line number Diff line Loading @@ -801,6 +801,10 @@ void stereo_switching_enc( mvr2r( sts[0]->lsf_old1, sts[1]->lsf_old1, M ); mvr2r( sts[0]->lsp_old1, sts[1]->lsp_old1, M ); #ifdef NONBE_FIX_1110_STEREO_DTX_BRATE_SWITCHING sts[1]->last_core_brate = sts[0]->last_core_brate; #endif sts[1]->GSC_noisy_speech = 0; if ( hCPE->element_mode == IVAS_CPE_MDCT ) { Loading Loading @@ -832,16 +836,16 @@ void stereo_switching_enc( sts[1]->hTcxCfg->tcx_curr_overlap_mode = sts[0]->hTcxCfg->tcx_curr_overlap_mode; } #ifdef NONBE_FIX_1110_STEREO_DTX_BRATE_SWITCHING /* In case of DTX in bitrate switching, there can happen that last_core_brate = 0/2400 from MDCT stereo CNG */ if ( sts[0]->Opt_DTX_ON && hCPE->element_mode == IVAS_CPE_TD && hCPE->last_element_mode != IVAS_CPE_TD ) { if ( sts[1]->last_core_brate == FRAME_NO_DATA || sts[1]->last_core_brate == SID_2k40 ) { sts[1]->last_core_brate = sts[0]->last_core_brate; } } #endif //#ifdef NONBE_FIX_1110_STEREO_DTX_BRATE_SWITCHING // /* In case of DTX in bitrate switching, there can happen that last_core_brate = 0/2400 from MDCT stereo CNG */ // if ( sts[0]->Opt_DTX_ON && hCPE->element_mode == IVAS_CPE_TD && hCPE->last_element_mode != IVAS_CPE_TD ) // { // if ( sts[1]->last_core_brate == FRAME_NO_DATA || sts[1]->last_core_brate == SID_2k40 ) // { // sts[1]->last_core_brate = sts[0]->last_core_brate; // } // } //#endif return; }