docker编译IJKPlayer播放器记录详解

 更新时间:2022年11月11日 09:11:15   作者:如此风景  
这篇文章主要为大家介绍了docker编译IJKPlayer播放器记录详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

docker获取IJKPlayer地址

  • IJKPlayer播放器编译环境在docker仓库地址
  • 拉取镜像
//命令行执行如下命令即可
docker pull adajqd/ijkplayer-buildenv:1.0

编译前准备

  • 支持更多格式
cd config
rm module.sh
ln -s module-default.sh module.sh
cd android/contrib
# cd ios
sh compile-ffmpeg.sh clean
  • 支持少数格式
cd config
rm module.sh
ln -s module-lite.sh module.sh
cd android/contrib

执行编译

//clone ijkplayer到本地
git clone https://github.com/Bilibili/ijkplayer.git ijkplayer-android
//切换到源码目录
cd ijkplayer-android    
//检查版本
git checkout -B latest k0.8.4
//初始化
./init-android.sh
//下载OpenSSL
./init-android-openssl.sh   
//切换到android/contrib 目录下,编译脚本在这个目录下
cd android/contrib
// 编译 OpenSSL
./compile-openssl.sh clean
./compile-openssl.sh all  或者把all替换成 armv7a,只编译这个架构
//编译FFmpeg
./compile-ffmpeg.sh clean
./compile-ffmpeg.sh all   或者把all替换成 armv7a,只编译这个架构
//返回ijkplayer/android 目录,编译ijkplayer的so库
cd ..
./compile-ijk.sh all

到此我们编译就完成了,so库已经生成,位置在src/main/libs下了,需要什么样的cpu架构去对应的文件夹下去找就可以了 编译完成后可以在 ijkplayer-android / android / ijkplayer 中查看生成的对应 so 文件。可以直接用AndroidStudio 打开。

其他辅助

  • 添加环境变量,执行 source ~/.profile
// add these lines to your  ~/.profile
export ANDROID_SDK=/opt/android/sdk
export PATH=$ANDROID_SDK/tools:$ANDROID_SDK/platform-tools:$PATH
export ANDROID_NDK=/opt/android/ndk/android-ndk-r10e
export PATH=${PATH}:$ANDROID_NDK:$PATH
  • 安装vim
#进入容器命令 
docker exec -it 9fbe362214a6(容器Id) /bin/bash 
apt-get update 
apt-get install vim
  • 问题解决

无法编译 找到do-compile-ffmpeg.sh 在下面指定位置 增加--system=linux-x86,即可

部分参考

无法编译

编译module-default出错。
把配置文件 用这个module-default来编译,
module.sh -> module-default.sh
提示出错。./libavutil/timer.h:38:31: fatal error: linux/perf_event.h: No such file or directory
# include <linux/perf_event.h>
找不到这个库。
解决方法:(不需要编译这个配置perf参数)
module-default.sh 加 export COMMON_FF_CFG_FLAGS="$COMMON_FF_CFG_FLAGS --disable-linux-perf"

ijkPlayer 编译全格式支持 .so库

以上就是docker编译IJKPlayer播放器记录详解的详细内容,更多关于docker编译IJKPlayer播放器记录的资料请关注脚本之家其它相关文章!

相关文章

  • Docker容器应用日志查看方法

    Docker容器应用日志查看方法

    今天小编就为大家分享一篇关于Docker容器应用日志查看方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • Docker搭建Gogs的实现步骤

    Docker搭建Gogs的实现步骤

    本文主要介绍了Docker搭建Gogs的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-02-02
  • docker springcloud k8s集成部署方式

    docker springcloud k8s集成部署方式

    文章介绍了如何将Docker、SpringCloud和Kubernetes集成部署,包括环境搭建、构建Docker镜像、部署到Kubernetes、验证和测试以及注意事项
    2025-03-03
  • 将博客迁移至docker纪实

    将博客迁移至docker纪实

    作者个人博客一直是跑在阿里云主机上的,最近接触了docker 心血来潮想把自己的应用打包到docker容器中去,方便以后的迁移部署,这里把经验给大家总结分享下
    2017-05-05
  • Docker教程之dockerfile构建centos镜像

    Docker教程之dockerfile构建centos镜像

    这篇文章主要介绍了Docker教程之dockerfile构建centos镜像的相关资料,需要的朋友可以参考下
    2022-11-11
  • 删除docker images中为none的镜像操作

    删除docker images中为none的镜像操作

    这篇文章主要介绍了删除docker images中为none的镜像操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • Docker报错:OCI runtime exec failed: exec failed: container_linux.go:380: starting container process的解决方法

    Docker报错:OCI runtime exec failed: exec failed: contain

    这篇文章主要给大家介绍了关于Docker报错:OCI runtime exec failed: exec failed: container_linux.go:380: starting container process的解决方法,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2022-07-07
  • Docker 日志管理的实现示例

    Docker 日志管理的实现示例

    Docker提供了多种日志驱动来管理和提取容器日志,包括json-file、syslog、fluentd等,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-12-12
  • 使用Maven打包构建Docker镜像并推送到仓库

    使用Maven打包构建Docker镜像并推送到仓库

    这篇文章主要介绍了使用Maven打包构建Docker镜像并推送到仓库问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-04-04
  • 使用Docker部署Spring Boot的方法示例

    使用Docker部署Spring Boot的方法示例

    这篇文章主要介绍了使用Docker部署Spring Boot的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03

最新评论