电子应用可以播放本地支持的任何视频吗

时间:2016-10-01 21:39:35

标签: node.js video electron

我知道浏览器通常会将播放器限制为mp4webm类型的媒体,但我想知道它是否适用于基于电子的应用使用MKV和AVI等格式运行本地视频。我无法找到确切的消息来源告诉我什么是不可用的。

2 个答案:

答案 0 :(得分:7)

Electron仍局限于网络技术......

这意味着即使您可以通过节点API访问文件系统,但内容呈现发生在BrowserWindow内,它与基于webkit的浏览器具有相同的视频播放支持。 您可以将HTML5视频或画布用于此目的,这本身就是它的本质。 (理论上也支持Flash,但在我看来,运行它所需的工作量不值得......还有,它是 Flash ,所以,不。)

......但这并不完全正确

即使原生支持在那里结束,您也可以采用各种途径来解决这些限制。我将列出一些最常见的:

  • 在后台将MKV / AVI视频转换为支持的格式之一。这样做的缺点是需要整个视频文件出现在你的文件系统上(即不适用于流)。
  • 动态转码MKV / AVI流即刻支持的格式。这非常灵活,但对您的环境有一些严格的要求,比如在本地安装ffmpeg(或类似的东西)。如果你想分发你的应用程序,祝你好运。
  • 嵌入能够播放MKV / AVI的播放器。最常见的示例是通过节点绑定到libvlc嵌入的VLC播放器。查看wcjs-player& wcjs-prebuilt模块如果你想这样,它们是webchimera.js视频播放器的节点包装器,后者在后台使用VLC。 (我与他们没有关联,目前只使用模块在我的一个项目中使用了类似的东西。到目前为止。

我确定还有其他解决方案,但这些是我在研究这个主题时发现的最合乎逻辑的解决方案。希望这有帮助!

答案 1 :(得分:1)

如果您像我一样,并且在搜索“ .mkv Electron”之类的内容后遇到了该线程,请注意当前的最高响应不再准确。

Electron现在可以原生播放带有<video>元素的.mkv文件以及许多其他格式,包括.Avi。不要像我一样,尝试沿着可怕的兔子穴入webchimera,并尝试使其与电子一起工作。