
Sunshine 游戏串流从装好到把游戏投到大屏电视的实战指南【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine周五晚上想在大屏电视上打 3A主机却放在书房搬又懒得搬——Sunshine 游戏串流就是干这件事的装在游戏机上用 Moonlight 客户端把整块桌面连同任意游戏投到手机、平板或电视盒子走的是你自己的局域网没有云、没有订阅费硬件编码正常工作时端到端延迟能压到十几毫秒。它折腾起来比想象中顺装完、开个网页、设个密码、配对、点播放。下面是我用了一段时间后的总结顺序是先装起来再调参数最后才是排查问题。⚡ 十分钟上手装好 Sunshine 游戏串流服务器这一节的目标只有一个从没装到客户端能搜到服务器走最短路径。安装只用官方发布版的二进制包这是官方最推荐、也最省心的方式。以 Debian/Ubuntu 为例Windows 下是 .msi 安装向导macOS 是 .dmg都在官方 release 页面按架构下载# 下载对应发行版的 deb 包后安装 sudo dpkg -i sunshine-*.deb sudo systemctl --user --now enable app-dev.lizardbyte.app.Sunshine装完在浏览器打开localhost:47990就是上面那张图里的 Web 管理页。设一个用户名和密码第一步就结束。然后掏出任意一台装了 Moonlight 客户端的设备输入主机 IP 或扫码填入刚才的密码完成配对——客户端列表里出现你的主机名就算成功。其他安装方式一句话带过要容器化有官方 Docker 镜像要跨发行版统一环境有 Flatpak要改代码就按docs/building.md从源码编译。多数人不用考虑这些。 你点播放时发生了什么Sunshine 内部的数据链路读完这一节出问题时你能一眼判断是链路里哪一段坏了——这是后面排查问题的全部基础。Sunshine 干的活本质是把屏幕上显示的画面变成客户端能解码的码流。客户端一点播放依次发生四件事第一步是抓屏。平台层负责拿到原始画面Windows 走 DXGI Desktop DuplicationLinux 走 Wayland、X11 或 KMS/DRM各自实现在src/platform/目录里。第二步是编码。src/video.cpp是编码器抽象层底下挂 NVIDIA NVENC、AMD AMF、Intel QuickSync 这些硬件编码器外加软件编码兜底选哪个由配置里的encoder决定。第三步是传输。编码后的视频帧加上 Opus 编码的音频src/audio.cpp负责音频链路用 AES-GCM 加密后走 UDP 发出去src/rtsp.cpp管理这条 RTSP 会话——配对时的证书、密钥协商、分辨率和帧率参数都是在这一步定的。第四步Moonlight 客户端解码播放你的按键再作为虚拟输入事件传回主机。知道这条链路后定位问题就不靠猜了画面卡但声音流畅查编码和网络黑屏查抓屏没声音查音频。⚙️ 选对档位三套低延迟串流配置装好后别急着乱动参数Sunshine 默认值25 Mbps、60 帧对多数有线环境直接够用。这一节给你三套预设挑一套填上基本不用再管。档位适合谁video_bitrateframe_rate编码建议低延迟优先竞技、快节奏游戏1500000015 Mbps60H.264客户端解码最快画质优先3A、看风景向5000000050 Mbps60HEVC 或 AV1打开 HDR省带宽WiFi、远程串流80000008 Mbps30H.264分辨率降到 1080p以画质优先为例配置长这样Sunshine 的 conf 文件就是这种key value格式用编辑器改或用 Web 页都行video_bitrate 50000000 frame_rate 60 hdr true encoder nvenc两个提醒分辨率实际是在 Moonlight 客户端那边选的720p/1080p/4K服务器端只管码率、帧率和编码方式有线千兆的话码率可以再往上推WiFi 环境建议从表中数值的一半起步试。 按你的环境调客厅大屏和平板的两组 Sunshine 游戏串流参数拿我常用的两个场景举例参数直接抄再按自己情况微调。客厅 4K 大屏。前提是主机和电视盒子之间有线千兆。客户端选 4K 60 帧服务器端三个参数video_bitrate 60000000、frame_rate 60、HEVC 编码并打开 HDR电视盒子如果压不动 HEVC退回 H.264 并把码率收到 50 Mbps观感损失不大注意 4K 串流对丢包非常敏感隔着一个信号弱的路由器就不要硬开先降到 1080p 验证。平板随手玩。以独立游戏、沙发场景为主默认就是 5GHz WiFi分辨率 1080p 或 720pvideo_bitrate 12000000、60 帧编码保持 H.264老平板 SoC 解码 HEVC 发热明显帧率反而不稳注意平板尽量贴近路由器同码率下信号质量比参数调优影响更大。要串哪些游戏在 Web 页的应用列表里管理默认自带的桌面、Steam 几项够用了想加自己的条目改apps.json即可。 卡住了怎么办5 个高频问题一行修复卡住时先别翻长文档先看日志。位置Windows 在%ProgramFiles%\Sunshine\config\sunshine.logLinux/macOS 在~/.config/sunshine/sunshine.log。下面两条命令我最常用第一条实时看日志Web 页面里也有同样的日志视图见下图第二条做网络压测tail -f ~/.config/sunshine/sunshine.log iperf3 -c 主机IP -t 60 -u -R -b 50Miperf3 那条是从服务端向客户端打 50 Mbps UDP客户端上丢包大于 5%、抖动大于 1ms就是网络的问题别在 Sunshine 配置上浪费时间。现象最可能原因一行修复客户端搜不到主机防火墙没放行Linux 下sudo ufw allow 47990/tcpWindows 在防火墙里开对应端口频繁卡顿、丢包高主机网卡过快中间设备缓冲溢出升级到最新版0.23.1 之后重写过网络代码或把网卡降到 1 GbpsWeb 页面密码忘了进不去凭据遗失终端执行sunshine --creds 新用户名 新密码鼠标行为怪异主机上没插物理鼠标给游戏机插一个物理鼠标手柄在 Steam 里正常、进游戏失效Steam 输入与虚拟手柄冲突Steam 手柄设置里只保留通用手柄 往远处看想知道项目还在不在活跃迭代看docs/changelog.md就够了最近几个版本的着力点在两个方向——网络层继续优化拥塞处理和缓冲逻辑直接降低丢包和卡顿以及抓屏/编码支持的持续扩张各平台新增的采集后端和 Vulkan 编码都在陆续进来。对普通用户来说跟着用最新版的节奏走就行。今晚就能做完的三件事装好官方 release打开 Web 页面设密码用 Moonlight 配对成功。开一局游戏跑一遍 iperf3 压测网络干净就锁定画质优先那组参数。再出问题先看日志对照上面那张表找对应行。【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考