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


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

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

那么進入正題!

編譯環境 
Ubuntu 16.04 
NDKr11b 
Android SDK 24 
Lantern(翻牆工具,建議安裝,下載地址: 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環境進行編譯


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM