Commit b1b93859 authored by emerit's avatar emerit
Browse files

fix split rendering

parent 70e92bb3
Loading
Loading
Loading
Loading
Loading
+22 −1
Original line number Diff line number Diff line
@@ -1325,7 +1325,9 @@ static ivas_error initIsmMasaRendering(
    if ( inputIsm->tdRendWrapper.hBinRendererTd != NULL )
    {
        ivas_td_binaural_close( &inputIsm->tdRendWrapper.hBinRendererTd );
#ifndef NONBE_FIX_BINARY_BINAURAL_READING
        inputIsm->tdRendWrapper.hHrtfTD = NULL;
#endif
    }

#ifdef SPLIT_REND_WITH_HEAD_ROT
@@ -1518,14 +1520,18 @@ static void clearInputIsm(
    if ( inputIsm->tdRendWrapper.hBinRendererTd != NULL )
    {
        ivas_td_binaural_close( &inputIsm->tdRendWrapper.hBinRendererTd );
#ifndef NONBE_FIX_BINARY_BINAURAL_READING
        inputIsm->tdRendWrapper.hHrtfTD = NULL;
#endif
    }

#ifdef SPLIT_REND_WITH_HEAD_ROT
    for ( i = 0; i < (int16_t) ( sizeof( inputIsm->splitTdRendWrappers ) / sizeof( *inputIsm->splitTdRendWrappers ) ); ++i )
    {
        ivas_td_binaural_close( &inputIsm->splitTdRendWrappers[i].hBinRendererTd );
#ifndef NONBE_FIX_BINARY_BINAURAL_READING
        inputIsm->splitTdRendWrappers[i].hHrtfTD = NULL;
#endif
    }
#endif

@@ -2217,7 +2223,9 @@ static ivas_error initMcBinauralRendering(
            if ( inputMc->splitTdRendWrappers[i].hBinRendererTd != NULL )
            {
                ivas_td_binaural_close( &inputMc->splitTdRendWrappers[i].hBinRendererTd );
#ifndef NONBE_FIX_BINARY_BINAURAL_READING
                inputMc->splitTdRendWrappers[i].hHrtfTD = NULL;
#endif
            }
        }
    }
@@ -2339,7 +2347,9 @@ static ivas_error initMcMasaRendering(
    if ( inputMc->tdRendWrapper.hBinRendererTd != NULL )
    {
        ivas_td_binaural_close( &inputMc->tdRendWrapper.hBinRendererTd );
#ifndef NONBE_FIX_BINARY_BINAURAL_READING
        inputMc->tdRendWrapper.hHrtfTD = NULL;
#endif
    }

#ifdef SPLIT_REND_WITH_HEAD_ROT
@@ -2495,6 +2505,13 @@ static ivas_error setRendInputActiveMc(
    for ( i = 0; i < (int16_t) ( sizeof( inputMc->splitTdRendWrappers ) / sizeof( *inputMc->splitTdRendWrappers ) ); ++i )
    {
        inputMc->splitTdRendWrappers[i] = defaultTdRendWrapper();
#ifdef NONBE_FIX_BINARY_BINAURAL_READING
        if ( hrtfs->hHrtfTD )
        {
            inputMc->splitTdRendWrappers[i].binaural_latency_ns = (int32_t) ( hrtfs->hHrtfTD->latency_s * 1000000000.f );
        }
        inputMc->splitTdRendWrappers[i].hHrtfTD = &hrtfs->hHrtfTD;
#endif
    }

    if ( getAudioConfigType( outConfig ) == IVAS_REND_AUDIO_CONFIG_TYPE_BINAURAL )
@@ -2562,7 +2579,9 @@ static void clearInputMc(
    if ( inputMc->tdRendWrapper.hBinRendererTd != NULL )
    {
        ivas_td_binaural_close( &inputMc->tdRendWrapper.hBinRendererTd );
#ifndef NONBE_FIX_BINARY_BINAURAL_READING
        inputMc->tdRendWrapper.hHrtfTD = NULL;
#endif
    }

#ifdef SPLIT_REND_WITH_HEAD_ROT
@@ -2571,7 +2590,9 @@ static void clearInputMc(
        if ( inputMc->splitTdRendWrappers[i].hBinRendererTd != NULL )
        {
            ivas_td_binaural_close( &inputMc->splitTdRendWrappers[i].hBinRendererTd );
#ifndef NONBE_FIX_BINARY_BINAURAL_READING
            inputMc->splitTdRendWrappers[i].hHrtfTD = NULL;
#endif
        }
    }
#endif
@@ -2838,7 +2859,7 @@ static ivas_error setRendInputActiveSplitPostRend(
    RENDER_CONFIG_DATA *hRendCfg
#ifdef NONBE_FIX_BINARY_BINAURAL_READING
    ,
    hrtf_handles hrtfs
    hrtf_handles *hrtfs
#endif

)