当前位置 : 主页 > 网页制作 > Nodejs >

在Node.js / Electron app中播放本地.avi视频

来源:互联网 收集:自由互联 发布时间:2021-06-16
我正在开发的应用程序中的疯狂差距在 HTML5视频实现中似乎很少(或没有)支持AVI.所以,我需要一个跨平台的解决方案,并且能够与我的电子应用程序打包. 视频在本地托管 我不反对动态编
我正在开发的应用程序中的疯狂差距在 HTML5视频实现中似乎很少(或没有)支持AVI.所以,我需要一个跨平台的解决方案,并且能够与我的电子应用程序打包.

>视频在本地托管
>我不反对动态编码(ffmpeg avi – > mp4并原生使用HTML5?)
>由于VLC和电子变化(开发人员无法跟上),WebChimera似乎正在死亡(是否有另外一个npm包可以做到这一点?)
>调用本机VLC实例的包装器可能有效 – 但是如何通过我的包装确保系统上的VLC可用?
>我是否应该在单独的窗口中生成本机应用程序(即Linux上的Totem)? (看起来很笨重)
>最新的videoj-java插件显然有问题(https://github.com/Afterster/videojs-java/issues/2),并且向电子堆栈添加另一层(java)似乎有点令人讨厌.
> FFBinaries(https://github.com/vot/ffbinaries-node)似乎很有希望…但奇怪的是FFPlay不适用于Linux(虽然我怀疑我的Linux消费者可能已经安装了ffmpeg).

注意:文件肯定是AVI.我无法改变这一点.

任何提示/指针非常感谢!

UPDATE

在我的系统上,使用ffmpeg进行转换:

ffmpeg -i infile.AVI -vcodec copy -acodec copy outfile.mp4

没有时间(他们是短视频):

real    0m0.138s
user    0m0.100s
sys     0m0.032s

因此,我倾向于使用我的程序打包ffmpeg并在加载之前进行转换.

看看这个项目:

> https://github.com/RIAEvangelist/electron-video-player

根据已知的支持格式:

> https://github.com/RIAEvangelist/electron-video-player#known-supported-video-types

它支持:

> mp4
> webm
> ogg
> mov(MPEG4 | H.264)
> avi(MPEG4 | H.264)
> mkv(MPEG4 | H.264)
> m4v(MPEG4 | H.264)

看看它的源代码,看看你是否可以类似地实现它.

您说您需要AVI支持,但AVI只是一个容器 – 如果您需要其他编解码器而不是此项目支持的编解码器,那么您仍然需要先对其进行转码.

如果你不能这样做那么你可以尝试使用类似的东西:

> https://www.npmjs.com/package/mplayermanager

并使用您的应用或其他播放器捆绑mplayer.

网友评论