
一晚打通自托管游戏串流Sunshine 实战【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine你有一台显卡不错的 PC想让电视或平板直接玩它上面的游戏却被搬主机、重插 HDMI 这件事拦住。Sunshine 就是干这活的开源工具装在主机上的自托管游戏串流服务端配上 Moonlight 客户端画面和声音走局域网实时过去不收订阅费。Sunshine 装在主机端负责抓屏和硬件编码Windows、Linux、macOS实验性手柄暂不支持、FreeBSD 都有包Moonlight 是装在电视、手机、盒子上的接收端画面编码走显卡硬编通道NVIDIA 用 NVENC、Intel 用 QuickSync、AMD 用 AMF都不行就退到 CPU 软编码系统自动挑第一个能用的。所有设置都在浏览器管理界面完成不用碰配置文件。主机端装好并把服务拉起来安装这一步看系统。Windows 从 Release 页下载Sunshine-Windows-AMD64-installer.msi双击走完Linux 按发行版装 deb、copr 或 pacman 包用 Flatpak 的话装完补跑一次flatpak run --commandadditional-install.sh dev.lizardbyte.app.Sunshine装输入依赖macOS 把 DMG 里的Sunshine.app拖进 Applications。安装器走完没报错就算过了第一关。接着把服务拉起来。Windows 上 MSI 已把它注册成服务并设了开机自启什么都不用做Linux 上手动启动一次systemctl --user start app-dev.lizardbyte.app.Sunshine。再跑systemctl --user status app-dev.lizardbyte.app.Sunshine状态显示在运行这步就过了。然后浏览器打开https://localhost:47990。地址栏跳出证书警告属正常现象——服务用的是自签名证书选继续访问即可。首次进入会让你设管理员用户名和密码记牢它后面配对全靠它登录。看到欢迎页这步过了。Moonlight 配对与第一帧串流配对发生在客户端那边。在电视或手机打开 Moonlight它会自动发现局域网里的 Sunshine首次连接弹出四位 PIN。回 Web UI 顶部导航点 PIN 页把 PIN 输进去、给设备起个名出现成功提示即完成。此时 Moonlight 里应能列出这台主机和自带的 Desktop 应用——它串整个桌面不启动任何程序。选 Desktop、点开始客户端出现主机桌面且声音同步第一次串流就成立了。要串真实游戏进 Applications 页新建一条填应用路径、工作目录、启动参数$(HOME)这类环境变量会被替换。两条规矩要记。像steam这种秒退的启动器进程启动方式必须选detached用普通命令会立刻断流Flatpak 版应用命令前加flatpak-spawn --host否则沙箱里找不到宿主程序。同一时间只有一条串流新串流会结束旧的那个。最常动的四个设置项配置页顶部有搜索框几百个设置项输关键词直达不用一页页翻。encoder锁编码通路默认行为是挑第一个可用编码器NVIDIA 卡 nvencIntel quicksyncAMD amdvceLinux 上还有 vaapi、vulkan 可选software 是 CPU 兜底。什么时候动它怀疑编码通路有问题时手动锁定一个做对照或想长期固定某条通路。拿不准就留空自动选择够用。max_bitrate给带宽封顶单位 Kbps。默认0的意思是主机端不设上限完全按 Moonlight 端每次请求的码率走。只有你想给主机封顶带宽共享网络、怕挤占别的流量时才改比如max_bitrate 5000。局域网打游戏一般用不到封顶动了反而压画质。nvenc_preset速度换压缩1 最快、7 同码率下压缩最狠延迟也更高默认 1。只有网络或客户端解码顶不住时才往大数调否则直接提码率效果更直接。virtual_sink主机不出声audio_sink默认用系统默认音频设备不填就行多设备时填设备名Linux 用pactl info | grep Sink查。想在串流时把主机扬声器静音别动audio_sink用virtual_sink指定虚拟声卡如 Steam Streaming Speakers画面照常、本机不出声。换种活法用它 如果你的客户端是一台轻薄本把它当解码器用。主机留在书房跑 3A 大作笔记本装 Moonlight 只负责出画面机身不烫、功耗也低。前提是两台同局域网且网络稳客户端分辨率按自己屏幕设。走一遍配对、选游戏、开始、退出全程不碰主机本体。如果你的电视不想再添盒子直接串 Desktop。在电视上放本地片源、看网页、跑桌面应用都靠它静态内容占带宽很小max_bitrate保持默认即可。日常就是开机进 Moonlight 选 Desktop看完退出。如果一家人共用、或要跨网络串各成员在自己设备上独立配对Web UI 里每个设备单独命名互不影响。真要跨网络连家里主机时把upnp从默认disabled改成enabled让 47990 等端口在路由器上自动转发省得手动配端口映射。卡住时按症状排查https://localhost:47990打不开 → 多半是防火墙拦了端口 → 确认 Windows 安装器生成的防火墙规则还在临时关防火墙能打开就是它拦的回头放行 47990。Moonlight 发现不了主机 → 两台不同网段或服务没在跑 → Linux 上跑systemctl --user status app-dev.lizardbyte.app.Sunshine确认在运行且同网段再不行重启服务和路由器。画面卡顿、掉帧 → 先怀疑网络稳定性而不是 Sunshine → 主机端iperf3 -s客户端iperf3 -c {主机IP} -t 60 -u -R -b 50M标准是丢包低于 5%、抖动低于 1ms两头速度差太多如 2.5G 网卡配 WiFi 客户端时把主机网卡降一档或客户端改有线往往立刻好转。忘了 Web UI 密码 → 不用重装 →sunshine --creds {new-username} {new-password}重置后重启服务再登录。Linux 上键鼠或手柄没反应 → 运行 sunshine 的用户不在 input 组 →sudo usermod -aG input $(USER)注销重登生效。还定位不到就翻日志Web UI 的 Troubleshooting 页内置日志和告警导航Windows 日志在%ProgramFiles%\Sunshine\config\sunshine.logLinux / macOS / FreeBSD 在~/.config/sunshine/sunshine.log。现在就能做的最小行动打开 Moonlight选已配对主机里的 Desktop点开始看到桌面画面后退出再进 Web UI 的 Applications 页把一款真实游戏填进列表路径、工作目录、启动方式选detached串一次、退出一次。配对、启动、串流、退出全走一遍整套链路就算你的了。延伸阅读完整参数表docs/configuration.md疑难杂症索引docs/troubleshooting.md安装与初始化全流程docs/getting_started.md【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考