H.264/MPEG-4:高质量视频数据流传播的视频多媒体数字信号编解码器(Video CODEC For High Quality Video Str
H.264 和 MPEG-4 的第十部分,也叫做高级视频编码(AVC),是由 ITU 和 ISO 联合开发的。
H.264/MPEG-4 支持视频压缩编码方式,或用于视频会议和视频电话。H.264 视频多媒体数字信号编解码器拥有广泛的应用,其范围包括各种数字压缩视频,它们来自于 HDTV 广播的国际互联网数据流传输应用程序,其比特率较低,或来自于近似无损失编码的数码电影应用程序。H.264/MPEG-4 可用来进行简便、直接的视频编码,其压缩性能更为强大,并能提供友好的网络视频显示。MPEG-2 标准被广泛地用于视频数据的储存和传输,与之相比,H.264/MPEG-4 在速率 - 失真效率上取得了长足的发展,提供了节省传输比特率的两个条件之一。H.264 比 H.263 的编码增益要高出25%到50%之多,具体百分比要取决于应用程序的类型。
H.264/MPEG-4 设计包括视频编码层(VCL)和网络提取层(NAL),前者能够有效地显示视频数据的内容,而后者以一种适合特定传输层(如实时传输协议)进行数据传输的方式提供视频显示的格式和头信息。
所有数据都存放在 NAL 单元中,每个单元中包含数据的字节数都为整数。NAL 单元可以指定一种普通的格式,数据包传输和比特数据流传输系统都可使用。数据包传输和比特数据流传输的格式都是相同的,除非在比特数据流传输层中,每个 NAL 单元前都可加上一个头编码前缀。
H.264/MPEG-4 视频数据流在网络中传输之前需要进行分组。H.264/MPEG-4 数据流传输协议是实时传输协议(RTP)。
下表列出了 H.264/MPEG-4 的关键功能和优点:
功能 | 优点 |
1/4 样本精确动画补偿 | 同 H.263 一样, H.264 多媒体数字编解码器也使用了 1/4 样本精确动画补偿,不过进一步加强了其功能,降低了其复杂性。 |
显示顺序和相关整体性 | 解码器选用最有效的方式显示动画补偿图片,进而提升整体性能。 |
加权预测 | 动画补偿预测信号支持加权处理,并能接受编码器的补偿,可提升含有隐现图像场影的视觉效果。 |
小块变换 | H.264 主要以 4x4 变换为基础,可以提高某些场影的图片质量。 |
分等级方块变换 | 尽管默认的方块变换的大小为 4x4 ,但该标准不是固定不变的,为了提高某些场影的图片质量,也可使用更大的方块,如 8x8 或 16x16 。 |
短字长变换 | H.264 降低了运算复杂程度,只需要进行 16 位运算。 |
精确匹配逆变换 | 与大多数先前的标准都不同的是,所有利用 H.264 处理视频数据流编码的解码器都能够得到完全相同的图片。 |
算术与内容自适应熵编码 | 多媒体数字编解码器使用了先进的熵编码方法,提高了整体的质量。 |
参数集合结构 | 参数集合结构同其它数据及特殊处理的分离使得信息不易丢失。 |
协议结构
八进制的网络提取层(NAL)单元类型的结构如下:
1 | 3 | 8bit |
F | NRI | Type |
F: Forbidden_zero_bit : H.264 规定其值为 1 时,包含语法错误。
NRI: nal_ref_idc.其值为 00 时,NAL 单元的内容不用于内部图片预测中参考图片的绘制。其值为其它数值时, NAL 单元的编码需要维持参考图片的完整性。
Type: nal_unit_payload 类型
类型 | 数据包 | 类型名 |
0 | 未定义 | |
1-23 | NAL unit | Single NAL unit packet per H.264 |
24 | STAP-A | Single-time aggregation packet |
25 | STAP-B | Single-time aggregation packet |
26 | MTAP16 | Multi-time aggregation packet |
27 | MTAP24 | Multi-time aggregation packet |
28 | FU-A | Fragmentation unit |
29 | FU-B | Fragmentation unit |
30-31 | 未定义 |
既然实时传输协议(RTP)是 H.264/MPEG-4 视频数据流的传输协议,H.264/MPEG-4 数据包也就被封装成 RTP 数据帧。
相关协议:RTP、RTSP、H.245、H.323、H.225、H.261、H.263、MPEG-2
组织来源:ITU(http://www.itu.int/和 ISO(http://www.iso.org/联合开发了 H.264/MPEG-4
相关链接:
http://www.javvin.com/protocol/rfc3984.pdf: H.264 视频数据的 RTP 有效负载格式
http://www.vcodex.com/h264.html : H.264 / MPEG-4 第十部分指南