Commit 42bc9c81 authored by Jan Kiene's avatar Jan Kiene
Browse files

some BASOP compliance fixes

parent b3e69999
Loading
Loading
Loading
Loading
Loading
+26 −11
Original line number Diff line number Diff line
@@ -1716,16 +1716,21 @@ static ivas_error alignInputDelay(
        }

#ifdef FIX_1119_SPLIT_RENDERING_VOIP
        // NOTE(sgi2knj): The arithmetic below needs to use BASOPs
        for ( i = 0; i < inputAudio.config.numChannels; ++i )
        FOR( i = 0; i < inputAudio.config.numChannels; ++i )
        {
            p_read_channels[i] = inputAudio.data_fx + i * numSamplesToPush;
            Word32 tmp;

            tmp = imult3216( L_deposit_l( numSamplesToPush ), i );
            p_read_channels[i] = inputAudio.data_fx + tmp;
        }
        ivas_TD_RINGBUF_PushChannels( inputBase->delayBuffer, p_read_channels, numSamplesToPush );

        for ( i = 0; i < inputAudio.config.numChannels; ++i )
        FOR( i = 0; i < inputAudio.config.numChannels; ++i )
        {
            p_write_channels[i] = inputBase->inputBuffer.data_fx + i * numSamplesToPop;
            Word32 tmp;

            tmp = imult3216( L_deposit_l( numSamplesToPop ), i );
            p_write_channels[i] = inputBase->inputBuffer.data_fx + tmp;
        }
        ivas_TD_RINGBUF_PopChannels( inputBase->delayBuffer, p_write_channels, numSamplesToPop );
#else
@@ -9357,14 +9362,15 @@ ivas_error IVAS_REND_GetSplitBinauralBitstream(
    ISAR_SPLIT_REND_BITS_DATA bits;
    Word16 max_bands;
    Word16 Q_out[2];
    Word16 pcm_out_flag;
#ifdef FIX_1119_SPLIT_RENDERING_VOIP
    Word32 *p_Cldfb_RealBuffer_Binaural[MAX_HEAD_ROT_POSES * BINAURAL_CHANNELS][CLDFB_NO_COL_MAX];
    Word32 *p_Cldfb_ImagBuffer_Binaural[MAX_HEAD_ROT_POSES * BINAURAL_CHANNELS][CLDFB_NO_COL_MAX];
    Word16 j;

    for ( i = 0; i < BINAURAL_CHANNELS * MAX_HEAD_ROT_POSES; ++i )
    FOR( i = 0; i < BINAURAL_CHANNELS * MAX_HEAD_ROT_POSES; ++i )
    {
        for ( j = 0; j < CLDFB_NO_COL_MAX; ++j )
        FOR( j = 0; j < CLDFB_NO_COL_MAX; ++j )
        {
            p_Cldfb_RealBuffer_Binaural[i][j] = Cldfb_RealBuffer_Binaural[i][j];
            p_Cldfb_ImagBuffer_Binaural[i][j] = Cldfb_ImagBuffer_Binaural[i][j];
@@ -9380,6 +9386,15 @@ ivas_error IVAS_REND_GetSplitBinauralBitstream(
    Q_out[1] = Q31;
    move16();

    pcm_out_flag = 0;
    move16();

    if ( EQ_32( hIvasRend->outputConfig, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) )
    {
        pcm_out_flag = 1;
        move16();
    }

    FOR( ch = 0; ch < i_mult( MAX_HEAD_ROT_POSES, BINAURAL_CHANNELS ); ch++ )
    {
        tmpBinaural[ch] = tmpBinaural_buff[ch];
@@ -9520,7 +9535,7 @@ ivas_error IVAS_REND_GetSplitBinauralBitstream(
                                                         tmpBinaural,
                                                         1,
                                                         cldfb_in_flag,
                                                         ( hIvasRend->outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ? 1 : 0,
                                                         pcm_out_flag,
                                                         ro_md_flag,
                                                         Q_buff,
                                                         Q_out ) ) != IVAS_ERR_OK )
@@ -9538,7 +9553,7 @@ ivas_error IVAS_REND_GetSplitBinauralBitstream(
                                                         tmpBinaural,
                                                         1,
                                                         cldfb_in_flag,
                                                         ( hIvasRend->outputConfig == IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) ? 1 : 0,
                                                         pcm_out_flag,
                                                         ro_md_flag,
                                                         Q_buff,
                                                         Q_out ) ) != IVAS_ERR_OK )
@@ -9547,7 +9562,7 @@ ivas_error IVAS_REND_GetSplitBinauralBitstream(
        return error;
    }

    IF( EQ_32( hIvasRend->outputConfig, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) )
    IF( pcm_out_flag )
    {
        FOR( j = 0; j < BINAURAL_CHANNELS; j++ )
        {
@@ -9558,7 +9573,7 @@ ivas_error IVAS_REND_GetSplitBinauralBitstream(
    convertInternalBitsBuffToBitsBuffer( hBits, bits );

    /* copy over first pose data to outAudio */
    IF( EQ_32( hIvasRend->outputConfig, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) )
    IF( pcm_out_flag )
    {
        /* set outAudio to zero - getSamplesInternal only cleared splitRendEncBuffer */
        set_zero_fx( outAudio.data_fx, i_mult( outAudio.config.numChannels, outAudio.config.numSamplesPerChannel ) );