Audio crackling and static in a few games #367
Labels
No labels
Bug
Extensions
New Feature
Not our bug - SDL2
Not our bug - WMA
Utilities
Wine
X3DAudio Accuracy
XACT Accuracy
XAudio2 Accuracy
No milestone
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
gh-FNA-XNA/FAudio#367
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
OS:
GentooLinux:
6.12-rc7Proton:
experimentalUsing alsa with HDMI audio in a few games such as
Tales of SymphoniaandYs VIII: Lacrimose of DANAthere will be constant crackling or static noise after a few minutes of playing. When starting the game everything will work correctly, but after a consistent amount of time the audio will break, in at Ys VIII muting the BGM in the settings will make it go away, but it will return when increasing the volume again.Other games in the series such as
Tales of Arise,Tales of Vesperia,Ys OriginandYs X: Nordicsare unaffected as are all other games I have played.I tried older kernels going back to
5.15.x, Proton GE and older proton versions available in Steam without finding any good versions. Is this a FAudio issue? Alsa issue? Kernel issue? Game bug? A friend who does audio programming suggested that it sounds like an audio buffer is draining too fast. Is there anything that can be done to narrow this down or resolve this issue?The best way to report these sorts of things is to go down the list in order:
Most bugs unique to Proton applications have to do with WMA support since decoding those is still kind of flaky; we don't decode it in upstream FAudio due to patent concerns. If it's ALSA that'll be something in Wine's ALSA driver since the Wine config uses WASAPI instead of SDL.
I neglected to mention that I did report it to proton without replies (Although did so only recently for Ys VIII).
https://github.com/ValveSoftware/Proton/issues/822#issuecomment-2326999328
https://github.com/ValveSoftware/Proton/issues/3820#issuecomment-2477846139
I will try making a wine issue too, but I'll try testing the GOG version of Ys VIII before I attempt that using vanilla wine and wine-staging if necessary.
I tested the GOG version using wine 9.21 and was unable to reproduce the issue so I am not sure its appropriate to make an issue for the wine tracker.
So if I understand correctly this implies proton or something about the combination of proton and FAudio? Is there a better way to bring attention to the issue on the proton tracker?
That all sounds right - I don't really know any way to bring attention to specific things, if I knew any method I'd probably be using them for native games instead!
Thanks for the replies, hopefully this can be addressed eventually.
As detailed in these two comments.
https://github.com/ValveSoftware/Proton/issues/3820#issuecomment-2487608381
https://github.com/ValveSoftware/Proton/issues/3820#issuecomment-2488881708
Running the Steam version of
Ys VIIIoutside of Steam withwine-9.21andwine-proton-9.0.3built from the Gentoo repos avoids the audio issue while running the game with the same Proton version selected in Steam will reproduce the audio issue. Perhaps the problem is in neither Proton or FAudio, but in another part of the Steam ecosystem? Unless I am getting something wrong perhaps this issue should be closed?That's plausible; system Wine most likely uses ffmpeg via GStreamer while Proton uses protonmediaconverter via GStreamer, again due to annoying patent issues.
Yes, I have ffmpeg enabled in Gentoo's
media-plugins/gst-plugins-metapackage, so that makes sense that the issue could be in protonmediaconverter.Probably related issue https://github.com/TerryCavanagh/VVVVVV/issues/970
Does it still happen if you use the
xacttrick?Whoah, thank you, fellow gentoo user here: finally I can have more optimization by linking ffmpeg to gstreamer.
Will this fix Proton-GE used in a flatpak environment for example?