当前文档主要讨论的是H.264(国际电信联盟H系列建议书,针对视听及多媒体系统的通用视听业务的先进视频编码)中的编码和解码流程,特别是图像标记存储在解码图像缓冲区(DPB)中的操作。以下是一些关键知识点:
1. **解码图像缓存管理**:
- DPB(Decoding Picture Buffer)是编码解码过程中用来暂存解码图像的存储区域,可以存储帧、补偿场对或单独的非成对场,用于后续的输出或者参考。
- 填充度是以帧为单位衡量的,初始化时为0,随着解码过程,访问单元从CPB(Coding Parameter Buffer)移除时,填充度会相应变化。
2. **帧缓存和“不存在”图像存储**:
- 解码处理过程中,通过检测确定是否需要“不存在”帧,并按照特定规则标记它们为“不需输出”或“未用于参考”。
- 当DPB填充度达到最大值时,会执行排除处理,找到空闲的帧缓存来存储“不存在”帧。
3. **图像解码和输出策略**:
- 主编码图像首先解码并临时存储,但不直接放入DPB,可能会根据IDR(Instantaneous Decoding Refresh)图像的特性决定是否输出前一帧的图像。
- IDR图像会清空DPB,所有参考图像标记为“未用于参考”,确保图像解码的连续性。
- 当图像包含特定标志(如memory_management_control_operation = 5)或no_output_of_prior_pics_flag条件不满足时,也会触发特定的清除过程。
4. **参考图像存储**:
- 当解码的当前图像为参考图像时,它会被标记为“需要输出”,如果它是补偿场对中的第二场,它的存在位置与第一场相同,以便于后续的输出。
5. **H.264标准的发展背景和目标**:
- H.264标准是在H.261、H.262和H.263等前代视频编码标准基础上发展起来的,旨在提供更高的运动图像压缩比,适用于视频会议、数字存储、电视广播、互联网流媒体和通信等多种应用场景。
- 该标准支持灵活的网络适应性和多种视频质量级别,如高级、高级10、高级4:2:2和高级4:4:4,扩展了标准的应用范围和视频质量。
通过遵循这些规定,视频编码器和解码器能够在保持高质量的同时,适应各种复杂的网络和存储需求。了解这些细节对于开发和优化视频处理软件以及在实际应用中实现高效的数据传输和处理至关重要。