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:

  1. How do I launch cage to spawn a simple Wayland session? Is this even possible?
  2. 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…

  • meow@lemmy.blahaj.zone
    link
    fedilink
    arrow-up
    4
    ·
    edit-2
    1 year ago

    It’s possible you didn’t install pipewire-pulse, or didn’t start/enable a service.

    Btw fun fact: you can use mpv --gpu-context=drm in a tty to watch a video directly from the framebuffer.

    • 0WN3D@lemmy.cafeOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      That shouldn’t be the problem since I’m using pipewire and it is working in the Xwayland session. When I launch into alacritty, I also checked that pipewire + wireplumber were both active