ffmpeg——android平台源码编译最新版本4.1
一、ffmpeg介绍:
FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多code都是从头开发的。
FFmpeg在Linux平台下开发,但它同样也可以在其它操作系统环境中编译运行,包括Windows、Mac OS X等。这个项目最早由Fabrice Bellard发起,2004年至2015年间由Michael Niedermayer主要负责维护。许多FFmpeg的开发人员都来自MPlayer项目,而且当前FFmpeg也是放在MPlayer项目组的服务器上。项目的名称来自MPEG视频编码标准,前面的"FF"代表"Fast Forward"。
多媒体视频处理工具FFmpeg有非常强大的功能包括视频采集功能、视频格式转换、视频抓图、给视频加水印等。
以上介绍摘自百度。
二、源码下载:
官网:https://ffmpeg.org/
github:https://github.com/FFmpeg/FFmpeg
三、环境配置:
这里主要指NDK配置,编译android平台需要NDK支持,步骤如下:
- vim ~/.bashrc
- 在文件最后面添加:
export NDKROOT=/home/ceshi/ceshi/android-ndk-r17cexport PATH=$NDKROOT:$PATH
- source ~/.bashrc
四、配置文件修改:
打开FFmpeg目录下的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)'
SLIB_INSTALL_LINKS='$(SLIBNAME)'
目的:修改生成的.so的文件名,可以能够让android项目识别
五、脚本编写:
新建一个脚本文件android_build.sh,添加如下内容:
#!/bin/

本文详细介绍了FFmpeg在Android平台上的源码编译流程,包括环境配置、配置文件修改、脚本编写及常见错误解决方法。FFmpeg是一款强大的多媒体处理工具,支持音视频的记录、转换和流化。
最低0.47元/天 解锁文章
1618

被折叠的 条评论
为什么被折叠?



