編譯x264:
下載最新版的x264
ftp://ftp.videolan.org/pub/videolan/x264/snapshots/
1.解壓到指定的目錄
2.切換目前的目錄為該目錄
3.建立一個shell指令碼build_x264.sh,內容如下:
export NDK=/home/robin/案頭/android-ndk-r8cexport PREBUILT=$NDK/toolchains/arm-linux-androideabi-4.4.3/prebuiltexport PLATFORM=$NDK/platforms/android-8/arch-arm export PREFIX=/home/robin/android-x264./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,內容如下:
#!/bin/shexport PREBUILT=$NDK/toolchains/arm-linux-androideabi-4.4.3/prebuiltexport PLATFORM=$NDK/platforms/android-8/arch-armexport PREFIX=/home/robin/android-x264build_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/robin/android-x264/include -fPIC -DANDROID -D__thumb__ -mthumb -Wfatal-errors -Wno-deprecated -mfloat-abi=softfp -mfpu=vfpv3-d16 -marm -march=armv7-a" \--extra-ldflags="-L/home/robin/android-x264/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
執行build_ffmpeg.sh編譯完成,編譯輸出在$PREFIX指定的目錄
原文:http://hi.baidu.com/duizhe_memory/item/482e6fd6ccfee7fa93a974be