当前位置:网站首页>H.264概念

H.264概念

2022-06-11 18:00:00 陈小帅hh

一、H.264概念

H.264是由ITU-T视频专家组和ISO/IEC动态图像专家组联合组成的联合组(JVT,Joint Video Team)提出的高度压缩数据视频编解码器标准。

二、H.264的数据格式

H.264是由**视频编码层(VCL)网络适配层(NAL)**组成。

①VCL:H264编码/压缩的核心,主要负责将视频数据编码/压缩,再切分。

②NAL层的基本单位叫NALU(网络抽象层单元)
blog.csdnimg.cn/25b161a63ce74813a55a1b090a51d6ea.png)
NALU = NALU header + NALU payload
(1)大致结构:
在这里插入图片描述
RBSP:原始数据(可能是编码的视频数据,也可能是其他数据),加上用于对齐的“0”
比特位。

(2)NALU的头(8bit)
在这里插入图片描述
(3)nalu的类型
![在这里插入图片描述](https://img-

三、VCL是如何管理H.264视频数据

①压缩:预测(帧内预测和帧间预测)–>DCT变化和量化–>比特流编码。
②切分数据,主要为了第三步。“切片(slice)”、“宏块(macroblock)”是在VCL中的概念,一方面提高编码效率和降低编码率,另一方面提高网络传输的灵活性。
③包装成NAL。
VCL最后会被包装成NAL。

四、NAL头的数据结构体

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

五、H.264码流结构

H.264 = start_code + NALU
(start_code:00000001 or 000001)
在这里插入图片描述
在这里插入图片描述

六、H.264三种帧

大部分的视频压缩,都对帧有做分类,主要是分为I帧、P帧、B帧,这些并不是H264所特有的,只不过我们以H264来讲这些分类。

①I帧:Intra-coded picture,表示关键帧,全帧内压缩。压缩这一帧不需要参考其他帧。

②P帧:Predicted picture,前向预测帧,压缩这一帧需要参考之前的一个I/P帧作为基准,进行运动估计,以获得比I帧更大的压缩比。

③B帧:Bi-predictive picture,双向预测帧。压缩这一帧不仅要参考前一个I/P帧,还需要参考之后的一个P帧,进行双向运动估计,某些情况下可以获得比P帧更高的压缩比。

压缩比:B > P > I
图像质量:I > P > B (因为会对运动估计得到的运动矢量进行量化,引入了损耗。且P、B帧由于可能参考了其他的P帧(链),从而更容易引起错误积累和错误漂移。)

七、解码时间戳和显示时间戳

在这里插入图片描述

原网站

版权声明
本文为[陈小帅hh]所创,转载请带上原文链接,感谢
https://blog.csdn.net/PPPPPPPKD/article/details/125015298