cocos2dx跨平台直播实例-ffmpeg-android篇
来源:互联网 发布:软件项目保密措施 编辑:程序博客网 时间:2024/06/06 07:28
一、环境
windows10(mac的虚拟机)
cocos2dx-13.1
android(adt-bundle-window-86_64-20140702)
ffmpeg-3.0
ndk(android-ndk-r10c)
好了,其他的比如jdk什么的就不说了。
二、项目配置
大家想要在android上运行cocos2dx的项目要先配置好cococs2dx的android环境。这个有传送门。
哦,还有,我的环境是在eclipse上配置的(不好意思),没用过androidstudio,不好意思,不过大家可以看eclipse,懂得eclipse和androidstudio的就可以根据eclipse配置自己的androidstudio了。
下面的配置说明是根据大家配置好了cocos2dx运行的环境之后说的,cocos2dx的配置我就不再啰嗦了。
现在我们的cocos2dx是用的我的上一篇cocos2dx跨平台直播实例-ffmpeg-ios篇写过的项目。
好了,把项目Import进eclipse里,现在大家配置好了cocos2dx的环境,运行一下,肯定是报错的,因为我们之前写的LiveVideo需要ffmpeg库,而我们上一篇中配置的ffmpeg库的环境只是ios或者mac项目的,android里面并没有这样的环境!!
所以,接下来我们要配置ffmpeg在cococs2dx-android的项目上的环境。
1.ffmpeg在android用的库的编译
传送门。这篇文章里的编译环境是在mac下的,linux下也可以,所以windows的同学还得建个linux或者mac的虚拟机才行。。。。
2.ffmpeg库在andorid上的配置
ffmpeg编译好之后,把include和lib文件夹复制到android项目的jni下面。
如图:
之后,
修改Android.mk文件
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE:= libavcodecLOCAL_SRC_FILES:= lib/libavcodec-57.soLOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/includeinclude $(PREBUILT_SHARED_LIBRARY) include $(CLEAR_VARS)LOCAL_MODULE:= libavformatLOCAL_SRC_FILES:= lib/libavformat-57.soLOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/includeinclude $(PREBUILT_SHARED_LIBRARY) include $(CLEAR_VARS)LOCAL_MODULE:= libswscaleLOCAL_SRC_FILES:= lib/libswscale-4.soLOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/includeinclude $(PREBUILT_SHARED_LIBRARY) include $(CLEAR_VARS)LOCAL_MODULE:= libavutilLOCAL_SRC_FILES:= lib/libavutil-55.soLOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/includeinclude $(PREBUILT_SHARED_LIBRARY) include $(CLEAR_VARS)LOCAL_MODULE:= libavfilterLOCAL_SRC_FILES:= lib/libavfilter-6.soLOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/includeinclude $(PREBUILT_SHARED_LIBRARY) include $(CLEAR_VARS)LOCAL_MODULE:= libswresampleLOCAL_SRC_FILES:= lib/libswresample-2.soLOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/includeinclude $(PREBUILT_SHARED_LIBRARY)include $(CLEAR_VARS)$(call import-add-path,$(LOCAL_PATH)/../../cocos2d)$(call import-add-path,$(LOCAL_PATH)/../../cocos2d/external)$(call import-add-path,$(LOCAL_PATH)/../../cocos2d/cocos)$(call import-add-path,$(LOCAL_PATH)/../../cocos2d/cocos/audio/include)LOCAL_MODULE := MyGame_sharedLOCAL_MODULE_FILENAME := libMyGameLOCAL_SRC_FILES := hellocpp/main.cpp \ ../../Classes/LiveVideo.cpp \ ../../Classes/AppDelegate.cpp \ ../../Classes/HelloWorldScene.cppLOCAL_C_INCLUDES := $(LOCAL_PATH)/../../ClassesLOCAL_C_INCLUDES += $(LOCAL_PATH)/includeLOCAL_SHARED_LIBRARIES:=libavcodec libavfilter libavformat libavutil libswscale libswresample# _COCOS_HEADER_ANDROID_BEGIN# _COCOS_HEADER_ANDROID_ENDLOCAL_STATIC_LIBRARIES := cocos2dx_static# _COCOS_LIB_ANDROID_BEGIN# _COCOS_LIB_ANDROID_ENDinclude $(BUILD_SHARED_LIBRARY)$(call import-module,.)# _COCOS_LIB_IMPORT_ANDROID_BEGIN# _COCOS_LIB_IMPORT_ANDROID_END
用上面的内容替换掉Android.mk里的内容。
然后,Application.mk文件:
加上这句
编译Project-Clean。
完成,等待编译结束。。。。。。。
最后,如果大家配置的时候出现问题可以留言或者下载项目https://github.com/zhu12345618/ffmeg_android_test
还有一个,就是iod和android都可以运行的项目https://github.com/zhu12345618/ffmeg_android_test
- cocos2dx跨平台直播实例-ffmpeg-android篇
- cocos2dx跨平台直播实例-ffmpeg-ios篇
- 跨平台——ffmpeg移植android、cocos2dx
- Cocos2dx--Cocos2dx与Android平台的跨平台调用
- cocos2dx移植android平台
- cocos2dx移植android平台
- cocos2dx移植android平台
- cocos2dx移植android平台
- FFMPEG跨平台iOS&Android高级教程
- ffmpeg android 平台移植
- Android平台移植FFmpeg
- iOS平台基于ffmpeg的视频直播技术揭秘
- iOS平台基于ffmpeg的视频直播技术揭秘
- cocos2dx跨平台环境
- cocos2dx 跨平台Socket
- cocos2dx跨平台
- Cocos2dx项目移植Android平台
- cocos2dx-3.0 移植android平台
- 上海python开发火的原因?
- 【Spring】Spring MVC原理及配置详解
- js原生table定义checkbox,并获取值放到数组
- java.sql.SQLException: Connection is read-only. Queries leading to data modification are not allowed
- 大数据导航,圈里人的专属导航,个人制作,非商业,有用拿走!
- cocos2dx跨平台直播实例-ffmpeg-android篇
- itk中的图像分割算法(四)
- 隐藏的信息
- solr全文检索服务器与tomact整合
- 计算rt
- MATLABr2016a与Excel 2013的数据交互
- 使用 CSS 变形学习笔记
- Android数据库高手秘籍(一)——SQLite命令
- 数据库的原理,一篇文章搞定