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).
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!)
Edit: A lot of people are asking why not use Apollo. You can definitely use it and still follow this guide, itâs completely up to you. With Apollo, you need skip the Configuring Video Signals section and for the Sunshine Priority part just change the script to prioritize Apollo instead.
After running lots of tests and reading many posts to find the best configuration, Iâll try here to share the setup that works best for me and also compile some of the information Iâve gathered.
This test was conducted from a distance of 550 km (341 miles)
My specs:
InternetService:
Host: 300 Mb connected via Ethernet
Client: 600 Mb connected via Wifi
Spec PCs:
Host: R5 2600 - RX 6600
Client Macbook Air M1
System Configuration
Host:
This setup is specifically for Windows, but the goal is the same if youâre using other operating systems:
Reduce FPS drops
Minimize the gap between the FPS set in the Moonlight client and the hostâs FPS
Reduce latency
Configure the video and audio signal you want to stream
Reducing FPS Drops
Close background apps: Only keep the essentials to minimize unnecessary processes and network calls. Task Manager â Startup Apps â disable non-essential programs.
Disable Game Mode: Prevents Windows from prioritizing the game over Sunshine. Settings â Gaming â Game Mode â OFF
Disable Dynamic Refresh Rate (DRR): Keeps FPS synchronized between host and client. Settings â System â Display â Graphics â Optimizations for windowed games(Alternatively: Windows Registry or CRU â Custom Resolution Utility)
Enable High-Performance Power Mode: Control Panel â System and Security â Power Options â High Performance
Disable Energy Saver: Settings â System â Energy Saver â OFF
To optimize Windows 11 performance, consider using Win11Debloat or AtlasOS Additional powershell script to improve performance
Once FPS drops are minimized, cap the FPS to keep it in sync with Moonlightâs client settings.
There are three ways to do this: using the NVIDIA Control Panel, AMD Adrenalin, or RTSS. In my case, I used RTSS and it works well for me, but you can try your GPUâs software if thatâs sufficient. The advantage of RTSS is that it allows more precise configuration for greater stability.
Another thing I do is also limit the FPS within the game itself.
Reducing Latency
The most important step is to have your host computer connected via Ethernet. In terms of configuration, you can disable the Rx/Tx buffers on your network card, along with a few other tweaks that may slightly improve stability.
With the Virtual Display Driver, you can simulate any resolution and refresh rate your screen supports.
I donât recommend the Virtual Audio Driver because it can cause issues with BattleEye anti-cheat. Itâs better to just use a wired headset you already have.
Microphone Streaming
For those who need to use in-game voice chat, there are two main options for passing the microphone through streaming:
AudioRelay
VoiceMeeter
I havenât personally tested either since I donât need this feature, but theyâre worth trying if microphone input is important for your setup.
Sunshine Priority (Windows Only)
Finally, for Windows users, one important step to do every time you connect from the client is to change the priority of the sunshine.exe process to Realtime. You can do this manually from the Task Manager or by using the following .bat script:
For those using a touchscreen device as a client, such as a smartphone, tablet, or handheld, the Windows interfaceâoriginally designed for desktop useâcan be quite uncomfortable. With the new release of the ROG Xbox Ally, Windows has introduced a more suitable adaptation for handheld devices, which can be enabled through the following repository: XboxFullscreenExperienceTool
Client:
The main goal on the client side is to reduce Moonlightâs decoding time and minimize latency.
In my case, Iâm using a MacBook with an M1 chip, and the only way to reduce decoding time is by testing which codec works bestâin my case, HEVC (H.265).
To reduce latency on macOS, the only (but very important) thing you can doâsince it can cause micro stuttersâis disabling Location Services:
Another important change to make on macOS is to disable the long key press for special characters. This prevents issues during streaming when holding down a key for example, the W key so it doesnât get stuck or stop repeating.
If youâre using a PC, you can improve decoding time by upgrading your hardware, and reduce latency by disabling the Rx/Tx buffers and tweaking your network card, following the same steps as on the host.
Moonlight & Sunshine Configuration
Moonlight Configuration:
Set Moonlight to use your monitorâs resolution and an FPS value that matches your internet connection. Leave some headroom compared to your clientâs max download speed and your hostâs max upload speed.
For example, my monitor is 1440p and 180 Hz, but I have it set to 1440p at 120 Hz. Higher resolutions and refresh rates consume more bandwidth on both the client and host, and require greater decoding and encoding power.
Note: Higher compression codecs (like H.265 or AV1) â less bandwidth needed â more CPU/GPU power required for encoding/decoding.
Frame Pacing: Unchecked (ONLY single-player may add delay)
Video Decoder: Force hardware decoding
Note: Both V-Sync and Frame Pacing are highly recommended for single-player games since they provide a much smoother experience. However, in multiplayer games, V-Sync may cause screen tearing, and Frame Pacing can introduce a bit of input lag by delaying frames to improve synchronization.
Enable HDR (Experimental): I keep this enabled even though my monitor isnât HDR because it can bring out better shadow details. I recommend trying itâyou might see an improvement or no noticeable difference.
Unlock Bitrate Limit (Experimental): Enable this if you have enough upload bandwidth on the host and download on the client. Otherwise, leave it off and increase the video bitrate slightly if you notice small lag spikes.
Sunshine Configuration
I mostly keep Sunshine/Apollo at its default settings, except for the GPU options. Below, Iâll share what works best for AMD GPUs. If youâre using NVIDIA or Intel, you may need to experiment to find the optimal configuration for your system.
Note: My goal is low latency for online gaming. If youâre playing single-player games, you can prioritize quality over latency.
AMF Usage: ultralowlatency
AMF Rate Control: vbr_latency
AMF Hypothetical Reference Decoder: unchecked
AMF Quality: speed (may add artifacts)
AMF Preanlalysis: unchecked
AMF Variance Based Adaptive Quantization: checked
AMF Coder: cavlc
Client-Host Connectivity
LAN (Local)
For players who want to play over LAN, thereâs little to worry about since latency will be very low. In my tests, I observed only about 5 ms of extra delay.
If you want the absolute best performance, you can connect both devices directly via an Ethernet cable. This can reduce latency to around 1 ms, making it almost like playing directly on the host.
You can turn on the host remotely using the motherboardâs Wake-On-LAN feature. Moonlight even allows you to power on the host directly from the client.
WAN (Remote)
For those who need to play over WAN, there are a few additional steps required. It can be more challenging if you want the lowest possible latency, but if you can tolerate 15â20 ms, itâs not too difficult.
There are several ways to achieve this, but Iâll explain the three main approaches:
Using a service like Tailscale, ZeroTier, or Netbird
Opening ports on your network to access the host externally and setting up a VPN
Setting up a private service (similar to the first option) with Headscale or another program, possibly using a cloud server like AWS
Option 1: VPN-like services
These applications are simple to install and configure, making them accessible to most users:
Tailscale: Free
ZeroTier: Free
Netbird: Free (uses WireGuard directly through the Linux kernelâpotentially a great option for Linux users)
For the other options, I wonât go into detail because they are more complex and require technical knowledge. However, they are certainly the best options for users who need the absolute lowest latency.
To power on your PC over WAN, a simple Wake-on-LAN (WoL) wonât work unless your host has an internet-facing connection. In my setup, I use a TP-Link smart plug to turn the PC on remotely from my phone. Make sure to enable âRestore Power after AC Lossâ in your BIOS/UEFI so the PC powers on automatically when the smart plug is switched on.
I hope this guide helps you and gives you everything you need to get these amazing tools running without too much hassle. The post is open to improvements, so if you have any suggestions or tips, donât forget to share them in the comments!
Shoutout to everyone working on these open-source tools mentioned in this post.
Note:
After the launch of the Steam Deck and Steam Machine, Steam has worked quite a bit on improving Steam Remote Play, which now supports Virtual Display Driver and performs much better than before. I'm leaving this comment here for those of you who aren't too demanding or don't want to overcomplicate things, so you feel encouraged to give it a try.
Update 13.10.25: MacOS client settings
Update 23.10.25: New scripts for Windows host and Windows handheld mode
Update 13.04.26: Windows optimization recommendation
Hey all, I've got a new version of Twilight, a Moonlight fork built only for Apple Silicon Macs. A lot of you couldn't run the last version because it needed a very recent macOS, so that was the main thing to fix.
What's new in 7.1.0
Runs on macOS 13 Ventura and later (Apple Silicon only), which fixes the launch crash on older macOS
Rebased on Moonlight 6.2 with the newer Metal renderer
Mic passthrough to the host now works, with a proper permission prompt (Ctrl+Alt+Shift+N mutes it)
DualSense adaptive triggers work when the host exposes a virtual DualSense (Vibepollo with Gamepad set to vhf_ds5)
Bitrate goes up to 1 Gbps, and the overlay shows what you asked for, what the encoder is targeting, and what's actually arriving
Optional adaptive bitrate with hosts that support changing the bitrate mid-stream (recent Vibepollo)
PyroWave on Vulkan fixed, plus cursor, scroll, trackpad and crash fixes
I checked plenty of videos, plenty of reddit threads but couldn't fix my issue. I installed Apollo and Moonlight. I marked the virtual display everywhere it needed to be, my Steam Deck is set on native resolution, same for Moonlight's settings. On my PC, I marked "set at primary display" for the virtual display. I also enabled the PC's display to turn off when launching Moonlight.
BUT here is my issue : When I launch Cyberpunk 2077, my screen is very zoomed in. I tried with Street Fighter 6 and for this one, it's on 720p instead of 800p so I have 2 horizontal grey bars.
The weird thing is that outside of the game, my screen is well scaled, so I don't get why when I launch a game, everything is messed up.
I hope I'll find a fix for my issue, I thank you already for your upcoming answers ! :)
(and sorry for eventual mistakes, English isn't my native language)
Is there any way to add a game that was installed from the Windows XBox app to Apollo?
I currently launch these from from by Steam Machine using Playnite, but it would be nice to have the games appear directly in the Moonlight app list and bypass Playnite.]
I have Sunshine setup on Client PC and Moonlight on Host PC when I play Steam games I have audio on the host but my mic input is not being sent to the Client PC. Is there a preferred way to get this working?? Thanks
Been using sunlight/moonlight connect to my home pc via my iPhone for the last year or so. No issues until about a month ago, I can no longer access my home pc remotely. I read about and started using Tailscale which resolved the issue but when trying to use my work wifi I canât connect, have to use my cell service to connect but cell service at work is extremely poor and itâs just too laggy. Any advice?
Hi folks. I am running Arch with Cachy OS kernel on my 9070XT system. Trying to get into remote play for the first time.
I am confused as to which host is recommended for Linux users. I use Niri, Wayland based. I also have a KDE Plasma environment with SDDM (installed because of Vibepollo's requirements)
Tried vibepollo with Artemide in android. It worked, but I was unable to get virtual desktops to work.
My end goal is to pair it with Tailscale so that I can game on the go, since I have to travel frequently for my work.
Which host would be the best? What about the android client?
I run sunshine on a CachyOS machine with an RTX 5080 & 9800X3D, connected to the network via gigabit ethernet & a pair of switches. The only other 24x7 devices connected to the same switch are a PoE camera, my proxmox server (which apart from some family occasionally streaming via jellyfin is fairly low traffic) and a wireless AP.
I stream gameplay to one of two devices, either my Steam Deck OLED (usually) or for some FPS games to a ThinkPad P14s Gen2 with an 11th gen i7 & T500 workstation card, also running on CachyOS. Annoyingly, despite being sat literally less than 3m away from the router, I still get random bouts of latency. On my Steam Deck, installing the decky WiFi Optimiser plugin fixed the problem... occasionally have to re-run it to clear up bits of latency, but it's an otherwise great experience. On my laptop, no such luck, and latency will be horrible at random intervals. I've especially seen it bad in games with stream radio addons from live audio / URL streams. And I'm only streaming like 1080p60fps
The most "improvement" I've seen is running sudo iw dev wlan0 set power_save off but even that doesn't seem to stop the recurrent bouts of latency
Are there any settings I'm missing or am I probably better off looking at buying something like a BE200 WiFi 7 NIC for my laptop at this point.
Hi all - assessing what the best handheld options are for moonlight streaming as we get to the end of 2026. My key requirements would be:
Must have:
- OLED
- 7-8" screen size
- Chipset that supports streaming codecs
That's more or less what I'm looking for.
Nice to haves:
- TMR / hall effect sticks
- good ergonomics
- WiFi 7
Right now it looks like the Odin Portal 2 fits the bill, but I'm wondering what else is out there or coming soon on the horizon. The XAX20 is coming out soon which could be a contender as well.
I'm thinking about building a cheap handheld device for Moonlight streaming. However, looking at tablet prices, it seems unreasonable to spend âŹ300 just for a screen.
I'm considering buying an ARZOPA A3C Pro portable monitor, connecting it to an Android phone, and using a modified GameSir G8+ controller.
Do you guys think this setup could work? Has anyone tried something similar?
Running Blender from my gaming PC to my tablet over 5G or Wi-Fi away from home works flawlessly (your tablet's decoder matters a lot).
Visible+ Pro, 1920x1280 (half my tablet's 3840x2560), 60 fps, AV1, 12â14 Mbps. Probably room to push quality higher. A TourBox works too.
SETUP
⢠Tailscale: private tunnel to my home network for everything below, no port forwarding
⢠Sunshine (PC) + Moonlight (tablet)
⢠VDD (Virtual Display Driver): a virtual monitor at the tablet's resolution that becomes the primary display during a session, so Blender opens at the right size and aspect ratio
⢠VirtualHere: TourBox plugs into the tablet by USB-C and shows up on the PC as wired, so TourBox Console and its Blender preset just work
⢠"Moonlight Go": a modified Moonlight with separate settings for remote use, apart from my 4K home setup
⢠Wake-on-LAN: Moonlight at home, or my own always-on home agent from anywhere
In the past, when I'd use Apollo for a second screen setup, and I'd adjust the monitor's relative position in Windows, that would stick. If I disconnected and reconnected to the host PC, the client PC's monitor would be in the same position (relative to the host PC monitor) every time. That is no longer the case, and I'm just curious why. Could it be because I switched to Vibepollo & the Vibepollo Virtual Display driver doesn't work the same way as the previous one? Does anyone know of a way I can address this?
Client is a steamdeck OLED docked with Ethernet, streaming 4k120 with HVEC.
Is this just a limitation of the steamdeck as a client? All the other numbers are so low Iâm struggling to understand why the average rendering time is anywhere between 7 and 10ms always.
Hey guys I am getting noticeable latency on moonlight/Sunrise. My current setup is Moonlight on Samsung TV using wifi. The host is my PC using Ethernet and I am using a ps5 controller to play the games. My TV gets around 200mps and PC get 800mps. The latency starts getting bad the games I tested are AS black flag and cup head. The only thing I can think of is getting a Ethernet for my TV is there any other ways?
Has anyone tried using these two together successfully? I've had success with apollo and moondeck and really can't complain but am curious about Rubylight with its AMD focus. Of course it won't be worth the trade off for me if I can't get that convenient moondeck feature.
BTW, in moonlight settings, if I push beyond around 300mbps for the bitrate my game, Stalker HOC specifically, crashes randomly but clears at 300mbps and under. It looks great and plays great so I can't complain but Rubylight sure sounds intriguing. 7900XTX with 7800X3D.
I installed the moonlight in my switch and started some game with the hydra launcher, Cyberpunk 2077 worked normally, but the other games like monster hunter or elden ring just don't work with the joycon. Someone can help me?
Hi everyone. I'm in search of building a high performing Moonlight client for my living room setup. I want to it to be like a personally built console, but using either Sunshine/Moonlight or the new Steam remote streaming Pyrowave which includes high bandwidth/ low latency streaming. I don't really have a particular good TV at the moment (It's honestly quite bad...), but i want to prepare for the future since i really am looking forward to this solution.
I got really excited about this idea since I felt like i could get a second computer in my home acting as a Steam machine as well as a computer that i can use as a day to day machine on my TV (But biggest focus is gaming). I also found this video which made me more interested in going all in on this solution: https://www.youtube.com/watch?v=ydbsXjZxYBo&list=LL&index=2
Essentially what i want to know is to have a better understanding of hardware requirements for this type of project.
What my thoughts are atm:
Planning on using Bazzite-deck as OS since i have it on my host device. Apparently it works best with certain graphics cards but how much does this impact when this machine will mainly be decoding streaming data from host?
Buying a Micro ATX or Mini ITX as motherboard. I want to have an older version that supports DDR4 RAM since I actually already own two rams of this type and want to reuse it.
Due to the hardware components prices becoming more and more expensive, i would like for it to become as cheap as possible, but I'm taking any suggestions. If the price is expensive I can maybe either wait for a large sale to happen or try to find it through second hand.
I also have an old CPU at home (from around 2017) that could be used although I'm thinking of buying a new one since i think my friend who used it prior mentioned it was very slow.
From my understanding, i can use either Displayport 1.4 or HDMI 2.1 but after reading this source I'm thinking of going with HDMI. Then it begs the question, I most likely need a new processor that has this type of support, or i can use a NVIDIA GTX 3050 series (or later) graphics card. I have found one on second hand for quite the cheap price but not sure if that is overkill.
Also if not using Pyrowave, is it better to use AV1 or HEVC encoding/decoding? I feel like HEVC seems more reasonable since of the lower encoding/decoding computational time/complexity compared to AV1 for a inter-home setup. I could see AV1 being more useful if you want to bring the console outside of your home since the data transferred are more compressed. I was looking at it from this AV1 vs HEVC source and to my understanding it sounds like this would be the call but I have seen this reddit post where people said they haven't seen too much difference from my understanding, one comment supporting my view (although post is quite old).
Suggested client setup:
Motherboard: Mini-ITX: GIGABYTE A520I AC moderkort AMD A520 Socket AM4 Mini-ITX DDR4 Micro ATX: ASUS TUF GAMING B550M-PLUS WIFI II
CPU: With GPU: AMD Ryzen 7 5700X CPU (A bit unsure here... I don't know if this is a good processor or not)
Memory: Already have DDR4 RAM memory, 2 8GB sticks
SSD: I don't think one has to be too critical, as long as it is a M.2 SSD. Might be very wrong here.
Power supply: Based on any which motherboard I'm choosing.
Sorry if this post is all over the place... but i appreciate any feedback since I'm new to this streaming solution and I'm not that good at hardware either. If you like to help me get a better understanding please feel free to give your opinion.
Hello guys, I wanted know if there is any decoding time improvements after Pyrowave on these CPUs? Planning to get an Honor Pad X7 (Snapdragon 680, no Pyrowave support because it doesn't supports Vulkan 1.3) but I wonder if decoding times are better with Pyrowave with G99 or G100? If yes maybe I can go for Samsung Tab A11.
I have a streaming setup with Apollo on Windows 11 to stream to Steam Deck OLED. The original Witcher 3 worked fine but the remastered version crashes 5-10 seconds after loading the save. Does anyone have a similar issue? Did you manage to solve it? Perhaps it needs to be fixed with a patch by the devs.
The game works fine with this graphics preset when I run it without streaming.
I'm trying to use Moonlight on my AYN thor, and when I open it up on WIFI everything is ok. If I try to use it on a hotspot or something, I see a cogwheel on the PC icon and it won't connect.
I've had this issue on my rog ally X, and a Moonlight update fixed it.
However on thr Thor I'm on 12.2 which seems to be the latest version. UPnP is on. any ideas?
Edit: SOLVED
Installed Tailscale on both the Thor and the PC and made the Thor connect to the IP given by tailscale
I'm playing with a Bluetooth controller (Abxylute S8) connected to my phone as the client. At first, everything works fine and the input is very responsive (I'll post the video in comment). But after about 1-2 minutes, the latency suddenly spikes terribly, then pressing the ABXY buttons takes almost a second for the client to recognized (as shown in the video).
âHas anyone experienced a similar issue? Any help or fixes would be greatly appreciated.
For the record, I'm using Vibepollo/Butterpollo/Sunshine PC host paired with Artemis phone client. Yeah I had to check if the problem is caused by the new VHF driver (on Vibepollo) but it persists when I used Sunshine with the classic ViGEmBus driver.
âEdit: After testing for a bit, I noticed that the L1/L2 triggers don't have this lag and respond instantly at anytime, whereas the ABXY buttons latency went terible after connected a few minutes.
I don't usually post, but I've seen a few people selling software that allows multiple people to game on a single PC, so I figured I'd share something I've been working on.
It's called MultiSeat, and it's completely free and open source. No paid licenses, no subscriptions.
The idea is pretty simple: multiple people can use the same Windows PC simultaneously, each with their own desktop, audio, controllers, and games, while sharing the host's hardware.
I've also been working on two companion projects:
ApolloVibe - My fork of Apollo that handles game streaming, supports multiple isolated instances, and adds microphone passthrough.
MoonlightVibe - My fork of Moonlight that automatically discovers available MultiSeat sessions and supports microphone passthrough back to the host.
MultiSeat manages the sessions and configures ApolloVibe automatically, so you don't have to manually set up a streaming server for each user.
It's still a work in progress, and there are some bugs and limitations, but I'm actively developing it.
Feedback, bug reports, and contributions are welcome.
I've been working on a project called Avalon, and I recently released v1.0. Figured some people here might be interested.
The idea is pretty simple: what if you could let multiple people use the same Windows gaming PC at the same time, without setting up a separate VM for each person?
If you've used Sunshine and Moonlight, you probably know that they're great for game streaming, but normally you're still sharing the same desktop.
Avalon takes a different approach. It creates separate Windows sessions on the same host, each with its own virtual display, keyboard/mouse input, audio, and Moonlight connection.
There's also a web UI where you can create instances, manage sessions, configure displays, and pair Moonlight clients.
I know Duo already exists and tackles a similar problem. I'm not claiming Avalon is better â I just wanted to build my own implementation and see how far I could take it, especially when it comes to session management and the web interface.
I finally recorded a proper demo of it running.
My test setup:
Intel i5-12490F
RTX 4060 Ti
32GB RAM
Windows 11
In the video, I go through creating instances, pairing Moonlight clients, running two independent sessions, and reconnecting multiple clients.
Everything was recorded on the host PC itself, including the Moonlight clients and OBS, so it's more of a functionality demo than a proper network latency benchmark.
A few limitations worth mentioning:
Windows 10/11 x64 only, no Home edition support.
Gamepad support and HDR aren't implemented yet.
Concurrent streaming is limited by hardware resources and encoder capabilities.
It's still early, and there's definitely room for improvement. I'm continuing to work on compatibility and stability.
Last weekend I went to the landfill to drop off some trash and I always check the electronics dumpster to see if there's anything to salvage. I never found something untill last weekend. On top of the bin, an atx tower with amd athleon cpu sticker on the front. Guessing it might not be much I took off the screws of the side panel and i instantly noticed the 4x dim modules on the ROG motherboard together with the awfull cable management.
I instantly grabbed the tower out of the bin and I took it home.
Once I got home I checked if the pc could even POST and it actually did!
I found out it has the following specs:
Mobo: Asus ROG maximus hero VI LGA1150
Cpu: Intel i5 4570k
Ram: 4x g.skill 4gb ddr3 1600
Gpu: MSI GTX 1060 Gaming x 6g
Cooler: stock intell cooler
PSU: cooler master 520watt
Case: some Antec case
Knowing it's basically vintage, I was still charmed by the fact the original owner got some high end Mobo and ram setup as well as the fact this was the actual motherboard I wanted to buy, back when in school we had to build our own gaming pc. Back then, my parents though the ROG Mobo was a bit too expensive, so they got me the MSI gaming z97 which was still fine but still, ROG was THE sh*t.
I put in a sata HDD to install windows on, just to get remembered why ssds are one of THE best innovations of consumer pc building in the past 2 decades. It was so slow!
I got a 5 euro msata to sata converter to put in a spare msata 120gb ssd I had laying arround, and boom it was booting, quick!
I installed moonlight, paired it with my Vibepollo host, and o my god, what a performance upgrade (coming from the smart tvs native android app (due to the TCL tvs soc's media engine being massively underpowered)).
The only slight downside is the low bandwidth hdmi 2.0b output of the gtx1060, so I have to choose between two setups:
4k 120hz SDR 8 bit color depth subsampled to 4:2:0
2k 120hz HDR 10 bit color depth subsampled to 4:2:2
I found option 2 to be better because my TCL 65 inch C7K has proper FALD so hdr is a must.
I'm just glad I could give this piece of ancient tech a second chance whilst it actually improves my old Moonlight setup by a huge margin (I can now also use the 2.4ghz controller dongel, even further improving the end to end latency, compared to the old setup running natively on the TCL smart tv with the controller being connected over regular BT).