Moonlight (formerly Limelight) is an open source implementation of NVIDIA's GameStream protocol. We implemented the protocol used by the NVIDIA Shield and wrote a set of 3rd party clients.

You can stream your collection of PC games from your GameStream-compatible PC to any supported device and play them remotely. Moonlight is perfect for gaming on the go without sacrificing the graphics and game selection available on PC.

Stream at up to 4K resolution

If you can see it on your PC, you can stream it using Moonlight, including your full Windows desktop at 4K 120 FPS with a capable client.

Support for 120 FPS streaming

Stream at up to 120 FPS using the new Moonlight PC client with the option to disable V-Sync for the lowest possible latency.

Run your own cloud gaming server

You can host your own gaming server on many residential ISPs by just installing the Moonlight Internet Hosting Tool on your gaming PC.

Multiple client platforms

If you have an Android device, iOS device, Apple TV, PC or Mac, Chromebook, PS Vita, or even a Raspberry Pi, you can use Moonlight to stream games to it.

Open source

The code for our Moonlight clients is hosted on GitHub under the GPLv3 license. We welcome contributions and would be happy to help with ports to new platforms.

Completely free

Moonlight is a project run by the community, not a company. We have no interest in pushing ads, bundled services, paid versions with extra features, or subscriptions.

Complete setup guide can be found here. Hosting setup can be found here.

What's New:

  • Added the ability to define a custom streaming resolution using the UI
  • Added the option to capture system key combinations (Alt+Tab, Ctrl+Shift+Esc, Win+Tab, etc) in fullscreen mode
  • This feature requires GeForce Experience v3.20 or later on your host PC
  • Updated gamepad mappings are automatically downloaded each time Moonlight launches
  • The performance overlay is now supported for Linux clients using VAAPI and VDPAU hardware acceleration
  • Native ARM64 build for Windows (Surface Pro X, Galaxy Book S, etc). See the note in the Known Issues section below.
  • Native ARM64 build for macOS (M1-based Macs). ARM64 support for macOS is currently in beta.
  • Unified all Windows builds into a single installer download (x86 + x64 + ARM64)
  • Added the option to enable "Direct Launch" which immediately launches the specified game when clicking on a PC
  • Added the option to mute audio when the Moonlight window loses input focus
  • Added the option to toggle background gamepad input
  • Added the option to invert scroll direction
  • Added the option to swap gamepad button layout to Nintendo-style
  • Added the option to start the Moonlight UI in fullscreen mode
  • The Moonlight icon on macOS has been updated to match the Big Sur style
  • The failing TCP or UDP ports are now displayed when the connection fails

Behavior changes:

  • The Windows installer now downloads the Microsoft C++ Runtime as needed to save space. If you don't have an Internet connection during installation, you can use the portable version or install the runtime manually from here.
  • The frame pacing behavior that was previously enabled under the V-Sync option on macOS is now controlled by the frame pacing toggle instead
  • Input from gamepads is now ignored while Moonlight is in the background. You can use the new settings toggle to change this behavior.
  • The "Play audio on host PC" option has been changed to "Mute host PC speakers while streaming" and moved to the "Audio Settings" group to better convey the purpose of the toggle

Bugfixes:

  • Fixed PS4 controllers not reading inputs during haptics in some games
  • Fixed some slow decoders causing the receive time value to increase rather than the decode time
  • Fixed detection of audio output device change on macOS
  • Fixed a performance regression in video decoding performance on macOS Big Sur
  • Native resolution options now refresh each time the settings page is opened, rather than once per launch of Moonlight
  • Fixed no video or audio while streaming over Internet connections that drop packets with QoS tagging enabled
  • Improved connection testing accuracy for connections with low MTUs
  • Updated AppImage for compatibility with VAAPI drivers built for libva 2.9 and 2.10
  • Fixed inability to open an app's context menu with a gamepad
  • Fixed UI not appearing when launched from the console on RetroPie
  • Fixed aspect ratio of video stream on Raspberry Pi
  • Fixed drawing letterbox or pillarbox over the desktop background on Raspberry Pi
  • Audio now works out of the box on Raspberry Pi with the PulseAudio Raspbian update. Users running older distros that still use ALSA may need to set PULSE_SERVER=nothing for audio to work.
  • Fixed color of Discord icon in toolbar on the Raspberry Pi client

Known Issues:

  • Software decoding doesn't work properly on Macs from 2011 or earlier due to lack of support for the Metal rendering API. If you want to use software decoding on these Macs, you should continue to use Moonlight v2.1.0 until a fix is released.
  • Location Services on macOS may cause periodic lag and stuttering on Wi-Fi due to background network scans. To avoid the issue, disable Location Services on your Mac by going to "System Preferences -> Security & Privacy -> Location Services"
  • Remote desktop mouse mode and touchscreen input may behave incorrectly when the host PC has more than one monitor. This bug is on Nvidia's end and will require a GeForce Experience update to fix.
  • Touchscreen support can be buggy on Linux (X11) when mouse capture is enabled. You may need to enable remote desktop mouse mode for it to work correctly.
  • Surface Pro X devices (and possibly other ARM devices) must be upgraded to Windows 10 2004 or later to avoid a video glitch
  • When running Moonlight on Windows 7, the system keyboard shortcut capture feature doesn't capture Alt+Tab.