news 2026/9/11 10:09:34

Sunshine完整教程:五步跑通自托管游戏串流

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Sunshine完整教程:五步跑通自托管游戏串流

Sunshine完整教程:五步跑通自托管游戏串流

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

Sunshine 是一款完全开源免费的自托管串流服务器,配合 Moonlight 客户端使用,把你的电脑变成游戏串流主机:桌面与游戏画面实时编码后送到手机、平板、电视或另一台电脑,让你远程玩游戏不必坐在主机前,数据始终留在自己的设备里。这篇游戏串流教程带你走完从安装到调优的每一步。

搞懂原理:画面如何"跑"到另一块屏幕

这一节帮你在动手前建立完整心智模型,后面所有配置都会对号入座。

整条链路只有四步:

  1. 捕捉:从系统屏幕接口实时取帧——Windows 走桌面复制接口,Linux 走 KMS/DRM 或 Wayland,macOS 走系统屏幕捕获;
  2. 编码:由显卡硬件编码器压成 H.264 / HEVC / AV1 视频流,音频同步编码;
  3. 传输:通过低延迟网络协议,把视频流与你的输入指令双向传送;
  4. 渲染:Moonlight 客户端解码上屏,键鼠与手柄操作原路返回主机。

链路中编码环节决定延迟、网络环节决定清晰度——这也是后续调优的总纲。想深挖实现,可以看看 视频编码源码。

选一条安装路线装好它

这一节帮你按系统和使用习惯选安装方式,三条路线任选其一即可。

路线适用人群核心命令优点代价
包管理器Ubuntu/Debian/Arch/macOS 用户,求省事sudo apt install sunshine依赖自动解决、服务自动注册版本可能不是最新
源码编译想要最新功能或定制构建cmake .. && make完全可控、功能最前沿需自备 FFmpeg 等依赖,见 安装文档
Docker希望主机环境零污染docker run -d ... lizardbyte/sunshine卸载无残留、配置随卷迁移需基础 Docker 知识

按路线给出最小命令:

包管理器(Debian/Ubuntu;macOS 用户改用brew install sunshine):

sudo apt install sunshine

一条命令装完并注册为系统服务。

源码编译

git clone https://gitcode.com/GitHub_Trending/su/Sunshine && cd Sunshine

拉取源码并进入目录。

mkdir build && cd build && cmake .. && make -j$(nproc)

创建构建目录,配置并全核并行编译。

sudo make install

安装到系统。

Docker

docker run -d --name sunshine -p 47984-47990:47984-47990/tcp -p 48010:48010/udp -v /path/to/config:/config lizardbyte/sunshine:latest

后台运行,端口映射覆盖管理台与串流端口(含 UDP 48010),挂载目录保存配置。

✅ 装好后用浏览器访问https://localhost:47990,能看到页面即代表服务正常。

完成首次串流:管理台、配对、加应用

这一节帮你按顺序完成三件事,串出第一块画面。

  1. 打开管理台并创建账户:浏览器访问https://localhost:47990,首次进入会要求设置用户名和密码。⚠️ 这是管理台的唯一凭证且不会再次显示,务必记下。
  2. Moonlight 配对:在客户端设备上安装 Moonlight,局域网内通常能自动发现主机;选择"配对",把主机端弹出的四位 PIN 码填入客户端,互认完成,随后即可看到主机上的应用列表。
  3. 添加要串的应用:默认只有"桌面"和 Steam 大屏幕。进入 Applications 页点Add New,填名称、可执行文件路径与启动参数。⚠️ 应用列表仅在客户端重启时刷新,加完记得重启 Moonlight。

找不到对应平台的 Moonlight 客户端?管理台的Featured Apps页列出了官方推荐版本。

调出你的手感:编码器与三个关键参数

这一节帮你选定编码器、压低延迟,并给两种网络场景各留一条建议。

先按显卡选硬件编码(Sunshine 会自动识别并启用):

