WHIP 和 WHEP:使用 WebRTC 标准化的实时流媒体广播

根据 Dolby 的 Sergio Garcia Murillo 介绍,一段时间以来,应用 WebRTC 在作为实时媒体广播并是一个太好的选择,但是随着人们对于低延时的要求愈发强烈,使用 WebRTC 为实时媒体广播才开始进入人们的视野。当然,为了达到所谓的实时,广播公司需要程序化的命令行工作流程和对物理SDI和HDMI采集的硬件支持。尽管对于实时媒体而言,WebRTC 依旧是最好的媒体传输协议,但是目前 RTMP 任然是主流的解决方案,因为对 WebRTC 来说,没有一个标准化的信令协议可用,但当使用一些非 WebRTC 的协议例如 RTMP 和 SRT 时,可能会遇到一些问题,如协议转化、只能使用有限编解码器、转码困难等。

图片
图 1 广播公司需要支持

WHIP(WebRTC HTT Ingress Protocol) 是一个基于 HTTP 的协议,该协议允许基于 WebRTC 的内容输入到流媒体服务或 CDN 中。实现这样一个协议能帮助内容摄取,其设计的考虑有以下几个方面:

  • 简单易于实现
  • 方便使用和配置
  • 支持特定的用例(如单流、不定向流、客户端服务端模型等)
  • 内置身份验证
  • 支持负载均衡和重定向
  • 可扩展

如图 2 所示,WHIP 使用 HTTP POST 请求执行单次 SDP Offer/Answer,以便在编码器/媒体生产者(WHIP 客户端)和广播接收端点(媒体服务器)之间建立 ICE/DTLS 会话。一旦 ICE/DTLS 会话建立,媒体将从编码器/媒体生成器(WHIP 客户端)单向流向广播接收端点(媒体服务器)。为了降低复杂性,不支持 SDP 重新协商,因此在完成通过 HTTP 的初始 SDP Offer/Answer 后,不能添加或删除任何 track 或 stream 。相关的 IEFT 标准化提案进展如图 3 所示。

图片
图 2 WHIP 会话和注销
图片
图 3 WHIP 协议 IEFT 标准化提案进展

WHEP(WebRTC HTTP Egress Protocol) 允许基于 WebRTC 的观众观看来自流媒体服务和/或内容交付网络 (CDN) 或 WebRTC 传输网络 (WTN) 的内容,其可以轻松集成到播放器软件,在不支持 JavaScript 运行的设备例如电视上支持播放 WebRTC 流,图 4 表示了其会话和注销的流程。

图片
图 10 WHEP 会话和注销

对于 WHIP 和 WHEP 的下一步发展方向或者说需要提升的方面,Sergio 分享了自己的观点如下:

  • WHIP 需要支持更高质量的视频,例如 4K、4:4:4、10/12bits 视频,HDR/Dolby Vision 等;
  • 集成到 MEPG DASH 从而在跟多设备上提供更好的观看体验
  • 多 CDN WebRTC 服务方面
    • 避免单一服务商
    • 故障切换和备份
    • 负载均衡

来源:Kranky Geek WebRTC Fall 2022
内容整理:彭峰
Kranky Geek 是一个关于如何使用 WebRTC 构建实时通信应用的免费开发者大会,成立七年以来,该大会致力于帮助开发者将实时音视频纳入应用。本文介绍 Kranky Geek WebRTC 2022 秋季大会的第 8 节(共 10 节)内容。

版权声明:本文内容转自互联网,本文观点仅代表作者本人。本站仅提供信息存储空间服务,所有权归原作者所有。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至1393616908@qq.com 举报,一经查实,本站将立刻删除。

(0)

相关推荐

发表回复

登录后才能评论