u/antoinebou13

Moonlight Hosts, Clients & Forks
▲ 82 r/cloudgaming+1 crossposts

Moonlight Hosts, Clients & Forks

I’ve been testing a bunch of different Moonlight/GameStream projects lately while working on Artemis Switch, so I figured I’d put the main ones I’ve come across in one place.

If you’re trying to fix stuttering, improve frame pacing, use a virtual display, or just try something beyond the usual Sunshine + Moonlight setup, there are quite a few interesting forks and alternatives now.

Hosts

  • NVIDIA GameStream The original implementation everything grew out of. NVIDIA discontinued it, but it’s still the foundation of the protocol Moonlight uses.
  • Sunshine The standard open-source GameStream host and probably still the best baseline if you just want something stable and widely supported.
  • Apollo A Sunshine fork with much better virtual-display integration. It can automatically create and match a display to the client resolution and refresh rate, which makes it really nice for headless setups.
  • Vibeshine A more experimental Sunshine fork focused on Windows capture, display automation, frame pacing, RTSS integration, and other latency/performance tweaks.
  • Vibepollo Basically brings a lot of the Vibeshine ideas into Apollo. This has been one of my favorite hosts so far. I already liked Apollo’s virtual-display setup, and Vibepollo adds a lot of the capture and frame-pacing work I was looking for.
  • Foundation-Sunshine Another Sunshine fork with things like additional HDR support, audio improvements, encoder changes, and a redesigned web UI.
  • Wolf / Games on Whales A very different approach. It’s focused on Linux and Docker, with games running in isolated containers and support for multiple remote clients using the same physical machine.
  • Punktfunk I recently tried Punktfunk too, and so far I’m pretty impressed. It feels really good and honestly might be even better than Vibepollo for my setup. I haven’t tested its custom protocol yet though, so I don’t want to make a full latency or quality comparison until I’ve tried that part properly.

Clients

  • Official Moonlight Still the baseline. Available basically everywhere and usually the first client I use when comparing performance.
  • StreamLight A Moonlight fork with a much more console/gamepad-oriented interface. Together with StreamTweak it also adds host monitoring, Tailscale integration, remote controls, shutdown/update commands, etc.
  • Artemide Android-focused Moonlight fork with things like ultra-low-latency modes, direct presentation, and FSR presets.
  • Artemis / Moonlight Noir Apollo’s Android-oriented companion client. It works really nicely with Apollo-style virtual displays and host management.
  • Moonlight V+ Another Android fork experimenting with things like frame generation and extra host-side tools.
  • Artemis Switch This is the fork I’m currently working on. It’s based on Moonlight-Switch but focuses specifically on improving the native Horizon OS experience: presentation timing, lower latency, FSR/RCAS filtering, adaptive pacing, and reducing the small stutters that become really noticeable on the Switch.
  • Moonlight-Switch The original Switch client and the upstream project Artemis Switch is based on.

Separate alternative: Parsec

Parsec is worth mentioning too, although I’d put it in a separate category since it isn’t really part of the Moonlight/GameStream ecosystem.

It uses its own streaming stack, but if the main goal is simply low-latency remote gaming, it’s still a useful comparison point.

What I’ve personally tested

I’ve spent a decent amount of time switching between:

Hosts: Sunshine, Apollo, Vibepollo, and Punktfunk
Clients: Moonlight-Switch, Artemis Switch, Artemis Android, and regular Moonlight Android

That testing is actually one of the reasons I started working on Artemis Switch.

On the Switch, tiny differences in decoding, presentation timing, buffering, network behavior, and frame pacing can make a surprisingly big difference.

For a while, Vibepollo was probably the host I liked the most, mainly because I get Apollo’s great virtual-display workflow together with the newer capture and pacing improvements.

After trying Punktfunk, though, I’m not as sure anymore. So far it looks really good, and I might actually prefer it, but I still need to test the custom protocol before comparing them properly.

And on the client side, I obviously have a soft spot for Artemis. 😅

