资讯动态

如何 3 步把闲置 PC 变成 Moonlight 游戏串流服务器?Sunshine 完整上手指南

发布时间:2026/9/20 8:58:41 来源:尧图企业网站定制
如何 3 步把闲置 PC 变成 Moonlight 游戏串流服务器Sunshine 完整上手指南【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine游戏 PC 的性能被锁在家里那台显示器前电视、平板、手机想用却用不了Sunshine是一个免费开源的自托管游戏串流主机装在游戏电脑上把画面和声音用硬件编码压缩后推送到任意设备上的 Moonlight 客户端接收端 App输入操作实时传回主机。无需订阅费串流链路完全自己掌控。Sunshine 是什么一台自己搭的低延迟串流主机一句话拆成三个角色主机端跑在游戏 PC 上的后台程序负责抓屏、编码、推流传输局域网或内网穿透后的互联网上实时压缩推送客户端Moonlight装在电视、平板、手机等任何你想看的设备上关键信息速览项目说明主机平台Windows 11、LinuxUbuntu 22.04 / Debian 13 / Fedora 43、macOS 14.2实验性、FreeBSD 15.1客户端Moonlight 客户端装在你想看画面的任意设备上硬件编码NVIDIANVENC、AMDAMF/VAAPI、IntelQuickSync/VAAPI、AppleVideoToolbox另有 CPU 软编兜底管理界面浏览器 Web UI默认https://localhost:47990最低配置4GB 以上内存、i3 / Ryzen 3 及以上 CPU主机与客户端建议 5GHz 802.11ac Wi-Fi 或有线授权GPLv3 开源免费无订阅费3 步装好 Sunshine 并完成首次串流1. 安装——按平台各选一条命令可直接复制# Windowswinget 一条命令装好 winget install LizardByte.Sunshine# macOS通过 Homebrew 安装实验性暂不支持手柄 brew tap LizardByte/homebrew brew install sunshine# LinuxFlatpak 一步到位注意 Flatpak/AppImage 不支持 KMS 捕获 # 需要该捕获后端请改用发行版 .deb/.rpm 包 flatpak install --system flathub dev.lizardbyte.app.Sunshine flatpak run --commandadditional-install.sh dev.lizardbyte.app.Sunshine# LinuxDebian/Ubuntu 用 .deb 包文件先从官方发布页下载 sudo apt install ./sunshine_{version}-1ubuntu24.04_amd64.deb各平台的完整安装方式AppImage、Fedora .rpm、Alpine 等见 docs/getting_started.md。2. 启动并打开 Web UI——Linux 上一条命令即启用用户服务并开机自启Windows 的 MSI 安装器默认已装成系统服务# Linux启用并启动用户服务 systemctl --user --now enable app-dev.lizardbyte.app.Sunshine没装成服务时直接在终端执行sunshine即可。浏览器打开https://localhost:4799047990是默认管理端口localhost可换成主机局域网 IP。浏览器会提示不安全网站这是自签名证书所致直接继续即可。⚠️首次启动会要求创建用户名和密码当场记下来——这是进后台的唯一凭据忘了要用命令行重置见文末故障对照。3. 配对 Moonlight 客户端——最快路径Moonlight 客户端里添加主机输入主机局域网 IP客户端屏幕会显示一串PIN码回到 Sunshine Web UI 顶部导航的PIN页面输入该码并给设备起个名字配对成功后在 Moonlight 里点击内置的 Desktop 应用画面和输入应该立刻打通顺手记住两个内置快捷键CtrlAltShiftN隐藏/显示鼠标光标CtrlAltShiftF1/F12切换串流显示器。3 个上手串流场景场景 A电视上直开 Steam 大屏Web UI 的 Applications 页签确认 Steam Big Picture 存在Linux 默认自带Windows 若缺失手动添加detached 命令填steam://open/bigpictureAudioVideo 页签把分辨率设成电视原生如 3840×2160码率按网络情况调整思路参考 docs/performance_tuning.md电视上的 Moonlight 选择 Steam Big Picture 启动直接进大屏界面 场景 B无显示器主机远程串流主机塞在机柜里人人在外面。Linux/X11 环境下SSH 进去指定显示服务启动即可ssh user主机IP export DISPLAY:0; sunshineNVIDIA 显卡在 X11 下走 NvFBC 捕获不接显示器时显卡可能停止输出此时需要 HDMI 欺骗器或 EDID 模拟器让显卡保持有人在用的状态。场景 C串流前自检网络质量串流卡顿多数要先查网络。主机起 iPerf3 服务端客户端做 60 秒反向 UDP 测试# 主机 iperf3 -s # 客户端{主机IP} 换成实际地址 iperf3 -c {主机IP} -t 60 -u -R -b 50M看客户端输出里的丢包和抖动理想值为丢包 5%、抖动 1ms。不达标先换 5GHz Wi-Fi 或改有线再谈提高码率。核心功能模块浏览器就是控制台Web UI基本不用手写配置配置文件为sunshine.confLinux 在~/.config/sunshine、Windows 在%ProgramFiles%\Sunshine\config但 UI 已覆盖全部AudioVideo编码器、分辨率、码率、音频输出设备Applications串流应用列表见下节Advanced / Network端口、UPnP、日志级别Featured Apps官方推荐的客户端与配套工具Troubleshooting日志与警告排障第一站每个配置项都能用顶部搜索框直接定位不用一页页翻右上角下拉菜单可切换界面主题全部配置项的逐项说明见 docs/configuration.md。应用即加即用应用列表apps.jsonApplications 页签点 Add New填名称、命令、工作目录、prep-cmd启动前执行的命令。默认清单在 src_assets/linux/assets/apps.json{ apps: [ { name: Desktop, image-path: desktop.png }, { name: Steam Big Picture, detached: [setsid steam steam://open/bigpicture], prep-cmd: [{ do: , undo: setsid steam steam://close/bigpicture }], image-path: steam.png } ] }必须记住的三条行为规则启动新应用会先终止正在串流的应用任一prep-cmd执行失败本次启动直接中止应用退出时串流随之结束所以 Steam 必须走detached分离进程方式否则串流立刻断掉Featured Apps 页签收录了 Moonlight 各平台客户端与配套工具省去自己搜索更多填写示例Steam 游戏、Epic 游戏等见 docs/app_examples.md。选对编码器硬件编码支持矩阵Sunshine 按显卡自动选用编码器也可在 AudioVideo 页签手动切换编码 API适配显卡支持平台NVENCNVIDIAWindows、LinuxQuickSyncIntelWindowsAMF / Media FoundationAMD / QualcommWindowsVAAPIAMD、Intel、NVIDIALinux、FreeBSDVideoToolboxApple、IntelmacOSVulkan VideoAMD / Intel / NVIDIALinux部分软编CPU任意全平台⚡ 实现分散在 src/nvenc/NVENC与 src/platform/VAAPI、Vulkan Video 及各平台抓屏后端。没有独显就选软编1080p 下 CPU 占用会明显上升——能硬编就别硬扛。虚拟手柄与 HDR虚拟手柄客户端插着 Xbox、DualSense 或 Switch Pro 手柄时Sunshine 会在主机上虚拟出一个同类型手柄游戏里看到的就是它。手柄类型WindowsLinuxFreeBSDmacOS通用 / DS4 / DS5 / Switch Pro / Xbox 360 / One / Series✅✅ 部分功能缺失❌Windows 主机需单独装驱动推荐Virtual HID Driver可选付费升级支持全部手柄类型及摇杆、触控板、自适应扳机等特性或退而用 ViGEmBus仅支持 Xbox 360 / DS4项目已停止维护装完驱动建议重启Linux 的虚拟输入基于uinput内核级虚拟输入设备实现见 src/platform/linux/input/驱动与授权状态可在 Web UI 的 Troubleshooting 页和系统托盘里查看HDR 串流Windows 正式支持Linux 实验性支持。主机操作系统必须先开启 HDR可能需要 HDR 显示器或 EDID 模拟器Moonlight 客户端侧也要打开 HDR 选项否则流按 SDR 输出主机开了 HDR 时画面还会发白过曝Linux 额外要求Intel/AMD 显卡 VAAPI 的 HEVC Main 10 或 AV1 10-bit 编码 KMS 捕获后端 支持 HDR 的合成器Gamescope、KDE Plasma 6常见故障处理5 类问题的现象-原因-解法速查1. 进不了 Web UI忘了账号密码现象浏览器能打开 47990但登录总是失败原因首次设置创建的凭据只存在主机本地无法找回解法停掉 Sunshine执行sunshine --creds {新用户名} {新密码}重置Flatpak 用flatpak run --commandsunshine dev.lizardbyte.app.Sunshine --creds {新用户名} {新密码}2. 浏览器打不开 47990现象连接被拒绝或一直转圈原因Sunshine 没在运行或防火墙拦了端口解法先systemctl --user status app-dev.lizardbyte.app.SunshineLinux确认服务存活再查防火墙规则放行 479903. 画面卡顿、丢包现象串流中途频繁卡帧日志出现 Buffer overrun原因主机网卡远快于链路上最慢的一段如主机 2.5Gb 有线、客户端 1Gb 或 Wi-Fi主机每 16ms 突发发一帧数据60fps中间设备缓冲撑不住就丢解法先用场景 C 的 iPerf3 定位瓶颈确认是速率差后把主机网卡降速2.5G→1G或升级到 0.23.1 之后的版本改进了突发传输4. Linux 上键鼠/手柄没反应现象画面正常输入完全无效原因运行 Sunshine 的用户没有 uinput 权限解法把用户加入input组后重新登录sudo usermod -aG input $USERFreeBSD 用pw groupmod input -m $USER仍无效则重新加载 udev 规则5. 主机开了 HDR串出来的画面发白过曝现象画面泛白、对比度异常原因Moonlight 客户端侧没开 HDR流按 SDR 解码解法客户端设置里启用 HDR并确认主机 HDR 已真正激活Linux 侧的捕获后端等附加要求见上文 HDR 小节出问题先看 Web UI 的 Troubleshooting 页每条 warning/error 都能展开看细节延伸入口文档与源码docs/getting_started.md各平台安装、首次设置、SSH 无头串流、HDR 细节docs/configuration.mdport、locale、编码器、音频设备等全部配置项逐项说明docs/troubleshooting.md凭据重置、网络测试、Linux 捕获与编码专项问题src/platform/各平台屏幕捕获与编码实现KMS、NvFBC、WGC、VAAPI…tests/单元测试与集成测试想摸清内部行为从这里入手【免费下载链接】SunshineSelf-hosted game stream host for Moonlight.项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价