首页
/ Sunshine软件依赖:运行环境要求

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-dev
  • libgbm-dev
  • libminiupnpc-dev
  • libnotify-dev
  • libnuma-dev
  • libopus-dev
  • libpulse-dev
  • libssl-dev
  • libwayland-dev (Wayland支持)
  • libx11-dev (X11支持)
  • libxcb-shm0-dev
  • libxcb-xfixes0-dev
  • libxcb1-dev
  • libxfixes-dev
  • libxrandr-dev
  • libxtst-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 建议启用 自动端口转发

网络优化建议

  1. 有线连接优先: 使用CAT5e或更高级别以太网
  2. 5GHz WiFi: 802.11ac或更新标准
  3. QoS配置: 优先处理游戏流量
  4. 端口转发: 手动配置或使用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 : 满足

性能优化建议

硬件优化

  1. GPU选择: 根据分辨率需求选择合适GPU
  2. 内存配置: 8GB以上内存获得更好性能
  3. 存储优化: 使用SSD提升加载速度
  4. 网络升级: 千兆以太网或WiFi 6

软件优化

  1. 编码设置: 根据硬件调整编码参数
  2. 分辨率适配: 匹配客户端显示能力
  3. 比特率优化: 平衡画质和流畅度
  4. 缓冲区调整: 优化网络适应性

故障排除与验证

依赖验证命令

检查OpenSSL:

openssl version

检查CUDA(如适用):

nvcc --version

检查VA-API支持:

vainfo

系统兼容性检查

  1. 验证GPU编码能力
  2. 检查驱动程序版本
  3. 测试网络连接质量
  4. 确认系统资源充足

总结

Sunshine的运行环境要求涵盖了硬件、软件、网络等多个方面。成功的部署需要:

  1. 合适的硬件配置: 根据流媒体分辨率需求选择GPU和CPU
  2. 完整的软件依赖: 安装所有必需的运行时库和开发工具
  3. 正确的系统配置: 配置权限、服务和网络设置
  4. 优化的网络环境: 确保低延迟和高带宽连接

通过满足这些要求,用户可以构建一个稳定、高效的Sunshine游戏流媒体服务器,享受高质量的游戏串流体验。建议在部署前仔细检查所有依赖项和系统要求,以确保最佳的运行效果。

登录后查看全文
热门项目推荐
相关项目推荐