编译iOS版 IJKplayer

  目标版本:ffmpeg 4.0 不支持https,支持最多的解码格式,不支持armv7,多路码流时默认先播放h265(官方先播h264)

  framwork下载地址:链接:https://pan.baidu.com/s/15Y_imq5aIdyiQ7b62sOG-Q 密码:16gy

 编译步骤

1.克隆仓库到指定位置并重命名为比如桌面上的 ijkplayer-ios 文件夹

git clone https://github.com/Bilibili/ijkplayer.git  ijkplayer-ios

2. 然后进入文件夹ijkplayer-ios

    cd ijkplayer-ios

3.新建分支latest并切换到新建的分支上

    git checkout -B latest k0.8.8

(可查看ijkplayer最新的release版本)

4.打开ijkplayer-ios/init-ios.sh文件,将最新ffmpeg版本更新到文件中

IJK_FFMPEG_UPSTREAM=https://github.com/Bilibili/FFmpeg.git

IJK_FFMPEG_FORK=https://github.com/Bilibili/FFmpeg.git

// 这一句已修改到ffmpeg4.0最新realease

IJK_FFMPEG_COMMIT=ff4.0--ijk0.8.8--20201130--001

5.配置编解码器格式支持

    cd config

    rm module.sh

   ln -s module-lite-hevc.sh module.sh

6. 如果你选择了ff4.0xxx版本,在module.sh链接的对象中,需要将--disable-ffserver取消,因为ffserver在ffmpeg3.4版本被移除

...exportCOMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-programs"

exportCOMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-ffmpeg"

exportCOMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-ffplay"

exportCOMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-ffprobe"

#exportCOMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-ffserver"...

export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-bsf=eac3_core"

exportCOMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-dxva2"

exportCOMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-vaapi"

#exportCOMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-vda"

exportCOMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-vdpau"...

7. videotoolbox是ios8.0引入的模块,如果编译时最低支持到ios7,编译脚本ijkplayer-ios/ios/tools/do-compile-ffmpeg.sh,将ios最低版本限制在9.0 (搜索"version"关键字修改)

8. 如果希望兼容armv7和armv7s,下载xcode9.1或以下版本,执行命令:

    sudo xcode-select -s /Applications/Xcode9.1.app/Contents/Developer

9.  去掉./init-ios.sh 和ijkplayer-ios/iOS/compile-ffmpeg.sh 中的armv7,armv7s

10.下载ffmpeg

     ./init-ios.sh

11.编译

 cd iOS

./compile-ffmpeg.sh clean

./compile-ffmpeg.sh all

12.打包IJKMediaFramework

13 参考连接: 解决ijkplayer在iOS H265硬解码失败

                       解决ijkplayer多路码流时默认播放大码流h265

                       https://github.com/bilibili/ijkplayer/issues/2874

你可能感兴趣的:(编译iOS版 IJKplayer)