您现在的位置:首页 > >

IOS ijkplayer 集成遇到的问题

发布时间:

一:首先到github下载demo

进入到ijkplayer master下,安装ffmepg 执行./init-ios.sh ,报错。



./init-ios-openssl.sh 需要https 注意,需要执行此步。


二:编译ffmepg

我没有解决以*沧氨ǖ拇砦螅苯影凑誫ithub上的命令进行执行


cd ios
./compile-ffmpeg.sh clean 清楚缓存数据防止报错
./compile-ffmpeg.sh all
./compile-openssl.sh all 编译链接ssl(需要支持https的需要执行)

第二条命令继续报错如下:



我在网上找了个error:RPC failed的解决方法,


git config --global http.sslVerify false
git config --global http.postBuffer 1048576000


不知道能不能行的通,执行之后,按照如上终端的指示执行了“sh init-ios.sh”


完美,成功了。


进行执行cd ios
./compile-ffmpeg.sh clean


如果需要支持https 需要执行 ,如果不需要https可以跳过这一步 ./compile-openssl.sh all
./compile-ffmpeg.sh all 这一步报错了 (编译ffmpeg)



armv7 对32位系统的支持,如果需要支持armv7的编译器,可以使用以下2种方法


1.可以在?compile-ffmpeg.sh中删除 armv7,arm7s【不需要适配的话可以使用此方法】


2.使用之前的 Xcode 版本,这里我用的是 9.1 可以顺利编译,点这里下载 ,并指定 Xcode 路径


?



三:合并打包,合成framework

3.1打开ios下IJKMediaPlayer,打开工程



3.2.随便选择一个device,commond +b编译生成一个模拟器 版本


选择Generic IOS Device?commond +b编译生成一个真机版本


生成真机版本的时候会报错,如下图



解决方法如下2步:


1.下载的demo ijkplayer-master/ios/build/universal/include/libavutil文件夹中找到avconfig.h? ,打开吧关于arm7的代码注释掉


2.下载的demo ijkplayer-master/ios/build/universal/include/libffmpeg文件夹中找到config.h? ,打开吧关于arm7的代码注释掉


3.下载的demo ijkplayer-master/ios/build/universal/lib/libcrypto.a 添加到link Binary中(https相关)


4.下载的demo ijkplayer-master/ios/build/universal/lib/libssl.a 添加到link Binary中(https相关)


重新编译,完成之后,如下图



3.3 合并?


cd到终端,进入到上图所示的product文件夹中


然后执行:?lipo -create 真机framework路径 模拟器framework路径 -output 合并的文件路径,如下图


?lipo -create /Users/xuzhenzhen/Library/Developer/Xcode/DerivedData/IJKMediaDemo-cazptvtfezyvpqgpgfrmwnacxzlr/Build/Products/Release-iphoneos/IJKMediaFramework.framework/IJKMediaFramework /Users/xuzhenzhen/Library/Developer/Xcode/DerivedData/IJKMediaDemo-cazptvtfezyvpqgpgfrmwnacxzlr/Build/Products/Release-iphonesimulator/IJKMediaFramework.framework/IJKMediaFramework -output /Users/xuzhenzhen/Library/Developer/Xcode/DerivedData/IJKMediaDemo-cazptvtfezyvpqgpgfrmwnacxzlr/Build/Products/IJKMediaFramework



?


四:集成到项目中


吧上一步中真机的 IJKMediaFramework.framework 包直接拖入到使用的项目中?,然后根据github上的提示,完成其他依赖库的导入。


热文推荐
猜你喜欢
友情链接: 大学学习资料 人文社科 经营营销资料 工程资料大全 IT文档 自然科学