使用Node将视频流式传输到HTML5

时间:2013-04-04 08:58:37

标签: html5 node.js websocket video-streaming html5-video

我一直在玩节点和websockets,并构建了一个小型测试应用程序,使用websockets传输音频。服务器使用createReadStream拆分mp3,使用node-throttle限制流,并使用“ws”模块感知二进制数据。 在客户端,我在websocket上拾取块并使用decodeAudioData(http://www.html5rocks.com/en/tutorials/webaudio/intro/)来解码和播放块。一切都比较好。

我接下来要做的就是以相同的方式将视频流式传输到HTML5视频标签。但我无法在网上找到任何参考资料来实现这一点,就像我上面的音频测试一样。

“decodeAudioData”是否有相应的视频?

我可以将数据块提供给视频代码吗?

我有一个类似的样本运行,我从... ...

https://gist.github.com/paolorossi/1993068

但这并不是我想要的。首先,它似乎并没有真正流向我。客户端在播放之前将其全部缓冲。 此外,与我的音频测试类似,我希望在服务器端限制流,以便在新客户端连接时,他们可以在当前所处的任何位置加入视频。即30分钟或其他什么。

由于

1 个答案:

答案 0 :(得分:8)

行,

我经过多次搜索后找到了解决方案。

我正在寻找MediaSource API ......

var mediaSource = new MediaSource();
var sourceBuffer = mediaSource.addSourceBuffer('video/webm; codecs="vorbis,vp8"');
sourceBuffer.append(new Uint8Array(data));

此链接提供了解决方案......

http://html5-demos.appspot.com/static/media-source.html