編譯Android版ijkplayer

系統編譯環境

Ubuntu14.04 x64
android-ndk-r10e


1 確認機器已經安裝過git和yasm,安裝命令:

sudo apt-get update
sudo apt-get install git
sudo apt-get install yasm

2 配置環境變量:

ANDROID_SDK={SDK路徑}
ANDROID_NDK={SDK路徑}
export ANDROID_SDK
export ANDROID_NDK
export PATH=${PATH}:${ANDROID_SDK}:${ANDROID_NDK}

在ubuntu環境下,進入主文件夾,進入目錄後按Ctrl+H就可以看到隱藏的文件,你就可以看到.bashrc文件。(這裏命名一定要ANDROID_NDK和ANDROID_SDK)

編譯ijkplayer

1 直接從git拉取ijkplayer源碼

git clone https://github.com/Bilibili/ijkplayer.git ijkplayer-android
cd ijkplayer-android

2 檢查更新代碼

git checkout -B latest k0.8.4

3 初始化,獲取ffmpeg的代碼拉取到本地等等操作

./init-android.sh

4 編譯ffmpeg

cd android/contrib
./compile-ffmpeg.sh clean
./compile-ffmpeg.sh all

如果出現下圖就便是編譯成功
這裏寫圖片描述

5 編譯ijkplayer生成各種版本的so文件

cd ..
./compile-ijk.sh all

導入Android Studio

直接導入/ijkplayer-android/android/ijkplayer

錯誤總結

  • 一直提示You need the NDKr10e or later”
    1、這裏有可能是ndk環境變量配置出錯。
    2、使用的ndk版本不能支持編譯,我最開始使用的是最新的r16版本,一直出現,後來重新下載r10e的,就編譯通過
  • 在執行完./compile-ffmpeg.sh all命令後出現錯誤提示
    ffmpeg yasm not found, use –disable-yasm for a crippled build
    這是因爲 FFMPEG爲了提高編譯速度,使用了彙編指令,如果系統中沒有yasm指令的話,就會出現上述的問題。
    解決辦法是:
    A 如果是Windows系統, 從網上下載一個 yasm.exe 並安裝在mingw/bin下面,重新編譯,就不會出現該錯誤了;
    B 如果是Linux系統,則更簡單,直接在終端輸入 sudo apt-get install yasm ,安裝好後,重新編譯就 OK了。

ijkplayer0.8.4 github下載地址

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章