Loading lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -135,6 +135,7 @@ #define FIX_1003_PARAMISM_BINAURAL_RECONFIG_USAN /* FhG: fix for #1003: fix USAN caused by ParamISM reconfig */ #define FIX_1001_ARI_HM_OVERFLOW /* FhG: (no changes needed in BASOP) fix for undef behaviour in in the harmonic TCX model arithmetic coder */ #define NONBE_FIX_1005_MC_RS_TCBUFFER_UPDATE /* FhG: issue #1005: fix TC Buffer update at a MC rate switch */ #define NONBE_FIX_1056_ISM_RATE_SWITCH /* FhG: Fix #1056: fix TC buffer udpate on a ISM rate switch */ /* #################### End BASOP porting switches ############################ */ Loading lib_dec/ivas_ism_dec_fx.c +8 −1 Original line number Diff line number Diff line Loading @@ -142,9 +142,16 @@ static ivas_error ivas_ism_bitrate_switching_dec_fx( { test(); test(); #ifndef NONBE_FIX_1056_ISM_RATE_SWITCH test(); #endif /* transfer subframe info from DirAC or ParamMC to central tc buffer */ #ifdef NONBE_FIX_1056_ISM_RATE_SWITCH /* only do this if we are not having done everything already in the TC decoding part and having only played out from the TC buffer */ IF( EQ_32( last_ism_mode, ISM_MODE_PARAM ) && st_ivas->hSpatParamRendCom != NULL && NE_32( st_ivas->hTcBuffer->tc_buffer_mode, TC_BUFFER_MODE_BUFFER ) ) #else IF( EQ_32( last_ism_mode, ISM_MODE_PARAM ) && st_ivas->hSpatParamRendCom != NULL && ( NE_32( st_ivas->renderer_type, RENDERER_MONO_DOWNMIX ) && NE_32( st_ivas->renderer_type, RENDERER_DISABLE ) ) ) #endif { st_ivas->hTcBuffer->nb_subframes = st_ivas->hSpatParamRendCom->nb_subframes; move16(); Loading lib_dec/ivas_jbm_dec_fx.c +3 −0 Original line number Diff line number Diff line Loading @@ -3843,6 +3843,9 @@ static void ivas_jbm_dec_tc_buffer_playout_fx( slots_to_render = sub( slots_to_render, st_ivas->hTcBuffer->subframe_nbslots[last_sf] ); last_sf = add( last_sf, 1 ); } #ifdef DEBUGGING assert( slots_to_render == 0 ); #endif FOR( ch_idx = 0; ch_idx < st_ivas->hTcBuffer->nchan_transport_jbm; ch_idx++ ) { Loading Loading
lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -135,6 +135,7 @@ #define FIX_1003_PARAMISM_BINAURAL_RECONFIG_USAN /* FhG: fix for #1003: fix USAN caused by ParamISM reconfig */ #define FIX_1001_ARI_HM_OVERFLOW /* FhG: (no changes needed in BASOP) fix for undef behaviour in in the harmonic TCX model arithmetic coder */ #define NONBE_FIX_1005_MC_RS_TCBUFFER_UPDATE /* FhG: issue #1005: fix TC Buffer update at a MC rate switch */ #define NONBE_FIX_1056_ISM_RATE_SWITCH /* FhG: Fix #1056: fix TC buffer udpate on a ISM rate switch */ /* #################### End BASOP porting switches ############################ */ Loading
lib_dec/ivas_ism_dec_fx.c +8 −1 Original line number Diff line number Diff line Loading @@ -142,9 +142,16 @@ static ivas_error ivas_ism_bitrate_switching_dec_fx( { test(); test(); #ifndef NONBE_FIX_1056_ISM_RATE_SWITCH test(); #endif /* transfer subframe info from DirAC or ParamMC to central tc buffer */ #ifdef NONBE_FIX_1056_ISM_RATE_SWITCH /* only do this if we are not having done everything already in the TC decoding part and having only played out from the TC buffer */ IF( EQ_32( last_ism_mode, ISM_MODE_PARAM ) && st_ivas->hSpatParamRendCom != NULL && NE_32( st_ivas->hTcBuffer->tc_buffer_mode, TC_BUFFER_MODE_BUFFER ) ) #else IF( EQ_32( last_ism_mode, ISM_MODE_PARAM ) && st_ivas->hSpatParamRendCom != NULL && ( NE_32( st_ivas->renderer_type, RENDERER_MONO_DOWNMIX ) && NE_32( st_ivas->renderer_type, RENDERER_DISABLE ) ) ) #endif { st_ivas->hTcBuffer->nb_subframes = st_ivas->hSpatParamRendCom->nb_subframes; move16(); Loading
lib_dec/ivas_jbm_dec_fx.c +3 −0 Original line number Diff line number Diff line Loading @@ -3843,6 +3843,9 @@ static void ivas_jbm_dec_tc_buffer_playout_fx( slots_to_render = sub( slots_to_render, st_ivas->hTcBuffer->subframe_nbslots[last_sf] ); last_sf = add( last_sf, 1 ); } #ifdef DEBUGGING assert( slots_to_render == 0 ); #endif FOR( ch_idx = 0; ch_idx < st_ivas->hTcBuffer->nchan_transport_jbm; ch_idx++ ) { Loading