1、配置編解碼器格式支持
默認為最少支持, 如果足夠你使用, 可以跳過這一步. 否則可以改為以下配置:
module-default.sh 更多的編解碼器/格式
module-lite-hevc.sh 較少的編解碼器/格式(包括hevc)
module-lite.sh 較少的編解碼器/格式(默認情況)
# 進入 config 目錄 cd config # 刪除當前的 module.sh 文件 rm module.sh # 可根據需要替換為`module-default.sh`, `module-lite-hevc.sh`, `module-lite.sh` # 創建軟鏈接 module.sh 指向 module-lite-hevc.sh ln -s module-lite-hevc.sh module.sh cd .. cd ios sh compile-ffmpeg.sh clean
2、添加 https 支持
最后會生成支持 https 的靜態文件 libcrypto.a 和 libssl.a# 獲取 openssl 並初始化 ./init-ios-openssl.sh cd ios # 在模塊文件中添加一行配置 以啟用 openssl 組件 echo 'export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --enable-openssl"' >> ../config/module.sh ./compile-ffmpeg.sh clean
添加 openssl
相關包以支持https
手動給IJKMediaFramework
添加 libcrypto.a
和 libssl.a
文件, 默認不會添加
這兩個依賴庫的目錄為:
ijkplayer-ios/ios/build/universal/lib
, 只有進行了上面跟
openssl
相關的操作, 才會在這個目錄下有生成
libcrypto.a
和
libssl.a
3、打包
framwork

除了 IJKMediaFramework
這個target
, 還有一個叫 IJKMediaFrameworkWithSSL
, 但是不推薦使用這個, 因為大部分基於 ijkplayer
的第三方框架都是使用的前者, 你把后者導入項目還是會報找不到包的錯誤, 就算你要支持 https
也推薦使用前者, 然后按照上一步添加 openssl
即可支持
首先將debug
改為release
根據需要 編譯真機 和 模擬器架構
合並架構
執行: lipo -create 真機framework路徑 模擬器framework路徑 -output 合並的文件路徑
cd 到 Products 路徑下執行:
lipo -create Release-iphoneos/IJKMediaFramework.framework/IJKMediaFramework Release-iphonesimulator/IJKMediaFramework.framework/IJKMediaFramework -output IJKMediaFramework
如果合並,后需要把合並后的framework替換掉
Release-iphoneos
中的
IJKMediaFramework
如果之前的步驟刪除了compile-ffmpeg.sh中armv7,這里會 報錯,我們直接注釋掉就好

用Xcode9可以找到這個 ,但是用Xcode10\11找不到這個 ,本人用Xcode9注釋完,在用Xcode10/11編譯就沒問題了.
實在有需要的同學點贊留言區留郵箱。就不弄雲存儲了。還得維護😭。
添加系統支持庫
拖進項目即可
覺得有用的同學點個關注,或者留言評論區,看到郵件提示消息盡快回復。