常见直播推拉流协议简介
摘要:一、概述 参考地址:https://www.cnblogs.com/eddyz/p/17869403.html
阅读全文
posted @
2024-09-24 16:41
飘杨......
阅读(10)
推荐(0) 编辑
ndk -DANDROID_STL=c++_static" does not exist.
摘要:一、概述 在使用android的jni能力的时候出现了编译错误 -DANDROID_STL=c++_static" does not exist. 产生这个异常的原因是找不到了STL静态库。 二、解决办法 使用动态库就行了 arguments "-DANDROID_STL=c++_shared"
阅读全文
posted @
2024-09-20 15:25
飘杨......
阅读(56)
推荐(0) 编辑
使用memcpy进行分段copy
摘要:一、概述 使用场景:在音视频开发中,用YUV数据+OpenGL进行画面渲染。经常会将Y分量、U分量、V分量分开。分别上传到GPU,由GPU转换为RGB进行最终展示。 使用这种方式的原因是基于GPU计算效率高为前提的。 在这个过程中经常会用到一个c函数memcpy。将yuv数据分别copy到不同的内存
阅读全文
posted @
2024-09-19 17:40
飘杨......
阅读(30)
推荐(0) 编辑
java.lang.UnsatisfiedLinkError: dlopen failed: library "libc++_shared.so" not found: needed by
摘要:一、概述 在AndroidStudio中集成opencv,使用其native函数时报的一个错误 二、解决办法 opencv提供的native文件夹中提供的是动态库 但是在gradle中的配置中,配置的stl是静态的,将其改为shared就行了 externalNativeBuild { cmake
阅读全文
posted @
2024-09-18 17:41
飘杨......
阅读(916)
推荐(0) 编辑
YUV2RGB(601、709、2020)
摘要:一、概述 在数字图像处理中,特别是视频播放领域。YUV转RGB或者RGB转YUV非常常用。 就目前来说有三个标准: 1.标准模式 BT601 2.高清模式 BT709 3.超清模式 BT2020 二、转换规则 转换公式如下
阅读全文
posted @
2024-09-11 17:39
飘杨......
阅读(486)
推荐(0) 编辑
ndk+cmake编译出现xxxx.app.main | debug | armeabi-v7a Compiler exited with error code 1:
摘要:一、概述 问题现象: 在做NDK开发时,项目能正常运行。kotlin/java端不报错。ndk端(cpp)会出现找不到系统头文件的情况。如:<jni.h>文件都找不到。但是此时项目运行起来是一点问题没有。 此时的在ndk的cpp文件夹下写代码是没有智能提示的,那效率是相当的低,果断不能。 使用cma
阅读全文
posted @
2024-09-11 09:51
飘杨......
阅读(77)
推荐(0) 编辑
标准坐标系、屏幕坐标系、纹理坐标系、FBO坐标系
摘要:一、概述 介绍一下常用的标准坐标系 1.标准坐标系 2.屏幕坐标系 3.纹理坐标系 4.FBO坐标系
阅读全文
posted @
2024-09-09 17:23
飘杨......
阅读(29)
推荐(0) 编辑
OpenGL ES使用正交投影来解决图像变形的问题
摘要:一、概述 上一节实践了,通过改变GLSurfaceView的宽高来解决图像变形的问题。 本节将通过正交投影的方式解决图像变形的问题。 分三步: 1.计算屏幕的宽高比及图像的宽高比 var screenRatio = screenWidth.toFloat() / screenHeight var i
阅读全文
posted @
2024-09-09 16:51
飘杨......
阅读(141)
推荐(0) 编辑
OpenGL ES通过缩小GLSurfaceView来解决纹理贴图变形的问题
摘要:一、概述 在使用OpenGL ES做纹理贴图的时候,图片有小有大。默认情况下纹理是撑满整个屏幕的。 这就导致大图会被压扁、小图会被拉伸。这种体验相当不好。 解决此问题的其中一种方式是:通过缩小GLSurfaceView的宽或高来解决问题。ps:公式可以看做是固定的,直接使用即可。 1.根据屏幕及图像
阅读全文
posted @
2024-09-09 16:42
飘杨......
阅读(81)
推荐(0) 编辑
android从java/kotlin层传递bitmap给jni并使用其像素
摘要:一、概述 在做jni开发的时候,有些情况下会直接通过java/kotlin层传递bitmap给jni,并取出其数据进行利用。 例如:OpenGL ES绘制纹理、保存像素图片等。 二、代码示例 1.在cmake中引入可以操作jni层BitmapInfo的lib jnigraphics -landroi
阅读全文
posted @
2024-09-06 17:18
飘杨......
阅读(66)
推荐(0) 编辑
android利用jni读取assets文件夹下的文件
摘要:一、概述 在jni的开发中,有时候会在c/c++层读取assets文件夹下的图片。 有两种方式可以选择: 方式一:在java/kotlin层把文件读取出来,然后以字符串的形式传递给jni层。 方式二:java/kotlin层传递一个文件名,jni利用AAssetManager读取文件内容 目前介绍的
阅读全文
posted @
2024-09-06 17:13
飘杨......
阅读(152)
推荐(0) 编辑
ndk集成stb_image.h
摘要:一、概述 使用步骤: 1.在ndk入口cpp中加入一个宏。ps:最好加最上面 #include <jni.h> #include <string> #define STB_IMAGE_IMPLEMENTATION 2.在使用的时候导入头文件 //导入stb_image头文件 #include "st
阅读全文
posted @
2024-09-05 17:57
飘杨......
阅读(54)
推荐(0) 编辑