Commit d5fa1115 authored by Vidhya V P's avatar Vidhya V P
Browse files

Merge branch 'main' into arithmetic_huffman_coder_changes

parent c7985e79
Loading
Loading
Loading
Loading
Loading
+15 −2
Original line number Diff line number Diff line
@@ -50,8 +50,11 @@ static void ivas_set_up_cov_smoothing(
    ivas_cov_smooth_state_t *hCovState,
    ivas_filterbank_t *pFb,
    const float max_update_rate,
    const int16_t min_pool_size,
    const int16_t min_pool_size
#ifndef FIX_331_ALL_BRS
    ,
    const int16_t nchan_inp /* i  : number of input channels       */
#endif
    ,
    const int32_t ivas_total_brate )
{
@@ -90,7 +93,9 @@ static void ivas_set_up_cov_smoothing(
            }
        }
    }
    else if ( nchan_inp <= FOA_CHANNELS )
    else
#ifndef FIX_331_ALL_BRS
        if ( nchan_inp <= FOA_CHANNELS )
    {
        for ( j = 0; j < pFb->filterbank_num_bands; j++ )
        {
@@ -112,6 +117,7 @@ static void ivas_set_up_cov_smoothing(
    }
    else
    {
#endif
        for ( j = 0; j < pFb->filterbank_num_bands; j++ )
        {
            float update_factor;
@@ -131,7 +137,9 @@ static void ivas_set_up_cov_smoothing(
                hCovState->pSmoothing_factor[j] = max_update_rate;
            }
        }
#ifndef FIX_331_ALL_BRS
    }
#endif
    hCovState->prior_bank_idx = -1;

    return;
@@ -178,7 +186,12 @@ ivas_error ivas_spar_covar_smooth_enc_open(
        }
    }


#ifndef FIX_331_ALL_BRS
    ivas_set_up_cov_smoothing( hCovState, pFb, cov_smooth_cfg->max_update_rate, cov_smooth_cfg->min_pool_size, nchan_inp, ivas_total_brate );
#else
    ivas_set_up_cov_smoothing( hCovState, pFb, cov_smooth_cfg->max_update_rate, cov_smooth_cfg->min_pool_size, ivas_total_brate );
#endif

    *hCovState_out = hCovState;

lib_com/options.h

100644 → 100755
+6 −2
Original line number Diff line number Diff line
@@ -137,6 +137,10 @@

#define DISABLE_ADAP_RES_COD_TMP                        /* temporary fix for IVAS-403, disables adaptive residual coding */
/*#define FIX_I4_OL_PITCH*/                             /* fix open-loop pitch used for EVS core switching */
#define FIX_103_RA_PARAMS_PARAM_BIN_REND                /* Issue 103: Digest room acoustics parameters for Parametric Binaural Renderer*/
/*#define SBA_HPF_TUNING_DEC*/
#define SMOOTH_WITH_TRANS_DET
#define FIX_331_ALL_BRS                                 /*Enable the fix_331 across all the bitrates and sba modes*/
#define FIX_ISM_DTX_CNG_BWIDTH_ALT                      /* VA: issue 396 - alternative fix for bw changes on CNG frames in ISM DTX for objects that use the decoder-side noise estimation */

#define FIX_398_MASA_DIRECTION_ALIGNMENT                /* Nokia: Issue 398: in 2dir MASA, dynamically adjust directions to be consistent */
@@ -181,6 +185,7 @@
#define FIX_355_REFACTOR_PARAMBIN_TO_5MS                /* Nokia: Fixes issue 355 by refactoring parametric binauralizer code to 5 ms mode */
#define FIX_411_EVS_BE_TESTS_ON_WINDOWS_FAILING         /* Eri: Fix incorrect use of stack variable used for channel aware config file */
#define COMBINED_FORMAT_SIGNALING                       /* VA: Introduce a signaling bit for combined format coding */
#define FIX_446_STEREO_DMX_CRASH                        /* FhG: fix discrepancy with EVS code that could cause crashes in rare cases */

#define FIX_386_CORECODER_RECONFIG_2                    /* VA: Issue 386: Resolve remaining ToDo comments in CoreCoder reconfig. */
#define FIX_440_PARAM_ISM_DIR_NOISE                     /* FhG: Issue 440: Fix directional background noise becoming diffuse in ParamISM */
@@ -191,7 +196,6 @@
#define FIX_447_PARAMBIN_MASA_REGU_FAC                  /* Nokia: Issue 447: Fix issue by adjusting regularization factor minimum value. */
#define FIX_441_SBA_PARAMBIN_GAINS                      /* Nokia: Fix issue 441 by changing gains in SBA path of parametric binauralizer */


#define HODIRAC                                         /* FhG: Sector-based HO-DirAC method for SBA at high bitrates */

#ifdef HODIRAC

lib_enc/ext_sig_ana.c

100644 → 100755
+9 −0
Original line number Diff line number Diff line
@@ -444,10 +444,19 @@ void core_signal_analysis_high_bitrate(
                ProcessIGF( st, hTcxEnc->spectrum[frameno], hTcxEnc->spectrum[frameno], powerSpec, transform_type[frameno] == TCX_20, frameno, 0, vad_hover_flag );
            }

#ifndef FIX_446_STEREO_DMX_CRASH
            /* Copy memory */
            mvr2r( lsp_new, st->lspold_enc, M );
#endif
        }
    }
#ifdef FIX_446_STEREO_DMX_CRASH
    if ( st->element_mode != IVAS_CPE_MDCT )
    {
        /* Copy memory */
        mvr2r( lsp_new, st->lspold_enc, M );
    }
#endif

    return;
}
+2 −0
Original line number Diff line number Diff line
@@ -508,10 +508,12 @@ static ivas_error ivas_spar_enc_process(
     *-----------------------------------------------------------------------------------------*/

    ivas_transient_det_process( hSpar->hTranDet, data_f[0], input_frame, transient_det );
#ifndef FIX_331_ALL_BRS
    if ( sba_order == 1 )
    {
        transient_det[1] = transient_det[0];
    }
#endif
    if ( ivas_total_brate < IVAS_24k4 )
    {
        transient_det[1] = 0;
+5 −6
Original line number Diff line number Diff line
@@ -2356,25 +2356,24 @@ static void adaptTransportSignalsHeadtracked(
}
#endif

#ifdef FIX_355_REFACTOR_PARAMBIN_TO_5MS
static void ivas_dirac_dec_binaural_check_and_switch_transports_headtracked(
    HEAD_TRACK_DATA_HANDLE hHeadTrackData,
#ifdef FIX_355_REFACTOR_PARAMBIN_TO_5MS
    float inRe[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX],
    float inIm[][CLDFB_SLOTS_PER_SUBFRAME][CLDFB_NO_CHANNELS_MAX],
    const int16_t nBins,
    float Rmat[3][3] )
{
    int16_t slot, bin, ch;
#else
static void ivas_dirac_dec_binaural_check_and_switch_transports_headtracked(
    HEAD_TRACK_DATA_HANDLE hHeadTrackData,
    float inIm[][CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX],
    float inRe[][CLDFB_NO_COL_MAX][CLDFB_NO_CHANNELS_MAX],
    const uint8_t firstSlot,
    const uint8_t slotEnd,
    const uint8_t nBins,
#endif
    float Rmat[3][3] )
{
#ifdef FIX_355_REFACTOR_PARAMBIN_TO_5MS
    int16_t slot, bin, ch;
#else
    uint8_t slot, bin, ch;
#endif
    float tmpVal;