Sunshine 快速上手:一步步搭出免费低延迟游戏串流主机
【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine
手柄放在客厅,主机留在自己房间,而你只想按下开始键就让画面亮起来。Sunshine 是一款开源自托管游戏串流主机:装在你自己的 PC 上,由 GPU 编码画面,经局域网推送给任意装了 Moonlight 客户端的设备——低延迟游戏串流,数据全程不出内网。
🎮 Sunshine 适合谁:两个最典型的串流需求
第一种人,想把主力机上的游戏搬去床上的平板或客厅的电视。做法并不复杂:主机与客户端接同一个 5GHz WiFi,Moonlight 里选 1080p60,随便配一只蓝牙手柄,就能开玩——延迟在几帧量级、接近本地体验,20Mbps 以上的网络画面稳定不卡。
第二种人,手里恰好有一台不想浪费的旧电脑。给它装上 Sunshine,用核显跑 VAAPI 硬件编码,1080p60 足够流畅,再设成服务开机自启,这台机器就变成 7×24 小时可用的"私人游戏云":主力机腾出来干活,成本远低于再添置一台新设备。
🧰 Sunshine 安装前硬件自查:内存、CPU 与 4K 显卡门槛
动手前先核对一下手头硬件,门槛其实不高:
| 部件 | 门槛 / 建议 |
|---|---|
| 内存 | 4GB 起步 |
| CPU | i3 或 Ryzen 3 起步即可 |
| 显卡(1080p) | 核显也能跑,显卡越好 4K 串得越顺 |
| 显卡(4K60) | NVIDIA:GTX 1080 / RTX 20 系及以上;AMD:VCE 3.1+;Intel:HD 510 及以上 |
如果你的平台是 macOS,编码走 Video Toolbox(官方标注为实验性)。多显卡机器不用担心,后面在 Web 界面里指定编码器和抓取屏幕即可。
💻 Sunshine 安装教程:从 0 到第一次串流只需三阶段
装好主机端:Windows、Linux、macOS 各有所属
Windows 用官方 MSI 安装包,装完服务和防火墙规则都自动配好;Linux 可以用 deb/rpm 包一行命令装,也可以走 Flatpak;macOS 拖拽 DMG 或经 Homebrew 安装。Linux 用户直接复制下面对应环境的命令:
# Ubuntu / Debian sudo apt update && sudo apt install sunshine # 或通用 Flatpak flatpak install --user flathub dev.lizardbyte.app.Sunshine在 Web 界面建账号、加应用
装好后用浏览器打开localhost:47990,提示"不安全"是因为自签名证书,忽略即可。欢迎页会要求你创建用户名和密码——这是全程唯一需要记住的凭据。
接着添加要串流的应用:系统自带桌面(Desktop)和 Steam 大屏模式(steam://open/bigpicture);自定义游戏只需填可执行文件路径、工作目录和启动参数。
与 Moonlight 配对并让登录自启
客户端侧在 Moonlight 里添加这台主机,它会索要 PIN——把 Sunshine Web 界面 "PIN" 页显示的 PIN 填进去确认,配对完成。在 Moonlight 里点开任意应用,几秒内游戏画面就会出现。
Linux 上想让登录即自启,把服务打开就行:systemctl --user enable --now app-dev.lizardbyte.app.Sunshine。默认配置直接就能串;想改任何参数,都去 Web 界面的 Configuration 页。
⚡ 低延迟串流从哪来:硬件编码对照表、画面抓取与虚拟手柄
低延迟不是玄学,是编码、抓取、输入三件事都落在正确的硬件上。
硬件编码:编码压力甩给 GPU
编码全部交给 GPU 上的专用编码器,CPU 几乎不占资源——这就是延迟低的来源。Sunshine 按 GPU 自动选型,默认不用动;出现黑帧或崩溃时再去 Configuration 页手动指定:
| 显卡 | Windows | Linux |
|---|---|---|
| NVIDIA | NVENC | NVENC / VAAPI |
| AMD | AMF | Vulkan Video / VAAPI |
| Intel | QuickSync | VAAPI |
| 任意平台 | 软件编码(CPU) | 软件编码(CPU) |
画面抓取:每个系统各有对路的方式
抓屏通道决定画面能不能完整拿到:Windows 用 DXGI 桌面复制或 Windows.Graphics.Capture;Linux 可选 KMS/DRM、X11、Wayland、XDG Portal;macOS 走 ScreenCaptureKit。默认自动挑选,绝大多数桌面环境开箱不黑屏;遇到黑屏或闪烁,去 Configuration 页换一种抓取方式再重启服务。
虚拟手柄:让游戏直接识别出手柄型号
串流时 Sunshine 在主机侧虚拟出手柄:Xbox 360/One/Series、DualShock 4/DualSense、Switch Pro(Linux 与 Windows,macOS 暂不支持)。游戏端直接看到对应型号,客户端什么都不用装。Windows 上依赖 ViGEmBus 或更完整的 Virtual HID Driver;Linux 走 uinput,开箱即用。
⚙️ 串流参数怎么调:码率、帧率与编码器速查表
真正值得动的设置只有四项,记住这张表就够了:
| 参数 | 建议值 | 说明 |
|---|---|---|
| 码率 | 1080p60:20~30Mbps;4K60:50~100Mbps | 别超过网络实际承受值 |
| 分辨率与帧率 | 1080p60 是安全线 | 4K60 建议两端 CAT5e 以上有线 |
| 编码器 | 默认硬件编码 | 出现色带或崩溃时切软件编码对比 |
| 显示同步 | NVIDIA Fast Sync / AMD Enhanced Sync | 各能省约一帧延迟 |
Web 界面 Configuration 页自带搜索框,输入关键词直接跳到对应条目,改完点 Save 生效。
🩹 出问题先看这里:三个高频故障的排查路径
客户端找不到主机:先查防火墙
现象是 Moonlight 扫描不到 Sunshine。原因通常是主机防火墙拦了串流端口。解法:检查主机防火墙,确认 Web 界面的 47990 端口及串流端口已放行。
画面卡顿、丢包严重:先测网络
现象是画面一顿一顿、丢包率高。原因优先怀疑网络不稳定。解法:先在两端用iperf3测一次稳定性,或者直接换有线;仍定位不到时,打开 Web 界面 Troubleshooting 日志页,丢包与编码器报错都能逐条看到。
Web 界面密码忘了:一条命令重置
现象是 Web 界面登不进去、凭据丢失。原因:欢迎页那组密码是"只显示一次"的设计。解法:停掉服务,执行sunshine --creds newuser newpass重置为新账号密码。
📚 Moonlight 客户端生态与 Sunshine 延伸阅读
Moonlight 客户端覆盖 Windows、macOS、Linux、Android、iOS 和各类电视盒子,几乎任何能装屏幕的设备都能当客户端。Web 界面的 Featured Apps 页还整理了官方与社区推荐的客户端和工具。
想继续深挖,文档入口:快速上手、故障排查、配置参考、构建文档。源码层面,核心逻辑在src/,平台相关代码在src/platform/,NVIDIA 编码器实现在src/nvenc/。
🌙 串流这件事,就从你家的网络开始
Sunshine 管编码,Moonlight 管显示,所有串流数据都留在你的局域网里,整套方案到此完成。想从源码构建或二次开发,直接拉取仓库:
git clone https://gitcode.com/GitHub_Trending/su/Sunshine下次窝在沙发上的游戏时间,浏览器里那个 47990 页面会替你准备好一切。
【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考