(57)【特許請求の範囲】
【請求項１】
ビデオ情報を符号化するための装置であって、
複数のレイヤに関連付けられたビデオ情報を記憶するためのメモリと、
前記メモリに動作可能に結合されたプロセッサと、
を備え、前記プロセッサは、
符号化されるべき現在アクセスユニット（ＡＵ）に関連付けられた情報を取得することと、前記現在ＡＵが複数のレイヤからのピクチャを含み、前記複数のレイヤが符号化されるべき現在レイヤを含み、前記現在レイヤが符号化されるべき現在ピクチャを含む、
前記現在レイヤを含む１つまたは複数のレイヤに関連付けられた第１のフラグの値を決定することと、前記第１のフラグは、復号順序において前記現在ＡＵに先行する、前記第１のフラグが関連付けられた前記１つまたは複数のレイヤからのピクチャが、復号順序において前記現在ＡＵ内にあるかまたはそれに後続する別のピクチャの時間動きベクトル予測（ＴＭＶＰ）のために使用されることが可能であるかどうかを示す、
前記第１のフラグの前記値が１であると決定することに応答して、ＴＭＶＰが有効であるかどうかを示す第２のフラグの値に関係なく、復号順序において前記現在ＡＵに先行する、前記第１のフラグが関連付けられた前記１つまたは複数のレイヤからのいずれのピクチャをＴＭＶＰのための参照ピクチャとして使用することも控えることと、前記第２のフラグは、前記現在ピクチャに含まれるスライスのスライスヘッダに含まれる、
を行うように構成され、
前記第１のフラグが、補足エンハンスメント情報（ＳＥＩ）メッセージ中に含まれ、
前記第１のフラグが、処理の順番に関して、前記第２のフラグよりも高い優先順位を有する、
装置。
【請求項２】
ビデオ情報を復号するための装置であって、
複数のレイヤに関連付けられたビデオ情報を記憶するためのメモリと、
前記メモリに動作可能に結合されたプロセッサと、
を備え、前記プロセッサは、
復号されるべき現在アクセスユニット（ＡＵ）に関連付けられた情報を取得することと、前記現在ＡＵが複数のレイヤからのピクチャを含み、前記複数のレイヤが復号されるべき現在レイヤを含み、前記現在レイヤが復号されるべき現在ピクチャを含む、
前記現在レイヤを含む１つまたは複数のレイヤに関連付けられた第１のフラグの値を決定することと、前記第１のフラグは、復号順序において前記現在ＡＵに先行する、前記第１のフラグが関連付けられた前記１つまたは複数のレイヤからのピクチャが、復号順序において前記現在ＡＵ内にあるかまたはそれに後続する別のピクチャの時間動きベクトル予測（ＴＭＶＰ）のために使用されることが可能であるかどうかを示す、
前記第１のフラグの前記値が１であると決定することに応答して、ＴＭＶＰが有効であるかどうかを示す第２のフラグの値に関係なく、復号順序において前記現在ＡＵに先行する、前記第１のフラグが関連付けられた前記１つまたは複数のレイヤからのいずれのピクチャをＴＭＶＰのための参照ピクチャとして使用することも控えることと、前記第２のフラグは、前記現在ピクチャに含まれるスライスのスライスヘッダに含まれる、
を行うように構成され、
前記第１のフラグが、補足エンハンスメント情報（ＳＥＩ）メッセージ中に含まれ、
前記第１のフラグが、処理の順番に関して、前記第２のフラグよりも高い優先順位を有する、
装置。
【請求項３】
前記現在ＡＵ中の前記複数のレイヤのすべてについて、ＴＭＶＰが前記現在ピクチャのために有効でないと前記第２のフラグの前記値が示すとき、および前記現在ピクチャがゼロに等しい時間ＩＤを有するとき、復号順序において前記現在ＡＵに先行するピクチャが、復号順序において前記現在ＡＵ内にあるかまたはそれに後続する別のピクチャのＴＭＶＰのために使用されることが可能でない、請求項１または請求項２に記載の装置。
【請求項４】
前記現在ピクチャが瞬時復号リフレッシュ（ＩＤＲ）ピクチャを備える、請求項１または請求項２に記載の装置。
【請求項５】
前記装置が、デスクトップコンピュータ、ノートブックコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、セットトップボックス、電話ハンドセット、スマートフォン、ワイヤレス通信デバイス、スマートパッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲーミングコンソール、またはビデオストリーミングデバイスのうちの１つまたは複数を備える、請求項１に記載の装置。
【請求項６】
ビデオ情報を符号化する方法であって、
複数のレイヤに関連付けられたビデオ情報を記憶することと、
符号化されるべき現在アクセスユニット（ＡＵ）に関連付けられた情報を取得することと、前記現在ＡＵが複数のレイヤからのピクチャを含み、前記複数のレイヤが符号化されるべき現在レイヤを含み、前記現在レイヤが符号化されるべき現在ピクチャを含む、
現在ピクチャを含む１つまたは複数のレイヤに関連付けられた第１のフラグの値を決定することと、前記第１のフラグは、復号順序において前記現在ＡＵに先行する、前記第１のフラグが関連付けられた前記１つまたは複数のレイヤからのピクチャが、復号順序において前記現在ＡＵ内にあるかまたはそれに後続する別のピクチャの時間動きベクトル予測（ＴＭＶＰ）のために使用されることが可能であるかどうかを示す、
前記第１のフラグの前記値が１であると決定することに応答して、ＴＭＶＰが有効であるかどうかを示す第２のフラグの値に関係なく、復号順序において前記現在ＡＵに先行する、前記第１のフラグが関連付けられた前記１つまたは複数のレイヤからのいずれのピクチャを前記現在ピクチャのＴＭＶＰのための参照ピクチャとして使用することも控えることと、前記第２のフラグは、前記現在ピクチャに含まれるスライスのスライスヘッダに含まれる、
を備え、
前記第１のフラグが、補足エンハンスメント情報（ＳＥＩ）メッセージ中に含まれ、
前記第１のフラグが、処理の順番に関して、前記第２のフラグよりも高い優先順位を有する、
方法。
【請求項７】
ビデオ情報を復号する方法であって、
複数のレイヤに関連付けられたビデオ情報を記憶することと、
復号されるべき現在アクセスユニット（ＡＵ）に関連付けられた情報を取得することと、前記現在ＡＵが複数のレイヤからのピクチャを含み、前記複数のレイヤが復号されるべき現在レイヤを含み、前記現在レイヤが復号されるべき現在ピクチャを含む、
現在ピクチャを含む現在アクセスユニット（ＡＵ）に関連付けられた第１のフラグの値を決定することと、前記第１のフラグは、復号順序において前記現在ＡＵに先行する、前記第１のフラグが関連付けられた前記１つまたは複数のレイヤからのピクチャが、復号順序において前記現在ＡＵ内にあるかまたはそれに後続する別のピクチャの時間動きベクトル予測（ＴＭＶＰ）のために使用されることが可能であるかどうかを示す、
前記第１のフラグの前記値が１であると決定することに応答して、ＴＭＶＰが有効であるかどうかを示す第２のフラグの値に関係なく、復号順序において前記現在ＡＵに先行する、前記第１のフラグが関連付けられた前記１つまたは複数のレイヤからのいずれのピクチャを前記現在ピクチャのＴＭＶＰのための参照ピクチャとして使用することも控えることと、前記第２のフラグは、前記現在ピクチャに含まれるスライスのスライスヘッダに含まれる、
を備え、
前記第１のフラグが、補足エンハンスメント情報（ＳＥＩ）メッセージ中に含まれ、
前記第１のフラグが、処理の順番に関して、前記第２のフラグよりも高い優先順位を有する、
方法。
【請求項８】
前記現在ＡＵ中の前記複数のレイヤのすべてについて、ＴＭＶＰが前記現在ピクチャのために有効でないと前記第２のフラグの前記値が示すとき、および前記現在ピクチャがゼロに等しい時間ＩＤを有するとき、復号順序において前記現在ＡＵに先行するピクチャが、復号順序において前記現在ＡＵ内にあるかまたはそれに後続する別のピクチャのＴＭＶＰのために使用されることが可能でない、請求項６または請求項７に記載の方法。
【請求項９】
前記現在ピクチャが瞬時復号リフレッシュ（ＩＤＲ）ピクチャを備える、請求項６または請求項７に記載の方法。
【請求項１０】
コンピュータハードウェアを備えるプロセッサ上で実行されたとき、請求項６〜請求項９のいずれか一項に記載の方法を前記プロセッサに実行させる命令を備える非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]本開示は、シングルレイヤビデオコーディングとマルチレイヤビデオコーディングの両方を含む、ビデオコーディングおよび圧縮の分野に関する。マルチレイヤビデオコーディングとしては、スケーラブルビデオコーディング、マルチビュービデオコーディング、３次元（３Ｄ）ビデオコーディングなどがあり得る。
【背景技術】
【０００２】
[0002]デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラーまたは衛星無線電話、ビデオ遠隔会議デバイスなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタルビデオデバイスは、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４，Ｐａｒｔ  １０，アドバンストビデオコーディング（ＡＶＣ：Advanced Video Coding）、高効率ビデオコーディング（ＨＥＶＣ：High Efficiency Video Coding）規格によって定義された規格、およびそのような規格の拡張に記載されているビデオ圧縮技法などのビデオ圧縮技法を実装する。ビデオデバイスは、そのようなビデオコーディング技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、符号化、復号、および／または記憶し得る。
【０００３】
[0003]ビデオ圧縮技法は、ビデオシーケンスに固有の冗長性を低減または除去するために空間（ピクチャ内）予測および／または時間（ピクチャ間）予測を実施する。ブロックベースのビデオコーディングの場合、ビデオスライス（たとえば、ビデオフレーム、ビデオフレームの一部分など）が、ツリーブロック、コーディングユニット（ＣＵ：coding unit）および／またはコーディングノードと呼ばれることもあるビデオブロックに区分され得る。ピクチャのイントラコード化（Ｉ）スライス中のビデオブロックは、同じピクチャの中の隣接ブロック内の参照サンプルに対する空間予測を使用して符号化される。ピクチャのインターコード化（ＰまたはＢ）スライス中のビデオブロックは、同じピクチャの中の隣接ブロック中の参照サンプルに対する空間予測、または他の参照ピクチャ中の参照サンプルに対する時間予測を使用し得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームと呼ばれることがある。
【０００４】
[0004]空間予測または時間予測は、コーディングされるべきブロックのための予測ブロックを生じる。残差データは、コーディングされるべき元のブロックと予測ブロックとの間のピクセル差分を表す。インターコード化ブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトル、およびコーディングされたブロックと予測ブロックとの間の差分を示す残差データに従って符号化される。イントラコード化ブロックは、イントラコーディングモードおよび残差データに従って符号化される。さらなる圧縮のために、残差データは、ピクセル領域から変換領域に変換され、残差変換係数が生じ得、その残差変換係数は、次いで量子化され得る。最初に２次元アレイで構成される量子化変換係数は、変換係数の１次元ベクトルを生成するために走査され得、なお一層の圧縮を達成するために、エントロピー符号化が適用され得る。
【発明の概要】
【０００５】
[0005]本開示のシステム、方法およびデバイスは、それぞれいくつかの発明的態様を有し、それらのうちの単一の態様が、本明細書で開示する望ましい属性を単独で担当するとは限らない。１つまたは複数の例の詳細を添付の図面および以下の説明に記載する。添付の図面および以下の説明は、本明細書で説明する発明的概念の全範囲を限定するものではない。他の特徴、目的、および利点は、説明および図面、ならびに特許請求の範囲から明らかになろう。
【０００６】
[0006]スケーラブルビデオコーディング（ＳＶＣ：scalable video coding）は、参照レイヤ（ＲＬ：reference layer）と呼ばれることがあるベースレイヤ（ＢＬ：base layer）と、１つまたは複数のスケーラブルエンハンスメントレイヤ（ＥＬ：enhancement layer）とが使用されるビデオコーディングを指す。ＳＶＣでは、ベースレイヤは、ベースレベルの品質でビデオデータを搬送することができる。１つまたは複数のエンハンスメントレイヤは、たとえば、より高い空間レベル、時間レベル、および／または信号対雑音比（ＳＮＲ：signal-to-noise ratio）レベルをサポートするために追加のビデオデータを搬送することができる。エンハンスメントレイヤは、前に符号化されたレイヤに対して定義され得る。たとえば、最下位レイヤはＢＬとして働き得、最上位レイヤはＥＬとして働き得る。中間レイヤは、ＥＬまたはＲＬのいずれか、あるいはその両方として働き得る。たとえば、中間レイヤ（たとえば、最下位レイヤでも最上位レイヤでもないレイヤ）が、ベースレイヤまたは介在エンハンスメントレイヤ（intervening enhancement layer）など、中間レイヤの下のレイヤのためのＥＬであり、同時に、中間レイヤの上の１つまたは複数のエンハンスメントレイヤのためのＲＬとして働き得る。同様に、ＨＥＶＣ規格のマルチビューまたは３Ｄ拡張では、複数のビューがあり得、あるビューの情報が、別のビューの情報（たとえば動き推定、動きベクトル予測および／または他の冗長性）をコーディング（たとえば、符号化または復号）するために利用され得る。
【０００７】
[0007]いくつかの態様による、ビデオ情報をコーディングするための装置は、メモリとプロセッサとを含む。メモリは、複数のレイヤに関連付けられたビデオ情報を記憶するように構成される。プロセッサは、コーディングされるべき現在アクセスユニット（ＡＵ）に関連付けられた情報を取得するように構成され、現在ＡＵは複数のレイヤからのピクチャを含んでおり、複数のレイヤは、コーディングされるべき現在レイヤを含み、現在レイヤは、コーディングされるべき現在ピクチャを含む。プロセッサは、復号順序において現在レイヤ中の現在ピクチャに先行する先行ピクチャが、復号順序において現在レイヤ中の現在ピクチャに後続する後続ピクチャの時間動きベクトル予測（ＴＭＶＰ：temporal motion vector prediction）のために使用されるかどうかを示す第１のフラグの値を決定するようにさらに構成され、第１のフラグは現在ピクチャに関連付けられる。プロセッサは、第１のフラグの値が、現在レイヤ中の先行ピクチャが現在レイヤ中の後続ピクチャのＴＭＶＰのために使用されるべきでないことを示すと決定したことに応答して、現在ピクチャのＴＭＶＰのための参照ピクチャとして現在レイヤ中の先行ピクチャを使用することを控えるようにさらに構成される。
【０００８】
[0008]いくつかの態様による、ビデオ情報をコーディングするための装置は、メモリとプロセッサとを含む。一実施形態では、本装置は、ビデオ情報を符号化するためのものである。メモリは、複数のレイヤに関連付けられたビデオ情報を記憶するように構成される。プロセッサは、１つまたは複数の表現フォーマットシンタックス構造を含むビデオパラメータセット（ＶＰＳ：video parameter set）を受信するように構成され、ＶＰＳは、複数のレイヤのうちの第１のレイヤに関連付けられた１つまたは複数の表現フォーマットシンタックス構造のうちの第１の表現フォーマットシンタックス構造を示す。プロセッサは、（１）ＶＰＳ中の１つまたは複数の表現フォーマットシンタックス構造のうちの第２の表現フォーマットシンタックス構造への参照、または（２）ＶＰＳ中の１つまたは複数の表現フォーマットシンタックス構造中に含まれない第３の表現フォーマットシンタックス構造を含むシーケンスパラメータセット（ＳＰＳ：sequence parameter set）を受信するようにさらに構成され、各表現フォーマットシンタックス構造は、レイヤのクロマフォーマットの色成分を別々にコーディングすべきかどうかを示す第１のフラグを含む。プロセッサは、第１の表現フォーマットシンタックス構造中の第１のフラグの値を参照することなしに、レイヤのクロマフォーマットの色成分を別々にコーディングすべきかどうかを示す第１の変数の値を更新するようにさらに構成され、第１の変数は第１のレイヤに関連付けられる。
【図面の簡単な説明】
【０００９】
【図１Ａ】[0009]本開示で説明する態様による技法を利用し得る例示的なビデオ符号化および復号システムを示すブロック図。
【図１Ｂ】[0010]本開示で説明する態様による技法を実施し得る別の例示的なビデオ符号化および復号システムを示すブロック図。
【図２Ａ】[0011]本開示で説明する態様による技法を実装し得るビデオエンコーダの一例を示すブロック図。
【図２Ｂ】[0012]本開示で説明する態様による技法を実装し得るビデオエンコーダの一例を示すブロック図。
【図３Ａ】[0013]本開示で説明する態様による技法を実装し得るビデオデコーダの一例を示すブロック図。
【図３Ｂ】[0014]本開示で説明する態様による技法を実装し得るビデオデコーダの一例を示すブロック図。
【図４】[0015]異なるレイヤ中のピクチャの例示的な構成を示すブロック図。
【図５】[0016]異なるレイヤ中のピクチャの例示的な構成を示すブロック図。
【図６】[0017]本開示の１つまたは複数の態様による、ビデオ情報をコーディングする方法を示すフローチャート。
【図７】[0018]本開示の１つまたは複数の態様による、ビデオ情報をコーディングする方法を示すフローチャート。
【発明を実施するための形態】
【００１０】
[0019]概して、本開示は、シングルレイヤコーディング、ならびにＨＥＶＣ（高効率ビデオコーディング）など、アドバンストビデオコーデックのコンテキストにおけるスケーラブルビデオコーディングのためのレイヤ間予測に関する。より詳細には、本開示は、マルチレイヤコーデックにおける時間動きベクトル予測（ＴＭＶＰ）指示および表現フォーマット更新のためのシステムおよび方法に関する。
【００１１】
[0020]以下の説明では、いくつかの実施形態に関係するＨ．２６４／アドバンストビデオコーディング（ＡＶＣ）技法について説明し、ＨＥＶＣ規格および関係する技法についても説明する。いくつかの実施形態について、ＨＥＶＣおよび／またはＨ．２６４規格のコンテキストにおいて本明細書で説明するが、本明細書で開示するシステムおよび方法が任意の好適なビデオコーディング規格に適用可能であり得ることを、当業者は諒解されよう。たとえば、本明細書で開示する実施形態は、以下の規格、すなわち、国際電気通信連合（ＩＴＵ）電気通信規格化セクタ（ＩＴＵ−Ｔ）Ｈ．２６１、国際標準化機構（ＩＳＯ）および国際電気標準会議（ＩＥＣ）（ＩＳＯ／ＩＥＣ）ムービングピクチャエキスパートグループ（ＭＰＥＧ）１（ＭＰＥＧ−１）  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６２またはＩＳＯ／ＩＥＣ  ＭＰＥＧ−２  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｖｉｓｕａｌ、およびそれのスケーラブルビデオコーディング（ＳＶＣ）拡張とマルチビュービデオコーディング（ＭＶＣ）拡張とを含む、（ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  ＡＶＣとしても知られる）ＩＴＵ−Ｔ  Ｈ．２６４のうちの１つまたは複数に適用可能であり得る。
【００１２】
[0021]ＨＥＶＣは、概して、多くの点で、前のビデオコーディング規格のフレームワークに従う。ＨＥＶＣにおける予測のユニットは、いくつかの前のビデオコーディング規格における予測のユニット（たとえば、マクロブロック）とは異なる。事実上、いくつかの前のビデオコーディング規格において理解されているようなマクロブロックの概念は、ＨＥＶＣでは存在しない。マクロブロックは、考えられる利益の中でも、高いフレキシビリティを与え得る、４分木方式に基づく階層構造と置き換えられる。たとえば、ＨＥＶＣ方式内で、コーディングユニット（ＣＵ）、予測ユニット（ＰＵ：Prediction Unit）、および変換ユニット（ＴＵ：Transform Unit）という３つのタイプのブロックが定義される。ＣＵは領域分割の基本ユニットを指すことがある。ＣＵはマクロブロックの概念に類似すると見なされ得るが、ＨＥＶＣは、ＣＵの最大サイズを制限せず、コンテンツ適応性を改善するために４つの等しいサイズのＣＵへの再帰的分割を可能にし得る。ＰＵはインター／イントラ予測の基本ユニットと見なされ得、単一のＰＵは、不規則な画像パターンを効果的にコーディングするために、複数の任意の形状区分を含んでいることがある。ＴＵは変換の基本ユニットと見なされ得る。ＴＵは、ＰＵとは無関係に定義され得るが、ＴＵのサイズは、ＴＵが属するＣＵのサイズに制限され得る。３つの異なる概念へのブロック構造のこの分離は、各ユニットがユニットのそれぞれの役割に従って最適化されることを可能にし得、それによりコーディング効率が改善され得る。
【００１３】
[0022]単に説明の目的で、本明細書で開示するいくつかの実施形態について、ビデオデータのただ２つのレイヤ（たとえば、ベースレイヤなどの下位レイヤ、およびエンハンスメントレイヤなどの上位レイヤ）を含む例を用いて説明する。ビデオデータの「レイヤ」は、概して、ビュー、フレームレート、解像度などの少なくとも１つの共通の特性を有するピクチャのシーケンスを指すことがある。たとえば、レイヤは、マルチビュービデオデータの特定のビュー（たとえば、パースペクティブ）に関連付けられたビデオデータを含み得る。別の例として、レイヤは、スケーラブルビデオデータの特定のレイヤに関連付けられたビデオデータを含み得る。したがって、本開示は、ビデオデータのレイヤおよびビューを互換的に指すことがある。すなわち、ビデオデータのビューはビデオデータのレイヤと呼ばれることがあり、ビデオデータのレイヤはビデオデータのビューと呼ばれることがある。さらに、（マルチレイヤビデオコーダまたはマルチレイヤエンコーダデコーダとも呼ばれる）マルチレイヤコーデックは、マルチビューコーデックまたはスケーラブルコーデック（たとえば、ＭＶ−ＨＥＶＣ、３Ｄ−ＨＥＶＣ、ＳＨＶＣ、または別のマルチレイヤコーディング技法を使用するビデオデータを符号化および／または復号するように構成されたコーデック）を共同で指すことがある。ビデオ符号化およびビデオ復号は両方とも、一般にビデオコーディングと呼ばれることがある。そのような例は、複数のベースレイヤおよび／またはエンハンスメントレイヤを含む構成に適用可能であり得ることを理解されたい。さらに、説明を簡単にするために、以下の開示は、いくつかの実施形態に関して「フレーム」または「ブロック」という用語を含む。ただし、これらの用語は限定的なものではない。たとえば、以下で説明する技法は、ブロック（たとえば、ＣＵ、ＰＵ、ＴＵ、マクロブロックなど）、スライス、フレームなど、任意の好適なビデオユニットとともに使用され得る。
ビデオコーディング規格
[0023]ビデオ画像、ＴＶ画像、静止画像、あるいはビデオレコーダまたはコンピュータによって生成された画像など、デジタル画像は、水平ラインおよび垂直ラインで構成されたピクセルまたはサンプルからなり得る。単一の画像中のピクセルの数は一般に数万個である。各ピクセルは、一般に、ルミナンス情報とクロミナンス情報とを含んでいる。圧縮がなければ、画像エンコーダから画像デコーダに搬送されるべき情報の甚だしい量は、リアルタイム画像送信を不可能にするであろう。送信されるべき情報の量を低減するために、ＪＰＥＧ、ＭＰＥＧおよびＨ．２６３規格など、いくつかの異なる圧縮方法が開発された。
【００１４】
[0024]ビデオコーディング規格は、ＩＴＵ−Ｔ  Ｈ．２６１と、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−１  Ｖｉｓｕａｌと、ＩＴＵ−Ｔ  Ｈ．２６２またはＩＳＯ／ＩＥＣ  ＭＰＥＧ−２  Ｖｉｓｕａｌと、ＩＴＵ−Ｔ  Ｈ．２６３と、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｖｉｓｕａｌと、それのＳＶＣおよびＭＶＣ拡張を含む（ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  ＡＶＣとしても知られる）ＩＴＵ−Ｔ  Ｈ．２６４とを含む。
【００１５】
[0025]さらに、新しいビデオコーディング規格、すなわち、高効率ビデオコーディング（ＨＥＶＣ）が、ＩＴＵ−Ｔビデオコーディングエキスパートグループ（ＶＣＥＧ）とＩＳＯ／ＩＥＣムービングピクチャエキスパートグループ（ＭＰＥＧ）とのジョイントコラボレーションチームオンビデオコーディング（ＪＣＴ−ＶＣ：Joint Collaboration Team on Video Coding）によって開発されている。ＨＥＶＣドラフト１０についての完全引用は、文書ＪＣＴＶＣ−Ｌ１００３、Ｂｒｏｓｓら、「High Efficiency Video Coding (HEVC) Text Specification Draft 10」、ＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３およびＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１のジョイントコラボレーティブチームオンビデオコーディング（ＪＣＴ−ＶＣ：Joint Collaborative Team on Video Coding）、第１２回会合：ジュネーブ、スイス、２０１３年１月１４日〜２０１３年１月２３日である。ＨＥＶＣのマルチビュー拡張、すなわち、ＭＶ−ＨＥＶＣ、およびＳＨＶＣと称されるＨＥＶＣのスケーラブル拡張も、それぞれＪＣＴ−３Ｖ（ＩＴＵ−Ｔ／ＩＳＯ／ＩＥＣジョイントコラボレーティブチームオン３Ｄビデオコーディング拡張開発）およびＪＣＴ−ＶＣによって開発されている。
概観
[0026]ＳＨＶＣおよびＭＶ−ＨＥＶＣの早期バージョン（たとえば、ＳＨＶＣワーキングドラフト６、ＭＶ−ＨＥＶＣワーキングドラフト８など）は、現在ピクチャのｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇと時間ＩＤの両方の値が０に等しいとき、およびピクチャがベースレイヤ（たとえば、レイヤＩＤ＝０を有するレイヤ）に属するとき、復号順序において現在ピクチャに先行するピクチャからの時間動きベクトルが、復号順序において現在ピクチャに後続するいかなるピクチャのＴＭＶＰにおいても使用されるべきでないという制限を実装する。ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇは、スライス中の現在ピクチャが、たとえば、参照ピクチャ（たとえば、コロケートピクチャ）として現在ピクチャの先行ピクチャに基づいて、ＴＭＶＰを使用することができるかどうかを示すことができる。ピクチャがベースレイヤに属するという制限および条件は、たとえば、エンハンスメントレイヤがＴＭＶＰを使用することを可能にするために導入された。しかしながら、エンハンスメントレイヤは、制限をベースレイヤに限定することなしにＴＭＶＰを使用し得る。
【００１６】
[0027]ＳＨＶＣおよびＭＶ−ＨＥＶＣの早期バージョンはまた、現在ピクチャに先行する現在レイヤのピクチャが、同じレイヤのいかなる後続ピクチャのためのＴＭＶＰにおいてもコロケートピクチャとして使用されるべきでないかどうかの指示を与える、ＴＭＶＰ制約ＳＥＩメッセージと呼ばれる新しいＳＥＩメッセージを追加する。たとえば、ＴＭＶＰ制約ＳＥＩメッセージは、復号順序における現在レイヤ中の現在ピクチャの先行ピクチャが、復号順序における現在レイヤ中の現在ピクチャの後続ピクチャのＴＭＶＰのために使用され得るかどうかを示すｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇと呼ばれるフラグを含むことができる。しかしながら、ＳＨＶＣおよびＭＶ−ＨＥＶＣの早期バージョンにおけるｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇのセマンティクスは、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇとの競合につながることがある。たとえば、現在ピクチャを含んでいるスライスのスライスヘッダ中のｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇは、１に等しく、現在ピクチャが、コロケートピクチャとして現在ピクチャの先行ピクチャを参照してＴＭＶＰを使用することができることを示すが、現在ピクチャのためのＴＭＶＰ制約ＳＥＩメッセージ中のｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇは、１に等しく、復号における現在ピクチャの後続ピクチャが、ＴＭＶＰのために復号順序における現在ピクチャの先行ピクチャを使用すべきでないことを示す。そのような場合、後続ピクチャは、ＴＭＶＰのためにコロケートピクチャとして現在ピクチャを使用することができるので、先行ピクチャを使用する現在ピクチャのＴＭＶＰに導入されたエラーが後続ピクチャに伝搬され得る。後続ピクチャは、ＴＭＶＰのために現在ピクチャのいかなる先行ピクチャも使用していないが、後続ピクチャは、ＴＭＶＰのために現在ピクチャ自体を使用し得る。
【００１７】
[0028]これらおよび他の課題に対処するために、いくつかの態様による技法は、現在ピクチャのいかなる先行ピクチャからの時間動きベクトルも、復号順序における現在ピクチャのいかなる後続ピクチャのＴＭＶＰにおいても使用されるべきでないという制限をすべてのレイヤに適用することができる。たとえば、制限は、ピクチャがベースレイヤに属するのか他のレイヤに属するのかにかかわらず、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇ＝０および時間ＩＤ＝０であるとき、ピクチャに適用され得る。一例では、エンハンスメントレイヤが、制限をベースレイヤに限定することなしにＴＭＶＰを使用することを可能にするために、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇとともにＴＭＶＰ制約ＳＥＩメッセージが使用され得る。
【００１８】
[0029]その上、本技法は、たとえば、現在ピクチャのためのｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇと現在ピクチャのためのｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇとの間の競合を解決するために、ｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇのセマンティクスを変更することができる。たとえば、ｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇは、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇよりも高い優先順位を取ることができる。一例では、ｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇは、現在ピクチャの先行ピクチャが現在ピクチャならびに復号順序における現在ピクチャの後続ピクチャのＴＭＶＰのために使用されるべきでないことを示すように変更される。
【００１９】
[0030]ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇによって課される制限およびｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇによって課される制限は、エラー耐性目的で実装され得る。しかしながら、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇとｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇの両方が１に等しいとき、現在ピクチャのＴＭＶＰにおけるエラーは、依然として、復号順序における現在ピクチャの後続ピクチャのＴＭＶＰに導入され得る。現在ピクチャと後続ピクチャの両方がＴＭＶＰにおいて現在ピクチャの先行ピクチャを使用することを可能にしないことによって、エラー耐性は著しく改善および増加され得る。
【００２０】
[0031]さらに、ＳＨＶＣおよびＭＶ−ＨＥＶＣの早期バージョンでは、ＶＰＳ中のシンタックス要素またはフラグの値が、ＳＰＳ中の対応するシンタックス要素またはフラグの値を制約するために使用される。ＶＰＳおよびＳＰＳは、両方とも表現フォーマット情報を含むことができる。表現フォーマット情報は、ピクチャ幅および高さ（たとえば、ピクチャサイズ）、クロマ成分のビット深度、ルーマ成分のビット深度、色平面情報、コンフォーマンスウィンドウサイズを含むことができる。ＶＰＳはすべてのレイヤに適用され得、概して、１つのＶＰＳがビットストリームのために定義され得る。ＳＰＳは特定のレイヤに固有であり得、ビットストリームが複数のシーケンスを含む場合、複数のＳＰＳが存在することができる。概して、ＶＰＳ中の値はワーストケースシナリオ値または最大値を表し、ＳＰＳは、ＶＰＳ中の値よりも小さいかまたはそれに等しい異なる値を適宜に指定することができる。したがって、ＶＰＳ中のシンタックス要素またはフラグの値は、ＳＰＳのための表現フォーマット情報が更新されたとき、ＳＰＳ中の対応するシンタックス要素またはフラグの値を制約することができる。しかしながら、いくつかのシンタックス要素またはフラグでは、ワーストケースシナリオ値または最大値が適用可能であるかどうかは不明瞭である。一例は、０または１のいずれかの値を有するフラグであり得る。
【００２１】
[0032]これらおよび他の課題に対処するために、いくつかの態様による技法は、表現フォーマット中のｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇのための制約を削除することができる。ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇは、クロマフォーマットの３つの色成分（たとえば、Ｙ、Ｃｂ、またはＣｒ）が別々にコーディングされるか否かを示すことができる。ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇの値がＳＰＳ中で更新されるべきであるとき、本技法は、ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇの所望の値がＶＰＳ中のｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇの値よりも小さいかまたはそれに等しいかどうかを検査する必要がない。このようにして、ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇの値は、よりフレキシブルな様式でＳＰＳ中で更新され得、表現フォーマット中のｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇの更新がより効率的になり得る。
ビデオコーディングシステム
[0033]添付の図面を参照しながら、新規のシステム、装置、および方法の様々な態様について以下でより十分に説明する。ただし、本開示は、多くの異なる形態で実施され得、本開示全体にわたって提示する任意の特定の構造または機能に限定されるものと解釈されるべきではない。むしろ、これらの態様は、本開示が周到で完全になり、本開示の範囲を当業者に十分に伝えるように与えられる。本明細書の教示に基づいて、本開示の範囲は、本開示の他の態様とは無関係に実装されるにせよ、本開示の他の態様と組み合わせられるにせよ、本明細書で開示する新規のシステム、装置、および方法のいかなる態様をもカバーするものであることを、当業者は諒解されたい。たとえば、本明細書に記載する態様をいくつ使用しても、装置は実装され得、または方法は実施され得る。さらに、本開示の範囲は、本明細書に記載する本開示の様々な態様に加えてまたはそれらの態様以外に、他の構造、機能、または構造および機能を使用して実施されるそのような装置または方法をカバーするものとする。本明細書で開示するどの態様も請求項の１つまたは複数の要素によって実施され得ることを理解されたい。
【００２２】
[0034]本明細書では特定の態様について説明するが、これらの態様の多くの変形および置換は本開示の範囲内に入る。好適な態様のいくつかの利益および利点について説明するが、本開示の範囲は特定の利益、使用、または目的に限定されるものではない。むしろ、本開示の態様は、様々なワイヤレス技術、システム構成、ネットワーク、および伝送プロトコルに広く適用可能であるものとし、それらのいくつかを例として、図において、および好適な態様についての以下の説明において示す。発明を実施するための形態および図面は、本開示を限定するものではなく説明するものにすぎず、本開示の範囲は添付の特許請求の範囲およびそれの均等物によって定義される。
【００２３】
[0035]添付の図面は例を示している。添付の図面中の参照番号によって示される要素は、以下の説明における同様の参照番号によって示される要素に対応する。本開示では、序数語（たとえば、「第１の」、「第２の」、「第３の」など）で始まる名前を有する要素は、必ずしもそれらの要素が特定の順序を有することを暗示するとは限らない。むしろ、そのような序数語は、同じまたは同様のタイプの異なる要素を指すために使用されるにすぎない。
【００２４】
[0036]図１Ａは、本開示で説明する態様による技法を利用し得る例示的なビデオコーディングシステム１０を示すブロック図である。本明細書で使用し説明する「ビデオコーダ」という用語は、総称的にビデオエンコーダとビデオデコーダの両方を指す。本開示では、「ビデオコーディング」または「コーディング」という用語は、ビデオ符号化とビデオ復号とを総称的に指すことがある。ビデオエンコーダおよびビデオデコーダに加えて、本出願で説明する態様は、トランスコーダ（たとえば、ビットストリームを復号し、別のビットストリームを再符号化することができるデバイス）およびミドルボックス（たとえば、ビットストリームを変更、変換、および／または他の方法で操作することができるデバイス）など、他の関係するデバイスに拡張され得る。
【００２５】
[0037]図１Ａに示されているように、ビデオコーディングシステム１０は、宛先デバイス１４によって後で復号されるべき符号化ビデオデータを生成するソースデバイス１２を含む。図１Ａの例では、ソースデバイス１２および宛先デバイス１４は、別個のデバイスを構成する。ただし、ソースデバイス１２および宛先デバイス１４は、図１Ｂの例に示されているように、同じデバイス上にあるかまたはそれの一部であり得ることに留意されたい。
【００２６】
[0038]もう一度図１Ａを参照すると、ソースデバイス１２および宛先デバイス１４は、それぞれ、デスクトップコンピュータ、ノートブック（たとえば、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲーミングコンソール、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスのいずれかを備え得る。場合によっては、ソースデバイス１２および宛先デバイス１４は、ワイヤレス通信のために装備され得る。
【００２７】
[0039]宛先デバイス１４は、復号されるべき符号化ビデオデータをリンク１６を介して受信し得る。リンク１６は、ソースデバイス１２から宛先デバイス１４に符号化ビデオデータを移動することが可能な任意のタイプの媒体またはデバイスを備え得る。図１Ａの例では、リンク１６は、ソースデバイス１２が符号化ビデオデータをリアルタイムで宛先デバイス１４に送信することを可能にするための通信媒体を備え得る。符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先デバイス１４に送信され得る。通信媒体は、無線周波数（ＲＦ）スペクトルまたは１つまたは複数の物理伝送線路など、任意のワイヤレスまたはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、ルータ、スイッチ、基地局、またはソースデバイス１２から宛先デバイス１４への通信を可能にするために有用であり得る任意の他の機器を含み得る。
【００２８】
[0040]代替的に、符号化データは出力インターフェース２２から随意のストレージデバイス３１に出力され得る。同様に、符号化データは、たとえば、宛先デバイス１４の入力インターフェース２８によってストレージデバイス３１からアクセスされ得る。ストレージデバイス３１は、ハードドライブ、フラッシュメモリ、揮発性または不揮発性メモリ、あるいは符号化ビデオデータを記憶するための任意の他の好適なデジタル記憶媒体など、様々な分散されたまたはローカルにアクセスされるデータ記憶媒体のいずれかを含み得る。さらなる一例では、ストレージデバイス３１は、ソースデバイス１２によって生成された符号化ビデオを保持し得るファイルサーバまたは別の中間ストレージデバイスに対応し得る。宛先デバイス１４は、ストリーミングまたはダウンロードを介してストレージデバイス３１から記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶し、その符号化ビデオデータを宛先デバイス１４に送信することが可能な任意のタイプのサーバであり得る。例示的なファイルサーバとしては、（たとえば、ウェブサイトのための）ウェブサーバ、ファイル転送プロトコル（ＦＴＰ）サーバ、ネットワーク接続ストレージ（ＮＡＳ）デバイス、またはローカルディスクドライブがある。宛先デバイス１４は、インターネット接続を含む、任意の標準のデータ接続を通して符号化ビデオデータにアクセスし得る。これは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに好適であるワイヤレスチャネル（たとえば、ワイヤレスローカルエリアネットワーク（ＷＬＡＮ）接続）、ワイヤード接続（たとえば、デジタル加入者線（ＤＳＬ）、ケーブルモデムなど）、またはその両方の組合せを含み得る。ストレージデバイス３１からの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、またはその両方の組合せであり得る。
【００２９】
[0041]本開示の技法はワイヤレス適用例または設定に限定されない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、たとえばインターネットを介したストリーミングビデオ送信（たとえば、ハイパーテキスト転送プロトコル（ＨＴＴＰ）上での動的適応ストリーミングなど）、データ記憶媒体に記憶するためのデジタルビデオの符号化、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、ビデオコーディングシステム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および／またはビデオテレフォニーなどの適用例をサポートするために、一方向または双方向のビデオ送信をサポートするように構成され得る。
【００３０】
[0042]図１Ａの例では、ソースデバイス１２は、ビデオソース１８と、ビデオエンコーダ２０と、出力インターフェース２２とを含む。場合によっては、出力インターフェース２２は変調器／復調器（モデム）および／または送信機を含み得る。ソースデバイス１２において、ビデオソース１８は、ビデオキャプチャデバイス、たとえばビデオカメラ、以前にキャプチャされたビデオを含んでいるビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェース、および／またはソースビデオとしてコンピュータグラフィックスデータを生成するためのコンピュータグラフィックスシステムなどのソース、あるいはそのようなソースの組合せを含み得る。一例として、ビデオソース１８がビデオカメラである場合、ソースデバイス１２および宛先デバイス１４は、図１Ｂの例に示されているように、いわゆる「カメラフォン」または「ビデオフォン」を形成し得る。ただし、本開示で説明する技法は、概してビデオコーディングに適用可能であり得、ワイヤレスおよび／またはワイヤード適用例に適用され得る。
【００３１】
[0043]キャプチャされたビデオ、以前にキャプチャされたビデオ、またはコンピュータ生成されたビデオは、ビデオエンコーダ２０によって符号化され得る。符号化ビデオデータは、ソースデバイス１２の出力インターフェース２２を介して宛先デバイス１４に送信され得る。符号化ビデオデータは、さらに（または代替として）、復号および／または再生のための宛先デバイス１４または他のデバイスによる後のアクセスのためにストレージデバイス３１上に記憶され得る。図１Ａおよび図１Ｂに示されているビデオエンコーダ２０は、図２Ａ示されているビデオエンコーダ２０、図２Ｂに示されているビデオエンコーダ２３、または本明細書で説明する他のビデオエンコーダを備え得る。
【００３２】
[0044]図１Ａの例では、宛先デバイス１４は、入力インターフェース２８と、ビデオデコーダ３０と、ディスプレイデバイス３２とを含む。場合によっては、入力インターフェース２８は受信機および／またはモデムを含み得る。宛先デバイス１４の入力インターフェース２８は、リンク１６を介しておよび／またはストレージデバイス３１から符号化ビデオデータを受信し得る。リンク１６を介して通信された、またはストレージデバイス３１上に与えられた符号化ビデオデータは、ビデオデータを復号する際に、ビデオデコーダ３０などのビデオデコーダが使用するための、ビデオエンコーダ２０によって生成された様々なシンタックス要素を含み得る。そのようなシンタックス要素は、通信媒体上で送信された、記憶媒体上に記憶された、またはファイルサーバ記憶された符号化ビデオデータに含まれ得る。図１Ａおよび図１Ｂに示されているビデオデコーダ３０は、図３Ａ示されているビデオデコーダ３０、図３Ｂに示されているビデオデコーダ３３、または本明細書で説明する他のビデオデコーダを備え得る。
【００３３】
[0045]ディスプレイデバイス３２は、宛先デバイス１４と一体化されるかまたはその外部にあり得る。いくつかの例では、宛先デバイス１４は、一体型ディスプレイデバイスを含み、また、外部ディスプレイデバイスとインターフェースするように構成され得る。他の例では、宛先デバイス１４はディスプレイデバイスであり得る。概して、ディスプレイデバイス３２は、復号ビデオデータをユーザに対して表示し、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備え得る。
【００３４】
[0046]関係する態様では、図１Ｂは例示的なビデオ符号化および復号システム１０’を示し、ここにおいて、ソースデバイス１２および宛先デバイス１４はデバイス１１上にあるかまたはそれの一部である。デバイス１１は、「スマート」フォンなどの電話ハンドセットであり得る。デバイス１１は、ソースデバイス１２および宛先デバイス１４と動作可能に通信している随意のコントローラ／プロセッサデバイス１３を含み得る。図１Ｂのシステム１０’およびそれの構成要素は、場合によっては図１Ａのシステム１０およびそれの構成要素と同様である。
【００３５】
[0047]ビデオエンコーダ２０およびビデオデコーダ３０は、ＨＥＶＣなどのビデオ圧縮規格に従って動作し得、ＨＥＶＣテストモデル（ＨＭ）に準拠し得る。代替的に、ビデオエンコーダ２０およびビデオデコーダ３０は、代替的にＭＰＥＧ−４，Ｐａｒｔ１０，ＡＶＣと呼ばれるＩＴＵ−Ｔ  Ｈ．２６４規格など、他のプロプライエタリ規格または業界規格、あるいはそのような規格の拡張に従って動作し得る。ただし、本開示の技法は、いかなる特定のコーディング規格にも限定されない。ビデオ圧縮規格の他の例としてはＭＰＥＧ−２およびＩＴＵ−Ｔ  Ｈ．２６３がある。
【００３６】
[0048]図１Ａおよび図１Ｂの例には示されていないが、ビデオエンコーダ２０およびビデオデコーダ３０は、それぞれオーディオエンコーダおよびデコーダと統合され得、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理するために、適切なＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアおよびソフトウェアを含み得る。適用可能な場合、いくつかの例では、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠し得る。
【００３７】
[0049]ビデオエンコーダ２０およびビデオデコーダ３０はそれぞれ、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダ回路のいずれか、またはそれらの任意の組合せとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、デバイスは、ソフトウェアのための命令を好適な非一時的コンピュータ可読媒体に記憶し、本開示の技法を実施するために１つまたは複数のプロセッサを使用してハードウェアでその命令を実行し得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は１つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも、それぞれのデバイスにおいて複合エンコーダ／デコーダ（コーデック）の一部として統合され得る。
ビデオコーディングプロセス
[0050]上記で手短に述べたように、ビデオエンコーダ２０はビデオデータを符号化する。ビデオデータは１つまたは複数のピクチャを備え得る。ピクチャの各々は、ビデオの一部を形成する静止画像である。いくつかの事例では、ピクチャはビデオ「フレーム」と呼ばれることがある。ビデオエンコーダ２０がビデオデータを符号化するとき、ビデオエンコーダ２０はビットストリームを生成し得る。ビットストリームは、ビデオデータのコード化表現を形成するビットのシーケンスを含み得る。ビットストリームは、コード化ピクチャと関連データとを含み得る。コード化ピクチャはピクチャのコード化表現である。
【００３８】
[0051]ビットストリームを生成するために、ビデオエンコーダ２０は、ビデオデータ中の各ピクチャに対して符号化演算を実施し得る。ビデオエンコーダ２０がピクチャに対して符号化演算を実施するとき、ビデオエンコーダ２０は、一連のコード化ピクチャと関連データとを生成し得る。関連データは、ビデオパラメータセット（ＶＰＳ）と、シーケンスパラメータセット（ＳＰＳ）と、ピクチャパラメータセット（ＰＰＳ：picture parameter set）と、適応パラメータセット（ＡＰＳ：adaptation parameter set）と、他のシンタックス構造とを含み得る。ＳＰＳは、ピクチャの０個以上のシーケンスに適用可能なパラメータを含んでいることがある。ＰＰＳは、０個以上のピクチャに適用可能なパラメータを含んでいることがある。ＡＰＳは、０個以上のピクチャに適用可能なパラメータを含んでいることがある。ＡＰＳ中のパラメータは、ＰＰＳ中のパラメータよりも変化する可能性が高いパラメータであり得る。
【００３９】
[0052]コード化ピクチャを生成するために、ビデオエンコーダ２０は、ピクチャを等しいサイズのビデオブロックに区分し得る。ビデオブロックはサンプルの２次元アレイであり得る。ビデオブロックの各々はツリーブロックに関連付けられる。いくつかの事例では、ツリーブロックは、最大コーディングユニット（ＬＣＵ：largest coding unit）と呼ばれることがある。ＨＥＶＣのツリーブロックは、Ｈ．２６４／ＡＶＣなど、以前の規格のマクロブロックに広い意味で類似し得る。しかしながら、ツリーブロックは、必ずしも特定のサイズに限定されるとは限らず、１つまたは複数のコーディングユニット（ＣＵ）を含み得る。ビデオエンコーダ２０は、４分木区分（quadtree partitioning）を使用して、ツリーブロックのビデオブロックを、ＣＵに関連付けられたビデオブロックに区分し得、したがって「ツリーブロック」という名前がある。
【００４０】
[0053]いくつかの例では、ビデオエンコーダ２０はピクチャを複数のスライスに区分し得る。スライスの各々は整数個のＣＵを含み得る。いくつかの事例では、スライスは整数個のツリーブロックを備える。他の事例では、スライスの境界はツリーブロック内にあり得る。
【００４１】
[0054]ピクチャに対して符号化演算を実施することの一部として、ビデオエンコーダ２０は、ピクチャの各スライスに対して符号化演算を実施し得る。ビデオエンコーダ２０がスライスに対して符号化演算を実施するとき、ビデオエンコーダ２０は、スライスに関連付けられた符号化データを生成し得る。スライスに関連付けられた符号化データは「コード化スライス」と呼ばれることがある。
【００４２】
[0055]コード化スライスを生成するために、ビデオエンコーダ２０は、スライス中の各ツリーブロックに対して符号化演算を実施し得る。ビデオエンコーダ２０がツリーブロックに対して符号化演算を実施するとき、ビデオエンコーダ２０はコード化ツリーブロックを生成し得る。コード化ツリーブロックは、ツリーブロックの符号化バージョンを表すデータを備え得る。
【００４３】
[0056]ビデオエンコーダ２０がコード化スライスを生成するとき、ビデオエンコーダ２０は、ラスタ走査順序に従って、スライス中のツリーブロックに対して符号化演算を実施し得る（たとえば、そのツリーブロックを符号化し得る）。たとえば、ビデオエンコーダ２０は、スライス中のツリーブロックの一番上の行にわたって左から右に進み、次いでツリーブロックの次の下の行にわたって左から右に進み、以下同様に進む順序で、ビデオエンコーダ２０がスライス中のツリーブロックの各々を符号化するまで、スライスのツリーブロックを符号化し得る。
【００４４】
[0057]ラスタ走査順序に従ってツリーブロックを符号化した結果として、所与のツリーブロックの上および左のツリーブロックは符号化されていることがあるが、所与のツリーブロックの下および右のツリーブロックはまだ符号化されていない。したがって、ビデオエンコーダ２０は、所与のツリーブロックを符号化するとき、所与のツリーブロックの上および左のツリーブロックを符号化することによって生成される情報にアクセスすることが可能であり得る。しかしながら、ビデオエンコーダ２０は、所与のツリーブロックを符号化するとき、所与のツリーブロックの下および右のツリーブロックを符号化することによって生成される情報にアクセスすることができないことがある。
【００４５】
[0058]コード化ツリーブロックを生成するために、ビデオエンコーダ２０は、ビデオブロックを徐々により小さいビデオブロックに分割するために、ツリーブロックのビデオブロックに対して４分木区分を再帰的に実施し得る。より小さいビデオブロックの各々は、異なるＣＵに関連付けられ得る。たとえば、ビデオエンコーダ２０は、ツリーブロックのビデオブロックを４つの等しいサイズのサブブロックに区分し、サブブロックのうちの１つまたは複数を、４つの等しいサイズのサブサブブロックに区分し得、以下同様である。区分されたＣＵは、それのビデオブロックが、他のＣＵに関連付けられたビデオブロックに区分された、ＣＵであり得る。区分されていないＣＵは、それのビデオブロックが、他のＣＵに関連付けられたビデオブロックに区分されていない、ＣＵであり得る。
【００４６】
[0059]ビットストリーム中の１つまたは複数のシンタックス要素は、ビデオエンコーダ２０がツリーブロックのビデオブロックを区分し得る最大の回数を示し得る。ＣＵのビデオブロックは形状が正方形であり得る。ＣＵのビデオブロックのサイズ（たとえば、ＣＵのサイズ）は、８×８ピクセルから、最大６４×６４以上のピクセルをもつツリーブロックのビデオブロックのサイズ（たとえば、ツリーブロックのサイズ）までに及び得る。
【００４７】
[0060]ビデオエンコーダ２０は、ｚ走査順序に従って、ツリーブロックの各ＣＵに対して符号化演算を実施し得る（たとえば、各ＣＵを符号化し得る）。言い換えれば、ビデオエンコーダ２０は、左上のＣＵと、右上のＣＵと、左下のＣＵと、次いで右下のＣＵとを、その順序で符号化し得る。ビデオエンコーダ２０が、区分されたＣＵに対して符号化演算を実施するとき、ビデオエンコーダ２０は、ｚ走査順序に従って、区分されたＣＵのビデオブロックのサブブロックに関連付けられたＣＵを符号化し得る。言い換えれば、ビデオエンコーダ２０は、左上のサブブロックに関連付けられたＣＵと、右上のサブブロックに関連付けられたＣＵと、左下のサブブロックに関連付けられたＣＵと、次いで右下のサブブロックに関連付けられたＣＵとを、その順序で符号化し得る。
【００４８】
[0061]ｚ走査順序に従ってツリーブロックのＣＵを符号化した結果として、所与のＣＵの上、左上、右上、左、および左下のＣＵは符号化されていることがある。所与のＣＵの下および右のＣＵはまだ符号化されていない。したがって、ビデオエンコーダ２０は、所与のＣＵを符号化するとき、所与のＣＵに隣接するいくつかのＣＵを符号化することによって生成される情報にアクセスすることが可能であり得る。しかしながら、ビデオエンコーダ２０は、所与のＣＵを符号化するとき、所与のＣＵに隣接する他のＣＵを符号化することによって生成される情報にアクセスすることができないことがある。
【００４９】
[0062]ビデオエンコーダ２０が、区分されていないＣＵを符号化するとき、ビデオエンコーダ２０は、ＣＵのために１つまたは複数の予測ユニット（ＰＵ）を生成し得る。ＣＵのＰＵの各々は、ＣＵのビデオブロック内の異なるビデオブロックに関連付けられ得る。ビデオエンコーダ２０は、ＣＵの各ＰＵについて予測ビデオブロックを生成し得る。ＰＵの予測ビデオブロックはサンプルのブロックであり得る。ビデオエンコーダ２０は、ＰＵのための予測ビデオブロックを生成するために、イントラ予測またはインター予測を使用し得る。
【００５０】
[0063]ビデオエンコーダ２０がＰＵの予測ビデオブロックを生成するためにイントラ予測を使用するとき、ビデオエンコーダ２０は、ＰＵに関連付けられたピクチャの復号サンプルに基づいて、ＰＵの予測ビデオブロックを生成し得る。ビデオエンコーダ２０がＣＵのＰＵの予測ビデオブロックを生成するためにイントラ予測を使用する場合、ＣＵはイントラ予測されたＣＵである。ビデオエンコーダ２０がＰＵの予測ビデオブロックを生成するためにインター予測を使用するとき、ビデオエンコーダ２０は、ＰＵに関連付けられたピクチャ以外の１つまたは複数のピクチャの復号サンプルに基づいて、ＰＵの予測ビデオブロックを生成し得る。ビデオエンコーダ２０がＣＵのＰＵの予測ビデオブロックを生成するためにインター予測を使用する場合、ＣＵはインター予測されたＣＵである。
【００５１】
[0064]さらに、ビデオエンコーダ２０がＰＵのための予測ビデオブロックを生成するためにインター予測を使用するとき、ビデオエンコーダ２０はＰＵの動き情報を生成し得る。ＰＵの動き情報は、ＰＵの１つまたは複数の参照ブロックを示し得る。ＰＵの各参照ブロックは参照ピクチャ内のビデオブロックであり得る。参照ピクチャは、ＰＵに関連付けられたピクチャ以外のピクチャであり得る。いくつかの事例では、ＰＵの参照ブロックはＰＵの「参照サンプル」と呼ばれることもある。ビデオエンコーダ２０は、ＰＵの参照ブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。
【００５２】
[0065]ビデオエンコーダ２０がＣＵの１つまたは複数のＰＵのための予測ビデオブロックを生成した後、ビデオエンコーダ２０は、ＣＵのＰＵのための予測ビデオブロックに基づいて、ＣＵの残差データを生成し得る。ＣＵの残差データは、ＣＵのＰＵのための予測ビデオブロック中のサンプルと、ＣＵの元のビデオブロック中のサンプルとの間の差分を示し得る。
【００５３】
[0066]さらに、区分されていないＣＵに対して符号化演算を実施することの一部として、ビデオエンコーダ２０は、ＣＵの残差データを、ＣＵの変換ユニット（ＴＵ）に関連付けられた残差データの１つまたは複数のブロック（たとえば、残差ビデオブロック）に区分するために、ＣＵの残差データに対して再帰的な４分木区分を実施し得る。ＣＵの各ＴＵは異なる残差ビデオブロックに関連付けられ得る。
【００５４】
[0067]ビデオエンコーダ２０は、ＴＵに関連付けられた変換係数ブロック（たとえば、変換係数のブロック）を生成するために、ＴＵに関連付けられた残差ビデオブロックに１つまたは複数の変換を適用し得る。概念的に、変換係数ブロックは変換係数の２次元（２Ｄ）行列であり得る。
【００５５】
[0068]変換係数ブロックを生成した後、ビデオエンコーダ２０は、変換係数ブロックに対して量子化プロセスを実施し得る。量子化は、一般に、変換係数を表すために使用されるデータの量をできるだけ低減するために変換係数が量子化され、さらなる圧縮を行うプロセスを指す。量子化プロセスは、変換係数の一部または全部に関連付けられたビット深度を低減し得る。たとえば、量子化中にｎビット変換係数はｍビット変換係数に切り捨てられ得、ただし、ｎはｍよりも大きい。
【００５６】
[0069]ビデオエンコーダ２０は、各ＣＵを量子化パラメータ（ＱＰ：quantization parameter）値に関連付け得る。ＣＵに関連付けられたＱＰ値は、ビデオエンコーダ２０が、ＣＵに関連付けられた変換係数ブロックをどのように量子化するかを決定し得る。ビデオエンコーダ２０は、ＣＵに関連付けられたＱＰ値を調整することによって、ＣＵに関連付けられた変換係数ブロックに適用される量子化の程度を調整し得る。
【００５７】
[0070]ビデオエンコーダ２０が変換係数ブロックを量子化した後、ビデオエンコーダ２０は、量子化された変換係数ブロック中で変換係数を表すシンタックス要素のセットを生成し得る。ビデオエンコーダ２０は、これらのシンタックス要素のうちのいくつかに、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ：Context Adaptive Binary Arithmetic Coding）演算などのエントロピー符号化演算を適用し得る。コンテキスト適応型可変長コーディング（ＣＡＶＬＣ：context adaptive variable length coding）、確率間隔区分エントロピー（ＰＩＰＥ：probability interval partitioning entropy）コーディング、または他のバイナリ算術コーディングなど、他のエントロピーコーディング技法も使用され得る。
【００５８】
[0071]ビデオエンコーダ２０によって生成されるビットストリームは、一連のネットワークアブストラクションレイヤ（ＮＡＬ：Network Abstraction Layer）ユニットを含み得る。ＮＡＬユニットの各々は、ＮＡＬユニット中のデータのタイプの指示と、データを含んでいるバイトとを含んでいるシンタックス構造であり得る。たとえば、ＮＡＬユニットは、ビデオパラメータセット、シーケンスパラメータセット、ピクチャパラメータセット、コード化スライス、補足エンハンスメント情報（ＳＥＩ：supplemental enhancement information）、アクセスユニットデリミタ、フィラーデータ、または別のタイプのデータを表すデータを含んでいることがある。ＮＡＬユニット中のデータは様々なシンタックス構造を含み得る。
【００５９】
[0072]ビデオデコーダ３０は、ビデオエンコーダ２０によって生成されたビットストリームを受信し得る。ビットストリームは、ビデオエンコーダ２０によって符号化されたビデオデータのコード化表現を含み得る。ビデオデコーダ３０がビットストリームを受信するとき、ビデオデコーダ３０は、ビットストリームに対してパース演算を実施し得る。ビデオデコーダ３０がパース演算を実施するとき、ビデオデコーダ３０は、ビットストリームからシンタックス要素を抽出し得る。ビデオデコーダ３０は、ビットストリームから抽出されたシンタックス要素に基づいて、ビデオデータのピクチャを再構成し得る。シンタックス要素に基づいてビデオデータを再構成するためのプロセスは、概して、シンタックス要素を生成するためにビデオエンコーダ２０によって実施されるプロセスとは逆であり得る。
【００６０】
[0073]ビデオデコーダ３０が、ＣＵに関連付けられたシンタックス要素を抽出した後、ビデオデコーダ３０は、シンタックス要素に基づいて、ＣＵのＰＵのための予測ビデオブロックを生成し得る。さらに、ビデオデコーダ３０は、ＣＵのＴＵに関連付けられた変換係数ブロックを逆量子化し得る。ビデオデコーダ３０は、ＣＵのＴＵに関連付けられた残差ビデオブロックを再構成するために、変換係数ブロックに対して逆変換を実施し得る。予測ビデオブロックを生成し、残差ビデオブロックを再構成した後、ビデオデコーダ３０は、予測ビデオブロックと残差ビデオブロックとに基づいて、ＣＵのビデオブロックを再構成し得る。このようにして、ビデオデコーダ３０は、ビットストリーム中のシンタックス要素に基づいて、ＣＵのビデオブロックを再構成し得る。
ビデオエンコーダ
[0074]図２Ａは、本開示で説明する態様による技法を実装し得るビデオエンコーダ２０の一例を示すブロック図である。ビデオエンコーダ２０は、ＨＥＶＣの場合など、ビデオフレームの単一のレイヤを処理するように構成され得る。さらに、ビデオエンコーダ２０は、限定はしないが、図４および図５に関して上記および下記でより詳細に説明するＮｏＯｕｔｐｕｔＯｆＰｒｉｏｒＰｉｃｓＦｌａｇを推論する方法および関係するプロセスを含む、本開示の技法のいずれかまたはすべてを実施するように構成され得る。一例として、予測処理ユニット１００は、本開示で説明する技法のいずれかまたはすべてを実施するように構成され得る。別の実施形態では、ビデオエンコーダ２０は、本開示で説明する技法のいずれかまたはすべてを実施するように構成された随意のレイヤ間予測ユニット１２８を含む。他の実施形態では、レイヤ間予測は予測処理ユニット１００（たとえば、インター予測ユニット１２１および／またはイントラ予測ユニット１２６）によって実施され得、その場合、レイヤ間予測ユニット１２８は省略され得る。ただし、本開示の態様はそのように限定されない。いくつかの例では、本開示で説明する技法は、ビデオエンコーダ２０の様々な構成要素間で共有され得る。いくつかの例では、追加または代替として、プロセッサ（図示せず）が、本開示で説明する技法のいずれかまたはすべてを実施するように構成され得る。
【００６１】
[0075]説明の目的で、本開示では、ＨＥＶＣコーディングのコンテキストにおいてビデオエンコーダ２０について説明する。しかしながら、本開示の技法は他のコーディング規格または方法に適用可能であり得る。図２Ａに示された例はシングルレイヤコーデックのためのものである。しかしながら、図２Ｂに関してさらに説明するように、ビデオエンコーダ２０の一部または全部はマルチレイヤコーデックの処理のために複製され得る。
【００６２】
[0076]ビデオエンコーダ２０は、ビデオスライス内のビデオブロックのイントラコーディングおよびインターコーディングを実施し得る。イントラコーディングは、所与のビデオフレームまたはピクチャ内のビデオの空間冗長性を低減または除去するために空間予測に依拠する。インターコーディングは、ビデオシーケンスの隣接フレームまたはピクチャ内のビデオの時間冗長性を低減または除去するために時間予測に依拠する。イントラモード（Ｉモード）は、いくつかの空間ベースのコーディングモードのいずれかを指すことがある。単方向予測（Ｐモード）または双方向予測（Ｂモード）などのインターモードは、いくつかの時間ベースのコーディングモードのいずれかを指すことがある。
【００６３】
[0077]図２Ａの例では、ビデオエンコーダ２０は複数の機能構成要素を含む。ビデオエンコーダ２０の機能構成要素は、予測処理ユニット１００と、残差生成ユニット１０２と、変換処理ユニット１０４と、量子化ユニット１０６と、逆量子化ユニット１０８と、逆変換ユニット１１０と、再構成ユニット１１２と、フィルタユニット１１３と、復号ピクチャバッファ１１４と、エントロピー符号化ユニット１１６とを含む。予測処理ユニット１００は、インター予測ユニット１２１と、動き推定ユニット１２２と、動き補償ユニット１２４と、イントラ予測ユニット１２６と、レイヤ間予測ユニット１２８とを含む。他の例では、ビデオエンコーダ２０は、より多数の、より少数の、または異なる機能構成要素を含み得る。さらに、動き推定ユニット１２２と動き補償ユニット１２４とは、高度に統合され得るが、図２Ａの例では、説明の目的で別々に表されている。
【００６４】
[0078]ビデオエンコーダ２０はビデオデータを受信し得る。ビデオエンコーダ２０は、様々なソースからビデオデータを受信し得る。たとえば、ビデオエンコーダ２０は、（たとえば、図１Ａまたは図１Ｂに示された）ビデオソース１８、または別のソースからビデオデータを受信し得る。ビデオデータは一連のピクチャを表し得る。ビデオデータを符号化するために、ビデオエンコーダ２０は、ピクチャの各々に対して符号化演算を実施し得る。ピクチャに対して符号化演算を実施することの一部として、ビデオエンコーダ２０は、ピクチャの各スライスに対して符号化演算を実施し得る。スライスに対して符号化演算を実施することの一部として、ビデオエンコーダ２０は、スライス中のツリーブロックに対して符号化演算を実施し得る。
【００６５】
[0079]ツリーブロックに対して符号化演算を実施することの一部として、予測処理ユニット１００は、ビデオブロックを徐々により小さいビデオブロックに分割するために、ツリーブロックのビデオブロックに対して４分木区分を実施し得る。より小さいビデオブロックの各々は、異なるＣＵに関連付けられ得る。たとえば、予測処理ユニット１００は、ツリーブロックのビデオブロックを４つの等しいサイズのサブブロックに区分し、サブブロックの１つまたは複数を、４つの等しいサイズのサブサブブロックに区分し得、以下同様である。
【００６６】
[0080]ＣＵに関連付けられたビデオブロックのサイズは、８×８サンプルから、最大６４×６４以上のサンプルをもつツリーブロックのサイズまでに及び得る。本開示では、「Ｎ×Ｎ（NxN）」および「Ｎ×Ｎ（N by N）」は、垂直寸法および水平寸法に関するビデオブロックのサンプル寸法、たとえば、１６×１６（16x16）サンプルまたは１６×１６（16 by 16）サンプルを指すために互換的に使用され得る。概して、１６×１６ビデオブロックは、垂直方向に１６個のサンプルを有し（ｙ＝１６）、水平方向に１６個のサンプルを有する（ｘ＝１６）。同様に、Ｎ×Ｎブロックは、概して、垂直方向にＮ個のサンプルを有し、水平方向にＮ個のサンプルを有し、ここで、Ｎは非負整数値を表す。
【００６７】
[0081]さらに、ツリーブロックに対して符号化演算を実施することの一部として、予測処理ユニット１００は、ツリーブロック用の階層的な４分木データ構造を生成し得る。たとえば、ツリーブロックは、４分木データ構造のルートノードに対応し得る。予測処理ユニット１００が、ツリーブロックのビデオブロックを４つのサブブロックに区分する場合、ルートノードは、４分木データ構造中に４つの子ノードを有する。子ノードの各々は、サブブロックのうちの１つに関連付けられたＣＵに対応する。予測処理ユニット１００が、サブブロックのうちの１つを４つのサブサブブロックに区分する場合、サブブロックに関連付けられたＣＵに対応するノードは、サブサブブロックのうちの１つに関連付けられたＣＵに各々が対応する、４つの子ノードを有し得る。
【００６８】
[0082]４分木データ構造の各ノードは、対応するツリーブロックまたはＣＵのシンタックスデータ（たとえば、シンタックス要素）を含んでいることがある。たとえば、４分木の中のノードは、そのノードに対応するＣＵのビデオブロックが４つのサブブロックに区分される（たとえば、分割される）かどうかを示す分割フラグを含み得る。ＣＵのためのシンタックス要素は、再帰的に定義され得、ＣＵのビデオブロックがサブブロックに分割されるかどうかに依存し得る。それのビデオブロックが区分されていないＣＵは、４分木データ構造におけるリーフノードに対応し得る。コード化ツリーブロックは、対応するツリーブロック用の４分木データ構造に基づくデータを含み得る。
【００６９】
[0083]ビデオエンコーダ２０は、ツリーブロックの区分されていない各ＣＵに対して符号化演算を実施し得る。ビデオエンコーダ２０が、区分されていないＣＵに対して符号化演算を実施するとき、ビデオエンコーダ２０は、区分されていないＣＵの符号化表現を表すデータを生成する。
【００７０】
[0084]ＣＵに対して符号化演算を実施することの一部として、予測処理ユニット１００は、ＣＵの１つまたは複数のＰＵの中で、ＣＵのビデオブロックを区分し得る。ビデオエンコーダ２０およびビデオデコーダ３０は、様々なＰＵサイズをサポートし得る。特定のＣＵのサイズが２Ｎ×２Ｎであると仮定すると、ビデオエンコーダ２０およびビデオデコーダ３０は、２Ｎ×２ＮまたはＮ×ＮのＰＵサイズと、２Ｎ×２Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、Ｎ×Ｎ、２Ｎ×ｎＵ、ｎＬ×２Ｎ、ｎＲ×２Ｎ、または同様の対称ＰＵサイズでのインター予測とをサポートし得る。ビデオエンコーダ２０およびビデオデコーダ３０は、２Ｎ×ｎＵ、２Ｎ×ｎＤ、ｎＬ×２Ｎ、およびｎＲ×２ＮのＰＵサイズに対する非対称区分をもサポートし得る。いくつかの例では、予測処理ユニット１００は、ＣＵのビデオブロックの辺に直角に接触しない境界に沿って、ＣＵのＰＵの間でＣＵのビデオブロックを区分するように、幾何学的な区分を実施し得る。
【００７１】
[0085]インター予測ユニット１２１は、ＣＵの各ＰＵに対してインター予測を実施し得る。インター予測は時間圧縮を実現し得る。ＰＵに対してインター予測を実施するために、動き推定ユニット１２２はＰＵの動き情報を生成し得る。動き補償ユニット１２４は、動き情報と、ＣＵに関連付けられたピクチャ以外のピクチャ（たとえば、参照ピクチャ）の復号サンプルと基づくＰＵのための予測ビデオブロックを生成し得る。本開示では、動き補償ユニット１２４によって生成された予測ビデオブロックは、インター予測ビデオブロックと呼ばれることがある。
【００７２】
[0086]スライスは、Ｉスライス、Ｐスライス、またはＢスライスであり得る。動き推定ユニット１２２および動き補償ユニット１２４は、ＰＵがＩスライス中にあるのか、Ｐスライス中にあるのか、Ｂスライス中にあるのかに応じて、ＣＵのＰＵに対して異なる演算を実施し得る。Ｉスライス中では、すべてのＰＵがイントラ予測される。したがって、ＰＵがＩスライス中にある場合、動き推定ユニット１２２および動き補償ユニット１２４は、ＰＵに対してインター予測を実施しない。
【００７３】
[0087]ＰＵがＰスライス中にある場合、ＰＵを含んでいるピクチャは、「リスト０」と呼ばれる参照ピクチャのリストに関連付けられる。リスト０中の参照ピクチャの各々は、他のピクチャのインター予測に使用され得るサンプルを含んでいる。動き推定ユニット１２２が、Ｐスライス中のＰＵに関して動き推定演算を実施するとき、動き推定ユニット１２２は、ＰＵのための参照ブロックについて、リスト０中の参照ピクチャを探索し得る。ＰＵの参照ブロックは、ＰＵのビデオブロック中のサンプルに最も密接に対応するサンプルのセット、たとえば、サンプルのブロックであり得る。動き推定ユニット１２２は、参照ピクチャ中のサンプルのセットがどの程度密接にＰＵのビデオブロック中のサンプルに対応するかを決定するために、様々なメトリクスを使用し得る。たとえば、動き推定ユニット１２２は、絶対差分和（ＳＡＤ：sum of absolute difference）、２乗差分和（ＳＳＤ：sum of square difference）、または他の差分メトリックによって、参照ピクチャ中のサンプルのセットがどの程度密接にＰＵのビデオブロック中のサンプルに対応するかを決定し得る。
【００７４】
[0088]Ｐスライス中のＰＵの参照ブロックを識別した後、動き推定ユニット１２２は、参照ブロックを含んでいる、リスト０中の参照ピクチャを示す参照インデックスと、ＰＵと参照ブロックとの間の空間変位を示す動きベクトルとを生成し得る。様々な例において、動き推定ユニット１２２は動きベクトルを異なる精度に生成し得る。たとえば、動き推定ユニット１２２は、１／４サンプル精度、１／８サンプル精度、または他の分数のサンプル精度で動きベクトルを生成し得る。分数のサンプル精度の場合、参照ブロック値は、参照ピクチャ中の整数位置のサンプル値から補間され得る。動き推定ユニット１２２は、ＰＵの動き情報として参照インデックスと動きベクトルとを出力し得る。動き補償ユニット１２４は、ＰＵの動き情報によって識別された参照ブロックに基づいて、ＰＵの予測ビデオブロックを生成し得る。
【００７５】
[0089]ＰＵがＢスライス中にある場合、ＰＵを含んでいるピクチャは、「リスト０」および「リスト１」と呼ばれる参照ピクチャの２つのリストに関連付けられ得る。いくつかの例では、Ｂスライスを含んでいるピクチャは、リスト０とリスト１の組合せである、リストの組合せに関連付けられ得る。
【００７６】
[0090]さらに、ＰＵがＢスライス中にある場合、動き推定ユニット１２２は、ＰＵについての単方向予測または双方向予測を実施し得る。動き推定ユニット１２２が、ＰＵについての単方向予測を実施するとき、動き推定ユニット１２２は、ＰＵのための参照ブロックについて、リスト０またはリスト１の参照ピクチャを探索し得る。動き推定ユニット１２２は、次いで、参照ブロックを含んでいる、リスト０またはリスト１中の参照ピクチャを示す参照インデックスと、ＰＵと参照ブロックとの間の空間変位を示す動きベクトルとを生成し得る。動き推定ユニット１２２は、ＰＵの動き情報として、参照インデックスと、予測方向インジケータと、動きベクトルとを出力し得る。予測方向インジケータは、参照インデックスが、リスト０中の参照ピクチャを示すのか、リスト１中の参照ピクチャを示すのかを示し得る。動き補償ユニット１２４は、ＰＵの動き情報によって示された参照ブロックに基づいて、ＰＵの予測ビデオブロックを生成し得る。
【００７７】
[0091]動き推定ユニット１２２が、ＰＵについての双方向予測を実施するとき、動き推定ユニット１２２は、ＰＵのための参照ブロックについて、リスト０中の参照ピクチャを探索し得、また、ＰＵのための別の参照ブロックについて、リスト１中の参照ピクチャを探索し得る。動き推定ユニット１２２は、次いで、参照ブロックを含んでいる、リスト０およびリスト１中の参照ピクチャを示す参照インデックスと、参照ブロックとＰＵとの間の空間変位を示す動きベクトルとを生成し得る。動き推定ユニット１２２は、ＰＵの動き情報としてＰＵの参照インデックスと動きベクトルとを出力し得る。動き補償ユニット１２４は、ＰＵの動き情報によって示された参照ブロックに基づいて、ＰＵの予測ビデオブロックを生成し得る。
【００７８】
[0092]いくつかの例では、動き推定ユニット１２２は、ＰＵの動き情報のフルセットをエントロピー符号化ユニット１１６に出力しない。そうではなく、動き推定ユニット１２２は、別のＰＵの動き情報を参照して、ＰＵの動き情報をシグナリングし得る。たとえば、動き推定ユニット１２２は、ＰＵの動き情報が、隣接ＰＵの動き情報と十分に類似していると決定し得る。この例では、動き推定ユニット１２２は、ＰＵに関連付けられたシンタックス構造において、ＰＵが隣接ＰＵと同じ動き情報を有することをビデオデコーダ３０に示す値を示し得る。別の例では、動き推定ユニット１２２は、ＰＵに関連付けられたシンタックス構造において、隣接ＰＵと動きベクトル差分（ＭＶＤ：motion vector difference）とを識別し得る。動きベクトル差分は、ＰＵの動きベクトルと、示された隣接ＰＵの動きベクトルとの間の差分を示す。ビデオデコーダ３０は、ＰＵの動きベクトルを決定するために、示された隣接ＰＵの動きベクトルと、動きベクトル差分とを使用し得る。第２のＰＵの動き情報をシグナリングするときに第１のＰＵの動き情報を参照することによって、ビデオエンコーダ２０は、より少数のビットを使用して、第２のＰＵの動き情報をシグナリングすることが可能であり得る。
【００７９】
[0093]図６〜図７に関して以下でさらに説明するように、予測処理ユニット１００は、図６〜図７に示されている方法を実施することによってＰＵ（または他の参照レイヤブロックおよび／またはエンハンスメントレイヤブロックまたはビデオユニット）をコーディング（たとえば、符号化または復号）するように構成され得る。たとえば、（たとえば、動き推定ユニット１２２および／または動き補償ユニット１２４を介した）インター予測ユニット１２１、イントラ予測ユニット１２６、またはレイヤ間予測ユニット１２８は、一緒にまたは別々に、図６〜図７に示されている方法を実施するように構成され得る。
【００８０】
[0094]ＣＵに対して符号化演算を実施することの一部として、イントラ予測ユニット１２６は、ＣＵのＰＵに対してイントラ予測を実施し得る。イントラ予測は空間圧縮を実現し得る。イントラ予測ユニット１２６がＰＵに対してイントラ予測を実施するとき、イントラ予測ユニット１２６は、同じピクチャ中の他のＰＵの復号サンプルに基づいて、ＰＵの予測データを生成し得る。ＰＵの予測データは、予測ビデオブロックと様々なシンタックス要素とを含み得る。イントラ予測ユニット１２６は、Ｉスライス、Ｐスライス、およびＢスライス中のＰＵに対してイントラ予測を実施し得る。
【００８１】
[0095]ＰＵに対してイントラ予測を実施するために、イントラ予測ユニット１２６は、ＰＵの予測データの複数のセットを生成するために、複数のイントラ予測モードを使用し得る。イントラ予測ユニット１２６が、イントラ予測モードを使用してＰＵの予測データのセットを生成するとき、イントラ予測ユニット１２６は、イントラ予測モードに関連付けられた方向および／または勾配で、隣接ＰＵのビデオブロックからＰＵのビデオブロックにわたって、サンプルを延ばし得る。隣接ＰＵは、ＰＵ、ＣＵ、およびツリーブロックについて左から右、上から下の符号化順序を仮定すると、ＰＵの上、右上、左上、または左にあり得る。イントラ予測ユニット１２６は、ＰＵのサイズに応じて、様々な数のイントラ予測モード、たとえば、３３個の方向性イントラ予測モードを使用し得る。
【００８２】
[0096]予測処理ユニット１００は、ＰＵについての、動き補償ユニット１２４によって生成された予測データ、またはＰＵについての、イントラ予測ユニット１２６によって生成された予測データの中から、ＰＵの予測データを選択し得る。いくつかの例では、予測処理ユニット１００は、予測データのセットのレート／ひずみメトリックに基づいて、ＰＵのための予測データを選択する。
【００８３】
[0097]予測処理ユニット１００が、イントラ予測ユニット１２６によって生成された予測データを選択する場合、予測処理ユニット１００は、ＰＵの予測データを生成するために使用されたイントラ予測モード、たとえば、選択されたイントラ予測モードをシグナリングし得る。予測処理ユニット１００は、選択されたイントラ予測モードを様々な方法でシグナリングし得る。たとえば、選択されたイントラ予測モードは、隣接ＰＵのイントラ予測モードと同じであることがあり得る。言い換えれば、隣接ＰＵのイントラ予測モードは現在ＰＵに対して最確モードであり得る。したがって、予測処理ユニット１００は、選択されたイントラ予測モードが隣接ＰＵのイントラ予測モードと同じであることを示すための、シンタックス要素を生成し得る。
【００８４】
[0098]上記で説明したように、ビデオエンコーダ２０はレイヤ間予測ユニット１２８を含み得る。レイヤ間予測ユニット１２８は、ＳＶＣにおいて利用可能である１つまたは複数の異なるレイヤ（たとえば、ベースレイヤまたは参照レイヤ）を使用して現在ブロック（たとえば、ＥＬ中の現在ブロック）を予測するように構成される。そのような予測はレイヤ間予測と呼ばれることがある。レイヤ間予測ユニット１２８は、レイヤ間冗長性を低減するために予測方法を利用し、それによって、コーディング効率を改善し、計算リソース要件を低減する。レイヤ間予測のいくつかの例としては、レイヤ間イントラ予測、レイヤ間動き予測、およびレイヤ間残差予測がある。レイヤ間イントラ予測は、エンハンスメントレイヤ中の現在ブロックを予測するために、ベースレイヤ中のコロケートブロックの再構成を使用する。レイヤ間動き予測は、エンハンスメントレイヤ中の動作を予測するために、ベースレイヤの動き情報を使用する。レイヤ間残差予測は、エンハンスメントレイヤの残差を予測するために、ベースレイヤの残差を使用する。レイヤ間予測方式の各々について、以下でより詳細に説明する。
【００８５】
[0099]予測処理ユニット１００がＣＵのＰＵの予測データを選択した後、残差生成ユニット１０２は、ＣＵのビデオブロックからＣＵのＰＵの予測ビデオブロックを差し引くこと（たとえば、マイナス符号によって示される）によって、ＣＵの残差データを生成し得る。ＣＵの残差データは、ＣＵのビデオブロック中のサンプルの異なるサンプル成分に対応する、２Ｄ残差ビデオブロックを含み得る。たとえば、残差データは、ＣＵのＰＵの予測ビデオブロック中のサンプルのルミナンス成分と、ＣＵの元のビデオブロック中のサンプルのルミナンス成分との間の差分に対応する、残差ビデオブロックを含み得る。さらに、ＣＵの残差データは、ＣＵのＰＵの予測ビデオブロック中のサンプルのクロミナンス成分と、ＣＵの元のビデオブロック中のサンプルのクロミナンス成分との間の差分に対応する、残差ビデオブロックを含み得る。
【００８６】
[00100]予測処理ユニット１００は、ＣＵの残差ビデオブロックをサブブロックに区分するために、４分木区分を実施し得る。各分割されていない残差ビデオブロックは、ＣＵの異なるＴＵに関連付けられ得る。ＣＵのＴＵに関連付けられた残差ビデオブロックのサイズおよび位置は、ＣＵのＰＵに関連付けられたビデオブロックのサイズおよび位置に基づくことも基づかないこともある。「残差４分木」（ＲＱＴ：residual quad tree）として知られる４分木構造は、残差ビデオブロックの各々に関連付けられたノードを含み得る。ＣＵのＴＵはＲＱＴのリーフノードに対応し得る。
【００８７】
[00101]変換処理ユニット１０４は、ＴＵに関連付けられた残差ビデオブロックに１つまたは複数の変換を適用することによって、ＣＵの各ＴＵのための１つまたは複数の変換係数ブロックを生成し得る。変換係数ブロックの各々は変換係数の２Ｄ行列であり得る。変換処理ユニット１０４は、ＴＵに関連付けられた残差ビデオブロックに様々な変換を適用し得る。たとえば、変換処理ユニット１０４は、離散コサイン変換（ＤＣＴ）、方向性変換、または概念的に同様の変換を、ＴＵに関連付けられた残差ビデオブロックに適用し得る。
【００８８】
[00102]変換処理ユニット１０４が、ＴＵに関連付けられた変換係数ブロックを生成した後、量子化ユニット１０６は、変換係数ブロック中の変換係数を量子化し得る。量子化ユニット１０６は、ＣＵに関連付けられたＱＰ値に基づいて、ＣＵのＴＵに関連付けられた変換係数ブロックを量子化し得る。
【００８９】
[00103]ビデオエンコーダ２０は、様々な方法でＱＰ値をＣＵに関連付け得る。たとえば、ビデオエンコーダ２０は、ＣＵに関連付けられたツリーブロックに対してレートひずみ分析を実施し得る。レートひずみ分析では、ビデオエンコーダ２０は、ツリーブロックに対して符号化演算を複数回実施することによって、ツリーブロックの複数のコード化表現を生成し得る。ビデオエンコーダ２０がツリーブロックの異なる符号化表現を生成するとき、ビデオエンコーダ２０は、異なるＱＰ値をＣＵに関連付け得る。ビデオエンコーダ２０は、最小のビットレートおよびひずみメトリックを有するツリーブロックのコード化表現で所与のＱＰ値がＣＵに関連付けられるとき、所与のＱＰ値がＣＵに関連付けられることをシグナリングし得る。
【００９０】
[00104]逆量子化ユニット１０８および逆変換ユニット１１０は、それぞれ、変換係数ブロックから残差ビデオブロックを再構成するために、変換係数ブロックに逆量子化および逆変換を適用し得る。再構成ユニット１１２は、ＴＵに関連付けられた再構成されたビデオブロックを生成するために、再構成された残差ビデオブロックを、予測処理ユニット１００によって生成された１つまたは複数の予測ビデオブロックからの対応するサンプルに追加し得る。このようにＣＵの各ＴＵのためのビデオブロックを再構成することによって、ビデオエンコーダ２０は、ＣＵのビデオブロックを再構成し得る。
【００９１】
[00105]再構成ユニット１１２がＣＵのビデオブロックを再構成した後、フィルタユニット１１３は、ＣＵに関連付けられたビデオブロックにおけるブロッキングアーティファクトを低減するためにデブロッキング演算を実施し得る。１つまたは複数のデブロッキング演算を実施した後、フィルタユニット１１３は、ＣＵの再構成されたビデオブロックを復号ピクチャバッファ１１４に記憶し得る。動き推定ユニット１２２および動き補償ユニット１２４は、後続ピクチャのＰＵに対してインター予測を実施するために、再構成されたビデオブロックを含んでいる参照ピクチャを使用し得る。さらに、イントラ予測ユニット１２６は、ＣＵと同じピクチャの中の他のＰＵに対してイントラ予測を実施するために、復号ピクチャバッファ１１４中の再構成されたビデオブロックを使用し得る。
【００９２】
[00106]エントロピー符号化ユニット１１６は、ビデオエンコーダ２０の他の機能構成要素からデータを受信し得る。たとえば、エントロピー符号化ユニット１１６は、量子化ユニット１０６から変換係数ブロックを受信し得、予測処理ユニット１００からシンタックス要素を受信し得る。エントロピー符号化ユニット１１６がデータを受信するとき、エントロピー符号化ユニット１１６は、エントロピー符号化データを生成するために、１つまたは複数のエントロピー符号化演算を実施し得る。たとえば、ビデオエンコーダ２０は、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ）演算、ＣＡＢＡＣ演算、変数間（Ｖ２Ｖ：variable-to-variable）レングスコーディング演算、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ：syntax-based context-adaptive binary arithmetic coding）演算、確率間隔区分エントロピー（ＰＩＰＥ）コーディング演算、または別のタイプのエントロピー符号化演算をデータに対して実施し得る。エントロピー符号化ユニット１１６は、エントロピー符号化データを含むビットストリームを出力し得る。
【００９３】
[00107]データに対してエントロピー符号化演算を実施することの一部として、エントロピー符号化ユニット１１６は、コンテキストモデルを選択し得る。エントロピー符号化ユニット１１６がＣＡＢＡＣ演算を実施している場合、コンテキストモデルは、特定の値を有する特定のビンの確率の推定値を示し得る。ＣＡＢＡＣのコンテキストでは、「ビン」という用語は、シンタックス要素の２値化されたバージョンのビットを指すために使用される。
マルチレイヤビデオエンコーダ
[00108]図２Ｂは、本開示で説明する態様による技法を実装し得る（単にビデオエンコーダ２３とも呼ばれる）マルチレイヤビデオエンコーダ２３の一例を示すブロック図である。ビデオエンコーダ２３は、ＳＨＶＣおよびマルチビューコーディングの場合など、マルチレイヤビデオフレームを処理するように構成され得る。さらに、ビデオエンコーダ２３は、本開示の技法のいずれかまたはすべてを実施するように構成され得る。
【００９４】
[00109]ビデオエンコーダ２３はビデオエンコーダ２０Ａとビデオエンコーダ２０Ｂとを含み、それらの各々はビデオエンコーダ２０として構成され得、ビデオエンコーダ２０に関して上記で説明した機能を実施し得る。さらに、参照番号の再利用によって示されるように、ビデオエンコーダ２０Ａおよび２０Ｂは、ビデオエンコーダ２０としてシステムとサブシステムとのうちの少なくともいくつかを含み得る。ビデオエンコーダ２３は、２つのビデオエンコーダ２０Ａおよび２０Ｂを含むものとして示されているが、ビデオエンコーダ２３は、そのようなものとして限定されず、任意の数のビデオエンコーダ２０レイヤを含み得る。いくつかの実施形態では、ビデオエンコーダ２３はアクセスユニット中の各ピクチャまたはフレームについてビデオエンコーダ２０を含み得る。たとえば、５つのピクチャを含むアクセスユニットは、５つのエンコーダレイヤを含むビデオエンコーダによって処理または符号化され得る。いくつかの実施形態では、ビデオエンコーダ２３は、アクセスユニット中のフレームよりも多くのエンコーダレイヤを含み得る。いくつかのそのような場合では、ビデオエンコーダレイヤのいくつかは、いくつかのアクセスユニットを処理するときに非アクティブであり得る。
【００９５】
[00110]ビデオエンコーダ２０Ａおよび２０Ｂに加えて、ビデオエンコーダ２３はリサンプリングユニット９０を含み得る。リサンプリングユニット９０は、場合によっては、たとえば、エンハンスメントレイヤを作成するために、受信されたビデオフレームのベースレイヤをアップサンプリングし得る。リサンプリングユニット９０は、フレームの受信されたベースレイヤに関連付けられた特定の情報をアップサンプリングするが、他の情報をアップサンプリングしないことがある。たとえば、リサンプリングユニット９０は、ベースレイヤの空間サイズまたはピクセルの数をアップサンプリングし得るが、スライスの数またはＰＯＣは一定のままであり得る。場合によっては、リサンプリングユニット９０は、受信されたビデオを処理しないことがあるか、および／または随意であり得る。たとえば、場合によっては、予測処理ユニット１００がアップサンプリングを実施し得る。いくつかの実施形態では、リサンプリングユニット９０は、レイヤをアップサンプリングすることと、スライス境界ルールおよび／またはラスタ走査ルールのセットに準拠するために１つまたは複数のスライスを再編成、再定義、変更、または調整することとを行うように構成される。アクセスユニット中のベースレイヤまたは下位レイヤをアップサンプリングするものとして主に説明したが、場合によっては、リサンプリングユニット９０はレイヤをダウンサンプリングし得る。たとえば、ビデオのストリーミング中に帯域幅が減少した場合、フレームは、アップサンプリングされるのではなく、ダウンサンプリングされ得る。
【００９６】
[00111]リサンプリングユニット９０は、下位レイヤエンコーダ（たとえば、ビデオエンコーダ２０Ａ）の復号ピクチャバッファ１１４からピクチャまたはフレーム（またはピクチャに関連付けられたピクチャ情報）を受信し、ピクチャ（または受信されたピクチャ情報）をアップサンプリングするように構成され得る。このアップサンプリングされたピクチャは、次いで、下位レイヤエンコーダと同じアクセスユニット中のピクチャを符号化するように構成された上位レイヤエンコーダ（たとえば、ビデオエンコーダ２０Ｂ）の予測処理ユニット１００に与えられ得る。ある場合には、上位レイヤエンコーダは、下位レイヤエンコーダから削除された１つのレイヤである。他の場合には、図２Ｂのレイヤ０ビデオエンコーダとレイヤ１エンコーダとの間に１つまたは複数の上位レイヤエンコーダがあり得る。
【００９７】
[00112]場合によっては、リサンプリングユニット９０は省略またはバイパスされ得る。そのような場合、ビデオエンコーダ２０Ａの復号ピクチャバッファ１１４からのピクチャは、直接、または少なくともリサンプリングユニット９０に与えられることなしに、ビデオエンコーダ２０Ｂの予測処理ユニット１００に与えられ得る。たとえば、ビデオエンコーダ２０Ｂに与えられたビデオデータと、ビデオエンコーダ２０Ａの復号ピクチャバッファ１１４からの参照ピクチャとが同じサイズまたは解像度である場合、参照ピクチャは、リサンプリングなしにビデオエンコーダ２０Ｂに与えられ得る。
【００９８】
[00113]いくつかの実施形態では、ビデオエンコーダ２３は、ビデオエンコーダ２０Ａにビデオデータを与える前に、ダウンサンプリングユニット９４を使用して下位レイヤエンコーダに与えられるべきビデオデータをダウンサンプリングする。代替的に、ダウンサンプリングユニット９４は、ビデオデータをアップサンプリングまたはダウンサンプリングすることが可能なリサンプリングユニット９０であり得る。また他の実施形態では、ダウンサンプリングユニット９４は省略され得る。
【００９９】
[00114]図２Ｂに示されているように、ビデオエンコーダ２３は、マルチプレクサ９８、またはｍｕｘをさらに含み得る。ｍｕｘ９８は、ビデオエンコーダ２３から合成ビットストリームを出力することができる。合成ビットストリームは、ビデオエンコーダ２０Ａおよび２０Ｂの各々からビットストリームを取ることと、所与の時間において出力されるビットストリームを交替することとによって、作成され得る。場合によっては、２つの（または、３つ以上のビデオエンコーダレイヤの場合には、より多くの）ビットストリームからのビットが一度に１ビットずつ交替され得るが、多くの場合、ビットストリームは別様に合成され得る。たとえば、出力ビットストリームは、選択されたビットストリームを一度に１ブロックずつ交替することによって作成され得る。別の例では、出力ビットストリームは、ビデオエンコーダ２０Ａおよび２０Ｂの各々から非１：１比のブロックを出力することによって作成され得る。たとえば、ビデオエンコーダ２０Ａから出力された各ブロックについて、２つのブロックがビデオエンコーダ２０Ｂから出力され得る。いくつかの実施形態では、ｍｕｘ９８からの出力ストリームはプリプログラムされ得る。他の実施形態では、ｍｕｘ９８は、ソースデバイス１２を含むソースデバイス上のプロセッサからなど、ビデオエンコーダ２３の外部のシステムから受信された制御信号に基づいて、ビデオエンコーダ２０Ａ、２０Ｂからのビットストリームを合成し得る。制御信号は、ビデオソース１８からのビデオの解像度またはビットレートに基づいて、リンク１６の帯域幅に基づいて、ユーザに関連付けられたサブスクリプション（たとえば、有料サブスクリプション対無料サブスクリプション）に基づいて、またはビデオエンコーダ２３から望まれる解像度出力を決定するための他のファクタに基づいて生成され得る。
ビデオデコーダ
[00115]図３Ａは、本開示で説明する態様による技法を実装し得るビデオデコーダ３０の一例を示すブロック図である。ビデオデコーダ３０は、ＨＥＶＣの場合など、ビデオフレームの単一のレイヤを処理するように構成され得る。さらに、ビデオデコーダ３０は、限定はしないが、図４および図５に関して上記および下記でより詳細に説明するＮｏＯｕｔｐｕｔＯｆＰｒｉｏｒＰｉｃｓＦｌａｇを推論する方法および関係するプロセスを含む、本開示の技法のいずれかまたはすべてを実施するように構成され得る。一例として、動き補償ユニット１６２および／またはイントラ予測ユニット１６４は、本開示で説明する技法のいずれかまたはすべてを実施するように構成され得る。一実施形態では、ビデオデコーダ３０は、場合によっては、本開示で説明する技法のいずれかまたはすべてを実施するように構成されたレイヤ間予測ユニット１６６を含み得る。他の実施形態では、レイヤ間予測は予測処理ユニット１５２（たとえば、動き補償ユニット１６２および／またはイントラ予測ユニット１６４）によって実施され得、その場合、レイヤ間予測ユニット１６６は省略され得る。ただし、本開示の態様はそのように限定されない。いくつかの例では、本開示で説明する技法は、ビデオデコーダ３０の様々な構成要素間で共有され得る。いくつかの例では、追加または代替として、プロセッサ（図示せず）が、本開示で説明する技法のいずれかまたはすべてを実施するように構成され得る。
【０１００】
[00116]説明の目的で、本開示では、ＨＥＶＣコーディングのコンテキストにおいてビデオデコーダ３０について説明する。しかしながら、本開示の技法は他のコーディング規格または方法に適用可能であり得る。図３Ａに示された例はシングルレイヤコーデックのためのものである。しかしながら、図３Ｂに関してさらに説明するように、ビデオデコーダ３０の一部または全部はマルチレイヤコーデックの処理のために複製され得る。
【０１０１】
[00117]図３Ａの例では、ビデオデコーダ３０は複数の機能構成要素を含む。ビデオデコーダ３０の機能構成要素は、エントロピー復号ユニット１５０と、予測処理ユニット１５２と、逆量子化ユニット１５４と、逆変換ユニット１５６と、再構成ユニット１５８と、フィルタユニット１５９と、復号ピクチャバッファ１６０とを含む。予測処理ユニット１５２は、動き補償ユニット１６２と、イントラ予測ユニット１６４と、レイヤ間予測ユニット１６６とを含む。いくつかの例では、ビデオデコーダ３０は、図２Ａのビデオエンコーダ２０に関して説明された符号化経路とは全般に逆の復号経路を実施し得る。他の例では、ビデオデコーダ３０は、より多数の、より少数の、または異なる機能構成要素を含み得る。
【０１０２】
[00118]ビデオデコーダ３０は、符号化ビデオデータを備えるビットストリームを受信し得る。ビットストリームは複数のシンタックス要素を含み得る。ビデオデコーダ３０がビットストリームを受信したとき、エントロピー復号ユニット１５０は、ビットストリームに対してパース演算を実施し得る。ビットストリームに対してパース演算を実施した結果として、エントロピー復号ユニット１５０は、ビットストリームからシンタックス要素を抽出し得る。パース演算を実施することの一部として、エントロピー復号ユニット１５０は、ビットストリーム中のエントロピー符号化シンタックス要素をエントロピー復号し得る。予測処理ユニット１５２、逆量子化ユニット１５４、逆変換ユニット１５６、再構成ユニット１５８、およびフィルタユニット１５９は、ビットストリームから抽出されたシンタックス要素に基づいて、復号ビデオデータを生成する再構成演算を実施し得る。
【０１０３】
[00119]上記で説明したように、ビットストリームは一連のＮＡＬユニットを備え得る。ビットストリームのＮＡＬユニットは、ビデオパラメータセットＮＡＬユニット、シーケンスパラメータセットＮＡＬユニット、ピクチャパラメータセットＮＡＬユニット、ＳＥＩ  ＮＡＬユニットなどを含み得る。ビットストリームに対してパース演算を実施することの一部として、エントロピー復号ユニット１５０は、シーケンスパラメータセットＮＡＬユニットからのシーケンスパラメータセット、ピクチャパラメータセットＮＡＬユニットからのピクチャパラメータセット、ＳＥＩ  ＮＡＬユニットからのＳＥＩデータなどを抽出し、エントロピー復号する、パース演算を実施し得る。
【０１０４】
[00120]さらに、ビットストリームのＮＡＬユニットはコード化スライスＮＡＬユニットを含み得る。ビットストリームに対してパース演算を実施することの一部として、エントロピー復号ユニット１５０は、コード化スライスＮＡＬユニットからコード化スライスを抽出し、エントロピー復号する、パース演算を実施し得る。コード化スライスの各々は、スライスヘッダとスライスデータとを含み得る。スライスヘッダは、スライスに関するシンタックス要素を含んでいることがある。スライスヘッダ中のシンタックス要素は、スライスを含んでいるピクチャに関連付けられたピクチャパラメータセットを識別するシンタックス要素を含み得る。エントロピー復号ユニット１５０は、スライスヘッダを復元するために、コード化スライスヘッダ中のシンタックス要素に対して、ＣＡＢＡＣ復号演算などのエントロピー復号演算を実施し得る。
【０１０５】
[00121]コード化スライスのＮＡＬユニットからスライスデータを抽出することの一部として、エントロピー復号ユニット１５０は、スライスデータ中のコード化ＣＵからシンタックス要素を抽出するパース演算を実施し得る。抽出されたシンタックス要素は、変換係数ブロックに関連付けられたシンタックス要素を含み得る。エントロピー復号ユニット１５０は、次いで、シンタックス要素のうちのいくつかに対してＣＡＢＡＣ復号演算を実施し得る。
【０１０６】
[00122]エントロピー復号ユニット１５０が区分されていないＣＵに対してパース演算を実施した後、ビデオデコーダ３０は、区分されていないＣＵに対して再構成演算を実施し得る。区分されていないＣＵに対して再構成演算を実施するために、ビデオデコーダ３０はＣＵの各ＴＵに対して再構成演算を実施し得る。ＣＵの各ＴＵについて再構成演算を実施することによって、ビデオデコーダ３０は、ＣＵに関連付けられた残差ビデオブロックを再構成し得る。
【０１０７】
[00123]ＴＵに対して再構成演算を実施することの一部として、逆量子化ユニット１５４は、ＴＵに関連付けられた変換係数ブロックを逆量子化（inverse quantize）、たとえば、逆量子化（de-quantize）し得る。逆量子化ユニット１５４は、ＨＥＶＣのために提案された、またはＨ．２６４復号規格によって定義された逆量子化プロセスと同様の様式で、変換係数ブロックを逆量子化し得る。逆量子化ユニット１５４は、量子化の程度を決定し、同様に、逆量子化ユニット１５４が適用すべき逆量子化の程度を決定するために、変換係数ブロックのＣＵのためにビデオエンコーダ２０によって計算された量子化パラメータＱＰを使用し得る。
【０１０８】
[00124]逆量子化ユニット１５４が変換係数ブロックを逆量子化した後、逆変換ユニット１５６は、変換係数ブロックに関連付けられたＴＵのための残差ビデオブロックを生成し得る。逆変換ユニット１５６は、ＴＵのための残差ビデオブロックを生成するために、変換係数ブロックに逆変換を適用し得る。たとえば、逆変換ユニット１５６は、変換係数ブロックに、逆ＤＣＴ、逆整数変換、逆カルーネンレーベ変換（ＫＬＴ：Karhunen-Loeve transform）、逆回転変換、逆方向変換、または別の逆変換を適用し得る。いくつかの例では、逆変換ユニット１５６は、ビデオエンコーダ２０からのシグナリングに基づいて、変換係数ブロックに適用すべき逆変換を決定し得る。そのような例では、逆変換ユニット１５６は、変換係数ブロックに関連付けられたツリーブロックの４分木のルートノードにおいてシグナリングされた変換に基づいて、逆変換を決定し得る。他の例では、逆変換ユニット１５６は、ブロックサイズ、コーディングモードなど、１つまたは複数のコーディング特性から逆変換を推論し得る。いくつかの例では、逆変換ユニット１５６はカスケード逆変換を適用し得る。
【０１０９】
[00125]いくつかの例では、動き補償ユニット１６２は、補間フィルタに基づく補間を実施することによって、ＰＵの予測ビデオブロックを改良し得る。サブサンプル精度をもつ動き補償のために使用されるべき補間フィルタのための識別子が、シンタックス要素中に含まれ得る。動き補償ユニット１６２は、参照ブロックのサブ整数サンプルについての補間値を計算するために、ＰＵの予測ビデオブロックの生成中にビデオエンコーダ２０によって使用された同じ補間フィルタを使用し得る。動き補償ユニット１６２は、受信されたシンタックス情報に従って、ビデオエンコーダ２０によって使用された補間フィルタを決定し、予測ビデオブロックを生成するためにその補間フィルタを使用し得る。
【０１１０】
[00126]図６〜図７に関して以下でさらに説明するように、予測処理ユニット１５２は、図６〜図７に示されている方法を実施することによってＰＵ（または他の参照レイヤブロックおよび／またはエンハンスメントレイヤブロックまたはビデオユニット）をコーディング（たとえば、符号化または復号）し得る。たとえば、動き補償ユニット１６２、イントラ予測ユニット１６４、またはレイヤ間予測ユニット１６６は、一緒にまたは別々に、図６〜図７に示されている方法を実施するように構成され得る。
【０１１１】
[00127]ＰＵが、イントラ予測を使用して符号化される場合、イントラ予測ユニット１６４は、ＰＵのための予測ビデオブロックを生成するためにイントラ予測を実施し得る。たとえば、イントラ予測ユニット１６４は、ビットストリーム中のシンタックス要素に基づいて、ＰＵのためのイントラ予測モードを決定し得る。ビットストリームは、ＰＵのイントラ予測モードを決定するためにイントラ予測ユニット１６４が使用し得るシンタックス要素を含み得る。
【０１１２】
[00128]いくつかの事例では、シンタックス要素は、イントラ予測ユニット１６４が別のＰＵのイントラ予測モードを使用して現在ＰＵのイントラ予測モードを決定すべきであることを示し得る。たとえば、現在ＰＵのイントラ予測モードは隣接ＰＵのイントラ予測モードと同じであることがあり得る。言い換えれば、隣接ＰＵのイントラ予測モードは現在ＰＵに対して最確モードであり得る。したがって、この例では、ビットストリームは、ＰＵのイントラ予測モードが隣接ＰＵのイントラ予測モードと同じであることを示す、小さいシンタックス要素を含み得る。イントラ予測ユニット１６４は、次いで、空間的に隣接するＰＵのビデオブロックに基づいてＰＵの予測データ（たとえば、予測サンプル）を生成するために、イントラ予測モードを使用し得る。
【０１１３】
[00129]上記で説明したように、ビデオデコーダ３０もレイヤ間予測ユニット１６６を含み得る。レイヤ間予測ユニット１６６は、ＳＶＣにおいて利用可能である１つまたは複数の異なるレイヤ（たとえば、ベースレイヤまたは参照レイヤ）を使用して現在ブロック（たとえば、ＥＬ中の現在ブロック）を予測するように構成される。そのような予測はレイヤ間予測と呼ばれることがある。レイヤ間予測ユニット１６６は、レイヤ間冗長性を低減するために予測方法を利用し、それによって、コーディング効率を改善し、計算リソース要件を低減する。レイヤ間予測のいくつかの例としては、レイヤ間イントラ予測、レイヤ間動き予測、およびレイヤ間残差予測がある。レイヤ間イントラ予測は、エンハンスメントレイヤ中の現在ブロックを予測するために、ベースレイヤ中のコロケートブロックの再構成を使用する。レイヤ間動き予測は、エンハンスメントレイヤ中の動作を予測するために、ベースレイヤの動き情報を使用する。レイヤ間残差予測は、エンハンスメントレイヤの残差を予測するために、ベースレイヤの残差を使用する。レイヤ間予測方式の各々について、以下でより詳細に説明する。
【０１１４】
[00130]再構成ユニット１５８は、ＣＵのビデオブロックを再構成するために、ＣＵのＴＵに関連付けられた残差ビデオブロックと、ＣＵのＰＵの予測ビデオブロック、たとえば、適用可能なとき、イントラ予測データまたはインター予測データのいずれかとを使用し得る。したがって、ビデオデコーダ３０は、ビットストリーム中のシンタックス要素に基づいて、予測ビデオブロックと残差ビデオブロックとを生成し得、予測ビデオブロックと残差ビデオブロックとに基づいて、ビデオブロックを生成し得る。
【０１１５】
[00131]再構成ユニット１５８がＣＵのビデオブロックを再構成した後、フィルタユニット１５９は、ＣＵに関連付けられたブロッキングアーティファクトを低減するためにデブロッキング演算を実施し得る。フィルタユニット１５９が、ＣＵに関連付けられたブロッキングアーティファクトを低減するためにデブロッキング演算を実施した後、ビデオデコーダ３０はＣＵのビデオブロックを復号ピクチャバッファ１６０に記憶し得る。復号ピクチャバッファ１６０は、後続の動き補償、イントラ予測、および図１Ａまたは図１Ｂのディスプレイデバイス３２などのディスプレイデバイス上での提示のために、参照ピクチャを与え得る。たとえば、ビデオデコーダ３０は、復号ピクチャバッファ１６０中のビデオブロックに基づいて、他のＣＵのＰＵに対してイントラ予測演算またはインター予測演算を実施し得る。
マルチレイヤデコーダ
[00132]図３Ｂは、本開示で説明する態様による技法を実装し得る（単にビデオデコーダ３３とも呼ばれる）マルチレイヤビデオデコーダ３３の一例を示すブロック図である。ビデオデコーダ３３は、ＳＨＶＣおよびマルチビューコーディングの場合など、マルチレイヤビデオフレームを処理するように構成され得る。さらに、ビデオデコーダ３３は、本開示の技法のいずれかまたはすべてを実施するように構成され得る。
【０１１６】
[00133]ビデオデコーダ３３はビデオデコーダ３０Ａとビデオデコーダ３０Ｂとを含み、それらの各々はビデオデコーダ３０として構成され得、ビデオデコーダ３０に関して上記で説明した機能を実施し得る。さらに、参照番号の再利用によって示されるように、ビデオデコーダ３０Ａおよび３０Ｂは、ビデオデコーダ３０としてシステムとサブシステムとのうちの少なくともいくつかを含み得る。ビデオデコーダ３３は、２つのビデオデコーダ３０Ａおよび３０Ｂを含むものとして示されているが、ビデオデコーダ３３は、そのようなものとして限定されず、任意の数のビデオデコーダ３０レイヤを含み得る。いくつかの実施形態では、ビデオデコーダ３３はアクセスユニット中の各ピクチャまたはフレームについてビデオデコーダ３０を含み得る。たとえば、５つのピクチャを含むアクセスユニットは、５つのデコーダレイヤを含むビデオデコーダによって処理または復号され得る。いくつかの実施形態では、ビデオデコーダ３３は、アクセスユニット中のフレームよりも多くのデコーダレイヤを含み得る。いくつかのそのような場合では、ビデオデコーダレイヤのいくつかは、いくつかのアクセスユニットを処理するときに非アクティブであり得る。
【０１１７】
[00134]ビデオデコーダ３０Ａおよび３０Ｂに加えて、ビデオデコーダ３３はアップサンプリングユニット９２を含み得る。いくつかの実施形態では、アップサンプリングユニット９２は、フレームまたはアクセスユニットのための参照ピクチャリストに追加されるべきエンハンストレイヤを作成するために、受信されたビデオフレームのベースレイヤをアップサンプリングし得る。このエンハンストレイヤは復号ピクチャバッファ１６０に記憶され得る。いくつかの実施形態では、アップサンプリングユニット９２は、図２Ａのリサンプリングユニット９０に関して説明した実施形態の一部または全部を含むことができる。いくつかの実施形態では、アップサンプリングユニット９２は、レイヤをアップサンプリングすることと、スライス境界ルールおよび／またはラスタ走査ルールのセットに準拠するために１つまたは複数のスライスを再編成、再定義、変更、または調整することとを行うように構成される。場合によっては、アップサンプリングユニット９２は、受信されたビデオフレームのレイヤをアップサンプリングおよび／またはダウンサンプリングするように構成されたリサンプリングユニットであり得る。
【０１１８】
[00135]アップサンプリングユニット９２は、下位レイヤデコーダ（たとえば、ビデオデコーダ３０Ａ）の復号ピクチャバッファ１６０からピクチャまたはフレーム（またはピクチャに関連付けられたピクチャ情報）を受信し、ピクチャ（または受信されたピクチャ情報）をアップサンプリングするように構成され得る。このアップサンプリングされたピクチャは、次いで、下位レイヤデコーダと同じアクセスユニット中のピクチャを復号するように構成された上位レイヤデコーダ（たとえば、ビデオデコーダ３０Ｂ）の予測処理ユニット１５２に与えられ得る。ある場合には、上位レイヤデコーダは、下位レイヤデコーダから削除された１つのレイヤである。他の場合には、図３Ｂのレイヤ０デコーダとレイヤ１デコーダとの間に１つまたは複数の上位レイヤデコーダがあり得る。
【０１１９】
[00136]場合によっては、アップサンプリングユニット９２は省略またはバイパスされ得る。そのような場合、ビデオデコーダ３０Ａの復号ピクチャバッファ１６０からのピクチャは、直接、または少なくともアップサンプリングユニット９２に与えられることなしに、ビデオデコーダ３０Ｂの予測処理ユニット１５２に与えられ得る。たとえば、ビデオデコーダ３０Ｂに与えられたビデオデータと、ビデオデコーダ３０Ａの復号ピクチャバッファ１６０からの参照ピクチャとが同じサイズまたは解像度である場合、参照ピクチャは、アップサンプリングなしにビデオデコーダ３０Ｂに与えられ得る。さらに、いくつかの実施形態では、アップサンプリングユニット９２は、ビデオデコーダ３０Ａの復号ピクチャバッファ１６０から受信された参照ピクチャをアップサンプリングまたはダウンサンプリングするように構成されたリサンプリングユニット９０であり得る。
【０１２０】
[00137]図３Ｂに示されているように、ビデオデコーダ３３は、デマルチプレクサ９９、またはｄｅｍｕｘをさらに含み得る。ｄｅｍｕｘ９９は符号化ビデオビットストリームを複数のビットストリームに分割することができ、ｄｅｍｕｘ９９によって出力された各ビットストリームは異なるビデオデコーダ３０Ａおよび３０Ｂに与えられる。複数のビットストリームは、ビットストリームを受信することによって作成され得、ビデオデコーダ３０Ａおよび３０Ｂの各々は、所与の時間においてビットストリームの一部分を受信する。場合によっては、ｄｅｍｕｘ９９において受信されるビットストリームからのビットは、ビデオデコーダの各々（たとえば、図３Ｂの例ではビデオデコーダ３０Ａおよび３０Ｂ）の間で一度に１ビットずつ交替され得るが、多くの場合、ビットストリームは別様に分割される。たとえば、ビットストリームは、一度に１ブロックずつビットストリームを受信するビデオデコーダを交替することによって分割され得る。別の例では、ビットストリームは、非１：１比のブロックによって、ビデオデコーダ３０Ａおよび３０Ｂの各々に分割され得る。たとえば、ビデオデコーダ３０Ａに与えられる各ブロックについて、２つのブロックがビデオデコーダ３０Ｂに与えられ得る。いくつかの実施形態では、ｄｅｍｕｘ９９によるビットストリームの分割はプリプログラムされ得る。他の実施形態では、ｄｅｍｕｘ９９は、宛先デバイス１４を含む宛先デバイス上のプロセッサからなど、ビデオデコーダ３３の外部のシステムから受信された制御信号に基づいてビットストリームを分割し得る。制御信号は、入力インターフェース２８からのビデオの解像度またはビットレートに基づいて、リンク１６の帯域幅に基づいて、ユーザに関連付けられたサブスクリプション（たとえば、有料サブスクリプション対無料サブスクリプション）に基づいて、またはビデオデコーダ３３によって取得可能な解像度を決定するための他のファクタに基づいて生成され得る。
イントラランダムアクセスポイント（ＩＲＡＰ）ピクチャ
[00138]いくつかのビデオコーディング方式は、様々なランダムアクセスポイントを、ビットストリームが、ビットストリーム中でそれらのランダムアクセスポイントに先行するいかなるピクチャも復号する必要なしに、それらのランダムアクセスポイントのいずれかから始めて復号され得るように、ビットストリーム全体にわたって与え得る。そのようなビデオコーディング方式では、（たとえば、ランダムアクセスポイントを与えるピクチャと同じアクセスユニット中にあるピクチャを含む）出力順序においてランダムアクセスポイントに後続するピクチャは、ランダムアクセスポイントに先行するいかなるピクチャも使用することなしに正しく復号され得る。たとえば、ビットストリームの一部分が送信の間または復号の間に失われても、デコーダは、次のランダムアクセスポイントから始めてビットストリームの復号を再開することができる。ランダムアクセスのサポートは、たとえば、動的なストリーミングサービス、シーク動作、チャネル切替えなどを可能にし得る。場合によっては、出力順序においてランダムアクセスポイントに後続するピクチャは、復号のためにリーディングピクチャを使用し得る。リーディングピクチャは、ビットストリーム中でランダムアクセスポイントに後続し、ランダムアクセスポイントの前に出力および表示されるピクチャを指すことがある。
【０１２１】
[00139]いくつかのコーディング方式では、そのようなランダムアクセスポイントは、ＩＲＡＰピクチャと呼ばれるピクチャによって与えられ得る。たとえば、アクセスユニット（「ａｕＡ」）中に含まれているエンハンスメントレイヤ（「ｌａｙｅｒＡ」）中の（たとえば、エンハンスメントレイヤＩＲＡＰピクチャによって与えられる）ランダムアクセスポイントは、各参照レイヤ（「ｌａｙｅｒＢ」）中にあり、復号順序においてａｕＡに先行するアクセスユニット（「ａｕＢ」）中に含まれているランダムアクセスポイント（または、ａｕＡ中に含まれているランダムアクセスポイント）を有するｌａｙｅｒＡのｌａｙｅｒＢ（たとえば、ｌａｙｅｒＡを予測するために使用されるレイヤである参照レイヤ）に関して出力順序においてａｕＢに後続する（ａｕＢ中に位置するピクチャを含む）ｌａｙｅｒＡ中のピクチャが、ａｕＢに先行するｌａｙｅｒＡ中のいかなるピクチャも復号する必要なしに正しく復号可能であり得るように、レイヤ特有のランダムアクセスを与え得る。たとえば、復号がａｕＢから開始し、ｌａｙｅｒＢ中およびａｕＢ中のピクチャが復号可能であるとき、ａｕＡ中にあるレイヤＡ中のピクチャ、およびａｕＡに後続するｌａｙｅｒＡ中のピクチャは復号可能である。
【０１２２】
[00140]ＩＲＡＰピクチャは、イントラ予測を使用してコーディングされ（たとえば、同じレイヤ中の他のピクチャを参照することなしにコーディングされ）得、たとえば、瞬時復号リフレッシュ（ＩＤＲ：instantaneous decoding refresh）ピクチャと、クリーンランダムアクセス（ＣＲＡ：clean random access）ピクチャと、切断リンクアクセス（ＢＬＡ：broken link access）ピクチャとを含み得る。ビットストリーム中にＩＤＲピクチャがあるとき、復号順序においてＩＤＲピクチャに先行するピクチャは、復号順序においてＩＤＲピクチャに後続するピクチャによる予測のために使用されない。ビットストリーム中にＣＲＡピクチャがあるとき、ＣＲＡピクチャに後続するピクチャは、復号順序においてＣＲＡピクチャに先行するピクチャを予測のために使用することも、使用しないこともある。復号順序においてＣＲＡピクチャに後続するが、復号順序においてＣＲＡピクチャに先行するピクチャを使用するピクチャは、ランダムアクセススキップリーディング（ＲＡＳＬ：random access skipped leading）ピクチャと呼ばれることがある。復号順序においてＩＲＡＰピクチャに後続し、出力順序においてＩＲＡＰピクチャに先行する別のタイプのピクチャは、復号順序においてＩＲＡＰピクチャに先行するいかなるピクチャへの参照も含んでいないことがあるランダムアクセス復号可能リーディング（ＲＡＤＬ：random access decodable leading）ピクチャである。ＣＲＡピクチャに先行するピクチャが利用可能でない場合、ＲＡＳＬピクチャはデコーダによって廃棄され得る。ＲＡＳＬピクチャは、ＢＬＡピクチャの後に存在することも、存在しないこともある。ＲＡＳＬピクチャがＢＬＡピクチャの後に存在するとき、ＲＡＳＬピクチャは、それらの参照ピクチャが利用可能でないことがあるので、無視され、および／または復号されないべきである。ＩＲＡＰピクチャであるベースレイヤピクチャ（たとえば、０のレイヤＩＤ値を有するピクチャ）を含んでいるアクセスユニット（たとえば、複数のレイヤにわたって同じ出力時間に関連付けられたコード化ピクチャを含むピクチャのグループ）は、ＩＲＡＰアクセスユニットと呼ばれることがある。
ＩＲＡＰピクチャのクロスレイヤ整合
[00141]ＳＨＶＣおよびＭＶ−ＨＥＶＣなどのＳＨＶＣ拡張では、ＩＲＡＰピクチャは、異なるレイヤにわたって整合される（たとえば、同じアクセスユニットに含まれている）ことを必要とされないことがある。たとえば、ＩＲＡＰピクチャが整合されることを必要とされる場合、少なくとも１つのＩＲＡＰピクチャを含んでいるいかなるアクセスユニットもＩＲＡＰピクチャのみを含んでいることになる。一方、ＩＲＡＰピクチャが、単一のアクセスユニット中で、整合されることを必要とされない場合、（たとえば、第１のレイヤ中の）あるピクチャがＩＲＡＰピクチャであり得、（たとえば、第２のレイヤ中の）別のピクチャが非ＩＲＡＰピクチャであり得る。ビットストリーム中にそのような非整合ＩＲＡＰピクチャを有することは、いくつかの利点を与え得る。たとえば、２レイヤビットストリーム中で、エンハンスメントレイヤ中よりも多くのＩＲＡＰピクチャがベースレイヤ中にある場合、ブロードキャストおよびマルチキャストの適用例において、低い同調遅延およびより高いコーディング効率が達成され得る。
【０１２３】
[00142]いくつかのビデオコーディング方式では、ＰＯＣが、復号ピクチャが表示される相対的な順序を追跡するために使用され得る。そのようなコーディング方式のうちのいくつかにより、ＰＯＣ値は、いくつかのタイプのピクチャがビットストリーム中に出現するときはいつでもリセットされる（たとえば、０に設定されるか、またはビットストリーム中でシグナリングされた何らかの値に設定される）ことになり得る。たとえば、あるＩＲＡＰピクチャのＰＯＣ値がリセットされ得、復号順序においてそれらのＩＲＡＰピクチャに先行する他のピクチャのＰＯＣ値もリセットされることになる。ＩＲＡＰピクチャが異なるレイヤにわたって整合されることを必要とされないとき、このことが問題となり得る。たとえば、あるピクチャ（「ｐｉｃＡ」）がＩＲＡＰピクチャであり、同じアクセスユニット中の別のピクチャ（「ｐｉｃＢ」）がＩＲＡＰピクチャでないとき、ｐｉｃＡがＩＲＡＰピクチャであることに起因してリセットされる、ｐｉｃＡを含んでいるレイヤ中のピクチャ（「ｐｉｃＣ」）のＰＯＣ値は、リセットされない、ｐｉｃＢを含んでいるレイヤ中のピクチャ（「ｐｉｃＤ」）のＰＯＣ値と異なることがあり得、ここで、ｐｉｃＣおよびｐｉｃＤは同じアクセスユニット中にある。このことは、それらが同じアクセスユニット（たとえば、同じ出力時間）に属していても、ｐｉｃＣおよびｐｉｃＤが異なるＰＯＣ値を有することを引き起こす。したがって、この例では、ｐｉｃＣおよびｐｉｃＤのＰＯＣ値を導出するための導出プロセスは、ＰＯＣ値およびアクセスユニットの定義と一致するＰＯＣ値を生成するように修正され得る。
マルチレイヤコーデックのための時間動きベクトル予測指示および表現フォーマット更新
[00143]ＳＨＶＣおよびＭＶ−ＨＥＶＣの早期バージョン（たとえば、ＳＨＶＣワーキングドラフト６、ＭＶ−ＨＥＶＣワーキングドラフト８など）は、現在ピクチャのｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇと時間ＩＤの両方の値が０に等しいとき、およびピクチャがベースレイヤ（たとえば、レイヤＩＤ＝０を有するレイヤ）に属するとき、復号順序において現在ピクチャに先行するピクチャからの時間動きベクトルが、復号順序において現在ピクチャに後続するいかなるピクチャのＴＭＶＰにおいても使用されるべきでないという制限を実装する。いくつかの態様によれば、本開示では、現在ピクチャの先行ピクチャは、復号順序における先行ピクチャを指すことがあり、現在ピクチャの後続ピクチャは、復号順序における後続ピクチャを指すことがある。ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇは、スライス中の現在ピクチャが、たとえば、参照ピクチャ（たとえば、コロケートピクチャ）として現在ピクチャの先行ピクチャに基づいて、ＴＭＶＰを使用することができるかどうかを示すことができる。ビットストリームは、時間スケーラビリティをサポートし、実施形態に応じて異なるフレームレートを与え得る。一実施形態では、時間ＩＤ＝０をもつ時間レイヤはデフォルトフレームレートを与えることができる。時間ＩＤ＝０をもつ時間レイヤはベース時間サブレイヤと呼ばれることがある。１つまたは複数の時間サブレイヤがあり得、下位時間サブレイヤ中のピクチャが参照として上位時間サブレイヤ中のピクチャを使用すべきでないという制約がインター予測のために適用され得る。ピクチャがベースレイヤに属するという制限および条件は、たとえば、エンハンスメントレイヤがＴＭＶＰを使用することを可能にするために導入された。しかしながら、エンハンスメントレイヤは、制限をベースレイヤに限定することなしにＴＭＶＰを使用し得る。制限に関するいくつかの詳細、および制限に関連する問題について、たとえば、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇのセマンティクスとｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇのセマンティクスとを説明するセクションにおいて、以下でさらに詳細に説明する。
【０１２４】
[00144]ＳＨＶＣおよびＭＶ−ＨＥＶＣの早期バージョンはまた、現在ピクチャに先行する現在レイヤのピクチャが、同じレイヤのいかなる後続ピクチャのためのＴＭＶＰにおいてもコロケートピクチャとして使用されるべきでないかどうかの指示を与える、ＴＭＶＰ制約ＳＥＩメッセージと呼ばれる新しいＳＥＩメッセージを追加する。たとえば、ＴＭＶＰ制約ＳＥＩメッセージは、復号順序における現在レイヤ中の現在ピクチャの先行ピクチャが、復号順序における現在レイヤ中の現在ピクチャの後続ピクチャのＴＭＶＰのために使用され得るかどうかを示すｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇと呼ばれるフラグを含むことができる。しかしながら、ＳＨＶＣおよびＭＶ−ＨＥＶＣの早期バージョンにおけるｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇのセマンティクスは、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇとの競合につながることがある。たとえば、現在ピクチャを含んでいるスライスのスライスヘッダ中のｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇは、１に等しく、現在ピクチャが、コロケートピクチャとして現在ピクチャの先行ピクチャを参照してＴＭＶＰを使用することができることを示すが、現在ピクチャのためのＴＭＶＰ制約ＳＥＩメッセージ中のｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇは、１に等しく、復号における現在ピクチャの後続ピクチャが、ＴＭＶＰのために復号順序における現在ピクチャの先行ピクチャを使用すべきでないことを示す。そのような場合、後続ピクチャは、ＴＭＶＰのためにコロケートピクチャとして現在ピクチャを使用することができるので、先行ピクチャを使用する現在ピクチャのＴＭＶＰに導入されたエラーが後続ピクチャに伝搬され得る。後続ピクチャは、ＴＭＶＰのために現在ピクチャのいかなる先行ピクチャも使用していないが、後続ピクチャは、ＴＭＶＰのために現在ピクチャ自体を使用し得る。フラグおよびＴＭＶＰ制約ＳＥＩメッセージに関するいくつかの詳細および関係する問題について、たとえば、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇのセマンティクスとｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇのセマンティクスとを説明するセクションにおいて、以下でさらに詳細に説明する。
【０１２５】
[00145]これらおよび他の課題に対処するために、いくつかの態様による技法は、現在ピクチャのいかなる先行ピクチャからの時間動きベクトルも、復号順序における現在ピクチャのいかなる後続ピクチャのＴＭＶＰにおいても使用されるべきでないという制限をすべてのレイヤに適用することができる。たとえば、制限は、ピクチャがベースレイヤに属するのか他のレイヤに属するのかにかかわらず、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇ＝０および時間ＩＤ＝０であるとき、ピクチャに適用され得る。一例では、エンハンスメントレイヤが、制限をベースレイヤに限定することなしにＴＭＶＰを使用することを可能にするために、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇとともにＴＭＶＰ制約ＳＥＩメッセージが使用され得る。
【０１２６】
[00146]その上、本技法は、たとえば、現在ピクチャのためのｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇと現在ピクチャのためのｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇとの間の競合を解決するために、ｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇのセマンティクスを変更することができる。たとえば、ｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇは、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇよりも高い優先順位を取ることができる。一例では、ｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇは、現在ピクチャの先行ピクチャが現在ピクチャならびに復号順序における現在ピクチャの後続ピクチャのＴＭＶＰのために使用されるべきでないことを示すように変更される。ｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇの値が１に等しい場合、先行ピクチャは現在ピクチャまたはそれの後続ピクチャのＴＭＶＰのために使用されない。先行ピクチャがＴＭＶＰのために使用されないとき、先行ピクチャの動きベクトルは、たとえば、動きベクトルストレージから削除され得る。
【０１２７】
[00147]ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇによって課される制限およびｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇによって課される制限は、エラー耐性目的で実装され得る。エラー耐性は、たとえば、復号プロセスにおいて、エラーが発生したことが検出されたとき、他のピクチャへのエラーの伝搬を防止または低減することを指すことがある。予測のために、エラーをもつピクチャを参照しないことは、エラーが他のピクチャの品質に影響を及ぼすのを阻止することができる。しかしながら、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇとｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇの両方が１に等しいとき、現在ピクチャのＴＭＶＰにおけるエラーは、依然として、復号順序における現在ピクチャの後続ピクチャのＴＭＶＰに導入され得る。現在ピクチャと後続ピクチャの両方がＴＭＶＰにおいて現在ピクチャの先行ピクチャを使用することを可能にしないことによって、エラー耐性は著しく改善および増加され得る。
【０１２８】
[00148]いくつかの態様によれば、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇによって課される制限がベースレイヤに限定されるべきであるという条件は、依然として、エンハンスメントレイヤがＴＭＶＰを使用することを可能にしながら、エラー耐性特徴の使用を可能にするために実装された。しかしながら、エンハンスメントレイヤは、ベースレイヤに限定するという条件なしに、依然として、エラー耐性特徴とともにＴＭＶＰを使用することができる。たとえば、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇおよびｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇは両方とも１に等しくなり得る。上記で説明したように、現在ピクチャの予測におけるエラーが、復号順序における現在ピクチャの後続ピクチャの予測に影響を及ぼすことを防止され得るので、ｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇの変更セマンティクスはエラー耐性態様をさらに向上させる。
【０１２９】
[00149]さらに、ＳＨＶＣおよびＭＶ−ＨＥＶＣの早期バージョンでは、ＶＰＳ中のシンタックス要素またはフラグの値が、ＳＰＳ中の対応するシンタックス要素またはフラグの値を制約するために使用される。ＶＰＳおよびＳＰＳは、両方とも表現フォーマット情報を含むことができる。表現フォーマット情報は、ピクチャ幅および高さ（たとえば、ピクチャサイズ）、クロマ成分のビット深度、ルーマ成分のビット深度、色平面情報、コンフォーマンスウィンドウサイズを含むことができる。ＶＰＳはすべてのレイヤに適用され得、概して、１つのＶＰＳがビットストリームのために定義され得る。ＳＰＳは特定のレイヤに固有であり得、ビットストリームが複数のシーケンスを含む場合、複数のＳＰＳが存在することができる。概して、ＶＰＳ中の値はワーストケースシナリオ値または最大値を表し、ＳＰＳは、ＶＰＳ中の値よりも小さいかまたはそれに等しい異なる値を適宜に指定することができる。したがって、ＶＰＳ中のシンタックス要素またはフラグの値は、ＳＰＳのための表現フォーマット情報が更新されたとき、ＳＰＳ中の対応するシンタックス要素またはフラグの値を制約することができる。ＶＰＳ中のワーストケースシナリオ値または最大値は、ビットストリームを復号するためのリソース（たとえば、メモリ）を準備するためにデコーダによって使用され得るので、これらの値を有することは重要であり得、したがって、ＳＰＳ中で行われた表現フォーマットのいかなる変更も、必要とされるリソースが、準備されたリソースを超えることを引き起こすべきでないことは重要であり得る。しかしながら、いくつかのシンタックス要素またはフラグでは、ワーストケースシナリオ値または最大値が適用可能であるかどうかは不明瞭である。一例は、０または１のいずれかの値を有するフラグであり得る。
【０１３０】
[00150]これらおよび他の課題に対処するために、いくつかの態様による技法は、表現フォーマット中のｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇのための制約を削除することができる。ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇは、クロマフォーマットの３つの色成分（たとえば、Ｙ、Ｃｂ、またはＣｒ）が別々にコーディングされるか否かを示すことができる。ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇの値がＳＰＳ中で更新されるべきであるとき、本技法は、ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇの所望の値がＶＰＳ中のｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇの値よりも小さいかまたはそれに等しいかどうかを検査する必要がない。たとえば、ビットストリームを復号するための必要とされるリソースは、ｓｅｐａｒａｔｅ＿ｃｏｌｏｒ＿ｐｌａｎ＿ｆｌａｇの値が０または１に等しいかどうかにかかわらず同じである。
【０１３１】
[00151]このようにして、ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇの値は、よりフレキシブルな様式でＳＰＳ中で更新され得、表現フォーマット中のｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇの更新がより効率的になり得る。
ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇのセマンティクス
[00152]ＳＨＶＣおよびＭＶ−ＨＥＶＣの早期バージョンでは、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇのセマンティクスは以下のように定義される。変更は、（たとえば、ＪＣＴＶＣ−０１８９に基づく）早期バージョンの前のバージョンに対するものである。ＳＨＶＣおよびＭＶ−ＨＥＶＣの前のバージョンへの追加はイタリック体で示されている。
【０１３２】
【表１】
0006672184.tif 000002
【０１３３】
表１−ＳＨＶＣおよびＭＶ−ＨＥＶＣの早期バージョンにおけるｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇのセマンティクス
[00153]ＴＭＶＰ制約ＳＥＩメッセージと呼ばれる補足エンハンスメント情報（ＳＥＩ）メッセージの追加は、復号順序において現在ピクチャに先行する現在レイヤのピクチャが、同じレイヤの、復号順序におけるいかなる後続ピクチャのためのＴＭＶＰにおいてもコロケートピクチャとして使用されないかどうかの指示を与える。
【０１３４】
[00154]上記の２つの採用された変更がある場合、ＴＭＶＰの使用の指示のための既存の技法に関する問題が残る。そのような問題について以下で説明する。
【０１３５】
[00155]ＨＥＶＣでは、０に等しいＴｅｍｐｏｒａｌＩｄをもつピクチャに対する、０に等しいｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇによって課される制限はエラー耐性目的のためであった。制限が適用されたとき、デコーダは、現在ピクチャが、０に等しいｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇとＴｅｍｐｏｒａｌＩｄの両方を有するとき、以前のピクチャの動きベクトルを空にすることができる。
【０１３６】
[00156]第１の変更からの「ＮｕｍＤｉｒｅｃｔＲｅｆＬａｙｅｒｓ［ｃｕｒｒＬａｙｅｒＩｄ］が０に等しい」という条件の追加により、制限が独立レイヤのみに適用されることになった。この変更に対するモチベーションは、（同じアクセスユニット中の参照レイヤのピクチャからの動きベクトルを使用して）エンハンスメントレイヤピクチャを復号するためのＴＭＶＰを可能にし、同時に、エラー耐性制約が適用されることを示すことを可能にすることであった。しかしながら、エンハンスメントレイヤピクチャは、１に等しいｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇを有し、同時に、１に等しいｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇをもつＴＭＶＰ制約ＳＥＩメッセージを有することができるので、モチベーションは、条件の追加なしに満たされ得る。条件が削除されたとき、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇのセマンティクスは、ＨＥＶＣバージョン１（すなわち、上記で引用したＨＥＶＣ  ＷＤ）と整合した形ですべてのレイヤについて無矛盾であろう。
ｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇのセマンティクス
[00157]ＳＨＶＣおよびＭＶ−ＨＥＶＣの早期バージョンでは、ＴＭＶＰ制約ＳＥＩメッセージ中のｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇのセマンティクスは以下のように定義される。
【０１３７】
【表２】
0006672184.tif 000003
【０１３８】
表２−ＳＨＶＣおよびＭＶ−ＨＥＶＣの早期バージョンにおけるｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇのセマンティクス
[00158]図４に、ｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇの既存のセマンティクスに関する問題を示す。この例では、影が付けられたレイヤ１ピクチャは、１に等しいｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇをもつＴＭＶＰ制約ＳＥＩメッセージに関連付けられる。現在ピクチャに関連付けられたＴＭＶＰ制約ＳＥＩメッセージ中でシンタックス要素の値が１に等しいとき、現在ピクチャは、コロケートピクチャと同じレイヤからの、復号順序における以前のピクチャをＴＭＶＰのために使用することが可能である。また、同じレイヤからの、復号順序において現在ピクチャに続くピクチャは、ＴＭＶＰのためにコロケートピクチャとして現在ピクチャを使用することが可能である。したがって、ｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇを１に等しく設定することによって達成されると考えられるエラー耐性特徴は、間接的コロケート参照が可能であり、したがって、同じレイヤ中の、復号順序において現在ピクチャよりも前のピクチャに対してエラーが発生した場合、そのエラーが、同じレイヤ中の、復号順序において後のピクチャに伝搬することが可能であるので、達成されないことがある。
マルチレイヤコンテキストにおける動きベクトル予測エラー耐性
[00159]ＴＭＶＰ制約ＳＥＩメッセージは、エラー（たとえば、ピクチャ損失）があった場合、不正確な動きベクトル予測の伝搬を阻止することができるので、ＴＭＶＰ制約ＳＥＩメッセージはエラー耐性（ＥＲ：error resilience）特徴を与える。しかしながら、ＳＥＩメッセージによって与えられるＥＲ特徴は、すべてのレイヤのためのものではなく、ＳＥＩメッセージを含んでいるレイヤのみのためのものである。たとえば、ビットストリームが３つのレイヤを有し、ＴＭＶＰ制約ＳＥＩメッセージがレイヤ０およびレイヤ１のみのためにのみ存在する場合、正確な動きベクトル予測は、復号順序において、ＳＥＩメッセージを含んでいるアクセスユニットに続く、レイヤ０またはレイヤ１に関するピクチャに対してのみ保証され、ＳＥＩメッセージを含んでいるアクセスユニットに続くレイヤ２中のピクチャに対しては保証されないことがある。図５に、そのような例を示す。アクセスユニット（ＡＵ）Ｅ内のレイヤ０およびレイヤ１中にのみ含まれているＴＭＰＶ制約ＳＥＩメッセージは、ＳＥＩメッセージのｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇの値が１に等しいとき、ＡＵ  Ｆ、ＡＵ  Ｇ、およびＡＵ  Ｈなど中のすべてのピクチャが、ＡＵ  Ｄ、ＡＵ  Ｃ、ＡＵ  Ｂ、および以前のＡＵのレイヤ０およびレイヤ１からのピクチャを使用することができないことを意味する。これは、ＡＵ  Ｅの前のＡＵのレイヤ０またはレイヤ１中のピクチャのうちの１つにエラーがあった場合、ＡＵ  Ｆ、ＡＵ  Ｇ、ＡＵ  Ｈなどのレイヤ０およびレイヤ１中のピクチャのための動きベクトル予測が正確であることのみを保証することになる。ＡＵ  Ｆのレイヤ２ピクチャは、たとえば、ＴＭＶＰ参照のためにＡＵ  Ｄのレイヤ２ピクチャを使用することができ、ＡＵ  Ｄのレイヤ２ピクチャは、ＴＭＶＰ参照のためにＡＵ  Ｄのレイヤ１ピクチャを使用することができる。これは、この例ではレイヤ２に対してＥＲが保証されないような、ＴＭＶＰのための間接的参照を生じる。
ｓｅｐａｒａｔｅ＿ｃｏｌｏｒ＿ｐｌａｎｅ＿ｆｌａｇの更新
[00160]ＳＨＶＣおよびＭＶ−ＨＥＶＣの早期バージョンでは、ＶＰＳ中の表現フォーマットシンタックス構造は、ピクチャ幅、ピクチャ高さ、ルーマおよびクロマ成分のビット深度、ならびにクロマフォーマット、および色平面がどのようにコーディングされるかを含む、コード化ピクチャのいくつかの本質的プロパティを記述するために必要とされるパラメータをレイヤごとに指定する。０よりも大きいｎｕｈ＿ｌａｙｅｒ＿ｉｄを有するＳＰＳでは、表現フォーマットパラメータは、ｕｐｄａｔｅ＿ｒｅｐ＿ｆｏｒｍａｔ＿ｆｌａｇ指示を使用して更新されることを可能にされる。０よりも大きいｎｕｈ＿ｌａｙｅｒ＿ｉｄを有し、０よりも大きいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつＳＰＳを参照するレイヤの場合、ＳＰＳが、１に等しいｕｐｄａｔｅ＿ｒｅｐ＿ｆｏｒｍａｔ＿ｆｌａｇを有するとき、更新された表現フォーマットパラメータは、そのレイヤに対応するＶＰＳ中の表現フォーマットパラメータ中でシグナリングされたものよりも小さくなるように制限される。これらのパラメータに関する推論規則および制約を以下に与え、ここで、イタリック体の段落は議論の主題に関係する。
【０１３９】
【表３−１】
0006672184.tif 000004
【０１４０】
【表３−２】
0006672184.tif 000005
【０１４１】
表３−ＳＨＶＣおよびＭＶ−ＨＥＶＣの早期バージョンにおいて表現フォーマットを更新すること
[00161]上記のイタリック体の制約中に含まれるシンタックス要素（ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃ、ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇ、ｐｉｃ＿ｗｉｄｔｈ＿ｉｎ＿ｌｕｍａ＿ｓａｍｐｌｅｓ、ｐｉｃ＿ｈｅｉｇｈｔ＿ｉｎ＿ｌｕｍａ＿ｓａｍｐｌｅｓ、ｂｉｔ＿ｄｅｐｔｈ＿ｌｕｍａ＿ｍｉｎｕｓ８、およびｂｉｔ＿ｄｅｐｔｈ＿ｃｈｒｏｍａ＿ｍｉｎｕｓ８）のうち、ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇを除くすべてのシンタックス要素は、シンタックス要素の値との直線関係を有するパラメータ／変数を指定する。しかしながら、ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇはそのような関係を有しない。それは、ＳＰＳを参照するピクチャの異なる色平面が一緒にコーディングされるのか、別々にコーディングされるのかを記述する。ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇのセマンティクスを以下に与える。
【０１４２】
【表４】
0006672184.tif 000006
【０１４３】
表４−ＳＨＶＣおよびＭＶ−ＨＥＶＣの早期バージョンにおけるｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇのセマンティクス
[00162]ＳＰＳの表現フォーマットパラメータが更新され、更新された表現フォーマットパラメータのｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇの値が、（上記の制約により）ＶＰＳ中の対応する値小さいかまたはそれに等しくなるように制限されるとき、以下の使用事例が可能にされる。特定のレイヤのピクチャの色平面が別々にコーディングされるようにＶＰＳ中で指定されているが、表現フォーマットパラメータを更新する特定のＳＰＳを参照する同じレイヤのピクチャについて、一緒にコーディングされた色平面を有することになることが指定される。色平面が、同じビットストリーム内でレイヤについて別様に（一緒におよび／または独立した）コーディングされる使用事例は一般的ではないことがある。色平面が、同じビットストリーム内のレイヤについて別様に（一緒におよび／または独立した）コーディングされる、そのような使用事例が存在する場合、以下の事例がなぜ可能にされないかは不明瞭である。レイヤのピクチャの色平面が一緒にコーディングされるようにＶＰＳ中で指定されているが、更新されたＳＰＳは、更新されたＳＰＳを参照するピクチャが、別々にコーディングされた色平面を有することになることを指定する。
【０１４４】
[00163]表現フォーマットパラメータの更新に対してイタリック体の制限を課することのモチベーションは、ＶＰＳによって必要とされると示されたリソース／能力が、更新されたＳＰＳによって超えられないことを保証することであった。しかしながら、ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇのいずれの値（０または１）も、シグナリングまたは処理されるべきいかなる追加のデータも示さず、したがって、ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇは、この制限のために考慮される必要がない。
マルチレイヤコーデックにおけるＴＭＶＰ指示および表現フォーマット更新
[00164]マルチレイヤコーデックにおけるＴＭＶＰの使用の指示のための既存の手法に関する上記で説明した問題を克服するために、本開示では、改善について以下で説明する。本開示では、以下で説明する技法および手法は、単独でまたは任意の組合せで使用され得る。
【０１４５】
・  現在ピクチャのｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇとＴｅｍｐｏｒａｌＩｄの両方の値が０に等しいとき、復号順序において現在ピクチャに先行するいかなるピクチャからの時間動きベクトルも、復号順序において現在ピクチャに後続するいかなるコード化ピクチャの復号の際にも使用されないように、復号順序において現在ピクチャに後続し、現在ピクチャと同じレイヤ中にあるすべてのコード化ピクチャのためのシンタックス要素が制約され得るように、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇのセマンティクスにおける制約を拡張すること。
【０１４６】
−  この制約は、いかなるレイヤに属するピクチャにも適用され得る。
【０１４７】
−  この制約は、デコーダが、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇとＴｅｍｐｏｒａｌＩｄの両方の値が０に等しいピクチャを受信したとき、デコーダが動きベクトルストレージを空にすることを可能にし得る。
【０１４８】
・  ＴＭＶＰ制約ＳＥＩメッセージが存在し、現在ピクチャに関連付けられ、ｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇの値が１に等しいとき、現在ピクチャも、ＴＭＶＰのためのコロケートピクチャとして、復号順序においてそれに先行する同じレイヤ中のピクチャを使用することを可能にされないような、ＴＭＶＰ制約ＳＥＩメッセージ中のｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇのセマンティクスの変更。
【０１４９】
−  １つの例示的な手法では、ＴＭＶＰ制約ＳＥＩメッセージが存在し、現在ピクチャに関連付けられ、ｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇの値が１に等しく、現在ピクチャのｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇの値が１に等しいとき、０に等しいｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇを有する現在レイヤの参照レイヤからのピクチャのみがＴＭＶＰのためのコロケートピクチャとして使用され得る。
【０１５０】
−  別の例示的な手法では、ＴＭＶＰ制約ＳＥＩメッセージが存在し、現在ピクチャに関連付けられ、ｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇの値が１に等しく、現在ピクチャのｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇの値が１に等しいとき、現在レイヤの参照レイヤからのすべてのピクチャが、０に等しく設定されたｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇを有し得る。
【０１５１】
・  １に等しいｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇの値をもつＴＭＶＰ制約ＳＥＩメッセージが特定のｌａｙｅｒＡについて存在するとき、ｌａｙｅｒＡを直接または間接的に参照するすべてのレイヤも、１に等しいｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇの値をもつＴＭＶＰ制約ＳＥＩメッセージを含んでいることがあるような、ＴＭＶＰ制約ＳＥＩメッセージへの制約の追加。
【０１５２】
−  １つの例示的な手法では、ＴＭＶＰ制約ＳＥＩメッセージが、すべてのレイヤに適用されるように定義される。
【０１５３】
−  別の例示的な手法では、１に等しいｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇとき、ｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇは、ａｓｓｏｃｉａｔｅｄＬａｙｅｒＩｄＬｉｓｔ中のいずれかの値に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄを有し、復号順序において現在ピクチャを含んでいるアクセスユニットに先行するいかなるピクチャからの時間動きベクトルも、復号順序において現在ピクチャを含んでいるアクセスユニット内にあるかまたはそれに後続するいかなるコード化ピクチャの復号の際にも直接または間接的に使用されないように、復号順序において現在ピクチャを含んでいるアクセスユニット内にあるかまたはそれに後続するすべてのコード化ピクチャのためのシンタックス要素が制約されることを示し得る。０に等しいｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇは、ビットストリームが、１に等しいｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇによって示される制約を満たしても満たさなくてもよいことを示す。
【０１５４】
・  表現フォーマットを更新するとき、ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇの値の検査が必要とされないような、表現フォーマットパラメータの更新に対する制限からのｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇの削除。これにより、ビットストリームは、ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇに値を０から１に、およびその逆に、フレキシブルに変更させることが可能になる。
【０１５５】
−  １つの例示的な手法では、ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇの値がＶＰＳ中のすべてのｒｅｐ＿ｆｏｒｍａｔ（）シンタックス構造中で同じになるように、制約が追加される。
【０１５６】
−  別の例示的な手法では、シンタックス要素ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇは、ＶＰＳ中で多くとも１回、たとえば、第１のｒｅｐ＿ｆｏｒｍａｔ（）構造中でのみシグナリングされ、ＶＰＳ中の残りのシグナリングされたｒｅｐ＿ｆｏｒｍａｔ（）は、シンタックス要素を有さず、第１の構造から値を推論するものとする。
例示的な実施形態
[00165]上述の技法は、以下の例に示されているように実装され得る。例は、ＳＨＶＣおよびＭＶ−ＨＥＶＣ（たとえば、ＳＨＶＣ  ＷＤ６およびＭＶ−ＨＥＶＣ  ＷＤ８）の以前のバージョンのコンテキストにおいて与えられる。ＳＨＶＣおよびＭＶ−ＨＥＶＣの以前のバージョンへの追加はイタリック体で示され、ＳＨＶＣおよびＭＶ−ＨＥＶＣの以前のバージョンからの削除は取消し線で示されている。
例示的な実施形態１
[00166]この実施形態は、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇに対する制限を変更する。たとえば、ｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇ＝０と、０に等しい時間ＩＤとを有するピクチャに制限が適用されるという条件は、ベースレイヤのみではなく、すべてのレイヤに適用可能である。
【０１５７】
【表５】
0006672184.tif 000007
【０１５８】
表５−例示的な実施形態１
例示的な実施形態２
[00167]この実施形態は、ｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇのセマンティクスを変更する。たとえば、変更は、ｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇが、フラグの値が１に等しく設定されたとき、現在ピクチャのＴＭＶＰのために、復号順序において現在ピクチャに先行するピクチャを使用することを可能にしないように、制約を追加する。
【０１５９】
【表６】
0006672184.tif 000008
【０１６０】
表６−例示的な実施形態２
例示的な実施形態３
[00168]この実施形態は、表現フォーマットを更新することについての制限を変更する。たとえば、ＳＰＳ中のフラグまたはシンタックス要素の値が、ＶＰＳ中の対応するフラグまたはシンタックス要素の値よりも小さくなるかまたはそれに等しくなるべきであるという制限は、以下のようにｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇに適用されない。
【０１６１】
【表７】
0006672184.tif 000009
【０１６２】
表７−例示的な実施形態３
時間動きベクトル予測のための先行ピクチャを制限する方法
[00169]図６は、本開示の１つまたは複数の態様による、ビデオ情報をコーディングする方法を示すフローチャートである。本方法は、ＴＭＶＰのための先行ピクチャの使用を制限することに関する。プロセス６００は、実施形態によっては、エンコーダ（たとえば、図２Ａ、図２Ｂなどに示されているエンコーダ）、デコーダ（たとえば、図３Ａ、図３Ｂなどに示されているデコーダ）、または任意の他の構成要素によって実施され得る。プロセス６００のブロックについて図３Ｂ中のデコーダ３３に関して説明するが、プロセス６００は、上述のように、エンコーダなど、他の構成要素によって実施され得る。デコーダ３３のレイヤ１ビデオデコーダ３０Ｂおよび／またはデコーダ３３のレイヤ０デコーダ３０Ａが、実施形態によっては、プロセス６００を実施し得る。図６に関して説明するすべての実施形態は、別々に、または互いと組み合わせて実装され得る。プロセス６００に関係するいくつかの詳細が、たとえば、図４〜図５に関して上記で説明されている。
【０１６３】
[00170]プロセス６００はブロック６０１において開始する。デコーダ３３は、複数のレイヤに関連付けられたビデオ情報を記憶するためのメモリ（たとえば、復号ピクチャバッファ１６０）を含むことができる。デコーダ３３は、コーディングされるべき現在ＡＵに関連付けられた情報を取得し得る。現在ＡＵは、複数のレイヤからのピクチャを含んでいることができる。複数のレイヤは、コーディングされるべき現在レイヤを含むことができ、現在レイヤは、コーディングされるべき現在ピクチャを含むことができる。
【０１６４】
[00171]ブロック６０２において、デコーダ３３は、復号順序において現在レイヤ中の現在ピクチャに先行する先行ピクチャが、復号順序において現在レイヤ中の現在ピクチャに後続する後続ピクチャのＴＭＶＰのために使用されるかどうかを示す第１のフラグの値を決定する。第１のフラグは現在ピクチャに関連付けられ得る。一実施形態では、第１のフラグはＳＥＩメッセージ中に含まれる。第１のフラグは、第１のフラグの値が１に等しいとき、現在レイヤ中の先行ピクチャが現在レイヤ中の後続ピクチャのＴＭＶＰのために使用されるべきでないことを示し得る。第１のフラグは、第１のフラグの値が０に等しいとき、現在レイヤ中の先行ピクチャが現在レイヤ中の現在ピクチャおよび／または後続ピクチャのＴＭＶＰのために使用され得ることを示し得る。一実施形態では、第１のフラグはｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇを備える。先行ピクチャは、復号順序において現在ピクチャに先行することができ、後続ピクチャは、復号順序において現在ピクチャに後続することができる。いくつかの実施形態では、現在ピクチャはＩＤＲピクチャを備える。
【０１６５】
[00172]ブロック６０３において、デコーダ３３は、第１のフラグの値が、現在レイヤ中の先行ピクチャが現在レイヤ中の後続ピクチャのＴＭＶＰのために使用されるべきでないことを示すと決定したことに応答して、現在ピクチャのＴＭＶＰのための参照ピクチャとして現在レイヤ中の先行ピクチャを使用することを控える。
【０１６６】
[00173]いくつかの実施形態では、デコーダ３３は、ＴＶＭＰが有効にされるかどうかを示す第２のフラグにアクセスすることを控える。第２のフラグは、現在ピクチャを含むスライスのスライスヘッダ中に含まれ得、第２のフラグは現在ピクチャに関連付けられ得る。たとえば、デコーダ３３は、第１のフラグの値が１に等しいとき、ＴＶＭＰが有効にされるかどうかを示す第２のフラグにアクセスすることを控える。一実施形態では、デコーダ３３は、第１のフラグの値が、現在レイヤ中の先行ピクチャが現在レイヤ中の後続ピクチャのＴＭＶＰのために使用されるべきでないことを示すと決定したことに応答して、第２のフラグにアクセスすることを控える。別の実施形態では、第２のフラグはｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇを備える。いくつかの実施形態では、現在ＡＵ中の複数のレイヤのすべてについて、第２のフラグが、ＴＭＶＰが有効にされないことを示すとき、および現在ピクチャがベース時間サブレイヤ中にある（たとえば、現在ピクチャが、０に等しい時間ＩＤを有する）とき、先行ピクチャは現在ピクチャのＴＭＶＰのために使用されるべきでない。他の実施形態では、現在ＡＵ中の複数のレイヤのすべてについて、第２のフラグが、ＴＭＶＰが現在ピクチャのために有効にされないことを示すとき、および現在ピクチャがベース時間サブレイヤ中にあるとき、先行ピクチャは現在ピクチャおよび後続ピクチャのＴＭＶＰのために使用されるべきでない。第１のフラグは、第２のフラグよりも高い優先順位を有し得る。一実施形態では、デコーダ３３はビデオ情報を符号化する。別の実施形態では、デコーダ３３はビデオ情報を復号する。
【０１６７】
[00174]いくつかの実施形態では、デコーダ３３は、少なくとも１つの無線アクセス技術（ＲＡＴ）に従って、複数のレイヤに関連付けられたビデオ情報を備えるビデオデータを受信するように構成された受信機と、少なくとも１つのＲＡＴに従って動作するように構成された送信機とをさらに備える、ワイヤレス通信デバイスである。ワイヤレス通信デバイスはセルラー電話であり得、受信されたビデオデータは、受信機によって受信され得、セルラー通信規格に従って変調され得る。
【０１６８】
[00175]いくつかの実施形態では、プロセス６００は、少なくとも１つの無線アクセス技術（ＲＡＴ）に従って、複数のレイヤに関連付けられたビデオ情報を備えるビデオデータを受信するように構成された受信機と、少なくとも１つのＲＡＴに従って動作するように構成された送信機と、ビデオデータを記憶するように構成されたメモリと、メモリに記憶されたビデオデータを処理するための命令を実行するように構成されたプロセッサとを備えるワイヤレス通信デバイス上で実行可能であり得る。ワイヤレス通信デバイスはセルラー電話であり得、受信されたビデオデータは、受信機によって受信され得、セルラー通信規格に従って変調され得る。
【０１６９】
[00176]プロセス６００はブロック６０４において終了する。ブロックは、実施形態によっては、プロセス６００において追加および／または省略され得、プロセス６００のブロックは、実施形態によっては、異なる順序で実施され得る。
【０１７０】
[00177]本開示におけるＴＭＶＰのための先行ピクチャの使用を制限することに関して説明したいかなる特徴および／または実施形態も、別々に、またはそれらの任意の組合せで実装され得る。たとえば、図１〜図６に関して説明したいかなる特徴および／または実施形態、ならびに本開示の他の部分も、図６に関して説明した任意の特徴および／または実施形態との任意の組合せで実装され得、その逆も同様である。
表現フォーマットを更新する方法
[00178]図７は、本開示の１つまたは複数の態様による、ビデオ情報をコーディングする方法を示すフローチャートである。本方法は、表現フォーマットを更新することに関する。プロセス７００は、実施形態によっては、エンコーダ（たとえば、図２Ａ、図２Ｂなどに示されているエンコーダ）、デコーダ（たとえば、図３Ａ、図３Ｂなどに示されているデコーダ）、または任意の他の構成要素によって実施され得る。プロセス７００のブロックについて図２Ｂ中のエンコーダ２３に関して説明するが、プロセス７００は、上述のように、デコーダなど、他の構成要素によって実施され得る。エンコーダ２３のレイヤ１ビデオエンコーダ２０Ｂおよび／またはエンコーダ２３のレイヤ０エンコーダ２０Ａが、実施形態によっては、プロセス７００を実施し得る。図７に関して説明するすべての実施形態は、別々に、または互いと組み合わせて実装され得る。プロセス７００に関係するいくつかの詳細が、たとえば、図４〜図６に関して上記で説明されている。
【０１７１】
[00179]プロセス７００はブロック７０１において開始する。エンコーダ２３は、複数のレイヤに関連付けられたビデオ情報を記憶するためのメモリ（たとえば、復号ピクチャバッファ１６０）を含むことができる。
【０１７２】
[00180]ブロック７０２において、エンコーダ２３は、１つまたは複数の表現フォーマットシンタックス構造を含むＶＰＳを受信する。ＶＰＳは、複数のレイヤのうちの第１のレイヤに関連付けられた１つまたは複数の表現フォーマットシンタックス構造のうちの第１の表現フォーマットシンタックス構造を示し得る。
【０１７３】
[00181]ブロック７０３において、エンコーダ２３は、（１）ＶＰＳ中の１つまたは複数の表現フォーマットシンタックス構造のうちの第２の表現フォーマットシンタックス構造への参照、または（２）第３の表現フォーマットシンタックス構造を含むＳＰＳを受信する。第３の表現フォーマットシンタックス構造は、ＶＰＳ中の１つまたは複数の表現フォーマットシンタックス構造中に含まれないことがある。各表現フォーマットシンタックス構造は、レイヤのクロマフォーマットの色成分を別々にコーディングすべきかどうかを示す第１のフラグを含み得る。
【０１７４】
[00182]ブロック７０４において、エンコーダ２３は、第１の表現フォーマットシンタックス構造中の第１のフラグの値を参照することなしに、レイヤのクロマフォーマットの色成分を別々にコーディングすべきかどうかを示す第１の変数の値を更新し、第１の変数は第１のレイヤに関連付けられる。エンコーダ２３は、第１の変数の値に基づいて、ＶＰＳに関連付けられたビデオデータをコーディングし得る。
【０１７５】
[00183]いくつかの実施形態では、ＳＰＳは第２の表現フォーマットシンタックス構造への参照を含み、エンコーダ２３は、第１の変数の値を、第２の表現フォーマットシンタックス構造中の第１のフラグの値に等しくなるように更新する。各表現フォーマットシンタックス構造は、第１のフラグに加えて１つまたは複数の第２のフラグを含むことができ、エンコーダ２３は、第２の表現フォーマットシンタックス構造中の１つまたは複数の第２のフラグの値が、第１の表現フォーマットシンタックス構造中の１つまたは複数の第２のフラグの値よりも小さいかまたはそれに等しいとき、１つまたは複数の第２のフラグに対応する１つまたは複数の第２の変数の値を、第２の表現フォーマットシンタックス構造中の１つまたは複数の第２のフラグの値に更新することができる。１つまたは複数の第２の変数は第１のレイヤに関連付けられ得る。
【０１７６】
[00184]いくつかの実施形態では、ＳＰＳは第３の表現フォーマットシンタックス構造を含み、エンコーダ２３は、第１の変数の値を、第３の表現フォーマットシンタックス構造中の第１のフラグの値に等しくなるように更新する。各表現フォーマットシンタックス構造は、第１のフラグに加えて１つまたは複数の第２のフラグを含むことができ、エンコーダ２３は、第３の表現フォーマットシンタックス構造中の１つまたは複数の第２のフラグの値が、第１の表現フォーマットシンタックス構造中の１つまたは複数の第２のフラグの値よりも小さいかまたはそれに等しいとき、１つまたは複数の第２のフラグに対応する１つまたは複数の第２の変数の値を、第３の表現フォーマットシンタックス構造中の１つまたは複数の第２のフラグの値に更新する。１つまたは複数の第２の変数は第１のレイヤに関連付けられ得る。
【０１７７】
[00185]ＶＰＳは、１つまたは複数の表現フォーマットシンタックス構造のうちのいずれが複数のレイヤのそれぞれのレイヤに関連付けられるかのマッピングを含み得る。第１のフラグは、第１のフラグの値が１に等しいとき、レイヤのクロマフォーマットの色成分が別々にコーディングされるべきであることを示し得、第１の変数は、第１の変数の値が１に等しいとき、レイヤのクロマフォーマットの色成分が別々にコーディングされるべきであることを示し得る。第１のフラグは、第１のフラグの値が０に等しいとき、レイヤのクロマフォーマットの色成分が別々にコーディングされるべきでないことを示し得、第１の変数は、第１の変数の値が０に等しいとき、レイヤのクロマフォーマットの色成分が別々にコーディングされるべきでないことを示し得る。一実施形態では、第１のフラグはｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｖｐｓ＿ｆｌａｇを備え、第１の変数はｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇを備える。別の実施形態では、第２の表現フォーマットシンタックス構造への参照はｓｐｓ＿ｒｅｐ＿ｆｏｒｍａｔ＿ｉｄｘを備える。ＶＰＳは複数のレイヤのすべてに適用され得、ＳＰＳは複数のレイヤの中の特定のレイヤに適用され得る。一実施形態では、エンコーダ２３はビデオ情報を符号化する。
【０１７８】
[00186]いくつかの実施形態では、エンコーダ２３は、少なくとも１つの無線アクセス技術（ＲＡＴ）に従ってビデオデータを送信するように構成された送信機と、少なくとも１つのＲＡＴに従って動作するように構成された受信機とをさらに備える、ワイヤレス通信デバイスである。ワイヤレス通信デバイスはセルラー電話であり得、送信されたビデオデータは、送信機によって送信され得、セルラー通信規格に従って変調され得る。
【０１７９】
[00187]いくつかの実施形態では、プロセス７００は、少なくとも１つの無線アクセス技術（ＲＡＴ）に従ってビデオデータを送信するように構成された送信機と、少なくとも１つのＲＡＴに従って動作するように構成された受信機と、ビデオデータを記憶するように構成されたメモリと、メモリに記憶されたビデオデータを処理するための命令を実行するように構成されたプロセッサとを備えるワイヤレス通信デバイス上で実行可能であり得る。ワイヤレス通信デバイスはセルラー電話であり得、送信されたビデオデータは、送信機によって送信され得、セルラー通信規格に従って変調され得る。
【０１８０】
[00188]プロセス７００はブロック７０４において終了する。ブロックは、実施形態によっては、プロセス７００において追加および／または省略され得、プロセス７００のブロックは、実施形態によっては、異なる順序で実施され得る。
【０１８１】
[00189]本開示における表現フォーマットを更新することに関して説明したいかなる特徴および／または実施形態も、別々に、またはそれらの任意の組合せで実装され得る。たとえば、図１〜図７に関して説明したいかなる特徴および／または実施形態、ならびに本開示の他の部分も、図７に関して説明した任意の特徴および／または実施形態との任意の組合せで実装され得、その逆も同様である。
【０１８２】
[00190]本明細書で開示する情報および信号は、多種多様な技術および技法のいずれかを使用して表され得る。たとえば、上記の説明全体にわたって言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁界または磁性粒子、光場または光学粒子、あるいはそれらの任意の組合せによって表され得る。
【０１８３】
[00191]本明細書で開示する実施形態に関して説明した様々な例示的な論理ブロック、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、またはその両方の組合せとして実装され得る。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップについて、上記では概してそれらの機能に関して説明した。そのような機能がハードウェアとして実装されるか、ソフトウェアとして実装されるかは、特定の適用例および全体的なシステムに課される設計制約に依存する。当業者は、説明した機能を特定の適用例ごとに様々な方法で実装し得るが、そのような実装の決定は、本発明の範囲からの逸脱を生じるものと解釈されるべきではない。
【０１８４】
[00192]本明細書で説明した技法は、ハードウェア（たとえば、コンピュータハードウェア）、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。そのような技法は、汎用コンピュータ、ワイヤレス通信デバイスハンドセット、またはワイヤレス通信デバイスハンドセットおよび他のデバイスにおける適用例を含む複数の用途を有する集積回路デバイスなど、様々なデバイスのいずれかにおいて実装され得る。モジュールまたは構成要素として説明した特徴は、集積論理デバイスに一緒に、または個別であるが相互運用可能な論理デバイスとして別々に実装され得る。ソフトウェアで実装された場合、本技法は、実行されたとき、上記で説明した方法のうちの１つまたは複数を実施する命令を含むプログラムコードを備えるコンピュータ可読媒体（たとえば、コンピュータ可読データ記憶媒体）によって、少なくとも部分的に実現され得る。コンピュータ可読媒体は非一時的コンピュータ可読媒体であり得る。コンピュータ可読媒体は、パッケージング材料を含むことがあるコンピュータプログラム製品の一部を形成し得る。コンピュータ可読媒体は、シンクロナスダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）などのランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）、電気消去可能プログラマブル読取り専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュメモリ、磁気または光学データ記憶媒体など、メモリまたはデータ記憶媒体を備え得る。本技法は、追加または代替として、伝搬信号または電波など、命令またはデータ構造の形態でプログラムコードを搬送または伝達し、コンピュータによってアクセスされ、読み取られ、および／または実行され得るコンピュータ可読通信媒体によって、少なくとも部分的に実現され得る。
【０１８５】
[00193]プログラムコードは、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルロジックアレイ（ＦＰＧＡ）、または他の等価の集積回路またはディスクリート論理回路など、１つまたは複数のプロセッサを含み得るプロセッサによって実行され得る。そのようなプロセッサは、本開示で説明する技法のいずれかを実施するように構成され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、ＤＳＰとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、ＤＳＰコアと連携する１つまたは複数のマイクロプロセッサ、あるいは任意の他のそのような構成として実装され得る。したがって、本明細書で使用する「プロセッサ」という用語は、上記の構造、上記の構造の任意の組合せ、または本明細書で説明した技法の実装に好適な他の構造または装置のいずれかを指すことがある。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のソフトウェアモジュールまたはハードウェアモジュール内に提供され得、あるいは複合ビデオエンコーダ／デコーダ（コーデック）に組み込まれ得る。また、本技法は、１つまたは複数の回路または論理要素で十分に実装され得る。
【０１８６】
[00194]本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置で実装され得る。本開示では、開示した技法を実施するように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットは、必ずしも異なるハードウェアユニットによる実現を必要とするとは限らない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェアおよび／またはファームウェアとともに、上記で説明した１つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作可能なハードウェアユニットの集合によって与えられ得る。
【０１８７】
[00195]本開示の様々な実施形態について説明した。これらおよび他の実施形態は以下の特許請求の範囲内に入る。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
ビデオ情報をコーディングするための装置であって、
複数のレイヤに関連付けられたビデオ情報を記憶するためのメモリと、
前記メモリに動作可能に結合され、
コーディングされるべき現在アクセスユニット（ＡＵ）に関連付けられた情報を取得することと、前記現在ＡＵが複数のレイヤからのピクチャを含んでおり、前記複数のレイヤが、コーディングされるべき現在レイヤを含み、前記現在レイヤが、コーディングされるべき現在ピクチャを含む、
復号順序において前記現在レイヤ中の前記現在ピクチャに先行する先行ピクチャが、復号順序において前記現在レイヤ中の前記現在ピクチャに後続する後続ピクチャの時間動きベクトル予測（ＴＭＶＰ）のために使用されるかどうかを示す第１のフラグの値を決定することと、前記第１のフラグが前記現在ピクチャに関連付けられる、
前記第１のフラグの前記値が、前記現在レイヤ中の前記先行ピクチャが前記現在レイヤ中の前記後続ピクチャのＴＭＶＰのために使用されるべきでないことを示すと決定したことに応答して、前記現在ピクチャのＴＭＶＰのための参照ピクチャとして前記現在レイヤ中の前記先行ピクチャを使用することを控えることと
を行うように構成されたプロセッサと
を備える、装置。
［Ｃ２］
前記第１のフラグが補足エンハンスメント情報（ＳＥＩ）メッセージ中に含まれる、Ｃ１に記載の装置。
［Ｃ３］
前記第１のフラグは、前記第１のフラグの前記値が１に等しいとき、前記現在レイヤ中の前記先行ピクチャが前記現在レイヤ中の前記後続ピクチャのＴＭＶＰのために使用されるべきでないことを示す、Ｃ１に記載の装置。
［Ｃ４］
前記第１のフラグは、前記第１のフラグの前記値が０に等しいとき、前記現在レイヤ中の前記先行ピクチャが前記現在レイヤ中の現在ピクチャおよび前記後続ピクチャのＴＭＶＰのために使用され得ることを示す、Ｃ１に記載の装置。
［Ｃ５］
前記第１のフラグがｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇを備える、Ｃ１に記載の装置。
［Ｃ６］
前記プロセッサは、前記第１のフラグの前記値が１に等しいとき、ＴＶＭＰが有効にされるかどうかを示す第２のフラグにアクセスすることを控えるようにさらに構成され、前記第２のフラグが、前記現在ピクチャを含むスライスのスライスヘッダ中に含まれ、前記第２のフラグが、前記現在ピクチャに関連付けられる、Ｃ１に記載の装置。
［Ｃ７］
前記プロセッサは、前記第１のフラグの前記値が、前記現在レイヤ中の前記先行ピクチャが前記現在レイヤ中の前記後続ピクチャのＴＭＶＰのために使用されるべきでないことを示すと決定したことに応答して、前記第２のフラグにアクセスすることを控えるように構成された、Ｃ６に記載の装置。
［Ｃ８］
前記第２のフラグがｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇを備える、Ｃ６に記載の装置。
［Ｃ９］
前記現在ＡＵ中の前記複数のレイヤのすべてについて、前記第２のフラグが、ＴＭＶＰが前記現在ピクチャのために有効にされないことを示すとき、および前記現在ピクチャがベース時間サブレイヤ中にあるとき、前記先行ピクチャが前記現在ピクチャおよび後続ピクチャのＴＭＶＰのために使用されるべきでない、Ｃ６に記載の装置。
［Ｃ１０］
前記第１のフラグが、前記第２のフラグよりも高い優先順位を有する、Ｃ６に記載の装置。
［Ｃ１１］
前記現在ピクチャが瞬時復号リフレッシュ（ＩＤＲ）ピクチャを備える、Ｃ１に記載の装置。
［Ｃ１２］
前記プロセッサが、前記ビデオ情報を符号化するようにさらに構成された、Ｃ１に記載の装置。
［Ｃ１３］
前記プロセッサが、前記ビデオ情報を復号するようにさらに構成された、Ｃ１に記載の装置。
［Ｃ１４］
前記装置が、デスクトップコンピュータ、ノートブックコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、セットトップボックス、電話ハンドセット、スマートフォン、ワイヤレス通信デバイス、スマートパッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲーミングコンソール、またはビデオストリーミングデバイスのうちの１つまたは複数を備える、Ｃ１に記載の装置。
［Ｃ１５］
ビデオ情報をコーディングする方法であって、
複数のレイヤに関連付けられたビデオ情報を記憶することと、
コーディングされるべき現在アクセスユニット（ＡＵ）に関連付けられた情報を取得することと、前記現在ＡＵが複数のレイヤからのピクチャを含んでおり、前記複数のレイヤが、コーディングされるべき現在レイヤを含み、前記現在レイヤが、コーディングされるべき現在ピクチャを含む、
復号順序において前記現在レイヤ中の前記現在ピクチャに先行する先行ピクチャが、復号順序において前記現在レイヤ中の前記現在ピクチャに後続する後続ピクチャの時間動きベクトル予測（ＴＭＶＰ）のために使用されるかどうかを示す第１のフラグの値を決定することと、前記第１のフラグが前記現在ピクチャに関連付けられる、
前記第１のフラグの前記値が、前記現在レイヤ中の前記先行ピクチャが前記現在レイヤ中の前記後続ピクチャのＴＭＶＰのために使用されるべきでないことを示すと決定したことに応答して、前記現在ピクチャのＴＭＶＰのための参照ピクチャとして前記現在レイヤ中の前記先行ピクチャを使用することを控えることと
を備える、方法。
［Ｃ１６］
前記第１のフラグが補足エンハンスメント情報（ＳＥＩ）メッセージ中に含まれる、Ｃ１５に記載の方法。
［Ｃ１７］
前記第１のフラグは、前記第１のフラグの前記値が１に等しいとき、前記現在レイヤ中の前記先行ピクチャが前記現在レイヤ中の前記後続ピクチャのＴＭＶＰのために使用されるべきでないことを示す、Ｃ１５に記載の方法。
［Ｃ１８］
前記第１のフラグは、前記第１のフラグの前記値が０に等しいとき、前記現在レイヤ中の前記先行ピクチャが前記現在レイヤ中の現在ピクチャおよび前記後続ピクチャのＴＭＶＰのために使用され得ることを示す、Ｃ１５に記載の方法。
［Ｃ１９］
前記第１のフラグがｐｒｅｖ＿ｐｉｃｓ＿ｎｏｔ＿ｕｓｅｄ＿ｆｌａｇを備える、Ｃ１５に記載の方法。
［Ｃ２０］
前記第１のフラグの前記値が１に等しいとき、ＴＶＭＰが有効にされるかどうかを示す第２のフラグにアクセスすることを控えることをさらに備え、前記第２のフラグが、前記現在ピクチャを含むスライスのスライスヘッダ中に含まれ、前記第２のフラグが、前記現在ピクチャに関連付けられる、Ｃ１５に記載の方法。
［Ｃ２１］
前記第２のフラグにアクセスすることを前記控えることは、前記第１のフラグの前記値が、前記現在レイヤ中の前記先行ピクチャが前記現在レイヤ中の前記後続ピクチャのＴＭＶＰのために使用されるべきでないことを示すと決定したことに応答して実施される、Ｃ２０に記載の方法。
［Ｃ２２］
前記第２のフラグがｓｌｉｃｅ＿ｔｅｍｐｏｒａｌ＿ｍｖｐ＿ｅｎａｂｌｅｄ＿ｆｌａｇを備える、Ｃ２０に記載の方法。
［Ｃ２３］
前記現在ＡＵ中の前記複数のレイヤのすべてについて、前記第２のフラグが、ＴＭＶＰが前記現在ピクチャのために有効にされないことを示すとき、および前記現在ピクチャがベース時間サブレイヤ中にあるとき、前記先行ピクチャが前記現在ピクチャおよび後続ピクチャのＴＭＶＰのために使用されるべきでない、Ｃ２０に記載の方法。
［Ｃ２４］
前記第１のフラグが、前記第２のフラグよりも高い優先順位を有する、Ｃ２０に記載の方法。
［Ｃ２５］
前記現在ピクチャが瞬時復号リフレッシュ（ＩＤＲ）ピクチャを備える、Ｃ１５に記載の方法。
［Ｃ２６］
コンピュータハードウェアを備えるプロセッサ上で実行されたとき、
複数のレイヤに関連付けられたビデオ情報を記憶することと、
コーディングされるべき現在アクセスユニット（ＡＵ）に関連付けられた情報を取得することと、前記現在ＡＵが複数のレイヤからのピクチャを含んでおり、前記複数のレイヤが、コーディングされるべき現在レイヤを含み、前記現在レイヤが、コーディングされるべき現在ピクチャを含む、
復号順序において前記現在レイヤ中の前記現在ピクチャに先行する先行ピクチャが、復号順序において前記現在レイヤ中の前記現在ピクチャに後続する後続ピクチャの時間動きベクトル予測（ＴＭＶＰ）のために使用されるかどうかを示す第１のフラグの値を決定することと、前記第１のフラグが前記現在ピクチャに関連付けられる、
前記第１のフラグの前記値が、前記現在レイヤ中の前記先行ピクチャが前記現在レイヤ中の前記後続ピクチャのＴＭＶＰのために使用されるべきでないことを示すと決定したことに応答して、前記現在ピクチャのＴＭＶＰのための参照ピクチャとして前記現在レイヤ中の前記先行ピクチャを使用することを控えることと
を前記プロセッサに行わせる命令を備える非一時的コンピュータ可読媒体。
［Ｃ２７］
前記命令は、前記第１のフラグの前記値が１に等しいとき、ＴＶＭＰが有効にされるかどうかを示す第２のフラグにアクセスすることを控えることを前記プロセッサにさらに行わせ、前記第２のフラグが、前記現在ピクチャを含むスライスのスライスヘッダ中に含まれ、前記第２のフラグが、前記現在ピクチャに関連付けられる、Ｃ２６に記載のコンピュータ可読媒体。
［Ｃ２８］
ビデオ情報をコーディングするための装置であって、
複数のレイヤに関連付けられたビデオ情報を記憶するための手段と、
コーディングされるべき現在アクセスユニット（ＡＵ）に関連付けられた情報を取得するための手段と、前記現在ＡＵが複数のレイヤからのピクチャを含んでおり、前記複数のレイヤが、コーディングされるべき現在レイヤを含み、前記現在レイヤが、コーディングされるべき現在ピクチャを含む、
復号順序において前記現在レイヤ中の前記現在ピクチャに先行する先行ピクチャが、復号順序において前記現在レイヤ中の前記現在ピクチャに後続する後続ピクチャの時間動きベクトル予測（ＴＭＶＰ）のために使用されるかどうかを示す第１のフラグの値を決定するための手段と、前記第１のフラグが前記現在ピクチャに関連付けられる、
前記第１のフラグの前記値が、前記現在レイヤ中の前記先行ピクチャが前記現在レイヤ中の前記後続ピクチャのＴＭＶＰのために使用されるべきでないことを示すと決定したことに応答して、前記現在ピクチャのＴＭＶＰのための参照ピクチャとして前記現在レイヤ中の前記先行ピクチャを使用することを控えるための手段と
を備える、装置。
［Ｃ２９］
前記現在レイヤ中の前記先行ピクチャを使用することを控えるための前記手段は、ＴＶＭＰが有効にされるかどうかを示す第２のフラグにアクセスすることを控えるようにさらに構成され、前記第１のフラグの前記値が１に等しいとき、前記第２のフラグが、前記現在ピクチャを含むスライスのスライスヘッダ中に含まれ、前記第２のフラグが、前記現在ピクチャに関連付けられる、Ｃ２８に記載の装置。
【図１Ａ】
0006672184.tif 000010
【図１Ｂ】
0006672184.tif 000011
【図２Ａ】
0006672184.tif 000012
【図２Ｂ】
0006672184.tif 000013
【図３Ａ】
0006672184.tif 000014
【図３Ｂ】
0006672184.tif 000015
【図４】
0006672184.tif 000016
【図５】
0006672184.tif 000017
【図６】
0006672184.tif 000018
【図７】
0006672184.tif 000019