JP7425224B2 - 高レベル構文におけるインター予測のための信号通知 - Google Patents

高レベル構文におけるインター予測のための信号通知 Download PDF

Info

Publication number
JP7425224B2
JP7425224B2 JP2022559410A JP2022559410A JP7425224B2 JP 7425224 B2 JP7425224 B2 JP 7425224B2 JP 2022559410 A JP2022559410 A JP 2022559410A JP 2022559410 A JP2022559410 A JP 2022559410A JP 7425224 B2 JP7425224 B2 JP 7425224B2
Authority
JP
Japan
Prior art keywords
equal
flag
value
slice
syntax element
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.)
Active
Application number
JP2022559410A
Other languages
English (en)
Other versions
JP2023519612A (ja
Inventor
ジピン ドン
リー ジャン
イェクイ ワン
カイ ジャン
ジジョン シュー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing ByteDance Network Technology Co Ltd
ByteDance Inc
Original Assignee
Beijing ByteDance Network Technology Co Ltd
ByteDance Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing ByteDance Network Technology Co Ltd, ByteDance Inc filed Critical Beijing ByteDance Network Technology Co Ltd
Publication of JP2023519612A publication Critical patent/JP2023519612A/ja
Application granted granted Critical
Publication of JP7425224B2 publication Critical patent/JP7425224B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/172Methods 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 picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods 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/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/17Methods 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/176Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods 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/186Methods 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/55Motion estimation with spatial constraints, e.g. at image or region borders
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Description

関連出願の相互参照
本願は、2021年4月7日出願の国際出願番号第PCT/CN2021/085772号に基づくものであり、2020年4月7日出願の国際出願番号第PCT/CN2020/083569号の優先権および利益を主張するものである。前述のすべての特許出願は、その全体が参照により本明細書に組み込まれる。
この特許明細書は、画像および映像コーディングおよびデコーディングに関する。
デジタル映像は、インターネットおよび他のデジタル通信ネットワークにおいて最大の帯域幅の使用量を占めている。映像を受信および表示することが可能である接続されたユーザ機器の数が増加するにつれ、デジタル映像の使用に対する帯域幅需要は増大し続けることが予測される。
本願は、コーディングされた表現のデコーディングに有用な制御情報を使用して、映像のコーディングされた表現を処理するために、映像エンコーダおよびデコーダにより使用され得る技術を開示する。
1つの例示的な態様において、映像処理方法が開示される。この方法は、1つ以上の彩度成分を有する映像であって、1つ以上のスライスを含む1つ以上の映像ピクチャと、映像のコーディングされた表現との間で変換を行うことを含み、コーディングされた表現は、フォーマット規則に適合し、フォーマット規則は、彩度配列タイプフィールドが変換中に用いられる彩度の変換特性に対する制約を制御することを規定する。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、1つ以上の映像領域を含む1つ以上の映像ピクチャからなる映像と、映像のコーディングされた表現との間で変換を行うことを含み、コーディングされた表現は、変換中に映像領域に対するデブロッキングフィルタの適用性を示すデブロッキングモードインジケータを含むことを規定するフォーマット規則に適合している。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、1つ以上の映像スライスおよび/または1つ以上の映像サブピクチャからなる1つ以上の映像ピクチャと映像のコーディングされた表現との間で変換を行うことを含み、コーディングされた表現は、映像ピクチャに対してピクチャ分割が無効である場合に、サブピクチャごとの単一スライスモードを有効とみなすか否かを示すフラグを規定するフォーマット規則に適合している。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、1つ以上の映像スライスを構成する1つ以上の映像ピクチャからなる映像と、映像のコーディングされた表現との間で変換を行うことを含み、コーディングされた表現は、ピクチャヘッダまたはスライスヘッダにおいてピクチャまたはスライスレベルの彩度量子化パラメータオフセットを信号通知することを規定するフォーマット規則に適合している。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、以下を含む。1つ以上の映像スライスを含む1つ以上の映像ピクチャからなる映像と、前記映像のコーディングされた表現との間の変換を実行するステップであって、前記コーディングされた表現は、前記映像の映像ブロックの変換に適用される彩度量子化パラメータ(QP)テーブルが(delta_qp_inval_minus1[i][j]+1)およびdelta_qp_diff_val[i][j]とのXOR動作として導出されると定めるフォーマット規則に従って行われ、delta_qp_in_val_minus1[i][j]はi番目の彩度マッピングテーブルのj番目のピボットポイントの入力座標の導出に用いるデルタ値を指定し、delta_qp_diff_val[i][j]はi番目の彩度QPマッピングテーブルのj番目のピボットポイントの出力座標の導出に用いるデルタ値を指定し、iおよびjは整数である。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、フォーマット規則に従って、1つのピクチャを含む映像と、この映像のビットストリームとの間で変換を行うことを含み、前記フォーマット規則は、サブピクチャの境界をまたぐループフィルタリングへの制約を示すシーケンスパラメータセットの構文要素の存在が、ピクチャ内のサブピクチャの数が1より大きいかどうかに基づくことを規定する。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、フォーマット規則に従って1以上のピクチャを含む映像とこの映像のビットストリームとの間で変換を行うことを含み、このフォーマット規則は、存在しない構文要素の値をどのように推論するかを規定し、この構文要素は、サブピクチャをピクチャとして扱い、インループフィルタリング動作を排除することに関する。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、フォーマット規則に従って、1つ以上の映像領域を含む映像とこの映像のビットストリームとの間で変換を行うことを含み、このフォーマット規則は、シーケンスパラメータセットが、映像領域に適用可能なデブロッキングフィルタのパラメータに関する構文要素を含むことを規定する。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、フォーマット規則に従って、1以上のスライスを含む1以上のピクチャを含む映像とこの映像のビットストリームとの間で変換を行うことを含み、フォーマット規則は、特定の条件が満たされた場合、ピクチャヘッダおよびスライスヘッダの両方に輝度量子化パラメータデルタ情報および/または彩度量子化パラメータオフセットを含むことを規定する。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、フォーマット規則に従って、1以上の映像スライスを含む1以上の映像ピクチャを含む映像と、この映像のビットストリームとの間で変換を行うことを含み、このフォーマット規則は、シーケンスパラメータセットに複数の彩度量子化パラメータテーブルのセットが存在することを示すフラグを含めることを規定する。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、フォーマット規則に従って1以上の映像スライスを含む1以上の映像ピクチャを含む映像と、この映像のビットストリームとの間で変換を行うことを含み、このフォーマット規則は、特定のタイプのスライスを含まないシーケンスのために、シーケンスに対して複数の彩度量子化パラメータテーブルのセットの指示を無効化することを規定する。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、映像の映像領域と映像のビットストリームとの間で変換を行うために、フォーマット規則に従って、映像領域の境界におけるインター予測処理のためにどのようにパディングまたはクリッピングを行うかを決定することと、この決定に基づいてこの変換を実行することとを含み、この規則は、(a)境界のタイプ、(b)ラップアラウンド動き補償が有効化されているかどうかを示す第1のパラメータ、または(c)サブピクチャの境界をピクチャの境界として扱うかどうかを示す第2のパラメータのうちの少なくとも2つに基づく。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、フォーマット規則に従って、1以上のピクチャを有する映像とこの映像のビットストリームとの間で変換を行うことを含み、このフォーマット規則は、1つのピクチャのサブピクチャをラップアラウンドパディングまたはクリッピングするためのオフセットを1つのサブピクチャレベルで規定することを規定する。
別の例示的な態様において、別の映像処理方法が開示される。この方法は、フォーマット規則に従って、1つ以上の映像領域を有する映像とこの映像のビットストリームとの間の変換を行うことを含み、このフォーマット規則は、変数Xが映像領域においてBスライスが許可されるかまたは使用されるかを示すことを規定し、このフォーマット規則はさらに、この変数Xが参照ピクチャリスト情報存在フラグの値および/または参照ピクチャリスト構文構造におけるエントリの数を示すフィールドに基づくことを規定する。
さらに別の例示的な態様において、映像エンコーダ装置が開示される。この映像エンコーダは、上述した方法を実装するように構成されたプロセッサを備える。
さらに別の例示的な態様において、映像デコーダ装置が開示される。この映像デコーダは、上述した方法を実装するように構成されたプロセッサを備える。
さらに別の例示的な態様では、コードが記憶されたコンピュータ可読媒体が開示される。このコードは、本明細書に記載の方法の1つをプロセッサが実行可能なコードの形式で実施する。
これらのおよび他の特徴は、本明細書全体にわたって説明される。
映像処理システム例を示すブロック図である。 映像処理装置のブロック図である。 映像処理方法の一例を示すフローチャートである。 本開示のいくつかの実施形態による映像コーディングシステムを示すブロック図である。 本開示のいくつかの実施形態によるエンコーダを示すブロック図である。 本開示のいくつかの実施形態によるデコーダを示すブロック図である。 開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。 開示される技術のいくつかの実装形態に基づく、映像処理の例示的な方法のフローチャートを示す。
本明細書では、理解を容易にするために章の見出しを使用しており、その技術および各章に記載された実施形態の適用可能性をその章のみに限定するものではない。さらに、H.266という用語は、ある説明において、理解を容易にするためだけに用いられ、開示される技術の範囲を限定するために用いられたものではない。このように、本明細書で説明される技術は、他の映像コーデックプロトコルおよび設計にも適用可能である。
1. 概要
本明細書は、映像コーディング技術に関する。具体的には、映像コーディングにおけるAPS、デブロッキング、サブピクチャ、QPデルタの構文設計に関する。この考えは、個々にまたは様々な組み合わせで、マルチレイヤ映像コーディング、例えば、現在開発されているVVC(Versatile Video Coding)をサポートする任意の映像コーディング規約または非標準映像コーデックに適用されてもよい。
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(シーケンス終端)
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(ピクチャパラメータセット)
PROF Prediction Refinement with Optical Flow(オプティカルフローによる予測微調整)
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(汎用映像コーディング)
3. 初期の協議
映像コーディングする規格は、主に周知のITU-TおよびISO/IEC規格の開発によって発展してきた。ITU-TはH.261とH.263を作り、ISO/IECはMPEG-1とMPEG-4 Visualを作り、両団体はH.262/MPEG-2 VideoとH.264/MPEG-4 AVC(Advanced Video Coding)とH.265/HEVC規格を共同で作った。H.262以来、映像コーディング規格は、時間的予測と変換コーディングが利用されるハイブリッド映像コーディング構造に基づく。HEVCを超えた将来の映像コーディング技術を探索するため、2015年には、VCEGとMPEGが共同でJVET(Joint Video Exploration Team)を設立した。それ以来、多くの新しい方法がJVETによって採用され、JEM(Joint Exploration Model)と呼ばれる参照ソフトウェアに組み込まれてきた。JVETは四半期に1回開催され、新しいコーディング規格はHEVCに比べて50%のビットレート低減を目指している。2018年4月のJVET会議において、新しい映像コーディング規格を「VVC(Versatile Video Coding)」と正式に命名し、その時、第1版のVVCテストモデル(VTM)をリリースした。VVCの標準化に寄与する努力が続けられているので、すべてのJVET会議において、VVC標準に新しいコーディング技術が採用されている。毎回の会議の後、VVC作業草案およびテストモデルVTMを更新する。VVCプロジェクトは、現在、2020年7月の会合における技術完成(FDIS)を目指している。
3.1. PPS構文および意味論
最近のVVC草案テキストにおいて、PPS構文および意味論は、以下の通りである。
Figure 0007425224000001

Figure 0007425224000002

Figure 0007425224000003

Figure 0007425224000004
PPS RBSPは、それが参照される前にデコーディング処理で利用できるか、それを参照するPPS NALユニットのTemporalId以下のTemporalIdを持つ少なくとも一つのAU内に含まれるか、外部手段を通じて提供されるものとする。
1つの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の値とする。特定のVCL NALユニットは、ppsLayerIdがvclLayerId以下であり、nuh_layer_idがppsLayerIdであるレイヤが、vclLayerIdであるnuh_layer_idを有するレイヤを含む少なくとも1つのOLSに含まれていない限り、特定のPPS NALユニットを参照しないものとする。
pps_seq_parameter_set_idはSPSのsps_seq_parameter_set_idの値を規定する。pps_seq_parameter_set_idの値は、0~15の範囲内である。pps_seq_parameter_set_idの値は、1つのCLVSにおけるコーディングされたピクチャが参照するすべてのPPSにおいて同じであるものとする。
1に等しいmixed_nalu_types_nalu_pic_flagは、PPSを参照する各ピクチャが2つ以上のVCL NALユニットを有し、VCL NALユニットがnal_unit_typeの同じ値を有さず、ピクチャがIRAPピクチャでないことを規定する。0に等しいmixed_nalu_types_in_pic_flagは、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値nalUnitTypeAがIDR_W_RADL~CRA_NUTの範囲内にある各スライスで、nal_unit_typeの別の値を有する1つ以上のスライスをも含むpicA(すなわち、ピクチャpicAのmixed_nalu_types_in_pic_flagの値が1に等しい)において、下記が適用される。
-このスライスは、対応する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-1に等しいmixed_nalu_types_in_pic_flagは、PPSを参照するピクチャが、異なるNALユニットタイプを有するスライスを含み、例えば、サブピクチャビットストリームマージ演算に由来するコーディングされたピクチャであり、ビットストリーム構造のマッチングと更に元のビットストリームのパラメータのアラインメントとを確実にしなければならないことを示す。このようなアラインメントの一例は、以下のようである。sps_idr_rpl_flagの値が0に等しく、mixed_nalu_types_in_pic_flagが1に等しい場合は、PPSを参照するピクチャは、nal_unit_typeがIDR_W_RADLまたはIDR_N__LPと等しいスライスを有することはできない。
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は、以下のように導出される。
PicWidthInCtbsY=Ceil(pic_width_in_luma_samples÷CtbSizeY) (69)
PicHeightInCtbsY=Ceil(pic_height_in_luma_samples÷CtbSizeY) (70)
PicSizeInCtbsY=PicWidthInCtbsY*PicHeightInCtbsY (71)
PicWidthInMinCbsY=pic_width_in_luma_samples/MinCbSizeY (72)
PicHeightInMinCbsY=pic_height_in_luma_samples/MinCbSizeY (73)
PicSizeInMinCbsY=PicWidthInMinCbsY*PicHeightInMinCbsY (74)
PicSizeInSamplesY=pic_width_in_luma_samples*pic_height_in_luma_samples (75)
PicWidthInSamplesC=pic_width_in_luma_samples/SubWidthC (76)
PicHeightInSamplesC=pic_height_in_luma_samples/SubHeightC (77)
1に等しいpps_conformance_window_flagは、SPSにおける次の適合性クロッピングウィンドウのオフセットパラメータがPPSで次に続くことを示す。0に等しいpps_conformance_window_flagは、適合性クロッピングウィンドウのオフセットパラメータがPPSに存在しないことを示す。
pps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset、およびpps_conf_win_bottom_offsetは、出力用のピクチャ座標で設定された矩形領域に関し、デコーディング処理から出力されるCLVSのピクチャのサンプルを規定する。pps_conformance_window_flagが0に等しい場合、pps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset、pps_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と等しいことがビットストリーム適合性の要件である。
1に等しいscaling_window_explicit_signalling_flagは、スケーリングウィンドウオフセットパラメータがPPSに存在することを規定する。0に等しいscaling_window_explicit_signalling_flagは、スケーリングウィンドウオフセットパラメータが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=pic_width_in_luma_samples-SubWidthC*(scaling_win_right_offset+scaling_win_left_offset) (78)
PicOutputHeightL=pic_height_in_luma_samples-SubWidthC*(scaling_win_bottom_offset+scaling_win_top_offset) (79)
このPPSを参照する現在のピクチャの参照ピクチャのPicOutputWidthL、refPicOutputHeightLを、それぞれ、PicOutputWidthL、PicOutputHeightLとする。ビットストリーム適合性の要件は、以下のすべての条件を満たすことである。
- PicOutputWidthL*2はrefPicWidthInLumaSamples以上であるものとする。
- PicOutputHeightL*2はrefPicHeightInLumaSamples以上であるものとする。
- PicOutputWidthLがrefPicWidthInLumaSamples*8以下であるものとする。
- PicOutputHeightLが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))以上であるものとする。
1に等しいoutput_flag_present_flagは、PPSを参照するスライスヘッダにpic_output_flag構文要素が存在することを示す。0に等しいoutput_flag_present_flagは、PPSを参照するスライスヘッダにpic_output_flag構文要素が存在しないことを示す。
1に等しいsubpic_id_mapping_in_pps_flagは、PPSにおいてサブピクチャのIDマッピングが信号通知されることを規定する。0に等しいsubpic_id_mapping_in_pps_flagは、PPSにおいてサブピクチャのIDマッピングが信号通知されないことを規定する。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の各値について、以下のように導出される。
for(i=0;i<=sps_num_subpics_minus1;i++)
if(subpic_id_mapping_explicitly_signalled_flag)
SubpicIdVal[i]=subpic_id_mapping_in_pps_flag?pps_subpic_id[i]:sps_subpic_id[i] (80)
else
SubpicIdVal[i]=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の範囲(両端含む)の特定の値に等しくなければならない。
1に等しいno_pic_partition_flagは、PPSを参照する各ピクチャに対してピクチャ分割が適用されないことを規定する。0に等しいno_pic_partition_flagは、PPSを参照する各ピクチャを2つ以上のタイルまたはスライスに分割することができることを規定する。
1つのCLVS内のコーディングされたピクチャによって参照されるすべてのPPSについて、no_pic_partition_flagの値が同じであるものとすることが、ビットストリーム適合性の要件である。
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は、i番目のタイル列の幅を、0~num_exp_tile_columns_minus1-1の範囲内にある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は、i番目のタイル列の高さを、0~num_exp_tile_rows_minus1-1の範囲内にあるi番目のタイル行のCTB単位で規定する。tile_row_height_minus1[num_exp_tile_rows_minus1]は、6.5.1項で規定されたようにnum_exp_tile_rows_minus1以上であるインデックスでタイル行の高さを導出するのに使用される。tile_row_height_minus1[i]の値は、0~PicHeightInCtbsY-1の範囲内にあるものとする存在しない場合、tile_row_height_minus1[0]の値はPicHeightInCtbsY-1に等しいと推論される。
0に等しいrect_slice_flagは、各スライス内のタイルがラスタスキャン順に配列されており、かつスライス情報がPPSで信号通知されないことを規定する。1に等しいrect_slice_flagは、各スライス内のタイルがピクチャの矩形領域を覆い、かつスライス情報がPPSで信号通知されることを規定する。存在しない場合、rect_slice_flagは1に等しいと推論される。subpic_info_present_flagが1に等しいとき、rect_slice_flagの値は1に等しいものとする。
1に等しいsingle_slice_per_subpic_flagは、各サブピクチャが1つの唯一の矩形スライスで構成されることを規定する。0に等しいsingle_slice_per_subpic_flagは、各サブピクチャが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は附属書Aで規定されるものとする。no_pic_partition_flagが1の場合、num_slices_in_pic_minus1の値は0に等しいと推定される。
tile_idx_delta_present_flagが0の場合は、PPSにtile_idx_delta値が存在せず、PPSを参照するピクチャの全ての矩形スライスを6.5.1項の処理に従ってラスタオーダで規定することを規定する。1に等しいtile_idx_delta_present_flagは、PPSにtile_idx_delta値が存在し、PPSを参照するピクチャのすべての矩形スライスがtile_idx_delta値で示される順序で規定されることが規定される。存在しない場合、tile_idx_delta_present_flagの値は0と推論される。
slice_width_in_tiles_minus1[i]+1は、i番目の矩形スライスの幅をタイルの列単位で規定する。slice_width_in_tiles_minus1[i]の値は、0からNumTileColumns-1までの範囲内にあるものとする。
slice_width_in_tiles_minus1[i]が存在しない場合、以下が適用される。
- NumTileColumnsが1に等しい場合は、slice_width_in_tiles_minus1[i]の値は0に等しいと推論される。
- そうでない場合、6.5.1項で規定されるように、slice_width_in_tiles_minus1[i]の値を推論する。
slice_height_in_tiles_minus1[i]+1は、i番目の矩形スライスの高さをタイル行単位で規定する。slice_height_in_tiles_minus1[i]の値は、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]iの値は、slice_height_in_tiles_minus1[i-1]と等しいと推論される。
num_exp_slices_in_tile[i]は、2つ以上の矩形スライスを含む、現在のタイルにおける明確に提供されるスライスの高さの数を規定する。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より大きいとき、変数NumSliceSInTile[i]および0からNumSliceSinTile[i]-1の範囲内にあるkに対するSliceHeightInCtusMinus1[i+k]は、以下のように導出される。
remainingHeightInCtbsY=RowHeight[SliceTopLeftTileIdx[i]/NumTileColumns]
numExpSliceInTile=num_exp_slices_in_tile[i]
for(j=0;j<numExpSliceInTile-1;j++){
SliceHeightInCtusMinus1[i++]=exp_slice_height_in_ctu_minus1[j]
remainingHeightInCtbsY-=SliceHeightInCtusMinus1[j]

uniformSliceHeightMinus1=SliceHeightInCtusMinus1[i-1] (81)
while(remainingHeightInCtbsY>=(uniformSliceHeightMinus1+1)){
SliceHeightInCtusMinus1[i++]=uniformSliceHeightMinus1
remainingHeightInCtbsY-=(uniformSliceHeightMinus1+1)
j++

if(remainingHeightInCtbsY>0){
SliceHeightInCtusMinus1[i++]=remainingHeightInCtbsY
j++

NumSlicesInTile[i]=j
tile_idx_delta[i]i番目の矩形スライスにおける第1のタイルのタイルインデックスと、(i+1)番目の矩形スライスにおける第1のタイルのタイルインデックスと、の差を規定する。tile_idx_delta[i]の値は、-NumTilesInPic+1~NumTilesInPic-1の範囲内にあるものとする。存在しない場合、tile_idx_delta[i]の値は0に等しいと推論される。存在する場合、tile_idx_delta[i]の値は0に等しいと推論される。
1に等しいloop_filter_across_tiles_enabled_flagは、PPSを参照しているピクチャにおいて、タイルの境界をまたいでインループフィルタリング動作を行うことができることを規定する。0に等しいloop_filter_across_tiles_enabled_flagは、PPSを参照しているピクチャにおいて、タイルの境界をまたいでインループフィルタリング動作を行わないことを規定する。インループフィルタリング動作は、デブロッキングフィルタ、サンプル適応オフセットフィルタ、および適応ループフィルタ動作を含む。存在しない場合、loop_filter_across_tiles_enabled_flagの値は1に等しいと推論される。
1に等しいloop_filter_across_slices_enabled_flagは、PPSを参照しているピクチャにおいて、スライスの境界をまたいでインループフィルタリング動作を行うことができることを規定する。0に等しいloop_filter_across_slice_enabled_flagは、PPSを参照しているピクチャにおいて、スライスの境界をまたいでインループフィルタリング動作を行わないことを規定する。インループフィルタリング動作は、デブロッキングフィルタ、サンプル適応オフセットフィルタ、および適応ループフィルタ動作を含む。存在しない場合、loop_filter_across_slices_enabled_flagの値は0に等しいと推論される。
1に等しいcabac_init_present_flagは、PPSを参照するスライスヘッダにcabac_init_flagが存在することを規定する。0に等しいcabac_init_present_flagは、cabac_init_flagがPPSを参照するスライスヘッダにcabac_init_flagが存在しないことを規定する。
0に等しいnum_ref_idx_default_active_minus1[i]+1は、iが0に等しい場合、PまたはBスライスの変数NumRefIdxActive[0]の推論値をnum_ref_idx_active_override_flag=0で規定し、0に等しいnum_ref_idx_active_override_flagは、iが1に等しい場合、Bスライスの変数NumRefIdxActive[1]の推論値をnum_ref_idx_active_override_flag=0で規定する。num_ref_idx_default_active_minus1[i]の値は、0~14の範囲内にあるものとする。
0に等しいrpl1_idx_present_flagは、PPSを参照するピクチャのPH構文構造またはスライスヘッダにref_pic_list_sps_flag[1]およびref_pic_list_idx[1]が存在しないことを規定する。1に等しいrpl1_idx_present_flagは、PPSを参照するピクチャのPH構文構造またはスライスヘッダにref_pic_list_sps_flag[1]およびref_pic_list_idx[1]が存在する場合があることを規定する。
init_qp_minus26+26は、PPSを参照するスライスごとにSliceQpの初期値を規定する。SliceQpの最初の値は、ph_qp_deltaの非ゼロ値がデコードされるときにはピクチャレベルで、またはslice_qp_deltaの非ゼロ値がデコードされるときにはスライスレベルで、修正される。init_qp_minus26の値は、-(26+QpBdOffset)~+37の範囲内にあるものとする。
1に等しいcu_qp_delta_enabled_flagは、ph_cu_qp_delta_subdiv_intra_sliceおよびph_cu_qp_delta_subdiv_inter_slice構文要素がPPSを参照するPHに存在し、cu_qp_delta_absが変換ユニット構文に存在してもよいことを規定する。cu_qp_delta_flagが0に等しいことは、ph_cu_qp_subdiv_intra_sliceおよびph_cu_qp_subdiv_inter_slice構文要素がPPSを参照するPHに存在せず、cu_qp_delta_absが変換ユニット構文に存在しないことを規定する。
1に等しいpps_chroma_tool_offsets_present_flagは、彩度ツールオフセット関連の構文要素がPPS RBSP構文構造に存在することを規定する。0に等しいpps_chroma_tool_offsets_present_flagは、彩度ツールオフセット関連構文要素がPPS RBSP構文構造に存在することを規定する。ChromaArrayTypeが0に等しい場合、pps_chroma_tool_offsets_present_flagの値は0に等しくなる。
pps_cb_qp_offset、pps_cr_qp_offsetは、Qp’Cb、Qp’Crの導出に用いられる輝度量子化パラメータQp’へのオフセットをそれぞれ規定する。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に等しいと推論される。
1に等しいpps_joint_cbcr_qp_offset_present_flagは、pps_joint_cbcr_qp_offset_valueおよびjoint_cbcr_qp_offset_list[i]がPPS RBSP構文構造に含まれていることを規定する。0に等しいpps_joint_cbcr_qp_offset_present_flagは、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’へのオフセットを示す。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に等しいと推論される。
1に等しいpps_slice_chroma_qp_offsets_present_flagは、slice_cb_qp_offsetおよびslice_cr_qp_offset構文要素が関連付けられたスライスヘッダに存在することを規定する。pps_slice_slice_chroma_qp_offsets_present_flagが0に等しい場合は、slice_cb_qp_offsetおよびslice_cr_qp_offset構文要素が関連付けられたスライスヘッダに存在しないことを規定する。存在しない場合、pps_slice_chroma_qp_offsets_present_flagの値は0に等しいと推論される。
1に等しいpps_cu_chroma_qp_offset_list_enabled_flagは、PPSを参照するPHにph_cu_chroma_qp_offset_subdiv_intra_sliceおよびph_cu_chroma_qp_offset_subdiv_inter_slice構文要素が存在し、cu_chroma_qp_offset_flagが変換ユニット構文およびパレットコーディング構文に存在する場合もあることを規定する。0に等しいpps_cu_chroma_qp_list_enabled_flagは、ph_cu_chroma_qp_offset_subdiv_intra_sliceおよびph_cu_chroma_qp_offset_subdiv_inter_slice構文要素は、PPSを参照するPHに存在せず、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]は、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に等しいと推論される。
0に等しいpps_weighted_pred_flagは、PPSを参照しているP個のスライスに対して重み付け予測が適用されないことを規定する。1に等しいsps_weighted_pred_flagは、PPSを参照しているP個のスライスに対して重み付け予測が適用されることを規定する。sps_weighted_pred_flagが0に等しい場合、pps_weighted_pred_flagの値は0に等しいものとする。
0に等しいpps_weighted_bipred_flagは、PPSを参照しているB個のスライスに対して明示的な重み付け予測が適用されないことを規定する。1に等しいsps_weighted_bipred_flagは、PPSを参照しているB個のスライスに対して明示的な重み付け予測が適用されることを規定する。sps_weighted_bipred_flagが0に等しい場合、pps_weighted_bipred_flagの値は0に等しいものとする。
1に等しいdeblocking_filter_control_present_flagは、PPSにおけるデブロッキングフィルタ制御構文要素の存在を規定する。0に等しいdeblocking_filter_control_present_flagは、PPSにおけるデブロッキングフィルタ制御構文要素の不在を規定する。
1に等しいdeblocking_filter_override_enabled_flagは、PPSを参照するPHにおけるph_deblocking_filter_override_flagの存在を規定、または、PPSを参照するスライスヘッダにおけるslice_deblocking_filter_override_flagの存在を規定する。0に等しいdeblocking_filter_override_enabled_flagは、PPSを参照するPHにおけるph_deblocking_filter_override_flagの不在を規定し、または、PPSを参照するスライスヘッダにおけるslice_deblocking_filter_override_flagの不在を規定する。存在しない場合、deblocking_filter_override_enabled_flagの値は0に等しいと推論される。
1に等しいpps_deblocking_filter_disabled_flagは、デブロッキングフィルタの演算は、slice_deblocking_filter_disabled_flagが存在しないPPSを参照するスライスに対して適用されないことを規定する。0に等しいpps_deblocking_filter_disabled_flagは、デブロッキングフィルタの演算は、slice_deblocking_filter_disabled_flagが存在しないPPSを参照するスライスに対して適用されることを規定する。存在しない場合、pps_deblocking_filter_disabled_flagの値は0に等しいと推論される。
pps_beta_offset_div2およびpps_tc_offset_div2は、デフォルトのデブロッキングパラメータオフセットが、PPSを参照するスライスのピクチャヘッダまたはスライスヘッダに存在するデブロッキングパラメータオフセットによって上書きされない限り、PPSを参照するスライスの輝度成分に適用されるβおよびtCのデフォルトのデブロッキングパラメータオフセット(2で割られた)を規定する。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を参照するスライスのピクチャヘッダまたはスライスヘッダに存在するデブロッキングパラメータオフセットによって上書きされない限り、PPSを参照するスライスのCb成分に適用されるβおよびtCのデフォルトのデブロッキングパラメータオフセット(2で割られた)を規定する。pps_cb_beta_offset_div2およびpps_cb_tc_offset_div2の値は、共に-12~+12の範囲内となる。存在しない場合、pps_cb_offset_div2およびpps_cb_offset_div2の値はいずれも0に等しいと推論される。
pps_cr_beta_offset_div2およびpps_cr_tc_offset_div2は、デフォルトのデブロッキングパラメータオフセットが、PPSを参照するスライスのピクチャヘッダまたはスライスヘッダに存在するデブロッキングパラメータオフセットによって上書きされない限り、PPSを参照するスライスのCr成分に適用されるβおよびtCのデフォルトのデブロッキングパラメータオフセット(2で割られた)を規定する。pps_cr_beta_offset_div2およびpps_cr_tc_offset_div2の値は、共に-12~+12の範囲内となる。存在しない場合、pps_cr_offset_div2およびpps_cr_offset_div2の値はいずれも0に等しいと推論される。
1に等しいrpl_info_in_ph_flagは、参照ピクチャリスト情報がPH構文構造に含まれており、PH構文構造を含まないPPSを参照するスライスヘッダに含まれていないことを規定する。0に等しいrpl_info_in_ph_flagは、参照ピクチャリスト情報がPH構文構造に含まれておらず、PH構文構造を包含しないPPSを参照するスライスヘッダに存在する場合があることを規定する。
1に等しいdbf_info_in_ph_flagは、PH構文構造にデブロッキングフィルタ情報が存在し、PH構文構造を含まないPPSを参照するスライスヘッダには存在しないことを規定する。0に等しいdbf_info_in_ph_flagは、PH構文構造にデブロッキングフィルタ情報が存在せず、PH構文構造を含まないPPSを参照するスライスヘッダに存在する場合があることを規定する。存在しない場合、dbf_info_in_ph_flagの値は0に等しいと推論される。
1に等しいsao_info_in_ph_flagは、PH構文構造にSAOフィルタ情報が存在し、PH構文構造を含まないPPSを参照するスライスヘッダには存在しないことを規定する。0に等しいsao_info_in_ph_flagは、PH構文構造にSAOフィルタ情報が存在せず、PH構文構造を含まないPPSを参照するスライスヘッダには存在してもよいことを規定する。
1に等しいalf_info_in_ph_flagは、PH構文構造にALF情報が存在し、PH構文構造を含まないPPSを参照するスライスヘッダに存在しないことを規定する。0に等しいalf_info_in_ph_flagは、PH構文構造にALF情報が存在せず、PH構文構造を含まないPPSを参照するスライスヘッダには存在してもよいことを規定する。
1に等しいwp_info_in_ph_flagは、PH構文構造に重み付け予測情報が存在している場合があり、PH構文構造を含まないPPSを参照するスライスヘッダには存在しないことを規定する。0に等しいwp_info_in_ph_flagは、PH構文構造に重み付け予測情報が存在せず、PH構文構造を含まないPPSを参照するスライスヘッダに存在する場合があることを規定する。存在しない場合、wp_info_in_ph_flagの値は0に等しいと推論される。
1に等しいqp_delta_info_in_ph_flagは、PH構文構造にQPデルタ情報が存在し、PH構文構造を含まないPPSを参照するスライスヘッダには存在しないことを規定する。0に等しいqp_delta_info_in_ph_flagは、PH構文構造にQPデルタ情報が存在せず、PH構文構造を含まないPPSを参照するスライスヘッダに存在する場合があることを規定する。
1に等しいpps_ref_wraparound_enabled_flagは、インター予測において水平ラップアラウンド動き補償を適用することを規定する。0に等しいpps_ref_wraparound_enabled_flagは、水平ラップアラウンド動き補償を適用することを規定する。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に等しく設定される。
0に等しいpicture_header_extension_present_flagは、PPSを参照するPHにおいてPH拡張構文要素が存在しないことを規定する。1に等しいpicture_header_extension_present_flagは、PPSを参照するPHにおいてPH拡張構文要素が存在することを規定する。picture_header_extension_present_flagは、本明細書のこのバージョンに準拠するビットストリームにおいて0に等しいものとする。
0に等しいslice_header_extension_present_flagは、PPSを参照するコーディングされたピクチャのスライスヘッダにスライスヘッダ拡張構文要素が存在しないことを規定する。1に等しいslice_header_extension_flagは、PPSを参照するコーディングされたピクチャのスライスヘッダにスライスヘッダ拡張構文要素が存在することを規定する。slice_header_extension_present_flagは、本明細書のこのバージョンに準拠するビットストリームにおいて0に等しいものとする。
0に等しいpps_extension_flagは、PPS RBSP構文構造にpps_extension_data_flag構文要素が含まれていないことを規定する。1に等しいpps_extension_flagは、PPS RBSP構文構造にpps_extension_data_flag構文要素が存在することを規定する。
pps_extension_data_flagは任意の値を有することができる。その存在および値は、本明細書バージョンで特定された特徴に対するのデコーダの適合性に影響を与えない。本明細書バージョンに準拠するデコーダは、すべてのpps_extension_data_flag構文要素を無視しなければならない。
3.2. APS構文および意味論
最近のVVC草案テキストにおいて、APS構文および意味論は、以下の通りである。
Figure 0007425224000005
APS RBSPはALF構文構造、すなわちalf_data()を含む。
Figure 0007425224000006

Figure 0007425224000007
APS RBSPはLMCS構文構造、すなわちlmcs_data()を含む。
Figure 0007425224000008
APS RBSPは、スケーリングリストデータの構文構造、すなわちscaling_list_data()を含む。
Figure 0007425224000009

各APS RBSPは、それが参照される前にデコーディング処理で利用できるか、それを参照するコーディングされたスライスNALユニットのTemporalId以下のTemporalIdを持つ少なくとも一つのAU内に含まれるか、外部手段を通じて提供されるものとする。
adaptation_parameter_set_idの特定の値を有し、かつPU内のaps_params_typeの特定の値を有するすべての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の値とする。特定のVCL NALユニットは、apsLayerIdがvclLayerId以下であり、nuh_layer_idがapsLayerIdであるレイヤが、vclLayerIdであるnuh_layer_idを有するレイヤを含む少なくとも1つのOLSに含まれていない限り、特定のAPS NALユニットを参照しないものとする。
aps_params_typeは、表6に示されるように、APSにおいて実行されるAPSパラメータのタイプを規定する。
表6-APSパラメータのタイプコードおよびAPSパラメータのタイプ
Figure 0007425224000010

aps_params_typeの特定の値を有するすべてのAPS NALユニットは、nuh_layer_idの値に関わらず、adaptation_parameter_set_idのために同じ値空間を共有する。aps_params_typeの値が異なるAPS NALユニットは、adaptation_parameter_set_idに別個の値空間を使用する。
注1-APS NALユニット(adaption_parameter_set_idの特定の値およびaps_params_typeの特定の値を有する)は、ピクチャ間で共有されてもよく、ピクチャ内の異なるスライスは、異なるALF APSを参照することができる。
注2-特定のVCL NALユニットに関連付けられたサフィックスAPS NALユニット(このVCL NALユニットは、デコーディング順でサフィックスAPS NALユニットに先行する)は、特定のVCL NALユニットによって使用されるものではなく、サフィックスAPS NALユニットに続くVCL NALユニットによってデコーディング順で使用されるものである。
0に等しいaps_extension_flagは、APS RBSP構文構造にaps_extension_data_flag構文要素が含まれていないことを規定する。1に等しいaps_extension_flagは、APS RBSP 構文構造にaps_extension_data_flag構文要素が存在することを規定する。
aps_extension_data_flagは任意の値を有することができる。その存在および値は、本明細書バージョンで特定された特徴に対するのデコーダの適合性に影響を与えない。本明細書バージョンに準拠するデコーダは、すべてのaps_extension_data_flag構文要素を無視しなければならない。
1に等しいalf_luma_filter_signal_flagは、輝度フィルタセットが信号通知されることを示す0に等しいalf_luma_filter_signal_flagは、輝度フィルタセットは信号通知されないことを示す。
1に等しいalf_chroma_filter_signal_flagは、彩度フィルタが信号通知されることを示す。0に等しいalf_chroma_filter_signal_flagは、彩度フィルタが信号通知されないことを示す。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に等しいとする。
異なる適応ループフィルタの数を規定する変数NumAlfFiltersは、25に設定される。
0に等しいalf_luma_clip_flagは、線形適応ループフィルタリングが輝度成分に適用されることを規定する。1に等しいalf_luma_clip_flagは、非線形適応ループフィルタリングが輝度成分に適用され得ることを規定する。
alf_luma_num_filters_signalled_minus1+1は、輝度係数を信号通知することができる適応ループフィルタクラスの数を規定する。alf_luma_num_filters_signalled_minus1の値は、0~NumAlfFilters-1の範囲にあるものとする。
alf_luma_coeff_delta_idx[filtIdx]は、filtIdxが示すフィルタクラスのための、0からNumAlfFilters-1までの範囲にわたる、信号通知される適応ループフィルタ輝度係数デルタのインデックスを規定する。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]は、次のように初期化される。
filtCoeff[sfIdx][j]=alf_luma_coeff_abs[sfIdx][j]*(1-2*alf_luma_coeff_sign[sfIdx][j]) (93)
要素AlfCoeff[adaptation_parameter_set_id][filtIdx][j]を有する輝度フィルタ係数AlfCoeff[adaptation_parameter_set_id]、(但し、filtIdx=0..NumAlfFilters-1、j=0..11)は以下のように導出される。
AlfCoeff[adaptation_parameter_set_id][filtIdx][j]=filtCoeff[alf_luma_coeff_delta_idx[filtIdx]][j] (94)
固定フィルタ係数AlfFixFiltCoeff[i][j](但しi=0..64、j=0..11)、およびのAlfClassToFiltMap[m][n](但しm=0..15、n=0..24)をフィルタマッピングするクラスは、以下のように導出される。
AlfFixFiltCoeff= (95)

{0,0,2,-3,1,-4,1,7,-1,1,-1,5}
{0,0,0,0,0,-1,0,1,0,0,-1,2}
{0,0,0,0,0,0,0,1,0,0,0,0}
{0,0,0,0,0,0,0,0,0,0,-1,1}
{2,2,-7,-3,0,-5,13,22,12,-3,-3,17}
{-1,0,6,-8,1,-5,1,23,0,2,-5,10}
{0,0,-1,-1,0,-1,2,1,0,0,-1,4}
{0,0,3,-11,1,0,-1,35,5,2,-9,9}
{0,0,8,-8,-2,-7,4,4,2,1,-1,25}
{0,0,1,-1,0,-3,1,3,-1,1,-1,3}
{0,0,3,-3,0,-6,5,-1,2,1,-4,21}
{-7,1,5,4,-3,5,11,13,12,-8,11,12}
{-5,-3,6,-2,-3,8,14,15,2,-7,11,16}
{2,-1,-6,-5,-2,-2,20,14,-4,0,-3,25}
{3,1,-8,-4,0,-8,22,5,-3,2,-10,29}
{2,1,-7,-1,2,-11,23,-5,0,2,-10,29}
{-6,-3,8,9,-4,8,9,7,14,-2,8,9}
{2,1,-4,-7,0,-8,17,22,1,-1,-4,23}
{3,0,-5,-7,0,-7,15,18,-5,0,-5,27}
{2,0,0,-7,1,-10,13,13,-4,2,-7,24}
{3,3,-13,4,-2,-5,9,21,25,-2,-3,12}
{-5,-2,7,-3,-7,9,8,9,16,-2,15,12}
{0,-1,0,-7,-5,4,11,11,8,-6,12,21}
{3,-2,-3,-8,-4,-1,16,15,-2,-3,3,26}
{2,1,-5,-4,-1,-8,16,4,-2,1,-7,33}
{2,1,-4,-2,1,-10,17,-2,0,2,-11,33}
{1,-2,7,-15,-16,10,8,8,20,11,14,11}
{2,2,3,-13,-13,4,8,12,2,-3,16,24}
{1,4,0,-7,-8,-4,9,9,-2,-2,8,29}
{1,1,2,-4,-1,-6,6,3,-1,-1,-3,30}
{-7,3,2,10,-2,3,7,11,19,-7,8,10}
{0,-2,-5,-3,-2,4,20,15,-1,-3,-1,22}
{3,-1,-8,-4,-1,-4,22,8,-4,2,-8,28}
{0,3,-14,3,0,1,19,17,8,-3,-7,20}
{0,2,-1,-8,3,-6,5,21,1,1,-9,13}
{-4,-2,8,20,-2,2,3,5,21,4,6,1}
{2,-2,-3,-9,-4,2,14,16,3,-6,8,24}
{2,1,5,-16,-7,2,3,11,15,-3,11,22}
{1,2,3,-11,-2,-5,4,8,9,-3,-2,26}
{0,-1,10,-9,-1,-8,2,3,4,0,0,29}
{1,2,0,-5,1,-9,9,3,0,1,-7,20}
{-2,8,-6,-4,3,-9,-8,45,14,2,-13,7}
{1,-1,16,-19,-8,-4,-3,2,19,0,4,30}
{1,1,-3,0,2,-11,15,-5,1,2,-9,24}
{0,1,-2,0,1,-4,4,0,0,1,-4,7}
{0,1,2,-5,1,-6,4,10,-2,1,-4,10}
{3,0,-3,-6,-2,-6,14,8,-1,-1,-3,31}
{0,1,0,-2,1,-6,5,1,0,1,-5,13}
{3,1,9,-19,-21,9,7,6,13,5,15,21}
{2,4,3,-12,-13,1,7,8,3,0,12,26}
{3,1,-8,-2,0,-6,18,2,-2,3,-10,23}
{1,1,-4,-1,1,-5,8,1,-1,2,-5,10}
{0,1,-1,0,0,-2,2,0,0,1,-2,3}
{1,1,-2,-7,1,-7,14,18,0,0,-7,21}
{0,1,0,-2,0,-7,8,1,-2,0,-3,24}
{0,1,1,-2,2,-10,10,0,-2,1,-7,23}
{0,2,2,-11,2,-4,-3,39,7,1,-10,9}
{1,0,13,-16,-5,-6,-1,8,6,0,6,29}
{1,3,1,-6,-4,-7,9,6,-3,-2,3,33}
{4,0,-17,-1,-1,5,26,8,-2,3,-15,30}
{0,1,-2,0,2,-8,12,-6,1,1,-6,16}
{0,0,0,-1,1,-4,4,0,0,0,-3,11}
{0,1,2,-8,2,-6,5,15,0,2,-7,9}
{1,-1,12,-15,-7,-2,3,6,6,-1,7,30}
},
AlfClassToFiltMap= (96)

