So I know my setup is really niche, but here goes nothing
- I am using Arch Pi on Pi 4
- Installed
cage
as a lightweight Wayland compositor - Installed
mpv + wireplumber + pipewire
I am not quite sure how to use cage
to launch a simple “Wayland session (if it even makes sense)”, so that I can send MPV to that display.
So I tried cage -s alacritty :1
, and it does launch alacritty
with it detecting that it is on wayland
.
But when I do DISPLAY=:1 mpv ....
, the video runs, but there’s no audio.
Also there’s no errors shown on mpv
either.
The other thing of note is that I tried cage -s Xwayland :1
and the audio+video works perfectly.
So in all:
- How do I launch
cage
to spawn a simple Wayland session? Is this even possible? - How do I solve the audio issue on Wayland?
EDIT: Thanks all for the help.
After some investigation, I found out the pipewire
somehow is not ran on startup of alacritty
, but it did for Xwayland
.
I noticed that the first play of the video would be audio-less on alacritty
, and subsequent ones are fine.
It seems like the first run causes pipewire
to be started and thus I wrongfully assumed that the daemon was running.
Still strange nonetheless…
Seems like a pretty minimal config. I can respect that. Have you tried running with a display manager? E.g. sddm. They will often start with additional options you wouldn’t have starting from tty.
If sddm does work, you can cat /etc/sddm.conf I believe to see the options it uses and use those when you start from tty
For the audio, try installing pipewire-pulse
Finally, arch for arm isn’t officially supported. Your issues could stem from that. You might consider playing around in a VM with both versions to see if you can reproduce your problem.