diff --git a/apps/decoder.c b/apps/decoder.c index b078c2441e79184f712047d6fe466f963393aa3d..12feb56d346dd4c8b1f18aa07f1487ab037216da 100644 --- a/apps/decoder.c +++ b/apps/decoder.c @@ -149,7 +149,6 @@ typedef struct uint16_t directivityPatternId[IVAS_MAX_NUM_OBJECTS]; bool objEditEnabled; char *objEditFileName; - bool evsMode; IVAS_ROOM_SIZE_T roomSize; } DecArguments; @@ -1035,7 +1034,6 @@ static bool parseCmdlIVAS_dec( arg->output_Fs = IVAS_MAX_SAMPLING_RATE; arg->outputConfig = IVAS_AUDIO_CONFIG_MONO; arg->decMode = IVAS_DEC_MODE_IVAS; - arg->evsMode = false; arg->quietModeEnabled = false; arg->delayCompensationEnabled = true; arg->voipMode = false; @@ -1589,7 +1587,6 @@ static bool parseCmdlIVAS_dec( } else if ( strcmp( argv_to_upper, "-EVS" ) == 0 ) { - arg->evsMode = true; arg->decMode = IVAS_DEC_MODE_EVS; i++; } @@ -1680,7 +1677,7 @@ static bool parseCmdlIVAS_dec( usage_dec(); return false; } - else if ( arg->non_diegetic_pan_enabled && arg->outputConfig == IVAS_AUDIO_CONFIG_STEREO && arg->evsMode ) + else if ( arg->non_diegetic_pan_enabled && arg->outputConfig == IVAS_AUDIO_CONFIG_STEREO && arg->decMode == IVAS_DEC_MODE_EVS ) { fprintf( stderr, "Error: Both non-diegetic panning and stereo output specified!\n\n" ); usage_dec(); diff --git a/lib_com/ivas_prot.h b/lib_com/ivas_prot.h index 3e8f951eff62e0aba074b342bd1688ebefac42c9..d9ed7a5a25e8bf7fd4dda53fea7fc51b679c23e4 100644 --- a/lib_com/ivas_prot.h +++ b/lib_com/ivas_prot.h @@ -794,8 +794,8 @@ Word16 matrix_product_q30_fx( ); void ivas_apply_non_diegetic_panning( - float *input_f, /* i : non-diegetic object */ - float *output_f[], /* o : core-coder transport mono channel/stereo output */ + float *input_f, /* i : non-diegetic object (mono channel) */ + float *output_f[], /* o : stereo output channels */ const float non_diegetic_pan_gain, /* i : non-diegetic panning gain */ const int16_t output_frame /* i : output frame length per channel */ ); @@ -5257,6 +5257,12 @@ void ivas_mc2sba( const float gain_lfe /* i : gain for LFE, 0=ignore LFE */ ); +void ivas_stereo2sba( + float *input_f[], /* i : core-coder transport stereo channels */ + float *output_f[], /* o : SBA output channels */ + const int16_t output_frame /* i : output frame length per channel */ +); + void ivas_param_mc_mc2sba_cldfb( IVAS_OUTPUT_SETUP hTransSetup, /* i : transported MC Format */ float *hoa_encoder, /* i : HOA3 encoder for the transported MC format */ diff --git a/lib_com/options.h b/lib_com/options.h index df9d70b75cfa11c7350f207420f9f7eda17dc9e2..5ea2f6d316ab4f3102629846f8a4de53f8837546 100644 --- a/lib_com/options.h +++ b/lib_com/options.h @@ -174,6 +174,10 @@ #define NONBE_1122_KEEP_EVS_MODE_UNCHANGED /* FhG: Disables fix for issue 1122 in EVS mode to keep BE tests green. This switch should be removed once the 1122 fix is added to EVS via a CR. */ +#define FIX_1435_MOVE_STEREO_PANNING /* VA: issue 1435: do the EVS stereo panning in the renderer */ +#define FIX_1454_FIX_STEREO_TO_FOA_JBM /* VA: issue 1454: fix buggy stereo to FOA in JBM */ + + /* ##################### End NON-BE switches ########################### */ /* ################## End DEVELOPMENT switches ######################### */ diff --git a/lib_dec/ivas_init_dec.c b/lib_dec/ivas_init_dec.c index ac639b7dbaf021ae5e16bf0007bc0767cfa53c72..babbf33b3b855263d5745ea0ddf5e5c090c2f33d 100644 --- a/lib_dec/ivas_init_dec.c +++ b/lib_dec/ivas_init_dec.c @@ -1444,11 +1444,6 @@ ivas_error ivas_init_decoder( st_ivas->hOutSetup.nchan_out_woLFE = audioCfg2channels( st_ivas->intern_config ); } - if ( st_ivas->ivas_format == MONO_FORMAT || st_ivas->ivas_format == STEREO_FORMAT ) - { - st_ivas->transport_config = ( st_ivas->ivas_format == MONO_FORMAT ) ? IVAS_AUDIO_CONFIG_MONO : IVAS_AUDIO_CONFIG_STEREO; - } - /* Only initialize transport setup if it is used */ if ( st_ivas->transport_config != IVAS_AUDIO_CONFIG_INVALID ) { @@ -1578,6 +1573,7 @@ ivas_error ivas_init_decoder( else if ( st_ivas->ivas_format == STEREO_FORMAT ) { st_ivas->nchan_transport = CPE_CHANNELS; + st_ivas->intern_config = IVAS_AUDIO_CONFIG_STEREO; st_ivas->nSCE = 0; st_ivas->nCPE = 1; /* in stereo, there is always only one CPE */ diff --git a/lib_dec/ivas_jbm_dec.c b/lib_dec/ivas_jbm_dec.c index 91f1cf49e2d853fceb25fdae3a84611ecb68c4f7..4f0acd6364146159ca3e5610cdc56ffe963bf89d 100644 --- a/lib_dec/ivas_jbm_dec.c +++ b/lib_dec/ivas_jbm_dec.c @@ -927,6 +927,8 @@ ivas_error ivas_jbm_dec_render( * Rendering *----------------------------------------------------------------*/ + *nSamplesRendered = min( st_ivas->hTcBuffer->n_samples_available, nSamplesAskedLocal ); + if ( st_ivas->ivas_format == UNDEFINED_FORMAT ) { assert( 0 ); @@ -937,30 +939,24 @@ ivas_error ivas_jbm_dec_render( } else if ( st_ivas->ivas_format == MONO_FORMAT || st_ivas->ivas_format == STEREO_FORMAT ) { - *nSamplesRendered = min( st_ivas->hTcBuffer->n_samples_available, nSamplesAskedLocal ); - /* Rendering */ if ( st_ivas->renderer_type == RENDERER_MC ) { ivas_ls_setup_conversion( st_ivas, st_ivas->nchan_transport, *nSamplesRendered, p_tc, p_output ); } +#ifdef FIX_1435_MOVE_STEREO_PANNING + else if ( st_ivas->renderer_type == RENDERER_NON_DIEGETIC_DOWNMIX ) + { + ivas_apply_non_diegetic_panning( p_tc[0], p_output, st_ivas->hDecoderConfig->non_diegetic_pan_gain, *nSamplesRendered ); + } +#endif else if ( st_ivas->renderer_type == RENDERER_SBA_LINEAR_ENC ) { - if ( st_ivas->ivas_format == MONO_FORMAT ) - { - /* routed to W */ - ivas_jbm_dec_tc_buffer_playout( st_ivas, nSamplesAskedLocal, nSamplesRendered, p_output ); - } - else if ( st_ivas->ivas_format == STEREO_FORMAT ) - { - for ( n = 0; n < *nSamplesRendered; n++ ) - { - float tmp; - tmp = p_output[0][n]; - p_output[0][n] = 0.5f * ( tmp + p_output[1][n] ); /* W = 0.5 * ( L + R ) */ - p_output[1][n] = 0.5f * ( tmp - p_output[1][n] ); /* Y = 0.5 * ( L - R ) */ - } - } +#ifdef FIX_1454_FIX_STEREO_TO_FOA_JBM + ivas_stereo2sba( p_tc, p_output, *nSamplesRendered ); +#else + ivas_stereo2sba( p_output, p_output, *nSamplesRendered ); +#endif } } else if ( st_ivas->ivas_format == ISM_FORMAT ) @@ -985,8 +981,6 @@ ivas_error ivas_jbm_dec_render( } else /* ISM_MODE_DISC */ { - *nSamplesRendered = min( st_ivas->hTcBuffer->n_samples_available, nSamplesAskedLocal ); - /* Loudspeaker or Ambisonics rendering */ if ( st_ivas->renderer_type == RENDERER_TD_PANNING || st_ivas->renderer_type == RENDERER_BINAURAL_MIXER_CONV_ROOM ) { @@ -1103,8 +1097,6 @@ ivas_error ivas_jbm_dec_render( } else if ( st_ivas->renderer_type == RENDERER_OSBA_STEREO ) { - *nSamplesRendered = min( st_ivas->hTcBuffer->n_samples_available, nSamplesAskedLocal ); - /* shift SBA channels to avoid overwrite by ISM upmix in 1 object case and non-TSM unified channel memory*/ if ( st_ivas->nchan_ism == 1 && st_ivas->hDecoderConfig->Opt_tsm == 0 ) { @@ -1187,7 +1179,7 @@ ivas_error ivas_jbm_dec_render( if ( st_ivas->mc_mode == MC_MODE_MCT ) { int16_t crendInPlaceRotation = FALSE; - *nSamplesRendered = min( st_ivas->hTcBuffer->n_samples_available, nSamplesAskedLocal ); + if ( st_ivas->transport_config != st_ivas->intern_config && ( st_ivas->intern_config == IVAS_AUDIO_CONFIG_FOA || st_ivas->intern_config == IVAS_AUDIO_CONFIG_HOA2 || st_ivas->intern_config == IVAS_AUDIO_CONFIG_HOA3 ) ) { if ( ( st_ivas->hTransSetup.nchan_out_woLFE + st_ivas->hTransSetup.num_lfe ) < ( st_ivas->hIntSetup.nchan_out_woLFE + st_ivas->hIntSetup.num_lfe ) ) @@ -1221,7 +1213,6 @@ ivas_error ivas_jbm_dec_render( } else if ( st_ivas->renderer_type == RENDERER_MC ) { - *nSamplesRendered = min( st_ivas->hTcBuffer->n_samples_available, nSamplesAskedLocal ); ivas_ls_setup_conversion( st_ivas, st_ivas->nchan_transport, *nSamplesRendered, p_tc, p_output ); } else if ( st_ivas->renderer_type == RENDERER_SBA_LINEAR_ENC ) @@ -1948,7 +1939,15 @@ int16_t ivas_jbm_dec_get_num_tc_channels( ivas_total_brate = st_ivas->hDecoderConfig->ivas_total_brate; +#ifdef FIX_1435_MOVE_STEREO_PANNING + if ( st_ivas->ivas_format == MONO_FORMAT ) + { + num_tc = 1; + } + else if ( st_ivas->ivas_format == STEREO_FORMAT && st_ivas->hDecoderConfig->nchan_out == 1 ) +#else if ( st_ivas->ivas_format == STEREO_FORMAT && st_ivas->hDecoderConfig->nchan_out == 1 ) +#endif { num_tc = 1; } @@ -2056,10 +2055,12 @@ int16_t ivas_jbm_dec_get_num_tc_channels( } } } +#ifndef FIX_1435_MOVE_STEREO_PANNING else if ( st_ivas->ivas_format == MONO_FORMAT && st_ivas->renderer_type == RENDERER_NON_DIEGETIC_DOWNMIX ) { num_tc = MAX_OUTPUT_CHANNELS_IN_DIEGETIC_PAN; } +#endif return num_tc; } @@ -2517,6 +2518,9 @@ TC_BUFFER_MODE ivas_jbm_dec_get_tc_buffer_mode( case RENDERER_MONO_DOWNMIX: buffer_mode = TC_BUFFER_MODE_BUFFER; break; +#ifdef FIX_1435_MOVE_STEREO_PANNING + case RENDERER_NON_DIEGETIC_DOWNMIX: +#endif case RENDERER_TD_PANNING: case RENDERER_BINAURAL_OBJECTS_TD: case RENDERER_BINAURAL_FASTCONV: @@ -2534,6 +2538,7 @@ TC_BUFFER_MODE ivas_jbm_dec_get_tc_buffer_mode( case RENDERER_OSBA_LS: buffer_mode = TC_BUFFER_MODE_RENDERER; break; +#ifndef FIX_1435_MOVE_STEREO_PANNING case RENDERER_NON_DIEGETIC_DOWNMIX: if ( st_ivas->ivas_format == MONO_FORMAT ) { @@ -2543,6 +2548,7 @@ TC_BUFFER_MODE ivas_jbm_dec_get_tc_buffer_mode( { buffer_mode = TC_BUFFER_MODE_RENDERER; } +#endif break; case RENDERER_MC_PARAMMC: if ( st_ivas->hParamMC->synthesis_conf == PARAM_MC_SYNTH_MONO_STEREO ) diff --git a/lib_dec/ivas_mono_dmx_renderer.c b/lib_dec/ivas_mono_dmx_renderer.c index 40ae744154afeed3afacbeb54cc644809b73c3ce..0715e7568ae7bec6434b84caf9f9e10f9796fd52 100644 --- a/lib_dec/ivas_mono_dmx_renderer.c +++ b/lib_dec/ivas_mono_dmx_renderer.c @@ -221,10 +221,10 @@ void ivas_mono_stereo_downmix_mcmasa( *------------------------------------------------------------------------*/ void ivas_apply_non_diegetic_panning( - float *input_f, /* i : non-diegetic object */ - float *output_f[], /* o : core-coder transport mono channel/stereo output */ - const float non_diegetic_pan_gain, /* i : non-diegetic panning gain */ - const int16_t output_frame /* i : output frame length per channel */ + float *input_f, /* i : non-diegetic object (mono channel) */ + float *output_f[], /* o : stereo output channels */ + const float non_diegetic_pan_gain, /* i : non-diegetic panning gain */ + const int16_t output_frame /* i : output frame length per channel */ ) { float pan_left, pan_right; diff --git a/lib_dec/ivas_output_config.c b/lib_dec/ivas_output_config.c index 1f66f3f3089886b6608e892f383aa747f33f7796..14a56f8adf32dcb400dea893f7e5a930888d936c 100644 --- a/lib_dec/ivas_output_config.c +++ b/lib_dec/ivas_output_config.c @@ -42,26 +42,6 @@ #include "wmc_auto.h" -static void ms_bin_upmix_renderer_select( - const IVAS_FORMAT ivas_format, /* i : Decoder format */ - IVAS_AUDIO_CONFIG *internal_config, /* o : Internal configuration for rendering */ - RENDERER_TYPE *renderer_type /* o : Selected renderer type */ -) -{ - - *internal_config = ( ivas_format == MONO_FORMAT ) ? IVAS_AUDIO_CONFIG_MONO : IVAS_AUDIO_CONFIG_STEREO; - - if ( ivas_format == MONO_FORMAT ) - { - *renderer_type = RENDERER_NON_DIEGETIC_DOWNMIX; - } - else - { - *renderer_type = RENDERER_DISABLE; - } - return; -} - /*-------------------------------------------------------------------------* * ivas_renderer_select() * @@ -98,11 +78,13 @@ void ivas_renderer_select( if ( output_config == IVAS_AUDIO_CONFIG_BINAURAL || output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR || output_config == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB || output_config == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED || output_config == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) { - if ( st_ivas->ivas_format == MONO_FORMAT || st_ivas->ivas_format == STEREO_FORMAT ) + if ( st_ivas->ivas_format == MONO_FORMAT ) { - ms_bin_upmix_renderer_select( st_ivas->ivas_format, - internal_config, - renderer_type ); + *renderer_type = RENDERER_NON_DIEGETIC_DOWNMIX; + } + else if ( st_ivas->ivas_format == STEREO_FORMAT ) + { + *renderer_type = RENDERER_DISABLE; } else if ( st_ivas->ivas_format == ISM_FORMAT ) { @@ -246,41 +228,15 @@ void ivas_renderer_select( * Non-binaural rendering configurations *-----------------------------------------------------------------*/ - else if ( st_ivas->ivas_format == MONO_FORMAT || st_ivas->ivas_format == STEREO_FORMAT ) + else if ( st_ivas->ivas_format == MONO_FORMAT ) { - *internal_config = ( st_ivas->ivas_format == MONO_FORMAT ) ? IVAS_AUDIO_CONFIG_MONO : IVAS_AUDIO_CONFIG_STEREO; - switch ( output_config ) + if ( output_config == IVAS_AUDIO_CONFIG_STEREO ) { - case IVAS_AUDIO_CONFIG_FOA: - case IVAS_AUDIO_CONFIG_HOA2: - case IVAS_AUDIO_CONFIG_HOA3: - *renderer_type = RENDERER_SBA_LINEAR_ENC; - break; - case IVAS_AUDIO_CONFIG_5_1: - case IVAS_AUDIO_CONFIG_7_1: - case IVAS_AUDIO_CONFIG_5_1_2: - case IVAS_AUDIO_CONFIG_5_1_4: - case IVAS_AUDIO_CONFIG_7_1_4: - case IVAS_AUDIO_CONFIG_LS_CUSTOM: - *renderer_type = RENDERER_MC; - break; - case IVAS_AUDIO_CONFIG_MONO: - if ( *internal_config == IVAS_AUDIO_CONFIG_STEREO ) - { - /* stereo to mono downmix */ - *renderer_type = RENDERER_MC; - } - break; - case IVAS_AUDIO_CONFIG_STEREO: - if ( *internal_config == IVAS_AUDIO_CONFIG_MONO ) - { - /* mono to stereo upmix */ - *renderer_type = RENDERER_NON_DIEGETIC_DOWNMIX; - } - break; - default: - /* RENDERER_DISABLE already set by default */ - break; + *renderer_type = RENDERER_NON_DIEGETIC_DOWNMIX; + } + else if ( output_config == IVAS_AUDIO_CONFIG_5_1 || output_config == IVAS_AUDIO_CONFIG_5_1_2 || output_config == IVAS_AUDIO_CONFIG_5_1_4 || output_config == IVAS_AUDIO_CONFIG_7_1 || output_config == IVAS_AUDIO_CONFIG_7_1_4 || output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM ) + { + *renderer_type = RENDERER_MC; } } else if ( st_ivas->ivas_format == ISM_FORMAT ) diff --git a/lib_dec/ivas_sba_rendering_internal.c b/lib_dec/ivas_sba_rendering_internal.c index 8538411328524c0103695b93bfd5af13ef2d1ba1..42278979d2ab3b193d7e04bc5af8ddf87c666a4c 100644 --- a/lib_dec/ivas_sba_rendering_internal.c +++ b/lib_dec/ivas_sba_rendering_internal.c @@ -210,6 +210,32 @@ void ivas_mc2sba( } +/*-------------------------------------------------------------------------* + * ivas_stereo2sba() + * + * stereo signal is transformed into SBA in TD domain + *-------------------------------------------------------------------------*/ + +void ivas_stereo2sba( + float *input_f[], /* i : core-coder transport stereo channels */ + float *output_f[], /* o : SBA output channels */ + const int16_t output_frame /* i : output frame length per channel */ +) +{ + int16_t n; + float tmp; + + for ( n = 0; n < output_frame; n++ ) + { + tmp = input_f[0][n]; + output_f[0][n] = 0.5f * ( tmp + input_f[1][n] ); /* W = 0.5 * ( L + R ) */ + output_f[1][n] = 0.5f * ( tmp - input_f[1][n] ); /* Y = 0.5 * ( L - R ) */ + } + + return; +} + + /*-------------------------------------------------------------------------* * ivas_param_mc_mc2sba_cldfb() * diff --git a/lib_dec/lib_dec.c b/lib_dec/lib_dec.c index b6b8efc3a5cdfca8769acdc2a609b262e9052dcf..f87786b01ccafeaeb1e75bf5435d921d179280e9 100644 --- a/lib_dec/lib_dec.c +++ b/lib_dec/lib_dec.c @@ -871,6 +871,7 @@ ivas_error IVAS_DEC_FeedFrame_Serial( if ( hIvasDec->mode == IVAS_DEC_MODE_EVS ) { hIvasDec->st_ivas->hDecoderConfig->ivas_total_brate = ACELP_8k00; + hIvasDec->st_ivas->transport_config = IVAS_AUDIO_CONFIG_MONO; if ( ( error = ivas_init_decoder( hIvasDec->st_ivas ) ) != IVAS_ERR_OK ) { @@ -2203,6 +2204,9 @@ static ivas_error ivas_dec_setup_all( if ( hIvasDec->mode == IVAS_DEC_MODE_EVS ) { +#ifdef FIX_1435_MOVE_STEREO_PANNING + *nTransportChannels = 1; +#else if ( hIvasDec->st_ivas->renderer_type == RENDERER_NON_DIEGETIC_DOWNMIX ) { *nTransportChannels = MAX_OUTPUT_CHANNELS_IN_DIEGETIC_PAN; @@ -2211,6 +2215,7 @@ static ivas_error ivas_dec_setup_all( { *nTransportChannels = 1; } +#endif } else { @@ -4788,9 +4793,14 @@ static ivas_error evs_dec_main( ) { DEC_CORE_HANDLE *hCoreCoder; +#ifndef FIX_1435_MOVE_STEREO_PANNING float mixer_left, mixer_rigth; float *p_output[MAX_TRANSPORT_CHANNELS]; int16_t ch, nOutSamples; +#else + float *p_output[1]; + int16_t nOutSamples; +#endif ivas_error error; hCoreCoder = st_ivas->hSCE[0]->hCoreCoder; @@ -4799,6 +4809,9 @@ static ivas_error evs_dec_main( mdct_switching_dec( hCoreCoder[0] ); +#ifdef FIX_1435_MOVE_STEREO_PANNING + p_output[0] = st_ivas->p_output_f[0]; +#else for ( ch = 0; ch < MAX_TRANSPORT_CHANNELS; ch++ ) { p_output[ch] = st_ivas->p_output_f[ch]; @@ -4807,6 +4820,7 @@ static ivas_error evs_dec_main( set_zero( p_output[ch], L_FRAME48k ); } } +#endif /* run the main EVS decoding routine */ if ( hCoreCoder[0]->codec_mode == MODE1 ) @@ -4853,6 +4867,7 @@ static ivas_error evs_dec_main( st_ivas->BER_detect = hCoreCoder[0]->BER_detect; +#ifndef FIX_1435_MOVE_STEREO_PANNING if ( st_ivas->renderer_type == RENDERER_NON_DIEGETIC_DOWNMIX ) { mixer_left = ( st_ivas->hDecoderConfig->non_diegetic_pan_gain + 1.f ) * 0.5f; @@ -4860,21 +4875,16 @@ static ivas_error evs_dec_main( v_multc( p_output[0], mixer_rigth, p_output[1], nOutSamples ); v_multc( p_output[0], mixer_left, p_output[0], nOutSamples ); } - - if ( st_ivas->hDecoderConfig->Opt_tsm && st_ivas->hDecoderConfig->nchan_out == 1 ) +#endif + if ( st_ivas->hDecoderConfig->Opt_tsm && st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_MONO ) { /* BE workaround: in order to keep EVS bit-exact wrt. TS 26.443, convert 'float' output data to 'short' before the TSM */ int16_t pcm_buf_local[L_FRAME48k]; - - for ( ch = 0; ch < st_ivas->hDecoderConfig->nchan_out; ch++ ) - { #ifdef DEBUGGING - st_ivas->noClipping += + st_ivas->noClipping += #endif - ivas_syn_output( &p_output[ch], nOutSamples, 1, pcm_buf_local ); - - mvs2r( pcm_buf_local, p_output[ch], nOutSamples ); - } + ivas_syn_output( &p_output[0], nOutSamples, 1, pcm_buf_local ); + mvs2r( pcm_buf_local, p_output[0], nOutSamples ); } return IVAS_ERR_OK; diff --git a/scripts/config/self_test.prm b/scripts/config/self_test.prm index 588495b7838d53f9d07a9932606153f8c786be92..83196d65cef0bb67f9eb205b645c0432d9650e08 100644 --- a/scripts/config/self_test.prm +++ b/scripts/config/self_test.prm @@ -1585,6 +1585,11 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 networkSimulator_g192 ../scripts/dly_error_profiles/dly_error_profile_0.dat bit netsimoutput tracefile_sim 2 0 ../IVAS_dec -no_delay_cmp -Tracefile tracefile_dec -VOIP STEREO 32 netsimoutput testv/stvST48n.wav_stereo_32000_48-32_DTX_JBM0.tst +// stereo at 64 kbps, 48 kHz in, 48 kHz out, FOA out, JBM Prof 5 +../IVAS_cod -stereo 64000 48 testv/stvST48c.wav bit +networkSimulator_g192 ../scripts/dly_error_profiles/dly_error_profile_5.dat bit netsimoutput tracefile_sim 2 0 +../IVAS_dec -no_delay_cmp -Tracefile tracefile_dec -VOIP FOA 48 netsimoutput testv/stvST48c.wav_stereo_64000_48-48_FOA_JBM5.tst + // 4 ISm with metadata at 64 kbps, 48 kHz in, 48 kHz out, DTX on, EXT out, JBM Prof 0 ../IVAS_cod -dtx -ism 4 testv/stvISM1.csv testv/stvISM2.csv testv/stvISM3.csv testv/stvISM4.csv 64000 48 testv/stv4ISM48n.wav bit networkSimulator_g192 ../scripts/dly_error_profiles/dly_error_profile_0.dat bit netsimoutput tracefile_sim 2 0 diff --git a/scripts/config/self_test_ltv.prm b/scripts/config/self_test_ltv.prm index 5db028d50a55d96e0556acaec84b05ae1ff32d8c..d53637b959fe69448ac7ffe0015291d380a61465 100644 --- a/scripts/config/self_test_ltv.prm +++ b/scripts/config/self_test_ltv.prm @@ -1568,7 +1568,6 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 ../IVAS_dec 48 bit testv/ltv48_STEREO.wav_StereoDmxEVS_24400_48-48.tst - // EVS non-diegetic panning at 64 kbps, 48kHz in, 48kHz out, STEREO out ../IVAS_cod 64000 48 testv/ltv48_MONO.wav bit ../IVAS_dec -non_diegetic_pan -50 48 bit testv/ltv48_MONO.pcm_EVS_64000_48-48_STEREO_NON-DIEGETIC-PAN_-50.tst @@ -1578,12 +1577,16 @@ eid-xor -fer -vbr -bs g192 -ep g192 bit ../scripts/dly_error_profiles/ep_5pct.g1 ../IVAS_dec -non_diegetic_pan 80 STEREO 48 bit testv/ltv48_1ISM.pcm_ISM_32000_48-48_STEREO_NON-DIEGETIC-PAN_80.tst - // stereo at 32 kbps, 48 kHz in, 32 kHz out, DTX on, JBM Prof 0 ../IVAS_cod -stereo -dtx 32000 48 testv/ltv48_STEREO.wav bit networkSimulator_g192 ../scripts/dly_error_profiles/dly_error_profile_0.dat bit netsimoutput tracefile_sim 2 0 ../IVAS_dec -no_delay_cmp -Tracefile tracefile_dec -VOIP STEREO 32 netsimoutput testv/ltv48_STEREO.wav_stereo_32000_48-32_DTX_JBM0.tst +// stereo at 64 kbps, 48 kHz in, 48 kHz out, FOA out, JBM Prof 5 +../IVAS_cod -stereo 64000 48 testv/ltv48_STEREO.wav bit +networkSimulator_g192 ../scripts/dly_error_profiles/dly_error_profile_5.dat bit netsimoutput tracefile_sim 2 0 +../IVAS_dec -no_delay_cmp -Tracefile tracefile_dec -VOIP FOA 48 netsimoutput testv/ltv48_STEREO.wav_stereo_64000_48-48_FOA_JBM5.tst + // 4 ISm with metadata at 64 kbps, 48 kHz in, 48 kHz out, DTX on, EXT out, JBM Prof 0 ../IVAS_cod -dtx -ism 4 testv/ltvISM1.csv testv/ltvISM2.csv testv/ltvISM3.csv testv/ltvISM4.csv 64000 48 testv/ltv48_4ISM.wav bit networkSimulator_g192 ../scripts/dly_error_profiles/dly_error_profile_0.dat bit netsimoutput tracefile_sim 2 0