如何使用WebRTC流式传输视频文件?

3
我希望能够通过WebRTC将通过文件输入选择的视频文件流式传输给同行。
细节: 为此,我想使用addstream方法而不是数据通道。
在我的代码中,我从文件生成了一个blob,像这样:
localVideo.src =  window.URL.createObjectURL(file);

这个视频在本地播放正常。

但我也想将这个视频流传给一个同行。

然后我尝试从 blob 生成一个 MediaStream,以便将其用作方法 addstream 的参数。

这些方法都无法在 Chrome 版本 37.0.2062.120 (64位) 上运行。

localVideo.captureStream

localVideo.createMediaElementSource

localVideo.captureStreamUntilEnded

localVideo.stream

localVideo.srcObject

localStream.mozCaptureStreamUntilEnded

有人知道怎么做吗?


这可能会给你一些方向:https://www.webrtc-experiment.com/Pre-recorded-Media-Streaming/。请注意,目前我不认为Chrome中有此实现。而且,`mozCaptureStreamUntilEnded` 仅适用于FireFox。 - Benjamin Trent
1个回答

1
你有两个选择:
  1. 使用数据连接,将每个帧推送到另一侧,然后播放每个帧。
  2. 如果你在使用Firefox,可以尝试mozCaptureStreamUntilEnded

目前Chrome没有专门用于将视频文件作为MediaStream进行流式传输的实现。

Muaz Kahn WebRTC Experiments有一个小脚本,可以简化此过程。它考虑了这两个选项。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接