{8,2,2,2,3,4,53,9,9,52,4,4,5,9,2,8,10,9,1,3,39,39,10,9,52}
{11,12,13,14,15,30,11,17,18,19,16,20,20,4,53,21,22,23,14,25,26,26,27,28,10}
{16,12,31,32,14,16,30,33,53,34,35,16,20,4,7,16,21,36,18,19,21,26,37,38,39}
{35,11,13,14,43,35,16,4,34,62,35,35,30,56,7,35,21,38,24,40,16,21,48,57,39}
{11,31,32,43,44,16,4,17,34,45,30,20,20,7,5,21,22,46,40,47,26,48,63,58,10}
{12,13,50,51,52,11,17,53,45,9,30,4,53,19,0,22,23,25,43,44,37,27,28,10,55}
{30,33,62,51,44,20,41,56,34,45,20,41,41,56,5,30,56,38,40,47,11,37,42,57,8}
{35,11,23,32,14,35,20,4,17,18,21,20,20,20,4,16,21,36,46,25,41,26,48,49,58}
{12,31,59,59,3,33,33,59,59,52,4,33,17,59,55,22,36,59,59,60,22,36,59,25,55}
{31,25,15,60,60,22,17,19,55,55,20,20,53,19,55,22,46,25,43,60,37,28,10,55,52}
{12,31,32,50,51,11,33,53,19,45,16,4,4,53,5,22,36,18,25,43,26,27,27,28,10}
{5,2,44,52,3,4,53,45,9,3,4,56,5,0,2,5,10,47,52,3,63,39,10,9,52}
{12,34,44,44,3,56,56,62,45,9,56,56,7,5,0,22,38,40,47,52,48,57,39,10,9}
{35,11,23,14,51,35,20,41,56,62,16,20,41,56,7,16,21,38,24,40,26,26,42,57,39}
{33,34,51,51,52,41,41,34,62,0,41,41,56,7,5,56,38,38,40,44,37,42,57,39,10}
{16,31,32,15,60,30,4,17,19,25,22,20,4,53,19,21,22,46,25,55,26,48,63,58,55}
},
AlfCoeff[adaptation_parameter_set_id][filtIdx][j](但しfiltIdx=0..NumAlfFilters-1,j=0..11)の値が、-2~2-1の範囲内とすることは、ビットストリーム適合性の要件である。
alf_luma_clip_idx[sfIdx][j]は、sfIdxが示す信号通知された輝度フィルタのj番目の係数を乗じる前に使用するクリッピング値のクリッピングインデックスを規定する。alf_luma_clip_idx[sfIdx][j](但しsfIdx=0..alf_luma_num_filters_signalled_minus1かつj=0..11)の値は、0~3の範囲内とすることがビットストリーム適合性の要件である。
filtIdx=0..NumAlfFilters-1かつj=0..11である輝度フィルタクリッピング値AlfClipL[adaptation_parameter_set_id][fltIdx][j]は、alf_luma_clip_idx[alf_luma_coeff_delta_idx[filtIdx][j]に等しく設定されているBitDepthとclipIdxに依存して表8に規定されているように導出される。
0に等しいalf_chroma_clip_flagは、線形適応ループフィルタリングが彩度成分に適用されることを規定し、1に等しいalf_chroma_clip_flagは、非線形適応ループフィルタリングが彩度成分に適用されることを規定する。存在しない場合、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に等しいと推論される。
要素AlfCoeff[adaptation_parameter_set_id][altIdx][j](但し、altIdx=0..alf_chroma_num_alt_filters_minus1,j=0..5)を有する彩度フィルタ係数AlfCoeff[adaptation_parameter_set_id][altIdx]は、以下のように導出される。
AlfCoeff[adaptation_parameter_set_id][altIdx][j]=alf_chroma_coeff_abs[altIdx][j]*(1-2*alf_chroma_coeff_sign[altIdx][j]) (97)
altIdx=0..alf_chroma_num_alt_filters_minus1、j=0..5であるAlfCoeff[adaptation_parameter_set_id][altIdx][j]の値が-2-1~2-1の範囲内にあることは、ビットストリーム適合性の要件である。
1に等しいalf_cc_cb_filter_signal_flagは、Cb色成分のクロスコンポーネントフィルタが信号通知されることを規定する。0に等しいalf_cc_cb_filter_signal_flagは、Cb色成分のクロスコンポーネントフィルタが信号通知されないことを規定する。ChromaArrayTypeが0に等しい場合、alf_cc_cb_filter_signal_flagは0に等しいとする。
alf_cc_cb_filters_signalled_minus1plus1は、現在の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]iが0に等しい場合、対応するクロスコンポーネントフィルタ係数は正の値を有する。
-そうでない場合(alf_cc_cb_sign[k][j]が1に等しい)、対応するクロスコンポーネントフィルタ係数は負の値を有する。
alf_cc_cb_coeff_sign[k][j]が存在しない場合、それは0に等しいと推論される。
j=0..6とする、Cb色成分CcAlfApsCoeffCb[adaptation_parameter_set_id][k][j]のための符号付き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に等しく設定される。
1に等しいalf_cc_cr_filter_signal_flagは、Cr色成分のクロスコンポーネントフィルタが信号通知されることを規定する。0に等しいalf_cc_cr_filter_signal_flagは、Cr色成分のクロスコンポーネントフィルタが信号通知されないことを規定する。ChromaArrayTypeが0に等しい場合、alf_cc_cr_filter_signal_flagは0に等しいとする。
alf_cc_cr_filters_signalled_minus1plus1は、現在のALF APSで信号通知された Cr 色成分のクロスコンポーネントフィルタの数を規定する。alf_cc_cr_filters_signalled_minus1の値は、0から3までの範囲内とする。
alf_cc_cr_mapped_coeff_abs[k][j]は、Cr色成分に対する信号通知されたk番目のクロスコンポーネントフィルタのj番目のマッピングされた係数の絶対値を規定する。alf_cc_cr_mapped coeff_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に等しいと推論される。
j=0..6とする、Cr色成分CcAlfApsCoeffCr[adaptation_parameter_set_id][k][j]のための符号付き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]の値(但し、altIdx=0..alf_chroma_num_alt_filters_minus1,j=0..5である)は、0~3の範囲内にあることがビットストリーム適合性の要件である。
altIdx=0..alf_chroma_num_alt_filters_minus1,j=0..5)である要素AlfClip[adaptation_parameter_set_id][altIdx][j]を有する彩度フィルタクリッピング値は、BitDepthおよびalf_chroma_clip_idx[altIdx][j]に等しく設定されているclipIdxに応じて、表8で規定されているように導出される。
表8 - ビット深度とclipIdxに依存するAlfClip仕様
Figure 0007425224000011

lmcs_min_bin_idxは、彩度スケーリング構築処理における輝度マッピングに用いる最小ビンインデックスを示す。lmcs_min_bin_idxの値は、0から15までの範囲内にあるべきである。
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は、以下のように導出される。
OrgCW=(1<<BitDepth)/16 (98)
変数lmcsDeltaCW[i]が、i=lmcs_min_bin_idx..LmcsMaxBinIdxのとき、以下のように導出される。
lmcsDeltaCW[i]=(1-2*lmcs_delta_sign_cw_flag[i])*lmcs_delta_abs_cw[i] (99)
変数lmcsCW[i]は、以下のように導出される。
- i=0.. lmcs_min_bin_idx-1の場合、lmcsCW[i]は0に等しく設定される。
- i=lmcs_min_bin_idx..LmcsMaxBinIdxの場合、以下が適用される。
lmcsCW[i]=OrgCW+lmcsDeltaCW[i] (100)
lmcsCW[i]の値は、(OrgCW>3)から(OrgCW<<3-1)の範囲内にあるべきである。
-i=LmcsMaxBinIdx+1..15の場合、lmcsCW[i]は、0に設定される。
ビットストリーム適合性の要件は、以下の条件が真であることである。
Figure 0007425224000012

変数InputPivot[i]は、i=0..16として、以下のように導出される。
InputPivot[i]=i*OrgCW (102)
変数LmcsPivot[i]は、i=0..16として、変数ScaleCoeff[i]およびInvScaleCoeff[i]は、i=0..15として、以下のように導出される。
LmcsPivot[0]=0;
for(i=0;i<=15;i++){
LmcsPivot[i+1]=LmcsPivot[i]+lmcsCW[i]
ScaleCoeff[i]=(lmcsCW[i]*(1<<11)+(1<<(Log2(OrgCW)-1)))>>(Log2(OrgCW))
if(lmcsCW[i]==0) (103)
InvScaleCoeff[i]=0
else
InvScaleCoeff[i]=OrgCW*(1<<11)/lmcsCW[i]

i=lmcs_min_bin_idx..LmcsMaxBinIdxにおいて、LmcsPivot[i]の値が1<<(BitDepth-5)の倍数ではない場合、(LmcsPivot[i]>>(BitDepth-5))の値は(LmcsPivot[i+1]>>(BitDepth-5)の値と等しくないことが、ビットストリーム準拠の要件である。
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は、以下のように導出される。
lmcsDeltaCrs=(1-2*lmcs_delta_sign_crs_flag)*lmcs_delta_abs_crs (104)
lmcsCW[i]が0に等しくない場合、(lmcsCW[i]+lmcsDeltaCrs)は、(OrgCW>>3)~((OrgCW<<3)-1)の範囲内にあるべきであることが、ビットストリーム準拠の要件である。
変数ChromaScaleCoeff[i]は、i=0…15として、以下のように導出される。
if(lmcsCW[i]==0)
ChromaScaleCoeff[i]=(1<<11)
else
ChromaScaleCoeff[i]=OrgCW*(1<<11)/(lmcsCW[i]+lmcsDeltaCrs)
1に等しいscaling_matrix_for_lfnst_disabled_flagは、LFNSTでコーディングされたブロックにスケーリング行列を適用しないことを規定する。0に等しいscaling_matrix_for_lfnst_disabled_flagは、LFNSTでコーディングされたブロックにスケーリング行列を適用することができることを規定する。
1に等しいscaling_list_chroma_present_flagは、彩度スケーリングリストがscaling_list_data()にあることを規定する。0に等しいscaling_list_chroma_present_flagは、彩度スケーリングリストがscaling_list_data()にないことを規定する。scaling_list_chroma_present_flagは、ChromaArrayTypeが0に等しい場合は0に、ChromaArrayTypeが0でない場合は1に等しいことがビットストリーム準拠の要件である。
1に等しいscaling_list_copy_mode_flag[id]は、スケーリングリストの値が参照スケーリングリストの値と同じであることを規定する。参照スケーリングリストはscaling_list_pred_id_delta[id]で規定される。scaling_list_copy_mode_flag[id]が0に等しい場合、scaling_list_pred_mode_flagが存在することが規定される。
1に等しいscaling_list_pred_mode_flag[id]は、参照スケーリングリストからスケーリングリストの値を予測できることを規定する。scaling_list_pred_id_delta[id]で参照スケーリングリストを規定する。0に等しいscaling_list_pred_mode_flag[id]は、スケーリングリストの値が明示的に信号通知されることを規定する。存在しない場合、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の範囲内にあるべきであり、maxIdDeltaは、idに応じて以下のように導出される。
maxIdDelta=(id<2)?id:((id<8)?(id-2):(id-8)) (106)
変数refIdおよびmatrixSizeは、以下のように導出される。
refId=id-scaling_list_pred_id_delta[id] (107)
matrixSize=(id<2)?2:((id<8)?4:8) (108)
x=0..matrixSize-1、y=0..matrixSize-1の(matrixSize)x(matrixSize)配列ScalingMatrixPred[x][y]および変数ScalingMatrixDCPredは、以下のように導出される。
- 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]に等しく設定される。
idが13より大きい場合、変数ScalingMatrixDC[id-14]の値を導出するために、scaling_list_dc_coef[id-14]が使用される。
ScalingMatrixDCRec[id-14]=(ScalingMatrixDCPred+scaling_list_dc_coef[id-14])&255 (109)
存在しない場合、scaling_list_dc_coef[id-14]の値は0と推論される。scaling_list_dc_coef[id-14]の値は、-128~127の範囲内とする。ScalingMatrixDCRec[id-14]の値は0より大きい。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]は、以下のように導出される。
ScalingMatrixRec[id][x][y]=(ScalingMatrixPred[x][y]+ScalingList[id][k])&255 (110)
with k=0..(matrixSize*matrixSize-1),
x=DiagScanOrder[Log2(matrixSize)][Log2(matrixSize)][k][0],and
y=DiagScanOrder[Log2(matrixSize)][Log2(matrixSize)][k][1]
ScalingMatrixRec|id|x|y|の値は、0より大きいものとする。
3.3 PH構文および意味論
最近のVVC草案テキストにおいて、PH構文および意味論は、以下の通りである。
Figure 0007425224000013
PH RBSPは、PH構文構造、即ち、picture_header_structure()を含む。
Figure 0007425224000014

Figure 0007425224000015

Figure 0007425224000016

Figure 0007425224000017

Figure 0007425224000018

Figure 0007425224000019

