- 博客(29)
- 资源 (4)
- 收藏
- 关注
原创 自学Libyuv 音频转码以及播放
1.新建JasonPlayer public native void sound(String input,String output);2.javah 生成头文件 com_boom_audioplayer_JasonPlayer.h/* DO NOT EDIT THIS FILE - it is machine generated */#include "jni.h"/* H
2017-12-26 09:59:19 1096
原创 自学pthread
man -k pthread 查看所有命令以及命令描述 man指的是menuman pthread_create 创建线程apt-get install manpages-posix-dev/usr/sbin 是安装目录usleep()是微秒sleep()是秒gcc 01.
2017-12-26 09:47:26 443
原创 自学Makefile
#三要素#目标,依赖,命令#myapp目标 (最终目标,第一行是最终目标)#:后的文件都是依赖#step 1#myapp:main.o plus.o minus.o multi.o divi.o# gcc main.o plus.o minus.o multi.o divi.o -o myapp
2017-12-26 08:32:10 373
原创 linux操作命令行
清空命令行:reset文件操作:显示列表ls -l ls -la 所有ls -l ja* 通配符查找创建文件touch today.c复制文件cp src.txt dest.txtcp -i src.txt dest.txt 询问cp src.txt . 复制到当前目录
2017-12-26 08:31:26 369
原创 自学libyuv在linux服务器上的操作
从csdn上去下载libyuv代码解压 在libyuv下新建jni文件夹 同级的其他文件考入jni目录下然后压缩成zip压缩包 上传到linux中然后解压 unzip libyuv.zip这里共享下我的链接:https://pan.baidu.com/s/1c20JwVQ 密码:a7h0以后都是这样 新建jni文件
2017-12-26 08:18:16 803
原创 自学FFmpeg播放视频
总思路1.lock window2.缓冲区赋值3.unlock window和FFmpeg转码一样导入对应的头文件和so库1)新建VideoViewpublic class VideoView extends SurfaceView { public VideoView(Context context) {
2017-12-26 08:10:52 421
原创 自学 FFmpeg转码 decode
因为之前在linux上配置了ffmpeg,其中我们只用到了decodec我们 zip android.zip android 把android文件压缩成android.zip压缩包 Android包内是生成对应cpu的头文件和so库新建Android项目由原来的cmake转为ndk-buildbuild-gradle
2017-12-25 12:28:35 752
原创 Linux上FFmpeg生成so库
我用的是ubuntu做开发的,之前使用过centos7去编译的 感觉太麻烦出错了,从朋友那得知ubuntu和debian 是适用于开发的1. cd /home/ 切换到home 目录2.mkdir ndk 在home目录下新建文件夹 ndk3.把linux版的ndk上传到ubuntu服务器上4.cd /home/ 切换到home 目录5.mk
2017-12-25 12:18:35 2121
原创 linux配置ffmpeg
编译FFmpeg1.阿里云主机 ubuntu 14.04 64位2.安装 Xshell Xftp3.上传NDK,FFmpegcd /usr/ 切换到usr目录把ndk拖入窗口 linux版的 不是Windows版的4.ndk配置环境变量vivim 可以查看是否安装vim 显示vim的版本信息sudo apt remo
2017-12-25 10:34:46 1637
原创 自学体验使用fmod 以及 仿QQ变声 fmod
模块一 体验使用fmod到https://www.fmod.com/download 上下载fmod android版本的这里我们用的是别人生成的so库libfmod.so库libfmodL.so库操作步骤1.在assets中存三个音频由之前的fmod使用,我们可以知道音频会从assets中去取 file:///
2017-12-25 09:28:37 3647
原创 学习fmod的使用
1.到fmod 官网下载 studio 和Api 地址:https://www.fmod.com/download2.找到playsound.cpp文件地址:D:\fmodstudioapi11001android\fmodstudioapi11001android\api\lowlevel\examples3.找到main()函数
2017-12-25 08:45:40 2428
原创 Ndk学习之JNI全局引用和局部引用(java->c->java)
1.在Java中定义定义引用变量以及获取的方法1)局部引用public native void localRef();2)全局引用 public native void createGlobalRef(); public native String getGloballRef(); public native void deleteGlobalRef
2017-12-25 08:13:47 398
原创 Ndk学习之JNI获取数组(Java-->C-->Java)
1.在java中定义方法以及获取C中返回值的方法public native int[] getArray(int len);2.javah生成头文件/* * Class: com_boom_JNITest * Method: getArray * Signature: (I)[I */JNIEXPORT jintArray JNICALL Java_com_boom
2017-12-25 08:11:45 1260
原创 Ndk学习之JNI传入数组(java-->C)
1.在Java文件中定义方法传入数组,并定义获取方法public native void giveArray(int[] arr);2.javah生成头文件/* * Class: com_boom_JNITest * Method: giveArray * Signature: ([I)V */JNIEXPORT void JNICALL Java_com_boom
2017-12-25 08:09:35 697
原创 Ndk学习之JNI中文问题(java-->C-->Java)
1.在Java中定义一个方法传入一个String参数,并定义获取方法public native String chineseChars(String in);2.javah生成头文件/* * Class: com_boom_JNITest * Method: chineseChars * Signature: (Ljava/lang/String;)Ljava/lang
2017-12-25 08:08:12 354
原创 Ndk学习之JNI调用父类方法(java-->C)
1.在java类中新建两个类Man类public class Man extends Human{ @Override public void sayHi() { } public void sayHi2(){ super.sayHi(); }}Human类public class Human { public void sayHi(){ Sy
2017-12-25 08:05:12 683
原创 Ndk学习之JNI构造函数(java-->C-->Java)
1.在Java中定义构造函数(无参的不写没事,不被覆盖就行)并获取public native Object accessConstaructor();2.javah生成头文件JNIEXPORT jobject JNICALL Java_com_boom_JNITest_accessConstaructor(JNIEnv * env, jobject jobj)3.源代码中进行
2017-12-22 13:12:31 1045
原创 Ndk学习之JNI方法和静态方法(java-->C)
在java中定义方法和静态方法 public native void accessMethod(); public native void accessStaticMethod();javah生成头文件/* * Class: com_boom_JNITest * Method: accessMethod * Signature: ()V */JNIEXP
2017-12-22 13:03:29 452
原创 Ndk学习之JNI属性和静态属性(Java->C)
在java中定义两个属性1.普通属性2.静态属性 public String name ="jason"; public static int age = 21;定义获取的方法 public native String accessField(); public native void accessStaticField();javah
2017-12-22 12:41:18 337
原创 C++类型转换
//C++类型转换//static_cast 普遍情况//const_cast 去常量//dynamic_cast 子类类型转为父类类型//reinterpret_cast 函数指针转型,不具备移植性//原始类型转换, 所有情况都是一种写法,可读性不高,有可能有潜在的风险//static_cast#includeusing namespace
2017-12-22 09:45:16 263
原创 C++多态、模板函数、模板类、异常处理
#pragma once 代表不能重复引用多态Plane.h#pragma once//普通飞机class Plane {public: virtual void fly(); virtual void land();};Copter.h#pragma once#include "Plane.h"class Copter :publ
2017-12-22 09:24:55 357
原创 C++的构造函数属性初始化_静态成员_this指针
//构造函数的属性初始化列表#define _CRT_SECURE_NO_WARNINGS#include#include#includeusing namespace std;class Teacher {private: char *name;public : Teacher(char *name) { this->name = name; cout << "
2017-12-22 09:09:55 776
原创 C++构造函数/析构函数/拷贝函数
1.构造函数#define _CRT_SECURE_NO_WARNINGS#include #include #include using namespace std;class Teacher {private : char *name; int age;public : //无参构造函数 Teacher() { cout << "无参构造函数" << end
2017-12-22 09:01:24 290
原创 C++的引用
引用#define _CRT_SECURE_NO_WARNINGS#include #include #include using namespace std;void main() { //变量名-门牌号(内存空间0X00001的别名,可不可以有多个名字?) int a = 10; //b就这个内存空间另外一个别名 //& C++中的引用 int &b = a; c
2017-12-22 08:44:37 250
原创 C++的命名空间
1.standard 标准命名空间 ,如果使用coutusing namespace std;//命名空间类类似于Java中包(归类)2.自定义命名空间#include #includeusing namespace std;namespace NSP_A{ int a = 9; struct Teacher { char name[20];
2017-12-22 08:25:49 248
原创 Ndk学习之C语言异常(java->c)
1.在Java中定义异常以及获取方法啊public native void exception();2.javah生成头文件/* * Class: com_boom_JNITest * Method: exception * Signature: ()V */JNIEXPORT void JNICALL Java_com_boom_JNITest_excep
2017-12-22 08:11:12 313
原创 Ndk学习之C语言缓存(java->c)
在Java中定义1.局部变量public native void cache();2.全局变量public native static void initId();javah生成头文件JNIEXPORT void JNICALL Java_com_boom_JNITest_cache(JNIEnv *, jobject);JNIEXPO
2017-12-22 08:08:20 249
原创 配置EC上android项目支持编辑C++
添加三个D:\android\adt-bundle-windows-x86_64-20140702\android-ndk-r10e\toolchains\arm-linux-androideabi-4.8\prebuilt\windows-x86_64\lib\gcc\arm-linux-androideabi\4.8\includeD:\andr
2017-12-21 13:47:30 247
原创 AS配置NDK插件命令External Tools(javah/ndk-build/ndk-build clean)
添加三个命令1.javah2.ndk-build3.ndk-build clean=============================================================javah用于生成头文件Program:$JDKPath$/bin/javahParameters: -encoding UTF-8 -
2017-12-21 13:19:32 1549
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人