Loading lib_com/options.h +0 −1 Original line number Diff line number Diff line Loading @@ -178,7 +178,6 @@ /* any switch which is non-be wrt selection floating point code */ /* 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 NONE_BE_FIX_816_LFE_PLC_FLOAT /* DLB: issue 816: reduce required precision to float for LFE-PLC*/ Loading lib_dec/ivas_dirac_dec.c +0 −43 Original line number Diff line number Diff line Loading @@ -2231,40 +2231,22 @@ 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++ ) { #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; #ifndef NONBE_FIX_1141_OSBA_ROOM_RENDERING int16_t interp_offset; #endif float gain, prev_gain; num_objects = st_ivas->nchan_ism; nchan_out_woLFE = st_ivas->hIntSetup.nchan_out_woLFE; n_slots_to_render = st_ivas->hSpar->subframe_nbslots[st_ivas->hSpar->subframes_rendered]; n_samples_to_render = hSpatParamRendCom->num_freq_bands * n_slots_to_render; #ifndef NONBE_FIX_1141_OSBA_ROOM_RENDERING interp_offset = st_ivas->hTcBuffer->n_samples_rendered; #endif if ( st_ivas->hCombinedOrientationData && st_ivas->hCombinedOrientationData->enableCombinedOrientation[0] ) { ivas_jbm_dec_get_adapted_linear_interpolator( n_samples_to_render, n_samples_to_render, st_ivas->hIsmRendererData->interpolator ); #ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING st_ivas->hIsmRendererData->interp_offset = 0; #else interp_offset = 0; #endif } for ( i = 0; i < num_objects; i++ ) Loading @@ -2282,19 +2264,8 @@ void ivas_dirac_dec_render_sf( } } #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]; Loading @@ -2303,11 +2274,7 @@ void ivas_dirac_dec_render_sf( float *tc_re, *tc_im; float *w1, w2; #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]; #endif tc_re = pppQMfFrame_ts_re[nchan_transport + i][0]; tc_im = pppQMfFrame_ts_im[nchan_transport + i][0]; Loading @@ -2321,13 +2288,8 @@ void ivas_dirac_dec_render_sf( for ( l = 0; l < hSpatParamRendCom->num_freq_bands; l++ ) { #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; } Loading @@ -2340,12 +2302,7 @@ 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 } if ( st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED || st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) Loading lib_dec/ivas_ism_param_dec.c +0 −6 Original line number Diff line number Diff line Loading @@ -712,9 +712,7 @@ void ivas_ism_dec_digest_tc( if ( st_ivas->renderer_type == RENDERER_SBA_LINEAR_ENC || st_ivas->renderer_type == RENDERER_OSBA_AMBI || st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV #ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING || ( st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV_ROOM && st_ivas->ivas_format == SBA_ISM_FORMAT && st_ivas->ism_mode == ISM_SBA_MODE_DISC ) #endif ) { st_ivas->hIsmRendererData->interpolator[0] = 0.0f; Loading @@ -735,9 +733,7 @@ void ivas_ism_dec_digest_tc( { ivas_jbm_dec_get_adapted_linear_interpolator( (int16_t) ( st_ivas->hDecoderConfig->output_Fs / FRAMES_PER_SEC ), st_ivas->hTcBuffer->n_samples_available, st_ivas->hIsmRendererData->interpolator ); } #ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING st_ivas->hIsmRendererData->interp_offset = 0; #endif /* also get the gains here */ for ( i = 0; i < st_ivas->nchan_ism; i++ ) Loading Loading @@ -767,9 +763,7 @@ void ivas_ism_dec_digest_tc( if ( ( st_ivas->renderer_type == RENDERER_TD_PANNING || st_ivas->renderer_type == RENDERER_OSBA_LS || st_ivas->renderer_type == RENDERER_BINAURAL_MIXER_CONV_ROOM #ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING || ( st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV_ROOM && st_ivas->ivas_format == SBA_ISM_FORMAT && st_ivas->ism_mode == ISM_SBA_MODE_DISC ) #endif ) && st_ivas->hCombinedOrientationData == NULL ) { Loading lib_dec/ivas_stat_dec.h +0 −2 Original line number Diff line number Diff line Loading @@ -815,9 +815,7 @@ typedef struct renderer_struct float prev_gains[MAX_NUM_OBJECTS][MAX_OUTPUT_CHANNELS]; float *interpolator; int16_t interpolator_length; #ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING int16_t interp_offset; #endif float gains[MAX_NUM_OBJECTS][MAX_OUTPUT_CHANNELS]; } ISM_RENDERER_DATA, *ISM_RENDERER_HANDLE; Loading Loading
lib_com/options.h +0 −1 Original line number Diff line number Diff line Loading @@ -178,7 +178,6 @@ /* any switch which is non-be wrt selection floating point code */ /* 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 NONE_BE_FIX_816_LFE_PLC_FLOAT /* DLB: issue 816: reduce required precision to float for LFE-PLC*/ Loading
lib_dec/ivas_dirac_dec.c +0 −43 Original line number Diff line number Diff line Loading @@ -2231,40 +2231,22 @@ 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++ ) { #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; #ifndef NONBE_FIX_1141_OSBA_ROOM_RENDERING int16_t interp_offset; #endif float gain, prev_gain; num_objects = st_ivas->nchan_ism; nchan_out_woLFE = st_ivas->hIntSetup.nchan_out_woLFE; n_slots_to_render = st_ivas->hSpar->subframe_nbslots[st_ivas->hSpar->subframes_rendered]; n_samples_to_render = hSpatParamRendCom->num_freq_bands * n_slots_to_render; #ifndef NONBE_FIX_1141_OSBA_ROOM_RENDERING interp_offset = st_ivas->hTcBuffer->n_samples_rendered; #endif if ( st_ivas->hCombinedOrientationData && st_ivas->hCombinedOrientationData->enableCombinedOrientation[0] ) { ivas_jbm_dec_get_adapted_linear_interpolator( n_samples_to_render, n_samples_to_render, st_ivas->hIsmRendererData->interpolator ); #ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING st_ivas->hIsmRendererData->interp_offset = 0; #else interp_offset = 0; #endif } for ( i = 0; i < num_objects; i++ ) Loading @@ -2282,19 +2264,8 @@ void ivas_dirac_dec_render_sf( } } #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]; Loading @@ -2303,11 +2274,7 @@ void ivas_dirac_dec_render_sf( float *tc_re, *tc_im; float *w1, w2; #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]; #endif tc_re = pppQMfFrame_ts_re[nchan_transport + i][0]; tc_im = pppQMfFrame_ts_im[nchan_transport + i][0]; Loading @@ -2321,13 +2288,8 @@ void ivas_dirac_dec_render_sf( for ( l = 0; l < hSpatParamRendCom->num_freq_bands; l++ ) { #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; } Loading @@ -2340,12 +2302,7 @@ 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 } if ( st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED || st_ivas->hDecoderConfig->output_config == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) Loading
lib_dec/ivas_ism_param_dec.c +0 −6 Original line number Diff line number Diff line Loading @@ -712,9 +712,7 @@ void ivas_ism_dec_digest_tc( if ( st_ivas->renderer_type == RENDERER_SBA_LINEAR_ENC || st_ivas->renderer_type == RENDERER_OSBA_AMBI || st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV #ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING || ( st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV_ROOM && st_ivas->ivas_format == SBA_ISM_FORMAT && st_ivas->ism_mode == ISM_SBA_MODE_DISC ) #endif ) { st_ivas->hIsmRendererData->interpolator[0] = 0.0f; Loading @@ -735,9 +733,7 @@ void ivas_ism_dec_digest_tc( { ivas_jbm_dec_get_adapted_linear_interpolator( (int16_t) ( st_ivas->hDecoderConfig->output_Fs / FRAMES_PER_SEC ), st_ivas->hTcBuffer->n_samples_available, st_ivas->hIsmRendererData->interpolator ); } #ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING st_ivas->hIsmRendererData->interp_offset = 0; #endif /* also get the gains here */ for ( i = 0; i < st_ivas->nchan_ism; i++ ) Loading Loading @@ -767,9 +763,7 @@ void ivas_ism_dec_digest_tc( if ( ( st_ivas->renderer_type == RENDERER_TD_PANNING || st_ivas->renderer_type == RENDERER_OSBA_LS || st_ivas->renderer_type == RENDERER_BINAURAL_MIXER_CONV_ROOM #ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING || ( st_ivas->renderer_type == RENDERER_BINAURAL_FASTCONV_ROOM && st_ivas->ivas_format == SBA_ISM_FORMAT && st_ivas->ism_mode == ISM_SBA_MODE_DISC ) #endif ) && st_ivas->hCombinedOrientationData == NULL ) { Loading
lib_dec/ivas_stat_dec.h +0 −2 Original line number Diff line number Diff line Loading @@ -815,9 +815,7 @@ typedef struct renderer_struct float prev_gains[MAX_NUM_OBJECTS][MAX_OUTPUT_CHANNELS]; float *interpolator; int16_t interpolator_length; #ifdef NONBE_FIX_1141_OSBA_ROOM_RENDERING int16_t interp_offset; #endif float gains[MAX_NUM_OBJECTS][MAX_OUTPUT_CHANNELS]; } ISM_RENDERER_DATA, *ISM_RENDERER_HANDLE; Loading