linux下ffmpeg编译成so文件,Mac 编译FFmpeg成一个SO库

FFmpeg使用第三步,编译FFmpeg成一个SO库.

编译环境macOS High Sierri  10.13.3

android-ndk-r14b

FFmpeg 3.4.2

简介

由于ffmpeg编译的so数目繁多,直接使用这些类库还是比较麻烦的. 因此可以将它们合并为一个类库 libffmpeg.so .

操作步骤与编译多个so的脚本不同,这个脚本不再需要修改Configure的内容(生成的是.a而不是.so,并没有涉及到版本号问题)

编译多个so的脚本里面Configure的时候是“–enable-shared –disable-static”,这个脚本里面Configure的时候设置的是“–enable-static –disable-shared”。编译完成后生成的是:libavcodec.a

libavfilter.a

libswresample.a

libavformat.a

libavutil.a

libswscale.a

该脚本运行完后,会把上述的*.a文件打包为一个so文件:libffmpeg.so

合并后的类库使用起来和合并前的类库使用方法没有区别。

修改后的脚本文件为:

build_android.sh

#!/bin/bash

PLATFORM=/Users/lake/test/android-ndk-r14b/platforms/android-19/arch-arm/

TOOLCHAIN=/Users/lake/test/android-ndk-r14b/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64

PREFIX&#

你可能感兴趣的:(linux下ffmpeg编译成so文件,Mac 编译FFmpeg成一个SO库)