Commit dc492454 authored by TYAGIRIS's avatar TYAGIRIS
Browse files

moving renderer override flag setting outside debugging switch for external renderer

parent 8e2b2e40
Loading
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -117,14 +117,12 @@ typedef enum

} AUDIO_CONFIG;

#if defined( DEBUGGING ) || defined( SPLIT_REND_WITH_HEAD_ROT ) // TODO needs refactoring to a separate enum for split rendering
typedef enum
{
    RENDER_TYPE_OVERRIDE_NONE,
    RENDER_TYPE_OVERRIDE_CREND,
    RENDER_TYPE_OVERRIDE_FASTCONV
} ivas_renderTypeOverride;
#endif

/*----------------------------------------------------------------------------------*
 * IVAS rendering configurations
+5 −2
Original line number Diff line number Diff line
@@ -106,8 +106,11 @@ ivas_error ivas_render_config_init_from_rom(
    {
        return IVAS_ERROR( IVAS_ERR_UNEXPECTED_NULL_POINTER, "Unexpected null pointer while attempting to fill renderer configuration from ROM" );
    }

#if defined( DEBUGGING ) || defined( SPLIT_REND_WITH_HEAD_ROT ) // TODO needs refactoring to a separate enum for split rendering
#ifndef SPLIT_REND_WITH_HEAD_ROT
#ifdef DEBUGGING
    ( *hRenderConfig )->renderer_type_override = RENDER_TYPE_OVERRIDE_NONE;
#endif
#else
    ( *hRenderConfig )->renderer_type_override = RENDER_TYPE_OVERRIDE_NONE;
#endif
    ( *hRenderConfig )->roomAcoustics.override = FALSE;
+5 −1
Original line number Diff line number Diff line
@@ -539,7 +539,11 @@ typedef struct ivas_roomAcoustics_t

typedef struct ivas_render_config_t
{
#if defined( DEBUGGING ) || defined( SPLIT_REND_WITH_HEAD_ROT ) // TODO needs refactoring to a separate enum for split rendering
#ifndef SPLIT_REND_WITH_HEAD_ROT
#ifdef DEBUGGING
    ivas_renderTypeOverride renderer_type_override;
#endif
#else
    ivas_renderTypeOverride renderer_type_override;
#endif
    ivas_roomAcoustics_t roomAcoustics;
+32 −11
Original line number Diff line number Diff line
@@ -2667,7 +2667,6 @@ static ivas_error updateSbaPanGains(
                case IVAS_REND_AUDIO_CONFIG_BINAURAL_SPLIT_CODED:
                case IVAS_REND_AUDIO_CONFIG_BINAURAL_SPLIT_PCM:
                {
#if defined DEBUGGING && defined SPLIT_REND_WITH_HEAD_ROT /* TODO: redundant nested switch SPLIT_REND_WITH_HEAD_ROT */
                    if ( hRendCfg->renderer_type_override == RENDER_TYPE_OVERRIDE_FASTCONV )

                    {
@@ -2682,7 +2681,6 @@ static ivas_error updateSbaPanGains(
                    }

                    else
#endif
                    {
                        assert( ( *rendCtx.pOutSampleRate == 48000 ) && "split binaural crend mode is currently supported with 48k sampling rate only" );
                        error = ivas_rend_openMultiBinCrend( &inputSba->crendWrapper, inConfig, outConfig,
@@ -2697,7 +2695,7 @@ static ivas_error updateSbaPanGains(
                }
#endif
                case IVAS_REND_AUDIO_CONFIG_BINAURAL:
#if defined DEBUGGING && defined SPLIT_REND_WITH_HEAD_ROT
#ifdef SPLIT_REND_WITH_HEAD_ROT
                    if ( hRendCfg->renderer_type_override == RENDER_TYPE_OVERRIDE_FASTCONV )

                    {
@@ -4583,13 +4581,11 @@ ivas_error IVAS_REND_GetDelay(
#ifdef SPLIT_REND_WITH_HEAD_ROT
            if ( hIvasRend->splitRendWrapper.hBinHrSplitPreRend != NULL )
            {
#if ( defined DEBUGGING ) || ( defined SPLIT_REND_WITH_HEAD_ROT )
                if ( hIvasRend->hRendererConfig->renderer_type_override == RENDER_TYPE_OVERRIDE_FASTCONV )
                {
                    latency_ns = hIvasRend->inputsSba[i].cldfbRendWrapper.binaural_latency_ns;
                }
                else
#endif
                {
                    latency_ns = ( hIvasRend->inputsSba[i].crendWrapper != NULL ) ? hIvasRend->inputsSba[i].crendWrapper->binaural_latency_ns : 0;
                }
@@ -4903,7 +4899,22 @@ int16_t IVAS_REND_GetRenderConfig(
    }

    hRCin = hIvasRend->hRendererConfig;
#if ( defined DEBUGGING ) || ( defined SPLIT_REND_WITH_HEAD_ROT )
#ifndef SPLIT_REND_WITH_HEAD_ROT
#ifdef DEBUGGING
    switch ( hRCin->renderer_type_override )
    {
        case RENDER_TYPE_OVERRIDE_CREND:
            hRCout->renderer_type_override = IVAS_RENDER_TYPE_OVERRIDE_CREND;
            break;
        case RENDER_TYPE_OVERRIDE_FASTCONV:
            hRCout->renderer_type_override = IVAS_RENDER_TYPE_OVERRIDE_FASTCONV;
            break;
        default:
            hRCout->renderer_type_override = IVAS_RENDER_TYPE_OVERRIDE_NONE;
            break;
    }
#endif
#else
    switch ( hRCin->renderer_type_override )
    {
        case RENDER_TYPE_OVERRIDE_CREND:
@@ -4961,8 +4972,19 @@ int16_t IVAS_REND_FeedRenderConfig(
        return IVAS_ERR_UNEXPECTED_NULL_POINTER;
    }
    hRenderConfig = hIvasRend->hRendererConfig;

#if ( defined DEBUGGING ) || ( defined SPLIT_REND_WITH_HEAD_ROT )
#ifndef SPLIT_REND_WITH_HEAD_ROT
#ifdef DEBUGGING
    hRenderConfig->renderer_type_override = RENDER_TYPE_OVERRIDE_NONE;
    if ( renderConfig.renderer_type_override == IVAS_RENDER_TYPE_OVERRIDE_FASTCONV )
    {
        hRenderConfig->renderer_type_override = RENDER_TYPE_OVERRIDE_FASTCONV;
    }
    if ( renderConfig.renderer_type_override == IVAS_RENDER_TYPE_OVERRIDE_CREND )
    {
        hRenderConfig->renderer_type_override = RENDER_TYPE_OVERRIDE_CREND;
    }
#endif
#else
    hRenderConfig->renderer_type_override = RENDER_TYPE_OVERRIDE_NONE;
    if ( renderConfig.renderer_type_override == IVAS_RENDER_TYPE_OVERRIDE_FASTCONV )
    {
@@ -4973,6 +4995,7 @@ int16_t IVAS_REND_FeedRenderConfig(
        hRenderConfig->renderer_type_override = RENDER_TYPE_OVERRIDE_CREND;
    }
#endif

    hRenderConfig->roomAcoustics.override = renderConfig.room_acoustics.override;
    hRenderConfig->roomAcoustics.nBands = renderConfig.room_acoustics.nBands;
    hRenderConfig->roomAcoustics.acousticPreDelay = renderConfig.room_acoustics.acousticPreDelay;
@@ -7357,7 +7380,6 @@ static ivas_error renderSbaToSplitBinaural(
    push_wmops( "renderSbaToSplitBinaural" );
    error = IVAS_ERR_OK;

#if ( defined DEBUGGING ) || ( defined SPLIT_REND_WITH_HEAD_ROT )
    if ( sbaInput->base.ctx.hhRendererConfig[0]->renderer_type_override == RENDER_TYPE_OVERRIDE_FASTCONV )
    {

@@ -7368,7 +7390,6 @@ static ivas_error renderSbaToSplitBinaural(
        accumulateCLDFBArrayToBuffer( Cldfb_RealBuffer_Binaural, Cldfb_ImagBuffer_Binaural, &outAudio );
    }
    else
#endif
    {
        renderSbaToMultiBinaural(
            sbaInput,
@@ -7399,7 +7420,7 @@ static ivas_error renderSbaToBinaural(

    push_wmops( "renderSbaToBinaural" );

#if defined DEBUGGING && defined SPLIT_REND_WITH_HEAD_ROT
#ifdef SPLIT_REND_WITH_HEAD_ROT
    if ( sbaInput->base.ctx.hhRendererConfig[0]->renderer_type_override == RENDER_TYPE_OVERRIDE_FASTCONV )
    {
        float Cldfb_RealBuffer_Binaural[BINAURAL_CHANNELS][CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX];