ijkplayer 编译 for ios

2022-08-01,,

文章目录

  • 1.系统配置
  • 2.编译流程参考
  • 3.编译过程遇到问题
  • 4.集成IJKPlayerFramework

1.系统配置

2.编译流程参考

	https://www.jianshu.com/p/9a69af13835e
	https://www.jianshu.com/p/65fb80dff4d6

3.编译过程遇到问题

编译过程是曲折的,每个人遇到的问题也不尽相同,分享的力量是强大的,整合CSDN上各位朋友的帖子下,我也完成了自己的编译,感谢前辈们的分享!

  1. 首先就遇到了执行init-ios.sh慢‘卡死的问题 脚本执行的主要就是从 Github 下载 ffmpeg 源码,ffmpeg 源码大,国内下载速度又慢导致。解决办法:把ffmpeg的github仓库导入到码云。具体方式:码云上建立仓–》导入已有仓库-〉填写Github链接,等待完成。
    这些前辈们已经完成我们只需要将init-ios.sh做如下修改:

    #注释掉的是原来的地址
     #IJK_FFMPEG_UPSTREAM=https://github.com/Bilibili/FFmpeg.git
     IJK_FFMPEG_UPSTREAM=https://gitee.com/yuazhen/FFmpeg.git
    
     #IJK_FFMPEG_FORK=https://github.com/Bilibili/FFmpeg.git
     IJK_FFMPEG_FORK=https://gitee.com/yuazhen/FFmpeg.git
    
     #IJK_GASP_UPSTREAM=https://github.com/Bilibili/gas-preprocessor.git
    IJK_GASP_UPSTREAM=https://gitee.com/yuazhen/gas-preprocessor.git
    
  2. /libavutil/arm/asm.S:50:9: error: unknown directive编译过程中报此错误,网上大部分采用方法一其他还可以采用其他方式:
    #具体如下:
    1.在compile-ffmpeg.sh脚本中删除armv7, 修改如下:(无Armv7库)
    FF_ALL_ARCHS_IOS8_SDK=“arm64 i386 x86_64”
    2.即禁用汇编,将tools/do-compile-ffmpeg.sh文件里的armv7架构的情况,改为:
    elif [ “FFARCH"="armv7"];thenFFBUILDNAME="ffmpeg−armv7"FFBUILDNAMEOPENSSL=openssl−armv7FFXCRUNOSVERSION="−miphoneos−version−min=6.0"FFXCODEBITCODE="−fembed−bitcode"FFMPEGCFGFLAGS="FF_ARCH" = "armv7" ]; then
    FF_BUILD_NAME="ffmpeg-armv7"
    FF_BUILD_NAME_OPENSSL=openssl-armv7
    FF_XCRUN_OSVERSION="-miphoneos-version-min=6.0"
    FF_XCODE_BITCODE="-fembed-bitcode"
    FFMPEG_CFG_FLAGS="
    FFMPEG_CFG_FLAGS --enable-pic”
    (有armv7架构的库)

  3. 其他无特殊说明根据README操作即可

4.集成IJKPlayerFramework

  1. 打开ios下IJKMediaPlayer,打开工程
  2. 随便选择一个device,commond +b编译生成一个模拟器 版本
    选择Generic IOS Device commond +b编译生成一个真机版本
  3. 合并,https://www.jianshu.com/p/65fb80dff4d6,采用此链接中的方法执行lipo时可以把用真机版本与模拟版本拷贝到桌面等浅层次文件中再操作,避免路径太长书写不便
    执行: lipo -create 真机framework路径 模拟器framework路径 -output 合并的文件路径
  4. 集成IJKMediaDemo中
    IJKMediaFramework.framework 包直接拖入到使用的项目中 ,然后根据github上的提示,完成其他依赖库的导入。

感谢贴友们的分享!

本文地址:https://blog.csdn.net/baidu_31868779/article/details/107412113

《ijkplayer 编译 for ios.doc》

下载本文的Word格式文档,以方便收藏与打印。