PH構文構造は、PH構文構造に関連付けられたコーディングされたピクチャのすべてのスライスに共通の情報を含む。
1に等しいgdr_or_irap_pic_flagは、現在のピクチャがGDRまたはIRAPピクチャであることを規定する。0に等しいgdr_or_irap_pic_flagは、現在のピクチャがGDRまたはIRAPピクチャであってもなくてもよいことを規定する。
1に等しいgdr_pic_flagは、PHに関連付けられたピクチャがGDRピクチャであることを規定する。0に等しいgdr_pic_flagは、PHに関連付けられたピクチャがGDRピクチャでないことを規定する。存在しない場合、gdr_pic_flagの値は0に等しいと推論される。gdr_enabled_flagが0に等しい場合、gdr_pic_flagの値は0に等しいものとする。
0に等しいph_inter_slice_allowed_flagは、ピクチャのすべてのコーディングされたスライスのslice_typeが2であることを規定する。1に等しいph_inter_slice_allowed_flagは、slice_typeが0または1に等しいピクチャに1つ以上のコーディングされたスライスがあってもなくてもよいことを規定する。
0に等しいph_intra_slice_allowed_flagは、ピクチャのすべてのコーディングされたスライスが有するslice_typeは0または1に等しいことを規定する。ph_intra_slice_allowed_flagが1に等しい場合、ピクチャにおいて、2に等しいslice_typeを持つ1つ以上のコーディングされたスライスで存在しても、存在していなくてもよいことを規定する。存在しない場合、ph_intra_slice_allowed_flagの値は1に等しいと推論される。
注1-PH NALユニットを変更することなく、サブピクチャに基づくビットストリームのマージを実行するように意図されたビットストリームの場合、エンコーダは、ph_inter_slice_allowed_flagおよびph_intra_slice_allowed_flagの両方の値を1に等しく設定することが予想される。
1に等しいnon_reference_picture_flagは、PHに関連付けられたピクチャを参照ピクチャとして使用することができないことを規定する。0に等しいnon_reference_picture_flagは、PHに関連付けられたピクチャを参照ピクチャとして使用してもしなくてもよいことを規定する。
ph_pic_parameter_set_idは、使用中のPPSのpps_pic_parameter_set_idの値を規定する。ph_pic_parameter_set_idの値は、0~63の範囲内とする。
PHのTemporalIdの値が、pps_pic_parameter_set_idがph_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の範囲内にあるものとする。
附属書Cに規定されるように、no_output_of_prior_pics_flagは、ビットストリームの最初のピクチャでないCLVSSピクチャのデコーディング後の、DPBにおける前回デコードされたピクチャの出力に影響を及ぼす。
recovery_poc_cntは、デコードされたピクチャの出力順のリカバリポイントを規定する。現在のピクチャがPHに関連付けられたGDRピクチャであり、現在のGDRピクチャのPicOrderCntValにrecovery_poc_cntの値を加えたものであるPicOrderCntValを有するCLVSにおいて、デコーディング順で現在のGDRピクチャに後続するピクチャが存在する場合、このピクチャpicAをリカバリポイントピクチャと呼ぶ。そうでない場合、現在のピクチャのPicOrderCntValにrecovery_poc_cntの値を加えたものよりも大きいPicOrderCntValを有する出力順の第1のピクチャを、リカバリポイントピクチャと呼ぶ。リカバリポイントピクチャは、現在のGDRピクチャにデコーディング順で先行しないものとする。recovery_poc_cntの値は、0~MaxPicOrderCntLsb-1の範囲内にあるものとする。
現在のピクチャがGDRピクチャである場合、変数RpPicOrderCntValは、以下のように導出される。
RpPicOrderCntVal=PicOrderCntVal+recovery_poc_cnt (82)
注2-gdr_enabled_flagが1に等しく、現在のピクチャのPicOrderCntValが関連付けられたGDRピクチャのRpPicOrderCntVal以上である場合、出力順で現在および後続のデコードされたピクチャが、デコーディング順で関連付けられたGDRピクチャに先行する前のIRAPピクチャ(存在する場合)からデコーディング処理を開始することによって生成された対応するピクチャに完全に一致する。
ph_extra_bit[i]は1または0に等しくてもよい。本明細書のバージョンに準拠するデコーダは、ph_extra_bit[i]の値を無視しなければならない。その値は、本明細書のバージョンで特定された特徴に対するデコーダの適合性に影響を与えない。
1に等しいph_poc_msb_present_flagは、構文要素poc_msb_valがPHに存在することを規定する。0に等しいph_poc_msb_present_flagは、構文要素ph_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ビットである。
1に等しいph_alf_enabled_flagは、PHに関連付けられたすべてのスライスに対して適応ループフィルタを有効化し、スライスにおけるY、Cb、またはCr色成分に適用してもよいことを規定する。0に等しいph_alf_enabled_flagは、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以下であるものとする。
0に等しいph_alf_chroma_idcは、適応ループフィルタがCbおよびCr色成分に適用されないことを示す。1に等しいph_alf_chroma_idcは、適応ループフィルタがCb色成分に適用されることを示す。2に等しいph_alf_chroma_idcは、適応ループフィルタがCr色成分に適用されることを示す。3に等しいph_alf_chroma_idcは、適応ループフィルタがCb色成分とCr色成分に適用されることを示す。ph_alf_chroma_idcが存在しない場合、それは0に等しいと推論される。
ph_alf_aps_id_chromaは、PHに関連付けられたスライスの彩度成分が参照するALF APSのadaptation_parameter_set_idを規定する。
aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがph_alf_aps_id_chroma[i]に等しいAPS NALユニットのalf_chroma_filter_signal_flagの値は1に等しいものとする。
aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがph_alf_aps_id_chroma[i]であるAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
1に等しいph_cc_alf_cb_enabled_flagは、Cb色成分のためのクロスコンポーネントフィルタがPHに関連付けられたすべてのスライスに対して有効化され、スライスにおけるCb色成分に適用してもよいことを規定する。0に等しいph_cc_alf_cb_enabled_flagは、Cb色成分のためのクロスコンポーネントフィルタがPHに関連付けられた1つ以上またはすべてのスライスに対して無効化されてもよいことを規定する。存在しない場合、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以下であるものとする。
1に等しいph_cc_alf_cr_enabled_flagは、Cb色成分のためのクロスコンポーネントフィルタがPHに関連付けられたすべてのスライスに対して有効化され、スライスにおけるCr色成分に適用してもよいことを規定する。0に等しいph_cc_alf_cr_enabled_flagは、Cr色成分のためのクロスコンポーネントフィルタがPHに関連付けられた1つ以上またはすべてのスライスに対して無効化されてもよいことを規定する。存在しない場合、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以下であるものとする。
1に等しいph_lmcs_enabled_flagは、PHに関連付けられたすべてのスライスに対して彩度スケーリングを伴う輝度マッピングが有効化されることを規定する。0に等しいph_lmcs_enabled_flagは、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以下であるものとする。
1に等しいph_chroma_residual_scale_flagは、PHに関連付けられたすべてのスライスに対して彩度残差スケーリングが有効化されることを規定する。0に等しいph_chroma_residual_scale_flagは、PHに関連付けられた1つ以上、またはすべてのスライスに対して彩度残差スケーリングが無効化されることを規定する。ph_chroma_residual_scale_flagが存在しない場合、これは0に等しいと推論される。
1に等しいph_scaling_list_present_flagは、参照スケーリングリストAPSに含まれるスケーリングリストデータに基づいて、PHに関連付けられたスライスに使用されるスケーリングリストデータを導出することを規定する。0に等しいph_scaling_list_present_flagは、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以下であるものとする。
1に等しいph_virtual_boundaries_present_flagは、PHで仮想境界の情報を信号通知することを規定する。0に等しいph_virtual_boundaries_present_flagは、PHで仮想境界の情報を信号通知しないことを規定する。PHにおいて信号通知される仮想境界が1つ以上ある場合、ピクチャにおいて、仮想境界を跨ぐインループフィルタリング動作は無効化される。インループフィルタリング動作は、デブロッキングフィルタ、サンプル適応オフセットフィルタ、および適応ループフィルタ動作を含む。存在しない場合、ph_virtual_boundaries_present_flagの値は0と推論される。
subpic_info_present_flagが1に等しい場合は、ph_virtual_boundaries_present_flagの値が0に等しいものとすることが、ビットストリーム適合性の要件である。
変数VirtualBoundariesPresentFlagは、以下のように導出される。
VirtualBoundariesPresentFlag=0
if(sps_virtual_boundaries_enabled_flag)
VirtualBoundariesPresentFlag=sps_virtual_boundaries_present_flag||
ph_virtual_boundaries_present_flag (83)
ph_num_ver_virtual_boundariesは、PHに存在するph_virtual_boundaries_pos_x[i]構文要素の数を規定する。ph_num_ver_virtual_boundariesが存在しない場合、0に等しいと推論される。
変数NumVerVirtualBoundariesは、以下のように導出される。
NumVerVirtualBoundaries=0
if(sps_virtual_boundaries_enabled_flag)
NumVerVirtualBoundaries=sps_virtual_boundaries_present_flag?
sps_num_ver_virtual_boundaries:ph_num_ver_virtual_boundaries (84)
ph_virtual_boundaries_pos_x[i]は、i番目の垂直仮想境界の位置を、輝度サンプルを8で割った単位で規定する。ph_virtual_boundaries_pos_x[i]の値は、1からCeil(pic_width_in_luma_samples÷8)-1の範囲内にあるものとする。
iが0からNumVerVirtualBoundaries-1までのリストVirtualBoundariesPosX[i]を、輝度サンプル単位で、垂直仮想境界の位置を規定することにより、以下のように導出する。
for(i=0;i<NumVerVirtualBoundaries;i++)
VirtualBoundariesPosX[i]=(sps_virtual_boundaries_present_flag?
sps_virtual_boundaries_pos_x[i]:ph_virtual_boundaries_pos_x[i])*8 (85)
任意の2つの垂直仮想境界間の距離は、CtbSizeY輝度サンプル以上であるものとする。
ph_num_hor_virtual_boundariesは、PHに存在するph_virtual_boundaries_pos_y[i]構文要素の数を規定する。ph_num_hor_virtual_boundariesが存在しない場合、0に等しいと推論される。
パラメータNumHorVirtualBoundariesは、以下のように導出される。
NumHorVirtualBoundaries=0
if(sps_virtual_boundaries_enabled_flag)
NumHorVirtualBoundaries=sps_virtual_boundaries_present_flag?
sps_num_hor_virtual_boundaries:ph_num_hor_virtual_boundaries (86)
sps_virtual_boundaries_enabled_flagが1に等しく、ph_virtual_boundaries_present_flagが1に等しい場合は、ph_num_ver_virtual_boundariesとph_num_hor_virtual_boundariesの合計は、0より大きいものとする。
ph_virtual_boundaries_pos_y[i]は、i番目の水平方向の仮想境界の位置を、輝度サンプルを8で割った単位で規定する。ph_virtual_boundaries_pos_y[i]の値は、1からCeil(pic_height_in_luma_samples÷8)-1の範囲内にあるものとする。
iが0からNumHorVirtualBoundaries-1までのリストVirtualBoundariesPosY[i]を、輝度サンプル単位で、水平仮想境界の位置を規定することにより、以下のように導出する。
for(i=0;i<NumHorVirtualBoundaries;i++)
VirtualBoundariesPosY[i]=(sps_virtual_boundaries_present_flag?
sps_virtual_boundaries_pos_y[i]:ph_virtual_boundaries_pos_y[i])*8 (87)
任意の2つの水平仮想境界間の距離は、CtbSizeY輝度サンプル以上であるものとする。
pic_output_flagは、附属書Cに規定されるように、デコードされたピクチャの出力および削除処理に影響を及ぼす。pic_output_flagが存在しない場合、1に等しいと推論される。
1に等しいpartition_constraints_override_flagは、パーティション制約パラメータがPHに存在することを規定する。0に等しいpartition_constraints_override_flagは、パーティション制約パラメータがPHに存在しないことを規定する。存在しない場合、partition_constraints_override_flagの値は0に等しいと推論される。
ph_log2_diff_min_qt_min_cb_intra_slice_lumaは、CTUの4分木分割に起因する輝度リーフブロックの輝度サンプルの最小サイズの底2対数と、PHに関連付けられたslice_typeが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_lumaに等しいと推論される。
ph_max_mtt_hierarchy_depth_intra_slice_lumaは、PHに関連付けられたslice_typeが2(I)であるスライスにおける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対数と、PHに関連付けられた2(I)であるslice_typeを有するスライスの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対数と、PHに関連付けられた2(I)であるslice_typeを有するスライスの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は、DUAL_TREE_CHROMAに等しいtreeTypeを持つ彩度CTUの4分木分割による彩度リーフブロックの輝度サンプルにおける最小サイズの底2対数と、PHに関連付けられたslice_typeが2(I)のスライスにおけるDUAL_TREE_CHROMAに等しいtreeTypeを持つ彩度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_chromaに等しいと推論される。
ph_max_mtt_hierarchy_depth_intra_slice_chromaは、PHに関連付けられた2(I)に等しいslice_typeを有するスライスにおけるDUAL_TREE_CHROMAに等しいtreeTypeを有する彩度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対数と、PHに関連付けられた2(I)に等しいslice_typeを有するスライスにおけるDUAL_TREE_CHROMAと等しいtreeTypeを有する彩度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対数と、PHに関連付けられた2(I)に等しいslice_typeを有するスライスにおけるDUAL_TREE_CHROMAと等しいtreeTypeを有する彩度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_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対数と、PHに関連付けられたslice_typeが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は、PHに関連付けられたslice_typeが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対数と、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対数と、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は以下のように導出される。
if(sps_affine_enabled_flag)
MaxNumSubblockMergeCand=5-five_minus_max_num_subblock_merge_cand (88)
else
MaxNumSubblockMergeCand=sps_sbtmvp_enabled_flag&&ph_temporal_mvp_enable_flag
MaxNumSubblockMergeCandの値は、1~5の範囲内とする。
1に等しいph_collocated_from_I0_flagは、時間的動きベクトル予測に使用される同一位置に配置されたピクチャが参照ピクチャリスト0から導出されることを規定する。0に等しいph_collocated_from_I0_flagは、時間的動きベクトル予測に使用される同一位置に配置されたピクチャが参照ピクチャリスト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_I1_zero_flagは、mvd_coding(x0,y0,1)構文構造が構文解析されず、MvdL1[x0][y0][compIdx]およびMvdCpL1[x0][y0][cpIdx][compIdx]がcompIdx=0..1およびcpIdx=0..2の場合、0に設定されることを示す。0に等しいmvd_l1_zero_flagは、mvd_coding(x0,y0,1)構文構造が構文解析されたことを示す。
1に等しいph_fpel_mmvd_enabled_flagは、動きベクトル差を有するマージモードは、PHに関連付けられたスライスの整数サンプル精度を使用することを規定する。0に等しいph_fpel_mmvd_enabled_flagは、動きベクトル差を有するマージモードは、PHに関連付けられたスライスの分数サンプル精度を使用することを規定する。存在しない場合、ph_fpel_mmvd_enabled_flagの値は0であると推論される。
1に等しいph_disable_bdof_flagは、PHに関連付けられたスライスにおいて、双方向オプティカルフローインター予測に基づくインター双方向予測が無効化されることを規定する。0に等しいph_disable_bdof_flagは、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に等しいと推論される。
1に等しいph_disable_dmvr_flagは、PHに関連付けられたスライスにおいて、デコーダ動きベクトル微調整に基づくインター双方向予測が無効化されることを規定する。0に等しいph_disable_dmvr_flagは、PHに関連付けられたスライスにおいて、デコーダ動きベクトル微調整に基づくインター双方向予測が有効化してもしなくてもよいことを規定する。
ph_disable_dmvr_flagが存在しない場合、以下が適用される。
- sps_dmvr_enabled_flagが1に等しい場合は、ph_disable_dmvr_flagの値は0に等しいと推論される。
- そうでない場合(sps_dmvr_enable_flagが0に等しい場合)、ph_disable_dmvr_flagの値は1に等しいと推論される。
1に等しいph_disable_prof_flagは、PHに関連付けられたスライスにおいて、オプティカルフローによる予測微調整が無効化されることを規定する。0に等しいph_disable_prof_flagは、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の値によって修正されるまで、ピクチャにおけるコーディングブロックに使用されるQpの初期値を規定する。
qp_delta_info_in_ph_flagが1に等しい場合は、ピクチャのすべてのスライスに対するQp量子化パラメータであるSliceQpの最初の値は、以下のように導出される。
SliceQp=26+init_qp_minus26 + ph_qp_delta (89)
SliceQpの値は、-QpBdOffset~63の範囲内である。
ph_joint_cbcr_sign_flagは、tu_joint_cbcr_residual_flag[x0][y0]が1に等しい変換ユニットにおいて、両方の彩度成分の同一位置に配置された残差サンプルは、符号が逆になるかどうかを規定する。1つの変換ユニットに対してtu_joint_cbcr_residual_flag[x0][y0]が1に等しいとき、0に等しいph_joint_cbcr_sign_flagは、Cr(またはCb)成分の各残差サンプルの符号が、同一位置に配置されたCb(またはCr)残差サンプルの符号と同一であることを規定し、1に等しいph_joint_cbcr_sign_flagは、Cr(またはCb)成分の各残差サンプルの符号は、同一位置に配置されたCb(またはCr)の残差サンプルの逆の符号で表されることを規定する。
1に等しいph_sao_luma_enabled_flagは、PHに関連付けられたすべてのスライスの中の輝度成分に対してSAOが有効化されることを規定し、0に等しいph_sao_luma_enabled_flagは、輝度成分のSAOがPHに関連付けられた1つ以上またはすべてのスライスに対して無効化される場合もあることを規定する。ph_sao_luma_enabled_flagが存在しない場合、0に等しいと推論される。
1に等しいph_sao_chroma_enabled_flagは、PHに関連付けられたすべてのスライスの中の彩度成分に対してSAOが有効化されることを規定し、0に等しいph_sao_chroma_enabled_flagは、輝度成分のSAOがPHに関連付けられた1つ以上またはすべてのスライスに対して無効化される場合もあることを規定する。ph_sao_chroma_enabled_flagが存在しない場合、0に等しいと推論される。
0に等しいph_dep_quant_enabled_flagは、現在のピクチャに対して従属量子化が無効化されることを規定する。1に等しいph_dep_quant_enabled_flagは、現在のピクチャに対して従属量子化が有効化されることを規定する。ph_dep_quant_enabled_flagが存在しない場合、0に等しいと推論される。
0に等しいpic_sign_data_hiding_enabled_flagは、現在のピクチャに対し、符号ビットの非表示が無効化されることを規定する。1に等しいpic_sign_data_hiding_enabled_flagは、現在のピクチャに対し、符号ビットの非表示が有効化されることを規定する。pic_sign_data_hiding_enabled_flagが存在しない場合、0に等しいと推論される。
1に等しいph_deblocking_filter_override_flagは、PHにデブロッキングパラメータが存在することを規定する。0に等しいph_deblocking_filter_override_flagは、デブロッキングパラメータがPHに存在しないことを規定する。存在しない場合、ph_deblocking_filter_override_flagの値は0に等しいと推論される。
1に等しいph_deblocking_filter_disabled_flagは、PHに関連付けられたスライスに対してデブロッキングフィルタの演算を適用しないことを規定する。0に等しいph_deblocking_filter_disabled_flagは、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の値を無視しなければならない。その値は、本明細書のバージョンで特定された特徴に対するデコーダの適合性に影響を与えない。
3.4 SH構文および意味論
最近のVVC草案テキストにおいて、SH構文および意味論は、以下の通りである。
Figure 0007425224000020

Figure 0007425224000021

Figure 0007425224000022

Figure 0007425224000023

