Commit 1f1b79c0 authored by TYAGIRIS's avatar TYAGIRIS
Browse files

merge fixes

parent b8c5069e
Loading
Loading
Loading
Loading
+0 −3
Original line number Diff line number Diff line
@@ -5172,9 +5172,6 @@ void ivas_binaural_cldfb_sf(
#endif
void ivas_binRenderer(
    BINAURAL_RENDERER_HANDLE hBinRenderer, /* i/o: binaural renderer handle    */
    #ifdef FIX_SPLIT_REND_MERGE
    HEAD_TRACK_DATA_HANDLE hHeadTrackData, /* i/o: head track handle           */
    #endif
#ifdef SPLIT_REND_WITH_HEAD_ROT
    MULTI_BIN_REND_POSE_DATA *pMultiBinPoseData,
#endif
+30 −27
Original line number Diff line number Diff line
@@ -138,12 +138,40 @@

#define BASOP_NOGLOB                                    /* Disable global symbols in BASOPs, Overflow/Carry in BASOPs disabled, additional BASOPs in case of Overflow */
/*#define FIX_I4_OL_PITCH*/                             /* fix open-loop pitch used for EVS core switching */
#define FIX_BIT_EXACT                                   /* fix for bit-inexactness in splitrendering renderer pytest*/

#define FIX_SPLIT_REND_MERGE                            /* Resolving the compilation warnings after splitrenderer main updation */

#define TD_TDREND_FIX_NULLPTR_ACCESS                    /* FhG: avoid nullptr access in ivas_rend_TDObjRendOpen */
#define TD_REND_FIX_DIV_BY_ZERO                         /* FhG: avoid division by zero in sincResample fn */
#define RENAME_GWLPR                                    /* FhG: Rename clashing symbol */

#define FIX_563_PARAMMC_LIMITER                         /* FhG: issue 563: fix ILD limiter when coming from silence w/o transient set             */
#define FIX_560_VAD_FLAG                                /* Eri: Issue 560 - VAD flag issue for unified stereo */
#define FIX_549_DMX_GAIN                                /* FhG: issue 549: ParamISM output too quiet */
#define FIX_470_MASA_JBM_EXT                            /* Nokia: Issue 470, fix MASA EXT output with JBM */
#define ISM_FB                                          /* issue 556: change SWB to FB coding in 1ISM at 24.4 kbps */
#define FIX_558_PLC_DISCONT                             /* FhG: issue 558: fix discontinuities in DFT Stereo when switching from TCX concealment to ACELP */
#define FIX_564                                         /* Nokia: Issue 564: Fix gains in JBM path for SBA with parametric binaural renderer */
#define FIX_566_2DIR_MASA_384K                          /* Nokia: Issued 566:  Bugfix in 384k MASA metadata encoding of second direction */
#define FIX_568_ISM_BITRATE_SWITCHING                   /* Philips: Issue 568: Bugfix for renderer re-initialization by ISM and bitrate switching */
#define FIX_565_SBA_BURST_IN_FEC                        /* VA: Issue 565: Fix noise burst during FEC, due to wrong total_brate initialization */
#define FIX_562_ISM2_64KBPS                             /* VA: issue 562: fix ISM2 at 64kbps issue */
#define FIX_559_EXTL_IGF_MISMATCH                       /* VA: issue 559: fix mismatch between st->extl and st->igf observed as crash in PlanarSBA bitrate switching */
#define FIX_572_LFE_LPF_ENC                             /* FhG: issue 572: always apply the low pass filter to the LFE channel */
#define FIX_QMETA_SID_5k2                               /* Nokia: Issue 137: enable using full 5.2k bitrate in MASA SID */
#define FIX_578_PARAMMC_ILD_BS                          /* FhG: Issue 578: transmitt also center ILD in band 0 when LFE is active in 3TC ParamMC */
#define FIX_UNCLR_ISSUE                                 /* VoiceAge: issue 574: Fix UNCLR mis-classifications in noisy speech stereo */
#define FIX_TCX_LOWRATE_LIMITATION                      /* VA: issue 577: TCX bitrate limitation only when DEBUGGING is active */
#define FIX_575_LOW_OVERLAP_PLC_RECOVERY                /* FhG: Issue 575 fix for PLC and transistion to TCX5*/
#define ISM_FB_16k4                                     /* VA: Issue: 579: change BW from SWB to FB in NxISM conditions to match the EVS codec */
#define FIX_580_PARAMMC_ENER_BURSTS                     /* FhG: issue 580: energy bursts due to ILD holding when energy relations change too much */


#define SPLIT_REND_WITH_HEAD_ROT
#ifdef SPLIT_REND_WITH_HEAD_ROT

#define FIX_SPLIT_REND_MERGE                            /* Resolving the compilation warnings after splitrenderer main updation */

														
//#define SPLIT_REND_WITH_HEAD_ROT_DEBUG // only for debugging purposes
//#define DBG_WAV_WRITER

@@ -183,31 +211,6 @@
#define FIX_SPLIT_REND_OPEN_ERROR_HANDLING              /* adds missing error handling around ivas_split_renderer_open calls  */
// #define SPLIT_REND_LC3PLUS_HBR_DBG                      /* Override bitrate per LC3 core */
#endif
#define TD_TDREND_FIX_NULLPTR_ACCESS                    /* FhG: avoid nullptr access in ivas_rend_TDObjRendOpen */
#define TD_REND_FIX_DIV_BY_ZERO                         /* FhG: avoid division by zero in sincResample fn */
#define RENAME_GWLPR                                    /* FhG: Rename clashing symbol */

#define FIX_563_PARAMMC_LIMITER                         /* FhG: issue 563: fix ILD limiter when coming from silence w/o transient set             */
#define FIX_560_VAD_FLAG                                /* Eri: Issue 560 - VAD flag issue for unified stereo */
#define FIX_549_DMX_GAIN                                /* FhG: issue 549: ParamISM output too quiet */
#define FIX_470_MASA_JBM_EXT                            /* Nokia: Issue 470, fix MASA EXT output with JBM */
#define ISM_FB                                          /* issue 556: change SWB to FB coding in 1ISM at 24.4 kbps */
#define FIX_558_PLC_DISCONT                             /* FhG: issue 558: fix discontinuities in DFT Stereo when switching from TCX concealment to ACELP */
#define FIX_564                                         /* Nokia: Issue 564: Fix gains in JBM path for SBA with parametric binaural renderer */
#define FIX_566_2DIR_MASA_384K                          /* Nokia: Issued 566:  Bugfix in 384k MASA metadata encoding of second direction */
#define FIX_568_ISM_BITRATE_SWITCHING                   /* Philips: Issue 568: Bugfix for renderer re-initialization by ISM and bitrate switching */
#define FIX_565_SBA_BURST_IN_FEC                        /* VA: Issue 565: Fix noise burst during FEC, due to wrong total_brate initialization */
#define FIX_562_ISM2_64KBPS                             /* VA: issue 562: fix ISM2 at 64kbps issue */
#define FIX_559_EXTL_IGF_MISMATCH                       /* VA: issue 559: fix mismatch between st->extl and st->igf observed as crash in PlanarSBA bitrate switching */
#define FIX_572_LFE_LPF_ENC                             /* FhG: issue 572: always apply the low pass filter to the LFE channel */
#define FIX_QMETA_SID_5k2                               /* Nokia: Issue 137: enable using full 5.2k bitrate in MASA SID */
#define FIX_578_PARAMMC_ILD_BS                          /* FhG: Issue 578: transmitt also center ILD in band 0 when LFE is active in 3TC ParamMC */
#define FIX_UNCLR_ISSUE                                 /* VoiceAge: issue 574: Fix UNCLR mis-classifications in noisy speech stereo */
#define FIX_TCX_LOWRATE_LIMITATION                      /* VA: issue 577: TCX bitrate limitation only when DEBUGGING is active */
#define FIX_575_LOW_OVERLAP_PLC_RECOVERY                /* FhG: Issue 575 fix for PLC and transistion to TCX5*/
#define ISM_FB_16k4                                     /* VA: Issue: 579: change BW from SWB to FB in NxISM conditions to match the EVS codec */
#define FIX_580_PARAMMC_ENER_BURSTS                     /* FhG: issue 580: energy bursts due to ILD holding when energy relations change too much */


/* ################## End DEVELOPMENT switches ######################### */
/* clang-format on */
+21 −418

File changed.

Preview size limit exceeded, changes collapsed.

+13 −13
Original line number Diff line number Diff line
@@ -102,18 +102,6 @@ ivas_error ivas_dec(

    output_frame = (int16_t) ( output_Fs / FRAMES_PER_SEC );

#ifdef SPLIT_REND_WITH_HEAD_ROT
    if ( ( output_config == AUDIO_CONFIG_BINAURAL_SPLIT_CLDFB ) ||
         ( output_config == AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) )
    {
#ifdef SPLIT_REND_LC3PLUS
        assert( ( st_ivas->ivas_format == SBA_FORMAT || ( st_ivas->ivas_format == ISM_FORMAT && st_ivas->ism_mode == ISM_MODE_DISC ) ) && ( output_Fs == 48000 ) && "split binaural mode is currently supported with SBA or discrete ISM format and 48k sampling rate only" );
#else
        assert( st_ivas->ivas_format == SBA_FORMAT && ( output_Fs == 48000 ) && "split binaural mode is currently supported with SBA format and 48k sampling rate only" );
#endif
        ivas_set_split_rend_setup( &st_ivas->splitBinRend, &st_ivas->hRenderConfig->split_rend_config, st_ivas->hHeadTrackData, hSplitRendBits );
        }
#endif
    for ( n = 0; n < MAX_OUTPUT_CHANNELS; n++ )
    {
        p_output[n] = &output[n][0];
@@ -128,6 +116,18 @@ ivas_error ivas_dec(
        return error;
    }

#ifdef SPLIT_REND_WITH_HEAD_ROT
    if ( ( output_config == AUDIO_CONFIG_BINAURAL_SPLIT_CLDFB ) ||
         ( output_config == AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) )
    {
#ifdef SPLIT_REND_LC3PLUS
        assert( ( st_ivas->ivas_format == SBA_FORMAT || ( st_ivas->ivas_format == ISM_FORMAT && st_ivas->ism_mode == ISM_MODE_DISC ) ) && ( output_Fs == 48000 ) && "split binaural mode is currently supported with SBA or discrete ISM format and 48k sampling rate only" );
#else
        assert( st_ivas->ivas_format == SBA_FORMAT && ( output_Fs == 48000 ) && "split binaural mode is currently supported with SBA format and 48k sampling rate only" );
#endif
        ivas_set_split_rend_setup( &st_ivas->splitBinRend, &st_ivas->hRenderConfig->split_rend_config, st_ivas->hCombinedOrientationData, hSplitRendBits );
    }
#endif
    /*----------------------------------------------------------------*
     * Decoding + Rendering
     *----------------------------------------------------------------*/
+2 −5
Original line number Diff line number Diff line
@@ -2933,9 +2933,6 @@ void ivas_dirac_dec_render_sf(
    {
        /* Perform binaural rendering */
        ivas_binRenderer( st_ivas->hBinRenderer,
#ifdef FIX_SPLIT_REND_MERGE
                          st_ivas->hHeadTrackData,
#endif
#ifdef SPLIT_REND_WITH_HEAD_ROT
                          &st_ivas->splitBinRend.splitrend.multiBinPoseData,
#endif
@@ -2961,8 +2958,8 @@ void ivas_dirac_dec_render_sf(
                {
                    for ( ch = 0; ch < st_ivas->hDecoderConfig->nchan_out; ch++ )
                    {
                        mvr2r( Cldfb_RealBuffer_Binaural[pos_idx][ch][slot_idx], st_ivas->splitBinRend.hMultiBinCldfbData->Cldfb_RealBuffer_Binaural[pos_idx][ch][index_slot + slot_idx], hDirAC->num_freq_bands );
                        mvr2r( Cldfb_ImagBuffer_Binaural[pos_idx][ch][slot_idx], st_ivas->splitBinRend.hMultiBinCldfbData->Cldfb_ImagBuffer_Binaural[pos_idx][ch][index_slot + slot_idx], hDirAC->num_freq_bands );
                        mvr2r( Cldfb_RealBuffer_Binaural[pos_idx][ch][slot_idx], st_ivas->splitBinRend.hMultiBinCldfbData->Cldfb_RealBuffer_Binaural[pos_idx][ch][slot_idx_start + slot_idx], hDirAC->num_freq_bands );
                        mvr2r( Cldfb_ImagBuffer_Binaural[pos_idx][ch][slot_idx], st_ivas->splitBinRend.hMultiBinCldfbData->Cldfb_ImagBuffer_Binaural[pos_idx][ch][slot_idx_start + slot_idx], hDirAC->num_freq_bands );
                    }
                }
            }
Loading