1.編譯FFmpeg (不含libx264\libx265\libmp3lame\fdk_aac )
Ffmpeg官網(wǎng) http://ffmpeg.org/
下載地址 https://ffmpeg.org/releases/ffmpeg-4.2.3.tar.bz2
Step1 下載編譯腳本
FFmpeg-iOS-build-script
這里我們采用網(wǎng)上一個大牛寫的腳本,直接下載后,執(zhí)行 命令即可獲得相應(yīng)的lib庫破镰;
Step2 執(zhí)行腳本得到lib
sh build-ffmpeg-iOS-framework.sh
可以修改 build-ffmpeg-iOS-framework.sh
腳本中的 架構(gòu)參數(shù) ARCHS="arm64 armv7 i386 x86_64"
來獲取想要的ARM支持核偿;
編譯結(jié)果:
2.編譯libx264
Step1 下載libx264源碼 和 編譯腳本
x264
源碼: https://code.videolan.org/videolan/x264/-/archive/stable/x264-stable.tar.gz
x264
編譯腳本 FFmpeg-libx264-build-shell
Step3 執(zhí)行編譯腳本
sh build-x264.sh
同樣可以修改 ARCHS="arm64 armv7 i386 x86_64"
來獲取自己想要的ARM 架構(gòu)壹士;
編譯后的結(jié)果:
3.編譯libmp3lame
Step1 下載libmp3lame源碼 和 編譯腳本
libmp3lame
源碼:https://jaist.dl.sourceforge.net/project/lame/lame/3.100/lame-3.100.tar.gz
libmp3lame
編譯腳本:https://github.com/kewlbear/lame-ios-build
Step2 執(zhí)行編譯腳本
sh build-lame.sh
編譯結(jié)果
4.編譯fdk_aac
Step1 下載fdk_aac源碼 和編譯腳本
fdk_aac源碼:https://codeload.github.com/kewlbear/fdk-aac-build-script-for-iOS/zip/refs/heads/master
fdk_aac編譯腳本:https://github.com/kewlbear/fdk-aac-build-script-for-iOS
Step2 執(zhí)行編譯腳本
sh build-fdk-aac.sh
編譯結(jié)果:
5.交叉編譯FFmpeg (含libx264\libx265\libmp3lame\fdk_aac )
Step1 lib庫收集
將libx264
編譯后的靜態(tài)庫放到 build-ffmpeg-iOS-framework.h
同級目錄
將libmp3lame
編譯后的靜態(tài)庫放到 build-ffmpeg-iOS-framework.h
同級目錄
將fdk_aac
編譯后的靜態(tài)庫放到 build-ffmpeg-iOS-framework.h
同級目錄
Step2 腳本修改
修改ffmpeg-build.sh
腳本 筑公,打開X264
和FDK_AAC
的注釋表示交叉編譯 X264
和 FDK_AAC
;
增加MP3_LAME
參數(shù)并修改腳本喂柒,腳本修改后的放在文章尾部以供參考
MP3_LAME=`pwd`/fat-lame
Setp3 執(zhí)行編譯腳本
執(zhí)行腳本,且沒有報錯的情況下棚放,進行第四步;
sh build-ffmpeg-iOS-framework.sh
Setp4 匯總貶編譯靜態(tài)庫
執(zhí)行成功后馅闽,此時 文件夾內(nèi)沒有libx264
飘蚯、mp3lame
、fdk_aac
福也,需要將他們匯總到FFmpeg-iOS
中(第四步)
將fat-lame
文件夾的include
和 lib
分別放置到FFmpeg-iOS
的 include
和 lib
中局骤;
將fat-x264
文件夾的 include
和 lib
分別放置到FFmpeg-iOS
的 include
和 lib
中;
將 fdk-aac-ios
文件夾的include
和 lib
分別放置到FFmpeg-iOS
的 include
和 lib
中暴凑;
最終結(jié)果: