add fullscreen-toggle-mode=alt-enter to -vs d3d11videosink

This commit is contained in:
fduncanh
2022-10-02 19:32:59 -04:00
parent a6bebb30d8
commit aacd8897f8
5 changed files with 35 additions and 21 deletions

View File

@@ -557,16 +557,20 @@ by its GUID, which can be found using
has a form like
<code>\{0.0.0.00000000\}.\{98e35b2b-8eba-412e-b840-fd2c2492cf44\}</code>.
If “<code>device</code>” is not specified, the default audio device is
used. The executable uxplay.exe can also be run without the MSYS2
environment (using the Windows Terminal, with
<code>C:\msys64\mingw64\bin\uxplay</code>).</p>
used.</p>
<p>If you wish to specify the videosink using the
<code>-vs &lt;videosink&gt;</code> option, some choices for
<code>&lt;videosink&gt;</code> are <code>d3d11videosink</code>,
<code>d3dvideosink</code>, <code>glimagesink</code>,
<code>gtksink</code>. You can get the ability to toggle into and out of
fullscreen mode using the Alt-Enter key combination with</p>
<pre><code>uxplay -vs &quot;d3d11videosink fullscreen-toggle-mode=alt-enter&quot;</code></pre>
<code>gtksink</code>. With Direct3D 11.0 or greater, you can get the
ability to toggle into and out of fullscreen mode using the Alt-Enter
key combination with option
<code>-vs "d3d11videosink fullscreen-toggle-mode=alt-enter"</code>. For
convenience, this option will always be set if
<code>-vs d3d11videosink</code>” is used.</p>
<p>The executable uxplay.exe can also be run without the MSYS2
environment, in the Windows Terminal, with
<code>C:\msys64\mingw64\bin\uxplay</code>.</p>
<h1 id="usage">Usage</h1>
<p>Options:</p>
<p><strong>-n server_name</strong> (Default: UxPlay);

View File

@@ -469,16 +469,15 @@ uxplay -as 'wasapisink low_latency=true device=\"<guid>\"'
where `<guid>` specifies an available audio device by its GUID, which can be found using
"`gst-device-monitor-1.0 Audio`": ``<guid>`` has a form
like ```\{0.0.0.00000000\}.\{98e35b2b-8eba-412e-b840-fd2c2492cf44\}```. If "`device`" is not specified, the
default audio device is used. The executable uxplay.exe can also be run without the MSYS2 environment (using
the Windows Terminal, with `C:\msys64\mingw64\bin\uxplay`).
default audio device is used.
If you wish to specify the videosink using the `-vs <videosink>` option, some choices for `<videosink>` are
`d3d11videosink`, ``d3dvideosink``, ```glimagesink```,
`gtksink`. You can get the ability to toggle into and out of fullscreen mode using the Alt-Enter key combination with
`gtksink`. With Direct3D 11.0 or greater, you can get the ability to toggle into and out of fullscreen mode using the Alt-Enter key combination with
option `-vs "d3d11videosink fullscreen-toggle-mode=alt-enter"`. For convenience, this option will always be set if "``-vs d3d11videosink``" is used.
```
uxplay -vs "d3d11videosink fullscreen-toggle-mode=alt-enter"
```
The executable uxplay.exe can also be run without the MSYS2 environment, in
the Windows Terminal, with `C:\msys64\mingw64\bin\uxplay`.
# Usage

View File

@@ -568,16 +568,19 @@ supports additional options such as
where `<guid>` specifies an available audio device by its GUID, which
can be found using "`gst-device-monitor-1.0 Audio`": `<guid>` has a form
like `\{0.0.0.00000000\}.\{98e35b2b-8eba-412e-b840-fd2c2492cf44\}`. If
"`device`" is not specified, the default audio device is used. The
executable uxplay.exe can also be run without the MSYS2 environment
(using the Windows Terminal, with `C:\msys64\mingw64\bin\uxplay`).
"`device`" is not specified, the default audio device is used.
If you wish to specify the videosink using the `-vs <videosink>` option,
some choices for `<videosink>` are `d3d11videosink`, `d3dvideosink`,
`glimagesink`, `gtksink`. You can get the ability to toggle into and out
of fullscreen mode using the Alt-Enter key combination with
`glimagesink`, `gtksink`. With Direct3D 11.0 or greater, you can get the
ability to toggle into and out of fullscreen mode using the Alt-Enter
key combination with option
`-vs "d3d11videosink fullscreen-toggle-mode=alt-enter"`. For
convenience, this option will always be set if "`-vs d3d11videosink`" is
used.
uxplay -vs "d3d11videosink fullscreen-toggle-mode=alt-enter"
The executable uxplay.exe can also be run without the MSYS2 environment,
in the Windows Terminal, with `C:\msys64\mingw64\bin\uxplay`.
# Usage

View File

@@ -47,7 +47,7 @@ UxPlay 1.56: An open\-source AirPlay mirroring server based on RPiPlay
.IP
choices: ximagesink,xvimagesink,vaapisink,glimagesink,
.IP
gtksink,waylandsink,osximagesink,kmssink,fpsdisplaysink,...
gtksink,waylandsink,osximagesink,kmssink,d3d11videosink,...
.PP
.TP
\fB\-vs\fR 0 Streamed audio only, with no video display window.

View File

@@ -402,7 +402,7 @@ static void print_info (char *name) {
printf(" another choice when using v4l2h264decode: v4l2convert\n");
printf("-vs ... Choose the GStreamer videosink; default \"autovideosink\"\n");
printf(" some choices: ximagesink,xvimagesink,vaapisink,glimagesink,\n");
printf(" gtksink,waylandsink,osximagesink,kmssink,fpsdisplaysink etc.\n");
printf(" gtksink,waylandsink,osximagesink,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 A workaround (bt709 color) that may be needed with -rpi\n");
@@ -824,7 +824,15 @@ int main (int argc, char *argv[]) {
}
if (fullscreen && use_video) {
videosink.append(" fullscreen=true");
if (videosink == "waylandsink" || videosink == "vaapisink") {
videosink.append(" fullscreen=true");
}
}
if (videosink == "d3d11videosink" && use_video) {
videosink.append(" fullscreen-toggle-mode=alt-enter");
printf("d3d11videosink is being used with option fullscreen-toggle-mode=alt-enter\n"
"Use Alt-Enter key combination to toggle into/out of full-screen mode\n");
}
if (bt709_fix && use_video) {