1. 程式人生 > >Android 關於編譯ijkplayer下的so經驗分享

Android 關於編譯ijkplayer下的so經驗分享

本地 pat 經驗 變量 一次 公司 https 調研 vmw

  • 前言:公司最近需要做直播方面的技術調研,所以需要去研究播放器相關的技術;剛好本人github上收藏了ijkplayer,之前一直沒有研究過,現在剛好clone下來研究研究。

我先在Windows安裝cygwin編譯,各種報錯,各種坑,果斷放棄。然後使用VMware安裝的Ubuntu 16.04,一次性完成。哈哈

那麽進入正題!

編譯環境
Ubuntu 16.04
NDKr11b
Android SDK 24
Lantern(FQ工具,建議安裝,下載地址: https://github.com/getlantern/lantern)

編譯前準備
1.安裝Git 命令:$ sudo apt-get install git

2.安裝yasm 命令:$ sudo apt-get install yasm

3.配置環境變量
命令:$sudo gedit ~./bashrc
添加以下兩個環境變量
export ANDROID_SDK= sdk path
export ANDROID_NDK= ndk path

開始編譯
1.下載項目到本地
git clone https://github.com/Bilibili/ijkplayer.git ijkplayer-android
cd ijkplayer-android
git checkout -B latest k0.5.1

2.執行初始化操作
./init-android.sh

3.編譯ffmpeg
cd android/contrib
./compile-ffmpeg.sh clean
./compile-ffmpeg.sh all

4.開始編譯so
cd ..
./compile-ijk.sh all

完成
如果正確編譯的話,會分別在ijkplayer-arm64、ijkplayer-armv5、ijkplayer-armv7a、ijkplayer-x86、ijkplayer-x86_64這些項目的src/main/libs/對應的名稱 目錄下分別生成libijkffmpeg.so、libijkplayer.so、libijksdl.so這三個so文件

編譯成功後將目錄下android/ijkplayer項目導入Android Studio即可運行

友情提示
可能出現的問題大部分都是因為環境變量導致,建議仔細檢查環境變量
註意:Windows環境下編譯會出現很多問題,強烈建議使用Linux環境進行編譯

Android 關於編譯ijkplayer下的so經驗分享