Moonlight是一款开源的远程游戏串流工具,基于NVIDIA GameStream协议开发,允许用户将PC游戏画面低延迟地串流到手机、平板、电视等其他设备上播放。通过高效的视频压缩技术和自适应网络优化,它实现了接近本地游玩的流畅体验,让玩家可以随时随地享受高性能游戏体验。

软件特色
1、多平台支持:客户端覆盖 Windows、macOS、Linux、Android、iOS、Apple TV、Fire TV 甚至 PS Vita 等设备,几乎任何带屏幕的设备都可成为接收端。
2、高画质与低延迟:支持 4K 120fps 甚至更高规格的串流,HDR、5.1 环绕声、10-bit 色深等高级特性一应俱全,配合硬件编码(NVENC、AMF、Intel QuickSync)可做到毫秒级延迟。
3、自定义分辨率与码率:用户可手动设置串流分辨率、帧率及比特率,适应不同网络条件与显示设备,从 480p 流畅游玩到 4K 极致画质均可自由调节。
4、多点触控与手柄映射:移动端支持多点触控模拟鼠标、自定义屏幕按键布局,同时完美适配各类蓝牙手柄(Xbox、PlayStation、Switch Pro 等)。
5、互联网串流:配合端口转发或 Moonlight Internet Hosting Tool,可实现非局域网环境下的远程游戏,随时随地访问家中电脑。
软件亮点
1、开源免费且无广告:完全开源,代码托管于 GitHub,无内购、无广告、无隐私收集,社区驱动持续迭代。
2、极低的解码延迟:客户端针对不同平台做了深度优化(如 iOS 的 Video Toolbox、Android 的 MediaCodec),解码延迟普遍可控制在 2ms–8ms 之间。
3、支持触控笔与压感:在平板设备上(如 iPad、Surface)可使用触控笔实现压感绘图、笔记,将普通平板变成 Windows 绘图屏。
4、多显示器切换:宿主机若连接多个显示器,客户端可灵活选择串流任意一个显示器或同时显示所有屏幕。
5、语音回传:支持将客户端的麦克风音频回传至宿主机,方便进行联机游戏语音或语音控制。
软件优势
1、完全替代官方方案:当 NVIDIA 停止 Shield 的 GameStream 服务后,Moonlight + Sunshine 的组合成为最佳免费替代方案,功能更强、兼容更广。
2、资源占用极低:服务端在串流时对 CPU 占用极小(主要依赖 GPU 编码),客户端解码功耗远低于本地渲染同画质游戏的能耗,延长移动设备续航。
3、灵活的自托管架构:不依赖第三方云服务器,所有串流数据走用户自己的网络,安全且无带宽费用。
4、社区插件扩展:支持通过 Sunshine 添加虚拟显示器、自动分辨率匹配、开机唤醒等高级脚本功能,满足进阶用户需求。
5、跨生态无缝联动:同一局域网下自动发现宿主机,支持 PIN 码配对,无需复杂网络配置即可开始串流。
常见问题
1、问:Moonlight 无法搜索到我的电脑怎么办?
答:请确保宿主机与客户端在同一局域网;宿主机已安装 Sunshine 或启用了 NVIDIA GameStream;防火墙允许 UDP 端口 47989、48010 等;尝试手动输入宿主机 IP 地址。
2、问:串流时画面卡顿或延迟很高如何解决?
答:优先使用 5GHz Wi-Fi 或网线连接;降低串流分辨率、帧率或比特率;在 Sunshine 设置中切换编码器(例如从 NVENC 换到软件编码测试);关闭宿主机上的 HDR 或 G-Sync 等可能增加延迟的功能。
3、问:能否在非局域网(互联网)使用 Moonlight?
答:可以。需要宿主机拥有公网 IP 或使用内网穿透工具(如 ZeroTier、Tailscale),并在路由器上手动转发 TCP 47984、47989、48010 以及 UDP 47998-48010 端口,或使用 Moonlight Internet Hosting Tool 自动配置。
4、问:AMD 或 Intel 显卡能否使用 Moonlight?
答:可以。请安装开源服务端 Sunshine,它支持 AMD(AMF)、Intel(QuickSync)以及 NVIDIA 显卡,Moonlight 客户端无需任何改动即可连接。
5、问:串流时鼠标或键盘输入延迟大怎么办?
答:关闭宿主机上的“鼠标加速”或“增强指针精确度”;在 Moonlight 设置中开启“直接鼠标模式”(Direct Mouse);使用 USB 有线方式连接键鼠而非蓝牙。
PC串流教程
使用Moonlight与Nvidia Geforce Experience进行PC游戏串流,分为本地串流和远程公网串流2种方式。教程主要对路由器进行配置,不使用ZeroTier等额外的VPN软件,保证使用上的原汁原味。
一、系统要求和前期准备
Host PC:使用N卡,GTX 600以上型号,并且安装Nvidia Geforce Experience
可以对家庭路由器进行配置
拥有接受串流的移动设备(电脑、手机、平板均可)
远程串流需要公网ip
二、本地串流
本地串流比较容易,就是串流PC和接受串流的移动设备在同一个局域网中,只要安装好软件既可以使用
(1)Host主机配置
在串流PC中打开Geforce Experience,在设置里面的”SHIELD”中打开“GAMESTREAM”选项 。

GFE默认会添加支持串流的游戏,并且可以添加任何程序
(2)移动端配置
安装moonlight客户端,开启后自动搜索局域网内开启GAMESTREAM功能的PC,之后进行连接配对即可使用
三、远程公网串流
远程串流是使用公网连接家庭内网的游戏主机进行串流,需要解决外网进入内网的访问问题。

本教程网络拓扑
可以使用IPV4或者IPV6进行串流,但是IPV6的访问需要路由器的支持,并且能够配置IPV6防火墙,由于条件限制本文使用IPV4。
远程串流需要公网ip,没有的同学可以向客服索要。 因为用户从外网访问,因此要进行nat转发,需要通过对调制解调器和路由器进行配置。
(1)调制解调器
配置最简单的方式是路由器使用桥接模式,但是这样对原本的网络功能有较大的影响。 这里保留光猫拨号的原始链接方式,通过2次端口转发实现连通。 首先为了保证路由器lan地址不变,可根据路由器使用的mac地址配置静态ip地址。

在moonlight的Setup Guide中可以找到服务使用的端口:
TCP:47984, 47989, 48010
UDP:47998, 47999, 48000, 48010
在nat设置中对静态lan地址配置端口转发,内网地址为分配的路由器wan口地址。

光猫端口转发
(2)路由器
首先主机绑定静态IP

对主机同样的端口配置nat,这样串流流量通路顺利打通

使用端口检测工具(https://www.canyouseeme.org/)可以检测是否配置成功(只需检测端口47984 47989,其他端口使用时才开放)
(3)host主机和移动端配置
使用公网串流前,先用内网进行一次串流。
内网串流没有问题后,无需更多配置,移动端使用外网(如5G)也可以正常连接主机。
更新日志
v12.1版本
-Sunshine增加了对完全端到端流加密的支持* -修复了通过某些Internet连接进行流式传输时立即终止连接的错误* -增加了调整模拟隆隆声强度的选项 -添加了在控制器鼠标模拟模式下滚动的选项 -在临时网络中断期间提高了连接可靠性 -固定通过特殊阳光键组合到主机







