在HTML中播放MPEG-1视频

问题描述 投票:3回答:2

我需要从浏览器动态播放MPEG-1文件。将它们上传到YouTube或转换视频不是一个选项。

我如何才能做到这一点?我已经看到了这一点,但答案不适用于MPEG-1。有办法在HTML5中播放mpeg视频吗?

在Chrome浏览器中,视频标签对文件不起作用。

<video class="fullscreen" autoplay>
    <source src="video/test2.mpeg">
</video>

它只是显示一个黑框和结巴的噪音。我可以确认视频没有损坏,因为我可以用VLC播放它。我只需要在一个特定的浏览器上工作(不一定要交叉兼容)。插件也可以,只要我不需要转换视频。虽然我宁愿避免使用它们。

html video mpeg
2个回答
3
投票

一些浏览器不支持旧格式的 <video> 故意限制网络上蹩脚的、传统的和可能不安全的视频格式的数量。

唯一的组合,有一个体面的工作机会是 H.264 (MP4)WebM (或Ogg Theora),所以你 必须 转换视频,为了获得良好的浏览器支持,你至少要生成这两种格式。

好消息是,现代编解码器比MPEG-1更有效,所以你会得到更小的文件。


其他的选择可能是。

  • 给用户一个直接链接到视频,这样他们就可以下载它,并在外部播放器中播放,比如VLC。

  • 使用oldschool嵌入视频 <object> 元素,并希望一些浏览器仍然有可以播放视频的传统插件(但例如Chrome最近已经取消了对所有插件的支持,除了几个专门为Chrome自己的API编写的插件)。

  • 使用Emscripten(asm.js)将MPEG-1解码器编译成JavaScript,自己将视频解码成 <canvas>. 现在的JS已经足够快了,可以做到这一点(虽然会很快耗尽移动设备的电池,而且一个糟糕的视频编解码器加上额外下载的JS解码器会大量浪费带宽)。


0
投票

你可以使用JSMPEG播放MPEG-1视频。https:/jsmpeg.com

示例代码在这里。https:/github.comphoboslabjsmpegblobmasterview-stream.html。

© www.soinside.com 2019 - 2024. All rights reserved.