Commit 21503dbc authored by vaclav's avatar vaclav
Browse files

AUDIO_CONFIG with IVAS_REND_AudioConfig and with IVAS_DEC_AUDIO_CONFIG

parent 0d2f0dd5
Loading
Loading
Loading
Loading
Loading
+50 −49
Original line number Diff line number Diff line
@@ -103,7 +103,7 @@ typedef struct
    char *outputWavFilename;
    IVAS_DEC_MODE decMode;
    int32_t output_Fs;
    IVAS_DEC_AUDIO_CONFIG outputFormat;
    IVAS_AUDIO_CONFIG outputFormat;
    bool quietModeEnabled;
    bool delayCompensationEnabled;
    bool voipMode;
@@ -281,7 +281,7 @@ int main(
    if ( arg.hrtfReaderEnabled )
    {
        /* sanity check */
        if ( arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL && arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL_ROOM_IR && arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL_ROOM_REVERB )
        if ( arg.outputFormat != AUDIO_CONFIG_BINAURAL && arg.outputFormat != AUDIO_CONFIG_BINAURAL_ROOM_IR && arg.outputFormat != AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
        {
            arg.hrtfReaderEnabled = false;
            fprintf( stderr, "\nError: HRTF binary file cannot be used in this output configuration.\n\n" );
@@ -303,9 +303,9 @@ int main(
    if ( arg.enableHeadRotation )
    {
        /* sanity check */
        if ( arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL && arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL_ROOM_IR && arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL_ROOM_REVERB
        if ( arg.outputFormat != AUDIO_CONFIG_BINAURAL && arg.outputFormat != AUDIO_CONFIG_BINAURAL_ROOM_IR && arg.outputFormat != AUDIO_CONFIG_BINAURAL_ROOM_REVERB
#ifdef SPLIT_REND_WITH_HEAD_ROT
             && arg.outputFormat != IVAS_DEC_OUTPUT_SPLIT_BINAURAL_CODED && arg.outputFormat != IVAS_DEC_OUTPUT_SPLIT_BINAURAL_PCM
             && arg.outputFormat != AUDIO_CONFIG_BINAURAL_SPLIT_CODED && arg.outputFormat != AUDIO_CONFIG_BINAURAL_SPLIT_PCM
#endif
        )
        {
@@ -327,7 +327,7 @@ int main(
    if ( arg.enableReferenceRotation )
    {
        /* sanity check */
        if ( arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL && arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL_ROOM_IR && arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL_ROOM_REVERB )
        if ( arg.outputFormat != AUDIO_CONFIG_BINAURAL && arg.outputFormat != AUDIO_CONFIG_BINAURAL_ROOM_IR && arg.outputFormat != AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
        {
            fprintf( stderr, "\nError: Reference rotation file cannot be used in this output configuration.\n\n" );
            goto cleanup;
@@ -354,7 +354,7 @@ int main(
    if ( arg.enableReferenceVectorTracking )
    {
        /* sanity check */
        if ( arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL && arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL_ROOM_IR && arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL_ROOM_REVERB )
        if ( arg.outputFormat != AUDIO_CONFIG_BINAURAL && arg.outputFormat != AUDIO_CONFIG_BINAURAL_ROOM_IR && arg.outputFormat != AUDIO_CONFIG_BINAURAL_ROOM_REVERB )
        {
            fprintf( stderr, "\nError: Reference vector trajectory file cannot be used in this output configuration.\n\n" );
            goto cleanup;
@@ -407,9 +407,9 @@ int main(
    if ( arg.renderConfigEnabled )
    {
        /* sanity check */
        if ( arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL && arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL_ROOM_IR && arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL_ROOM_REVERB
        if ( arg.outputFormat != AUDIO_CONFIG_BINAURAL && arg.outputFormat != AUDIO_CONFIG_BINAURAL_ROOM_IR && arg.outputFormat != AUDIO_CONFIG_BINAURAL_ROOM_REVERB
#ifdef SPLIT_REND_WITH_HEAD_ROT
             && arg.outputFormat != IVAS_DEC_OUTPUT_SPLIT_BINAURAL_CODED && arg.outputFormat != IVAS_DEC_OUTPUT_SPLIT_BINAURAL_PCM
             && arg.outputFormat != AUDIO_CONFIG_BINAURAL_SPLIT_CODED && arg.outputFormat != AUDIO_CONFIG_BINAURAL_SPLIT_PCM
#endif
        )
        {
@@ -427,8 +427,9 @@ int main(
    /*------------------------------------------------------------------------------------------*
     * Configure the decoder
     *------------------------------------------------------------------------------------------*/

#ifdef SPLIT_REND_WITH_HEAD_ROT
    if ( arg.outputFormat == IVAS_DEC_OUTPUT_SPLIT_BINAURAL_CODED || arg.outputFormat == IVAS_DEC_OUTPUT_SPLIT_BINAURAL_PCM )
    if ( arg.outputFormat == AUDIO_CONFIG_BINAURAL_SPLIT_CODED || arg.outputFormat == AUDIO_CONFIG_BINAURAL_SPLIT_PCM )
    {
        arg.enableHeadRotation = true;
    }
@@ -581,9 +582,9 @@ int main(

        /* sanity check */
#ifdef SPLIT_REND_WITH_HEAD_ROT
        if ( arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL && arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL_ROOM_IR && arg.outputFormat != IVAS_DEC_OUTPUT_BINAURAL_ROOM_REVERB &&
             arg.outputFormat != IVAS_DEC_OUTPUT_SPLIT_BINAURAL_CODED &&
             arg.outputFormat != IVAS_DEC_OUTPUT_SPLIT_BINAURAL_PCM )
        if ( arg.outputFormat != AUDIO_CONFIG_BINAURAL && arg.outputFormat != AUDIO_CONFIG_BINAURAL_ROOM_IR && arg.outputFormat != AUDIO_CONFIG_BINAURAL_ROOM_REVERB &&
             arg.outputFormat != AUDIO_CONFIG_BINAURAL_SPLIT_CODED &&
             arg.outputFormat != AUDIO_CONFIG_BINAURAL_SPLIT_PCM )
        {
            fprintf( stderr, "\nExternal Renderer Config is supported only when binaural output configurations is used as output OR when Split rendering mode is enabled. Exiting. \n" );
            exit( -1 );
@@ -796,10 +797,10 @@ cleanup:
 * Translate command-line argument to output configuration
 *---------------------------------------------------------------------*/

static IVAS_DEC_AUDIO_CONFIG cmdline2config(
static IVAS_AUDIO_CONFIG cmdline2config(
    char *argv )
{
    IVAS_DEC_AUDIO_CONFIG output_config;
    IVAS_AUDIO_CONFIG output_config;

    char argv_to_upper[FILENAME_MAX];

@@ -809,73 +810,73 @@ static IVAS_DEC_AUDIO_CONFIG cmdline2config(

    if ( strcmp( argv_to_upper, "EXT" ) == 0 ) /* external renderer */
    {
        output_config = IVAS_DEC_OUTPUT_EXT;
        output_config = AUDIO_CONFIG_EXTERNAL;
    }
    else if ( strcmp( argv_to_upper, "MONO" ) == 0 )
    {
        output_config = IVAS_DEC_OUTPUT_MONO;
        output_config = AUDIO_CONFIG_MONO;
    }
    else if ( strcmp( argv_to_upper, "STEREO" ) == 0 )
    {
        output_config = IVAS_DEC_OUTPUT_STEREO;
        output_config = AUDIO_CONFIG_STEREO;
    }
    else if ( strcmp( argv_to_upper, "5_1" ) == 0 )
    {
        output_config = IVAS_DEC_OUTPUT_5_1;
        output_config = AUDIO_CONFIG_5_1;
    }
    else if ( strcmp( argv_to_upper, "7_1" ) == 0 )
    {
        output_config = IVAS_DEC_OUTPUT_7_1;
        output_config = AUDIO_CONFIG_7_1;
    }
    else if ( strcmp( argv_to_upper, "5_1_2" ) == 0 )
    {
        output_config = IVAS_DEC_OUTPUT_5_1_2;
        output_config = AUDIO_CONFIG_5_1_2;
    }
    else if ( strcmp( argv_to_upper, "5_1_4" ) == 0 )
    {
        output_config = IVAS_DEC_OUTPUT_5_1_4;
        output_config = AUDIO_CONFIG_5_1_4;
    }
    else if ( strcmp( argv_to_upper, "7_1_4" ) == 0 )
    {
        output_config = IVAS_DEC_OUTPUT_7_1_4;
        output_config = AUDIO_CONFIG_7_1_4;
    }
    else if ( strcmp( argv_to_upper, "FOA" ) == 0 )
    {
        output_config = IVAS_DEC_OUTPUT_FOA;
        output_config = AUDIO_CONFIG_FOA;
    }
    else if ( strcmp( argv_to_upper, "HOA2" ) == 0 )
    {
        output_config = IVAS_DEC_OUTPUT_HOA2;
        output_config = AUDIO_CONFIG_HOA2;
    }
    else if ( strcmp( argv_to_upper, "HOA3" ) == 0 )
    {
        output_config = IVAS_DEC_OUTPUT_HOA3;
        output_config = AUDIO_CONFIG_HOA3;
    }
    else if ( strcmp( argv_to_upper, "BINAURAL" ) == 0 )
    {
        output_config = IVAS_DEC_OUTPUT_BINAURAL;
        output_config = AUDIO_CONFIG_BINAURAL;
    }
#ifdef SPLIT_REND_WITH_HEAD_ROT
    else if ( strcmp( argv_to_upper, "BINAURAL_SPLIT_CODED" ) == 0 )
    {
        output_config = IVAS_DEC_OUTPUT_SPLIT_BINAURAL_CODED;
        output_config = AUDIO_CONFIG_BINAURAL_SPLIT_CODED;
    }
    else if ( strcmp( argv_to_upper, "BINAURAL_SPLIT_PCM" ) == 0 )
    {
        output_config = IVAS_DEC_OUTPUT_SPLIT_BINAURAL_PCM;
        output_config = AUDIO_CONFIG_BINAURAL_SPLIT_PCM;
    }
#endif
    else if ( strcmp( argv_to_upper, "BINAURAL_ROOM_IR" ) == 0 )
    {
        output_config = IVAS_DEC_OUTPUT_BINAURAL_ROOM_IR;
        output_config = AUDIO_CONFIG_BINAURAL_ROOM_IR;
    }
    else if ( strcmp( argv_to_upper, "BINAURAL_ROOM_REVERB" ) == 0 )
    {
        output_config = IVAS_DEC_OUTPUT_BINAURAL_ROOM_REVERB;
        output_config = AUDIO_CONFIG_BINAURAL_ROOM_REVERB;
    }
    else
    {
        output_config = IVAS_DEC_OUTPUT_LS_CUSTOM;
        output_config = AUDIO_CONFIG_LS_CUSTOM;
    }

    return output_config;
@@ -905,7 +906,7 @@ static bool parseCmdlIVAS_dec(
#endif
#endif
    arg->output_Fs = 48000;
    arg->outputFormat = IVAS_DEC_OUTPUT_MONO;
    arg->outputFormat = AUDIO_CONFIG_MONO;
    arg->decMode = IVAS_DEC_MODE_IVAS;
    arg->quietModeEnabled = false;
    arg->delayCompensationEnabled = true;
@@ -1349,13 +1350,13 @@ static bool parseCmdlIVAS_dec(
    if ( i < argc - 3 )
    {
        arg->outputFormat = cmdline2config( argv[i] );
        if ( arg->outputFormat == IVAS_DEC_OUTPUT_LS_CUSTOM )
        if ( arg->outputFormat == AUDIO_CONFIG_LS_CUSTOM )
        {
            arg->customLsOutputEnabled = true;
            arg->customLsSetupFilename = argv[i];
        }
        i++;
        if ( ( arg->Opt_non_diegetic_pan ) && ( arg->outputFormat != IVAS_DEC_OUTPUT_STEREO ) )
        if ( ( arg->Opt_non_diegetic_pan ) && ( arg->outputFormat != AUDIO_CONFIG_STEREO ) )
        {
            fprintf( stderr, "Error: non-diegetic panning is supported in stereo only\n\n" );
            usage_dec();
@@ -1364,11 +1365,11 @@ static bool parseCmdlIVAS_dec(
    }
    else
    {
        arg->outputFormat = IVAS_DEC_OUTPUT_MONO;
        arg->outputFormat = AUDIO_CONFIG_MONO;
        arg->decMode = IVAS_DEC_MODE_EVS;
        if ( ( arg->Opt_non_diegetic_pan ) )
        {
            arg->outputFormat = IVAS_DEC_OUTPUT_STEREO;
            arg->outputFormat = AUDIO_CONFIG_STEREO;
        }
    }

@@ -1566,8 +1567,8 @@ static ivas_error initOnFirstGoodFrame(
        return error;
    }
#ifdef SPLIT_REND_WITH_HEAD_ROT
    if ( ( arg.outputFormat == IVAS_DEC_OUTPUT_SPLIT_BINAURAL_PCM ) ||
         ( arg.outputFormat == IVAS_DEC_OUTPUT_SPLIT_BINAURAL_CODED ) )
    if ( ( arg.outputFormat == AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ||
         ( arg.outputFormat == AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) )
    {
        pFullDelayNumSamples[0] = 0;
    }
@@ -1594,7 +1595,7 @@ static ivas_error initOnFirstGoodFrame(
    }

#ifdef SPLIT_REND_WITH_HEAD_ROT
    if ( arg.outputFormat == IVAS_DEC_OUTPUT_SPLIT_BINAURAL_CODED )
    if ( arg.outputFormat == AUDIO_CONFIG_BINAURAL_SPLIT_CODED )
    {
        int16_t delayNumSamples_temp[3];
        int32_t delayTimeScale_temp;
@@ -1609,7 +1610,7 @@ static ivas_error initOnFirstGoodFrame(
    }
    else
    {
        if ( arg.outputFormat == IVAS_DEC_OUTPUT_SPLIT_BINAURAL_PCM )
        if ( arg.outputFormat == AUDIO_CONFIG_BINAURAL_SPLIT_PCM )
        {
            int16_t delayNumSamples_temp[3];
            int32_t delayTimeScale_temp;
@@ -1677,7 +1678,7 @@ static ivas_error initOnFirstGoodFrame(
    free( zeroBuf );

    /* Open other output files if EXT output config - now details about ISM or MASA are known */
    if ( arg.outputFormat == IVAS_DEC_OUTPUT_EXT )
    if ( arg.outputFormat == AUDIO_CONFIG_EXTERNAL )
    {
        if ( ( error = IVAS_DEC_GetFormat( hIvasDec, pBsFormat ) ) != IVAS_ERR_OK )
        {
@@ -2056,7 +2057,7 @@ static ivas_error decodeG192(
        if ( decodedGoodFrame )
        {
#ifdef SPLIT_REND_WITH_HEAD_ROT
            if ( ( hSplitRendFileReadWrite != NULL ) && ( arg.outputFormat == IVAS_DEC_OUTPUT_SPLIT_BINAURAL_CODED ) )
            if ( ( hSplitRendFileReadWrite != NULL ) && ( arg.outputFormat == AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) )
            {
                if ( split_rend_write_bitstream_to_file( hSplitRendFileReadWrite, splitRendBits.bits_buf, &splitRendBits.bits_read, &splitRendBits.bits_written,
                                                         splitRendBits.codec, splitRendBits.pose_correction ) != IVAS_ERR_OK )
@@ -2067,7 +2068,7 @@ static ivas_error decodeG192(
            }
            else
            {
                if ( ( hSplitRendFileReadWrite != NULL ) && ( arg.outputFormat == IVAS_DEC_OUTPUT_SPLIT_BINAURAL_PCM ) )
                if ( ( hSplitRendFileReadWrite != NULL ) && ( arg.outputFormat == AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) )
                {
                    if ( split_rend_write_bitstream_to_file( hSplitRendFileReadWrite, splitRendBits.bits_buf, &splitRendBits.bits_read, &splitRendBits.bits_written,
                                                             splitRendBits.codec, splitRendBits.pose_correction ) != IVAS_ERR_OK )
@@ -2096,7 +2097,7 @@ static ivas_error decodeG192(
        }

        /* Write MASA/ISM metadata to external file(s) */
        if ( decodedGoodFrame && arg.outputFormat == IVAS_DEC_OUTPUT_EXT )
        if ( decodedGoodFrame && arg.outputFormat == AUDIO_CONFIG_EXTERNAL )
        {
#ifdef MASA_AND_OBJECTS
            if ( bsFormat == IVAS_DEC_BS_OBJ || bsFormat == IVAS_DEC_BS_MASA_ISM )
@@ -2205,7 +2206,7 @@ static ivas_error decodeG192(
    }

    /* Print output metadata file name(s) */
    if ( arg.outputFormat == IVAS_DEC_OUTPUT_EXT )
    if ( arg.outputFormat == AUDIO_CONFIG_EXTERNAL )
    {
        if ( bsFormat == IVAS_DEC_BS_OBJ )
        {
@@ -2690,7 +2691,7 @@ static ivas_error decodeVoIP(
            }

            /* Write ISM metadata to external file(s) */
            if ( decodedGoodFrame && arg.outputFormat == IVAS_DEC_OUTPUT_EXT )
            if ( decodedGoodFrame && arg.outputFormat == AUDIO_CONFIG_EXTERNAL )
            {
                int16_t i;

@@ -3130,7 +3131,7 @@ static ivas_error decodeVariableSpeed(
        }

        /* Write ISm metadata to external file(s) */
        if ( decodedGoodFrame && arg.outputFormat == IVAS_DEC_OUTPUT_EXT )
        if ( decodedGoodFrame && arg.outputFormat == AUDIO_CONFIG_EXTERNAL )
        {
#ifdef MASA_AND_OBJECTS
            if ( bsFormat == IVAS_DEC_BS_OBJ || bsFormat == IVAS_DEC_BS_MASA_ISM )
@@ -3318,7 +3319,7 @@ static ivas_error decodeVariableSpeed(
        }

        /* Write ISm metadata to external file(s) */
        if ( decodedGoodFrame && arg.outputFormat == IVAS_DEC_OUTPUT_EXT )
        if ( decodedGoodFrame && arg.outputFormat == AUDIO_CONFIG_EXTERNAL )
        {
#ifdef MASA_AND_OBJECTS
            if ( bsFormat == IVAS_DEC_BS_OBJ || bsFormat == IVAS_DEC_BS_MASA_ISM )
@@ -3404,7 +3405,7 @@ static ivas_error decodeVariableSpeed(
    }

    /* Print output metadata file name(s) */
    if ( arg.outputFormat == IVAS_DEC_OUTPUT_EXT )
    if ( arg.outputFormat == AUDIO_CONFIG_EXTERNAL )
    {
        if ( bsFormat == IVAS_DEC_BS_OBJ )
        {
+82 −82

File changed.

Preview size limit exceeded, changes collapsed.

+35 −0
Original line number Diff line number Diff line
@@ -53,6 +53,41 @@
#define RENDERER_HEAD_POSITIONS_PER_FRAME 4


/*----------------------------------------------------------------------------------*
 * Common API enum for output audio configurations
 *----------------------------------------------------------------------------------*/

typedef enum _IVAS_AUDIO_CONFIG
{
    AUDIO_CONFIG_INVALID,
    AUDIO_CONFIG_MONO,                 /* mono output                            */
    AUDIO_CONFIG_STEREO,               /* stereo output                          */
    AUDIO_CONFIG_5_1,                  /* 5.1 speakers layout CICP6              */
    AUDIO_CONFIG_7_1,                  /* 7.1 speakers layout CICP12             */
    AUDIO_CONFIG_5_1_2,                /* 5.1+2 speakers layout CICP14           */
    AUDIO_CONFIG_5_1_4,                /* 5.1+4 speakers layout CICP16           */
    AUDIO_CONFIG_7_1_4,                /* 7.1+4 speakers layout CICP19           */
    AUDIO_CONFIG_LS_CUSTOM,            /* custom loudspeaker layout              */
    AUDIO_CONFIG_FOA,                  /* ambisonics, order 1                    */
    AUDIO_CONFIG_HOA2,                 /* ambisonics, order 2                    */
    AUDIO_CONFIG_HOA3,                 /* ambisonics, order 3                    */
    AUDIO_CONFIG_OBA,                  /* object based audio                     */
    AUDIO_CONFIG_BINAURAL,             /* binaural with HRIR                     */
    AUDIO_CONFIG_BINAURAL_SPLIT_CODED, /* split binaural with CLDFB coded output */
    AUDIO_CONFIG_BINAURAL_SPLIT_PCM,   /* split binaural with PCM coded output   */
    AUDIO_CONFIG_BINAURAL_ROOM_IR,     /* binaural with BRIR                     */
    AUDIO_CONFIG_BINAURAL_ROOM_REVERB, /* binaural with HRIR + reverb            */
    AUDIO_CONFIG_ISM1,                 /* ISM1                                   */
    AUDIO_CONFIG_ISM2,                 /* ISM2                                   */
    AUDIO_CONFIG_ISM3,                 /* ISM3                                   */
    AUDIO_CONFIG_ISM4,                 /* ISM4                                   */
    AUDIO_CONFIG_MASA1,                /* MASA1                                  */
    AUDIO_CONFIG_MASA2,                /* MASA2                                  */
    AUDIO_CONFIG_EXTERNAL              /* external renderer                      */

} IVAS_AUDIO_CONFIG;


/*----------------------------------------------------------------------------------*
 * Common API structures
 *----------------------------------------------------------------------------------*/
+1 −31
Original line number Diff line number Diff line
@@ -90,37 +90,7 @@ typedef enum
 * IVAS output audio configurations
 *----------------------------------------------------------------------------------*/

typedef enum 
{ 
    AUDIO_CONFIG_INVALID, 
    AUDIO_CONFIG_MONO,                          /* mono output                  */
    AUDIO_CONFIG_STEREO,                        /* stereo output                */
    AUDIO_CONFIG_5_1,                           /* 5.1 speakers layout CICP6    */
    AUDIO_CONFIG_7_1,                           /* 7.1 speakers layout CICP12   */
    AUDIO_CONFIG_5_1_2,                         /* 5.1+2 speakers layout CICP14 */
    AUDIO_CONFIG_5_1_4,                         /* 5.1+4 speakers layout CICP16 */
    AUDIO_CONFIG_7_1_4,                         /* 7.1+4 speakers layout CICP19 */
    AUDIO_CONFIG_LS_CUSTOM,                     /* custom loudspeaker layout    */
    AUDIO_CONFIG_FOA,                           /* ambisonics, order 1          */
    AUDIO_CONFIG_HOA2,                          /* ambisonics, order 2          */
    AUDIO_CONFIG_HOA3,                          /* ambisonics, order 3          */
    AUDIO_CONFIG_OBA,                           /* object based audio           */
    AUDIO_CONFIG_BINAURAL,                      /* binaural with HRIR           */
#ifdef SPLIT_REND_WITH_HEAD_ROT
    AUDIO_CONFIG_BINAURAL_SPLIT_CODED,          /* split binaural with CLDFB coded output */
	AUDIO_CONFIG_BINAURAL_SPLIT_PCM,            /* split binaural with PCM coded output   */
#endif
    AUDIO_CONFIG_BINAURAL_ROOM_IR,              /* binaural with BRIR           */
    AUDIO_CONFIG_BINAURAL_ROOM_REVERB,          /* binaural with HRIR + reverb  */
    AUDIO_CONFIG_ISM1,                          /* ISM1                         */
    AUDIO_CONFIG_ISM2,                          /* ISM2                         */
    AUDIO_CONFIG_ISM3,                          /* ISM3                         */
    AUDIO_CONFIG_ISM4,                          /* ISM4                         */
    AUDIO_CONFIG_MASA1,                         /* MASA1                        */ // TODO: seems not to be used
    AUDIO_CONFIG_MASA2,                         /* MASA2                        */ // TODO: seems not to be used
    AUDIO_CONFIG_EXTERNAL                       /* external renderer            */

} AUDIO_CONFIG;
typedef enum _IVAS_AUDIO_CONFIG AUDIO_CONFIG; /* defined in common_api_types.h */ 

typedef enum
{
+2 −2
Original line number Diff line number Diff line
@@ -1040,8 +1040,8 @@ static void ivas_binaural_obtain_DMX(

ivas_error ivas_rend_openCldfbRend(
    CLDFB_REND_WRAPPER *pCldfbRend,
    const IVAS_REND_AudioConfig inConfig,
    const IVAS_REND_AudioConfig outConfig,
    const IVAS_AUDIO_CONFIG inConfig,
    const IVAS_AUDIO_CONFIG outConfig,
    const MULTI_BIN_REND_POSE_DATA *pMultiBinPoseData,
    const int32_t output_Fs )
{
Loading