Apollo: Self-Hosted Desktop Stream Host for Low Latency Gaming

Summary
Apollo is a powerful, self-hosted desktop stream host, forked from Sunshine, designed to provide low-latency streaming with native client resolution. It supports cloud gaming server capabilities across AMD, Intel, and Nvidia GPUs, offering both hardware and software encoding. A user-friendly web UI simplifies configuration and client pairing.
Repository Info
Tags
Click on any tag to explore related repositories
Introduction
Apollo is a powerful, self-hosted desktop stream host, forked from Sunshine, designed to provide an exceptional low-latency streaming experience with native client resolution. It integrates seamlessly with Artemis (Moonlight Noir) clients, offering robust cloud gaming server capabilities. Apollo supports hardware encoding across AMD, Intel, and Nvidia GPUs, with software encoding also available. A user-friendly web UI allows for easy configuration and client pairing from any web browser or mobile device.
Key features include:
- Built-in Virtual Display with HDR support, automatically matching client resolution and framerate.
- Comprehensive permission management for connected clients.
- Clipboard synchronization between host and client.
- Commands for client connection/disconnection, enabling features like auto-pause/resume games.
- Input-only mode for specific use cases.
Installation
Apollo offers several convenient installation methods:
Direct Download
The recommended way to install Apollo is by downloading the latest release directly from the official GitHub Releases page.
WinGet
For Windows users, Apollo can be installed via WinGet. Open an elevated PowerShell window and run the following command:
winget install ClassicOldSong.Apollo
You will need WinGet installed first.
Chocolatey
Alternatively, you can install Apollo using Chocolatey. After ensuring Chocolatey is installed on your system, execute the following command in an elevated PowerShell/CMD window:
choco upgrade apollo -y
This command can also be used to upgrade Apollo, and it can be added to a scheduled task for automated updates. More details are available on the Chocolatey package page.
Key Features and Usage
Apollo distinguishes itself with several advanced features designed to enhance your streaming experience:
Virtual Display
Apollo leverages SudoVDA for its virtual display, offering automatic resolution and framerate matching for your Artemis/Moonlight clients. Unlike other solutions, Apollo assigns a fixed identity for each client, allowing Windows to natively remember and manage display configurations. Currently, virtual display support is Windows only, with Linux support planned for the future.
Permission System
A robust permission system allows granular control over client access. The first client paired with Apollo is granted full permissions by default. Subsequent clients will initially have limited permissions, such as View Streams and List Apps. You can easily grant additional permissions like Launch Apps, Mouse Input, and Keyboard Input as needed.
Dual GPU Laptops
Apollo seamlessly supports dual GPU setups. To utilize your dedicated GPU (dGPU), simply set the Adapter Name to your dGPU and enable Headless mode in the Audio/Video tab, then save and restart your computer. This eliminates the need for dummy plugs, as the image is rendered and encoded directly from your dGPU.
HDR Support
Apollo supports HDR streaming from Windows 11 23H2 and generally on 24H2. While HDR can be complex due to varying standards and device capabilities, Apollo and SudoVDA are designed to handle it effectively. Users with compatible Apple products or a deep understanding of HDR workflows often achieve good results.
Why Use Apollo?
Apollo stands out as an excellent choice for self-hosted desktop streaming due to its commitment to low latency, native resolution support, and comprehensive hardware compatibility. The project's philosophy, born from a desire for more open contribution and responsive development, ensures that user ideas and efforts are appreciated and integrated. With features like an intelligent virtual display, granular permission control, and seamless dual GPU support, Apollo provides a highly optimized and user-centric streaming solution for gaming and remote desktop access. It offers a robust and evolving platform for those seeking greater control and performance from their streaming host.
Links
- GitHub Repository: https://github.com/ClassicOldSong/Apollo
- Official Releases: https://github.com/ClassicOldSong/Apollo/releases
- Documentation (Sunshine Docs): https://docs.lizardbyte.dev/projects/sunshine
- Wiki: https://github.com/ClassicOldSong/Apollo/wiki
- Artemis (Moonlight Noir): https://github.com/ClassicOldSong/moonlight-android