Loading lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -194,6 +194,7 @@ #ifdef SPLIT_REND_WITH_HEAD_ROT #define SPLIT_REND_PRED_QUANT_63_PNTS #define SPLIT_REND_WITH_HEAD_ROT_PARAMBIN /* Nokia: Issue 623: Split rendering support for parambin renderer */ #define FIX_658_SPLIT_REND_MASA /*Dlb : Fix for issue 658, uninitialized memory access in MASA in Split rendering 0DOF mode*/ #endif #define FIX_594_STL_INCLUDE /* FhG: issue 594: Missing include of stl.h */ Loading lib_dec/ivas_stereo_ica_dec.c +0 −2 Original line number Diff line number Diff line Loading @@ -148,8 +148,6 @@ void stereo_tca_dec( prevNCShift = (int16_t) abs( hStereoTCA->prevCorrLagStats ); currentNCShift = (int16_t) abs( hStereoTCA->corrLagStats ); /* IVAS_fmToDo: QCTodo: Need to address [16, 32] kHz @ Encoder --> 48 kHz Decoder. 48kHz-->48kHz is ok */ /*target_idx = (hStereoTCA->refChanIndx == L_CH_INDX) ? R_CH_INDX : L_CH_INDX;*/ if ( hCPE->element_mode == IVAS_CPE_TD && hCPE->last_element_mode == IVAS_CPE_TD ) { Loading lib_dec/ivas_stereo_icbwe_dec.c +0 −1 Original line number Diff line number Diff line Loading @@ -739,7 +739,6 @@ void stereo_icBWE_decproc( { if ( hCPE->element_mode == IVAS_CPE_TD ) { /* QC: TODO - TBV */ v_add( output[0], hStereoICBWE->memOutHB[hStereoICBWE->prev_refChanIndx_bwe], output[0], memOffset ); v_add( output[1], hStereoICBWE->memOutHB[!hStereoICBWE->prev_refChanIndx_bwe], output[1], memOffset ); } Loading lib_rend/ivas_dirac_dec_binaural_functions.c +5 −1 Original line number Diff line number Diff line Loading @@ -960,8 +960,12 @@ static void ivas_dirac_dec_binaural_internal( #ifdef SPLIT_REND_WITH_HEAD_ROT_PARAMBIN pMultiBinPoseData = &st_ivas->splitBinRend.splitrend.multiBinPoseData; #ifdef FIX_658_SPLIT_REND_MASA if ( ( st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL_SPLIT_CODED || st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ) #else if ( pMultiBinPoseData != NULL && pMultiBinPoseData->num_poses > 1 ) #endif { ivas_dirac_dec_binaural_process_output( hDiracDecBin, hSpatParamRendCom, st_ivas->cldfbSynDec, output_f, Cldfb_RealBuffer_in, Cldfb_ImagBuffer_in, max_band_decorr, numInChannels, config_data.processReverb, subframe, tmp_Cldfb_out_re, tmp_Cldfb_out_im, Loading lib_rend/lib_rend.c +29 −12 Original line number Diff line number Diff line Loading @@ -3243,7 +3243,12 @@ static DecoderDummy *initDecoderDummy( decDummy->splitBinRend.hMultiBinCldfbData = NULL; ivas_init_split_rend_handles( &decDummy->splitBinRend.splitrend ); decDummy->splitBinRend.splitrend = *pSplitRendWrapper; #ifdef FIX_658_SPLIT_REND_MASA if ( outConfig == IVAS_REND_AUDIO_CONFIG_BINAURAL_SPLIT_CODED || outConfig == IVAS_REND_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) #else if ( decDummy->splitBinRend.splitrend.multiBinPoseData.num_poses > 1 ) #endif { if ( ( decDummy->splitBinRend.hMultiBinCldfbData = (IVAS_DEC_SPLIT_REND_MULTI_BIN_CLDFB_DATA_HANDLE) malloc( sizeof( IVAS_DEC_SPLIT_REND_MULTI_BIN_CLDFB_DATA ) ) ) == NULL ) { Loading Loading @@ -4160,6 +4165,11 @@ ivas_error IVAS_REND_AddInput( { cldfb_in = 1; } #ifdef FIX_658_SPLIT_REND_MASA ivas_split_rend_choose_default_codec( &hIvasRend->hRendererConfig->split_rend_config.codec, ( cldfb_in == 0 ), hIvasRend->outputConfig == IVAS_REND_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ); #endif if ( ( error = initSplitRend( &hIvasRend->splitRendWrapper, &hIvasRend->splitRendEncBuffer, &hIvasRend->hRendererConfig->split_rend_config, Loading Loading @@ -5014,7 +5024,13 @@ int16_t IVAS_REND_FeedRenderConfig( } /* Must re-initialize split rendering config in case renderer config is updated after adding renderer inputs */ #ifdef FIX_658_SPLIT_REND_MASA /*if its not initialized yet then no need to re-initialize, initialization will happen while adding inputs*/ if ( hIvasRend->splitRendEncBuffer.data != NULL && hIvasRend->hRendererConfig != NULL ) #endif { closeSplitRend( &hIvasRend->splitRendWrapper, &hIvasRend->splitRendEncBuffer ); /* TODO : Do not hard code TDin to 1 here*/ ivas_split_rend_choose_default_codec( &hIvasRend->hRendererConfig->split_rend_config.codec, 1, hIvasRend->outputConfig == IVAS_REND_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ); Loading @@ -5028,6 +5044,7 @@ int16_t IVAS_REND_FeedRenderConfig( { return error; } } #endif return IVAS_ERR_OK; Loading Loading
lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -194,6 +194,7 @@ #ifdef SPLIT_REND_WITH_HEAD_ROT #define SPLIT_REND_PRED_QUANT_63_PNTS #define SPLIT_REND_WITH_HEAD_ROT_PARAMBIN /* Nokia: Issue 623: Split rendering support for parambin renderer */ #define FIX_658_SPLIT_REND_MASA /*Dlb : Fix for issue 658, uninitialized memory access in MASA in Split rendering 0DOF mode*/ #endif #define FIX_594_STL_INCLUDE /* FhG: issue 594: Missing include of stl.h */ Loading
lib_dec/ivas_stereo_ica_dec.c +0 −2 Original line number Diff line number Diff line Loading @@ -148,8 +148,6 @@ void stereo_tca_dec( prevNCShift = (int16_t) abs( hStereoTCA->prevCorrLagStats ); currentNCShift = (int16_t) abs( hStereoTCA->corrLagStats ); /* IVAS_fmToDo: QCTodo: Need to address [16, 32] kHz @ Encoder --> 48 kHz Decoder. 48kHz-->48kHz is ok */ /*target_idx = (hStereoTCA->refChanIndx == L_CH_INDX) ? R_CH_INDX : L_CH_INDX;*/ if ( hCPE->element_mode == IVAS_CPE_TD && hCPE->last_element_mode == IVAS_CPE_TD ) { Loading
lib_dec/ivas_stereo_icbwe_dec.c +0 −1 Original line number Diff line number Diff line Loading @@ -739,7 +739,6 @@ void stereo_icBWE_decproc( { if ( hCPE->element_mode == IVAS_CPE_TD ) { /* QC: TODO - TBV */ v_add( output[0], hStereoICBWE->memOutHB[hStereoICBWE->prev_refChanIndx_bwe], output[0], memOffset ); v_add( output[1], hStereoICBWE->memOutHB[!hStereoICBWE->prev_refChanIndx_bwe], output[1], memOffset ); } Loading
lib_rend/ivas_dirac_dec_binaural_functions.c +5 −1 Original line number Diff line number Diff line Loading @@ -960,8 +960,12 @@ static void ivas_dirac_dec_binaural_internal( #ifdef SPLIT_REND_WITH_HEAD_ROT_PARAMBIN pMultiBinPoseData = &st_ivas->splitBinRend.splitrend.multiBinPoseData; #ifdef FIX_658_SPLIT_REND_MASA if ( ( st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL_SPLIT_CODED || st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ) #else if ( pMultiBinPoseData != NULL && pMultiBinPoseData->num_poses > 1 ) #endif { ivas_dirac_dec_binaural_process_output( hDiracDecBin, hSpatParamRendCom, st_ivas->cldfbSynDec, output_f, Cldfb_RealBuffer_in, Cldfb_ImagBuffer_in, max_band_decorr, numInChannels, config_data.processReverb, subframe, tmp_Cldfb_out_re, tmp_Cldfb_out_im, Loading
lib_rend/lib_rend.c +29 −12 Original line number Diff line number Diff line Loading @@ -3243,7 +3243,12 @@ static DecoderDummy *initDecoderDummy( decDummy->splitBinRend.hMultiBinCldfbData = NULL; ivas_init_split_rend_handles( &decDummy->splitBinRend.splitrend ); decDummy->splitBinRend.splitrend = *pSplitRendWrapper; #ifdef FIX_658_SPLIT_REND_MASA if ( outConfig == IVAS_REND_AUDIO_CONFIG_BINAURAL_SPLIT_CODED || outConfig == IVAS_REND_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) #else if ( decDummy->splitBinRend.splitrend.multiBinPoseData.num_poses > 1 ) #endif { if ( ( decDummy->splitBinRend.hMultiBinCldfbData = (IVAS_DEC_SPLIT_REND_MULTI_BIN_CLDFB_DATA_HANDLE) malloc( sizeof( IVAS_DEC_SPLIT_REND_MULTI_BIN_CLDFB_DATA ) ) ) == NULL ) { Loading Loading @@ -4160,6 +4165,11 @@ ivas_error IVAS_REND_AddInput( { cldfb_in = 1; } #ifdef FIX_658_SPLIT_REND_MASA ivas_split_rend_choose_default_codec( &hIvasRend->hRendererConfig->split_rend_config.codec, ( cldfb_in == 0 ), hIvasRend->outputConfig == IVAS_REND_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ); #endif if ( ( error = initSplitRend( &hIvasRend->splitRendWrapper, &hIvasRend->splitRendEncBuffer, &hIvasRend->hRendererConfig->split_rend_config, Loading Loading @@ -5014,7 +5024,13 @@ int16_t IVAS_REND_FeedRenderConfig( } /* Must re-initialize split rendering config in case renderer config is updated after adding renderer inputs */ #ifdef FIX_658_SPLIT_REND_MASA /*if its not initialized yet then no need to re-initialize, initialization will happen while adding inputs*/ if ( hIvasRend->splitRendEncBuffer.data != NULL && hIvasRend->hRendererConfig != NULL ) #endif { closeSplitRend( &hIvasRend->splitRendWrapper, &hIvasRend->splitRendEncBuffer ); /* TODO : Do not hard code TDin to 1 here*/ ivas_split_rend_choose_default_codec( &hIvasRend->hRendererConfig->split_rend_config.codec, 1, hIvasRend->outputConfig == IVAS_REND_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ); Loading @@ -5028,6 +5044,7 @@ int16_t IVAS_REND_FeedRenderConfig( { return error; } } #endif return IVAS_ERR_OK; Loading