news 2026/9/4 15:21:02

Sunshine 自托管游戏串流部署指南:从装好主机到客厅大屏

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Sunshine 自托管游戏串流部署指南:从装好主机到客厅大屏

Sunshine 自托管游戏串流部署指南:从装好主机到客厅大屏

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

周五晚上,你想把游戏主机接上客厅电视玩 3A 大作,却不想搬主机也不想牺牲画质。Sunshine(自托管游戏串流服务器)干的就是这件事:把电脑里的游戏实时编码、通过网络送到 Moonlight 客户端播放。它完全跑在你自己的网络上,不经过第三方服务器,延迟和画质都掌握在你手里。

📌 项目速览:Sunshine 是什么、适合谁

Sunshine 是 Moonlight 生态的自托管串流服务端,定位为"家里那台能串流的电脑"。它只负责把画面、音频和输入信号搬运起来,解码和播放交给各端 Moonlight 客户端。

  • 硬件编码——支持 NVENC、AMF、QuickSync、VAAPI、VideoToolbox 等 GPU 编码,CPU 基本不加班
  • Web 管理界面——浏览器里完成配置、客户端配对和应用管理
  • 跨平台宿主——Windows、Linux、macOS、FreeBSD 都能装
  • 手柄模拟——把客户端的键鼠手柄映射成主机可识别的虚拟设备

安装完成后浏览器里第一眼看到的界面,从这里进入所有设置

🚀 部署路径怎么选:装 Sunshine 前先做这道选择题

官方推荐直接用预编译包(docs/getting_started.md 也是这么写的),Windows 下载 MSI 双击安装,Linux 按发行版下载 deb/rpm 安装:

sudo dpkg -i ./sunshine-{distro}-{version}-{arch}.deb # Debian/Ubuntu sudo dnf install ./Sunshine-{version}.{distro}.{arch}.rpm # Fedora/openSUSE ./sunshine.AppImage --install # 其他 Linux 发行版

没有对应发行版包时才考虑以下方案:

方案适合谁一句话说明
Flatpak包管理保守的 Linux 用户沙盒运行,但不支持 KMS 捕获
Docker需要隔离环境或快速测试的人官方明确不推荐给大多数用户
源码编译想改代码的开发者git clone https://gitcode.com/GitHub_Trending/su/Sunshine后走 CMake 构建

🎮 第一次跑起来:三个动作串起 Sunshine

1. 登录 Web 界面。装好后 Sunshine 会在 47990 端口打开管理界面,浏览器访问https://localhost:47990即可,替换 localhost 为内网 IP 也能从手机配对。浏览器提示"不安全"是正常的,证书是自签的。首次登录会让你创建用户名和密码,先记下来。

应用管理页:每个游戏一行命令,点一下就能开始串流

2. 配好应用和设置。在 Applications 页添加游戏,"Desktop" 应用开箱即用,不启动任何程序、直接串整个桌面。进设置页前记得先选主题;搜配置项比翻列表快得多——在搜索框里直接输upnpportws_port就能定位,默认端口是 47990(Web)和 47989(串流 WebSocket),开 UPnP 后路由器会自动帮你转发。

配置项多,用顶部搜索框定位是最快的办法

3. 用 Moonlight 客户端配对。客户端里添加主机,Sunshine 会弹出一串 PIN;到 Web 界面导航栏的 PIN 页输入并给设备起个名字,配对成功后,之后同一台设备免 PIN 直连。

串起来之后还有几件小事。串流中Ctrl+Alt+Shift+N可隐藏/显示光标,Ctrl+Alt+Shift+F1F12切换串流显示器;Linux 上建议注册服务并开机自启:

systemctl --user --now enable app-dev.lizardbyte.app.Sunshine

Windows 上键盘鼠标和完整手柄模拟依赖单独安装的 Virtual HID Driver(安装器可带装);macOS 首次运行要授予屏幕录制和麦克风权限,且目前手柄暂不支持、属于实验性功能。

🛋️ 按场景给方案:调 Sunshine 到最顺手