Cu_qp_delta_absを含むコーディングユニットの輝度量子化パラメータとその予測値の差を規定する変数CuQpDeltaValは、0に等しく設定される。cu_chroma_qp_offset_flagを含むコーディングユニットの量子化パラメータQp’Cb,Qp’CrおよびQp’CbCrのそれぞれの値を判定する際に用いる値を規定する変数CuQpOffsetCb,CuQpOffsetCrおよびCuQpOffsetCbCrは、すべて0に等しく設定される。
picture_header_in_slice_header_flagが1の場合、スライスヘッダにPH構文構造が存在する。picture_header_in_slice_header_flagが0の場合、スライスヘッダにPH構文構造が存在しない。
CLVS内のすべてのコーディングされたスライスにおいて、picture_header_in_slice_header_flagの値が同じであるものとすることが、ビットストリーム適合性の要件である。
1つのコーディングされたスライスに対してpicture_header_in_slice_header_flagが1に等しい場合は、PH_NUTであるnal_unit_typeを有する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が1で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がデコードされた場合、その左側境界全体および最上の境界全体が1つのピクチャの境界、または、以前にデコードされたCTUの境界を含むものでなければならない。
sh_extra_bit[i]は、1または0に等しくてもよい。本明細書のバージョンに準拠するデコーダは、sh_extra_bit[i]の値を無視しなければならない。その値は、本明細書のバージョンで特定された特徴に対するデコーダの適合性に影響を与えない。
num_tiles_in_slice_minus1+1(存在する場合)は、スライスにおけるタイルの数を規定する。num_tiles_in_slice_minus1の値は、0からNumTilesInPic-1までの範囲内にあるべきである。
現在のスライスにおけるCTUの数を規定する変数NumCtusInCurrSliceと、スライス内のi番目のCTBのピクチャラスタスキャンアドレスを規定しiが0からNumCTUsInCurrSlice-1までの範囲であるリストCtbAddrInCurrSlice[i]とは、以下のように導出される。
if(rect_slice_flag){
picLevelSliceIdx=slice_address
for(j=0;j<CurrSubpicIdx;j++)
picLevelSliceIdx+=NumSlicesInSubpic[j]
NumCtusInCurrSlice=NumCtusInSlice[picLevelSliceIdx]
for(i=0;i<NumCtusInCurrSlice;i++)
CtbAddrInCurrSlice[i]=CtbAddrInSlice[picLevelSliceIdx][i] (117)
}else{
NumCtusInCurrSlice=0
for(tileIdx=slice_address;tileIdx<=slice_address+num_tiles_in_slice_minus1;tileIdx++){
tileX=tileIdx%NumTileColumns
tileY=tileIdx/NumTileColumns
for(ctbY=tileRowBd[tileY];ctbY<tileRowBd[tileY+1];ctbY++){
for(ctbX=tileColBd[tileX];ctbX<tileColBd[tileX+1];ctbX++){
CtbAddrInCurrSlice[NumCtusInCurrSlice]=ctbY*PicWidthInCtb+ctbX
NumCtusInCurrSlice++




変数SubpicLeftBoundaryPos、SubpicTopBoundaryPos、SubpicRightBoundaryPos、およびSubpicBotBoundaryPosは、以下のように導出される。
if(subpic_treated_as_pic_flag[CurrSubpicIdx]){
SubpicLeftBoundaryPos=subpic_ctu_top_left_x[CurrSubpicIdx]*CtbSizeY
SubpicRightBoundaryPos=Min(pic_width_max_in_luma_samples-1,
(subpic_ctu_top_left_x[CurrSubpicIdx]+
subpic_width_minus1[CurrSubpicIdx]+1)*CtbSizeY-1)
SubpicTopBoundaryPos=subpic_ctu_top_left_y[CurrSubpicIdx]*CtbSizeY (118)
SubpicBotBoundaryPos=Min(pic_height_max_in_luma_samples-1,
(subpic_ctu_top_left_y[CurrSubpicIdx]+
subpic_height_minus1[CurrSubpicIdx]+1)*CtbSizeY-1)

slice_typeは、表9に従って、スライスのコーディングするタイプを規定する。
表9 - slice_typeへの名前の関連付け
Figure 0007425224000024

存在しない場合、slice_typeの値は2に等しいと推論される。
ph_intra_slice_allowed_flagが0に等しい場合、slice_typeの値は0または1に等しいものとする。nal_unit_typeがIDR_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)に等しい場合、以下が適用される。
MinQtLog2SizeY=MinCbLog2SizeY+ph_log2_diff_min_qt_min_cb_intra_slice_luma (119)
MinQtLog2SizeC=MinCbLog2SizeY+ph_log2_diff_min_qt_min_cb_intra_slice_chroma (120)
MaxBtSizeY=1<<(MinQtLog2SizeY+ph_log2_diff_max_bt_min_qt_intra_slice_luma) (121)
MaxBtSizeC=1<<(MinQtLog2SizeC+ph_log2_diff_max_bt_min_qt_intra_slice_chroma) (122)
MaxTtSizeY=1<<(MinQtLog2SizeY+ph_log2_diff_max_tt_min_qt_intra_slice_luma) (123)
MaxTtSizeC=1<<(MinQtLog2SizeC+ph_log2_diff_max_tt_min_qt_intra_slice_chroma) (124)
MaxMttDepthY=ph_max_mtt_hierarchy_depth_intra_slice_luma(125)
MaxMttDepthC=ph_max_mtt_hierarchy_depth_intra_slice_chroma (126)
CuQpDeltaSubdiv=ph_cu_qp_delta_subdiv_intra_slice (127)
CuChromaQpOffsetSubdiv=ph_cu_chroma_qp_offset_subdiv_intra_slice (128)
- そうでない場合(slice_typeが0(B)または1(P)に等しい)、以下が適用される。
MinQtLog2SizeY=MinCbLog2SizeY+ph_log2_diff_min_qt_min_cb_inter_slice (129)
MinQtLog2SizeC=MinCbLog2SizeY+ph_log2_diff_min_qt_min_cb_inter_slice (130)
MaxBtSizeY=1<<(MinQtLog2SizeY+ph_log2_diff_max_bt_min_qt_inter_slice) (131)
MaxBtSizeC=1<<(MinQtLog2SizeC+ph_log2_diff_max_bt_min_qt_inter_slice) (132)
MaxTtSizeY=1<<(MinQtLog2SizeY+ph_log2_diff_max_tt_min_qt_inter_slice) (133)
MaxTtSizeC=1<<(MinQtLog2SizeC+ph_log2_diff_max_tt_min_qt_inter_slice) (134)
MaxMttDepthY=ph_max_mtt_hierarchy_depth_inter_slice (135)
MaxMttDepthC=ph_max_mtt_hierarchy_depth_inter_slice (136)
CuQpDeltaSubdiv=ph_cu_qp_delta_subdiv_inter_slice (137)
CuChromaQpOffsetSubdiv=ph_cu_chroma_qp_offset_subdiv_inter_slice (138)
- 以下が適用される。:
MinQtSizeY=1<<MinQtLog2SizeY (139)
MinQtSizeC=1<<MinQtLog2SizeC (140)
MinBtSizeY=1<<MinCbLog2SizeY (141)
MinTtSizeY=1<<MinCbLog2SizeY (142)
1に等しいslice_alf_enabled_flagは、適応ループフィルタが有効化され、かつ1つのスライスにおけるY、Cb、またはCr色成分に適用され得ることを規定する。0に等しいslice_alf_enabled_flagは、スライス内のすべての色成分が無効化されることを規定する。存在しない場合、slice_alf_enabled_flagの値はph_alf_enabled_flagと推論される。
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に等しいものとする。
0に等しいslice_alf_chroma_idcは、適応ループフィルタがCbおよびCr色成分に適用されないことを示す。1に等しいslice_alf_chroma_idcは、適応ループフィルタがCb色成分に適用されることを示す。2に等しいslice_alf_chroma_idcは、適応ループフィルタがCr色成分に適用されることを示す。3に等しいslice_alf_chroma_idcは、適応ループフィルタがCb色成分とCr色成分に適用されることを示す。slice_alf_chroma_idcが存在しない場合、それはph_alf_chroma_idcに等しいと推論される。
slice_alf_aps_id_chromaは、スライスの彩度成分が参照する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[i]に等しいAPS NALユニットのalf_chroma_filter_signal_flagの値は1に等しいものとする。
0に等しいslice_cc_alf_cb_enabled_flagは、クロスコンポーネントフィルタがCb色成分に適用されていないことを規定する。1に等しいslice_cc_alf_cb_enabled_flagは、クロスコンポーネントフィルタが有効であり、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に等しいものとする。
0に等しいslice_cc_alf_cr_enabled_flagは、クロスコンポーネントフィルタがCr色成分に適用されていないことを規定する。1に等しいslice_cc_alf_cb_enabled_flagは、クロスコンポーネント適応ループフィルタが有効であり、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に等しいものとする。
colour_plane_idは、separate_colour_plane_flagが1に等しい場合は、現在のスライスに関連付けられた色平面を識別する。colour_plane_idの値は、0~2の範囲内にあるものとし、colour_plane_idの値0、1、2は、それぞれY、Cb、Cr平面に対応する。colour_plane_idの値3は、ITU-T|ISO/IECで将来使用されるように予約されている。
注1-1つのピクチャの異なる色平面のデコーディング処理間には依存性がない。
1に等しいnum_idx_active_override_flagは、構文要素num_ref_idx_active_minus1[0]がPスライスおよびBスライスに存在し、構文要素num_ref_idx_active_minus1[1]がBスライスに存在することを規定する。0に等しいnum_ref_idx_active_override_flagは、構文要素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までの範囲内にあるべきである。
iが0または1に等しい場合、現在のスライスが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[0]が存在しない場合、num_ref_idx_active_minus1[0]が0ではないと推論する。
変数NumRefIdxActive[i]は、以下のように導出される。
for(i=0;i<2;i++){
if(slice_type==B||(slice_type==P&&i==0)){
if(num_ref_idx_active_override_flag)
NumRefIdxActive[i]=num_ref_idx_active_minus1[i]+1 (143)
else{
if(num_ref_entries[i][RplsIdx[i]]>=num_ref_idx_default_active_minus1[i]+1)
NumRefIdxActive[i]=num_ref_idx_default_active_minus1[i]+1
else
NumRefIdxActive[i]=num_ref_entries[i][RplsIdx[i]]

}else/*slice_type==I||(slice_type==P&&i==1)*/
NumRefIdxActive[i]=0

NumRefIdxActive[i]-1の値は、スライスをデコードするために使用され得る参照ピクチャリストiの最大参照インデックスを規定する。NumRefIdxActive[i]の値が0に等しい場合、参照ピクチャリストiの参照インデックスを使用せずにスライスをデコードすることができる。
現在のスライスがPスライスであるとき、NumRefIdxActive[0]の値は0より大きいものとする。
現在のスライスがBスライスである場合、NumRefIdxActive[0]およびNumRefIdxActive[1]の両方が0よりも大きいものとする。
cabac_init_flagは、コンテキスト変数の初期化処理で使用される初期化テーブルを決定する方法を規定する。cabac_init_flagが存在しない場合、0に等しいと推論される。
1に等しいslice_collocated_from_I0_flagは、時間的動きベクトル予測に使用される同一位置に配置されたピクチャが参照ピクチャリスト0から導出されることを規定する。0に等しいslice_collocated_from_I0_flagは、時間的動きベクトル予測に使用される同一位置に配置されたピクチャが参照ピクチャリスト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は、スライスにおけるコーディングブロックに使用されるQpの最初の値を、コーディングユニットレイヤにおけるCuQpDeltaValの値で修正されるまで規定する。
qp_delta_info_in_ph_flagが0に等しい場合、スライスのQp量子化パラメータSliceQpの初期値は、以下のように導出される。
SliceQp=26+init_qp_minus26+slice_qp_delta (144)
SliceQpの値は、-QpBdOffset~63の範囲内である。
以下の条件のいずれかが真であるとき、
- 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の値に加える差分を規定する。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以下とする。
1に等しいcu_chroma_qp_offset_enabled_flagは、cu_chroma_qp_offset_flagが変換ユニットおよびパレットコーディング構文に存在し得ることを規定する。0に等しいcu_chroma_qp_offset_enabled_flagは、cu_chroma_qp_offset_flagが変換ユニットまたはパレットコーディング構文に存在しないことを規定する。存在しない場合、cu_chroma_qp_offset_enabled_flagの値は0に等しいと推論される。
1に等しいslice_sao_luma_flagは、現在のスライスにおける輝度成分に対してSAOが有効化されることを規定する。0に等しいslice_sao_luma_flagは、現在のスライスにおける輝度成分に対してSAOが無効化されることを規定する。slice_sao_luma_flagが存在しない場合、ph_sao_luma_enabled_flagに等しいと推論される。
1に等しいslice_sao_chroma_flagは、現在のスライスにおける彩度成分に対してSAOが有効化されることを規定する。0に等しいslice_sao_chroma_flagは、現在のスライスにおける彩度成分に対してSAOが無効化されることを規定する。slice_sao_chroma_flagが存在しない場合、ph_sao_chroma_enabled_flagに等しいと推論される。
1に等しいslice_deblocking_filter_override_flagは、スライスヘッダにデブロッキングパラメータが存在することを規定する。0に等しいslice_deblocking_filter_override_flagは、スライスヘッダにデブロッキングパラメータが存在しないことを規定する。存在しない場合、slice_deblocking_filter_override_flagの値はph_deblocking_filter_override_flagに等しいと推論される。
1に等しいslice_deblocking_filter_disabled_flagは、現在のスライスに対してデブロッキングフィルタの演算が適用されないことを規定する。0に等しいslice_deblocking_filter_disabled_flagは、現在のスライスに対してデブロッキングフィルタの演算が適用されることを規定する。slice_deblocking_filter_disabled_flagが存在しない場合、ph_deblocking_filter_disabled_flagに等しいと推論される。
slice_beta_offset_div2およびslice_tc_offset_div2は、現在のスライスの輝度成分に適用されるβおよびtCのデブロッキングパラメータオフセット(2で割られた)を規定する。slice_cr_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に等しいと推論される。
1に等しいslice_ts_residual_coding_disabled_flagは、residual_coding()構文構造を使用して、現在のスライスのための変換スキップブロックの残差サンプルを構文解析することを規定する。0に等しいslice_ts_residual_coding_disabled_flagは、residual_ts_coding()構文構造を使用して、現在のスライスのための変換スキップブロックの残差サンプルを構文解析することを規定する。slice_ts_residual_coding_disabled_flaggが存在しない場合、これは0に等しいと推論される。
1に等しいslice_lmcs_enabled_flagは、現在のスライスに対して、彩度スケーリングを伴う輝度マップピンを有効にすることを規定する。0に等しいslice_lmcs_enabled_flagは、現在のスライスに対して、彩度スケーリングを伴う輝度マッピングが有効でないことを規定する。slice_lmcs_enabled_flagが存在しない場合、0に等しいと推論される。
1に等しいslice_scaling_list_present_flagは、SCALING_APSに等しいaps_params_typeとph_scaling_list_aps_idに等しいadaptation_parameter_set_idを有する参照スケーリングリストAPSに含まれるスケーリングリストデータに基づいて、現在のスライスに使用されるスケーリングリストデータを導出することを規定する。0に等しいslice_scaling_list_present_flagは、現在のピクチャに対して使用したスケーリングリストデータが、7.4.3.21項に規定された、導出されたデフォルトのスケーリングリストデータであることを規定する。存在しない場合、slice_scaling_list_present_flagの値は0と推論される。
現在のスライスにおけるエントリ点の数を規定する変数NumEntryPointsは、以下のように導出される。
NumEntryPoints=0
for(i=1;i<NumCtusInCurrSlice;i++){
ctbAddrX=CtbAddrInCurrSlice[i]%PicWidthInCtbsY
ctbAddrY=CtbAddrInCurrSlice[i]/PicWidthInCtbsY
(145) prevCtbAddrX=CtbAddrInCurrSlice[i-1]%PicWidthInCtbsY
prevCtbAddrY=CtbAddrInCurrSlice[i-1]/PicWidthInCtbsY
if(CtbToTileRowBd[ctbAddrY]!=CtbToTileRowBd[prevCtbAddrY]||
CtbToTileColBd[ctbAddrX]!=CtbToTileColBd[prevCtbAddrX]||
(ctbAddrY!=prevCtbAddrY&&sps_wpp_entry_point_offsets_present_flag))
NumEntryPoints++

offset_len_minus1+1は、entry_point_offset_minus1[i]構文要素の長さをビット単位で規定する。offset_len_minus1の値は、0~31の範囲内にあるものとする。
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の範囲(両端を含む))は、コーディングされたスライスデータのfirstByte[k]からlastByte[k]まで(両端を含む)のバイトで構成され、firstByte[k]およびlastByte[k]は以下で定義される。
Figure 0007425224000025

lastByte[k]=firstByte[k]+entry_point_offset_minus1[k] (147)
最後のサブセット(サブセットインデックスがNumEntryPointsに等しい)は、コーディングされたスライスデータの残りのバイトで構成される。
sps_entropy_coding_sync_enabled_flagが0に等しく、スライスが1つ以上の完全なタイルを含む場合、各サブセットは、同じタイル内にあるスライス内のすべてのCTUのすべてのコーディングされたビットからなるものとし、サブセットの数(即ち、NumEntryPointsの値+1)は、スライス内のタイルの数と等しいものとする。
sps_entropy_coding_sync_enabled_flagが0に等しく、かつスライスが単一のタイルからのCTU行のサブセットを含む場合、NumEntryPointsは0に等しく、かつサブセットの数は1に等しいものとする。サブセットは、スライスにおけるすべてのCTUのすべてのコーディングされたビットで構成されるものとする。
sps_entropy_coding_sync_enabled_flagが1に等しい場合は、kが0からNumEntryPointsまでの範囲内にある各サブセットは、1つのタイル内の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]は、任意の値を有していてもよい。本明細書のバージョンに準拠するデコーダは、すべてのslice_header_extension_data_byte[i]構文要素の値を無視しなければならない。その値は、本明細書のバージョンで特定された特徴に対するデコーダの適合性に影響を与えない。
3.5 彩度QPマッピングテーブル
JVET-Q2001-vCの7.3.2.3において、SPSは以下のように彩度 QP テーブルと呼ばれる構造を含む。
Figure 0007425224000026

これらは、以下の意味論とQPテーブル導出を有する。
0に等しいsps_joint_cbcr_enabled_flagは、彩度残差の共同コーディングが無効化されることを規定する。1に等しいsps_joint_cbcr_enabled_flagは、彩度残差の共同コーディングが有効化されることを規定する。存在しない場合、sps_joint_cbcr_enabled_flagの値は0に等しいと推論される。
1に等しいsame_qp_table_for_chromaは、1つの彩度QPマッピングテーブルのみが信号通知され、このテーブルが、CbおよびCr残差に適用され、かつsps_joint_cbcr_enabled_flagが1に等しい場合に共同Cb-Cr残差にも適用されることを規定する。0に等しいsame_qp_table_for_chromaは、sps_joint_cbcr_enabled_flagが1に等しい場合、彩度QPマッピングテーブル、CbとCrの2つと、共同Cb-Crに対して追加の1つとが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][0]=qp_table_start_minus26[i]+26
qpOutVal[i][0]=qpInVal[i][0]
for(j=0;j<=num_points_in_qp_table_minus1[i];j++){
qpInVal[i][j+1]=qpInVal[i][j]+delta_qp_in_val_minus1[i][j]+1
qpOutVal[i][j+1]=qpOutVal[i][j]+(delta_qp_in_val_minus1[i][j]^delta_qp_diff_val[i][j])

ChromaQpTable[i][qpInVal[i][0]]=qpOutVal[i][0]
for(k=qpInVal[i][0]-1;k>=-QpBdOffset;k--)
ChromaQpTable[i][k]=Clip3(-QpBdOffset,63,ChromaQpTable[i][k+1]-1)
for(j=0;j<=num_points_in_qp_table_minus1[i];j++){
sh=(delta_qp_in_val_minus1[i][j]+1)>>1
for(k=qpInVal[i][j]+1,m=1;k<=qpInval[i][j+1];k++,m++)
ChromaQpTable[i][k]=ChromaQpTable[i][qpInVal[i][j]]+
((qpOutVal[i][j+1]-qpOutVal[i][j])*m+sh)/(delta_qp_in_val_minus1[i][j]+1)

for(k=qpInVal[i][num_points_in_qp_table_minus1[i]+1]+1;k<=63;k++)
ChromaQpTable[i][k]=Clip3(-QpBdOffset,63,ChromaQpTable[i][k-1]+1)
same_qp_table_for_chromaが1に等しい場合、ChromaQpTable[1][k]およびChromaQpTable[2][k]は、-QpBdOffsetから63までの範囲内にあるkについて、ChromaQpTable[0][k]に等しく設定される。
qpInVal[i][j]、qpOutVal[i][j]の値は、-QpBdOffset~63の範囲内にあり、iが0~numQpTables-1の範囲内にあり、jが0~num_points_in_qp_table_minus1[i]+1の範囲内にあるものとすることが、ビットストリーム適合性の要件である。
上記説明において、QpBdOffsetは以下のように導出される。
bit_depth_minus8は、輝度および彩度配列BitDepthのサンプルのビット深度および彩度量子化パラメータレンジオフセットQpBdOffsetの値を以下のように規定する。
BitDepth=8+bit_depth_minus8
QpBdOffset=6*bit_depth_minus8
bit_depth_minus8は、0から8までの範囲内とする。
4. 開示される技術的解決策によって解決される技術課題
APS、デブロッキング、サブピクチャ、QPデルタに対する最新のVVCドラフト仕様の既存設計には、以下のような問題がある。
1)現在、APS構文要素scaling_list_chroma_present_flagの値は、SPS構文要素chroma_format_idcおよびseparate_colour_plane_flagから導出されたChromaArrayTypeに基づいて制約され、以下のように表現される。ChromaArrayTypeが0に等しい場合、scaling_list_chroma_present_flagは0に等しく、ChromaArrayTypeが0に等しくない場合は、1に等しい。
APSの構文要素の意味論におけるこのような制約は、APSのSPSに対する意味論的な依存性をもたらすが、これはAPS構文にPPS IDまたはSPS IDがないために発生すべきではなく、APSは異なるSPSを参照するピクチャ(またはピクチャのスライス)に適用され、ChromaArrayTypeの異なる値に関連付けられ得る。
a. さらに、いくつかのALF/CC-ALF APS構文要素の意味論にも同様のAPS-SPSの意味論依存が存在し、以下のように表現される。alf_chroma_filter_signal_flag、alf_cc_cb_filter_signal_flag、およびalf_cc_cr_filter_signal_flagは、ChromaArrayTypeが0に等しい場合、0に等しい。
b. 現在、LMCS APSが信号通知されるとき、ChromaArrayTypeが0に等しい(すなわち、CLVSに彩度成分が存在しない)かどうかに関わらず、彩度残差スケーリング関連構文要素は、常にLMCS APS構文構造で信号通知される。その結果、彩度関連構文要素を不必要に信号通知することになる。
2) 最近のVVCテキストにおけるデブロッキング制御メカニズムは、非常に複雑で、簡単でなく、理解しにくく、その結果、誤りを生じやすいとされている。以下に、観察されたいくつかの例示的な問題を示す。
a. 現在のテキストによれば、PPSにおいてデブロッキングフィルタが無効にされても、PHまたはSHにおいてデブロッキングフィルタが有効とされ得る。例えば、最初にpps_deblocking_filter_disabled_flagが1に等しいと信号通知され、deblocking_filter_override_enabled_flagも1に等しいと信号通知されれば、PPSでデブロッキングフィルタが無効であることを示すとともに、デブロッキングフィルタ有効/無効制御をPHまたはSHでオーバーライドできることになる。次に、dbf_info_in_ph_flagが信号通知され、PH構文要素ph_deblocking_filter_disabled_flagが0に等しくなるように信号通知され、最終的にPHに関連付けられたスライスに対してデブロッキングフィルタが有効にされる。このような場合、デブロッキングは、上位レベル(例えば、PPS)で無効とされたにも関わらず、PHで最終的に有効とされる。このような設計ロジックは、VVCテキストに固有のものであり、他のコーディングツール(ALF、SAO、LMCS、TMVP、WP等)の設計ロジックとは全く異なるもので、通常コーディングツールは上位層(SPS、PPS等)で無効であるときは、下位層(PH、SH等)で完全に無効となるものである。
b. また、現在のpps_deblocking_filter_disabled_flagの定義は、“1に等しいpps_deblocking_filter_disabled_flagは、slice_deblocking_filter_disabled_flagが存在しないPPSを参照するスライスに対してデブロッキングフィルタの操作を適用しないことを規定する。”に類似している。しかし、現在の構文表によると、pps_deblocking_filter_disabled_flagが1に等しく、かつslice_deblocking_filter_disabled_flagが存在しない場合でも、ph_deblocking_filter_disabled_flagが存在し、かつ0に等しいことが信号通知されていればデブロッキングフィルタの操作が適用される。そのため、pps_deblocking_filter_disabled_flagの現在の定義は正しくない。
c. さらに、現在のテキストによると、PPS構文要素deblocking_filter_override_enabled_flagとpps_deblocking_filter_disabled_flagがともに1に等しい場合、PPSでデブロッキングを無効にして、デブロッキングフィルタの制御はPHまたはSHでオーバーライドされることが意図されることを規定している。しかし、その後のPH構文要素ph_deblocking_filter_override_flagおよびph_deblocking_filter_disabled_flagは、依然として1となるように信号通知されるかも知れず、結果としてオーバーライド処理は何も変更せず(例えば、デブロッキングはPH/SHで無効のまま)、ただ無意味な信号通知のために不要なビットを使用することになる。
d. さらに、現在のテキストに従って、SH構文要素slice_deblocking_filter_override_flagが存在しない場合、それはph_deblocking_filter_override_flagに等しいと推論される。しかし、前記PPSにおける非明示的または明示的な信号通知の他に、デブロッキングパラメータは、dbf_info_in_ph_flagに従ってPHまたはSHのいずれか一方でのみ信号通知することができるが、両方が信号通知されることはない。そのため、dbf_info_in_ph_flagが真である場合、PHにおけるオーバーライドデブロッキングフィルタパラメータを信号通知することを許可することが意図される。この場合、PHオーバーライドフラグが真であり、前記SHオーバーライドフラグが信号通知されないが、PHオーバーライドフラグに等しいと推論される場合、前記SHにおいて、追加のデブロッキングフィルタパラメータが依然として信号通知されるが、これは、意図と矛盾する。
e. また、SPSレベルのデブロッキングのオン/オフ制御がなく、これが追加され、PPS/PH/SHにおける関連構文要素が適宜更新され得る。
3) 現在、PPS構文要素single_slice_per_subpic_flagが存在しない場合、それは0に等しいと推論される。single_slice_per_subpic_flagは、2つのケース、i)no_pic_partition_flagが1に等しく、ii)no_pic_partition_flagが0に等しく、rect_slice_flagが0に等しい、では存在しない。
ケース i)では、no_pic_partition_flagが1に等しい場合、PPSを参照する各ピクチャにピクチャ分割が適用されないため、各ピクチャには1つのスライスのみが存在し、および結果として各サブピクチャには1つのスライスのみが存在することが規定される。したがって、この場合、single_slice_per_subpic_flagは1に等しいと推論されるべきである。
ii)のケースの場合、rect_slice_flagは0に等しいので、single_slice_per_subpic_flagの推論値は必要とされない。
4) 現在、ピクチャレベルまたはスライスレベルのいずれかにおける輝度qpデルタは、PHまたはSHのいずれかに常に強制的に信号通知されるが、両方には信号通知されない。これに対し、スライスレベルの彩度QPオフセットは、選択的にSHにおいて信号通知される。そのような設計はいくぶん整合性がない。
a. また、PPS構文要素cu_qp_delta_enabled_flagの現在の意味論は、以下のように記述される。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_absはパレットコーディング構文にも存在する可能性があり、これもcu_qp_delta_enabled_flagで規定する必要がある。言い換えれば、cu_qp_delta_enabled_flagの現在の意味論は十分に明確ではなく、少し紛らわしい。
5) 彩度Qpマッピングテーブルの現在の設計で、彩度Qpが輝度Qpと等しいケースを表現するのは簡単ではない。
6) 現在、subpic_transted_as_pic_flag[i]は、sps_independent_subpics_flagの値に等しいと推論される。しかし、現在のスペックは、subpic_transport_as_pic_flag[i]が0に等しい場合にのみ、水平ラップアラウンドを有効にすることを許可し、ラップアラウンド動き補償は、360映像コンテンツに対して設計される。したがって、1つのピクチャが1つのサブピクチャしか含まない場合(特に、完全な360映像シーケンスが1つのサブピクチャしか含まない場合)、subpic_transport_as_pic_flag[i]の推論値は、0に等しいか、またはラップアラウンド動き補償を可能にする一定の値であると推論され得る。
5. 解決策および実施形態の一覧
上述した問題点および上記以外の問題点を解決するために、以下のような方法が開示されている。以下の項目は、一般的な概念を説明するための例であり、狭義に解釈されるべきではない。さらに、これらの項目は、個々に適用されてもよく、または任意の方法で組み合わされてもよい。
以下の説明において、SHは1つのPHに関連付けられてもよく、すなわち、SHは1つのスライスに関連付けられ、このスライスはこのPHに関連付けられたピクチャ内にある。SHは1つのPPSに関連付けられてもよく、すなわち、SHは1つのスライスに関連付けられ、このスライスはこのPPSに関連付けられたピクチャ内にある。PHは、PPSに関連付けられてもよく、すなわち、PHは、PPSに関連付けられたピクチャに関連付けられる。
以下の説明において、SPSはPPSに関連付けられてもよく、すなわち、PPSはSPSを指してもよい。
Figure 0007425224000027

1. 第1の問題を解決するためのAPS構文要素の制約条件について、以下のアプローチの1つ以上が開示される。
a. 一例において、PH構文要素から導出されたChromaArrayTypeに従って、scaling_list_chroma_present_flagの値を制約する。
i. 例えば、scaling_list_chroma_present_flagの値が制約されるかどうかは、例えば、第1の実施例のように、ph_scaling_list_aps_idが存在するか否かに依存し得る。
1) 一例において、ph_scaling_list_aps_idが存在する場合、SCALING_APSに等しいaps_params_typeおよびph_scaling_list_aps_idに等しいadaptation_parameter_set_idを有するAPS NALユニットのscaling_list_chroma_present_flagの値はChromaArrayType==0?0:1と等しいことが要求される。
ii. あるいは、scaling_list_chroma_present_flagは、PH構文要素によって導出されたChromaArrayTypeに基づいて制約されるが、例えば、第1のセットの実施形態のように、ph_scaling_list_aps_idの存在とは無関係に制約される。
1) 一例において、SCALING_APSに等しいaps_params_typeを有するAPS NALユニットのscaling_list_chroma_present_flagの値は、ChromaArrayType==0?0:1に等しいことが必要である。
b. 一例において、PH構文要素によって導出されたChromaArrayTypeに基づいて、lmcs_delta_abs_crsの値を制約する。
i. 例えば、lmcs_delta_abs_crsの値が制約されるかどうかは、例えば、第1のセットの実施形態のように、ph_lmcs_aps_idが存在するか否かに依存してもよい。
1)例えば、ph_lmcs_aps_idが存在する場合、LMCS_APSに等しいaps_params_typeおよびph_lmcs_aps_idに等しいadaptation_parameter_set_idを有するAPS NAL ユニットのlmcs_delta_abs_crsの値は、ChromaArrayTypeが0に等しければ0とし、そうでなければ0よりも大きいことが要求される。
2) あるいは、ph_lmcs_aps_idが存在する場合、ChromaArrayTypeが0に等しいとき、aps_params_typeがLMCS_APS、adaptation_parameter_set_idがph_lmcs_aps_idのAPS NALユニットのlmcs_delta_abs_crs値は0に等しくなければならない。
ii. あるいは、lmcs_delta_abs_crsは、PH構文要素によって導出されたChromaArrayTypeに基づいて制約されるが、ph_lmcs_aps_idの存在に関わらず、例えば、第1のセットの実施形態のように制約される。
1) 例えば、ph_lmcs_aps_idに等しいAPS NALユニットのlmcs_delta_abs_crsの値は、ChromaArrayTypeが0に等しい場合、0に等しく、そうでない場合、0よりも大きい。
2) 例えば、ChromaArrayTypeが0に等しい場合、APS NALユニットのlmcs_delta_abs_crsの値がph_lmcs_aps_idに等しい値は0に等しい。
c. 一例では、ALF APS構文要素(例えば、alf_chroma_filter_signal_flag、alf_cc_cb_filter_signal_flag、alf_cc_cr_filter_signal_flag等)の値を、PH 構文要素および/またはSH 構文要素が導き出すChromaArrayTypeに従って制約する。
i. 例えば、alf_chroma_filter_signal_flagおよび/またはalf_cc_cb_filter_signal_flagおよび/またはalf_cc_cr_filter_signal_flagの値が制約されるかどうかは、例えば、第1のセットの実施形態のように、ph_alf_aps_id_luma[i]またはslice_alf_aps_id_luma[i]が存在するかどうか、および/またはChromaArrayTypeが0に等しいかどうかによって決定されてもよい。
1) 例えば、ph_alf_aps_id_luma[i]が存在し、ChromaArrayTypeが0に等しい場合、
ALF_APSに等しいALF_APSおよびph_alf_aps_id_luma[i]に等しいadaptation_parameter_set_idを有するAPS NALユニットのalf_chroma_filter_flag、alf_cc_b_filter_flag、alf_cc_cr_filter_flagの値は、全て0に等しいことが必要である。
2) また、slice_alf_aps_id_luma[i]が存在し、ChromaArrayTypeが0に等しい場合、
ALF_APSに等しいALF_APSおよびslice_alf_aps_id_luma[i]に等しいadaptation_parameter_set_idを有するAPS NALユニットのalf_chroma_filter_flag、alf_cc_b_filter_flag、alf_cc_cr_filter_flagの値は、全て0に等しいことが必要である。
ii. あるいは、alf_chroma_filter_signal_flagおよび/またはalf_cc_cb_filter_signal_flagおよび/またはalf_cc_cr_filter_signal_flagは、例えば第1のセットの実施形態のように、ph_alf_aps_id_luma[i]および/またはslice_alf_aps_id_luma[i]の存在とは無関係に、PH構文要素またはSH構文要素により導出されるChromaArrayTypeに基づいて制約される。
1) 例えば、ChromaArrayTypeが0に等しい場合、ALF_APSに等しいaps_params_typeを有するAPS NAL ユニットのalf_chroma_filter_signal_flag、alf_cc_cb_filter_signal_flag、alf_cc_cr_filter_signal_flagの値は全て0に等しいことが要求される。
2) さらに、ChromaArrayTypeが0に等しい場合、ALF_APSに等しいaps_params_typeを有する APS NAL ユニットのalf_chroma_filter_signal_flag、alf_cc_cb_filter_signal_flag、alf_cc_cr_filter_signal_flagの値は全て 0に等しいことが要求される。
iii. あるいは、alf_chroma_filter_signal_flagおよび/またはalf_cc_cb_filter_signal_flagおよび/またはalf_cc_cr_filter_signal_flagは、例えば、第1のセットの実施形態のように、彩度APS ID関連PHまたはSH構文要素によって導出されたChromaArrayTypeに基づいて制約される。
1) 例えば、alf_chroma_filter_signal_flagは、PH構文要素ph_alf_aps_id_chromaおよび/またはSH構文要素slice_alf_aps_id_chromaによって導出されるChromaArrayTypeによって制約される。
2) 例えば、alf_cc_cb_filter_signal_flagはPH 構文要素 ph_cc_alf_cb_aps_idおよびSH構文要素slice_cc_alf_cb_aps_idにより導出されるChromaArrayTypeに従って制約される。
3) 例えば、alf_cc_cr_filter_signal_flagはPH 構文要素 ph_cr_alf_cb_aps_idおよびSH構文要素slice_cr_alf_cb_aps_idにより導出されるChromaArrayTypeに従って制約される。
d. 一例において、ALFおよび/またはスケーリングリストおよび/またはLMCSデータ構文構造におけるAPS構文要素の意味論は、4:0:0映像コーディングおよび/または別個の色平面コーディングであるかどうかに依存しなくてもよい。
i. 例えば、ALFデータ構文構造におけるAPS構文要素(例えば、alf_chroma_filter_signal_flag、alf_cc_cb_filter_signal_flag、alf_cc_cr_filter_signal_flag等)の意味論は、例えば、第1のセットの実施形態のようにSPS/PH/SH構文要素(ChromaArrayType等)によって導出された変数/構文に依存しなくてもよい。
ii. さらに、代替的に、スケーリングリストデータ構文構造におけるAPS構文要素(例えば、scaling_list_chroma_present_flag、およびその他)の意味論は、例えば、第1のセットの実施形態のように、SPS/PH/SH構文要素(例えば、ChromaArrayType)によって導出された変数/構文に依存しなくてもよい。
e. さらに、ALF/スケーリング/LMCS APS NALユニットのTemporIdが制約されるか否かは、例えば、第1のセットの実施形態のように、対応するAPS IDが存在するかどうかに依存してもよい。
i. 例えば、ALF APS NALユニットのtemporalIdが制約されるか否かは、ph_alf_aps_id_luma[i]および/またはph_alf_aps_id_chromaおよび/またはph_cc_alf_cb_aps_idおよび/またはph_cc_alf_cr_aps_idが存在するかどうかに依存してもよい。
ii. 例えば、LMCS APS NALユニットのtemporalIdが制約されているかどうかは、ph_lmcs_aps_idが存在するかどうかに依存してもよい。
iii. 例えば、SCALING APS NALユニットのtemporalIdが制約されているかどうかは、ph_scaling_list_aps_idが存在するかどうかに依存することができ
f. さらに、alf_luma_filter_signal_flag、alf_chroma_filter_signal_flagおよび/またはalf_cc_cb_filter_signal_flagおよび/またはalf_cc_cr_filter_signal_flagの値が1に等しくなるかどうかは、例えば、第1の実施例のように対応するAPS IDが存在するかどうかに依存してもよい。
i. 例えば、alf_luma_filter_signal_flagが1に等しいかどうかは、ph_alf_aps_id_luma[i]および/またはslice_alf_aps_id_luma[i]が存在するかどうかによって決定され得る。
ii. 例えば、alf_chroma_filter_signal_flagが1に等しいかどうかは、ph_alf_aps_id_chromaおよび/またはslice_alf_aps_id_chromaが存在するかどうかに依存してもよい。
iii. 例えば、alf_cc_cb_filter_signal_flagが1に等しいかどうかは、ph_cc_alf_cb_aps_idおよび/またはslice_cc_alf_cb_aps_idが存在するかどうかに依存してもよい。
iv. 例えば、alf_cc_cr_filter_signal_flagが1に等しいかどうかは、ph_cc_alf_cr_aps_idおよび/またはslice_cc_alf_cr_aps_idが存在するかどうかに依存してもよい。
g. 加えて、代替的に、SH内の彩度ALF APS ID構文要素(例えば、slice_alf_aps_id_chroma、slice_cc_alf_cb_aps_id、slice_cr_alf_cb_aps_idおよびその他)が推論されるかどうかは、例えば、第1のセットの実施形態のように、ChromaArrayTypeの値に依存してもよい。
i. 例えば、ChromaArrayTypeが0に等しくない場合、SH 内の彩度 ALF APS ID 構文要素(例えば、slice_alf_apsid_chroma、slice_cc_alf_cb_aps_id、slice_cr_alf_cb_aps_id等)の値が推定されてもよい。
2. 第2の課題を解決するためのデブロッキング制御の信号通知について、例えば、第2のセットの実施形態のように、以下のアプローチのうち1つ以上が開示される。
a. 一例において、Nビット(N=2など)のデブロッキングモードインジケータ(例えば、deblocking_filter_mode_idcと名付けられ)が信号通知される。
i. 一例において、構文要素deblocking_filter_mode_idcは、u(2)コーディングされる。
a) あるいは、deblocking_filter_mode_idcの構文解析プロセスは、N(例えば、N=2)ビットの符号なし整数である。
ii. 一例において、構文要素deblock_filter_mode_idcは、PPSにおいて信号通知される。
iii. 一例において、構文要素deblocking_filter_mode_idcは、以下の4つのモードを規定するために用いられる:a)デブロッキングが完全に無効であり全てのスライスに対して用いられない、b)デブロッキングが0値のβとtCオフセットを用いて全てのスライスに対して用いられる、c)デブロッキングがPPSにおいて信号通知されたβとtCオフセットを用いて全てのスライスに対して用いられる、d)さらにデブロッキングがいずれかのピクチャまたはスライスレベルにおいて制御される。
b. 構文フラグph/slice_deblocking_filter_used_flagはPHまたはSHにおいて信号通知され、現在のピクチャ/スライスにデブロッキングが使用されるかどうかを規定する。
c. 構文フラグph/slice_deblocking_parameters_override_flagは、PHまたはSHのいずれかにおいて信号通知され、PH/SHにおいて信号通知された値によってβオフセットおよびtCオフセットがオーバーライドされるかどうかを規定する。
i. また、slice_deblocking_parameters_override_flagの値は、存在していない場合、0に等しいと推論する。
d. 一例において、デブロッキング制御を規定する構文要素(例えば、イネーブルフラグ、ディスエーブルフラグ、制御フラグ、デブロッキングモードインジケータ、デブロッキングフィルタベータ/tcパラメータ等)は、SPSにおいて信号通知されてもよい。
i. 一例において、映像ユニット(例えば、CLVS)においてデブロッキングが有効化されているか否かを規定するSPSにおいて、1つ以上の構文要素が信号通知されてもよい。
ii. また、SPSでデブロッキングを無効にする場合、PPS/PH/SHにおけるPPS/PH/SHレベルのデブロッキングのオン/オフ制御に関する構文要素は、全てのスライスに対してデブロッキングを完全に無効にして使用しないことを規定する特定の値に等しくすることが要求される。
iii. 一例において、デブロッキングフィルタ制御存在フラグは、SPSにおいて信号通知されてもよい。
iv. 例えば、Nビット(N=2など)のデブロッキングモードインジケータ(例えば、deblocking_filter_mode_idcという名前)がSPS内で信号通知されてもよい。
v. 例えば、ベータ/tcデブロッキングパラメータは、SPSにおいて信号通知されてもよい。
vi. 例えば、0値ベータ/tcデブロッキングパラメータを用いてデブロッキングが有効であるかどうかは、SPS構文要素に依存することができる。
vii. 例えば、デブロッキングは、SPS/PPS/PH/SHレベルで適用され、SPSにおいて信号通知されたベータ/tcデブロッキングパラメータを使用することができる。
viii. 例えば、デブロッキングは、SPS/PPS/PH/SHレベルで適用され、SPSにおいて信号通知された0値デブロッキングパラメータを使用することができる。
3. 第3の問題を解決するためのPPS構文要素single_slice_per_subpic_flagの推論について、以下のアプローチの1つ以上が開示される。
a. 一例において、no_pic_partition_flagが1に等しい場合、single_slice_per_subpic_flagは1に等しいと推論し、例えば、single_slice_per_subpic_flagの意味論は次のように変更される。
Figure 0007425224000028

