Loading apps/renderer.c +15 −0 Original line number Diff line number Diff line Loading @@ -643,12 +643,27 @@ static void setupWithSingleFormatInput( positionProvider->numObjects = args.inConfig.numAudioObjects; for ( int16_t i = 0; i < positionProvider->numObjects; ++i ) { #ifdef FIX_1376_MISSING_ISM_METADATA /* Check if path to metadata file was given */ if ( isEmptyString( args.inMetadataFilePaths[i] ) ) { fprintf( stderr, "No metadata file was given for ISM input %d\n", i ); exit( -1 ); } /* It is allowed on CLI to have no metadata for an ISM input - skip opening if string contains "NULL" */ #else /* It is allowed on CLI to have no metadata for an ISM input - skip opening if string is empty or contains "NULL" */ #endif char charBuf[FILENAME_MAX]; strncpy( charBuf, args.inMetadataFilePaths[i], min( FILENAME_MAX, RENDERER_MAX_CLI_ARG_LENGTH ) - 1 ); charBuf[min( FILENAME_MAX, RENDERER_MAX_CLI_ARG_LENGTH ) - 1] = '\0'; to_upper( charBuf ); #ifdef FIX_1376_MISSING_ISM_METADATA if ( strncmp( charBuf, "NULL", 4 ) == 0 ) #else if ( isEmptyString( args.inMetadataFilePaths[i] ) || strncmp( charBuf, "NULL", 4 ) == 0 ) #endif { continue; } Loading lib_com/options.h +4 −0 Original line number Diff line number Diff line Loading @@ -138,6 +138,10 @@ #define TMP_FIX_1119_SPLIT_RENDERING_VOIP /* FhG: Add error check for unsupported config: split rendering with VoIP mode */ #define FIX_1113_EXTREND_ISAR /* FhG: issue 1113: fix external renderer asserts for FOA/HOA2 and CLDFB config */ #define NONBE_1203_MDCT2DFT_SWITCHING /* VA: issue 1203: fix severe artifacts during MDCT to DFT stereo switching when MDCT ITD is not used */ #define FIX_938_COMPILER_WARNING /* FhG: Fix compiler warning in ivas_mdct_core_reconstruct() */ #define FIX_1376_MISSING_ISM_METADATA /* FhG: IVAS_rend: throw error if there exists an ISM input without a corresponding metadata file path */ #define FIX_1385_INIT_IGF_STOP_FREQ /* FhG: Initialize infoIGFStopFreq in init_igf_dec() */ #define FIX_1387_INIT_PRM_SQQ /* FhG: initialize pointer prm_sqQ, which might be uninitialized in case of bfi == 1 */ /* #################### End BASOP porting switches ############################ */ Loading lib_dec/igf_dec_fx.c +4 −0 Original line number Diff line number Diff line Loading @@ -4292,6 +4292,10 @@ void init_igf_dec( hIGFDec->flag_sparse = &hIGFDec->flag_sparseBuf[0]; hIGFDec->infoTCXNoise_ptr = &hIGFDec->infoTCXNoise_evs[0]; hIGFDec->virtualSpec_fx = &hIGFDec->virtualSpec[0]; #ifdef FIX_1385_INIT_IGF_STOP_FREQ hIGFDec->infoIGFStopFreq = 0; move16(); #endif return; } Loading lib_dec/ivas_mdct_core_dec_fx.c +9 −1 Original line number Diff line number Diff line Loading @@ -699,6 +699,9 @@ void ivas_mdct_core_invQ_fx( set16_fx( bitsRead, 0, CPE_CHANNELS ); tmp_concealment_method = 0; move16(); #ifdef FIX_1387_INIT_PRM_SQQ prm_sqQ = NULL; /* set prm_sqQ to NULL - in case of bfi == 1 it's not set or needed, but it triggers sanitizers */ #endif FOR( ch = 0; ch < CPE_CHANNELS; ch++ ) { Loading Loading @@ -1420,8 +1423,11 @@ void ivas_mdct_core_reconstruct_fx( { Copy_Scale_sig_16_32_no_sat( st->p_bpf_noise_buf, st->p_bpf_noise_buf_32, st->L_frame, Q11 ); // Q0 -> Q11 } #ifndef FIX_938_COMPILER_WARNING IF( signal_outFB_fx[ch] != NULL ) { #endif Copy( synthFB_fx, signal_outFB_fx[ch], st->hTcxDec->L_frameTCX ); #ifdef FIX_2003_CON_TCX_OVERFLOW e_sig[ch] = sub( 15, q_syn + st->Q_syn_factor ); Loading @@ -1429,7 +1435,9 @@ void ivas_mdct_core_reconstruct_fx( e_sig[ch] = sub( 15, q_syn ); #endif move16(); #ifndef FIX_938_COMPILER_WARNING } #endif /* updates */ st->last_voice_factor_fx = 0; Loading Loading
apps/renderer.c +15 −0 Original line number Diff line number Diff line Loading @@ -643,12 +643,27 @@ static void setupWithSingleFormatInput( positionProvider->numObjects = args.inConfig.numAudioObjects; for ( int16_t i = 0; i < positionProvider->numObjects; ++i ) { #ifdef FIX_1376_MISSING_ISM_METADATA /* Check if path to metadata file was given */ if ( isEmptyString( args.inMetadataFilePaths[i] ) ) { fprintf( stderr, "No metadata file was given for ISM input %d\n", i ); exit( -1 ); } /* It is allowed on CLI to have no metadata for an ISM input - skip opening if string contains "NULL" */ #else /* It is allowed on CLI to have no metadata for an ISM input - skip opening if string is empty or contains "NULL" */ #endif char charBuf[FILENAME_MAX]; strncpy( charBuf, args.inMetadataFilePaths[i], min( FILENAME_MAX, RENDERER_MAX_CLI_ARG_LENGTH ) - 1 ); charBuf[min( FILENAME_MAX, RENDERER_MAX_CLI_ARG_LENGTH ) - 1] = '\0'; to_upper( charBuf ); #ifdef FIX_1376_MISSING_ISM_METADATA if ( strncmp( charBuf, "NULL", 4 ) == 0 ) #else if ( isEmptyString( args.inMetadataFilePaths[i] ) || strncmp( charBuf, "NULL", 4 ) == 0 ) #endif { continue; } Loading
lib_com/options.h +4 −0 Original line number Diff line number Diff line Loading @@ -138,6 +138,10 @@ #define TMP_FIX_1119_SPLIT_RENDERING_VOIP /* FhG: Add error check for unsupported config: split rendering with VoIP mode */ #define FIX_1113_EXTREND_ISAR /* FhG: issue 1113: fix external renderer asserts for FOA/HOA2 and CLDFB config */ #define NONBE_1203_MDCT2DFT_SWITCHING /* VA: issue 1203: fix severe artifacts during MDCT to DFT stereo switching when MDCT ITD is not used */ #define FIX_938_COMPILER_WARNING /* FhG: Fix compiler warning in ivas_mdct_core_reconstruct() */ #define FIX_1376_MISSING_ISM_METADATA /* FhG: IVAS_rend: throw error if there exists an ISM input without a corresponding metadata file path */ #define FIX_1385_INIT_IGF_STOP_FREQ /* FhG: Initialize infoIGFStopFreq in init_igf_dec() */ #define FIX_1387_INIT_PRM_SQQ /* FhG: initialize pointer prm_sqQ, which might be uninitialized in case of bfi == 1 */ /* #################### End BASOP porting switches ############################ */ Loading
lib_dec/igf_dec_fx.c +4 −0 Original line number Diff line number Diff line Loading @@ -4292,6 +4292,10 @@ void init_igf_dec( hIGFDec->flag_sparse = &hIGFDec->flag_sparseBuf[0]; hIGFDec->infoTCXNoise_ptr = &hIGFDec->infoTCXNoise_evs[0]; hIGFDec->virtualSpec_fx = &hIGFDec->virtualSpec[0]; #ifdef FIX_1385_INIT_IGF_STOP_FREQ hIGFDec->infoIGFStopFreq = 0; move16(); #endif return; } Loading
lib_dec/ivas_mdct_core_dec_fx.c +9 −1 Original line number Diff line number Diff line Loading @@ -699,6 +699,9 @@ void ivas_mdct_core_invQ_fx( set16_fx( bitsRead, 0, CPE_CHANNELS ); tmp_concealment_method = 0; move16(); #ifdef FIX_1387_INIT_PRM_SQQ prm_sqQ = NULL; /* set prm_sqQ to NULL - in case of bfi == 1 it's not set or needed, but it triggers sanitizers */ #endif FOR( ch = 0; ch < CPE_CHANNELS; ch++ ) { Loading Loading @@ -1420,8 +1423,11 @@ void ivas_mdct_core_reconstruct_fx( { Copy_Scale_sig_16_32_no_sat( st->p_bpf_noise_buf, st->p_bpf_noise_buf_32, st->L_frame, Q11 ); // Q0 -> Q11 } #ifndef FIX_938_COMPILER_WARNING IF( signal_outFB_fx[ch] != NULL ) { #endif Copy( synthFB_fx, signal_outFB_fx[ch], st->hTcxDec->L_frameTCX ); #ifdef FIX_2003_CON_TCX_OVERFLOW e_sig[ch] = sub( 15, q_syn + st->Q_syn_factor ); Loading @@ -1429,7 +1435,9 @@ void ivas_mdct_core_reconstruct_fx( e_sig[ch] = sub( 15, q_syn ); #endif move16(); #ifndef FIX_938_COMPILER_WARNING } #endif /* updates */ st->last_voice_factor_fx = 0; Loading