编译x264:
下载最新版的x264
ftp://ftp.videolan.org/pub/videolan/x264/snapshots/
1.解压到指定的目录
2.切换当前目录为该目录
3.创建一个shell脚本build_x264.sh,内容如下:
NDK= NDK=/home/duizhe/android-ndk-r6(你自己的NDK根目录)
PREBUILT=$NDK/toolchains/arm-linux-androideabi-4.4.3/prebuilt
PLATFORM=$NDK/platforms/android-8/arch-arm (or any other android platform you want)
PREFIX=/home/android-ffmpeg
./configure --prefix=$PREFIX \
--enable-static \
--enable-pic \
--disable-asm \
--disable-cli \
--host=arm-linux \
--cross-prefix=$PREBUILT/linux-x86/bin/arm-linux-androideabi- \
--sysroot=$PLATFORM
make
sudo make install
sudo ldconfig
编译ffmpeg:
下载最新版的ffmpeg
http://ffmpeg.org/releases/ffmpeg-snapshot.tar.bz2
1.解压到指定的目录
2.切换当前目录为该目录
3.创建一个shell脚本build_ffmpeg.sh,内容如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
#!/bin/bash export NDK= /home/duizhe/android-ndk-r6 export PREBUILT=$NDK /toolchains/arm-linux-androideabi-4 .4.3 /prebuilt export PLATFORM=$NDK /platforms/android-8/arch-arm export PREFIX= /home/android-ffmpeg function build_one { . /configure --target-os=linux --prefix=$PREFIX \ -- enable -cross-compile \ -- enable -runtime-cpudetect \ --disable-asm \ --arch=arm \ --cc=$PREBUILT /linux-x86/bin/arm-linux-androideabi-gcc \ --cross-prefix=$PREBUILT /linux-x86/bin/arm-linux-androideabi- \ --disable-stripping \ --nm=$PREBUILT /linux-x86/bin/arm-linux-androideabi-nm \ --sysroot=$PLATFORM \ -- enable -nonfree \ -- enable -version3 \ --disable-everything \ -- enable -gpl \ --disable-doc \ -- enable -avresample \ -- enable -demuxer=rtsp \ -- enable -muxer=rtsp \ --disable-ffplay \ --disable-ffserver \ -- enable -ffmpeg \ --disable-ffprobe \ -- enable -libx264 \ -- enable -encoder=libx264 \ -- enable -decoder=h264 \ -- enable -protocol=rtp \ -- enable -hwaccels \ -- enable -zlib \ --disable-devices \ --disable-avdevice \ --extra-cflags= "-I/home/android-ffmpeg/include -fPIC -DANDROID -D__thumb__ -mthumb -Wfatal-errors -Wno-deprecated -mfloat-abi=softfp -mfpu=vfpv3-d16 -marm -march=armv7-a" \ --extra-ldflags= "-L/home/android-ffmpeg/lib" make -j4 install $PREBUILT /linux-x86/bin/arm-linux-androideabi-ar d libavcodec /libavcodec .a inverse.o $PREBUILT /linux-x86/bin/arm-linux-androideabi-ld -rpath-link=$PLATFORM /usr/lib -L$PLATFORM /usr/lib -L$PREFIX /lib -soname libffmpeg.so -shared -nostdlib -z,noexecstack -Bsymbolic --whole-archive --no-undefined -o $PREFIX /libffmpeg .so libavcodec /libavcodec .a libavfilter /libavfilter .a libavresample /libavresample .a libavformat /libavformat .a libavutil /libavutil .a libswscale /libswscale .a -lc -lm -lz -ldl -llog -lx264 --warn-once --dynamic-linker= /system/bin/linker $PREBUILT /linux-x86/lib/gcc/arm-linux-androideabi/4 .4.3 /libgcc .a } build_one |
编译完成。
转自:http://hi.baidu.com/duizhe_memory/item/482e6fd6ccfee7fa93a974be
留言列表