diff --git a/README.html b/README.html
index 63f0d85..48a88d4 100644
--- a/README.html
+++ b/README.html
@@ -88,12 +88,14 @@ you may wish to add “as pipewiresink” or “vs waylandsink” as defaults to
the file. (Output from terminal commands “ps waux | grep pulse” or
“pactl info” will contain “pipewire” if your Linux/BSD system uses
it).
-On Raspberry Pi: If you use Ubuntu 22.10 or earlier, GStreamer
-must be On Raspberry Pi: models using hardware h264 video decoding by the
+Broadcom GPU (models 4B and earlier) may require the uxplay option
+-bt709. If you use Ubuntu 22.10 or earlier, GStreamer must be patched
to use hardware video decoding by the Broadcom GPU (also recommended but
-optional for Raspberry Pi OS (Bullseye): use option
-“uxplay -bt709” if you do not use the patch).
+optional for Raspberry Pi OS (Bullseye): the patched GStreamer does not
+need option ” -bt709`“. The need for -bt709 when hardware video decoding
+is used seems to have reappeared starting with GStreamer-1.22.
To (easily) compile the latest UxPlay from source, see the section Getting UxPlay.
@@ -583,6 +585,12 @@ GStreamer-1.24).
If the server is “headless” (no attached monitor, renders audio
only) use -vs 0.
+Note that videosink options can set using quoted arguments to -vs:
+e.g., -vs "xvimagesink display=:0": ximagesink and
+xvimagesink allow an X11 display name to be specified, and waylandsink
+has a similar option. Videosink options (“properties”) can be found in
+their GStreamer description pages,such as
+https://gstreamer.freedesktop.org/documentation/xvimagesink .
GStreamer also searches for the best “audiosink”; override its choice
with -as <audiosink>. Choices on Linux include
pulsesink, alsasink, pipewiresink, oss4sink; see what is available with
@@ -626,6 +634,9 @@ Wiki. Legacy Raspberry Pi OS (Bullseye) has a partially-patched
GStreamer-1.18.4 which needs the uxplay option -bt709 (and don’t use
-v4l2); it is still better to apply the full patch from the UxPlay Wiki
in this case.
+It appears that when hardware h264 video decoding is
+used, the option -bt709 became needed again in GStreamer-1.22 and
+later.
For “double-legacy” Raspberry Pi OS (Buster), there is no patch
for GStreamer-1.14. Instead, first build a complete newer
GStreamer-1.18.6 from source using `. Choices on Linux include pulsesink, alsasink,
pipewiresink, oss4sink; see what is available with
@@ -622,6 +631,9 @@ See [Usage](#usage) for more run-time options.
-v4l2); it is still better to apply the full patch from the UxPlay
Wiki in this case.
+- **It appears that when hardware h264 video decoding is used, the option
+ -bt709 became needed again in GStreamer-1.22 and later.**
+
- For "double-legacy" Raspberry Pi OS (Buster), there is no patch for
GStreamer-1.14. Instead, first build a complete newer
GStreamer-1.18.6 from source using [these
diff --git a/README.txt b/README.txt
index b794508..0ee38e9 100644
--- a/README.txt
+++ b/README.txt
@@ -81,12 +81,15 @@ After installation:
from terminal commands "ps waux \| grep pulse" or "pactl info" will
contain "pipewire" if your Linux/BSD system uses it).*
-- On Raspberry Pi: If you use Ubuntu 22.10 or earlier, GStreamer must
- be
+- On Raspberry Pi: models using hardware h264 video decoding by the
+ Broadcom GPU (models 4B and earlier) may require the uxplay option
+ -bt709. If you use Ubuntu 22.10 or earlier, GStreamer must be
[patched](https://github.com/FDH2/UxPlay/wiki/Gstreamer-Video4Linux2-plugin-patches)
to use hardware video decoding by the Broadcom GPU (also recommended
- but optional for Raspberry Pi OS (Bullseye): use option
- "`uxplay -bt709`" if you do not use the patch).
+ but optional for Raspberry Pi OS (Bullseye): the patched GStreamer
+ does not need option " -bt709\`". The need for -bt709 when hardware
+ video decoding is used seems to have reappeared starting with
+ GStreamer-1.22.
To (easily) compile the latest UxPlay from source, see the section
[Getting UxPlay](#getting-uxplay).
@@ -574,6 +577,13 @@ what is available. Some possibilites on Linux/\*BSD are:
- If the server is "headless" (no attached monitor, renders audio
only) use `-vs 0`.
+Note that videosink options can set using quoted arguments to -vs:
+*e.g.*, `-vs "xvimagesink display=:0"`: ximagesink and xvimagesink allow
+an X11 display name to be specified, and waylandsink has a similar
+option. Videosink options ("properties") can be found in their GStreamer
+description pages,such as
+https://gstreamer.freedesktop.org/documentation/xvimagesink .
+
GStreamer also searches for the best "audiosink"; override its choice
with `-as `. Choices on Linux include pulsesink, alsasink,
pipewiresink, oss4sink; see what is available with
@@ -622,6 +632,9 @@ See [Usage](#usage) for more run-time options.
-v4l2); it is still better to apply the full patch from the UxPlay
Wiki in this case.
+- **It appears that when hardware h264 video decoding is used, the
+ option -bt709 became needed again in GStreamer-1.22 and later.**
+
- For "double-legacy" Raspberry Pi OS (Buster), there is no patch for
GStreamer-1.14. Instead, first build a complete newer
GStreamer-1.18.6 from source using [these
diff --git a/renderers/video_renderer.c b/renderers/video_renderer.c
index 889535f..15c9c95 100644
--- a/renderers/video_renderer.c
+++ b/renderers/video_renderer.c
@@ -571,7 +571,7 @@ gboolean gstreamer_pipeline_bus_callback(GstBus *bus, GstMessage *message, void
"*** GStreamer may be trying to use non-functional hardware h264 video decoding.\n"
"*** Try using option -avdec to force software decoding or use -vs \n"
"*** to select a videosink of your choice (see \"man uxplay\").\n\n"
- "*** Raspberry Pi OS with (unpatched) GStreamer-1.18.4 needs \"-bt709\" uxplay option");
+ "*** Raspberry Pi models 4B and earlier using Video4Linux2 may need \"-bt709\" uxplay option");
}
g_error_free (err);
g_free (debug);
diff --git a/uxplay.1 b/uxplay.1
index 4c39178..8b79965 100644
--- a/uxplay.1
+++ b/uxplay.1
@@ -85,7 +85,7 @@ UxPlay 1.71: An open\-source AirPlay mirroring (+ audio streaming) server:
.TP
\fB\-v4l2\fR Use Video4Linux2 for GPU hardware h264 video decoding.
.TP
-\fB\-bt709\fR Sometimes needed for Raspberry Pi with GStreamer < 1.22
+\fB\-bt709\fR Sometimes needed for Raspberry Pi models using Video4Linux2.
.TP
\fB\-as\fI sink\fR Choose the GStreamer audiosink; default "autoaudiosink"
.IP
diff --git a/uxplay.cpp b/uxplay.cpp
index 3246ffd..f7a6074 100644
--- a/uxplay.cpp
+++ b/uxplay.cpp
@@ -640,7 +640,7 @@ static void print_info (char *name) {
printf(" gtksink,waylandsink,osxvideosink,kmssink,d3d11videosink etc.\n");
printf("-vs 0 Streamed audio only, with no video display window\n");
printf("-v4l2 Use Video4Linux2 for GPU hardware h264 decoding\n");
- printf("-bt709 Sometimes needed for Raspberry Pi with GStreamer < 1.22 \n");
+ printf("-bt709 Sometimes needed for Raspberry Pi models using Video4Linux2 \n");
printf("-as ... Choose the GStreamer audiosink; default \"autoaudiosink\"\n");
printf(" some choices:pulsesink,alsasink,pipewiresink,jackaudiosink,\n");
printf(" osssink,oss4sink,osxaudiosink,wasapisink,directsoundsink.\n");