Loading CMakeLists.txt +1 −0 Original line number Diff line number Diff line Loading @@ -57,6 +57,7 @@ if(UNIX) set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -m64") endif() # C compiler flags set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ffp-contract=off") # disable floating point operation contraction set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pedantic -Wcast-qual -Wall -W -Wextra -Wno-long-long") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror-implicit-function-declaration -Wno-unused-parameter") Loading Makefile +1 −1 Original line number Diff line number Diff line Loading @@ -58,7 +58,7 @@ endif CFLAGS += -std=c99 -pedantic -Wcast-qual -Wall -W -Wextra -Wno-long-long \ -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes \ -Werror-implicit-function-declaration \ -Wno-implicit-fallthrough -Wno-implicit-fallthrough -ffp-contract=off # libs to link LDLIBS += -lm Loading lib_com/ivas_prot.h +30 −0 Original line number Diff line number Diff line Loading @@ -1453,7 +1453,11 @@ int16_t stereo_dft_sg_recovery( void stereo_dft_dec_res( CPE_DEC_HANDLE hCPE, /* i/o: decoder CPE handle */ #ifdef FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO float res_buf[STEREO_DFT_N_8k], /* i : residual buffer */ #else float res_buf[STEREO_DFT_BUF_MAX], /* i : residual buffer */ #endif float *output /* o : output frame */ ); Loading @@ -1461,7 +1465,11 @@ void stereo_dft_dec_res( int16_t res_bpf_adapt( STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: DFT stereo decoder handle */ const float *bpf_error_signal_8k, /* i : BPF modification signal */ #ifdef FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO float res_buf[STEREO_DFT_N_8k] /* i : residual buffer */ #else float res_buf[STEREO_DFT_BUF_MAX] /* i : residual buffer */ #endif ); void bpf_pitch_coherence( Loading @@ -1477,7 +1485,11 @@ void stereo_dft_dec_read_BS( STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: decoder DFT stereo handle */ const int16_t bwidth, /* i : bandwidth */ const int16_t output_frame, /* i : output frame length */ #ifdef FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO float res_buf[STEREO_DFT_N_8k], /* o : residual buffer */ #else float res_buf[STEREO_DFT_BUF_MAX], /* o : residual buffer */ #endif int16_t *nb_bits, /* o : number of bits read */ float *coh, /* i/o: Coherence */ const int16_t ivas_format /* i : ivas format */ Loading Loading @@ -2252,10 +2264,19 @@ void EstimateStereoTCXNoiseLevel( void TNSAnalysisStereo( Encoder_State **sts, /* i : state handle */ #ifdef FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO float *mdst_spectrum[CPE_CHANNELS][NB_DIV], /* o : MDST spectrum */ #else float *mdst_spectrum[MCT_MAX_CHANNELS][NB_DIV], /* o : MDST spectrum */ #endif const int16_t bWhitenedDomain, /* i : whitened domain flag */ #ifdef FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO int16_t tnsSize[CPE_CHANNELS][NB_DIV], /* i : number of tns parameters put into prm */ int16_t tnsBits[CPE_CHANNELS][NB_DIV], /* i : number of tns bits in the frame */ #else int16_t tnsSize[MCT_MAX_CHANNELS][NB_DIV], /* i : number of tns parameters put into prm */ int16_t tnsBits[MCT_MAX_CHANNELS][NB_DIV], /* i : number of tns bits in the frame */ #endif int16_t param_core[][NB_DIV * NPRM_DIV], /* o : quantized noise filling level */ const int16_t mct_on /* i : flag mct block (1) or stereo (0) */ ); Loading Loading @@ -2538,8 +2559,13 @@ void stereo_decoder_tcx( STEREO_MDCT_DEC_DATA *hStereoMdct, /* i/o: MDCT stereo decoder structure */ int16_t ms_mask[NB_DIV][MAX_SFB], /* i : bandwise MS mask */ float *spec_r_0[NB_DIV], /* i/o: spectrum right channel */ #ifdef FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO float *spec_l[], /* i/o: spectrum left channel [NB_DIV][N] */ float *spec_r[], /* i/o: spectrum right channel [NB_DIV][N] */ #else float *spec_l[NB_DIV], /* i/o: spectrum left channel */ float *spec_r[NB_DIV], /* i/o: spectrum right channel */ #endif const int16_t mdct_stereo_mode[], /* i : stereo mode (FB/band wise MS, dual mono */ const int16_t core_l, /* i : core for left channel (TCX20/TCX10) */ const int16_t core_r, /* i : core for right channel (TCX20/TCX10) */ Loading Loading @@ -3071,7 +3097,11 @@ void mctStereoIGF_enc( void ivas_mdct_dec_side_bits_frame_channel( CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */ #ifdef FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO int16_t param_lpc[CPE_CHANNELS][NPRM_LPC_NEW], /* o : lpc_parameters */ #else int16_t param_lpc[MCT_MAX_CHANNELS][NPRM_LPC_NEW], /* o : lpc_parameters */ #endif int16_t p_param[CPE_CHANNELS][NB_DIV], /* o : pointer to param buffer */ Decoder_State *st0, /* i : pointer to bitstream handle */ int16_t nTnsBitsTCX10[CPE_CHANNELS][NB_DIV], /* o : number of bits for TNS */ Loading lib_com/options.h +4 −3 Original line number Diff line number Diff line Loading @@ -151,16 +151,18 @@ /*#define SPLIT_REND_WITH_HEAD_ROT */ /* Dlb,FhG: Split Rendering contributions 21 and 35 */ #define FIX_643_PCA_OPTION /* VA: issue 643: rename PCA bypass command-line option */ #define FIX_902_HACK_IN_CORECODER /* VA: issue 902: remove a hack in ivas_core_dec() */ #define FIX_881_REMOVE_LFE_ADDITION_IN_ISM /* VA: issue 881: remove LFE addition in ISM format */ #define FIX_899_VARIABLE_SPEED_DECODING /* FhG: Fix variable speed decoding */ #define FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO /* VA: Fix the definition of buffers/arrays in DFT and MDCT stereo to satisfy gcc v 11.4.0 */ #define FIX_891_PARAMUPMIX_CLEANUP /* Dlb: issue 891: remove unneeded code from ParamUpmix */ /* #################### End BE switches ################################## */ #define FIX_899_VARIABLE_SPEED_DECODING /* FhG: Fix variable speed decoding */ /* #################### Start NON-BE switches ############################ */ /* any switch which is non-be wrt selection floating point code */ /* all switches in this category should start with "NONBE_" */ #define NONBE_FIX_788_SBA_DTX_BR_SWITCHING /* VA: issue 787: fix Msan error in SBA BR switching with dtx in FOA encoding */ #define NONBE_FIX_856_TCX_LTP_SYNTH_FILTER /* FhG: issue 856: correct filtering length for tcx-ltp synth filtering*/ #define NONBE_UNIFIED_DECODING_PATHS /* FhG: unify decoding paths */ Loading @@ -168,7 +170,6 @@ #define NONBE_FIX_871_ACELP_CRASH_IN_OSBA /* FhG: isse 871: crash in ACELP core encoder with OSBA */ #define NONBE_FIX_225_MASA_EXT_REND /* Nokia: Resolve #225: Complete MASA external renderer implementation */ #define NONBE_FIX_897_USAN_WITH_MASA_RENDERING /* Nokia: issue #897: USAN null pointer in MASA external renderer to Ambisonics */ #define NONBE_FIX_903_OSBA_TO_STEREO /* VA: issue 903: fix OSBA to stereo rendering issue */ #define NONBE_FIX_811_DFT_DOUBLE_TO_FLOAT /* FhG: issue 811: change double precision functions to float in DFT Stereo */ /* ##################### End NON-BE switches ########################### */ Loading lib_dec/bass_psfilter.c +5 −1 Original line number Diff line number Diff line Loading @@ -522,7 +522,11 @@ void addBassPostFilter( int16_t res_bpf_adapt( STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: DFT stereo decoder handle */ const float *bpf_error_signal_8k, /* i : BPF modification signal */ #ifdef FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO float res_buf[STEREO_DFT_N_8k] /* i : residual buffer */ #else float res_buf[STEREO_DFT_BUF_MAX] /* i : residual buffer */ #endif ) { float error_nrg; Loading Loading
CMakeLists.txt +1 −0 Original line number Diff line number Diff line Loading @@ -57,6 +57,7 @@ if(UNIX) set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -m64") endif() # C compiler flags set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -ffp-contract=off") # disable floating point operation contraction set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -pedantic -Wcast-qual -Wall -W -Wextra -Wno-long-long") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes") set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror-implicit-function-declaration -Wno-unused-parameter") Loading
Makefile +1 −1 Original line number Diff line number Diff line Loading @@ -58,7 +58,7 @@ endif CFLAGS += -std=c99 -pedantic -Wcast-qual -Wall -W -Wextra -Wno-long-long \ -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes \ -Werror-implicit-function-declaration \ -Wno-implicit-fallthrough -Wno-implicit-fallthrough -ffp-contract=off # libs to link LDLIBS += -lm Loading
lib_com/ivas_prot.h +30 −0 Original line number Diff line number Diff line Loading @@ -1453,7 +1453,11 @@ int16_t stereo_dft_sg_recovery( void stereo_dft_dec_res( CPE_DEC_HANDLE hCPE, /* i/o: decoder CPE handle */ #ifdef FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO float res_buf[STEREO_DFT_N_8k], /* i : residual buffer */ #else float res_buf[STEREO_DFT_BUF_MAX], /* i : residual buffer */ #endif float *output /* o : output frame */ ); Loading @@ -1461,7 +1465,11 @@ void stereo_dft_dec_res( int16_t res_bpf_adapt( STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: DFT stereo decoder handle */ const float *bpf_error_signal_8k, /* i : BPF modification signal */ #ifdef FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO float res_buf[STEREO_DFT_N_8k] /* i : residual buffer */ #else float res_buf[STEREO_DFT_BUF_MAX] /* i : residual buffer */ #endif ); void bpf_pitch_coherence( Loading @@ -1477,7 +1485,11 @@ void stereo_dft_dec_read_BS( STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: decoder DFT stereo handle */ const int16_t bwidth, /* i : bandwidth */ const int16_t output_frame, /* i : output frame length */ #ifdef FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO float res_buf[STEREO_DFT_N_8k], /* o : residual buffer */ #else float res_buf[STEREO_DFT_BUF_MAX], /* o : residual buffer */ #endif int16_t *nb_bits, /* o : number of bits read */ float *coh, /* i/o: Coherence */ const int16_t ivas_format /* i : ivas format */ Loading Loading @@ -2252,10 +2264,19 @@ void EstimateStereoTCXNoiseLevel( void TNSAnalysisStereo( Encoder_State **sts, /* i : state handle */ #ifdef FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO float *mdst_spectrum[CPE_CHANNELS][NB_DIV], /* o : MDST spectrum */ #else float *mdst_spectrum[MCT_MAX_CHANNELS][NB_DIV], /* o : MDST spectrum */ #endif const int16_t bWhitenedDomain, /* i : whitened domain flag */ #ifdef FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO int16_t tnsSize[CPE_CHANNELS][NB_DIV], /* i : number of tns parameters put into prm */ int16_t tnsBits[CPE_CHANNELS][NB_DIV], /* i : number of tns bits in the frame */ #else int16_t tnsSize[MCT_MAX_CHANNELS][NB_DIV], /* i : number of tns parameters put into prm */ int16_t tnsBits[MCT_MAX_CHANNELS][NB_DIV], /* i : number of tns bits in the frame */ #endif int16_t param_core[][NB_DIV * NPRM_DIV], /* o : quantized noise filling level */ const int16_t mct_on /* i : flag mct block (1) or stereo (0) */ ); Loading Loading @@ -2538,8 +2559,13 @@ void stereo_decoder_tcx( STEREO_MDCT_DEC_DATA *hStereoMdct, /* i/o: MDCT stereo decoder structure */ int16_t ms_mask[NB_DIV][MAX_SFB], /* i : bandwise MS mask */ float *spec_r_0[NB_DIV], /* i/o: spectrum right channel */ #ifdef FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO float *spec_l[], /* i/o: spectrum left channel [NB_DIV][N] */ float *spec_r[], /* i/o: spectrum right channel [NB_DIV][N] */ #else float *spec_l[NB_DIV], /* i/o: spectrum left channel */ float *spec_r[NB_DIV], /* i/o: spectrum right channel */ #endif const int16_t mdct_stereo_mode[], /* i : stereo mode (FB/band wise MS, dual mono */ const int16_t core_l, /* i : core for left channel (TCX20/TCX10) */ const int16_t core_r, /* i : core for right channel (TCX20/TCX10) */ Loading Loading @@ -3071,7 +3097,11 @@ void mctStereoIGF_enc( void ivas_mdct_dec_side_bits_frame_channel( CPE_DEC_HANDLE hCPE, /* i/o: CPE decoder structure */ #ifdef FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO int16_t param_lpc[CPE_CHANNELS][NPRM_LPC_NEW], /* o : lpc_parameters */ #else int16_t param_lpc[MCT_MAX_CHANNELS][NPRM_LPC_NEW], /* o : lpc_parameters */ #endif int16_t p_param[CPE_CHANNELS][NB_DIV], /* o : pointer to param buffer */ Decoder_State *st0, /* i : pointer to bitstream handle */ int16_t nTnsBitsTCX10[CPE_CHANNELS][NB_DIV], /* o : number of bits for TNS */ Loading
lib_com/options.h +4 −3 Original line number Diff line number Diff line Loading @@ -151,16 +151,18 @@ /*#define SPLIT_REND_WITH_HEAD_ROT */ /* Dlb,FhG: Split Rendering contributions 21 and 35 */ #define FIX_643_PCA_OPTION /* VA: issue 643: rename PCA bypass command-line option */ #define FIX_902_HACK_IN_CORECODER /* VA: issue 902: remove a hack in ivas_core_dec() */ #define FIX_881_REMOVE_LFE_ADDITION_IN_ISM /* VA: issue 881: remove LFE addition in ISM format */ #define FIX_899_VARIABLE_SPEED_DECODING /* FhG: Fix variable speed decoding */ #define FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO /* VA: Fix the definition of buffers/arrays in DFT and MDCT stereo to satisfy gcc v 11.4.0 */ #define FIX_891_PARAMUPMIX_CLEANUP /* Dlb: issue 891: remove unneeded code from ParamUpmix */ /* #################### End BE switches ################################## */ #define FIX_899_VARIABLE_SPEED_DECODING /* FhG: Fix variable speed decoding */ /* #################### Start NON-BE switches ############################ */ /* any switch which is non-be wrt selection floating point code */ /* all switches in this category should start with "NONBE_" */ #define NONBE_FIX_788_SBA_DTX_BR_SWITCHING /* VA: issue 787: fix Msan error in SBA BR switching with dtx in FOA encoding */ #define NONBE_FIX_856_TCX_LTP_SYNTH_FILTER /* FhG: issue 856: correct filtering length for tcx-ltp synth filtering*/ #define NONBE_UNIFIED_DECODING_PATHS /* FhG: unify decoding paths */ Loading @@ -168,7 +170,6 @@ #define NONBE_FIX_871_ACELP_CRASH_IN_OSBA /* FhG: isse 871: crash in ACELP core encoder with OSBA */ #define NONBE_FIX_225_MASA_EXT_REND /* Nokia: Resolve #225: Complete MASA external renderer implementation */ #define NONBE_FIX_897_USAN_WITH_MASA_RENDERING /* Nokia: issue #897: USAN null pointer in MASA external renderer to Ambisonics */ #define NONBE_FIX_903_OSBA_TO_STEREO /* VA: issue 903: fix OSBA to stereo rendering issue */ #define NONBE_FIX_811_DFT_DOUBLE_TO_FLOAT /* FhG: issue 811: change double precision functions to float in DFT Stereo */ /* ##################### End NON-BE switches ########################### */ Loading
lib_dec/bass_psfilter.c +5 −1 Original line number Diff line number Diff line Loading @@ -522,7 +522,11 @@ void addBassPostFilter( int16_t res_bpf_adapt( STEREO_DFT_DEC_DATA_HANDLE hStereoDft, /* i/o: DFT stereo decoder handle */ const float *bpf_error_signal_8k, /* i : BPF modification signal */ #ifdef FIX_887_ARRAY_SIZE_DFT_MDCT_STEREO float res_buf[STEREO_DFT_N_8k] /* i : residual buffer */ #else float res_buf[STEREO_DFT_BUF_MAX] /* i : residual buffer */ #endif ) { float error_nrg; Loading