Loading lib_rend/ivas_objectRenderer.c +14 −25 Original line number Diff line number Diff line Loading @@ -720,9 +720,8 @@ void ObjRenderIvasFrame_splitBinaural( int32_t i; float tmpProcessing[MAX_NUM_OBJECTS][L_FRAME48k]; float tmpBinaural[MAX_HEAD_ROT_POSES * 2][L_FRAME48k]; #ifdef FIX_SPLIT_REND_MERGE float *p_tmpProcessing[MAX_NUM_OBJECTS]; #endif int16_t pos_idx; IVAS_QUATERNION originalHeadRot[MAX_PARAM_SPATIAL_SUBFRAMES]; MULTI_BIN_REND_POSE_DATA *pMultiBinPoseData; Loading Loading @@ -754,7 +753,7 @@ void ObjRenderIvasFrame_splitBinaural( /* Save current head positions */ for ( i = 0; i < MAX_PARAM_SPATIAL_SUBFRAMES; ++i ) { originalHeadRot[i] = st_ivas->hHeadTrackData->Quaternions[i]; originalHeadRot[i] = st_ivas->hCombinedOrientationData->Quaternions[i]; } /* Copy input audio to a processing buffer. Cannot render in-place because binaurally rendered Loading @@ -773,39 +772,33 @@ void ObjRenderIvasFrame_splitBinaural( { if ( originalHeadRot[i].w == -3.0f ) { st_ivas->hHeadTrackData->Quaternions[i].w = -3.0f; st_ivas->hHeadTrackData->Quaternions[i].x = originalHeadRot[i].x + pMultiBinPoseData->relative_head_poses[pos_idx][0]; st_ivas->hHeadTrackData->Quaternions[i].y = originalHeadRot[i].y + pMultiBinPoseData->relative_head_poses[pos_idx][1]; st_ivas->hHeadTrackData->Quaternions[i].z = originalHeadRot[i].z + pMultiBinPoseData->relative_head_poses[pos_idx][2]; st_ivas->hCombinedOrientationData->Quaternions[i].w = -3.0f; st_ivas->hCombinedOrientationData->Quaternions[i].x = originalHeadRot[i].x + pMultiBinPoseData->relative_head_poses[pos_idx][0]; st_ivas->hCombinedOrientationData->Quaternions[i].y = originalHeadRot[i].y + pMultiBinPoseData->relative_head_poses[pos_idx][1]; st_ivas->hCombinedOrientationData->Quaternions[i].z = originalHeadRot[i].z + pMultiBinPoseData->relative_head_poses[pos_idx][2]; } else { st_ivas->hHeadTrackData->Quaternions[i].w = -3.0f; st_ivas->hCombinedOrientationData->Quaternions[i].w = -3.0f; Quat2EulerDegree( originalHeadRot[i], /* TODO tmu : fix bug with ordering*/ &st_ivas->hHeadTrackData->Quaternions[i].z, &st_ivas->hHeadTrackData->Quaternions[i].y, &st_ivas->hHeadTrackData->Quaternions[i].x ); st_ivas->hHeadTrackData->Quaternions[i].x += pMultiBinPoseData->relative_head_poses[pos_idx][0]; st_ivas->hHeadTrackData->Quaternions[i].y += pMultiBinPoseData->relative_head_poses[pos_idx][1]; st_ivas->hHeadTrackData->Quaternions[i].z += pMultiBinPoseData->relative_head_poses[pos_idx][2]; &st_ivas->hCombinedOrientationData->Quaternions[i].z, &st_ivas->hCombinedOrientationData->Quaternions[i].y, &st_ivas->hCombinedOrientationData->Quaternions[i].x ); st_ivas->hCombinedOrientationData->Quaternions[i].x += pMultiBinPoseData->relative_head_poses[pos_idx][0]; st_ivas->hCombinedOrientationData->Quaternions[i].y += pMultiBinPoseData->relative_head_poses[pos_idx][1]; st_ivas->hCombinedOrientationData->Quaternions[i].z += pMultiBinPoseData->relative_head_poses[pos_idx][2]; } } } #ifdef FIX_SPLIT_REND_MERGE for ( i = 0; i < BINAURAL_CHANNELS; i++ ) { p_tmpProcessing[i] = tmpProcessing[i]; } #endif /* Render */ if ( pos_idx == 0 ) { ivas_td_binaural_renderer( st_ivas, #ifdef FIX_SPLIT_REND_MERGE p_tmpProcessing, #else tmpProcessing #endif output_frame ); } else Loading @@ -814,11 +807,7 @@ void ObjRenderIvasFrame_splitBinaural( tmpTdRendHandle = st_ivas->hBinRendererTd; st_ivas->hBinRendererTd = st_ivas->splitBinRend.splitrend.hTdRendHandles[pos_idx - 1]; ivas_td_binaural_renderer( st_ivas, #ifdef FIX_SPLIT_REND_MERGE p_tmpProcessing, #else tmpProcessing #endif output_frame ); st_ivas->hBinRendererTd = tmpTdRendHandle; } Loading @@ -842,7 +831,7 @@ void ObjRenderIvasFrame_splitBinaural( /* Restore original head rotation */ for ( i = 0; i < MAX_PARAM_SPATIAL_SUBFRAMES; ++i ) { st_ivas->hHeadTrackData->Quaternions[i] = originalHeadRot[i]; st_ivas->hCombinedOrientationData->Quaternions[i] = originalHeadRot[i]; } pop_wmops(); Loading lib_rend/lib_rend.c +35 −25 Original line number Diff line number Diff line Loading @@ -6037,7 +6037,7 @@ static ivas_error renderIsmToSplitBinaural( IVAS_QUATERNION originalHeadRot[MAX_PARAM_SPATIAL_SUBFRAMES]; float tmpBinaural[MAX_HEAD_ROT_POSES * BINAURAL_CHANNELS][L_FRAME48k]; int16_t output_frame = ismInput->base.inputBuffer.config.numSamplesPerChannel; IVAS_REND_HeadRotData modifiedHeadRotData; COMBINED_ORIENTATION_HANDLE pCombinedOrientationData; push_wmops( "renderIsmToSplitBinaural" ); Loading Loading @@ -6065,16 +6065,22 @@ static ivas_error renderIsmToSplitBinaural( assert( ismInput->splitTdRendWrappers[i].binaural_latency_ns == ismInput->tdRendWrapper.binaural_latency_ns ); } pCombinedOrientationData = *ismInput->base.ctx.pCombinedOrientationData; for ( i = 1; i < MAX_PARAM_SPATIAL_SUBFRAMES; ++i ) { pCombinedOrientationData->Quaternions[i] = pCombinedOrientationData->Quaternions[0]; } /* Save current head positions */ for ( i = 0; i < MAX_PARAM_SPATIAL_SUBFRAMES; ++i ) { originalHeadRot[i] = ismInput->base.ctx.pHeadRotData->headPositions[i]; originalHeadRot[i] = pCombinedOrientationData->Quaternions[i]; } /* Copy input audio to a processing buffer. */ copyBufferTo2dArray( ismInput->base.inputBuffer, tmpProcessing ); modifiedHeadRotData = *ismInput->base.ctx.pHeadRotData; for ( pos_idx = 0; pos_idx < pMultiBinPoseData->num_poses; pos_idx++ ) { /* Update head positions */ Loading @@ -6084,21 +6090,21 @@ static ivas_error renderIsmToSplitBinaural( { if ( originalHeadRot[i].w == -3.0f ) { modifiedHeadRotData.headPositions[i].w = -3.0f; modifiedHeadRotData.headPositions[i].x = originalHeadRot[i].x + pMultiBinPoseData->relative_head_poses[pos_idx - 1][0]; modifiedHeadRotData.headPositions[i].y = originalHeadRot[i].y + pMultiBinPoseData->relative_head_poses[pos_idx - 1][1]; modifiedHeadRotData.headPositions[i].z = originalHeadRot[i].z + pMultiBinPoseData->relative_head_poses[pos_idx - 1][2]; pCombinedOrientationData->Quaternions[i].w = -3.0f; pCombinedOrientationData->Quaternions[i].x = originalHeadRot[i].x + pMultiBinPoseData->relative_head_poses[pos_idx][0]; pCombinedOrientationData->Quaternions[i].y = originalHeadRot[i].y + pMultiBinPoseData->relative_head_poses[pos_idx][1]; pCombinedOrientationData->Quaternions[i].z = originalHeadRot[i].z + pMultiBinPoseData->relative_head_poses[pos_idx][2]; } else { modifiedHeadRotData.headPositions[i].w = -3.0f; pCombinedOrientationData->Quaternions[i].w = -3.0f; Quat2EulerDegree( originalHeadRot[i], &modifiedHeadRotData.headPositions[i].z, &modifiedHeadRotData.headPositions[i].y, &modifiedHeadRotData.headPositions[i].x ); modifiedHeadRotData.headPositions[i].x += pMultiBinPoseData->relative_head_poses[pos_idx - 1][0]; modifiedHeadRotData.headPositions[i].y += pMultiBinPoseData->relative_head_poses[pos_idx - 1][1]; modifiedHeadRotData.headPositions[i].z += pMultiBinPoseData->relative_head_poses[pos_idx - 1][2]; &pCombinedOrientationData->Quaternions[i].z, &pCombinedOrientationData->Quaternions[i].y, &pCombinedOrientationData->Quaternions[i].x ); pCombinedOrientationData->Quaternions[i].x += pMultiBinPoseData->relative_head_poses[pos_idx][0]; pCombinedOrientationData->Quaternions[i].y += pMultiBinPoseData->relative_head_poses[pos_idx][1]; pCombinedOrientationData->Quaternions[i].z += pMultiBinPoseData->relative_head_poses[pos_idx][2]; } } } Loading @@ -6109,12 +6115,7 @@ static ivas_error renderIsmToSplitBinaural( error = ivas_td_binaural_renderer_ext( &ismInput->tdRendWrapper, ismInput->base.inConfig, NULL, #ifndef FIX_SPLIT_REND_MERGE ismInput->base.ctx.pHeadRotData, #endif #ifdef FIX_SPLIT_REND_MERGE ismInput->base.ctx.pCombinedOrientationData, #endif &ismInput->currentPos, NULL, output_frame, Loading @@ -6129,12 +6130,7 @@ static ivas_error renderIsmToSplitBinaural( error = ivas_td_binaural_renderer_ext( &ismInput->splitTdRendWrappers[pos_idx - 1], ismInput->base.inConfig, NULL, #ifndef FIX_SPLIT_REND_MERGE &modifiedHeadRotData, #endif #ifdef FIX_SPLIT_REND_MERGE ismInput->base.ctx.pCombinedOrientationData, #endif &ismInput->currentPos, NULL, output_frame, Loading @@ -6153,6 +6149,11 @@ static ivas_error renderIsmToSplitBinaural( /* Overwrite processing buffer with original input audio again */ copyBufferTo2dArray( ismInput->base.inputBuffer, tmpProcessing ); } /* Restore original head rotation */ for ( i = 0; i < MAX_PARAM_SPATIAL_SUBFRAMES; ++i ) { pCombinedOrientationData->Quaternions[i] = originalHeadRot[i]; } accumulate2dArrayToBuffer( tmpBinaural, &outAudio ); pop_wmops(); Loading Loading @@ -8183,6 +8184,7 @@ ivas_error IVAS_REND_GetSamples( int16_t numOutChannels; #ifdef SPLIT_REND_WITH_HEAD_ROT int16_t cldfb2tdSampleFact; IVAS_REND_AudioBuffer outAudioOrig; #endif /* Validate function arguments */ Loading Loading @@ -8261,8 +8263,14 @@ ivas_error IVAS_REND_GetSamples( } #ifdef SPLIT_REND_LC3PLUS /* Clear original output buffer */ set_zero( outAudio.data, outAudio.config.numChannels * outAudio.config.numSamplesPerChannel ); outAudioOrig = outAudio; /* Use internal buffer if outputting split rendering bitstream */ if ( hIvasRend->outputConfig == IVAS_REND_AUDIO_CONFIG_BINAURAL_SPLIT_CLDFB ) if ( ( hIvasRend->outputConfig == IVAS_REND_AUDIO_CONFIG_BINAURAL_SPLIT_CLDFB ) || ( ( hIvasRend->outputConfig == IVAS_REND_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) && ( hIvasRend->inputsIsm[0].base.inConfig != IVAS_REND_AUDIO_CONFIG_UNKNOWN ) ) ) { outAudio = hIvasRend->splitRendEncBuffer; } Loading Loading @@ -8360,6 +8368,8 @@ ivas_error IVAS_REND_GetSamples( return error; } convertInternalBitsBuffToBitsBuffer( hBits, bits ); outAudio = outAudioOrig; accumulate2dArrayToBuffer( tmpBinaural, &outAudio ); } #endif Loading Loading
lib_rend/ivas_objectRenderer.c +14 −25 Original line number Diff line number Diff line Loading @@ -720,9 +720,8 @@ void ObjRenderIvasFrame_splitBinaural( int32_t i; float tmpProcessing[MAX_NUM_OBJECTS][L_FRAME48k]; float tmpBinaural[MAX_HEAD_ROT_POSES * 2][L_FRAME48k]; #ifdef FIX_SPLIT_REND_MERGE float *p_tmpProcessing[MAX_NUM_OBJECTS]; #endif int16_t pos_idx; IVAS_QUATERNION originalHeadRot[MAX_PARAM_SPATIAL_SUBFRAMES]; MULTI_BIN_REND_POSE_DATA *pMultiBinPoseData; Loading Loading @@ -754,7 +753,7 @@ void ObjRenderIvasFrame_splitBinaural( /* Save current head positions */ for ( i = 0; i < MAX_PARAM_SPATIAL_SUBFRAMES; ++i ) { originalHeadRot[i] = st_ivas->hHeadTrackData->Quaternions[i]; originalHeadRot[i] = st_ivas->hCombinedOrientationData->Quaternions[i]; } /* Copy input audio to a processing buffer. Cannot render in-place because binaurally rendered Loading @@ -773,39 +772,33 @@ void ObjRenderIvasFrame_splitBinaural( { if ( originalHeadRot[i].w == -3.0f ) { st_ivas->hHeadTrackData->Quaternions[i].w = -3.0f; st_ivas->hHeadTrackData->Quaternions[i].x = originalHeadRot[i].x + pMultiBinPoseData->relative_head_poses[pos_idx][0]; st_ivas->hHeadTrackData->Quaternions[i].y = originalHeadRot[i].y + pMultiBinPoseData->relative_head_poses[pos_idx][1]; st_ivas->hHeadTrackData->Quaternions[i].z = originalHeadRot[i].z + pMultiBinPoseData->relative_head_poses[pos_idx][2]; st_ivas->hCombinedOrientationData->Quaternions[i].w = -3.0f; st_ivas->hCombinedOrientationData->Quaternions[i].x = originalHeadRot[i].x + pMultiBinPoseData->relative_head_poses[pos_idx][0]; st_ivas->hCombinedOrientationData->Quaternions[i].y = originalHeadRot[i].y + pMultiBinPoseData->relative_head_poses[pos_idx][1]; st_ivas->hCombinedOrientationData->Quaternions[i].z = originalHeadRot[i].z + pMultiBinPoseData->relative_head_poses[pos_idx][2]; } else { st_ivas->hHeadTrackData->Quaternions[i].w = -3.0f; st_ivas->hCombinedOrientationData->Quaternions[i].w = -3.0f; Quat2EulerDegree( originalHeadRot[i], /* TODO tmu : fix bug with ordering*/ &st_ivas->hHeadTrackData->Quaternions[i].z, &st_ivas->hHeadTrackData->Quaternions[i].y, &st_ivas->hHeadTrackData->Quaternions[i].x ); st_ivas->hHeadTrackData->Quaternions[i].x += pMultiBinPoseData->relative_head_poses[pos_idx][0]; st_ivas->hHeadTrackData->Quaternions[i].y += pMultiBinPoseData->relative_head_poses[pos_idx][1]; st_ivas->hHeadTrackData->Quaternions[i].z += pMultiBinPoseData->relative_head_poses[pos_idx][2]; &st_ivas->hCombinedOrientationData->Quaternions[i].z, &st_ivas->hCombinedOrientationData->Quaternions[i].y, &st_ivas->hCombinedOrientationData->Quaternions[i].x ); st_ivas->hCombinedOrientationData->Quaternions[i].x += pMultiBinPoseData->relative_head_poses[pos_idx][0]; st_ivas->hCombinedOrientationData->Quaternions[i].y += pMultiBinPoseData->relative_head_poses[pos_idx][1]; st_ivas->hCombinedOrientationData->Quaternions[i].z += pMultiBinPoseData->relative_head_poses[pos_idx][2]; } } } #ifdef FIX_SPLIT_REND_MERGE for ( i = 0; i < BINAURAL_CHANNELS; i++ ) { p_tmpProcessing[i] = tmpProcessing[i]; } #endif /* Render */ if ( pos_idx == 0 ) { ivas_td_binaural_renderer( st_ivas, #ifdef FIX_SPLIT_REND_MERGE p_tmpProcessing, #else tmpProcessing #endif output_frame ); } else Loading @@ -814,11 +807,7 @@ void ObjRenderIvasFrame_splitBinaural( tmpTdRendHandle = st_ivas->hBinRendererTd; st_ivas->hBinRendererTd = st_ivas->splitBinRend.splitrend.hTdRendHandles[pos_idx - 1]; ivas_td_binaural_renderer( st_ivas, #ifdef FIX_SPLIT_REND_MERGE p_tmpProcessing, #else tmpProcessing #endif output_frame ); st_ivas->hBinRendererTd = tmpTdRendHandle; } Loading @@ -842,7 +831,7 @@ void ObjRenderIvasFrame_splitBinaural( /* Restore original head rotation */ for ( i = 0; i < MAX_PARAM_SPATIAL_SUBFRAMES; ++i ) { st_ivas->hHeadTrackData->Quaternions[i] = originalHeadRot[i]; st_ivas->hCombinedOrientationData->Quaternions[i] = originalHeadRot[i]; } pop_wmops(); Loading
lib_rend/lib_rend.c +35 −25 Original line number Diff line number Diff line Loading @@ -6037,7 +6037,7 @@ static ivas_error renderIsmToSplitBinaural( IVAS_QUATERNION originalHeadRot[MAX_PARAM_SPATIAL_SUBFRAMES]; float tmpBinaural[MAX_HEAD_ROT_POSES * BINAURAL_CHANNELS][L_FRAME48k]; int16_t output_frame = ismInput->base.inputBuffer.config.numSamplesPerChannel; IVAS_REND_HeadRotData modifiedHeadRotData; COMBINED_ORIENTATION_HANDLE pCombinedOrientationData; push_wmops( "renderIsmToSplitBinaural" ); Loading Loading @@ -6065,16 +6065,22 @@ static ivas_error renderIsmToSplitBinaural( assert( ismInput->splitTdRendWrappers[i].binaural_latency_ns == ismInput->tdRendWrapper.binaural_latency_ns ); } pCombinedOrientationData = *ismInput->base.ctx.pCombinedOrientationData; for ( i = 1; i < MAX_PARAM_SPATIAL_SUBFRAMES; ++i ) { pCombinedOrientationData->Quaternions[i] = pCombinedOrientationData->Quaternions[0]; } /* Save current head positions */ for ( i = 0; i < MAX_PARAM_SPATIAL_SUBFRAMES; ++i ) { originalHeadRot[i] = ismInput->base.ctx.pHeadRotData->headPositions[i]; originalHeadRot[i] = pCombinedOrientationData->Quaternions[i]; } /* Copy input audio to a processing buffer. */ copyBufferTo2dArray( ismInput->base.inputBuffer, tmpProcessing ); modifiedHeadRotData = *ismInput->base.ctx.pHeadRotData; for ( pos_idx = 0; pos_idx < pMultiBinPoseData->num_poses; pos_idx++ ) { /* Update head positions */ Loading @@ -6084,21 +6090,21 @@ static ivas_error renderIsmToSplitBinaural( { if ( originalHeadRot[i].w == -3.0f ) { modifiedHeadRotData.headPositions[i].w = -3.0f; modifiedHeadRotData.headPositions[i].x = originalHeadRot[i].x + pMultiBinPoseData->relative_head_poses[pos_idx - 1][0]; modifiedHeadRotData.headPositions[i].y = originalHeadRot[i].y + pMultiBinPoseData->relative_head_poses[pos_idx - 1][1]; modifiedHeadRotData.headPositions[i].z = originalHeadRot[i].z + pMultiBinPoseData->relative_head_poses[pos_idx - 1][2]; pCombinedOrientationData->Quaternions[i].w = -3.0f; pCombinedOrientationData->Quaternions[i].x = originalHeadRot[i].x + pMultiBinPoseData->relative_head_poses[pos_idx][0]; pCombinedOrientationData->Quaternions[i].y = originalHeadRot[i].y + pMultiBinPoseData->relative_head_poses[pos_idx][1]; pCombinedOrientationData->Quaternions[i].z = originalHeadRot[i].z + pMultiBinPoseData->relative_head_poses[pos_idx][2]; } else { modifiedHeadRotData.headPositions[i].w = -3.0f; pCombinedOrientationData->Quaternions[i].w = -3.0f; Quat2EulerDegree( originalHeadRot[i], &modifiedHeadRotData.headPositions[i].z, &modifiedHeadRotData.headPositions[i].y, &modifiedHeadRotData.headPositions[i].x ); modifiedHeadRotData.headPositions[i].x += pMultiBinPoseData->relative_head_poses[pos_idx - 1][0]; modifiedHeadRotData.headPositions[i].y += pMultiBinPoseData->relative_head_poses[pos_idx - 1][1]; modifiedHeadRotData.headPositions[i].z += pMultiBinPoseData->relative_head_poses[pos_idx - 1][2]; &pCombinedOrientationData->Quaternions[i].z, &pCombinedOrientationData->Quaternions[i].y, &pCombinedOrientationData->Quaternions[i].x ); pCombinedOrientationData->Quaternions[i].x += pMultiBinPoseData->relative_head_poses[pos_idx][0]; pCombinedOrientationData->Quaternions[i].y += pMultiBinPoseData->relative_head_poses[pos_idx][1]; pCombinedOrientationData->Quaternions[i].z += pMultiBinPoseData->relative_head_poses[pos_idx][2]; } } } Loading @@ -6109,12 +6115,7 @@ static ivas_error renderIsmToSplitBinaural( error = ivas_td_binaural_renderer_ext( &ismInput->tdRendWrapper, ismInput->base.inConfig, NULL, #ifndef FIX_SPLIT_REND_MERGE ismInput->base.ctx.pHeadRotData, #endif #ifdef FIX_SPLIT_REND_MERGE ismInput->base.ctx.pCombinedOrientationData, #endif &ismInput->currentPos, NULL, output_frame, Loading @@ -6129,12 +6130,7 @@ static ivas_error renderIsmToSplitBinaural( error = ivas_td_binaural_renderer_ext( &ismInput->splitTdRendWrappers[pos_idx - 1], ismInput->base.inConfig, NULL, #ifndef FIX_SPLIT_REND_MERGE &modifiedHeadRotData, #endif #ifdef FIX_SPLIT_REND_MERGE ismInput->base.ctx.pCombinedOrientationData, #endif &ismInput->currentPos, NULL, output_frame, Loading @@ -6153,6 +6149,11 @@ static ivas_error renderIsmToSplitBinaural( /* Overwrite processing buffer with original input audio again */ copyBufferTo2dArray( ismInput->base.inputBuffer, tmpProcessing ); } /* Restore original head rotation */ for ( i = 0; i < MAX_PARAM_SPATIAL_SUBFRAMES; ++i ) { pCombinedOrientationData->Quaternions[i] = originalHeadRot[i]; } accumulate2dArrayToBuffer( tmpBinaural, &outAudio ); pop_wmops(); Loading Loading @@ -8183,6 +8184,7 @@ ivas_error IVAS_REND_GetSamples( int16_t numOutChannels; #ifdef SPLIT_REND_WITH_HEAD_ROT int16_t cldfb2tdSampleFact; IVAS_REND_AudioBuffer outAudioOrig; #endif /* Validate function arguments */ Loading Loading @@ -8261,8 +8263,14 @@ ivas_error IVAS_REND_GetSamples( } #ifdef SPLIT_REND_LC3PLUS /* Clear original output buffer */ set_zero( outAudio.data, outAudio.config.numChannels * outAudio.config.numSamplesPerChannel ); outAudioOrig = outAudio; /* Use internal buffer if outputting split rendering bitstream */ if ( hIvasRend->outputConfig == IVAS_REND_AUDIO_CONFIG_BINAURAL_SPLIT_CLDFB ) if ( ( hIvasRend->outputConfig == IVAS_REND_AUDIO_CONFIG_BINAURAL_SPLIT_CLDFB ) || ( ( hIvasRend->outputConfig == IVAS_REND_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) && ( hIvasRend->inputsIsm[0].base.inConfig != IVAS_REND_AUDIO_CONFIG_UNKNOWN ) ) ) { outAudio = hIvasRend->splitRendEncBuffer; } Loading Loading @@ -8360,6 +8368,8 @@ ivas_error IVAS_REND_GetSamples( return error; } convertInternalBitsBuffToBitsBuffer( hBits, bits ); outAudio = outAudioOrig; accumulate2dArrayToBuffer( tmpBinaural, &outAudio ); } #endif Loading