Skip to content
Merged
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 35 additions & 0 deletions docs/troubleshooting.md
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,27 @@ resort suggestion.

## Linux

### Hardware Encoders throttle/drop FPS during high GPU load
Capture methods (`wlgrab`) or encoders (`nvenc`, `vaapi`) that utilize EGL contexts may exhibit FPS drops
in conjunction with a Sunshine installation that runs in a sandboxed or reduced permissions state
(Flatpak, AppImage, or when using Portal capture) due to the lack of active CAP_SYS_NICE process permissions
needed to set up high priority EGL contexts.

To check if you are affected by this issue, look out for this message in your Sunshine log:
```
Warning: EGL: context priority set to HIGH but CAP_SYS_NICE capability is missing"
```

> [!IMPORTANT]
> Switching to Vulkan encoding should resolve the issue for the majority of configurations, but refer to this
> table for recommended configurations (especially if Vulkan encoding is not supported on your system):
> | Desktop Environment | Vulkan Supported? | Recommended Sunshine Install Type | Recommended Capture & Encoder Configuration |
> |:--------------------|-------------------|-----------------------------------|--------------------------------------------------:|
> | KDE Plasma | Yes | Any | `portal` or `kwin` capture with `vulkan` encoding |
> | KDE Plasma | No | Non-Sandboxed | `kwin` capture with `vaapi`/`nvenc` encoding |
> | GNOME / other | Yes | Any | `portal` capture with `vulkan` encoding |
> | GNOME / other | No | Non-Sandboxed | `kms` capture with `vaapi`/`nvenc` encoding |

### Hardware Encoding fails
Due to legal concerns, Mesa has disabled hardware decoding and encoding by default.

Expand All @@ -149,6 +170,20 @@ If you see the above error in the Sunshine logs, compiling *Mesa* manually may b
> Other build options are listed in the
> [meson options](https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/meson_options.txt) file.

### Portal token issues
When using Portal capture, you are required to manually approve the Remote Desktop request on the host before a
connection is allowed. When this occurs, a portal token is saved which is automaticaly re-used on subsequent reconnects,
but under some circumstances (a Sunshine crash, switching to another desktop environment, or if a monitor hotplug event occurs)
the portal token may become lost or invalid, thus necessitating a manual re-approval of the remote desktop capture permissions.

If you are using the KDE Plasma desktop, you can bypass this issue entirely either by switching to `kwin` capture, or
by setting the following configuration to enable permanent capture permission for Sunshine via Portal capture:
```
flatpak permission-set kde-authorized remote-desktop dev.lizardbyte.app.Sunshine yes
```
> [!NOTE]
> Although this configuration is plumbed through Flatpak, it will work with any supported Sunshine installation type.

### Input not working
After installation, the `udev` rules need to be reloaded. Our post-install script tries to do this for you
automatically, but if it fails, you may need to restart your system.
Expand Down
Loading