利用ffmpeg和SDL实现一个跨android版本的音视频播放器
程序员文章站
2022-05-20 18:54:52
...
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项目播放你的视频吧.
下面是我播放视频的截图
上一篇: 全麦粉的功效和食用禁忌都有哪些呢?全麦面粉真的好吗?
下一篇: MySQL------数据库系统概述