客厅大屏。想上 HDR:主机系统先激活 HDR,Moonlight 客户端也要勾选 HDR 选项,两者缺一不可;Windows 宿主官方支持,Linux 宿主实验性支持,且 Linux 必须用 KMS 捕获,编码器要支持 HEVC Main 10 或 AV1 10-bit(如 Intel/AMD 走 VAAPI)。无 HDR 显示可用 EDID 模拟头,串流前单独校一次亮度。

平板、手机、电视盒子。各端装 Moonlight 官方客户端即可,配对一次长期有效;电视盒子可用嵌入式版本。把游戏提前加进应用列表,远端一点即串;纯远程桌面场景记得用Ctrl+Alt+Shift+N隐藏光标。

家庭多人共用。每台设备单独配对、PIN 页给设备起可辨认的名字,方便区分和排查。应用列表是全局共享的,谁都能一键启动。

⚠️ 避坑指南:高频问题自查表

遇到问题先看 docs/troubleshooting.md,再对照这张表:

现象可能原因解决办法
客户端找不到主机防火墙拦了 47990 端口,或 UPnP 未生效放行 47990(TCP)及串流端口,确认 UPnP 开关
输入不响应Linux 用户不在input组;Windows 没装 Virtual HID DriverLinux 把用户加入 input 组并重新登录;Windows 装驱动后重启
卡顿、帧率低硬件编码器没启用,或 Wi-Fi 带宽不够确认编码器为硬件编码;换 5GHz 频段或改有线
HDR 无效果主机未激活 HDR 或客户端未勾选 HDR两端都开 HDR;Linux 换 KMS 捕获并确认编码器支持 10-bit
音频缺失音频输出设备未指定;Linux 缺虚拟声卡macOS 留空 Audio Sink 走系统回环;Linux 用虚拟 sink 或装 Steam 音频驱动
外置独显捕获不到Windows 桌面复制 API 只捕获负责显示的 GPU给独显接显示器或 HDMI 假负载,游戏跑在该显示输出上

Web 界面的 Troubleshooting 页汇总了全部警告和错误,排查从这里开始

🧭 生态与方向

Moonlight 官方客户端覆盖 PC、Android、iOS 和嵌入式设备,Sunshine 只管串流端,两端解耦。技术走向上,编码矩阵会随 GPU 厂商继续扩展新编码接口,HDR 支持也在 Linux 宿主上逐步铺开,具体节奏可跟踪 docs/changelog.md。

部署完成前过一遍这张清单:

  • 浏览器能打开https://localhost:47990,账号密码已记录
  • 确认编码器是硬件编码,UPnP 与串流端口符合预期
  • 应用列表里至少有一个可启动的游戏,外加 Desktop
  • 输入侧就绪:Linux 已入 input 组 / Windows 已装 Virtual HID Driver
  • 串流过一次后,翻过一遍 Troubleshooting 页,无新增警告

现在就可以打开 Moonlight,选 Desktop 应用串一场,先把链路跑通,再逐个把游戏填进列表。

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

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/4 15:19:54

技术博客创作指南:合规选题与工具链实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/4 15:19:14

book-to-skill 实战教程:书籍转AI Agent技能完整部署与落地指南

阅读前置说明 本文是全网最全的 book-to-skill 落地实战文档,摒弃所有AI套话与空洞理论,全部内容基于官方源码、真实部署场景、性能实测数据编写。涵盖原理溯源、架构拆解、全平台安装部署、完整命令实操、产物解析、场景落地、报错排查、性能优化、版权…

作者头像 李华
网站建设 2026/9/4 15:17:53

构建统一AI模型网关:通用中转站接入Codex实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/4 15:17:03

WezTerm 实战:从单窗格到远程会话的 4 段配置

WezTerm 实战:从单窗格到远程会话的 4 段配置 【免费下载链接】wezterm A GPU-accelerated cross-platform terminal emulator and multiplexer written by wez and implemented in Rust 项目地址: https://gitcode.com/GitHub_Trending/we/wezterm 深夜构建…

作者头像 李华
网站建设 2026/9/4 15:17:02

MOS管栅极上拉与下拉电阻的三大作用与选型指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/4 15:14:51

脆性多晶材料三维裂纹传播相场-离散元耦合模型

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华