diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 62ef1dbd364d3a83a17f761a1a3a2b6fb0600b4c..e5ff5f1a7c72fb81ad235c0181e4f87111f00bc5 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -2248,9 +2248,13 @@ coverage-test-on-main-scheduled: - cp IVAS_rend IVAS_rend_ref # Copy exec to be able to run renderer script - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v -n auto --update_ref 1 -m create_ref --ref_encoder_path ./IVAS_cod --ref_decoder_path ./IVAS_dec - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v -n auto --update_ref 1 -m create_ref_part2 --ref_encoder_path ./IVAS_cod --ref_decoder_path ./IVAS_dec + - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v -n auto --update_ref 1 -m create_ref --ref_encoder_path ./IVAS_cod --ref_decoder_path ./IVAS_dec --use_ltv + - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v -n auto --update_ref 1 -m create_ref_part2 --ref_encoder_path ./IVAS_cod --ref_decoder_path ./IVAS_dec --use_ltv # need to ignore non-zero exit codes as limiter is active and thus the different framesiszes will not be BE in all cases - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --dut_encoder_path ./IVAS_cod --dut_decoder_path ./IVAS_dec --dut_fr 5 --decoder_only || true - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --dut_encoder_path ./IVAS_cod --dut_decoder_path ./IVAS_dec --dut_fr 10 --decoder_only || true + - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --dut_encoder_path ./IVAS_cod --dut_decoder_path ./IVAS_dec --dut_fr 5 --decoder_only --use_ltv || true + - python3 -m pytest $TESTS_DIR_CODEC_BE_ON_MR -v --dut_encoder_path ./IVAS_cod --dut_decoder_path ./IVAS_dec --dut_fr 10 --decoder_only --use_ltv || true - python3 -m pytest -q -n auto tests/renderer/test_renderer.py --create_ref - python3 -m pytest -q -n auto tests/renderer/test_renderer.py --create_cut - lcov -c -d obj -o coverage_stv.info # extract coverage of short test vectors here diff --git a/lib_com/ivas_rom_com.c b/lib_com/ivas_rom_com.c index 5abf3cffd4d8b06b8382d90dce495801a67bfbad..12223badd44f97128a17b3e222aaeccb451bce7a 100644 --- a/lib_com/ivas_rom_com.c +++ b/lib_com/ivas_rom_com.c @@ -1876,16 +1876,6 @@ const float ivas_param_mc_dmx_fac_CICP19_3tc[36] = 0.0f, 0.0f, 1.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f /*Ct*/ }; -#ifndef FIX_1157_OBSOLETE_DMX_TABLE -const float ivas_param_mc_dmx_fac_CICP19_4tc[48] = -{ - 1.0f, 0.0f, INV_SQRT2, INV_SQRT2, 1.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, /*Lht*/ - 0.0f, 1.0f, INV_SQRT2, INV_SQRT2, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, /*Rht*/ - 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, 0.0f, /*Lut*/ - 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 1.0f, /*Rut*/ -}; -#endif - /* Coefficient for Parametric MC ILD factorization */ const float ivas_param_mc_ild_fac_CICP6_2tc[6] = { diff --git a/lib_com/options.h b/lib_com/options.h index b2d288ce7ad7034843d4b47566b4e1856dafd716..dcbf810be450a9de95942a3ae936dd960eb693ff 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -173,11 +173,7 @@ /*#define FIX_1123_PARAMBIN_16BIT_ROM*/ /* FhG,Nok: issue 1123: update ParamBin ROM tables and scripts to generate 16 bit tables instead of float */ #define FIX_RETURN /* VA: fix location of function returns */ #endif -#define FIX_1129_EXT_REND_OUTPUT_HIGH /* Philips: issue 1129: External renderer BINAURAL_ROOM_REVERB format output level too high compared to internal rendering output */ -#define FIX_1152_UNINIT_VAL_IN_ITD_VAD_COMPUTATION /* FhG: fix uninitialized value being used in ITD VAD mid signal computation that does not affect synthesis, but crashes BASOPs */ -#define FIX_1157_OBSOLETE_DMX_TABLE /* FhG: remove obsolte ParamMC DMX table ivas_param_mc_dmx_fac_CICP19_4tc[] */ #define FIX_1135_EXT_RENDERER_HANDLES /* VA: issue 1135: Memory usage reduction in external renderer: Allocate only handles that are really needed. */ -#define FIX_1159_SPLIT_RENDERING_CONFIG /* VA: issue 1159: Execute split rendering config only for split rendering outputs. */ /* #################### End BE switches ################################## */ @@ -186,8 +182,6 @@ /* all switches in this category should start with "NONBE_" */ #define NONBE_FIX_1141_OSBA_ROOM_RENDERING /* FhG: Fix for issue 1141: render objects in OSBA decoder with room effect */ -#define NONBE_FIX_981_PARAMBIN_DEFAULT_EARLY_PART /* Nokia: Set default early part energy correction to unity for BINAURAL_ROOM_REVERB */ -#define NONBE_FIX_1143_MASA_BRSW /* Nok: Fix for issue 1143: MSAN use of uninitialized value in masa decoding to binaural with dtx bitrate switching and 5 % FER */ #define NONE_BE_FIX_816_LFE_PLC_FLOAT /* DLB: issue 816: reduce required precision to float for LFE-PLC*/ diff --git a/lib_dec/ivas_dirac_dec.c b/lib_dec/ivas_dirac_dec.c index 92df8019291548ce7fdf50be40d5b74d54211604..7afe0de9f6c65a31a47fec72b3fff9f1dccbcf87 100644 --- a/lib_dec/ivas_dirac_dec.c +++ b/lib_dec/ivas_dirac_dec.c @@ -2224,11 +2224,16 @@ void ivas_dirac_dec_render_sf( /* render objects in combined format onto the CICP19 channels for BINAURAL_ROOM_IR */ if ( st_ivas->ivas_format == SBA_ISM_FORMAT && st_ivas->ism_mode == ISM_SBA_MODE_DISC && st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV_ROOM ) { +#ifndef NONBE_FIX_1141_OSBA_ROOM_RENDERING int16_t in_ch; for ( in_ch = 0; in_ch < st_ivas->nchan_ism; in_ch++ ) { - int16_t j, k, j2, l; - int16_t num_objects, nchan_out_woLFE, lfe_index; +#endif + int16_t j, k, l; +#ifndef NONBE_FIX_1141_OSBA_ROOM_RENDERING + int16_t j2, lfe_index; +#endif + int16_t num_objects, nchan_out_woLFE; int16_t az1, el1; int16_t n_slots_to_render; int16_t n_samples_to_render; @@ -2251,7 +2256,7 @@ void ivas_dirac_dec_render_sf( #ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING st_ivas->hIsmRendererData->interp_offset = 0; #else - interp_offset = 0; + interp_offset = 0; #endif } @@ -2267,13 +2272,19 @@ void ivas_dirac_dec_render_sf( } } - lfe_index = 0; - for ( j = 0, j2 = 0; j < nchan_out_woLFE; j++, j2++ ) +#ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING + for ( j = 0; j < nchan_out_woLFE; j++ ) +#else + lfe_index = 0; + for ( j = 0, j2 = 0; j < nchan_out_woLFE; j++, j2++ ) +#endif { +#ifndef NONBE_FIX_1141_OSBA_ROOM_RENDERING if ( ( st_ivas->hIntSetup.num_lfe > 0 ) && ( st_ivas->hIntSetup.index_lfe[lfe_index] == j ) ) { ( lfe_index < ( st_ivas->hIntSetup.num_lfe - 1 ) ) ? ( lfe_index++, j2++ ) : j2++; } +#endif gain = st_ivas->hIsmRendererData->gains[i][j]; prev_gain = st_ivas->hIsmRendererData->prev_gains[i][j]; @@ -2285,7 +2296,7 @@ void ivas_dirac_dec_render_sf( #ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING w1 = &st_ivas->hIsmRendererData->interpolator[st_ivas->hIsmRendererData->interp_offset]; #else - w1 = &st_ivas->hIsmRendererData->interpolator[interp_offset]; + w1 = &st_ivas->hIsmRendererData->interpolator[interp_offset]; #endif tc_re = pppQMfFrame_ts_re[nchan_transport + i][0]; @@ -2300,8 +2311,13 @@ void ivas_dirac_dec_render_sf( for ( l = 0; l < hSpatParamRendCom->num_freq_bands; l++ ) { - Cldfb_RealBuffer[j2][k][l] += g * *( tc_re++ ); - Cldfb_ImagBuffer[j2][k][l] += g * *( tc_im++ ); +#ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING + Cldfb_RealBuffer[j][k][l] += g * *( tc_re++ ); + Cldfb_ImagBuffer[j][k][l] += g * *( tc_im++ ); +#else + Cldfb_RealBuffer[j2][k][l] += g * *( tc_re++ ); + Cldfb_ImagBuffer[j2][k][l] += g * *( tc_im++ ); +#endif } w1 += hSpatParamRendCom->num_freq_bands; } @@ -2314,7 +2330,9 @@ void ivas_dirac_dec_render_sf( } } } +#ifndef NONBE_FIX_1141_OSBA_ROOM_RENDERING } +#endif #ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING st_ivas->hIsmRendererData->interp_offset += hSpatParamRendCom->num_freq_bands * st_ivas->hSpar->subframe_nbslots[st_ivas->hSpar->subframes_rendered]; #endif diff --git a/lib_dec/ivas_masa_dec.c b/lib_dec/ivas_masa_dec.c index 544f3d36bfba6da5fdde037eda6ba8a87bdcafe9..ea40f5717912583c39f6b7be10cc9bc7b9300dc0 100644 --- a/lib_dec/ivas_masa_dec.c +++ b/lib_dec/ivas_masa_dec.c @@ -1393,14 +1393,9 @@ ivas_error ivas_masa_dec_reconfigure( sts = st_ivas->hCPE[cpe_id]->hCoreCoder; sts[0]->bit_stream = bit_stream + num_bits; num_bits += (int16_t) ( st_ivas->hCPE[cpe_id]->element_brate / FRAMES_PER_SEC ); -#ifdef NONBE_FIX_1143_MASA_BRSW if ( ( ivas_total_brate < MASA_STEREO_MIN_BITRATE && last_ivas_total_brate >= MASA_STEREO_MIN_BITRATE ) || ( ivas_total_brate < MASA_STEREO_MIN_BITRATE && last_ivas_total_brate == FRAME_NO_DATA ) || ( ivas_total_brate < MASA_STEREO_MIN_BITRATE && last_ivas_total_brate == IVAS_SID_5k2 ) ) -#else - if ( ( ivas_total_brate < MASA_STEREO_MIN_BITRATE && last_ivas_total_brate >= MASA_STEREO_MIN_BITRATE ) || - ( ivas_total_brate < MASA_STEREO_MIN_BITRATE && last_ivas_total_brate == FRAME_NO_DATA ) ) -#endif { st_ivas->hCPE[cpe_id]->nchan_out = 1; if ( ( st_ivas->renderer_type == RENDERER_DIRAC && st_ivas->hDirACRend != NULL ) || ( ( st_ivas->renderer_type == RENDERER_STEREO_PARAMETRIC || st_ivas->renderer_type == RENDERER_BINAURAL_PARAMETRIC || st_ivas->renderer_type == RENDERER_BINAURAL_PARAMETRIC_ROOM ) && st_ivas->hDiracDecBin[0] != NULL ) ) diff --git a/lib_dec/lib_dec.c b/lib_dec/lib_dec.c index c95d24f0ea586fd3d313c9cfdc4001ff8a2b7f7a..cf62708e8709034fbedddc6edd0407d2c57b388f 100644 --- a/lib_dec/lib_dec.c +++ b/lib_dec/lib_dec.c @@ -2230,17 +2230,13 @@ ivas_error IVAS_DEC_FeedRenderConfig( hRenderConfig->split_rend_config.poseCorrectionMode = ISAR_SPLIT_REND_POSE_CORRECTION_MODE_NONE; } -#ifdef FIX_1159_SPLIT_RENDERING_CONFIG if ( is_split_rendering_enabled( hIvasDec->st_ivas->hDecoderConfig, hRenderConfig ) ) { -#endif if ( ( error = isar_split_rend_validate_config( &hRenderConfig->split_rend_config, ( hIvasDec->st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ? 1 : 0 ) ) != IVAS_ERR_OK ) { return error; } -#ifdef FIX_1159_SPLIT_RENDERING_CONFIG } -#endif return IVAS_ERR_OK; } diff --git a/lib_enc/ivas_stereo_dft_enc_itd.c b/lib_enc/ivas_stereo_dft_enc_itd.c index f8221df11d4f569f7f55388c9b8f247497a21a97..30d35186777ed092300e5bc8ac9bded4d614fac2 100644 --- a/lib_enc/ivas_stereo_dft_enc_itd.c +++ b/lib_enc/ivas_stereo_dft_enc_itd.c @@ -288,13 +288,9 @@ static int16_t stereo_dft_enc_itd_vad( float Spd[STEREO_DFT_N_16k_ENC / 2 + 1]; -#ifdef FIX_1152_UNINIT_VAL_IN_ITD_VAD_COMPUTATION /* Spd is later only used starting at itd_vad_band_tbl[0], so only compute values starting from there */ /* -> this avoids uninitialized values in Spd_L and Spd_R at index 0 to be used */ for ( i = itd_vad_band_tbl[0]; i < STEREO_DFT_N_16k_ENC / 2; i++ ) -#else - for ( i = 0; i <= STEREO_DFT_N_16k_ENC / 2; i++ ) -#endif { Spd[i] = 0.5f * ( Spd_L[i] + Spd_R[i] ); } diff --git a/lib_rend/ivas_dirac_dec_binaural_functions.c b/lib_rend/ivas_dirac_dec_binaural_functions.c index 75816d6519a1a134b6a58782d4addaefe19e0627..30ef5b6fb73e138d602956238855048eed3019c0 100644 --- a/lib_rend/ivas_dirac_dec_binaural_functions.c +++ b/lib_rend/ivas_dirac_dec_binaural_functions.c @@ -217,7 +217,6 @@ ivas_error ivas_dirac_dec_init_binaural_data( } else if ( renderer_type == RENDERER_BINAURAL_PARAMETRIC_ROOM ) /* Indication of binaural rendering with room effect */ { -#ifdef NONBE_FIX_981_PARAMBIN_DEFAULT_EARLY_PART if ( st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) { mvr2r( ( *phHrtfParambin )->parametricEarlyPartEneCorrection, hDiracDecBin->earlyPartEneCorrection, nBins ); @@ -226,9 +225,6 @@ ivas_error ivas_dirac_dec_init_binaural_data( { set_f( hDiracDecBin->earlyPartEneCorrection, 1.0f, CLDFB_NO_CHANNELS_MAX ); } -#else - mvr2r( ( *phHrtfParambin )->parametricEarlyPartEneCorrection, hDiracDecBin->earlyPartEneCorrection, nBins ); -#endif /* reconfiguration needed when Reverb. parameters are changed -> close and open the handle again */ if ( hDiracDecBin->hReverb != NULL && ( ( hDiracDecBin->hReverb->numBins != nBins ) || diff --git a/lib_rend/lib_rend.c b/lib_rend/lib_rend.c index aa0281255047a3a0e92e8588610e976865699add..3efafb6a291a24d443dbad63b44b779044c84e39 100644 --- a/lib_rend/lib_rend.c +++ b/lib_rend/lib_rend.c @@ -609,9 +609,6 @@ static ivas_error validateOutputSampleRate( /* Otherwise rendering to binaural, support the same set as IVAS decoder */ switch ( sampleRate ) { -#ifndef FIX_1159_SPLIT_RENDERING_CONFIG - case 8000: -#endif case 16000: case 32000: case 48000: @@ -2567,9 +2564,7 @@ static ivas_error updateSbaPanGains( break; } case IVAS_AUDIO_CONFIG_BINAURAL: -#ifdef FIX_1129_EXT_REND_OUTPUT_HIGH case IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB: -#endif if ( hRendCfg->split_rend_config.rendererSelection == ISAR_SPLIT_REND_RENDERER_SELECTION_FASTCONV ) { if ( ( error = ivas_rend_openCldfbRend( &inputSba->cldfbRendWrapper, inConfig, outConfig, &rendCtx.pSplitRendWrapper->multiBinPoseData, *rendCtx.pOutSampleRate ) ) != IVAS_ERR_OK ) @@ -2590,9 +2585,6 @@ static ivas_error updateSbaPanGains( } break; case IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR: -#ifndef FIX_1129_EXT_REND_OUTPUT_HIGH - case IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB: -#endif if ( ( error = initSbaPanGainsForMcOut( inputSba, IVAS_AUDIO_CONFIG_7_1_4, NULL ) ) != IVAS_ERR_OK ) { return error; @@ -4468,17 +4460,13 @@ ivas_error IVAS_REND_FeedRenderConfig( hRenderConfig->split_rend_config.codec = renderConfig.split_rend_config.codec; -#ifdef FIX_1159_SPLIT_RENDERING_CONFIG if ( hIvasRend->outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED || hIvasRend->outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) { -#endif if ( ( error = isar_split_rend_validate_config( &hRenderConfig->split_rend_config, ( hIvasRend->outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ? 1 : 0 ) ) != IVAS_ERR_OK ) { return error; } -#ifdef FIX_1159_SPLIT_RENDERING_CONFIG } -#endif /* Must re-initialize split rendering config in case renderer config is updated after adding renderer inputs */ /* if its not initialized yet then no need to re-initialize, initialization will happen while adding inputs*/ @@ -6923,19 +6911,11 @@ static ivas_error renderInputSba( case IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM: error = renderSbaToSplitBinaural( sbaInput, outConfig, outAudio ); break; -#ifdef FIX_1129_EXT_REND_OUTPUT_HIGH case IVAS_AUDIO_CONFIG_BINAURAL: case IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB: error = renderSbaToBinaural( sbaInput, outConfig, outAudio ); break; case IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR: -#else - case IVAS_AUDIO_CONFIG_BINAURAL: - error = renderSbaToBinaural( sbaInput, outConfig, outAudio ); - break; - case IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR: - case IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB: -#endif error = renderSbaToBinauralRoom( sbaInput, outConfig, outAudio ); break; default: @@ -8543,7 +8523,6 @@ static ivas_error ivas_masa_ext_rend_parambin_init( } else if ( renderer_type == RENDERER_BINAURAL_PARAMETRIC_ROOM ) /* Indication of binaural rendering with room effect */ { -#ifdef NONBE_FIX_981_PARAMBIN_DEFAULT_EARLY_PART if ( *inputMasa->base.ctx.pOutConfig == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) { mvr2r( ( *phHrtfParambin )->parametricEarlyPartEneCorrection, hDiracDecBin->earlyPartEneCorrection, nBins ); @@ -8552,9 +8531,6 @@ static ivas_error ivas_masa_ext_rend_parambin_init( { set_f( hDiracDecBin->earlyPartEneCorrection, 1.0f, CLDFB_NO_CHANNELS_MAX ); } -#else - mvr2r( ( *phHrtfParambin )->parametricEarlyPartEneCorrection, hDiracDecBin->earlyPartEneCorrection, nBins ); -#endif if ( hDiracDecBin->hReverb == NULL && pos_idx == 0 ) /* open reverb only for the main direction */ { diff --git a/scripts/reverb/acoustic_environment_hospital_patientroom.cfg b/scripts/reverb/acoustic_environment_hospital_patientroom.cfg deleted file mode 100644 index cc7747cd1baabb7ac5cd1877d5da22eb2b458b04..0000000000000000000000000000000000000000 --- a/scripts/reverb/acoustic_environment_hospital_patientroom.cfg +++ /dev/null @@ -1,32 +0,0 @@ -[roomAcoustics] -frequencyGridCount = 1; -acousticEnvironmentCount = 1; - -[frequencyGrid:0] -method = individualFrequencies; -frequencies = [ - 20.0, 25.0, 31.5, 40.0, - 50.0, 63.0, 80.0, 100.0, - 125.0, 160.0, 200.0, 250.0, - 315.0, 400.0, 500.0, 630.0, - 800.0, 1000.0, 1250.0, 1600.0, - 2000.0, 2500.0, 3150.0, 4000.0, - 5000.0, 6300.0, 8000.0, 10000.0, - 12500.0, 16000.0, 20000.0]; - -[acousticEnvironment:0] -id = 0; -frequencyGridIndex = 0; -predelay = 0.08163; -rt60 = [ - 0.81275, 0.61888, 0.45111, 0.34672, 0.46683, 0.53987, 0.61874, 0.70291, 0.66657, 0.73037, - 0.75090, 0.72470, 0.75486, 0.75857, 0.76844, 0.74999, 0.77622, 0.78227, 0.77441, 0.74688, - 0.73521, 0.73782, 0.71928, 0.71708, 0.71465, 0.60592, 0.52031, 0.51768, 0.52102, 0.37956, - 0.30786]; - -dsr = [ - 0.00019952621, 0.00019952621, 7.9432844e-05, 5.0118702e-05, 7.943284e-06, 6.3095763e-06, 6.3095763e-06, 7.943284e-06, 1e-05, 1e-05, - 7.943284e-06, 1e-05, 1e-05, 1e-05, 7.943284e-06, 1e-05, 1e-05, 7.943284e-06, 7.943284e-06, 6.3095763e-06, - 6.3095763e-06, 6.3095763e-06, 6.3095763e-06, 6.3095763e-06, 6.3095763e-06, 3.1622776e-06, 3.1622776e-06, 3.1622776e-06, 6.3095763e-07, 3.1622776e-07, - 3.1622776e-07]; - diff --git a/scripts/reverb/acoustic_environment_recreation.cfg b/scripts/reverb/acoustic_environment_recreation.cfg deleted file mode 100644 index ec1ee14b7ac1953554724e1c10665c62de963645..0000000000000000000000000000000000000000 --- a/scripts/reverb/acoustic_environment_recreation.cfg +++ /dev/null @@ -1,32 +0,0 @@ -[roomAcoustics] -frequencyGridCount = 1; -acousticEnvironmentCount = 1; - -[frequencyGrid:0] -nBands = 31; -method = individualFrequencies; -frequencies = [ - 20.0, 25.0, 31.5, 40.0, - 50.0, 63.0, 80.0, 100.0, - 125.0, 160.0, 200.0, 250.0, - 315.0, 400.0, 500.0, 630.0, - 800.0, 1000.0, 1250.0, 1600.0, - 2000.0, 2500.0, 3150.0, 4000.0, - 5000.0, 6300.0, 8000.0, 10000.0, - 12500.0, 16000.0, 20000.0]; - -[acousticEnvironment:0] -id = 0; -frequencyGridIndex = 0; -predelay = 0.43031; -rt60 = [ - 4.51916, 4.89553, 4.83276, 5.00198, 5.34468, 5.76026, 6.36818, 6.95503, 7.27557, 7.62559, - 8.08892, 8.16002, 8.13900, 8.17919, 8.16280, 8.46226, 9.61806, 9.93048, 9.81353, 8.59340, - 8.38885, 8.36823, 6.51845, 3.76089, 3.75374, 3.57451, 1.28724, 1.22174, 1.22448, 1.71631, - 2.14343]; - -dsr = [ - 1e-06, 7.943284e-07, 1e-06, 1e-06, 1.5848925e-06, 1.9952631e-06, 3.1622776e-06, 3.9810707e-06, 6.3095763e-06, 7.943284e-06, - 1e-05, 7.943284e-06, 7.943284e-06, 7.943284e-06, 7.943284e-06, 7.943284e-06, 5.01187e-06, 5.01187e-06, 3.9810707e-06, 3.1622776e-06, - 3.1622776e-06, 2.511887e-06, 7.943284e-07, 6.3095763e-07, 6.3095763e-07, 5.01187e-08, 1.2589251e-08, 1.2589251e-08, 1.2589265e-09, 1.2589266e-11, - 3.981075e-12]; diff --git a/scripts/reverb/acoustic_environment_renderer.cfg b/scripts/reverb/acoustic_environment_renderer.cfg deleted file mode 100644 index fffa8d0f2642ddb561d2d056040ecfa8718c27d7..0000000000000000000000000000000000000000 --- a/scripts/reverb/acoustic_environment_renderer.cfg +++ /dev/null @@ -1,37 +0,0 @@ -[roomAcoustics] -frequencyGridCount = 1; -acousticEnvironmentCount = 1; - -[frequencyGrid:0] -method = individualFrequencies; -frequencies = [ - 20.0, 25.0, 31.5, 40.0, - 50.0, 63.0, 80.0, 100.0, - 125.0, 160.0, 200.0, 250.0, - 315.0, 400.0, 500.0, 630.0, - 800.0, 1000.0, 1250.0, 1600.0, - 2000.0, 2500.0, 3150.0, 4000.0, - 5000.0, 6300.0, 8000.0, 10000.0, - 12500.0, 16000.0, 20000.0]; - -[acousticEnvironment:0] -id = 0; -frequencyGridIndex = 0; -predelay = 0.1; -rt60 = [ - 1.3622, 1.4486, 1.3168, 1.5787, - 1.4766, 1.3954, 1.2889, 1.3462, - 1.0759, 1.0401, 1.0970, 1.0850, - 1.0910, 1.0404, 1.0499, 1.0699, - 1.1028, 1.1714, 1.1027, 1.0666, - 1.0550, 1.0553, 1.0521, 1.0569, - 1.0421, 0.97822, 0.80487, 0.75944, - 0.71945, 0.61682, 0.60031]; - -dsr = [ - 1.9952632e-08, 1.9952632e-08, 1.2589251e-08, 1.5848926e-08, 1.2589251e-08, 1.9952632e-08, 2.511887e-08, 3.9810708e-08, 1e-07, 1.9952633e-07, - 3.981071e-07, 6.3095763e-07, 7.943284e-07, 6.3095763e-07, 5.01187e-07, 5.01187e-07, 6.3095763e-07, 6.3095763e-07, 7.943284e-07, 6.3095763e-07, - 5.01187e-07, 6.3095763e-07, 6.3095763e-07, 6.3095763e-07, 5.01187e-07, 2.511887e-07, 1.2589251e-07, 1e-07, 6.309576e-08, 3.1622776e-08, - 2.511887e-08]; - - diff --git a/scripts/reverb/acoustic_environment_renderer_directivity.cfg b/scripts/reverb/acoustic_environment_renderer_directivity.cfg deleted file mode 100644 index 1c9db1e9e4316d7bb46dca327a01370ef1716f74..0000000000000000000000000000000000000000 --- a/scripts/reverb/acoustic_environment_renderer_directivity.cfg +++ /dev/null @@ -1,41 +0,0 @@ -[roomAcoustics] -frequencyGridCount = 1; -acousticEnvironmentCount = 1; - -[frequencyGrid:0] -method = individualFrequencies; -frequencies = [ - 20.0, 25.0, 31.5, 40.0, - 50.0, 63.0, 80.0, 100.0, - 125.0, 160.0, 200.0, 250.0, - 315.0, 400.0, 500.0, 630.0, - 800.0, 1000.0, 1250.0, 1600.0, - 2000.0, 2500.0, 3150.0, 4000.0, - 5000.0, 6300.0, 8000.0, 10000.0, - 12500.0, 16000.0, 20000.0]; - -[acousticEnvironment:0] -id = 0; -frequencyGridIndex = 0; -predelay = 0.1; -rt60 = [ - 1.3622, 1.4486, 1.3168, 1.5787, - 1.4766, 1.3954, 1.2889, 1.3462, - 1.0759, 1.0401, 1.0970, 1.0850, - 1.0910, 1.0404, 1.0499, 1.0699, - 1.1028, 1.1714, 1.1027, 1.0666, - 1.0550, 1.0553, 1.0521, 1.0569, - 1.0421, 0.97822, 0.80487, 0.75944, - 0.71945, 0.61682, 0.60031]; - -dsr = [ - 1.9952632e-08, 1.9952632e-08, 1.2589251e-08, 1.5848926e-08, 1.2589251e-08, 1.9952632e-08, 2.511887e-08, 3.9810708e-08, 1e-07, 1.9952633e-07, - 3.981071e-07, 6.3095763e-07, 7.943284e-07, 6.3095763e-07, 5.01187e-07, 5.01187e-07, 6.3095763e-07, 6.3095763e-07, 7.943284e-07, 6.3095763e-07, - 5.01187e-07, 6.3095763e-07, 6.3095763e-07, 6.3095763e-07, 5.01187e-07, 2.511887e-07, 1.2589251e-07, 1e-07, 6.309576e-08, 3.1622776e-08, - 2.511887e-08]; - -[directivitySetting] -directivityCount = 1; - -[directivityPattern:0] -directivity = [0.0, 360.0, 0.2512] diff --git a/scripts/reverb/test.cfg b/scripts/reverb/test.cfg deleted file mode 100644 index 7c670056b6140967072b6bcca3562c3a5db4dfa4..0000000000000000000000000000000000000000 --- a/scripts/reverb/test.cfg +++ /dev/null @@ -1,47 +0,0 @@ -[roomAcoustics] -frequencyGridCount = 3; -acousticEnvironmentCount = 1; - -[frequencyGrid:0] -method = individualFrequencies; -nrBands = 31; -frequencies = [20.0, 25.0, 31.5, 40.0, - 50.0, 63.0, 80.0, 100.0, - 125.0, 160.0, 200.0, 250.0, - 315.0, 400.0, 500.0, 630.0, - 800.0, 1000.0, 1250.0, 1600.0, - 2000.0, 2500.0, 3150.0, 4000.0, - 5000.0, 6300.0, 8000.0, 10000.0, - 12500.0, 16000.0, 20000.0]; - -[frequencyGrid:1] -method = defaultBanding; -defaultGrid = 2; - -[frequencyGrid:2] -method = startHopAmount; -nrBands = 31; -startFrequency = 20; -frequencyHop = 1.259921050; - -[acousticEnvironment:0] -frequencyGridIndex = 1; -predelay = 0.1; -rt60 = [1.3622, 1.4486, 1.3168, 1.5787, - 1.4766, 1.3954, 1.2889, 1.3462, - 1.0759, 1.0401, 1.0970, 1.0850, - 1.0910, 1.0404, 1.0499, 1.0699, - 1.1028, 1.1714, 1.1027, 1.0666, - 1.0550, 1.0553, 1.0521, 1.0569, - 1.0421, 0.97822, 0.80487, 0.75944, - 0.71945, 0.61682, 0.60031]; - -dsr = [1.9952632e-08, 1.9952632e-08, 1.2589251e-08, 1.5848926e-08, 1.2589251e-08, 1.9952632e-08, 2.511887e-08, 3.9810708e-08, 1e-07, 1.9952633e-07, - 3.981071e-07, 6.3095763e-07, 7.943284e-07, 6.3095763e-07, 5.01187e-07, 5.01187e-07, 6.3095763e-07, 6.3095763e-07, 7.943284e-07, 6.3095763e-07, - 5.01187e-07, 6.3095763e-07, 6.3095763e-07, 6.3095763e-07, 5.01187e-07, 2.511887e-07, 1.2589251e-07, 1e-07, 6.309576e-08, 3.1622776e-08, - 2.511887e-08]; - -hasEarlyReflections = true; -earlyReflectionsSize = [4.0, 3.0, 2.5]; -absorptionCoeffs = [0.2, 0.2, 0.2, 0.2, 0.3, 0.8]; - diff --git a/tests/codec_be_on_mr_nonselection/test_sba.py b/tests/codec_be_on_mr_nonselection/test_sba.py index a69e54a2901e5eff1f40ffd28338d4633ced72ec..66fe1f58910c700174735dbcfdee1c69d55d008e 100644 --- a/tests/codec_be_on_mr_nonselection/test_sba.py +++ b/tests/codec_be_on_mr_nonselection/test_sba.py @@ -43,14 +43,15 @@ from tests.cmp_pcm import cmp_pcm from tests.conftest import DecoderFrontend, EncoderFrontend from ..conftest import parse_properties from ..constants import TESTV_DIR +from tests.testconfig import use_ltv # params -tag_list = ["stvFOA"] -tag_list_HOA2 = ["stv2OA"] -tag_list_HOA3 = ["stv3OA"] +tag_list = ["ltvFOA" if use_ltv else "stvFOA"] +tag_list_HOA2 = ["ltvHOA2" if use_ltv else "stv2OA"] +tag_list_HOA3 = ["ltvHOA3" if use_ltv else "stv3OA"] -tag_list_bw_force = ["stvFOA"] +tag_list_bw_force = tag_list dtx_set = ["0", "1"] dict_fsample_bw = {"48": "3", "32": "2", "16": "1"} dict_bw_idx = {"FB": "3", "SWB": "2", "WB": "1"} @@ -117,13 +118,21 @@ def test_pca_enc( get_odg, ): pca = True - tag = tag + fs + "c" ivas_br = "256000" dtx = "0" max_bw = "FB" gain_flag = -1 sba_order = "+1" output_config = "FOA" + + if "ltv" in tag: + tag = f"ltv{fs}_FOA" + cut_testv = False + elif "stv" in tag: + tag = tag + fs + "c" + cut_testv=True + else: + assert 0 if not decoder_only: # enc @@ -144,7 +153,7 @@ def test_pca_enc( update_ref, gain_flag, keep_files, - cut_testv=True, + cut_testv=cut_testv, pca=pca, ) @@ -227,7 +236,16 @@ def test_sba_enc_system( pytest.skip() if gain_flag == 1 and ivas_br not in ["13200", "16400", "24400", "32000"]: pytest.skip() - tag = tag + fs + "c" + + if "ltv" in tag: + tag = f"ltv{fs}_FOA" + cut_testv = False + elif "stv" in tag: + tag = tag + fs + "c" + cut_testv = True + else: + assert 0 + max_bw = "FB" sba_order = "+1" output_config = "FOA" @@ -259,7 +277,7 @@ def test_sba_enc_system( keep_files, cut_gain=cut_gain, create_dutenc=True, - cut_testv=True, + cut_testv=cut_testv, ) # dec @@ -317,7 +335,13 @@ def test_spar_hoa2_enc_system( dtx = "0" gain_flag = -1 - tag = tag + fs + "c" + if "ltv" in tag: + tag = f"ltv{fs}_HOA2" + elif "stv" in tag: + tag = tag + fs + "c" + else: + assert 0 + max_bw = "FB" sba_order = "+2" output_config = "HOA2" @@ -398,7 +422,13 @@ def test_spar_hoa3_enc_system( dtx = "0" gain_flag = -1 - tag = tag + fs + "c" + if "ltv" in tag: + tag = f"ltv{fs}_HOA3" + elif "stv" in tag: + tag = tag + fs + "c" + else: + assert 0 + max_bw = "FB" sba_order = "+3" output_config = "HOA3" @@ -488,7 +518,14 @@ def test_sba_enc_BWforce_system( pytest.skip() fs = sample_rate_bw_idx[0] bw = sample_rate_bw_idx[1] - tag = tag + fs + "c" + if "ltv" in tag: + tag = f"ltv{fs}_FOA" + cut_testv = False + elif "stv" in tag: + tag = tag + fs + "c" + cut_testv = True + else: + assert 0 gain_flag = -1 sba_order = "+1" output_config = "FOA" @@ -512,7 +549,7 @@ def test_sba_enc_BWforce_system( update_ref, gain_flag, keep_files, - cut_testv=True, + cut_testv=cut_testv, ) # dec @@ -593,7 +630,12 @@ def test_sba_plc_system( pytest.skip() if gain_flag == 1 and ivas_br not in ["13200", "16400", "24400", "32000"]: pytest.skip() - tag = tag + fs + "c" + if "ltv" in tag: + tag = f"ltv{fs}_FOA" + elif "stv" in tag: + tag = tag + fs + "c" + else: + assert 0 # dec sba_dec( diff --git a/tests/conftest.py b/tests/conftest.py index db7e2e86f3defa9074e1e87b4f48e36f65011724..0e2fb9be874a1d0f6338d08b02c2e26443605718 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -833,6 +833,8 @@ def pytest_configure(config): ) if config.option.param_file: testconfig.PARAM_FILE = config.option.param_file + if config.option.use_ltv: + testconfig.use_ltv = True if config.option.selection_be_md5_file: md5_file_path = config.option.selection_be_md5_file if not platform.system() == "Windows": diff --git a/tests/testconfig.py b/tests/testconfig.py index 77e0f9f59d02b58d43feea3e90436bed4de95bb2..17a02887404d9c062d15f9256275879b6405bd72 100644 --- a/tests/testconfig.py +++ b/tests/testconfig.py @@ -37,3 +37,5 @@ from pathlib import Path PARAM_FILE = Path("scripts/config/self_test.prm") MD5_REF_DICT = dict() + +use_ltv = False \ No newline at end of file