4. 第4の問題を解決するためのピクチャまたはスライスQPデルタ信号通知に関して、以下のアプローチの1つ以上が開示される。
a. 一例において、PHまたはSHのいずれかにおいて、ピクチャまたはスライスレベルの彩度QPオフセットが常に信号通知される。
i. 例えば、映像コンテンツに彩度成分がある(例えば、ChromaArrayTypeが0に等しくない)場合、PPSにおいて信号通知される現在のフラグ(例えば、pps_slice_chroma_qp_offsets_present_flag)を条件とせずに、ピクチャまたはスライスレベルの彩度QPオフセットが常に信号通知されてもよい。
ii. あるいは、映像コンテンツに彩度成分がある(例えば、ChromaArrayTypeが0に等しくない)場合、pps存在フラグに関わらず(例えば、pps_slice_chroma_qp_offsets_present_flag)、slice_cb_qp_offsetおよびslice_cr_qp_offset構文要素は常に関連するスライスヘッダに存在してもよい。
iii. さらに、slice_cb_qp_offsetおよびslice_cr_qp_offset構文要素の存在を規定する存在フラグ(例えば、pps_slice_chroma_qp_offsets_present_flag)は、信号通知されない場合もある。
b. 一例において、pps_cu_qp_delta_enabled_flagは、変換ユニット構文およびパレットコーディング構文の両方において、cu_qp_delta_absおよびcu_qp_delta_sign_flagの存在を規定するために使用されてもよく、pps_cu_qp_delta_enabled_flagの意味論は、次のように変更される。
Figure 0007425224000029

c. 一例において、輝度QPデルタは、PHおよびSHの両方において信号通知されてもよい。
i. 例えば、輝度QPデルタ存在フラグは、PPSおよび/またはPHおよび/またはSHにおいて信号通知されてもよい。
ii. 例えば、PH/SHにおいて輝度QPデルタが信号通知されるかどうかは、PPSおよび/またはPH/SHにおける現在のフラグに依存する。
iii. 例えば、PH輝度QP deltaおよびSH輝度QP deltaの値を加算して、SliceQpY等の輝度量子化パラメータの算出に用いてもよい。
d. 一例において、彩度QPオフセットは、PHおよびSHの両方において信号通知されてもよい。
i. 例えば、彩度QPオフセット存在フラグは、PPSおよび/またはPHおよび/またはSHにおいて信号通知されてもよい。
ii. 例えば、PH/SHにおいて彩度QPオフセットが信号通知されるかどうかは、PPSおよび/またはPH/SHにおける現在のフラグに依存する。
iii. 例えば、PH彩度QPオフセットおよびSH彩度QPオフセットの値は、加算的であってもよく、CbおよびCr成分の彩度量子化パラメータを導出するために用いられてもよい。
5. 彩度Qpマッピングテーブルに関して、以下のアプローチのうちの1つ以上が開示される。
a. 一例において、彩度QPテーブルの導出プロセスにおいて、XOR演算子は、例えば第3の実施形態におけるように、(delta_qp_in_val_minus1[i][j]+1)とdelta_qp_diff_val[i][j]との間で行なわれる。
b. SPSでは、sps_multiple_sets_of_chroma_qp_table_present_flagにフラグを付けることが提案される。
i. sps_multiple_sets_of_chroma_qp_table_present_flagが0に等しい場合、1セットの彩度Qpマッピングテーブルのみが信号通知されることを許可される。
ii. sps_multiple_sets_of_chroma_qp_table_present_flagが1に等しい場合、複数セットの彩度Qpマッピングテーブルが信号通知されることを許可される。
c. B/Pスライスのないシーケンスに対して、複数セットの彩度Qpマッピングテーブルが信号通知されることが許可されない可能性がある。
6. 第6の問題を解決するためのsps_independent_subpics_flagおよびsubpic_transpertage_as_pic_flag[i]について、以下のアプローチの1つ以上が開示される。
a. 一例において、sps_independent_subpics_flagの存在は、サブピクチャの数が1よりも大きいかどうかに依存する。
Figure 0007425224000030

b. また、sps_independent_subpics_flagが存在しない場合、ある値(例えば、0または1)に等しいと推論される。
c. 一例において、subpic_treated_as_pic_flag[i]が存在しない場合、それはある値(例えば、0または1)に等しいと推論される。
d. 一例において、subpic_transport_as_pic_flag[i]が存在しない場合、ラップアラウンド動き補償が可能である(または使用可能である)特定の値に等しいと推論される。
i. また、subpic_transport_as_pic_flag[i]が存在しない場合、水平ラップアラウンド動き補償が可能である(または使用可能である)一定の値に等しいと推論される。
e. 一例において、subpic_transport_as_pic_flag[i]の推論値は、ピクチャが1つのサブピクチャのみを含むかどうか、および/またはサブピクチャがこのピクチャと同じ幅を有するかどうかに依存してもよい。
i. 一例において、サブピクチャの幅がピクチャと同じである場合、subpic_transport_as_pic_flag[i]は、X(例えば、X=0)であると推論されてもよい。
f. 一例において、sps_independent_subpics_flagが存在しない場合、sps_indentent_subpics_flagがどのような値であると推論されるかは、他の構文要素または変数に依存してもよい。
i. 例えば、この推論値は、サブピクチャ情報が存在するかどうか(例えば、subpic_info_present_flagが0または1であるかどうか)に依存することができる。
ii. 例えば、subpic_info_present_flagが0であり、sps_independent_subpics_flagが存在しない場合、所定の値(例えば、0または1)に等しいと推論される。
iii. 例えば、subpic_info_present_flagが1であり、sps_independent_subpics_flagが存在しない場合、所定の値(例えば、0または1)に等しいと推論される。
g. 一例において、subpic_treated_as_pic_flag[i]が存在しないとき、subpic_treated_as_pic_flag[i]がどのような値に推論されるかは、サブピクチャ情報の存在(例えば、subpic_info_present_flag)および/またはCLVS内のサブピクチャの数(例えば、sps_num_subpics_minus1)および/またはsps_independent_subpics_flagに依存してもよい。
i. 一例において、subpic_info_present_flagが0に等しく、subpic_treated_as_pic_flag[i]が存在しない場合、subpic_treated_as_pic_flag[i]の値は一定の値(0など)に等しいと推論される。
ii. 一例において、subpic_info_present_flagが1に等しく、subpic_treated_as_pic_flag[i]が存在しない場合、subpic_treated_as_pic_flag[i]の値は一定の値(1など)に等しいと推論される。
iii. 一例において、subpic_info_present_flagが1に等しく、sps_num_subpics_minus1が0に等しく、subpic_treated_as_pic_flag[i]が存在しない場合、subpic_treated_as_pic_flag[i]の値は一定の値(例えば0または1)に等しいと推論される。
iv. 一例において、subpic_info_present_flagが1に等しく、sps_num_subpics_minus1が0より大きく、sps_independent_subpics_flagが1に等しく、subpic_treated_as_pic_flag[i]が存在しない場合、subpic_treated_as_pic_flag[i]の値は一定の値(例えば0または1)に等しいと推論される。
7. インター予測処理中に境界上でどのようにパディングまたはクリッピングを行うかは、境界のタイプ、ラップアラウンドパディングまたはクリッピングの指示(例えば、pps_ref_wraparound_enabled_flag、sps_ref_wraparound_enabled_flag等)およびサブピクチャの境界をピクチャの境界として扱うことの指示(例えば、subpic_treated_as_pic_flag[i])の複合チェックに依存してもよい。
a. 例えば、1つの境界が1つのピクチャ境界である場合、ラップアラウンドパディングの指示が真であり、サブピクチャ境界をピクチャ境界として扱うことを考慮せずに、ラップアラウンドパディング(またはラップアラウンドクリッピング)が適用されてもよい。
i. 一例において、この境界は垂直境界でなければならない。
b. 例えば、2つの垂直境界の両方がピクチャ境界である場合、ラップアラウンドパディングの指示が真であり、サブピクチャ境界をピクチャ境界として扱う指示を考慮せずに、ラップアラウンドパディング(またはラップアラウンドクリッピング)が適用されてもよい。
c. 一例において、上記のラップアラウンドパディング(またはラップアラウンドクリッピング)は、水平ラップアラウンドパディング/クリッピングを示してもよい。
8. 一例において、異なるサブピクチャに対して、ラップアラウンドパディングまたはクリッピングのための異なる指示が信号通知されてもよい。
9. 一例において、異なるサブピクチャに対して、ラップアラウンドパディングまたはクリッピングのための異なるオフセットが信号通知されてもよい。
10. PH/SHにおいて、ピクチャ/スライスにおいてBスライスが許可/使用されるかどうかを示すために変数Xが用いられ、その変数は、以下の方法のうちの1つを使用して導出される。
a)(rpl_info_in_ph_flag&&num_ref_entries[0][RplsIdx[0]]>0&&num_ref_entries[1][RplsIdx[1]]>0);
b)(rpl_info_in_ph_flag&&num_ref_entries[1][RplsIdx[1]]>0);
c)(rpl_info_in_ph_flag&&num_ref_entries[1][RplsIdx[1]]>1);
d)(rpl_info_in_ph_flag&&num_ref_entries[1][RplsIdx[1]]>0);
e)VVCテキスト中のNumRefIdxActive(例えば、リスト1のためのNumRefIdxActiveがKよりも大きい(例えば、K=0))。
f)リスト1のための許可された参照ピクチャの数に基づく。
1) あるいは、PHで信号通知される1つまたは複数の構文要素の信号通知および/または意味論および/または推論は、変数に基づいて変更されてもよい。
i. 一例において、1つまたは複数の構文要素は、例えば、双方向予測または混合イントラおよびインターコーディング、または複数の予測ブロックからの線形/非線形重み付けによる予測など、複数の予測信号を必要とするコーディングツールを可能にするためのものである。
ii. 一例において、1つまたは複数の構文要素は、以下を含むことができるが、これらに限定されない。
a) ph_collocated_from_l0_flag
b) mvd_l1_zero_flag
c) ph_disable_bdof_flag
d) ph_disable_dmvr_flag
e) num_l1_weights
iii. 一例において、変数が、ピクチャが1つ以上のBスライスを含むことができることを示す場合にのみ、1つまたは複数の構文要素が信号通知され得る。そうでない場合、信号通知はスキップされ、構文要素の値が推論される。
Figure 0007425224000031

iv. 一例において、Xが0に等しい(または偽である)場合、mvd_l1_zero_flagは信号通知されず、その値は1であると推論される。
v. 一例において、1つまたは複数の構文要素の推論は、変数Xの値に依存する。
a) 一例において、ph_disable_bdof_flagについては、以下のように適用される。
Figure 0007425224000032

b) 一例において、ph_disable_dmvr_flagに対して、以下が適用される。
Figure 0007425224000033

c) 一例において、ph_temporal_mvp_enabled_flagおよびrpl_info_in_ph_flagが共に1に等しく、Xが0(または偽)に等しいとき、ph_collocated_from_l0_flagの値は1に等しいと推論される。
d) 一例において、Xが0に等しい(または偽である)場合、num_11_weightsは信号通知されず、その値が0であると推論され、その結果、参照ピクチャリスト1に対する重み付け予測パラメータは、ピクチャのPHまたはSHにおいて信号通知されない。
6. 例示的な実施形態
Figure 0007425224000034
6.1. 第1のセットの実施形態
これは、上記第5章に要約された項目1の実施形態のセットである。
6.1.1. 1.a.iの実施形態
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以下であるものとする。
Figure 0007425224000035


1に等しいscaling_list_chroma_present_flagは、彩度スケーリングリストがscaling_list_data()にあることを規定する。0に等しいscaling_list_chroma_present_flagは、彩度スケーリングリストがscaling_list_data()にないことを規定する。[[scaling_list_chroma_present_flagは、ChromaArrayTypeが0に等しい場合は0に、ChromaArrayTypeが0に等しくない場合は1に等しくなければならない]]というのがビットストリーム準拠の要件である。]]
6.1.2. 1.a.iiの実施形態
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以下であるものとする。
Figure 0007425224000036


1に等しいscaling_list_chroma_present_flagは、彩度スケーリングリストがscaling_list_data()にあることを規定する。0に等しいscaling_list_chroma_present_flagは、彩度スケーリングリストがscaling_list_data()にないことを規定する。[[scaling_list_chroma_present_flagは、ChromaArrayTypeが0に等しい場合は0に、ChromaArrayTypeが0に等しくない場合は1に等しくなければならない]]というのがビットストリーム準拠の要件である。]]
6.1.3. 1.b.iの実施形態
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以下であるものとする。
Figure 0007425224000037
6.1.4. 1.b.iiの実施形態
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以下であるものとする。
Figure 0007425224000038
6.1.5. 1.c.iの実施形態
PH構文要素の意味論は以下のように変更される。
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以下であるものとする。
Figure 0007425224000039


SH構文要素の意味論は以下のように変更される。

slice_alf_aps_id_luma[i]は、スライスの輝度成分が参照するi番目のALF APSのadaptation_parameter_set_idを規定する。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ユニットのTemporalIdは、コーディングされたスライスNALユニットのTemporalId以下であるものとする。
aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがslice_alf_aps_id_luma[i]に等しいAPS NALユニットのalf_luma_filter_signal_flagの値は1に等しいものとする。
Figure 0007425224000040


そして、ALFデータ構文構造においてAPS構文要素の意味論は以下のように変更される。

1に等しいalf_chroma_filter_signal_flagは、彩度フィルタが信号通知されることを示す。0に等しいalf_chroma_filter_signal_flagは、彩度フィルタが信号通知されないことを示す。[[ChromaArrayTypeが0に等しい場合、alf_chroma_filter_signal_flagは0に等しいとする。]]

1に等しいalf_cc_cb_filter_signal_flagは、Cb色成分のクロスコンポーネントフィルタが信号通知されることを規定する。0に等しいalf_cc_cb_filter_signal_flagは、Cb色成分のクロスコンポーネントフィルタが信号通知されないことを規定する。[[ChromaArrayTypeが0に等しい場合、alf_cc_cb_filter_signal_flagは0に等しいとする。]]
1に等しいalf_cc_cr_filter_signal_flagは、Cr色成分のクロスコンポーネントフィルタが信号通知されることを規定する。0に等しいalf_cc_cr_filter_signal_flagは、Cr色成分のクロスコンポーネントフィルタが信号通知されないことを規定する。[[ChromaArrayTypeが0に等しい場合、alf_cc_cr_filter_signal_flagは0に等しいとする。]]
6.1.6. 1.c.iiの実施形態
PH構文要素の意味論は以下のように変更される。
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以下であるものとする。
Figure 0007425224000041

0に等しいph_alf_chroma_idcは、適応ループフィルタがCbおよびCr色成分に適用されないことを示す。1に等しいph_alf_chroma_idcは、適応ループフィルタがCb色成分に適用されることを示す。2に等しいph_alf_chroma_idcは、適応ループフィルタがCr色成分に適用されることを示す。3に等しいph_alf_chroma_idcは、適応ループフィルタがCb色成分とCr色成分に適用されることを示す。ph_alf_chroma_idcが存在しない場合、それは0に等しいと推論される。

SH構文要素の意味論は以下のように変更される。

slice_alf_aps_id_luma[i]は、スライスの輝度成分が参照するi番目のALF APSのadaptation_parameter_set_idを規定する。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ユニットのTemporalIdは、コーディングされたスライスNALユニットのTemporalId以下であるものとする。
aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがslice_alf_aps_id_luma[i]に等しいAPS NALユニットのalf_luma_filter_signal_flagの値は1に等しいものとする。
Figure 0007425224000042


そして、ALFデータ構文構造においてAPS構文要素の意味論は以下のように変更される。

1に等しいalf_chroma_filter_signal_flagは、彩度フィルタが信号通知されることを示す。0に等しいalf_chroma_filter_signal_flagは、彩度フィルタが信号通知されないことを示す。[[ChromaArrayTypeが0に等しい場合、alf_chroma_filter_signal_flagは0に等しいとする。]]

1に等しいalf_cc_cb_filter_signal_flagは、Cb色成分のクロスコンポーネントフィルタが信号通知されることを規定する。0に等しいalf_cc_cb_filter_signal_flagは、Cb色成分のクロスコンポーネントフィルタが信号通知されないことを規定する。[[ChromaArrayTypeが0に等しい場合、alf_cc_cb_filter_signal_flagは0に等しいとする。]]
1に等しいalf_cc_cr_filter_signal_flagは、Cr色成分のクロスコンポーネントフィルタが信号通知されることを規定する。0に等しいalf_cc_cr_filter_signal_flagは、Cr色成分のクロスコンポーネントフィルタが信号通知されないことを規定する。[[ChromaArrayTypeが0に等しい場合、alf_cc_cr_filter_signal_flagは0に等しいとする。]]
6.1.7. 1.c.iiiの実施形態
PH構文要素の意味論は以下のように変更される。

ph_alf_aps_id_chromaは、PHに関連付けられたスライスの彩度成分が参照するALF APSのadaptation_parameter_set_idを規定する。
aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがph_alf_aps_id_chroma[i]に等しいAPS NALユニットのalf_chroma_filter_signal_flagの値は1に等しいものとする。
Figure 0007425224000043


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に等しいものとする。
Figure 0007425224000044


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に等しいものとする。
Figure 0007425224000045


SH構文要素の意味論は以下のように変更される。

slice_alf_aps_id_chromaは、スライスの彩度成分が参照する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[i]に等しいAPS NALユニットのalf_chroma_filter_signal_flagの値は1に等しいものとする。
Figure 0007425224000046


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に等しいものとする。
Figure 0007425224000047


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に等しいものとする。
Figure 0007425224000048


そして、APS構文要素の意味論は、以下のように変更される。

1に等しいalf_chroma_filter_signal_flagは、彩度フィルタが信号通知されることを示す。0に等しいalf_chroma_filter_signal_flagは、彩度フィルタが信号通知されないことを示す。[[ChromaArrayTypeが0に等しい場合、alf_chroma_filter_signal_flagは0に等しいとする。]]

1に等しいalf_cc_cb_filter_signal_flagは、Cb色成分のクロスコンポーネントフィルタが信号通知されることを規定する。0に等しいalf_cc_cb_filter_signal_flagは、Cb色成分のクロスコンポーネントフィルタが信号通知されないことを規定する。[[ChromaArrayTypeが0に等しい場合、alf_cc_cb_filter_signal_flagは0に等しいとする。]]
1に等しいalf_cc_cr_filter_signal_flagは、Cr色成分のクロスコンポーネントフィルタが信号通知されることを規定する。0に等しいalf_cc_cr_filter_signal_flagは、Cr色成分のクロスコンポーネントフィルタが信号通知されないことを規定する。[[ChromaArrayTypeが0に等しい場合、alf_cc_cr_filter_signal_flagは0に等しいとする。]]
6.1.8. 1.d.iの実施形態
ALFデータ構文構造におけるAPS構文要素の意味論は、以下のように変更される。

1に等しいalf_chroma_filter_signal_flagは、彩度フィルタが信号通知されることを示す。0に等しいalf_chroma_filter_signal_flagは、彩度フィルタが信号通知されないことを示す。[[ChromaArrayTypeが0に等しい場合、alf_chroma_filter_signal_flagは0に等しいとする。]]

1に等しいalf_cc_cb_filter_signal_flagは、Cb色成分のクロスコンポーネントフィルタが信号通知されることを規定する。0に等しいalf_cc_cb_filter_signal_flagは、Cb色成分のクロスコンポーネントフィルタが信号通知されないことを規定する。[[ChromaArrayTypeが0に等しい場合、alf_cc_cb_filter_signal_flagは0に等しいとする。]]
1に等しいalf_cc_cr_filter_signal_flagは、Cr色成分のクロスコンポーネントフィルタが信号通知されることを規定する。0に等しいalf_cc_cr_filter_signal_flagは、Cr色成分のクロスコンポーネントフィルタが信号通知されないことを規定する。[[ChromaArrayTypeが0に等しい場合、alf_cc_cr_filter_signal_flagは0に等しいとする。]]
6.1.9. 1.d.iiの実施形態
スケーリングリストデータ構文構造におけるAPS 構文要素の意味は、以下のように変更される。

1に等しいscaling_list_chroma_present_flagは、彩度スケーリングリストがscaling_list_data()にあることを規定する。0に等しいscaling_list_chroma_present_flagは、彩度スケーリングリストがscaling_list_data()にないことを規定する。[[scaling_list_chroma_present_flagは、ChromaArrayTypeが0に等しい場合は0に、ChromaArrayTypeが0に等しくない場合は1に等しくなければならない]] というのがビットストリーム準拠の要件である。]]
6.1.10. 1.eおよび1.fの実施形態
ph_scaling_list_aps_idは、スケーリングリストAPSのadaptation_parameter_set_idを規定する。
Figure 0007425224000049

-aps_params_typeがSCALING_APSに等しく、adaptation_parameter_set_idがph_scaling_list_aps_idであるAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。

ph_lmcs_aps_idは、PHに関連付けられたスライスが参照するLMCS APSのadaptation_parameter_set_idを規定する。
Figure 0007425224000050

-aps_params_typeがLMCS_APSに等しく、adaptation_parameter_set_idがph_lmcs_aps_idであるAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。

ph_alf_aps_id_luma[i]は、PHに関連付けられたスライスの輝度成分が参照するi番目のALF APSのadaptation_parameter_set_idを規定する。
Figure 0007425224000051

-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以下であるものとする。
0に等しいph_alf_chroma_idcは、適応ループフィルタがCbおよびCr色成分に適用されないことを示す。1に等しいph_alf_chroma_idcは、適応ループフィルタがCb色成分に適用されることを示す。2に等しいph_alf_chroma_idcは、適応ループフィルタがCr色成分に適用されることを示す。3に等しいph_alf_chroma_idcは、適応ループフィルタがCb色成分とCr色成分に適用されることを示す。ph_alf_chroma_idcが存在しない場合、それは0に等しいと推論される。
ph_alf_aps_id_chromaは、PHに関連付けられたスライスの彩度成分が参照するALF APSのadaptation_parameter_set_idを規定する。
Figure 0007425224000052

-aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがph_alf_aps_id_chroma[i]に等しいAPS NALユニットのalf_chroma_filter_signal_flagの値は1に等しいものとする。
-aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがph_alf_aps_id_chroma[i]であるAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。

ph_cc_alf_cb_aps_idは、PHに関連付けられたスライスのCb色成分が参照するALF APSのadaptation_parameter_set_idを規定する。
Figure 0007425224000053

-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_aps_idは、PHに関連付けられたスライスのCr色成分が参照するALF APSのadaptation_parameter_set_idを規定する。
Figure 0007425224000054

-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以下であるものとする。

slice_alf_aps_id_luma[i]は、スライスの輝度成分が参照するi番目のALF APSのadaptation_parameter_set_idを規定する。slice_alf_enabled_flagが1に等しく、かつ、slice_alf_aps_id_luma[i]が存在しない場合、slice_alf_aps_id_luma[i]の値は、ph_alf_aps_id_luma[i]の値に等しいと推論される。
Figure 0007425224000055

-aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがslice_alf_aps_id_luma[i]であるAPS NALユニットのTemporalIdは、コーディングされたスライスNALユニットのTemporalId以下であるものとする。
-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_aps_id_chromaは、スライスの彩度成分が参照するALF APSのadaptation_parameter_set_idを規定する。slice_alf_enabled_flagが1に等しく、かつ、slice_alf_aps_id_chromaが存在しない場合、slice_alf_aps_id_chromaの値は、ph_alf_aps_id_chromaの値に等しいと推論される。
Figure 0007425224000056

-aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがslice_alf_aps_id_chromaであるAPS NALユニットのTemporalIdは、コーディングされたスライスNALユニットのTemporalId以下であるものとする。
-aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがslice_alf_aps_id_chroma[i]に等しいAPS NALユニットのalf_chroma_filter_signal_flagの値は1に等しいものとする。

slice_cc_alf_cb_aps_idは、スライスのCb色成分が参照するadaptation_parameter_set_idを規定する。
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の値に等しいと推論される。
Figure 0007425224000057

-aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがslice_cc_alf_cb_aps_idであるAPS NALユニットのTemporalIdは、コーディングされたスライスNALユニットのTemporalId以下であるものとする。
-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_aps_idは、スライスのCr色成分が参照するadaptation_parameter_set_idを規定する。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の値に等しいと推論される。
Figure 0007425224000058

-aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがslice_cc_alf_cr_aps_idであるAPS NALユニットのTemporalIdは、コーディングされたスライスNALユニットのTemporalId以下であるものとする。
-aps_params_typeがALF_APSに等しく、adaptation_parameter_set_idがslice_cc_alf_cr_aps_idに等しいAPS NALユニットのalf_cc_cr_filter_signal_flagの値は、1に等しいものとする。
6.1.11. 1.gの実施形態
SH構文要素の意味論は以下のように変更される。
Figure 0007425224000059


