我需要从浏览器动态播放 MPEG-1 文件。将它们上传到 YouTube 或转换视频不是一种选择。
我该怎么做? 我看过这个,但答案不适用于 MPEG-1。 Is there a way to play mpeg videos in HTML5?
视频标签不适用于 Chrome 文件:
<video class="fullscreen" autoplay>
<source src="video/test2.mpeg">
</video>
它只显示一个黑框和断断续续的噪音/声音。我可以验证视频没有损坏,因为我可以用 VLC 播放它。我只需要它在一个特定的浏览器上工作(它不必交叉兼容)。插件也可以,只要我不必转换视频即可。尽管我宁愿避开它们。
最佳答案
某些浏览器不支持 <video>
中的旧格式有意限制网络上糟糕的、遗留的和可能不安全实现的视频格式的数量。
唯一有可能发挥作用的组合是 H.264 (MP4) 和 WebM(或 Ogg Theora),因此您必须 em> 转换视频,为了获得良好的浏览器支持,您必须至少生成这两种格式。
好消息是现代编解码器比 MPEG-1 更高效,因此您将获得更小的文件。
其他选项可能是:
为用户提供视频的直接链接,以便他们可以下载视频并在 VLC 等外部播放器中播放。
使用 oldschool 嵌入视频
<object>
元素,并希望某些浏览器仍然具有可以播放视频的旧版插件(但例如 Chrome 最近删除了对所有插件的支持,除了几个专门为 Chrome 自己的 API 编写的插件)。使用 Emscripten (asm.js) 将 MPEG-1 解码器编译为 JavaScript,然后自行将视频解码为
<<canvas>
.现在的 JS 速度足以实现这一目标(尽管它会很快耗尽移动设备的电池电量,而且糟糕的视频编解码器与额外下载 JS 解码器相结合将是对带宽的巨大浪费)。
关于html - 以 HTML 格式播放 MPEG-1 视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24465117/