基于FFmpeg的国产播放器开源框架也有很多了,前有哔哩哔哩的ijkplayer,后有小红书的RedPlayer,参见之前的文章《使用国产的ijkplayer播放器观看网络视频》和《使用国产的RedPlayer播放器观看网络视频》。
除此以外,FFmpegAndroid也是一款优秀的国产Android音视频开源工具,它基于Kotlin编写,音视频工作方向包括:直播、短视频、流媒体传输、视频播放器、音乐播放器、音视频算法、流媒体后端、音视频编辑、图像处理等等,可谓功能强大。
接下来以Android Studio Ladybug(小瓢虫版本)为例,介绍如何通过Android Studio编译运行FFmpegAndroid的demo工程。
一、调整Gradle版本
打开android目录下的gradle/wrapper/gradle-wrapper.properties,把下面这行配置
distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-bin.zip
改成如下这行配置,表示把Gradle版本从8.10.2降级到8.7。
distributionUrl=https\://services.gradle.org/distributions/gradle-8.7-bin.zip
二、更新工具库的仓库位置
打开android目录下的build.gradle,把里面的两处maven配置
maven {
url 'https://maven.google.com/'
name 'Google'
}
改成下面配置:
google()
因为原配置用到了Gradle最新版本的特性,而Gradle8.7暂不支持该特性。
此外,还要把下面这行配置
classpath 'com.android.tools.build:gradle:8.8.0'
改成下面这行配置,表示把Gradle插件版本降级到适配Android Studio Ladybug的8.6版本:
classpath 'com.android.tools.build:gradle:8.6.0'
完成以上配置修改后,等待FFmpegAndroid工程编译通过,把主入口的app模块安装到手机上,启动之后的App界面如下图所示:
点击【音频处理】按钮,打开音频文件的加工界面如下图所示:
或者点击【视频处理】按钮,打开视频文件的加工界面如下图所示:
可见FFmpegAndroid支持音频处理、视频处理、ffmpeg推流、rtmp推流直播、ffmpeg滤镜等功能,可谓将常见的音视频播放和剪辑操作一网打尽。
更多详细的FFmpeg开发知识参见《FFmpeg开发实战:从零基础到短视频上线》一书。