(57)【特許請求の範囲】
【請求項１】
ビデオデータの複数のレイヤを有するビットストリームを符号化するための方法であって、ビデオデータの前記複数のレイヤはベースレイヤを含み、前記方法は、
前記ビットストリーム内に、複数の出力レイヤセット（ＯＬＳ）を示す１つまたは複数のシンタックス要素を生成することと、各ＯＬＳは前記複数のレイヤのうちの１つまたは複数のレイヤを有し、前記１つまたは複数のシンタックス要素は、前記複数のＯＬＳの各ＯＬＳについてのプロファイル、ティア、およびレベル（ＰＴＬ）情報をさらに示し、
ビデオパラメータセット（ＶＰＳ）中に前記１つまたは複数のシンタックス要素を含む前記複数のレイヤを符号化することと、
を備え、
第０のＯＬＳについてのＰＴＬ情報は、前記ＶＰＳのＶＰＳ拡張部分中に含まれる、方法。
【請求項２】
ビデオデータの複数のレイヤを有するビットストリームを符号化するためのデバイスであって、ビデオデータの前記複数のレイヤはベースレイヤを含み、前記デバイスは、
ビデオデータの前記複数のレイヤを記憶するように構成されたメモリと、
前記メモリに動作可能に結合され、
前記ビットストリーム内に、複数の出力レイヤセット（ＯＬＳ）を示す１つまたは複数のシンタックス要素を生成することと、各ＯＬＳは前記複数のレイヤのうちの１つまたは複数のレイヤを有し、前記１つまたは複数のシンタックス要素は、前記複数のＯＬＳの各ＯＬＳについてのプロファイル、ティア、およびレベル（ＰＴＬ）情報をさらに示し、
ビデオパラメータセット（ＶＰＳ）中に前記１つまたは複数のシンタックス要素を含む前記複数のレイヤを符号化することと、
を行うように構成された少なくとも１つのプロセッサと、
を備え、
前記少なくとも１つのプロセッサは、前記ＶＰＳのＶＰＳ拡張部分中に第０のＯＬＳについてのＰＴＬ情報を示すようにさらに構成された、デバイス。
【請求項３】
ビデオデータを復号するための方法であって、
ビデオデータの複数のレイヤを有するビットストリームを受信することと、ビデオデータの前記複数のレイヤはベースレイヤとビデオパラメータセット（ＶＰＳ）とを含み、前記ＶＰＳは、複数の出力レイヤセット（ＯＬＳ）と、前記複数のＯＬＳの各ＯＬＳについてのプロファイル、ティア、およびレベル（ＰＴＬ）情報とを示し、
前記１つまたは複数のレイヤから１つのＯＬＳをターゲットＯＬＳとして選択することと、
前記ＶＰＳ中でシグナリングされるＰＴＬ情報に基づいて、前記ターゲットＯＬＳを復号することと、
を備え、
第０のＯＬＳについてのＰＴＬ情報は、前記ＶＰＳのＶＰＳ拡張部分中に含まれる、方法。
【請求項４】
前記ターゲットＯＬＳは前記第０のＯＬＳである、請求項３に記載の方法。
【請求項５】
ビデオデータを復号するためのデバイスであって、
ビデオデータの複数のレイヤを有するビットストリームを記憶するように構成されたメモリと、ビデオデータの前記複数のレイヤはベースレイヤとビデオパラメータセット（ＶＰＳ）とを含み、前記ＶＰＳは、複数の出力レイヤセット（ＯＬＳ）と、前記複数のＯＬＳの各ＯＬＳについてのプロファイル、ティア、およびレベル（ＰＴＬ）情報とを示し、
前記メモリに動作可能に結合され、
前記１つまたは複数のレイヤから１つのＯＬＳをターゲットＯＬＳとして選択することと、
前記ＶＰＳ中でシグナリングされるＰＴＬ情報に基づいて、前記ターゲットＯＬＳを復号することと、
を行うように構成された少なくとも１つのプロセッサと、
を備え、
第０のＯＬＳについてのＰＴＬ情報は、前記ＶＰＳのＶＰＳ拡張部分中に含まれる、デバイス。
【請求項６】
前記ターゲットＯＬＳは前記第０のＯＬＳである、請求項５に記載のデバイス。
【発明の詳細な説明】
【技術分野】
【０００１】
本出願は、たとえば、ビデオエンコーダおよびビデオデコーダにおける、ビデオコーディングおよび圧縮の分野に関する。詳細には、本出願は、スケーラブルビデオコーディング（ＳＶＣ）に関連し、それは、アドバンストビデオコーディング（ＡＶＣ）のためのＳＶＣと、高効率ビデオコーディング（ＨＥＶＣ）への３Ｄおよびマルチビュー拡張に加えて、スケーラブルＨＥＶＣ（ＳＨＶＣ）とも呼ばれるＨＥＶＣのためのＳＶＣとを含む。
【背景技術】
【０００２】
[0002]デジタルビデオ能力は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダー、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラー電話または衛星無線電話、いわゆる「スマートフォン」、ビデオ遠隔会議デバイス、ビデオストリーミングデバイスなどを含む、広範囲のデバイスに組み込まれ得る。デジタルビデオデバイスは、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４、Ｐａｒｔ  １０、アドバンストビデオコーディング（ＡＶＣ）、現在開発中の（ＨＥＶＣ規格、およびそのような規格の拡張によって定義された規格に記載されたものなどのビデオコーディング処理を実装する。これらのビデオデバイスは、そのようなタイプのビデオコーディングを実装することによってデジタルビデオ情報をより効率的に送信、受信、符号化、復号、および／または記憶し得る。
【０００３】
[0003]ビデオコーディング方法は、ビデオシーケンスに固有の冗長性を低減または除去するために空間的（ピクチャ内）予測および／または時間的（ピクチャ間）予測を含む。ブロックベースのビデオコーディングでは、ビデオスライス（たとえば、ビデオフレームまたはビデオフレームの一部分）は、ツリーブロック、コーディングユニット（ＣＵ）および／またはコーディングノードと呼ばれることもあるビデオブロックに区分され得る。ピクチャのイントラコーディングされた（Ｉ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間的予測を使用して符号化される。ピクチャのインターコーディングされた（ＰまたはＢ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間的予測または他の参照ピクチャ中の参照サンプルに対する時間的予測を使用し得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームと呼ばれることがある。
【０００４】
[0004]空間的予測または時間的予測は、コーディングされるべきブロックのための予測ブロックを生じる。残差データは、コーディングされるべき元のブロックと予測ブロックとの間のピクセル差分を表す。インターコーディングされたブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトルと、コーディングされたブロックと予測ブロックとの間の差分を示す残差データとに従って符号化される。イントラコーディングされるブロックは、イントラコーディングモードと残差データとに従って符号化される。さらなる圧縮のために、残差データは、ピクセル領域から変換領域に変換され、残差変換係数が生じ得、その残差変換係数は、次いで量子化され得る。最初に２次元アレイで構成される量子化された変換係数は、変換係数の１次元ベクトルを生成するために走査され得、なお一層の圧縮を達成するためにエントロピーコーディングが適用され得る。
【０００５】
[0005]マルチビューコーディングビットストリームは、たとえば、複数の視点（perspectives）からのビューを符号化することによって生成され得る。マルチビューコーディング態様を利用するいくつかの３次元（３Ｄ）ビデオ規格が開発されている。たとえば、３Ｄビデオをサポートするために、異なるビューが左眼ビューと右眼ビューとを送信し得る。代替的に、いくつかの３Ｄビデオコーディングプロセスは、いわゆるマルチビュー＋深度コーディングを適用し得る。マルチビュー＋深度コーディングでは、３Ｄビデオビットストリームは、テクスチャビュー成分だけでなく、深度ビュー成分をも含んでいることがある。たとえば、各ビューは、１つのテクスチャビュー成分と１つの深度ビュー成分とを備え得る。
【発明の概要】
【０００６】
[0006]概して、本開示では、ビデオコーディングに、およびより詳細にはＨＥＶＣに関係する方法およびシステムについて説明する。現在のＳＨＶＣおよびＭＶ−ＨＥＶＣ規格では、アクティブビデオパラメータセット（ＶＰＳ：video parameter set）によって指定される第０の出力レイヤセット（ＯＬＳ：output layer set）は、ビデオデータのベースレイヤのみを含んでいるＯＬＳを指す。しかしながら、ビットストリーム全体がベースレイヤのみを含んでいるのでない限り、第０のＯＬＳのティアおよびレベル情報はシグナリングされない。これは、ビデオコーディングシステムがＨＥＶＣにおいて最適なレベルで動作するのを妨げる。
【０００７】
[0007]本開示のシステム、方法、およびデバイスは、いくつかの発明的態様をそれぞれ有し、それらの態様のどの１つも、本明細書で開示する望ましい属性を単独で担うものではない。
【０００８】
[0008]本開示の一態様は、ビデオデータの複数のレイヤを有するビットストリームを符号化するための方法を提供し、ビデオデータの複数のレイヤはベースレイヤを含む。本方法は、ビットストリーム内で複数の出力レイヤセット（ＯＬＳ）を示す１つまたは複数のシンタックス要素を生成することを含むことができる。各ＯＬＳは、複数のレイヤのうちの１つまたは複数のレイヤを有することができる。シンタックス要素はまた、複数のＯＬＳの各ＯＬＳについてのプロファイル、ティア、およびレベル（ＰＴＬ：profile, tier, and level）情報を示すことができる。本方法はまた、ビデオパラメータセット（ＶＰＳ）中の１つまたは複数のシンタックス要素を符号化することを含む、複数のレイヤを符号化することを含むことができる。
【０００９】
[0009]本開示の別の態様は、ビデオデータの複数のレイヤを有するビットストリームを符号化するためのデバイスを提供し、ビデオデータの複数のレイヤはベースレイヤを含む。デバイスは、ビデオデータの複数のレイヤを記憶するように構成されたメモリを有することができる。デバイスはまた、メモリに動作可能に結合された少なくとも１つのプロセッサを有することができる。少なくとも１つのプロセッサは、ビットストリーム内で複数の出力レイヤセット（ＯＬＳ）を示す１つまたは複数のシンタックス要素を生成することができる。各ＯＬＳは、複数のレイヤのうちの１つまたは複数のレイヤを有することができる。シンタックス要素はまた、複数のＯＬＳの各ＯＬＳについてのプロファイル、ティア、およびレベル（ＰＴＬ）情報を示すことができる。少なくとも１つのプロセッサはまた、ビデオパラメータセット（ＶＰＳ）中の１つまたは複数のシンタックス要素を符号化することを含めて、複数のレイヤを符号化することができる。
【００１０】
[0010]本開示の別の態様は、ビデオデータを復号するための方法を提供する。本方法は、ビデオデータの複数のレイヤを有するビットストリームを受信することを含むことができる。ビデオデータの複数のレイヤは、ベースレイヤとビデオパラメータセット（ＶＰＳ）とを含むことができる。ＶＰＳは、複数の出力レイヤセット（ＯＬＳ）と、複数のＯＬＳの各ＯＬＳについてのプロファイル、ティア、およびレベル（ＰＴＬ）情報とを示すことができる。本方法はまた、１つまたは複数のレイヤからのＯＬＳをターゲットＯＬＳとして選択することを含むことができる。本方法はまた、ＶＰＳ中でシグナリングされるＰＴＬ情報に基づいてターゲットＯＬＳを復号することを含むことができる。
【００１１】
[0011]本開示の別の態様は、ビデオデータを復号するためのデバイスを提供する。デバイスは、ビデオデータの複数のレイヤを有するビットストリームを記憶するように構成されたメモリを含むことができる。ビデオデータの複数のレイヤは、ベースレイヤとビデオパラメータセット（ＶＰＳ）とを含むことができる。ＶＰＳは、複数の出力レイヤセット（ＯＬＳ）と、複数のＯＬＳの各ＯＬＳについてのプロファイル、ティア、およびレベル（ＰＴＬ）情報とを示すことができる。デバイスはまた、メモリに動作可能に結合された少なくとも１つのプロセッサを有することができる。少なくとも１つのプロセッサは、１つまたは複数のレイヤからのＯＬＳをターゲットＯＬＳとして選択することができる。少なくとも１つのプロセッサはまた、ＶＰＳ中でシグナリングされるＰＴＬ情報に基づいてターゲットＯＬＳを復号することができる。
【００１２】
[0012]本開示の他の特徴および利点は、例として、本開示の態様を示す以下の説明から明らかなはずである。
【００１３】
[0013]本開示の実施形態の詳細は、それらの構造と動作の両方について、部分的に添付の図面の検討によって収集され得、同様の参照番号は同様の部分を指す。
【図面の簡単な説明】
【００１４】
【図１】ビデオコーディングシステムの機能ブロック図。
【図２】図１のビデオエンコーダの機能ブロック図。
【図３】図１のビデオデコーダを示す機能ブロック図。
【図４】ビデオエンコーダとビデオデコーダとの間の例示的な信号フローを示す信号フロー図。
【図５】ビットストリームを符号化するための方法のフローチャート。
【図６】ビットストリームを復号するための方法のフローチャート。
【発明を実施するための形態】
【００１５】
[0020]本開示は、第０の出力レイヤセット（ＯＬＳ）のためのプロファイル、ティア、およびレベルなど、インターオペラビリティ情報のシグナリングを含むマルチレイヤビデオコーディングにおけるいくつかの改善のうちの１つまたは複数を含み得るコーディングのシステムおよび方法を提供する。本明細書で使用する「第０のレイヤ」は、概してビットストリームのベースレイヤを指すことができる。現在のＳＨＶＣおよびＭＶ−ＨＥＶＣ規格では、アクティブＶＰＳによって指定される第０のＯＬＳは、ベースレイヤのみを含んでいるＯＬＳを指す。しかしながら、ビットストリーム全体がベースレイヤのみを含んでいるのでない限り、第０のＯＬＳのティアおよびレベル情報はシグナリングされない。
【００１６】
[0021]添付の図面を参照しながら、新規のシステム、装置、および方法の様々な態様について以下でより十分に説明する。ただし、本開示は、多くの異なる形態で実施され得、本開示全体にわたって提示するいかなる特定の構造または機能にも限定されるものと解釈されるべきではない。むしろ、これらの態様は、本開示が周到で完全になり、本開示の範囲を当業者に十分に伝えるように与えられる。本明細書の教示に基づいて、本開示の範囲は、本開示の他の態様とは無関係に実装されるにせよ、本開示の他の態様と組み合わせて実装されるにせよ、本明細書で開示する新規のシステム、装置、および方法のいかなる態様をも包含するものであることを、当業者なら諒解されたい。たとえば、本明細書に記載された任意の数の態様を使用して装置が実装され得、または方法が実施され得る。さらに、本開示の範囲は、本明細書に記載された本開示の様々な態様に加えてまたはそれらの態様以外に、他の構造、機能、または構造および機能を使用して実施されるそのような装置または方法を包含するものである。本明細書で開示するいかなる態様も、請求項の１つまたは複数の要素によって実施され得ることを理解されたい。
【００１７】
[0022]本明細書では特定の態様について説明するが、これらの態様の多くの変形および置換は本開示の範囲内に入る。好適な態様のいくつかの利益および利点について説明するが、本開示の範囲は特定の利益、使用、または目的に限定されるものではない。そうではなく、本開示の態様は、様々なワイヤレス技術、システム構成、ネットワーク、および送信プロトコルに広く適用可能であるものであり、それらのいくつかについて、例として、図において、および好適な態様についての以下の説明において示す。詳細な説明および図面は、限定的ではなく、本開示の例示にすぎず、本開示の範囲は、添付の特許請求の範囲とそれの均等物とによって定義される。
ビデオコーディングシステム
[0023]図１は、ビデオコーディングシステムの機能ブロック図である。ビデオコーディングシステム（「システム」）１０は、本開示で説明する態様による方法を利用し得る。本明細書で使用し説明する「ビデオコーダ」という用語は、ビデオエンコーダとビデオデコーダの両方を総称的に指す。本開示では、「ビデオコーディング」または「コーディング」という用語は、ビデオ符号化とビデオ復号とを総称的に指すことがある。
【００１８】
[0024]図１に示されているように、システム１０は、宛先デバイス１４によって後で復号されるべき符号化ビデオデータを生成することができるソースデバイス１２を含む。ソースデバイス１２および宛先デバイス１４は、デスクトップコンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスのいずれかを備えることができる。場合によっては、ソースデバイス１２および宛先デバイス１４はワイヤレス通信のために装備され得る。
【００１９】
[0025]宛先デバイス１４は、リンク１６を介して復号されるべき符号化ビデオデータを受信し得る。リンク１６は、ソースデバイス１２から宛先デバイス１４に符号化ビデオデータを移動することが可能な任意のタイプの媒体またはデバイスを備え得る。一例では、リンク１６は、ソースデバイス１２が、符号化ビデオデータをリアルタイムで宛先デバイス１４に直接送信することを可能にするための通信媒体を備え得る。ソースデバイス１２は、ワイヤレス通信プロトコルなどの通信規格に従って符号化ビデオデータを変調し、宛先デバイス１４に送信され得る。通信媒体は、無線周波数（ＲＦ）スペクトルあるいは１つまたは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、ソースデバイス１２から宛先デバイス１４への通信を可能にするために有用であり得るルータ、スイッチ、基地局、または任意の他の機器を含み得る。
【００２０】
[0026]符号化データは出力インターフェース２２から記憶デバイス３４に出力され得る。同様に、符号化データは、入力インターフェースによって記憶デバイス３４からアクセスされ得る。記憶デバイス３４は、ハードドライブ、Ｂｌｕｅ−ｒａｙディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、揮発性もしくは不揮発性メモリ、または符号化ビデオデータを記憶するための任意の他の適切なデジタル記憶媒体など、様々な分散されたまたはローカルにアクセスされるデータ記憶媒体のいずれかを含み得る。さらなる例では、記憶デバイス３４は、ソースデバイス１２によって生成された符号化ビデオを保持し得るファイルサーバまたは別の中間記憶デバイスに対応し得る。宛先デバイス１４は、ストリーミングまたはダウンロードを介して記憶デバイス３４から記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶し、その符号化ビデオデータを宛先デバイス１４に送信することが可能な任意のタイプのサーバであり得る。例示的なファイルサーバとしては、（たとえば、ウェブサイトのための）ウェブサーバ、ＦＴＰサーバ、ネットワーク接続ストレージ（ＮＡＳ）デバイス、またはローカルディスクドライブがある。宛先デバイス１４は、インターネット接続を含む任意の標準的なデータ接続を通じて符号化ビデオデータにアクセスし得る。これは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに適したワイヤレスチャネル（たとえば、Ｗｉ−Ｆｉ（登録商標）接続）、ワイヤード接続（たとえば、ＤＳＬ、ケーブルモデムなど）、または両方の組合せを含み得る。記憶デバイス３４からの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、または両方の組合せであり得る。
【００２１】
[0027]本開示の方法は、必ずしもワイヤレス適用例または設定に限定されるとは限らない。本方法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、たとえばインターネットを介したストリーミングビデオ送信、データ記憶媒体に記憶するためのデジタルビデオの符号化、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および／またはビデオ電話などの適用例をサポートするために、一方向または双方向のビデオ送信をサポートするように構成され得る。
【００２２】
[0028]図１の例では、ソースデバイス１２は、ビデオソース１８と、ビデオエンコーダ２０と、出力インターフェース２２とを含む。場合によっては、出力インターフェース２２は、変調器／復調器（モデム）および／または送信機を含み得る。ソースデバイス１２において、ビデオソース１８は、ビデオキャプチャデバイス、たとえばビデオカメラ、以前にキャプチャされたビデオを含んでいるビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェース、および／またはソースビデオとしてコンピュータグラフィックスデータを生成するためのコンピュータグラフィックスシステムなどのソース、あるいはそのようなソースの組合せを含み得る。一例として、ビデオソース１８がビデオカメラである場合、ソースデバイス１２および宛先デバイス１４は、いわゆるカメラフォンまたはビデオフォンを形成し得る。ただし、本開示で説明する方法は、概してビデオコーディングに適用可能であり得、ワイヤレスおよび／またはワイヤード適用例に適用され得る。
【００２３】
[0029]ビデオエンコーダ２０は、キャプチャされたビデオ、以前にキャプチャされたビデオ、またはコンピュータ生成されたビデオを符号化し得る。さらに、いくつかの実施形態では、ビデオデコーダ３０は、第１のビットストリームのパラメータセットＩＤと一意のパラメータセットＩＤとに基づいて第１のビットストリームと第２のビットストリームとを区別し得る。他の例では、ソースデバイス１２の出力インターフェース２２は、符号化ビデオデータを、リンク１６を介して宛先デバイス１４に直接送信し得る。符号化ビデオデータは、さらに（または代替として）、復号および／または再生のための宛先デバイス１４または他のデバイスによる後のアクセスのために記憶デバイス３４上に記憶され得る。
【００２４】
[0030]宛先デバイス１４は、入力インターフェース２８と、ビデオデコーダ３０と、ディスプレイデバイス３２とを含む。場合によっては、入力インターフェース２８は受信機および／またはモデムを含み得る。宛先デバイス１４の入力インターフェース２８は、リンク１６を介して符号化ビデオデータを受信する。リンク１６を介して通信されるか、または記憶デバイス３４上に与えられる符号化ビデオデータは、ビデオデータを復号する際にビデオデコーダ３０などのビデオデコーダが使用するための、ビデオエンコーダ２０によって生成される様々な要素を含み得る。そのようなシンタックス要素は、通信媒体上で送信され、記憶媒体上に記憶され、またはファイルサーバ上に記憶された符号化ビデオデータとともに含まれ得る。
【００２５】
[0031]ディスプレイデバイス３２は、宛先デバイス１４と一体化されるか、またはその外部にあり得る。いくつかの例では、宛先デバイス１４は、一体型ディスプレイデバイスを含み、また、外部ディスプレイデバイスとインターフェースするように構成され得る。他の例では、宛先デバイス１４はディスプレイデバイスであり得る。概して、ディスプレイデバイス３２は、復号ビデオデータをユーザに対して表示し、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備え得る。
【００２６】
[0032]ビデオエンコーダ２０およびビデオデコーダ３０はそれぞれ、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダ回路のいずれか、またはそれらの任意の組合せとして実装され得る。本方法が部分的にソフトウェアで実装されたとき、デバイスは、好適な非一時的コンピュータ可読媒体にソフトウェアの命令を記憶し、１つまたは複数のプロセッサを使用してその命令をハードウェアで実行して、本開示の方法を実施し得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は１つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも、それぞれのデバイスにおいて複合エンコーダ／デコーダ（コーデック）の一部として統合され得る。
【００２７】
[0033]ＨＥＶＣ規格化の取組みは、ＨＥＶＣテストモデル（ＨＭ）と呼ばれるビデオコーディングデバイスの発展的モデルに基づく。ＨＭは、たとえば、ＩＴＵ−Ｔ  Ｈ．２６４／ＡＶＣに従う既存のデバイスに対してビデオコーディングデバイスのいくつかの追加の機能を仮定する。たとえば、Ｈ．２６４は９つのイントラ予測符号化モードを与えるが、ＨＭは３３個ものイントラ予測符号化モードを与え得る。
【００２８】
[0034]概して、ＨＭの作業モデルは、ビデオフレームまたはピクチャが、ルーマサンプルとクロマサンプルの両方を含む一連のツリーブロックまたは最大コーディングユニット（ＬＣＵ）に分割され得ることを記載している。ツリーブロックは、Ｈ．２６４規格のマクロブロックと同様の目的を有する。スライスは、コーディング順序でいくつかの連続するツリーブロックを含む。ビデオフレームまたはピクチャは、１つまたは複数のスライスに区分され得る。各ツリーブロックは、４分木に従ってコーディングユニット（ＣＵ）に分割され得る。たとえば、４分木のルートノードとしてのツリーブロックは、４つの子ノードに分割され得、各子ノードは、次に、親ノードとなり、別の４つの子ノードに分割され得る。４分木のリーフノードとしての最終的な分割されない子ノードは、コーディングノード、すなわち、コーディングされるビデオブロックを備える。コーディングされるビットストリームに関連するシンタックスデータは、ツリーブロックが分割され得る最大回数を定義し、コーディングノードの最小サイズを定義し得る。
【００２９】
[0035]ＣＵは、コーディングノードと、コーディングノードに関連付けられた予測ユニット（ＰＵ）および変換ユニット（ＴＵ）とを含む。ＣＵのサイズは、コーディングノードのサイズに対応し、形状が正方形でなければならない。ＣＵのサイズは、８×８ピクセルから、最大６４×６４ピクセル以上をもつツリーブロックのサイズまでわたり得る。各ＣＵは、１つまたは複数のＰＵと、１つまたは複数のＴＵとを含んでいることがある。ＣＵに関連付けられたシンタックスデータは、たとえば、１つまたは複数のＰＵへのＣＵの区分（partitioning）を記述し得る。区分モードは、ＣＵがスキップモード符号化もしくは直接モード符号化されるのか、イントラ予測モード符号化されるのか、またはインター予測モード符号化されるのかの間で異なり得る。ＰＵは、形状が非正方形になるように区分され得る。ＣＵに関連付けられたシンタックスデータは、たとえば、４分木に従ってＣＵを１つまたは複数のＴＵに区分することをも記述し得る。ＴＵは、形状が正方形または非正方形であり得る。
【００３０】
[0036]ＨＥＶＣ規格は、異なるＣＵごとに異なり得る、ＴＵに従う変換を可能にする。ＴＵは、区分されるＬＣＵについて定義される所与のＣＵ内のＰＵのサイズに基づいてサイズ決定され得るが、これは常にそうであるとは限らない。ＴＵは、ＰＵと同じサイズであるか、またはＰＵよりも小さくなり得る。いくつかの例では、ＣＵに対応する残差サンプルは、「残差４分木」（ＲＱＴ）として知られる４分木構造を使用して、より小さいユニットに再分割され得る。ＲＱＴのリーフノードは変換ユニット（ＴＵ）と呼ばれることがある。ＴＵに関連するピクセル差分値は、変換係数を生成するために変換され得、その変換係数は量子化され得る。
【００３１】
[0037]概して、ＰＵは、予測プロセスに関係するデータを含む。たとえば、ＰＵがイントラモード符号化されるとき、ＰＵは、ＰＵのイントラ予測モードを記述するデータを含み得る。別の例として、ＰＵがインターモード符号化されるとき、ＰＵは、ＰＵの動きベクトルを定義するデータを含み得る。ＰＵの動きベクトルを定義するデータは、たとえば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルの解像度（たとえば、１／４ピクセル精度または１／８ピクセル精度）、動きベクトルが指す参照ピクチャ、および／または動きベクトルの参照ピクチャリスト（たとえば、リスト０、リスト１、またはリストＣ）を記述し得る。
【００３２】
[0038]概して、ＴＵは、変換プロセスと量子化プロセスとのために使用される。１つまたは複数のＰＵを有する所与のＣＵは、１つまたは複数の変換ユニット（ＴＵ）をも含み得る。予測の後に、ビデオエンコーダ２０は、ＰＵに対応する残差値を計算し得る。残差値はピクセル差分値を備え、ピクセル差分値は、エントロピーコーディングのためのシリアル化変換係数を生成するために、ＴＵを使用して変換係数に変換され、量子化され、走査され得る。本明細書で使用する「ビデオブロック」という用語は、概してＣＵのコーディングノードを指し得る。いくつかの特定の場合において、本開示では、コーディングノードならびにＰＵおよびＴＵを含む、ツリーブロック、すなわち、ＬＣＵまたはＣＵを指すために「ビデオブロック」という用語をも使用し得る。
【００３３】
[0039]ビデオエンコーダ２０は、符号化ビデオデータを含むビットストリームを生成することができる。ビットストリームは、一連のネットワークアブストラクションレイヤ（ＮＡＬ）ユニットを含むことができる。ＮＡＬユニットの各々は、ＮＡＬユニットヘッダを含み得、ローバイトシーケンスペイロード（ＲＢＳＰ：raw byte sequence payload）をカプセル化し得る。ＮＡＬユニットヘッダは、ＮＡＬユニットタイプコードを示すシンタックス要素を含み得る。ＮＡＬユニットのＮＡＬユニットヘッダによって指定されるＮＡＬユニットタイプコードは、ＮＡＬユニットのタイプを示す。ビットストリームのＮＡＬユニットは、ビデオコーディングレイヤ（ＶＣＬ）ＮＡＬユニットと非ＶＣＬ  ＮＡＬユニットとを含み得る。ＶＣＬ  ＮＡＬユニットは、ピクチャのコーディングされたスライスを含むことができる。
【００３４】
[0040]非ＶＣＬ  ＮＡＬユニットは、ＶＰＳ、シーケンスパラメータセット（ＳＰＳ）、ピクチャパラメータセット（ＰＰＳ）、ＳＥＩ、または他のタイプのデータを含み得る。ＶＰＳは、０個以上のコーディングされたビデオシーケンス全体に適用されるシンタックス要素を含んでいることがあるシンタックス構造である。ＳＰＳは、０個以上のコーディングされたビデオシーケンス全体に適用されるシンタックス要素を含んでいることがあるシンタックス構造である。単一のＶＰＳが、複数のＳＰＳに適用可能であり得る。ＰＰＳは、０個以上のコーディングされたピクチャ全体に適用されるシンタックス要素を含んでいることがあるシンタックス構造である。単一のＳＰＳが、複数のＰＰＳに適用可能であり得る。ＶＰＳ、ＳＰＳ、およびＰＰＳの様々な態様は、概して、ＨＥＶＣ規格によって定義されているように形成され得る。ビデオエンコーダ２０は、ピクチャのサンプル値の正確な復号に必要とされないメタデータをビットストリーム中に含めるためにＳＥＩメッセージを使用し得る。しかしながら、ビデオデコーダ３０または他のデバイスは、ＳＥＩメッセージに含まれるメタデータを様々な他の目的で使用し得る。たとえば、ビデオデコーダ３０は、ピクチャ出力タイミング、ピクチャ表示、損失検出、および誤り補償のためにＳＥＩメッセージ中のメタデータを使用し得る。
高レベルシンタックス
[0041]ＮＡＬユニットは、ビデオエンコーダ２０によって符号化されビデオデコーダ３０に送信されるシンタックス要素を含むことができる。パラメータセット（たとえば、ＳＰＳ、ＶＰＳ、ＰＰＳなど）、参照ピクチャ管理シンタックス、およびＳＥＩメッセージなど、ビットストリームの構造を記述するか、または複数のピクチャもしくはピクチャ内の複数のコーディングされるブロック領域に適用される情報を提供するシンタックス要素は、ＨＥＶＣの「高レベルシンタックス」（ＨＬＳ：high-level syntax）部分として知られている。
【００３５】
[0042]特に、ＨＥＶＣは、本開示に関連する以下の態様を採用する。
パラメータセット構造：パラメータセットは、復号ビデオのいくつかの領域の復号のために共有され得る情報を含んでいる。パラメータセット構造は、復号プロセスに必須であるデータを搬送するためのロバストな機構を提供する。
補足エンハンスメント情報（ＳＥＩ）：このシンタックスは、ＳＥＩとして知られる様々なタイプのメタデータのサポートを含む。そのようなデータは、ビデオピクチャのタイミング、ビデオ信号において使用される色空間の適切な解釈、３Ｄ立体視（stereoscopic）フレームパッキング情報、他のディスプレイヒント情報などに関する情報を提供する。
【００３６】
[0043]図２は、図１のビデオエンコーダの機能ブロック図である。ビデオエンコーダ２０は、キャプチャされたビデオデータを受信し、ビデオデータをビデオブロックに区分するように構成された区分モジュール３５を含むことができる。区分モジュール３５は、ビデオデータをスライス、タイル、または他のより大きいユニットに区分することができる。区分モジュール３５はまた、たとえば、ＬＣＵとＣＵとの４分木構造に従って、ビデオブロックを区分することができる。ビデオエンコーダ２０は、スライスを複数のビデオブロックに（および場合によってはタイルと呼ばれるビデオブロックのセットに）分割し得る。
【００３７】
[0044]ビデオエンコーダ２０はまた、区分モジュール３５に動作可能に結合され、区分されたビデオデータを受信するように構成された予測モジュール４１を有することができる。予測モジュール４１は、誤り結果（たとえば、コーディングレートおよびひずみレベル）に基づいて、現在のビデオブロックのために、複数のイントラコーディングモードのうちの１つ、または複数のインターコーディングモードのうちの１つなど、複数の可能なコーディングモードのうちの１つを選択することができる。予測モジュール４１は、ビデオエンコーダ２０が、ビデオスライス内のビデオブロックのイントラコーディングおよびインターコーディングを実施することを可能にすることができる。イントラコーディングは、所与のビデオフレームまたはピクチャ内のビデオの空間冗長性を低減または除去するために空間的予測に依拠する。インターコーディングは、ビデオシーケンスの隣接するフレームまたはピクチャ内のビデオの時間冗長性を低減または除去するために時間的予測に依拠する。イントラモード（Ｉモード）は、いくつかの空間ベースの圧縮モードのいずれかを指すことがある。単方向予測（Ｐモード）または双方向予測（Ｂモード）などのインターモードは、いくつかの時間ベースの圧縮モードのいずれかを指すことがある。
【００３８】
[0045]予測モジュール４１は、動き推定モジュール４２と、動き補償モジュール４４と、イントラ予測モジュール４６とを含むことができる。これらの構成要素の各々は、ビデオエンコーダ２０内で動作可能に接続されるかあるいは１つまたは複数のプロセッサ中に組み込まれ得る。概念的な目的のために別々に説明されるが、動き推定モジュール４２と、動き補償モジュール４４と、イントラ予測モジュール４６とは、高度に統合され得る。
【００３９】
[0046]動き推定モジュール４２は、ビデオシーケンスの所定のパターンに従ってビデオスライスのインター予測モードを決定するように構成され得る。１つまたは複数の参照ピクチャ中の１つまたは複数の予測ブロックに対する現在のビデオブロックのそのようなインター予測またはインター予測コーディングは時間圧縮を与えることができる。所定のパターンは、シーケンス中のビデオスライスをＰスライス、ＢスライスまたはＧＰＢスライスに指定し得る。本明細書で使用する動き推定は、概して、ビデオブロックの動きを推定する動きベクトルを生成するプロセスを指し得る。動きベクトルは、たとえば、参照フレームまたは参照ピクチャ内の予測ブロックに対する現在のビデオフレームまたはピクチャ内のビデオブロックのＰＵの変位を示し得る。参照フレームは、予測モジュール４１に動作可能に結合された参照ピクチャメモリ６４に記憶され得る。参照フレームメモリ６４。参照フレームメモリ６４は、フィルタモジュール６３が、再構成されたコーディングブロックに対してデブロッキング演算を実施した後に、再構成されたコーディングブロックを記憶することができる。参照フレームメモリ６４は、したがって、復号ピクチャバッファ（ＤＰＢ）としても動作することができる。
【００４０】
[0047]予測ブロックは、絶対差分和（ＳＡＤ）、２乗差分和（ＳＳＤ）、または他の差分メトリックによって決定され得るピクセル差分に関して、コーディングされるべきビデオブロックのＰＵにぴったり一致することがわかるブロックである。いくつかの例では、動き予測モジュール（「予測モジュール」）４１は、参照ピクチャメモリ６４に記憶された参照ピクチャのサブ整数ピクセル位置に関する値を計算することができる。たとえば、予測モジュール４１は、参照ピクチャの１／４ピクセル位置、１／８ピクセル位置、または他の分数ピクセル位置の値を補間することができる。したがって、動き推定モジュール４２は、フルピクセル位置と分数ピクセル位置とに対して動き探索を実施し、分数ピクセル精度で動きベクトルを出力し得る。
【００４１】
[0048]動き推定モジュール４２は、ＰＵの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコーディングされたスライス中のビデオブロックのＰＵのための動きベクトルを計算することができる。参照ピクチャは、第１の参照ピクチャリスト（リスト０）または第２の参照ピクチャリスト（リスト１）から選択され得、それらの参照ピクチャリストの各々は、参照ピクチャメモリ６４に記憶された１つまたは複数の参照ピクチャを識別する。動き推定モジュール４２は、計算された動きベクトルを動き補償モジュール４４とエントロピー符号化モジュール５６とに送ることができる。
【００４２】
[0049]動き補償は、動き推定によって決定された動きベクトルに基づいて予測ブロックをフェッチまたは生成することを伴うことができる。これは、サブピクセル精度への補間を含むことができる。現在のビデオブロックのＰＵのための動きベクトルを受信すると、動き補償モジュール４４は、動きベクトルが参照ピクチャリストのうちの１つにおいて指す予測ブロックの位置を特定することができる。動き補償モジュール４４はまた、ビデオスライスのビデオブロックを復号する際にビデオデコーダ３０が使用するための、ビデオブロックおよびビデオスライスに関連付けられたシンタックス要素を生成することができる。
【００４３】
[0050]予測モジュール４１のイントラ予測モジュール４６は、空間圧縮を行うために、同じフレームまたはスライス中の１つまたは複数の隣接ブロックに対して現在のビデオブロックのイントラ予測コーディングを実施することができる。イントラ予測モジュール４６は、上記で説明したように、動き推定モジュール４２と動き補償モジュール４４とによって実施されるインター予測の代替として、現在のブロックをイントラ予測することができる。特に、イントラ予測モジュール４６は、現在のブロックを符号化するために使用すべきイントラ予測モードを決定することができる。いくつかの例では、イントラ予測モジュール４６は、たとえば、別個の符号化パス中に、様々なイントラ予測モードを使用して現在のブロックを符号化することができる。たとえば、イントラ予測モジュール４６は、様々なテストされたイントラ予測モードのためのレートひずみ分析を使用してレートひずみ値を計算し、テストされたモードの間で最良のレートひずみ特性を有するイントラ予測モードを選択し得る。レートひずみ分析は、符号化ブロックと、符号化ブロックを生成するために符号化された元の符号化されていないブロックとの間のひずみ（または誤差）の量、ならびに符号化ブロックを生成するために使用されたビットレート（すなわち、ビット数）を決定することができる。イントラ予測モジュール４６は、どのイントラ予測モードがブロックについて最良のレートひずみ値を呈するかを決定するために、様々な符号化ブロックのひずみおよびレートから比を計算し得る。
【００４４】
[0051]イントラ予測モジュール４６は、ブロックのための選択されたイントラ予測モードを示す情報をエントロピー符号化モジュール５６に与えることができる。エントロピー符号化モジュール５６は、選択されたイントラ予測モードを示す情報を符号化することができる。ビデオエンコーダ２０は、複数のイントラ予測モードインデックステーブルおよび複数の修正されたイントラ予測モードインデックステーブル（コードワードマッピングテーブルとも呼ばれる）と、様々なブロックの符号化コンテキストの定義と、コンテキストの各々について使用すべき、最確イントラ予測モード、イントラ予測モードインデックステーブル、および修正されたイントラ予測モードインデックステーブルの指示とを含み得る構成データを送信ビットストリーム中に含めることができる。
【００４５】
[0052]予測モジュール４１が、インター予測またはイントラ予測のいずれかを介して現在のビデオブロックのための予測ブロックを生成した後に、ビデオエンコーダ２０は、現在のビデオブロックから予測ブロックを減算することによって残差ビデオブロックを形成する。このプロセスはピクセル差分値を生じることができる。ピクセル差分値は、ブロックの残差データを形成し、ルーマ差分成分とクロマ差分成分の両方を含むことができる。予測モジュール４１と区分モジュール３５とに動作可能に結合された加算器５０は、この減算演算を実施するように構成され得る１つまたは複数の構成要素を表す。
【００４６】
[0053]残差ブロック中の残差ビデオデータは、１つまたは複数のＴＵ中に含まれ、加算器５０に動作可能に結合された変換モジュール５２に適用され得る。変換モジュール５２は、離散コサイン変換（ＤＣＴ）または概念的に同様の変換などの変換を使用して、残差ビデオデータを残差変換係数に変換することができる。変換モジュール５２は、残差ビデオデータをピクセル領域から周波数領域などの変換領域に変換することができる。予測モジュール４１は、残差ブロックデータを生成するために、得られたイントラコーディングまたはインターコーディングされたブロックを加算器５０に与えることができる。得られたイントラコーディングまたはインターコーディングされたブロックは、参照ピクチャとして使用する符号化ブロックを再構成するためにさらに加算器６２に与えられ得る。
【００４７】
[0054]ビデオエンコーダ２０はまた、加算器６２に動作可能に結合されたフィルタモジュール６３を含むことができる。フィルタモジュール６３は、デブロッキングフィルタ、適応ループフィルタ（ＡＬＦ）、およびサンプル適応オフセット（ＳＡＯ）フィルタなど、１つまたは複数のループフィルタを表すことができる。図２ではフィルタモジュール６３はループ内フィルタであるものとして示されているが、他の構成では、フィルタモジュール６３はループ後フィルタとして実装され得る。フィルタモジュール６３は、参照ピクチャを参照ピクチャメモリ６４に与えることができる。
【００４８】
[0055]変換モジュール５２は、得られた変換係数を量子化モジュール５４に送ることができる。量子化モジュール５４は、ビットレートをさらに低減するために変換係数を量子化することができる。量子化処理は、係数の一部または全部に関連付けられたビット深度を低減し得る。量子化の程度は、量子化パラメータを調整することによって変更され得る。いくつかの例では、量子化モジュール５４は、次いで、量子化された変換係数を含む行列の走査を実施することができる。いくつかの実施形態では、エントロピー符号化モジュール５６が走査を実施し得る。
【００４９】
[0056]量子化の後に、エントロピー符号化モジュール５６は、量子化された変換係数をエントロピー符号化することができる。たとえば、エントロピー符号化モジュール５６は、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ）、確率間隔区分エントロピー（ＰＩＰＥ）コーディングまたは別のエントロピー符号化方法を実施し得る。ビデオエンコーダ２０はまた、ビデオデータを復号する際にビデオデコーダ３０が使用するための、符号化ビデオデータに関連付けられたシンタックス要素をエントロピー符号化し得る。
【００５０】
[0057]エントロピー符号化モジュール５６によるエントロピー符号化の後に、符号化ビットストリームはビデオデコーダ３０に送信され得る。ビットストリームはまた、ビデオデコーダ３０による後の送信または取出しのためにアーカイブされ得る。エントロピー符号化モジュール５６はまた、コーディングされている現在のビデオスライスのための動きベクトルと他のシンタックス要素とをエントロピー符号化することができる。
【００５１】
[0058]ビデオエンコーダ２０はまた、エントロピー符号化モジュール５６に動作可能に結合された逆量子化モジュール５８を含むことができる。また、逆変換モジュール６０が、逆量子化モジュール５８と加算器６２とに動作可能に結合され得る。逆量子化モジュール５８および逆変換モジュール６０は、それぞれ逆量子化および逆変換を適用して、参照ピクチャの参照ブロックとして後で使用するためにピクセル領域において残差ブロックを再構成することができる。動き補償モジュール４４は、残差ブロックを参照ピクチャリストのうちの１つの内の参照ピクチャのうちの１つの予測ブロックに加算することによって、参照ブロックを計算することができる。加算器６２は、再構成された残差ブロックを、動き補償モジュール４４によって生成された動き補償された予測ブロックに加算して、参照ピクチャメモリ６４に記憶するための参照ブロックを生成することができる。参照ブロックは、後続のビデオフレームまたはピクチャ中のブロックをインター予測するために、動き推定モジュール４２と動き補償モジュール４４とによって参照ブロックとして使用され得る。
【００５２】
[0059]いくつかの例では、ビデオエンコーダ２０はビットストリームを生成する。ビデオエンコーダ２０によって生成されるビットストリームは、ビットストリームからサブビットストリームとして抽出され得る複数のオペレーションポイントを含み得る。オペレーションポイントは、たとえば、複数のレイヤおよび／またはビュー、ならびに複数のフレームレートを含み得る。ビデオエンコーダ２０は、ＶＰＳにおける出力オペレーションポイントを示す情報を符号化し得る。本明細書で使用する出力オペレーションポイントは、出力レイヤ（すなわち出力されるべきレイヤのセット）が指定されたオペレーションポイントを指す。いくつかの例では、ビデオエンコーダ２０が、ビットストリームに関連付けられたＶＰＳにおいてシグナリングするオペレーションポイントの各々について、オペレーションポイントシンタックス構造は、所与のオペレーションポイントのサブビットストリームに属する、ビットストリーム中のＮＡＬユニットを識別するために使用されるレイヤ識別子（ＩＤ）のセットを指定する。このように、所与のオペレーションポイントのサブビットストリームを構成するＮＡＬユニットは、ＮＡＬユニットのレイヤ識別子に基づいて元のビットストリームから抽出され得る。
【００５３】
[0060]図３は、図１のビデオデコーダを示すブロック図である。説明のために、本開示では、ＨＥＶＣコーディングのコンテキストにおいてビデオデコーダ３０について説明する。しかしながら、本開示は、他のコーディング規格または方法にも適用可能であり得る。
【００５４】
[0061]ビデオデコーダ３０は、エントロピー復号モジュール７０と、予測モジュール７１と、逆量子化モジュール７６と、逆変換モジュール７８と、加算器８０と、フィルタモジュール８４と、復号ピクチャバッファ（ＤＰＢ）８２とを含むことができる。予測モジュール７１は、動き補償モジュール７２と、イントラ予測モジュール７４とを含むことができる。他の例では、ビデオデコーダ３０は、より多数の、より少数の、または異なる機能構成要素を含むことができる。
【００５５】
[0062]コード化ピクチャバッファ（ＣＰＢ）９０は、ビットストリームの符号化ビデオデータ（たとえば、ＮＡＬユニット）を受信し、記憶し得る。エントロピー復号モジュール７０は、ＣＰＢ９０からＮＡＬユニットを受信し、ＮＡＬユニットをパースしてシンタックス要素を復号し得る。エントロピー復号モジュール７０は、ＮＡＬユニット中のエントロピー符号化されたシンタックス要素をエントロピー復号することができる。予測モジュール７１、逆量子化モジュール７６、逆変換モジュール７８、加算器８０、およびフィルタモジュール８４は、ビットストリームから抽出されたシンタックス要素に基づいて復号ビデオデータを生成することができる。
【００５６】
[0063]ビットストリームのＮＡＬユニットは、コーディングされたスライスＮＡＬユニットを含み得る。ビットストリームを復号することの一部として、エントロピー復号モジュール７０は、コーディングされたスライスＮＡＬユニットからシンタックス要素を抽出し、エントロピー復号することができる。コーディングされたスライスの各々は、スライスヘッダとスライスデータとを含むことができる。スライスヘッダは、スライスに関係するシンタックス要素を含むことができる。スライスヘッダ中のシンタックス要素は、当該スライスを含んでいるピクチャに関連付けられたＰＰＳを識別するシンタックス要素を含むことができる。
【００５７】
[0064]ビットストリームからのシンタックス要素を復号することに加えて、ビデオデコーダ３０は、区分されていないＣＵに対して再構成演算を実施し得る。区分されていないＣＵに対して再構成演算を実施するために、ビデオデコーダ３０は、ＣＵの各ＴＵに対して再構成演算を実施することができる。ＣＵの各ＴＵについて再構成演算を実施することによって、ビデオデコーダ３０はＣＵの残差ブロックを再構成し得る。
【００５８】
[0065]ＣＵのＴＵに対して再構成演算を実施することの一部として、逆量子化モジュール７６は、ＴＵに関連付けられた係数ブロックを逆量子化（inverse quantize）、すなわち、逆量子化（de-quantize）することができる。逆量子化モジュール７６は、量子化の程度を決定するために、また同様に、逆量子化モジュール７６が適用すべき逆量子化の程度を決定するために、ＴＵのＣＵに関連付けられた量子化パラメータ（ＱＰ）値を使用し得る。すなわち、圧縮比、すなわち、元のシーケンスと圧縮されたシーケンスとを表すために使用されるビット数の比は、変換係数を量子化するときに使用されるＱＰの値を調整することによって制御され得る。圧縮比はまた、採用されたエントロピーコーディングの方法に依存し得る。
【００５９】
[0066]逆量子化モジュール７６が係数ブロックを逆量子化した後に、逆変換処理モジュール７８は、ＴＵに関連付けられた残差ブロックを生成するために、係数ブロックに１つまたは複数の逆変換を適用し得る。たとえば、逆変換モジュール７８は、逆ＤＣＴ、逆整数変換、逆方向変換、または別の逆変換を係数ブロックに適用し得る。
【００６０】
[0067]イントラ予測を使用してＰＵが符号化される場合、イントラ予測モジュール７４は、ＰＵの予測ブロックを生成するためにイントラ予測を実施することができる。イントラ予測モジュール７４は、イントラ予測モードを使用して、空間的に隣接するＰＵの予測ブロックに基づいてＰＵのための予測ルーマブロック、予測Ｃｂブロックおよび予測Ｃｒブロックを生成し得る。イントラ予測モジュール７４は、ビットストリームから復号された１つまたは複数のシンタックス要素に基づいて、ＰＵのためのイントラ予測モードを決定し得る。
【００６１】
[0068]予測モジュール７１は、ビットストリームから抽出されたシンタックス要素に基づいて、第１の参照ピクチャリスト（ＲｅｆＰｉｃＬｉｓｔ０）と第２の参照ピクチャリスト（ＲｅｆＰｉｃＬｉｓｔ１）とを構成することができる。さらに、インター予測を使用してＰＵが符号化される場合、エントロピー復号モジュール７０は、ＰＵの動き情報を抽出し得る。動き補償モジュール７２は、ＰＵの動き情報に基づいて、ＰＵの１つまたは複数の参照領域を決定し得る。動き補償モジュール７２は、ＰＵのための１つまたは複数の参照ブロックにおけるサンプルブロックに基づいて、ＰＵのための予測ルーマ、ＣｂおよびＣｒブロックを生成することができる。
【００６２】
[0069]加算器８０は、適用可能なとき、ＣＵのＴＵに関連付けられたルーマ変換ブロック、Ｃｂ変換ブロックおよびＣｒ変換ブロック、ならびにＣＵのＰＵの予測ルーマブロック、予測Ｃｂブロックおよび予測Ｃｒブロック、すなわちイントラ予測データまたはインター予測データのいずれかを使用して、ＣＵのルーマコーディングブロックと、Ｃｂコーディングブロックと、Ｃｒコーディングブロックとを再構成することができる。たとえば、加算器８０は、ルーマ変換ブロック、Ｃｂ変換ブロックおよびＣｒ変換ブロックのサンプルを、予測ルーマブロック、予測Ｃｂブロックおよび予測Ｃｒブロックの対応するサンプルに加算して、ＣＵのルーマコーディングブロックと、Ｃｂコーディングブロックと、Ｃｒコーディングブロックとを再構成することができる。
【００６３】
[0070]フィルタモジュール８４は、たとえば、デブロッキングフィルタであり、ＣＵのルーマコーディングブロック、ＣｂコーディングブロックおよびＣｒコーディングブロックに関連するブロッキングアーティファクトを低減するためにデブロッキング演算を実施することができる。ビデオデコーダ３０は、次いで、ＣＵのルーマコーディングブロック、ＣｂコーディングブロックおよびＣｒコーディングブロックを復号ピクチャバッファ８２に記憶することができる。復号ピクチャバッファ８２は、後続の動き補償、イントラ予測、および図１のディスプレイデバイス３２などのディスプレイデバイス上での表示のために参照ピクチャを与えることができる。たとえば、ビデオデコーダ３０は、復号ピクチャバッファ８２中のルーマブロック、ＣｂブロックおよびＣｒブロックに基づいて、他のＣＵのＰＵに対してイントラ予測演算またはインター予測演算を実施することができる。このようにして、ビデオデコーダ３０は、ビットストリームから、有意なルーマ係数ブロックの変換係数レベルを復号し、変換係数レベルを逆量子化し、変換係数レベルに変換を適用して変換ブロックを生成し、変換ブロックに少なくとも部分的に基づいてコーディングブロックを生成し、表示のためにコーディングブロックを出力することができる。
パラメータセットの順序
[0071]ＲＢＳＰは、ＮＡＬユニット中にカプセル化され、また、空であるか、シンタックス要素を含んでいるデータビットのストリングの形式を有する、整数個のバイトを含んでいるシンタックス構造である。
【００６４】
[0072]ＰＰＳ  ＲＢＳＰは、１つまたは複数のコーディングされたピクチャの、コーディングされたスライスセグメントＮＡＬユニットによって参照され得るパラメータを含む。各ＰＰＳ  ＲＢＳＰは、復号プロセスの動作の開始時にベースレイヤのためにアクティブでないと最初は考えられる。復号プロセスの動作中の所与の瞬間において、多くとも１つのＰＰＳ  ＲＢＳＰがベースレイヤのためにアクティブであると考えられ、ベースレイヤについてのいかなる特定のＰＰＳ  ＲＢＳＰのアクティブ化も、（もしあれば）ベースレイヤについて以前アクティブなＰＰＳ  ＲＢＳＰの非アクティブ化をもたらす。
【００６５】
[0073]ＰＰＳ  ＲＢＳＰがベースレイヤのためにアクティブでなく、そのＰＰＳ  ＲＢＳＰが、０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄで、コーディングされたスライスセグメントＮＡＬユニットによって参照されるとき、そのＰＰＳ  ＲＢＳＰはベースレイヤのためにアクティブ化される。このＰＰＳ  ＲＢＳＰは、ベースレイヤ用の別のＰＰＳ  ＲＢＳＰのアクティブ化によって非アクティブ化されるまで、ベースレイヤのためのアクティブＰＰＳ  ＲＢＳＰと呼ばれる。ｐｐｓ＿ｐｉｃ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｉｄのその特定の値をもつＰＰＳ  ＲＢＳＰは、それのアクティブ化より前に復号プロセスのために利用可能となり、ＰＰＳ  ＮＡＬユニットのＴｅｍｐｏｒａｌＩｄ以下のＴｅｍｐｏｒａｌＩｄをもつ少なくとも１つのアクセスユニット中に含まれるか、または外部手段を介して提供され、ＰＰＳ  ＲＢＳＰを含んでいるＰＰＳ  ＮＡＬユニットは、０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄを有する。
【００６６】
[0074]コーディングされるピクチャのための（したがって、コーディングされるピクチャを含んでいるレイヤのための）アクティブＰＰＳ  ＲＢＳＰ用のｐｐｓ＿ｐｉｃ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｉｄの値を含んでいる任意のＰＰＳ  ＮＡＬユニットは、コーディングされるピクチャの最後のＶＣＬ  ＮＡＬユニットに後続し、別のコーディングされるピクチャの最初のＶＣＬ  ＮＡＬユニットに先行しない限り、コーディングされるピクチャ用のアクティブＰＰＳ  ＲＢＳＰのコンテンツと同じコンテンツを有する。
【００６７】
[0075]ＳＰＳ  ＲＢＳＰは、１つまたは複数のＰＰＳ  ＲＢＳＰ、あるいはアクティブパラメータセットＳＥＩメッセージを含んでいる１つまたは複数のＳＥＩ  ＮＡＬユニットによって参照され得るパラメータを含む。各ＳＰＳ  ＲＢＳＰは、復号プロセスの動作の開始時にベースレイヤのためにアクティブでないと最初は考えられる。復号プロセスの動作中の所与の瞬間において、多くとも１つのＳＰＳ  ＲＢＳＰがベースレイヤのためにアクティブであると考えられ、ベースレイヤについてのいかなる特定のＳＰＳ  ＲＢＳＰのアクティブ化も、（もしあれば）ベースレイヤについて以前アクティブなＳＰＳ  ＲＢＳＰの非アクティブ化をもたらす。
【００６８】
[0076]ＳＰＳ  ＲＢＳＰがベースレイヤのために既にアクティブでなく、そのＳＰＳ  ＲＢＳＰが、ベースレイヤについてＰＰＳ  ＲＢＳＰのアクティブ化によって参照されるとき、または、ｖｐｓ＿ｂａｓｅ＿ｌａｙｅｒ＿ｉｎｔｅｒｎａｌ＿ｆｌａｇが１に等しくｖｐｓ＿ｂａｓｅ＿ｌａｙｅｒ＿ａｖａｉｌａｂｌｅ＿ｆｌａｇが１に等しく、アクティブパラメータセットＳＥＩメッセージを含んでいるＳＥＩ  ＮＡＬユニットによって参照されるとき、そのＳＰＳ  ＲＢＳＰはベースレイヤのためにアクティブ化される。このＳＰＳ  ＲＢＳＰは、ベースレイヤ用の別のＳＰＳ  ＲＢＳＰのアクティブ化によって非アクティブ化されるまで、ベースレイヤのためのアクティブＳＰＳ  ＲＢＳＰと呼ばれる。ｓｐｓ＿ｓｅｑ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｉｄのその特定の値をもつＳＰＳ  ＲＢＳＰは、それのアクティブ化より前に復号プロセスのために利用可能となり、０に等しいＴｅｍｐｏｒａｌＩｄをもつ少なくとも１つのアクセスユニット中に含まれるか、または外部手段を介して提供され、ＳＰＳ  ＲＢＳＰを含んでいるＳＰＳ  ＮＡＬユニットは、０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄを有するものである。ベースレイヤのためのアクティブ化されたＳＰＳ  ＲＢＳＰは、コーディングされるビデオシーケンス（ＣＶＳ：coded video sequence）全体についてアクティブなままになるものである。
【００６９】
[0077]ＣＶＳのためのベースレイヤのためのアクティブＳＰＳ  ＲＢＳＰ用のｓｐｓ＿ｓｅｑ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｉｄの値を含んでいる、０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつ任意のＳＰＳ  ＮＡＬユニットは、ＣＶＳの最後のアクセスユニットに後続し、別のＣＶＳの最初のＶＣＬ  ＮＡＬユニット、およびアクティブパラメータセットＳＥＩメッセージ（存在するとき）を含んでいる最初のＳＥＩ  ＮＡＬユニットに先行しない限り、ＣＶＳのためのベースレイヤのためのアクティブＳＰＳ  ＲＢＳＰのコンテンツと同じコンテンツを有する。
【００７０】
[0078]ＶＰＳ  ＲＢＳＰは、１つまたは複数のＶＰＳ  ＲＢＳＰ、あるいはアクティブパラメータセットＳＥＩメッセージを含んでいる１つまたは複数のＳＥＩ  ＮＡＬユニットによって参照され得るパラメータを含む。各ＶＰＳ  ＲＢＳＰは、復号プロセスの動作の開始時にアクティブでないと最初は考えられる。多くとも１つのＶＰＳ  ＲＢＳＰが、復号プロセスの動作中の所与の瞬間においてアクティブであると考えられ、いかなる特定のＶＰＳ  ＲＢＳＰのアクティブ化も、（もしあれば）以前アクティブなＶＰＳ  ＲＢＳＰの非アクティブ化をもたらす。
【００７１】
[0079]（ｖｐｓ＿ｖｉｄｅｏ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｉｄの特定の値をもつ）ＶＰＳ  ＲＢＳＰがすでにアクティブでなく、ベースレイヤについてＳＰＳ  ＲＢＳＰのアクティブ化によって参照されるか、またはアクティブパラメータセットＳＥＩメッセージを含んでいるＳＥＩ  ＮＡＬユニットによって参照されるとき、ＶＰＳ  ＲＢＳＰはアクティブ化される。このＶＰＳ  ＲＢＳＰは、別のＶＰＳ  ＲＢＳＰのアクティブ化によって非アクティブ化されるまで、アクティブＶＰＳ  ＲＢＳＰと呼ばれる。ｖｐｓ＿ｖｉｄｅｏ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｉｄのその特定の値をもつＶＰＳ  ＲＢＳＰは、それのアクティブ化より前に復号プロセスのために利用可能となり、０に等しいＴｅｍｐｏｒａｌＩｄをもつ少なくとも１つのアクセスユニット中に含まれるか、または外部手段を介して提供され、ＶＰＳ  ＲＢＳＰを含んでいるＶＰＳ  ＮＡＬユニットは、０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄを有する。アクティブ化されたＶＰＳ  ＲＢＳＰは、ＣＶＳ全体についてアクティブなままになる。
【００７２】
[0080]ＣＶＳのためのアクティブＶＰＳ  ＲＢＳＰ用のｖｐｓ＿ｖｉｄｅｏ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｉｄの値を含んでいる任意のＶＰＳ  ＮＡＬユニットは、ＣＶＳの最後のアクセスユニットに後続し、別のＣＶＳの最初のＶＣＬ  ＮＡＬユニット、最初のＳＰＳ  ＮＡＬユニット、およびアクティブパラメータセットＳＥＩメッセージ（存在するとき）を含んでいる最初のＳＥＩ  ＮＡＬユニットに先行しない限り、ＣＶＳのためのアクティブＶＰＳ  ＲＢＳＰのコンテンツと同じコンテンツを有する。
【００７３】
[0081]シンタックス要素の値と、ＶＰＳ、ＳＰＳおよびＰＰＳ中のそれらのシンタックス要素ならびに他のシンタックス要素から導出される変数の値との間の関係上に表現されるすべての制約は、アクティブＶＰＳ  ＲＢＳＰと、ベースレイヤのためのアクティブＳＰＳ  ＲＢＳＰと、ベースレイヤのためのアクティブＰＰＳ  ＲＢＳＰとにのみ適用される制約の表現である。ビットストリーム中で決してアクティブにされないいずれかのＶＰＳ  ＲＢＳＰ、ＳＰＳ  ＲＢＳＰおよびＰＰＳ  ＲＢＳＰが存在する場合、それのシンタックス要素は、別様に準拠するビットストリーム中で参照によってアクティブ化された場合、指定された制約に準拠するはずである値を有するものである。
【００７４】
[0082]復号プロセスの動作中に、アクティブＶＰＳ  ＲＢＳＰと、ベースレイヤのためのアクティブＳＰＳ  ＲＢＳＰと、ベースレイヤのためのアクティブＰＰＳ  ＲＢＳＰとのパラメータの値が事実上考慮される。ＳＥＩメッセージの解釈のために、同じアクセスユニット中で０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつ、コーディングされたピクチャのＶＣＬ  ＮＡＬユニットの復号プロセスの動作のための、アクティブＶＰＳ  ＲＢＳＰと、ベースレイヤのためのアクティブＳＰＳ  ＲＢＳＰと、ベースレイヤのためのアクティブＰＰＳ  ＲＢＳＰとの値が、ＳＥＩメッセージセマンティクス中で別段に指定されない限り、事実上考慮される。
オペレーションポイント、出力オペレーションポイント、レイヤセット、および出力レイヤセット
[0083]本明細書で使用するオペレーションポイントは、入力としての別のビットストリーム、ターゲット最高ｔｅｍｐｏｒａｌ＿ＩＤ、およびターゲットレイヤ識別子リストを用いたサブビットストリーム抽出プロセスの動作によって、別のビットストリームから作り出されるビットストリームである。より具体的には、「オペレーションポイント」は、時間的に、および／または複数のレイヤおよび／またはビューに関してスケーラブルである元のビットストリームから抽出され得るサブビットストリームである。すなわち、オペレーションポイントは、入力として、別のビットストリーム、ターゲット最高ｔｅｍｐｏｒａｌ  ＩＤ、およびターゲットレイヤ識別子リストを用いたサブビットストリーム抽出プロセスの動作によって、別のビットストリームから作り出されるビットストリームである。ビットストリームは、オペレーションポイントのビューを含む１つまたは複数のビューを含む。ターゲット最高ｔｅｍｐｏｒａｌ＿ＩＤは時間サブセットを定義する。ターゲットレイヤリストは、オペレーションポイントのために復号されるべきレイヤのセットと、出力オペレーションポイントのために出力されるべきレイヤのセットとのレイヤのセットを含む。出力オペレーションポイントは、とりわけ、出力レイヤのセット、すなわち、出力されるべきレイヤである、出力レイヤセットにおいて識別されるレイヤに関連する。概して、各ビットストリームは１つまたは複数の出力レイヤセットを含んでいることがある。各出力レイヤセットは１つまたは複数の出力オペレーションポイントを含んでいることがある。対応するサブビットストリームが適合ビットストリームであることを保証するために、出力オペレーションポイントごとにビットストリーム適合テスト（a bitstream conformance test）が実施される。
【００７５】
[0084]「レイヤセット」という用語は、復号されるべきレイヤのセットを指すために使用される。「レイヤセット」は、レイヤセットがｔｅｍｐｏｒａｌ  ＩＤの特定の値に関連付けられないことを除いて、オペレーションポイントと同様である。むしろ、レイヤ中に存在する時間サブレイヤは、すべてレイヤセットに関係する。同様に、レイヤセットは、可能な限り最も高いＴｅｍｐｏｒａｌ  ＩＤに関連付けられると言われ得る。したがって、レイヤ中に存在する時間サブレイヤは、すべてレイヤセットに属する。レイヤセットは、可能な限り最も高い値である最高ｔｅｍｐｏｒａｌ  ＩＤを用いて、オペレーションポイントがビットストリームから導出され得るのと同じ方法でビットストリームから導出され得る。
【００７６】
[0085]「出力レイヤセット」という用語は、出力レイヤが指定されたレイヤセットを指す。したがって、復号されるべきレイヤのセットがレイヤセットとして指定されている間、出力されるべきレイヤのセットは出力レイヤセットのために指定される。いくつかの例では、出力レイヤセットは、対応するレイヤセットへのインデックスを含むことによって、対応するレイヤセットを識別し、ここで、対応するレイヤセットは、復号されるべきレイヤを識別する。他の例では、出力レイヤセットは、いくつかの他の方法で対応するレイヤセットを識別する。
【００７７】
[0086]出力のターゲットにされないレイヤセット中のレイヤは、たとえば、レイヤ間（またはビュー間）予測のために使用されるとき、依然として復号され得る。出力のターゲットにされるレイヤは、復号されるべきレイヤのサブセットであり、復号されるべきレイヤの１つ、いくつか、または全部が出力のターゲットにされ得る。「サブセット」という用語は、必ずしも、出力されるべきレイヤが、復号されるべきレイヤの厳密なサブセットであることを意味するとは限らないことを理解されたい。すなわち、いくつかの例では、復号されるべきレイヤと出力されるべきレイヤとは同じである。したがって、出力レイヤセットと出力オペレーションポイントとの間の差異は、上記で説明したようにレイヤセットとオペレーションポイントとの間の差異と同様である。
【００７８】
[0087]サブビットストリームは、（出力オペレーションポイントのためのレイヤを識別する）レイヤ識別子と、ビットストリームの出力オペレーションポイントを識別する（出力オペレーションポイントのための時間サブセットを識別する）時間サブレイヤ識別子との値に基づいて、ビットストリームから抽出され得る。出力オペレーションポイントは、ビットストリーム内のＶＰＳ中でシグナリングされ得る。オペレーションポイントの各々について、オペレーションポイントシンタックス構造は、所与のオペレーションポイントのサブビットストリームに属する、ビットストリーム中のネットワークアブストラクションレイヤ（ＮＡＬ）ユニットを識別するために使用されるレイヤ識別子のセットを指定する。このようにして、所与の出力オペレーションポイントのサブビットストリームを構成するＮＡＬユニットは、ＮＡＬユニットのレイヤ識別子と、出力オペレーションポイントに関連する最高ｔｅｍｐｏｒａｌ  ＩＤとに基づいて、元のビットストリームから抽出され得る。ＮＡＬユニットは、コーディングされたビデオデータの成分であり、コーディングされたビデオデータはＮＡＬユニットに編成される。
プロファイル、ティア、レベルシンタックス
[0088]ｐｒｏｆｉｌｅ＿ｔｉｅｒ＿ｌｅｖｅｌ（）シンタックス構造は、プロファイル、ティア、およびレベルに関係するシンタックス情報を与えるシンタックス構造である。プロファイル、ティア、およびレベルは、ＨＥＶＣ規格またはＨＥＶＣ拡張規格（たとえば、ＳＨＶＣ、ＭＶ−ＨＥＶＣ）を、それが同様の機能要件を有し得る様々な適用例にわたって相互運用可能であるように実装するための異なる適合点（conformance points）を指定する。いくつかの例では、プロファイルは、コーデックが適合ビットストリームを生成するために使用することができるコーディングツールまたはアルゴリズムのセットを定義することができる。プロファイルは、特定の規格、たとえばＨＥＶＣによって指定されるビットストリームシンタックス全体のサブセットである。所与のプロファイルのシンタックスによって課される限界内で、復号ピクチャの指定されたサイズなど、ビットストリーム中のシンタックス要素がとる値に応じて、エンコーダおよびデコーダのパフォーマンスの極めて大きい変動を必要とする可能性が依然としてある。多くの適用例では、特定のプロファイル内でシンタックスのすべての仮定的使用を処理することが可能なデコーダ（たとえば、ビデオデコーダ３０）を実装することは、実際的でも経済的でもない可能性がある。したがって、「ティア」および「レベル」は、各プロファイル内でも指定され得る。ティアのレベルは、ビットストリーム中のシンタックス要素の値に課された制約の指定されたセットである。これらの制約は、値に関する単純な制限であり得る。代替的に、それらは、値の算術的組合せ（たとえば、ピクチャの幅×ピクチャの高さ×毎秒復号されるピクチャの数）に関する制約の形態をとり得る。下位ティアのために指定されたレベルは、上位ティアのために指定されたレベルよりも制約される。
【００７９】
[0089]いくつかの例では、ティアおよびレベルは、デコーダ（たとえば、ビデオデコーダ３０）の処理負荷とデコーダのメモリ容量とに関して制約を課し得る。レベル情報は、データの処理に関する制約を確立することができる。たとえば、レベル情報は、考えられる例の中でも、最大サンプルレート、最大ピクチャサイズ、最大ビットレート、および最小圧縮比を含むことができる。レベル情報はまた、復号ピクチャバッファ（ＤＰＢ）とコード化ピクチャバッファ（ＣＰＢ）との容量を含むことができる。ＣＰＢは、データフロー管理を目的として圧縮データをそれの復号前に保持する。ＤＰＢは、復号されたピクチャデータを保持する。
【００８０】
[0090]高効率ビデオコーディングのティアおよびレベルは、最大ビットレートと、最大ルーマサンプルレートと、最大ルーマピクチャサイズと、最小圧縮比と、許容されるスライスの最大数と、および許容されるタイルの最大数とに関して、高効率ビデオコーディング（ＨＥＶＣ）ビットストリームを定義する制約である。下位ティアは上位ティアよりも制約され、下位レベルは上位レベルよりも制約される。
【００８１】
[0091]ＨＥＶＣ規格は、主ティアおよび高ティアという、２つのティアを定義する。主ティアは高ティアよりも下位ティアである。ティアは、それらの最大ビットレートに関して異なる適用例を扱うように実装される。主ティアは、多くの共通の適用例に適応し平均ビットレートを有することができるが、高いティアは、より厳しい適用例に適応することができる。
【００８２】
[0092]ＨＥＶＣ規格は１３個のレベルを定義する。レベルは、ビットストリームのための制約のセットである。レベル４よりも下のレベルでは、主ティアのみが可能にされる。所与のティア／レベルに準拠するビデオデコーダ３０は、そのティア／レベルのためにおよびすべての下位ティア／レベルのために符号化されたすべてのビットストリームを復号することが可能である。
【００８３】
[0093]本明細書で説明するビデオコーダ（たとえば、ビデオエンコーダ２０またはビデオデコーダ３０（図１））は、リンク１６を介してプロファイル、ティア、およびレベルシンタックス構造を送信および受信することができる。ビデオコーダ（たとえば、システム１０）はまた、複数の出力レイヤセットの各々についてのプロファイル、ティア、およびレベルシンタックス構造のうちの１つを参照し、ＯＬＳについて参照されたプロファイル、ティア、およびレベルシンタックス構造からの情報に基づいて出力レイヤセットのうちの１つまたは複数のビデオデータを復号し得る。たとえば、ビデオエンコーダ２０は、複数の出力レイヤセットの各々についてのプロファイル、ティア、およびレベルシンタックス構造のうちの１つを参照し、出力レイヤセットについて参照されたプロファイル、ティア、およびレベルシンタックス構造からの情報に基づいて１つまたは複数の出力レイヤセットのビデオデータを符号化することができる。ビデオデコーダ３０はまた、複数の出力レイヤセットの各々についてのプロファイル、ティア、およびレベルシンタックス構造のうちの１つを参照し、出力レイヤセットについて参照されたプロファイル、ティア、およびレベルシンタックス構造からの情報に基づいて出力レイヤセットのうちの１つのビデオデータを復号し得る。
【００８４】
[0094]ＰＴＬ情報がｐｒｏｆｉｌｅ＿ｔｉｅｒ＿ｌｅｖｅｌ（）シンタックス要素内に含まれ、パラメータセット（たとえば、ＳＰＳ、ＶＰＳ）を介して搬送され得る。ｐｒｏｆｉｌｅ＿ｔｉｅｒ＿ｌｅｖｅｌ（）シンタックス構造は、ＯＬＳが準拠するプロファイル、ティア、およびレベルを与えることができ、ＯＬＳのためにアクティブなＶＰＳ中に含まれ得る。いくつかの例では、ＰＴＬ情報はＶＰＳ拡張中に含まれる。ｐｒｏｆｉｌｅ＿ｔｉｅｒ＿ｌｅｖｅｌ（）シンタックス構造がｖｐｓ＿ｅｘｔｅｎｓｉｏｎ（）シンタックス構造中に含まれるとき、ｖｐｓ＿ｅｘｔｅｎｓｉｏｎ（）シンタックス構造のｐｒｏｆｉｌｅ＿ｔｉｅｒ＿ｌｅｖｅｌ＿ｉｄｘ［ｉ］シンタックス要素は、ｉ番目のＯＬＳにどのｐｒｏｆｉｌｅ＿ｔｉｅｒ＿ｌｅｖｅｌ（）シンタックス構造が適用されるかを指定し、ここで、「ｉ」は整数レイヤである。シンタックスｎｕｍ＿ａｄｄ＿ｌａｙｅｒ＿ｓｅｔｓが０よりも大きく、ｉが、両端値を含む、ＦｉｒｓｔＡｄｄＬａｙｅｒＳｅｔＩｄｘからＬａｓｔＡｄｄＬａｙｅｒＳｅｔＩｄｘの範囲内にあるとき、ｐｒｏｆｉｌｅ＿ｔｉｅｒ＿ｌｅｖｅｌ＿ｉｄｘ［ｉ］によって識別されるｐｒｏｆｉｌｅ＿ｔｉｅｒ＿ｌｅｖｅｌ（）シンタックス構造は、ＯｌｓＩｄｘＴｏＬｓＩｄｘ［ｉ］に等しく設定された入力変数ｌｓＩｄｘをもつ非ベースレイヤの出力に適用される。ｐｒｏｆｉｌｅ＿ｔｉｅｒ＿ｌｅｖｅｌ（）シンタックス構造がＶＰＳ中に含まれるが、ｖｐｓ＿ｅｘｔｅｎｓｉｏｎ（）シンタックス構造中に含まれないとき、ｐｒｏｆｉｌｅ＿ｔｉｅｒ＿ｌｅｖｅｌ（）シンタックス構造は第０のＯＬＳに適用される。ｐｒｏｆｉｌｅ＿ｔｉｅｒ＿ｌｅｖｅｌ（）シンタックス構造がベースレイヤのためのアクティブＳＰＳ中に含まれるとき、ｐｒｏｆｉｌｅ＿ｔｉｅｒ＿ｌｅｖｅｌ（）シンタックス構造は第０のＯＬＳに適用される。ｐｒｏｆｉｌｅ＿ｔｉｅｒ＿ｌｅｖｅｌ（）シンタックス構造が、ｌａｙｅｒＩｄに等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつ独立の非ベースレイヤのためのアクティブＳＰＳ中に含まれるとき、ｐｒｏｆｉｌｅ＿ｔｉｅｒ＿ｌｅｖｅｌ（）シンタックス構造は、ＡｓｓｉｇｎｅｄＢａｓｅＬａｙｅｒＩｄ［ｌｓＩｄｘ］がｌａｙｅｒＩｄに等しくなるように、入力パラメータｌｓＩｄｘを用いた非ベースレイヤサブツリー抽出プロセスの出力ビットストリーム中の第０のＯＬＳに適用される。
【００８５】
[0095]図４は、ビデオエンコーダとビデオデコーダとの間の例示的な信号フローを示す信号フロー図である。信号フロー４００は、たとえば、ビデオソース１８から、ビデオデータ４０５を受信しているビデオエンコーダ２０を表す。ビデオデータ４０５は、ビデオエンコーダ２０がベースレイヤ（ＢＬ）またはレイヤ０、および１つまたは複数の非ベースレイヤ、またはエンハンスメントレイヤ（ＥＬ）中で符号化することができる生ビデオ情報を含むことができる。いくつかの例では、ビデオエンコーダ２０は、ビデオデータ４０５をベースレイヤビデオデータ４１０（たとえば、レイヤ０）、およびマルチレイヤビデオデータ４１５（たとえば、レイヤ０〜２）として符号化することができる。ビデオエンコーダ２０は、符号化およびビデオデコーダ３０への送信のためのビデオデータ４０５を受信することができる。
【００８６】
[0096]いくつかの実施形態では、ビデオエンコーダ２０は、ビデオデータのベースレイヤについてのプロファイル、ティア、およびレベル情報を含む、０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつＶＰＳ４２０をシグナリングすることができる。ｎｕｈ＿ｌａｙｅｒ＿ｉｄは、ビデオデータの対応するレイヤを示すために使用され得る。したがって、ＶＰＳ４２０は、後続のまたは次のＶＰＳによって取って代わられるまで、「アクティブＶＰＳ」と呼ばれ得る。レイヤは、ｎｕｈ＿ｌａｙｅｒ＿ｉｄの特定の値を有するＶＣＬ  ＮＡＬユニットと、関連する非ＶＣＬ  ＮＡＬユニットとのセットであり得る。ｎｕｈ＿ｌａｙｅｒ＿ｉｄは、たとえば、ベースレイヤまたは第０のＯＬＳなど、ただ１つのレイヤを含んでいるビットストリーム中では０に等しくなり得る。ｎｕｈ＿ｌａｙｅｒ＿ｉｄはまた、ベースレイヤのすべてのＮＡＬユニット中で０に等しくなり得る。ｎｕｈ＿ｌａｙｅｒ＿ｉｄの他の値は、たとえば、マルチレイヤビデオデータ４１５など、複数のレイヤを含んでいるビットストリームにおいて現れ得る。
【００８７】
[0097]ビデオエンコーダ２０は、０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつＶＰＳ４２０を送信することができる。そのような例では、ベースレイヤがビットストリームの唯一のコンテンツであり、したがって、唯一の出力レイヤであるので、ＶＰＳ４２０は、ベースレイヤビデオデータ４１０、または第０のＯＬＳ４２６のためのプロファイル、ティア、およびレベルシンタックス構造を含むことができる。ビデオデコーダ３０は、０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつＶＰＳ４２０を受信することができ、ここにおいて、ＶＰＳは、ベースレイヤビデオデータ４１０のためのプロファイル、ティア、およびレベルシンタックス構造を含み、第０のＯＬＳ４２６を復号するためにＰＴＬ情報を使用した。
【００８８】
[0098]ビデオエンコーダ２０はまた、ＶＰＳ４２０を参照し、ベースレイヤビデオデータ４１０についてのＰＴＬ情報を示す、０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつＳＰＳ４２２を送信することができる。ビデオエンコーダ２０は、符号化ビデオデータ４０５を含むＶＣＬ  ＮＡＬユニット４２４をさらに送信することができる。いくつかの実施形態では、ＶＣＬ  ＮＡＬユニット４２４は、たとえば第０のＯＬＳ４２６など、出力としてベースレイヤ（レイヤ０）のみを有するビットストリーム全体を表すことができる。ビデオデコーダ３０は、次いで、第０のＯＬＳ４２６を復号するためにＶＰＳ４２０を参照することができる。いくつかの実施形態では、ＶＰＳ４２０およびＳＰＳ４２２は、各々が含んでいるＰＴＬ情報が、ビデオデコーダ３０において受信されたビデオデータ４０５を復号するために現在参照されている場合、「アクティブ」ＳＰＳまたはアクティブＶＰＳと呼ばれることがある。いくつかの例では、ＳＰＳ（たとえば、ＳＰＳ４２２）は０個あるいは１つのＰＴＬシンタックス構造を含んでいるが、ＶＰＳは複数のＰＴＬシンタックス構造を含んでいることがあり、たとえば、レイヤごとに１つのＰＴＬシンタックス構造を含んでいることがある。
【００８９】
[0099]そのような実施形態では、アクティブＶＰＳによって指定される第０のＯＬＳは、唯一の出力レイヤでもある、ベースレイヤビデオデータ４１０のみを含んでいるＯＬＳ（０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつレイヤ）を指す。したがって、ビットストリーム全体がベースレイヤビデオデータ４１０のみを含んでいるとき、第０のＯＬＳ４２６のティアおよびレベル情報は、アクティブＳＰＳ４２０のｐｒｏｆｉｌｅ＿ｔｉｅｒ＿ｌｅｖｅｌ（）シンタックス構造において、ならびにアクティブＶＰＳ４２２中の第１のｐｒｏｆｉｌｅ＿ｔｉｅｒ＿ｌｅｖｅｌ（）シンタックス構造においてシグナリングされる。
【００９０】
[00100]いくつかの実施形態では、マルチレイヤビデオデータ４１５を符号化するために同様のプロセスが使用され得る。ビデオエンコーダ２０はＶＰＳ４３０をシグナリングすることができる。ＶＰＳ４３０は、ビットストリーム中に各ＯＬＳについてのＰＴＬ情報を含むことができる。たとえば、第０のＯＬＳ４５０、第１のＯＬＳ、または第２のＯＬＳについてのＰＴＬ情報が含まれ得る。ビデオエンコーダ２０はまた、ビットストリーム全体（たとえば、ビデオデータ４１５）についてのＰＴＬ情報を含むＳＰＳ４３２をシグナリングすることができる。ビデオエンコーダ２０は、次いで、ＶＰＳ４３０において識別された１つまたは複数のＯＬＳを有するＶＣＬ  ＮＡＬユニット４３８を送信することができる。ＶＰＳ４３０はビットストリーム中に各ＯＬＳについてのＰＴＬ情報を含んでいるので、ビデオデコーダ３０は、ビットストリームを復号するとき、ＶＰＳ４３０を参照し、第０のＯＬＳ４５０についてのＰＴＬ情報を受信することができる。
【００９１】
[00101]いくつかの実施形態では、たとえばＶＰＳ４３０の、シンタックス構造のｖｐｓ＿ｅｘｔｅｎｓｉｏｎ（）は、第０のＯＬＳについてのＰＴＬシンタックス情報を含むことができる。したがって、第０のＯＬＳについてのＰＴＬ情報は、以下に示されているように、ＶＰＳ拡張の最初に実装され得る。これは、適切なレベルにおいて必要なＰＴＬ情報を与え、そのようなＰＴＬ情報が含まれないときにそれを受信するための余分のシグナリングを減少させて、ＶＰＳ拡張の効率を改善することができる。表１は、そのような状況が存在するときにＶＰＳ拡張中に含まれ得るシンタックス要素を示す。
【００９２】
[00102]ｖｐｓ＿ｅｘｔｅｎｓｉｏｎ（）シンタックス構造へのいくつかの追加は、表１に記載されているように、以下のシンタックス要素を含むことができる。
【００９３】
【表１】
0006377778.tif 000002
【００９４】
[00103]表１に示されているように、ｖｐｓ＿ｅｘｔｅｎｓｉｏｎ（）シンタックスは、第０のＯＬＳについてのＰＴＬ情報を含めるために、「ｆｏｒ（ｉ＝ｖｐｓ＿ｂａｓｅ＿ｌａｙｅｒ＿ｉｎｔｅｒｎａｌ＿ｆｌａｇ？０：１；ｉ＜ＮｕｍＯｕｔｐｕｔＬａｙｅｒＳｅｔｓ；ｉ＋＋）」および「ｉｆ（ｉ＞ｖｐｓ＿ｎｕｍ＿ｌａｙｅｒ＿ｓｅｔｓ＿ｍｉｎｕｓ１｜｜（ｄｅｆａｕｌｔＯｕｔｐｕｔＬａｙｅｒＩｄｃ＝＝２＆＆ｉ＞０）」という条件を組み込むことができる。これは、ビットストリームがベースレイヤ以外のさらなるもの（たとえば、マルチレイヤビデオデータ４１５）と２つ以上のＯＬＳ（たとえば、第０、第１、および第２のＯＬＳ）とを含んでいるが、ティアおよびレベル情報が常に第０のＯＬＳについてシグナリングされることを保証することができる。
【００９５】
[00104]図５は、ビットストリームを符号化するための方法のフローチャートである。ブロック５１０において、ビットストリーム内で複数の出力レイヤセット（ＯＬＳ）を示す、ＶＰＳ中に含めるための１つまたは複数のシンタックス要素を生成する。シンタックス要素はまた、ＶＰＳ（たとえば、ＶＰＳ４３０）の拡張部分中に含まれ得る。各ＯＬＳは、複数のレイヤのうちの１つまたは複数のレイヤを有することができる。シンタックス要素は、ビットストリーム中に含まれている複数のＯＬＳの各ＯＬＳについてのプロファイル、ティア、およびレベル（ＰＴＬ）情報を示すことができる。
【００９６】
[00105]ブロック５２０において、ビデオエンコーダ２０は、ＶＰＳ（たとえば、ＶＳ４３０）内でシンタックス要素を含む複数のレイヤを符号化することができる。このようにして、方法５００は、ＶＰＳ拡張において、第０のＯＬＳについてのＰＴＬ情報を含む、ビットストリームの各ＯＬＳについてのプロファイル、ティア、およびレベル情報をシグナリングするために使用され得る。
【００９７】
[00106]図６は、ビットストリームを復号するための方法のフローチャートである。方法６００はブロック６１０において開始し、このとき、ビデオデコーダ３０は、ビデオデータの複数のレイヤを有するビットストリームを受信する。ビットストリームはマルチレイヤビデオデータ４１５（図４）を含むことができる。ビデオデータの複数のレイヤはまた、ベースレイヤとＶＰＳ（たとえば、ＶＰＳ４３０）とを含むことができる。ＶＰＳは、複数のＯＬＳの存在と、複数のＯＬＳの各ＯＬＳについてのプロファイル、ティア、およびレベル（ＰＴＬ）情報とを示すことができる。
【００９８】
[00107]ブロック６２０において、ビデオデコーダ３０は、ＯＬＳのうちの１つを、復号のためのターゲットＯＬＳとして選択することができる。次いでブロック６３０において、ビデオデコーダ３０は、アクティブＶＰＳ（たとえば、ＶＰＳ４３０）中でシグナリングされるＰＴＬ情報を使用してターゲットＯＬＳを復号することができる。したがって、方法６００は、ビデオデコーダ３０が、ビットストリーム中に含まれている各ＯＬＳ（たとえば、第０のＯＬＳ、第１のＯＬＳ、および第２のＯＬＳ）について最適なＰＴＬ情報を使用することができる方法を提供することができる。
【００９９】
[00108]本明細書で開示する実施形態に関して説明した様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、または両方の組合せとして実装され得る。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップについて、概してそれらの機能に関して上記で説明した。そのような機能がハードウェアとして実装されるか、ソフトウェアとして実装されるかは、特定の適用例および全体的なシステムに課された設計制約に依存する。当業者は、説明した機能を特定の適用例ごとに様々な方法で実装し得るが、そのような実装の決定は、本開示の範囲からの逸脱を生じるものと解釈されるべきではない。
【０１００】
[00109]本明細書で説明した方法は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。そのような方法は、汎用コンピュータ、ワイヤレス通信デバイスハンドセット、またはワイヤレス通信デバイスハンドセットおよび他のデバイスにおける適用例を含む複数の用途を有する集積回路デバイスなど、様々なデバイスのいずれかにおいて実装され得る。モジュールまたは構成要素として説明した任意の機能は、集積論理デバイスにおいて一緒に、または個別であるが相互運用可能な論理デバイスとして別々に実装され得る。ソフトウェアで実装された場合、本方法は、実行されたとき、少なくとも部分的に、上記で説明した方法のうちの１つまたは複数を実施する命令を含むプログラムコードを備えるコンピュータ可読データ記憶媒体によって実現され得る。コンピュータ可読データ記憶媒体は、パッケージング材料を含み得るコンピュータプログラム製品の一部を形成し得る。コンピュータ可読媒体は、同期ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）などのランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）、電気消去可能プログラマブル読取り専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュメモリ、磁気または光学データ記憶媒体など、メモリまたはデータ記憶媒体を備え得る。本方法は、追加または代替として、少なくとも部分的に、伝搬信号または電波など、命令またはデータ構造の形態でプログラムコードを搬送または伝達し、コンピュータによってアクセスされ、読み取られ、および／または実行され得るコンピュータ可読通信媒体によって実現され得る。
【０１０１】
[00110]プログラムコードは、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブル論理アレイ（ＦＰＧＡ）、または他の等価な集積回路またはディスクリート論理回路など、１つまたは複数のプロセッサを含み得るプロセッサによって実行され得る。そのようなプロセッサは、本開示で説明した方法のいずれかを実施するように構成され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、ＤＳＰとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、ＤＳＰコアと連携する１つまたは複数のマイクロプロセッサ、あるいは任意の他のそのような構成として実装され得る。したがって、本明細書で使用する「プロセッサ」という用語は、上記の構造、上記の構造の任意の組合せ、または本明細書で説明した方法の実装に適した任意の他の構造もしくは装置のいずれかを指し得る。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のソフトウェアモジュールもしくはハードウェアモジュール内に提供され得、または複合ビデオエンコーダ／デコーダ（コーデック）に組み込まれ得る。
【０１０２】
[00111]本明細書で説明したコーディング方法は、例示的なビデオ符号化および復号システムにおける実施形態であり得る。システムは、宛先デバイスによって後で復号されるべき符号化ビデオデータを与えるソースデバイスを含む。特に、ソースデバイスは、コンピュータ可読媒体を介してビデオデータを宛先デバイスに与える。ソースデバイスおよび宛先デバイスは、デスクトップコンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスのいずれかを備え得る。場合によっては、ソースデバイスおよび宛先デバイスはワイヤレス通信のために装備され得る。
【０１０３】
[00112]本開示の実施形態は、上記では特定の実施形態について説明されているが、本開示の多くの変形形態が可能である。たとえば、様々な構成要素の数は増加または減少され得、電源電圧を決定するモジュールおよびステップは、周波数、別のシステムパラメータ、またはパラメータの組合せを決定するために変更され得る。さらに、様々な実施形態の特徴は、上記で説明した組合せとは異なる組合せで組み合され得る。
【０１０４】
[00113]当業者は、本明細書で開示する実施形態に関して説明した様々な例示的なブロックおよびモジュールが様々な形態で実装され得ることを諒解されよう。いくつかのブロックおよびモジュールについて、概して上記ではそれらの機能に関して説明した。そのような機能がどのように実装されるかは、全体的なシステムに課された設計制約に依存する。当業者は、説明した機能を特定の適用例ごとに様々な方法で実装することができるが、そのような実装の決定は、本開示の範囲からの逸脱を生じるものと解釈されるべきではない。さらに、モジュール、ブロック、またはステップ内の機能のグループ化は、説明を簡単にするためのものである。特定の機能またはステップは、本開示から逸脱することなく、あるモジュールまたはブロックから移動されるか、またはモジュールまたはブロックにわたって分散され得る。
【０１０５】
[00114]開示する実施形態についての上記の説明は、あらゆる当業者が本開示の主題を製作または使用できるように提供されたものである。これらの実施形態への様々な修正は当業者には容易に明らかになり、本明細書で説明した一般的原理は、本開示の趣旨または範囲から逸脱することなく他の実施形態に適用され得る。したがって、本明細書で提示した説明および図面は、本開示の現在好ましい実装形態を表し、したがって、本開示によって広く企図される主題を表すことを理解されたい。本開示の範囲は、当業者に明らかになり得る他の実施形態を完全に包含することと、本開示の範囲は、したがって、添付の特許請求の範囲以外のものによって限定されないこととをさらに理解されたい。
以下に本願発明の当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
ビデオデータの複数のレイヤを有するビットストリームを符号化するための方法であって、ビデオデータの前記複数のレイヤはベースレイヤを含み、前記方法は、
前記ビットストリーム内に、複数の出力レイヤセット（ＯＬＳ）を示す１つまたは複数のシンタックス要素を生成することと、各ＯＬＳは前記複数のレイヤのうちの１つまたは複数のレイヤを有し、前記シンタックス要素は、前記複数のＯＬＳの各ＯＬＳについてのプロファイル、ティア、およびレベル（ＰＴＬ）情報をさらに示し、
ビデオパラメータセット（ＶＰＳ）中に前記１つまたは複数のシンタックス要素を含む前記複数のレイヤを符号化することと、
を備える、方法。
［Ｃ２］
前記ＶＰＳは第０のＯＬＳについてのＰＴＬ情報を示す、Ｃ１に記載の方法。
［Ｃ３］
前記第０のＯＬＳについての前記ＰＴＬ情報は、前記ＶＰＳのＶＰＳ拡張部分中に含まれる、Ｃ２に記載の方法。
［Ｃ４］
ビデオデータの複数のレイヤを有するビットストリームを符号化するためのデバイスであって、ビデオデータの前記複数のレイヤはベースレイヤを含み、前記デバイスは、
ビデオデータの前記複数のレイヤを記憶するように構成されたメモリと、
前記メモリに動作可能に結合され、
前記ビットストリーム内に、複数の出力レイヤセット（ＯＬＳ）を示す１つまたは複数のシンタックス要素を生成することと、各ＯＬＳは前記複数のレイヤのうちの１つまたは複数のレイヤを有し、前記シンタックス要素は、前記複数のＯＬＳの各ＯＬＳについてのプロファイル、ティア、およびレベル（ＰＴＬ）情報をさらに示し、
ビデオパラメータセット（ＶＰＳ）中に前記１つまたは複数のシンタックス要素を含む前記複数のレイヤを符号化することと、
を行うように構成された少なくとも１つのプロセッサと、
を備える、デバイス。
［Ｃ５］
前記少なくとも１つのプロセッサは、前記ＶＰＳ中に第０のＯＬＳについてのＰＴＬ情報を示すようにさらに構成された、Ｃ４に記載のデバイス。
［Ｃ６］
前記少なくとも１つのプロセッサは、前記ＶＰＳのＶＰＳ拡張部分中に前記第０のＯＬＳについての前記ＰＴＬ情報を示すようにさらに構成された、Ｃ５に記載のデバイス。
［Ｃ７］
ビデオデータを復号するための方法であって、
ビデオデータの複数のレイヤを有するビットストリームを受信することと、ビデオデータの前記複数のレイヤはベースレイヤとビデオパラメータセット（ＶＰＳ）とを含み、前記ＶＰＳは、複数の出力レイヤセット（ＯＬＳ）と、前記複数のＯＬＳの各ＯＬＳについてのプロファイル、ティア、およびレベル（ＰＴＬ）情報とを示し、
前記１つまたは複数のレイヤから１つのＯＬＳをターゲットＯＬＳとして選択することと、
前記ＶＰＳ中でシグナリングされるＰＴＬ情報に基づいて、前記ターゲットＯＬＳを復号することと、
を備える、方法。
［Ｃ８］
前記ターゲットＯＬＳは第０のＯＬＳであり、前記ＶＰＳは前記第０のＯＬＳについてのＰＴＬ情報を含む、Ｃ７に記載の方法。
［Ｃ９］
前記第０のＯＬＳについての前記ＰＴＬ情報は、前記ＶＰＳのＶＰＳ拡張中に含まれる、Ｃ８に記載の方法。
［Ｃ１０］
ビデオデータを復号するためのデバイスであって、
ビデオデータの複数のレイヤを有するビットストリームを記憶するように構成されたメモリと、ビデオデータの前記複数のレイヤはベースレイヤとビデオパラメータセット（ＶＰＳ）とを含み、前記ＶＰＳは、複数の出力レイヤセット（ＯＬＳ）と、前記複数のＯＬＳの各ＯＬＳについてのプロファイル、ティア、およびレベル（ＰＴＬ）情報とを示し、
前記メモリに動作可能に結合され、
前記１つまたは複数のレイヤから１つのＯＬＳをターゲットＯＬＳとして選択することと、
前記ＶＰＳ中でシグナリングされるＰＴＬ情報に基づいて、前記ターゲットＯＬＳを復号することと、
を行うように構成された少なくとも１つのプロセッサと、
を備える、デバイス。
［Ｃ１１］
前記ターゲットＯＬＳは第０のＯＬＳであり、前記ＶＰＳは前記第０のＯＬＳについてのＰＴＬ情報を含む、Ｃ１０に記載のデバイス。
［Ｃ１２］
前記第０のＯＬＳについての前記ＰＴＬ情報は、前記ＶＰＳのＶＰＳ拡張中に含まれる、Ｃ１１に記載のデバイス。
【図１】
0006377778.tif 000003
【図２】
0006377778.tif 000004
【図３】
0006377778.tif 000005
【図４】
0006377778.tif 000006
【図５】
0006377778.tif 000007
【図６】
0006377778.tif 000008