将webm块作为独立视频播放

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将webm块作为独立视频播放相关的知识,希望对你有一定的参考价值。

我已经构建了一些代码,可以让MediaRecorder API捕获音频和视频,然后使用ondataavailable函数通过websockets将相应的webm文件blob发送到服务器。然后,服务器通过websockets将这些blob发送到客户端,websocket使用Media Source Extension API将视频放在缓冲区中。

这很好用,除非我想在中途启动一个流,我不能只发送最新的blob,因为blob本身是无法播放的。此外,如果我不按顺序发送blob,浏览器通常会抱怨音频编码不匹配。

我真的不太了解视频容器,编解码器等,因为我应该把它关闭,但我的问题是,我怎么能将这些blob作为独立视频播放?我可以以某种方式使用代码将第一个blob中的信息(可单独播放)添加到其他blob上吗?能够让游戏中途播放的好方法是什么?我会转码,但似乎需要太长时间,因为我想设置实时(或接近)流。

谢谢!

答案

使用MSE,您可以加载包含带有跟踪信息的WebM段的第一个块,然后加载,然后再开始加载集群。浏览器会搞清楚。

WebM群集以时间戳开头,这使得它可以工作。

以上是关于将webm块作为独立视频播放的主要内容,如果未能解决你的问题,请参考以下文章

如何在 iOS 视频播放器中播放 webm 文件

使用 HTML5 视频标签播放视频

如何在 html5 视频播放器中播放 wmv 文件

HTML5 视频无法在 Firefox 中播放

h5 video 视频播放开发 和 问题集合

HTML5 视频(webm 和 MP4)显示空白屏幕且无法播放