FDH2 / UxPlay

AirPlay Unix mirroring server
GNU General Public License v3.0
1.53k stars 78 forks source link

Use X11 forwarding (ssh -X) to view UxPlay video on a headless system, needs X11 to be running (was "Kmssink not working") #302

Closed Koefte closed 4 months ago

Koefte commented 4 months ago

On a headless pi the kmssink option goes through fine yet no video is displayed

fduncanh commented 4 months ago

On a headless pi

without a "head", (video monitor) of course no video will show using kmssink framebuffer video on the Pi. You can only render audio. ????? what is your issue exactly?

use option -vs 0 for audio-only rendering on a headless system.

If kmssink is rendering video, with no attached monitor, it is probably going to /dev/null !

fduncanh commented 4 months ago

If by "headless" you mean you want to use X11 forwarding to display video on a remote terminal, you need to be running X11 on the pi, so kmssink will not do this.

https://linuxconfig.org/how-to-enable-x11-forwarding-on-raspberry-pi

I suppose you could set up X11 forwarding and experiment with -vs xvimagesink or -vs ximagesink

use -vs xvimagesink

*(unfortunately ximagesink is broken on Pi for Gstreamer 1.22.0 - 1.22.9, if you need it, it needs a tiny patch to fix a missing initialization that crept in when it was upgraded to touchscreen support. Without the patch it segfaults on starting. See https://github.com/FDH2/UxPlay/wiki/patches-for-(1)-broken--videoflip-method-and-(2)-broken-ximagesink---in-GStreamer-1.22.0

fduncanh commented 4 months ago

I tested X11 forwarding. Yes uxplay works: video on the ssh client (but the sound is not forwarded, and still comes from the Pi)

I also tested uxplay -vs xvimagesink so it doesnt need the ximagesink (which is patched on my system)

use just ssh <user@raspberrypi> -X uxplay

you need a Pi running X11 (not "lite") (perhaps it will work on lite if you install X11)