From 54cf504dc5d139fd8522de85e60014b89af1efa7 Mon Sep 17 00:00:00 2001 From: Jan Kiene Date: Fri, 7 Nov 2025 18:21:56 +0100 Subject: [PATCH] fix incorrect data type alignment --- lib_rend/lib_rend.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/lib_rend/lib_rend.c b/lib_rend/lib_rend.c index b0435968b3..74896de0e7 100644 --- a/lib_rend/lib_rend.c +++ b/lib_rend/lib_rend.c @@ -105,7 +105,7 @@ typedef struct float gain; /* Linear, not in dB */ rendering_context ctx; int32_t numNewSamplesPerChannel; /* Used to keep track how much new audio was fed before rendering current frame */ - int32_t delayNumSamples; + int16_t delayNumSamples; } input_base; typedef struct @@ -1484,9 +1484,8 @@ static ivas_error alignInputDelay( { ivas_error error; input_ism *inputIsm; - int16_t maxGlobalDelaySamples; - int32_t numSamplesToPush, numSamplesToPop; - uint32_t ringBufferSize, preDelay; + int16_t maxGlobalDelaySamples, numSamplesToPop, numSamplesToPush; + uint16_t ringBufferSize, preDelay; #ifdef FIX_1119_SPLIT_RENDERING_VOIP int16_t i; const float *p_read_channels[MAX_INPUT_CHANNELS]; @@ -1507,7 +1506,7 @@ static ivas_error alignInputDelay( if ( preDelay > 0 ) { - if ( ( error = ivas_TD_RINGBUF_Open( &inputBase->delayBuffer, (int16_t) ringBufferSize, inputAudio.config.numChannels ) ) != IVAS_ERR_OK ) + if ( ( error = ivas_TD_RINGBUF_Open( &inputBase->delayBuffer, ringBufferSize, inputAudio.config.numChannels ) ) != IVAS_ERR_OK ) { return error; } @@ -1515,7 +1514,7 @@ static ivas_error alignInputDelay( /* for the first frame we need to push zeros to align the input delay to the global delay * and then push a frame of actual data */ #ifdef FIX_1119_SPLIT_RENDERING_VOIP - ivas_TD_RINGBUF_PushConstant( inputBase->delayBuffer, 0, (int16_t) preDelay ); + ivas_TD_RINGBUF_PushConstant( inputBase->delayBuffer, 0, preDelay ); #else ivas_TD_RINGBUF_PushZeros( inputBase->delayBuffer, preDelay ); #endif @@ -1538,7 +1537,7 @@ static ivas_error alignInputDelay( /* push in the new input data and pop to retrieve a complete input frame * if we are flushing the inputs, we don't push in any new data */ numSamplesToPush = flushInputs ? 0 : inputAudio.config.numSamplesPerChannel; - numSamplesToPop = flushInputs ? (uint32_t) ivas_TD_RINGBUF_Size( inputBase->delayBuffer ) : (uint32_t) inputAudio.config.numSamplesPerChannel; + numSamplesToPop = flushInputs ? ivas_TD_RINGBUF_Size( inputBase->delayBuffer ) : inputAudio.config.numSamplesPerChannel; #ifdef FIX_1119_SPLIT_RENDERING_VOIP for ( i = 0; i < inputAudio.config.numChannels; ++i ) -- GitLab