本文能夠編譯出集成了x264和fdk_aac的庫,並且支持neonhtml
下載源碼:android
https://github.com/mstorsjo/fdk-aac git
http://www.videolan.org/developers/x264.htmlgithub
ffmpeg-2.7.2ide
解壓後重命名文件夾:ui
mv fdk-aac-0.1.1 fdk-aac mv ffmpeg-2.7.2 ffmpeg mv x264-snapshot-20150813-22455 x264 cp cmdl_parser.cpp fdk-aac/libSYS/src/ cp genericStds.h fdk-aac/libSYS/include/ 須要修改腳本里面ndk的路徑。
chmod 777 build_android_static .sh./build_android.sh > result.log
結果:spa
本文所用腳本下載:.net
精簡版本:code
附錄:htm
問題1:
編譯libSYS/src/cmdl_parser.cpp出錯
stdio.h:57:9: error: 'off_t' does not name a type
解決:註釋掉cmdl_parser.cpp中的下面語句:
//#define _SYS_TYPES_H_
問題2:
libSYS/src/genericStds.cpp:108 : stdio.h:57:9: error: 'off_t' does not name a type
解決:修改libSYS\include\genericStds.h
註釋掉:
//#define _SYS_TYPES_H_
問題3:
libavcodec/libavcodec.a(fft_fixed_init_arm.o): In function `ff_fft_fixed_init_arm': fft_fixed_init_arm.c:(.text.unlikely+0x2c): undefined reference to `ff_fft_fixed_calc_neon' libavcodec/libavcodec.a(fft_init_arm.o): In function `ff_fft_init_arm': fft_init_arm.c:(.text.unlikely+0x30): undefined reference to `ff_fft_permute_neon' fft_init_arm.c:(.text.unlikely+0x34): undefined reference to `ff_fft_calc_neon'
但好像編譯出了.a,只是最後Building one...時報錯了。
解決:使用最新的ffmpeg版本,並註釋掉build_one那一行。
https://github.com/nxtreaming/FFmpegAndroid/blob/master/FFmpegLibrary/jni/build_android.sh