没有合适的资源?快使用搜索试试~ 我知道了~
首页ITU-T H.264: 2014年高级视频编码标准
ITU-T H.264: 2014年高级视频编码标准
需积分: 9 7 下载量 187 浏览量
更新于2024-07-22
收藏 11.98MB PDF 举报
"H264-2014-02"
H264,全称为ITU-T H.264或国际标准ISO/IEC 14496-10,是一种先进的视频编码标准,它在原有的视频编码技术(如H.261、H.262和H.263)基础上进行了重大改进,以应对日益增长的高效率视频压缩需求。这一标准被广泛应用于视频会议、数字存储媒体、电视广播、互联网流媒体以及通信等多个领域。H264设计的核心目标是使编码后的视频数据能在各种网络环境中灵活应用。
H264编码技术的核心优势在于其高效的压缩率,它采用了多项创新的编码策略来降低数据量,同时保持高质量的视频输出。这些策略包括:块运动估计与补偿、多参考帧、熵编码、去块效应滤波器、预测编码、自适应量化、以及高级熵编码等。通过这些方法,H264能够实现对视频内容的精细分析和高效压缩,使得视频在低带宽下也能流畅播放。
H264标准的另一个关键特性是其网络适应性。它支持不同比特率、分辨率和帧率的视频流,并且允许在网络条件变化时进行动态调整,这在互联网流媒体和移动通信中尤其重要。此外,H264还支持错误恢复机制,可以在网络丢包的情况下尽可能减少视频质量的损失。
在推荐和标准文档的框架中,H264属于ITU-T系列的H.260到H.279部分,这部分专门涉及“编码中的移动视频”。这个系列还包括其他与音频、视频服务基础设施相关的标准,如传输复用、同步、系统方面、通信程序等,这些标准共同构成了视听服务的基础。
H264是一个强大的视频编码标准,它结合了高效率的压缩算法和网络适应性,广泛应用于各种现代多媒体服务中。随着技术的发展,H264不断进化,衍生出如H265(HEVC)等更新的标准,以满足更高清晰度和更低延迟的需求,但H264仍然在很多场景中占据主导地位,因为它在性能和兼容性之间取得了良好的平衡。
xiv Rec. ITU-T H.264 (02/2014)
I.13.2.1 MVCD view scalability information SEI message semantics ................................................................. 714
I.13.2.2 MVCD scalable nesting SEI message semantics .................................................................................... 714
I.13.2.3 Depth representation information SEI message semantics ..................................................................... 715
I.13.2.4 Depth representation SEI element semantics .......................................................................................... 717
I.13.2.5 3D reference displays information SEI message semantics .................................................................... 718
I.13.2.6 Depth timing SEI message semantics ..................................................................................................... 720
I.13.2.7 Depth sampling information SEI message semantics ............................................................................. 720
I.14 Video usability information ............................................................................................................................ 722
I.14.1 MVCD VUI parameters extension syntax .............................................................................................. 722
I.14.2 MVCD VUI parameters extension semantics ......................................................................................... 722
Annex J Multiview and depth video with enhanced non-base view coding ................................................................ 725
J.1 Scope .............................................................................................................................................................. 725
J.2 Normative references ...................................................................................................................................... 725
J.3 Definitions ...................................................................................................................................................... 725
J.4 Abbreviations .................................................................................................................................................. 725
J.5 Conventions .................................................................................................................................................... 725
J.6 Source, coded, decoded and output data formats, scanning processes, and neighbouring relationships ........ 725
J.7 Syntax and semantics ...................................................................................................................................... 725
J.7.1 Method of specifying syntax in tabular form .......................................................................................... 726
J.7.2 Specification of syntax functions, categories, and descriptors ................................................................ 726
J.7.3 Syntax in tabular form ............................................................................................................................ 726
J.7.3.1 NAL unit syntax ...................................................................................................................................... 726
J.7.3.2 Raw byte sequence payloads and RBSP trailing bits syntax ................................................................... 726
J.7.3.3 Slice header syntax ................................................................................................................................. 732
J.7.3.4 Slice data syntax ..................................................................................................................................... 735
J.7.3.5 Macroblock layer syntax ......................................................................................................................... 738
J.7.3.6 Macroblock layer in 3D-AVC extension syntax ..................................................................................... 739
J.7.4 Semantics ................................................................................................................................................ 744
J.7.4.1 NAL unit semantics ................................................................................................................................ 745
J.7.4.2 Raw byte sequence payloads and RBSP trailing bits semantics ............................................................. 746
J.7.4.3 Slice header semantics ............................................................................................................................ 751
J.7.4.4 Slice data semantics ................................................................................................................................ 753
J.7.4.5 Macroblock layer semantics.................................................................................................................... 754
J.7.4.6 Macroblock layer in 3D-AVC extension semantics ................................................................................ 754
J.8 3D-AVC decoding process ............................................................................................................................. 755
J.8.1 3D-AVC decoding process for reference picture lists construction ........................................................ 756
J.8.2 3D-AVC inter prediction, inter-view prediction, view synthesis prediction and adaptive luminance
compensation .......................................................................................................................................... 756
J.8.2.1 Derivation process for motion vector components and reference indices ............................................... 759
J.8.2.2 Derivation of prediction weights in depth-range-based weighted prediction .......................................... 768
J.8.2.3 Derivation process for motion vectors and reference indices for adaptive luminance compensation ..... 770
J.8.2.4 Derivation process for prediction weights in adaptive luminance compensation ................................... 770
J.8.3 Specification of bitstream subsets ........................................................................................................... 772
J.8.4 Decoding process for depth range parameters ........................................................................................ 772
J.9 Parsing process ............................................................................................................................................... 773
J.9.1 Alternative CABAC parsing process for slice data and macroblock layer in depth extension ............... 773
J.9.1.1 Initialisation process ............................................................................................................................... 773
J.9.1.2 Binarization process ................................................................................................................................ 775
J.9.1.3 Decoding process flow ............................................................................................................................ 776
J.10 Profiles and levels ........................................................................................................................................... 778
J.10.1 Profiles .................................................................................................................................................... 778
J.10.1.1 Enhanced Multiview Depth High profile ................................................................................................ 778
J.10.1.2 Levels ...................................................................................................................................................... 779
J.10.1.3 Level limits for Enhanced Multiview Depth High profile ...................................................................... 779
J.10.1.4 Profile specific level limits ..................................................................................................................... 779
J.11 Byte stream format .......................................................................................................................................... 779
J.12 3D-AVC hypothetical reference decoder ........................................................................................................ 779
J.13 3D-AVC SEI messages ................................................................................................................................... 780
J.13.1 SEI message syntax................................................................................................................................. 780
J.13.1.1 Constrained depth parameter set identifier SEI message syntax ............................................................. 780
J.13.2 SEI message semantics ........................................................................................................................... 780
Rec. ITU-T H.264 (02/2014) xv
J.13.2.1 Constrained depth parameter set identifier SEI message semantics ....................................................... 780
J.14 Video usability information ............................................................................................................................ 781
List of Figures
Figure 6-1 – Nominal vertical and horizontal locations of 4:2:0 luma and chroma samples in a frame........................... 21
Figure 6-2 – Nominal vertical and horizontal sampling locations of 4:2:0 samples in top and bottom fields .................. 22
Figure 6-3 – Nominal vertical and horizontal locations of 4:2:2 luma and chroma samples in a frame........................... 22
Figure 6-4 – Nominal vertical and horizontal sampling locations of 4:2:2 samples top and bottom fields ...................... 23
Figure 6-5 – Nominal vertical and horizontal locations of 4:4:4 luma and chroma samples in a frame........................... 23
Figure 6-6 – Nominal vertical and horizontal sampling locations of 4:4:4 samples top and bottom fields ...................... 24
Figure 6-7 – A picture with 11 by 9 macroblocks that is partitioned into two slices........................................................ 25
Figure 6-8 – Partitioning of the decoded frame into macroblock pairs ............................................................................ 25
Figure 6-9 – Macroblock partitions, sub-macroblock partitions, macroblock partition scans, and sub-macroblock partition
scans ......................................................................................................................................................................... 26
Figure 6-10 – Scan for 4x4 luma blocks ........................................................................................................................... 27
Figure 6-11 – Scan for 8x8 luma blocks ........................................................................................................................... 28
Figure 6-12 – Neighbouring macroblocks for a given macroblock .................................................................................. 29
Figure 6-13 – Neighbouring macroblocks for a given macroblock in MBAFF frames .................................................... 30
Figure 6-14 – Determination of the neighbouring macroblock, blocks, and partitions (informative) .............................. 31
Figure 7-1 – Structure of an access unit not containing any NAL units with nal_unit_type equal to 0, 7, 8, or in the range
of 12 to 18, inclusive, or in the range of 20 to 31, inclusive ..................................................................................... 72
Figure 8-1 – Intra_4x4 prediction mode directions (informative) .................................................................................. 134
Figure 8-2 – Example for temporal direct-mode motion vector inference (informative) ............................................... 162
Figure 8-3 – Directional segmentation prediction (informative) .................................................................................... 163
Figure 8-4 – Integer samples (shaded blocks with upper-case letters) and fractional sample positions (un-shaded blocks
with lower-case letters) for quarter sample luma interpolation .............................................................................. 170
Figure 8-5 – Fractional sample position dependent variables in chroma interpolation and surrounding integer position
samples A, B, C, and D .......................................................................................................................................... 172
Figure 8-6 – Assignment of the indices of dcY to luma4x4BlkIdx ................................................................................ 178
Figure 8-7 – Assignment of the indices of dcC to chroma4x4BlkIdx: (a) ChromaArrayType equal to 1, (b)
ChromaArrayType equal to 2 ................................................................................................................................. 180
Figure 8-8 – 4x4 block scans. (a) Zig-zag scan. (b) Field scan (informative) ................................................................ 181
Figure 8-9 – 8x8 block scans. (a) 8x8 zig-zag scan. (b) 8x8 field scan (informative) .................................................... 182
Figure 8-10 – Boundaries in a macroblock to be filtered ............................................................................................... 200
Figure 8-11 – Convention for describing samples across a 4x4 block horizontal or vertical boundary ......................... 204
Figure 9-1 – Illustration of CABAC parsing process for a syntax element SE (informative) ........................................ 226
Figure 9-2 – Overview of the arithmetic decoding process for a single bin (informative) ............................................. 272
Figure 9-3 – Flowchart for decoding a decision ............................................................................................................. 274
Figure 9-4 – Flowchart of renormalization ..................................................................................................................... 276
Figure 9-5 – Flowchart of bypass decoding process ....................................................................................................... 277
Figure 9-6 – Flowchart of decoding a decision before termination ................................................................................ 278
xvi Rec. ITU-T H.264 (02/2014)
Figure 9-7 – Flowchart for encoding a decision ............................................................................................................. 280
Figure 9-8 – Flowchart of renormalization in the encoder ............................................................................................. 281
Figure 9-9 – Flowchart of PutBit(B) .............................................................................................................................. 282
Figure 9-10 – Flowchart of encoding bypass .................................................................................................................. 283
Figure 9-11 – Flowchart of encoding a decision before termination .............................................................................. 284
Figure 9-12 – Flowchart of flushing at termination ........................................................................................................ 284
Figure C-1 – Structure of byte streams and NAL unit streams for HRD conformance checks ...................................... 308
Figure C-2 – HRD buffer model ..................................................................................................................................... 310
Figure D-1 – Rearrangement and upconversion of checkerboard interleaving (frame_packing_arrangement_type equal
to 0) ......................................................................................................................................................................... 380
Figure D-2 – Rearrangement and upconversion of column interleaving with frame_packing_arrangement_type equal to 1,
quincunx_sampling_flag equal to 0, and (x, y) equal to (0, 0) or (4, 8) for both constituent frames...................... 380
Figure D-3 – Rearrangement and upconversion of column interleaving with frame_packing_arrangement_type equal to 1,
quincunx_sampling_flag equal to 0, (x, y) equal to (0, 0) or (4, 8) for constituent frame 0 and (x, y) equal to (12, 8)
for constituent frame 1 ............................................................................................................................................ 381
Figure D-4 – Rearrangement and upconversion of row interleaving with frame_packing_arrangement_type equal to 2,
quincunx_sampling_flag equal to 0, and (x, y) equal to (0, 0) or (8, 4) for both constituent frames...................... 381
Figure D-5 – Rearrangement and upconversion of row interleaving with frame_packing_arrangement_type equal to 2,
quincunx_sampling_flag equal to 0, (x, y) equal to (0, 0) or (8, 4) for constituent frame 0, and (x, y) equal to (8, 12)
for constituent frame 1 ............................................................................................................................................ 382
Figure D-6 – Rearrangement and upconversion of side-by-side packing arrangement with
frame_packing_arrangement_type equal to 3, quincunx_sampling_flag equal to 0, and (x, y) equal to (0, 0) or (4, 8)
for both constituent frames ..................................................................................................................................... 382
Figure D-7 – Rearrangement and upconversion of side-by-side packing arrangement with
frame_packing_arrangement_type equal to 3, quincunx_sampling_flag equal to 0, (x, y) equal to (12, 8) for
constituent frame 0, and (x, y) equal to (0, 0) or (4, 8) for constituent frame 1 ...................................................... 383
Figure D-8 – Rearrangement and upconversion of top-bottom packing arrangement with
frame_packing_arrangement_type equal to 4, quincunx_sampling_flag equal to 0, and (x, y) equal to (0, 0) or (8, 4)
for both constituent frames ..................................................................................................................................... 383
Figure D-9 – Rearrangement and upconversion of top-bottom packing arrangement with
frame_packing_arrangement_type equal to 4, quincunx_sampling_flag equal to 0, (x, y) equal to (8, 12) for
constituent frame 0, and (x, y) equal to (0, 0) or (8, 4) for constituent frame 1 ...................................................... 384
Figure D-10 – Rearrangement and upconversion of side-by-side packing arrangement with quincunx sampling
(frame_packing_arrangement_type equal to 3 with quincunx_sampling_flag equal to 1) ..................................... 384
Figure D-11 – Rearrangement of a temporal interleaving frame arrangement (frame_packing_arrangement_type equal to
5) ............................................................................................................................................................................. 385
Figure D-12 – Rearrangement and upconversion of tile format packing arrangement (frame_packing_arrangement_type
equal to 7) ............................................................................................................................................................... 385
Figure E-1 – Location of chroma samples for top and bottom fields for chroma_format_idc equal to 1 (4:2:0 chroma
format) as a function of chroma_sample_loc_type_top_field and chroma_sample_loc_type_bottom_field ......... 397
Rec. ITU-T H.264 (02/2014) xvii
List of Tables
Table 5-1 – Operation precedence from highest (at top of table) to lowest (at bottom of table) ...................................... 17
Table 6-1 – SubWidthC, and SubHeightC values derived from chroma_format_idc and separate_colour_plane_flag .. 20
Table 6-2 – Specification of input and output assignments for clauses 6.4.11.1 to 6.4.11.7 ............................................ 30
Table 6-3 – Specification of mbAddrN ............................................................................................................................ 35
Table 6-4 – Specification of mbAddrN and yM ............................................................................................................... 36
Table 7-1 – NAL unit type codes, syntax element categories, and NAL unit type classes ............................................... 65
Table 7-2 – Assignment of mnemonic names to scaling list indices and specification of fall-back rule .......................... 77
Table 7-3 – Specification of default scaling lists Default_4x4_Intra and Default_4x4_Inter .......................................... 77
Table 7-4 – Specification of default scaling lists Default_8x8_Intra and Default_8x8_Inter .......................................... 78
Table 7-5 – Meaning of primary_pic_type ....................................................................................................................... 85
Table 7-6 – Name association to slice_type ..................................................................................................................... 88
Table 7-7 – modification_of_pic_nums_idc operations for modification of reference picture lists ................................. 94
Table 7-8 – Interpretation of adaptive_ref_pic_marking_mode_flag ............................................................................... 95
Table 7-9 – Memory management control operation (memory_management_control_operation) values ....................... 97
Table 7-10 – Allowed collective macroblock types for slice_type ................................................................................... 99
Table 7-11 – Macroblock types for I slices .................................................................................................................... 101
Table 7-12 – Macroblock type with value 0 for SI slices ............................................................................................... 102
Table 7-13 – Macroblock type values 0 to 4 for P and SP slices .................................................................................... 103
Table 7-14 – Macroblock type values 0 to 22 for B slices ............................................................................................. 104
Table 7-15 – Specification of CodedBlockPatternChroma values ................................................................................. 106
Table 7-16 – Relationship between intra_chroma_pred_mode and spatial prediction modes ........................................ 107
Table 7-17 – Sub-macroblock types in P macroblocks................................................................................................... 108
Table 7-18 – Sub-macroblock types in B macroblocks .................................................................................................. 109
Table 8-1 – Refined slice group map type ...................................................................................................................... 118
Table 8-2 – Specification of Intra4x4PredMode[ luma4x4BlkIdx ] and associated names ............................................ 133
Table 8-3 – Specification of Intra8x8PredMode[ luma8x8BlkIdx ] and associated names ............................................ 139
Table 8-4 – Specification of Intra16x16PredMode and associated names ..................................................................... 146
Table 8-5 – Specification of Intra chroma prediction modes and associated names ...................................................... 148
Table 8-6 – Specification of the variable colPic ............................................................................................................. 156
Table 8-7 – Specification of PicCodingStruct( X ) ......................................................................................................... 156
Table 8-8 – Specification of mbAddrCol, yM, and vertMvScale ................................................................................... 158
Table 8-9 – Assignment of prediction utilization flags .................................................................................................. 160
Table 8-10 – Derivation of the vertical component of the chroma vector in field coding mode .................................... 166
Table 8-11 – Differential full-sample luma locations ..................................................................................................... 170
Table 8-12 – Assignment of the luma prediction sample predPartLX
L
[ x
L
, y
L
] ............................................................ 172
Table 8-13 – Specification of mapping of idx to c
ij
for zig-zag and field scan ............................................................... 182
Table 8-14 – Specification of mapping of idx to c
ij
for 8x8 zig-zag and 8x8 field scan ................................................. 183
Table 8-15 – Specification of QP
C
as a function of qP
I
.................................................................................................. 184
Table 8-16 – Derivation of offset dependent threshold variables ´ and ´ from indexA and indexB .......................... 207
xviii Rec. ITU-T H.264 (02/2014)
Table 8-17 – Value of variable t´
C0
as a function of indexA and bS............................................................................... 208
Table 9-1 – Bit strings with "prefix" and "suffix" bits and assignment to codeNum ranges (informative) .................... 211
Table 9-2 – Exp-Golomb bit strings and codeNum in explicit form and used as ue(v) (informative)............................ 211
Table 9-3 – Assignment of syntax element to codeNum for signed Exp-Golomb coded syntax elements se(v) ........... 212
Table 9-4 – Assignment of codeNum to values of coded_block_pattern for macroblock prediction modes ................. 213
Table 9-5 – coeff_token mapping to TotalCoeff( coeff_token ) and TrailingOnes( coeff_token ) ................................ 217
Table 9-6 – Codeword table for level_prefix (informative) ........................................................................................... 220
Table 9-7 – total_zeros tables for 4x4 blocks with tzVlcIndex 1 to 7 ............................................................................ 222
Table 9-8 – total_zeros tables for 4x4 blocks with tzVlcIndex 8 to 15 .......................................................................... 222
Table 9-9 – total_zeros tables for chroma DC 2x2 and 2x4 blocks ................................................................................ 223
Table 9-10 – Tables for run_before ................................................................................................................................ 224
Table 9-11 – Association of ctxIdx and syntax elements for each slice type in the initialisation process ...................... 228
Table 9-12 – Values of variables m and n for ctxIdx from 0 to 10 ................................................................................. 229
Table 9-13 – Values of variables m and n for ctxIdx from 11 to 23 ............................................................................... 229
Table 9-14 – Values of variables m and n for ctxIdx from 24 to 39 ............................................................................... 230
Table 9-15 – Values of variables m and n for ctxIdx from 40 to 53 ............................................................................... 230
Table 9-16 – Values of variables m and n for ctxIdx from 54 to 59, and 399 to 401 ..................................................... 230
Table 9-17 – Values of variables m and n for ctxIdx from 60 to 69 ............................................................................... 231
Table 9-18 – Values of variables m and n for ctxIdx from 70 to 104 ............................................................................. 231
Table 9-19 – Values of variables m and n for ctxIdx from 105 to 165 ........................................................................... 232
Table 9-20 – Values of variables m and n for ctxIdx from 166 to 226 ........................................................................... 233
Table 9-21 – Values of variables m and n for ctxIdx from 227 to 275 ........................................................................... 234
Table 9-22 – Values of variables m and n for ctxIdx from 277 to 337 ........................................................................... 235
Table 9-23 – Values of variables m and n for ctxIdx from 338 to 398 ........................................................................... 236
Table 9-24 – Values of variables m and n for ctxIdx from 402 to 459 ........................................................................... 237
Table 9-25 – Values of variables m and n for ctxIdx from 460 to 483 ........................................................................... 238
Table 9-26 – Values of variables m and n for ctxIdx from 484 to 571 ........................................................................... 238
Table 9-27 – Values of variables m and n for ctxIdx from 572 to 659 ........................................................................... 240
Table 9-28 – Values of variables m and n for ctxIdx from 660 to 717 ........................................................................... 242
Table 9-29 – Values of variables m and n for ctxIdx from 718 to 775 ........................................................................... 243
Table 9-30 – Values of variables m and n for ctxIdx from 776 to 863 ........................................................................... 244
Table 9-31 – Values of variables m and n for ctxIdx from 864 to 951 ........................................................................... 246
Table 9-32 – Values of variables m and n for ctxIdx from 952 to 1011 ......................................................................... 248
Table 9-33 – Values of variables m and n for ctxIdx from 1012 to 1023 ....................................................................... 249
Table 9-34 – Syntax elements and associated types of binarization, maxBinIdxCtx, and ctxIdxOffset......................... 250
Table 9-35 – Bin string of the unary binarization (informative) ..................................................................................... 253
Table 9-36 – Binarization for macroblock types in I slices ............................................................................................ 255
Table 9-37 – Binarization for macroblock types in P, SP, and B slices ......................................................................... 256
Table 9-38 – Binarization for sub-macroblock types in P, SP, and B slices ................................................................... 257
剩余789页未读,继续阅读
2013-10-28 上传
2018-08-04 上传
2021-09-11 上传
2023-06-10 上传
2023-06-13 上传
2023-06-13 上传
2023-03-11 上传
2023-06-13 上传
2023-06-04 上传
fanbird2008
- 粉丝: 208
- 资源: 249
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 高清艺术文字图标资源,PNG和ICO格式免费下载
- mui框架HTML5应用界面组件使用示例教程
- Vue.js开发利器:chrome-vue-devtools插件解析
- 掌握ElectronBrowserJS:打造跨平台电子应用
- 前端导师教程:构建与部署社交证明页面
- Java多线程与线程安全在断点续传中的实现
- 免Root一键卸载安卓预装应用教程
- 易语言实现高级表格滚动条完美控制技巧
- 超声波测距尺的源码实现
- 数据可视化与交互:构建易用的数据界面
- 实现Discourse外聘回复自动标记的简易插件
- 链表的头插法与尾插法实现及长度计算
- Playwright与Typescript及Mocha集成:自动化UI测试实践指南
- 128x128像素线性工具图标下载集合
- 易语言安装包程序增强版:智能导入与重复库过滤
- 利用AJAX与Spotify API在Google地图中探索世界音乐排行榜
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功