Loading .gitlab-ci.yml +5 −2 Original line number Diff line number Diff line Loading @@ -549,6 +549,8 @@ pytest-compare-20ms-and-5ms-rendering: - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --update_ref 1 -m create_ref_part2 ### run pytest - exit_code=0 - exit_code5=0 - exit_code10=0 - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --html=report-5ms.html --self-contained-html --junit-xml=report-junit-5ms.xml --dut_fr 5 --decoder_only || exit_code5=$? - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --html=report-10ms.html --self-contained-html --junit-xml=report-junit-10ms.xml --dut_fr 10 --decoder_only || exit_code10=$? - zero_errors5=$(cat report-junit-5ms.xml | grep -c 'errors="0"') || true Loading Loading @@ -2040,8 +2042,9 @@ coverage-test-on-main-scheduled: - python3 tests/create_short_testvectors.py - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v -n auto --update_ref 1 -m create_ref --ref_encoder_path ./IVAS_cod --ref_decoder_path ./IVAS_dec - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v -n auto --update_ref 1 -m create_ref_part2 --ref_encoder_path ./IVAS_cod --ref_decoder_path ./IVAS_dec - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --dut_encoder_path ./IVAS_cod --dut_decoder_path ./IVAS_dec --dut_fr 5 --decoder_only - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --dut_encoder_path ./IVAS_cod --dut_decoder_path ./IVAS_dec --dut_fr 10 --decoder_only # need to ignore non-zero exit codes as limiter is active and thus the different framesiszes will not be BE in all cases - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --dut_encoder_path ./IVAS_cod --dut_decoder_path ./IVAS_dec --dut_fr 5 --decoder_only || true - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --dut_encoder_path ./IVAS_cod --dut_decoder_path ./IVAS_dec --dut_fr 10 --decoder_only || true - python3 -m pytest -q -n auto tests/renderer/test_renderer.py --create_ref - python3 -m pytest -q -n auto tests/renderer/test_renderer.py --create_cut - lcov -c -d obj -o coverage_stv.info # extract coverage of short test vectors here Loading lib_com/options.h +2 −0 Original line number Diff line number Diff line Loading @@ -160,6 +160,7 @@ #define FIX_1009_ISM_NONDIEGETIC_PANNING /* FhG: issue #1009: use correct object buffer for ISM1 non-diegetic pan */ #define FIX_1020_AEID_SELECTION_ERRORS /* Philips: issue #1020: fix for acoustic environment ID selection errors */ #define FIX_993_REMOVE_SBA_GET_ORDER /* VA: issue 993: remove unused function ivas_sba_get_order() */ #define FIX_960_SYN_OUTPUT /* VA: issue 960: unused function syn_output() is removed */ /* #################### End BE switches ################################## */ Loading @@ -172,6 +173,7 @@ #define NONBE_FIX_1004_USAN_DTX_MASA_NO_DIRS /* Nokia: fix USAN error caused by non-setting of correctly the number of MASA directions in DTX */ #define NONBE_FIX_1014_1015_1016_OSBA_JBM_STEREO /* FhG: issues #1014, #1015, #1016: fix tc buffer info update in the discrete ism renderer */ #define NONBE_FIX_987_PARAMC_BINAURAL_REVERB_RENDERING /* FhG: issue 987: solution b: downmix HOA3 to stereo a input for the reverberator */ #define NONBE_FIX_1010_STEREO_CNG_DIV_BY_ZERO /* Eri: Issue 1010: Division by zero in Stereo CNG */ /* ##################### End NON-BE switches ########################### */ Loading lib_com/prot.h +4 −0 Original line number Diff line number Diff line Loading @@ -161,12 +161,14 @@ int16_t sum_s( const int16_t lvec /* i : length of input vector */ ); #ifdef DEBUGGING /*! r: sum of all vector elements */ int32_t sum_l( const int32_t *vec, /* i : input vector */ const int16_t lvec /* i : length of input vector */ ); #endif /*! r: sum of all vector elements */ float sum_f( const float *vec, /* i : input vector */ Loading Loading @@ -4822,12 +4824,14 @@ void dec_acelp_4t64( const int16_t Opt_AMR_WB /* i : flag indicating AMR-WB IO mode */ ); #ifndef FIX_960_SYN_OUTPUT uint32_t syn_output( float *synth, /* i/o: float synthesis signal */ const int16_t output_frame, /* i : output frame length */ int16_t *synth_out /* o : integer 16 bits synthesis signal */ ); #endif void FEC_exc_estim( Decoder_State *st, /* i/o: Decoder static memory */ const int16_t L_frame, /* i : length of the frame */ Loading lib_com/tools.c +2 −0 Original line number Diff line number Diff line Loading @@ -138,6 +138,7 @@ int16_t sum_s( return tmp; } #ifdef DEBUGGING /*! r: sum of all vector elements */ int32_t sum_l( const int32_t *vec, /* i : input vector */ Loading @@ -156,6 +157,7 @@ int32_t sum_l( return tmpL; } #endif /*! r: sum of all vector elements */ float sum_f( const float *vec, /* i : input vector */ Loading lib_dec/ivas_stereo_dft_dec.c +8 −0 Original line number Diff line number Diff line Loading @@ -2947,7 +2947,11 @@ void stereo_dft_dec_smooth_parameters( if ( hStereoDft->frame_sid_nodata ) { /* set new xfade target if new itd received */ #ifdef NONBE_FIX_1010_STEREO_CNG_DIV_BY_ZERO if ( hStereoDft->ipd_xfade_counter < STEREO_DFT_ITD_CNG_XFADE ) #else if ( hStereoDft->gipd[k + k_offset] != hStereoDft->ipd_xfade_target ) #endif { if ( ( hStereoDft->gipd[k + k_offset] - hStereoDft->ipd_xfade_prev ) > EVS_PI ) { Loading Loading @@ -2993,7 +2997,11 @@ void stereo_dft_dec_smooth_parameters( if ( hStereoDft->frame_sid_nodata ) { /* set new xfade target if new itd received */ #ifdef NONBE_FIX_1010_STEREO_CNG_DIV_BY_ZERO if ( hStereoDft->itd_xfade_counter < STEREO_DFT_ITD_CNG_XFADE ) #else if ( hStereoDft->itd[k + k_offset] != hStereoDft->itd_xfade_target ) #endif { hStereoDft->itd_xfade_target = hStereoDft->itd[k + k_offset]; hStereoDft->itd_xfade_step = ( hStereoDft->itd_xfade_target - hStereoDft->itd_xfade_prev ) / ( STEREO_DFT_ITD_CNG_XFADE - hStereoDft->itd_xfade_counter ); Loading Loading
.gitlab-ci.yml +5 −2 Original line number Diff line number Diff line Loading @@ -549,6 +549,8 @@ pytest-compare-20ms-and-5ms-rendering: - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --update_ref 1 -m create_ref_part2 ### run pytest - exit_code=0 - exit_code5=0 - exit_code10=0 - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --html=report-5ms.html --self-contained-html --junit-xml=report-junit-5ms.xml --dut_fr 5 --decoder_only || exit_code5=$? - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --html=report-10ms.html --self-contained-html --junit-xml=report-junit-10ms.xml --dut_fr 10 --decoder_only || exit_code10=$? - zero_errors5=$(cat report-junit-5ms.xml | grep -c 'errors="0"') || true Loading Loading @@ -2040,8 +2042,9 @@ coverage-test-on-main-scheduled: - python3 tests/create_short_testvectors.py - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v -n auto --update_ref 1 -m create_ref --ref_encoder_path ./IVAS_cod --ref_decoder_path ./IVAS_dec - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v -n auto --update_ref 1 -m create_ref_part2 --ref_encoder_path ./IVAS_cod --ref_decoder_path ./IVAS_dec - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --dut_encoder_path ./IVAS_cod --dut_decoder_path ./IVAS_dec --dut_fr 5 --decoder_only - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --dut_encoder_path ./IVAS_cod --dut_decoder_path ./IVAS_dec --dut_fr 10 --decoder_only # need to ignore non-zero exit codes as limiter is active and thus the different framesiszes will not be BE in all cases - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --dut_encoder_path ./IVAS_cod --dut_decoder_path ./IVAS_dec --dut_fr 5 --decoder_only || true - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --dut_encoder_path ./IVAS_cod --dut_decoder_path ./IVAS_dec --dut_fr 10 --decoder_only || true - python3 -m pytest -q -n auto tests/renderer/test_renderer.py --create_ref - python3 -m pytest -q -n auto tests/renderer/test_renderer.py --create_cut - lcov -c -d obj -o coverage_stv.info # extract coverage of short test vectors here Loading
lib_com/options.h +2 −0 Original line number Diff line number Diff line Loading @@ -160,6 +160,7 @@ #define FIX_1009_ISM_NONDIEGETIC_PANNING /* FhG: issue #1009: use correct object buffer for ISM1 non-diegetic pan */ #define FIX_1020_AEID_SELECTION_ERRORS /* Philips: issue #1020: fix for acoustic environment ID selection errors */ #define FIX_993_REMOVE_SBA_GET_ORDER /* VA: issue 993: remove unused function ivas_sba_get_order() */ #define FIX_960_SYN_OUTPUT /* VA: issue 960: unused function syn_output() is removed */ /* #################### End BE switches ################################## */ Loading @@ -172,6 +173,7 @@ #define NONBE_FIX_1004_USAN_DTX_MASA_NO_DIRS /* Nokia: fix USAN error caused by non-setting of correctly the number of MASA directions in DTX */ #define NONBE_FIX_1014_1015_1016_OSBA_JBM_STEREO /* FhG: issues #1014, #1015, #1016: fix tc buffer info update in the discrete ism renderer */ #define NONBE_FIX_987_PARAMC_BINAURAL_REVERB_RENDERING /* FhG: issue 987: solution b: downmix HOA3 to stereo a input for the reverberator */ #define NONBE_FIX_1010_STEREO_CNG_DIV_BY_ZERO /* Eri: Issue 1010: Division by zero in Stereo CNG */ /* ##################### End NON-BE switches ########################### */ Loading
lib_com/prot.h +4 −0 Original line number Diff line number Diff line Loading @@ -161,12 +161,14 @@ int16_t sum_s( const int16_t lvec /* i : length of input vector */ ); #ifdef DEBUGGING /*! r: sum of all vector elements */ int32_t sum_l( const int32_t *vec, /* i : input vector */ const int16_t lvec /* i : length of input vector */ ); #endif /*! r: sum of all vector elements */ float sum_f( const float *vec, /* i : input vector */ Loading Loading @@ -4822,12 +4824,14 @@ void dec_acelp_4t64( const int16_t Opt_AMR_WB /* i : flag indicating AMR-WB IO mode */ ); #ifndef FIX_960_SYN_OUTPUT uint32_t syn_output( float *synth, /* i/o: float synthesis signal */ const int16_t output_frame, /* i : output frame length */ int16_t *synth_out /* o : integer 16 bits synthesis signal */ ); #endif void FEC_exc_estim( Decoder_State *st, /* i/o: Decoder static memory */ const int16_t L_frame, /* i : length of the frame */ Loading
lib_com/tools.c +2 −0 Original line number Diff line number Diff line Loading @@ -138,6 +138,7 @@ int16_t sum_s( return tmp; } #ifdef DEBUGGING /*! r: sum of all vector elements */ int32_t sum_l( const int32_t *vec, /* i : input vector */ Loading @@ -156,6 +157,7 @@ int32_t sum_l( return tmpL; } #endif /*! r: sum of all vector elements */ float sum_f( const float *vec, /* i : input vector */ Loading
lib_dec/ivas_stereo_dft_dec.c +8 −0 Original line number Diff line number Diff line Loading @@ -2947,7 +2947,11 @@ void stereo_dft_dec_smooth_parameters( if ( hStereoDft->frame_sid_nodata ) { /* set new xfade target if new itd received */ #ifdef NONBE_FIX_1010_STEREO_CNG_DIV_BY_ZERO if ( hStereoDft->ipd_xfade_counter < STEREO_DFT_ITD_CNG_XFADE ) #else if ( hStereoDft->gipd[k + k_offset] != hStereoDft->ipd_xfade_target ) #endif { if ( ( hStereoDft->gipd[k + k_offset] - hStereoDft->ipd_xfade_prev ) > EVS_PI ) { Loading Loading @@ -2993,7 +2997,11 @@ void stereo_dft_dec_smooth_parameters( if ( hStereoDft->frame_sid_nodata ) { /* set new xfade target if new itd received */ #ifdef NONBE_FIX_1010_STEREO_CNG_DIV_BY_ZERO if ( hStereoDft->itd_xfade_counter < STEREO_DFT_ITD_CNG_XFADE ) #else if ( hStereoDft->itd[k + k_offset] != hStereoDft->itd_xfade_target ) #endif { hStereoDft->itd_xfade_target = hStereoDft->itd[k + k_offset]; hStereoDft->itd_xfade_step = ( hStereoDft->itd_xfade_target - hStereoDft->itd_xfade_prev ) / ( STEREO_DFT_ITD_CNG_XFADE - hStereoDft->itd_xfade_counter ); Loading