Android - FFmpeg 自动化构建工具(FFmpeg4.1 + OpenSSL1.1.1 + NDK13/14/1516/17/18/19)

如果觉得有用,欢迎给个Star哦

前言

有问题请在Gihub上提ISSUE,邮件问题恕不能一一回复。

FFmpegBuildTool (中文)

Android下FFmpeg自动构建工具。

帮助你快速构建自己的FFmpeg静态库。

支持平台

  • MacOS (请提前安装Python)
  • Ubuntu (请提前安装Ptyhon)

特性

  • FFmpeg 4.1
  • OpenSSL 1.1.1B
  • 支持 NDK r13c r14b r15c r16b r17c r18b r19
  • 支持 架构 - armv7a/armv8a/x86/x86_64 (目前仅支持这些)

NDK下载地址:https://developer.android.com/ndk/downloads/revision_history

设置环境

# 添加下面内容到你的 ~/.bash_profile or ~/.profile 文件中
export ANDROID_SDK=
export ANDROID_NDK=

初始化OpenSSL仓库设置

./init-android-openssl all (armv7a armv8a x86 x86_64)

编译OpenSSL库

./compile-android-openssl all (armv7a armv8a x86 x86_64)

查看OpenSSL产物


./build/openssl-armv7a/

./build/openssl-armv8a/

./build/openssl-x86/

./build/openssl-x86_64/

初始化FFmpeg仓库设置

./init-android-ffmpeg all (armv7a armv8a x86 x86_64)

初始化FFmpeg配置模块

  • 如果你需要更多的编码和格式
./init-config-ffmpeg all 
  • 如果你需要更少的编码和格式,以减少库大小
./init-config-ffmpeg lite
  • 如果你需要更少的编码和格式,以减少库大小(包含HEVC功能)
./init-config-ffmpeg litehevc
  • 如果你需要最少的编码和格式,最小的库大小(仅支持支持功能)
./init-config-ffmpeg min

编译FFmpeg库

  • 克隆项目
git clone https://github.com/biezhihua/FFmpegBuildTool
cd FFmpegBuildTool
  • 构建所有架构
./compile-android-ffmpeg.sh all
  • 构建单一架构
./compile-android-ffmpeg.sh armv7a

查看FFmpeg产物

./build/ffmpeg-armv7a/

./build/ffmpeg-armv8a/

./build/ffmpeg-x86/

./build/ffmpeg-x86_64/

注意

部分主体结构借鉴自IJKPlayer (https://github.com/bilibili/ijkplayer)

如果觉得有用,欢迎给个Star哦

你可能感兴趣的:(Android,FFMPEG,FFMPEG,NDK16,NDK17,NKD18,NDK19)