From 577d20ea014297b04351916d22f2a798473f79d4 Mon Sep 17 00:00:00 2001 From: fduncanh Date: Sun, 26 Dec 2021 12:42:19 -0500 Subject: [PATCH] README edits --- README.html | 7 +++---- README.md | 19 +++++++++---------- README.txt | 28 +++++++++++++--------------- 3 files changed, 25 insertions(+), 29 deletions(-) diff --git a/README.html b/README.html index d1b322e..d9d9aab 100644 --- a/README.html +++ b/README.html @@ -62,8 +62,8 @@

-n server_name (Default: UxPlay); server_name@_hostname_ will be the name that appears offering AirPlay services to your iPad, iPhone etc, where hostname is the name of the server running uxplay. This will also now be the name shown above the mirror display (X11) window.

-nh Do not append “@_hostname_” at the end of the AirPlay server name.

-s wxh (e.g. -s 1920x1080 , which is the default ) sets the display resolution (width and height, in pixels). (This may be a request made to the AirPlay client, and perhaps will not be the final resolution you get.) w and h are whole numbers with four digits or less. Note that the height pixel size is the controlling one used by the client for determining the streaming format; the width is dynamically adjusted to the shape of the image (portrait or landscape format, depending on how an iPad is held, for example).

-

-s wxh@r As above, but also informs the AirPlay client about the screen refresh rate of the display. Default is r=60 (60 Hz); r is a whole number with three digits or less. Values greater than 255 are invalid.

-

-fps n sets a maximum frame rate (in frames per second) for the AirPlay client to stream video; n must be a whole number with 3 digits or less. (The client may choose to serve video at any frame rate lower than this; default is 30 fps.) A setting below 30 fps might be useful to reduce latency if you are running more than one instance of uxplay at the same time. Values greater than 255 are ignored. This setting is only an advisory to the client device, so setting a high value will not force a high framerate. (You can test using “-vs fpsdisplaysink” to see what framerate is being received.)

+

-s wxh@r As above, but also informs the AirPlay client about the screen refresh rate of the display. Default is r=60 (60 Hz); r must be a whole number less than 256.

+

-fps n sets a maximum frame rate (in frames per second) for the AirPlay client to stream video; n must be a whole number less than 256. (The client may choose to serve video at any frame rate lower than this; default is 30 fps.) A setting below 30 fps might be useful to reduce latency if you are running more than one instance of uxplay at the same time. This setting is only an advisory to the client device, so setting a high value will not force a high framerate. (You can test using “-vs fpsdisplaysink” to see what framerate is being received.)

-o turns on an “overscanned” option for the display window. This reduces the image resolution by using some of the pixels requested by option -s wxh (or their default values 1920x1080) by adding an empty boundary frame of unused pixels (which would be lost in a full-screen display that overscans, and is not displayed by gstreamer). Recommendation: don’t use this option unless there is some special reason to use it.

-p allows you to select the network ports used by UxPlay (these need to be opened if the server is behind a firewall). By itself, -p sets “legacy” ports TCP 7100, 7000, 7001, UDP 6000, 6001, 7011. -p n (e.g. -p 35000) sets TCP and UDP ports n, n+1, n+2. -p n1,n2,n3 (comma-separated values) sets each port separately; -p n1,n2 sets ports n1,n2,n2+1. -p tcp n or -p udp n sets just the TCP or UDP ports. Ports must be in the range [1024-65535].

If the -p option is not used, the ports are chosen dynamically (randomly), which will not work if a firewall is running.

@@ -75,8 +75,7 @@

-vs 0 suppresses display of streamed video, but plays streamed audio. (The client’s screen is still mirrored at a reduced rate of 1 frame per second, but is not rendered or displayed.) This feature (which streams audio in AAC audio format) is now probably unneeded, as UxPlay can now stream superior-quality Apple Lossless audio without video in Airplay non-mirror mode.

-as audiosink chooses the GStreamer audiosink, instead of letting autoaudiosink pick it for you. Some audiosink choices are: pulsesink, alsasink, osssink, oss4sink, and osxaudiosink (for macOS). Using quotes “…” might allow some parameters to be included with the audiosink name. (Some choices of audiosink might not work on your system.)

-as 0 (or just -a) suppresses playing of streamed audio, but displays streamed video.

-

-t timeout will cause the server to relaunch (without stopping uxplay) if no connections have been present during the previous timeout seconds. You may wish to use this if the Server is not visible to new Clients that were inactive when the Server was launched, and an idle Bonjour registration eventually becomes unavailable for new connections (this is a workaround for what may be due to a problem with your DNS-SD or Avahi setup).
-This option should not be used on macOS, as a window created by GStreamer does not terminate correctly (it causes a segfault) if it is still open when the GStreamer pipeline is closed.

+

