Sunshine 游戏串流指南:十分钟把 PC 游戏库推到家里任何一块屏幕
【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine
Sunshine 是一款免费、开源的自托管游戏串流服务器,配合 Moonlight 客户端,把 PC 画面实时串流到电视、手机或平板。本文按"服务端—管理后台—客户端"跑通最小闭环,再覆盖画质与延迟调优、常见故障自救,全程不用付费。
想在健身间隙开一局?游戏却在家里那台电脑上
周末下午在健身房,组间休息时你躺在凳子上刷手机,想打的偏偏是家里 PC 上的那局。游戏、存档、模组全在书房机器里,人却在另一个房间甚至另一栋楼——游戏跟着 PC 走,而不是跟着你走。
Sunshine 解决的就是这件事:它在 PC 上把屏幕实时编码成视频流,推到家里任何一块屏幕,你的每一次按键再原路送回主机。
打个比方,它就像装在家里"演播室"的一套直播设备:摄像头(屏幕采集)负责持续拍摄画面,编码器把画面压成一路直播信号推给"电视机"(你的手机或电视),而你的手柄是这只遥控器的反向通道——按下扳机,信号立刻打回演播室。整个过程中,游戏本体、账号、存档都不离开你的设备,不经过任何第三方服务器。
先判断:这套玩法适合你吗
适合你,如果:
- 你已有一台带硬件编码显卡的 PC(NVIDIA GTX 1050 及以上、AMD RX 550 及以上,或近几代 Intel 核显);
- 你想在同一局域网的电视、手机、平板上玩自己已有的游戏库;
- 你不想为云游戏会员付费,也不介意花十分钟做一次安装。
不适合你,如果:
- 你的目标是从完全不相干的网络(比如移动数据下的手机)直接连家里——Sunshine 的设计主场是局域网,跨网需要自己搭虚拟网络;
- 你的主机没有任何支持硬件编码的显卡,纯 CPU 编码的延迟对动作游戏不友好;
- 你想以 macOS 为串流主机——官方标注其为实验性,且暂不支持手柄。
首次跑通:三步装好 Sunshine 串流最小闭环
按"服务端 → 管理后台 → 客户端"走,每步给你一条最省心的命令。
第 1 步:在游戏 PC 上装好服务端
- 做什么:Windows 上在终端执行
winget install LizardByte.Sunshine;Linux 用系统包管理器装sunshine包;macOS 执行brew install sunshine。 - 为什么:安装器会把它注册成后台服务,开机自启、静默等待客户端接入,你之后不用管它。
- 做完的标志:Windows 系统托盘出现 Sunshine 图标;Linux 下
systemctl --user status app-dev.lizardbyte.app.Sunshine显示 running。
想从源码编译的进阶玩法,直接看构建文档:docs/building.md。
第 2 步:打开管理后台,设一把门锁
- 做什么:浏览器访问
https://localhost:47990(浏览器提示"不安全"是正常的,证书是自签名的),首次启动按页面指引创建用户名和密码。 - 为什么:这是整个串流系统的控制台——画质、应用列表、配对码全在这里改,密码就是它的门锁,建议 12 位以上。
- 做完的标志:能登录并看到配置列表页,顶部搜索框可以输入 "bitrate" 之类的词直接定位配置项。
第 3 步:客户端装 Moonlight,最快配对方法
- 做什么:在手机、平板或电视上装 Moonlight 客户端,与主机处于同一局域网。客户端会自动发现名为 "Sunshine" 的主机;按提示要配对码时,到后台的 "PIN" 页面输入配对码,给设备起个名字。
- 为什么:PIN 配对让两端互相确认身份,之后的串流都是加密的。
- 做完的标志:客户端应用列表出现内置的 "Desktop" 和 "Steam" 入口,点 "Desktop" 能立刻看到主机桌面画面——闭环跑通。
进阶调优:按"你想要什么"来改
画质优先:码率、分辨率、帧率三件套
Sunshine 会自动识别显卡并选编码器(NVIDIA 走 NVENC、AMD 走 AMF、Intel 走 QuickSync),这部分不用你动手。要调的只有三个参数:
- 1080p/60fps 先给15–25 Mbps;上 4K/60fps 建议50–100 Mbps,并且客户端走有线;
- 网络一般时先降分辨率,而不是降帧率——掉帧比模糊更难忍受;
- 改完点 Save 即时生效,不用重启服务。所有条目都支持在搜索框直接定位,配置全解在 docs/configuration.md;
- 客户端是 HDR 电视的话,主机和 Moonlight 两端的 HDR 开关必须一致,否则画面发灰。
延迟优先:降低串流延迟的四个设置
玩射击、格斗这类吃手感的,按这四条来:
- 客户端优先网线;WiFi 至少 5GHz 频段,别待在 2.4GHz;
- 流媒体帧率匹配游戏原生帧率(60/120),省掉一次多余的帧率转换;
- NVIDIA 卡可在驱动里开Fast Sync,AMD 开Enhanced Sync,官方性能调优文档确认各能省约一帧:docs/performance_tuning.md;
- 想量化网络底子,用 iPerf3 在主机跑
iperf3 -s、客户端跑-u -R -b 50M的 60 秒测试,丢包低于 5%、抖动低于 1ms才算合格。
多设备与跨网络:让每台屏幕都有干净的游戏列表
- 后台 "Applications" 页面点 Add New,给每个常玩游戏建独立入口;Steam 大屏模式的命令是
steam://open/bigpicture(用 detached 方式启动),更多写法参考 docs/app_examples.md; - "Featured Apps" 页面把 Moonlight 各平台客户端都列好了,点 Get 直达下载,省去自己找安装包;
- 想走出家门再玩:用 Tailscale、ZeroTier 这类组网工具把设备拉进同一虚拟局域网,比在路由器上做端口转发更安全,也保留低延迟体验;
- 多客户端同时连是支持的,但体验取决于显卡编码能力,一般 1–2 路最稳。
故障自救:从现象到解法一步到位
📶 打不开管理后台(localhost:47990 连接被拒)
- 最可能原因:防火墙拦了 47990 端口,或你从别的设备访问却用了 localhost。
- 一步解决:在主机本机浏览器打开试一次;跨设备访问就把 localhost 换成主机内网 IP,并在防火墙放行 47989、47990。
🔑 忘了后台账号密码
- 最可能原因:初次设置的凭据没保存下来。
- 一步解决:终端执行
sunshine --creds 新用户 新密码直接重置,不用重装。
🎮 手柄在 Steam 里正常,进游戏就没反应
- 最可能原因:Steam 的控制器兼容层把 Sunshine 虚拟出的手柄"抢"了。
- 一步解决:在 Steam 设置里只保留 Generic 手柄支持,关掉 Xbox/PlayStation 兼容;主机上还插着实体手柄的话先拔掉。
⌨️ Linux 上键鼠手柄全部无输入
- 最可能原因:运行 Sunshine 的用户没有输入设备权限。
- 一步解决:
sudo usermod -aG input $USER,注销后重新登录再试。
📡 主机 2.5G 有线、客户端 WiFi,画面随机卡一下
- 最可能原因:两端网卡速度差太大,流数据在中间设备缓冲溢出被丢弃。
- 一步解决:把主机网卡降速到 1Gbps 试一晚;或升级到 0.23.1 之后的版本,新版网络代码已针对这个场景做过优化。
更完整的排查路径(日志搜索、错误高亮)在后台 "Troubleshooting" 页面,手册在 docs/troubleshooting.md。
速答与今晚就能动手的清单
| 问题 | 一句话答案 |
|---|---|
| 支持哪些主机系统? | Windows 10/11、主流 Linux、FreeBSD;macOS 为实验性且暂不支持手柄 |
| 要花钱吗? | 不要,完全免费开源,串流全程走你自己网络 |
| 能几个客户端同时连? | 可以,取决于显卡编码能力,1–2 路体验最佳 |
| 配置页在哪? | https://localhost:47990,浏览器直接打开 |
| 日志在哪里看? | 后台 Troubleshooting 页直接看;Linux/macOS 文件在~/.config/sunshine/ |
| 想自己编译? | 构建步骤见 docs/building.md |
今晚动手清单:
- 按系统挑一条命令,装好 Sunshine 并确认服务常驻
- 打开
localhost:47990,设好 12 位以上强密码 - 客户端装 Moonlight,输入 PIN 完成首次配对
- 点开内置 Desktop 入口,确认画面正常
- 按你的网络把码率和帧率调到第一档
- 卡一下就跑一次 iPerf3,把丢包和抖动数值记下来
装好这一次之后,你想玩游戏时先想的不再是"电脑在哪",而是"屏幕在哪"。
【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考