JP2023527453A - ローカルデュアルツリーモードタイプ定義を伴うパレットモード - Google Patents
ローカルデュアルツリーモードタイプ定義を伴うパレットモード Download PDFInfo
- Publication number
- JP2023527453A JP2023527453A JP2022573429A JP2022573429A JP2023527453A JP 2023527453 A JP2023527453 A JP 2023527453A JP 2022573429 A JP2022573429 A JP 2022573429A JP 2022573429 A JP2022573429 A JP 2022573429A JP 2023527453 A JP2023527453 A JP 2023527453A
- Authority
- JP
- Japan
- Prior art keywords
- equal
- coding
- flag
- specifies
- slice
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000009977 dual effect Effects 0.000 title claims description 15
- 238000000034 method Methods 0.000 claims abstract description 333
- 238000012545 processing Methods 0.000 claims abstract description 52
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 claims description 254
- 241000023320 Luma <angiosperm> Species 0.000 claims description 189
- 230000008569 process Effects 0.000 claims description 58
- 238000000638 solvent extraction Methods 0.000 claims description 37
- 238000006243 chemical reaction Methods 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 10
- 230000000694 effects Effects 0.000 claims description 7
- 230000009466 transformation Effects 0.000 claims description 6
- 230000001747 exhibiting effect Effects 0.000 claims 1
- 238000003672 processing method Methods 0.000 abstract description 18
- 208000031212 Autoimmune polyendocrinopathy Diseases 0.000 description 149
- 229920000069 polyphenylene sulfide Polymers 0.000 description 140
- 208000034188 Stiff person spectrum disease Diseases 0.000 description 133
- 229920010524 Syndiotactic polystyrene Polymers 0.000 description 133
- 208000012112 ischiocoxopodopatellar syndrome Diseases 0.000 description 133
- 238000002490 spark plasma sintering Methods 0.000 description 133
- 235000019395 ammonium persulphate Nutrition 0.000 description 121
- 230000003044 adaptive effect Effects 0.000 description 61
- 239000013598 vector Substances 0.000 description 60
- 238000001914 filtration Methods 0.000 description 40
- 238000013139 quantization Methods 0.000 description 32
- 238000013507 mapping Methods 0.000 description 31
- 230000011664 signaling Effects 0.000 description 27
- 238000005192 partition Methods 0.000 description 18
- 239000011159 matrix material Substances 0.000 description 17
- 230000002123 temporal effect Effects 0.000 description 15
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 14
- 230000003287 optical effect Effects 0.000 description 12
- 230000006978 adaptation Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000013461 design Methods 0.000 description 8
- 230000015654 memory Effects 0.000 description 8
- 241001482237 Pica Species 0.000 description 7
- 238000013459 approach Methods 0.000 description 7
- 230000001143 conditioned effect Effects 0.000 description 6
- 230000001419 dependent effect Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000006835 compression Effects 0.000 description 5
- 238000007906 compression Methods 0.000 description 5
- 108091000069 Cystinyl Aminopeptidase Proteins 0.000 description 4
- 102100020872 Leucyl-cystinyl aminopeptidase Human genes 0.000 description 4
- 238000000261 appearance potential spectroscopy Methods 0.000 description 4
- 238000003491 array Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 230000009849 deactivation Effects 0.000 description 4
- 238000009795 derivation Methods 0.000 description 4
- 238000000605 extraction Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 101150067185 ppsA gene Proteins 0.000 description 3
- 101150010264 ppsB gene Proteins 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 230000001131 transforming effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 244000050403 Iris x germanica Species 0.000 description 1
- 240000008313 Pseudognaphalium affine Species 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/17—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
- H04N19/176—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/109—Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/103—Selection of coding mode or of prediction mode
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/186—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
- H04N19/1883—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit relating to sub-band structure, e.g. hierarchical level, directional tree, e.g. low-high [LH], high-low [HL], high-high [HH]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/90—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
- H04N19/96—Tree coding, e.g. quad-tree coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
パリ条約に従う適用可能な特許法及び/又はルールの下で、本願は、国際特許出願番号第PCT/CN2020/093641号、2020年5月31日出願、の優先権及び利益を請求するために適時に出願された。法の下であらゆる目的のために、前述の出願の全ての開示は、参照により本願の開示の部分として組み込まれる。
本願明細書は、画像及びビデオコーディング及び復号に関する。
本願明細書は、ビデオコーディング技術に関する。具体的には、ビデオコーディングにおけるSH、PPS、APS、及びGCIシンタックス要素の設計に関するものである。これらのアイデアは、例えば開発中のVersatile Video Coding(VVC)のような、多層ビデオコーディングをサポートする任意のビデオコーディング標準又は非標準ビデオコーデックに、個別に又は様々な組み合わせで適用することができる。
2.略語
APS:Adaptation Parameter Set(適応パラメータセット)
AU:Access Unit(アクセスユニット)
AUD:Access Unit Delimiter(アクセスユニットデリミタ)
AVC:Advanced Video Coding(高度ビデオコーディング)
CLVS:Coded Layer Video Sequence(コーディングレイヤビデオシーケンス)
CPB:Coded Picture Buffer(コーディングピクチャバッファ)
CRA:Clean Random Access(クリーンランダムアクセス)
CTU:Coding Tree Unit(コーディングツリーユニット)
CVS:Coded Video Sequence(コーディングビデオシーケンス)
DPB:Decoded Picture Buffer(復号ピクチャバッファ)
DPS:Decoding Parameter Set(復号パラメータセット)
EOB:End Of Bitstream(エンドオブビットストリーム)
EOS:End Of Sequence(エンドオブシーケンス)
GCI:General Constraint Information(一般的制約情報)
GDR:Gradual Decoding Refresh(漸次デコーダリフレッシュ)
HEVC:High Efficiency Video Coding(高効率ビデオコーディング)
HRD:Hypothetical Reference Decoder(仮説参照デコーダ)
IDR:Instantaneous Decoding Refresh(瞬時デコードリフレッシュ)
JEM:Joint Exploration Model(共同探索モデル)
MCTS:Motion-Constrained Tile Sets(動き制約されたタイルセット)
NAL:Network Abstraction Layer(ネットワーク抽象化レイヤ)
OLS:Output Layer Set(出力レイヤセット)
PH:Picture Header(ピクチャヘッダ)
PPS:Picture Parameter Set(ピクチャパラメータセット)
PTL:Profile, Tier and Level(プロファイル、ティア、及びレベル)
PU:Picture Unit(ピクチャユニット)
RBSP:Raw Byte Sequence Payload(未処理バイトシーケンスペイロード)
SEI:Supplemental Enhancement Information(補足拡張情報)
SH:Slice Header(スライスヘッダ)
SPS:Sequence Parameter Set(シーケンスパラメータセット)
SVC:Scalable Video Coding(拡張可能ビデオコーディング)
VCL:Video Coding Layer(ビデオコーディングレイヤ)
VPS:Video Parameter Set(ビデオパラメータセット)
VTM:VVC Test Model(VVCテストモデル)
VUI:Video Usability Information(ビデオ利用可能性情報)
VVC:Versatile Video Coding(バーサタイルビデオコーディング)
ビデオコーディング規格は、主によく知られたITU-T及びISO/IEC規格の発展を通じて進化している。ITU-TはH.261及びH.263を策定し、ISO/IECはMPEG-1及びMPEG-4ビジュアルを策定し、及び2つの組織は共同でH.262/MPEG-2ビデオ、及びH.264/MPEG-4アドバンストビデオコーディング(Advanced Video Coding)及びH.265/HEVC規格を策定した。H.262以降、ビデオコーディング規格は、ハイブリッドビデオコーディング構造に基づき、ここでは時間予測及び変換コーディングが利用される。HEVCより先の将来のビデオコーディング技術を開発するために、共同ビデオ探索チーム(Joint Video Exploration Team (JVET))が2015年にVCEG及びMPEGにより共同で設立された。それ以来、多くの新しい方法がJVETにより採用され、共同探索モデル(Joint Exploration Model (JEM))と呼ばれる参照ソフトウェアに取り入れられてきた。JVET会議が、現在、四半期毎に行われており、新しいコーディング規格は、HEVCと比べて50%のビットレートの削減を目標としている。新しいビデオコーディング規格は、2018年4月のJVET会議においてVersatile Video Coding(VVC)として公式に命名され、そのとき、VVCテストモデル(VVC test model (VTM))の第1バージョンが公表された。VVC標準化に貢献する絶え間ない努力により、JVET会議の度にVVC規格に新しいコーディング技術が採用されている。VVCワーキングドラフト及びテストモデルVTMは、従って、毎回の会議の後に更新される。VVCプロジェクトは、目下、2020年7月の会議における技術的完成(FDIS)を目指している。
最新のVVCドラフトテキストでは、GCIシンタックスとセマンティクスは次の通りである。
-general_progressive_source_flagが1に等しく、general_interlaced_source_flagが0に等しい場合、OlsInScope内のピクチャのソーススキャンタイプはプログレッシブのみとして解釈される必要がある。
-その他の場合、general_progressive_source_flagが0に等しく、general_interlaced_source_flagが1に等しい場合、OlsInScope内のピクチャのソーススキャンタイプはインターレースのみとして解釈される必要がある。
-その他の場合、general_progressive_source_flagが0に等しく、general_interlaced_source_flagが0に等しい場合、OlsInScope内のピクチャのソーススキャンタイプは不明又は指定されないとして解釈される必要がある。
-その他の場合(general_progressive_source_flagが1、general_interlaced_source_flagが1)、OlsInScope内の各ピクチャのソーススキャンタイプは、フレームフィールド情報SEIメッセージ内のシンタックス要素source_scan_typeを使用してピクチャレベルで示される。general_progressive_source_flagが1に等しく、general_interlaced_source_flagが1に等しい場合、フレームフィールド情報SEIメッセージが各AUに存在することが、ビットストリーム準拠の要件である。
注1:デコーダは、general_progressive_source_flag及びgeneral_interlaced_source_flagの値を無視する場合がある。更に、ピクチャの実際のソーススキャンタイプはこの仕様の範囲外であり、エンコーダがgeneral_progressive_source_flagとgeneral_interlaced_source_flagの値を選択する方法は指定されていない。
general_non_packed_constraint_flagが1に等しい場合は、OlsInScopeのビットストリームにフレームパッキング配置SEIメッセージが存在しないことを指定する。general_non_packed_constraint_flagが0の場合、このような制約は課されない。
注2:フレームパッキング配置SEIメッセージの存在又は解釈に関連する復号処理要件がないため、デコーダはgeneral_non_packed_constraint_flagの値を無視してよい。
general_frame_only_constraint_flagが1に等しい場合、OlsInScopeがフレームを表すピクチャを伝えることを指定する。general_frame_only_constraint_flagが0に等しい場合、OlsInScopeがフレームを表してよい又は表さなくてもよいピクチャを伝えることを指定する。
注3:general_frame_only_constraint_flagに関連する復号処理要件がないため、デコーダはgeneral_frame_only_constraint_flagの値を無視してよい。
general_non_projected_constraint_flagが1に等しい場合は、OlsInScopeのビットストリームに存在する正距円筒投影SEIメッセージ又は一般化キューブマップ投影SEIメッセージが存在しないことを指定する。general_non_projected_constraint_flagが0の場合、このような制約は課されない。
注4:は、正距円筒投影SEIメッセージ及び一般化キューブマップ投影SEIメッセージの存在又は解釈に関連する復号処理要件がないため、デコーダはgeneral_non_projected_constraint_flagの値を無視してよい。
intra_only_constraint_flageが1に等しい場合、slice_typeがIに等しいことを指定する。intra_only_constraint_flagが0に等しい場合、このような制約は課されない。
max_bitdepth_constraint_idcは、bit_depth_minus8が両端を含む0~max_bitdepth_constraint_idcの範囲である必要があることを指定する。
max_chroma_format_constraint_idcは、chroma_format_idcが両端を含む0~max_chroma_format_constraint_idcの範囲である必要があることを指定する。
no_res_change_in_clvs_constraint_flagが1に等しい場合、res_change_in_clvs_allowed_flagが0に等しい必要があることを指定する。no_res_change_in_clvs_constraint_flagが0に等しい場合、このような制約は課されない。
one_tile_per_pic_constraint_flagが1に等しい場合は、各ピクチャが1つのタイルのみを含む必要があることを指定する。one_tile_per_pic_constraint_flagが0に等しい場合、このような制約は課されない。
one_slice_per_pic_constraint_flagが1に等しい場合は、各ピクチャが1つのスライスのみを含む必要があることを指定する。one_slice_per_pic_constraint_flagが0に等しい場合、このような制約は課されない。
one_subpic_per_pic_constraint_flagが1に等しい場合は、各ピクチャが1つのサブピクチャのみを含む必要があることを指定する。one_subpic_per_pic_constraint_flagが0に等しい場合、このような制約は課されない。one_slice_per_pic_constraint_flagが1に等しい場合、one_subpic_per_pic_constraint_flagの値は1に等しい必要がある。
no_qtbtt_dual_tree_intra_constraint_flagが1に等しい場合、qtbtt_dual_tree_intra_flagが0に等しい必要があることを指定する。no_qtbtt_dual_tree_intra_constraint_flagが0に等しい場合、このような制約は課されない。
no_partition_constraints_override_constraint_flagが1に等しい場合、partition_constraints_override_enabled_flagが0に等しい必要があることを指定する。no_partition_constraints_override_constraint_flagが0に等しい場合、このような制約は課されない。
no_sao_constraint_flagが1に等しい場合、sps_sao_enabled_flagが0に等しい必要があることを指定する。no_sao_constraint_flagが0に等しい場合、このような制約は課されない。
no_alf_constraint_flagが1に等しい場合、sps_alf_enabled_flagが0に等しい必要があることを指定する。no_alf_constraint_flagが0に等しい場合、このような制約は課されない。
no_ccalf_constraint_flagが1に等しい場合、sps_ccalf_enabled_flagが0に等しい必要があることを指定する。no_ccalf_constraint_flagが0に等しい場合、このような制約は課されない。
no_joint_cbcr_constraint_flagが1に等しい場合、sps_joint_cbcr_enabled_flagが0に等しい必要があることを指定する。no_joint_cbcr_constraint_flagが0に等しい場合、このような制約は課されない。
no_ref_wraparound_constraint_flagが1に等しい場合、sps_ref_wraparound_enabled_flagが0に等しい必要があることを指定する。no_ref_wraparound_constraint_flagが0に等しい場合、このような制約は課されない。
no_temporal_mvp_constraint_flagが1に等しい場合、sps_temporal_mvp_enabled_flagが0に等しい必要があることを指定する。no_temporal_mvp_constraint_flagが0に等しい場合、このような制約は課されない。
no_sbtmvp_constraint_flagが1に等しい場合、sps_sbtmvp_enabled_flagが0に等しい必要があることを指定する。no_sbtmvp_constraint_flagが0に等しい場合、このような制約は課されない。
no_amvr_constraint_flagが1に等しい場合、sps_amvr_enabled_flagが0に等しい必要があることを指定する。no_amvr_constraint_flagが0に等しい場合、このような制約は課されない。
no_bdof_constraint_flagが1に等しい場合、sps_bdof_enabled_flagが0に等しい必要があることを指定する。no_bdof_constraint_flagが0に等しい場合、このような制約は課されない。
no_dmvr_constraint_flagが1に等しい場合、sps_dmvr_enabled_flagが0に等しい必要があることを指定する。no_dmvr_constraint_flagが0に等しい場合、このような制約は課されない。
no_cclm_constraint_flagが1に等しい場合、sps_cclm_enabled_flagが0に等しい必要があることを指定する。no_cclm_constraint_flagが0に等しい場合、このような制約は課されない。
no_mts_constraint_flagが1に等しい場合、sps_mts_enabled_flagが0に等しい必要があることを指定する。no_mts_constraint_flagが0に等しい場合、このような制約は課されない。
no_sbt_constraint_flagが1に等しい場合、sps_sbt_enabled_flagが0に等しい必要があることを指定する。no_sbt_constraint_flagが0に等しい場合、このような制約は課されない。
no_affine_motion_constraint_flagが1に等しい場合、sps_affine_enabled_flagが0に等しい必要があることを指定する。no_affine_motion_constraint_flagが0に等しい場合、このような制約は課されない。
no_bcw_constraint_flagが1に等しい場合、sps_bcw_enabled_flagが0に等しい必要があることを指定する。no_bcw_constraint_flagが0に等しい場合、このような制約は課されない。
no_ibc_constraint_flagが1に等しい場合、sps_ibc_enabled_flagが0に等しい必要があることを指定する。no_ibc_constraint_flagが0に等しい場合、このような制約は課されない。
no_ciip_constraint_flagが1に等しい場合、sps_ciip_enabled_flagが0に等しい必要があることを指定する。no_cipp_constraint_flagが0に等しい場合、このような制約は課されない。
no_fpel_mmvd_constraint_flagが1に等しい場合、sps_fpel_mmvd_enabled_flagが0に等しい必要があることを指定する。no_fpel_mmvd_constraint_flagが0に等しい場合、このような制約は課されない。
no_gpm_constraint_flagが1に等しい場合、sps_gpm_enabled_flagが0に等しい必要があることを指定する。no_gpm_constraint_flagが0に等しい場合、このような制約は課されない。
no_ladf_constraint_flagが1に等しい場合、sps_ladf_enabled_flagが0に等しい必要があることを指定する。no_ladf_constraint_flagが0に等しい場合、このような制約は課されない。
no_transform_skip_constraint_flagが1に等しい場合、sps_transfrom_skip_enabled_flagが0に等しい必要があることを指定する。no_transform_skip_constraint_flagが0に等しい場合、このような制約は課されない。
no_bdpcm_constraint_flagが1に等しい場合、sps_bdpcm_enabled_flagが0に等しい必要があることを指定する。no_bdpcm_constraint_flagが0に等しい場合、このような制約は課されない。
no_qp_delta_constraint_flagが1に等しい場合、cu_qp_delta_enabled_flagが0に等しいことがビットストリーム準拠の要件であることを指定する。no_qp_delta_constraint_flagが0に等しい場合、このような制約は課されない。
no_dep_quant_constraint_flagが1に等しい場合、sps_dep_quant_enabled_flagが0に等しいことがビットストリーム準拠の要件であることを指定する。no_dep_quant_constraint_flagが0に等しい場合、このような制約は課されない。
no_sign_data_hiding_constraint_flagが1に等しい場合、sps_sign_data_hiding_enabled_flagが0に等しいことがビットストリーム準拠の要件であることを指定する。no_sign_data_hiding_constraint_flagが0に等しい場合、このような制約は課されない。
no_mixed_nalu_types_in_pic_constraint_flagが1に等しい場合、mixed_nalu_types_in_pic_flagが0に等しいことがビットストリーム準拠の要件であることを指定する。no_mixed_nalu_types_in_pic_constraint_flagが0に等しい場合、このような制約は課されない。
no_trail_constraint_flageが1に等しい場合、TRAIL_NUTと等しいnuh_unit_typeを有するNALユニットがOlsInScopeに存在しないことを指定する。no_trail_constraint_flagが0に等しい場合、このような制約は課されない。
no_stsa_constraint_flagが1に等しい場合、STSA_NUTと等しいnuh_unit_typeを有するNALユニットがOlsInScopeに存在しないことを指定する。no_stsa_constraint_flagが0に等しい場合、このような制約は課されない。
no_rasl_constraint_flagが1に等しい場合、RASL_NUTと等しいnuh_unit_typeを有するNALユニットがOlsInScopeに存在しないことを指定する。no_rasl_constraint_flagが0に等しい場合、このような制約は課されない。
no_radl_constraint_flagが1に等しい場合、RADL_NUTと等しいnuh_unit_typeを有するNALユニットがOlsInScopeに存在しないことを指定する。no_radl_constraint_flagが0に等しい場合、このような制約は課されない。
no_idr_constraint_flagが1に等しい場合、IDR_W_RADL又はIDR_N_LPと等しいnuh_unit_typeを有するNALユニットがOlsInScopeに存在しないことを指定する。no_idr_constraint_flagが0に等しい場合、このような制約は課されない。
no_cra_constraint_flagが1に等しい場合、CRA_NUTと等しいnuh_unit_typeを有するNALユニットがOlsInScopeに存在しないことを指定する。no_cra_constraint_flagが0に等しい場合、このような制約は課されない。
no_gdr_constraint_flagが1に等しい場合、GDR_NUTと等しいnuh_unit_typeを有するNALユニットがOlsInScopeに存在しないことを指定する。no_gdr_constraint_flagが0に等しい場合、このような制約は課されない。
no_aps_constraint_flagが1に等しい場合、PREFIX_APS_NUT又はSUFFIX_APS_NUTと等しいnuh_unit_typeを有するNALユニットがOlsInScopeに存在しないことを指定する。no_aps_constraint_flagが0に等しい場合、このような制約は課されない。
gci_alignment_zero_bitsは0に等しい必要がある。
num_reserved_constraint_bytesは、予約された制約バイト数を指定する。num_reserved_constraint_bytesの値は0である必要がある。num_reserved_constraint_bytesの他の値は、ITU-T、ISO/IECにより将来の使用のために予約されており、このバージョンの仕様の準拠するビットストリームには存在しないものとする。
gci_reserved_constraint_byte[i]は任意の値を持つことができる。その存在及び値は、この仕様のこのバージョン内で指定されるプロファイルへのデコーダ準拠性に影響しない。このバージョンの仕様に準拠するデコーダは、全てのgci_reserved_constraint_byte[i]シンタックス要素を無視する必要がある。
最新のVVCドラフトテキストでは、SPSシンタックスとセマンティクスは次の通りである。
CVS内で特定の値のsps_seq_parameter_set_idを有する全部のSPS NALユニットは同じコンテンツを有する必要がある。
sps_seq_parameter_set_idは、他のシンタックス要素による参照のためにSPSの識別子を提供する。
SPS NALユニットは、nuh_layer_idの値に関係なく、sps_seq_parameter_set_idの同じ値空間を共有する。
spsLayerIdを特定のSPS NALユニットのnuh_layer_idの値とし、vclLayerIdを特定のVCL NALユニットのnuh_layer_idの値とする。spsLayerIdがvclLayerId以下で、nuh_layer_idがspsLayerIdと等しいレイヤが、nuh_layer_idがvclLayerIdと等しいレイヤを含む少なくとも1つのOLSに含まれていない限り、特定のVCL NALユニットは特定のSPS NALユニットを参照しないものとする。
sps_video_parameter_set_idは、0より大きい場合、SPSによって参照されるVPSのvps_video_parameter_set_idの値を指定する。
sps_video_parameter_set_idが0に等しいとき、以下が適用される:
-SPSはVPSを参照しない、
-SPSを参照する各CLVSを復号する場合、VPSは参照されない、
-vps_max_layers_minus1の値は0に等しいと推定される、
-CVSは1層のみを含むものとする(つまり、CVS内のすべてのVCL NALユニットは、同じ値nuh_layer_idを持つものとする)、
-GeneralLayerIdx[nuh_layer_id]の値は0に等しいと推定される、
-vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]の値は1に等しいと推定される、
vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]が1に等しい場合、特定のnuh_layer_id値であるnuhLayerIdを持つCLVSによって参照されるSPSは、nuhLayerIdに等しいnuh_layer_idを持つものとする。
sps_video_parameter_set_idの値は、CVS内のCLVSにより参照される全部のSPSの中で同じであるとする。
sps_max_sublayers_minus1に1を加えたものは、SPSを参照する各CLVS内に存在し得る時間的サブレイヤの最大数を指定する。sps_max_sublayers_minus1の値は、両端を含む0~vps_max_sublayers_minus1の範囲に包含されるものとする。
sps_reserved_zero_4bitsは、このバージョンの仕様に準拠するビットストリームでは0に等しい必要がある。sps_reserved_zero_4bitsの他の値は、ITU-T、ISO/IECによる将来の使用のために予約されている。
sps_ptl_dpb_hrd_params_present_flagが1に等しい場合は、profile_tier_level()シンタックス構造とdpb_parameters()シンタックス構造がSPSに存在し、general_hrd_parameters()シンタックス構造とols_hrd_parameters()シンタックス構造がSPSに存在し得ることを指定する。sps_ptl_dpb_hrd_params_present_flagが0に等しいことは、これらの4つのシンタックス構造がいずれもSPS内に存在しないことを指定する。sps_ptl_dpb_hrd_params_present_flagの値は、vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]と等しいものとする。
gdr_enabled_flagが1に等しい場合は、GDRピクチャがSPSを参照するCLVSに存在する可能性があることを指定する。gdr_enabled_flagが0に等しい場合は、GDRピクチャがSPSを参照するCLVSに存在しないことを指定する。
chroma_format_idcは、6.2項で指定されているルマサンプリングに対するクロマサンプリングを指定する。
separate_colour_plane_flagが1に等しい場合は、4:4:4クロマフォーマットの3つの色成分が別々にコーディングされることを指定する。separate_colour_plane_flagが0に等しい場合は、色成分を個別にコーディングしないことを指定する。separate_colour_plane_flagが存在しない場合、それは0に等しいと推定される。separate_colour_plane_flagが1に等しい場合、コーディングされたピクチャは3つの個別の成分で構成され、各々が1つの色平面(Y、Cb、又はCr)のコーディングされたサンプルで構成され、モノクロコーディングシンタックスを使用する。この場合、各色平面は特定のcolour_plane_id値に関連付けられている。
注1:異なるcolour_plane_id値を持つ色平面の間の復号処理に依存性はない。例えば、colour_plane_idの1つの値を有するモノクロピクチャの復号処理は、colour_plane_idの値が異なるモノクロピクチャからのデータをインター予測に使用しない。
separate_colour_plane_flagの値に応じて、変数ChromaArrayTypeの値は次のように割り当てられる。
-separate_colour_plane_flagが0に等しい場合、ChromaArrayTypeはchroma_format_idcに等しく設定される。
-その他の場合(separate_colour_plane_flagが1に等しい)、ChromaArrayTypeは0に等しく設定される。
res_change_in_clvs_allowed_flagが1に等しい場合は、ピクチャ空間解像度は、SPSを参照するCLVSの範囲内で変化してよいことを指定する。res_change_in_clvs_allowed_flagが0に等しい場合は、ピクチャ空間解像度は、SPSを参照するCLVSの範囲内で変化しないことを指定する。
pic_width_max_in_luma_samplesは、SPSを参照する各復号ピクチャの最大幅を、ルマサンプルの単位で指定する。pic_width_max_in_luma_samplesは0に等しくなく、及びMax(8,MinCbSizeY)の整数倍であるものとする。
SPSを参照する1つ以上のレイヤを含むOLSインデックスiを持つ任意のOLSについて、pic_width_max_in_luma_samplesの値がols_dpb_pic_width[i]の値以下であることがビットストリーム準拠の要件である。
pic_height_max_in_luma_samplesは、SPSを参照する各復号ピクチャの最大高さを、ルマサンプルの単位で指定する。pic_height_max_in_luma_samplesは0に等しくなく、及びMax(8,MinCbSizeY)の整数倍であるものとする。
SPSを参照する1つ以上のレイヤを含むOLSインデックスiを持つ任意のOLSについて、pic_width_max_in_luma_samplesの値がols_dpb_pic_width[i]の値以下であることがビットストリーム準拠の要件である。
sps_conformance_window_flagが1に等しい場合は、適合クロッピングウィンドウオフセットパラメータがSPSの次に続くことを示す。sps_conformance_window_flagが0に等しいことは、適合クロッピングウィンドウオフセットパラメータがSPS内に存在しないことを示す。
sps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset、及びsps_conf_win_bottom_offsetは、pic_width_in_luma_samplesがpic_width_max_in_luma_samplesに等しい、及びpic_height_in_luma_samplesがpic_height_max_in_luma_samplesと等しいピクチャに適用されるクロップウィンドウを指定する。sps_conformance_window_flagが0の場合、sps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset、sps_conf_win_bottom_offsetの値は0に等しいと推定される。
適合クロッピングウィンドウは、両端を含むSubWidthC*sps_conf_win_left_offsetからpic_width_max_in_luma_samples-(SubWidthC*sps_conf_win_right_offset+1)までの水平ピクチャ座標、及び両端を含むSubHeightC*sps_conf_win_top_offsetからpic_height_max_in_luma_samples-(SubHeightC*sps_conf_win_bottom_offset+1)までの垂直ピクチャ座標を有するルマサンプルを含む。
SubWidthC*(sps_conf_win_left_offset+sps_conf_win_right_offset)の値はpic_width_max_in_luma_samplesより小さいものとし、SubHeightC*(sps_conf_win_top_offset+sps_conf_win_bottom_offset)の値はpic_height_max_in_luma_samplesより小さいものとする。
ChromaArrayTypeが0に等しくないとき、2つのクロマアレイの対応する指定されたサンプルは、ピクチャ座標(x/SubWidthC,y/SubHeightC)を有するサンプルである。ここで、(x,y)は指定されたルマサンプルのピクチャ座標である。
注2:適合クロッピングウィンドウオフセットパラメータは出力においてのみ適用される。すべての内部復号処理は、トリミングされていないピクチャサイズに適用される。
sps_log2_ctu_size_minus5 に 5を加えたものは、各CTUのルマコーディングツリーブロックサイズを指定する。sps_log2_ctu_size_minus5の値は、両端を含む0~2の範囲であるものとする。sps_log2_ctu_size_minus5の値3は、ITU-T、ISO/IECによる将来の使用のために予約されている。
変数CtbLog2SizeY及びCtbSizeYは、以下のように導出される:
res_change_in_clvs_allowed_flagが1に等しい場合、subpic_info_present_flagの値は0に等しい必要がある。
注3:ビットストリームがサブビットストリーム抽出処理の結果であり、サブビットストリーム抽出処理への入力ビットストリームのサブピクチャの一部のみを含むとき、SPSのRBSP内のsubpic_info_present_flagの値を1に等しく設定することが要求され得る。
sps_num_subpics_minus1に1を加えたものは、CLVS内の各ピクチャ内のサブピクチャの数を指定する。sps_num_subpics_minus1の値は、両端を含む0からCeil(pic_width_max_in_luma_samples÷CtbSizeY)*Ceil(pic_height_max_in_luma_samples÷CtbSizeY)-1の範囲であるものとする。存在しないとき、sps_num_subpics_minus1の値は0に等しいと推定される。
sps_independent_subpics_flagが1に等しい場合、CLVS内のサブピクチャ境界に跨がり、イントラ予測、インター予測、及びインループフィルタリング操作が実行できないことを指定する。sps_independent_subpics_flagが0に等しい場合、CLVS内のサブピクチャ境界に跨がり、インター予測又はインループフィルタリング操作が許可されることを指定する。存在しないとき、sps_independent_subpics_flagの値は0に等しいと推定される。
subpic_ctu_top_left_x[i]は、CtbSizeYのユニットのi番目のサブピクチャの左上CTUの水平位置を指定する。シンタックス要素の長さは、Ceil(Log2((pic_width_max_in_luma_samples+CtbSizeY-1)>>CtbLog2SizeY))ビットである。存在しないとき、subpic_ctu_top_left_x[i]の値は0に等しいと推定される。
subpic_ctu_top_left_y[i]は、CtbSizeYのユニットのi番目のサブピクチャの左上CTUの垂直位置を指定する。シンタックス要素の長さは、Ceil(Log2((pic_height_max_in_luma_samples+CtbSizeY-1)>>CtbLog2SizeY))ビットである。存在しないとき、subpic_ctu_top_left_y[i]の値は0に等しいと推定される。
subpic_width_minus1[i]に1を加えたものは、CtbSizeYの単位でi番目のサブピクチャの幅を指定する。シンタックス要素の長さは、Ceil(Log2((pic_width_max_in_luma_samples+CtbSizeY-1)>>CtbLog2SizeY))ビットである。存在しないとき、subpic_width_minus1[i]の値は、((pic_width_max_in_luma_samples+CtbSizeY-1)>>CtbLog2SizeY)-subpic_ctu_top_left_x[i]-1に等しいと推定される。
subpic_height_minus1[i]に1を加えたものは、CtbSizeYの単位でi番目のサブピクチャの高さを指定する。シンタックス要素の長さは、Ceil(Log2((pic_height_max_in_luma_samples+CtbSizeY-1)>>CtbLog2SizeY))ビットである。存在しないとき、subpic_height_minus1[i]の値は、((pic_height_max_in_luma_samples+CtbSizeY-1)>>CtbLog2SizeY)-subpic_ctu_top_left_y[i]-1に等しいと推定される。
subpic_treated_as_pic_flag[i]が1に等しい場合、CLVS内の各コーディングピクチャのi番目のサブピクチャが、インループフィルタリング操作を除き復号処理でピクチャとして取り扱われることを指定する。subpic_treated_as_pic_flag[i]が0に等しいことは、CLVS内の各コーディングピクチャのi番目のサブピクチャが、インループフィルタリング動作を除く復号処理でピクチャとして扱われないことを指定する。存在しないとき、subpic_treated_as_pic_flag[i]の値はsps_independent_subpics_flagに等しいと推定される。
subpic_treated_as_pic_flag[i]が1に等しい場合、i番目のサブピクチャを含むレイヤを出力レイヤとして含むOLSで、各出力レイヤとその参照レイヤについて次のすべての条件が当てはまることがビットストリーム準拠の要件である。
-出力レイヤとその参照レイヤのすべてのピクチャは、同じ値のpic_width_in_luma_samplesと同じ値のpic_height_in_luma_samplesを持つものとする、
-出力レイヤとその参照レイヤによって参照されるすべてのSPSは、同じ値のsubpic_ctu_top_left_x[j]、subpic_ctu_top_left_y[j],subpic_width_minus1[j]、subpic_height_minus1[j]、及びloop_filter_across_subpic_enabled_flag[j]を持つものとし、各々のjの値は、両端を含む0からsps_num_subpics_minus1までの範囲にある、
-出力レイヤとその参照レイヤの各アクセスユニット内のすべてのピクチャは、同じ値のSubpicIdVal[j]を持つものとし、各々のjの値は、両端を含む0からsps_num_subpics_minus1までの範囲である。
loop_filter_across_subpic_enabled_flag[i]が1に等しい場合、インループフィルタリング操作が、CLVSにおける各コーディングピクチャの中のi番目のサブピクチャの境界に跨がり実行されてよいことを指定する。loop_filter_across_subpic_enabled_flag[i]が0に等しいことは、CLVS内の各コーディングピクチャ内のi番目のサブピクチャの境界に跨がり、インループフィルタリング動作が実行されないことを指定する。存在しないとき、vloop_filter_across_subpic_enabled_pic_flag[i]の値は1-sps_independent_subpics_flagに等しいと推定さ-れる。
各サブピクチャが、復号されるとき、ピクチャ境界を構成する又は前に復号されたサブピクチャの境界を構成する、その左境界全体及び上境界全体を有するようなサブピクチャの形状が、ビットストリーム準拠の要件である。
sps_subpic_id_len_minus1に1を加えたものは、シンタックス要素sps_subpic_id[i]、存在する場合はシンタックス要素pps_subpic_id[i]、及び存在する場合はシンタックス要素slice_subpic_idを表すために使用されるビット数を指定する。sps_subpic_id_len_minus1の値は、両端を含む0~15の範囲であるものとする。1<<(sps_subpic_id_len_minus1+1)の値はsps_num_subpics_minus1+1以上であるとものとする。
subpic_id_mapping_explicitly_signalled_flagが1に等しい場合は、サブピクチャIDマッピングが、SPS内又はCLVSのコーディングされたピクチャによって参照されるPPS内のいずれかで明示的にシグナリングされることを指定する。subpic_id_mapping_explicitly_signalled_flagが0に等し場合、サブピクチャIDマッピングがCLVSについて明示的にシグナリングされないことを指定する。存在しないとき、subpic_id_mapping_explicitly_signalled_flagの値は0に等しいと推定される。
subpic_id_mapping_in_sps_flagが1に等しい場合は、subpic_id_mapping_explicitly_signalled_flagが1に等しいときに、サブピクチャIDマッピングがSPS内でシグナリングされることを指定する。subpic_id_mapping_in_sps_flagが0に等しい場合は、subpic_id_mapping_explicitly_signalled_flagが1に等しいときに、サブピクチャIDマッピングがCLVSのコーディングピクチャにより参照されるPPS内でシグナリングされることを指定する。
sps_subpic_id[i]は、i番目のサブピクチャのサブピクチャIDを指定する。sps_subpic_id[i]シンタックス要素の長さは、sps_subpic_id_len_minus1+1ビットである。
bit_depth_minus8は、ルマアレイとクロマアレイのサンプルのビット深度BitDepth、及びルマ及びクロマ量子化パラメータ範囲オフセットの値QpBdOffsetを次のように指定する:
sps_entropy_coding_sync_enabled_flagが1に等しい場合は、SPSを参照する各ピクチャの各タイルのCTB行の第1CTBを含むCTUを復号する前に、コンテキスト変数の特定の同期処理が呼び出され、SPSを参照する各ピクチャの各タイルのCTB行の第1CTBを含むCTUを復号した後に、コンテキスト変数の特定の記憶処理が呼び出されることを指定する。sps_entropy_coding_sync_enabled_flagが0に等しい場合は、SPSを参照する各ピクチャの各タイルのCTB行の第1CTBを含むCTUを復号する前に、コンテキスト変数の特定の同期処理が呼び出される必要がなく、SPSを参照する各ピクチャの各タイルのCTB行の第1CTBを含むCTUを復号した後に、コンテキスト変数の特定の記憶処理が呼び出される必要がないことを指定する。
sps_wpp_entry_point_offsets_present_flagが1に等しい場合、sps_entropy_coding_sync_enabled_flagが1に等しいとき、CTU行のエントリポイントオフセットのシグナリングがSPSを参照するピクチャのスライスヘッダ内に存在する可能性があることを指定する。sps_wpp_entry_point_offsets_present_flagが0に等しい場合、CTU行のエントリポイントオフセットのシグナリングがSPSを参照するピクチャのスライスヘッダ内に存在しないことを指定する。存在しないとき、sps_wpp_entry_point_offsets_present_flagの値は0に等しいと推定される。
sps_weighted_pred_flagが1に等しい場合は、加重予測がSPSを参照するPスライスに適用されてよいことを指定する。sps_weighted_pred_flagが0に等しい場合は、加重予測がSPSを参照するPスライスに適用されないことを指定する。
sps_weighted_bipred_flagが1に等しい場合は、明示的加重予測がSPSを参照するBスライスに適用されてよいことを指定する。sps_weighted_bipred_flagが0に等しい場合は、明示的加重予測がSPSを参照するBスライスに適用されないことを指定する。
log2_max_pic_order_cnt_lsb_minus4は、ピクチャオーダカウントの復号処理で使用される変数MaxPicOrderCntLsbの値を次のように指定する:
sps_poc_msb_flagが1に等しい場合は、ph_poc_msb_present_flagシンタックス要素がSPSを参照するPH内に存在することを指定する。sps_poc_msb_flagが0に等しい場合は、ph_poc_msb_present_flagシンタックス要素がSPSを参照するPH内に存在しないことを指定する。
poc_msb_len_minus1に1を加えたものは、SPSを参照するPH内に存在する場合、poc_msb_valsyntaxelementsの長さをビット単位で指定する。poc_msb_len_minus1の値は、両端を含む0~32-log2_max_pic_order_cnt_lsb_minus4-5の範囲であるものとする。
num_extra_ph_bits_bytesは、SPSを参照するコーディングされたピクチャのPHシンタックス構造の追加ビットのバイト数を指定する。num_extra_ph_bits_bytesの値は、このバージョンの仕様に準拠するビットストリームでは0に等しく設定されるものとする。このバージョンの仕様では、num_extra_ph_bits_bytesの値は0に等しい必要があるが、このバージョンの仕様に準拠したデコーダは、シンタックス内に1又は2に等しいnum_extra_ph_bits_bytesの値の出現を許容するものとする。
num_extra_sh_bits_bytesは、SPSを参照するコーディングされたピクチャのスライスヘッダ内の追加ビットのバイト数を指定する。num_extra_sh_bits_bytesの値は、このバージョンの仕様に準拠するビットストリームでは0に等しいものとする。このバージョンの仕様では、num_extra_sh_bits_bytesの値は0に等しい必要があるが、このバージョンの仕様に準拠したデコーダは、シンタックス内に1又は2に等しいnum_extra_sh_bits_bytesの値の出現を許容するものとする。
sps_sublayer_dpb_params_flagは、SPS内のdpb_parameters()シンタックス構造内のmax_dec_pic_buffering_minus1[i]、max_num_reorder_pics[i]、及びmax_latency_increase_plus1[i]シンタックス要素の存在を制御するために使用される。存在しないとき、sps_sub_dpb_params_info_present_flagの値は0に等しいと推定される。
long_term_ref_pics_flagが0に等しい場合は、CLVS内のコーディングされたピクチャのインター予測にLTRPが使用されないことを指定する。long_term_ref_pics_flagが1に等しい場合は、CLVS内の1つ以上のコーディングされたピクチャのインター予測にLTRPが使用されてよいことを指定する。
inter_layer_ref_pics_present_flagが0に等しい場合は、CLVS内のコーディングされたピクチャのインター予測にILRPが使用されないことを指定する。inter_layer_ref_pic_flagが1に等しい場合は、CLVS内の1つ以上のコーディングされたピクチャのインター予測にLTRPが使用されてよいことを指定する。sps_video_parameter_set_idが0に等しい場合、inter_layer_ref_pics_present_flagの値は0に等しいと推定される。vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]が1に等しい場合、inter_layer_ref_pics_present_flagの値は0に等しいものとする。[Ed.(YK):このシンタックス要素により良い名前がないか確認する。]
sps_idr_rpl_present_flagが1に等しい場合、IDRピクチャのスライスヘッダ内に参照ピクチャリストシンタックス要素が存在することを指定する。sps_idr_rpl_present_flagが0に等しい場合、IDRピクチャのスライスヘッダ内に参照ピクチャリストシンタックス要素が存在しないことを指定する。
rpl1_same_as_rpl0_flagが1に等しい場合、シンタックス要素num_ref_pic_lists_in_sps[1]及びシンタックス構造ref_pic_list_struct(1,rplsIdx)が存在しないことを指定し、以下を適用する:
-num_ref_pic_lists_in_sps[1]の値はnum_ref_pic_lists_in_sps[0]の値に等しいと推定される、
ref_pic_list_struct(1,rplsIdx)の各シンタックス要素の値は、0からnum_ref_pic_lists_in_sps[0]-1の範囲のrplsIdxについて、ref_pic_list_struct(0,rplsIdx)内の対応するシンタックス要素の値と等しいと推定される。
num_ref_pic_lists_in_sps[i]は、SPSに含まれるiに等しいlistIdxを有するref_pic_list_struct(listIdx,rplsIdx)シンタックス構造の数を指定する。num_ref_pic_lists_in_sps[i]の値は、両端を含む0~64の範囲であるものとする。
注4:現在のピクチャのスライスヘッダ内で直接シグナリングされる1つのref_pic_list_struct(listIdx,rplsIdx)シンタックス構造が存在する可能性があるため、listIdxの値(0又は1に等しい)ごとに、デコーダは合計でnum_ref_pic_lists_in_sps[i]+1個のref_pic_list_struct(listIdx,rplsIdx)シンタックス構造にメモリを割り当てる必要がある。
qtbtt_dual_tree_intra_flagが1に等しい場合、Iスライスについて、各CTUが暗黙的4分木分割を用いて64×64ルマサンプルを有するコーディングユニットに分割されること、及びこれらのコーディングユニットがルマ及びクロマの2個の別個のcoding_treeシンタックス構造のルートであること、を指定する。qtbtt_dual_tree_intra_flagが0に等しい場合、Iスライスについて、個別のcoding_treeシンタックス構造が使用されないことを指定する。qtbtt_dual_tree_intra_flagが存在しない場合、それは0に等しいと推定される。
log2_min_luma_coding_block_size_minus2に2を加えたものは、最小ルマコーディングブロックサイズを指定する。log2_min_luma_coding_block_size_minus2の値範囲は、両端を含む0~Min(4,sps_log2_ctu_size_minus5+3)の範囲であるものとする。
変数MinCbLog2SizeY、MinCbSizeY、IbcBufWidthY、IbcBufWidthC、及びVsizeは、以下のように導出される:
各クロマCTBのアレイの幅と高さを各々指定する変数CtbWidthC及びCtbHeightCは、次のように導出される:
-chroma_format_idcが0(モノクロ)に等しいか、又はseparate_colour_plane_flagが1に等しい場合、CtbWidthC及びCtbHeightCは両方とも0に等しい。
-その他の場合、CtbWidthC及びCtbHeightCは、以下のように導出される:
両端を含む、0から6までのlog2BlockWidth、及び0から6までのlog2BlockHeightでは、6.5.3項で指定されている水平及び垂直トラバーススキャン順序アレイ初期化プロセスが、1<<log2BlockWidth及び1<<log2BlockHeightを入力として呼び出され、出力がHorTravScanOrder[log2BlockWidth][log2BlockHeight]及びVerTravScanOrder[log2BlockWidth][log2BlockHeight]に割り当てられる。
partition_constraints_override_enabled_flagが1に等しい場合、SPSを参照するPHにpartition_constraints_override_flagが存在することを指定する。partition_constraints_override_enabled_flagが0に等しい場合、SPSを参照するPHにpartition_constraints_override_flagが存在しないことを指定する。
sps_log2_diff_min_qt_min_cb_intra_slice_lumaは、CTUの4分木分割により生じたルマリーフブロックのルマサンプルのうちの最小サイズの底2の対数と、slice_typeがSPSを参照する2(I)に等しいスライスのルマCUのルマサンプルのうちの最小コーディングブロックサイズの底2の対数との間のデフォルトの差を指定する。partition_constraints_override_enabled_flagが1に等しい場合、SPSを参照するPHに存在するph_log2_diff_min_qt_min_cb_lumaによってデフォルトの差を上書きできる。sps_log2_diff_min_qt_min_cb_intra_slice_lumaの値は、0~CtbLog2SizeY-MinCbLog2SizeYの範囲であるものとする。CTUの4分木分割から生じるルマリーフブロックのルマサンプルにおける最小サイズの底2の対数は、次のように導出される:
sps_log2_diff_max_bt_min_qt_intra_slice_lumaは、2分割を使用して分割できるルマコーディングブロックのルマサンプルのうち最大サイズ(幅又は高さ)の底2の対数と、slice_typeがSPSを参照する2(I)に等しいスライス内のCTUの4分木分割によって生じるルマリーフブロックのルマサンプルのうちの最小サイズ(幅又は高さ)との間のデフォルトの差を指定する。partition_constraints_override_enabled_flagが1に等しい場合、SPSを参照するPHに存在するph_log2_diff_max_bt_min_qt_lumaによってデフォルトの差を上書きできる。sps_log2_diff_max_bt_min_qt_intra_slice_lumaの値は、0~CtbLog2SizeY-MinQtLog2SizeIntraYの範囲であるものとする。sps_log2_diff_max_bt_min_qt_intra_slice_lumaが存在しないとき、sps_log2_diff_max_bt_min_qt_intra_slice_lumaの値は0に等しいと推定される。
sps_log2_diff_max_tt_min_qt_intra_slice_lumaは、3分割を使用して分割できるルマコーディングブロックのルマサンプルのうち最大サイズ(幅又は高さ)の底2の対数と、slice_typeがSPSを参照する2(I)に等しいスライス内のCTUの4分木分割によって生じるルマリーフブロックのルマサンプルのうちの最小サイズ(幅又は高さ)との間のデフォルトの差を指定する。partition_constraints_override_enabled_flagが1に等しい場合、SPSを参照するPHに存在するph_log2_diff_max_tt_min_qt_lumaによってデフォルトの差を上書きできる。sps_log2_diff_max_tt_min_qt_intra_slice_lumaの値は、0~CtbLog2SizeY-MinQtLog2SizeIntraYの範囲に包含されるものとする。sps_log2_diff_max_tt_min_qt_intra_slice_lumaが存在しないとき、sps_log2_diff_max_tt_min_qt_intra_slice_lumaの値は0に等しいと推定される。
sps_log2_diff_min_qt_min_cb_inter_sliceは、CTUの4分木分割により生じたルマリーフブロックのルマサンプルのうちの最小サイズの底2の対数と、SPSを参照するslice_typeが0(B)又は1(P)に等しいスライスのルマCUのルマサンプルのうちの最小ルマコーディングブロックサイズの底2の対数との間のデフォルトの差を指定する。partition_constraints_override_enabled_flagが1に等しい場合、SPSを参照するPHに存在するph_log2_diff_min_qt_min_cb_lumaによってデフォルトの差を上書きできる。sps_log2_diff_min_qt_min_cb_inter_sliceの値は、0~CtbLog2SizeY-MinCbLog2SizeYの範囲に包含されるものとする。CTUの4分木分割から生じるルマリーフブロックのルマサンプルにおける最小サイズの底2の対数は、次のように導出される:
sps_log2_diff_max_bt_min_qt_inter_sliceは、2分割を使用して分割できるルマコーディングブロックのルマサンプルのうち最大サイズ(幅又は高さ)の底2の対数と、SPSを参照するslice_typeが0(B)又は1(P)に等しいスライス内のCTUの4分木分割によって生じるルマリーフブロックのルマサンプルのうちの最小サイズ(幅又は高さ)との間のデフォルトの差を指定する。partition_constraints_override_enabled_flagが1に等しい場合、SPSを参照するPHに存在するph_log2_diff_max_bt_min_qt_lumaによってデフォルトの差を上書きできる。sps_log2_diff_max_bt_min_qt_inter_sliceの値は、0~CtbLog2SizeY-MinQtLog2SizeInterYの範囲であるものとする。sps_log2_diff_max_bt_min_qt_inter_sliceが存在しないとき、sps_log2_diff_max_bt_min_qt_inter_sliceの値は0に等しいと推定される。
sps_log2_diff_max_tt_min_qt_inter_sliceは、3分割を使用して分割できるルマコーディングブロックのルマサンプルのうち最大サイズ(幅又は高さ)の底2の対数と、SPSを参照するslice_typeが0(B)又は1(P)に等しいスライス内のCTUの4分木分割によって生じるルマリーフブロックのルマサンプルのうちの最小サイズ(幅又は高さ)との間のデフォルトの差を指定する。partition_constraints_override_enabled_flagが1に等しい場合、SPSを参照するPHに存在するph_log2_diff_max_tt_min_qt_lumaによってデフォルトの差を上書きできる。sps_log2_diff_max_tt_min_qt_inter_sliceの値は、0~CtbLog2SizeY-MinQtLog2SizeInterYの範囲であるものとする。sps_log2_diff_max_tt_min_qt_inter_sliceが存在しないとき、sps_log2_diff_max_tt_min_qt_inter_sliceの値は0に等しいと推定される。
sps_log2_diff_min_qt_min_cb_intra_slice_chromaは、treeTypeがDUAL_TREE_CHROMAに等しいクロマCTUの4分木分割により生じたクロマリーフブロックのクロマサンプルのうちの最小サイズの底2の対数と、slice_typeがSPSを参照する2(I)に等しいスライスのうち、treeTypeがDUAL_TREE_CHROMAに等しいクロマCUのルマサンプルのうちの最小コーディングブロックサイズの底2の対数との間のデフォルトの差を指定する。partition_constraints_override_enabled_flagが1に等しい場合、SPSを参照するPHに存在するph_log2_diff_min_qt_min_cb_chromaによってデフォルトの差を上書きできる。sps_log2_diff_min_qt_min_cb_intra_slice_chromaの値は、0~CtbLog2SizeY-MinCbLog2SizeYの範囲に包含であるものとする。存在しないとき、sps_log2_diff_min_qt_min_cb_intra_slice_chromaの値は0に等しいと推定される。treeTypeがDUAL_TREE_CHROMAに等しいCTUの4分木分割から生じるクロマリーフブロックのルマサンプルにおける最小サイズの底2の対数は、次のように導出される:
sps_log2_diff_max_bt_min_qt_intra_slice_chromaは、2分割を使用して分割できるクロマコーディングブロックのルマサンプルのうち最大サイズ(幅又は高さ)の底2の対数と、slice_typeがSPSを参照する2(I)に等しいスライス内のtreeTypeがDUAL_TREE_CHROMAに等しいクロマCTUの4分木分割によって生じるクロマリーフブロックのルマサンプルのうちの最小サイズ(幅又は高さ)との間のデフォルトの差を指定する。partition_constraints_override_enabled_flagが1に等しい場合、SPSを参照するPHに存在するph_log2_diff_max_bt_min_qt_chromaによってデフォルトの差を上書きできる。sps_log2_diff_max_bt_min_qt_intra_slice_chromaの値は、0~CtbLog2SizeY-MinQtLog2SizeIntraCの範囲に包含されるものとする。sps_log2_diff_max_bt_min_qt_intra_slice_chromaが存在しないとき、sps_log2_diff_max_bt_min_qt_intra_slice_chromaの値は0に等しいと推定される。
sps_log2_diff_max_tt_min_qt_intra_slice_chromaは、3分割を使用して分割できるクロマコーディングブロックのルマサンプルのうち最大サイズ(幅又は高さ)の底2の対数と、slice_typeがSPSを参照する2(I)に等しいスライス内のtreeTypeがDUAL_TREE_CHROMAに等しいクロマCTUの4分木分割によって生じるクロマリーフブロックのルマサンプルのうちの最小サイズ(幅又は高さ)との間のデフォルトの差を指定する。partition_constraints_override_enabled_flagが1に等しい場合、SPSを参照するPHに存在するph_log2_diff_max_tt_min_qt_chromaによってデフォルトの差を上書きできる。sps_log2_diff_max_tt_min_qt_intra_slice_chromaの値は、0~CtbLog2SizeY-MinQtLog2SizeIntraCの範囲に包含されるものとする。sps_log2_diff_max_tt_min_qt_intra_slice_chromaが存在しないとき、sps_log2_diff_max_tt_min_qt_intra_slice_chromaの値は0に等しいと推定される。
sps_max_luma_transform_size_64_flagが1に等しい場合、ルマサンプルの最大変換サイズが64に等しいことを指定する。sps_max_luma_transform_size_64_flagが0に等しい場合、ルマサンプルの最大変換サイズが32に等しいことを指定する。
CtbSizeYが64未満の場合、sps_max_luma_transform_size_64_flagの値は0に等しいものとする。
変数MinTbLog2SizeY、MaxTbLog2SizeY、MinTbSizeY、及びMaxTbSizeYは、以下のように導出される:
same_qp_table_for_chromaが1に等しい場合、1つのクロマQPマッピングテーブルのみがシグナリングされ、このテーブルは、sps_joint_cbcr_enabled_flagが1に等しい場合に、Cb及びCrの残差、更に結合Cb-Cr残差にも適用されることを指定する。same_qp_table_for_chromaが0に等しい場合、sps_joint_cbcr_enabled_flagが1に等しい場合に、Cb及びCrのために2つ、及び結合Cb-Crのためにもう1つの、クロマQPマッピングテーブルがSPSでシグナリングされることを指定する。same_qp_table_for_chromaがビットストリーム内に存在しないとき、same_qp_table_for_chromaの値は1に等しいと推定される。
qp_table_start_minus26[i]に26を加えたものは、i番目のクロマQPマッピングテーブルを記述するために使用される開始ルマ及びクロマQPを指定する。qp_table_start_minus26[i]の値は両端を含む-26-QpBdOffset~36の範囲であるものとする。qp_table_start_minus26[i]がビットストリーム内に存在しないとき、qp_table_start_minus26[i]の値は0に等しいと推定される。
num_points_in_qp_table_minus1[i]に1を加えたものは、i番目のクロマQPマッピングテーブルを記述するために使用されるポイントの数を指定する。num_points_in_qp_table_minus1[i]の値は、両端を含む0~63+QpBdOffsetの範囲であるものとする。num_points_in_qp_table_minus1[0]がビットストリーム内に存在しないとき、num_points_in_qp_table_minus1[0]の値は0に等しいと推定される。
delta_qp_in_val_minus1[i][j]はi番目のクロマQPマッピングテーブルのj番目のピボットポイントの入力座標を導出するために使用されるデルタ値を指定する。delta_qp_in_val_minus1[0][j]がビットストリーム内に存在しないとき、delta_qp_in_val_minus1[0][j]の値は0に等しいと推定される。
delta_qp_diff_val[i][j]はi番目のクロマQPマッピングテーブルのj番目のピボットポイントの出力座標を導出するために使用されるデルタ値を指定する。
i=0..numQpTables-1の場合に、i番目のクロマQPマッピングテーブルChromaQpTable[i]は以下のように導出される:
qpInVal[i][j]及びqpOutVal[i][j]の値が、両端を含む0~numQpTables-1の範囲のi、及び両端を含む0~num_points_in_qp_table_minus1[i]+1のjについて、-QpBdOffset~63の範囲であることが、ビットストリーム準拠の要件である。
sps_sao_enabled_flagが1に等しい場合、サンプル適応オフセット処理は、デブロッキングフィルタ処理の後に再構築されたピクチャに適用される。sps_sao_enabled_flagが0に等しい場合、サンプル適応オフセット処理は、デブロッキングフィルタ処理の後に再構築されたピクチャに適用されない。
sps_alf_enabled_flagが0に等しい場合、適応ループフィルタが無効であることを指定する。sps_alf_enabled_flagが1に等しい場合、適応ループフィルタが有効であることを指定する。
sps_ccalf_enabled_flagが0に等しい場合、成分間適応ループフィルタが無効であることを指定する。sps_ccalf_enabled_flagが1に等しい場合、成分間適応ループフィルタが有効であってよいことを指定する。
sps_transform_skip_enabled_flagが1に等しい場合、変換ユニットシンタックスにtransform_skip_flagが存在する可能性があることを指定する。sps_transform_skip_enabled_flagが0に等しい場合、transform_skip_flagが変換ユニットシンタックスに存在しないことを指定する。
log2_transform_skip_max_size_minus2は、変換スキップに使用される最大ブロックサイズを指定し、両端を含む0~3の範囲であるものとする。
変数MaxTsSizeは、1<<(log2_transform_skip_max_size_minus2+2)に等しく設定される。
sps_bdpcm_enabled_flagが1に等しい場合、intra_bdpcm_luma_flag及びintra_bdpcm_chroma_flagがイントラコーディングユニットのコーディングユニットシンタックスに存在する可能性があることを指定する。sps_bdpcm_enabled_flagが0に等しい場合、intra_bdpcm_luma_flag及びintra_bdpcm_chroma_flagがイントラコーディングユニットのコーディングユニットシンタックスに存在しないことを指定する。存在しないとき、sps_bdpcm_enabled_flagの値は0に等しいと推定される。
sps_ref_wraparound_enabled_flagが1に等しい場合、インター予測で水平ラップアラウンド動き補償が適用されることを指定する。sps_ref_wraparound_enabled_flagが0に等しい場合、水平ラップアラウンド動き補償が適用されないことを指定する。(CtbSizeY/MinCbSizeY+1)の値が(pic_width_in_luma_samples/MinCbSizeY-1)よりも大きい場合、ここで、pic_width_in_luma_samplesは、SPSを参照する任意のPPSのpic_width_in_luma_samplesの値であり、sps_ref_wraparound_enabled_flagの値は0に等しいものとする。[Ed.(YK):ここでのセマンティクスは依然としてPPSシンタックス要素に依存している。]
sps_temporal_mvp_enabled_flagが1に等しい場合、CLVSで時間的動きベクトル予測が使用される可能性があることを指定する。sps_temporal_mvp_enabled_flagが0に等しい場合、CLVSで時間的動きベクトル予測が使用されないことを指定する。
sps_sbtmvp_enabled_flagが1に等しい場合は、CLVSでslice_typeがIと等しくないすべてのスライスを含むピクチャの復号で、サブブロックに基づく時間的動きベクトル予測子を使用できることを指定する。sps_sbtmvp_enabled_flagが0に等しい場合、CLVSでサブブロックに基づく時間的動きベクトル予測が使用されないことを指定する。sps_sbtmvp_enabled_flagが存在しない場合、それは0に等しいと推定される。
sps_amvr_enabled_flagが1に等しい場合、動きベクトルコーディングで適応動きベクトル差解像度が使用される。amvr_enabled_flagが0に等しい場合、動きベクトルコーディングで適応動きベクトル差解像度を使用しないことを指定する。
sps_bdof_enabled_flagが0に等しい場合、双方向オプティカルフローのインター予測が無効であることを指定する。sps_bdof_enabled_flagが1に等しい場合、双方向オプティカルフローのインター予測が有効であることを指定する。
sps_bdof_pic_present_flagが1に等しい場合、SPSを参照するPHにph_disable_bdof_flagが存在することを指定する。sps_bdof_pic_present_flagが0に等しい場合、ph_disable_bdof_flagがSPSを参照するPH内に存在しないことを指定する。sps_bdof_pic_present_flagが存在しないとき、sps_bdof_pic_present_flagの値は0に等しいと推定される。
sps_smvd_enabled_flagが1に等しい場合、対称動きベクトル差を動きベクトル復号で使用できることを指定する。sps_smvd_enabled_flagが0に等しい場合、動きベクトルコーディングで対称動きベクトル差を使用しないことを指定する。
sps_dmvr_enabled_flagが1に等しい場合、デコーダの動きベクトル精緻化に基づくインター双予測が有効であることを指定する。sps_dmvr_enabled_flagが0に等しい場合、デコーダの動きベクトル精緻化に基づくインター双予測が無効であることを指定する。
sps_dmvr_pic_present_flagが1に等しい場合、SPSを参照するPHにph_disable_dmvr_flagが存在することを指定する。sps_dmvr_pic_present_flagが0に等しい場合、ph_disable_dmvr_flagがSPSを参照するPH内に存在しないことを指定する。sps_dmvr_pic_present_flagが存在しないとき、sps_dmvr_pic_present_flagの値は0に等しいと推定される。
sps_mmvd_enabled_flagが1に等しい場合、動きベクトル差によるマージモードが有効であることを指定する。sps_mmvd_enabled_flagが0に等しい場合、動きベクトル差によるマージモードが無効であることを指定する。
sps_isp_enabled_flagが1に等しい場合、サブパーティションを使用したイントラ予測が有効であることを指定する。sps_isp_enabled_flagが0に等しい場合、サブパーティションを使用したイントラ予測が無効であることを指定する。
sps_mrl_enabled_flagが1に等しい場合、複数の参照ラインによるイントラ予測が有効であることを指定する。sps_mrl_enabled_flagが0に等しい場合、複数の参照ラインによるイントラ予測が無効であることを指定する。
sps_mip_enabled_flagが1に等しい場合、マトリクスに基づくイントラ予測が有効であることを指定する。sps_mip_enabled_flagが0に等しい場合、マトリクスに基づくイントラ予測が無効であることを指定する。
sps_cclm_enabled_flagが0に等しい場合、ルマ成分からクロマ成分への成分間線形モデルイントラ予測が無効であることを指定する。sps_cclm_enabled_flagが1に等しい場合、ルマ成分からクロマ成分への成分間線形モデルイントラ予測が有効であることを指定する。sps_cclm_enabled_flagが存在しない場合、それは0に等しいと推定される。
sps_chroma_horizontal_collocated_flagが1に等しい場合、予測処理が、対応するルマサンプル位置に対して水平方向にシフトしないクロマサンプル位置用に設計された方法で動作することを指定する。sps_chroma_horizontal_collocated_flagが0に等しい場合、予測処理が、対応するルマサンプル位置に対して、ルマサンプルの単位で0.5だけ右にシフトしたクロマサンプル位置用に設計された方法で動作することを指定する。sps_chroma_horizontal_collocated_flagが存在しない場合、それは、1に等しいと推定される。
sps_chroma_vertical_collocated_flagが1に等しい場合、予測処理が、対応するルマサンプル位置に対して垂直にシフトされないクロマサンプル位置用に設計された方法で動作することを指定する。sps_chroma_vertical_collocated_flagが0に等しい場合、予測処理が、対応するルマサンプル位置に対して、ルマサンプルの単位で0.5だけ下へシフトしたクロマサンプル位置用に設計された方法で動作することを指定する。sps_chroma_vertical_collocated_flagが存在しない場合、それは、1に等しいと推定される。
sps_mts_enabled_flagが1に等しい場合、シーケンスパラメータセットRBSPシンタックスに、sps_explicit_mts_intra_enabled_flagが存在し、シーケンスパラメータセットRBSPシンタックスにsps_explicit_mts_inter_enabled_flagが存在することを指定する。sps_mts_enabled_flagが0に等しい場合、シーケンスパラメータセットRBSPシンタックスに、sps_explicit_mts_intra_enabled_flagが存在せず、シーケンスパラメータセットRBSPシンタックスにsps_explicit_mts_inter_enabled_flagが存在しないことを指定する。
sps_explicit_mts_intra_enabled_flagが1に等しい場合、イントラコーディングユニットシンタックスにmts_idxが存在する可能性があることを指定する。sps_explicit_mts_intra_enabled_flagが0に等しい場合、イントラコーディングユニットシンタックスにmts_idxが存在しないことを指定する。存在しないとき、sps_explicit_mts_intra_enabled_flagの値は0に等しいと推定される。
sps_explicit_mts_inter_enabled_flagが1に等しい場合、インターコーディングユニットシンタックスにmts_idxが存在する可能性があることを指定する。sps_explicit_mts_inter_enabled_flagが0に等しい場合、インターコーディングユニットシンタックスにmts_idxが存在しないことを指定する。存在しないとき、sps_explicit_mts_inter_enabled_flagの値は0に等しいと推定される。
six_minus_max_num_merge_candは、6からSPSでサポートされるマージ動きベクトル予測(MVP)候補の最大数を引いたものを指定する。six_minus_max_num_merge_candの値は、両端を含む0~5の範囲であるものとする。
マージMVP候補の最大数MaxNumMergeCandは次のように導出される:
sps_affine_enabled_flagは、アフィンモデルに基づく動き補償をインター予測に使用できるかどうかを指定する。sps_affine_enabled_flagが0に等しい場合、シンタックスが制限されて、CLVSでアフィンモデルに基づく動き補償が使用されないように、及びCLVSのコーディングユニットシンタックスにinter_affine_flagとcu_affine_type_flagが存在しないようにする。それ以外の場合(sps_affine_enabled_flagが1に等しい)、CLVSでアフィンモデルに基づく動き補償を使用できる。
five_minus_max_num_subblock_merge_candは、5からSPSでサポートされるマージ動きベクトル予測候補の最大数を引いたものを指定する。
sps_affine_type_flagは、6パラメータのアフィンモデルに基づく動き補償をインター予測に使用できるかどうかを指定する。sps_affine_type_flagが0に等しい場合、シンタックスが制限されて、CLVSで6パラメータのアフィンモデルに基づく動き補償が使用されないように、及びCLVSのコーディングユニットシンタックスにcu_affine_type_flagが存在しないようにする。その他の場合(sps_affine_type_flagが1に等しい)、CLVSでアフィンモデルに基づく動き補償を使用できる。存在しないとき、sps_affine_type_flagの値は0に等しいと推定される。
sps_affine_amvr_enabled_flagが1に等しい場合は、アフィンインターモードの動きベクトルコーディングで適応動きベクトル差解像度が使用されることを指定する。sps_affine_amvr_enabled_flagが0に等しい場合は、アフィンインターモードの動きベクトルコーディングで適応動きベクトル差解像度が使用されないことを指定する。存在しないとき、sps_affine_amvr_enabled_flagの値は0に等しいと推定される。
sps_affine_prof_enabled_flagは、オプティカルフローによる予測の精密化をアフィン動き補償に使用できるかどうかを指定する。sps_affine_prof_enabled_flagが0に等しい場合、アフィン動き補償はオプティカルフローで精密化されないものとする。その他の場合(sps_affine_prof_enabled_flagが1に等しい)、アフィン動き補償はオプティカルフローで精密化できる。存在しないとき、sps_affine_prof_enabled_flagの値は0に等しいと推定される。
sps_prof_pic_present_flagが1に等しい場合、SPSを参照するPHにph_disable_prof_flagが存在することを指定する。sps_prof_pic_present_flagが0に等しい場合、ph_disable_prof_flagがSPSを参照するPH内に存在しないことを指定する。sps_prof_pic_present_flagが存在しないとき、sps_prof_pic_present_flagの値は0に等しいと推定される。
sps_palette_enabled_flagが1に等しい場合、コーディングユニットシンタックスにpred_mode_plt_flagが存在する可能性があることを指定する。sps_palette_enabled_flagが0に等しい場合、コーディングユニットシンタックスにpred_mode_plt_flagが存在しないことを指定する。sps_palette_enabled_flagが存在しない場合、それは0に等しいと推定される。
sps_act_enabled_flagが1に等しい場合は、適応型色変換を使用でき、cu_act_enabled_flagがコーディングユニットシンタックスに存在する可能性があることを指定する。sps_act_enabled_flagが0に等しい場合は、適応型色変換が使用されず、cu_act_enabled_flagはコーディングユニットシンタックスに存在しないことを指定する。sps_act_enabled_flagが存在しない場合、それは0に等しいと推定される。
min_qp_prime_ts_minus4は、変換スキップモードについての最小許容量子化パラメータを次のように指定する:
sps_bcw_enabled_flagは、動き補償をインター予測に使用できるかどうかを指定する。sps_bcw_enabled_flagが0に等しい場合、シンタックスが制限されて、CLVSでCU重みを有する双予測が使用されないように、及びCLVSのコーディングユニットシンタックスにbcw_idxが存在しないようにする。それ以外の場合(sps_bcw_enabled_flagが1に等しい)、CLVSでCU重みを有する双予測を使用できる。
sps_ibc_enabled_flagが1に等しい場合、CLVS内のピクチャの復号でIBC予測モードが使用される可能性があることを指定する。sps_ibc_enabled_flagが0に等しい場合、CLVSでIBC予測モードが使用されないことを指定する。sps_ibc_enabled_flagが存在しない場合、それは0に等しいと推定される。
six_minus_max_num_ibc_merge_candは、6からSPSでサポートされるIBCマージブロックベクトル予測(BVP)候補の最大数を引いたものを指定する。six_minus_max_num_ibc_merge_candの値は、両端を含む0~5の範囲であるものとする。
IBCマージBVP候補の最大数MaxNumIbcMergeCandは次のように導出される:
sps_fpel_mmvd_enabled_flagが1に等しい場合は、動きベクトルの差によるマージモードが整数サンプル精度を使用していることを指定する。sps_fpel_mmvd_enabled_flagが0に等しい場合は、動きベクトルの差によるマージモードが分数サンプル精度を使用できることを指定する。
sps_gpm_enabled_flagは、幾何分割に基づく動き補償がインター予測に使用できるかどうかを指定する。sps_gpm_enabled_flagが0に等しい場合は、CLVSで幾何分割に基づく動き補償が使用されず、merge_gpm_partition_idx、merge_gpm_idx0、及びmerge_gpm_idx1がCLVSのコーディングユニットシンタックスに存在しないように、シンタックスが制約されることを指定する。sps_gpm_enabled_flagが1に等しい場合、幾何分割に基づく動き補償がCLVSに使用できることを指定する。存在しないとき、sps_gpm_enabled_flagの値は0に等しいと推定される。
max_num_merge_cand_minus_max_num_gpm_candは、MaxNumMergeCandからSPSでサポートされる幾何分割マージモード候補の最大数を減算したものを指定する。
幾何パーティションマージモード候補の最大数MaxNumIbcMergeCandは次のように導出される:
sps_lmcs_enabled_flagが1に等しい場合、CLVSでクロマスケールによるルママッピングが使用されることを指定する。sps_lmcs_enabled_flagが0に等しい場合、クロマスケーリングによるルママッピングがCLVSにおいて使用されないことを指定する。
sps_lfnst_enabled_flagが1に等しい場合、イントラコーディングユニットシンタックスにlfnst_idxが存在する可能性があることを指定する。sps_lfnst_enabled_flagが0に等しい場合、イントラコーディングユニットシンタックスにlfnst_idxが存在しないことを指定する。
sps_ladf_enabled_flagが1に等しい場合、sps_num_ladf_intervals_minus2、sps_ladf_lowest_interval_qp_offset、sps_ladf_qp_offset[i]、及びsps_ladf_delta_threshold_minus1[i]がSPSに存在することを指定する。
sps_num_ladf_intervals_minus2に1を加えたものは、SPSに存在するsps_ladf_delta_threshold_minus1[i]及びsps_ladf_qp_offset[i]シンタックス要素の数を指定する。sps_num_ladf_intervals_minus2の値は、両端を含む0~3の範囲であるものとする。
sps_ladf_lowest_interval_qp_offsetは、8.8.3.6.1項で指定されているように、変数qPを導出するために使用されるオフセットを指定する。sps_ladf_lowest_interval_qp_offsetの値は、両端を含む-63~63の範囲であるものとする。
sps_ladf_qp_offset[i]は、8.8.3.6.1項で指定されているように、変数qPを導出するために使用されるオフセットアレイを指定する。sps_ladf_qp_offset[i]の値は、両端を含む-63~63の範囲であるものとする。
sps_ladf_delta_threshold_minus1[i]は、i番目のルマ強度レベル間隔の下限を指定するSpsLadfIntervalLowerBound[i]の値を計算するために使用される。sps_ladf_delta_threshold_minus1[i]の値は、0~2BitDepth-3の範囲であるものとする。
SpsLadfIntervalLowerBound[0]の値は0に設定されている。
両端を含む0~sps_num_ladf_intervals_minus2の範囲内のiの各値について、変数SpsLadfIntervallLowerBound[i+1]は次のように導出される:
sps_dep_quant_enabled_flagが0に等しい場合、SPSを参照するピクチャに対して依存量子化を無効にすることを指定する。sps_dep_quant_enabled_flagが1に等しい場合、SPSを参照するピクチャに対して依存量子化を有効にすることを指定する。
sps_sign_data_hiding_enabled_flagが0の場合、SPSを参照するピクチャに対して符号ビット非表示を無効にすることを指定する。sps_sign_data_hiding_enabled_flagが1の場合、SPSを参照するピクチャに対して符号ビット非表示が有効にされる可能性があることを指定する。sps_sign_data_hiding_enabled_flagが存在しない場合、0と等しいと推測される。
sps_virtual_boundaries_enabled_flagが1に等しい場合、仮想境界を跨がるインループフィルタリングの無効化がCLVS内のコーディングされたピクチャに適用される可能性があることを指定する。sps_virtual_boundaries_enabled_flagが0に等しい場合、仮想境界を跨がるインループフィルタリングの無効化がCLVS内のコーディングされたピクチャに適用されないことを指定する。インループフィルタリング操作には、デブロッキングフィルタ、サンプル適応オフセットフィルタ、及び適応ループフィルタ操作が含まれる。
sps_virtual_boundaries_present_flagが1に等しい場合、仮想境界の情報がSPSでシグナリングされることを指定する。sps_virtual_boundaries_present_flagが0に等しい場合、仮想境界の情報がSPSでシグナリングされないことを指定する。SPSで信号がシグナリングされている仮想境界が1つ以上ある場合、インループフィルタリング操作は、SPSを参照するピクチャ内の仮想境界に渡り無効になる。インループフィルタリング操作には、デブロッキングフィルタ、サンプル適応オフセットフィルタ、及び適応ループフィルタ操作が含まれる。
res_change_in_clvs_allowed_flagの値が1に等しい場合、sps_virtual_boundaries_present_flagの値が0に等しくなければならないことは、ビットストリーム準拠の要件である。
sps_num_ver_virtual_boundariesは、SPSに存在するsps_virtual_boundaries_pos_x[i]シンタックス要素の数を指定する。sps_num_ver_virtual_boundariesが存在しない場合、0と等しいと推測される。
sps_virtual_boundaries_pos_x[i]は、ルマサンプルを8で割った単位でi番目の垂直仮想境界の位置を指定する。sps_virtual_boundaries_pos_x[i]の値は、両端を含む1~Ceil(pic_width_in_luma_samples÷8)-1の範囲とする。[Ed. (VD):pic_width_in_luma_samplesはSPS内ではなくPPS内にある。]
sps_num_hor_virtual_boundariesは、SPSに存在するsps_virtual_boundaries_pos_y[i]シンタックス要素の数を指定する。sps_num_hor_virtual_boundariesが存在しない場合は、0に等しいと推測される。
sps_virtual_boundaries_enabled_flagが1に等しく、sps_virtual_boundaries_present_flagが1に等しい場合、sps_num_ver_virtual_boundariesとsps_num_hor_virtual_boundariesの和は0より大きくなければならない。
sps_virtual_boundaries_pos_y[i]は、ルマサンプルを8で割った単位でi番目の水平仮想境界の位置を指定する。sps_virtual_boundaries_pos_y[i]の値は、両端を含む1~Ceil(pic_height_in_luma_samples÷8)-1の範囲であるものとする。[Ed. (VD):pic_height_in_luma_samplesはSPS内ではなくPPS内にある。]
sps_general_hrd_params_present_flagが1に等しい場合は、シンタックス構造general_hrd_parameters()がSPS RBSPシンタックス構造内に存在することを指定する。sps_general_hrd_params_present_flagが0に等しい場合は、シンタックス構造general_hrd_parameters()がSPS RBSPシンタックス構造内に存在しないことを指定する。
sps_sublayer_cpb_params_present_flagが1に等しい場合、SPS RBSPのシンタックス構造old_hrd_parameters()が、両端を含む0~sps_max_sublayers_minus1の範囲のTemporalIdを持つサブレイヤ表現のHRDパラメータを含むことを指定する。sps_sublayer_cpb_params_present_flagが0に等しい場合、SPS RBSPのシンタックス構造ols_hrd_parameters()が、sps_max_sublayers_minus1に等しいTemporalIdを持つサブレイヤ表現のHRDパラメータのみを含むことを指定する。sps_max_sublayers_minus1が0に等しい場合、sps_sublayer_cpb_params_present_flagの値は0に等しいと推定される。
sps_sublayer_cpb_params_present_flagが0に等しい場合、TemporalIdが両端を含む0~sps_max_sublayers_minus1-1の範囲のサブレイヤ表現のHRDパラメータは、TemporalIdがsps_max_sublayers_minus1に等しいサブレイヤ表現のHRDパラメータと同じであると推定される。これには、fixed_pic_rate_general_flag[i]シンタックス要素から始まり、ols_hrd_parametersシンタックス構造の中の「if(general_vcl_hrd_params_present_flag)」という条件のすぐ下のsublayer_hrd_parameters(i)シンタックス構造までのHRDパラメータが含まれる。
field_seq_flagが1に等しい場合は、CLVSがフィールドを表すピクチャを伝達することを示す。field_seq_flagが0に等しい場合は、CLVSがフレームを表すピクチャを伝達することを示す。general_frame_only_constraint_flagが1に等しい場合、field_seq_flagの値は0に等しくなるものとする。
field_seq_flagが1に等しい場合、フレームフィールド情報SEIメッセージは、CLVS内のすべてのコーディングされたピクチャに対して存在するものとする。
注5:指定された復号処理では、フィールド又はフレームを表すピクチャを異なる方法で処理しない。したがって、フィールドを表す一連の画像は、個々のフィールドのピクチャの寸法でコーディングされる。例えば、1080iフィールドを表すピクチャは、一般的に1920x540のクロップされた出力寸法を持ち、一方で、シーケンスピクチャレートは、一般的にソースフレームレート(一般的に25Hzから30Hzの間)の代わりにソースフィールドのレート(一般的に50Hzから60Hzの間)を表す。
vui_parameters_present_flagが1に等しい場合、シンタックス構造vui_parameters()がSPS RBSPシンタックス構造内に存在することを指定する。vui_parameters_present_flagが0に等しい場合、シンタックス構造vui_parameters()がSPS RBSPシンタックス構造内に存在しないことを指定する。
sps_extension_flagが0に等しい場合は、SPS RBSPシンタックス構造にsps_extension_data_flagシンタックス要素が存在しないことを指定する。sps_extension_flagが1に等しい場合は、SPS RBSPシンタックス構造にsps_extension_data_flagシンタックス要素が存在することを指定する。
sps_extension_data_flagは、任意の値を有してよい。その存在及び値は、この仕様のこのバージョン内で指定されるプロファイルへのデコーダ準拠性に影響しない。この仕様のこのバージョンに準拠するデコーダは、全てのsps_extension_data_flagシンタックス要素を無視するものとする。
最新のVVCドラフトテキストでは、PPSシンタックスとセマンティクスは次の通りである。
PU内で特定の値のpps_pic_parameter_set_idを有する全部のPPS NALユニットは同じコンテンツを有するものとする。
pps_pic_parameter_set_idは、他のシンタックス要素による参照のためにPPSを識別する。pps_pic_parameter_set_idの値は、両端を含む0~63の範囲であるものとする。
PPS NALユニットは、nuh_layer_idの値に関係なく、pps_pic_parameter_set_idの同じ値空間を共有する。
ppsLayerIdを特定のPPS NALユニットのnuh_layer_idの値とし、vclLayerIdを特定のVCL NALユニットのnuh_layer_idの値とする。ppsLayerIdがvclLayerId以下で、nuh_layer_idがppsLayerIdと等しいレイヤが、nuh_layer_idがvclLayerIdと等しいレイヤを含む少なくとも1つのOLSに含まれていない限り、特定のVCL NALユニットは特定のPPSNALユニットを参照しないものとする。
pps_seq_parameter_set_idは、SPSのsps_seq_parameter_set_idの値を指定する。pps_seq_parameter_set_idの値は、両端を含む0~15の範囲であるものとする。pps_seq_parameter_set_idの値は、CLVS内のコーディングピクチャにより参照される全部のPPSの中で同じであるものとする。
mixed_nal_types_in_pic_flagが1に等しい場合は、PPSを参照する各ピクチャが複数のVCL NALユニットを有し、VCL NALユニットが同じnal_unit_type値を有さず、ピクチャがIRAPピクチャではないことを指定する。mixed_nalu_types_in_pic_flagが0に等しい場合、PPSを参照する各ピクチャには1つ以上のVCL NALユニットを有し、PPSを参照する各ピクチャのVCL NALユニットは同じ値のnal_unit_typeを持つことを指定する。
no_mixed_nalu_types_in_pic_constraint_flagが1に等しい場合、mixed_nalu_types_in_pic_flagの値は0に等しくなるものとする。
nal_unit_typeの値が両端を含むIDR_W_RADL~CRA_NUTまでの範囲にあるnalUnitTypeAの各スライスについて、nal_unit_typeの別の値(つまり、ピクチャpicAのmixed_nal_types_in_pic_flagの値は1に等しい)を持つ1つ以上のスライスも含むピクチャpicAでは、次が適用される:
-スライスは、対応するsubpic_treated_as_pic_flag[i]の値が1に等しいサブピクチャsubpicAに属するものとする、
-スライスは、nal_unit_typeがnalUnitTypeAと等しくないVCL NALユニットを含むpicAのサブピクチャに属してはならない、
-nalUnitTypeAがCRAに等しい場合、復号順序と出力順序でCLVS内の現在ピクチャに続く以降のすべてのPUについて、それらのPU内のsubpicA内のスライスのRefPicList[0]もRefPicList[1]も、アクティブエントリ内の復号順序でpicAより前のピクチャを含まないものとする、
-それ以外の場合(つまり、nalUnitTypeAはIDR_W_RADL又はIDR_N_LPと等しい)、復号順序で現在ピクチャに続くCLVS内のすべてのPUについて、それらのPU内のsubpicA内のスライスのRefPicList[0]もRefPicList[1]も、アクティブエントリ内の復号順序でpicAより前のピクチャを含まないものとする。
注1:mixed_nalu_types_in_pic_flagが1に等しい場合は、PPSを参照するピクチャが異なるNALユニットタイプのスライスを含むことを示す。例えば、サブピクチャビットストリームのマージ操作から発生するコーディングされたピクチャでは、エンコーダは一致するビットストリーム構造と元のビットストリームのパラメータのさらなる整合を保証する必要がある。このような整合の例は次の通りである:sps_idr_rpl_flagの値が0に等しく、mixed_nalu_types_in_pic_flagが1に等しい場合、PPSを参照するピクチャは、IDR_W_RADL又はIDR_N_LPと等しいnal_unit_typeのスライスを有することはできない。
pic_width_in_luma_samplesは、ルマサンプルの単位でPPSを参照する各復号ピクチャの幅を指定する。pic_width_in_luma_samplesは0に等しくてはならない、Max(8,MinCbSizeY)の整数倍であるものとする、及びpic_width_max_in_luma_samples以下であるものとする。
res_change_in_clvs_allowed_flagが0に等しい場合、pic_width_in_luma_samplesの値はpic_width_max_in_luma_samplesに等しいものとする。
pic_height_in_luma_samplesは、ルマサンプルの単位でPPSを参照する各復号ピクチャの高さを指定する。pic_height_in_luma_samplesは0に等しくてはならない、Max(8,MinCbSizeY)の整数倍であるものとする、及びpic_height_max_in_luma_samples以下であるものとする。
res_change_in_clvs_allowed_flagが0に等しい場合、pic_height_in_luma_samplesの値はpic_height_max_in_luma_samplesに等しいものとする。
変数PicWidthInCtbsY、PicHeightInCtbsY、PicSizeInCtbsY、PicWidthInMinCbsY、PicHeightInMinCbsY、PicSizeInMinCbsY、PicSizeInSamplesY、PicWidthInSamplesC、及びPicHeightInSamplesCは、以下のように導出される:
pps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset、及びpps_conf_win_bottom_offsetは、出力のためのピクチャ座標の中で指定される長方形領域の観点から、復号処理から出力されるCLVS内のピクチャのサンプルを指定する。sps_conformance_window_flagが0の場合、sps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset、sps_conf_win_bottom_offsetの値は0に等しいと推定される。
適合クロップウィンドウは、両端を含む、SubWidthC*pps_conf_win_left_offset~pic_width_in_luma_samples-(SubWidthC*pps_conf_win_right_offset+1)の水平ピクチャ座標と、SubHeightC*pps_conf_win_top_offset~pic_height_in_luma_samples-(SubHeightC*pps_conf_win_bottom_offset+1)の垂直ピクチャ座標と、を含むルマサンプルを含む。
SubWidthC*(pps_conf_win_left_offset+pps_conf_win_right_offset)の値は、pic_width_in_luma_samplesより小さいものとし、SubHeightC*(pps_conf_win_top_offset+pps_conf_win_bottom_offset)の値は、pic_height_in_luma_samplesより小さいものとする。
ChromaArrayTypeが0に等しくないとき、2つのクロマアレイの対応する指定されたサンプルは、ピクチャ座標(x/SubWidthC,y/SubHeightC)を有するサンプルである。ここで、(x,y)は指定されたルマサンプルのピクチャ座標である。
注2:適合クロッピングウィンドウオフセットパラメータは出力においてのみ適用される。すべての内部復号処理は、トリミングされていないピクチャサイズに適用される。
ppsA及びppsBを、同じSPSを参照する任意の2つのPPSであるとする。ppsAとppsBが各々、同じ値のpic_width_in_luma_samplesとpic_height_in_luma_samplesを有する場合、ppsAとppsBが各々、同じ値のpps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset、pps_conf_win_bottom_offsetを有することが、ビットストリーム準拠の要件である。
pic_width_in_luma_samplesがpic_width_max_in_luma_samplesと等しく、pic_height_in_luma_samplesがpic_height_max_in_luma_samplesと等しい場合、pps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset、及びpps_conf_win_bottom_offsetが各々sps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset、及びsps_conf_win_bottom_offsetと等しいことが、ビットストリーム準拠の要件となる。
scaling_window_explicit_signalling_flagが1に等しい場合は、スケーリングウィンドウオフセットパラメータがPPS内に存在することを指定する。scaling_window_explicit_signalling_flagが0に等しい場合は、スケーリングウィンドウオフセットパラメータがPPS内に存在しないことを指定する。res_change_in_clvs_allowed_flagが0に等しい場合、scaling_window_explicit_signalling_flagの値は0に等しいものとする。
scaling_win_left_offset、scaling_win_right_offset、scaling_win_top_offset、scaling_win_bottom_offsetは、倍率計算のためにピクチャサイズに適用されるオフセットを指定する。存在しない場合、scaling_win_left_offset、scaling_win_right_offset、scaling_win_top_offset、及びscaling_win_bottom_offsetの値は、各々pps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset、及びpps_conf_win_bottom_offsetと等しいと推定される。
SubWidthC*(scaling_win_left_offset+scaling_win_right_offset)の値は、pic_width_in_luma_samples未満であり、SubHeightC*(scaling_win_top_offset+scaling_win_bottom_offset)の値は、pic_height_in_luma_samples未満であるものとする。
変数PicOutputWidthL及びPicOutputHeightLは、以下のように導出される:
-PicOutputWidthL*2はrefPicWidthInLumaSamples以上とする、
-PicOutputHeightL*2はrefPicHeightInLumaSamples以上とする、
-PicOutputWidthLはrefPicWidthInLumaSamples*8以下とする、
-PicOutputHeightL*2はrefPicHeightInLumaSamples*8以下とする、
-PicOutputWidthL*pic_width_max_in_luma_samplesは、refPicOutputWidthL*(pic_width_in_luma_samples-Max(8,MinCbSizeY))以上とする、
-PicOutputHeightL*pic_height_max_in_luma_samplesは、refPicOutputHeightL*(pic_height_in_luma_samples-Max(8,MinCbSizeY))以上とする。
output_flag_present_flagが1に等しい場合は、PPSを参照するスライスヘッダにpic_output_flagシンタックス要素が存在することを示す。output_flag_present_flagが0に等しい場合は、PPSを参照するスライスヘッダにpic_output_flagシンタックス要素が存在しないことを示す。
subpic_id_mapping_in_pps_flagが1に等しい場合は、サブピクチャIDマッピングがPPSでシグナルされることを指定する。subpic_id_mapping_in_pps_flagが0に等しい場合は、サブピクチャIDマッピングがPPSでシグナルされないことを指定する。subpic_id_mapping_explicitly_signalled_flagが0であるか、又はsubpic_id_mapping_in_sps_flagが1に等しい場合、subpic_id_mapping_in_pps_flagの値は0に等しくなるものとする。それ以外の場合(subpic_id_mapping_explicitly_signalled_flagが1に等しく、subpic_id_mapping_in_sps_flagが0に等しい)、subpic_id_mapping_in_pps_flagの値は1に等しくなるものとする。
pps_num_subpics_minus1は、sps_num_subpics_minus1と等しいものとする。
pps_subpic_id_len_minus1は、sps_subpic_id_len_minus1と等しいものとする。
pps_subpic_id[i]はi番目のサブピクチャのサブピクチャIDを指定する。pps_subpic_id[i]シンタックス要素の長さは、pps_subpic_id_len_minus1+1ビットである。
変数SubpicIdVal[i]は、0からsps_num_subpics_minus1までの範囲のiの各値について、次のように導出される:
-両端を含む0からsps_num_subpics_minus1までの範囲のiとjの2つの異なる値について、SubpicIdVal[i]がSubpicIdVal[j]と等しくないものとする、
-現在ピクチャがCLVSの第1ピクチャでない場合、両端を含む0からsps_num_subpics_minus1までの範囲のiの各値について、SubpicIdVal[i]の値が同じレイヤの復号順序で前のピクチャのSubpicIdVal[i]の値と等しくない場合、サブピクチャインデックスiを持つ現在ピクチャのサブピクチャのすべてのコーディングされたスライスNALユニットのnal_unit_typeは、両端を含むIDR_W_RADLからCRA_NUTまでの範囲の特定の値に等しくなるものとする。
no_pic_partition_flagが1に等しい場合は、PPSを参照する各ピクチャにピクチャパーティションが適用されないことを指定する。no_pic_partition_flagが0に等しい場合は、PPSを参照する各ピクチャが複数のタイル又はスライスにパーティションされてよいことを指定する。
ビデオビットストリーム準拠の要件は、no_pic_partition_flagの値が、CLVS内のコーディングピクチャにより参照される全部のPPSについて同じであることである。
sps_num_subpics_minus1+1の値が1より大きい場合、no_pic_partition_flagの値が1に等しくないことがビットストリーム準拠の要件である。
pps_log2_ctu_size_minus5 に 5を加えたものは、各CTUのルマコーディングツリーブロックサイズを指定する。pps_log2_ctu_size_minus5は、sps_log2_ctu_size_minus5と等しいものとする。
num_exp_tile_columns_minus1に1を加えたものは、明示的に提供されたタイルの列幅の数値を指定する。num_exp_tile_columns_minus1の値は、両端を含む0からPicWidthInCtbsY-1の範囲であるものとする。no_pic_partition_flagが1に等しい場合、num_exp_tile_columns_minus1の値は0に等しいと推定される。
num_exp_tile_rows_minus1に1を加えたものは、明示的に提供されたタイルの行高さの数値を指定する。num_exp_tile_rows_minus1の値は、両端を含む0からPicHeightInCtbsY-1の範囲であるものとする。no_pic_partition_flagが1に等しい場合、num_tile_rows_minus1の値は0に等しいと推定される。
tile_column_width_minus1[i]に1を加えたものは、両端を含む0からnum_exp_tile_columns_minus1-1までのiについて、i番目のタイル列の幅をCTBの単位で指定する。tile_column_width_minus1[num_exp_tile_columns_minus1]は、6.5.1項で指定されているように、インデックスがnum_exp_tile_columns_minus1以上のタイル列の幅を導出するために使用される。tile_column_width_minus1[i]の値は、両端を含む0からPicWidthInCtbsY-1の範囲であるものとする。存在しないとき、tile_column_width_minus1[0]の値はPicWidthInCtbsY-1に等しいと推定される。
tile_row_height_minus1[i]に1を加えたものは、両端を含む0からnum_exp_tile_rows_minus1-1までのiについて、i番目のタイル行の高さをCTBの単位で指定する。tile_row_height_minus1[num_exp_tile_rows_minus1]は、6.5.1項で指定されているように、インデックスがnum_exp_tile_rows_minus1以上のタイル行の高さを導出するために使用される。tile_row_height_minus1の値は、両端を含む0からPicHeightInCtbsY-1の範囲であるものとする。存在しないとき、tile_row_height_minus1[0]の値はPicHeightInCtbsY-1に等しいと推定される。
rect_slice_flagが0に等しいことは、各スライス内のタイルがラスタスキャン順であり、スライス情報がPPSでシグナリングされないことを指定する。rect_slice_flagが1に等しいことは、各スライス内のタイルが、ピクチャの長方形領域をカバーし、スライス情報がPPS内でシグナリングされることを指定する。存在しない場合、rect_slice_flagは、1に等しいと推定される。subpic_info_present_flagが1に等しいとき、rect_slice_flagの値は1に等しいものとする。
single_slice_per_subpic_flagが1に等しいことは、各サブピクチャが1つ及び1つのみの長方形スライスで構成されることを指定する。single_slice_per_subpic_flagが0に等しいことは、各サブピクチャが1つ以上の長方形スライスで構成されてよいことを指定する。single_slice_per_subpic_flagが1に等しい場合、num_slices_in_pic_minus1はsps_num_subpics_minus1に等しいと推定される。存在しないとき、single_slice_per_subpic_flagの値は0に等しいと推定される。
num_slices_in_pic_minus1に1を加えたものは、PPSを参照する各ピクチャ内の長方形スライスの数を指定する。num_slices_in_pic_minus1の値は、両端を含む0からMaxSlicesPerPicture-1の範囲であるものとし、MaxSlicesPerPictureはAnnex Aにおいて指定される。no_pic_partition_flagが1に等しい場合、num_slices_in_pic_minus1の値は0に等しいと推定される。
tile_idx_delta_present_flagが0に等しいことは、tile_idx_delta値がPPSに存在せず、PPSを参照するピクチャ内のすべての長方形スライスが6.5.1項で定義された処理に従ってラスタ順序で指定されることを指定する。tile_idx_delta_present_flagが1に等しいことは、tile_idx_delta値がPPSに存在する可能性があり、PPSを参照するピクチャ内のすべての長方形スライスがtile_idx_deltaの値によって示される順序で指定されることを指定する。存在しないとき、tile_idx_delta_present_flagの値は0に等しいと推定される。
slice_width_in_tiles_minus1[i]に1を加えたものは、i番目のスライスの幅をタイル列の単位で指定する。slice_width_in_tiles_minus1の値は、両端を含む0からNumTileColumns-1の範囲であるものとする。
slice_width_in_tiles_minus1[i]が存在しない場合、以下が適用される:
-NumTileColumnsが1に等しい場合、slice_width_in_tiles_minus1[i]の値は0に等しいと推定される、
-それ以外の場合、slice_width_in_tiles_minus1[i]の値は6.5.1項で指定されているように推定される。
slice_height_in_tiles_minus1[i]に1を加えたものは、i番目のスライスの高さをタイル行の単位で指定する。slice_height_in_tiles_minus1の値は、両端を含む0からNumTileRows-1の範囲であるものとする。
slice_height_in_tiles_minus1[i]が存在しない場合、以下が適用される:
-NumTileRowsが1に等しいか、又はtile_idx_delta_present_flagが0に等しく、tileIdx%NumTileColumnsが0より大きい場合)、slice_height_in_tiles_minus1[i]の値は0に等しいと推定される、
-それ以外の場合(NumTileRowsが1に等しくなく、tile_idx_delta_present_flagが1に等しいか、tileIdx%NumTileColumnsが0に等しい)、tile_idx_delta_present_flagが1に等しいか、tileIdx%NumTileColumnsが0に等しい場合、slice_height_in_tiles_minus1[i]の値はslice_height_in_tiles_minus1[i-1]と等しいと推定される。
num_exp_slices_in_tile[i]は、複数の長方形スライスを含む現在タイルで明示的に提供されたスライスの高さの数値を指定する。num_exp_slices_in_tile[i]の値は、両端を含む0からRowHeight[tileY]-1の範囲であるものとし、tileYはi番目のスライスを含むタイル行インデックスである。存在しないとき、num_exp_slices_in_tile[i]の値は0に等しいと推定される。num_exp_slices_in_tile[i]が0に等しい場合、変数NumSlicesInTile[i]の値は1に等しくなるように導出される。
exp_slice_height_in_ctus_minus1[j]に1を加えたものは、現在タイルのj番目の長方形スライスの高さをCTU行の単位で指定する。exp_slice_height_in_ctus_minus1[j]の値は、両端を含む0からRowHeight[tileY]-1までの範囲であるものとし、tileYは現在タイルのタイル行インデックスである。
num_exp_slices_in_tile[i]が0より大きい場合、0からNumSlicesInTile[i]-1の範囲のkについて、変数NumSlicesInTile[i]及びSliceHeightInCtusMinus1[i+k]は次のように導出される:
loop_filter_across_tiles_enabled_flagが1に等しい場合は、インループフィルタリング操作が、PPSを参照しているピクチャ内のタイル境界に跨がり実行できることを指定する。loop_filter_across_tiles_enabled_flagが0に等しい場合は、インループフィルタリング操作が、PPSを参照しているピクチャ内のタイル境界に跨がり実行されないことを指定する。インループフィルタリング操作には、デブロッキングフィルタ、サンプル適応オフセットフィルタ、及び適応ループフィルタ操作が含まれる。存在しないとき、loop_filter_across_tiles_enabled_flagの値は1に等しいと推定される。
loop_filter_across_slices_enabled_flagが1に等しいことは、インループフィルタリング操作がPPSを参照するピクチャ内のスライス境界に跨がり実行できることを指定する。loop_filter_across_tiles_enabled_flagが0に等しいことは、インループフィルタリング操作が、PPSを参照しているピクチャ内のスライス境界に跨がり実行されないことを指定する。インループフィルタリング操作には、デブロッキングフィルタ、サンプル適応オフセットフィルタ、及び適応ループフィルタ操作が含まれる。存在しないとき、loop_filter_across_slices_enabled_flagの値は0に等しいと推定される。
cabac_init_present_flagが1に等しいことは、PPSを参照するスライスヘッダにcabac_init_flagが存在することを指定する。cabac_init_present_flagが0に等しいことは、PPSを参照するスライスヘッダにcabac_init_flagが存在しないことを指定する。
num_ref_idx_default_active_minus1[i]に1を加えたものは、iが0に等しい場合、num_ref_idx_active_override_flagが0に等しいPスライス又はBスライスに対して変数NumRefIdxActive[0]の推定値を指定し、iが1に等しい場合、num_ref_idx_active_override_flagが0に等しいBスライスに対してNumRefIdxActive[1]の推定値を指定する。num_ref_idx_default_active_minus1[i]の値は、両端を含む0~14の範囲であるものとする。
rpl1_idx_present_flagが0に等しいことは、ref_pic_list_sps_flag[1]及びref_pic_list_idx[1]がPHシンタックス構造又はPPSを参照するピクチャのスライスヘッダに存在しないことを指定する。rpl1_idx_present_flagが1に等しいことは、ref_pic_list_sps_flag[1]及びref_pic_list_idx[1]がPHシンタックス構造又はPPSを参照するピクチャのスライスヘッダに存在する可能性あることを指定する。
init_qp_minus26に26を加えたものは、PPSを参照する各スライスのSliceQpYの初期値を指定する。SliceQpYの初期値は、ph_qp_deltaの0ではない値が復号された場合はピクチャレベルで、slice_qp_deltaの0ではない値が復号された場合はスライスレベルで変更される。init_qp_minus26の値は、両端を含む-(26+QpBdOffset)~+37の範囲であるものとする。
cu_qp_delta_enabled_flagが1に等しいことは、PPSを参照するPHにph_cu_qp_delta_subdiv_intra_slice及びph_cu_qp_delta_subdiv_inter_sliceシンタックス要素が存在し、変換ユニットシンタックスにcu_qp_delta_absが存在する可能性があることを指定する。cu_qp_delta_enabled_flagが0に等しいことは、PPSを参照するPHにph_cu_qp_delta_subdiv_intra_slice及びph_cu_qp_delta_subdiv_inter_sliceシンタックス要素が存在せず、変換ユニットシンタックスにcu_qp_delta_absが存在しないことを指定する。
pps_chroma_tool_offsets_present_flagが1に等しい場合、クロマツールオフセット関連のシンタックス要素がPPS RBSPシンタックス構造内に存在することを指定する。pps_chroma_tool_offsets_present_flagが0に等しい場合、クロマツールオフセット関連のシンタックス要素がPPS RBSPシンタックス構造内に存在しないことを指定する。ChromaArrayTypeが0に等しい場合、pps_chroma_tool_offsets_present_flagの値は0に等しいものとする。
pps_cb_qp_offsetとpps_cr_qp_offsetは、各々Qp′CbとQp′Crを導出するために使用されるルマ量子化パラメータQp′Yへのオフセットを指定する。pps_cb_qp_offset及びpps_cr_qp_offsetの値は、両端を含む-12~+12の範囲であるものとする。ChromaArrayTypeが0に等しい場合、pps_cb_qp_offsetとpps_cr_qp_offsetは復号処理で使用されず、デコーダはそれらの値を無視するものとする。存在しないとき、pps_cb_qp_offset及びpps_cr_qp_offsetの値は0に等しいと推定される。
pps_joint_cbcr_qp_offset_present_flagが1に等しいことは、pps_joint_cbcr_qp_offset_value及びjoint_cbcr_qp_offset_list[i]がPPS RBSPシンタックス構造に存在することを指定する。pps_joint_cbcr_qp_offset_present_flagが0に等しいことは、pps_joint_cbcr_qp_offset_value及びjoint_cbcr_qp_offset_list[i]がPPS RBSPシンタックス構造に存在しないことを指定する。ChromaArrayTypeが0に等しいか又はsps_joint_cbcr_enabled_flagが0に等しい場合、pps_joint_cbcr_qp_offset_present_flagの値は0に等しくなる。存在しないとき、pps_joint_cbcr_qp_offset_present_flagの値は0に等しいと推定される。
pps_joint_cbcr_qp_offset_valueは、Qp'CbCrを導出するために使用されるルマ量子化パラメータQp'Yへのオフセットを指定する。pps_joint_cbcr_qp_offset_valueの値は、両端を含む-12~+12の範囲であるものとする。ChromaArrayTypeが0に等しいか又はsps_joint_cbcr_enabled_flagが0に等しい場合、pps_joint_cbcr_qp_offset_valueは復号処理で使用されず、デコーダはその値を無視するものとする。pps_joint_cbcr_qp_offset_present_flagが0に等しい場合、pps_joint_cbcr_qp_offset_valueは存在せず、0に等しいと推定される。
pps_slice_chroma_qp_offsets_present_flagが1に等しいことは、slice_cb_qp_offset及びslice_cr_qp_offsetシンタックス要素が関連付けられたスライスヘッダに存在することを指定する。pps_slice_chroma_qp_offsets_present_flagが0に等しいことは、slice_cb_qp_offset及びslice_cr_qp_offsetシンタックス要素が関連付けられたスライスヘッダに存在しないことを指定する。存在しないとき、pps_slice_chroma_qp_offsets_present_flagの値は0に等しいと推定される。
pps_cu_chroma_qp_offset_list_enabled_flagが1に等しい場ことは、PPSを参照するPHにph_cu_chroma_qp_offset_subdiv_intra_sliceシンタックス要素とph_cu_chroma_qp_offset_subdiv_intra_sliceシンタックス要素が存在し、変換ユニットシンタックスとパレットコーディングシンタックスにcu_chroma_qp_offset_flagが存在する可能性があることを指定する。pps_cu_chroma_qp_offset_list_enabled_flagが0に等しいことは、PPSを参照するPHにph_cu_chroma_qp_offset_subdiv_intra_sliceシンタックス要素とph_cu_chroma_qp_offset_subdiv_intra_sliceシンタックス要素が存在せず、変換ユニットシンタックスとパレットコーディングシンタックスにcu_chroma_qp_offset_flagが存在しないことを指定する。存在しないとき、pps_cu_chroma_qp_offset_list_enabled_flagの値は0に等しいと推定される。
chroma_qp_offset_list_len_minus1に1を加えたものは、PPS RBSPシンタックス構造に存在するシンタックス要素であるcb_qp_offset_list[i]、cr_qp_offset_list[i]、及びjoint_cbcr_qp_offset_list[i]の数が指定される。chroma_qp_offset_list_len_minus1の値は、両端を含む0~5の範囲であるものとする。
cb_qp_offset_list[i]、cr_qp_offset_list[i]、及びjoint_cbcr_qp_offset_list[i]は、各々Qp′Cb、Qp′Cr、及びQp′CbCr,の導出で使用されるオフセットを指定する。cb_qp_offset_list[i]、cr_qp_offset_list[i]、及びjoint_cbcr_qp_offset_list[i]の値は、両端を含む-12~+12の範囲であるものとする。pps_joint_cbcr_qp_offset_present_flagが0に等しい場合、joint_cbcr_qp_offset_list[i]は存在せず、0に等しいと推定される。
pps_weighted_pred_flagが0に等しいことは、PPSを参照するPスライスに加重予測が適用されないことを指定する。pps_weighted_pred_flagが1に等しいことは、PPSを参照するPスライスに加重予測が適用されることを指定する。sps_weighted_pred_flagが0に等しい場合、pps_weighted_pred_flagの値は0に等しくなるものとする。
pps_weighted_bipred_flagが0に等しい場合は、PPSを参照するBスライスに明示的な加重予測が適用されないことを指定する。pps_weighted_bipred_flagが1に等しい場合は、PPSを参照するBスライスに明示的な加重予測が適用されることを指定する。sps_weighted_bipred_flagが0に等しい場合、pps_weighted_pred_flagの値は0に等しくなるものとする。
deblocking_filter_control_present_flagが1に等しいことは、PPSにデブロッキングフィルタ制御シンタックス要素が存在することを指定する。deblocking_filter_control_present_flagが0に等しいことは、PPSにデブロッキングフィルタ制御シンタックス要素が存在しないことを指定する。
deblocking_filter_override_enabled_flagが1に等しいことは、PPSを参照するPHにph_deblocking_filter_override_flagが存在すること、又はPPSを参照するスライスヘッダにslice_deblocking_filter_override_flagが存在することを指定する。deblocking_filter_override_enabled_flagが0に等しいことは、PPSを参照するPHにph_deblocking_filter_override_flagが、又はPPSを参照するスライスヘッダにslice_deblocking_filter_override_flagが、存在しないことを指定する。存在しないとき、deblocking_filter_override_enabled_flagの値は0に等しいと推定される。
pps_deblocking_filter_disabled_flagが1に等しいことは、デブロッキングフィルタの操作が、slice_deblocking_filter_disabled_flagが存在しないPPSを参照するスライスに適用されないことを指定する。pps_deblocking_filter_disabled_flagが0に等しいことは、デブロッキングフィルタの操作が、slice_deblocking_filter_disabled_flagが存在しないPPSを参照するスライスに適用されないことを指定する。存在しないとき、pps_deblocking_filter_disabled_flagの値は0に等しいと推定される。
pps_beta_offset_div2とpps_tc_offset_div2は、PPSを参照するスライスのルマ成分に適用されるβとtC(2で割った値)のデフォルトのデブロッキングパラメータオフセットを指定する。ただし、PPSを参照するスライスのピクチャヘッダ又はスライスヘッダに存在するデブロッキングパラメータオフセットによってデフォルトのデブロッキングパラメータオフセットが上書きされる場合は除く。pps_beta_offset_div2とpps_tc_offset_div2の値は、両方とも両端を含む-12から12の範囲内にあるものとする。存在しない場合、pps_beta_offset_div2とpps_tc_offset_div2の値は両方とも0に等しいと推定される。
pps_cb_beta_offset_div2とpps_cb_tc_offset_div2は、PPSを参照するスライスのCbコンポーネントに適用されるβとtC(2で割った値)のデフォルトのデブロッキングパラメータオフセットを指定する。ただし、PPSを参照するスライスのピクチャヘッダ又はスライスヘッダに存在するデブロッキングパラメータオフセットによってデフォルトのデブロッキングパラメータオフセットが上書きされる場合は除く。pps_cb_beta_offset_div2とpps_cb_tc_offset_div2の値は、両方とも両端を含む-12から12の範囲内にあるものとする。存在しない場合、pps_cb_beta_offset_div2とpps_cb_tc_offset_div2の値は両方とも0に等しいと推定される。
pps_cr_beta_offset_div2とpps_cr_tc_offset_div2は、PPSを参照するスライスのCrコンポーネントに適用されるβとtC(2で割った値)のデフォルトのデブロッキングパラメータオフセットを指定する。ただし、PPSを参照するスライスのピクチャヘッダ又はスライスヘッダに存在するデブロッキングパラメータオフセットによってデフォルトのデブロッキングパラメータオフセットが上書きされる場合は除く。pps_cr_beta_offset_div2とpps_cr_tc_offset_div2の値は、両方とも両端を含む-12から12の範囲内にあるものとする。存在しない場合、pps_cr_beta_offset_div2とpps_cr_tc_offset_div2の値は両方とも0に等しいと推定される。
rpl_info_in_ph_flagが1に等しいことは、参照ピクチャリスト情報が、PHシンタックス構造に存在し、PHシンタックス構造を含まないPPSを参照するスライスヘッダには存在しないことを指定する。rpl_info_in_ph_flagが0に等しいことは、参照ピクチャリスト情報が、PHシンタックス構造に存在せず、PHシンタックス構造を含まないPPSを参照するスライスヘッダには存在する可能性があることを指定する。
dbf_info_in_ph_flagが1に等しい場合、デブロッキングフィルタ情報が、PHシンタックス構造に存在し、PHシンタックス構造を含まないPPSを参照するスライスヘッダには存在しないことを指定する。dbf_info_in_ph_flagが0に等しいことは、デブロッキングフィルタ情報が、PHシンタックス構造に存在せず、PHシンタックス構造を含まないPPSを参照するスライスヘッダに存在する可能性があることを指定する。存在しないとき、dbf_info_in_ph_flagの値は0に等しいと推定される。
sao_info_in_ph_flagが1に等しいことは、SAOフィルタ情報が、PHシンタックス構造に存在し、PHシンタックス構造を含まないPPSを参照するスライスヘッダには存在しないことを指定する。sao_info_in_ph_flagが0に等しいことは、SAOフィルタ情報が、PHシンタックス構造に存在せず、PHシンタックス構造を含まないPPSを参照するスライスヘッダに存在する可能性があることを指定する。
alf_info_in_ph_flagが1に等しいことは、ALF情報が、PHシンタックス構造に存在し、PHシンタックス構造を含まないPPSを参照するスライスヘッダには存在しないことを指定する。alf_info_in_ph_flagが0に等しいことは、ALFフィルタ情報が、PHシンタックス構造に存在せず、PHシンタックス構造を含まないPPSを参照するスライスヘッダに存在する可能性があることを指定する。
alf_info_in_ph_flagが1に等しいことは、加重予測情報が、PHシンタックス構造に存在し、PHシンタックス構造を含まないPPSを参照するスライスヘッダには存在しないことを指定する。wp_info_in_ph_flagが0に等しいことは、加重予測情報が、PHシンタックス構造に存在せず、PHシンタックス構造を含まないPPSを参照するスライスヘッダに存在する可能性があることを指定する。存在しないとき、wp_info_in_ph_flagの値は0に等しいと推定される。
qp_delta_info_in_ph_flagが1に等しいことは、QPΔ情報が、PHシンタックス構造に存在し、PHシンタックス構造を含まないPPSを参照するスライスヘッダには存在しないことを指定する。qp_delta_info_in_ph_flagが0に等しいことは、QPデルタ情報が、PHシンタックス構造に存在せず、PHシンタックス構造を含まないPPSを参照するスライスヘッダに存在する可能性があることを指定する。
pps_ref_wraparound_enabled_flagが1に等しい場合、インター予測で水平ラップアラウンド動き補償が適用されることを指定する。pps_ref_wraparound_enabled_flagが0に等しい場合、水平ラップアラウンド動き補償が適用されないことを指定する。CtbSizeY/MinCbSizeY+1の値がpic_width_in_luma_samples/MinCbSizeY-1より大きい場合、pps_ref_wraparound_enabled_flagの値は0に等しくなるものとする。sps_ref_wraparound_enabled_flagが0に等しい場合、pps_ref_wraparound_enabled_flagの値は0に等しくなるものとする。
pps_ref_wraparound_offsetに(CtbSizeY/MinCbSizeY)+2を加えたものは、水平ラップアラウンド位置の計算に使用するオフセットをMinCbSizeYルマサンプルの単位で指定する。pps_ref_wraparound_offsetの値は、両端を含む0から(pic_width_in_luma_samples/MinCbSizeY)-(CtbSizeY/MinCbSizeY)-2までの範囲であるものとする。
変数PpsRefWraparoundOffsetは、pps_ref_wraparound_offset+(CtbSizeY/MinCbSizeY)+2に等しく設定されている。
picture_header_extension_present_flagが0に等しいことは、PPSを参照するPHにPH拡張シンタックス要素が存在しないことを指定する。picture_header_extension_present_flagが1に等しいことは、PPSを参照するPHにPH拡張シンタックス要素が存在することを指定する。picture_header_extension_present_flagは、このバージョンの仕様に準拠するビットストリームでは0に等しいものとする。
slice_header_extension_present_flagが0に等しいことは、PPSを参照するコーディングされたピクチャのスライスヘッダにスライスヘッダ拡張シンタックス要素が存在しないことを指定する。slice_header_extension_present_flagが1に等しいことは、PPSを参照するコーディングされたピクチャのスライスヘッダにスライスヘッダ拡張シンタックス要素が存在することを指定する。slice_header_extension_present_flagは、このバージョンの仕様に準拠するビットストリームでは0に等しいものとする。
pps_extension_flagが0に等しいことは、PPS RBSPシンタックス構造にpps_extension_data_flagシンタックス要素が存在しないことを指定する。pps_extension_flagequalが1に等しいことは、pps_extension_data_flagシンタックス要素がPPS RBSPシンタックス構造内に存在することを指定する。
pps_extension_data_flagは、任意の値を有してよい。その存在及び値は、この仕様のこのバージョン内で指定されるプロファイルへのデコーダ準拠性に影響しない。この仕様のこのバージョンに準拠するデコーダは、全てのpps_extension_data_flagシンタックス要素を無視するものとする。
特定の値のadaptation_parameter_set_id及び特定の値のaps_params_typeを持つPU内のすべてのAPS NALユニットは、プレフィックス又はサフィックスのAPS NALユニットであるかどうかに関係なく、同じ内容を有するものとする。
adaptation_parameter_set_idは、他のシンタックス要素による参照のためにAPSの識別子を提供する。
aps_params_typeがALF_APS又はSCALING_APSに等しい場合、adaptation_parameter_set_idの値は、両端を含む0から7の範囲であるものとする。
aps_params_typeがLMCS_APSと等しい場合、adaptation_parameter_set_idの値は、両端を含む0から3までの範囲であるものとする。
apsLayerIdを特定のAPS NALユニットのnuh_layer_idの値とし、vclLayerIdを特定のVCL NALユニットのnuh_layer_idの値とする。apsLayerIdがvclLayerId以下で、nuh_layer_idがapsLayerIdと等しいレイヤが、nuh_layer_idがvclLayerIdと等しいレイヤを含む少なくとも1つのOLSに含まれていない限り、特定のVCL NALユニットは特定のAPS NALユニットを参照しないものとする。
aps_params_typeは、表6で指定されているように、APSで伝送されるAPSパラメータのタイプを指定する。
注1:APS NALユニット(特定の値のadaptation_parameter_set_id及び特定の値のaps_params_typeを有する)はピクチャ間で共有でき、ピクチャ内の異なるスライスは異なるALF APSを参照できる。
注2:特定のVCL NALユニットに関連付けられたサフィックスAPSNALユニット(このVCL NALユニットは、復号順序でサフィックスAPS NALユニットの前にある)は、特定のVCL NALユニットでは使用されず、復号順序でサフィックスAPS NALユニットの後に続くVCL NALユニットで使用される。
aps_extension_flagが0に等しいことは、APS RBSPシンタックス構造にaps_extension_data_flagシンタックス要素が存在しないことを指定する。aps_extension_flagが1に等しいことは、APS RBSPシンタックス構造にaps_extension_data_flagシンタックス要素が存在することを指定する。
aps_extension_data_flagは、任意の値を有してよい。その存在及び値は、この仕様のこのバージョン内で指定されるプロファイルへのデコーダ準拠性に影響しない。この仕様のこのバージョンに準拠するデコーダは、全てのaps_extension_data_flagシンタックス要素を無視するものとする。
alf_luma_filter_signal_flagが1に等しいことは、ルマフィルタセットがシグナルされることを指定する。alf_luma_filter_signal_flagが0に等しいことは、ルマフィルタセットがシグナルされないことを指定する。
alf_chroma_filter_signal_flagが1に等しいことは、クロマフィルタがシグナルされることを指定する。alf_chroma_filter_signal_flagが0に等しいことは、クロマフィルタがシグナルされないことを指定する。ChromaArrayTypeが0の場合、alf_chroma_filter_signal_flagは0に等しいものとする。
alf_luma_filter_signal_flag、alf_chroma_filter_signal_flag、alf_cc_cb_filter_signal_flag、alf_cc_cr_filter_signal_flagの少なくとも1つの値は1に等しいものとする。
異なる適応ループフィルタの数を指定する変数NumAlfFiltersは25に等しく設定される。
alf_luma_clip_flagが0に等しいことは、線形適応ループフィルタリングがルマ成分に適用されることを指定する。alf_luma_clip_flagが1に等しいことは、非線形適応ループフィルタリングがルマ成分に適用される可能性があることを指定する。
alf_luma_num_filters_signalled_minus1に1を加えたものは、ルマ係数をシグナリングできる適応ループフィルタクラスの数を指定する。alf_luma_num_filters_signalled_minus1の値は、両端を含む0からNumAlfFilters-1の範囲であるものとする。
alf_luma_coeff_delta_idx[filtIdx]は、0からNumAlfFilters-1までの範囲のfiltIdxで示されるフィルタクラスのシグナリングされる適応ループフィルタのルマ係数デルタのインデックスを指定する。alf_luma_coeff_delta_idx[filtIdx]が存在しないとき、それは0に等しいと推定される。alf_luma_coeff_delta_idx[filtIdx]の長さは、Ceil(Log2(alf_luma_num_filters_signalled_minus1+1))ビットである。alf_luma_coeff_delta_idx[filtIdx]の値は、両端を含む0~alf_luma_num_filters_signalled_minus1の範囲であるものとする。
alf_luma_coeff_abs[sfIdx][j]は、sfIdxで示されるシグナリングされるルマフィルタのj番目の係数の絶対値を指定する。alf_luma_coeff_abs[sfIdx][j]が存在しないとき、それは0に等しいと推定される。alf_luma_coeff_abs[sfIdx][j]の値は、両端を含む0~128の範囲であるものとする。
alf_luma_coeff_sign[sfIdx][j]は、sfIdxが示すフィルタのj番目のルマ係数の符号を次のように指定する:
-alf_luma_coeff_sign[sfIdx][j]が0に等しい場合、対応するルマフィルタ係数は正の値を有する、
-それ以外の場合(alf_luma_coeff_sign[sfIdx][j]が1に等しい)、対応するルマフィルタ係数は負の値を有する。
alf_luma_coeff_sign[sfIdx][j]が存在しない場合、0に等しいと推定される。
sfIdx=0..alf_luma_num_filters_signalled_minus1、j=0..11の変数filtCoeff[sfIdx][j]は次のように初期化される:
alf_luma_clip_idx[sfIdx][j]は、sfIdxで示されるシグナリングされるルマフィルタのj番目の係数を乗算する前に使用するクリッピング値のクリッピングインデックスを指定する。alf_luma_clip_idx[sfIdx][j]の値が両端を含む0から3までの範囲であることがビットストリーム準拠の要件であり、ここで、sfIdx=0..alf_luma_num_filters_signalled_minus1及びj=0..11である。
ルマフィルタクリッピング値AlfClipL[adaptation_parameter_set_id]、要素AlfClipL[adaptation_parameter_set_id][filtIdx][j]、filtIdx=0..NumAlfFilters-1、及びj=0..11はBitDepthと、alf_luma_clip_idx[alf_luma_coeff_delta_idx[filtIdx]][j]に等しく設定されたclipIdxに応じて、表8で指定されているように導出される。
alf_chroma_clip_flagが0に等しいことは、線形適応ループフィルタリングがクロマ成分に適用されることを指定する。alf_chroma_clip_flagが1に等しいことは、クロマ成分に非線形適応ループフィルタリングが適用されることを指定する。存在しない場合、alf_chroma_clip_flagは、0に等しいと推定される。
alf_chroma_num_alt_filters_minus1に1を加えたものは、クロマ成分の代替フィルタの数値を指定する。alf_chroma_num_alt_filters_minus1の値は、両端を含む0~7の範囲であるとする。
alf_chroma_coeff_abs[altIdx][j]は、インデックスaltIdxの代替クロマフィルタのj番目のクロマフィルタ係数の絶対値を指定する。alf_chroma_coeff_abs[altIdx][j]が存在しないとき、それは0に等しいと推定される。alf_chroma_coeff_abs[sfIdx][j]の値は、両端を含む0~128の範囲であるものとする。
alf_chroma_coeff_sign[altIdx][j]は、インデックスaltIdxの代替クロマフィルタのj番目のクロマフィルタ係数の符号を以下のように指定する:
-alf_chroma_coeff_sign[altIdx][j]が0に等しい場合、対応するクロマフィルタ係数は正の値を有する、
-(alf_chroma_coeff_sign[altIdx][j]が1)、対応するクロマフィルタ係数は負の値を有する。
alf_chroma_coeff_sign[altIdx][j]が存在しないとき、それは0に等しいと推定される。
クロマフィルタ係数AlfCoeffC[adaptation_parameter_set_id][altIdx]、要素AlfCoeffC[adaptation_parameter_set_id][altIdx][j]、及びaltIdx=0..alf_chroma_num_alt_filters_minus1、j=0..5は、以下のように導出される:
alf_cc_cb_filter_signal_flagが1に等しいことは、Cb色成分の成分間フィルタがシグナリングされることを指定する。alf_cc_cb_filter_signal_flagが0に等しいことは、Cb色成分の成分間フィルタがシグナリングされないことを指定する。ChromaArrayTypeが0に等しい場合、alf_cc_cb_filter_signal_flagは0に等しいものとする。
alf_cc_cb_filters_signalled_minus1に1を加えたものは、現在のALF APSでシグナリングされるCb色成分の成分間フィルタの数を指定する。alf_cc_cb_filters_signalled_minus1の値は、両端を含む0~3の範囲であるものとする。
alf_cc_cb_mapped_coeff_abs[k][j]は、Cb色成分のシグナリングされるk番目の成分間フィルタのj番目のマッピングされた係数の絶対値を指定する。alf_cc_cb_mapped_coeff_abs[k][j]が存在しないとき、それは0に等しいと推定される。
alf_cc_cb_coeff_sign[k][j]は、Cb色成分のシグナリングされるk番目の成分間フィルタのj番目の係数の符号を以下の通り指定する:
-alf_cc_cb_coeff_sign[k][j]が0に等しい場合、対応する成分間フィルタ係数は正の値を有する、
-それ以外の場合(alf_cc_cb_sign[k][j]が1に等しい)、対応する成分間フィルタ係数は負の値を有する。
alf_cc_cb_coeff_sign[k][j]が存在しないとき、それは0に等しいと推定される。
Cb色成分CcAlfApsCoeffCb[adaptation_parameter_set_id][k][j]、j=0..6のシグナリングされるk番目の成分間フィルタ係数は次のように導出される:
-alf_cc_cb_mapped_coeff_abs[k][j]が0に等しい場合、CcAlfApsCoeffCb[adaptation_parameter_set_id][k][j]は0に等しく設定される。
-それ以外の場合、CcAlfApsCoeffCb[adaptation_parameter_set_id][k][j]は、(1-2*alf_cc_cb_coeff_sign[k][j])*2alf_cc_cb_mapped_coeff_abs[k][j]-1に等しく設定される。
alf_cc_cr_filter_signal_flagが1に等しいことは、Cr色成分の成分間フィルタがシグナルされることを指定する。alf_cc_cr_filter_signal_flagが0に等しいことは、Cr色成分の成分間フィルタがシグナルされないことを指定する。ChromaArrayTypeが0に等しい場合、alf_cc_cr_filter_signal_flagは0に等しいものとする。
alf_cc_cr_filters_signalled_minus1に1を加えたものは、現在のALF APSでシグナリングされるCr色成分の成分間フィルタの数を指定する。alf_cc_cr_filters_signalled_minus1の値は、両端を含む0~3の範囲であるものとする。
alf_cc_cr_mappedcoeff_abs[k][j]は、Cr色成分のシグナリングされるk番目の成分間フィルタのj番目のマッピングされた係数の絶対値を指定する。alf_cc_cr_mappedcoeff_abs[k][j]が存在しないとき、それは0に等しいと推定される。
alf_cc_cr_coeff_sign[k][j]は、Cr色成分のシグナリングされるk番目の成分間フィルタのj番目の係数の符号を以下の通り指定する:
-alf_cc_cr_coeff_sign[k][j]が0に等しい場合、対応する成分間フィルタ係数は正の値を有する、
-それ以外の場合(alf_cc_cr_sign[k][j]が1に等しい)、対応する成分間フィルタ係数は負の値を有する。
alf_cc_cr_coeff_sign[k][j]が存在しないとき、それは0に等しいと推定される。
Cr色成分CcAlfApsCoeffCr[adaptation_parameter_set_id][k][j]、j=0..6のシグナリングされるk番目の成分間フィルタ係数は次のように導出される:
-alf_cc_cr_mapped_coeff_abs[k][j]が0に等しい場合、CcAlfApsCoeffCr[adaptation_parameter_set_id][k][j]は0に等しく設定される。
-それ以外の場合、CcAlfApsCoeffCr[adaptation_parameter_set_id][k][j]は、(1-2*alf_cc_cr_coeff_sign[k][j])*2alf_cc_cr_mapped_coeff_abs[k][j]-1に等しく設定される。
alf_chroma_clip_idx[altIdx][j]は、インデックスaltIdxを有する代替クロマフィルタのj番目の係数により乗算する前に使用するクリッピング値のクリッピングインデックスを指定する。alf_chroma_clip_idx[altIdx][j]の値が両端を含む0から3までの範囲であることがビットストリーム準拠の要件であり、ここで、altIdx=0..alf_chroma_num_alt_filters_minus1、j=0..5である。
クロマフィルタクリッピング値AlfClipC[adaptation_parameter_set_id][altIdx]、要素AlfClipC[adaptation_parameter_set_id][altIdx][j]、altIdx=0..alf_chroma_num_alt_filters_minus1、j=0..5は、BitDepthと、alf_chroma_clip_idx[altIdx][j]に等しく設定されたclipIdxに応じて、表8で指定されているように導出される。
lmcs_delta_max_bin_idxは、15と、クロマスケーリングによるルママッピング構成処理において使用される最大ビンインデックスLmcsMaxBinIdxとの間のデルタ値を指定する。lmcs_delta_max_bin_idxの値は、両端を含む0~15の範囲であるものとする。LmcsMaxBinIdxの値は、15-lmcs_delta_max_bin_idxに等しく設定される。LmcsMaxBinIdxの値は、lmcs_min_bin_idx以上であるものとする。
lmcs_delta_cw_prec_minus1に1を加えたものは、シンタックスlmcs_delta_abs_cw[i]の表現のために使用されるビットの数を指定する。lmcs_delta_cw_prec_minus1の値は、両端を含む0~BitDepth-2の範囲であるものとする。
lmcs_delta_abs_cw[i]は、i番目のビンの絶対デルタコードワード値を指定する。
lmcs_delta_sign_cw_flag[i]は、以下のように変数lmcsDeltaCW[i]の符号を指定する。
lmcs_delta_sign_cw_flag[i]が0に等しい場合、lmcsDeltaCW[i]は正の値である。
-それ以外の場合(lmcs_delta_sign_cw_flag[i]が0に等しくない)、lmcsDeltaCW[i]は負の値である。
lmcs_delta_sign_cw_flag[i]が存在しないとき、それは0に等しいと推定される。
変数OrgCWは、以下のように導出される:
i=0..lmcs_min_bin_idx-1について、lmcsCW[i]は0に等しく設定される。
i=lmcs_min_bin_idx..LmcsMaxBinIdxについて、以下が適用される:
i=LmcsMaxBinIdx+1..15について、lmcsCW[i]は0に等しく設定される。
以下の条件が真であることは、ビットストリーム準拠の要件である:
lmcs_delta_abs_crsは変数lmcsDeltaCrsの絶対コードワード値を指定する。lmcs_delta_abs_crsの値は、両端を含む0~7の範囲であるとする。存在しない場合、lmcs_delta_abs_crsは、0に等しいと推定される。
lmcs_delta_sign_crs_flagは、変数lmcsDeltaCrsの符号を指定する。存在しない場合、lmcs_delta_sign_crs_flagは、0に等しいと推定される。
変数lmcsDeltaCrsは、以下のように導出される:
変数ChromaScaleCoeff[i]、i=0…15は以下のように導出される:
scaling_list_chroma_present_flagが1に等しいことは、クロマスケーリングリストがscaling_list_data()に存在することを指定する。scaling_list_chroma_present_flagが0に等しいことは、クロマスケーリングリストがscaling_list_data()に存在しないことを指定する。scaling_list_chroma_present_flagが、ChromaArrayTypeが0に等しい場合は0に等しく、ChromaArrayTypeが0に等しくない場合は1に等しいことが、ビットストリーム準拠の要件である。
scaling_list_copy_mode_flag[id]が1に等しいことは、スケーリングリストの値が参照スケーリングリストの値と同じであることを指定する。参照スケーリングリストは、scaling_list_pred_id_delta[id]で指定される。scaling_list_copy_mode_flag[id]が0に等しいことは、scaling_list_pred_mode_flagが存在することを指定する。
scaling_list_copy_mode_flag[id]が1に等しいことは、スケーリングリストの値が参照スケーリングリストから予測できることを指定する。参照スケーリングリストは、scaling_list_pred_id_delta[id]で指定される。scaling_list_copy_mode_flag[id]が0に等しいことは、スケーリングリストの値が明示的にシグナリングされることを指定する。存在しないとき、scaling_list_pred_mode_flag[id]の値は0に等しいと推定される。
scaling_list_pred_id_delta[id]は、予測スケーリングマトリクスScalingMatrixPred[id]を導出するために使用される参照スケーリングリストを指定する。存在しないとき、scaling_list_pred_id_delta[id]の値は0に等しいと推定される。scaling_list_pred_id_delta[id]の値は0からmaxIdDeltaの範囲とし、idに応じて次のようにmaxIdDeltaを導出する:
-scaling_list_copy_mode_flag[id]とscaling_list_pred_mode_flag[id]の両方が0の場合、ScalingMatrixPredのすべての要素は8に等しく設定され、ScalingMatrixDCPredの値は8に等しく設定される、
-それ以外の場合、scaling_list_pred_id_delta[id]が0に等しい場合、ScalingMatrixPredの全ての要素は16に等しく設定され、ScalingMatrixDCPredは16に等しく設定される、
-それ以外の場合(scaling_list_copy_mode_flag[id]又はscaling_list_pred_mode_flag[id]が1に等しく、scaling_list_pred_id_delta[id]が0より大きい場合)、ScalingMatrixPredはScalingMatrixRec[refId]と等しく設定され、以下がScalingMatrixDCPredに適用される:
-refIdが13より大きい場合、ScalingMatrixDCPredはScalingMatrixDCRec[refId-14]と等しく設定される、
-その他の場合(refIdが13以下)、ScalingMatrixDCPredはScalingMatrixPred[0][0]と等しく設定される。
scaling_list_dc_coef[id-14]は、idが13より大きい場合、変数ScalingMatrixDC[id-14]の値を次のように導出するために使用される:
scaling_list_delta_coef[id][i]は、scaling_list_copy_mode_flag[id]が0に等しい場合、現在のマトリクス係数ScalingList[id][i]と以前のマトリクス係数ScalingList[id][i-1]との間の差を指定する。scaling_list_delta_coef[id][i]の値は、両端を含む-128~127の範囲であるものとする。scaling_list_copy_mode_flag[id]が1に等しい場合、ScalingList[id]のすべての要素は0に等しく設定される。
(matrixSize)x(matrixSize)アレイであるScalingMatrixRec[id]は次のように導出される:
最新のVVCドラフトテキストでは、PHシンタックスとセマンティクスは次の通りである。
gdr_or_irap_pic_flagが1に等しいことは、現在ピクチャがGDR又はIRAPピクチャであることを指定する。gdr_or_irap_pic_flagが0に等しいことは、現在ピクチャがGDR又はIRAPピクチャであってもよく又はそうではなくてもよいことを指定する。
gdr_pic_flagが1に等しいことは、PHに関連付けられたピクチャがGDRピクチャであることを指定する。gdr_pic_flagが0に等しいことは、PHに関連付けられたピクチャがGDRピクチャではないことを指定する。存在しないとき、gdr_pic_flagの値は0に等しいと推定される。gdr_enabled_flagが0に等しい場合、gdr_pic_flagの値は0に等しくなるものとする。
ph_inter_slice_allowed_flagが0に等しいことは、ピクチャのすべてのコーディングスライスのslice_typeが2に等しいことを指定する。ph_inter_slice_allowed_flageが1に等しいことは、slice_typeが0又は1に等しい1つ以上のコーディングスライスがピクチャ内に存在するかどうかを指定する。
ph_intra_slice_allowed_flagが0に等しいことは、ピクチャのすべてのコーディングスライスのslice_typeが0又は1に等しいことを指定する。ph_intra_slice_allowed_flagが1に等しいことは、slice_typeが2に等しい1つ以上のコーディングスライスがピクチャ内に存在するかどうかを指定する。存在しないとき、ph_intra_slice_allowed_flagの値は1に等しいと推定される。
注1:PH NALユニットを変更することなくサブピクチャに基づくビットストリームマージを行うことが想定されているビットストリームの場合、エンコーダはph_inter_slice_allowed_flagとph_intra_slice_allowed_flagの両方の値を1に等しく設定することが期待される。
non_reference_picture_flagが1に等しいことは、PHに関連付けられたピクチャが参照ピクチャとして使用されないことを指定する。non_reference_picture_flagが0に等しいことは、PHに関連付けられたピクチャが参照ピクチャとして使用される、又は使用されないことを指定する。
ph_pic_parameter_set_idは、使用中のPPSのpps_pic_parameter_set_idの値を指定する。ph_pic_parameter_set_idの値は、両端を含む0~63の範囲であるものとする。
PHのTemporalIdの値が、ph_pic_parameter_set_idに等しいpps_pic_parameter_set_idを持つPPSのTemporalIdの値以上であることはビットストリーム適合性の要件である。
ph_pic_order_cnt_lsbは、現在ピクチャについて、MaxPicOrderCntLsbを法とするピクチャオーダカウントを指定する。ph_pic_order_cnt_lsbシンタックス要素の長さは、log2_max_pic_order_cnt_lsb_minus4+4ビットである。ph_pic_order_cnt_lsbの値は、両端を含む0からMaxPicOrderCntLsb-1の範囲であるものとする。
no_output_of_prior_pics_flagは、AnnexCで指定されたビットストリームの第1ピクチャではないCLVSSピクチャの復号後のDPB内の以前に復号されたピクチャの出力に影響を与える。
recovery_poc_cntは、復号ピクチャの復元ポイントを出力順序で指定する。現在ピクチャが、PHに関連付けられたGDRピクチャであり、CLVSで現在のGDRピクチャに続き、現在のGDRピクチャのPicOrderCntValにrecover_poc_cntの値を加えたものに等しいPicOrderCntValを有するピクチャpicAがある場合、ピクチャpicAは復元ポイントピクチャと呼ばれる。その他の場合、現在ピクチャのPicOrderCntValにrecover_poc_cntの値を加えたよりも大きいPicOrderCntValを有する出力順で第1ピクチャが、復元ポイントピクチャと呼ばれる。復元ポイントピクチャは、復号順で現在のGDRピクチャに先行してはならない。recovery_poc_cntの値は、両端を含む、0からMaxPicOrderCntLsb-1までの範囲であるものとする。
現在ピクチャがGDRピクチャである場合、変数RpPicOrderCntValは次のように導出される:
ph_extra_bit[i]は1又は0に等しくてよい。この仕様のこのバージョンに準拠するデコーダは、ph_extra_bit[i]の値を無視するものとする。その値は、この仕様のこのバージョン内で指定されるプロファイルへのデコーダ準拠性に影響しない。
ph_poc_msb_present_flagが1に等しいことは、シンタックス要素poc_msb_valがPHに存在することを指定する。ph_poc_msb_present_flagが0に等しいことは、シンタックス要素poc_msb_valがPHに存在しないことを指定する。vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]が0に等しく、現在レイヤの参照レイヤの現在AUにピクチャが存在する場合、ph_poc_msb_present_flagの値は0に等しくなるものとする。
poc_msb_valは現在ピクチャのPOC MSB値を指定する。シンタックス要素poc_msb_valの長さは、poc_msb_len_minus1+1ビットである。
ph_alf_enabled_flagが1に等しいことは、PHに関連付けられたすべてのスライスに対して適応ループフィルタが有効であり、スライス内のY、Cb、又はCr色成分に適用できることを指定する。ph_alf_enabled_flagが0に等しいことは、PHに関連付けられた1つ以上又はすべてのスライスに対して適応ループフィルタを無効にできることを指定する。存在しない場合、ph_alf_enabled_flagは、0に等しいと推定される。
ph_num_alf_aps_ids_lumaは、PHに関連付けられたスライスが参照するALF APSの数を指定する。
ph_alf_aps_id_luma[i]は、PHに関連付けられたスライスのルマ成分が参照するi番目のALF APSのadaptation_parameter_set_idを指定する。
aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがph_alf_aps_id_luma[i]に等しいAPS NALユニットのalf_luma_filter_signal_flagの値は1に等しいものとする。
aps_params_typeがALF_APSと等しく、adaptation_parameter_set_idがph_alf_aps_id_luma[i]と等しいAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
ph_alf_chroma_idcが0に等しいことは、CbとCr色成分に適応ループフィルタが適用されないことを指定する。ph_alf_chroma_idcが1に等しいことは、Cb色成分に適応ループフィルタが適用されることを示す。ph_alf_chroma_idcが2に等しいことは、Cr色成分に適応ループフィルタが適用されることを示す。ph_alf_chroma_idcが3に等しいことは、Cb及びCr色成分に適応ループフィルタが適用されることを示す。ph_alf_chroma_idcが存在しない場合は、0に等しいと推測される。
ph_alf_aps_id_chromaは、PHに関連付けられたスライスのクロマ成分が参照するi番目のALF APSのadaptation_parameter_set_idを指定する。
aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがph_alf_aps_id_chromaに等しいAPS NALユニットのalf_chroma_filter_signal_flagの値は1に等しいものとする。
aps_params_typeがALF_APSと等しく、adaptation_parameter_set_idがph_alf_aps_id_chromaと等しいAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
ph_cc_alf_cb_enabled_flagが1に等しいことは、PHに関連付けられたすべてのスライスに対してCb色成分の成分間フィルタが有効になり、スライス内のCb色成分に適用できることを指定する。ph_cc_alf_cb_enabled_flagが0に等しいことは、PHに関連付けられた1つ以上又はすべてのスライスに対して、Cb色成分の成分間フィルタを無効にすることができることを指定する。存在しない場合、ph_cc_alf_cb_enabled_flagは、0に等しいと推定される。
ph_cc_alf_cb_aps_idは、PHに関連付けられたスライスのCb色成分が参照するALF APSのadaptation_parameter_set_idを指定する。
aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがph_cc_alf_cb_aps_idに等しいAPS NALユニットのalf_cc_cb_filter_signal_flagの値は1に等しいものとする。
aps_params_typeがALF_APSと等しく、adaptation_parameter_set_idがph_cc_alf_cb_aps_idと等しいAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
ph_cc_alf_cr_enabled_flagが1に等しいことは、PHに関連付けられたすべてのスライスに対してCr色成分の成分間フィルタが有効になり、スライス内のCr色成分に適用できることを指定する。ph_cc_alf_cr_enabled_flagが0に等しいことは、PHに関連付けられた1つ以上又はすべてのスライスに対して、Cr色成分の成分間フィルタを無効にすることができることを指定する。存在しない場合、ph_cc_alf_cr_enabled_flagは、0に等しいと推定される。
ph_cc_alf_cr_aps_idは、PHに関連付けられたスライスのCr色成分が参照するALF APSのadaptation_parameter_set_idを指定する。
aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがph_cc_alf_cr_aps_idに等しいAPS NALユニットのalf_cc_cr_filter_signal_flagの値は1に等しいものとする。
aps_params_typeがALF_APSと等しく、adaptation_parameter_set_idがph_cc_alf_cr_aps_idと等しいAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
ph_lmcs_enabled_flagが1に等しいことは、PHに関連付けられているすべてのスライスについて、クロマスケーリングによるルママッピングが有効であることを指定する。ph_lmcs_enabled_flagが0に等しいことは、PHに関連付けられた1つ以上又はすべてのスライスに対して、クロマスケーリングによるルママッピングを無効にできることを指定する。存在しないとき、ph_lmcs_enabled_flagの値は0に等しいと推定される。
ph_lmcs_aps_idは、PHに関連付けられたスライスが参照するLMCS APSのadaptation_parameter_set_idを指定する。aps_params_typeがLMCS_APSと等しく、adaptation_parameter_set_idがph_lmcs_aps_idと等しいAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
ph_chroma_residual_scale_flagが1に等しいことは、PHに関連付けられているすべてのスライスについて、クロマ残差スケーリングが有効であることを指定する。ph_chroma_residual_scale_flagが0に等しいことは、PHに関連付けられた1つ以上又はすべてのスライスに対してクロマ残差スケーリングを無効にできることを指定する。ph_chroma_residual_scale_flagが存在しないとき、それは0に等しいと推定される。
ph_scaling_list_present_flagが1に等しいことは、PHに関連付けられたスライスに使用されるスケーリングリストデータが、参照されるスケーリングリストAPSに含まれるスケーリングリストデータに基づいて導出されることを指定する。ph_scaling_list_present_flagが0に等しいことは、PHに関連付けられたスライスに使用されるスケーリングリストデータが16に等しく設定されることを指定する。存在しないとき、ph_scaling_list_present_flagの値は0に等しいと推定される。
ph_scaling_list_aps_idは、スケーリングリストAPSのadaptation_parameter_set_idを指定する。aps_params_typeがSCALING_APSと等しく、adaptation_parameter_set_idがph_scaling_list_aps_idと等しいAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
ph_virtual_boundaries_present_flagが1に等しいことは、仮想境界の情報がPHでシグナリングされることを指定する。ph_virtual_boundaries_present_flagが0に等しいことは、仮想境界の情報がPHでシグナリングされないことを指定する。PHでシグナリングされている仮想境界が1つ以上ある場合、インループフィルタリング操作は、ピクチャ内の仮想境界に渡り無効になる。インループフィルタリング操作には、デブロッキングフィルタ、サンプル適応オフセットフィルタ、及び適応ループフィルタ操作が含まれる。存在しないとき、ph_virtual_boundaries_present_flagの値は0に等しいと推定される。
subpic_info_present_flagの値が1に等しい場合、ph_virtual_boundaries_present_flagの値が0に等しいことが、ビットストリーム準拠の要件である。
変数VirtualBoundariesPresentFlagは、以下のように導出される:
変数NumVerVirtualBoundariesは、以下のように導出される:
両端を含む0からNumVerVirtualBoundaries-1までの範囲のiについて、ルマサンプルの単位で垂直仮想境界の位置を指定するリストVirtualBoundariesPosX[i]は、次のように導き出される:
ph_num_hor_virtual_boundariesは、PHに存在するph_virtual_boundaries_pos_y[i]シンタックス要素の数を指定する。ph_num_hor_virtual_boundariesが存在しない場合は、0に等しいと推測される。
変数NumHorVirtualBoundariesは、以下のように導出される:
ph_virtual_boundaries_pos_y[i]は、ルマサンプルを8で割った単位でi番目の水平仮想境界の位置を指定する。ph_virtual_boundaries_pos_y[i]の値は、両端を含む1~Ceil(pic_height_in_luma_samples÷8)-1の範囲であるものとする。
両端を含む0からNumHorVirtualBoundaries-1までの範囲のiについて、ルマサンプルの単位で水平仮想境界の位置を指定するリストVirtualBoundariesPosY[i]は、次のように導き出される:
pic_output_flagは、AnnexCに規定されているように、復号ピクチャ出力及び削除処理に影響を与える。pic_output_flagが存在しない場合、それは、1に等しいと推定される。
partition_constraints_override_flagが1に等しいことは、パーティション制約パラメータがPHに存在することを指定する。partition_constraints_override_flagが0に等しいことは、パーティション制約パラメータがPHに存在しないことを指定する。存在しないとき、partition_constraints_override_flagの値は0に等しいと推定される。
ph_log2_diff_min_qt_min_cb_intra_slice_lumaは、CTUの4分木分割により生じたルマリーフブロックのルマサンプルのうちの最小サイズの底2の対数と、slice_typeがPHに関連付けられている2(I)に等しいスライスのルマCUのルマサンプルのうちの最小コーディングブロックサイズの底2の対数との間の差を指定する。ph_log2_diff_min_qt_min_cb_intra_slice_lumaの値は、0~CtbLog2SizeY-MinCbLog2SizeYの範囲に包含されるものとする。存在しないとき、ph_log2_diff_min_qt_min_cb_lumaの値はsps_log2_diff_min_qt_min_cb_intra_slice_lumaに等しいと推定される。
ph_max_mtt_hierarchy_depth_intra_slice_lumaは、PHに関連付けられている2(I)に等しいslice_typeを有するスライスの中の4分木リーフのマルチタイプ木分割から生じるコーディングユニットのデフォルトの最大階層構造深さを指定する。ph_max_mtt_hierarchy_depth_intra_slice_lumaの値は、両端を含む0~2*(CtbLog2SizeY-MinCbLog2SizeY)の範囲であるものとする。存在しないとき、ph_max_mtt_hierarchy_depth_intra_slice_lumaの値は、sps_max_mtt_hierarchy_depth_intra_slice_lumaに等しいと推定される。
ph_log2_diff_max_bt_min_qt_intra_slice_lumaは、2分割を使用して分割できるルマコーディングブロックのルマサンプルのうち最大サイズ(幅又は高さ)の底2の対数と、slice_typeがPHに関連付けられている2(I)に等しいスライス内のCTUの4分木分割によって生じるルマリーフブロックのルマサンプルのうちの最小サイズ(幅又は高さ)との間の差を指定する。ph_log2_diff_max_bt_min_qt_intra_slice_lumaの値は、0~CtbLog2SizeY-MinQtLog2SizeIntraYの範囲に包含されるものとする。存在しないとき、ph_log2_diff_max_bt_min_qt_intra_slice_lumaの値はsps_log2_diff_max_bt_min_qt_intra_slice_lumaに等しいと推定される。
ph_log2_diff_max_tt_min_qt_intra_slice_lumaは、3分割を使用して分割できるルマコーディングブロックのルマサンプルのうち最大サイズ(幅又は高さ)の底2の対数と、slice_typeがPHに関連付けられている2(I)に等しいスライス内のCTUの4分木分割によって生じるルマリーフブロックのルマサンプルのうちの最小サイズ(幅又は高さ)との間の差を指定する。ph_log2_diff_max_tt_min_qt_intra_slice_lumaの値は、0~CtbLog2SizeY-MinQtLog2SizeIntraYの範囲に包含されるものとする。存在しないとき、ph_log2_diff_max_tt_min_qt_intra_slice_lumaの値はsps_log2_diff_max_tt_min_qt_intra_slice_lumaに等しいと推定される。
ph_log2_diff_min_qt_min_cb_intra_slice_chromaは、treeTypeがDUAL_TREE_CHROMAに等しいクロマCTUの4分木分割により生じたクロマリーフブロックのクロマサンプルのうちの最小サイズの底2の対数と、slice_typeがPHに関連付けられている2(I)に等しいスライスのうち、treeTypeがDUAL_TREE_CHROMAに等しいクロマCUのルマサンプルのうちの最小コーディングブロックサイズの底2の対数との間の差を指定する。ph_log2_diff_min_qt_min_cb_intra_slice_chromaの値は、0~CtbLog2SizeY-MinCbLog2SizeYの範囲に包含されるものとする。存在しないとき、ph_log2_diff_min_qt_min_cb_intra_slice_chromaの値はsps_log2_diff_min_qt_min_cb_intra_slice_chromaに等しいと推定される。
ph_max_mtt_hierarchy_depth_intra_slice_chromaは、PHに関連付けられている2(I)に等しいslice_typeを有するスライスの中のtreeTypeがDUAL_TREE_CHROMAに等しいクロマ4分木リーフのマルチタイプ木分割から生じるクロマコーディングユニットの最大階層構造深さを指定する。ph_max_mtt_hierarchy_depth_intra_slice_chromaの値は、両端を含む0~2*(CtbLog2SizeY-MinCbLog2SizeY)の範囲であるものとする。存在しないとき、ph_max_mtt_hierarchy_depth_intra_slice_chromaの値は、sps_max_mtt_hierarchy_depth_intra_slice_chromaに等しいと推定される。
ph_log2_diff_max_bt_min_qt_intra_slice_chromaは、2分割を使用して分割できるクロマコーディングブロックのルマサンプルのうち最大サイズ(幅又は高さ)の底2の対数と、slice_typeがPHに関連付けられている2(I)に等しいスライス内のtreeTypeがDUAL_TREE_CHROMAに等しいクロマCTUの4分木分割によって生じるクロマリーフブロックのルマサンプルのうちの最小サイズ(幅又は高さ)との間の差を指定する。ph_log2_diff_max_bt_min_qt_intra_slice_chromaの値は、0~CtbLog2SizeY-MinQtLog2SizeIntraCの範囲に包含されるものとする。存在しないとき、ph_log2_diff_max_bt_min_qt_intra_slice_chromaの値はsps_log2_diff_max_bt_min_qt_intra_slice_chromaに等しいと推定される。
ph_log2_diff_max_tt_min_qt_intra_slice_chromaは、3分割を使用して分割できるクロマコーディングブロックのルマサンプルのうち最大サイズ(幅又は高さ)の底2の対数と、slice_typeがPHに関連付けられている2(I)に等しいスライス内のtreeTypeがDUAL_TREE_CHROMAに等しいクロマCTUの4分木分割によって生じるクロマリーフブロックのルマサンプルのうちの最小サイズ(幅又は高さ)との間の差を指定する。ph_log2_diff_max_tt_min_qt_intra_slice_chromaの値は、0~CtbLog2SizeY-MinQtLog2SizeIntraCの範囲に包含されるものとする。存在しないとき、ph_log2_diff_max_tt_min_qt_intra_slice_chromaの値はsps_log2_diff_max_tt_min_qt_intra_slice_chromaに等しいと推定される。
ph_cu_qp_delta_subdiv_intra_sliceは、cu_qp_delta_absとcu_qp_delta_sign_flagを伝えるイントラスライス内のコーディングユニットの最大cbSubdiv値を指定する。ph_cu_qp_delta_subdiv_intra_sliceの値は、両端を含む0から2*(CtbLog2SizeY-MinQtLog2SizeIntraY+ph_max_mtt_hierarchy_depth_intra_slice_luma)までの範囲であるものとする。
存在しないとき、ph_cu_qp_delta_subdiv_intra_sliceの値は0に等しいと推定される。
ph_cu_chroma_qp_offset_subdiv_intra_sliceは、cu_chroma_qp_offset_flagを伝えるイントラスライス内のコーディングユニットの最大cbSubdiv値を指定する。ph_cu_chroma_qp_offset_subdiv_intra_sliceの値は、両端を含む0から2*(CtbLog2SizeY-MinQtLog2SizeIntraY+ph_max_mtt_hierarchy_depth_intra_slice_luma)までの範囲であるものとする。
存在しないとき、ph_cu_chroma_qp_offset_subdiv_intra_sliceの値は0に等しいと推定される。
ph_log2_diff_min_qt_min_cb_inter_sliceは、CTUの4分木分割により生じたルマリーフブロックのルマサンプルのうちの最小サイズの底2の対数と、slice_typeがPHに関連付けられている0(B)又は1(P)に等しいスライスのルマCUのルマサンプルのうちの最小ルマコーディングブロックサイズの底2の対数との間の差を指定する。ph_log2_diff_min_qt_min_cb_inter_sliceの値は、0~CtbLog2SizeY-MinCbLog2SizeYの範囲に包含されるものとする。存在しないとき、ph_log2_diff_min_qt_min_cb_lumaの値はsps_log2_diff_min_qt_min_cb_inter_sliceに等しいと推定される。
ph_max_mtt_hierarchy_depth_inter_sliceは、slice_typeがPHに関連付けられている0(B)又は1(P)に等しいスライス内の4分木リーフのマルチタイプツリー分割から生じるコーディングユニットの最大階層構造深さを指定する。ph_max_mtt_hierarchy_depth_inter_sliceの値は、両端を含む0~2*(CtbLog2SizeY-MinCbLog2SizeY)の範囲であるものとする。存在しないとき、ph_max_mtt_hierarchy_depth_inter_sliceの値は、sps_max_mtt_hierarchy_depth_inter_sliceに等しいと推定される。
ph_log2_diff_max_bt_min_qt_inter_sliceは、2分割を使用して分割できるルマコーディングブロックのルマサンプルのうち最大サイズ(幅又は高さ)の底2の対数と、slice_typeがPHに関連付けられている0(B)又は1(P)に等しいスライス内のCTUの4分木分割によって生じるルマリーフブロックのルマサンプルのうちの最小サイズ(幅又は高さ)との間の差を指定する。ph_log2_diff_max_bt_min_qt_inter_sliceの値は、0~CtbLog2SizeY-MinQtLog2SizeInterYの範囲に包含されるものとする。存在しないとき、ph_log2_diff_max_bt_min_qt_inter_sliceの値はsps_log2_diff_max_bt_min_qt_inter_sliceに等しいと推定される。
ph_log2_diff_max_tt_min_qt_inter_sliceは、3分割を使用して分割できるルマコーディングブロックのルマサンプルのうち最大サイズ(幅又は高さ)の底2の対数と、slice_typeがPHに関連付けられている0(B)又は1(P)に等しいスライス内のCTUの4分木分割によって生じるルマリーフブロックのルマサンプルのうちの最小サイズ(幅又は高さ)との間の差を指定する。ph_log2_diff_max_tt_min_qt_inter_sliceの値は、0~CtbLog2SizeY-MinQtLog2SizeInterYの範囲に包含されるものとする。存在しないとき、ph_log2_diff_max_tt_min_qt_inter_sliceの値はsps_log2_diff_max_tt_min_qt_inter_sliceに等しいと推定される。
ph_cu_qp_delta_subdiv_inter_sliceは、cu_qp_delta_absとcu_qp_delta_sign_flagを伝えるインタースライス内のコーディングユニットの最大cbSubdiv値を指定する。ph_cu_qp_delta_subdiv_inter_sliceの値は、両端を含む0~2*(CtbLog2SizeY-MinQtLog2SizeInterY+ph_max_mtt_hierarchy_depth_inter_slice)の範囲であるものとする。
存在しないとき、ph_cu_qp_delta_subdiv_inter_sliceの値は0に等しいと推定される。
ph_cu_chroma_qp_offset_subdiv_inter_sliceは、cu_chroma_qp_offset_flagを伝えるインタースライス内のコーディングユニットの最大cbSubdiv値を指定する。ph_cu_chroma_qp_offset_subdiv_inter_sliceの値は、両端を含む0~2*(CtbLog2SizeY-MinQtLog2SizeInterY+ph_max_mtt_hierarchy_depth_inter_slice)の範囲であるものとする。
存在しないとき、ph_cu_chroma_qp_offset_subdiv_inter_sliceの値は0に等しいと推定される。
ph_temporal_mvp_enabled_flagは、時間的動きベクトル予測子をPHに関連付けられているスライスのインター予測に使用できるかどうかを指定する。ph_temporal_mvp_enabled_flagが0に等しい場合、PHに関連するスライスのシンタックス要素は、スライスの復号に時間的動きベクトル予測子が使用されないように制約されるものとする。その他の場合(ph_temporal_mvp_enabled_flagが1に等しい)、時間的動きベクトル予測子は、PHに関連付けられたスライスの復号に使用されてよい。存在しないとき、ph_temporal_mvp_enabled_flagの値は0に等しいと推定される。DPB内に現在の画像と同じ空間解像度を持つ参照画像がない場合、ph_temporal_mvp_enabled_flagの値は0に等しいものとする。
サブブロックに基づくマージMVP候補の最大数MaxNumSubblockMergeCandは、次のように導出される。
ph_collocated_from_l0_flagが1に等しいことは、時間的動きベクトル予測に使用される同一位置ピクチャが参照ピクチャリスト0から導出されることを指定する。ph_collocated_from_l0_flagが0に等しいことは、時間的動きベクトル予測に使用される同一位置ピクチャが参照ピクチャリスト1から導出されることを指定する。
ph_collocated_ref_idxは、時間的動きベクトル予測に使用される同一位置ピクチャの参照インデックスを指定する。
ph_collocated_from_l0_flagが1に等しい場合、ph_collocated_ref_idxは参照ピクチャリスト0のエントリを参照し、ph_collocated_ref_idxの値は両端を含む0からnum_ref_entries[0][RplsIdx[0]]-1までの範囲にあるものとする。
ph_collocated_from_l0_flagが0に等しい場合、ph_collocated_ref_idxは参照ピクチャリスト1のエントリを参照し、ph_collocated_ref_idxの値は両端を含む0からnum_ref_entries[1][RplsIdx[1]]-1までの範囲にあるものとする。
存在しないとき、ph_collocated_ref_idxの値は0に等しいと推定される。
1に等しいmvd_l1_zero_flagは、mvd_coding(x0,y0,1)シンタックス構造がパースされないこと、compIdx=0..1及びcpIdx=0..2について、MvdL1[x0][y0][compIdx]及びMvdCpL1[x0][y0][cpIdx][compIdx]が0に設定されることを示す。mvd_l1_zero_flagが0に等しいことは、mvd_coding(x0,y0,1)シンタックス構造がパースされることを示す。
ph_fpel_mmvd_enabled_flagが1に等しいことは、動きベクトル差によるマージモードが、PHに関連付けられているスライス内で整数サンプル精度を使用することを指定する。ph_fpel_mmvd_enabled_flagが0に等しいことは、動きベクトル差によるマージモードが、PHに関連付けられているスライス内で分数サンプル精度を使用できることを指定する。存在しないとき、ph_fpel_mmvd_enabled_flagの値は0であると推定される。
ph_disable_bdof_flagが1に等しいことは、PHに関連付けられているスライス内で双方向オプティカルフローインター予測に基づくインター双予測が無効にされることを指定する。ph_disable_bdof_flagが0に等しいことは、PHに関連付けられているスライス内で双方向オプティカルフローインター予測に基づくインター双予測が有効にされてもされなくてもよいことを指定する。
ph_disable_bdof_flagが存在しない場合、以下が適用される:
-sps_bdof_enabled_flagが1に等しい場合、ph_disable_bdof_flagの値は0に等しいと推定される。
-それ以外の場合(sps_bdof_enabled_flagが0に等しい)、ph_disable_bdof_flagの値は1に等しいと推定される。
ph_disable_dmvr_flagが1に等しいことは、PHに関連付けられているスライスで、デコーダ動きベクトル精緻化に基づくインター双予測が無効にされることを指定する。ph_disable_dmvr_flagが0に等しいことは、PHに関連付けられているスライスで、デコーダ動きベクトル精緻化に基づくインター双予測が有効にされてもされなくてもよいことを指定する。
ph_disable_dmvr_flagが存在しない場合、以下が適用される:
-sps_dmvr_enabled_flagが1に等しい場合、ph_disable_dmvr_flagの値は0に等しいと推定される。
-それ以外の場合(sps_dmvr_enabled_flagが0に等しい)、ph_disable_dmvr_flagの値は1に等しいと推定される。
ph_disable_prof_flagが1に等しい場合は、PHに関連付けられたスライスでオプティカルフローによる予測精緻化が無効にされることを指定する。ph_disable_prof_flagが0に等しい場合は、PHに関連付けられたスライスでオプティカルフローによる予測精緻化が有効にされてもされなくてもよいことを指定する。
ph_disable_prof_flagが存在しない場合、以下が適用される:
-sps_affine_prof_enabled_flagが1に等しい場合、ph_disable_prof_flagの値は0に等しいと推定される、
-それ以外の場合(sps_affine_prof_enabled_flagが0に等しい)、ph_disable_prof_flagの値は1に等しいと推定される。
ph_qp_deltaは、コードユニット層のCuQpDeltaValの値で修正されるまで、ピクチャ内のコーディングブロックに使用されるQpYの初期値を指定する。
qp_delta_info_in_ph_flagが1に等しい場合、ピクチャのすべてのスライスに対するQpY量子化パラメータの初期値SliceQpYは次のように導出される:
ph_joint_cbcr_sign_flagは、tu_joint_cbcr_residual_flag[x0][y0]が1に等しい変換ユニットで、両方のクロマ成分の同一位置残余サンプルが反転符号を持つかどうかを指定する。変換ユニットに対してtu_joint_cbcr_residual_flag[x0][y0]が1に等しい場合、ph_joint_cbcr_sign_flagが0に等しいことは、Cr(又はCb)成分の各残差サンプルの符号が同一位置Cb(又はCr)残差サンプルの符号と同一であることを指定し、ph_joint_cbcr_sign_flagが1に等しいことは、Cr(又はCb)成分の各残差サンプルの符号が同一位置Cb(又はCr)残差サンプルの逆符号で与えられることを指定する。
ph_sao_luma_enabled_flagが1に等しいことは、PHに関連付けられたすべてのスライスでルマ成分についてSAOが有効にされることを指定する。ph_sao_luma_enabled_flagが0に等しいことは、PHに関連付けられた1つ以上又はすべてのスライスに対して、ルマ成分のためのSAOを無効にすることができることを指定する。ph_sao_luma_enabled_flagが存在しない場合は、0に等しいと推測される。
ph_sao_luma_enabled_flagが1に等しいことは、PHに関連付けられたすべてのスライスのクロマ成分に対してSAOが有効になる。ph_sao_chroma_enabled_flagが0に等しいことは、PHに関連付けられた1つ以上又はすべてのスライスに対して、クロマ成分のためのSAOを無効にすることができることを指定する。ph_sao_chroma_enabled_flagが存在しない場合は、0に等しいと推測される。
ph_dep_quant_enabled_flagが0に等しいことは、現在ピクチャに対して依存量子化を無効にすることを指定する。ph_dep_quant_enabled_flagが1に等しいことは、現在ピクチャに対して依存量子化を有効にすることを指定する。ph_dep_quant_enabled_flagが存在しない場合は、0に等しいと推測される。
pic_sign_data_hiding_enabled_flagが0に等しいことは、現在ピクチャに対して符号ビット非表示を無効にすることを指定する。pic_sign_data_hiding_enabled_flagが1に等しいことは、現在ピクチャに対して符号ビット非表示を有効にすることを指定する。pic_sign_data_hiding_enabled_flagが存在しない場合、0と等しいと推測される。
ph_deblocking_filter_override_flagが1に等しいことは、デブロッキングパラメータがPHに存在することを指定する。ph_deblocking_filter_override_flagが0に等しいことは、デブロッキングパラメータがPHに存在しないことを指定する。存在しないとき、ph_deblocking_filter_override_flagの値は0に等しいと推定される。
ph_deblocking_filter_disabled_flagが1に等しいことは、デブロッキングフィルタの操作がPHに関連付けられているスライスに適用されないことを指定する。ph_deblocking_filter_disabled_flagが0に等しいことは、デブロッキングフィルタの操作が、PHに関連付けられているスライスに適用されることを指定する。ph_deblocking_filter_disabled_flagが存在しない場合、それは、pps_deblocking_filter_disabled_flagに等しいと推定される。
ph_beta_offset_div2及びph_tc_offset_div2は、PHに関連付けられているスライスについて、ルマ成分に適用されるβ及びtC(2で除算されたもの)のデブロッキングパラメータオフセットを指定する。ph_beta_offset_div2とph_tc_offset_div2の値は、両方とも両端を含む-12から12の範囲内にあるものとする。存在しない場合、ph_beta_offset_div2とph_tc_offset_div2の値は、各々pps_beta_offset_div2とpps_tc_offset_div2に等しいと推定される。
ph_cb_beta_offset_div2及びph_cb_tc_offset_div2は、PHに関連付けられているスライスについて、Cb成分に適用されるβ及びtC(2で除算されたもの)のデブロッキングパラメータオフセットを指定する。ph_cb_beta_offset_div2とph_cb_tc_offset_div2の値は、両方とも両端を含む-12から12の範囲内にあるものとする。存在しない場合、ph_cb_beta_offset_div2とph_cb_tc_offset_div2の値は、各々pps_cb_beta_offset_div2とpps_cb_tc_offset_div2に等しいと推定される。
ph_cr_beta_offset_div2及びph_cr_tc_offset_div2は、PHに関連付けられているスライスについて、Cr成分に適用されるβ及びtC(2で除算されたもの)のデブロッキングパラメータオフセットを指定する。ph_cr_beta_offset_div2とph_cr_tc_offset_div2の値は、両方とも両端を含む-12から12の範囲内にあるものとする。存在しない場合、ph_cr_beta_offset_div2とph_cr_tc_offset_div2の値は、各々pps_cr_beta_offset_div2とpps_cr_tc_offset_div2に等しいと推定される。
ph_extension_lengthは、PH拡張データの長さをバイト単位で指定するもので、ph_extension_length自体のシグナリングに使用されるビットは含まれない。ph_extension_lengthの値は、両端を含む0~256の範囲であるものとする。存在しないとき、ph_extension_lengthの値は0に等しいと推定される。
ph_extension_data_byteは、任意の値を有してよい。この仕様のこのバージョンに準拠するデコーダは、ph_extension_data_byteの値を無視するものとする。その値は、この仕様のこのバージョン内で指定されるプロファイルへのデコーダ準拠性に影響しない。
最新のVVCドラフトテキストでは、SHシンタックスとセマンティクスは次の通りである。
picture_header_in_slice_header_flagが1に等しいことは、スライスヘッダにPHシンタックス構造が存在することを指定する。picture_header_in_slice_header_flagが0に等しいことは、スライスヘッダにPHシンタックス構造が存在しないことを指定する。
ビデオビットストリーム準拠の要件は、picture_header_in_slice_header_flagの値が、CLVS内の全てのコーディングスライスで同じであることである。
コーディングスライスのpicture_header_in_slice_header_flagが1に等しい場合、nal_unit_typeがPH_NUTと等しいVCL NALユニットがCLVSに存在しないことが、ビットストリーム準拠の要件となる。
picture_header_in_slice_header_flagが0に等しい場合、現在ピクチャ内のすべてのコーディングされたスライスは、picture_header_in_slice_header_flagが0に等しく、現在PUがPH NALユニットを持つことである。
slice_subpic_idは、スライスを含むサブピクチャのサブピクチャIDを指定する。slice_subpic_idが存在する場合、変数CurrSubpicIdxの値は、SubpicIdVal[CurrSubpicIdx]がslice_subpic_idと等しくなるように導出される。それ以外の場合(slice_subpic_idが存在しない)、CurrSubpicIdxは0に等しくなるよう導出される。slice_subpic_idの長さはsps_subpic_id_len_minus1+1ビットである。
slice_addressはスライスのスライスアドレスを指定する。存在しないとき、slice_addressの値は0に等しいと推定される。rect_slice_flagが0に等しく、NumSlicesInSubpic[CurrSubpicIdx]が1に等しい場合、slice_addressの値は0に等しいと推定される。
rect_slice_flagが0に等しい場合、以下が適用される:
-スライスアドレスはラスタースキャンタイルインデックスである、
slice_addressの長さはCeil(Log2(NumTilesInPic))ビットである、
-slice_addressの値は、両端を含む0~NumTilesInPic-1の範囲であるものとする、
その他の場合(rect_slice_flagが1に等しい)、以下が適用される:
-スライスアドレスは、スライスのサブピクチャレベルのスライスインデックスである、
-slice_addressの長さはCeil(Log2(NumSlicesInSubpic[CurrSubpicIdx]))ビット)である、
-slice_addressの値は、両端を含む0~NumSlicesInSubpic[CurrSubpicIdx]-1の範囲であるものとする。
ビットストリーム適合性の要件は、以下の制約が適用されることである:
-rect_slice_flagが0に等しい又はsubpic_info_present_flagが0に等しい場合、slice_addressの値は、同じコーディングピクチャの他のコーディングスライスNALユニットのslice_addressの値と等しくないものとする、
-その他の場合、slice_subpic_id値とslice_address値のペアは、同じコーディングピクチャの他のコーディングスライスNALユニットのslice_subpic_id値とslice_address値のペアと等しくないものとする、
-ピクチャのスライスの形状は、各CTUが、復号されたときに、ピクチャ境界からなるか、又は以前に復号されたCTUの境界からなる、その左側境界全体及び上側境界全体を有するものとする。
sh_extra_bit[i]は1又は0に等しくてよい。この仕様のこのバージョンに準拠するデコーダは、valueofsh_extra_bit[i]の値を無視するものとする。その値は、この仕様のこのバージョン内で指定されるプロファイルへのデコーダ準拠性に影響しない。
num_tiles_in_slice_minus1に1を加えたものは、存在するとき、スライス内のタイル数を指定する。num_tiles_in_slice_minus1の値は、両端を含む0~NumTilesInPic-1の範囲であるものとする。
現在スライス内のCTUの数を指定する変数NumCtusInCurrSliceと、スライス内のi番目のCTBのピクチャラスタスキャンアドレスを指定するリストCtbAddrInCurrSlice[i]は、両端を含む0~NumCtusInCurrSlice-1の範囲のiについて、次のように導出される:
ph_intra_slice_allowed_flagが0に等しい場合、slice_typeの値は0又は1に等しくなるものとする。nal_unit_typeが、両端を含むDR_W_RADLからCRA_NUTまでの範囲である場合、vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]は1に等しく、slice_typeは2に等しいものとする
変数MinQtLog2SizeY、MinQtLog2SizeC、MinQtSizeY、MinQtSizeC、MaxBtSizeY、MaxBtSizeC、MinBtSizeY、MaxTtSizeY、MaxTtSizeC、MinTtSizeY、MaxMttDepthY、及びMaxMttDepthCは、以下のように導出される:
-slice_typeが2(I)に等しい場合、以下が適用される:
slice_num_alf_aps_ids_lumaは、スライスが参照するALF APSの数を指定する。slice_alf_enabled_flagが1に等しく、slice_num_alf_aps_ids_lumaが存在しないとき、slice_num_alf_aps_ids_lumaの値はph_num_alf_aps_ids_lumaの値はに等しいと推定されるslice_alf_aps_id_luma[i]は、スライスのルマ成分が参照するi番目のALF APSのadaptation_parameter_set_idを指定する。aps_params_typeがALF_APSと等しく、adaptation_parameter_set_idがslice_alf_aps_id_luma[i]と等しいAPS NALユニットのTemporalIdは、コーディングスライスNALユニットのTemporalId以下であるものとする。slice_alf_enabled_flagが1に等しく、slice_alf_aps_id_luma[i]が存在しないとき、slice_alf_aps_id_luma[i]の値はph_alf_aps_id_luma[i]の値に等しいと推定される。
aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがslice_alf_aps_id_luma[i]に等しいAPS NALユニットのalf_luma_filter_signal_flagの値は1に等しいものとする。
slice_alf_chroma_idcが0に等しいことは、CbとCr色成分に適応ループフィルタが適用されないことを指定する。slice_alf_chroma_idcが1に等しいことは、Cb色成分に適応ループフィルタが適用されることを示す。slice_alf_chroma_idcが2に等しいことは、Cr色成分に適応ループフィルタが適用されることを示す。slice_alf_chroma_idcが3に等しいことは、Cb及びCr色成分に適応ループフィルタが適用されることを示す。slice_alf_chroma_idcが存在しない場合、それは、ph_alf_chroma_idcに等しいと推定される。
slice_alf_aps_id_chromaは、スライスのクロマ成分が参照するi番目のALF APSのadaptation_parameter_set_idを指定する。aps_params_typeがALF_APSと等しく、adaptation_parameter_set_idがslice_alf_aps_id_chromaと等しいAPS NALユニットのTemporalIdは、コーディングスライスNALユニットのTemporalId以下であるものとする。slice_alf_enabled_flagが1に等しく、slice_alf_aps_id_chromaが存在しないとき、slice_alf_aps_id_chromaの値はph_alf_aps_id_chromaの値に等しいと推定される。
aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがslice_alf_aps_id_chromaに等しいAPS NALユニットのalf_chroma_filter_signal_flagの値は1に等しいものとする。
slice_cc_alf_cb_enabled_flagが0に等しいことは、成分間フィルタがCb色成分に適用されないことを指定する。slice_cc_alf_cb_enabled_flagが1に等しいことは、成分間フィルタが有効であり、Cb色成分に適用される可能性があることを指定する。slice_cc_alf_cb_enabled_flagが存在しない場合、それは、ph_cc_alf_cb_enabled_flagに等しいと推定される。
slice_cc_alf_cb_aps_idは、スライスのCb色成分が参照するadaptation_parameter_set_idを指定する。
aps_params_typeがALF_APSと等しく、adaptation_parameter_set_idがslice_cc_alf_cb_aps_idと等しいAPS NALユニットのTemporalIdは、コーディングスライスNALユニットのTemporalId以下であるものとする。slice_cc_alf_cb_enabled_flagが1に等しく、slice_cc_alf_cb_aps_idが存在しないとき、slice_cc_alf_cb_aps_idの値はph_cc_alf_cb_aps_idの値に等しいと推定される。
aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがslice_cc_alf_cb_aps_idに等しいAPS NALユニットのalf_cc_cb_filter_signal_flagの値は1に等しいものとする。
slice_cc_alf_cr_enabled_flagが0に等しいことは、成分間フィルタがCr色成分に適用されないことを指定する。slice_cc_alf_cb_enabled_flagが1に等しいことは、成分間適応ループフィルタが有効であり、Cr色成分に適用される可能性があることを指定する。slice_cc_alf_cr_enabled_flagが存在しない場合、それは、ph_cc_alf_cr_enabled_flagに等しいと推定される。
slice_cc_alf_cr_aps_idは、スライスのCr色成分が参照するadaptation_parameter_set_idを指定する。aps_params_typeがALF_APSと等しく、adaptation_parameter_set_idがslice_cc_alf_cr_aps_idと等しいAPS NALユニットのTemporalIdは、コーディングスライスNALユニットのTemporalId以下であるものとする。slice_cc_alf_cr_enabled_flagが1に等しく、slice_cc_alf_cr_aps_idが存在しないとき、slice_cc_alf_cr_aps_idの値はph_cc_alf_cr_aps_idの値に等しいと推定される。
aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがslice_cc_alf_cr_aps_idに等しいAPS NALユニットのalf_cc_cr_filter_signal_flagの値は1に等しいものとする。
separate_colour_plane_flagが1に等しいとき、color_plane_idは、現在スライスに関連付けられている色平面を識別する。colour_plane_idの値は、両端を含む0~2の範囲であるものとする。color_plane_id値0、1、2は、各々Y、Cb、Cr平面に対応する。値3のcolour_plane_idは、ITU-T/ISO/IECによる将来の使用のために予約されている。
注1:1つのピクチャの異なる色平面の復号処理間に依存関係はない。
num_ref_idx_active_override_flagが1に等しいことは、シンタックス要素num_ref_idx_active_minus1[0]がP及びBスライスについて存在し、シンタックス要素num_ref_idx_active_minus1[1]がBスライスについて存在することを指定する。num_ref_idx_active_override_flagが0に等しいことは、シンタックス要素num_ref_idx_active_minus1[0]及びnum_ref_idx_active_minus1[1]が存在しないことを指定する。存在しないとき、num_ref_idx_active_override_flagの値は1に等しいと推定される。
num_ref_idx_active_minus1[i]は、式143で指定されている変数NumRefIdxActive[i]の導出に使用される。num_ref_idx_active_minus1[i]の値は、両端を含む0~14の範囲であるものとする。
0又は1に等しいiについて、現在スライスがBスライスであり、num_ref_idx_active_override_flagが1に等しく、num_ref_idx_active_minus1[i]が存在しないとき、num_ref_idx_active_minus1[i]は0に等しいと推定される。
現在スライスがPスライスであり、num_ref_idx_active_override_flagが1に等しく、num_ref_idx_active_minus1[i]が存在しないとき、num_ref_idx_active_minus1[i]は0に等しいと推定される。
変数NumRefIdxActive[i]は以下のように導出される:
現在スライスがPスライスである場合、NumRefIdxActive[0]の値は0より大きいものとする。
現在スライスがBスライスである場合、NumRefIdxActive[0]及びNumRefIdxActive[1]の両方は0より大きいものとする。
cabac_init_flagは、コンテキスト変数の初期化処理で使用される初期化テーブルを決定する方法を指定する。cabac_init_flagが存在しない場合、0と等しいと推定される。
slice_collocated_from_l0_flagが1に等しいことは、時間的動きベクトル予測に使用される同一位置ピクチャが参照ピクチャリスト0から導出されることを指定する。slice_collocated_from_l0_flagが0に等しいことは、時間的動きベクトル予測に使用される同一位置ピクチャが参照ピクチャリスト1から導出されることを指定する。
slice_typeがB又はPに等しく、ph_temporal_mvp_enabled_flagが1に等しく、slice_collocated_from_l0_flagが存在しない場合、以下が適用される:
-rpl_info_in_ph_flagが1に等しい場合、slice_collocated_from_l0_flagはph_collocated_from_l0_flagに等しいと推定される、
-それ以外の場合(rpl_info_in_ph_flagが0に等しく、slice_typeがPに等しい)、slice_collocated_from_l0_flagの値は1に等しいと推定される。
slice_collocated_ref_idxは、時間的動きベクトル予測に使用される同一位置ピクチャの参照インデックスを指定する。
slice_typeがPに等しい場合、又はslice_typeがBに等しく、slice_collocated_from_l0_flagが1に等しい場合、slice_collocated_ref_idxは参照ピクチャリスト0のエントリを参照し、slice_collocated_ref_idxの値は、両端を含む0からNumRefIdxActive[0]-1までの範囲にあるものとする。
slice_typeがBに等しく、slice_collocated_from_l0_flagが0に等しい場合、slice_collocated_ref_idxは参照ピクチャリスト1のエントリを参照し、slice_collocated_ref_idxの値は、両端を含む0からNumRefIdxActive[1]-1までの範囲にあるものとする。
slice_collocated_ref_idxが存在しない場合、以下が適用される:
-rpl_info_in_ph_flagが1に等しい場合、slice_collocated_ref_idxの値は、ph_collocated_ref_idxに等しいと推定される、
-それ以外の場合(rpl_info_in_ph_flagが0に等しい)、slice_collocated_ref_idxの値は0に等しいと推定される。
slice_collocated_ref_idxによって参照されるピクチャが、コーディングピクチャのすべてのスライスに対して同じであることは、ビットストリーム準拠の要件である。
slice_collocated_ref_idxによって参照される参照ピクチャのpic_width_in_luma_samplesとpic_height_in_luma_samplesの値が、各々現在ピクチャのpic_width_in_luma_samplesとpic_height_in_luma_samplesの値と等しこと、及び、RprConstraintsActive[slice_collocated_from_l0_flag?0:1][slice_collocated_ref_idx]が0に等しいことは、ビットストリーム準拠の要件である。
slice_qp_deltaは、コードユニット層のCuQpDeltaValの値により変更されるまで、スライス内のコーディングブロックに使用されるQpYの初期値を指定する。
qp_delta_info_in_ph_flagが0に等しい場合、スライスに対するQpY量子化パラメータの初期値SliceQpYは次のように導出される:
次の条件のいずれかが真である場合:
-wp_info_in_ph_flagの値が1に等しく、pps_weighted_pred_flagが1に等しく、slice_typeがPに等しい、
-wp_info_in_ph_flagの値が1に等しく、pps_weighted_bipred_flagが1に等しく、slice_typeがBに等しい、
以下が適用される:
-NumRefIdxActive[0]の値は、NumWeightsL0の値以下であるとものとする、
-両端を含む0からNumRefIdxActive[0]-1までの範囲のiについて、各参照ピクチャインデックスRefPicList[0][i]について、参照ピクチャインデックスに適用されるルマ重み、Cb重み、及びCr重みは、各々LumaWeightL0[i]、ChromaWeightL0[0][i]、及びChromaWeightL0[1][i]である。
wp_info_in_ph_flagが1に等しく、pps_weighted_bipred_flagが1に等しく、slice_typeがBに等しい場合、以下が適用される:
-NumRefIdxActive[1]の値は、NumWeightsL1の値以下であるとものとする、
-両端を含む0からNumRefIdxActive[1]-1までの範囲のiについて、各参照ピクチャインデックスRefPicList[1][i]について、参照ピクチャインデックスに適用されるルマ重み、Cb重み、及びCr重みは、各々LumaWeightL1[i]、ChromaWeightL1[0][i]、及びChromaWeightL1[1][i]である。
slice_cb_qp_offsetは、Qp′Cb量子化パラメータの値を決定するときにpps_cb_qp_offsetの値を差に加えることを指定する。slice_cb_qp_offsetの値は、両端を含む-12~+12の範囲であるものとする。slice_cb_qp_offsetが存在しない場合、0と等しいと推定される。pps_cb_qp_offset+slice_cb_qp_offsetの値は、両端を含む-12~+12の範囲であるものとする。
slice_cr_qp_offsetは、Qp′Cr量子化パラメータの値を決定するときにpps_cr_qp_offsetの値を差に加えることを指定する。slice_cr_qp_offsetの値は、両端を含む-12~+12の範囲であるものとする。slice_cr_qp_offsetが存在しない場合、0と等しいと推定される。pps_cr_qp_offset+slice_cr_qp_offsetの値は、両端を含む-12~+12の範囲であるものとする。
slice_joint_cbcr_qp_offsetは、Qp′CbCrの値を決定するときにpps_joint_cbcr_qp_offset_valueの値を差に加えることを指定する。slice_joint_cbcr_qp_offsetの値は、両端を含む-12~+12の範囲であるものとする。slice_joint_cbcr_qp_offsetが存在しない場合、0と等しいと推定される。pps_joint_cbcr_qp_offset_value+slice_joint_cbcr_qp_offsetの値は、両端を含む-12~+12の範囲であるものとする。
cu_chroma_qp_offset_enabled_flagが1に等しいことは、変換ユニット及びパレットコーディングシンタックスにcu_chroma_qp_offset_flagが存在する可能性があることを指定する。cu_chroma_qp_offset_enabled_flagが0に等しいことは、変換ユニット又はパレットコーディングシンタックスにcu_chroma_qp_offset_flagが存在しないことを指定する。存在しないとき、cu_chroma_qp_offset_enabled_flagの値は0に等しいと推定される。
slice_sao_luma_flagが1に等しいことは、現在スライスでルマ成分についてSAOが有効にされることを指定する。slice_sao_luma_flagが0に等しいことは、現在スライスでルマ成分についてSAOが無効にされることを指定する。slice_sao_luma_flagが存在しない場合、それは、ph_sao_luma_enabled_flagに等しいと推定される。
slice_sao_chroma_flagが1に等しいことは、現在スライスでクロマ成分についてSAOが有効にされることを指定する。slice_sao_chroma_flagが0に等しいことは、現在スライスでクロマ成分についてSAOが無効にされることを指定する。slice_sao_luma_flagが存在しない場合、それは、ph_sao_luma_enabled_flagに等しいと推定される。
slice_deblocking_filter_override_flagが1に等しいことは、デブロッキングパラメータがスライスヘッダに存在することを指定する。slice_deblocking_filter_override_flagが0に等しいことは、デブロッキングパラメータがスライスヘッダに存在しないことを指定する。存在しないとき、slice_deblocking_filter_override_flagの値は、ph_deblocking_filter_override_flagに等しいと推定される。
slice_deblocking_filter_disabled_flagが1に等しいことはデブロッキングフィルタの操作が、現在スライスに適用されないことを指定する。slice_deblocking_filter_disabled_flagが0に等しいことはデブロッキングフィルタの操作が、現在スライスに適用されることを指定する。slice_deblocking_filter_disabled_flagが存在しない場合、それは、ph_deblocking_filter_disabled_flagに等しいと推定される。
slice_beta_offset_div2及びslice_tc_offset_div2は、現在スライスについて、ルマ成分に適用されるβ及びtC(2で除算されたもの)のデブロッキングパラメータオフセットを指定する。slice_beta_offset_div2とslice_tc_offset_div2の値は、両方とも両端を含む-12から12の範囲内にあるものとする。存在しない場合、slice_beta_offset_div2とslice_tc_offset_div2の値は、各々ph_beta_offset_div2とph_tc_offset_div2に等しいと推定される。
slice_cb_beta_offset_div2及びslice_cb_tc_offset_div2は、現在スライスについて、Cb成分に適用されるβ及びtC(2で除算されたもの)のデブロッキングパラメータオフセットを指定する。slice_cb_beta_offset_div2とslice_cb_tc_offset_div2の値は、両方とも両端を含む-12から12の範囲内にあるものとする。存在しない場合、slice_cb_beta_offset_div2とslice_cb_tc_offset_div2の値は、各々ph_cb_beta_offset_div2とph_cb_tc_offset_div2に等しいと推定される。
slice_cb_beta_offset_div2及びslice_cb_tc_offset_div2は、現在スライスについて、Cr成分に適用されるβ及びtC(2で除算されたもの)のデブロッキングパラメータオフセットを指定する。slice_cr_beta_offset_div2とslice_cr_tc_offset_div2の値は、両方とも両端を含む-12から12の範囲内にあるものとする。存在しない場合、slice_cr_beta_offset_div2とslice_cr_tc_offset_div2の値は、各々ph_cr_beta_offset_div2とph_cr_tc_offset_div2に等しいと推定される。
slice_ts_residual_coding_disabled_flagが1に等しいことは、現在スライスの変換スキップブロックの残差サンプルを解析するために、residual_coding()シンタックス構造が使用されることを指定する。slice_ts_residual_coding_disabled_flagが0に等しいことは、現在スライスの変換スキップブロックの残差サンプルを解析するために、residual_ts_coding()シンタックス構造が使用されることを指定する。slice_ts_residual_coding_disabled_flagが存在しない場合、0と等しいと推定される。
slice_lmcs_enabled_flagが1に等しいことは、現在スライスに対してクロマスケールによるルママッピングが有効であることを指定する。slice_lmcs_enabled_flagが0に等しいことは、現在スライスに対してクロマスケールによるルママッピングが有効ではないことを指定する。slice_lmcs_enabled_flagが存在しない場合、0と等しいと推定される。
slice_scaling_list_present_flagが1に等しいことは、現在スライスに使用されるスケーリングリストデータが、aps_params_typeがSCALING_APSに等しくadaptation_parameter_set_idがph_scaling_list_aps_idに等しい参照スケーリングリストAPSに含まれるスケーリングリストデータに基づいて導出されることを指定する。slice_scaling_list_present_flagが0に等しいことは、現在ピクチャに使用されるスケーリングリストデータが7.4.3.21項で指定された導出されたデフォルトのスケーリングリストデータであることを指定する。存在しないとき、slice_scaling_list_present_flagの値は0に等しいと推定される。
現在スライス内のエントリポイントの数を指定する変数NumEntryPointsは、次のように導出される:
entry_point_offset_minus1[i]に1を加えたものは、i番目のエントリポイントのオフセットをバイト単位で指定し、offset_len_minus1+1ビットで表される。スライスヘッダに続くスライスデータは、NumEntryPoints+1個のサブセットで構成され、サブセットインデックス値の範囲は、両端を含む0からNumEntryPointsまでである。スライスデータの第1バイトはバイト0と見なされる。存在する場合、コーディングスライスNALユニットのスライスデータ部分に出現するエミュレーション防止バイトは、サブセット識別のためにスライスデータの一部としてカウントされる。サブセット0は、コーディングスライスデータの両端を含むバイト0からentry_point_offset_minus1[0]までで構成される。サブセットkは、両端を含む1からNumEntryPoints-1までの範囲のkにより、コーディングスライスの両端を含むバイトfirstByte[k]からlastByte[k]までのバイトで構成され、firstByte[k]とlastByte[k]は以下のように定義される:
sps_entropy_coding_sync_enabled_flagが0に等しく、スライスに1つ以上の完全なタイルが含まれている場合、各サブセットは、同じタイル内にあるスライス内のすべてのCTUのすべてのコーディングされたビットで構成され、サブセットの数(つまり、NumEntryPointsの値+1)は、スライス内のタイルの数と等しいものとする。
sps_entropy_coding_sync_enabled_flagが0に等しく、スライスに1つのタイルからのCTU行のサブセットが含まれている場合、NumEntryPointsは0になり、サブセットの数は1になるものとする。サブセットは、スライス内のすべてのCTUのすべてのコーディングビットで構成されるものとする。
sps_entropy_coding_sync_enabled_flagが1に等しい場合、各サブセットkは、両端を含む0からNumEntryPointsまでの範囲のkについて、タイル内にあるCTU行のすべてのCTUのコーディングビットで構成され、サブセットの数(つまり、NumEntryPointsの値+1)は、スライス内のタイル固有CTU行の合計数と等しいものとする。
slice_header_extension_lengthは、スライスヘッダ拡張データの長さをバイト単位で指定し、slice_header_extension_length自体のシグナリングに使用されるビットは含まれない。slice_header_extension_lengthの値は、両端を含む0~256の範囲であるものとする。存在しないとき、slice_header_extension_lengthの値は0に等しいと推定される。
slice_header_extension_data_byte[i]は任意の値を持つことができる。このバージョンの仕様に準拠するデコーダは、全てのgci_reserved_constraint_byte[i]シンタックス要素を無視する必要がある。その値は、この仕様のこのバージョン内で指定されるプロファイルへのデコーダ準拠性に影響しない。
最新のVVCドラフトテキストでは、変換ユニットシンタックスとセマンティクスは次の通りである:
tu_cbf_cr[x0][y0]が1に等しいことは、Cb変換ブロックが0に等しくない変換係数レベルが1つ以上含まれていることを指定する。アレイインデックスx0、y0は、対象となる変換ブロックの左上に位置する。
tu_cbf_cb[x0][y0]存在しない場合、0と等しいと推定される。
tu_cbf_cr[x0][y0]が1に等しいことは、Cr変換ブロックが0に等しくない変換係数レベルが1つ以上含まれていることを指定する。アレイインデックスx0、y0は、対象となる変換ブロックの左上の位置(x0,y0)を指定する。
tu_cbf_cr[x0][y0]が存在しない場合、0と等しいと推定される。
tu_cbf_luma[x0][y0]が1に等しいことは、ルマ変換ブロックが0に等しくない1つ以上の変換係数レベルを含むことを指定する。アレイインデックスx0,y0は、ピクチャの左上ルマサンプルに対する検討される変換ブロックの左上サンプルの位置(x0,y0)を指定する。
tu_cbf_luma[x0][y0]が存在しない場合、それは、以下のように推定される:
cu_sbt_flagが1に等しく、次の条件のうちの1つが真である場合、tu_cbf_luma[x0][y0]は0に等しいと推定される:
-subTuIndexが0に等しく、cu_sbt_pos_flagが1に等しい、
-subTuIndexが1に等しく、cu_sbt_pos_flagが0に等しい、
-それ以外の場合、treeTypeがDUAL_TREE_CHROMAに等しい場合、tu_cbf_luma[x0][y0]は0に等しいと推定される、
-それ以外の場合、tu_cbf_luma[x0][y0]は1に等しいと推定される。
tu_joint_cbcr_residual_flag[x0][y0]は、クロマ成分CbとCrの両方の残差サンプルが1つの変換ブロックとしてコーディングされるかどうかを指定する。アレイインデックスx0,y0は、ピクチャの左上ルマサンプルに対する検討される変換ブロックの左上サンプルの位置(x0,y0)を指定する。
tu_joint_cbcr_residual_flag[x0][y0]が1に等しいことは、変換ユニットシンタックスが、CbとCrの両方の残差サンプルが導出される単一の変換ブロックの変換係数レベルを含むことを指定する。tu_joint_cbcr_residual_flag[x0][y0]が0に等しいことは、クロマ成分の変換係数レベルがシンタックス要素tu_cbf_cb[x0][y0]及びtu_cbf_cr[x0][y0]で示されるようにコーディングされることを指定する。
tu_joint_cbcr_residual_flag[x0][y0]が存在しない場合、0と等しいと推定される。
tu_joint_cbcr_residual_flag[x0][y0]、tu_cbf_cb[x0][y0]、及びtu_cbf_cr[x0][y0]に応じて、変数TuCResMode[x0][y0]は次のように導出される:
-tu_joint_cbcr_residual_flag[x0][y0]が0に等しい場合、変数TuCResMode[x0][y0]は0に等しく設定される、
-その他の場合、[x0任意で、y2が1に等しい[x0][y0]が0に等しい場合、変数TuCResMode[x0][y0]は0に等しく設定される、
-それ以外の場合、tu_cbf_cb[x0][y0]が1に等しい場合、変数TuCResMode[x0][y0]は2に等しく設定される、
-その他の場合、変数TuCResMode[x0][y0]は3に等しく設定される。
cu_qp_delta_absは、現在コーディングユニットの量子化パラメータとその予測との差CuQpDeltaValの絶対値を指定する。
cu_qp_delta_sign_flagは、次のようにCuQpDeltaValの符号を指定する:
-cu_qp_delta_sign_flagが0に等しい場合、対応するCuQpDeltaValは正の値を持つ、
-その他の場合(cu_qp_delta_sign_flagが1に等しい)、対応するCuQpDeltaVal負の値を持つ。
cu_qp_delta_sign_flagが存在しない場合、0と等しいと推定される。
cu_qp_delta_absが存在する場合、変数IsCuQpDeltaCodedとCuQpDeltaValは次のように導出される:
cu_chroma_qp_offset_flagが存在し、1に等しい場合、cb_qp_offset_list[]内のエントリがCuQpOffsetCbの値を決定するために使用され、cr_qp_offset_list[]内の対応するエントリがCuQpOffsetCrの値を決定するために使用され、joint_cbcr_qp_offset_list[]内の対応するエントリがCuQpOffsetCbCrの値を決定するために使用されることを指定する。cu_chroma_qp_offset_flagが0に等しいことは、これらのリストがCuQpOffsetCb、CuQpOffsetCr、及びCuQpOffsetCbCrの値を決定するために使用されないことを指定する。
cu_chroma_qp_offset_idxが存在する場合は、CuQpOffsetCb、CuQpOffsetCr、及びCuQpOffsetCbCrの値を決定するために使用されるcb_qp_offset_list[]、cr_qp_offset_list[]、及びjoint_cbcr_qp_offset_list[]へのインデックスを指定する。存在する場合、cu_chroma_qp_offset_idxの値は、両端を含む0からchroma_qp_offset_list_len_minus1までの範囲にあるものとする。存在しないとき、cu_chroma_qp_offset_idxの値は0に等しいと推定される。
cu_chroma_qp_offset_flagが存在する場合、以下が適用される:
-変数IsCuChromaQpOffsetCodedは、1に等しく設定される、
-変数CuQpOffsetCb、CuQpOffsetCr、及びCuQpOffsetCbCrは、次のように導出される:
-cu_chroma_qp_offset_flagが1に等しい場合、以下が適用される:
transform_skip_flag[x0][y0][cIdx]は、変換が関連付けられた変換ブロックに適用されるかどうかを指定する。アレイインデックスx0,y0は、ピクチャの左上ルマサンプルに対する検討される変換ブロックの左上サンプルの位置(x0,y0)を指定する。アレイインデックスcIdxは色成分の指示子を指定し、Yの場合は0、Cbの場合は1、Crの場合は2に等しい。transform_skip_flag[x0][y0][cIdx]が1に等しいことは、変換が関連付けられた変換ブロックに適用されないことを指定する。transform_skip_flag[x0][y0][cIdx]が0に等しいことは、変換が関連付けられた変換ブロックに適用されるかどうかの決定が他のシンタックス要素に依存することを指定する。
transform_skip_flag[x0][y0][cIdx]が存在しない場合、それは、以下のように推定される:
-BdpcmFlag[x0][y0][cIdx]が1に等しい場合、transform_skip_flag[x0][y0][cIdx]は1に等しいと推定される、
-それ以外の場合(BdpcmFlag[x0][y0][cIdx]が0に等しい)、transform_skip_flag[x0][y0][cIdx]は0に等しいと推定される。
SH、PPS、APSシンタックス要素(SE)の既存の設計には、次の問題がある:
1)最新のVVCドラフトテキストでは、SCALINGAPSでシグナルされるスケーリング/量子化マトリクス(QM)の数を制御するために、APSシンタックス要素scaling_list_chroma_present_flagがシグナリングされる。つまり、scaling_list_chroma_present_flagが1に等しい場合、28個のQMがルマとクロマの両方に対してシグナルされる。それ以外の場合(scaling_list_chroma_present_flagが0に等しい)、10個のQMがルマ専用にシグナリングされる。現在、scaling_list_chroma_present_flagの値は、(SPSシンタックス要素から導出された)ChromaArrayTypeに基づいて制限されている。つまり、ChromaArrayTypeが0に等しくない場合はscaling_list_chroma_present_flagの値が1に等しい必要があり、一方、ChromaArrayTypeが0に等しい場合はscaling_list_chroma_present_flagの値が0に等しい必要がある。セマンティクスのこのような制約は、APSのSPSへの依存性をもたらすが、これは発生しないはずである。なぜなら、APSは異なるSPSを参照するピクチャ(又はピクチャのスライス)に適用される可能性があり、それは異なるChromaArrayType値に関連付けられる可能性があるからである。
a.更に、現在のところ、ブロックがユーザ定義のスケーリングリストでコーディングされると、ルマとクロマの両方(使用可能な場合)がユーザ定義のスケーリングリストを適用する必要がある。つまり、ルマとクロマのユーザ定義のスケーリングリストを個別にオン/オフすることはできない。このような設計は効率的/柔軟性に欠ける場合がある。
2)最新のVVCドラフトテキストでは、LMCS APSシンタックス構造がシグナリングされとき、ChromaArrayTypeが0(例えば、ビデオコンテンツにクロマ成分がない)に等しいかどうかに関係なく、クロマ残差スケーリングに関連するAPSシンタックス要素が常にシグナリングされる。これにより、ビデオコンテンツに処理されるクロマが存在しないのに、クロマ関連のシンタックス要素が不要に送信される可能性がある。
3)最新のVVCドラフトテキストでは、SHシンタックス要素slice_ts_residual_coding_disabled_flagを使用して、変換スキップに基づく残差コーディング(transform skip based residual coding:TSRC)と通常残差コーディング(regular residual coding:RRC)のどちらを変換スキップブロックに使用するかを指定する。ただし、現時点では、SPSレベル変換スキップの無効化に関係なく、SHでは常にslice_ts_residual_coding_disabled_flagがシグナリングされる。sps_transform_skip_enabled_flagの場合、transform_skip_flagは常に0であり、TSRCとRRCを切り換える条件(!transform_skip_flag[xC][yC][1]||slice_ts_residual_coding_disabled_flag)が常に真であるため、このような場合、slice_ts_residual_coding_disabled_flagは無意味になる。
a.更に、現在、非TSブロックはRRCしか使用できず、TSRCとRRCを切り換えることができないため、非TSブロック圧縮には効率的ではない可能性がある。
4)最新のVVCドラフトテキストでは、ルマブロックのcu_qp_deltaを有効にするためにマルチレベル制御が使用されている。つまり、最初にPPSオン/オフ制御フラグcu_qp_delta_enabled_flagをシグナリングし、次にPHで量子化グループ(QG)サイズを指定し、最後に各QGでcu_qp_delta_absの値をシグナリングする。このように設計することで、ピクチャが複数のスライスで構成されている場合、一部のスライスではcu qp deltaが使用されているが、他のスライスではまったく使用されていない場合でも、依然としてすべてのQGに対してブロックレベルcu_qp_delta_absをシグナリングする必要がある。そのため、ブロックレベルのビットの無駄が発生するが、これは回避できる。
5)最新のVVCドラフトテキストでは、PPSシンタックス要素single_slice_per_subpic_flagが0に等しい場合、PPSを参照するピクチャの各サブピクチャは1つ以上の長方形スライスで構成される場合がある。single_slice_per_subpic_flagが0の場合、そのようなPPSを参照するピクチャでは、以下のようなケースが発生する可能性がある:
a.冗長なケース:sps_num_subpics_minus1が0より大きいが、各サブピクチャに1つのスライスしかない場合。このような場合、各ピクチャには複数のサブピクチャと複数の長方形スライスが含まれるが、single_slice_per_subpic_flagは0に等しいため、num_slices_in_pic_minus1をシグナリングする必要がある。ただし、このようなケースは、single_slice_per_subpic_flagが1に等しいことと概念的に同じであり、このSEを通知する必要はまったくないため、冗長にシグナリングされる。
b.冗長なケース:sps_num_subpics_minus1が0に等しく、PPSを参照する各ピクチャに1つのスライスしかない場合。このような場合、各ピクチャには1つのスライスのみで構成される1つのサブピクチャが含まれるが、single_slice_per_subpic_flagは0に等しいことが引き続き許可されるため、num_slices_in_pic_minus1をシグナリングする必要がある。ただし、このようなケースは、single_slice_per_subpic_flagが1に等しいことと概念的に同じであり、このSEを通知する必要はまったくないため、冗長にシグナリングされる。
c.更に、上記の冗長なケースをすべて禁止/回避した場合、ピクチャが複数のサブピクチャを有する場合(各サブピクチャに1つのスライス又は複数のスライスが含まれる)、又はピクチャが複数のスライスを有する場合(各ピクチャに1つのサブピクチャ又は複数のサブピクチャが含まれる)には、常に0と等しいsingle_slice_per_subpic_flagが使用されることが分かる。どちらの場合も、num_slices_in_pic_minus1の値は常に1より大きくなる。また、条件付きでPPSシンタックス要素tile_idx_delta_present_flagをシグナリングする必要がないことも判明した。
6)最新のVVCドラフトテキストでは、タイルの幅や高さなどのタイルレイアウトは、暗黙の推定に関連する明示的なシグナリングの方法で設計されている。ピクチャが同じ高さのタイルを持つ複数のタイル行に分割されている場合、現在の設計では、第1タイル行の高さをシグナリングするだけで、残りのタイル行の高さを推定できる。それ以外の場合、ピクチャが高さの異なるタイルを持つ複数のタイル行に分割されている場合、各タイル行の高さが明示的にシグナリングされる。そうしないと、ピクチャが異なる高さの最初の幾つかのタイル行と同じ高さの最後の幾つかのタイル行を持つ複数のタイル行に分割された場合、最初の幾つかのタイル行の高さと最後の幾つかのタイル行のうちの1つだけを明示的にシグナリングし、その後、同じ高さの残りのタイル行の高さをシグナリングせずに推定する。現在の設計では、明示的なシグナリングと暗黙的な推定を組み合わせることで、これら3つのケースについて、うまく機能する。しかし、同じ高さの最初の幾つかのタイル行と異なる高さの最後に幾つかのタイル行がある複数のタイル行にピクチャを分割する別のケースもある。このような場合、暗黙の推定を適用することはできず、すべてのタイル行の高さを明示的にシグナリングする必要があるため、現在の設計はそれほど効率的ではないように思われる。同様に、タイル列シグナリングと長方形スライスレイアウトシグナリング、つまりスライスがタイルより小さい場合のスライス高さシグナリングにも同じ状況がある。ここで修正を適用して改善できる。
7)現在、GCIシンタックス要素no_aps_constraint_flagは、nuh_unit_typeがPREFIX_APS_NUT又はSUFFIX_APS_NUTと等しいNALユニットを無効にするために使用される。ALF APSが存在しないかどうかについては、ドラフトテキストで更に多くの制約が対処される予定である。
8)現在、適合ウィンドウパラメータは、ピクチャの幅と高さが、PPSによって参照されるSPSでシグナリングされる最大ピクチャ幅と高さと同じ場合を含め、常にPPSでシグナリングされるが、一方で、最大ピクチャ幅と高さを持つピクチャの適合ウィンドウパラメータもSPSでシグナリングされる。PPS内の最大ピクチャ幅と高さを持つピクチャの適合ウィンドウパラメータのシグナリングは冗長である。
9)no_APS_constraint_flagが1に等しい場合、その意図は、ビットストリームに存在するか(帯域内(in-band)としても知られる)又は外部手段を通じて(例えば、実装ではAPIを通じて、帯域外(out-of-band)を通じて、等)デコーダに提供されるAPS NALユニットの使用を無効にすることであった。ただし、現在のVVC仕様では、no_APS_constraint_flagのセマンティクスは、ビットストリームにAPS NALユニットが存在する場合にのみ適用される。したがって、no_APS_constraint_flagが1に等しい場合でも、APSは外部手段を通じて依然として使用できる可能性がある。
10)現在、ほとんどのコーディングツール/機能はGCIフラグによって制御/非活性化することができる。しかし、幾つかの機能/コーディングツールはまだGCIフラグ制御を持っていない。可能な限り機能/コーディングツールの非活性化制御が望ましいかもしれない。
11)現在、ローカルデュアルツリーを使用する場合、MODE_TYPE_INTRAに使用できるのはイントラ及びIBCコーディングモードのみであると定義されている。更に、intra(MODE_INTRA)、IBC(MODE_IBC)を定義し、インターコーディングモードをMODE_TYPE_ALLに使用することができる。ただし、MODE_TYPE_INTRA及びMODE_TYPE_ALLにはパレットモード(MODE_PLT)も使用される必要がある。現在の定義は不完全であると主張されている。
12)コーディングツリーノードの場合、コーディングツリーノード内のCUに許可される予測モードは、導出されたmodeTypeConditionと、modeTypeConditionが2に等しい場合にはシグナリングされたmode_constraint_flagによって定義される。ただし、modeTypeConditionが2に等しく、mode_constraint_flagが1に等しい場合、INTRAとIBCに等しい予測モードのみが許可され、一方、modeTypeConditionが2に等しく、mode_constraint_flagが0に等しい場合、INTERと等しい予測モードのみが許可されることに注意する。そのため、この場合は常にPALETTE MODEは許可されず、望ましくない。
上記の問題点や、言及されない幾つかの他の問題点を解決するために、以下に要約する方法が開示される。発明は、一般的な概念を説明するための例として考えられるべきであり、狭義に解釈するべきではない。更に、これらの発明は任意の方法で個別に適用でき又は結合できる。
1.第1の問題を解決するためにSPSシンタックス要素に依存するAPSシンタックス要素scaling_list_chroma_present_flagの値に関して、次のアプローチの1つ以上が開示されている。
1)一例では、VPS ID及び/又はSPS ID及び/又はPPS IDをAPSシンタックス構造、すなわち、adaptation_parameter_set_rbsp()に追加することができる。例えば、adaptation_parameter_set_rbsp()のシンタックス構造を次のように変更できる:
[[scaling_list_chroma_present_flagが1に等しいことは、クロマスケーリングリストがscaling_list_data()に存在することを指定する。scaling_list_chroma_present_flagが0に等しいことは、クロマスケーリングリストがscaling_list_data()に存在しないことを指定する。scaling_list_chroma_present_flagが、ChromaArrayTypeが0に等しい場合は0に等しく、ChromaArrayTypeが0に等しくない場合は1に等しいことが、ビットストリーム準拠の要件である。]]
2)一例では、APSに関連付けられたVPS及び/又はSPS及び/又はPPSが暗黙的に導出される場合がある。
a.例えば、APSがビデオユニット(ピクチャヘッダやスライスヘッダなど)によって参照され、ビデオユニットがVPS及び/又はSPS及び/又はPPSに依存している場合、APSは暗黙的にVPS及び/又はSPS及び/又はPPSに関連付けられる。
3)一例では、ユーザ定義のスケーリングリスト(明示的なスケーリングリストとも呼ばれる)を使用する代わりに、明示的なスケーリングリストがルマブロックに適用されている場合でも、フラット量子化(デフォルトスケーリングリスト)をクロマブロックに使用できる。
a.又は、更に、ルマブロックの明示的なスケーリングリストがビットストリームでシグナリングされる場合でも、クロマブロックの明示的なスケーリングリストがシグナリングされない場合がある。
4)又は、scaling_list_chroma_present_flagの値をChromaArrayTypeの値と分離することもできる。
a.異なる色成分(例えば、ルマブロックとクロマブロック)に明示的なスケーリングリスト又はデフォルトのスケーリングリストを使用するかどうかの指示は、個別にシグナリング/制御される場合がある。
i.一例では、シンタックス要素(例えば、1つ以上のフラグ)をSPS/PPS/PH/SHに追加して、ルマ成分及び/又はクロマ成分に対してユーザ定義のスケーリングリスト(明示的なスケーリングリストとも呼ばれる)を有効にするかどうかを指定できる。
ii.例えば、SPSにフラグを追加して、ルマ変換係数をフラット量子化(デフォルトのスケーリングリスト)とユーザ定義のスケーリングリストの間で切り換え可能にすることができる。
ii.例えば、SPSに1つ以上のフラグを追加して、クロマ-U及び/又はルマ-V変換係数をフラット量子化(デフォルトのスケーリングリスト)とユーザ定義のスケーリングリストの間で切り換え可能にすることができる。
b.例えば、ChromaArrayTypeが0に等しい場合、scaling_list_chroma_present_flagは1に等しくなる。
i.一例では、4:0:0クロマフォーマットのコーディングピクチャの場合、スケーリングマトリクスのN(N=28など)個のセットがAPSでシグナリングできる。
ii.一例では、separate_colour_plane_flagが1に等しい4:4:4クロマフォーマットのコーディングピクチャの場合、スケーリングマトリクスのM(M=28など)個のセットがAPSでシグナリングできる。
a)例えば、APSで信号が送られたseparate_colour_plane_flagが1であり、スケーリングマトリクスのM(M=28など)個のセットの場合、Y(Luma)、U(Cb)、及びV(Cr)チャネル変換係数の各々は、luma-Yチャネルとして扱うことができ、Y、U、及びV変換係数のスケーリングマトリクス識別子変数idは、Y成分(例えば、0の値)と等しい色成分に関して導出される。
b)あるいは、separate_colour_plane_flagが1に等しく、スケーリングマトリクスのM(M=28など)個のセットがAPSでシグナリングされた場合、ルマ-Y変換係数のスケーリングマトリクス識別子変数idは、色成分がY成分に等しい(例えば、0の値)として導出され、一方、クロマ-Uのスケーリングマトリクス識別子変数idは、色成分がU成分に等しい(例えば、1の値)として導出され、クロマ-Vのスケーリングマトリクス識別子変数idは、色成分がV成分に等しい(例えば、2の値)として導出される。
c.例えば、ChromaArrayTypeが1に等しい場合、scaling_list_chroma_present_flagは0であってよい。
i.一例では、クロマ変換係数がユーザ定義のスケーリングリストを使用できるかどうかは、scaling_list_chroma_present_flagの値に依存してよい。
a)例えば、scaling_list_chroma_present_flagが0に等しい場合、sps_scaling_list_enabled_flag、ph_scaling_list_enabled_flag、及びslice_scaling_list_enabled_flagの値に関係なく、ユーザ定義のスケーリングリストをクロマ変換係数に使用することはできない(例えば、クロマのユーザ定義のスケーリングリストの使用を指定するために使用される追加フラグの値は、0や1などの特定の数値と等しい必要がある)。
b)例えば、scaling_list_chroma_present_flagが1に等しい場合、ユーザ定義のスケーリングリストをクロマ変換係数に使用できる場合がある。
ii.一例では、separate_colour_plane_flagが0に等しい4:2:0及び/又は4:2:2クロマフォーマット、及び/又は4:4:4クロマフォーマットのコーディングピクチャの場合、スケーリングマトリクスのN(N=10など)個のセットがAPSでシグナリングされてよい。
a)例えば、ChromaArrayTypeが0より大きく、スケーリングマトリクスのN(N=10など)個のセットがAPSでシグナリングされる場合、U及び/又はV変換係数のスケーリングマトリクスは、Y変換係数のスケーリングマトリクスのシグナリングされたN個のセットから導出されてよい。
b)又は、ChromaArrayTypeが0より大きく、スケーリングマトリクスのN(N=10など)個のセットがAPSでシグナリングされる場合、U及び/又はV変換係数は、ユーザ定義のスケーリングリストを使用しない(代わりに、U及び/又はV変換係数は、デフォルトのスケーリング係数を使用してフラット量子化を使用してよい)。
d.例えば、ChromaArrayTypeに基づくscaling_list_chroma_present_flagに関するセマンティクス制約は、次のように、シンタックス要素scaling_list_chroma_present_flagに関連付けられなくてよい:
scaling_list_chroma_present_flagが1に等しいことは、クロマスケーリングリストがscaling_list_data()に存在することを指定する。scaling_list_chroma_present_flagが0に等しいことは、クロマスケーリングリストがscaling_list_data()に存在しないことを指定する。[[scaling_list_chroma_present_flagが、ChromaArrayTypeが0に等しい場合は0に等しく、ChromaArrayTypeが0に等しくない場合は1に等しいことが、ビットストリーム準拠の要件である。]]
e.例えば、ChromaArrayTypeに基づくscaling_list_chroma_present_flagに関するセマンティクス制約は、次のように変更できる:
scaling_list_chroma_present_flagが1に等しいことは、クロマスケーリングリストがscaling_list_data()に存在することを指定する。scaling_list_chroma_present_flagが0に等しいことは、クロマスケーリングリストがscaling_list_data()に存在しないことを指定する。ChromaArrayTypeが0に等しい場合、scaling_list_chroma_present_flagが0に等しいことが、ビットストリーム準拠の要件である。
一例では、ph_scaling_list_aps_idのセマンティクスは次のように変更される:
ph_scaling_list_aps_idは、スケーリングリストAPSのadaptation_parameter_set_idを指定する。aps_params_typeがSCALING_APSと等しく、adaptation_parameter_set_idがph_scaling_list_aps_idと等しいAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
ph_scaling_list_aps_idは、スケーリングリストAPSのadaptation_parameter_set_idを指定する。aps_params_typeがSCALING_APSと等しく、adaptation_parameter_set_idがph_scaling_list_aps_idと等しいAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
ph_scaling_list_aps_idは、スケーリングリストAPSのadaptation_parameter_set_idを指定する。aps_params_typeがSCALING_APSと等しく、adaptation_parameter_set_idがph_scaling_list_aps_idと等しいAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
scaling_list_chroma_present_flagが1に等しいことは、クロマスケーリングリストがscaling_list_data()に存在することを指定する。scaling_list_chroma_present_flagが0に等しいことは、クロマスケーリングリストがscaling_list_data()に存在しないことを指定する。[[scaling_list_chroma_present_flagが、ChromaArrayTypeが0に等しい場合は0に等しく、ChromaArrayTypeが0に等しくない場合は1に等しいことが、ビットストリーム準拠の要件である。]]
2.ChromaArrayTypeが0に等しい場合の不要なクロマ関連APSシンタックス要素のシグナルについて、第2の問題を解決するために、次のアプローチの1つ以上が開示される:
1)一例では、シンタックス要素(例えばフラグ)をAPSシンタックス構造lmcs_data()に追加して、クロマ残差スケーリング関連のAPSシンタックス要素(例えば、lmcs_delta_abs_crs、lmcs_delta_sign_crs_flagなど)の存在を制御することができる。
a.例えば、ChromaArrayTypeが0に等しい場合、クロマ残差スケーリング関連のAPSシンタックス要素(例えば、lmcs_delta_abs_crs、lmcs_delta_sign_crs_flagなど)はシグナリングできないようにする必要がある。例えば、追加されたフラグは0や1などの特定の値と等しい必要がある。
b.例えば、ChromaArrayTypeが0に等しくない場合、クロマ残差スケーリング関連のAPSシンタックス要素(例えば、lmcs_delta_abs_crs、lmcs_delta_sign_crs_flagなど)はシグナリングされる必要がある。例えば、追加されたフラグは0や1などの特定の値と等しい必要がある。
c.例えば、現在スライスでクロマ残差スケーリングの使用が許可されるかどうかは、追加されたフラグに依存してよい。例えば、追加フラグが、クロマ残差スケーリング関連のAPSシンタックス要素がシグナルされないことを示す場合、sps_lmcs_enabled_flag、ph_lmcs_enabled_flag、ph_chroma_residual_scale_flag、及びsh_lmcs_enabled_flagの値に関係なく、クロマ残差スケーリングは使用されない。
2)PH/SH/APSシンタックス要素のセマンティクスの下にビットストリーム制約を追加して、ChromaArrayTypeの値に関してlmcs_delta_abs_crsの値を制約することができる。例えば、次のようになる:
ph_lmcs_aps_idは、PHに関連付けられたスライスが参照するLMCS APSのadaptation_parameter_set_idを指定する。aps_params_typeがLMCS_APSと等しく、adaptation_parameter_set_idがph_lmcs_aps_idと等しいAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
ph_lmcs_aps_idは、PHに関連付けられたスライスが参照するLMCS APSのadaptation_parameter_set_idを指定する。aps_params_typeがLMCS_APSと等しく、adaptation_parameter_set_idがph_lmcs_aps_idと等しいAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
ph_lmcs_aps_idは、PHに関連付けられたスライスが参照するLMCS APSのadaptation_parameter_set_idを指定する。aps_params_typeがLMCS_APSと等しく、adaptation_parameter_set_idがph_lmcs_aps_idと等しいAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
4.第3の問題を解決するためのRRCとTSRCの使用について、次のアプローチの1つ以上が開示されている:
1)TSRCの有効化/無効化フラグ(例えば、slice_ts_residual_coding_disabled_flag)のシグナリングは、変換スキップが有効になっているかどうか(例えば、SPSのsps_transform_skip_enabled_flag)を条件としてよい。
a.一例では、次が適用されてよい:
2)又は、TSRC有効化フラグ(例えば、slice_ts_residual_coding_disabled_flag)の値は、SPSのsps_transform_skip_enabled_flagによって制約されてよい。例えば、slice_ts_residual_coding_disabled_flagのセマンティクスは次のように変更できる:
slice_ts_residual_coding_disabled_flagが1に等しいことは、現在スライスの変換スキップブロックの残差サンプルを解析するために、residual_coding()シンタックス構造が使用されることを指定する。slice_ts_residual_coding_disabled_flagが0に等しいことは、現在スライスの変換スキップブロックの残差サンプルを解析するために、residual_ts_coding()シンタックス構造が使用されることを指定する。
slice_ts_residual_coding_disabled_flagが1に等しいことは、現在スライスの変換スキップブロックの残差サンプルを解析するために、residual_coding()シンタックス構造が使用されることを指定する。slice_ts_residual_coding_disabled_flagが0に等しいことは、現在スライスの変換スキップブロックの残差サンプルを解析するために、residual_ts_coding()シンタックス構造が使用されることを指定する。[[slice_ts_residual_coding_disabled_flagが存在しない場合、0と等しいと推定される。]]
4)更に、TSRCは非変換スキップ(非TS)コーディングブロックにも適用できる。
a.一例では、1つ以上のシンタックスフラグを追加して、非TSブロックに対してTSRC又はRRCを有効にするかどうかを指定できる。
i.一例では、1つ以上のブロックレベル(CTU/CU/TU)シンタックスフラグを追加して、現在ビデオユニットがTSRC又はRRCのどちらを使用しているかを指定できる。
ii.また、代替として、ビデオユニットに対してTSRCを許可するかどうかを指定するために、1つ以上の高レベル(SPS/PPS/PH/SH)シンタックスフラグを追加することもできる。
b.一例では、非TSコーディングブロックにTSRCを使用するかどうか、又は非TSコーディングブロックにTSRCを許可するかどうかは、ブロックのQP値などのコーディング情報に依存してよい。
i.一例では、QPがXと等しいかXより大きくない(X=4など)非TSブロックの場合、残差コーディングにTSRC又はRRCのいずれかを使用することが許可されてよい。
5.第4の問題を解決するためのルマブロックに対するcu qpデルタのオン/オフ制御に関して、以下のアプローチの1つ以上が開示されている:
a.SHレベルのシンタックス要素(例えば、slice_cu_qp_delta_enabled_flagで表されるフラグ)を追加して、特定のスライスに対するcu qpデルタの有効化及び/又は無効化を制御できる。
i.一例では、提案されたslice_cu_qp_delta_enabled_flagの存在は、PPSのcu_qp_delta_enabled_flagを条件とする。例えば、PPSのcu_qp_delta_enabled_flagが1に等しい場合にのみ、提案されたslice_cu_qp_delta_enabled_flagがシグナリングされ、それ以外の場合(PPSのcu_qp_delta_enabled_flagが0に等しい)、提案されたslice_cu_qp_delta_enabled_flagはシグナリングされず、0に等しいと推定される。
a)又は、提案されたslice_cu_qp_delta_enabled_flagの値は、PPSのcu_qp_delta_enabled_flagの値に制限される。つまり、PPSのcu_qp_delta_enabled_flagが0に等しい場合、提案されたslice_cu_qp_delta_enabled_flagの値は0に等しくなる。
ii.一例では、PPSのcu_qp_delta_enabled_flagを使用して、SH内のSHレベルのcu qpデルタ有効化フラグの存在、及び/又は変換ユニットシンタックスとパレットコーディングシンタックス内のcu_qp_delta_abs及び/又はcu_qp_delta_sign_flagの存在を制御できる。
一例では、シンタックス構造は次のように変更できる:
PPSシンタックス構造は次のように変更される:
あるいは、クロマcu qpオフセットがスライスレベルのオン/オフフラグによって制御されなくてもよい。例えば、クロマcu qpオフセットが現在スライスに適用されるかどうかは、PH/PPS/SPSレベルフラグに依存してよい。
c.又は、PHレベルのシンタックス要素(例えば、ph_cu_qp_delta_enabled_flagで表されるフラグ)を追加して、特定のスライスに対するcu qpデルタの有効化及び/又は無効化を制御することもできる。
6.PPS SE、single_slice_per_subpic_flag、num_slices_in_pic_minus1、tile_idx_delta_present_flagの設計に関して、及び第5の問題を解決するために、次のアプローチの1つ以上が開示されている:
a.一例では、PH/SH/PPSシンタックス要素のセマンティクスに制約が追加されてよい。例えば、次のようになる:
ph_pic_parameter_set_idは、使用中のPPSのpps_pic_parameter_set_idの値を指定する。ph_pic_parameter_set_idの値は、両端を含む0~63の範囲であるものとする。
PHのTemporalIdの値が、ph_pic_parameter_set_idに等しいpps_pic_parameter_set_idを持つPPSのTemporalIdの値以上であることはビットストリーム適合性の要件である。
single_slice_per_subpic_flagが1に等しいことは、各サブピクチャが1つの長方形スライスだけで構成されることを指定する。single_slice_per_subpic_flagが0に等しいことは、各サブピクチャが1つ以上の長方形スライスで構成されてよいことを指定する。存在しないとき、single_slice_per_subpic_flagの値は0に等しいと推定される。
single_slice_per_subpic_flagが1に等しいことは、各サブピクチャが1つの長方形スライスだけで構成されることを指定する。single_slice_per_subpic_flagが0に等しいことは、各サブピクチャが1つ以上の長方形スライスで構成されてよいことを指定する。存在しないとき、single_slice_per_subpic_flagの値は0に等しいと推定される。
f.また、PPSシンタックス要素tile_idx_delta_present_flagの存在は、num_slices_in_pic_minus1に基づいて条件付けされないこともある。例えば次の通りである:
h.また、代替として、PPSシンタックス要素num_slices_in_pic_minus1をnum_slices_in_pic_minus2に変更することもできる。
i.更に、num_slices_in_pic_minus2に基づいてtile_idx_delta_present_flagの存在を次のように条件付けする:
7.第6の問題を解決するためのスライスとタイルレイアウトのシグナリングに関して、次のアプローチの1つ以上が開示されている:
a.PPSにシンタックス要素(例えば、1つ以上のフラグ)を追加して、ピクチャを同じ高さの最初の幾つかのタイル行/列と、異なる高さ/幅の最後の幾つかのタイル行/列とを持つ複数のタイル行/列に分割するかどうかを指定することができる。
i.例えば、提案されたシンタックスフラグはno_pic_partition_flag及び/又は明示的なタイルの行/列の数(num_exp_tile_columns_minus1及び/又はnum_exp_tile_rows_minus1など)に依存し、例えば以下のようになる:
タイル列の数を指定する変数NumTileColumnsと、両端を含む0からNumTileColumns-1までの範囲のiについて、i番目のタイル列の幅をCTB単位で指定するリストcolWidth[i]は、次のように導出される:
i.更に、提案されたシンタックスフラグが1に等しい場合は、提案されたシンタックスフラグの値に従ってスライスの高さ(SliceHeightInCtusMinus1など)が導出される:
8.第7の問題を解くためのALF APSが存在しない場合については、以下のアプローチのうち1つ以上が開示される:
a.一例では、ALF APSがない場合(例えば、no_aps_constraint_flagが1に等しい、又は必要なAPS IDを持つAPSが使用できない)、ALFが許可されないことがある(この場合、sps_alf_enabled_flagとsps_ccalf_enabled_flagは0に等しい必要がある)。
b.一例では、ALF APSがない場合でも(例えば、no_aps_constraint_flagが1に等しい、又は必要なAPS IDを持つAPSが使用できない)、ALFが許可されてよい(この場合、sps_alf_enabled_flagは0又は1に等しいことが許可される)。
i.例えば、ALF APSが存在しない場合(例えば、no_aps_constraint_flagは1に等しい)、ph_alf_enabled_flag及び/又はslice_alf_enabled_flagは0又は1に等しいことが許可される。
ii.例えば、ALF APSがない場合(例えば、no_aps_constraint_flagは1に等しい)、クロマALFとCC-ALFは許可されないが、フィルタが固定されたルマALFを使用することができる。
iii.例えば、ALF APSが存在しない場合(例えば、no_aps_constraint_flagは1に等しい)、ph_num_alf_aps_ids_luma、ph_alf_chroma_idc、slice_num_alf_aps_ids_luma、slice_alf_chroma_idc、sps_ccalf_enabled_flagの値は0である必要がある。
c.一例では、GCIシンタックス要素no_alf_constraint_flagが1に等しい場合、ALF及び/又はCCALFが許可されないことがある(この場合、sps_alf_enabled_flag及び/又はsps_ccalf_enabled_flagは0に等しい必要がある)。
d.あるいは、使用するALF APS数(例えば、ph_num_alf_aps_ids_luma)及び/又はALF/CC-ALF APSインデックス(例えば、ph_alf_aps_id_luma、ph_alf_aps_id_chroma、ph_cc_alf_cb_aps_id、ph_cc_alf_cr_aps_id)をシグナリングするかどうかは、ALF APSが許可されているかどうか(例えば、no_aps_constraint_flag)に依存してよい。
i.一例では、ALF APSが適用されていない場合、その情報はシグナリングされなくてよい。
e.一例では、ALF、CCALF、及び/又はLMCS、及び/又はユーザ定義のスケーリングリストを無効にするために、新しいシンタックス要素がSPS/PPS/PH/SH/GCIでシグナリングされてよい。
f.一例では、外部手段によって提供されるAPS/VPSは、GCIシンタックス要素(例えば、APS/VPSの制約フラグ)に従って非活性化/無効化/制限/オフ/不許可にされてよい。
i.例えば、ビットストリームでシグナリングされたAPS/VPSと、外部手段によって提供されたAPS/VPSの使用は、非活性化/無効化/制限/オフ/不許可にされてよい。
ii.例えば、GCIシンタックス要素(例えば、no_aps_constraint_flagという名前のフラグ)は、GCIシンタックス構造でシグナリングされ、復号処理でのVPSの使用の非活性化/無効化/オフを指定する(例えば、そのような場合、ビットストリーム内のAPSと外部手段によって提供されるAPSのどちらも許可されない)。
iii.例えば、特定の値(例えば1)に等しいGCIシンタックス要素no_aps_constraint_flagは、復号処理で使用可能なnuh_unit_typeがPREFIX_APS_NUT又はSUFFIX_APS_NUTと等しいNALユニットが存在しないことを指定する。例えば、JVET-R2001-vAのテキストは次のように変更される(追加された部分は太字の斜体のテキストで強調表示され、削除された部分は右及び左の二重角括弧(例えば、[[]])で強調表示され、二重角括弧の間に削除されたテキストが表示される)。
no_aps_constraint_flagが1に等しいことは、[[nuh_unit_typeがPREFIX_APS_NUT又はSUFFIX_APS_NUTと等しいNALユニットがOlsInScopeに存在しないこと]]sps_lmcs_enabled_flagとsps_scaling_list_enabled_flagの両方が0に等しいことを指定する。no_aps_constraint_flagが0に等しい場合、このような制約は課されない。
或いは、
9.第8の問題を解決するための適合ウィンドウパラメータのシグナリングに関して:
a.一例では、pic_width_in_luma_samplesがpic_width_max_in_luma_samplesと等しく、pic_height_in_luma_samplesがpic_height_max_in_luma_samplesと等しい場合、PPSの適合ウィンドウパラメータ(すなわち、pps_conformance_window_flag、pps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset、及びpps_conf_win_bottom_offset)のシグナリングがスキップされてよい。
i.一例では、PPSシンタックスにフラグを追加することができ、このフラグの値がX(0又は1)に等しい場合は、pic_width_in_luma_samplesがpic_width_max_in_luma_samplesと等しく、pic_height_in_luma_samplesがpic_height_max_in_luma_samplesと等しいことを指定し、フラグが1-Xに等しいことは、pic_width_in_luma_samplesがpic_width_max_in_luma_samplesより小さいか、又はpic_height_in_luma_samplesがpic_height_max_in_luma_samplesより小さいことを指定する。ただし、pic_width_in_luma_samplesがpic_width_max_in_luma_samplesと等しく、かつpic_height_in_luma_samplesがpic_height_max_in_luma_samplesと等しい場合でも、PPSがSPSに解析依存しないように、pic_width_in_luma_samplesとpic_height_in_luma_samplesは依然としてPPSでシグナリングされる必要がある。
更に、上記のフラグがXに等しい場合、PPSの適合ウィンドウパラメータのシグナリング(すなわち、pps_conformance_window_flag、pps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset、及びpps_conf_win_bottom_offset)はスキップされ、更に、パラメータの値はSPSのパラメータの値と等しいと推定される(すなわち、sps_conformance_window_flag、sps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset、及びsps_conf_win_bottom_offset)。
10.第10の問題を解決するためのGCI SEによる非活性化制御について:
a.一例では、SPS/PPS/APS/PH/SHシンタックス要素の値及び/又はそれらの存在に対する制限を表すGCIシンタックス構造に制約フラグ/指示子が追加/シグナリングされてよい。
i.例えば、特定の値(例えば1)に等しい制約フラグ/指示子は、Xが示すコーディングツール/機能を制限することを指定する。
ii.例えば、制約フラグはu(1)コーディングされてよい。
iii.例えば、制約指示子は、Nが正の定数であるようにu(N)コーディングされてよい。
例えば、Xは、以下のうちの1つ以上を含んでよい:
a)sps_ptl_dpb_hrd_params_present_flag(例えば、ptl、dpb、hrdなどの存在の制限)、
b)sps_subpic_info_present_flag(例えば、サブピクチャ、サブピクチャ抽出などの制限)、
c)sps_independent_subpics_flag(例えば、独立/従属サブピクチャ、サブピクチャ抽出などの制限)、
d)sps_subpic_id_mapping_explicitly_signalled_flag(例えば、subpic idマッピングの制限など)、
e)sps_subpic_id_mapping_present_flag(例えば、subpic idマッピングなどの制限)、
f)sps_entropy_coding_sync_enabled_flag(例えば、エントロピーコーディング同期、wppなどの制限)、
g)sps_entry_point_offsets_present_flag(例えば、エントロピーコーディング同期、wppなどの制限)、
h)sps_log2_max_pic_order_cnt_lsb_minus4(例えば、POC特性などの制限)、
i)sps_poc_msb_cycle_flag(例えば、POC特性などの制限)、
j)sps_sublayer_dpb_params_flag(例えば、サブレイヤhrdなどの制限)、
k)sps_partition_constraints_override_enabled_flag(例えば、SPS以外のSHなどのシンタックス構造におけるパーティション制約付きオーバーライドの制限など)、
l)sps_log2_min_luma_coding_block_size_minus2(例えば、最小CTBサイズなどの制限)、
m)sps_log2_diff_min_qt_min_cb_intra_slice_luma(例えば、イントラスライスの最小QTサイズなどの制限)、
n)sps_max_mtt_hierarchy_depth_intra_slice_luma(例えば、イントラスライスのMTT深さなどの制限)、
o)sps_log2_diff_min_qt_min_cb_inter_slice(例えば、インタースライスの最小QTサイズなどの制限)、
p)sps_max_mtt_hierarchy_depth_inter_slices(例えば、インタースライスのMTT深さなどの制限)、
q)sps_max_luma_transform_size_64_flag(例えば、64xN/Nx64変換サイズなどの制限)、
r)sps_same_qp_table_for_chroma_flag(例えば、Cb/Crの同一QPテーブルなどに対する制限)、
s)sps_log2_transform_skip_max_size_minus2(例えば、変換スキップの最大ブロックサイズなどの制限)、
t)sps_idr_rpl_present_flag(例えば、IDRピクチャのRPL、ビットストリームのマージ/BEAMingなどの制限)、
u)sps_rpl1_same_as_rpl0_flag(例えば、list0とlist1の同じRPLなどに対する制限)、
v)sps_num_ref_pic_lists[i](例えば、i番目のRPLエントリの参照ピクチャリストの数の制限)、
w)sps_dmvr_control_present_in_ph_flag(例えば、SPS以外のPHにおけるDMVR制御の制限)、
x)sps_mmvd_fullpel_only_flag(例えば、フルペル/分数ペルMMVDの制限)、
y)sps_six_minus_max_num_merge_cand(例えば、マージの制限)、
z)sps_affine_type_flag(例えば、4パラメータ/6パラメータモデルなどのアフィンタイプの制限)、
aa)sps_affine_amvr_enabled_flag(例えば、AMVRによるアフィンの制限)、
bb)sps_prof_control_present_in_ph_flag(例えば、SPS以外のPHでのPROF制御の制限)、
cc)sps_log2_parallel_merge_level_minus2(例えば、MERの制限)、
dd)sps_chroma_horizontal_collocated_flag(例えば、クロマサブサンプリング方法の制限)、
ee)sps_chroma_vertical_collocated_flag(例えば、クロマサブサンプリング方法の制限)、
ff)sps_internal_bit_depth_minus_input_bit_depth(例えば、内部ビット深度増加の制限)、
gg)sps_scaling_matrix_for_lfnst_disabled_flag(例えば、LFNSTのスケーリングマトリクスの制限)、
hh)sps_scaling_matrix_for_alternative_colour_space_disabled_flag(例えば、代替色空間のためのスケーリングマトリクスの制限)、
ii)sps_scaling_matrix_designated_colour_space_flag(例えば、指定された色空間以外の色空間の拡大縮小マトリクスの制限)、
jj)sps_general_hrd_params_present_flag(例えば、HRDの制限)
kk)sps_sublayer_cpb_params_present_flag(例えば、CPB/HRDの制限)、
ll)sps_vui_parameters_present_flag(例えば、VUIの制限)、
v.以上に列挙された名前(例えば、X)は、特定のコーディングツール/機能/機能に対応するSPS/PPS/PH/SHシンタックス構造内のsignalled/presentシンタックス要素を指定する例であり、必要に応じて名前を変更することができる。
11.第11の問題を解決するためのローカルデュアルツリーの不完全な記述に関しては、コーディングツリーノードに対して、モードタイプという名前の変数が復号された情報に従って導出されてよい(例えば、VVCのmodeTypeCondition及び/又はmode_constraint_flag/non_inter_flagに従う)。更に、以下が適用されてよい:
a.一例として、コーディングツリーノードが特定のモードタイプ(例えば、VVC仕様書のMODE_TYPE_INTRA及び/又はMODE_TYPE_ALL)に属している場合、コーディングツリーノード内のコーディングユニットに対してパレットモード(例えば、MODE_PLT、及び/又は1に等しいpred_mode_plt_flag)を有効にすることができる。
i.例えば、特定のモードタイプ(例えば、MODE_TYPE_INTRA)を定義して、イントラ(MODE_INTRA)とIBC(MODE_IBC)及びパレット(MODE_PLT)コーディングモードのみをコーディングツリーノード内のコーディングユニットに使用できるかどうかを指定できる。
ii.例えば、特定のモードタイプ(例えば、MODE_TYPE_INTER)を定義して、コーディングツリーノード内のコーディングユニットにインター(MODE_INTER)コーディングモードのみを使用できるかどうかを指定できる。
iii.例えば、特定のモードタイプ(例えば、MODE_TYPE_ALL)を定義して、イントラ、IBC、パレット、インターコーディングモードのすべてをコーディングツリーノード内のコーディングユニットに使用できるかどうかを指定できる。
b.一例では、コーディングツリーノードが特定のモードタイプ(例えば、MODE_TYPE_INTRA及び/又はMODE_TYPE_ALL)に属している場合、コーディングツリーノード内のルマコーディングブロックに対してのみパレットモード(例えば、MODE_PLT及び/又は1に等しいpred_mode_plt_flag)を有効にすることができる。
c.例えば、コーディングツリーノードにコーディングモードの制限が適用されていない場合(例えば、このコーディングツリーノードのモードタイプがMODE_TYPE_ALLに等しい)、コーディングツリーノード内のコーディングユニットには以下のモードのいずれかを使用することができる:
i.イントラモード(例えば、MODE_INTRAと等しい予測モード)
ii.IBCモード(例えば、MODE_IBCと等しい予測モード)
iii.パレットモード(例えば、MODE_PLTに等しい予測モード、及び/又は1に等しいpred_mode_plt_flag)
iv.インターモード(例えば、MODE_INTERと等しい予測モード)
d.一例では、コーディングツリーノードにローカルデュアルツリーを適用する場合(例えば、このコーディングツリーノードのモードタイプがMODE_TYPE_INTRAに等しい)、コーディングツリーノード内のコーディングユニットに次のいずれかのモードを使用できる:
i.イントラモード(例えば、MODE_INTRAと等しい予測モード)
ii.IBCモード(例えば、MODE_IBCと等しい予測モード)
iii.パレットモード(例えば、MODE_PLTに等しい予測モード、及び/又は1に等しいpred_mode_plt_flag)
e.一例では、コーディングツリーノード内のコーディングユニットにローカルデュアルツリーを適用する場合(例えば、このコーディングツリーノードのモードタイプがMODE_TYPE_INTRAに等しい)、このコーディングツリーノード内のルマブロックは、イントラモード及び/又はIBCモード及び/又はパレットモードでコーディングされてよい。
i.更に、このコーディングツリーノード内のクロマブロックはイントラモード(MODE_INTRA)でコーディングされている。
ii.例えば、このコーディングツリーノード内のすべてのルマブロックは、イントラモード(MODE_INTRA)でコーディングされてよい。
iii.例えば、このコーディングツリーノード内のすべてのルマブロックは、IBCモード(MODE_IBC)でコーディングされてよい。
iv.例えば、このコーディングツリーノード内のすべてのルマブロックはパレットモード(MODE_PLT)でコーディングされてよい。
v.例えば、このコーディングツリーノード内のルマブロックは、イントラモード(MODE_INTRA)、IBCモード(MODE_IBC)、パレットモード(MODE_PLT)のいずれかでコーディングされたルマブロックと混合コーディングできる。
vi.例えば、インターモード(MODE_INTER)は、ローカルデュアルツリーコーディングツリーノード(つまり、モードタイプがMODE_TYPE_INTRAと等しいコーディングツリーノード)内のコーディングユニットには使用できない。
f.あるいは、更に、モードタイプが特定の値(例えば、MODE_TYPE_INTRA及び/又はMODE_TYPE_ALL)と等しいコーディングツリーノード内のCUでは、パレットモードが適用されているかどうかの指示が更にシグナリングされてよい。
g.一例では、JVET-R2001-vAのパーティション利用可能性チェックのテキストは次のように変更される(追加されたものは太字の斜体のテキストで強調表示される):
6.4 利用可能性処理
6.4.1 許可される4分割処理
この処理への入力は:
-ルマサンプル数でのコーディングブロックサイズcbSize;
-マルチタイプツリー深さmttDepth;
-コーディングツリーノードのパーティションにシングルツリー(SINGLE_TREE)又はデュアルツリーのどちらを使用するか、及びデュアルツリーを使用する場合はルマ成分(DUAL_TREE_LUMA)又はクロマ成分(DUAL_TREE_CHROMA)のどちらが現在処理されているかを指定する変数treeType;
この処理への入力は:
…
-コーディングツリーノードのパーティションにシングルツリー(SINGLE_TREE)又はデュアルツリーのどちらを使用するか、及びデュアルツリーを使用する場合はルマ成分(DUAL_TREE_LUMA)又はクロマ成分(DUAL_TREE_CHROMA)のどちらが現在処理されているかを指定する変数treeType;
この処理への入力は:
…
-コーディングツリーノードのパーティションにシングルツリー(SINGLE_TREE)又はデュアルツリーのどちらを使用するか、及びデュアルツリーを使用する場合はルマ成分(DUAL_TREE_LUMA)又はクロマ成分(DUAL_TREE_CHROMA)のどちらが現在処理されているかを指定する変数treeType;
a.一例では、シンタックス要素はフラグである(例えば、mode_constraint_flag又はnon_inter_flag又はinter_mode_only_flagとして示される)。
b.一例では、シンタックス要素のセマンティクスは次のように定義できる:
non_inter_flagが0に等しいことは、現在のコーディングツリーノード内のコーディングユニットは、インター予測コーディングモードのみを使用できることを指定する。non_inter_flagが1に等しいことは、現在のコーディングツリーノード内のコーディングユニットは、イントラ又はIBC又はパレット予測コーディングモードを使用できることを指定する。
或いは、
inter_mode_only_flagが1に等しいことは、現在のコーディングツリーノード内のコーディングユニットは、インター予測コーディングモードのみを使用できることを指定する。inter_mode_only_flagが0に等しいことは、現在のコーディングツリーノード内のコーディングユニットは、イントラ又はIBC又はパレット予測コーディングモードを使用できることを指定する。
c.また、更に、CUに使用される予測モードは、上記のシンタックス要素に加えて、他のシンタックス要素/復号された情報に更に依存してよい。
MaxPicOrderCntLsb=2(thethirdvalue+4)方法700の幾つかの実施形態では、第2シンタックス要素の第2値は、ph_poc_msb_cycle_present_flagシンタックス要素が、シーケンスパラメータセットを参照するピクチャヘッダに存在するかどうかを指定する。方法700の幾つかの実施形態では、第2シンタックス要素の第2値は、sps_max_sublayers_minus1が0より大きいとき、両端を含む0からsps_max_sublayers_minus1-1の範囲のiについて、シーケンスパラメータセット内のadpb_parameters()シンタックス構造の中のdpb_max_dec_pic_buffering_minus1[i]、dpb_max_num_reorder_pics[i]、及びdpb_max_latency_increase_plus1[i]シンタックス要素の存在を制御する。方法700の幾つかの実施形態では、第2シンタックス要素の第2値は、ph_partition_constraints_override_flagが、シーケンスパラメータセットを参照するピクチャヘッダシンタックス構造に存在するかどうかを指定する。方法700の幾つかの実施形態では、第2シンタックス要素の第2値に2を加えたものは、最小ルマコーディングブロックサイズを指定する。方法700の幾つかの実施形態では、第2シンタックス要素の第2値は、コーディングツリーユニットの4分木分割により生じたルマリーフブロックのルマサンプルのうちの最小サイズの底2の対数と、sh_slice_typeがシーケンスパラメータセットを参照する2(I)に等しいスライスのルマコーディングユニットのルマサンプルのうちの最小コーディングブロックサイズの底2の対数との間のデフォルトの差を指定する。
イントラ予測コーディングモード、
イントラブロックコピー(IBC)コーディングモード、
パレットコーディングモード、及び
インター予測コーディングモード、
のいずれか1つ以上を含むことを指定する。方法800の幾つかの実施形態では、変数は、コーディングツリーノードのコーディングモードタイプがMODE_TYPE_ALLに等しいことを示す。方法800の幾つかの実施形態では、ルールが、コーディングツリーノードの1つ以上のコーディングユニットに対して有効なコーディングモードが、コーディングツリーノードにローカルデュアルツリーが適用されることに応答して、以下:
イントラ予測コーディングモード、
イントラブロックコピー(IBC)モード、及び
パレットコーディングモード、
のいずれか1つ以上を含むことを指定する。方法800の幾つかの実施形態では、コーディングツリーノードのコーディングモードタイプがMODE_TYPE_INTRAに等しい。
方法700~900に関連する実施形態について記載された方法に従い、ビデオのビットストリームを生成するステップと、
ビットストリームをコンピュータ可読プログラム媒体に格納するステップと、
を含む。幾つかの実施形態では、本願明細書に記載された開示された方法又はシステムに従う方法、機器、生成されるビットストリーム。
本願は、国際特許出願番号第PCT/CN2020/093641号、2020年5月31日出願、の優先権及び利益を請求する国際特許出願番号第PCT/CN2021/096707号、2021年5月28日出願、に基づく。前述の全ての特許出願は参照によりそれらの全体がここに組み込まれる。
Claims (51)
- ビデオ処理の方法であって、
ルールに従って、ビデオブロックを含むビデオと前記ビデオのビットストリームとの間の変換を実行するステップを含み、
前記ビデオブロックは、1つ以上のコーディングユニットを含むコーディングツリーノードであり、
前記ルールは、前記ビデオブロックのコーディング情報が、前記ビデオブロックの1つ以上のコーディングユニットに対してコーディングモードが有効になっているかどうかを示すことを指定する、方法。 - 前記ルールは、前記コーディング情報が、コーディングツリーノードのコーディングモードタイプを指定する変数を含むことを指定する、請求項1に記載の方法。
- 前記ルールは、コーディング情報が、前記コーディングツリーノードに含まれる前記1つ以上のコーディングユニットがインター予測コーディングモードの使用を許可されるかどうかを示すシンタックス要素を含むことを指定する、請求項1に記載の方法。
- 前記ルールは、前記コーディングツリーノードが特定のコーディングモードタイプに属することを指定する変数に応答して、前記コーディングモードが、前記コーディングツリーノードの前記1つ以上のコーディングユニットに対して有効なパレットコーディングモードを含むことを指定する、請求項2に記載の方法。
- 前記変数は、前記コーディングツリーノードの前記特定のコーディングモードタイプがMODE_TYPE_INTRAに等しいことを示す、請求項4に記載の方法。
- 前記変数は、前記コーディングツリーノードの前記特定のコーディングモードタイプがMODE_TYPE_ALLに等しいことを示す、請求項4に記載の方法。
- 前記変数は、前記ビットストリームが、前記パレットコーディングモードの使用が有効であることを示す第2シンタックス要素を含むことを指定する、請求項4に記載の方法。
- 前記特定のコーディングモードタイプが、前記コーディングツリーノードに含まれる前記1つ以上のコーディングユニットに対して、イントラ予測コーディングモード、イントラブロックコピー(IBC)コーディングモード、及びパレットコーディングモードのみが許可されることを示す第1モードタイプを含む、請求項4~7のいずれかに記載の方法。
- 前記特定のコーディングモードタイプが、前記コーディングツリーノードに含まれる前記1つ以上のコーディングユニットに対して、インター予測コーディングモードのみが許可されることを示す第2モードタイプを含む、請求項4~7のいずれかに記載の方法。
- 前記特定のコーディングモードタイプが、前記コーディングツリーノードに含まれる前記1つ以上のコーディングユニットに対して、イントラ予測コーディングモード、イントラブロックコピー(IBC)コーディングモード、前記パレットコーディングモード、及び前記インター予測コーディングモードが許可されることを示す第3モードタイプを含む、請求項4~7のいずれかに記載の方法。
- 前記ルールは、前記コーディングツリーノードが特定のコーディングモードタイプに属することを指定する変数に応答して、前記コーディングモードが、前記コーディングツリーノードのルマブロックのみに対して有効なパレットコーディングモードを含むことを指定する、請求項2に記載の方法。
- 前記変数は、前記コーディングツリーノードの前記特定のコーディングモードタイプがMODE_TYPE_INTRAに等しいことを示す、請求項11に記載の方法。
- 前記変数は、前記コーディングツリーノードの前記特定のコーディングモードタイプがMODE_TYPE_ALLに等しいことを示す、請求項11に記載の方法。
- 前記変数は、前記ビットストリームが、前記パレットコーディングモードの使用が有効であることを示す第2シンタックス要素を含むことを指定する、請求項11に記載の方法。
- 前記特定のコーディングモードタイプが、前記コーディングツリーノードに含まれる前記1つ以上のコーディングユニットに対して、イントラ予測コーディングモード、イントラブロックコピー(IBC)コーディングモード、及びパレットコーディングモードのみが許可されることを示す第1モードタイプを含む、請求項11~14のいずれかに記載の方法。
- 前記特定のコーディングモードタイプが、前記コーディングツリーノードに含まれる前記1つ以上のコーディングユニットに対して、イントラ予測コーディングモード、イントラブロックコピー(IBC)コーディングモード、前記パレットコーディングモード、及び前記インター予測コーディングモードが許可されることを示す第2モードタイプを含む、請求項11~14のいずれかに記載の方法。
- 前記ルールが、前記コーディングツリーノードの1つ以上のコーディングユニットに対して有効な前記コーディングモードが、前記コーディングツリーノードにコーディングモード制限が適用されないことを指定する変数に応答して、以下:
イントラ予測コーディングモード、
イントラブロックコピー(IBC)コーディングモード、
パレットコーディングモード、及び
インター予測コーディングモード,
のいずれか1つ以上を含むことを指定する、請求項2に記載の方法。 - 前記変数は、前記コーディングツリーノードの前記コーディングモードタイプがMODE_TYPE_ALLに等しいことを示す、請求項17に記載の方法。
- 前記ルールが、前記コーディングツリーノードの1つ以上のコーディングユニットに対して有効な前記コーディングモードが、前記コーディングツリーノードにローカルデュアルツリーが適用されることに応答して、以下:
イントラ予測コーディングモード、
イントラブロックコピー(IBC)モード、及び
パレットコーディングモード,
のいずれか1つ以上を含むことを指定する、請求項2に記載の方法。 - 前記コーディングツリーノードの前記コーディングモードタイプがMODE_TYPE_INTRAに等しい、請求項19に記載の方法。
- 前記変数は、前記コーディングツリーノードが、前記コーディングツリーノードに含まれる前記1つ以上のコーディングユニットに対して前記イントラ予測コーディングモード、前記IBCモード、及び前記パレットコーディングモードのみが許可されることを示す特定のコーディングモードタイプに属することを指定する、請求項19に記載の方法。
- 前記ルールは、前記コーディングツリーノードのルマブロックに対して有効なコーディングモードが、ローカルデュアルツリーが前記コーディングツリーノードの前記1つ以上のコーディングユニットに適用されていることに応答して、イントラ予測コーディングモード、イントラブロックコピー(IBC)コーディングモード、及びパレットコーディングモードのいずれか1つ以上を含むことを指定する、請求項1~3のいずれかに記載の方法。
- 前記コーディングツリーノードの前記コーディングモードタイプがMODE_TYPE_INTRAに等しい、請求項22に記載の方法。
- 前記ルールは、前記イントラ予測コーディングモードが前記コーディングツリーノードのクロマブロックに適用されることを指定する、請求項22に記載の方法。
- 前記ルールは、前記イントラ予測コーディングモードが、前記コーディングツリーノードの全部のルマブロックに適用されることを指定する、請求項22に記載の方法。
- 前記ルールは、前記IBCコーディングモードが前記コーディングツリーノードの全部のルマブロックに適用されることを指定する、請求項22に記載の方法。
- 前記ルールは、前記パレットコーディングモードが、前記コーディングツリーノードの全部のルマブロックに適用されることを指定する、請求項22に記載の方法。
- 前記ルールは、1つより多くのコーディングモードが前記コーディングツリーノードのルマブロックに適用されることが許可されることを指定し、前記1つより多くのコーディングモードが、イントラ予測コーディングモード、イントラブロックコピー(IBC)コーディングモード、及びパレットコーディングモードのうちのいずれか2つ以上を含む、請求項22に記載の方法。
- 前記ルールは、前記ローカルデュアルツリーが適用される前記コーディングツリーノード内の前記1つ以上のコーディングユニットに対して、前記インター予測コーディングモードが許可されないことを指定する、請求項22に記載の方法。
- 前記ルールは、前記コーディングツリーノード内のコーディングユニット(CU)が特定のコーディングモードタイプを有することに応答して、パレットコーディングモードが、前記コーディングツリーノードの前記1つ以上のコーディングユニットに対して有効かどうかが、前記ビットストリーム内で示されることを指定する、請求項1に記載の方法。
- 前記特定のコーディングモードタイプが、前記コーディングツリーノードに含まれる前記1つ以上のコーディングユニットに対して、イントラ予測コーディングモード、イントラブロックコピー(IBC)コーディングモード、及びパレットコーディングモードのみが許可されることを示す第1モードタイプを含む、請求項30に記載の方法。
- 前記特定のコーディングモードタイプが、前記コーディングツリーノードに含まれる前記1つ以上のコーディングユニットに対して、イントラ予測コーディングモード、イントラブロックコピー(IBC)コーディングモード、前記パレットコーディングモード、及びインター予測コーディングモードが許可されることを示す第2モードタイプを含む、請求項30に記載の方法。
- ビデオ処理の方法であって、
ルールに従って、ビデオブロックを含むビデオピクチャを含むビデオと前記ビデオのビットストリームとの間の変換を実行するステップを含み、
前記ルールは、前記ビデオブロックに対してパレットコーディングモードが有効であることを示すコーディングモードタイプを使用したパーティション処理を使用して、前記ビデオブロックを選択的にコーディングブロックにパーティションすることを指定する、方法。 - 前記コーディングモードタイプは、前記コーディングツリーノードに含まれる前記コーディングユニットに対して、イントラ予測コーディングモード、イントラブロックコピー(IBC)コーディングモード、前記パレットコーディングモード、及びインター予測コーディングモードが許可されることを示す、請求項33に記載の方法。
- 前記コーディングモードタイプは、前記コーディングツリーノードに含まれる前記コーディングユニットに対して、イントラ予測コーディングモード、イントラブロックコピー(IBC)コーディングモード、及びパレットコーディングモードのみが許可されることを示す、請求項33に記載の方法。
- 前記コーディングモードタイプは、前記コーディングツリーノードに含まれる前記コーディングユニットに対して、インター予測コーディングモードのみが許可されることを示す、請求項33に記載の方法。
- 前記パーティション処理は4分割処理を含む、請求項33~36のいずれかに記載の方法。
- 前記パーティション処理は2分割処理を含む、請求項33~36のいずれかに記載の方法。
- 前記パーティション処理は3分割処理を含む、請求項33~36のいずれかに記載の方法。
- MODE_TYPE_INTRAの前記コーディングモードタイプ又は前記特定のコーディングモードタイプは、イントラ予測コーディングモード、イントラブロックコピー(IBC)コーディングモード、及びパレットコーディングモードを含む、請求項5、12、20、及び23のいずれかに記載の方法。
- MODE_TYPE_ALLの前記コーディングモードタイプ又は前記特定のコーディングモードタイプは、イントラ予測コーディングモード、イントラブロックコピー(IBC)コーディングモード、パレットコーディングモード、及びインター予測コーディングモードを含む、請求項6、12、及び13のいずれかに記載の方法。
- 前記変換を実行するステップは、前記ビデオを前記ビットストリームに符号化するステップを含む、請求項1~41のいずれかに記載の方法。
- 前記変換を実行するステップは、前記ビデオを前記ビットストリームに符号化するステップを含み、前記方法は、前記ビットストリームを非一時的コンピュータ可読記録媒体に格納するステップを更に含む、請求項1~41のいずれかに記載の方法。
- 前記変換を実行するステップは、前記ビデオを前記ビットストリームから復号するステップを含む、請求項1~41のいずれかに記載の方法。
- ビデオ復号機器であって、請求項1~44のうちの1つ以上に記載の方法を実施するよう構成されるプロセッサを含むビデオ復号機器。
- ビデオ符号化機器であって、請求項1~44のうちの1つ以上に記載の方法を実施するよう構成されるプロセッサを含むビデオ符号化機器。
- 格納されたコンピュータ命令を有するコンピュータプログラムプロダクトであって、前記命令は、プロセッサにより実行されると、前記プロセッサに項1~44のいずれかに記載の方法を実施させる、コンピュータプログラムプロダクト。
- 請求項1~44のいずれか一項に記載の方法に従い生成されたビットストリームを格納しているコンピュータ可読媒記憶体。
- プロセッサに請求項1~44のいずれかに記載の方法を実施させる命令を格納した非一時的コンピュータ可読記憶媒体。
- ビットストリームを生成する方法であって、
請求項1~44のいずれかに記載の方法に従い、ビデオのビットストリームを生成するステップと、
前記ビットストリームをコンピュータ可読プログラム媒体に格納するステップと、
を含む方法。 - 本願明細書に記載された開示された方法又はシステムに従い生成される方法、機器、ビットストリーム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNPCT/CN2020/093641 | 2020-05-31 | ||
CN2020093641 | 2020-05-31 | ||
PCT/CN2021/096707 WO2021244420A1 (en) | 2020-05-31 | 2021-05-28 | Palette mode with local dual tree modetype definition |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2023527453A true JP2023527453A (ja) | 2023-06-28 |
JP7514330B2 JP7514330B2 (ja) | 2024-07-10 |
Family
ID=
Also Published As
Publication number | Publication date |
---|---|
US20230111806A1 (en) | 2023-04-13 |
KR20230016655A (ko) | 2023-02-02 |
US20240137572A1 (en) | 2024-04-25 |
WO2021244419A1 (en) | 2021-12-09 |
CN115699769A (zh) | 2023-02-03 |
CN115699753A (zh) | 2023-02-03 |
EP4154537A4 (en) | 2024-02-07 |
EP4154537A1 (en) | 2023-03-29 |
WO2021244420A1 (en) | 2021-12-09 |
US11991397B2 (en) | 2024-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7415027B2 (ja) | ハイレベルシンタックス要素のための制約 | |
JP7407299B2 (ja) | 量子化パラメータのための高レベルのビットストリームシンタックス | |
WO2021169970A1 (en) | Interplay between picture header and slice header of a video bitstream | |
WO2021239085A1 (en) | Reference picture list signaling in video coding | |
JP2024003125A (ja) | ビデオコーディングにおける一般制約情報 | |
KR102629799B1 (ko) | 상위 레벨 신택스에서의 인터 예측에 대한 시그널링 | |
JP2024012516A (ja) | 一般制約フラグのシグナリング | |
WO2021244419A1 (en) | Constraint signaling using general constraint information syntax element | |
WO2021233450A1 (en) | Signalling for color component | |
JP7514330B2 (ja) | ローカルデュアルツリーモードタイプ定義を伴うパレットモード | |
JP7506175B2 (ja) | 映像コーディングにおけるデブロッキング信号通知 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20221214 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20221214 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240125 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240206 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240426 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20240604 |