Loading .gitlab-ci.yml +46 −54 Original line number Diff line number Diff line Loading @@ -216,17 +216,6 @@ stages: - if: $CI_PIPELINE_SOURCE == 'schedule' when: never # TODO: only temporary as long the MR encoder tests should not compare to main .rules-pytest-to-ref-enc-short-temp: rules: - if: $CI_PIPELINE_SOURCE == 'web' && $MANUAL_PIPELINE_TYPE == "pytest-compare" - if: $CI_PIPELINE_SOURCE == 'push' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH - if: $CI_PIPELINE_SOURCE == 'merge_request_event' && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "main" # only have MR pipelines for MRs to main - if: $CI_PIPELINE_SOURCE == 'push' when: never - if: $CI_PIPELINE_SOURCE == 'schedule' when: never .rules-pytest-to-main-short: rules: - if: $CI_PIPELINE_SOURCE == 'merge_request_event' && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "main" # only have MR pipelines for MRs to main Loading Loading @@ -391,6 +380,7 @@ stages: IMAGES_ARTIFACT_NAME: "images_$CI_JOB_NAME" SUMMARY_HTML_ARTIFACT_NAME: "summary_$CI_JOB_NAME.html" script: - set -euxo pipefail - *print-common-info - *update-scripts-repo - if [ $USE_LTV -eq 1 ]; then Loading Loading @@ -438,7 +428,10 @@ stages: - diff_sba=0 - diff_param=0 - diff_report=0 # SHORT_TEST_SUITE_ENCODER does not contain test_sba.py. This leads to non-existing output folders being compared and to diff_sba=1. Therefore, this is skipped for the encoder tests - if [ "$TEST_SUITE" != "$SHORT_TEST_SUITE_ENCODER" ]; then - python3 scripts/batch_comp_audio.py --tool pyaudio3dtools -sd tests/dut/sba_bs/raw tests/dut_branch/sba_bs/raw || diff_sba=$? - fi - python3 scripts/batch_comp_audio.py --tool pyaudio3dtools -sd tests/dut/param_file/dec tests/dut_branch/param_file/dec || diff_param=$? - diff $CSV_BRANCH $CSV_MAIN || diff_report=$? - if [ $diff_param -eq 0 ] && [ $diff_sba -eq 0 ] && [ $diff_report -eq 0 ] && [ $zero_errors_branch -eq 1 ]; then Loading @@ -458,7 +451,7 @@ stages: - if [ $exit_code -eq 1 ]; then echo "Differences encountered"; exit_code=$EXIT_CODE_NON_BE; fi - if [ $zero_errors_branch != 1 ]; then echo "Run errors encountered!"; exit_code=$EXIT_CODE_NON_BE; fi - if [ $regressions_found != 0 ]; then - if [ $regressions_found != 0 ] && [ "$SKIP_REGRESSION_CHECK" != "true" ]; then - if [ $allow_regressions_flag == 0 ]; then - echo "Detected regression wrt to main, [allow regression] not set!" - exit_code=$EXIT_CODE_FAIL; Loading Loading @@ -735,39 +728,41 @@ build-codec-linux-debugging-make: # --------------------------------------------------------------- ### jobs that test fx encoder -> flt decoder # TODO: reenable once encoder tests shall compare to main # ivas-pytest-compare_to_main-short-enc: # extends: # - .rules-pytest-to-main-short # - .test-job-linux # before_script: # - USE_LTV=0 # - DUT_DECODER_PATH=./IVAS_dec_ref # - TEST_SUITE="$SHORT_TEST_SUITE_ENCODER" # - LEVEL_SCALING=1.0 # <<: *ivas-pytest-on-merge-request-anchor # ivas-pytest-compare_to_main-short-enc-lev-10: # extends: # - .rules-pytest-to-main-short # - .test-job-linux # before_script: # - USE_LTV=0 # - DUT_DECODER_PATH=./IVAS_dec_ref # - TEST_SUITE="$SHORT_TEST_SUITE_ENCODER" # - LEVEL_SCALING=0.3162 # <<: *ivas-pytest-on-merge-request-anchor # ivas-pytest-compare_to_main-short-enc-lev+10: # extends: # - .rules-pytest-to-main-short # - .test-job-linux # before_script: # - USE_LTV=0 # - DUT_DECODER_PATH=./IVAS_dec_ref # - TEST_SUITE="$SHORT_TEST_SUITE_ENCODER" # - LEVEL_SCALING=3.162 # <<: *ivas-pytest-on-merge-request-anchor ivas-pytest-compare_to_main-short-enc: extends: - .rules-pytest-to-main-short - .test-job-linux before_script: - USE_LTV=0 - DUT_DECODER_PATH=./IVAS_dec_ref - TEST_SUITE="$SHORT_TEST_SUITE_ENCODER" - LEVEL_SCALING=1.0 - SKIP_REGRESSION_CHECK="true" <<: *ivas-pytest-on-merge-request-anchor ivas-pytest-compare_to_main-short-enc-lev-10: extends: - .rules-pytest-to-main-short - .test-job-linux before_script: - USE_LTV=0 - DUT_DECODER_PATH=./IVAS_dec_ref - TEST_SUITE="$SHORT_TEST_SUITE_ENCODER" - LEVEL_SCALING=0.3162 - SKIP_REGRESSION_CHECK="true" <<: *ivas-pytest-on-merge-request-anchor ivas-pytest-compare_to_main-short-enc-lev+10: extends: - .rules-pytest-to-main-short - .test-job-linux before_script: - USE_LTV=0 - DUT_DECODER_PATH=./IVAS_dec_ref - TEST_SUITE="$SHORT_TEST_SUITE_ENCODER" - LEVEL_SCALING=3.162 - SKIP_REGRESSION_CHECK="true" <<: *ivas-pytest-on-merge-request-anchor ### jobs that test flt encoder -> fx decoder ivas-pytest-compare_to_main-short-dec: Loading Loading @@ -813,8 +808,7 @@ ivas-pytest-compare_to_main-short-dec-lev+10: ### jobs that test fx encoder -> flt decoder ivas-pytest-compare_to_ref-short-enc: extends: #- .rules-pytest-to-ref-short - .rules-pytest-to-ref-enc-short-temp - .rules-pytest-to-ref-short - .test-job-linux before_script: - USE_LTV=0 Loading @@ -826,8 +820,7 @@ ivas-pytest-compare_to_ref-short-enc: ivas-pytest-compare_to_ref-short-enc-lev-10: extends: #- .rules-pytest-to-ref-short - .rules-pytest-to-ref-enc-short-temp - .rules-pytest-to-ref-short - .test-job-linux before_script: - USE_LTV=0 Loading @@ -839,8 +832,7 @@ ivas-pytest-compare_to_ref-short-enc-lev-10: ivas-pytest-compare_to_ref-short-enc-lev+10: extends: #- .rules-pytest-to-ref-short - .rules-pytest-to-ref-enc-short-temp - .rules-pytest-to-ref-short - .test-job-linux before_script: - USE_LTV=0 Loading Workspace_msvc/lib_com.vcxproj +1 −0 Original line number Diff line number Diff line Loading @@ -319,6 +319,7 @@ <ClInclude Include="..\lib_com\ivas_error.h" /> <ClInclude Include="..\lib_com\ivas_error_utils.h" /> <ClInclude Include="..\lib_com\ivas_prot.h" /> <ClInclude Include="..\lib_com\ivas_prot_fx.h" /> <ClInclude Include="..\lib_com\ivas_rom_com.h" /> <ClInclude Include="..\lib_com\ivas_stat_com.h" /> <ClInclude Include="..\lib_com\move.h" /> Loading Workspace_msvc/lib_com.vcxproj.filters +3 −0 Original line number Diff line number Diff line Loading @@ -501,6 +501,9 @@ <Filter>common_h</Filter> </ClInclude> <ClInclude Include="..\lib_com\options_warnings.h" /> <ClInclude Include="..\lib_com\ivas_prot_fx.h"> <Filter>common_h</Filter> </ClInclude> </ItemGroup> <ItemGroup> <Filter Include="common_evs_c"> Loading lib_com/ivas_dirac_com.c +3 −3 Original line number Diff line number Diff line Loading @@ -636,9 +636,9 @@ void computeDirectionVectors_fixed( #ifdef NONBE_IMPROVE_DIRAC_INTENSITY_PREC IF( i_e_band != NULL ) { e_x = sub( i_e_band[i - enc_param_start_band], norm_x ); e_y = sub( i_e_band[i - enc_param_start_band], norm_y ); e_z = sub( i_e_band[i - enc_param_start_band], norm_z ); e_x = sub( Q31, add( i_e_band[i - enc_param_start_band], norm_x ) ); e_y = sub( Q31, add( i_e_band[i - enc_param_start_band], norm_y ) ); e_z = sub( Q31, add( i_e_band[i - enc_param_start_band], norm_z ) ); } ELSE { Loading lib_com/ivas_fb_mixer.c +5 −1 Original line number Diff line number Diff line Loading @@ -560,7 +560,11 @@ void ivas_fb_mixer_pcm_ingest_fx( move16(); ivas_mdft_fx( ppOut_pcm[fb_cfg->remix_order[i]], hFbMixer->ppFilterbank_inFR_re_fx[fb_cfg->remix_order[i]], hFbMixer->ppFilterbank_inFR_im_fx[fb_cfg->remix_order[i]], shl( frame_len, 1 ), frame_len ); hFbMixer->q_ppFilterbank_inFR[fb_cfg->remix_order[i]] = q_ppOut_pcm[fb_cfg->remix_order[i]]; q_shift = L_norm_arr( hFbMixer->ppFilterbank_inFR_re_fx[fb_cfg->remix_order[i]], frame_len ); q_shift = s_min( q_shift, L_norm_arr( hFbMixer->ppFilterbank_inFR_im_fx[fb_cfg->remix_order[i]], frame_len ) ); scale_sig32( hFbMixer->ppFilterbank_inFR_re_fx[fb_cfg->remix_order[i]], frame_len, q_shift ); scale_sig32( hFbMixer->ppFilterbank_inFR_im_fx[fb_cfg->remix_order[i]], frame_len, q_shift ); hFbMixer->q_ppFilterbank_inFR[fb_cfg->remix_order[i]] = add( q_shift, q_ppOut_pcm[fb_cfg->remix_order[i]] ); move16(); } Loading Loading
.gitlab-ci.yml +46 −54 Original line number Diff line number Diff line Loading @@ -216,17 +216,6 @@ stages: - if: $CI_PIPELINE_SOURCE == 'schedule' when: never # TODO: only temporary as long the MR encoder tests should not compare to main .rules-pytest-to-ref-enc-short-temp: rules: - if: $CI_PIPELINE_SOURCE == 'web' && $MANUAL_PIPELINE_TYPE == "pytest-compare" - if: $CI_PIPELINE_SOURCE == 'push' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH - if: $CI_PIPELINE_SOURCE == 'merge_request_event' && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "main" # only have MR pipelines for MRs to main - if: $CI_PIPELINE_SOURCE == 'push' when: never - if: $CI_PIPELINE_SOURCE == 'schedule' when: never .rules-pytest-to-main-short: rules: - if: $CI_PIPELINE_SOURCE == 'merge_request_event' && $CI_MERGE_REQUEST_TARGET_BRANCH_NAME == "main" # only have MR pipelines for MRs to main Loading Loading @@ -391,6 +380,7 @@ stages: IMAGES_ARTIFACT_NAME: "images_$CI_JOB_NAME" SUMMARY_HTML_ARTIFACT_NAME: "summary_$CI_JOB_NAME.html" script: - set -euxo pipefail - *print-common-info - *update-scripts-repo - if [ $USE_LTV -eq 1 ]; then Loading Loading @@ -438,7 +428,10 @@ stages: - diff_sba=0 - diff_param=0 - diff_report=0 # SHORT_TEST_SUITE_ENCODER does not contain test_sba.py. This leads to non-existing output folders being compared and to diff_sba=1. Therefore, this is skipped for the encoder tests - if [ "$TEST_SUITE" != "$SHORT_TEST_SUITE_ENCODER" ]; then - python3 scripts/batch_comp_audio.py --tool pyaudio3dtools -sd tests/dut/sba_bs/raw tests/dut_branch/sba_bs/raw || diff_sba=$? - fi - python3 scripts/batch_comp_audio.py --tool pyaudio3dtools -sd tests/dut/param_file/dec tests/dut_branch/param_file/dec || diff_param=$? - diff $CSV_BRANCH $CSV_MAIN || diff_report=$? - if [ $diff_param -eq 0 ] && [ $diff_sba -eq 0 ] && [ $diff_report -eq 0 ] && [ $zero_errors_branch -eq 1 ]; then Loading @@ -458,7 +451,7 @@ stages: - if [ $exit_code -eq 1 ]; then echo "Differences encountered"; exit_code=$EXIT_CODE_NON_BE; fi - if [ $zero_errors_branch != 1 ]; then echo "Run errors encountered!"; exit_code=$EXIT_CODE_NON_BE; fi - if [ $regressions_found != 0 ]; then - if [ $regressions_found != 0 ] && [ "$SKIP_REGRESSION_CHECK" != "true" ]; then - if [ $allow_regressions_flag == 0 ]; then - echo "Detected regression wrt to main, [allow regression] not set!" - exit_code=$EXIT_CODE_FAIL; Loading Loading @@ -735,39 +728,41 @@ build-codec-linux-debugging-make: # --------------------------------------------------------------- ### jobs that test fx encoder -> flt decoder # TODO: reenable once encoder tests shall compare to main # ivas-pytest-compare_to_main-short-enc: # extends: # - .rules-pytest-to-main-short # - .test-job-linux # before_script: # - USE_LTV=0 # - DUT_DECODER_PATH=./IVAS_dec_ref # - TEST_SUITE="$SHORT_TEST_SUITE_ENCODER" # - LEVEL_SCALING=1.0 # <<: *ivas-pytest-on-merge-request-anchor # ivas-pytest-compare_to_main-short-enc-lev-10: # extends: # - .rules-pytest-to-main-short # - .test-job-linux # before_script: # - USE_LTV=0 # - DUT_DECODER_PATH=./IVAS_dec_ref # - TEST_SUITE="$SHORT_TEST_SUITE_ENCODER" # - LEVEL_SCALING=0.3162 # <<: *ivas-pytest-on-merge-request-anchor # ivas-pytest-compare_to_main-short-enc-lev+10: # extends: # - .rules-pytest-to-main-short # - .test-job-linux # before_script: # - USE_LTV=0 # - DUT_DECODER_PATH=./IVAS_dec_ref # - TEST_SUITE="$SHORT_TEST_SUITE_ENCODER" # - LEVEL_SCALING=3.162 # <<: *ivas-pytest-on-merge-request-anchor ivas-pytest-compare_to_main-short-enc: extends: - .rules-pytest-to-main-short - .test-job-linux before_script: - USE_LTV=0 - DUT_DECODER_PATH=./IVAS_dec_ref - TEST_SUITE="$SHORT_TEST_SUITE_ENCODER" - LEVEL_SCALING=1.0 - SKIP_REGRESSION_CHECK="true" <<: *ivas-pytest-on-merge-request-anchor ivas-pytest-compare_to_main-short-enc-lev-10: extends: - .rules-pytest-to-main-short - .test-job-linux before_script: - USE_LTV=0 - DUT_DECODER_PATH=./IVAS_dec_ref - TEST_SUITE="$SHORT_TEST_SUITE_ENCODER" - LEVEL_SCALING=0.3162 - SKIP_REGRESSION_CHECK="true" <<: *ivas-pytest-on-merge-request-anchor ivas-pytest-compare_to_main-short-enc-lev+10: extends: - .rules-pytest-to-main-short - .test-job-linux before_script: - USE_LTV=0 - DUT_DECODER_PATH=./IVAS_dec_ref - TEST_SUITE="$SHORT_TEST_SUITE_ENCODER" - LEVEL_SCALING=3.162 - SKIP_REGRESSION_CHECK="true" <<: *ivas-pytest-on-merge-request-anchor ### jobs that test flt encoder -> fx decoder ivas-pytest-compare_to_main-short-dec: Loading Loading @@ -813,8 +808,7 @@ ivas-pytest-compare_to_main-short-dec-lev+10: ### jobs that test fx encoder -> flt decoder ivas-pytest-compare_to_ref-short-enc: extends: #- .rules-pytest-to-ref-short - .rules-pytest-to-ref-enc-short-temp - .rules-pytest-to-ref-short - .test-job-linux before_script: - USE_LTV=0 Loading @@ -826,8 +820,7 @@ ivas-pytest-compare_to_ref-short-enc: ivas-pytest-compare_to_ref-short-enc-lev-10: extends: #- .rules-pytest-to-ref-short - .rules-pytest-to-ref-enc-short-temp - .rules-pytest-to-ref-short - .test-job-linux before_script: - USE_LTV=0 Loading @@ -839,8 +832,7 @@ ivas-pytest-compare_to_ref-short-enc-lev-10: ivas-pytest-compare_to_ref-short-enc-lev+10: extends: #- .rules-pytest-to-ref-short - .rules-pytest-to-ref-enc-short-temp - .rules-pytest-to-ref-short - .test-job-linux before_script: - USE_LTV=0 Loading
Workspace_msvc/lib_com.vcxproj +1 −0 Original line number Diff line number Diff line Loading @@ -319,6 +319,7 @@ <ClInclude Include="..\lib_com\ivas_error.h" /> <ClInclude Include="..\lib_com\ivas_error_utils.h" /> <ClInclude Include="..\lib_com\ivas_prot.h" /> <ClInclude Include="..\lib_com\ivas_prot_fx.h" /> <ClInclude Include="..\lib_com\ivas_rom_com.h" /> <ClInclude Include="..\lib_com\ivas_stat_com.h" /> <ClInclude Include="..\lib_com\move.h" /> Loading
Workspace_msvc/lib_com.vcxproj.filters +3 −0 Original line number Diff line number Diff line Loading @@ -501,6 +501,9 @@ <Filter>common_h</Filter> </ClInclude> <ClInclude Include="..\lib_com\options_warnings.h" /> <ClInclude Include="..\lib_com\ivas_prot_fx.h"> <Filter>common_h</Filter> </ClInclude> </ItemGroup> <ItemGroup> <Filter Include="common_evs_c"> Loading
lib_com/ivas_dirac_com.c +3 −3 Original line number Diff line number Diff line Loading @@ -636,9 +636,9 @@ void computeDirectionVectors_fixed( #ifdef NONBE_IMPROVE_DIRAC_INTENSITY_PREC IF( i_e_band != NULL ) { e_x = sub( i_e_band[i - enc_param_start_band], norm_x ); e_y = sub( i_e_band[i - enc_param_start_band], norm_y ); e_z = sub( i_e_band[i - enc_param_start_band], norm_z ); e_x = sub( Q31, add( i_e_band[i - enc_param_start_band], norm_x ) ); e_y = sub( Q31, add( i_e_band[i - enc_param_start_band], norm_y ) ); e_z = sub( Q31, add( i_e_band[i - enc_param_start_band], norm_z ) ); } ELSE { Loading
lib_com/ivas_fb_mixer.c +5 −1 Original line number Diff line number Diff line Loading @@ -560,7 +560,11 @@ void ivas_fb_mixer_pcm_ingest_fx( move16(); ivas_mdft_fx( ppOut_pcm[fb_cfg->remix_order[i]], hFbMixer->ppFilterbank_inFR_re_fx[fb_cfg->remix_order[i]], hFbMixer->ppFilterbank_inFR_im_fx[fb_cfg->remix_order[i]], shl( frame_len, 1 ), frame_len ); hFbMixer->q_ppFilterbank_inFR[fb_cfg->remix_order[i]] = q_ppOut_pcm[fb_cfg->remix_order[i]]; q_shift = L_norm_arr( hFbMixer->ppFilterbank_inFR_re_fx[fb_cfg->remix_order[i]], frame_len ); q_shift = s_min( q_shift, L_norm_arr( hFbMixer->ppFilterbank_inFR_im_fx[fb_cfg->remix_order[i]], frame_len ) ); scale_sig32( hFbMixer->ppFilterbank_inFR_re_fx[fb_cfg->remix_order[i]], frame_len, q_shift ); scale_sig32( hFbMixer->ppFilterbank_inFR_im_fx[fb_cfg->remix_order[i]], frame_len, q_shift ); hFbMixer->q_ppFilterbank_inFR[fb_cfg->remix_order[i]] = add( q_shift, q_ppOut_pcm[fb_cfg->remix_order[i]] ); move16(); } Loading