Loading apps/renderer.c +9 −2 Original line number Diff line number Diff line Loading @@ -1055,10 +1055,17 @@ int main( exit( -1 ); } #ifndef FIX_1113_EXTREND_ISAR CLDFBframeSize_smpls = frameSize_smpls * 2; cldfb_in_flag = get_cldfb_in_flag( args.outConfig.audioConfig, &renderConfig ); #endif } #ifdef FIX_1113_EXTREND_ISAR CLDFBframeSize_smpls = frameSize_smpls * 2; cldfb_in_flag = get_cldfb_in_flag( args.outConfig.audioConfig, &renderConfig ); #endif if ( ( error = IVAS_REND_SetOrientationTrackingMode( hIvasRend, args.orientation_tracking ) ) != IVAS_ERR_OK ) { fprintf( stderr, "Error in IVAS_REND_SetOrientationTrackingMode(): %s\n", ivas_error_to_string( error ) ); Loading lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -165,6 +165,7 @@ #define FIX_1111_TDM_LSP_BUFFER /* VA: issue 1111: remove unused buffer `tdm_lspQ_PCh[]' */ #define FIX_1101_CLEANING_JBM_CALL /* VA: issue 1101: remove obsolete call of ivas_jbm_dec_tc_buffer_open() */ #define FIX_1053_AEID_FILE_TEST /* Philips: Tests for the -aeid file and fix for memory error */ #define FIX_1113_EXTREND_ISAR /* FhG: issue 1113: fix external renderer asserts for FOA/HOA2 and CLDFB config */ /* #################### End BE switches ################################## */ Loading lib_dec/ivas_binRenderer_internal.c +15 −1 Original line number Diff line number Diff line Loading @@ -998,8 +998,12 @@ ivas_error ivas_rend_openCldfbRend( hBinRenderer->conv_band = convBand; } #ifdef FIX_1113_EXTREND_ISAR ivas_output_init( hBinRenderer->hInputSetup, inConfig ); #else hBinRenderer->hInputSetup->is_loudspeaker_setup = 0; hBinRenderer->hInputSetup->output_config = inConfig; #endif if ( ( error = getAudioConfigNumChannels( inConfig, &hBinRenderer->hInputSetup->nchan_out_woLFE ) ) != IVAS_ERR_OK ) { return error; Loading Loading @@ -1847,7 +1851,13 @@ void ivas_binRenderer( } /* HOA decoding to CICP19 if needed*/ #ifdef FIX_1113_EXTREND_ISAR if ( hBinRenderer->hInputSetup->is_loudspeaker_setup == 0 && ( hBinRenderer->nInChannels != 16 && hBinRenderer->nInChannels != 9 && hBinRenderer->nInChannels != 4 ) ) // if ( hBinRenderer->hInputSetup->is_loudspeaker_setup == 0 && hBinRenderer->hInputSetup->output_config == IVAS_AUDIO_CONFIG_7_1_4 ) #else if ( hBinRenderer->hInputSetup->is_loudspeaker_setup == 0 && hBinRenderer->nInChannels != 16 ) #endif { ivas_sba2mc_cldfb( *( hBinRenderer->hInputSetup ), RealBuffer, ImagBuffer, hBinRenderer->nInChannels, hBinRenderer->conv_band, numTimeSlots, hBinRenderer->hoa_dec_mtx ); } Loading Loading @@ -1905,7 +1915,11 @@ void ivas_binRenderer( } else { #ifdef FIX_1113_EXTREND_ISAR rotateFrame_shd_cldfb( RealBuffer, ImagBuffer, Rmat_local, hBinRenderer->hInputSetup->nchan_out_woLFE, numTimeSlots, hBinRenderer->hInputSetup->ambisonics_order ); #else rotateFrame_shd_cldfb( RealBuffer, ImagBuffer, Rmat_local, hBinRenderer->hInputSetup->nchan_out_woLFE, numTimeSlots, 3 ); #endif } ivas_binRenderer_filterModule( Cldfb_RealBuffer_Binaural[pos_idx], Cldfb_ImagBuffer_Binaural[pos_idx], RealBuffer, ImagBuffer, numTimeSlots, hBinRenderer, pos_idx ); Loading lib_rend/ivas_rotation.c +2 −1 Original line number Diff line number Diff line Loading @@ -501,8 +501,9 @@ void rotateFrame_shd_cldfb( int16_t l = 0, m1 = 0, m2 = 0; float realRot[2 * HEADROT_ORDER + 1], imagRot[2 * HEADROT_ORDER + 1]; float SHrotmat[HEADROT_SHMAT_DIM][HEADROT_SHMAT_DIM]; #ifndef FIX_1113_EXTREND_ISAR assert( nInChannels == HEADROT_SHMAT_DIM && "Number of channels must be 16!" ); #endif /* initialize rotation matrices with zeros */ for ( i = 0; i < HEADROT_SHMAT_DIM; i++ ) Loading lib_rend/lib_rend.c +2 −1 Original line number Diff line number Diff line Loading @@ -2511,9 +2511,10 @@ static ivas_error updateSbaPanGains( case IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM: { if ( hRendCfg->split_rend_config.rendererSelection == ISAR_SPLIT_REND_RENDERER_SELECTION_FASTCONV ) { #ifndef FIX_1113_EXTREND_ISAR assert( inConfig == IVAS_AUDIO_CONFIG_HOA3 && ( *rendCtx.pOutSampleRate == 48000 ) && "split binaural fast conv mode is currently supported with HOA3 input and 48k sampling rate only" ); #endif if ( ( error = ivas_rend_openCldfbRend( &inputSba->cldfbRendWrapper, inConfig, outConfig, &rendCtx.pSplitRendWrapper->multiBinPoseData, *rendCtx.pOutSampleRate ) ) != IVAS_ERR_OK ) { return error; Loading Loading
apps/renderer.c +9 −2 Original line number Diff line number Diff line Loading @@ -1055,10 +1055,17 @@ int main( exit( -1 ); } #ifndef FIX_1113_EXTREND_ISAR CLDFBframeSize_smpls = frameSize_smpls * 2; cldfb_in_flag = get_cldfb_in_flag( args.outConfig.audioConfig, &renderConfig ); #endif } #ifdef FIX_1113_EXTREND_ISAR CLDFBframeSize_smpls = frameSize_smpls * 2; cldfb_in_flag = get_cldfb_in_flag( args.outConfig.audioConfig, &renderConfig ); #endif if ( ( error = IVAS_REND_SetOrientationTrackingMode( hIvasRend, args.orientation_tracking ) ) != IVAS_ERR_OK ) { fprintf( stderr, "Error in IVAS_REND_SetOrientationTrackingMode(): %s\n", ivas_error_to_string( error ) ); Loading
lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -165,6 +165,7 @@ #define FIX_1111_TDM_LSP_BUFFER /* VA: issue 1111: remove unused buffer `tdm_lspQ_PCh[]' */ #define FIX_1101_CLEANING_JBM_CALL /* VA: issue 1101: remove obsolete call of ivas_jbm_dec_tc_buffer_open() */ #define FIX_1053_AEID_FILE_TEST /* Philips: Tests for the -aeid file and fix for memory error */ #define FIX_1113_EXTREND_ISAR /* FhG: issue 1113: fix external renderer asserts for FOA/HOA2 and CLDFB config */ /* #################### End BE switches ################################## */ Loading
lib_dec/ivas_binRenderer_internal.c +15 −1 Original line number Diff line number Diff line Loading @@ -998,8 +998,12 @@ ivas_error ivas_rend_openCldfbRend( hBinRenderer->conv_band = convBand; } #ifdef FIX_1113_EXTREND_ISAR ivas_output_init( hBinRenderer->hInputSetup, inConfig ); #else hBinRenderer->hInputSetup->is_loudspeaker_setup = 0; hBinRenderer->hInputSetup->output_config = inConfig; #endif if ( ( error = getAudioConfigNumChannels( inConfig, &hBinRenderer->hInputSetup->nchan_out_woLFE ) ) != IVAS_ERR_OK ) { return error; Loading Loading @@ -1847,7 +1851,13 @@ void ivas_binRenderer( } /* HOA decoding to CICP19 if needed*/ #ifdef FIX_1113_EXTREND_ISAR if ( hBinRenderer->hInputSetup->is_loudspeaker_setup == 0 && ( hBinRenderer->nInChannels != 16 && hBinRenderer->nInChannels != 9 && hBinRenderer->nInChannels != 4 ) ) // if ( hBinRenderer->hInputSetup->is_loudspeaker_setup == 0 && hBinRenderer->hInputSetup->output_config == IVAS_AUDIO_CONFIG_7_1_4 ) #else if ( hBinRenderer->hInputSetup->is_loudspeaker_setup == 0 && hBinRenderer->nInChannels != 16 ) #endif { ivas_sba2mc_cldfb( *( hBinRenderer->hInputSetup ), RealBuffer, ImagBuffer, hBinRenderer->nInChannels, hBinRenderer->conv_band, numTimeSlots, hBinRenderer->hoa_dec_mtx ); } Loading Loading @@ -1905,7 +1915,11 @@ void ivas_binRenderer( } else { #ifdef FIX_1113_EXTREND_ISAR rotateFrame_shd_cldfb( RealBuffer, ImagBuffer, Rmat_local, hBinRenderer->hInputSetup->nchan_out_woLFE, numTimeSlots, hBinRenderer->hInputSetup->ambisonics_order ); #else rotateFrame_shd_cldfb( RealBuffer, ImagBuffer, Rmat_local, hBinRenderer->hInputSetup->nchan_out_woLFE, numTimeSlots, 3 ); #endif } ivas_binRenderer_filterModule( Cldfb_RealBuffer_Binaural[pos_idx], Cldfb_ImagBuffer_Binaural[pos_idx], RealBuffer, ImagBuffer, numTimeSlots, hBinRenderer, pos_idx ); Loading
lib_rend/ivas_rotation.c +2 −1 Original line number Diff line number Diff line Loading @@ -501,8 +501,9 @@ void rotateFrame_shd_cldfb( int16_t l = 0, m1 = 0, m2 = 0; float realRot[2 * HEADROT_ORDER + 1], imagRot[2 * HEADROT_ORDER + 1]; float SHrotmat[HEADROT_SHMAT_DIM][HEADROT_SHMAT_DIM]; #ifndef FIX_1113_EXTREND_ISAR assert( nInChannels == HEADROT_SHMAT_DIM && "Number of channels must be 16!" ); #endif /* initialize rotation matrices with zeros */ for ( i = 0; i < HEADROT_SHMAT_DIM; i++ ) Loading
lib_rend/lib_rend.c +2 −1 Original line number Diff line number Diff line Loading @@ -2511,9 +2511,10 @@ static ivas_error updateSbaPanGains( case IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM: { if ( hRendCfg->split_rend_config.rendererSelection == ISAR_SPLIT_REND_RENDERER_SELECTION_FASTCONV ) { #ifndef FIX_1113_EXTREND_ISAR assert( inConfig == IVAS_AUDIO_CONFIG_HOA3 && ( *rendCtx.pOutSampleRate == 48000 ) && "split binaural fast conv mode is currently supported with HOA3 input and 48k sampling rate only" ); #endif if ( ( error = ivas_rend_openCldfbRend( &inputSba->cldfbRendWrapper, inConfig, outConfig, &rendCtx.pSplitRendWrapper->multiBinPoseData, *rendCtx.pOutSampleRate ) ) != IVAS_ERR_OK ) { return error; Loading