Commit 39e7ff0f authored by BOHMRR's avatar BOHMRR
Browse files

improved ivas_spar_dump_signal_wav()

parent ad9ca4c3
Loading
Loading
Loading
Loading
+14 −4
Original line number Diff line number Diff line
@@ -171,12 +171,12 @@ void UpdateWave( const uint32_t sampleRate, const uint32_t numChannels, const ui
    fwrite( &writeValue16, sizeof( writeValue16 ), 1, spar_wav->theFile );
}

float ivas_spar_dump_signal_wav( int16_t input_frame, float data_f[][L_FRAME48k * 2], int16_t no_channel, WAVEFILEOUT *wave_file )
void ivas_spar_dump_signal_wav( int16_t input_frame, float **ppPcm, float pcm_array[IVAS_MAX_NUM_CH][L_FRAME48k], int16_t no_channel, WAVEFILEOUT *wave_file, char *location )
{
    float tmp_value;
    int16_t pcm_value, i, j, k;
    int16_t debug_tmp[IVAS_SPAR_MAX_CH * L_FRAME48k * 2];
    /* Dump audio signal after pca_enc */

    k = 0;
    int16_t Clipping = 0;
    float largest_value = 0;
@@ -185,7 +185,14 @@ float ivas_spar_dump_signal_wav( int16_t input_frame, float data_f[][L_FRAME48k
    {
        for ( i = 0; i < no_channel; i++, k++ )
        {
            tmp_value = roundf( data_f[i][j] * PCM16_TO_FLT_FAC );
            if ( ppPcm )
            {
                tmp_value = roundf( ppPcm[i][j] * PCM16_TO_FLT_FAC );
            }
            else
            {
                tmp_value = roundf( pcm_array[i][j] * PCM16_TO_FLT_FAC );
            }
            if ( tmp_value > MAX16B_FLT )
            {
                largest_value = (float) fabs( tmp_value ) > largest_value ? (float) fabs( tmp_value ) : largest_value;
@@ -214,7 +221,10 @@ float ivas_spar_dump_signal_wav( int16_t input_frame, float data_f[][L_FRAME48k
        debug_tmp,
        ( no_channel * input_frame ) );

    return ( db_value );
    if ( db_value )
    {
        fprintf( stderr, "\t In %s largest clipped sample in dB %f \n", location, db_value );
    }
}

void ivas_close_decoder_debug_files( int32_t fs, int16_t n_ch, int16_t n_transport, int16_t pca_ingest_channels )
+2 −1
Original line number Diff line number Diff line
@@ -38,13 +38,14 @@
#include <stdint.h>
#ifdef DEBUG_SBA
#include "cnst.h"
#include "ivas_cnst.h"
#include "tinywaveout_c.h"

#ifdef DEBUG_AGC
void ivas_close_agc_debug_files( void );
void ivas_open_agc_debug_files( int16_t agc );
#endif
float ivas_spar_dump_signal_wav( int16_t input_frame, float data_f[][L_FRAME48k * 2], int16_t no_channel, WAVEFILEOUT *wave_file );
void ivas_spar_dump_signal_wav( int16_t input_frame, float **ppPcm, float pcm_array[IVAS_MAX_NUM_CH][L_FRAME48k], int16_t no_channel, WAVEFILEOUT *wave_file, char *location );
void ivas_close_remove_debug_files( void );
void ivas_open_encoder_debug_files( int32_t fs, int16_t n_ch, int16_t n_transport, const char *file_tag, int32_t ivas_total_brate, int16_t dtx_on );
void ivas_close_decoder_debug_files( int32_t fs, int16_t n_ch, int16_t n_transport, int16_t pca_ingest_channels );
+1 −15
Original line number Diff line number Diff line
@@ -44,7 +44,6 @@
#include "wmops.h"

#ifdef DEBUG_SBA_AUDIO_DUMP
float data_array[IVAS_MAX_NUM_CH][L_FRAME48k * 2];
extern WAVEFILEOUT *spar_foa_dec_wav[4];
extern int16_t numTransportChannels;
#endif
@@ -284,22 +283,9 @@ ivas_error ivas_dec(
            }
        }
#ifdef DEBUG_SBA_AUDIO_DUMP
        float largest_value;
        int16_t i, j;
        numTransportChannels = st_ivas->nchan_transport;
        /* Dump audio signal after core-decoding */
        for ( i = 0; i < numTransportChannels; i++ )
        {
            for ( j = 0; j < output_frame; j++ )
            {
                data_array[i][j] = output[i][j];
            }
        }
        largest_value = ivas_spar_dump_signal_wav( output_frame, data_array, numTransportChannels, spar_foa_dec_wav[0] );
        if ( largest_value )
        {
            fprintf( stderr, "\t In core-decoding largest clipped sample in dB %f \n", largest_value );
        }
        ivas_spar_dump_signal_wav( output_frame, NULL, output, numTransportChannels, spar_foa_dec_wav[0], "core-decoding" );
#endif
        /* TCs remapping */
        nchan_remapped = st_ivas->nchan_transport;
+3 −39
Original line number Diff line number Diff line
@@ -47,7 +47,6 @@

#ifdef DEBUG_SBA_AUDIO_DUMP
extern WAVEFILEOUT *spar_foa_dec_wav[4];
float data_array[IVAS_MAX_NUM_CH][L_FRAME48k * 2];
extern int16_t numTransportChannels;
extern int16_t pca_ingest_channels;
extern int16_t numOutChannels;
@@ -959,22 +958,9 @@ void ivas_spar_dec_upmixer(

    ivas_agc_dec_process( pState->hAgcDec, output, output, nchan_transport, output_frame );
#ifdef DEBUG_SBA_AUDIO_DUMP
    int16_t l;
    float largest_value;
    numTransportChannels = st_ivas->nchan_transport;
    /* Dump audio signal after ivas_agc_dec_process */
    for ( i = 0; i < numTransportChannels; i++ )
    {
        for ( l = 0; l < output_frame; l++ )
        {
            data_array[i][l] = output[i][l];
        }
    }
    largest_value = ivas_spar_dump_signal_wav( output_frame, data_array, numTransportChannels, spar_foa_dec_wav[1] );
    if ( largest_value )
    {
        fprintf( stderr, "\t In ivas_agc_dec_process() largest clipped sample in dB %f \n", largest_value );
    }
    ivas_spar_dump_signal_wav( output_frame, NULL, output, numTransportChannels, spar_foa_dec_wav[1], "ivas_agc_dec_process()" );
#endif

    /*---------------------------------------------------------------------*
@@ -1007,18 +993,7 @@ void ivas_spar_dec_upmixer(
#ifdef DEBUG_SBA_AUDIO_DUMP
        pca_ingest_channels = num_in_ingest;
        /* Dump audio signal after ivas_pca_dec */
        for ( i = 0; i < pca_ingest_channels; i++ )
        {
            for ( l = 0; l < output_frame; l++ )
            {
                data_array[i][l] = output[i][l];
            }
        }
        largest_value = ivas_spar_dump_signal_wav( output_frame, data_array, pca_ingest_channels, spar_foa_dec_wav[2] );
        if ( largest_value )
        {
            fprintf( stderr, "\t In ivas_pca_dec() largest clipped sample in dB %f \n", largest_value );
        }
        ivas_spar_dump_signal_wav( output_frame, NULL, output, pca_ingest_channels, spar_foa_dec_wav[2], "ivas_pca_dec()" );
#endif
    }

@@ -1232,18 +1207,7 @@ void ivas_spar_dec_upmixer(
        }
#ifdef DEBUG_SBA_AUDIO_DUMP
        /* Dump audio signal after cldfbSynthesis */
        for ( i = 0; i < numOutChannels; i++ )
        {
            for ( l = 0; l < output_frame; l++ )
            {
                data_array[i][l] = output[i][l];
            }
        }
        largest_value = ivas_spar_dump_signal_wav( output_frame, data_array, numOutChannels, spar_foa_dec_wav[3] );
        if ( largest_value )
        {
            fprintf( stderr, "\t In cldfbSynthesis() largest clipped sample in dB %f \n", largest_value );
        }
        ivas_spar_dump_signal_wav( output_frame, NULL, output, numOutChannels, spar_foa_dec_wav[3], "cldfbSynthesis()" );
#endif

        split_band = SPAR_DIRAC_SPLIT_START_BAND;
+3 −38
Original line number Diff line number Diff line
@@ -44,7 +44,6 @@
#include "wmops.h"

#ifdef DEBUG_SBA_AUDIO_DUMP
float data_array[IVAS_MAX_NUM_CH][L_FRAME48k * 2];
extern WAVEFILEOUT *spar_foa_enc_wav[3];
#endif

@@ -777,19 +776,7 @@ static ivas_error ivas_spar_enc_process(

    ivas_fb_mixer_process( pState->hFbMixer, pState->hMdEnc->mixer_mat, p_pcm_tmp, input_frame, in_out_mixer_map );
#ifdef DEBUG_SBA_AUDIO_DUMP
    float largest_value;
    for ( i = 0; i < nchan_transport; i++ )
    {
        for ( j = 0; j < input_frame; j++ )
        {
            data_array[i][j] = p_pcm_tmp[i][j];
        }
    }
    largest_value = ivas_spar_dump_signal_wav( input_frame, data_array, nchan_transport, spar_foa_enc_wav[1] );
    if ( largest_value )
    {
        fprintf( stderr, "\t In ivas_fb_mixer_process() largest clipped sample in dB %f \n", largest_value );
    }
    ivas_spar_dump_signal_wav( input_frame, p_pcm_tmp, NULL, nchan_transport, spar_foa_enc_wav[1], "ivas_fb_mixer_process()" );
#endif

    /* move delayed W into output buffer unless activeW operation*/
@@ -816,18 +803,7 @@ static ivas_error ivas_spar_enc_process(
        }
    }
#ifdef DEBUG_SBA_AUDIO_DUMP
    for ( i = 0; i < nchan_inp; i++ )
    {
        for ( j = 0; j < input_frame; j++ )
        {
            data_array[i][j] = data_f[i][j];
        }
    }
    largest_value = ivas_spar_dump_signal_wav( input_frame, data_array, nchan_inp, spar_foa_enc_wav[0] );
    if ( largest_value )
    {
        fprintf( stderr, "\t In ivas_pca_enc() largest clipped sample in dB %f \n", largest_value );
    }
    ivas_spar_dump_signal_wav( input_frame, NULL, data_f, nchan_inp, spar_foa_enc_wav[0], "ivas_pca_enc()" );
#endif


@@ -862,18 +838,7 @@ static ivas_error ivas_spar_enc_process(
    }
#ifdef DEBUG_SBA_AUDIO_DUMP
    /* Dump audio signal after ivas_agc_enc_process */
    for ( i = 0; i < nchan_transport; i++ )
    {
        for ( j = 0; j < input_frame; j++ )
        {
            data_array[i][j] = p_pcm_tmp[i][j];
        }
    }
    largest_value = ivas_spar_dump_signal_wav( input_frame, data_array, nchan_transport, spar_foa_enc_wav[2] );
    if ( largest_value )
    {
        fprintf( stderr, "\t In ivas_agc_enc_process() largest clipped sample in dB %f \n", largest_value );
    }
    ivas_spar_dump_signal_wav( input_frame, p_pcm_tmp, NULL, nchan_transport, spar_foa_enc_wav[2], "ivas_agc_enc_process()" );
#endif

#ifdef DEBUG_SPAR_BYPASS_EVS_CODEC