The new XAudio2 implementation that was just merged into master adds a new dependency, called FAudio.
The source is available here:
https://github.com/FNA-XNA/FAudio https://github.com/FNA-XNA/FAudio
The README goes into detail, but the short version: It's a C99 library that builds with CMake and depends only on SDL2 (ideally 2.0.9). There are special build options available but the default is recommended for general use.
One minor note for distributions with CMake versions older than 3.1.3 _and_ a compiler that defaults to pre-C99: You will need to set CMAKE_C_FLAGS="-std=c99" manually. If you have CMake 3.1.3+ _or_ a compiler that defaults to C99+, no extra flags should be necessary.
XAudio2 is used by a large percentage of games made after the release of the Xbox 360, and Wine's built-in implementation is especially important because of bugs that ship in the official DirectX redistributable version for 64-bit: https://bugs.winehq.org/show_bug.cgi?id=38668#c58 https://bugs.winehq.org/show_bug.cgi?id=38668#c58
Thanks everyone! -Ethan
Nice work on getting faudio accepted.
However, FAudio doesn't appear to be in any standard repository (debian, redhat). So, without any official repositories for the faudio package(s), xaudio is going to be disabled by default for all new wine packages.
Is winehq going to host faudio packages for the various distro?
Alistair.
On Tue, 26 Feb 2019 00:58:01 +0000 Alistair Leslie-Hughes leslie_alistair@hotmail.com wrote:
However, FAudio doesn't appear to be in any standard repository (debian, redhat). So, without any official repositories for the faudio package(s), xaudio is going to be disabled by default for all new wine packages.
Yes. The OBS builds against the standard and update repositories for Fedora, Debian, and Ubuntu, plus universe for Ubuntu. If Faudio is now a build dependency, the WineHQ packages will not have Xaudio support until the distros supply whatever packages are needed.
Is winehq going to host faudio packages for the various distro?
I have no intention of getting into the business of building Wine's dependencies in addition to the WineHQ packages. If someone else wants to take that on, I'm happy to cooperate.
On Tue, Feb 26, 2019 at 09:59:25AM -0600, Rosanne DiMesio wrote:
On Tue, 26 Feb 2019 00:58:01 +0000 Alistair Leslie-Hughes leslie_alistair@hotmail.com wrote:
However, FAudio doesn't appear to be in any standard repository (debian, redhat). So, without any official repositories for the faudio package(s), xaudio is going to be disabled by default for all new wine packages.
Yes. The OBS builds against the standard and update repositories for Fedora, Debian, and Ubuntu, plus universe for Ubuntu. If Faudio is now a build dependency, the WineHQ packages will not have Xaudio support until the distros supply whatever packages are needed.
Is winehq going to host faudio packages for the various distro?
I have no intention of getting into the business of building Wine's dependencies in addition to the WineHQ packages. If someone else wants to take that on, I'm happy to cooperate.
This is going to be a major regression for anyone using the winehq builds for gaming. Do we have a Debian/Ubuntu/Fedora user who is interested in stepping up to build FAudio in winehq's OBS, and working with Rosanne to modify the Wine build process to use it?
Andrew
On Wed, 27 Feb 2019 07:29:28 -0600 Andrew Eikum aeikum@codeweavers.com wrote:
This is going to be a major regression for anyone using the winehq builds for gaming. Do we have a Debian/Ubuntu/Fedora user who is interested in stepping up to build FAudio in winehq's OBS, and working with Rosanne to modify the Wine build process to use it?
Well, it appears that Debian is adding Faudio packages to sid. https://ftp-master.debian.org/new/faudio_19.02-1.html
Note this doesn't really help with our packages, as we don't package for sid and the sid packages can't be used for our jessie, stretch and buster builds.
My guess is that this will follow the same pattern as libvulkan/vkd3d, with distros adding Faudio packages to their new releases and ignoring the old ones.
Hi,
On Fri, Mar 01, 2019 at 02:51:51PM -0600, Rosanne DiMesio wrote:
On Wed, 27 Feb 2019 07:29:28 -0600 Andrew Eikum aeikum@codeweavers.com wrote:
This is going to be a major regression for anyone using the winehq builds for gaming. Do we have a Debian/Ubuntu/Fedora user who is interested in stepping up to build FAudio in winehq's OBS, and working with Rosanne to modify the Wine build process to use it?
Well, it appears that Debian is adding Faudio packages to sid. https://ftp-master.debian.org/new/faudio_19.02-1.html
Note this doesn't really help with our packages, as we don't package for sid and the sid packages can't be used for our jessie, stretch and buster builds.
My guess is that this will follow the same pattern as libvulkan/vkd3d, with distros adding Faudio packages to their new releases and ignoring the old ones.
I for now added FAudio to the Emulators:Wine:Fedora , just some tweaks to make it build.
But SDL2 is so far not in RHEL, ScientifcLinux and Centos < 7.
Ciao, Marcus
On Wed, 27 Feb 2019 07:29:28 -0600 Andrew Eikum aeikum@codeweavers.com wrote:
This is going to be a major regression for anyone using the winehq builds for gaming. Do we have a Debian/Ubuntu/Fedora user who is interested in stepping up to build FAudio in winehq's OBS, and working with Rosanne to modify the Wine build process to use it?
Thanks to Marcus Meissner, we have experimental FAudio packages for Fedora 28 & 29 on the OBS, and the wine-devel 4.3 packages were built with FAudio support.
The caveat is that FAudio had to be built with SDL-2 older than 2.0.9, an issue that affects nearly every distro we currently build for. While Wine's configure script was satisfied with the FAudio packages that were built, I have no idea if or how using an older SDL-2 might affect functionality. We need feedback from testers. If it works out, the .spec file can potentially be adapted for our Debian/Ubuntu builds. If not, that's the end of trying to do anythng from our end: we are not going to chase after dependencies of dependencies.
Note also that even if it works, the FAudio packages will not be distributed from dl.winehq.org, as this is meant only as a temporary workaround until distros add the necessary packages. Users can get the Fedora FAudio packages directly from https://download.opensuse.org/repositories/Emulators:/Wine:/Fedora/Fedora_28... and https://download.opensuse.org/repositories/Emulators:/Wine:/Fedora/Fedora_29....