自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 资源 (14)
  • 收藏
  • 关注

原创 NV12 图像数据的插值时候旋转

static int ChangeWH(int angle, int destW, int destH, int * afterW, int * afterH){ if ((angle == 0 || angle == 180)) { *afterW = destH; *afterH = destW; } else {

2017-03-22 17:04:37 659

原创 NV12 图像数据的旋转

/img 原始数据destImg 目的数据m_width 原始数据的宽,旋转后可能改变m_height 原始数据的高m_cammer 0 前置摄像头 1 后置摄像头m_angle 角度看程序决定图像右旋还是左旋还有镜像/static int imgRotationNew(unsigned char *img, unsigned char *destImg, int * m_width,

2017-03-22 11:08:25 1625 1

原创 NV21转BGR图像

#undef clamp_g#define clamp_g(x, minValue, maxValue) ((x) < (minValue) ? (minValue) : ((x) > (maxValue) ? (maxValue) : (x)))int NV12ToBGR(unsigned char * srcYVU, unsigned char * destBGR, int width, in

2017-03-21 17:46:34 2846 1

原创 NV12 图像的线性插值

#undef clamp_g#define clamp_g(x, minValue, maxValue) ((x) < (minValue) ? (minValue) : ((x) > (maxValue) ? (maxValue) : (x)))/*输入的宽高和输出的宽高都要是偶数*/int NV12Linear(unsigned char * srcImage, unsigned cha

2017-03-21 17:41:06 1118

原创 线性插值 c代码.....

int clamp_s(int value, int m_min, int m_max){ int mm_ret = value; if (value < m_min) { mm_ret = m_min; } else if (value > m_max) { mm_ret = m_max; } ret

2017-03-14 12:15:13 6124

原创 Android.mk 文件,多个mk文件

最外层的mk# 这一句的意思是执行内层文件下的所有mk文件include $(call all-subdir-makefiles)下面的两个mk文件是里面两个并列的两个文件夹的mkLOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE := mainSDL_PATH := ../SDLLOCAL_C_INCLUDES := $(

2017-03-01 16:15:33 2620

原创 简单的Android.mk 文件

LOCAL_PATH:= $(call my-dir)include $(CLEAR_VARS)AlvaDefineRoot := $(LOCAL_PATH)/JniInterface_PATH := $(SRC_ROOT)/JniInterface#生成Test.soLOCAL_MODULE := libTestJNI_C_FILES = hello

2017-03-01 16:06:09 407

cmakelists 生成静态库,然后用静态库生成动态库,然后生成测试程序

1:模块化CMakeLists 的写法 2:每个模块先生成静态库 3:把各个静态库生成一个动态库 4:生成一个测试demo 验证动态库

2020-10-12

ffmpeg3.4.1 将YUV数据封装成Mp4文件

封装了ffmpeg api 只调用三个函数,初始化,反初始化,编码生成Mp4 , 方便工程嵌入

2019-04-04

c++ 打印log 日志到文件

1:可以删除旧的log日志 2:可以设置每个日志的大小 3:c++ 代码简单

2019-03-20

c++ log日志

将打印日志输出到文件中,方便查看bug , 类似于glog 一样,只是更简单

2019-01-24

jni c++ 返回一个类

本例子包含一个eclipse 工程和vs2015 工程, 可以实现c++ 返回一个java 的类

2018-12-20

C++连接activityMQ

c++ 连接activityMQ, 本代码创建两个线程,一个生产者线程,一个消费者线程。前提是先装好运行activityMQ这个服务

2018-09-26

Qt5多线程同步

用信号量实现两个线程间的交替执行,相对于条件变量更简单

2018-08-14

CJSON库的应用

如何把结构体数据存储为CJSON的格式,然后再从 字符串中解析出来用到的数据

2018-05-17

jni传参实例

主要帮助我们知道如何把android的参数传递到c++,然后让c++如何的使用,以及c++的返回值给android使用,如何在底层开辟安卓空间

2017-09-05

vs的属性配置文件

每一次都配置vs属性太麻烦,所以保存起来,里面配置了opencv的路径,下次直接改就好了

2017-07-11

Fast 算法C++代码

本人近来研究OpenCV的Fast 的源码,发现opencv 对Fast 的算法写的有优化,并不方便初学者来理解代码,本人根据Fast 算法的原理,写了一个相对非常好理解的Fast 算法,在速度上不如opencv, 但是在代码的理解和简洁上绝对是更胜一抽,希望能帮助更多学习Fast 算法的同学们,请大家相信,本程序Fast 的结果经过验证和opencv 结果一样,请大家放心使用。

2017-06-16

Linux 下实现的聊天系统,TCP实现

实现一个服务器程序和一个客户端程序,开启服务器后,客户端可以注册账号,然后登陆,可以实现多个客户端之间的相互聊天,代码简单易懂,主要用到TCP和多线程的知识,仅供初学者参考。

2017-04-25

安卓打开摄像头,通过jni将预览数据NV12传到底层,底层打印成图片

安卓打开摄像头,通过jni将预览数据NV12传到底层,底层打印成图片,也可以进行其他处理,将结果返回给安卓层

2017-04-18

android 点击图片通过jni在底层处理,然后在屏幕上显示

通过一个按钮,选择一张图片,通过jni 将图片信息传到底层,然后将处理后的数据传回安卓层,手写通用版的Android.mk ,让你迅速搭建一个工程测试你的底层代码,一个积分,绝对值得。

2017-03-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除