Loading apps/decoder.c +10 −2 Original line number Diff line number Diff line Loading @@ -744,7 +744,11 @@ int main( } else { destroy_td_hrtf( hHrtfTD ); if ( ( error = destroy_td_hrtf( hHrtfTD ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\ndestroy_td_hrtf() failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } } } #else Loading @@ -754,7 +758,11 @@ int main( } else { destroy_td_hrtf( hHrtfTD ); if ( ( error = destroy_td_hrtf( hHrtfTD ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\ndestroy_td_hrtf() failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } } } #else Loading apps/renderer.c +5 −2 Original line number Diff line number Diff line Loading @@ -1075,7 +1075,11 @@ int main( } else { destroy_td_hrtf( hHrtfTD ); if ( ( error = destroy_td_hrtf( hHrtfTD ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\ndestroy_td_hrtf() failed: \n\n" /*, IVAS_DEC_GetErrorMessage( error )*/ ); goto cleanup; } } } Loading Loading @@ -1164,7 +1168,6 @@ int main( CLDFBframeSize_smpls = 0; cldfb_in_flag = 0; #endif #endif if ( args.renderConfigFilePath[0] != '\0' ) { Loading lib_com/ivas_cnst.h +5 −5 Original line number Diff line number Diff line Loading @@ -1609,11 +1609,6 @@ typedef enum #define MAX_ANGULAR_STEP_INV ( 1.0f / MAX_ANGULAR_STEP ) #define MAX_INTERPOLATION_STEPS 12 #define LR_IAC_LENGTH_NR_FC ( RV_LENGTH_NR_FC ) #ifdef NONBE_FIX_AVG_IAC_CLDFB_REVERB #define LR_IAC_LENGTH_NR_FC_16KHZ ( RV_LENGTH_NR_FC_16KHZ ) #endif /* ----- Enums - TD Renderer ----- */ typedef enum Loading Loading @@ -1670,6 +1665,11 @@ typedef enum #endif #define IVAS_REVERB_DEFAULT_N_BANDS 31 #define LR_IAC_LENGTH_NR_FC ( RV_LENGTH_NR_FC ) #ifdef NONBE_FIX_AVG_IAC_CLDFB_REVERB #define LR_IAC_LENGTH_NR_FC_16KHZ ( RV_LENGTH_NR_FC_16KHZ ) #endif /*----------------------------------------------------------------------------------* * FB mixer constants Loading lib_com/options.h +3 −3 Original line number Diff line number Diff line Loading @@ -158,7 +158,7 @@ #define FIX_CRASH_LONG_BRIR /* Orange : Fix crash when long BRIR is set */ #define FIX_638_ENERGIE_IAC_ROM_TABLES /* Orange : Missing left/right and coherence late reverb tables in binary format*/ #define FIX_OLD_BINARY_FORMAT #define FIX_OLD_BINARY_FORMAT /* Orange: temporary to maintain bitexactness */ #define FIX_INV_DIFFUSE_WEIGHT /* Orange : Fix error in energy compensation in late binaural reverb*/ #define FIX_20_MS_FRAME_LEN_TABLES_CONVERTER /* Orange : generate_tables_converter tools can generate rom for 5 and 20 ms frame length */ Loading @@ -168,8 +168,8 @@ /* any switch which is non-be wrt selection floating point code */ /* all switches in this category should start with "NONBE_" */ #define NONBE_FIX_BINARY_BINAURAL_READING /* Add support for reading binaural binary file */ #define NONBE_FIX_AVG_IAC_CLDFB_REVERB /* Add computation avg energy and iac tables for rom and binaural binary file */ #define NONBE_FIX_BINARY_BINAURAL_READING /* Orange: Add support for reading binaural binary file */ #define NONBE_FIX_AVG_IAC_CLDFB_REVERB /* Orange: Add computation avg energy and iac tables for rom and binaural binary file */ #define NONBE_FIX_856_TCX_LTP_SYNTH_FILTER /* FhG: issue 856: correct filtering length for tcx-ltp synth filtering*/ #define NONBE_FIX_926_OSBA_DECODER_CRASH_PLANAR_SBA /* FhG: issue 926: crash in OSBA decoding with planar FOA */ #define NONBE_FIX_908_OSBA_BR_SWITCHING_CRASH /* FhG: issue 908: fix crash in OSBA BR switching with long test vectors */ Loading lib_rend/lib_rend.c +9 −10 Original line number Diff line number Diff line Loading @@ -2311,7 +2311,6 @@ static ivas_error initMcBinauralRendering( { /* open CREND */ #ifdef SPLIT_REND_WITH_HEAD_ROT #ifdef NONBE_FIX_BINARY_BINAURAL_READING if ( ( error = ivas_rend_openCrend( &inputMc->crendWrapper, ( inConfig == IVAS_AUDIO_CONFIG_LS_CUSTOM ) ? IVAS_AUDIO_CONFIG_7_1_4 : inConfig, outConfig, hRendCfg, hMixconv, outSampleRate, ( ( outConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) || ( outConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) ) ? inputMc->base.ctx.pSplitRendWrapper->multiBinPoseData.num_poses : 1 ) ) != IVAS_ERR_OK ) Loading @@ -2324,10 +2323,8 @@ static ivas_error initMcBinauralRendering( #else #ifdef NONBE_FIX_BINARY_BINAURAL_READING if ( ( error = ivas_rend_openCrend( &inputMc->crendWrapper, ( inConfig == IVAS_AUDIO_CONFIG_LS_CUSTOM ) ? IVAS_AUDIO_CONFIG_7_1_4 : inConfig, outConfig, hRendCfg, hMixconv, outSampleRate ) ) != IVAS_ERR_OK ) #else if ( ( error = ivas_rend_openCrend( &inputMc->crendWrapper, ( inConfig == IVAS_AUDIO_CONFIG_LS_CUSTOM ) ? IVAS_AUDIO_CONFIG_7_1_4 : inConfig, outConfig, hRendCfg, NULL, outSampleRate ) ) != IVAS_ERR_OK ) #endif #endif { Loading Loading @@ -2878,11 +2875,10 @@ static ivas_error setRendInputActiveSplitPostRend( void *input, const AUDIO_CONFIG inConfig, const IVAS_REND_InputId id, RENDER_CONFIG_DATA *hRendCfg #ifdef NONBE_FIX_BINARY_BINAURAL_READING RENDER_CONFIG_DATA *hRendCfg, , hrtf_handles *hrtfs #else RENDER_CONFIG_DATA *hRendCfg #endif ) { Loading Loading @@ -3897,7 +3893,7 @@ ivas_error IVAS_REND_AddInput( void *inputsArray; int32_t inputStructSize; #ifdef NONBE_FIX_BINARY_BINAURAL_READING ivas_error ( *activateInput )( void *, AUDIO_CONFIG, IVAS_REND_InputId, RENDER_CONFIG_DATA *, hrtf_handles *hrtfs ); ivas_error ( *activateInput )( void *, AUDIO_CONFIG, IVAS_REND_InputId, RENDER_CONFIG_DATA *, hrtf_handles * ); #else ivas_error ( *activateInput )( void *, AUDIO_CONFIG, IVAS_REND_InputId, RENDER_CONFIG_DATA * ); #endif Loading Loading @@ -4044,8 +4040,9 @@ ivas_error IVAS_REND_ConfigureCustomInputLoudspeakerLayout( if ( ( error = initMcBinauralRendering( inputMc, inputMc->base.inConfig, hIvasRend->outputConfig, hIvasRend->hRendererConfig, hIvasRend->hRendererConfig #ifdef NONBE_FIX_BINARY_BINAURAL_READING , hIvasRend->hHrtfs.hSetOfHRTF, #endif FALSE ) ) != IVAS_ERR_OK ) Loading Loading @@ -4890,8 +4887,9 @@ ivas_error IVAS_REND_SetHeadRotation( if ( ( error = initMcBinauralRendering( &hIvasRend->inputsMc[i], hIvasRend->inputsMc[i].base.inConfig, hIvasRend->outputConfig, hIvasRend->hRendererConfig, hIvasRend->hRendererConfig #ifdef NONBE_FIX_BINARY_BINAURAL_READING , hIvasRend->hHrtfs.hSetOfHRTF, #endif TRUE ) ) != IVAS_ERR_OK ) Loading Loading @@ -4957,8 +4955,9 @@ ivas_error IVAS_REND_DisableHeadRotation( if ( ( error = initMcBinauralRendering( &hIvasRend->inputsMc[i], hIvasRend->inputsMc[i].base.inConfig, hIvasRend->outputConfig, hIvasRend->hRendererConfig, hIvasRend->hRendererConfig #ifdef NONBE_FIX_BINARY_BINAURAL_READING , hIvasRend->hHrtfs.hSetOfHRTF, #endif TRUE ) ) != IVAS_ERR_OK ) Loading Loading
apps/decoder.c +10 −2 Original line number Diff line number Diff line Loading @@ -744,7 +744,11 @@ int main( } else { destroy_td_hrtf( hHrtfTD ); if ( ( error = destroy_td_hrtf( hHrtfTD ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\ndestroy_td_hrtf() failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } } } #else Loading @@ -754,7 +758,11 @@ int main( } else { destroy_td_hrtf( hHrtfTD ); if ( ( error = destroy_td_hrtf( hHrtfTD ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\ndestroy_td_hrtf() failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } } } #else Loading
apps/renderer.c +5 −2 Original line number Diff line number Diff line Loading @@ -1075,7 +1075,11 @@ int main( } else { destroy_td_hrtf( hHrtfTD ); if ( ( error = destroy_td_hrtf( hHrtfTD ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\ndestroy_td_hrtf() failed: \n\n" /*, IVAS_DEC_GetErrorMessage( error )*/ ); goto cleanup; } } } Loading Loading @@ -1164,7 +1168,6 @@ int main( CLDFBframeSize_smpls = 0; cldfb_in_flag = 0; #endif #endif if ( args.renderConfigFilePath[0] != '\0' ) { Loading
lib_com/ivas_cnst.h +5 −5 Original line number Diff line number Diff line Loading @@ -1609,11 +1609,6 @@ typedef enum #define MAX_ANGULAR_STEP_INV ( 1.0f / MAX_ANGULAR_STEP ) #define MAX_INTERPOLATION_STEPS 12 #define LR_IAC_LENGTH_NR_FC ( RV_LENGTH_NR_FC ) #ifdef NONBE_FIX_AVG_IAC_CLDFB_REVERB #define LR_IAC_LENGTH_NR_FC_16KHZ ( RV_LENGTH_NR_FC_16KHZ ) #endif /* ----- Enums - TD Renderer ----- */ typedef enum Loading Loading @@ -1670,6 +1665,11 @@ typedef enum #endif #define IVAS_REVERB_DEFAULT_N_BANDS 31 #define LR_IAC_LENGTH_NR_FC ( RV_LENGTH_NR_FC ) #ifdef NONBE_FIX_AVG_IAC_CLDFB_REVERB #define LR_IAC_LENGTH_NR_FC_16KHZ ( RV_LENGTH_NR_FC_16KHZ ) #endif /*----------------------------------------------------------------------------------* * FB mixer constants Loading
lib_com/options.h +3 −3 Original line number Diff line number Diff line Loading @@ -158,7 +158,7 @@ #define FIX_CRASH_LONG_BRIR /* Orange : Fix crash when long BRIR is set */ #define FIX_638_ENERGIE_IAC_ROM_TABLES /* Orange : Missing left/right and coherence late reverb tables in binary format*/ #define FIX_OLD_BINARY_FORMAT #define FIX_OLD_BINARY_FORMAT /* Orange: temporary to maintain bitexactness */ #define FIX_INV_DIFFUSE_WEIGHT /* Orange : Fix error in energy compensation in late binaural reverb*/ #define FIX_20_MS_FRAME_LEN_TABLES_CONVERTER /* Orange : generate_tables_converter tools can generate rom for 5 and 20 ms frame length */ Loading @@ -168,8 +168,8 @@ /* any switch which is non-be wrt selection floating point code */ /* all switches in this category should start with "NONBE_" */ #define NONBE_FIX_BINARY_BINAURAL_READING /* Add support for reading binaural binary file */ #define NONBE_FIX_AVG_IAC_CLDFB_REVERB /* Add computation avg energy and iac tables for rom and binaural binary file */ #define NONBE_FIX_BINARY_BINAURAL_READING /* Orange: Add support for reading binaural binary file */ #define NONBE_FIX_AVG_IAC_CLDFB_REVERB /* Orange: Add computation avg energy and iac tables for rom and binaural binary file */ #define NONBE_FIX_856_TCX_LTP_SYNTH_FILTER /* FhG: issue 856: correct filtering length for tcx-ltp synth filtering*/ #define NONBE_FIX_926_OSBA_DECODER_CRASH_PLANAR_SBA /* FhG: issue 926: crash in OSBA decoding with planar FOA */ #define NONBE_FIX_908_OSBA_BR_SWITCHING_CRASH /* FhG: issue 908: fix crash in OSBA BR switching with long test vectors */ Loading
lib_rend/lib_rend.c +9 −10 Original line number Diff line number Diff line Loading @@ -2311,7 +2311,6 @@ static ivas_error initMcBinauralRendering( { /* open CREND */ #ifdef SPLIT_REND_WITH_HEAD_ROT #ifdef NONBE_FIX_BINARY_BINAURAL_READING if ( ( error = ivas_rend_openCrend( &inputMc->crendWrapper, ( inConfig == IVAS_AUDIO_CONFIG_LS_CUSTOM ) ? IVAS_AUDIO_CONFIG_7_1_4 : inConfig, outConfig, hRendCfg, hMixconv, outSampleRate, ( ( outConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) || ( outConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) ) ? inputMc->base.ctx.pSplitRendWrapper->multiBinPoseData.num_poses : 1 ) ) != IVAS_ERR_OK ) Loading @@ -2324,10 +2323,8 @@ static ivas_error initMcBinauralRendering( #else #ifdef NONBE_FIX_BINARY_BINAURAL_READING if ( ( error = ivas_rend_openCrend( &inputMc->crendWrapper, ( inConfig == IVAS_AUDIO_CONFIG_LS_CUSTOM ) ? IVAS_AUDIO_CONFIG_7_1_4 : inConfig, outConfig, hRendCfg, hMixconv, outSampleRate ) ) != IVAS_ERR_OK ) #else if ( ( error = ivas_rend_openCrend( &inputMc->crendWrapper, ( inConfig == IVAS_AUDIO_CONFIG_LS_CUSTOM ) ? IVAS_AUDIO_CONFIG_7_1_4 : inConfig, outConfig, hRendCfg, NULL, outSampleRate ) ) != IVAS_ERR_OK ) #endif #endif { Loading Loading @@ -2878,11 +2875,10 @@ static ivas_error setRendInputActiveSplitPostRend( void *input, const AUDIO_CONFIG inConfig, const IVAS_REND_InputId id, RENDER_CONFIG_DATA *hRendCfg #ifdef NONBE_FIX_BINARY_BINAURAL_READING RENDER_CONFIG_DATA *hRendCfg, , hrtf_handles *hrtfs #else RENDER_CONFIG_DATA *hRendCfg #endif ) { Loading Loading @@ -3897,7 +3893,7 @@ ivas_error IVAS_REND_AddInput( void *inputsArray; int32_t inputStructSize; #ifdef NONBE_FIX_BINARY_BINAURAL_READING ivas_error ( *activateInput )( void *, AUDIO_CONFIG, IVAS_REND_InputId, RENDER_CONFIG_DATA *, hrtf_handles *hrtfs ); ivas_error ( *activateInput )( void *, AUDIO_CONFIG, IVAS_REND_InputId, RENDER_CONFIG_DATA *, hrtf_handles * ); #else ivas_error ( *activateInput )( void *, AUDIO_CONFIG, IVAS_REND_InputId, RENDER_CONFIG_DATA * ); #endif Loading Loading @@ -4044,8 +4040,9 @@ ivas_error IVAS_REND_ConfigureCustomInputLoudspeakerLayout( if ( ( error = initMcBinauralRendering( inputMc, inputMc->base.inConfig, hIvasRend->outputConfig, hIvasRend->hRendererConfig, hIvasRend->hRendererConfig #ifdef NONBE_FIX_BINARY_BINAURAL_READING , hIvasRend->hHrtfs.hSetOfHRTF, #endif FALSE ) ) != IVAS_ERR_OK ) Loading Loading @@ -4890,8 +4887,9 @@ ivas_error IVAS_REND_SetHeadRotation( if ( ( error = initMcBinauralRendering( &hIvasRend->inputsMc[i], hIvasRend->inputsMc[i].base.inConfig, hIvasRend->outputConfig, hIvasRend->hRendererConfig, hIvasRend->hRendererConfig #ifdef NONBE_FIX_BINARY_BINAURAL_READING , hIvasRend->hHrtfs.hSetOfHRTF, #endif TRUE ) ) != IVAS_ERR_OK ) Loading Loading @@ -4957,8 +4955,9 @@ ivas_error IVAS_REND_DisableHeadRotation( if ( ( error = initMcBinauralRendering( &hIvasRend->inputsMc[i], hIvasRend->inputsMc[i].base.inConfig, hIvasRend->outputConfig, hIvasRend->hRendererConfig, hIvasRend->hRendererConfig #ifdef NONBE_FIX_BINARY_BINAURAL_READING , hIvasRend->hHrtfs.hSetOfHRTF, #endif TRUE ) ) != IVAS_ERR_OK ) Loading