-t timeout will cause the server to relaunch (without stopping uxplay) if no connections have been present during the previous timeout seconds. You may wish to use this if the Server is not visible to new Clients that were inactive when the Server was launched, and an idle Bonjour registration eventually becomes unavailable for new connections (this is a workaround for what may be due to a problem with your DNS-SD or Avahi setup). This option should not be used on macOS, as a window created by GStreamer does not terminate correctly (it causes a segfault) if it is still open when the GStreamer pipeline is closed.

Troubleshooting:

Note: uxplay is run from a terminal command line, and informational messages are written to the terminal.

1. uxplay starts, but stalls after “Initialized server socket(s)” appears, without any server name showing on the client.

diff --git a/README.md b/README.md index c2ac619..a8c6bbb 100644 --- a/README.md +++ b/README.md @@ -260,17 +260,16 @@ Options: format, depending on how an iPad is held, for example). **-s wxh@r** As above, but also informs the AirPlay client about the screen - refresh rate of the display. Default is r=60 (60 Hz); r is a whole number - with three digits or less. Values greater than 255 are invalid. + refresh rate of the display. Default is r=60 (60 Hz); r must be a whole number + less than 256. **-fps n** sets a maximum frame rate (in frames per second) for the AirPlay - client to stream video; n must be a whole number with 3 digits or less. + client to stream video; n must be a whole number less than 256. (The client may choose to serve video at any frame rate lower - than this; default is 30 fps.) A setting - below 30 fps might be useful to reduce latency if you are running more than - one instance of uxplay at the same time. Values greater than 255 are - ignored. This setting is only an advisory to the client device, so setting - a high value will not force a high framerate. + than this; default is 30 fps.) A setting below 30 fps might be useful to + reduce latency if you are running more than one instance of uxplay at the same time. + _This setting is only an advisory to + the client device, so setting a high value will not force a high framerate._ (You can test using "-vs fpsdisplaysink" to see what framerate is being received.) @@ -336,8 +335,8 @@ Also: image transforms that had been added to RPiPlay have been ported to UxPlay have been present during the previous _timeout_ seconds. You may wish to use this if the Server is not visible to new Clients that were inactive when the Server was launched, and an idle Bonjour registration eventually becomes unavailable for new connections (this is a workaround for what - may be due to a problem with your DNS-SD or Avahi setup). - _This option should **not** be used on macOS, as a window created + may be due to a problem with your DNS-SD or Avahi setup). _This option should **not** be used on + macOS, as a window created by GStreamer does not terminate correctly (it causes a segfault) if it is still open when the GStreamer pipeline is closed._ diff --git a/README.txt b/README.txt index 1591340..30646b1 100644 --- a/README.txt +++ b/README.txt @@ -328,19 +328,17 @@ the shape of the image (portrait or landscape format, depending on how an iPad is held, for example). **-s wxh\@r** As above, but also informs the AirPlay client about the -screen refresh rate of the display. Default is r=60 (60 Hz); r is a -whole number with three digits or less. Values greater than 255 are -invalid. +screen refresh rate of the display. Default is r=60 (60 Hz); r must be a +whole number less than 256. **-fps n** sets a maximum frame rate (in frames per second) for the -AirPlay client to stream video; n must be a whole number with 3 digits -or less. (The client may choose to serve video at any frame rate lower -than this; default is 30 fps.) A setting below 30 fps might be useful to -reduce latency if you are running more than one instance of uxplay at -the same time. Values greater than 255 are ignored. This setting is only -an advisory to the client device, so setting a high value will not force -a high framerate. (You can test using "-vs fpsdisplaysink" to see what -framerate is being received.) +AirPlay client to stream video; n must be a whole number less than 256. +(The client may choose to serve video at any frame rate lower than this; +default is 30 fps.) A setting below 30 fps might be useful to reduce +latency if you are running more than one instance of uxplay at the same +time. *This setting is only an advisory to the client device, so setting +a high value will not force a high framerate.* (You can test using "-vs +fpsdisplaysink" to see what framerate is being received.) **-o** turns on an "overscanned" option for the display window. This reduces the image resolution by using some of the pixels requested by @@ -411,10 +409,10 @@ uxplay) if no connections have been present during the previous to new Clients that were inactive when the Server was launched, and an idle Bonjour registration eventually becomes unavailable for new connections (this is a workaround for what may be due to a problem with -your DNS-SD or Avahi setup).\ -*This option should **not** be used on macOS, as a window created by -GStreamer does not terminate correctly (it causes a segfault) if it is -still open when the GStreamer pipeline is closed.* +your DNS-SD or Avahi setup). *This option should **not** be used on +macOS, as a window created by GStreamer does not terminate correctly (it +causes a segfault) if it is still open when the GStreamer pipeline is +closed.* **Troubleshooting:** ====================