Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package FAudio for openSUSE:Factory checked in at 2021-10-18 21:59:23 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/FAudio (Old) and /work/SRC/openSUSE:Factory/.FAudio.new.1890 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "FAudio" Mon Oct 18 21:59:23 2021 rev:16 rq:925850 version:21.10 Changes: -------- --- /work/SRC/openSUSE:Factory/FAudio/FAudio.changes 2021-09-17 23:26:22.417258763 +0200 +++ /work/SRC/openSUSE:Factory/.FAudio.new.1890/FAudio.changes 2021-10-18 22:02:14.466095695 +0200 @@ -1,0 +2,7 @@ +Sun Oct 17 09:20:42 UTC 2021 - Aaron Stern <ukbeas...@protonmail.com> + +- update to 21.10: + * Minor WinRT project update for latest SDL Git revision + * Continued work on the experimental Wine/Win32 platform backend + +------------------------------------------------------------------- Old: ---- FAudio-21.09.tar.gz New: ---- FAudio-21.10.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ FAudio.spec ++++++ --- /var/tmp/diff_new_pack.lny6QN/_old 2021-10-18 22:02:14.878095993 +0200 +++ /var/tmp/diff_new_pack.lny6QN/_new 2021-10-18 22:02:14.878095993 +0200 @@ -17,7 +17,7 @@ Name: FAudio -Version: 21.09 +Version: 21.10 Release: 0 Summary: A reimplementation of the XNA Game Studio libraries License: Zlib ++++++ FAudio-21.09.tar.gz -> FAudio-21.10.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/FAudio-21.09/CMakeLists.txt new/FAudio-21.10/CMakeLists.txt --- old/FAudio-21.09/CMakeLists.txt 2021-09-01 17:38:17.000000000 +0200 +++ new/FAudio-21.10/CMakeLists.txt 2021-10-01 17:00:54.000000000 +0200 @@ -31,7 +31,7 @@ # Version SET(LIB_MAJOR_VERSION "0") SET(LIB_MINOR_VERSION "21") -SET(LIB_REVISION "09") +SET(LIB_REVISION "10") SET(LIB_VERSION "${LIB_MAJOR_VERSION}.${LIB_MINOR_VERSION}.${LIB_REVISION}") # Build Type diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/FAudio-21.09/csharp/FAudio.cs new/FAudio-21.10/csharp/FAudio.cs --- old/FAudio-21.09/csharp/FAudio.cs 2021-09-01 17:38:17.000000000 +0200 +++ new/FAudio-21.10/csharp/FAudio.cs 2021-10-01 17:00:54.000000000 +0200 @@ -79,7 +79,7 @@ public const uint FAUDIO_ABI_VERSION = 0; public const uint FAUDIO_MAJOR_VERSION = 21; - public const uint FAUDIO_MINOR_VERSION = 9; + public const uint FAUDIO_MINOR_VERSION = 10; public const uint FAUDIO_PATCH_VERSION = 0; public const uint FAUDIO_COMPILED_VERSION = ( diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/FAudio-21.09/include/FAudio.h new/FAudio-21.10/include/FAudio.h --- old/FAudio-21.09/include/FAudio.h 2021-09-01 17:38:17.000000000 +0200 +++ new/FAudio-21.10/include/FAudio.h 2021-10-01 17:00:54.000000000 +0200 @@ -485,7 +485,7 @@ #define FAUDIO_ABI_VERSION 0 #define FAUDIO_MAJOR_VERSION 21 -#define FAUDIO_MINOR_VERSION 9 +#define FAUDIO_MINOR_VERSION 10 #define FAUDIO_PATCH_VERSION 0 #define FAUDIO_COMPILED_VERSION ( \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/FAudio-21.09/src/FAudio_platform_win32.c new/FAudio-21.10/src/FAudio_platform_win32.c --- old/FAudio-21.09/src/FAudio_platform_win32.c 2021-09-01 17:38:17.000000000 +0200 +++ new/FAudio-21.10/src/FAudio_platform_win32.c 2021-10-01 17:00:54.000000000 +0200 @@ -998,7 +998,7 @@ size_t input_size; }; -static BOOL FAudio_WMAMF_ProcessInput( +static HRESULT FAudio_WMAMF_ProcessInput( FAudioVoice *voice, FAudioBuffer *buffer ) { @@ -1010,7 +1010,7 @@ HRESULT hr; copy_size = min(buffer->AudioBytes - impl->input_pos, impl->input_size); - if (!copy_size) return FALSE; + if (!copy_size) return S_FALSE; LOG_INFO(voice->audio, "pushing %x bytes at %x", copy_size, impl->input_pos); hr = MFCreateSample(&sample); @@ -1036,15 +1036,18 @@ hr = IMFTransform_ProcessInput(impl->decoder, 0, sample, 0); IMFSample_Release(sample); - if (hr == MF_E_NOTACCEPTING) return TRUE; - if (FAILED(hr)) LOG_ERROR(voice->audio, "IMFTransform_ProcessInput returned %#x", hr); - FAudio_assert(!FAILED(hr) || !"Failed to process input sample!"); + if (hr == MF_E_NOTACCEPTING) return S_OK; + if (FAILED(hr)) + { + LOG_ERROR(voice->audio, "IMFTransform_ProcessInput returned %#x", hr); + return hr; + } impl->input_pos += copy_size; - return TRUE; + return S_OK; }; -static BOOL FAudio_WMAMF_ProcessOutput( +static HRESULT FAudio_WMAMF_ProcessOutput( FAudioVoice *voice, FAudioBuffer *buffer ) { @@ -1060,9 +1063,12 @@ FAudio_memset(&output, 0, sizeof(output)); output.pSample = impl->output_sample; hr = IMFTransform_ProcessOutput(impl->decoder, 0, 1, &output, &status); - if (hr == MF_E_TRANSFORM_NEED_MORE_INPUT) return FALSE; - if (FAILED(hr)) LOG_ERROR(voice->audio, "IMFTransform_ProcessInput returned %#x", hr); - FAudio_assert(!FAILED(hr) && "Failed to process output sample!"); + if (hr == MF_E_TRANSFORM_NEED_MORE_INPUT) return S_FALSE; + if (FAILED(hr)) + { + LOG_ERROR(voice->audio, "IMFTransform_ProcessInput returned %#x", hr); + return hr; + } if (output.dwStatus & MFT_OUTPUT_DATA_BUFFER_NO_SAMPLE) continue; @@ -1100,7 +1106,7 @@ if (!impl->output_sample) IMFSample_Release(output.pSample); } - return TRUE; + return S_OK; }; static void FAudio_INTERNAL_DecodeWMAMF( @@ -1163,8 +1169,14 @@ while (impl->output_pos < samples_pos + samples_size) { - if (FAudio_WMAMF_ProcessOutput(voice, buffer)) continue; - if (FAudio_WMAMF_ProcessInput(voice, buffer)) continue; + hr = FAudio_WMAMF_ProcessOutput(voice, buffer); + if (FAILED(hr)) goto error; + if (hr == S_OK) continue; + + hr = FAudio_WMAMF_ProcessInput(voice, buffer); + if (FAILED(hr)) goto error; + if (hr == S_OK) continue; + if (!impl->input_size) break; LOG_INFO(voice->audio, "sending EOS to %p", impl->decoder); @@ -1189,6 +1201,11 @@ ); LOG_FUNC_EXIT(voice->audio) + return; + +error: + FAudio_zero(decodeCache, samples * voice->src.format->nChannels * sizeof(float)); + LOG_FUNC_EXIT(voice->audio) } uint32_t FAudio_WMADEC_init(FAudioSourceVoice *voice, uint32_t type) @@ -1206,7 +1223,7 @@ LOG_FUNC_ENTER(voice->audio) - if (!(impl = voice->audio->pMalloc(sizeof(*impl)))) return 0; + if (!(impl = voice->audio->pMalloc(sizeof(*impl)))) return -1; FAudio_memset(impl, 0, sizeof(*impl)); hr = CoCreateInstance( @@ -1216,7 +1233,11 @@ &IID_IMFTransform, (void **)&decoder ); - FAudio_assert(!FAILED(hr) && "Failed to create decoder!"); + if (FAILED(hr)) + { + voice->audio->pFree(impl->output_buf); + return -2; + } hr = MFCreateMediaType(&media_type); FAudio_assert(!FAILED(hr) && "Failed create media type!"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/FAudio-21.09/visualc-winrt/FAudio.vcxproj new/FAudio-21.10/visualc-winrt/FAudio.vcxproj --- old/FAudio-21.09/visualc-winrt/FAudio.vcxproj 2021-09-01 17:38:17.000000000 +0200 +++ new/FAudio-21.10/visualc-winrt/FAudio.vcxproj 2021-10-01 17:00:54.000000000 +0200 @@ -83,13 +83,13 @@ <GenerateManifest>false</GenerateManifest> <IgnoreImportLibrary>false</IgnoreImportLibrary> <IncludePath>..\..\SDL2\include;..\include;$(IncludePath)</IncludePath> - <LibraryPath>..\..\SDL2\VisualC-WinRT\UWP_VS2015\$(Platform)\$(Configuration)\SDL-UWP;$(LibraryPath)</LibraryPath> + <LibraryPath>..\..\SDL2\VisualC-WinRT\$(Platform)\$(Configuration)\SDL-UWP;$(LibraryPath)</LibraryPath> </PropertyGroup> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> <GenerateManifest>false</GenerateManifest> <IgnoreImportLibrary>false</IgnoreImportLibrary> <IncludePath>..\..\SDL2\include;..\include;$(IncludePath)</IncludePath> - <LibraryPath>..\..\SDL2\VisualC-WinRT\UWP_VS2015\$(Platform)\$(Configuration)\SDL-UWP;$(LibraryPath)</LibraryPath> + <LibraryPath>..\..\SDL2\VisualC-WinRT\$(Platform)\$(Configuration)\SDL-UWP;$(LibraryPath)</LibraryPath> </PropertyGroup> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> <ClCompile>