Revert default maxFPS back from 60 to 30.

This commit is contained in:
F. Duncanh
2023-01-20 17:41:00 -05:00
parent 05c5044205
commit a255c09e3c
6 changed files with 41 additions and 25 deletions

View File

@@ -382,6 +382,10 @@ queries) needed by Avahi. See <a
href="#troubleshooting">Troubleshooting</a> below for help with this or
other problems.</p>
<ul>
<li><p>you may find video is improved by the setting -fps 60 that allows
some video to be played at 60 frames per second. (You can see what
framerate is actually streaming by using -vs fpsdisplaysink, and/or
-FPSdata.)</p></li>
<li><p>By default, UxPlay is locked to its current client until that
client drops the connection; the option <code>-nohold</code> modifies
this behavior so that when a new client requests a connection, it
@@ -818,14 +822,15 @@ data is updated by the client at 1 second intervals.</p>
<p><strong>-fps n</strong> 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 60 fps.) A setting below 60 fps might be
useful to reduce latency if you are running more than one instance of
uxplay at the same time. <em>This setting is only an advisory to the
client device, so setting a high value will not force a high
framerate.</em> (You can test using “-vs fpsdisplaysink” to see what
framerate is being received, or use the option -FPSdata which displays
video-stream performance data continuously sent by the client during
video-streaming.)</p>
lower than this; default is 30 fps.) A setting of 60 fps may give you
improved video but is not recommended on Raspberry Pi. 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. <em>This setting is only an
advisory to the client device, so setting a high value will not force a
high framerate.</em> (You can test using “-vs fpsdisplaysink” to see
what framerate is being received, or use the option -FPSdata which
displays video-stream performance data continuously sent by the client
during video-streaming.)</p>
<p><strong>-f {H|V|I}</strong> implements “videoflip” image transforms:
H = horizontal flip (right-left flip, or mirror image); V = vertical
flip ; I = 180 degree rotation or inversion (which is the combination of
@@ -1098,8 +1103,8 @@ other settings are set in <code>UxPlay/lib/dnssdint.h</code>.</p>
<p>1.62 2023-01-18 Added Audio-only mode time offset -ao x to allow user
synchronization of ALAC audio playing on the server with video, song
lyrics, etc. playing on the client. x = 5.0 appears to be optimal in
many cases. Quality fixes: change default fps to 60, cleanup in volume
changes, timestamps, some bugfixes.</p>
many cases. Quality fixes: cleanup in volume changes, timestamps, some
bugfixes.</p>
<p>1.61 2022-12-30 Removed -t option (workaround for an Avahi issue,
correctly solved by opening network port UDP 5353 in firewall). Remove
-g debug flag from CMAKE_CFLAGS. Postpend (instead of prepend) build

View File

@@ -324,6 +324,9 @@ are opened: if a firewall is active, also open UDP port 5353 (for mDNS queries)
needed by Avahi. See [Troubleshooting](#troubleshooting) below for
help with this or other problems.
* you may find video is improved by the setting -fps 60 that allows some video to be played at 60 frames
per second. (You can see what framerate is actually streaming by using -vs fpsdisplaysink, and/or -FPSdata.)
* By default, UxPlay is locked to
its current client until that client drops the connection; the option `-nohold` modifies this
behavior so that when a new client requests a connection, it removes the current client and takes over.
@@ -692,7 +695,8 @@ which will not work if a firewall is running.
**-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 60 fps.) A setting below 60 fps might be useful to
than this; default is 30 fps.) A setting of 60 fps may give you improved video
but is not recommended on Raspberry Pi. 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._
@@ -922,8 +926,8 @@ The "features" code and other settings are set in `UxPlay/lib/dnssdint.h`.
# Changelog
1.62 2023-01-18 Added Audio-only mode time offset -ao x to allow user synchronization of ALAC
audio playing on the server with video, song lyrics, etc. playing on the client.
x = 5.0 appears to be optimal in many cases. Quality fixes: change default fps to 60,
cleanup in volume changes, timestamps, some bugfixes.
x = 5.0 appears to be optimal in many cases. Quality fixes: cleanup in volume
changes, timestamps, some bugfixes.
1.61 2022-12-30 Removed -t option (workaround for an Avahi issue, correctly solved by opening network
port UDP 5353 in firewall). Remove -g debug flag from CMAKE_CFLAGS. Postpend (instead

View File

@@ -384,6 +384,11 @@ opened: if a firewall is active, also open UDP port 5353 (for mDNS
queries) needed by Avahi. See [Troubleshooting](#troubleshooting) below
for help with this or other problems.
- you may find video is improved by the setting -fps 60 that allows
some video to be played at 60 frames per second. (You can see what
framerate is actually streaming by using -vs fpsdisplaysink, and/or
-FPSdata.)
- By default, UxPlay is locked to its current client until that client
drops the connection; the option `-nohold` modifies this behavior so
that when a new client requests a connection, it removes the current
@@ -842,13 +847,15 @@ updated by the client at 1 second intervals.
**-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 60 fps.) A setting below 60 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, or use the
option -FPSdata which displays video-stream performance data
continuously sent by the client during video-streaming.)
default is 30 fps.) A setting of 60 fps may give you improved video but
is not recommended on Raspberry Pi. 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, or use the option -FPSdata which displays video-stream
performance data continuously sent by the client during
video-streaming.)
**-f {H\|V\|I}** implements "videoflip" image transforms: H = horizontal
flip (right-left flip, or mirror image); V = vertical flip ; I = 180
@@ -1140,8 +1147,8 @@ other settings are set in `UxPlay/lib/dnssdint.h`.
1.62 2023-01-18 Added Audio-only mode time offset -ao x to allow user
synchronization of ALAC audio playing on the server with video, song
lyrics, etc. playing on the client. x = 5.0 appears to be optimal in
many cases. Quality fixes: change default fps to 60, cleanup in volume
changes, timestamps, some bugfixes.
many cases. Quality fixes: cleanup in volume changes, timestamps, some
bugfixes.
1.61 2022-12-30 Removed -t option (workaround for an Avahi issue,
correctly solved by opening network port UDP 5353 in firewall). Remove