My goal with Artemis Switch is basically to bring more of that polished Apollo/Artemis experience to the native Switch client while continuing to squeeze as much smoothness and as little latency as possible out of Horizon OS.

There isn’t really one universally “best” setup though. Hardware, GPU, network, display refresh rate, decoder, client OS, capture method, and even the game itself can change what works best.

If I missed a Sunshine/Apollo/Moonlight fork, experimental client, or some obscure streaming project you’re using, drop it below. I’d genuinely like to try more of them.

Links:

u/antoinebou13 — 2 days ago

A Comprehensive Guide to Moonlight/GameStream Servers, Clients, and Forks (2026 Edition)

If you are looking to tweak your streaming setup, fix stuttering, or find a headless virtual display solution, you don't have to stick strictly to the baseline Sunshine + official Moonlight setup.

Here is a breakdown of the active forks, alternative hosts, and FFmpeg-powered clients currently in the ecosystem based on what the community and developers are running right now.

🖥️ Hosts & Servers (The Senders)

  • NVIDIA GameStream: The original foundation that started it all. Officially deprecated by NVIDIA, but the bedrock of the protocol.
  • Sunshine: The modern, open-source standard GameStream compatibility baseline that replaced NVIDIA's official host.
  • Apollo: A Sunshine fork featuring capability-gated extensions and built-in virtual display support using SudoVDA. It is great for headless setups and auto-matches the resolution/framerate of your client.
  • Vibeshine: A highly active, AI-enhanced Sunshine fork focusing heavily on display automation, Windows Graphics Capture running as a service (which allows full framerate capture of frame-generated titles without VRAM crashes), and strict RTSS frame pacing integration.
  • Vibepollo: An Apollo fork that integrates Vibeshine's features (like the native virtual display driver and HDR handling) right into the Apollo architecture. This is highly recommended if you already use Apollo but want tighter frame pacing.
  • Foundation-Sunshine: A fork by AlkaidLab that adds HDR10/HDR Vivid, advanced audio support, optimized encoders, and a modernized control panel.
  • Wolf (Games on Whales): A completely different streaming server built from the ground up for Linux and Docker. It allows you to share a single host machine with multiple remote clients simultaneously by running games inside isolated containers.
  • Punktfunk: A newer, highly experimental low-latency streaming host/client protocol if you want to test out a completely different capture approach.

📱 Clients & Receivers (The Players)

  • Official Moonlight PC / Mobile: The standard baseline client for PC, macOS, Linux, iOS, Apple TV, Android, etc. (The PC Qt version heavily utilizes FFmpeg and libplacebo for decoding and rendering).
  • StreamLight: A massive Moonlight fork that completely overhauls the UI for gamepads. When paired with "StreamTweak" on the host, it unlocks deep integration like built-in Tailscale, live host metrics/NIC speed matching, remote pause, and the ability to remotely trigger Windows Updates and shutdown.
  • Artemide: Highly recommended for Android users. It features ultra-low latency (ULL), direct presentation, and built-in FSR presets (Performance/Balanced/Quality).
  • Artemis / Moonlight Noir: Apollo’s dedicated Android companion client, offering excellent host UX and virtual display integration.
  • Moonlight V+: An alternative Android fork that adds frame-generation support and extra host tools.
  • Artemis Switch: A Moonlight-Switch fork focusing on Switch-specific video presentation, FSR/RCAS filtering, and adaptive low-latency pacing.
  • Moonlight-Switch: The original upstream Switch client that Artemis is built on.

A little about my setup and testing: I actually work on the Artemis Switch fork, looking at multiple optimizations to eliminate stuttering and improve low-latency pacing on the console. Because of that, I’ve personally tested almost all these major combinations to see what actually works. My testing stack includes:

  • Hosts: Sunshine, Apollo, and Vibepollo.
  • Clients: Moonlight-Switch, my Artemis Switch fork, the Artemis companion client, and standard Moonlight Android.

I like vibepollo and Artemis

Let me know if I missed any niche forks or experimental branches you guys are using!

(Note: I had an AI help format this post to make sure links were laid out clearly!)

u/antoinebou13 — 4 days ago

