Loading Workspace_msvc/lib_dec.vcxproj +0 −1 Original line number Diff line number Diff line Loading @@ -205,7 +205,6 @@ <ClCompile Include="..\lib_dec\init_dec.c" /> <ClCompile Include="..\lib_dec\inov_dec.c" /> <ClCompile Include="..\lib_dec\ivas_agc_dec.c" /> <ClCompile Include="..\lib_dec\ivas_binRenderer_internal.c" /> <ClCompile Include="..\lib_dec\ivas_corecoder_dec_reconfig.c" /> <ClCompile Include="..\lib_dec\ivas_core_dec.c" /> <ClCompile Include="..\lib_dec\ivas_cpe_dec.c" /> Loading Workspace_msvc/lib_isar.vcxproj +0 −1 Original line number Diff line number Diff line Loading @@ -148,7 +148,6 @@ <ClCompile Include="..\lib_isar\isar_lc3plus_enc.c" /> <ClCompile Include="..\lib_isar\isar_lc3plus_payload.c" /> <ClCompile Include="..\lib_isar\isar_MSPred.c" /> <ClCompile Include="..\lib_isar\isar_NoiseGen.c" /> <ClCompile Include="..\lib_isar\isar_PerceptualModel.c" /> <ClCompile Include="..\lib_isar\isar_PredDecoder.c" /> <ClCompile Include="..\lib_isar\isar_PredEncoder.c" /> Loading Workspace_msvc/lib_isar.vcxproj.filters +0 −3 Original line number Diff line number Diff line Loading @@ -24,9 +24,6 @@ <ClCompile Include="..\lib_isar\isar_MSPred.c"> <Filter>isar_c</Filter> </ClCompile> <ClCompile Include="..\lib_isar\isar_NoiseGen.c"> <Filter>isar_c</Filter> </ClCompile> <ClCompile Include="..\lib_isar\isar_PerceptualModel.c"> <Filter>isar_c</Filter> </ClCompile> Loading Workspace_msvc/lib_rend.vcxproj +1 −0 Original line number Diff line number Diff line Loading @@ -138,6 +138,7 @@ </Lib> </ItemDefinitionGroup> <ItemGroup> <ClCompile Include="..\lib_rend\ivas_binRenderer_internal.c" /> <ClCompile Include="..\lib_rend\ivas_cldfb_ring_buffer.c" /> <ClCompile Include="..\lib_rend\ivas_dirac_decorr_dec.c" /> <ClCompile Include="..\lib_rend\ivas_dirac_dec_binaural_functions.c" /> Loading apps/decoder.c +56 −8 Original line number Diff line number Diff line Loading @@ -159,10 +159,11 @@ typedef struct hrtfFileReader *hrtfReader; char *hrtfFileName; #ifndef FIX_2249_MEMORY_LEAK_IN_SBA IVAS_DEC_HRTF_TD_HANDLE *hHrtfTD; IVAS_DEC_HRTF_STATISTICS_HANDLE *hHrtfStatistics; #endif IVAS_BIN_RENDERER_TYPE binaural_renderer; IVAS_BIN_RENDERER_TYPE binaural_renderer_old; IVAS_BIN_RENDERER_TYPE binaural_renderer_sec; Loading Loading @@ -242,9 +243,10 @@ int main( enable_float_exception_trap( FLE_MASK_DENORM | FLE_MASK_UNDERFLOW ); #endif #ifndef FIX_2249_MEMORY_LEAK_IN_SBA hHrtfBinary.hHrtfTD = NULL; /* just to avoid compilation warning */ hHrtfBinary.hHrtfStatistics = NULL; /* just to avoid compilation warning */ #endif splitRendBits.bits_buf = splitRendBitsBuf; /*------------------------------------------------------------------------------------------* Loading Loading @@ -487,6 +489,13 @@ int main( fprintf( stderr, "\nConfigure failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } #ifdef FIX_1449_RENDERER_FRAME_SIZE_UNCLEAR_IN_ISAR if ( !arg.renderConfigEnabled && ( arg.renderFramesize != asked_frame_size ) ) { fprintf( stderr, "\nChanged render framesize, only 20ms are allowed for non-0dof split rendering!\n" ); } #endif } /*------------------------------------------------------------------------------------------* Loading Loading @@ -849,11 +858,13 @@ cleanup: IVAS_DEC_GetSbaDebugParams( hIvasDec, &numOutChannels, &numTransportChannels, &pca_ingest_channels ); #endif #ifndef FIX_2249_MEMORY_LEAK_IN_SBA if ( arg.hrtfReaderEnabled ) { destroy_td_hrtf( hHrtfBinary.hHrtfTD ); destroy_hrtf_statistics( hHrtfBinary.hHrtfStatistics ); } #endif IVAS_DEC_Close( &hIvasDec ); CustomLsReader_close( &hLsCustomReader ); Loading Loading @@ -4147,11 +4158,12 @@ static ivas_error load_hrtf_from_file( * Release HRTF binary data *------------------------------------------------------------------------------------------*/ #ifndef FIX_2249_MEMORY_LEAK_IN_SBA if ( !( binaural_renderer == IVAS_BIN_RENDERER_TYPE_TDREND || binaural_renderer == IVAS_BIN_RENDERER_TYPE_DEFAULT ) && binaural_renderer_sec != IVAS_BIN_RENDERER_TYPE_TDREND && hHrtfBinary->hHrtfTD != NULL ) { destroy_td_hrtf( hHrtfBinary->hHrtfTD ); } #endif if ( ( error = IVAS_DEC_HRTF_binary_close( hIvasDec, hHrtfBinary->binaural_renderer_old ) ) != IVAS_ERR_OK ) { return error; Loading @@ -4173,13 +4185,23 @@ static ivas_error load_hrtf_from_file( if ( binaural_renderer == IVAS_BIN_RENDERER_TYPE_TDREND || binaural_renderer_sec == IVAS_BIN_RENDERER_TYPE_TDREND || binaural_renderer == IVAS_BIN_RENDERER_TYPE_DEFAULT ) { #ifdef FIX_2249_MEMORY_LEAK_IN_SBA IVAS_DEC_HRTF_TD_HANDLE *hHrtfTD = NULL; if ( ( error = IVAS_DEC_GetHrtfTDrendHandle( hIvasDec, &hHrtfTD ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetHrtfTDrendHandle( hIvasDec, &hHrtfBinary->hHrtfTD ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nIVAS_DEC_GetHrtfTDrendHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); return error; } #ifdef FIX_2249_MEMORY_LEAK_IN_SBA if ( ( error = load_TDrend_HRTF_binary( *hHrtfTD, output_Fs, hHrtfBinary->hrtfReader ) ) != IVAS_ERR_OK ) #else if ( ( error = load_TDrend_HRTF_binary( *hHrtfBinary->hHrtfTD, output_Fs, hHrtfBinary->hrtfReader ) ) != IVAS_ERR_OK ) #endif { if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA ) { Loading @@ -4188,7 +4210,11 @@ static ivas_error load_hrtf_from_file( } else { #ifdef FIX_2249_MEMORY_LEAK_IN_SBA destroy_td_hrtf( hHrtfTD ); #else destroy_td_hrtf( hHrtfBinary->hHrtfTD ); #endif } } } Loading Loading @@ -4261,17 +4287,32 @@ static ivas_error load_hrtf_from_file( } } } #ifndef FIX_2249_MEMORY_LEAK_IN_SBA } #endif #ifdef FIX_2249_MEMORY_LEAK_IN_SBA if ( ( binaural_renderer == IVAS_BIN_RENDERER_TYPE_FASTCONV || binaural_renderer == IVAS_BIN_RENDERER_TYPE_CREND ) && OutputConfig == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) #else if ( hHrtfBinary->hHrtfStatistics == NULL && ( binaural_renderer == IVAS_BIN_RENDERER_TYPE_FASTCONV || binaural_renderer == IVAS_BIN_RENDERER_TYPE_CREND ) && OutputConfig == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) #endif { #ifdef FIX_2249_MEMORY_LEAK_IN_SBA IVAS_DEC_HRTF_STATISTICS_HANDLE *hHrtfStatistics = NULL; if ( ( error = IVAS_DEC_GetHrtfStatisticsHandle( hIvasDec, &hHrtfStatistics ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetHrtfStatisticsHandle( hIvasDec, &hHrtfBinary->hHrtfStatistics ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nIVAS_DEC_GetHrtfStatisticsHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); return error; } #ifdef FIX_2249_MEMORY_LEAK_IN_SBA if ( ( error = load_HrtfStatistics_from_binary( *hHrtfStatistics, output_Fs, hHrtfBinary->hrtfReader ) ) != IVAS_ERR_OK ) #else if ( ( error = load_reverb_binary( *hHrtfBinary->hHrtfStatistics, output_Fs, hHrtfBinary->hrtfReader ) ) != IVAS_ERR_OK ) #endif { if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA ) { Loading @@ -4280,10 +4321,17 @@ static ivas_error load_hrtf_from_file( } else { #ifdef FIX_2249_MEMORY_LEAK_IN_SBA destroy_hrtf_statistics( hHrtfStatistics ); #else destroy_hrtf_statistics( hHrtfBinary->hHrtfStatistics ); #endif } } } #ifdef FIX_2249_MEMORY_LEAK_IN_SBA } #endif return IVAS_ERR_OK; } Loading Loading
Workspace_msvc/lib_dec.vcxproj +0 −1 Original line number Diff line number Diff line Loading @@ -205,7 +205,6 @@ <ClCompile Include="..\lib_dec\init_dec.c" /> <ClCompile Include="..\lib_dec\inov_dec.c" /> <ClCompile Include="..\lib_dec\ivas_agc_dec.c" /> <ClCompile Include="..\lib_dec\ivas_binRenderer_internal.c" /> <ClCompile Include="..\lib_dec\ivas_corecoder_dec_reconfig.c" /> <ClCompile Include="..\lib_dec\ivas_core_dec.c" /> <ClCompile Include="..\lib_dec\ivas_cpe_dec.c" /> Loading
Workspace_msvc/lib_isar.vcxproj +0 −1 Original line number Diff line number Diff line Loading @@ -148,7 +148,6 @@ <ClCompile Include="..\lib_isar\isar_lc3plus_enc.c" /> <ClCompile Include="..\lib_isar\isar_lc3plus_payload.c" /> <ClCompile Include="..\lib_isar\isar_MSPred.c" /> <ClCompile Include="..\lib_isar\isar_NoiseGen.c" /> <ClCompile Include="..\lib_isar\isar_PerceptualModel.c" /> <ClCompile Include="..\lib_isar\isar_PredDecoder.c" /> <ClCompile Include="..\lib_isar\isar_PredEncoder.c" /> Loading
Workspace_msvc/lib_isar.vcxproj.filters +0 −3 Original line number Diff line number Diff line Loading @@ -24,9 +24,6 @@ <ClCompile Include="..\lib_isar\isar_MSPred.c"> <Filter>isar_c</Filter> </ClCompile> <ClCompile Include="..\lib_isar\isar_NoiseGen.c"> <Filter>isar_c</Filter> </ClCompile> <ClCompile Include="..\lib_isar\isar_PerceptualModel.c"> <Filter>isar_c</Filter> </ClCompile> Loading
Workspace_msvc/lib_rend.vcxproj +1 −0 Original line number Diff line number Diff line Loading @@ -138,6 +138,7 @@ </Lib> </ItemDefinitionGroup> <ItemGroup> <ClCompile Include="..\lib_rend\ivas_binRenderer_internal.c" /> <ClCompile Include="..\lib_rend\ivas_cldfb_ring_buffer.c" /> <ClCompile Include="..\lib_rend\ivas_dirac_decorr_dec.c" /> <ClCompile Include="..\lib_rend\ivas_dirac_dec_binaural_functions.c" /> Loading
apps/decoder.c +56 −8 Original line number Diff line number Diff line Loading @@ -159,10 +159,11 @@ typedef struct hrtfFileReader *hrtfReader; char *hrtfFileName; #ifndef FIX_2249_MEMORY_LEAK_IN_SBA IVAS_DEC_HRTF_TD_HANDLE *hHrtfTD; IVAS_DEC_HRTF_STATISTICS_HANDLE *hHrtfStatistics; #endif IVAS_BIN_RENDERER_TYPE binaural_renderer; IVAS_BIN_RENDERER_TYPE binaural_renderer_old; IVAS_BIN_RENDERER_TYPE binaural_renderer_sec; Loading Loading @@ -242,9 +243,10 @@ int main( enable_float_exception_trap( FLE_MASK_DENORM | FLE_MASK_UNDERFLOW ); #endif #ifndef FIX_2249_MEMORY_LEAK_IN_SBA hHrtfBinary.hHrtfTD = NULL; /* just to avoid compilation warning */ hHrtfBinary.hHrtfStatistics = NULL; /* just to avoid compilation warning */ #endif splitRendBits.bits_buf = splitRendBitsBuf; /*------------------------------------------------------------------------------------------* Loading Loading @@ -487,6 +489,13 @@ int main( fprintf( stderr, "\nConfigure failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); goto cleanup; } #ifdef FIX_1449_RENDERER_FRAME_SIZE_UNCLEAR_IN_ISAR if ( !arg.renderConfigEnabled && ( arg.renderFramesize != asked_frame_size ) ) { fprintf( stderr, "\nChanged render framesize, only 20ms are allowed for non-0dof split rendering!\n" ); } #endif } /*------------------------------------------------------------------------------------------* Loading Loading @@ -849,11 +858,13 @@ cleanup: IVAS_DEC_GetSbaDebugParams( hIvasDec, &numOutChannels, &numTransportChannels, &pca_ingest_channels ); #endif #ifndef FIX_2249_MEMORY_LEAK_IN_SBA if ( arg.hrtfReaderEnabled ) { destroy_td_hrtf( hHrtfBinary.hHrtfTD ); destroy_hrtf_statistics( hHrtfBinary.hHrtfStatistics ); } #endif IVAS_DEC_Close( &hIvasDec ); CustomLsReader_close( &hLsCustomReader ); Loading Loading @@ -4147,11 +4158,12 @@ static ivas_error load_hrtf_from_file( * Release HRTF binary data *------------------------------------------------------------------------------------------*/ #ifndef FIX_2249_MEMORY_LEAK_IN_SBA if ( !( binaural_renderer == IVAS_BIN_RENDERER_TYPE_TDREND || binaural_renderer == IVAS_BIN_RENDERER_TYPE_DEFAULT ) && binaural_renderer_sec != IVAS_BIN_RENDERER_TYPE_TDREND && hHrtfBinary->hHrtfTD != NULL ) { destroy_td_hrtf( hHrtfBinary->hHrtfTD ); } #endif if ( ( error = IVAS_DEC_HRTF_binary_close( hIvasDec, hHrtfBinary->binaural_renderer_old ) ) != IVAS_ERR_OK ) { return error; Loading @@ -4173,13 +4185,23 @@ static ivas_error load_hrtf_from_file( if ( binaural_renderer == IVAS_BIN_RENDERER_TYPE_TDREND || binaural_renderer_sec == IVAS_BIN_RENDERER_TYPE_TDREND || binaural_renderer == IVAS_BIN_RENDERER_TYPE_DEFAULT ) { #ifdef FIX_2249_MEMORY_LEAK_IN_SBA IVAS_DEC_HRTF_TD_HANDLE *hHrtfTD = NULL; if ( ( error = IVAS_DEC_GetHrtfTDrendHandle( hIvasDec, &hHrtfTD ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetHrtfTDrendHandle( hIvasDec, &hHrtfBinary->hHrtfTD ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nIVAS_DEC_GetHrtfTDrendHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); return error; } #ifdef FIX_2249_MEMORY_LEAK_IN_SBA if ( ( error = load_TDrend_HRTF_binary( *hHrtfTD, output_Fs, hHrtfBinary->hrtfReader ) ) != IVAS_ERR_OK ) #else if ( ( error = load_TDrend_HRTF_binary( *hHrtfBinary->hHrtfTD, output_Fs, hHrtfBinary->hrtfReader ) ) != IVAS_ERR_OK ) #endif { if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA ) { Loading @@ -4188,7 +4210,11 @@ static ivas_error load_hrtf_from_file( } else { #ifdef FIX_2249_MEMORY_LEAK_IN_SBA destroy_td_hrtf( hHrtfTD ); #else destroy_td_hrtf( hHrtfBinary->hHrtfTD ); #endif } } } Loading Loading @@ -4261,17 +4287,32 @@ static ivas_error load_hrtf_from_file( } } } #ifndef FIX_2249_MEMORY_LEAK_IN_SBA } #endif #ifdef FIX_2249_MEMORY_LEAK_IN_SBA if ( ( binaural_renderer == IVAS_BIN_RENDERER_TYPE_FASTCONV || binaural_renderer == IVAS_BIN_RENDERER_TYPE_CREND ) && OutputConfig == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) #else if ( hHrtfBinary->hHrtfStatistics == NULL && ( binaural_renderer == IVAS_BIN_RENDERER_TYPE_FASTCONV || binaural_renderer == IVAS_BIN_RENDERER_TYPE_CREND ) && OutputConfig == IVAS_AUDIO_CONFIG_BINAURAL_ROOM_REVERB ) #endif { #ifdef FIX_2249_MEMORY_LEAK_IN_SBA IVAS_DEC_HRTF_STATISTICS_HANDLE *hHrtfStatistics = NULL; if ( ( error = IVAS_DEC_GetHrtfStatisticsHandle( hIvasDec, &hHrtfStatistics ) ) != IVAS_ERR_OK ) #else if ( ( error = IVAS_DEC_GetHrtfStatisticsHandle( hIvasDec, &hHrtfBinary->hHrtfStatistics ) ) != IVAS_ERR_OK ) #endif { fprintf( stderr, "\nIVAS_DEC_GetHrtfStatisticsHandle failed: %s\n\n", IVAS_DEC_GetErrorMessage( error ) ); return error; } #ifdef FIX_2249_MEMORY_LEAK_IN_SBA if ( ( error = load_HrtfStatistics_from_binary( *hHrtfStatistics, output_Fs, hHrtfBinary->hrtfReader ) ) != IVAS_ERR_OK ) #else if ( ( error = load_reverb_binary( *hHrtfBinary->hHrtfStatistics, output_Fs, hHrtfBinary->hrtfReader ) ) != IVAS_ERR_OK ) #endif { if ( error != IVAS_ERR_BINARY_FILE_WITHOUT_BINAURAL_RENDERER_DATA ) { Loading @@ -4280,10 +4321,17 @@ static ivas_error load_hrtf_from_file( } else { #ifdef FIX_2249_MEMORY_LEAK_IN_SBA destroy_hrtf_statistics( hHrtfStatistics ); #else destroy_hrtf_statistics( hHrtfBinary->hHrtfStatistics ); #endif } } } #ifdef FIX_2249_MEMORY_LEAK_IN_SBA } #endif return IVAS_ERR_OK; } Loading