FFmpeg开发笔记(九十七)国产的开源视频剪辑工具AndroidVideoEditor

《FFmpeg开发实战:从零基础到短视频上线》一书的"第 12 章 FFmpeg的移动开发"介绍了如何使用FFmpeg在手机上剪辑视频,方便开发者更好地开发类似剪映那样的视频剪辑软件。那么在Android系统上还有一款国产的开源视频剪辑框架Android-Video-Editor,通过该框架可以更方便地对视频进行剪辑和滤镜操作,下面就来介绍如何在App工程中使用Android-Video-Editor。

Android-Video-Editor是一款Android视频编辑开源工具,主要功能包括视频拍摄、视频裁剪、视频滤镜、视频压缩等等。Android-Video-Editor通过整合其他开源框架实现完整的剪辑功能,比如通过CameraView录制视频,通过VideoEdit编辑视频,通过Mp4Composer封装视频,通过SiliCompressor压缩视频,等等。
Android-Video-Editor的源码托管地址为https://github.com/LLhon/Android-Video-Editor(星星数1.3k),国内的镜像地址为https://gitcode.com/angcyo/Android-Video-Editor。该框架的最近版本更新于2019年4月,对应压缩包的下载地址为https://github.com/LLhon/Android-Video-Editor/archive/refs/heads/master.zip。
由于Android-Video-Editor源码的发布时间较早,为了让小海豚版本的Android Studio Dolphin能够打开它们,需要对App工程作如下修改:
1、升级Gradle版本和SDK版本;
2、把Support库迁移为Androidx库;
3、移除不适配小海豚版本的butterknife库;
4、把isoparser库由jar包导入方式改为maven导入方式;
5、另外修复了若干bug;
因为上述修改涉及到的内容较多,这里不再一一列出,博主把修改后的App源码上传到了Github,具体地址为https://github.com/aqi00/note/tree/master/Android-Video-Editor。大家可以拉取Github上修改好的Android-Video-Editor源码,就能用小海豚版本的Android Studio Dolphin导入Android-Video-Editor工程了。
打开Android-Video-Editor工程之后,发现该工程包括下列四个模块:
1、app模块,负责App界面的交互操作;
2、video-compressor模块,负责视频的编辑和压缩操作;
3、video-effect模块,负责视频的封装操作;
4、video-record模块,负责视频的录制操作;
那么通过Android Studio Dolphin编译Android-Video-Editor并安装到真机上,点击【相册】后加载系统相册中的所有视频文件,选择一个待加工的视频文件,打开该视频的编辑界面如下图所示:

编辑界面下方可以滑动选择待裁剪的视频片段,点击右下角的【滤镜】按钮,弹出滤镜选择列表如下图所示:

点击列表中的【怀旧】滤镜,编辑界面马上切换成昏黄的怀旧效果如下图所示:

点击右上角的【发布】按钮,App就开始执行对应的加工操作。加工之后的视频片段默认放在App安装路径下的cache目录,完整路径为"我的手机/Android/data/com.marvhong.videoeditor/cache/small_video/VIDEO_yyyymmdd_HHMMSS.mp4",其中yyyymmdd代表年月日,HHMMSS代表时分秒。

稍等片刻剪辑完成后,App会自动跳到视频播放界面观看加工好的视频片段。

更多详细的FFmpeg开发知识参见《FFmpeg开发实战:从零基础到短视频上线》一书。

相关推荐
jike_20266 小时前
iPhone采访录音同时拍现场照片的APP:图片音频同步记录实测
笔记·智能手机·音视频·语音识别
_祝你今天愉快6 小时前
从驱动来分析服务的添加过程
android
小猴子爱上树6 小时前
跨境电商翻译工具推荐:批量图片翻译、视频字幕翻译、智能抠图一站式搞定
人工智能·python·音视频
林澈在路上7 小时前
AI翻唱软件哪个好 2026国产AI写歌工具对比推荐
大数据·人工智能·深度学习·github·aigc·音视频·音频
阿童木写作8 小时前
跨马翻译:AI批量图片翻译与视频字幕翻译工具推荐
人工智能·python·音视频
Dovis(誓平步青云)9 小时前
折叠屏悬停看视频,上半屏和下半屏应该各做什么
android·java·服务器·开发语言·安全·音视频
alexhilton10 小时前
让架构边界变成可执行的测试
android·kotlin·android jetpack
hai_android11 小时前
SendChannel 与 ReceiveChannel 通信机制
android
数据治理自习室13 小时前
AI 应用评测体系(GraphRAG)
android·大数据·人工智能·kotlin
敢敢のwings13 小时前
Wan2.2 模型系统解读:从视频扩散到 WAM 世界模型模块
音视频