写了一个基于 electron-vue + ffmpeg 的 GUI
为什么写这个项目?
市面上已经有很多的转码软件了,但大多都是收费的,而且大版本会重新进行收费,虽然有免费 ffmpeg 可以用,但它那用命令的操作方式实在是不方便,想来想去就自己整了个
遇到的问题?
开发期间最大的问题是不确定 electron + ffmpeg 能不能实现我的想要的功能,在简单的调研后,写了个 demo,发现转码这个情况下是不能开启硬件加速的,导致默认是用 CPU 进行转码,而且转码极慢,经过几天的查资料查文档总算是能开启硬件加速了 🤨
原理
目前我是用了两种方法来执行 ffmpeg
用 node 子进程执行 ffmpeg 二进程文件(基本上只要是 ffmpeg 能支持的命令它都能运行,只不过需要自己实现一些方法,比如进度条展示等等) 用 fluent-ffmpeg 第三方库来执行(方便简单,但有局限性,比如想实现转 GIF 它就不支持) 最后
我知道大家很讨厌 electron,我也很讨厌,但架不住前端除了这个基本上就没得选了,所以还是写了这个项目,请大佬轻喷
1 回复
miniblink 试试这个?不过似乎只支持Windows