Commit 961e8298 authored by Jonas Svedberg's avatar Jonas Svedberg
Browse files

Merge branch 'main' into ericsson/fdcng-vq-rom-optimization

parents c75fe3b6 c7aa60ec
Loading
Loading
Loading
Loading
Loading
+2 −19
Original line number Diff line number Diff line
@@ -148,33 +148,16 @@

#define SNS_MSVQ                                        /* FhG: contribution 33 - MSVQ for SNS parameters at stereo mid bitrates */

#define SBA2MONO                                        /* FhG: Issue 365: Adapt processing of SBA mono output to be in line with stereo output (less delay, lower complexity) */
#define FIX_379_EXT_METADATA                            /* Eri: Extended metadata issues */
#define FIX_379_ANGLE                                   /* Eri: Extended metadata issues related to angle structure */
#define FIX_379_GAININTP                                /* Eri: Adds a gain interpolation for directional/distance gain to handle abrupt changes in metadata (Non BE) */

#define NOKIA_PARAMBIN_REQULARIZATION                   /* Nokia: Contribution - Configured reqularization factor for parametric binauralizer. */
#define NOKIA_ADAPTIVE_BINAURAL_PROTOS                  /* Nokia: Contribution 28: Adaptive binaural prototypes */
#define NOKIA_ADAPTIVE_BINAURAL_PROTOS_OPT              /* Nokia: enable adaptive binaural prototype complexity optimizations */

#define FIX_389_EXT_REND_PCM_SR                         /* Nokia: Issue 389: Fix assignment of sample rate with PCM input. */
#define FIX_390_EXT_REND_MASA_META_COPY                 /* Nokia: Issue 390: Fixes MASA metadata copying to renderer. */
#define FIX_392_LATE_REVERB                             /* DLB : Issue 392: keep late reverb by default off when output config is not BINAURAL_ROOM*/

#define FIX_ISM_DTX_CLICKS                              /* FhG: fix for clicks in ISM DTX for inactive to active TCX transitions */

#define ISSUE_24_CLEANUP_MCT_LFE                        /* Issue 24: Cleanup LFE path withing MCT */ 

#define FIX_401_DIRAC_RENDERER_META_READ_INDICES        /* Nokia: Issue 401: Fix metadata reading indices in DirAC renderer. */

#define FIX_418_SID_BITRATE                             /* Eri: Issue 418: Using the correct bitrate for unified stereo SID */
#define PARAMMC_SHORT_ENC_MDFT                          /* FhG: Issue 410: complexity optimization for parametric Multichannel modes */
#define FIX_421_TD_INT_TUNE                             /* Eri: Issue 421: Increase use of interpolation in TD renderer filter transition */

#define FIX_419_ISM_BRATE_SW_DTX                        /* VA: issue 419: fix ISM Bitrate Switching with dtx */
#define FIX_422                                         /* FhG: Issue 422: re-introduce fix for noisy speech buffer in ParamISM */

#define ERI_FDCNGVQ_LOW_ROM                             /* Eri: Contribution #31 Table ROM saving for IVAS FDCNG-VQ modes       */


/* ################## End DEVELOPMENT switches ######################### */
/* clang-format on */
#endif
+5 −0
Original line number Diff line number Diff line
@@ -451,9 +451,14 @@ ivas_error ivas_ism_metadata_dec(
        {
            hIsmMeta[ch]->last_ism_metadata_flag = hIsmMeta[ch]->ism_metadata_flag;

#ifdef FIX_419_ISM_BRATE_SW_DTX
            hSCE[ch]->hCoreCoder[0]->low_rate_mode = 0;
#endif
            if ( ism_mode == ISM_MODE_DISC )
            {
#ifndef FIX_419_ISM_BRATE_SW_DTX
                hSCE[ch]->hCoreCoder[0]->low_rate_mode = 0;
#endif
                if ( hIsmMeta[ch]->ism_metadata_flag == 0 && localVAD[ch] == 0 && ism_metadata_flag_global )
                {
                    hSCE[ch]->hCoreCoder[0]->low_rate_mode = 1;
+6 −0
Original line number Diff line number Diff line
@@ -90,8 +90,12 @@ void stereo_dft_dec_sid_coh(
    int16_t bits_tmp;
    int16_t b;

#ifdef FIX_418_SID_BITRATE
    nr_of_sid_stereo_bits = ( IVAS_SID_5k2 - SID_2k40 ) / FRAMES_PER_SEC - SID_FORMAT_NBITS;
#else
    /* TODO: still use old number of bits to keep bitexactness in output */
    nr_of_sid_stereo_bits = ( 4400 /*IVAS_SID_5k2*/ - SID_2k40 ) / FRAMES_PER_SEC - SID_FORMAT_NBITS;
#endif

    /* If the coherence is not encoded due to lack of bits set alpha to zero which leads to that the coherence */
    /* from the previous frame is used. */
@@ -174,7 +178,9 @@ void stereo_dft_dec_sid_coh(
        ( *nb_bits )++;
    }

#ifndef FIX_418_SID_BITRATE
    dtx_read_padding_bits( st, ( IVAS_SID_5k2 - 4400 ) / FRAMES_PER_SEC );
#endif

    return;
}
+5 −0
Original line number Diff line number Diff line
@@ -466,9 +466,14 @@ ivas_error ivas_ism_metadata_enc(

    for ( ch = 0; ch < nchan_transport; ch++ )
    {
#ifdef FIX_419_ISM_BRATE_SW_DTX
        hSCE[ch]->hCoreCoder[0]->low_rate_mode = 0;
#endif
        if ( ism_mode == ISM_MODE_DISC )
        {
#ifndef FIX_419_ISM_BRATE_SW_DTX
            hSCE[ch]->hCoreCoder[0]->low_rate_mode = 0;
#endif
            if ( hIsmMeta[ch]->ism_metadata_flag == 0 && localVAD[ch] == 0 && ism_metadata_flag_global )
            {
                hSCE[ch]->hCoreCoder[0]->low_rate_mode = 1;
+6 −0
Original line number Diff line number Diff line
@@ -173,8 +173,12 @@ void stereo_dft_enc_sid_coh(
    int16_t alpha_level;
    int16_t n;

#ifdef FIX_418_SID_BITRATE
    nr_of_sid_stereo_bits = ( IVAS_SID_5k2 - SID_2k40 ) / FRAMES_PER_SEC - SID_FORMAT_NBITS;
#else
    /* TODO: still use old number of bits to keep bitexactness in output */
    nr_of_sid_stereo_bits = ( 4400 /*IVAS_SID_5k2*/ - SID_2k40 ) / FRAMES_PER_SEC - SID_FORMAT_NBITS;
#endif
    zeropad = 0;

    /* Encode coherence vector. Find best fixed predictor by minimizing prediction error on input vector.
@@ -329,7 +333,9 @@ void stereo_dft_enc_sid_coh(
        ( *nb_bits )++;
    }

#ifndef FIX_418_SID_BITRATE
    push_next_indice( hBstr, zeropad, ( IVAS_SID_5k2 - 4400 ) / FRAMES_PER_SEC );
#endif

    return;
}