跳转至

H.264 / WebRTC

H.264 视频功能

H.264 简介

H.264(也称为 MPEG-4 AVC)是一种高效的视频压缩标准,广泛应用于流媒体传输。相比 MJPEG,H.264 具有以下优势:

  • 更低的带宽占用
  • 更好的压缩效率
  • 支持音频传输
  • 更低的网络延迟

实现方案

One-KVM 提供两种 H.264 编码方案:

Libx264 方案(推荐)

Libx264 是 VideoLAN 开发的高性能 H.264 编码库。此方案:

  • 已集成到最新版本中并默认启用
  • 性能优异,使用便捷
  • 支持 WebRTC 实时传输
  • 源码可在 ustreamer 分支 查看
FFmpeg 方案(已停止维护)

此方案使用 FFmpeg 软件编码,由于性能问题已停止维护:

  • CPU 占用较高
  • 在低性能设备上体验较差
  • 仅作为历史方案归档使用

WebRTC 配置

WebRTC 说明

WebRTC 使用 P2P 连接和 UDP 传输,可以:

  • 降低网络延迟
  • 减少服务器负载
  • 提供更好的实时性能

默认配置

WebRTC 默认使用 Google STUN 服务器,配置位于 /etc/kvmd/override.yaml

1
2
3
4
5
6
7
janus:
    stun:
        host: stun.l.google.com
        port: 19302
        retries: 5
        retries_delay: 5.0
        timeout: 5.0

远程访问配置

支持两种远程访问方式:

  1. 端口映射(不推荐)

    • 需要映射 20000-40000 UDP 端口
    • 配置复杂,安全性较低

    端口映射

  2. 异地组网(推荐)

    • 使用 Tailscale 等工具建立安全隧道
    • 配置简单,安全性高
    • 无需映射大量端口

    Tailscale

视频质量调优

画质优化

如果视频质量不理想,可以:

  1. 在网页右上角系统菜单中调整 H.264 比特率
  2. 根据网络状况适当调整分辨率
  3. 选择合适的画质预设

演示视频