I have a box, where I can login through SSH, start ncmpcpp to play something with mpd, and then logout, leaving the box playing music, but with no user logged in. At times, I also want to start Xorg (eventually Wayland), and use pipewire for sound and even using bluetooth audio devices (easy with pipewire/pulse).
While logged in, I can use pipewire even in console. But once logged out, sound is gone. So pipewire doesn't really work headless by default, is there a way to make it work headless (no one logged in, and still having audio enabled and playing music for example), how so?
With alsa, no pipewire, no pulse, all this is pretty simple, since it executes as root, headless audio (no one logged in), audio on console (no Xorg, no Wayland), audio on graphical environmet (Xorg or Wayland). Complex thing with alsa, like using bluetooth devices, or selecting devices is complex.
An alternative would be having an easy way to use bluetooth devices with plain alsa (no need for command line for example, since not all users will be able to do that). I think bluez-alsa-git on AUR can help using bluetooth audio devices with plain alsa, but it's somehow complex for non CLI users.
Perhaps it's easier to get a box, which when headless, somehow allows alsa to work, and when logged in, pipewire/pulse takes over. But things don't work that way when pipewire/pulse is present, audio is gone when not logged in.