目前用的是ffmpeg0.61的源码,
配置项如下:
PLATFORM=/root/android-ndk-r4b/build/platforms/android-8/arch-arm
./configure
 --target-os=linux \   
 --arch=arm \    
 --enable-version3 \    
 --enable-gpl \    
 --enable-nonfree \    
 --disable-stripping \    
 --disable-ffmpeg \    
 --disable-ffplay \    
 --disable-ffserver \   
 --disable-ffprobe \    
 --disable-encoders \   
 --disable-muxers \   
 --disable-devices \   
 --disable-protocols \  
 --enable-protocol=file \   
 --enable-avfilter \    
 --disable-network \    
 --disable-mpegaudio-hp \    
 --disable-avdevice \   
 --enable-cross-compile \   
 --cc=$PREBUILT/bin/arm-eabi-gcc \   
 --cross-prefix=$PREBUILT/bin/arm-eabi- \    
 --nm=$PREBUILT/bin/arm-eabi-nm \   
 --extra-cflags="-fPIC -DANDROID" \   
 --disable-asm \   
 --enable-neon \    
 --enable-armv5te \    
 --extra-ldflags="-Wl,-T,$PREBUILT/arm-eabi/lib/ldscripts/armelf.x -Wl,-rpath-link=$PLATFORM/usr/lib -L$PLATFORM/usr/lib -nostdlib $PREBUILT/lib/gcc/arm-eabi/4.4.0/crtbegin.o $PREBUILT/lib/gcc/arm-eabi/4.4.0/crtend.o -lc -lm -ldl"貌似已经打开neon选项了,但实际上编译出来的so并没有优化

解决方案 »

  1.   

    这个NEON优化是个空壳子,没有实现,呵呵
      

  2.   

    --disable-asm
    汇编优化都被你关掉了,NEON怎么可能打得开用--enable-asm重新configure
    然后检查config.h 里面 HAVE_NEON 是不是有被置成 1成功的话,libavcodec/arm/ 会有 *neon* 的目标文件被生成
      

  3.   

    你好。我还是不成功阿。#define HAVE_NEON 0
      

  4.   

    这个是可以优化的。改config.sh 和Android.mk.
      

  5.   

    cpu=cortex-a8 arch=armv7 --enable-neon 
      

  6.   

    --arch=arm --cpu=armv7-a--extra-cflags='-fPIC -DANDROID -mfpu=neon -mfloat-abi=softfp'