算法
文章平均质量分 80
460833359
这个作者很懒,什么都没留下…
展开
-
libuv源码分析之queue
libuv的queue实现得很博大精深。严重考验了c指针的理解。今天就分享一下他的实现。首先从一个typedef开始typedef void *QUEUE[2];这个是c语言中定义类型别名的一种方式。比如我们定义一个变量QUEUE q就相当于void *q[2];即一个数组,他每个元素是void型的指针。下面我们接着分析四个举足轻重的宏定义,理解他们就相当于理解了libuv的队列。在分析之前,我们先来回顾一下数组指针和二维数组的知识。int a[2];// 数组指针int (*转载 2021-07-12 10:22:31 · 174 阅读 · 1 评论 -
G711编码原理及代码
G711编码的声音清晰度好,语音自然度高,但压缩效率低,数据量大常在32Kbps以上。常用于电话语音(推荐使用64Kbps),sampling rate为8K,压缩率为2,即把S16格式的数据压缩为8bit,分为a-law和u-law。 a-law也叫g711a,输入的是13位(其实是S16的高13位),使用在欧洲和其他地区,这种格式是经过特别设计的,便于数字设备进行快速运算。运...转载 2018-09-18 09:53:57 · 2786 阅读 · 0 评论