1.2 使用ndk编译x264
1. 下载源码并编译
$ cd /opt/android/ndk/android-ndk-r10e/resources
$ git clone http://git.videolan.org/git/x264.git
$ cd x264
修改configure文件
$ vim configure
将下面的这四句:
else
echo "SOSUFFIX=so" >> config.mak
echo "SONAME=libx264.so.$API" >> config.mak
echo "SOFLAGS=-shared -Wl, -soname, \$(SONAME)$SOFLAGS" >> config.mak
中的这句:
echo "SONAME=libx264.so.$API" >> config.mak
改成:
echo "SONAME=libx264.so" >> config.mak
【保存并退出】
创建配置脚本
$ vim android_x264_configure.sh
#!/bin/bash
NDK=/opt/android/ndk/android-ndk-r10e
SYSROOT=$NDK/platforms/android-9/arch-arm/
TOOLCHAIN=$NDK/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64
function build_one
{
./configure \
--prefix=$PREFIX \
--enable-shared \
--enable-static \
--disable-gpac \
--disable-cli \
--cross-prefix=$TOOLCHAIN/bin/arm-linux-androideabi- \
--host=arm-linux \
--sysroot=$SYSROOT \
--extra-cflags="-Os -fpic $ADDI_CFLAGS" \
--extra-ldflags="$ADDI_LDFLAGS" \
$ADDITIONAL_CONFIGURE_FLAG
}
CPU=arm
PREFIX=$(pwd)/android/$CPU
ADDI_CFLAGS=""
build_one
【保存并退出】
$ chmod +x android_x264_configure.sh
$ ./android_x264_configure.sh
platform: ARM
byte order: little-endian
system: LINUX
cli: no
libx264: internal
shared: yes
static: yes
asm: yes
interlaced: yes
avs: avxsynth
lavf: no
ffms: no
mp4: no
gpl: yes
thread: posix
opencl: yes
filters: crop select_every
debug: no
gprof: no
strip: yes
PIC: yes
bit depth: 8
chroma format: all
You can run 'make' or 'make fprofiled' now.
$ make
$ make install
$ ls -R android
android:
arm
android/arm:
Android.mk bin include lib
android/arm/bin:
x264
android/arm/include:
x264_config.h x264.h
android/arm/lib:
libx264.a libx264.so pkgconfig
android/arm/lib/pkgconfig:
x264.pc
$ vim android/arm/Android.mk
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VRS)
LOCAL_MODULE := libx264
LOCAL_SRC_FILES := lib/libx264.so
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/include
include $(PREBUILT_SHARED_LIBRARY)
分享到:
相关推荐
libx264 源码+编译脚本+libx264.a支持真机+模拟器
嵌入式海思板交叉编译ffmpeg libx264 和 libx265可以在板子上面跑起来详细步骤记录。 自己已经跑起来可以正常推流264和265. 其中对应的详细每一步骤 ./config 配置命令 make make install 其中265用的cmake交叉编译 ...
android版本的arm平台下的ffmpeg+libx264+lib265.其中x264是直接编译到ffmpeg.so文件里面的。x265是以动态库的形式支持的.
ios ffmpeg and libx264编译脚本 详情看我的博客
编译后的libx264文件,包括.dll,.h文件
Windows上编译的libx264(源码+生成DLL、lib、def),没有依赖项,不想自己配置环境编译代码的人可以拿去用。
ubuntu编译libx264
libx264 windows的32位 x86版本动态库;包括头文件,lib和dll文件。libx264-155.h,libx264-155.lib,libx264-155.dll
windows x264编译的64位库,包括头文件、lib库等,编译方法详见https://blog.csdn.net/fly_520/article/details/80625844
在Linux平台下 的x264移植及...本资料包含了libx264移植的全部过程资料,及使用libx264库存把USB采集到的图像进行h264编码保存的视频文件,可以直接使用mplayer直接播放的完整示例代码。文档的详细度绝对不会让你失望。
是在windows 10下编译的动态库(libx264已被静态编译进去了),亲测可用。 FFMPEG版本:4.3.1 编译参数:./configure --disable-x86asm --enable-shared --disable-static --enable-gpl --enable-libx264 --extra-...
h264编码库文件,包含x264.h,x264_config.h,libx264-152.lib,libx264-152.dll等
ffmpeg+libx264混编so库,支持H.264软编,详细的编译过程可以看我这篇博客https://blog.csdn.net/qq_26525715/article/details/82952668
采用MingW和VS2010自带命令行,联合编译出x64和x86两套的libx264组件,包括Include, Lib, libx264.dll和libx264.exe, 亲测可在VS工程中调用,希望对各位有所帮助。 基于的官网版本是x264-snapshot-20180205-2245-...
ffmpeg安装不复杂,但是加上libx264,还是有些繁琐。此工具把所有资源打包,安装过程用pytho自动化,只用进入文件,执行py文件即可,包含ffmpeg,last_x264,nasm,yasm源码包,以及自动化安装的python包,需要提前...
本资源是通过opencv 采集摄像头图像(bgr24图像格式),使用libx264将(bgr24)图像编码为h264视频编码格式。开发环境位vs2013. 详情请参考博客:http://blog.csdn.net/qq_21193563/article/details/78692908
2014 libx264 最新 64bit
最新的libx264源码 h264编解码 完整的源码 可以在项目中使用
libx264 静态库 windows x86版本 使用VS2015编译,生成的位.a的静态库,支持在VS上使用
流媒体-H264协议-编码-x264学习-C++11多线程实现编码(四) https://blog.csdn.net/bwangk/article/details/111402909