View File

@@ -454,7 +454,7 @@ raop_init(int max_clients, raop_callbacks_t *callbacks) {
raop->width = 1920;
raop->height = 1080;
raop->refreshRate = 60;
raop->maxFPS = 60;
raop->maxFPS = 30;
raop->overscanned = 0;
/* initialize switch for display of client's streaming data records */

View File

@@ -85,7 +85,7 @@ UxPlay 1.62: An open\-source AirPlay mirroring (+ audio streaming) server.
.TP
\fB\-FPSdata\fR Show video-streaming performance reports sent by client.
.TP
\fB\-fps\fR n Set maximum allowed streaming framerate, default 60
\fB\-fps\fR n Set maximum allowed streaming framerate, default 30
.TP
\fB\-f\fR {H|V|I}Horizontal|Vertical flip, or both=Inversion=rotate 180 deg
.TP

View File

@@ -394,7 +394,7 @@ static void print_info (char *name) {
printf("-nc do Not Close video window when client stops mirroring\n");
printf("-nohold Drop current connection when new client connects.\n");
printf("-FPSdata Show video-streaming performance reports sent by client.\n");
printf("-fps n Set maximum allowed streaming framerate, default 60\n");
printf("-fps n Set maximum allowed streaming framerate, default 30\n");
printf("-f {H|V|I}Horizontal|Vertical flip, or both=Inversion=rotate 180 deg\n");
printf("-r {R|L} Rotate 90 degrees Right (cw) or Left (ccw)\n");
printf("-m Use random MAC address (use for concurrent UxPlay's)\n");