⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rtp_rfc3984_h264_over_rtp_cn.txt

📁 H264 RTP格式 学习H264流传输的好文档。中文版(RFC3984)
💻 TXT
📖 第 1 页 / 共 5 页
字号:
 

                    H.264视频的RTP荷载格式

Status of This Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2005).

Abstract

   This memo describes an RTP Payload format for the ITU-T
   Recommendation H.264 video codec and the technically identical
   ISO/IEC International Standard 14496-10 video codec.  The RTP payload
   format allows for packetization of one or more Network Abstraction
   Layer Units (NALUs), produced by an H.264 video encoder, in each RTP
   payload.  The payload format has wide applicability, as it supports
   applications from simple low bit-rate conversational usage, to
   Internet video streaming with interleaved transmission, to high bit-
   rate video-on-demand.

目录

   1.  介绍        ........................................  3
       1.1.  H.264 Codec    ...............................  3
       1.2.  参数集概念         ...........................  4
       1.3.  网络抽象层单元类型............................  5
   2.  约定       .........................................  6
   3.  范围 ...............................................  6
   4.  定义和缩写         .................................  6
       4.1.  定义     .....................................  6
   5.  RTP 荷载格式   .....................................  8
       5.1.  RTP 头的使用..................................  8
       5.2.  RTP荷载格式的公共使用           .............. 11
       5.3.  NAL单言字节的用法 ............................ 12
       5.4.  打包方式  .................................... 14
       5.5.  解码顺序号  (DON)............................. 15
       5.6.  单个NAL单元包................................. 18
       5.7.  复合包       ................................. 18
       5.8.  分片单元 (FUs) ............................... 27
   6.  分包规则         ................................... 31
       6.1.  公共分包规则    .............................. 31
       6.2.  单个NAL单元方式............................... 32
       6.3.  非交错方式     ............................... 32
       6.4.  交错方式       ............................... 33
   7.  打包过程 (信息)             ........................ 33
       7.1.  单NAL单元和非交错方式         ................ 33
       7.2.  交错方式       ............................... 34
       7.3.  附加的打包原则              .................. 36
   8.  荷载格式参数     ................................... 37
       8.1.  MIME 注册 .................................... 37
       8.2.  SDP 参数...................................... 52
       8.3.  例子.......................................... 58
       8.4.  参数集考虑        ............................ 60
   9.  安全考虑     ....................................... 62
   10. 拥塞控制............................................ 63
   11. IANA考虑 ........................................... 64
   12. 信息化附录: 应用例子            .................... 65
       12.1. 根据ITU-T H.241 附录A的视频电话............... 65
       12.2. 没有分片数据分区,没有NAL单元聚合的视频电话... 65
       12.3. 使用NAL单元聚合交错打包的视频电话............. 66
       12.4. 使用数据分区的视频电话      .................. 66
       12.5. 使用FU和向前纠错的视频电话和流................ 67
       12.6. 低位率流    .................................. 69
       12.7. 视频流中健壮的包调度             ............. 70
   13. 信息化附录:解码顺序号的原理                    ..... 71
       13.1. 介绍.......................................... 71
       13.2. 多图像片断交错的例子             ............. 71
       13.3. 健壮包调度的例子          .................... 73
       13.4. 冗余编码片断健壮传输调度的例子................ 77
       13.5. 其它设计可能的提醒         ................... 77
   14. 致谢  .............................................. 78
   15. 参考 ............................................... 78
       15.1. 标准化参考.................................... 78
       15.2. 参考性的参考.................................. 79
   作者地址................................................ 81
   完全版权声明  .......................................... 83

1.  介绍

1.1.  H.264 Codec

   本文指定一个RTP荷载规范用于ITU-T H.264 视频编码标准(ISO/IEC 14496 Part 10 [2])(两个都称为高级视频编码AVC).  H.264建议在2005年5月被ITU-T采纳, 草案规范对于公共回顾可用[8]. 本文H.264 缩写用于codec和标准,但是本文等价于采纳 ISO/IEC相似的编码标准.

   H.264 视频 codec又非常广泛的应用覆盖所有格式的数字压缩视频格式,从低带宽的Internet流应用到HDTV广播和数字影院应用。和当前的技术状态比较, 整个H.264的性能被报告节省50%的位率。例如,数字卫星TV质量被报告在1.5 Mbit/s,就可以实现,而当前的MPEG 2的操作点在大约3.5 Mbit/s [9].

   该codec规范自己概念上区分[1]视频编码层(VCL)和网络抽象层(NAL). VCL包含Codec的信令处理功能;以及如转换,量化,运动补偿预测机制;以及循环过滤器。他遵从今天大多数视频codec的一般概念,基于宏快的编码器,使用基于运动补偿的图像间预测和残余信号的转换编码。VCL编码器输出片断: 一个位串包含整数数目宏快的宏块数据,以及片断头信息(包含片断内第一个宏快的空间地址, 初始量化参数以及相似信息). 片断内的宏快按照扫描顺序安排,除非指定一个不同的宏块分配,通过使用被称为灵活宏块顺序语法Flexible Macroblock Ordering syntax.图像内的预测只用于一个片断内部。更多信息在[9]提供.

   (NAL)编码器封装VCL编码器输出的片断到网络抽象层单元(NAL units),它适合于通过包网路传输或用于面向包的多路复用环境。H.264的附录B定义封装过程传输这样的NAL单元通过面向字节流的网络。本文档范围, 附录 B 不相关的。 

   NAL使用NAL单元. 一个NAL单元由一字节的头和荷载字节串组成。 头指示NAL单元的类型, 是否有位错误或语法冲突在NAL单元荷载中,以及对于解码过程该NAL单元相对重要性的信息。本RTP荷载规范被设计成不了解NAL单元荷载的位串。

   H.264的一个主要特性是传输时间,解码时间,图像以及片断采样演示时间完全的解耦合。H.264中指定的解码过程是不知道时间的, 并且H.264语法没有运送如跳过帧数目(在早期视频压缩标准,时间参考格式中是普遍的)信息.同时,有的NAL单元影响许多图像,因此固有的是无时间性的。因为这样的原因,处理RTP时戳要求对于采样或演示时间没有定义或者在传输时间不知道的NAL单元进行一些特殊的考虑。 

