Sunshine软件依赖:运行环境要求
2026-02-04 04:05:51作者:乔或婵
概述
Sunshine是一款自托管的游戏流媒体服务器,支持通过Moonlight客户端在各种设备上进行低延迟的游戏串流。要成功部署和运行Sunshine,需要满足特定的硬件和软件依赖要求。本文详细介绍了Sunshine在不同操作系统下的运行环境要求,包括硬件规格、软件依赖、系统配置等关键信息。
硬件要求
最低硬件配置
| 组件 | 要求 |
|---|---|
| GPU | AMD: VCE 1.0或更高版本 Intel: Linux需VAAPI兼容,Windows需Skylake或更新支持QuickSync Nvidia: 支持NVENC的显卡 |
| CPU | AMD: Ryzen 3或更高 Intel: Core i3或更高 |
| 内存 | 4GB或更多 |
| 网络 | 主机: 5GHz, 802.11ac 客户端: 5GHz, 802.11ac |
4K流媒体建议配置
| 组件 | 要求 |
|---|---|
| GPU | AMD: Video Coding Engine 3.1或更高 Intel: Linux需HD Graphics 510或更高,Windows需Skylake或更新 Nvidia: Linux需GeForce RTX 2000系列或更高,Windows需GTX 1080或更高 |
| CPU | AMD: Ryzen 5或更高 Intel: Core i5或更高 |
| 网络 | CAT5e以太网或更好 |
HDR流媒体建议配置
| 组件 | 要求 |
|---|---|
| GPU | AMD: Video Coding Engine 3.4或更高 Intel: HD Graphics 730或更高 Nvidia: Pascal架构GPU(GTX 10系列)或更高 |
| CPU | AMD: Ryzen 5或更高 Intel: Core i5或更高 |
| 网络 | CAT5e以太网或更好 |
操作系统要求
支持的操作系统版本
mindmap
root(Sunshine操作系统支持)
Windows
Windows 10+
Windows Server(不支持虚拟游戏手柄)
macOS
macOS 14+
Linux
Debian 13+(trixie)
Fedora 41+
Ubuntu 22.04+(jammy)
软件依赖详解
核心运行时依赖
Sunshine运行时需要以下核心依赖库:
| 依赖库 | 功能描述 | 必需性 |
|---|---|---|
| OpenSSL | SSL/TLS加密支持 | 必需 |
| libcurl | HTTP客户端功能 | 必需 |
| miniupnpc | UPnP端口转发 | 必需 |
| Threads | 多线程支持 | 必需 |
| Boost | C++扩展库 | 可选 |
| nlohmann_json | JSON解析库 | 必需 |
平台特定依赖
Linux平台依赖
flowchart TD
A[Linux平台依赖] --> B[显示相关]
A --> C[输入设备]
A --> D[音频支持]
A --> E[网络功能]
B --> B1[libdrm-dev]
B --> B2[libwayland-dev]
B --> B3[libx11-dev]
B --> B4[libxcb相关库]
C --> C1[libevdev-dev]
C --> C2[libinput支持]
D --> D1[libpulse-dev]
D --> D2[opus-dev]
E --> E1[avahi]
E --> E2[libcap-dev]
完整Linux依赖列表:
libcap-dev(KMS捕获)libdrm-dev(KMS)libevdev-devlibgbm-devlibminiupnpc-devlibnotify-devlibnuma-devlibopus-devlibpulse-devlibssl-devlibwayland-dev(Wayland支持)libx11-dev(X11支持)libxcb-shm0-devlibxcb-xfixes0-devlibxcb1-devlibxfixes-devlibxrandr-devlibxtst-dev
macOS平台依赖
通过Homebrew安装的依赖:
brew install boost cmake doxygen graphviz icu4c miniupnpc ninja node openssl@3 opus pkg-config
Windows平台依赖
通过MSYS2安装的依赖:
pacman -S mingw-w64-ucrt-x86_64-boost mingw-w64-ucrt-x86_64-cmake
mingw-w64-ucrt-x86_64-cppwinrt mingw-w64-ucrt-x86_64-curl-winssl
mingw-w64-ucrt-x86_64-MinHook mingw-w64-ucrt-x86_64-miniupnpc
mingw-w64-ucrt-x86_64-nodejs mingw-w64-ucrt-x86_64-nsis
mingw-w64-ucrt-x86_64-onevpl mingw-w64-ucrt-x86_64-openssl
mingw-w64-ucrt-x86_64-opus mingw-w64-ucrt-x86_64-toolchain
编码器依赖
NVIDIA GPU编码依赖
pie title NVIDIA编码依赖
"CUDA Toolkit" : 40
"NVENC驱动" : 30
"NVFBC支持" : 20
"兼容性补丁" : 10
CUDA兼容性要求:
- CUDA版本: 12.9.1
- 最低驱动版本: 575.57.08
- 支持的Compute Capability: 50,52,60,61,62,70,72,75,80,86,87,89,90,100,101,103,120,121
AMD GPU编码依赖
- VA-API兼容驱动
- libva-dev开发库
- 相应的AMDGPU驱动
Intel GPU编码依赖
- VA-API支持
- libva-dev开发库
- Intel Media SDK或oneVPL
构建工具要求
编译器和构建工具
| 工具 | 最低版本 | 推荐版本 |
|---|---|---|
| CMake | 3.25 | 3.30.1 |
| GCC | 13+ | 14 |
| Clang | 17+ | 18 |
| Apple Clang | 15+ | 16 |
| Ninja | 最新 | 最新 |
开发工具链
timeline
title Sunshine构建工具链
section 编译工具
CMake 3.25+ : 项目配置
GCC/Clang : C++编译
Ninja : 构建系统
section 依赖管理
pkg-config : 库发现
Git : 源码管理
section 文档生成
Doxygen : API文档
Graphviz : 图表生成
网络要求
网络配置要求
| 网络组件 | 要求 | 说明 |
|---|---|---|
| 带宽 | 上传≥15Mbps | 1080p流媒体 |
| 延迟 | <30ms | 游戏级延迟 |
| 端口 | 47984-47990 TCP/UDP | Sunshine服务端口 |
| UPnP | 建议启用 | 自动端口转发 |
网络优化建议
- 有线连接优先: 使用CAT5e或更高级别以太网
- 5GHz WiFi: 802.11ac或更新标准
- QoS配置: 优先处理游戏流量
- 端口转发: 手动配置或使用UPnP
系统配置要求
Linux系统配置
KMS捕获配置:
sudo setcap cap_sys_admin+p $(readlink -f $(which sunshine))
X11捕获配置:
sudo setcap -r $(readlink -f $(which sunshine))
服务管理:
systemctl --user start sunshine
systemctl --user enable sunshine
Windows系统配置
- 需要管理员权限安装虚拟游戏手柄驱动
- 防火墙规则需要允许Sunshine通信
- 建议使用Windows服务模式运行
macOS系统配置
- 首次运行需要授予屏幕录制权限
- 需要授予麦克风访问权限
- 系统音频流需要Soundflower或BlackHole
容器化部署要求
Docker运行要求
classDiagram
class DockerRequirements {
+Linux内核4.15+
+Docker Engine 20.10+
+NVIDIA容器工具包(可选)
+设备映射支持
+特权模式(可选)
}
class SunshineContainer {
+GPU直通
+音频设备映射
+输入设备访问
+网络配置
}
DockerRequirements --> SunshineContainer : 满足
性能优化建议
硬件优化
- GPU选择: 根据分辨率需求选择合适GPU
- 内存配置: 8GB以上内存获得更好性能
- 存储优化: 使用SSD提升加载速度
- 网络升级: 千兆以太网或WiFi 6
软件优化
- 编码设置: 根据硬件调整编码参数
- 分辨率适配: 匹配客户端显示能力
- 比特率优化: 平衡画质和流畅度
- 缓冲区调整: 优化网络适应性
故障排除与验证
依赖验证命令
检查OpenSSL:
openssl version
检查CUDA(如适用):
nvcc --version
检查VA-API支持:
vainfo
系统兼容性检查
- 验证GPU编码能力
- 检查驱动程序版本
- 测试网络连接质量
- 确认系统资源充足
总结
Sunshine的运行环境要求涵盖了硬件、软件、网络等多个方面。成功的部署需要:
- 合适的硬件配置: 根据流媒体分辨率需求选择GPU和CPU
- 完整的软件依赖: 安装所有必需的运行时库和开发工具
- 正确的系统配置: 配置权限、服务和网络设置
- 优化的网络环境: 确保低延迟和高带宽连接
通过满足这些要求,用户可以构建一个稳定、高效的Sunshine游戏流媒体服务器,享受高质量的游戏串流体验。建议在部署前仔细检查所有依赖项和系统要求,以确保最佳的运行效果。
登录后查看全文
热门项目推荐
相关项目推荐
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0152- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
LongCat-Video-Avatar-1.5最新开源LongCat-Video-Avatar 1.5 版本,这是一款经过升级的开源框架,专注于音频驱动人物视频生成的极致实证优化与生产级就绪能力。该版本在 LongCat-Video 基础模型之上构建,可生成高度稳定的商用级虚拟人视频,支持音频-文本转视频(AT2V)、音频-文本-图像转视频(ATI2V)以及视频续播等原生任务,并能无缝兼容单流与多流音频输入。00
auto-devAutoDev 是一个 AI 驱动的辅助编程插件。AutoDev 支持一键生成测试、代码、提交信息等,还能够与您的需求管理系统(例如Jira、Trello、Github Issue 等)直接对接。 在IDE 中,您只需简单点击,AutoDev 会根据您的需求自动为您生成代码。Kotlin03
Intern-S2-PreviewIntern-S2-Preview,这是一款高效的350亿参数科学多模态基础模型。除了常规的参数与数据规模扩展外,Intern-S2-Preview探索了任务扩展:通过提升科学任务的难度、多样性与覆盖范围,进一步释放模型能力。Python00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0112
项目优选
收起
暂无描述
Dockerfile
733
4.75 K
Ascend Extension for PyTorch
Python
617
793
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.01 K
1.01 K
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
433
394
华为昇腾面向大规模分布式训练的多模态大模型套件,支撑多模态生成、多模态理解。
Python
145
237
Claude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed.
Get Started
Rust
1.18 K
152
暂无简介
Dart
983
252
Oohos_react_native
React Native鸿蒙化仓库
C++
348
403
昇腾LLM分布式训练框架
Python
166
198
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.68 K
989