(57)【特許請求の範囲】
【請求項１】
ビデオデータを復号する方法であって、
マルチレイヤビットストリームのビデオパラメータセット（ＶＰＳ）から、前記マルチレイヤビットストリームの少なくとも１つのレイヤについてのタイル構成を示すデータを復号することと、ここにおいて、前記タイル構成を示す前記データを復号することが、前記少なくとも１つのレイヤについて、第２のシンタックス要素の値が前記ＶＰＳによって指定された前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセット（ＰＰＳ）について１に等しくなることを示すシンタックス要素を、前記マルチレイヤビットストリームの前記少なくとも１つのレイヤについて復号することを備え、前記第２のシンタックス要素が、それぞれのＰＰＳを参照する各ピクチャ中に２つ以上のタイルがあることを指定する１の値を有する、
前記ＶＰＳから復号された前記データに従って、前記マルチレイヤビットストリームを復号することと
を備える方法。
【請求項２】
前記マルチレイヤビットストリームの前記少なくとも１つのレイヤについての並列処理構成を示すデータを復号することをさらに備える、請求項１に記載の方法。
【請求項３】
前記並列処理構成を示す前記データを復号することが、前記マルチレイヤビットストリームの前記少なくとも１つのレイヤについてエントロピーコーディング同期が実行されるかどうかを示すデータを復号することを備える、請求項２に記載の方法。
【請求項４】
前記並列処理構成を示す前記データを復号することが、少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記並列処理構成を示すentropy_coding_sync_enabled_vps_flagシンタックス要素を復号することをさらに備える、請求項３に記載の方法。
【請求項５】
前記タイル構成を示す前記データを復号することが、前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記タイル構成を示すtiles_enabled_vps_flagシンタックス要素を復号することをさらに備える、請求項１に記載の方法。
【請求項６】
前記タイル構成を示す前記データを復号することが、前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのループフィルタ構成を示すloop_filter_across_tiles_disabled_vps_flagシンタックス要素を復号することをさらに備える、請求項５に記載の方法。
【請求項７】
前記タイル構成を示す前記データが、parallel_tools_vps_idcシンタックス要素を含み、前記parallel_tools_vps_idcシンタックス要素が、前記マルチレイヤビットストリームの前記少なくとも１つのレイヤについての前記タイル構成と並列処理構成との両方を示す、請求項１に記載の方法。
【請求項８】
前記タイル構成を示す前記データが、前記少なくとも１つのレイヤについての前記タイル構成と並列処理構成とを示すtile_entropy_sync_coding_not_mixed_flagシンタックス要素を含み、前記方法が、ビデオデータの前記少なくとも１つのレイヤについてのループフィルタ構成を示すloopfilter_across_tile_boundary_not_mixed_flagシンタックス要素を復号することをさらに備える、請求項１に記載の方法。
【請求項９】
前記ＶＰＳから復号された前記データに基づいてビデオデコーダの復号リソースを割り当てることをさらに備える、請求項１に記載の方法。
【請求項１０】
前記ＶＰＳを復号することが、前記マルチレイヤビットストリームのピクチャのシーケンスより前に前記ＶＰＳを復号することを備え、前記マルチレイヤビットストリームを復号することが、前記ＶＰＳから復号された前記データに従ってピクチャの前記シーケンスを復号することを備える、請求項１に記載の方法。
【請求項１１】
ビデオデータを符号化する方法であって、
マルチレイヤビットストリームのビデオパラメータセット（ＶＰＳ）中で、前記マルチレイヤビットストリームの少なくとも１つのレイヤについてのタイル構成のうちの少なくとも１つを示すデータを符号化することと、ここにおいて、前記タイル構成を示す前記データを符号化することが、前記少なくとも１つのレイヤについて、第２のシンタックス要素の値が前記ＶＰＳによって指定された前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセット（ＰＰＳ）について１に等しくなることを示すシンタックス要素を、前記マルチレイヤビットストリームの前記少なくとも１つのレイヤについて復号することを備え、前記第２のシンタックス要素が、それぞれのＰＰＳを参照する各ピクチャ中に２つ以上のタイルがあることを指定する１の値を有する、
前記マルチレイヤビットストリームの前記ＶＰＳを符号化することを含む、前記マルチレイヤビットストリームを符号化することと
を備える方法。
【請求項１２】
前記マルチレイヤビットストリームの前記少なくとも１つのレイヤについての並列処理構成を示すデータを符号化することをさらに備える、請求項１１に記載の方法。
【請求項１３】
前記並列処理構成を示す前記データを符号化することが、前記マルチレイヤビットストリームの前記少なくとも１つのレイヤについてエントロピーコーディング同期が実行されるかどうかを示すデータを符号化することを備える、請求項１２に記載の方法。
【請求項１４】
前記並列処理構成を示す前記データを符号化することが、前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記並列処理構成を示すentropy_coding_sync_enabled_vps_flagシンタックス要素を符号化することをさらに備える、請求項１３に記載の方法。
【請求項１５】
前記タイル構成を示す前記データを符号化することが、前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記タイル構成を示すtiles_enabled_vps_flagシンタックス要素を符号化することをさらに備える、請求項１１に記載の方法。
【請求項１６】
前記タイル構成を示す前記データを符号化することが、前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのループフィルタ構成を示すloop_filter_across_tiles_disabled_vps_flagシンタックス要素を符号化することをさらに備える、請求項１５に記載の方法。
【請求項１７】
前記タイル構成を示す前記データが、parallel_tools_vps_idcシンタックス要素を含み、前記parallel_tools_vps_idcシンタックス要素が、前記マルチレイヤビットストリームの前記少なくとも１つのレイヤについての前記タイル構成と並列処理構成との両方を示す、請求項１１に記載の方法。
【請求項１８】
前記タイル構成を示す前記データが、マルチレイヤビットストリームの前記少なくとも１つのレイヤについての前記タイル構成と並列処理構成とを示すtile_entropy_sync_coding_not_mixed_flagシンタックス要素を含み、前記方法が、前記マルチレイヤビットストリームの各レイヤについてのループフィルタ構成を示すloopfilter_across_tile_boundary_not_mixed_flagシンタックス要素を符号化することをさらに備える、請求項１１に記載の方法。
【請求項１９】
前記ＶＰＳの前記データに従ってビデオエンコーダの符号化リソースを割り当てることをさらに備える、請求項１１に記載の方法。
【請求項２０】
前記ＶＰＳを符号化することが、前記マルチレイヤビットストリームのピクチャのシーケンスを符号化するより前に前記ＶＰＳを符号化することを備え、前記マルチレイヤビットストリームを符号化することが、ピクチャの前記シーケンスを符号化することを備える、請求項１１に記載の方法。
【請求項２１】
ビデオデータを処理する装置であって、
マルチレイヤビデオデータを記憶するメモリと、
前記メモリと通信状態にあるビデオコーダであって、
前記メモリに記憶された前記マルチレイヤビデオデータを含むマルチレイヤビットストリームの少なくとも１つのレイヤについてのタイル構成を示すデータを処理することと、ここにおいて、前記データが、前記マルチレイヤビデオデータを含むマルチレイヤビットストリームのビデオパラメータセット（ＶＰＳ）に関連付けられ、前記タイル構成を示す前記データが、前記少なくとも１つのレイヤについて、第２のシンタックス要素の値が前記ＶＰＳによって指定された前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセット（ＰＰＳ）について１に等しくなることを示すシンタックス要素を、前記マルチレイヤビットストリームの前記少なくとも１つのレイヤについて示すデータを備え、前記第２のシンタックス要素が、それぞれのＰＰＳを参照する各ピクチャ中に２つ以上のタイルがあることを指定する１の値を有する、
前記ＶＰＳの前記データに従って、前記マルチレイヤビデオデータを処理することと
を行うように構成されたビデオコーダと
を備える装置。
【請求項２２】
前記ビデオコーダが、前記マルチレイヤビデオデータの前記少なくとも１つのレイヤについての並列処理構成を示すデータを処理するようにさらに構成された、請求項２１に記載の装置。
【請求項２３】
前記並列処理構成を示す前記データを処理するために、前記ビデオコーダが、前記マルチレイヤビデオデータの前記少なくとも１つのレイヤについてエントロピーコーディング同期が実行されるかどうかを示すデータを処理するように構成された、請求項２２に記載の装置。
【請求項２４】
前記並列処理構成を示す前記データを処理するために、前記ビデオコーダが、前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記並列処理構成を示すentropy_coding_sync_enabled_vps_flagシンタックス要素を処理するようにさらに構成された、請求項２３に記載の装置。
【請求項２５】
前記タイル構成を示す前記データを処理するために、前記ビデオコーダが、前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記タイル構成を示すtiles_enabled_vps_flagシンタックス要素を処理するように構成された、請求項２１に記載の装置。
【請求項２６】
前記タイル構成を示す前記データを処理するために、前記ビデオコーダが、前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのループフィルタ構成を示すloop_filter_across_tiles_disabled_vps_flagシンタックス要素を処理するようにさらに構成された、請求項２５に記載の装置。
【請求項２７】
前記ビデオデータを処理するために、前記ビデオコーダは、前記ビデオデータを符号化するように構成され、前記ビデオデータを符号化するために、前記ビデオコーダは、
前記マルチレイヤビデオデータの少なくとも１つのレイヤについての残差ビデオデータを決定することと、
前記残差ビデオデータを変換することと、
前記マルチレイヤビットストリーム中の前記変換された残差ビデオデータを表すデータを符号化することと
を行うように構成された、請求項２１に記載の装置。
【請求項２８】
前記ビデオデータを処理するために、前記ビデオコーダは、前記ビデオデータを復号するように構成され、前記ビデオデータを復号するために、前記ビデオコーダは、
前記マルチレイヤビットストリームの前記ＶＰＳをパースすることと、
前記ＶＰＳをパースした後に前記マルチレイヤビットストリームから、前記マルチレイヤビットストリームの前記少なくとも１つのレイヤについての残差ビデオデータを表すデータをパースすることと、
前記残差ビデオデータを逆変換することと、
前記逆変換された残差ビデオデータに基づいてビデオデータの前記少なくとも１つのレイヤを再構成することと
を行うように構成された、請求項２１に記載の装置。
【請求項２９】
表示のために前記マルチレイヤビデオデータの前記少なくとも１つのレイヤを提示するように構成されたディスプレイデバイスをさらに備える、請求項２１に記載の装置。
【請求項３０】
前記マルチレイヤビデオデータを受信するように構成されたワイヤレスモデムをさらに備える、請求項２１に記載の装置。
【請求項３１】
前記装置が、
１つまたは複数の集積回路、
１つまたは複数のマイクロプロセッサ、
１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）、
１つまたは複数のフィールドプログラマブルゲートアレイ（ＦＰＧＡ）、
デスクトップコンピュータ、
ラップトップコンピュータ、
タブレットコンピュータ、
電話、
テレビジョン、
カメラ、
ディスプレイデバイス、
デジタルメディアプレーヤ、
ビデオゲームコンソール、
ビデオゲームデバイス、
ビデオストリーミングデバイス、または、
ワイヤレス通信デバイス
のうちの少なくとも１つを備える、請求項２１に記載の装置。
【請求項３２】
ビデオデータを処理する装置であって、
マルチレイヤビットストリームの少なくとも１つのレイヤについてのタイル構成を示すデータを処理するための手段と、ここにおいて、前記データが、前記マルチレイヤビットストリームのビデオパラメータセット（ＶＰＳ）に関連付けられ、前記タイル構成を示す前記データが、前記少なくとも１つのレイヤについて、第２のシンタックス要素の値が前記ＶＰＳによって指定された前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセット（ＰＰＳ）について１に等しくなることを示すシンタックス要素を、前記マルチレイヤビットストリームの前記少なくとも１つのレイヤについて示すデータを備え、前記第２のシンタックス要素が、それぞれのＰＰＳを参照する各ピクチャ中に２つ以上のタイルがあることを指定する１の値を有する、
前記ＶＰＳの前記データに従って、前記マルチレイヤビットストリームを処理するための手段と
を備える装置。
【請求項３３】
前記マルチレイヤビットストリームの前記少なくとも１つのレイヤについての並列処理構成を示すデータを処理するための手段をさらに備える、請求項３２に記載の装置。
【請求項３４】
前記並列処理構成を示す前記データを処理するための前記手段が、前記マルチレイヤビットストリームの前記それぞれのレイヤについてエントロピーコーディング同期が実行されるかどうかを示すデータを処理するための手段を備える、請求項３３に記載の装置。
【請求項３５】
前記並列処理構成を示す前記データを処理するための前記手段が、前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記並列処理構成を示すentropy_coding_sync_enabled_vps_flagシンタックス要素を処理するための手段をさらに備える、請求項３４に記載の装置。
【請求項３６】
前記タイル構成を示す前記データを処理するための前記手段が、前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記タイル構成を示すtiles_enabled_vps_flagシンタックス要素を処理するための手段をさらに備える、請求項３２に記載の装置。
【請求項３７】
前記タイル構成を示す前記データを処理するための前記手段が、前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのループフィルタ構成を示すloop_filter_across_tiles_disabled_vps_flagシンタックス要素を処理するための手段をさらに備える、請求項３６に記載の装置。
【請求項３８】
前記装置が、
１つまたは複数の集積回路、
１つまたは複数のマイクロプロセッサ、
１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）、
１つまたは複数のフィールドプログラマブルゲートアレイ（ＦＰＧＡ）、
デスクトップコンピュータ、
ラップトップコンピュータ、
タブレットコンピュータ、
電話、
テレビジョン、
カメラ、
ディスプレイデバイス、
デジタルメディアプレーヤ、
ビデオゲームコンソール、
ビデオゲームデバイス、
ビデオストリーミングデバイス、または、
ワイヤレス通信デバイス
のうちの少なくとも１つを備える、請求項３２に記載の装置。
【請求項３９】
実行されたとき、１つまたは複数のプロセッサに、
マルチレイヤビットストリームの少なくとも１つのレイヤについてのタイル構成のうちの少なくとも１つを示すデータを処理することと、ここにおいて、前記データが、前記マルチレイヤビットストリームのビデオパラメータセット（ＶＰＳ）に関連付けられ、前記タイル構成を示す前記データが、前記少なくとも１つのレイヤについて、第２のシンタックス要素の値が前記ＶＰＳによって指定された前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセット（ＰＰＳ）について１に等しくなることを示すシンタックス要素を、前記マルチレイヤビットストリームの前記少なくとも１つのレイヤについて示すデータを備え、前記第２のシンタックス要素が、それぞれのＰＰＳを参照する各ピクチャ中に２つ以上のタイルがあることを指定する１の値を有する、
前記ＶＰＳの前記データに従って、前記マルチレイヤビットストリームを処理することと
を行わせる命令を記憶した非一時的コンピュータ可読記憶媒体。
【請求項４０】
前記１つまたは複数のプロセッサに、前記マルチレイヤビットストリームの前記少なくとも１つのレイヤについての並列処理構成を示すデータを処理することを行わせる命令をさらに有する、請求項３９に記載の非一時的コンピュータ可読記憶媒体。
【請求項４１】
前記タイル構成を示す前記データを処理するために、前記命令が、前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記タイル構成を示すtiles_enabled_vps_flagシンタックス要素を処理することを前記１つまたは複数のプロセッサにさらに行わせる、請求項３９に記載の非一時的コンピュータ可読記憶媒体。
【請求項４２】
前記タイル構成を示す前記データを処理するために、前記命令が、前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのループフィルタ構成を示すloop_filter_across_tiles_disabled_vps_flagシンタックス要素を処理することを前記１つまたは複数のプロセッサにさらに行わせる、請求項４１に記載の非一時的コンピュータ可読記憶媒体。
【請求項４３】
前記並列処理構成を示す前記データを処理するために、前記命令が、前記マルチレイヤビットストリームの前記少なくとも１つのレイヤについてエントロピーコーディング同期が実行されるかどうかを示すデータを処理することを前記１つまたは複数のプロセッサに行わせる、請求項４０に記載の非一時的コンピュータ可読記憶媒体。
【請求項４４】
前記並列処理構成を示す前記データを処理するために、前記命令が、前記少なくとも１つのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記並列処理構成を示すentropy_coding_sync_enabled_vps_flagシンタックス要素を処理することを前記１つまたは複数のプロセッサにさらに行わせる、請求項４３に記載の非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]本出願は、その内容全体が参照により本明細書に組み込まれる、２０１３年１０月１４日に出願された米国仮出願第６１／８９０，７６３号の利益を主張する。
【０００２】
[0002]本開示は、ビデオコーディングに関し、より詳細には、ビデオコーディングにおける並列処理のための技法に関する。
【背景技術】
【０００３】
[0003]デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップコンピュータもしくはデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダー、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラー電話機もしくは衛星無線電話機、いわゆる「スマートフォン」、ビデオ会議デバイス、ビデオストリーミングデバイス、および類似物を含む広範囲のデバイスに組み込まれ得る。デジタルビデオデバイスは、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４、Ｐａｒｔ  １０、アドバンストビデオコーディング（ＡＶＣ：Advanced Video Coding）、現在開発中の高効率ビデオコーディング（ＨＥＶＣ：High Efficiency Video Coding）規格によって定義された規格、およびそのような規格の拡張に記載されているビデオ圧縮技法など、ビデオ圧縮技法を実装する。これらのビデオデバイスは、そのようなビデオ圧縮技法を実装することによって、デジタルビデオ情報のより効率的な送信、受信、符号化、復号、および／または記憶を行い得る。
【０００４】
[0004]ビデオ圧縮技法は、空間的（ピクチャ内（intra-picture））予測および／または時間的（ピクチャ間（inter-picture））予測を実行して、ビデオシーケンスに固有の冗長性を低減または除去する。ブロックベースのビデオコーディングでは、ビデオスライス（すなわち、ビデオフレームまたはビデオフレームの一部）がビデオブロックにパーティショニングされ得、これらのビデオブロックは、ＣＴＢ、ＣＵ、および／またはコーディングノードと呼ばれることもある。ピクチャのイントラコーディングされた（Ｉ）スライス中のビデオブロックは、同じピクチャ中の近隣ブロック中の参照サンプルに対する空間的予測を使用して符号化される。ピクチャのインターコード化（ＰまたはＢ）スライス中のビデオブロックは、同じピクチャの中の隣接ブロック中の参照サンプルに対する空間的予測、または他の参照ピクチャ中の参照サンプルに対する時間的予測を使用し得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームと呼ばれることがある。
【０００５】
[0005]空間的予測または時間的予測は、コーディングされるべきブロックのための予測ブロックを生じる。残差データは、コーディングされるべき元のブロックと予測ブロックとの間のピクセル差分を表す。インターコーディングされたブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトルに従って符号化され、残差データは、コーディングされたブロックと予測ブロックとの差分を示す。イントラコード化ブロックは、イントラコーディングモードおよび残差データに従って符号化される。さらなる圧縮のために、残差データは、ピクセル領域から変換領域に変換され、残差変換係数が生じ得、その残差変換係数は、次いで量子化され得る。最初に２次元アレイで構成される量子化変換係数は、変換係数の１次元ベクトルを生成するために走査され得、なお一層の圧縮を達成するためにエントロピーコーディングが適用され得る。
【発明の概要】
【０００６】
[0006]概して、本開示は、ビデオコーディングの並列処理ための技法を説明する。たとえば、本開示は、高効率ビデオコーディング（ＨＥＶＣ）規格のマルチレイヤ拡張を含む、マルチレイヤビデオコーディング処理における並列処理のための技法を説明する。本開示の技法は、ビデオコーディングプロセスのための（たとえば、ビデオパラメータセット（ＶＰＳ：video parameter set）レベルでの）並列処理ツールの使用または利用可能性の早期指示（early indication）を与えることを含む。
【０００７】
[0007]一例では、ビデオデータを復号する方法は、マルチレイヤビットストリームのビデオパラメータセット（ＶＰＳ）から、マルチレイヤビットストリームのレイヤについてのタイル構成またはマルチレイヤビットストリームのレイヤについての並列処理構成のうちの少なくとも１つを示すデータを復号することと、ＶＰＳから復号されたデータに従って、マルチレイヤビットストリームを復号することとを含む。
【０００８】
[0008]別の例では、ビデオデータを符号化する方法は、マルチレイヤビットストリームのビデオパラメータセット（ＶＰＳ）中で、マルチレイヤビットストリームのレイヤについてのタイル構成またはマルチレイヤビットストリームのレイヤについての並列処理構成のうちの少なくとも１つを示すデータを符号化することと、マルチレイヤビットストリームのＶＰＳを符号化することを含むマルチレイヤビットストリームを符号化することとを含む。
【０００９】
[0009]別の例では、ビデオデータを処理する装置は、マルチレイヤビデオデータを記憶するメモリと、マルチレイヤビデオデータのレイヤについてのタイル構成またはマルチレイヤビデオデータのレイヤについての並列処理構成のうちの少なくとも１つを示すデータを処理することであって、データが、マルチレイヤビデオデータを含むビットストリームのビデオパラメータセット（ＶＰＳ）に関連付けられる、処理することと、ＶＰＳのデータに従ってマルチレイヤビデオデータを処理することとを行うように構成されたビデオコーダとを含む。
【００１０】
[0010]別の例では、ビデオデータを実行する装置は、マルチレイヤビットストリームのレイヤについてのタイル構成またはマルチレイヤビットストリームのレイヤについての並列処理構成のうちの少なくとも１つを示すデータを処理するための手段であって、データが、マルチレイヤビットストリームのビデオパラメータセット（ＶＰＳ）に関連付けられる、処理するための手段と、ＶＰＳのデータに従ってマルチレイヤビットストリームを処理するための手段とを含む。
【００１１】
[0011]別の例では、非一時的コンピュータ可読記憶媒体は、実行されたとき、１つまたは複数のプロセッサに、マルチレイヤビットストリームのレイヤについてのタイル構成またはマルチレイヤビットストリームのレイヤについての並列処理構成のうちの少なくとも１つを示すデータを処理することであって、データが、マルチレイヤビットストリームのビデオパラメータセット（ＶＰＳ）に関連付けられる、処理することと、ＶＰＳのデータに従ってマルチレイヤビットストリームを処理することとを行わせる命令を記憶している。
【００１２】
[0012]本開示の１つまたは複数の例の詳細は、添付図面および下記の説明に記載される。本開示の他の特徴、目的、および利点は、説明および図面、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１３】
【図１】[0013]本開示で説明する技法を利用し得る例示的なビデオ符号化および復号システムを示すブロック図。
【図２】[0014]本開示で説明する技法を実施し得る例示的なビデオエンコーダを示すブロック図。
【図３】[0015]本開示で説明する技法を実施し得る例示的なビデオデコーダを示すブロック図。
【図４Ａ】[0016]波面並列処理のための同期ポイントの一例を示す概念図。
【図４Ｂ】[0017]波面並列処理のための同期ポイントの別の例を示す概念図。
【図５】[0018]ビデオブロック行の並列処理のための例示的な同期ポイントを示す概念図。
【図６】[0019]ＨＥＶＣ規格による例示的なタイルを示す概念図。
【図７】[0020]例示的なマルチビュービデオコーディング（ＭＶＣ：Multi-view Video Coding）予測パターンを示す概念図。
【図８】[0021]スケーラブルビデオコーディング（ＳＶＣ）のための様々なスケーラブルな次元を示す概念図。
【図９】[0022]ＳＶＣコーディング構造の一例を示す概念図。
【図１０】[0023]マルチレイヤビットストリーム中の例示的なアクセスユニット（ＡＵ）を示す概念図。
【図１１】[0024]本開示に一致する、マルチレイヤビデオデータを処理するための技法を示す図。
【図１２】[0025]本開示に一致する、マルチレイヤビデオデータを処理するための別の技法を示す図。
【発明を実施するための形態】
【００１４】
[0026]本開示の態様は、以下でより詳細に説明するように、ビデオコーディングにおける並列処理ツールの早期指示のための様々な技法に関し得る。いくつかの事例では、技法は、以下に述べるように、ＨＥＶＣに対するマルチビュービデオコーディング拡張（ＭＶ−ＨＥＶＣ：Multi-view Video Coding extension to HEVC）、ＨＥＶＣに対するマルチビュープラス深度ビデオコーディング拡張（３Ｄ−ＨＥＶＣ：Multi-view plus depth Video Coding extension to HEVC）、またはＨＥＶＣに対するスケーラブルビデオコーディング（ＳＶＣ）拡張（ＳＨＶＣ：SVC extension to HEVC）などの、高効率ビデオコーディング（ＨＥＶＣ）規格に対するマルチレイヤ拡張とともに実行され得る。ただし、本開示の技法は、いかなる特定のビデオコーディング規格にも限定されず、同じくまたは代替的に、ＨＥＶＣに対する他の拡張、（深度成分を用いるまたは用いない）他のマルチビューコーディング規格および／または他のマルチレイヤビデオ規格とともに使用され得る。さらに、本開示の技法は、以下で説明するように、単独でまたは組み合わせて適用され得る。
【００１５】
[0027]並列処理ツールは、ビデオデータを並列に符号化または復号するために使用され得る。たとえば、いくつかの並列処理ツールにより、単一のビデオピクチャの異なる空間部分を並列に符号化または復号することが可能になり得る。説明のための一例では、上述のＨＥＶＣ規格に関して、並列処理は、波面並列処理（ＷＰＰ：wavefront parallel processing）を使用して達成され得る。ＷＰＰは、それによってビデオブロックの２つ以上の行（たとえば、以下で説明するように、コード化ツリーブロック（ＣＴＢ：coded tree block）行）がほぼ同時に（すなわち、並列に）符号化および／または復号されるビデオコーディング技法である。
【００１６】
[0028]ＷＰＰを使用した、イントラ予測と、インター予測と、いくつかのシンタックス要素パースとにおける相互依存性により、ブロックの行の並列復号が同期され得る。すなわち、ブロックの現在の行中のビデオブロックは、ブロックの現在の行の上のブロックの行中のビデオブロックからのコード化情報を使用し得る。ブロックの２つの行を並列に処理するときに、ビデオデコーダは、ブロックの下の行によって必要とされるデータがブロックの上の行中ですでにコーディングされていることを保証するために、２つの行中のブロック間の処理を同期させ得る。この点について、ＷＰＰプロセスは、ビットストリームパースプロセスと再構成プロセスとを含む２つの主要なプロセスに分割されると見なされ得る。再構成プロセスは、ブロックの行間の同期を含み得る。
【００１７】
[0029]別の並列処理技術は、ビデオをコーディングするためにいわゆるタイルを使用することを含む。たとえば、ＨＥＶＣは、タイルのラスタ走査において連続的に順序付けられた、１つの列および１つの行内で同時に発生する整数個のブロックとしてタイルを定義する。各ピクチャをタイルに分割することは、パーティショニングと呼ばれることがある。ピクチャ中のタイルは、ピクチャのタイルラスタ走査において連続的に順序付けられる。タイルの数およびそれらの境界のロケーションは、全体のシーケンスに対して定義されるか、またはピクチャごとに変更され得る。タイル境界は、スライス境界と同様に、パースおよび予測依存を中断し、したがって、タイルは、別のタイルとは無関係に処理され得る。ただし、いくつかの事例では、ループ内フィルタ（たとえば、デブロッキングまたはサンプルアダプティブオフセット（ＳＡＯ）フィルタ）は、依然としてタイル境界を横切り得る。
【００１８】
[0030]エントロピー復号および動き補償再構成のためにプロセッサまたはプロセッサコアの間で通信が必要とされない（または、比較的少量ですむ）ので、タイルの使用は並列性を向上させ得る。したがって、ピクチャの異なるタイルは、異なるプロセッサまたはプロセッサコアによって処理され得る。加えて、タイルがスライスよりも潜在的に高い相関を有するサンプルを含むピクチャパーティション形状を可能にするので、タイルは、スライスと比較したときに比較的良好なコーディング効率を示し得る。タイルはまた、スライスヘッダのオーバーヘッドを低減し得る。
【００１９】
[0031]上記で説明したＷＰＰおよびタイル技法は、特定のレイヤ内で並列処理を提供し得るが、いくつかの事例では、ビデオデータの複数のレイヤも並列に符号化または復号され得る。ビデオデータの「レイヤ」は、概して、ビュー、フレームレート、解像度などの少なくとも１つの共通の特性を有するピクチャのシーケンスを指すことがある。たとえば、レイヤは、（たとえば、以下の図７に関して説明するように）マルチビュービデオデータの特定のビュー（たとえば、パースペクティブ）に関連するビデオデータを含み得る。別の例として、レイヤは、（たとえば、以下の図８〜図１０に関して説明するように）スケーラブルビデオデータの特定のレイヤに関連するビデオデータを含み得る。したがって、本開示は、ビデオデータのレイヤとビューを交換可能に指すことがある。すなわち、ビデオデータのビューはビデオデータのレイヤと呼ばれることがあり、ビデオデータのレイヤはビデオデータのビューと呼ばれることがある。さらに、ビュー間予測およびレイヤ間予測という用語は、ビデオデータの複数のレイヤおよび／またはビューの間の予測を交換可能に指すことがある。さらに、（マルチレイヤビデオコーダまたはマルチレイヤエンコーダ−デコーダとも呼ばれる）マルチレイヤコーデックは、マルチビューコーデックまたはスケーラブルコーデック（たとえば、ＭＶ−ＨＥＶＣ、３Ｄ−ＨＥＶＣ、ＳＨＶＣ、または別のマルチレイヤコーディング技法を使用してビデオデータを符号化および／または復号するように構成されたコーデック）を共同で指すことがある。
【００２０】
[0032]いくつかの事例では、ビデオデータの複数のレイヤは、オフセット遅延を使用して並列にコーディングされ得る。オフセット遅延は、概して、複数のレイヤを並列に処理（たとえば、符号化または復号）することと関連する遅延を指すことがある。たとえば、ビデオデコーダは、マルチレイヤビットストリームの２つ以上のレイヤを並列に復号し得る。しかしながら、現在のレイヤを復号するためにレイヤ間予測技法を使用するとき、ビデオデコーダは、現在のレイヤとは異なる参照レイヤの参照データにアクセスし得る。現在のレイヤを復号するためのレイヤ間の参照として使用されるために、参照データが利用可能で（たとえば、復号され）なければならない。したがって、一般に、ビデオデコーダは、参照レイヤのうちの１つまたは複数を参照するレイヤを復号するより前に、マルチレイヤ復号方式におけるすべての参照レイヤの復号を確定する。
【００２１】
[0033]参照レイヤ全体が確定（たとえば、復号）されるのを待つのではなく、ビデオデコーダは、参照レイヤのうちの少なくともいくつかが復号されるまで、現在のレイヤの復号の開始を遅延し得る。オフセット遅延は、一般に、ビデオデコーダが現在のレイヤの復号を開始する前に復号されるべき参照レイヤの最低限の量を示し得る。オフセット遅延を実装することは、参照レイヤおよび現在のレイヤの少なくとも部分が並列に復号されることを依然として可能にしながら、レイヤ間参照データが参照として使用されるために、確実に利用可能にさせる助けとなり得る。たとえば、並列デコーダは、指定された参照レイヤのオフセット遅延が達成されるとすぐに、エンハンスメントレイヤの復号を開始し得る。上記の例はビデオ復号（並列デコーダによって実行されるような）に関して説明されるが、類似の技法が並列な符号化の間にビデオエンコーダによって適用され得ることを理解されたい。
【００２２】
[0034]（たとえば、ＭＶ−ＨＥＶＣ、３Ｄ−ＨＥＶＣ、またはＳＨＶＣなどの）ＨＥＶＣおよびＨＥＶＣ拡張の設計は、いくつかの欠点を示し得る。たとえば、レイヤを横切って使用されるとき、タイルおよびＷＰＰのいくつかの構成は、パイプライン化設計（たとえば、レイヤを横切ったリソースの割当て）およびコーデックの実装に影響を及ぼし得る。いくつかの事例では、パイプライン設計は、タイルおよびＷＰＰの異なる構成に対して変更する必要があり得る。たとえば、タイルを使用してレイヤ間予測を実行するとき、レイヤ間予測についてのデータに異なる処理コアがアクセスする必要がないように、レイヤ中で同じ相対的な空間的ロケーションを有するタイルが、同じ処理リソース（たとえば、同じ処理コア）によって処理されるべきである。さらに、いくつかの事例では、メモリ、サイクルおよび遅延要件が、レイヤごとに異なり得る。
【００２３】
[0035]レイヤを横切った上記で説明した並列コーディングツール（たとえば、タイルおよび／またはＷＰＰ）の利用は、一般に、各レイヤのアクティブなピクチャパラメータセット（ＰＰＳ）をパースすることによって導出され得る。しかしながら、ＰＰＳからそのような情報をパースすることは、簡単なプロセスではないことがあり、アクティブなＰＰＳのコンテンツは、アクティブ化プロセスが開始した後（たとえば、特定のレイヤ内のピクチャを復号する間）になって初めてわかるので、遅延をもたらし得る。さらに、コード化ビデオシーケンスのための関係するＰＰＳのすべてを発見し、ＰＰＳをパースすることでは、計算量的にわずらわしいパース作業が必要になり得る。
【００２４】
[0036]ＨＥＶＣ設計および（たとえば、ＭＶ−ＨＥＶＣ、３Ｄ−ＨＥＶＣ、および／またはＳＨＶＣなどの）関係する拡張に関する別の潜在的な問題は、並列性のためにレイヤにわたって（たとえば、マルチレイヤビデオデータの２つ以上のレイヤ中で）タイルが使用されるとき、タイル境界を横切ってループフィルタが適用され得るということである。ループフィルタは、デブロッキングフィルタまたはビデオ品質を改善するためにビデオコーディングプロセスにおいて使用される他のフィルタを含み得る。ビデオ品質を改善する可能性にもかかわらず、タイル境界を横切ってループフィルタを適用することを可能にすることは、並列性に影響を及ぼし、遅延をもたらし得る。たとえば、ループフィルタ処理がタイルを横切って適用される場合、特定のタイルのブロックは、ループフィルタ処理により変更され得、これは、そのタイルを使用してレイヤ間予測を実行することに関する問題を生じ得る。
【００２５】
[0037]本開示では、並列処理に関するシグナリング情報のための技法について説明する。本開示の技法により、ビデオデコーダは、コード化ビデオシーケンスの復号プロセスにおける比較的早期の時点においてコード化ビデオシーケンスのレイヤを横切ってタイルの構成および／またはＷＰＰ構成を決定することが可能になり得る。さらに、本開示の技法により、ビデオデコーダは、復号プロセスにおける比較的早期の時点においてタイル境界を横切ってループフィルタが適用され得るかどうかを決定することが可能になり得る。復号プロセスの比較的早期にそのような情報を決定することにより、いくつかの事例では、ビデオデコーダは、（たとえば、上記で説明したように、ＰＰＳなどの別のロケーションでそのような情報を与えることと比較して）より効率的にシステムリソースを割り当て、遅延を低減することが可能になり得る。すなわち、並列処理情報により、ビデオデコーダは、並列コーディングツールが使用されるかどうかを決定し、それが使用される場合、並列コーディングツールが実装される方法を決定することが可能になり得る。
【００２６】
[0038]いくつかの例では、並列処理情報は、以下でより詳細に説明するように、ビデオパラメータセット（ＶＰＳ）中に与えられ得る。他の例では、並列処理情報は、以下でより詳細に説明するように、ＶＰＳビデオユーザビリティ情報（ＶＵＩ：video usability information）中に与えられ得る。ＶＰＳは、（たとえば、ＰＰＳと比較して）復号プロセスの比較的早期に復号される。したがって、本開示の態様によれば、以下でより詳細に説明するように、ＶＰＳ（またはＶＰＳ  ＶＵＩ）の並列処理情報は、コーディング中に使用される並列処理情報の早期指示を与え得る。すなわち、ＶＰＳの並列処理情報は、ＰＰＳ中で与えられ、コーディング中に使用され得る他の並列処理情報を補い得る。たとえば、ＶＰＳ（またはＶＰＳ  ＶＵＩ）の並列処理情報は、ＰＰＳ中に含まれる並列処理情報の早期指示を与え得る。このようにして、以下でより詳細に説明するように、ビデオデコーダは、ＶＰＳ（またはＶＰＳ  ＶＵＩ）からの並列処理情報を復号し、並列処理コーディングツールがマルチレイヤビットストリームにおいて使用されるかどうか（および／またはどのように使用されるか）を決定し、ＶＰＳからの並列処理情報の情報に基づいて復号リソースを割り当て得る。ビデオデコーダは、次いで、ＶＰＳによって示されたＰＰＳの並列処理情報を使用して、マルチレイヤビットストリームを復号し始め得る。
【００２７】
[0039]本開示の態様によれば、ビデオデコーダは、ビデオデータに対応する１つまたは複数のシンタックス要素をパースするように構成され得、ここにおいて、１つまたは複数のシンタックス要素は、タイル構成、ループフィルタ構成、および並列処理構成のうちの１つまたは複数を示し、１つまたは複数のシンタックス要素に従ってビデオデータの並列復号を実行する。
【００２８】
[0040]図１は、本開示で説明する並列ビデオ処理のための技法を利用し得る例示的なビデオ符号化および復号システム１０を示すブロック図である。図１に示すように、システム１０は、宛先デバイス１４によって後で復号されるべき符号化されたビデオデータを生成するソースデバイス１２を含む。ソースデバイス１２および宛先デバイス１４は、デスクトップコンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスのいずれかを備え得る。場合によっては、ソースデバイス１２および宛先デバイス１４はワイヤレス通信のために装備され得る。
【００２９】
[0041]宛先デバイス１４は、リンク１６を介して、復号されるべき符号化ビデオデータを受信し得る。リンク１６は、ソースデバイス１２から宛先デバイス１４に符号化ビデオデータを移動することが可能な任意のタイプの媒体またはデバイスを備え得る。一例では、リンク１６は、ソースデバイス１２が、符号化ビデオデータをリアルタイムで宛先デバイス１４に直接送信することを可能にするための通信媒体を備え得る。符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先デバイス１４に送信され得る。通信媒体は、無線周波数（ＲＦ）スペクトルまたは１つもしくは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、ルータ、スイッチ、基地局、またはソースデバイス１２から宛先デバイス１４への通信を容易にするために有用であり得る任意の他の機器を含み得る。
【００３０】
[0042]代替的に、符号化データは出力インターフェース２２からストレージデバイス３２に出力され得る。同様に、符号化データは、入力インターフェースによってストレージデバイス３２からアクセスされ得る。ストレージデバイス３２は、ハードドライブ、Ｂｌｕ−ｒａｙ（登録商標）ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、揮発性または不揮発性メモリ、あるいは符号化ビデオデータを記憶するための任意の他の好適なデジタル記憶媒体など、様々な分散したまたはローカルでアクセスされるデータ記憶媒体のいずれかを含み得る。さらなる一例では、ストレージデバイス３２は、ソースデバイス１２によって生成された符号化ビデオを保持し得るファイルサーバまたは別の中間ストレージデバイスに対応し得る。宛先デバイス１４は、ストリーミングまたはダウンロードを介して、ストレージデバイス３２から、記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶し、その符号化ビデオデータを宛先デバイス１４に送信することが可能な任意のタイプのサーバであり得る。例示的なファイルサーバには、ウェブサーバ（たとえば、ウェブサイト用の）、ＦＴＰサーバ、ネットワークアタッチドストレージ（ＮＡＳ）デバイス、またはローカルディスクドライブがある。宛先デバイス１４は、インターネット接続を含む、任意の標準のデータ接続を通して符号化ビデオデータにアクセスし得る。これは、ワイヤレスチャネル（たとえば、Ｗｉ−Ｆｉ（登録商標）接続）、ワイヤード接続（たとえば、ＤＳＬ、ケーブルモデムなど）、または、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに適した、両方の組合せを含み得る。ストレージデバイス３２からの符号化されたビデオデータの送信は、ストリーミング送信、ダウンロード送信、または両方の組合せであり得る。
【００３１】
[0043]本開示の技法は、必ずしもワイヤレスアプリケーションまたは設定に限定されるとは限らない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、たとえばインターネットを介したストリーミングビデオ送信、データ記憶媒体に記憶するためのデジタルビデオの符号化、データ記憶媒体に記憶されたデジタルビデオの復号、または他のアプリケーションなどの、様々なマルチメディアアプリケーションのいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および／またはビデオテレフォニーなどのアプリケーションをサポートするために、単方向または双方向ビデオ送信をサポートするように構成され得る。
【００３２】
[0044]図１の例では、ソースデバイス１２は、ビデオソース１８と、ビデオエンコーダ２０と、出力インターフェース２２とを含む。場合によっては、出力インターフェース２２は、変調器／復調器（モデム）および／または送信機を含み得る。ソースデバイス１２において、ビデオソース１８は、たとえばビデオカメラなどのビデオキャプチャデバイス、以前にキャプチャされたビデオを含んでいるビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェース、および／もしくはソースビデオとしてコンピュータグラフィックスデータを生成するためのコンピュータグラフィックスシステムなどのソース、またはそのようなソースの組合せを含み得る。一例として、ビデオソース１８がビデオカメラである場合、ソースデバイス１２および宛先デバイス１４は、いわゆるカメラ付き携帯電話またはビデオ電話を形成し得る。しかしながら、本開示で説明する技法は、ビデオコーディング全般に適用可能であり得、ワイヤレスおよび／またはワイヤードアプリケーションに適用され得る。
【００３３】
[0045]キャプチャされたビデオ、以前にキャプチャされたビデオ、またはコンピュータにより生成されたビデオは、ビデオエンコーダ２０によって符号化され得る。符号化ビデオデータは、ソースデバイス１２の出力インターフェース２２を介して宛先デバイス１４に直接送信され得る。符号化されたビデオデータは、さらに（または代替的に）、復号および／または再生のための宛先デバイス１４または他のデバイスによる後のアクセスのためにストレージデバイス３２上に記憶され得る。
【００３４】
[0046]宛先デバイス１４は、入力インターフェース２８と、ビデオデコーダ３０と、ディスプレイデバイス３３とを含む。場合によっては、入力インターフェース２８は、受信機および／またはモデムを含み得る。宛先デバイス１４の入力インターフェース２８は、リンク１６を介して符号化ビデオデータを受信する。リンク１６を介して通信され、またはストレージデバイス３２上に与えられた符号化ビデオデータは、ビデオデータを復号する際に、ビデオデコーダ３０などのビデオデコーダによる使用のためにビデオエンコーダ２０によって生成される様々なシンタックス要素を含み得る。そのようなシンタックス要素は、通信媒体上で送信され、記憶媒体上に記憶され、またはファイルサーバに記憶される、符号化されたビデオデータとともに含まれ得る。
【００３５】
[0047]ディスプレイデバイス３３は、宛先デバイス１４と一体化されるかまたはその外部にあり得る。いくつかの例では、宛先デバイス１４は、一体型ディスプレイデバイスを含み、また、外部ディスプレイデバイスとインターフェースするように構成され得る。他の例では、宛先デバイス１４はディスプレイデバイスであり得る。概して、ディスプレイデバイス３３は、復号ビデオデータをユーザに表示し、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなどの様々なディスプレイデバイスのいずれかを備え得る。
【００３６】
[0048]図１には示されていないが、いくつかの態様では、ビデオエンコーダ２０およびビデオデコーダ３０はそれぞれ、オーディオエンコーダおよびデコーダと統合され得、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理するために、適切なＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアおよびソフトウェアを含み得る。適用可能な場合、いくつかの例では、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠し得る。
【００３７】
[0049]ビデオエンコーダ２０およびビデオデコーダ３０はそれぞれ、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアまたはそれらの任意の組合せなど、様々な好適なエンコーダ回路のいずれかとして実装され得る。本開示の技法がソフトウェアに部分的に実装されるとき、デバイスは、ソフトウェアに対する命令を好適な非一時的コンピュータ可読媒体に記憶し、１つまたは複数のプロセッサを使用して命令をハードウェアで実行して、本開示の技法を実行し得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は、１つまたは複数のエンコーダまたはデコーダに含まれ得、そのいずれも、それぞれのデバイスにおいて、複合ビデオエンコーダ／デコーダ（コーデック）の一部として統合され得る。
【００３８】
[0050]本開示では、概して、ビデオエンコーダ２０が、ある種の情報をビデオデコーダ３０などの別のデバイスに「シグナリング」することに言及することがある。ただし、ビデオエンコーダ２０は、いくつかのシンタックス要素をビデオデータの様々な符号化部分に関連付けることによって情報をシグナリングし得ることを理解されたい。すなわち、ビデオエンコーダ２０は、ビデオデータの様々な符号化された部分のヘッダに、あるシンタックス要素を格納することによって、データを「シグナリング」し得る。場合によっては、そのようなシンタックス要素は、ビデオデコーダ３０によって受信され復号されるより前に、符号化および格納され得る。したがって、「シグナリング」という用語は、通信がリアルタイムまたはほぼリアルタイムで行われるか、あるいは、符号化時にシンタックス要素を媒体に記憶し、次いで、この媒体に記憶された後の任意の時間にそのシンタックス要素が復号デバイスによって取り出され得るときなどに行われ得る、ある時間期間にわたって行われるかどうかにかかわらず、概して、圧縮ビデオデータを復号するためのシンタックスまたは他のデータの通信を指し得る。
【００３９】
[0051]ビデオエンコーダ２０およびビデオデコーダ３０は、ITU-T Video Coding Experts Group（ＶＣＥＧ）のJoint Collaboration Team on Video Coding（ＪＣＴ−ＶＣ）によって開発されたＨＥＶＣ規格およびＩＳＯ／ＩＥＣ  Motion Picture Experts Group（ＭＰＥＧ）などのビデオ圧縮規格に従って動作し得る。ＨＥＶＣは、ＩＴＵ−Ｔ  Ｈ．２６５、ＳＥＲＩＥＳ  Ｈ：AUDIOVISUAL AND MULTIMEDIA SYSTEMS、オーディオビジュアルサービスのインフラストラクチャ−動画像（Moving Video）のコーディング、「高効率ビデオコーディング（High Efficiency Video Coding）」（２０１３年４月）に記載されている。以下でＨＥＶＣ  ＷＤと呼ぶ、１つのＨＥＶＣドラフト仕様が、
http://phenix.int-evry.fr/jct/doc_end_user/documents/14_Vienna/wg11/JCTVC-N1003-v1.zip
から入手可能である。
【００４０】
[0052]ＨＥＶＣの様々な拡張が提案されている。たとえば、ＨＥＶＣのマルチビュー拡張、すなわち、ＭＶ−ＨＥＶＣおよびより高度の３Ｄビデオコーディングのための別のＨＥＶＣ拡張（３Ｄ−ＨＥＶＣ）がＪＣＴ−３Ｖによって開発されている。一方、ＨＥＶＣのスケーラブルビデオコーディング拡張、すなわち、ＳＨＶＣが、ＪＣＴ−ＶＣによって開発されている。
【００４１】
[0053]以下でＭＶ−ＨＥＶＣ  ＷＤ５と呼ぶ、ＭＶ−ＨＥＶＣの最近のワーキングドラフト（ＷＤ）が、
http://phenix.it-sudparis.eu/jct2/doc_end_user/documents/5_Vienna/wg11/JCT3V-E1004-v6.zip
から入手可能である。
以下で３Ｄ−ＨＥＶＣ  ＷＤ１と呼ぶ、３Ｄ−ＨＥＶＣの最近のＷＤが、
http://phenix.it-sudparis.eu/jct2/doc_end_user/documents/5_Vienna/wg11/JCT3V-E1001-v3.zip
から入手可能である。
以下でＳＨＶＣ  ＷＤ３と呼ばれる、ＳＨＶＣの最近のＷＤが、
http://phenix.it-sudparis.eu/jct/doc_end_user/documents/14_Vienna/wg11/JCTVC-N1008-v3.zip
から入手可能である。ＨＥＶＣの別の拡張は、「高効率ビデオコーディング（ＨＥＶＣ）範囲拡張テキスト仕様：ドラフト４」、ＪＣＴＶＣ−Ｎ１００５＿ｖ１、２０１３年４月（以下「ＪＣＴＶＣ−Ｎ１００５」）に記載されているＨＥＶＣ範囲拡張である。
【００４２】
[0054]ただし、本開示の技法は、いかなる特定のコーディング規格にも限定されない。したがって、本開示の技法は、並列処理の指示が望ましい様々なコーディング規格のいずれかに適用され得る。
【００４３】
[0055]ＨＥＶＣに関して、一例として、規格化の取り組みは、ＨＥＶＣテストモデル（ＨＭ）と呼ばれるビデオコーディングデバイスの発展的モデルに基づいていた。ＨＭは、たとえば、ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣに従う既存のデバイスに対して、ビデオコーディングデバイスのいくつかの追加の機能を仮定する。たとえば、Ｈ．２６４は９つのイントラ予測符号化モードを与えるが、ＨＭは３３個ものイントラ予測符号化モードを与え得る。
【００４４】
[0056]概して、ＨＥＶＣ  ＨＭの作業モデルは、ビデオフレームまたはピクチャが、ルーマサンプルとクロマサンプルの両方を含むコーディングツリーブロック（ＣＴＢ：coding tree block）または最大コーディングユニット（ＬＣＵ：largest coding unit）のシーケンスに分割され得ることを記載している。多くの例では、ＣＴＢは、サンプル（たとえば、ルーマまたはクロマサンプル）のＮ×Ｎブロックである。ＣＴＢは、Ｈ．２６４規格のマクロブロックと同様の目的を有する。スライスは、コーディング順にいくつかの連続するＣＴＢを含む。ビデオフレームまたはピクチャは、１つまたは複数のスライスにパーティショニングされ得る。各ＣＴＢは、４分木に従って、コーディングユニット（ＣＵ）に分割され得る。たとえば、クワッドツリーのルートノードとしてのＣＴＢは、４つの子ノードに分割され得、各子ノードは、次に親ノードとなる場合があり、別の４つの子ノードに分割され得る。４分木のリーフノードとしての、最終的な、分割されていない子ノードは、コーディングノード、すなわち、コード化ビデオブロックを備える。コード化ビットストリームに関連付けられるシンタックスデータは、ＣＴＢが分割され得る最大回数を定義し得、コーディングノードの最小サイズをも定義し得る。
【００４５】
[0057]ＣＵは、コーディングノードと、コーディングノードに関連付けられた予測ユニット（ＰＵ）および変換ユニット（ＴＵ）とを含む。ＣＵのサイズは、概して、コーディングノードのサイズに対応し、一般に、形状が正方形でなければならない。ＣＵのサイズは、８×８ピクセルから最大６４×６４ピクセル以上のＣＴＢのサイズまでに及び得る。各ＣＵは、１つまたは複数のＰＵと、１つまたは複数のＴＵとを含み得る。ＣＵに関連するシンタックスデータは、たとえば、ＣＵの１つまたは複数のＰＵへのパーティショニングを記述し得る。パーティショニングモードは、ＣＵがスキップモード符号化もしくは直接モード符号化されるのか、イントラ予測モード符号化されるのか、またはインター予測モード符号化されるのかの間で異なり得る。ＰＵは、形状が非正方形になるようにパーティショニングされ得る。ＣＵに関連するシンタックスデータはまた、たとえば、４分木に従うＣＵの１つまたは複数のＴＵへのパーティショニングを記述し得る。ＴＵは、形状が正方形または非正方形であり得る。
【００４６】
[0058]ＨＥＶＣ規格は、異なるＣＵに対して異なり得る、ＴＵに従う変換を可能にする。ＴＵは、一般に、パーティショニングされたＬＣＵについて定義された所与のＣＵ内のＰＵのサイズに基づいてサイズ決定されるが、常にそうであるとは限らない。ＴＵは、一般に、ＰＵと同じサイズであるか、またはＰＵよりも小さい。いくつかの例では、ＣＵに対応する残差サンプルは、「残差４分木」（ＲＱＴ：residual quad tree）と呼ばれる４分木構造を使用して、より小さいユニットに再分割され得る。ＲＱＴのリーフノードは変換ユニット（ＴＵ）と呼ばれることがある。ＴＵに関連するピクセル差分値は、変換係数を生成するために変換され、その変換係数は量子化され得る。
【００４７】
[0059]概して、ＰＵは、予測プロセスに関係するデータを含む。たとえば、ＰＵがイントラモード符号化されるとき、ＰＵは、ＰＵについてのイントラ予測モードを記述するデータを含み得る。別の例として、ＰＵがインターモード符号化されるとき、ＰＵは、ＰＵのための動きベクトルを定義するデータを含み得る。ＰＵのための動きベクトルを定義するデータは、たとえば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの解像度（たとえば、１／４ピクセル精度または１／８ピクセル精度）、動きベクトルが指す参照ピクチャ、および／または動きベクトルのための参照ピクチャリスト（たとえば、リスト０、リスト１、またはリストＣ）を記述し得る。
【００４８】
[0060]概して、ＴＵは、変換プロセスと量子化プロセスとのために使用される。１つまたは複数のＰＵを有する所与のＣＵは、１つまたは複数の変換ユニット（ＴＵ）をも含み得る。予測に続いて、ビデオエンコーダ２０は、ＰＵに従ってコーディングノードによって識別されたビデオブロックから残差値を計算し得る。コーディングノードは、次いで、元のビデオブロックではなく、残差値を参照するように更新される。残差値はピクセル差分値を備え、ピクセル差分値は、エントロピーコーディングのためのシリアル化変換係数（serialized transform coefficient）を生成するためにＴＵ中で指定された変換と他の変換情報とを使用して変換係数に変換され、量子化され、走査され得る。コーディングノードはこれらのシリアル化変換係数を指すようにもう一度更新され得る。本開示では、一般に、コーディングノードならびにＰＵおよびＴＵを含む、ＣＴＢ、ＬＣＵ、またはＣＵのうちの１つまたは複数を指すためも「ビデオブロック」という用語を使用する。
【００４９】
[0061]ビデオシーケンスは、一般に、一連のビデオフレームまたはピクチャを含む。ピクチャグループ（ＧＯＰ）は、概して、ビデオピクチャのうちの一連の１つまたは複数を備える。ＧＯＰは、ＧＯＰに含まれるいくつかのピクチャを記述するシンタックスデータを、ＧＯＰのヘッダ中、ピクチャの１つもしくは複数のヘッダ中、または他の場所に含み得る。ピクチャの各スライスは、それぞれのスライスのための符号化モードを記述するスライスシンタックスデータを含み得る。ビデオエンコーダ２０は、一般に、ビデオデータを符号化するために、個々のビデオスライス内のビデオブロックに作用する。ビデオブロックは、ＣＵ内のコーディングノードに対応し得る。ビデオブロックは、固定サイズまたは変動サイズを有し得、指定されたコーディング規格に応じてサイズが異なり得る。
【００５０】
[0062]一例として、ＨＭは、様々なＰＵサイズでの予測をサポートする。特定のＣＵのサイズが２Ｎ×２Ｎであると仮定すると、ＨＭは、２Ｎ×２ＮまたはＮ×ＮのＰＵサイズでのイントラ予測と、２Ｎ×２Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、またはＮ×Ｎの対称ＰＵサイズでのインター予測とをサポートする。ＨＭは、また、２Ｎ×ｎＵ、２Ｎ×ｎＤ、ｎＬ×２Ｎ、およびｎＲ×２ＮのＰＵサイズでのインター予測のための、非対称なパーティショニングをサポートする。非対称のパーティショニングでは、ＣＵの一方向はパーティショニングされないが、他の方向は２５％および７５％にパーティショニングされる。２５％のパーティショニングに対応するＣＵの部分は、「ｎ」とその後ろに付く「Ｕｐ」、「Ｄｏｗｎ」、「Ｌｅｆｔ」、または「Ｒｉｇｈｔ」という表示によって示される。したがって、たとえば、「２Ｎ×ｎＵ」は、上部で２Ｎ×０．５Ｎ  ＰＵ、および下部で２Ｎ×１．５Ｎ  ＰＵに水平にパーティショニングされる２Ｎ×２Ｎ  ＣＵを指す。
【００５１】
[0063]本開示では、「Ｎ×Ｎ（NxN）」および「Ｎ×Ｎ（N by N）」は、垂直寸法および水平寸法の観点からビデオブロックのピクセル寸法、たとえば、１６×１６（16x16）ピクセルまたは１６×１６（16 by 16）ピクセルを指すために互換的に使用され得る。概して、１６×１６ブロックは、垂直方向に１６ピクセル（ｙ＝１６）、および水平方向に１６ピクセル（ｘ＝１６）を有する。同様に、Ｎ×Ｎブロックは、概して、垂直方向にＮ個のピクセル、および水平方向にＮ個のピクセルを有し、ここで、Ｎは非負整数値を表す。ブロック中のピクセルは、行および列に配列され得る。その上、ブロックは、必ずしも、水平方向において垂直方向と同じ数のピクセルを有する必要があるとは限らない。たとえば、ブロックはＮ×Ｍピクセルを備え得、ここで、Ｍは必ずしもＮに等しいとは限らない。
【００５２】
[0064]ＣＵのＰＵを使用したイントラ予測コーディングまたはインター予測コーディングの後、ビデオエンコーダ２０は、ＣＵのＴＵによって指定された変換が適用される残差データを計算し得る。残差データは、符号化されていないピクチャのピクセルと、ＣＵに対応する予測値との間のピクセル差分に対応し得る。ビデオエンコーダ２０は、ＣＵについての残差データを形成し、次いで、残差データを変換して、変換係数を生成し得る。
【００５３】
[0065]変換係数を生成するための任意の変換に続いて、ビデオエンコーダ２０は、変換係数の量子化を実行し得る。量子化は、概して、係数を表すために使用されるデータの量をできるだけ低減するために変換係数が量子化され、さらなる圧縮を行うプロセスを指す。量子化プロセスは、係数の一部または全部に関連するビット深度を低減し得る。たとえば、量子化中にｎビット値がｍビット値に切り捨てられ得、ここで、ｎはｍよりも大きい。
【００５４】
[0066]いくつかの例では、ビデオエンコーダ２０は、量子化変換係数を走査して、エントロピー符号化され得るシリアル化ベクトルを生成するために、あらかじめ定義された走査順序を利用し得る。他の例では、ビデオエンコーダ２０は適応型走査を実施し得る。量子化変換係数を走査して１次元ベクトルを形成した後に、ビデオエンコーダ２０は、たとえば、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ：context adaptive variable length coding）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ：context adaptive binary arithmetic coding）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ：syntax-based context-adaptive binary arithmetic coding）、確率間隔パーティショニングエントロピー（ＰＩＰＥ：Probability Interval Partitioning Entropy）コーディング、または別のエントロピー符号化方法に従って、１次元ベクトルをエントロピー符号化し得る。ビデオエンコーダ２０はまた、ビデオデータを復号する際にビデオデコーダ３０が使用するための、符号化されたビデオデータに関連するシンタックス要素をエントロピー符号化し得る。
【００５５】
[0067]上記のように、本開示の技法は、タイルおよび／またはＷＰＰを使用してビデオデータをコーディングすることなど、並列コーディングツールの早期指示を与えるために使用され得る。たとえば、典型的なビットストリーム構成は、ビデオパラメータセット（ＶＰＳ）、ＶＰＳ拡張、シーケンスパラメータセット（ＳＰＳ）、ＳＰＳ拡張、ピクチャパラメータセット（ＰＰＳ）、ＰＰＳ拡張、スライスヘッダ、ビデオペイロードであり得る。いくつかの事例では、並列コーディングツールは、ＰＰＳおよび／またはＰＰＳ拡張において示され得る。
【００５６】
[0068]本開示の技法は、いくつかの事例では、並列コーディングツールがビデオデコーダによって受信されたマルチレイヤビットストリームのレイヤ内、たとえば、ＶＰＳ中で使用されるかどうかの早期指示をビデオデコーダに与えるために使用され得る。たとえば、ＶＰＳの並列処理情報は、ＰＰＳ中に与えられ、コーディング中に使用され得る他の並列処理情報を補い得、それによって、（たとえば、ＶＰＳの情報がＰＰＳより前に復号されるので）ＰＰＳ中に含まれる並列処理情報の早期指示を与え得る。
【００５７】
[0069]本開示の態様によれば、本技法により、ビデオデコーダ３０などのビデオデコーダは、マルチレイヤビデオデータを復号するための復号リソースを効率的に割り当て、全体的な復号遅延を低減することが可能になり得る。たとえば、ビデオエンコーダ２０は、マルチレイヤビットストリームのレイヤについてのタイル構成および／またはマルチレイヤビットストリームのレイヤについての並列処理構成を示すＶＰＳおよび／またはＶＰＳ  ＶＵＩのデータを符号化し得る（およびビデオデコーダ３０は、それを復号し得る）。特に、並列処理構成に関して、データは、並列処理同期（たとえば、ＷＰＰにおいて実行されるエントロピーコーディング同期）が実行されるかどうかを示し得る。
【００５８】
[0070]概して、ＶＰＳは、サブレイヤ間の依存性を含む、コード化ビデオシーケンスの全特性を記述するデータを含み得る。ＶＰＳの１つの目的は、システムレイヤにおけるシグナリングに関して、特定の規格の互換性のある拡張性を可能にすることであり得る。ＶＰＳは、通常、復号されるべきビットストリームのためのマルチレイヤビットストリームの中に含まれなければならない。ＶＰＳは、追加または代替として、ビデオ表現情報、仮想参照デコーダ（ＨＲＤ）パラメータ、および／またはビットストリーム制限情報などのビデオユーザビリティ情報（ＶＵＩ）を定義するデータを含み得る。ビットストリーム制限情報は、動きベクトルレンジと、復号ピクチャバッファ（ＤＰＢ）サイズ（たとえば、ＤＰＢによって保持されるピクチャの数に関する）と、並べ替えフレームの数（すなわち、順序を表示するための、復号順序から並べ替えられるフレームの数の表示）と、コーディングされたブロック（たとえば、マクロブロック（ＭＢ）またはコーディングツリーユニット）のサイズと、コーディングされたピクチャのサイズとに関する制限を含み得る。ＶＰＳは、未来の規格または次回のＨＥＶＣ規格の拡張によって拡張され得るように、１つまたは複数のＶＰＳ拡張についてのデータをさらに与え得る。本開示では、頭字語ＶＰＳは、適用可能なとき、ＶＰＳとＶＰＳ  ＶＵＩとの両方を一緒に指し得る。
【００５９】
[0071]レイヤごとにタイルとＷＰＰとの構成を示すための例示的なＶＰＳ  ＶＵＩが、以下の表１に示されている。ＷＰＰについて、たとえば、以下の図４Ａ〜図５に関してより詳細に説明する。タイルについて、たとえば、以下の図６に関してより詳細に説明する。本開示の態様によれば、ビデオエンコーダ２０は、表１に示すシンタックス要素を符号化し、符号化されたビットストリーム中に符号化されたシンタックス要素を含め得る。同様に、ビデオデコーダ３０は、符号化されたビットストリームからシンタックス要素をパースし、復号し得る。  
【表１】
0006461982.tif 000002
【００６０】
[0072]１の値に等しいシンタックス要素tiles_enabled_vps_flag[i]は、ＶＰＳによって指定されたｉ番目のレイヤの少なくとも１つのピクチャによって参照される（たとえば、それに関連付けられる）各ＰＰＳについてtiles_enabled_flagの値が１に等しくなることを示す。値０に等しいシンタックス要素tiles_enabled_vps_flag[i]は、ＶＰＳによって指定されたｉ番目のレイヤの少なくとも１つのピクチャによって参照される（たとえば、それに関連付けられる）各ＰＰＳについてtiles_enabled_flagの値が０に等しくなることを示す。
【００６１】
[0073]１に等しいシンタックス要素tiles_enabled_flagは、ＰＰＳを参照する各ピクチャ中に２つ以上のタイルがあることを指定する。０の値に等しいシンタックス要素tiles_enabled_flagは、ＰＰＳを参照する各ピクチャ中に１つだけタイルがあることを指定する。
【００６２】
[0074]値１に等しいシンタックス要素loop_filter_across_tiles_disabled_vps_flag[i]は、ＶＰＳによって指定されたｉ番目のレイヤの少なくとも１つのピクチャによって参照される（たとえば、それに関連付けられる）各ＰＰＳについてloop_filter_across_tiles_enabled_flagの値が０に等しくなることを示す。０の値に等しいシンタックス要素loop_filter_across_tiles_enabled_vps_flag[i]は、上記の制約が適用され得るか、または適用され得ないことを示す。
【００６３】
[0075]１に等しいシンタックス要素loop_filter_across_tiles_enabled_flagは、ループ内フィルタ処理動作がタイル境界を横切って実行されることを指定する。０の値に等しいシンタックス要素loop_filter_across_tiles_enabled_flagは、ループ内フィルタ処理動作がタイル境界を横切って実行されないことを指定する。ループ内フィルタリング動作は、デブロッキングフィルタおよびサンプルアダプティブオフセットフィルタ動作を含み得る。存在しない（たとえば、シンタックス要素loop_filter_across_tiles_enabled_flagがビットストリーム中に含まれない）とき、シンタックス要素loop_filter_across_tiles_enabled_flagの値が１に等しくなると推論される。
【００６４】
[0076]値１に等しいシンタックス要素entropy_coding_sync_enabled_vps_flag[i]は、ＶＰＳによって指定されたｉ番目のレイヤの少なくとも１つのピクチャによって参照される（たとえば、それに関連付けられる）各ＰＰＳについてentropy_coding_sync_enabled_flagの値が１に等しくなることを示す。０の値に等しいシンタックス要素entropy_coding_sync_enabled_vps_flag[i]は、ＶＰＳによって指定されたｉ番目のレイヤの少なくとも１つのピクチャによって参照される（たとえば、それに関連付けられる）各ＰＰＳについてentropy_coding_sync_enabled_flagの値が０に等しくなることを示す。
【００６５】
[0077]１に等しいシンタックス要素entropy_coding_sync_enabled_flagは、コンテキスト変数のための特定の同期プロセスが、ＰＰＳを参照する各ピクチャ中の各タイル中のコーディングツリーブロックの行の第１のコーディングツリーブロックを復号する前に呼び出されることと、コンテキスト変数のための特定の記憶プロセスが、ＰＰＳを参照する各ピクチャ中の各タイル中のコーディングツリーブロックの行の２つのコーディングツリーブロックを復号した後に呼び出されることとを指定する。０の値に等しいシンタックス要素entropy_coding_sync_enabled_flagは、コンテキスト変数のための特定の同期プロセスが、ＰＰＳを参照する各ピクチャ中の各タイル中のコーディングツリーブロックの行の第１のコーディングツリーブロックを復号する前に呼び出される必要がないことと、コンテキスト変数のための特定の記憶プロセスが、ＰＰＳを参照する各ピクチャ中の各タイル中のコーディングツリーブロックの行の２つのコーディングツリーブロックを復号した後に呼び出される必要がないこととを指定する。
【００６６】
[0078]したがって、上記で表１の例中に含まれるシンタックス要素を受信すると、ビデオデコーダ３０は、マルチレイヤビットストリームのレイヤについてのタイル構成および／または並列処理構成を決定し得る。たとえば、０からレイヤの最大数までの各レイヤについて（たとえば、for(i=0; i≦vps_max_layers_minus1; i++)、ビデオデコーダ３０は、符号化ビットストリームのＶＰＳから、レイヤ中の少なくとも１つのピクチャ中でタイルが使用可能（enabled）であるかどうかを示すデータ（たとえば、tiles_enabled_vps_flag[i]シンタックス要素）を取得し得る。さらに、タイルが使用可能である各レイヤについて（たとえば、if(tiles_enabled_vps_flag[i])）、ビデオデコーダ３０はまた、ループフィルタ処理がタイル境界を横切って適用されるかどうか、またはタイル境界を横切ったループフィルタ処理が使用不可（disabled）であるかどうかを示すデータ（たとえば、loop_filter_across_tiles_disabled_vps_flag[i]シンタックス要素）を取得し得る。
【００６７】
[0079]さらに、ビデオデコーダ３０はまた、並列処理構成を示すデータを取得し得る。たとえば、ビデオデコーダ３０は、たとえば、ＷＰＰを介してエントロピーコーディング同期が実行されるかどうかを示すデータ（たとえば、entropy_coding_sync_enabled_vps_flag[i]）を取得し得る。他の例では、タイル構成および／または並列処理構成を搬送するために、異なる命名規則を有するシンタックス要素が使用され得る。
【００６８】
[0080]別の例では、本開示の技法は、ＶＰＳ中でタイルのクロスレイヤ整列ならびにＷＰＰおよびループフィルタ構成（たとえば、タイル境界を横切ったループフィルタの使用、loopfilter_accross_tile_boundary）の指示のシグナリング／読取りを行うことを含む。第１の例では、レイヤごとのタイルおよびＷＰＰの構成の指示は、以下の表２で示すように、修正ＶＰＳ  ＶＵＩで行われ得る。ビデオエンコーダ２０は、表２に示すシンタックス要素を符号化し、符号化されたビットストリーム中に符号化されたシンタックス要素を含め得る。同様に、ビデオデコーダ３０は、符号化されたビットストリームからシンタックス要素をパースし、復号し得る。  
【表２】
0006461982.tif 000003
【００６９】
[0081]０に等しいシンタックス要素parallel_tools_vps_idcは、ピクチャについてシンタックス要素tiles_enabled_flagとシンタックス要素entropy_coding_sync_enabled_flagとの両方が０に等しくなることを示す。１に等しいシンタックス要素parallel_tools_vps_idcは、すべてのレイヤ中のピクチャについて、シンタックス要素entropy_coding_sync_enabled_flagが１に等しくなり、シンタックス要素tiles_enabled_flagが０に等しくなることを示す。２に等しいシンタックス要素parallel_tools_vps_idcは、すべてのレイヤ中のピクチャについて、シンタックス要素tiles_enabled_flagが１に等しくなり、シンタックス要素entropy_coding_sync_enabled_flagが０に等しくなることを示す。３に等しいシンタックス要素parallel_tools_vps_idcは、０個以上のレイヤ中のピクチャについてシンタックス要素tiles_enabled_flagが１に等しくなり得、０個以上のレイヤ中のピクチャについてシンタックス要素entropy_coding_sync_enabled_flagが１に等しくなり得ることを示す。
【００７０】
[0082]以下の表３および表４に、タイルおよびＷＰＰの構成を示すためにＶＰＳ  ＶＵＩがどのように変更され得るかの追加の例を示す。本開示の態様によれば、ビデオエンコーダ２０は、表３および表４に示すシンタックス要素を符号化し、符号化されたビットストリーム中に符号化されたシンタックス要素を含め得る。同様に、ビデオデコーダ３０は、符号化されたビットストリームからシンタックス要素をパースし、復号し得る。  
【表３】
0006461982.tif 000004
【００７１】
[0083]０の値に等しいシンタックス要素parallel_tools_vps_idc[i]は、アクティブＰＰＳを参照するｉ番目のレイヤのピクチャについて、シンタックス要素tiles_enabled_flagとシンタックス要素entropy_coding_sync_enabled_flagとの両方が０に等しくなることを示す。１に等しいシンタックス要素parallel_tools_vps_idc[i]は、ｉ番目のレイヤのピクチャおよびアクティブＰＰＳを参照するそれの直接参照レイヤピクチャのすべてについてシンタックス要素entropy_coding_sync_enabled_flagが１に等しくなることを示す。２に等しいシンタックス要素parallel_tools_vps_idc[i]は、ｉ番目のレイヤのピクチャおよびアクティブＰＰＳを参照するそれの直接参照レイヤピクチャのすべてについてシンタックス要素tiles_enabled_flagが１に等しくなることを示す。３に等しいシンタックス要素parallel_tools_vps_idc[i]は、シンタックス要素tiles_enabled_flagが、ｉ番目のレイヤのピクチャについて１に等しくなるとき、それの直接参照レイヤのうちの少なくとも１つがシンタックス要素entropy_coding_sync_enabled_flag = 1 を有し、ｉ番目のレイヤのピクチャについてシンタックス要素entropy_coding_sync_enabled_flag = 1 であるとき、それの直接参照レイヤのうちの少なくとも１つが１に等しいシンタックス要素tiles_enabled_flagを有することを示す。  
【表４】
0006461982.tif 000005
【００７２】
[0084]１に等しいシンタックス要素tile_entropy_sync_coding_not_mixed_flag[i][j]は、ＣＶＳ内で、シンタックス要素tiles_enabled_flagが、ｉ番目のレイヤのアクティブＰＰＳについて１に等しくなるとき、シンタックス要素entropy_coding_sync_enabled_flagが、ｉ番目のレイヤのｊ番目の直接参照レイヤのアクティブＰＰＳについて０に等しくなること、またはシンタックス要素entropy_coding_sync_enabled_flagが、ｉ番目のレイヤのアクティブＰＰＳについて１に等しくなるとき、シンタックス要素tiles_enabled_flagは、ｉ番目のレイヤのｊ番目の直接参照レイヤのアクティブＰＰＳについて０に等しくなることを示す。０の値に等しいシンタックス要素tile_entropy_sync_coding_not_mixed_flag[i][j]は、そのような制限が適用され得るか、または適用され得ないことを示す。そのような例では、制限を適用すべきかどうかを示すために、１つまたは複数の追加のシンタックス要素が使用され得る。
【００７３】
[0085]１に等しいシンタックス要素loopfilter_across_tile_boundary_not_mixed_flag[i][j]は、ＣＶＳ内で、シンタックス要素loop_filter_across_tiles_enabled_flagが、ｉ番目のレイヤのアクティブＰＰＳについて１に等しくなるとき、シンタックス要素loop_filter_across_tiles_enabled_flagも、ｉ番目のレイヤのｊ番目の直接参照レイヤのアクティブＰＰＳについて１に等しくなることを示す。０の値に等しいシンタックス要素loopfilter_across_tile_boundary_not_mixed_flag[i][j]は、そのような制限が適用され得るか、または適用され得ないことを示す。そのような例では、制限を適用すべきかどうかを示すために、１つまたは複数の追加のシンタックス要素が使用され得る。
【００７４】
[0086]このようにして、ビデオエンコーダ２０は、マルチレイヤビットストリームのビデオパラメータセット（ＶＰＳ）中で、マルチレイヤビットストリームのレイヤについてのタイル構成を示すデータ、またはマルチレイヤビットストリームのレイヤについての並列処理構成を示すデータのうちの少なくとも１つを符号化し得る。同様に、ビデオデコーダ３０は、マルチレイヤビットストリームのビデオパラメータセット（ＶＰＳ）から、マルチレイヤビットストリームのレイヤについてのタイル構成を示すデータ、またはマルチレイヤビットストリームのレイヤについての並列処理構成を示すデータのうちの少なくとも１つを復号し得る。
【００７５】
[0087]図２は、本開示で説明する技法を実施し得る例示的なビデオエンコーダ２０を示すブロック図である。特に、ビデオエンコーダ２０は、本開示の技法に従ってマルチレイヤビットストリームのデータを符号化するように構成され得る。上述のように、ビデオエンコーダ２０は、マルチビューおよび／またはスケーラブルビデオコーディングを実行するように適応され得る。たとえば、ビデオエンコーダ２０は、ＳＨＶＣ、ＭＶ−ＨＥＶＣ、または３Ｄ−ＨＥＶＣなどの１つまたは複数のビデオコーディング規格の拡張に準拠するビットストリームを符号化するように構成され得る。ただし、特定のコーディング規格が参照されるが、本技法は、任意の１つのコーディング規格に固有のものではなく、将来のおよび／またはまだ開発されていない規格とともに実装され得ることを理解されたい。
【００７６】
[0088]図２の例では、ビデオエンコーダ２０は、パーティショニングユニット３５と、ビデオデータメモリ３７と、予測処理ユニット４１と、参照ピクチャメモリ６４と、加算器５０と、変換処理ユニット５２と、量子化ユニット５４と、エントロピー符号化ユニット５６とを含む。予測処理ユニット４１は、動き推定ユニット４２と、動き補償ユニット４４と、イントラ予測処理ユニット４６とを含む。ビデオブロック再構成のために、ビデオエンコーダ２０はまた、逆量子化ユニット５８と、逆変換処理ユニット６０と、加算器６２と、（復号ピクチャバッファ（ＤＰＢ）と呼ばれることもある）参照ピクチャメモリ６４と、フィルタリングユニット６６とを含む。
【００７７】
[0089]ビデオデータメモリ３７は、ビデオエンコーダ２０の構成要素によって符号化されるべきビデオデータを記憶し得る。ビデオデータメモリ３７に記憶されるビデオデータは、たとえば、ビデオソース１８から取得され得る。参照ピクチャメモリ６４は、たとえば、イントラコーディングモードまたはインターコーディングモードで、ビデオエンコーダ２０によってビデオデータを符号化する際に使用するための参照ビデオデータを記憶する、復号ピクチャバッファと呼ばれることがある。ビデオデータメモリ３７および参照ピクチャメモリ６４は、同期ＤＲＡＭ（ＳＤＲＡＭ）、磁気抵抗ＲＡＭ（ＭＲＡＭ）、抵抗ＲＡＭ（ＲＲＡＭ（登録商標））、または他のタイプのメモリデバイスを含む、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）など、様々なメモリデバイスのいずれかによって形成され得る。ビデオデータメモリ３７および参照ピクチャメモリ６４は、同じメモリデバイスまたは別個のメモリデバイスによって提供され得る。様々な例では、ビデオデータメモリ３７は、ビデオエンコーダ２０の他の構成要素とともにオンチップであるか、またはそれらの構成要素に対してオフチップであり得る。
【００７８】
[0090]ビデオエンコーダ２０は、ビデオスライス内のビデオブロックのイントラコーディングとインターコーディングとを実行し得る。イントラコーディングは、所与のビデオフレームまたはピクチャ内のビデオ中の空間冗長性を低減または削除するために、空間予測に頼る。インターコーディングは、ビデオシーケンスの隣接フレームまたはピクチャ内のビデオ中の時間冗長性を低減または削除するために、時間的予測に頼る。イントラモード（Ｉモード）は、いくつかの空間ベースの圧縮モードのいずれかを指すことがある。単方向予測（Ｐモード）または双予測（Ｂモード）などのインターモードは、いくつかの時間ベースの圧縮モードのいずれかを指すことがある。
【００７９】
[0091]たとえば、図２に示すように、ビデオエンコーダ２０はビデオデータを受信し、パーティショニングユニット３５はデータをビデオブロックにパーティショニングする。このパーティショニングはまた、たとえば、ＬＣＵおよびＣＵの４分木構造に従って、スライス、タイル、または他のより大きいユニットへのパーティショニング、ならびにビデオブロックパーティショニングをも含み得る。ビデオエンコーダ２０は、概して、符号化されるべきビデオスライス内のビデオブロックを符号化する構成要素を示す。スライスは、複数のビデオブロックに（および、場合によっては、タイルと呼ばれるビデオブロックのセットに）分割され得る。予測処理ユニット４１は、エラー結果（たとえば、コーディングレートおよびひずみレベル）に基づいて、現在のビデオブロックのために、複数のイントラコーディングモードのうちの１つ、または複数のインターコーディングモードのうちの１つなど、複数の可能なコーディングモードのうちの１つを選択し得る。予測処理ユニット４１は、得られたイントラコード化ブロックまたはインターコード化ブロックを、残差ブロックを生成するために加算器５０に与え、参照ピクチャとして使用するための符号化ブロックを再構成するために加算器６２に与え得る。
【００８０】
[0092]予測処理ユニット４１内のイントラ予測処理ユニット４６は、空間圧縮を行うために、コーディングされるべき現在のブロックと同じフレームまたはスライス中の１つまたは複数の隣接ブロックに対して現在のビデオブロックのイントラ予測コーディングを実行し得る。予測処理ユニット４１内の動き推定ユニット４２および動き補償ユニット４４は、時間的圧縮を行うために、１つまたは複数の参照ピクチャ中の１つまたは複数の予測ブロックに対する現在のビデオブロックのインター予測コーディングを実行する。
【００８１】
[0093]動き推定ユニット４２は、ビデオシーケンスの所定のパターンに従ってビデオスライスのためのインター予測モードを決定するように構成され得る。所定のパターンは、シーケンス中のビデオスライスをＰスライスまたはＢスライスに指定し得る。動き推定ユニット４２と動き補償ユニット４４とは、高度に統合され得るが、概念的な目的のために別々に示されている。動き推定ユニット４２によって実施される動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、参照ピクチャ内の予測ブロックに対する現在のビデオフレームまたはピクチャ内のビデオブロックのＰＵの変位を示し得る。
【００８２】
[0094]予測ブロックは、絶対差分和（ＳＡＤ：sum of absolute difference）、２乗差分和（ＳＳＤ：sum of square difference）、または他の差分メトリックによって決定され得るピクセル差分に関して、コーディングされるべきビデオブロックのＰＵにぴったり一致することがわかるブロックである。いくつかの例では、ビデオエンコーダ２０は、参照ピクチャメモリ６４に記憶された参照ピクチャのサブ整数ピクセル位置の値を計算し得る。たとえば、ビデオエンコーダ２０は、参照ピクチャの１／４ピクセル位置、１／８ピクセル位置、または他の分数ピクセル位置の値を補間し得る。したがって、動き推定ユニット４２は、完全なピクセル位置および分数ピクセル位置に対して動き探索を実行し、分数ピクセル精度で動きベクトルを出力し得る。
【００８３】
[0095]動き推定ユニット４２は、ＰＵの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化スライス中のビデオブロックのＰＵのための動きベクトルを計算する。参照ピクチャは、第１の参照ピクチャリスト（リスト０）または第２の参照ピクチャリスト（リスト１）から選択され得、それらの参照ピクチャリストの各々は、参照ピクチャメモリ６４に記憶された１つまたは複数の参照ピクチャを識別する。動き推定ユニット４２は、計算された動きベクトルをエントロピー符号化ユニット５６と動き補償ユニット４４とに送る。
【００８４】
[0096]動き補償ユニット４４によって実施される動き補償は、動き推定によって決定された動きベクトルに基づいて予測ブロックをフェッチまたは生成すること、場合によってはサブピクセル精度への補間を実施することを伴い得る。現在のビデオブロックのＰＵについての動きベクトルを受信すると、動き補償ユニット４４は、動きベクトルが参照ピクチャリストのうちの１つにおいて指す予測ブロックの位置を特定し得る。ビデオエンコーダ２０は、コーディングされている現在のビデオブロックのピクセル値から予測ブロックのピクセル値を減算し、ピクセル差分値を形成することによって、残差ビデオブロックを形成する。ピクセル差分値は、ブロックについての残差データを形成し、ルーマ差分成分とクロマ差分成分の両方を含み得る。加算器５０は、この減算演算を実施する１つまたは複数の構成要素を表す。動き補償ユニット４４はまた、ビデオスライスのビデオブロックを復号する際にビデオデコーダ３０によって使用するための、ビデオブロックとビデオスライスとに関連付けられたシンタックス要素を生成し得る。
【００８５】
[0097]イントラ予測処理ユニット４６は、上記で説明したように、動き推定ユニット４２と動き補償ユニット４４とによって実行されるインター予測の代替として、現在のブロックをイントラ予測し得る。特に、イントラ予測処理ユニット４６は、現在のブロックを符号化するために使用すべきイントラ予測モードを決定し得る。いくつかの例では、イントラ予測処理ユニット４６は、たとえば、別個の符号化パス中に、様々なイントラ予測モードを使用して現在のブロックを符号化することができ、イントラ予測処理ユニット４６（または、いくつかの例では、モード選択ユニット４０）は、テストされたモードから使用するのに適切なイントラ予測モードを選択し得る。たとえば、イントラ予測処理ユニット４６は、様々なテストされたイントラ予測モードにレートひずみ分析を使用してレートひずみ値を計算し、テストされたモードの中で最良のレートひずみ特性を有するイントラ予測モードを選択し得る。レートひずみ分析は、一般に、符号化されたブロックと、符号化されたブロックを生成するために符号化された元の符号化されていないブロックとの間のひずみ（または、誤差）の量、ならびに符号化されたブロックを生成するために使用されたビットレート（すなわち、ビットの個数）を決定する。イントラ予測処理ユニット４６は、符号化された様々なブロックのひずみおよびレートから比を算出し、どのイントラ予測モードがブロックの最良のレートひずみ値を示すのかを決定し得る。
【００８６】
[0098]いずれの場合も、ブロックのためのイントラ予測モードを選択した後に、イントラ予測処理ユニット４６は、ブロックのための選択されたイントラ予測モードを示す情報をエントロピー符号化ユニット５６に与え得る。エントロピー符号化ユニット５６は、本開示の技法に従って、選択されたイントラ予測モードを示す情報を符号化し得る。ビデオエンコーダ２０は、複数のイントラ予測モードインデックステーブルおよび複数の変更イントラ予測モードインデックステーブル（コードワードマッピングテーブルとも呼ばれる）と、様々なブロックの符号化コンテキストの定義と、コンテキストの各々について使用すべき、最確イントラ予測モード、イントラ予測モードインデックステーブル、および変更イントラ予測モードインデックステーブルの指示とを含み得る構成データを送信ビットストリーム中に含め得る。
【００８７】
[0099]予測処理ユニット４１が、インター予測またはイントラ予測のいずれかを介して、現在のビデオブロックのための予測ブロックを生成した後に、ビデオエンコーダ２０は、現在のビデオブロックから予測ブロックを減算することによって残差ビデオブロックを形成する。残差ブロック中の残差ビデオデータは、１つまたは複数のＴＵ中に含まれ、変換処理ユニット５２に適用され得る。変換処理ユニット５２は、離散コサイン変換（ＤＣＴ：discrete cosine transform）または概念的に同様の変換などの変換を使用して、残差ビデオデータを残差変換係数に変換する。変換処理ユニット５２は、残差ビデオデータをピクセル領域から周波数領域などの変換領域に変換し得る。
【００８８】
[0100]変換処理ユニット５２は、得られた変換係数を量子化ユニット５４に送り得る。量子化ユニット５４は、ビットレートをさらに低減するために変換係数を量子化する。量子化プロセスは、係数の一部または全部に関連するビット深度を低減し得る。量子化の程度は、量子化パラメータを調整することによって修正され得る。いくつかの例では、量子化ユニット５４は、次いで、量子化変換係数を含む行列の走査を実行し得る。代替的に、エントロピー符号化ユニット５６が、走査を実行し得る。
【００８９】
[0101]量子化の後に、エントロピー符号化ユニット５６は、量子化変換係数をエントロピー符号化する。たとえば、エントロピー符号化ユニット５６は、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ）、確率間隔パーティショニングエントロピー（ＰＩＰＥ）コーディングまたは別のエントロピー符号化方法もしくは技法を実行し得る。エントロピー符号化ユニット５６によるエントロピー符号化の後に、符号化ビットストリームはビデオデコーダ３０に送信されるか、またはビデオデコーダ３０が後で送信するかもしくは取り出すためにアーカイブされ得る。エントロピー符号化ユニット５６はまた、コーディングされている現在のビデオスライスのための動きベクトルと他のシンタックス要素とをエントロピー符号化し得る。
【００９０】
[0102]逆量子化ユニット５８および逆変換処理ユニット６０は、それぞれ逆量子化および逆変換を適用して、参照ピクチャの参照ブロックとして後で使用するために、ピクセル領域において残差ブロックを再構成する。動き補償ユニット４４は、残差ブロックを参照ピクチャリストのうちの１つ内の参照ピクチャのうちの１つの予測ブロックに加算することによって参照ブロックを計算し得る。動き補償ユニット４４はまた、再構成された残差ブロックに１つまたは複数の補間フィルタを適用して、動き推定において使用するサブ整数ピクセル値を計算し得る。加算器６２は、再構成された残差ブロックを動き補償ユニット４４によって生成された動き補償予測ブロックに加算して、参照ピクチャメモリ６４に記憶するための参照ブロックを生成する。参照ブロックは、後続のビデオフレームまたはピクチャ中のブロックをインター予測するために、動き推定ユニット４２および動き補償ユニット４４によって参照ブロックとして使用され得る。
【００９１】
[0103]フィルタリングユニット６６は、様々なフィルタリングプロセスを実行し得る。たとえば、フィルタリングユニット６６は、デブロッキングフィルタリングを実行し得る。すなわち、フィルタリングユニット６６は、スライスまたはフレームからブロッキネスアーティファクトを除去するために、再構成されたビデオおよびフィルタブロック境界のスライスまたはフレームを形成する複数の再構成されたビデオブロックを受信し得る。一例では、フィルタリングユニット６６は、ビデオブロックのいわゆる「境界強度」を評価する。ビデオブロックの境界強度に基づいて、ビデオブロックのエッジピクセルは、閲覧者にとって１つのビデオブロックから別のビデオブロックへの遷移を知覚することがより困難になるように、隣接ビデオブロックのエッジピクセルに対してフィルタ処理され得る。
【００９２】
[0104]いくつかの事例では、デブロッキングフィルタによって使用される変数は、再構成されたビデオブロックを元のソースビデオブロックと比較せずに、再構成されたビデオブロックから導出され得る。したがって、ビデオエンコーダ２０およびビデオデコーダ３０（図３）はそれぞれ、ビットストリーム内にコーディングされた元のビデオフレームに関する最小の追加の情報を用いて、再構成されたビデオブロックに関して同じデブロッキングプロセスを実行するようにプログラムされ得る。ただし、場合によっては、フィルタリングユニット６６は、デブロッキングが実行されるべきであるかどうか、および／または特定のタイプのデブロッキングモードのうちの１つが実行されるべきであるかどうかを示すシンタックス要素をビットストリーム中に含み得る。他の例では、フィルタリングユニット６６は、サンプルアダプティブオフセット（ＳＡＯ）フィルタまたは他のフィルタなど、いくつかの追加のおよび／または代替のフィルタを適用し得る。
【００９３】
[0105]本開示の態様によれば、ビデオエンコーダ２０は、マルチレイヤビットストリームのレイヤについてのタイル構成および／または並列処理構成を示すデータを符号化するように構成され得る。たとえば、ビデオエンコーダ２０は、マルチレイヤビットストリームのレイヤについてのタイル構成および／またはマルチレイヤビットストリームのレイヤについての並列処理構成を示すＶＰＳおよび／またはＶＰＳ  ＶＵＩのデータを符号化するように構成され得る。特に、並列処理構成に関して、データは、並列処理同期（たとえば、ＷＰＰにおいて実行されるエントロピーコーディング同期）が実行されるかどうかを示し得る。
【００９４】
[0106]いくつかの例では、タイル構成および／または並列処理構成を示すデータは、いくつかのシンタックス要素を含み得る。たとえば、マルチレイヤビットストリーム中のビデオデータの各レイヤについて、ビデオエンコーダ２０は、（たとえば、上記の表１の例で示されるtiles_enabled_vps_flag[i]シンタックス要素など）レイヤ中の少なくとも１つのピクチャ中でタイルが使用可能であるかどうかを示す１つまたは複数のシンタックス要素を符号化し得る。さらに、タイルが使用可能である各レイヤについて、ビデオエンコーダ２０はまた、（たとえば、上記の表１の例で示されるloop_filter_across_tiles_disabled_vps_flag[i]シンタックス要素など）タイル境界を横切ってループフィルタ処理が適用されるかどうか、またはタイル境界を横切ったループフィルタ処理が使用不可であるかどうかを示す１つまたは複数のシンタックス要素を符号化し得る。いくつかの事例では、ビデオエンコーダ２０はまた、並列処理構成を示す１つまたは複数のシンタックス要素を符号化し得る。たとえば、ビデオエンコーダ２０は、（たとえば、上記の表１の例で示されるentropy_coding_sync_enabled_vps_flag[i]シンタックス要素など）たとえば、ＷＰＰを介して、エントロピーコーディング同期が実行されるかどうかを示す１つまたは複数のシンタックス要素を符号化し得る。
【００９５】
[0107]図３は、本開示で説明する技法を実施し得る例示的なビデオデコーダ３０を示すブロック図である。特に、ビデオデコーダ３０は、本開示の技法に従ってビデオデータの波面並列処理を実行するように構成され得る。上述のように、ビデオデコーダ３０は、マルチビューおよび／またはスケーラブルビデオコーディングを実行するように構成され得る。たとえば、ビデオデコーダ３０は、ＳＨＶＣ、ＭＶ−ＨＥＶＣ、または３Ｄ−ＨＥＶＣなどの１つまたは複数のビデオコーディング規格の拡張に準拠するビットストリームを復号するように構成され得る。ただし、特定のコーディング規格が参照されるが、本技法は、任意の１つのコーディング規格に固有のものではなく、将来のおよび／またはまだ開発されていない規格とともに実装され得ることを理解されたい。
【００９６】
[0108]図３の例では、ビデオデコーダ３０は、ビデオデータメモリ７９と、エントロピー復号ユニット８０と、予測処理ユニット８１と、逆量子化ユニット８６と、逆変換処理ユニット８８と、加算器９０と、参照ピクチャメモリ９２と、フィルタリングユニット９４とを含む。予測処理ユニット８１は、動き補償ユニット８２と、イントラ予測処理ユニット８４とを含む。ビデオデコーダ３０は、いくつかの例では、図２からのビデオエンコーダ２０に関して説明した符号化パスとは概して逆の復号パスを実行し得る。
【００９７】
[0109]ビデオデータメモリ７９は、ビデオデコーダ３０の構成要素によって復号されるべき、符号化ビデオビットストリームなどのビデオデータを記憶し得る。ビデオデータメモリ７９に記憶されるビデオデータは、たとえば、コンピュータ可読媒体１６から、たとえば、カメラなどのローカルビデオソースから、ビデオデータの有線もしくはワイヤレスネットワーク通信を介して、または物理データ記憶媒体にアクセスすることによって取得され得る。ビデオデータメモリ７９は、符号化されたビデオビットストリームからの符号化されたビデオデータを記憶するコーディング済みピクチャバッファ（ＣＰＢ）を形成し得る。参照ピクチャメモリ９２は、たとえば、イントラコーディングモードまたはインターコーディングモードで、ビデオデコーダ３０によってビデオデータを復号する際に使用するための参照ビデオデータを記憶する、復号ピクチャバッファと呼ばれることがある。ビデオデータメモリ７９および参照ピクチャメモリ９２は、同期ＤＲＡＭ（ＳＤＲＡＭ）、磁気抵抗ＲＡＭ（ＭＲＡＭ）、抵抗ＲＡＭ（ＲＲＡＭ）、または他のタイプのメモリデバイスを含む、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）など、様々なメモリデバイスのいずれかによって形成され得る。ビデオデータメモリ７９および参照ピクチャメモリ９２は、同じメモリデバイスまたは別個のメモリデバイスによって提供され得る。様々な例では、ビデオデータメモリ７９は、ビデオデコーダ３０の他の構成要素とともにオンチップであるか、またはそれらの構成要素に対してオフチップであり得る。
【００９８】
[0110]復号プロセスの間、ビデオデコーダ３０は、符号化ビデオスライスのビデオブロックおよび関連するシンタックス要素を表す符号化ビデオビットストリームをビデオエンコーダ２０から受信する。ビデオデコーダ３０のエントロピー復号ユニット８０は、量子化係数と、動きベクトルと、他のシンタックス要素とを生成するために、ビットストリームをエントロピー復号する。エントロピー復号ユニット８０は、動きベクトルと他のシンタックス要素とを予測処理ユニット８１に転送する。ビデオデコーダ３０は、ビデオスライスレベルおよび／またはビデオブロックレベルでシンタックス要素を受信し得る。
【００９９】
[0111]ビデオスライスがイントラコード化（Ｉ）スライスとしてコーディングされたとき、予測処理ユニット８１のイントラ予測処理ユニット８４は、シグナリングされたイントラ予測モードと、現在のフレームまたはピクチャの前に復号されたブロックからのデータとに基づいて、現在のビデオスライスのビデオブロックについての予測データを生成し得る。ビデオフレームがインターコード化（すなわち、Ｂ、ＰまたはＧＰＢ）スライスとしてコーディングされたとき、予測処理ユニット８１の動き補償ユニット８２は、エントロピー復号ユニット８０から受信された動きベクトルおよび他のシンタックス要素に基づいて、現在のビデオスライスのビデオブロックのための予測ブロックを生成する。予測ブロックは、参照ピクチャリストのうちの１つの中の参照ピクチャのうちの１つから生成され得る。ビデオデコーダ３０は、参照ピクチャメモリ９２に記憶された参照ピクチャに基づくデフォルトの構成技法を使用して参照フレームリストのリスト０およびリスト１を構成し得る。
【０１００】
[0112]動き補償ユニット８２は、動きベクトルと他のシンタックス要素とをパースすることによって現在のビデオスライスのビデオブロックのための予測情報を決定し、復号されている現在のビデオブロックのための予測ブロックを生成するために予測情報を使用する。たとえば、動き補償ユニット８２は、ビデオスライスのビデオブロックをコーディングするために使用される予測モード（たとえば、イントラ予測またはインター予測）と、インター予測スライスタイプ（たとえば、ＢスライスまたはＰスライス）と、スライスの参照ピクチャリストのうちの１つまたは複数についての構成情報と、スライスの各インター符号化されたビデオブロックのための動きベクトルと、スライスの各インターコーディングされたビデオブロックについてのインター予測ステータスと、現在のビデオスライス中のビデオブロックを復号するための他の情報とを決定するために、受信されたシンタックス要素のいくつかを使用する。
【０１０１】
[0113]動き補償ユニット８２はまた、補間フィルタに基づいて補間を実行し得る。動き補償ユニット８２は、参照ブロックのサブ整数ピクセルのための補間値を計算するために、ビデオブロックの符号化中にビデオエンコーダ２０によって使用された補間フィルタを使用し得る。この場合、動き補償ユニット８２は、受信されたシンタックス要素からビデオエンコーダ２０によって使用された補間フィルタを決定し、その補間フィルタを使用して予測ブロックを生成し得る。
【０１０２】
[0114]逆量子化ユニット８６は、ビットストリーム中で与えられ、エントロピー復号ユニット８０によって復号された、量子化された変換係数を逆量子化する（inverse quantize）、すなわち、逆量子化する（de-quantize）。逆量子化プロセスは、量子化の程度を決定し、同様に、適用されるべき逆量子化の程度を決定するための、ビデオスライス中のビデオブロックごとにビデオエンコーダ２０によって計算される量子化パラメータの使用を含み得る。逆変換ユニット８８は、ピクセル領域において残差ブロックを生成するために、逆変換、たとえば、逆ＤＣＴ、逆整数変換、または概念的に同様の逆変換プロセスを変換係数に適用する。
【０１０３】
[0115]動き補償ユニット８２が、動きベクトルと他のシンタックス要素とに基づいて現在のビデオブロックに関する予測ブロックを生成した後、ビデオデコーダ３０は、逆変換処理ユニット８８からの残差ブロックを動き補償ユニット８２によって生成された対応する予測ブロックと加算することによって、復号ビデオブロックを形成する。加算器９０は、この加算演算を実行する１つまたは複数の構成要素を表す。
【０１０４】
[0116]フィルタリングユニット９４は、いくつかの例では、ビデオエンコーダ２０（図２）のフィルタリングユニット６６と同様に構成され得る。たとえば、フィルタリングユニット９４は、符号化ビットストリームからのビデオデータを復号および再構成するとき、デブロッキング、ＳＡＯ、または他のフィルタリング動作を実行するように構成され得る。その後、所与のフレームまたはピクチャ内の復号されたビデオブロックは、参照ピクチャメモリ９２内に記憶され、参照ピクチャメモリ９２は、後続の動き補償のために使用される参照ピクチャを記憶する。参照ピクチャメモリ９２はまた、図１のディスプレイデバイス３３などのディスプレイデバイス上での後の表示のための、復号ビデオを記憶する。
【０１０５】
[0117]本開示の態様によれば、ビデオデコーダ３０は、マルチレイヤビットストリームのレイヤについてのタイル構成および／または並列処理構成を示すデータを復号するように構成され得る。たとえば、ビデオデコーダ３０は、マルチレイヤビットストリームのレイヤについてのタイル構成および／またはマルチレイヤビットストリームのレイヤについての並列処理構成を示すＶＰＳおよび／またはＶＰＳ  ＶＵＩのデータを復号するように構成され得る。特に、並列処理構成に関して、データは、並列処理同期（たとえば、ＷＰＰにおいて実行されるエントロピーコーディング同期）が実行されるかどうかを示し得る。
【０１０６】
[0118]いくつかの例では、タイル構成および／または並列処理構成を示すデータは、いくつかのシンタックス要素を含み得る。たとえば、マルチレイヤビットストリーム中のビデオデータの各レイヤについて、ビデオデコーダ３０は、（たとえば、上記の表１の例で示されるtiles_enabled_vps_flag[i]シンタックス要素など）レイヤ中の少なくとも１つのピクチャ中でタイルが使用可能であるかどうかを示す１つまたは複数のシンタックス要素を復号し得る。さらに、タイルが使用可能である各レイヤについて、ビデオデコーダ３０はまた、（たとえば、上記の表１の例で示されるloop_filter_across_tiles_disabled_vps_flag[i]シンタックス要素など）タイル境界を横切ってループフィルタ処理が適用されるかどうか、またはタイル境界を横切ったループフィルタ処理が使用不可であるかどうかを示す１つまたは複数のシンタックス要素を復号し得る。いくつかの事例では、ビデオデコーダ３０はまた、並列処理構成を示す１つまたは複数のシンタックス要素を復号し得る。たとえば、ビデオデコーダ３０は、（たとえば、上記の表１の例で示されるentropy_coding_sync_enabled_vps_flag[i]シンタックス要素など）たとえば、ＷＰＰを介して、エントロピーコーディング同期が実行されるかどうかを示す１つまたは複数のシンタックス要素を復号し得る。
【０１０７】
[0119]本開示の態様によれば、ビデオデコーダ３０は、シンタックス要素に従ってビデオデータのビデオ復号を実行し得る。たとえば、ビデオデコーダ３０は、復号されたシンタックス要素に基づいて復号リソースを割り当て、ビデオデータを復号することを続け得る。
【０１０８】
[0120]図４Ａおよび図４Ｂに、波面並列処理におけるＣＴＢ同期の例を示す概念図を示す。図４Ａおよび図４Ｂの例が説明のために提示されることに留意されたい。他の例では、３つ以上のＣＴＢ行が並列に処理され得る。さらに、ビデオフレームは、ＣＴＢ行中に、図４Ａおよび図４Ｂに示される７つのＣＴＢより多いまたはそれより少ないＣＴＢを備え得る。
【０１０９】
[0121]図４Ａに、１つのＣＴＢによって遅延された同期ポイントをもつ波面並列処理の一例を示す。図４Ａの例では、２つのＣＴＢ行が並列に処理（たとえば、復号）される。ＣＴＢ行１中のＣＴＢ０の復号は、同期ポイントＡにおいて、ＣＴＢ行０の復号も同期ポイントＡに達するまで始まらない。
【０１１０】
[0122]図４Ａの例では、同期ポイントＡは、ＣＴＢ行０中のＣＴＢ０の復号が完了した後に発生する。この遅延により、ＣＴＢの真上または左上のＣＴＢ中の復号されたシンタックス要素および／またはピクセル情報に頼る、行１中のＣＴＢ０中のシンタックス要素および／またはピクセル情報の復号が可能になる。すなわち、ビデオデコーダ３０は、行１のＣＴＢ０中のシンタックス要素を適切に復号するために、行０のＣＴＢ０中のいくつかのシンタックス要素がすでに復号されていることを必要とし得る。同期ポイントＢ〜Ｇに、対応するポイントにおいて行１のコーディングが始まり得る前に、行０のコーディングが完了し得る他のポイントを示す。理解されるように、各ＣＴＢにおいて同期が必要とされる。このコンテキストでは、同期は、両方の行中での、たとえば、ポイントＡにおける復号が必ずしも同時に発生することを必要とするとは限らない。むしろ、同期は、下の行中での復号が対応する同期ポイントにおいて始まり得る前に、上の行の復号が同期ポイントに達することを必要とするにすぎない。
【０１１１】
[0123]図４Ｂは、波面並列処理のための同期ポイントの別の例を示す概念図である。この例では、下のＣＴＢ行（たとえば、ＣＴＢ行１）中のピクセル情報および／またはシンタックス要素の復号はまた、現在復号されているＣＵの右上に位置するＣＵ中の復号されたピクセル情報および／またはシンタックス要素に依存し得る。したがって、行０中の２つのＣＴＢ（すなわち、ＣＴＢ０およびＣＴＢ１）は、ＣＴＢ行１中で復号を始めることができるようになる前に復号されていなければならない。図４Ｂに示すように、ビデオデコーダ３０は、ＣＴＢ行０中のＣＴＢ１の復号が完了したときにＣＴＢ行１中のＣＴＢ０を復号し始め得る。
【０１１２】
[0124]上記で説明したように、シンタックス要素は、一般に、ビデオエンコーダ２０中のエントロピーエンコーダによって符号化され得る。たとえば、ビデオエンコーダ２０は、ＣＡＢＡＣを使用してシンタックス要素を符号化し得る。各シンタックス要素は、ＣＡＢＡＣのアプリケーションのために１つまたは複数のビンに２値化され得る。したがって、ＣＴＢ全体のためのシンタックス要素は、単一のビンによって、または多数のビンによってシグナリングされ得る。ＣＴＢ間のパース演算のための負荷分散を有することが望ましい。パースモジュールの同期を、あらゆるＣＴＢにおいてではなく、あらゆるＣＴＢ行の最初に実行するように緩和される場合、波面サブストリームのパース（すなわち、各ＣＴＢ行のパース）のための負荷分散が達成され得る。したがって、ＣＴＢごとの同期の必要を除去するために、ビデオエンコーダ２０は、現在コーディングされているＣＴＢの上のＣＴＢ行からの任意のシンタックス要素情報を使用せずにすべてのシンタックス要素が復号可能になるように構成され得る。
【０１１３】
[0125]図４Ａおよび図４Ｂの例に示すＷＰＰは、１つまたは複数のシンタックス要素を使用して使用可能になり得る。たとえば、ＨＥＶＣ仕様に記載されているように、１に等しいシンタックス要素entropy_coding_sync_enabled_flagは、コンテキスト変数のための特定の同期プロセスが、ＰＰＳを参照する各ピクチャ中の各タイル中のコーディングツリーブロックの行の第１のコーディングツリーブロックを含むコーディングツリーユニットを復号する前に呼び出されることと、コンテキスト変数のための特定の記憶プロセスが、ＰＰＳを参照する各ピクチャ中の各タイル中のコーディングツリーブロックの行の第２のコーディングツリーブロックを含むコーディングツリーユニットを復号した後に呼び出されることとを指定する。さらに、０の値に等しいシンタックス要素entropy_coding_sync_enabled_flagは、コンテキスト変数のための特定の同期プロセスが、ＰＰＳを参照する各ピクチャ中の各タイル中のコーディングツリーブロックの行の第１のコーディングツリーブロックを含むコーディングツリーユニットを復号する前に呼び出される必要がないことと、コンテキスト変数のための特定の記憶プロセスが、ＰＰＳを参照する各ピクチャ中の各タイル中のコーディングツリーブロックの行の第２のコーディングツリーブロックを含むコーディングツリーユニットを復号した後に呼び出される必要がないこととを指定する。いくつかの事例では、図４Ａおよび図４Ｂに関して上記で説明した同期を制御するために、entropy_coding_sync_enabled_flagシンタックス要素が使用され得る。
【０１１４】
[0126]図５は、ビデオブロック行の並列処理のための同期ポイントの別の例を示す概念図である。図５の例では、ビデオエンコーダ２０およびビデオデコーダ３０は、現在コーディングされているＣＴＢ行の上のＣＴＢ行から任意の情報を使用せずにすべてのシンタックス要素をパースするように構成され得る。したがって、行間のパース複雑さおよびパース時間のいかなる差も別の行とは何の関係もないので、波面並列処理のパース部分は、ＣＴＢ行の最初に単一の同期ポイントから進み得る。
【０１１５】
[0127]図５に示すように、再構成プロセス中に使用される予測コーディング技法（たとえば、インター予測またはイントラ予測）が依然として上記の行中のピクセル情報に頼り得るので、ＣＴＢ行０のコーディングは、ＣＴＢ行１のコーディングの前に始まり得る。図５に示すように、ＣＴＢ行１の処理は、ＣＴＢ行０中のＣＴＢ１の再構成が完了するとすぐに始まり得る。しかしながら、図４Ａおよび図４Ｂの例とは異なり、ＣＴＢ行０および１を処理するためにさらなる同期ポイントは使用されない。したがって、第１の複数のＣＴＢ行は、ただ１つの同期ポイント、すなわち、同期ポイントＡ’を用いて２つのＣＴＢ遅延を使用して並列に処理され得る。第２の複数のＣＴＢ行（すなわち、ＣＴＢ行２および３）は、第１の複数のＣＴＢ行が処理された後、単一の同期ポイントＢ’を使用してビデオエンコーダ２０またはビデオデコーダ３０によって並列にコーディングされ得る。図５の例では、ＣＴＢ行の第１および第２のグループは２つのＣＴＢ行を含む。ただし、３つ以上のＣＴＢ行が、本開示の技法を使用して並列に処理され得る。
【０１１６】
[0128]本開示の態様によれば、ビデオエンコーダ２０は、マルチレイヤビットストリームのレイヤについての並列処理構成を示すデータを符号化するように構成され得る。たとえば、ビデオエンコーダ２０は、マルチレイヤビットストリームのレイヤについての並列処理構成を示すＶＰＳおよび／またはＶＰＳ  ＶＵＩのデータを符号化するように構成され得る。特に、並列処理構成に関して、データは、図４Ａ〜図５に関して上記で説明したものなどの並列処理同期が実行されるかどうかを示し得る。同様に、ビデオデコーダ３０は、たとえば、ＶＰＳおよび／またはＶＰＳ  ＶＵＩからそのようなデータを復号するように構成され得る。
【０１１７】
[0129]いくつかの例では、並列処理構成を示すデータは、いくつかのシンタックス要素を含み得る。たとえば、ビデオエンコーダ２０は、マルチレイヤビットストリーム中のレイヤの任意のピクチャ中でエントロピーコーディング同期が実行されるかどうかを示す１つまたは複数のシンタックス要素を符号化し得る。すなわち、ビデオエンコーダ２０は、（たとえば、パラメータセットがＰＰＳなどのエントロピーコーディング同期を実際に使用可能にするよりもビットストリーム中で比較的前にＶＰＳが発生するので）可能にされたエントロピーコーディング同期がマルチレイヤビットストリームのレイヤ中で実行されたかどうかの早期指示をＶＰＳを使用して与え得る。説明のための一例では、ビデオエンコーダ２０は、特定のレイヤの少なくとも１つのピクチャによって参照される各ＰＰＳについてシンタックス要素entropy_coding_sync_enabled_flagの値が１に等しくなるかどうかを示すentropy_coding_sync_enabled_vps_flag[i]シンタックス要素を符号化し得る。ビデオデコーダ３０はまた、ＶＰＳからそのような情報を復号するように構成され得る。ビデオデコーダ３０は、いくつかの事例では、マルチレイヤビデオデータを復号するためのシステムリソースを割り当てるためにそのような情報を使用し得る。
【０１１８】
[0130]図６は、ＨＥＶＣ規格による例示的なタイルを示す概念図である。図６に示すタイル構造を使用することにより、いくつかの事例では、コーデックがより並列フレンドリーになり得る。ＨＥＶＣは、タイルのＣＴＢラスタ走査において連続的に順序付けられた、１つの列および１つの行内で同時に発生する整数個のＣＴＢとしてタイルを定義する。各ピクチャをタイルに分割することは、パーティショニングと呼ばれることがある。ピクチャ内のタイルは、図６に示すように、ピクチャのタイルラスタ走査において連続的に順序付けられる。
【０１１９】
[0131]たとえば、図６に、複数のタイル９８Ａ、９８Ｂ、９８Ｃ、９８Ｄ、９８Ｅ、９８Ｆ、９８Ｇ、９８Ｈ、および９８Ｉ（まとめて、「タイル９８」）にパーティショニングされるピクチャ９６のための例示的なＣＴＢコーディング順序を示し、タイル境界が太線によって示されている。ピクチャ９６における各正方形ブロックは、ＣＴＢに関連付けられたピクセルブロックを表す。ピクセルブロックにおける数字は、ピクチャ９６についてのタイルのコーディング順序で対応するＣＴＢ（たとえば、ＬＣＵ）の位置を示す。図６の例に示すように、タイル９８Ａ中のＣＴＢが最初にコーディングされ、続いてタイル９８Ｂ中のＣＴＢ、続いてタイル９８Ｃ中のＣＴＢ、続いてタイル９８Ｄ中のＣＴＢ、続いてタイル９８Ｅ中のＣＴＢ、続いてタイル９８Ｆ中のＣＴＢ、続いてタイル９８Ｇ中のＣＴＢ、続いてタイル９８Ｈ中のＣＴＢ、続いてタイル９８Ｉ中のＣＴＢが、コーディングされる。タイル９８の各々の内で、ラスタ走査順序に従ってＣＴＢがコーディングされる。
【０１２０】
[0132]タイルの数およびそれらの境界のロケーションは、全体のシーケンスに対して定義されるか、またはピクチャごとに変更され得る。タイル境界は、スライス境界と同様に、パースおよび予測依存を中断し、したがって、タイルは、独立して処理され得る。ただし、いくつかの事例では、ループ内フィルタ（たとえば、デブロッキングおよびサンプルアダプティブオフセット（ＳＡＯ）フィルタ）は、依然としてタイル境界を横切り得る。たとえば、ＨＥＶＣは、ＰＰＳの中に指定されるloop_filter_across_tiles_enabled_flagシンタックス要素を提供する。loop_filter_across_tiles_enabled_flagシンタックス要素の値が１に等しいとき、ループ内フィルタリング動作は、ＰＰＳを参照するピクチャの中のタイル境界を横切って実行され得る。０の値に等しいloop_filter_across_tiles_enabled_flagシンタックス要素は、ループ内フィルタリング動作がＰＰＳを参照するピクチャの中のタイル境界を横切って実行されないことを指定する。
【０１２１】
[0133]エントロピー復号および動き補償再構成のためにプロセッサまたはプロセッサコアの間で通信が必要とされない（または、比較的少量ですむ）ので、タイルの使用は並列性を向上させ得る。加えて、タイルがスライスよりも潜在的に高い相関を有するサンプルを含むピクチャパーティション形状を可能にするので、タイルは、スライスと比較したときに比較的良好なコーディング効率を示し得る。タイルはまた、スライスヘッダのオーバーヘッドを低減し得る。
【０１２２】
[0134]タイルがシングルレイヤコーディングにおいて使用されるとき、シンタックス要素min_spatial_segmentation_idcは、１つの処理スレッドによって処理されるべきルーマサンプルの最大数を計算するために（ビデオデコーダ３０などの）ビデオデコーダによって使用され得、ビデオデコーダ３０は並列復号情報を最大限に利用することが想定される。０に等しくないとき、min_spatial_segmentation_idcシンタックス要素は、コーディングされたビデオシーケンスのピクチャの中で、異なるコーディングされた空間セグメント化領域の最大可能なサイズで境界を確立する助けとなり得る。ＨＥＶＣにおいて、たとえば、エントロピーコーディング同期またはタイル境界もしくはスライス境界を横切るデブロッキングフィルタリングによって、異なるスレッド間に何らかのピクチャの相互依存性が存在し得る。そのような相互依存性は、本明細書で説明するように、ビデオデコーダ３０がビデオデータを復号するためのリソースを割り当てる方法に影響を及ぼし得る。
【０１２３】
[0135]本開示の態様によれば、ビデオエンコーダ２０は、マルチレイヤビットストリームのレイヤについてのタイル構成を示すデータを符号化し得る。たとえば、ビデオエンコーダ２０は、図６に関して上記で図示し説明したタイルなどのタイルがマルチレイヤビットストリームの特定のレイヤのために使用可能であるかどうかを示すＶＰＳおよび／またはＶＰＳ  ＶＵＩのデータを符号化し得る。追加または代替として、ビデオエンコーダ２０は、タイルを横切ったループフィルタ処理が使用可能であるかまたは使用不可であるかを示すデータを符号化し得る。ビデオデコーダ３０は、たとえば、ＶＰＳおよび／またはＶＰＳ  ＶＵＩからそのようなデータを復号するように構成され得る。
【０１２４】
[0136]いくつかの例では、タイル構成を示すデータは、いくつかのシンタックス要素を含み得る。たとえば、マルチレイヤビットストリーム中のビデオデータの各レイヤについて、ビデオエンコーダ２０は、レイヤ中の少なくとも１つのピクチャ中でタイルが使用可能であるかどうかを示す１つまたは複数のシンタックス要素を符号化し得る。さらに、タイルが使用可能である各レイヤについて、ビデオエンコーダ２０はまた、タイル境界を横切ってループフィルタ処理が適用されるかどうか、またはタイル境界を横切ったループフィルタ処理が使用不可であるかどうかを示す１つまたは複数のシンタックス要素を符号化し得る。このようにして、ビデオエンコーダ２０は、（たとえば、パラメータセットがＰＰＳなどのエントロピーコーディング同期を実際に使用可能にするよりもビットストリーム中で比較的前にＶＰＳが発生するので）マルチレイヤビットストリームのレイヤについてのタイル構成の早期指示（たとえば、タイルが使用可能であるかどうか、および／またはフィルタ処理がタイルを横切って適用されるかどうか）をＶＰＳを使用して与え得る。
【０１２５】
[0137]説明のための一例では、ビデオエンコーダ２０は、特定のレイヤの少なくとも１つのピクチャによって参照される各ＰＰＳについてtiles_enabled_flagの値が１に等しくなるかどうかを示すtiles_enabled_vps_flag[i]シンタックス要素を符号化し得る。追加または代替として、ビデオエンコーダ２０は、特定のレイヤの少なくとも１つのピクチャによって参照される各ＰＰＳについてloop_filter_across_tiles_enabled_flagの値が０に等しくなるかどうかを示すloop_filter_across_tiles_disabled_vps_flag[i]シンタックス要素を符号化し得る。ビデオデコーダ３０はまた、ＶＰＳからそのような情報を復号するように構成され得る。ビデオデコーダ３０は、いくつかの事例では、マルチレイヤビデオデータを復号するためのシステムリソースを割り当てるためにそのような情報を使用し得る。
【０１２６】
[0138]図７〜図１０に、本開示の技法と連携して使用され得る様々なマルチレイヤコーディング技法を示す。たとえば、本技法は、本明細書で説明する、テクスチャビューコンポーネント、深度ビューコンポーネント、ならびに様々な時間レイヤ、空間レイヤ、および品質レイヤに適用され得る。
【０１２７】
[0139]図７は、例示的なＭＶＣ予測パターンを示す概念図である。図７に、Ｈ．２６４／ＡＶＣおよびＭＶＣに関して説明するが、同様の予測パターンが、ＭＶ−ＨＥＶＣ、３Ｄ−ＨＥＶＣ（ＨＥＶＣに対するマルチビュープラス深度拡張）、およびスケーラブルビデオコーディングを使用したマルチビュー（たとえば、図８〜図１０に関して説明するスケーラブルビデオコーディングの例を参照）を含む、他のマルチビュービデオコーディング方式とともに使用され得ることを理解されたい。したがって、以下のマルチビューコーディングおよび／またはＭＶＣへの言及は、概してマルチビュービデオコーディングに適用し、Ｈ．２６４／ＭＶＣに限定されない。
【０１２８】
[0140]図７の例では、（ビューＩＤ「Ｓ０」〜「Ｓ７」を有する）８つのビューが示され、１２個の時間ロケーション（「Ｔ０」〜「Ｔ１１」）がビューごとに示されている。すなわち、図７中の各行はビューに対応し、各列は時間ロケーションを示す。
【０１２９】
[0141]ＭＶＣがＨ．２６４／ＡＶＣデコーダによって復号可能である、いわゆるベースビューを有し、また、ステレオビューペアがＭＶＣによってサポートされ得るが、ＭＶＣの利点は、ＭＶＣが、３Ｄビデオ入力として３つ以上のビューを使用し、複数のビューによって表されるこの３Ｄビデオを復号する例をサポートすることができることである。ＭＶＣデコーダを有するクライアントのレンダラは、複数のビューを用いて３Ｄビデオコンテンツを予想し得る。
【０１３０】
[0142]図７中のピクチャは、対応するピクチャがイントラコーディングされる（すなわち、Ｉフレームである）のか、一方向に（すなわち、Ｐフレームとして）インターコーディングされるのか、複数の方向に（すなわち、Ｂフレームとして）インターコーディングされるのかを指定する、文字を含む影付きブロックを使用して、図７中の各行と各列との交差部において示されている。概して、予測は矢印によって示され、ここで矢印の終点のピクチャは、予測参照のために矢印の始点のオブジェクトを使用する。たとえば、時間ロケーションＴ０におけるビューＳ２のＰフレームは、時間ロケーションＴ０におけるビューＳ０のＩフレームから予測される。
【０１３１】
[0143]シングルビュービデオ符号化の場合と同様に、マルチビュービデオコーディングビデオシーケンスのピクチャは、異なる時間ロケーションにあるピクチャに対して予測符号化され得る。たとえば、時間ロケーションＴ１におけるビューＳ０のｂフレームは、時間ロケーションＴ０におけるビューＳ０のＩフレームからそのｂフレームに向けられた矢印を有し、その矢印は、ｂフレームがＩフレームから予測されることを示す。しかしながら、加えて、マルチビュービデオの符号化のコンテキストにおいて、ピクチャはビュー間予測され得る。すなわち、ビューコンポーネントは、参照のために他のビュー中のビューコンポーネントを使用することができる。ＭＶＣでは、マルチビュービデオコーディングの一例として、別のビュー中のビューコンポーネントがインター予測参照であるかのように、ビュー間予測が実現される。潜在的なビュー間参照は、シーケンスパラメータセット（ＳＰＳ）ＭＶＣ拡張においてシグナリングされ、インター予測またはビュー間予測参照のフレキシブルな順序付けを可能にする参照ピクチャリスト構成プロセスによって変更され得る。
【０１３２】
[0144]ＭＶＣでは、同じアクセスユニット中の（すなわち、同じ時間インスタンスを有する）ピクチャ間でビュー間予測が可能になる。アクセスユニットは、概して、共通の時間インスタンスのためのすべてのビューコンポーネント（たとえば、すべてのネットワークアブストラクションレイヤ（ＮＡＬ）ユニット）を含むデータのユニットである。したがって、ＭＶＣでは、同じアクセスユニット中のピクチャ間でビュー間予測が許可される。非ベースビューのうちの１つの中のピクチャをコーディングするとき、ピクチャが異なるビュー中にあるが同じ時間インスタンス（たとえば、同じＰＯＣ値）をもつ場合（したがって、同じアクセスユニット中にある）、そのピクチャは参照ピクチャリストに追加され得る。ビュー間予測の参照ピクチャは、任意のインター予測の参照ピクチャと同様に、参照ピクチャリストの任意の位置に置かれ得る。
【０１３３】
[0145]図７は、ビュー間予測の様々な例を提供する。図７の例では、ビューＳ１のピクチャは、ビューＳ１の異なる時間ロケーションにあるピクチャから予測されるものとして、ならびに同じ時間ロケーションにあるビューＳ０およびＳ２のピクチャからビュー間予測されるものとして示されている。たとえば、時間位置Ｔ１にあるビューＳ１のｂフレームは、時間位置Ｔ０およびＴ２にあるビューＳ１のＢフレームの各々、ならびに時間位置Ｔ１にあるビューＳ０およびビューＳ２のｂフレームから予測される。
【０１３４】
[0146]図７の例では、大文字の「Ｂ」および小文字の「ｂ」は、異なる符号化方法ではなく、ピクチャ間の異なる階層関係を示すものとする。概して、大文字の「Ｂ」ピクチャは、小文字の「ｂ」ピクチャよりも予測階層が比較的高い。図７はまた、異なるレベルの陰影を使用して予測階層の差異を示し、より陰影の量が大きい（すなわち、比較的暗い）ピクチャは、より陰影が少ない（すなわち、比較的明るい）ピクチャよりも予測階層が高い。たとえば、図７のすべてのＩフレームは完全な陰影によって示されるが、Ｐフレームはいくぶん明るい陰影を有し、Ｂフレーム（および小文字のｂフレーム）は、互いに対して様々なレベルの陰影を有するが、ＰフレームおよびＩフレームの陰影よりも常に明るい。
【０１３５】
[0147]一般に、階層の比較的高いピクチャが、階層の比較的低いピクチャの復号中に参照ピクチャとして使用され得るように、予測階層の比較的高いピクチャは、階層の比較的低いピクチャを復号する前に復号されるべきであるという点で、予測階層はビュー順序インデックスに関係する。ビュー順序インデックスは、アクセスユニット中のビューコンポーネントの復号順序を示すインデックスである。このようにして、参照ピクチャとして使用されるピクチャは、その参照ピクチャを参照して符号化されたピクチャを復号する前に復号され得る。
【０１３６】
[0148]本開示の態様によれば、ビデオエンコーダ２０は、図７の例に示すビューＳ０〜Ｓ７など、マルチレイヤビットストリームのレイヤについてのタイル構成および／または並列処理構成を示すデータを符号化し得る。たとえば、ビデオエンコーダ２０は、図７の例に示すマルチビュービデオデータのビューのタイル構成を示すＶＰＳおよび／またはＶＰＳ  ＶＵＩのデータを符号化し得る。たとえば、ビデオエンコーダ２０は、図６に関して上記で図示し説明したタイルなどのタイルがマルチビュービデオデータの特定のビューのために使用可能であるかどうかを示すＶＰＳおよび／またはＶＰＳ  ＶＵＩのデータを符号化し得る。追加または代替として、ビデオエンコーダ２０は、タイルを横切ったループフィルタ処理が使用可能であるかまたは使用不可であるかを示すデータを符号化し得る。ビデオデコーダ３０は、たとえば、ＶＰＳおよび／またはＶＰＳ  ＶＵＩからそのようなデータを復号するように構成され得る。
【０１３７】
[0149]追加または代替として、ビデオエンコーダ２０は、図７の例に示すマルチビュービデオデータのビューの並列処理構成を示すＶＰＳおよび／またはＶＰＳ  ＶＵＩのデータを符号化し得る。たとえば、ビデオエンコーダ２０は、図４Ａ〜図５に関して上記で説明した同期がマルチビュービデオデータの特定のビューのピクチャのために使用可能であるかどうかを示すＶＰＳおよび／またはＶＰＳ  ＶＵＩのデータを符号化し得る。ビデオデコーダ３０は、たとえば、ＶＰＳおよび／またはＶＰＳ  ＶＵＩからそのようなデータを復号するように構成され得る。
【０１３８】
[0150]図８は、スケーラブルビデオコーディング（ＳＶＣ）のための様々なスケーラブルな次元を示す概念図である。この例では、スケーラビリティが３つの次元において使用可能である。時間次元では、７．５Ｈｚ、１５Ｈｚまたは３０Ｈｚをもつフレームレートが時間スケーラビリティ（Ｔ）によってサポートされ得る。空間スケーラビリティ（Ｓ）がサポートされるとき、ＱＣＩＦ、ＣＩＦ、および４ＣＩＦなどの様々な解像度が使用可能であり得る。特定の空間解像度およびフレームレートごとに、ピクチャ品質を改善するために信号対ノイズ（ＳＮＲ）（Ｑ）レイヤが追加され得る。
【０１３９】
[0151]ビデオコンテンツがそのようなスケーラブルな方法で符号化されると、たとえば、クライアントまたは送信チャネルに依存し得るアプリケーション要件に従って、実際の配信されたコンテンツを適応させるために、抽出器ツールが使用され得る。図８に示された例では、各体積、すなわち立方体は、同じフレームレート（時間レベル）、空間解像度およびＳＮＲレイヤをもつピクチャを含んでいる。それらの立方体（ピクチャ）を任意の次元で追加することによって、より良い表現が達成され得る。使用可能な２つ、３つまたはさらに多くのスケーラビリティがあるとき、複合スケーラビリティがサポートされ得る。
【０１４０】
[0152]ＳＶＣの仕様によれば、最も低い空間レイヤおよび品質レイヤを有するピクチャは、Ｈ．２６４／ＡＶＣと互換性があり、最低の時間レベルにあるピクチャは、より高い時間レベルにあるピクチャで強調され得る時間ベースレイヤを形成する。Ｈ．２６４／ＡＶＣ適合レイヤに加えて、空間スケーラビリティおよび／または品質スケーラビリティを与えるためにいくつかの空間および／またはＳＮＲエンハンスメントレイヤが追加され得る。ＳＮＲスケーラビリティは品質スケーラビリティと呼ばれることもある。各空間エンハンスメントレイヤまたはＳＮＲエンハンスメントレイヤ自体は、Ｈ．２６４／ＡＶＣ適合レイヤと同じ時間スケーラビリティ構造で、時間的にスケーラブルであり得る。１つの空間またはＳＮＲのエンハンスメントレイヤの場合、それが依存するより低いレイヤは、その特定の空間またはＳＮＲのエンハンスメントレイヤのベースレイヤとも呼ばれる。
【０１４１】
[0153]図９は、ＳＶＣコーディング構造の一例を示す概念図である。この例では、最低空間および品質レイヤをもつピクチャ（ＱＣＩＦ解像度をもつ、レイヤ０およびレイヤ１中のピクチャ）は、Ｈ．２６４／ＡＶＣに適合する。それらの中で、最低時間レベルのピクチャは、図９のレイヤ０に示すように、時間ベースレイヤを形成する。この時間ベースレイヤ（レイヤ０）は、より高い時間レベル（レイヤ１）のピクチャを用いて拡張され得る。Ｈ．２６４／ＡＶＣ互換レイヤに加えて、空間スケーラビリティおよび／または品質スケーラビリティを実現するために、いくつかの空間エンハンスメントレイヤおよび／またはＳＮＲエンハンスメントレイヤが追加され得る。たとえば、エンハンスメントレイヤは、レイヤ２と同じ解像度をもつＣＩＦ表現であり得る。この例では、レイヤ３はＳＮＲエンハンスメントレイヤである。この例に示すように、各空間またはＳＮＲエンハンスメントレイヤ自体は、Ｈ．２６４／ＡＶＣ適合レイヤと同じ時間スケーラビリティ構造で、時間的にスケーラブルになり得る。また、エンハンスメントレイヤは空間解像度とフレームレートの両方を向上させることができる。たとえば、レイヤ４は、フレームレートを１５Ｈｚから３０Ｈｚにさらに増加させる４ＣＩＦエンハンスメントレイヤを与える。
【０１４２】
[0154]図１０は、例示的なアクセスユニット（ＡＵ）を示す概念図である。各ＡＵは、ネットワークアブストラクションレイヤ（ＮＡＬ）ユニット内にカプセル化された、１つまたは複数のスライスを含む。レイヤごとのアクセスユニット当たりにゼロまたはそれ以上のＮＡＬユニットが存在し得る。１つのＡＵ内の１つのレイヤに対応するＮＡＬユニットのセットは、「レイヤコンポーネント」と呼ばれることがある。図１０の例は、図９のレイヤコンポーネントに対応するレイヤコンポーネントを描いている。図１０の例に示すように、同じ時間インスタンス中（すなわち、共通のＡＵの中）のコード化スライスは、ビットストリーム順序で連続しており、ＳＶＣのコンテキストにおける１つのアクセスユニットを形成する。それらのＳＶＣアクセスユニットは、次いで、表示順序とは異なり得る、たとえば、時間的予測関係によって決定され得る、復号順序に従う。
【０１４３】
[0155]Ｈ．２６４／ＡＶＣ（アドバンストビデオコーディング）のスケーラブルな拡張が、以下で説明される。ＳＶＣのいくつかの機能はＨ．２６４／ＡＶＣから引き継がれている。以前のスケーラブルな規格と比較して、Ｈ．２６４／ＡＶＣに対するＳＶＣ拡張の最大の利点のいくつか、すなわちレイヤ間予測およびシングルループ復号が、以下で考察される。
【０１４４】
[0156]Ｈ．２６４／ＡＶＣのＳＶＣ拡張は、シングルループ復号をサポートする。シングルループ復号の場合、各サポートされるレイヤは、単一の動き補償ループを用いて復号され得る。これを達成するために、レイヤ間イントラ予測の使用は、コロケートされた参照レイヤ信号がそのためにイントラコーディングされるエンハンスメントレイヤマクロブロックのためにのみ可能にされる。より高いレイヤをレイヤ間予測するために使用されるすべてのレイヤが、制約付きイントラ予測を使用してコーディングされることがさらに必要である。
【０１４５】
[0157]Ｈ．２６４／ＡＶＣのＳＶＣ拡張もまた、レイヤ間予測をサポートする。ＳＶＣは、テクスチャ、残差および動きに基づいて、空間スケーラビリティおよびＳＮＲスケーラビリティのためのレイヤ間予測を導入する。ＳＶＣにおける空間スケーラビリティは、２つのレイヤ間の任意の解像度比に一般化されている。ＳＮＲスケーラビリティは、粗粒度スケーラビリティ（ＣＧＳ）または中粒度スケーラビリティ（ＭＧＳ）によって実現され得る。ＳＶＣでは、２つの空間レイヤまたはＣＧＳレイヤは、（ＮＡＬユニットヘッダ中でシンタックス要素dependency_idによって示される）異なる依存性レイヤに属するが、２つのＭＧＳレイヤは同じ依存性レイヤ中にあり得る。１つの依存性レイヤは、品質エンハンスメントレイヤに対応する、０からより高い値までのシンタックス要素quality_idの値をもつ品質レイヤを含む。ＳＶＣでは、レイヤ間の冗長性を低減するために、レイヤ間予測方法が利用される。
【０１４６】
[0158]上述のように、Ｈ．２６４／ＡＶＣと同様に、ＨＥＶＣもまた、少なくとも時間スケーラビリティと、ＳＮＲスケーラビリティと、空間スケーラビリティとを提供する、ＳＨＶＣと現在呼ばれるスケーラブルビデオコーディング拡張を有する。ＳＨＶＣにおいて、レイヤ間テクスチャ予測を達成するために、参照レイヤの解像度がエンハンスメントレイヤの解像度より低いときに、参照レイヤの再構成されたサンプルが最初にアップサンプリングされる。ＳＮＲスケーラビリティの場合でさえ、参照レイヤサンプルは、より高いコーディング効率を得るために、レイヤ間予測のために使用される前にフィルタリングされ得る。アップサンプリングまたはレイヤ間フィルタリング処理が、レイヤコンポーネントまたは単にピクチャと呼ばれることもあるレイヤピクチャ全体について実行され得る。ＳＨＶＣでは、マルチループ復号構造が使用され得、ビデオデコーダ（ビデオデコーダ３０などの）は、異なるレイヤを並列に処理し得る。
【０１４７】
[0159]本開示の態様によれば、ビデオエンコーダ２０は、図８〜図１０の例に示すスケーラブルレイヤなど、マルチレイヤビットストリームのレイヤについてのタイル構成および／または並列処理構成を示すデータを符号化し得る。たとえば、ビデオエンコーダ２０は、図８〜図１０の例に示すスケーラブルビデオデータのレイヤについてのタイル構成を示すＶＰＳおよび／またはＶＰＳ  ＶＵＩのデータを符号化し得る。たとえば、ビデオエンコーダ２０は、図６に関して上記で図示し説明したタイルなどのタイルがスケーラブルビデオデータの特定のレイヤのために使用可能であるかどうかを示すＶＰＳおよび／またはＶＰＳ  ＶＵＩのデータを符号化し得る。追加または代替として、ビデオエンコーダ２０は、タイルを横切ったループフィルタ処理が使用可能であるかまたは使用不可であるかを示すデータを符号化し得る。ビデオデコーダ３０は、たとえば、ＶＰＳおよび／またはＶＰＳ  ＶＵＩからそのようなデータを復号するように構成され得る。
【０１４８】
[0160]追加または代替として、ビデオエンコーダ２０は、図８〜図１０に示すレイヤなど、スケーラブルビデオデータのレイヤについての並列処理構成を示すＶＰＳおよび／またはＶＰＳ  ＶＵＩのデータを符号化し得る。たとえば、ビデオエンコーダ２０は、図４Ａ〜図５に関して上記で説明した同期がスケーラブルビデオデータの特定のレイヤのピクチャのために使用可能であるかどうかを示すＶＰＳおよび／またはＶＰＳ  ＶＵＩのデータを符号化し得る。ビデオデコーダ３０は、たとえば、ＶＰＳおよび／またはＶＰＳ  ＶＵＩからそのようなデータを復号するように構成され得る。
【０１４９】
[0161]図１１に、本開示に一致する、ビデオデータを処理するための技法を示す。例としてビデオエンコーダ２０（図１および図２）に関して説明したが、本開示の技法は、様々な他のプロセッサを使用して実行され得る。さらに、図１１に示す特定のプロセスは例として提供される。他の例では、本開示の技法に一致するプロセスは、より多くの、より少数の、または代替の構成のステップを含み得る。
【０１５０】
[0162]ビデオエンコーダ２０は、マルチレイヤビデオデータのレイヤについてのタイル構成を決定し得る（１１０）。たとえば、ビデオエンコーダ２０は、ビデオデータのレイヤを符号化するときにタイルを使用すべきかどうかを決定し得る。ビデオエンコーダ２０はまた、ビデオデータのレイヤを符号化するときにタイル境界を横切ってループフィルタを適用すべきかどうかを決定し得る。いくつかの例では、ビデオエンコーダ２０は、レートひずみ分析に基づいてタイルを使用すべきかどうか、およびタイル境界を横切ってループフィルタを適用すべきかどうかを決定し得る。
【０１５１】
[0163]ビデオエンコーダ２０はまた、ビデオデータのレイヤをコーディングするための並列処理構成を決定し得る（１１２）。たとえば、ビデオエンコーダ２０は、図４Ａ〜図５に関して上記の例で説明したように、ＷＰＰを適用すべきかどうか、ならびにＷＰＰが実行される方法を決定し得る。ビデオエンコーダ２０は、次いで、決定されたタイル構成および並列処理構成を使用してマルチレイヤビデオデータのレイヤを符号化し得る（１１４）。たとえば、ビデオエンコーダ２０は、上記で説明したように、（レイヤ間予測を含む）ビデオデータのイントラ予測またはインター予測を実行し得る。
【０１５２】
[0164]本開示の態様によれば、ビデオエンコーダ２０はまた、タイル構成および並列処理構成を示すデータを符号化し得る（１１６）。たとえば、ビデオエンコーダ２０は、マルチレイヤビットストリームのレイヤについてのタイル構成およびマルチレイヤビットストリームのレイヤについての並列処理構成を示すＶＰＳおよび／またはＶＰＳ  ＶＵＩのデータを符号化し得る。説明のための一例では、ビデオエンコーダ２０は、（たとえば、上記の表１の例で示されるtiles_enabled_vps_flag[i]シンタックス要素など）レイヤ中の少なくとも１つのピクチャ中でタイルが使用可能であるかどうかを示す１つまたは複数のシンタックス要素を符号化し得る。さらに、タイルが使用可能である各レイヤについて、ビデオエンコーダ２０はまた、（たとえば、上記の表１の例で示されるloop_filter_across_tiles_disabled_vps_flag[i]シンタックス要素など）タイル境界を横切ってループフィルタ処理が適用されるかどうか、またはタイル境界を横切ったループフィルタ処理が使用不可であるかどうかを示す１つまたは複数のシンタックス要素を符号化し得る。ビデオエンコーダ２０はまた、並列処理構成を示す１つまたは複数のシンタックス要素を符号化し得る。たとえば、ビデオエンコーダ２０は、（たとえば、上記の表１の例で示されるentropy_coding_sync_enabled_vps_flag[i]シンタックス要素など）たとえば、ＷＰＰを介して、エントロピーコーディング同期が実行されるかどうかを示す１つまたは複数のシンタックス要素を符号化し得る。
【０１５３】
[0165]図１２に、本開示に一致する、ビデオデータを処理するための別の技法を示す。例としてビデオデコーダ３０（図１および図３）に関して説明したが、本開示の技法は、様々な他のプロセッサを使用して実行され得る。さらに、図１２に示す特定のプロセスは例示の目的で提供される。他の例では、本開示の技法に一致するプロセスは、より多くの、より少数の、または代替の構成のステップを含み得る。
【０１５４】
[0166]ビデオデコーダ３０はマルチレイヤビットストリームを受信し得る（１２０）。たとえば、ビデオデコーダ３０は、ＨＥＶＣ規格またはそれの拡張（たとえば、ＭＶ−ＨＥＶＣ、３Ｄ−ＨＥＶＣ、ＳＨＶＣなど）など特定のビデオコーディング規格に準拠するビットストリームを受信し得る。
【０１５５】
[0167]本開示の態様によれば、ビデオデコーダ３０は、タイル構成を示すデータを復号し得る（１２２）。ビデオデコーダ３０はまた、並列処理構成を示すデータを復号し得る（１２４）。たとえば、ビデオデコーダ３０は、マルチレイヤビットストリームのレイヤについてのタイル構成およびマルチレイヤビットストリームのレイヤについての並列処理構成を示すＶＰＳおよび／またはＶＰＳ  ＶＵＩのデータを復号し得る。説明のための一例では、ビデオデコーダ３０は、（たとえば、上記の表１の例で示されるtiles_enabled_vps_flag[i]シンタックス要素など）レイヤ中の少なくとも１つのピクチャ中でタイルが使用可能であるかどうかを示す１つまたは複数のシンタックス要素を復号し得る。さらに、タイルが使用可能である各レイヤについて、ビデオデコーダ３０はまた、（たとえば、上記の表１の例で示されるloop_filter_across_tiles_disabled_vps_flag[i]シンタックス要素など）タイル境界を横切ってループフィルタ処理が適用されるかどうか、またはタイル境界を横切ったループフィルタ処理が使用不可であるかどうかを示す１つまたは複数のシンタックス要素を復号し得る。いくつかの事例では、ビデオデコーダ３０はまた、並列処理構成を示す１つまたは複数のシンタックス要素を復号し得る。たとえば、ビデオデコーダ３０は、（たとえば、上記の表１の例で示されるentropy_coding_sync_enabled_vps_flag[i]シンタックス要素など）たとえば、ＷＰＰを介して、エントロピーコーディング同期が実行されるかどうかを示す１つまたは複数のシンタックス要素を復号し得る。
【０１５６】
[0168]いくつかの事例では、ビデオデコーダ３０は、次いで、マルチレイヤデータを復号するための復号リソースを割り当て得る（１２６）。たとえば、本開示の態様によれば、上記で説明した情報は、たとえば、ビデオデータのピクチャを復号するより前に、ビデオデータのタイル構成および／または並列処理構成の早期指示を与え得る。ビデオデコーダ３０は、特定の処理コアによって復号されるべき（可能である場合）ビデオデータの特定のタイルを割り当て得る。ビデオデコーダ３０は、リソースを割り当てるとき、ループフィルタ処理がタイル境界を横切って適用され得るかどうかを検討し得る。さらに、ビデオデコーダ３０は、特定のレイヤ内のピクチャの並列処理構成（たとえば、ＷＰＰ構成）に基づいてリソースを復号すると決定し得る。ビデオデコーダ３０は、次いで、たとえば、ビデオエンコーダ２０によって適用される逆プロセスを使用して、マルチレイヤビデオデータを復号し得る（１２８）。
【０１５７】
[0169]本開示のいくつかの態様が、説明のためにＨＥＶＣ規格およびＨＥＶＣ規格の拡張に関して説明した。ただし、本開示で説明する技法は、他の規格またはまだ開発されていないプロプライエタリなビデオコーディング処理を含む、他のビデオコーディング処理にとって有用であり得る。
【０１５８】
[0170]本開示で説明するビデオコーダは、ビデオエンコーダまたはビデオデコーダを指すことがある。同様に、ビデオコーディングユニットはビデオエンコーダまたはビデオデコーダを指すことがある。同様に、ビデオコーディングは、適宜、ビデオ符号化またはビデオ復号を指すことがある。
【０１５９】
[0171]例に応じて、本明細書で説明した技法のうちの任意のもののいくつかの動作または事象は、異なるシーケンスで実行され得、全体的に追加、結合、または除外され得ることが認識されるべきである（たとえば、説明する動作または事象のすべてが、この技法の実施のために必要であるとは限らない）。その上、いくつかの例では、動作または事象は、たとえば、マルチスレッドの処理、割込み処理、または多数のプロセッサを用いて、連続的ではなく同時に実行され得る。
【０１６０】
[0172]一例では、ビデオデコーダ３０は、ビデオデータに対応する１つまたは複数のシンタックス要素をパースするように構成され得、ここにおいて、１つまたは複数のシンタックス要素は、タイル構成、ループフィルタ構成、および並列処理構成のうちの１つまたは複数を示し、１つまたは複数のシンタックス要素に従ってビデオデータの並列復号を実行する。ビデオデコーダ３０は、ビデオパラメータセット中で１つまたは複数のシンタックス要素を受信するように構成され得る。
【０１６１】
[0173]本開示の一例では、１つまたは複数のシンタックス要素は、ビデオデータの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのタイル構成を示すtiles_enabled_vps_flagと、ビデオデータの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのループフィルタ構成を示すloop_filter_across_tiles_disabled_vps_flagと、ビデオデータの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての並列処理構成を示すentropy_coding_sync_enabled_vps_flagとを含む。
【０１６２】
[0174]本開示の別の例では、１つまたは複数のシンタックス要素は、parallel_tools_vps_idcシンタックス要素を含み、parallel_tools_vps_idcシンタックス要素は、ビデオパラメータセットを参照するビデオデータの各レイヤについてのタイル構成と並列処理構成との両方を示す。
【０１６３】
[0175]本開示の別の例では、１つまたは複数のシンタックス要素は、parallel_tools_vps_idcシンタックス要素を含み、parallel_tools_vps_idcシンタックス要素は、ビデオデータの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのタイル構成と並列処理構成との両方を示す。
【０１６４】
[0176]本開示の別の例では、１つまたは複数のシンタックス要素は、tile_entropy_sync_coding_not_mixed_flagとloopfilter_across_tile_boundary_not_mixedフラグとを含み、ここにおいて、tile_entropy_sync_coding_not_mixed_flagは、ビデオデータの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのタイル構成および並列処理構成を示し、ここにおいて、loopfilter_across_tile_boundary_not_mixedフラグは、ビデオデータの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのループフィルタ構成を示す。
【０１６５】
[0177]本開示の別の例では、ビデオエンコーダ２０は、ビデオデータに対応する１つまたは複数のシンタックス要素を決定するように構成され得、ここにおいて、１つまたは複数のシンタックス要素は、タイル構成、ループフィルタ構成、および並列処理構成のうちの１つまたは複数を示し、１つまたは複数のシンタックス要素に従ってビデオデータの並列符号化を実行し、１つまたは複数のシンタックス要素をシグナリングする。ビデオエンコーダ２０は、ビデオパラメータセット中で１つまたは複数のシンタックス要素をシグナリングし得る。
【０１６６】
[0178]本開示の一例では、１つまたは複数のシンタックス要素は、ビデオデータの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのタイル構成を示すtiles_enabled_vps_flagと、ビデオデータの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのループフィルタ構成を示すloop_filter_across_tiles_disabled_vps_flagと、ビデオデータの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての並列処理構成を示すentropy_coding_sync_enabled_vps_flagとを含む。
【０１６７】
[0179]本開示の別の例では、１つまたは複数のシンタックス要素は、parallel_tools_vps_idcシンタックス要素を含み、parallel_tools_vps_idcシンタックス要素は、ビデオパラメータセットを参照するビデオデータの各レイヤについてのタイル構成と並列処理構成との両方を示す。
【０１６８】
[0180]本開示の別の例では、１つまたは複数のシンタックス要素は、parallel_tools_vps_idcシンタックス要素を含み、parallel_tools_vps_idcシンタックス要素は、ビデオデータの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのタイル構成と並列処理構成との両方を示す。
【０１６９】
[0181]本開示の別の例では、１つまたは複数のシンタックス要素は、tile_entropy_sync_coding_not_mixed_flagとloopfilter_across_tile_boundary_not_mixedフラグとを含み、ここにおいて、tile_entropy_sync_coding_not_mixed_flagは、ビデオデータの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのタイル構成および並列処理構成を示し、ここにおいて、loopfilter_across_tile_boundary_not_mixedフラグは、ビデオデータの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのループフィルタ構成を示す。
【０１７０】
[0182]１つまたは複数の例では、説明する機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実施され得る。ソフトウェアで実装される場合、機能は、１つもしくは複数の命令もしくはコードとしてコンピュータ可読媒体上に記憶され、またはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体などの有形媒体に対応するコンピュータ可読記憶媒体、または、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を容易にする任意の媒体を含む通信媒体を含み得る。このようにして、コンピュータ可読媒体は、一般に、（１）非一時的である有形のコンピュータ可読記憶媒体または（２）信号もしくは搬送波などの通信媒体に相当し得る。データ記憶媒体は、本開示で説明する技法の実装のための命令、コードおよび／またはデータ構造を取り出すために１つもしくは複数のコンピュータまたは１つもしくは複数のプロセッサによってアクセスされ得る、任意の利用可能な媒体であり得る。コンピュータプログラム製品は、コンピュータ可読媒体を含み得る。
【０１７１】
[0183]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭもしくは他の光ディスクストレージ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、フラッシュメモリ、または命令もしくはデータ構造の形態で所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る任意の他の媒体を備え得る。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、ウェブサイト、サーバ、または他の遠隔ソースから、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、マイクロ波などのワイヤレス技術は、媒体の定義に含まれる。ただし、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク（disk）およびディスク（disc）は、コンパクトディスク（ＣＤ）と、レーザーディスク（登録商標）と、光ディスクと、デジタル多用途ディスク（ＤＶＤ）と、フロッピー（登録商標）ディスクと、Ｂｌｕ−ｒａｙディスクとを含み、通常、ディスク（disk）は磁気的にデータを再生するが、ディスク（disc）はレーザーを用いてデータを光学的に再生する。上記の組合せも、コンピュータ可読媒体の範囲内に含まれるべきである。
【０１７２】
[0184]命令は、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、あるいは他の等価な集積論理回路またはディスクリート論理回路など、１つまたは複数のプロセッサによって実行され得る。したがって、本明細書で使用される「プロセッサ」という用語は、前述の構造、または、本明細書で説明する技法の実装に好適な他の構造のいずれかを指し得る。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のハードウェアモジュールおよび／またはソフトウェアモジュール内に与えられるか、あるいは複合コーデックに組み込まれ得る。また、本技法は、１つまたは複数の回路または論理要素で十分に実装され得る。
【０１７３】
[0185]本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置で実装され得る。本開示では、開示する技法を実行するように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットを、必ずしも異なるハードウェアユニットによって実現する必要があるとは限らない。そうではなく、上記で説明したように、様々なユニットは、コーデックハードウェアユニット中で組み合わせられるか、または上記で説明した１つもしくは複数のプロセッサを含む、適切なソフトウェアおよび／あるいはファームウェアとともに相互動作可能なハードウェアユニットの集合によって提供され得る。
【０１７４】
[0186]様々な例が記載されている。これらおよび他の例は、添付の特許請求の範囲内に入る。
以下に、出願当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
ビデオデータを復号する方法であって、
マルチレイヤビットストリームのビデオパラメータセット（ＶＰＳ）から、前記マルチレイヤビットストリームのレイヤについてのタイル構成または前記マルチレイヤビットストリームのレイヤについての並列処理構成のうちの少なくとも１つを示すデータを復号することと、
前記ＶＰＳから復号された前記データに従って、前記マルチレイヤビットストリームを復号することと
を備える方法。
［Ｃ２］
前記タイル構成を示す前記データを復号することが、前記マルチレイヤビットストリームのレイヤごとに、前記マルチレイヤビットストリームの前記それぞれのレイヤのためにタイルが使用可能であるかどうかを示すデータを復号することを備える、上記Ｃ１に記載の方法。
［Ｃ３］
前記タイル構成を示す前記データを復号することが、前記それぞれのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記タイル構成を示すtiles_enabled_vps_flagシンタックス要素を復号することをさらに備える、上記Ｃ２に記載の方法。
［Ｃ４］
前記タイル構成を示す前記データを復号することが、前記それぞれのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのループフィルタ構成を示すloop_filter_across_tiles_disabled_vps_flagシンタックス要素を復号することをさらに備える、上記Ｃ３に記載の方法。
［Ｃ５］
前記並列処理構成を示す前記データを復号することが、前記マルチレイヤビットストリームのレイヤごとに、前記マルチレイヤビットストリームの前記それぞれのレイヤについてエントロピーコーディング同期が実行されるかどうかを示すデータを復号することを備える、上記Ｃ１に記載の方法。
［Ｃ６］
前記並列処理構成を示す前記データを復号することが、前記それぞれのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記並列処理構成を示すentropy_coding_sync_enabled_vps_flagシンタックス要素を復号することをさらに備える、上記Ｃ５に記載の方法。
［Ｃ７］
前記タイル構成と前記並列処理構成とを示す前記データが、parallel_tools_vps_idcシンタックス要素を含み、前記parallel_tools_vps_idcシンタックス要素が、前記ビデオデータの各レイヤについての前記タイル構成と前記並列処理構成との両方を示す、上記Ｃ１に記載の方法。
［Ｃ８］
前記タイル構成と前記並列処理構成とを示す前記データが、tile_entropy_sync_coding_not_mixed_flagシンタックス要素とloopfilter_across_tile_boundary_not_mixed_flagシンタックス要素とを含み、前記tile_entropy_sync_coding_not_mixed_flagシンタックス要素が、ビデオデータの各レイヤについての前記タイル構成と前記並列処理構成とを示し、前記loopfilter_across_tile_boundary_not_mixed_flagシンタックス要素が、ビデオデータの各レイヤについての前記ループフィルタ構成を示す、上記Ｃ１に記載の方法。
［Ｃ９］
前記ＶＰＳから復号された前記データに基づいてビデオデコーダの復号リソースを割り当てることをさらに備える、上記Ｃ１に記載の方法。
［Ｃ１０］
前記ＶＰＳを復号することが、前記マルチレイヤビットストリームのピクチャのシーケンスより前に前記ＶＰＳを復号することを備える、ここにおいて、前記マルチレイヤビットストリームを復号することが、前記ＶＰＳから復号された前記データに従ってピクチャの前記シーケンスを復号することを備える、上記Ｃ１に記載の方法。
［Ｃ１１］
ビデオデータを符号化する方法であって、
マルチレイヤビットストリームのビデオパラメータセット（ＶＰＳ）中で、前記マルチレイヤビットストリームのレイヤについてのタイル構成または前記マルチレイヤビットストリームのレイヤについての並列処理構成のうちの少なくとも１つを示すデータを符号化することと、
前記マルチレイヤビットストリームの前記ＶＰＳを符号化することを含む、前記マルチレイヤビットストリームを符号化することと
を備える方法。
［Ｃ１２］
前記タイル構成を示す前記データを符号化することが、前記マルチレイヤビットストリームのレイヤごとに、前記マルチレイヤビットストリームの前記それぞれのレイヤのためにタイルが使用可能であるかどうかを示すデータを符号化することを備える、上記Ｃ１１に記載の方法。
［Ｃ１３］
前記タイル構成を示す前記データを符号化することが、前記それぞれのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記タイル構成を示すtiles_enabled_vps_flagシンタックス要素を符号化することをさらに備える、上記Ｃ１２に記載の方法。
［Ｃ１４］
前記タイル構成を示す前記データを符号化することが、前記それぞれのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのループフィルタ構成を示すloop_filter_across_tiles_disabled_vps_flagシンタックス要素を符号化することをさらに備える、上記Ｃ１３に記載の方法。
［Ｃ１５］
前記並列処理構成を示す前記データを符号化することが、前記マルチレイヤビットストリームのレイヤごとに、前記マルチレイヤビットストリームの前記それぞれのレイヤについてエントロピーコーディング同期が実行されるかどうかを示すデータを符号化することを備える、上記Ｃ１１に記載の方法。
［Ｃ１６］
前記並列処理構成を示す前記データを符号化することが、前記それぞれのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記並列処理構成を示すentropy_coding_sync_enabled_vps_flagシンタックス要素を符号化することをさらに備える、上記Ｃ１５に記載の方法。
［Ｃ１７］
前記タイル構成および前記並列処理構成を示す前記データが、parallel_tools_vps_idcシンタックス要素を含み、前記parallel_tools_vps_idcシンタックス要素が、前記ビデオデータの各レイヤについての前記タイル構成と前記並列処理構成との両方を示す、上記Ｃ１１に記載の方法。
［Ｃ１８］
前記タイル構成および前記並列処理構成を示す前記データが、tile_entropy_sync_coding_not_mixed_flagシンタックス要素とloopfilter_across_tile_boundary_not_mixed_flagシンタックス要素とを含み、前記tile_entropy_sync_coding_not_mixed_flagシンタックス要素が、ビデオデータの各レイヤについての前記タイル構成と前記並列処理構成とを示し、前記loopfilter_across_tile_boundary_not_mixed_flagシンタックス要素が、ビデオデータの各レイヤについての前記ループフィルタ構成を示す、上記Ｃ１１に記載の方法。
［Ｃ１９］
前記ＶＰＳの前記データに従ってビデオエンコーダの符号化リソースを割り当てることをさらに備える、上記Ｃ１１に記載の方法。
［Ｃ２０］
前記ＶＰＳを符号化することが、前記マルチレイヤビットストリームのピクチャのシーケンスを符号化するより前に前記ＶＰＳを符号化することを備え、前記マルチレイヤビットストリームを符号化することが、ピクチャの前記シーケンスを符号化することを備える、上記Ｃ１１に記載の方法。
［Ｃ２１］
ビデオデータを処理する装置であって、
マルチレイヤビデオデータを記憶するメモリと、
ビデオコーダであって、
前記マルチレイヤビデオデータのレイヤについてのタイル構成または前記マルチレイヤビデオデータのレイヤについての並列処理構成のうちの少なくとも１つを示すデータを処理することと、ここにおいて、前記データが、前記マルチレイヤビデオデータを含むビットストリームのビデオパラメータセット（ＶＰＳ）に関連付けられる、
前記ＶＰＳの前記データに従って、前記マルチレイヤビデオデータを処理することと
を行うように構成されたビデオコーダと
を備える装置。
［Ｃ２２］
前記タイル構成を示す前記データを処理するために、前記ビデオコーダが、前記マルチレイヤビデオデータのレイヤごとに、前記マルチレイヤビデオデータの前記それぞれのレイヤのためにタイルが使用可能であるかどうかを示すデータを処理するように構成された、上記Ｃ２１に記載の装置。
［Ｃ２３］
前記タイル構成を示す前記データを処理するために、前記ビデオコーダが、前記それぞれのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記タイル構成を示すtiles_enabled_vps_flagシンタックス要素を処理するようにさらに構成された、上記Ｃ２２に記載の装置。
［Ｃ２４］
前記タイル構成を示す前記データを処理するために、前記ビデオコーダが、前記それぞれのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのループフィルタ構成を示すloop_filter_across_tiles_disabled_vps_flagシンタックス要素を処理するようにさらに構成された、上記Ｃ２３に記載の装置。
［Ｃ２５］
前記並列処理構成を示す前記データを処理するために、前記ビデオコーダが、前記マルチレイヤビデオデータのレイヤごとに、前記マルチレイヤビデオデータの前記それぞれのレイヤについてエントロピーコーディング同期が実行されるかどうかを示すデータを処理するように構成された、上記Ｃ２１に記載の装置。
［Ｃ２６］
前記並列処理構成を示す前記データを処理するために、前記ビデオコーダが、前記それぞれのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記並列処理構成を示すentropy_coding_sync_enabled_vps_flagシンタックス要素を処理するようにさらに構成された、上記Ｃ２５に記載の装置。
［Ｃ２７］
前記ビデオデータを処理するために、前記ビデオコーダは、
前記マルチレイヤビデオデータの少なくとも１つのレイヤについての残差ビデオデータを決定することと、
前記残差データを変換することと、
前記ビットストリーム中の前記変換された残差データを表すデータを符号化することと
を備える、前記ビデオデータを符号化するように構成された、上記Ｃ２１に記載の装置。
［Ｃ２８］
前記ビデオデータを処理するために、前記ビデオコーダは、
前記ビットストリームの前記ＶＰＳをパースすることと、
前記ＶＰＳをパースした後に前記ビットストリームから、前記マルチレイヤビットストリームの少なくとも１つのレイヤについての残差ビデオデータを表すデータをパースすることと、
前記残差データを逆変換することと、
前記逆変換された残差データに基づいてビデオデータの前記少なくとも１つのレイヤを再構成することと
を備える、前記ビデオデータを復号するように構成された、上記Ｃ２１に記載の装置。
［Ｃ２９］
前記マルチレイヤビデオデータの少なくとも１つのレイヤを提示するように構成されたディスプレイデバイスをさらに備える、上記Ｃ２１に記載の装置。
［Ｃ３０］
前記マルチレイヤビデオデータを受信するように構成されたワイヤレスモデムをさらに備える、上記Ｃ２１に記載の装置。
［Ｃ３１］
ビデオデータを実行する装置であって、
マルチレイヤビットストリームのレイヤについてのタイル構成または前記マルチレイヤビットストリームのレイヤについての並列処理構成のうちの少なくとも１つを示すデータを処理するための手段と、ここにおいて、前記データが、前記マルチレイヤビットストリームのビデオパラメータセット（ＶＰＳ）に関連付けられる、
前記ＶＰＳの前記データに従って、前記マルチレイヤビットストリームを処理するための手段と
を備える装置。
［Ｃ３２］
前記タイル構成を示す前記データを処理するための前記手段が、前記マルチレイヤビットストリームのレイヤごとに、前記マルチレイヤビットストリームの前記それぞれのレイヤのためにタイルが使用可能であるかどうかを示すデータを処理するための手段を備える、上記Ｃ３１に記載の装置。
［Ｃ３３］
前記タイル構成を示す前記データを処理するための前記手段が、前記それぞれのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記タイル構成を示すtiles_enabled_vps_flagシンタックス要素を処理するための手段をさらに備える、上記Ｃ３２に記載の装置。
［Ｃ３４］
前記タイル構成を示す前記データを処理するための前記手段が、前記それぞれのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのループフィルタ構成を示すloop_filter_across_tiles_disabled_vps_flagシンタックス要素を処理するための手段をさらに備える、上記Ｃ３３に記載の装置。
［Ｃ３５］
前記並列処理構成を示す前記データを処理するための前記手段が、前記マルチレイヤビットストリームのレイヤごとに、前記マルチレイヤビットストリームの前記それぞれのレイヤについてエントロピーコーディング同期が実行されるかどうかを示すデータを処理するための手段を備える、上記Ｃ３１に記載の装置。
［Ｃ３６］
前記並列処理構成を示す前記データを処理するための前記手段が、前記それぞれのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記並列処理構成を示すentropy_coding_sync_enabled_vps_flagシンタックス要素を処理するための手段をさらに備える、上記Ｃ３５に記載の装置。
［Ｃ３７］
実行されたとき、１つまたは複数のプロセッサに、
マルチレイヤビットストリームのレイヤについてのタイル構成または前記マルチレイヤビットストリームのレイヤについての並列処理構成のうちの少なくとも１つを示すデータを処理することと、ここにおいて、前記データが、前記マルチレイヤビットストリームのビデオパラメータセット（ＶＰＳ）に関連付けられる、
前記ＶＰＳの前記データに従って、前記マルチレイヤビットストリームを処理することと
を行わせる命令を記憶した非一時的コンピュータ可読記憶媒体。
［Ｃ３８］
前記タイル構成を示す前記データを処理するために、前記命令が、前記マルチレイヤビットストリームのレイヤごとに、前記マルチレイヤビットストリームの前記それぞれのレイヤのためにタイルが使用可能であるかどうかを示すデータを処理することを前記１つまたは複数のプロセッサに行わせる、上記Ｃ３７に記載の非一時的コンピュータ可読記憶媒体。
［Ｃ３９］
前記タイル構成を示す前記データを処理するために、前記命令が、前記それぞれのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記タイル構成を示すtiles_enabled_vps_flagシンタックス要素を処理することを前記１つまたは複数のプロセッサにさらに行わせる、上記Ｃ３８に記載の非一時的コンピュータ可読記憶媒体。
［Ｃ４０］
前記タイル構成を示す前記データを処理するために、前記命令が、前記それぞれのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについてのループフィルタ構成を示すloop_filter_across_tiles_disabled_vps_flagシンタックス要素を処理することを前記１つまたは複数のプロセッサにさらに行わせる、上記Ｃ３９に記載の非一時的コンピュータ可読記憶媒体。
［Ｃ４１］
前記並列処理構成を示す前記データを処理するために、前記命令が、前記マルチレイヤビットストリームのレイヤごとに、前記マルチレイヤビットストリームの前記それぞれのレイヤについてエントロピーコーディング同期が実行されるかどうかを示すデータを処理することを前記１つまたは複数のプロセッサに行わせる、上記Ｃ３７に記載の非一時的コンピュータ可読記憶媒体。
［Ｃ４２］
前記並列処理構成を示す前記データを処理するために、前記命令が、前記それぞれのレイヤの少なくとも１つのピクチャによって参照される各ピクチャパラメータセットについての前記並列処理構成を示すentropy_coding_sync_enabled_vps_flagシンタックス要素を処理することを前記１つまたは複数のプロセッサにさらに行わせる、上記Ｃ４１に記載の非一時的コンピュータ可読記憶媒体。
【図１】
0006461982.tif 000006
【図２】
0006461982.tif 000007
【図３】
0006461982.tif 000008
【図４Ａ】
0006461982.tif 000009
【図４Ｂ】
0006461982.tif 000010
【図５】
0006461982.tif 000011
【図６】
0006461982.tif 000012
【図７】
0006461982.tif 000013
【図８】
0006461982.tif 000014
【図９】
0006461982.tif 000015
【図１０】
0006461982.tif 000016
【図１１】
0006461982.tif 000017
【図１２】
0006461982.tif 000018