显卡WindowsLinuxmacOS
NVIDIANVENCNVENC软件编码
AMDAMD AMFVAAPI / Vulkan Video软件编码
IntelQuickSyncVAAPIVideoToolbox

没有硬件编码器时会回退软件编码,功能可用但 CPU 占用明显上升。

三个关键参数,都在 Configuration 页可调(支持关键词搜索,直接输名字比翻菜单快):

  • 分辨率与帧率:以客户端屏幕实际规格为准,不必硬上 4K;竞技类优先帧率,单机剧情类优先分辨率;
  • 比特率:局域网有线可放开到 30Mbps 以上,无线或远程环境调低一档保稳定;
  • 编码预设:竞技选低延迟预设,画质优先选高质量预设。

两种场景各一条关键建议:

  • 局域网:主机插网线,并开启local_network_only,避免把端口暴露到公网;
  • 远程:启用UPnP自动端口转发 +TLS加密,动态 IP 家庭再配动态 DNS,即可稳定实现低延迟串流。

串不动时的快查表:五个高频故障

这一节帮你跳过从头排查,直接定位最可能的原因。

Q:客户端搜不到主机?确认 Sunshine 服务在跑、两端在同一局域网、防火墙放行 47984–47990(TCP)与 48010(UDP);最稳妥是手动输入主机 IP,不依赖自动发现。

Q:画面卡顿、马赛克?降一档比特率试手感;网络优先有线;同时更新显卡驱动——硬件编码器对驱动版本很敏感。

Q:串流没声音?检查是否有程序独占音频设备,确认系统默认播放设备没被静音。

Q:操作不跟手?关掉无线外设的省电模式;确认客户端设备性能够用;关闭后台下载、视频等吃带宽的应用。

Q:多个客户端想各用各的画质?Sunshine 支持多客户端并发,每个客户端独立设置自己的串流参数,主机只提供最高规格画面源,无需在主机端折腾。

遇到编码器加载失败、断流一类问题,管理台的Logs页会记录完整运行日志,基本都能直接定位:

更多细节可参考 故障排查文档。

现在就可以做的三件事

  • ✅ 按选定的路线装好 Sunshine,确认https://localhost:47990能打开;
  • ✅ 在常用设备上装 Moonlight 完成 PIN 码配对,先串一次桌面;
  • ✅ 添加一两款常玩游戏,局域网跑一局,再按手感微调分辨率、比特率与预设。

串流调优没有满分参数,只有适合你的那组。装好它,让画面跟着你走。

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

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

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

Nmap源码深度解析:nmap_main核心机制与二次开发实战

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

作者头像 李华
网站建设 2026/9/11 10:06:31

从零写好README:GitHub项目文档与Sublime Text实战

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

作者头像 李华
网站建设 2026/9/11 10:03:20

双向链表从原理到实战:核心操作、性能分析与面试高频题

从事数据结构教学和底层开发这些年,我越来越发现一个规律:很多初学者能把单链表背得滚瓜烂熟,但一碰到双向链表就发怵。原因也很简单,单链表只需要管好一个next指针,双向链表却要同时维护prev和next两根线,…

作者头像 李华
网站建设 2026/9/11 10:02:34

WinForm高DPI清晰渲染与响应式布局实战

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

作者头像 李华
网站建设 2026/9/11 10:02:01

在智能手表上跑通直播:dart_simple_live 上手实践

在智能手表上跑通直播:dart_simple_live 上手实践 【免费下载链接】dart_simple_live 简简单单的看直播 项目地址: https://gitcode.com/GitHub_Trending/da/dart_simple_live 用 dart_simple_live(Simple Live)在 1.2~1.8…

作者头像 李华
网站建设 2026/9/11 10:01:59

context-mode:日志上下文检索与排障实战指南

凌晨两点,线上服务报错。我把关键字扔进日志,命中的那行写着一句冷冰冰的ERROR,但真正导致问题的请求参数、上游返回、埋点数据,全都散落在这行错误之前的好几十行里。那一刻我意识到,检索工具给了我最想要的那颗珠子&…

作者头像 李华