FFmpeg的Android平台移植—编译篇

第一步:源代码下载

到FFmpeg官方网站http://www.ffmpeg.org/上去下载源代码,这里下载的源代码是最权威的。进入官网之后,选择”Download”进入下载页面,截止2017年8月28日止,最新的发布的稳定版本为ffmpeg-3.3.3,.选择该下方的”Downloadgzip tarball”进行下载,下载后的文件名为ffmpeg-3.3.3.tar.gz,大约9.93M。

第二步:在linux环境下编译FFmpeg

在Windows平台可以采用VMplayer虚拟机上安装ubuntu的方式,本人也是采用这种方式。

本文以/tmp/frank为根目录进行操作和说明:

将ffmpeg-3.3.3.tar.gz拷贝至根目录,然后执行如下解压命令将其解压:

$tar zxf ffmpeg-3.3.3.tar.gz

解压后将得到/tmp/frank/ffmpeg-3.3.3.tar.gz目录。

修改ffmpeg-3.3.3/configure文件

如果直接按照未修改的配置进行编译,结果编译出来的so文件类似libavcodec.so.55.39.101,版本号位于so之后,Android上似乎无法加载。因此需要按如下修改:

将该文件中的如下四行:

SLIBNAME_WITH_MAJOR='$(SLIBNAME).$(LIBMAJOR)'

LIB_INSTALL_EXTRA_CMD='$$(RANLIB)"$(LIBDIR)/$(LIBNAME)"'

SLIB_INSTALL_NAME='$(SLIBNAME_WITH_VERSION)'

SLIB_INSTALL_LINKS='$(SLIBNAME_WITH_MAJOR)$(SLIBNAME)'

替换为:

SLIBNAME_WITH_MAJOR='$(SLIBPREF)$(FULLNAME)-$(LIBMAJOR)$(SLIBSUF)'

LIB_INSTALL_EXTRA_CMD='$$(RANLIB)"$(LIBDIR)/$(LIBNAME)"'

SLIB_INSTALL_NAME='$(SLIBNAME_WITH_MAJOR)'

SLIB_INSTALL_LINKS='$(SLIBNAME)'

你可能感兴趣的:(FFmpeg的Android平台移植—编译篇)