8000
Skip to content

Latest commit

 

History

3,254 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Foundation Sunshine

English 中文简体 Français Deutsch 日本語

基于 LizardByte/Sunshine 的增强分支,专注于 Windows 游戏串流体验

使用文档 · LizardByte 文档 · QQ 交流群


░▒▓ 核心特性

  • HDR 全链路 — 双格式编码 (PQ + HLG)・逐帧 GPU 亮度分析・HDR10+ / HDR Vivid 动态元数据・完整静态元数据透传
  • 虚拟显示器 — 深度集成 ZakoVDD・Zako Direct 零拷贝借帧・5 种屏幕模式・多客户端 GUID 会话
  • 音频增强 — 7.1.4 环绕声 (12ch)・Opus DRED 丢包恢复・持续音频流・远程麦克风・虚拟扬声器位深匹配
  • 编码优化 — NVENC SDK 13.0・AMF QVBR/HQVBR/多硬件实例・编码器结果缓存 (260x)・自适应下采样・Vulkan 编码器
  • 文件夹共享 — Windows 主机目录映射・资源管理器右键共享・只读安全默认值・已配对设备授权
  • 控制面板 — Tauri 2 + Vue 3 + Vite・深色模式・QR 配对・实时监控・WebUI 渲染优化
  • 输入增强 — 客户端独立配置・原生精密触摸板适配・虚拟鼠标驱动 (vmouse)

░▒▓ 技术细节

HDR 全链路技术方案

双格式 HDR 编码:HDR10 (PQ) + HLG 并行支持

传统串流方案仅支持 HDR10 (PQ) 绝对亮度映射,当终端设备能力不足或亮度参数不匹配时,会出现暗部细节丢失、高光截断等问题。

因此在编码层加入了 HLG(Hybrid Log-Gamma, ITU-R BT.2100)支持,采用相对亮度映射:

  • 场景参考式亮度适配:HLG 基于相对亮度曲线,显示端根据自身峰值亮度自动进行色调映射,低亮度设备上暗部细节保留显著优于 PQ
  • 高光区域平滑滚降:HLG 的对数-伽马混合传输函数在高亮区域提供渐进式滚降,避免 PQ 硬截断导致的高光色阶断裂
  • 天然 SDR 向后兼容:HLG 信号可直接被 SDR 显示器解码为标准 BT.709 画面,无需额外的色调映射处理

逐帧亮度分析与自适应元数据生成

在 GPU 端集成了实时亮度分析模块,通过 Compute Shader 对每帧画面执行:

  • MaxFALL / MaxCLL 逐帧计算:实时统计帧级最大内容亮度(MaxCLL)和帧平均亮度(MaxFALL),动态注入 HEVC/AV1 SEI/OBU 元数据
  • 异常值鲁棒过滤:采用百分位截断策略剔除极端亮度像素(如高光镜面反射),防止孤立高亮点拉高全局亮度参考导致整体画面偏暗
  • 帧间指数平滑:对连续帧的亮度统计值应用 EMA(指数移动平均)滤波,消除场景切换时元数据突变引发的亮度闪烁

完整 HDR 元数据透传

HDR10 静态元数据(Mastering Display Info + Content Light Level)完整透传,NVENC / AMF / QSV 编码输出的码流携带符合 CTA-861 规范的完整色彩容积与亮度信息。

HDR10+ / HDR Vivid 动态元数据注入

在 NVENC 编码管线中,基于逐帧亮度分析结果,自动生成并注入以下动态元数据 SEI:

  • HDR10+ (ST 2094-40):携带场景级 MaxSCL / distribution percentiles / knee point 等色调映射参考,支持 Samsung/Panasonic 等 HDR10+ 认证电视精确色调映射
  • HDR Vivid (CUVA T/UWA 005.3):ITU-T T.35 注册的中国超高清视频联盟(CUVA)标准,PQ 模式下提供绝对亮度色调映射、HLG 模式下提供场景参考相对亮度色调映射,覆盖国产终端生态
虚拟显示器集成 (需 Windows 10 22H2+)

