15分钟搭起个人游戏串流服务器:Sunshine从零开始实战指南
【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine
Sunshine 是一个开源自托管的游戏串流服务器(stream host),配合 Moonlight 客户端,把你现有的电脑变成游戏串流主机,让手机、平板、电视都能玩 PC 游戏。本文带你从零到跑通:装好 Sunshine、配好账号、串出第一帧画面,并附常见问题排查。
为什么用它
我在客厅电视上玩过 3A 大作,也在出差路上用平板接着打了一半的存档。这两个场景靠的都是同一套东西:一台开着 Sunshine 的电脑。
Sunshine 解决的核心问题只有一个:把你的 PC 变成一台游戏串流主机。画面由你自己的显卡编码,数据全部留在本地,不用买专用硬件,也不用按月付钱。串流画质上限取决于你这台 PC,而不是某家云服务的机房。
| 对比项 | 商业云游戏 | Sunshine |
|---|---|---|
| 费用 | 按订阅收费 | 免费,用现有电脑 |
| 数据位置 | 云端 | 本地,自己掌控 |
| 能玩什么 | 平台指定游戏 | 本机任何应用 |
| 客户端 | 受限 | 任何 Moonlight 客户端 |
动手之前
先对照清单确认你手上有这些:
- 一台常开的电脑:Windows、Linux 或 macOS(macOS 为实验性支持,且暂不支持手柄)
- 一张显卡:NVIDIA、AMD 或 Intel 核显都能硬件编码;没有也行,退化为 CPU 软件编码
- 一个游玩设备:电视、手机、平板等,能装 Moonlight 客户端即可
- 同一局域网:主机和游玩设备在同一网段,路由器支持 UPnP(跨网访问才需要)
- Windows 用户额外需要:Virtual HID Driver 驱动,用于手柄和键鼠注入
不需要注册任何账号,Sunshine 和 Moonlight 之间只靠一次 PIN 码配对。
先跑起来:三系统安装与首次启动
安装只有一条路:用官方发布的安装包。下面是每个系统的"下载 → 安装 → 验证"。
Windows 安装
- 从项目最新 Release 下载 MSI 安装包(x64 选 AMD64 版),双击按向导装完。
- 安装程序会自动创建服务,开机自启。
- 验证:浏览器打开
https://localhost:47990,出现 Sunshine 欢迎页即成功。浏览器提示"网站不安全"可以忽略,这是自签名证书的正常表现。
Linux 安装
按发行版二选一:
# Debian/Ubuntu sudo dpkg -i ./sunshine-{distro}-{version}-{arch}.deb# Fedora sudo dnf copr enable lizardbyte/stable sudo dnf install SunshineArch 用户直接pacman -S sunshine。装完后启动服务并开机自启:
systemctl --user --now enable app-dev.lizardbyte.app.Sunshine验证方式同上:浏览器访问https://localhost:47990能看到欢迎页就跑通了。
macOS 安装
下载对应芯片的 DMG(Apple Silicon 选 arm64),把 Sunshine.app 拖进"应用程序"文件夹。首次启动会要求授予屏幕录制和麦克风权限,允许即可。macOS 目前只适合尝鲜,手柄暂不可用。
首次配置:建账号三步
三个系统装完后流程一样,都在网页里完成:
- 打开
https://localhost:47990,进入欢迎页。 - 设置管理员用户名和密码。
- 点击登录,进入管理面板。
划重点:管理员凭证只在设置时显示一次,随手记到安全的地方,忘了要重置。
接上核心功能:配对 Moonlight,串出第一个画面
Sunshine 装好只是主机侧,现在把游玩设备接上来。
- 在游玩设备上安装 Moonlight 客户端(Windows、macOS、Linux、Android、iOS 均有)。
- 客户端会自动发现局域网内的 Sunshine;找不到就手动填主机 IP。
- Moonlight 弹出配对请求时,在 Sunshine 网页顶部导航点 PIN,把显示的 PIN 码填进客户端,并给设备起个名字。
- 配对成功后,客户端会列出可串流的应用。系统默认自带 Desktop 和 Steam Big Picture 两项,选 Desktop 直接开串,先确认画面通。
要串单个游戏,进 Applications 页点 Add,填应用名称、可执行文件路径(Steam 游戏填steam://run/应用ID这类启动命令即可),保存后就会出现在列表里。
具体游戏的填写示例(含 Steam、Epic 商店游戏的各种写法)见 docs/app_examples.md。
按你的环境调一调
大多数情况下默认设置就能用,只有三个参数值得看一眼。
| 参数 | 默认推荐 | 什么时候该调 | 怎么调 |
|---|---|---|---|
| 视频编码器 | 自动选硬件编码(NVENC/AMF/QuickSync/VAAPI 等) | 画面卡顿、CPU 占用高时换一个或退回软件编码 | 网页配置页搜索栏搜 "encoder" |
| Linux 捕获方式 | 按桌面环境自动(portal/KWin/KMS) | 用 AppImage 或 Flatpak 装不了 KMS 捕获时,改用对应发行版的包 | 配置页搜 "capture" |
| 分辨率与帧率 | 1080p/60fps | 无线环境或网络带宽不够时降档 | 在 Moonlight 客户端的串流设置里改,不在 Sunshine 侧 |
配置页顶部有搜索框,输入关键词能直接定位任意选项,不用翻整页列表。
出问题时:四个高频问题排查
Q:忘记网页管理界面的账号密码了
A:在终端执行sunshine --creds {新用户名} {新密码}(AppImage 安装则换成./sunshine.AppImage --creds),直接重置。
Q:Moonlight 找不到 Sunshine 服务器
A:按顺序查三处:Sunshine 服务是否在运行(Linux 下systemctl --user status app-dev.lizardbyte.app.Sunshine)、主机防火墙是否放行、两台设备是否在同一局域网。都正常就手动输入主机 IP 添加。
Q:串流卡顿、延迟高
A:优先换有线网络或 5GHz WiFi;在 Moonlight 里把分辨率或帧率降一档;仍不行就用iperf3 -c {主机IP} -t 60 -u -R -b 50M测一下网络稳定性(丢包和抖动才是串流体验的关键,不是单纯带宽)。
Q:手柄在游戏中没反应
A:Linux 下先把运行 Sunshine 的用户加进input组再重新登录;Windows 确认装了 Virtual HID Driver;另外把主机上物理连接的手柄禁用,让 Sunshine 提供的虚拟手柄成为"第一个"设备。Steam 的控制器模式设置也可能干扰,可切换测试。
Q:去哪找帮助
A:网页界面的 Troubleshooting 页能直接看运行日志和逐条警告,排错先看这里。完整说明在 docs/getting_started.md,更深入的问题对照 docs/troubleshooting.md;仍解决不了就去项目仓库的 issue 区或官方 Discord 社区问。
到这里你走完了什么
你现在已经能做到:在任意系统上装好 Sunshine,用网页管理游戏列表,让 Moonlight 客户端串出画面,并且知道常见故障从哪查。下一步建议把分辨率和帧率调到你网络能稳定撑住的最高档。现在就打开 Moonlight,串一局你收藏最久的游戏试试。
【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考