Skip to content

FAQ

Common questions about hardware requirements, client compatibility, coexisting with other GameStream hosts, HDR, and the optional AI features. If your question is about a specific failure, start with Troubleshooting instead.

No. NVIDIA and NVENC are the most heavily tested path today, but AMD and Intel Mesa VAAPI and software encode are supported. GPU-native DMA-BUF capture is an optimization request on both NVIDIA and AMD-capable stacks, and Polaris reports the actual path when a host falls back to SHM or system memory. Launch modes and capture paths has per-vendor recommendations.

Can Polaris stream 10-bit to an SDR handheld screen?

Section titled “Can Polaris stream 10-bit to an SDR handheld screen?”

Yes, if the client explicitly requests a 10-bit path and the active encoder and runtime support Main10. See Runtime and streaming model for the difference between 10-bit SDR and true HDR.

Yes, but Polaris only advertises true HDR when the active capture path reports HDR display metadata. Headless labwc and wlroots sessions stay honestly SDR until the runtime can provide real metadata. Runtime and streaming model has the details.

Does Polaris work with Moonlight on iOS, macOS, and PC?

Section titled “Does Polaris work with Moonlight on iOS, macOS, and PC?”

Yes. Polaris speaks the Moonlight protocol, so any Moonlight client can connect. Polaris-specific features — launch-mode selection, watch mode, optimization guidance, and richer session state — require Nova on Android.

No. Moonlight can request higher frame rates on clients that expose them, and Polaris treats the client’s requested display mode as the ceiling. If a client requests 1280x800x60, Polaris will not force a 90 FPS optimization above that request even when the device profile supports it.

Which Moonlight settings matter with Polaris?

Section titled “Which Moonlight settings matter with Polaris?”

Resolution and frame rate, because Polaris treats the request as a ceiling and falls back to the host’s Display Planner mode when it cannot be met; bitrate, because Auto Quality starts from it; codec and HDR, because the host has to offer the matching encoder profile. The full table is in Play with Moonlight.

No. The host’s saved launch mode applies to every standard Moonlight session; only Nova can pick a mode per launch. A protocol client can still ask for a one-off desktop mirror by adding mirrorDesktop=1 to its launch request, without changing the host setting.

Moonlight shows the library but cannot start anything

Section titled “Moonlight shows the library but cannot start anything”

The device has Browse & Watch access, which lists the library and joins an existing stream but cannot launch or send input. Open Devices, choose Edit Access on that device, and pick Game Control. The presets are explained in Pair and manage devices.

Pair a second controller to the device that streams, such as a Bluetooth pad next to a Retroid’s own controls, and press a button on each. Each pad becomes a player on the host in the order its first button press arrives: the first is player 1, the next player 2. In Nova, Players in Command Center lists who is which player, names a pad that has not pressed anything yet, and Reassign lets everyone press again in the order you want without ending the stream. On a handheld whose own controls Android reports as built in, those controls stay player 1. Nova’s Automatic Gamepad Presence Detection must be on; with it off, every pad is player 1. On the host, the controller test in Troubleshooting lists each player and the pad it emulates. A device that only watches a stream never adds a pad of its own.

On the host, yes: a client that says it has a Steam Controller (Moonlight sends this type) gets an emulated DualSense, the one pad that carries the controller’s gyro and its touchpads. Its two touchpads land on the left and right halves of the DualSense’s touchpad, so a game sees both thumbs. The back grip buttons have no place on a DualSense and are not passed on. Android shows the controller to apps only as a keyboard and mouse, so Nova cannot read its sticks, gyro or touchpads yet.

Can multiple people watch the same stream?

Section titled “Can multiple people watch the same stream?”

Yes. Set max_sessions above 1. Polaris tracks owner and viewer roles explicitly, and passive watch mode is designed so a second client can observe without taking over. Viewers match the active owner profile rather than silently creating a different, downgraded stream.

Do I need to uninstall Sunshine before trying Polaris?

Section titled “Do I need to uninstall Sunshine before trying Polaris?”

No. Polaris keeps its host configuration separate at ~/.config/polaris, so installing it should not remove or overwrite an existing Sunshine setup. For testing, stop Sunshine before starting Polaris, because both are GameStream hosts and can collide on the same default ports and discovery records.

Terminal window
systemctl --user stop sunshine
systemctl --user enable --now polaris

If your Sunshine install runs as a system service instead of a user service, use the matching service command for your distro. Switch back by stopping Polaris and starting Sunshine again.

Does headless mode work on Hyprland, Sway, or GNOME?

Section titled “Does headless mode work on Hyprland, Sway, or GNOME?”

Yes. The headless labwc runtime creates its own Wayland instance, so it is not tied to one desktop environment. Polaris is tested most heavily on KDE Plasma Wayland, but the model is not KDE-specific.

My KDE layout gets corrupted after streaming

Section titled “My KDE layout gets corrupted after streaming”

That failure mode is the reason Polaris exists. Set headless_mode = enabled and linux_use_cage_compositor = enabled, and Polaris stops treating your physical displays as the stream path.

Steam Big Picture shows a black screen or tiny window

Section titled “Steam Big Picture shows a black screen or tiny window”

First clear Steam’s HTML cache:

Terminal window
rm -rf ~/.local/share/Steam/config/htmlcache/

Then avoid MangoHud on Steam Big Picture and Steam/Proton launches. Polaris and Nova warn about this because MangoHud can crash helper processes before the session gets a usable frame.

Trusted Pair is Polaris’ TOFU flow. If the client is on a configured trusted subnet, Polaris can auto-approve first pairing. QR and manual PIN pairing remain available if you want a stricter or more traditional flow.

No. Core streaming, pairing, library management, and diagnostics work without AI and without a cloud account.

What does AI do in Doctor and launch optimization?

Section titled “What does AI do in Doctor and launch optimization?”

Launch presets and Doctor actions are deterministic and work without AI. When AI explanations are enabled, Polaris sends a bounded structured evidence bundle to the provider you configure: Anthropic, OpenAI, Gemini, or a local OpenAI-compatible endpoint such as Ollama or LM Studio. The response can explain the evidence in plain language, but it cannot define an action, target setting, Doctor confidence override, or launch policy. See Fix a bad stream with Doctor.