Commit 585248be authored by vaclav's avatar vaclav
Browse files

unify *p_tc[] pointers; under UNIFIED_DECODING_PATHS_LEFTOVERS

parent 9788022b
Loading
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
@@ -1375,7 +1375,9 @@ ivas_error ivas_jbm_dec_render(
        }
        else if ( st_ivas->mc_mode == MC_MODE_MCMASA )
        {
#ifndef UNIFIED_DECODING_PATHS_LEFTOVERS
            int16_t offset = hSpatParamRendCom->slots_rendered * hSpatParamRendCom->slot_size;
#endif
            nchan_remapped = st_ivas->nchan_transport;
            if ( st_ivas->renderer_type == RENDERER_BINAURAL_PARAMETRIC || st_ivas->renderer_type == RENDERER_BINAURAL_PARAMETRIC_ROOM || st_ivas->renderer_type == RENDERER_STEREO_PARAMETRIC )
            {
@@ -1390,7 +1392,11 @@ ivas_error ivas_jbm_dec_render(
                    /* we still need to copy the separate channel if available  */
                    if ( st_ivas->hOutSetup.separateChannelEnabled )
                    {
#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
                        mvr2r( p_tc[LFE_CHANNEL - 1], p_output[st_ivas->hOutSetup.separateChannelIndex], *nSamplesRendered );
#else
                        mvr2r( st_ivas->hTcBuffer->tc[LFE_CHANNEL - 1] + offset, p_output[st_ivas->hOutSetup.separateChannelIndex], *nSamplesRendered );
#endif
                    }

                    ivas_mc2sba( st_ivas->hIntSetup, p_output, p_output, *nSamplesRendered, st_ivas->hOutSetup.ambisonics_order, 0.f );
@@ -1411,13 +1417,22 @@ ivas_error ivas_jbm_dec_render(
                     output_config == IVAS_AUDIO_CONFIG_5_1_4 || output_config == IVAS_AUDIO_CONFIG_7_1_4 ||
                     output_config == IVAS_AUDIO_CONFIG_5_1_2 || ( output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM && st_ivas->hOutSetup.num_lfe > 0 ) )
                {
#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
                    mvr2r( p_tc[LFE_CHANNEL], p_output[LFE_CHANNEL], *nSamplesRendered );
                    mvr2r( p_tc[LFE_CHANNEL - 1], p_output[st_ivas->hOutSetup.separateChannelIndex], *nSamplesRendered );
#else
                    mvr2r( st_ivas->hTcBuffer->tc[LFE_CHANNEL] + offset, p_output[LFE_CHANNEL], *nSamplesRendered );
                    mvr2r( st_ivas->hTcBuffer->tc[LFE_CHANNEL - 1] + offset, p_output[st_ivas->hOutSetup.separateChannelIndex], *nSamplesRendered );
#endif
                }
                else if ( output_config == IVAS_AUDIO_CONFIG_LS_CUSTOM && st_ivas->hOutSetup.num_lfe == 0 )
                {
#ifdef UNIFIED_DECODING_PATHS_LEFTOVERS
                    mvr2r( p_tc[LFE_CHANNEL - 1], p_output[st_ivas->hOutSetup.separateChannelIndex], *nSamplesRendered );
#else
                    /* Delay the separated channel to sync with the DirAC rendering */
                    mvr2r( st_ivas->hTcBuffer->tc[LFE_CHANNEL - 1] + offset, p_output[st_ivas->hOutSetup.separateChannelIndex], *nSamplesRendered );
#endif
                }
            }
        }