Loading lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -113,6 +113,7 @@ #define FIX_1872_REMOVE_UNUSED_PSNOISEGEN_ISAR /* Dolby: Remove unused psNoiseGen from ISAR */ #define FIX_1478_UNINIT_ON_BFI /* VA: Fix issue 1478 where a vector is partly un-initialized during bfi */ #define FIX_1487_ACCESS_OF_UNINIT_VAL_FROM_ARR_ISM_DTX /* FhG/VA: init nb_bits_metadata to zero */ #define FIX_1486_INIT_OUTPUT_POINTERS /* FhG: always initialize pointers in renderer flush */ /* #################### End BE switches ################################## */ Loading lib_dec/ivas_jbm_dec_fx.c +15 −0 Original line number Diff line number Diff line Loading @@ -2461,12 +2461,23 @@ ivas_error ivas_jbm_dec_flush_renderer_fx( DECODER_TC_BUFFER_HANDLE hTcBuffer; Word32 *p_output_fx[MAX_LS_CHANNELS + MAX_NUM_OBJECTS]; Word16 nchan_in, nchan_out; #ifdef FIX_1486_INIT_OUTPUT_POINTERS int16_t ch_idx; #endif IF( !st_ivas->hDecoderConfig->Opt_tsm ) { return IVAS_ERR_OK; } #ifdef FIX_1486_INIT_OUTPUT_POINTERS FOR( ch_idx = 0; ch_idx < ( MAX_OUTPUT_CHANNELS + MAX_NUM_OBJECTS ); ch_idx++ ) { p_output_fx[ch_idx] = st_ivas->p_output_fx[ch_idx]; } #endif *nSamplesRendered = 0; move16(); hTcBuffer = st_ivas->hTcBuffer; Loading @@ -2492,7 +2503,9 @@ ivas_error ivas_jbm_dec_flush_renderer_fx( IF( n_slots_still_available ) { #ifndef FIX_1486_INIT_OUTPUT_POINTERS Word16 ch_idx; #endif /* render available full slots (with new lower granularity) */ FOR( ch_idx = 0; ch_idx < s_max( hTcBuffer->nchan_transport_rend, hTcBuffer->nchan_buffer_full ); ch_idx++ ) Loading Loading @@ -2522,10 +2535,12 @@ ivas_error ivas_jbm_dec_flush_renderer_fx( move16(); move16(); #ifndef FIX_1486_INIT_OUTPUT_POINTERS FOR( ch_idx = 0; ch_idx < ( MAX_OUTPUT_CHANNELS + MAX_NUM_OBJECTS ); ch_idx++ ) { p_output_fx[ch_idx] = st_ivas->p_output_fx[ch_idx]; } #endif test(); IF( EQ_16( st_ivas->ivas_format, ISM_FORMAT ) ) Loading Loading
lib_com/options.h +1 −0 Original line number Diff line number Diff line Loading @@ -113,6 +113,7 @@ #define FIX_1872_REMOVE_UNUSED_PSNOISEGEN_ISAR /* Dolby: Remove unused psNoiseGen from ISAR */ #define FIX_1478_UNINIT_ON_BFI /* VA: Fix issue 1478 where a vector is partly un-initialized during bfi */ #define FIX_1487_ACCESS_OF_UNINIT_VAL_FROM_ARR_ISM_DTX /* FhG/VA: init nb_bits_metadata to zero */ #define FIX_1486_INIT_OUTPUT_POINTERS /* FhG: always initialize pointers in renderer flush */ /* #################### End BE switches ################################## */ Loading
lib_dec/ivas_jbm_dec_fx.c +15 −0 Original line number Diff line number Diff line Loading @@ -2461,12 +2461,23 @@ ivas_error ivas_jbm_dec_flush_renderer_fx( DECODER_TC_BUFFER_HANDLE hTcBuffer; Word32 *p_output_fx[MAX_LS_CHANNELS + MAX_NUM_OBJECTS]; Word16 nchan_in, nchan_out; #ifdef FIX_1486_INIT_OUTPUT_POINTERS int16_t ch_idx; #endif IF( !st_ivas->hDecoderConfig->Opt_tsm ) { return IVAS_ERR_OK; } #ifdef FIX_1486_INIT_OUTPUT_POINTERS FOR( ch_idx = 0; ch_idx < ( MAX_OUTPUT_CHANNELS + MAX_NUM_OBJECTS ); ch_idx++ ) { p_output_fx[ch_idx] = st_ivas->p_output_fx[ch_idx]; } #endif *nSamplesRendered = 0; move16(); hTcBuffer = st_ivas->hTcBuffer; Loading @@ -2492,7 +2503,9 @@ ivas_error ivas_jbm_dec_flush_renderer_fx( IF( n_slots_still_available ) { #ifndef FIX_1486_INIT_OUTPUT_POINTERS Word16 ch_idx; #endif /* render available full slots (with new lower granularity) */ FOR( ch_idx = 0; ch_idx < s_max( hTcBuffer->nchan_transport_rend, hTcBuffer->nchan_buffer_full ); ch_idx++ ) Loading Loading @@ -2522,10 +2535,12 @@ ivas_error ivas_jbm_dec_flush_renderer_fx( move16(); move16(); #ifndef FIX_1486_INIT_OUTPUT_POINTERS FOR( ch_idx = 0; ch_idx < ( MAX_OUTPUT_CHANNELS + MAX_NUM_OBJECTS ); ch_idx++ ) { p_output_fx[ch_idx] = st_ivas->p_output_fx[ch_idx]; } #endif test(); IF( EQ_16( st_ivas->ivas_format, ISM_FORMAT ) ) Loading