slice_cc_alf_cb_aps_idは、スライスのCb色成分が参照するadaptation_parameter_set_idを規定する。
Figure 0007425224000060


Figure 0007425224000061

6.2. 第2のセットの実施形態
これは、上記第5章にまとめた項目2(2.a~2.c)の実施形態のセットである。
構文構造pic_parameter_set_rbsp()は、以下のように変更される。
Figure 0007425224000062

...
Figure 0007425224000063

[[1に等しいdeblocking_filter_control_present_flagは、PPS内にデブロッキングフィルタ制御構文要素があることを規定する。0に等しいdeblocking_filter_control_present_flagは、PPS内にデブロッキングフィルタ制御構文要素がないことを規定する。
1に等しいdeblocking_filter_override_enabled_flagは、PPSを参照するPHにおけるph_deblocking_filter_override_flagの存在を規定、または、PPSを参照するスライスヘッダにおけるslice_deblocking_filter_override_flagの存在を規定する。0に等しいdeblocking_filter_override_enabled_flagは、PPSを参照するPHにおけるph_deblocking_filter_override_flagの不在を規定し、または、PPSを参照するスライスヘッダにおけるslice_deblocking_filter_override_flagの不在を規定する。存在しない場合、deblocking_filter_override_enabled_flagの値は0に等しいと推論される。
1に等しいpps_deblocking_filter_disabled_flagは、デブロッキングフィルタの演算は、slice_deblocking_filter_disabled_flagが存在しないPPSを参照するスライスに対して適用されないことを規定する。0に等しいpps_deblocking_filter_disabled_flagは、デブロッキングフィルタの演算は、slice_deblocking_filter_disabled_flagが存在しないPPSを参照するスライスに対して適用されることを規定する。存在しない場合、pps_deblocking_filter_disabled_flagの値は0に等しいと推論される。]]
1に等しいdbf_info_in_ph_flagは、PH構文構造にデブロッキングフィルタ情報が存在し、PH構文構造を含まないPPSを参照するスライスヘッダには存在しないことを規定する。0に等しいdbf_info_in_ph_flagは、PH構文構造にデブロッキングフィルタ情報が存在せず、PH構文構造を含まないPPSを参照するスライスヘッダに存在する場合があることを規定する。[[存在しない場合、dbf_info_in_ph_flagの値は0に等しいと推論される。]]
...
そして、構文構造picture_header_structure()は、以下のように変更される。
Figure 0007425224000064

...
Figure 0007425224000065

Figure 0007425224000066

[[1に等しいph_deblocking_filter_disabled_flagは、PHに関連付けられたスライスに対してデブロッキングフィルタの演算を適用しないことを規定する。0に等しいph_deblocking_filter_disabled_flagは、PHに関連付けられたスライスに対してデブロッキングフィルタの演算を適用することを規定する。ph_deblocking_filter_disabled_flagが存在しない場合、pps_deblocking_filter_disabled_flagに等しいと推論される。]]
...
そして、構文構造slice_header ()は、以下のように変更される。
Figure 0007425224000067

...
Figure 0007425224000068

Figure 0007425224000069

[[1に等しいslice_deblocking_filter_disabled_flagは、現在のスライスに対してデブロッキングフィルタの演算が適用されないことを規定する。0に等しいslice_deblocking_filter_disabled_flagは、現在のスライスに対してデブロッキングフィルタの演算が適用されることを規定する。slice_deblocking_filter_disabled_flagが存在しない場合、ph_deblocking_filter_disabled_flagに等しいと推論される。]]
...
そして、デブロッキングフィルタ処理のデコーディング処理は、以下のように変更される。
8.8.3 デブロッキングフィルタ処理
8.8.3.1 一般
デブロッキングフィルタ処理は、以下のタイプのエッジを除き、ピクチャのすべてのコーディングサブブロックのエッジおよび変換ブロックのエッジに適用される。
-ピクチャの境界にあるエッジ、
-サブピクチャインデックスsubpicIdxおよびloop_filter_across_subpic_enabled_flag[subpicIdx]を有するサブピクチャの境界に一致するエッジは、0に等しい。
-VirtualBoundariesPresentFlagが1である場合、ピクチャの仮想境界に合致するエッジ
-loop_filter_across_tiles_enabled_flagが0である場合、タイルの境界に合致するエッジ
-loop_filter_across_slices_enabled_flagが0である場合、スライスの境界に合致するエッジ
Figure 0007425224000070

-輝度成分の4×4個のサンプルグリッド境界に対応しないエッジ
-彩度成分の8×8個のサンプルグリッド境界に対応しないエッジ
-輝度成分内のエッジで、エッジの両側がintra_bdpcm_luma_flagが1に等しい場合、
-彩度成分内のエッジで、エッジの両側がintra_bdpcm_chroma_flagが1に等しい場合、
-関連付けられた変換ユニットのエッジでない彩度ブロックのエッジ
エッジのタイプは、垂直または水平であり、表42で規定されるように、変数edgeTypeによって表現される。
表42-edgeTypeとの関連付けの名前
Figure 0007425224000071

Figure 0007425224000072

-変数treeTypeはDUAL_TREE_LUMAに等しく設定される。
-8.8.3.2項で規定されるように、変数treeType、デブロッキング前の再構成ピクチャ、すなわちEDGE_VERに等しく設定された配列recPictureおよび変数edgeTypeを入力として、一方向のデブロッキングフィルタ処理を行い、デブロッキング後の修正された再構成ピクチャ、すなわちち配列recPictureを出力として、垂直エッジをフィルタリングする。
-8.8.3.2項で規定されるように、変数treeType、デブロッキング後の修正された再構成ピクチャ、すなわちEDGE_HORに等しく設定された配列recPictureおよび可変edgeTypeを入力として、一方向のデブロッキングフィルタ処理を行い、デブロッキング後の修正された再構成ピクチャ、すなわち配列recPictureを出力として、水平エッジをフィルタリングする。
-ChromaArrayTypeが0に等しくない場合、以下が適用される。
-変数treeTypeをDUAL_TREE_CHROMAと等しく設定する。
-8.8.3.2項で規定されるように、変数treeType、デブロッキング前の再構成ピクチャ、すなわち配列recPicturecb、recPicturecr、およびEDGE_VERに等しく設定された可変edgeTypeを入力として、一方向のデブロッキングフィルタ処理を呼び出すことで、垂直エッジをフィルタリングし、デブロッキング後の修正された再構成ピクチャ、すなわち配列recPicturecb、recPicturecrを出力として再構成する。
-8.8.3.2項で規定されるように、変数treeType、デブロッキング前の修正された再構成ピクチャ、すなわち配列recPicturecb、recPicturecr、およびEDGE_HORに等しく設定した変数edgeTypeを入力として、一方向のデブロッキングフィルタ処理を呼び出すことで、水平エッジをフィルタリングし、デブロッキング後の修正された再構成ピクチャ、すなわち配列recPicturecb、recPicturecrを出力として再構成する。
6.3. 第3の実施例
Figure 0007425224000073

