Loading apps/renderer.c +2 −2 Original line number Diff line number Diff line Loading @@ -176,7 +176,7 @@ typedef struct bool lfeCustomRoutingEnabled; char inLfePanningMatrixFile[RENDERER_MAX_CLI_ARG_LENGTH]; #ifdef FIX_488_SYNC_DELAY int16_t syncMdDelay; float syncMdDelay; #endif } CmdlnArgs; Loading Loading @@ -2656,7 +2656,7 @@ static void parseOption( case CmdLnOptionId_syncMdDelay: assert( numOptionValues == 1 ); /* Metadata Delay to sync with audio delay in ms */ args->syncMdDelay = (int16_t) strtof( optionValues[0], NULL ); args->syncMdDelay = strtof( optionValues[0], NULL ); break; #endif default: Loading lib_rend/lib_rend.c +11 −4 Original line number Diff line number Diff line Loading @@ -152,7 +152,7 @@ typedef struct OMASA_ANA_HANDLE hOMasa; uint16_t total_num_objects; #ifdef FIX_488_SYNC_DELAY int16_t ism_metadata_delay_ms; float ism_metadata_delay_ms; #endif } input_ism; Loading Loading @@ -6066,11 +6066,18 @@ static ivas_error renderIsmToSplitBinaural( float tmpBinaural[MAX_HEAD_ROT_POSES * BINAURAL_CHANNELS][L_FRAME48k]; int16_t output_frame = ismInput->base.inputBuffer.config.numSamplesPerChannel; COMBINED_ORIENTATION_HANDLE pCombinedOrientationData; #ifdef FIX_488_SYNC_DELAY int16_t ism_md_subframe_update_ext; #endif push_wmops( "renderIsmToSplitBinaural" ); pSplitRendWrapper = ismInput->base.ctx.pSplitRendWrapper; pMultiBinPoseData = &pSplitRendWrapper->multiBinPoseData; #ifdef FIX_488_SYNC_DELAY /* Metadata Delay to sync with audio delay converted from ms to 5ms (1000/50/4) subframe index */ ism_md_subframe_update_ext = (int16_t) round( ismInput->ism_metadata_delay_ms / ( 1000 / FRAMES_PER_SEC / MAX_PARAM_SPATIAL_SUBFRAMES ) ); #endif /* If not yet allocated, open additional instances of TD renderer */ for ( i = 0; i < pMultiBinPoseData->num_poses - 1; ++i ) Loading Loading @@ -6150,7 +6157,7 @@ static ivas_error renderIsmToSplitBinaural( &ismInput->currentPos, NULL, #ifdef FIX_488_SYNC_DELAY ismInput->ism_metadata_delay_ms, /* Ism Audio Metadata Delay Sync in ms for External Renderer */ ism_md_subframe_update_ext, #endif output_frame, tmpProcessing ); Loading @@ -6168,7 +6175,7 @@ static ivas_error renderIsmToSplitBinaural( &ismInput->currentPos, NULL, #ifdef FIX_488_SYNC_DELAY ismInput->ism_metadata_delay_ms, /* Ism Audio Metadata Delay Sync in ms for External Renderer */ ism_md_subframe_update_ext, #endif output_frame, tmpProcessing ); Loading Loading @@ -8335,7 +8342,7 @@ ivas_error IVAS_REND_SetTotalNumberOfObjects( ivas_error IVAS_REND_SetIsmMetadataDelay( IVAS_REND_HANDLE hIvasRend, /* i/o: IVAS renderer handle */ const uint16_t sync_md_delay /* i: Ism Metadata Delay in ms to sync with audio delay */ const float sync_md_delay /* i: Ism Metadata Delay in ms to sync with audio delay */ ) { if ( hIvasRend == NULL ) Loading lib_rend/lib_rend.h +1 −1 Original line number Diff line number Diff line Loading @@ -352,7 +352,7 @@ ivas_error IVAS_REND_SetTotalNumberOfObjects( #ifdef FIX_488_SYNC_DELAY ivas_error IVAS_REND_SetIsmMetadataDelay( IVAS_REND_HANDLE hIvasRend, /* i/o: IVAS renderer handle */ const uint16_t sync_md_delay /* i: Metadata Delay in ms to sync with audio delay */ const float sync_md_delay /* i: Metadata Delay in ms to sync with audio delay */ ); #endif Loading Loading
apps/renderer.c +2 −2 Original line number Diff line number Diff line Loading @@ -176,7 +176,7 @@ typedef struct bool lfeCustomRoutingEnabled; char inLfePanningMatrixFile[RENDERER_MAX_CLI_ARG_LENGTH]; #ifdef FIX_488_SYNC_DELAY int16_t syncMdDelay; float syncMdDelay; #endif } CmdlnArgs; Loading Loading @@ -2656,7 +2656,7 @@ static void parseOption( case CmdLnOptionId_syncMdDelay: assert( numOptionValues == 1 ); /* Metadata Delay to sync with audio delay in ms */ args->syncMdDelay = (int16_t) strtof( optionValues[0], NULL ); args->syncMdDelay = strtof( optionValues[0], NULL ); break; #endif default: Loading
lib_rend/lib_rend.c +11 −4 Original line number Diff line number Diff line Loading @@ -152,7 +152,7 @@ typedef struct OMASA_ANA_HANDLE hOMasa; uint16_t total_num_objects; #ifdef FIX_488_SYNC_DELAY int16_t ism_metadata_delay_ms; float ism_metadata_delay_ms; #endif } input_ism; Loading Loading @@ -6066,11 +6066,18 @@ static ivas_error renderIsmToSplitBinaural( float tmpBinaural[MAX_HEAD_ROT_POSES * BINAURAL_CHANNELS][L_FRAME48k]; int16_t output_frame = ismInput->base.inputBuffer.config.numSamplesPerChannel; COMBINED_ORIENTATION_HANDLE pCombinedOrientationData; #ifdef FIX_488_SYNC_DELAY int16_t ism_md_subframe_update_ext; #endif push_wmops( "renderIsmToSplitBinaural" ); pSplitRendWrapper = ismInput->base.ctx.pSplitRendWrapper; pMultiBinPoseData = &pSplitRendWrapper->multiBinPoseData; #ifdef FIX_488_SYNC_DELAY /* Metadata Delay to sync with audio delay converted from ms to 5ms (1000/50/4) subframe index */ ism_md_subframe_update_ext = (int16_t) round( ismInput->ism_metadata_delay_ms / ( 1000 / FRAMES_PER_SEC / MAX_PARAM_SPATIAL_SUBFRAMES ) ); #endif /* If not yet allocated, open additional instances of TD renderer */ for ( i = 0; i < pMultiBinPoseData->num_poses - 1; ++i ) Loading Loading @@ -6150,7 +6157,7 @@ static ivas_error renderIsmToSplitBinaural( &ismInput->currentPos, NULL, #ifdef FIX_488_SYNC_DELAY ismInput->ism_metadata_delay_ms, /* Ism Audio Metadata Delay Sync in ms for External Renderer */ ism_md_subframe_update_ext, #endif output_frame, tmpProcessing ); Loading @@ -6168,7 +6175,7 @@ static ivas_error renderIsmToSplitBinaural( &ismInput->currentPos, NULL, #ifdef FIX_488_SYNC_DELAY ismInput->ism_metadata_delay_ms, /* Ism Audio Metadata Delay Sync in ms for External Renderer */ ism_md_subframe_update_ext, #endif output_frame, tmpProcessing ); Loading Loading @@ -8335,7 +8342,7 @@ ivas_error IVAS_REND_SetTotalNumberOfObjects( ivas_error IVAS_REND_SetIsmMetadataDelay( IVAS_REND_HANDLE hIvasRend, /* i/o: IVAS renderer handle */ const uint16_t sync_md_delay /* i: Ism Metadata Delay in ms to sync with audio delay */ const float sync_md_delay /* i: Ism Metadata Delay in ms to sync with audio delay */ ) { if ( hIvasRend == NULL ) Loading
lib_rend/lib_rend.h +1 −1 Original line number Diff line number Diff line Loading @@ -352,7 +352,7 @@ ivas_error IVAS_REND_SetTotalNumberOfObjects( #ifdef FIX_488_SYNC_DELAY ivas_error IVAS_REND_SetIsmMetadataDelay( IVAS_REND_HANDLE hIvasRend, /* i/o: IVAS renderer handle */ const uint16_t sync_md_delay /* i: Metadata Delay in ms to sync with audio delay */ const float sync_md_delay /* i: Metadata Delay in ms to sync with audio delay */ ); #endif Loading