Commit 5f6d3a62 authored by Jan Kiene's avatar Jan Kiene
Browse files

Merge branch 'main' into...

Merge branch 'main' into 445-bugfixes-for-sns-fix-spectral-tilt-values-and-convert-sns-vq-codebooks-to-fixed-point
parents b329fcf2 9f8ea886
Loading
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -1787,7 +1787,7 @@ IsmPositionProvider *IsmPositionProvider_open(
    IsmPositionProvider *ipp;
    uint16_t i;

    ipp = (IsmPositionProvider *) malloc_( sizeof( IsmPositionProvider ) );
    ipp = (IsmPositionProvider *) malloc( sizeof( IsmPositionProvider ) );
    ipp->frameCounter = 0;
    ipp->numObjects = 0;

@@ -2182,8 +2182,8 @@ static void parseIsm(
    if ( parseUint32( line, &numberOfObjectPositionsToRead ) == 0 )
    {
        positionProvider->numPositions[idx] = numberOfObjectPositionsToRead;
        positionProvider->positions[idx] = malloc_( numberOfObjectPositionsToRead * sizeof( IVAS_REND_AudioObjectPosition ) );
        positionProvider->positionDurations[idx] = malloc_( numberOfObjectPositionsToRead * sizeof( uint16_t ) );
        positionProvider->positions[idx] = malloc( numberOfObjectPositionsToRead * sizeof( IVAS_REND_AudioObjectPosition ) );
        positionProvider->positionDurations[idx] = malloc( numberOfObjectPositionsToRead * sizeof( uint16_t ) );

        for ( i = 0; i < numberOfObjectPositionsToRead; ++i )
        {
+14 −0
Original line number Diff line number Diff line
@@ -223,7 +223,11 @@ ivas_error ivas_FB_mixer_open(
    }
    else
    {
#ifdef SBA_TD_RESIDUAL
        num_chs_alloc = 1; /* only W channel processed for predicting YZX */
#else
        num_chs_alloc = fb_cfg->num_out_chans;
#endif
    }

    for ( i = 0; i < num_chs_alloc; i++ )
@@ -386,7 +390,11 @@ void ivas_FB_mixer_close(
    }
    else
    {
#ifdef SBA_TD_RESIDUAL
        num_chs_alloc = 1; /* only W channel processed for predicting YZX */
#else
        num_chs_alloc = fb_cfg->num_out_chans;
#endif
    }

    if ( hFbMixer != NULL )
@@ -502,7 +510,11 @@ void ivas_fb_mixer_pcm_ingest(
    }
    else
    {
#ifdef SBA_TD_RESIDUAL
        num_chs_ingest = 1; /* forward Filterbank MDFT only on W */
#else
        num_chs_ingest = fb_cfg->num_out_chans;
#endif
    }

    for ( i = 0; i < fb_cfg->num_in_chans; i++ )
@@ -768,7 +780,9 @@ void ivas_fb_mixer_get_in_out_mapping(
            for ( i = 1; i < fb_cfg->num_out_chans; i++ )
            {
                in_out_mixer_map[i][0] = 1;
#ifndef SBA_TD_RESIDUAL
                in_out_mixer_map[i][order[i]] = 1;
#endif
            }
        }
    }
+3 −0
Original line number Diff line number Diff line
@@ -164,6 +164,9 @@ typedef struct ivas_param_ism_data_structure

    int16_t flag_noisy_speech;
    int16_t noisy_speech_buffer[PARAM_ISM_HYS_BUF_SIZE];
#ifdef FIX_440_PARAM_ISM_DIR_NOISE
    int16_t flag_equal_energy;
#endif

} PARAM_ISM_CONFIG_DATA, *PARAM_ISM_CONFIG_HANDLE;

+8 −2
Original line number Diff line number Diff line
@@ -173,15 +173,21 @@

#define EUALER2QUAT_FIX                                 /* Dlb :fix for issue 430 issue in euler2quat, sign of quat y is inverted */
#define HR_METADATA                                     /* Nok: encode directional MASA metadata with more bits at 384k and 512k */
#define SBA_TD_RESIDUAL                                 /* Dlb : Issue 426: SBA encoder complexity optimization */

#define FIX_357_DTX_32K                                 /* Eri: issue 357 - Forced LP-CNG at 32k */
#define FIX_435_ISM_MERGE_BUG                           /* Eri: Merge bug fix for ISM NULL metadata and tcx_only cases */
#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_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 */

#define FIX_445_SNS_BUGFIXES                            /* FhG: bug fix for spectral tilt in SNS computation + necessary update of codebooks and converison to fixedpoint-compatible tables */

#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 */

 /* ################## End DEVELOPMENT switches ######################### */
/* clang-format on */
#endif
+13 −0
Original line number Diff line number Diff line
@@ -373,7 +373,20 @@ ivas_error ivas_dec(
        }
        else if ( st_ivas->ivas_format == SBA_FORMAT && ( st_ivas->renderer_type == RENDERER_BINAURAL_PARAMETRIC || st_ivas->renderer_type == RENDERER_BINAURAL_PARAMETRIC_ROOM ) )
        {
#ifdef FIX_441_SBA_PARAMBIN_GAINS
            float gain;

            if ( nchan_remapped == 1 )
            {
                gain = 1.4454f;
            }
            else
            {
                gain = 1.3657f;
            }
#else
            float gain = 0.8414f; /* Todo: Temporary gain for roughly matching the loudness. To be tuned later together with other outputs. */
#endif

            for ( n = 0; n < nchan_remapped; n++ )
            {
Loading