i=0...numQpTables-1のi番目の彩度QPマッピングテーブルChromaQpTable[i]は、以下のように導出される。
qpInVal[i][0]=qp_table_start_minus26[i] + 26
qpOutVal[i][0]=qpInVal[i][0]
for(j=0;j<=num_points_in_qp_table_minus1[i];j++){
qpInVal[i][j+1]=qpInVal[i][j]+delta_qp_in_val_minus1[i][j]+1
Figure 0007425224000074

ChromaQpTable[i][qpInVal[i][0]]=qpOutVal[i][0]
for(k=qpInVal[i][0]-1;k>=-QpBdOffset;k--)
ChromaQpTable[i][k]=Clip3(-QpBdOffset,63,ChromaQpTable[i][k+1]-1)
for(j=0;j<=num_points_in_qp_table_minus1[i];j++){
sh=(delta_qp_in_val_minus1[i][j]+1)>>1
for(k=qpInVal[i][j]+1,m=1;k<=qpInval[i][j+1];k++,m++)
ChromaQpTable[i][k]=ChromaQpTable[i][qpInVal[i][j]]+
((qpOutVal[i][j+1]-qpOutVal[i][j])*m+sh)/(delta_qp_in_val_minus1[i][j]+1)

for(k=qpInVal[i][num_points_in_qp_table_minus1[i]+1]+1;k<=63;k++)
ChromaQpTable[i][k]=Clip3(-QpBdOffset,63,ChromaQpTable[i][k-1]+1)
same_qp_table_for_chromaが1に等しい場合、ChromaQpTable[1][k]およびChromaQpTable[2][k]は、-QpBdOffsetから63までの範囲内にあるkについて、ChromaQpTable[0][k]に等しく設定される。
qpInVal[i][j]、qpOutVal[i][j]の値は、-QpBdOffset~63の範囲内にあり、iが0~numQpTables-1の範囲内にあり、jが0~num_points_in_qp_table_minus1[i]+1の範囲内にあるものとすることが、ビットストリーム適合性の要件である。
図1は、本明細書で開示される様々な技術が実装され得る例示的な映像処理システム1900を示すブロック図である。様々な実装形態は、システム1900のコンポーネントの一部または全部を含んでもよい。システム1900は、映像コンテンツを受信するための入力1902を含んでもよい。映像コンテンツは、未加工または非圧縮フォーマット、例えば、8または10ビットのマルチコンポーネント画素値で受信されてもよく、または圧縮されたまたはエンコードされたフォーマットで受信されてもよい。入力1902は、ネットワークインターフェース、周辺バスインターフェース、または記憶インターフェースを表してもよい。ネットワークインターフェースの例は、イーサネット(登録商標)、パッシブ光ネットワーク(PON)等の有線インターフェース、およびWi-Fiまたはセルラーインターフェース等の無線インターフェースを含む。
システム1900は、本明細書に記載される様々なコーディングまたはエンコーディング方法を実装することができるコーディングコンポーネント1904を含んでもよい。コーディングコンポーネント1904は、入力1902からの映像の平均ビットレートをコーディングコンポーネント1904の出力に低減し、映像のコーディング表現を生成してもよい。従って、このコーディング技術は、映像圧縮または映像トランスコーディング技術と呼ばれることがある。コーディングコンポーネント1904の出力は、コンポーネント1906によって表されるように、記憶されてもよいし、接続された通信を介して送信されてもよい。入力1902において受信された、記憶されたまたは通信された映像のビットストリーム(またはコーディングされた)表現は、コンポーネント1908によって使用されて、表示インターフェース1910に送信される画素値または表示可能な映像を生成してもよい。ビットストリーム表現からユーザが見ることができる映像を生成する処理は、映像展開と呼ばれることがある。さらに、特定の映像処理動作を「コーディング」動作またはツールと呼ぶが、コーディングツールまたは動作は、エンコーダおよびそれに対応する、コーディングの結果を逆にするデコーデイングツールまたは動作が、デコーダによって行われることが理解されよう。
周辺バスインターフェースまたは表示インターフェースの例は、ユニバーサルシリアルバス(USB)または高精細マルチメディアインターフェース(HDMI)またはディスプレイポート等を含んでもよい。ストレージインターフェースの例は、SATA(Serial Advanced Technology Attachment)、PCI、IDEインターフェース等を含む。本明細書に記載される技術は、携帯電話、ノートパソコン、スマートフォン、またはデジタルデータ処理および/または映像表示を実施可能な他のデバイス等の様々な電子デバイスに実施されてもよい。
図2は、映像処理装置3600のブロック図である。装置3600は、本明細書に記載の方法の1つ以上を実装するために使用されてもよい。装置3600は、スマートフォン、タブレット、コンピュータ、モノのインターネット(IoT)受信機等に実施されてもよい。装置3600は、1つ以上のプロセッサ3602と、1つ以上のメモリ3604と、映像処理ハードウェア3606と、を含んでもよい。1つまたは複数のプロセッサ3602は、本明細書に記載される1つ以上の方法を実装するように構成されてもよい。メモリ(複数可)3604は、本明細書で説明される方法および技術を実装するために使用されるデータおよびコードを記憶するために使用してもよい。映像処理ハードウェア3606は、本明細書に記載される技術をハードウェア回路にて実装するために使用してもよい。
図4は、本開示の技法を利用し得る例示的な映像コーディングシステム100を示すブロック図である。
図4に示すように、映像コーディングシステム100は、送信元デバイス110と、送信先デバイス120と、を備えてもよい。送信元デバイス110は、映像コーディングデバイスとも称され得るエンコードされた映像データを生成する。送信先デバイス120は、送信元デバイス110によって生成された、コーディング映像データをデコードしてよく、映像デコーディングデバイスと呼ばれ得る。
送信元デバイス110は、映像ソース112と、映像エンコーダ114と、入出力(I/O)インターフェース116と、を備えてもよい。
映像ソース112は、映像キャプチャデバイスなどのソース、映像コンテンツプロバイダからの映像データを受信するためのインターフェース、および/または映像データを生成するためのコンピュータグラフィックスシステム、またはこれらのソースの組み合わせを含んでもよい。映像データは、1または複数のピクチャを含んでもよい。映像エンコーダ114は、映像ソース112からの映像データをエンコードし、ビットストリームを生成する。ビットストリームは、映像データのコーディング表現を形成するビットのシーケンスを含んでもよい。ビットストリームは、コーディングされたピクチャおよび関連付けられたデータを含んでもよい。コーディングされたピクチャは、ピクチャのコーディング表現である。関連付けられたデータは、シーケンスパラメータセット、ピクチャパラメータセット、および他の構文構造を含んでもよい。I/Oインターフェース116は、変復調器(モデム)および/または送信機を含んでもよい。符号化された映像データは、ネットワーク130aを介して、I/Oインターフェース116を介して送信先デバイス120に直接送信されてよい。エンコードされた映像データは、送信先デバイス120がアクセスするために、記録媒体/サーバ130bに記憶してもよい。
送信先デバイス120は、I/Oインターフェース126、映像デコーダ124、および表示デバイス122を含んでもよい。
I/Oインターフェース126は、受信機および/またはモデムを含んでもよい。I/Oインターフェース126は、送信元デバイス110または記憶媒体/サーバ130bからエンコードされた映像データを取得してもよい。映像デコーダ124は、エンコードされた映像データをデコードしてもよい。表示デバイス122は、デコードされた映像データをユーザに表示してもよい。表示デバイス122は、送信先デバイス120と一体化されてもよく、または外部表示デバイスとインターフェースで接続するように構成される送信先デバイス120の外部にあってもよい。
映像エンコーダ114および映像デコーダ124は、高効率映像コーディング(HEVC)規格、汎用映像コーディング(VVVM)規格、および他の現在のおよび/または更なる規格等の映像圧縮規格に従って動作してもよい。
図5は、映像エンコーダ200の一例を示すブロック図であり、図4に示されるシステム100における映像エンコーダ114であってもよい。
映像エンコーダ200は、本開示の技術のいずれかまたは全部を行うように構成されてもよい。図5の例において、映像エンコーダ200は、複数の機能コンポーネントを含む。本開示で説明される技法は、映像エンコーダ200の様々なコンポーネント間で共有されてもよい。いくつかの例では、プロセッサは、本開示で説明される技術のいずれかまたはすべてを行うように構成してもよい。
映像エンコーダ200の機能コンポーネントは、分割ユニット201、予測ユニット202を含んでもよく、予測ユニット202は、モード選択ユニット203、動き推定ユニット204、動き補償ユニット205、およびイントラ予測ユニット206、残差生成ユニット207、変換ユニット208、量子化ユニット209、逆量子化ユニット210、逆変換ユニット211、再構成ユニット212、バッファ213、およびエントロピーエンコーディングユニット214を含んでもよい。
他の例において、映像エンコーダ200は、より多くの、より少ない、または異なる機能コンポーネントを含んでもよい。一例において、予測ユニット202は、イントラブロックコピー(IBC)ユニットを含んでもよい。IBC部は、少なくとも1つの参照ピクチャが現在の映像ブロックが位置するピクチャであるIBCモードにおいて予測を行うことができる。
さらに、動き推定ユニット204および動き補償ユニット205などのいくつかのコンポーネントは、高度に統合されてもよいが、説明のために、図5の例においては別個に表現されている。
分割ユニット201は、ピクチャを1つ以上の映像ブロックに分割してもよい。映像エンコーダ200および映像デコーダ300は、様々な映像ブロックサイズをサポートしてもよい。
モード選択ユニット203は、例えば、誤りの結果に基づいて、イントラまたはインターのコーディングモードのうちの1つを選択し、得られたイントラまたはインターコーディングされたブロックを残差生成ユニット207に供給し、残差ブロックデータを生成して再構成ユニット212に供給し、エンコードされたブロックを参照ピクチャとして使用するために再構成してもよい。いくつかの例において、モード選択ユニット203は、インター予測信号およびイントラ予測信号に基づいて予測を行うCIIP(Combination of Intra and Inter Prediction)モードを選択してもよい。モード選択ユニット203は、インター予測の場合、ブロックのために動きベクトルの解像度(例えば、サブピクセルまたは整数ピクセル精度)を選択してもよい。
現在の映像ブロックに対してインター予測を行うために、動き推定ユニット204は、バッファ213からの1つ以上の参照フレームと現在の映像ブロックとを比較することにより、現在の映像ブロックのために動き情報を生成してもよい。動き補償ユニット205は、現在の映像ブロックに関連付けられたピクチャ以外のバッファ213からのピクチャの動き情報およびデコードされたサンプルに基づいて、現在の映像ブロックのための予測映像ブロックを判定してもよい。
動き推定ユニット204および動き補償ユニット205は、現在の映像ブロックがIスライスであるか、Pスライスであるか、またはBスライスであるかによって、例えば、現在の映像ブロックに対して異なる動作を行ってもよい。
いくつかの例において、動き推定ユニット204は、現在の映像ブロックに対して単一方向予測を行い、動き推定ユニット204は、現在の映像ブロックに対して、参照映像ブロック用のリスト0またはリスト1の参照ピクチャを検索してもよい。そして、動き推定ユニット204は、参照映像ブロックと、現在の映像ブロックと参照映像ブロックとの間の空間的変位を示す動きベクトルとを含む、リスト0またはリスト1における参照ピクチャを示す参照インデックスを生成してもよい。動き推定ユニット204は、参照インデックス、予測方向インジケータ、および動きベクトルを、現在の映像ブロックの動き情報として出力してもよい。動き補償ユニット205は、現在の映像ブロックの動き情報が示す参照映像ブロックに基づいて、現在のブロックの予測映像ブロックを生成してもよい。
他の例において、動き推定ユニット204は、現在の映像ブロックを双方向予測してもよく、動き推定ユニット204は、リスト0における参照ピクチャの中から現在の映像ブロックを求めるための参照映像ブロックを検索してもよく、また、リスト1における参照ピクチャの中から現在の映像ブロックを求めるための別の参照映像ブロックを検索してもよい。そして、動き推定ユニット204は、参照映像ブロックを含むリスト0およびリスト1における参照ピクチャを示す参照インデックスと、参照映像ブロックと現在の映像ブロックとの間の空間的変位を示す動きベクトルとを生成してもよい。動き推定ユニット204は、現在の映像ブロックの参照インデックスおよび動きベクトルを、現在の映像ブロックの動き情報として出力してもよい。動き補償ユニット205は、現在の映像ブロックの動き情報が示す参照映像ブロックに基づいて、現在の映像ブロックの予測映像ブロックを生成してもよい。
いくつかの例において、動き推定ユニット204は、デコーダのデコーディング処理のために、動き情報のフルセットを出力してもよい。
いくつかの例では、動き推定ユニット204は、現在の映像のための動き情報のフルセットを出力しなくてもよい。むしろ、動き推定ユニット204は、別の映像ブロックの動き情報を参照して、現在の映像ブロックの動き情報を信号通知してもよい。例えば、動き推定ユニット204は、現在の映像ブロックの動き情報が近傍の映像ブロックの動き情報に十分に類似していることを判定してもよい。
一例において、動き推定ユニット204は、現在の映像ブロックに関連付けられた構文構造において、現在の映像ブロックが別の映像ブロックと同じ動き情報を有することを映像デコーダ300に示す値を示してもよい。
他の例において、動き推定ユニット204は、現在の映像ブロックに関連付けられた構文構造において、別の映像ブロックと、動きベクトル差分(MVD;Motion Vector Difference)とを識別してもよい。動きベクトル差分は、現在の映像ブロックの動きベクトルと、示された映像ブロックの動きベクトルとの差分を示す。映像デコーダ300は、示された映像ブロックの動きベクトルおよび動きベクトル差分を使用して、現在の映像ブロックの動きベクトルを決定してもよい。
上述したように、映像エンコーダ200は、動きベクトルを予測的に信号通知してもよい。映像エンコーダ200によって実装され得る予測信号通知技法の2つの例は、高度動きベクトル予測(AMVP)およびマージモード信号通知を含む。
イントラ予測ユニット206は、現在の映像ブロックに対してイントラ予測を行ってもよい。イントラ予測ユニット206が現在の映像ブロックをイントラ予測する場合、イントラ予測ユニット206は、同じピクチャにおける他の映像ブロックのデコードされたサンプルに基づいて、現在の映像ブロックのための予測データを生成してもよい。現在の映像ブロックのための予測データは、予測された映像ブロックおよび様々な構文要素を含んでもよい。
残差生成ユニット207は、現在の映像ブロックから現在の映像ブロックの予測された映像ブロックを減算することによって(例えば、マイナス符号によって示されている)、現在の映像ブロックのための残差データを生成してもよい。現在の映像ブロックの残差データは、現在の映像ブロックにおけるサンプルの異なるサンプル成分に対応する残差映像ブロックを含んでもよい。
他の例において、例えば、スキップモードにおいて、現在の映像ブロックのための残差データがなくてもよく、残差生成ユニット207は、減算動作を行わなくてもよい。
変換処理ユニット208は、現在の映像ブロックに関連付けられた残差映像ブロックに1つ以上の変換を適用することによって、現在の映像ブロックのための1つ以上の変換係数映像ブロックを生成してもよい。
変換処理ユニット208が現在の映像ブロックに関連付けられた変換係数映像ブロックを生成した後、量子化ユニット209は、現在の映像ブロックに関連付けられた1つ以上の量子化パラメータ(QP:Quantization Parameter)値に基づいて、現在の映像ブロックに関連付けられた変換係数映像ブロックを量子化してもよい。
逆量子化ユニット210および逆変換ユニット211は、変換係数映像ブロックに逆量子化および逆変換をそれぞれ適用し、変換係数映像ブロックから残差映像ブロックを再構成してもよい。再構成ユニット212は、予測ユニット202によって生成された1つ以上の予測映像ブロックから対応するサンプルに再構成された残差映像ブロックを追加して、バッファ213に格納するための現在のブロックに関連付けられた再構成された映像ブロックを生成してもよい。
再構成ユニット212が映像ブロックを再構成した後、映像ブロックにおける映像ブロッキングアーチファクトを縮小するために、ループフィルタリング動作が行われてもよい。
エントロピーエンコーディングユニット214は、映像エンコーダ200の他の機能コンポーネントからデータを受信してもよい。エントロピーエンコーディングユニット214がデータを受信すると、エントロピーエンコーディングユニット214は、1つ以上のエントロピーエンコーディング動作を行い、エントロピーエンコードされたデータを生成し、エントロピーエンコードされたデータを含むビットストリームを出力してもよい。
図6は、映像デコーダ300の一例を示すブロック図であり、映像デコーダ300は、図4に示すシステム100における映像デコーダ114であってもよい。
映像デコーダ300は、本開示の技術のいずれかまたは全部を行うように構成されてもよい。図6の例において、映像デコーダ300は、複数の機能コンポーネントを含む。本開示で説明される技法は、映像デコーダ300の様々なコンポーネント間で共有されてもよい。いくつかの例では、プロセッサは、本開示で説明される技術のいずれかまたはすべてを行うように構成してもよい。
図6の実施例において、映像デコーダ300は、エントロピーデコーディングユニット301、動き補償ユニット302、イントラ予測ユニット303、逆量子化ユニット304、逆変換ユニット305、および再構成ユニット306、並びにバッファ307を含む。映像デコーダ300は、いくつかの例では、映像エンコーダ200(図5)に関して説明したエンコーディングパスとほぼ逆のデコーディングパスを行ってもよい。
エントロピーデコーディングユニット301は、エンコードされたビットストリームを取り出す。エンコードされたビットストリームは、エントロピーコーディングされた映像データ(例えば、映像データのエンコードされたブロック)を含んでもよい。エントロピーデコーディングユニット301は、エントロピーコーディングされた映像データをデコードし、エントロピーデコードされた映像データから、動き補償ユニット302は、動きベクトル、動きベクトル精度、参照ピクチャリストインデックス、および他の動き情報を含む動き情報を決定してもよい。動き補償ユニット302は、例えば、AMVPおよびマージモードを行うことで、このような情報を判定してもよい。
動き補償ユニット302は、動き補償されたブロックを生成してもよく、場合によっては、補間フィルタに基づいて補間を行う。構文要素には、サブピクセルの精度で使用される補間フィルタのための識別子が含まれてもよい。
動き補償ユニット302は、映像ブロックのエンコーディング中に映像エンコーダ200によって使用されるような補間フィルタを使用して、参照ブロックのサブ整数画素のための補間値を計算してもよい。動き補償ユニット302は、受信した構文情報に基づいて、映像エンコーダ200が使用する補間フィルタを決定し、補間フィルタを使用して予測ブロックを生成してもよい。
動き補償ユニット302は、エンコードされた映像シーケンスのフレームおよび/またはスライスをエンコードするために使用されるブロックのサイズを判定するための構文情報、エンコードされた映像シーケンスのピクチャの各マクロブロックがどのように分割されるかを記述する分割情報、各分割がどのようにエンコードされるかを示すモード、各インターエンコードされたブロックに対する1つ以上の参照フレーム(および参照フレームリスト)、およびエンコードされた映像シーケンスをデコードするための他の情報のいくつかを使用してもよい。
イントラ予測ユニット303は、例えば、ビットストリームにおいて受信したイントラ予測モードを使用して、空間的に隣接するブロックから予測ブロックを形成してもよい。逆量子化ユニット303は、ビットストリームに提供され、エントロピーデコーディングユニット301によってデコードされた量子化された映像ブロック係数を逆量子化(すなわち、逆量子化)する。逆変換ユニット303は、逆変換を適用する。
再構成ユニット306は、残差ブロックと、動き補償ユニット202またはイントラ予測ユニット303によって生成された対応する予測ブロックとを合計し、デコードされたブロックを形成してもよい。所望であれば、ブロックアーチファクトを除去するために、デコードされたブロックをフィルタリングするためにデブロッキングフィルタを適用してもよい。デコードされた映像ブロックは、バッファ307に記憶され、バッファ307は、後続の動き補償/イントラ予測のために参照ブロックを提供し、表示デバイスに表示するためにデコードされた映像を生成する。
次に、いくつかの実施形態において好適な例を列挙する。
第1のセットの項は、前章に記載された技術の例示的な実施形態を示す。以下の項は、前章に記載された技術の例示的な実施形態を示す(例えば、項目1)。
1.1つ以上の彩度成分を有する映像であって、1つ以上のスライスを含む1つ以上の映像ピクチャを含む前記映像と、前記映像のコーディングされた表現との間で変換を行う(3002)ことを含み、前記コーディングされた表現はフォーマット規則に準拠し、前記フォーマット規則は、前記変換中に用いられる彩度の変換特性に対する制約を彩度配列タイプフィールドが制御することを規定する、映像処理方法(例えば、図3に示す方法3000)。
2.前記変換特性は、前記1つ以上の彩度成分に対する1つ以上のスケーリングリストの存在を示すフィールドに対する制約を含む、項1に記載の方法。
3.前記変換特性は、彩度スケーリングを伴う輝度マッピングを信号通知するために使用されるコードワードを示すフィールドの値に対する制約を含む、項1に記載の方法。
4.前記変換特性は、前記変換中に使用される適応ループフィルタセットのための適応パラメータを記述する構文要素の値に対する制約を含む、項1に記載の方法。
5.前記フォーマット規則は、4:0:0フォーマットまたは別個のカラーコーディングフォーマットを信号通知する前記彩度アレイタイプフィールドに対して、1つ以上の適応パラメータセットのエントリと同じ意味論を使用することを規定する、項1に記載の方法。
6.前記1つ以上のエントリは、適応ループフィルタパラメータ、またはスケーリングリストパラメータ、または彩度スケーリングパラメータを用いた輝度マッピングを含む、項5に記載の方法。
7.前記フォーマット規則は、前記適応パラメータセットの前記1つ以上のエントリに対する制約が、前記適応パラメータセットの識別子が前記ビットストリームに含まれているかどうかに依存することをさらに規定する、項5~6に記載の方法。
以下の項は、前章に記載された技術の例示的な実施形態を示す(例えば、項目2)。
8.1つ以上の映像領域を含む1つ以上の映像ピクチャを含む映像と、前記映像のコーディングされた表現との間で変換を行うことを含み、前記コーディングされた表現は、前記変換中に前記映像領域にデブロッキングフィルタを適用可能であることを示す映像領域のためのデブロッキングモードインジケータを含めることを規定するフォーマット規則に準拠する、映像処理方法。
9.前記デブロッキングモードインジケータは、Nビットフィールドであり、ここで、Nは、1よりも大きい整数である、項8に記載の方法。
10.前記映像領域の前記デブロッキングモードインジケータは、ピクチャパラメータセットに含まれる、項8~9のいずれかに記載の方法
11.前記デブロッキングモードインジケータは、前記デブロッキングフィルタが前記映像領域に適用可能であることを示す、前記映像領域のヘッダに含まれるフラグに対応する、項8に記載の方法。
12.前記フォーマット規則は、前記デブロッキングモードインジケータにおいて信号通知されたデブロッキングフィルタパラメータがデフォルトパラメータをオーバーライドするかどうかを信号通知するフラグを規定する、項8~11のいずれかに記載の方法。
13.前記映像領域は、映像ピクチャまたは映像スライスに対応する、項8~12のいずれかに記載の方法。
以下の項は、前章に記載された技術の例示的な実施形態を示す(例えば、項目3)。
14.1つ以上の映像スライスおよび/または1つ以上の映像サブピクチャを含む1つ以上の映像ピクチャと、前記映像のコーディングされた表現との間で変換を行うことを含み、前記コーディングされた表現は、前記映像ピクチャに対してピクチャ分割が無効である場合に、サブピクチャごとの単一スライスモードを映像ピクチャに対して有効とみなされるかどうかを示すフラグを規定するフォーマット規則に準拠している、映像処理方法。
以下の項は、前章に記載された技術の例示的な実施形態を示す(例えば、項目4)。
15.1つ以上の映像スライスを含む1つ以上の映像ピクチャを含む映像と、前記映像のコーディングされた表現との間で変換を行うことを含み、前記コーディングされた表現は、ピクチャヘッダまたはスライスヘッダにおいてピクチャまたはスライスレベルの彩度量子化パラメータオフセットを信号通知することを規定するフォーマット規則に準拠している、映像処理方法。
16.前記フォーマット規則は、スライスレベルの彩度量子化パラメータオフセットを前記スライスヘッダに含めるように規定する、項15に記載の方法。
以下の項は、前章に記載された技術の例示的な実施形態を示す(例えば、項目5)。
17.映像処理方法は、以下を含む。
1つ以上の映像スライスを含む1つ以上の映像ピクチャからなる映像と、前記映像のコーディングされた表現との間の変換を実行するステップであって、前記コーディングされた表現は、前記映像の映像ブロックの変換に適用される彩度量子化パラメータ(QP)テーブルが(delta_qp_inval_minus1[i][j]+1)およびdelta_qp_diff_val[i][j]とのXOR動作として導出されると定めるフォーマット規則に従って行われ、delta_qp_in_val_minus1[i][j]はi番目の彩度マッピングテーブルのj番目のピボットポイントの入力座標の導出に用いるデルタ値を指定し、delta_qp_diff_val[i][j]はi番目の彩度QPマッピングテーブルのj番目のピボットポイントの出力座標の導出に用いるデルタ値を指定し、iおよびjは整数である。
18.前記変換は、前記映像を前記コーディングされた表現にエンコーディングすることを含む、項1~17のいずれかに記載の方法。
19.前記変換は、前記映像の画素値を生成すべく前記コーディングされた表現をデコーディングすることを含む、項1~17のいずれかに記載の方法。
20.項1~19の1つ以上に記載の方法を実装するように構成されたプロセッサを備える、映像デコーディング装置。
21.項1~19の1つ以上に記載の方法を実装するように構成されたプロセッサを備える映像エンコーディング装置。
22.コンピュータコードが記憶されたコンピュータプログラム製品において、前記コードがプロセッサにより実行されると、前記プロセッサは、項1~19のいずれかに記載の方法を実装する。
23.本明細書に記載の方法、装置またはシステム。
第2のセットの項は、前章に記載された技術の例示的な実施形態を示す(例えば、項目2,4,5、および6)。
1.フォーマット規則に従って、1つのピクチャを含む映像と、この映像のビットストリームとの間で変換を行うこと702を含み、前記フォーマット規則は、サブピクチャの境界をまたぐループフィルタリングへの制約を示すシーケンスパラメータセットの構文要素の存在が、ピクチャ内のサブピクチャの数が1より大きいかどうかに基づく、映像処理方法(例えば、図7Aに示す方法700)。
2.前記構文要素が一定の値に等しいことは、コーディングされたレイヤの映像シーケンスにおけるすべてのサブピクチャの境界をピクチャの境界として扱い、サブピクチャの境界をまたいでループフィルタリングを行わないことを規定する、項1に記載の方法。
3.前記構文要素は、sps_independent_subpics_flagである、項1または2に記載の方法。
4.前記構文要素は、前記ピクチャにおけるサブピクチャの数が1よりも大きい場合にのみ存在する、項1~3のいずれかに記載の方法。
5.ピクチャ内のサブピクチャの数が1に等しい場合、構文要素が存在しない、項目1~4のいずれかに記載の方法。
6.前記フォーマット規則は、構文要素が存在しない場合、前記構文要素の値が前記一定の値に等しいと推論されることを規定する、項2に記載の方法。
7.前記特定の値が1に等しい、項2または6に記載の方法。
8.前記フォーマット規則は、構文要素が存在しない場合、前記構文要素の値が別の構文要素に基づいて推論されることを規定する、項1に記載の方法。
9.別の構文要素は、サブピクチャ情報が存在するかどうかを示すサブピクチャ情報存在フラグに対応する、項5に記載の方法。
10.サブピクチャ情報が存在するかどうかを示すサブピクチャ情報存在フラグの値に基づいて、構文要素の値を推論する、項5に記載の方法。
11.フォーマット規則に従って1以上のピクチャを含む映像とこの映像のビットストリームとの間で変換を行うこと712を含み、このフォーマット規則は、存在しない構文要素の値をどのように推論するかを規定し、この構文要素は、インループフィルタリング動作を排除するサブピクチャをピクチャとして扱うことに関する、映像処理方法(例えば、図7Bに示す方法710)。
12.前記構文要素は、コーディングされたレイヤの映像シーケンスにおける各ピクチャのi番目のサブピクチャを処理するかどうかを、インループフィルタリング動作を除くエンコーディング処理またはデコーディング処理におけるピクチャとして扱うことを示す、項11に記載の方法。
13.前記構文要素は、subpic_treated_as_pic_flag[i]である、項11または12に記載の方法。
14.コーディングされたピクチャ前記フォーマット規則は、構文要素が存在しない場合、前記構文要素の値が、コーディングされたレイヤの映像シーケンスにおける各コーディングピクチャのi番目のサブピクチャを規定する一定の値に等しいと推論されることを規定し、インループフィルタリング動作を除くエンコーディング処理またはデコーディング処理においてピクチャとして扱われる、項11または項13に記載の方法。
15.前記特定の値が1に等しい、項14に記載の方法。
16.構文要素が存在しない場合、構文要素の値が一定の値に等しいと推論され、ラップアラウンド動き補償を有効化する、項11~13のいずれかに記載の方法。
17.構文要素が存在しない場合、構文要素の値が一定の値に等しいと推論され、水平ラップアラウンド動き補償を有効化する、項11~13のいずれかに記載の方法。
18.前記フォーマット規則は、ピクチャが1つのサブピクチャのみからなるかおよび/または1つのサブピクチャが前記ピクチャと同じ幅を有するかどうかに基づいて、前記構文要素の値を推論することを規定する、項11~13に記載の方法。
19.前記フォーマット規則は、i)サブピクチャ情報および/またはii)コーディングされたレイヤの映像シーケンスにおけるサブピクチャの数および/またはiii)サブピクチャの境界をまたがるループフィルタリングの制約を示すシーケンスパラメータセットにおける別の構文要素に基づいて、前記構文要素の値を推論することを規定する、項11~13に記載の方法。
20.フォーマット規則に従って、1つ以上の映像領域を含む映像とこの映像のビットストリームとの間で変換を行うこと722を含み、このフォーマット規則は、シーケンスパラメータセットが、映像領域に適用可能なデブロッキングフィルタのパラメータに関する構文要素を含むことを規定する、映像処理方法(例えば、図7Cに示す方法720)
21.前記構文要素は、前記デブロッキングフィルタの前記映像領域への適用可能性を規定する構文要素を含む、項20に記載の方法。
22.前記フォーマット規則は、シーケンスパラメータセットにおいてデブロッキングフィルタが無効化されている場合、ピクチャパラメータセットにおける1つの構文要素、1つのピクチャヘッダ、このデブロッキングフィルタ制御に関する1つのスライスヘッダが、このデブロッキングフィルタが完全に無効化されており、かつすべてのスライスに対して使用されないことを規定する一定の値に等しい値を有することを規定する、項20または21に記載の方法。
23.前記構文要素は、前記構文要素の存在を規定するデブロッキングフィルタ制御存在フラグを含む、項20に記載の方法。
24.前記構文要素は、Nが1より大きい整数であるNビットフィールドであるデブロッキングモード指標を含む、項20に記載の方法。
25.前記構文要素は、デブロッキングパラメータtおよびβの値を含む、項20に記載の方法。
26.前記フォーマット規則は、前記シーケンスパラメータセットにおける前記構文要素が、0値デブロッキングパラメータで前記デブロッキングフィルタを有効化するかどうかを制御することを規定する、項20に記載の方法。
27.前記フォーマット規則は、シーケンスパラメータセットレベルまたはピクチャパラメータセットレベルまたはピクチャヘッダレベルまたはスライスヘッダレベルで前記デブロッキングフィルタを適用し、かつ前記シーケンスパラメータセットに含まれるデブロッキングパラメータを使用することを規定する、項20に記載の方法。
28.前記フォーマット規則は、シーケンスパラメータセットレベルまたはピクチャパラメータセットレベルまたはピクチャヘッダレベルまたはスライスヘッダレベルで前記デブロッキングフィルタを適用し、かつ前記シーケンスパラメータセットに含まれる0値のデブロッキングパラメータを使用することを規定する、項20に記載の方法。
29.フォーマット規則に従って、1以上のスライスを含む1以上のピクチャを含む映像とこの映像のビットストリームとの間で変換を行うことを含み、フォーマット規則は、特定の条件が満たされた場合、ピクチャヘッダおよびスライスヘッダの両方に輝度量子化パラメータデルタ情報および/または彩度量子化パラメータオフセットを含むことを規定する、映像処理方法(例えば、図7Dに示す方法730)。
30.前記フォーマット規則は、前記ピクチャパラメータセット、ピクチャヘッダ、またはスライスヘッダのうち少なくとも1つに、前記輝度量子化パラメータデルタ情報の存在を示す輝度量子化パラメータデルタ存在フラグが含まれることをさらに規定する、項29に記載の方法。
31.前記特定の条件が満たされるかどうかは、輝度量子化パラメータデルタ存在フラグに依存する、項30に記載の方法。
32.前記フォーマット規則は、前記ピクチャヘッダおよび前記スライスヘッダにおける前記輝度量子化パラメータデルタ情報の値は、輝度量子化パラメータの算出に使用する付加物であることを規定する項30または31に記載の方法。
33.前記フォーマット規則は、彩度量子化パラメータオフセットの存在を示す彩度量子化パラメータオフセット存在フラグが、前記ピクチャパラメータセット、前記ピクチャヘッダ、または前記スライスヘッダのうち少なくとも1つに含まれることをさらに規定する、項29に記載の方法。
34.前記特定の条件が満たされるかどうかは、彩度量子化パラメータオフセット存在フラグに依存する、項33に記載の方法。
35.前記フォーマット規則は、前記ピクチャヘッダおよび前記スライスヘッダにおける前記彩度量子化パラメータオフセットの値が、彩度量子化パラメータを算出するために付加的に使用されることを規定する、項33に記載の方法。
36.フォーマット規則に従って、1つ以上の映像スライスを含む1つ以上の映像ピクチャを含む映像と、前記映像のビットストリームとの間で変換を行うことを含み、前記フォーマット規則は、前記映像の映像ブロックの変換に適用される彩度量子化パラメータ(QP)テーブルが(delta_qp_inval_minus1[i][j]+1)とdelta_qp_diff_val[i][j]との間のXOR演算として導出されることを規定し、
ここで、delta_qp_in_val_minus1[i][j]は、前記i番目の彩度マッピングテーブルの前記j番目のピボットポイントの前記入力座標を導出するために用いられるデルタ値を規定し、delta_qp_diff_val[i][j]は、i番目の彩度QPマッピングテーブルのj番目のピボットポイントの前記出力座標を導出するために用いられるデルタ値を規定し、iおよびjは整数である、映像処理方法。
37.フォーマット規則に従って、1以上の映像スライスを含む1以上の映像ピクチャを含む映像と、この映像のビットストリームとの間で変換を行うこと742を含み、このフォーマット規則は、シーケンスパラメータセットに複数の彩度量子化パラメータテーブルのセットが存在することを示すフラグを含めることを規定する、映像処理方法(例えば図7Eに示す方法740)。
38.前記フォーマット規則は、前記彩度量子化パラメータテーブルの1つのセットのみが信号通知されることを許可される場合、前記フラグが0に等しいことを規定する、項37に記載の方法。
39.前記フォーマット規則は、前記彩度量子化パラメータテーブルの複数のセットが信号通知されることを許可される場合、前記フラグが1に等しいことを規定する、項目37に記載の方法。
40.フォーマット規則に従って1以上の映像スライスを含む1以上の映像ピクチャを含む映像と、この映像のビットストリームとの間で変換を行うことを含み、このフォーマット規則は、特定のタイプのスライスを含まないシーケンスのために、シーケンスに対して複数の彩度量子化パラメータテーブルのセットの指示を無効化することを規定する、映像処理方法(図7Fに示す方法750)
41.前記特定のタイプがBスライスタイプである、項40に記載の方法。
42.前記特定のタイプがPスライスタイプである、項40に記載の方法。
43.変換は、映像をビットストリームに符号化することを含む、項1~42のいずれかに記載の方法。
44.前記変換は、前記ビットストリームから前記映像をデコーディングすることを含む、項1から42までのいずれかに記載の方法。
45.前記変換は、映像から前記ビットストリームを生成することを含み、前記方法は、前記ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、項1~42のいずれかに記載の方法。
46.項1から45のいずれか1つ以上に記載された方法を実施するように構成されたプロセッサを含む映像処理装置。
47.項1から45のいずれか1つに記載の方法と、ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、映像のビットストリームを記憶する方法。
48.実行されると、項1から45のいずれか1つ以上に記載された方法をプロセッサに実施させるプログラムコードを格納したコンピュータ可読媒体。
49.上述した方法のいずれかに従って生成されたビットストリームを記憶するコンピュータ可読媒体。
50.項1から45のいずれか1つ以上に記載の方法を実装するように構成された、ビットストリーム表現を記憶するための映像処理装置。
第3のセットの項は、前章に記載された技術の例示的な実施形態を示す(例えば、項目7~9)。
1.映像の映像領域と映像のビットストリームとの間で変換を行うために、フォーマット規則に従って、映像領域の境界におけるインター予測処理のためにどのようにパディングまたはクリッピングを行うかを決定すること802と、この決定に基づいてこの変換を行うこと804とを含み、この規則は、(a)境界のタイプ、(b)ラップアラウンド動き補償が有効化されているかどうかを示す第1のパラメータ、または(c)サブピクチャの境界をピクチャの境界として扱うかどうかを示す第2のパラメータのうちの少なくとも2つに基づく、映像処理方法(例えば、図8Aに示す方法800)。
2.前記規則は、境界がピクチャの境界であり、かつ第1のパラメータが一定の値に等しい場合、第2のパラメータを考慮せずに、インター予測処理中にラップアラウンド動き補償を適用することを規定する、項1に記載の方法。
3.前記境界が垂直境界である、項1または2に記載の方法。
4.前記境界タイプがピクチャの境界である、項1または2に記載の方法。
5.前記境界タイプがサブピクチャの境界である、項1または2に記載の方法。
6.第1のパラメータは、ピクチャパラメータセットを参照するピクチャに対して水平ラップアラウンド動き補償を有効化するかどうかを規定する、ピクチャパラメータセットレベルの構文フラグである。項1または2に記載の方法。
7.前記第2のパラメータは、コーディングされたレイヤの映像シーケンスにおける各コーディングピクチャのサブピクチャを、インループフィルタリング動作を除くデコーディング処理においてピクチャとして扱うかどうかを規定するシーケンスパラメータセットにおける構文フラグである、項1または2に記載の方法。
8.前記規則は、両方の垂直境界がピクチャの境界であり、かつ第1のパラメータが一定の値に等しい場合、第2のパラメータを考慮せずに、インター予測処理中にラップアラウンド動き補償を適用することを規定する、項1に記載の方法。
9.前記ラップアラウンド動き補償は、水平ラップアラウンドパディングまたはクリッピングを示す、項1~8のいずれかに記載の方法。
10.フォーマット規則に従って、1つ以上のピクチャを有する映像とこの映像のビットストリームとの間の変換を行うこと812を含み、このフォーマット規則は、1つのピクチャのサブピクチャをラップアラウンドパディングまたはクリッピングするためのオフセットを1つのサブピクチャレベルで規定することを規定する、映像処理方法(例えば、図8Bに示す方法810)。
11.前記フォーマット規則は、前記サブピクチャのためのラップアラウンドパディングまたはクリッピングのための異なる指示を含むように規定する、項10に記載の方法。
12.前記フォーマット規則は、前記サブピクチャのためのラップアラウンドパディングまたはクリッピングのための異なるオフセットを含むように規定する、項10に記載の方法。
13.変換は、映像をビットストリームにエンコーディングすることを含む、項1から12のいずれかに記載の方法。
14.前記変換は、前記ビットストリームから前記映像をデコーディングすることを含む、項1から12までのいずれか1項に記載の方法。
15.前記変換は、映像から前記ビットストリームを生成することを含み、前記方法は、前記ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、項1~57のいずれかに記載の方法。
16.項1から15のいずれか1つ以上に記載された方法を実施するように構成されたプロセッサを含む映像処理装置。
17.項1から15のいずれか1つに記載の方法と、ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、映像のビットストリームを記憶する方法。
18.実行されると、項1から15のいずれか1つ以上に記載された方法をプロセッサに実施させるプログラムコードを格納したコンピュータ可読媒体。
19.上述した方法のいずれかに従って生成されたビットストリームを記憶するコンピュータ可読媒体。
20.項1から15のいずれか1つ以上に記載の方法を実装するように構成された、ビットストリームを記憶するための映像処理装置。
第4のセットの項は、前章に記載された技術の例示的な実施形態を示す(例えば、項目10)。
1.フォーマット規則に従って、1つ以上の映像領域を有する映像とこの映像のビットストリームとの間の変換を行うこと902を含み、このフォーマット規則は、変数Xが映像領域においてBスライスが許可されるかまたは使用されるかを示すことを規定し、このフォーマット規則はさらに、この変数Xが参照ピクチャリスト情報存在フラグの値および/または参照ピクチャリスト構文構造におけるエントリの数を示すフィールドに基づくことを規定する、映像処理方法(例えば、図9に示す方法900)。
2.前記映像領域は、ピクチャまたはスライスに対応する、項1に記載の方法。
3.前記参照ピクチャリスト情報存在フラグがピクチャヘッダにある、項1または2に記載の方法。
4.参照ピクチャリスト情報存在フラグがrpl_info_in_ph_flagであり、参照ピクチャリスト構文構造におけるエントリの数を示すフィールドがnum_ref_entries[i][RplsIdx[i]]であり、変数Xが以下のうちの少なくとも1つを使用して導出される、項1から3のいずれかに記載の方法。
a)(rpl_info_in_ph_flag&&num_ref_entries[0][RplsIdx[0]]>0&&num_ref_entries[1][RplsIdx[1]]>0);
b)(rpl_info_in_ph_flag&&num_ref_entries[1][RplsIdx[1]]>0);
c)(rpl_info_in_ph_flag&&num_ref_entries[1][RplsIdx[1]]>1);
d)(rpl_info_in_ph_flag&&num_ref_entries[1][RplsIdx[1]]>0);
e)スライスに使用されるアクティブな参照インデックスの数に基づく。
f)リスト1のための許可された参照ピクチャの数に基づいて、iが整数である。
5.前記フォーマット規則は、ピクチャヘッダに対応する構文構造に含まれる1以上の構文要素の信号通知および/または意味論および/または推論が変数Xに依存することをさらに規定する、項1~4のいずれかに記載の方法。
6.前記1以上の構文要素は、2つ以上の予測信号を必要とするコーディングツールを有効化する、項5に記載の方法。
7.前記コーディングツールは、双方向予測、イントラおよびインター混合コーディング、または複数の予測ブロックからの線形または非線形重み付けを伴う予測に対応する、項6に記載の方法。
8.前記1以上の構文要素は、時間的動きベクトル予測に使用される同一位置に配置されたピクチャが参照ピクチャリスト0または参照ピクチャリスト1から導出したものであるかどうかを示す第1の構文要素と、リスト1の動きベクトル差分コーディング構文構造を構文解析するかどうかを示す第2の構文要素と、双方向オプティカルフローコーディングが無効化されているかどうかを示す第3の構文要素と、デコーダ側動きベクトル微調整が無効化されているかどうかを示す第4の構文要素と、参照ピクチャリスト1のエントリに対して信号通知された重みの数を示す第5の構文要素とを含む、項6に記載の方法。
9.前記第1の構文要素はph_collocated_from_10_flagに対応し、第2の構文要素はph_mvd_l1_zero_flagに対応し、第2の構文要素は、ph_disable_bdof_flagに対応し、第3の構文要素は、ph_disable_bdof_flagに対応し、第4の構文要素は、ph_disable_dmvr_flagに対応し、第5の構文要素は、num_l1_weightsに対応する、項8に記載の方法。
10.前記フォーマット規則は、変数Xがピクチャが1以上のBスライスを含むことを示す場合にのみ、1以上の構文要素が含まれることをさらに規定する、項5に記載の方法。
11.前記フォーマット規則は、変数XがピクチャがBスライスを含まないことを示す場合に、1以上の構文要素をスキップすることをさらに規定する、項5に記載の方法。
12.前記フォーマット規則は、前記1以上の構文要素を信号通知するかどうかは前記変数Xに基づくことをさらに規定する、項5に記載の方法。
13.前記フォーマット規則は、変数Xが0であり、かつ動きベクトル差分コーディング構文構造を構文解析するかどうかを示す構文要素を信号通知しない場合、前記構文要素の値が一定の値に等しいと推論することをさらに規定する、項5に記載の方法。
14.前記フォーマット規則は、“rpl_info_in_ph_flag”に設定されている変数Xが0に等しい場合、前記構文要素の値が1に等しいと推論されることをさらに規定する、項13の方法。
15.前記フォーマット規則は、“num_ref_entries[1][RplsIdx[1]]>0”に設定されている変数Xが0に等しい場合、前記構文要素の値が1に等しいと推論されることをさらに規定する、項13の方法。
16.前記フォーマット規則は、前記構文要素の推論が前記変数Xの値に依存することをさらに規定する、項5に記載の方法。
17.前記1以上の構文要素は、双方向オプティカルフローコーディングが無効化されているかどうかを示すPH(ピクチャヘッダ)構文要素を含み、前記フォーマット規則は、変数Xの値に基づいて前記PH構文要素の値を推論することを規定する、項16に記載の方法。
18.前記1以上の構文要素は、デコーダ側動きベクトル微調整が無効化されているかどうかを示すPH(ピクチャヘッダ)構文要素を含み、前記フォーマット規則は、変数Xの値に基づいて前記PH構文要素の値を推論することを規定する、項16に記載の方法。
19.前記1以上の構文要素は、時間的動きベクトル予測に使用される同一位置に配置されたピクチャが参照ピクチャリスト1または参照ピクチャリスト0から導出されたものであるかを示すPH(ピクチャヘッダ)構文要素を含み、かつ、前記フォーマット規則は、PH構文要素の値は、(1)時間的動きベクトル予測子の適用可能性を示す別のPH構文要素の値が1に等しい、(2)ピクチャヘッダ内の参照ピクチャリスト情報存在フラグの値が1に等しい、かつ(3)変数Xの値が0に等しいことを満たす場合に、一定の値に等しいと推論される、項16に記載の方法。
20.前記PH(ピクチャヘッダ)構文要素の前記値は、(1)時間的動きベクトル予測子がピクチャに対する適用可能性を示す別のPH構文要素の値が1に等しい、(2)ピクチャヘッダ内の参照ピクチャリスト情報存在フラグの値が1に等しい、かつ(3)“num_ref_entries[1][RplsIdx[1]]>0”に設定されている変数Xが0に等しいことを満たす場合に0に等しいと推論される、請求項19に記載の方法。
21.前記1以上の構文要素は、参照ピクチャリスト1のエントリに信号通知される重みの数を示すPH(ピクチャヘッダ)構文要素を含み、前記フォーマット規則は、変数Xが一定の値に等しい場合、前記PH構文要素の値が一定の値に等しいと推論されることを規定する、項16に記載の方法。
22.“num_ref_entries[1][RplsIdx[1]]>0”に設定されている前記変数Xが0に等しい場合、PH構文要素の値が0であると推論される、項21に記載の方法。
23.PH構文要素の値が0に等しいと推論される場合、参照ピクチャリスト1のための重み付け予測パラメータは、ピクチャのピクチャヘッダまたはスライスヘッダに信号通知されない、項22に記載の方法。
24.変換は、映像をビットストリームにエンコーディングすることを含む、項1から23のいずれかに記載の方法。
25.前記変換は、前記ビットストリームから前記映像をデコーディングすることを含む、項1から23までのいずれかに記載の方法。
26.前記変換は、映像から前記ビットストリームを生成することを含み、前記方法は、前記ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、項1~23のいずれかに記載の方法。
27.項目1から26のいずれか1つ以上に記載された方法を実施するように構成されたプロセッサを含む映像処理装置。
28.項目1から26のいずれか1つに記載の方法と、ビットストリームを非一時的なコンピュータ可読記録媒体に記憶することをさらに含む、映像のビットストリームを記憶する方法。
29.実行されると、項1から26までのいずれか1つ以上に記載された方法をプロセッサに実施させるプログラムコードを格納したコンピュータ可読媒体。
30.上述した方法のいずれかに従って生成されたビットストリームを記憶するコンピュータ可読媒体。
31.項1から26のうちの1つ以上に記載の方法を実装するように構成された、ビットストリーム表現を記憶するための映像処理装置。
本明細書では、「映像処理」という用語は、映像エンコーディング、映像デコーディング、映像圧縮、または映像展開を指してよい。例えば、映像圧縮アルゴリズムは、映像の画素表現から対応するビットストリーム表現への変換、またはその逆の変換中に適用されてもよい。現在の映像ブロックのビットストリーム表現は、例えば、構文によって規定されるように、ビットストリーム内の同じ場所または異なる場所に拡散されるビットに対応していてもよい。例えば、1つのマクロブロックは、変換およびコーディングされた誤り残差値の観点から、かつビットストリームにおけるヘッダおよび他のフィールドにおけるビットを使用してエンコードされてもよい。さらに、変換中、デコーダは、上記解決策で説明されているように、判定に基づいて、いくつかのフィールドが存在しても存在しなくてもよいという知識を持って、ビットストリームを構文解析してもよい。同様に、エンコーダは、特定の構文フィールドが含まれるべきであるか、または含まれないべきであるかを判定し、構文フィールドをコーディングされた表現に含めるか、またはコーディング表現から除外することによって、それに応じてコーディングされた表現を生成してもよい。
本明細書に記載された開示された、およびその他の解決策、実施例、実施形態、モジュール、および機能動作の実装形態は、本明細書に開示された構造およびその構造的等価物を含め、デジタル電子回路、またはコンピュータソフトウェア、ファームウェア、若しくはハードウェアで実施されてもよく、またはそれらの1つ以上の組み合わせで実施してもよい。開示された、およびその他の実施形態は、1または複数のコンピュータプログラム製品、すなわち、データ処理装置によって実装されるため、またはデータ処理装置の動作を制御するために、コンピュータ可読媒体上にエンコードされたコンピュータプログラム命令の1または複数のモジュールとして実施することができる。このコンピュータ可読媒体は、機械可読記憶デバイス、機械可読記憶基板、メモリデバイス、機械可読伝播信号をもたらす物質の組成物、またはこれらの1または複数の組み合わせであってもよい。「データ処理装置」という用語は、例えば、プログラマブルプロセッサ、コンピュータ、または複数のプロセッサ、若しくはコンピュータを含む、データを処理するためのすべての装置、デバイス、および機械を含む。この装置は、ハードウェアの他に、当該コンピュータプログラムの実行環境を作るコード、例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはこれらの1または複数の組み合わせを構成するコードを含むことができる。伝播信号は、人工的に生成した信号、例えば、機械で生成した電気、光、または電磁信号であり、適切な受信装置に送信するための情報をエンコードするために生成される。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプト、またはコードとも呼ばれる)は、コンパイルされた言語または解釈された言語を含む任意の形式のプログラミング言語で記述することができ、また、それは、スタンドアロンプログラムとして、またはコンピューティング環境で使用するのに適したモジュール、コンポーネント、サブルーチン、または他のユニットとして含む任意の形式で展開することができる。コンピュータプログラムは、必ずしもファイルシステムにおけるファイルに対応するとは限らない。プログラムは、他のプログラムまたはデータを保持するファイルの一部(例えば、マークアップ言語文書に格納された1または複数のスクリプト)に記録されていてもよいし、当該プログラム専用の単一のファイルに記憶されていてもよいし、複数の調整ファイル(例えば、1または複数のモジュール、サブプログラム、またはコードの一部を格納するファイル)に記憶されていてもよい。コンピュータプログラムを、1つのコンピュータで実行するように展開することができ、あるいは、1つのサイトに位置する、または複数のサイトにわたって分散され通信ネットワークによって相互接続される複数のコンピュータで実行するように展開することができる。
本明細書に記載された処理およびロジックフローは、入力データ上で動作し、出力を生成することによって機能を行うための1つ以上のコンピュータプログラムを実行する1つ以上のプログラマブルプロセッサによって行うことができる。処理およびロジックフローはまた、特定用途のロジック回路、例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって行うことができ、装置はまた、特別目的のロジック回路として実装することができる。
コンピュータプログラムの実行に適したプロセッサは、例えば、汎用および専用マイクロプロセッサの両方、並びに任意の種類のデジタルコンピュータの任意の1つ以上のプロセッサを含む。一般的に、プロセッサは、リードオンリーメモリまたはランダムアクセスメモリまたはその両方から命令およびデータを受信する。コンピュータの本質的な要素は、命令を実行するためのプロセッサと、命令およびデータを記憶するための1つ以上の記憶デバイスとである。一般的に、コンピュータは、データを記憶するための1または複数の大容量記憶デバイス、例えば、磁気、光磁気ディスク、または光ディスクを含んでもよく、またはこれらの大容量記憶デバイスからデータを受信するか、またはこれらにデータを転送するように動作可能に結合されてもよい。しかしながら、コンピュータは、このようなデバイスを有する必要はない。コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体は、あらゆる形式の不揮発性メモリ、媒体、およびメモリデバイスを含み、例えば、EPROM、EEPROM、フラッシュメモリデバイス、磁気ディスク、例えば内部ハードディスクまたはリムーバブルディスク、光磁気ディスク、およびCD-ROMおよびDVD-ROMディスク等の半導体メモリデバイスを含む。プロセッサおよびメモリは、特定用途のロジック回路によって補完されてもよく、または特定用途のロジック回路に組み込まれてもよい。
本特許明細書は多くの詳細を含むが、これらは、任意の主題の範囲または特許請求の範囲を限定するものと解釈されるべきではなく、むしろ、特定の技術の特定の実施形態に特有であり得る特徴の説明と解釈されるべきである。本特許文献において別個の実施形態のコンテキストで説明されている特定の特徴は、1つの例において組み合わせて実装してもよい。逆に、1つの例のコンテキストで説明された様々な特徴は、複数の実施形態において別個にまたは任意の適切なサブコンビネーションで実装してもよい。さらに、特徴は、特定の組み合わせで作用するものとして上記に記載され、最初にそのように主張されていてもよいが、主張された組み合わせからの1つ以上の特徴は、場合によっては、組み合わせから抜粋されることができ、主張された組み合わせは、サブコンビネーションまたはサブコンビネーションのバリエーションに向けられてもよい。
同様に、動作は図面において特定の順番で示されているが、これは、所望の結果を達成するために、このような動作が示された特定の順番でまたは連続した順番で行われること、または示された全ての動作が行われることを必要とするものと理解されるべきではない。また、本特許明細書に記載されている実施形態における様々なシステムの構成要素の分離は、全ての実施形態においてこのような分離を必要とするものと理解されるべきではない。
いくつかの実装形態および実施例のみが記載されており、この特許文献に記載され図示されているコンテンツに基づいて、他の実施形態、拡張および変形が可能である。

