Commit 5bf174aa authored by Archit Tamarapu's avatar Archit Tamarapu
Browse files

[fix] delay for MASA and MASA prerendering

parent 41b93126
Loading
Loading
Loading
Loading
Loading
+8 −20
Original line number Diff line number Diff line
@@ -1414,12 +1414,6 @@ static void setRendInputDelayIsm(
        latency_ns = max( latency_ns,
                          inputIsm->crendWrapper->binaural_latency_ns );
    }
    if ( inputIsm->hOMasa != NULL )
    {
        /* TODO tmu: verify what should be set for MASA prerendering */
        latency_ns = max( latency_ns,
                          (int32_t) ( ( splitPreRendCldfb ? 0 : (float) IVAS_FB_DEC_DELAY_NS + 0.5f ) ) );
    }

    inputIsm->base.delayNumSamples = NS2SA( *inputIsm->base.ctx.pOutSampleRate, latency_ns );
}
@@ -2425,12 +2419,6 @@ static void setRendInputDelayMc(
        latency_ns = max( latency_ns,
                          inputMc->crendWrapper->binaural_latency_ns );
    }
    if ( inputMc->hMcMasa != NULL )
    {
        /* TODO tmu: verify what should be set for MASA prerendering */
        latency_ns = max( latency_ns,
                          (int32_t) ( ( splitPreRendCldfb ? 0 : (float) IVAS_FB_DEC_DELAY_NS + 0.5f ) ) );
    }

    inputMc->base.delayNumSamples = NS2SA( *inputMc->base.ctx.pOutSampleRate, latency_ns );
}
@@ -2794,12 +2782,6 @@ static void setRendInputDelaySba(
        latency_ns = max( latency_ns,
                          inputSba->crendWrapper->binaural_latency_ns );
    }
    if ( inputSba->hDirAC != NULL )
    {
        /* TODO tmu: verify what should be set for MASA prerendering */
        latency_ns = max( latency_ns,
                          (int32_t) ( ( splitPreRendCldfb ? 0 : (float) IVAS_FB_DEC_DELAY_NS + 0.5f ) ) );
    }

    inputSba->base.delayNumSamples = NS2SA( *inputSba->base.ctx.pOutSampleRate, latency_ns );
}
@@ -2895,8 +2877,14 @@ static void setRendInputDelayMasa(
    inputMasa = (input_masa *) input;

    /* set the rendering delay in InputBase */
    if ( inputMasa->hMasaExtRend != NULL && inputMasa->hMasaExtRend->renderer_type != RENDERER_DISABLE )
    if ( ( inputMasa->base.inConfig == IVAS_AUDIO_CONFIG_MASA1 && *inputMasa->base.ctx.pOutConfig == IVAS_AUDIO_CONFIG_MONO ) ||
         ( getAudioConfigType( *inputMasa->base.ctx.pOutConfig ) == IVAS_REND_AUDIO_CONFIG_TYPE_MASA ) )
    {
        return; /* no delay */
    }
    else
    {
        /* no delay applied for split rendering */
        latency_ns = max( latency_ns,
                          (int32_t) ( ( splitPreRendCldfb ? 0 : (float) IVAS_FB_DEC_DELAY_NS + 0.5f ) ) );
    }