change docs theme to furo
This commit is contained in:
@@ -1,5 +1,3 @@
|
||||
:github_url: https://github.com/LizardByte/Sunshine/tree/nightly/docs/source/about/advanced_usage.rst
|
||||
|
||||
Advanced Usage
|
||||
==============
|
||||
Sunshine will work with the default settings for most users. In some cases you may want to configure Sunshine further.
|
||||
@@ -26,7 +24,7 @@ location by modifying the configuration file.
|
||||
Windows ./config/
|
||||
========= ===========
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: bash
|
||||
|
||||
sunshine ~/sunshine_config.conf
|
||||
@@ -41,13 +39,13 @@ General
|
||||
sunshine_name
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The name displayed by Moonlight
|
||||
|
||||
Default
|
||||
**Default**
|
||||
PC hostname
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
sunshine_name = Sunshine
|
||||
@@ -55,7 +53,7 @@ Example
|
||||
min_log_level
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The minimum log level printed to standard out.
|
||||
|
||||
**Choices**
|
||||
@@ -75,10 +73,10 @@ Description
|
||||
none no logging
|
||||
======= ===========
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``info``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
min_log_level = info
|
||||
@@ -89,7 +87,7 @@ Controls
|
||||
gamepad
|
||||
^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The type of gamepad to emulate on the host.
|
||||
|
||||
.. Caution:: Applies to Windows only.
|
||||
@@ -106,10 +104,10 @@ Description
|
||||
ds4 dualshock controller (PS4)
|
||||
===== ===========
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``x360``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
gamepad = x360
|
||||
@@ -117,17 +115,17 @@ Example
|
||||
back_button_timeout
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
If, after the timeout, the back/select button is still pressed down, Home/Guide button press is emulated.
|
||||
|
||||
On Nvidia Shield, the home and power button are not passed to Moonlight.
|
||||
|
||||
.. Tip:: If back_button_timeout < 0, then the Home/Guide button will not be emulated.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``2000``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
back_button_timeout = 2000
|
||||
@@ -135,13 +133,13 @@ Example
|
||||
key_repeat_delay
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The initial delay in milliseconds before repeating keys. Controls how fast keys will repeat themselves.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``500``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
key_repeat_delay = 500
|
||||
@@ -149,15 +147,15 @@ Example
|
||||
key_repeat_frequency
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
How often keys repeat every second.
|
||||
|
||||
.. Tip:: This configurable option supports decimals.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
.. Todo:: Unknown
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
key_repeat_frequency = 24.9
|
||||
@@ -165,17 +163,17 @@ Example
|
||||
keybindings
|
||||
^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
Sometimes it may be useful to map keybindings. Wayland won't allow clients to capture the Win Key for example.
|
||||
|
||||
.. Tip:: See `virtual key codes <https://docs.microsoft.com/en-us/windows/win32/inputdev/virtual-key-codes>`_
|
||||
|
||||
.. Hint:: keybindings needs to have a multiple of two elements.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
None
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
keybindings = [
|
||||
@@ -188,14 +186,14 @@ Example
|
||||
key_rightalt_to_key_win
|
||||
^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
It may be possible that you cannot send the Windows Key from Moonlight directly. In those cases it may be useful to
|
||||
make Sunshine think the Right Alt key is the Windows key.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
None
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
key_rightalt_to_key_win = enabled
|
||||
@@ -206,12 +204,12 @@ Display
|
||||
adapter_name
|
||||
^^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
Select the video card you want to stream.
|
||||
|
||||
.. Tip:: To find the name of the appropriate values follow these instructions.
|
||||
|
||||
Linux + VA-API
|
||||
**Linux + VA-API**
|
||||
Unlike with `amdvce` and `nvenc`, it doesn't matter if video encoding is done on a different GPU.
|
||||
|
||||
.. code-block:: bash
|
||||
@@ -227,23 +225,23 @@ Description
|
||||
|
||||
.. Todo:: macOS
|
||||
|
||||
Windows
|
||||
**Windows**
|
||||
.. code-block:: batch
|
||||
|
||||
tools\dxgi-info.exe
|
||||
|
||||
Default
|
||||
**Default**
|
||||
Sunshine will select the default video card.
|
||||
|
||||
Examples
|
||||
Linux
|
||||
**Examples**
|
||||
**Linux**
|
||||
.. code-block:: text
|
||||
|
||||
adapter_name = /dev/dri/renderD128
|
||||
|
||||
.. Todo:: macOS
|
||||
|
||||
Windows
|
||||
**Windows**
|
||||
.. code-block:: text
|
||||
|
||||
adapter_name = Radeon RX 580 Series
|
||||
@@ -251,12 +249,12 @@ Examples
|
||||
output_name
|
||||
^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
Select the display number you want to stream.
|
||||
|
||||
.. Tip:: To find the name of the appropriate values follow these instructions.
|
||||
|
||||
Linux
|
||||
**Linux**
|
||||
.. code-block:: bash
|
||||
|
||||
xrandr --listmonitors
|
||||
@@ -267,23 +265,23 @@ Description
|
||||
|
||||
.. Todo:: macOS
|
||||
|
||||
Windows
|
||||
**Windows**
|
||||
.. code-block:: batch
|
||||
|
||||
tools\dxgi-info.exe
|
||||
|
||||
Default
|
||||
**Default**
|
||||
Sunshine will select the default display.
|
||||
|
||||
Examples
|
||||
Linux
|
||||
**Examples**
|
||||
**Linux**
|
||||
.. code-block:: text
|
||||
|
||||
output_name = 0
|
||||
|
||||
.. Todo:: macOS
|
||||
|
||||
Windows
|
||||
**Windows**
|
||||
.. code-block:: text
|
||||
|
||||
output_name = \\.\DISPLAY1
|
||||
@@ -291,16 +289,16 @@ Examples
|
||||
fps
|
||||
^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The fps modes advertised by Sunshine.
|
||||
|
||||
.. Note:: Some versions of Moonlight, such as Moonlight-nx (Switch), rely on this list to ensure that the requested
|
||||
fps is supported.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
.. Todo:: Unknown
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
fps = [10, 30, 60, 90, 120]
|
||||
@@ -308,16 +306,16 @@ Example
|
||||
resolutions
|
||||
^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The resolutions advertised by Sunshine.
|
||||
|
||||
.. Note:: Some versions of Moonlight, such as Moonlight-nx (Switch), rely on this list to ensure that the requested
|
||||
resolution is supported.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
.. Todo:: Unknown
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
resolutions = [
|
||||
@@ -336,22 +334,20 @@ Example
|
||||
dwmflush
|
||||
^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
Invoke DwmFlush() to sync screen capture to the Windows presentation interval.
|
||||
|
||||
.. Caution:: Applies to Windows only. Alleviates visual stuttering during mouse movement.
|
||||
If enabled, this feature will automatically deactivate if the client framerate exceeds
|
||||
the host monitor's current refresh rate.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``enabled``
|
||||
|
||||
Examples
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
Windows
|
||||
.. code-block:: text
|
||||
|
||||
dwmflush = enabled
|
||||
dwmflush = enabled
|
||||
|
||||
Audio
|
||||
-----
|
||||
@@ -359,48 +355,48 @@ Audio
|
||||
audio_sink
|
||||
^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The name of the audio sink used for audio loopback.
|
||||
|
||||
.. Tip:: To find the name of the audio sink follow these instructions.
|
||||
|
||||
Linux + pulseaudio
|
||||
**Linux + pulseaudio**
|
||||
.. code-block:: bash
|
||||
|
||||
pacmd list-sinks | grep "name:"
|
||||
|
||||
Linux + pipewire
|
||||
**Linux + pipewire**
|
||||
.. code-block:: bash
|
||||
|
||||
pactl info | grep Source
|
||||
# in some causes you'd need to use the `Sink` device, if `Source` doesn't work, so try:
|
||||
pactl info | grep Sink
|
||||
|
||||
macOS
|
||||
**macOS**
|
||||
Sunshine can only access microphones on macOS due to system limitations. To stream system audio use
|
||||
`Soundflower <https://github.com/mattingalls/Soundflower>`_ or
|
||||
`BlackHole <https://github.com/ExistentialAudio/BlackHole>`_.
|
||||
|
||||
Windows
|
||||
**Windows**
|
||||
.. code-block:: batch
|
||||
|
||||
tools\audio-info.exe
|
||||
|
||||
Default
|
||||
**Default**
|
||||
Sunshine will select the default audio device.
|
||||
|
||||
Examples
|
||||
Linux
|
||||
**Examples**
|
||||
**Linux**
|
||||
.. code-block:: text
|
||||
|
||||
audio_sink = alsa_output.pci-0000_09_00.3.analog-stereo
|
||||
|
||||
macOS
|
||||
**macOS**
|
||||
.. code-block:: text
|
||||
|
||||
audio_sink = BlackHole 2ch
|
||||
|
||||
Windows
|
||||
**Windows**
|
||||
.. code-block:: text
|
||||
|
||||
audio_sink = {0.0.0.00000000}.{FD47D9CC-4218-4135-9CE2-0C195C87405B}
|
||||
@@ -408,16 +404,16 @@ Examples
|
||||
virtual_sink
|
||||
^^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The audio device that's virtual, like Steam Streaming Speakers. This allows Sunshine to stream audio, while muting
|
||||
the speakers.
|
||||
|
||||
.. Tip:: See `audio_sink`_!
|
||||
|
||||
Default
|
||||
**Default**
|
||||
.. Todo:: Unknown
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
virtual_sink = {0.0.0.00000000}.{8edba70c-1125-467c-b89c-15da389bc1d4}
|
||||
@@ -428,13 +424,13 @@ Network
|
||||
external_ip
|
||||
^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
If no external IP address is given, Sunshine will attempt to automatically detect external ip-address.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
Automatic
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
external_ip = 123.456.789.12
|
||||
@@ -442,7 +438,7 @@ Example
|
||||
port
|
||||
^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
Set the family of ports used by Sunshine. Changing this value will offset other ports per the table below.
|
||||
|
||||
.. table::
|
||||
@@ -458,18 +454,15 @@ Description
|
||||
Video 47998 UDP +9
|
||||
Control 47999 UDP +10
|
||||
Audio 48000 UDP +11
|
||||
tbd 48002 UDP +13
|
||||
Mic (unused) 48002 UDP +13
|
||||
================ ============ ===========================
|
||||
|
||||
.. Attention:: Custom ports are only allowed on select Moonlight clients.
|
||||
|
||||
.. Todo:: Determine the function of port 48002 UDP. See
|
||||
`here <https://github.com/moonlight-stream/moonlight-docs/wiki/Setup-Guide#manual-port-forwarding-advanced>`_.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``47989``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
port = 47989
|
||||
@@ -477,13 +470,13 @@ Example
|
||||
pkey
|
||||
^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The private key. This must be 2048 bits.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
.. Todo:: Unknown
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
pkey = /dir/pkey.pem
|
||||
@@ -491,13 +484,13 @@ Example
|
||||
cert
|
||||
^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The certificate. Must be signed with a 2048 bit key.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
.. Todo:: Unknown
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
cert = /dir/cert.pem
|
||||
@@ -505,7 +498,7 @@ Example
|
||||
origin_pin_allowed
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The origin of the remote endpoint address that is not denied for HTTP method /pin.
|
||||
|
||||
**Choices**
|
||||
@@ -521,10 +514,10 @@ Description
|
||||
wan Anyone may access /pin
|
||||
===== ===========
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``pc``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
origin_pin_allowed = pc
|
||||
@@ -532,7 +525,7 @@ Example
|
||||
origin_web_ui_allowed
|
||||
^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The origin of the remote endpoint address that is not denied for HTTPS Web UI.
|
||||
|
||||
**Choices**
|
||||
@@ -548,10 +541,10 @@ Description
|
||||
wan Anyone may access the web ui
|
||||
===== ===========
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``lan``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
origin_web_ui_allowed = lan
|
||||
@@ -559,7 +552,7 @@ Example
|
||||
upnp
|
||||
^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
Sunshine will attempt to open ports for streaming over the internet.
|
||||
|
||||
**Choices**
|
||||
@@ -574,10 +567,10 @@ Description
|
||||
off disable UPnP
|
||||
===== ===========
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``off``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
upnp = on
|
||||
@@ -585,13 +578,13 @@ Example
|
||||
ping_timeout
|
||||
^^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
How long to wait in milliseconds for data from Moonlight before shutting down the stream.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``10000``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
ping_timeout = 10000
|
||||
@@ -602,22 +595,22 @@ Encoding
|
||||
channels
|
||||
^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
This will generate distinct video streams, unlike simply broadcasting to multiple Clients.
|
||||
|
||||
When multicasting, it could be useful to have different configurations for each connected Client.
|
||||
|
||||
For instance:
|
||||
|
||||
- Clients connected through WAN and LAN have different bitrate constraints.
|
||||
- Decoders may require different settings for color.
|
||||
- Clients connected through WAN and LAN have different bitrate constraints.
|
||||
- Decoders may require different settings for color.
|
||||
|
||||
.. Warning:: CPU usage increases for each distinct video stream generated.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``1``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
channels = 1
|
||||
@@ -625,18 +618,18 @@ Example
|
||||
fec_percentage
|
||||
^^^^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
Percentage of error correcting packets per data packet in each video frame.
|
||||
|
||||
.. Warning:: Higher values can correct for more network packet loss, but at the cost of increasing bandwidth usage.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``20``
|
||||
|
||||
Range
|
||||
**Range**
|
||||
``1-255``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
fec_percentage = 20
|
||||
@@ -644,15 +637,15 @@ Example
|
||||
qp
|
||||
^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
Quantitization Parameter. Some devices don't support Constant Bit Rate. For those devices, QP is used instead.
|
||||
|
||||
.. Warning:: Higher value means more compression, but less quality.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``28``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
qp = 28
|
||||
@@ -660,17 +653,17 @@ Example
|
||||
min_threads
|
||||
^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
Minimum number of threads used by ffmpeg to encode the video.
|
||||
|
||||
.. Note:: Increasing the value slightly reduces encoding efficiency, but the tradeoff is usually worth it to gain
|
||||
the use of more CPU cores for encoding. The ideal value is the lowest value that can reliably encode at your
|
||||
desired streaming settings on your hardware.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``1``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
min_threads = 1
|
||||
@@ -678,7 +671,7 @@ Example
|
||||
hevc_mode
|
||||
^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
Allows the client to request HEVC Main or HEVC Main10 video streams.
|
||||
|
||||
.. Warning:: HEVC is more CPU-intensive to encode, so enabling this may reduce performance when using software
|
||||
@@ -698,10 +691,10 @@ Description
|
||||
3 advertise support for HEVC Main and Main10 (HDR) profiles
|
||||
===== ===========
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``0``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
hevc_mode = 2
|
||||
@@ -709,7 +702,7 @@ Example
|
||||
encoder
|
||||
^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
Force a specific encoder.
|
||||
|
||||
**Choices**
|
||||
@@ -725,10 +718,10 @@ Description
|
||||
software Encoding occurs on the CPU
|
||||
======== ===========
|
||||
|
||||
Default
|
||||
**Default**
|
||||
Sunshine will use the first encoder that is available.
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
encoder = nvenc
|
||||
@@ -736,7 +729,7 @@ Example
|
||||
sw_preset
|
||||
^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The encoder preset to use.
|
||||
|
||||
.. Note:: This option only applies when using software `encoder`_.
|
||||
@@ -771,10 +764,10 @@ Description
|
||||
veryslow slowest
|
||||
========= ===========
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``superfast``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
sw_preset = superfast
|
||||
@@ -782,7 +775,7 @@ Example
|
||||
sw_tune
|
||||
^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The tuning preset to use.
|
||||
|
||||
.. Note:: This option only applies when using software `encoder`_.
|
||||
@@ -807,10 +800,10 @@ Description
|
||||
zerolatency good for fast encoding and low-latency streaming
|
||||
=========== ===========
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``zerolatency``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
sw_tune = zerolatency
|
||||
@@ -818,7 +811,7 @@ Example
|
||||
nv_preset
|
||||
^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The encoder preset to use.
|
||||
|
||||
.. Note:: This option only applies when using nvenc `encoder`_.
|
||||
@@ -845,10 +838,10 @@ Description
|
||||
losslesshp lossless, high performance
|
||||
========== ===========
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``llhq``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
nv_preset = llhq
|
||||
@@ -856,7 +849,7 @@ Example
|
||||
nv_rc
|
||||
^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The encoder rate control.
|
||||
|
||||
.. Note:: This option only applies when using nvenc `encoder`_.
|
||||
@@ -880,10 +873,10 @@ Description
|
||||
vbr_hq variable bitrate, high quality
|
||||
========== ===========
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``auto``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
nv_rc = auto
|
||||
@@ -891,7 +884,7 @@ Example
|
||||
nv_coder
|
||||
^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The entropy encoding to use.
|
||||
|
||||
.. Note:: This option only applies when using nvenc `encoder`_.
|
||||
@@ -909,10 +902,10 @@ Description
|
||||
cavlc
|
||||
========== ===========
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``auto``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
nv_coder = auto
|
||||
@@ -920,7 +913,7 @@ Example
|
||||
amd_quality
|
||||
^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The encoder preset to use.
|
||||
|
||||
.. Note:: This option only applies when using amdvce `encoder`_.
|
||||
@@ -938,10 +931,10 @@ Description
|
||||
balanced balance performance and speed
|
||||
========== ===========
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``balanced``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
amd_quality = balanced
|
||||
@@ -949,7 +942,7 @@ Example
|
||||
amd_rc
|
||||
^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The encoder rate control.
|
||||
|
||||
.. Note:: This option only applies when using amdvce `encoder`_.
|
||||
@@ -971,10 +964,10 @@ Description
|
||||
vbr_peak variable bitrate, peak constrained
|
||||
=========== ===========
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``auto``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
amd_rc = auto
|
||||
@@ -982,7 +975,7 @@ Example
|
||||
amd_coder
|
||||
^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The entropy encoding to use.
|
||||
|
||||
.. Note:: This option only applies when using nvenc `encoder`_.
|
||||
@@ -1000,10 +993,10 @@ Description
|
||||
cavlc
|
||||
========== ===========
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``auto``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
amd_coder = auto
|
||||
@@ -1011,7 +1004,7 @@ Example
|
||||
vt_software
|
||||
^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
Force Video Toolbox to use software encoding.
|
||||
|
||||
.. Note:: This option only applies when using macOS.
|
||||
@@ -1030,10 +1023,10 @@ Description
|
||||
forced force software encoding
|
||||
========== ===========
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``auto``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
vt_software = auto
|
||||
@@ -1041,17 +1034,17 @@ Example
|
||||
vt_realtime
|
||||
^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
Realtime encoding.
|
||||
|
||||
.. Note:: This option only applies when using macOS.
|
||||
|
||||
.. Warning:: Disabling realtime encoding might result in a delayed frame encoding or frame drop.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``enabled``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
vt_realtime = enabled
|
||||
@@ -1059,7 +1052,7 @@ Example
|
||||
vt_coder
|
||||
^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The entropy encoding to use.
|
||||
|
||||
.. Note:: This option only applies when using macOS.
|
||||
@@ -1077,10 +1070,10 @@ Description
|
||||
cavlc
|
||||
========== ===========
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``auto``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
vt_coder = auto
|
||||
@@ -1091,14 +1084,14 @@ Advanced
|
||||
file_apps
|
||||
^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The application configuration file path. The file contains a json formatted list of applications that can be started
|
||||
by Moonlight.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
OS and package dependent
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
file_apps = apps.json
|
||||
@@ -1106,13 +1099,13 @@ Example
|
||||
file_state
|
||||
^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The file where current state of Sunshine is stored.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``sunshine_state.json``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
file_state = sunshine_state.json
|
||||
@@ -1120,13 +1113,13 @@ Example
|
||||
credentials_file
|
||||
^^^^^^^^^^^^^^^^
|
||||
|
||||
Description
|
||||
**Description**
|
||||
The file where user credentials for the UI are stored.
|
||||
|
||||
Default
|
||||
**Default**
|
||||
``sunshine_state.json``
|
||||
|
||||
Example
|
||||
**Example**
|
||||
.. code-block:: text
|
||||
|
||||
credentials_file = sunshine_state.json
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
:github_url: https://github.com/LizardByte/Sunshine/tree/nightly/docs/source/about/installation.rst
|
||||
|
||||
Installation
|
||||
============
|
||||
The recommended method for running Sunshine is to use the `binaries`_ bundled with the `latest release`_.
|
||||
@@ -36,19 +34,19 @@ AppImage
|
||||
.. image:: https://img.shields.io/github/issues/lizardbyte/sunshine/pkg:appimage?logo=github&style=for-the-badge
|
||||
:alt: GitHub issues by-label
|
||||
|
||||
According to AppImageLint the AppImage can run on the following distros.
|
||||
According to AppImageLint the supported distro matrix of the AppImage is below.
|
||||
|
||||
- [✖] Debian oldstable (buster)
|
||||
- [✔] Debian stable (bullseye)
|
||||
- [✔] Debian testing (bookworm)
|
||||
- [✔] Debian unstable (sid)
|
||||
- [✔] Ubuntu jammy
|
||||
- [✔] Ubuntu impish
|
||||
- [✔] Ubuntu focal
|
||||
- [✖] Ubuntu bionic
|
||||
- [✖] Ubuntu xenial
|
||||
- [✖] Ubuntu trusty
|
||||
- [✖] CentOS 7
|
||||
- [✖] Debian oldstable (buster)
|
||||
- [✔] Debian stable (bullseye)
|
||||
- [✔] Debian testing (bookworm)
|
||||
- [✔] Debian unstable (sid)
|
||||
- [✔] Ubuntu jammy
|
||||
- [✔] Ubuntu impish
|
||||
- [✔] Ubuntu focal
|
||||
- [✖] Ubuntu bionic
|
||||
- [✖] Ubuntu xenial
|
||||
- [✖] Ubuntu trusty
|
||||
- [✖] CentOS 7
|
||||
|
||||
#. Download ``sunshine-appimage.zip`` and extract the contents to your home directory.
|
||||
#. Open terminal and run the following code.
|
||||
@@ -58,13 +56,11 @@ According to AppImageLint the AppImage can run on the following distros.
|
||||
./sunshine.AppImage --install
|
||||
|
||||
Start:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
./sunshine.AppImage --install && ./sunshine.AppImage
|
||||
|
||||
Uninstall:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
./sunshine.AppImage --remove
|
||||
@@ -80,7 +76,6 @@ AUR Package
|
||||
makepkg -fi
|
||||
|
||||
Uninstall:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
pacman -R sunshine
|
||||
@@ -99,7 +94,6 @@ Debian Package
|
||||
.. Tip:: You can double click the deb file to see details about the package and begin installation.
|
||||
|
||||
Uninstall:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
sudo apt remove sunshine
|
||||
@@ -123,7 +117,6 @@ Flatpak Package
|
||||
flatpak install --user sunshine.flatpak
|
||||
|
||||
Start:
|
||||
|
||||
X11 and NVFBC capture (X11 Only)
|
||||
.. code-block:: bash
|
||||
|
||||
@@ -135,7 +128,6 @@ Start:
|
||||
sudo -i PULSE_SERVER=unix:$(pactl info | awk '/Server String/{print$3}') flatpak run dev.lizardbyte.sunshine
|
||||
|
||||
Uninstall:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
flatpak uninstall --delete-data sunshine.flatpak
|
||||
@@ -161,7 +153,6 @@ RPM Package
|
||||
.. Tip:: You can double click the rpm file to see details about the package and begin installation.
|
||||
|
||||
Uninstall:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
sudo dnf remove sunshine
|
||||
@@ -178,7 +169,6 @@ pkg
|
||||
#. Download the ``sunshine.pkg`` file and install it as normal.
|
||||
|
||||
Uninstall:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
cd /etc/sunshine/assets
|
||||
@@ -194,7 +184,6 @@ Portfile
|
||||
sudo nano /opt/local/etc/macports/sources.conf
|
||||
|
||||
Add this line, replacing your username, below the line that starts with ``rsync``.
|
||||
|
||||
``file:///Users/<username>/ports``
|
||||
|
||||
``Ctrl+x``, then ``Y`` to exit and save changes.
|
||||
@@ -212,7 +201,6 @@ Portfile
|
||||
#. The first time you start Sunshine, you will be asked to grant access to screen recording and your microphone.
|
||||
|
||||
Uninstall:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
sudo port uninstall sunshine
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
:github_url: https://github.com/LizardByte/Sunshine/tree/nightly/docs/source/about/third_party_packages.rst
|
||||
|
||||
Third Party Packages
|
||||
====================
|
||||
|
||||
@@ -15,6 +13,12 @@ Chocolatey
|
||||
.. image:: https://img.shields.io/chocolatey/dt/sunshine?style=for-the-badge&logo=chocolatey
|
||||
:alt: Chocolatey
|
||||
|
||||
nixpkgs
|
||||
-------
|
||||
.. image:: https://img.shields.io/badge/dynamic/xml?color=orange&label=nixpkgs&style=for-the-badge&prefix=v&query=%2F%2Ftr%5B%40id%3D%27nix_unstable%27%5D%2Ftd%5B3%5D%2Fspan%2Fa&url=https%3A%2F%2Frepology.org%2Fproject%2Fsunshine%2Fversions&logo=nixos
|
||||
:alt: nixpgs Version
|
||||
:target: https://github.com/NixOS/nixpkgs/blob/master/pkgs/servers/sunshine/default.nix
|
||||
|
||||
Scoop
|
||||
-----
|
||||
|
||||
@@ -22,6 +26,12 @@ Scoop
|
||||
:alt: Scoop Version (extras bucket)
|
||||
:target: https://scoop.sh/#/apps?s=0&d=1&o=true&q=sunshine
|
||||
|
||||
Solus
|
||||
-----
|
||||
.. image:: https://img.shields.io/badge/dynamic/xml?color=orange&label=Solus&style=for-the-badge&prefix=v&query=%2F%2Ftr%5B%40id%3D%27solus%27%5D%2Ftd%5B3%5D%2Fspan%2Fa&url=https%3A%2F%2Frepology.org%2Fproject%2Fsunshine%2Fversions&logo=solus
|
||||
:alt: Solus Version
|
||||
:target: https://dev.getsol.us/source/sunshine
|
||||
|
||||
Winget
|
||||
------
|
||||
.. image:: https://img.shields.io/badge/dynamic/xml?color=orange&label=Winget&style=for-the-badge&prefix=v&query=%2F%2Ftr%5B%40id%3D%27winget%27%5D%2Ftd%5B3%5D%2Fspan%2Fa&url=https%3A%2F%2Frepology.org%2Fproject%2Fsunshine%2Fversions&logo=microsoft
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
:github_url: https://github.com/LizardByte/Sunshine/tree/nightly/docs/source/about/usage.rst
|
||||
|
||||
Usage
|
||||
=====
|
||||
#. See the `setup`_ section for your specific OS.
|
||||
@@ -12,6 +10,7 @@ Usage
|
||||
.. Tip:: If using the Linux AppImage, replace ``sunshine`` with ``./sunshine.AppImage``
|
||||
|
||||
#. Configure Sunshine in the web ui
|
||||
|
||||
The web ui is available on `https://localhost:47990 <https://localhost:47990>`_ by default. You may replace
|
||||
`localhost` with your internal ip address.
|
||||
|
||||
@@ -20,14 +19,14 @@ Usage
|
||||
.. Caution:: If running for the first time, make sure to note the username and password Sunshine showed to you,
|
||||
since you cannot get back later!
|
||||
|
||||
Add games and applications.
|
||||
This can be configured in the web ui.
|
||||
**Add games and applications.**
|
||||
This can be configured in the web ui.
|
||||
|
||||
.. Note:: Additionally, apps can be configured manually. `src_assets/<os>/config/apps.json` is an example of a
|
||||
list of applications that are started just before running a stream. This is the directory within the GitHub
|
||||
repo.
|
||||
.. Note:: Additionally, apps can be configured manually. `src_assets/<os>/config/apps.json` is an example of a
|
||||
list of applications that are started just before running a stream. This is the directory within the GitHub
|
||||
repo.
|
||||
|
||||
.. Attention:: Application list is not fully supported on macOS
|
||||
.. Attention:: Application list is not fully supported on macOS
|
||||
|
||||
#. In Moonlight, you may need to add the PC manually.
|
||||
#. When Moonlight request you insert the correct pin on sunshine:
|
||||
@@ -46,7 +45,6 @@ The Sunshine user interface will be available on port 47990 by default.
|
||||
Arguments
|
||||
---------
|
||||
To get a list of available arguments run the following:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
sunshine --help
|
||||
@@ -56,7 +54,7 @@ Setup
|
||||
|
||||
Linux
|
||||
^^^^^
|
||||
The deb, rpm, and AppImage packages handle these steps automatically. The flatpak does not, third party packages
|
||||
The `deb`, `rpm`, and `AppImage` packages handle these steps automatically. The flatpak does not, third party packages
|
||||
also may not.
|
||||
|
||||
Sunshine needs access to `uinput` to create mouse and gamepad events.
|
||||
@@ -73,9 +71,9 @@ Sunshine needs access to `uinput` to create mouse and gamepad events.
|
||||
sudo tee /etc/udev/rules.d/85-sunshine-input.rules
|
||||
|
||||
#. Optionally, configure autostart service
|
||||
- filename: ``~/.config/systemd/user/sunshine.service``
|
||||
- contents:
|
||||
|
||||
- filename: ``~/.config/systemd/user/sunshine.service``
|
||||
- contents:
|
||||
.. code-block::
|
||||
|
||||
[Unit]
|
||||
@@ -100,12 +98,12 @@ Sunshine needs access to `uinput` to create mouse and gamepad events.
|
||||
Flatpak flatpak run dev.lizardbyte.sunshine ✖
|
||||
======== ============================================== ===============
|
||||
|
||||
Start once
|
||||
**Start once**
|
||||
.. code-block:: bash
|
||||
|
||||
systemctl --user start sunshine
|
||||
|
||||
Start on boot
|
||||
**Start on boot**
|
||||
.. code-block:: bash
|
||||
|
||||
systemctl --user enable sunshine
|
||||
@@ -114,12 +112,12 @@ Sunshine needs access to `uinput` to create mouse and gamepad events.
|
||||
.. Note:: ``cap_sys_admin`` may as well be root, except you don't need to be root to run it. It is necessary to
|
||||
allow Sunshine to use KMS.
|
||||
|
||||
Enable
|
||||
**Enable**
|
||||
.. code-block:: bash
|
||||
|
||||
sudo setcap cap_sys_admin+p $(readlink -f $(which sunshine))
|
||||
|
||||
Disable
|
||||
**Disable**
|
||||
.. code-block:: bash
|
||||
|
||||
sudo setcap -r $(readlink -f $(which sunshine))
|
||||
@@ -141,8 +139,7 @@ select their sink as audio device in `sunshine.conf`.
|
||||
.. Caution:: Gamepads are not currently supported.
|
||||
|
||||
Configure autostart service
|
||||
|
||||
MacPorts
|
||||
**MacPorts**
|
||||
.. code-block:: bash
|
||||
|
||||
sudo port load Sunshine
|
||||
@@ -153,10 +150,10 @@ For gamepad support, install `ViGEmBus <https://github.com/ViGEm/ViGEmBus/releas
|
||||
|
||||
Shortcuts
|
||||
---------
|
||||
All shortcuts start with CTRL + ALT + SHIFT, just like Moonlight
|
||||
All shortcuts start with ``CTRL + ALT + SHIFT``, just like Moonlight
|
||||
|
||||
- ``CTRL + ALT + SHIFT + N`` - Hide/Unhide the cursor (This may be useful for Remote Desktop Mode for Moonlight)
|
||||
- ``CTRL + ALT + SHIFT + F1/F13`` - Switch to different monitor for Streaming
|
||||
- ``CTRL + ALT + SHIFT + N`` - Hide/Unhide the cursor (This may be useful for Remote Desktop Mode for Moonlight)
|
||||
- ``CTRL + ALT + SHIFT + F1/F13`` - Switch to different monitor for Streaming
|
||||
|
||||
Application List
|
||||
----------------
|
||||
@@ -169,22 +166,21 @@ Application List
|
||||
- ``"Variable name":"Variable value"``
|
||||
- ``apps`` - The list of applications
|
||||
- Example application:
|
||||
|
||||
.. code-block:: json
|
||||
|
||||
{
|
||||
"name":"An App",
|
||||
"cmd":"command to open app",
|
||||
"prep-cmd":[
|
||||
{
|
||||
"do":"some-command",
|
||||
"undo":"undo-that-command"
|
||||
}
|
||||
],
|
||||
{
|
||||
"do":"some-command",
|
||||
"undo":"undo-that-command"
|
||||
}
|
||||
],
|
||||
"detached":[
|
||||
"some-command",
|
||||
"another-command"
|
||||
]
|
||||
"some-command",
|
||||
"another-command"
|
||||
]
|
||||
}
|
||||
|
||||
- ``name`` - The name of the application/game
|
||||
@@ -192,24 +188,28 @@ Application List
|
||||
- ``detached`` - A list of commands to be run and forgotten about
|
||||
- ``prep-cmd`` - A list of commands to be run before/after the application
|
||||
|
||||
- If any of the prep-commands fail, starting the application is aborted
|
||||
- ``do`` - Run before the application
|
||||
- If any of the prep-commands fail, starting the application is aborted
|
||||
- ``do`` - Run before the application
|
||||
|
||||
- If it fails, all ``undo`` commands of the previously succeeded ``do`` commands are run
|
||||
- If it fails, all ``undo`` commands of the previously succeeded ``do`` commands are run
|
||||
|
||||
- ``undo`` - Run after the application has terminated
|
||||
- ``undo`` - Run after the application has terminated
|
||||
|
||||
- This should not fail considering it is supposed to undo the ``do`` commands
|
||||
- If it fails, Sunshine is terminated
|
||||
- This should not fail considering it is supposed to undo the ``do`` commands
|
||||
- If it fails, Sunshine is terminated
|
||||
|
||||
- ``cmd`` - The main application
|
||||
- ``cmd`` - The main application
|
||||
|
||||
- If not specified, a process is started that sleeps indefinitely
|
||||
- If not specified, a process is started that sleeps indefinitely
|
||||
|
||||
Considerations
|
||||
--------------
|
||||
- When an application is started, if there is an application already running, it will be terminated.
|
||||
- When the application has been shutdown, the stream shuts down as well.
|
||||
|
||||
- For example, if you attempt to run ``steam`` as a ``cmd`` instead of ``detached`` the stream will immediately fail.
|
||||
This is due to the method in which the steam process is executed. Other applications may behave similarly.
|
||||
|
||||
- In addition to the apps listed, one app "Desktop" is hardcoded into Sunshine. It does not start an application,
|
||||
instead it simply starts a stream.
|
||||
- For the Linux flatpak you must prepend commands with ``flatpak-spawn --host``.
|
||||
|
||||
Reference in New Issue
Block a user