FFmpeg Android Maker 项目教程
1. 项目的目录结构及介绍
FFmpeg Android Maker 项目的目录结构如下:
ffmpeg-android-maker/
├── ffmpeg-android-maker.sh
├── scripts/
│ ├── check-host-machine.sh
│ └── ...
├── build/
│ ├── ffmpeg/
│ └── external/
├── output/
└── stats/
目录介绍:
ffmpeg-android-maker.sh
: 项目的启动脚本,负责下载和构建 FFmpeg 及其依赖。scripts/
: 包含辅助脚本和用于下载、构建 FFmpeg 及其依赖的脚本。build/
: 用于构建 FFmpeg 及其依赖的目录。ffmpeg/
: 用于构建 FFmpeg 的目录。external/
: 用于安装外部库的目录。
output/
: 包含 FFmpeg 库和头文件的输出目录,用于 Android 项目。stats/
: 包含统计信息的目录。
2. 项目的启动文件介绍
项目的启动文件是 ffmpeg-android-maker.sh
。该脚本的主要功能如下:
- 检查主机环境是否正确配置。
- 下载并构建 FFmpeg 及其依赖。
- 将构建好的库和头文件复制到
output
目录。
脚本主要部分:
# 检查主机环境
$[SCRIPTS_DIR]/check-host-machine.sh || exit 1
# 构建目录
BUILD_DIR=$[BASE_DIR]/build
BUILD_DIR_FFMPEG=$BUILD_DIR/ffmpeg
BUILD_DIR_EXTERNAL=$BUILD_DIR/external
# 输出目录
OUTPUT_DIR=$[BASE_DIR]/output
3. 项目的配置文件介绍
项目没有显式的配置文件,但可以通过传递参数给 ffmpeg-android-maker.sh
脚本来进行配置。以下是一些常用的参数:
-abis
: 指定要构建的 Android ABI(如armeabi-v7a
)。-ffmpeg-version
: 指定要构建的 FFmpeg 版本。-enable-xxx
: 启用特定的 FFmpeg 组件。-disable-xxx
: 禁用特定的 FFmpeg 组件。
示例:
./ffmpeg-android-maker.sh -abis armeabi-v7a -ffmpeg-version 4.4
以上命令将构建适用于 armeabi-v7a
ABI 的 FFmpeg 4.4 版本。