Commit 33c2396b authored by multrus's avatar multrus
Browse files

[cleanup] accept FIX_2437_HARMONIZE_ENCODERINDEX

parent 0647932f
Loading
Loading
Loading
Loading
+0 −8
Original line number Diff line number Diff line
@@ -4090,17 +4090,9 @@ ivas_error ivas_param_ism_dec_open_fx(
    Decoder_Struct *st_ivas                                     /* i/o: IVAS decoder structure                      */
);

#ifdef FIX_FLOAT_1526_DIRAC_MEM_LEAK
void ivas_param_ism_dec_close_fx(
    PARAM_ISM_DEC_HANDLE *hParamIsmDec                          /* i/o: decoder ParamISM handle                     */
);
#else
void ivas_param_ism_dec_close_fx(
    PARAM_ISM_DEC_HANDLE *hParamIsmDec,                         /* i/o: decoder ParamISM handle                     */
    SPAT_PARAM_REND_COMMON_DATA_HANDLE *hSpatParamRendCom_out,  /* i/o: common spatial renderer data                */
    const AUDIO_CONFIG output_config                            /* i  : output audio configuration                  */
);
#endif

void ivas_ism_dec_digest_tc_fx(
    Decoder_Struct *st_ivas                                     /* i/o: IVAS decoder structure                      */
+0 −2
Original line number Diff line number Diff line
@@ -83,8 +83,6 @@
#define FIX_1990_SANITIZER_IN_REVERB_LOAD               /* Nokia: Fix issue part of issue 1990 by introducing missing free of structure - keep until #2059 is addressed */
#define TMP_1342_WORKAROUND_DEC_FLUSH_BROKEN_IN_SR      /* FhG: Temporary workaround for incorrect implementation of decoder flush with split rendering */
#define NONBE_1122_KEEP_EVS_MODE_UNCHANGED              /* FhG: Disables fix for issue 1122 in EVS mode to keep BE tests green. This switch should be removed once the 1122 fix is added to EVS via a CR.  */
#define FIX_FLOAT_1526_DIRAC_MEM_LEAK                   /* FhG: float issue 1526: potential memory leak in DirAC handles in case of format switching */
#define FIX_2437_HARMONIZE_ENCODERINDEX                 /* FhG: basop issue 2437 EncoderIndex_ivas_fx() and EncoderIndex_fx()*/
#define FIX_2385_GETTCXONLY                             /* FhG: issue 2385 : harmonizing getTcxonly_ivas_fx() and getTcxonly_ivas_fx() functions */
#define FIX_2196_UNREACHABLE_CODE_IN_OSBA_STEREO_OUTPUT /* FhG: remove unreachable code in ivas_osba_stereo_add_channels */
#define FIX_OUTPUT_FRAME                                /* VA: harmonize "output_frame" parameter usage to correspond to FLP */
+0 −14
Original line number Diff line number Diff line
@@ -3445,7 +3445,6 @@ void ivas_destroy_dec_fx(
    /* ISM renderer handle */
    ivas_ism_renderer_close( &( st_ivas->hIsmRendererData ) );

#ifdef FIX_FLOAT_1526_DIRAC_MEM_LEAK
    /* ParamISM dec handle */
    ivas_param_ism_dec_close_fx( &( st_ivas->hParamIsmDec ) );

@@ -3453,19 +3452,6 @@ void ivas_destroy_dec_fx(
    ivas_dirac_rend_close_fx( &( st_ivas->hDirACRend ) );
    ivas_spat_hSpatParamRendCom_close_fx( &( st_ivas->hSpatParamRendCom ) );
    ivas_dirac_dec_close_fx( &( st_ivas->hDirAC ) );
#else
    /* DirAC handle */
    IF( EQ_32( st_ivas->ivas_format, ISM_FORMAT ) )
    {
        ivas_param_ism_dec_close_fx( &( st_ivas->hParamIsmDec ), &( st_ivas->hSpatParamRendCom ), st_ivas->hDecoderConfig->output_config );
    }
    ELSE
    {
        ivas_dirac_rend_close_fx( &( st_ivas->hDirACRend ) );
        ivas_spat_hSpatParamRendCom_close_fx( &( st_ivas->hSpatParamRendCom ) );
        ivas_dirac_dec_close_fx( &( st_ivas->hDirAC ) );
    }
#endif

    /* SPAR handle */
    ivas_spar_dec_close_fx( &( st_ivas->hSpar ), st_ivas->hDecoderConfig->output_Fs, 0 );
+0 −4
Original line number Diff line number Diff line
@@ -173,13 +173,9 @@ static ivas_error ivas_ism_bitrate_switching_dec_fx(
    IF( EQ_32( st_ivas->ism_mode, ISM_MODE_DISC ) && EQ_32( last_ism_mode, ISM_MODE_PARAM ) )
    {
        /* Deallocate the ParamISM struct */
#ifdef FIX_FLOAT_1526_DIRAC_MEM_LEAK
        ivas_param_ism_dec_close_fx( &( st_ivas->hParamIsmDec ) );

        ivas_spat_hSpatParamRendCom_close_fx( &( st_ivas->hSpatParamRendCom ) );
#else
        ivas_param_ism_dec_close_fx( &( st_ivas->hParamIsmDec ), &( st_ivas->hSpatParamRendCom ), st_ivas->hDecoderConfig->output_config );
#endif

        test();
        IF( EQ_32( st_ivas->hOutSetup.output_config, IVAS_AUDIO_CONFIG_BINAURAL ) || EQ_32( st_ivas->hOutSetup.output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) || EQ_32( st_ivas->hOutSetup.output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_CODED ) || EQ_32( st_ivas->hOutSetup.output_config, IVAS_AUDIO_CONFIG_BINAURAL_SPLIT_PCM ) )
+0 −40
Original line number Diff line number Diff line
@@ -617,18 +617,15 @@ ivas_error ivas_param_ism_dec_open_fx(
        return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for ParamISM\n" ) );
    }

#ifdef FIX_FLOAT_1526_DIRAC_MEM_LEAK
    /* initialize sub-handles with NULL */
    hParamIsmDec->hParamIsm = NULL;
    hParamIsmDec->hParamIsmRendering = NULL;
#endif

    IF( ( hSpatParamRendCom = (SPAT_PARAM_REND_COMMON_DATA_HANDLE) malloc( sizeof( SPAT_PARAM_REND_COMMON_DATA ) ) ) == NULL )
    {
        return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for DirAC\n" ) );
    }

#ifdef FIX_FLOAT_1526_DIRAC_MEM_LEAK
    /* initialize buffers in handle with NULL - this handle is also used by other DirAC technologies, and not every technology is initializing all buffers */
    hSpatParamRendCom->azimuth = NULL;
    hSpatParamRendCom->elevation = NULL;
@@ -640,7 +637,6 @@ ivas_error ivas_param_ism_dec_open_fx(
    hSpatParamRendCom->spreadCoherence_fx = NULL;
    hSpatParamRendCom->spreadCoherence2_fx = NULL;
    hSpatParamRendCom->surroundingCoherence_fx = NULL;
#endif

    /* Assign memory to Param Object handle */
    IF( ( hParamIsmDec->hParamIsm = (PARAM_ISM_CONFIG_HANDLE) malloc( sizeof( PARAM_ISM_CONFIG_DATA ) ) ) == NULL )
@@ -648,23 +644,19 @@ ivas_error ivas_param_ism_dec_open_fx(
        return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for ParamISM\n" ) );
    }

#ifdef FIX_FLOAT_1526_DIRAC_MEM_LEAK
    /* initialize sub-handles with NULL */
    hParamIsmDec->hParamIsm->hFbMixer = NULL;
#endif

    IF( ( hParamIsmDec->hParamIsmRendering = (PARAM_ISM_RENDERING_HANDLE) malloc( sizeof( PARAM_ISM_RENDERING_DATA ) ) ) == NULL )
    {
        return ( IVAS_ERROR( IVAS_ERR_FAILED_ALLOC, "Can not allocate memory for ParamISM Rendering handle\n" ) );
    }

#ifdef FIX_FLOAT_1526_DIRAC_MEM_LEAK
    /* initialize sub-handles/buffers with NULL */
    hParamIsmDec->hParamIsmRendering->proto_matrix_fx = NULL;
    hParamIsmDec->hParamIsmRendering->interpolator_fx = NULL;
    hParamIsmDec->hParamIsmRendering->Cldfb_RealBuffer_tc_fx = NULL;
    hParamIsmDec->hParamIsmRendering->Cldfb_ImagBuffer_tc_fx = NULL;
#endif

    output_Fs = st_ivas->hDecoderConfig->output_Fs;
    move32();
@@ -871,17 +863,9 @@ ivas_error ivas_param_ism_dec_open_fx(
 * Close Param ISM handle
 *-------------------------------------------------------------------------*/

#ifdef FIX_FLOAT_1526_DIRAC_MEM_LEAK
void ivas_param_ism_dec_close_fx(
    PARAM_ISM_DEC_HANDLE *hParamIsmDec_out /* i/o: decoder DirAC handle         */
)
#else
void ivas_param_ism_dec_close_fx(
    PARAM_ISM_DEC_HANDLE *hParamIsmDec_out,                    /* i/o: decoder DirAC handle         */
    SPAT_PARAM_REND_COMMON_DATA_HANDLE *hSpatParamRendCom_out, /* i/o: common spatial renderer data */
    AUDIO_CONFIG output_config                                 /* i  : output audio configuration   */
)
#endif
{
    test();
    IF( hParamIsmDec_out != NULL && *hParamIsmDec_out != NULL )
@@ -896,11 +880,6 @@ void ivas_param_ism_dec_close_fx(
            hParamIsmDec->hParamIsm = NULL;
        }

#ifndef FIX_FLOAT_1526_DIRAC_MEM_LEAK
        test();
        IF( !( EQ_32( output_config, IVAS_AUDIO_CONFIG_MONO ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_STEREO ) ) )
        {
#endif
            /* Param ISM Rendering */
            IF( hParamIsmDec->hParamIsmRendering->interpolator_fx != NULL )
            {
@@ -912,9 +891,6 @@ void ivas_param_ism_dec_close_fx(
                free( hParamIsmDec->hParamIsmRendering->proto_matrix_fx );
                hParamIsmDec->hParamIsmRendering->proto_matrix_fx = NULL;
            }
#ifndef FIX_FLOAT_1526_DIRAC_MEM_LEAK
        }
#endif

        IF( hParamIsmDec->hParamIsmRendering->Cldfb_RealBuffer_tc_fx != NULL )
        {
@@ -936,22 +912,6 @@ void ivas_param_ism_dec_close_fx(
        *hParamIsmDec_out = NULL;
    }

#ifndef FIX_FLOAT_1526_DIRAC_MEM_LEAK
    test();
    IF( hSpatParamRendCom_out != NULL && *hSpatParamRendCom_out != NULL )
    {
        test();
        test();
        IF( EQ_32( output_config, IVAS_AUDIO_CONFIG_BINAURAL ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_IR ) || EQ_32( output_config, IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) )
        {
            ivas_dirac_deallocate_parameters_fx( *hSpatParamRendCom_out, 1 );
            ivas_dirac_deallocate_parameters_fx( *hSpatParamRendCom_out, 2 );
        }

        free( *hSpatParamRendCom_out );
        *hSpatParamRendCom_out = NULL;
    }
#endif

    return;
}
Loading