
[1.12.2 Forge v6.2] Songs do not play on the PipeWire Audio Server
Vetpetmon opened this issue ยท 3 comments
Describe the bug
Songs do not play when the Linux OS is set to use PipeWire. Similar to this issue, but instead of locking up input, it safely doesn't play the music: viniciusgf2/Ambience#103
To Reproduce
Steps to reproduce the behavior:
- Switch the audio server from PulseAudio to Pipewire
- Enter a world and trigger a configured music event
- Song is stuck at
0:00:000
- Confirm it is caused by PIpeWire by switching back to PulseAudio and repeating steps 2 & 3; if songs now play on PulseAudio, but no PipeWire, it has been reproduced.
Additional context
OS: Ubuntu 22.04
Minecraft version: v1.12.2
Forge version: v14.23.5.2855
Mod version: v6.2
From what I'm observing, neither mod uses OpenAL to find the audio device; here's an issue I found involved using javax.sound.sampled.AudioSystem
(in use by this software) on PipeWire/Linux: flathub/com.jetbrains.IntelliJ-IDEA-Community#83
Two solutions: More extensive audio device searching, or switch to Vanilla's OpenAL (or use it as a fallback)
Former is if PipeWire has an ALSA device but can't access it, latter is if it doesn't and compatibility must be ensured.
I've been wanting to hook up the lavaplayer output of the 6.0 system into OpenAL (mainly for access to pitch and other audio effects) but so far it has not been successful. I will see if I can implicitly allow more audio devices or maybe add a debug option for it, but otherwise it can't work until I figure out OpenAL