H.264媒体流AnnexB和AVCC格式分析 及 FFmpeg解析mp4的H.264码流方法

本文介绍了H.264编码的两种码流格式——AnnexB和AVCC,详细阐述了NALU结构、SPS与PPS参数,并提供了FFmpeg解析mp4中H.264码流的方法,涉及关键代码示例。
摘要由CSDN通过智能技术生成

H264码流分两种组织方式,一种是AnnexB格式,一种是AVCC格式。

首先要了解的是H.264编码规范只是规定了如何编码,并没有规定以何种方式来排列编码后的数据。就如同AES算法只是规定如何加密一组数据,并没有强制规定如果分组。H.264规范没有规定如何组织数据,但是在附录B中提供了一种可选方案,即Annex B格式。

H.264 NALU 概念

H.264视频编码后的数据叫NALU(Network Abstraction Layer Units)
NALU有多种类型,分为两大类:VCL(Video Coding Layer) 和 非VCL。VCL是图像编码数据,非VCL为编码参数信息。NALU结构头部指明类型,类型字段如下。

NALU类型 说明 是否VCL
0 Unspecified non-VCL
1 Coded slice of a non-IDR picture VCL
2 Coded slice data partition A VCL
3 Coded slice data partition B VCL
4 Coded slice data partition C VCL
5 Coded slice of an IDR picture VCL
6 Supplemental enhancement information (SEI) non-VCL
7 Sequence parameter set (SPS) non-VCL
8 Picture parameter set (PPS) non-VCL
9 Access unit delimiter non-VCL
10 End of sequence non-VCL
11 End of stream non-VCL
12 Filler data non-VCL
13 Sequence parameter set extension non-VCL
14 Prefix NAL unit non-VCL
15 Subset sequence parameter set non-VCL
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值