1.2.  参数集概念

   H.264一个非常基本的设计概念是产生自包含包, 使得如RFC2429的头重复或MPEG-4的头扩展编码(HEC)[11]机制变得不必要。这是通过从媒体流解耦合不止一个片断的相对信息来实现的。高层meta信息应该可靠/异步的发送,事先不和包含片断包的RTP包流发送。(对于没有通过带外传输信道发送本信息的应用,通过带内发送本信息也提供了手段)。高层参数的组合被称为参数集。H.264规范包括两类参数集:顺序参数集和图像参数集。一个活动顺序参数集在一个编码视频序列中保持不变,一个活动图像参数集在一个编码图像里保持不变。顺序和图像参数集结构包含如图像大小,采用的可选的编码模式,宏块到片断组映射等信息。

   为了改变图像参数(如图像大小)而不用同步传送参数集修改给片断包流,编码器和解码器可以维护不止一个顺序和图像参数集的列表。每个片断头包含一个码字指示使用的顺序和图像参数集。

   本机制允许从包流中解耦合参数集的传输,通过外部手段传输他们(即,作为能力交换的副作用),或通过一个(可靠或不可靠)控制协议他们从没有被传送但是被应用设计规范修复甚至是可能的。

1.3.  网络抽象层单元类型

   可以在[12], [13],[14]中找到关于NAL设计的学习信息.

   所有NAL单元有一个单个NAL单元类型字节,他也作为本RTP荷载格式的荷载头.后面立即跟随NAL单元的荷载。

   NAL单元类型字节的语法语义在[1]中指定,但是NAL单元类型的基本属性总结如下。NAL单元类型字节格式如下:
   
      +---------------+
      |0|1|2|3|4|5|6|7|
      +-+-+-+-+-+-+-+-+
      |F|NRI|  Type   |
      +---------------+

   NAL单元类型字节部件的语义在H.264规范中制定, 简要描述如下.

   F: 1 bit
      forbidden_zero_bit.  H.264规范声明设置为1指示语法违例。

   NRI: 2 bits
      nal_ref_idc.  00值指示NAL单元的不用于帧间图像预测的重构参考图像。这样的NAL单元可以被丢弃而不用冒参考图像完整性的风险。大于0的值指示NAL单元的解码要求维护参考图像的完整性。

   Type: 5 bits
      nal_unit_type.  本部件指定NAL单元荷载类型定义在[1]的表 7-1中和本文后面。为了参考所有当前定义的NAL单元类型和他们的语义,参考 [1]的7.4.1.

   本文引入新的NAL单元类型,在5.2演示.  定义在本文的NAL单元类型在[1]中标记为未指定。但是,本规范扩展了F和 NRI的语义,象5.3描述的那样.

2.  Conventions

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in BCP 14, RFC 2119 [3].

   This specification uses the notion of setting and clearing a bit when
   bit fields are handled.  Setting a bit is the same as assigning that
   bit the value of 1 (On).  Clearing a bit is the same as assigning
   that bit the value of 0 (Off).

3.  Scope

   This payload specification can only be used to carry the "naked"
   H.264 NAL unit stream over RTP, and not the bitstream format
   discussed in Annex B of H.264.  Likely, the first applications of
   this specification will be in the conversational multimedia field,
   video telephony or video conferencing, but the payload format also
   covers other applications, such as Internet streaming and TV over IP.

4.  定义和缩写

4.1.  定义

   本文档使用[1]中的定义. 为了方便以下定义在[1]中的词语总结出来:
   
      access unit: 一组NAL单元总包括一个主要的编码图像。除了主要的编码图像,一个 access unit也可以包含一个或多个冗余编码图像或其他的不包括片断或编码图像片断分区数据的NAL单元 。access unit的解码总是导致一个解码的图像。

      coded video sequence: A sequence of access units that consists, in
      decoding order, of an instantaneous decoding refresh (IDR) access
      unit followed by zero or more non-IDR access units including all
      subsequent access units up to but not including any subsequent IDR
      access unit.

      IDR access unit: An access unit in which the primary coded picture
      is an IDR picture.

      IDR picture: A coded picture containing only slices with I or SI
      slice types that causes a "reset" in the decoding process.  After
      the decoding of an IDR picture, all following coded pictures in
      decoding order can be decoded without inter prediction from any
      picture decoded prior to the IDR picture.

      primary coded picture: The coded representation of a picture to be
      used by the decoding process for a bitstream conforming to H.264.
      The primary coded picture contains all macroblocks of the picture.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -