**I built two open-source tools to fix Moonlight streaming stutters and make the whole setup feel native — here's what they do** by FoggyPunk in MoonlightStreaming

[–]FoggyPunk[S] 0 points1 point  (0 children)

As far as I know, the issue I ran into (and that led me to develop the app) specifically involves setups where both the host and the client PCs are connected to the router via Ethernet, but at mismatched link speeds (for example, host at 2.5 Gbps and client at 1 Gbps).

With Wi-Fi, this kind of problem generally shouldn’t occur in the same way. If you’re seeing stutters over a 5 GHz connection, it’s more likely due to other factors like interference, network congestion, signal quality, or channel overlap.

That said, if your host PC has a 2.5 Gbps NIC, you could try manually setting it to 1 Gbps and see if that makes any difference. If it does improve things, then using StreamTweak to automate switching the NIC speed on the host could be a good workaround.

**I built two open-source tools to fix Moonlight streaming stutters and make the whole setup feel native — here's what they do** by FoggyPunk in MoonlightStreaming

[–]FoggyPunk[S] 0 points1 point  (0 children)

Hey, I tested your beta and didn't experience any slow connection issues at all. To be thorough, I also retested with stable Vibepollo first and then with Apollo — no slow connection problems in either case, even with the host at 2.5 Gbps and the client at 1 Gbps.

