Open candlelightreveal opened 2 years ago
After a few more hours of experimenting, I was able to get to a working state.
Although I am not a Linux audio or Pipewire expert, it appears that Pipewire requires audio to be played from the same user that is currently logged into the local session. So running the service under the snapclient user doesn't work when logged in as my desktop user. Additionally, if running the binary directly, it has to be executed from a keyboard attached to the computer - over SSH doesn't work, I'm assuming something to do with environment variables but I didn't dig deeper.
My working solution was to set up a user service with the service definition without the User and Group variables under ~/.config/systemd/user/snapclient.service
which can be enabled with systemctl --user daemon-reload && systemctl --user enable snapclient.service && systemctl --user start snapclient.service
.
I'm still hoping to hear from the snapcast team to see if my solution makes sense or if there is a better way. Hopefully my findings can be used to improve Fedora support in future versions.
over SSH doesn't work, I'm assuming something to do with environment variables but I didn't dig deeper.
For pulse based systems, only up on a GUI login, the pulse audio service was started. Otherwise there was no systemctl --user status pulse.service
service running. As a result you had no audio via pulse. I'm assuming pipewire behaves the same.
Hello. Firstly thank you for this project, I have been using it on my Raspberry Pis for some time and it has performed perfectly (better than commercial solutions, imo).
I've recently started migrating my desktop systems to Fedora as it has been recently described as a better desktop OS than Ubuntu. However, Snapcast's Fedora support seems to be confusing/incomplete - though there are build instructions for Fedora in the docs, there are two open issues regarding Post Install Scripts and Pipewire that prevent snapclient from functioning. The post install is easy enough to work around. However, Pipewire has been the default on Fedora for a couple of versions now (I'm on the lastest, Fedora 36) and it doesn't appear snapclient has any way of playing audio on these systems.
I'm trying to see if I can hack snapclient to work on Fedora manually. I've built the binaries and manually placed them. I've tried the below commands but have been unable to get audio playing through this host (the rest of the clients on the network running on Pis are working fine).
Q: Can you please clarify if and how Fedora is supported and if there is a workaround for me to get snapclient to play audio on the latest Fedora versions that use Pipewire?
Build on Fedora 36
List Devices
Run with No Args,
-s 1
or-s 2
Run with
--player pulse
Run with
--player alsa