x264以及fdk-aac 编译
编译 x264
x264 是采用 GPL 授权的开源视频编码库,主要用于 H.264/MPEG-4 AVC 的视频编码,仅作为编码
器使用。
下载地址
http://download.videolan.org/pub/videolan/x264/snapshots/
https://www.videolan.org/developers/x264.html
git clone https://github.com/mirror/x264.git
在 x264 解压目录下创建编译脚本build_x264.sh:
#!/bin/bash
export NDK=/home/wang/ffmpeng/ndk/android-ndk-r20b # 这里需要替换成你本地的 NDK 路径,其他的不用修改
TOOLCHAIN=$NDK/toolchains/llvm/prebuilt/linux-x86_64
export API=21function build_android
{
./configure \--prefix=$PREFIX \--disable-cli \--enable-shared \--enable-static \--enable-pic \--host=$my_host \--cross-prefix=$CROSS_PREFIX \--sysroot=$NDK/toolchains/llvm/prebuilt/linux-x86_64/sysroot \make clean
make -j8
make install
}#arm64-v8a
PREFIX=./android/arm64-v8a
my_host=aarch64-linux-android
export TARGET=aarch64-linux-android
export CC=$TOOLCHAIN/bin/$TARGET$API-clang
export CXX=$TOOLCHAIN/bin/$TARGET$API-clang++
CROSS_PREFIX=$TOOLCHAIN/bin/aarch64-linux-android-
build_android#armeabi-v7a
PREFIX=./android/armeabi-v7a
my_host=armv7a-linux-android
export TARGET=armv7a-linux-androideabi
export CC=$TOOLCHAIN/bin/$TARGET$API-clang
export CXX=$TOOLCHAIN/bin/$TARGET$API-clang++
CROSS_PREFIX=$TOOLCHAIN/bin/arm-linux-androideabi-
build_android
修改脚本权限以及编译
chmod 777 build_x264.sh
./build_x264.sh
编译结果
动态库和静态库、头文件
fdk-aac编译
fdk-aac 是指:Fraunhofer FDK AAC 编解码器库,是一个开源软件库,用于编码和解码高级音频编码格式 AAC 的音频
下载地址
https://www.linuxfromscratch.org/blfs/view/svn/multimedia/fdk-aac.html
wget https://downloads.sourceforge.net/opencore-amr/fdk-aac-2.0.2.tar.gz
解压命令
tar -xzvf fdk-aac-2.0.2.tar.gz
在 fdk-aac 解压目录下创建编译脚本build_fdk_aac.sh:
#!/bin/bash
NDK=/root/workspace/android-ndk-r20b # 这里需要替换成你本地的 NDK 路径,其他的不用修改
HOST_TAG=linux-x86_64
TOOLCHAIN=$NDK/toolchains/llvm/prebuilt/$HOST_TAG
ANDROID_LIB_PATH="$(pwd)/android"API=21function build_android
{
echo "Build fdk-aac for android $CPU"
./configure \
--host=$HOST \
--disable-shared \
--enable-static \
--prefix="$ANDROID_LIB_PATH/$CPU" \CPPFLAGS="-fPIC"make clean
make -j8
make install
echo "Build fdk-aac for android $CPU completed"
}# armeabi-v7a
CPU=armv7-a
HOST=arm-linux-android
export AR=$TOOLCHAIN/bin/arm-linux-androideabi-ar
export AS=$TOOLCHAIN/bin/arm-linux-androideabi-as
export LD=$TOOLCHAIN/bin/arm-linux-androideabi-ld
export RANLIB=$TOOLCHAIN/bin/arm-linux-androideabi-ranlib
export STRIP=$TOOLCHAIN/bin/arm-linux-androideabi-strip
export CC=$TOOLCHAIN/bin/armv7a-linux-androideabi$API-clang
export CXX=$TOOLCHAIN/bin/armv7a-linux-androideabi$API-clang++
build_android# arm64-v8a
CPU=armv8-a
HOST=aarch64-linux-android
export AR=$TOOLCHAIN/bin/aarch64-linux-android-ar
export AS=$TOOLCHAIN/bin/aarch64-linux-android-as
export LD=$TOOLCHAIN/bin/aarch64-linux-android-ld
export RANLIB=$TOOLCHAIN/bin/aarch64-linux-android-ranlib
export STRIP=$TOOLCHAIN/bin/aarch64-linux-android-strip
export CC=$TOOLCHAIN/bin/aarch64-linux-android$API-clang
export CXX=$TOOLCHAIN/bin/aarch64-linux-android$API-clang++
build_android
修改脚本权限以及编译
chmod 777 build_x264.sh
chmod 777 configure
./build_x264.sh
编译结果
动态库和静态库、头文件
fdk-aac、x264脚本下载
x264以及fdk-aac 编译相关推荐
- linux编译fdk aac,如何在Linux下编译并安装Fraunhofer FDK AAC?
AAC(高端音频编码, Advanced Audio Coding)在低比特率下会丢失许多高频信号而导致声音听起来和原始音质差异很大,因此后来出现了结合著SBR(Spectral Band Repli ...
- 【经验总结】Centos8安装X264,X265,OPUS,AAC,FFmpeg一次性解决方案
Centos+FFmpeg(x264,x265,opus,aac) 问题总结 PKG_CONFIG的问题 PKG_CONFIG需要链接到/usr/lib64中去 需要将PKG_CONFIG_PATH输 ...
- android ffmpeg 静态库,在CentOS中编译FFmpeg for Android静态库(含fdk aac,x264)
本文可以编译出集成了x264和fdk_aac的库,而且支持neon 下载源码: fdk_aac目前最新版是0.1.4,详见其ChangeLog,此处用的是0.1.1版 ffmpeg-2.7.2 解压后 ...
- linux编译fdk aac,Ubuntu下利用NDK编译ffmpeg+x264+fdk-aac
由于FFmpeg.x264.Fdk-aac的版本问题,所以编译的时候有很多坑 编译顺序: 首先利用脚本分别编译x264和fdk-aac库,生成头文件(.h)与静态库文件(.a/.la). 将FFmpe ...
- linux编译fdk aac,使用NDK编译ffmpeg4.1+fdk-aac2.0
基本配置 ubuntu18 ffmpeg4.1.3 fdk-aac2.0.0 NDK r20b 编译fdkaac静态库脚本 #!/bin/bash NDK=/系统ndk路径/android-ndk-r ...
- 如何将ffmpeg x264的动态库编译入Android7.1系统源码(详细步骤)
0 前言 对于刚接触Android中ffmpeg的来说,ffmpeg的编译有很多坑,这些坑我都踩过一遍,而且网上文章鱼龙混杂写的太乱,不想太多人浪费时间在编译上,所以把成功的代码及编译步骤分享出来. ...
- linux x264命令,Linux下编译带x264的ffmpeg的方法
一.环境准备 二.编译 1.编译yasm. ./configure --prefix=/usr/local/yasm make make install 2.解压x264,进入目录,输入: ./con ...
- x264和fdk-aac的编译和FFmpeg的链接
一.编译环境 ffmpeg-4.2.2.tar.bz2 Mac NDK21.1.6352462 ARCH=arm64 CPU=armv8-a TOOL_CPU_NAME=aarch64 编译工具链目录 ...
- VS2008下最新X264(svn 2009.9)编译不过的解决办法
总有人说最新的版本 编译不过,搞的群. 论坛里到处都是这种求助贴.建议斑竹把这个解决办法放到醒目的位置,以减少噪音. 科普开始 1.编译问题 由于MS的VS编译器对C99标准支持不好,不支持函数当中混 ...
- VS2008下最新X264(svn 2009.0216)编译不过的解决办法(附编译通过+修改内存泄露版本)
http://bbs.chinavideo.org/viewthread.php?tid=6945
最新文章
- 全面分析再动手的习惯:链表的反转问题(递归和非递归方式)
- 用信号量和读写锁解决读者写者问题
- 阿里巴巴Java开发规约IDEA插件安装及使用
- openstack 调试
- 人民日报智慧媒体研究院与第四范式合资成立智媒新创 赋能智慧媒体创新
- TFS(Team Foundation Server)介绍和入门
- Lync-技巧-2.启用-用户-启用-语音-设置-线路URI
- 关于PS插件Nik Collection不兼容cc2021闪退的解决方法
- 查找算法(一)顺序查找
- 【Proteus仿真8086】定时器8253产生波形发生器
- 我的BRF+自学教程(一):公式(formula)
- win10系统dnf安装不上服务器,win10系统玩不了DNF的解决方法
- 【原创】微信最新表情js代码
- SAP那些事-理论篇-7-SAP的优势和劣势
- 案例丨长江今年1号洪水平稳通过 金仓助力三峡工程防洪保电
- 汉字转拼音源码的两个类
- dotnet publish 不生成pdb文件
- Flex弹性盒子(一篇带你掌握潮流 Flex 布局)
- RTKLIB学习总结(六)导航电文、卫星位置计算
- php提取字符串连接,如何从PHP中的字符串中提取URL?