Claims (16)

  1. フォーマット規則に従って、1以上の映像領域を含む映像と前記映像のビットストリームとの間の変換を行うことを含み、
    前記フォーマット規則が、第1の構文要素が、前記1以上の映像領域の1つの映像領域に対して双方向オプティカルフローインター予測に基づくインター双予測が無効化されているかどうかを示すことを規定し、
    前記フォーマット規則は、前記第1の構文要素のピクチャヘッダにおける存在が、前記ピクチャヘッダに参照ピクチャリスト情報が存在するかどうかを示す参照ピクチャリスト情報存在フラグである第2の構文要素と、参照ピクチャリスト構文構造のエントリの数を示す第3の構文要素との値に基づくことをさらに規定し、
    前記フォーマット規則が、時間的動きベクトル予測に使用される同一位置に配置されたピクチャが参照ピクチャリスト0または参照ピクチャリスト1のいずれから得られるかを示す第8の構文要素の前記ピクチャヘッダ内の存在が、前記第2の構文要素rpl_info_in_ph_flagの値が1に等しく、前記第3の構文要素num_ref_entries[1][RplsIdx[1]]の値が1より大きいことに少なくとも基づくことを、さらに規定し、
    前記フォーマット規則は、第9の構文要素の値が時間的動きベクトル予測子が有効であることを示し、前記第2の構文要素rpl_info_in_ph_flagの値が1に等しく、前記第3の構文要素num_ref_entries[1][RplsIdx[1]]の値が0に等しい場合、前記第8の構文要素の値が、時間的動きベクトル予測に使用される同一位置に配置されたピクチャが参照ピクチャリスト0から導出されることを示す1に等しいと推論されることを、さらに規定する、映像処理方法。
  2. 前記1以上の映像領域の前記映像領域は、ピクチャまたはスライスに対応する、請求項1に記載の方法。
  3. 前記第2の構文要素がrpl_info_in_ph_flagであり、前記第3の構文要素がnum_ref_entries[i][RplsIdx[i]]であり、iが整数であり、
    ここで、前記第1の構文要素は、少なくとも(rpl_info_in_ph_flag&&num_ref_entries[1][RplsIdx[1]]>0)に基づいて前記ピクチャヘッダに存在し、num_ref_entries[1][RplsIdx[1]]は前記参照ピクチャリスト1のためのRplsIdx[1]番目の参照ピクチャリスト構文構造におけるエントリの数を示す、請求項1に記載の方法。
  4. 前記第1の構文要素が前記ピクチャヘッダに存在することは、前記第1の構文要素の存在が許可されていることを示す第4の構文要素の値にさらに基づく、請求項3に記載の方法。
  5. 前記フォーマット規則は、デコーダ側動きベクトル微調整が無効であるかどうかを示す第5の構文要素の前記ピクチャヘッダにおける存在が、前記第2の構文要素および前記第3の構文要素の値に基づくことをさらに規定する、請求項1に記載の方法。
  6. 前記第5の構文要素が前記ピクチャヘッダ内に存在し、第6の構文要素の値が前記第5の構文要素の存在を許可することを示すとき、前記第2の構文要素rpl_info_in_ph_flagの値は1に等しく、前記第3の構文要素num_ref_entries[1][RplsIdx[1]]の値は1より大きい、請求項5に記載の方法。
  7. 前記フォーマット規則は、リスト1のための動きベクトル差分コーディング構文構造が構文解析されるかどうかを示す第7の構文要素の前記ピクチャヘッダ内の存在が、前記第2の構文要素rpl_info_in_ph_flagの値が1に等しく、前記第3の構文要素num_ref_entries[1][RplsIdx[1]]の値が1より大きいことに少なくとも基づくことを、さらに規定する、請求項1に記載の方法。
  8. 前記フォーマット規則が、参照ピクチャリスト1内のエントリに対して信号通知された重みの数を示す第10の構文要素の前記ピクチャヘッダ内の存在が、前記第2の構文要素rpl_info_in_ph_flagの値が1に等しく、前記第3の構文要素num_ref_entries[1][RplsIdx[1]]の値が1より大きいことに少なくとも基づいていることをさらに規定する、請求項1に記載の方法。
  9. 前記フォーマット規則は、サブピクチャの境界をまたいでループフィルタリングへの制約を示すシーケンスパラメータセットの第11の構文要素の存在が、ピクチャ内のサブピクチャの数が1より大きいかどうかに基づき、
    前記第11の構文要素が1に等しいことは、コーディングされたレイヤの映像シーケンスにおけるすべてのサブピクチャの境界をピクチャの境界として扱い、サブピクチャの境界をまたいでループフィルタリングを行わないことを規定し、
    前記ピクチャ内のサブピクチャの数が1に等しい場合、前記第11の構文要素が存在せず、
    前記第11の構文要素が存在しない場合、前記第11の構文要素の値は1に等しいと推論される、請求項1に記載の方法。
  10. 前記フォーマット規則は、第12の構文要素が存在しない場合、前記第12の構文要素の値は、コーディングされたレイヤの映像シーケンスにおける各コーディングされたピクチャのi番目のサブピクチャが、インループフィルタリング動作を除くエンコーディング処理またはデコーディング処理においてピクチャとして扱われることを規定する1に等しいと推論されることを、さらに規定し、iは整数である、請求項1に記載の方法。
  11. 前記フォーマット規則は、インター予測処理中に、前記1以上の映像領域の1つの映像領域の境界でどのようにクリッピングを行うかは、ピクチャパラメータセットレベルにおける第13の構文要素に基づき、ピクチャパラメータセットとシーケンスパラメータセットレベルにおける前記第12の構文要素とを参照するピクチャに対して水平ラップアラウンド動き補償が有効かどうかを規定することを、さらに規定する、請求項1に記載の方法。
  12. 前記変換は、前記映像を前記ビットストリームにエンコーディングすることを含む、
    請求項1に記載の方法。
  13. 前記変換は、前記映像を前記ビットストリームからデコーディングすることを含む、
    請求項1に記載の方法。
  14. プロセッサと、命令が記憶された非一時的メモリとを備える装置であって、前記命令が前記プロセッサによって実行されると、前記プロセッサに、
    フォーマット規則に従って、1以上の映像領域を含む映像と前記映像のビットストリームとの間の変換を行わせ、
    前記フォーマット規則が、第1の構文要素が、前記1以上の映像領域の1つの映像領域に対して双方向オプティカルフローインター予測に基づくインター双予測が無効化されているかどうかを示すことを規定し、
    前記フォーマット規則は、前記第1の構文要素のピクチャヘッダにおける存在が、前記ピクチャヘッダに参照ピクチャリスト情報が存在するかどうかを示す参照ピクチャリスト情報存在フラグである第2の構文要素と、参照ピクチャリスト構文構造のエントリの数を示す第3の構文要素との値に基づくことを、さらに規定し、
    前記フォーマット規則が、時間的動きベクトル予測に使用される同一位置に配置されたピクチャが参照ピクチャリスト0または参照ピクチャリスト1のいずれから得られるかを示す第8の構文要素の前記ピクチャヘッダ内の存在が、前記第2の構文要素rpl_info_in_ph_flagの値が1に等しく、前記第3の構文要素num_ref_entries[1][RplsIdx[1]]の値が1より大きいことに少なくとも基づくことを、さらに規定し、
    前記フォーマット規則は、第9の構文要素の値が時間的動きベクトル予測子が有効であることを示し、前記第2の構文要素rpl_info_in_ph_flagの値が1に等しく、前記第3の構文要素num_ref_entries[1][RplsIdx[1]]の値が0に等しい場合、前記第8の構文要素の値が、時間的動きベクトル予測に使用される同一位置に配置されたピクチャが参照ピクチャリスト0から導出されることを示す1に等しいと推論されることを、さらに規定する、映像データを処理するための装置。
  15. プロセッサに、フォーマット規則に従って、1以上の映像領域を含む映像と前記映像のビットストリームとの間の変換を行わせる命令を記憶する、非一時的なコンピュータ可読記憶媒体であって、
    前記フォーマット規則が、第1の構文要素が、前記1以上の映像領域の1つの映像領域に対して双方向オプティカルフローインター予測に基づくインター双予測が無効化されているかどうかを示すことを規定し、
    前記フォーマット規則は、前記第1の構文要素のピクチャヘッダにおける存在が、前記ピクチャヘッダに参照ピクチャリスト情報が存在するかどうかを示す参照ピクチャリスト情報存在フラグである第2の構文要素と、参照ピクチャリスト構文構造のエントリの数を示す第3の構文要素との値に基づくことを、さらに規定し、
    前記フォーマット規則が、時間的動きベクトル予測に使用される同一位置に配置されたピクチャが参照ピクチャリスト0または参照ピクチャリスト1のいずれから得られるかを示す第8の構文要素の前記ピクチャヘッダ内の存在が、前記第2の構文要素rpl_info_in_ph_flagの値が1に等しく、前記第3の構文要素num_ref_entries[1][RplsIdx[1]]の値が1より大きいことに少なくとも基づくことを、さらに規定し、
    前記フォーマット規則は、第9の構文要素の値が時間的動きベクトル予測子が有効であることを示し、前記第2の構文要素rpl_info_in_ph_flagの値が1に等しく、前記第3の構文要素num_ref_entries[1][RplsIdx[1]]の値が0に等しい場合、前記第8の構文要素の値が、時間的動きベクトル予測に使用される同一位置に配置されたピクチャが参照ピクチャリスト0から導出されることを示す1に等しいと推論されることを、さらに規定する、非一時的なコンピュータ可読記憶媒体。
  16. 像のビットストリームを記憶する方法であって、前記方法は、
    フォーマット規則に従って、1以上の映像領域を含む前記映像の前記ビットストリームを生成することと、
    非一時的なコンピュータ可読記録媒体に前記ビットストリームを記憶することと、
    を含み、
    前記フォーマット規則が、第1の構文要素が、前記1以上の映像領域の1つの映像領域に対して双方向オプティカルフローインター予測に基づくインター双予測が無効化されているかどうかを示すことを規定し、
    前記フォーマット規則は、前記第1の構文要素のピクチャヘッダにおける存在が、前記ピクチャヘッダに参照ピクチャリスト情報が存在するかどうかを示す参照ピクチャリスト情報存在フラグである第2の構文要素と、参照ピクチャリスト構文構造のエントリの数を示す第3の構文要素との値に基づくことを、さらに規定し、
    前記フォーマット規則が、時間的動きベクトル予測に使用される同一位置に配置されたピクチャが参照ピクチャリスト0または参照ピクチャリスト1のいずれから得られるかを示す第8の構文要素の前記ピクチャヘッダ内の存在が、前記第2の構文要素rpl_info_in_ph_flagの値が1に等しく、前記第3の構文要素num_ref_entries[1][RplsIdx[1]]の値が1より大きいことに少なくとも基づくことを、さらに規定し、
    前記フォーマット規則は、第9の構文要素の値が時間的動きベクトル予測子が有効であることを示し、前記第2の構文要素rpl_info_in_ph_flagの値が1に等しく、前記第3の構文要素num_ref_entries[1][RplsIdx[1]]の値が0に等しい場合、前記第8の構文要素の値が、時間的動きベクトル予測に使用される同一位置に配置されたピクチャが参照ピクチャリスト0から導出されることを示す1に等しいと推論されることを、さらに規定する、方法
JP2022559410A 2020-04-07 2021-04-07 高レベル構文におけるインター予測のための信号通知 Active JP7425224B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN2020083569 2020-04-07
CNPCT/CN2020/083569 2020-04-07
PCT/CN2021/085772 WO2021204136A1 (en) 2020-04-07 2021-04-07 Signaling for inter prediction in high level syntax

Publications (2)

Publication Number Publication Date
JP2023519612A JP2023519612A (ja) 2023-05-11
JP7425224B2 true JP7425224B2 (ja) 2024-01-30

Family

ID=78022404

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022559410A Active JP7425224B2 (ja) 2020-04-07 2021-04-07 高レベル構文におけるインター予測のための信号通知

Country Status (7)

Country Link
US (2) US11792435B2 (ja)
EP (1) EP4115609A4 (ja)
JP (1) JP7425224B2 (ja)
KR (1) KR102629799B1 (ja)
CN (3) CN115443653A (ja)
BR (1) BR112022020366A2 (ja)
WO (3) WO2021204136A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4080885A4 (en) 2019-12-20 2023-07-05 Wilus Institute of Standards and Technology Inc. VIDEO SIGNAL PROCESSING METHOD AND RELATED DEVICE
WO2024002185A1 (en) * 2022-06-29 2024-01-04 Douyin Vision (Beijing) Co., Ltd. Method, apparatus, and medium for video processing

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023511788A (ja) 2020-03-31 2023-03-22 ベイジン、ターチア、インターネット、インフォメーション、テクノロジー、カンパニー、リミテッド ビデオ符号化における構文要素のシグナリングのための方法および装置

Family Cites Families (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7373009B2 (en) 2005-02-09 2008-05-13 Lsi Corporation Method and apparatus for efficient transmission and decoding of quantization matrices
US9066102B2 (en) 2010-11-17 2015-06-23 Qualcomm Incorporated Reference picture list construction for generalized P/B frames in video coding
US9532066B2 (en) 2011-01-21 2016-12-27 Qualcomm Incorporated Motion vector prediction
US9001883B2 (en) 2011-02-16 2015-04-07 Mediatek Inc Method and apparatus for slice common information sharing
US9565449B2 (en) 2011-03-10 2017-02-07 Qualcomm Incorporated Coding multiview video plus depth content
US9042458B2 (en) * 2011-04-01 2015-05-26 Microsoft Technology Licensing, Llc Multi-threaded implementations of deblock filtering
DK2882190T3 (en) 2011-04-21 2019-02-18 Hfi Innovation Inc Method and apparatus for improved ring-structured filtration
US9338465B2 (en) * 2011-06-30 2016-05-10 Sharp Kabushiki Kaisha Context initialization based on decoder picture buffer
US9277228B2 (en) 2011-07-18 2016-03-01 Qualcomm Incorporated Adaptation parameter sets for video coding
US20130107973A1 (en) 2011-10-28 2013-05-02 Qualcomm Incorporated Loop filtering control over tile boundaries
US10390046B2 (en) 2011-11-07 2019-08-20 Qualcomm Incorporated Coding significant coefficient information in transform skip mode
EP2777276B1 (en) 2011-11-08 2019-05-01 Nokia Technologies Oy Reference picture handling
WO2013067687A1 (en) 2011-11-08 2013-05-16 Mediatek Singapore Pte. Ltd. Residue quad tree depth for chroma components
US9819949B2 (en) 2011-12-16 2017-11-14 Microsoft Technology Licensing, Llc Hardware-accelerated decoding of scalable video bitstreams
CN103918269B (zh) 2012-01-04 2017-08-01 联发科技(新加坡)私人有限公司 色度帧内预测方法及装置
US9332259B2 (en) 2012-01-18 2016-05-03 Qualcomm Incorporated Indication of use of wavefront parallel processing in video coding
US9538200B2 (en) 2012-01-19 2017-01-03 Qualcomm Incorporated Signaling of deblocking filter parameters in video coding
US9756327B2 (en) 2012-04-03 2017-09-05 Qualcomm Incorporated Quantization matrix and deblocking filter adjustments for video coding
TW201408071A (zh) 2012-04-09 2014-02-16 Vid Scale Inc 視訊編碼加權預測參數傳訊
JPWO2013154028A1 (ja) 2012-04-13 2015-12-17 ソニー株式会社 画像処理装置および方法
US9167248B2 (en) 2012-07-13 2015-10-20 Qualcomm Incorporated Reference picture list modification for video coding
EP3588958A1 (en) 2012-08-29 2020-01-01 Vid Scale, Inc. Method and apparatus of motion vector prediction for scalable video coding
US9313500B2 (en) 2012-09-30 2016-04-12 Microsoft Technology Licensing, Llc Conditional signalling of reference picture list modification information
US10021414B2 (en) 2013-01-04 2018-07-10 Qualcomm Incorporated Bitstream constraints and motion vector restriction for inter-view or inter-layer reference pictures
US10419776B2 (en) * 2013-07-09 2019-09-17 Sony Corporation High level syntax improvement on inter-layer prediction for SHVC/MV-HEVC
US9648335B2 (en) * 2013-07-12 2017-05-09 Qualcomm Incorporated Bitstream restrictions on picture partitions across layers
US9648330B2 (en) * 2013-07-15 2017-05-09 Qualcomm Incorporated Inter-color component residual prediction
TW201517597A (zh) 2013-07-31 2015-05-01 Nokia Corp 用於視訊編碼及解碼之方法及裝置
KR102073930B1 (ko) 2014-03-14 2020-02-06 브이아이디 스케일, 인크. Rgb 비디오 코딩 향상을 위한 시스템 및 방법
US9918105B2 (en) 2014-10-07 2018-03-13 Qualcomm Incorporated Intra BC and inter unification
US10353912B2 (en) 2014-10-10 2019-07-16 Salesforce.Com, Inc. Navigation of a data extraction graph of data and metadata from a data repository
EP3334163A4 (en) 2015-08-06 2019-04-17 LG Electronics Inc. DEVICE AND METHOD FOR PERFORMING TRANSFORMATION USING SINGLETON COEFFICIENT UPDATE
US10306253B2 (en) 2015-10-14 2019-05-28 Qualcomm Incorporated Signaling of parameter sets in files of multi-layer bitstreams
US10382766B2 (en) 2016-05-09 2019-08-13 Qualcomm Incorporated Signalling of filtering information
US10419755B2 (en) 2016-05-16 2019-09-17 Qualcomm Incorporated Confusion of multiple filters in adaptive loop filtering in video coding
US10582201B2 (en) * 2016-05-19 2020-03-03 Qualcomm Incorporated Most-interested region in an image
US10904570B2 (en) * 2016-09-08 2021-01-26 Kaonmedia Co., Ltd. Method for encoding/decoding synchronized multi-view video by using spatial layout information and apparatus of the same
EP3556096B1 (en) 2016-12-22 2024-05-22 HFI Innovation Inc. Method and apparatus of motion refinement for video coding
KR102424829B1 (ko) * 2017-02-22 2022-07-25 에스케이텔레콤 주식회사 비디오 데이터가 부호화된 비트스트림을 처리하는 방법
WO2019009590A1 (ko) * 2017-07-03 2019-01-10 김기백 추가 영역을 포함하는 분할 단위를 이용한 영상 복호화 방법 및 장치
CN116248868A (zh) * 2017-07-03 2023-06-09 汉阳大学校产学协力团 利用包含追加区域的分割单位的影像解码方法以及装置
KR102311029B1 (ko) 2017-07-04 2021-10-08 삼성전자주식회사 다중 코어 변환에 의한 비디오 복호화 방법 및 장치, 다중 코어 변환에 의한 비디오 부호화 방법 및 장치
KR20190028325A (ko) 2017-09-08 2019-03-18 주식회사 케이티 비디오 신호 처리 방법 및 장치
WO2019089382A1 (en) * 2017-10-31 2019-05-09 Vid Scale, Inc. 360-degree video coding using face-based geometry padding
US10778979B2 (en) 2018-01-11 2020-09-15 Qualcomm Incorporated Signaling mechanisms for equal ranges and other DRA parameters for video coding
CN110809159B (zh) 2018-08-04 2022-06-07 北京字节跳动网络技术有限公司 更新的mv或推导的mv的裁剪
CN112930684B (zh) * 2018-08-17 2023-10-13 寰发股份有限公司 在视频编解码***中利用双向预测处理视频的方法、设备
WO2020039364A1 (en) 2018-08-21 2020-02-27 Beijing Bytedance Network Technology Co., Ltd. Reduced window size for bilateral filter
CN112425169B (zh) * 2018-09-07 2023-07-11 华为技术有限公司 用于视频译码中帧内预测和帧间预测的插值滤波方法和装置
SG11202101799WA (en) 2018-09-21 2021-03-30 Huawei Tech Co Ltd Apparatus and method for inverse quantization
US11218694B2 (en) 2018-09-24 2022-01-04 Qualcomm Incorporated Adaptive multiple transform coding
TW202029755A (zh) * 2018-09-26 2020-08-01 美商Vid衡器股份有限公司 視訊編碼雙預測
TWI822863B (zh) * 2018-09-27 2023-11-21 美商Vid衡器股份有限公司 360度視訊寫碼樣本導出
SG11202104480RA (en) * 2018-11-05 2021-05-28 Beijing Bytedance Network Technology Co Ltd Interpolation for inter prediction with refinement
JP7307168B2 (ja) * 2018-11-30 2023-07-11 シャープ株式会社 符号化されたビデオのピクチャ用のタイル構造をシグナリングするシステム及び方法
US10972755B2 (en) * 2018-12-03 2021-04-06 Mediatek Singapore Pte. Ltd. Method and system of NAL unit header structure for signaling new elements
WO2020197236A1 (ko) * 2019-03-24 2020-10-01 엘지전자 주식회사 서브 픽처 핸들링 구조 기반 영상 또는 비디오 코딩
US11683487B2 (en) 2019-03-26 2023-06-20 Qualcomm Incorporated Block-based adaptive loop filter (ALF) with adaptive parameter set (APS) in video coding
KR20200115322A (ko) * 2019-03-26 2020-10-07 인텔렉추얼디스커버리 주식회사 영상 부호화/복호화 방법 및 장치
WO2021023255A1 (en) * 2019-08-08 2021-02-11 FG Innovation Company Limited Device and method for coding video data
US11375219B2 (en) 2019-09-24 2022-06-28 Tencent America LLC Coding method and system with improved dynamic internal bit depth
US20220394301A1 (en) * 2019-10-25 2022-12-08 Sharp Kabushiki Kaisha Systems and methods for signaling picture information in video coding
US11601657B2 (en) * 2020-04-02 2023-03-07 Qualcomm Incorporated LUMA mapping with chroma scaling (LMCS) in video coding
US11470358B2 (en) * 2020-04-02 2022-10-11 Sharp Kabushiki Kaisha Systems and methods for signaling scaling window information in video coding

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2023511788A (ja) 2020-03-31 2023-03-22 ベイジン、ターチア、インターネット、インフォメーション、テクノロジー、カンパニー、リミテッド ビデオ符号化における構文要素のシグナリングのための方法および装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CHEN, Yi-Wen et al.,AHG9: On syntax signaling conditions in picture header,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 18th Meeting: by teleconference, 15-24 April 2020, [JVET-R0324],JVET-R0324 (version 1),ITU-T,2020年04月04日,<URL:https://jvet-experts.org/doc_end_user/documents/18_Alpbach/wg11/JVET-R0324-v1.zip>: JVET-R0324.docx: pp.1-2, JVET-R0324_JVET-Q2001-vE.docx: pp.1,47-50
CHEN, Yi-Wen et al.,AHG9: On syntax signaling conditions in picture header,Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 18th Meeting: by teleconference, 15-24 April 2020, [JVET-R0324],JVET-R0324 (version 5),ITU-T,2020年04月16日,<URL:https://jvet-experts.org/doc_end_user/documents/18_Alpbach/wg11/JVET-R0324-v5.zip>: JVET-R0324_r4.docx: pp.1-5

Also Published As

Publication number Publication date
US11792435B2 (en) 2023-10-17
CN115443653A (zh) 2022-12-06
JP2023519612A (ja) 2023-05-11
US20230396809A1 (en) 2023-12-07
WO2021204136A1 (en) 2021-10-14
EP4115609A1 (en) 2023-01-11
KR20220163969A (ko) 2022-12-12
US20230059183A1 (en) 2023-02-23
KR102629799B1 (ko) 2024-01-25
BR112022020366A2 (pt) 2022-11-29
CN115699742A (zh) 2023-02-03
CN115606183A (zh) 2023-01-13
WO2021204137A1 (en) 2021-10-14
EP4115609A4 (en) 2023-10-25
WO2021204135A1 (en) 2021-10-14

Similar Documents

Publication Publication Date Title
KR20220143843A (ko) 하이 레벨 신택스 엘리먼트들에 대한 제약들
JP7407299B2 (ja) 量子化パラメータのための高レベルのビットストリームシンタックス
CN115606184A (zh) 对量化参数增量的信令通知的控制
CN115299061A (zh) 用于参考图片指示的语法元素的信令
JP7425224B2 (ja) 高レベル構文におけるインター予測のための信号通知
JP2024003125A (ja) ビデオコーディングにおける一般制約情報
JP2023523409A (ja) 映像コーディング構文要素の条件付き信号通知
JP2023527453A (ja) ローカルデュアルツリーモードタイプ定義を伴うパレットモード
CN115486064A (zh) 标头语法元素和自适应参数集的使用
JP2023518494A (ja) アフィンマージおよびアフィン動きベクトル予測モードの予測微調整
CN115918085A (zh) 颜色分量的信令通知
JP7506175B2 (ja) 映像コーディングにおけるデブロッキング信号通知
JP2023521588A (ja) 映像コーディングにおけるデブロッキング信号通知
JP2024012516A (ja) 一般制約フラグのシグナリング
CN115769578A (zh) 视频编解码中的自适应色彩变换
CN115868159A (zh) 自适应参数集单元的存在

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221114

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221114

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230414

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20230414

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230711

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231011

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20231219

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240118

R150 Certificate of patent or registration of utility model

Ref document number: 7425224

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150