深度集成 ZakoVDD 虚拟显示器驱动:

  • 自定义分辨率和刷新率支持,10-bit HDR 色深
  • 5 种屏幕组合模式:仅虚拟屏、仅物理屏、混合模式、镜像模式、扩展模式
  • IOCTL 实时通信,串流开始/结束时自动创建/销毁虚拟显示器
  • 每个客户端独立绑定 VDD 会话(GUID),支持多客户端快速切换
  • 无需重启的实时配置更改
  • Zako Direct 零拷贝借帧:可直接借用 VDD 共享帧纹理,转换完成后立即归还,减少 VDD 捕获链路中的 GPU 拷贝
音频增强
  • 7.1.4 环绕声 (12声道):Dolby Atmos 等沉浸式音频布局的完整声道映射
  • Opus DRED 深度冗余:基于神经网络的丢包恢复,100ms 冗余窗口在网络抖动时平滑补偿
  • 持续音频流:无中断的音频流,无声时自动填充静音数据,避免音频设备反复初始化
  • 虚拟扬声器自动匹配:自动检测并匹配 16bit/24bit 等位深格式的虚拟音频设备
捕获与编码优化

捕获管线

  • Gamma-Aware 着色器:根据 DXGI ColorSpace 自动选择 sRGB / 线性 Gamma 颜色转换
  • 高质量下采样:双三次 (Bicubic) 插值,支持 fast / balanced / high_quality 三档
  • 动态分辨率检测:实时感知显示器分辨率与旋转变化,编码器自适应调整
  • GPU 亮度分析:Compute Shader 两阶段规约、P95/P99 截断、帧间 EMA 时域平滑

NVENC

  • SDK 13.0:精细化码率控制与 Look-ahead
  • HDR 元数据 API:NVENC SDK 12.2+ 原生 Mastering Display / Content Light Level 写入
  • HDR10+ / HDR Vivid SEI:逐帧自动生成 ST 2094-40 和 CUVA T.35 动态元数据
  • SPS 码流规范:H.264/HEVC SPS bitstream restrictions 完整写入

AMF (AMD)

  • QVBR / HQVBR / HQCBR:高级码率控制,支持质量等级 UI 调节
  • 低延迟可控:AMF Low Latency、输入队列大小和 AV1 编码延迟模式均可在 WebUI 显式调整,兼顾极低延迟与驱动稳定性
  • 多硬件实例编码:支持 AMF Multi-HW Instance / Smart Access Video 相关开关,允许驱动在支持的平台上拆分编码负载

通用

  • 编码器结果缓存:探测结果持久化,后续连接 26s → <100ms (260x 加速)
  • 自适应下采样:支持双线性 / 双三次 / 高质量三档分辨率缩放,适配 4K 主机→1080p 串流场景
  • Vulkan 编码器:实验性 Vulkan 视频编码支持
  • 无锁证书链shared_mutex 替代 mutex,消除 TLS 队列开销


░▒▓ 推荐客户端

搭配以下优化版 Moonlight 客户端可获得最佳体验(激活套装属性)

更多资源:awesome-sunshine


░▒▓ 系统要求
组件 最低要求 4K 推荐
GPU AMD VCE 1.0+ / Intel VAAPI / NVIDIA NVENC AMD VCE 3.1+ / Intel HD 510+ / GTX 1080+
CPU Ryzen 3 / Core i3 Ryzen 5 / Core i5
RAM 4 GB 8 GB
系统 Windows 10 22H2+ Windows 10 22H2+
网络 5GHz 802.11ac CAT5e 以太网

GPU 兼容性:NVENC · AMD VCE · Intel VAAPI


░▒▓ 文档与支持

Docs LizardByte QQ群

想帮杂鱼写代码? → Build Config WebUI


「 ░▒▓ 」


加入QQ群

Star History

Star History Chart

About

Sunshine fork: an enhanced sunshine, a self-hosted game streaming host for Moonlight with HDR10/HDR Vivid, virtual displays, advanced audio, optimized encoders, and a modern control panel.

Topics

Resources

Contributing

Stars

6.6k stars

Watchers

12 watching

Forks

Releases

Sponsor this project

Contributors

Languages

0