Commit 7f2f1aeb authored by emerit's avatar emerit
Browse files

fix renderer usans msan error add rendrer tests whith hrir load

parent 6afd0f28
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -2236,11 +2236,11 @@ cleanup:
    hrtfFileReader_close( &hrtfFileReader );
#endif
#ifdef FIX_BINARY_BINAURAL_READING
    if ( *hSetOfHRTF != NULL )
    if ( hSetOfHRTF != NULL && *hSetOfHRTF != NULL )
    {
        destroy_SetOfHRTF( *hSetOfHRTF );
    }
    if ( hHrtfTD != NULL )
    if ( hHrtfTD != NULL && *hHrtfTD != NULL )
    {
        dealloc_HRTF_binary( *hHrtfTD );
    }
+4 −1
Original line number Diff line number Diff line
@@ -407,7 +407,7 @@ ivas_error ivas_dirac_dec_binaural_copy_hrtfs(
    int16_t i, j;
    if ( hHrtfParambin != NULL && *hHrtfParambin != NULL )
    {
        /* Tables already loaded from file */
        /* Tables already allocated */
        return IVAS_ERR_OK;
    }
    else
@@ -433,6 +433,9 @@ ivas_error ivas_dirac_dec_binaural_copy_hrtfs(
        mvr2r( parametricReverberationEneCorrections, hrtfParambin->parametricReverberationEneCorrections, CLDFB_NO_CHANNELS_MAX );
        mvr2r( parametricEarlyPartEneCorrection, hrtfParambin->parametricEarlyPartEneCorrection, CLDFB_NO_CHANNELS_MAX );

#ifdef FIX_BINARY_BINAURAL_READING
        hrtfParambin->allocatedFromFile = 0;
#endif
        *hHrtfParambin = hrtfParambin;
    }

+4 −0
Original line number Diff line number Diff line
@@ -1303,6 +1303,10 @@ typedef struct ivas_hrtfs_parambin_struct
    float parametricReverberationEneCorrections[CLDFB_NO_CHANNELS_MAX];
    float parametricEarlyPartEneCorrection[CLDFB_NO_CHANNELS_MAX];

#ifdef FIX_BINARY_BINAURAL_READING
    int16_t allocatedFromFile;
#endif

} HRTFS_PARAMBIN, *HRTFS_PARAMBIN_HANDLE;


+10 −0
Original line number Diff line number Diff line
@@ -3578,7 +3578,11 @@ static void freeDecoderDummy(

#ifdef LIB_REND_FIX_HRTFPARAMBIN_MEMLEAK
    /* Parametric binaural renderer HRTF structure */
#ifdef FIX_BINARY_BINAURAL_READING
    if ( pDecDummy->hHrtfParambin != NULL && pDecDummy->hHrtfParambin->allocatedFromFile == 0 )
#else
    if ( pDecDummy->hHrtfParambin != NULL )
#endif
    {
#endif
        free( pDecDummy->hHrtfParambin );
@@ -9328,6 +9332,12 @@ void IVAS_REND_Close(
    ivas_combined_orientation_close( &hIvasRend->hCombinedOrientationData );

#ifdef FIX_BINARY_BINAURAL_READING
    /* Fastconv HRTF memories */
    ivas_binaural_hrtf_close( &hIvasRend->hHrtfFastConv );

    /* Parametric binauralizer HRTF filters */


    ivas_HRTF_binary_close( &( hIvasRend->hHrtfTD ) );
    ivas_HRTF_CRend_binary_close( &( hIvasRend->hSetOfHRTF ) );
    ivas_HRTF_fastconv_binary_close( &( hIvasRend->hHrtfFastConv ) );
+4 −0
Original line number Diff line number Diff line
@@ -1636,6 +1636,10 @@ static ivas_error create_parambin_HRTF_from_rawdata(
    memcpy( ( *hHRTF )->parametricEarlyPartEneCorrection, hrtf_data_rptr, CLDFB_NO_CHANNELS_MAX * sizeof( float ) );
    hrtf_data_rptr += CLDFB_NO_CHANNELS_MAX * sizeof( float );

#ifdef FIX_BINARY_BINAURAL_READING
    ( *hHRTF )->allocatedFromFile = 1;
#endif

    return IVAS_ERR_OK;
}

Loading