Loading .gitlab-ci.yml +13 −6 Original line number Diff line number Diff line Loading @@ -69,7 +69,9 @@ stages: # compare to last target branch commit before pipeline was created - target_commit=$(git log $CI_MERGE_REQUEST_TARGET_BRANCH_NAME -1 --oneline --before=${CI_PIPELINE_CREATED_AT} --format=%H) .check-for-testvectors: &check-for-testvectors # check if the testvector files specified in scripts/config/ci_linux*.json are present - python3 -m pytest ci/test_vectors_available.py .merge-request-comparison-setup-codec: &merge-request-comparison-setup-codec ### build test binaries, initial clean for paranoia reasons Loading Loading @@ -660,30 +662,35 @@ clang-format-check: expose_as: 'formatting patch' # check for crashes if first received frame on decoder side is an SID .check-first-frame-is-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"] # needs: ["build-codec-linux-cmake"] script: - *print-common-info - *update-ltv-repo - *check-for-testvectors - 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 # SBA is run separately to use shorter part of file - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep -v MASA | grep -v SBA) - scripts/runIvasCodec.py -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 500 -U 0:20 || exit_code_no_sba=$? - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep SBA) - scripts/runIvasCodec.py -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 500 -U 70:80 || exit_code_sba=$? - if [ $exit_code_no_sba != 0 || $exit_code_sba != 0]; then exit 1; fi 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" expire_in: "5 days" # --------------------------------------------------------------- # Test jobs for main branch Loading ci/test_vectors_available.py 0 → 100644 +19 −0 Original line number Diff line number Diff line import pytest import pathlib import json import itertools TEST_CONFIG_DIR = pathlib.Path(__file__).parent.parent.joinpath("scripts/config") TEST_CONFIGS = [f for f in TEST_CONFIG_DIR.iterdir() if f.name.startswith("ci_linux")] def get_testvectors_from_config(config) -> list: with open(config) as f: cfg = json.load(f) return list(cfg["inpaths"].values()) TESTVECTORS = sorted(set(itertools.chain(*[get_testvectors_from_config(cfg) for cfg in TEST_CONFIGS]))) @pytest.mark.parametrize("testvector", TESTVECTORS) def test_vectors_available(testvector): if not pathlib.Path(testvector).exists(): raise FileNotFoundError(f"Testvector {testvector} can not be found") lib_com/ivas_prot.h +160 −157 Original line number Diff line number Diff line Loading @@ -209,6 +209,9 @@ ivas_error pre_proc_front_ivas( const int16_t front_vad_flag, /* i : front-VAD flag to overwrite VAD decision */ const int16_t force_front_vad, /* i : flag to force VAD decision */ const int16_t front_vad_dtx_flag, /* i : front-VAD DTX flag to overwrite VAD decision*/ #ifdef FIX_529_BWD_ISSUE const IVAS_FORMAT ivas_format, /* i : IVAS format */ #endif const int32_t ivas_total_brate /* i : IVAS total bitrate */ ); Loading lib_com/options.h +9 −2 Original line number Diff line number Diff line Loading @@ -143,7 +143,8 @@ #define BITSTREAM_INDICES_MEMORY /* Don't count memory for bitstream Indice at the encoder - it is a temporary solution for development only */ #endif #define DISABLE_ADAP_RES_COD_TMP /* temporary fix for IVAS-403, disables adaptive residual coding */ /*#define DISABLE_ADAP_RES_COD_TMP*/ /* temporary fix for IVAS-403, disables adaptive residual coding */ #define ADAP_OPT /* Issue 69: optimized the adap algorithm */ /*#define FIX_I4_OL_PITCH*/ /* fix open-loop pitch used for EVS core switching */ #ifdef IND_LIST_DYN Loading @@ -151,8 +152,14 @@ #endif #define FIX_383_CLEAN_UP /* Dlb : Clean up of unused functions */ // #define FIX_532_ISM_MD_INACTIVE /* VA: issue 532: improve MD coding in ISM inactive frames */ #define FIX_532_ISM_MD_INACTIVE /* VA: issue 532: improve MD coding in ISM inactive frames */ #define FIX_547_NAN_IGF_DEC /* FhG: issue 547: fix possible nan in IGF decoder */ #define FIX_529_BWD_ISSUE /* VA: issue 529: fix Bandwidth Detector not working reliably for Music and Generic Audio */ #define FIX_557_CRASH_IN_ISM_DTX /* VA issue 557: fix crash in 1ISM 48 kbps DTX */ #define IGF_TUNING_96 /* FhG: Issue 546: slight tuning of IGF config used in 96 kbps stereo, 128 kbps SBA and others */ #define FIX_522_ISM_FIRST_SID /* VA: fix ISM decoder crash if first received frame is an SID */ #define FIX_470_MASA_JBM_EXT /* Nokia: Issue 470, fix MASA EXT output with JBM */ Loading lib_com/prot.h +13 −10 Original line number Diff line number Diff line Loading @@ -3891,6 +3891,9 @@ void bw_detect( const float signal_in[], /* i : input signal */ float *spectrum, /* i : MDCT spectrum */ const float *enerBuffer, /* i : energy buffer */ #ifdef FIX_529_BWD_ISSUE const IVAS_FORMAT ivas_format, /* i : IVAS format */ #endif const int16_t mct_on /* i : flag MCT mode */ ); Loading Loading
.gitlab-ci.yml +13 −6 Original line number Diff line number Diff line Loading @@ -69,7 +69,9 @@ stages: # compare to last target branch commit before pipeline was created - target_commit=$(git log $CI_MERGE_REQUEST_TARGET_BRANCH_NAME -1 --oneline --before=${CI_PIPELINE_CREATED_AT} --format=%H) .check-for-testvectors: &check-for-testvectors # check if the testvector files specified in scripts/config/ci_linux*.json are present - python3 -m pytest ci/test_vectors_available.py .merge-request-comparison-setup-codec: &merge-request-comparison-setup-codec ### build test binaries, initial clean for paranoia reasons Loading Loading @@ -660,30 +662,35 @@ clang-format-check: expose_as: 'formatting patch' # check for crashes if first received frame on decoder side is an SID .check-first-frame-is-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"] # needs: ["build-codec-linux-cmake"] script: - *print-common-info - *update-ltv-repo - *check-for-testvectors - 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 # SBA is run separately to use shorter part of file - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep -v MASA | grep -v SBA) - scripts/runIvasCodec.py -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 500 -U 0:20 || exit_code_no_sba=$? - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep SBA) - scripts/runIvasCodec.py -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 500 -U 70:80 || exit_code_sba=$? - if [ $exit_code_no_sba != 0 || $exit_code_sba != 0]; then exit 1; fi 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" expire_in: "5 days" # --------------------------------------------------------------- # Test jobs for main branch Loading
ci/test_vectors_available.py 0 → 100644 +19 −0 Original line number Diff line number Diff line import pytest import pathlib import json import itertools TEST_CONFIG_DIR = pathlib.Path(__file__).parent.parent.joinpath("scripts/config") TEST_CONFIGS = [f for f in TEST_CONFIG_DIR.iterdir() if f.name.startswith("ci_linux")] def get_testvectors_from_config(config) -> list: with open(config) as f: cfg = json.load(f) return list(cfg["inpaths"].values()) TESTVECTORS = sorted(set(itertools.chain(*[get_testvectors_from_config(cfg) for cfg in TEST_CONFIGS]))) @pytest.mark.parametrize("testvector", TESTVECTORS) def test_vectors_available(testvector): if not pathlib.Path(testvector).exists(): raise FileNotFoundError(f"Testvector {testvector} can not be found")
lib_com/ivas_prot.h +160 −157 Original line number Diff line number Diff line Loading @@ -209,6 +209,9 @@ ivas_error pre_proc_front_ivas( const int16_t front_vad_flag, /* i : front-VAD flag to overwrite VAD decision */ const int16_t force_front_vad, /* i : flag to force VAD decision */ const int16_t front_vad_dtx_flag, /* i : front-VAD DTX flag to overwrite VAD decision*/ #ifdef FIX_529_BWD_ISSUE const IVAS_FORMAT ivas_format, /* i : IVAS format */ #endif const int32_t ivas_total_brate /* i : IVAS total bitrate */ ); Loading
lib_com/options.h +9 −2 Original line number Diff line number Diff line Loading @@ -143,7 +143,8 @@ #define BITSTREAM_INDICES_MEMORY /* Don't count memory for bitstream Indice at the encoder - it is a temporary solution for development only */ #endif #define DISABLE_ADAP_RES_COD_TMP /* temporary fix for IVAS-403, disables adaptive residual coding */ /*#define DISABLE_ADAP_RES_COD_TMP*/ /* temporary fix for IVAS-403, disables adaptive residual coding */ #define ADAP_OPT /* Issue 69: optimized the adap algorithm */ /*#define FIX_I4_OL_PITCH*/ /* fix open-loop pitch used for EVS core switching */ #ifdef IND_LIST_DYN Loading @@ -151,8 +152,14 @@ #endif #define FIX_383_CLEAN_UP /* Dlb : Clean up of unused functions */ // #define FIX_532_ISM_MD_INACTIVE /* VA: issue 532: improve MD coding in ISM inactive frames */ #define FIX_532_ISM_MD_INACTIVE /* VA: issue 532: improve MD coding in ISM inactive frames */ #define FIX_547_NAN_IGF_DEC /* FhG: issue 547: fix possible nan in IGF decoder */ #define FIX_529_BWD_ISSUE /* VA: issue 529: fix Bandwidth Detector not working reliably for Music and Generic Audio */ #define FIX_557_CRASH_IN_ISM_DTX /* VA issue 557: fix crash in 1ISM 48 kbps DTX */ #define IGF_TUNING_96 /* FhG: Issue 546: slight tuning of IGF config used in 96 kbps stereo, 128 kbps SBA and others */ #define FIX_522_ISM_FIRST_SID /* VA: fix ISM decoder crash if first received frame is an SID */ #define FIX_470_MASA_JBM_EXT /* Nokia: Issue 470, fix MASA EXT output with JBM */ Loading
lib_com/prot.h +13 −10 Original line number Diff line number Diff line Loading @@ -3891,6 +3891,9 @@ void bw_detect( const float signal_in[], /* i : input signal */ float *spectrum, /* i : MDCT spectrum */ const float *enerBuffer, /* i : energy buffer */ #ifdef FIX_529_BWD_ISSUE const IVAS_FORMAT ivas_format, /* i : IVAS format */ #endif const int16_t mct_on /* i : flag MCT mode */ ); Loading