Loading .gitlab-ci.yml +116 −76 Original line number Diff line number Diff line variables: TESTV_DIR: "/usr/local/testv" LTV_DIR: "/usr/local/ltv" BUILD_OUTPUT: "build_output.txt" EVS_BE_TEST_DIR: "/usr/local/be_2_evs_test" SANITIZER_TESTS: "CLANG1 CLANG2" Loading @@ -9,7 +10,6 @@ variables: EXIT_CODE_NON_BE: 123 EXIT_CODE_FAIL: 1 # This sets when pipelines are created. Jobs have more specific rules to restrict them. workflow: rules: Loading Loading @@ -44,8 +44,8 @@ stages: .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) .merge_request_comparison_setup: &merge_request_comparison_setup ### build test binaries, initial clean for paranoia reasons .merge_request_comparison_setup: &merge_request_comparison_setup ### build test binaries, initial clean for paranoia reasons - make clean - mkdir build - cd build Loading @@ -53,6 +53,7 @@ stages: - make -j - mv IVAS_cod ../IVAS_cod_test - mv IVAS_dec ../IVAS_dec_test - mv IVAS_rend .. - cd .. - rm -rf build/* Loading Loading @@ -82,15 +83,17 @@ stages: - mv IVAS_cod_test IVAS_cod - mv IVAS_dec_test IVAS_dec ### re-checkout the commit from the source branch to have up-to-date self_test.py and scripts/testv (and actually everything) - git checkout $source_branch_commit_sha .merge-request-comparison-check: &merge-request-comparison-check - if [ $zero_errors != 1 ]; then echo "Run errors encountered!"; exit $EXIT_CODE_FAIL; fi - if [ $exit_code -eq 1 ] && [ $non_be_flag == 0 ]; then echo "Non-bitexact cases without non-BE tag encountered!"; exit $EXIT_CODE_FAIL; fi - if [ $exit_code -eq 1 ] && [ $non_be_flag != 0 ]; then echo "Non-bitexact cases with non-BE tag encountered"; exit $EXIT_CODE_NON_BE; fi - exit 0 .update-ltv-repo: &update-ltv-repo - cd $LTV_DIR - git pull - cd - # --------------------------------------------------------------- # Job templates # --------------------------------------------------------------- Loading Loading @@ -125,7 +128,6 @@ stages: rules: - if: $CI_PIPELINE_SOURCE == 'schedule' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH # templates to define stages and platforms .test-job-linux: tags: Loading @@ -137,7 +139,6 @@ stages: tags: - ivas-linux # template for test jobs on linux that need the TESTV_DIR .test-job-linux-needs-testv-dir: extends: .test-job-linux Loading @@ -153,7 +154,6 @@ stages: exit_codes: - 123 # --------------------------------------------------------------- # Validation jobs # --------------------------------------------------------------- Loading @@ -172,7 +172,6 @@ check-if-branch-is-up-to-date-with-main: - echo $commits_behind_count - if [ $commits_behind_count -eq 0 ]; then exit 0; else exit 1; fi; # --------------------------------------------------------------- # Build jobs # --------------------------------------------------------------- Loading Loading @@ -238,7 +237,6 @@ build-codec-sanitizers-linux: - *print-common-info - bash ci/build_codec_sanitizers_linux.sh # --------------------------------------------------------------- # Test jobs for merge requests # --------------------------------------------------------------- Loading @@ -263,8 +261,7 @@ codec-smoke-test: - out/logs/ - smoke_test_output.txt - smoke_test_output_plc.txt expose_as: 'Smoke test results' expose_as: "Smoke test results" # code selftest testvectors with memory-sanitizer binaries msan-on-merge-request-linux: Loading @@ -285,8 +282,7 @@ msan-on-merge-request-linux: paths: - scripts/ref/logs/ - test_output.txt expose_as: 'Msan selftest results' expose_as: "Msan selftest results" # code selftest testvectors with address-sanitizer binaries asan-on-merge-request-linux: Loading @@ -307,7 +303,7 @@ asan-on-merge-request-linux: paths: - scripts/ref/logs/ - test_output.txt expose_as: 'Asan selftest results' expose_as: "Asan selftest results" # test external renderer executable external-renderer-make-pytest: Loading @@ -320,7 +316,7 @@ external-renderer-make-pytest: - make -j IVAS_rend - make -j unittests - make -j --directory scripts/td_object_renderer/object_renderer_standalone - python3 -m pytest tests/renderer/test_renderer.py -q --log-level ERROR -n auto -rA - python3 -m pytest -q --log-level ERROR -n auto -rA tests/renderer/test_renderer.py # test external renderer executable with cmake + asan external-renderer-cmake-asan-pytest: Loading @@ -333,7 +329,7 @@ external-renderer-cmake-asan-pytest: - python3 ci/disable_ram_counting.py - cmake -B cmake-build -G "Unix Makefiles" -DCLANG=asan -DCOPY_EXECUTABLES_FROM_BUILD_DIR=true - cmake --build cmake-build -- -j - python3 -m pytest tests/renderer/test_renderer.py -q --log-level ERROR -n auto -rA - python3 -m pytest -q --log-level ERROR -n auto -rA tests/renderer/test_renderer.py # test external renderer executable with cmake + msan external-renderer-cmake-msan-pytest: Loading @@ -346,7 +342,19 @@ external-renderer-cmake-msan-pytest: - python3 ci/disable_ram_counting.py - cmake -B cmake-build -G "Unix Makefiles" -DCLANG=msan -DCOPY_EXECUTABLES_FROM_BUILD_DIR=true - cmake --build cmake-build -- -j - python3 -m pytest tests/renderer/test_renderer.py -q --log-level ERROR -n auto -rA - python3 -m pytest -q --log-level ERROR -n auto -rA tests/renderer/test_renderer.py # test external renderer executable with cmake vs decoder renderer external-renderer-cmake-vs-decoder-pytest: extends: - .test-job-linux - .rules-merge-request needs: ["build-codec-linux-cmake"] stage: test script: - cmake -B cmake-build -G "Unix Makefiles" -DCOPY_EXECUTABLES_FROM_BUILD_DIR=true -DDEC_TO_REND_FLOAT_DUMP=true - cmake --build cmake-build -- -j - python3 -m pytest -q --log-level ERROR -n 1 -rA tests/renderer/test_renderer_vs_decoder.py # compare bit exactness between target and source branch ivas-pytest-on-merge-request: Loading @@ -362,6 +370,10 @@ ivas-pytest-on-merge-request: # some helper variables - "|| true" to prevent failures from grep not finding anything - non_be_flag=$(echo $CI_MERGE_REQUEST_TITLE | grep -c --ignore-case "\[non[ -]*be\]") || true - ref_using_main=$(echo $CI_MERGE_REQUEST_TITLE | grep -c --ignore-case "\[ref[ -]*using[ -]*main\]") || true ### If ref_using_main is not set, checkoug the source branch to use scripts and input from there - if [ $ref_using_main == 0 ]; then git checkout $source_branch_commit_sha; fi ### prepare pytest # create short test vectors Loading @@ -370,6 +382,9 @@ ivas-pytest-on-merge-request: - python3 -m pytest tests -v --update_ref 1 -m create_ref - python3 -m pytest tests -v --update_ref 1 -m create_ref_part2 ### Run test using branch scripts and input - if [ $ref_using_main == 1 ]; then git checkout $source_branch_commit_sha; fi ### run pytest - exit_code=0 - python3 -m pytest tests -v --junit-xml=report-junit.xml || exit_code=$? Loading @@ -385,7 +400,7 @@ ivas-pytest-on-merge-request: when: always paths: - report-junit.xml expose_as: 'pytest ivas results' expose_as: "pytest ivas results" reports: junit: - report-junit.xml Loading @@ -403,11 +418,18 @@ evs-pytest-on-merge-request: # some helper variables - "|| true" to prevent failures from grep not finding anything - non_be_flag=$(echo $CI_MERGE_REQUEST_TITLE | grep -c --ignore-case "\[evs[ -]*non[ -]*be\]") || true - ref_using_main=$(echo $CI_MERGE_REQUEST_TITLE | grep -c --ignore-case "\[ref[ -]*using[ -]*main\]") || true ### If ref_using_main is not set, checkoug the source branch to use scripts and input from there - if [ $ref_using_main == 0 ]; then git checkout $source_branch_commit_sha; fi ### prepare pytest # create references - python3 -m pytest tests/test_param_file.py -v --update_ref 1 -m create_ref --param_file scripts/config/self_test_evs.prm ### Run test using branch scripts and input - if [ $ref_using_main == 1 ]; then git checkout $source_branch_commit_sha; fi ### run pytest for EVS cases - exit_code=0 - python3 -m pytest tests/test_param_file.py -v --param_file scripts/config/self_test_evs.prm --junit-xml=report-junit-evs.xml || exit_code=$? Loading @@ -423,12 +445,11 @@ evs-pytest-on-merge-request: when: always paths: - report-junit-evs.xml expose_as: 'pytest evs results' expose_as: "pytest evs results" reports: junit: - report-junit-evs.xml # --------------------------------------------------------------- # Test jobs for main branch # --------------------------------------------------------------- Loading Loading @@ -460,7 +481,6 @@ be-2-evs-linux: - cd evs_be_test - python3 ../ci/run_evs_be_test.py codec-comparison-on-main-push: extends: - .test-job-linux Loading Loading @@ -500,11 +520,12 @@ codec-comparison-on-main-push: - mv IVAS_dec ../IVAS_dec_ref - cd .. ### re-checkout the latest commit in the main branch - git checkout $latest_commit # helper variable - "|| true" to prevent failures from grep not finding anything - non_be_flag=$(echo $CI_COMMIT_MESSAGE | grep -c --ignore-case "\[non[ -]*be\]") || true - ref_using_main=$(echo $CI_COMMIT_MESSAGE | grep -c --ignore-case "\[ref[ -]*using[ -]*main\]") || true ### re-checkout the latest commit in the main branch, if ref_using_main is not set - if [ $ref_using_main == 0 ]; then git checkout $latest_commit;fi ### prepare pytest # create short test vectors Loading @@ -516,6 +537,9 @@ codec-comparison-on-main-push: - python3 -m pytest tests -v --update_ref 1 -m create_ref - python3 -m pytest tests -v --update_ref 1 -m create_ref_part2 ### re-checkout the latest commit here, if ref_using_main is set - if [ $ref_using_main -eq 1 ]; then git checkout $latest_commit;fi ### run pytest - exit_code=0 - python3 -m pytest tests -v --junit-xml=report-junit.xml || exit_code=$? Loading @@ -531,20 +555,22 @@ codec-comparison-on-main-push: when: always paths: - report-junit.xml expose_as: 'Results of comparison to previous merge commit' expose_as: "Results of comparison to previous merge commit" reports: junit: report-junit.xml # --------------------------------------------------------------- # Scheduled jobs on main # --------------------------------------------------------------- .sanitizer-test-template: extends: # TODO: still needed since MASA ltv vectors are not there yet # when they were added, we can add a needs-ltv-dir template - .test-job-linux-needs-testv-dir stage: test tags: - sanitizer_test_main timeout: "2 hours" artifacts: name: "$CI_JOB_NAME--main--sha-$CI_COMMIT_SHORT_SHA" when: always Loading @@ -558,6 +584,7 @@ sanitizer-test-mono: rules: - if: $IS_SANITIZER_TEST_RUN script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py mono mono --tests $SANITIZER_TESTS sanitizer-test-stereo: Loading @@ -565,8 +592,9 @@ sanitizer-test-stereo: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 20 minutes start_in: 1 hour script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py stereo $OUT_FORMATS_CHANNEL_BASED --tests $SANITIZER_TESTS sanitizer-test-stereodmxevs: Loading @@ -574,17 +602,19 @@ sanitizer-test-stereodmxevs: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 40 minutes start_in: 2 hours script: - python3 ci/run_scheduled_sanitizer_test.py StereoDmxEvs mono --tests $SANITIZER_TESTS - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py StereoDmxEVS mono --tests $SANITIZER_TESTS sanitizer-test-ism1: extends: .sanitizer-test-template rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 1 hour start_in: 3 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 sanitizer-test-ism2: Loading @@ -592,8 +622,9 @@ sanitizer-test-ism2: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 1 hour 30 minutes start_in: 4 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 sanitizer-test-ism3: Loading @@ -601,8 +632,9 @@ sanitizer-test-ism3: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 2 hours start_in: 6 hours 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 sanitizer-test-ism4: Loading @@ -610,8 +642,9 @@ sanitizer-test-ism4: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 2 hours 30 minutes start_in: 8 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 sanitizer-test-mc-5_1: Loading @@ -619,8 +652,9 @@ sanitizer-test-mc-5_1: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 3 hours start_in: 10 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py 5_1 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-mc-5_1_2: Loading @@ -628,8 +662,9 @@ sanitizer-test-mc-5_1_2: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 4 hours start_in: 12 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py 5_1_2 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-mc-5_1_4: Loading @@ -637,8 +672,9 @@ sanitizer-test-mc-5_1_4: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 5 hours start_in: 14 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py 5_1_4 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-mc-7_1: Loading @@ -646,8 +682,9 @@ sanitizer-test-mc-7_1: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 6 hours start_in: 16 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py 7_1 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-mc-7_1_4: Loading @@ -655,8 +692,9 @@ sanitizer-test-mc-7_1_4: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 7 hours start_in: 18 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py 7_1_4 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-masa: Loading @@ -664,8 +702,9 @@ sanitizer-test-masa: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 8 hours start_in: 20 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 sanitizer-test-sba: Loading @@ -673,8 +712,9 @@ sanitizer-test-sba: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 9 hours start_in: 22 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py SBA $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-planarsba: Loading @@ -682,8 +722,9 @@ sanitizer-test-planarsba: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 10 hours start_in: 24 hours script: - *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 # GCOV/LCOV coverage analysis of self_test suite Loading Loading @@ -736,4 +777,3 @@ pull-from-3gpp-forge: # Push to mirror, include tags. Option `-o ci.skip` tells GitLab to skip CI for the pushed commits (assumed already tested upstream) - git push --tags -o ci.skip "https://${GITLAB_USER_LOGIN}:${MIRROR_ACCESS_TOKEN}@${CI_REPOSITORY_URL#*@}" "HEAD:${CI_COMMIT_BRANCH}" CMakeLists.txt +1 −0 Original line number Diff line number Diff line Loading @@ -135,6 +135,7 @@ endif() file(GLOB libDebugSrcs "lib_debug/*.c") file(GLOB libDebugHeaders "lib_debug/*.h") add_library(lib_debug ${libDebugSrcs} ${libDebugHeaders}) target_link_libraries(lib_debug lib_com) file(GLOB libEncSrcs "lib_enc/*.c") file(GLOB libEncHeaders "lib_enc/*.h") Loading apps/encoder.c +28 −6 Original line number Diff line number Diff line Loading @@ -120,11 +120,13 @@ typedef struct const char *ca_config_file; bool mimeOutput; #ifdef DEBUG_AGC_ENCODER_CMD_OPTION #ifdef AGC_ENABLE_FOR_LBR IVAS_ENC_AGC agc; #else bool agc; #endif #endif /* AGC_ENABLE_FOR_LBR */ #endif /* DEBUG_AGC_ENCODER_CMD_OPTION */ bool pca; #ifdef DEBUG_FOA_AGC FILE *agcBitstream; /* temporary */ Loading Loading @@ -450,11 +452,25 @@ int main( } break; case IVAS_ENC_INPUT_SBA: if ( ( error = IVAS_ENC_ConfigureForAmbisonics( hIvasEnc, arg.inputFs, totalBitrate, arg.max_bwidth_user, bandwidth, arg.dtxConfig, arg.inputFormatConfig.sba.order, arg.inputFormatConfig.sba.isPlanar, #ifdef DEBUG_AGC_ENCODER_CMD_OPTION arg.agc, #endif arg.pca #ifdef DEBUG_SBA_AUDIO_DUMP if ( ( error = IVAS_ENC_ConfigureForAmbisonics( hIvasEnc, arg.inputFs, totalBitrate, arg.max_bwidth_user, bandwidth, arg.dtxConfig, arg.inputFormatConfig.sba.order, arg.inputFormatConfig.sba.isPlanar, arg.agc, arg.pca, &numTransportChannels ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_ENC_ConfigureForAmbisonics( hIvasEnc, arg.inputFs, totalBitrate, arg.max_bwidth_user, bandwidth, arg.dtxConfig, arg.inputFormatConfig.sba.order, arg.inputFormatConfig.sba.isPlanar, arg.agc, arg.pca ) ) != IVAS_ERR_OK ) , &numTransportChannels #endif ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_ENC_ConfigureForAmbisonics failed: %s\n\n", IVAS_ENC_GetErrorMessage( error ) ); goto cleanup; Loading Loading @@ -880,11 +896,13 @@ static void initArgStruct( EncArguments *arg ) arg->ca_config_file = NULL; arg->mimeOutput = false; #ifdef DEBUG_AGC_ENCODER_CMD_OPTION #ifdef AGC_ENABLE_FOR_LBR arg->agc = IVAS_ENC_AGC_UNDEFINED; #else arg->agc = IVAS_DEFAULT_AGC; #endif #endif /* AGC_ENABLE_FOR_LBR */ #endif /* DEBUG_AGC_ENCODER_CMD_OPTION */ arg->pca = false; #ifdef DEBUG_FOA_AGC arg->agcBitstream = NULL; Loading Loading @@ -1390,6 +1408,7 @@ static bool parseCmdlIVAS_enc( arg->inputFormatConfig.stereoToMonoDownmix = true; i++; } #ifdef DEBUG_AGC_ENCODER_CMD_OPTION else if ( strcmp( argv_to_upper, "-AGC" ) == 0 ) { i++; Loading @@ -1415,6 +1434,7 @@ static bool parseCmdlIVAS_enc( return false; } } #endif else if ( strcmp( argv_to_upper, "-BYPASS" ) == 0 ) // VE: should be renamed to "-pca" { i++; Loading Loading @@ -1654,13 +1674,15 @@ static void usage_enc( void ) #ifdef DEBUG_SBA fprintf( stdout, "-tag : Tag name for intermediate debug files\n" ); #endif #ifdef DEBUG_AGC_ENCODER_CMD_OPTION #ifdef AGC_ENABLE_FOR_LBR fprintf( stdout, "-agc op : SBA Adaptive gain control, op = (0, 1). \n" ); fprintf( stdout, " By default op is 1 (activated) for bitrates between 24400 and 32000,\n" ); fprintf( stdout, " otherwise it is 0 (deactivated) for all other bitrates\n" ); #else fprintf( stdout, "-agc op : SBA Adaptive gain control, op = (0, 1), by default op is 0 or deactivated\n" ); #endif #endif /* AGC_ENABLE_FOR_LBR */ #endif /* DEBUG_AGC_ENCODER_CMD_OPTION */ fprintf( stdout, "-bypass mode : SBA PCA by-pass, mode = (1, 2), 1 = PCA off, 2 = signal adaptive, default is 1\n" ); #ifdef DEBUGGING Loading ci/run_scheduled_sanitizer_test.py +2 −5 Original line number Diff line number Diff line Loading @@ -6,8 +6,8 @@ import subprocess import pathlib DURATION = "120" CFG = "ci_linux.json" DURATION = "30" CFG = "ci_linux_ltv.json" SUPPORTED_TESTS = ["CLANG1", "CLANG2", "CLANG3", "VALGRIND"] EP_FILE = "ep_015.g192" GENPATT_CMD = f"gen-patt -tailstat -fer -g192 -gamma 0 -rate 0.15 -tol 0.001 -reset -n {int(DURATION) * 50} {EP_FILE}" Loading Loading @@ -48,9 +48,6 @@ def get_modes(in_format: str) -> list: in_format = "MC_" + in_format + "_b" mode_list = [m for m in output.splitlines() if in_format in m] if "SBA" in in_format: # rate switching not implemented yet mode_list = [m for m in mode_list if not "_rs" in m] return mode_list Loading ci/smoke_test.sh +2 −5 Original line number Diff line number Diff line Loading @@ -8,8 +8,5 @@ fi make clean make all -j 8 # get all modes except SBA rate switching (which is broken currently) list=$(./scripts/runIvasCodec.py -l | grep -v "SBA.*rs") ./scripts/runIvasCodec.py -p ./scripts/config/ci_linux.json -m $list -U 1 | tee smoke_test_output.txt ./scripts/runIvasCodec.py -p ./scripts/config/ci_linux.json -m $list -U 1 -D="-fec 15" --decoder_only | tee smoke_test_output_plc.txt ./scripts/runIvasCodec.py -p ./scripts/config/ci_linux.json -U 1 | tee smoke_test_output.txt ./scripts/runIvasCodec.py -p ./scripts/config/ci_linux.json -U 1 -D="-fec 15" --decoder_only | tee smoke_test_output_plc.txt Loading
.gitlab-ci.yml +116 −76 Original line number Diff line number Diff line variables: TESTV_DIR: "/usr/local/testv" LTV_DIR: "/usr/local/ltv" BUILD_OUTPUT: "build_output.txt" EVS_BE_TEST_DIR: "/usr/local/be_2_evs_test" SANITIZER_TESTS: "CLANG1 CLANG2" Loading @@ -9,7 +10,6 @@ variables: EXIT_CODE_NON_BE: 123 EXIT_CODE_FAIL: 1 # This sets when pipelines are created. Jobs have more specific rules to restrict them. workflow: rules: Loading Loading @@ -44,8 +44,8 @@ stages: .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) .merge_request_comparison_setup: &merge_request_comparison_setup ### build test binaries, initial clean for paranoia reasons .merge_request_comparison_setup: &merge_request_comparison_setup ### build test binaries, initial clean for paranoia reasons - make clean - mkdir build - cd build Loading @@ -53,6 +53,7 @@ stages: - make -j - mv IVAS_cod ../IVAS_cod_test - mv IVAS_dec ../IVAS_dec_test - mv IVAS_rend .. - cd .. - rm -rf build/* Loading Loading @@ -82,15 +83,17 @@ stages: - mv IVAS_cod_test IVAS_cod - mv IVAS_dec_test IVAS_dec ### re-checkout the commit from the source branch to have up-to-date self_test.py and scripts/testv (and actually everything) - git checkout $source_branch_commit_sha .merge-request-comparison-check: &merge-request-comparison-check - if [ $zero_errors != 1 ]; then echo "Run errors encountered!"; exit $EXIT_CODE_FAIL; fi - if [ $exit_code -eq 1 ] && [ $non_be_flag == 0 ]; then echo "Non-bitexact cases without non-BE tag encountered!"; exit $EXIT_CODE_FAIL; fi - if [ $exit_code -eq 1 ] && [ $non_be_flag != 0 ]; then echo "Non-bitexact cases with non-BE tag encountered"; exit $EXIT_CODE_NON_BE; fi - exit 0 .update-ltv-repo: &update-ltv-repo - cd $LTV_DIR - git pull - cd - # --------------------------------------------------------------- # Job templates # --------------------------------------------------------------- Loading Loading @@ -125,7 +128,6 @@ stages: rules: - if: $CI_PIPELINE_SOURCE == 'schedule' && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH # templates to define stages and platforms .test-job-linux: tags: Loading @@ -137,7 +139,6 @@ stages: tags: - ivas-linux # template for test jobs on linux that need the TESTV_DIR .test-job-linux-needs-testv-dir: extends: .test-job-linux Loading @@ -153,7 +154,6 @@ stages: exit_codes: - 123 # --------------------------------------------------------------- # Validation jobs # --------------------------------------------------------------- Loading @@ -172,7 +172,6 @@ check-if-branch-is-up-to-date-with-main: - echo $commits_behind_count - if [ $commits_behind_count -eq 0 ]; then exit 0; else exit 1; fi; # --------------------------------------------------------------- # Build jobs # --------------------------------------------------------------- Loading Loading @@ -238,7 +237,6 @@ build-codec-sanitizers-linux: - *print-common-info - bash ci/build_codec_sanitizers_linux.sh # --------------------------------------------------------------- # Test jobs for merge requests # --------------------------------------------------------------- Loading @@ -263,8 +261,7 @@ codec-smoke-test: - out/logs/ - smoke_test_output.txt - smoke_test_output_plc.txt expose_as: 'Smoke test results' expose_as: "Smoke test results" # code selftest testvectors with memory-sanitizer binaries msan-on-merge-request-linux: Loading @@ -285,8 +282,7 @@ msan-on-merge-request-linux: paths: - scripts/ref/logs/ - test_output.txt expose_as: 'Msan selftest results' expose_as: "Msan selftest results" # code selftest testvectors with address-sanitizer binaries asan-on-merge-request-linux: Loading @@ -307,7 +303,7 @@ asan-on-merge-request-linux: paths: - scripts/ref/logs/ - test_output.txt expose_as: 'Asan selftest results' expose_as: "Asan selftest results" # test external renderer executable external-renderer-make-pytest: Loading @@ -320,7 +316,7 @@ external-renderer-make-pytest: - make -j IVAS_rend - make -j unittests - make -j --directory scripts/td_object_renderer/object_renderer_standalone - python3 -m pytest tests/renderer/test_renderer.py -q --log-level ERROR -n auto -rA - python3 -m pytest -q --log-level ERROR -n auto -rA tests/renderer/test_renderer.py # test external renderer executable with cmake + asan external-renderer-cmake-asan-pytest: Loading @@ -333,7 +329,7 @@ external-renderer-cmake-asan-pytest: - python3 ci/disable_ram_counting.py - cmake -B cmake-build -G "Unix Makefiles" -DCLANG=asan -DCOPY_EXECUTABLES_FROM_BUILD_DIR=true - cmake --build cmake-build -- -j - python3 -m pytest tests/renderer/test_renderer.py -q --log-level ERROR -n auto -rA - python3 -m pytest -q --log-level ERROR -n auto -rA tests/renderer/test_renderer.py # test external renderer executable with cmake + msan external-renderer-cmake-msan-pytest: Loading @@ -346,7 +342,19 @@ external-renderer-cmake-msan-pytest: - python3 ci/disable_ram_counting.py - cmake -B cmake-build -G "Unix Makefiles" -DCLANG=msan -DCOPY_EXECUTABLES_FROM_BUILD_DIR=true - cmake --build cmake-build -- -j - python3 -m pytest tests/renderer/test_renderer.py -q --log-level ERROR -n auto -rA - python3 -m pytest -q --log-level ERROR -n auto -rA tests/renderer/test_renderer.py # test external renderer executable with cmake vs decoder renderer external-renderer-cmake-vs-decoder-pytest: extends: - .test-job-linux - .rules-merge-request needs: ["build-codec-linux-cmake"] stage: test script: - cmake -B cmake-build -G "Unix Makefiles" -DCOPY_EXECUTABLES_FROM_BUILD_DIR=true -DDEC_TO_REND_FLOAT_DUMP=true - cmake --build cmake-build -- -j - python3 -m pytest -q --log-level ERROR -n 1 -rA tests/renderer/test_renderer_vs_decoder.py # compare bit exactness between target and source branch ivas-pytest-on-merge-request: Loading @@ -362,6 +370,10 @@ ivas-pytest-on-merge-request: # some helper variables - "|| true" to prevent failures from grep not finding anything - non_be_flag=$(echo $CI_MERGE_REQUEST_TITLE | grep -c --ignore-case "\[non[ -]*be\]") || true - ref_using_main=$(echo $CI_MERGE_REQUEST_TITLE | grep -c --ignore-case "\[ref[ -]*using[ -]*main\]") || true ### If ref_using_main is not set, checkoug the source branch to use scripts and input from there - if [ $ref_using_main == 0 ]; then git checkout $source_branch_commit_sha; fi ### prepare pytest # create short test vectors Loading @@ -370,6 +382,9 @@ ivas-pytest-on-merge-request: - python3 -m pytest tests -v --update_ref 1 -m create_ref - python3 -m pytest tests -v --update_ref 1 -m create_ref_part2 ### Run test using branch scripts and input - if [ $ref_using_main == 1 ]; then git checkout $source_branch_commit_sha; fi ### run pytest - exit_code=0 - python3 -m pytest tests -v --junit-xml=report-junit.xml || exit_code=$? Loading @@ -385,7 +400,7 @@ ivas-pytest-on-merge-request: when: always paths: - report-junit.xml expose_as: 'pytest ivas results' expose_as: "pytest ivas results" reports: junit: - report-junit.xml Loading @@ -403,11 +418,18 @@ evs-pytest-on-merge-request: # some helper variables - "|| true" to prevent failures from grep not finding anything - non_be_flag=$(echo $CI_MERGE_REQUEST_TITLE | grep -c --ignore-case "\[evs[ -]*non[ -]*be\]") || true - ref_using_main=$(echo $CI_MERGE_REQUEST_TITLE | grep -c --ignore-case "\[ref[ -]*using[ -]*main\]") || true ### If ref_using_main is not set, checkoug the source branch to use scripts and input from there - if [ $ref_using_main == 0 ]; then git checkout $source_branch_commit_sha; fi ### prepare pytest # create references - python3 -m pytest tests/test_param_file.py -v --update_ref 1 -m create_ref --param_file scripts/config/self_test_evs.prm ### Run test using branch scripts and input - if [ $ref_using_main == 1 ]; then git checkout $source_branch_commit_sha; fi ### run pytest for EVS cases - exit_code=0 - python3 -m pytest tests/test_param_file.py -v --param_file scripts/config/self_test_evs.prm --junit-xml=report-junit-evs.xml || exit_code=$? Loading @@ -423,12 +445,11 @@ evs-pytest-on-merge-request: when: always paths: - report-junit-evs.xml expose_as: 'pytest evs results' expose_as: "pytest evs results" reports: junit: - report-junit-evs.xml # --------------------------------------------------------------- # Test jobs for main branch # --------------------------------------------------------------- Loading Loading @@ -460,7 +481,6 @@ be-2-evs-linux: - cd evs_be_test - python3 ../ci/run_evs_be_test.py codec-comparison-on-main-push: extends: - .test-job-linux Loading Loading @@ -500,11 +520,12 @@ codec-comparison-on-main-push: - mv IVAS_dec ../IVAS_dec_ref - cd .. ### re-checkout the latest commit in the main branch - git checkout $latest_commit # helper variable - "|| true" to prevent failures from grep not finding anything - non_be_flag=$(echo $CI_COMMIT_MESSAGE | grep -c --ignore-case "\[non[ -]*be\]") || true - ref_using_main=$(echo $CI_COMMIT_MESSAGE | grep -c --ignore-case "\[ref[ -]*using[ -]*main\]") || true ### re-checkout the latest commit in the main branch, if ref_using_main is not set - if [ $ref_using_main == 0 ]; then git checkout $latest_commit;fi ### prepare pytest # create short test vectors Loading @@ -516,6 +537,9 @@ codec-comparison-on-main-push: - python3 -m pytest tests -v --update_ref 1 -m create_ref - python3 -m pytest tests -v --update_ref 1 -m create_ref_part2 ### re-checkout the latest commit here, if ref_using_main is set - if [ $ref_using_main -eq 1 ]; then git checkout $latest_commit;fi ### run pytest - exit_code=0 - python3 -m pytest tests -v --junit-xml=report-junit.xml || exit_code=$? Loading @@ -531,20 +555,22 @@ codec-comparison-on-main-push: when: always paths: - report-junit.xml expose_as: 'Results of comparison to previous merge commit' expose_as: "Results of comparison to previous merge commit" reports: junit: report-junit.xml # --------------------------------------------------------------- # Scheduled jobs on main # --------------------------------------------------------------- .sanitizer-test-template: extends: # TODO: still needed since MASA ltv vectors are not there yet # when they were added, we can add a needs-ltv-dir template - .test-job-linux-needs-testv-dir stage: test tags: - sanitizer_test_main timeout: "2 hours" artifacts: name: "$CI_JOB_NAME--main--sha-$CI_COMMIT_SHORT_SHA" when: always Loading @@ -558,6 +584,7 @@ sanitizer-test-mono: rules: - if: $IS_SANITIZER_TEST_RUN script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py mono mono --tests $SANITIZER_TESTS sanitizer-test-stereo: Loading @@ -565,8 +592,9 @@ sanitizer-test-stereo: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 20 minutes start_in: 1 hour script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py stereo $OUT_FORMATS_CHANNEL_BASED --tests $SANITIZER_TESTS sanitizer-test-stereodmxevs: Loading @@ -574,17 +602,19 @@ sanitizer-test-stereodmxevs: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 40 minutes start_in: 2 hours script: - python3 ci/run_scheduled_sanitizer_test.py StereoDmxEvs mono --tests $SANITIZER_TESTS - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py StereoDmxEVS mono --tests $SANITIZER_TESTS sanitizer-test-ism1: extends: .sanitizer-test-template rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 1 hour start_in: 3 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 sanitizer-test-ism2: Loading @@ -592,8 +622,9 @@ sanitizer-test-ism2: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 1 hour 30 minutes start_in: 4 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 sanitizer-test-ism3: Loading @@ -601,8 +632,9 @@ sanitizer-test-ism3: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 2 hours start_in: 6 hours 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 sanitizer-test-ism4: Loading @@ -610,8 +642,9 @@ sanitizer-test-ism4: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 2 hours 30 minutes start_in: 8 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 sanitizer-test-mc-5_1: Loading @@ -619,8 +652,9 @@ sanitizer-test-mc-5_1: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 3 hours start_in: 10 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py 5_1 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-mc-5_1_2: Loading @@ -628,8 +662,9 @@ sanitizer-test-mc-5_1_2: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 4 hours start_in: 12 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py 5_1_2 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-mc-5_1_4: Loading @@ -637,8 +672,9 @@ sanitizer-test-mc-5_1_4: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 5 hours start_in: 14 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py 5_1_4 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-mc-7_1: Loading @@ -646,8 +682,9 @@ sanitizer-test-mc-7_1: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 6 hours start_in: 16 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py 7_1 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-mc-7_1_4: Loading @@ -655,8 +692,9 @@ sanitizer-test-mc-7_1_4: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 7 hours start_in: 18 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py 7_1_4 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-masa: Loading @@ -664,8 +702,9 @@ sanitizer-test-masa: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 8 hours start_in: 20 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 sanitizer-test-sba: Loading @@ -673,8 +712,9 @@ sanitizer-test-sba: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 9 hours start_in: 22 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py SBA $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-planarsba: Loading @@ -682,8 +722,9 @@ sanitizer-test-planarsba: rules: - if: $IS_SANITIZER_TEST_RUN when: delayed start_in: 10 hours start_in: 24 hours script: - *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 # GCOV/LCOV coverage analysis of self_test suite Loading Loading @@ -736,4 +777,3 @@ pull-from-3gpp-forge: # Push to mirror, include tags. Option `-o ci.skip` tells GitLab to skip CI for the pushed commits (assumed already tested upstream) - git push --tags -o ci.skip "https://${GITLAB_USER_LOGIN}:${MIRROR_ACCESS_TOKEN}@${CI_REPOSITORY_URL#*@}" "HEAD:${CI_COMMIT_BRANCH}"
CMakeLists.txt +1 −0 Original line number Diff line number Diff line Loading @@ -135,6 +135,7 @@ endif() file(GLOB libDebugSrcs "lib_debug/*.c") file(GLOB libDebugHeaders "lib_debug/*.h") add_library(lib_debug ${libDebugSrcs} ${libDebugHeaders}) target_link_libraries(lib_debug lib_com) file(GLOB libEncSrcs "lib_enc/*.c") file(GLOB libEncHeaders "lib_enc/*.h") Loading
apps/encoder.c +28 −6 Original line number Diff line number Diff line Loading @@ -120,11 +120,13 @@ typedef struct const char *ca_config_file; bool mimeOutput; #ifdef DEBUG_AGC_ENCODER_CMD_OPTION #ifdef AGC_ENABLE_FOR_LBR IVAS_ENC_AGC agc; #else bool agc; #endif #endif /* AGC_ENABLE_FOR_LBR */ #endif /* DEBUG_AGC_ENCODER_CMD_OPTION */ bool pca; #ifdef DEBUG_FOA_AGC FILE *agcBitstream; /* temporary */ Loading Loading @@ -450,11 +452,25 @@ int main( } break; case IVAS_ENC_INPUT_SBA: if ( ( error = IVAS_ENC_ConfigureForAmbisonics( hIvasEnc, arg.inputFs, totalBitrate, arg.max_bwidth_user, bandwidth, arg.dtxConfig, arg.inputFormatConfig.sba.order, arg.inputFormatConfig.sba.isPlanar, #ifdef DEBUG_AGC_ENCODER_CMD_OPTION arg.agc, #endif arg.pca #ifdef DEBUG_SBA_AUDIO_DUMP if ( ( error = IVAS_ENC_ConfigureForAmbisonics( hIvasEnc, arg.inputFs, totalBitrate, arg.max_bwidth_user, bandwidth, arg.dtxConfig, arg.inputFormatConfig.sba.order, arg.inputFormatConfig.sba.isPlanar, arg.agc, arg.pca, &numTransportChannels ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_ENC_ConfigureForAmbisonics( hIvasEnc, arg.inputFs, totalBitrate, arg.max_bwidth_user, bandwidth, arg.dtxConfig, arg.inputFormatConfig.sba.order, arg.inputFormatConfig.sba.isPlanar, arg.agc, arg.pca ) ) != IVAS_ERR_OK ) , &numTransportChannels #endif ) ) != IVAS_ERR_OK ) { fprintf( stderr, "\nIVAS_ENC_ConfigureForAmbisonics failed: %s\n\n", IVAS_ENC_GetErrorMessage( error ) ); goto cleanup; Loading Loading @@ -880,11 +896,13 @@ static void initArgStruct( EncArguments *arg ) arg->ca_config_file = NULL; arg->mimeOutput = false; #ifdef DEBUG_AGC_ENCODER_CMD_OPTION #ifdef AGC_ENABLE_FOR_LBR arg->agc = IVAS_ENC_AGC_UNDEFINED; #else arg->agc = IVAS_DEFAULT_AGC; #endif #endif /* AGC_ENABLE_FOR_LBR */ #endif /* DEBUG_AGC_ENCODER_CMD_OPTION */ arg->pca = false; #ifdef DEBUG_FOA_AGC arg->agcBitstream = NULL; Loading Loading @@ -1390,6 +1408,7 @@ static bool parseCmdlIVAS_enc( arg->inputFormatConfig.stereoToMonoDownmix = true; i++; } #ifdef DEBUG_AGC_ENCODER_CMD_OPTION else if ( strcmp( argv_to_upper, "-AGC" ) == 0 ) { i++; Loading @@ -1415,6 +1434,7 @@ static bool parseCmdlIVAS_enc( return false; } } #endif else if ( strcmp( argv_to_upper, "-BYPASS" ) == 0 ) // VE: should be renamed to "-pca" { i++; Loading Loading @@ -1654,13 +1674,15 @@ static void usage_enc( void ) #ifdef DEBUG_SBA fprintf( stdout, "-tag : Tag name for intermediate debug files\n" ); #endif #ifdef DEBUG_AGC_ENCODER_CMD_OPTION #ifdef AGC_ENABLE_FOR_LBR fprintf( stdout, "-agc op : SBA Adaptive gain control, op = (0, 1). \n" ); fprintf( stdout, " By default op is 1 (activated) for bitrates between 24400 and 32000,\n" ); fprintf( stdout, " otherwise it is 0 (deactivated) for all other bitrates\n" ); #else fprintf( stdout, "-agc op : SBA Adaptive gain control, op = (0, 1), by default op is 0 or deactivated\n" ); #endif #endif /* AGC_ENABLE_FOR_LBR */ #endif /* DEBUG_AGC_ENCODER_CMD_OPTION */ fprintf( stdout, "-bypass mode : SBA PCA by-pass, mode = (1, 2), 1 = PCA off, 2 = signal adaptive, default is 1\n" ); #ifdef DEBUGGING Loading
ci/run_scheduled_sanitizer_test.py +2 −5 Original line number Diff line number Diff line Loading @@ -6,8 +6,8 @@ import subprocess import pathlib DURATION = "120" CFG = "ci_linux.json" DURATION = "30" CFG = "ci_linux_ltv.json" SUPPORTED_TESTS = ["CLANG1", "CLANG2", "CLANG3", "VALGRIND"] EP_FILE = "ep_015.g192" GENPATT_CMD = f"gen-patt -tailstat -fer -g192 -gamma 0 -rate 0.15 -tol 0.001 -reset -n {int(DURATION) * 50} {EP_FILE}" Loading Loading @@ -48,9 +48,6 @@ def get_modes(in_format: str) -> list: in_format = "MC_" + in_format + "_b" mode_list = [m for m in output.splitlines() if in_format in m] if "SBA" in in_format: # rate switching not implemented yet mode_list = [m for m in mode_list if not "_rs" in m] return mode_list Loading
ci/smoke_test.sh +2 −5 Original line number Diff line number Diff line Loading @@ -8,8 +8,5 @@ fi make clean make all -j 8 # get all modes except SBA rate switching (which is broken currently) list=$(./scripts/runIvasCodec.py -l | grep -v "SBA.*rs") ./scripts/runIvasCodec.py -p ./scripts/config/ci_linux.json -m $list -U 1 | tee smoke_test_output.txt ./scripts/runIvasCodec.py -p ./scripts/config/ci_linux.json -m $list -U 1 -D="-fec 15" --decoder_only | tee smoke_test_output_plc.txt ./scripts/runIvasCodec.py -p ./scripts/config/ci_linux.json -U 1 | tee smoke_test_output.txt ./scripts/runIvasCodec.py -p ./scripts/config/ci_linux.json -U 1 -D="-fec 15" --decoder_only | tee smoke_test_output_plc.txt