新工作是做Android端视频编辑功能,初步方案有两种:采用Android SDK带有的MediaCodec+OpenGL方式实现和三方C库大名鼎鼎的FFmpeg,由于需要FFmpeg自带多种视频处理效果,3.14之后支持Android硬解(h264_mediacodec),还有不知道MediaCodec+OpenGL怎样实现视频裁剪成正方形的功能(如有知道的朋友可以留言),因此,采用FFmpeg方式实现。
废话不多说,先从第一步编译so库文件开始。本文编译的是最新的FFmpeg3.3.3。
从FFmpeg官网下载最新的FFmpeg压缩文件。解压后需要修改ffmpeg-3.3.3文件夹下的configure文件,这一步网上有很多。
将该文件中的如下四行:
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)'