栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

FFmpeg4.4 for Android 最新2022.5.6源码编译教程

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

FFmpeg4.4 for Android 最新2022.5.6源码编译教程

下载相关工具与源码
  1. 下载 Linux 的 NDK 工具包
    https://developer.android.google.cn/ndk/downloads/index.html
  2. 下载FFmpeg源码
    可以去Github下载,也可以使用命令git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg
环境准备

将FFmpeg源码与NDK工具包放入Linux环境,并解压。我这里使用的是Ubuntu虚拟机。

编写编译脚本

进入FFmpeg源码根目录,创建android_build.sh脚本文件,里面写相关编译脚本。需要根据自己的源码与NDK来修改相关路径。

最好使用root用户来运行命令./android_build.sh

armv7-a编译脚本

#!/bin/bash

make clean

SYSROOT=/home/jerry/android-ndk-r24/toolchains/llvm/prebuilt/linux-x86_64/sysroot
TOOLCHAIN=/home/jerry/android-ndk-r24/toolchains/llvm/prebuilt/linux-x86_64

CPU=armv7-a
ARCH=arm
API=29

CROSS_PREFIX=$TOOLCHAIN/bin/armv7a-linux-androideabi$API-

CC=${CROSS_PREFIX}clang
CXX=CC=${CROSS_PREFIX}clang++

PREFIX=./android/${CPU}_${API}/
OPTIMIZE_CFLAGS="-march=$CPU"

./configure --target-os=android 
--prefix=$PREFIX 
--arch=$ARCH 
--cpu=$CPU 
--cc=$CC 
--cxx=$CXX 
--cpu=$CPU 
--strip=$TOOLCHAIN/bin/llvm-strip 
--nm=$TOOLCHAIN/bin/llvm-nm 
--enable-shared 
--disable-static 
--disable-doc 
--disable-x86asm 
--disable-yasm 
--disable-symver 
--enable-gpl 
--cross-prefix=$CROSS_PREFIX 
--enable-cross-compile 
--sysroot=$SYSROOT 
--extra-cflags="-Os -fpic $OPTIMIZE_CFLAGS" 
--extra-ldflags="$ADDI_LDFLAGS" 
$ADDITIONAL_CONFIGURE_FLAG

make -j4
make install
# chmod -R 777 ./

armv8-a编译脚本

#!/bin/bash

make clean

SYSROOT=/home/jerry/android-ndk-r24/toolchains/llvm/prebuilt/linux-x86_64/sysroot
TOOLCHAIN=/home/jerry/android-ndk-r24/toolchains/llvm/prebuilt/linux-x86_64

CPU=armv8-a
ARCH=arm64
API=29

CROSS_PREFIX=$TOOLCHAIN/bin/aarch64-linux-android$API-

CC=${CROSS_PREFIX}clang
CXX=${CROSS_PREFIX}clang++

PREFIX=./android/${CPU}_${API}/

OPTIMIZE_CFLAGS="-march=$CPU"

./configure --target-os=android 
--prefix=$PREFIX 
--arch=$ARCH 
--cpu=$CPU 
--cc=$CC 
--cxx=$CXX 
--cpu=$CPU 
--strip=$TOOLCHAIN/bin/llvm-strip 
--nm=$TOOLCHAIN/bin/llvm-nm 
--enable-shared 
--disable-static 
--disable-doc 
--disable-x86asm 
--disable-yasm 
--disable-symver 
--enable-gpl 
--cross-prefix=$CROSS_PREFIX 
--enable-cross-compile 
--sysroot=$SYSROOT 
--extra-cflags="-Os -fpic $OPTIMIZE_CFLAGS" 
--extra-ldflags="$ADDI_LDFLAGS" 
$ADDITIONAL_CONFIGURE_FLAG

make -j4
make install
# chmod -R 777 ./
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/866152.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号