IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ テンセント・アメリカ・エルエルシーの特許一覧

特表2022-553697静止ピクチャプロファイルの構文要素を用いたコーディング方法、システムおよびコンピュータプログラム
<>
  • 特表-静止ピクチャプロファイルの構文要素を用いたコーディング方法、システムおよびコンピュータプログラム 図1
  • 特表-静止ピクチャプロファイルの構文要素を用いたコーディング方法、システムおよびコンピュータプログラム 図2
  • 特表-静止ピクチャプロファイルの構文要素を用いたコーディング方法、システムおよびコンピュータプログラム 図3
  • 特表-静止ピクチャプロファイルの構文要素を用いたコーディング方法、システムおよびコンピュータプログラム 図4
  • 特表-静止ピクチャプロファイルの構文要素を用いたコーディング方法、システムおよびコンピュータプログラム 図5
  • 特表-静止ピクチャプロファイルの構文要素を用いたコーディング方法、システムおよびコンピュータプログラム 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2022-12-26
(54)【発明の名称】静止ピクチャプロファイルの構文要素を用いたコーディング方法、システムおよびコンピュータプログラム
(51)【国際特許分類】
   H04N 19/70 20140101AFI20221219BHJP
【FI】
H04N19/70
【審査請求】有
【予備審査請求】未請求
(21)【出願番号】P 2022523509
(86)(22)【出願日】2021-04-27
(85)【翻訳文提出日】2022-04-20
(86)【国際出願番号】 US2021029362
(87)【国際公開番号】W WO2021236303
(87)【国際公開日】2021-11-25
(31)【優先権主張番号】63/029,359
(32)【優先日】2020-05-22
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】17/231,416
(32)【優先日】2021-04-15
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】520353802
【氏名又は名称】テンセント・アメリカ・エルエルシー
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100150197
【弁理士】
【氏名又は名称】松尾 直樹
(72)【発明者】
【氏名】リン・リ
(72)【発明者】
【氏名】シアン・リ
(72)【発明者】
【氏名】シャン・リュウ
【テーマコード(参考)】
5C159
【Fターム(参考)】
5C159PP01
5C159RC11
(57)【要約】
復号するためのシステムおよび方法が提供される。方法は、シーケンス・パラメータ・セット(SPS)を含むビットストリームを受信するステップであって、SPSは、ビットストリームがただ1つの符号化されたピクチャを含むかどうかを指定するフラグを含む、ステップと、ビットストリームが1つの符号化されたピクチャのみを含むことを指定するフラグに基づいて、SPSの少なくとも1つの構文要素の値を推論するステップと、推論に基づいて1つの符号化されたピクチャを復号するステップと、を含む。
【特許請求の範囲】
【請求項1】
少なくとも1つのプロセッサによって実行される方法であって、
シーケンス・パラメータ・セット(SPS)を含むビットストリームを受信するステップであって、前記SPSは、前記ビットストリームが1つの符号化されたピクチャのみを含むかどうかを指定するフラグを含む、ステップと、
前記ビットストリームが前記1つの符号化されたピクチャのみを含むことを指定する前記フラグに基づいて、前記SPSの少なくとも1つの構文要素の値を推論するステップと、
前記推論に基づいて前記1つの符号化されたピクチャを復号するステップと、を含む方法。
【請求項2】
前記SPSの前記少なくとも1つの構文要素は、ビデオ・パラメータ・セットのIDを指定する構文要素を含む、請求項1に記載の方法。
【請求項3】
前記SPSの前記少なくとも1つの構文要素は、前記SPSを参照する各符号化層ビデオシーケンス(CLVS)内に存在することが許可される時間的サブレイヤの最大数を指定する構文要素を含む、請求項1に記載の方法。
【請求項4】
前記SPSの前記少なくとも1つの構文要素は、プロファイル、ティア、レベル構文構造が前記SPSに存在するかどうかを指定するフラグを含む、請求項1に記載の方法。
【請求項5】
前記SPSの前記少なくとも1つの構文要素は、ピクチャ順序カウント(POC)に関連する構文要素を含む、請求項1に記載の方法。
【請求項6】
前記SPSの前記少なくとも1つの構文要素は、インタースライスに関連する構文要素を含む、請求項1に記載の方法。
【請求項7】
前記SPSの前記少なくとも1つの構文要素は、インター・コーディング・ツールに関連する構文要素を含む、請求項1に記載の方法。
【請求項8】
請求項1に記載の方法であって、
前記ビットストリームが前記1つの符号化されたピクチャのみを含むことを指定する前記フラグに基づいて、前記1つの符号化されたピクチャのピクチャヘッダの少なくとも1つの構文要素の値を推論するステップであって、
復号する前記ステップは、前記SPSの前記少なくとも1つの構文要素の前記値および前記SPSの前記少なくとも1つの構文要素の前記値の前記推論に基づいて前記1つの符号化されたピクチャを復号する、ステップ、を含む、請求項1に記載の方法。
【請求項9】
前記ピクチャヘッダの前記少なくとも1つの構文要素は、前記1つの符号化されたピクチャに対してスライスタイプが許容されるかどうかを指定するフラグを含む、請求項8に記載の方法。
【請求項10】
前記ピクチャヘッダの前記少なくとも1つの構文要素は、前記1つの符号化されたピクチャが参照ピクチャであるかどうかを指定するフラグを含む、請求項8に記載の方法。
【請求項11】
前記ピクチャヘッダの前記少なくとも1つの構文要素は、ピクチャ順序カウント(POC)または復号ピクチャバッファ(DPB)に関する構文要素を含む、請求項8に記載の方法。
【請求項12】
システムであって、
コンピュータコードを記憶する少なくとも1つのメモリと、
シーケンス・パラメータ・セット(SPS)を含むビットストリームを受信するように構成された少なくとも1つのプロセッサであって、前記SPSは、前記ビットストリームがただ1つの符号化されたピクチャを含むかどうかを指定するフラグを含み、前記少なくとも1つのプロセッサは、前記コンピュータコードにアクセスし、前記コンピュータコードによって命令されるように動作するようにさらに構成され、前記コンピュータコードは、
前記ビットストリームが前記1つの符号化されたピクチャのみを含むことを指定する前記フラグに基づいて、前記少なくとも1つのプロセッサに、前記SPSの少なくとも1つの構文要素の値を推論させるように構成された推論コードと、
前記SPSの前記少なくとも1つの構文要素の値の推論に基づいて、前記少なくとも1つのプロセッサに、前記1つの符号化されたピクチャを復号させるように構成された復号コードとを含む、少なくとも1つのプロセッサと、を含む、システム。
【請求項13】
前記SPSの前記少なくとも1つの構文要素は、ビデオ・パラメータ・セットのIDを指定する構文要素を含む、請求項12に記載のシステム。
【請求項14】
前記SPSの前記少なくとも1つの構文要素は、前記SPSを参照する各符号化層ビデオシーケンス(CLVS)内に存在することが許可される時間的サブレイヤの最大数を指定する構文要素を含む、請求項12に記載のシステム。
【請求項15】
前記SPSの前記少なくとも1つの構文要素は、プロファイル、ティア、レベル構文構造が前記SPSに存在するかどうかを指定するフラグを含む、請求項12に記載のシステム。
【請求項16】
前記SPSの前記少なくとも1つの構文要素は、ピクチャ順序カウント(POC)に関連する構文要素を含む、請求項12に記載のシステム。
【請求項17】
前記SPSの前記少なくとも1つの構文要素は、インタースライスに関連する構文要素を含む、請求項12に記載のシステム。
【請求項18】
前記SPSの前記少なくとも1つの構文要素は、インター・コーディング・ツールに関連する構文要素を含む、請求項12に記載のシステム。
【請求項19】
請求項12に記載のシステムであって、
前記推論コードは、前記ビットストリームが前記1つの符号化されたピクチャのみを含むことを指定する前記フラグに基づいて、前記少なくとも1つのプロセッサに、前記1つの符号化されたピクチャのピクチャヘッダの少なくとも1つの構文要素の値を推論させるようにさらに構成され、
前記復号コードは、前記SPSの前記少なくとも1つの構文要素の前記値および前記SPSの前記少なくとも1つの構文要素の前記値を推論することに基づいて、前記少なくとも1つのプロセッサに、前記1つの符号化されたピクチャを復号させるように構成される、システム。
【請求項20】
少なくとも1つのプロセッサによって実行されると、前記少なくとも1つのプロセッサに、
受信されたビットストリームがただ1つの符号化されたピクチャを含むことを指定するSPSのフラグに基づいて、前記受信されたビットストリームの前記SPSの少なくとも1つの構文要素の値を推論させ、
前記SPSの前記少なくとも1つの構文要素の前記値を推論することに基づいて、前記1つの符号化されたピクチャを復号させる、ように構成された、コンピュータコードを記憶した、非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照
本出願は、2020年3月22日に出願された米国仮特許出願第63/029,359号および2021年4月15日に出願された米国特許出願第17/231416号の優先権を主張し、これらの開示はその全体が参照により本明細書に組み込まれる。
【0002】
本開示の実施形態は、ビデオコーディング技術、より具体的には、HEVC(High Efficiency Video Coding:高効率ビデオコーディング)を超える次世代ビデオコーディング技術、例えば、多用途ビデオコーディング(Versatile Video Coding:VVC)のための技術を進歩させることを対象とする。
【背景技術】
【0003】
ITU-T VCEG(Q6/16)およびISO/IEC MPEG(JTC 1/SC 29/WG 11)は、2013(バージョン1)、2014(バージョン2)、2015(バージョン3)、および2016(バージョン4)において、H.265/HEVC(High Efficiency Video Coding)規格を公開した。2015年、これら2つの標準化団体は共同でJoint Video Exploration Team(JVET)を結成し、HEVCを超える次のビデオコーディング標準を開発する可能性を模索した。2017年10月、JVETは、HEVCを超える機能を備えたビデオ圧縮に関する提案のためのジョイント・コール(Joint Call for Proposals on Video Compression with Capability beyond HEVC(CfP))を発行した。2018年2月15日までに、標準ダイナミックレンジ(SDR)で合計22のCfPレスポンス、ハイダイナミックレンジ(HDR)で12のCfPレスポンス、および360のビデオカテゴリで12のCfPレスポンスが提出された。2018年4月に、第122回動画専門家グループ(Moving Picture Experts Group:MPEG)/第10回JVET会議において、受け取ったすべてのCfPレスポンスを評価した。この会議の結果、JVETは、HEVCを超える次世代ビデオコーディングの標準化プロセスを正式に立ち上げた。この新たな規格は、多用途ビデオコーディング(Versatile Video Coding:VVC)と名付けられ、JVETは、ジョイント・ビデオ・エキスパート・チーム(Joint Video Expert Team)と名付けられた。VVC試験モデル(VVC Test Model:VTM)の現在のバージョンはVTM 7である。
【発明の概要】
【課題を解決するための手段】
【0004】
本開示の実施形態は、既存の開示の上の構文要素および追加の構文テーブルに対する制約を提供する。
【0005】
1つまたは複数の実施形態によれば、少なくとも1つのプロセッサによって実行される方法が提供される。本方法は、シーケンス・パラメータ・セット(SPS)を含むビットストリームを受信するステップであって、SPSが、ビットストリームがただ1つの符号化されたピクチャを含むかどうかを指定するフラグを含む、ステップと、ビットストリームが1つの符号化されたピクチャのみを含むことを指定するフラグに基づいて、SPSの少なくとも1つの構文要素の値を推論するステップと、推論に基づいて1つの符号化されたピクチャを復号するステップと、を含む。
【0006】
一実施形態によれば、SPSの少なくとも1つの構文要素は、ビデオ・パラメータ・セットのIDを指定する構文要素を含む。
【0007】
一実施形態によれば、SPSの少なくとも1つの構文要素は、SPSを参照する各符号化層ビデオシーケンス(coded layer video sequence:CLVS)内に存在することが許可される時間的サブレイヤの最大数を指定する構文要素を含む。
【0008】
一実施形態によれば、SPSの少なくとも1つの構文要素は、プロファイル、ティア(tier)、レベル構文構造がSPSに存在するかどうかを指定するフラグを含む。
【0009】
一実施形態によれば、SPSの少なくとも1つの構文要素は、ピクチャ順序カウント(picture order count:POC)に関連する構文要素を含む。
【0010】
一実施形態によれば、SPSの少なくとも1つの構文要素は、インタースライスに関連する構文要素を含む。
【0011】
一実施形態によれば、SPSの少なくとも1つの構文要素は、インター・コーディング・ツールに関連する構文要素を含む。
【0012】
一実施形態によれば、本方法は、ビットストリームが1つの符号化されたピクチャのみを含むことを指定するフラグに基づいて、1つの符号化されたピクチャのピクチャヘッダの少なくとも1つの構文要素の値を推論するステップをさらに含み、復号するステップは、SPSの少なくとも1つの構文要素の値およびSPSの少なくとも1つの構文要素の値の推論に基づいて1つの符号化されたピクチャを復号するステップを含む。
【0013】
一実施形態によれば、ピクチャヘッダの少なくとも1つの構文要素は、1つの符号化されたピクチャに対してスライスタイプが許容されるかどうかを指定するフラグを含む。
【0014】
一実施形態によれば、ピクチャヘッダの少なくとも1つの構文要素は、1つの符号化されたピクチャが参照ピクチャであるかどうかを指定するフラグを含む。
【0015】
一実施形態によれば、ピクチャヘッダの少なくとも1つの構文要素は、ピクチャ順序カウント(picture order count:POC)または復号ピクチャバッファ(decoded picture buffer:DPB)に関する構文要素を含む。
【0016】
1つまたは複数の実施形態によれば、システムが提供される。システムは、コンピュータコードを記憶する少なくとも1つのメモリと、シーケンス・パラメータ・セット(SPS)を含むビットストリームを受信するように構成された少なくとも1つのプロセッサとを含み、SPSは、ビットストリームがただ1つの符号化されたピクチャを含むかどうかを指定するフラグを含む。少なくとも1つのプロセッサは、コンピュータコードにアクセスし、コンピュータコードによって命令されるように動作するようにさらに構成される。コンピュータコードは、ビットストリームが1つの符号化されたピクチャのみを含むことを指定するフラグに基づいて、少なくとも1つのプロセッサにSPSの少なくとも1つの構文要素の値を推論させるように構成された推論コードと、SPSの少なくとも1つの構文要素の値を推論することに基づいて、少なくとも1つのプロセッサに、1つの符号化されたピクチャを復号させるように構成された復号コードと、を含む。
【0017】
一実施形態によれば、SPSの少なくとも1つの構文要素は、ビデオ・パラメータ・セットのIDを指定する構文要素を含む。
【0018】
一実施形態によれば、SPSの少なくとも1つの構文要素は、SPSを参照する各符号化層ビデオシーケンス(coded layer video sequence:CLVS)内に存在することが許可される時間的サブレイヤの最大数を指定する構文要素を含む。
【0019】
一実施形態によれば、SPSの少なくとも1つの構文要素は、プロファイル、ティア、レベル構文構造がSPSに存在するかどうかを指定するフラグを含む。
【0020】
一実施形態によれば、SPSの少なくとも1つの構文要素は、ピクチャ順序カウント(picture order count:POC)に関連する構文要素を含む。
【0021】
一実施形態によれば、SPSの少なくとも1つの構文要素は、インタースライスに関連する構文要素を含む。
【0022】
一実施形態によれば、SPSの少なくとも1つの構文要素は、インター・コーディング・ツールに関連する構文要素を含む。
【0023】
一実施形態によれば、推論コードは、ビットストリームが1つの符号化されたピクチャのみを含むことを指定するフラグに基づいて、少なくとも1つのプロセッサに、1つの符号化されたピクチャのピクチャヘッダの少なくとも1つの構文要素の値を推論させるようにさらに構成され、復号コードは、SPSの少なくとも1つの構文要素の値およびSPSの少なくとも1つの構文要素の値を推論することに基づいて、少なくとも1つのプロセッサに、1つの符号化されたピクチャを復号させるように構成される。
【0024】
1つまたは複数の実施形態によれば、コンピュータコードを記憶する非一時的コンピュータ可読媒体が提供される。コンピュータコードは、少なくとも1つのプロセッサによって実行されると、少なくとも1つのプロセッサに、受信されたビットストリームがただ1つの符号化されたピクチャを含むことを指定するSPSのフラグに基づいて、受信されたビットストリームのSPSの少なくとも1つの構文要素の値を推定させ、SPSの少なくとも1つの構文要素の値を推論することに基づいて、1つの符号化されたピクチャを復号させるように構成される。
【0025】
開示内容のさらなる特徴、性質、および様々な利点は、以下の詳細な説明および添付の図面からより明らかになるであろう。
【図面の簡単な説明】
【0026】
図1】一実施形態による通信システムの簡略ブロック図の概略図である。
図2】一実施形態による通信システムの簡略化されたブロック図の概略図である。
図3】一実施形態によるデコーダの簡略化されたブロック図の概略図である。
図4】一実施形態によるエンコーダの簡略化されたブロック図の概略図である。
図5】実施形態によるコンピュータコードのブロック図である。
図6】実施形態を実施するのに適したコンピュータシステムの図である。
【発明を実施するための形態】
【0027】
図1は、本開示の一実施形態による通信システム(100)の簡略化されたブロック図を示している。システム(100)は、ネットワーク(150)を介して相互接続された少なくとも2つの端末(110、120)を含み得る。データの一方向送信の場合、第1の端末(110)は、ネットワーク(150)を介して他の端末(120)に送信するためにローカル位置でビデオデータをコーディングすることができる。第2の端末(120)は、ネットワーク(150)から他の端末の符号化されたビデオデータを受信し、符号化されたデータを復号し、復元されたビデオデータを表示し得る。一方向データ送信は、メディアサービング用途などで一般的であることがある。
【0028】
図1は、例えば、ビデオ会議中に発生する可能性のある符号化されたビデオの双方向送信をサポートするために提供される端末の第2の対(130、140)を示す。データの双方向送信の場合、各端末(130、140)は、ネットワーク(150)を介して他の端末に送信するために、ローカル位置でキャプチャされたビデオデータを符号化することができる。各端末(130、140)はまた、他の端末によって送信された符号化されたビデオデータを受信し、符号化されたデータを復号し、復元されたビデオデータをローカル・ディスプレイ・デバイスに表示し得る。
【0029】
図1では、端末(110~140)は、サーバ、パーソナルコンピュータ、およびスマートフォン、ならびに/または任意の他の種類の端末として示されている場合がある。例えば、端末(110~140)は、ラップトップコンピュータ、タブレットコンピュータ、メディアプレーヤ、および/または専用ビデオ会議機器であってもよい。ネットワーク(150)は、例えば有線および/または無線通信ネットワークを含む、端末(110~140)間で符号化されたビデオデータを伝達する任意の数のネットワークを表す。通信ネットワーク(150)は、回路交換チャネルおよび/またはパケット交換チャネルでデータを交換することができる。代表的なネットワークには、電気通信ネットワーク、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワークおよび/またはインターネットが含まれる。本議論の目的のために、ネットワーク(150)のアーキテクチャおよびトポロジは、本明細書で以下に説明されない限り、本開示の動作にとって重要ではないことがある。
【0030】
図2は、開示された主題の用途の例として、ストリーミング環境におけるビデオエンコーダおよびデコーダの配置を示している。開示された主題は、例えば、ビデオ会議、デジタルテレビ、CD、DVD、メモリスティックなどを含むデジタルメディアへの圧縮ビデオの保存を含む、他のビデオ対応用途に等しく適用することができる。
【0031】
図2に示すように、ストリーミングシステム(200)は、ビデオソース(201)およびエンコーダ(203)を含み得るキャプチャサブシステム(213)を含み得る。ビデオソース(201)は、例えば、デジタルカメラであってもよく、非圧縮ビデオ・サンプル・ストリーム(202)を作成するように構成されてもよい。非圧縮ビデオ・サンプル・ストリーム(202)は、符号化されたビデオビットストリームと比較して高いデータ量を提供することができ、カメラ(201)に結合されたエンコーダ(203)によって処理することができる。エンコーダ(203)は、以下でより詳細に説明されるように、開示された主題の態様を可能にするまたは実装するためのハードウェア、ソフトウェア、またはそれらの組み合わせを含み得る。符号化されたビデオビットストリーム(204)は、サンプルストリームと比較してより低いデータ量を含んでいてもよく、将来の使用のためにストリーミングサーバ(205)に格納され得る。1つまたは複数のストリーミングクライアント(206)は、ストリーミングサーバ(205)にアクセスして、符号化されたビデオビットストリーム(204)の複製であり得るビデオビットストリーム(209)を取得することができる。
【0032】
実施形態では、ストリーミングサーバ(205)は、メディア対応ネットワーク要素(Media-Aware Network Element:MANE)としても機能することができる。例えば、ストリーミングサーバ(205)は、潜在的に異なるビットストリームをストリーミングクライアント(206)のうちの1つまたは複数に合わせるために、符号化されたビデオビットストリーム(204)をプルーニングするように構成することができる。実施形態では、MANEは、ストリーミングシステム(200)内のストリーミングサーバ(205)から別々に提供されてもよい。
【0033】
ストリーミングクライアント(206)は、ビデオデコーダ(210)およびディスプレイ(212)を含み得る。ビデオデコーダ(210)は、例えば、符号化されたビデオビットストリーム(204)の入力複製であるビデオビットストリーム(209)を復号し、ディスプレイ(212)または別のレンダリングデバイス(図示せず)上にレンダリングすることができる出力ビデオ・サンプル・ストリーム(211)を生成することができる。一部のストリーミングシステムでは、ビデオビットストリーム(204、209)を一定のビデオコーディング/圧縮規格に従って符号化できる。そのような規格の例には、ITU-T勧告H.265が含まれるが、これに限定されない。多用途ビデオコーディング(VVC)として非公式に知られているビデオコーディング規格が開発中である。本開示の実施形態は、VVCの文脈で使用され得る。
【0034】
図3は、本開示の一実施形態による、ディスプレイ(212)に取り付けられたビデオデコーダ(210)の例示的な機能ブロック図を示す。
【0035】
ビデオデコーダ(210)は、チャネル(312)、受信器(310)、バッファメモリ(315)、エントロピーデコーダ/解析器(320)、スケーラ/逆変換ユニット(351)、イントラ予測ユニット(352)、動作補償予測ユニット(353)、アグリゲータ(355)、ループ・フィルタ・ユニット(356)、参照ピクチャメモリ(357)、および現在のピクチャメモリ()を含み得る。少なくとも一実施形態では、ビデオデコーダ(210)は、集積回路、一連の集積回路、および/または他の電子回路を含み得る。ビデオデコーダ(210)はまた、関連するメモリを有する1つまたは複数のCPU上で実行されるソフトウェアにおいて部分的または全体的に具現化されてもよい。
【0036】
この実施形態および他の実施形態では、受信器(310)は、デコーダ(210)によって復号されるべき、1つまたは複数の符号化されたビデオシーケンス、1つの符号化されたビデオシーケンスを一度に受信してもよく、各符号化されたビデオシーケンスの復号は他の符号化されたビデオシーケンスから独立している。符号化されたビデオシーケンスは、符号化されたビデオデータを記憶する記憶デバイスへのハードウェア/ソフトウェアリンクであり得るチャネル(312)から受信され得る。受信器(310)は、それぞれの使用エンティティ(図示せず)に転送され得る他のデータ、例えば、符号化された音声データおよび/または補助データストリームとともに、符号化されたビデオデータを受信し得る。受信器(310)は、符号化されたビデオシーケンスを、他のデータから分割することができる。ネットワークジッタを防止するために、バッファメモリ(315)は、受信器(310)とエントロピーデコーダ/解析器(320)(以降、「解析器」)との間に結合され得る。受信器(310)が、十分な帯域幅と制御可能性を有する記憶/転送デバイス、またはアイソクロナスネットワークからデータを受信する場合、バッファ(315)は使用されないか、または小さくてもよい。インターネットなどのベスト・エフォート・パケット・ネットワークで使用するために、バッファ(315)が必要とされる場合があり、比較的大きくすることができ、適応サイズにすることができる。
【0037】
ビデオデコーダ(210)は、エントロピー符号化されたビデオシーケンスからシンボル(321)を再構成するための解析器(320)を含み得る。これらのシンボルのカテゴリは、例えば、デコーダ(210)の動作を管理するために使用される情報、および潜在的に、図2に示すようにデコーダに結合され得るディスプレイ(212)などのレンダリングデバイスを制御するための情報を含む。レンダリングデバイスの制御情報は、補足拡張情報(Supplementary Enhancement Information:SEI)メッセージまたはビデオユーザビリティ情報(Video Usability Information:VUI)パラメータ・セット・フラグメント(図示せず)の形であり得る。解析器(320)は、受信された符号化されたビデオシーケンスを解析/エントロピー復号することができる。符号化されたビデオシーケンスのコーディングは、ビデオコーディング技術またはビデオコーディング規格に従うことができ、可変長コーディング、ハフマンコーディング、文脈依存性の有無にかかわらず算術コーディングなどを含む、当業者に周知の原理に従い得る。解析器(320)は、グループに対応する少なくとも1つのパラメータに基づいて、ビデオデコーダ内のピクセルのサブグループのうちの少なくとも1つについて一組のサブグループパラメータを、コーディング済ビデオシーケンスから抽出することができる。サブグループは、Groups of Pictures(GOP)、ピクチャ、タイル、スライス、マクロブロック、コーディングユニット(Coding Units:CU)、ブロック、変換ユニット(Transform Units:TU)、予測ユニット(Prediction Units:PU)などを含み得る。解析器(320)はまた、変換係数、量子化パラメータ値、動きベクトルなどの符号化されたビデオシーケンス情報から抽出し得る。
【0038】
解析器(320)は、シンボル(321)を作成するために、バッファ(315)から受信されたビデオシーケンスに対してエントロピー復号/解析操作を実行することができる。
【0039】
シンボル(321)の再構成は、符号化されたビデオピクチャまたはその一部(インターピクチャおよびイントラピクチャ、インターブロックおよびイントラブロックなど)のタイプ、および他の要因に応じて、複数の異なるユニットを含み得る。どのユニットが関与し、どのように関与するかは、解析器(320)によって符号化されたビデオシーケンスから解析されたサブグループ制御情報によって制御され得る。解析器(320)と以下の複数のユニットとの間のそのようなサブグループ制御情報の流れは、明確性のために描かれていない。
【0040】
すでに述べた機能ブロックを超えて、デコーダ210は、以下に説明するように、概念的にいくつかの機能ユニットに細分することができる。商業的制約の下で動作する実際の実装では、これらのユニットの多くは互いに密接に相互作用し、少なくとも部分的には互いに統合することができる。しかしながら、開示された主題を説明するために、以下の機能ユニットへの概念的な細分化が適切である。
【0041】
1つのユニットは、スケーラ/逆変換ユニット(351)であり得る。スケーラ/逆変換ユニット(351)は、量子化変換係数、ならびにどの変換を使用するか、ブロックサイズ、量子化係数、量子化スケーリング行列などをシンボル(複数可)(321)として含む制御情報を、解析器(320)から受信し得る。スケーラ/逆変換ユニット(351)は、アグリゲータ(355)に入力され得るサンプル値を含むブロックを出力することができる。
【0042】
場合によっては、スケーラ/逆変換(351)の出力サンプルは、イントラ符号化されたブロック、すなわち、以前に再構築されたピクチャからの予測情報を使用していないが、現在のピクチャの以前に再構築された部分からの予測情報を使用することができるブロックに関連し得る。そのような予測情報は、イントラピクチャ予測ユニット(352)によって提供され得る。場合によっては、イントラピクチャ予測ユニット(352)は、現在のピクチャメモリ(358)からの現在の(部分的に再構築された)ピクチャからフェッチされた周囲のすでに再構築された情報を使用して、再構築中のブロックと同じサイズおよび形状のブロックを生成する。アグリゲータ(355)は、場合によっては、イントラ予測ユニット(352)が生成した予測情報を、スケーラ/逆変換ユニット(351)からの出力サンプル情報に、サンプル単位で付加する。
【0043】
他の場合には、スケーラ/逆変換ユニット(351)の出力サンプルは、インター符号化された、潜在的に動作補償されたブロックに関連し得る。そのような場合、動作補償予測ユニット(353)は、参照ピクチャメモリ(357)にアクセスして、予測に使用されるサンプルをフェッチすることができる。フェッチされたサンプルをブロックに関連するシンボル(321)に従って動作補償した後、これらのサンプルは、出力サンプル情報を生成するために、アグリゲータ(355)によってスケーラ/逆変換ユニット(351)の出力に追加され得る(この場合、残差サンプルまたは残差信号と呼ばれる)。動作補償予測ユニット(353)が予測サンプルをフェッチする参照ピクチャメモリ(357)内のアドレスは、動作ベクトルによって制御することができる。動作ベクトルは、例えば、X、Y、および参照ピクチャ成分を有し得るシンボル(321)の形態で、動作補償予測ユニット(353)に利用可能であり得る。動き補償はまた、サブサンプルの正確な動きベクトルが使用されているときに参照ピクチャメモリ(357)からフェッチされたサンプル値の補間、動きベクトル予測機構などを含み得る。
【0044】
アグリゲータ(355)の出力サンプルは、ループ・フィルタ・ユニット(356)において様々なループフィルタリング技術の対象となり得る。ビデオ圧縮技術は、符号化されたビデオビットストリームに含まれるパラメータによって制御され、解析器(320)からのシンボル(321)としてループ・フィルタ・ユニット(356)に利用可能になるインループフィルタ技術を含み得るが、符号化されたピクチャまたは符号化されたビデオシーケンスの前の(復号順で)部分の復号中に取得されたメタ情報に応答することができ、以前に再構成およびループフィルタリングされたサンプル値に応答することもできる。
【0045】
ループ・フィルタ・ユニット(356)の出力は、ディスプレイ(212)のようなレンダリングデバイスに出力することができるとともに、将来のインターピクチャ予測に使用するために参照ピクチャメモリ(357)に格納され得るサンプルストリームとすることができる。
【0046】
いくつかの符号化されたピクチャは、完全に再構成されると、将来の予測のための参照ピクチャとして使用されうる。符号化されたピクチャが完全に再構築され、符号化されたピクチャが(例えば、解析器(320)によって)参照ピクチャとして識別されると、現在の参照ピクチャは参照ピクチャメモリ(357)の一部になり得、次の符号化されたピクチャの再構築を開始する前に、新鮮な現在のピクチャメモリを再割り当てすることができる。
【0047】
ビデオデコーダ(210)は、ITU-T Rec.H.265などの規格に文書化され得る所定のビデオ圧縮技術に従って復号動作を実行することができる。符号化されたビデオシーケンスは、ビデオ圧縮技術または規格の構文と、ビデオ圧縮技術文書または規格、特にその中のプロフィール文書に準拠しているという意味において、使用されているビデオ圧縮技術または規格によって指定された構文に準拠している場合がある。また、いくつかのビデオ圧縮技術または規格に準拠するために、符号化されたビデオシーケンスの複雑さは、ビデオ圧縮技術または規格のレベルによって定義される範囲内であり得る。場合によっては、レベルは、最大ピクチャサイズ、最大フレームレート、最大再構築サンプルレート(例えば毎秒メガサンプルで測定される)、最大参照ピクチャサイズなどを制限する。レベルによって設定される制限は、場合によっては、ハイポセティカルリファレンスデコーダ(HRD)仕様と、符号化されたビデオシーケンスにおいて伝えられるHRDバッファ管理のメタデータによってさらに制限されることがある。
【0048】
一実施形態では、受信器(310)は、符号化されたビデオとともに追加の(冗長な)データを受信し得る。追加のデータは、符号化されたビデオシーケンスの一部として含まれることがある。追加のデータは、データを適切に復号するため、および/または元のビデオデータをより正確に再構成するために、ビデオデコーダ(210)によって使用され得る。追加のデータは、例えば、時間的、空間的、またはSNR強化層、冗長スライス、冗長ピクチャ、順方向エラー訂正コードなどの形式をとることができる。
【0049】
図4は、本開示の一実施形態による、ビデオソース(201)に関連付けられたビデオエンコーダ(203)の例示的な機能ブロック図を示す。
【0050】
ビデオエンコーダ(203)は、例えば、ソース・コーダ(430)、コーディングエンジン(432)、(ローカル)デコーダ(433)、参照ピクチャメモリ(434)、予測器(435)、送信器(440)、エントロピー・コーダ(445)、コントローラ(450)、およびチャネル(460)であるエンコーダを含み得る。
【0051】
エンコーダ(203)は、エンコーダ(203)によって符号化されるビデオ画像をキャプチャすることができる(エンコーダの一部ではない)ビデオソース(201)からビデオサンプルを受信することができる。
【0052】
ビデオソース(201)は、任意の適切なビット深度(例えば、8ビット、10ビット、12ビット、…)、任意の色空間(例えば、BT.601 Y CrCB、RGB、…)、および任意の適切なサンプリング構造(例えば、Y CrCb 4:2:0、Y CrCb 4:4:4)であり得るデジタル・ビデオ・サンプル・ストリームの形態で、エンコーダ(203)によって符号化されるソース・ビデオ・シーケンスを提供することができる。メディア・サービング・システムでは、ビデオソース(201)は、以前に準備されたビデオを記憶する記憶デバイスであり得る。ビデオ会議システムでは、ビデオソース(203)は、ローカル画像情報をビデオシーケンスとしてキャプチャするカメラであり得る。ビデオデータは、順番に見たときに動きを与える複数の個別のピクチャとして提供し得る。ピクチャ自体は、画素の空間配列として編成することができ、各画素は、使用中のサンプリング構造、色空間などに応じて、1つまたは複数のサンプルを含み得る。当業者であれば、ピクセルとサンプルとの関係を容易に理解することができる。以下の説明は、サンプルに重点を置く。
【0053】
一実施形態によれば、エンコーダ(203)は、用途により必要に応じて、リアルタイムで、または任意の他の時間制約の下で、ソース・ビデオ・シーケンスのピクチャをコーディングし、コーディング済ビデオシーケンス(443)に圧縮することができる。適切なコーディング速度を強制することは、コントローラ(450)の1つの機能である。コントローラ(450)はまた、後述するように他の機能ユニットを制御してもよく、これらのユニットに機能的に結合されてもよい。結合は、明確性のために示されていない。コントローラ(450)によって設定されたパラメータには、レート制御関連パラメータ(ピクチャスキップ、量子化、レート歪み最適化手法のラムダ値など)、ピクチャサイズ、group of pictures(GOP)レイアウト、最大動作ベクトル検索範囲などが含まれ得る。当業者は、一定のシステム設計用に最適化されたビデオエンコーダ(203)に関係し得るので、コントローラ(450)の他の機能を容易に識別し得る。
【0054】
一部のビデオエンコーダは、当業者が「コーディングループ」として容易に認識するもので動作する。非常に簡略化した説明として、コーディングループは、ソースエンコーダ(430)の符号化部分(符号化される入力ピクチャおよび参照ピクチャに基づいてシンボルを生成する責任がある)と、シンボルを再構成して、一定のビデオ圧縮技術においてシンボルと符号化されたビデオビットストリームとの間の圧縮が可逆圧縮である場合に(リモート)デコーダも生成するであろうサンプルデータを生成するエンコーダ(203)に組み込まれた(ローカル)デコーダ(433)と、から構成され得る。再構築されたサンプルストリームは、参照ピクチャメモリ(434)に入力される。シンボルストリームの復号化が、デコーダの位置(ローカルまたはリモート)に依存しないビットが正確な結果をもたらすので、参照ピクチャメモリのコンテンツも、ローカルエンコーダとリモートエンコーダとの間でビットが正確である。言い換えると、エンコーダの予測部分は、復号中に予測を使用するときにデコーダが「見る」のとまったく同じサンプル値を参照ピクチャサンプルとして「見る」。参照ピクチャの同期性(および、例えばチャネルエラーのために同期性を維持できない場合に生じるドリフト)のこの基本原理は、当業者に知られている。
【0055】
「ローカル」デコーダ(433)の動作は、「リモート」デコーダ(210)の動作と同じであり得、これは、図3に関連して上記で詳細に説明されている。しかしながら、シンボルが利用可能であり、エントロピーエンコーダ(445)および解析器(320)による符号化されたビデオシーケンスへのシンボルの符号化/復号は無損失であり得るため、チャネル(312)、受信器(310)、バッファ(315)、および解析器(320)を含むデコーダ(210)のエントロピー復号部分は、ローカルデコーダ(433)に完全に実装されない場合がある。
【0056】
この時点でなされ得る観測は、デコーダ内に存在する構文解析/エントロピー復号を除く任意のデコーダ技術は、対応するエンコーダ内に実質的に同一の機能形態で存在する必要があり得るということである。このため、開示された主題はデコーダ動作に焦点を合わせている。エンコーダ技術の説明は、包括的に説明されているデコーダ技術の逆であり得るため、省略され得る。一定の領域でのみ、より詳細な説明が必要であり、以下に提供される。
【0057】
その動作の一部として、ソースエンコーダ(430)は、「基準フレーム」として指定されたビデオシーケンスからの1つまたは複数の以前に符号化されたフレームを参照して入力フレームを予測的にコーディングする、動き補償予測コーディングを実行することができる。このようにして、コーディングエンジン(432)は、入力フレームのピクセルブロックと、入力フレームへの予測基準として選択され得る基準フレームのピクセルブロックとの間の差分をコーディングする。
【0058】
ローカルビデオデコーダ(433)は、ソースエンコーダ(430)によって作成されたシンボルに基づいて、基準フレームとして指定され得るフレームのコーディングされたビデオデータを復号することができる。コーディングエンジン(432)の動作は、有利には、非可逆プロセスであり得る。符号化されたビデオデータがビデオデコーダ(図4には示されていない)で復号され得るとき、再構築されたビデオシーケンスは、通常、いくつかのエラーを伴うソース・ビデオ・シーケンスのレプリカであり得る。ローカルビデオデコーダ(433)は、参照フレームに対してビデオデコーダによって実行され得る復号処理を複製し、再構築された参照フレームを参照ピクチャメモリ(434)に記憶させることができる。このようにして、エンコーダ(203)は、遠端ビデオデコーダによって取得される再構成された参照フレームとして共通の内容を有する再構成された参照フレームの複製をローカルに格納し得る(送信エラーがない)。
【0059】
予測器(435)は、コーディングエンジン(432)のための予測検索を実行することができる。すなわち、符号化される新しいフレームに対して、予測器(435)は、サンプルデータ(候補参照画素ブロックとして)または新しいピクチャの適切な予測参照として役立ち得る参照ピクチャ動きベクトル、ブロック形状などの一定のメタデータについて、参照ピクチャメモリ(434)を検索し得る。予測器(435)は、適切な予測参照を見つけるために、画素ブロックごとに1つのサンプルブロックで動作し得る。場合によっては、予測器(435)によって取得された検索結果によって決定されるように、入力ピクチャは、参照ピクチャメモリ(434)に格納された複数の参照ピクチャから引き出された予測基準を有することができる。
【0060】
コントローラ(450)は、例えば、ビデオデータを符号化するために使用されるパラメータおよびサブグループパラメータの設定を含む、ビデオエンコーダ(430)のコーディング動作を管理することができる。
【0061】
すべての前述の機能ユニットの出力は、エントロピーエンコーダ(445)内でエントロピーコーディングを受けることができる。エントロピーエンコーダは、当業者に知られた技術、例えば、ハフマンコーディング、可変長コーディング、算術コーディングなどに従ってシンボルを可逆圧縮することにより、様々な機能ユニットによって生成されたシンボルを符号化ビデオシーケンスに変換する。
【0062】
送信器(440)は、エントロピーエンコーダ(445)によって作成された符号化ビデオシーケンスをバッファリングして、通信チャネル(460)を介した送信の準備をすることができ、通信チャネル(460)は、符号化ビデオデータを格納する記憶デバイスへのハードウェア/ソフトウェアリンクであってよい。送信器(440)は、ビデオエンコーダ(430)からのコーディングされたビデオデータを、送信される他のデータ、例えば、コーディングされたオーディオデータおよび/または補助データストリーム(図示されていないソース)とマージすることができる。
【0063】
コントローラ(450)は、エンコーダ(203)の動作を管理することができる。コーディング中に、コントローラ(450)は、各々の符号化されたピクチャに一定の符号化されたピクチャ型式を割り当て得、これは、それぞれのピクチャに適用され得るコーディング技法に影響を及ぼし得る。例えば、ピクチャは通常、イントラピクチャ(Iピクチャ)、予測ピクチャ(Pピクチャ)、または双方向予測ピクチャ(Bピクチャ)として割り当てられ得る。
【0064】
イントラピクチャ(Iピクチャ)は、予測のソースとしてシーケンス内の他のフレームを使用せずに符号化および復号され得るものであり得る。いくつかのビデオコーデックでは、例えば独立デコーダリフレッシュ(Independent Decoder Refresh:IDR)ピクチャなど、様々なタイプのイントラピクチャを使用できる。当業者は、Iピクチャの変形、ならびに、それらのそれぞれの用途および機能を認識している。
【0065】
予測ピクチャ(Pピクチャ)は、各ブロックのサンプル値を予測するために、最大で1つの動きベクトルおよび参照インデックスを使用するイントラ予測またはインター予測を使用して符号化および復号され得るものであり得る。
【0066】
双方向予測ピクチャ(Bピクチャ)は、各ブロックのサンプル値を予測するために、最大2つの動きベクトルおよび参照インデックスを使用するイントラ予測またはインター予測を使用して符号化および復号され得るものであり得る。同様に、複数の予測ピクチャは、単一のブロックの再構築のために3つ以上の参照ピクチャおよび関連するメタデータを使用できる。
【0067】
ソースピクチャは、通常、空間的に複数のサンプルブロック(例えば、それぞれ4×4、8×8、4×8、または16×16サンプルのブロック)に細分され、ブロックごとに符号化され得る。ブロックは、ブロックのそれぞれのピクチャに適用されるコーディング割り当てによって決定されるように、他の(すでに符号化された)ブロックを参照して予測的に符号化し得る。例えば、Iピクチャのブロックは、非予測的に符号化され得るか、または同じピクチャのすでに符号化されたブロックを参照して予測的に符号化され得る(空間予測またはイントラ予測)。Pピクチャの画素ブロックは、空間予測を介して、または以前に符号化された1つの参照ピクチャを参照する時間予測を介して、非予測的に符号化され得る。Bピクチャのピクセルブロックは、空間予測を介して、または以前に符号化された1つまたは2つの参照ピクチャを参照する時間予測を介して、非予測的に符号化され得る。
【0068】
ビデオエンコーダ(203)は、ITU-T Rec.H.265などの所定のビデオコーディング技術または規格に従ってコーディング動作を実行することができる。その動作において、ビデオエンコーダ(203)は、入力ビデオシーケンスにおける時間的および空間的冗長性を利用する予測コーディング動作を含む、様々な圧縮動作を実行し得る。したがって、コーディングされたビデオデータは、使用されているビデオコーディング技術または規格によって指定された構文に準拠することができる。
【0069】
一実施形態では、送信器(440)は、符号化ビデオとともに追加のデータを送信することができる。ビデオエンコーダ(430)は、符号化されたビデオシーケンスの一部としてそのようなデータを含み得る。追加のデータは、時間/空間/SNRの拡張レイヤ、冗長なピクチャおよびスライスなどの他の形式の冗長データ、補助拡張情報(Supplementary Enhancement Information:SEI)メッセージ、視覚ユーザビリティ情報(Visual Usability Information:VUI)パラメータ・セット・フラグメントなどを含んでよい。
【0070】
本開示の実施形態は、以下に説明する態様を実施することができる。
【0071】
[1.シーケンス・パラメータ・セット]
VVCドラフト8では、シーケンス・パラメータ・セット(SPS)内の構文要素は、表1に示すように提供され得る(詳細な説明の最後を参照)。そのような構文要素は、イントラコーディングおよびインターコーディングに関連し得る。HEVCと比較して、SPSにはより多くの構文要素が存在する。イントラスライスのみからなる任意のイントラプロファイルについて、インターコーディング構文要素は復号プロセスに使用されなくてもよいことに留意されたい。この状況は、どの静止ピクチャプロファイルでも同じであり得る。
【0072】
[2.プロファイル、ティア、およびレベル]
VVC Draft 9では、プロファイル、ティア、およびレベルの構文要素は、以下の表2に示すようにSPSに存在してもよく、一般的な制約情報は、表3に示すようにprofile_tier_level()に存在してもよい(詳細な説明の最後を参照)。
【0073】
【表1】
【0074】
1に等しい構文要素general_one_picture_only_constraint_flagは、ビットストリーム内にただ1つの符号化されたピクチャがあることを指定しうる。0に等しい構文要素general_one_picture_only_constraint_flagは、そのような制約を課さない場合がある。
【0075】
1に等しい構文要素intra_only_constraint_flagは、sh_slice_typeがIに等しいことを指定しうる。0に等しい構文要素intra_only_constraint_flagは、そのような制約を課さない場合がある。general_one_picture_only_constraint_flagが1に等しい場合、intra_only_constraint_flagの値は1に等しい必要があり得る。
【0076】
[3.ピクチャヘッダ]
VVCドラフト8では、構文要素は、以下に与えられる表3および表4に示されるようにピクチャヘッダ(picture header:PH)内に提供され得る(詳細な説明の最後を参照)。ピクチャは、イントラスライスとインタースライスとの組み合わせを有することができる。ピクチャがイントラスライスのみを有する場合、インターコーディング構文要素は復号プロセスで使用されなくてもよい。ピクチャ内のオーバーヘッドを低減するために、ph_inter_slice_allowed_flagおよびph_intra_slice_allowed_flagを使用して、イントラコーディング関連構文要素およびインターコーディング関連構文要素を条件付きでシグナリングすることができる。
【0077】
【表2】
【0078】
1に等しい構文要素ph_gdr_or_irap_pic_flagは、現在のピクチャがGDRまたはIRAPピクチャであることを指定し得る。0に等しい構文要素ph_gdr_or_irap_pic_flagは、現在のピクチャがGDRピクチャではないことを指定することができ、IRAPピクチャであってもなくてもよい。
【0079】
1に等しい構文要素ph_gdr_pic_flagは、PHに関連付けられたピクチャがGDRピクチャであることを指定し得る。0に等しい構文要素ph_gdr_pic_flagは、PHに関連付けられたピクチャがGDRピクチャではないことを指定し得る。存在しない場合、ph_gdr_pic_flagの値は0に等しいと推論されうる。sps_gdr_enabled_flagが0に等しいとき、ph_gdr_pic_flagの値は0に等しいことが必要とされ得る。一実施形態に応じて、ph_gdr_or_irap_pic_flagが1に等しく、ph_gdr_pic_flagが0に等しいとき、PHに関連付けられたピクチャはIRAPピクチャである。
【0080】
0に等しい構文要素ph_inter_slice_allowed_flagは、ピクチャのすべての符号化されたスライスが2に等しいsh_slice_typeを有することを指定し得る。1に等しい構文要素ph_inter_slice_allowed_flagは、0または1に等しいsh_slice_typeを有するピクチャ内の1つまたは複数の符号化されたスライスが存在してもしなくてもよいことを指定し得る。
【0081】
ph_gdr_or_irap_pic_flagが1に等しく、ph_gdr_pic_flagが0(すなわち、そのピクチャはIRAPピクチャである)に等しく、vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]が1に等しい場合、ph_inter_slice_allowed_flagの値は0に等しいことが必要とされ得る。
【0082】
0に等しい構文要素ph_intra_slice_allowed_flagは、ピクチャのすべての符号化されたスライスが0または1に等しいsh_slice_typeを有することを指定し得る。1に等しい構文要素ph_intra_slice_allowed_flagは、2に等しいsh_slice_typeを有するピクチャ内の1つまたは複数の符号化されたスライスが存在してもしなくてもよいことを指定し得る。存在しない場合、ph_intra_slice_allowed_flagの値は1に等しいとが推論され得る。一実施形態によれば、PHネットワーク抽象化レイヤ(NAL)ユニットを変更する必要なしにサブピクチャベースのビットストリームマージを機能させることが想定されているビットストリームの場合、エンコーダは、ph_inter_slice_allowed_flagおよびph_intra_slice_allowed_flagの両方の値を1に等しく設定することが期待され得る。
【0083】
1に等しい構文要素ph_non_ref_pic_flagは、PHと関連付けられたピクチャが決して参照ピクチャとして使用されないことを指定し得る。0に等しい構文要素ph_non_ref_pic_flagは、PHに関連付けられたピクチャが参照ピクチャとして使用されてもされなくてもよいことを指定し得る。
【0084】
構文要素ph_pic_parameter_set_idは、使用中のPPSのpps_pic_parameter_set_idの値を指定し得る。ph_pic_parameter_set_idの値は、0以上63以下の範囲であることが必要とされ得る。
【0085】
PHのTemporalIdの値が、pps_pic_parameter_set_idがph_pic_parameter_set_idと等しいPPSのTemporalIdの値以上であることは、ビットストリーム適合性の要件であり得る。
【0086】
構文要素ph_pic_order_cnt_lsbは、現在のピクチャのピクチャ順序カウントモジュロMaxPicOrderCntLsbを指定し得る。ph_pic_order_cnt_lsb構文要素の長さは、sps_log2_max_pic_order_cnt_lsb_minus4+4ビットであってもよい。ph_pic_order_cnt_lsbの値は、0以上、MaxPicOrderCntLsb-1以下の範囲である必要があり得る。
【0087】
構文要素ph_no_output_of_prior_pics_flagは、ビットストリーム内の最初のAUではないCVSSアクセスユニット(AU)内のピクチャの復号後のDPB内の以前に復号されたピクチャの出力に影響を与える。
【0088】
存在する場合、ph_no_output_of_prior_pics_flagの値がAU内のすべてのピクチャについて同じであることは、ビットストリーム適合性の要件であり得る。
【0089】
AU内のピクチャのPHにph_no_output_of_prior_pics_flagが存在する場合、AUのph_no_output_of_prior_pics_flag値は、AU内のピクチャのph_no_output_of_prior_pics_flag値であってもよい。
【0090】
構文要素ph_recovery_poc_cntは、復号されたピクチャの復元ポイントを出力順に指定し得る。
【0091】
現在のピクチャがGDRピクチャである場合、変数recoveryPointPocValは、以下のように導出されてもよい。
recoveryPointPocVal=PicOrderCntVal+ph_recovery_poc_cnt (1)
【0092】
現在のピクチャがGDRピクチャであり、PicOrderCntValがrecoveryPointPocValに等しい符号化層ビデオシーケンス(CLVS)において復号順で現在のGDRピクチャに続くピクチャpicAがある場合、そのピクチャpicAを復元ポイントピクチャと呼ぶことができる。そうでない場合、CLVSにおけるrecoveryPointPocValよりも大きいPicOrderCntValを有する出力順の最初のピクチャを、復元ポイントピクチャと呼ぶことができる。復元ポイントピクチャは、復号順序において現在のGDRピクチャの前にないことが要求され得る。現在のGDRピクチャに関連付けられ、かつrecoveryPointPocVal未満のPicOrderCntValを有するピクチャは、GDRピクチャの復元ピクチャと呼ばれる場合がある。ph_recovery_poc_cntの値は、0以上、MaxPicOrderCntLsb-1以下の範囲である必要があり得る。一実施形態によれば、sps_gdr_enabled_flagが1に等しく、現在のピクチャのPicOrderCntValが関連するGDRピクチャのrecoveryPointPocVal以上である場合、出力順序における現在および後続の復号されたピクチャは、存在する場合、復号順序において関連付けられるGDRピクチャに先行する前のIRAPピクチャから復号プロセスを開始することによって生成された対応するピクチャと完全に一致する。
【0093】
構文要素ph_extra_bit[i]は、1または0に等しくてもよい。デコーダは、ph_extra_bit[i]の値を無視する必要があり得る。その値は、指定されたプロファイルに対するデコーダの適合性に影響を与えない場合がある。
【0094】
1に等しい構文要素ph_poc_msb_cycle_present_flagは、構文要素ph_poc_msb_cycle_valがPHに存在することを指定し得る。0に等しいph_poc_msb_cycle_present_flagは、構文要素ph_poc_msb_cycle_valがPHに存在しないことを指定し得る。vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]が0に等しく、かつ、現在のレイヤの参照レイヤにおいて、現在のAUにピクチャが存在する場合、ph_poc_msb_cycle_present_flagの値は0に等しいことが必要とされ得る。
【0095】
構文要素ph_poc_msb_cycle_valは、現在のピクチャのPOC MSBサイクルの値を指定し得る。構文要素ph_poc_msb_cycle_valの長さは、sps_poc_msb_cycle_len_minus1+1ビットであってもよい。
【0096】
1に等しい構文要素ph_alf_enabled_flagは、適応ループフィルタが有効にされ、現在のピクチャに使用され得ることを指定し得る。0に等しい構文要素ph_alf_enabled_flagは、適応ループフィルタが無効にされ、現在のピクチャには使用されないことを指定し得る。存在しない場合、ph_alf_enabled_flagは0に等しいと推論され得る。
【0097】
構文要素ph_num_alf_aps_ids_lumaは、PHに関連付けられたスライスが参照するALF APSの数を指定し得る。
【0098】
構文要素ph_alf_aps_id_luma[i]は、PHに関連付けられたスライスのルーマ成分が参照するi番目の適応ループフィルタ(ALF)適応パラメータセット(APS)のaps_adaptation_parameter_set_idを指定する。
【0099】
ph_alf_aps_id_luma[i]が存在する場合、以下が適用され得る。
(a)ALF_APSに等しいaps_params_typeおよびph_alf_aps_id_luma[i]に等しいaps_adaptation_parameter_set_idを有するAPS NALユニットのalf_luma_filter_signal_flagの値は1に等しいものとする。
(b)ALF_APSに等しいaps_params_typeと、ph_alf_aps_id_luma[i]に等しいaps_adaptation_parameter_set_idとを有するAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
(c)ChromaArrayTypeが0に等しいとき、ALF_APSに等しいaps_params_typeおよびph_alf_aps_id_luma[i]に等しいaps_adaptation_parameter_set_idを有するAPS NALユニットのaps_chroma_present_flagの値は0に等しいものとする。
(d)sps_ccalf_enabled_flagが0である場合、ALF_APSに等しいaps_params_typeおよびph_alf_aps_id_luma[i]に等しいaps_adaptation_parameter_set_idを有するAPS NALユニットのalf_cc_cb_filter_signal_flagとalf_cc_cr_filter_signal_flagの値は0に等しいものとする。
【0100】
0に等しい構文要素ph_alf_cb_flagは、適応ループフィルタが無効にされ、現在のピクチャのCb色成分に適用されないことを指定し得る。1に等しい構文要素ph_alf_cb_flagは、適応ループフィルタが有効にされ、現在のピクチャのCb色成分に適用され得ることを指定し得る。ph_alf_cb_flagが存在しない場合、0に等しいと推論され得る。
【0101】
0に等しい構文要素ph_alf_cr_flagは、適応ループフィルタが無効にされ、現在のピクチャのCr色成分に適用されないことを指定し得る。1に等しい構文要素ph_alf_cr_flagは、適応ループフィルタが有効にされ、現在のピクチャのCr色成分に適用され得ることを指定し得る。ph_alf_cr_flagが存在しない場合、0に等しいと推論され得る。
【0102】
構文要素ph_alf_aps_id_chromaは、PHに関連付けられたスライスのクロマ成分が参照するALF APSのaps_adaptation_parameter_set_idを指定し得る。
【0103】
ph_alf_aps_id_chromaが存在する場合、以下が適用され得る。
(1)ALF_APSに等しいaps_params_typeおよびph_alf_aps_id_chromaに等しいaps_adaptation_parameter_set_idを有するAPS NALユニットのalf_chroma_filter_signal_flagの値は1に等しいものとする。
(2)ALF_APSに等しいaps_params_typeおよびph_alf_aps_id_chromaに等しいaps_adaptation_parameter_set_idを有するAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
(3)sps_ccalf_enabled_flagが0に等しいとき、ALF_APSに等しいaps_params_typeおよびph_alf_aps_id_chromaに等しいaps_adaptation_parameter_set_idを有するAPS NALユニットのalf_cc_cb_filter_signal_flagおよびalf_cc_cr_filter_signal_flagの値は0に等しいものとする。
【0104】
1に等しい構文要素ph_cc_alf_cb_enabled_flagは、Cb色成分のクロス成分適応ループフィルタが有効にされ、現在のピクチャに使用され得ることを指定し得る。0に等しい構文要素ph_cc_alf_cb_enabled_flagは、Cb色成分のクロス成分適応ループフィルタが無効にされ、現在のピクチャには使用されないことを指定し得る。存在しない場合、ph_cc_alf_cb_enabled_flagは0に等しいと推論され得る。
【0105】
構文要素ph_cc_alf_cb_aps_idは、PHに関連付けられたスライスのCb色成分が参照するALF APSのaps_adaptation_parameter_set_idを指定し得る。
【0106】
ph_cc_alf_cb_aps_idが存在するとき、以下が適用され得る。
(1)ALF_APSに等しいaps_params_typeおよびph_cc_alf_cb_aps_idに等しいaps_adaptation_parameter_set_idを有するAPS NALユニットのalf_cc_cb_filter_signal_flagの値は1に等しいものとする。
(2)ALF_APSに等しいaps_params_typeおよびph_cc_alf_cb_aps_idに等しいaps_adaptation_parameter_set_idを有するAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
【0107】
1に等しい構文要素ph_cc_alf_cr_enabled_flagは、Cr色成分の相互成分適応ループフィルタが有効にされ、現在のピクチャに使用され得ることを指定し得る。0に等しい構文要素ph_cc_alf_cr_enabled_flagは、Cr色成分のクロス成分適応ループフィルタが無効にされ、現在のピクチャには使用されないことを指定し得る。存在しない場合、ph_cc_alf_cr_enabled_flagは0に等しいと推論され得る。
【0108】
構文要素ph_cc_alf_cr_aps_idは、PHに関連付けられたスライスのCr色成分が参照するALF APSのaps_adaptation_parameter_set_idを指定し得る。
【0109】
ph_cc_alf_cr_aps_idが存在する場合、以下が適用され得る。
(1)ALF_APSに等しいaps_params_typeおよびph_cc_alf_cr_aps_idに等しいaps_adaptation_parameter_set_idを有するAPS NALユニットのalf_cc_cr_filter_signal_flagの値は1に等しいものとする。
(2)ALF_APSに等しいaps_params_typeおよびph_cc_alf_cr_aps_idに等しいaps_adaptation_parameter_set_idを有するAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
【0110】
1に等しい構文要素ph_lmcs_enabled_flagは、クロマスケーリングを伴うルーママッピングが有効にされることを指定することができ、現在のピクチャに対して使用されることができる。0に等しい構文要素ph_lmcs_enabled_flagは、クロマスケーリングによるルーママッピングが無効にされ、現在のピクチャには使用されないことを指定し得る。存在しない場合、ph_lmcs_enabled_flagの値は0に等しいと推論され得る。
【0111】
構文要素ph_lmcs_aps_idは、PHに関連付けられたスライスが参照するLMCS APSのaps_adaptation_parameter_set_idを指定し得る。
【0112】
ph_lmcs_aps_idが存在する場合、以下が適用され得る。
(1)LMCS_APSに等しいaps_params_typeと、ph_lmcs_aps_idに等しいaps_adaptation_parameter_set_idとを有するAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
(2)ChromaArrayTypeが0に等しいとき、LMCS_APSに等しいaps_params_typeおよびph_lmcs_aps_idに等しいaps_adaptation_parameter_set_idを有するAPS NALユニットのaps_chroma_present_flagの値は0に等しいものとする。
(3)LMCS_APSに等しいaps_params_typeおよびがph_lmcs_aps_idに等しいaps_adaptation_parameter_set_idを有するAPS NALユニットのlmcs_delta_cw_prec_minus1の値は、0以上BitDepth-2以下の範囲とする。
【0113】
1に等しい構文要素ph_chroma_residual_scale_flagは、クロマ残差スケーリングが有効にされ、現在のピクチャに使用され得ることを指定し得る。0に等しい構文要素ph_chroma_residual_scale_flagは、クロマ残差スケーリングが無効にされ、現在のピクチャには使用されないことを指定し得る。ph_chroma_residual_scale_flagが存在しない場合、0に等しいと推論され得る。一実施形態によれば、現在のピクチャがGDRピクチャまたはGDRピクチャの復元ピクチャであり、現在のピクチャが「リフレッシュ領域」(すなわち、存在する場合、前のIRAPピクチャから復号順に復号処理を開始するのと比較して、GDRピクチャから復号処理を開始するときに、復号されたサンプル値の完全一致を有する領域)と「ダーティ領域」(すなわち、存在する場合、前のIRAPピクチャから復号順に復号処理を開始するのと比較して、GDRピクチャから復号処理を開始するときに、復号されたサンプル値の完全一致を有しない可能性がある領域)との間の非CTU整列境界を含むとき、LMCSの彩度残差スケーリングは、「リフレッシュ領域」の復号されたサンプル値に影響を及ぼす「ダーティ領域」を回避するために現在のピクチャにおいて無効にされ得る。
【0114】
1に等しい構文要素ph_explicit_scaling_list_enabled_flagは、明示的なスケーリングリストが有効にされ、スライスを復号するときに変換係数のためのスケーリングプロセスにおいて現在のピクチャに使用され得ることを指定し得る。0に等しい構文要素ph_explicit_scaling_list_enabled_flagは、明示的なスケーリングリストが無効にされ、ピクチャに使用されないことを指定し得る。存在しない場合、ph_explicit_scaling_list_enabled_flagの値は0に等しいと推論され得る。
【0115】
構文要素ph_scaling_list_aps_idは、スケーリングリストAPSのaps_adaptation_parameter_set_idを指定し得る。
【0116】
ph_scaling_list_aps_idが存在する場合、以下が適用され得る。
(1)SCALING_APSに等しいaps_params_typeと、ph_scaling_list_aps_idに等しいaps_adaptation_parameter_set_idとを有するAPS NALユニットのTemporalIdは、PHに関連付けられたピクチャのTemporalId以下であるものとする。
(2)SCALING_APSに等しいaps_params_typeと、ph_scaling_list_aps_idに等しいaps_adaptation_parameter_set_idとを有するAPS NALユニットのaps_chroma_present_flagの値は、ChromaArrayType==0に等しいものとする?0:1。
【0117】
1に等しい構文要素ph_virtual_boundaries_present_flagは、PHにおいて仮想境界の情報がシグナリングされることを指定し得る。0に等しい構文要素ph_virtual_boundaries_present_flagは、PHにおいて仮想境界の情報がシグナリングされないことを指定し得る。PHにおいてシグナルされた1または複数の仮想境界が存在する場合、インループフィルタリング動作は、ピクチャ内の仮想境界にわたって無効にされ得る。インループフィルタリング動作は、デブロッキングフィルタ、サンプル適応オフセットフィルタ、および適応ループフィルタ動作を含み得る。存在しない場合、ph_virtual_boundaries_present_flagの値は0に等しいと推論され得る。
【0118】
sps_subpic_info_present_flagが1に等しいとき、ph_virtual_boundaries_present_flagの値は0に等しいことがビットストリーム適合性の要件であり得る。
【0119】
変数VirtualBoundariesPresentFlagは、以下のように導出され得る。
VirtualBoundariesPresentFlag=0
if(sps_virtual_boundaries_enabled_flag)
VirtualBoundariesPresentFlag=sps_virtual_boundaries_present_flag||
ph_virtual_boundaries_present_flag
【0120】
構文要素ph_num_ver_virtual_boundariesは、PHに存在するph_virtual_boundary_pos_x[i]構文要素の数を指定し得る。ph_num_ver_virtual_boundariesが存在しない場合、0に等しいと推論され得る。
【0121】
変数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
【0122】
構文要素ph_virtual_boundary_pos_x[i]は、ルーマサンプルを8で割った単位でi番目の垂直仮想境界の位置を指定し得る。ph_virtual_boundary_pos_x[i]の値は、1以上、かつ、Ceil(pps_pic_width_in_luma_samples÷8)-1以下の範囲であればよい。
【0123】
垂直仮想境界の位置を指定する、ルーマサンプル単位の0からNumVerVirtualBoundaries-1までの範囲のiについてのリストVirtualBoundaryPosX[i]は、以下のように導出することができる。
for(i=0;i<NumVerVirtualBoundaries;i++)
VirtualBoundaryPosX[i]=(sps_virtual_boundaries_present_flag?
sps_virtual_boundary_pos_x[i]:ph_virtual_boundary_pos_x[i])*8
【0124】
任意の2つの垂直仮想境界間の距離は、CtbSizeYルーマサンプル以上である必要があり得る。
【0125】
構文要素ph_num_hor_virtual_boundariesは、PHに存在するph_virtual_boundary_pos_y[i]構文要素の数を指定し得る。ph_num_hor_virtual_boundariesが存在しない場合、0に等しいと推論され得る。
【0126】
パラメータ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
【0127】
sps_virtual_boundaries_enabled_flagが1に等しく、ph_virtual_boundaries_present_flagが1に等しいとき、ph_num_ver_virtual_boundariesとph_num_hor_virtual_boundariesとの合計は0より大きい必要があり得る。
【0128】
構文要素ph_virtual_boundary_pos_y[i]は、ルーマサンプルを8で割った単位でi番目の水平仮想境界の位置を指定し得る。ph_virtual_boundary_pos_y[i]の値は、1以上、Ceil以下(pps_pic_height_in_luma_samples÷8)-1以下の範囲であればよい。
【0129】
水平仮想境界の位置を指定する、ルーマサンプル単位の0からNumHorVirtualBoundaries-1までの範囲のiについてのリストVirtualBoundaryPosY[i]は、以下のように導出することができる。
for(i=0;i<NumHorVirtualBoundaries;i++)
VirtualBoundaryPosY[i]=(sps_virtual_boundaries_present_flag?
sps_virtual_boundary_pos_y[i]:ph_virtual_boundary_pos_y[i])*8
【0130】
任意の2つの水平仮想境界間の距離は、CtbSizeYルーマサンプル以上である必要があり得る。
【0131】
構文要素ph_pic_output_flagは、復号されたピクチャの出力および除去プロセスに影響を及ぼし得る。ph_pic_output_flagが存在しない場合、1に等しいと推論され得る。一実施形態によれば、1に等しいph_non_ref_pic_flagおよび0に等しいph_pic_output_flagを有するピクチャがビットストリーム内に存在しなくてもよい。
【0132】
1に等しい構文要素ph_partition_constraints_override_flagは、パーティション制約パラメータがPHに存在することを指定し得る。0に等しい構文要素ph_partition_constraints_override_flagは、パーティション制約パラメータがPHに存在しないことを指定し得る。存在しない場合、ph_partition_constraints_override_flagの値は0に等しいと推論され得る。
【0133】
構文要素ph_log2_diff_min_qt_min_cb_intra_slice_lumaは、コーディング・ツリー・ユニット(CTU)の四分木分割から生じるルーマ・リーフ・ブロックのルーマサンプルにおける最小サイズの底2の対数と、PHに関連付けられた2(I)に等しいsh_slice_typeを有するスライス内のルーマCUのルーマサンプルにおける最小コーディング・ブロック・サイズの底2の対数との間の差を指定し得る。ph_log2_diff_min_qt_min_cb_intra_slice_lumaの値は、0以上、Min(6,CtbLog2SizeY)-MinCbLog2SizeY以下の範囲にする必要がある。存在しない場合、ph_log2_diff_min_qt_min_cb_lumaの値は、sps_log2_diff_min_qt_min_cb_intra_slice_lumaに等しいと推論されうる。
【0134】
構文要素ph_max_mtt_hierarchy_depth_intra_slice_lumaは、PHに関連付けられた2(I)に等しいsh_slice_typeを有するスライスにおける四分木リーフのマルチタイプツリー分割から生じるコーディングユニットのための最大階階層深さを指定し得る。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に等しいと推論されうる。
【0135】
構文要素ph_log2_diff_max_bt_min_qt_intra_slice_lumaは、バイナリ分割を使用して分割することができるルーマ・コーディング・ブロックのルーマサンプルにおける最大サイズ(幅または高さ)の底2の対数と、PHに関連付けられた2(I)に等しいsh_slice_typeを有するスライスにおけるCTUの四分木分割から生じるルーマ・リーフ・ブロックのルーマサンプルにおける最小サイズ(幅または高さ)との間の差を指定し得る。ph_log2_diff_max_bt_min_qt_intra_slice_lumaの値は、0以上(sps_qtbtt_dual_tree_intra_flag?Min(6,CtbLog2SizeY):CtbLog2SizeY)-MinQtLog2SizeIntraY以下の範囲内であればよい。存在しない場合、ph_log2_diff_max_bt_min_qt_intra_slice_lumaの値は、sps_log2_diff_max_bt_min_qt_intra_slice_lumaに等しいと推論されうる。
【0136】
構文要素ph_log2_diff_max_tt_min_qt_intra_slice_lumaは、3値分割を使用して分割することができるルーマ・コーディング・ブロックのルーマサンプルにおける最大サイズ(幅または高さ)の底2の対数と、PHに関連付けられた2(I)に等しいsh_slice_typeを有するスライスにおけるCTUの4分木分割から生じるルーマ・リーフ・ブロックのルーマサンプルにおける最小サイズ(幅または高さ)との間の差を指定し得る。ph_log2_diff_max_tt_min_qt_intra_slice_lumaの値は、0以上Min(6,CtbLog2SizeY)-MinQtLog 2 SizeIntraY以下の範囲である必要があり得る。存在しない場合、ph_log2_diff_max_tt_min_qt_intra_slice_lumaの値は、sps_log2_diff_max_tt_min_qt_intra_slice_lumaに等しいと推論されうる。
【0137】
構文要素ph_log2_diff_min_qt_min_cb_intra_slice_chromaは、DUAL_TREE_CHROMAに等しいtreeTypeを有する彩度CTUの四分木分割から生じる彩度リーフブロックのルーマサンプルにおける最小サイズの底2の対数と、PHに関連付けられた2(I)に等しいsh_slice_typeを有するスライスにおけるDUAL_TREE_CHROMAに等しいtreeTypeを有する彩度CUのルーマサンプルにおける最小コーディング・ブロック・サイズの底2の対数との間の差を指定し得る。ph_log2_diff_min_qt_min_cb_intra_slice_chromaの値は、0以上Min(6,CtbLog2SizeY)-MinCbLog2SizeY以下の範囲内であればよい。存在しない場合、ph_log2_diff_min_qt_min_cb_intra_slice_chromaの値は、sps_log2_diff_min_qt_min_cb_intra_slice_chromaと等しいと推論されうる。
【0138】
構文要素ph_max_mtt_hierarchy_depth_intra_slice_chromaは、PHに関連付けられた2(I)に等しいsh_slice_typeを有するスライスにおける、DUAL_TREE_CHROMAに等しいtreeTypeを有するクロマ・クアドツリー・リーフのマルチタイプツリー分割から生じるクロマ・コーディング・ユニットの最大階階層深さを指定し得る。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に等しいと推論されうる。
【0139】
構文要素ph_log2_diff_max_bt_min_qt_intra_slice_chromaは、バイナリ分割を使用して分割することができるクロマ・コーディング・ブロックのルーマサンプルにおける最大サイズ(幅または高さ)の底2の対数と、PHに関連付けられた2(I)に等しいsh_slice_typeを有するスライスにおけるDUAL_TREE_CHROMAに等しいtreeTypeを有する彩度CTUの四分木分割から生じるクロマ・リーフ・ブロックのルーマサンプルにおける最小サイズ(幅または高さ)との間の差を指定し得る。ph_log2_diff_max_bt_min_qt_intra_slice_chromaの値は、0以上、Min(6,CtbLog2SizeY)-MinQtLog2SizeIntraC以下の範囲にする必要がある。存在しない場合、ph_log2_diff_max_bt_min_qt_intra_slice_chromaの値は、sps_log2_diff_max_bt_min_qt_intra_slice_chromaと等しいと推論されうる。
【0140】
構文要素ph_log2_diff_max_tt_min_qt_intra_slice_chromaは、3値分割を使用して分割することができるクロマ・コーディング・ブロックのルーマサンプルにおける最大サイズ(幅または高さ)の底2の対数と、PHに関連付けられた2(I)に等しいsh_slice_typeを有するスライスにおけるDUAL_TREE_CHROMAに等しいtreeTypeを有する彩度CTUの四分木分割から生じるクロマ・リーフ・ブロックのルーマサンプルにおける最小サイズ(幅または高さ)との間の差を指定し得る。ph_log2_diff_max_tt_min_qt_intra_slice_chromaの値は、0以上Min(6,CtbLog2SizeY)-MinQtLog2SizeIntraC以下の範囲である必要があり得る。存在しない場合、ph_log2_diff_max_tt_min_qt_intra_slice_chromaの値は、sps_log2_diff_max_tt_min_qt_intra_slice_chromaに等しいと推論されうる。
【0141】
構文要素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-MinQtLog 2 SizeIntraY+ph_max_mtt_hierarchy_depth_intra_slice_luma)の範囲内であればよい。存在しない場合、ph_cu_qp_delta_subdiv_intra_sliceの値は0に等しいと推論され得る。
【0142】
構文要素ph_cu_chroma_qp_offset_subdiv_intra_sliceは、cu_chroma_qp_offset_flagを搬送するイントラスライス内のコーディングユニットの最大cbSubdiv値を指定し得る。ph_cu_chroma_qp_offset_subdiv_intra_sliceの値は、0以上2*以下(CtbLog2SizeY-MinQtLog 2 SizeIntraY+ph_max_mtt_hierarchy_depth_intra_slice_luma)の範囲内であればよい。存在しない場合、ph_cu_chroma_qp_offset_subdiv_intra_sliceの値は0に等しいと推論され得る。
【0143】
構文要素ph_log2_diff_min_qt_min_cb_inter_sliceは、CTUの四分木分割から生じるルーマ・リーフ・ブロックのルーマサンプルにおける最小サイズの底2の対数と、PHに関連付けられたsh_slice_typeが0(B)または1(P)に等しいスライス内のルーマCUのルーマサンプルにおける最小ルーマ・コーディング・ブロック・サイズの底2の対数との間の差を指定し得る。ph_log2_diff_min_qt_min_cb_inter_sliceの値は、0以上Min(6,CtbLog2SizeY)-MinCbLog2SizeY以下の範囲であればよい。存在しない場合、ph_log2_diff_min_qt_min_cb_lumaの値は、sps_log2_diff_min_qt_min_cb_inter_sliceに等しいと推論されうる。
【0144】
構文要素ph_max_mtt_hierarchy_depth_inter_sliceは、PHに関連付けられた0(B)または1(P)に等しいsh_slice_typeを有するスライスにおける四分木リーフのマルチタイプツリー分割から生じるコーディングユニットのための最大階層深さを指定し得る。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に等しいと推論されうる。
【0145】
構文要素ph_log2_diff_max_bt_min_qt_inter_sliceは、バイナリ分割を使用して分割することができるルーマ・コーディング・ブロックのルーマサンプルにおける最大サイズ(幅または高さ)の底2の対数と、PHに関連付けられた0(B)または1(P)に等しいsh_slice_typeを有するスライスにおけるCTUの四分木分割から生じるルーマ・リーフ・ブロックのルーマサンプルにおける最小サイズ(幅または高さ)との間の差を指定し得る。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に等しいと推論され得る。
【0146】
構文要素ph_log2_diff_max_tt_min_qt_inter_sliceは、3値分割を使用して分割することができるルーマ・コーディング・ブロックのルーマサンプルにおける最大サイズ(幅または高さ)の底2の対数と、PHに関連付けられた0(B)または1(P)に等しいsh_slice_typeを有するスライスにおけるCTUの4分木分割から生じるルーマ・リーフ・ブロックのルーマサンプルにおける最小サイズ(幅または高さ)との間の差を指定し得る。ph_log2_diff_max_tt_min_qt_inter_sliceの値は、0以上Min(6,CtbLog2SizeY)-MinQtLog2SizeInterY以下の範囲であればよい。存在しない場合、ph_log2_diff_max_tt_min_qt_inter_sliceの値は、sps_log2_diff_max_tt_min_qt_inter_sliceに等しいと推論されうる。
【0147】
構文要素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に等しいと推論され得る。
【0148】
構文要素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に等しいと推論され得る。
【0149】
0に等しい構文要素ph_temporal_mvp_enabled_flagは、時間動きベクトル予測子が無効にされ、現在のピクチャ内のスライスの復号に使用されないことを指定し得る。1に等しい構文要素ph_temporal_mvp_enabled_flagは、時間動きベクトル予測子が有効にされ、現在のピクチャ内のスライスの復号に使用され得ることを指定し得る。存在しない場合、ph_temporal_mvp_enabled_flagの値は0に等しいと推論され得る。一実施形態によれば、他の既存の制約のために、以下の条件のうちの1つまたは複数が真である場合、ph_temporal_mvp_enabled_flagの値は、適合するビットストリームにおいてのみ0に等しくてもよい:(1)DPB内の参照ピクチャが現在のピクチャと同じ空間解像度および同じスケーリング・ウィンドウ・オフセットを有さない、および2)現在のピクチャ内のすべてのスライスの参照ピクチャリスト(RPL)のアクティブエントリ内に復号されたピクチャバッファ(DPB)内の参照ピクチャが存在しない。ph_temporal_mvp_enabled_flagが列挙されていない0にしか等しくならない他の条件が存在してもよい。
【0150】
サブブロックベースのマージMVP候補の最大数MaxNumSubblockMergeCandは、以下のように導出することができる。
if(sps_affine_enabled_flag)
MaxNumSubblockMergeCand=5-sps_five_minus_max_num_subblock_merge_cand
else
MaxNumSubblockMergeCand=sps_sbtmvp_enabled_flag&&ph_temporal_mvp_enabled_flag
【0151】
MaxNumSubblockMergeCandの値は、0以上5以下の範囲である必要があり得る。
【0152】
1に等しい構文要素ph_collocated_from_l0_flagは、時間動きベクトル予測に使用されるコロケートピクチャが参照ピクチャリスト0から導出されることを指定し得る。0に等しい構文要素ph_collocated_from_l0_flagは、時間動きベクトル予測に使用されるコロケートピクチャが参照ピクチャリスト1から導出されることを指定し得る。ph_temporal_mvp_enabled_flagとpps_rpl_info_in_ph_flagとが両方とも1に等しく、num_ref_entries[1][RplsIdx[1]]が0に等しい場合、ph_collocated_from_l0_flagの値は1に等しいと推論されうる。
【0153】
構文要素ph_collocated_ref_idxは、時間的動きベクトル予測に使用されるコロケートされたピクチャの参照インデックスを指定し得る。
【0154】
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に等しいと推論され得る。
【0155】
1に等しい構文要素ph_mmvd_fullpel_only_flagは、動きベクトル差を有するマージモードがPHに関連付けられたスライス内の整数サンプル精度を使用することを指定し得る。0に等しい構文要素ph_mmvd_fullpel_only_flagは、動きベクトル差を有するマージモードがPHに関連付けられたスライスにおける小数サンプル精度を使用することができることを指定し得る。存在しない場合、ph_mmvd_fullpel_only_flagの値は0であると推論され得る。
【0156】
1に等しい構文要素ph_mvd_l1_zero_flagは、mvd_coding(x0,y0,1,cpIdx)構文構造が解析されず、MvdL 1[x0][y0][compIdx]およびMvdCpL 1[x0][y0][cpIdx][compIdx]がcompIdx=0..1およびcpIdx=0..2に対して0に等しく設定されることを指定し得る。0に等しい構文要素ph_mvd_l1_0_flagは、mvd_coding(x0,y0,1,cpIdx)構文構造が構文解析されることを指定し得る。存在しない場合、ph_mvd_l1_0_flagの値は1であると推論することができる。
【0157】
1に等しい構文要素ph_bdof_disabled_flagは、双方向オプティカル・フロー・インター予測ベースのインターバイ予測が無効にされ、PHに関連付けられたスライスでは使用されないことを指定し得る。0に等しい構文要素ph_bdof_disabled_flagは、双方向オプティカル・フロー・インター予測ベースのインターバイ予測が有効にされ、PHに関連付けられたスライスにおいて使用され得ることを指定し得る。
【0158】
存在しない場合、ph_bdof_disabled_flagの値は以下のように推論することができる。
(1)sps_bdof_control_present_in_ph_flagが0に等しい場合、ph_bdof_disabled_flagの値は1-sps_bdof_enabled_flagに等しいと推論される。
(2)そうでない場合(sps_bdof_control_present_in_ph_flagが1に等しい)、ph_bdof_disabled_flagの値は1に等しいと推論される。
【0159】
1に等しい構文要素ph_dmvr_disabled_flagは、デコーダ・モーション・ベクトル・リファイナメントベースのインターバイ予測が無効にされ、PHに関連付けられたスライスにおいて使用されないことを指定し得る。0に等しい構文要素ph_dmvr_disabled_flagは、デコーダ・モーション・ベクトル・リファイナメントベースのインターバイ予測が有効にされ、PHに関連付けられたスライスにおいて使用され得ることを指定し得る。
【0160】
存在しない場合、ph_dmvr_disabled_flagの値は、以下のように推論することができる。
(1)sps_dmvr_control_present_in_ph_flagが0に等しい場合、ph_dmvr_disabled_flagの値は1-sps_dmvr_enabled_flagに等しいと推論される。
(2)そうでない場合(sps_dmvr_control_present_in_ph_flagが1に等しい)、ph_dmvr_disabled_flagの値は1に等しいと推論される。
【0161】
1に等しい構文要素ph_prof_disabled_flagは、オプティカルフローによる予測精密化が無効にされ、PHに関連付けられたスライスにおいて使用されないことを指定し得る。0に等しい構文要素ph_prof_disabled_flagは、オプティカルフローによる予測精密化が有効にされ、PHに関連付けられたスライスにおいて使用され得ることを指定し得る。
【0162】
ph_prof_disabled_flagが存在しない場合、以下が適用され得る。
(1)sps_affine_prof_enabled_flagが1に等しい場合、ph_prof_disabled_flagの値は0に等しいと推論される。
(2)そうでない場合(sps_affine_prof_enabled_flagが0に等しい)、ph_prof_disabled_flagの値は1に等しいと推論される。
【0163】
構文要素ph_qp_deltaは、コーディング・ユニット・レイヤにおけるCuQpDeltaValの値によって修正されるまで、ピクチャにおけるコーディングブロックのために使用されるQpYの初期値を指定し得る。
【0164】
pps_qp_delta_info_in_ph_flagが1に等しいとき、ピクチャのすべてのスライスSliceQpYに対するQpY量子化パラメータの初期値は、以下のように導出され得る。
SliceQpY=26+pps_init_qp_minus26+ph_qp_delta
【0165】
SliceQpYの値は、-QpBdOffset以上+63以下の範囲内であればよい。
【0166】
構文要素ph_joint_cbcr_sign_flagは、tu_joint_cbcr_residual_flag[x0][y0]が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)残差サンプルの反転符号によって与えられることを指定し得る。
【0167】
1に等しい構文要素ph_sao_luma_enabled_flagは、サンプル・アダプティブ・オフセット(SAO)が有効にされ、現在のピクチャのルーマ成分に使用され得ることを指定し得る。0に等しい構文要素ph_sao_luma_enabled_flagは、SAOが無効にされ、現在のピクチャのルーマ成分に使用されないことを指定し得る。ph_sao_luma_enabled_flagが存在しない場合、0に等しいと推論され得る。
【0168】
1に等しい構文要素ph_sao_chroma_enabled_flagは、SAOが有効にされ、現在のピクチャのクロマ成分に使用され得ることを指定し得る。0に等しい構文要素ph_sao_chroma_enabled_flagは、SAOが無効にされ、現在のピクチャのクロマ成分に使用されないことを指定し得る。ph_sao_chroma_enabled_flagが存在しない場合、0に等しいと推論され得る。
【0169】
1に等しい構文要素ph_deblocking_filter_override_flagは、PHにデブロッキングパラメータが存在することを指定し得る。0に等しい構文要素ph_deblocking_filter_override_flagは、PHにデブロッキングパラメータが存在しないことを指定し得る。存在しない場合、ph_deblocking_filter_override_flagの値は0に等しいと推論され得る。
【0170】
1に等しい構文要素ph_deblocking_filter_disabled_flagは、シーケンスヘッダ(SH)内にsh_deblocking_filter_disabled_flagが存在せず、1に等しいか、SH内に存在し、1に等しいと推論されるPHに関連付けられたスライスにデブロッキングフィルタの演算が適用されないことを指定することができ、また、sh_deblocking_filter_disabled_flagがSH内に存在せず、0に等しいか、SH内に存在し、0に等しいと推論されるPHに関連付けられたスライスにデブロッキングフィルタの演算が適用されることを指定することもできる。
【0171】
0に等しい構文要素ph_deblocking_filter_disabled_flagは、デブロッキングフィルタの動作が、sh_deblocking_filter_disabled_flagがSHに存在せず、0に等しいか、SH内に存在し、0に等しいと推論されるPHに関連付けられたスライスに適用されることを指定することができ、また、デブロッキングフィルタの動作が、sh_deblocking_filter_disabled_flagがSHに存在せず、1に等しいか、SH内に存在し、1に等しいと推論されるPHに関連付けられたスライスに適用されないことを指定することもできる。
【0172】
ph_deblocking_filter_disabled_flagが存在しない場合、以下のように推論することができる。
(1)pps_deblocking_filter_disabled_flagとph_deblocking_filter_override_flagとがいずれも1に等しい場合、ph_deblocking_filter_disabled_flagの値は0に等しいと推論される。
(2)そうでない場合(pps_deblocking_filter_disabled_flagまたはph_deblocking_filter_override_flagが0に等しい)、ph_deblocking_filter_disabled_flagの値はpps_deblocking_filter_disabled_flagに等しいと推論される。
【0173】
構文要素ph_luma_beta_offset_div2およびph_luma_tc_offset_div2は、PHに関連付けられたスライスのルーマ成分に適用される(2で除算された)βおよびtCのデブロッキング・パラメータ・オフセットを指定し得る。ph_luma_beta_offset_div2およびph_luma_tc_offset_div2の値は、いずれも-12以上12以下の範囲内である必要があり得る。存在しない場合、ph_luma_beta_offset_div2およびph_luma_tc_offset_div2の値は、それぞれpps_luma_beta_offset_div2およびpps_luma_tc_offset_div2に等しいと推論されうる。
【0174】
構文要素ph_cb_beta_offset_div2およびph_cb_tc_offset_div2は、PHに関連付けられたスライスのCb成分に適用される(2で除算された)βおよびtCのデブロッキング・パラメータ・オフセットを指定し得る。ph_cb_beta_offset_div2およびph_cb_tc_offset_div2の値は、いずれも-12以上12以下の範囲内であればよい。存在しない場合、ph_cb_beta_offset_div2およびph_cb_tc_offset_div2の値は、それぞれph_luma_beta_offset_div2およびph_luma_tc_offset_div2に等しいと推論されうる。
【0175】
構文要素ph_cr_beta_offset_div2およびph_cr_tc_offset_div2は、PHに関連付けられたスライスのCr成分に適用される(2で除算された)βおよびtCのデブロッキング・パラメータ・オフセットを指定し得る。ph_cr_beta_offset_div2およびph_cr_tc_offset_div2の値は、いずれも-12以上12以下の範囲内であればよい。存在しない場合、ph_cr_beta_offset_div2およびph_cr_tc_offset_div2の値は、それぞれph_luma_beta_offset_div2およびph_luma_tc_offset_div2に等しいと推論されうる。
【0176】
構文要素ph_extension_lengthは、ph_extension_length自体をシグナリングするために使用されるビットを含まずに、PH拡張データの長さをバイトで指定し得る。ph_extension_lengthの値は、0以上256以下である必要があり得る。存在しない場合、ph_extension_lengthの値は0に等しいと推論されうる。
【0177】
構文要素ph_extension_data_byteは、どのような値であってもよい。デコーダは、ph_extension_data_byteの値を無視する必要があり得る。その値は、指定されたプロファイルに対するデコーダの適合性に影響を与えない場合がある。
【0178】
[4.プロファイル]
4.1 Main 10、Main10静止ピクチャプロファイル
Main 10またはMain 10静止ピクチャプロファイルに準拠するビットストリームは、以下の制約に従う必要があり得る。
(1)Main 10静止ピクチャプロファイルに準拠したビットストリームでは、1つのピクチャのみを含んでいればよい。
(2)参照されるSPSは、0または1に等しいsps_chroma_format_idcを有する必要があり得る。
(3)参照されるSPSは、0以上2以下の範囲のsps_bit_depth_minus 8を有する必要があり得る。
(4)Main 10静止ピクチャプロファイルに準拠するビットストリームでは、参照されるSPSは、0に等しいmax_dec_pic_buffering_minus1[sps_max_sublayers_minus1]を有する必要があり得る。
(5)参照されるSPSは、0に等しいsps_palette_enabled_flagを有する必要があり得る。
(6)Main 10静止ピクチャプロファイルに準拠しないMain 10プロファイルに準拠するビットストリームでは、参照されるVPS(利用可能な場合)および参照されるSPS内のiのすべての値について、general_level_idcおよびsublayer_level_idc[i]は、255(これはレベル15.5を示す)に等しくないことが要求され得る。
(7)Main 10またはMain 10静止ピクチャプロファイルに指定されたティアおよびレベル制約は、適用可能な場合、満たされる必要があり得る。
(8)Main 10プロファイルに対するビットストリームの適合性は、general_profile_idcが1に等しいことによって示され得る。
(9)Main 10静止ピクチャプロファイルへのビットストリームの適合性は、general_one_picture_only_constraint_flagが1に等しく、general_profile_idcが1に等しいことによって示すことができる。
【0179】
一実施形態によれば、ビットストリームのMain 10静止ピクチャプロファイルへの適合性が上記のように示され、示されたレベルがレベル15.5ではない場合、ビットストリームのMain 10プロファイルへの適合性を示すための条件も満たされる。
【0180】
特定のティアの特定のレベルでMain 10プロファイルに準拠するデコーダは、以下の条件のすべてが適用されるすべてのビットストリームを復号できる必要があり得る。
(1)ビットストリームは、Main 10またはMain 10静止ピクチャプロファイルに準拠するように指示される。
(2)ビットストリームは、指定されたティア以下のティアに適合するように示される。
(3)ビットストリームは、レベル15.5ではなく、指定されたレベル以下のレベルに適合するように示される。
(4)特定のティアの特定のレベルでMain 10静止ピクチャプロファイルに準拠するデコーダは、以下の条件のすべてが適用されるすべてのビットストリームを復号できるように要求され得る。
(4)ビットストリームは、Main 10静止ピクチャプロファイルに準拠するように指示される。
(5)ビットストリームは、指定されたティア以下のティアに適合するように示される。
(6)ビットストリームは、レベル15.5ではなく、指定されたレベル以下のレベルに適合するように示される。
【0181】
4.2 Main 4:4:4 10とMain 4:4:4 10静止ピクチャプロファイル
Main 4:4:4 10またはMain 4:4:4 10静止ピクチャプロファイルに準拠するビットストリームは、以下の制約に従う必要があり得る。
(1)Main 4:4:4 10静止ピクチャプロファイルに準拠したビットストリームでは、一つのピクチャのみを含む必要がある場合がある。
(2)参照されるSPSは、0以上3以下の範囲のsps_chroma_format_idcを有する必要があり得る。
(3)参照されるSPSは、0以上2以下の範囲のsps_bit_depth_minus 8を有する必要があり得る。
(4)Main 4:4:4 10静止ピクチャプロファイルに準拠するビットストリームにおいて、参照されるSPSは、0に等しいmax_dec_pic_buffering_minus1[sps_max_sublayers_minus1]を有する必要があり得る。
(5)Main 4:4:4 10静止ピクチャプロファイルに準拠しないMain 4:4:4 10プロファイルに準拠するビットストリームでは、参照されるVPS(利用可能な場合)および参照されるSPS内のiのすべての値についてのgeneral_level_idcおよびsublayer_level_idc[i]は、255(これはレベル15.5を示す)に等しくないことが要求され得る。
(6)適用可能な場合、Main 4:4:4 10またはMain 4:4:4 10静止ピクチャプロファイルに指定されたティアおよびレベル制約を満たす必要がある場合がある。
(7)Main 4:4:4 10プロファイルへのビットストリームの適合性は、general_profile_idcが2に等しいことによって示される。
(8)Main 4:4:4 10静止ピクチャプロファイルへのビットストリームの適合性は、general_one_picture_only_constraint_flagが1に等しく、general_profile_idcが2に等しいことによって示される。
【0182】
一実施形態によれば、ビットストリームのMain 10 4:4:4静止ピクチャプロファイルへの適合性が上記のように示され、示されたレベルがレベル15.5ではない場合、ビットストリームのMain 10 4:4:4プロファイルへの適合性を示すための条件も満たされる。
【0183】
特定のティアの特定のレベルでメイン4:4:4 10プロファイルに準拠するデコーダは、以下の条件のすべてが適用されるすべてのビットストリームを復号することが可能であり得る。
(1)ビットストリームは、Main 4:4:4 10、Main 10、Main 4:4:4 10静止ピクチャ、またはMain 10静止ピクチャのプロファイルに準拠するように指示される。
(2)ビットストリームは、指定されたティア以下のティアに適合するように示される。
(3)ビットストリームは、レベル15.5ではなく、指定されたレベル以下のレベルに適合するように示される。
【0184】
特定のティアの特定のレベルのMain 4:4:4 10静止ピクチャプロファイルに準拠するデコーダは、以下の条件のすべてが適用されるすべてのビットストリームを復号できる必要があり得る。
(1)ビットストリームは、Main 4:4:4 10静止ピクチャまたはMain 10静止ピクチャのプロファイルに準拠するように指示される。
(2)ビットストリームは、指定されたティア以下のティアに適合するように示される。
(3)ビットストリームは、レベル15.5ではなく、指定されたレベル以下のレベルに適合するように示される。
【0185】
[5.SPSシグナリング]
以前には、シーケンス内にイントラスライスのみが存在することを示すためにSPSレベルのフラグ(sps_inter_allowed_flag)が提案されており、このフラグは、冗長性を低減するためにインターコーディング関連構文要素のシグナリングをスキップするために使用される。sps_inter_allowed_flagが1に等しいとき、インターコーディング関連構文要素がSPSに存在し得る。sps_inter_allowed_flagが0に等しいとき、イントラコーディング関連構文要素のみがSPSに存在し得る。
【0186】
さらに、シーケンス内にイントラスライスのみが存在することを示すためにPPSレベルのフラグ(pps_inter_allowed_flag)が提案され、このフラグは、冗長性を低減するためにインターコーディング関連構文要素のシグナリングをスキップするために使用される。pps_inter_allowed_flagが1に等しいとき、インターコーディング関連構文要素がPPS内に存在し得る。pps_inter_allowed_flagが0に等しいとき、イントラコーディング関連構文要素のみがPPS内に存在し得る。
【0187】
[6.静止ピクチャプロファイルの構文要素の制約]
本開示の実施形態は、別々に使用されてもよく、任意の順序で組み合わされてもよい。さらに、各実施形態(例えば、方法、エンコーダ、およびデコーダ)は、処理回路(例えば、1つもしくは複数のプロセッサまたは1つもしくは複数の集積回路)によって実施されてもよい。一例では、1つまたは複数のプロセッサは、非一時的コンピュータ可読媒体に格納されているプログラムを実行する。本開示の実施形態は、VVCドラフト8 vEに対する変更を提供することができる。本開示の実施形態の態様を以下に説明する。
【0188】
態様1:実施形態は、VVCにおける全イントラプロファイルを有し得る。全イントラプロファイルは、このプロファイルに適合するすべてのスライスがイントラのみであるという制約を含み得る。
【0189】
態様2:実施形態は、VVCにおいて静止ピクチャプロファイルを有することができる。静止ピクチャプロファイルは、このプロファイルに従うすべてのスライスがイントラのみを有するという制約を含み得る。静止ピクチャプロファイルは、カメラの静止画撮影、コンピュータ生成画像、またはビデオシーケンスからのスナップショットの抽出に使用することができる。このプロファイルは、サブセクション4.1で上述したMain 10プロファイル(「Main 10 and Main 10 Still Picture profile」)の機能のサブセットであってもよい。
【0190】
態様3:実施形態は、VVCにone_picture_only_constraint_flagを含み得る。1に等しい構文要素one_picture_only_constraint_flagは、slice_typeがI sliceに等しく、ビットストリーム内にただ1つのピクチャが存在することを指定する(例えば、ドコーダに)ことができる。0に等しい構文要素one_picture_only_constraint_flagは、そのような制約を課さない場合がある。
【0191】
態様3.1:一実施形態では、以下の表5および表6に示すように、profile_tier_level()において、one_picture_only_constraint_flagがシグナリング(例えば、デコーダへ)され得る。
【0192】
【表3】
【0193】
【表4】
【0194】
態様4:上記態様3に加えて、実施形態は、intra_only_constraint_flagとone_picture_only_constraint_flagとの間に制約を有してもよい。
【0195】
態様4.1:一実施形態では、one_picture_only_constraint_flagがintra_only_constraint_flagの前にシグナリングされ、one_picture_only_constraint_flagが1である場合、ビットストリーム適合性は、intra_only_constraint_flagも1であることを必要とし得る。
【0196】
1に等しい構文要素one_picture_only_constraint_flagは、slice_typeがI sliceに等しく、ビットストリーム内にただ1つのピクチャが存在することを指定する(例えば、デコーダへ)ことができる。0に等しい構文要素one_picture_only_constraint_flagは、そのような制約を課さない場合がある。
【0197】
1に等しい構文要素intra_only_constraint_flagは、slice_typeがIに等しいことを指定する(例えば、デコーダへ)ことができる。0に等しい構文要素intra_only_constraint_flagは、そのような制約を課さない場合がある。ビットストリーム適合性は、one_picture_only_constraint_flagが1であるとき、intra_only_constraint_flagが1であることを必要とする場合がある。
【0198】
態様4.2:一実施形態では、one_picture_only_constraint_flagが1に等しいとき、ピクチャは、IDRまたはCRAなどのIRAPピクチャであり得る。
【0199】
態様4.3:一実施形態では、one_picture_only_constraint_flagが1に等しいとき、VPSは存在せず、レイヤ数は1に等しくてもよい。
【0200】
態様4.4:一実施形態では、one_picture_only_constraint_flagが1に等しいとき、参照ピクチャリストおよびピクチャ順序カウントがピクチャヘッダまたはスライスヘッダに存在しなくてもよい。
【0201】
態様4.5:一実施形態では、one_picture_only_constraint_flagが1に等しいとき、アクセス・ユニット・デリミタ(AUD)およびストリーム終了(EOS)NALユニットはビットストリーム内に存在しなくてもよい。
【0202】
態様5:態様1に加えて、すべてのイントラプロファイルについて、intra_only_constraint_flagの値が1であることが必要な場合がある。したがって、すべてのイントラプロファイルにおいて、イントラスライスのみがビットストリーム内に存在し得る。
【0203】
態様6:態様2および3に加えて、静止ピクチャプロファイルの場合、one_picture_only_constraint_flagの値が1であり、intra_only_constraint_flagの値が1であってもよい。したがって、静止ピクチャプロファイルでは、ビットストリームにはイントラスライスのみが存在することができ、ビットストリームには1つのピクチャのみが存在する。
【0204】
態様7:態様2および4に加えて、静止ピクチャプロファイルの場合、one_picture_only_constraint_flagの値が1であってもよい。したがって、静止ピクチャプロファイルでは、ビットストリームにはイントラスライスのみが存在することができ、ビットストリームには1つのピクチャのみが存在する。
【0205】
態様8:intra_only_constraint_flagが存在し、1に等しい場合、非イントラ関連構文要素はシグナリングされない。
【0206】
態様8.1:一実施形態では、intra_only_constraint_flagが存在し、1に等しい場合、サブセクション5で上述したsps_inter_allowed_flagとpps_inter_allowed_flagの両方(「SPSシグナリング」)は0の値を有する。intra_only_constraint_flagが存在しないか、0に等しい値を有する場合、そのような制約はsps_inter_allowed_flagおよびpps_inter_allowed_flagに適用されない場合がある。
【0207】
態様9:one_picture_only_constraint_flagが存在し、1に等しい場合、非イントラ関連構文要素はシグナリングされない。
【0208】
態様9.1:一実施形態では、one_picture_only_constraint_flagが存在し、1に等しい場合、サブセクション5(「SPSシグナリング」)で上述したsps_inter_allowed_flagとpps_inter_allowed_flagの両方が0の値を有する。one_picture_only_constraint_flagが存在しない、または0に等しい値を有するとき、そのような制約は、sps_inter_allowed_flagおよびpps_inter_allowed_flagに適用されない場合がある。
【0209】
態様10:実施形態によれば、_one_picture_present_flagのみがVVCにおいて提供され得る。
【0210】
態様10.1:一実施形態では、sps_only_one_picture_present_flagがSPSでシグナリングされる。
【0211】
1に等しい構文要素sps_only_one_picture_present_flagは、slice_typeがI sliceに等しく、ビットストリーム内にただ1つのピクチャが存在することを指定する(例えば、デコーダへ)ことができる。0に等しい構文要素one_picture_only_constraint_flagは、そのような制約を課さない。
【0212】
態様11:態様10に加えて、one_picture_only_constraint_flagが存在し、1に等しいとき、ピクチャ順序カウント(POC)値およびRPLに関する非イントラ関連構文要素および構文要素はシグナリングされなくてもよい。
【0213】
態様11.1:一実施形態では、one_picture_only_constraint_flagが存在し、1に等しい場合、ビットストリーム適合性は、sps_only_one_picture_present_flagがone_picture_only_constraint_flagと同じ値を有することを必要とし得る。
【0214】
[7.例示的な実施形態]
本開示の実施形態は、別々に使用されてもよく、任意の順序で組み合わされてもよい。さらに、各実施形態(例えば、方法、エンコーダ、およびデコーダ)は、処理回路(例えば、1つもしくは複数のプロセッサまたは1つもしくは複数の集積回路)によって実施されてもよい。一例では、1つまたは複数のプロセッサは、非一時的コンピュータ可読媒体に格納されているプログラムを実行する。本開示の実施形態は、VVC Draft 9 vAに対する変更を提供することができる。本開示の実施形態の態様を以下に説明する。
【0215】
態様1:実施形態は、ビットストリーム内にただ1つの符号化されたピクチャがあるかどうかを指定するSPSでシグナリングされたsps_only_one_picture_present_flagを有することができる。上記のサブセクション6の態様10(「静止ピクチャプロファイルの構文要素の制約」)で説明したように、sps_only_one_picture_present_flagがSPSでシグナリングされる場合、SPSは、以下の表7に示すように、より詳細には表8に示すように提供され得る(詳細な説明の最後を参照)。
【0216】
【表5】
【0217】
本開示の例示的な実施形態の態様1および他の態様の以下の説明は、表8を参照して行われる(詳細な説明の最後を参照)。
【0218】
1に等しい構文要素sps_only_one_picture_present_flagは、ビットストリーム内にただ1つの符号化されたピクチャがあることを指定し得る。0に等しい構文要素sps_only_one_picture_present_flagは、ビットストリーム内に2つ以上の符号化されたピクチャが存在することを指定することができ、sh_slice_typeは1に等しいものとする。general_one_picture_only_constraint_flagが1に等しいとき、sps_only_one_picture_present_flagが1に等しいことはビットストリーム適合性であり得る。
【0219】
態様1.1:sps_only_one_picture_present_flagが1に等しい場合、以下のようにVPS関連構文要素をスキップして推論(例えば、デコーダによって、)してもよい。
【0220】
構文要素sps_video_parameter_set_idは、0より大きい場合、SPSによって参照されるVPSのvps_video_parameter_set_idの値を指定し得る。sps_only_one_picture_present_flagが1に等しいとき、sps_video_parameter_set_idは0に等しい。
【0221】
sps_video_parameter_set_idが0に等しいとき、以下が適用され得る。
(1)SPSはVPSを参照せず、SPSを参照する各CLVSを復号するときにVPSは参照されない。
(2)vps_max_layers_minus1の値は0に等しいと推論される。
(3)vps_max_sublayers_minus1の値は6に等しいと推論される。
(4)CVSは、1つの層(すなわち、CVS内のすべてのVCL NALユニットは、nuh_layer_idの同じ値を有するものとする)のみを含むものとする。
(5)GeneralLayerIdx[nuh_layer_id]の値は0に等しいと推論される。
(6)vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]の値は1に等しいと推論される。
【0222】
vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]が1に等しいとき、特定のnuh_layer_id値nuhLayerIdを有するCLVSによって参照されるSPSは、nuhLayerIdに等しいnuh_layer_idを有する必要があり得る。
【0223】
sps_video_parameter_set_idの値は、CVS内のCLVSによって参照されるすべてのSPSで同じである必要があり得る。
【0224】
sps_max_sublayers_minus1+1は、SPSを参照する各CLVS内に存在し得る時間的サブレイヤの最大数を指定し得る。sps_max_sublayers_minus1の値は、0以上、vps_max_sublayers_minus1以下の範囲であればよい。sps_only_one_picture_present_flagが1に等しいとき、sps_max_sublayers_minus1は0に等しい。
【0225】
態様1.2:sps_only_one_picture_present_flagが1に等しいとき、profile_tier_level()構文構造およびdpb_parameters()構文構造がSPSに存在する必要があり得る。したがって、sps_ptl_dpb_hrd_params_present_flagはスキップされ、1に等しいと推論され得る。
【0226】
1に等しいsps_ptl_dpb_hrd_params_present_flagは、profile_tier_level()構文構造およびdpb_parameters()構文構造がSPSに存在することを指定することができ、general_hrd_parameters()構文構造およびols_hrd_parameters()構文構造もSPSに存在し得る。0に等しいsps_ptl_dpb_hrd_params_present_flagは、これらの4つの構文構造のいずれもSPSに存在しないことを指定し得る。sps_only_one_picture_present_flagが1に等しいとき、sps_ptl_dpb_hrd_params_present_flagは1に等しい。
【0227】
sps_video_parameter_set_idが0より大きく、SPSのnuh_layer_idに等しいnuh_layer_idを有する1つのレイヤのみを含むOLSが存在する場合、またはsps_video_parameter_set_idが0に等しい場合、sps_ptl_dpb_hrd_params_present_flagの値は1に等しいことが必要とされ得る。
【0228】
態様1.3:sps_only_one_picture_present_flagが1に等しいとき、ビットストリーム内に1つの符号化されたピクチャのみが存在し、したがって、ピクチャ順序カウント関連構文要素は必要とされない場合がある。したがって、POCに関連するこれらの構文要素はスキップされて推論され得る。
【0229】
構文要素sps_log2_max_pic_order_cnt_lsb_minus4は、ピクチャ順序カウントの復号処理で使用される変数MaxPicOrderCntLsbの値を以下のように指定し得る。
MaxPicOrderCntLsb=2(sps_log2_max_pic_order_cnt_lsb_minus4+4)
【0230】
sps_log2_max_pic_order_cnt_lsb_minus4の値は、0以上12以下の範囲にする必要がある。sps_only_one_picture_present_flagが1に等しいとき、sps_log2_max_pic_order_cnt_lsb_minus4は0に等しい。
【0231】
1に等しいsps_poc_msb_cycle_flagは、ph_poc_msb_cycle_present_flag構文要素がSPSを参照するPHに存在することを指定し得る。0に等しい構文要素sps_poc_msb_cycle_flagは、SPSを参照するPHにph_poc_msb_cycle_present_flag構文要素が存在しないことを指定し得る。sps_only_one_picture_present_flagが1に等しいとき、sps_poc_msb_cyle_flagは0に等しい。
【0232】
態様1.4:sps_only_one_picture_present_flagが1に等しい場合、符号化された1つのピクチャのみがビットストリーム内に存在し、そのピクチャはIスライスに等しいスライスタイプのみを有する。したがって、sps_log2_diff_min_qt_min_cb_inter_sliceやsps_max_mtt_hierarchy_depth_inter_sliceなどのインタースライスに関する構文要素をスキップして推論してもよい。
【0233】
態様1.5:sps_only_one_picture_present_flagが1に等しい場合、符号化された1つのピクチャのみがビットストリーム内に存在し、そのピクチャはIスライスに等しいスライスタイプのみを有する。したがって、sps_weighted_pred_flag、sps_weighted_bipred_flagなどのインター・コーディング・ツールに関連する構文要素は、以下のようにスキップされ、推論され得る。
【0234】
1に等しい構文要素sps_weighted_pred_flagは、SPSを参照するP枚のスライスに重み付き予測が適用され得ることを指定し得る。0に等しい構文要素sps_weighted_pred_flagは、SPSを参照するP枚のスライスに重み付け予測が適用されないことを指定し得る。存在しない場合、sps_weighted_pred_flagの値は0に等しいと推論され得る。
【0235】
1に等しい構文要素sps_weighted_bipred_flagは、SPSを参照するBスライスに明示的な重み付き予測が適用され得ることを指定し得る。0に等しい構文要素sps_weighted_bipred_flagは、SPSを参照するBスライスに明示的な重み付き予測が適用されないことを指定し得る。存在しない場合、sps_weighted_bipred_flagの値は0に等しいと推論され得る。
【0236】
0に等しい構文要素sps_long_term_ref_pics_flagは、CLVS内の任意の符号化されたピクチャのインター予測に長期参照ピクチャ(long term reference picture:LTRP)が使用されないことを指定し得る。1に等しい構文要素sps_long_term_ref_pics_flagは、LTRPがCLVS内の1つまたは複数の符号化されたピクチャのインター予測に使用され得ることを指定し得る。存在しない場合、sps_long_term_ref_pics_flagの値は0に等しいと推論され得る。
【0237】
1に等しい構文要素sps_idr_rpl_present_flagは、参照ピクチャリストの構文要素がIDRピクチャのスライスヘッダ内に存在することを指定し得る。0に等しい構文要素sps_idr_rpl_present_flagは、参照ピクチャリストの構文要素がIDRピクチャのスライスヘッダ内に存在しないことを指定し得る。存在しない場合、sps_idr_rpl_present_flagの値は0に等しいと推論され得る。
【0238】
1に等しい構文要素sps_rpl1_same_as_rpl0_flagは、構文要素sps_num_ref_pic_lists[1]および構文構造ref_pic_list_struct(1,rplsIdx)が存在しないことを指定することができ、以下が適用され得る。
(1)sps_num_ref_pic_lists[1]の値は、sps_num_ref_pic_lists[0]の値と等しいと推論される。
(2)ref_pic_list_struct(1,rplsIdx)内の各構文要素の値は、0からsps_num_ref_pic_lists[0]-1までの範囲のrplsIdxについてのref_pic_list_struct(0,rplsIdx)内の対応する構文要素の値と等しいと推論される。
【0239】
sps_rpl1_same_as_rpl0_flagが存在しない場合、sps_rpl1_same_as_rpl0_flagの値は0に等しいと推論され得る。
【0240】
構文要素sps_num_ref_pic_lists[i]は、SPSに含まれるiに等しいlistIdxを有するref_pic_list_struct(listIdx,rplsIdx)構文構造の数を指定し得る。sps_num_ref_pic_lists[i]の値は、0以上64以下の範囲内であればよい。存在しない場合、sps_num_ref_pic_lists[i]の値は0に等しいと推論され得る。
【0241】
実施形態によれば、(0または1に等しい)listIdxの各値について、デコーダは、現在のピクチャのスライスヘッダ内で直接シグナリングされる1つのref_pic_list_struct(listIdx,rplsIdx)構文構造が存在し得るので、sps_num_ref_pic_list[i]+1 ref_pic_list_struct(listIdx,rplsIdx)構文構造の総数のためにメモリを割り当てることができる。
【0242】
1に等しい構文要素sps_ref_wraparound_enabled_flagは、水平ラップアラウンド動き補償が有効にされることを指定することができ、CLVS内のピクチャを復号するときにインター予測に適用され得ることを指定し得る。0に等しい構文要素sps_ref_wraparound_enabled_flagは、CLVS内のピクチャを復号するときに水平ラップアラウンド動き補償が無効にされ、インター予測において適用されないことを指定し得る。存在しない場合、sps_ref_wraparound_enabled_flagの値は0に等しいと推論され得る。
【0243】
ビットストリーム適合性の要件は、0以上sps_num_subpics_minus1以下の範囲内のiの1つまたは複数の値が存在し、sps_subpic_treated_as_pic_flag[i]が1に等しく、sps_subpic_width_minus1[i]+1が(sps_pic_width_max_in_luma_samples+CtbSizeY-1)>>CtbLog2SizeY)に等しくない場合、sps_ref_wraparound_enabled_flagの値は0に等しいものとすることであり得る。
【0244】
1に等しい構文要素sps_temporal_mvp_enabled_flagは、時間動きベクトル予測子が有効にされ、CLVS内のピクチャの復号に使用され得ることを指定し得る。0に等しい構文要素sps_temporal_mvp_enabled_flagは、時間動きベクトル予測子が無効化され、CLVS内のピクチャの復号に使用されないことを指定し得る。存在しない場合、sps_temporal_mvp_enabled_flagの値は0に等しいと推論され得る。
【0245】
1に等しい構文要素sps_amvr_enabled_flagは、適応動きベクトル差分解像度が有効にされ、CVLSにおけるピクチャの復号における動きベクトルコーディングにおいて使用され得ることを指定し得る。0に等しい構文要素amvr_enabled_flagは、適応動きベクトル差分解像度が無効にされ、CLVS内のピクチャの復号化における動きベクトルコーディングで使用されないことを指定し得る。存在しない場合、sps_amvr_enabled_flagの値は0に等しいと推論され得る。
【0246】
0に等しい構文要素sps_bdof_enabled_flagは、双方向オプティカル・フロー・インター予測が無効にされ、CLVS内のピクチャの復号に使用されないことを指定し得る。1に等しい構文要素sps_bdof_enabled_flagは、双方向オプティカル・フロー・インター予測が有効にされ、CLVS内のピクチャの復号に使用することができることを指定し得る。存在しない場合、sps_bdof_enabled_flagの値は0に等しいと推論され得る。
【0247】
1に等しい構文要素sps_smvd_enabled_flagは、対称動きベクトル差が有効にされ、CLVSにおけるピクチャの復号における動きベクトル復号に使用され得ることを指定し得る。0に等しい構文要素sps_smvd_enabled_flagは、対称動きベクトル差が無効にされ、CLVS内のピクチャの復号における動きベクトルコーディングで使用されないことを指定し得る。存在しない場合、sps_smvd_enabled_flagの値は0に等しいと推論され得る。
【0248】
1に等しい構文要素sps_dmvr_enabled_flagは、デコーダ動きベクトル精密化ベースのインター双予測が有効にされ、CLVS内のピクチャの復号において使用され得ることを指定し得る。0に等しい構文要素sps_dmvr_enabled_flagは、デコーダ動きベクトル精密化ベースのインター双予測が無効にされ、CLVS内のピクチャの復号に使用されないことを指定し得る。存在しない場合、sps_dmvr_enabled_flagの値は0に等しいと推論され得る。
【0249】
1に等しい構文要素sps_mmvd_enabled_flagは、動きベクトル差を伴うマージモードが有効にされ、CLVS内のピクチャの復号において使用され得ることを指定し得る。0に等しい構文要素sps_mmvd_enabled_flagは、動きベクトル差を有するマージモードが無効にされ、CLVS内のピクチャの復号で使用されないことを指定し得る。存在しない場合、sps_mmvd_enabled_flagの値は0に等しいと推論され得る。
【0250】
構文要素sps_six_minus_max_num_merge_candは、6から減算されたSPSにおいてサポートされているマージ動きベクトル予測(MVP)候補の最大数を指定し得る。sps_six_minus_max_num_merge_candの値は、0以上5以下の範囲である必要があり得る。存在しない場合、sps_six_minus_max_num_merge_candの値は6に等しいと推論されうる。
【0251】
マージMVP候補の最大数MaxNumMergeCandは、以下のように導出することができる。
MaxNumMergeCand=6-sps_six_minus_max_num_merge_cand
【0252】
0に等しい構文要素sps_sbt_enabled_flagは、インター予測されたCUのサブブロック変換が無効にされ、CLVS内のピクチャの復号に使用されないことを指定し得る。1に等しい構文要素sps_sbt_enabled_flagは、インター予測されたCUのサブブロック変換が有効にされることを指定することができ、CLVS内のピクチャの復号に使用することができることを指定し得る。存在しない場合、sps_sbt_enabled_flagの値は0に等しいと推論される。
【0253】
0に等しい構文要素sps_affine_enabled_flagは、アフィン・モデル・ベースの動き補償が無効にされ、CLVS内のピクチャの復号に使用されず、inter_affine_flagおよびcu_affine_type_flagがCLVSのコーディングユニット構文に存在しないことを指定し得る。1に等しい構文要素sps_affine_enabled_flagは、アフィン・モデル・ベースの動き補償が有効にされ、CLVS内のピクチャの復号に使用され得、inter_affine_flagおよびcu_affine_type_flagは、CLVSのコーディングユニット構文内に存在し得ることを指定し得る。存在しない場合、sps_affine_enabled_flagの値は0に等しいと推論され得る。
【0254】
構文要素sps_five_minus_max_num_subblock_merge_candは、5から減算されたSPSでサポートされるサブブロックベースのマージ動きベクトル予測候補の最大数を指定し得る。sps_five_minus_max_num_subblock_merge_candの値は、0以上、5-sps_sbtmvp_enabled_flag以下の範囲である必要があり得る。存在しない場合、sps_five_minus_max_num_subblock_merge_candの値は、5-sps_sbtmvp_enabled_flagに等しいと推論され得る。
【0255】
0に等しい構文要素sps_bcw_enabled_flagは、CU重みを用いた双予測が無効にされ、CLVSにおけるピクチャの復号に使用されず、bcw_idxがCLVSのコーディングユニット構文に存在しないことを指定し得る。1に等しい構文要素sps_bcw_enabled_flagは、CU重みによる双予測が有効にされ、CLVS内のピクチャの復号に使用され得、bcw_idxはCLVSのコーディングユニット構文内に存在し得ることを指定し得る。存在しない場合、sps_bcw_enabled_flagの値は0に等しいと推論され得る。
【0256】
構文要素sps_ciip_enabled_flagは、ciip_flagがインター・コーディング・ユニットのためのコーディングユニット構文に存在し得ることを指定し得る。0に等しい構文要素sps_ciip_enabled_flagは、ciip_flagがインター・コーディング・ユニットのコーディングユニット構文に存在しないことを指定し得る。存在しない場合、sps_ciip_enabled_flagの値は0に等しいと推論され得る。
【0257】
構文要素sps_log2_parallel_merge_level_minus2 plus 2は、空間マージ候補の導出プロセス、サブブロック・マージ・モードにおける動きベクトルおよび参照インデックスの導出プロセスで使用され、履歴ベースの動きベクトル予測子リストの更新プロセスの呼び出しを制御する変数Log2ParMrgLevelの値を指定し得る。存在しない場合、sps_log2_parallel_merge_level_minus2の値は0に等しいと推論され得る。sps_log2_parallel_merge_level_minus2の値は、0以上、CtbLog2SizeY-2以下の範囲であればよい。変数Log2ParMrgLevelは、以下のように導出することができる。
Log2ParMrgLevel=sps_log2_parallel_merge_level_minus2+2
【0258】
態様2:general_constraint_info()のgeneral_one_picture_only_constraint_flagが1に等しい場合、intra_only_constraint_flagの値が1に等しい必要があり得る。intra_only_constraint_flagが1に等しい場合、スライスタイプはIスライスである。したがって、インター・コーディング・ツールに関連する構文要素は必要とされない場合がある。実施形態は、以下のようにgeneral_constraint_info()内の構文要素を制約することができる。
【0259】
1に等しい構文要素no_sbtmvp_constraint_flagは、sps_sbtmvp_enabled_flagが0に等しいことを指定し得る。0に等しい構文要素no_sbtmvp_constraint_flagは、そのような制約を課さない場合がある。no_temporal_mvp_constraint_flagが1に等しいとき、no_sbtmvp_constraint_flagの値は1に等しい必要があり得る。intra_only_constraint_flagが1に等しい場合、no_sbtmvp_constraint_flagの値は1に等しい必要があり得る。
【0260】
1に等しい構文要素no_sbt_constraint_flagは、sps_sbt_enabled_flagが0に等しいことを指定し得る。0に等しい構文要素no_sbt_constraint_flagは、そのような制約を課さない場合がある。intra_only_constraint_flagが1に等しい場合、no_sbt_constraint_flagの値は1に等しい必要があり得る。
【0261】
態様3:態様1に加えて、PH内の構文要素は、sps_only_one_picture_present_flagの値に基づいて制約され得る。例えば、本開示の実施形態による例示的なPHを表9に示す(詳細な説明の最後を参照されたい)。
【0262】
態様3.1:表9を参照すると、sps_only_one_picture_present_flagが1に等しいとき、ビットストリーム内に存在する符号化されたピクチャは1つのみであり、ピクチャのすべての符号化されたスライスはIスライスに等しいスライスタイプを有する。したがって、ピクチャ内に存在する可能なスライスタイプを示すph_inter_slice_allowed_flagおよびph_intra_slice_allowed_flagなどの構文要素は、sps_only_one_picture_present_flagが1に等しいときにスキップされ得る。
【0263】
0に等しい構文要素ph_inter_slice_allowed_flagは、ピクチャのすべての符号化されたスライスが2に等しいsh_slice_typeを有することを指定し得る。1に等しい構文要素ph_inter_slice_allowed_flagは、0または1に等しいsh_slice_typeを有するピクチャ内の1つまたは複数の符号化されたスライスが存在してもしなくてもよいことを指定し得る。存在しない場合、ph_inter_slice_allowed_flagの値は0に等しいと推論され得る。
【0264】
態様3.2:表9を参照すると、sps_only_one_picture_present_flagが1に等しいとき、ビットストリーム内に存在する符号化されたピクチャは1つのみであり、ピクチャのすべての符号化されたスライスはIスライスに等しいスライスタイプを有する。したがって、sps_only_one_picture_present_flagが1に等しいとき、ph_non_ref_pic_flagおよび参照ピクチャリスト構造ref_pic_lists()などの参照ピクチャに関する構文要素はスキップされ得る。
【0265】
1に等しい構文要素ph_non_ref_pic_flagは、PHと関連付けられたピクチャが決して参照ピクチャとして使用されないことを指定し得る。0に等しい構文要素ph_non_ref_pic_flagは、PHに関連付けられたピクチャが参照ピクチャとして使用されてもされなくてもよいことを指定し得る。存在しない場合、ph_non_ref_pic_flagの値は0に等しいと推論され得る。
【0266】
態様3.3:表9を参照すると、sps_only_one_picture_present_flagが1に等しいとき、ビットストリーム内に存在する符号化されたピクチャは1つのみであり、ピクチャのすべての符号化されたスライスはIスライスに等しいスライスタイプを有する。したがって、sps_only_one_picture_present_flagが1に等しい場合、ph_pic_order_cnt_lsbやph_recovery_poc_cnt等のピクチャ順序カウント(POC)や復号ピクチャバッファ(DPB)に関する構文要素をスキップするようにしてもよい。
【0267】
構文要素ph_pic_order_cnt_lsbは、現在のピクチャのピクチャ順序カウントモジュロMaxPicOrderCntLsbを指定し得る。ph_pic_order_cnt_lsb構文要素の長さは、sps_log2_max_pic_order_cnt_lsb_minus4+4ビットであってもよい。ph_pic_order_cnt_lsbの値は、0以上、MaxPicOrderCntLsb-1以下の範囲である必要があり得る。存在しない場合、ph_pic_order_cnt_lsbの値は0に等しいと推論されうる。
【0268】
構文要素ph_no_output_of_prior_pics_flagは、ビットストリーム内の最初のAUではないCVSS AU内のピクチャの復号後のDPB内の以前に復号されたピクチャの出力に影響を及ぼし得る。
【0269】
存在する場合、ph_no_output_of_prior_pics_flagの値は、AU内のすべてのピクチャについて同じとすることがビットストリーム適合性の要件であり得る。
【0270】
AU内のピクチャのPHにph_no_output_of_prior_pics_flagが存在する場合、AUのph_no_output_of_prior_pics_flag値は、AU内のピクチャのph_no_output_of_prior_pics_flag値である。存在しない場合、ph_no_output_of_prior_pics_flagの値は0に等しいと推論され得る。
【0271】
構文要素ph_recovery_poc_cntは、復号されたピクチャの復元ポイントを出力順に指定し得る。
【0272】
現在のピクチャがGDRピクチャである場合、変数recoveryPointPocValは、以下のように導出されてもよい。
recoveryPointPocVal=PicOrderCntVal+ph_recovery_poc_cnt
【0273】
現在のピクチャがGDRピクチャであり、recoveryPointPocValに等しいPicOrderCntValを有するCLVS内に復号順で現在のGDRピクチャに続くピクチャpicAがある場合、そのピクチャpicAを復元ポイントピクチャと呼ぶことができる。そうでない場合、CLVSにおけるrecoveryPointPocValよりも大きいPicOrderCntValを有する出力順の最初のピクチャを、復元ポイントピクチャと呼ぶことができる。復元ポイントピクチャは、復号順序において現在のGDRピクチャの前にないことが要求され得る。現在のGDRピクチャに関連付けられ、かつrecoveryPointPocVal未満のPicOrderCntValを有するピクチャは、GDRピクチャの復元ピクチャと呼ばれる場合がある。ph_recovery_poc_cntの値は、0以上、MaxPicOrderCntLsb-1以下の範囲である必要があり得る。存在しない場合、ph_recovery_poc_cntの値は0に等しいと推論され得る。
【0274】
1に等しい構文要素ph_poc_msb_cycle_present_flagは、構文要素ph_poc_msb_cycle_valがPHに存在することを指定し得る。0に等しい構文要素ph_poc_msb_cycle_present_flagは、構文要素ph_poc_msb_cycle_valがPHに存在しないことを指定し得る。vps_independent_layer_flag[GeneralLayerIdx[nuh_layer_id]]が0に等しく、かつ、現在のレイヤの参照レイヤにおいて、現在のAUにピクチャが存在する場合、ph_poc_msb_cycle_present_flagの値は0に等しいことが必要とされ得る。存在しない場合、ph_poc_msb_cycle_present_flagの値は0に等しいと推論され得る。
【0275】
[8.例示的なコンピュータコード]
本開示の実施形態は、コンピュータコードを記憶する少なくとも1つのプロセッサおよびメモリを備えることができる。コンピュータコードは、少なくとも1つのプロセッサによって実行されると、少なくとも1つのプロセッサに本開示の実施形態の機能を実行させるように構成されてもよい。
【0276】
例えば、図5を参照すると、本開示のデコーダ(500)は、コンピュータコードを記憶する少なくとも1つのプロセッサおよびメモリを備えることができる。コンピュータ命令は、推論コード(510)、制約コード(520)、および復号コード(530)を含み得る。デコーダ(500)は、図2図3に示すビデオデコーダ(210)を実装することができる。デコーダ(500)は、少なくとも1つの符号化されたピクチャおよびパラメータセット(例えば、SPSおよびVPS)およびヘッダ(例えばピクチャヘッダ)を含むビットストリームを受信するように構成され得る。
【0277】
推論コード(510)は、例えば、本開示のサブセクション7(「例示的な実施形態」)の態様1~3.3のうちの1つまたは複数に従って、少なくとも1つのプロセッサに構文要素をスキップおよび推論させるように構成され得る。例えば、少なくとも1つのプロセッサは、ビットストリームで提供される「sps_only_one_picture_present_flag」の値に基づいて構文要素をスキップして推論することができる。
【0278】
制約コード(520)は、例えば、本開示のサブセクション7(「例示的な実施形態」)の態様1~3.3のうちの1つまたは複数に従って、少なくとも1つのプロセッサに構文要素を制約させるように構成され得る。
【0279】
復号コード(530)は、少なくとも1つのプロセッサに、本開示のサブセクション7(「例示的な実施形態」)の態様1-3.3の推論された構文要素および制約付き構文要素のうちの1つまたは複数に基づいて、少なくとも1つの符号化されたピクチャを復号させるように構成され得る。
【0280】
上述した本開示の実施形態の技法は、コンピュータ可読命令を使用し、1つまたは複数のコンピュータ可読媒体に物理的に記憶されたコンピュータソフトウェアとして実施することができる。例えば、図8は、開示された主題の実施形態を実施するのに適したコンピュータシステム(900)を示す。
【0281】
コンピュータソフトウェアは、アセンブリ、コンパイル、リンク、または同様のメカニズムの対象となる可能性のある任意の適切な機械語またはコンピュータ言語を使用して符号化して、直接または、コンピュータ中央処理装置(CPU)、グラフィック処理装置(GPU)などによって変換、マイクロコード実行などを介して実行できる命令を含むコードを作成できる。
【0282】
命令は、例えば、パーソナルコンピュータ、タブレットコンピュータ、サーバ、スマートフォン、ゲームデバイス、IoTデバイスなどを含む様々な種類のコンピュータまたはその構成要素上で、実行され得る。
【0283】
コンピュータシステム(900)について図8に示す構成要素は、本質的に例示的なものであり、本開示の実施形態を実施するコンピュータソフトウェアの使用または機能の範囲に関する制限を示唆することを意図するものではない。構成要素の構成は、コンピュータシステム(900)の例示的な実施形態に示されている構成要素のいずれか1つまたは組み合わせに関する依存関係または要件を有すると解釈されるべきではない。
【0284】
コンピュータシステム(900)は、一定のヒューマンインターフェース入力デバイスを含み得る。そのようなヒューマンインターフェース入力デバイスは、例えば、触覚入力(例えば、キーストローク、スワイプ、データグローブの動き)、音声入力(例えば、声、拍手)、視覚入力(例えば、ジェスチャ)、嗅覚入力(図示せず)を介した1人または複数の人間のユーザによる入力に応答してもよい。ヒューマン・インターフェース・デバイスは、オーディオ(例えば、音声、音楽、周囲音)、画像(例えば、走査画像、写真画像は静止画像カメラから取得)、ビデオ(2次元映像、立体映像を含む3次元映像など)など、必ずしも人間による意識的な入力に直接関連しない一定の媒体を取り込むために使用され得る。
【0285】
入力ヒューマン・インターフェース・デバイスには、キーボード(901)、マウス(902)、トラックパッド(903)、タッチスクリーン(910)、データグローブ、ジョイスティック(905)、マイク(906)、スキャナ(907)、およびカメラ(908)のうち1つまたは複数(それぞれ図示のものの1つのみ)が含まれ得る。
【0286】
コンピュータシステム(900)はまた、一定のヒューマンインターフェース出力デバイスを含み得る。そのようなヒューマンインターフェース出力デバイスは、例えば、触覚出力、音、光、および匂い/味によって1人または複数の人間のユーザの感覚を刺激することができる。そのようなヒューマンインターフェース出力デバイスは、触覚出力デバイス(例えば、タッチスクリーン(910)、データグローブ、またはジョイスティック(905)による触覚フィードバックであるが、入力デバイスとして機能しない触覚フィードバックデバイスも存在し得る)を含み得る。例えば、そのようなデバイスは、音声出力デバイス(例えば、スピーカ(909)、ヘッドホン(図示せず))、視覚出力装置(例えば、CRTスクリーン、LCDスクリーン、プラズマスクリーン、OLEDスクリーンを含むスクリーン(910)であって、それぞれがタッチスクリーン入力機能を有するかまたは有さず、それぞれが触覚フィードバック機能を有するかまたは有さず、その一部は、ステレオ出力などの手段を介して二次元視覚出力または三次元超出力を出力することができてもよい、スクリーン、仮想現実メガネ(図示せず)、ホログラフィックディスプレイ、および煙タンク(図示せず))、およびプリンタ(図示せず)であってもよい。
【0287】
コンピュータシステム(900)はまた、ヒューマンアクセス可能な記憶デバイスおよびそれらの関連媒体、例えば、CD/DVDなどの媒体(921)を有するCD/DVD ROM/RW(920)を含む光学媒体、サムドライブ(922)、リムーバブル・ハード・ドライブまたはソリッド・ステート・ドライブ(923)、テープおよびフロッピーディスク(図示せず)などのレガシー磁気媒体、セキュリティドングル(図示せず)などの専用ROM/ASIC/PLDベースのデバイスなどを含み得る。
【0288】
当業者はまた、本開示内容に関連して使用される「コンピュータ可読媒体」という用語が、伝送媒体、搬送波、または他の一時的信号を包含しないことを理解すべきである。
【0289】
コンピュータシステム(900)は、1つまたは複数の通信ネットワークへのインターフェースも含み得る。ネットワークは、例えば、無線、有線、光であり得る。ネットワークはさらに、ローカル、広域、メトロポリタン、車両および産業、リアルタイム、遅延耐性などにすることができる。ネットワークの例としては、イーサネット、無線LAN、GSM、3G、4G、5G、LTEなどを含むセルラーネットワークなどのローカル・エリア・ネットワーク、ケーブルテレビ、衛星テレビ、地上波放送テレビを含むTV有線または無線広域デジタルネットワーク、CANBusなどが含まれる車両用、産業用など、がある。一定のネットワークでは、一般に、一定の汎用データポートまたは周辺バス(949)(例えば、コンピュータシステム(900)のUSBポートなど)に接続された外部ネットワーク・インターフェース・アダプタが必要であり、他のものは一般に、以下に説明するようにシステムバスに接続することにより、コンピュータシステム900のコアに統合される(例えば、PCコンピュータシステムへのイーサネットインターフェースまたはスマートフォン・コンピュータ・システムへのセルラー・ネットワーク・インターフェース)。これらのネットワークのいずれかを使用して、コンピュータシステム(900)は他のエンティティと通信できる。このような通信は、単方向、受信のみ(例えば、放送TV)、単方向送信のみ(例えば、CANbusから一定CANbusデバイス)、または双方向、例えば、ローカル・エリア・デジタル・ネットワークまたはワイド・エリア・デジタル・ネットワークを使用する他のコンピュータシステムへの通信であり得る。そのような通信は、クラウドコンピューティング環境(955)への通信を含み得る。一定のプロトコルおよびプロトコルスタックは、上述したように、それらのネットワークおよびネットワークインターフェースのそれぞれで使用し得る。
【0290】
前述のヒューマン・インターフェース・デバイス、人間がアクセス可能な記憶デバイス、およびネットワークインターフェース(954)は、コンピュータシステム(900)のコア(940)に取り付けられ得る。
【0291】
コア(940)には、1つまたは複数の中央処理装置(CPU)(941)、グラフィックス処理装置(GPU)(942)、フィールド・プログラマブル・ゲート・エリア(FPGA)(943)、一定のタスクのハードウェアアクセラレータ(944)などの形式の特殊なプログラマブル処理装置を含めることができる。これらのデバイスは、読み取り専用メモリ(ROM)(945)、ランダム・アクセス・メモリ(946)、ユーザがアクセスできない内部ハードドライブ、SSDなどの内部大容量記憶装置(947)とともに、システムバス(948)を介して接続され得る。いくつかのコンピュータシステムでは、システムバス(948)は、追加のCPU、GPUなどによる拡張を可能にするために、1つまたは複数の物理プラグの形態でアクセス可能であり得る。周辺デバイスは、コアのシステムバス(948)に直接、または周辺バス(949)を介して接続できる。周辺バスのアーキテクチャには、PCI、USBなどが含まれる。グラフィックスアダプタ950は、コア940に含まれてもよい。
【0292】
CPU(941)、GPU(942)、FPGA(943)、およびアクセラレータ(944)は、組み合わせて上述のコンピュータコードを構成することができる一定の命令を実行することができる。そのコンピュータコードは、ROM(945)またはRAM(946)に格納され得る。移行データはまた、RAM(946)に格納され得、一方、永続データは、例えば内部大容量記憶装置(947)に格納され得る。メモリデバイスのいずれかへの高速記憶および検索は、1つまたは複数のCPU(941)、GPU(942)、大容量記憶装置(947)、ROM(945)、RAM(946)などと密接に関連付けることができるキャッシュメモリの使用によって可能にすることができる。
【0293】
コンピュータ可読媒体は、様々なコンピュータ実装動作を実行するためのコンピュータコードを有し得る。媒体およびコンピュータコードは、本開示の目的のために特別に設計および構築されたものであってもよく、またはコンピュータソフトウェア技術の当業者に、良く知られた利用可能な種類のものであってもよい。
【0294】
限定ではなく、例として、アーキテクチャ、特にコア(940)を有するコンピュータシステム(900)は、1つまたは複数の有形のコンピュータ可読媒体で実現されたソフトウェアを実行する1つまたは複数のプロセッサ(CPU、GPU、FPGA、アクセラレータなどを含む)の結果として機能を提供することができる。そのようなコンピュータ可読媒体は、上述のようなユーザアクセス可能な大容量ストレージ、ならびにコア内部大容量記憶装置(947)またはROM(945)などの非一時的な性質のコア(940)の一定のストレージに関連付けられた媒体とすることができる。本開示の様々な実施形態を実施するソフトウェアは、そのようなデバイスに格納され、コア(940)によって実行され得る。コンピュータ可読媒体は、特定のニーズに従って、1つまたは複数のメモリデバイスまたはチップを含み得る。ソフトウェアは、コア(940)、特にその中のプロセッサ(CPU、GPU、およびFPGAなどを含む)に、RAM(946)に記憶されたデータ構造を定義すること、およびソフトウェアによって定義されたプロセスに従ってそのようなデータ構造を修正することを含む、本明細書で説明されている特定のプロセスまたは特定のプロセスの特定の部分を実行させうる。加えてまたは代替として、コンピュータシステムは、本明細書で説明されている特定のプロセスまたは特定のプロセスの特定の部分を実行するためにソフトウェアの代わりに、またはソフトウェアとともに動作し得る、回路内のハードワイヤード論理または他の方法で具体化された論理(例えば、アクセラレータ(944))の結果として機能を提供し得る。ソフトウェアへの参照は、適切な場合には、論理を包含することができ、逆もまた同様である。コンピュータ可読媒体への参照は、適切な場合には、実行のためにソフトウェアを格納する回路(集積回路(IC)など)、実行のための論理回路を具現化する回路、またはその両方を包含することができる。本開示は、ハードウェアとソフトウェアの任意の適切な組み合わせを包含する。
【0295】
本開示はいくつかの例示的な実施形態を説明してきたが、本開示の範囲内にある変更、置換、および様々な代替均等物が存在する。したがって、当業者は、本明細書に明示的に示されていないまたは記載されていないが、本開示の原理を具体化し、したがってその精神および範囲内にある、多数のシステムおよび方法を考案し得ることが理解されよう。
【0296】
[表]
【0297】
【表6A】
【表6B】
【表6C】
【表6D】
【表6E】
【表6F】
【0298】
【表7A】
【表7B】
【0299】
【表8A】
【表8B】
【表8C】
【表8D】
【表8E】
【0300】
【表9A】
【表9B】
【表9C】
【表9D】
【表9E】
【表9F】
【表9G】
【0301】
【表10A】
【表10B】
【表10C】
【表10D】
【表10E】
【符号の説明】
【0302】
100 通信システム
110 第1の端末
120 第2の端末
130 端末
140 端末
150 ネットワーク
200 ストリーミングシステム
201 ビデオソース、カメラ
202 非圧縮ビデオ・サンプル・ストリーム
203 エンコーダ
204 ビデオ・ビットストリーム
205 ストリーミングサーバ
206 ストリーミングクライアント
209 ビデオ・ビットストリーム
210 ビデオデコーダ
211 出力ビデオ・サンプル・ストリーム
212 ディスプレイ
213 キャプチャサブシステム
310 受信器
312 チャネル
315 バッファメモリ
320 エントロピーデコーダ/解析器
321 シンボル
351 スケーラ/逆変換ユニット
352 イントラ予測ユニット
353 動作補償予測ユニット
355 アグリゲータ
356 ループ・フィルタ・ユニット
357 参照ピクチャメモリ
358 現在のピクチャメモリ
430 ソースエンコーダ
432 コーディングエンジン
433 (ローカル)デコーダ
434 参照ピクチャメモリ
435 予測器
440 送信器
443 コーディング済ビデオシーケンス
445 エントロピーエンコーダ
450 コントローラ
460 チャネル
500 デコーダ
510 推論コード
520 制約コード
530 復号コード
900 コンピュータシステム
901 キーボード
902 マウス
903 トラックパッド
905 ジョイスティック
906 マイク
907 スキャナ
908 カメラ
910 タッチスクリーン
902 CD/DVD ROM/RW
921 媒体
922 サムドライブ
940 コア
941 中央処理装置(CPU)
942 グラフィックス処理装置(GPU)
943 フィールド・プログラマブル・ゲート・エリア(FPGA)
944 ハードウェアアクセラレータ
945 読み取り専用メモリ(ROM)
946 ランダム・アクセス・メモリ
947 内部大容量記憶装置
948 システムバス
949 汎用データポートまたは周辺バス
950 グラフィックスアダプタ
954 ネットワークインターフェース
955 クラウドコンピューティング環境
図1
図2
図3
図4
図5
図6
【手続補正書】
【提出日】2022-04-20
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0180
【補正方法】変更
【補正の内容】
【0180】
特定のティアの特定のレベルでMain 10プロファイルに準拠するデコーダは、以下の条件のすべてが適用されるすべてのビットストリームを復号できる必要があり得る。
(1)ビットストリームは、Main 10またはMain 10静止ピクチャプロファイルに準拠するように指示される。
(2)ビットストリームは、指定されたティア以下のティアに適合するように示される。
(3)ビットストリームは、レベル15.5ではなく、指定されたレベル以下のレベルに適合するように示される。
(4)特定のティアの特定のレベルでMain 10静止ピクチャプロファイルに準拠するデコーダは、以下の条件のすべてが適用されるすべてのビットストリームを復号できるように要求され得る。
5)ビットストリームは、Main 10静止ピクチャプロファイルに準拠するように指示される。
6)ビットストリームは、指定されたティア以下のティアに適合するように示される。
7)ビットストリームは、レベル15.5ではなく、指定されたレベル以下のレベルに適合するように示される。
【手続補正3】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
少なくとも1つのプロセッサによって実行される方法であって、
シーケンス・パラメータ・セット(SPS)を含むビットストリームを受信するステップであって、前記SPSは、前記ビットストリームが1つの符号化されたピクチャのみを含むかどうかを指定するフラグを含む、ステップと、
前記ビットストリームが前記1つの符号化されたピクチャのみを含むことを指定する前記フラグに基づいて、前記SPSの少なくとも1つの構文要素の値を推論するステップと、
前記推論に基づいて前記1つの符号化されたピクチャを復号するステップと、を含む方法。
【請求項2】
前記SPSの前記少なくとも1つの構文要素は、ビデオ・パラメータ・セットのIDを指定する構文要素を含む、請求項1に記載の方法。
【請求項3】
前記SPSの前記少なくとも1つの構文要素は、前記SPSを参照する各符号化層ビデオシーケンス(CLVS)内に存在することが許可される時間的サブレイヤの最大数を指定する構文要素を含む、請求項1に記載の方法。
【請求項4】
前記SPSの前記少なくとも1つの構文要素は、プロファイル、ティア、レベル構文構造が前記SPSに存在するかどうかを指定するフラグを含む、請求項1に記載の方法。
【請求項5】
前記SPSの前記少なくとも1つの構文要素は、ピクチャ順序カウント(POC)に関連する構文要素を含む、請求項1に記載の方法。
【請求項6】
前記SPSの前記少なくとも1つの構文要素は、インタースライスに関連する構文要素を含む、請求項1に記載の方法。
【請求項7】
前記SPSの前記少なくとも1つの構文要素は、インター・コーディング・ツールに関連する構文要素を含む、請求項1に記載の方法。
【請求項8】
請求項1に記載の方法であって、
前記ビットストリームが前記1つの符号化されたピクチャのみを含むことを指定する前記フラグに基づいて、前記1つの符号化されたピクチャのピクチャヘッダの少なくとも1つの構文要素の値を推論するステップであって、
復号する前記ステップは、前記SPSの前記少なくとも1つの構文要素の前記値および前記SPSの前記少なくとも1つの構文要素の前記値の前記推論に基づいて前記1つの符号化されたピクチャを復号する、ステップ、を含む、請求項1に記載の方法。
【請求項9】
前記ピクチャヘッダの前記少なくとも1つの構文要素は、前記1つの符号化されたピクチャに対してスライスタイプが許容されるかどうかを指定するフラグを含む、請求項8に記載の方法。
【請求項10】
前記ピクチャヘッダの前記少なくとも1つの構文要素は、前記1つの符号化されたピクチャが参照ピクチャであるかどうかを指定するフラグを含む、請求項8に記載の方法。
【請求項11】
前記ピクチャヘッダの前記少なくとも1つの構文要素は、ピクチャ順序カウント(POC)または復号ピクチャバッファ(DPB)に関する構文要素を含む、請求項8に記載の方法。
【請求項12】
システムであって、
コンピュータコードを記憶する少なくとも1つのメモリと、
シーケンス・パラメータ・セット(SPS)を含むビットストリームを受信するように構成された少なくとも1つのプロセッサであって、前記SPSは、前記ビットストリームがただ1つの符号化されたピクチャを含むかどうかを指定するフラグを含み、前記少なくとも1つのプロセッサは、前記コンピュータコードにアクセスし、前記コンピュータコードによって命令されるように動作するようにさらに構成され、前記コンピュータコードは、
前記ビットストリームが前記1つの符号化されたピクチャのみを含むことを指定する前記フラグに基づいて、前記少なくとも1つのプロセッサに、前記SPSの少なくとも1つの構文要素の値を推論させるように構成された推論コードと、
前記SPSの前記少なくとも1つの構文要素の値の推論に基づいて、前記少なくとも1つのプロセッサに、前記1つの符号化されたピクチャを復号させるように構成された復号コードとを含む、少なくとも1つのプロセッサと、を含む、システム。
【請求項13】
前記SPSの前記少なくとも1つの構文要素は、ビデオ・パラメータ・セットのIDを指定する構文要素を含む、請求項12に記載のシステム。
【請求項14】
前記SPSの前記少なくとも1つの構文要素は、前記SPSを参照する各符号化層ビデオシーケンス(CLVS)内に存在することが許可される時間的サブレイヤの最大数を指定する構文要素を含む、請求項12に記載のシステム。
【請求項15】
前記SPSの前記少なくとも1つの構文要素は、プロファイル、ティア、レベル構文構造が前記SPSに存在するかどうかを指定するフラグを含む、請求項12に記載のシステム。
【請求項16】
前記SPSの前記少なくとも1つの構文要素は、ピクチャ順序カウント(POC)に関連する構文要素を含む、請求項12に記載のシステム。
【請求項17】
前記SPSの前記少なくとも1つの構文要素は、インタースライスに関連する構文要素を含む、請求項12に記載のシステム。
【請求項18】
前記SPSの前記少なくとも1つの構文要素は、インター・コーディング・ツールに関連する構文要素を含む、請求項12に記載のシステム。
【請求項19】
請求項12に記載のシステムであって、
前記推論コードは、前記ビットストリームが前記1つの符号化されたピクチャのみを含むことを指定する前記フラグに基づいて、前記少なくとも1つのプロセッサに、前記1つの符号化されたピクチャのピクチャヘッダの少なくとも1つの構文要素の値を推論させるようにさらに構成され、
前記復号コードは、前記SPSの前記少なくとも1つの構文要素の前記値および前記SPSの前記少なくとも1つの構文要素の前記値を推論することに基づいて、前記少なくとも1つのプロセッサに、前記1つの符号化されたピクチャを復号させるように構成される、システム。
【請求項20】
少なくとも1つのプロセッサに、請求項1~11のいずれか一項に記載の方法を実行させるためのコンピュータプログラム
【国際調査報告】