Loading .gitlab-ci.yml +15 −13 Original line number Diff line number Diff line Loading @@ -995,8 +995,9 @@ check-first-frame-is-sid: - exit_code_foa=0 # run all modes and cut bitstream to start with an SID. Use stereo output to limit runtime, test is only about decoding - ism_md_cmd="--ism_metadata_files /usr/local/ltv/ltvISM1.csv /usr/local/ltv/ltvISM2.csv /usr/local/ltv/ltvISM3.csv /usr/local/ltv/ltvISM4.csv" - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep -vE "FOA|HOA" ) - scripts/runIvasCodec.py -z console -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 200 -U 0:20 --oc stereo || exit_code_no_sba=$? - scripts/runIvasCodec.py -z console -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 200 -U 0:20 --oc stereo $ism_md_cmd || exit_code_no_sba=$? - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep -E "HOA") - scripts/runIvasCodec.py -z console -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 100 -U 70:80 --oc stereo || exit_code_hoa=$? - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep "FOA") Loading Loading @@ -1567,6 +1568,17 @@ sanitizer-test-osba-hoa3-ism2: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py HOA3-ISM2 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-omasa-ism4: extends: .sanitizer-test-schedule-B rules: - if: $SANITIZER_SCHEDULE_B when: delayed start_in: 97.5 hours timeout: 10 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py MASA-ISM4 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS ### --- sanitizer schedule C --- Loading Loading @@ -1603,22 +1615,12 @@ sanitizer-test-omasa-ism3: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py MASA-ISM3 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-omasa-ism4: extends: .sanitizer-test-schedule-C rules: - if: $SANITIZER_SCHEDULE_C when: delayed start_in: 30 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py MASA-ISM4 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-osba-hoa3-ism3: extends: .sanitizer-test-schedule-C rules: - if: $SANITIZER_SCHEDULE_C when: delayed start_in: 40 hours start_in: 30 hours timeout: 7.5 hours script: - *update-ltv-repo Loading @@ -1629,7 +1631,7 @@ sanitizer-test-osba-hoa3-ism4: rules: - if: $SANITIZER_SCHEDULE_C when: delayed start_in: 47.5 hours start_in: 37.5 hours timeout: 7.5 hours script: - *update-ltv-repo Loading ci/run_scheduled_sanitizer_test.py +2 −2 Original line number Diff line number Diff line Loading @@ -110,8 +110,8 @@ def get_modes(in_format: str) -> list: def get_md_file_command(in_format: str) -> list: cmd = list() if in_format.startswith("ISM"): cmd.append("--metadata_files") if "ISM" in in_format: cmd.append("--ism_metadata_files") md_filename = "/usr/local/ltv/ltvISM{}.csv" n = int(in_format[-1]) cmd.extend([md_filename.format(i) for i in range(1, n + 1)]) Loading ci/smoke_test.sh +1 −1 Original line number Diff line number Diff line Loading @@ -53,7 +53,7 @@ fi cfg=./scripts/config/ci_linux.json dly_profile=./scripts/dly_error_profiles/dly_error_profile_10.dat ism_md_cmd="--metadata_files /usr/local/ltv/ltvISM1.csv /usr/local/ltv/ltvISM2.csv /usr/local/ltv/ltvISM3.csv /usr/local/ltv/ltvISM4.csv" ism_md_cmd="--ism_metadata_files /usr/local/ltv/ltvISM1.csv /usr/local/ltv/ltvISM2.csv /usr/local/ltv/ltvISM3.csv /usr/local/ltv/ltvISM4.csv" duration_arg="-U 1:2" verbosity_cmd="-z console" Loading lib_com/options.h +2 −0 Original line number Diff line number Diff line Loading @@ -173,6 +173,8 @@ #define NONBE_FIX_878_RS_FEC_STEREO_CNG /* Eri: Frame loss and Unified Stereo CNG may cause false BER detection which results in corrupt bitstream decoding */ #define NONBE_FIX_904_JBM_SBA_RS_FOA /* FhG: issue #904: fix JBM SBA RS to FOA decoding */ #define NONBE_FIX_898_ISM_BRATE_CRASH /* VA: issue 898: fix decoder crash in ISM bitrate switching with DTX and binaural output */ #define NONBE_FIX_862_UBSAN_SPAR_DEC_BR_SW_PLC /* DLB: issue 862 : UBSAN: out-of-bound error in SPAR for OSBA bitrate switching with PLC*/ #define NONBE_FIX_DISCRETE_ISM_NOISE_SEED_HANDLING /* FhG: fix handling of common and differing noise seeds in SCEs for ISM DTX */ /* ##################### End NON-BE switches ########################### */ Loading lib_dec/fd_cng_dec.c +12 −0 Original line number Diff line number Diff line Loading @@ -1104,10 +1104,17 @@ void generate_comfort_noise_dec( c2 = (float) sqrt( 1 - hFdCngCom->coherence ); seed2 = &( hFdCngCom->seed2 ); #ifdef NONBE_FIX_DISCRETE_ISM_NOISE_SEED_HANDLING if ( st->element_mode == IVAS_CPE_MDCT && st->idchan == 1 ) { seed2 = &( hFdCngCom->seed3 ); } #else if ( ( st->element_mode == IVAS_CPE_MDCT && st->idchan == 1 ) || ( st->element_mode == IVAS_SCE && st->cng_ism_flag ) ) { seed2 = &( hFdCngCom->seed3 ); } #endif /* Generate Gaussian random noise in real and imaginary parts of the FFT bins Amplitudes are adjusted to the estimated noise level cngNoiseLevel in each bin */ Loading Loading @@ -1354,11 +1361,16 @@ void generate_comfort_noise_dec_hf( float scale = CLDFB_SCALING / hFdCngCom->scalingFactor; int16_t *seed2 = &( hFdCngCom->seed ); float tmp1, tmp2, c1 = 0.f, c2 = 0.f; if ( cng_coh_flag ) { #ifdef NONBE_FIX_DISCRETE_ISM_NOISE_SEED_HANDLING seed2 = &( hFdCngCom->seed2 ); #else seed2 = &( hFdCngCom->seed3 ); #endif c1 = (float) sqrt( hFdCngCom->coherence ); c2 = (float) sqrt( 1 - hFdCngCom->coherence ); Loading Loading
.gitlab-ci.yml +15 −13 Original line number Diff line number Diff line Loading @@ -995,8 +995,9 @@ check-first-frame-is-sid: - exit_code_foa=0 # run all modes and cut bitstream to start with an SID. Use stereo output to limit runtime, test is only about decoding - ism_md_cmd="--ism_metadata_files /usr/local/ltv/ltvISM1.csv /usr/local/ltv/ltvISM2.csv /usr/local/ltv/ltvISM3.csv /usr/local/ltv/ltvISM4.csv" - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep -vE "FOA|HOA" ) - scripts/runIvasCodec.py -z console -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 200 -U 0:20 --oc stereo || exit_code_no_sba=$? - scripts/runIvasCodec.py -z console -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 200 -U 0:20 --oc stereo $ism_md_cmd || exit_code_no_sba=$? - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep -E "HOA") - scripts/runIvasCodec.py -z console -p scripts/config/ci_linux_sidstart_test.json -m $modes -s --bs_length 100 -U 70:80 --oc stereo || exit_code_hoa=$? - modes=$(scripts/runIvasCodec.py -l | grep dtx | grep "FOA") Loading Loading @@ -1567,6 +1568,17 @@ sanitizer-test-osba-hoa3-ism2: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py HOA3-ISM2 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-omasa-ism4: extends: .sanitizer-test-schedule-B rules: - if: $SANITIZER_SCHEDULE_B when: delayed start_in: 97.5 hours timeout: 10 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py MASA-ISM4 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS ### --- sanitizer schedule C --- Loading Loading @@ -1603,22 +1615,12 @@ sanitizer-test-omasa-ism3: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py MASA-ISM3 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-omasa-ism4: extends: .sanitizer-test-schedule-C rules: - if: $SANITIZER_SCHEDULE_C when: delayed start_in: 30 hours script: - *update-ltv-repo - python3 ci/run_scheduled_sanitizer_test.py MASA-ISM4 $OUT_FORMATS_CHANNEL_BASED $OUT_FORMATS_SCENE_BASED $OUT_FORMATS_BINAURAL --tests $SANITIZER_TESTS sanitizer-test-osba-hoa3-ism3: extends: .sanitizer-test-schedule-C rules: - if: $SANITIZER_SCHEDULE_C when: delayed start_in: 40 hours start_in: 30 hours timeout: 7.5 hours script: - *update-ltv-repo Loading @@ -1629,7 +1631,7 @@ sanitizer-test-osba-hoa3-ism4: rules: - if: $SANITIZER_SCHEDULE_C when: delayed start_in: 47.5 hours start_in: 37.5 hours timeout: 7.5 hours script: - *update-ltv-repo Loading
ci/run_scheduled_sanitizer_test.py +2 −2 Original line number Diff line number Diff line Loading @@ -110,8 +110,8 @@ def get_modes(in_format: str) -> list: def get_md_file_command(in_format: str) -> list: cmd = list() if in_format.startswith("ISM"): cmd.append("--metadata_files") if "ISM" in in_format: cmd.append("--ism_metadata_files") md_filename = "/usr/local/ltv/ltvISM{}.csv" n = int(in_format[-1]) cmd.extend([md_filename.format(i) for i in range(1, n + 1)]) Loading
ci/smoke_test.sh +1 −1 Original line number Diff line number Diff line Loading @@ -53,7 +53,7 @@ fi cfg=./scripts/config/ci_linux.json dly_profile=./scripts/dly_error_profiles/dly_error_profile_10.dat ism_md_cmd="--metadata_files /usr/local/ltv/ltvISM1.csv /usr/local/ltv/ltvISM2.csv /usr/local/ltv/ltvISM3.csv /usr/local/ltv/ltvISM4.csv" ism_md_cmd="--ism_metadata_files /usr/local/ltv/ltvISM1.csv /usr/local/ltv/ltvISM2.csv /usr/local/ltv/ltvISM3.csv /usr/local/ltv/ltvISM4.csv" duration_arg="-U 1:2" verbosity_cmd="-z console" Loading
lib_com/options.h +2 −0 Original line number Diff line number Diff line Loading @@ -173,6 +173,8 @@ #define NONBE_FIX_878_RS_FEC_STEREO_CNG /* Eri: Frame loss and Unified Stereo CNG may cause false BER detection which results in corrupt bitstream decoding */ #define NONBE_FIX_904_JBM_SBA_RS_FOA /* FhG: issue #904: fix JBM SBA RS to FOA decoding */ #define NONBE_FIX_898_ISM_BRATE_CRASH /* VA: issue 898: fix decoder crash in ISM bitrate switching with DTX and binaural output */ #define NONBE_FIX_862_UBSAN_SPAR_DEC_BR_SW_PLC /* DLB: issue 862 : UBSAN: out-of-bound error in SPAR for OSBA bitrate switching with PLC*/ #define NONBE_FIX_DISCRETE_ISM_NOISE_SEED_HANDLING /* FhG: fix handling of common and differing noise seeds in SCEs for ISM DTX */ /* ##################### End NON-BE switches ########################### */ Loading
lib_dec/fd_cng_dec.c +12 −0 Original line number Diff line number Diff line Loading @@ -1104,10 +1104,17 @@ void generate_comfort_noise_dec( c2 = (float) sqrt( 1 - hFdCngCom->coherence ); seed2 = &( hFdCngCom->seed2 ); #ifdef NONBE_FIX_DISCRETE_ISM_NOISE_SEED_HANDLING if ( st->element_mode == IVAS_CPE_MDCT && st->idchan == 1 ) { seed2 = &( hFdCngCom->seed3 ); } #else if ( ( st->element_mode == IVAS_CPE_MDCT && st->idchan == 1 ) || ( st->element_mode == IVAS_SCE && st->cng_ism_flag ) ) { seed2 = &( hFdCngCom->seed3 ); } #endif /* Generate Gaussian random noise in real and imaginary parts of the FFT bins Amplitudes are adjusted to the estimated noise level cngNoiseLevel in each bin */ Loading Loading @@ -1354,11 +1361,16 @@ void generate_comfort_noise_dec_hf( float scale = CLDFB_SCALING / hFdCngCom->scalingFactor; int16_t *seed2 = &( hFdCngCom->seed ); float tmp1, tmp2, c1 = 0.f, c2 = 0.f; if ( cng_coh_flag ) { #ifdef NONBE_FIX_DISCRETE_ISM_NOISE_SEED_HANDLING seed2 = &( hFdCngCom->seed2 ); #else seed2 = &( hFdCngCom->seed3 ); #endif c1 = (float) sqrt( hFdCngCom->coherence ); c2 = (float) sqrt( 1 - hFdCngCom->coherence ); Loading