Get Started

更新时间:2025-09-05 17:24:30

本指南将全面讲解低延迟 WebRTC 流媒体设置流程。我们将涵盖两种主要的工作流:RTMP 到 WebRTC 以及纯 WebRTC 端到端方案。

1. 编码要求

为确保最佳性能和浏览器兼容性,您的源流需遵守以下编码标准。

  • 视频编解码器H.264(不含 B 帧)。WebRTC 不支持 B 帧(双向预测帧),开启 B 帧将导致播放错误。
  • 音频编解码器Opus。现代浏览器在 WebRTC 播放过程中要求使用 Opus 音频编解码器。工作流 1 中针对 RTMP 采集有特殊说明。

转码说明:我们的平台支持对不满足上述要求的流进行转码(例如,包含 B 帧的视频或使用不同音频编解码器的流)。但转码会增加延迟并可能产生额外费用。该功能默认未开启。如需启用,请联系支持团队。

2. 工作流 1:RTMP 推流,WebRTC 播放

该工作流非常适合希望将 WebRTC 播放集成到现有 RTMP 推流流程中的用户。它兼具部署简单和低延迟的优点,唯一的不足是由于音频需要 AAC 转 Opus 转码,会有少量延迟。

RTMP 音频要求:如果您使用 RTMP 编码器,必须使用 AAC 音频格式,因为 RTMP 不支持 Opus。为确保浏览器兼容性,请联系技术支持开启 AAC 转 Opus 的转码服务。

步骤 1:配置 RTMP 编码器(以 OBS 为例)

您必须将您的编码器配置为发送兼容 WebRTC 的流。最关键的设置是禁用 B 帧。以下步骤以 OBS Studio(一款流行且免费的编码器)为例。

  1. 打开设置,并导航至 输出 选项卡。
  2. 输出模式 设置为 高级
  3. 选项卡中,找到 x264 选项 字段,并输入 bframes=0。这将显式禁用 B 帧。关于其他推荐的设置以提升流传输性能,请参考下方图片。

步骤 2:在 OBS 中设置您的流媒体推送目标

  1. 进入 OBS 设置界面的 Stream 标签页。
  2. Service 下拉菜单中选择 Custom…
  3. Server 字段中,填写您的 RTMP 推流地址,格式如下:
    rtmp://your-push-domain.com/appname/streamname
    • your-push-domain.com:您分配到的推流Domain。
    • appname:用于分组流的应用名称(例如 live)。必须在低延迟直播控制台中配置该名称,可用于为不同流类别应用特定设置或查看分析数据。
    • streamname:您的流的唯一标识。
  4. 单击 Apply,然后在 OBS 主窗口中点击 Start Streaming

3. 工作流2:端到端 WebRTC(更低延迟)

如需实现更低延迟,该工作流在推流(采集)和播放过程中均采用 WebRTC。我们支持两种 WebRTC 推流协议:

  • WHIP(WebRTC-HTTP 采集协议):现代行业标准。推荐使用,具有广泛的兼容性。配置详情请参阅我们的WHIP/WHEP 配置指南
  • 自定义 WebRTC 采集:一种自定义协议,需要安装特定的 OBS 插件。具体操作说明见下文。

为自定义 WebRTC 采集配置 OBS

前提条件:

安装步骤:

  1. 解压已下载的插件文件。
  2. 将插件 \data\obs-plugins\rtmp-services 文件夹中的 services.json 复制到您的 OBS 安装目录 C:\Program Files\obs-studio\data\obs-plugins\rtmp-services,并替换已有文件。
  3. 将插件 \obs-plugins\64bit 文件夹中的 obs-webrtc.dll 复制到您的 OBS 安装目录 C:\Program Files\obs-studio\obs-plugins\64bit

故障排查:如果新服务选项没有出现在 OBS 中,您还需要将 services.json 文件替换到用户专属目录:C:\Users[您的用户名]\AppData\Roaming\obs-studio\plugin_config\rtmp-services。

配置说明:

  1. 重启 OBS 并在 Settings 中进入 Stream 选项卡。
  2. Service 下拉菜单中选择 Wangsu webRTC
  3. Stream Key 字段中,填写您的 WebRTC 推流地址,格式如下。必须包含 .sdp 扩展名。 http://your-push-domain.com/appname/streamname.sdp
  4. 点击 Apply 并选择 Start Streaming

4. 播放与测试

当您的流开始推送后,您可以使用以下资源进行播放测试。

本篇文档内容对您是否有帮助?
有帮助
我要反馈
提交成功!非常感谢您的反馈,我们会继续努力做到更好!