Moonlight PC 是 NVIDIA GameStream 和 Sunshine 的开源 PC 客户端。
Moonlight 还提供 Android 和 iOS 移动版本。
您可以关注我们的 Discord 服务器上的开发,并帮助在 Weblate 上将 Moonlight 翻译成您的语言。
Windows、Mac 和 Linux 上的硬件加速视频解码
H.264、HEVC 和 AV1 编解码器支持(AV1 需要 Sunshine 和受支持的主机 GPU)
YUV 4:4:4 支持(仅限阳光)
HDR 流媒体支持
7.1 环绕声音频支持
10 点多点触控支持(仅限 Sunshine)
游戏手柄支持力反馈和运动控制,最多可容纳 16 名玩家
支持指针捕获(用于游戏)和直接鼠标控制(用于远程桌面)
支持将系统范围的键盘快捷键(例如 Alt+Tab)传递给主机
Windows、macOS 和 Steam 流式盒
Snap(适用于基于 Ubuntu 的 Linux 发行版)
Flatpak(适用于其他 Linux 发行版)
应用程序图像
树莓派 4 和 5
通用 ARM 32 位和 64 位 Debian 软件包(不适用于 Raspberry Pi)
实验性 RISC-V Debian 软件包
NVIDIA Jetson 和 Nintendo Switch (Ubuntu L4T)
Cloudsmith 慷慨地免费提供 Moonlight 的 Debian 和 L4T 软件包存储库的托管。
Qt 6.7 SDK 或更高版本(早期版本可能有效,但不受官方支持)
Visual Studio 2022(社区版即可)
在Qt安装过程中选择MSVC选项。不支持 MinGW。
7-Zip(仅当为非开发 PC 构建安装程序时)
图形工具(仅当运行调试版本时)
在 Windows 设置应用程序的可选功能页面中安装“图形工具”。
或者,运行dism /online /add-capability /capabilityname:Tools.Graphics.DirectX~~~~0.0.1.0
并重新启动。
Qt 6.7 SDK 或更高版本(早期版本可能有效,但不受官方支持)
Xcode 14 或更高版本(早期版本可能有效,但不受官方支持)
create-dmg(仅当构建 DMG 以在非开发 Mac 上使用时)
推荐使用 Qt 6,但也支持 Qt 5.9 或更高版本(使用 Qt 5 时将qmake6
替换为qmake
)。
GCC 或 Clang
FFmpeg 4.0 或更高版本
安装所需的软件包:
基本要求: openssl-devel SDL2-devel SDL2_ttf-devel ffmpeg-devel libva-devel libvdpau-devel opus-devel pulseaudio-libs-devel alsa-lib-devel libdrm-devel
Qt 6(推荐): qt6-qtsvg-devel qt6-qtdeclarative-devel
Qt 5: qt5-qtsvg-devel qt5-qtquickcontrols2-devel
基本要求: 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
Qt 6(推荐): qt6-base-dev qt6-declarative-dev libqt6svg6-dev qml6-module-qtquick-controls qml6-module-qtquick-templates qml6-module-qtquick-layouts qml6-module-qtqml-workerscript qml6-module-qtquick-window qml6-module-qtquick
Qt 5: qtbase5-dev qt5-qmake qtdeclarative5-dev qtquickcontrols2-5-dev qml-module-qtquick-controls2 qml-module-qtquick-layouts qml-module-qtquick-window2 qml-module-qtquick2 qtwayland5
Debian/Ubuntu:
RedHat/Fedora(需要 RPM Fusion 存储库):
构建 Vulkan 渲染器需要libplacebo-dev
/ libplacebo-devel
版本至少为 v7.349.0 和 FFmpeg 6.1 或更高版本。
Steam Link SDK 克隆到您的构建系统上
STEAMLINK_SDK_PATH 环境变量设置为 Steam Link SDK 路径
从 https://www.qt.io/download 安装最新的 Qt SDK(以及可选的 Qt Creator IDE)
您可以在 macOS 上通过 Homebrew 安装 Qt,但您需要使用brew install qt --with-debug
才能创建 Moonlight 的调试版本。
您还可以使用 Linux 发行版的软件包管理器来获取 Qt SDK,只要软件包是 Qt 5.9 或更高版本。
在 Steam Link 上构建不需要此步骤,因为 Steam Link SDK 包含 Qt 5.14。
从moonlight-qt/
中运行git submodule update --init --recursive
在 Qt Creator 中打开项目或在命令行上通过 qmake 进行构建。
此版本将缺少窗口模式、Discord/帮助链接以及其他在嵌入式设备上没有意义的功能。
对于 GPU 性能较差的平台,请添加"CONFIG+=gpuslow"
以优先使用直接 KMSDRM 渲染而不是 GL/Vulkan 渲染器。直接 KMSDRM 渲染可以使用专用的 YUV/RGB 转换和缩放硬件,而不是较慢的 GPU 着色器来执行这些操作。
对于Windows构建,请使用scriptsbuild-arch.bat
和scriptsgenerate-bundle.bat
。在 Qt 命令提示符下从存储库的根目录执行这些脚本。确保 7-Zip 二进制目录位于您的%PATH%
上。
对于 macOS 构建,请使用scripts/generate-dmg.sh
。从存储库的根目录执行此脚本并确保 Qt 的bin
文件夹位于您的$PATH
中。
对于 Steam Link 版本,请从存储库的根目录运行scripts/build-steamlink-app.sh
。
要构建在非开发计算机上使用的二进制文件,请使用scripts
夹中的脚本。
要在 macOS 或 Linux 上从命令行进行构建以供开发使用,请运行qmake6 moonlight-qt.pro
,然后make debug
或make release
要为单一用途设备创建嵌入式构建,请使用qmake6 "CONFIG+=embedded" moonlight-qt.pro
并正常构建。
分叉我们
编写代码
发送请求请求
查看我们的网站以获取项目链接和信息。