FFmpeg编译笔记
来源:互联网 发布:mac版我的世界启动器 编辑:程序博客网 时间:2024/06/10 13:34
将该文件中的如下四行:
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)'
编写build_android.sh
有Linux下编译源代码经验的都知道,在make之前一般都有./configure -xxxx等配置参数操作,但配置众多,这里不一一叙述,编写脚本文件更方便后续修改操作。
build_android.sh内容如下:
#!/bin/bashNDK=/home/chow/android-ndk-r9dSYSROOT=$NDK/platforms/android-15/arch-arm/TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86function build_one{./configure \ --prefix=$PREFIX \ --enable-shared \ --disable-static \ --disable-doc \ --disable-ffserver \ --enable-cross-compile \ --cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \ --target-os=linux \ --arch=arm \ --sysroot=$SYSROOT \ --extra-cflags="-Os -fpic $ADDI_CFLAGS" \ --extra-ldflags="$ADDI_LDFLAGS" \ $ADDITIONAL_CONFIGURE_FLAG}CPU=armPREFIX=$(pwd)/android/$CPUADDI_CFLAGS="-marm"build_one
这里解析一下这个脚本文件,NDK目录是android-ndk-r9d-linux-x86.tar.bz2是解压后的文件夹绝对路径,可以按情况修改;android-15是因为本人所使用的是android4.0.3版本,也可以按需修改。NDK,SYSROOT,TOOLCHAIN目录要确保存在,可能与上面提供的路径不同,可以按情况修改。
修改build_android.sh的权限
chmod 777 build_android.sh
执行build_android.sh
./build_android.sh
编译
make -j8make install
编译完成后,在FFmpeg目录下有一个android目录,里面有我们需要的.so文件与头文件,这都是后续android开发需要的。
库文件如下:
头文件如下:
至此,FFmpeg for android编译完毕,后面会继续记录android开发的操作。
- ffmpeg编译笔记
- ffmpeg 编译笔记(一)
- ffmpeg 编译笔记(二)
- ffmpeg 编译笔记(三)
- FFmpeg编译笔记
- ffmpeg 笔记 二:编译安装ffmpeg库
- ffmpeg编译与搭建笔记
- Ubuntu下编译FFMPEG笔记
- 11、ffmpeg学习笔记—ffmpeg源码编译-Android
- FFMPEG学习笔记一 编译安装
- FFMPEG笔记 - chapter0.介绍、编译与安装
- ffmpeg--学习笔记3-树莓派:安装、编译
- ffmpeg--学习笔记2-编译、学习
- NDK笔记 Linux下编译ffmpeg
- 【FFMPEG】VS2015编译FFMPEG
- 【FFMPEG】VS2013编译ffmpeg
- ffmpeg编译
- FFmpeg编译
- iOS百度地图的基本使用
- RT5350(SPI)
- Java 内存模型
- kettle3使用mysql5.6出现OPTION SQL_SELECT_LIMIT=1的问题
- C/S+P2P网络模型(二)--上传&下载文件
- FFmpeg编译笔记
- Qt自总结(一) QThread
- mfc属性页
- [Python]解决UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 0
- 使用 Azure Site Recovery 灾难恢复至 Azure 的功能现已正式发布
- linux shell 脚本读取 ini 配置文件
- JAVA 网络编程(简单的发送端和接受端)
- linux 组和用户
- skf_buff详解【转】