From 1c61f78c4ad6a8fdf0ae0a653155691575153978 Mon Sep 17 00:00:00 2001 From: fduncanh Date: Fri, 22 Apr 2022 16:38:53 -0400 Subject: [PATCH] edited README --- README.html | 4 ++-- README.md | 11 +++++++---- README.txt | 18 +++++++++++------- 3 files changed, 20 insertions(+), 13 deletions(-) diff --git a/README.html b/README.html index 34063a5..0e0894d 100644 --- a/README.html +++ b/README.html @@ -17,11 +17,11 @@

Connections to the UxPlay server by iOS/MacOS clients can be initiated both in AirPlay Mirror mode (which streams lossily-compressed AAC audio while mirroring the client screen, or in the alternative AirPlay Audio mode which streams Apple Lossless (ALAC) audio without screen mirroring (the accompanying metadata and cover art in this mode is not displayed). Switching between these two modes during an active connection is possible: in Mirror mode, close the mirror window and start an Audio mode connection, switch back by initiating a Mirror mode connection. Note that Apple DRM (as in Apple TV app content on the client) cannot be decrypted by UxPlay, and (unlike with a true AppleTV), the client cannot run a http connection on the server instead of streaming content from one on the client.

Possibility for using hardware-accelerated h264 video-decoding, if available.

UxPlay uses GStreamer Plugins for rendering audio and video, This means that video and audio are supported “out of the box”, using a choice of plugins. AirPlay streams video in h264 format: gstreamer decoding is plugin agnostic, and uses accelerated GPU hardware h264 decoders if available; if not, software decoding is used.

-

For systems with Intel integrated graphics, hardware GPU decoding with the gstreamer VAAPI plugin is preferable. VAAPI is open-source, and in addition to Intel, can support some AMD GPU’s (the open-source “Nouveau” drivers for NVIDIA graphics are also in principle supported when VAAPI is supplemented with firmware extracted from the proprietary NVIDIA drivers).

+

For systems with Intel or AMD integrated graphics, hardware GPU decoding with the gstreamer VAAPI plugin is preferable. VAAPI is open-source, and in addition to Intel and AMD graphics, the open-source “Nouveau” drivers for NVIDIA graphics are also in principle supported: see here, which requires VAAPI to be supplemented with firmware extracted from the proprietary NVIDIA drivers.

For NVIDIA graphics with the proprietary drivers, the nvh264dec plugin (included in gstreamer1.0-plugins-bad since GStreamer-1.18.0) can be used for accelerated video decoding on the NVIDIA GPU after NVIDIA’s CUDA driver libcuda.so is installed. This plugin should be used with options uxplay -vd nvh264dec -vs glimagesink. For GStreamer-1.16.3 or earlier, the plugin is called nvdec, and must be built by the user: see these instructions. This older form of the plugin should be used with the -vd nvdec -vs glimagesink uxplay options.

Note to packagers: OpenSSL-3.0.0 solves GPL v3 license issues.

Some Linux distributions such as Debian do not allow distribution of compiled GPL code linked to OpenSSL-1.1.1 because its “dual OpenSSL/SSLeay” license has some incompatibilities with GPL, unless all code authors have explicitly given an “exception” to allow such linking (the historical origins of UxPlay make this impossible to obtain). Other distributions treat OpenSSL as a “System Library” which the GPL allows linking to.

diff --git a/README.md b/README.md index 6c501f3..19df39f 100644 --- a/README.md +++ b/README.md @@ -68,9 +68,10 @@ This means that video and audio are supported "out of the box", using a choice o AirPlay streams video in h264 format: gstreamer decoding is plugin agnostic, and uses accelerated GPU hardware h264 decoders if available; if not, software decoding is used. -For systems with Intel integrated graphics, hardware GPU decoding with the gstreamer VAAPI plugin is preferable. VAAPI is -open-source, and in addition to Intel, can support some AMD GPU's (the open-source "Nouveau" drivers for NVIDIA -graphics are also in principle supported when VAAPI is supplemented with firmware extracted from the proprietary NVIDIA drivers). +For systems with Intel or AMD integrated graphics, hardware GPU decoding with the gstreamer VAAPI plugin is preferable. VAAPI is +open-source, and in addition to Intel and AMD graphics, the open-source "Nouveau" drivers for NVIDIA +graphics are also in principle supported: see [here](https://nouveau.freedesktop.org/VideoAcceleration.html), +which requires VAAPI to be supplemented with firmware extracted from the proprietary NVIDIA drivers. For NVIDIA graphics with the proprietary drivers, the `nvh264dec` plugin (included in gstreamer1.0-plugins-bad since GStreamer-1.18.0) @@ -96,7 +97,9 @@ This older form of the plugin should be used with the `-vd nvdec -vs glimagesi On a non-"Desktop" system without X11 that uses framebuffer video (such as RPi OS Bullseye "Lite") use option `uxplay -rpi` with the patched GStreamer. On "Desktop" operating systems, use the options `uxplay -rpigl` - (for openGL video), or ``uxplay -rpiwl`` (for Wayland video). + (for openGL video), or ``uxplay -rpiwl`` (for Wayland video); note that option `-rpigl` was working very well on + systems with the 5.10.x Linux kernel, + but the recent upgrade of RPi OS to 5.15.x kernels seems to have a regression that causes unacceptable latency. ### Note to packagers: OpenSSL-3.0.0 solves GPL v3 license issues. diff --git a/README.txt b/README.txt index b2c8c7e..10283dc 100644 --- a/README.txt +++ b/README.txt @@ -85,12 +85,13 @@ h264 format: gstreamer decoding is plugin agnostic, and uses accelerated GPU hardware h264 decoders if available; if not, software decoding is used. -For systems with Intel integrated graphics, hardware GPU decoding with -the gstreamer VAAPI plugin is preferable. VAAPI is open-source, and in -addition to Intel, can support some AMD GPU's (the open-source "Nouveau" -drivers for NVIDIA graphics are also in principle supported when VAAPI -is supplemented with firmware extracted from the proprietary NVIDIA -drivers). +For systems with Intel or AMD integrated graphics, hardware GPU decoding +with the gstreamer VAAPI plugin is preferable. VAAPI is open-source, and +in addition to Intel and AMD graphics, the open-source "Nouveau" drivers +for NVIDIA graphics are also in principle supported: see +[here](https://nouveau.freedesktop.org/VideoAcceleration.html), which +requires VAAPI to be supplemented with firmware extracted from the +proprietary NVIDIA drivers. For NVIDIA graphics with the proprietary drivers, the `nvh264dec` plugin (included in gstreamer1.0-plugins-bad since GStreamer-1.18.0) can be @@ -125,7 +126,10 @@ This older form of the plugin should be used with the as RPi OS Bullseye "Lite") use option `uxplay -rpi` with the patched GStreamer. On "Desktop" operating systems, use the options `uxplay -rpigl` (for openGL video), or `uxplay -rpiwl` (for Wayland - video). + video); note that option `-rpigl` was working very well on systems + with the 5.10.x Linux kernel, but the recent upgrade of RPi OS to + 5.15.x kernels seems to have a regression that causes unacceptable + latency. ### Note to packagers: OpenSSL-3.0.0 solves GPL v3 license issues.