Commit e5b7d785 authored by vaclav's avatar vaclav
Browse files

Merge branch '22-terminology-for-the-number-of-channels' into 114-bitrate-switching-in-sba

parents 514c2aca fe139bcb
Loading
Loading
Loading
Loading
Loading
+10 −10
Original line number Diff line number Diff line
@@ -180,7 +180,7 @@ static void ivas_compute_smooth_cov(
    const int16_t end_band
#ifdef SBA_SPAR_HARM
    ,
    const int16_t num_ch,
    const int16_t nchan,
    const int16_t transient_det
#endif
)
@@ -188,7 +188,7 @@ static void ivas_compute_smooth_cov(
    int16_t i, j, k;
    int16_t prev_idx = hCovState->prior_bank_idx;
#ifndef SBA_SPAR_HARM
    int16_t num_ch = pIn_buf->num_ch;
    int16_t nchan = pIn_buf->nchan;
#endif
    float factor = 0;

@@ -200,7 +200,7 @@ static void ivas_compute_smooth_cov(
    if ( prev_idx == -1 || pIn_buf->reset_cov == 1 )
#endif
    {
        for ( i = 0; i < num_ch; i++ )
        for ( i = 0; i < nchan; i++ )
        {
            for ( k = start_band; k < end_band; k++ )
            {
@@ -210,9 +210,9 @@ static void ivas_compute_smooth_cov(
    }
    else if ( prev_idx == 0 )
    {
        for ( i = 0; i < num_ch; i++ )
        for ( i = 0; i < nchan; i++ )
        {
            for ( j = 0; j < num_ch; j++ )
            for ( j = 0; j < nchan; j++ )
            {
                if ( i == j )
                {
@@ -253,26 +253,26 @@ void ivas_cov_smooth_process(
    const int16_t end_band
#ifdef SBA_SPAR_HARM
    ,
    const int16_t num_ch,
    const int16_t nchan,
    const int16_t transient_det
#endif
)
{
    int16_t i, j;
#ifndef SBA_SPAR_HARM
    int16_t num_ch = pIn_buf->num_ch;
    int16_t nchan = pIn_buf->nchan;
#endif
    int16_t num_bands = end_band - start_band;

#ifdef SBA_SPAR_HARM
    ivas_compute_smooth_cov( hCovState, pFb, cov_real, hCovState->pPrior_cov_real, 1e-20f, start_band, end_band, num_ch, transient_det );
    ivas_compute_smooth_cov( hCovState, pFb, cov_real, hCovState->pPrior_cov_real, 1e-20f, start_band, end_band, nchan, transient_det );
#else
    ivas_compute_smooth_cov( hCovState, pIn_buf, pFb, pIn_buf->cov_real, hCovState->pPrior_cov_real, 1e-20f, start_band, end_band );
#endif

    for ( i = 0; i < num_ch; i++ )
    for ( i = 0; i < nchan; i++ )
    {
        for ( j = 0; j < num_ch; j++ )
        for ( j = 0; j < nchan; j++ )
        {
#ifdef SBA_SPAR_HARM
            mvr2r( &cov_real[i][j][start_band], &hCovState->pPrior_cov_real[i][j][start_band], num_bands );
+42 −42
Original line number Diff line number Diff line
@@ -102,8 +102,8 @@ ivas_error ivas_fb_set_cfg(
    IVAS_FB_CFG **pFb_cfg_out,     /* o  : FB config. handle           */
    const int16_t ivas_format,     /* i  : IVAS format                 */
    const SBA_MODE sba_mode,       /* i  : SBA mode                    */
    const int16_t num_in_chans,    /* i  : number of FB input channels */
    const int16_t num_out_chans,   /* i  : number of FB output channels*/
    const int16_t nchan_inp,       /* i  : number of FB input channels */
    const int16_t nchan_out,       /* i  : number of FB output channels*/
    const int16_t active_w_mixing, /* i  : active_w_mixing flag        */
    const int32_t sampling_rate    /* i  : sampling rate               */
)
@@ -115,8 +115,8 @@ ivas_error ivas_fb_set_cfg(
        return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for FB mixer config" );
    }

    pFb_cfg->num_in_chans = num_in_chans;
    pFb_cfg->num_out_chans = num_out_chans;
    pFb_cfg->nchan_inp = nchan_inp;
    pFb_cfg->nchan_out = nchan_out;

    pFb_cfg->pcm_offset = 0; /* note: in SPAR decoder, this parameter is overwritten later */
    pFb_cfg->active_w_mixing = active_w_mixing;
@@ -179,7 +179,7 @@ ivas_error ivas_FB_mixer_open(
{
    IVAS_FB_MIXER_HANDLE hFbMixer;
    int16_t i, j, frame_len, num_bands;
    int16_t num_chs_alloc;
    int16_t nchan_alloc;
    ivas_error error;

    error = IVAS_ERR_OK;
@@ -198,20 +198,20 @@ ivas_error ivas_FB_mixer_open(

    if ( fb_cfg->active_w_mixing == -1 )
    {
        num_chs_alloc = 0;
        nchan_alloc = 0;
    }
    else if ( fb_cfg->active_w_mixing )
    {
        num_chs_alloc = fb_cfg->num_in_chans;
        nchan_alloc = fb_cfg->nchan_inp;
    }
    else
    {
        num_chs_alloc = fb_cfg->num_out_chans;
        nchan_alloc = fb_cfg->nchan_out;
    }

    for ( i = 0; i < num_chs_alloc; i++ )
    for ( i = 0; i < nchan_alloc; i++ )
    {
        if ( fb_cfg->num_out_chans == 0 )
        if ( fb_cfg->nchan_out == 0 )
        {
            hFbMixer->ppFilterbank_inFR_re[i] = NULL;
            hFbMixer->ppFilterbank_inFR_im[i] = NULL;
@@ -234,13 +234,13 @@ ivas_error ivas_FB_mixer_open(

    if ( fb_cfg->active_w_mixing == -1 )
    {
        num_chs_alloc = 0;
        nchan_alloc = 0;
    }
    else
    {
        num_chs_alloc = fb_cfg->num_in_chans;
        nchan_alloc = fb_cfg->nchan_inp;
    }
    for ( i = 0; i < num_chs_alloc; i++ )
    for ( i = 0; i < nchan_alloc; i++ )
    {
        if ( ( hFbMixer->ppFilterbank_prior_input[i] = (float *) count_malloc( sizeof( float ) * fb_cfg->prior_input_length ) ) == NULL )
        {
@@ -249,17 +249,17 @@ ivas_error ivas_FB_mixer_open(
        set_f( hFbMixer->ppFilterbank_prior_input[i], 0, fb_cfg->prior_input_length );
    }

    if ( ( fb_cfg->active_w_mixing != -1 ) && ( fb_cfg->num_out_chans > 0 ) )
    if ( ( fb_cfg->active_w_mixing != -1 ) && ( fb_cfg->nchan_out > 0 ) )
    {
        float *pTemp_mem;

        if ( ( pTemp_mem = (float *) count_malloc( sizeof( float ) * fb_cfg->num_out_chans * fb_cfg->num_in_chans * IVAS_MAX_NUM_BANDS ) ) == NULL )
        if ( ( pTemp_mem = (float *) count_malloc( sizeof( float ) * fb_cfg->nchan_out * fb_cfg->nchan_inp * IVAS_MAX_NUM_BANDS ) ) == NULL )
        {
            return IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for FB mixer" );
        }
        for ( i = 0; i < fb_cfg->num_out_chans; i++ )
        for ( i = 0; i < fb_cfg->nchan_out; i++ )
        {
            for ( j = 0; j < fb_cfg->num_in_chans; j++ )
            for ( j = 0; j < fb_cfg->nchan_inp; j++ )
            {
                hFbMixer->prior_mixer[i][j] = pTemp_mem;
                pTemp_mem += IVAS_MAX_NUM_BANDS;
@@ -268,7 +268,7 @@ ivas_error ivas_FB_mixer_open(
        }
    }

    if ( fb_cfg->num_out_chans > 0 )
    if ( fb_cfg->nchan_out > 0 )
    {
        const int16_t *pActive_bins_per_band, *pActive_bins_per_band_abs, *pStart_offset, *pStart_offset_abs;

@@ -372,18 +372,18 @@ void ivas_FB_mixer_close(
    }
    else if ( fb_cfg->active_w_mixing )
    {
        num_chs_alloc = fb_cfg->num_in_chans;
        num_chs_alloc = fb_cfg->nchan_inp;
    }
    else
    {
        num_chs_alloc = fb_cfg->num_out_chans;
        num_chs_alloc = fb_cfg->nchan_out;
    }

    if ( hFbMixer != NULL )
    {
        for ( i = 0; i < num_chs_alloc; i++ )
        {
            if ( fb_cfg->num_out_chans > 0 )
            if ( fb_cfg->nchan_out > 0 )
            {
                j = fb_cfg->remix_order[i];

@@ -401,7 +401,7 @@ void ivas_FB_mixer_close(
        }
        else
        {
            num_chs_alloc = fb_cfg->num_in_chans;
            num_chs_alloc = fb_cfg->nchan_inp;
        }
        for ( i = 0; i < num_chs_alloc; i++ )
        {
@@ -409,13 +409,13 @@ void ivas_FB_mixer_close(
            hFbMixer->ppFilterbank_prior_input[i] = NULL;
        }

        if ( ( fb_cfg->active_w_mixing != -1 ) && ( fb_cfg->num_out_chans > 0 ) )
        if ( ( fb_cfg->active_w_mixing != -1 ) && ( fb_cfg->nchan_out > 0 ) )
        {
            count_free( hFbMixer->prior_mixer[0][0] );
            hFbMixer->prior_mixer[0][0] = NULL;
        }

        if ( fb_cfg->num_out_chans > 0 )
        if ( fb_cfg->nchan_out > 0 )
        {
            num_bands = hFbMixer->pFb->filterbank_num_bands;

@@ -483,14 +483,14 @@ void ivas_fb_mixer_pcm_ingest(

    if ( fb_cfg->active_w_mixing )
    {
        num_chs_ingest = fb_cfg->num_in_chans;
        num_chs_ingest = fb_cfg->nchan_inp;
    }
    else
    {
        num_chs_ingest = fb_cfg->num_out_chans;
        num_chs_ingest = fb_cfg->nchan_out;
    }

    for ( i = 0; i < fb_cfg->num_in_chans; i++ )
    for ( i = 0; i < fb_cfg->nchan_inp; i++ )
    {
        mvr2r( &hFbMixer->ppFilterbank_prior_input[i][fb_cfg->prior_input_length - frame_len], ppOut_pcm[i], frame_len );
        mvr2r( pcm_in[i], &ppOut_pcm[i][frame_len], frame_len );
@@ -519,7 +519,7 @@ void ivas_fb_mixer_update_prior_input(
{
    int16_t i;

    for ( i = 0; i < hFbMixer->fb_cfg->num_in_chans; i++ )
    for ( i = 0; i < hFbMixer->fb_cfg->nchan_inp; i++ )
    {
        mvr2r( &hFbMixer->ppFilterbank_prior_input[i][length], hFbMixer->ppFilterbank_prior_input[i], hFbMixer->fb_cfg->prior_input_length - length );
        mvr2r( pcm_in[i], &hFbMixer->ppFilterbank_prior_input[i][hFbMixer->fb_cfg->prior_input_length - length], length );
@@ -556,7 +556,7 @@ void ivas_fb_mixer_get_windowed_fr(
    rev_offset = (int16_t) ( 2 * mdft_len - hFbMixer->ana_window_offset );
    set_zero( fr_in_block, offset );

    for ( ch_idx = 0; ch_idx < hFbMixer->fb_cfg->num_in_chans; ch_idx++ )
    for ( ch_idx = 0; ch_idx < hFbMixer->fb_cfg->nchan_inp; ch_idx++ )
    {
        mvr2r( &hFbMixer->ppFilterbank_prior_input[ch_idx][offset + hFbMixer->fb_cfg->windowed_fr_offset], &fr_in_block[offset], n_old_samples - offset );
        mvr2r( pcm_in[ch_idx], &fr_in_block[n_old_samples], n_new_samples );
@@ -657,7 +657,7 @@ void ivas_fb_mixer_process(
    pMdft_out[0] = Mdft_out_0;
    pMdft_out[1] = Mdft_out_1;

    for ( ch = ( hFbMixer->fb_cfg->active_w_mixing == 0 ); ch < hFbMixer->fb_cfg->num_out_chans; ch++ )
    for ( ch = ( hFbMixer->fb_cfg->active_w_mixing == 0 ); ch < hFbMixer->fb_cfg->nchan_out; ch++ )
    {
        /* Run a loop of 2 to calculate current frame's filterbank output and prev frame's output */
        for ( hist = 0; hist < 2; hist++ )
@@ -665,7 +665,7 @@ void ivas_fb_mixer_process(
            set_zero( pOut_fr_re, frame_len );
            set_zero( pOut_fr_im, frame_len );

            for ( j = 0; j < hFbMixer->fb_cfg->num_in_chans; j++ )
            for ( j = 0; j < hFbMixer->fb_cfg->nchan_inp; j++ )
            {
                if ( in_out_mixer_map[ch][j] != 0 )
                {
@@ -739,9 +739,9 @@ void ivas_fb_mixer_get_in_out_mapping(
    {
        if ( fb_cfg->active_w_mixing )
        {
            for ( i = 0; i < fb_cfg->num_out_chans; i++ )
            for ( i = 0; i < fb_cfg->nchan_out; i++ )
            {
                for ( j = 0; j < fb_cfg->num_in_chans; j++ )
                for ( j = 0; j < fb_cfg->nchan_inp; j++ )
                {
                    in_out_mixer_map[i][j] = 1;
                }
@@ -750,7 +750,7 @@ void ivas_fb_mixer_get_in_out_mapping(
        else
        {
            in_out_mixer_map[0][0] = 1; /* W depends on only W input*/
            for ( i = 1; i < fb_cfg->num_out_chans; i++ )
            for ( i = 1; i < fb_cfg->nchan_out; i++ )
            {
                in_out_mixer_map[i][0] = 1;
                in_out_mixer_map[i][order[i]] = 1;
@@ -768,7 +768,7 @@ void ivas_fb_mixer_get_in_out_mapping(
        if ( nchan_transport == 1 )
        {
            /* no cross predicitons in 1 ch dmx*/
            for ( i = nchan_transport; i < fb_cfg->num_out_chans; i++ )
            for ( i = nchan_transport; i < fb_cfg->nchan_out; i++ )
            {
                in_out_mixer_map[order[i]][0] = 1;
                in_out_mixer_map[order[i]][i] = 1;
@@ -777,7 +777,7 @@ void ivas_fb_mixer_get_in_out_mapping(
        else
        {
            /* handle the cross predictions and decorrelation*/
            for ( i = nchan_transport; i < fb_cfg->num_out_chans; i++ )
            for ( i = nchan_transport; i < fb_cfg->nchan_out; i++ )
            {
                for ( j = 0; j < nchan_transport; j++ )
                {
@@ -1038,11 +1038,11 @@ static ivas_error ivas_filterbank_setup(

    error = IVAS_ERR_OK;

    set_s( hFbMixer->first_frame, 1, pCfg->num_out_chans );
    set_s( hFbMixer->first_frame + pCfg->num_out_chans, 0, IVAS_SPAR_MAX_CH - pCfg->num_out_chans );
    set_s( hFbMixer->first_frame, 1, pCfg->nchan_out );
    set_s( hFbMixer->first_frame + pCfg->nchan_out, 0, IVAS_SPAR_MAX_CH - pCfg->nchan_out );


    if ( pCfg->num_out_chans > 0 )
    if ( pCfg->nchan_out > 0 )
    {
        hFbMixer->pFb->filterbank_num_bands = ivas_get_num_bands( sampling_rate );

@@ -1078,7 +1078,7 @@ static ivas_error ivas_filterbank_setup(
        return error;
    }

    if ( pCfg->num_out_chans > 0 )
    if ( pCfg->nchan_out > 0 )
    {
        ivas_filterbank_t *pFb = hFbMixer->pFb;
        int16_t offset = 0;
+19 −19
Original line number Diff line number Diff line
@@ -654,7 +654,7 @@ MC_LS_SETUP ivas_mc_map_output_config_to_mc_ls_setup(

/*! r: limiter struct handle */
IVAS_LIMITER_HANDLE ivas_limiter_open(
    const int16_t num_channels,                                 /* i  : number of I/O channels                  */
    const int16_t nchan,                                        /* i  : number of I/O channels                  */
    const int32_t sampling_rate                                 /* i  : sampling rate for processing            */
);

@@ -666,7 +666,7 @@ void ivas_limiter_dec
(
    IVAS_LIMITER_HANDLE hLimiter,                               /* i/o: limiter struct handle                                           */
    float output[MAX_OUTPUT_CHANNELS][L_FRAME48k],              /* i/o: input/output buffer                                             */
    const int16_t num_channels,                                 /* i  : number of channels to be processed                              */
    const int16_t nchan,                                        /* i  : number of channels to be processed                              */
    const int16_t output_frame,                                 /* i  : number of samples per channel in the buffer                     */
    const int16_t BER_detect                                    /* i  : BER detect flag                                                 */
);
@@ -3103,7 +3103,7 @@ void ivas_sba_getTCs(
ivas_error ivas_sba_linear_renderer(
    float output[][L_FRAME48k],                                 /* i/o: synthesized core-coder transport channels/DirAC output  */
    const int16_t output_frame,                                 /* i  : output frame length per channel                         */
    const int16_t nchan_in,                                     /* i  : number of input ambisonics channels                     */
    const int16_t nchan_inp,                                    /* i  : number of input ambisonics channels                     */
    const AUDIO_CONFIG output_config,                           /* i  : output audio configuration                              */
    const IVAS_OUTPUT_SETUP output_setup,                       /* i  : output format setup                                     */
    const float hoa_dec_mtx[]                                   /* i  : HOA decoding mtx                                        */
@@ -3299,7 +3299,7 @@ void computeDiffuseness(
);

void ivas_dirac_dec_onset_detection_open(
    const int16_t num_channels,
    const int16_t nchan,
    const int16_t num_freq_bands,
    const int16_t max_band_decorr,
    DIRAC_ONSET_DETECTION_PARAMS *ph_dirac_onset_detection_params,
@@ -3328,7 +3328,7 @@ void ivas_dirac_dec_decorr_open(

void ivas_dirac_dec_decorr_process(
    const int16_t num_freq_bands,
    int16_t num_channels,
    int16_t nchan,
    const int16_t num_protos_diff,
    const DIRAC_SYNTHESIS_CONFIG synthesisConf,
    const int16_t nchan_transport,                              /* i  : number of transport channels                */
@@ -3623,14 +3623,14 @@ void ivas_dirac_dec_output_synthesis_cov_open(
    const int16_t interp_length,                                      /* i  : length for interpolating the mixing matrices in time slots                                            */
    const int16_t num_param_bands,                                    /* i  : number of parameter bands                                                                             */
    const int16_t num_param_bands_residual,                           /* i  : number of parameter bands with a residual mixing matrix (i.e. decorrelation                           */
    const int16_t nchan_in,                                           /* i  : number of input (transport) channels                                                                  */
    const int16_t nchan_inp,                                          /* i  : number of input (transport) channels                                                                  */
    const int16_t nchan_out,                                          /* i  : number of output channels                                                                             */
    const float *proto_matrix                                         /* i  : the prototype (upmix) matrix (only used if mode == 1)                                                 */
);

void ivas_dirac_dec_output_synthesis_cov_init(
    DIRAC_OUTPUT_SYNTHESIS_COV_STATE *h_dirac_output_synthesis_state, /* i/o: pointer to the state of the covariance synthesis                                                      */
    const int16_t nchan_in,                                           /* i  : number of input (tranport) channels                                                                   */
    const int16_t nchan_inp,                                          /* i  : number of input (tranport) channels                                                                   */
    const int16_t nchan_out,                                          /* i  : number of output channels                                                                             */
    const int16_t n_param_bands,                                      /* i  : number of total parameter bands                                                                       */
    const int16_t n_param_bands_res                                   /* i  : number of parameter bands with a residual mixing matrix (i.e. decorrelation                           */
@@ -3647,7 +3647,7 @@ void ivas_dirac_dec_output_synthesis_cov_param_mc_collect_slot(
    float cx[PARAM_MC_MAX_PARAMETER_BANDS][PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS],      /* o  : accumulated input covariance (real part)                      */
    float cx_imag[PARAM_MC_MAX_PARAMETER_BANDS][PARAM_MC_MAX_TRANSPORT_CHANS * PARAM_MC_MAX_TRANSPORT_CHANS], /* o  : accumulated input covariance (imaginary part)                 */
    PARAM_MC_DEC_HANDLE hParamMC,                                                                             /* i  : handle to Parametric MC state                                 */
    const int16_t nchan_in,                                                                                   /* i  : number of input channels                                      */
    const int16_t nchan_inp,                                                                                   /* i  : number of input channels                                      */
    const int16_t idx_slot                                                                                    /* i  : index of the slot to be added to the input covariance         */
);                                                                                                                  
                                                                                                                    
@@ -3930,7 +3930,7 @@ void ivas_compute_spar_params(
    const int16_t start_band,
    const int16_t end_band,
    const int16_t dtx_vad,
    const int16_t num_ch,
    const int16_t nchan,
    const int16_t bands_bw,
    const int16_t active_w,
    ivas_spar_md_com_cfg *hSparCfg,
@@ -3955,7 +3955,7 @@ void ivas_calc_c_p_coeffs(
    float *pppCov_mat_re[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH],
    const int16_t i_ts,
    float ***mixer_mat,
    const int16_t num_ch,
    const int16_t nchan,
    const int16_t num_dmx,
    const int16_t band_idx,
    const int16_t dtx_vad,
@@ -3973,7 +3973,7 @@ void ivas_get_spar_md_from_dirac(
    ivas_spar_md_com_cfg *hSpar_md_cfg,
    const int16_t start_band,
    const int16_t end_band,
    const int16_t order,
    const int16_t sba_order,
    const int16_t dtx_vad,
    float Wscale_d[IVAS_MAX_NUM_BANDS]
);
@@ -3981,7 +3981,7 @@ void ivas_get_spar_md_from_dirac(
ivas_error ivas_spar_md_dec_open(
    ivas_spar_md_dec_state_t **hMdDec_out,                      /* i/o: SPAR MD decoder handle                  */
    const DECODER_CONFIG_HANDLE hDecoderConfig,                 /* i  : configuration structure                 */
    const int16_t num_channels                                  /* i  : number of internal channels             */
    const int16_t nchan                                         /* i  : number of internal channels             */
);

void ivas_spar_md_dec_close(
@@ -3992,8 +3992,8 @@ void ivas_spar_get_parameters(
    SPAR_DEC_HANDLE hSpar,                                      /* i/o: SPAR decoder handle                     */
    const DECODER_CONFIG_HANDLE hDecoderConfig,                 /* i  : configuration structure                 */
    const int16_t ts,                                           /* i  : time slot index                         */
    const int16_t num_ch_out,                                   /* i  : number of channels out                  */
    const int16_t num_ch_in,                                    /* i  : number of channels in                   */
    const int16_t nchan_out,                                    /* i  : number of channels out                  */
    const int16_t nchan_inp,                                    /* i  : number of channels in                   */
    const int16_t num_spar_bands,                               /* i  : number of SPAR bands                    */
    float mixer_mat[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH][IVAS_MAX_NUM_BANDS] /* o  : mixing matrix               */
);
@@ -4001,7 +4001,7 @@ void ivas_spar_get_parameters(
ivas_error ivas_spar_md_dec_init(
    ivas_spar_md_dec_state_t *hMdDec,                           /* i/o: SPAR MD decoder handle                  */
    const DECODER_CONFIG_HANDLE hDecoderConfig,                 /* i  : configuration structure                 */
    const int16_t num_channels                                  /* i  : number of internal channels             */
    const int16_t nchan                                         /* i  : number of internal channels             */
);

void ivas_spar_md_dec_process(
@@ -4098,7 +4098,7 @@ void ivas_cov_smooth_process(
    const int16_t end_band
#ifdef SBA_SPAR_HARM
    ,
    const int16_t num_ch,
    const int16_t nchan,
    const int16_t transient_det
#endif
);
@@ -4590,7 +4590,7 @@ void rotateFrame_shd_cldfb(
    float Cldfb_RealBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* i/o: unrotated HOA3 signal buffer in cldfb domain real part  */
    float Cldfb_ImagBuffer[][MAX_PARAM_SPATIAL_SUBFRAMES][CLDFB_NO_CHANNELS_MAX], /* i/o: unrotated HOA3 signal buffer in cldfb domain imag part  */
    float Rmat[3][3],                                           /* i  : real-space rotation matrix                              */
    const int16_t nInChannels,                                  /* i  : number of channels                                      */
    const int16_t nchan_inp,                                    /* i  : number of channels                                      */
    const int16_t shd_rot_max_order                             /* i  : split-order rotation method                             */
);

@@ -5154,8 +5154,8 @@ ivas_error ivas_fb_set_cfg(
    IVAS_FB_CFG **pFb_cfg_out,                                  /* o  : FB config. handle                           */
    const int16_t ivas_format,                                  /* i  : IVAS format                                 */
    const SBA_MODE sba_mode,                                    /* i  : SBA mode                                    */
    const int16_t num_in_chans,                                 /* i  : number of FB input channels                 */
    const int16_t num_out_chans,                                /* i  : number of FB output channels                */
    const int16_t nchan_inp,                                    /* i  : number of FB input channels                 */
    const int16_t nchan_out,                                    /* i  : number of FB output channels                */
    const int16_t active_w_mixing,                              /* i  : active_w_mixing flag                        */
    const int32_t sampling_Fs                                   /* i  : sampling rate                               */
);
+102 −102

File changed.

Preview size limit exceeded, changes collapsed.

+3 −3
Original line number Diff line number Diff line
@@ -355,7 +355,7 @@ typedef struct ivas_cov_smooth_cfg_t
typedef struct ivas_cov_smooth_in_buf_t
{
    float *cov_real[IVAS_SPAR_MAX_CH][IVAS_SPAR_MAX_CH];
    int16_t num_ch;
    int16_t nchan;
    int16_t reset_cov;

} ivas_cov_smooth_in_buf_t;
@@ -670,8 +670,8 @@ typedef struct ivas_trans_det_state_t
typedef struct ivas_fb_mixer_cfg_t
{
    int16_t fb_latency;
    int16_t num_in_chans;
    int16_t num_out_chans;
    int16_t nchan_inp;
    int16_t nchan_out;
    int16_t pcm_offset;
    int16_t fade_len; /* this sets the stride length; no delay is introduced */
    int16_t prior_input_length;
Loading