[0001]本出願は、各々の内容全体が参照により組み込まれる、2019年12月23日に出願された米国仮出願第62/953,035号の利益を主張する2020年12月22日に出願された米国出願第17/130,759号の優先権を主張する。
[0022]ビデオ内のランダムポイントにおいてビデオの再生を開始する能力は、現代のビデオコーディングの重要な特徴である。汎用ビデオコーディング(VVC)および他のビデオコーディング規格において、ランダムアクセスは、イントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャとして特定のタイプのピクチャを符号化することによって達成され得る。VVCでは、IRAPおよびGDRピクチャは、IRAPおよびGDRピクチャの符号化されたスライスを含んでいるNALユニットのネットワーク抽象化レイヤ(NAL)ユニットタイプに基づいて識別され得る。さらに、VVCでは、ピクチャは、ビットストリーム順序でピクチャの符号化されたスライスを含んでいるNALユニットの前にシグナリングされるピクチャヘッダNALユニットに関連付けられる。したがって、ランダムアクセスを実施するときに、デバイス(たとえば、ビデオデコーダ)は、NALユニットのNALユニットタイプがそのNALユニット中に含まれている符号化されたスライスがIRAPまたはGDRピクチャに属することを示す、当該NALユニットを識別し得る。デバイスは、次いで、デバイスがIRAPまたはGDRピクチャを復号することができるようにピクチャヘッダを発見するためにビットストリーム順序を後方に探索するか、または後の復号のために前方のピクチャヘッダに向けて前方に探索する必要がある。
[0023]このようにして後方に探索すること(searching backward)は、ランダムアクセスを実施するプロセスを減速し得る。本開示は、この問題に対処し得る技法について説明する。一例では、ビデオエンコーダは、ビデオデータのピクチャのセットのための符号化されたピクチャを生成し得る。この例では、ビデオエンコーダは、符号化されたピクチャを備えるビットストリーム中にピクチャヘッダNALユニットを含め得る。ピクチャヘッダNALユニットは、当該ピクチャヘッダNALユニットに関連するピクチャがIRAPまたは漸次デコーダリフレッシュ(GDR)ピクチャのいずれかであることを示すシンタックス要素を含む。このシンタックス要素のために、ランダムアクセスを実施するデバイスは、このピクチャヘッダNALユニットを発見するためにビットストリーム中を後方に探索する必要なしにIRAPまたはGDRピクチャに関連付けられているものとしてピクチャヘッダNALユニットを直接識別し得る。
[0024]図1は、本開示の技法を実施し得る例示的なビデオ符号化および復号システム100を示すブロック図である。本開示の技法は、概して、ビデオデータをコーディング(符号化および/または復号)することを対象とする。概して、ビデオデータは、ビデオを処理するための何らかのデータを含む。したがって、ビデオデータは、生の符号化されていないビデオ、符号化されたビデオ、復号された(たとえば、再構築された)ビデオ、およびシグナリングデータなどのビデオメタデータを含み得る。
[0025]図1に示されているように、システム100は、この例では、宛先デバイス116によって復号および表示されるべき符号化ビデオデータを提供するソースデバイス102を含む。特に、ソースデバイス102は、コンピュータ可読媒体110を介して宛先デバイス116にビデオデータを与える。ソースデバイス102と宛先デバイス116とは、デスクトップコンピュータ、ノートブック(すなわち、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、スマートフォンなどの電話ハンドセット、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲のデバイスのいずれかを備え得る。いくつかの場合には、ソースデバイス102と宛先デバイス116とは、ワイヤレス通信のために装備され得、したがって、ワイヤレス通信デバイスと呼ばれることがある。
[0026]図1の例では、ソースデバイス102は、ビデオソース104と、メモリ106と、ビデオエンコーダ200と、出力インターフェース108とを含む。宛先デバイス116は、入力インターフェース122と、ビデオデコーダ300と、メモリ120と、ディスプレイデバイス118とを含む。本開示によれば、ソースデバイス102のビデオエンコーダ200と宛先デバイス116のビデオデコーダ300とは、ビデオコーディング中にイントラランダムアクセスピクチャ(IRAP)または漸次復号リフレッシュ(GDR)ピクチャをシグナリングするための技法に関係する技法を適用するように構成され得る。したがって、ソースデバイス102はビデオ符号化デバイスの一例を表し、宛先デバイス116はビデオ復号デバイスの一例を表す。他の例では、ソースデバイスと宛先デバイスとは、他の構成要素または配置を含み得る。たとえば、ソースデバイス102は、外部カメラなどの外部ビデオソースからビデオデータを受信し得る。同様に、宛先デバイス116は、一体型ディスプレイデバイスを含むのではなく、外部ディスプレイデバイスとインターフェースし得る。
[0027]図1に示されているシステム100は一例にすぎない。概して、いかなるデジタルビデオ符号化および/または復号デバイスも、ビデオコーディング中にIRAPまたはGDRピクチャをシグナリングするための技法に関係する技法を実施し得る。ソースデバイス102および宛先デバイス116は、ソースデバイス102が宛先デバイス116への送信のために符号化ビデオデータを生成するようなコーディングデバイスの例にすぎない。本開示は、データのコーディング(符号化および/または復号)を実施するデバイスとして「コーディング」デバイスに言及する。したがって、ビデオエンコーダ200およびビデオデコーダ300は、コーディングデバイス、特に、それぞれビデオエンコーダおよびビデオデコーダの例を表す。いくつかの例では、ソースデバイス102と宛先デバイス116とは、ソースデバイス102と宛先デバイス116との各々がビデオ符号化および復号構成要素を含むように、実質的に対称的に動作し得る。したがって、システム100は、たとえば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスト、またはビデオ電話のために、ソースデバイス102と宛先デバイス116との間で1方向または2方向のビデオ送信をサポートし得る。
[0028]概して、ビデオソース104は、ビデオデータ(すなわち、生の符号化されていないビデオデータ)のソースを表し、ビデオデータの連続的な一連のピクチャ(「フレーム」とも呼ばれる)をビデオエンコーダ200に提供し、ビデオエンコーダ200は、ピクチャのためにデータを符号化する。ソースデバイス102のビデオソース104は、ビデオカメラ、以前にキャプチャされた生のビデオを含んでいるビデオアーカイブ、および/またはビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェースなど、ビデオキャプチャデバイスを含み得る。さらなる代替として、ビデオソース104は、ソースビデオとして、コンピュータグラフィックスベースのデータ、またはライブビデオとアーカイブビデオとコンピュータ生成ビデオとの組合せを生成し得る。各場合において、ビデオエンコーダ200は、キャプチャされたビデオデータ、プリキャプチャされたビデオデータ、またはコンピュータ生成されたビデオデータを符号化する。ビデオエンコーダ200は、ピクチャを、(「表示順序」と呼ばれることがある)受信順序から、コーディングのためのコーディング順序に並べ替え得る。ビデオエンコーダ200は、符号化されたビデオデータを含むビットストリームを生成し得る。ソースデバイス102は、次いで、たとえば、宛先デバイス116の入力インターフェース122による受信および/または取出しのために、出力インターフェース108を介して符号化されたビデオデータをコンピュータ可読媒体110上に出力し得る。
[0029]ソースデバイス102のメモリ106と、宛先デバイス116のメモリ120とは、汎用メモリを表す。いくつかの例では、メモリ106、120は、生のビデオデータ、たとえば、ビデオソース104からの生のビデオ、およびビデオデコーダ300からの生の復号されたビデオデータを記憶し得る。追加または代替として、メモリ106、120は、たとえば、それぞれ、ビデオエンコーダ200とビデオデコーダ300とによって実行可能なソフトウェア命令を記憶し得る。メモリ106およびメモリ120は、この例ではビデオエンコーダ200およびビデオデコーダ300とは別個に示されているが、ビデオエンコーダ200およびビデオデコーダ300は、機能的に同様のまたは等価な目的で内部メモリをも含み得ることを理解されたい。さらに、メモリ106、120は、符号化されたビデオデータ、たとえば、ビデオエンコーダ200からの出力、およびビデオデコーダ300への入力を記憶し得る。いくつかの例では、メモリ106、120の部分は、たとえば、生の復号および/または符号化されたビデオデータを記憶するために、1つまたは複数のビデオバッファとして割り振られ得る。
[0030]コンピュータ可読媒体110は、ソースデバイス102から宛先デバイス116に符号化されたビデオデータを移送することが可能な任意のタイプの媒体またはデバイスを表し得る。一例では、コンピュータ可読媒体110は、ソースデバイス102が、たとえば、無線周波数ネットワークまたはコンピュータベースのネットワークを介して、符号化されたビデオデータを宛先デバイス116にリアルタイムで直接送信することを可能にするための通信媒体を表す。出力インターフェース108は、符号化ビデオデータを含む送信信号を変調し得、入力インターフェース122は、ワイヤレス通信プロトコルなどの通信規格に従って、受信された送信信号を復調し得る。通信媒体は、無線周波数(RF)スペクトルまたは1つまたは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、ルータ、スイッチ、基地局、またはソースデバイス102から宛先デバイス116への通信を可能にするために有用であり得る任意の他の機器を含み得る。
[0031]いくつかの例では、コンピュータ可読媒体110は、記憶デバイス112を含み得る。ソースデバイス102は、出力インターフェース108から記憶デバイス112に符号化されたデータを出力し得る。同様に、宛先デバイス116は、入力インターフェース122を介して記憶デバイス112からの符号化されたデータにアクセスし得る。記憶デバイス112は、ハードドライブ、Blu-ray(登録商標)ディスク、DVD、CD-ROM、フラッシュメモリ、揮発性または不揮発性メモリ、あるいは符号化されたビデオデータを記憶するための任意の他の好適なデジタル記憶媒体など、様々な分散されたまたはローカルにアクセスされるデータ記憶媒体のいずれかを含み得る。
[0032]いくつかの例では、コンピュータ可読媒体110は、ソースデバイス102によって生成された、符号化されたビデオデータを記憶し得る、ファイルサーバ114または別の中間記憶デバイスを含み得る。ソースデバイス102は、ソースデバイス102によって生成された、符号化されたビデオを記憶し得る、ファイルサーバ114または別の中間記憶デバイスに、符号化されたビデオデータを出力し得る。宛先デバイス116は、ストリーミングまたはダウンロードを介して、ファイルサーバ114から、記憶されたビデオデータにアクセスし得る。ファイルサーバ114は、符号化ビデオデータを記憶し、符号化ビデオデータを宛先デバイス116に送信することができる任意のタイプのサーバデバイスであり得る。ファイルサーバ114は、(たとえば、ウェブサイト用の)ウェブサーバ、ファイル転送プロトコル(FTP)サーバ、コンテンツ配信ネットワークデバイス、またはネットワーク接続ストレージ(NAS)デバイスを表し得る。宛先デバイス116は、インターネット接続を含む任意の標準的なデータ接続を通してファイルサーバ114からの符号化されたビデオデータにアクセスし得る。これは、ファイルサーバ114に記憶された、符号化されたビデオデータにアクセスするのに好適である、ワイヤレスチャネル(たとえば、Wi-Fi(登録商標)接続)、ワイヤード接続(たとえば、デジタル加入者線(DSL)、ケーブルモデムなど)、またはその両方の組合せを含み得る。ファイルサーバ114と入力インターフェース122とは、ストリーミング送信プロトコル、ダウンロード送信プロトコル、またはそれらの組合せに従って動作するように構成され得る。
[0033]出力インターフェース108と入力インターフェース122とは、ワイヤレス送信機/受信機、モデム、ワイヤードネットワーキング構成要素(たとえば、イーサネット(登録商標)カード)、様々なIEEE802.11規格のいずれかに従って動作するワイヤレス通信構成要素、または他の物理的構成要素を表し得る。出力インターフェース108と入力インターフェース122とがワイヤレス構成要素を備える例では、出力インターフェース108と入力インターフェース122とは、4G、4G-LTE(登録商標)(ロングタームエボリューション)、LTEアドバンスト、5Gなど、セルラー通信規格に従って、符号化されたビデオデータなどのデータを転送するように構成され得る。出力インターフェース108がワイヤレス送信機を備えるいくつかの例では、出力インターフェース108と入力インターフェース122とは、IEEE802.11仕様、IEEE802.15仕様(たとえば、ZigBee(登録商標))、Bluetooth(登録商標)規格など、他のワイヤレス規格に従って、符号化されたビデオデータなどのデータを転送するように構成され得る。いくつかの例では、ソースデバイス102および/または宛先デバイス116は、それぞれのシステムオンチップ(SoC)デバイスを含み得る。たとえば、ソースデバイス102は、ビデオエンコーダ200および/または出力インターフェース108に帰属する機能を実施するためのSoCデバイスを含み得、宛先デバイス116は、ビデオデコーダ300および/または入力インターフェース122に帰属する機能を実施するためのSoCデバイスを含み得る。
[0034]本開示の技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、動的適応ストリーミングオーバーHTTP(DASH)などのインターネットストリーミングビデオ送信、データ記憶媒体上に符号化されたデジタルビデオ、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。
[0035]宛先デバイス116の入力インターフェース122は、コンピュータ可読媒体110(たとえば、通信媒体、記憶デバイス112、ファイルサーバ114など)から符号化ビデオビットストリームを受信する。符号化されたビデオビットストリームは、ビデオブロックまたは他のコーディングされたユニット(たとえば、スライス、ピクチャ、ピクチャグループ、シーケンスなど)の特性および/または処理を記述する値を有するシンタックス要素など、ビデオデコーダ300によっても使用される、ビデオエンコーダ200によって定義されるシグナリング情報を含み得る。ディスプレイデバイス118は、復号されたビデオデータの復号されたピクチャをユーザに表示する。ディスプレイデバイス118は、陰極線管(CRT)、液晶ディスプレイ(LCD)、プラズマディスプレイ、有機発光ダイオード(OLED)ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを表し得る。
[0036]図1には示されていないが、いくつかの例では、ビデオエンコーダ200とビデオデコーダ300とは各々、オーディオエンコーダおよび/またはオーディオデコーダと統合され得、共通のデータストリーム中にオーディオとビデオの両方を含む多重化ストリームをハンドリングするために、適切なMUX-DEMUXユニット、あるいは他のハードウェアおよび/またはソフトウェアを含み得る。適用可能な場合、MUX-DEMUXユニットはITU H.223マルチプレクサプロトコル、またはユーザデータグラムプロトコル(UDP)などの他のプロトコルに準拠し得る。
[0037]ビデオエンコーダ200とビデオデコーダ300とは各々、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダおよび/またはデコーダ回路のいずれか、あるいはそれらの任意の組合せとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、デバイスは、好適な非一時的コンピュータ可読媒体にソフトウェアの命令を記憶し、本開示の技法を実施するために1つまたは複数のプロセッサを使用してその命令をハードウェアで実行し得る。ビデオエンコーダ200とビデオデコーダ300との各々は、1つもしくは複数のエンコーダまたはデコーダに含まれ得、それらのいずれかが、それぞれのデバイス中の複合エンコーダ/デコーダ(CODEC)の一部として統合され得る。ビデオエンコーダ200および/またはビデオデコーダ300を含むデバイスは、集積回路、マイクロプロセッサ、および/またはセルラー電話などのワイヤレス通信デバイスを備え得る。
[0038]ビデオエンコーダ200とビデオデコーダ300とは、高効率ビデオコーディング(HEVC)とも呼ばれるITU-T H.265、あるいはマルチビューおよび/またはスケーラブルビデオコーディング拡張などのそれらの拡張など、ビデオコーディング規格に従って動作し得る。代替的に、ビデオエンコーダ200とビデオデコーダ300とは、汎用ビデオコーディング(VVC)とも呼ばれるITU-T H.266など、他のプロプライエタリ規格または業界規格に従って動作し得る。VVC標準の最近のドラフトは、Brossら「Versatile Video Coding(Draft 7)」、ITU-T SG16 WP3とISO/IEC JTC1/SC29/WG11とのJoint Video Experts Team(JVET)、第16回会合:Geneva、CH、2019年10月1~11日、JVET-P2001-v14(以下、「VVC Draft 7」)に記載されている。ただし、本開示の技法は、いかなる特定のコーディング規格にも限定されない。
[0039]概して、ビデオエンコーダ200とビデオデコーダ300とは、ピクチャのブロックベースのコーディングを実施し得る。「ブロック」という用語は、概して、処理されるべき(たとえば、符号化されるべき、復号されるべき、あるいは符号化および/または復号プロセスにおいて他の方法で使用されるべき)データを含む構造を指す。たとえば、ブロックは、ルミナンスおよび/またはクロミナンスデータのサンプルの2次元行列を含み得る。概して、ビデオエンコーダ200とビデオデコーダ300とは、YUV(たとえば、Y、Cb、Cr)フォーマットで表されるビデオデータをコーディングし得る。すなわち、ピクチャのサンプルのために赤色、緑色、および青色(RGB)データをコーディングするのではなく、ビデオエンコーダ200およびビデオデコーダ300は、ルミナンス成分とクロミナンス成分とをコーディングし得、ここで、クロミナンス成分は、赤色相と青色相の両方のクロミナンス成分を含み得る。いくつかの例では、ビデオエンコーダ200は、符号化より前に、受信されたRGBフォーマットのデータをYUV表現に変換し、ビデオデコーダ300は、YUV表現をRGBフォーマットに変換する。代替的に、前処理および後処理ユニット(図示せず)が、これらの変換を実施し得る。
[0040]本開示は、概して、ピクチャのデータを符号化または復号するプロセスを含むように、ピクチャのコーディング(たとえば、符号化および復号)に言及することがある。同様に、本開示は、ブロックについてのデータを符号化または復号するプロセス、たとえば、予測および/または残差コーディングを含むように、ピクチャのブロックのコーディングに言及することがある。符号化されたビデオビットストリームは、概して、コーディング決定(たとえば、コーディングモード)とブロックへのピクチャの区分とを表すシンタックス要素についての一連の値を含む。したがって、ピクチャまたはブロックをコーディングすることへの言及は、概して、ピクチャまたはブロックを形成するシンタックス要素の値をコーディングすることとして理解されるべきである。
[0041]HEVCは、コーディングユニット(CU)、予測ユニット(PU)、および変換ユニット(TU)を含む、様々なブロックを定義する。HEVCに従って、(ビデオエンコーダ200などの)ビデオコーダは、4分木構造に従ってコーディングツリーユニット(CTU)をCUに区分する。すなわち、ビデオコーダは、CTUとCUとを4つの等しい、重複しない正方形に区分し、4分木の各ノードは、0個または4つのいずれかの子ノードを有する。子ノードなしのノードは「リーフノード」と呼ばれることがあり、そのようなリーフノードのCUは、1つまたは複数のPUならびに/あるいは1つまたは複数のTUを含み得る。ビデオコーダは、PUとTUとをさらに区分し得る。たとえば、HEVCでは、残差4分木(RQT)は、TUの区分を表す。HEVCでは、PUはインター予測データを表すが、TUは残差データを表す。イントラ予測されるCUは、イントラモード指示などのイントラ予測情報を含む。
[0042]別の例として、ビデオエンコーダ200とビデオデコーダ300とは、VVCに従って動作するように構成され得る。VVCに従って、(ビデオエンコーダ200などの)ビデオコーダは、ピクチャを複数のコーディングツリーユニット(CTU)に区分する。ビデオエンコーダ200は、4分木2分木(QTBT)構造またはマルチタイプツリー(MTT)構造などの、木構造に従ってCTUを区分し得る。QTBT構造は、HEVCのCUとPUとTUとの間の分離など、複数の区分タイプの概念を除去する。QTBT構造は、4分木区分に従って区分される第1のレベル、および2分木区分に従って区分される第2のレベルという、2つのレベルを含む。QTBT構造のルートノードは、CTUに対応する。2分木のリーフノードは、コーディングユニット(CU)に対応する。
[0043]MTT区分構造では、ブロックは、4分木(QT)区分と、2分木(BT)区分と、1つまたは複数のタイプの3分木(TT)(3元木(TT)とも呼ばれる)区分とを使用して区分され得る。3分木区分または3元木区分は、ブロックが3つのサブブロックに分割される区分である。いくつかの例では、3分木または3元木区分は、中心を通って元のブロックを分割することなくブロックを3つのサブブロックに分割する。MTTにおける区分タイプ(たとえば、QT、BT、およびTT)は、対称的または非対称的であり得る。
[0044]いくつかの例では、ビデオエンコーダ200とビデオデコーダ300とは、ルミナンス成分とクロミナンス成分との各々を表すために単一のQTBTまたはMTT構造を使用し得、他の例では、ビデオエンコーダ200とビデオデコーダ300とは、ルミナンス成分のための1つのQTBT/MTT構造、および両方のクロミナンス成分のための別のQTBT/MTT構造(またはそれぞれのクロミナンス成分のための2つのQTBT/MTT構造)など、2つ以上のQTBTまたはMTT構造を使用し得る。
[0045]ビデオエンコーダ200およびビデオデコーダ300は、HEVCによる4分木区分、QTBT区分、MTT区分、または他の区分構造を使用するように構成され得る。説明の目的で、本開示の技法の説明はQTBT区分に関して提示される。ただし、本開示の技法が、4分木区分、または同様に他のタイプの区分を使用するように構成されたビデオコーダにも適用され得ることを理解されたい。
[0046]ブロック(たとえば、CTUまたはCU)は、ピクチャ中で様々な方法でグループ化され得る。一例として、ブリックは、ピクチャ中の特定のタイル内のCTU行の長方形領域を指し得る。タイルは、ピクチャの中の特定のタイル列内および特定のタイル行内のCTUの長方形領域であり得る。タイル列は、ピクチャの高さに等しい高さと、(たとえば、ピクチャパラメータセットの中などにある)シンタックス要素によって指定された幅とを有するCTUの長方形領域を指す。タイル行は、(たとえば、ピクチャパラメータセットの中などにある)シンタックス要素によって指定された高さと、ピクチャの幅に等しい幅とを有するCTUの長方形領域を指す。
[0047]いくつかの例では、タイルは複数のブリックに区分され得、それらの各々は、タイル内に1つまたは複数のCTU行を含み得る。複数のブリックに区分されないタイルもブリックと呼ばれることがある。しかしながら、タイルの真のサブセットであるブリックは、タイルと呼ばれないことがある。
[0048]ピクチャ中のブリックはまた、スライス中に配置され得る。スライスは、もっぱら単一のネットワークアブストラクションレイヤ(NAL)ユニット中に含まれていることがあるピクチャの整数個のブリックであり得る。いくつかの例では、スライスは、いくつかの完全なタイル、または1つのタイルの完全なブリックの連続シーケンスのみのいずれかを含む。
[0049]本開示は、垂直寸法と水平寸法とに関して(CUまたは他のビデオブロックなどの)ブロックのサンプル寸法を指すために、「N×N(NxN)」および「N×N(N by N)」、たとえば、16×16サンプル(16x16 samples)または16×16サンプル(16 by 16 samples)を互換的に使用し得る。概して、16×16のCUは、垂直方向に16個のサンプルを有し(y=16)、水平方向に16個のサンプルを有する(x=16)。同様に、N×NのCUは、概して、垂直方向にN個のサンプルを有し、水平方向にN個のサンプルを有し、ここで、Nは非負整数値を表す。CU中のサンプルは、行と列とに配置され得る。さらに、CUは、必ずしも、水平方向において垂直方向と同じ数のサンプルを有する必要があるとは限らない。たとえば、CUはN×Mサンプルを備え得、ここで、Mは必ずしもNに等しいとは限らない。
[0050]ビデオエンコーダ200は、予測および/または残差情報、ならびに他の情報を表すCUのためにビデオデータを符号化する。予測情報は、CUについて予測ブロックを形成するためにCUがどのように予測されるべきかを示す。残差情報は、概して、符号化より前のCUのサンプルと予測ブロックとの間のサンプルごとの差分を表す。
[0051]CUを予測するために、ビデオエンコーダ200は、概して、インター予測またはイントラ予測を通してCUについて予測ブロックを形成し得る。インター予測は、概して、以前にコーディングされたピクチャのデータからCUを予測することを指し、一方、イントラ予測は、概して、同じピクチャの以前にコーディングされたデータからCUを予測することを指す。インター予測を実施するために、ビデオエンコーダ200は、1つまたは複数の動きベクトルを使用して予測ブロックを生成し得る。ビデオエンコーダ200は、概して、たとえば、CUと参照ブロックとの間の差分に関して、CUに厳密に一致する参照ブロックを識別するために動き探索を実施し得る。ビデオエンコーダ200は、参照ブロックが現在のCUに厳密に一致するかどうかを決定するために、絶対差分和(SAD)、2乗差分和(SSD)、平均絶対差(MAD)、平均2乗差(MSD)、または他のそのような差分計算を使用して差分メトリックを計算し得る。いくつかの例では、ビデオエンコーダ200は、単方向予測または双方向予測を使用して現在のCUを予測し得る。
[0052]VVCのいくつかの例はまた、インター予測モードと見なされ得るアフィン動き補償モードを提供する。アフィン動き補償モードでは、ビデオエンコーダ200は、ズームインまたはアウト、回転、パースペクティブの動き、あるいは他の変則の動きタイプなど、非並進の動きを表す2つ以上の動きベクトルを決定し得る。
[0053]イントラ予測を実施するために、ビデオエンコーダ200は、予測ブロックを生成するようにイントラ予測モードを選択し得る。VVCのいくつかの例は、様々な方向性モード、ならびに平面モードおよびDCモードを含む、67個のイントラ予測モードを提供する。概して、ビデオエンコーダ200は、現在のブロック(たとえば、CUのブロック)のサンプルをそれから予測すべき、現在のブロックに対する隣接サンプルを記述するイントラ予測モードを選択する。そのようなサンプルは、ビデオエンコーダ200がラスタ走査順序で(左から右に、上から下に)CTUとCUとをコーディングすると仮定すると、概して、現在のブロックと同じピクチャ中の現在のブロックの上方、上方および左側、または左側にあり得る。
[0054]ビデオエンコーダ200は、現在のブロックについて予測モードを表すデータを符号化する。たとえば、インター予測モードでは、ビデオエンコーダ200は、様々な利用可能なインター予測モードのうちのどれが使用されるか、ならびに対応するモードの動き情報を表すデータを符号化し得る。たとえば、単方向または双方向インター予測では、ビデオエンコーダ200は、高度動きベクトル予測(AMVP)またはマージモードを使用して動きベクトルを符号化し得る。ビデオエンコーダ200は、アフィン動き補償モードの動きベクトルを符号化するために同様のモードを使用し得る。
[0055]ブロックのイントラ予測またはインター予測などの予測に続いて、ビデオエンコーダ200は、ブロックについて残差データを計算し得る。残差ブロックなどの残差データは、ブロックと、対応する予測モードを使用して形成された、ブロックについての予測ブロックとの間の、サンプルごとの差分を表す。ビデオエンコーダ200は、サンプル領域ではなく変換領域中に変換データを生成するために、残差ブロックに1つまたは複数の変換を適用し得る。たとえば、ビデオエンコーダ200は、離散コサイン変換(DCT)、整数変換、ウェーブレット変換、または概念的に同様の変換を残差ビデオデータに適用し得る。さらに、ビデオエンコーダ200は、モード依存非分離可能2次変換(MDNSST)、信号依存変換、カルーネンレーベ変換(KLT)など、第1の変換に続いて2次変換を適用し得る。ビデオエンコーダ200は、1つまたは複数の変換の適用に続いて変換係数を作り出す。
[0056]上述のように、変換係数を作り出すための任意の変換に続いて、ビデオエンコーダ200は変換係数の量子化を実施し得る。量子化は、概して、変換係数を表すために使用されるデータの量をできるだけ低減するために変換係数が量子化され、さらなる圧縮を行うプロセスを指す。量子化プロセスを実施することによって、ビデオエンコーダ200は、変換係数の一部または全部に関連するビット深度を低減し得る。たとえば、ビデオエンコーダ200は、量子化の間にnビット値をmビット値に切り捨てることがあり、ここで、nはmよりも大きい。いくつかの例では、量子化を実施するために、ビデオエンコーダ200は、量子化されるべき値のビットごとの右シフトを実施し得る。
[0057]量子化に続いて、ビデオエンコーダ200は、変換係数を走査して、量子化された変換係数を含む2次元行列から1次元ベクトルを生成し得る。走査は、より高いエネルギー(したがって、より低い頻度)の変換係数をベクトルの前方に配置し、より低いエネルギー(したがって、より高い頻度)の変換係数をベクトルの後方に配置するように設計され得る。いくつかの例では、ビデオエンコーダ200は、シリアル化されたベクトルを作り出すために、量子化された変換係数を走査するために、あらかじめ定義された走査順序を利用し、次いで、ベクトルの量子化された変換係数をエントロピー符号化し得る。他の例では、ビデオエンコーダ200は、適応型走査を実施し得る。量子化された変換係数を走査して1次元ベクトルを形成した後に、ビデオエンコーダ200は、たとえば、コンテキスト適応型バイナリ算術コーディング(CABAC)に従って、1次元ベクトルをエントロピー符号化し得る。ビデオエンコーダ200はまた、ビデオデータを復号する際のビデオデコーダ300による使用のために、符号化されたビデオデータに関連付けられたメタデータを記述するシンタックス要素の値をエントロピー符号化し得る。
[0058]CABACを実施するために、ビデオエンコーダ200は、コンテキストモデル内のコンテキストを、送信されるべきシンボルに割り当て得る。コンテキストは、たとえば、シンボルの隣接値が0値であるのかどうかに関係し得る。確率決定は、シンボルに割り当てられたコンテキストに基づき得る。
[0059]ビデオエンコーダ200は、さらに、ブロックベースのシンタックスデータ、ピクチャベースのシンタックスデータ、およびシーケンスベースのシンタックスデータなどのシンタックスデータを、たとえば、ピクチャヘッダ、ブロックヘッダ、スライスヘッダ、あるいはシーケンスパラメータセット(SPS)、ピクチャパラメータセット(PPS)、またはビデオパラメータセット(VPS)などの他のシンタックスデータ中で、ビデオデコーダ300に対して生成し得る。ビデオデコーダ300は、対応するビデオデータをどのように復号すべきかを決定するために、そのようなシンタックスデータを同様に復号し得る。ピクチャヘッダは、コード化ピクチャのすべてのスライスに適用されるシンタックス要素を含んでいるシンタックス構造である。
[0060]このようにして、ビデオエンコーダ200は、符号化されたビデオデータ、たとえば、ブロック(たとえば、CU)へのピクチャの区分ならびにブロックの予測および/または残差情報を記述するシンタックス要素を含むビットストリームを生成し得る。最終的に、ビデオデコーダ300は、ビットストリームを受信し、符号化されたビデオデータを復号し得る。
[0061]概して、ビデオデコーダ300は、ビットストリームの符号化されたビデオデータを復号するために、ビデオエンコーダ200によって実施されたものの逆プロセスを実施する。たとえば、ビデオデコーダ300は、ビデオエンコーダ200のCABAC符号化プロセスと逆ではあるが、それと実質的に同様の様式でCABACを使用してビットストリームのシンタックス要素の値を復号し得る。シンタックス要素は、CTUのCUを定義するために、ピクチャをCTUに区分するための区分情報と、QTBT構造などの対応する区分構造に従う、各CTUの区分とを定義し得る。シンタックス要素は、ビデオデータのブロック(たとえば、CU)のための予測および残差情報をさらに定義し得る。
[0062]残差情報は、たとえば、量子化された変換係数によって表され得る。ビデオデコーダ300は、ブロックの残差ブロックを再生するために、ブロックの量子化された変換係数を逆量子化し、逆変換し得る。ビデオデコーダ300は、ブロックの予測ブロックを形成するために、シグナリングされた予測モード(イントラまたはインター予測)と、関連する予測情報(たとえば、インター予測のための動き情報)とを使用する。ビデオデコーダ300は、次いで、(サンプルごとに)予測ブロックと残差ブロックとを組み合わせて、元のブロックを再生し得る。ビデオデコーダ300は、ブロックの境界に沿って視覚的アーティファクトを低減するためにデブロッキングプロセスを実施することなど、追加の処理を実施し得る。
[0063]ビットストリームは、ネットワークアブストラクションレイヤ(NAL)ユニットのシーケンスを備え得る。NALユニットは、NALユニット中のデータのタイプの指示と、必要に応じてエミュレーション防止ビットが散在しているローバイトシーケンスペイロード(RBSP)の形でそのデータを含むバイトとを含む、シンタックス構造である。NALユニットの各々は、NALユニットヘッダを含み得、RBSPをカプセル化し得る。NALユニットヘッダは、NALユニットタイプコードを示すシンタックス要素を含み得る。NALユニットのNALユニットヘッダによって指定されるNALユニットタイプコードは、NALユニットのタイプを示す。RBSPは、NALユニット内にカプセル化された整数個のバイトを含む、シンタックス構造であり得る。いくつかの事例では、RBSPはゼロビットを含む。
[0064]HEVC、VCC、および他のビデオコーディング仕様では、各NALユニットは、そのNALユニットのNALユニットタイプを示すシンタックス要素(たとえば、nal_unit_type)を含む。さらに、ビデオデコーダ300は、NALユニットのNALユニットタイプに基づいて、複数のピクチャタイプのうちの1つと関連付けられているNALユニットを識別することができる。これらのピクチャタイプには、瞬時復号リフレッシュ(IDR)ピクチャ、クリーンランダムアクセス(CRA)ピクチャ、時間サブレイヤアクセス(TSA)ピクチャ、リンク切れアクセス(BLA:Broken Link Access)ピクチャ、およびIDRピクチャ、CRAピクチャ、またはTSAピクチャではない符号化されたピクチャが含まれ得る。
[0065]理想的には、この方式のチャネル切替えおよびジャンピングは、最小量の遅延で実施されるべきである。HEVC、VVC、および他のビデオコーディング仕様は、ビットストリーム中へのランダムアクセスを可能にするための機構を提供する。ランダムアクセスは、ビットストリーム中の第1の符号化されたピクチャではない符号化されたピクチャから始まるビットストリームの復号を指す。ビットストリームへのランダムアクセスは、ブロードキャストおよびストリーミングなどの様々なビデオ適用例において必要とされ得る。ビットストリームへのランダムアクセスにより、ユーザは、任意の時間にプログラムに同調すること、異なるチャネルの間で切り替えること、ビデオの特定の部分にジャンプすること、またはストリーム適応(たとえば、ビットレートの適応、フレームレートの適応、空間分解能の適応など)のために異なるビットストリームに切り替えることが可能になり得る。チャネル切替えおよびジャンピングは、ビデオビットストリーム内に一定の間隔でランダムアクセスピクチャを含めることによって可能にされ得る。一定の間隔でのビットストリーム中へのイントラランダムアクセスポイント(IRAP)ピクチャの挿入はランダムアクセスを可能にし得る。IRAPピクチャの例示的なタイプは、IDRピクチャ、CRAピクチャ、およびBLAピクチャを含む。したがって、IDRピクチャ、CRAピクチャ、およびBLAピクチャは、IRAPピクチャと総称される。ベースレイヤ中にIRAPピクチャを含んでいるアクセスユニットは、本明細書ではIRAPアクセスユニットと呼ばれることがある。
[0066]必要なパラメータセットが、アクティブ化されることが必要なときに利用可能であるという条件で、復号順序におけるIRAPピクチャおよびすべての後続の非ランダムアクセススキップ先頭(RASL)ピクチャは、復号順序においてIRAPピクチャに先行するいかなるピクチャの復号プロセスも実施することなしに、正しく復号され得る。IRAPピクチャでないIスライス(すなわち、ビデオコーダがインター予測でなくイントラ予測を使用し得るスライス)のみを含んでいるピクチャがビットストリーム中にあり得る。
[0067]IDRピクチャは、Iスライスのみを含んでいる。IDRピクチャは、復号順序でビットストリームにおいて最初のピクチャであり得るか、またはビットストリームにおいて後のほうに現れ得る。各IDRピクチャは、復号順序において符号化されたビデオシーケンスの第1のピクチャである。復号順序でIDRピクチャに後続するピクチャは、参照としてIDRピクチャより前に復号されるピクチャを使用することができない。したがって、ランダムアクセスのためにIDRピクチャに依拠するビットストリームは、追加のタイプのランダムアクセスピクチャを使用するビットストリームよりも著しく低いコーディング効率を有し得る。IDRアクセスユニットは、IDRピクチャを含んでいるアクセスユニットである。
[0068]IDRピクチャは、すべての参照ピクチャを「参照に使用されない」とマークすることを復号プロセスに行わせることができる。「参照に使用されない」とマークされた参照ピクチャは、参照ピクチャを記憶する復号ピクチャバッファ(DPB)から除去され得るので、IDRピクチャはDPBを「一掃」し得る。復号順序でIDRピクチャに後続するすべての符号化されたピクチャは、復号順序でIDRピクチャに先行する任意のピクチャからのインター予測なしに復号され得る。復号順序でそれぞれの符号化されたビデオシーケンスの最初のピクチャは、IDRピクチャもしくはBLAピクチャであるか、またはビットストリームの最初のピクチャでもあるCRAピクチャである。アクセスユニットのベースレイヤ中の符号化されたピクチャがIDRピクチャであるとき、アクセスユニットは、IDRアクセスユニットと呼ばれることがある。いくつかの例では、コード化ビデオシーケンスは、復号順序で、IDRアクセスユニットと、それに続いて、任意の後続IDRアクセスユニットまでだがそれを含まないすべての後続アクセスユニットを含む、1に等しいNoRaslOutputFlagを有する、IRAPアクセスユニットではないゼロ個以上のアクセスユニットと、を含むまたはそれらからなる、アクセスユニットのシーケンスである。
[0069]しかしながら、IDRピクチャは、コード化ビデオシーケンスを開始し、常にDPBをクリーンにすることができるので、復号順序でIDRピクチャに後続するピクチャは、復号順序でIDRピクチャより前に復号されたピクチャを参照に使用することができない。コーディング効率を改善するために、CRAピクチャにより、復号順序でCRAピクチャに後続するが、出力順序でCRAピクチャに先行するピクチャが、CRAピクチャより前に復号されたピクチャを参照に使用することが可能になる場合がある。
[0070]CRAピクチャタイプは、ビデオシーケンスの中央において任意のランダムアクセスポイント(RAP)から始まる復号を容易にする。ビデオシーケンスにCRAピクチャを挿入することは、同じビデオシーケンスにIDRピクチャを挿入することよりも効率的であり得る。HEVCおよび潜在的に他のビデオコーディング仕様では、CRAピクチャから始まるビットストリームは適合ビットストリームであり得る。
[0071]CRAピクチャにより、復号順序でCRAピクチャに後続するが出力順序でCRAピクチャに先行するピクチャが、参照のためにCRAピクチャの前に復号されるピクチャを使用することが可能になる。復号順序でCRAピクチャに後続するが出力順序でCRAピクチャに先行するピクチャは、CRAピクチャと関連付けられる先頭ピクチャ(またはCRAピクチャの先頭ピクチャ)と呼ばれる。CRAアクセスユニットは、ベースレイヤの符号化されたピクチャがCRAピクチャであるアクセスユニットである。
[0072]CRAピクチャの先頭ピクチャは、復号順序でそのCRAピクチャの前に存在するIDRピクチャまたはCRAピクチャから復号が開始する場合、正しく復号可能であり得る。しかしながら、CRAピクチャの先頭ピクチャは、そのCRAピクチャからのランダムアクセスが行われるとき、復号不可能であり得る。したがって、ビデオデコーダは通常、ランダムアクセス復号の間にCRAピクチャの先頭ピクチャを復号する。復号が始まる場所によっては利用可能でないことがある参照ピクチャからの誤りの伝搬を防止するために、復号順序と出力順序の両方でCRAピクチャに後続するピクチャは、復号順序または出力順序のいずれかでCRAピクチャに先行するいずれのピクチャ(先頭ピクチャを含む)も参照として使用することができない。
[0073]BLAピクチャは通常、CRAピクチャの位置におけるビットストリームのスプライシング(splicing)から生じ、スプライシングされたビットストリームにおいて、スプライシングポイントのCRAピクチャはBLAピクチャに変更される。BLAアクセスユニットは、ベースレイヤ中のBLAピクチャを含んでいるアクセスユニットである。BLAピクチャとCRAピクチャとの1つの違いは以下の通りである。CRAピクチャの場合、関連付けられた先頭ピクチャは、復号順序でそのCRAピクチャの前にあるRAPピクチャから復号が開始する場合、正しく復号可能である。しかしながら、CRAピクチャと関連付けられた先頭ピクチャは、そのCRAピクチャからのランダムアクセスが行われるとき(すなわち、復号がCRAピクチャから開始するとき、または言い換えると、CRAピクチャがビットストリーム中の最初のピクチャであるとき)、正しく復号可能ではないことがある。対照的に、復号順序でBLAピクチャの前にあるRAPピクチャから復号が開始するときでも、BLAピクチャと関連付けられる先頭ピクチャが復号可能であるシナリオは存在し得ない。
[0074]特定のCRAピクチャまたは特定のBLAピクチャと関連付けられる先頭ピクチャのいくつかは、その特定のCRAピクチャまたは特定のBLAピクチャがビットストリーム中の最初のピクチャであるときでも、正しく復号可能であり得る。これらの先頭ピクチャは復号可能先頭ピクチャ(DLP)と呼ばれることがある。他の先頭ピクチャは復号不可能先頭ピクチャ(NLP)と呼ばれることがある。NLPは、廃棄タグ付き(TFD)ピクチャと呼ばれることもある。
[0075]GDRにより、復号順序で配列されたピクチャのシーケンスまたはシリーズなどのピクチャのセットをデバイスがコーディングすることが可能になり得る。そのようなピクチャのシーケンスを本明細書では、「GDRピクチャセット」または「GDRセット」と呼ぶ。GDRセット全体を横断すると(たとえば、GDRセットの終了に到達すると)、ビデオコーディングデバイスは、復号順序でセットに続く1つまたは複数の符号化されたピクチャにランダムにアクセスし得る。様々な例では、ビデオコーディングデバイスは、GDRセットの最後のピクチャの全体を正しくまたは正確に復号し得る。そのような例では、GDRセットの第1のピクチャは、「GDRピクチャ」を表し得、GDRセット中の最後のピクチャは、「回復点ピクチャ」を表し得る。回復点ピクチャは、次に、ピクチャ全体が「リフレッシュ」または「前景」領域中に含まれるピクチャを表し得る。したがって、ピクチャは、回復点ピクチャにおいて、ピクチャが完全にリフレッシュされるまでGDRセット中の一連のピクチャにわたって徐々にリフレッシュされる。ビデオコーディングデバイスは、「回復点」SEIメッセージおよび/または「領域リフレッシュ情報」SEIメッセージなどの特定のSEIメッセージを使用してGDRセットの境界ならびにGDRセットに関係する他の情報を決定し得る。
[0076]VVC Draft 7では、スライスNALユニットは、IRAPまたはGDRピクチャスライスデータに対応するIDR_W_RADL、IDR_N_LP、CRA_NUT、GDR_NUTを示すNALユニットタイプ(NUT)を有する。IDR_W_RADLのNALユニットタイプをもつスライスNALユニットは、ランダムアクセス復号可能先頭ピクチャをもつIDRピクチャに関連付けられる。IDR_N_LPのNALユニットタイプをもつスライスNALユニットは、先頭ピクチャをもたないIDRピクチャに関連付けられる。CRA_NUTのNALユニットタイプをもつスライスNALユニットは、CRAピクチャに関連付けられる。GDR_NUTのNALユニットタイプをもつスライスNALユニットは、GDRピクチャに関連付けられる。スライスデータは、ピクチャヘッダNALユニットタイプ(NUT)(PH_NUT)を有するNALユニットによって先行される。VVC Draft 7では、ビットストリーム中のIRAPまたはGDRピクチャの位置を特定するために、デバイスは、最初に、IDR_W_RADL、IDR_N_LP、CRA_NUT、またはGDR_NUTのNALユニットタイプを有するスライスの位置を特定し、次いで、戻り、スライスに関連するピクチャヘッダの位置を特定する必要がある。ランダムアクセスピクチャおよびGDRピクチャの位置を特定するプロセスを加速するために、ピクチャヘッダ中でランダムアクセスピクチャまたはGDRピクチャを直接シグナリングすることによってランダムアクセスピクチャまたはGDRピクチャの位置を特定することが望ましいことがある。
[0077]本開示の技法によれば、IRAP(もしくはIRAPのタイプ)またはGDRピクチャを示すフィールドまたはフラグは、ピクチャヘッダの開始時にまたはそれの近くに示される。このフラグとともに対応するPH_NUTは、IRAPおよびGDRピクチャの検出をより単純にすることになる。下記の例は、フラグ(たとえば、irap_or_gdr_pic_flag)をシグナリングすることに基づく第1の技法と、特定のタイプのIRAPまたはGDRピクチャをシグナリングするフィールド(たとえば、irap_gdr_idc)をシグナリングすることを含む第2の技法との2つの解決策を示す。
[0078]本開示の第1の技法によれば、ピクチャヘッダRBSPは、ピクチャヘッダRBSPに関連するピクチャがIRAPまたはGDRピクチャのいずれかであることを示し得るフラグ(たとえば、irap_or_gdr_pic_flag)を含む。以下のテキストでは、本開示全体にわたって、VVC Draft 7におけるテキストへの変更は、<!>…</!>タグでマークされる。VVC Draft 7からのテキストの削除は、<dlt>…</dlt>タグでマークされる。
[VVC Draft 7の変更 開始]
7.3.2.6 ピクチャヘッダRBSPシンタックス
7.4.3.6 ピクチャヘッダRBSPセマンティクス
PHは、PHに関連するコーディングされたピクチャのすべてのスライスに共通である情報を含んでいる。
<!>1に等しいirap_or_gdr_pic_flagは、PHに関連するピクチャがIRAPまたはGDRであることを指定する。0に等しいirap_or_gdr_pic_flagは、PHに関連するピクチャがIRAPでもGDRピクチャでもないことを指定する。</!>
1に等しいnon_reference_picture_flagは、PHに関連するピクチャが参照ピクチャとして決して使用されないことを指定する。0に等しいnon_reference_picture_flagは、PHに関連するピクチャが参照ピクチャとして使用されることも使用されないこともあることを指定する。
1に等しいgdr_pic_flagは、PHに関連するピクチャがGDRピクチャであることを指定する。0に等しいgdr_pic_flagは、PHに関連するピクチャがGDRピクチャでないことを指定する。<!>存在しないとき、それは、0に等しいものと推論される。</!>
[VVC Draft 7の変更 終了]
[0079]したがって、本開示の第1の技法によれば、ビデオエンコーダ200は、ビデオデータのピクチャのセットのための符号化されたピクチャを生成し得る。さらに、ビデオエンコーダ200は、符号化されたピクチャを備えるビットストリーム中にピクチャヘッダNALユニットを含め得る。いくつかの例では、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャがIRAPであるのかGDRピクチャであるのかを示す第1のシンタックス要素(たとえば、irap_or_gdr_pic_flag)を含む。いくつかの例では、第1のシンタックス要素は、ピクチャヘッダNALユニットに関連するピクチャがIRAPでもGDRピクチャでもないことを示す。いくつかの例では、第1のシンタックス要素は、ピクチャヘッダNALユニットに関連するピクチャがIRAPではなく、GDRピクチャであり得ることを示す。いくつかの例では、第1のシンタックス要素は、ピクチャヘッダNALユニットに関連するピクチャがIRAPであることもIRAPでないこともあるが、GDRピクチャではあり得ないことを示す。ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでいる。ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある。ピクチャは、ピクチャヘッダNALユニットがピクチャの第1の符号化されたスライスNALユニットに先行するピクチャヘッダNALユニットである場合にピクチャヘッダNALユニットに関連付けられ得る。
[0080]同様に、いくつかの例では、ビデオデコーダ300または別のデバイス(たとえば、中間のネットワークデバイスなど)は、ビデオデータの符号化されたピクチャのセットを備えるビットストリームを取得し、ビットストリーム中の符号化されたピクチャのうちのIRAPまたはGDRピクチャの位置を特定し得、ここにおいて、IRAPまたはGDRピクチャの位置を特定することは、ビットストリーム中のピクチャヘッダNALユニットから、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャであることを示す第1のシンタックス要素(たとえば、irap_or_gdr_pic_flag)を取得することを備える。いくつかの例では、第1のシンタックス要素は、ピクチャヘッダNALユニットに関連するピクチャがIRAPではなく、GDRピクチャであり得ることを示す。いくつかの例では、第1のシンタックス要素は、ピクチャヘッダNALユニットに関連するピクチャがIRAPであることもIRAPでないこともあるが、GDRピクチャではあり得ないことを示す。ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含み得る。ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある。
[0081]本開示の第2の技法によれば、IDR、CRA、GDRタイプを示すフィールドは、ピクチャヘッダ中に含まれる。たとえば、以下に示される例では、2ビットのフィールド(たとえば、irap_gdr_idc)が、以下に示されるように、ピクチャヘッダRBSPに追加されている。
[VVC Draft 7の変更 開始]
7.3.2.6 ピクチャヘッダRBSPシンタックス
7.4.3.6 ピクチャヘッダRBSPセマンティクス
PHは、PHに関連するコード化ピクチャのすべてのスライスに共通である情報を含んでいる。
<!>0に等しいirap_gdr_idcは、IRAPでもGDRでもないピクチャを示す。1に等しいirap_gdr_pic_idcは、IDRピクチャを示し、2に等しいirap_gdr_idcは、CRAピクチャを示す。3に等しいirap_gdr_idcは、GDRピクチャを示す。</!>
1に等しいnon_reference_picture_flagは、PHに関連するピクチャが参照ピクチャとして決して使用されないことを指定する。0に等しいnon_reference_picture_flagは、PHに関連するピクチャが参照ピクチャとして使用されることも使用されないこともあることを指定する。
<dlt>1に等しいgdr_pic_flagは、PHに関連するピクチャがGDRピクチャであることを指定する。0に等しいgdr_pic_flagは、PHに関連するピクチャがGDRピクチャでないことを指定する。</dlt>
recovery_poc_cntは、出力順序における復号されたピクチャの回復点を指定する。現在のピクチャが、PHに関連付けられるGDRピクチャであり、CLVS中で復号順序で現在のGDRピクチャに続き、現在のGDRピクチャのPicOrderCntValにrecovery_poc_cntの値を加算したものに等しいPicOrderCntValを有するピクチャpicAがある場合、ピクチャpicAは、回復点ピクチャと呼ばれる。そうでない場合、現在のピクチャのPicOrderCntValにrecovery_poc_cntの値を加算したものよりも大きいPicOrderCntValを有する出力順序で第1のピクチャは、回復点ピクチャと呼ばれる。回復点ピクチャは、現在のGDRピクチャに復号順序において先行してはならない。recovery_poc_cntの値は、両端値を含む0~MaxPicOrderCntLsb-1の範囲中にあるものとする。
注1-gdr_enabled_flagが1に等しく、現在のピクチャのPicOrderCntValが、関連するGDRピクチャのRpPicOrderCntVal以上であるとき、出力順序において現在のおよび後続の復号されたピクチャは、存在するとき復号順序で関連するGDRピクチャに先行する前のIRAPピクチャから復号プロセスを開始することによって生成される対応するピクチャに完全に一致する。
[VVC Draft 7の変更 終了]
[0082]したがって、いくつかの例では、ビデオエンコーダ200は、ビデオデータのピクチャのセットのための符号化されたピクチャを生成し得る。さらに、ビデオエンコーダ200は、符号化されたピクチャを備えるビットストリーム中にピクチャヘッダNALユニットを含め得、ピクチャヘッダNALユニットに関連するピクチャが(i)IRAPでもGDRピクチャでもないのか、(ii)IDRピクチャであるのか、(iii)CRAピクチャであるのか、または(iv)GDRピクチャであるのかを示す第1のシンタックス要素(たとえば、irap_gdr_idc)、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある。
[0083]同様に、いくつかの例では、デバイス(たとえば、ビデオデコーダ300または別のタイプのデバイス)は、ビデオデータの符号化されたピクチャのセットを備えるビットストリームを取得し得る。デバイスは、ビットストリーム中の符号化されたピクチャのうちのIRAPまたはGDRピクチャの位置を特定し得る。IRAPまたはGDRピクチャの位置を特定することの一部として、デバイスは、ビットストリーム中のピクチャヘッダNALユニットから、ピクチャヘッダNALユニットに関連するピクチャが(i)IRAPでもGDRピクチャでもないのか、(ii)IDRピクチャであるのか、(iii)CRAピクチャであるのか、または(iv)GDRピクチャであるのかを示す第1のシンタックス要素(たとえば、irap_gdr_idc)を取得し得る。NALユニットに関連するピクチャがIRAPまたはGDRピクチャであることを第1のシンタックス要素が示すことに基づいて、デバイスは、それによって、IRAPまたはGDRピクチャの位置を特定している。ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでいる。ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある。
[0084]IRAPまたはGDRピクチャを示すためのPH_IRAP_GDR_NUT
[0085]本開示の第3の技法によれば、NALユニットタイプは、IRAPまたはGDRピクチャに関連するピクチャヘッダを示すためにピクチャヘッダに対して定義され得る。言い換えれば、IRAPまたはGDRピクチャは、PH_NUTの部分として示され得る。特定のPH_NUTタイプは、ランダムアクセスピクチャの開始または漸次デコーダリフレッシュの開始を直接示し得る。これは様々な方法で達成され得る。特定のタイプを指定することなしにピクチャがIRAPまたはGDRピクチャであることをまさに示すIRAP_GDRタイプのPH_NUTを単一のPH_IRAP_GDR_NUTタイプが示す一例について以下で説明する。ピクチャヘッダに関連するスライスは、それらのNUT中でサブIRAPまたはGDRタイプを搬送することになる。
[VVC Draft 7の変更 開始]
7.3.2.6 ピクチャヘッダRBSPシンタックス
7.4.3.6 ピクチャヘッダRBSPセマンティクス
PHは、PHに関連するコード化ピクチャのすべてのスライスに共通である情報を含んでいる。
1に等しいnon_reference_picture_flagは、PHに関連するピクチャが参照ピクチャとして決して使用されないことを指定する。0に等しいnon_reference_picture_flagは、PHに関連するピクチャが参照ピクチャとして使用されることも使用されないこともあることを指定する。
1に等しいgdr_pic_flagは、PHに関連するピクチャがGDRピクチャであることを指定する。0に等しいgdr_pic_flagは、PHに関連するピクチャがGDRピクチャでないことを指定する。<!>存在しないとき、それは、0に等しいものと推論される。</!>
表5-NALユニットタイプのコードおよびNALユニットタイプのクラス
[VVC Draft 7の変更 終了]
[0086]したがって、いくつかの例では、ビデオエンコーダ200は、ビデオデータのピクチャのセットのための符号化されたピクチャを生成し得る。そのような例では、ビデオエンコーダ200は、符号化されたピクチャを備えるビットストリーム中にピクチャヘッダNALユニットを含め得る。ピクチャヘッダNALユニットのNALユニットタイプは、(i)ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャのいずれかであるのか、または(ii)ピクチャヘッダNALユニットに関連するピクチャがIRAPピクチャでもGDRピクチャでもないのかを示す。ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある。
[0087]同様に、一例では、デバイス(たとえば、ビデオデコーダ300または別のデバイス)は、ビデオデータの符号化されたピクチャのセットを備えるビットストリームを取得し得る。この例では、デバイスは、ビットストリーム中の符号化されたピクチャのうちのIRAPまたはGDRピクチャの位置を特定し得る。IRAPまたはGDRピクチャの位置を特定することの部分として、デバイスは、ビットストリーム中のピクチャヘッダNALユニットのNALユニットタイプに基づいて、(i)ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャのいずれかであるのか、または(ii)ピクチャヘッダNALユニットに関連するピクチャがIRAPピクチャでもGDRピクチャでもないのかを決定し得る。この例では、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある。
[0088]本開示の第4の技法によれば、スライスレイヤNUTは、ピクチャヘッダ中でシグナリングされ得る。たとえば、本開示の第4の技法によれば、PH_NUT中でスライスレイヤNUT(たとえば、IDR_W_RADL、CRA_NUT、TRAIL_NUT、...)を搬送することが提案される。この場合、一般的なSLICE_NUTは、スライスに関連するピクチャヘッダ中で搬送されることになるのでスライスは、特定のNUTを必要とすることなしに一般的なSLICE_NUTを有することができる。TRAIL_NUTのNALユニットタイプをもつNALユニットはトレーリングピクチャに関連付けられる。トレーリングピクチャは、復号順序でIRAPまたはGDRピクチャに続くIRAPまたはGDRピクチャに関連付けられる。混合されたNALユニットタイプを搬送するピクチャの場合、一般的なPH_NUTが使用され得る。混合されたNALユニットタイプのピクチャの場合、個々のスライスタイプは、この場合、スライスヘッダ中でシグナリングされ得る。たとえば、スライスヘッダ中のirap_gdr_idcフィールドは、サブタイプ(すなわちIDR_W_RADL、IDR_N_LP、CRA、GDR)を示し得る。
[0089]そのような例では、ピクチャヘッダは、ピクチャごとに必須である。本開示の他の例では、PHは、ピクチャごとに必須でない。mixed_nalu_types_in_pic_flagが1に等しいとき、スライスレイヤに固有のNUTは、PH NUTタイプとしてPHにおいてシグナリングされ得、スライスレイヤNUTは、スライスヘッダ中でシグナリングされるIRAPまたはGDR指示をもつSLICE_NUT指示によって置き換えられ得る。スライスヘッダレベルのNALユニットタイプは、mixed_nal_unit_caseを除いて関連するPH_NUTタイプから導出される。
[VVC Draft 7の変更 開始]
7.4.3.4 ピクチャパラメータセットRBSPセマンティクス
1に等しいmixed_nalu_types_in_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をもつ1つまたは複数のスライスをも含んでいるピクチャpicA(すなわち、ピクチャpicAのためのmixed_nalu_types_in_pic_flagの値は1に等しくなる)中の両端値を含む、IDR_W_RADLからCRA_NUTの範囲中のnal_unit_type値nalUnitTypeAをもつ各スライスについて、以下が適用される。
- スライスは、対応するsubpic_treated_as_pic_flag[i]の値が1に等しくなるサブピクチャsubpicAに属するものとする。
- スライスは、nalUnitTypeAに等しくないnal_unit_typeをもつVCL NALユニットを含んでいるpicAのサブピクチャに属しないものとする。
- 復号順序でCLVS中のすべての後続のPUについて、subpicA中のスライスのRefPicList[0]もRefPicList[1]も、アクティブエントリ中に復号順序でpicAに先行するいかなるピクチャも含まないものとする。
7.3.7.1 一般的なスライスヘッダシンタックス
<!>0に等しいirap_gdr_idcは、IDR_W_RADLピクチャを示す。1に等しいirap_gdr_pic_idcは、IDR_N_LPピクチャを示し、2に等しいirap_gdr_idcは、CRAピクチャを示す。3に等しいirap_gdr_idcは、GDRピクチャを示す。</!>
[VVC Draft 7の変更 終了]
[0090]したがって、いくつかの例では、ビデオエンコーダ200は、ビデオデータの符号化されたピクチャのセットと符号化されたピクチャのセット中のピクチャに関連するピクチャヘッダNALユニットとを備えるビットストリームを生成し得る。ビットストリームを生成することの部分として、ビデオエンコーダ200は、ピクチャヘッダNALユニットに関連するピクチャ中に複数のMALユニットタイプがあることを示す第1のシンタックス要素をビットストリーム中に含め得る。ビデオエンコーダ200は、ピクチャヘッダNALユニットに関連するピクチャ中に複数のNALユニットタイプがあることに基づいて、ピクチャヘッダNALユニット中に第2のシンタックス要素を含め得る。第2のシンタックス要素は、ピクチャヘッダNALユニットに関連するピクチャが(i)RADLピクチャをもつIDRであるのか、(ii)先頭ピクチャをもたないIDRであるのか、(iii)CRAピクチャであるのか、または(iv)GDRピクチャであるのかを示す。
[0091]同様に、この例では、デバイス(たとえば、ビデオデコーダ300または別のデバイス)は、ビデオデータの符号化されたピクチャのセットと符号化されたピクチャのセット中のピクチャに関連するピクチャヘッダNALユニットとを備えるビットストリームを取得し得る。デバイスは、ピクチャヘッダNALユニットに関連するピクチャ中に複数のNALユニットタイプがあることを示す第1のシンタックス要素に基づいて、ピクチャヘッダNALユニットから第2のシンタックス要素を取得し得、ここにおいて、第2のシンタックス要素は、ピクチャヘッダNALユニットに関連するピクチャが(i)ランダムアクセス復号可能先頭(RADL)ピクチャをもつ瞬時デコーダリフレッシュ(IDR)であるのか、(ii)先頭ピクチャをもたないIDRであるのか、(iii)クリーンランダムアクセス(CRA)ピクチャであるのか、または(iv)漸次デコーダリフレッシュ(GDR)ピクチャであるのかを示す。
[0092]VVC(ドラフト7)仕様では、ピクチャがGDRピクチャである場合、recovery_poc_cntは、PH中でシグナリングされる。GDRスライスがIRAPスライスと組み合わされ得る混合されたNALユニットの事例では、非GDRピクチャを生じる。GDRスライスのrecovery_poc_cntがシグナリングされる必要がある。本開示の第5の技法によれば、recovery_poc_cntが、サブピクチャ/スライスレベルでシグナリングされ得るか、またはgdr_pic_flagの定義が、GDRスライスを有するピクチャ中に混合されたNALユニットタイプを含まれるように変更され得る。
[VVC Draft 7の変更 開始]
7.3.7.1 一般的なスライスヘッダシンタックス
recovery_poc_cntは、出力順序における復号されたピクチャの回復点を指定する。現在のピクチャが、PHに関連付けられるGDRピクチャであり、CLVS中で復号順序で現在のGDRピクチャに続き、現在のGDRピクチャのPicOrderCntValにrecovery_poc_cntの値を加算したものに等しいPicOrderCntValを有するピクチャpicAがある場合、ピクチャpicAは、回復点ピクチャと呼ばれる。そうでない場合、現在のピクチャのPicOrderCntValにrecovery_poc_cntの値を加算したものよりも大きいPicOrderCntValを有する出力順序で第1のピクチャは、回復点ピクチャと呼ばれる。回復点ピクチャは、現在のGDRピクチャに復号順序において先行してはならない。recovery_poc_cntの値は、両端値を含む0~MaxPicOrderCntLsb-1の範囲中にあるものとする。
注1-gdr_enabled_flagが1に等しく、現在のピクチャのPicOrderCntValが、関連するGDRピクチャのRpPicOrderCntVal以上であるとき、出力順序において現在のおよび後続の復号されたピクチャが、存在するとき、復号順序で関連するGDRピクチャに先行する前のIRAPピクチャから復号プロセスを開始することによって生成される対応するピクチャに完全に一致する。
3.1 漸次復号リフレッシュ(GDR)ピクチャ:各VCL NALユニットがGDR_NUTと等しいnal_unit_typeを有するピクチャ。
7.4.3.6 ピクチャヘッダRBSPセマンティクス
PHは、PHに関連するコード化ピクチャのすべてのスライスに共通である情報を含んでいる。
1に等しいnon_reference_picture_flagは、PHに関連するピクチャが参照ピクチャとして決して使用されないことを指定する。0に等しいnon_reference_picture_flagは、PHに関連するピクチャが参照ピクチャとして使用されることも使用されないこともあることを指定する。
1に等しいgdr_pic_flagは、PHに関連するピクチャがGDR<dlt>ピクチャ</dlt><!>スライス</!><dlt>である</dlt><!>を含んでいる<!>ことを指定する。0に等しいgdr_pic_flagは、PHに関連するピクチャがGDRピクチャでないことを指定する。
[VVC Draft 7の変更 終了]
[0093]したがって、いくつかの例では、ビデオエンコーダ200は、ビデオデータのピクチャのセットための符号化されたピクチャと符号化されたピクチャのセット中のピクチャに関連するピクチャヘッダNALユニットとを生成し得る。ビデオエンコーダ200は、スライスヘッダ中に、ピクチャヘッダNALユニットに関連するピクチャ中に複数のNALユニットタイプがあり、ピクチャヘッダNALユニットのNALユニットタイプがGDRピクチャNALユニットタイプであることを示す第1のシンタックス要素を含め得る。ピクチャヘッダNALユニットに関連するピクチャ中に複数のNALユニットタイプがあり、ピクチャヘッダNALユニットのNALユニットタイプがGDRピクチャNALユニットタイプであることに基づいて、ビデオエンコーダ200は、回復点(recovery point)を示すピクチャヘッダ中に第2のシンタックス要素を含め得る。
[0094]同様に、いくつかの例では、ビデオデコーダ300または別のデバイスは、ビデオデータの符号化されたピクチャのセットと符号化されたピクチャのセット中のピクチャに関連するピクチャヘッダNALユニットとを備えるビットストリームを取得し得る。ビデオデコーダ300は、ピクチャヘッダNALユニットに関連するピクチャ中に複数のNALユニットタイプがあり、ピクチャヘッダNALユニットのNALユニットタイプがGDRピクチャNALユニットタイプであることを第1のシンタックス要素が示すことに基づいて、回復点を示す第2のシンタックス要素を取得し得る。
[0095]本開示は、概して、シンタックス要素などのある情報を「シグナリング」することに言及することがある。「シグナリング」という用語は、概して、符号化されたビデオデータを復号するために使用されるシンタックス要素および/または他のデータについての値の通信を指し得る。すなわち、ビデオエンコーダ200は、ビットストリームにおいてシンタックス要素についての値をシグナリングし得る。概して、シグナリングは、ビットストリームにおいて値を生成することを指す。上述のように、ソースデバイス102は、実質的にリアルタイムでビットストリームを宛先デバイス116に移送するか、または、宛先デバイス116による後の取出しのためにシンタックス要素を記憶デバイス112に記憶するときに行われ得るように、非リアルタイムでビットストリームを宛先デバイス116に移送し得る。
[0096]図2は、本開示の技法を実施し得る例示的なビデオエンコーダ200を示すブロック図である。図2は、説明の目的で与えられており、本開示において広く例示され、説明される技法を限定するものと見なされるべきではない。説明の目的で、本開示では、HEVCビデオコーディング規格および開発中のH.266/VVCビデオコーディング規格などのビデオコーディング規格のコンテキストにおいて、ビデオエンコーダ200について説明する。しかしながら、本開示の技法は、これらのビデオコーディング規格に限定されず、一般的にビデオ符号化および復号に適用可能である。
[0097]図2の例では、ビデオエンコーダ200は、ビデオデータメモリ230と、モード選択ユニット202と、残差生成ユニット204と、変換処理ユニット206と、量子化ユニット208と、逆量子化ユニット210と、逆変換処理ユニット212と、再構築ユニット214と、フィルタユニット216と、復号ピクチャバッファ(DPB)218と、エントロピー符号化ユニット220とを含む。ビデオデータメモリ230と、モード選択ユニット202と、残差生成ユニット204と、変換処理ユニット206と、量子化ユニット208と、逆量子化ユニット210と、逆変換処理ユニット212と、再構築ユニット214と、フィルタユニット216と、DPB218と、エントロピー符号化ユニット220とのいずれかまたはすべては、1つまたは複数のプロセッサにおいてまたは処理回路において実装され得る。たとえば、ビデオエンコーダ200のユニットは、1つまたは複数の回路または論理要素として、ハードウェア回路構成の一部として、またはプロセッサ、ASIC、もしくはFPGAの一部として、実装され得る。その上、ビデオエンコーダ200は、これらおよび他の機能を実施するための追加もしくは代替のプロセッサまたは処理回路を含み得る。
[0098]ビデオデータメモリ230は、ビデオエンコーダ200の構成要素によって符号化されるべきビデオデータを記憶し得る。ビデオエンコーダ200は、たとえば、ビデオソース104(図1)からビデオデータメモリ230中に記憶されたビデオデータを受信し得る。DPB218は、ビデオエンコーダ200による後続のビデオデータの予測において使用するための参照ビデオデータを記憶する参照ピクチャメモリとして働き得る。ビデオデータメモリ230とDPB218とは、同期ダイナミックランダムアクセスメモリ(DRAM)(SDRAM)を含むDRAM、磁気抵抗RAM(MRAM)、抵抗性RAM(RRAM(登録商標))、または他のタイプのメモリデバイスなど、様々なメモリデバイスのいずれかによって形成され得る。ビデオデータメモリ230とDPB218とは、同じメモリデバイスまたは別個のメモリデバイスによって提供され得る。様々な例では、ビデオデータメモリ230は、図示のように、ビデオエンコーダ200の他の構成要素とともにオンチップであるか、またはそれらの構成要素に対してオフチップであり得る。
[0099]本開示では、ビデオデータメモリ230への言及は、特にそのように説明されない限り、ビデオエンコーダ200の内部のメモリに限定されるものとして解釈されるべきではなく、または特にそのように説明されない限り、ビデオエンコーダ200の外部のメモリに限定されるものとして解釈されるべきではない。そうではなく、ビデオデータメモリ230への言及は、ビデオエンコーダ200が符号化のために受信するビデオデータ(たとえば、符号化されるべきである現在のブロックのビデオデータ)を記憶する参照メモリとして理解されたい。図1のメモリ106はまた、ビデオエンコーダ200の様々なユニットからの出力の一時的記憶を提供し得る。
[0100]図2の様々なユニットは、ビデオエンコーダ200によって実施される動作を理解するのを支援するために示されている。ユニットは、固定機能回路、プログラマブル回路、またはそれらの組合せとして実装され得る。固定機能回路は、特定の機能を与える回路を指し、実施され得る動作に関してあらかじめ設定される。プログラマブル回路は、様々なタスクを実施するように、および実施され得る動作においてフレキシブルな機能を提供するようにプログラムされ得る回路を指す。たとえば、プログラマブル回路は、ソフトウェアまたはファームウェアの命令によって定義される様式でプログラマブル回路を動作させるソフトウェアまたはファームウェアを実行し得る。固定機能回路は、(たとえば、パラメータを受信するかまたはパラメータを出力するために)ソフトウェア命令を実行し得るが、固定機能回路が実施する動作のタイプは、概して不変である。いくつかの例では、ユニットのうちの1つまたは複数は、別個の回路ブロック(固定機能またはプログラマブル)であり得、いくつかの例では、ユニットのうちの1つまたは複数は、集積回路であり得る。
[0101]ビデオエンコーダ200は、算術論理ユニット(ALU)、基本機能ユニット(EFU)、デジタル回路、アナログ回路、および/またはプログラマブル回路から形成されるプログラマブルコアを含み得る。ビデオエンコーダ200の動作が、プログラマブル回路によって実行されるソフトウェアを使用して実施される例では、メモリ106(図1)は、ビデオエンコーダ200が受信し、実行するソフトウェアの命令(たとえば、オブジェクトコード)を記憶し得るか、またはビデオエンコーダ200内の別のメモリ(図示せず)が、そのような命令を記憶し得る。
[0102]ビデオデータメモリ230は、受信されたビデオデータを記憶するように構成される。ビデオエンコーダ200は、ビデオデータメモリ230からビデオデータのピクチャを取り出し、ビデオデータを残差生成ユニット204とモード選択ユニット202とに提供し得る。ビデオデータメモリ230中のビデオデータは、符号化されるべきである生のビデオデータであり得る。
[0103]モード選択ユニット202は、動き推定ユニット222と、動き補償ユニット224と、イントラ予測ユニット226とを含む。モード選択ユニット202は、他の予測モードに従ってビデオ予測を実施するために追加の機能ユニットを含み得る。例として、モード選択ユニット202は、パレットユニット、(動き推定ユニット222および/または動き補償ユニット224の一部であり得る)イントラブロックコピーユニット、アフィンユニット、線形モデル(LM)ユニットなどを含み得る。
[0104]モード選択ユニット202は、概して、符号化パラメータの組合せと、そのような組合せについての得られたレートひずみ値とをテストするために、複数の符号化パスを協調させる。符号化パラメータは、CUへのCTUの区分、CUのための予測モード、CUの残差データのための変換タイプ、CUの残差データのための量子化パラメータなどを含み得る。モード選択ユニット202は、他のテストされた組合せよりも良好であるレートひずみ値を有する符号化パラメータの組合せを最終的に選択し得る。
[0105]ビデオエンコーダ200は、一連のCTUにビデオデータメモリ230から取り出されたピクチャを区分し、スライス内の1つまたは複数のCTUをカプセル化し得る。モード選択ユニット202は、上記で説明されたHEVCのQTBT構造またはクワッドツリー構造など、ツリー構造に従ってピクチャのCTUを区分し得る。上記で説明されたように、ビデオエンコーダ200は、ツリー構造に従ってCTUを区分することから1つまたは複数のCUを形成し得る。そのようなCUはまた、一般に「ビデオブロック」または「ブロック」と呼ばれることもある。
[0106]概して、モード選択ユニット202はまた、現在のブロック(たとえば、現在のCU、またはHEVCでは、PUとTUとの重複する部分)についての予測ブロックを生成するように、それの構成要素(たとえば、動き推定ユニット222、動き補償ユニット224、およびイントラ予測ユニット226)を制御する。現在のブロックのインター予測のために、動き推定ユニット222は、1つまたは複数の参照ピクチャ(たとえば、DPB218に記憶されている1つまたは複数の以前の符号化されたピクチャ)中で1つまたは複数の厳密に一致する参照ブロックを識別するために動き探索を実施し得る。特に、動き推定ユニット222は、たとえば、絶対差分和(SAD)、2乗差分和(SSD)、平均絶対差(MAD)、平均2乗差(MSD)などに従って、現在のブロックに対して潜在的な参照ブロックがどのくらい類似しているかを表す値を計算し得る。動き推定ユニット222は、概して、現在のブロックと考慮されている参照ブロックとの間のサンプルごとの差分を使用してこれらの計算を実施し得る。動き推定ユニット222は、現在のブロックに最も厳密に一致する参照ブロックを示す、これらの計算から生じる最も低い値を有する参照ブロックを識別し得る。
[0107]動き推定ユニット222は、現在のピクチャ中の現在のブロックの位置に対して参照ピクチャ中の参照ブロックの位置を定義する1つまたは複数の動きベクトル(MV)を形成し得る。動き推定ユニット222は、次いで、動きベクトルを動き補償ユニット224に提供し得る。たとえば、単方向インター予測では、動き推定ユニット222は、単一の動きベクトルを提供し得るが、双方向インター予測では、動き推定ユニット222は、2つの動きベクトルを提供し得る。動き補償ユニット224は、次いで、動きベクトルを使用して予測ブロックを生成し得る。たとえば、動き補償ユニット224は、動きベクトルを使用して参照ブロックのデータを取り出し得る。別の例として、動きベクトルが部分サンプル精度を有する場合、動き補償ユニット224は、1つまたは複数の補間フィルタに従って予測ブロックについての値を補間し得る。さらに、双方向インター予測では、動き補償ユニット224は、それぞれの動きベクトルによって識別された2つの参照ブロックのためのデータを取り出し、たとえば、サンプルごとの平均化または重み付け平均化を通して取り出されたデータを組み合わせ得る。
[0108]別の例として、イントラ予測、またはイントラ予測コーディングのために、イントラ予測ユニット226は、現在のブロックに隣接しているサンプルから予測ブロックを生成し得る。たとえば、方向性モードでは、イントラ予測ユニット226は、隣接サンプルの値を概して数学的に組み合わせ、現在のブロックにわたって規定の方向にこれらの計算された値をポピュレートして、予測ブロックを生成し得る。別の例として、DCモードでは、イントラ予測ユニット226は、現在のブロックに対する隣接サンプルの平均を計算し、予測ブロックのサンプルごとにこの得られた平均を含むように予測ブロックを生成し得る。
[0109]モード選択ユニット202は、予測ブロックを残差生成ユニット204に提供する。残差生成ユニット204は、ビデオデータメモリ230から現在のブロックの生の、符号化されていないバージョンを受信し、モード選択ユニット202から予測ブロックを受信する。残差生成ユニット204は、現在のブロックと予測ブロックとの間のサンプルごとの差分を計算する。得られたサンプルごとの差分は、現在のブロックについての残差ブロックを定義する。いくつかの例では、残差生成ユニット204はまた、残差差分パルスコード変調(RDPCM)を使用して残差ブロックを生成するために残差ブロック中のサンプル値の間の差を決定し得る。いくつかの例では、残差生成ユニット204は、バイナリ減算を実施する1つまたは複数の減算器回路を使用して形成され得る。
[0110]さらに、いくつかの例では、モード選択ユニット202は、ピクチャがIRAPとして、GDRピクチャとして、または別のタイプのピクチャとして符号化されるべきであるのかを決定し得る。モード選択ユニット202はまた、符号化されたピクチャのためのピクチャヘッダを生成し得る。したがって、図2の例では、モード選択ユニット202は、ピクチャヘッダユニット229を含む。ピクチャヘッダユニット229は、本開示の技法のいずれかに従ってピクチャヘッダを生成し得る。たとえば、ピクチャヘッダユニット229は、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャのいずれかでなければならないことを示すシンタックス要素を含むピクチャヘッダNALユニットを生成し得る。このピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでいる。
[0111]モード選択ユニット202がCUをPUに区分する例では、各PUは、ルーマ予測ユニットと、対応するクロマ予測ユニットとに関連付けられ得る。ビデオエンコーダ200とビデオデコーダ300とは、様々なサイズを有するPUをサポートし得る。上記のように、CUのサイズは、CUのルーマコーディングブロックのサイズを指すことがあり、PUのサイズは、PUのルーマ予測ユニットのサイズを指すことがある。特定のCUのサイズが2N×2Nであると仮定すると、ビデオエンコーダ200は、イントラ予測のための2N×2NまたはN×NのPUサイズと、インター予測のための2N×2N、2N×N、N×2N、N×N、または同様のものの対称PUサイズとをサポートし得る。ビデオエンコーダ200とビデオデコーダ300とはまた、インター予測のための2N×nU、2N×nD、nL×2N、およびnR×2NのPUサイズの非対称区分をサポートし得る。
[0112]モード選択ユニット202がCUをPUにさらに区分しない例では、各CUは、ルーマコーディングブロックと、対応するクロマコーディングブロックとに関連付けられ得る。上記のように、CUのサイズは、CUのルーマコーディングブロックのサイズを指し得る。ビデオエンコーダ200とビデオデコーダ300とは、2N×2N、2N×N、またはN×2NのCUサイズをサポートし得る。
[0113]いくつかの例として、イントラブロックコピーモードコーディング、アフィンモードコーディング、および線形モデル(LM)モードコーディングなどの他のビデオコーディング技法の場合、モード選択ユニット202は、コーディング技法に関連するそれぞれのユニットを介して、符号化されている現在のブロックのための予測ブロックを生成する。パレットモードコーディングなどのいくつかの例では、モード選択ユニット202は、予測ブロックを生成しなくてよく、代わりに、選択されたパレットに基づいてブロックを再構成するための方式を示すシンタックス要素を生成し得る。そのようなモードでは、モード選択ユニット202は、符号化されるべきこれらのシンタックス要素をエントロピー符号化ユニット220に提供し得る。
[0114]上記で説明したように、残差生成ユニット204は、現在のブロックに対するビデオデータと、対応する予測ブロックとを受信する。残差生成ユニット204は、次いで、現在のブロックに対する残差ブロックを生成する。残差ブロックを生成するために、残差生成ユニット204は、予測ブロックと現在のブロックとの間のサンプルごとの差分を計算する。
[0115]変換処理ユニット206は、(本明細書では「変換係数ブロック」と呼ぶ)変換係数のブロックを生成するために残差ブロックに1つまたは複数の変換を適用する。変換処理ユニット206は、変換係数ブロックを形成するために、残差ブロックに様々な変換を適用し得る。たとえば、変換処理ユニット206は、離散コサイン変換(DCT)、方向性変換、カルーネンレーベ変換(KLT)、または概念的に同様の変換を残差ブロックに適用し得る。いくつかの例では、変換処理ユニット206は、残差ブロックに複数の変換、たとえば、回転変換などの1次変換および2次変換を実施し得る。いくつかの例では、変換処理ユニット206は、残差ブロックに変換を適用しない。
[0116]量子化ユニット208は、量子化された変換係数ブロックを作り出すために、変換係数ブロック中の変換係数を量子化し得る。量子化ユニット208は、現在のブロックと関連付けられる量子化パラメータ(QP)値に従って変換係数ブロックの変換係数を量子化し得る。ビデオエンコーダ200は、(たとえば、モード選択ユニット202を介して)CUに関連するQP値を調整することによって現在のブロックに関連する変換係数ブロックに適用される量子化の程度を調整し得る。量子化は情報の損失をもたらし得、したがって、量子化変換係数は、変換処理ユニット206によって生成された元の変換係数よりも低い精度を有し得る。
[0117]逆量子化ユニット210および逆変換処理ユニット212は、変換係数ブロックから残差ブロックを再構築するために、それぞれ、量子化された変換係数ブロックに逆量子化および逆変換を適用し得る。再構成ユニット214は、再構成された残差ブロックと、モード選択ユニット202によって生成された予測ブロックとに基づいて、(潜在的にある程度のひずみを伴うが)現在のブロックに対応する再構成されたブロックを生成し得る。たとえば、再構築ユニット214は、再構築されたブロックを作り出すために、モード選択ユニット202によって生成された予測ブロックからの対応するサンプルに、再構築された残差ブロックのサンプルを加算し得る。
[0118]フィルタユニット216は、再構築されたブロックに対して1つまたは複数のフィルタ演算を実施し得る。たとえば、フィルタユニット216は、CUのエッジに沿ってブロッキネスアーティファクトを低減するためのデブロッキング動作を実施し得る。フィルタユニット216の動作は、いくつかの例では、スキップされ得る。
[0119]ビデオエンコーダ200は、再構築されたブロックをDPB218に記憶する。たとえば、フィルタユニット216の動作が必要とされない例では、再構築ユニット214は、再構築されたブロックをDPB218に記憶し得る。フィルタユニット216の動作が必要とされる例では、フィルタユニット216は、フィルタ処理された再構築されたブロックをDPB218に記憶し得る。動き推定ユニット222と動き補償ユニット224とは、後で符号化されるピクチャのブロックをインター予測するために、再構築(および潜在的にフィルタ処理)されたブロックから形成された参照ピクチャをDPB218から取り出し得る。加えて、イントラ予測ユニット226は、現在のピクチャ中の他のブロックをイントラ予測するために、現在のピクチャのDPB218中の再構築されたブロックを使用し得る。
[0120]概して、エントロピー符号化ユニット220は、ビデオエンコーダ200の他の機能構成要素から受信されたシンタックス要素をエントロピー符号化し得る。たとえば、エントロピー符号化ユニット220は、量子化ユニット208からの量子化された変換係数ブロックをエントロピー符号化し得る。別の例として、エントロピー符号化ユニット220は、モード選択ユニット202からの予測シンタックス要素(たとえば、インター予測のための動き情報またはイントラ予測のためのイントラモード情報)をエントロピー符号化し得る。エントロピー符号化ユニット220は、エントロピー符号化データを生成するために、ビデオデータの別の例であるシンタックス要素に対して1つまたは複数のエントロピー符号化演算を実施し得る。たとえば、エントロピー符号化ユニット220は、コンテキスト適応型可変長コーディング(CAVLC)動作、CABAC動作、可変対可変(V2V)長コーディング動作、シンタックスベースコンテキスト適応型バイナリ算術コーディング(SBAC)動作、確率間隔区分エントロピー(PIPE)コーディング動作、指数ゴロム符号化動作、または別のタイプのエントロピー符号化動作をデータに対して実施し得る。いくつかの例では、エントロピー符号化ユニット220は、シンタックス要素がエントロピー符号化されないバイパスモードで動作し得る。
[0121]ビデオエンコーダ200は、スライスまたはピクチャのブロックを再構築するために必要とされるエントロピー符号化されたシンタックス要素を含むビットストリームを出力し得る。特に、エントロピー符号化ユニット220がビットストリームを出力し得る。
[0122]上記で説明された動作について、ブロックに関して説明する。そのような説明は、ルーマコーディングブロックおよび/またはクロマコーディングブロックのための動作であるものとして理解されるべきである。上で説明されたように、いくつかの例では、ルーマコーディングブロックおよびクロマコーディングブロックは、CUのルーマ成分およびクロマ成分である。いくつかの例では、ルーマコーディングブロックおよびクロマコーディングブロックは、PUのルーマ成分およびクロマ成分である。
[0123]いくつかの例では、ルーマコーディングブロックに関して実施される動作は、クロマコーディングブロックのために繰り返される必要はない。一例として、ルーマコーディングブロックのための動きベクトル(MV)と参照ピクチャとを識別するための動作は、クロマブロックのためのMVと参照ピクチャとを識別するために繰り返される必要はない。むしろ、ルーマコーディングブロックのためのMVは、クロマブロックのためのMVを決定するためにスケーリングされ得、参照ピクチャは同じであり得る。別の例として、イントラ予測プロセスは、ルーマコーディングブロックおよびクロマコーディングブロックについて同じであり得る。
[0124]ビデオエンコーダ200は、ビデオデータを符号化するように構成されるデバイスの一例を表し、デバイスは、ビデオデータを記憶するように構成されたメモリと、回路中に実装された1つまたは複数の処理ユニットとを含み、1つまたは複数の処理ユニットは、ビデオデータのピクチャのセットのための符号化されたピクチャを生成することと、符号化されたピクチャを備えるビットストリーム中にピクチャヘッダNALユニットを含めることと、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャのいずれかでなければならないことを示す第1のシンタックス要素を含む、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある、を行うように構成される。
[0125]いくつかの例では、ビデオエンコーダ200の処理ユニットは、ビデオデータのピクチャのセットのための符号化されたピクチャを生成することと、符号化されたピクチャを備えるビットストリーム中にピクチャヘッダネットワークNALユニットを含めることと、ピクチャヘッダNALユニットに関連するピクチャが(i)IRAPでもGDRピクチャでもないのか、(ii)IDRピクチャであるのか、(iii)CRAピクチャであるのか、または(iv)GDRピクチャであるのかを示す第1のシンタックス要素、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある、を行うように構成され得る。
[0126]いくつかの例では、ビデオエンコーダ200の処理ユニットは、ビデオデータのピクチャのセットのための符号化されたピクチャを生成することと、符号化されたピクチャを備えるビットストリーム中にピクチャヘッダNALユニットを含めることと、ここにおいて、ピクチャヘッダNALユニットのNALユニットタイプは、(i)ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャのいずれかであるのか、または(ii)ピクチャヘッダNALユニットに関連するピクチャがIRAPピクチャでもGDRピクチャでもないのかを示す、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある、を行うように構成され得る。
[0127]いくつかの例では、ビデオエンコーダ200の処理ユニットは、ビデオデータの符号化されたピクチャのセットと符号化されたピクチャのセット中のピクチャに関連するピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットとを備えるビットストリームを生成すること、ここにおいて、ビットストリームを生成することは、ピクチャヘッダNALユニットに関連するピクチャ中に複数のNALユニットタイプがあることを示す第1のシンタックス要素に基づいて、ピクチャヘッダNALユニット中に第2のシンタックス要素を含めることを備える、ここにおいて、第2のシンタックス要素は、ピクチャヘッダNALユニットに関連するピクチャが(i)RADLピクチャをもつIDRであるのか、(ii)先頭ピクチャをもたないIDRであるのか、(iii)CRAピクチャであるのか、または(iv)GDRピクチャであるのかを示す、を行うように構成され得る。
[0128]いくつかの例では、ビデオエンコーダ200の処理ユニットは、ビデオデータのピクチャのセットための符号化されたピクチャと符号化されたピクチャのセット中のピクチャに関連するピクチャヘッダNALユニットとを生成することと、ピクチャヘッダNALユニットに関連するピクチャ中に複数のNALユニットタイプがあり、ピクチャヘッダNALユニットのNALユニットタイプがGDRピクチャNALユニットタイプであることを示すシンタックス要素に基づいて、回復点を示すシンタックス要素を含めることとを行うように構成され得る。
[0129]図3は、本開示の技法を実施し得る例示的なビデオデコーダ300を示すブロック図である。図3は、説明の目的で与えられており、本開示において広く例示され、説明される技法を限定するものではない。説明の目的で、本開示は、VVCおよびHEVCの技法に従って、ビデオデコーダ300について説明する。しかしながら、本開示の技法は、他のビデオコーディング規格に構成されたビデオコーディングデバイスによって実施され得る。
[0130]図3の例では、ビデオデコーダ300は、コード化ピクチャバッファ(CPB)メモリ320と、エントロピー復号ユニット302と、予測処理ユニット304と、逆量子化ユニット306と、逆変換処理ユニット308と、再構築ユニット310と、フィルタユニット312と、復号ピクチャバッファ(DPB)314とを含む。CPBメモリ320と、エントロピー復号ユニット302と、予測処理ユニット304と、逆量子化ユニット306と、逆変換処理ユニット308と、再構築ユニット310と、フィルタユニット312と、DPB314とのいずれかまたはすべては、1つまたは複数のプロセッサまたは処理回路において実装され得る。たとえば、ビデオデコーダ300のユニットは、1つまたは複数の回路または論理要素として、ハードウェア回路構成の一部として、またはプロセッサ、ASIC、もしくはFPGAの一部として、実装され得る。その上、ビデオデコーダ300は、これらおよび他の機能を実施するための追加または代替のプロセッサまたは処理回路を含み得る。
[0131]予測処理ユニット304は、動き補償ユニット316とイントラ予測ユニット318とを含む。予測処理ユニット304は、他の予測モードに従って予測を実施するための追加のユニットを含み得る。例として、予測処理ユニット304は、パレットユニット、(動き補償ユニット316の一部を形成し得る)イントラブロックコピーユニット、アフィンユニット、線形モデル(LM)ユニットなどを含み得る。他の例では、ビデオデコーダ300は、より多数の、より少数の、または異なる機能構成要素を含み得る。
[0132]CPBメモリ320は、ビデオデコーダ300の構成要素によって復号されるべき、符号化ビデオビットストリームなどのビデオデータを記憶し得る。CPBメモリ320に記憶されるビデオデータは、たとえば、コンピュータ可読媒体110(図1)から取得され得る。CPBメモリ320は、符号化されたビデオビットストリームからの符号化されたビデオデータ(たとえば、シンタックス要素)を記憶するCPBを含み得る。また、CPBメモリ320は、ビデオデコーダ300の様々なユニットからの出力を表す一時データなど、符号化されたピクチャのシンタックス要素以外のビデオデータを記憶し得る。DPB314は、概して、符号化されたビデオビットストリームの後続のデータまたはピクチャを復号するときにビデオデコーダ300が参照ビデオデータとして出力および/または使用し得る復号されたピクチャを記憶する。CPBメモリ320とDPB314とは、SDRAMを含むDRAM、MRAM、RRAM、または他のタイプのメモリデバイスなど、様々なメモリデバイスのいずれかによって形成され得る。CPBメモリ320とDPB314とは、同じメモリデバイスまたは別個のメモリデバイスによって提供され得る。様々な例では、CPBメモリ320は、ビデオデコーダ300の他の構成要素とともにオンチップであるか、またはそれらの構成要素に対してオフチップであり得る。
[0133]追加または代替として、いくつかの例では、ビデオデコーダ300は、メモリ120(図1)からコーディングされたビデオデータを取り出し得る。すなわち、メモリ120は、CPBメモリ320を用いて上記で論じられたデータを記憶し得る。同様に、メモリ120は、ビデオデコーダ300の機能の一部またはすべてが、ビデオデコーダ300の処理回路によって実行されるべきソフトウェアにおいて実装されたとき、ビデオデコーダ300によって実行されるべき命令を記憶し得る。
[0134]図3に示されている様々なユニットは、ビデオデコーダ300によって実施される動作を理解するのを支援するために示されている。ユニットは、固定機能回路、プログラマブル回路、またはそれらの組合せとして実装され得る。図2と同様に、固定機能回路は、特定の機能を与える回路を指し、実施され得る動作にあらかじめ設定される。プログラマブル回路は、様々なタスクを実施するように、および実施され得る動作においてフレキシブルな機能を提供するようにプログラムされ得る回路を指す。たとえば、プログラマブル回路は、ソフトウェアまたはファームウェアの命令によって定義される様式でプログラマブル回路を動作させるソフトウェアまたはファームウェアを実行し得る。固定機能回路は、(たとえば、パラメータを受信するかまたはパラメータを出力するために)ソフトウェア命令を実行し得るが、固定機能回路が実施する動作のタイプは、概して不変である。いくつかの例では、ユニットのうちの1つまたは複数は、別個の回路ブロック(固定機能またはプログラマブル)であり得、いくつかの例では、ユニットのうちの1つまたは複数は、集積回路であり得る。
[0135]ビデオデコーダ300は、ALU、EFU、デジタル回路、アナログ回路、および/またはプログラマブル回路から形成されるプログラマブルコアを含み得る。ビデオデコーダ300の動作が、プログラマブル回路上で実行するソフトウェアによって実施される例では、オンチップまたはオフチップメモリは、ビデオデコーダ300が受信し、実行するソフトウェアの命令(たとえば、オブジェクトコード)を記憶し得る。
[0136]エントロピー復号ユニット302は、CPBメモリ320から符号化ビデオデータを受信し、ビデオデータをエントロピー復号してシンタックス要素を再生し得る。予測処理ユニット304と、逆量子化ユニット306と、逆変換処理ユニット308と、再構築ユニット310と、フィルタユニット312とは、ビットストリームから抽出されたシンタックス要素に基づいて、復号されたビデオデータを生成し得る。
[0137]図3の例では、ビデオデコーダ300は、ビデオデコーダ300がランダムアクセスを実施することを可能にし得るランダムアクセスユニット321を含む。ランダムアクセスを実施することの部分として、ランダムアクセスユニット321は、本開示の1つまたは複数の技法に従って、関連するピクチャヘッダとともにIRAPおよびGDRピクチャの位置を特定し得る。たとえば、一例では、ランダムアクセスユニット321は、ビットストリーム中の符号化されたピクチャのうちのIRAPまたはGDRピクチャの位置を特定し得る。IRAPまたはGDRピクチャの位置を特定することの部分として、ランダムアクセスユニット321は、ビットストリーム中のピクチャヘッダNALユニットから、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャのいずれかでなければならないことを示すシンタックス要素を取得し得る。ランダムアクセスユニット321は、シンタックス要素に基づいて、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャであると決定し得る。
[0138]概して、ビデオデコーダ300は、ブロックごとにピクチャを再構築する。ビデオデコーダ300は、各ブロックに対して個々に再構築演算を実施し得る(ここで、現在再構築されているブロック、すなわち、現在復号されているブロックは、「現在のブロック」と呼ばれることがある)。
[0139]エントロピー復号ユニット302は、量子化変換係数ブロックの量子化変換係数を定義するシンタックス要素ならびに量子化パラメータ(QP)および/または変換モード指示などの変換情報をエントロピー復号し得る。逆量子化ユニット306は、量子化の程度と、同様に、逆量子化ユニット306が適用すべき逆量子化の程度とを決定するために、量子化された変換係数ブロックに関連付けられたQPを使用し得る。逆量子化ユニット306は、量子化された変換係数を逆量子化するために、たとえば、ビット単位の左シフト演算を実施し得る。逆量子化ユニット306は、それによって、変換係数を含む変換係数ブロックを形成し得る。
[0140]逆量子化ユニット306が変換係数ブロックを形成した後に、逆変換処理ユニット308は、現在のブロックに関連する残差ブロックを生成するために変換係数ブロックに1つまたは複数の逆変換を適用し得る。たとえば、逆変換処理ユニット308は、逆DCT、逆整数変換、逆カルーネンレーベ変換(KLT)、逆回転変換、逆方向変換、または別の逆変換を変換係数ブロックに適用し得る。
[0141]さらに、予測処理ユニット304は、エントロピー復号ユニット302によってエントロピー復号された予測情報シンタックス要素に従って予測ブロックを生成する。たとえば、現在のブロックがインター予測されていることを予測情報シンタックス要素が示す場合、動き補償ユニット316は、予測ブロックを生成し得る。この場合、予測情報シンタックス要素は、参照ブロックをそこから取り出すDPB314の中の参照ピクチャ、ならびに現在のピクチャの中の現在のブロックの位置に対する参照ピクチャの中の参照ブロックの位置を特定する、動きベクトルを示し得る。動き補償ユニット316は、概して、動き補償ユニット224(図2)に関して説明したのと実質的に類似の方法で、インター予測プロセスを実施し得る。
[0142]別の例として、予測情報シンタックス要素が、現在のブロックがイントラ予測されることを示す場合、イントラ予測ユニット318は、予測情報シンタックス要素によって示されるイントラ予測モードに従って予測ブロックを生成し得る。再び、イントラ予測ユニット318は、一般に、イントラ予測ユニット226(図2)に関して説明されたのと実質的に同様の方式で、イントラ予測プロセスを実施し得る。イントラ予測ユニット318は、DPB314から、現在のブロックに対する隣接サンプルのデータを取り出し得る。
[0143]再構築ユニット310は、予測ブロックと残差ブロックとを使用して現在のブロックを再構築し得る。たとえば、再構築ユニット310は、現在のブロックを再構築するために、予測ブロックの対応するサンプルに残差ブロックのサンプルを加算し得る。
[0144]フィルタユニット312は、再構築されたブロックに対して1つまたは複数のフィルタ動作を実施し得る。たとえば、フィルタユニット312は、再構築されたブロックのエッジに沿ってブロッキネスアーティファクトを低減するためのデブロッキング動作を実施し得る。フィルタユニット312の動作は、必ずしもすべての例において実施されるとは限らない。
[0145]ビデオデコーダ300は、再構築されたブロックをDPB314に記憶し得る。たとえば、フィルタユニット312の動作が実施されない例では、再構築ユニット310は、再構築されたブロックをDPB314に記憶し得る。フィルタユニット312の動作が実施される例では、フィルタユニット312は、フィルタ処理された再構築されたブロックをDPB314に記憶し得る。上記で論じられたように、DPB314は、イントラ予測のための現在のピクチャのサンプルおよび後続の動き補償のための以前に復号されたピクチャなど、参照情報を予測処理ユニット304に提供し得る。その上、ビデオデコーダ300は、DPB314からの復号されたピクチャ(たとえば、復号されたビデオ)を、図1のディスプレイデバイス118などのディスプレイデバイス上での後続の提示のために、出力し得る。
[0146]このようにして、ビデオデコーダ300は、ビデオ復号デバイスの一例を表し、ビデオ復号デバイスは、ビデオデータを記憶するように構成されたメモリと、回路中に実装された1つまたは複数の処理ユニットとを含み、1つまたは複数の処理ユニットは、ビデオデータの符号化されたピクチャのセットを備えるビットストリームを取得することと、ビットストリーム中の符号化されたピクチャのうちのIRAPまたはGDRピクチャの位置を特定することと、ここにおいて、IRAPまたはGDRピクチャの位置を特定することは、ビットストリーム中のピクチャヘッダNALユニットから、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャのいずれかでなければならないことを示す第1のシンタックス要素を取得することと、シンタックス要素に基づいて、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャであると決定することとを備える、を行うように構成される。ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある。
[0147]いくつかの例では、ビデオデコーダ300の処理ユニットは、ビデオデータの符号化されたピクチャのセットを備えるビットストリームを取得することと、ビットストリーム中の符号化されたピクチャのうちのIRAPまたはGDRピクチャの位置を特定することと、ここにおいて、IRAPまたはGDRピクチャの位置を特定することは、ビットストリーム中のピクチャヘッダNALユニットから、ピクチャヘッダNALユニットに関連するピクチャが(i)IRAPでもGDRピクチャでもないのか、(ii)瞬時復号リフレッシュ(IDR)ピクチャであるのか、(iii)CRAピクチャであるのか、または(iv)GDRピクチャであるのかを示す第1のシンタックス要素を取得すること、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある、を備える、を行うように構成される。
[0148]いくつかの例では、ビデオデコーダ300の処理ユニットは、ビデオデータの符号化されたピクチャのセットを備えるビットストリームを取得することと、ビットストリーム中の符号化されたピクチャのうちのイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャの位置を特定することと、ここにおいて、IRAPまたはGDRピクチャの位置を特定することは、ビットストリーム中のピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットのNALユニットタイプに基づいて、(i)ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャのいずれかであるのか、または(ii)ピクチャヘッダNALユニットに関連するピクチャがIRAPピクチャでもGDRピクチャでもないのかを決定することを備える、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある、を行うように構成される。
[0149]いくつかの例では、ビデオデコーダ300の処理ユニットは、ビデオデータの符号化されたピクチャのセットと符号化されたピクチャのセット中のピクチャに関連するピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットとを備えるビットストリームを取得することと、ピクチャヘッダNALユニットに関連するピクチャ中に複数のNALユニットタイプがあることを示す第1のシンタックス要素に基づいて、ピクチャヘッダNALユニットから第2のシンタックス要素を取得することと、ここにおいて、第2のシンタックス要素は、ピクチャヘッダNALユニットに関連するピクチャが(i)ランダムアクセス復号可能先頭(RADL)ピクチャをもつ瞬時デコーダリフレッシュ(IDR)であるのか、(ii)先頭ピクチャをもたないIDRであるのか、(iii)クリーンランダムアクセス(CRA)ピクチャであるのか、または(iv)漸次デコーダリフレッシュ(GDR)ピクチャであるのかを示す、を行うように構成される。
[0150]いくつかの例では、ビデオデコーダ300の処理ユニットは、ビデオデータの符号化されたピクチャのセットと符号化されたピクチャのセット中のピクチャに関連するピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットとを備えるビットストリームを取得することと、ピクチャヘッダNALユニットに関連するピクチャ中に複数のNALユニットタイプがあり、ピクチャヘッダNALユニットのNALユニットタイプが漸次デコーダリフレッシュ(GDR)ピクチャNALユニットタイプであることをシンタックス要素が示すことに基づいて、回復点を示すシンタックス要素を取得することとを行うように構成される。
[0151]図4は、現在のブロックを符号化するための例示的な方法を示すフローチャートである。現在のブロックは現在のCUを備え得る。ビデオエンコーダ200(図1および図2)に関して説明されるが、他のデバイスが図4の方法と同様の方法を実施するように構成され得ることを理解されたい。
[0152]この例では、ビデオエンコーダ200は、最初に、現在のブロックを予測する(350)。たとえば、ビデオエンコーダ200は、現在のブロックのための予測ブロックを形成し得る。ビデオエンコーダ200は、次いで、現在のブロックのための残差ブロックを計算し得る(352)。残差ブロックを計算するために、ビデオエンコーダ200は、元の符号化されていないブロックと、現在のブロックのための予測ブロックとの間の差分を計算し得る。ビデオエンコーダ200は、次いで、残差ブロックの変換係数を変換し、量子化し得る(354)。次に、ビデオエンコーダ200は、残差ブロックの量子化された変換係数を走査し得る(356)。走査中に、または走査に続いて、ビデオエンコーダ200は、変換係数をエントロピー符号化し得る(358)。たとえば、ビデオエンコーダ200は、CAVLCまたはCABACを使用して変換係数を符号化し得る。ビデオエンコーダ200は、次いで、ブロックのエントロピー符号化されたデータを出力し得る(360)。
[0153]図5は、ビデオデータの現在のブロックを復号するための例示的な方法を示すフローチャートである。現在のブロックは現在のCUを備え得る。ビデオデコーダ300(図1および図3)に関して説明されるが、他のデバイスが図5の方法と同様の方法を実施するように構成され得ることを理解されたい。
[0154]ビデオデコーダ300は、エントロピー符号化された予測情報、および現在のブロックに対応する残差ブロックの変換係数についてのエントロピー符号化されたデータなど、現在のブロックについてのエントロピー符号化されたデータを受信し得る(370)。ビデオデコーダ300は、現在のブロックについての予測情報を決定するために、および残差ブロックの変換係数を再生するために、エントロピー符号化されたデータをエントロピー復号し得る(372)。ビデオデコーダ300は、現在のブロックのための予測ブロックを計算するために、たとえば、現在のブロックのための予測情報によって示されるイントラ予測またはインター予測モードを使用して、現在のブロックを予測し得る(374)。ビデオデコーダ300は、次いで、量子化変換係数のブロックを作成するために、再生された変換係数を逆走査し得る(376)。ビデオデコーダ300は、次いで、残差ブロックを生成するために変換係数を逆量子化し、逆変換し得る(378)。ビデオデコーダ300は、予測ブロックと残差ブロックとを組み合わせることによって、最終的に現在のブロックを復号し得る(380)。
[0155]図6は、本開示の1つまたは複数の技法による、ビデオエンコーダ200の例示的な動作を示すフローチャートである。図6の例では、ビデオエンコーダ200は、ビデオデータのピクチャのセットのための符号化されたピクチャを生成し得る(600)。たとえば、ビデオエンコーダ200は、たとえば、図2に関して説明されるように、ピクチャを符号化し得る。
[0156]さらに、ビデオエンコーダ200は、符号化されたピクチャを備えるビットストリーム中にピクチャヘッダNALユニットを含め得る(602)。ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャのいずれかでなければならないことを示すシンタックス要素(たとえば、irap_or_gdr_pic_flag)を含む。たとえば、シンタックス要素は、シンタックス要素が1に等しい場合、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャのいずれかであり、任意の他のタイプのピクチャでないことを示し得る。ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでいる。ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある。
[0157]図7は、本開示の1つまたは複数の技法による、ビデオデータを処理するための例示的な動作を示すフローチャートである。ビデオデータを処理することは、ビデオデータを復号することと、他のデバイスへの送信のためにビデオデータを扱うことと、ビデオデータに関与する他の行為とを含み得る。図7の動作は、ビデオデコーダ300、宛先デバイス116、または中間のネットワークデバイスなどの別のデバイスによって実施され得る。説明を簡単にするために、本開示は、ビデオデコーダ300に関して図7を説明する。
[0158]図7の例では、ビデオデコーダ300は、ビデオデータの符号化されたピクチャのセットを備えるビットストリームを取得する(700)。さらに、ビデオデコーダ300は、ビットストリーム中の符号化されたピクチャのうちのIRAPまたはGDRピクチャの位置を特定し得る(702)。IRAPまたはGDRピクチャの位置を特定することの部分として、ビデオデコーダ300は、ビットストリーム中のピクチャヘッダNALユニットから、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャのいずれかである(must)ことを示すシンタックス要素(たとえば、irap_or_gdr_pic_flag)を取得し得る(704)。ビデオデコーダ300は、シンタックス要素に基づいて、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャであると決定し得る(706)。ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでいる。ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある。
[0159]さらに、図7の例では、ビデオデコーダ300は、ピクチャヘッダNALユニットに関連するピクチャを復号し得る(708)。たとえば、ビデオデコーダ300は、図3に関して説明されるように、ピクチャを復号し得る。他の例では、デバイスがIRAPまたはGDRピクチャの位置を特定した後、デバイスは、たとえば、ピクチャを復号するために別のデバイスにIRAPおよびGDRピクチャのロケーションの指示を与え得る。
[0160]以下は、本開示の1つまたは複数の技法による態様の非限定的なリストである。
[0161]態様1A。ビデオデータを処理する方法であって、ビデオデータのコーディングされたピクチャのセットを備えるビットストリームを取得することと、ビットストリーム中のコーディングされたピクチャのうちのイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャの位置を特定することと、を備え、ここにおいて、IRAPまたはGDRピクチャの位置を特定することは、ビットストリーム中のピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットから、ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)であるのか漸次デコーダリフレッシュ(GDR)ピクチャであるのか、またはピクチャヘッダNALユニットに関連するピクチャがIRAPでもGDRピクチャでもないことを示す第1のシンタックス要素を取得すること、を備え、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、コーディングされたピクチャのセット中にある、方法。
[0162]態様2A。ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャであることを示す第1のシンタックス要素に基づいて、ピクチャヘッダNALユニットから、ピクチャヘッダNALユニットに関連するピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を取得することをさらに備える、態様1Aに記載の方法。
[0163]態様3A。ピクチャヘッダNALユニットに関連するピクチャを復号することをさらに備える、態様1A~2Aのいずれかに記載の方法。
[0164]態様4A。ビデオデータを符号化する方法であって、ビデオデータのピクチャのセットのためのコーディングされたピクチャを生成することと、コーディングされたピクチャを備えるビットストリーム中にピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットを含めることと、を備え、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)であるのか漸次デコーダリフレッシュ(GDR)ピクチャであるのか、またはピクチャヘッダNALユニットに関連するピクチャがIRAPでもGDRピクチャでもないことを示す第1のシンタックス要素を含み、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、コーディングされたピクチャのセット中にある、方法。
[0165]態様5A。ピクチャがIRAPまたはGDRピクチャであることに基づいて、ピクチャヘッダNALユニットは、ピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を含める、態様4Aに記載の方法。
[0166]態様1B。ビデオデータを処理する方法であって、ビデオデータのコーディングされたピクチャのセットを備えるビットストリームを取得することと、ビットストリーム中のコーディングされたピクチャのうちのイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャの位置を特定することと、を備え、ここにおいて、
IRAPまたはGDRピクチャの位置を特定することは、ビットストリーム中のピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットから、ピクチャヘッダNALユニットに関連するピクチャが(i)イントラランダムアクセスピクチャ(IRAP)でも漸次デコーダリフレッシュ(GDR)ピクチャでもないのか、(ii)瞬時復号リフレッシュ(IDR)ピクチャであるのか、(iii)クリーンランダムアクセス(CRA)ピクチャであるのか、または(iv)GDRピクチャであるのかを示す第1のシンタックス要素を取得すること、を備え、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、コーディングされたピクチャのセット中にある、方法。
[0167]態様2B。ピクチャヘッダNALユニットに関連するピクチャがGDRピクチャであることを示す第1のシンタックス要素に基づいて、ピクチャヘッダNALユニットから、ピクチャヘッダNALユニットに関連するピクチャのための回復点(recovery point)を示す第2のシンタックス要素を取得することをさらに備える、態様1Bに記載の方法。
[0168]態様3B。ピクチャヘッダNALユニットに関連するピクチャを復号することをさらに備える、態様1B~2Bのいずれかに記載の方法。
[0169]態様4B。ビデオデータを符号化する方法であって、ビデオデータのピクチャのセットのためのコーディングされたピクチャを生成することと、コーディングされたピクチャを備えるビットストリーム中にピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットを含めることと、を備え、ピクチャヘッダNALユニットに関連するピクチャが(i)イントラランダムアクセスピクチャ(IRAP)でも漸次デコーダリフレッシュ(GDR)ピクチャでもないのか、(ii)瞬時復号リフレッシュ(IDR)ピクチャであるのか、(iii)クリーンランダムアクセス(CRA)ピクチャであるのか、または(iv)GDRピクチャであるのかを示す第1のシンタックス要素、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、コーディングされたピクチャのセット中にある、方法。
[0170]態様5B。ピクチャヘッダNALユニットに関連するピクチャがGDRピクチャであることに基づいて、ピクチャヘッダNALユニット中に、ピクチャヘッダNALユニットに関連するピクチャのための回復点を示す第2のシンタックス要素を含めることをさらに備える、態様4Bに記載の方法。
[0171]態様1C。ビデオデータを処理する方法であって、ビデオデータのコーディングされたピクチャのセットを備えるビットストリームを取得することと、ビットストリーム中のコーディングされたピクチャのうちのイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャの位置を特定することと、を備え、ここにおいて、IRAPまたはGDRピクチャの位置を特定することは、ビットストリーム中のピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットのNALユニットタイプに基づいて、(i)ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャのいずれかであるのか、または(ii)ピクチャヘッダNALユニットに関連するピクチャがIRAPピクチャでもGDRピクチャでもないのかを決定することを備え、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、コーディングされたピクチャのセット中にある、方法。
[0172]態様2C。ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャのいずれかであることを示すピクチャヘッダNALユニットのNALユニットタイプに基づいて、ピクチャヘッダNALユニットから、ピクチャヘッダNALユニットに関連するピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を取得することをさらに備える、態様1Cに記載の方法。
[0173]態様3C。ピクチャヘッダNALユニットに関連するピクチャを復号することをさらに備える、態様1C~2Cのいずれかに記載の方法。
[0174]態様4C。ビデオデータを符号化する方法であって、ビデオデータのピクチャのセットのためのコーディングされたピクチャを生成することと、コーディングされたピクチャを備えるビットストリーム中にピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットを含めることと、を備え、ここにおいて、ピクチャヘッダNALユニットのNALユニットタイプは、(i)ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)であるのか漸次デコーダリフレッシュ(GDR)ピクチャのいずれかであるのか、または(ii)ピクチャヘッダNALユニットに関連するピクチャがIRAPピクチャでもGDRピクチャでもないことを示し、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、コーディングされたピクチャのセット中にある、方法。
[0175]態様5C。ピクチャヘッダNALユニットに関連するピクチャがGDRピクチャであることに基づいて、ピクチャヘッダNALユニット中に、ピクチャヘッダNALユニットに関連するピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を含めることをさらに備える、態様4Cに記載の方法。
[0176]態様1D。ビデオデータを処理する方法であって、ビデオデータのコーディングされたピクチャのセットとコーディングされたピクチャのセット中のピクチャに関連するピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットとを備えるビットストリームを取得することと、ピクチャヘッダNALユニットに関連するピクチャ中に複数のNALユニットタイプがあることを示す第1のシンタックス要素に基づいて、ピクチャヘッダNALユニットから第2のシンタックス要素を取得することと、を備え、ここにおいて、第2のシンタックス要素は、ピクチャヘッダNALユニットに関連するピクチャが(i)ランダムアクセス復号可能先頭(RADL)ピクチャをもつ瞬時デコーダリフレッシュ(IDR)であるのか、(ii)先頭ピクチャをもたないIDRであるのか、(iii)クリーンランダムアクセス(CRA)ピクチャであるのか、または(iv)漸次デコーダリフレッシュ(GDR)ピクチャであるのかを示す、方法。
[0177]態様2D。ピクチャヘッダNALユニットは、第1のピクチャヘッダNALユニットであり、本方法は、ビットストリームから第2のピクチャヘッダNALユニットを取得することと、第2のピクチャヘッダNALユニットに関連するピクチャ中に複数のNALユニットタイプがないことを示す第3のシンタックス要素に基づいて、第2のピクチャヘッダNALユニットのNALユニットタイプに基づいて第2のピクチャヘッダNALユニットに関連するピクチャのピクチャタイプを決定することとをさらに備える、態様1Dに記載の方法。
[0178]態様3D。第1のピクチャヘッダNALユニットに関連するピクチャを復号することと、第2のピクチャヘッダNALユニットに関連するピクチャを復号することとのうちの少なくとも1つをさらに備える、態様1D~2Dのいずれかに記載の方法。
[0179]態様4D。ビデオデータを符号化する方法であって、ビデオデータのコーディングされたピクチャのセットとコーディングされたピクチャのセット中のピクチャに関連するピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットとを備えるビットストリームを生成すること、を備え、ここにおいて、ビットストリームを生成することは、ピクチャヘッダNALユニットに関連するピクチャ中に複数のNALユニットタイプがあることを示す第1のシンタックス要素に基づいて、ピクチャヘッダNALユニット中に第2のシンタックス要素を含めることを備え、ここにおいて、第2のシンタックス要素は、ピクチャヘッダNALユニットに関連するピクチャが(i)ランダムアクセス復号可能先頭(RADL)ピクチャをもつ瞬時デコーダリフレッシュ(IDR)であるのか、(ii)先頭ピクチャをもたないIDRであるのか、(iii)クリーンランダムアクセス(CRA)ピクチャであるのか、または(iv)漸次デコーダリフレッシュ(GDR)ピクチャであるかを示す、方法。
[0180]態様5D。ピクチャヘッダNALユニットは、第1のピクチャヘッダNALユニットであり、ビットストリームを生成することは、ビットストリーム中に第2のピクチャヘッダNALユニットを含めること、ここにおいて、第2のピクチャヘッダNALユニットに関連するピクチャ中に複数のNALユニットタイプがないことに基づいて、第2のピクチャヘッダのNALユニットタイプは、第2のピクチャヘッダNALユニットに関連するピクチャのピクチャタイプを示す、をさらに備える、態様4Dに記載の方法。
[0181]態様1E。ビデオデータを処理する方法であって、ビデオデータのコーディングされたピクチャのセットとコーディングされたピクチャのセット中のピクチャに関連するピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットとを備えるビットストリームを取得することと、ピクチャヘッダNALユニットに関連するピクチャ中に複数のNALユニットタイプがあり、ピクチャヘッダNALユニットのNALユニットタイプが漸次デコーダリフレッシュ(GDR)ピクチャNALユニットタイプであることをシンタックス要素が示すことに基づいて、回復点を示すシンタックス要素を取得することと、を備える方法。
[0182]態様2E。ピクチャヘッダNALユニットに関連するピクチャを復号することをさらに備える、態様1Eに記載の方法。
[0183]態様3E。ビデオデータを符号化する方法であって、ビデオデータのピクチャのセットのためのコーディングされたピクチャとコーディングされたピクチャのセット中のピクチャに関連するピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットとを生成することと、ピクチャヘッダNALユニットに関連するピクチャ中に複数のNALユニットタイプがあり、ピクチャヘッダNALユニットのNALユニットタイプが漸次デコーダリフレッシュ(GDR)ピクチャNALユニットタイプであることをシンタックス要素が示すことに基づいて、回復点を示すシンタックス要素を含めることと、を備える方法。
[0184]態様1F。IRAPまたはGDRピクチャから開始するビットストリームのランダムアクセスを実施することをさらに備える、態様1A~5A、1B~3B、1C~3C、1D~3D、1E、または2Eのいずれかに記載の方法。
[0185]態様2F。IRAPピクチャから開始するビットストリームのランダムアクセスを実施することは、クリーンランダムアクセス、瞬時デコーダリフレッシュ、またはリンク切れアクセスプロセスのうちの少なくとも1つを実施することを備える、態様1Fに記載の方法。
[0186]態様3F。GDRピクチャから開始するビットストリームのランダムアクセスを実施することは、漸次復号リフレッシュプロセスを実施することを備える、態様1Fに記載の方法。
[0187]態様1G。ビデオデータをコーディングするためのデバイスであって、態様1A~3Fのいずれかに記載の方法を実施するための1つまたは複数の手段を備える、デバイス。
[0188]態様2G。1つまたは複数の手段は、回路中に実装される1つまたは複数のプロセッサを備える、態様1Gに記載のデバイス。
[0189]態様3G。ビデオデータを記憶するためのメモリをさらに備える、態様1Gおよび2Gのいずれかに記載のデバイス。
[0190]態様4G。復号されたビデオデータを表示するように構成されたディスプレイをさらに備える、態様1G~3Gのいずれかに記載のデバイス。
[0191]態様5G。デバイスが、カメラ、コンピュータ、モバイルデバイス、ブロードキャスト受信機デバイス、またはセットトップボックスのうちの1つまたは複数を備える、態様1G~4Gのいずれかに記載のデバイス。
[0192]態様6G。デバイスがビデオデコーダを備える、態様1G~5Gのいずれかに記載のデバイス。
[0193]態様7G。デバイスがビデオエンコーダを備える、態様1G~6Gのいずれかに記載のデバイス。
[0194]態様8H。実行されたとき、態様1A~3Fのいずれかに記載の方法を1つまたは複数のプロセッサに実施させる命令を記憶したコンピュータ可読記憶媒体。
[0195]態様1I。ビデオデータを処理する方法であって、
[0196]ビデオデータの符号化されたピクチャのセットを備えるビットストリームを取得することと、ビットストリーム中の符号化されたピクチャのうちのイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャの位置を特定することと、を備え、ここにおいて、IRAPまたはGDRピクチャの位置を特定することは、ビットストリーム中のピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットから、ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャのいずれかでなければならないことを示すシンタックス要素を取得することと、シンタックス要素に基づいて、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャであると決定することと、を備え、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある、方法。
[0197]態様2I。シンタックス要素は第1のシンタックス要素であり、本方法は、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャであることを示す第1のシンタックス要素に基づいて、ピクチャヘッダNALユニットから、ピクチャヘッダNALユニットに関連するピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を取得することをさらに備える、態様1Iに記載の方法。
[0198]態様3I。ピクチャヘッダNALユニットに関連するピクチャを復号することをさらに備える、態様1Iまたは2Iに記載の方法。
[0199]態様4I。ビデオデータを符号化する方法であって、ビデオデータのピクチャのセットのための符号化されたピクチャを生成することと、符号化されたピクチャを備えるビットストリーム中にピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットを含めることと、を備え、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャのいずれかでなければならないことを示すシンタックス要素を含み、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある、方法。
[0200]態様5I。本方法は、ピクチャがIRAPまたはGDRピクチャであることに基づいて、ピクチャヘッダNALユニット中に、ピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を含めることをさらに備える、態様4Iに記載の方法。
[0201]態様6I。ビデオデータを処理するデバイスであって、ビデオデータの符号化されたピクチャを記憶するように構成されたメモリと、回路中に実装された1つまたは複数のプロセッサとを備え、1つまたは複数のプロセッサは、ビットストリーム中の符号化されたピクチャのうちのイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャの位置を特定すること、を行うように構成され、
ここにおいて、1つまたは複数のプロセッサは、IRAPまたはGDRピクチャの位置を特定することの一部として、1つまたは複数のプロセッサが、ビットストリーム中のピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットから、ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャのいずれかでなければならないことを示すシンタックス要素を取得することと、シンタックス要素に基づいて、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャであると決定することと、を行うように構成され、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある、デバイス。
[0202]態様7I。シンタックス要素は、第1のシンタックス要素であり、1つまたは複数のプロセッサは、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャであることを示す第1のシンタックス要素に基づいて、ピクチャヘッダNALユニットから、ピクチャヘッダNALユニットに関連するピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を取得することを行うようにさらに構成された、態様6Iに記載のデバイス。
[0203]態様8I。1つまたは複数のプロセッサは、ピクチャヘッダNALユニットに関連するピクチャを復号するようにさらに構成された、態様6Iまたは7Iに記載のデバイス。
[0204]態様9I。ビデオデータを符号化するデバイスであって、ビデオデータを記憶するように構成されたメモリと、回路中に実装された1つまたは複数のプロセッサとを備え、1つまたは複数のプロセッサは、ビデオデータのピクチャのセットのための符号化されたピクチャを生成することと、符号化されたピクチャを備えるビットストリーム中にピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットを含めることと、を行うように構成され、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャのいずれかでなければならないことを示すシンタックス要素を含み、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある、デバイス。
[0205]態様10I。1つまたは複数のプロセッサは、ピクチャがIRAPまたはGDRピクチャであることに基づいて、ピクチャヘッダNALユニット中に、ピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を含めることを行うようにさらに構成された、態様9Iに記載のデバイス。
[0206]態様11I。ビデオデータを処理するデバイスであって、ビデオデータの符号化されたピクチャのセットを備えるビットストリームを取得するための手段と、ビットストリーム中の符号化されたピクチャのうちのイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャの位置を特定するための手段と、を備え、ここにおいて、IRAPまたはGDRピクチャの位置を特定するための手段は、ビットストリーム中のピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットから、ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャのいずれかでなければならないことを示すシンタックス要素を取得するための手段と、シンタックス要素に基づいて、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャであると決定するための手段と、を備え、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある、デバイス。
[0207]態様12I。シンタックス要素は第1のシンタックス要素であり、デバイスは、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャであることを示す第1のシンタックス要素に基づいて、ピクチャヘッダNALユニットから、ピクチャヘッダNALユニットに関連するピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を取得するための手段をさらに備える、態様11Iに記載のデバイス。
[0208]態様13I。デバイスは、ピクチャヘッダNALユニットに関連するピクチャを復号するための手段をさらに備える、態様11Iまたは12Iに記載のデバイス。
[0209]態様14I。ビデオデータを符号化するデバイスであって、ビデオデータのピクチャのセットのための符号化されたピクチャを生成するための手段と、符号化されたピクチャを備えるビットストリーム中にピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットを含めるための手段と、
を備え、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャのいずれかでなければならないことを示すシンタックス要素を含み、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある、デバイス。
[0210]態様15I。デバイスは、ピクチャがIRAPまたはGDRピクチャであることに基づいて、ピクチャヘッダNALユニット中に、ピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を含めるための手段をさらに備える、態様14Iに記載のデバイス。
[0211]態様16I。命令を記憶したコンピュータ可読記憶媒体であって、命令は、実行されたとき、1つまたは複数のプロセッサに、ビデオデータの符号化されたピクチャのセットを備えるビットストリームを取得することと、ビットストリーム中の符号化されたピクチャのうちのイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャの位置を特定することと、を行わせ、
ここにおいて、1つまたは複数のプロセッサに、IRAPまたはGDRピクチャの位置を特定することを行わせる命令は、実行されたとき、1つまたは複数のプロセッサに、ビットストリーム中のピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットから、ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャのいずれかでなければならないことを示すシンタックス要素を取得することと、シンタックス要素に基づいて、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャであると決定することと、を行わせる命令を備え、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある、コンピュータ可読記憶媒体。
[0212]態様17I。シンタックス要素は、第1のシンタックス要素であり、命令は、1つまたは複数のプロセッサに、ピクチャヘッダNALユニットに関連するピクチャがIRAPまたはGDRピクチャであることを示す第1のシンタックス要素に基づいて、ピクチャヘッダNALユニットから、ピクチャヘッダNALユニットに関連するピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を取得することをさらに行わせる、態様16Iに記載のコンピュータ可読記憶媒体。
[0213]態様18I。命令は、実行されたとき、1つまたは複数のプロセッサに、ピクチャヘッダNALユニットに関連するピクチャを復号することをさらに行わせる、態様16Iまたは17Iに記載のコンピュータ可読記憶媒体。
[0214]態様19I。命令を記憶したコンピュータ可読記憶媒体であって、命令は、実行されたとき、1つまたは複数のプロセッサに、ビデオデータのピクチャのセットのための符号化されたピクチャを生成することと、符号化されたピクチャを備えるビットストリーム中にピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットを含めることと、を行わせ、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャのいずれかでなければならないことを示すシンタックス要素を含み、ここにおいて、ピクチャヘッダNALユニットは、ピクチャヘッダNALユニットに関連するピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、ピクチャヘッダNALユニットに関連するピクチャは、符号化されたピクチャのセット中にある、コンピュータ可読記憶媒体。
[0215]態様20I。命令は、実行されたとき、1つまたは複数のプロセッサに、ピクチャがIRAPまたはGDRピクチャであることに基づいて、ピクチャヘッダNALユニット中に、ピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を含めることをさらに行わせる、態様19Iに記載のコンピュータ可読記憶媒体。
[0216]上記例に応じて、本明細書で説明された技法のいずれかのいくつかの行為またはイベントは、異なるシーケンスで実施され得、追加、マージ、または完全に除外され得る(たとえば、すべての説明された行為またはイベントが本技法の実践のために必要であるとは限らない)ことを認識されたい。その上、いくつかの例では、行為またはイベントは、連続的にではなく、たとえば、マルチスレッド処理、割込み処理、または複数のプロセッサを通して同時に実施され得る。
[0217]1つまたは複数の例では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せにおいて実装され得る。ソフトウェアで実装される場合、機能は、1つまたは複数の命令またはコードとして、コンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体などの有形媒体に対応する、コンピュータ可読記憶媒体を含み得るか、または、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を促進する任意の媒体を含む通信媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、(1)非一時的である有形コンピュータ可読記憶媒体、または(2)信号もしくは搬送波などの通信媒体に、相当し得る。データ記憶媒体は、本開示において説明された技法の実装のための命令、コードおよび/またはデータ構造を取り出すために、1つまたは複数のコンピュータあるいは1つまたは複数のプロセッサによってアクセスされ得る、任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
[0218]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM(登録商標)、CD-ROMもしくは他の光ディスクストレージ、磁気ディスクストレージ、もしくは他の磁気ストレージデバイス、フラッシュメモリ、または、命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線(DSL)、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、DSL、または赤外線、無線、およびマイクロ波などのワイヤレス技術は媒体の定義に含まれる。しかしながら、コンピュータ可読記憶媒体およびデータ記憶媒体が、接続、搬送波、信号、または他の一時的媒体を含むのではなく、非一時的な有形の記憶媒体を対象とすることを理解されたい。本明細書で使用されるディスク(disk)およびディスク(disc)は、コンパクトディスク(disc)(CD)、レーザーディスク(登録商標)(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、およびBlu-rayディスク(disc)を含み、ディスク(disk)は、通常、データを磁気的に再生し、ディスク(disc)は、データをレーザーで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
[0219]命令は、1つまたは複数のデジタル信号プロセッサ(DSP)、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、あるいは他の等価な集積またはディスクリート論理回路など、1つまたは複数のプロセッサによって実行され得る。したがって、本明細書で使用される「プロセッサ」および「処理回路」という用語は、上記の構造、または本明細書で説明された技法の実装に好適な任意の他の構造のいずれかを指し得る。さらに、いくつかの態様では、本明細書で説明された機能は、符号化および復号のために構成された専用ハードウェアおよび/またはソフトウェアモジュール内に提供されるか、あるいは複合コーデックに組み込まれ得る。また、本技法は、1つまたは複数の回路または論理要素で十分に実装され得る。
[0220]本開示の技法は、ワイヤレスハンドセット、集積回路(IC)またはICのセット(たとえば、チップセット)を含む、多種多様なデバイスまたは装置で実装され得る。本開示では、開示される技法を実施するように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットを、必ずしも異なるハードウェアユニットによって実現する必要があるとは限らない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェアおよび/またはファームウェアとともに、上記で説明した1つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わされ得るか、または相互動作可能なハードウェアユニットの集合によって与えられ得る。
以下に本願の出願当初の特許請求の範囲に記載された発明を付記する。
[C1] ビデオデータを処理する方法であって、
前記ビデオデータの符号化されたピクチャのセットを備えるビットストリームを取得することと、
前記ビットストリーム中の前記符号化されたピクチャのうちのイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャの位置を特定することと、
を備え、
前記IRAPまたはGDRピクチャの位置を特定することは、
前記ビットストリーム中のピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットから、前記ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャのいずれかであることを示すシンタックス要素を取得することと、
前記シンタックス要素に基づいて、前記ピクチャヘッダNALユニットに関連する前記ピクチャがIRAPまたはGDRピクチャであると決定することと、
を備え、
前記ピクチャヘッダNALユニットは、前記ピクチャヘッダNALユニットに関連する前記ピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、
前記ピクチャヘッダNALユニットに関連する前記ピクチャは、符号化されたピクチャの前記セット中にある、
方法。
[C2] 前記シンタックス要素は第1のシンタックス要素であり、前記方法は、
前記ピクチャヘッダNALユニットに関連する前記ピクチャがIRAPまたはGDRピクチャであることを示す前記第1のシンタックス要素に基づいて、前記ピクチャヘッダNALユニットから、前記ピクチャヘッダNALユニットに関連する前記ピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を取得すること、
をさらに備える、C1に記載の方法。
[C3] 前記ピクチャヘッダNALユニットに関連する前記ピクチャを復号することをさらに備える、C1に記載の方法。
[C4] ビデオデータを符号化する方法であって、
前記ビデオデータのピクチャのセットのための符号化されたピクチャを生成することと、
前記符号化されたピクチャを備えるビットストリーム中にピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットを含めることと、
を備え、
前記ピクチャヘッダNALユニットは、前記ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャのいずれかであることを示すシンタックス要素を含み、
前記ピクチャヘッダNALユニットは、前記ピクチャヘッダNALユニットに関連する前記ピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、
前記ピクチャヘッダNALユニットに関連する前記ピクチャは、符号化されたピクチャの前記セット中にある、
方法。
[C5] 前記方法は、前記ピクチャがIRAPまたはGDRピクチャであることに基づいて、前記ピクチャヘッダNALユニット中に、前記ピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を含めることをさらに備える、C4に記載の方法。
[C6] ビデオデータを処理するためのデバイスであって、
前記ビデオデータの符号化されたピクチャを記憶するように構成されたメモリと、
回路中に実装された1つまたは複数のプロセッサと、
を備え、前記1つまたは複数のプロセッサは、
前記ビットストリーム中の前記符号化されたピクチャのうちのイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャの位置を特定すること、を行うように構成され、
前記1つまたは複数のプロセッサは、前記IRAPまたはGDRピクチャの位置を特定することの一部として、前記1つまたは複数のプロセッサが、
前記ビットストリーム中のピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットから、前記ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャのいずれかであることを示すシンタックス要素を取得することと、
前記シンタックス要素に基づいて、前記ピクチャヘッダNALユニットに関連する前記ピクチャがIRAPまたはGDRピクチャであると決定することと、
を行うように構成され、
前記ピクチャヘッダNALユニットは、前記ピクチャヘッダNALユニットに関連する前記ピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、
前記ピクチャヘッダNALユニットに関連する前記ピクチャは、符号化されたピクチャの前記セット中にある、
デバイス。
[C7] 前記シンタックス要素は、第1のシンタックス要素であり、前記1つまたは複数のプロセッサは、
前記ピクチャヘッダNALユニットに関連する前記ピクチャがIRAPまたはGDRピクチャであることを示す前記第1のシンタックス要素に基づいて、前記ピクチャヘッダNALユニットから、前記ピクチャヘッダNALユニットに関連する前記ピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を取得すること、
を行うようにさらに構成された、C6に記載のデバイス。
[C8] 前記1つまたは複数のプロセッサは、前記ピクチャヘッダNALユニットに関連する前記ピクチャを復号するようにさらに構成された、C6に記載のデバイス。
[C9] ビデオデータを符号化するためのデバイスであって、
前記ビデオデータを記憶するように構成されたメモリと、
回路中に実装された1つまたは複数のプロセッサと、
を備え、前記1つまたは複数のプロセッサは、
前記ビデオデータのピクチャのセットのための符号化されたピクチャを生成することと、
前記符号化されたピクチャを備えるビットストリーム中にピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットを含めることと、
を行うように構成され、
前記ピクチャヘッダNALユニットは、前記ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャのいずれかであることを示すシンタックス要素を含み、
前記ピクチャヘッダNALユニットは、前記ピクチャヘッダNALユニットに関連する前記ピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、
前記ピクチャヘッダNALユニットに関連する前記ピクチャは、符号化されたピクチャの前記セット中にある、
デバイス。
[C10] 前記1つまたは複数のプロセッサは、前記ピクチャがIRAPまたはGDRピクチャであることに基づいて、前記ピクチャヘッダNALユニット中に、前記ピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を含めることを行うようにさらに構成された、C9に記載のデバイス。
[C11] ビデオデータを処理するためのデバイスであって、
前記ビデオデータの符号化されたピクチャのセットを備えるビットストリームを取得するための手段と、
前記ビットストリーム中の前記符号化されたピクチャのうちのイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャの位置を特定するための手段と、
を備え、
前記IRAPまたはGDRピクチャの位置を特定するための前記手段は、
前記ビットストリーム中のピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットから、前記ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャのいずれかであることを示すシンタックス要素を取得するための手段と、
前記シンタックス要素に基づいて、前記ピクチャヘッダNALユニットに関連する前記ピクチャがIRAPまたはGDRピクチャであると決定するための手段と、
を備え、
前記ピクチャヘッダNALユニットは、前記ピクチャヘッダNALユニットに関連する前記ピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、
前記ピクチャヘッダNALユニットに関連する前記ピクチャは、符号化されたピクチャの前記セット中にある、
デバイス。
[C12] 前記シンタックス要素は第1のシンタックス要素であり、前記デバイスは、
前記ピクチャヘッダNALユニットに関連する前記ピクチャがIRAPまたはGDRピクチャであることを示す前記第1のシンタックス要素に基づいて、前記ピクチャヘッダNALユニットから、前記ピクチャヘッダNALユニットに関連する前記ピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を取得するための手段、
をさらに備える、C11に記載のデバイス。
[C13] 前記デバイスは、前記ピクチャヘッダNALユニットに関連する前記ピクチャを復号するための手段をさらに備える、C11に記載のデバイス。
[C14] ビデオデータを符号化するためのデバイスであって、
前記ビデオデータのピクチャのセットのための符号化されたピクチャを生成するための手段と、
前記符号化されたピクチャを備えるビットストリーム中にピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットを含めるための手段と、
を備え、
前記ピクチャヘッダNALユニットは、前記ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャのいずれかであることを示すシンタックス要素を含み、
前記ピクチャヘッダNALユニットは、前記ピクチャヘッダNALユニットに関連する前記ピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、
前記ピクチャヘッダNALユニットに関連する前記ピクチャは、符号化されたピクチャの前記セット中にある、
デバイス。
[C15] 前記デバイスは、前記ピクチャがIRAPまたはGDRピクチャであることに基づいて、前記ピクチャヘッダNALユニット中に、前記ピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を含めるための手段をさらに備える、C14に記載のデバイス。
[C16] 命令を記憶したコンピュータ可読記憶媒体であって、前記命令は、実行されたとき、1つまたは複数のプロセッサに、
前記ビデオデータの符号化されたピクチャのセットを備えるビットストリームを取得することと、
前記ビットストリーム中の前記符号化されたピクチャのうちのイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャの位置を特定することと、
を行わせ、
前記1つまたは複数のプロセッサに、前記IRAPまたはGDRピクチャの位置を特定することを行わせる前記命令は、実行されたとき、前記1つまたは複数のプロセッサに、
前記ビットストリーム中のピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットから、前記ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャのいずれかであることを示すシンタックス要素を取得することと、
前記シンタックス要素に基づいて、前記ピクチャヘッダNALユニットに関連する前記ピクチャがIRAPまたはGDRピクチャであると決定することと、
を行わせる命令を備え、
前記ピクチャヘッダNALユニットは、前記ピクチャヘッダNALユニットに関連する前記ピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、
前記ピクチャヘッダNALユニットに関連する前記ピクチャは、符号化されたピクチャの前記セット中にある、
コンピュータ可読記憶媒体。
[C17] 前記シンタックス要素は、第1のシンタックス要素であり、前記命令は、前記1つまたは複数のプロセッサに、
前記ピクチャヘッダNALユニットに関連する前記ピクチャがIRAPまたはGDRピクチャであることを示す前記第1のシンタックス要素に基づいて、前記ピクチャヘッダNALユニットから、前記ピクチャヘッダNALユニットに関連する前記ピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を取得すること
をさらに行わせる、C16に記載のコンピュータ可読記憶媒体。
[C18] 前記命令は、実行されたとき、前記1つまたは複数のプロセッサに、 前記ピクチャヘッダNALユニットに関連する前記ピクチャを復号すること、
をさらに行わせる、C16に記載のコンピュータ可読記憶媒体。
[C19] 命令を記憶したコンピュータ可読記憶媒体であって、前記命令は、実行されたとき、1つまたは複数のプロセッサに、
前記ビデオデータのピクチャのセットのための符号化されたピクチャを生成することと、
前記符号化されたピクチャを備えるビットストリーム中にピクチャヘッダネットワーク抽象化レイヤ(NAL)ユニットを含めることと、
を行わせ、
前記ピクチャヘッダNALユニットは、前記ピクチャヘッダNALユニットに関連するピクチャがイントラランダムアクセスピクチャ(IRAP)または漸次デコーダリフレッシュ(GDR)ピクチャのいずれかであることを示すシンタックス要素を含み、
前記ピクチャヘッダNALユニットは、前記ピクチャヘッダNALユニットに関連する前記ピクチャのすべてのスライスに適用されるシンタックス要素を含んでおり、
前記ピクチャヘッダNALユニットに関連する前記ピクチャは、符号化されたピクチャの前記セット中にある、
コンピュータ可読記憶媒体。
[C20] 前記命令は、実行されたとき、前記1つまたは複数のプロセッサに、
前記ピクチャがIRAPまたはGDRピクチャであることに基づいて、前記ピクチャヘッダNALユニット中に、前記ピクチャがGDRピクチャであるのかどうかを示す第2のシンタックス要素を含めること、
をさらに行わせる、C19に記載のコンピュータ可読記憶媒体。