Loading apps/decoder.c +0 −57 Original line number Diff line number Diff line Loading @@ -72,7 +72,6 @@ static #define MAX_NUM_OUTPUT_CHANNELS 16 #define MAX_OUTPUT_PCM_BUFFER_SIZE ( MAX_NUM_OUTPUT_CHANNELS * MAX_FRAME_SIZE ) #ifdef FIX_I109_ORIENTATION_TRACKING #define IVAS_PUBLIC_ORIENT_TRK_NONE ( 0 ) #define IVAS_PUBLIC_ORIENT_TRK_REF ( 1 ) #define IVAS_PUBLIC_ORIENT_TRK_AVG ( 2 ) Loading @@ -80,10 +79,6 @@ static #define IVAS_PUBLIC_ORIENT_TRK_REF_VEC ( 3 ) #define IVAS_PUBLIC_ORIENT_TRK_REF_VEC_LEV ( 4 ) #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #else #define IVAS_PUBLIC_ORIENT_TRK_REF 0 #define IVAS_PUBLIC_ORIENT_TRK_AVG 1 #endif typedef struct { Loading @@ -97,10 +92,8 @@ typedef struct bool voipMode; bool enableHeadRotation; char *headrotTrajFileName; #ifdef FIX_I109_ORIENTATION_TRACKING bool enableReferenceRotation; char *refrotTrajFileName; #endif #ifdef OTR_REFERENCE_VECTOR_TRACKING bool enableReferenceVectorTracking; char *referenceVectorTrajFileName; Loading Loading @@ -140,15 +133,11 @@ typedef struct static bool parseCmdlIVAS_dec( int16_t argc, char **argv, DecArguments *arg ); static void usage_dec( void ); #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING static ivas_error decodeG192( DecArguments arg, BS_READER_HANDLE hBsReader, HeadRotFileReader *headRotReader, HeadRotFileReader *refRotReader, Vector3PairFileReader *referenceVectorReader, IVAS_DEC_HANDLE hIvasDec, int16_t *pcmBuf ); #else /* OTR_REFERENCE_VECTOR_TRACKING */ static ivas_error decodeG192( DecArguments arg, BS_READER_HANDLE hBsReader, HeadRotFileReader *headRotReader, HeadRotFileReader *refRotReader, IVAS_DEC_HANDLE hIvasDec, int16_t *pcmBuf ); #endif #else static ivas_error decodeG192( DecArguments arg, BS_READER_HANDLE hBsReader, HeadRotFileReader *headRotReader, IVAS_DEC_HANDLE hIvasDec, int16_t *pcmBuf ); #endif static ivas_error decodeVoIP( DecArguments arg, BS_READER_HANDLE hBsReader, IVAS_DEC_HANDLE hIvasDec ); #ifdef DEBUGGING static ivas_error printBitstreamInfoVoip( DecArguments arg, BS_READER_HANDLE hBsReader, IVAS_DEC_HANDLE hIvasDec ); Loading @@ -174,9 +163,7 @@ int main( LsCustomFileReader *hLsCustomReader = NULL; hrtfFileReader *hrtfReader = NULL; HeadRotFileReader *headRotReader = NULL; #ifdef FIX_I109_ORIENTATION_TRACKING HeadRotFileReader *refRotReader = NULL; #endif #ifdef OTR_REFERENCE_VECTOR_TRACKING Vector3PairFileReader *referenceVectorReader = NULL; #endif /* OTR_REFERENCE_VECTOR_TRACKING */ Loading Loading @@ -289,7 +276,6 @@ int main( } } #ifdef FIX_I109_ORIENTATION_TRACKING /*------------------------------------------------------------------------------------------* * Open reference rotation file *------------------------------------------------------------------------------------------*/ Loading @@ -301,7 +287,6 @@ int main( goto cleanup; } } #endif #ifdef OTR_REFERENCE_VECTOR_TRACKING /*------------------------------------------------------------------------------------------* * Open reference vector trajectory file Loading Loading @@ -572,15 +557,11 @@ int main( } else { #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING error = decodeG192( arg, hBsReader, headRotReader, refRotReader, referenceVectorReader, hIvasDec, pcmBuf ); #else error = decodeG192( arg, hBsReader, headRotReader, refRotReader, hIvasDec, pcmBuf ); #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #else error = decodeG192( arg, hBsReader, headRotReader, hIvasDec, pcmBuf ); #endif } if ( error == IVAS_ERR_OK || error == IVAS_ERR_END_OF_FILE ) Loading Loading @@ -636,9 +617,7 @@ cleanup: CustomLsReader_close( &hLsCustomReader ); hrtfFileReader_close( &hrtfReader ); HeadRotationFileReader_close( &headRotReader ); #ifdef FIX_I109_ORIENTATION_TRACKING HeadRotationFileReader_close( &refRotReader ); #endif #ifdef OTR_REFERENCE_VECTOR_TRACKING Vector3PairFileReader_close( &referenceVectorReader ); #endif /* OTR_REFERENCE_VECTOR_TRACKING */ Loading Loading @@ -778,7 +757,6 @@ static bool parseCmdlIVAS_dec( arg->enableHeadRotation = false; arg->headrotTrajFileName = NULL; #ifdef FIX_I109_ORIENTATION_TRACKING arg->orientation_tracking = IVAS_PUBLIC_ORIENT_TRK_NONE; arg->enableReferenceRotation = false; arg->headrotTrajFileName = NULL; Loading @@ -786,9 +764,6 @@ static bool parseCmdlIVAS_dec( arg->enableReferenceVectorTracking = false; arg->referenceVectorTrajFileName = NULL; #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #else arg->orientation_tracking = IVAS_PUBLIC_ORIENT_TRK_REF; #endif #ifdef SUPPORT_JBM_TRACEFILE arg->jbmTraceFilename = NULL; Loading Loading @@ -963,26 +938,16 @@ static bool parseCmdlIVAS_dec( } else if ( strcmp( argv_to_upper, "-OTR" ) == 0 ) { #ifndef FIX_I109_ORIENTATION_TRACKING if ( strlen( argv[i + 1] ) > 3 ) { fprintf( stderr, "Error: Invalid orientation tracking type %s \n\n", argv[i + 1] ); usage_dec(); return false; } #endif strncpy( argv_to_upper, argv[i + 1], sizeof( argv_to_upper ) - 1 ); argv_to_upper[sizeof( argv_to_upper ) - 1] = '\0'; to_upper( argv_to_upper ); #ifdef FIX_I109_ORIENTATION_TRACKING if ( strcmp( argv_to_upper, "NONE" ) == 0 ) { arg->orientation_tracking = IVAS_PUBLIC_ORIENT_TRK_NONE; } else #endif if ( strcmp( argv_to_upper, "REF" ) == 0 ) { arg->orientation_tracking = IVAS_PUBLIC_ORIENT_TRK_REF; Loading @@ -1009,7 +974,6 @@ static bool parseCmdlIVAS_dec( } i += 2; } #ifdef FIX_I109_ORIENTATION_TRACKING else if ( strcmp( argv_to_upper, "-RF" ) == 0 ) { arg->enableReferenceRotation = true; Loading @@ -1025,7 +989,6 @@ static bool parseCmdlIVAS_dec( arg->refrotTrajFileName = argv[i]; i++; } #endif #ifdef OTR_REFERENCE_VECTOR_TRACKING else if ( strcmp( argv_to_upper, "-RVF" ) == 0 ) { Loading Loading @@ -1235,13 +1198,9 @@ static void usage_dec( void ) fprintf( stdout, " default is OFF, if this option is not used\n" ); fprintf( stdout, "-force R : Force specific binaural rendering mode, R = (TDREND, CLDFBREND),\n" ); #endif #ifdef FIX_I109_ORIENTATION_TRACKING fprintf( stdout, "-otr tracking_type : head orientation tracking type: 'none', 'ref' or 'avg' (only for binaural rendering)\n" ); fprintf( stdout, "-rf File : Reference rotation specified by external trajectory file\n" ); fprintf( stdout, " works only in combination with -otr ref mode\n" ); #else fprintf( stdout, "-otr tracking_type : head orientation tracking type: 'ref' or 'avg' (only for binaural rendering)\n" ); #endif #ifdef OTR_REFERENCE_VECTOR_TRACKING fprintf( stdout, "-rvf File : Reference vector specified by external trajectory file\n" ); fprintf( stdout, " works only in combination with -otr ref_vec and ref_vec_lev modes\n" ); Loading Loading @@ -1479,12 +1438,10 @@ static ivas_error decodeG192( DecArguments arg, BS_READER_HANDLE hBsReader, HeadRotFileReader *headRotReader, #ifdef FIX_I109_ORIENTATION_TRACKING HeadRotFileReader *refRotReader, #ifdef OTR_REFERENCE_VECTOR_TRACKING Vector3PairFileReader *referenceVectorReader, #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #endif IVAS_DEC_HANDLE hIvasDec, int16_t *pcmBuf ) Loading Loading @@ -1584,7 +1541,6 @@ static ivas_error decodeG192( goto cleanup; } #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING /* reference vector */ if ( arg.enableReferenceVectorTracking ) Loading Loading @@ -1623,13 +1579,11 @@ static ivas_error decodeG192( goto cleanup; } } #endif /* Head-tracking input simulation */ if ( arg.enableHeadRotation ) { IVAS_QUATERNION Quaternions[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; #ifdef FIX_I109_ORIENTATION_TRACKING for ( i = 0; i < IVAS_MAX_PARAM_SPATIAL_SUBFRAMES; i++ ) { #ifdef TD5 Loading @@ -1642,17 +1596,6 @@ static ivas_error decodeG192( goto cleanup; } } #else #ifdef TD5 if ( ( error = HeadRotationFileReading( headRotReader, Quaternions, Pos ) ) != IVAS_ERR_OK ) #else if ( ( error = HeadRotationFileReading( headRotReader, Quaternions, frame ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nError %s while reading head orientation from %s\n", IVAS_DEC_GetErrorMessage( error ), HeadRotationFileReader_getFilePath( headRotReader ) ); goto cleanup; } #endif #ifdef TD5 if ( ( error = IVAS_DEC_FeedHeadTrackData( hIvasDec, Quaternions, Pos ) ) != IVAS_ERR_OK ) Loading apps/renderer.c +0 −47 Original line number Diff line number Diff line Loading @@ -133,12 +133,10 @@ typedef struct char inMetadataFilePaths[RENDERER_MAX_ISM_INPUTS][RENDERER_MAX_CLI_ARG_LENGTH]; int16_t numInMetadataFiles; char headRotationFilePath[RENDERER_MAX_CLI_ARG_LENGTH]; #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING char referenceVectorFilePath[RENDERER_MAX_CLI_ARG_LENGTH]; #endif /* OTR_REFERENCE_VECTOR_TRACKING */ char referenceRotationFilePath[RENDERER_MAX_CLI_ARG_LENGTH]; #endif char customHrtfFilePath[RENDERER_MAX_CLI_ARG_LENGTH]; char renderConfigFilePath[RENDERER_MAX_CLI_ARG_LENGTH]; int8_t orientationTracking; Loading Loading @@ -251,15 +249,11 @@ static const CmdLnParser_Option cliOptions[] = { .id = CmdLnOptionId_orientationTracking, .match = "tracking_type", .matchShort = "otr", #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING .description = "Head orientation tracking type: 'none', 'ref', 'avg' or `ref_vec` or `ref_vec_lev` (only for BINAURAL and BINAURAL_ROOM)", #else .description = "Head orientation tracking type: 'none', 'ref' or 'avg' (only for BINAURAL and BINAURAL_ROOM)", #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #else .description = "Head orientation tracking type: 'ref' or 'avg' (only for BINAURAL and BINAURAL_ROOM)", #endif }, { .id = CmdlnOptionId_lfePosition, Loading Loading @@ -529,12 +523,10 @@ int main( { IVAS_REND_HANDLE hIvasRend; HeadRotFileReader *headRotReader = NULL; #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING Vector3PairFileReader *referenceVectorReader = NULL; #endif /* OTR_REFERENCE_VECTOR_TRACKING */ HeadRotFileReader *referenceRotReader = NULL; #endif hrtfFileReader *hrtfFileReader = NULL; IsmPositionProvider *positionProvider; RenderConfigReader *renderConfigReader = NULL; Loading Loading @@ -579,20 +571,11 @@ int main( convert_backslash( args.inputFilePath ); convert_backslash( args.outputFilePath ); #ifndef FIX_I109_ORIENTATION_TRACKING /* disable 'refrotequal' test cases */ if ( strstr( args.headRotationFilePath, "azi_plus_2-ele_plus_2-every-100-frames.csv" ) != NULL ) { memset( args.headRotationFilePath, '\0', sizeof( args.headRotationFilePath ) ); } #endif convert_backslash( args.headRotationFilePath ); #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING convert_backslash( args.referenceVectorFilePath ); #endif /* OTR_REFERENCE_VECTOR_TRACKING */ convert_backslash( args.referenceRotationFilePath ); #endif convert_backslash( args.inLfePanningMatrixFile ); if ( !isEmptyString( args.headRotationFilePath ) ) Loading @@ -604,7 +587,6 @@ int main( } } #ifdef FIX_I109_ORIENTATION_TRACKING if ( !isEmptyString( args.referenceRotationFilePath ) ) { if ( HeadRotationFileReader_open( args.referenceRotationFilePath, &referenceRotReader ) != IVAS_ERR_OK ) Loading @@ -623,7 +605,6 @@ int main( } } #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #endif if ( !isEmptyString( args.customHrtfFilePath ) ) { Loading Loading @@ -760,12 +741,10 @@ int main( } } #ifdef FIX_I109_ORIENTATION_TRACKING if ( ( error = IVAS_REND_SetOrientationTrackingMode( hIvasRend, args.orientationTracking ) ) != IVAS_ERR_OK ) { return error; } #endif /* Set up output custom layout configuration */ if ( args.outConfig.audioConfig == IVAS_REND_AUDIO_CONFIG_LS_CUSTOM ) Loading Loading @@ -966,7 +945,6 @@ int main( ObjectPositionBuffer mtdBuffer; IsmPositionProvider_getNextFrame( positionProvider, &mtdBuffer ); #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING if ( referenceVectorReader != NULL ) { Loading Loading @@ -1003,14 +981,12 @@ int main( exit( -1 ); } } #endif /* Read from head rotation trajectory file if specified */ if ( headRotReader != NULL ) { IVAS_QUATERNION quatBuffer[RENDERER_HEAD_POSITIONS_PER_FRAME]; #ifdef FIX_I109_ORIENTATION_TRACKING for ( i = 0; i < RENDERER_HEAD_POSITIONS_PER_FRAME; i++ ) { #ifdef TD5 Loading @@ -1023,13 +999,6 @@ int main( exit( -1 ); } } #else #ifdef TD5 HeadRotationFileReading( headRotReader, quatBuffer, Pos ); #else HeadRotationFileReading( headRotReader, quatBuffer, frame ); #endif #endif #ifdef TD5 if ( ( error = IVAS_REND_SetHeadRotation( hIvasRend, quatBuffer, Pos ) ) != IVAS_ERR_OK ) #else Loading Loading @@ -1226,12 +1195,10 @@ int main( AudioFileReader_close( &audioReader ); AudioFileWriter_close( &audioWriter ); HeadRotationFileReader_close( &headRotReader ); #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING Vector3PairFileReader_close( &referenceVectorReader ); #endif /* OTR_REFERENCE_VECTOR_TRACKING */ HeadRotationFileReader_close( &referenceRotReader ); #endif hrtfFileReader_close( &hrtfFileReader ); IVAS_REND_Close( &hIvasRend ); IsmPositionProvider_close( positionProvider ); Loading Loading @@ -1457,15 +1424,11 @@ static bool parseOrientationTracking( to_upper( value ); #ifdef FIX_I109_ORIENTATION_TRACKING if ( strcmp( value, "NONE" ) == 0 ) { *tracking_type = IVAS_ORIENT_TRK_NONE; } else if ( strcmp( value, "REF" ) == 0 ) #else if ( strcmp( value, "REF" ) == 0 ) #endif { *tracking_type = IVAS_ORIENT_TRK_REF; } Loading @@ -1473,7 +1436,6 @@ static bool parseOrientationTracking( { *tracking_type = IVAS_ORIENT_TRK_AVG; } #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING else if ( strcmp( value, "REF_VEC" ) == 0 ) { Loading @@ -1484,7 +1446,6 @@ static bool parseOrientationTracking( *tracking_type = IVAS_ORIENT_TRK_REF_VEC_LEV; } #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #endif else { fprintf( stderr, "Error: Invalid orientation tracking type %s \n\n", value ); Loading Loading @@ -1702,20 +1663,14 @@ static CmdlnArgs defaultArgs( args.numInMetadataFiles = 0; clearString( args.headRotationFilePath ); #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING clearString( args.referenceVectorFilePath ); #endif /* OTR_REFERENCE_VECTOR_TRACKING */ clearString( args.referenceRotationFilePath ); #endif clearString( args.customHrtfFilePath ); clearString( args.renderConfigFilePath ); #ifdef FIX_I109_ORIENTATION_TRACKING args.orientationTracking = IVAS_ORIENT_TRK_NONE; #else args.orientationTracking = IVAS_ORIENT_TRK_REF; #endif args.noDiegeticPan = 0.0f; args.delayCompensationEnabled = true; Loading Loading @@ -1790,7 +1745,6 @@ static void parseOption( assert( numOptionValues == 1 ); strncpy( args->headRotationFilePath, optionValues[0], RENDERER_MAX_CLI_ARG_LENGTH - 1 ); break; #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING case CmdLnOptionId_referenceVectorFile: assert( numOptionValues == 1 ); Loading @@ -1801,7 +1755,6 @@ static void parseOption( assert( numOptionValues == 1 ); strncpy( args->referenceRotationFilePath, optionValues[0], RENDERER_MAX_CLI_ARG_LENGTH - 1 ); break; #endif case CmdLnOptionId_customHrtfFile: assert( numOptionValues == 1 ); strncpy( args->customHrtfFilePath, optionValues[0], RENDERER_MAX_CLI_ARG_LENGTH - 1 ); Loading lib_com/ivas_cnst.h +0 −11 Original line number Diff line number Diff line Loading @@ -1508,7 +1508,6 @@ typedef enum *----------------------------------------------------------------------------------*/ /* Orientation tracking types */ #ifdef FIX_I109_ORIENTATION_TRACKING #define IVAS_ORIENT_TRK_NONE 0 #define IVAS_ORIENT_TRK_REF 1 #define IVAS_ORIENT_TRK_AVG 2 Loading @@ -1516,27 +1515,17 @@ typedef enum #define IVAS_ORIENT_TRK_REF_VEC 3 #define IVAS_ORIENT_TRK_REF_VEC_LEV 4 #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #else #define IVAS_ORIENT_TRK_REF 0 #define IVAS_ORIENT_TRK_AVG 1 #endif typedef enum { #ifdef FIX_I109_ORIENTATION_TRACKING OTR_TRACKING_NONE = IVAS_ORIENT_TRK_NONE, #else OTR_TRACKING_NONE = IVAS_ORIENT_TRK_REF-1, #endif OTR_TRACKING_REF_ORIENT = IVAS_ORIENT_TRK_REF, /* track orientation relative to external reference orientation (default: no rotation) */ OTR_TRACKING_AVG_ORIENT = IVAS_ORIENT_TRK_AVG /* track orientation relative to average orientation */ #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING , OTR_TRACKING_REF_VEC = IVAS_ORIENT_TRK_REF_VEC, /* track orientation relative to external reference vector */ OTR_TRACKING_REF_VEC_LEV = IVAS_ORIENT_TRK_REF_VEC_LEV /* track orientation relative to level component of external reference vector */ #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #endif } OTR_TRACKING_T; Loading lib_com/options.h +0 −3 Original line number Diff line number Diff line Loading @@ -141,7 +141,6 @@ #define DISABLE_ADAP_RES_COD_TMP /* temporary fix for IVAS-403, disables adaptive residual coding */ /*#define ITD_WINNER_GAIN_MODIFY */ /* ITD optimization - WORK IN PROGRESS */ /*#define FIX_I4_OL_PITCH*/ /* fix open-loop pitch used for EVS core switching */ #define FIX_I109_ORIENTATION_TRACKING /* Issue 109: Harmonize head and orientation tracking */ /*#define SBA_HPF_TUNING_DEC*/ #define BINAURALIZATION_DELAY_REPORT /* VA: Issue 255 - Changes the way the decoder delay is reported */ Loading @@ -154,9 +153,7 @@ #define FIX_371_DELAY_REPORT /* Issue 371: div. by zero with -no_delay_cmp */ #define FIX_373_MASA_DELAY_COMP_MSAN /* Nokia: Issue 373: MASA audio/meta delay compensation. MSAN bugfix */ #ifdef FIX_I109_ORIENTATION_TRACKING #define OTR_REFERENCE_VECTOR_TRACKING /* FhG: enables the reference position orientation tracking mode */ #endif #define FIX_380_BFI_PARAMISM /* VA: issue 380 - fix metadata recovery in ParamISM BFI */ #define FIX_MDCT_BASED_BWD /* FhG: fixes for BWD for issues with reaction to transients for MDCT-stereo and MCT */ Loading lib_dec/ivas_init_dec.c +0 −15 Original line number Diff line number Diff line Loading @@ -787,7 +787,6 @@ ivas_error ivas_init_decoder( } } #ifdef FIX_I109_ORIENTATION_TRACKING /*-----------------------------------------------------------------* * Set head/orientation tracking *-----------------------------------------------------------------*/ Loading Loading @@ -836,7 +835,6 @@ ivas_error ivas_init_decoder( } #endif /* OTR_REFERENCE_VECTOR_TRACKING */ } #endif /*-----------------------------------------------------------------* * Allocate and initialize SCE/CPE and other handles Loading Loading @@ -1336,13 +1334,8 @@ ivas_error ivas_init_decoder( } } #ifdef FIX_I109_ORIENTATION_TRACKING if ( ( error = ivas_rend_openCrend( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hDecoderConfig->output_config, st_ivas->hRenderConfig, st_ivas->hSetOfHRTF, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK ) #else if ( ( error = ivas_rend_openCrend( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hDecoderConfig->output_config, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->Opt_Headrotation, st_ivas->hSetOfHRTF, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK ) #endif { return error; } Loading Loading @@ -1817,15 +1810,7 @@ void ivas_destroy_dec( } /* Head track data handle */ #ifdef FIX_I109_ORIENTATION_TRACKING ivas_headTrack_close( &st_ivas->hHeadTrackData ); #else if ( st_ivas->hHeadTrackData != NULL ) { free( st_ivas->hHeadTrackData ); st_ivas->hHeadTrackData = NULL; } #endif /* Time Domain binaural renderer handle */ if ( st_ivas->hBinRendererTd != NULL ) Loading Loading
apps/decoder.c +0 −57 Original line number Diff line number Diff line Loading @@ -72,7 +72,6 @@ static #define MAX_NUM_OUTPUT_CHANNELS 16 #define MAX_OUTPUT_PCM_BUFFER_SIZE ( MAX_NUM_OUTPUT_CHANNELS * MAX_FRAME_SIZE ) #ifdef FIX_I109_ORIENTATION_TRACKING #define IVAS_PUBLIC_ORIENT_TRK_NONE ( 0 ) #define IVAS_PUBLIC_ORIENT_TRK_REF ( 1 ) #define IVAS_PUBLIC_ORIENT_TRK_AVG ( 2 ) Loading @@ -80,10 +79,6 @@ static #define IVAS_PUBLIC_ORIENT_TRK_REF_VEC ( 3 ) #define IVAS_PUBLIC_ORIENT_TRK_REF_VEC_LEV ( 4 ) #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #else #define IVAS_PUBLIC_ORIENT_TRK_REF 0 #define IVAS_PUBLIC_ORIENT_TRK_AVG 1 #endif typedef struct { Loading @@ -97,10 +92,8 @@ typedef struct bool voipMode; bool enableHeadRotation; char *headrotTrajFileName; #ifdef FIX_I109_ORIENTATION_TRACKING bool enableReferenceRotation; char *refrotTrajFileName; #endif #ifdef OTR_REFERENCE_VECTOR_TRACKING bool enableReferenceVectorTracking; char *referenceVectorTrajFileName; Loading Loading @@ -140,15 +133,11 @@ typedef struct static bool parseCmdlIVAS_dec( int16_t argc, char **argv, DecArguments *arg ); static void usage_dec( void ); #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING static ivas_error decodeG192( DecArguments arg, BS_READER_HANDLE hBsReader, HeadRotFileReader *headRotReader, HeadRotFileReader *refRotReader, Vector3PairFileReader *referenceVectorReader, IVAS_DEC_HANDLE hIvasDec, int16_t *pcmBuf ); #else /* OTR_REFERENCE_VECTOR_TRACKING */ static ivas_error decodeG192( DecArguments arg, BS_READER_HANDLE hBsReader, HeadRotFileReader *headRotReader, HeadRotFileReader *refRotReader, IVAS_DEC_HANDLE hIvasDec, int16_t *pcmBuf ); #endif #else static ivas_error decodeG192( DecArguments arg, BS_READER_HANDLE hBsReader, HeadRotFileReader *headRotReader, IVAS_DEC_HANDLE hIvasDec, int16_t *pcmBuf ); #endif static ivas_error decodeVoIP( DecArguments arg, BS_READER_HANDLE hBsReader, IVAS_DEC_HANDLE hIvasDec ); #ifdef DEBUGGING static ivas_error printBitstreamInfoVoip( DecArguments arg, BS_READER_HANDLE hBsReader, IVAS_DEC_HANDLE hIvasDec ); Loading @@ -174,9 +163,7 @@ int main( LsCustomFileReader *hLsCustomReader = NULL; hrtfFileReader *hrtfReader = NULL; HeadRotFileReader *headRotReader = NULL; #ifdef FIX_I109_ORIENTATION_TRACKING HeadRotFileReader *refRotReader = NULL; #endif #ifdef OTR_REFERENCE_VECTOR_TRACKING Vector3PairFileReader *referenceVectorReader = NULL; #endif /* OTR_REFERENCE_VECTOR_TRACKING */ Loading Loading @@ -289,7 +276,6 @@ int main( } } #ifdef FIX_I109_ORIENTATION_TRACKING /*------------------------------------------------------------------------------------------* * Open reference rotation file *------------------------------------------------------------------------------------------*/ Loading @@ -301,7 +287,6 @@ int main( goto cleanup; } } #endif #ifdef OTR_REFERENCE_VECTOR_TRACKING /*------------------------------------------------------------------------------------------* * Open reference vector trajectory file Loading Loading @@ -572,15 +557,11 @@ int main( } else { #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING error = decodeG192( arg, hBsReader, headRotReader, refRotReader, referenceVectorReader, hIvasDec, pcmBuf ); #else error = decodeG192( arg, hBsReader, headRotReader, refRotReader, hIvasDec, pcmBuf ); #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #else error = decodeG192( arg, hBsReader, headRotReader, hIvasDec, pcmBuf ); #endif } if ( error == IVAS_ERR_OK || error == IVAS_ERR_END_OF_FILE ) Loading Loading @@ -636,9 +617,7 @@ cleanup: CustomLsReader_close( &hLsCustomReader ); hrtfFileReader_close( &hrtfReader ); HeadRotationFileReader_close( &headRotReader ); #ifdef FIX_I109_ORIENTATION_TRACKING HeadRotationFileReader_close( &refRotReader ); #endif #ifdef OTR_REFERENCE_VECTOR_TRACKING Vector3PairFileReader_close( &referenceVectorReader ); #endif /* OTR_REFERENCE_VECTOR_TRACKING */ Loading Loading @@ -778,7 +757,6 @@ static bool parseCmdlIVAS_dec( arg->enableHeadRotation = false; arg->headrotTrajFileName = NULL; #ifdef FIX_I109_ORIENTATION_TRACKING arg->orientation_tracking = IVAS_PUBLIC_ORIENT_TRK_NONE; arg->enableReferenceRotation = false; arg->headrotTrajFileName = NULL; Loading @@ -786,9 +764,6 @@ static bool parseCmdlIVAS_dec( arg->enableReferenceVectorTracking = false; arg->referenceVectorTrajFileName = NULL; #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #else arg->orientation_tracking = IVAS_PUBLIC_ORIENT_TRK_REF; #endif #ifdef SUPPORT_JBM_TRACEFILE arg->jbmTraceFilename = NULL; Loading Loading @@ -963,26 +938,16 @@ static bool parseCmdlIVAS_dec( } else if ( strcmp( argv_to_upper, "-OTR" ) == 0 ) { #ifndef FIX_I109_ORIENTATION_TRACKING if ( strlen( argv[i + 1] ) > 3 ) { fprintf( stderr, "Error: Invalid orientation tracking type %s \n\n", argv[i + 1] ); usage_dec(); return false; } #endif strncpy( argv_to_upper, argv[i + 1], sizeof( argv_to_upper ) - 1 ); argv_to_upper[sizeof( argv_to_upper ) - 1] = '\0'; to_upper( argv_to_upper ); #ifdef FIX_I109_ORIENTATION_TRACKING if ( strcmp( argv_to_upper, "NONE" ) == 0 ) { arg->orientation_tracking = IVAS_PUBLIC_ORIENT_TRK_NONE; } else #endif if ( strcmp( argv_to_upper, "REF" ) == 0 ) { arg->orientation_tracking = IVAS_PUBLIC_ORIENT_TRK_REF; Loading @@ -1009,7 +974,6 @@ static bool parseCmdlIVAS_dec( } i += 2; } #ifdef FIX_I109_ORIENTATION_TRACKING else if ( strcmp( argv_to_upper, "-RF" ) == 0 ) { arg->enableReferenceRotation = true; Loading @@ -1025,7 +989,6 @@ static bool parseCmdlIVAS_dec( arg->refrotTrajFileName = argv[i]; i++; } #endif #ifdef OTR_REFERENCE_VECTOR_TRACKING else if ( strcmp( argv_to_upper, "-RVF" ) == 0 ) { Loading Loading @@ -1235,13 +1198,9 @@ static void usage_dec( void ) fprintf( stdout, " default is OFF, if this option is not used\n" ); fprintf( stdout, "-force R : Force specific binaural rendering mode, R = (TDREND, CLDFBREND),\n" ); #endif #ifdef FIX_I109_ORIENTATION_TRACKING fprintf( stdout, "-otr tracking_type : head orientation tracking type: 'none', 'ref' or 'avg' (only for binaural rendering)\n" ); fprintf( stdout, "-rf File : Reference rotation specified by external trajectory file\n" ); fprintf( stdout, " works only in combination with -otr ref mode\n" ); #else fprintf( stdout, "-otr tracking_type : head orientation tracking type: 'ref' or 'avg' (only for binaural rendering)\n" ); #endif #ifdef OTR_REFERENCE_VECTOR_TRACKING fprintf( stdout, "-rvf File : Reference vector specified by external trajectory file\n" ); fprintf( stdout, " works only in combination with -otr ref_vec and ref_vec_lev modes\n" ); Loading Loading @@ -1479,12 +1438,10 @@ static ivas_error decodeG192( DecArguments arg, BS_READER_HANDLE hBsReader, HeadRotFileReader *headRotReader, #ifdef FIX_I109_ORIENTATION_TRACKING HeadRotFileReader *refRotReader, #ifdef OTR_REFERENCE_VECTOR_TRACKING Vector3PairFileReader *referenceVectorReader, #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #endif IVAS_DEC_HANDLE hIvasDec, int16_t *pcmBuf ) Loading Loading @@ -1584,7 +1541,6 @@ static ivas_error decodeG192( goto cleanup; } #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING /* reference vector */ if ( arg.enableReferenceVectorTracking ) Loading Loading @@ -1623,13 +1579,11 @@ static ivas_error decodeG192( goto cleanup; } } #endif /* Head-tracking input simulation */ if ( arg.enableHeadRotation ) { IVAS_QUATERNION Quaternions[IVAS_MAX_PARAM_SPATIAL_SUBFRAMES]; #ifdef FIX_I109_ORIENTATION_TRACKING for ( i = 0; i < IVAS_MAX_PARAM_SPATIAL_SUBFRAMES; i++ ) { #ifdef TD5 Loading @@ -1642,17 +1596,6 @@ static ivas_error decodeG192( goto cleanup; } } #else #ifdef TD5 if ( ( error = HeadRotationFileReading( headRotReader, Quaternions, Pos ) ) != IVAS_ERR_OK ) #else if ( ( error = HeadRotationFileReading( headRotReader, Quaternions, frame ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nError %s while reading head orientation from %s\n", IVAS_DEC_GetErrorMessage( error ), HeadRotationFileReader_getFilePath( headRotReader ) ); goto cleanup; } #endif #ifdef TD5 if ( ( error = IVAS_DEC_FeedHeadTrackData( hIvasDec, Quaternions, Pos ) ) != IVAS_ERR_OK ) Loading
apps/renderer.c +0 −47 Original line number Diff line number Diff line Loading @@ -133,12 +133,10 @@ typedef struct char inMetadataFilePaths[RENDERER_MAX_ISM_INPUTS][RENDERER_MAX_CLI_ARG_LENGTH]; int16_t numInMetadataFiles; char headRotationFilePath[RENDERER_MAX_CLI_ARG_LENGTH]; #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING char referenceVectorFilePath[RENDERER_MAX_CLI_ARG_LENGTH]; #endif /* OTR_REFERENCE_VECTOR_TRACKING */ char referenceRotationFilePath[RENDERER_MAX_CLI_ARG_LENGTH]; #endif char customHrtfFilePath[RENDERER_MAX_CLI_ARG_LENGTH]; char renderConfigFilePath[RENDERER_MAX_CLI_ARG_LENGTH]; int8_t orientationTracking; Loading Loading @@ -251,15 +249,11 @@ static const CmdLnParser_Option cliOptions[] = { .id = CmdLnOptionId_orientationTracking, .match = "tracking_type", .matchShort = "otr", #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING .description = "Head orientation tracking type: 'none', 'ref', 'avg' or `ref_vec` or `ref_vec_lev` (only for BINAURAL and BINAURAL_ROOM)", #else .description = "Head orientation tracking type: 'none', 'ref' or 'avg' (only for BINAURAL and BINAURAL_ROOM)", #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #else .description = "Head orientation tracking type: 'ref' or 'avg' (only for BINAURAL and BINAURAL_ROOM)", #endif }, { .id = CmdlnOptionId_lfePosition, Loading Loading @@ -529,12 +523,10 @@ int main( { IVAS_REND_HANDLE hIvasRend; HeadRotFileReader *headRotReader = NULL; #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING Vector3PairFileReader *referenceVectorReader = NULL; #endif /* OTR_REFERENCE_VECTOR_TRACKING */ HeadRotFileReader *referenceRotReader = NULL; #endif hrtfFileReader *hrtfFileReader = NULL; IsmPositionProvider *positionProvider; RenderConfigReader *renderConfigReader = NULL; Loading Loading @@ -579,20 +571,11 @@ int main( convert_backslash( args.inputFilePath ); convert_backslash( args.outputFilePath ); #ifndef FIX_I109_ORIENTATION_TRACKING /* disable 'refrotequal' test cases */ if ( strstr( args.headRotationFilePath, "azi_plus_2-ele_plus_2-every-100-frames.csv" ) != NULL ) { memset( args.headRotationFilePath, '\0', sizeof( args.headRotationFilePath ) ); } #endif convert_backslash( args.headRotationFilePath ); #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING convert_backslash( args.referenceVectorFilePath ); #endif /* OTR_REFERENCE_VECTOR_TRACKING */ convert_backslash( args.referenceRotationFilePath ); #endif convert_backslash( args.inLfePanningMatrixFile ); if ( !isEmptyString( args.headRotationFilePath ) ) Loading @@ -604,7 +587,6 @@ int main( } } #ifdef FIX_I109_ORIENTATION_TRACKING if ( !isEmptyString( args.referenceRotationFilePath ) ) { if ( HeadRotationFileReader_open( args.referenceRotationFilePath, &referenceRotReader ) != IVAS_ERR_OK ) Loading @@ -623,7 +605,6 @@ int main( } } #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #endif if ( !isEmptyString( args.customHrtfFilePath ) ) { Loading Loading @@ -760,12 +741,10 @@ int main( } } #ifdef FIX_I109_ORIENTATION_TRACKING if ( ( error = IVAS_REND_SetOrientationTrackingMode( hIvasRend, args.orientationTracking ) ) != IVAS_ERR_OK ) { return error; } #endif /* Set up output custom layout configuration */ if ( args.outConfig.audioConfig == IVAS_REND_AUDIO_CONFIG_LS_CUSTOM ) Loading Loading @@ -966,7 +945,6 @@ int main( ObjectPositionBuffer mtdBuffer; IsmPositionProvider_getNextFrame( positionProvider, &mtdBuffer ); #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING if ( referenceVectorReader != NULL ) { Loading Loading @@ -1003,14 +981,12 @@ int main( exit( -1 ); } } #endif /* Read from head rotation trajectory file if specified */ if ( headRotReader != NULL ) { IVAS_QUATERNION quatBuffer[RENDERER_HEAD_POSITIONS_PER_FRAME]; #ifdef FIX_I109_ORIENTATION_TRACKING for ( i = 0; i < RENDERER_HEAD_POSITIONS_PER_FRAME; i++ ) { #ifdef TD5 Loading @@ -1023,13 +999,6 @@ int main( exit( -1 ); } } #else #ifdef TD5 HeadRotationFileReading( headRotReader, quatBuffer, Pos ); #else HeadRotationFileReading( headRotReader, quatBuffer, frame ); #endif #endif #ifdef TD5 if ( ( error = IVAS_REND_SetHeadRotation( hIvasRend, quatBuffer, Pos ) ) != IVAS_ERR_OK ) #else Loading Loading @@ -1226,12 +1195,10 @@ int main( AudioFileReader_close( &audioReader ); AudioFileWriter_close( &audioWriter ); HeadRotationFileReader_close( &headRotReader ); #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING Vector3PairFileReader_close( &referenceVectorReader ); #endif /* OTR_REFERENCE_VECTOR_TRACKING */ HeadRotationFileReader_close( &referenceRotReader ); #endif hrtfFileReader_close( &hrtfFileReader ); IVAS_REND_Close( &hIvasRend ); IsmPositionProvider_close( positionProvider ); Loading Loading @@ -1457,15 +1424,11 @@ static bool parseOrientationTracking( to_upper( value ); #ifdef FIX_I109_ORIENTATION_TRACKING if ( strcmp( value, "NONE" ) == 0 ) { *tracking_type = IVAS_ORIENT_TRK_NONE; } else if ( strcmp( value, "REF" ) == 0 ) #else if ( strcmp( value, "REF" ) == 0 ) #endif { *tracking_type = IVAS_ORIENT_TRK_REF; } Loading @@ -1473,7 +1436,6 @@ static bool parseOrientationTracking( { *tracking_type = IVAS_ORIENT_TRK_AVG; } #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING else if ( strcmp( value, "REF_VEC" ) == 0 ) { Loading @@ -1484,7 +1446,6 @@ static bool parseOrientationTracking( *tracking_type = IVAS_ORIENT_TRK_REF_VEC_LEV; } #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #endif else { fprintf( stderr, "Error: Invalid orientation tracking type %s \n\n", value ); Loading Loading @@ -1702,20 +1663,14 @@ static CmdlnArgs defaultArgs( args.numInMetadataFiles = 0; clearString( args.headRotationFilePath ); #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING clearString( args.referenceVectorFilePath ); #endif /* OTR_REFERENCE_VECTOR_TRACKING */ clearString( args.referenceRotationFilePath ); #endif clearString( args.customHrtfFilePath ); clearString( args.renderConfigFilePath ); #ifdef FIX_I109_ORIENTATION_TRACKING args.orientationTracking = IVAS_ORIENT_TRK_NONE; #else args.orientationTracking = IVAS_ORIENT_TRK_REF; #endif args.noDiegeticPan = 0.0f; args.delayCompensationEnabled = true; Loading Loading @@ -1790,7 +1745,6 @@ static void parseOption( assert( numOptionValues == 1 ); strncpy( args->headRotationFilePath, optionValues[0], RENDERER_MAX_CLI_ARG_LENGTH - 1 ); break; #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING case CmdLnOptionId_referenceVectorFile: assert( numOptionValues == 1 ); Loading @@ -1801,7 +1755,6 @@ static void parseOption( assert( numOptionValues == 1 ); strncpy( args->referenceRotationFilePath, optionValues[0], RENDERER_MAX_CLI_ARG_LENGTH - 1 ); break; #endif case CmdLnOptionId_customHrtfFile: assert( numOptionValues == 1 ); strncpy( args->customHrtfFilePath, optionValues[0], RENDERER_MAX_CLI_ARG_LENGTH - 1 ); Loading
lib_com/ivas_cnst.h +0 −11 Original line number Diff line number Diff line Loading @@ -1508,7 +1508,6 @@ typedef enum *----------------------------------------------------------------------------------*/ /* Orientation tracking types */ #ifdef FIX_I109_ORIENTATION_TRACKING #define IVAS_ORIENT_TRK_NONE 0 #define IVAS_ORIENT_TRK_REF 1 #define IVAS_ORIENT_TRK_AVG 2 Loading @@ -1516,27 +1515,17 @@ typedef enum #define IVAS_ORIENT_TRK_REF_VEC 3 #define IVAS_ORIENT_TRK_REF_VEC_LEV 4 #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #else #define IVAS_ORIENT_TRK_REF 0 #define IVAS_ORIENT_TRK_AVG 1 #endif typedef enum { #ifdef FIX_I109_ORIENTATION_TRACKING OTR_TRACKING_NONE = IVAS_ORIENT_TRK_NONE, #else OTR_TRACKING_NONE = IVAS_ORIENT_TRK_REF-1, #endif OTR_TRACKING_REF_ORIENT = IVAS_ORIENT_TRK_REF, /* track orientation relative to external reference orientation (default: no rotation) */ OTR_TRACKING_AVG_ORIENT = IVAS_ORIENT_TRK_AVG /* track orientation relative to average orientation */ #ifdef FIX_I109_ORIENTATION_TRACKING #ifdef OTR_REFERENCE_VECTOR_TRACKING , OTR_TRACKING_REF_VEC = IVAS_ORIENT_TRK_REF_VEC, /* track orientation relative to external reference vector */ OTR_TRACKING_REF_VEC_LEV = IVAS_ORIENT_TRK_REF_VEC_LEV /* track orientation relative to level component of external reference vector */ #endif /* OTR_REFERENCE_VECTOR_TRACKING */ #endif } OTR_TRACKING_T; Loading
lib_com/options.h +0 −3 Original line number Diff line number Diff line Loading @@ -141,7 +141,6 @@ #define DISABLE_ADAP_RES_COD_TMP /* temporary fix for IVAS-403, disables adaptive residual coding */ /*#define ITD_WINNER_GAIN_MODIFY */ /* ITD optimization - WORK IN PROGRESS */ /*#define FIX_I4_OL_PITCH*/ /* fix open-loop pitch used for EVS core switching */ #define FIX_I109_ORIENTATION_TRACKING /* Issue 109: Harmonize head and orientation tracking */ /*#define SBA_HPF_TUNING_DEC*/ #define BINAURALIZATION_DELAY_REPORT /* VA: Issue 255 - Changes the way the decoder delay is reported */ Loading @@ -154,9 +153,7 @@ #define FIX_371_DELAY_REPORT /* Issue 371: div. by zero with -no_delay_cmp */ #define FIX_373_MASA_DELAY_COMP_MSAN /* Nokia: Issue 373: MASA audio/meta delay compensation. MSAN bugfix */ #ifdef FIX_I109_ORIENTATION_TRACKING #define OTR_REFERENCE_VECTOR_TRACKING /* FhG: enables the reference position orientation tracking mode */ #endif #define FIX_380_BFI_PARAMISM /* VA: issue 380 - fix metadata recovery in ParamISM BFI */ #define FIX_MDCT_BASED_BWD /* FhG: fixes for BWD for issues with reaction to transients for MDCT-stereo and MCT */ Loading
lib_dec/ivas_init_dec.c +0 −15 Original line number Diff line number Diff line Loading @@ -787,7 +787,6 @@ ivas_error ivas_init_decoder( } } #ifdef FIX_I109_ORIENTATION_TRACKING /*-----------------------------------------------------------------* * Set head/orientation tracking *-----------------------------------------------------------------*/ Loading Loading @@ -836,7 +835,6 @@ ivas_error ivas_init_decoder( } #endif /* OTR_REFERENCE_VECTOR_TRACKING */ } #endif /*-----------------------------------------------------------------* * Allocate and initialize SCE/CPE and other handles Loading Loading @@ -1336,13 +1334,8 @@ ivas_error ivas_init_decoder( } } #ifdef FIX_I109_ORIENTATION_TRACKING if ( ( error = ivas_rend_openCrend( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hDecoderConfig->output_config, st_ivas->hRenderConfig, st_ivas->hSetOfHRTF, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK ) #else if ( ( error = ivas_rend_openCrend( &( st_ivas->hCrendWrapper ), st_ivas->intern_config, st_ivas->hDecoderConfig->output_config, st_ivas->hRenderConfig, st_ivas->hDecoderConfig->Opt_Headrotation, st_ivas->hSetOfHRTF, st_ivas->hDecoderConfig->output_Fs ) ) != IVAS_ERR_OK ) #endif { return error; } Loading Loading @@ -1817,15 +1810,7 @@ void ivas_destroy_dec( } /* Head track data handle */ #ifdef FIX_I109_ORIENTATION_TRACKING ivas_headTrack_close( &st_ivas->hHeadTrackData ); #else if ( st_ivas->hHeadTrackData != NULL ) { free( st_ivas->hHeadTrackData ); st_ivas->hHeadTrackData = NULL; } #endif /* Time Domain binaural renderer handle */ if ( st_ivas->hBinRendererTd != NULL ) Loading