Android.mk:如何包含ffmpeg和Opencv

时间:2013-01-28 09:31:17

标签: android opencv ffmpeg

这是我的项目情况:我使用this tutorial在Windows中编译了ffmpeg,并导入了我的android项目(在jni文件夹下)生成的ffmpeg文件夹(包含在libffmpeg.so文件中)。 在我的项目中,我有一个jni_part.cpp,我插入了我的jni函数来操作opencv。 在我的Android.mk中,我使用下面的代码导入opencv并编译jni_part.cpp

include $(CLEAR_VARS)
include ../../sdk/native/jni/OpenCV.mk
LOCAL_MODULE    := mixed_sample
LOCAL_SRC_FILES := jni_part.cpp
LOCAL_LDLIBS +=  -llog -ldl 
LOCAL_SHARED_LIBRARY := ffmpeg-prebuilt
include $(BUILD_SHARED_LIBRARY)

但我应该用什么代码导入ffmpeg呢?我试着使用这段代码:

include $(CLEAR_VARS)
LOCAL_MODULE := ffmpeg-prebuilt
LOCAL_SRC_FILES := ffmpeg-0.8/android/armv7-a/libffmpeg.so
LOCAL_EXPORT_C_INCLUDES := ffmpeg-0.8/android/armv7-a/include/
LOCAL_EXPORT_LDLIBS := ffmpeg-0.8/android/armv7-a/libffmpeg.so
LOCAL_PRELINK_MODULE := true
include $(PREBUILT_SHARED_LIBRARY)

但是如果从我的jni_part.cpp代码中我尝试包含一些ffmpeg文件/库"#include <libavutil/avstring.h>"我收到此错误:

**** Build of configuration Default for project OpenCV Tutorial 4 - Mix Java+Native OpenCV ****

C:\android-ndk-r8c\ndk-build.cmd 
Prebuilt       : libffmpeg.so <= jni/ffmpeg-0.8/android/armv7-a/
Install        : libffmpeg.so => libs/armeabi-v7a/libffmpeg.so
"Compile++ thumb : mixed_sample <= jni_part.cpp
jni/jni_part.cpp:24:32: fatal error: libavutil/avstring.h: No such file or directory
compilation terminated.
make: *** [obj/local/armeabi-v7a/objs/mixed_sample/jni_part.o] Error 1

**** Build Finished ****

有人可以帮我吗?我需要这样做包括ffmpeg编解码器,希望使用函数cvCaptureFromAVi ... 提前致谢

0 个答案:

没有答案