From aa0a1268f4124838633b680e3430a2e52a015352 Mon Sep 17 00:00:00 2001 From: Archit Tamarapu Date: Wed, 20 Dec 2023 18:28:04 +0100 Subject: [PATCH 01/12] [fix] temporary fix for BINAURAL_ROOM_REVERB, perform renderer configuration identically to BINAURAL_ROOM_IR --- lib_com/options.h | 1 + lib_dec/ivas_output_config.c | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/lib_com/options.h b/lib_com/options.h index 8b9acd92dd..496fca4722 100755 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -162,6 +162,7 @@ #define NONBE_FIX_856_TCX_LTP_SYNTH_FILTER /* FhG: issue 856: correct filtering length for tcx-ltp synth filtering*/ #define NONBE_FIX_943_RECONFIG_IGF_AFTER_SETTING_BW /* FhG: issue 943: fix crash in BW switchin from WB in MDCT-Stereo core encoder */ +#define NONBE_FIX_935_SBA_REVERB /* FhG: issue 935: fix MSAN error for SBA related to BINAURAL_ROOM_REVERB */ /* ##################### End NON-BE switches ########################### */ diff --git a/lib_dec/ivas_output_config.c b/lib_dec/ivas_output_config.c index 34bfbb57fa..0f42b760eb 100644 --- a/lib_dec/ivas_output_config.c +++ b/lib_dec/ivas_output_config.c @@ -160,7 +160,11 @@ void ivas_renderer_select( { *internal_config = IVAS_AUDIO_CONFIG_HOA3; +#ifdef NONBE_FIX_935_SBA_REVERB + if ( output_config == IVAS_AUDIO_CONFIG_BINAURAL +#else if ( output_config == IVAS_AUDIO_CONFIG_BINAURAL || output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB +#endif #ifdef SPLIT_REND_WITH_HEAD_ROT || output_config == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED || output_config == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM #endif -- GitLab From 5094da4b7b77712bf57245e1c0b152193a18a222 Mon Sep 17 00:00:00 2001 From: Archit Tamarapu Date: Wed, 20 Dec 2023 18:32:14 +0100 Subject: [PATCH 02/12] clang-format --- lib_dec/ivas_output_config.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib_dec/ivas_output_config.c b/lib_dec/ivas_output_config.c index 0f42b760eb..8003e38121 100644 --- a/lib_dec/ivas_output_config.c +++ b/lib_dec/ivas_output_config.c @@ -160,8 +160,8 @@ void ivas_renderer_select( { *internal_config = IVAS_AUDIO_CONFIG_HOA3; -#ifdef NONBE_FIX_935_SBA_REVERB - if ( output_config == IVAS_AUDIO_CONFIG_BINAURAL +#ifdef NONBE_FIX_935_SBA_REVERB + if ( output_config == IVAS_AUDIO_CONFIG_BINAURAL #else if ( output_config == IVAS_AUDIO_CONFIG_BINAURAL || output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB #endif -- GitLab From a2677412999ca77f4b98a52a5da9ff5469a696e2 Mon Sep 17 00:00:00 2001 From: Serdar Buyuksarac Date: Tue, 9 Jan 2024 16:06:52 +0100 Subject: [PATCH 03/12] Add test cases for Parambin and FastConv --- scripts/config/self_test.prm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/scripts/config/self_test.prm b/scripts/config/self_test.prm index 0be62cefe6..0e185e3b7e 100644 --- a/scripts/config/self_test.prm +++ b/scripts/config/self_test.prm @@ -1637,3 +1637,35 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_10pct.g // OSBA planar 3OA 4ISM at 512 kbps, 48 kHz in, 48 kHz out, BINAURAL out ../IVAS_cod -ism_sba 4 -3 testv/stvISM1.csv testv/stvISM2.csv testv/stvISM3.csv testv/stvISM4.csv 512000 48 testv/stvOSBA_4ISM_3OA48c.wav bit ../IVAS_dec BINAURAL 48 bit testv/stvOSBA_4ISM_p3OA48c.wav_BINAURAL_512000_48-48.tst + +// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL_ROOM_REVERB out, Headrotation +../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit +../IVAS_dec -t testv/headrot.csv BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoomReverb_Headrot.tst + +// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL_ROOM_REVERB out, Config renderer, Headrotation +../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit +../IVAS_dec -t testv/headrot.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoomReverb_Config_renderer_Headrot.tst + +// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL_ROOM_REVERB out (Model from file), Headrotation +../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit +../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_32kHz.binnew -t testv/headrot.csv BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoomReverb_Headrot_BinauralFile.tst + +// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL_ROOM_REVERB out (Model from file), Config renderer, Headrotation +../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit +../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_32kHz.binnew -t testv/headrot.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoomReverb_Config_renderer_Headrot_BinauralFile.tst + +// SBA at 128 kbps, 32kHZ in, 32kHz out, BINAURAL_ROOM_REVERB out Headrotation +../IVAS_cod -sba 3 128000 32 testv/stv3OA32c.wav bit +../IVAS_dec -t testv/headrot_case00_3000_q.csv BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_12800032-32_BinauralRoomReverb_Headrot.tst + +// SBA at 128 kbps, 32kHZ in, 32kHz out, BINAURAL_ROOM_REVERB out, Config renderer, Headrotation +../IVAS_cod -sba 3 128000 32 testv/stv3OA32c.wav bit +../IVAS_dec -t testv/headrot_case00_3000_q.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_12800032-32_BinauralRoomReverb_Config_renderer_Headrot.tst + +// SBA at 128 kbps, 32kHZ in, 32kHz out, BINAURAL_ROOM_REVERB out (Model from file), Headrotation +../IVAS_cod -sba 3 128000 32 testv/stv3OA32c.wav bit +../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_32kHz.binnew -t testv/headrot_case00_3000_q.csv BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_12800032-32_BinauralRoomReverb_Headrot_BinauralFile.tst + +// SBA at 128 kbps, 32kHZ in, 32kHz out, BINAURAL_ROOM_REVERB out (Model from file), Config renderer, Headrotation +../IVAS_cod -sba 3 128000 32 testv/stv3OA32c.wav bit +../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_32kHz.binnew -t testv/headrot_case00_3000_q.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_12800032-32_BinauralRoomReverb_Config_renderer_Headrot_BinauralFile.tst -- GitLab From a0ebc815f9d4a2b9d70784a91bc0b3bc20f160f7 Mon Sep 17 00:00:00 2001 From: Archit Tamarapu Date: Mon, 29 Jan 2024 14:26:29 +0100 Subject: [PATCH 04/12] [fix] infinite loop caused by incorrect rendering granularity setting --- lib_dec/ivas_spar_decoder.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib_dec/ivas_spar_decoder.c b/lib_dec/ivas_spar_decoder.c index a7e105b36c..9769c6e569 100644 --- a/lib_dec/ivas_spar_decoder.c +++ b/lib_dec/ivas_spar_decoder.c @@ -249,7 +249,13 @@ ivas_error ivas_spar_dec_open( nchan_to_allocate = 2 * BINAURAL_CHANNELS; } - if ( st_ivas->ivas_format == SBA_ISM_FORMAT && ( st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL || st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) && st_ivas->ism_mode == ISM_SBA_MODE_DISC ) + if ( st_ivas->ivas_format == SBA_ISM_FORMAT && +#ifdef NONBE_FIX_935_SBA_REVERB + st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL && +#else + ( st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL || st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) && +#endif + st_ivas->ism_mode == ISM_SBA_MODE_DISC ) { /* get correct granularity in case of binaural rendering of the discrete objects with the td obj renderer */ granularity = (int16_t) ( st_ivas->hDecoderConfig->output_Fs / ( FRAMES_PER_SEC * MAX_PARAM_SPATIAL_SUBFRAMES ) ); -- GitLab From e7aca5a24b20791b96e011d6958f1b7cd2fe6392 Mon Sep 17 00:00:00 2001 From: Archit Tamarapu Date: Mon, 29 Jan 2024 15:21:00 +0100 Subject: [PATCH 05/12] [fix] parallel condition in ivas_sba_dec_reconfigure() causing ratesw failures --- lib_dec/ivas_sba_dec.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib_dec/ivas_sba_dec.c b/lib_dec/ivas_sba_dec.c index 6ddcb37778..82e95467fd 100644 --- a/lib_dec/ivas_sba_dec.c +++ b/lib_dec/ivas_sba_dec.c @@ -194,7 +194,11 @@ ivas_error ivas_sba_dec_reconfigure( } else { +#ifdef NONBE_FIX_935_SBA_REVERB + if ( st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL +#else if ( st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL || st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB +#endif #ifdef SPLIT_REND_WITH_HEAD_ROT || st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED || st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM #endif -- GitLab From d909f586b36c21e3cee2de7e91cbb43641c09e77 Mon Sep 17 00:00:00 2001 From: knj Date: Tue, 30 Jan 2024 10:10:15 +0100 Subject: [PATCH 06/12] add/modify testcases and correct tags --- scripts/config/self_test.prm | 172 ++++++++++++++++++++--------------- 1 file changed, 98 insertions(+), 74 deletions(-) diff --git a/scripts/config/self_test.prm b/scripts/config/self_test.prm index b7f347088f..a25409063b 100644 --- a/scripts/config/self_test.prm +++ b/scripts/config/self_test.prm @@ -295,7 +295,7 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g192 bit_error ../IVAS_dec BINAURAL 48 bit_error testv/stv48n.wav_1ISM_13200_48-48_DTX_FER5_BINAURAL.tst -// 1 ISM with metadata at 16.4 kbps, 48 kHz in, 48 kHz out, BINAURAL ROOM out +// 1 ISM with metadata at 16.4 kbps, 48 kHz in, 48 kHz out, BINAURAL ROOM IR out ../IVAS_cod -ism 1 testv/stvISM1.csv 16400 48 testv/stv1ISM48s.wav bit ../IVAS_dec BINAURAL_ROOM_IR 48 bit testv/stv1ISM48s.wav_16400_48-48_binaural_room.tst @@ -303,7 +303,7 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 ../IVAS_cod -dtx -ism 1 testv/stvISM1.csv 32000 32 testv/stv32n.wav bit ../IVAS_dec MONO 32 bit testv/stv32n.wav_1ISM_32000_32-32_DTX_MONO.tst -// 1 ISM with metadata at 48 kbps, 48 kHz in, 48 kHz out, BINAURAL ROOM out, head rotation, random FER at 5% +// 1 ISM with metadata at 48 kbps, 48 kHz in, 48 kHz out, BINAURAL ROOM IR out, head rotation, random FER at 5% ../IVAS_cod -ism 1 testv/stvISM1.csv 48000 48 testv/stv1ISM48s.wav bit eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g192 bit_error ../IVAS_dec -t testv/headrot_case00_3000_q.csv BINAURAL_ROOM_IR 48 bit_error testv/stv1ISM48s.wav_64000_48-48_binaural_room_HR.tst @@ -313,7 +313,7 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g192 bit_error ../IVAS_dec -t testv/headrot_case00_3000_q.csv BINAURAL 48 bit_error testv/stv1ISM48s.wav_64000_48-48_FER5_binaural_HR.tst -// 1 ISM with metadata at 48 kbps, 48 kHz in, 48 kHz out, BINAURAL ROOM out, head rotation, external orientation, random FER at 5% +// 1 ISM with metadata at 48 kbps, 48 kHz in, 48 kHz out, BINAURAL ROOM IR out, head rotation, external orientation, random FER at 5% ../IVAS_cod -ism 1 testv/stvISM1.csv 48000 48 testv/stv1ISM48s.wav bit eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g192 bit_error ../IVAS_dec -t testv/headrot_case00_3000_q.csv -exof testv/headrot_case00_3000_q_combinedRotationTest.csv BINAURAL_ROOM_IR 48 bit_error testv/stv1ISM48s.wav_64000_48-48_FER5_binaural_room_HR_EXOF.tst @@ -358,7 +358,7 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g192 bit_error ../IVAS_dec EXT 48 bit_error testv/stv2ISM48s.wav_48000_48-48_EXT_FER5.tst -// 2 ISM with metadata at 64 kbps, 48 kHz in, 48 kHz out, BINAURAL ROOM out +// 2 ISM with metadata at 64 kbps, 48 kHz in, 48 kHz out, BINAURAL ROOM IR out ../IVAS_cod -ism 2 testv/stvISM3.csv testv/stvISM4.csv 64000 48 testv/stv2ISM48s.wav bit ../IVAS_dec BINAURAL_ROOM_IR 48 bit testv/stv2ISM48s.wav_64000_48-48_binaural_room.tst @@ -451,17 +451,17 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 ../IVAS_cod -ism 4 testv/stvISM1.csv testv/stvISM2.csv testv/stvISM3.csv testv/stvISM4.csv 32000 48 testv/stv4ISM48s.wav bit ../IVAS_dec -t testv/headrot_case03_3000_q.csv -exof testv/headrot_case00_3000_q_combinedRotationTest.csv BINAURAL 48 bit testv/stv4ISM48s.wav_32000_48-48_binaural_file_TDHR_EXOF.tst -// 4 ISM with metadata at 32 kbps, 48 kHz in, 48 kHz out, BINAURAL ROOM out, random FER at 5% +// 4 ISM with metadata at 32 kbps, 48 kHz in, 48 kHz out, BINAURAL ROOM IR out, random FER at 5% ../IVAS_cod -ism 4 testv/stvISM1.csv testv/stvISM2.csv testv/stvISM3.csv testv/stvISM4.csv 32000 48 testv/stv4ISM48s.wav bit eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g192 bit_error ../IVAS_dec BINAURAL_ROOM_IR 48 bit_error testv/stv4ISM48s.wav_32000_48-48_binaural_room_FER5.tst -// 4 ISM with metadata at 48 kbps, 48 kHz in, 48 kHz out, DTX on, BINAURAL ROOM out, random FER at 5% +// 4 ISM with metadata at 48 kbps, 48 kHz in, 48 kHz out, DTX on, BINAURAL ROOM IR out, random FER at 5% ../IVAS_cod -dtx -ism 4 testv/stvISM1.csv testv/stvISM2.csv testv/stvISM3.csv testv/stvISM4.csv 48000 48 testv/stv4ISM48n.wav bit eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g192 bit_error ../IVAS_dec BINAURAL_ROOM_IR 48 bit_error testv/stv4ISM48n.wav_48000_48-48_DTX_TD_binaural_room_FER5.tst -// 4 ISM with metadata at 64 kbps, 48 kHz in, 48 kHz out, BINAURAL ROOM out +// 4 ISM with metadata at 64 kbps, 48 kHz in, 48 kHz out, BINAURAL ROOM IR out ../IVAS_cod -ism 4 testv/stvISM1.csv testv/stvISM2.csv testv/stvISM3.csv testv/stvISM4.csv 64000 48 testv/stv4ISM48s.wav bit ../IVAS_dec BINAURAL_ROOM_IR 48 bit testv/stv4ISM48s.wav_64000_48-48_binaural_room.tst @@ -624,43 +624,43 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 ../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit ../IVAS_dec STEREO 32 bit testv/stv3OA32c.wav_SBA_48000_32-32_stereo.tst -// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM out +// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM IR out ../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit ../IVAS_dec BINAURAL_ROOM_IR 32 bit testv/stv3OA32c.wav_SBA_48000_32-32_BinauralRoom.tst -// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM out +// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM IR out ../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit ../IVAS_dec BINAURAL_ROOM_IR 32 bit testv/stv3OA32c.wav_SBA_48000_32-32_BinauralRoom_Subframe.tst -// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM out, Headrotation +// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM IR out, Headrotation ../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit ../IVAS_dec -t testv/headrot.csv BINAURAL_ROOM_IR 32 bit testv/stv3OA32c.wav_SBA_48000_32-32_BinauralRoom_Headrot.tst -// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM out, Headrotation, external orientation +// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM IR out, Headrotation, external orientation ../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit ../IVAS_dec -t testv/headrot.csv -exof testv/headrot_case00_3000_q_combinedRotationTest.csv BINAURAL_ROOM_IR 32 bit testv/stv3OA32c.wav_SBA_48000_32-32_BinauralRoom_Headrot_EXOF.tst -// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM out, Headrotation, Orientation tracking +// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM IR out, Headrotation, Orientation tracking ../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit ../IVAS_dec -t testv/headrot.csv -otr avg BINAURAL_ROOM_IR 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoom_Headrot_OtrAvg.tst -// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM out, Headrotation, Orientation tracking, external orientation +// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM IR out, Headrotation, Orientation tracking, external orientation ../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit ../IVAS_dec -t testv/headrot.csv -exof testv/headrot_case00_3000_q_combinedRotationTest.csv -otr avg BINAURAL_ROOM_IR 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoom_Headrot_EXOF_OtrAvg.tst -// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM out, Headrotation, reference vector tracking +// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM IR out, Headrotation, reference vector tracking ../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit ../IVAS_dec -t ../scripts/trajectories/full-circle-4s.csv -rvf ../scripts/trajectories/full-circle-4s-Vector3.csv -otr ref_vec BINAURAL_ROOM_IR 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoom_Headrot_OtrRefPos.tst -// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM out, Headrotation, reference vector tracking, external orientation +// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM IR out, Headrotation, reference vector tracking, external orientation ../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit ../IVAS_dec -t ../scripts/trajectories/full-circle-4s.csv -exof testv/headrot_case00_3000_q_combinedRotationTest.csv -rvf ../scripts/trajectories/full-circle-4s-Vector3.csv -otr ref_vec BINAURAL_ROOM_IR 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoom_Headrot_EXOF_OtrRefPos.tst -// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM out, Headrotation, reference vector tracking in level mode +// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM IR out, Headrotation, reference vector tracking in level mode ../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit ../IVAS_dec -t ../scripts/trajectories/full-circle-with-up-and-down-4s.csv -rvf ../scripts/trajectories/full-circle-with-up-and-down-4s-Vector3.csv -otr ref_vec_lev BINAURAL_ROOM_IR 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoom_Headrot_OtrRefPosLev.tst -// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM out, Headrotation, reference vector tracking in level mode, external orientation +// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL ROOM IR out, Headrotation, reference vector tracking in level mode, external orientation ../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit ../IVAS_dec -t ../scripts/trajectories/full-circle-with-up-and-down-4s.csv -exof testv/headrot_case00_3000_q_combinedRotationTest.csv -rvf ../scripts/trajectories/full-circle-with-up-and-down-4s-Vector3.csv -otr ref_vec_lev BINAURAL_ROOM_IR 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoom_Headrot_EXOF_OtrRefPosLev.tst @@ -731,19 +731,19 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 ../IVAS_cod -sba 1 96000 48 testv/stvFOA48c.wav bit ../IVAS_dec FOA 48 bit testv/stvFOA48c.wav_SBA_96000_48-48_FOA.tst -// SBA at 128 kbps, 32kHz in, 32kHz out, BINAURAL ROOM out, Headrotation +// SBA at 128 kbps, 32kHz in, 32kHz out, BINAURAL ROOM IR out, Headrotation ../IVAS_cod -sba 3 128000 32 testv/stv3OA32c.wav bit ../IVAS_dec -t testv/headrot_case00_3000_q.csv BINAURAL_ROOM_IR 32 bit testv/stv3OA32c.wav_SBA_128000_32-32_Binaural_room_Headrot.tst -// SBA at 128 kbps, 32kHz in, 32kHz out, BINAURAL ROOM out, Headrotation, external orientation +// SBA at 128 kbps, 32kHz in, 32kHz out, BINAURAL ROOM IR out, Headrotation, external orientation ../IVAS_cod -sba 3 128000 32 testv/stv3OA32c.wav bit ../IVAS_dec -t testv/headrot_case00_3000_q.csv -exof testv/headrot_case00_3000_q_combinedRotationTest.csv BINAURAL_ROOM_IR 32 bit testv/stv3OA32c.wav_SBA_128000_32-32_Binaural_room_Headrot_EXOF.tst -// SBA at 128 kbps, 32kHz in, 32kHz out, BINAURAL ROOM out, Headrotation, Orientation tracking +// SBA at 128 kbps, 32kHz in, 32kHz out, BINAURAL ROOM IR out, Headrotation, Orientation tracking ../IVAS_cod -sba 3 128000 32 testv/stv3OA32c.wav bit ../IVAS_dec -t testv/headrot.csv -otr avg BINAURAL_ROOM_IR 32 bit testv/stv3OA32c.pcm_SBA_128000_32-32_Binaural_room_Headrot_OtrAvg.tst -// SBA at 128 kbps, 32kHz in, 32kHz out, BINAURAL ROOM out, Headrotation, Orientation tracking, external orientation +// SBA at 128 kbps, 32kHz in, 32kHz out, BINAURAL ROOM IR out, Headrotation, Orientation tracking, external orientation ../IVAS_cod -sba 3 128000 32 testv/stv3OA32c.wav bit ../IVAS_dec -t testv/headrot.csv -exof testv/headrot_case00_3000_q_combinedRotationTest.csv -otr avg BINAURAL_ROOM_IR 32 bit testv/stv3OA32c.pcm_SBA_128000_32-32_Binaural_room_Headrot_EXOF_OtrAvg.tst @@ -781,7 +781,7 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 ../IVAS_cod -sba 1 256000 32 testv/stvFOA32c.wav bit ../IVAS_dec BINAURAL_ROOM_IR 32 bit testv/stvFOA32c.wav_SBA_256000_32-32_BINAURAL_ROOM.tst -// SBA at 256 kbps, 32kHz in, 32kHz out, BINAURAL ROOM out, Headrotation, external orientation +// SBA at 256 kbps, 32kHz in, 32kHz out, BINAURAL ROOM IR out, Headrotation, external orientation ../IVAS_cod -sba 1 256000 32 testv/stvFOA32c.wav bit ../IVAS_dec -t testv/headrot.csv -exof testv/headrot_case00_3000_q_combinedRotationTest.csv BINAURAL_ROOM_IR 32 bit testv/stvFOA32c.wav_SBA_256000_32-32_BinauralRoom_Headrot_EXOF.tst @@ -850,6 +850,38 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 ../IVAS_cod -sba 1 -max_band fb ../scripts/switchPaths/sw_13k2_512k.bin 48 testv/stvFOA48c.wav bit ../IVAS_dec FOA 48 bit testv/stvFOA48c.wav_sw_48-48_FOA.tst +// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL_ROOM_REVERB out, Headrotation +../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit +../IVAS_dec -t testv/headrot.csv BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoomReverb_Headrot.tst + +// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL_ROOM_REVERB out, Config renderer, Headrotation +../IVAS_cod -sba -2 48000 32 testv/stv2OA32c.wav bit +../IVAS_dec -t testv/headrot.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stv2OA32c.pcm_SBA_48000_32-32_BinauralRoomReverb_Config_renderer_Headrot.tst + +// SBA at 48 kbps, 32kHz in, 48kHz out, BINAURAL_ROOM_REVERB out (Model from file), Headrotation +../IVAS_cod -sba 1 48000 32 testv/stvFOA32c.wav bit +../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_48kHz.bin -t testv/headrot.csv BINAURAL_ROOM_REVERB 48 bit testv/stvFOA32c.pcm_SBA_48000_32-48_BinauralRoomReverb_Headrot_BinauralFile.tst + +// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL_ROOM_REVERB out (Model from file), Config renderer, Headrotation +../IVAS_cod -sba -3 48000 32 testv/stv3OA32c.wav bit +../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_32kHz.bin -t testv/headrot.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoomReverb_Config_renderer_Headrot_BinauralFile.tst + +// SBA at 128 kbps, 32kHZ in, 32kHz out, BINAURAL_ROOM_REVERB out Headrotation +../IVAS_cod -sba 3 128000 32 testv/stv3OA32c.wav bit +../IVAS_dec -t testv/headrot_case00_3000_q.csv BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_12800032-32_BinauralRoomReverb_Headrot.tst + +// SBA at 128 kbps, 32kHZ in, 32kHz out, BINAURAL_ROOM_REVERB out, Config renderer, Headrotation +../IVAS_cod -sba 3 128000 32 testv/stv3OA32c.wav bit +../IVAS_dec -t testv/headrot_case00_3000_q.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_12800032-32_BinauralRoomReverb_Config_renderer_Headrot.tst + +// SBA at 128 kbps, 32kHZ in, 16kHz out, BINAURAL_ROOM_REVERB out (Model from file), Headrotation +../IVAS_cod -sba 2 128000 32 testv/stv2OA32c.wav bit +../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_16kHz.bin -t testv/headrot_case00_3000_q.csv BINAURAL_ROOM_REVERB 16 bit testv/stv2OA32c.pcm_SBA_12800032-16_BinauralRoomReverb_Headrot_BinauralFile.tst + +// SBA at 128 kbps, 48kHZ in, 32kHz out, BINAURAL_ROOM_REVERB out (Model from file), Config renderer, Headrotation +../IVAS_cod -sba -1 128000 48 testv/stvFOA48c.wav bit +../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_32kHz.bin -t testv/headrot_case00_3000_q.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stvFOA48c.pcm_SBA_12800032-32_BinauralRoomReverb_Config_renderer_Headrot_BinauralFile.tst + // MASA 1dir 1TC at 13.2 kbps, 48kHz in, 48kHz out, BINAURAL out ../IVAS_cod -masa 1 testv/stv1MASA1TC48c.met 13200 48 testv/stv1MASA1TC48c.wav bit @@ -860,19 +892,19 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g192 bit_error ../IVAS_dec HOA3 48 bit_error testv/stv1MASA1TC48c.wav_16400_48-48_HOA3_FER5.tst -// MASA 1dir 1TC at 24.4 kbps, 48kHz in, 48kHz out, BINAURAL ROOM out +// MASA 1dir 1TC at 24.4 kbps, 48kHz in, 48kHz out, BINAURAL ROOM IR out ../IVAS_cod -masa 1 testv/stv1MASA1TC48c.met 24400 48 testv/stv1MASA1TC48c.wav bit ../IVAS_dec BINAURAL_ROOM_IR 48 bit testv/stv1MASA1TC48c.wav_24400_48-48_BinauralRoom.tst -// MASA 1dir 1TC at 24.4 kbps, 48kHz in, 48kHz out, BINAURAL ROOM out +// MASA 1dir 1TC at 24.4 kbps, 48kHz in, 48kHz out, BINAURAL ROOM IR out ../IVAS_cod -masa 1 testv/stv1MASA1TC48c.met 24400 48 testv/stv1MASA1TC48c.wav bit ../IVAS_dec BINAURAL_ROOM_IR 48 bit testv/stv1MASA1TC48c.wav_24400_48-48_BinauralRoom_Subframe.tst -// MASA 1dir 1TC at 24.4 kbps, 48kHz in, 48kHz out, BINAURAL ROOM out, Headrotation +// MASA 1dir 1TC at 24.4 kbps, 48kHz in, 48kHz out, BINAURAL ROOM IR out, Headrotation ../IVAS_cod -masa 1 testv/stv1MASA1TC48c.met 24400 48 testv/stv1MASA1TC48c.wav bit ../IVAS_dec -t testv/headrot.csv BINAURAL_ROOM_IR 48 bit testv/stv1MASA1TC48c.wav_24400_48-48_BinauralRoom_Headrot.tst -// MASA 1dir 1TC at 24.4 kbps, 48kHz in, 48kHz out, BINAURAL ROOM out, Headrotation, external orientation +// MASA 1dir 1TC at 24.4 kbps, 48kHz in, 48kHz out, BINAURAL ROOM IR out, Headrotation, external orientation ../IVAS_cod -masa 1 testv/stv1MASA1TC48c.met 24400 48 testv/stv1MASA1TC48c.wav bit ../IVAS_dec -t testv/headrot.csv -exof testv/headrot_case00_3000_q_combinedRotationTest.csv BINAURAL_ROOM_IR 48 bit testv/stv1MASA1TC48c.wav_24400_48-48_BinauralRoom_Headrot_EXOF.tst @@ -919,23 +951,23 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 ../IVAS_cod -masa 2 testv/stv1MASA2TC48c.met 24400 48 testv/stv1MASA2TC48c.wav bit ../IVAS_dec STEREO 48 bit testv/stv1MASA2TC48c.wav_24400_48-48_STEREO.tst -// MASA 1dir 2TC at 32 kbps, 48kHz in, 48kHz out, BINAURAL ROOM out +// MASA 1dir 2TC at 32 kbps, 48kHz in, 48kHz out, BINAURAL ROOM IR out ../IVAS_cod -masa 2 testv/stv1MASA2TC48c.met 32000 48 testv/stv1MASA2TC48c.wav bit ../IVAS_dec BINAURAL_ROOM_IR 48 bit testv/stv1MASA2TC48c.wav_32000_48-48_BinauralRoom.tst -// MASA 1dir 2TC at 32 kbps, 48kHz in, 48kHz out, BINAURAL ROOM out, Headrotation +// MASA 1dir 2TC at 32 kbps, 48kHz in, 48kHz out, BINAURAL ROOM IR out, Headrotation ../IVAS_cod -masa 2 testv/stv1MASA2TC48c.met 32000 48 testv/stv1MASA2TC48c.wav bit ../IVAS_dec -t testv/headrot.csv BINAURAL_ROOM_IR 48 bit testv/stv1MASA2TC48c.wav_32000_48-48_BinauralRoom_Headrot.tst -// MASA 1dir 2TC at 32 kbps, 48kHz in, 48kHz out, BINAURAL ROOM out, Headrotation, external orientation +// MASA 1dir 2TC at 32 kbps, 48kHz in, 48kHz out, BINAURAL ROOM IR out, Headrotation, external orientation ../IVAS_cod -masa 2 testv/stv1MASA2TC48c.met 32000 48 testv/stv1MASA2TC48c.wav bit ../IVAS_dec -t testv/headrot.csv -exof testv/headrot_case00_3000_q_combinedRotationTest.csv BINAURAL_ROOM_IR 48 bit testv/stv1MASA2TC48c.wav_32000_48-48_BinauralRoom_Headrot_EXOF.tst -// MASA 1dir 2TC at 32 kbps, 48kHz in, 48kHz out, BINAURAL ROOM out, Headrotation, Orientation tracking +// MASA 1dir 2TC at 32 kbps, 48kHz in, 48kHz out, BINAURAL ROOM IR out, Headrotation, Orientation tracking ../IVAS_cod -masa 2 testv/stv1MASA2TC48c.met 32000 48 testv/stv1MASA2TC48c.wav bit ../IVAS_dec -t testv/headrot.csv -otr avg BINAURAL_ROOM_IR 48 bit testv/stv_IVASMASA_1dir2TC.pcm_32000_48-48_BinauralRoom_Headrot_OtrAvg.tst -// MASA 1dir 2TC at 32 kbps, 48kHz in, 48kHz out, BINAURAL ROOM out, Headrotation, Orientation tracking, external orientation +// MASA 1dir 2TC at 32 kbps, 48kHz in, 48kHz out, BINAURAL ROOM IR out, Headrotation, Orientation tracking, external orientation ../IVAS_cod -masa 2 testv/stv1MASA2TC48c.met 32000 48 testv/stv1MASA2TC48c.wav bit ../IVAS_dec -t testv/headrot.csv -exof testv/headrot_case00_3000_q_combinedRotationTest.csv -otr avg BINAURAL_ROOM_IR 48 bit testv/stv_IVASMASA_1dir2TC.pcm_32000_48-48_BinauralRoom_Headrot_EXOF_OtrAvg.tst @@ -1096,11 +1128,11 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 ../IVAS_cod -mc 5_1 64000 48 testv/stv51MC48c.wav bit ../IVAS_dec -t testv/headrot.csv -exof testv/headrot_case00_3000_q_combinedRotationTest.csv BINAURAL 48 bit testv/stv51MC48c.wav_MC51_64000_48-48_Binaural_Headrot_EXOF.tst -// Multi-channel 5_1 at 64 kbps, 48kHz in, 48kHz out, BINAURAL ROOM out, Headrotation +// Multi-channel 5_1 at 64 kbps, 48kHz in, 48kHz out, BINAURAL ROOM IR out, Headrotation ../IVAS_cod -mc 5_1 64000 48 testv/stv51MC48c.wav bit ../IVAS_dec -t testv/headrot_case00_3000_q.csv BINAURAL_ROOM_IR 48 bit testv/stv51MC48c.wav_MC51_64000_48-48_Binaural_room_Headrot.tst -// Multi-channel 5_1 at 64 kbps, 48kHz in, 48kHz out, BINAURAL ROOM out, Headrotation, external orientation +// Multi-channel 5_1 at 64 kbps, 48kHz in, 48kHz out, BINAURAL ROOM IR out, Headrotation, external orientation ../IVAS_cod -mc 5_1 64000 48 testv/stv51MC48c.wav bit ../IVAS_dec -t testv/headrot_case00_3000_q.csv -exof testv/headrot_case00_3000_q_combinedRotationTest.csv BINAURAL_ROOM_IR 48 bit testv/stv51MC48c.wav_MC51_64000_48-48_Binaural_room_Headrot_EXOF.tst @@ -1126,7 +1158,7 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g192 bit_error ../IVAS_dec STEREO 48 bit_error testv/stv51MC48c.wav_MC51_256000_48-48_stereo_FER5.tst -// Multi-channel 5_1 at 192 kbps, 48kHz in, 48kHz out, BINAURAL ROOM out +// Multi-channel 5_1 at 192 kbps, 48kHz in, 48kHz out, BINAURAL ROOM IR out ../IVAS_cod -mc 5_1 192000 48 testv/stv51MC48c.wav bit ../IVAS_dec BINAURAL_ROOM_IR 48 bit testv/stv51MC48c.wav_MC51_192000_48-48_BinauralRoom.tst @@ -1134,19 +1166,19 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 ../IVAS_cod -mc 5_1 256000 48 testv/stv51MC48c.wav bit ../IVAS_dec MONO 48 bit testv/stv51MC48c.wav_MC51_256000_48-48_mono.tst -// Multi-channel 5_1 at 256 kbps, 48kHz in, 48kHz out, BINAURAL ROOM out, head rotation +// Multi-channel 5_1 at 256 kbps, 48kHz in, 48kHz out, BINAURAL ROOM IR out, head rotation ../IVAS_cod -mc 5_1 256000 48 testv/stv51MC48c.wav bit ../IVAS_dec -t testv/headrot_case00_3000_q.csv BINAURAL_ROOM_IR 48 bit testv/stv51MC48c.wav_MC51_256000_48-48_BinauralRoom_Headrot.tst -// Multi-channel 5_1 at 256 kbps, 48kHz in, 48kHz out, BINAURAL ROOM out, head rotation, external orientation +// Multi-channel 5_1 at 256 kbps, 48kHz in, 48kHz out, BINAURAL ROOM IR out, head rotation, external orientation ../IVAS_cod -mc 5_1 256000 48 testv/stv51MC48c.wav bit ../IVAS_dec -t testv/headrot_case00_3000_q.csv -exof testv/headrot_case00_3000_q_combinedRotationTest.csv BINAURAL_ROOM_IR 48 bit testv/stv51MC48c.wav_MC51_256000_48-48_BinauralRoom_Headrot_EXOF.tst -// Multi-channel 5_1 at 256 kbps, 48kHz in, 48kHz out, BINAURAL ROOM out, head rotation, Orientation tracking +// Multi-channel 5_1 at 256 kbps, 48kHz in, 48kHz out, BINAURAL ROOM IR out, head rotation, Orientation tracking ../IVAS_cod -mc 5_1 256000 48 testv/stv51MC48c.wav bit ../IVAS_dec -t testv/headrot.csv -otr avg BINAURAL_ROOM_IR 48 bit testv/stv51MC48c.pcm_MC51_256000_48-48_BinauralRoom_Headrot_OtrAvg.tst -// Multi-channel 5_1 at 256 kbps, 48kHz in, 48kHz out, BINAURAL ROOM out, head rotation, Orientation tracking, external orientation +// Multi-channel 5_1 at 256 kbps, 48kHz in, 48kHz out, BINAURAL ROOM IR out, head rotation, Orientation tracking, external orientation ../IVAS_cod -mc 5_1 256000 48 testv/stv51MC48c.wav bit ../IVAS_dec -t testv/headrot.csv -exof testv/headrot_case00_3000_q_combinedRotationTest.csv -otr avg BINAURAL_ROOM_IR 48 bit testv/stv51MC48c.pcm_MC51_256000_48-48_BinauralRoom_EXOF_OtrAvg.tst @@ -1568,6 +1600,10 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 ../IVAS_cod -ism_sba 1 1 testv/stvISM1.csv 32000 48 testv/stvOSBA_1ISM_FOA48c.wav bit ../IVAS_dec BINAURAL 48 bit testv/stvOSBA_1ISM_FOA48c.wav_BINAURAL_32000_48-48.tst +// OSBA FOA 1ISM at 48 kbps, 16kHz in, 16kHz out, BINAURAL_ROOM_REVERB (Model from file) out +../IVAS_cod -ism_sba 1 1 testv/stvISM1.csv 32000 16 testv/stvOSBA_1ISM_FOA16c.wav bit +../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_16kHz.bin BINAURAL_ROOM_REVERB 16 bit testv/stvOSBA_1ISM_FOA16c.wav_BINAURAL_ROOM_REVERB_32000_16-16.tst + // OSBA FOA 2ISM at 64 kbps, 48kHz in, 48kHz out, HOA3 out ../IVAS_cod -ism_sba 2 1 testv/stvISM1.csv testv/stvISM2.csv 64000 48 testv/stvOSBA_2ISM_FOA48c.wav bit ../IVAS_dec HOA3 48 bit testv/stvOSBA_2ISM_FOA48c.wav_HOA3_64000_48-48.tst @@ -1580,9 +1616,13 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 ../IVAS_cod -ism_sba 4 1 testv/stvISM1.csv testv/stvISM2.csv testv/stvISM3.csv testv/stvISM4.csv 256000 48 testv/stvOSBA_4ISM_FOA48c.wav bit ../IVAS_dec EXT 48 bit testv/stvOSBA_4ISM_FOA48c.wav_EXT_256000_48-48.tst -// OSBA FOA 4ISM at 512 kbps, 48kHz in, 48kHz out, BINAURAL out +// OSBA FOA 4ISM at 512 kbps, 48kHz in, 48kHz out, BINAURAL (Model from file) out ../IVAS_cod -ism_sba 4 1 testv/stvISM1.csv testv/stvISM2.csv testv/stvISM3.csv testv/stvISM4.csv 512000 48 testv/stvOSBA_4ISM_FOA48c.wav bit -../IVAS_dec BINAURAL 48 bit testv/stvOSBA_4ISM_FOA48c.wav_BINAURAL_512000_48-48.tst +../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_48kHz.bin BINAURAL 48 bit testv/stvOSBA_4ISM_FOA48c.wav_BINAURAL_512000_48-48.tst + +// OSBA FOA 4ISM at 384 kbps, 32kHz in, 32kHz out, BINAURAL ROOM IR (Model from file) out +../IVAS_cod -ism_sba 4 1 testv/stvISM1.csv testv/stvISM2.csv testv/stvISM3.csv testv/stvISM4.csv 384000 32 testv/stvOSBA_4ISM_FOA32c.wav bit +../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_32kHz.bin BINAURAL_ROOM_IR 32 bit testv/stvOSBA_4ISM_FOA32c.wav_BINAURAL_384000_32-32.tst // OSBA 2OA 1ISM at 24.4 kbps, 48kHz in, 48kHz out, FOA out ../IVAS_cod -ism_sba 1 2 testv/stvISM1.csv 24400 48 testv/stvOSBA_1ISM_2OA48c.wav bit @@ -1592,6 +1632,10 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 ../IVAS_cod -ism_sba 2 2 testv/stvISM1.csv testv/stvISM2.csv 48000 48 testv/stvOSBA_2ISM_2OA48c.wav bit ../IVAS_dec MONO 48 bit testv/stvOSBA_2ISM_2OA48c.wav_MONO_48000_48-48.tst +// OSBA 2OA 2ISM at 64 kbps, 32kHz in, 16kHz out, BINAURAL ROOM REVERB out +../IVAS_cod -ism_sba 2 2 testv/stvISM1.csv testv/stvISM2.csv 48000 32 testv/stvOSBA_2ISM_2OA32c.wav bit +../IVAS_dec BINAURAL_ROOM_REVERB 16 bit testv/stvOSBA_2ISM_2OA32c.wav_MONO_64000_32-16.tst + // OSBA 2OA 3ISM at 96 kbps, 48kHz in, 48kHz out, STEREO out ../IVAS_cod -ism_sba 3 2 testv/stvISM1.csv testv/stvISM2.csv testv/stvISM3.csv 96000 48 testv/stvOSBA_3ISM_2OA48c.wav bit ../IVAS_dec STEREO 48 bit testv/stvOSBA_3ISM_2OA48c.wav_STEREO_96000_48-48.tst @@ -1612,11 +1656,15 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 ../IVAS_cod -ism_sba 3 3 testv/stvISM1.csv testv/stvISM2.csv testv/stvISM3.csv 128000 48 testv/stvOSBA_3ISM_3OA48c.wav bit ../IVAS_dec BINAURAL 48 bit testv/stvOSBA_3ISM_3OA48c.wav_BINAURAL_128000_48-48.tst +// OSBA 3OA 3ISM at 160 kbps, 16kHz in, 48kHz out, BINAURAL ROOM IR out +../IVAS_cod -ism_sba 3 3 testv/stvISM1.csv testv/stvISM2.csv testv/stvISM3.csv 160000 16 testv/stvOSBA_3ISM_3OA16c.wav bit +../IVAS_dec BINAURAL_ROOM_IR 48 bit testv/stvOSBA_3ISM_3OA416c.wav_BINAURAL_ROOM_IR_160000_16-48.tst + // OSBA 3OA 4ISM at 16.4 kbps, 48kHz in, 48kHz out, 5_1 out ../IVAS_cod -ism_sba 4 3 testv/stvISM1.csv testv/stvISM2.csv testv/stvISM3.csv testv/stvISM4.csv 16400 48 testv/stvOSBA_4ISM_3OA48c.wav bit ../IVAS_dec 5_1 48 bit testv/stvOSBA_4ISM_3OA48c.wav_5_1_16400_48-48.tst -// OSBA 3OA 4ISM bitrate switching 13.2 to 512, 48kHz in, 48kHz out, BIN out +// OSBA 3OA 4ISM bitrate switching 13.2 to 512, 48kHz in, 48kHz out, BINAURAL out ../IVAS_cod -ism_sba 4 3 testv/stvISM1.csv testv/stvISM2.csv testv/stvISM3.csv testv/stvISM4.csv ../scripts/switchPaths/sw_13k2_512k.bin 48 testv/stvOSBA_4ISM_3OA48c.wav bit ../IVAS_dec BINAURAL 48 bit testv/stvOSBA_4ISM_3OA48c.wav_BINAURAL_sw_13k2_512k_48-48.tst @@ -1646,6 +1694,10 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_10pct.g192 bit_error ../IVAS_dec STEREO 32 bit_error testv/stvOSBA_3ISM_2OA48c.wav_STEREO_sw_48-32_FER10.tst +// OSBA 3ISM 3OA at bitrate switching 13.2 to 512 kbps, 48kHz in, 32kHz out, BINAURAL ROOM REVERB out +../IVAS_cod -ism_sba 3 3 testv/stvISM1.csv testv/stvISM2.csv testv/stvISM3.csv ../scripts/switchPaths/sw_13k2_512k.bin 48 testv/stvOSBA_3ISM_3OA48c.wav bit +../IVAS_dec BINAURAL_ROOM_REVERB 32 bit testv/stvOSBA_3ISM_2OA48c.wav_BINAURAL_ROOM_REVERB_sw_48-32.tst + // OSBA planar FOA 1ISM at 256 kbps, 48 kHz in, 48 kHz out, BINAURAL out ../IVAS_cod -ism_sba 1 -1 testv/stvISM1.csv 256000 48 testv/stvOSBA_1ISM_FOA48c.wav bit ../IVAS_dec BINAURAL 48 bit testv/stvOSBA_1ISM_pFOA48c.wav_BINAURAL_256000_48-48.tst @@ -1654,38 +1706,10 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_10pct.g ../IVAS_cod -ism_sba 2 -1 testv/stvISM1.csv testv/stvISM2.csv 512000 48 testv/stvOSBA_2ISM_FOA48c.wav bit ../IVAS_dec BINAURAL 48 bit testv/stvOSBA_2ISM_pFOA48c.wav_BINAURAL_512000_48-48.tst -// OSBA planar 3OA 4ISM at 512 kbps, 48 kHz in, 48 kHz out, BINAURAL out +// OSBA planar 3OA 4ISM at 512 kbps, 48 kHz in, 48 kHz out, BINAURAL ROOM IR out ../IVAS_cod -ism_sba 4 -3 testv/stvISM1.csv testv/stvISM2.csv testv/stvISM3.csv testv/stvISM4.csv 512000 48 testv/stvOSBA_4ISM_3OA48c.wav bit -../IVAS_dec BINAURAL 48 bit testv/stvOSBA_4ISM_p3OA48c.wav_BINAURAL_512000_48-48.tst +../IVAS_dec BINAURAL_ROOM_IR 48 bit testv/stvOSBA_4ISM_p3OA48c.wav_BINAURAL_ROOM_IR_512000_48-48.tst -// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL_ROOM_REVERB out, Headrotation -../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit -../IVAS_dec -t testv/headrot.csv BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoomReverb_Headrot.tst - -// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL_ROOM_REVERB out, Config renderer, Headrotation -../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit -../IVAS_dec -t testv/headrot.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoomReverb_Config_renderer_Headrot.tst - -// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL_ROOM_REVERB out (Model from file), Headrotation -../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit -../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_32kHz.binnew -t testv/headrot.csv BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoomReverb_Headrot_BinauralFile.tst - -// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL_ROOM_REVERB out (Model from file), Config renderer, Headrotation -../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit -../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_32kHz.binnew -t testv/headrot.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoomReverb_Config_renderer_Headrot_BinauralFile.tst - -// SBA at 128 kbps, 32kHZ in, 32kHz out, BINAURAL_ROOM_REVERB out Headrotation -../IVAS_cod -sba 3 128000 32 testv/stv3OA32c.wav bit -../IVAS_dec -t testv/headrot_case00_3000_q.csv BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_12800032-32_BinauralRoomReverb_Headrot.tst - -// SBA at 128 kbps, 32kHZ in, 32kHz out, BINAURAL_ROOM_REVERB out, Config renderer, Headrotation -../IVAS_cod -sba 3 128000 32 testv/stv3OA32c.wav bit -../IVAS_dec -t testv/headrot_case00_3000_q.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_12800032-32_BinauralRoomReverb_Config_renderer_Headrot.tst - -// SBA at 128 kbps, 32kHZ in, 32kHz out, BINAURAL_ROOM_REVERB out (Model from file), Headrotation -../IVAS_cod -sba 3 128000 32 testv/stv3OA32c.wav bit -../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_32kHz.binnew -t testv/headrot_case00_3000_q.csv BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_12800032-32_BinauralRoomReverb_Headrot_BinauralFile.tst - -// SBA at 128 kbps, 32kHZ in, 32kHz out, BINAURAL_ROOM_REVERB out (Model from file), Config renderer, Headrotation -../IVAS_cod -sba 3 128000 32 testv/stv3OA32c.wav bit -../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_32kHz.binnew -t testv/headrot_case00_3000_q.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_12800032-32_BinauralRoomReverb_Config_renderer_Headrot_BinauralFile.tst +// OSBA planar 2OA 4ISM at 512 kbps, 48 kHz in, 48 kHz out, BINAURAL ROOM REVERB (Model from file) out +../IVAS_cod -ism_sba 4 -2 testv/stvISM1.csv testv/stvISM2.csv testv/stvISM3.csv testv/stvISM4.csv 512000 48 testv/stvOSBA_4ISM_2OA48c.wav bit +../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_48kHz.bin BINAURAL_ROOM_REVERB 48 bit testv/stvOSBA_4ISM_p3OA48c.wav_BINAURAL_ROOM_REVERB_512000_48-48.tst -- GitLab From fdecadfa104d5113aff04dcb6c7dd7863caa19eb Mon Sep 17 00:00:00 2001 From: knj Date: Tue, 30 Jan 2024 11:14:55 +0100 Subject: [PATCH 07/12] also create 32 and 16 kHz OSBA test vectors --- scripts/prepare_combined_format_inputs.py | 126 ++++++++++++---------- scripts/testv/stv2OA16c.wav | 3 + scripts/testv/stv3OA16c.wav | 3 + 3 files changed, 74 insertions(+), 58 deletions(-) create mode 100644 scripts/testv/stv2OA16c.wav create mode 100644 scripts/testv/stv3OA16c.wav diff --git a/scripts/prepare_combined_format_inputs.py b/scripts/prepare_combined_format_inputs.py index f51da80db9..97665e07c2 100755 --- a/scripts/prepare_combined_format_inputs.py +++ b/scripts/prepare_combined_format_inputs.py @@ -38,6 +38,7 @@ import numpy as np from pyaudio3dtools import audiofile, audioarray +FS = [48, 32, 16] # scripts/testv/ path input_dir = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'testv') @@ -52,24 +53,24 @@ print(f'Writing new files into {output_dir}') force_overwrite = False # overwrite existing files # define MASA test item files -masa_alts = ({'masa_meta_file': 'stv2MASA2TC48c.met', - 'masa_audio_file': 'stv2MASA2TC48c.wav', +masa_alts = ({'masa_meta_file': 'stv2MASA2TC{}c.met', + 'masa_audio_file': 'stv2MASA2TC{}c.wav', 'masa_tag': '2MASA2TC'}, - {'masa_meta_file': 'stv2MASA1TC48c.met', - 'masa_audio_file': 'stv2MASA1TC48c.wav', + {'masa_meta_file': 'stv2MASA1TC{}c.met', + 'masa_audio_file': 'stv2MASA1TC{}c.wav', 'masa_tag': '2MASA1TC'}, - {'masa_meta_file': 'stv1MASA2TC48c.met', - 'masa_audio_file': 'stv1MASA2TC48c.wav', + {'masa_meta_file': 'stv1MASA2TC{}c.met', + 'masa_audio_file': 'stv1MASA2TC{}c.wav', 'masa_tag': '1MASA2TC'}, - {'masa_meta_file': 'stv1MASA1TC48c.met', - 'masa_audio_file': 'stv1MASA1TC48c.wav', + {'masa_meta_file': 'stv1MASA1TC{}c.met', + 'masa_audio_file': 'stv1MASA1TC{}c.wav', 'masa_tag': '1MASA1TC'}) -sba_alts = ({'sba_audio_file': 'stvFOA48c.wav', +sba_alts = ({'sba_audio_file': 'stvFOA{}c.wav', 'sba_tag': 'FOA'}, - {'sba_audio_file': 'stv2OA48c.wav', + {'sba_audio_file': 'stv2OA{}c.wav', 'sba_tag': '2OA'}, - {'sba_audio_file': 'stv3OA48c.wav', + {'sba_audio_file': 'stv3OA{}c.wav', 'sba_tag': '3OA'}) # files containing 1-4 ISMs as channels @@ -78,53 +79,62 @@ ism_files = ('stv1ISM48s.wav', 'stv2ISM48s.wav', 'stv3ISM48s.wav', 'stv4ISM48s.w ism_meta_files = ('stvISM1.csv', 'stvISM2.csv', 'stvISM3.csv', 'stvISM4.csv') wrote_files = [] -for enum_idx, (ism_audio_file, ism_meta_file) in enumerate(zip(ism_files, ism_meta_files)): - n_isms = enum_idx + 1 - ism_audio, ism_fs = audiofile.readfile(filename=os.path.join(input_dir, ism_audio_file)) - - for masa_item in masa_alts: - masa_tag = masa_item['masa_tag'] - - omasa_file_body = f'stvOMASA_{n_isms}ISM_{masa_tag}48c' - omasa_file = os.path.join(output_dir, f'{omasa_file_body}.wav') - - if not os.path.exists(omasa_file) or force_overwrite: - audiofile.combinefiles(in_filenames=[os.path.join(input_dir, ism_audio_file), - os.path.join(input_dir, masa_item['masa_audio_file'])], - out_file=omasa_file) - wrote_files.append(omasa_file) - - # copy ISM metadata files under names matching the combined file - for ism_idx in range(n_isms): - ism_file_name = os.path.join(output_dir, f'{omasa_file_body}_ISM{ism_idx+1}{os.path.splitext(ism_meta_file)[1]}') - if not os.path.exists(ism_file_name) or force_overwrite: - shutil.copyfile(os.path.join(input_dir, ism_meta_file), ism_file_name) - wrote_files.append(ism_file_name) - - # copy MASA metadata file under a matching name - masa_meta_name = os.path.join(output_dir, f'{omasa_file_body}{os.path.splitext(masa_item["masa_meta_file"])[1]}') - - if not os.path.exists(masa_meta_name) or force_overwrite: - shutil.copyfile(os.path.join(input_dir, masa_item['masa_meta_file']), masa_meta_name) - wrote_files.append(masa_meta_name) - for sba_item in sba_alts: - sba_tag = sba_item['sba_tag'] - - osba_file_body = f'stvOSBA_{n_isms}ISM_{sba_tag}48c' - osba_file = os.path.join(output_dir, f'{osba_file_body}.wav') - - if not os.path.exists(osba_file) or force_overwrite: - audiofile.combinefiles(in_filenames=[os.path.join(input_dir, ism_audio_file), - os.path.join(input_dir, sba_item['sba_audio_file'])], - out_file=osba_file) - wrote_files.append(osba_file) - - # copy ISM metadata files under names matching the combined file - for ism_idx in range(n_isms): - ism_file_name = os.path.join(output_dir, f'{osba_file_body}_ISM{ism_idx+1}{os.path.splitext(ism_meta_file)[1]}') - if not os.path.exists(ism_file_name) or force_overwrite: - shutil.copyfile(os.path.join(input_dir, ism_meta_file), ism_file_name) - wrote_files.append(ism_file_name) +for fs in FS: + for enum_idx, (ism_audio_file, ism_meta_file) in enumerate(zip(ism_files, ism_meta_files)): + n_isms = enum_idx + 1 + ism_audio, ism_fs = audiofile.readfile(filename=os.path.join(input_dir, ism_audio_file)) + + # no stv MASA files in other sampling rates available currently + if fs == 48: + for masa_item in masa_alts: + masa_tag = masa_item['masa_tag'] + masa_audio_file = masa_item['masa_audio_file'].format(fs) + meta_file = masa_item['masa_meta_file'].format(fs) + + omasa_file_body = f'stvOMASA_{n_isms}ISM_{masa_tag}{fs}c' + omasa_file = os.path.join(output_dir, f'{omasa_file_body}.wav') + + if not os.path.exists(omasa_file) or force_overwrite: + audiofile.combinefiles(in_filenames=[os.path.join(input_dir, ism_audio_file), + os.path.join(input_dir, masa_audio_file)], + out_file=omasa_file, + in_fs=fs * 1000) + wrote_files.append(omasa_file) + + # copy ISM metadata files under names matching the combined file + for ism_idx in range(n_isms): + ism_file_name = os.path.join(output_dir, f'{omasa_file_body}_ISM{ism_idx+1}{os.path.splitext(ism_meta_file)[1]}') + if not os.path.exists(ism_file_name) or force_overwrite: + shutil.copyfile(os.path.join(input_dir, ism_meta_file), ism_file_name) + wrote_files.append(ism_file_name) + + # copy MASA metadata file under a matching name + masa_meta_name = os.path.join(output_dir, f'{omasa_file_body}{os.path.splitext(meta_file)[1]}') + + if not os.path.exists(masa_meta_name) or force_overwrite: + shutil.copyfile(os.path.join(input_dir, meta_file), masa_meta_name) + wrote_files.append(masa_meta_name) + + for sba_item in sba_alts: + sba_tag = sba_item['sba_tag'] + sba_audio_file = sba_item['sba_audio_file'].format(fs) + + osba_file_body = f'stvOSBA_{n_isms}ISM_{sba_tag}{fs}c' + osba_file = os.path.join(output_dir, f'{osba_file_body}.wav') + + if not os.path.exists(osba_file) or force_overwrite: + audiofile.combinefiles(in_filenames=[os.path.join(input_dir, ism_audio_file), + os.path.join(input_dir, sba_audio_file)], + out_file=osba_file, + in_fs=fs * 1000) + wrote_files.append(osba_file) + + # copy ISM metadata files under names matching the combined file + for ism_idx in range(n_isms): + ism_file_name = os.path.join(output_dir, f'{osba_file_body}_ISM{ism_idx+1}{os.path.splitext(ism_meta_file)[1]}') + if not os.path.exists(ism_file_name) or force_overwrite: + shutil.copyfile(os.path.join(input_dir, ism_meta_file), ism_file_name) + wrote_files.append(ism_file_name) # info print. helps setting up .gitignore diff --git a/scripts/testv/stv2OA16c.wav b/scripts/testv/stv2OA16c.wav new file mode 100644 index 0000000000..ecc49cdc47 --- /dev/null +++ b/scripts/testv/stv2OA16c.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98b13db94ef2f84fb0e626b5cd13e21478dfd95bf2da9ce5e461042d796ccf16 +size 5760294 diff --git a/scripts/testv/stv3OA16c.wav b/scripts/testv/stv3OA16c.wav new file mode 100644 index 0000000000..ac052cedba --- /dev/null +++ b/scripts/testv/stv3OA16c.wav @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:039573071859b85429c20fc331f8319293d637e488689526dcee47b564cc4ee4 +size 10240420 -- GitLab From cd34eedfe6ae9e19585d2ec9c88e483c11fb17b2 Mon Sep 17 00:00:00 2001 From: knj Date: Tue, 30 Jan 2024 11:36:35 +0100 Subject: [PATCH 08/12] add combined input preparation to job template --- .gitlab-ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e45d569347..26549df4eb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -243,6 +243,7 @@ stages: .test-job-linux-needs-testv-dir: extends: .test-job-linux before_script: + - python3 scripts/prepare_combined_format_inputs.py - if [ ! -d "$TESTV_DIR" ]; then mkdir -p $TESTV_DIR; fi - cp -r scripts/testv/* $TESTV_DIR/ -- GitLab From 06a71e2e41029e655442e70aa3f8011c6513f31c Mon Sep 17 00:00:00 2001 From: knj Date: Tue, 30 Jan 2024 11:45:22 +0100 Subject: [PATCH 09/12] correct testcase tags --- scripts/config/self_test.prm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/scripts/config/self_test.prm b/scripts/config/self_test.prm index f2714de325..f4fb4e5a38 100644 --- a/scripts/config/self_test.prm +++ b/scripts/config/self_test.prm @@ -854,17 +854,17 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 ../IVAS_cod -sba 3 48000 32 testv/stv3OA32c.wav bit ../IVAS_dec -t testv/headrot.csv BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoomReverb_Headrot.tst -// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL_ROOM_REVERB out, Config renderer, Headrotation +// Planar SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL_ROOM_REVERB out, Config renderer, Headrotation ../IVAS_cod -sba -2 48000 32 testv/stv2OA32c.wav bit -../IVAS_dec -t testv/headrot.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stv2OA32c.pcm_SBA_48000_32-32_BinauralRoomReverb_Config_renderer_Headrot.tst +../IVAS_dec -t testv/headrot.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stv2OA32c.pcm_planarSBA_48000_32-32_BinauralRoomReverb_Config_renderer_Headrot.tst // SBA at 48 kbps, 32kHz in, 48kHz out, BINAURAL_ROOM_REVERB out (Model from file), Headrotation ../IVAS_cod -sba 1 48000 32 testv/stvFOA32c.wav bit ../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_48kHz.bin -t testv/headrot.csv BINAURAL_ROOM_REVERB 48 bit testv/stvFOA32c.pcm_SBA_48000_32-48_BinauralRoomReverb_Headrot_BinauralFile.tst -// SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL_ROOM_REVERB out (Model from file), Config renderer, Headrotation +// Planar SBA at 48 kbps, 32kHz in, 32kHz out, BINAURAL_ROOM_REVERB out (Model from file), Config renderer, Headrotation ../IVAS_cod -sba -3 48000 32 testv/stv3OA32c.wav bit -../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_32kHz.bin -t testv/headrot.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_SBA_48000_32-32_BinauralRoomReverb_Config_renderer_Headrot_BinauralFile.tst +../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_32kHz.bin -t testv/headrot.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stv3OA32c.pcm_planarSBA_48000_32-32_BinauralRoomReverb_Config_renderer_Headrot_BinauralFile.tst // SBA at 128 kbps, 32kHZ in, 32kHz out, BINAURAL_ROOM_REVERB out Headrotation ../IVAS_cod -sba 3 128000 32 testv/stv3OA32c.wav bit @@ -878,9 +878,9 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 ../IVAS_cod -sba 2 128000 32 testv/stv2OA32c.wav bit ../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_16kHz.bin -t testv/headrot_case00_3000_q.csv BINAURAL_ROOM_REVERB 16 bit testv/stv2OA32c.pcm_SBA_12800032-16_BinauralRoomReverb_Headrot_BinauralFile.tst -// SBA at 128 kbps, 48kHZ in, 32kHz out, BINAURAL_ROOM_REVERB out (Model from file), Config renderer, Headrotation +// Planar SBA at 128 kbps, 48kHZ in, 32kHz out, BINAURAL_ROOM_REVERB out (Model from file), Config renderer, Headrotation ../IVAS_cod -sba -1 128000 48 testv/stvFOA48c.wav bit -../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_32kHz.bin -t testv/headrot_case00_3000_q.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stvFOA48c.pcm_SBA_12800032-32_BinauralRoomReverb_Config_renderer_Headrot_BinauralFile.tst +../IVAS_dec -hrtf ../scripts/binauralRenderer_interface/binaural_renderers_hrtf_data/ivas_binaural_32kHz.bin -t testv/headrot_case00_3000_q.csv -render_config testv/rend_config_renderer.cfg BINAURAL_ROOM_REVERB 32 bit testv/stvFOA48c.pcm_planarSBA_12800032-32_BinauralRoomReverb_Config_renderer_Headrot_BinauralFile.tst // MASA 1dir 1TC at 13.2 kbps, 48kHz in, 48kHz out, BINAURAL out -- GitLab From f6b011f8b1a84373efce8869a5677049978c6c69 Mon Sep 17 00:00:00 2001 From: knj Date: Tue, 30 Jan 2024 11:45:34 +0100 Subject: [PATCH 10/12] create combined formats input vectors in interop test --- .gitlab-ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 26549df4eb..506168a7f3 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -835,6 +835,9 @@ ivas-interop-on-merge-request: # create short test vectors - python3 tests/create_short_testvectors.py + # create combined format input files + - python3 scripts/prepare_combined_format_inputs.py + # Run reference creation, using source branch encoder and main decoder (see .merge-request-comparison-setup-codec) - exit_code=0 - exit_code2=0 -- GitLab From e651a9cb1c2e2e5a624ed5b1a18280300f7c767a Mon Sep 17 00:00:00 2001 From: knj Date: Tue, 30 Jan 2024 12:08:35 +0100 Subject: [PATCH 11/12] use testv dir template in more jobs to trigger combined input creation --- .gitlab-ci.yml | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 506168a7f3..f25069c855 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -243,8 +243,8 @@ stages: .test-job-linux-needs-testv-dir: extends: .test-job-linux before_script: - - python3 scripts/prepare_combined_format_inputs.py - if [ ! -d "$TESTV_DIR" ]; then mkdir -p $TESTV_DIR; fi + - python3 scripts/prepare_combined_format_inputs.py - cp -r scripts/testv/* $TESTV_DIR/ # --------------------------------------------------------------- @@ -441,7 +441,7 @@ codec-smoke-test: # code selftest testvectors with memory-sanitizer binaries codec-msan: extends: - - .test-job-linux + - .test-job-linux-needs-testv-dir - .rules-merge-request stage: test needs: ["build-codec-sanitizers-linux"] @@ -464,7 +464,7 @@ codec-msan: # code selftest testvectors with address-sanitizer binaries codec-asan: extends: - - .test-job-linux + - .test-job-linux-needs-testv-dir - .rules-merge-request stage: test needs: ["build-codec-sanitizers-linux"] @@ -487,7 +487,7 @@ codec-asan: # code selftest testvectors with address-sanitizer binaries codec-usan: extends: - - .test-job-linux + - .test-job-linux-needs-testv-dir - .rules-merge-request stage: test needs: ["build-codec-sanitizers-linux"] @@ -608,7 +608,7 @@ renderer-usan: # compare renderer bitexactness between target and source branch renderer-pytest-on-merge-request: extends: - - .test-job-linux + - .test-job-linux-needs-testv-dir - .rules-merge-request needs: ["build-codec-linux-make"] # TODO: set reasonable timeout, will most likely take less @@ -683,7 +683,7 @@ split-rendering-smoke-test: # compare split-rendering bitexactness between target and source branch split-rendering-pytest-on-merge-request: extends: - - .test-job-linux + - .test-job-linux-needs-testv-dir - .rules-merge-request needs: ["build-codec-linux-make"] # TODO: set reasonable timeout, will most likely take less @@ -756,7 +756,7 @@ split-rendering-pytest-on-merge-request: # compare bit exactness between target and source branch ivas-pytest-on-merge-request: extends: - - .test-job-linux + - .test-job-linux-needs-testv-dir - .rules-merge-request stage: compare needs: ["build-codec-linux-cmake", "codec-smoke-test"] @@ -813,7 +813,7 @@ ivas-pytest-on-merge-request: # Check interop IVAS_cod_test -> IVAS_dec_ref ivas-interop-on-merge-request: extends: - - .test-job-linux + - .test-job-linux-needs-testv-dir - .rules-merge-request stage: test needs: ["build-codec-linux-cmake"] @@ -835,9 +835,6 @@ ivas-interop-on-merge-request: # create short test vectors - python3 tests/create_short_testvectors.py - # create combined format input files - - python3 scripts/prepare_combined_format_inputs.py - # Run reference creation, using source branch encoder and main decoder (see .merge-request-comparison-setup-codec) - exit_code=0 - exit_code2=0 -- GitLab From 1d9b83bb9e374357fa42e75fdc76099a6db95bd6 Mon Sep 17 00:00:00 2001 From: knj Date: Tue, 30 Jan 2024 12:38:39 +0100 Subject: [PATCH 12/12] remove env var handling in template, call the script before copying to TESTV_DIR instead this way both dirs get the new files and the template works for the selftest variants as well --- scripts/prepare_combined_format_inputs.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/scripts/prepare_combined_format_inputs.py b/scripts/prepare_combined_format_inputs.py index 97665e07c2..fe80c42682 100755 --- a/scripts/prepare_combined_format_inputs.py +++ b/scripts/prepare_combined_format_inputs.py @@ -42,10 +42,7 @@ FS = [48, 32, 16] # scripts/testv/ path input_dir = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'testv') -if 'TESTV_DIR' in os.environ: - output_dir = os.environ['TESTV_DIR'] -else: - output_dir = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'testv') +output_dir = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'testv') print(f'Writing new files into {output_dir}') -- GitLab