Ubuntu ffmpeg編譯
阿新 • • 發佈:2018-12-16
配置NDK環境
如果沒有配置NDK環境,需要先配置NDK的環境,具體配置可以看Ubuntu 配置Android NDK環境
編譯
接著,從官網下載FFmpeg,選擇Old Releases
可下載歷史版本(老版本比較穩定且遇到問題容易在網上找到答案),比如 2.6.9
接著解壓縮,放到任意目錄下
然後新建一個build_android.sh
指令碼檔案,內容如下
#!/bin/bash make clean export NDK=/home/heiko/Android/ndk/android-ndk-r10e/ export SYSROOT=$NDK/platforms/android-9/arch-arm/ export TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64 export CPU=arm export PREFIX=$(pwd)/android/$CPU export ADDI_CFLAGS="-marm" ./configure --target-os=linux \ --prefix=$PREFIX --arch=arm \ --disable-doc \ --enable-shared \ --disable-static \ --disable-yasm \ --disable-symver \ --enable-gpl \ --disable-ffmpeg \ --disable-ffplay \ --disable-ffprobe \ --disable-ffserver \ --disable-doc \ --disable-symver \ --cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \ --enable-cross-compile \ --sysroot=$SYSROOT \ --extra-cflags="-Os -fpic $ADDI_CFLAGS" \ --extra-ldflags="$ADDI_LDFLAGS" \ $ADDITIONAL_CONFIGURE_FLAG make clean make make install
其中,export NDK需要替換為你的NDK路徑,export SYSROOT中的android-9代表著是針對那個Android版本編譯的,要儘可能低,這樣可以相容老版本的Android。
接著給予許可權
chmod -R 777 .
配置編譯環境
sudo apt install make
sudo apt install make-guile
開始編譯
./build_android.sh
這需要幾分鐘時間,完成後如圖所示
然後,我們可以在ffmpeg目錄下看到一個Android資料夾 可以看到,Android資料夾裡有include資料夾(標頭檔案)和lib資料夾(so檔案),這就是我們開發要使用的檔案,至此,ffmpeg就編譯成功了。