Android Studio Ffmpeg
1:编写java
package com.example.zhaohu.test;
public class MainActivity extends AppCompatActivity {
protected void onCreate(Bundle savedInstanceState) {
...................
final TextView infoText = (TextView)findViewById(R.id.info);
infoText.setText(stringFromJNI());
}
public native String stringFromJNI();
public native String unimplementedStringFromJNI();
static {
System.loadLibrary("avcodec-57");
System.loadLibrary("avfilter-6");
System.loadLibrary("avformat-57");
System.loadLibrary("avutil-55");
System.loadLibrary("swresample-2");
System.loadLibrary("swscale-4");
System.loadLibrary("hello");
}
}
在Android视图下的manifests中的AndroidManifest.xml中添加访问SDK卡和网络的权限
在<manifest......>中添加
- <uses-permission android:name="android.permission.INTERNET"/>
- <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
2:在AS下面的Terminal中,生成C/CPP文件
- zhaohudeMacBook-Air:main zhaohu$ cd /Users/zhaohu/AndroidStudioProjects/Test/app/src/main
- zhaohudeMacBook-Air:main zhaohu$ javah -d ../jni com.example.zhaohu.test.MainActivity
- 生成C头文件(com_example_zhaohu_test_MainActivity.h)
3:在AS左侧Project视图中添加实现文件
4:在Project视图中app下编辑(build.gradle)
sourceSets.main{
jniLibs.srcDir 'libs'
jni.srcDirs = []
}
5:在工程的gradle.properties中添加
- android.useDeprecatedNdk=true
6:在local.properties中添加SDK,NDK路径
sdk.dir=/Users/zhaohu/android-sdk-macosx
ndk.dir=/Users/zhaohu/android-ndk-r10e
7:编译库文件
- zhaohudeMacBook-Air:main zhaohu$ pwd
- /Users/zhaohu/AndroidStudioProjects/Test/app/src/main
- zhaohudeMacBook-Air:main zhaohu$ ndk-build
- [armeabi] Install : libavcodec-57.so => libs/armeabi/libavcodec-57.so
- [armeabi] Install : .......................
- zhaohudeMacBook-Air:main zhaohu$ cp libs/armeabi/* /Users/zhaohu/AndroidStudioProjects/Test/app/libs/armeabi-v7a/
8:编译工程,安装APK
Android Studio Ffmpeg的更多相关文章
- android studio ffmpeg简单使用 (cmake)
编译ffmpeg android studio 新建项目,勾选上 将编译好的libffmpeg.so库扔到src/main/jniLibs/armeabi下(主要这里我只编译了arm的ffmpeg的库 ...
- Android开发学习之路--Android Studio cmake编译ffmpeg
最新的android studio2.2引入了cmake可以很好地实现ndk的编写.这里使用最新的方式,对于以前的android下的ndk编译什么的可以参考之前的文章:Android开发学习之路– ...
- 手把手图文并茂教你用Android Studio编译FFmpeg库并移植
转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼yuiop:http://blog.csdn.net/hejjunlin/article/details/52661331 之前曾写过一篇&l ...
- FFmpeg在Android Studio中断点调试
一般情况下在Android平台使用FFmpeg为动态库或静态库的形式,只能通过设置FFmpeg日志回调来看一些FFmpeg输出的日志,有时需要debug来查看FFmpeg内部执行过程,本文记录一下在A ...
- android studio下的NDK开发详解(一)
源地址:http://www.voidcn.com/blog/chengkaizone/article/p-5761016.html 好记性不如烂笔头,开始坚持写博客,学一点记一点,只为了生活更好. ...
- Android ijkplayer在windows下编译并导入Android Studio
我是看着里面的步骤来做的,由于我自己对Linux环境和命令不熟悉,导致我对Cygwin的知识为零,在编译ijkplayer的时候走了一点弯路,需要的同学先去看一下上面的这篇文章,我这边是对上面文章做 ...
- Android Studio NDK编程初探
继上一篇学习了如何使用NDK编译FFMPEG后,接下来就是要学习如何在Android Studio中使用了. 经过参考和一系列的摸索,记录下具体步骤. 创建C++ Support的Android St ...
- Android Studio配置 AndroidAnnotations——Hi_博客 Android App 开发笔记
以前用Eclicps 用习惯了现在 想学学 用Android Studio 两天的钻研终于 在我电脑上装了一个Android Studio 并完成了AndroidAnnotations 的配置. An ...
- Android Studio 多个编译环境配置 多渠道打包 APK输出配置
看完这篇你学到什么: 熟悉gradle的构建配置 熟悉代码构建环境的目录结构,你知道的不仅仅是只有src/main 开发.生成环境等等环境可以任意切换打包 多渠道打包 APK输出文件配置 需求 一般我 ...
随机推荐
- XCODE中使用Main.Storyboard拉入控件并实现事件(Swift语言)
如何在XCODE中的Main.Storyboard内拉入控件并实现一个简单的效果呢?本人由于刚接触Swift语言不久,对于IDE的操作还是很生疏,不懂了就在网上参考了网上前辈们的文章.以下我将演示如何 ...
- OO面向对象 课程总结
测试与正确性论证的效果差差异 测试和正确性论证都是对程序进行可靠性的验证. 测试: IEEE提出了对软件测试的定义:使用人工或者自动的手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求 ...
- (树莓派、Arduino、物联网、智能家居、机器人)传感器、机械装置、电子元件
定制 PCB 1. 机械类 履带底盘 2. 传感器 温度传感器(temperature).湿度传感器(humidity) DHT11/DHT22 驱动:BCM2835 (被动)红外传感器(Passiv ...
- magento如何改变首页的布局
打开MAGENTO_INSTALLED_DIR/app/design/frontend/default/default/layout/page.xml 找到名字为'root'的block定义 < ...
- hacking a friend's Linux buzzer driver in OK335xS
/**************************************************************************** * hacking a friend's L ...
- delphi批量存入多媒体字段 遇到内存溢出的坑
最近delphi做一个小工具其中一个需求要把上W张照片存入数据库多媒体字段. 程序转到1,2W的时候即内在溢出了.最多一次转了3W张照片.很简单的一段代码后来仔细检查发现其中的坑. 下面放上代码 wi ...
- Word2007:如何在竖版(纵向)页面中间插入横版(横向)页面
通常情况下,我们在word排版过程中使用一种页面版式(横版/竖版)即可.但在某些特殊情况下,我们可能会需要在竖版页面中间插入一页或多页横版页面,抑或在横版页面中间插入竖版页面.那么,如何针对这 ...
- 使用OASGraph 暴露rest 接口为graphql api
OASGraph 是loopback 团队开发的方便将rest api 暴露为graphql 的工具, 这个也是loopback 4 的一个新特性类似的有些团队提出了binding 以及stitch ...
- Zxing图片拉伸解决 Android 二维码扫描
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/aaawqqq/article/details/24852915 二维码扫描 Android Zx ...
- Oracle更换字符集
现有数据库使用字符集是GBK,做读写分离的时候,发现读库的数据库安装错误,使用了UTF8的字符集 需要把读库的字符集进行调整. 1.进入PLSQL查看下数据库字符集 select * from nls ...