Commit e26e5fb4 authored by multrus's avatar multrus
Browse files

clean up SBA_AND_OBJECTS conditions

parent 0ecdd455
Loading
Loading
Loading
Loading
+3 −21
Original line number Diff line number Diff line
@@ -408,17 +408,6 @@ ivas_error ivas_enc(
            );
#ifndef SBA_AND_OBJECTS
        }
        else /*not an option for now*/
        {
#ifdef SBA_AND_OBJECTS
            /* delay ISM input channels to match the SBA encoder delay */
            for ( n = 0; n < hEncoderConfig->nchan_ism; n++ )
            {
                delay_signal( data_f[n], input_frame, st_ivas->hOSba->input_data_mem[n], NS2SA( hEncoderConfig->input_Fs, IVAS_FB_ENC_DELAY_NS ) );
            }

#endif
        }
#endif

        if ( st_ivas->ism_mode == ISM_MODE_NONE )
@@ -487,21 +476,14 @@ ivas_error ivas_enc(
            st = st_ivas->hCPE[0]->hCoreCoder[0];
            hMetaData = st_ivas->hCPE[st_ivas->nCPE - 1]->hMetaData;
#ifdef SBA_AND_OBJECTS
#ifdef SBA_AND_OBJECTS

            if ( hEncoderConfig->ivas_format == SBA_ISM_FORMAT && st_ivas->ism_mode != ISM_MODE_NONE )
            {
                /* write the number of objects in ISM_SBA format*/
                push_next_indice( hMetaData, hEncoderConfig->nchan_ism - 1, NO_BITS_MASA_ISM_NO_OBJ );
            }
#endif
#endif
#ifdef SBA_AND_OBJECTS
            if ( ( error = ivas_ism_metadata_enc( &st_ivas->hEncoderConfig->ivas_total_brate, n, st_ivas->hEncoderConfig->nchan_ism, st_ivas->hIsmMetaData, NULL, hMetaData, &nb_bits_metadata[1], 0, st_ivas->ism_mode, NULL, st_ivas->hEncoderConfig->ism_extended_metadata_flag, -1, 0, NULL
#ifdef SBA_AND_OBJECTS
                                                  ,
                                                  st->ini_frame
#endif
                                                  ) ) != IVAS_ERR_OK )

            if ( ( error = ivas_ism_metadata_enc( &st_ivas->hEncoderConfig->ivas_total_brate, n, st_ivas->hEncoderConfig->nchan_ism, st_ivas->hIsmMetaData, NULL, hMetaData, &nb_bits_metadata[1], 0, st_ivas->ism_mode, NULL, st_ivas->hEncoderConfig->ism_extended_metadata_flag, -1, 0, NULL, st->ini_frame ) ) != IVAS_ERR_OK )
            {
                return error;
            }
+4 −16
Original line number Diff line number Diff line
@@ -102,11 +102,7 @@ void ivas_write_format(
#endif
#ifdef SBA_AND_OBJECTS
        case SBA_ISM_FORMAT:
#ifdef SBA_AND_OBJECTS
            if ( st_ivas->hEncoderConfig->ivas_total_brate < IVAS_24k4 )
#else
            if ( st_ivas->ism_mode == ISM_MODE_NONE )
#endif
            {
                ind = 6; /* send SBA format */
                nBits += extra_bits;
@@ -668,14 +664,12 @@ ivas_error ivas_init_encoder(
    else if ( ivas_format == SBA_ISM_FORMAT )
    {
        int32_t element_brate_tmp[MAX_NUM_OBJECTS];

        st_ivas->ism_mode = ISM_MODE_NONE;
#ifdef SBA_AND_OBJECTS

        if ( ivas_total_brate >= IVAS_256k )
        {
            st_ivas->ism_mode = ISM_SBA_MODE_DISC;
        }
#endif

        if ( ( error = ivas_ism_metadata_enc_create( st_ivas, hEncoderConfig->nchan_ism, element_brate_tmp ) ) != IVAS_ERR_OK )
        {
@@ -748,17 +742,11 @@ ivas_error ivas_init_encoder(
                return error;
            }
        }
#ifndef SBA_AND_OBJECTS
        if ( st_ivas->ism_mode == ISM_MODE_NONE )
        {
#endif

        if ( ( error = ivas_osba_enc_open( st_ivas ) ) != IVAS_ERR_OK )
        {
            return error;
        }
#ifndef SBA_AND_OBJECTS
        }
#endif
    }
#endif
    else if ( ivas_format == MC_FORMAT )
+0 −9
Original line number Diff line number Diff line
@@ -82,16 +82,7 @@ static void set_mct_enc_params(
    }

    hMCT->hbr_mct = 0;
#ifdef SBA_AND_OBJECTS
    if ( ( ivas_format == SBA_FORMAT
#ifndef SBA_AND_OBJECTS
           || ivas_format == SBA_ISM_FORMAT
#endif
           ) &&
         ivas_total_brate >= IVAS_256k )
#else
    if ( ivas_format == SBA_FORMAT && ivas_total_brate >= IVAS_256k )
#endif
    {
        hMCT->hbr_mct = 1;
    }
+22 −40
Original line number Diff line number Diff line
@@ -94,9 +94,7 @@ ivas_error ivas_osba_enc_open(
    OSBA_ENC_HANDLE hOSba;
    int16_t input_frame;
    ivas_error error;
#ifdef SBA_AND_OBJECTS
    int16_t len;
#endif
    error = IVAS_ERR_OK;


@@ -110,11 +108,7 @@ ivas_error ivas_osba_enc_open(
    {
        set_f( hOSba->prev_object_dm_gains[i], (float) sqrt( 0.5 ), MAX_INPUT_CHANNELS );
    }
#ifdef SBA_AND_OBJECTS
#ifndef SBA_AND_OBJECTS
    if ( st_ivas->ism_mode == ISM_SBA_MODE_DISC )
    {
#endif

    len = NS2SA( st_ivas->hEncoderConfig->input_Fs, IVAS_FB_ENC_DELAY_NS );
    
    for ( i = 0; i < st_ivas->hEncoderConfig->nchan_ism; i++ )
@@ -130,10 +124,6 @@ ivas_error ivas_osba_enc_open(
    {
        hOSba->input_data_mem[i] = NULL;
    }
#ifndef SBA_AND_OBJECTS
    }
#endif
#endif

    input_frame = (int16_t) ( st_ivas->hEncoderConfig->input_Fs / FRAMES_PER_SEC );
    for ( i = 0; i < input_frame; i++ )
@@ -161,7 +151,7 @@ void ivas_osba_enc_close(
    {
        return;
    }
#ifdef SBA_AND_OBJECTS

    for ( int16_t n = 0; n < MAX_NUM_OBJECTS; n++ )
    {
        if ( ( *hOSba )->input_data_mem[n] != NULL )
@@ -170,7 +160,7 @@ void ivas_osba_enc_close(
            ( *hOSba )->input_data_mem[n] = NULL;
        }
    }
#endif

    free( *hOSba );
    ( *hOSba ) = NULL;

@@ -385,35 +375,27 @@ void ivas_osba_enc(
    const int16_t input_frame,        /* i  : Input frame size                            */
    const int16_t nchan_ism,          /* i  : Number of objects for parameter analysis    */
    const ISM_MODE ism_mode,          /* i  : ISM mode                                    */
    const int16_t sba_analysis_order /* i  : SBA order evaluated in DirAC/SPAR encoder */
#ifdef SBA_AND_OBJECTS
    ,
    const int16_t sba_analysis_order, /* i  : SBA order evaluated in DirAC/SPAR encoder */
    const int32_t input_Fs /* i  : input sampling rate*/
#endif
)
{
    float data_out_f[MAX_INPUT_CHANNELS][L_FRAME48k];
#ifdef SBA_AND_OBJECTS
    int16_t n, delay_s;
    delay_s = NS2SA( input_Fs, IVAS_FB_ENC_DELAY_NS );
#endif

    if ( ism_mode == ISM_MODE_NONE )
    {
#ifdef SBA_AND_OBJECTS
        /*keep the delay buffer up to date*/
        for ( n = 0; n < nchan_ism; n++ )
        {
            mvr2r( &data_in_f[n][input_frame - delay_s], hOSba->input_data_mem[n], delay_s );
        }
#endif
        /* Convert ISM to SBA */
        ivas_osba_render_ism_to_sba( data_in_f, data_out_f, input_frame, sba_analysis_order, nchan_ism, hIsmMeta, hOSba->prev_object_dm_gains, hOSba->interpolator );

        /* Merge SBA signals */
        ivas_merge_sba_transports( data_out_f, &( data_in_f[nchan_ism] ), data_in_f, input_frame, sba_analysis_order );
    }
#ifdef SBA_AND_OBJECTS
    else
    {
        int16_t azimuth, elevation;
@@ -429,7 +411,7 @@ void ivas_osba_enc(
            ivas_dirac_dec_get_response( azimuth, elevation, hOSba->prev_object_dm_gains[n], sba_analysis_order );
        }
    }
#endif

    /* Set the number of objects */
    hOSba->nchan_ism = nchan_ism;

+0 −12
Original line number Diff line number Diff line
@@ -337,18 +337,6 @@ ivas_error ivas_spar_enc(
    error = IVAS_ERR_OK;
    hEncoderConfig = st_ivas->hEncoderConfig;

#ifdef SBA_AND_OBJECTS
#ifndef SBA_AND_OBJECTS
    if ( hEncoderConfig->ivas_format == SBA_ISM_FORMAT && st_ivas->ism_mode != ISM_MODE_NONE )
    {
        /* write the number of objects in ISM_SBA format*/
        push_next_indice( hMetaData, hEncoderConfig->nchan_ism - 1, NO_BITS_MASA_ISM_NO_OBJ );
    }
#endif
#endif

    /* check last sba_mode */

    /* front VAD */
    if ( ( error = front_vad_spar( st_ivas->hSpar, data_f[0], hEncoderConfig, input_frame ) ) != IVAS_ERR_OK )
    {
Loading