Artemis-Switch — Moonlight-Switch fork focused on Nintendo Switch + Apollo

Hey! I’ve been working on Artemis-Switch, a fork of XITRIX/Moonlight-Switch focused on improving game streaming specifically for the Nintendo Switch.

GitHub:
https://github.com/antoinebou12/Artemis-Switch

First, full credit to XITRIX and the Moonlight-Switch contributors. Artemis keeps the existing Moonlight foundation: NVDEC hardware decoding, deko3d rendering, Borealis UI, controller support, Sunshine/GameStream compatibility, etc.

The goal is mostly to improve the parts that are specific to the Switch.

Some of the main additions:

  • Better Fit / Fill / Stretch / Zoom video modes
  • FSR/EASU, RCAS sharpening and dithering support
  • Custom resolution and exact bitrate controls
  • 30 / 40 / 60 / 90 / 120 FPS profiles
  • Handheld and docked-oriented settings
  • More detailed performance stats: decode latency, network latency, FPS, packet loss, frame queue, GPU/post-processing time, etc.
  • Switch information like battery, handheld/docked mode and read-only CPU/GPU/EMC clocks
  • Improved mouse, touch, motion and controller diagnostics
  • Rumble testing and multi-controller tools
  • Cleaner in-game Quick Actions menu

I’m also working on better Apollo integration.

Sunshine still works normally, but when Artemis detects Apollo-specific capabilities it can expose additional host features instead of showing controls that don’t work.

Current Apollo-related work includes host commands, shortcuts, capability detection and direct access to the host web configuration from the Switch.

A bigger goal is eventually integrating Apollo’s virtual display support so the host display can better match the Switch stream when launching a game.

I’m also experimenting with benchmarking and Auto Tune, because the Switch Wi-Fi and hardware limits can make the “best” Moonlight settings very different from a phone, Steam Deck or PC.

Basically the idea is:

Moonlight-Switch + better Switch UX + diagnostics + tuning + Apollo features.

The project is still evolving, so testing and feedback are welcome, especially from people using a modded Switch/OLED with Sunshine or Apollo.

https://preview.redd.it/w6z5i0jimlih1.jpg?width=1280&format=pjpg&auto=webp&s=4eb4e5345b4d969250209841b9fc6bf773028feb

https://preview.redd.it/ek29q1jimlih1.jpg?width=1280&format=pjpg&auto=webp&s=b4c2efcc157dcdf19aa11c07fc0b8028f3183237

https://preview.redd.it/gyn3j1jimlih1.jpg?width=1280&format=pjpg&auto=webp&s=b0c99ca0834044427ae2954d1ae9176f747cc7b2

https://preview.redd.it/zdgopnjimlih1.jpg?width=1280&format=pjpg&auto=webp&s=9b6f20c0ae2fa80d2874005010e66421a4699910

https://preview.redd.it/a1jwj2jimlih1.jpg?width=1280&format=pjpg&auto=webp&s=b75b8a9975bdf6d71337d160bfc928f8586d4728

https://preview.redd.it/i9unc2jimlih1.jpg?width=1280&format=pjpg&auto=webp&s=765db1f7967a89d14d4b0585be9629ed54227c0e

https://preview.redd.it/40r602jimlih1.jpg?width=1280&format=pjpg&auto=webp&s=f21ce1ab24e353ed35d00d82b8fe3a17a6fc5044

https://preview.redd.it/q1zku1jimlih1.jpg?width=1280&format=pjpg&auto=webp&s=5ccd8cc9d55de1dff31d505481e8817077c4b743

https://preview.redd.it/ojuti1jimlih1.jpg?width=1280&format=pjpg&auto=webp&s=b32187b5083bbab41cc77c6a86eeb7426e2e8c54

https://preview.redd.it/1z4692jimlih1.jpg?width=1280&format=pjpg&auto=webp&s=f2d2b28632807a21a9cd0adcf77ced0b96c29383

https://github.com/antoinebou12/Artemis-Switch/releases/tag/v1.5.1

reddit.com
u/antoinebou13 — 11 days ago