音视频系列之——视频知识入门,一篇就够了
要跟对象微信视频了,我的手机摄像头分辨率是720x1280的,那么拍出的每帧图片就有72012801.58 bit = 11M,想要看流畅画面,每秒需要25帧吧,那么就需要1125=275M的带宽,更甚至1080p的593M,如果不压缩视频,根本带不动。那么你的那些高清好莱坞大片,2个小时呢,不经过压缩怎么存呢?
视频有哪些格式?帧率、码率、分辨率它们是什么关系?什么是压缩?让我们一起来走进视频的内心世界吧。
基础篇:
图像与视频:
什么是图像:
三维自然场景的对象包括:深度,纹理和亮度
二维图像: 纹理和亮度信息
什么是颜色
RGB色彩空间:
三原色:RGB
所有颜色的来源:任何颜色都可以按一定比例的三原色混合产生。
RGB色度空间:每个色度成分通常用8bit表示,范围都是[0,255]
YUV色彩空间:
一般的视频采集芯片输出的码流一般都是YUV数据流的形式。YUV是指亮度参量和色度参量分开表示的像素格式,作用是描述影像色彩及饱和度,用于指定像素的颜色。主要用于电视系统以及模拟视频领域,它将亮度信息(Y)与色彩信息(UV)分离,没有UV信息一样可以显示完整的图像,只不过是黑白的。
· Y:亮度分量 (Luminance)
· UV:2个色度分量 (Chrominance)
· YUV更好的反应HVS特点
什么是视频?
连续的图像变化每秒超过24帧画面以上时,根据视觉暂留原理,人眼无法辨别单幅的静态画面;看上去是平滑连续的视觉效果,这样连续的画面叫做视频。
image.png数字视频:
自然场景空间和时间的数字采样表示。
·空间采样 解析度(Resolution) (左图,即分辨率)
· 时间采样 帧率: 帧/秒
数字视频系统:
采集: 照相机,摄像机
处理: 编解码器,传输设备
显示: 显示器
人类视觉系统HVS
HVS: 眼睛 神经 大脑
image.png
hvs特点:
对高频信息不敏感
对高对比度更敏感
对亮对比度信息比色度信息更敏感
对运动信息更敏感
帧和场图像
一帧图像包括2场—顶场,底场
音视频的格式有哪些
音频格式:
1、 WAV
WAV是微软公司开发的一种声音文件格式,用于保存windows平台的音频信息资源。是目前PC机上广泛使用的声音文件格式,几乎所有的音频编辑软件都识别WAV格式。
2、 FLAC
Free Lossless Audio Codec的缩写,中文可理解为无损音频压缩编码。FLAC是一套著名的音频压缩编码,其特点是无损压缩。
3、 MP3
也就是指的是MPEG标准中的音频部分,也就是MPEG音频层。根据压缩质量和编码处理的不同分为3层,分别对应 .mp1 , mp2, . mp3 这3种声音文件。
其特点是文件小,音质好;知道现在还是主流音频格式。
4、 WMA
Windows Media Audio, 这种格式以减少数据流量但保持音质的方法来达到比MP3压缩率更高的木器,WMA的压缩率一般可以达到1:18左右;
5、 OGG
OGG格式完全开源,完全免费。与MP3类似,OGG也是对音频进行有损压缩编码,但通过使用更加先进的声学模型去减少损失。因此,相同码率的OGG比MP3的音质更好,文件也更小一些。
6、 AC-3
全称“杜比AC-3“,是杜比公司开发的新一代家庭影院多声道数字音频编码方式。杜比数字AC-3是根据感觉来开发的编码系统多声道环绕声。主流的编解码标准的压缩对象都是YUV图像。
视频格式:
1、 AVI
即音频视频交错格式。是将语音和影响同步组合在一起的文件格式。采用一种有损压缩方式,压缩比较高,画面质量不是太好,但由于绝大多数视频编辑及转换软件导入导出avi格式较快。
2、 MP4
MP4大多使用mpeg-4或H.264视频编码器压缩。RMVB使用real media视频编码器压缩。
3、 MKV
MKV严格的来说并不是一个视频格式,它是多媒体封装格式,最大的特点就是能容纳多种不同类型编码的视频、音频及字幕流,主流的编解码标准的压缩对象都是YUV图像。
4、 FLV
FLV是FLASH VIDEO的简称。由于形成的文件极小;加载速度极快,在网络视频中,运用极为广泛。但仅基本用于网络视频。
5、 MOV
QuickTime具有跨平台、存储空间要求小等特点,采用了有损压缩方式的MOV格式文件,画面效果较AVI格式要稍微好一些。
目前基本仅见于IOS、mac上,但大多数播放器仍支持该格式。
6、3GP
3GP是一种3G流媒体的视频编码格式,3GP是MP4格式的一种简化版本,减少了储存空间和较低的频宽需求,让手机上有限的储存空间可以使用。
进阶篇:
视频帧率、码率、分辨率是什么?到底哪一个影响视频的清晰度?
分辨率:单位 pixel
屏幕中宽高像素点的个数
480x320, 640x480 标清
1280x720p 高清 HD
1920x1080p 全高清 FHD
2560x1440 2k
3840x2160 4k
7680x4320 8k
k是以长为基准说的,清晰度是以宽的清晰度说的。
码率: 单位 kb/s或者Mb/s
码率就是数据传输时单位时间传送的数据位数。影响体积,码率越大,体积越大;码率越小,体积越小。
也就是取样率(并不等同于采样率,采样率单位是HZ,表示每秒采样的次数)
单位时间内取样率越大,精度就越高。常常看见视频播放软件中的1024,720,高清,标清,流畅等,指的就是各种码率。
码流越大,文件体积也越大,其计算公式是文件体积=时间X码率/8。例如,网络上常见的一部90分钟1Mbps码流的720P RMVB视频,其大小计算为:60x90×1Mb/8=675MB。
帧率: 单位 fps
在一秒钟时间内传输图片的帧数,也可以理解为图形处理器每秒能够刷新几次;快速连续地显示帧便形成了运动的假象,也就成了我们看到的视频。
影响画面流畅度,与画面流畅度成正比;帧率越大,画面越流畅;
为什么要进行视频压缩?
- 存储困难。
- 传输困难。
为什么可以压缩:
去除冗余信息:
空间冗余:图像相邻之间有较强的相关性
时间冗余:视频序列的相邻图像之间内容相似
编码冗余:不同像素值出现的概率不同
视觉冗余:人的视觉系统对某些细节不敏感
数据压缩分类:
无损压缩(lossless)
·压缩之前和解压之后图像完全一致
·压缩比低(2:1 ~ 3:1)
例如:Windzip,JPEG-LS
有损压缩:
· 压缩之前和解压之后图像不一致
· 压缩比高(10:1 ~ 20:1)
· 利用人的视觉系统的特性
例如:MPEG-2, H264/AVC,AVS
编解码器:
· 编码器: (Encoder)
压缩信号的设备或程序
解码器(Decoder)
解压缩信号的设备或程序
编解码器:(Codec)
编解码器对
流程:
编解码器:
· 机顶盒
· 数字电视
· 摄像机
· 监控器
主流的视频编码标准:
MPEG-2
MPEG-4 simple profile
H.264/AVC
AVS
VC-1
主流的H264 编码
特点:高压缩、高质量,支持多种网络流媒体传输。
编码依据:
在相邻几帧图像中,有差别的像素只有10%以内的点,亮度差变化不超过2%,色度差的变化只有1%以内。
过程:
先编码一个完整图像帧I,P帧不编码全部图像,只编入与I帧的差别,这样P帧既能保存自己的信息,又只要原大小的1/10以内,同理以后的编码,就将一段图像压缩了。这段图像称为一个序列,表示有相同特点的一段数据。
H264协议定义了三种帧:完整编码的帧为I帧;参考前面的帧只包含差异部分编码的帧为P帧;参考前后帧编码的帧叫B帧。H264核心算法是帧内压缩和帧间压缩。生成I帧的算法用的帧内压缩,生成B、P帧算法用的帧间压缩。
GOP(Group of picture)
关键帧的周期,也就是两个IDR帧之间的距离,一个帧组的最大帧数,一般而言,每一秒视频至少需要使用 1 个关键帧。通过提高GOP值来提高图像质量是有限度的,在遇到场景切换的情况时,H.264编码器会自动强制插入一个I帧,此时实际的GOP值被缩短了。解码某一个P或B帧时,需要先解码得到本GOP内的I帧及之前的N个预测帧才可以,GOP值越长,需要解码的预测帧就越多,seek预览响应的时间也越长。
我们在做视频编辑软件初期,就出现seek卡顿的现象,GOP值设置大了,别人家的小影,美摄,Imovie就很流畅。
1.I帧
I帧为一个序列的第一帧,叫帧内编码帧,也即常说的关键帧。这一帧画面保存完整,解码时只需要本帧数据就可以完成。
2.P帧
P帧画面保存这一帧跟前一帧的差别,解码时需要用以前缓存的画面叠加上本帧数据,最终生成画面;P帧是I帧后相隔1-2帧的编码帧;由于是差值传送,P帧的压缩比较高。
3.B帧
双向预测内插编码帧。B帧是双向差别帧,记录的是本帧与前后帧的差别;B帧不是参考帧,不会造成解码错误的扩散;I帧的压缩率是7,P帧是20,而B帧可达50,所以可节省大量空间。
11月份到了,南方的盆友冷不冷啊,注意保暖。小时候网络不发达,都不知道北京过冬这么暖和!室内穿背心儿!