(57)【特許請求の範囲】
【請求項１】
マルチレイヤビットストリームのビデオ情報を符号化するための方法であって、
前記ビデオ情報の現在ピクチャが廃棄可能ピクチャであるかどうかを決定することと、廃棄可能ピクチャは、レイヤ間予測のためにもインター予測のためにも使用されないピクチャであり、前記現在ピクチャが廃棄可能ピクチャであるかどうかを前記決定することは、前記現在ピクチャに関連付けられた廃棄可能フラグに少なくとも部分的に基づく、
１に等しい廃棄可能フラグを有するピクチャが参照ピクチャセット（ＲＰＳ）中に含まれないという制約に従って、前記現在ピクチャが廃棄可能ピクチャであるという前記決定に基づいて、前記現在ピクチャをＲＰＳ中に含めることを控えることと
を備え、
前記廃棄可能フラグは、前記マルチレイヤビットストリームのスライスヘッダ中に含まれ、関連ピクチャ内の全てのスライスセグメントについて同じ値を有する、方法。
【請求項２】
マルチレイヤビットストリームのビデオ情報を符号化するための方法であって、
前記ビデオ情報の現在ピクチャが廃棄可能ピクチャであるかどうかを決定することと、廃棄可能ピクチャは、レイヤ間予測のためにもインター予測のためにも使用されないピクチャであり、前記現在ピクチャが廃棄可能ピクチャであるかどうかを前記決定することは、前記現在ピクチャに関連付けられた廃棄可能フラグに少なくとも部分的に基づく、
１に等しい廃棄可能フラグを有するピクチャが参照ピクチャセット（ＲＰＳ）中に含まれないという制約に従って、前記現在ピクチャが廃棄可能ピクチャであるという前記決定に基づいて、前記現在ピクチャをＲＰＳ中に含めることを控えることと
を備え、
前記ＲＰＳがレイヤ間ＲＰＳ又は時間ＲＰＳを備え、前記廃棄可能ピクチャは、前記レイヤ間ＲＰＳ又は前記時間ＲＰＳのいずれか中に含まれることを拒否され、
前記廃棄可能フラグは、前記マルチレイヤビットストリームのスライスヘッダ中に含まれ、関連ピクチャ内の全てのスライスセグメントについて同じ値を有する、方法。
【請求項３】
前記現在ピクチャが廃棄可能ピクチャであるかどうかを前記決定することは、前記現在ピクチャがレイヤ間予測又はインター予測のために使用されるかどうかを決定することを備える、請求項１または２に記載の方法。
【請求項４】
前記現在ピクチャに関連付けられた前記廃棄可能フラグは、前記現在ピクチャがレイヤ間予測又はインター予測のために使用されるかどうかを示す、請求項１または２に記載の方法。
【請求項５】
前記廃棄可能フラグは、前記廃棄可能フラグが１に等しい値を有するとき、前記現在ピクチャが廃棄可能ピクチャであることを示す、請求項３に記載の方法。
【請求項６】
前記ＲＰＳに少なくとも部分的に基づいて、前記ビデオ情報を符号化することをさらに備える、請求項１または２に記載の方法。
【請求項７】
ビデオ情報の現在ピクチャが廃棄可能ピクチャであるかどうかを決定するための手段と、廃棄可能ピクチャは、レイヤ間予測のためにもインター予測のためにも使用されないピクチャであり、前記現在ピクチャが廃棄可能ピクチャであるかどうかを前記決定することは、前記現在ピクチャに関連付けられた廃棄可能フラグに少なくとも部分的に基づく、
１に等しい廃棄可能フラグを有するピクチャが参照ピクチャセット（ＲＰＳ）中に含まれないという制約に従って、前記現在ピクチャが廃棄可能ピクチャであるという前記決定に基づいて、前記現在ピクチャをＲＰＳ中に含めることを控えるための手段と
を備え、
前記廃棄可能フラグは、マルチレイヤビットストリームのスライスヘッダ中に含まれ、関連ピクチャ内の全てのスライスセグメントについて同じ値を有する、装置。
【請求項８】
ビデオ情報の現在ピクチャが廃棄可能ピクチャであるかどうかを決定するための手段と、廃棄可能ピクチャは、レイヤ間予測のためにもインター予測のためにも使用されないピクチャであり、前記現在ピクチャが廃棄可能ピクチャであるかどうかを前記決定することは、前記現在ピクチャに関連付けられた廃棄可能フラグに少なくとも部分的に基づく、
１に等しい廃棄可能フラグを有するピクチャが参照ピクチャセット（ＲＰＳ）中に含まれないという制約に従って、前記現在ピクチャが廃棄可能ピクチャであるという前記決定に基づいて、前記現在ピクチャをＲＰＳ中に含めることを控えるための手段と
を備え、
前記ＲＰＳがレイヤ間ＲＰＳ又は時間ＲＰＳを備え、前記廃棄可能ピクチャは、前記レイヤ間ＲＰＳ又は前記時間ＲＰＳのいずれか中に含まれることを拒否され、
前記廃棄可能フラグは、マルチレイヤビットストリームのスライスヘッダ中に含まれ、関連ピクチャ内の全てのスライスセグメントについて同じ値を有する、装置。
【請求項９】
前記現在ピクチャが廃棄可能ピクチャであるかどうかを決定するための前記手段が、前記現在ピクチャがレイヤ間予測又はインター予測のために使用されるかどうかを決定するための手段を備える、請求項７または８に記載の装置。
【請求項１０】
前記現在ピクチャに関連付けられた前記廃棄可能フラグは、前記現在ピクチャがレイヤ間予測又はインター予測のために使用されるかどうかを示す、請求項７または８に記載の装置。
【請求項１１】
前記廃棄可能フラグは、前記廃棄可能フラグが１に等しい値を有するとき、前記現在ピクチャが廃棄可能ピクチャであることを示す、請求項９に記載の装置。
【請求項１２】
前記ＲＰＳに少なくとも部分的に基づいて、前記ビデオ情報を符号化するための手段をさらに備える、請求項７または８に記載の装置。
【請求項１３】
実行されたとき、機器のプロセッサに、請求項１〜６のうちのいずれか一項に従って前記方法を実行することを行わせる命令を記憶したコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]本開示は、ビデオコード化及び圧縮の分野に関し、詳細には、スケーラブルビデオコード化（scalable video coding）、マルチビュービデオコード化（multiview video coding）、又は３次元（３Ｄ）ビデオコード化に関する。
【背景技術】
【０００２】
[0002]デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップ又はデスクトップコンピュータ、デジタルカメラ、デジタル記録機器、デジタルメディアプレーヤ、ビデオゲーム機器、ビデオゲームコンソール、セルラー電話又は衛星無線電話、ビデオ遠隔会議機器などを含む、広範囲にわたる機器に組み込まれ得る。デジタルビデオ機器は、ムービングピクチャエキスパートグループ−２（ＭＰＥＧ−２）、ＭＰＥＧ−４、万国電信連合−電気通信標準化部門（ＩＴＵ−Ｔ）Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４，Ｐａｒｔ  １０，高度動画像符号化（ＡＶＣ：Advanced Video Coding）、高効率動画像符号化（ＨＥＶＣ：High Efficiency Video Coding）規格によって定義された規格及びそのような規格の拡張に記載されているビデオ圧縮技法などのビデオ圧縮技法を実装する。ビデオ機器は、そのようなビデオコード化技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、符号化、復号、及び／又は記憶し得る。
【０００３】
[0003]コード化ビデオシーケンスは、ピクチャに関連付けられた参照ピクチャセット（ＲＰＳ：reference picture set）を含み得、関連ピクチャ又は任意の後続のピクチャのインター予測のために使用され得るピクチャを識別する参照ピクチャリストを含んでいる。幾つかのビデオコード化規格は、関連ピクチャが参照のために使用されないかどうか、従って、幾つかの条件下で廃棄され得るかどうかを示す関連付けられたピクチャを含む。
【発明の概要】
【０００４】
[0004]本開示のシステム、方法及び機器は、それぞれ幾つかの発明的態様を有し、それらのうちの単一の態様が、本明細書で開示する望ましい属性を単独で担当するとは限らない。
【０００５】
[0005]一態様では、マルチレイヤビットストリームのビデオ情報を符号化するための方法が、ビデオ情報の現在ピクチャが廃棄可能ピクチャであるかどうかを決定することと、現在ピクチャが廃棄可能ピクチャであるという決定に基づいて、現在ピクチャを参照ピクチャセット（ＲＰＳ）中に含めることを控えることとを備える。
【０００６】
[0006]別の態様では、ビデオ情報を符号化するための機器が、ビデオ情報を記憶するように構成されたメモリと、メモリと通信しており、ビデオ情報の現在ピクチャが廃棄可能ピクチャであるかどうかを決定することと、現在ピクチャが廃棄可能ピクチャであるという決定に基づいて、現在ピクチャを参照ピクチャセット（ＲＰＳ）中に含めることを控えることとを行うように構成されたプロセッサとを備える。
【０００７】
[0007]また別の態様では、装置が、ビデオ情報の現在ピクチャが廃棄可能ピクチャであるかどうかを決定するための手段と、現在ピクチャが廃棄可能ピクチャであるという決定に基づいて、現在ピクチャをＲＰＳ中に含めることを控えるための手段とを備える。
【０００８】
[0008]さらに別の態様では、実行されたとき、機器のプロセッサに、現在ピクチャが廃棄可能ピクチャであるかどうかを決定することと、現在ピクチャが廃棄可能ピクチャであるという決定に基づいて、現在ピクチャをＲＰＳ中に含めることを控えることとを行わせる命令を記憶した非一時的コンピュータ可読記憶媒体。
【図面の簡単な説明】
【０００９】
【図１Ａ】[0009]本開示で説明する態様による技法を利用し得る例示的なビデオ符号化及び復号システムを示すブロック図。
【図１Ｂ】[0010]本開示で説明する態様による技法を実行し得る別の例示的なビデオ符号化及び復号システムを示すブロック図。
【図２Ａ】[0011]本開示で説明する態様による技法を実装し得るビデオエンコーダの一例を示すブロック図。
【図２Ｂ】[0012]本開示で説明する態様による技法を実装し得るビデオエンコーダの一例を示すブロック図。
【図３Ａ】[0013]本開示で説明する態様による技法を実装し得るビデオデコーダの一例を示すブロック図。
【図３Ｂ】[0014]本開示で説明する態様による技法を実装し得るビデオデコーダの一例を示すブロック図。
【図４】[0015]本開示で説明する態様によるマルチレイヤビットストリームのアクセス単位を示すブロック図。
【図５】[0016]エンコーダ又はデコーダによってＲＰＳがどのように生成されるかについての一例を示すブロック図。
【図６】[0017]本開示で説明する態様によるビデオ情報を符号化又は復号するための方法を示すフローチャート。
【図７】本開示で説明する態様によるビデオ情報を符号化又は復号するための方法を示すフローチャート。
【図８】本開示で説明する態様によるビデオ情報を符号化又は復号するための方法を示すフローチャート。
【発明を実施するための形態】
【００１０】
[0018]本明細書で説明する幾つかの実施形態は、高効率ビデオコード化（ＨＥＶＣ）など、高度ビデオコーデックのコンテキストにおけるマルチレイヤビデオコード化のためのビットストリーム終端（ＥｏＢ）ネットワークアクセスレイヤ（ＮＡＬ）単位とＲＰＳとに関する。より詳細には、本開示は、ＨＥＶＣのマルチビュー拡張とスケーラブル拡張、即ち、ＭＶ−ＨＥＶＣとＳＨＶＣとにおける、ＥｏＢ  ＮＡＬ単位とＲＰＳとの符号化又は復号における改善された性能のためのシステム及び方法に関する。
【００１１】
[0019]以下の説明では、幾つかの実施形態に関係するＨ．２６４／高度ビデオコード化（ＡＶＣ）技法について説明し、ＨＥＶＣ規格および関係する技法についても説明する。特に、幾つかのビデオコード化方式は、コード化ビデオシーケンス（ＣＶＳ）のピクチャに関連付けられた参照ピクチャセット（ＲＰＳ）を維持する。所与のピクチャのためのＲＰＳは、関連ピクチャ又は復号順序において関連ピクチャに後続する任意のピクチャのインター予測のために使用され得る、復号順序において関連ピクチャに先立つすべての参照ピクチャを含む参照ピクチャのセットを含んでいる。ピクチャはまた、ピクチャが他のピクチャによるレイヤ間予測のための参照のためにもインター予測のための参照のためにも使用されないとき、廃棄可能として示され得る。従来のコード化方式は、廃棄可能ピクチャがＲＰＳ中に含まれることを拒否しない。従って、廃棄可能ピクチャがビットストリームからドロップされる（又は不正確に復号される）場合、デコーダは損失を不正確に推論することがある。
【００１２】
[0020]本開示は、廃棄可能ピクチャがビットストリームからドロップされる（又は不正確に復号される）とき、デコーダが損失を不正確に推論することを防ぐことができるマルチレイヤコード化方式のためのセマンティクスに関する。幾つかの実装形態では、廃棄可能ピクチャは、レイヤ間ＲＰＳ又は時間ＲＰＳのいずれか中に含まれることを拒否される。従って、デコーダは、廃棄可能ピクチャのドロッピング（又は不正確な復号）による損失を不正確に推論しないことになる。
【００１３】
[0021]幾つかの実施形態について、ＨＥＶＣ及び／又はＨ．２６４規格のコンテキストにおいて本明細書で説明するが、本明細書で開示するシステム及び方法が任意の好適なビデオコード化規格に適用可能であり得ることを、当業者は諒解されよう。例えば、本明細書で開示する実施形態は、以下の規格、即ち、国際電気通信連合（ＩＴＵ）電気通信標準化部門（ＩＴＵ−Ｔ）Ｈ．２６１、国際標準化機構／国際電気標準会議（ＩＳＯ／ＩＥＣ）ＭＰＥＧ−１  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６２又はＩＳＯ／ＩＥＣ  ＭＰＥＧ−２  Ｖｉｓｕａｌ、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｖｉｓｕａｌ、及びそれのスケーラブル拡張とマルチビュー拡張とを含む、（ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  ＡＶＣとしても知られる）ＩＴＵ−Ｔ  Ｈ．２６４のうちの１つ又は複数に適用可能であり得る。
【００１４】
[0022]ＨＥＶＣは、概して、多くの点で、前のビデオコード化規格のフレームワークに従う。ＨＥＶＣにおける予測の単位は、幾つかの前のビデオコード化規格における予測の単位（例えば、マクロブロック）とは異なる。事実上、マクロブロックの概念は、幾つかの前のビデオコード化規格において理解されているように、ＨＥＶＣ中に存在しない。マクロブロックは、考えられる利益の中でも、高いフレキシビリティを与え得る、４分木方式に基づく階層構造と置き換えられる。例えば、ＨＥＶＣ方式内で、３つのタイプのブロック、コード化単位（ＣＵ：Coding Unit）、予測単位（ＰＵ：Prediction Unit）、及び変換単位（ＴＵ：Transform Unit）が定義される。ＣＵは領域分割の基本単位を指すことがある。ＣＵはマクロブロックの概念に類似すると見なされ得るが、ＨＥＶＣは、ＣＵの最大サイズを制限せず、コンテンツ適応性を改善するために４つの等しいサイズのＣＵへの再帰的分割を可能にし得る。ＰＵはインター／イントラ予測の基本単位と見なされ得、単一のＰＵは、不規則な画像パターンを効果的にコード化するために、複数の任意の形状区分を含んでいることがある。ＴＵは変換の基本単位と見なされ得る。ＴＵは、ＰＵとは無関係に定義され得るが、ＴＵのサイズは、ＴＵが属するＣＵのサイズに制限され得る。３つの異なる概念へのブロック構造のこの分離は、各単位が単位のそれぞれの役割に従って最適化されることを可能にし得、それによりコード化効率が改善され得る。
【００１５】
[0023]単に説明の目的で、本明細書で開示する幾つかの実施形態について、ビデオデータのただ２つのレイヤ（例えば、ベースレイヤなどの下位レイヤ、及び拡張レイヤなどの上位レイヤ）を含む例を用いて説明する。ビデオデータの「レイヤ」は、概して、ビュー、フレームレート、解像度などの少なくとも１つの共通の特性を有するピクチャのシーケンスを指すことがある。例えば、レイヤは、マルチビュービデオデータの特定のビュー（例えば、構文解析ペクティブ）に関連付けられたビデオデータを含み得る。別の例として、レイヤは、スケーラブルビデオデータの特定のレイヤに関連付けられたビデオデータを含み得る。従って、本開示は、ビデオデータのレイヤ及びビューを互換的に指すことがある。即ち、ビデオデータのビューはビデオデータのレイヤと呼ばれることがあり、ビデオデータのレイヤはビデオデータのビューと呼ばれることがある。更に、（マルチレイヤビデオコーダ又はマルチレイヤエンコーダデコーダとも呼ばれる）マルチレイヤコーデックは、マルチビューコーデック又はスケーラブルコーデック（例えば、ＭＶ−ＨＥＶＣ、３Ｄ−ＨＥＶＣ、ＳＨＶＣ、又は別のマルチレイヤコード化技法を使用するビデオデータを符号化及び／又は復号するように構成されたコーデック）を共同で指すことがある。ビデオ符号化及びビデオ復号は両方とも、概して、ビデオコード化と呼ばれることがある。そのような例は、複数のベースレイヤ及び／又は拡張レイヤを含む構成に適用可能であり得ることを理解されたい。更に、説明を簡単にするために、以下の開示は、幾つかの実施形態に関して「フレーム」又は「ブロック」という用語を含む。但し、これらの用語は限定的なものではない。例えば、以下で説明する技法は、ブロック（例えば、ＣＵ、ＰＵ、ＴＵ、マクロブロックなど）、スライス、フレームなど、任意の好適なビデオ単位とともに使用され得る。
ビデオコード化規格
[0024]ビデオ画像、ＴＶ画像、静止画像、若しくはビデオレコーダ又はコンピュータによって生成された画像など、デジタル画像は、水平ライン及び垂直ラインで構成された画素又はサンプルからなり得る。単一の画像中の画素の数は一般に数万個である。各画素は、一般に、ルミナンス情報とクロミナンス情報とを含んでいる。圧縮がなければ、画像エンコーダから画像デコーダに搬送されるべき情報の甚だしい量は、リアルタイム画像送信を不可能にするであろう。送信されるべき情報の量を低減するために、ＪＰＥＧ、ＭＰＥＧ及びＨ．２６３規格など、幾つかの異なる圧縮方法が開発された。
【００１６】
[0025]ビデオコード化規格は、ＩＴＵ−Ｔ  Ｈ．２６１と、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−１  Ｖｉｓｕａｌと、ＩＴＵ−Ｔ  Ｈ．２６２又はＩＳＯ／ＩＥＣ  ＭＰＥＧ−２  Ｖｉｓｕａｌと、ＩＴＵ−Ｔ  Ｈ．２６３と、ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  Ｖｉｓｕａｌと、それのスケーラブル拡張とマルチビュー拡張とを含む（ＩＳＯ／ＩＥＣ  ＭＰＥＧ−４  ＡＶＣとしても知られる）ＩＴＵ−Ｔ  Ｈ．２６４とを含む。
【００１７】
[0026]更に、ビデオコード化規格、即ち、ＨＥＶＣが、ＩＴＵ−Ｔビデオコード化エキスパートグループ（ＶＣＥＧ：Video Coding Experts Group）とＩＳＯ／ＩＥＣ  ＭＰＥＧとのジョイントコラボレーションチームオンビデオコード化（ＪＣＴ−ＶＣ：Joint Collaboration Team on Video Coding）によって開発された。ＨＥＶＣドラフト１０についての完全引用は、文書ＪＣＴＶＣ−Ｌ１００３、Ｂｒｏｓｓら、「High Efficiency Video Coding (HEVC) Text Specification Draft 10」、ＩＴＵ−Ｔ  ＳＧ１６  ＷＰ３及びＩＳＯ／ＩＥＣ  ＪＴＣ１／ＳＣ２９／ＷＧ１１のジョイントコラボレーティブチームオンビデオコード化（ＪＣＴ−ＶＣ：Joint Collaborative Team on Video Coding）、第１２回会合：ジュネーブ、スイス、２０１３年１月１４日〜２０１３年１月２３日である。ＨＥＶＣのマルチビュー拡張即ちＭＶ−ＨＥＶＣ、及びＳＨＶＣと称されるＨＥＶＣのスケーラブル拡張も、それぞれＪＣＴ−３Ｖ（ＩＴＵ−Ｔ／ＩＳＯ／ＩＥＣジョイントコラボレーティブチームオン３Ｄビデオコード化拡張開発）及びＪＣＴ−ＶＣによって開発されている。
ビデオコード化システム
[0027]添付の図面を参照しながら新規のシステム、装置、及び方法の様々な態様について以下でより十分に説明する。但し、本開示は、多くの異なる形態で実施され得、本開示全体にわたって提示する任意の特定の構造又は機能に限定されるものと解釈されるべきではない。むしろ、これらの態様は、本開示が周到で完全になり、本開示の範囲を当業者に十分に伝えるために与えるものである。本明細書の教示に基づいて、本開示の範囲は、本開示の他の態様とは無関係に実装されるにせよ、本開示の他の態様と組み合わせて実装されるにせよ、本明細書で開示する新規のシステム、装置、及び方法のいかなる態様をもカバーするものであることを、当業者なら諒解されたい。例えば、本明細書に記載される態様をいくつ使用しても、装置は実装され得、又は方法は実施され得る。更に、本開示の範囲は、本明細書に記載する本開示の様々な態様に加えて又はそれらの態様以外に、他の構造、機能、又は構造及び機能を使用して実施されるそのような装置又は方法をカバーするものとする。本明細書で開示するどの態様も請求項の１つ又は複数の要素によって実施され得ることを理解されたい。
【００１８】
[0028]本明細書では特定の態様について説明するが、これらの態様の多くの変形及び置換は本開示の範囲内に入る。好適な態様の幾つかの利益及び利点について説明するが、本開示の範囲は特定の利益、使用、又は目的に限定されるものではない。むしろ、本開示の態様は、様々なワイヤレス技術、システム構成、ネットワーク、及び伝送プロトコルに広く適用可能であるものとし、それらの幾つかを例として、図及び好適な態様についての以下の説明において示す。発明を実施するための形態及び図面は、本開示を限定するものではなく説明するものにすぎず、本開示の範囲は添付の特許請求の範囲及びそれの均等物によって定義される。
【００１９】
[0029]添付の図面は例を示している。添付の図面中の参照番号によって示される要素は、以下の説明における同様の参照番号によって示される要素に対応する。本開示では、序数語（例えば、「第１の」、「第２の」、「第３の」など）で始まる名前を有する要素は、必ずしもそれらの要素が特定の順序を有することを暗示するとは限らない。むしろ、そのような序数語は、同じ又は同様のタイプの異なる要素を指すために使用されるにすぎない。
【００２０】
[0030]図１Ａは、本開示で説明する態様による技法を利用し得る例示的なビデオコード化システム１０を示すブロック図である。本明細書で使用し説明する「ビデオコーダ」という用語は、総称的にビデオエンコーダとビデオデコーダの両方を指す。本開示では、「ビデオコード化」又は「コード化」という用語は、ビデオ符号化とビデオ復号とを総称的に指すことがある。ビデオエンコーダ及びビデオデコーダに加えて、本出願で説明する態様は、トランスコーダ（例えば、ビットストリームを復号し、別のビットストリームを再符号化することができる機器）及びミドルボックス（例えば、ビットストリームを変更、変換、及び／又は場合によっては操作することができる機器）など、他の関係する機器に拡張され得る。
【００２１】
[0031]図１Ａに示されているように、ビデオコード化システム１０は、宛先機器１４によって後で復号されるべき符号化ビデオデータを生成する発信源機器１２を含む。図１Ａの例では、発信源機器１２及び宛先機器１４は、別個の機器を構成する。但し、発信源機器１２及び宛先機器１４は、図１Ｂの例に示されているように、同じ機器上にあるか又はそれの一部であり得ることに留意されたい。
【００２２】
[0032]もう一度図１Ａを参照すると、発信源機器１２及び宛先機器１４は、それぞれ、デスクトップコンピュータ、ノートブック（例えば、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、所謂「スマート」フォンなどの電話ハンドセット、所謂「スマート」パッド、テレビジョン、カメラ、表示装置、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミング機器などを含む、広範囲にわたる機器のいずれかを備え得る。様々な実施形態では、発信源機器１２及び宛先機器１４は、ワイヤレス通信のために装備され得る。
【００２３】
[0033]宛先機器１４は、復号されるべき符号化ビデオデータをリンク１６を介して受信し得る。リンク１６は、発信源機器１２から宛先機器１４に符号化ビデオデータを移動することが可能な任意のタイプの媒体又は機器を備え得る。図１Ａの例では、リンク１６は、発信源機器１２が符号化ビデオデータをリアルタイムで宛先機器１４に送信することを可能にするための通信媒体を備え得る。符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先機器１４に送信され得る。通信媒体は、無線周波数（ＲＦ）スペクトルあるいは１つ又は複数の物理伝送線路など、任意のワイヤレス又は有線通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワークなどのパケットベースネットワーク、又はインターネットなどのグローバルネットワークの一部を形成し得る。通信媒体は、ルータ、スイッチ、基地局、又は発信源機器１２から宛先機器１４への通信を可能にするために有用であり得る任意の他の機器を含み得る。
【００２４】
[0034]代替的に、符号化データは出力インターフェース２２から（随意に存在する）記憶装置３１に出力され得る。同様に、符号化データは、例えば、宛先機器１４の入力インターフェース２８によって記憶装置３１からアクセスされ得る。記憶装置３１は、ハードドライブ、フラッシュメモリ、揮発性又は不揮発性メモリ、若しくは符号化ビデオデータを記憶するための任意の他の好適なデジタル記憶媒体など、様々な分散された又はローカルにアクセスされるデータ記憶媒体のいずれかを含み得る。更なる一例では、記憶装置３１は、発信源機器１２によって生成された符号化ビデオを保持し得るファイルサーバ又は別の中間記憶装置に対応し得る。宛先機器１４は、ストリーミング又はダウンロードを介して記憶装置３１から記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶し、その符号化ビデオデータを宛先機器１４に送信することができる任意のタイプのサーバであり得る。例示的なファイルサーバとしては、（例えば、ウェブサイトのための）ウェブサーバ、ファイル転送プロトコル（ＦＴＰ）サーバ、ネットワーク接続記憶（ＮＡＳ）装置、又はローカルディスクドライブがある。宛先機器１４は、インターネット接続を含む、任意の標準のデータ接続を通して符号化ビデオデータにアクセスし得る。これは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに好適であるワイヤレスチャネル（例えば、ワイヤレスローカルエリアネットワーク（ＷＬＡＮ）接続）、有線接続（例えば、デジタル加入者線（ＤＳＬ）、ケーブルモデムなど）、又はその両方の組合せを含み得る。記憶装置３１からの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、又はその両方の組合せであり得る。
【００２５】
[0035]本開示の技法はワイヤレス適用例又は設定に限定されない。本技法は、無線テレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、例えばインターネットを介したストリーミングビデオ送信（例えば、ハイパーテキスト転送プロトコル（ＨＴＴＰ）上での動的適応ストリーミングなど）、データ記憶媒体に記憶するためのデジタルビデオの符号化、データ記憶媒体に記憶されたデジタルビデオの復号、又は他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコード化に適用され得る。幾つかの例では、ビデオコード化システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、及び／又はビデオテレフォニーなどの適用例をサポートするために、一方向又は双方向のビデオ送信をサポートするように構成され得る。
【００２６】
[0036]図１Ａの例では、発信源機器１２は、ビデオ発信源１８と、ビデオエンコーダ２０と、出力インターフェース２２とを含む。場合によっては、出力インターフェース２２は、変調器／復調器（モデム）及び／又は送信機を含み得る。発信源機器１２において、ビデオ発信源１８は、撮像装置、例えばビデオカメラ、以前に撮られたビデオを含んでいるビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェース、及び／又は発信源ビデオとしてコンピュータグラフィックスデータを生成するためのコンピュータグラフィックスシステムなどの発信源、若しくはそのような発信源の組合せを含み得る。一例として、ビデオ発信源１８がビデオカメラである場合、発信源機器１２及び宛先機器１４は、図１Ｂの例に示されているように、所謂「カメラフォン」又は「ビデオフォン」を形成し得る。但し、本開示で説明する技法は、概してビデオコード化に適用可能であり得、ワイヤレス及び／又は有線適用例に適用され得る。
【００２７】
[0037]撮られたビデオ、以前に撮られたビデオ、又はコンピュータ生成されたビデオは、ビデオエンコーダ２０によって符号化され得る。符号化ビデオデータは、発信源機器１２の出力インターフェース２２を介して宛先機器１４に送信され得る。符号化ビデオデータは、更に（又は代替として）、復号及び／又は再生のための宛先機器１４又は他の機器による後のアクセスのために記憶装置３１上に記憶され得る。図１Ａ及び図１Ｂに示されているビデオエンコーダ２０は、図２Ａ示されているビデオエンコーダ２０、図２Ｂに示されているビデオエンコーダ２３、又は本明細書で説明する他のビデオエンコーダを備え得る。
【００２８】
[0038]図１Ａの例では、宛先機器１４は、入力インターフェース２８と、ビデオデコーダ３０と、表示装置３２とを含む。場合によっては、入力インターフェース２８は、受信機及び／又はモデムを含み得る。宛先機器１４の入力インターフェース２８は、リンク１６を介して及び／又は記憶装置３１から符号化ビデオデータを受信し得る。リンク１６を介して通信され、又は記憶装置３１上に与えられた符号化ビデオデータは、ビデオデータを復号する際に、ビデオデコーダ３０などのビデオデコーダが使用するためのビデオエンコーダ２０によって生成される様々なシンタックス要素を含み得る。そのようなシンタックス要素は、通信媒体上で送信された、記憶媒体上に記憶された、又はファイルサーバ記憶された符号化ビデオデータに含まれ得る。図１Ａ及び図１Ｂに示されているビデオデコーダ３０は、図３Ａ示されているビデオデコーダ３０、図３Ｂに示されているビデオデコーダ３３、又は本明細書で説明する他のビデオデコーダを備え得る。
【００２９】
[0039]表示装置３２は、宛先機器１４と一体化されるか又はその外部にあり得る。幾つかの例では、宛先機器１４は、一体型表示装置を含み、また、外部表示装置とインターフェースするように構成され得る。他の例では、宛先機器１４は表示装置であり得る。概して、表示装置３２は、復号ビデオデータをユーザに対して表示し、液晶表示器（ＬＣＤ）、プラズマ表示器、有機発光ダイオード（ＯＬＥＤ）表示器、又は別のタイプの表示装置など、様々な表示装置のいずれかを備え得る。
【００３０】
[0040]関係する態様では、図１Ｂは例示的なビデオコード化システム１０’を示し、ここにおいて、発信源機器１２及び宛先機器１４は機器１１上にあるか又はそれの一部である。機器１１は、「スマート」フォンなどの電話ハンドセットであり得る。機器１１は、発信源機器１２及び宛先機器１４と動作可能に通信している（随意に存在する）コントローラ／プロセッサ機器１３を含み得る。図１Ｂのビデオコード化システム１０’は、ビデオエンコーダ２０と出力インターフェース２２との間のビデオ処理ユニット２１を更に含み得る。幾つかの実装形態では、図１Ｂに示されているように、ビデオ処理ユニット２１は別個のユニットであるが、他の実装形態では、ビデオ処理ユニット２１は、ビデオエンコーダ２０及び／又はプロセッサ／コントローラ機器１３の一部分として実装され得る。ビデオコード化システム１０’はまた、ビデオシーケンス中の当該のオブジェクトを追跡することができる（随意に存在する）トラッカー２９を含み得る。追跡されるべきオブジェクト又は興味は、本開示の１つ又は複数の態様に関して説明する技法によってセグメント化され得る。関係する態様では、追跡することは、単独で又はトラッカー２９とともに、表示装置３２によって実行され得る。図１Ｂのビデオコード化システム１０’及びそれの構成要素は、場合によっては図１Ａのビデオコード化システム１０及びそれの構成要素と同様である。
【００３１】
[0041]ビデオエンコーダ２０及びビデオデコーダ３０は、ＨＥＶＣなどのビデオ圧縮規格に従って動作し得、ＨＥＶＣテストモデル（ＨＭ）に準拠し得る。代替的に、ビデオエンコーダ２０及びビデオデコーダ３０は、代替的にＭＰＥＧ−４，Ｐａｒｔ１０，ＡＶＣと呼ばれるＩＴＵ−Ｔ  Ｈ．２６４規格など、他のプロプライエタリ規格又は業界規格、又はそのような規格の拡張に従って動作し得る。但し、本開示の技法は、いかなる特定のコード化規格にも限定されない。ビデオ圧縮規格の他の例としてはＭＰＥＧ−２及びＩＴＵ−Ｔ  Ｈ．２６３がある。
【００３２】
[0042]図１Ａ及び図１Ｂの例には示されていないが、ビデオエンコーダ２０及びビデオデコーダ３０は、それぞれオーディオエンコーダ及びデコーダと統合され得、共通のデータストリーム又は別個のデータストリーム中のオーディオとビデオの両方の符号化を処理するために、適切なＭＵＸ−ＤＥＭＵＸユニット、又は他のハードウェア及びソフトウェアを含み得る。適用可能な場合、幾つかの例では、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、又はユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠し得る。
【００３３】
[0043]ビデオエンコーダ２０及びビデオデコーダ３０はそれぞれ、１つ又は複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダ回路のいずれか、又はそれらの任意の組合せとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、機器は、ソフトウェアのための命令を好適な非一時的コンピュータ可読媒体に記憶し、本開示の技法を実行するために１つ又は複数のプロセッサを使用してハードウェアでその命令を実行し得る。ビデオエンコーダ２０及びビデオデコーダ３０の各々は１つ又は複数のエンコーダ又はデコーダ中に含まれ得、そのいずれも、それぞれの機器において複合エンコーダ／デコーダの一部として統合され得る。
ビデオコード化プロセス
[0044]上記で手短に述べたように、ビデオエンコーダ２０はビデオデータを符号化する。ビデオデータは１つ又は複数のピクチャを備え得る。ピクチャの各々は、ビデオの一部を形成する静止画像である。幾つかの事例では、ピクチャはビデオ「フレーム」と呼ばれることがある。ビデオエンコーダ２０がビデオデータを符号化するとき、ビデオエンコーダ２０はビットストリームを生成し得る。ビットストリームは、ビデオデータのコード化表現を形成するビットのシーケンスを含み得る。ビットストリームは、コード化ピクチャと関連データとを含み得る。コード化ピクチャとは、ピクチャのコード化表現である。
【００３４】
[0045]ビットストリームを生成するために、ビデオエンコーダ２０は、ビデオデータ中の各ピクチャに対して符号化演算を実行し得る。ビデオエンコーダ２０がピクチャに対して符号化演算を実行するとき、ビデオエンコーダ２０は、一連のコード化ピクチャと関連データとを生成し得る。関連データは、ビデオパラメータセット（ＶＰＳ）と、シーケンスパラメータセット（ＳＰＳ）と、ピクチャパラメータセット（ＰＰＳ）と、適応パラメータセット（ＡＰＳ）と、他のシンタックス構造とを含み得る。ＳＰＳは、ピクチャの０個以上のシーケンスに適用可能なパラメータを含んでいることがある。ＰＰＳは、０個以上のピクチャに適用可能なパラメータを含んでいることがある。ＡＰＳは、０個以上のピクチャに適用可能なパラメータを含んでいることがある。ＡＰＳ中のパラメータは、ＰＰＳ中のパラメータよりも変化する可能性が高いパラメータであり得る。
【００３５】
[0046]コード化ピクチャを生成するために、ビデオエンコーダ２０は、ピクチャを等しいサイズのビデオブロックに区分し得る。ビデオブロックはサンプルの２次元アレイであり得る。ビデオブロックの各々はツリーブロックに関連付けられる。幾つかの事例では、ツリーブロックは、最大コード化単位（ＬＣＵ：largest coding unit）と呼ばれることがある。ＨＥＶＣのツリーブロックは、Ｈ．２６４／ＡＶＣなど、以前の規格のマクロブロックに広い意味で類似し得る。しかしながら、ツリーブロックは、必ずしも特定のサイズに限定されるとは限らず、１つ又は複数のＣＵを含み得る。ビデオエンコーダ２０は、４分木区分（quadtree partitioning）を使用して、ツリーブロックのビデオブロックを、ＣＵに関連付けられたビデオブロックに区分し得、従って「ツリーブロック」という名前がある。
【００３６】
[0047]幾つかの例では、ビデオエンコーダ２０はピクチャを複数のスライスに区分し得る。スライスの各々は整数個のＣＵを含み得る。幾つかの事例では、スライスは整数個のツリーブロックを備える。他の事例では、スライスの境界はツリーブロック内にあり得る。
【００３７】
[0048]ピクチャに対して符号化演算を実行することの一部として、ビデオエンコーダ２０は、ピクチャの各スライスに対して符号化演算を実行し得る。ビデオエンコーダ２０がスライスに対して符号化演算を実行するとき、ビデオエンコーダ２０は、スライスに関連付けられた符号化データを生成し得る。スライスに関連付けられた符号化データは「コード化スライス」と呼ばれることがある。
【００３８】
[0049]コード化スライスを生成するために、ビデオエンコーダ２０は、スライス中の各ツリーブロックに対して符号化演算を実行し得る。ビデオエンコーダ２０がツリーブロックに対して符号化演算を実行するとき、ビデオエンコーダ２０はコード化ツリーブロックを生成し得る。コード化ツリーブロックは、ツリーブロックの符号化バージョンを表すデータを備え得る。
【００３９】
[0050]ビデオエンコーダ２０がコード化スライスを生成するとき、ビデオエンコーダ２０は、ラスタ走査順序に従って、スライス中のツリーブロックに対して符号化演算を実行し得る（例えば、そのツリーブロックを符号化し得る）。例えば、ビデオエンコーダ２０は、スライス中のツリーブロックの一番上の行にわたって左から右に進み、次いでツリーブロックの次の下の行にわたって左から右に進み、以下同様に進む順序で、ビデオエンコーダ２０がスライス中のツリーブロックの各々を符号化するまで、スライスのツリーブロックを符号化し得る。
【００４０】
[0051]ラスタ走査順序に従ってツリーブロックを符号化した結果として、所与のツリーブロックの上及び左のツリーブロックは符号化されていることがあるが、所与のツリーブロックの下及び右のツリーブロックはまだ符号化されていない。従って、ビデオエンコーダ２０は、所与のツリーブロックを符号化するとき、所与のツリーブロックの上及び左のツリーブロックを符号化することによって生成された情報にアクセスすることが可能であり得る。しかしながら、ビデオエンコーダ２０は、所与のツリーブロックを符号化するとき、所与のツリーブロックの下及び右のツリーブロックを符号化することによって生成された情報にアクセスすることができないことがある。
【００４１】
[0052]コード化ツリーブロックを生成するために、ビデオエンコーダ２０は、ツリーブロックのビデオブロックに対して４分木区分を再帰的に実行して、ビデオブロックを徐々により小さいビデオブロックに分割し得る。より小さいビデオブロックの各々は、異なるＣＵに関連付けられ得る。例えば、ビデオエンコーダ２０は、ツリーブロックのビデオブロックを４つの等しいサイズのサブブロックに区分し、サブブロックのうちの１つ又は複数を、４つの等しいサイズのサブサブブロックに区分し得、以下同様である。区分されたＣＵは、それのビデオブロックが、他のＣＵに関連付けられたビデオブロックに区分された、ＣＵであり得る。区分されていないＣＵは、それのビデオブロックが、他のＣＵに関連付けられたビデオブロックに区分されていない、ＣＵであり得る。
【００４２】
[0053]ビットストリーム中の１つ又は複数のシンタックス要素は、ビデオエンコーダ２０がツリーブロックのビデオブロックを区分化し得る最大の回数を示し得る。ＣＵのビデオブロックは形状が正方形であり得る。ＣＵのビデオブロックのサイズ（例えば、ＣＵのサイズ）は、８×８画素から、最大６４×６４以上の画素をもつツリーブロックのビデオブロックのサイズ（例えば、ツリーブロックのサイズ）までに及び得る。
【００４３】
[0054]ビデオエンコーダ２０は、ｚ走査順序に従って、ツリーブロックの各ＣＵに対して符号化演算を実行し得る（例えば、各ＣＵを符号化し得る）。言い換えれば、ビデオエンコーダ２０は、左上のＣＵと、右上のＣＵと、左下のＣＵと、次いで右下のＣＵとを、その順序で符号化し得る。ビデオエンコーダ２０が、区分されたＣＵに対して符号化演算を実行するとき、ビデオエンコーダ２０は、ｚ走査順序に従って、区分されたＣＵのビデオブロックのサブブロックに関連付けられたＣＵを符号化し得る。言い換えれば、ビデオエンコーダ２０は、左上のサブブロックに関連付けられたＣＵと、右上のサブブロックに関連付けられたＣＵと、左下のサブブロックに関連付けられたＣＵと、次いで右下のサブブロックに関連付けられたＣＵとを、その順序で符号化し得る。
【００４４】
[0055]ｚ走査順序に従ってツリーブロックのＣＵを符号化した結果として、所与のＣＵの上、左上、右上、左、及び左下のＣＵは符号化されていることがある。所与のＣＵの下及び右のＣＵはまだ符号化されていない。従って、ビデオエンコーダ２０は、所与のＣＵを符号化するとき、所与のＣＵに隣接する幾つかのＣＵを符号化することによって生成された情報にアクセスすることが可能であり得る。しかしながら、ビデオエンコーダ２０は、所与のＣＵを符号化するとき、所与のＣＵに隣接する他のＣＵを符号化することによって生成された情報にアクセスすることができないことがある。
【００４５】
[0056]ビデオエンコーダ２０が、区分されていないＣＵを符号化するとき、ビデオエンコーダ２０は、ＣＵのために１つ又は複数のＰＵを生成し得る。ＣＵのＰＵの各々は、ＣＵのビデオブロック内の異なるビデオブロックに関連付けられ得る。ビデオエンコーダ２０は、ＣＵの各ＰＵについて予測ビデオブロックを生成し得る。ＰＵの予測ビデオブロックはサンプルのブロックであり得る。ビデオエンコーダ２０は、イントラ予測又はインター予測を使用して、ＰＵのための予測ビデオブロックを生成し得る。
【００４６】
[0057]ビデオエンコーダ２０がイントラ予測を使用してＰＵの予測ビデオブロックを生成するとき、ビデオエンコーダ２０は、ＰＵに関連付けられたピクチャの復号サンプルに基づいて、ＰＵの予測ビデオブロックを生成し得る。ビデオエンコーダ２０がイントラ予測を使用してＣＵのＰＵの予測ビデオブロックを生成する場合、ＣＵはイントラ予測されたＣＵである。ビデオエンコーダ２０がインター予測を使用してＰＵの予測ビデオブロックを生成するとき、ビデオエンコーダ２０は、ＰＵに関連付けられたピクチャ以外の１つ又は複数のピクチャの復号サンプルに基づいて、ＰＵの予測ビデオブロックを生成し得る。ビデオエンコーダ２０がインター予測を使用してＣＵのＰＵの予測ビデオブロックを生成する場合、ＣＵはインター予測されたＣＵである。
【００４７】
[0058]更に、ビデオエンコーダ２０がインター予測を使用してＰＵのための予測ビデオブロックを生成するとき、ビデオエンコーダ２０はＰＵの動き情報を生成し得る。ＰＵの動き情報は、ＰＵの１つ又は複数の参照ブロックを示し得る。ＰＵの各参照ブロックは参照ピクチャ内のビデオブロックであり得る。参照ピクチャはＰＵに関連付けられたピクチャ以外のピクチャであり得る。幾つかの事例では、ＰＵの参照ブロックはＰＵの「参照サンプル」と呼ばれることもある。ビデオエンコーダ２０は、ＰＵの参照ブロックに基づいて、ＰＵのための予測ビデオブロックを生成し得る。
【００４８】
[0059]ビデオエンコーダ２０がＣＵの１つ又は複数のＰＵのための予測ビデオブロックを生成した後、ビデオエンコーダ２０は、ＣＵのＰＵのための予測ビデオブロックに基づいて、ＣＵの残差データを生成し得る。ＣＵの残差データは、ＣＵのＰＵのための予測ビデオブロック中のサンプルと、ＣＵの元のビデオブロック中のサンプルとの間の差を示し得る。
【００４９】
[0060]更に、区分化されていないＣＵに対して符号化演算を実行することの一部として、ビデオエンコーダ２０は、ＣＵの残差データに対して再帰的な４分木区分化を実行して、ＣＵの残差データを、ＣＵのＴＵに関連付けられた残差データの１つ又は複数のブロック（例えば、残差ビデオブロック）に区分化し得る。ＣＵの各ＴＵは異なる残差ビデオブロックに関連付けられ得る。
【００５０】
[0061]ビデオエンコーダ２０は、ＴＵに関連付けられた変換係数ブロック（例えば、変換係数のブロック）を生成するために、ＴＵに関連付けられた残差ビデオブロックに１つ又は複数の変換を適用し得る。概念的に、変換係数ブロックは変換係数の２次元（２Ｄ）行列であり得る。
【００５１】
[0062]変換係数ブロックを生成した後、ビデオエンコーダ２０は、変換係数ブロックに対して量子化プロセスを実行し得る。量子化は、一般に、変換係数を表すために使用されるデータの量をできるだけ低減するために変換係数が量子化され、更なる圧縮を行うプロセスを指す。量子化プロセスは、変換係数の一部又は全部に関連付けられたビット深度を低減し得る。例えば、量子化中にｎビットの変換係数がｍビットの変換係数に切り捨てられることがあり、ここで、ｎはｍよりも大きい。
【００５２】
[0063]ビデオエンコーダ２０は、各ＣＵを量子化パラメータ（ＱＰ：quantization parameter）値に関連付け得る。ＣＵに関連付けられたＱＰ値は、ビデオエンコーダ２０が、ＣＵに関連付けられた変換係数ブロックをどのように量子化するかを決定し得る。ビデオエンコーダ２０は、ＣＵに関連付けられたＱＰ値を調整することによって、ＣＵに関連付けられた変換係数ブロックに適用される量子化の程度を調整し得る。
【００５３】
[0064]ビデオエンコーダ２０が変換係数ブロックを量子化した後、ビデオエンコーダ２０は、量子化された変換係数ブロック中で変換係数を表すシンタックス要素のセットを生成し得る。ビデオエンコーダ２０は、これらのシンタックス要素のうちの幾つかに、コンテキスト適応型バイナリ算術コード化（ＣＡＢＡＣ：Context Adaptive Binary Arithmetic Coding）演算などのエントロピー符号化演算を適用し得る。コンテキスト適応型可変長コード化（ＣＡＶＬＣ：context-adaptive variable-length coding）、確率間隔区分エントロピー（ＰＩＰＥ：probability interval partitioning entropy）コード化、又は他のバイナリ算術コード化など、他のエントロピーコード化技法も使用され得る。
【００５４】
[0065]ビデオエンコーダ２０によって生成されるビットストリームは、一連のＮＡＬ単位を含み得る。ＮＡＬ単位の各々は、ＮＡＬ単位中のデータのタイプの指示と、データを含んでいるバイトとを含んでいるシンタックス構造であり得る。例えば、ＮＡＬ単位は、ビデオパラメータセット、シーケンスパラメータセット、ピクチャパラメータセット、コード化スライス、補足拡張情報（ＳＥＩ：supplemental enhancement information）、アクセス単位区切り文字、フィラーデータ、又は別のタイプのデータを表すデータを含み得る。ＮＡＬ単位中のデータは様々なシンタックス構造を含み得る。
【００５５】
[0066]ビデオデコーダ３０は、ビデオエンコーダ２０によって生成されたビットストリームを受信し得る。ビットストリームは、ビデオエンコーダ２０によって符号化されたビデオデータのコード化表現を含み得る。ビデオデコーダ３０がビットストリームを受信するとき、ビデオデコーダ３０は、ビットストリームに対して構文解析演算（parsing operation）を実行し得る。ビデオデコーダ３０が構文解析演算を実行するとき、ビデオデコーダ３０は、ビットストリームからシンタックス要素を抽出し得る。ビデオデコーダ３０は、ビットストリームから抽出されたシンタックス要素に基づいて、ビデオデータのピクチャを再構成し得る。シンタックス要素に基づいてビデオデータを再構成するためのプロセスは、一般に、シンタックス要素を生成するためにビデオエンコーダ２０によって実行されるプロセスとは逆であり得る。
【００５６】
[0067]ビデオデコーダ３０がＣＵに関連付けられたシンタックス要素を抽出した後、ビデオデコーダ３０は、シンタックス要素に基づいて、ＣＵのＰＵのための予測ビデオブロックを生成し得る。更に、ビデオデコーダ３０は、ＣＵのＴＵに関連付けられた変換係数ブロックを逆量子化し得る。ビデオデコーダ３０は、変換係数ブロックに対して逆変換を実行して、ＣＵのＴＵに関連付けられた残差ビデオブロックを再構成し得る。予測ビデオブロックを生成し、残差ビデオブロックを再構成した後、ビデオデコーダ３０は、予測ビデオブロックと残差ビデオブロックとに基づいて、ＣＵのビデオブロックを再構成し得る。このようにして、ビデオデコーダ３０は、ビットストリーム中のシンタックス要素に基づいて、ＣＵのビデオブロックを再構成し得る。
【００５７】
ビデオエンコーダ
[0068]図２Ａは、本開示で説明する態様による技法を実装し得るビデオエンコーダ２０の一例を示すブロック図である。ビデオデコーダ２０は、ＨＥＶＣの場合など、ビデオフレームの単一のレイヤを処理するように構成され得る。更に、ビデオエンコーダ２０は、本開示の技法のいずれか又は全てを実行するように構成され得る。幾つかの例では、本開示で説明する技法は、ビデオエンコーダ２０の様々な構成要素間で共有され得る。幾つかの例では、追加又は代替として、プロセッサ（図示せず）が、本開示で説明する技法のいずれか又は全てを実行するように構成され得る。
【００５８】
[0069]説明の目的で、本開示では、ＨＥＶＣコード化のコンテキストにおいてビデオエンコーダ２０について説明する。しかしながら、本開示の技法は、他のコード化規格又は方法にも適用可能であり得る。図２Ａに示された例はシングルレイヤコーデックのためのものである。しかしながら、図２Ｂに関して更に説明するように、ビデオエンコーダ２０の一部又は全部はマルチレイヤコーデックの処理のために複製され得る。
【００５９】
[0070]ビデオエンコーダ２０は、ビデオスライス内のビデオブロックのイントラコード化及びインターコード化を実行し得る。イントラコード化は、所与のビデオフレーム又はピクチャ内のビデオの空間冗長性を低減又は除去するために空間予測に依拠する。インターコード化は、ビデオシーケンスの隣接フレーム又はピクチャ内のビデオ中の時間冗長性を低減又は削除するために、時間予測に依拠する。イントラモード（Ｉモード）は、幾つかの空間ベースコード化モードのいずれかを指すことがある。単方向予測（Ｐモード）又は双方向予測（Ｂモード）などのインターモードは、幾つかの時間ベースのコード化モードのいずれかを指すことがある。
【００６０】
[0071]図２Ａの例では、ビデオエンコーダ２０は複数の機能構成要素を含む。ビデオエンコーダ２０の機能構成要素は、予測処理ユニット１００と、残差生成ユニット１０２と、変換処理ユニット１０４と、量子化ユニット１０６と、逆量子化ユニット１０８と、逆変換ユニット１１０と、再構成ユニット１１２と、フィルタユニット１１３と、復号ピクチャバッファ１１４と、エントロピー符号化ユニット１１６とを含む。予測処理ユニット１００は、インター予測ユニット１２１と、動き推定ユニット１２２と、動き補償ユニット１２４と、イントラ予測ユニット１２６と、レイヤ間予測ユニット１２８とを含む。他の例では、ビデオエンコーダ２０は、より多数の、より少数の、又は異なる機能構成要素を含み得る。更に、動き推定ユニット１２２と動き補償ユニット１２４とは、高度に統合され得るが、図２Ａの例では、説明の目的で別々に表されている。
【００６１】
[0072]ビデオエンコーダ２０はビデオデータを受信し得る。ビデオエンコーダ２０は、様々な発信源からビデオデータを受信し得る。例えば、ビデオエンコーダ２０は、（例えば、図１Ａ又は図１Ｂに示された）ビデオ発信源１８、又は別の発信源からビデオデータを受信し得る。ビデオデータは一連のピクチャを表し得る。ビデオデータを符号化するために、ビデオエンコーダ２０は、ピクチャの各々に対して符号化演算を実行し得る。ピクチャに対して符号化演算を実行することの一部として、ビデオエンコーダ２０は、ピクチャの各スライスに対して符号化演算を実行し得る。スライスに対して符号化演算を実行することの一部として、ビデオエンコーダ２０は、スライス中のツリーブロックに対して符号化演算を実行し得る。
【００６２】
[0073]ツリーブロックに対して符号化演算を実行することの一部として、予測処理ユニット１００は、ツリーブロックのビデオブロックに対して４分木区分化を実行して、ビデオブロックを徐々により小さいビデオブロックに分割し得る。より小さいビデオブロックの各々は、異なるＣＵに関連付けられ得る。例えば、予測処理ユニット１００は、ツリーブロックのビデオブロックを４つの等しいサイズのサブブロックに区分化し、サブブロックの１つ又は複数を、４つの等しいサイズのサブサブブロックに区分化し得、以下同様である。
【００６３】
[0074]ＣＵに関連付けられたビデオブロックのサイズは、８×８サンプルから、最大６４×６４以上のサンプルをもつツリーブロックのサイズまでに及び得る。本開示では、「Ｎ×Ｎ（NxN）」及び「Ｎ×Ｎ（N by N）」は、垂直寸法及び水平寸法に関するビデオブロックのサンプル寸法、例えば、１６×１６（16x16）サンプル又は１６×１６（16 by 16）サンプルを指すために互換的に使用され得る。概して、１６×１６ビデオブロックは、垂直方向に１６個のサンプルを有し（ｙ＝１６）、水平方向に１６個のサンプルを有する（ｘ＝１６）。同様に、Ｎ×Ｎブロックは、概して、垂直方向にＮ個のサンプルを有し、水平方向にＮ個のサンプルを有し、ここで、Ｎは非負整数値を表す。
【００６４】
[0075]更に、ツリーブロックに対して符号化演算を実行することの一部として、予測処理ユニット１００は、ツリーブロック用の階層的な４分木データ構造を生成し得る。例えば、ツリーブロックは、４分木データ構造のルートノードに対応し得る。予測処理ユニット１００が、ツリーブロックのビデオブロックを４つのサブブロックに区分化する場合、ルートノードは、４分木データ構造中に４つの子ノードを有する。子ノードの各々は、サブブロックのうちの１つに関連付けられたＣＵに対応する。予測処理ユニット１００が、サブブロックのうちの１つを４つのサブサブブロックに区分する場合、サブブロックに関連付けられたＣＵに対応するノードは、サブサブブロックのうちの１つに関連付けられたＣＵに各々が対応する、４つの子ノードを有し得る。
【００６５】
[0076]４分木データ構造の各ノードは、対応するツリーブロック又はＣＵのシンタックスデータ（例えば、シンタックス要素）を含み得る。例えば、４分木の中のノードは、そのノードに対応するＣＵのビデオブロックが４つのサブブロックに区分化される（例えば、分割される）かどうかを示す分割フラグを含み得る。ＣＵのためのシンタックス要素は、再帰的に定義され得、ＣＵのビデオブロックがサブブロックに分割されるかどうかに依存し得る。それのビデオブロックが区分化されていないＣＵは、４分木データ構造におけるリーフノードに対応し得る。コード化ツリーブロックは、対応するツリーブロック用の４分木データ構造に基づくデータを含み得る。
【００６６】
[0077]ビデオエンコーダ２０は、ツリーブロックの区分化されていない各ＣＵに対して符号化演算を実行し得る。ビデオエンコーダ２０が、区分化されていないＣＵに対して符号化演算を実行するとき、ビデオエンコーダ２０は、区分化されていないＣＵの符号化表現を表すデータを生成する。
【００６７】
[0078]ＣＵに対して符号化演算を実行することの一部として、予測処理ユニット１００は、ＣＵの１つ又は複数のＰＵの中で、ＣＵのビデオブロックを区分し得る。ビデオエンコーダ２０及びビデオデコーダ３０は、様々なＰＵサイズをサポートし得る。特定のＣＵのサイズが２Ｎ×２Ｎであると仮定すると、ビデオエンコーダ２０及びビデオデコーダ３０は、２Ｎ×２Ｎ又はＮ×ＮのＰＵサイズと、２Ｎ×２Ｎ、２Ｎ×Ｎ、Ｎ×２Ｎ、Ｎ×Ｎ、２Ｎ×ｎＵ、ｎＬ×２Ｎ、ｎＲ×２Ｎ、又は同様の対称ＰＵサイズでのインター予測とをサポートし得る。ビデオエンコーダ２０及びビデオデコーダ３０は、２Ｎ×ｎＵ、２Ｎ×ｎＤ、ｎＬ×２Ｎ、及びｎＲ×２ＮのＰＵサイズに対する非対称区分をもサポートし得る。幾つかの例では、予測処理ユニット１００は、ＣＵのビデオブロックの辺に直角に接触しない境界に沿って、ＣＵのＰＵの間でＣＵのビデオブロックを区分化するように、幾何学的な区分を実行し得る。
【００６８】
[0079]インター予測ユニット１２１はＣＵの各ＰＵに対してインター予測を実行し得る。インター予測は時間圧縮を実現し得る。ＰＵに対してインター予測を実行するために、動き推定ユニット１２２はＰＵの動き情報を生成し得る。動き補償ユニット１２４は、動き情報と、ＣＵに関連付けられたピクチャ以外のピクチャ（例えば、参照ピクチャ）の復号サンプルと基づくＰＵのための予測ビデオブロックを生成し得る。本開示では、動き補償ユニット１２４によって生成された予測ビデオブロックは、インター予測ビデオブロックと呼ばれることがある。
【００６９】
[0080]スライスは、Ｉスライス、Ｐスライス、又はＢスライスであり得る。動き推定ユニット１２２及び動き補償ユニット１２４は、ＰＵがＩスライス中にあるか、Ｐスライス中にあるか、Ｂスライス中にあるかに応じて、ＣＵのＰＵに対して異なる演算を実行し得る。Ｉスライス中では、全てのＰＵがイントラ予測される。従って、ＰＵがＩスライス中にある場合、動き推定ユニット１２２及び動き補償ユニット１２４は、ＰＵに対してインター予測を実行しない。
【００７０】
[0081]ＰＵがＰスライス中にある場合、ＰＵを含んでいるピクチャは、「リスト０」と呼ばれる参照ピクチャのリストに関連付けられる。リスト０中の参照ピクチャの各々は、他のピクチャのインター予測に使用され得るサンプルを含んでいる。動き推定ユニット１２２が、Ｐスライス中のＰＵに関して動き推定演算を実行するとき、動き推定ユニット１２２は、ＰＵのための参照ブロックについて、リスト０中の参照ピクチャを探索し得る。ＰＵの参照ブロックは、ＰＵのビデオブロック中のサンプルに最も密接に対応するサンプルのセット、例えば、サンプルのブロックであり得る。動き推定ユニット１２２は、様々なメトリックを使用して、参照ピクチャ中のサンプルのセットがどの程度密接にＰＵのビデオブロック中のサンプルに対応するかを決定し得る。例えば、動き推定ユニット１２２は、絶対差分和（ＳＡＤ：sum of absolute difference）、２乗差分和（ＳＳＤ：sum of square difference）、又は他の差分メトリックによって、参照ピクチャ中のサンプルのセットがどの程度密接にＰＵのビデオブロック中のサンプルに対応するかを決定し得る。
【００７１】
[0082]Ｐスライス中のＰＵの参照ブロックを識別した後、動き推定ユニット１２２は、参照ブロックを含んでいる、リスト０中の参照ピクチャを示す参照インデックスと、ＰＵと参照ブロックとの間の空間変位を示す動きベクトルとを生成し得る。様々な例において、動き推定ユニット１２２は動きベクトルを異なる精度に生成し得る。例えば、動き推定ユニット１２２は、１／４サンプル精度、１／８サンプル精度、又は他の分数のサンプル精度で動きベクトルを生成し得る。分数のサンプル精度の場合、参照ブロック値は、参照ピクチャ中の整数位置のサンプル値から補間され得る。動き推定ユニット１２２は、ＰＵの動き情報として、参照インデックスと動きベクトルとを出力し得る。動き補償ユニット１２４は、ＰＵの動き情報によって識別された参照ブロックに基づいて、ＰＵの予測ビデオブロックを生成し得る。
【００７２】
[0083]ＰＵがＢスライス中にある場合、ＰＵを含んでいるピクチャは、「リスト０」及び「リスト１」と呼ばれる参照ピクチャの２つのリストに関連付けられ得る。幾つかの例では、Ｂスライスを含んでいるピクチャは、リスト０とリスト１の組合せである、リストの組合せに関連付けられ得る。
【００７３】
[0084]更に、ＰＵがＢスライス中にある場合、動き推定ユニット１２２は、ＰＵについての単方向予測又は双方向予測を実行し得る。動き推定ユニット１２２が、ＰＵについての単方向予測を実行するとき、動き推定ユニット１２２は、ＰＵのための参照ブロックについて、リスト０又はリスト１の参照ピクチャを探索し得る。動き推定ユニット１２２は、次いで、参照ブロックを含んでいる、リスト０又はリスト１中の参照ピクチャを示す参照インデックスと、ＰＵと参照ブロックとの間の空間変位を示す動きベクトルとを生成し得る。動き推定ユニット１２２は、ＰＵの動き情報として、参照インデックスと、予測方向指標（prediction direction indicator）と、動きベクトルとを出力し得る。予測方向指標は、参照インデックスが、リスト０中の参照ピクチャを示すか、リスト１中の参照ピクチャを示すかを示し得る。動き補償ユニット１２４は、ＰＵの動き情報によって示された参照ブロックに基づいて、ＰＵの予測ビデオブロックを生成し得る。
【００７４】
[0085]動き推定ユニット１２２が、ＰＵについての双方向予測を実行するとき、動き推定ユニット１２２は、ＰＵのための参照ブロックについて、リスト０中の参照ピクチャを探索し得、また、ＰＵのための別の参照ブロックについて、リスト１中の参照ピクチャを探索し得る。動き推定ユニット１２２は、次いで、参照ブロックを含んでいる、リスト０及びリスト１中の参照ピクチャを示す参照インデックスと、参照ブロックとＰＵの間の空間変位を示す動きベクトルとを生成し得る。動き推定ユニット１２２は、ＰＵの動き情報としてＰＵの参照インデックスと動きベクトルとを出力し得る。動き補償ユニット１２４は、ＰＵの動き情報によって示された参照ブロックに基づいて、ＰＵの予測ビデオブロックを生成し得る。
【００７５】
[0086]幾つかの例では、動き推定ユニット１２２は、ＰＵの動き情報のフルセットをエントロピー符号化ユニット１１６に出力しない。そうではなく、動き推定ユニット１２２は、別のＰＵの動き情報を参照して、ＰＵの動き情報を信号伝達（signal）し得る。例えば、動き推定ユニット１２２は、ＰＵの動き情報が、隣接ＰＵの動き情報と十分に類似していると決定し得る。この例では、動き推定ユニット１２２は、ＰＵに関連付けられたシンタックス構造において、ＰＵが隣接ＰＵと同じ動き情報を有することをビデオデコーダ３０に示す値を示し得る。別の例では、動き推定ユニット１２２は、ＰＵに関連付けられたシンタックス構造において、隣接ＰＵと動きベクトル差分（ＭＶＤ：motion vector difference）とを識別し得る。動きベクトル差分は、ＰＵの動きベクトルと、示される隣接ＰＵの動きベクトルとの間の差分を示す。ビデオデコーダ３０は、示される隣接ＰＵの動きベクトルと、動きベクトル差分とを使用して、ＰＵの動きベクトルを決定し得る。第２のＰＵの動き情報を信号伝達するときに第１のＰＵの動き情報を参照することによって、ビデオエンコーダ２０は、より少数のビットを使用して、第２のＰＵの動き情報を信号伝達することが可能であり得る。
【００７６】
[0087]ＣＵに対して符号化演算を実行することの一部として、イントラ予測ユニット１２６は、ＣＵのＰＵに対してイントラ予測を実行し得る。イントラ予測は空間圧縮を実現し得る。イントラ予測ユニット１２６がＰＵに対してイントラ予測を実行するとき、イントラ予測ユニット１２６は、同じピクチャ中の他のＰＵの復号サンプルに基づいて、ＰＵの予測データを生成し得る。ＰＵの予測データは、予測ビデオブロックと様々なシンタックス要素とを含み得る。イントラ予測ユニット１２６は、Ｉスライス、Ｐスライス、及びＢスライス中のＰＵに対してイントラ予測を実行し得る。
【００７７】
[0088]ＰＵに対してイントラ予測を実行するために、イントラ予測ユニット１２６は、複数のイントラ予測モードを使用して、ＰＵの予測データの複数のセットを生成し得る。イントラ予測ユニット１２６が、イントラ予測モードを使用してＰＵの予測データのセットを生成するとき、イントラ予測ユニット１２６は、イントラ予測モードに関連付けられた方向及び／又は勾配で、隣接ＰＵのビデオブロックからＰＵのビデオブロックにわたって、サンプルを延ばし得る。隣接ＰＵは、ＰＵ、ＣＵ、及びツリーブロックについて左から右、上から下の符号化順序を仮定すると、ＰＵの上、右上、左上、又は左にあり得る。イントラ予測ユニット１２６は、ＰＵのサイズに応じて、様々な数のイントラ予測モード、例えば、３３個の方向性イントラ予測モードを使用し得る。
【００７８】
[0089]予測処理ユニット１００は、ＰＵについての、動き補償ユニット１２４によって生成された予測データ、又はＰＵについての、イントラ予測ユニット１２６によって生成された予測データの中から、ＰＵの予測データを選択し得る。幾つかの例では、予測処理ユニット１００は、予測データのセットのレート／歪メトリックに基づいて、ＰＵのための予測データを選択する。
【００７９】
[0090]予測処理ユニット１００が、イントラ予測ユニット１２６によって生成された予測データを選択する場合、予測処理ユニット１００は、ＰＵの予測データを生成するために使用されたイントラ予測モード、例えば、選択されたイントラ予測モードを信号伝達し得る。予測処理ユニット１００は、選択されたイントラ予測モードを様々な方法で信号伝達し得る。例えば、選択されたイントラ予測モードは、隣接ＰＵのイントラ予測モードと同じであることがあり得る。言い換えれば、隣接ＰＵのイントラ予測モードは現在ＰＵに対して最確モードであり得る。従って、予測処理ユニット１００は、選択されたイントラ予測モードが隣接ＰＵのイントラ予測モードと同じであることを示すための、シンタックス要素を生成し得る。
【００８０】
[0091]上記で説明したように、ビデオエンコーダ２０はレイヤ間予測ユニット１２８を含み得る。レイヤ間予測ユニット１２８は、ＨＥＶＣのスケーラブル拡張において利用可能である１つ又は複数の異なるレイヤ（例えば、ベースレイヤ又は参照レイヤ）を使用して、現在ブロック（例えば、ＥＬ中の現在ブロック）を予測するように構成される。そのような予測はレイヤ間予測と呼ばれることがある。レイヤ間予測ユニット１２８は、レイヤ間冗長性を低減するために予測方法を利用し、それによって、コード化効率を改善し、計算資源要求（computational resource requirements）を低減する。レイヤ間予測の幾つかの例としては、レイヤ間イントラ予測、レイヤ間動き予測、及びレイヤ間残差予測がある。レイヤ間イントラ予測は、ベースレイヤ中のコロケートブロック（co-located blocks）の再構成を使用して拡張レイヤ中の現在ブロックを予測する。レイヤ間動き予測は、ベースレイヤの動き情報を使用して拡張レイヤ中の動作を予測する。レイヤ間残差予測は、ベースレイヤの残差を使用して拡張レイヤの残差を予測する。
【００８１】
[0092]予測処理ユニット１００がＣＵのＰＵの予測データを選択した後、残差生成ユニット１０２は、ＣＵのビデオブロックからＣＵのＰＵの予測ビデオブロックを差し引くこと（例えば、マイナス符号によって示される）によって、ＣＵの残差データを生成し得る。ＣＵの残差データは、ＣＵのビデオブロック中のサンプルの異なるサンプル成分に対応する、２Ｄ残差ビデオブロックを含み得る。例えば、残差データは、ＣＵのＰＵの予測ビデオブロック中のサンプルのルミナンス成分と、ＣＵの元のビデオブロック中のサンプルのルミナンス成分との間の差分に対応する、残差ビデオブロックを含み得る。更に、ＣＵの残差データは、ＣＵのＰＵの予測ビデオブロック中のサンプルのクロミナンス成分と、ＣＵの元のビデオブロック中のサンプルのクロミナンス成分との間の差分に対応する、残差ビデオブロックを含み得る。
【００８２】
[0093]予測処理ユニット１００は、４分木区分化を実行して、ＣＵの残差ビデオブロックをサブブロックに区分化し得る。各分割されていない残差ビデオブロックは、ＣＵの異なるＴＵに関連付けられ得る。ＣＵのＴＵに関連付けられた残差ビデオブロックのサイズ及び位置は、ＣＵのＰＵに関連付けられたビデオブロックのサイズ及び位置に基づくことも基づかないこともある。「残差４分木」（ＲＱＴ：residual quad tree）として知られる４分木構造は、残差ビデオブロックの各々に関連付けられたノードを含み得る。ＣＵのＴＵはＲＱＴのリーフノードに対応し得る。
【００８３】
[0094]変換処理ユニット１０４は、ＴＵに関連付けられた残差ビデオブロックに１つ又は複数の変換を適用することによって、ＣＵの各ＴＵのための１つ又は複数の変換係数ブロックを生成し得る。変換係数ブロックの各々は、変換係数の２Ｄ行列であり得る。変換処理ユニット１０４は、ＴＵに関連付けられた残差ビデオブロックに様々な変換を適用し得る。例えば、変換処理ユニット１０４は、離散コサイン変換（ＤＣＴ）、方向性変換、又は概念的に同様の変換を、ＴＵに関連付けられた残差ビデオブロックに適用し得る。
【００８４】
[0095]変換処理ユニット１０４が、ＴＵに関連付けられた変換係数ブロックを生成した後、量子化ユニット１０６は、変換係数ブロック中の変換係数を量子化し得る。量子化ユニット１０６は、ＣＵに関連付けられたＱＰ値に基づいて、ＣＵのＴＵに関連付けられた変換係数ブロックを量子化し得る。
【００８５】
[0096]ビデオエンコーダ２０は、様々な方法でＱＰ値をＣＵに関連付け得る。例えば、ビデオエンコーダ２０は、ＣＵに関連付けられたツリーブロックに対してレート歪分析を実行し得る。レート歪分析では、ビデオエンコーダ２０は、ツリーブロックに対して符号化演算を複数回実行することによって、ツリーブロックの複数のコード化表現を生成し得る。ビデオエンコーダ２０がツリーブロックの異なる符号化表現を生成するとき、ビデオエンコーダ２０は、異なるＱＰ値をＣＵに関連付け得る。ビデオエンコーダ２０は、最小のビットレート及び歪メトリックを有するツリーブロックのコード化表現で所与のＱＰ値がＣＵに関連付けられるとき、所与のＱＰ値がＣＵに関連付けられることを信号伝達し得る。
【００８６】
[0097]逆量子化ユニット１０８及び逆変換ユニット１１０は、それぞれ、変換係数ブロックに逆量子化と逆変換とを適用して、変換係数ブロックから残差ビデオブロックを再構成し得る。再構成ユニット１１２は、再構成された残差ビデオブロックを、予測処理ユニット１００によって生成された１つ又は複数の予測ビデオブロックからの対応するサンプルに追加して、ＴＵに関連付けられた再構成されたビデオブロックを生成し得る。このようにＣＵの各ＴＵのためのビデオブロックを再構成することによって、ビデオエンコーダ２０は、ＣＵのビデオブロックを再構成し得る。
【００８７】
[0098]再構成ユニット１１２がＣＵのビデオブロックを再構成した後、フィルタユニット１１３は、ＣＵに関連付けられたビデオブロックにおけるブロック歪（blocking artifacts）を低減するためにデブロッキング演算を実行し得る。１つ又は複数のデブロッキング演算を実行した後、フィルタユニット１１３は、復号ピクチャバッファ１１４にＣＵの再構成されたビデオブロックを記憶し得る。動き推定ユニット１２２及び動き補償ユニット１２４は、再構成されたビデオブロックを含んでいる参照ピクチャを使用して、後続ピクチャのＰＵに対してインター予測を実行し得る。更に、イントラ予測ユニット１２６は、復号ピクチャバッファ１１４中の再構成されたビデオブロックを使用して、ＣＵと同じピクチャの中の他のＰＵに対してイントラ予測を実行し得る。
【００８８】
[0099]エントロピー符号化ユニット１１６は、ビデオエンコーダ２０の他の機能構成要素からデータを受信し得る。例えば、エントロピー符号化ユニット１１６は、量子化ユニット１０６から変換係数ブロックを受信し得、予測処理ユニット１００からシンタックス要素を受信し得る。エントロピー符号化ユニット１１６がデータを受信するとき、エントロピー符号化ユニット１１６は、１つ又は複数のエントロピー符号化演算を実行して、エントロピー符号化されたデータを生成し得る。例えば、ビデオエンコーダ２０は、ＣＡＶＬＣ演算、ＣＡＢＡＣ演算、変数間（Ｖ２Ｖ：variable-to-variable）レングスコード化演算、シンタックスベースコンテキスト適応型バイナリ算術コード化（ＳＢＡＣ：syntax-based context-adaptive binary arithmetic coding）演算、確率間隔区分エントロピー（ＰＩＰＥ）コード化演算、又は別のタイプのエントロピー符号化演算をデータに対して実行し得る。エントロピー符号化ユニット１１６は、エントロピー符号化されたデータを含むビットストリームを出力し得る。
【００８９】
[0100]データに対してエントロピー符号化演算を実行することの一部として、エントロピー符号化ユニット１１６は、コンテキストモデルを選択し得る。エントロピー符号化ユニット１１６がＣＡＢＡＣ演算を実行している場合、コンテキストモデルは、特定の値を有する特定のビンの確率の推定値を示し得る。ＣＡＢＡＣのコンテキストでは、「ビン」という用語は、シンタックス要素の２値化されたバージョンのビットを指すために使用される。
【００９０】
マルチレイヤビデオエンコーダ
[0101]図２Ｂは、本開示で説明する態様による技法を実装し得る（単にビデオエンコーダ２３とも呼ばれる）マルチレイヤビデオエンコーダ２３の一例を示すブロック図である。ビデオエンコーダ２３は、ＳＨＶＣ及びＭＶ−ＨＥＶＣの場合など、マルチレイヤビデオフレームを処理するように構成され得る。更に、ビデオエンコーダ２３は、本開示の技法のいずれか又は全てを実行するように構成され得る。
【００９１】
[0102]ビデオエンコーダ２３はビデオエンコーダ２０Ａとビデオエンコーダ２０Ｂとを含み、それらの各々はビデオエンコーダ２０として構成され得、ビデオエンコーダ２０に関して上記で説明した機能を実行し得る。更に、参照番号の再利用によって示されるように、ビデオエンコーダ２０Ａ及び２０Ｂは、ビデオエンコーダ２０としてシステムとサブシステムとのうちの少なくとも幾つかを含み得る。ビデオエンコーダ２３は、２つのビデオエンコーダ２０Ａ及び２０Ｂを含むものとして示されているが、ビデオエンコーダ２３は、そのようなものとして限定されず、任意の数のビデオエンコーダ２０レイヤを含み得る。幾つかの実施形態では、ビデオエンコーダ２３はアクセス単位中の各ピクチャ又はフレームについてビデオエンコーダ２０を含み得る。例えば、５つのピクチャを含むアクセス単位は、５つのエンコーダレイヤを含むビデオエンコーダによって処理又は符号化され得る。幾つかの実施形態では、ビデオエンコーダ２３は、アクセス単位中のフレームよりも多くのエンコーダレイヤを含み得る。幾つかのそのような場合では、ビデオエンコーダレイヤの幾つかは、幾つかのアクセス単位を処理するときに非アクティブであり得る。
【００９２】
[0103]ビデオエンコーダ２０Ａ及び２０Ｂに加えて、ビデオエンコーダ２３はリサンプリングユニット９０を含み得る。リサンプリングユニット９０は、場合によっては、例えば、拡張レイヤを作成するために、受信されたビデオフレームのベースレイヤをアップサンプリングし得る。リサンプリングユニット９０は、フレームの受信されたベースレイヤに関連付けられた特定の情報をアップサンプリングするが、他の情報をアップサンプリングしないことがある。例えば、リサンプリングユニット９０は、ベースレイヤの空間サイズ又は画素の数をアップサンプリングし得るが、スライスの数又はピクチャ順序カウントは一定のままであり得る。場合によっては、リサンプリングユニット９０は、受信されたビデオを処理しないことがあるか、及び／又は随意であり得る。例えば、場合によっては、予測処理ユニット１００はアップサンプリングを実行し得る。幾つかの実施形態では、リサンプリングユニット９０は、レイヤをアップサンプリングすることと、スライス境界ルール及び／又はラスタ走査ルールのセットに準拠するために１つ又は複数のスライスを再編成、再定義、変更、又は調整することとを行うように構成される。アクセス単位中のベースレイヤ又は下位レイヤをアップサンプリングするものとして主に説明したが、場合によっては、リサンプリングユニット９０はレイヤをダウンサンプリングし得る。例えば、ビデオのストリーミング中に帯域幅が減少した場合、フレームは、アップサンプリングされるのではなく、ダウンサンプリングされ得る。
【００９３】
[0104]リサンプリングユニット９０は、下位レイヤエンコーダ（例えば、ビデオエンコーダ２０Ａ）の復号ピクチャバッファ１１４からピクチャ又はフレーム（又はピクチャに関連付けられたピクチャ情報）を受信し、ピクチャ（又は受信されたピクチャ情報）をアップサンプリングするように構成され得る。このアップサンプリングされたピクチャは、次いで、下位レイヤエンコーダと同じアクセス単位中のピクチャを符号化するように構成された上位レイヤエンコーダ（例えば、ビデオエンコーダ２０Ｂ）の予測処理ユニット１００に与えられ得る。場合によっては、上位レイヤエンコーダは、下位レイヤエンコーダから削除された１つのレイヤである。他の場合には、図２Ｂのレイヤ０ビデオエンコーダとレイヤ１エンコーダとの間に１つ又は複数の上位レイヤエンコーダがあり得る。
【００９４】
[0105]場合によっては、リサンプリングユニット９０は省略又はバイパスされ得る。そのような場合、ビデオエンコーダ２０Ａの復号ピクチャバッファ１１４からのピクチャは、直接、又は少なくともリサンプリングユニット９０に与えられることなしに、ビデオエンコーダ２０Ｂの予測処理ユニット１００に与えられ得る。例えば、ビデオエンコーダ２０Ｂに与えられたビデオデータと、ビデオエンコーダ２０Ａの復号ピクチャバッファ１１４からの参照ピクチャとが同じサイズ又は解像度である場合、参照ピクチャは、リサンプリングなしにビデオエンコーダ２０Ｂに与えられ得る。
【００９５】
[0106]幾つかの実施形態では、ビデオエンコーダ２３は、ビデオエンコーダ２０Ａにビデオデータを与える前に、ダウンサンプリングユニット９４を使用して下位レイヤエンコーダに与えられるべきビデオデータをダウンサンプリングする。代替的に、ダウンサンプリングユニット９４は、ビデオデータをアップサンプリング又はダウンサンプリングすることが可能なリサンプリングユニット９０であり得る。また他の実施形態では、ダウンサンプリングユニット９４は省略され得る。
【００９６】
[0107]図２Ｂに示されているように、ビデオエンコーダ２３は、マルチプレクサ（又はｍｕｘ）９８を更に含み得る。ｍｕｘ９８は、ビデオエンコーダ２３から合成ビットストリームを出力することができる。合成ビットストリームは、ビデオエンコーダ２０Ａ及び２０Ｂの各々からビットストリームを取り、所与の時間において出力されるビットストリームを交替することによって作成され得る。場合によっては、２つの（又は、３つ以上のビデオエンコーダレイヤの場合には、より多くの）ビットストリームからのビットが一度に１ビットずつ交替され得るが、多くの場合、ビットストリームは別様に合成され得る。例えば、出力ビットストリームは、選択されたビットストリームを一度に１ブロックずつ交替することによって作成され得る。別の例では、出力ビットストリームは、ビデオエンコーダ２０Ａ及び２０Ｂの各々からブロックの非１：１比（non-1:1 ratio）を出力することによって作成され得る。例えば、ビデオエンコーダ２０Ａから出力された各ブロックについて、２つのブロックがビデオエンコーダ２０Ｂから出力され得る。幾つかの実施形態では、ｍｕｘ９８からの出力ストリームはプリプログラムされ得る。他の実施形態では、ｍｕｘ９８は、発信源機器１２を含む発信源機器上のプロセッサからなど、ビデオエンコーダ２３の外部のシステムから受信された制御信号に基づいて、ビデオエンコーダ２０Ａ、２０Ｂからのビットストリームを合成し得る。制御信号は、ビデオ発信源１８からのビデオの解像度又はビットレートに基づいて、リンク１６の帯域幅に基づいて、ユーザに関連付けられたサブスクリプション（例えば、有料サブスクリプション対無料サブスクリプション）に基づいて、又はビデオエンコーダ２３から望まれる解像度出力を決定するための他のファクタに基づいて生成され得る。
【００９７】
ビデオデコーダ
[0108]図３Ａは、本開示で説明する態様による技法を実装し得るビデオデコーダ３０の一例を示すブロック図である。ビデオデコーダ３０は、ＨＥＶＣの場合など、ビデオフレームの単一のレイヤを処理するように構成され得る。更に、ビデオデコーダ３０は、本開示の技法のいずれか又は全てを実行するように構成され得る。幾つかの例では、本開示で説明する技法は、ビデオデコーダ３０の様々な構成要素間で共有され得る。幾つかの例では、追加又は代替として、プロセッサ（図示せず）が、本開示で説明する技法のいずれか又は全てを実行するように構成され得る。
【００９８】
[0109]説明の目的で、本開示では、ＨＥＶＣコード化のコンテキストにおいてビデオデコーダ３０について説明する。しかしながら、本開示の技法は、他のコード化規格又は方法にも適用可能であり得る。図３Ａに示された例はシングルレイヤコーデックのためのものである。しかしながら、図３Ｂに関して更に説明するように、ビデオデコーダ３０の一部又は全部はマルチレイヤコーデックの処理のために複製され得る。
【００９９】
[0110]図３Ａの例では、ビデオデコーダ３０は複数の機能構成要素を含む。ビデオデコーダ３０の機能構成要素は、エントロピー復号ユニット１５０と、予測処理ユニット１５２と、逆量子化ユニット１５４と、逆変換ユニット１５６と、再構成ユニット１５８と、フィルタユニット１５９と、復号ピクチャバッファ１６０とを含む。予測処理ユニット１５２は、動き補償ユニット１６２と、イントラ予測ユニット１６４と、レイヤ間予測ユニット１６６とを含む。幾つかの例では、ビデオデコーダ３０は、図２Ａのビデオエンコーダ２０に関して説明された符号化経路とは全般に逆の復号経路を実行し得る。他の例では、ビデオデコーダ３０は、より多数の、より少数の、又は異なる機能構成要素を含み得る。
【０１００】
[0111]ビデオデコーダ３０は、符号化ビデオデータを備えるビットストリームを受信し得る。ビットストリームは複数のシンタックス要素を含み得る。ビデオデコーダ３０がビットストリームを受信したとき、エントロピー復号ユニット１５０は、ビットストリームに対して構文解析演算を実行し得る。ビットストリームに対して構文解析演算を実行した結果として、エントロピー復号ユニット１５０は、ビットストリームからシンタックス要素を抽出し得る。構文解析演算を実行することの一部として、エントロピー復号ユニット１５０は、ビットストリーム中のエントロピー符号化されたシンタックス要素をエントロピー復号し得る。予測処理ユニット１５２、逆量子化ユニット１５４、逆変換ユニット１５６、再構成ユニット１５８、及びフィルタユニット１５９は、ビットストリームから抽出されたシンタックス要素に基づいて、復号ビデオデータを生成する再構成演算を実行し得る。
【０１０１】
[0112]上記で説明したように、ビットストリームは、一連のＮＡＬ単位を備え得る。ビットストリームのＮＡＬ単位は、ビデオパラメータセットＮＡＬ単位、シーケンスパラメータセットＮＡＬ単位、ピクチャパラメータセットＮＡＬ単位、ＳＥＩ  ＮＡＬ単位などを含み得る。ビットストリームに対して構文解析演算を実行することの一部として、エントロピー復号ユニット１５０は、シーケンスパラメータセットＮＡＬ単位からのシーケンスパラメータセット、ピクチャパラメータセットＮＡＬ単位からのピクチャパラメータセット、ＳＥＩ  ＮＡＬ単位からのＳＥＩデータなどを抽出し、エントロピー復号する、構文解析演算を実行し得る。
【０１０２】
[0113]更に、ビットストリームのＮＡＬ単位はコード化スライスＮＡＬ単位を含み得る。ビットストリームに対して構文解析演算を実行することの一部として、エントロピー復号ユニット１５０は、コード化スライスＮＡＬ単位からコード化スライスを抽出し、エントロピー復号する、構文解析演算を実行し得る。コード化スライスの各々は、スライスヘッダとスライスデータとを含み得る。スライスヘッダは、スライスに関するシンタックス要素を含んでいることがある。スライスヘッダ中のシンタックス要素は、スライスを含んでいるピクチャに関連付けられたピクチャパラメータセットを識別するシンタックス要素を含み得る。エントロピー復号ユニット１５０は、コード化されたスライスヘッダ中のシンタックス要素に対して、ＣＡＢＡＣ復号演算などのエントロピー復号演算を実行して、スライスヘッダを再構成し得る。
【０１０３】
[0114]コード化スライスのＮＡＬ単位からスライスデータを抽出することの一部として、エントロピー復号ユニット１５０は、スライスデータ中のコード化ＣＵからシンタックス要素を抽出する構文解析演算を実行し得る。抽出されたシンタックス要素は、変換係数ブロックに関連付けられたシンタックス要素を含み得る。エントロピー復号ユニット１５０は、次いで、シンタックス要素のうちの幾つかに対してＣＡＢＡＣ復号演算を実行し得る。
【０１０４】
[0115]エントロピー復号ユニット１５０が区分化されていないＣＵに対して構文解析演算を実行した後、ビデオデコーダ３０は、区分化されていないＣＵに対して再構成演算を実行し得る。区分化されていないＣＵに対して再構成演算を実行するために、ビデオデコーダ３０はＣＵの各ＴＵに対して再構成演算を実行し得る。ＣＵの各ＴＵについて再構成演算を実行することによって、ビデオデコーダ３０は、ＣＵに関連付けられた残差ビデオブロックを再構成し得る。
【０１０５】
[0116]ＴＵに対して再構成演算を実行することの一部として、逆量子化ユニット１５４は、ＴＵに関連付けられた変換係数ブロックを逆の量子化（inverse quantize）、例えば、逆量子化（de-quantize）し得る。逆量子化ユニット１５４は、ＨＥＶＣ用に提案された、又はＨ．２６４復号規格によって定義された逆量子化プロセスと同様の方式で、変換係数ブロックを逆量子化し得る。逆量子化ユニット１５４は、量子化の程度を決定し、同様に、逆量子化ユニット１５４が適用すべき逆量子化の程度を決定するために、変換係数ブロックのＣＵのためにビデオエンコーダ２０によって計算される量子化パラメータＱＰを使用し得る。
【０１０６】
[0117]逆量子化ユニット１５４が変換係数ブロックを逆量子化した後、逆変換ユニット１５６は、変換係数ブロックに関連付けられたＴＵのための残差ビデオブロックを生成し得る。逆変換ユニット１５６は、ＴＵのための残差ビデオブロックを生成するために、変換係数ブロックに逆変換を適用し得る。例えば、逆変換ユニット１５６は、変換係数ブロックに、逆ＤＣＴ、逆整数変換、逆カルーネンレーベ変換（ＫＬＴ：Karhunen-Loeve transform）、逆回転変換、逆方向変換、又は別の逆変換を適用し得る。幾つかの例では、逆変換ユニット１５６は、ビデオエンコーダ２０からの信号伝達に基づいて、変換係数ブロックに適用すべき逆変換を決定し得る。そのような例では、逆変換ユニット１５６は、変換係数ブロックに関連付けられたツリーブロックの４分木のルートノードにおいて信号伝達された変換に基づいて、逆変換を決定し得る。他の例では、逆変換ユニット１５６は、ブロックサイズ、コード化モードなど、１つ又は複数のコード化特性から逆変換を推論し得る。幾つかの例では、逆変換ユニット１５６はカスケード逆変換を適用し得る。
【０１０７】
[0118]幾つかの例では、動き補償ユニット１６２は、補間フィルタに基づく補間を実行することによって、ＰＵの予測ビデオブロックを改良し得る。サブサンプル精度をもつ動き補償のために使用されるべき補間フィルタのための識別子が、シンタックス要素中に含まれ得る。動き補償ユニット１６２は、ＰＵの予測ビデオブロックの生成中にビデオエンコーダ２０によって使用された同じ補間フィルタを使用して、参照ブロックのサブ整数サンプルについての補間値を計算し得る。動き補償ユニット１６２は、受信されたシンタックス情報に従って、ビデオエンコーダ２０によって使用された補間フィルタを決定し、その補間フィルタを使用して予測ビデオブロックを生成し得る。
【０１０８】
[0119]ＰＵが、イントラ予測を使用して符号化される場合、イントラ予測ユニット１６４は、ＰＵのための予測ビデオブロックを生成するためにイントラ予測を実行し得る。例えば、イントラ予測ユニット１６４は、ビットストリーム中のシンタックス要素に基づいて、ＰＵのためのイントラ予測モードを決定し得る。ビットストリームは、ＰＵのイントラ予測モードを決定するためにイントラ予測ユニット１６４が使用し得るシンタックス要素を含み得る。
【０１０９】
[0120]幾つかの事例では、シンタックス要素は、イントラ予測ユニット１６４が別のＰＵのイントラ予測モードを使用して現在ＰＵのイントラ予測モードを決定するべきであることを示し得る。例えば、現在ＰＵのイントラ予測モードは隣接ＰＵのイントラ予測モードと同じであることがあり得る。言い換えれば、隣接ＰＵのイントラ予測モードは現在ＰＵに対して最確モードであり得る。従って、この例では、ビットストリームは、ＰＵのイントラ予測モードが隣接ＰＵのイントラ予測モードと同じであることを示す、小さいシンタックス要素を含み得る。イントラ予測ユニット１６４は、次いで、イントラ予測モードを使用して、空間的に隣接するＰＵのビデオブロックに基づいて、ＰＵの予測データ（例えば、予測サンプル）を生成し得る。
【０１１０】
[0121]上記で説明したように、ビデオデコーダ３０もレイヤ間予測ユニット１６６を含み得る。レイヤ間予測ユニット１６６は、ＨＥＶＣのスケーラブル拡張において利用可能である１つ又は複数の異なるレイヤ（例えば、ベースレイヤ又は参照レイヤ）を使用して、現在ブロック（例えば、拡張レイヤ中の現在ブロック）を予測するように構成される。そのような予測はレイヤ間予測と呼ばれることがある。レイヤ間予測ユニット１６６は、レイヤ間冗長性を低減するために予測方法を利用し、それによって、コード化効率を改善し、計算資源要求を低減する。レイヤ間予測の幾つかの例としては、レイヤ間イントラ予測、レイヤ間動き予測、及びレイヤ間残差予測がある。レイヤ間イントラ予測は、ベースレイヤ中のコロケートブロックの再構成を使用して拡張レイヤ中の現在ブロックを予測する。レイヤ間動き予測は、ベースレイヤの動き情報を使用して拡張レイヤ中の動作を予測する。レイヤ間残差予測は、ベースレイヤの残差を使用して拡張レイヤの残差を予測する。レイヤ間予測方式の各々について、より詳細に以下で説明する。
【０１１１】
[0122]再構成ユニット１５８は、適用可能なとき、ＣＵのＴＵに関連付けられた残差ビデオブロックとＣＵのＰＵの予測ビデオブロックとを使用して、即ち、イントラ予測データ又はインター予測データのいずれかを使用して、ＣＵのビデオブロックを再構成し得る。従って、ビデオデコーダ３０は、ビットストリーム中のシンタックス要素に基づいて、予測ビデオブロックと残差ビデオブロックとを生成し得、予測ビデオブロックと残差ビデオブロックとに基づいて、ビデオブロックを生成し得る。
【０１１２】
[0123]再構成ユニット１５８がＣＵのビデオブロックを再構成した後、フィルタユニット１５９は、デブロッキング演算を実行して、ＣＵに関連付けられたブロック歪を低減し得る。フィルタユニット１５９が、ＣＵに関連付けられたブロック歪を低減するためにデブロッキング演算を実行した後、ビデオデコーダ３０はＣＵのビデオブロックを復号ピクチャバッファ１６０に記憶し得る。復号ピクチャバッファ１６０は、後続の動き補償、イントラ予測、及び図１Ａ又は図１Ｂの表示装置３２などの表示装置上での提示のために、参照ピクチャを与え得る。例えば、ビデオデコーダ３０は、復号ピクチャバッファ１６０中のビデオブロックに基づいて、他のＣＵのＰＵに対してイントラ予測演算又はインター予測演算を実行し得る。
【０１１３】
マルチレイヤデコーダ
[0124]図３Ｂは、本開示で説明する態様による技法を実装し得る（単にビデオデコーダ３３とも呼ばれる）マルチレイヤビデオデコーダ３３の一例を示すブロック図である。ビデオデコーダ３３は、ＳＨＶＣ及びマルチビューコード化の場合など、マルチレイヤビデオフレームを処理するように構成され得る。更に、ビデオデコーダ３３は、本開示の技法のいずれか又は全てを実行するように構成され得る。
【０１１４】
[0125]ビデオデコーダ３３はビデオデコーダ３０Ａとビデオデコーダ３０Ｂとを含み、それらの各々はビデオデコーダ３０として構成され得、ビデオデコーダ３０に関して上記で説明した機能を実行し得る。更に、参照番号の再利用によって示されるように、ビデオデコーダ３０Ａ及び３０Ｂは、ビデオデコーダ３０としてシステムとサブシステムとのうちの少なくとも幾つかを含み得る。ビデオデコーダ３３は、２つのビデオデコーダ３０Ａ及び３０Ｂを含むものとして示されているが、ビデオデコーダ３３は、そのようなものとして限定されず、任意の数のビデオデコーダ３０レイヤを含み得る。幾つかの実施形態では、ビデオデコーダ３３はアクセス単位中の各ピクチャ又はフレームについてビデオデコーダ３０を含み得る。例えば、５つのピクチャを含むアクセス単位は、５つのデコーダレイヤを含むビデオデコーダによって処理又は復号され得る。幾つかの実施形態では、ビデオデコーダ３３は、アクセス単位中のフレームよりも多くのデコーダレイヤを含み得る。幾つかのそのような場合では、ビデオデコーダレイヤの幾つかは、幾つかのアクセス単位を処理するときに非アクティブであり得る。
【０１１５】
[0126]ビデオデコーダ３０Ａ及び３０Ｂに加えて、ビデオデコーダ３３はアップサンプリングユニット９２を含み得る。幾つかの実施形態では、アップサンプリングユニット９２は、フレーム又はアクセス単位のための参照ピクチャリストに追加されるべき拡張レイヤを作成するために、受信されたビデオフレームのベースレイヤをアップサンプリングし得る。この拡張レイヤは復号ピクチャバッファ１６０に記憶され得る。幾つかの実施形態では、アップサンプリングユニット９２は、図２Ａのリサンプリングユニット９０に関して説明した実施形態の一部又は全部を含むことができる。幾つかの実施形態では、アップサンプリングユニット９２は、レイヤをアップサンプリングすることと、スライス境界ルール及び／又はラスタ走査ルールのセットに準拠するために１つ又は複数のスライスを再編成、再定義、変更、又は調整することとを行うように構成される。場合によっては、アップサンプリングユニット９２は、受信されたビデオフレームのレイヤをアップサンプリング及び／又はダウンサンプリングするように構成されたリサンプリングユニットであり得る。
【０１１６】
[0127]アップサンプリングユニット９２は、下位レイヤデコーダ（例えば、ビデオデコーダ３０Ａ）の復号ピクチャバッファ１６０からピクチャ又はフレーム（又はピクチャに関連付けられたピクチャ情報）を受信し、ピクチャ（又は受信されたピクチャ情報）をアップサンプリングするように構成され得る。このアップサンプリングされたピクチャは、次いで、下位レイヤデコーダと同じアクセス単位中のピクチャを復号するように構成された上位レイヤデコーダ（例えば、ビデオデコーダ３０Ｂ）の予測処理ユニット１５２に与えられ得る。場合によっては、上位レイヤデコーダは、下位レイヤデコーダから削除された１つのレイヤである。他の場合には、図３Ｂのレイヤ０デコーダとレイヤ１デコーダとの間に１つ又は複数の上位レイヤデコーダがあり得る。
【０１１７】
[0128]場合によっては、アップサンプリングユニット９２は省略又はバイパスされ得る。そのような場合、ビデオデコーダ３０Ａの復号ピクチャバッファ１６０からのピクチャは、直接又は少なくともアップサンプリングユニット９２に与えられることなしに、ビデオデコーダ３０Ｂの予測処理ユニット１５２に与えられ得る。例えば、ビデオデコーダ３０Ｂに与えられたビデオデータと、ビデオデコーダ３０Ａの復号ピクチャバッファ１６０からの参照ピクチャとが同じサイズ又は解像度である場合、参照ピクチャは、アップサンプリングなしにビデオデコーダ３０Ｂに与えられ得る。更に、幾つかの実施形態では、アップサンプリングユニット９２は、ビデオデコーダ３０Ａの復号ピクチャバッファ１６０から受信された参照ピクチャをアップサンプリング又はダウンサンプリングするように構成されたリサンプリングユニット９０であり得る。
【０１１８】
[0129]図３Ｂに示されているように、ビデオデコーダ３３は、デマルチプレクサ（又はｄｅｍｕｘ）９９を更に含み得る。ｄｅｍｕｘ９９は符号化ビデオビットストリームを複数のビットストリームに分割することができ、ｄｅｍｕｘ９９によって出力された各ビットストリームは異なるビデオデコーダ３０Ａ及び３０Ｂに与えられる。複数のビットストリームは、ビットストリームを受信することによって作成され得、ビデオデコーダ３０Ａ及び３０Ｂの各々は、所与の時間においてビットストリームの一部分を受信する。場合によっては、ｄｅｍｕｘ９９において受信されるビットストリームからのビットは、ビデオデコーダの各々（例えば、図３Ｂの例ではビデオデコーダ３０Ａ及び３０Ｂ）の間で一度に１ビットずつ交替され得るが、多くの場合、ビットストリームは別様に分割される。例えば、ビットストリームは、一度に１ブロックずつビットストリームを受信するビデオデコーダを交替することによって分割され得る。別の例では、ビットストリームは、ブロックの非１：１比によって、ビデオデコーダ３０Ａ及び３０Ｂの各々に分割され得る。例えば、２つのブロックは、ビデオデコーダ３０Ａに与えられる各ブロックについてビデオデコーダ３０Ｂに与えられ得る。幾つかの実施形態では、ｄｅｍｕｘ９９によるビットストリームの分割はプリプログラムされ得る。他の実施形態では、ｄｅｍｕｘ９９は、宛先モジュール１４を含む宛先機器上のプロセッサからなど、ビデオデコーダ３３の外部のシステムから受信された制御信号に基づいてビットストリームを分割し得る。制御信号は、入力インターフェース２８からのビデオの解像度又はビットレートに基づいて、リンク１６の帯域幅に基づいて、ユーザに関連付けられたサブスクリプション（例えば、有料サブスクリプション対無料サブスクリプション）に基づいて、又はビデオデコーダ３３によって取得可能な解像度を決定するための他のファクタに基づいて生成され得る。
【０１１９】
イントラランダムアクセスポイント（ＩＲＡＰ）ピクチャ
[0130]幾つかのビデオコード化方式は様々なランダムアクセスポイントを、ビットストリームが、ビットストリームの中でそれらのランダムアクセスポイントに先行するいかなるピクチャも復号する必要なしに、それらのランダムアクセスポイントのいずれかから始めて復号され得るように、ビットストリーム全体にわたって提供し得る。そのようなビデオコード化方式では、ランダムアクセススキップリーディング（ＲＡＳＬ：random access skipped leading）ピクチャを除いて、復号順序においてランダムアクセスポイントに後続する全てのピクチャは、ランダムアクセスポイントに先行するいかなるピクチャも使用することなしに正確に復号され得る。例えば、ビットストリームの一部分が送信の間又は復号の間に失われても、デコーダは、次のランダムアクセスポイントから始めてビットストリームの復号を再開することができる。ランダムアクセスのサポートは、例えば、動的なストリーミングサービス、シーク動作、チャネル切替えなどを容易にし得る。
【０１２０】
[0131]幾つかのコード化方式では、そのようなランダムアクセスポイントは、イントラランダムアクセスポイント（ＩＲＡＰ）ピクチャと呼ばれるピクチャによって提供され得る。例えば、アクセス単位（「ａｕＡ」）中に含まれている拡張レイヤ（「ｌａｙｅｒＡ」）中の拡張レイヤＩＲＡＰピクチャに関連付けられたランダムアクセスポイントは、各参照レイヤ（「ｌａｙｅｒＢ」）中にあり、復号順序においてａｕＡに先行するアクセス単位（「ａｕＢ」）中に含まれているピクチャに関連付けられたランダムアクセスポイント（又は、ａｕＡ中に含まれているランダムアクセスポイント）を有するｌａｙｅｒＡのｌａｙｅｒＢ（例えば、ｌａｙｅｒＡを予測するために使用されるレイヤである参照レイヤ）に関して復号順序においてａｕＡに後続する（ａｕＡ中に位置するピクチャを含む）ｌａｙｅｒＡ中のピクチャが、ａｕＡに先行するｌａｙｅｒＡ中のいかなるピクチャも復号する必要なしに正確に復号可能であるように、レイヤ特有のランダムアクセスを提供し得る。
【０１２１】
[0132]ＩＲＡＰピクチャは、イントラ予測を使用してコード化され（例えば、他のピクチャを参照することなしにコード化され）及び／又はレイヤ間予測を使用してコード化され得、例えば、瞬時デコーダリフレッシュ（ＩＤＲ：instantaneous decoder refresh）ピクチャと、クリーンランダムアクセス（ＣＲＡ：clean random access）ピクチャと、ブロークンリンクアクセス（ＢＬＡ：broken link access）ピクチャとを含み得る。ビットストリーム中にＩＤＲピクチャがあるとき、復号順序においてＩＤＲピクチャに先行する全てのピクチャは、ＩＤＲピクチャに後続するピクチャによる予測のために使用されない。ビットストリーム中にＣＲＡピクチャがあるとき、ＣＲＡピクチャに後続するピクチャは、復号順序においてＣＲＡピクチャに先行するピクチャを予測のために使用することも、使用しないこともある。復号順序においてＣＲＡピクチャに後続するが、復号順序においてＣＲＡピクチャに先行するピクチャを使用するピクチャは、ＲＡＳＬピクチャと呼ばれることがある。復号順序においてＩＲＡＰピクチャに後続し、出力順序においてＩＲＡＰピクチャに先行することができる別のタイプのピクチャは、復号順序においてＩＲＡＰピクチャに先行するいかなるピクチャへの参照も含んでいないことがあるランダムアクセス復号可能リーディング（ＲＡＤＬ：random access decodable leading）ピクチャである。ＣＲＡピクチャに先行するピクチャが利用可能でない場合、ＲＡＳＬピクチャはデコーダによって廃棄され得る。ＢＬＡピクチャは、（例えば、２つのビットストリームが互いにスプライスされ、ＢＬＡピクチャが復号順序において第２のビットストリームの最初のピクチャであるので）ＢＬＡピクチャに先行するピクチャがデコーダにとって利用可能でないことがあることを、デコーダに示す。ＩＲＡＰピクチャである（例えば、０のレイヤＩＤ値を有する）ベースレイヤピクチャを含んでいるアクセス単位（例えば、複数のレイヤにわたって同じ出力時間に関連付けられた全てのコード化ピクチャからなるピクチャのグループ）は、ＩＲＡＰアクセス単位と呼ばれることがある。
【０１２２】
ビットストリーム終端ＮＡＬ単位
[0133]図４は、一実施形態による、マルチレイヤビットストリームのアクセス単位を示すブロック図である。図４に示されているように、アクセス単位４００は、第１のビデオコード化レイヤ（ＶＣＬ）ＮＡＬ単位４６０を含み、１つ又は複数の他の随意のＮＡＬ単位を含み得る。例えば、アクセス単位４００は、アクセス単位デリミタＮＡＬ単位４１０、ＶＰＳ  ＮＡＬ単位４２０、ＳＰＳ  ＮＡＬ単位４３０、ＰＰＳ  ＮＡＬ単位４４０、プレフィックスＳＥＩ  ＮＡＬ単位４５０、追加のコード化ピクチャ又は非ＶＣＬ  ＮＡＬ単位４７０、及びＥｏＢ  ＮＡＬ単位４８０の各々の１つ又は複数を含み得る。リストされた随意のＮＡＬ単位の各々は、実装形態の態様に応じて含まれ得、他のシンタックス構造も、アクセス単位を符号化又は復号するために採用されるビデオコード化方式に応じて含まれ得る。
【０１２３】
[0134]ＨＥＶＣ方式によれば、アクセス単位４００中にＥｏＢ  ＮＡＬ単位４８０が存在するとき、次のアクセス単位は、コード化ビットストリームがＨＥＶＣ方式に準拠するために、ＩＤＲアクセス単位、ＢＬＡアクセス単位、又はＣＲＡアクセス単位であり得るＩＲＡＰアクセス単位であるものとする。従って、アクセス単位中に含まれるとき、ＥｏＢ  ＮＡＬ単位４８０は、後続のアクセス単位がＩＲＡＰアクセス単位であることを示す。
【０１２４】
[0135]従来のシングルレイヤコード化方式（例えば、ＨＥＶＣバージョン１）では、各アクセス単位は、単一のピクチャに一意に対応する。各アクセス単位が単一のピクチャを含んでいるので、「アクセス単位」及び「ピクチャ」という用語は、例えば、リカバリポイントＳＥＩメッセージの利用に関するシングルレイヤコード化方式のコンテキストにおいて互換的に使用されることが可能であった。しかしながら、マルチレイヤコード化方式のアクセス単位は、ビットストリームの各レイヤについて別個のピクチャを含み得る。言い換えれば、マルチレイヤビットストリームでは、単一のアクセス単位が、複数のピクチャを含んでいる（即ち、含む又は備える）ことがある。ＭＶ−ＨＥＶＣ及びＳＨＶＣなど、幾つかのマルチレイヤコード化実装形態では、各ＮＡＬ単位は、ＮＡＬ単位が属するレイヤを識別するレイヤ識別子を含む。従って、ＥｏＢ  ＮＡＬ単位のレイヤは、ＥｏＢ  ＮＡＬ単位のレイヤ識別子の値に基づいて定義される。従来のシングルレイヤコード化方式では、全てのＮＡＬ単位のためのレイヤ識別子が、同じレイヤ、即ち、レイヤ０に抑制される。言い換えれば、従来のシングルレイヤコード化方式のＮＡＬ単位は全て、同じレイヤに属するものとして識別される。しかしながら、マルチレイヤコード化方式では、ＥｏＢ  ＮＡＬ単位に関連付けられたレイヤ識別子を含む、ＮＡＬ単位内に含まれるレイヤ識別子に対してそのような制限はない。
【０１２５】
[0136]マルチレイヤコード化方式におけるＥｏＢ  ＮＡＬ単位のレイヤ識別子の無制限性質により、ＥｏＢ  ＮＡＬ単位が０以外の値をもつレイヤ識別子を有するとき、幾つかの望ましくない復号エラーが発生することがある。一例として、コード化ビットストリームが、ベースレイヤ（ＢＬ）と拡張レイヤ（ＥＬ）とを含み得る。エンコーダとデコーダとの間の帯域幅が制限されるか又はあるレベルを下回るとき、拡張レイヤ（又はレイヤ０以外のレイヤ識別子を有する他のレイヤ）は、帯域幅を温存するためにビットストリームからドロップされる（又は不正確に処理される）ことがある。これは、例えば、ビデオエンコーダ（例えば、ビデオエンコーダ２０又はビデオエンコーダ２３）とビデオデコーダ（例えば、ビデオデコーダ３０又はビデオデコーダ３３）との間の帯域幅が限定されるときに生じることがある。この状況では、ＥｏＢ  ＮＡＬ単位が１（「１」）の値をもつレイヤ識別子を有する、即ち、拡張レイヤ（ＥＬ）中にＥｏＢ  ＮＡＬ単位が含まれている場合、ＥｏＢ  ＮＡＬ単位は、ビットストリームからドロップされ、デコーダによって受信されない。
【０１２６】
[0137]ＥｏＢ  ＮＡＬ単位内に含まれている情報に依拠する、コード化方式の幾つかの機能がある。従って、ＥｏＢ  ＮＡＬ単位がビットストリームからドロップされるとき、これらの機能は予想されるように機能しない。一例では、デコーダは、ＥｏＢ  ＮＡＬ単位がＣＲＡアクセス単位の直前に存在するか否かに基づいて、クリーンランダムアクセス（ＣＲＡ）アクセス単位を含むビットストリームを異なる方法で復号し得る。従って、ＥｏＢ  ＮＡＬ単位が拡張レイヤからドロップされる場合、後続のＣＲＡアクセス単位の復号は、予想されるように実行されない。同様に、他の復号機能が、適切な復号のためにＥｏＢ  ＮＡＬ単位の存在に依拠し、従って、ＥｏＢ  ＮＡＬ単位が、レイヤ０以外のレイヤを示すレイヤ識別子値を有するとき、ＥｏＢ  ＮＡＬ単位は、それがベースレイヤ以外のレイヤ中に含まれるので、ドロップされることがあり、デコーダがビットストリームを適切に復号することが可能でない可能性がある。
【０１２７】
[0138]更に、マルチレイヤコード化規格は、ＥｏＢ  ＮＡＬ単位が０以外の値をもつレイヤ識別子を有することを可能にするための追加の機能を定義しない。従って、本開示の少なくとも１つの実施形態では、０のレイヤ識別子を有するように全てのＥｏＢ  ＮＡＬ単位が設定される。詳細には、本開示によれば、ビットストリームの符号化は、ＥｏＢ  ＮＡＬ単位が０のレイヤ識別子を有するという制約に基づいて実行される。全てのＥｏＢ  ＮＡＬ単位のレイヤ識別子をレイヤ０に制限することによって、ＮＡＬ単位は、上記で説明したように、レイヤ０以外のレイヤ識別子を有するＮＡＬ単位だけがドロップされるので、ドロップされない（又は不正確に処理されない）。
【０１２８】
ＲＰＳ
[0139]ビデオコード化方式は、コード化ビデオシーケンス（ＣＶＳ）のピクチャに関連付けられたＲＰＳを維持し得る。所与のピクチャのためのＲＰＳは、関連ピクチャ又は復号順序において関連ピクチャに後続する任意のピクチャのインター予測のために使用され得る、復号順序において関連ピクチャに先立つ全ての参照ピクチャを含む参照ピクチャのセットを含んでいる。一例として、ＨＥＶＣ方式では、ＲＰＳは５つのＲＰＳリストを含み、それのうちの３つが、短期ＲＰＳと総称され、長期ＲＰＳと総称される残りの２つ。短期ＲＰＳは、関連ピクチャと、復号順序において関連ピクチャに後続する１つ又は複数のピクチャとのインター予測のために使用され得る、全ての参照ピクチャを含んでいる。長期ＲＰＳは、関連ピクチャのインター予測のために使用されないが、復号順序において関連ピクチャに後続する１つ又は複数ピクチャのインター予測のために使用され得る、全ての参照ピクチャを含んでいる。
【０１２９】
[0140]図５は、エンコーダ又はデコーダによってＲＰＳがどのように生成されるかについての一例を示すブロック図である。以下の説明では、復号ピクチャバッファ５１０についてデコーダ（例えば、ビデオデコーダ３０又はビデオデコーダ３３）中に含まれるものとして説明するが、以下は、エンコーダに等しく適用される。図５に示されているように、デコーダの復号ピクチャバッファ５１０中に複数のピクチャ５２０〜５２８が保持される。ＲＰＳが、ピクチャのために生成され得、復号ピクチャバッファ５１０中に含まれているピクチャへの参照を含み得る。第１のＲＰＳリスト５３０は、ピクチャ５２０、５２２、５２６、及び５２８を含み、第２のＲＰＳリスト５４０は、ピクチャ５２０、５２４、５２６、及び５２８を含む。図５の実施形態は一例にすぎず、ＲＰＳ中に含まれるピクチャは、ビットストリームを符号化するために使用されるコード化方式の条件に従って参照のために使用される、ビットストリームからの任意のピクチャであり得る。ＲＰＳリスト５３０及び５４０は、同じレイヤ内のピクチャを復号するための参照として使用されるピクチャを含む、従来のＲＰＳリストであり得、又は、異なるレイヤ中のピクチャを復号するために使用されるレイヤ間ＲＰＳリストであり得る。
【０１３０】
[0141]ＨＥＶＣ方式のスケーラブル拡張及びマルチビュー拡張など、マルチビュービデオコード化方式は、レイヤ間予測のためのＲＰＳを含めるためにＲＰＳの使用を拡大する。幾つかの実施形態では、ビットストリームの各レイヤのためにＲＰＳが定義され、即ち、各ピクチャがそれ自体のＲＰＳを維持する。更に、関連ピクチャのレイヤ間予測のために使用されるピクチャのリストを含む、追加のＲＰＳが提供され得る。各ピクチャのためのレイヤ間ＲＰＳは、ビットストリームのレイヤに対応するサブセットに分割され得る。例えば、２レイヤビットストリームでは、レイヤ間ＲＰＳは、以下でそれぞれＲＰＳレイヤ間０及びＲＰＳレイヤ間１と呼ぶ、レイヤ０サブセット及びレイヤ１サブセットに分割され得る。
【０１３１】
[0142]前に説明したように、ピクチャは、帯域幅要件などの様々な理由でビットストリームからドロップされる（又は不正確に処理される）ことがあり、又は、ピクチャは、エンコーダとデコーダとの間の送信において失われることがある。デコーダによって受信されるビットストリーム中に候補レイヤ間参照ピクチャが存在しないとき、即ち、ＲＰＳレイヤ間サブセットにおいて識別される参照ピクチャが受信されないとき、参照ピクチャが存在しないことを示す「参照ピクチャなし」のエントリが、対応するＲＰＳレイヤ間サブセットに挿入されるべきである。適切なサブセットは、現在レイヤのビュー識別子（ＩＤ）と、候補レイヤ間参照ピクチャが属するレイヤのビューＩＤと、ベースレイヤのビューＩＤとに基づいて決定され得る。ここで、ビューＩＤは、レイヤＩＤを指しに類似し、マルチビュー符号化規格内のピクチャのビューを指すことがある。
【０１３２】
[0143]現在のスケーラブル拡張及びマルチビュー拡張では、デコーダによって候補レイヤ間参照ピクチャが受信された場合、それがＲＰＳレイヤ間１に追加されていたとしても、「参照ピクチャなし」エントリは、ただＲＰＳレイヤ間０に入力される。「参照ピクチャなし」のエントリは、消失したレイヤ間参照ピクチャが入力されていたであろうロケーションにおいて示されるべきであるので、この挙動は望ましくない。補正がなければ、この挙動は、レイヤ間参照ピクチャが消失したとき、２つのＲＰＳレイヤ間サブセットにおいてレイヤ間参照ピクチャの望ましくない又は不正確な相対的位置決めを生じることがある。更に、この挙動は、ＲＰＳレイヤ間サブセット中に含まれているリストのサイズが不正確になることを生じることもある。このことは、ビットストリームを復号するとき、レイヤ間参照ピクチャの不正確な参照に潜在的につながることがある。従って、本開示の別の目的は、この挙動を補正することである。
【０１３３】
[0144]一実施形態では、「参照ピクチャなし」のエントリがどのＲＰＳレイヤ間サブセットに挿入されるか決定するために、現在ピクチャのビューＩＤが使用される。例えば、ピクチャのために候補レイヤ間参照ピクチャが存在しないとき、消失したレイヤ間参照ピクチャのビューＩＤに基づいて、対応するＲＰＳレイヤ間サブセット中に「参照ピクチャなし」のエントリが含まれる。他の実施形態では、他のレイヤのビューＩＤも、消失した候補レイヤ間参照ピクチャにどのＲＰＳレイヤ間サブセットが対応するかという決定において使用され得る。例えば、その決定において候補レイヤ間参照ピクチャのビューＩＤ及びベースレイヤのビューＩＤが使用され得る。従って、対応するＲＰＳレイヤ間サブセット中に「参照ピクチャなし」のエントリを含めることによって、ＲＰＳレイヤ間サブセット中のレイヤ間参照ピクチャの相対的位置決めは補正され得、ＲＰＳレイヤ間サブセットのそれぞれのサイズも補正され得る。
【０１３４】
[0145]本開示の別の態様は、ビットストリームの送信における損失の不正確な推論に対処し得る。スケーラブル拡張及びマルチビュー拡張は、廃棄可能フラグに関連付けられたピクチャが、他のピクチャによるレイヤ間予測のためにもインター予測のためにも使用されないかどうかを示す、廃棄可能フラグの包含を提案する。幾つかの実施形態では、このフラグは、ビットストリームのスライスヘッダ中に含まれ、関連ピクチャ内の全てのスライスセグメントについて同じ値を有する。従来のマルチレイヤコード化方式では、ピクチャが廃棄可能であることを示す関連付けられた廃棄可能フラグをピクチャが有するとき、時間ＲＰＳ又はレイヤ間ＲＰＳ中に廃棄可能ピクチャが存在しないという要件はない。更に、従来の方式はまた、ＰＵが廃棄可能ピクチャ中のＰＵを参照しない限り、廃棄可能ピクチャが参照ピクチャリスト中に存在することを拒否しない。従って、廃棄可能ピクチャは、それが参照のために使用されない限り、ＲＰＳ又は参照ピクチャリスト中に含まれ得る。
【０１３５】
[0146]ＲＰＳ又は参照ピクチャリスト中に廃棄可能ピクチャが含まれる場合、デコーダは、その包含により、損失を不正確に推論することがあり及び／又は帯域幅及び復号の非効率性をもたらすことがある。例えば、帯域幅制約下のとき、ビットストリーム中の他のピクチャを復号するときに参照のために廃棄可能ピクチャは使用されないので、帯域幅を節約するために、それはビットストリームから削除され得る。廃棄されたピクチャがＲＰＳ中に含まれるとき、デコーダは、デコーダにおいてまだ受信されない別のピクチャによって廃棄されたピクチャが参照のために使用され得ることを認識することになる。デコーダは、廃棄されたピクチャが参照のために使用され得ることを認識するので、それは、エンコーダからの廃棄されたピクチャの再送信を要求し得る。この挙動は、廃棄可能ピクチャを廃棄する際に最初に獲得された帯域幅節約を低減し、デコーダにおける非効率性を招くことになる。
【０１３６】
[0147]従って、少なくとも１つの実施形態では、ピクチャが廃棄可能であることを示す、即ち、１の値を有する廃棄可能フラグに関連付けられたピクチャは、レイヤ間ＲＰＳ又は時間ＲＰＳのいずれか中に含まれることを拒否される。
【０１３７】
[0148]別の実施形態では、参照のために使用されるフラグ（used-for-reference flag）は、ピクチャに一意に関連付けられ得る。参照のために使用されるフラグは、関連ピクチャが少なくとも１つのＲＰＳ中に含まれるかどうかを示す。この実施形態では、１の値をもつ参照のために使用されるフラグを有するピクチャだけが、ＲＰＳ中に含まれることを許される。
【０１３８】
ビデオ情報を符号化するための例示的なフローチャート
[0149]図６を参照しながら、０の値をもつレイヤ識別値を有するＥｏＢ  ＮＡＬ単位に基づいてビデオ情報を符号化するための例示的なプロシージャについて説明する。図６は、一実施形態による、ビデオ情報を符号化するための方法６００を示すフローチャートである。図６に示されたステップは、ビデオエンコーダ（例えば、ビデオエンコーダ２０又はビデオエンコーダ２３）、ビデオデコーダ（例えば、ビデオデコーダ３０又はビデオデコーダ３３）、又は他の構成要素によって実行され得る。便宜上、方法６００について、ビデオエンコーダ２０又は２３、ビデオデコーダ３０又は３３、又は別の構成要素であり得る、（単にエンコーダとも呼ばれる）ビデオエンコーダによって実行されるものとして説明する。
【０１３９】
[0150]方法６００はブロック６０１において開始する。ブロック６０５において、エンコーダは、ビデオ情報中に含まれるアクセス単位がＥｏＢ  ＮＡＬ単位を含むかどうかを決定する。ブロック６１０において、エンコーダは、制約に従ってＥｏＢ  ＮＡＬ単位のためのレイヤ識別値を０に設定する。符号化されるべきビデオ情報は、ＥｏＢ  ＮＡＬ単位が属するレイヤを識別するレイヤ識別値を含む少なくとも１つのＥｏＢ  ＮＡＬ単位を含む。ブロック６１５において、エンコーダは、レイヤ識別値のための０の値に少なくとも部分的に基づいて、ビデオ情報を符号化する。本方法は６２０において終了する。
【０１４０】
[0151]図７を参照しながら、ビデオ復号のためのＲＰＳレイヤ間サブセット中に参照ピクチャが存在しないことを示すための例示的なプロシージャについて説明する。図７は、一実施形態による、ビデオ情報を復号するための方法７００を示すフローチャートである。図７に示されたステップは、ビデオエンコーダ（例えば、ビデオエンコーダ２０又はビデオエンコーダ２３）、ビデオデコーダ（例えば、ビデオデコーダ３０又はビデオデコーダ３３）、又は他の構成要素によって実行され得る。便宜上、方法７００について、ビデオエンコーダ２０又は２３若しくはビデオデコーダ３０又は３３、若しくは別の構成要素であり得る、（単にデコーダとも呼ばれる）ビデオデコーダによって実行されるものとして説明する。
【０１４１】
[0152]方法７００はブロック７０１において開始する。ブロック７０５において、デコーダは、ビデオ情報中に候補レイヤ間参照ピクチャが存在するかどうかを決定する。ピクチャが、帯域幅制限に応じてコード化ビデオ情報からドロップされ得、又はエンコーダからの送信中に予想外に失われ得る。従って、デコーダは、候補レイヤ間参照ピクチャが存在するかどうかを決定することによって、候補レイヤ間参照ピクチャがビデオ情報からドロップされたかどうかを決定し得る。
【０１４２】
[0153]本方法はブロック７１０に進み、デコーダは、候補レイヤ間参照ピクチャが存在しないと決定したことに応答して、候補レイヤ間参照ピクチャが属するＲＰＳレイヤ間サブセットを決定する。例えば、この決定は、ビデオ情報中に候補レイヤ間参照ピクチャが存在した場合、それがどのサブセット中に含まれていたかを決定することを含み得る。幾つかの実施形態では、これは、現在レイヤのビューＩＤ、候補レイヤ間参照ピクチャのビューＩＤ、及び／又はベースレイヤのビューＩＤを決定することを含み得る。
【０１４３】
[0154]ブロック７１５に進み、デコーダは、候補レイヤ間参照ピクチャが属するＲＰＳレイヤ間サブセット中に参照ピクチャが存在しないことを示す。本方法は７２０において終了する。
【０１４４】
[0155]図８を参照しながら、ビデオコード化のためのＲＰＳ中にピクチャを含めるべきかどうかを決定するための例示的なプロシージャについて説明する。図８は、一実施形態による、ビデオ情報を符号化するための方法８００を示すフローチャートである。図８に示されたステップは、エンコーダ（例えば、ビデオエンコーダ２３のビデオエンコーダ２０）、ビデオデコーダ（例えば、ビデオデコーダ３０又はビデオデコーダ３３）、又は他の構成要素によって実行され得る。便宜上、方法８００について、ビデオエンコーダ２０又は２３、ビデオデコーダ３０又は３３、又は別の構成要素であり得る、ビデオエンコーダによって実行されるものとして説明する。
【０１４５】
[0156]方法８００はブロック８０１において開始する。ブロック８０５において、エンコーダは、ビデオ情報の現在ピクチャが廃棄可能ピクチャであるかどうかを決定する。各ピクチャは、例えば、ピクチャが廃棄可能ピクチャであるかどうかを示す廃棄可能フラグを含み得る。幾つかの実施形態では、ピクチャがいずれのＲＰＳ中にも含まれないときのみ、それは廃棄可能ピクチャとして識別され得る。
【０１４６】
[0157]方法はブロック８１０に進み、エンコーダは、現在ピクチャが廃棄可能ピクチャであるという決定に基づいて、現在ピクチャをＲＰＳ中に含めることを控える。本方法は８１５において終了する。
【０１４７】
[0158]方法６００〜８００では、図６〜図８に示されたブロックのうちの１つ又は複数は削除される（例えば、実行されない）ことがあり、及び／又は方法が実行される順序は入れ替えられることがある。幾つかの実施形態では、追加のブロックが方法６００〜８００に追加され得る。本開示の実施形態は、図６〜図８に示された例に限定されず、又は図６〜図８に示された例によって限定されず、他の変形が本開示の趣旨から逸脱することなく実施され得る。
【０１４８】
例示的な（１つ又は複数の）実装形態
[0159]幾つかの実施形態について、以下で要約及び説明する。本明細書で説明する方法のうちの１つ又は複数を実装するために組み込まれ得る追加と削除とを示すために、ＨＥＶＣ仕様の幾つかの部分が転載されるとき、そのような変更は、それぞれイタリック体及び取り消し線で示される。
【０１４９】
ＥｏＢ  ＮＡＬ単位に関係する変更
[0160]本開示の幾つかの実装形態では、以下で説明するようにＥｏＢ  ＮＡＬ単位が変更され得る。
【０１５０】
【表１】
0006661540.tif 000002
表１−ＥｏＢ  ＮＡＬ単位セマンティクス変更
【０１５１】
レイヤ間ＲＰＳの復号プロセスへの変更
[0161]本開示の幾つかの実装形態では、以下で説明するようにレイヤ間ＲＰＳが変更され得る。
【０１５２】
【表２】
0006661540.tif 000003
表２−レイヤ間ＲＰＳセマンティクス変更
【０１５３】
ＲＰＳの復号プロセスへの変更
[0162]幾つかの実装形態（例えば、ＳＨＶＣ、ＭＶ−ＨＥＶＣなど）では、ＲＰＳは、以下で説明するように変更され得る。
【０１５４】
【表３】
0006661540.tif 000004
表３−ＲＰＳセマンティクス変更
【０１５５】
他の考慮事項
[0163]本明細書で開示する情報及び信号は、多種多様な技術及び技法のいずれかを使用して表され得る。例えば、上記の説明全体にわたって言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、及びチップは、電圧、電流、電磁波、磁界又は磁性粒子、光場又は光学粒子、若しくはそれらの任意の組合せによって表され得る。
【０１５６】
[0164]本明細書で開示した実施形態に関して説明した様々な例示的な論理ブロック、回路、及びアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、又はその両方の組合せとして実装され得る。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、回路、及びステップについて、概してそれらの機能に関して上記で説明した。そのような機能をハードウェアとして実装するか、ソフトウェアとして実装するかは、特定の適用例及び全体的なシステムに課される設計制約に依存する。当業者は、説明した機能を特定の適用例ごとに様々な方法で実装し得るが、そのような実装の決定は、本開示の範囲からの逸脱を生じるものと解釈すべきではない。
【０１５７】
[0165]本明細書で説明した技術は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組合せで実装され得る。そのような技法は、汎用コンピュータ、ワイヤレス通信機器ハンドセット、又はワイヤレス通信機器ハンドセット及び他の機器における適用例を含む複数の用途を有する集積回路機器など、様々な機器のいずれかにおいて実装され得る。構成要素として説明した特徴は、集積論理機器に一緒に、又は個別であるが相互運用可能な論理機器として別々に実装され得る。ソフトウェアで実装した場合、本技法は、実行されたとき、上記で説明した方法のうちの１つ又は複数を実行する命令を含むプログラムコードを備えるコンピュータ可読データ記憶媒体によって、少なくとも部分的に実現され得る。コンピュータ可読データ記憶媒体は、パッケージング材料を含むことがあるコンピュータプログラム製品の一部を形成し得る。コンピュータ可読媒体は、同期型ダイナミックランダムアクセスメモリ（ＳＤＲＡＭ）などのランダムアクセスメモリ（ＲＡＭ）、読取り専用メモリ（ＲＯＭ）、不揮発性ランダムアクセスメモリ（ＮＶＲＡＭ）、電気消去可能プログラマブル読取り専用メモリ（ＥＥＰＲＯＭ（登録商標））、フラッシュメモリ、磁気又は光学データ記憶媒体などの、メモリ又はデータ記憶媒体を備え得る。本技法は、追加又は代替として、伝搬信号又は電波など、命令又はデータ構造の形態でプログラムコードを搬送又は伝達し、コンピュータによってアクセスされ、読み取られ、及び／又は実行され得るコンピュータ可読通信媒体によって、少なくとも部分的に実現され得る。
【０１５８】
[0166]プログラムコードは、１つ又は複数のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルロジックアレイ（ＦＰＧＡ）、又は他の等価の集積回路又はディスクリート論理回路など、１つ又は複数のプロセッサを含み得るプロセッサによって実行され得る。そのようなプロセッサは、本開示で説明する技法のいずれかを実行するように構成され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、又は状態機械であり得る。プロセッサはまた、コンピューティング機器の組合せ、例えば、ＤＳＰとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、ＤＳＰコアと連携する１つ又は複数のマイクロプロセッサ、あるいは任意の他のそのような構成として実装され得る。従って、本明細書で使用する「プロセッサ」という用語は、上記の構造、上記の構造の任意の組合せ、又は本明細書で説明する技法の実装に好適な他の構造又は装置のいずれかを指すことがある。更に、幾つかの態様では、本明細書で説明した機能は、符号化及び復号のために構成された専用のソフトウェアもしくはハードウェア内に提供され得、又は複合ビデオエンコーダ／デコーダ（コーデック）に組み込まれ得る。また、本技法は、１つ又は複数の回路又は論理要素中に十分に実装され得る。
【０１５９】
[0167]本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）又はＩＣのセット（例えば、チップセット）を含む、多種多様な機器又は装置で実装され得る。本開示では、開示する技法を実行するように構成された機器の機能的態様を強調するために、様々な構成要素又はユニットについて説明したが、それらの構成要素又はユニットは、必ずしも異なるハードウェアユニットによる実現を必要とするとは限らない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェア及び／又はファームウェアとともに、上記で説明した１つ又は複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、又は相互動作可能なハードウェアユニットの集合によって与えられ得る。
【０１６０】
[0168]本発明の様々な実施形態について説明した。これら及び他の実施形態は以下の特許請求の範囲内に入る。
以下に本願発明の当初の特許請求の範囲に記載された発明を付記する。
［Ｃ１］
マルチレイヤビットストリームのビデオ情報を符号化するための方法であって、
前記ビデオ情報の現在ピクチャが廃棄可能ピクチャであるかどうかを決定することと、
前記現在ピクチャが廃棄可能ピクチャであるという前記決定に基づいて、前記現在ピクチャを参照ピクチャセット（ＲＰＳ）中に含めることを控えることと
を備える、方法。
［Ｃ２］
前記現在ピクチャが廃棄可能ピクチャであるかどうかを前記決定することは、前記現在ピクチャがレイヤ間予測又はインター予測のために使用されるかどうかを決定することを備え、廃棄可能ピクチャが、レイヤ間予測又はインター予測のために使用されないピクチャである、Ｃ１に記載の方法。
［Ｃ３］
前記現在ピクチャが廃棄可能ピクチャであるかどうかを決定することは、前記現在ピクチャがレイヤ間予測又はインター予測のために使用されるかどうかを示す前記現在ピクチャに関連付けられた廃棄可能値に少なくとも部分的に基づく、Ｃ１に記載の方法。
［Ｃ４］
前記廃棄可能値が廃棄可能フラグであり、前記廃棄可能フラグは、前記廃棄可能フラグが１に等しい値を有するとき、前記現在ピクチャが廃棄可能ピクチャであることを示す、Ｃ３に記載の方法。
［Ｃ５］
前記ＲＰＳがレイヤ間ＲＰＳ又は時間ＲＰＳを備える、Ｃ１に記載の方法。
［Ｃ６］
前記ＲＰＳに少なくとも部分的に基づいて、前記ビデオ情報を符号化することをさらに備える、Ｃ１に記載の方法。
［Ｃ７］
マルチレイヤビットストリームのビデオ情報を符号化するための機器であって、
前記ビデオ情報を記憶するように構成されたメモリと、
前記メモリと通信しており、
前記ビデオ情報の現在ピクチャが廃棄可能ピクチャであるかどうかを決定することと、
前記現在ピクチャが廃棄可能ピクチャであるという前記決定に基づいて、前記現在ピクチャを参照ピクチャセット（ＲＰＳ）中に含めることを控えることと
を行うように構成されたプロセッサと
を備える、機器。
［Ｃ８］
前記プロセッサは、前記現在ピクチャがレイヤ間予測又はインター予測のために使用されるかどうかを決定するようにさらに構成され、廃棄可能ピクチャが、レイヤ間予測又はインター予測のために使用されないピクチャである、Ｃ７に記載の機器。
［Ｃ９］
前記プロセッサは、前記現在ピクチャがレイヤ間予測又はインター予測のために使用されるかどうかを示す前記現在ピクチャに関連付けられた廃棄可能値に少なくとも部分的に基づいて、前記現在ピクチャが廃棄可能ピクチャであるかどうかを決定するようにさらに構成された、Ｃ７に記載の機器。
［Ｃ１０］
前記廃棄可能値が廃棄可能フラグであり、前記廃棄可能フラグは、前記廃棄可能フラグが１に等しい値を有するとき、前記現在ピクチャが廃棄可能ピクチャであることを示す、Ｃ９に記載の機器。
［Ｃ１１］
前記ＲＰＳがレイヤ間ＲＰＳ又は時間ＲＰＳを備える、Ｃ７に記載の機器。
［Ｃ１２］
前記プロセッサが、前記ＲＰＳに少なくとも部分的に基づいて前記ビデオ情報を符号化するようにさらに構成された、Ｃ７に記載の機器。
［Ｃ１３］
ビデオ情報の現在ピクチャが廃棄可能ピクチャであるかどうかを決定するための手段と、
前記現在ピクチャが廃棄可能ピクチャであるという前記決定に基づいて、前記現在ピクチャを参照ピクチャセット（ＲＰＳ）中に含めることを控えるための手段と
を備える、装置。
［Ｃ１４］
前記現在ピクチャが廃棄可能ピクチャであるかどうかを決定するための前記手段が、前記現在ピクチャがレイヤ間予測又はインター予測のために使用されるかどうかを決定するための手段を備え、廃棄可能ピクチャが、レイヤ間予測又はインター予測のために使用されないピクチャである、Ｃ１３に記載の装置。
［Ｃ１５］
前記現在ピクチャが廃棄可能ピクチャであるかどうかを決定するための前記手段が、前記現在ピクチャがレイヤ間予測又はインター予測のために使用されるかどうかを示す前記現在ピクチャに関連付けられた廃棄可能値を決定するための手段を備える、Ｃ１３に記載の装置。
［Ｃ１６］
前記廃棄可能値が廃棄可能フラグであり、前記廃棄可能フラグは、前記廃棄可能フラグが１に等しい値を有するとき、前記現在ピクチャが廃棄可能ピクチャであることを示す、Ｃ１５に記載の装置。
［Ｃ１７］
前記ＲＰＳがレイヤ間ＲＰＳ又は時間ＲＰＳを備える、Ｃ１３に記載の装置。
［Ｃ１８］
前記ＲＰＳに少なくとも部分的に基づいて前記ビデオ情報を符号化するための手段をさらに備える、Ｃ１３に記載の装置。
［Ｃ１９］
実行されたとき、機器のプロセッサに、
ビデオ情報の現在ピクチャが廃棄可能ピクチャであるかどうかを決定することと、
前記現在ピクチャが廃棄可能ピクチャであるという前記決定に基づいて、前記現在ピクチャを参照ピクチャセット（ＲＰＳ）中に含めることを控えることと
を行わせる命令を記憶した非一時的コンピュータ可読記憶媒体。
［Ｃ２０］
実行されたとき、前記プロセッサに、前記現在ピクチャがレイヤ間予測又はインター予測のために使用されるかどうかを決定させる命令をさらに記憶した、廃棄可能ピクチャが、レイヤ間予測又はインター予測のために使用されないピクチャである、Ｃ１９に記載の非一時的コンピュータ可読記憶媒体。
［Ｃ２１］
実行されたとき、前記プロセッサに、前記現在ピクチャがレイヤ間予測又はインター予測のために使用されるかどうかを示す前記現在ピクチャに関連付けられた廃棄可能値を決定させる命令をさらに記憶した、Ｃ１９に記載の非一時的コンピュータ可読記憶媒体。
［Ｃ２２］
前記廃棄可能値が廃棄可能フラグであり、前記廃棄可能フラグは、前記廃棄可能フラグが１に等しい値を有するとき、前記現在ピクチャが廃棄可能ピクチャであることを示す、Ｃ２１に記載の非一時的コンピュータ可読記憶媒体。
［Ｃ２３］
前記ＲＰＳがレイヤ間ＲＰＳ又は時間ＲＰＳを備える、Ｃ１９に記載の非一時的コンピュータ可読記憶媒体。
［Ｃ２４］
実行されたとき、前記プロセッサに、前記ＲＰＳに少なくとも部分的に基づいて前記ビデオ情報を符号化させる命令をさらに記憶した、Ｃ１９に記載の非一時的コンピュータ可読記憶媒体。
【図１Ａ】
0006661540.tif 000005
【図１Ｂ】
0006661540.tif 000006
【図２Ａ】
0006661540.tif 000007
【図２Ｂ】
0006661540.tif 000008
【図３Ａ】
0006661540.tif 000009
【図３Ｂ】
0006661540.tif 000010
【図４】
0006661540.tif 000011
【図５】
0006661540.tif 000012
【図６】
0006661540.tif 000013
【図７】
0006661540.tif 000014
【図８】
0006661540.tif 000015