游戏攻略

如何在Linux上编译ijkplayer的so库

栏目:游戏攻略 日期: 作者:游戏资讯

ijkplayer是B站研发的一款移动端国产播放器,基于FFmpeg3.4版本,在Android和iOS上均可使用。截至2024年9月15日,ijkplayer已获得3.24万星标和0.81万个分支数,说明其曾经的火爆程度。然而,由于长时间未更新,导包方式已无法在较新的平台上编译运行。为了在更新的开发环境中正常使用ijkplayer,需要在Linux系统上进行交叉编译处理。

首先需要准备Linux编译环境。在Linux系统上执行相应命令,安装编译工具。

接下来,执行命令调整tmp分区大小,确保系统的临时空间充足,避免解压大文件失败。

其次,需要安装Android的SDK和NDK。依次执行相应命令下载安装Android的SDK和NDK。需要注意,不要使用过高版本的SDK和NDK,因为ijkplayer没有适配高版本的SDK和NDK。官方推荐采用r10e版本的NDK。

接下来是下载并编译ijkplayer。首先执行命令下载ijkplayer的源码包。再执行命令检查并初始化ijkplayer的Android编译环境。然后,执行一系列命令,分别编译ijkplayer所需的openssl库和ffmpeg库,以及ijkplayer的so库。

如果一切顺利,在ijkplayer/android/ijkplayer/ijkplayer-arm64/src/main/libs/arm64-v8a目录下可以看到编译好的三个so库:libijkffmpeg.so、libijkplayer.so、libijksdl.so。将包含这三个so文件的整个libs目录复制到App工程的libs目录,即可完成ijkplayer的so库导入工作。

更多详细的FFmpeg开发知识请参见《FFmpeg开发实战:从零基础到短视频上线》一书。

关键词:

相关资讯