利用ffmpeg和SDL实现一个跨android版本的音视频播放器
来源:互联网 发布:学生证磁条 淘宝 编辑:程序博客网 时间:2024/05/22 01:26
http://helloandroid.iteye.com/blog/1753355
利用ffmpeg和SDL实现一个跨android版本的音视频播放器
- 博客分类:
- 多媒体
ffmpeg android多媒体 sdl 视频jni
1:从http://www.libsdl.org/tmp/下载SDL for android 版本(我下载的是 SDL-1.3.tar.gz )
2:从https://github.com/havlenapetr/FFMpeg下载 havlenapetr 的ffmpeg for android版本。
3:把你下载的SDL for android版本解压到本地目录,解压到本地.
4:解压后的根目录下面有一个android-project工程,在jni目录下面新建一个SDL目录,把根目录下面的src目录,include目录和Android.mk拷贝到新建里的SDL目录下面
5:把ffmpeg for android 工程下jni目录的libffmpeg拷贝到android-project的jni目录下
6:http://dranger.com/ffmpeg/下载tutorial08代码并把文件放在jni的src目录下
8:编写tutorial08的mk文件
9:SDLActivity中load so
10:改写nativeInit方法
11:进入到android-project项目根目录,ndk-build 耐心等待一会就可以编译出两个库libSDL.so和libmain.so
运行你的android-project项目播放你的视频吧.
下面是我播放视频的截图
2:从https://github.com/havlenapetr/FFMpeg下载 havlenapetr 的ffmpeg for android版本。
3:把你下载的SDL for android版本解压到本地目录,解压到本地.
4:解压后的根目录下面有一个android-project工程,在jni目录下面新建一个SDL目录,把根目录下面的src目录,include目录和Android.mk拷贝到新建里的SDL目录下面
5:把ffmpeg for android 工程下jni目录的libffmpeg拷贝到android-project的jni目录下
6:http://dranger.com/ffmpeg/下载tutorial08代码并把文件放在jni的src目录下
8:编写tutorial08的mk文件
- LOCAL_PATH := $(call my-dir)
- include $(CLEAR_VARS)
- LOCAL_MODULE := main
- SDL_PATH := ../SDL
- LOCAL_C_INCLUDES += $(LOCAL_PATH)/$(SDL_PATH)/include \
- $(LOCAL_PATH)/../libffmpeg \
- # Add your application source files here...
- LOCAL_SRC_FILES := $(SDL_PATH)/src/main/android/SDL_android_main.cpp \
- tutorial08.c
- LOCAL_CFLAGS += -DGL_GLEXT_PROTOTYPES
- LOCAL_SHARED_LIBRARIES := SDL
- LOCAL_STATIC_LIBRARIES := libavformat libavcodec libavutil libpostproc libswscale
- LOCAL_LDLIBS := -ldl -lGLESv2 -llog
- include $(BUILD_SHARED_LIBRARY)
9:SDLActivity中load so
- // Load the .so
- static {
- System.loadLibrary("SDL");
- //System.loadLibrary("SDL_image");
- //System.loadLibrary("SDL_mixer");
- //System.loadLibrary("SDL_ttf");
- System.loadLibrary("main");
- }
10:改写nativeInit方法
- // Runs SDL_main()
- String avPath = Environment.getExternalStorageDirectory()+File.separator+"DancingQueen.mp4";
- SDLActivity.nativeInit(avPath);
- //Log.v("SDL", "SDL thread terminated");
11:进入到android-project项目根目录,ndk-build 耐心等待一会就可以编译出两个库libSDL.so和libmain.so
运行你的android-project项目播放你的视频吧.
下面是我播放视频的截图
- 利用ffmpeg和SDL实现一个跨android版本的音视频播放器
- 利用ffmpeg和SDL实现一个跨android版本的音视频播放器
- 利用ffmpeg和SDL实现一个跨android版本的音视频播放器
- 利用ffmpeg和SDL实现一个跨android版本的音视频播放器
- 利用ffmpeg和SDL实现一个跨android版本的音视频播放器
- 利用ffmpeg和SDL实现一个跨android版本的音视频播放器
- 利用ffmpeg和SDL实现一个跨android版本的音视频播放器
- 利用ffmpeg和SDL实现一个跨android版本的音视频播放器
- 利用ffmpeg和SDL实现一个跨android版本的音视频播放器
- 基于FFMPEG和SDL的音视频播放器
- ffmpeg和SDL实现的视频播放程序
- 基于FFMPEG和SDL实现视频播放器
- 如何基于FFMPEG和SDL写一个少于1000行代码的视频播放器
- 如何基于FFMPEG和SDL写一个少于1000行代码的视频播放器
- 如何基于FFMPEG和SDL写一个少于1000行代码的视频播放器
- 如何基于FFMPEG和SDL写一个少于1000行代码的视频播放器
- 如何基于FFMPEG和SDL写一个少于1000行代码的视频播放器
- 如何基于FFMPEG和SDL写一个少于1000行代码的视频播放器
- virtual 函数与纯virtual函数
- 解析客户端脚本、服务器端脚本
- Spring线程池
- iPhone开发——通知机制
- 数锐科技新网站上线
- 利用ffmpeg和SDL实现一个跨android版本的音视频播放器
- Linq表连接大全(INNER JOIN、LEFT OUTER JOIN、RIGHT OUTER JOIN、FULL OUTER JOIN、CROSS JOIN)
- android 页面定时跳转
- 尔雅通识题库系统,尔雅答案
- USB热插拔机制实现
- iis6 fastcgi配置文件
- Oracle adf af:table can not scroll page
- MFC菜单
- 一步一步学android控件(之十六)—— CheckBox