zl程序教程

您现在的位置是:首页 >  移动开发

当前栏目

【ijkplayer】编译 Android 版本的 ijkplayer ② ( 切换到 k0.8.8 分支 | 执行 init-android.sh 脚本进行初始化操作 )

Android执行 操作 版本 进行 分支 脚本 编译
2023-06-13 09:18:01 时间

文章目录

参考 https://github.com/bilibili/ijkplayer 项目的编译过程 ;

一、进入 ijkplayer-android 目录


执行

cd ijkplayer-android/

命令 , 进入 ijkplayer-android 目录 ;

二、切换到 k0.8.8 分支


执行

git checkout -B latest k0.8.8

命令 , 切换到最新分支 ;

三、执行 init-android.sh 脚本进行初始化操作


在 ijkplayer-android 目录中 , 执行

./init-android.sh

命令 , 进行初始化操作 ;

执行过程 :

root@octopus:~/ijkplayer/ijkplayer-android# ./init-android.sh
git version 2.17.1
== pull ffmpeg base ==
正克隆到 'extra/ffmpeg'...
remote: Enumerating objects: 539054, done.
remote: Total 539054 (delta 0), reused 0 (delta 0), pack-reused 539054
接收对象中: 100% (539054/539054), 203.52 MiB | 101.00 KiB/s, 完成.
处理 delta 中: 100% (418341/418341), 完成.
== pull ffmpeg fork armv5 ==
正克隆到 'android/contrib/ffmpeg-armv5'...
检查连接中: 539054, 完成.
对象计数中: 539054, 完成.
Delta compression using up to 4 threads.
压缩对象中: 100% (119455/119455), 完成.
写入对象中: 100% (539054/539054), 完成.
Total 539054 (delta 418341), reused 539054 (delta 418341)
切换到一个新分支 'ijkplayer'
/root/ijkplayer/ijkplayer-android
== pull ffmpeg fork armv7a ==
正克隆到 'android/contrib/ffmpeg-armv7a'...
检查连接中: 539054, 完成.
对象计数中: 539054, 完成.
Delta compression using up to 4 threads.
压缩对象中: 100% (119455/119455), 完成.
写入对象中: 100% (539054/539054), 完成.
Total 539054 (delta 418341), reused 539054 (delta 418341)
切换到一个新分支 'ijkplayer'
/root/ijkplayer/ijkplayer-android
== pull ffmpeg fork arm64 ==
正克隆到 'android/contrib/ffmpeg-arm64'...
检查连接中: 539054, 完成.
对象计数中: 539054, 完成.
Delta compression using up to 4 threads.
压缩对象中: 100% (119455/119455), 完成.
写入对象中: 100% (539054/539054), 完成.
Total 539054 (delta 418341), reused 539054 (delta 418341)
切换到一个新分支 'ijkplayer'
/root/ijkplayer/ijkplayer-android
== pull ffmpeg fork x86 ==
正克隆到 'android/contrib/ffmpeg-x86'...
fatal: unable to access 'https://github.com/Bilibili/FFmpeg.git/': gnutls_handshake() failed: The TLS connection was non-properly terminated.
tools/pull-repo-ref.sh: 11: cd: can't cd to android/contrib/ffmpeg-x86
对象计数中: 25071, 完成.
Delta compression using up to 4 threads.
压缩对象中: 100% (6484/6484), 完成.
写入对象中: 100% (25071/25071), 完成.
Total 25071 (delta 15968), reused 25071 (delta 15968)
./init-android.sh: 第 37 行: cd: android/contrib/ffmpeg-x86: 没有那个文件或目录
root@octopus:~/ijkplayer/ijkplayer-android# 

注意 , 上面的 " pull ffmpeg fork x86 " 任务失败 , 这个必须成功 , 否则后续也会出现问题 ;

参考 【错误记录】编译 Android 版本的 ijkplayer 报错 ( ./init-android.sh: 第 37 行: cd: android/contrib/: 没有那个文件或目录 ) 博客 ;

执行了十几次 , 终于将 pull ffmpeg fork x86_64 执行成功 , 没有一次五个全部成功的情况 ;

在失败若干次后的某一次 , pull ffmpeg fork x86_64 执行成功 ,

检查 ~/ijkplayer/ijkplayer-android/android/contrib 目录中的 ffmpeg 目录 , 看是否对应 init-android.sh 脚本中的如下五个参数 ;

pull_fork "armv5"
pull_fork "armv7a"
pull_fork "arm64"
pull_fork "x86"
pull_fork "x86_64"