Loading lib_com/options.h +2 −0 Original line number Diff line number Diff line Loading @@ -220,6 +220,8 @@ #define COMPLEXITY_LEVEL_INDICATION #define FIX_642 /* FhG: Fix for issue 642, buggy DoA-array access in DirAC head rotation*/ #define VARIABLE_SPEED_DECODING /* FhG: variable speed decoding employing the JBM functioniality */ #define JBM_TSM_ON_TCS /* FhG: run the TSM part of JBM on the TCs instead of the final output pcm waveforms */ Loading lib_dec/ivas_dirac_dec.c +8 −3 Original line number Diff line number Diff line Loading @@ -2922,6 +2922,7 @@ void ivas_dirac_dec_render_sf( #endif #ifdef JBM_TSM_ON_TCS /* Another workaround for self test BE */ #ifndef FIX_642 if ( st_ivas->hHeadTrackData && st_ivas->hDecoderConfig->voip_active == 0 ) { QuatToRotMat( st_ivas->hHeadTrackData->Quaternions[st_ivas->hHeadTrackData->num_quaternions++], st_ivas->hHeadTrackData->Rmat ); Loading @@ -2942,6 +2943,7 @@ void ivas_dirac_dec_render_sf( { p_Rmat = 0; } #endif /* copy parameters into local buffers*/ Loading Loading @@ -2976,7 +2978,11 @@ void ivas_dirac_dec_render_sf( } #ifdef JBM_TSM_ON_TCS if ( st_ivas->hHeadTrackData && st_ivas->hDecoderConfig->voip_active == 1 ) if ( st_ivas->hHeadTrackData #ifndef FIX_642 && st_ivas->hDecoderConfig->voip_active == 1 #endif ) #else if ( st_ivas->hHeadTrackData ) #endif Loading @@ -2996,7 +3002,6 @@ void ivas_dirac_dec_render_sf( { #ifdef JBM_TSM_ON_TCS rotateAziEle_DirAC( azimuth[slot_idx], elevation[slot_idx], num_freq_bands, hDirAC->num_freq_bands, p_Rmat ); #else /* note, this seems wrong since it does not take the dirac read ptr into account */ index_slot = subframe_idx * hDirAC->subframe_nbslots + slot_idx; Loading @@ -3006,7 +3011,7 @@ void ivas_dirac_dec_render_sf( } } } #ifdef JBM_TSM_ON_TCS #if defined( JBM_TSM_ON_TCS ) & !defined( FIX_642 ) else if ( !st_ivas->hHeadTrackData ) #else else Loading Loading
lib_com/options.h +2 −0 Original line number Diff line number Diff line Loading @@ -220,6 +220,8 @@ #define COMPLEXITY_LEVEL_INDICATION #define FIX_642 /* FhG: Fix for issue 642, buggy DoA-array access in DirAC head rotation*/ #define VARIABLE_SPEED_DECODING /* FhG: variable speed decoding employing the JBM functioniality */ #define JBM_TSM_ON_TCS /* FhG: run the TSM part of JBM on the TCs instead of the final output pcm waveforms */ Loading
lib_dec/ivas_dirac_dec.c +8 −3 Original line number Diff line number Diff line Loading @@ -2922,6 +2922,7 @@ void ivas_dirac_dec_render_sf( #endif #ifdef JBM_TSM_ON_TCS /* Another workaround for self test BE */ #ifndef FIX_642 if ( st_ivas->hHeadTrackData && st_ivas->hDecoderConfig->voip_active == 0 ) { QuatToRotMat( st_ivas->hHeadTrackData->Quaternions[st_ivas->hHeadTrackData->num_quaternions++], st_ivas->hHeadTrackData->Rmat ); Loading @@ -2942,6 +2943,7 @@ void ivas_dirac_dec_render_sf( { p_Rmat = 0; } #endif /* copy parameters into local buffers*/ Loading Loading @@ -2976,7 +2978,11 @@ void ivas_dirac_dec_render_sf( } #ifdef JBM_TSM_ON_TCS if ( st_ivas->hHeadTrackData && st_ivas->hDecoderConfig->voip_active == 1 ) if ( st_ivas->hHeadTrackData #ifndef FIX_642 && st_ivas->hDecoderConfig->voip_active == 1 #endif ) #else if ( st_ivas->hHeadTrackData ) #endif Loading @@ -2996,7 +3002,6 @@ void ivas_dirac_dec_render_sf( { #ifdef JBM_TSM_ON_TCS rotateAziEle_DirAC( azimuth[slot_idx], elevation[slot_idx], num_freq_bands, hDirAC->num_freq_bands, p_Rmat ); #else /* note, this seems wrong since it does not take the dirac read ptr into account */ index_slot = subframe_idx * hDirAC->subframe_nbslots + slot_idx; Loading @@ -3006,7 +3011,7 @@ void ivas_dirac_dec_render_sf( } } } #ifdef JBM_TSM_ON_TCS #if defined( JBM_TSM_ON_TCS ) & !defined( FIX_642 ) else if ( !st_ivas->hHeadTrackData ) #else else Loading