Sunshine 自托管游戏串流服务器:把你的 PC 变成低延迟游戏串流主机
【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine
Sunshine 是一个开源的自托管游戏串流服务器,它与 Moonlight 客户端配合,让你把 PC 上的游戏低延迟地串流到手机、平板、电视盒子等任何设备上,全程免费。
它是什么,为什么值得用
简单说:Sunshine 跑在你的游戏 PC 上负责"抓画面 + 硬编码 + 推流",Moonlight 客户端跑在你手里的设备上负责"解码 + 回放"。两者都是开源的,串流延迟可以压到 10ms 以内,画质支持 4K120 和 HDR。
相比租用云游戏服务,它的好处是:
- 硬件是自己的,不花月费
- 局域网内带宽随便用,画质上限只取决于你的网卡
- AMD、Intel、NVIDIA 三家 GPU 都有硬件编码支持,没有显卡也能软件编码兜底
- 自带 Web 管理界面,配置、配对、启动游戏都不用碰命令行
快速上手:安装 Sunshine 的步骤
Sunshine 支持 Windows 11、macOS 14.2、主流 Linux 发行版和 FreeBSD。以 Windows 和 Linux 为例:
Windows
用 winget 一行装好(需要已安装 winget):
winget install LizardByte.SunshineLinux
Debian / Ubuntu:
# 先按 docs/getting_started.md 中的说明添加官方源,然后: sudo apt update sudo apt install sunshineArch 用户可以从官方 pacman-repo 安装sunshine包;Flatpak 用户则执行flatpak install flathub dev.lizardbyte.app.Sunshine。各平台的详细安装方式见 docs/getting_started.md。
第一次运行与 Moonlight 配对
安装完成后 Sunshine 会自动启动(Windows 下是后台服务 + 系统托盘图标)。此时打开浏览器访问:
https://localhost:47990首次访问会要求你设置管理账号密码(浏览器对自签名证书有警告,点"继续访问"即可)。设置完成后你会看到欢迎页:
接下来在你想玩的设备上安装 Moonlight 客户端,选择"配对新主机",输入 PC 的 IP 地址和 Sunshine 生成的配对码,输入密码后设备就关联好了。之后在 Moonlight 里点开任意应用,串流就开始了。
核心功能怎么用
用 Web 界面配置一切
所有设置都在localhost:47990的 Web 界面里完成,不用手动改配置文件。左侧有分类,顶部有搜索框,输入关键词(比如 "bitrate"、"encoder")就能直接定位到某个配置项,这对新手非常友好:
常用配置项按分类整理在 docs/configuration.md 中,每一项都写了含义、默认值和可选值。
应用库:一键启动游戏
把 Steam、Epic、本地 .exe 等应用添加到"应用库"里,Moonlight 客户端就能看到这张列表,点一下就直接串流进游戏:
支持"特色应用"(Featured App)设置,比如把某个游戏标记为默认应用,客户端打开后直接进入。应用图标、启动参数、工作目录都能在这条记录里配置,应用管理界面长这样:
虚拟手柄
你在手机上按的"手柄键",Sunshine 会在 PC 上模拟出一个真实的 Xbox / PS4 / PS5 手柄设备,游戏因此"以为"接了手柄。Windows 和 Linux 支持全套手柄型号(含摇杆、扳机细节),具体兼容矩阵见 README.md 中的 Gamepad Emulation 表格。Linux 上首次使用如果手柄没反应,见下文 FAQ。
让体验更好的实用技巧
- 先选对编码器:Web 界面的 "Audio & Video" 里可以切换。NVIDIA 卡用 NVENC,AMD 卡在 Windows 上用 AMF,Intel 核显用 QuickSync,Linux 通用选 VAAPI,macOS 用 VideoToolbox。拿不准就先用默认值,绝大多数配置开箱即可用。
- 网络优先有线:串流体验对丢包和抖动比带宽更敏感。能插网线就插网线(CAT5e 以上),无线的话宿主和客户端都尽量连 5GHz。官方最低建议就是 5GHz 802.11ac 的无线网卡(见 README 系统要求表)。
- 码率别盲目拉满:先从中等值开始,画面出现马赛克再往上加,出现卡顿再往下降。1080p60 和 4K120 的合理区间差很多,docs/performance_tuning.md 里有具体建议。
- 远程访问:家里以外也想玩的话,在 Web 界面开启 UPnP 让路由器自动做端口映射,再配合内网穿透或 DDNS;端口转发需要开放 47984–48010 段。
- Linux + NVIDIA:LizardByte 官方预编译包已经带了 CUDA 支持(NVFBC 捕获、NVENC 直编 GPU 显存),不需要自己装 CUDA 工具包。但如果你是从源码或 AUR 自己编译,要先装好 CUDA 再编译,事后补装是无效的。
常见问题排查
1. 打不开 localhost:47990
大概率是防火墙拦了。检查一下 Windows Defender 防火墙或 Linux 的ufw/firewalld是否放行本机 47984–48010 端口,Sunshine 安装时一般会自动添加规则,手动装过或改过防火墙配置的话需要补上。
2. 忘了 Web 界面的账号密码
在主机上开终端执行(括号内容替换成你想要的新账号密码):
sunshine --creds 新用户名 新密码3. Linux 上授权弹窗不出现 / 抓屏失败
Wayland 下 Sunshine 通过 XDG Portal 请求抓屏授权,授权令牌失效后弹窗就不会再出现。打开 Web 界面的 "Troubleshooting" 页,点 "Reset XDG Portal Capture" 即可重置;Web 界面进不去时,删除配置目录里的portal_token文件再重启 Sunshine。该页还能直接下载运行日志,方便排查:
4. 虚拟手柄不生效(Linux)
安装后 udev 规则需要重新加载,安装脚本一般会帮你做,如果没成功,重启一次系统,或按 docs/troubleshooting.md 中的 Linux 章节手动执行udevadm control --reload-rules等命令,必要时把当前用户加入input组。
5. 串流中卡顿、丢包
局域网先做网络测试:在 PC 上跑iperf3 -s,客户端跑iperf3 -c <PC的IP> -t 60 -u -R -b 50M,关注丢包和抖动(理想是丢包 <5%、抖动 <1ms)。测试方法和 MTU、带宽不匹配等更细的问题,都写在 docs/troubleshooting.md。
适合谁,下一步做什么
Sunshine 适合三类人:有游戏 PC、想在电视/手机/平板上玩的玩家;不想付云游戏月费、想要自由度的折腾党;以及想把旧 PC 改造成"家庭串流主机"的用户。它不适合想要"零配置、插上就用"体验的人——首次配对和编码器选择还是需要花 10 分钟了解。
下一步建议:
- 按上文完成安装和配对,先用最低设置跑通一局游戏
- 再到 Web 界面里按 docs/configuration.md 逐项过一遍编码器、码率、音频设置
- 有异常时优先看 Web 界面 Troubleshooting 页的日志,再对照 docs/troubleshooting.md
- 想深入了解协议或二次开发,可以看 docs/api.md
【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考