本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
网络抽象层 (NAL) 适配标记参考
本节包含有关 StreamInfo.NalAdaptationFlags
枚举的可用标记的信息。
应用程序中的基本流
-
Annex-B 格式用两个字节的零,后跟一三个字节的零,然后是数字 1(称为起始码,例如 00000001)来分隔NALUs (网络抽象层单元
)。 -
AVCC 格式也会换行 NALUs,但每个 NALU 前面都有一个值,该值表示 NALU 的大小(通常为四个字节)。
许多编码器生成 Annex-B 比特流格式。一些更高级别的比特流处理器(例如播放引擎或中的媒体源扩展 (MSE) 播放器)
H.264 编解码器的编解码器私有数据 (CPD),即SPS/PPS (Sequence Parameter Set/Picture参数集) 也可以采用 Annex-B 或 AVCC 格式。但是,对 CPD 而言,格式与前面描述的有所不同。
这些标志告诉 SDK 将帧数据和 CPD 改编 NALUs 为 AVCC 或 Annex-B,如下所示:
标记 | 适配 |
---|---|
NAL_ADAPTATION_FLAG_NONE |
没有改编。 |
NAL_ADAPTATION_ANNEXB_NALS |
将附件 B 改编成 AVC NALUs C。 NALUs |
NAL_ADAPTATION_AVCC_NALS |
将 AVCC 改编 NALUs 成附件 B NALUs。 |
NAL_ADAPTATION_ANNEXB_CPD_NALS |
将编解码器私 NALUs 有数据的附件 B 改编为 AVCC 格式。 NALUs |
NAL_ADAPTATION_ANNEXB_CPD_AND_FRAME_NALS |
将编解码器 NALUs 的 Annex-B 和帧私有数据改编为 AVCC 格式。 NALUs |
有关 NALU 类型的更多信息,请参阅 RFC 3984 中的 Section 1.3: Network Abstraction Layer Unit Types