Loading .gitignore +12 −0 Original line number Diff line number Diff line Loading @@ -72,3 +72,15 @@ Externals/ # coan output files that are created when cleaning out switches coan_out_* /COMPLEXITY /res /tv /wmops /Workspace_msvc/renderer.args.json /Workspace_msvc/encoder.args.json /Workspace_msvc/decoder.args.json /scripts/mem_analysis_enc_VBR_5k9.csv /scripts/mem_analysis_enc_STEREO_sw.png /scripts/mem_analysis_enc_STEREO_sw.csv /scripts/mem_analysis_enc_STEREO_16k4_DTX.csv *.pwv .gitlab-ci.yml +174 −12 Original line number Diff line number Diff line Loading @@ -3,6 +3,7 @@ variables: LTV_DIR: "/usr/local/ltv" BUILD_OUTPUT: "build_output.txt" EVS_BE_TEST_DIR: "/usr/local/be_2_evs_test" EVS_BE_WIN_TEST_DIR: "C:/Users/gitlab-runner/testvec" SANITIZER_TESTS: "CLANG1 CLANG2" OUT_FORMATS_CHANNEL_BASED: "stereo mono 5_1 5_1_2 5_1_4 7_1 7_1_4" OUT_FORMATS_SCENE_BASED: "FOA HOA2 HOA3" Loading @@ -12,8 +13,6 @@ variables: default: interruptible: true # Make all jobs by default interruptible artifacts: expire_in: 2 weeks # This sets when pipelines are created. Jobs have more specific rules to restrict them. workflow: Loading Loading @@ -49,6 +48,13 @@ stages: echo "Commit time was $CI_COMMIT_TIMESTAMP" date | xargs echo "System time is" .print-common-info-windows: &print-common-info-windows - | echo "Printing common information for build job." echo "Current job is run on commit $CI_COMMIT_SHA" echo "Commit time was $CI_COMMIT_TIMESTAMP" ("echo 'System time is'", "Get-Date -Format 'dddd dd/MM/yyyy HH:mm K'") | Invoke-Expression .get-previous-merge-commit-sha: &get-previous-merge-commit-sha - previous_merge_commit=$(git --no-pager log --merges HEAD~1 -n 1 --pretty=format:%H) Loading Loading @@ -156,6 +162,11 @@ stages: tags: - ivas-linux .build-job-windows: stage: build timeout: "4 minutes" tags: - ivas-windows # template for test jobs on linux that need the TESTV_DIR .test-job-linux-needs-testv-dir: Loading @@ -172,6 +183,12 @@ stages: exit_codes: - 123 .build-job-windows-with-check-for-warnings: extends: .build-job-windows stage: build allow_failure: exit_codes: - 123 # --------------------------------------------------------------- Loading Loading @@ -249,6 +266,7 @@ build-codec-instrumented-linux: extends: - .build-job-linux - .rules-basis timeout: "6 minutes" script: - *print-common-info - bash ci/build_codec_instrumented_linux.sh Loading @@ -262,6 +280,31 @@ build-codec-sanitizers-linux: - *print-common-info - bash ci/build_codec_sanitizers_linux.sh build-codec-windows-cmake: extends: - .build-job-windows-with-check-for-warnings - .rules-basis script: - *print-common-info-windows - $winoutdata = $null - cmake -G "Visual Studio 15 2017" . -Bbuild - cmake --build build -j | tee -variable winoutdata - $winoutdata | Out-File $BUILD_OUTPUT -Encoding Utf8 - ("& python ci/check_for_warnings.py '$BUILD_OUTPUT'") | Invoke-Expression - ("exit $LASTEXITCODE") | Invoke-Expression build-codec-windows-msbuild: extends: - .build-job-windows-with-check-for-warnings - .rules-basis script: - *print-common-info-windows - $winoutdata = $null - MSBuild.exe .\Workspace_msvc\Workspace_msvc.sln /property:Configuration=Debug | tee -variable winoutdata - $winoutdata | Out-File $BUILD_OUTPUT -Encoding Utf8 - ("& python ci/check_for_warnings.py '$BUILD_OUTPUT'") | Invoke-Expression - ("exit $LASTEXITCODE") | Invoke-Expression # --------------------------------------------------------------- # Test jobs for merge requests # --------------------------------------------------------------- Loading @@ -271,7 +314,7 @@ codec-smoke-test: extends: - .test-job-linux-needs-testv-dir - .rules-merge-request timeout: "5 minutes" timeout: "10 minutes" stage: test needs: ["build-codec-linux-cmake"] script: Loading @@ -284,6 +327,7 @@ codec-smoke-test: - if cat smoke_test_output_hrtf.txt | grep -c "failed"; then echo "Smoke test with external hrtf files failed"; exit 1; fi artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 1 week paths: - smoke_test_output.txt - smoke_test_output_plc.txt Loading @@ -308,6 +352,7 @@ codec-msan: - if [ $run_errors != 0 ] ; then echo "Run errors in self_test.py with Clang memory-sanitizer"; exit 1; fi artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 1 week paths: - scripts/ref/logs/ - test_output.txt Loading @@ -330,6 +375,7 @@ codec-asan: - if [ $run_errors != 0 ] ; then echo "Run errors in self_test.py with Clang address-sanitizer"; exit 1; fi artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 1 week paths: - scripts/ref/logs/ - test_output.txt Loading @@ -347,6 +393,7 @@ renderer-smoke-test: - python3 -m pytest -q -n auto -rA --junit-xml=report-junit.xml tests/renderer/test_renderer.py artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--job-$CI_JOB_NAME--results" expire_in: 1 week when: always paths: - report-junit.xml Loading @@ -370,6 +417,7 @@ renderer-asan: artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--job-$CI_JOB_NAME--results" expire_in: 1 week when: always paths: - report-junit.xml Loading @@ -393,6 +441,7 @@ renderer-msan: artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--job-$CI_JOB_NAME--results" expire_in: 1 week when: always paths: - report-junit.xml Loading Loading @@ -446,6 +495,7 @@ renderer-pytest-on-merge-request: - 123 artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--job-$CI_JOB_NAME--results" expire_in: 2 week when: always paths: - report-junit.xml Loading Loading @@ -496,6 +546,7 @@ ivas-pytest-on-merge-request: - 123 artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 2 week when: always paths: - report-junit.xml Loading Loading @@ -542,6 +593,7 @@ evs-pytest-on-merge-request: - 123 artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 2 week when: always paths: - report-junit-evs.xml Loading Loading @@ -600,16 +652,67 @@ clang-format-check: - exit $format_problems artifacts: expire_in: 2 days paths: - tmp-formatting-fix/ when: on_failure name: "$ARTIFACT_BASE_NAME" expose_as: 'formatting patch' # check for crashes if first received frame on decoder side is an SID .check-first-frame-is-sid: extends: - .test-job-linux-needs-testv-dir - .rules-merge-request tags: - ivas-linux stage: test needs: ["build-codec-linux-cmake"] script: - *print-common-info - *update-ltv-repo - cmake . - make -j # TODO: for some MASA modes, we currently do not have testvectors that actually trigger DTX - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep -v MASA) - echo $modes - scripts/runIvasCodec.py -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 500 artifacts: paths: - out/logs when: on_failure name: "$CI_JOB_NAME--$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--sidstart" expose_as: "logs-sidstart" # --------------------------------------------------------------- # Test jobs for main branch # --------------------------------------------------------------- # check bitexactness to EVS windows binaries be-2-evs-windows: extends: - .rules-main-push tags: - ivas-windows stage: test needs: ["build-codec-windows-msbuild"] timeout: "20 minutes" # To be revisited script: - *print-common-info-windows - $winoutdata = $null - MSBuild.exe .\Workspace_msvc\Workspace_msvc.sln /property:Configuration=Release | tee -variable winoutdata - $winoutdata | Out-File $BUILD_OUTPUT -Encoding Utf8 # copy over to never change the testvector dir - cp -r $EVS_BE_WIN_TEST_DIR ./evs_be_win_test - cp IVAS_cod.exe ./evs_be_win_test/bin/IVAS_cod.exe - cp IVAS_dec.exe ./evs_be_win_test/bin/IVAS_dec.exe - cd evs_be_win_test - python ../ci/run_evs_be_win_test.py # check bitexactness to EVS be-2-evs-linux: extends: Loading Loading @@ -708,6 +811,7 @@ codec-comparison-on-main-push: - 123 artifacts: name: "main-push--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 2 week when: always paths: - report-junit.xml Loading @@ -729,6 +833,7 @@ codec-comparison-on-main-push: - sanitizer_test_main artifacts: name: "$CI_JOB_NAME--main--sha-$CI_COMMIT_SHORT_SHA" expire_in: 1 week when: always paths: - ep_015.g192 Loading @@ -740,13 +845,13 @@ codec-comparison-on-main-push: .sanitizer-test-schedule-A: extends: - .sanitizer-test-template timeout: 2 hours 30 minutes sanitizer-test-mono: extends: .sanitizer-test-schedule-A rules: - if: $SANITIZER_SCHEDULE_A timeout: 2 hour script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py mono mono --tests $SANITIZER_TESTS Loading @@ -756,7 +861,8 @@ sanitizer-test-stereo: rules: - if: $SANITIZER_SCHEDULE_A when: delayed start_in: 2 hours 30 minutes start_in: 2 hour timeout: 2 hour script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py stereo $OUT_FORMATS_CHANNEL_BASED --tests $SANITIZER_TESTS Loading @@ -766,7 +872,8 @@ sanitizer-test-stereodmxevs: rules: - if: $SANITIZER_SCHEDULE_A when: delayed start_in: 5 hours start_in: 4 hours timeout: 2 hour script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py StereoDmxEVS mono --tests $SANITIZER_TESTS Loading @@ -776,7 +883,8 @@ sanitizer-test-ism1: rules: - if: $SANITIZER_SCHEDULE_A when: delayed start_in: 7 hours 30 minutes start_in: 6 hours timeout: 2 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py ISM1 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS Loading @@ -786,7 +894,8 @@ sanitizer-test-ism2: rules: - if: $SANITIZER_SCHEDULE_A when: delayed start_in: 10 hours start_in: 8 hours timeout: 3 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py ISM2 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS Loading @@ -796,7 +905,8 @@ sanitizer-test-ism3: rules: - if: $SANITIZER_SCHEDULE_A when: delayed start_in: 12 hours 30 minutes start_in: 11 hours timeout: 3 hour script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py ISM3 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS Loading @@ -806,7 +916,8 @@ sanitizer-test-ism4: rules: - if: $SANITIZER_SCHEDULE_A when: delayed start_in: 15 hours start_in: 14 hours timeout: 4 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py ISM4 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS Loading @@ -816,7 +927,8 @@ sanitizer-test-masa: rules: - if: $SANITIZER_SCHEDULE_A when: delayed start_in: 17 hours 30 minutes start_in: 18 hours timeout: 3 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py MASA $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS Loading Loading @@ -901,6 +1013,55 @@ sanitizer-test-planarsba: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py PlanarSBA $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS ### --- sanitizer schedule D --- .sanitizer-test-schedule-D: extends: - .sanitizer-test-template sanitizer-test-ism+1: extends: .sanitizer-test-schedule-D rules: - if: $SANITIZER_SCHEDULE_D timeout: 2 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py ISM+1 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS sanitizer-test-ism+2: extends: .sanitizer-test-schedule-D rules: - if: $SANITIZER_SCHEDULE_D when: delayed start_in: 2 hours timeout: 3 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py ISM+2 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS sanitizer-test-ism+3: extends: .sanitizer-test-schedule-D rules: - if: $SANITIZER_SCHEDULE_D when: delayed start_in: 5 hours timeout: 3 hour script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py ISM+3 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS sanitizer-test-ism+4: extends: .sanitizer-test-schedule-D rules: - if: $SANITIZER_SCHEDULE_D when: delayed start_in: 8 hours timeout: 4 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py ISM+4 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS # GCOV/LCOV coverage analysis of self_test suite coverage-test-on-main-scheduled: extends: Loading Loading @@ -985,6 +1146,7 @@ coverage-test-on-main-scheduled: stage: test artifacts: name: "$CI_JOB_NAME--$CI_COMMIT_REF_NAME--sha-$CI_COMMIT_SHA" expire_in: 1 week paths: - $CI_JOB_NAME-public Loading Loading @@ -1015,7 +1177,7 @@ complexity-ism-in-binaural-out: - *complexity-measurements-setup - in_format=ISM - out_format=BINAURAL - bash ci/complexity_measurements/getWmops.sh "ISM1 ISM2 ISM3 ISM4" "$out_format" - bash ci/complexity_measurements/getWmops.sh "ISM+1 ISM+2 ISM+3 ISM+4" "$out_format" - *complexity-measurements-prepare-artifacts complexity-sba-hoa3-in-hoa3-out: Loading Workspace_msvc/lib_dec.vcxproj +2 −0 Original line number Diff line number Diff line Loading @@ -282,6 +282,7 @@ <ClCompile Include="..\lib_dec\ivas_ism_metadata_dec.c" /> <ClCompile Include="..\lib_dec\ivas_ism_param_dec.c" /> <ClCompile Include="..\lib_dec\ivas_ism_renderer.c" /> <ClCompile Include="..\lib_dec\ivas_jbm_dec.c" /> <ClCompile Include="..\lib_dec\ivas_lfe_dec.c" /> <ClCompile Include="..\lib_dec\ivas_lfe_plc.c" /> <ClCompile Include="..\lib_dec\ivas_ls_custom_dec.c" /> Loading @@ -290,6 +291,7 @@ <ClCompile Include="..\lib_dec\ivas_mct_core_dec.c" /> <ClCompile Include="..\lib_dec\ivas_mct_dec.c" /> <ClCompile Include="..\lib_dec\ivas_mct_dec_mct.c" /> <ClCompile Include="..\lib_dec\ivas_mc_paramupmix_dec.c" /> <ClCompile Include="..\lib_dec\ivas_mc_param_dec.c" /> <ClCompile Include="..\lib_dec\ivas_mdct_core_dec.c" /> <ClCompile Include="..\lib_dec\ivas_mono_dmx_renderer.c" /> Loading Workspace_msvc/lib_dec.vcxproj.filters +6 −0 Original line number Diff line number Diff line Loading @@ -518,6 +518,12 @@ <ClCompile Include="..\lib_dec\ivas_ism_dec.c"> <Filter>dec_ivas_c</Filter> </ClCompile> <ClCompile Include="..\lib_dec\ivas_mc_paramupmix_dec.c"> <Filter>dec_ivas_c</Filter> </ClCompile> <ClCompile Include="..\lib_dec\ivas_jbm_dec.c"> <Filter>dec_ivas_c</Filter> </ClCompile> </ItemGroup> <ItemGroup> <ClInclude Include="..\lib_dec\jbm_jb4_inputbuffer.h"> Loading Workspace_msvc/lib_enc.vcxproj +1 −0 Original line number Diff line number Diff line Loading @@ -213,6 +213,7 @@ <ClCompile Include="..\lib_enc\ivas_entropy_coder.c" /> <ClCompile Include="..\lib_enc\ivas_ism_dtx_enc.c" /> <ClCompile Include="..\lib_enc\ivas_lfe_enc.c" /> <ClCompile Include="..\lib_enc\ivas_mc_paramupmix_enc.c" /> <ClCompile Include="..\lib_enc\ivas_mc_param_enc.c" /> <ClCompile Include="..\lib_enc\ivas_pca_enc.c" /> <ClCompile Include="..\lib_enc\ivas_range_uni_enc.c" /> Loading Loading
.gitignore +12 −0 Original line number Diff line number Diff line Loading @@ -72,3 +72,15 @@ Externals/ # coan output files that are created when cleaning out switches coan_out_* /COMPLEXITY /res /tv /wmops /Workspace_msvc/renderer.args.json /Workspace_msvc/encoder.args.json /Workspace_msvc/decoder.args.json /scripts/mem_analysis_enc_VBR_5k9.csv /scripts/mem_analysis_enc_STEREO_sw.png /scripts/mem_analysis_enc_STEREO_sw.csv /scripts/mem_analysis_enc_STEREO_16k4_DTX.csv *.pwv
.gitlab-ci.yml +174 −12 Original line number Diff line number Diff line Loading @@ -3,6 +3,7 @@ variables: LTV_DIR: "/usr/local/ltv" BUILD_OUTPUT: "build_output.txt" EVS_BE_TEST_DIR: "/usr/local/be_2_evs_test" EVS_BE_WIN_TEST_DIR: "C:/Users/gitlab-runner/testvec" SANITIZER_TESTS: "CLANG1 CLANG2" OUT_FORMATS_CHANNEL_BASED: "stereo mono 5_1 5_1_2 5_1_4 7_1 7_1_4" OUT_FORMATS_SCENE_BASED: "FOA HOA2 HOA3" Loading @@ -12,8 +13,6 @@ variables: default: interruptible: true # Make all jobs by default interruptible artifacts: expire_in: 2 weeks # This sets when pipelines are created. Jobs have more specific rules to restrict them. workflow: Loading Loading @@ -49,6 +48,13 @@ stages: echo "Commit time was $CI_COMMIT_TIMESTAMP" date | xargs echo "System time is" .print-common-info-windows: &print-common-info-windows - | echo "Printing common information for build job." echo "Current job is run on commit $CI_COMMIT_SHA" echo "Commit time was $CI_COMMIT_TIMESTAMP" ("echo 'System time is'", "Get-Date -Format 'dddd dd/MM/yyyy HH:mm K'") | Invoke-Expression .get-previous-merge-commit-sha: &get-previous-merge-commit-sha - previous_merge_commit=$(git --no-pager log --merges HEAD~1 -n 1 --pretty=format:%H) Loading Loading @@ -156,6 +162,11 @@ stages: tags: - ivas-linux .build-job-windows: stage: build timeout: "4 minutes" tags: - ivas-windows # template for test jobs on linux that need the TESTV_DIR .test-job-linux-needs-testv-dir: Loading @@ -172,6 +183,12 @@ stages: exit_codes: - 123 .build-job-windows-with-check-for-warnings: extends: .build-job-windows stage: build allow_failure: exit_codes: - 123 # --------------------------------------------------------------- Loading Loading @@ -249,6 +266,7 @@ build-codec-instrumented-linux: extends: - .build-job-linux - .rules-basis timeout: "6 minutes" script: - *print-common-info - bash ci/build_codec_instrumented_linux.sh Loading @@ -262,6 +280,31 @@ build-codec-sanitizers-linux: - *print-common-info - bash ci/build_codec_sanitizers_linux.sh build-codec-windows-cmake: extends: - .build-job-windows-with-check-for-warnings - .rules-basis script: - *print-common-info-windows - $winoutdata = $null - cmake -G "Visual Studio 15 2017" . -Bbuild - cmake --build build -j | tee -variable winoutdata - $winoutdata | Out-File $BUILD_OUTPUT -Encoding Utf8 - ("& python ci/check_for_warnings.py '$BUILD_OUTPUT'") | Invoke-Expression - ("exit $LASTEXITCODE") | Invoke-Expression build-codec-windows-msbuild: extends: - .build-job-windows-with-check-for-warnings - .rules-basis script: - *print-common-info-windows - $winoutdata = $null - MSBuild.exe .\Workspace_msvc\Workspace_msvc.sln /property:Configuration=Debug | tee -variable winoutdata - $winoutdata | Out-File $BUILD_OUTPUT -Encoding Utf8 - ("& python ci/check_for_warnings.py '$BUILD_OUTPUT'") | Invoke-Expression - ("exit $LASTEXITCODE") | Invoke-Expression # --------------------------------------------------------------- # Test jobs for merge requests # --------------------------------------------------------------- Loading @@ -271,7 +314,7 @@ codec-smoke-test: extends: - .test-job-linux-needs-testv-dir - .rules-merge-request timeout: "5 minutes" timeout: "10 minutes" stage: test needs: ["build-codec-linux-cmake"] script: Loading @@ -284,6 +327,7 @@ codec-smoke-test: - if cat smoke_test_output_hrtf.txt | grep -c "failed"; then echo "Smoke test with external hrtf files failed"; exit 1; fi artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 1 week paths: - smoke_test_output.txt - smoke_test_output_plc.txt Loading @@ -308,6 +352,7 @@ codec-msan: - if [ $run_errors != 0 ] ; then echo "Run errors in self_test.py with Clang memory-sanitizer"; exit 1; fi artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 1 week paths: - scripts/ref/logs/ - test_output.txt Loading @@ -330,6 +375,7 @@ codec-asan: - if [ $run_errors != 0 ] ; then echo "Run errors in self_test.py with Clang address-sanitizer"; exit 1; fi artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 1 week paths: - scripts/ref/logs/ - test_output.txt Loading @@ -347,6 +393,7 @@ renderer-smoke-test: - python3 -m pytest -q -n auto -rA --junit-xml=report-junit.xml tests/renderer/test_renderer.py artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--job-$CI_JOB_NAME--results" expire_in: 1 week when: always paths: - report-junit.xml Loading @@ -370,6 +417,7 @@ renderer-asan: artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--job-$CI_JOB_NAME--results" expire_in: 1 week when: always paths: - report-junit.xml Loading @@ -393,6 +441,7 @@ renderer-msan: artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--job-$CI_JOB_NAME--results" expire_in: 1 week when: always paths: - report-junit.xml Loading Loading @@ -446,6 +495,7 @@ renderer-pytest-on-merge-request: - 123 artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--job-$CI_JOB_NAME--results" expire_in: 2 week when: always paths: - report-junit.xml Loading Loading @@ -496,6 +546,7 @@ ivas-pytest-on-merge-request: - 123 artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 2 week when: always paths: - report-junit.xml Loading Loading @@ -542,6 +593,7 @@ evs-pytest-on-merge-request: - 123 artifacts: name: "mr-$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 2 week when: always paths: - report-junit-evs.xml Loading Loading @@ -600,16 +652,67 @@ clang-format-check: - exit $format_problems artifacts: expire_in: 2 days paths: - tmp-formatting-fix/ when: on_failure name: "$ARTIFACT_BASE_NAME" expose_as: 'formatting patch' # check for crashes if first received frame on decoder side is an SID .check-first-frame-is-sid: extends: - .test-job-linux-needs-testv-dir - .rules-merge-request tags: - ivas-linux stage: test needs: ["build-codec-linux-cmake"] script: - *print-common-info - *update-ltv-repo - cmake . - make -j # TODO: for some MASA modes, we currently do not have testvectors that actually trigger DTX - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep -v MASA) - echo $modes - scripts/runIvasCodec.py -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 500 artifacts: paths: - out/logs when: on_failure name: "$CI_JOB_NAME--$CI_MERGE_REQUEST_IID--sha-$CI_COMMIT_SHORT_SHA--sidstart" expose_as: "logs-sidstart" # --------------------------------------------------------------- # Test jobs for main branch # --------------------------------------------------------------- # check bitexactness to EVS windows binaries be-2-evs-windows: extends: - .rules-main-push tags: - ivas-windows stage: test needs: ["build-codec-windows-msbuild"] timeout: "20 minutes" # To be revisited script: - *print-common-info-windows - $winoutdata = $null - MSBuild.exe .\Workspace_msvc\Workspace_msvc.sln /property:Configuration=Release | tee -variable winoutdata - $winoutdata | Out-File $BUILD_OUTPUT -Encoding Utf8 # copy over to never change the testvector dir - cp -r $EVS_BE_WIN_TEST_DIR ./evs_be_win_test - cp IVAS_cod.exe ./evs_be_win_test/bin/IVAS_cod.exe - cp IVAS_dec.exe ./evs_be_win_test/bin/IVAS_dec.exe - cd evs_be_win_test - python ../ci/run_evs_be_win_test.py # check bitexactness to EVS be-2-evs-linux: extends: Loading Loading @@ -708,6 +811,7 @@ codec-comparison-on-main-push: - 123 artifacts: name: "main-push--sha-$CI_COMMIT_SHORT_SHA--stage-$CI_JOB_STAGE--results" expire_in: 2 week when: always paths: - report-junit.xml Loading @@ -729,6 +833,7 @@ codec-comparison-on-main-push: - sanitizer_test_main artifacts: name: "$CI_JOB_NAME--main--sha-$CI_COMMIT_SHORT_SHA" expire_in: 1 week when: always paths: - ep_015.g192 Loading @@ -740,13 +845,13 @@ codec-comparison-on-main-push: .sanitizer-test-schedule-A: extends: - .sanitizer-test-template timeout: 2 hours 30 minutes sanitizer-test-mono: extends: .sanitizer-test-schedule-A rules: - if: $SANITIZER_SCHEDULE_A timeout: 2 hour script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py mono mono --tests $SANITIZER_TESTS Loading @@ -756,7 +861,8 @@ sanitizer-test-stereo: rules: - if: $SANITIZER_SCHEDULE_A when: delayed start_in: 2 hours 30 minutes start_in: 2 hour timeout: 2 hour script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py stereo $OUT_FORMATS_CHANNEL_BASED --tests $SANITIZER_TESTS Loading @@ -766,7 +872,8 @@ sanitizer-test-stereodmxevs: rules: - if: $SANITIZER_SCHEDULE_A when: delayed start_in: 5 hours start_in: 4 hours timeout: 2 hour script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py StereoDmxEVS mono --tests $SANITIZER_TESTS Loading @@ -776,7 +883,8 @@ sanitizer-test-ism1: rules: - if: $SANITIZER_SCHEDULE_A when: delayed start_in: 7 hours 30 minutes start_in: 6 hours timeout: 2 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py ISM1 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS Loading @@ -786,7 +894,8 @@ sanitizer-test-ism2: rules: - if: $SANITIZER_SCHEDULE_A when: delayed start_in: 10 hours start_in: 8 hours timeout: 3 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py ISM2 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS Loading @@ -796,7 +905,8 @@ sanitizer-test-ism3: rules: - if: $SANITIZER_SCHEDULE_A when: delayed start_in: 12 hours 30 minutes start_in: 11 hours timeout: 3 hour script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py ISM3 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS Loading @@ -806,7 +916,8 @@ sanitizer-test-ism4: rules: - if: $SANITIZER_SCHEDULE_A when: delayed start_in: 15 hours start_in: 14 hours timeout: 4 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py ISM4 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS Loading @@ -816,7 +927,8 @@ sanitizer-test-masa: rules: - if: $SANITIZER_SCHEDULE_A when: delayed start_in: 17 hours 30 minutes start_in: 18 hours timeout: 3 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py MASA $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS Loading Loading @@ -901,6 +1013,55 @@ sanitizer-test-planarsba: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py PlanarSBA $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS ### --- sanitizer schedule D --- .sanitizer-test-schedule-D: extends: - .sanitizer-test-template sanitizer-test-ism+1: extends: .sanitizer-test-schedule-D rules: - if: $SANITIZER_SCHEDULE_D timeout: 2 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py ISM+1 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS sanitizer-test-ism+2: extends: .sanitizer-test-schedule-D rules: - if: $SANITIZER_SCHEDULE_D when: delayed start_in: 2 hours timeout: 3 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py ISM+2 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS sanitizer-test-ism+3: extends: .sanitizer-test-schedule-D rules: - if: $SANITIZER_SCHEDULE_D when: delayed start_in: 5 hours timeout: 3 hour script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py ISM+3 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS sanitizer-test-ism+4: extends: .sanitizer-test-schedule-D rules: - if: $SANITIZER_SCHEDULE_D when: delayed start_in: 8 hours timeout: 4 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py ISM+4 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL EXT --tests $SANITIZER_TESTS # GCOV/LCOV coverage analysis of self_test suite coverage-test-on-main-scheduled: extends: Loading Loading @@ -985,6 +1146,7 @@ coverage-test-on-main-scheduled: stage: test artifacts: name: "$CI_JOB_NAME--$CI_COMMIT_REF_NAME--sha-$CI_COMMIT_SHA" expire_in: 1 week paths: - $CI_JOB_NAME-public Loading Loading @@ -1015,7 +1177,7 @@ complexity-ism-in-binaural-out: - *complexity-measurements-setup - in_format=ISM - out_format=BINAURAL - bash ci/complexity_measurements/getWmops.sh "ISM1 ISM2 ISM3 ISM4" "$out_format" - bash ci/complexity_measurements/getWmops.sh "ISM+1 ISM+2 ISM+3 ISM+4" "$out_format" - *complexity-measurements-prepare-artifacts complexity-sba-hoa3-in-hoa3-out: Loading
Workspace_msvc/lib_dec.vcxproj +2 −0 Original line number Diff line number Diff line Loading @@ -282,6 +282,7 @@ <ClCompile Include="..\lib_dec\ivas_ism_metadata_dec.c" /> <ClCompile Include="..\lib_dec\ivas_ism_param_dec.c" /> <ClCompile Include="..\lib_dec\ivas_ism_renderer.c" /> <ClCompile Include="..\lib_dec\ivas_jbm_dec.c" /> <ClCompile Include="..\lib_dec\ivas_lfe_dec.c" /> <ClCompile Include="..\lib_dec\ivas_lfe_plc.c" /> <ClCompile Include="..\lib_dec\ivas_ls_custom_dec.c" /> Loading @@ -290,6 +291,7 @@ <ClCompile Include="..\lib_dec\ivas_mct_core_dec.c" /> <ClCompile Include="..\lib_dec\ivas_mct_dec.c" /> <ClCompile Include="..\lib_dec\ivas_mct_dec_mct.c" /> <ClCompile Include="..\lib_dec\ivas_mc_paramupmix_dec.c" /> <ClCompile Include="..\lib_dec\ivas_mc_param_dec.c" /> <ClCompile Include="..\lib_dec\ivas_mdct_core_dec.c" /> <ClCompile Include="..\lib_dec\ivas_mono_dmx_renderer.c" /> Loading
Workspace_msvc/lib_dec.vcxproj.filters +6 −0 Original line number Diff line number Diff line Loading @@ -518,6 +518,12 @@ <ClCompile Include="..\lib_dec\ivas_ism_dec.c"> <Filter>dec_ivas_c</Filter> </ClCompile> <ClCompile Include="..\lib_dec\ivas_mc_paramupmix_dec.c"> <Filter>dec_ivas_c</Filter> </ClCompile> <ClCompile Include="..\lib_dec\ivas_jbm_dec.c"> <Filter>dec_ivas_c</Filter> </ClCompile> </ItemGroup> <ItemGroup> <ClInclude Include="..\lib_dec\jbm_jb4_inputbuffer.h"> Loading
Workspace_msvc/lib_enc.vcxproj +1 −0 Original line number Diff line number Diff line Loading @@ -213,6 +213,7 @@ <ClCompile Include="..\lib_enc\ivas_entropy_coder.c" /> <ClCompile Include="..\lib_enc\ivas_ism_dtx_enc.c" /> <ClCompile Include="..\lib_enc\ivas_lfe_enc.c" /> <ClCompile Include="..\lib_enc\ivas_mc_paramupmix_enc.c" /> <ClCompile Include="..\lib_enc\ivas_mc_param_enc.c" /> <ClCompile Include="..\lib_enc\ivas_pca_enc.c" /> <ClCompile Include="..\lib_enc\ivas_range_uni_enc.c" /> Loading