Loading .gitlab-ci.yml +1 −0 Original line number Diff line number Diff line Loading @@ -321,6 +321,7 @@ codec-smoke-test: - *print-common-info - bash ci/smoke_test.sh ### analyze for failures - cat out/logs/stv1MASA2TC48c_MASA_2TC_1DIR_b96_fb_cbr.enc.txt - if cat smoke_test_output.txt | grep -c "failed"; then echo "Smoke test without PLC failed"; exit 1; fi - if cat smoke_test_output_plc.txt | grep -c "failed"; then echo "Smoke test with PLC failed"; exit 1; fi - if cat smoke_test_output_jbm_noEXT.txt | grep -c "failed"; then echo "Smoke test JBM part failed"; exit 1; fi Loading ci/run_scheduled_sanitizer_test.py +18 −3 Original line number Diff line number Diff line Loading @@ -63,8 +63,7 @@ def main(args): assert all([t in SUPPORTED_TESTS for t in tests]) modes = get_modes(in_format) returncode = run_check(modes, out_formats, tests, run_fec=run_fec) returncode = run_check(in_format, out_formats, tests, run_fec=run_fec) collect_for_sanitizer_test(CONSOLE_OUT_FILE) Loading Loading @@ -92,7 +91,22 @@ def get_modes(in_format: str) -> list: return mode_list def run_check(modes: list, out_formats: list, tests: list, run_fec: bool = True): def get_md_file_command(in_format: str) -> list: cmd = list() if in_format.startswith("ISM"): cmd.append("--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)]) return cmd def run_check(in_format: str, out_formats: list, tests: list, run_fec: bool = True): modes = get_modes(in_format) md_file_command = get_md_file_command(in_format) ### always run encoder and decoder with no frameloss cmd_no_fec = [ Loading @@ -107,6 +121,7 @@ def run_check(modes: list, out_formats: list, tests: list, run_fec: bool = True) *modes, "--oc", *out_formats, *md_file_command, ] print( Loading ci/smoke_test.sh +6 −1 Original line number Diff line number Diff line Loading @@ -55,6 +55,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/testv/stvISM1.csv /usr/local/testv/stvISM2.csv /usr/local/testv/stvISM3.csv /usr/local/testv/stvISM4.csv" if [ $BUILD -eq 1 ];then # Enable memory macros to find unbalanced memory allocations/deallocations Loading @@ -74,7 +75,11 @@ if [ $BUILD -eq 1 ];then fi # run all modes vanilla-fashion ./scripts/runIvasCodec.py -p $cfg -U 1 $WORKERS | tee smoke_test_output.txt # treat ISM modes separately because passing the metadata files to MASA modes causes crashes ism_modes=$(./scripts/runIvasCodec.py -l | grep ISM) non_ism_modes=$(./scripts/runIvasCodec.py -l | grep -v ISM) ./scripts/runIvasCodec.py -m $non_ism_modes -p $cfg -U 1 $WORKERS | tee smoke_test_output.txt ./scripts/runIvasCodec.py -m $ism_modes -p $cfg -U 1 $WORKERS $ism_md_cmd | tee smoke_test_output.txt # run the decoding again, but with 15% frame loss ./scripts/runIvasCodec.py -p $cfg -U 1 $WORKERS -D="-fec 15" --decoder_only | tee smoke_test_output_plc.txt Loading lib_com/ivas_cnst.h +14 −0 Original line number Diff line number Diff line Loading @@ -829,6 +829,14 @@ enum fea_names #define SNS_LOW_BR_MODE -1 #define SNS_NPTS 16 /* Number of downsampled SNS parameters */ #ifdef SNS_MSVQ #define SNS_STEREO_MODE_LR 0 #define SNS_STEREO_MODE_MS 1 #define SNS_STEREO_MODE_OFFSET_INDICES 4 #define SNS_MSVQ_NSTAGES_TCX20 4 #define SNS_MSVQ_NSTAGES_TCX10 3 #define SNS_MSVQ_NSTAGES_SIDE 2 #endif #define MDCT_ST_PLC_FADEOUT_MIN_NOISE_NRG 0.001f #define MDCT_ST_PLC_FADEOUT_MAX_CONC_FRAME 2 * FRAMES_PER_SEC Loading Loading @@ -1311,6 +1319,9 @@ typedef enum #define PARAM_MC_BAND_TO_MDCT_BAND_RATIO 16 /* Ratio of resolution of CLDFB Bands to MDCT Bands */ #define PARAM_MC_SLOT_ENC_NS 2500000L #define PARAM_MC_MDFT_NO_SLOTS 8 #ifdef PARAMMC_SHORT_ENC_MDFT #define PARAM_MC_CLDFB_TO_MDFT_FAC 2 #endif /*----------------------------------------------------------------------------------* * LFE Coding Constants Loading Loading @@ -1521,6 +1532,9 @@ typedef enum #define IVAS_320_PT_LEN 320 #define IVAS_240_PT_LEN 240 #define IVAS_160_PT_LEN 160 #ifdef PARAMMC_SHORT_ENC_MDFT #define IVAS_120_PT_LEN 120 #endif #define IVAS_80_PT_LEN 80 #define IVAS_40_PT_LEN 40 Loading lib_com/ivas_fb_mixer.c +4 −0 Original line number Diff line number Diff line Loading @@ -156,7 +156,11 @@ ivas_error ivas_fb_set_cfg( { pFb_cfg->fb_latency = NS2SA( sampling_rate, DELAY_FB_1_NS ); pFb_cfg->fade_len = NS2SA( sampling_rate, DELAY_FB_1_NS ); #ifdef PARAMMC_SHORT_ENC_MDFT pFb_cfg->prior_input_length = NS2SA( sampling_rate, DELAY_DIRAC_ENC_CMP_NS ) + NS2SA( sampling_rate, PARAM_MC_SLOT_ENC_NS ); #else pFb_cfg->prior_input_length = NS2SA( sampling_rate, DELAY_DIRAC_ENC_CMP_NS ) + 3 * NS2SA( sampling_rate, PARAM_MC_SLOT_ENC_NS ); #endif } *pFb_cfg_out = pFb_cfg; Loading Loading
.gitlab-ci.yml +1 −0 Original line number Diff line number Diff line Loading @@ -321,6 +321,7 @@ codec-smoke-test: - *print-common-info - bash ci/smoke_test.sh ### analyze for failures - cat out/logs/stv1MASA2TC48c_MASA_2TC_1DIR_b96_fb_cbr.enc.txt - if cat smoke_test_output.txt | grep -c "failed"; then echo "Smoke test without PLC failed"; exit 1; fi - if cat smoke_test_output_plc.txt | grep -c "failed"; then echo "Smoke test with PLC failed"; exit 1; fi - if cat smoke_test_output_jbm_noEXT.txt | grep -c "failed"; then echo "Smoke test JBM part failed"; exit 1; fi Loading
ci/run_scheduled_sanitizer_test.py +18 −3 Original line number Diff line number Diff line Loading @@ -63,8 +63,7 @@ def main(args): assert all([t in SUPPORTED_TESTS for t in tests]) modes = get_modes(in_format) returncode = run_check(modes, out_formats, tests, run_fec=run_fec) returncode = run_check(in_format, out_formats, tests, run_fec=run_fec) collect_for_sanitizer_test(CONSOLE_OUT_FILE) Loading Loading @@ -92,7 +91,22 @@ def get_modes(in_format: str) -> list: return mode_list def run_check(modes: list, out_formats: list, tests: list, run_fec: bool = True): def get_md_file_command(in_format: str) -> list: cmd = list() if in_format.startswith("ISM"): cmd.append("--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)]) return cmd def run_check(in_format: str, out_formats: list, tests: list, run_fec: bool = True): modes = get_modes(in_format) md_file_command = get_md_file_command(in_format) ### always run encoder and decoder with no frameloss cmd_no_fec = [ Loading @@ -107,6 +121,7 @@ def run_check(modes: list, out_formats: list, tests: list, run_fec: bool = True) *modes, "--oc", *out_formats, *md_file_command, ] print( Loading
ci/smoke_test.sh +6 −1 Original line number Diff line number Diff line Loading @@ -55,6 +55,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/testv/stvISM1.csv /usr/local/testv/stvISM2.csv /usr/local/testv/stvISM3.csv /usr/local/testv/stvISM4.csv" if [ $BUILD -eq 1 ];then # Enable memory macros to find unbalanced memory allocations/deallocations Loading @@ -74,7 +75,11 @@ if [ $BUILD -eq 1 ];then fi # run all modes vanilla-fashion ./scripts/runIvasCodec.py -p $cfg -U 1 $WORKERS | tee smoke_test_output.txt # treat ISM modes separately because passing the metadata files to MASA modes causes crashes ism_modes=$(./scripts/runIvasCodec.py -l | grep ISM) non_ism_modes=$(./scripts/runIvasCodec.py -l | grep -v ISM) ./scripts/runIvasCodec.py -m $non_ism_modes -p $cfg -U 1 $WORKERS | tee smoke_test_output.txt ./scripts/runIvasCodec.py -m $ism_modes -p $cfg -U 1 $WORKERS $ism_md_cmd | tee smoke_test_output.txt # run the decoding again, but with 15% frame loss ./scripts/runIvasCodec.py -p $cfg -U 1 $WORKERS -D="-fec 15" --decoder_only | tee smoke_test_output_plc.txt Loading
lib_com/ivas_cnst.h +14 −0 Original line number Diff line number Diff line Loading @@ -829,6 +829,14 @@ enum fea_names #define SNS_LOW_BR_MODE -1 #define SNS_NPTS 16 /* Number of downsampled SNS parameters */ #ifdef SNS_MSVQ #define SNS_STEREO_MODE_LR 0 #define SNS_STEREO_MODE_MS 1 #define SNS_STEREO_MODE_OFFSET_INDICES 4 #define SNS_MSVQ_NSTAGES_TCX20 4 #define SNS_MSVQ_NSTAGES_TCX10 3 #define SNS_MSVQ_NSTAGES_SIDE 2 #endif #define MDCT_ST_PLC_FADEOUT_MIN_NOISE_NRG 0.001f #define MDCT_ST_PLC_FADEOUT_MAX_CONC_FRAME 2 * FRAMES_PER_SEC Loading Loading @@ -1311,6 +1319,9 @@ typedef enum #define PARAM_MC_BAND_TO_MDCT_BAND_RATIO 16 /* Ratio of resolution of CLDFB Bands to MDCT Bands */ #define PARAM_MC_SLOT_ENC_NS 2500000L #define PARAM_MC_MDFT_NO_SLOTS 8 #ifdef PARAMMC_SHORT_ENC_MDFT #define PARAM_MC_CLDFB_TO_MDFT_FAC 2 #endif /*----------------------------------------------------------------------------------* * LFE Coding Constants Loading Loading @@ -1521,6 +1532,9 @@ typedef enum #define IVAS_320_PT_LEN 320 #define IVAS_240_PT_LEN 240 #define IVAS_160_PT_LEN 160 #ifdef PARAMMC_SHORT_ENC_MDFT #define IVAS_120_PT_LEN 120 #endif #define IVAS_80_PT_LEN 80 #define IVAS_40_PT_LEN 40 Loading
lib_com/ivas_fb_mixer.c +4 −0 Original line number Diff line number Diff line Loading @@ -156,7 +156,11 @@ ivas_error ivas_fb_set_cfg( { pFb_cfg->fb_latency = NS2SA( sampling_rate, DELAY_FB_1_NS ); pFb_cfg->fade_len = NS2SA( sampling_rate, DELAY_FB_1_NS ); #ifdef PARAMMC_SHORT_ENC_MDFT pFb_cfg->prior_input_length = NS2SA( sampling_rate, DELAY_DIRAC_ENC_CMP_NS ) + NS2SA( sampling_rate, PARAM_MC_SLOT_ENC_NS ); #else pFb_cfg->prior_input_length = NS2SA( sampling_rate, DELAY_DIRAC_ENC_CMP_NS ) + 3 * NS2SA( sampling_rate, PARAM_MC_SLOT_ENC_NS ); #endif } *pFb_cfg_out = pFb_cfg; Loading