如何在Mac OS上为Android构建FFmpeg可执行二进制文件?

时间:2016-03-10 07:50:20

标签: android build ffmpeg binary

我是FFmpeg的新手。我需要的只是FFmpeg 适用于Android的可执行二进制文件。我遵循了roman10.net

的精彩教程

这是我的 build_android.sh 文件:

    #!/bin/bash
NDK=/Users/sunshine/Documents/android-ndk-r11-linux-x86_64
SYSROOT=$NDK/platforms/android-21/arch-arm/
TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64
function build_one
{
./configure \
    --prefix=$PREFIX \
    --enable-shared \
    --enable-static \
    --disable-doc \
    --disable-ffplay \
    --disable-ffprobe \
    --disable-ffserver \
    --enable-libmp3lame\
    --disable-doc \
    --disable-symver \
    --cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
    --target-os=linux \
    --arch=arm \
    --enable-cross-compile \
    --sysroot=$SYSROOT \
    --extra-cflags="-Os -fpic $ADDI_CFLAGS" \
    --extra-ldflags="$ADDI_LDFLAGS" \
    $ADDITIONAL_CONFIGURE_FLAG
make clean
make
make install
}
CPU=arm
PREFIX=$(pwd)/android/$CPU 
ADDI_CFLAGS="-marm"
build_one

教程说:

  

一旦完成,您应该能够找到一个文件夹   $ NDK /源/的ffmpeg-2.0.1 /机器人

在我的情况下,构建过程已完成,但我没有看到任何android文件夹。使用 build_android.sh 文件在同一文件夹中创建一些新文件。我的错误在哪里?

2 个答案:

答案 0 :(得分:0)

我遇到了类似的问题,后来在更改NDK路径后解决了。例如,而不是

NDK=/Users/sunshine/Documents/android-ndk-r11-linux-x86_64

你可以尝试

NDK=$HOME/Documents/android-ndk-r11-linux-x86_64

但是,我无法保证这是否是您的设置确实存在的问题。

答案 1 :(得分:-1)

我遇到了同样的“问题”,但我找到了以下文件:$ NDK / sources / android / arm(lib和include目录)。

我希望它有所帮助!