1.在生成头文件以后,在Android工程目录下新建一个jni目录,把ffmpeg源码拷入jni目录,然后在jni目录编写一个C文件,其中需要申明头文件,如#include <ffmpeg/libavcodec/avcodec.h>,其他的依次类推。在C文件中可以调用ffmpeg的各种函数。
2.还是在jni目录中,编写Android.mk文件,格式如下(除了注释的三行根据自己需要修改,其他的都照抄,不用改)
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
PATH_TO_FFMPEG_SOURCE:=$(LOCAL_PATH)/ffmpeg
LOCAL_C_INCLUDES += $(PATH_TO_FFMPEG_SOURCE)
LOCAL_LDLIBS := -lffmpeg //需要调用的动态库
LOCAL_MODULE := mediaplayer //要编译出的动态库名
LOCAL_SRC_FILES := mediaplayer.c //要编译的C文件
include $(BUILD_SHARED_LIBRARY)
3.退回Android工程目录下,输入ndk-build,,开始编译。如未出错,则编译成功,在Android工程目录下自动生成libs目录,里面是编号的so库,注意要把libffmpeg.so库一起放到这个目录下。

注意:把ffmpeg源码全部放到jni目录下,因为在自己写的C文件里面要调用相应的头文件。



更多相关文章

  1. 一款常用的 Squid 日志分析工具
  2. GitHub 标星 8K+!一款开源替代 ls 的工具你值得拥有!
  3. RHEL 6 下 DHCP+TFTP+FTP+PXE+Kickstart 实现无人值守安装
  4. Linux 环境下实战 Rsync 备份工具及配置 rsync+inotify 实时同步
  5. AssetManager读取assets下多张图片资源输出到ImageView动画
  6. android 文件管理器的源码实现
  7. Android内存监测工具DDMS->Heap,内存分析工具->MAT
  8. Android平台基于Pull方式对XML文件解析及写入
  9. Android(安卓)使用【AIDL】调用外部服务

随机推荐

  1. Android(安卓)的提权 (root) 原理是什么?
  2. Android(安卓)Bundle类
  3. Android中两种设置全屏的方法
  4. 获取手机安装的全部应用的示例教程
  5. android NDK 开发环境配置
  6. Android(安卓)providers 解析之telephony
  7. Linux x86 编译 Android(安卓)遭遇 gnu/s
  8. Android(安卓)declare-styleable:自定义控
  9. 基于Apache mina 的android 客户端tcp长
  10. :activity状态的保存和保持