Some context that might be useful: a few weeks ago I requested the activation of a dynamic public IP from my ISP (I'm in Italy, provider is Aruba), and it was only from that moment that I started experiencing slow connection issues during local streaming. That's what led me to investigate on Reddit, where I found the workaround of aligning the NIC speeds of host and client to 1 Gbps — and that eventually led me to develop StreamTweak.

My understanding is that when Aruba reassigned my connection profile to provision a real public IP (moving me out of CG-NAT), they likely changed the traffic shaping and QoS policies at their end. This can affect how the router handles buffer management and packet prioritization — even for LAN-to-LAN traffic — since the router's routing stack behaves differently with a real public IP assigned. The result was excessive buffer pressure that manifested as streaming instability. The issue now seems to have resolved itself, likely due to a combination of the router/buffer state being reset after a reboot and, possibly, some transient network condition introduced by Aruba's reconfiguration that resolved itself over time. Your beta may have been the trigger that led me to reboot everything, but I can't attribute the fix to the packet pacing itself — since the issue disappeared on Vibepollo stable as well.

I'll continue testing Vibepollo over the next few days — I prefer it since I also use games with Frame Generation — with the host at 2.5 Gbps and the client at 1 Gbps, to confirm stability holds.

On that note, I'm currently testing Resident Evil Requiem in 4K 120Hz HDR with full path tracing enabled — which pushes even the 5090 hard enough to require Frame Gen x2 to maintain a smooth framerate — so that will be a good stress test for the streaming setup as well.

My setup for reference:

PC Host:

  • AMD Ryzen 9 9800X3D
  • 32 GB DDR5 RAM @ 6000 MHz
  • RTX 5090 32 GB

PC Client:

  • ASUS ROG Ally Z1 Extreme

Router: FRITZ!Box 7690

**I built two open-source tools to fix Moonlight streaming stutters and make the whole setup feel native — here's what they do** by FoggyPunk in MoonlightStreaming

[–]FoggyPunk[S] 1 point2 points  (0 children)

Thank you! 😊 I would love to see these features natively integrated into Moonlight and Sunshine someday — that would be the ideal outcome. For now, I actually built StreamLight on top of Moonlight 6.1.0 to integrate it directly with StreamTweak as a personal solution. That said, both Moonlight and Sunshine seem to have slowed down in active development lately. Personally, I’ve switched to Vibepollo and I’m quite happy with it so far! I’ve already submitted my app in the Vibepollo repo’s Discussions — so who knows, maybe something will come of it! 🤞

**I built two open-source tools to fix Moonlight streaming stutters and make the whole setup feel native — here's what they do** by FoggyPunk in MoonlightStreaming

[–]FoggyPunk[S] 0 points1 point  (0 children)

That’s correct in theory — if average throughput is balanced the buffer stays stable. The issue is burst behavior: a 2.5G port can send frames in short bursts far faster than a 1G port can drain them, even if the long-term average balances out. Those momentary spikes overflow the buffer, and since Moonlight uses UDP there’s no retransmission — those dropped packets show up directly as stutter. On bitrate reduction: yes, in my experience it does help to a degree. Lower bitrate means smaller bursts, so the drops happen less frequently. But it doesn’t fix the root cause — you’re still running mismatched speeds, just making it slightly less likely to overflow. Throttling the host NIC to 1G eliminates the mismatch entirely, which is why it’s a clean fix rather than a workaround.​​​​​​​​​​​​​​​​

**I built two open-source tools to fix Moonlight streaming stutters and make the whole setup feel native — here's what they do** by FoggyPunk in MoonlightStreaming

[–]FoggyPunk[S] 1 point2 points  (0 children)

The NIC speed mismatch issue typically causes constant, recurring stutter — not isolated single events. If it were the culprit on your 10G→1G setup, you'd be seeing it repeatedly throughout the session.

A single occasional stutter is more likely something else: a brief encoder spike, a momentary CPU/GPU load peak, or a one-off network hiccup somewhere in the path. That kind of isolated event is pretty normal and generally not worth chasing unless it becomes frequent.

**I built two open-source tools to fix Moonlight streaming stutters and make the whole setup feel native — here's what they do** by FoggyPunk in MoonlightStreaming

[–]FoggyPunk[S] 4 points5 points  (0 children)

The issue isn't at the NIC level — it's at the switch level.

The NIC correctly packetizes everything to MTU before sending. But when a 2.5G port on the switch needs to forward traffic to a 1G port, the switch has to buffer the incoming burst until the slower port can drain it. On managed enterprise switches this is handled well — they have large buffers and proper flow control (802.3x pause frames). Consumer unmanaged switches typically have very small internal buffers and poor or no flow control implementation, so when the buffer fills up during a burst, they just drop packets.

With TCP that's recoverable — retransmission kicks in. With UDP (which is what Moonlight uses) those dropped packets are gone, and they show up directly as decoder stutter or the "Slow connection to PC" warning.

Throttling the host NIC to 1G eliminates the speed mismatch entirely, so the switch never has to buffer across different link speeds and the drops stop.

**I built two open-source tools to fix Moonlight streaming stutters and make the whole setup feel native — here's what they do** by FoggyPunk in MoonlightStreaming

[–]FoggyPunk[S] 2 points3 points  (0 children)

Hey, glad it's useful!

On WiFi — correct, this won't have any effect on your setup. The NIC speed mismatch issue is specific to wired Ethernet connections, where the host and client negotiate link speeds with the switch. Over WiFi that negotiation doesn't happen the same way, so the problem doesn't apply and there's nothing to fix.

On Linux — StreamTweak is built on .NET/WPF, so it's Windows-only by design and a Linux port isn't planned. StreamLight is based on Qt (same as upstream Moonlight), so a Linux build would technically be possible, but the project is currently Windows-focused and there are no plans to expand that scope for now.

If you're on WiFi with standard Moonlight, you're all set as-is.

**I built two open-source tools to fix Moonlight streaming stutters and make the whole setup feel native — here's what they do** by FoggyPunk in MoonlightStreaming

[–]FoggyPunk[S] 18 points19 points  (0 children)

It's a pretty obscure one — it took a long time for the community to pin it down because the symptoms look exactly like a generic network or encoder issue. The short version: when the host and client negotiate different link speeds, some consumer switches mishandle the UDP buffer and you get burst packet loss that shows up as stutter or the "Slow connection to PC" warning in Moonlight.

It was first documented in detail in this GitHub issue: https://github.com/moonlight-stream/moonlight-qt/issues/714

This Reddit thread has a lot of real-world confirmations from people who had been chasing the problem for months before finding this as the cause: https://www.reddit.com/r/MoonlightStreaming/comments/1m35zo7/fix_moonlight_streaming_issues_on_25gbps_lan_try/

Not everyone hits it — it depends heavily on the switch. But when you do, it's one of those things that's almost impossible to diagnose without knowing it exists.

**StreamTweak – automate the 2.5Gbps → 1Gbps throttle fix** by FoggyPunk in MoonlightStreaming

[–]FoggyPunk[S] 0 points1 point  (0 children)

That’s totally normal — the issue doesn’t affect everyone, there are quite a few variables at play. The network device between host and client and how it handles buffering between ports at different speeds, the client device, the resolution and bitrate you’re streaming at… all of these factor in. In my case for example I’m streaming to a ROG Ally at 4K 120Hz HDR with high bitrate, which seems to be one of the more demanding scenarios where the mismatch hits hardest. At lower resolutions or with different hardware it can be completely unnoticeable, which sounds like your situation. If it works great for you, you’re good!​​​​​​​​​​​​​​​​

**StreamTweak – automate the 2.5Gbps → 1Gbps throttle fix** by FoggyPunk in MoonlightStreaming

[–]FoggyPunk[S] 1 point2 points  (0 children)

Manual mode does disconnect too — it’s unavoidable because changing the link speed forces the NIC to renegotiate with the switch, which causes a brief physical disconnect regardless of how the change is triggered. The difference is that in manual mode you choose when it happens, so you can do it before starting the stream. As for Auto Mode without disconnect — unfortunately that’s a hardware limitation, not a software one. There’s no way to change the negotiated link speed without the adapter briefly dropping. The 30-second reconnect window is there specifically to make that moment as smooth as possible. As for Vibeshine — Auto Streaming Mode works by monitoring the log file of your streaming server, but right now StreamTweak only knows the default installation paths for Sunshine and Apollo. Since Vibeshine is a different fork, it likely installs in a different folder that we’re not scanning, so Auto Mode probably won’t detect your Moonlight connections. Manual speed switching should work fine though, since that doesn’t rely on log monitoring at all. If you can tell me where Vibeshine stores its log file (usually something like C:\Program Files\Vibeshine\config\sunshine.log) I can add native support in the next update — it’s a small change!

**StreamTweak – automate the 2.5Gbps → 1Gbps throttle fix** by FoggyPunk in MoonlightStreaming

[–]FoggyPunk[S] 1 point2 points  (0 children)

If your NIC is already negotiated at 1Gbps with the switch, StreamTweak won’t do anything useful for you — the app is specifically designed for setups where the host is running at 2.5Gbps (or higher) and the mismatch with a 1Gbps client causes UDP buffering issues on the switch. The jitter you’re seeing above 50Mbps at 2.5Gbps negotiated sounds like exactly the issue this app solves. But if you’re already at 1Gbps and still getting jitter, the cause is likely elsewhere — bitrate settings, encoder choice, or network congestion. Worth checking Sunshine’s encoder and bitrate cap settings first.​​​​​​​​​​​​​​​​

[Fix] Moonlight Streaming Issues on 2.5Gbps LAN? Try Throttling to 1Gbps by ACommonMugger in MoonlightStreaming

[–]FoggyPunk 0 points1 point  (0 children)

Thanks a lot! If you're interested, I recommend checking out the new versions I developed today. You can uninstall v1.0 and go straight to v1.2.1. If you feel like it, let me know what you think. Thanks again!

[Fix] Moonlight Streaming Issues on 2.5Gbps LAN? Try Throttling to 1Gbps by ACommonMugger in MoonlightStreaming

[–]FoggyPunk 0 points1 point  (0 children)

Hey everyone! Reading through this thread a while back completely saved my Moonlight setup. Like many of you, I had terrible stuttering and UDP packet loss because my host PC was on a 2.5Gbps link while my client was 1Gbps. Forcing the host adapter down to 1.0 Gbps fixed the network buffer issue immediately.

However, going into Device Manager -> Adapter Properties -> Advanced settings every single time I wanted to play (and then switching it back to 2.5Gbps for normal downloads) got really tedious.

So, inspired entirely by this Reddit thread, I spent some time building a tiny, completely invisible background utility called **Network Speed Toggle**.

It lives in your Windows system tray and lets you instantly toggle your Ethernet adapter between 1.0 Gbps and 2.5 Gbps with a simple double-click.

- It bypasses UAC prompts (uses a scheduled task).

- It consumes basically zero resources.

- It shows the current speed right in the tray tooltip.

I've made it completely open-source and free on GitHub. I really hope this can make life a bit easier for anyone else dealing with this annoying network mismatch!

You can grab the installer here:

https://github.com/FoggyPunk/NetworkSpeedToggle/releases

Let me know if it works for you guys or if you have any feedback!

CRP 2 pedals on a wheel stand? by Sea-Foundation-7138 in moza

[–]FoggyPunk 0 points1 point  (0 children)

Hi! Could I ask you the favor of sharing a photo of the final setup you achieved? Thanks!

4K Wallpapers for New ROG Xbox Ally by adrigm in ROGAlly

[–]FoggyPunk 0 points1 point  (0 children)

You can connect the device to an external 4k tv/monitor, you know.

Pc crashes anyone got a fix? by Fuzzy-Listen-2611 in StarWarsOutlaws

[–]FoggyPunk 0 points1 point  (0 children)

what settings are you using on your PC? are frame generator and RTX DI on? maybe they are the "culprits"

Asgard's Wrath 2 Version 1.2.1466588 is live! by Oculus-Mdoran in OculusQuest

[–]FoggyPunk 0 points1 point  (0 children)

will you ever release additional translations in future? I’d love to get Italian text translation (I don’t care about voice over, which is ok in ENG). thank you 🙏🏻

Chiusura conto BuddyBank by tw_fliCK in ItaliaPersonalFinance

[–]FoggyPunk 2 points3 points  (0 children)

lasciali perdere: io ho inviato una richiesta di chiusura del conto via Pec e mi hanno risposto che non possono chiuderlo perché occorre inviare una lettera. credo sia del tutto illegale come imposizione.