目录:
1.编译的详细步骤和相关文件
2.可能出现的错误及解决
2.1执行 configsh出错提示bad interpreter No such file or directory
2.2执行 ndk-build出错提示libavcodecavmk1 missing separator Stop
ffmpeg相关的内容请查http://dranger.com/ffmpeg/ffmpeg.html。
1.补充详细步骤:
首先创建一个标准的Android项目vPlayer
然后在vPlayer目录里
mkdir jni && cd jniwget http://ffmpeg.org/releases/ffmpeg-0.6.tar.bz2tar xf ffmpeg-0.6.tar.bz2 && mv ffmpeg-0.6 ffmpeg && cd ffmpeg
(如果你不能获得这个版本的ffmpeg源文件,可以下载资源Android移植ffmpeg编译的工程文件,里面的工程文件包含了ffmpeg的源代码文件和下边要讲的所有配置文件。如果你的电脑已经配置了NDK,那么可以在这个工程里直接编译ffmpeg.)
在ffmpeg下新建一个config.sh,内容如下,注意把PREBUILT和PLATFORM设置正确。
#!/bin/bashPREBUILT=/home/jin/android/android-ndk-r4b/build/prebuilt/linux-x86/arm-eabi-4.4.0PLATFORM=/home/jin/android/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"
运行config.sh开始configure
chmod +x config.sh
./config.sh
configure完成后,生成config.h如下(注意这是修改过的,仅供参考):
/* Automatically generated by configure - do not modify! */#ifndef FFMPEG_CONFIG_H#define FFMPEG_CONFIG_H#define FFMPEG_CONFIGURATION "--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=/home/jin/android/android-ndk-r4b/build/prebuilt/linux-x86/arm-eabi-4.4.0/bin/arm-eabi-gcc --cross-prefix=/home/jin/android/android-ndk-r4b/build/prebuilt/linux-x86/arm-eabi-4.4.0/bin/arm-eabi- --nm=/home/jin/android/android-ndk-r4b/build/prebuilt/linux-x86/arm-eabi-4.4.0/bin/arm-eabi-nm --extra-cflags='-fPIC -DANDROID' --disable-asm --enable-neon --enable-armv5te --extra-ldflags='-Wl,-T,/home/jin/android/android-ndk-r4b/build/prebuilt/linux-x86/arm-eabi-4.4.0/arm-eabi/lib/ldscripts/armelf.x -Wl,-rpath-link=/home/jin/android/android-ndk-r4b/build/platforms/android-8/arch-arm/usr/lib -L/home/jin/android/android-ndk-r4b/build/platforms/android-8/arch-arm/usr/lib -nostdlib /home/jin/android/android-ndk-r4b/build/prebuilt/linux-x86/arm-eabi-4.4.0/lib/gcc/arm-eabi/4.4.0/crtbegin.o /home/jin/android/android-ndk-r4b/build/prebuilt/linux-x86/arm-eabi-4.4.0/lib/gcc/arm-eabi/4.4.0/crtend.o -lc -lm -ldl'"#define FFMPEG_LICENSE "nonfree and unredistributable"#define FFMPEG_DATADIR "/usr/local/share/ffmpeg"#define CC_TYPE "gcc"#define CC_VERSION __VERSION__#define restrict#define ASMALIGN(ZEROBITS) ".align " #ZEROBITS "\n\t"#define EXTERN_PREFIX ""#define EXTERN_ASM #define ARCH_ALPHA 0#define ARCH_ARM 0#define ARCH_AVR32 0#define ARCH_AVR32_AP 0#define ARCH_AVR32_UC 0#define ARCH_BFIN 0#define ARCH_IA64 0#define ARCH_M68K 0#define ARCH_MIPS 0#define ARCH_MIPS64 0#define ARCH_PARISC 0#define ARCH_PPC 0#define ARCH_PPC64 0#define ARCH_S390 0#define ARCH_SH4 0#define ARCH_SPARC 0#define ARCH_SPARC64 0#define ARCH_TOMI 0#define ARCH_X86 0#define ARCH_X86_32 0#define ARCH_X86_64 0#define HAVE_ALTIVEC 0#define HAVE_AMD3DNOW 0#define HAVE_AMD3DNOWEXT 0#define HAVE_ARMV5TE 0#define HAVE_ARMV6 0#define HAVE_ARMV6T2 0#define HAVE_ARMVFP 0#define HAVE_IWMMXT 0#define HAVE_MMI 0#define HAVE_MMX 0#define HAVE_MMX2 0#define HAVE_NEON 0#define HAVE_PPC4XX 0#define HAVE_SSE 0#define HAVE_SSSE3 0#define HAVE_VIS 0#define HAVE_BIGENDIAN 0#define HAVE_BEOSTHREADS 0#define HAVE_OS2THREADS 0#define HAVE_PTHREADS 0#define HAVE_W32THREADS 0#define HAVE_ALSA_ASOUNDLIB_H 0#define HAVE_ALTIVEC_H 0#define HAVE_ARPA_INET_H 0#define HAVE_ATTRIBUTE_MAY_ALIAS 1#define HAVE_ATTRIBUTE_PACKED 1#define HAVE_BSWAP 0#define HAVE_CLOSESOCKET 0#define HAVE_CMOV 0#define HAVE_CONIO_H 0#define HAVE_DCBZL 0#define HAVE_DEV_BKTR_IOCTL_BT848_H 0#define HAVE_DEV_BKTR_IOCTL_METEOR_H 0#define HAVE_DEV_IC_BT8XX_H 0#define HAVE_DEV_VIDEO_METEOR_IOCTL_METEOR_H 0#define HAVE_DEV_VIDEO_BKTR_IOCTL_BT848_H 0#define HAVE_DLFCN_H 0#define HAVE_DLOPEN 1#define HAVE_DOS_PATHS 0#define HAVE_EBP_AVAILABLE 0#define HAVE_EBX_AVAILABLE 0#define HAVE_EXP2 0#define HAVE_EXP2F 0#define HAVE_FAST_64BIT 0#define HAVE_FAST_CLZ 1#define HAVE_FAST_CMOV 0#define HAVE_FAST_UNALIGNED 0#define HAVE_FORK 1#define HAVE_GETADDRINFO 1#define HAVE_GETHRTIME 0#define HAVE_GETPROCESSMEMORYINFO 0#define HAVE_GETPROCESSTIMES 0#define HAVE_GETRUSAGE 1#define HAVE_STRUCT_RUSAGE_RU_MAXRSS 0#define HAVE_INET_ATON 1#define HAVE_INLINE_ASM 1#define HAVE_ISATTY 1#define HAVE_LDBRX 0#define HAVE_LIBDC1394_1 0#define HAVE_LIBDC1394_2 0#define HAVE_LLRINT 0#define HAVE_LLRINTF 0#define HAVE_LOCAL_ALIGNED_16 0#define HAVE_LOCAL_ALIGNED_8 0#define HAVE_LOG2 0#define HAVE_LOG2F 0#define HAVE_LOONGSON 0#define HAVE_LRINT 0#define HAVE_LRINTF 0#define HAVE_LZO1X_999_COMPRESS 0#define HAVE_MACHINE_IOCTL_BT848_H 0#define HAVE_MACHINE_IOCTL_METEOR_H 0#define HAVE_MALLOC_H 0#define HAVE_MEMALIGN 1#define HAVE_MKSTEMP 1#define HAVE_PLD 1#define HAVE_POSIX_MEMALIGN 0#define HAVE_ROUND 0#define HAVE_ROUNDF 0#define HAVE_SDL 0#define HAVE_SDL_VIDEO_SIZE 0#define HAVE_SETMODE 0#define HAVE_SOCKLEN_T 0#define HAVE_SOUNDCARD_H 0#define HAVE_POLL_H 0#define HAVE_SETRLIMIT 1#define HAVE_STRERROR_R 1#define HAVE_STRUCT_ADDRINFO 0#define HAVE_STRUCT_IPV6_MREQ 0#define HAVE_STRUCT_SOCKADDR_IN6 0#define HAVE_STRUCT_SOCKADDR_SA_LEN 0#define HAVE_STRUCT_SOCKADDR_STORAGE 0#define HAVE_SYMVER 1#define HAVE_SYMVER_GNU_ASM 1#define HAVE_SYMVER_ASM_LABEL 0#define HAVE_SYS_MMAN_H 0#define HAVE_SYS_RESOURCE_H 0#define HAVE_SYS_SELECT_H 0#define HAVE_SYS_SOUNDCARD_H 0#define HAVE_SYS_VIDEOIO_H 0#define HAVE_TEN_OPERANDS 0#define HAVE_TERMIOS_H 0#define HAVE_THREADS 0#define HAVE_TRUNCF 0#define HAVE_VFP_ARGS 0#define HAVE_VIRTUALALLOC 0#define HAVE_WINSOCK2_H 0#define HAVE_XFORM_ASM 0#define HAVE_YASM 0#define CONFIG_BSFS 1#define CONFIG_DECODERS 1#define CONFIG_DEMUXERS 1#define CONFIG_ENCODERS 0#define CONFIG_FILTERS 1#define CONFIG_HWACCELS 0#define CONFIG_INDEVS 0#define CONFIG_MUXERS 0#define CONFIG_OUTDEVS 0#define CONFIG_PARSERS 1#define CONFIG_PROTOCOLS 1#define CONFIG_AANDCT 1#define CONFIG_AVCODEC 1#define CONFIG_AVDEVICE 0#define CONFIG_AVFILTER 1#define CONFIG_AVFILTER_LAVF 0#define CONFIG_AVFORMAT 1#define CONFIG_AVISYNTH 0#define CONFIG_BEOS_NETSERVER 0#define CONFIG_BZLIB 0#define CONFIG_DCT 1#define CONFIG_DOC 0#define CONFIG_DWT 1#define CONFIG_DXVA2 0#define CONFIG_FASTDIV 1#define CONFIG_FFMPEG 0#define CONFIG_FFPLAY 0#define CONFIG_FFPROBE 0#define CONFIG_FFSERVER 0#define CONFIG_FFT 1#define CONFIG_GOLOMB 1#define CONFIG_GPL 1#define CONFIG_GPROF 0#define CONFIG_GRAY 0#define CONFIG_H264DSP 1#define CONFIG_HARDCODED_TABLES 0#define CONFIG_LIBDC1394 0#define CONFIG_LIBDIRAC 0#define CONFIG_LIBFAAC 0#define CONFIG_LIBFAAD 0#define CONFIG_LIBFAADBIN 0#define CONFIG_LIBGSM 0#define CONFIG_LIBMP3LAME 0#define CONFIG_LIBNUT 0#define CONFIG_LIBOPENCORE_AMRNB 0#define CONFIG_LIBOPENCORE_AMRWB 0#define CONFIG_LIBOPENJPEG 0#define CONFIG_LIBRTMP 0#define CONFIG_LIBSCHROEDINGER 0#define CONFIG_LIBSPEEX 0#define CONFIG_LIBTHEORA 0#define CONFIG_LIBVORBIS 0#define CONFIG_LIBVPX 0#define CONFIG_LIBX264 0#define CONFIG_LIBXVID 0#define CONFIG_LPC 0#define CONFIG_LSP 1#define CONFIG_MDCT 1#define CONFIG_MEMALIGN_HACK 0#define CONFIG_MLIB 0#define CONFIG_MPEGAUDIO_HP 0#define CONFIG_NETWORK 0#define CONFIG_NONFREE 1#define CONFIG_PIC 0#define CONFIG_POSTPROC 0#define CONFIG_POWERPC_PERF 0#define CONFIG_RDFT 1#define CONFIG_RUNTIME_CPUDETECT 0#define CONFIG_SHARED 0#define CONFIG_SMALL 0#define CONFIG_SRAM 0#define CONFIG_STATIC 1#define CONFIG_SWSCALE 1#define CONFIG_SWSCALE_ALPHA 1#define CONFIG_VAAPI 0#define CONFIG_VDPAU 0#define CONFIG_VERSION3 1#define CONFIG_X11GRAB 0#define CONFIG_ZLIB 0#define CONFIG_AVUTIL 1#define CONFIG_GPLV3 1#define CONFIG_LGPLV3 0#define CONFIG_AASC_DECODER 1#define CONFIG_AMV_DECODER 1#define CONFIG_ANM_DECODER 1#define CONFIG_ASV1_DECODER 1#define CONFIG_ASV2_DECODER 1#define CONFIG_AURA_DECODER 1#define CONFIG_AURA2_DECODER 1#define CONFIG_AVS_DECODER 1#define CONFIG_BETHSOFTVID_DECODER 1#define CONFIG_BFI_DECODER 1#define CONFIG_BINK_DECODER 1#define CONFIG_BMP_DECODER 1#define CONFIG_C93_DECODER 1#define CONFIG_CAVS_DECODER 1#define CONFIG_CDGRAPHICS_DECODER 1#define CONFIG_CINEPAK_DECODER 1#define CONFIG_CLJR_DECODER 1#define CONFIG_CSCD_DECODER 1#define CONFIG_CYUV_DECODER 1#define CONFIG_DNXHD_DECODER 1#define CONFIG_DPX_DECODER 1#define CONFIG_DSICINVIDEO_DECODER 1#define CONFIG_DVVIDEO_DECODER 1#define CONFIG_DXA_DECODER 0#define CONFIG_EACMV_DECODER 1#define CONFIG_EAMAD_DECODER 1#define CONFIG_EATGQ_DECODER 1#define CONFIG_EATGV_DECODER 1#define CONFIG_EATQI_DECODER 1#define CONFIG_EIGHTBPS_DECODER 1#define CONFIG_EIGHTSVX_EXP_DECODER 1#define CONFIG_EIGHTSVX_FIB_DECODER 1#define CONFIG_ESCAPE124_DECODER 1#define CONFIG_FFV1_DECODER 1#define CONFIG_FFVHUFF_DECODER 1#define CONFIG_FLASHSV_DECODER 0#define CONFIG_FLIC_DECODER 1#define CONFIG_FLV_DECODER 1#define CONFIG_FOURXM_DECODER 1#define CONFIG_FRAPS_DECODER 1#define CONFIG_FRWU_DECODER 1#define CONFIG_GIF_DECODER 1#define CONFIG_H261_DECODER 1#define CONFIG_H263_DECODER 1#define CONFIG_H263I_DECODER 1#define CONFIG_H264_DECODER 1#define CONFIG_H264_VDPAU_DECODER 0#define CONFIG_HUFFYUV_DECODER 1#define CONFIG_IDCIN_DECODER 1#define CONFIG_IFF_BYTERUN1_DECODER 1#define CONFIG_IFF_ILBM_DECODER 1#define CONFIG_INDEO2_DECODER 1#define CONFIG_INDEO3_DECODER 1#define CONFIG_INDEO5_DECODER 1#define CONFIG_INTERPLAY_VIDEO_DECODER 1#define CONFIG_JPEGLS_DECODER 1#define CONFIG_KGV1_DECODER 1#define CONFIG_KMVC_DECODER 1#define CONFIG_LOCO_DECODER 1#define CONFIG_MDEC_DECODER 1#define CONFIG_MIMIC_DECODER 1#define CONFIG_MJPEG_DECODER 1#define CONFIG_MJPEGB_DECODER 1#define CONFIG_MMVIDEO_DECODER 1#define CONFIG_MOTIONPIXELS_DECODER 1#define CONFIG_MPEG_XVMC_DECODER 0#define CONFIG_MPEG1VIDEO_DECODER 1#define CONFIG_MPEG2VIDEO_DECODER 1#define CONFIG_MPEG4_DECODER 1#define CONFIG_MPEG4_VDPAU_DECODER 0#define CONFIG_MPEGVIDEO_DECODER 1#define CONFIG_MPEG_VDPAU_DECODER 0#define CONFIG_MPEG1_VDPAU_DECODER 0#define CONFIG_MSMPEG4V1_DECODER 1#define CONFIG_MSMPEG4V2_DECODER 1#define CONFIG_MSMPEG4V3_DECODER 1#define CONFIG_MSRLE_DECODER 1#define CONFIG_MSVIDEO1_DECODER 1#define CONFIG_MSZH_DECODER 1#define CONFIG_NUV_DECODER 1#define CONFIG_PAM_DECODER 1#define CONFIG_PBM_DECODER 1#define CONFIG_PCX_DECODER 1#define CONFIG_PGM_DECODER 1#define CONFIG_PGMYUV_DECODER 1#define CONFIG_PNG_DECODER 0#define CONFIG_PPM_DECODER 1#define CONFIG_PTX_DECODER 1#define CONFIG_QDRAW_DECODER 1#define CONFIG_QPEG_DECODER 1#define CONFIG_QTRLE_DECODER 1#define CONFIG_R210_DECODER 1#define CONFIG_RAWVIDEO_DECODER 1#define CONFIG_RL2_DECODER 1#define CONFIG_ROQ_DECODER 1#define CONFIG_RPZA_DECODER 1#define CONFIG_RV10_DECODER 1#define CONFIG_RV20_DECODER 1#define CONFIG_RV30_DECODER 1#define CONFIG_RV40_DECODER 1#define CONFIG_SGI_DECODER 1#define CONFIG_SMACKER_DECODER 1#define CONFIG_SMC_DECODER 1#define CONFIG_SNOW_DECODER 1#define CONFIG_SP5X_DECODER 1#define CONFIG_SUNRAST_DECODER 1#define CONFIG_SVQ1_DECODER 1#define CONFIG_SVQ3_DECODER 1#define CONFIG_TARGA_DECODER 1#define CONFIG_THEORA_DECODER 1#define CONFIG_THP_DECODER 1#define CONFIG_TIERTEXSEQVIDEO_DECODER 1#define CONFIG_TIFF_DECODER 1#define CONFIG_TMV_DECODER 1#define CONFIG_TRUEMOTION1_DECODER 1#define CONFIG_TRUEMOTION2_DECODER 1#define CONFIG_TSCC_DECODER 0#define CONFIG_TXD_DECODER 1#define CONFIG_ULTI_DECODER 1#define CONFIG_V210_DECODER 1#define CONFIG_V210X_DECODER 1#define CONFIG_VB_DECODER 1#define CONFIG_VC1_DECODER 1#define CONFIG_VC1_VDPAU_DECODER 0#define CONFIG_VCR1_DECODER 1#define CONFIG_VMDVIDEO_DECODER 1#define CONFIG_VMNC_DECODER 1#define CONFIG_VP3_DECODER 1#define CONFIG_VP5_DECODER 1#define CONFIG_VP6_DECODER 1#define CONFIG_VP6A_DECODER 1#define CONFIG_VP6F_DECODER 1#define CONFIG_VQA_DECODER 1#define CONFIG_WMV1_DECODER 1#define CONFIG_WMV2_DECODER 1#define CONFIG_WMV3_DECODER 1#define CONFIG_WMV3_VDPAU_DECODER 0#define CONFIG_WNV1_DECODER 1#define CONFIG_XAN_WC3_DECODER 1#define CONFIG_XL_DECODER 1#define CONFIG_YOP_DECODER 1#define CONFIG_ZLIB_DECODER 0#define CONFIG_ZMBV_DECODER 0#define CONFIG_AAC_DECODER 1#define CONFIG_AC3_DECODER 1#define CONFIG_ALAC_DECODER 1#define CONFIG_ALS_DECODER 1#define CONFIG_AMRNB_DECODER 1#define CONFIG_APE_DECODER 1#define CONFIG_ATRAC1_DECODER 1#define CONFIG_ATRAC3_DECODER 1#define CONFIG_BINKAUDIO_DCT_DECODER 1#define CONFIG_BINKAUDIO_RDFT_DECODER 1#define CONFIG_COOK_DECODER 1#define CONFIG_DCA_DECODER 1#define CONFIG_DSICINAUDIO_DECODER 1#define CONFIG_EAC3_DECODER 1#define CONFIG_FLAC_DECODER 1#define CONFIG_IMC_DECODER 1#define CONFIG_MACE3_DECODER 1#define CONFIG_MACE6_DECODER 1#define CONFIG_MLP_DECODER 1#define CONFIG_MP1_DECODER 1#define CONFIG_MP2_DECODER 1#define CONFIG_MP3_DECODER 1#define CONFIG_MP3ADU_DECODER 1#define CONFIG_MP3ON4_DECODER 1#define CONFIG_MPC7_DECODER 1#define CONFIG_MPC8_DECODER 1#define CONFIG_NELLYMOSER_DECODER 1#define CONFIG_QCELP_DECODER 1#define CONFIG_QDM2_DECODER 1#define CONFIG_RA_144_DECODER 1#define CONFIG_RA_288_DECODER 1#define CONFIG_SHORTEN_DECODER 1#define CONFIG_SIPR_DECODER 1#define CONFIG_SMACKAUD_DECODER 1#define CONFIG_SONIC_DECODER 1#define CONFIG_TRUEHD_DECODER 1#define CONFIG_TRUESPEECH_DECODER 1#define CONFIG_TTA_DECODER 1#define CONFIG_TWINVQ_DECODER 1#define CONFIG_VMDAUDIO_DECODER 1#define CONFIG_VORBIS_DECODER 1#define CONFIG_WAVPACK_DECODER 1#define CONFIG_WMAPRO_DECODER 1#define CONFIG_WMAV1_DECODER 1#define CONFIG_WMAV2_DECODER 1#define CONFIG_WMAVOICE_DECODER 1#define CONFIG_WS_SND1_DECODER 1#define CONFIG_PCM_ALAW_DECODER 1#define CONFIG_PCM_BLURAY_DECODER 1#define CONFIG_PCM_DVD_DECODER 1#define CONFIG_PCM_F32BE_DECODER 1#define CONFIG_PCM_F32LE_DECODER 1#define CONFIG_PCM_F64BE_DECODER 1#define CONFIG_PCM_F64LE_DECODER 1#define CONFIG_PCM_MULAW_DECODER 1#define CONFIG_PCM_S8_DECODER 1#define CONFIG_PCM_S16BE_DECODER 1#define CONFIG_PCM_S16LE_DECODER 1#define CONFIG_PCM_S16LE_PLANAR_DECODER 1#define CONFIG_PCM_S24BE_DECODER 1#define CONFIG_PCM_S24DAUD_DECODER 1#define CONFIG_PCM_S24LE_DECODER 1#define CONFIG_PCM_S32BE_DECODER 1#define CONFIG_PCM_S32LE_DECODER 1#define CONFIG_PCM_U8_DECODER 1#define CONFIG_PCM_U16BE_DECODER 1#define CONFIG_PCM_U16LE_DECODER 1#define CONFIG_PCM_U24BE_DECODER 1#define CONFIG_PCM_U24LE_DECODER 1#define CONFIG_PCM_U32BE_DECODER 1#define CONFIG_PCM_U32LE_DECODER 1#define CONFIG_PCM_ZORK_DECODER 1#define CONFIG_INTERPLAY_DPCM_DECODER 1#define CONFIG_ROQ_DPCM_DECODER 1#define CONFIG_SOL_DPCM_DECODER 1#define CONFIG_XAN_DPCM_DECODER 1#define CONFIG_ADPCM_4XM_DECODER 1#define CONFIG_ADPCM_ADX_DECODER 1#define CONFIG_ADPCM_CT_DECODER 1#define CONFIG_ADPCM_EA_DECODER 1#define CONFIG_ADPCM_EA_MAXIS_XA_DECODER 1#define CONFIG_ADPCM_EA_R1_DECODER 1#define CONFIG_ADPCM_EA_R2_DECODER 1#define CONFIG_ADPCM_EA_R3_DECODER 1#define CONFIG_ADPCM_EA_XAS_DECODER 1#define CONFIG_ADPCM_G726_DECODER 1#define CONFIG_ADPCM_IMA_AMV_DECODER 1#define CONFIG_ADPCM_IMA_DK3_DECODER 1#define CONFIG_ADPCM_IMA_DK4_DECODER 1#define CONFIG_ADPCM_IMA_EA_EACS_DECODER 1#define CONFIG_ADPCM_IMA_EA_SEAD_DECODER 1#define CONFIG_ADPCM_IMA_ISS_DECODER 1#define CONFIG_ADPCM_IMA_QT_DECODER 1#define CONFIG_ADPCM_IMA_SMJPEG_DECODER 1#define CONFIG_ADPCM_IMA_WAV_DECODER 1#define CONFIG_ADPCM_IMA_WS_DECODER 1#define CONFIG_ADPCM_MS_DECODER 1#define CONFIG_ADPCM_SBPRO_2_DECODER 1#define CONFIG_ADPCM_SBPRO_3_DECODER 1#define CONFIG_ADPCM_SBPRO_4_DECODER 1#define CONFIG_ADPCM_SWF_DECODER 1#define CONFIG_ADPCM_THP_DECODER 1#define CONFIG_ADPCM_XA_DECODER 1#define CONFIG_ADPCM_YAMAHA_DECODER 1#define CONFIG_DVBSUB_DECODER 1#define CONFIG_DVDSUB_DECODER 1#define CONFIG_PGSSUB_DECODER 1#define CONFIG_XSUB_DECODER 1#define CONFIG_LIBDIRAC_DECODER 0#define CONFIG_LIBFAAD_DECODER 0#define CONFIG_LIBGSM_DECODER 0#define CONFIG_LIBGSM_MS_DECODER 0#define CONFIG_LIBOPENCORE_AMRNB_DECODER 0#define CONFIG_LIBOPENCORE_AMRWB_DECODER 0#define CONFIG_LIBOPENJPEG_DECODER 0#define CONFIG_LIBSCHROEDINGER_DECODER 0#define CONFIG_LIBSPEEX_DECODER 0#define CONFIG_LIBVPX_DECODER 0#define CONFIG_ASV1_ENCODER 0#define CONFIG_ASV2_ENCODER 0#define CONFIG_BMP_ENCODER 0#define CONFIG_DNXHD_ENCODER 0#define CONFIG_DVVIDEO_ENCODER 0#define CONFIG_FFV1_ENCODER 0#define CONFIG_FFVHUFF_ENCODER 0#define CONFIG_FLASHSV_ENCODER 0#define CONFIG_FLV_ENCODER 0#define CONFIG_GIF_ENCODER 0#define CONFIG_H261_ENCODER 0#define CONFIG_H263_ENCODER 0#define CONFIG_H263P_ENCODER 0#define CONFIG_HUFFYUV_ENCODER 0#define CONFIG_JPEGLS_ENCODER 0#define CONFIG_LJPEG_ENCODER 0#define CONFIG_MJPEG_ENCODER 0#define CONFIG_MPEG1VIDEO_ENCODER 0#define CONFIG_MPEG2VIDEO_ENCODER 0#define CONFIG_MPEG4_ENCODER 0#define CONFIG_MSMPEG4V1_ENCODER 0#define CONFIG_MSMPEG4V2_ENCODER 0#define CONFIG_MSMPEG4V3_ENCODER 0#define CONFIG_PAM_ENCODER 0#define CONFIG_PBM_ENCODER 0#define CONFIG_PCX_ENCODER 0#define CONFIG_PGM_ENCODER 0#define CONFIG_PGMYUV_ENCODER 0#define CONFIG_PNG_ENCODER 0#define CONFIG_PPM_ENCODER 0#define CONFIG_QTRLE_ENCODER 0#define CONFIG_RAWVIDEO_ENCODER 0#define CONFIG_ROQ_ENCODER 0#define CONFIG_RV10_ENCODER 0#define CONFIG_RV20_ENCODER 0#define CONFIG_SGI_ENCODER 0#define CONFIG_SNOW_ENCODER 0#define CONFIG_SVQ1_ENCODER 0#define CONFIG_TARGA_ENCODER 0#define CONFIG_TIFF_ENCODER 0#define CONFIG_V210_ENCODER 0#define CONFIG_WMV1_ENCODER 0#define CONFIG_WMV2_ENCODER 0#define CONFIG_ZLIB_ENCODER 0#define CONFIG_ZMBV_ENCODER 0#define CONFIG_AAC_ENCODER 0#define CONFIG_AC3_ENCODER 0#define CONFIG_ALAC_ENCODER 0#define CONFIG_FLAC_ENCODER 0#define CONFIG_MP2_ENCODER 0#define CONFIG_NELLYMOSER_ENCODER 0#define CONFIG_SONIC_ENCODER 0#define CONFIG_SONIC_LS_ENCODER 0#define CONFIG_WMAV1_ENCODER 0#define CONFIG_WMAV2_ENCODER 0#define CONFIG_PCM_ALAW_ENCODER 0#define CONFIG_PCM_F32BE_ENCODER 0#define CONFIG_PCM_F32LE_ENCODER 0#define CONFIG_PCM_F64BE_ENCODER 0#define CONFIG_PCM_F64LE_ENCODER 0#define CONFIG_PCM_MULAW_ENCODER 0#define CONFIG_PCM_S8_ENCODER 0#define CONFIG_PCM_S16BE_ENCODER 0#define CONFIG_PCM_S16LE_ENCODER 0#define CONFIG_PCM_S24BE_ENCODER 0#define CONFIG_PCM_S24DAUD_ENCODER 0#define CONFIG_PCM_S24LE_ENCODER 0#define CONFIG_PCM_S32BE_ENCODER 0#define CONFIG_PCM_S32LE_ENCODER 0#define CONFIG_PCM_U8_ENCODER 0#define CONFIG_PCM_U16BE_ENCODER 0#define CONFIG_PCM_U16LE_ENCODER 0#define CONFIG_PCM_U24BE_ENCODER 0#define CONFIG_PCM_U24LE_ENCODER 0#define CONFIG_PCM_U32BE_ENCODER 0#define CONFIG_PCM_U32LE_ENCODER 0#define CONFIG_PCM_ZORK_ENCODER 0#define CONFIG_ROQ_DPCM_ENCODER 0#define CONFIG_ADPCM_ADX_ENCODER 0#define CONFIG_ADPCM_G726_ENCODER 0#define CONFIG_ADPCM_IMA_QT_ENCODER 0#define CONFIG_ADPCM_IMA_WAV_ENCODER 0#define CONFIG_ADPCM_MS_ENCODER 0#define CONFIG_ADPCM_SWF_ENCODER 0#define CONFIG_ADPCM_YAMAHA_ENCODER 0#define CONFIG_DVBSUB_ENCODER 0#define CONFIG_DVDSUB_ENCODER 0#define CONFIG_XSUB_ENCODER 0#define CONFIG_LIBDIRAC_ENCODER 0#define CONFIG_LIBFAAC_ENCODER 0#define CONFIG_LIBGSM_ENCODER 0#define CONFIG_LIBGSM_MS_ENCODER 0#define CONFIG_LIBMP3LAME_ENCODER 0#define CONFIG_LIBOPENCORE_AMRNB_ENCODER 0#define CONFIG_LIBSCHROEDINGER_ENCODER 0#define CONFIG_LIBTHEORA_ENCODER 0#define CONFIG_LIBVORBIS_ENCODER 0#define CONFIG_LIBVPX_ENCODER 0#define CONFIG_LIBX264_ENCODER 0#define CONFIG_LIBXVID_ENCODER 0#define CONFIG_H263_VAAPI_HWACCEL 0#define CONFIG_H264_DXVA2_HWACCEL 0#define CONFIG_H264_VAAPI_HWACCEL 0#define CONFIG_MPEG2_VAAPI_HWACCEL 0#define CONFIG_MPEG4_VAAPI_HWACCEL 0#define CONFIG_VC1_DXVA2_HWACCEL 0#define CONFIG_VC1_VAAPI_HWACCEL 0#define CONFIG_WMV3_DXVA2_HWACCEL 0#define CONFIG_WMV3_VAAPI_HWACCEL 0#define CONFIG_AAC_PARSER 1#define CONFIG_AC3_PARSER 1#define CONFIG_CAVSVIDEO_PARSER 1#define CONFIG_DCA_PARSER 1#define CONFIG_DIRAC_PARSER 1#define CONFIG_DNXHD_PARSER 1#define CONFIG_DVBSUB_PARSER 1#define CONFIG_DVDSUB_PARSER 1#define CONFIG_H261_PARSER 1#define CONFIG_H263_PARSER 1#define CONFIG_H264_PARSER 1#define CONFIG_MJPEG_PARSER 1#define CONFIG_MLP_PARSER 1#define CONFIG_MPEG4VIDEO_PARSER 1#define CONFIG_MPEGAUDIO_PARSER 1#define CONFIG_MPEGVIDEO_PARSER 1#define CONFIG_PNM_PARSER 1#define CONFIG_VC1_PARSER 1#define CONFIG_VP3_PARSER 1#define CONFIG_AAC_ADTSTOASC_BSF 1#define CONFIG_DUMP_EXTRADATA_BSF 1#define CONFIG_H264_MP4TOANNEXB_BSF 1#define CONFIG_IMX_DUMP_HEADER_BSF 1#define CONFIG_MJPEGA_DUMP_HEADER_BSF 1#define CONFIG_MP3_HEADER_COMPRESS_BSF 1#define CONFIG_MP3_HEADER_DECOMPRESS_BSF 1#define CONFIG_MOV2TEXTSUB_BSF 1#define CONFIG_NOISE_BSF 1#define CONFIG_REMOVE_EXTRADATA_BSF 1#define CONFIG_TEXT2MOVSUB_BSF 1#define CONFIG_AAC_DEMUXER 1#define CONFIG_AC3_DEMUXER 1#define CONFIG_AEA_DEMUXER 1#define CONFIG_AIFF_DEMUXER 1#define CONFIG_AMR_DEMUXER 1#define CONFIG_ANM_DEMUXER 1#define CONFIG_APC_DEMUXER 1#define CONFIG_APE_DEMUXER 1#define CONFIG_ASF_DEMUXER 1#define CONFIG_ASS_DEMUXER 1#define CONFIG_AU_DEMUXER 1#define CONFIG_AVI_DEMUXER 1#define CONFIG_AVISYNTH_DEMUXER 0#define CONFIG_AVS_DEMUXER 1#define CONFIG_BETHSOFTVID_DEMUXER 1#define CONFIG_BFI_DEMUXER 1#define CONFIG_BINK_DEMUXER 1#define CONFIG_C93_DEMUXER 1#define CONFIG_CAF_DEMUXER 1#define CONFIG_CAVSVIDEO_DEMUXER 1#define CONFIG_CDG_DEMUXER 1#define CONFIG_DAUD_DEMUXER 1#define CONFIG_DIRAC_DEMUXER 1#define CONFIG_DNXHD_DEMUXER 1#define CONFIG_DSICIN_DEMUXER 1#define CONFIG_DTS_DEMUXER 1#define CONFIG_DV_DEMUXER 1#define CONFIG_DXA_DEMUXER 1#define CONFIG_EA_DEMUXER 1#define CONFIG_EA_CDATA_DEMUXER 1#define CONFIG_EAC3_DEMUXER 1#define CONFIG_FFM_DEMUXER 1#define CONFIG_FILMSTRIP_DEMUXER 1#define CONFIG_FLAC_DEMUXER 1#define CONFIG_FLIC_DEMUXER 1#define CONFIG_FLV_DEMUXER 1#define CONFIG_FOURXM_DEMUXER 1#define CONFIG_GSM_DEMUXER 1#define CONFIG_GXF_DEMUXER 1#define CONFIG_H261_DEMUXER 1#define CONFIG_H263_DEMUXER 1#define CONFIG_H264_DEMUXER 1#define CONFIG_IDCIN_DEMUXER 1#define CONFIG_IFF_DEMUXER 1#define CONFIG_IMAGE2_DEMUXER 1#define CONFIG_IMAGE2PIPE_DEMUXER 1#define CONFIG_INGENIENT_DEMUXER 1#define CONFIG_IPMOVIE_DEMUXER 1#define CONFIG_ISS_DEMUXER 1#define CONFIG_IV8_DEMUXER 1#define CONFIG_LMLM4_DEMUXER 1#define CONFIG_M4V_DEMUXER 1#define CONFIG_MATROSKA_DEMUXER 1#define CONFIG_MJPEG_DEMUXER 1#define CONFIG_MLP_DEMUXER 1#define CONFIG_MM_DEMUXER 1#define CONFIG_MMF_DEMUXER 1#define CONFIG_MOV_DEMUXER 1#define CONFIG_MP3_DEMUXER 1#define CONFIG_MPC_DEMUXER 1#define CONFIG_MPC8_DEMUXER 1#define CONFIG_MPEGPS_DEMUXER 1#define CONFIG_MPEGTS_DEMUXER 1#define CONFIG_MPEGTSRAW_DEMUXER 1#define CONFIG_MPEGVIDEO_DEMUXER 1#define CONFIG_MSNWC_TCP_DEMUXER 1#define CONFIG_MTV_DEMUXER 1#define CONFIG_MVI_DEMUXER 1#define CONFIG_MXF_DEMUXER 1#define CONFIG_NC_DEMUXER 1#define CONFIG_NSV_DEMUXER 1#define CONFIG_NUT_DEMUXER 1#define CONFIG_NUV_DEMUXER 1#define CONFIG_OGG_DEMUXER 1#define CONFIG_OMA_DEMUXER 1#define CONFIG_PCM_ALAW_DEMUXER 1#define CONFIG_PCM_MULAW_DEMUXER 1#define CONFIG_PCM_F64BE_DEMUXER 1#define CONFIG_PCM_F64LE_DEMUXER 1#define CONFIG_PCM_F32BE_DEMUXER 1#define CONFIG_PCM_F32LE_DEMUXER 1#define CONFIG_PCM_S32BE_DEMUXER 1#define CONFIG_PCM_S32LE_DEMUXER 1#define CONFIG_PCM_S24BE_DEMUXER 1#define CONFIG_PCM_S24LE_DEMUXER 1#define CONFIG_PCM_S16BE_DEMUXER 1#define CONFIG_PCM_S16LE_DEMUXER 1#define CONFIG_PCM_S8_DEMUXER 1#define CONFIG_PCM_U32BE_DEMUXER 1#define CONFIG_PCM_U32LE_DEMUXER 1#define CONFIG_PCM_U24BE_DEMUXER 1#define CONFIG_PCM_U24LE_DEMUXER 1#define CONFIG_PCM_U16BE_DEMUXER 1#define CONFIG_PCM_U16LE_DEMUXER 1#define CONFIG_PCM_U8_DEMUXER 1#define CONFIG_PVA_DEMUXER 1#define CONFIG_QCP_DEMUXER 1#define CONFIG_R3D_DEMUXER 1#define CONFIG_RAWVIDEO_DEMUXER 1#define CONFIG_RL2_DEMUXER 1#define CONFIG_RM_DEMUXER 1#define CONFIG_ROQ_DEMUXER 1#define CONFIG_RPL_DEMUXER 1#define CONFIG_RTSP_DEMUXER 0#define CONFIG_SDP_DEMUXER 0#define CONFIG_SEGAFILM_DEMUXER 1#define CONFIG_SHORTEN_DEMUXER 1#define CONFIG_SIFF_DEMUXER 1#define CONFIG_SMACKER_DEMUXER 1#define CONFIG_SOL_DEMUXER 1#define CONFIG_SOX_DEMUXER 1#define CONFIG_STR_DEMUXER 1#define CONFIG_SWF_DEMUXER 1#define CONFIG_THP_DEMUXER 1#define CONFIG_TIERTEXSEQ_DEMUXER 1#define CONFIG_TMV_DEMUXER 1#define CONFIG_TRUEHD_DEMUXER 1#define CONFIG_TTA_DEMUXER 1#define CONFIG_TXD_DEMUXER 1#define CONFIG_VC1_DEMUXER 1#define CONFIG_VC1T_DEMUXER 1#define CONFIG_VMD_DEMUXER 1#define CONFIG_VOC_DEMUXER 1#define CONFIG_VQF_DEMUXER 1#define CONFIG_W64_DEMUXER 1#define CONFIG_WAV_DEMUXER 1#define CONFIG_WC3_DEMUXER 1#define CONFIG_WSAUD_DEMUXER 1#define CONFIG_WSVQA_DEMUXER 1#define CONFIG_WV_DEMUXER 1#define CONFIG_XA_DEMUXER 1#define CONFIG_YOP_DEMUXER 1#define CONFIG_YUV4MPEGPIPE_DEMUXER 1#define CONFIG_LIBNUT_DEMUXER 0#define CONFIG_AC3_MUXER 0#define CONFIG_ADTS_MUXER 0#define CONFIG_AIFF_MUXER 0#define CONFIG_AMR_MUXER 0#define CONFIG_ASF_MUXER 0#define CONFIG_ASS_MUXER 0#define CONFIG_ASF_STREAM_MUXER 0#define CONFIG_AU_MUXER 0#define CONFIG_AVI_MUXER 0#define CONFIG_AVM2_MUXER 0#define CONFIG_CRC_MUXER 0#define CONFIG_DAUD_MUXER 0#define CONFIG_DIRAC_MUXER 0#define CONFIG_DNXHD_MUXER 0#define CONFIG_DTS_MUXER 0#define CONFIG_DV_MUXER 0#define CONFIG_EAC3_MUXER 0#define CONFIG_FFM_MUXER 0#define CONFIG_FILMSTRIP_MUXER 0#define CONFIG_FLAC_MUXER 0#define CONFIG_FLV_MUXER 0#define CONFIG_FRAMECRC_MUXER 0#define CONFIG_GIF_MUXER 0#define CONFIG_GXF_MUXER 0#define CONFIG_H261_MUXER 0#define CONFIG_H263_MUXER 0#define CONFIG_H264_MUXER 0#define CONFIG_IMAGE2_MUXER 0#define CONFIG_IMAGE2PIPE_MUXER 0#define CONFIG_IPOD_MUXER 0#define CONFIG_M4V_MUXER 0#define CONFIG_MATROSKA_MUXER 0#define CONFIG_MATROSKA_AUDIO_MUXER 0#define CONFIG_MJPEG_MUXER 0#define CONFIG_MLP_MUXER 0#define CONFIG_MMF_MUXER 0#define CONFIG_MOV_MUXER 0#define CONFIG_MP2_MUXER 0#define CONFIG_MP3_MUXER 0#define CONFIG_MP4_MUXER 0#define CONFIG_MPEG1SYSTEM_MUXER 0#define CONFIG_MPEG1VCD_MUXER 0#define CONFIG_MPEG1VIDEO_MUXER 0#define CONFIG_MPEG2DVD_MUXER 0#define CONFIG_MPEG2SVCD_MUXER 0#define CONFIG_MPEG2VIDEO_MUXER 0#define CONFIG_MPEG2VOB_MUXER 0#define CONFIG_MPEGTS_MUXER 0#define CONFIG_MPJPEG_MUXER 0#define CONFIG_MXF_MUXER 0#define CONFIG_MXF_D10_MUXER 0#define CONFIG_NULL_MUXER 0#define CONFIG_NUT_MUXER 0#define CONFIG_OGG_MUXER 0#define CONFIG_PCM_ALAW_MUXER 0#define CONFIG_PCM_MULAW_MUXER 0#define CONFIG_PCM_F64BE_MUXER 0#define CONFIG_PCM_F64LE_MUXER 0#define CONFIG_PCM_F32BE_MUXER 0#define CONFIG_PCM_F32LE_MUXER 0#define CONFIG_PCM_S32BE_MUXER 0#define CONFIG_PCM_S32LE_MUXER 0#define CONFIG_PCM_S24BE_MUXER 0#define CONFIG_PCM_S24LE_MUXER 0#define CONFIG_PCM_S16BE_MUXER 0#define CONFIG_PCM_S16LE_MUXER 0#define CONFIG_PCM_S8_MUXER 0#define CONFIG_PCM_U32BE_MUXER 0#define CONFIG_PCM_U32LE_MUXER 0#define CONFIG_PCM_U24BE_MUXER 0#define CONFIG_PCM_U24LE_MUXER 0#define CONFIG_PCM_U16BE_MUXER 0#define CONFIG_PCM_U16LE_MUXER 0#define CONFIG_PCM_U8_MUXER 0#define CONFIG_PSP_MUXER 0#define CONFIG_RAWVIDEO_MUXER 0#define CONFIG_RM_MUXER 0#define CONFIG_ROQ_MUXER 0#define CONFIG_RTP_MUXER 0#define CONFIG_RTSP_MUXER 0#define CONFIG_SOX_MUXER 0#define CONFIG_SPDIF_MUXER 0#define CONFIG_SWF_MUXER 0#define CONFIG_TG2_MUXER 0#define CONFIG_TGP_MUXER 0#define CONFIG_TRUEHD_MUXER 0#define CONFIG_VC1T_MUXER 0#define CONFIG_VOC_MUXER 0#define CONFIG_WAV_MUXER 0#define CONFIG_WEBM_MUXER 0#define CONFIG_YUV4MPEGPIPE_MUXER 0#define CONFIG_LIBNUT_MUXER 0#define CONFIG_ASPECT_FILTER 1#define CONFIG_CROP_FILTER 1#define CONFIG_FORMAT_FILTER 1#define CONFIG_NOFORMAT_FILTER 1#define CONFIG_NULL_FILTER 1#define CONFIG_PIXELASPECT_FILTER 1#define CONFIG_SCALE_FILTER 1#define CONFIG_SLICIFY_FILTER 1#define CONFIG_UNSHARP_FILTER 1#define CONFIG_VFLIP_FILTER 1#define CONFIG_NULLSRC_FILTER 1#define CONFIG_NULLSINK_FILTER 1#define CONFIG_FILE_PROTOCOL 1#define CONFIG_GOPHER_PROTOCOL 0#define CONFIG_HTTP_PROTOCOL 0#define CONFIG_PIPE_PROTOCOL 0#define CONFIG_RTMP_PROTOCOL 0#define CONFIG_RTMPT_PROTOCOL 0#define CONFIG_RTMPE_PROTOCOL 0#define CONFIG_RTMPTE_PROTOCOL 0#define CONFIG_RTMPS_PROTOCOL 0#define CONFIG_RTP_PROTOCOL 0#define CONFIG_TCP_PROTOCOL 0#define CONFIG_UDP_PROTOCOL 0#define CONFIG_CONCAT_PROTOCOL 0#define CONFIG_ALSA_INDEV 0#define CONFIG_AUDIO_BEOS_INDEV 0#define CONFIG_BKTR_INDEV 0#define CONFIG_DV1394_INDEV 0#define CONFIG_JACK_INDEV 0#define CONFIG_OSS_INDEV 0#define CONFIG_V4L2_INDEV 0#define CONFIG_V4L_INDEV 0#define CONFIG_VFWCAP_INDEV 0#define CONFIG_X11_GRAB_DEVICE_INDEV 0#define CONFIG_LIBDC1394_INDEV 0#define CONFIG_ALSA_OUTDEV 0#define CONFIG_AUDIO_BEOS_OUTDEV 0#define CONFIG_OSS_OUTDEV 0#endif /* FFMPEG_CONFIG_H */
编辑刚刚生成的config.h,找到这句(注意上边的内容是修改过的,仅供参考):
#define restrict restrictAndroid的GCC不支持restrict关键字,于是修改成下面这样
#define restrict编辑libavutil/libm.h,把其中的static方法都删除。
分别修改libavcodec、libavfilter、libavformat、libavutil、libpostproc和libswscale下的Makefile,把下面两句删除
include $(SUBDIR)../subdir.makinclude $(SUBDIR)../config.mak在ffmpeg下添加一个文件av.mk,内容如下
include $(LOCAL_PATH)/../config.makOBJS :=OBJS-yes :=MMX-OBJS-yes :=include $(LOCAL_PATH)/Makefile# collect objectsOBJS-$(HAVE_MMX) += $(MMX-OBJS-yes)OBJS += $(OBJS-yes)FFNAME := lib$(NAME)FFLIBS := $(foreach,NAME,$(FFLIBS),lib$(NAME))FFCFLAGS = -DHAVE_AV_CONFIG_H -Wno-sign-compare -Wno-switch -Wno-pointer-signFFCFLAGS += -DTARGET_CONFIG=\"config-$(TARGET_ARCH).h\"ALL_S_FILES := $(wildcard $(LOCAL_PATH)/$(TARGET_ARCH)/*.S)ALL_S_FILES := $(addprefix $(TARGET_ARCH)/, $(notdir $(ALL_S_FILES)))ifneq ($(ALL_S_FILES),)ALL_S_OBJS := $(patsubst %.S,%.o,$(ALL_S_FILES))C_OBJS := $(filter-out $(ALL_S_OBJS),$(OBJS))S_OBJS := $(filter $(ALL_S_OBJS),$(OBJS))elseC_OBJS := $(OBJS)S_OBJS :=endifC_FILES := $(patsubst %.o,%.c,$(C_OBJS))S_FILES := $(patsubst %.o,%.S,$(S_OBJS))FFFILES := $(sort $(S_FILES)) $(sort $(C_FILES))接下来要添加一系列的Android.mk,在jni根目录下的内容如下
include $(all-subdir-makefiles)
在ffmpeg目录下,Android.mk
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_STATIC_LIBRARIES := libavformat libavcodec libavutil libpostproc libswscaleLOCAL_MODULE := ffmpeginclude $(BUILD_SHARED_LIBRARY)include $(call all-makefiles-under,$(LOCAL_PATH))
libavformat/Android.mk
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)include $(LOCAL_PATH)/../av.mkLOCAL_SRC_FILES := $(FFFILES)LOCAL_C_INCLUDES := \ $(LOCAL_PATH) \ $(LOCAL_PATH)/..LOCAL_CFLAGS += $(FFCFLAGS)LOCAL_CFLAGS += -include "string.h" -Dipv6mr_interface=ipv6mr_ifindexLOCAL_LDLIBS := -lzLOCAL_STATIC_LIBRARIES := $(FFLIBS)LOCAL_MODULE := $(FFNAME)include $(BUILD_STATIC_LIBRARY)
libavcodec/Android.mk
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)include $(LOCAL_PATH)/../av.mkLOCAL_SRC_FILES := $(FFFILES)LOCAL_C_INCLUDES := \ $(LOCAL_PATH) \ $(LOCAL_PATH)/..LOCAL_CFLAGS += $(FFCFLAGS)LOCAL_LDLIBS := -lzLOCAL_STATIC_LIBRARIES := $(FFLIBS)LOCAL_MODULE := $(FFNAME)include $(BUILD_STATIC_LIBRARY)
libavfilter、libavutil、libpostproc和libswscale下的Android.mk内容如下
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)include $(LOCAL_PATH)/../av.mkLOCAL_SRC_FILES := $(FFFILES)LOCAL_C_INCLUDES := \ $(LOCAL_PATH) \ $(LOCAL_PATH)/..LOCAL_CFLAGS += $(FFCFLAGS)LOCAL_STATIC_LIBRARIES := $(FFLIBS)LOCAL_MODULE := $(FFNAME)include $(BUILD_STATIC_LIBRARY)
现在文件都准备好了,可以编译了。
如果你在Linux命令行下编译,方法是:在jni目录下执行ndk-build;或者在任何目录执行ndk-build NDK_PROJECT_PATH=$PATH{jni路径,注意是jni的父文件夹,ndk-build会自动寻找jni及jni下面的Android.mk文件}。
如果你是在Eclipse下编译,请参考10分钟搭建NDK的Android开发环境。
编译成功后生成的工程文件
编译过程:
Android NDK: WARNING: APP_PLATFORMandroid-19 is larger than android:minSdkVersion 8 in ./AndroidManifest.xml
Android NDK:WARNING:jni/ffmpeg/libavcodec/Android.mk:avcodec: LOCAL_LDLIBS is alwaysignored for static libraries
Android NDK:WARNING:jni/ffmpeg/libavformat/Android.mk:avformat: LOCAL_LDLIBS is alwaysignored for static libraries
[armeabi] Compile thumb : avformat <= 4xm.c
[armeabi] Compile thumb : avformat <= aea.c
[armeabi] Compile thumb : avformat <= aiffdec.c
[armeabi] Compile thumb : avformat <= allformats.c
[armeabi] Compile thumb : avformat <= amr.c
[armeabi] Compile thumb : avformat <= anm.c
[armeabi] Compile thumb : avformat <= apc.c
[armeabi] Compile thumb : avformat <= ape.c
[armeabi] Compile thumb : avformat <= apetag.c
[armeabi] Compile thumb : avformat <= asf.c
[armeabi] Compile thumb : avformat <= asfcrypt.c
[armeabi] Compile thumb : avformat <= asfdec.c
jni/ffmpeg/libavformat/asfdec.c: Infunction 'asf_read_header':
jni/ffmpeg/libavformat/asfdec.c:380:21:warning: 'AVPaletteControl' is deprecated (declared atjni/ffmpeg/libavformat/../libavcodec/avcodec.h:2808)[-Wdeprecated-declarations]
[armeabi] Compile thumb : avformat <= assdec.c
[armeabi] Compile thumb : avformat <= au.c
[armeabi] Compile thumb : avformat <= avi.c
[armeabi] Compile thumb : avformat <= avidec.c
jni/ffmpeg/libavformat/avidec.c: Infunction 'avi_read_header':
jni/ffmpeg/libavformat/avidec.c:523:25:warning: 'AVPaletteControl' is deprecated (declared at jni/ffmpeg/libavformat/../libavcodec/avcodec.h:2808)[-Wdeprecated-declarations]
[armeabi] Compile thumb : avformat <= avio.c
[armeabi] Compile thumb : avformat <= aviobuf.c
jni/ffmpeg/libavformat/aviobuf.c: Infunction 'url_fdopen':
jni/ffmpeg/libavformat/aviobuf.c:572:23:warning: passing argument 6 of 'init_put_byte' from incompatible pointer type[enabled by default]
jni/ffmpeg/libavformat/aviobuf.c:35:5:note: expected 'int (*)(void *, uint8_t *, int)' but argument is of type 'int(*)(struct URLContext *, unsigned char *, int)'
jni/ffmpeg/libavformat/aviobuf.c:572:23:warning: passing argument 7 of 'init_put_byte' from incompatible pointer type[enabled by default]
jni/ffmpeg/libavformat/aviobuf.c:35:5:note: expected 'int (*)(void *, uint8_t *, int)' but argument is of type 'int(*)(struct URLContext *, unsigned char *, int)'
jni/ffmpeg/libavformat/aviobuf.c:572:23:warning: passing argument 8 of 'init_put_byte' from incompatible pointer type[enabled by default]
jni/ffmpeg/libavformat/aviobuf.c:35:5:note: expected 'int64_t (*)(void *, int64_t, int)' but argument is of type 'int64_t (*)(struct URLContext *,int64_t, int)'
[armeabi] Compile thumb : avformat <= avlanguage.c
[armeabi] Compile thumb : avformat <= avs.c
[armeabi] Compile thumb : avformat <= bethsoftvid.c
[armeabi] Compile thumb : avformat <= bfi.c
[armeabi] Compile thumb : avformat <= bink.c
[armeabi] Compile thumb : avformat <= c93.c
[armeabi] Compile thumb : avformat <= caf.c
[armeabi] Compile thumb : avformat <= cafdec.c
[armeabi] Compile thumb : avformat <= cdg.c
[armeabi] Compile thumb : avformat <= cutils.c
[armeabi] Compile thumb : avformat <= daud.c
[armeabi] Compile thumb : avformat <= dsicin.c
[armeabi] Compile thumb : avformat <= dv.c
[armeabi] Compile thumb : avformat <= dxa.c
[armeabi] Compile thumb : avformat <= eacdata.c
[armeabi] Compile thumb : avformat <= electronicarts.c
[armeabi] Compile thumb : avformat <= ffmdec.c
[armeabi] Compile thumb : avformat <= file.c
[armeabi] Compile thumb : avformat <= filmstripdec.c
[armeabi] Compile thumb : avformat <= flacdec.c
[armeabi] Compile thumb : avformat <= flic.c
[armeabi] Compile thumb : avformat <= flvdec.c
[armeabi] Compile thumb : avformat <= gxf.c
[armeabi] Compile thumb : avformat <= id3v1.c
[armeabi] Compile thumb : avformat <= id3v2.c
[armeabi] Compile thumb : avformat <= idcin.c
jni/ffmpeg/libavformat/idcin.c:90:5:warning: 'AVPaletteControl' is deprecated (declared atjni/ffmpeg/libavformat/../libavcodec/avcodec.h:2808)[-Wdeprecated-declarations]
[armeabi] Compile thumb : avformat <= idroq.c
[armeabi] Compile thumb : avformat <= iff.c
[armeabi] Compile thumb : avformat <= img2.c
[armeabi] Compile thumb : avformat <= ipmovie.c
jni/ffmpeg/libavformat/ipmovie.c:119:5:warning: 'AVPaletteControl' is deprecated (declared atjni/ffmpeg/libavformat/../libavcodec/avcodec.h:2808) [-Wdeprecated-declarations]
[armeabi] Compile thumb : avformat <= isom.c
[armeabi] Compile thumb : avformat <= iss.c
[armeabi] Compile thumb : avformat <= iv8.c
[armeabi] Compile thumb : avformat <= lmlm4.c
[armeabi] Compile thumb : avformat <= matroska.c
[armeabi] Compile thumb : avformat <= matroskadec.c
[armeabi] Compile thumb : avformat <= metadata.c
jni/ffmpeg/libavformat/metadata.c: Infunction 'av_metadata_set2':
jni/ffmpeg/libavformat/metadata.c:72:37:warning: assignment discards 'const' qualifier from pointer target type[enabled by default]
jni/ffmpeg/libavformat/metadata.c:76:37:warning: assignment discards 'const' qualifier from pointer target type[enabled by default]
[armeabi] Compile thumb : avformat <= metadata_compat.c
[armeabi] Compile thumb : avformat <= mm.c
[armeabi] Compile thumb : avformat <= mmf.c
[armeabi] Compile thumb : avformat <= mov.c
[armeabi] Compile thumb : avformat <= mp3.c
[armeabi] Compile thumb : avformat <= mpc.c
[armeabi] Compile thumb : avformat <= mpc8.c
[armeabi] Compile thumb : avformat <= mpeg.c
[armeabi] Compile thumb : avformat <= mpegts.c
[armeabi] Compile thumb : avformat <= msnwc_tcp.c
[armeabi] Compile thumb : avformat <= mtv.c
[armeabi] Compile thumb : avformat <= mvi.c
[armeabi] Compile thumb : avformat <= mxf.c
[armeabi] Compile thumb : avformat <= mxfdec.c
[armeabi] Compile thumb : avformat <= ncdec.c
[armeabi] Compile thumb : avformat <= nsvdec.c
[armeabi] Compile thumb : avformat <= nut.c
[armeabi] Compile thumb : avformat <= nutdec.c
jni/ffmpeg/libavformat/nutdec.c: Infunction 'get_packetheader':
jni/ffmpeg/libavformat/nutdec.c:98:5:warning: passing argument 2 of 'ff_crc04C11DB7_update' from incompatiblepointer type [enabled by default]
jni/ffmpeg/libavformat/avio.h:511:15:note: expected 'uint8_t const *' but argument is of type 'uint64_t *'
jni/ffmpeg/libavformat/nutdec.c: Infunction 'decode_main_header':
jni/ffmpeg/libavformat/nutdec.c:276:13:warning: passing argument 2 of 'get_buffer' discards 'const' qualifier frompointer target type [enabled by default]
jni/ffmpeg/libavformat/avio.h:381:5:note: expected 'unsigned char *' but argument is of type 'uint8_t const *'
[armeabi] Compile thumb : avformat <= nuv.c
[armeabi] Compile thumb : avformat <= oggdec.c
[armeabi] Compile thumb : avformat <= oggparsedirac.c
[armeabi] Compile thumb : avformat <= oggparseflac.c
[armeabi] Compile thumb : avformat <= oggparseogm.c
[armeabi] Compile thumb : avformat <= oggparseskeleton.c
[armeabi] Compile thumb : avformat <= oggparsespeex.c
[armeabi] Compile thumb : avformat <= oggparsetheora.c
[armeabi] Compile thumb : avformat <= oggparsevorbis.c
[armeabi] Compile thumb : avformat <= oma.c
[armeabi] Compile thumb : avformat <= options.c
[armeabi] Compile thumb : avformat <= os_support.c
[armeabi] Compile thumb : avformat <= psxstr.c
[armeabi] Compile thumb : avformat <= pva.c
[armeabi] Compile thumb : avformat <= qcp.c
[armeabi] Compile thumb : avformat <= r3d.c
[armeabi] Compile thumb : avformat <= raw.c
[armeabi] Compile thumb : avformat <= riff.c
[armeabi] Compile thumb : avformat <= rl2.c
[armeabi] Compile thumb : avformat <= rm.c
[armeabi] Compile thumb : avformat <= rmdec.c
[armeabi] Compile thumb : avformat <= rpl.c
[armeabi] Compile thumb : avformat <= sdp.c
[armeabi] Compile thumb : avformat <= seek.c
[armeabi] Compile thumb : avformat <= segafilm.c
[armeabi] Compile thumb : avformat <= sierravmd.c
[armeabi] Compile thumb : avformat <= siff.c
[armeabi] Compile thumb : avformat <= smacker.c
[armeabi] Compile thumb : avformat <= sol.c
[armeabi] Compile thumb : avformat <= soxdec.c
[armeabi] Compile thumb : avformat <= swfdec.c
[armeabi] Compile thumb : avformat <= thp.c
[armeabi] Compile thumb : avformat <= tiertexseq.c
[armeabi] Compile thumb : avformat <= tmv.c
[armeabi] Compile thumb : avformat <= tta.c
[armeabi] Compile thumb : avformat <= txd.c
[armeabi] Compile thumb : avformat <= utils.c
[armeabi] Compile thumb : avformat <= vc1test.c
[armeabi] Compile thumb : avformat <= voc.c
[armeabi] Compile thumb : avformat <= vocdec.c
[armeabi] Compile thumb : avformat <= vorbiscomment.c
[armeabi] Compile thumb : avformat <= vqf.c
[armeabi] Compile thumb : avformat <= wav.c
[armeabi] Compile thumb : avformat <= wc3movie.c
jni/ffmpeg/libavformat/wc3movie.c:71:5:warning: 'AVPaletteControl' is deprecated (declared atjni/ffmpeg/libavformat/../libavcodec/avcodec.h:2808)[-Wdeprecated-declarations]
[armeabi] Compile thumb : avformat <= westwood.c
[armeabi] Compile thumb : avformat <= wv.c
[armeabi] Compile thumb : avformat <= xa.c
[armeabi] Compile thumb : avformat <= yop.c
[armeabi] Compile thumb : avformat <= yuv4mpeg.c
[armeabi] StaticLibrary : libavformat.a
[armeabi] Compile thumb : avcodec <= 4xm.c
[armeabi] Compile thumb : avcodec <= 8bps.c
[armeabi] Compile thumb : avcodec <= 8svx.c
[armeabi] Compile thumb : avcodec <= aac.c
[armeabi] Compile thumb : avcodec <= aac_ac3_parser.c
[armeabi] Compile thumb : avcodec <= aac_adtstoasc_bsf.c
[armeabi] Compile thumb : avcodec <= aac_parser.c
[armeabi] Compile thumb : avcodec <= aacsbr.c
jni/ffmpeg/libavcodec/aacsbr.c: Infunction 'ff_sbr_apply':
jni/ffmpeg/libavcodec/aacsbr.c:1736:9:warning: passing argument 4 of 'sbr_lf_gen' from incompatible pointer type[enabled by default]
jni/ffmpeg/libavcodec/aacsbr.c:1342:12:note: expected 'float const (*)[32][32][2]' but argument is of type 'float(*)[32][32][2]'
jni/ffmpeg/libavcodec/aacsbr.c:1738:13:warning: passing argument 3 of 'sbr_hf_inverse_filter' from incompatiblepointer type [enabled by default]
jni/ffmpeg/libavcodec/aacsbr.c:1266:13:note: expected 'float const (*)[40][2]' but argument is of type 'float(*)[40][2]'
jni/ffmpeg/libavcodec/aacsbr.c:1742:24:warning: passing argument 4 of 'sbr_hf_gen' from incompatible pointer type[enabled by default]
jni/ffmpeg/libavcodec/aacsbr.c:1365:12:note: expected 'float const (*)[40][2]' but argument is of type 'float(*)[40][2]'
jni/ffmpeg/libavcodec/aacsbr.c:1742:24:warning: passing argument 5 of 'sbr_hf_gen' from incompatible pointer type[enabled by default]
jni/ffmpeg/libavcodec/aacsbr.c:1365:12:note: expected 'float const (*)[2]' but argument is of type 'float (*)[2]'
jni/ffmpeg/libavcodec/aacsbr.c:1742:24:warning: passing argument 6 of 'sbr_hf_gen' from incompatible pointer type[enabled by default]
jni/ffmpeg/libavcodec/aacsbr.c:1365:12:note: expected 'float const (*)[2]' but argument is of type 'float (*)[2]'
jni/ffmpeg/libavcodec/aacsbr.c:1749:29:warning: passing argument 2 of 'sbr_hf_assemble' from incompatible pointer type[enabled by default]
jni/ffmpeg/libavcodec/aacsbr.c:1613:13:note: expected 'float const (*)[40][2]' but argument is of type 'float(*)[40][2]'
jni/ffmpeg/libavcodec/aacsbr.c:1753:9:warning: passing argument 3 of 'sbr_x_gen' from incompatible pointer type[enabled by default]
jni/ffmpeg/libavcodec/aacsbr.c:1417:12:note: expected 'float const (*)[40][2]' but argument is of type 'float(*)[40][2]'
jni/ffmpeg/libavcodec/aacsbr.c:1753:9:warning: passing argument 4 of 'sbr_x_gen' from incompatible pointer type[enabled by default]
jni/ffmpeg/libavcodec/aacsbr.c:1417:12:note: expected 'float const (*)[38][64][2]' but argument is of type 'float(*)[38][64][2]'
[armeabi] Compile thumb : avcodec <= aactab.c
[armeabi] Compile thumb : avcodec <= aandcttab.c
[armeabi] Compile thumb : avcodec <= aasc.c
[armeabi] Compile thumb : avcodec <= ac3.c
[armeabi] Compile thumb : avcodec <= ac3_parser.c
[armeabi] Compile thumb : avcodec <= ac3dec.c
[armeabi] Compile thumb : avcodec <= ac3dec_data.c
[armeabi] Compile thumb : avcodec <= ac3tab.c
[armeabi] Compile thumb : avcodec <= acelp_filters.c
[armeabi] Compile thumb : avcodec <= acelp_pitch_delay.c
jni/ffmpeg/libavcodec/acelp_pitch_delay.c:In function 'ff_acelp_decode_gain_code':
jni/ffmpeg/libavcodec/acelp_pitch_delay.c:118:17:warning: passing argument 1 of 'dsp->scalarproduct_int16' discards 'const'qualifier from pointer target type [enabled by default]
jni/ffmpeg/libavcodec/acelp_pitch_delay.c:118:17:note: expected 'int16_t *' but argument is of type 'int16_t const *'
jni/ffmpeg/libavcodec/acelp_pitch_delay.c:118:17:warning: passing argument 2 of 'dsp->scalarproduct_int16' discards 'const'qualifier from pointer target type [enabled by default]
jni/ffmpeg/libavcodec/acelp_pitch_delay.c:118:17:note: expected 'int16_t *' but argument is of type 'int16_t const *'
[armeabi] Compile thumb : avcodec <= acelp_vectors.c
[armeabi] Compile thumb : avcodec <= adpcm.c
[armeabi] Compile thumb : avcodec <= adxdec.c
[armeabi] Compile thumb : avcodec <= alac.c
[armeabi] Compile thumb : avcodec <= allcodecs.c
[armeabi] Compile thumb : avcodec <= alsdec.c
[armeabi] Compile thumb : avcodec <= amrnbdec.c
[armeabi] Compile thumb : avcodec <= anm.c
[armeabi] Compile thumb : avcodec <= apedec.c
[armeabi] Compile thumb : avcodec <= asv1.c
[armeabi] Compile thumb : avcodec <= atrac.c
[armeabi] Compile thumb : avcodec <= atrac1.c
[armeabi] Compile thumb : avcodec <= atrac3.c
[armeabi] Compile thumb : avcodec <= audioconvert.c
[armeabi] Compile thumb : avcodec <= aura.c
[armeabi] Compile thumb : avcodec <= avfft.c
[armeabi] Compile thumb : avcodec <= avpacket.c
jni/ffmpeg/libavcodec/avpacket.c: Infunction 'av_dup_packet':
jni/ffmpeg/libavcodec/avpacket.c:76:5:warning: 'av_destruct_packet_nofree' is deprecated (declared at jni/ffmpeg/libavcodec/avpacket.c:25)[-Wdeprecated-declarations]
[armeabi] Compile thumb : avcodec <= avs.c
[armeabi] Compile thumb : avcodec <= bethsoftvideo.c
[armeabi] Compile thumb : avcodec <= bfi.c
[armeabi] Compile thumb : avcodec <= bgmc.c
[armeabi] Compile thumb : avcodec <= bink.c
[armeabi] Compile thumb : avcodec <= binkaudio.c
[armeabi] Compile thumb : avcodec <= binkidct.c
[armeabi] Compile thumb : avcodec <= bitstream.c
[armeabi] Compile thumb : avcodec <= bitstream_filter.c
[armeabi] Compile thumb : avcodec <= bmp.c
[armeabi] Compile thumb : avcodec <= c93.c
[armeabi] Compile thumb : avcodec <= cabac.c
[armeabi] Compile thumb : avcodec <= cavs.c
[armeabi] Compile thumb : avcodec <= cavs_parser.c
[armeabi] Compile thumb : avcodec <= cavsdec.c
[armeabi] Compile thumb : avcodec <= cavsdsp.c
[armeabi] Compile thumb : avcodec <= cdgraphics.c
[armeabi] Compile thumb : avcodec <= celp_filters.c
[armeabi] Compile thumb : avcodec <= celp_math.c
[armeabi] Compile thumb : avcodec <= cga_data.c
[armeabi] Compile thumb : avcodec <= cinepak.c
[armeabi] Compile thumb : avcodec <= cljr.c
[armeabi] Compile thumb : avcodec <= cook.c
[armeabi] Compile thumb : avcodec <= cscd.c
[armeabi] Compile thumb : avcodec <= cyuv.c
[armeabi] Compile thumb : avcodec <= dca.c
[armeabi] Compile thumb : avcodec <= dca_parser.c
[armeabi] Compile thumb : avcodec <= dcadsp.c
[armeabi] Compile thumb : avcodec <= dct.c
[armeabi] Compile thumb : avcodec <= dirac.c
[armeabi] Compile thumb : avcodec <= dirac_parser.c
[armeabi] Compile thumb : avcodec <= dnxhd_parser.c
[armeabi] Compile thumb : avcodec <= dnxhddata.c
[armeabi] Compile thumb : avcodec <= dnxhddec.c
[armeabi] Compile thumb : avcodec <= dpcm.c
[armeabi] Compile thumb : avcodec <= dpx.c
[armeabi] Compile thumb : avcodec <= dsicinav.c
[armeabi] Compile thumb : avcodec <= dsputil.c
[armeabi] Compile thumb : avcodec <= dump_extradata_bsf.c
[armeabi] Compile thumb : avcodec <= dv.c
jni/ffmpeg/libavcodec/dv.c: Infunction 'dvvideo_decode_frame':
jni/ffmpeg/libavcodec/dv.c:1107:12:warning: assignment discards 'const' qualifier from pointer target type[enabled by default]
[armeabi] Compile thumb : avcodec <= dvbsub_parser.c
[armeabi] Compile thumb : avcodec <= dvbsubdec.c
[armeabi] Compile thumb : avcodec <= dvdata.c
[armeabi] Compile thumb : avcodec <= dvdsub_parser.c
[armeabi] Compile thumb : avcodec <= dvdsubdec.c
[armeabi] Compile thumb : avcodec <= dwt.c
[armeabi] Compile thumb : avcodec <= eac3dec.c
[armeabi] Compile thumb : avcodec <= eac3dec_data.c
[armeabi] Compile thumb : avcodec <= eacmv.c
[armeabi] Compile thumb : avcodec <= eaidct.c
[armeabi] Compile thumb : avcodec <= eamad.c
[armeabi] Compile thumb : avcodec <= eatgq.c
[armeabi] Compile thumb : avcodec <= eatgv.c
[armeabi] Compile thumb : avcodec <= eatqi.c
[armeabi] Compile thumb : avcodec <= error_resilience.c
[armeabi] Compile thumb : avcodec <= escape124.c
[armeabi] Compile thumb : avcodec <= eval.c
[armeabi] Compile thumb : avcodec <= faanidct.c
[armeabi] Compile thumb : avcodec <= faxcompr.c
[armeabi] Compile thumb : avcodec <= fft.c
[armeabi] Compile thumb : avcodec <= ffv1.c
[armeabi] Compile thumb : avcodec <= flac.c
[armeabi] Compile thumb : avcodec <= flacdata.c
[armeabi] Compile thumb : avcodec <= flacdec.c
[armeabi] Compile thumb : avcodec <= flicvideo.c
[armeabi] Compile thumb : avcodec <= flvdec.c
[armeabi] Compile thumb : avcodec <= fraps.c
[armeabi] Compile thumb : avcodec <= frwu.c
[armeabi] Compile thumb : avcodec <= g726.c
[armeabi] Compile thumb : avcodec <= gifdec.c
[armeabi] Compile thumb : avcodec <= golomb.c
[armeabi] Compile thumb : avcodec <= h261.c
[armeabi] Compile thumb : avcodec <= h261_parser.c
[armeabi] Compile thumb : avcodec <= h261dec.c
[armeabi] Compile thumb : avcodec <= h263.c
[armeabi] Compile thumb : avcodec <= h263_parser.c
[armeabi] Compile thumb : avcodec <= h263dec.c
[armeabi] Compile thumb : avcodec <= h264.c
jni/ffmpeg/libavcodec/h264.c: Infunction 'fill_filter_caches':
jni/ffmpeg/libavcodec/h264.c:2309:38:warning: initialization from incompatible pointer type [enabled by default]
jni/ffmpeg/libavcodec/h264.c:2386:38:warning: initialization from incompatible pointer type [enabled by default]
jni/ffmpeg/libavcodec/h264.c:2401:42:warning: initialization from incompatible pointer type [enabled by default]
[armeabi] Compile thumb : avcodec <= h264_cabac.c
[armeabi] Compile thumb : avcodec <= h264_cavlc.c
[armeabi] Compile thumb : avcodec <= h264_direct.c
jni/ffmpeg/libavcodec/h264_direct.c:In function 'pred_spatial_direct_motion':
jni/ffmpeg/libavcodec/h264_direct.c:263:12:warning: assignment from incompatible pointer type [enabled by default]
jni/ffmpeg/libavcodec/h264_direct.c:264:12:warning: assignment from incompatible pointer type [enabled by default]
jni/ffmpeg/libavcodec/h264_direct.c:In function 'pred_temp_direct_motion':
jni/ffmpeg/libavcodec/h264_direct.c:443:12:warning: assignment from incompatible pointer type [enabled by default]
jni/ffmpeg/libavcodec/h264_direct.c:444:12:warning: assignment from incompatible pointer type [enabled by default]
[armeabi] Compile thumb : avcodec <= h264_loopfilter.c
[armeabi] Compile thumb : avcodec <= h264_mp4toannexb_bsf.c
[armeabi] Compile thumb : avcodec <= h264_parser.c
[armeabi] Compile thumb : avcodec <= h264_ps.c
[armeabi] Compile thumb : avcodec <= h264_refs.c
[armeabi] Compile thumb : avcodec <= h264_sei.c
[armeabi] Compile thumb : avcodec <= h264dsp.c
[armeabi] Compile thumb : avcodec <= h264idct.c
[armeabi] Compile thumb : avcodec <= h264pred.c
[armeabi] Compile thumb : avcodec <= huffman.c
[armeabi] Compile thumb : avcodec <= huffyuv.c
[armeabi] Compile thumb : avcodec <= idcinvideo.c
jni/ffmpeg/libavcodec/idcinvideo.c: Infunction 'idcin_decode_frame':
jni/ffmpeg/libavcodec/idcinvideo.c:216:5:warning: 'AVPaletteControl' is deprecated (declared atjni/ffmpeg/libavcodec/avcodec.h:2808) [-Wdeprecated-declarations]
[armeabi] Compile thumb : avcodec <= iff.c
[armeabi] Compile thumb : avcodec <= imc.c
[armeabi] Compile thumb : avcodec <= imgconvert.c
[armeabi] Compile thumb : avcodec <= imx_dump_header_bsf.c
[armeabi] Compile thumb : avcodec <= indeo2.c
[armeabi] Compile thumb : avcodec <= indeo3.c
[armeabi] Compile thumb : avcodec <= indeo5.c
[armeabi] Compile thumb : avcodec <= intelh263dec.c
[armeabi] Compile thumb : avcodec <= interplayvideo.c
jni/ffmpeg/libavcodec/interplayvideo.c:In function 'ipvideo_decode_frame':
jni/ffmpeg/libavcodec/interplayvideo.c:1045:5:warning: 'AVPaletteControl' is deprecated (declared atjni/ffmpeg/libavcodec/avcodec.h:2808) [-Wdeprecated-declarations]
[armeabi] Compile thumb : avcodec <= intrax8.c
[armeabi] Compile thumb : avcodec <= intrax8dsp.c
[armeabi] Compile thumb : avcodec <= ituh263dec.c
[armeabi] Compile thumb : avcodec <= ivi_common.c
[armeabi] Compile thumb : avcodec <= ivi_dsp.c
[armeabi] Compile thumb : avcodec <= jpegls.c
[armeabi] Compile thumb : avcodec <= jpeglsdec.c
[armeabi] Compile thumb : avcodec <= jrevdct.c
[armeabi] Compile thumb : avcodec <= kgv1dec.c
[armeabi] Compile thumb : avcodec <= kmvc.c
[armeabi] Compile thumb : avcodec <= lcldec.c
[armeabi] Compile thumb : avcodec <= loco.c
[armeabi] Compile thumb : avcodec <= lsp.c
[armeabi] Compile thumb : avcodec <= lzw.c
[armeabi] Compile thumb : avcodec <= mace.c
[armeabi] Compile thumb : avcodec <= mdct.c
[armeabi] Compile thumb : avcodec <= mdec.c
[armeabi] Compile thumb : avcodec <= mimic.c
[armeabi] Compile thumb : avcodec <= mjpeg.c
[armeabi] Compile thumb : avcodec <= mjpeg_parser.c
[armeabi] Compile thumb : avcodec <= mjpega_dump_header_bsf.c
[armeabi] Compile thumb : avcodec <= mjpegbdec.c
[armeabi] Compile thumb : avcodec <= mjpegdec.c
[armeabi] Compile thumb : avcodec <= mlp.c
[armeabi] Compile thumb : avcodec <= mlp_parser.c
[armeabi] Compile thumb : avcodec <= mlpdec.c
[armeabi] Compile thumb : avcodec <= mlpdsp.c
[armeabi] Compile thumb : avcodec <= mmvideo.c
[armeabi] Compile thumb : avcodec <= motionpixels.c
[armeabi] Compile thumb : avcodec <= movsub_bsf.c
[armeabi] Compile thumb : avcodec <= mp3_header_compress_bsf.c
[armeabi] Compile thumb : avcodec <= mp3_header_decompress_bsf.c
[armeabi] Compile thumb : avcodec <= mpc.c
[armeabi] Compile thumb : avcodec <= mpc7.c
[armeabi] Compile thumb : avcodec <= mpc8.c
[armeabi] Compile thumb : avcodec <= mpeg12.c
[armeabi] Compile thumb : avcodec <= mpeg12data.c
[armeabi] Compile thumb : avcodec <= mpeg4audio.c
[armeabi] Compile thumb : avcodec <= mpeg4video.c
[armeabi] Compile thumb : avcodec <= mpeg4video_parser.c
[armeabi] Compile thumb : avcodec <= mpeg4videodec.c
[armeabi] Compile thumb : avcodec <= mpegaudio.c
[armeabi] Compile thumb : avcodec <= mpegaudio_parser.c
[armeabi] Compile thumb : avcodec <= mpegaudiodata.c
[armeabi] Compile thumb : avcodec <= mpegaudiodec.c
[armeabi] Compile thumb : avcodec <= mpegaudiodecheader.c
[armeabi] Compile thumb : avcodec <= mpegvideo.c
[armeabi] Compile thumb : avcodec <= mpegvideo_parser.c
[armeabi] Compile thumb : avcodec <= msmpeg4.c
[armeabi] Compile thumb : avcodec <= msmpeg4data.c
[armeabi] Compile thumb : avcodec <= msrle.c
[armeabi] Compile thumb : avcodec <= msrledec.c
[armeabi] Compile thumb : avcodec <= msvideo1.c
[armeabi] Compile thumb : avcodec <= nellymoser.c
[armeabi] Compile thumb : avcodec <= nellymoserdec.c
[armeabi] Compile thumb : avcodec <= noise_bsf.c
[armeabi] Compile thumb : avcodec <= nuv.c
jni/ffmpeg/libavcodec/nuv.c: Infunction 'copy_frame':
jni/ffmpeg/libavcodec/nuv.c:74:5:warning: passing argument 2 of 'avpicture_fill' discards 'const' qualifier frompointer target type [enabled by default]
jni/ffmpeg/libavcodec/avcodec.h:3038:5:note: expected 'uint8_t *' but argument is of type 'uint8_t const *'
[armeabi] Compile thumb : avcodec <= opt.c
[armeabi] Compile thumb : avcodec <= options.c
[armeabi] Compile thumb : avcodec <= parser.c
[armeabi] Compile thumb : avcodec <= pcm-mpeg.c
[armeabi] Compile thumb : avcodec <= pcm.c
[armeabi] Compile thumb : avcodec <= pcx.c
[armeabi] Compile thumb : avcodec <= pgssubdec.c
[armeabi] Compile thumb : avcodec <= pnm.c
[armeabi] Compile thumb : avcodec <= pnm_parser.c
[armeabi] Compile thumb : avcodec <= pnmdec.c
jni/ffmpeg/libavcodec/pnmdec.c: Infunction 'pnm_decode_frame':
jni/ffmpeg/libavcodec/pnmdec.c:41:25:warning: assignment discards 'const' qualifier from pointer target type[enabled by default]
jni/ffmpeg/libavcodec/pnmdec.c:42:25:warning: assignment discards 'const' qualifier from pointer target type[enabled by default]
[armeabi] Compile thumb : avcodec <= ptx.c
[armeabi] Compile thumb : avcodec <= qcelpdec.c
[armeabi] Compile thumb : avcodec <= qdm2.c
[armeabi] Compile thumb : avcodec <= qdrw.c
[armeabi] Compile thumb : avcodec <= qpeg.c
[armeabi] Compile thumb : avcodec <= qtrle.c
[armeabi] Compile thumb : avcodec <= r210dec.c
[armeabi] Compile thumb : avcodec <= ra144.c
[armeabi] Compile thumb : avcodec <= ra288.c
[armeabi] Compile thumb : avcodec <= rangecoder.c
jni/ffmpeg/libavcodec/rangecoder.c: Infunction 'ff_init_range_decoder':
jni/ffmpeg/libavcodec/rangecoder.c:56:5:warning: passing argument 1 of 'bytestream_get_be16' from incompatible pointertype [enabled by default]
jni/ffmpeg/libavcodec/bytestream.h:51:1:note: expected 'uint8_t const **' but argument is of type 'uint8_t **'
[armeabi] Compile thumb : avcodec <= raw.c
[armeabi] Compile thumb : avcodec <= rawdec.c
jni/ffmpeg/libavcodec/rawdec.c: Infunction 'raw_decode':
jni/ffmpeg/libavcodec/rawdec.c:147:5:warning: passing argument 2 of 'avpicture_fill' discards 'const' qualifier frompointer target type [enabled by default]
jni/ffmpeg/libavcodec/avcodec.h:3038:5:note: expected 'uint8_t *' but argument is of type 'uint8_t const *'
[armeabi] Compile thumb : avcodec <= rdft.c
[armeabi] Compile thumb : avcodec <= remove_extradata_bsf.c
[armeabi] Compile thumb : avcodec <= resample.c
[armeabi] Compile thumb : avcodec <= resample2.c
[armeabi] Compile thumb : avcodec <= rl2.c
[armeabi] Compile thumb : avcodec <= roqvideo.c
[armeabi] Compile thumb : avcodec <= roqvideodec.c
[armeabi] Compile thumb : avcodec <= rpza.c
[armeabi] Compile thumb : avcodec <= rtjpeg.c
[armeabi] Compile thumb : avcodec <= rv10.c
[armeabi] Compile thumb : avcodec <= rv30.c
[armeabi] Compile thumb : avcodec <= rv30dsp.c
[armeabi] Compile thumb : avcodec <= rv34.c
jni/ffmpeg/libavcodec/rv34.c: Infunction 'rv34_set_deblock_coef':
jni/ffmpeg/libavcodec/rv34.c:1145:32:warning: initialization from incompatible pointer type [enabled by default]
[armeabi] Compile thumb : avcodec <= rv40.c
[armeabi] Compile thumb : avcodec <= rv40dsp.c
[armeabi] Compile thumb : avcodec <= s3tc.c
[armeabi] Compile thumb : avcodec <= sgidec.c
[armeabi] Compile thumb : avcodec <= shorten.c
[armeabi] Compile thumb : avcodec <= simple_idct.c
[armeabi] Compile thumb : avcodec <= sipr.c
[armeabi] Compile thumb : avcodec <= sipr16k.c
[armeabi] Compile thumb : avcodec <= smacker.c
[armeabi] Compile thumb : avcodec <= smc.c
[armeabi] Compile thumb : avcodec <= snow.c
[armeabi] Compile thumb : avcodec <= sonic.c
[armeabi] Compile thumb : avcodec <= sp5xdec.c
[armeabi] Compile thumb : avcodec <= sunrast.c
[armeabi] Compile thumb : avcodec <= svq1.c
[armeabi] Compile thumb : avcodec <= svq1dec.c
[armeabi] Compile thumb : avcodec <= svq3.c
[armeabi] Compile thumb : avcodec <= synth_filter.c
[armeabi] Compile thumb : avcodec <= targa.c
[armeabi] Compile thumb : avcodec <= tiertexseqv.c
[armeabi] Compile thumb : avcodec <= tiff.c
[armeabi] Compile thumb : avcodec <= tmv.c
[armeabi] Compile thumb : avcodec <= truemotion1.c
[armeabi] Compile thumb : avcodec <= truemotion2.c
[armeabi] Compile thumb : avcodec <= truespeech.c
[armeabi] Compile thumb : avcodec <= tta.c
[armeabi] Compile thumb : avcodec <= twinvq.c
[armeabi] Compile thumb : avcodec <= txd.c
[armeabi] Compile thumb : avcodec <= ulti.c
[armeabi] Compile thumb : avcodec <= utils.c
jni/ffmpeg/libavcodec/utils.c:463:1:warning: 'force_align_arg_pointer' attribute directive ignored [-Wattributes]
jni/ffmpeg/libavcodec/utils.c:538:1:warning: 'force_align_arg_pointer' attribute directive ignored [-Wattributes]
jni/ffmpeg/libavcodec/utils.c: Infunction 'avcodec_encode_audio':
jni/ffmpeg/libavcodec/utils.c:544:9:warning: passing argument 4 of 'avctx->codec->encode' discards 'const'qualifier from pointer target type [enabled by default]
jni/ffmpeg/libavcodec/utils.c:544:9:note: expected 'void *' but argument is of type 'short int const *'
jni/ffmpeg/libavcodec/utils.c: At toplevel:
jni/ffmpeg/libavcodec/utils.c:553:1:warning: 'force_align_arg_pointer' attribute directive ignored [-Wattributes]
jni/ffmpeg/libavcodec/utils.c: Infunction 'avcodec_encode_video':
jni/ffmpeg/libavcodec/utils.c:561:9:warning: passing argument 4 of 'avctx->codec->encode' discards 'const'qualifier from pointer target type [enabled by default]
jni/ffmpeg/libavcodec/utils.c:561:9:note: expected 'void *' but argument is of type 'struct AVFrame const *'
jni/ffmpeg/libavcodec/utils.c: Infunction 'avcodec_encode_subtitle':
jni/ffmpeg/libavcodec/utils.c:580:5:warning: passing argument 4 of 'avctx->codec->encode' discards 'const'qualifier from pointer target type [enabled by default]
jni/ffmpeg/libavcodec/utils.c:580:5:note: expected 'void *' but argument is of type 'struct AVSubtitle const *'
jni/ffmpeg/libavcodec/utils.c: At toplevel:
jni/ffmpeg/libavcodec/utils.c:589:1:warning: 'force_align_arg_pointer' attribute directive ignored [-Wattributes]
jni/ffmpeg/libavcodec/utils.c: Infunction 'avcodec_decode_video':
jni/ffmpeg/libavcodec/utils.c:592:16:warning: assignment discards 'const' qualifier from pointer target type[enabled by default]
jni/ffmpeg/libavcodec/utils.c: At toplevel:
jni/ffmpeg/libavcodec/utils.c:604:1:warning: 'force_align_arg_pointer' attribute directive ignored [-Wattributes]
jni/ffmpeg/libavcodec/utils.c:628:1:warning: 'force_align_arg_pointer' attribute directive ignored [-Wattributes]
jni/ffmpeg/libavcodec/utils.c: Infunction 'avcodec_decode_audio2':
jni/ffmpeg/libavcodec/utils.c:631:16: warning:assignment discards 'const' qualifier from pointer target type [enabled bydefault]
jni/ffmpeg/libavcodec/utils.c: At toplevel:
jni/ffmpeg/libavcodec/utils.c:641:1:warning: 'force_align_arg_pointer' attribute directive ignored [-Wattributes]
jni/ffmpeg/libavcodec/utils.c: Infunction 'avcodec_decode_subtitle':
jni/ffmpeg/libavcodec/utils.c:672:16:warning: assignment discards 'const' qualifier from pointer target type[enabled by default]
jni/ffmpeg/libavcodec/utils.c: Infunction 'av_parse_video_frame_size':
jni/ffmpeg/libavcodec/utils.c:1179:11:warning: assignment discards 'const' qualifier from pointer target type[enabled by default]
[armeabi] Compile thumb : avcodec <= v210dec.c
[armeabi] Compile thumb : avcodec <= v210x.c
[armeabi] Compile thumb : avcodec <= vb.c
[armeabi] Compile thumb : avcodec <= vc1.c
[armeabi] Compile thumb : avcodec <= vc1_parser.c
[armeabi] Compile thumb : avcodec <= vc1data.c
[armeabi] Compile thumb : avcodec <= vc1dec.c
[armeabi] Compile thumb : avcodec <= vc1dsp.c
[armeabi] Compile thumb : avcodec <= vcr1.c
[armeabi] Compile thumb : avcodec <= vmdav.c
[armeabi] Compile thumb : avcodec <= vmnc.c
[armeabi] Compile thumb : avcodec <= vorbis.c
[armeabi] Compile thumb : avcodec <= vorbis_data.c
[armeabi] Compile thumb : avcodec <= vorbis_dec.c
[armeabi] Compile thumb : avcodec <= vp3.c
[armeabi] Compile thumb : avcodec <= vp3_parser.c
[armeabi] Compile thumb : avcodec <= vp3dsp.c
[armeabi] Compile thumb : avcodec <= vp5.c
[armeabi] Compile thumb : avcodec <= vp56.c
[armeabi] Compile thumb : avcodec <= vp56data.c
[armeabi] Compile thumb : avcodec <= vp56dsp.c
[armeabi] Compile thumb : avcodec <= vp6.c
[armeabi] Compile thumb : avcodec <= vp6dsp.c
[armeabi] Compile thumb : avcodec <= vqavideo.c
[armeabi] Compile thumb : avcodec <= wavpack.c
[armeabi] Compile thumb : avcodec <= wma.c
[armeabi] Compile thumb : avcodec <= wmadec.c
[armeabi] Compile thumb : avcodec <= wmaprodec.c
[armeabi] Compile thumb : avcodec <= wmavoice.c
jni/ffmpeg/libavcodec/wmavoice.c: Infunction 'synth_block_fcb_acb':
jni/ffmpeg/libavcodec/wmavoice.c:1346:31:warning: passing argument 1 of 'av_memcpy_backptr' from incompatible pointertype [enabled by default]
jni/ffmpeg/libavcodec/../libavutil/lzo.h:64:6:note: expected 'uint8_t *' but argument is of type 'float *'
jni/ffmpeg/libavcodec/wmavoice.c: Infunction 'wmavoice_decode_packet':
jni/ffmpeg/libavcodec/wmavoice.c:1905:16:warning: format '%lu' expects argument of type 'long unsigned int', butargument 5 has type 'unsigned int' [-Wformat]
[armeabi] Compile thumb : avcodec <= wmv2.c
[armeabi] Compile thumb : avcodec <= wmv2dec.c
[armeabi] Compile thumb : avcodec <= wnv1.c
[armeabi] Compile thumb : avcodec <= ws-snd1.c
[armeabi] Compile thumb : avcodec <= xan.c
jni/ffmpeg/libavcodec/xan.c: Infunction 'xan_decode_frame':
jni/ffmpeg/libavcodec/xan.c:364:5:warning: 'AVPaletteControl' is deprecated (declared atjni/ffmpeg/libavcodec/avcodec.h:2808) [-Wdeprecated-declarations]
[armeabi] Compile thumb : avcodec <= xiph.c
[armeabi] Compile thumb : avcodec <= xl.c
[armeabi] Compile thumb : avcodec <= xsubdec.c
[armeabi] Compile thumb : avcodec <= yop.c
[armeabi] StaticLibrary : libavcodec.a
[armeabi] Compile thumb : avutil <= adler32.c
[armeabi] Compile thumb : avutil <= aes.c
jni/ffmpeg/libavutil/aes.c: Infunction 'subshift':
jni/ffmpeg/libavutil/aes.c:56:24:warning: initialization from incompatible pointer type [enabled by default]
jni/ffmpeg/libavutil/aes.c:57:24:warning: initialization from incompatible pointer type [enabled by default]
jni/ffmpeg/libavutil/aes.c: Infunction 'crypt':
jni/ffmpeg/libavutil/aes.c:84:9:warning: passing argument 2 of 'mix' from incompatible pointer type [enabled bydefault]
jni/ffmpeg/libavutil/aes.c:73:20:note: expected 'uint32_t (*)[256]' but argument is of type 'uint32_t const *'
jni/ffmpeg/libavutil/aes.c:85:9:warning: passing argument 1 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t *' but argument is of type 'uint8_t (*)[4]'
jni/ffmpeg/libavutil/aes.c:85:9:warning: passing argument 2 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t const *' but argument is of type 'uint8_t (*)[4]'
jni/ffmpeg/libavutil/aes.c:85:9:warning: passing argument 3 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t const *' but argument is of type 'uint8_t (*)[4]'
jni/ffmpeg/libavutil/aes.c:87:5:warning: passing argument 1 of 'subshift' from incompatible pointer type[enabled by default]
jni/ffmpeg/libavutil/aes.c:55:13:note: expected 'uint8_t (*)[16]' but argument is of type 'uint8_t *'
jni/ffmpeg/libavutil/aes.c: Infunction 'av_aes_crypt':
jni/ffmpeg/libavutil/aes.c:92:9:warning: passing argument 1 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t *' but argument is of type 'uint8_t (*)[4]'
jni/ffmpeg/libavutil/aes.c:92:9:warning: passing argument 2 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t const *' but argument is of type 'uint8_t const *'
jni/ffmpeg/libavutil/aes.c:92:9:warning: passing argument 3 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t const *' but argument is of type 'uint8_t (*)[4]'
jni/ffmpeg/libavutil/aes.c:94:13:warning: passing argument 4 of 'crypt' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:80:20:note: expected 'uint32_t const *' but argument is of type 'uint32_t (*)[256]'
jni/ffmpeg/libavutil/aes.c:96:17:warning: passing argument 1 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t *' but argument is of type 'uint8_t (*)[4]'
jni/ffmpeg/libavutil/aes.c:96:17:warning: passing argument 2 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t const *' but argument is of type 'uint8_t (*)[4]'
jni/ffmpeg/libavutil/aes.c:96:17:warning: passing argument 3 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t const *' but argument is of type 'uint8_t *'
jni/ffmpeg/libavutil/aes.c:99:13:warning: passing argument 1 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t *' but argument is of type 'uint8_t *'
jni/ffmpeg/libavutil/aes.c:99:13:warning: passing argument 2 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t const *' but argument is of type 'uint8_t (*)[4]'
jni/ffmpeg/libavutil/aes.c:99:13:warning: passing argument 3 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t const *' but argument is of type 'uint8_t (*)[4]'
jni/ffmpeg/libavutil/aes.c:101:13:warning: passing argument 1 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t *' but argument is of type 'uint8_t (*)[4]'
jni/ffmpeg/libavutil/aes.c:101:13:warning: passing argument 2 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t const *' but argument is of type 'uint8_t (*)[4]'
jni/ffmpeg/libavutil/aes.c:101:13:warning: passing argument 3 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t const *' but argument is of type 'uint8_t *'
jni/ffmpeg/libavutil/aes.c:102:13:warning: passing argument 4 of 'crypt' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:80:20:note: expected 'uint32_t const *' but argument is of type 'uint32_t (*)[256]'
jni/ffmpeg/libavutil/aes.c:103:13:warning: passing argument 1 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t *' but argument is of type 'uint8_t *'
jni/ffmpeg/libavutil/aes.c:103:13:warning: passing argument 2 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t const *' but argument is of type 'uint8_t (*)[4]'
jni/ffmpeg/libavutil/aes.c:103:13:warning: passing argument 3 of 'addkey' from incompatible pointer type [enabledby default]
jni/ffmpeg/libavutil/aes.c:50:20:note: expected 'uint64_t const *' but argument is of type 'uint8_t (*)[4]'
jni/ffmpeg/libavutil/aes.c: Infunction 'av_aes_init':
jni/ffmpeg/libavutil/aes.c:149:9:warning: passing argument 1 of 'init_multbl2' from incompatible pointer type[enabled by default]
jni/ffmpeg/libavutil/aes.c:111:13:note: expected 'uint8_t *' but argument is of type 'uint32_t *'
jni/ffmpeg/libavutil/aes.c:150:9:warning: passing argument 1 of 'init_multbl2' from incompatible pointer type[enabled by default]
jni/ffmpeg/libavutil/aes.c:111:13:note: expected 'uint8_t *' but argument is of type 'uint32_t *'
jni/ffmpeg/libavutil/aes.c:180:13:warning: passing argument 1 of 'subshift' from incompatible pointer type[enabled by default]
jni/ffmpeg/libavutil/aes.c:55:13:note: expected 'uint8_t (*)[16]' but argument is of type 'uint8_t *'
jni/ffmpeg/libavutil/aes.c:181:13:warning: passing argument 1 of 'mix' from incompatible pointer type [enabled bydefault]
jni/ffmpeg/libavutil/aes.c:73:20:note: expected 'uint8_t (*)[4][4]' but argument is of type 'uint8_t (*)[16]'
[armeabi] Compile thumb : avutil <= avstring.c
jni/ffmpeg/libavutil/avstring.c: Infunction 'av_stristr':
jni/ffmpeg/libavutil/avstring.c:54:9:warning: return discards 'const' qualifier from pointer target type [enabled bydefault]
jni/ffmpeg/libavutil/avstring.c:58:13:warning: return discards 'const' qualifier from pointer target type [enabled bydefault]
[armeabi] Compile thumb : avutil <= base64.c
[armeabi] Compile thumb : avutil <= crc.c
[armeabi] Compile thumb : avutil <= des.c
[armeabi] Compile thumb : avutil <= error.c
[armeabi] Compile thumb : avutil <= fifo.c
[armeabi] Compile thumb : avutil <= intfloat_readwrite.c
[armeabi] Compile thumb : avutil <= lfg.c
[armeabi] Compile thumb : avutil <= lls.c
[armeabi] Compile thumb : avutil <= log.c
[armeabi] Compile thumb : avutil <= lzo.c
[armeabi] Compile thumb : avutil <= mathematics.c
[armeabi] Compile thumb : avutil <= md5.c
[armeabi] Compile thumb : avutil <= mem.c
[armeabi] Compile thumb : avutil <= pixdesc.c
[armeabi] Compile thumb : avutil <= random_seed.c
[armeabi] Compile thumb : avutil <= rational.c
[armeabi] Compile thumb : avutil <= rc4.c
[armeabi] Compile thumb : avutil <= sha.c
[armeabi] Compile thumb : avutil <= tree.c
[armeabi] Compile thumb : avutil <= utils.c
[armeabi] StaticLibrary : libavutil.a
[armeabi] Compile thumb : postproc <= postprocess.c
[armeabi] StaticLibrary : libpostproc.a
[armeabi] Compile thumb : swscale <= options.c
[armeabi] Compile thumb : swscale <= rgb2rgb.c
[armeabi] Compile thumb : swscale <= swscale.c
In file included fromjni/ffmpeg/libswscale/swscale.c:1186:0:
jni/ffmpeg/libswscale/swscale_template.c:In function 'sws_init_swScale_C':
jni/ffmpeg/libswscale/swscale_template.c:2965:44:warning: assignment from incompatible pointer type [enabled by default]
jni/ffmpeg/libswscale/swscale_template.c:2980:44:warning: assignment from incompatible pointer type [enabled by default]
jni/ffmpeg/libswscale/swscale_template.c:3025:40:warning: assignment from incompatible pointer type [enabled by default]
[armeabi] Compile thumb : swscale <= utils.c
[armeabi] Compile thumb : swscale <= yuv2rgb.c
jni/ffmpeg/libswscale/yuv2rgb.c: Infunction 'ff_yuv2rgb_c_init_tables':
jni/ffmpeg/libswscale/yuv2rgb.c:754:9:warning: passing argument 4 of 'fill_table' from incompatible pointer type[enabled by default]
jni/ffmpeg/libswscale/yuv2rgb.c:598:13:note: expected 'uint8_t *' but argument is of type 'uint16_t *'
jni/ffmpeg/libswscale/yuv2rgb.c:755:9:warning: passing argument 4 of 'fill_table' from incompatible pointer type[enabled by default]
jni/ffmpeg/libswscale/yuv2rgb.c:598:13:note: expected 'uint8_t *' but argument is of type 'uint16_t *'
jni/ffmpeg/libswscale/yuv2rgb.c:756:9:warning: passing argument 4 of 'fill_table' from incompatible pointer type[enabled by default]
jni/ffmpeg/libswscale/yuv2rgb.c:598:13:note: expected 'uint8_t *' but argument is of type 'uint16_t *'
jni/ffmpeg/libswscale/yuv2rgb.c:777:9:warning: passing argument 4 of 'fill_table' from incompatible pointer type[enabled by default]
jni/ffmpeg/libswscale/yuv2rgb.c:598:13:note: expected 'uint8_t *' but argument is of type 'uint16_t *'
jni/ffmpeg/libswscale/yuv2rgb.c:778:9:warning: passing argument 4 of 'fill_table' from incompatible pointer type[enabled by default]
jni/ffmpeg/libswscale/yuv2rgb.c:598:13:note: expected 'uint8_t *' but argument is of type 'uint16_t *'
jni/ffmpeg/libswscale/yuv2rgb.c:779:9:warning: passing argument 4 of 'fill_table' from incompatible pointer type[enabled by default]
jni/ffmpeg/libswscale/yuv2rgb.c:598:13:note: expected 'uint8_t *' but argument is of type 'uint16_t *'
jni/ffmpeg/libswscale/yuv2rgb.c:814:9:warning: passing argument 4 of 'fill_table' from incompatible pointer type[enabled by default]
jni/ffmpeg/libswscale/yuv2rgb.c:598:13:note: expected 'uint8_t *' but argument is of type 'uint32_t *'
jni/ffmpeg/libswscale/yuv2rgb.c:815:9:warning: passing argument 4 of 'fill_table' from incompatible pointer type[enabled by default]
jni/ffmpeg/libswscale/yuv2rgb.c:598:13:note: expected 'uint8_t *' but argument is of type 'uint32_t *'
jni/ffmpeg/libswscale/yuv2rgb.c:816:9:warning: passing argument 4 of 'fill_table' from incompatible pointer type[enabled by default]
jni/ffmpeg/libswscale/yuv2rgb.c:598:13:note: expected 'uint8_t *' but argument is of type 'uint32_t *'
[armeabi] StaticLibrary : libswscale.a
[armeabi] SharedLibrary : libffmpeg.so
[armeabi] Install : libffmpeg.so =>libs/armeabi/libffmpeg.so
Android NDK: WARNING: APP_PLATFORMandroid-19 is larger than android:minSdkVersion 8 in ./AndroidManifest.xml
Android NDK:WARNING:jni/ffmpeg/libavcodec/Android.mk:avcodec: LOCAL_LDLIBS is alwaysignored for static libraries
Android NDK:WARNING:jni/ffmpeg/libavformat/Android.mk:avformat: LOCAL_LDLIBS is alwaysignored for static libraries
[armeabi] Install : libffmpeg.so => libs/armeabi/libffmpeg.so
以上是我特意保留下来的编译全过程,供有兴趣者研究。
2.可能出现的错误及解决
2.1执行$ ./config.sh出错,提示“bad interpreter: No such file or directory”
解决:
执行命令时有时会出现bad interpreter: No such file or directory错误,
一般是因为Linux无法识别出Windows的DOS格式,此时只需将文件格式转换成unix的即可,方法如下:
1、编辑出错文件
vi filename
2、查看该格式(报错文件格式是DOS)
:set ff
3、修改格式
:set ff=unix
4、保存退出
:wq!
2.2执行 ndk-build出错,提示“libavcodec/../av.mk:1: *** missing separator. Stop.”
解决:
$符号前面必须加一个空格。举个例子:
出错文件:
LOCAL_PATH := $(call my-dir)include$(CLEAR_VARS)LOCAL_MODULE := helloLOCAL_SRC_FILES := hello.cinclude$(BUILD_SHARED_LIBRARY)
改正错误后:
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE := helloLOCAL_SRC_FILES := hello.cinclude $(BUILD_SHARED_LIBRARY)