webrtc - 从 webrtc session 中提取视频流并转换为 rtmp

标签 webrtc rtmp rtp wowza

如何在正在进行的 webrtc 视频通话中提取视频流并将其发送到可以进行转码的服务器。

就我对 webrtc 的了解而言,它是点对点的。那么我们如何将流传输到服务器呢?

我的最终目标是在服务器端将此流转换为 rtmp。

在 Google 群组中提出了关于 similar issue 的相关问题,但尚未得到答复。

PS:我知道一些应用程序已经在做同样的事情(例如 webinarjam )。但不确定他们是如何做到的。

最佳答案

  • 您在 JS 级别没有任何东西可以实现此目的。 MediaStream 和 MediaStream Track 是不透明对象,您只能通过现有 API 进行操作或从源/接收器获取/设置它们。
  • 如果您使用 webrtc.org 提供的 native 实现,则可以做到这一点。我的意思是,您可以访问原始帧,但仍然需要您重新编码,可能需要重新保护(加密)并重新打包以作为 rtmp 进行流式传输。
  • 另一个也许更实用的解决方案是使用现有的媒体服务器,无论是商业的还是开源的,它支持 webrtc 和 rtmp,并且会为您做一切事情。那里有很多,你有很多选择。您仍然需要处理应用程序的逻辑部分,并与信号服务器、STUN/TURN 等集成......
  • 需要最少编码但灵活性最小的最终解决方案是使用可处理 webrtc 和 rtmp 的 PaaS 产品。同样,这里有多种选择可供选择,使用正确的关键字进行 Google 搜索将为您提供所需的内容。

关于webrtc - 从 webrtc session 中提取视频流并转换为 rtmp,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41770099/

相关文章:

google-chrome - 自由切换 WebRTC 到 SIP

webrtc - 创建 WebRTC PeerConnection 时,我可以跳过 ICE (STUN/TURN) 发现过程吗?

actionscript-3 - 关于computeSpectrum() 和RTMP

android - 让 Android 设备成为音乐服务器

stream - C# - 捕获 RTP 流并发送到语音识别

ffmpeg - 如何将包含 B 帧且没有 DTS 的视频流写入 MP4 容器?

c++ - 如何从 qml webgl 获取麦克风到 c++?

javascript - 双方远程视频均不显示

streaming - 为什么RTMP流协议(protocol)的url路径不同?

webrtc - 是否可以通过 RTMP 或 RTP 流式传输到 Twilio 视频 API