OBS RTS推流

更新时间:
复制为 MD 格式

本文介绍使用 OBS 实现超低延时直播推流的详细内容。

背景信息

RTMP:兼容性好,OBS 通过「自定义」服务即可填入推流域名与串流信息,适合沿用既有 RTMP 工具链的场景。

WHIP(WebRTC-HTTP ingestion protocol):基于 HTTP POST 将实时音视频送入服务器的轻量协议,便于与 WebRTC 采集链路对接;WHIP 为 WebRTC 生态常见接入方式,具有低延时、易集成的特点。

准备工作

  1. 完成超低延时直播域名配置并跑通Demo。

  2. 下载并安装OBS推流工具(OBS版本不低于29.1.0)。下载地址,请参见OBS Studio

  3. 确认本次推流使用RTMPWHIP其中一种即可,无需同时配置两种方式。

使用OBS推流

步骤一:视频编码最佳实践(RTMP 与 WHIP 均需配置)

在 OBS 中选择文件 > 设置 > 输出,将视频编码调整为下列推荐组合,用于去除 B 帧、控制 GOP、降低端到端延时。该配置对 RTMP 推流与 WHIP 推流均适用。

  • 输出模式:高级

  • 关键帧间隔(秒,0=自动):1

    说明

    关键帧间隔设置不超过3秒,此处推荐设置为1秒。

  • CPU使用预设(高=较少的CPU占用):veryfast

  • 配置(Profile):baseline

  • 微调(Tune):zerolatency

OBS输出编码设置

步骤二:使用地址生成器生成推流地址

在视频直播控制台使用地址生成器获取推流信息。请按后续选用的方式只准备其中一种:RTMP推流需复制 RTMP 地址(见下方示例);WHIP推流需复制 RTS 的 artc://地址,供步骤四转换为 HTTP(S) 入口。也支持自定义拼接,具体操作请参见方法二:自定义拼接

  • RTMP示例(以控制台实际生成为准):rtmp://push.example.com/live/live?auth_key=******

  • ARTC(供 WHIP 转换)示例:artc://al.yun.com/live/live?auth_key=******

  1. 登录视频直播控制台
  2. 在左侧导航栏选择地址生成器

  3. 在生成器中完成域名、AppName、StreamName、鉴权等配置,查看并复制本次推流所需的RTMPARTC推流地址。

    地址生成器示意

步骤三(可选):使用 RTMP 推流

  1. 运行 OBS,选择文件 > 设置 > 直播

    • 服务:选择自定义

    • 服务器串流密钥:填入步骤二中复制的 RTMP 信息(按控制台展示拆分或合并;若页面提供完整 URL,可按 OBS 要求拆分为服务器与密钥两段)。单击确定保存。

步骤四(可选):使用 WHIP 推流

  1. 步骤二中复制的 ARTC 推流地址转换为 WHIP 可用的 HTTP(S) URL。

    1. 将协议头由 ARTC 切换为 HTTP(S),示例:

      1. 原地址为:artc://al.yun.com/live/live?auth_key=******

      2. 修改为:https://al.yun.com/live/live?auth_key=******

    2. 若使用 HTTPS 推流,需按环境配置证书。具体请参见配置HTTPS安全加速

  2. 在 OBS 中配置 WHIP。

    1. 运行 OBS。

    2. 选择文件 > 设置 > 直播

    3. 按如下参数填写后单击确定

      参数

      描述

      服务

      选择WHIP

      服务器

      输入步骤2修改后的WHIP协议URL。

      Bearer Token

      串流密钥为空。

      OBS WHIP 直播设置

步骤五:开始推流并验证

  1. 在 OBS 主界面来源区域添加音视频来源后,单击开始推流

  2. 在直播控制台流管理中确认在线流。

    1. 在视频直播控制台左侧导航栏选择流管理

    2. 选择待查询的域名,输入AppNameStreamName

      流管理查询

    3. 单击查询,查看当前实时在线流。

  3. 使用 Web 端播放 RTS 流做快速验证。

    1. 进入RTS Web播放器

    2. 单击拉流页签。

    3. 输入已开通超低延时直播的播流地址URL。

      RTS Web 播放器

    4. 单击开始拉流,播放 RTS 直播流。