跳到主要内容

13.2 Example of Multi-Picture Slice Interleaving (多图像条带交织示例)

13.2. Example of Multi-Picture Slice Interleaving (多图像条带交织示例)

下面给出多图像条带交织的示例. 下图以输出顺序 (output order) 展示一段编码视频序列的子集. R 表示参考图像 (reference picture), N 表示非参考图像 (non-reference picture), 数字表示相对输出时间.

   ... R1 N2 R3 N4 R5 ...

这些图像从左到右的解码顺序 (decoding order) 如下:

   ... R1 R3 N2 R5 N4 ...

图像 R1, R3, N2, R5, N4 的 NAL 单元分别标以 DON 等于 1, 2, 3, 4, 5.

每个参考图像包含三个条带组 (slice group), 其宏块分布如下 (数字表示 Quarter Common Intermediate Format (四分之一通用中间格式, QCIF) 帧中各宏块所属条带组编号):

   0 1 2 0 1 2 0 1 2 0 1
2 0 1 2 0 1 2 0 1 2 0
1 2 0 1 2 0 1 2 0 1 2
0 1 2 0 1 2 0 1 2 0 1
2 0 1 2 0 1 2 0 1 2 0
1 2 0 1 2 0 1 2 0 1 2
0 1 2 0 1 2 0 1 2 0 1
2 0 1 2 0 1 2 0 1 2 0
1 2 0 1 2 0 1 2 0 1 2

为简化起见, 假设每个条带组的所有宏块都在一个条带 (slice) 内. 由三个连续的参考图像构造三个 MTAP (Multi-Time Aggregation Packet, 多时间聚合分组), 每个 MTAP 含三个聚合单元 (aggregation unit), 每个聚合单元包含某一整条带组的全部宏块. 第一个 MTAP 包含图像 R1 的条带组 0, 图像 R3 的条带组 1, 图像 R5 的条带组 2. 第二个 MTAP 包含图像 R1 的条带组 1, 图像 R3 的条带组 2, 图像 R5 的条带组 0. 第三个 MTAP 包含图像 R1 的条带组 2, 图像 R3 的条带组 0, 图像 R5 的条带组 1. 每个非参考图像封装在一个 STAP-B 中.

于是 NAL 单元的传输顺序如下:

   R1, slice group 0, DON 1, carried in MTAP,RTP SN: N
R3, slice group 1, DON 2, carried in MTAP,RTP SN: N
R5, slice group 2, DON 4, carried in MTAP,RTP SN: N
R1, slice group 1, DON 1, carried in MTAP,RTP SN: N+1
R3, slice group 2, DON 2, carried in MTAP,RTP SN: N+1
R5, slice group 0, DON 4, carried in MTAP,RTP SN: N+1
R1, slice group 2, DON 1, carried in MTAP,RTP SN: N+2
R3, slice group 1, DON 2, carried in MTAP,RTP SN: N+2
R5, slice group 0, DON 4, carried in MTAP,RTP SN: N+2
N2, DON 3, carried in STAP-B, RTP SN: N+3
N4, DON 5, carried in STAP-B, RTP SN: N+4

接收端可根据与各 NAL 单元关联的 DON 值, 将 NAL 单元重新整理为解码顺序.

若某个 MTAP 丢失, 空间相邻且时间同位的宏块仍可收到, 可用于高效掩盖丢失. 若某个 STAP 丢失, 丢失效应不会在时间上扩散.