ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

Sunshine 新手教程:把游戏串流到家里任意一块屏幕

Sunshine 新手教程:把游戏串流到家里任意一块屏幕

Sunshine 新手教程:把游戏串流到家里任意一块屏幕

【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine

Sunshine 是一台自托管的游戏串流服务器,装进电脑后,电视、手机、平板就能通过 Moonlight 客户端收到这台机器的画面和输入,就像把整机搬到了那块屏幕前。跑通之后你手里多了一台随时待命的串流主机,外加一个位于https://localhost:47990的网页管理页,管应用、管参数都在上面。本文从安装一直走到第一次投屏成功,最后留给你一张调参表和一份排障速查。

先定个场景:三种串流环境挑一种

参数怎么调,取决于你和客户端之间的网络条件,先对号入座。

  • ① 🎮有线局域网:主机和客户端都插网线,追求 60fps 跟手的游戏体验,参数可以放开
  • ② 📺无线接收端:手机、平板、电视盒子只做接收,链路走 WiFi,画质标准放宽一档
  • ③ 🌐跨网络远程:人和主机不在同一个网段,路由器转发是第一道坎,能连上优先

挑一个编号,后文两张表都跟着它走。

30 秒装好并拉起服务

三个系统流程一致,只有安装动作不同。Windows 和 macOS 装完即跑,只有 Linux 需要额外拉一次用户服务。

Windows

  1. 下载Sunshine-Windows-AMD64-installer.msi并双击运行,一路选"允许"。安装器会自动建好防火墙规则并注册后台服务。 成功标志:系统托盘里多出 Sunshine 图标。

Linux

  1. 用包管理器装。Debian/Ubuntu 先添加官方仓库再执行:
    sudo apt install sunshine # 安装 Sunshine

    Arch 用户直接一条命令:

    pacman -S sunshine # Arch 官方包管理器安装

    成功标志:终端里能找到sunshine命令。

  2. Linux 装完服务不会自己跑,手动启用用户服务(systemd user service,即登录你账户时才运行的后台进程):
    systemctl --user --now enable app-dev.lizardbyte.app.Sunshine # 开机自启并立即启动

    成功标志:systemctl --user status app-dev.lizardbyte.app.Sunshine显示active (running)。

macOS

  1. 先添加官方 tapLizardByte/homebrew,再安装:
    brew install sunshine # 通过 Homebrew 安装 Sunshine

    成功标志:菜单栏出现 Sunshine 图标,首次启动会索要屏幕录制和键鼠控制权限,允许即可。

macOS 目前是实验性功能,手柄输入暂不可用,键鼠和画面串流没问题。

首次配对:给 Moonlight 加一个"桌面"入口

目标:客户端里能点选主机上的桌面或游戏,画面投出去。

  1. 浏览器打开https://localhost:47990(别的设备访问就把localhost换主机 IP),首次访问会提示证书不受信任——自签名证书所致,直接继续。首次访问会创建一个 Web 账户,密码记牢。
  2. 进入应用管理页面,添加一个名为Desktop的桌面项,投的就是整块桌面;想直接起游戏,就填游戏的可执行文件路径。
  3. 客户端打开 Moonlight,搜索列表里找这台主机;搜不到就手动添加。
  4. Moonlight 弹出 PIN 请求时,回到 Web 页的PIN入口。
  5. 输入 PIN 按回车,给设备起个名字,配对完成。

验证:Moonlight 里选中"桌面",客户端亮起主机画面、光标跟手,就成了。

按场景调帧率与码率

串流起来后,只动下表两个数值(在 Moonlight 客户端的设置里改),其余保持默认。

场景目标关键参数关键动作
① 有线局域网极限低延迟帧率锁60fps,码率30Mbps起步,带宽有富余加到50Mbps以上两端都插网线
② 无线接收端流畅不卡顿30fps,或 60fps 但分辨率降一档;码率比 ① 低一档客户端只连5GHzWiFi
③ 跨网络远程能连上优先30fps,码率再降一档Web 配置里启用upnp,让路由器自动转发端口

码率管清晰度,帧率管跟手感,网络稳定性管能不能用。状况差的时候先砍帧率和码率,编码器设置别碰。

排障速查:按症状对号入座

先别重启,对着症状走这条链路。

症状先看哪里怎么处理
浏览器提示站点不安全证书类型自签名所致,点"高级"继续访问;完全打不开再查47990端口
Moonlight 发现不了主机防火墙是否拦了47989和47990放行这两个端口,或给 Sunshine 加防火墙例外
PIN 配对失败Web 页是否已登录登录后在PIN入口填 PIN 并给设备命名
串流卡帧、花屏带宽余量和丢包码率、分辨率各降一档,或改走网线、5GHz
Linux 服务起不来用户服务是否已启用执行systemctl --user --now enable app-dev.lizardbyte.app.Sunshine

都对不上,就打开 Web 页的Troubleshooting标签页,逐条翻警告和错误;Linux 与 macOS 的日志在~/.config/sunshine/。

继续深挖:仓库里三处值得翻

  • docs/getting_started.md:各平台安装细节与首次配置全貌,刚装完的人先看它
  • docs/performance_tuning.md:AMD Enhanced Sync、NVIDIA Fast Sync 这类降延迟开关,追极致延迟再看
  • src_assets/common/assets/web/configs/tabs/:Web 页每个配置标签页的源码,想抠开关背后的机制翻这里

串通之后,家里的电视、卧室的平板、出门带的手机,点开 Moonlight 就是你的游戏机,沙发就是电竞椅。

【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进