Artemis Qt is an enhanced cross-platform client for NVIDIA GameStream and Apollo/Sunshine servers. It brings the advanced features from Artemis Android to desktop platforms.
Artemis Qt is built upon the excellent foundation of Moonlight Qt by the Moonlight Team. We extend our sincere gratitude to the original developers for creating such a robust and well-architected streaming client.
Key Credits:
- Core streaming technology - Moonlight Qt
- Enhanced features inspiration - Artemis Android by ClassicOldSong
- Server compatibility - Apollo and Sunshine projects
If you find Artemis Qt useful and want to support continued development, you can:
Your support helps cover development time, testing on multiple platforms, and keeping the project maintained. Every contribution, no matter how small, is greatly appreciated! ๐
Other ways to support:
- โญ Star the repository to show your appreciation
- ๐ Report bugs and help improve the experience for everyone
- ๐ Share Artemis with other gamers and streamers
- ๐ป Contribute code or documentation improvements
Artemis Qt includes all the features of Moonlight Qt, plus these enhanced capabilities:
- ๐ Clipboard Sync - Seamlessly sync clipboard content between client and server - โ COMPLETE
- โก Server Commands - Execute custom commands on the Apollo/Sunshine server - โ COMPLETE
- ๐ OTP Pairing - One-Time Password pairing for enhanced security - โ COMPLETE
- ๐ฎ Quick Menu - In-stream overlay menu for easy access to controls - โ COMPLETE
- ๐ฅ๏ธ Fractional Refresh Rate - Client-side control for custom refresh rates (e.g., 90Hz, 120Hz) - โ COMPLETE
- ๐ Resolution Scaling - Client-side resolution scaling for better performance - โ COMPLETE
- ๐ผ๏ธ Virtual Display Control - Choose whether to use virtual displays - โ COMPLETE
- ๐ UUID-Based App Launching - Modern app identification system for Apollo/Sunshine servers - โ COMPLETE
- ๐ Automatic Fallback - Seamlessly falls back to legacy app IDs when UUIDs unavailable - โ COMPLETE
- ๐จ Visual Rebranding - Official Artemis icons and art:// protocol compatibility with Apollo Android - โ COMPLETE
- ๐ Development Builds - Automated development builds with changelogs for all platforms - โ COMPLETE
- ๐ฑ App Ordering - Custom app ordering without compatibility mode
- ๐ Permission Viewing - View and manage server-side permissions - โ COMPLETE
- ๐ฏ Input-Only Mode - Stream input without video for remote control scenarios
Artemis Qt is specifically optimized for handheld gaming devices like the Steam Deck:
- Embedded Mode - Optimized UI for handheld devices
- GPU-Optimized Rendering - Efficient rendering for lower-power GPUs
- Touch-Friendly Interface - Designed for touch and gamepad navigation
- Power Efficient - Optimized for battery life
- Gamepad Shortcuts - Built-in gamepad combinations for quick access to features
Keyboard: Ctrl + Alt + Shift + \
Gamepad: Select + L1 + R1 + Y
๐ก Pro Tip: The Quick Menu provides instant access to clipboard sync, server commands, streaming controls, and more - all without leaving your game!
Keyboard Shortcuts (All require Ctrl + Alt + Shift prefix):
\- Toggle Quick Menu (NEW!)Q- Quit streamE- Quit stream and exit applicationS- Toggle performance stats overlayX- Toggle fullscreenM- Toggle mouse capture modeZ- Toggle input captureC- Toggle cursor visibilityV- Paste clipboard textL- Toggle pointer region lockD- Minimize window
Gamepad Shortcuts:
Select + L1 + R1 + Y- Toggle Quick Menu (NEW!)Start + Select + L1 + R1- Quit streamSelect + L1 + R1 + X- Toggle performance stats overlay- Long press
Start- Toggle mouse emulation mode
Note: The Quick Menu provides easy access to clipboard sync, server commands, and other streaming controls during your session.
All downloads are available in Releases
Windows:
- x64 (Intel/AMD) - Full support with MSI installer and portable ZIP
- ARM64 - โจ NEW! Native support for Windows on ARM devices (Surface Pro X, Copilot+ PCs, etc.)
macOS:
- Universal Binary - Native support for both Intel and Apple Silicon Macs
Linux:
- x64 AppImage - Universal Linux package for x64 systems
- x64 Flatpak - Sandboxed package available via Flathub
- Steam Deck - Optimized builds for Valve's handheld gaming device
Development builds may show "Artemis.app is damaged" due to macOS security features. To fix this:
Option 1 (Recommended):
# Remove quarantine attributes
xattr -cr /path/to/Artemis.appOption 2:
- Go to System Preferences > Security & Privacy > General
- Click "Allow Anyway" when prompted about Artemis
- Try launching the app again
This is normal for development builds and doesn't indicate actual damage to the application.
๐ฅ Latest Development Features:
- ๐ฅ๏ธ Windows ARM64 Support - Native builds for Windows on ARM devices
- ๐ฎ Enhanced Quick Menu - New keyboard (
Ctrl+Alt+Shift+\) and gamepad shortcuts (Select+L1+R1+Y)- Permission viewing from the client
- Complete Artemis rebranding with official icons and art:// protocol support
- UUID-based app launching for modern Apollo/Sunshine servers
- Enhanced error handling and logging
- Improved compatibility with latest server versions
- Hardware accelerated video decoding on Windows, Mac, and Linux
- H.264, HEVC, and AV1 codec support (AV1 requires Sunshine and a supported host GPU)
- YUV 4:4:4 support (Sunshine only)
- HDR streaming support
- 7.1 surround sound audio support
- 10-point multitouch support (Sunshine only)
- Gamepad support with force feedback and motion controls for up to 16 players
- Support for both pointer capture (for games) and direct mouse control (for remote desktop)
- Support for passing system-wide keyboard shortcuts like Alt+Tab to the host
# Clone the repository
git clone https://github.com/wjbeckett/artemis.git
cd artemis
# Run the development setup script
chmod +x scripts/setup-dev.sh
./scripts/setup-dev.sh
# The script will install dependencies and build the project- Qt 6.7+ (Qt 6.8+ recommended)
- FFmpeg 4.0+
- SDL2 and SDL2_ttf
- OpenSSL
- Opus codec
Windows:
- Visual Studio 2022 with MSVC
- 7-Zip (for packaging)
macOS:
- Xcode 14+
- Homebrew:
brew install qt6 ffmpeg opus sdl2 sdl2_ttf create-dmg
Linux:
# Ubuntu/Debian
sudo apt install qt6-base-dev qt6-declarative-dev libqt6svg6-dev \
qml6-module-qtquick-controls qml6-module-qtquick-templates \
qml6-module-qtquick-layouts libegl1-mesa-dev libgl1-mesa-dev \
libopus-dev libsdl2-dev libsdl2-ttf-dev libssl-dev \
libavcodec-dev libavformat-dev libswscale-dev libva-dev \
libvdpau-dev libxkbcommon-dev wayland-protocols libdrm-dev
# Fedora/RHEL
sudo dnf install qt6-qtbase-devel qt6-qtdeclarative-devel \
qt6-qtsvg-devel openssl-devel SDL2-devel SDL2_ttf-devel \
ffmpeg-devel libva-devel libvdpau-devel opus-devel \
pulseaudio-libs-devel alsa-lib-devel libdrm-devel# Initialize submodules
git submodule update --init --recursive
# Configure and build
qmake6 moonlight-qt.pro CONFIG+=release
make -j$(nproc) # Linux
make -j$(sysctl -n hw.ncpu) # macOS
nmake # Windows| Feature | Moonlight Qt | Artemis Qt |
|---|---|---|
| GameStream/Sunshine Support | โ | โ |
| Hardware Video Decoding | โ | โ |
| HDR Streaming | โ | โ |
| 7.1 Surround Sound | โ | โ |
| Multi-touch Support | โ | โ |
| Clipboard Sync | โ | โ |
| Server Commands | โ | โ |
| OTP Pairing | โ | โ |
| Quick Menu | โ | โ |
| Fractional Refresh Rates | โ | โ |
| Resolution Scaling | โ | โ |
| Virtual Display Control | โ | โ |
| UUID-Based App Launching | โ | โ |
| Development Builds | โ | โ |
| Permission Viewing | โ | โ |
| Custom App Ordering | โ | ๐ |
| Input-Only Mode | โ | ๐ |
Legend: โ Available, ๐ง In Development, ๐ Planned
- ๏ฟฝ๏ธ Windows ARM64 Support - โจ NEW! Native ARM64 builds for Windows on ARM devices (Surface Pro X, Copilot+ PCs)
- ๐ฎ Enhanced Quick Menu - Improved keyboard shortcut (
Ctrl+Alt+Shift+\) and gamepad combo (Select+L1+R1+Y) - ๏ฟฝ๐ Permission Viewing - View server-side permissions for clients
- Complete Visual Rebranding - Official Artemis icons and branding from Apollo developer, art:// protocol support
- UUID-Based App Launching - Modern app identification system that works seamlessly with Apollo/Sunshine servers
- ๐ Smart Fallback System - Automatically uses legacy app IDs when UUIDs aren't available
- ๐ OTP Pairing - Enhanced security with One-Time Password authentication
- ๐ Automated Development Builds - Get the latest features with automatic changelogs for all platforms
- ๐ Better Error Handling - Improved logging and error messages for troubleshooting
- ๐ฑ Custom App Ordering - Organize your game library exactly how you want
- ๐ฏ Input-Only Mode - Remote control without video streaming for lightweight scenarios
We now have automated development builds that:
- ๐ Build automatically on every development push
- ๐ Generate detailed changelogs from commit messages
- ๐ฏ Support all platforms (Windows, macOS, Linux, AppImage, Flatpak, Steam Deck)
- โก Let you test new features immediately
Want to help test new features? Check out our development releases!
We welcome contributions! Here's how to get started:
- Fork the repository
- Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes and test thoroughly
- Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
- Follow the existing code style
- Add tests for new features
- Update documentation as needed
- Test on multiple platforms when possible
- Artemis Android - The original Artemis for Android
- Apollo Server - Enhanced GameStream server
- Moonlight Qt - The upstream project
- Sunshine - Open-source GameStream server
This project is licensed under the GPL v3 License - see the LICENSE file for details.
- ClassicOldSong - Creator of Artemis Android and Apollo server
- Moonlight Team - For the excellent foundation
- LizardByte - For the Sunshine server
- All contributors who help make this project better
Made with โค๏ธ for the gaming community