摘要:
ADB全程:Android Debug Bridge,常用的android debug工具。 1. 查看当前的连接设备: adb devices 2. 进入到设备: adb shell 进入之后使用shell命令,cd、ls,rm等。 3. 设备有多个,需要指定其中一个设备: adb -s 设备名 阅读全文
摘要:
首先了解下着色器:着色器是一段包含着色信息的源代码字符串,分为顶点着色器和片元着色器,两个着色器分别写在不同的文件中。 着色器代码和OpenGL代码不是一起编译的,OpenGL代码是和工程一起编译,但是着色器代码是在运行期编译的。 在OpenGL中,存在Program和Shader两个概念。 Pro 阅读全文
摘要:
渲染管线 管线可以理解为渲染流水线。实际上可以理解为原始图形数据经过一个输送管道,期间经过各种变化处理最终出现在屏幕的过程。 在OpenGL下渲染图形,就像流水线,每个任务类似流水线一样执行,任务之间有先后顺序。管线又可以分为两种,固定管线和可编程管线。固定管线简单理解就是在渲染图像这个过程中,只能 阅读全文
摘要:
Transform Feedback主要作用是获取顶点着色器或者几何着色器输出的数据,并将结果存储到一个或多个的缓冲对象里,主要用于粒子系统中。 以光栅化为界限划分frond end和back end两个阶段,该过程位于front end的最后一个阶段。 粒子系统: 粒子系统是为了模仿一些自然现象烟 阅读全文
摘要:
工作时开发环境是windows,需要远程连接服务器编译,个人的常使用的代码同步方式有以下两种: 第一种:samba samba服务器可以作为windows和linux交互的媒介,在windows上即可访问linux文件,实现代码同步。 samba安装: sudo apt-get install sa 阅读全文
摘要:
在上一篇介绍了编码器的VCL编码操作,分析了函数x264_slice_write()。函数x264_slice_write()里有四个关键模块,分别是宏块分析模块、宏块编码模块、熵编码模块和滤波模块,再加上NAL打包输出部分,是我们这里要讲的内容。 1.编码模块 宏块分析模块:调用函数x264_ma 阅读全文
摘要:
在前面的过程中,我们得到了编码图像,编码器开始H264视频编码VCL。首先初始化有关参数,包括帧类型的获取、创建多参考帧的列表、初始化码流控制、初始化写码流结构和写SPS、PPS头结构信息。 1.初始化相关参数 若为IDR帧,则意味着一个新图像片的开始。在H264中为了防止编码错误扩散,规定当前片不 阅读全文
摘要:
X264的编码器结构体x264_t中的子结构体字段frames包含了4个临时视频帧序列空间:current、next、unused和reference,分别保存当前编码帧、将编码帧序列、未处理原始视频帧序列和参考帧序列,同时x264编码器申请了fenc和fdec空间用于存放已编码帧和重建帧。H264 阅读全文
摘要:
X264编码库libx264实现真正的视频编解码,该编解码算法是基于块的混合编码技术,即帧内/帧间预测,然后对预测值变换、量化,最后熵编码所得。 编码帧的类型分为I帧(x264_type_i)、P帧(x264_type_p)、B帧(x264_type_b),在H264中叫做图像片Slice。 X26 阅读全文
摘要:
接下来的几篇博客中,具体学习下X264的实现过程。 源代码的分析参考了雷神的博客,感谢雷神!博客链接:https://blog.csdn.net/leixiaohua1020/article/details/45536607。 1.概述 X264编码流程图如下所示: 首先我们要创建编码器,初始化 阅读全文