ffcreatorlite效果
注意:ffcreatorlite底层是使用ffmpeg命令拼接的方式实现的,所以需要多ffmpeg来支持opengl,目前使用ffmpeg-gl-transition开源项目来做支持opengl的调用。
这边做了多6.0的兼容https://github.com/YasinLin/ffmpeg-gl-transition/tree/ffmpeg6
ffmpeg编译
在开源项目https://github.com/BtbN/FFmpeg-Builds的基础上(感谢开源),做了对gl-transition的支持,目前在win64上编译成功ffmpeg6.0过,其他系统或版本的应该做类似调整,本文旨在完成编译的目标,细节并未做过多修饰,不喜勿喷,源码在https://github.com/YasinLin/FFmpeg-Builds/
- 其中有很多增加了不少代理的方法,如果没有代理需要注释下 HTTP_PROXY= 类似的环境变量(建议找个代理,下载可能会比较久,也容易导致失败)
- 需要安装docker和docker buildx插件
- images/base-win64/Dockerfile中需要修改下GH_REPO,修改成你自己的私有话docker库(支持上传的),实在没有可以用作者使用的GH_REPO=ghcr.io/btbn/ffmpeg-builds;建议全局搜索下dc.qyt.com自己做下替换
下面用ffmpeg6.0举个例子
git clone https://github.com/YasinLin/FFmpeg-Builds/
//构建基础镜像,并下载所有的插件
./makeimage.sh win64 gpl-nonfree 6.0
//可能需要执行多次,失败就push镜像到远程
// 执行docker push xxxx镜像
//最终执行完成后应该有两个镜像,一个是base,一个是base-win64
// 执行download.sh的时候会下载所有所需要的包,建议走代理
// 执行generate.sh是安装所有插件到镜像中
//开始编译ffmpeg
./build.sh win64 gpl-nonfree 6.0
//其中ffmpeg-gl-transition已经做好了兼容,执行的时候会自动构建并打开ffmpeg插件开关
ffcreatorlite兼容opengl
开源代码 https://github.com/YasinLin/FFCreatorLite
主要将xfade动效换成gltransition,见transition.js
并更改相应的ffmpeg命令拼接方法,见synthesis.js
相对开源原版开源项目(https://github.com/drawcall/FFCreatorLite 感谢开源)改进如下:
- 支持json模版定义场景,并渲染
- 支持幻灯片效果
- 支持opengl动效