SUNSHINE & MOONLIGHT
Ultra-smooth home game streaming
Promising the Sun and the Moon, Michael Reed’s heavenly bodies promise perfect gaming streaming on most PC hardware.
Credit: https://moonlight-stream.org, https://github.com/LizardByte
OUR EXPERT
Michael Reed is a consummate Linux professional who has been moonlighting for us so that he can live in the sunshine. (are we actually paying for these gags?–Ed)
You can install the Sunshine server on to a VM to control it. We found that we had to enable 3D acceleration before it would work in VirtualBox for simple desktop sharing. Performance was good.
Sunshine and Moonlight are open source server and client programs that allow desktop sharing and game streaming across a network. Originally, both were a reimplementation of an Nvidia protocol, but in their current state, they don’t require any Nvidia hardware or software to run. Having said that, they can take advantage of GPU hardware for video encoding, if you have it.
You can also share games and desktops between different platforms and operating systems. The platform support for the client side app is even more extensive and includes the Raspberry Pi along with mobile and smart TV-type devices, as well as regular Linux, Windows and Mac computers. What Moonlight and Sunshine offer together is completely free, highly performant and extremely easy to set up and use.
Whether you are gaming or running desktop apps, this is how it works: as you sit using Moonlight on the client computer, the input from your keyboard, mouse and gamepad are sent through the network to the computer running Sunshine. Sunshine uses extremely efficient audio and graphics compression codecs to send the screen and the audio of the computer back to the Moonlight program, so that you feel as though you are running the software locally on the client computer.
How you connect everything is up to you. For example, you could run Sunshine in a virtual machine and run Moonlight on a smart TV to give you a Linux desktop on your TV. You could take your laptop into the next room and have access to your desktop PC. The experience in terms of latency and visual quality depends on the power of your server computer and speed of your network. With a few compromises in that area, you can even use the setup over the internet – handy if you need the power of your main computer on your tablet or phone when you’re out and about.
Moonlighting clients
Sunshine (the server) and Moonlight (the client) are installed separately as they are different open source projects that use the same protocol.
The Moonlight website (https://moonlight-stream. org) sells the project a bit short because it doesn’t make it clear that the client can operate without the proprietary Nvidia software on the server end. We’d have preferred it if the site bigged up the open source, multiplatform side of things, because there is an open source server in the form of Sunshine, which implements the GameStream protocol and works perfectly with Moonlight. It’s also the case that you don’t need any Nvidia hardware on either the client or the server machine. If you do have a supported Nvidia, AMD or Intel GPU, the software can take advantage of it, however. If you don’t, software encoding is perfectly viable if your CPU is reasonably powerful.