-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement FAudio backend #6374
Implement FAudio backend #6374
Conversation
Why Faudio instead of Cubeb? Which is cross-platform and provides better latency than Xaudio. |
6f1fe3c
to
10fbaf4
Compare
@Illynir the main rationale was, that I could reuse the code of the existing XAudio2 backends and get identical behaviour. FAudio is also fully crossplatform and should work just as well on Windows. |
FAudio depends on SDL2, and you need to find a way to include those. Probably just need to install the dev packages in the travis env and others. Don't forget to update the requirements on BUILDING.md once you do that. |
13f9cec
to
23df1ec
Compare
23df1ec
to
abfdcd3
Compare
I've made the necessary changes to CMake and the travis build, but sadly I have no real way to make it build with Visual Studio and appveyor, so the backend is Linux/CMake only for now. |
sure |
nevermind. I thought you needed a compile fix but I didn't notice it was building already |
The build succeds on appveyor/MSVC currently only because it doesn't build the backend, but it would need changes to the Visual Studio Solution file, etc. to get it to build there. |
This would benefit libtas as it supports FNA. Maybe ps3 tasing isnt so far away as we think. |
A bit of testing on Archlinux: sounds good. Most of the time after a while (say 30min) I get stuttering sound with pulseaudio. Pausing and restarting rpcs3 fixes the issue. I didn't get any desync here with Faudio (but maybe I was just lucky). |
I got alot of stuttering in p5 even after all shaders compiled and am standing in the protag's room. Compiled on Arch Linux with the faudio driver. |
This implements a new audio backend based on FAudio: https://github.com/FNA-XNA/FAudio
FAudio is a crossplatform reimplementation of XAudio2 used by Proton, Wine and the FNA project.
I did this with the motivation to bring rpcs3's audio support on Linux up to par with Windows, since the FAudio backend is basically a copy-paste of the current XAudio2 backend and should produce identical results.
I would appreciate some testing, especially on Windows. The Windows build and functionally is completely untested so far, but it should be possible to make it work there, if it doesn't already.
Thanks.