WebRTC进阶六 / 常见音视频名词解析

451 阅读5分钟

在前面的文章中已经介绍了一些WebRTC的概念,这一章开始介绍一些音视频中常见的名词,废话不多说我们直接开始吧

音视频相关

YUV

YUV 是一种颜色编码方法,和它等同的还有 RGB 颜色编码方法。YUV 颜色编码采用的是 明亮度 和 色度 来指定像素的颜色。 其中,Y 表示明亮度(Luminance、Luma),而 U 和 V 表示色度(Chrominance、Chroma)。 而色度又定义了颜色的两个方面:色调和饱和度。

YUV 图像的主流采样方式有如下三种:

  • YUV 4:4:4 采样
  • YUV 4:2:2 采样
  • YUV 4:2:0 采样

分辨率

可以细分为显示分辨率、图像分辨率。

显示器分辨率通常用“水平像素数 X 垂直像素数”的形式表示,如1920x1080等。

图像分辨率是指在计算机中保存和显示一幅数字图像所具有的分辨率,它和图像的像素有直接的关系。例如,一张分辨率为640×480像素的图片,其分辨率就达到了307200像素,也就是常说的30万像素;而一张分辨率为1600×1200的图片,它的像素就是200万这样。分辨率影响图像大小,与图像大小成正比:分辨率越高,图像越大,一般也越清晰;分辨率越低,图像越小。

视频帧率

帧就是影像动画中最小单位的单幅影像画面,相当于电影胶片上的每一格镜头。 一帧就是一幅静止的画面,连续的帧就形成动画,如电视图象等。

我们通常说帧数,简单地说,就是在1秒钟时间里传输的图片的帧数,也可以理解为图形处理器每秒钟能够刷新几次,通常用fps表示。每一帧都是静止的图象,快速连续地显示帧便形成了运动的假象。高的帧率可以得到更流畅、更逼真的动画。每秒钟帧数 (fps) 愈多,所显示的动作就会愈流畅。

码率

视频码率就是单位时间传送的比特bit数,一般我们用的单位是kbps即千位每秒。通俗一点的理解就是取样率,单位时间内取样率越大,精度就越高,处理出来的文件就越接近原始文件。

i帧,p帧,b帧

  • I 帧:关键帧,又称帧内编码帧,压缩率低,是一种自带全部信息的独立帧,无需参考其他图像便可独立进行解码成一幅完整的图像。

  • P 帧:参考帧,又称帧间预测编码帧,压缩率较高,需要参考前面的I帧才能进行编码。

  • B 帧:前后参考帧,又称双向预测编码帧。压缩率最高,解码时不光依赖前面已经解码的帧,而且还依赖它后面的 P 帧。要解码B帧,不仅要取得之前的缓存画面,还要解码之后的画面,通过前后画面的与本帧数据的叠加取得最终的画面。B帧压缩率高,但是解码时CPU的负荷会比较大。

编码

一般是指压缩编码技术,就是指通过压缩技术,将原始音视频格式转换成另一种视频格式文件的方式。视频是连续的图像序列,由连续的帧构成,一帧即为一幅图像。由于人眼的视觉暂留效应,当帧序列以一定的速率播放时,我们看到的就是动作连续的视频。由于连续的帧之间相似性极高,为便于储存传输,我们需要对原始的视频进行编码压缩,以去除空间、时间维度的冗余。

常见的视频编码方式有MPEG系列的Mpeg4、Mpeg4 AVC等,H.26x系列的H.264、H.264、H.265/HEVC等,以及Google开发的VP8、VP9。 常见的音频编码方式有PCM、WAV、MP3、OGG、AAC等

采样频率

采样频率,也称为采样速度或者采样率,定义了单位时间内从连续信号中提取并组成离散信号的采样个数,它用赫兹(Hz)来表示。采样频率的倒数是采样周期或者叫作采样时间,它是采样之间的时间间隔。通俗的讲采样频率是指计算机单位时间内能够采集多少个信号样本。人对频率的识别范围是 20HZ - 20000HZ。

网络相关

NAT

NAT(Network Address Translation),是指网络地址转换,1994年提出的。

它可以将IP数据报文头中的IP地址转换为另一个IP地址,并通过转换端口号达到地址重用的目的。NAT作为一种缓解IPv4公网地址枯竭的过渡技术,由于实现简单,得到了广泛应用

Mbps

Mbps是megabits per second的缩写,是一种传输速率单位,指每秒传输的位(比特)数量。1Mbps代表每秒传输1,000,000位(bit),即每秒传输的数据量为:1,000,000/8=125,000Byte/s。其中:

  • bit代表位或比特,存放一位二进制数,即 0 或 1,最小的存储单位

  • Byte代表字节,8个二进制位为一个字节,即1Byte=8bit,Byte为数据量常用单位

注意:

字母大小写的区别,小写b代表bit大写B代表Byte,不能混用;Mbps缩写中严格限定M为大写,b、p、s为小写。

常用单位还有Kbps、Gbps。

MTU

最大传输单元MTU(Maximum Transmission Unit,MTU),是指网络能够传输的最大数据包大小,以字节为单位。MTU的大小决定了发送端一次能够发送报文的最大字节数。如果MTU超过了接收端所能够承受的最大值,或者是超过了发送路径上途经的某台设备所能够承受的最大值,就会造成报文分片甚至丢弃,加重网络传输的负担。如果太小,那实际传送的数据量就会过小,影响传输效率。