Linux应用
文章平均质量分 92
Allen.Wu
大厂资深开发工程师,具备丰富的架构设计和系统研发经验;涉及 架构设计、微服务、基础组件、系统分析和调优、K8s 容器化、IM 架构;Golang、C/C++;
展开
-
Nginx 压测方法论和性能指标
Nginx 压测方法论和性能指标原创 2022-11-24 19:45:29 · 2682 阅读 · 0 评论 -
RTP 与RTCP 解释. 含同步时间戳
RTP 与RTCP 解释. 含同步时间戳RTP协议是real-time transport protocol的缩写,被设计来传输流媒体数据,有着广泛的应用,其它相关介绍自己去看RFC,我不打算讨论这些无聊的概念性的东西。(1)了解RTP 可以说,RTP协议不依赖于底层协议,也就是说,它是独立的协议。而一般的,由于UDP包的快速、时实性高的特点,它通常和UDP结合在一起转载 2013-10-31 20:08:56 · 8094 阅读 · 1 评论 -
IPC之本地套接字
IPC之本地套接字 进程间通信,UNP2 这本经典的书籍讲的已经很清楚了,常见的进程间通信就是信号量 消息队列共享内存,其实本地套接字更是一种进程间通信的手段,而且起码要比信号量更加直观。本文描述下基本的利用本地套接字来进行进程通信。点击(此处)折叠或打开#define UNIX_PATH_MAX 108 struct sockaddr_un { s转载 2013-11-19 16:05:55 · 1103 阅读 · 0 评论 -
inline函数_内联函数的一些总结
inline函数_内联函数的一些总结 inline关键字用来定义一个类的内联函数,引入它的主要原因是用它替代C中表达式形式的宏定义。表达式形式的宏定义一例:#define ExpressionName(Var1,Var2) ((Var1)+(Var2))*((Var1)-(Var2))为什么要取代这种形式呢,且听我道来:1.首先谈一下在C中使用这种形式宏定义的原因,C语言转载 2013-11-20 11:30:11 · 2265 阅读 · 0 评论 -
YUV格式分析详解
YUV格式分析详解 一,YUV含义 YUV格式通常有两大类:打包(packed)格式和平面(planar)格式。前者将YUV分量存放在同一个数组中,通常是几个相邻的像素组成一个宏像素(macro-pixel);而后者使用三个数组分开存放YUV三个分量,就像是一个三维平面一样。 在摄像头之类编程经常是会碰到YUV格式,而非大家比较熟悉的RGB格式. 我们可以把YUV看成转载 2013-10-28 16:32:35 · 32968 阅读 · 6 评论 -
引用与指针的区别
引用与指针的区别在c++函数中,形式参数用引用和用指针都可以起到在被调用函数中改变调用函数的变量的作用。什么时候用引用作参数?什么时候用指针作参数呢void function (int *ptr); // 指针void function(int &ref); // 引用没有 特定的规定。。学的久了,就 会习惯什么时候用指针什么时候用引用了!引用与指针有什么区别转载 2013-11-09 11:05:17 · 1513 阅读 · 0 评论 -
回调函数
回调函数 回调函数是一个程序员不能显式调用的函数;通过将回调函数的地址传给调用者从而实现调用。回调函数使用是必要的,在我们想通过一个统一接口实现不同的内容,这时用回掉函数非常合适。比如,我们为几个不同的设备分别写了不同的显示函数:void TVshow(); void ComputerShow(); void NoteBookShow()... 等等。这是我们想用一个统一的显示转载 2013-11-09 11:17:29 · 771 阅读 · 0 评论 -
野指针
野指针 “野指针”不是NULL指针,是指向“垃圾”内存(不可用内存)的指针。人们一般不会错用NULL指针,因为用if语句很容易判断。但是“野指针”是很危险的,if无法判断一个指针是正常指针还是“野指针”。有个良好的编程习惯是避免“野指针”的唯一方法。 野指针的成因主要有三种:一、指针变量没有被初始化。任何指针变量刚被创建时不会自动成为NULL指针,它的缺省值是随机的,它会乱指转载 2013-11-09 11:43:37 · 925 阅读 · 0 评论 -
指针与内存, 指针数组,常量指针类笔记
指针与内存, 指针数组,常量指针类笔记 1. char * str1;//str1 只是一个指针,指针指向的空间还没有分配,所以此时用strcpy向str1所指向的内存中拷贝内容将出错。利用malloc动态分配指向的内存(在堆中):str1=(char *)malloc(10) or str1=(char *)malloc(sizeof(char) * num)//分配num个转载 2013-11-11 10:21:25 · 1270 阅读 · 0 评论 -
C语言中的字符数组与字符串
C语言中的字符数组与字符串 1、字符数组的定义与初始化字符数组的初始化,最容易理解的方式就是逐个字符赋给数组中各元素。charstr[10]={ 'I',' ','a','m',' ',‘h’,'a','p','p','y'};即把10个字符分别赋给str[0]到str[9]10个元素如果花括号中提供的字符个数大于数组长度,则按语法错误处理;若小于数组长度,则只将这些字符数转载 2013-11-11 10:25:15 · 1097 阅读 · 0 评论 -
字符编码:ASCII,Unicode和UTF-8
字符编码:ASCII,Unicode和UTF-81. ASCII码我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串。每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出 256种状态,这被称为一个字节(byte)。也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从 0000000到11111111。上个世转载 2014-09-15 22:00:28 · 877 阅读 · 0 评论 -
利用freetype显示中文字符
#include #include #include #include #include #include #include #include #include #include #include #include FT_FREETYPE_H#include FT_GLYPH_H#define FONTDATAMAX 4096转载 2014-09-15 22:28:43 · 7950 阅读 · 0 评论 -
framebuffer / 像素深度 / 颜色深度 / RGB565
framebuffer / 像素深度 / 颜色深度 / RGB5651, framebuffer相关的. framebuffer的可变的信息就是指Framebuffer的长度、宽度以及颜色深度等信息。这两个命令字相关的结构体有两个:struct fb_fix_screeninfo和struct fb_var_screeninfo,这两个结构体都比较大,前者用于保存Fram转载 2014-09-15 22:58:59 · 8168 阅读 · 1 评论 -
framebuffer设备的参数 和framebuffer编程
framebuffer设备的参数 和framebuffer编程如果应用程序需要知道Framebuffer设备的相关参数,必须通过ioctl()系统调用来完成。在头文件中定义了所有的ioctl命令字,不过,最常用的ioctl命令字是下面这两个:FBIOGET_FSCREENINFO和FBIOGET_VSCREENINFO。前者返回与Framebuffer有关的固定的信息,转载 2014-09-15 22:59:47 · 2683 阅读 · 0 评论 -
RTP协议分析
RTP协议分析第2章. RTP详解2.1. RTP的协议层次2.1.1. 传输层的子层RTP(实时传输协议),顾名思义它是用来提供实时传输的,因而可以看成是传输层的一个子层。图 1给出了流媒体应用中的一个典型的协议体系结构。图1流媒体体系结构从图中可以看出,RTP被划分在传输层,它建立在UDP上。同UDP协议一样,为了实现其实时传输功能,RTP也有固定的封转载 2013-10-31 20:08:15 · 2114 阅读 · 0 评论 -
FU-A分包方式,以及从RTP包里面得到H.264数据和AAC数据的方法
FU-A分包方式,以及从RTP包里面得到H.264数据和AAC数据的方法RFC3984是H.264的baseline码流在RTP方式下传输的规范,这里只讨论FU-A分包方式,以及从RTP包里面得到H.264数据和AAC数据的方法。 H.264的NAL层处理H264以NALU(NALunit)为单位来支持编码数据在基于分组交换技术网络中传输。NALU定义了可用于基转载 2013-10-31 20:07:37 · 8226 阅读 · 0 评论 -
码流 / 码率 / 比特率 / 帧速率 / 分辨率 / 高清
码流 / 码率 / 比特率 / 帧速率 / 分辨率 / 高清 (自己整理的 !!! 内容大多来自其他网友 ! ) 1, 码流 /码率 / 比特率 / 帧速率 / 分辨率 码流 / 码率 码流(Data Rate)是指视频文件在单位时间内使用的数据流量,也叫码率或码流率,通俗一点的理解就是取样率,是视频编码中画面质量控制中最重要的部分,一般我们用的单位是kb/s或者M转载 2013-10-24 15:59:00 · 65545 阅读 · 2 评论 -
音频中常见的技术指标
音频中常见的技术指标 我们就针对数字音频常见的技术指标进行介绍。1、声道数:声道数是音频传输的重要指标,现在主要有单声道和双声道之分。双声道又称为立体声,在硬件中要占两条线路,音质、音色好,但立体声数字化后所占空间比单声道多一倍。2、量化位数:量化位是对模拟音频信号的幅度轴进行数字化,它决定了模拟信号数字化以后的动态范围。由于计算机按字节运算,一般的量化位数为8位和16位。转载 2013-10-25 10:47:17 · 8568 阅读 · 0 评论 -
音视频封装格式、编码格式知识
音视频封装格式、编码格式知识(自己整理了一下, 内容来源网络 !!)常见的AVI、RMVB、MKV、ASF、WMV、MP4、3GP、FLV等文件其实只能算是一种封装标准。一个完整的视频文件是由音频和视频2部分组成的。H264、Xvid等就是视频编码格式,MP3、AAC等就是音频编码格式。例如:将一个Xvid视频编码文件和一个MP3音频编码文件按AVI封装标准封装以后,就得到转载 2013-10-25 10:33:05 · 13923 阅读 · 0 评论 -
像素,视频制式,数字_模拟信号摄像头
像素,视频制式,数字_模拟信号摄像头 1,PAL,NTSC,还有SECAM,这是全球现行的三种模拟技术彩色电视的制式。 NTSC(National Television System Committee)制是最早的彩电制式,1952年由美国国家电视标准委员会制订。它采用正交平衡调幅的技术方式,故也称为正交平衡调幅制。美国、加拿大等大部分西半球国家以及中国的台湾、日本、韩国、菲转载 2013-10-24 16:35:48 · 7001 阅读 · 0 评论 -
ITU-R BT.656 , 帧 , 场 === 模拟视频信号采集的处理,以及奇偶场
ITU-R BT.656, 帧 , 场 === 模拟视频信号采集的处理,以及奇偶场 (自己整理过的........内容源自网络.)一,ITU-R BT.656ITU-R BT.656 8/10位数据传输;不需要同步信号;串行数据传输;传输速率是601的2倍;先传Y,后传UV。行场同步信号嵌入在数据流中。包含三部分 :①:视频信号 ②:定时基准信号:有两个定时转载 2013-10-25 15:18:29 · 12723 阅读 · 2 评论 -
用GDB调试程序
用GDB调试程序转载, 原文链接 :http://blog.csdn.net/haoel/article/details/2879GDB概述————GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具。或许,各位比较喜欢那种图形界面方式的,像VC、BCB等IDE的调试,但如果你是在UNIX平台下做软件,你会发现GDB这个调试工具有比VC转载 2013-10-18 22:13:35 · 630 阅读 · 0 评论 -
视频带宽计算公式(码流_分辨率_帧率)
视频带宽计算公式(码流_分辨率_帧率) (自己整理过的.)码流 码流(Data Rate)是指视频文件在单位时间内使用的数据流量,也叫码率或码流率,是视频编码中画面质量控制中最重要的部分,一般我们用的单位是Kb/s或者Mb/s。一般来说同样分辨率下,视频文件的码流越大,压缩比就越小,画面质量就越高。码流越大,说明单位时间内取样率越大,数据流,精度就越高,处理出来的文件就越接近原始文转载 2013-10-25 22:06:14 · 106836 阅读 · 6 评论 -
linux代码段,数据段,BSS段, 堆,栈
linux代码段,数据段,BSS段, 堆,栈网上摘抄了一些,自己组织好了,以便参考 !!!! 进 程(执行的程序)会占用一定数量的内存,它或是用来存放从磁盘载入的程序代码,或是存放取自用户输入的数据等等。不过进程对这些内存的管理方式因内存用途不一而不尽相同,有些内存是事先静态分配和统一回收的,而有些却是按需要动态分配和回收的。对任何一个普通进程来讲,它都会涉及到5种不同的数转载 2013-10-22 14:42:10 · 10233 阅读 · 0 评论 -
Linux进程状态解析 之 R、S、D、T、Z、X (主要有三个状态)
linux是一个多用户,多任务的系统,可以同时运行多个用户的多个程序,就必然会产生很多的进程,而每个进程会有不同的状态。Linux进程状态:R (TASK_RUNNING),可执行状态。 只有在该状态的进程才可能在CPU上运行。而同一时刻可能有多个进程处于可执行状态,这些进程的task_struct结构(进程控制块)被放入对应CPU的可执行队列中(一个进程最多只转载 2013-10-21 22:11:04 · 33003 阅读 · 3 评论 -
H.264 NAL层解析(0x00000001,编码,打包,NALU)
H.264 NAL层解析(0x00000001,编码,打包,NALU) 1.引言H.264的主要目标:1.高的视频压缩比2.良好的网络亲和性解决方案:VCL video codinglayer 视频编码层NAL network abstraction layer 网络提取层VCL:核心算法引擎,块,宏块及片的语法级别的定义NAL:片级以转载 2013-10-31 19:59:54 · 15628 阅读 · 2 评论 -
I,P,B帧和PTS,DTS的关系,GOP相关
I,P,B帧和PTS,DTS的关系,GOP相关 I frame :帧内编码帧 又称intra picture,I 帧通常是每个 GOP(MPEG 所使用的一种视频压缩技术)的第一个帧,经过适度地压缩,做为随机访问的参考点,可以当成图象。I帧可以看成是一个图像经过压缩后的产物。P frame: 前向预测编码帧 又称predictive-frame,通过充分将低于图像序列中前面已编码转载 2013-10-31 20:00:28 · 6859 阅读 · 0 评论 -
H264的RTP负载打包的数据包格式,分组,分片
H264的RTP负载打包的数据包格式,分组,分片 1. RTP数据包格式RTP报文头格式(见RFC3550 Page12): 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 12 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+转载 2013-10-31 20:04:06 · 9190 阅读 · 0 评论 -
H.264 RTPpayload 格式------ H.264 视频 RTP 负载格式
H.264 RTPpayload格式------H.264 视频 RTP 负载格式1. 网络抽象层单元类型 (NALU)NALU 头由一个字节组成,它的语法如下: +---------------+ |0|1|2|3|4|5|6|7| +-+-+-+-+-+-+-+-+ |F|NRI| Type | +-转载 2013-10-31 20:05:16 · 1584 阅读 · 0 评论 -
__attribute__机制介绍
1. __attribute__GNU C的一大特色(却不被初学者所知)就是__attribute__机制。__attribute__可以设置函数属性(Function Attribute)、变量属性(Variable Attribute)和类型属性(Type Attribute)__attribute__前后都有两个下划线,并且后面会紧跟一对原括弧,括弧里面是相应的__attribu转载 2013-10-18 11:32:31 · 571 阅读 · 0 评论