使用 WHEP 和 WebRTC 在标准浏览器中预览 SRT 流

安全可靠传输协议(SRT)是互联网上点对点媒体传输的一个行业标准。今年,YouTube 宣布他们将加入 SRT 联盟,因此我们预计他们将很快为 SRT 提供支持,作为 RTMP 之外的摄入传输协议。在流媒体工作者中非常流行的开源视频制作软件 OBS 现在也支持 SRT 作为输出传输协议。

SRT 协议是用户数据报协议 (UDP) 的扩展,因此无法直接在标准 Web 浏览器中使用。以实时延迟将视频流式传输到浏览器的选项之一是使用 WebRTC。目前大多数网络浏览器都支持的一组标准。然而,直到最近,使用 WebRTC 消费媒体的标准协议一直缺失,而 IETF 倡议的WebRTC HTTP Egress Protocol (WHEP)将填补这一空白。应该指出的是,这是一个早期草案,协议细节仍在讨论和更改中。

我们开发并开源了一个工具 srt-whep,它结合了这两种协议和技术,以支持我们将在本文中介绍的许多用例。

程序输出监控

一个用例是提供基于Web浏览器的节目输出监控,以监测流媒体平台上的内容。这给你一个实时的反馈流,例如,在现场的记者可以用来知道什么时候进来。该记者只需使用他们手机中的Web浏览器进入一个网页,而无需安装任何应用程序。

使用 WHEP 和 WebRTC 在标准浏览器中预览 SRT 流

在此示例中,我们在调用者模式(默认)下使用 OBS 和 SRT 输出,并在侦听器模式下运行 srt-whep 应用程序。

srt-whep -i 0.0.0.0:1234 -o <streaming-platform>:<port> -p 8080 -s listener

配置 OBS 流输出以指向运行 srt-whep 应用程序的服务器以及本示例中的端口 1234。然后,WHEP 频道 URL 可在http://<srt-whep-server>:8080/channel上找到,并且可以使用WHEP 网络播放器进行播放。WHEP 网络播放器的演示可在此处获取:https ://webrtc.player.eyevinn.technology/

基于Web的多视图器

另一个用例是在标准 Web 浏览器和标准 WHEP Web 播放器中显示通过 SRT 渲染和传输的多视图/马赛克。

使用 WHEP 和 WebRTC 在标准浏览器中预览 SRT 流

在此示例中,多视图渲染器服务在 SRT 侦听器模式下运行,这意味着我们需要在调用者模式下运行 srt-whep 应用程序。

srt-whep -i <multiview-renderer-ip>:<multiview-port> \
  -o 0.0.0.0:1234 \
  -p 8080 \
  -s caller

WHEP 通道 URL 相同,但直通 SRT 在 SRT 侦听器模式下可用。

摄取监控

另一个用例是能够在一个标准的网络浏览器中监控进入流媒体平台的媒体。一个设置可以是这样的:

使用 WHEP 和 WebRTC 在标准浏览器中预览 SRT 流

您将在其中使用这些参数并在侦听器模式下运行 srt-whep 应用程序。

srt-whep -i 0.0.0.0:1234 -o <transcoder-ip>:<port> -p 8080 -s listener

WHEP 免责声明

如前所述,WHEP标准仍然是一个移动的目标,关于服务器或客户端是否应该发起SDP提议的讨论正在进行。我们选择用服务器端发起的报价来实现这个应用,因为在这种情况下,没有真正的谈判空间,因为应用只是通过它所收到的内容,没有发生转码的情况。

结论

基于标准协议的解决方案的好处是,您不会将自己锁定在特定的供应商中,无论是在播放端还是在后端组件上。

该应用程序在我们的 GitHub 上以开源形式提供,地址:https://github.com/Eyevinn/srt-whep。我们欢迎您尝试并提供反馈或拉取请求。

作者:Eyevinn Technology。它是视频技术、视频开发和可持续流媒体领域世界领先的独立专家。

本文为原创稿件,版权归作者所有,如需转载,请注明出处:https://www.nxrte.com/jishu/webrtc/28505.html

(0)

相关推荐

发表回复

登录后才能评论