Loading lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -172,6 +172,7 @@ #define FIX_395_CNG_BW /* Eri: Issue 395 - CNG bandwidth issue for unified stereo */ #define EXTERNAL_ORIENTATIONS /* Nokia: Contribution 41: (external) orientation information handling */ #define FIX_541_EXT_REND_MASA_ROTATIONS /* Nokia: Issue 541, rotations missing in masa external renderer */ #define MASA_PREREND /* Nokia: Contribution 42: Support for IVAS_rend to merge MASA + other format to MASA */ Loading lib_rend/ivas_dirac_dec_binaural_functions.c +16 −2 Original line number Diff line number Diff line Loading @@ -414,7 +414,11 @@ void ivas_dirac_dec_binaural_render( for ( subframe_idx = first_sf; subframe_idx < last_sf; subframe_idx++ ) { int16_t n_samples_sf = slot_size * hDirAC->subframe_nbslots[subframe_idx]; #ifdef EXTERNAL_ORIENTATIONS ivas_dirac_dec_binaural_internal( st_ivas, st_ivas->hCombinedOrientationData, output_f_local, nchan_transport, subframe_idx ); #else ivas_dirac_dec_binaural_internal( st_ivas, output_f_local, nchan_transport, subframe_idx ); #endif for ( ch = 0; ch < nchan_out; ch++ ) { output_f_local[ch] += n_samples_sf; Loading Loading @@ -712,7 +716,12 @@ static void ivas_dirac_dec_binaural_internal( } #ifdef FIX_511_OPTIMIZE_PARAMBIN_GAIN_FETCH ivas_dirac_dec_binaural_formulate_input_and_target_covariance_matrices( st_ivas, Cldfb_RealBuffer_in, Cldfb_ImagBuffer_in, Rmat, subframe, st_ivas->hHeadTrackData && st_ivas->hHeadTrackData->num_quaternions >= 0 ); ivas_dirac_dec_binaural_formulate_input_and_target_covariance_matrices( st_ivas, Cldfb_RealBuffer_in, Cldfb_ImagBuffer_in, Rmat, subframe, #ifdef EXTERNAL_ORIENTATIONS hCombinedOrientationData && hCombinedOrientationData->enableCombinedOrientation[subframe] > 0 ); #else st_ivas->hHeadTrackData && st_ivas->hHeadTrackData->num_quaternions >= 0 ); #endif #else ivas_dirac_dec_binaural_formulate_input_and_target_covariance_matrices( st_ivas, Cldfb_RealBuffer_in, Cldfb_ImagBuffer_in, Rmat, subframe ); #endif Loading @@ -731,7 +740,12 @@ static void ivas_dirac_dec_binaural_internal( } #ifdef FIX_511_OPTIMIZE_PARAMBIN_GAIN_FETCH ivas_dirac_dec_binaural_determine_processing_matrices( st_ivas, max_band_decorr, Rmat, st_ivas->hHeadTrackData && st_ivas->hHeadTrackData->num_quaternions >= 0 ); ivas_dirac_dec_binaural_determine_processing_matrices( st_ivas, max_band_decorr, Rmat, #ifdef EXTERNAL_ORIENTATIONS hCombinedOrientationData && hCombinedOrientationData->enableCombinedOrientation[subframe] > 0 ); #else st_ivas->hHeadTrackData && st_ivas->hHeadTrackData->num_quaternions >= 0 ); #endif #else ivas_dirac_dec_binaural_determine_processing_matrices( st_ivas, max_band_decorr, Rmat ); #endif Loading lib_rend/lib_rend.c +9 −1 Original line number Diff line number Diff line Loading @@ -6415,7 +6415,7 @@ static ivas_error renderActiveInputsMasa( IVAS_REND_HANDLE hIvasRend, IVAS_REND_AudioBuffer outAudio ) { int16_t i; int16_t i, sf_idx; input_masa *pCurrentInput; ivas_error error; Loading @@ -6427,6 +6427,14 @@ static ivas_error renderActiveInputsMasa( continue; } #ifdef FIX_541_EXT_REND_MASA_ROTATIONS for ( sf_idx = 0; sf_idx < RENDERER_HEAD_POSITIONS_PER_FRAME; ++sf_idx ) { pCurrentInput->decDummy->hHeadTrackData->Quaternions[sf_idx] = hIvasRend->headRotData.headPositions[sf_idx]; pCurrentInput->decDummy->hHeadTrackData->Pos[sf_idx] = hIvasRend->headRotData.Pos[sf_idx]; } #endif if ( ( error = renderInputMasa( pCurrentInput, hIvasRend->outputConfig, outAudio ) ) != IVAS_ERR_OK ) { return error; Loading Loading
lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -172,6 +172,7 @@ #define FIX_395_CNG_BW /* Eri: Issue 395 - CNG bandwidth issue for unified stereo */ #define EXTERNAL_ORIENTATIONS /* Nokia: Contribution 41: (external) orientation information handling */ #define FIX_541_EXT_REND_MASA_ROTATIONS /* Nokia: Issue 541, rotations missing in masa external renderer */ #define MASA_PREREND /* Nokia: Contribution 42: Support for IVAS_rend to merge MASA + other format to MASA */ Loading
lib_rend/ivas_dirac_dec_binaural_functions.c +16 −2 Original line number Diff line number Diff line Loading @@ -414,7 +414,11 @@ void ivas_dirac_dec_binaural_render( for ( subframe_idx = first_sf; subframe_idx < last_sf; subframe_idx++ ) { int16_t n_samples_sf = slot_size * hDirAC->subframe_nbslots[subframe_idx]; #ifdef EXTERNAL_ORIENTATIONS ivas_dirac_dec_binaural_internal( st_ivas, st_ivas->hCombinedOrientationData, output_f_local, nchan_transport, subframe_idx ); #else ivas_dirac_dec_binaural_internal( st_ivas, output_f_local, nchan_transport, subframe_idx ); #endif for ( ch = 0; ch < nchan_out; ch++ ) { output_f_local[ch] += n_samples_sf; Loading Loading @@ -712,7 +716,12 @@ static void ivas_dirac_dec_binaural_internal( } #ifdef FIX_511_OPTIMIZE_PARAMBIN_GAIN_FETCH ivas_dirac_dec_binaural_formulate_input_and_target_covariance_matrices( st_ivas, Cldfb_RealBuffer_in, Cldfb_ImagBuffer_in, Rmat, subframe, st_ivas->hHeadTrackData && st_ivas->hHeadTrackData->num_quaternions >= 0 ); ivas_dirac_dec_binaural_formulate_input_and_target_covariance_matrices( st_ivas, Cldfb_RealBuffer_in, Cldfb_ImagBuffer_in, Rmat, subframe, #ifdef EXTERNAL_ORIENTATIONS hCombinedOrientationData && hCombinedOrientationData->enableCombinedOrientation[subframe] > 0 ); #else st_ivas->hHeadTrackData && st_ivas->hHeadTrackData->num_quaternions >= 0 ); #endif #else ivas_dirac_dec_binaural_formulate_input_and_target_covariance_matrices( st_ivas, Cldfb_RealBuffer_in, Cldfb_ImagBuffer_in, Rmat, subframe ); #endif Loading @@ -731,7 +740,12 @@ static void ivas_dirac_dec_binaural_internal( } #ifdef FIX_511_OPTIMIZE_PARAMBIN_GAIN_FETCH ivas_dirac_dec_binaural_determine_processing_matrices( st_ivas, max_band_decorr, Rmat, st_ivas->hHeadTrackData && st_ivas->hHeadTrackData->num_quaternions >= 0 ); ivas_dirac_dec_binaural_determine_processing_matrices( st_ivas, max_band_decorr, Rmat, #ifdef EXTERNAL_ORIENTATIONS hCombinedOrientationData && hCombinedOrientationData->enableCombinedOrientation[subframe] > 0 ); #else st_ivas->hHeadTrackData && st_ivas->hHeadTrackData->num_quaternions >= 0 ); #endif #else ivas_dirac_dec_binaural_determine_processing_matrices( st_ivas, max_band_decorr, Rmat ); #endif Loading
lib_rend/lib_rend.c +9 −1 Original line number Diff line number Diff line Loading @@ -6415,7 +6415,7 @@ static ivas_error renderActiveInputsMasa( IVAS_REND_HANDLE hIvasRend, IVAS_REND_AudioBuffer outAudio ) { int16_t i; int16_t i, sf_idx; input_masa *pCurrentInput; ivas_error error; Loading @@ -6427,6 +6427,14 @@ static ivas_error renderActiveInputsMasa( continue; } #ifdef FIX_541_EXT_REND_MASA_ROTATIONS for ( sf_idx = 0; sf_idx < RENDERER_HEAD_POSITIONS_PER_FRAME; ++sf_idx ) { pCurrentInput->decDummy->hHeadTrackData->Quaternions[sf_idx] = hIvasRend->headRotData.headPositions[sf_idx]; pCurrentInput->decDummy->hHeadTrackData->Pos[sf_idx] = hIvasRend->headRotData.Pos[sf_idx]; } #endif if ( ( error = renderInputMasa( pCurrentInput, hIvasRend->outputConfig, outAudio ) ) != IVAS_ERR_OK ) { return error; Loading