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开发实战:从零基础到短视频上线》一书。

相关推荐
stevenzqzq17 小时前
Android Koin 注入入门教程
android·kotlin
Sleepless_斑马17 小时前
RTMP/RTSP流媒体服务器搭建、ffmpeg推流桌面、vlc拉流
ffmpeg·rtmp·rtsp
炼金术18 小时前
SkyPlayer v1.1.0 - 在线视频播放功能更新
android·ffmpeg
用户2760381578118 小时前
鲲鹏+昇腾:开启 AI for Science 新范式——基于PINN的流体仿真加速实践
android
喜欢吃豆18 小时前
深度解析:FFmpeg 远程流式解复用原理与工程实践
人工智能·架构·ffmpeg·大模型·音视频·多模态
此去正年少18 小时前
编写adb脚本工具对Android设备上的闪退问题进行监控分析
android·adb·logcat·ndk·日志监控
落羽凉笙18 小时前
Python基础(4)| 玩转循环结构:for、while与嵌套循环全解析(附源码)
android·开发语言·python
十幺卜入19 小时前
Unity3d C# 基于安卓真机调试日志抓取拓展包(Android Logcat)
android·c#·unity 安卓调试·unity 安卓模拟·unity排查问题
frontend_frank19 小时前
脱离 Electron autoUpdater:uni-app跨端更新:Windows+Android统一实现方案
android·前端·javascript·electron·uni-app