Commit dab9e8ba authored by Jan Kiene's avatar Jan Kiene
Browse files

Merge branch 'fhg/align-data-types-with-basop-in-lib_rend' into 'main'

Align data types with BASOP for TD ring buffer - related code

See merge request !2375
parents b616934f e0d3e5b4
Loading
Loading
Loading
Loading
Loading
+6 −7
Original line number Diff line number Diff line
@@ -108,7 +108,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
@@ -1493,9 +1493,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];
@@ -1516,7 +1515,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;
            }
@@ -1524,7 +1523,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
@@ -1547,7 +1546,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 )