Commit f8f64953 authored by Dominik Weckbecker's avatar Dominik Weckbecker 💬
Browse files

resolve decoder hang-up with OSBA JBM to BINAURAL_FASTCONV_ROOM

parent 7887d6c9
Loading
Loading
Loading
Loading
Loading
+11 −2
Original line number Diff line number Diff line
@@ -858,7 +858,12 @@ ivas_error ivas_jbm_dec_feed_tc_to_renderer(
            ivas_ism_dec_digest_tc( st_ivas );

            /* delay the objects here for all renderers where it is needed */
            if ( st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV || st_ivas->renderer_type == RENDERER_OSBA_AMBI || st_ivas->renderer_type == RENDERER_OSBA_LS || st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_EXTERNAL )
            if ( st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV || 
				 st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV_ROOM || 
				 st_ivas->renderer_type == RENDERER_OSBA_AMBI || 
				 st_ivas->renderer_type == RENDERER_OSBA_LS || 
				 st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_EXTERNAL 
				)
            {
                for ( n = 0; n < st_ivas->nchan_ism; n++ )
                {
@@ -1194,7 +1199,11 @@ ivas_error ivas_jbm_dec_render(
                    v_add( p_output[n], p_tc[n + st_ivas->nchan_ism], p_output[n], *nSamplesRendered );
                }
            }
            else if ( st_ivas->renderer_type == RENDERER_OSBA_AMBI || st_ivas->renderer_type == RENDERER_OSBA_LS )
            else if ( st_ivas->renderer_type == RENDERER_OSBA_AMBI || st_ivas->renderer_type == RENDERER_OSBA_LS 
#ifdef JBM_FOR_OSBA
				 || st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV_ROOM
#endif
				)
            {
                float output_ism[MAX_OUTPUT_CHANNELS][L_FRAME48k];
                float *p_output_ism[MAX_OUTPUT_CHANNELS];
+1 −1
Original line number Diff line number Diff line
@@ -269,7 +269,7 @@ ivas_error ivas_spar_dec_open(
        }

#ifdef JBM_FOR_OSBA
        if ( st_ivas->ivas_format == SBA_ISM_FORMAT && ( st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL || st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL_ROOM_IR || st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) && st_ivas->ism_mode == ISM_SBA_MODE_DISC )
        if ( st_ivas->ivas_format == SBA_ISM_FORMAT && ( st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL || st_ivas->hDecoderConfig->output_config == AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) && 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 ) );