编码机

四种技术方式看透直播软件app开发中视频

发布时间:2022/12/9 20:00:01   
白驳风 http://www.jk100f.com/m/

我们都知道直播软件app开发中离不开视频编码的功劳,依靠着压缩数据来提升传输效率,那么视频编码为什么能够把5M的数据压缩成0.5M的效果呢?今天就从这四个方面来学习一下编码的原理机制。

1、空间冗余:通过同一个图像像素之间的相关性去压缩的,例如一张纯色的图片,如果这个图片中的像素值颜色都是同一个值的话,那么保存这个图像数据的时候,那么我们只需要保存一个像素信息和其他的一些信息,比如说尺寸的信息,大小的信息之类的,其实就可以保存这个图像的信息,因为图像所有像素点的值都相同,那么就不需要保存*这么高像素的信息了,这就是直播软件app开发的编码中空间冗余的原理。

直播软件app开发

2、时间冗余:是针视频当中相邻的两个图像来说的,因为我们在直播软件app开发采集的图像当中,在相邻的两个图像当中区别并不大,除非你去切换镜头才会发现,时间冗余就是通过两个图像之间变化不大的部分去除,只保留某一帧的信息,然后下一阵依据上一针保留的信息计算出这一阵的信息,例如直播视频中主流的编码格式H的P帧其实就是去掉时间冗余之后得出来的数据帧。

直播软件app开发

3、编码冗余:我们都知道图像在计算机中都是用二进制来表示的,如何用像素去表示图像信息则是由编码器去决定的,同一个编码器对于不同的图片进行编码就会用不同的方式去编码,如果用同一个编码方式的话就可能出现编码后的数据较大,就称为编码冗余,编码冗余出现的原因就是像素值出现的概率不同,如何消除产生的编码冗余呢,在直播软件app开发中一般是采用哈弗曼编码,这种方式是依据字符出现的概率去构建编码表,出现几率高就使用比较短多编码方式,出现几率低就是用比较长的编码方式,使得编码之后的数据平均长度降低,从而极大的压缩数据。

直播软件app开发

4、视觉冗余:视觉冗余是一种有损的压缩方式,是根据人类视觉系统对图像的某些敏感度来做的处理,因为人对图像的某些部分也不是太敏感,例如对于色度的变化,也就是说即使我们把图像缺失了一部分,或变化了某一部分,人眼也是不易察觉的,所以这些部分是可以去除的,也就是视觉冗余。去除后解码时就不能像时间冗余、编码冗余一样能够恢复原来的数据了,所以这样的方式会丢失原来的数据,也就是有损压缩。

直播软件app开发中,编码其实就是把空间冗余、时间冗余、编码冗余和视觉冗余去除后压缩然后产生的数据。

以上内容为作者“云豹短视频嘉兴”原创,未经作者本人同意,禁止转载,否则将追究相关法律责任



转载请注明:http://www.aideyishus.com/lkyy/2540.html
------分隔线----------------------------