(57)【要約】  一例では、ビデオデータをコーディングする方法は、ビデオコーダによって、マルチレイヤ・ビットストリームの独立して復号可能な非ベースレイヤのピクチャの少なくとも一部分をコーディングすることを含む。本方法はまた、ビデオコーダによって、ピクチャが、０に等しいピクチャのためのピクチャ順序カウント（ＰＯＣ）最下位ビット（ＬＳＢ）値を有するときのみ、ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータをコーディングすることを含む。
2017514354.tif 000002
【特許請求の範囲】
【請求項１】
ビデオデータをコーディングする方法であって、前記方法は、
マルチレイヤ・ビットストリームの独立して復号可能な非ベースレイヤのピクチャの少なくとも一部分をコーディングすることと、
前記ピクチャが、０に等しい前記ピクチャのためのピクチャ順序カウント（ＰＯＣ）最下位ビット（ＬＳＢ）値を有するときのみ、前記ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータをコーディングすることと
を備える、方法。
【請求項２】
前記ピクチャのピクチャタイプに基づいて、前記ピクチャの前記ＰＯＣ  ＬＳＢ値が０に等しいと決定することをさらに備え、ここにおいて、前記ピクチャタイプが、瞬時デコーダリフレッシュ（ＩＤＲ）ピクチャ、切断リンクアクセス（ＢＬＡ）ピクチャ、またはクリーンランダムアクセス（ＣＲＡ）ピクチャのうちの１つである、請求項１に記載の方法。
【請求項３】
前記ＰＯＣ値リセットを示す前記データをコーディングすることが、前記ＰＯＣ値リセットを示す１つまたは複数のシンタックス要素をコーディングすることを備える、請求項１に記載の方法。
【請求項４】
前記１つまたは複数のシンタックス要素をコーディングすることが、ＰＯＣ値リセットインデックスをコーディングすることを備え、前記ピクチャが、０に等しくないＰＯＣ  ＬＳＢ値を有するとき、前記ＰＯＣ値リセットインデックスをコーディングすることが、２以外の値であるｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素をコーディングすることを備える、請求項３に記載の方法。
【請求項５】
前記１つまたは複数のシンタックス要素をコーディングすることが、ＰＯＣ値リセットインデックスをコーディングすることを備え、前記ピクチャが、０に等しいＰＯＣ  ＬＳＢ値を有するとき、前記ＰＯＣ値リセットインデックスをコーディングすることが、３に等しいｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素をコーディングすることを備える、請求項３に記載の方法。
【請求項６】
前記ＰＯＣ  ＬＳＢ値が０に等しいことを示す前記ピクチャのスライスヘッダのｐｏｃ＿ｌｓｂ＿ｖａｌシンタックス要素をコーディングすることをさらに備える、請求項５に記載の方法。
【請求項７】
前記独立して復号可能な非ベースレイヤが独立して復号可能なレイヤであることを示す１つまたは複数のシンタックス要素をコーディングすることをさらに備える、請求項１に記載の方法。
【請求項８】
前記マルチレイヤ・ビットストリームが、ＨＥＶＣのマルチビュー・ビデオコーディング拡張（ＭＶ−ＨＥＶＣ）ビデオコーディング規格、またはＨＥＶＣのスケーラブルビデオコーディング（ＳＶＣ）拡張（ＳＨＶＣ）ビデオコーディング規格のうちの１つに準拠し、独立して復号可能な非ベースレイヤが前記ＨＥＶＣビデオコーディング規格に準拠する、請求項１に記載の方法。
【請求項９】
前記ＨＥＶＣビデオコーディング規格を使用して、および前記独立して復号可能な非ベースレイヤの１つまたは複数の他のピクチャのスライスヘッダのデータを変更することなしに、前記１つまたは複数の他のピクチャをコーディングすることをさらに備える、請求項８に記載の方法。
【請求項１０】
前記マルチレイヤ・ビットストリームが前記ＳＨＶＣビデオコーディング規格に準拠し、前記独立して復号可能な非ベースレイヤが、前記マルチレイヤ・ビットストリームのベースレイヤよりも高い解像度を有する、請求項８に記載の方法。
【請求項１１】
前記マルチレイヤ・ビットストリームが前記ＭＶ−ＨＥＶＣビデオコーディング規格に準拠し、前記独立して復号可能な非ベースレイヤが、前記マルチレイヤ・ビットストリームのベースレイヤのビューとは異なるビューを備える、請求項８に記載の方法。
【請求項１２】
コーディングすることが符号化することを備え、前記ピクチャの前記少なくとも一部分を符号化することが、
予測データと前記少なくとも一部分との間の差を示す、前記少なくとも一部分のための残差データを生成することと、
変換係数を生成するために前記残差データに変換を適用することと、
前記変換係数の指示を含むビットストリームを生成することと
を備える、請求項１に記載の方法。
【請求項１３】
コーディングすることが復号することを備え、前記ピクチャの前記少なくとも一部分を復号することが、
符号化ビットストリームから前記少なくとも一部分のための変換係数を取得することと、
残差データを生成するために前記変換係数に逆変換を適用することと、
前記生成された残差データに基づいて前記ピクチャの前記少なくとも一部分を決定することと
を備える、請求項１に記載の方法。
【請求項１４】
ビデオデータをコーディングするためのデバイスであって、前記デバイスが、
マルチレイヤ・ビットストリームのビデオデータの独立して復号可能なレイヤを記憶するように構成されたメモリと、
ビデオコーダとを備え、前記ビデオコーダは、
前記マルチレイヤ・ビットストリームの独立して復号可能な非ベースレイヤのピクチャの少なくとも一部分をコーディングすることと、
前記ピクチャが、０に等しい前記ピクチャのためのピクチャ順序カウント（ＰＯＣ）最下位ビット（ＬＳＢ）値を有するときのみ、前記ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータをコーディングすることと
を行うように構成された、デバイス。
【請求項１５】
前記ビデオコーダは、前記ピクチャのピクチャタイプに基づいて、前記ピクチャの前記ＰＯＣ  ＬＳＢ値が０に等しいと決定するようにさらに構成され、ここにおいて、前記ピクチャタイプが、瞬時デコーダリフレッシュ（ＩＤＲ）ピクチャ、切断リンクアクセス（ＢＬＡ）ピクチャ、またはクリーンランダムアクセス（ＣＲＡ）ピクチャのうちの１つである、請求項１４に記載のデバイス。
【請求項１６】
前記ＰＯＣ値リセットを示す前記データをコーディングするために、前記ビデオコーダが、前記ＰＯＣ値リセットを示す１つまたは複数のシンタックス要素をコーディングするように構成された、請求項１４に記載のデバイス。
【請求項１７】
前記１つまたは複数のシンタックス要素をコーディングするために、前記ビデオコーダが、ＰＯＣ値リセットインデックスをコーディングするように構成され、前記ピクチャが、０に等しくないＰＯＣ  ＬＳＢ値を有するとき、前記ビデオコーダが、２以外の値である前記ＰＯＣ値リセットインデックスのためのｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素をコーディングするように構成された、請求項１６に記載のデバイス。
【請求項１８】
前記１つまたは複数のシンタックス要素をコーディングするために、前記ビデオコーダが、ＰＯＣ値リセットインデックスをコーディングするように構成され、前記ピクチャが、０に等しいＰＯＣ  ＬＳＢ値を有するとき、前記ビデオコーダが、３に等しい前記ＰＯＣ値リセットインデックスのためのｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素をコーディングするように構成された、請求項１６に記載のデバイス。
【請求項１９】
前記ビデオコーダが、前記ＰＯＣ  ＬＳＢ値が０に等しいことを示す前記ピクチャのスライスヘッダのｐｏｃ＿ｌｓｂ＿ｖａｌシンタックス要素をコーディングするようにさらに構成された、請求項１６に記載のデバイス。
【請求項２０】
前記ビデオコーダが、前記独立して復号可能な非ベースレイヤが独立して復号可能なレイヤであることを示す１つまたは複数のシンタックス要素をコーディングするようにさらに構成された、請求項１４に記載のデバイス。
【請求項２１】
前記マルチレイヤ・ビットストリームが、ＨＥＶＣのマルチビュー・ビデオコーディング拡張（ＭＶ−ＨＥＶＣ）ビデオコーディング規格、またはＨＥＶＣのスケーラブルビデオコーディング（ＳＶＣ）拡張（ＳＨＶＣ）ビデオコーディング規格のうちの１つに準拠し、独立して復号可能な非ベースレイヤが前記ＨＥＶＣビデオコーディング規格に準拠する、請求項１４に記載のデバイス。
【請求項２２】
前記ビデオコーダが、前記ＨＥＶＣビデオコーディング規格を使用して、および前記独立して復号可能な非ベースレイヤの１つまたは複数の他のピクチャのスライスヘッダのデータを変更することなしに、前記１つまたは複数の他のピクチャをコーディングするようにさらに構成された、請求項２１に記載のデバイス。
【請求項２３】
前記マルチレイヤ・ビットストリームが前記ＳＨＶＣビデオコーディング規格に準拠し、前記独立して復号可能な非ベースレイヤが、前記マルチレイヤ・ビットストリームのベースレイヤよりも高い解像度を有する、請求項２１に記載のデバイス。
【請求項２４】
前記マルチレイヤ・ビットストリームが前記ＭＶ−ＨＥＶＣビデオコーディング規格に準拠し、前記独立して復号可能な非ベースレイヤが、前記マルチレイヤ・ビットストリームのベースレイヤのビューとは異なるビューを備える、請求項２１に記載のデバイス。
【請求項２５】
前記ビデオコーダがビデオエンコーダを備え、前記ビデオエンコーダが、
予測データと前記少なくとも一部分との間の差を示す、前記少なくとも一部分のための残差データを生成することと、
変換係数を生成するために前記残差データに変換を適用することと、
前記変換係数の指示を含むビットストリームを生成することと
を行うようにさらに構成された、請求項１４に記載のデバイス。
【請求項２６】
前記ビデオコーダがビデオデコーダを備え、前記ビデオデコーダが、
符号化ビットストリームから前記少なくとも一部分のための変換係数を取得することと、
残差データを生成するために前記変換係数に逆変換を適用することと、
前記生成された残差データに基づいて前記ピクチャの前記少なくとも一部分を決定することと
を行うようにさらに構成された、請求項１４に記載のデバイス。
【請求項２７】
前記デバイスが、
集積回路、
マイクロプロセッサ、または
ワイヤレス通信デバイス
のうちの少なくとも１つを備える、請求項１４に記載のデバイス。
【請求項２８】
ビデオデータをコーディングするためのデバイスであって、前記デバイスは、
マルチレイヤ・ビットストリームの独立して復号可能な非ベースレイヤのピクチャの少なくとも一部分をコーディングするための手段と、
前記ピクチャが、０に等しい前記ピクチャのためのピクチャ順序カウント（ＰＯＣ）最下位ビット（ＬＳＢ）値を有するときのみ、前記ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータをコーディングするための手段と
を備える、デバイス。
【請求項２９】
実行されたとき、ビデオデータをコーディングするためのデバイスのプロセッサに、
マルチレイヤ・ビットストリームの独立して復号可能な非ベースレイヤのピクチャの少なくとも一部分をコーディングすることと、
前記ピクチャが、０に等しい前記ピクチャのためのピクチャ順序カウント（ＰＯＣ）最下位ビット（ＬＳＢ）値を有するときのみ、前記ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータをコーディングすることと
を行わせる命令を記憶した非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
[0001]本出願は、その全体が参照により本明細書に組み込まれる、２０１４年３月１７日に出願された米国仮出願第６１／９５４，５５１号、および２０１４年３月３１日に出願された米国仮出願第６１／９７３，１０４号の利益を主張する。
【０００２】
[0002]本開示は、ビデオコーディングに関する。
【背景技術】
【０００３】
[0003]デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末（ＰＤＡ）、ラップトップまたはデスクトップコンピュータ、タブレットコンピュータ、電子ブックリーダー、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、セルラーまたは衛星無線電話、いわゆる「スマートフォン」、ビデオ遠隔会議デバイス、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタルビデオデバイスは、ＭＰＥＧ−２、ＭＰＥＧ−４、ＩＴＵ−Ｔ  Ｈ．２６３、ＩＴＵ−Ｔ  Ｈ．２６４／ＭＰＥＧ−４，Ｐａｒｔ  １０，アドバンストビデオコーディング（ＡＶＣ：Advanced Video Coding）、ＩＴＵ−Ｔ  Ｈ．２６５高効率ビデオコーディング（ＨＥＶＣ：High Efficiency Video Coding）規格によって定義された規格、およびそのような規格の拡張に記載されているビデオコーディング技法などのビデオコーディング技法を実装する。ビデオデバイスは、そのようなビデオコーディング技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、符号化、復号、および／または記憶し得る。
【０００４】
[0004]ビデオコーディング技法は、ビデオシーケンスに固有の冗長性を低減または除去するための空間的（イントラピクチャ）予測および／または時間的（インターピクチャ）予測を含む。ブロックベースビデオコーディングの場合、ビデオスライス（たとえば、ビデオフレームまたはビデオフレームの一部分）が、ツリーブロック、コーディングユニット（ＣＵ：coding unit）および／またはコーディングノードと呼ばれることもあるビデオブロックに区分され得る。ピクチャのイントラコード化（Ｉ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間的予測を使用して符号化される。ピクチャのインターコード化（ＰまたはＢ）スライス中のビデオブロックは、同じピクチャ中の隣接ブロック中の参照サンプルに対する空間的予測、または他の参照ピクチャ中の参照サンプルに対する時間的予測を使用し得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームと呼ばれることがある。ピクチャは、復号ピクチャまたはコード化ピクチャを指すことがある。
【０００５】
[0005]空間的予測または時間的予測は、コーディングされるべきブロックのための予測ブロックを生じる。残差データは、コーディングされるべき元のブロックと予測ブロックとの間のピクセル差分を表す。インターコード化ブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトル、およびコード化ブロックと予測ブロックとの間の差分を示す残差データに従って符号化される。イントラコード化ブロックは、イントラコーディングモードと残差データとに従って符号化される。さらなる圧縮のために、残差データは、ピクセル領域から変換領域に変換され、残差変換係数が生じ得、その残差変換係数は、次いで量子化され得る。最初に２次元アレイで構成される量子化された変換係数は、変換係数の１次元ベクトルを生成するために走査され得、なお一層の圧縮を達成するためにエントロピーコーディングが適用され得る。
【発明の概要】
【０００６】
[0006]本開示は、マルチレイヤ・ビットストリームからのビデオデータのレイヤの抽出を容易にするための技法について説明する。たとえば、本開示の技法は、マルチレイヤ・ビットストリームの独立非ベースレイヤ（an independent non-base layer）のピクチャのためのピクチャ順序カウント（ＰＯＣ：picture order count）値リセッティングを制御するために使用され得る。いくつかの例では、本開示の技法を使用してビデオコーダを制約することは、マルチレイヤ・ビットストリームのビデオデータのレイヤが、レイヤのスライスヘッダ中のデータを変更することなしに抽出されることを可能にし得る。さらに、ＰＯＣ値リセッティングが行われるロケーションを制御することは、ビデオコーダが復号ピクチャバッファ（ＤＰＢ：decoded picture buffer）中の長期参照ピクチャ（long-term reference pictures）を適宜に識別し得ることを保証するのを助け得る。
【０００７】
[0007]一例では、ビデオデータをコーディングする方法は、ビデオコーダによって、マルチレイヤ・ビットストリームの独立して復号可能な非ベースレイヤ（an independently decodable non-base layer）のピクチャの少なくとも一部分をコーディングすることと、ピクチャが、０に等しいピクチャのためのＰＯＣ最下位ビット（ＬＳＢ：least significant bit）値を有するときのみ、ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータをコーディングすることとを含む。
【０００８】
[0008]別の例では、ビデオデータをコーディングするためのデバイスは、マルチレイヤ・ビットストリームのビデオデータの独立して復号可能なレイヤを記憶するように構成されたメモリを含む。本デバイスはまた、マルチレイヤ・ビットストリームの独立して復号可能な非ベースレイヤのピクチャの少なくとも一部分をコーディングすることと、ピクチャが、０に等しいピクチャのためのピクチャ順序カウント（ＰＯＣ）最下位ビット（ＬＳＢ）値を有するときのみ、ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータをコーディングすることとを行うように構成されたビデオコーダを含む。
【０００９】
[0009]別の例では、ビデオデータをコーディングするためのデバイスは、マルチレイヤ・ビットストリームの独立して復号可能な非ベースレイヤのピクチャの少なくとも一部分をコーディングするための手段と、ピクチャが、０に等しいピクチャのためのピクチャ順序カウント（ＰＯＣ）最下位ビット（ＬＳＢ）値を有するときのみ、ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータをコーディングするための手段とを含む。
【００１０】
[0010]別の例では、非一時的コンピュータ可読記憶媒体は、実行されたとき、ビデオデータをコーディングするためのデバイスのプロセッサに、マルチレイヤ・ビットストリームの独立して復号可能な非ベースレイヤのピクチャの少なくとも一部分をコーディングすることと、ピクチャが、０に等しいピクチャのためのピクチャ順序カウント（ＰＯＣ）最下位ビット（ＬＳＢ）値を有するときのみ、ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータをコーディングすることとを行わせる命令を記憶している。
【００１１】
[0011]１つまたは複数の例の詳細が以下の添付の図面および説明に記載されている。他の特徴、目的、および利点は、説明および図面、ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【００１２】
【図１】[0012]  本開示の技法による、ＰＯＣ値情報をコーディングするための技法を利用し得る例示的なビデオ符号化および復号システムを示すブロック図。
【図２】[0013]  本開示の技法による、ＰＯＣ値情報をコーディングするための技法を実装し得るビデオエンコーダの一例を示すブロック図。
【図３】[0014]  本開示の技法による、ＰＯＣ値情報をコーディングするための技法を実装し得るビデオデコーダの一例を示すブロック図。
【図４】[0015]  マルチレイヤ・ビットストリームの独立非ベースレイヤのためのＰＯＣ値リセッティングを示す概念図。
【図５】[0016]  マルチレイヤ・ビットストリームの独立非ベースレイヤのためのＰＯＣ値リセッティングを示す別の概念図。
【図６】[0017]  本開示の技法による、マルチレイヤ・ビットストリームのビデオデータを符号化するための例示的な方法を示すフローチャート。
【図７】[0018]  本開示の技法による、マルチレイヤ・ビットストリームのビデオデータを復号するための例示的な方法を示すフローチャート。
【発明を実施するための形態】
【００１３】
[0019]本開示の態様は、マルチレイヤ・ビットストリームのための独立非ベースレイヤをコーディングする様々な技法に関し得る。いくつかの事例では、本技法は、以下で述べるように、高効率ビデオコーディング（ＨＥＶＣ）のマルチビュー・ビデオコーディング拡張（ＭＶ−ＨＥＶＣ：a Multi-view Video Coding extension to HEVC）、またはＨＥＶＣのスケーラブルビデオコーディング（ＳＶＣ）拡張（ＳＨＶＣ：a Scalable Video Coding (SVC) extension to HEVC）など、ＨＥＶＣ規格のマルチレイヤ拡張とともに実行され得る。ただし、本開示の技法は、いかなる特定のビデオコーディング規格にも限定されず、同じくまたは代替的に、ＨＥＶＣの他の拡張、他のマルチビュー・コーディング規格および／または他のマルチレイヤ・ビデオ規格とともに使用され得る。さらに、本開示の技法は、以下で説明するように、独立して、または組合せで適用され得る。
【００１４】
[0020]ビデオデータの「レイヤ」は、概して、ビュー、フレームレート、空間フォーマットまたは解像度、信号対雑音比などの少なくとも１つの共通の特性を有するピクチャのシーケンスを指すことがある。たとえば、レイヤは、マルチビュー・ビデオデータの特定のビュー（たとえば、パースペクティブ（perspective））に関連付けられたビデオデータを含み得る。別の例として、レイヤは、スケーラブルビデオデータの特定のレイヤに関連付けられたビデオデータを含み得る。したがって、本開示は、ビデオデータのレイヤおよびビューを互換的に指すことがある。すなわち、ビデオデータのビューはビデオデータのレイヤと呼ばれることがあり、その逆も同様である。さらに、（マルチレイヤ・ビデオコーダまたはマルチレイヤエンコーダ−デコーダとも呼ばれる）マルチレイヤコーデックは、マルチビュー・コーデックまたはスケーラブルコーデック（たとえば、ＭＶ−ＨＥＶＣ、ＳＨＶＣ、または別のマルチレイヤコーディング技法を使用してビデオデータを符号化および／または復号するように構成されたコーデック）を指すことがある。
【００１５】
[0021]マルチレイヤ・ビットストリームはベースレイヤと１つまたは複数の非ベースレイヤとを含み得る。ベースレイヤは、一般に、０に等しいレイヤ識別子を有し得る。非ベースレイヤは、０よりも大きいレイヤ識別子を有し得、ベースレイヤ中に含まれない追加のビデオデータを与え得る。たとえば、マルチビュー・ビデオデータの非ベースレイヤは、ビデオデータの追加のビューを含み得る。スケーラブルビデオデータの非ベースレイヤは、ベースレイヤに対して増加または減少した解像度を有するスケーラブルビデオデータの追加のレイヤを含み得る。非ベースレイヤは、互換的にエンハンスメントレイヤと呼ばれることがある。
【００１６】
[0022]レイヤが直接参照レイヤを有しないとき、そのレイヤは「独立」であると呼ばれることがある。すなわち、独立レイヤは、別のレイヤのビデオデータを参照することなしにコーディング（符号化または復号）され得る。独立非ベースレイヤは、独立レイヤが属するマルチレイヤ・ビットストリームの他のレイヤと同じである必要がない、特定の規格の特定のコーディングプロファイルに準拠し得る。説明のための非限定的な例では、マルチレイヤ・ビットストリームは、ＭＶ−ＨＥＶＣまたはＳＨＶＣに準拠し得る。マルチレイヤ・ビットストリームの独立非ベースレイヤは、（たとえば、インターレイヤ予測技法を使用せずに）独立してコーディングされ得、ＨＥＶＣ規格に準拠し得る。したがって、以下でより詳細に説明するように、独立非ベースレイヤは、ＨＥＶＣ規格を使用して、およびマルチレイヤ・ビットストリームの他のレイヤを復号することなしに、抽出および復号され得る。いくつかの事例では、メディアアウェアネットワーク要素（ＭＡＮＥ：media aware network element）、スプライシングユニット（splicing unit）、または他のデバイスは、マルチレイヤ・ビットストリームから独立レイヤを抽出し得る。そのような事例では、ＭＡＮＥは、復号のために、抽出された独立レイヤのみをビデオデコーダに送信し得る。他の事例では、別のコンピューティングデバイスは、サブビットストリームの抽出を担当し得る。
【００１７】
[0023]本開示の技法は、ビデオコーディングのためのピクチャ順序カウント（ＰＯＣ）値の設定に適用可能であり、マルチレイヤ・ビットストリームからの独立非ベースレイヤの抽出を容易にするために使用され得る。たとえば、ビデオエンコーダは、特定のマルチレイヤ・ビデオコーディング規格、たとえば、ＳＨＶＣまたはＭＶ−ＨＥＶＣに従ってマルチレイヤ・ビットストリームを符号化し得る。ビデオデコーダ、メディアアウェアネットワーク要素（ＭＡＮＥ）、スプライシングユニット（splicing unit）、または他のデバイスは、そのようなマルチレイヤ・ビットストリームから独立非ベースレイヤを抽出し得る。以下でより詳細に説明するように、本開示の技法は、いくつかの例では、レイヤが、ＳＨＶＣまたはＭＶ−ＨＥＶＣに準拠するビットストリームなどのマルチレイヤ・ビットストリームから抽出されること、および、独立非ベースレイヤのスライスヘッダまたは他のシンタックスを変更することなしにＨＥＶＣ規格を使用して復号するように構成されたビデオデコーダによって適切に復号されること、を可能にし得る。
【００１８】
[0024]ＰＯＣ値はピクチャの表示順序を示し得、概して、ピクチャを識別するために使用され得る。たとえば、０のＰＯＣ値を有するピクチャは、１のＰＯＣ値を有するピクチャより前に表示される。現在ピクチャのブロックが参照ピクチャに対してインター予測されるとき、参照ピクチャは、参照ピクチャのためのＰＯＣ値を使用して識別され得る。より詳細には、参照ピクチャリスト中に含まれるべき参照ピクチャのためのＰＯＣ値が、シーケンスパラメータセット（ＳＰＳ：sequence parameter set）、ピクチャパラメータセット（ＰＰＳ：picture parameter set）などのパラメータセット、および／またはブロックに対応するスライスヘッダ中でシグナリングされ得る。このようにして、ビデオエンコーダは、参照ピクチャリスト中の参照ピクチャの位置に対応する、参照ピクチャリストへのインデックスをシグナリングすることによって、参照ピクチャを識別し得、ビデオデコーダは、（ＰＯＣ値に基づいて）参照ピクチャリストを構築することと、参照ピクチャリスト中の参照ピクチャの位置を識別するために参照インデックスを使用することとによって、参照ピクチャを識別し得る。
【００１９】
[0025]ＰＯＣ値は、最下位ビット（ＬＳＢ）と最上位ビット（ＭＳＢ：most significant bit）とから構成され得る。概して、ＰＯＣ  ＬＳＢ値はビットストリーム中でシグナリングされ得る。たとえば、ＰＯＣ  ＬＳＢ値はピクチャのスライスのスライスヘッダ中に含まれ得る。ビデオコーダ（ビデオエンコーダまたはビデオデコーダ）は、ビットストリームの、前にコーディングされたピクチャのＰＯＣ値に基づいて、ピクチャのためのＰＯＣ  ＭＳＢ値を決定し得る。
【００２０】
[0026]ＰＯＣ値は、マルチレイヤ・ビデオコーディングでは、複数のレイヤからのビデオデータが適宜に出力されることを保証するために使用され得る。たとえば、マルチレイヤ・ビデオコーディング（たとえば、マルチビュー・ビデオコーディング、スケーラブルビデオコーディングなど）では、ビューコンポーネントは、（表示順序、または出力順序に関して）特定の時間における特定のレイヤまたはビューのための符号化ピクチャを備え得る。アクセスユニットは、概して、共通の時間インスタンスのためのすべてのビューコンポーネント（たとえば、すべてのネットワーク・アブストラクション・レイヤ（ＮＡＬ：network abstraction layer）ユニット）を含むデータのユニットである。アクセスユニットのビューコンポーネントは、一般に、一緒に出力される（すなわち、実質的に同時に出力される）ものであり、ここで、ピクチャを出力することは、概して、ピクチャをＤＰＢから転送すること（たとえば、ピクチャをＤＢＰから外部メモリに記憶すること、ピクチャをＤＰＢからディスプレイに送ること、ピクチャをＤＰＢから削除することなど）を伴う。
【００２１】
[0027]ビデオコーダは周期的にＰＯＣ値をリセットし得る。たとえば、ビデオコーダは、一般に、瞬間デコーダリフレッシュ（ＩＤＲ：Instantaneous Decoder Refresh）ピクチャ（たとえば、イントラ予測されたスライスのみを含んでいるピクチャ）のためのＰＯＣ値をリセットし得る。ＰＯＣ値をリセットすることに加えて、ビデオコーダは、ＰＯＣリセットに関連付けられた現在ピクチャより前に処理され、ＤＰＢに記憶されているピクチャのＰＯＣ値を減分し（decrement）得る。減分された参照ピクチャのＰＯＣ値は、そのようなピクチャの適切な出力順序を維持するために負値を有し得る。
【００２２】
[0028]いくつかの事例では、マルチレイヤ・ビットストリームのアクセスユニットの他のピクチャとのクロスレイヤ整合（cross-layer alignment）を維持するために、ビデオコーダは、アクセスユニット中のピクチャのＰＯＣ値をリセットし得る。シングルレイヤ・ビットストリーム（たとえば、ＨＥＶＣ）では、各アクセスユニットは、指定された分類ルールに従って互いに関連付けられ、復号順序で連続するＮＡＬユニットのセットを含み、各アクセスユニットは、（コード化ピクチャとも呼ばれる）ちょうど１つのピクチャを含んでいる。マルチレイヤ・ビットストリーム（たとえば、２つ以上のレイヤをもつＳＨＶＣまたはＭＶ−ＨＥＶＣビットストリーム）では、（マルチレイヤアクセスユニットとしても知られる）アクセスユニットは、１つまたは複数のコード化ピクチャを含み得る。１つまたは複数のコード化ピクチャがマルチレイヤアクセスユニット中に含まれる場合、各コード化ピクチャはサブビットストリーム内に配置される。例として、マルチレイヤアクセスユニットは、ベースレイヤ中に１つのコード化ピクチャを有し、エンハンスメントレイヤ中に１つのコード化ピクチャを有し得る。したがって、マルチレイヤアクセスユニットは、すべての関連するビデオコーディングレイヤ（ＶＣＬ：video coding layer）および非ＶＣＬ  ＮＡＬユニットを含む、同じ出力時間をもつレイヤにわたるすべてのコード化ピクチャを備える。アクセスユニット中のコード化ピクチャは、識別のために、およびアクセスユニットのピクチャが同じまたは実質的に同じ時間において出力されることを保証するために、ＰＯＣの同じ値に関連付けられ得る。
【００２３】
[0029]クロスレイヤ整合を維持するためのＰＯＣ値リセッティングに関して、説明のための例では、アクセスユニットは、ＰＯＣ値リセッティングを実行させるベースレイヤＩＤＲピクチャと、ＩＤＲピクチャでない非ベースレイヤピクチャとを含み得る。アクセスユニットの非ベースレイヤピクチャのＰＯＣ値がベースレイヤピクチャのＰＯＣ値に一致することを保証するために、ビデオコーダは、非ベースレイヤピクチャのＰＯＣ値をリセットし得る。
【００２４】
[0030]上述のように、独立非ベースレイヤは、非ベースレイヤがマルチレイヤ・ビットストリームから抽出されることを可能にするために特定の規格に関連付けられた特定のコーディングプロファイルに準拠し得る。しかしながら、独立してコーディングされるべきマルチレイヤ・ビットストリームの非ベースレイヤを与えることは、いくつかの課題を提示し得る。たとえば、図４に関して以下でより詳細に説明するように、独立非ベースレイヤのピクチャのＰＯＣ  ＬＳＢ値をリセットすることは、参照ピクチャセット（ＲＰＳ：reference picture set）の長期参照ピクチャ（ＬＴＲＰ：long-term reference picture）を適宜に識別することに関する問題を引き起こし得る。別の例として、独立非ベースレイヤのピクチャのＰＯＣ  ＬＳＢ値をリセットすることは、アクセスユニットがクロスレイヤ整合されないピクチャを含んでいることを引き起こし得る。
【００２５】
[0031]本開示の技法は、いくつかの事例では、上記で言及された課題に対処し得る。たとえば、本開示の技法は、マルチレイヤ・ビットストリームの非ベースレイヤが、非ベースレイヤへの最小変更で（たとえば、非ベースレイヤのスライスヘッダまたは他のシンタックスを変更することなしに）抽出および復号されることを可能にするために使用され得る。本開示の技法は、独立非ベースレイヤ中のイントラランダムアクセスポイント（ＩＲＡＰ：intra random access point）ピクチャのロケーションを決定するために使用され得る。このようにして、本開示の技法は、独立非ベースレイヤのピクチャのためのＰＯＣ値リセッティングを制御するために使用され得る。
【００２６】
[0032]本開示の態様によれば、ビデオコーダ（ビデオエンコーダまたはビデオデコーダ）は、マルチレイヤ・ビットストリームの独立して復号可能なレイヤのピクチャをコーディングし得る。ビデオコーダはまた、ピクチャのためのＰＯＣ  ＬＳＢ値が０に等しいときのみ、ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータをコーディングし得る。いくつかの例では、ビデオコーダは、コーディングされている独立非ベースレイヤ中のピクチャがＩＤＲピクチャであるとき、またはコーディングされているピクチャが、ＰＯＣ値リセットを実行することより前に０に等しいＰＯＣ  ＬＳＢ値を有するとき、エンハンスメントレイヤのためのＰＯＣ値リセットを示すデータのみをコーディングし得る。以下でより詳細に説明するように、ＰＯＣ値リセッティングが行われるロケーションを制御することは、ビデオコーダがＤＰＢ中の長期参照ピクチャを適宜に識別し、たとえば、本明細書で識別される規格など、特定のビデオコーディング規格とのビットストリーム準拠を維持し得ることを保証するのを助け得る。
【００２７】
[0033]説明のための非限定的な例では、本開示の技法は、独立非ベースレイヤがマルチレイヤ・スケーラブルビットストリームから抽出されることを可能にし得る。たとえば、ＳＨＶＣビットストリームは、５４０ｐの解像度を有するベースレイヤと１０８０ｐのエンハンスメントレイヤとを含み得る。規約によって、ベースレイヤでは、ＩＤＲピクチャは、最高３２個のピクチャごとに含まれ得る。エンハンスメントレイヤでは、ＩＤＲは、異なる間隔で、たとえば、９６個のピクチャごとに含まれ得る。
【００２８】
[0034]本開示の技法は、エンハンスメントレイヤがベースのＨＥＶＣ規格（base HEVC standard）との適合性を維持するように、そのようなスケーラブルビットストリームが形成される様式を制約するために使用され得る。たとえば、本明細書で説明するように、本開示の技法は、エンハンスメントレイヤがＳＨＶＣビットストリームから抽出され、ベースのＨＥＶＣ規格に準拠するデコーダによって復号され得るように、ＰＯＣ値リセッティングがＳＨＶＣビットストリームのために実行される様式を制御するために使用され得る。したがって、（ＨＥＶＣビットストリームではなく）ＨＥＶＣビットストリームを復号する能力を有するモバイルコンピューティングデバイスは、エンハンスメントレイヤの（本明細書で説明するように、ＰＯＣ値情報を含んでいる）スライスヘッダを変更することなしにエンハンスメントレイヤを受信および復号し得る。
【００２９】
[0035]図１は、本開示の技法による、ＰＯＣ値を管理するための技法を利用し得る例示的なビデオ符号化および復号システム１０を示すブロック図である。図１に示されているように、システム１０は、宛先デバイス１４によって後で復号されるべき符号化ビデオデータを与えるソースデバイス１２を含む。特に、ソースデバイス１２は、コンピュータ可読媒体１６を介してビデオデータを宛先デバイス１４に与える。
【００３０】
[0036]ソースデバイス１２および宛先デバイス１４は、デスクトップコンピュータ、ノートブック（すなわち、ラップトップ）コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲にわたるデバイスのいずれかを備え得る。場合によっては、ソースデバイス１２および宛先デバイス１４はワイヤレス通信のために装備され得る。
【００３１】
[0037]コンピュータ可読媒体１６は、ソースデバイス１２から宛先デバイス１４に符号化ビデオデータを移動させることが可能な任意のタイプの媒体またはデバイスを備え得る。一例では、コンピュータ可読媒体１６は、ソースデバイス１２が、符号化ビデオデータを宛先デバイス１４にリアルタイムで直接送信することを可能にするための通信媒体を備え得る。符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先デバイス１４に送信され得る。通信媒体は、無線周波数（ＲＦ）スペクトルあるいは１つまたは複数の物理伝送ラインなど、任意のワイヤレスまたはワイヤード通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、またはインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、ソースデバイス１２から宛先デバイス１４への通信を容易にするために有用であり得るルータ、スイッチ、基地局、または任意の他の機器を含み得る。
【００３２】
[0038]いくつかの例では、コンピュータ可読媒体１６はストレージデバイスを含み得る。たとえば、ストレージデバイスは、ハードドライブ、Ｂｌｕ−ｒａｙ（登録商標）ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、フラッシュメモリ、揮発性または不揮発性メモリ、あるいは符号化ビデオデータを記憶するための任意の他の好適なデジタル記憶媒体など、様々な分散されたまたはローカルにアクセスされるデータ記憶媒体のいずれかを含み得る。さらなる一例では、ストレージデバイスは、ソースデバイス１２によって生成された符号化ビデオを記憶し得、宛先デバイスによってアクセスされ得るファイルサーバまたは別の中間ストレージデバイスに対応し得る。例示的なファイルサーバとしては、（たとえば、ウェブサイト用の）ウェブサーバ、ＦＴＰサーバ、ネットワークアタッチドストレージ（ＮＡＳ）デバイス、またはローカルディスクドライブがある。
【００３３】
[0039]図１の例では、ソースデバイス１２は、ビデオソース１８と、ビデオエンコーダ２０と、出力インターフェース２２とを含む。宛先デバイス１４は、入力インターフェース２８と、ビデオデコーダ３０と、ディスプレイデバイス３２とを含む。他の例では、ソースデバイスおよび宛先デバイスは他のコンポーネントまたは構成を含み得る。たとえば、ソースデバイス１２は、外部カメラなど、外部ビデオソースからビデオデータを受信し得る。同様に、宛先デバイス１４は、統合ディスプレイデバイスを含むのではなく、外部ディスプレイデバイスとインターフェースし得る。したがって、図１の図示されたシステム１０は、一例にすぎない。本開示の技法による、ＰＯＣ値を管理するための技法は、任意のデジタルビデオ符号化および／または復号デバイスによって実行され得る。
【００３４】
[0040]概して、本開示の技法はビデオ符号化デバイスによって実行されるが、本技法は、一般に「コーデック」と呼ばれるビデオエンコーダ／デコーダによっても実行され得る。その上、本開示の技法はまた、ビデオプリプロセッサによって実行され得る。ソースデバイス１２および宛先デバイス１４は、ソースデバイス１２が宛先デバイス１４への送信のためのコーディングされたビデオデータを生成するような、コーディングデバイスの例にすぎない。いくつかの例では、デバイス１２、１４は、デバイス１２、１４の各々がビデオ符号化構成要素とビデオ復号構成要素とを含むように、実質的に対称的に動作し得る。したがって、システム１０は、たとえば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、またはビデオテレフォニーのための、ビデオデバイス１２とビデオデバイス１４との間の一方向または双方向のビデオ送信をサポートし得る。
【００３５】
[0041]ソースデバイス１２のビデオソース１８は、ビデオカメラなどのビデオキャプチャデバイス、以前にキャプチャされたビデオを含んでいるビデオアーカイブ、および／またはビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェースを含み得る。さらなる代替として、ビデオソース１８は、ソースビデオとしてのコンピュータグラフィックスベースのデータ、またはライブビデオとアーカイブビデオとコンピュータ生成ビデオとの組合せを生成し得る。場合によっては、ビデオソース１８がビデオカメラである場合、ソースデバイス１２および宛先デバイス１４は、いわゆるカメラフォンまたはビデオフォンを形成し得る。ただし、上述のように、本開示で説明する技法は、概してビデオコーディングに適用可能であり得、ワイヤレスおよび／またはワイヤード適用例に適用され得る。各場合において、キャプチャされたビデオ、前にキャプチャされたビデオ、またはコンピュータ生成ビデオは、ビデオエンコーダ２０によって符号化され得る。符号化ビデオ情報は、次いで、出力インターフェース２２によってコンピュータ可読媒体１６上に出力され得る。
【００３６】
[0042]上述のように、コンピュータ可読媒体１６は、ワイヤレスブロードキャストまたはワイヤードネットワーク送信などの一時媒体、あるいはハードディスク、フラッシュドライブ、コンパクトディスク、デジタルビデオディスク、Ｂｌｕ−ｒａｙディスク、または他のコンピュータ可読媒体などの記憶媒体（すなわち、非一時的記憶媒体）を含み得る。いくつかの例では、ネットワークサーバ（図示せず）は、ソースデバイス１２から符号化ビデオデータを受信し、たとえば、ネットワーク送信を介して、その符号化ビデオデータを宛先デバイス１４に与え得る。同様に、ディスクスタンピング設備（a disc stamping facility）など、媒体製造設備（a medium production facility）のコンピューティングデバイスは、ソースデバイス１２から符号化ビデオデータを受信し、その符号化ビデオデータを含んでいるディスクを生成し得る。したがって、コンピュータ可読媒体１６は、様々な例において、様々な形態の１つまたは複数のコンピュータ可読媒体を含むことが理解されよう。
【００３７】
[0043]宛先デバイス１４の入力インターフェース２８は、コンピュータ可読媒体１６から情報を受信するか、またはコンピュータ可読媒体１６からの情報にアクセスし得る。コンピュータ可読媒体１６の情報は、ブロックおよび他のコーディングされたユニット、たとえば、ピクチャのグループ（ＧＯＰ：group of picture）の特性および／または処理を記述するシンタックス要素を含む、ビデオエンコーダ２０によって定義され、またビデオデコーダ３０によって使用されるシンタックス情報を含み得る。ディスプレイデバイス３２は、ユーザに復号されたビデオデータを表示し、陰極線管（ＣＲＴ）、液晶ディスプレイ（ＬＣＤ）、プラズマディスプレイ、有機発光ダイオード（ＯＬＥＤ）ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備え得る。
【００３８】
[0044]宛先デバイス１４は、インターネット接続を含む、任意の標準のデータ接続を通して符号化ビデオデータにアクセスし得る。これは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに好適であるワイヤレスチャネル（たとえば、Ｗｉ−Ｆｉ（登録商標）接続）、ワイヤード接続（たとえば、ＤＳＬ、ケーブルモデムなど）、またはその両方の組合せを含み得る。ストレージデバイスからの符号化ビデオデータの送信は、ストリーミング送信、ダウンロード送信、またはそれらの組合せであり得る。本開示の技法は、必ずしもワイヤレス適用例または設定に限定されるとは限らない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、動的適応ストリーミングオーバーＨＴＴＰ（ＤＡＳＨ：dynamic adaptive streaming over HTTP）などのインターネットストリーミングビデオ送信、データ記憶媒体上に符号化されたデジタルビデオ、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、システム１０は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および／またはビデオテレフォニーなどの適用例をサポートするために、一方向または双方向のビデオ送信をサポートするように構成され得る。
【００３９】
[0045]ビデオエンコーダ２０およびビデオデコーダ３０はそれぞれ、１つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ（ＤＳＰ）、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の組合せなど、様々な好適なエンコーダ回路のいずれかとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、デバイスは、好適な非一時的コンピュータ可読媒体にソフトウェアの命令を記憶し、本開示の技法を実行するために１つまたは複数のプロセッサを使用してその命令をハードウェアで実行し得る。ビデオエンコーダ２０およびビデオデコーダ３０の各々は１つまたは複数のエンコーダまたはデコーダ中に含まれ得、そのいずれも、それぞれのデバイスにおいて複合コーデックの一部として統合され得る。ビデオエンコーダ２０および／またはビデオデコーダ３０を含むデバイスは、集積回路、マイクロプロセッサ、および／またはセルラー電話などのワイヤレス通信デバイスを備え得る。
【００４０】
[0046]図１には示されていないが、いくつかの態様では、ビデオエンコーダ２０およびビデオデコーダ３０は、それぞれ、オーディオエンコーダおよびデコーダと統合され得、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理するために、適切なＭＵＸ−ＤＥＭＵＸユニット、または他のハードウェアおよびソフトウェアを含み得る。適用可能な場合、ＭＵＸ−ＤＥＭＵＸユニットは、ＩＴＵ  Ｈ．２２３マルチプレクサプロトコル、またはユーザデータグラムプロトコル（ＵＤＰ）などの他のプロトコルに準拠し得る。
【００４１】
[0047]本開示では、概して、ある情報をビデオデコーダ３０などの別のデバイスに「シグナリング」するビデオエンコーダ２０に言及することがある。ただし、ビデオエンコーダ２０は、いくつかのシンタックス要素をビデオデータの様々な符号化部分に関連付けることによって情報をシグナリングし得ることを理解されたい。すなわち、ビデオエンコーダ２０は、いくつかのシンタックス要素をビデオデータの様々な符号化部分のヘッダに記憶することによってデータを「シグナリング」し得る。場合によっては、そのようなシンタックス要素は、ビデオデコーダ３０によって受信され、復号されるより前に、符号化され、記憶され得る。したがって、「シグナリング」という用語は、概して、通信がリアルタイムまたはほぼリアルタイムで行われるかどうか、あるいは、符号化時にシンタックス要素を媒体に記憶し、次いで、この媒体に記憶された後の任意の時間にそのシンタックス要素が復号デバイスによって取り出され得るときなどに行われ得る、ある時間期間にわたって行われるかどうかにかかわらず、圧縮されたビデオデータを復号するためのシンタックスまたは他のデータの通信を指し得る。
【００４２】
[0048]ビデオエンコーダ２０およびビデオデコーダ３０は、ビデオコーディング規格に従って動作し得る。最近では、新しいビデオコーディング規格、すなわち、高効率ビデオコーディング（ＨＥＶＣ）の設計が、ＩＴＵ−Ｔビデオコーディングエキスパートグループ（ＶＣＥＧ：Video Coding Experts Group）とＩＳＯ／ＩＥＣモーションピクチャエキスパートグループ（ＭＰＥＧ：Motion Picture Experts Group）とのジョイントコラボレーションチームオンビデオコーディング（ＪＣＴ−ＶＣ：Joint Collaboration Team on Video Coding）によって確定された。また、ＨＥＶＣのマルチビュー拡張、すなわちＭＶ−ＨＥＶＣがＪＣＴ−３Ｖによって開発されている。ＭＶ−ＨＥＶＣ  ＷＤ７と呼ばれるＭＶ−ＨＥＶＣの最近のワーキングドラフト（ＷＤ：Working Draft）。ＳＨＶＣと称するＨＥＶＣのスケーラブル拡張も、ＪＣＴ−ＶＣによって開発されている。ＳＨＶＣの最近のワーキングドラフト（ＷＤ）は、およびＳＨＶＣ  ＷＤ５と呼ばれる。ただし、本開示の技法は、いかなる特定のコーディング規格にも限定されない。
【００４３】
[0049]ＨＥＶＣおよび他のビデオコーディング規格では、ビデオシーケンスは一般に一連のピクチャを含む。ピクチャは「フレーム」と呼ばれることもある。ピクチャは、ＳL、ＳCbおよびＳCrと示される３つのサンプルアレイを含み得る。ＳLはルーマサンプルの２次元アレイ（すなわち、ブロック）である。ＳCbはＣｂクロミナンスサンプルの２次元アレイである。ＳCrはＣｒクロミナンスサンプルの２次元アレイである。クロミナンスサンプルは、本明細書では「クロマ」サンプルと呼ばれることもある。他の事例では、ピクチャはモノクロームであり得、ルーマサンプルのアレイのみを含み得る。
【００４４】
[0050]ピクチャの符号化表現を生成するために、ビデオエンコーダ２０はコーディングツリーユニット（ＣＴＵ：coding tree unit）のセットを生成し得る。ＣＴＵの各々は、ルーマサンプルのコーディングツリーブロック、クロマサンプルの２つの対応するコーディングツリーブロック、およびコーディングツリーブロックのサンプルをコーディングするために使用されるシンタックス構造であり得る。コーディングツリーブロックは、サンプルのＮ×Ｎブロックであり得る。ＣＴＵは「ツリーブロック」または「最大コーディングユニット」（ＬＣＵ：largest coding unit）と呼ばれることもある。ＨＥＶＣのＣＴＵは、Ｈ．２６４／ＡＶＣなど、他の規格のマクロブロックに広い意味で類似し得る。しかしながら、ＣＴＵは、必ずしも特定のサイズに限定されるとは限らず、１つまたは複数のコーディングユニット（ＣＵ）を含み得る。
【００４５】
[0051]スライスは、ラスタ走査（raster scan）において連続的に順序付けられた整数個のＣＴＵを含み得る。スライスはスライスヘッダとスライスデータとを備え得る。スライスのスライスヘッダは、スライスについての情報を提供するシンタックス要素を含むシンタックス構造であり得る。スライスデータはスライスのコード化ＣＴＵを含み得る。
【００４６】
[0052]本開示では、１つまたは複数のサンプルブロックと、サンプルの１つまたは複数のブロックのサンプルをコーディングするために使用されるシンタックス構造とを指すために、「ビデオユニット」、または「ビデオブロック」、または「ブロック」という用語を使用し得る。例示的なタイプのビデオユニットまたはブロックは、ＣＴＵ、ＣＵ、ＰＵ、変換ユニット（ＴＵ）、マクロブロック、マクロブロックパーティション（macroblock partitions）などを含み得る。いくつかのコンテキストでは、ＰＵの説明は、マクロブロックパーティションのマクロブロックの説明と置き換えられ得る。
【００４７】
[0053]コード化ＣＴＵを生成するために、ビデオエンコーダ２０は、コーディングツリーブロックをコーディングブロックに分割するためにＣＴＵのコーディングツリーブロックに対して４分木区分（quad-tree partitioning）を再帰的に実行し得、したがって「コーディングツリーユニット」という名称がある。コーディングブロックはサンプルのＮ×Ｎブロックである。ＣＵは、ルーマサンプルアレイ、ＣｂサンプルアレイおよびＣｒサンプルアレイ、ならびにコーディングブロックのサンプルをコーディングするために使用されるシンタックス構造を有する、ピクチャのルーマサンプルの１つのコーディングブロックおよびクロマサンプルの２つの対応するコーディングブロックであり得る。ビデオエンコーダ２０は、ＣＵのコーディングブロックを１つまたは複数の予測ブロックに区分し得る。予測ブロックは、同じ予測が適用されるサンプルの矩形（すなわち、正方形または非正方形）ブロックであり得る。ＣＵの予測ユニット（ＰＵ）は、ピクチャのルーマサンプルの予測ブロックと、クロマサンプルの２つの対応する予測ブロックと、予測ブロックサンプルを予測するために使用されるシンタックス構造とであり得る。ビデオエンコーダ２０は、ＣＵの各ＰＵのルーマ予測ブロックとＣｂ予測ブロックとＣｒ予測ブロックとのための予測ルーマブロックと予測Ｃｂブロックと予測Ｃｒブロックとを生成し得る。
【００４８】
[0054]ビデオエンコーダ２０は、ＰＵのための予測ブロックを生成するためにイントラ予測またはインター予測を使用し得る。ビデオエンコーダ２０がＰＵの予測ブロックを生成するためにイントラ予測を使用する場合、ビデオエンコーダ２０は、ＰＵに関連付けられたピクチャの復号サンプルに基づいてＰＵの予測ブロックを生成し得る。
【００４９】
[0055]ビデオエンコーダ２０が、ＰＵの予測ブロックを生成するためにインター予測を使用する場合、ビデオエンコーダ２０は、ＰＵに関連付けられたピクチャ以外の１つまたは複数のピクチャの復号サンプルに基づいて、ＰＵの予測ブロックを生成し得る。ビデオエンコーダ２０は、ＰＵの予測ブロックを生成するために単予測または双予測（uni-prediction or bi-prediction）を使用し得る。ビデオエンコーダ２０が、ＰＵのための予測ブロックを生成するために単予測を使用するとき、ＰＵは単一の動きベクトル（ＭＶ：motion vector）を有し得る。ビデオエンコーダ２０が、ＰＵのための予測ブロックを生成するために双予測を使用するとき、ＰＵは２つの動きベクトル（ＭＶ）を有し得る。
【００５０】
[0056]ビデオエンコーダ２０がＣＵの１つまたは複数のＰＵのための予測ルーマブロック、予測Ｃｂブロック、および予測Ｃｒブロックを生成した後、ビデオエンコーダ２０は、ＣＵのためのルーマ残差ブロックを生成し得る。ＣＵのルーマ残差ブロック中の各サンプルは、ＣＵの予測ルーマブロックのうちの１つ中のルーマサンプルとＣＵの元のルーマコーディングブロック中の対応するサンプルとの間の差を示す。さらに、ビデオエンコーダ２０はＣＵのためのＣｂ残差ブロックを生成し得る。ＣＵのＣｂ残差ブロック中の各サンプルは、ＣＵの予測Ｃｂブロックのうちの１つ中のＣｂサンプルとＣＵの元のＣｂコーディングブロック中の対応するサンプルとの間の差を示し得る。ビデオエンコーダ２０はまた、ＣＵのためのＣｒ残差ブロックを生成し得る。ＣＵのＣｒ残差ブロック中の各サンプルは、ＣＵの予測Ｃｒブロックのうちの１つ中のＣｒサンプルとＣＵの元のＣｒコーディングブロック中の対応するサンプルとの間の差を示し得る。
【００５１】
[0057]さらに、ビデオエンコーダ２０は、ＣＵのルーマ残差ブロックとＣｂ残差ブロックとＣｒ残差ブロックとを１つまたは複数のルーマ変換ブロックとＣｂ変換ブロックとＣｒ変換ブロックとに分解するために４分木区分を使用し得る。変換ブロックは、同じ変換が適用されるサンプルの矩形ブロックであり得る。ＣＵの変換ユニット（ＴＵ）は、ルーマサンプルの変換ブロックと、クロマサンプルの２つの対応する変換ブロックと、変換ブロックサンプルを変換するために使用されるシンタックス構造とであり得る。したがって、ＣＵの各ＴＵは、ルーマ変換ブロック、Ｃｂ変換ブロック、およびＣｒ変換ブロックに関連付けられ得る。ＴＵに関連付けられたルーマ変換ブロックはＣＵのルーマ残差ブロックのサブブロックであり得る。Ｃｂ変換ブロックはＣＵのＣｂ残差ブロックのサブブロックであり得る。Ｃｒ変換ブロックはＣＵのＣｒ残差ブロックのサブブロックであり得る。
【００５２】
[0058]ビデオエンコーダ２０は、ＴＵのためのルーマ係数ブロックを生成するために、ＴＵのルーマ変換ブロックに１つまたは複数の変換を適用し得る。係数ブロックは変換係数の２次元アレイであり得る。変換係数はスカラー量であり得る。ビデオエンコーダ２０は、ＴＵのためのＣｂ係数ブロックを生成するために、ＴＵのＣｂ変換ブロックに１つまたは複数の変換を適用し得る。ビデオエンコーダ２０は、ＴＵのためのＣｒ係数ブロックを生成するために、ＴＵのＣｒ変換ブロックに１つまたは複数の変換を適用し得る。
【００５３】
[0059]係数ブロック（たとえば、ルーマ係数ブロック、Ｃｂ係数ブロックまたはＣｒ係数ブロック）を生成した後に、ビデオエンコーダ２０は、係数ブロックを量子化し得る。量子化は、一般に、変換係数を表すために使用されるデータの量をできるだけ低減するために変換係数が量子化され、さらなる圧縮を実現する処理を指す。ビデオエンコーダ２０が係数ブロックを量子化した後に、ビデオエンコーダ２０は、量子化された変換係数を示すシンタックス要素をエントロピー符号化し得る。たとえば、ビデオエンコーダ２０は、量子化された変換係数を示すシンタックス要素に対してコンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ：Context-Adaptive Binary Arithmetic Coding）を実行し得る。ビデオエンコーダ２０は、エントロピー符号化されたシンタックス要素をビットストリーム中に出力し得る。
【００５４】
[0060]ビデオエンコーダ２０は、シングルレイヤ・ビットストリームまたはマルチレイヤ・ビットストリームを出力し得る。各レイヤは、エントロピー符号化されたシンタックス要素を含む関連するビットストリームを有する。ビットストリームは、コード化ピクチャと関連データとの表現を形成するビットのシーケンスを含み得る。ビットストリームは、ネットワーク・アブストラクション・レイヤ（ＮＡＬ：network abstraction layer）ユニットのシーケンスを備え得る。ＮＡＬユニットの各々はＮＡＬユニットヘッダを含み、ローバイトシーケンスペイロード（ＲＢＳＰ：raw byte sequence payload）をカプセル化する。ＮＡＬユニットヘッダは、ＮＡＬユニットタイプコードを示すシンタックス要素を含み得る。ＮＡＬユニットのＮＡＬユニットヘッダによって指定されるＮＡＬユニットタイプコードは、ＮＡＬユニットのタイプを示す。ＲＢＳＰは、ＮＡＬユニット内にカプセル化された整数個のバイトを含んでいるシンタックス構造であり得る。いくつかの事例では、ＲＢＳＰは０ビットを含む。
【００５５】
[0061]異なるタイプのＮＡＬユニットは、異なるタイプのＲＢＳＰをカプセル化し得る。たとえば、第１のタイプのＮＡＬユニットはピクチャパラメータセット（ＰＰＳ：picture parameter set）のためのＲＢＳＰをカプセル化し得、第２のタイプのＮＡＬユニットはコード化スライスのためのＲＢＳＰをカプセル化し得、第３のタイプのＮＡＬユニットは補足エンハンスメント情報（ＳＥＩ：supplemental enhancement information）のためのＲＢＳＰをカプセル化し得、以下同様である。（パラメータセットおよびＳＥＩメッセージのためのＲＢＳＰとは対照的に）ビデオコーディングデータのためのＲＢＳＰをカプセル化するＮＡＬユニットは、ＶＣＬ  ＮＡＬユニットと呼ばれることがある。
【００５６】
[0062]ビデオデコーダ３０は、ビデオエンコーダ２０によって生成されたビットストリームを受信し得る。さらに、ビデオデコーダ３０は、ビットストリームからシンタックス要素を復号するために、ビットストリームをパーズし（parse）得る。ビデオデコーダ３０は、ビットストリームから復号されたシンタックス要素に少なくとも部分的に基づいてビデオデータのピクチャを再構成し得る。ビデオデータを再構成するためのプロセスは、概して、ビデオエンコーダ２０によって実行されるプロセスの逆であり得る。
【００５７】
[0063]たとえば、ビデオデコーダ３０は、現在ＣＵのＰＵのための予測サンプルブロックを決定するためにＰＵの動きベクトル（ＭＶ）を使用し得る。加えて、ビデオデコーダ３０は、現在ＣＵのＴＵに関連付けられた変換係数ブロックを逆量子化し得る。ビデオデコーダ３０は、現在ＣＵのＴＵに関連付けられた変換ブロックを再構成するために変換係数ブロックに対して逆変換を実行し得る。ビデオデコーダ３０は、現在ＣＵのＰＵのための予測サンプルブロックのサンプルを現在ＣＵのＴＵの変換ブロックの対応するサンプルに加算することによって、現在ＣＵのコーディングブロックを再構成し得る。ピクチャの各ＣＵのためのコーディングブロックを再構成することによって、ビデオデコーダ３０はピクチャを再構成し得る。
【００５８】
[0064]ビデオエンコーダ２０およびビデオデコーダ３０は、ビデオシーケンスの各ピクチャに、ピクチャの識別のためのＰＯＣ値を割り当て得る。ビデオエンコーダ２０は、たとえば、スライスヘッダ中で、および／あるいはＰＰＳまたはＳＰＳなどのパラメータセット中で、参照ピクチャのためのＰＯＣ値を表すデータをシグナリングすることによって、参照ピクチャリスト中に含まれるべき参照ピクチャを表すデータを符号化し得る（およびビデオデコーダ３０は復号し得る）。特定のコード化ピクチャのための、シンタックス要素ＰｉｃＯｒｄｅｒＣｎｔＶａｌによって表されるＰＯＣ値は、同じコード化ビデオシーケンス中の他のピクチャに対する、ピクチャ出力プロセスにおけるピクチャの相対的順序を示す。減分された参照ピクチャのＰＯＣ値は、そのようなピクチャの適切な出力順序を維持するために負値を有し得る。
【００５９】
[0065]ＰＯＣ値はＰＯＣ  ＬＳＢ値とＰＯＣ  ＭＳＢ値とを含む。ＰＯＣ  ＬＳＢ値は、各ピクチャについて増加し、初期値０から最大値（たとえば、４〜１６ビットを使用して指定された最大値）まで出力順序を指定し得る。８ビットＰＯＣ  ＬＳＢ値の例では、説明の目的で、２５５のＰＯＣ  ＬＳＢ値の後に、ＰＯＣ  ＬＳＢ値は２５５から０にロールオーバし得、ＰＯＣ  ＬＳＢ値は０から増加し続け得る。ＰＯＣ  ＬＳＢ値はスライスヘッダ中でシグナリングされ得るが、ＰＯＣ  ＭＳＢ値は、現在ピクチャのＮＡＬユニットタイプと、ＰＯＣアンカーピクチャ（POC-anchor pictures）と呼ばれる復号順序で前のピクチャのＭＳＢおよびＬＳＢとに基づいて、ビデオデコーダ３０によって計算され得る。ＳＨＶＣおよび／またはＭＶ−ＨＥＶＣの場合、ＰＯＣ  ＭＳＢの計算を支援するために、追加情報がシグナリングされ得る。そのような例では、追加情報が存在するとき、ＰＯＣ  ＭＳＢの計算は復号順序で前のピクチャに依存しない。
【００６０】
[0066]アクセスユニット、マルチレイヤ・ビットストリームは、ＩＲＡＰピクチャ、ならびにＩＲＡＰピクチャでない１つまたは複数の他のピクチャ（すなわち、非ＩＲＡＰピクチャ）を含み得る。ＩＲＡＰピクチャは、イントラコード化（Ｉ）スライスのみを含んでおり、切断リンクアクセス（ＢＬＡ：broken link access）ピクチャ、クリーンランダムアクセス（ＣＲＡ：clean random access）ピクチャまたはＩＤＲピクチャであり得る。各レイヤについて、コード化ビデオシーケンスのためのビットストリーム中の第１のピクチャはＩＲＡＰピクチャである。ＩＲＡＰピクチャはまた、マルチレイヤ・ビットストリームの各レイヤ中の様々なポイントにおいて与えられる。マルチレイヤアクセスユニットは、ＩＲＡＰピクチャが各レイヤ内で同じ間隔で離間されないことがあるので、ＩＲＡＰピクチャと非ＩＲＡＰピクチャとを含み得る。ＩＲＡＰピクチャが、一般に、インターコード化非ＩＲＡＰピクチャよりも大きいビットペイロードを必要とするので、ビデオエンコーダ２０は、ベースレイヤと比較してエンハンスメントレイヤ中でより大きい間隔でＩＲＡＰピクチャを離間させ得る。
【００６１】
[0067]たとえば、８のＧＯＰの場合、ビデオエンコーダ２０は、ベースレイヤでは３２個のピクチャごとにＩＲＡＰピクチャを離間させ、エンハンスメントレイヤでは９６個のピクチャごとにＩＲＡＰピクチャを離間させ得る。マルチレイヤ・ビットストリーム中のあるポイントにおいて、（ベースレイヤなどの）１つのレイヤがＩＲＡＰピクチャを有し、別のレイヤがＩＲＡＰピクチャを有しないとき、マルチレイヤアクセスユニットは、非整合アクセスユニット（a non-aligned access unit）と呼ばれることがある。後続のマルチレイヤアクセスユニットは、ＰＯＣがリセットされるまで非整合であり続ける。以下でさらに詳細に記載されるように、マルチレイヤアクセスユニットのすべてのレイヤにわたるＩＲＡＰピクチャのプロビジョン（provision）は整合をリセットし得る。
【００６２】
[0068]いくつかの事例では、マルチレイヤアクセスユニット中のピクチャのＰＯＣ整合を維持するために、マルチレイヤアクセスユニットのピクチャのためのＰＯＣ値はリセットされ得る。例として、規格準拠ＨＥＶＣデコーダは、抽出されたレイヤ中のピクチャのスライスヘッダ中の参照ピクチャセット（ＲＰＳ）情報を更新することなしにマルチレイヤ・ビットストリームの（エンハンスメントレイヤとしても知られる）非ベースレイヤを抽出および復号するように構成され得る。エンハンスメントレイヤは、たとえば、ＭＶ−ＨＥＶＣビットストリーム中の代替ビュー、またはＳＨＶＣビットストリーム中のスケーリングされたビデオであり得る。スライスセグメントヘッダ中でシグナリングされるＰＯＣリセッティング期間識別子（a POC resetting period identifier）に基づいて、レイヤ固有ＰＯＣリセッティング期間（a layer-specific POC resetting period）が指定され得る。すなわち、ビデオエンコーダ２０およびビデオデコーダ３０はそれぞれ、スライスセグメントヘッダ中でＰＯＣリセッティング期間識別子を表すデータをコーディングし得る。
【００６３】
[0069]少なくとも１つのＩＲＡＰピクチャを含んでいるアクセスユニットに属する（ＩＤＲピクチャタイプのピクチャを含む）各非ＩＲＡＰピクチャは、非ＩＲＡＰピクチャを含んでいるレイヤ中で開始され得るＰＯＣリセッティング期間の開始であり得る。すなわち、ビデオエンコーダ２０は、非ＩＲＡＰピクチャが新しいＰＯＣリセッティング期間の開始であることを示すために、少なくとも１つのＩＲＡＰピクチャを含んでいるアクセスユニットの非ＩＲＡＰピクチャのためのＰＯＣリセッティングタイプを設定し得る。そのようなアクセスユニットでは、各ピクチャは、その場合、レイヤの各々におけるＰＯＣリセッティング期間の開始になる。
【００６４】
[0070]ビデオエンコーダ２０は、ビデオデコーダ３０がスライスセグメントヘッダを有するスライスを含むレイヤ中のピクチャのＰＯＣ値を導出するために使用し得るＰＯＣ  ＬＳＢ値をスライスセグメントヘッダ中でシグナリングし得る。スライスセグメントヘッダ中でシグナリングされたＰＯＣ  ＬＳＢ値は、ＤＰＢ中の同じレイヤのピクチャのＰＯＣ値を更新するために使用され得るデルタＰＯＣ値の導出のために使用され、また、現在ピクチャのＰＯＣ値のＰＯＣ  ＭＳＢの導出のために使用され得る。
【００６５】
[0071]ＰＯＣリセッティング期間の間にＰＯＣリセッティングを実行するときに、ビデオエンコーダ２０は、スライスセグメントヘッダ中でＰＯＣリセッティングタイプをシグナリングし得る。ＰＯＣリセッティングタイプは、ＰＯＣ値が完全にまたは部分的にリセットされるべきであるかどうかを示し得るＰＯＣ値リセットインデックス（ｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃ）を使用して示され得る。たとえば、ＭＶ−ＨＥＶＣまたはＳＨＶＣでは、ＰＯＣリセッティングタイプは、ｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を使用して示され得る。そのような例では、０に等しいｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックスは、現在ピクチャのためのＰＯＣ値のＭＳＢもＬＳＢもリセットされないことを指定する。１に等しいｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素は、現在ピクチャのためのＰＯＣ値のＭＳＢのみがリセットされ得ることを指定する。２に等しいｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素は、現在ピクチャのためのＰＯＣ値のＭＳＢとＬＳＢの両方がリセットされ得ることを指定する。３に等しいｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素は、現在ピクチャのためのＰＯＣ値のＭＳＢのみまたはＭＳＢとＬＳＢの両方いずれかがリセットされ得、追加のＰＯＣ情報がシグナリングされることを指定する。
【００６６】
[0072] 独立非ベースレイヤが独立して復号可能であるために、ビデオエンコーダ２０およびビデオデコーダ３０は、ビットストリームを形成および復号するときにいくつかの制約を適用し得る。説明のための非限定的な例では、ビデオエンコーダ２０およびビデオデコーダ３０は、ＭＶ−ＨＥＶＣまたはＳＨＶＣを使用してマルチレイヤ・ビットストリームをコーディングし得る。ビデオエンコーダ２０およびビデオデコーダ３０は、独立非ベースレイヤがＨＥＶＣ準拠デコーダを使用して抽出および復号されることを可能にするようにその非ベースレイヤをコーディングするときに、１つまたは複数の制約を適用し得る。たとえば、独立非ベースレイヤが、ＨＥＶＣ準拠デコーダによって正常に復号されるために、ビデオエンコーダ２０およびビデオデコーダ３０は、ＨＥＶＣに準拠する独立非ベースレイヤのためのシンタックスを使用し得る。たとえば、ビデオエンコーダ２０およびビデオデコーダ３０は、ＨＥＶＣ規格に準拠するために、独立非ベースレイヤのスライスヘッダおよび他のシンタックスをコーディングし得る。このようにして、ＨＥＶＣ準拠ビデオデコーダは、スライスヘッダのデータを変更すること、または他のトランスコーディング動作（transcoding operations）を実行することなしに、独立非ベースレイヤを復号し得る。
【００６７】
[0073]いくつかの事例では、独立非ベースレイヤのピクチャのＰＯＣ  ＬＳＢ値をリセットすることは、ＲＰＳ中の長期参照ピクチャ（ＬＴＲＰ）を識別することを試みるときに問題を引き起こし得る。たとえば、上述のように、ビデオエンコーダ２０は、たとえば、スライスヘッダ中で、および／あるいはＰＰＳまたはＳＰＳなどのパラメータセット中で、参照ピクチャのためのＰＯＣ値を表すデータをシグナリングすることによって、参照ピクチャリスト中に含まれるべき参照ピクチャを表すデータを符号化し得る（およびビデオデコーダ３０はそのデータを復号し得る）。さらに、参照ピクチャリスト中に含まれるべき参照ピクチャを表すデータを含めるより前に、ビデオエンコーダ２０およびビデオデコーダ３０は、ＰＯＣリセットに関連付けられた現在ピクチャの前に処理され、ＤＰＢに記憶されたピクチャのＰＯＣ値を減分し得る。
【００６８】
[0074]ＬＴＲＰは、それぞれのＬＴＲＰのＰＯＣ  ＬＳＢ値に基づいて識別され得る。上述のように、ビデオエンコーダ２０は、一般に、ＰＯＣ値リセットを考慮するためにＰＯＣ値リセッティングを実行するときにＬＴＲＰのＰＯＣ  ＬＳＢ値を調整（たとえば、減分）し得る。したがって、ビデオエンコーダ２０は、一般に、スライスヘッダ中に（および／あるいはＰＰＳまたはＳＰＳ中に）ＬＴＲＰの減分されたＰＯＣ  ＬＳＢ値を含め得る。（たとえば、ＰＯＣ値リセットの後に）値が負であるＬＴＲＰの場合、ビデオエンコーダ２０またはビデオデコーダ３０は、変換アルゴリズムを使用して負のＰＯＣ  ＬＳＢ値を正のＰＯＣ  ＬＳＢ値に変換し得る。
【００６９】
[0075]しかしながら、いくつかのビデオデコーダは、ＰＯＣ値リセッティングに関連付けられたシンタックスを復号するように構成されないことがある。説明のための非限定的な例では、ＨＥＶＣ準拠ビデオデコーダは、マルチレイヤ・ビットストリームから抽出された独立非ベースレイヤを受信し得る。ＨＥＶＣ準拠ビデオデコーダは、ＰＯＣ値リセッティングシンタックスを適切に解釈しないことがある。そのような事例では、ＨＥＶＣ準拠ビデオデコーダはＰＯＣ値リセッティングを実行しないことがある。たとえば、ＨＥＶＣ準拠ビデオデコーダはＰＯＣ値リセッティング情報を廃棄し得、ＨＥＶＣ準拠ビデオデコーダのＤＰＢに記憶されたピクチャのＰＯＣ値を減分しないことがある。
【００７０】
[0076]上記で説明した例では、ＨＥＶＣ準拠ビデオデコーダは、ＰＯＣ値リセッティングを実行するか、またはＤＰＢに記憶されたピクチャのＰＯＣ値を減分するように構成されないことがあるので、ＨＥＶＣ準拠ビデオデコーダは、スライスヘッダ中でシグナリングされるＬＴＲＰのＰＯＣ  ＬＳＢ値に基づいてＬＴＲＰを適切に識別しないことがある。すなわち、ＨＥＶＣ準拠ビデオデコーダは、（ＰＯＣ値リセットにより）ピクチャのスライスヘッダ中でビデオエンコーダ２０によって減分されたＬＴＲＰのＰＯＣ値を受信し得る。しかしながら、スライスヘッダ中でシグナリングされるＬＴＲＰのＰＯＣ値は、ＨＥＶＣ準拠ビデオデコーダがＤＰＢのピクチャのＰＯＣ値を減分しなかったので、ＤＰＢ中の参照ピクチャと適切に整合しないことがある。したがって、ＨＥＶＣ準拠ビデオデコーダは、受信されたＰＯＣ値に基づいてＤＰＢ中のＬＴＲＰを正しく識別しないことがある。
【００７１】
[0077]説明のための例では、ビデオエンコーダ２０は、１０および２０のＰＯＣ  ＬＳＢ値を有するＬＴＲＰを使用してマルチレイヤ・ビットストリームの独立非ベースレイヤのピクチャを符号化し得る。ビデオエンコーダ２０は、６０のＰＯＣ  ＬＳＢ値を有するピクチャのＰＯＣ値リセッティングを実行し得る。したがって、ビデオエンコーダ２０は、ＤＰＢに記憶されたピクチャのＰＯＣ値を６０だけ減分し、減分されたＰＯＣ  ＬＳＢ値（たとえば、−５０および−４０）を使用してＬＴＲＰをシグナリングし得る。
【００７２】
[0078]しかしながら、ビデオデコーダが、ＰＯＣ値リセッティングを実行することなしにビットストリームを復号するように構成された事例では（上述したＨＥＶＣ準拠ビデオデコーダなど）、ビデオデコーダは、ＤＰＢに記憶されたピクチャのＰＯＣ  ＬＳＢ値を減分しないことがある。たとえば、マルチレイヤ・ビットストリームから独立非ベースレイヤを抽出すると、ビデオデコーダは、スライスヘッダから−５０および−４０のＬＴＲＰ  ＰＯＣ  ＬＳＢ値の指示（indications）を復号し得る。しかしながら、ビデオデコーダ３０がＰＯＣ値リセッティングを実行していなかったので、ＤＰＢに記憶された対応するピクチャは依然として１０および２０の値を有し得る。したがって、ビデオデコーダは、シグナリングされたＰＯＣ  ＬＳＢ値に基づいてＤＰＢ中のＬＴＲＰを適切に識別しないことがある。
【００７３】
[0079]本開示の態様によれば、ビデオエンコーダ２０およびビデオデコーダ３０は、ＰＯＣ値リセッティングが実行される様式を制御し得る。本技法は、いくつかの事例では、独立非ベースレイヤを復号するときに、スライスヘッダ中でシグナリングされるＬＴＲＰのＰＯＣ値が、ビデオデコーダのＤＰＢに記憶された参照ピクチャのＰＯＣ値との一貫性を維持することを可能にし得る。
【００７４】
[0080]一例では、ビデオエンコーダ２０およびビデオデコーダ３０は、マルチレイヤ・ビットストリームの独立して復号可能なレイヤのピクチャをコーディング（符号化または復号）し得る。ビデオエンコーダ２０およびビデオデコーダ３０はまた、ピクチャが、０に等しいピクチャのためのＰＯＣ  ＬＳＢ値を有するときのみ、ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータをコーディングし得る。そのような事例では、ＰＯＣ値リセットを実行することは、ＰＯＣ  ＬＳＢ値がすでに０に等しいので、ビデオエンコーダ２０またはビデオデコーダ３０に、ＤＰＢに記憶されたピクチャのＰＯＣ値を減分するように要求しない。
【００７５】
[0081]説明のために上記で説明した例に戻ると、ビデオエンコーダ２０およびビデオデコーダ３０が、（たとえば、上述した６０のＰＯＣ  ＬＳＢ値ではなく）０のＰＯＣ  ＬＳＢ値を有するピクチャにおいてＰＯＣ値リセッティングを実行する場合、ビデオエンコーダ２０およびビデオデコーダ３０は、ＰＯＣ  ＬＳＢ値と０との間の差が０であるので、ＤＰＢに記憶されたピクチャのＰＯＣ  ＬＳＢ値を減分しない。したがって、スライスヘッダ中でシグナリングされたＬＴＲＰのＰＯＣ  ＬＳＢ値は、ビデオデコーダ３０においてＤＰＢに記憶されたピクチャのＰＯＣ  ＬＳＢ値に一致する。
【００７６】
[0082]いくつかの例では、本開示の態様によれば、ビデオエンコーダ２０およびビデオデコーダ３０は、０に等しいＰＯＣ  ＬＳＢ値を有するピクチャのためにのみＰＯＣ値リセッティングが実行されるように制約を適用し得る。一例では、独立非ベースレイヤ（レイヤＡ）が、抽出され、レイヤＡ中のピクチャのＶＣＬ  ＮＡＬユニットのスライスヘッダを変更することなしに、特定の規格との適合性を維持する（たとえば、ＨＥＶＣのプロファイルとの適合性を維持する）ことが可能であるために、ビデオエンコーダ２０およびビデオデコーダ３０は、以下の制約、すなわち、（１）レイヤＡ中のＩＤＲピクチャのあらゆるスライスセグメントヘッダについて、ｓｌｉｃｅ＿ｐｉｃ＿ｏｒｄｅｒ＿ｃｎｔ＿ｌｓｂシンタックス要素が存在するとは限らないものとし、（２）レイヤ中の各ピクチャが、ＰＯＣ値のＭＳＢ値とＬＳＢ値の両方をリセットするＰＯＣリセッティングピクチャに先行する長期参照ピクチャを有しないものとする、を適用し得る。
【００７７】
[0083]別の例では、ビデオエンコーダ２０およびビデオデコーダ３０は、以下の制約、すなわち、（１）レイヤＡ中のＩＤＲピクチャのあらゆるスライスセグメントヘッダについて、ｓｌｉｃｅ＿ｐｉｃ＿ｏｒｄｅｒ＿ｃｎｔ＿ｌｓｂシンタックス要素が存在するとは限らないものとし、（２）レイヤＡ中のＰＯＣ値のＭＳＢ値とＬＳＢ値の両方をリセットするＰＯＣリセッティングピクチャが、（リセットの前に）０に等しいＰＯＣ  ＬＳＢを有しない限り、そのようなＰＯＣリセッティングピクチャはないものとする、を適用し得る。
【００７８】
[0084]別の例では、ビデオエンコーダ２０およびビデオデコーダ３０は、以下の制約、すなわち、（１）レイヤＡ中のＩＤＲピクチャのあらゆるスライスセグメントヘッダについて、ｓｌｉｃｅ＿ｐｉｃ＿ｏｒｄｅｒ＿ｃｎｔ＿ｌｓｂシンタックス要素が存在するとは限らないものとし、（２）レイヤＡ中のＰＯＣ値のＭＳＢ値とＬＳＢ値の両方をリセットするＰＯＣリセッティングピクチャもＩＤＲピクチャでない限り、そのようなＰＯＣリセッティングピクチャはないものとし、（３）リセッティングピクチャもＩＤＲピクチャでない限り、レイヤＡ中のＰＯＣ値のＭＳＢ値とＬＳＢ値とをリセットすることを示す、３に等しいｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素をもつＰＯＣリセッティングピクチャはないものとする、を適用し得る。
【００７９】
[0085]さらに別の例では、以下でより詳細に説明するように、ビデオエンコーダ２０およびビデオデコーダ３０は、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］の値をｂａｓｅ＿ｌａｙｅｒ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］の存在の条件とし得る。さらに別の例では、ビデオエンコーダ２０は、レイヤが抽出の後に特定の規格（たとえば、ＨＥＶＣ）との互換性を維持するかどうかを示すために、各独立非ベースレイヤのためのフラグをシグナリングし得る（およびビデオデコーダ３０はそのフラグを復号し得る）。
【００８０】
[0086]本開示の技法はまた、マルチレイヤアクセスユニットのピクチャのＰＯＣ値整合を維持すること（たとえば、アクセスユニットのすべてのピクチャが同じＰＯＣ値を有することを維持すること）に関する。たとえば、ＰＯＣ値リセッティングは、一般に、ＩＤＲピクチャのために実行されるが、マルチレイヤコーディングにおけるいくつかの事例では、ビデオエンコーダ２０およびビデオデコーダ３０は、ＩＤＲピクチャのＰＯＣ値をリセットしないことがある。説明のための例では、アクセスユニットは、ＩＤＲピクチャでないベースレイヤピクチャ、ＩＤＲピクチャである非ベースレイヤピクチャを含み得る。ビデオエンコーダ２０およびビデオデコーダ３０は、一般に、非ベースレイヤのＩＤＲピクチャのためのＰＯＣ値リセッティングを実行し得るが、アクセスユニット中のＰＯＣ値整合を維持するために、ビデオエンコーダ２０は、代わりに、非ベースレイヤピクチャのためのベースレイヤのＰＯＣ  ＬＳＢ値をシグナリングし得る（およびビデオデコーダ３０がそのＰＯＣ  ＬＳＢ値を復号し得る）。たとえば、ビデオエンコーダ２０は、非ベースレイヤピクチャのスライスヘッダ中に（０に等しくない）ベースレイヤのＰＯＣ  ＬＳＢ値の指示を含め得る。
【００８１】
[0087]しかしながら、上記で説明した例は、独立非ベースレイヤをコーディングするときに課題を提示し得る。説明のための非限定的な例では、ＨＥＶＣ準拠ビデオデコーダが、ＩＤＲピクチャのＰＯＣ  ＬＳＢ値を０に等しくなるようにリセットし得る。そのような例では、ＨＥＶＣ準拠ビデオデコーダは、ＰＯＣ  ＬＳＢ値が０であるので、ＩＤＲピクチャのスライスのスライスヘッダからＰＯＣ  ＬＳＢ値の指示を復号するように構成されないことがある。したがって、ＨＥＶＣ準拠ビデオデコーダが、ＩＤＲピクチャのスライスヘッダからＰＯＣ  ＬＳＢ値を復号するように構成されないことがあるので、ＨＥＶＣ準拠ビデオデコーダは、ＰＯＣ  ＬＳＢ値がＩＤＲピクチャのスライスヘッダ中でシグナリングされるとき、誤動作し（malfunction）得る。次いで、デコーダは、順次、次のＩＲＡＰピクチャにスキップし得、それにより、ユーザエクスペリエンス（a user experience）の連続性を劣化させ得る。
【００８２】
[0088]上述のＭＶ−ＨＥＶＣ規格およびＳＨＶＣ規格は、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇを含む１つまたは複数のシンタックス要素を使用して、サブビットストリームが独立して復号可能であるかどうかを示し得る。いくつかの事例では、１に等しいｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇは、たとえば、ＨＥＶＣ準拠ビデオデコーダによって、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇに関連付けられたレイヤが独立して復号可能であることを示し得る。逆に、０に等しいｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇは、スライスヘッダ中に含まれるシンタックスなどのいくつかのシンタックスが、そのレイヤが独立して復号されるように変更される必要があり得ることを示し得る。
【００８３】
[0089]概して、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇは、ＰＯＣ  ＬＳＢ値がＩＤＲピクチャのスライスヘッダ中に含まれるかどうかを示し得る。ＳＨＶＣとＭＶ−ＨＥＶＣとに従って、１に等しいｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇは、ＰＯＣ  ＬＳＢ値がＩＤＲピクチャのスライスヘッダ中に存在しないことを指定する。０に等しいｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇは、ＰＯＣ  ＬＳＢ値がＩＤＲピクチャのスライスヘッダ中に存在することも存在しないこともあることを指定する。ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇは、ＰＯＣ  ＬＳＢ値がスライスヘッダ中に含まれ得るという指示をそれが与えるので、非ベースレイヤの比較的より容易な抽出および復号を可能にし得る。
【００８４】
[0090]上述のＭＶ−ＨＥＶＣ規格およびＳＨＶＣ規格に関して、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇを（たとえば、ＰＯＣ  ＬＳＢ値がスライスヘッダ中に含まれないことを示す）１に等しく設定すること対する唯一の明示的制約は、コーディングされているレイヤが独立レイヤであることである。しかしながら、ＰＯＣ  ＬＳＢ値がスライスヘッダ中に含まれないことを示すことは、図５の例に関して以下でより詳細に説明するように、０のＰＯＣ  ＬＳＢ値を有しない独立レイヤのピクチャについて問題を生じ得る。
【００８５】
[0091]本開示の態様によれば、ビデオエンコーダ２０およびビデオデコーダ３０は、ピクチャが、０に等しいピクチャのためのＰＯＣ  ＬＳＢ値を有するときのみ、ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータをコーディングし得る。たとえば、ビデオエンコーダ２０およびビデオデコーダ３０は、レイヤ中のＩＤＲピクチャのＰＯＣ  ＬＳＢ値が０に等しいと推論されないことがある限り、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］の値が（たとえば、ＰＯＣ  ＬＳＢ値がスライスヘッダ中に含まれないことを示す）１に等しくならないものとするような制約を適用する。独立非ベースレイヤピクチャのＰＯＣ  ＬＳＢ値は、同じアクセスユニット中のベースレイヤピクチャのＰＯＣ  ＬＳＢ値がＩＤＲピクチャであるとき、または非ベースレイヤピクチャのＰＯＣ  ＬＳＢ値が（たとえば、０から最大ＰＯＣ  ＬＳＢ値までのＰＯＣ  ＬＳＢ値の通常漸進（a normal progression）に従って）０値化され（zero valued）たとき、０に等しいと推論され得る。
【００８６】
[0092]図２は、本開示の技法による、ＰＯＣ値を管理するための技法を実装し得るビデオエンコーダ２０の一例を示すブロック図である。特に、ビデオエンコーダ２０は、本開示の技法に従って、マルチレイヤ・ビットストリームのピクチャのＰＯＣ値を管理するように構成され得る。上述のように、ビデオエンコーダ２０は、マルチビューおよび／またはスケーラブルビデオコーディングを実行するように適応され得る。たとえば、ビデオエンコーダ２０は、ＳＨＶＣまたはＭＶ−ＨＥＶＣなどの１つまたは複数のビデオコーディング規格拡張に準拠するビットストリームを符号化するように構成され得る。ただし、特定のコーディング規格が参照されるが、本技法は、いずれか１つのコーディング規格に固有でなく、将来のおよび／またはまだ開発されていない規格とともに実装され得ることを理解されたい。
【００８７】
[0093]ビデオエンコーダ２０は、ビデオスライス内のビデオブロックのイントラコーディングおよびインターコーディングを実行し得る。イントラコーディングは、所与のビデオフレームまたはピクチャ内のビデオの空間的冗長性を低減または除去するために空間的予測に依拠する。インターコーディングは、ビデオシーケンスの隣接フレームまたはピクチャ内のビデオの時間的冗長性を低減または除去するために時間的予測に依拠する。イントラモード（Ｉモード）は、いくつかの空間ベースコーディングモードのいずれかを指すことがある。単方向予測（Ｐモード）または双方向予測（Ｂモード）などのインターモードは、いくつかの時間ベースのコーディングモードのいずれかを指すことがある。
【００８８】
[0094]図２に示されているように、ビデオエンコーダ２０は、符号化されるべきビデオフレーム内の現在ビデオブロックを受信する。図２の例では、ビデオエンコーダ２０は、ビデオデータメモリ３８と、モード選択ユニット４０と、参照ピクチャメモリ６４と、加算器５０と、変換処理ユニット５２と、量子化ユニット５４と、エントロピーエンコーディングユニット５６とを含む。モード選択ユニット４０は、順々に、動き補償ユニット４４と、動き推定ユニット４２と、イントラ予測ユニット４６と、パーティションユニット４８とを含む。ビデオブロック再構成のために、ビデオエンコーダ２０はまた、逆量子化ユニット５８と、逆変換ユニット６０と、加算器６２とを含む。再構成されたビデオからブロッキネスアーティファクト（blockiness artifacts）を除去するためにブロック境界をフィルタ処理する（図２に示されていない）デブロッキングフィルタも含まれ得る。所望される場合、デブロッキングフィルタは、一般に、加算器６２の出力をフィルタ処理することになる。（ループ中またはループ後の）追加のフィルタもデブロッキングフィルタに加えて使用され得る。そのようなフィルタは、簡潔のために示されていないが、所望される場合、（ループ内フィルタとして）加算器５０の出力をフィルタ処理し得る。
【００８９】
[0095]符号化プロセス中に、ビデオエンコーダ２０は、コーディングされるべきビデオフレームまたはスライスを受信する。フレームまたはスライスは、複数のビデオブロックに分割され得る。ビデオデータメモリ３８は、ビデオエンコーダ２０の構成要素によって符号化されるべきビデオデータを記憶し得る。ビデオデータメモリ３８に記憶されるビデオデータは、たとえば、ビデオソース１８から取得され得る。参照ピクチャメモリ６４は、たとえば、イントラコーディングモードまたはインターコーディングモードでビデオエンコーダ２０によってビデオデータを符号化する際に使用する参照ビデオデータを記憶するＤＰＢと呼ばれることがある。ビデオデータメモリ３８および参照ピクチャメモリ６４は、同期ＤＲＡＭ（ＳＤＲＡＭ）を含むダイナミックランダムアクセスメモリ（ＤＲＡＭ）、磁気抵抗ＲＡＭ（ＭＲＡＭ）、抵抗性ＲＡＭ（ＲＲＡＭ（登録商標））、または他のタイプのメモリデバイスなど、様々なメモリデバイスのうちのいずれかによって形成され得る。ビデオデータメモリ３８および参照ピクチャメモリ６４は、同じメモリデバイスまたは別個のメモリデバイスによって与えられ得る。様々な例では、ビデオデータメモリ３８は、ビデオエンコーダ２０の他の構成要素とともにオンチップであるか、またはそれらの構成要素に対してオフチップであり得る。
【００９０】
[0096]動き推定ユニット４２および動き補償ユニット４４は、時間的予測を行うために、１つまたは複数の参照フレーム中の１つまたは複数のブロックに対する受信されたビデオブロックのインター予測コーディングを実行する。イントラ予測ユニット４６は、代替的に、空間的予測を行うために、コーディングされるべきブロックと同じフレームまたはスライス中の１つまたは複数の近隣ブロックに対する受信されたビデオブロックのイントラ予測コーディングを実行し得る。ビデオエンコーダ２０は、たとえば、ビデオデータのブロックごとに適切なコーディングモードを選択するために、複数のコーディングパスを実行し得る。
【００９１】
[0097]その上、パーティションユニット４８は、前のコーディングパスにおける前の区分方式の評価に基づいて、ビデオデータのブロックをサブブロックに区分し得る。たとえば、パーティションユニット４８は、初めにフレームまたはスライスをＬＣＵに区分し、レートひずみ分析（rate-distortion analysis）（たとえば、レートひずみ最適化）に基づいてＬＣＵの各々をサブＣＵに区分し得る。モード選択ユニット４０は、さらに、サブＣＵへのＬＣＵの区分を示す４分木データ構造を生成し得る。４分木のリーフノードＣＵは、１つまたは複数のＰＵと１つまたは複数のＴＵとを含み得る。
【００９２】
[0098]モード選択ユニット４０は、たとえば、誤差結果に基づいてコーディングモード、すなわち、イントラまたはインターのうちの１つを選択し得、残差ブロックデータを生成するために、得られたイントラコード化ブロックまたはインターコード化ブロックを加算器５０に与え、参照フレームとして使用するための符号化ブロックを再構成するために、得られたイントラコード化ブロックまたはインターコード化ブロックを加算器６２に与える。モード選択ユニット４０はまた、動きベクトル、イントラモードインジケータ、パーティション情報、および他のそのようなシンタックス情報など、シンタックス要素をエントロピー符号化ユニット５６に与える。
【００９３】
[0099]動き推定ユニット４２および動き補償ユニット４４は、高度に統合され得るが、概念的な目的のために別々に示されている。動き推定ユニット４２によって実行される動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、たとえば、現在スライス（または他のコード化ユニット）内で符号化されている現在ブロックに対する参照ピクチャ（または他のコード化ユニット）内の予測ブロックに対する現在ビデオフレームまたはピクチャ内のビデオブロックのＰＵの変位（displacement）を示し得る。予測ブロックは、絶対差分和（ＳＡＤ：sum of absolute difference）、２乗差分和（ＳＳＤ：sum of square difference）、または他の差分メトリックによって決定され得るピクセル差分に関して、符号化されるべきブロックにぴったり一致することがわかるブロックである。
【００９４】
[0100]動き推定ユニット４２は、ＰＵの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化スライス中のビデオブロックのＰＵのための動きベクトルを計算する。参照ピクチャは、第１の参照ピクチャリスト（リスト０）または第２の参照ピクチャリスト（リスト１）から選択され得、それらの各々が、参照ピクチャメモリ６４に記憶された１つまたは複数の参照ピクチャを識別する。動き推定ユニット４２は、計算された動きベクトルをエントロピー符号化ユニット５６と動き補償ユニット４４とに送る。
【００９５】
[0101]動き補償ユニット４４によって実行される動き補償は、動き推定ユニット４２によって決定された動きベクトルに基づいて予測ブロックをフェッチまたは生成することを伴い得る。同じく、動き推定ユニット４２および動き補償ユニット４４は、いくつかの例では、機能的に統合され得る。現在ビデオブロックのＰＵのための動きベクトルを受信すると、動き補償ユニット４４は、動きベクトルが参照ピクチャリストのうちの１つにおいて指す予測ブロックの位置を特定し得る。加算器５０は、以下で説明するように、符号化されている現在ビデオブロックのピクセル値から予測ブロックのピクセル値を減算し、ピクセル差分値を形成することによって、残差ビデオブロックを形成する。概して、動き推定ユニット４２はルーマ成分に対して動き推定を実行し、動き補償ユニット４４は、クロマ成分とルーマ成分の両方のための、ルーマ成分に基づいて計算された動きベクトルを使用する。モード選択ユニット４０はまた、ビデオスライスのビデオブロックを復号する際にビデオデコーダ３０が使用するビデオブロックとビデオスライスとに関連するシンタックス要素を生成し得る。
【００９６】
[0102]動き推定ユニット４２は、参照ピクチャメモリ６４のＤＰＢに記憶された参照ピクチャを探索する。モード選択ユニット４０は、ピクチャ、ピクチャのスライス、および／またはピクチャのシーケンスを符号化するためにどの参照ピクチャが使用されるべきであるかを決定し得る。ビデオエンコーダ２０は、ピクチャ、スライス、またはシーケンスを符号化するために使用される参照ピクチャのためのピクチャ順序カウント（ＰＯＣ）値を符号化し得る。ビデオエンコーダ２０は、スライスヘッダ中で、ならびに／あるいはＰＰＳおよび／またはＳＰＳなどのパラメータセット中で、参照ピクチャリスト中に含まれるべき参照ピクチャを示すＰＯＣ値を符号化し得る。
【００９７】
[0103]このようにして、ビデオデコーダ３０などのビデオデコーダは、スライスヘッダおよび／または（１つまたは複数の）パラメータセット中で示された参照ピクチャを含めることによって参照ピクチャリストを再生し得る。さらに、動き推定ユニット４２によって生成された動きベクトルを使用してブロックを符号化した後、ビデオエンコーダ２０は、ブロックについての動き情報を符号化し得、ここで、動き情報は、動きベクトルを表すデータと、参照ピクチャリストのための識別子と、参照ピクチャリスト中の参照ピクチャを識別する参照インデックスとを含み得る。
【００９８】
[0104]いくつかの例では、ビデオエンコーダ２０は、参照ピクチャメモリ６４に記憶された参照ピクチャのサブ整数ピクセル位置（sub-integer pixel positions）の値を計算し得る。たとえば、ビデオエンコーダ２０は、参照ピクチャの１／４ピクセル位置、１／８ピクセル位置、または他の分数ピクセル位置（fractional pixel positions）の値を補間し得る。したがって、動き推定ユニット４２は、フルピクセル位置（full pixel positions）と分数ピクセル位置とに対する動き探索を実行し、分数ピクセル精度で動きベクトルを出力し得る。
【００９９】
[0105]ビデオエンコーダ２０はまた、ＰＯＣリセッティング期間を形成し、それぞれのＰＯＣリセッティング期間にスライスを割り当てるために、ピクチャのスライスのためのＰＯＣリセッティング期間識別子のための値を符号化し得る。ビデオエンコーダ２０は、ビデオデータの各レイヤ内で個々にＰＯＣリセッティング期間にスライスを割り当て得る。その上、ビデオエンコーダ２０は、スライスのためのＰＯＣリセッティングタイプを決定し、スライスのためのＰＯＣリセッティングタイプの指示のための値（たとえば、２ビット値）を符号化し得る。
【０１００】
[0106]図１に関して説明したように、ビデオエンコーダ２０は、適用可能なビデオコーディング規格によって確立された制限に従って構成され得る。たとえば、ビデオエンコーダ２０は、各ＰＯＣリセッティング期間における第１のピクチャが、ＰＯＣ値が完全または部分的にリセットされるべきであることを示すＰＯＣリセッティングタイプ（たとえば、ｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃ）を有することを保証し得る。概して、上記で説明したように、ビデオエンコーダ２０は、コーディング順序で現在ピクチャより前にコーディングされたピクチャのＰＯＣ  ＭＳＢ値に基づいて、またはスライスヘッダ中でシグナリングされる追加情報（たとえば、ＰＯＣ  ＭＳＢサイクル）に基づいて、現在ピクチャのためのＰＯＣ  ＭＳＢ値を決定し得る。
【０１０１】
[0107]本開示の態様によれば、ビデオエンコーダ２０は、０に等しいピクチャのためのＰＯＣ  ＬＳＢ値をピクチャが有するときのみ、独立非ベースレイヤのピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータを符号化し得る。たとえば、ビデオエンコーダ２０はｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を符号化し得る。ビデオエンコーダ２０は、現在ピクチャのためのＰＯＣ値のＭＳＢもＬＳＢもリセットされないことを指定するためにｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を０に等しく設定し得る。ビデオエンコーダ２０は、現在ピクチャのためのＰＯＣ値のＭＳＢのみがリセットされ得ることを指定するためにｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を１に等しく設定し得る。ビデオエンコーダ２０は、現在ピクチャのためのＰＯＣ値のＭＳＢとＬＳＢの両方がリセットされ得ることを指定するためにｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を２に等しく設定し得る。ビデオエンコーダ２０は、現在ピクチャのためのＰＯＣ値のＭＳＢのみまたはＭＳＢとＬＳＢの両方のいずれかがリセットされ得ることと、追加のピクチャ順序カウント情報がシグナリングされ得ることとを指定するためにｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を３に等しく設定し得る。
【０１０２】
[0108]ビデオエンコーダ２０は、ｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃ値が１つまたは複数の制約に基づいて設定される様式を制御し得る。たとえば、ビデオエンコーダ２０は、得られたビットストリームが特定の規格に準拠することを保証するために、ｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素が設定される様式を制御し得る。本開示の態様によれば、ビデオエンコーダ２０は、たとえば、マルチレイヤ・ビットストリームの独立非ベースレイヤのコード化スライスのスライスヘッダ中に含まれている情報を変更／更新することなしに、独立非ベースレイヤが独立して復号されることを可能にするように独立非ベースレイヤ中のピクチャのためのｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を設定し得る。
【０１０３】
[0109]たとえば、本開示の態様によれば、ビデオエンコーダ２０は、コーディングされているピクチャが０に等しいＰＯＣ  ＬＳＢ値を有するときのみ、２に等しくなるようにｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を符号化し得る。すなわち、コーディングされている特定のレイヤのためのｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが（たとえば、レイヤが独立非ベースレイヤであることを示す）１に等しく、ピクチャのＰＯＣ  ＬＳＢ値を示すｓｌｉｃｅ＿ｐｉｃ＿ｏｒｄｅｒ＿ｃｎｔ＿ｌｓｂシンタックス要素が０よりも大きいとき、ビデオエンコーダ２０は、ｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃの値を２に等しく設定しないことがある。
【０１０４】
[0110]ビデオエンコーダ２０がｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を３に等しくなるように符号化するとき、ビデオエンコーダ２０はｆｕｌｌ＿ｐｏｃ＿ｒｅｓｅｔ＿ｆｌａｇシンタックス要素とｐｏｃ＿ｌｓｂ＿ｖａｌシンタックス要素とをさらに符号化し得る。ＭＶ−ＨＥＶＣおよびＳＨＶＣでは、１に等しいｆｕｌｌ＿ｐｏｃ＿ｒｅｓｅｔ＿ｆｌａｇは、同じレイヤ中の復号順序で前のピクチャが同じＰＯＣリセッティング期間に属しないとき、現在ピクチャのためのＰＯＣ値のＭＳＢとＬＳＢの両方がリセットされることを指定する。０に等しいｆｕｌｌ＿ｐｏｃ＿ｒｅｓｅｔ＿ｆｌａｇは、同じレイヤ中の復号順序で前のピクチャが同じＰＯＣリセッティング期間に属しないとき、現在ピクチャのためのＰＯＣ値のＭＳＢのみがリセットされることを指定する。さらに、ｐｏｃ＿ｌｓｂ＿ｖａｌシンタックス要素は、現在ピクチャのピクチャ順序カウントを導出するために使用され得る値を指定する。
【０１０５】
[0111]本開示の態様によれば、ビデオエンコーダ２０は、符号化されているレイヤが独立非ベースレイヤであるかどうかに基づいてｐｏｃ＿ｌｓｂ＿ｖａｌが符号化される様式を制御し得る。たとえば、符号化されているレイヤのためのｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが１に等しく、ｆｕｌｌ＿ｐｏｃ＿ｒｅｓｅｔ＿ｆｌａｇが１に等しいとき、ビデオエンコーダ２０は、ｐｏｃ＿ｌｓｂ＿ｖａｌの値を０に等しく設定し得る。このようにして、ビデオエンコーダ２０は、ＰＯＣ値リセッティングが、０に等しいＰＯＣ  ＬＳＢ値を有するピクチャのためにのみ実行されることを保証し得、それにより、図４に関して以下でより詳細に説明するように、参照ピクチャが参照ピクチャセット中で適切に識別されることを可能にし得る。
【０１０６】
[0112]イントラ予測ユニット４６は、上記で説明したように、動き推定ユニット４２と動き補償ユニット４４とによって実行されるインター予測の代替として、現在ブロックをイントラ予測し得る。特に、イントラ予測ユニット４６は、現在ブロックを符号化するために使用すべきイントラ予測モードを決定し得る。いくつかの例では、イントラ予測ユニット４６は、たとえば、別個の符号化パス中に、様々なイントラ予測モードを使用して現在ブロックを符号化し得、イントラ予測ユニット４６（または、いくつかの例では、モード選択ユニット４０）は、テストされたモードから使用するのに適切なイントラ予測モードを選択し得る。
【０１０７】
[0113]たとえば、イントラ予測ユニット４６は、様々なテストされたイントラ予測モードのためのレートひずみ分析を使用してレートひずみ値を計算し、テストされたモードの中で最良のレートひずみ特性を有するイントラ予測モードを選択し得る。レートひずみ分析は、概して、符号化ブロックと、符号化ブロックを生成するために符号化された元の符号化されていないブロックとの間のひずみ（または誤差）の量、ならびに符号化ブロックを生成するために使用されるビットレート（すなわち、ビット数）を決定する。イントラ予測ユニット４６は、どのイントラ予測モードがブロックについて最良のレートひずみ値を呈するかを決定するために、様々な符号化ブロックのひずみおよびレートから比率を計算し得る。
【０１０８】
[0114]ブロックのためのイントラ予測モードを選択した後に、イントラ予測ユニット４６は、ブロックのための選択されたイントラ予測モードを示す情報をエントロピー符号化ユニット５６に与え得る。エントロピー符号化ユニット５６は、選択されたイントラ予測モードを示す情報を符号化し得る。ビデオエンコーダ２０は、複数のイントラ予測モードインデックステーブルおよび複数の変更されたイントラ予測モードインデックステーブル（コードワードマッピングテーブルとも呼ばれる）と、様々なブロックの符号化コンテキストの定義と、コンテキストの各々について使用すべき、最確イントラ予測モード（a most probable intra-prediction mode）、イントラ予測モードインデックステーブル、および変更されたイントラ予測モードインデックステーブルの指示と、を含み得る構成データを送信されるビットストリーム中に含め得る。
【０１０９】
[0115]ビデオエンコーダ２０は、コーディングされている元のビデオブロックから、モード選択ユニット４０からの予測データを減算することによって残差ビデオブロックを形成する。加算器５０は、この減算演算を実行する１つまたは複数の構成要素を表す。変換処理ユニット５２は、離散コサイン変換（ＤＣＴ）または概念的に同様の変換などの変換を残差ブロックに適用し、残差変換係数値（residual transform coefficient values）を備えるビデオブロックを生成する。変換処理ユニット５２は、ＤＣＴと概念的に同様である他の変換を実行し得る。ウェーブレット変換、整数変換、サブバンド変換または他のタイプの変換も使用され得る。いずれの場合も、変換処理ユニット５２は、変換を残差ブロックに適用し、残差変換係数のブロックを生成する。変換は、残差情報をピクセル値領域から周波数領域などの変換領域に変換し得る。
【０１１０】
[0116]変換処理ユニット５２は、得られた変換係数を量子化ユニット５４に送り得る。量子化ユニット５４は、ビットレートをさらに低減するために変換係数を量子化する。量子化プロセスは、係数の一部または全部に関連するビット深度を低減し得る。量子化の程度は、量子化パラメータを調整することによって変更され得る。いくつかの例では、量子化ユニット５４は、次いで、量子化された変換係数を含む行列の走査を実行し得る。代替的に、エントロピー符号化ユニット５６が走査を実行し得る。
【０１１１】
[0117]量子化の後に、エントロピー符号化ユニット５６は量子化された変換係数をエントロピーコーディングする。たとえば、エントロピー符号化ユニット５６は、コンテキスト適応型可変長コーディング（ＣＡＶＬＣ：context adaptive variable length coding）、コンテキスト適応型バイナリ算術コーディング（ＣＡＢＡＣ）、シンタックスベースコンテキスト適応型バイナリ算術コーディング（ＳＢＡＣ：syntax-based context-adaptive binary arithmetic coding）、確率間隔区分エントロピー（ＰＩＰＥ：probability interval partitioning entropy）コーディングまたは別のエントロピーコーディング技法を実行し得る。コンテキストベースのエントロピーコーディングの場合、コンテキストは隣接ブロックに基づき得る。エントロピー符号化ユニット５６によるエントロピーコーディングの後に、符号化ビットストリームは、別のデバイス（たとえば、ビデオデコーダ３０）に送信されるか、あるいは後で送信するかまたは取り出すためにアーカイブされ得る。
【０１１２】
[0118]逆量子化ユニット５８および逆変換ユニット６０は、たとえば、参照ブロックとして後で使用するために、ピクセル領域において残差ブロックを再構成するために、それぞれ逆量子化および逆変換を適用する。動き補償ユニット４４は、残差ブロックを参照ピクチャメモリ６４の複数のフレームのうちの１つのうちの予測ブロックに加算することによって参照ブロックを計算し得る。動き補償ユニット４４はまた、動き推定において使用するためのサブ整数ピクセル値を計算するために、再構成された残差ブロックに１つまたは複数の補間フィルタを適用し得る。加算器６２は、参照ピクチャメモリ６４に記憶するための再構成されたビデオブロックを生成するために、動き補償ユニット４４によって生成された動き補償予測ブロックに再構成された残差ブロックを加算する。再構成されたビデオブロックは、後続のビデオフレーム中のブロックをインターコーディングするために動き推定ユニット４２および動き補償ユニット４４によって参照ブロックとして使用され得る。
【０１１３】
[0119]このようにして、図２のビデオエンコーダ２０は、マルチレイヤ・ビットストリームの独立して復号可能なレイヤのピクチャの少なくとも一部分を符号化することと、ピクチャが、０に等しいピクチャのためのＰＯＣ  ＬＳＢ値を有するときのみ、ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータを符号化することと、を行うように構成されたビデオエンコーダの一例を表す。
【０１１４】
[0120]図３は、本開示の技法による、ＰＯＣ値を管理するための技法を実装し得る、ビデオデコーダ３０の一例を示すブロック図である。上述のように、ビデオデコーダ３０は、マルチビューおよび／またはスケーラブルビデオコーディングを実行するように適応され得る。たとえば、ビデオデコーダ３０は、ＳＨＶＣまたはＭＶ−ＨＥＶＣなどの１つまたは複数のビデオコーディング規格の拡張に準拠するビットストリームを復号するように構成され得る。ただし、特定のコーディング規格が参照されるが、本技法は、いずれか１つのコーディング規格に固有でなく、将来のおよび／またはまだ開発されていない規格とともに実装され得ることを理解されたい。
【０１１５】
[0121]図３の例では、ビデオデコーダ３０は、ビデオデータメモリ６８と、エントロピー復号ユニット７０と、動き補償ユニット７２と、イントラ予測ユニット７４と、逆量子化ユニット７６と、逆変換ユニット７８と、参照ピクチャメモリ８２と、加算器８０とを含む。ビデオデコーダ３０は、いくつかの例では、ビデオエンコーダ２０（図２）に関して説明した符号化パスとは概して逆の復号パスを実行し得る。動き補償ユニット７２は、エントロピー復号ユニット７０から受信された動きベクトルに基づいて予測データを生成し得、イントラ予測ユニット７４は、エントロピー復号ユニット７０から受信されたイントラ予測モードインジケータに基づいて予測データを生成し得る。
【０１１６】
[0122]ビデオデータメモリ６８は、ビデオデコーダ３０の構成要素によって復号されるべき、符号化ビデオビットストリームなどのビデオデータを記憶し得る。ビデオデータメモリ６８に記憶されるビデオデータは、たとえば、コンピュータ可読媒体から、たとえば、カメラなどのローカルビデオソースから、ビデオデータのワイヤードもしくはワイヤレスネットワーク通信を介して、または物理データ記憶媒体にアクセスすることによって、取得され得る。ビデオデータメモリ６８は、符号化ビデオビットストリームからの符号化ビデオデータを記憶するコード化ピクチャバッファ（ＣＰＢ：a coded picture buffer）を形成し得る。参照ピクチャメモリ８２は、たとえば、イントラコーディングモードまたはインターコーディングモードで、ビデオデコーダ３０によってビデオデータを復号する際に使用するための参照ビデオデータを記憶するＤＰＢと呼ばれることがある。ビデオデータメモリ６８および参照ピクチャメモリ８２は、同期ＤＲＡＭ（ＳＤＲＡＭ）を含むダイナミックランダムアクセスメモリ（ＤＲＡＭ）、磁気抵抗ＲＡＭ（ＭＲＡＭ）、抵抗性ＲＡＭ（ＲＲＡＭ）、または他のタイプのメモリデバイスなど、様々なメモリデバイスのうちのいずれかによって形成され得る。ビデオデータメモリ６８および参照ピクチャメモリ８２は、同じメモリデバイスまたは別個のメモリデバイスによって与えられ得る。様々な例では、ビデオデータメモリ６８は、ビデオデコーダ３０の他の構成要素とともにオンチップであるか、またはそれらの構成要素に対してオフチップであり得る。
【０１１７】
[0123]復号プロセス中に、ビデオデコーダ３０は、ビデオエンコーダ２０から、符号化ビデオスライスのビデオブロックと、関連するシンタックス要素とを表す符号化ビデオビットストリームを受信する。ビデオデコーダ３０のエントロピー復号ユニット７０は、量子化された係数と、動きベクトルまたはイントラ予測モードインジケータと、他のシンタックス要素とを生成するために、ビットストリームをエントロピー復号する。エントロピー復号ユニット７０は、動きベクトルと他の予測シンタックス要素とを動き補償ユニット７２に転送する。ビデオデコーダ３０は、ビデオスライスレベルおよび／またはビデオブロックレベルでシンタックス要素を受信し得る。
【０１１８】
[0124]ビデオスライスがイントラコード化（Ｉ）スライスとしてコーディングされるとき、イントラ予測ユニット７４は、シグナリングされたイントラ予測モードと、現在フレームまたはピクチャの、前に復号されたブロックからのデータとに基づいて、現在ビデオスライスのビデオブロックのための予測データを生成し得る。ビデオフレームがインターコード化（すなわち、Ｂ、ＰまたはＧＰＢ）スライスとしてコーディングされるとき、動き補償ユニット７２は、エントロピー復号ユニット７０から受信された動きベクトルと他のシンタックス要素とに基づいて、現在ビデオスライスのビデオブロックのための予測ブロックを生成する。予測ブロックは、参照ピクチャリストのうちの１つ内の参照ピクチャのうちの１つから生成され得る。ビデオデコーダ３０は、参照ピクチャメモリ８２のＤＰＢに記憶された参照ピクチャに基づくデフォルトの構成技法を使用して参照フレームリストのリスト０（Ｌ０）およびリスト１（Ｌ１）を構成し得る。
【０１１９】
[0125]より詳細には、ビデオデコーダ３０は、ＰＰＳに対応するピクチャのスライスがＰＯＣリセッティング情報を含むかどうかを示すＰＰＳを復号し得る。スライスがＰＯＣリセッティング情報を含むと仮定すると、ビデオデコーダ３０は、ＰＯＣリセッティング情報を含むピクチャのスライスのスライスセグメントヘッダを復号し得る。ＰＯＣリセッティング情報は、ＰＯＣリセッティング期間識別子とＰＯＣリセッティングタイプとを含み得る。
【０１２０】
[0126]ＰＯＣリセッティング期間識別子は、スライスが対応するＰＯＣリセッティング期間を示し得る。ＰＯＣリセッティングタイプは、スライスを含むピクチャのＰＯＣ値が完全にリセットされるかどうかを、またはＰＯＣ値のＭＳＢのみがリセットされることを、示し得る。さらに、ＰＯＣリセッティングタイプは、ＰＯＣリセットが実行されるべきでないことを、または追加の情報がシグナリングされることを、示し得る。ＰＯＣリセッティングタイプが、追加の情報がシグナリングされることを示す場合、ビデオデコーダ３０は、ＰＯＣ値が完全にリセットされるのか、あるいは、ＭＳＢのみがリセットされるのかどうかと、ＰＯＣ  ＬＳＢ値と、を示し得る、追加の情報を復号し得る。
【０１２１】
[0127]本開示の態様によれば、ビデオデコーダ３０は、マルチレイヤ・ビットストリームの独立して復号可能な非ベースレイヤを復号するように構成され得る。たとえば、本開示の態様によれば、ビデオデコーダ３０は、０に等しいピクチャのためのＰＯＣ  ＬＳＢ値をピクチャが有するときのみ、ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータを復号し得る。
【０１２２】
[0128]いくつかの例では、ビデオデコーダ３０は、ｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を復号するように構成され得る。本開示の態様によれば、ビデオデコーダ３０は、１つまたは複数の制約に基づいてｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を復号し得る。たとえば、ビデオデコーダ３０は、特定の規格に準拠するｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を復号し得る。たとえば、本開示の態様によれば、ビデオデコーダ３０は、コーディングされているピクチャが０に等しいＰＯＣ  ＬＳＢ値を有するときのみ、２に等しくなるようにｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を復号し得る。すなわち、コーディングされている特定のレイヤのためのｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが（たとえば、レイヤが独立非ベースレイヤであることを示す）１に等しく、ピクチャのＰＯＣ  ＬＳＢ値を示すｓｌｉｃｅ＿ｐｉｃ＿ｏｒｄｅｒ＿ｃｎｔ＿ｌｓｂシンタックス要素が０よりも大きいとき、ビデオデコーダ３０は、２に等しいｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃの値を復号しないことがある。
【０１２３】
[0129]ビデオデコーダ３０が、３に等しいｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を復号するとき、ビデオデコーダ３０はｆｕｌｌ＿ｐｏｃ＿ｒｅｓｅｔ＿ｆｌａｇシンタックス要素とｐｏｃ＿ｌｓｂ＿ｖａｌシンタックス要素とをさらに復号し得る。本開示の態様によれば、復号されているレイヤのためのｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが１に等しく、ｆｕｌｌ＿ｐｏｃ＿ｒｅｓｅｔ＿ｆｌａｇが１に等しいとき、ビデオデコーダ３０は、０に等しいｐｏｃ＿ｌｓｂ＿ｖａｌの値を復号し得る。このようにして、ビデオデコーダ３０は、ＰＯＣ値リセッティングが０に等しいＰＯＣ  ＬＳＢ値を有するピクチャのためにのみ実行されることを保証し得、それにより、図４に関して以下でより詳細に説明するように、参照ピクチャが参照ピクチャセット中で適切に識別されることを可能にし得る。
【０１２４】
[0130]ビデオデコーダ３０はまた、参照ピクチャリスト中に含まれるべき参照ピクチャのＰＯＣ値を復号し得る。ビデオデコーダ３０は、スライスセグメントヘッダ中で、および／あるいはＰＰＳまたはＳＰＳなどのパラメータセットから、これらのＰＯＣ値を復号し得る。次いで、ビデオデコーダ３０は、復号されたＰＯＣ値によって識別される参照ピクチャを含む参照ピクチャリストを構成し得る。
【０１２５】
[0131]スライスのための参照ピクチャリストを構成した後、ビデオデコーダ３０はスライスのブロックを復号し得る。動き補償ユニット７２は、動きベクトルと他のシンタックス要素とをパーズすることによって現在ビデオスライスのビデオブロックのための予測情報を決定し、復号されている現在ビデオブロックのための予測ブロックを生成するために、その予測情報を使用する。たとえば、動き補償ユニット７２は、ビデオスライスのビデオブロックをコーディングするために使用される予測モード（たとえば、イントラまたはインター予測）と、インター予測スライスタイプ（たとえば、Ｂスライス、Ｐスライス、またはＧＰＢスライス）と、スライスの各インター符号化ビデオブロックのための動きベクトルと、スライスの各インターコード化ビデオブロックのためのインター予測ステータスと、現在ビデオスライス中のビデオブロックを復号するための他の情報とを決定するために、受信されたシンタックス要素のいくつかを使用する。インター予測ブロックのための動き情報は、ブロックを予測するために使用すべき参照ピクチャリスト中の参照ピクチャを識別するために、参照ピクチャリスト識別子と参照インデックスとを含み得る。
【０１２６】
[0132]動き補償ユニット７２はまた、補間フィルタに基づいて補間を実行し得る。動き補償ユニット７２は、参照ブロックのサブ整数ピクセルの補間値を計算するために、ビデオブロックの符号化中にビデオエンコーダ２０によって使用された補間フィルタを使用し得る。この場合、動き補償ユニット７２は、受信されたシンタックス要素からビデオエンコーダ２０によって使用された補間フィルタを決定し、予測ブロックを生成するためにそれらの補間フィルタを使用し得る。
【０１２７】
[0133]逆量子化ユニット７６は、ビットストリーム中で与えられ、エントロピー復号ユニット７０によって復号された、量子化された変換係数を逆量子化（inverse quantize）、すなわち、逆量子化（de-quantize）する。逆量子化プロセスは、量子化の程度、および、同様に、適用されるべき逆量子化の程度、を決定するための、ビデオスライス中のビデオブロックごとにビデオエンコーダ３０によって計算される量子化パラメータＱＰYの使用を含み得る。
【０１２８】
[0134]逆変換ユニット７８は、ピクセル領域において残差ブロックを生成するために、逆変換、たとえば、逆ＤＣＴ、逆整数変換、または概念的に同様の逆変換プロセスを変換係数に適用する。
【０１２９】
[0135]動き補償ユニット７２が、動きベクトルと他のシンタックス要素とに基づいて現在ビデオブロックのための予測ブロックを生成した後、ビデオデコーダ３０は、逆変換ユニット７８からの残差ブロックを動き補償ユニット７２によって生成された対応する予測ブロックと加算することによって、復号されたビデオブロックを形成する。加算器８０は、この加算演算を実行する１つまたは複数の構成要素を表す。所望される場合、ブロッキネスアーティファクトを除去するために、復号ブロックをフィルタ処理するためにデブロッキングフィルタも適用され得る。（コーディングループ中またはコーディングループ後のいずれかの）他のループフィルタも、ピクセル遷移を平滑化するか、または場合によってはビデオ品質を改善するために使用され得る。所与のフレームまたはピクチャの復号されたビデオブロックは、次いで、その後の動き補償のために使用される参照ピクチャを記憶する参照ピクチャメモリ８２に記憶される。参照ピクチャメモリ８２はまた、図１のディスプレイデバイス３２などのディスプレイデバイス上で後で提示するために復号されたビデオを記憶する。
【０１３０】
[0136]このようにして、図３のビデオデコーダ３０は、マルチレイヤ・ビットストリームの独立して復号可能なレイヤのピクチャの少なくとも一部分を復号することと、ピクチャが、０に等しいピクチャのためのＰＯＣ  ＬＳＢ値を有するときのみ、ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータを復号することと、を行うように構成されたビデオデコーダの一例を表す。
【０１３１】
[0137]図４は、マルチレイヤ・ビットストリームの独立非ベースレイヤのためのＰＯＣ値リセッティングを示す概念図である。図４の例では、マルチレイヤ・ビットストリームはベースレイヤ（レイヤ０）９０と独立非ベースレイヤ（レイヤ１）９２とを含む。概して、図４に記載されている例示的な図の上半分は、たとえば、ビデオエンコーダ２０などのビデオエンコーダによって符号化されるような、（「レイヤ１の抽出の前」という句によって示されている）抽出より前のマルチレイヤ・ビットストリームを示す。図４に記載されている例示的な図の下半分は、たとえば、ビデオデコーダ３０などのビデオデコーダによって復号するための、（「レイヤ１の抽出の後」という句によって示されている）マルチレイヤ・ビットストリームからの抽出の後の非ベースレイヤ９２を含んでいるサブビットストリームを示す。
【０１３２】
[0138]抽出の前に、ビデオエンコーダ２０は、特定のビデオコーディング規格、たとえば、ＭＶ−ＨＥＶＣまたはＳＨＶＣを使用してベースレイヤ９０と非ベースレイヤ９２とを符号化し得る。たとえば、ビデオエンコーダ２０は、ＩＤＲピクチャ９４のためのＰＯＣ値リセッティングを実行するように構成され得る。ビデオエンコーダは、２に等しいＰＯＣ値リセットインデックス（ｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃ）をシグナリングし得る。ＰＯＣ値リセッティングの前に、ピクチャ９４は、０のＰＯＣ  ＭＳＢ値と２０のＰＯＣ  ＬＳＢ値とを有する。ＰＯＣ値リセッティングの後に、ピクチャ９４は、０のＰＯＣ  ＭＳＢ値と０のＰＯＣ  ＬＳＢ値とを有する。さらに、ＰＯＣ値のクロスレイヤ整合を維持するために、ビデオエンコーダ２０は、非ベースレイヤ９２中に含まれるピクチャ９６のＰＯＣ値リセッティングを実行し得る。したがって、ＰＯＣ値リセッティングの前に、ピクチャ９６は、０のＰＯＣ  ＭＳＢ値と２０のＰＯＣ  ＬＳＢ値とを有する。ＰＯＣ値リセッティングの後に、ピクチャ９６は、０のＰＯＣ  ＭＳＢ値と０のＰＯＣ  ＬＳＢ値とを有する。
【０１３３】
[0139]ＰＯＣ値リセッティングを実行するときに、ビデオエンコーダ２０はまた、ＰＯＣ値リセッティングを考慮するために、ＤＰＢに記憶されたピクチャのＰＯＣ  ＬＳＢ値を減分し得る。たとえば、ビデオエンコーダ２０は、ＤＰＢに記憶された各参照ピクチャのＰＯＣ  ＬＳＢ値を２０（たとえば、元のＰＯＣ  ＬＳＢ値とリセットＰＯＣ  ＬＳＢ値との間の差）だけ減分し得る。したがって、ＰＯＣ値リセッティングの前に、参照ピクチャ９８は、０のＰＯＣ  ＭＳＢ値と３のＰＯＣ  ＬＳＢ値とを有する。ＰＯＣ値リセッティングの後に、参照ピクチャ９８は、０のＰＯＣ  ＭＳＢ値と−１７のＰＯＣ  ＬＳＢ値とを有する。同様に、ＰＯＣ値リセッティングの前に、参照ピクチャ１００は、０のＰＯＣ  ＭＳＢ値と３のＰＯＣ  ＬＳＢ値とを有する。ＰＯＣ値リセッティングの後に、参照ピクチャ１００は、０のＰＯＣ  ＭＳＢ値と−１７のＰＯＣ  ＬＳＢ値とを有する。
【０１３４】
[0140]ビデオエンコーダ２０はまた、インター予測を使用して非ベースレイヤ９２のピクチャ１０２を符号化する。たとえば、ビデオエンコーダ２０は、参照ピクチャ１００をＬＴＲＰとして識別し、ピクチャ１０２（たとえば、長期参照ピクチャセット（ＬＴ−ＲＰＳ））を符号化するためにＲＰＳ中に参照ピクチャ１００を含める。ビデオエンコーダ２０はまた、参照ピクチャ１００をＬＴＲＰとして識別するために、ピクチャ１０２のスライスのスライスヘッダ中で、またはピクチャ１０２によって参照されるパラメータセット中で参照ピクチャ１００のＰＯＣ  ＬＳＢ値をシグナリングし得る。すなわち、ビデオエンコーダ２０は、（変換アルゴリズムを使用して正数への−１７の変換の後に）シグナリングされる参照ピクチャ１００のＰＯＣ  ＬＳＢ値が１５になるようにＰＯＣ値リセッティングを実行した後にそのＰＯＣ  ＬＳＢ値をシグナリングし得る。
【０１３５】
[0141]抽出の後に、上述のように、ビデオデコーダ３０は、非ベースレイヤを符号化するために使用されるマルチレイヤ規格と必ずしも同じとは限らない特定のシングルレイヤ規格、たとえば、ＨＥＶＣに準拠することによって非ベースレイヤ９２を復号するように構成され得る。したがって、ビデオデコーダ３０は、非ベースレイヤ９２を復号し、他のシンタックスを廃棄するか、またはさもなければ無視するために、その規格に関連付けられたシンタックスを使用し得る。本明細書では、ＨＥＶＣ、および／またはＨＥＶＣのマルチレイヤ拡張に準拠するビデオデコーダ３０が参照されるが、本開示の技法は、必ずしもこのように限定されるとは限らず、他の規格とともに使用され得ることを理解されたい。
【０１３６】
[0142]ピクチャ１０２を復号するために、ビデオデコーダ３０は、ビデオエンコーダ２０によって実行される様式とは逆の様式でインター予測を実行するように構成され得る。したがって、ビデオデコーダ３０は、ＬＴ−ＲＰＳから１つまたは複数のピクチャを含み得る参照ピクチャリストを構成し得る。たとえば、ビデオデコーダ３０は、参照ピクチャ１００を含む１つまたは複数の長期参照ピクチャを識別するために、ピクチャ１０２のスライスのスライスヘッダ、またはピクチャ１０２によって参照されるパラメータセットを復号し得る。
【０１３７】
[0143]上述のように、参照ピクチャ１００のＰＯＣ  ＬＳＢ値は、（たとえば、ＰＯＣ値リセッティングを実行した後の−１７のＰＯＣ  ＬＳＢ値に対応する）１５に等しいものとして、ピクチャ１０２のスライスヘッダ中でシグナリングされ得る。しかしながら、ビデオデコーダ３０は、ＰＯＣ値リセッティングを実行するように構成されないことがある。たとえば、ピクチャ９６を復号するときに、ビデオデコーダ３０はｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を復号しないことがあり、ＤＰＢに記憶されたピクチャのＰＯＣ  ＬＳＢ値を減分しないことがある。したがって、参照ピクチャ１００のＰＯＣ  ＬＳＢ値は３に等しい。しかしながら、参照ピクチャ１００は１５のＰＯＣ  ＬＳＢ値によってスライスヘッダ中で識別される。したがって、図４の例では、参照ピクチャ１００のＰＯＣ  ＬＳＢ値が、スライスヘッダ中でシグナリングされたＰＯＣ  ＬＳＢ値に一致しないので、ビデオデコーダ３０は、ＤＰＢ中で参照ピクチャ１００の位置を特定し得る。
【０１３８】
[0144]図４の例によって示されるように、スライスヘッダ情報を変更することなしにＨＥＶＣデコーダによって復号されることが可能である（非ベースレイヤ９２などの）独立エンハンスメントレイヤを抽出するために、ビデオデコーダ３０は、レイヤ中のピクチャの予測のためにＬＴＲＰが使用されるかどうかと、ＰＯＣ  ＬＳＢとＰＯＣ  ＭＳＢの両方をリセットするピクチャがレイヤ中に存在するかどうかとを考慮し得る。これらの２つのパラメータは、レイヤ中のピクチャのスライスヘッダを変更する必要なしに、マルチレイヤ・ビットストリームから独立エンハンスメントレイヤを抽出することが可能であるかどうかを決定するために考慮され得る。
【０１３９】
[0145]本開示の態様によれば、ビデオエンコーダ２０およびビデオデコーダ３０は、独立非ベースレイヤのためにＰＯＣ値リセッティングが実行される様式を制御し得る。本技法は、いくつかの事例では、スライスヘッダ中でシグナリングされるＬＴＲＰのＰＯＣ値が、ビデオデコーダのＤＰＢに記憶された参照ピクチャのＰＯＣ値との一貫性を維持することを可能にし得る。一例では、ビデオエンコーダ２０およびビデオデコーダ３０は、マルチレイヤ・ビットストリームの独立して復号可能なレイヤのピクチャをコーディング（符号化または復号）し得る。ビデオエンコーダ２０およびビデオデコーダ３０はまた、ピクチャが、０に等しいピクチャのためのＰＯＣ  ＬＳＢ値を有するときのみ、ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータをコーディングし得る。そのような事例では、ＰＯＣ値リセットを実行することは、ＰＯＣ  ＬＳＢ値がすでに０に等しいので、ビデオエンコーダ２０またはビデオデコーダ３０に、ＤＰＢに記憶されたピクチャのＰＯＣ値を減分するように要求しない。
【０１４０】
[0146]本開示の様々な技法による、ＰＯＣ値リセッティングを管理するための例示的なシンタックスおよびセマンティクスを以下に記載する。説明するシンタックスおよびセマンティクスは、たとえば、上述のＭＶ−ＨＥＶＣおよびＳＨＶＣのシンタックスおよびセマンティクスに関係する。以下の例示的な説明、シンタックステーブルおよびセマンティクスでは、ＭＶ−ＨＥＶＣおよびＳＨＶＣへの追加は、イタリック体を使用して表され、削除は、括弧でくくられた、「除去（removed）」が前に付いたテキスト（たとえば、［除去：「除去されたテキスト」］（[removed: “removed text”]））を使用して表される。概して、「要件」に関する文は、規格または規格拡張のテキストの一部を形成するものであり、本開示の技法の目的のための要件を形成しないものと理解されたい。いくつかの事例では、そのような「要件」は、適用可能であると決定され得、その場合、たとえば、その決定に基づいてビデオコーダによって厳守され得る、ビットストリーム制約を含み得る）。
【０１４１】
[0147]第１の例では、ビデオパラメータセット（ＶＰＳ）ビデオユーザビリティ情報（ＶＵＩ：video usability information）中のシンタックス要素ｂａｓｅ＿ｌａｙｅｒ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］のセマンティクスに対して、以下の変更が行われ得る。  
１に等しいｂａｓｅ＿ｌａｙｅｒ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］は、以下の制約が、ｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつレイヤに適用されることを指定する。０に等しいｂａｓｅ＿ｌａｙｅｒ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］は、以下の制約が、ｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつレイヤに適用されることもされないこともあることを指定する。存在しないとき、ｂａｓｅ＿ｌａｙｅｒ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］の値は０に等しいと推論される。  
−ＶＰＳを参照するｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄ値をもつ各コード化スライスセグメントＮＡＬユニットは、０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄ値をもつＰＰＳを参照するものとする。  
−ＶＰＳを参照するｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄ値をもつ各コード化スライスセグメントＮＡＬユニットは、０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄ値をもつＳＰＳを参照するものとする。  
−ｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつレイヤのためのアクティブＳＰＳのそれぞれ、ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃ、ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇ、ｐｉｃ＿ｗｉｄｔｈ＿ｉｎ＿ｌｕｍａ＿ｓａｍｐｌｅｓ、ｐｉｃ＿ｈｅｉｇｈｔ＿ｉｎ＿ｌｕｍａ＿ｓａｍｐｌｅｓ、ｂｉｔ＿ｄｅｐｔｈ＿ｌｕｍａ＿ｍｉｎｕｓ８、およびｂｉｔ＿ｄｅｐｔｈ＿ｃｈｒｏｍａ＿ｍｉｎｕｓ８の値は、アクティブＶＰＳ中のｖｐｓ＿ｒｅｐ＿ｆｏｒｍａｔ＿ｉｄｘ［ｉ］番目のｒｅｐ＿ｆｏｒｍａｔ（）シンタックス構造のそれぞれ、ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃ、ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇ、ｐｉｃ＿ｗｉｄｔｈ＿ｉｎ＿ｌｕｍａ＿ｓａｍｐｌｅｓ、ｐｉｃ＿ｈｅｉｇｈｔ＿ｉｎ＿ｌｕｍａ＿ｓａｍｐｌｅｓ、ｂｉｔ＿ｄｅｐｔｈ＿ｌｕｍａ＿ｍｉｎｕｓ８、およびｂｉｔ＿ｄｅｐｔｈ＿ｃｈｒｏｍａ＿ｍｉｎｕｓ８の値と同じであるものとする。  
−ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］の値は、１に等しいものとする。  
−ＶＰＳを参照するｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ＿［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつピクチャｐｉｃＡを含んでいるアクセスユニットが、０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄと、０よりも大きいｓｌｉｃｅ＿ｐｉｃ＿ｏｒｄｅｒ＿ｃｎｔ＿ｌｓｂとをもつピクチャをも含んでいるとき、ピクチャｐｉｃＡは非ＩＤＲピクチャであるものとする。  
ＶＰＳを参照するｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄ値をもつコード化スライスセグメントＮＡＬユニットがｎｕｍ＿ｌｏｎｇ＿ｔｅｒｍ＿ｓｐｓまたはｎｕｍ＿ｌｏｎｇ＿ｔｅｒｍ＿ｐｉｃｓのいずれか、あるいはその両方の非０値を有し、およびｓｌｉｃｅ＿ｐｉｃ−ｏｒｄｅｒ＿ｃｎｔ＿ｌｓｂが０に等しくないとき、ｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃは２に等しくないものとする。
【０１４２】
[0148]第２の例では、ｂａｓｅ＿ｌａｙｅｒ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］に対するシンタックス要素ｂａｓｅ＿ｌａｙｅｒ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］の名前。さらに、（以下でｂａｓｅ＿ｌａｙｅｒ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］として示されている）ＶＰＳ  ＶＵＩ中のシンタックス要素ｂａｓｅ＿ｌａｙｅｒ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］のセマンティクスに対して、以下の変更が行われ得る。  
１に等しいｂａｓｅ＿ｌａｙｅｒ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］は、以下の制約が、ｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつレイヤに適用されることを指定する。０に等しいｂａｓｅ＿ｌａｙｅｒ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］は、以下の制約が、ｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつレイヤに適用されることもされないこともあることを指定する。存在しないとき、ｂａｓｅ＿ｌａｙｅｒ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］の値は０に等しいと推論される。  
−ＶＰＳを参照するｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄ値をもつ各コード化スライスセグメントＮＡＬユニットは、０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄ値をもつＰＰＳを参照するものとする。  
−ＶＰＳを参照するｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄ値をもつ各コード化スライスセグメントＮＡＬユニットは、０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄ値をもつＳＰＳを参照するものとする。  
−ｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつレイヤのためのアクティブＳＰＳのそれぞれ、ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃ、ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇ、ｐｉｃ＿ｗｉｄｔｈ＿ｉｎ＿ｌｕｍａ＿ｓａｍｐｌｅｓ、ｐｉｃ＿ｈｅｉｇｈｔ＿ｉｎ＿ｌｕｍａ＿ｓａｍｐｌｅｓ、ｂｉｔ＿ｄｅｐｔｈ＿ｌｕｍａ＿ｍｉｎｕｓ８、およびｂｉｔ＿ｄｅｐｔｈ＿ｃｈｒｏｍａ＿ｍｉｎｕｓ８の値は、アクティブＶＰＳ中のｖｐｓ＿ｒｅｐ＿ｆｏｒｍａｔ＿ｉｄｘ［ｉ］番目のｒｅｐ＿ｆｏｒｍａｔ（）シンタックス構造のそれぞれ、ｃｈｒｏｍａ＿ｆｏｒｍａｔ＿ｉｄｃ、ｓｅｐａｒａｔｅ＿ｃｏｌｏｕｒ＿ｐｌａｎｅ＿ｆｌａｇ、ｐｉｃ＿ｗｉｄｔｈ＿ｉｎ＿ｌｕｍａ＿ｓａｍｐｌｅｓ、ｐｉｃ＿ｈｅｉｇｈｔ＿ｉｎ＿ｌｕｍａ＿ｓａｍｐｌｅｓ、ｂｉｔ＿ｄｅｐｔｈ＿ｌｕｍａ＿ｍｉｎｕｓ８、およびｂｉｔ＿ｄｅｐｔｈ＿ｃｈｒｏｍａ＿ｍｉｎｕｓ８の値と同じであるものとする。  
−ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］の値は、１に等しいものとする。  
−ｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄを有し、ＶＰＳを参照する任意のピクチャｐｉｃＡについて、以下が適用される。  
−ｓｌｉｃｅ＿ｐｉｃ＿ｏｒｄｅｒ＿ｃｎｔ＿ｌｓｂが０よりも大きいとき、ｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃは２に等しくないものとする。  
−ｆｕｌｌ＿ｐｏｃ＿ｒｅｓｅｔ＿ｆｌａｇが１に等しいとき、ｐｏｃ＿ｌｓｂ＿ｖａｌは０に等しくないものとする。
【０１４３】
[0149]本明細書に含まれるシンタックスは、例示のためにすぎないことを理解されたい。すなわち、上記の例について、そのｂａｓｅ＿ｌａｙｅｒ＿ｃｏｍｐａｔｉｂｉｌｉｔｙフラグに関して説明したが、ビデオエンコーダ２０およびビデオデコーダ３０は、別の異なるシンタックス要素に関して、または別の様式で本明細書で説明する制約を適用し得る。
【０１４４】
[0150]第３の例では、０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつ非ＩＤＲピクチャと、ｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつＩＤＲピクチャとを含んでいる少なくとも１つのアクセスユニットがあるとき、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］が１に等しくないものとするような制約が、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］のセマンティクスに追加される。ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］の値が１に等しいときのみ、シンタックス要素が存在するような条件が、シンタックス要素ｂａｓｅ＿ｌａｙｅｒ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］のシグナリングに追加される。ｂａｓｅ＿ｌａｙｅｒ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］のための値は、それが存在しないとき、０に等しいと推論される。
【０１４５】
[0151]さらに、上述の変更を有するシンタックス要素ｂａｓｅ＿ｌａｙｅｒ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］のシグナリングは、下記の表に記載されているように変更され得る。  
【０１４６】
【表１】
2017514354.tif 000003
【０１４７】
[0152]上記の表では、１に等しいｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］は、ｓｌｉｃｅ＿ｐｉｃ＿ｏｒｄｅｒ＿ｃｎｔ＿ｌｓｂシンタックス要素が、ＣＶＳ中のｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつＩＤＲピクチャのスライスヘッダ中に存在しないことを指定する。さらに、０に等しいｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］は、ｓｌｉｃｅ＿ｐｉｃ＿ｏｒｄｅｒ＿ｃｎｔ＿ｌｓｂシンタックス要素が、ＣＶＳ中のｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつＩＤＲピクチャのスライスヘッダ中に存在することもしないこともあることを指定する。存在しないとき、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］の値は０に等しいと推論される。
【０１４８】
[0153]さらに、１に等しいｂａｓｅ＿ｌａｙｅｒ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］は、以下の制約が、ｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつレイヤに適用されることを指定する。０に等しいｂａｓｅ＿ｌａｙｅｒ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］は、以下の制約が、ｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつレイヤに適用されることもされないこともあることを指定する。概して、ｂａｓｅ＿ｌａｙｅｒ＿ｐａｒａｍｅｔｅｒ＿ｓｅｔ＿ｃｏｍｐａｔｉｂｉｌｉｔｙ＿ｆｌａｇ［ｉ］は、エンハンスメントレイヤがベースレイヤのパラメータセット（たとえば、ＰＰＳおよびＳＰＳ）を使用するかどうかを示し得る。
【０１４９】
[0154]第４の例では、本開示の態様によれば、ビデオエンコーダ２０およびビデオデコーダ３０は、独立レイヤが、レイヤ中のピクチャのスライスヘッダ中の情報を更新する必要なしにＨＥＶＣ準拠デコーダによって抽出および復号され得るかどうかを示す、各レイヤについての新しいフラグを実装するように構成され得る。そのようなフラグに関連付けられたシグナリングは、以下の表１に記載されているようであり得る。  
【０１５０】
【表２】
2017514354.tif 000004
【０１５１】
[0155]上記の表１の例では、１に等しいｓｌｉｃｅ＿ｓｅｇｍｅｎｔ＿ｈｅａｄｅｒ＿ｕｐｄａｔｅ＿ｎｏｔ＿ｒｅｑｕｉｒｅｄ＿ｆｏｒ＿ｅｘｔｒａｃｔｉｏｎ＿ｆｌａｇ［ｉ］は、ｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつレイヤが、入力されたＴａｒｇｅｔＤｅｃＬａｙｅｒＩｄＬｉｓｔ中の最下位レイヤである場合にサブビットストリーム抽出プロセスが呼び出されたとき、ＶＰＳを参照する各ＣＶＳ中のｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつピクチャのスライスセグメントヘッダが、更新される必要がないことを指定する。さらに、０に等しいｓｌｉｃｅ＿ｓｅｇｍｅｎｔ＿ｈｅａｄｅｒ＿ｕｐｄａｔｅ＿ｎｏｔ＿ｒｅｑｕｉｒｅｄ＿ｆｏｒ＿ｅｘｔｒａｃｔｉｏｎ＿ｆｌａｇ［ｉ］は、ｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつレイヤが、入力されたＴａｒｇｅｔＤｅｃＬａｙｅｒＩｄＬｉｓｔ中の最下位レイヤである場合にサブビットストリーム抽出プロセスが呼び出されたとき、ＣＶＳ中のｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつピクチャのスライスヘッダが、更新される必要があることもないこともあることを指定する。存在しないとき、ｓｌｉｃｅ＿ｓｅｇｍｅｎｔ＿ｈｅａｄｅｒ＿ｕｐｄａｔｅ＿ｎｏｔ＿ｒｅｑｕｉｒｅｄ＿ｆｏｒ＿ｅｘｔｒａｃｔｉｏｎ＿ｆｌａｇ［ｉ］は０に等しいと推論される。
【０１５２】
[0156]図５は、マルチレイヤ・ビットストリームの独立非ベースレイヤのためのＰＯＣ値リセッティングを示す別の概念図である。図５の例では、マルチレイヤ・ビットストリームはベースレイヤ（レイヤ０）１１０と独立非ベースレイヤ（レイヤ１）１１２とを含む。ベースレイヤ１１０はＩＤＲピクチャ１１４とピクチャ１１６とを含む。非ベースレイヤ１１２は、ベースレイヤ１１０のピクチャ１１４と同じアクセスユニット中にあるピクチャ１１８と、ベースレイヤ１１０のピクチャ１１６と同じアクセスユニット中にあるＩＤＲピクチャ１２０とを含む。
【０１５３】
[0157]ビデオデコーダ３０などのビデオデコーダは、特定のビデオコーディング規格、たとえば、ＭＶ−ＨＥＶＣまたはＳＨＶＣを使用してベースレイヤ１１０と非ベースレイヤ１１２とを復号するように構成され得る。ビデオデコーダ３０は、ピクチャ１１４がＩＤＲピクチャであるので、ベースレイヤ１１０のピクチャ１１４のためにＰＯＣ値リセッティングを実行するように構成され得る。ビデオデコーダは、ピクチャ１１４の場合、２に等しいＰＯＣ値リセットインデックス（ｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃ）を復号し得る。さらに、ＰＯＣ値のクロスレイヤ整合を維持するために、ビデオデコーダ３０はまた、非ベースレイヤ１１２中に含まれるピクチャ１１８のＰＯＣ値リセッティングを実行し得る。したがって、ＰＯＣ値リセッティングの後に、ベースレイヤ１１０のピクチャ１１４と非ベースレイヤ１１２のピクチャ１１８の両方は、０に等しいＰＯＣ  ＬＳＢ値を有する。
【０１５４】
[0158]ＭＶ−ＨＥＶＣおよびＳＨＶＣに含まれる、シンタックス要素ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］は、ＰＯＣ  ＬＳＢ情報が、非ベースレイヤ１１２などの独立エンハンスメントレイヤのＩＤＲピクチャに属するスライスのスライスセグメントヘッダ中に含まれないことを可能にする。シンタックス要素は、非ベースレイヤ１１２がマルチレイヤ・ビットストリームから抽出されること、および、レイヤ中のピクチャのスライスセグメントヘッダを変更することなしに、およびＮＡＬユニットヘッダ中のｎｕｈ＿ｌａｙｅｒ＿ｉｄのみを変更することによって（たとえば、ＭＶ−ＨＥＶＣまたはＳＨＶＣのために構成されたデコーダではなく）ＨＥＶＣデコーダによって復号されること、を可能にすることを助け得る。たとえば、現在、ＭＶ−ＨＥＶＣおよびＳＨＶＣのワーキングドラフトに記載されているように、１に等しいｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇは、ＰＯＣ  ＬＳＢ値がＩＤＲピクチャのスライスヘッダ中に存在しないことを指定する。０に等しいｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇは、ＰＯＣ  ＬＳＢ値がＩＤＲピクチャのスライスヘッダ中に存在することも存在しないこともあることを指定する。
【０１５５】
[0159]上述のＭＶ−ＨＥＶＣおよびＳＨＶＣ規格に含まれるｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］に対する唯一の明示的制限は、レイヤが独立であるときのみ、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］の値が非ベースレイヤのために１に設定され得る（たとえば、インターレイヤ予測は、レイヤのビデオデータを予測するために使用されない）ということである。しかしながら、ＰＯＣ  ＬＳＢ値が非ベースレイヤ１１２などの独立非ベースレイヤのスライスヘッダ中に含まれないことを示すことは、０のＰＯＣ  ＬＳＢ値を有しないピクチャについて問題を生じ得る。
【０１５６】
[0160]たとえば、図５の例に示されているように、非ベースレイヤ１１２は、ＰＯＣ  ＬＳＢ値が、ＨＥＶＣデコーダとの適合性を維持するためにＩＤＲピクチャのスライスヘッダ中に含まれないことがあるように、１に等しく設定されたｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］に関連付けられ得る。ピクチャ１２０は、ＩＤＲピクチャのためのＰＯＣ値リセッティングが実行される（たとえば、ｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃが１に等しい）そのＩＤＲピクチャである。したがって、ピクチャ１２０のスライスのスライスヘッダはＰＯＣ  ＬＳＢ値の指示を含まないことがある。ビデオデコーダ３０は、ピクチャ１２０のＰＯＣ  ＬＳＢ値が０に等しいと推論（たとえば、自動的に決定）し得る。
【０１５７】
[0161]しかしながら、ピクチャ１２０のＰＯＣ  ＬＳＢ値が０に等しいと推論することは、（非ベースレイヤ１１２のピクチャ１２０と同じアクセスユニット中にある）ベースレイヤ１１０のピクチャ１１６のＰＯＣ  ＬＳＢ値が０に等しくないので、マルチレイヤ・ビットストリームがＨＥＶＣ規格に対して非適合になることを生じ得る。そうではなく、ベースレイヤ１１０のピクチャ１１６のＰＯＣ  ＬＳＢ値は４である。したがって、ピクチャ１１６および１２０を含んでいるアクセスユニットは、ビットストリーム適合性について許可されない、異なるＰＯＣ値を有するピクチャを含む。
【０１５８】
[0162]本開示の態様によれば、ビデオエンコーダ２０およびビデオデコーダ３０は、ピクチャが、０に等しいピクチャのためのＰＯＣ  ＬＳＢ値を有するときのみ、ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータをコーディングし得る。たとえば、ビデオエンコーダ２０およびビデオデコーダ３０は、レイヤ中のＩＤＲピクチャのＰＯＣ  ＬＳＢ値が０に等しいと推論されないことがある限り、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］の値が（たとえば、ＰＯＣ  ＬＳＢ値がスライスヘッダ中に含まれないことを示す）１に等しくないような制約を適用する。独立非ベースレイヤピクチャのＰＯＣ  ＬＳＢ値は、同じアクセスユニットのベースレイヤピクチャのＰＯＣ  ＬＳＢ値がＩＤＲピクチャであるとき、または非ベースレイヤピクチャのＰＯＣ  ＬＳＢ値が０値化された（たとえば、ＰＯＣ  ＬＳＢ値の通常漸進に従って０に等しくなるようにロールオーバする）とき、０に等しいと推論され得る。
【０１５９】
[0163]図５の例では、本開示の態様によれば、ビデオエンコーダ２０およびビデオデコーダ３０は、ＩＤＲピクチャであるピクチャ１２０のＰＯＣ  ＬＳＢ値が０に等しいと推論され得ないので、非ベースレイヤ１１２のための１に等しいｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］をコーディングしないことがある。それとは反対に、ピクチャ１２０のＰＯＣ  ＬＳＢ値は４である。０に等しいｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇは、ピクチャ１２０のスライスヘッダ中に含まれるシンタックス要素などの１つまたは複数のシンタックス要素を変更することなしに、非ベースレイヤ１１２が、たとえば、ＨＥＶＣ準拠ビデオデコーダを使用して独立して復号されることが可能でないことを示し得る。
【０１６０】
[0164]このようにして、本開示の態様によれば、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］の値は、マルチレイヤ・ビットストリームが、非０のＰＯＣ  ＬＳＢ値をもつ非ＩＤＲピクチャであるベースレイヤピクチャと、ＩＤＲピクチャである（ＶＰＳ中のｉ番目のレイヤに対応する）エンハンスメントレイヤピクチャとを有する１つまたは複数のアクセスユニットを含んでいるとき、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］の値が１に等しくないものとするように制約され得る。一例では、以下の制約は、ＭＶ−ＨＥＶＣおよびＳＨＶＣのｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］のセマンティクスの一部として（たとえば、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］のセマンティックへの注釈として）追加され、ここで、追加は、イタリック体を使用して表される。  
ＶＰＳを参照するすべてのＣＶＳ内で、０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄと０よりも大きいｓｌｉｃｅ＿ｐｉｃ＿ｏｒｄｅｒ＿ｃｎｔ＿ｌｓｂとをもつ非ＩＤＲピクチャを含んでおり、および、ｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつＩＤＲピクチャを含んでいる、少なくとも１つのアクセスユニットがあるとき、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］が１に等しくないものとするということは、ビットストリーム適合性の要件である。
【０１６１】
[0165]別の例では、以下の制約は、ＭＶ−ＨＥＶＣおよびＳＨＶＣのｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］のセマンティクスの一部として（たとえば、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］のセマンティックへの注釈として）追加され、ここで、追加は、イタリック体を使用して表される。  
ＶＰＳを参照するすべてのＣＶＳ内で、０に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつ非ＩＤＲピクチャと、ｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつＩＤＲピクチャとを含んでいる少なくとも１つのアクセスユニットがあるとき、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］が１に等しくないものとするということは、ビットストリーム適合性の要件である。
【０１６２】
[0166]別の例では、以下の制約は、ＭＶ−ＨＥＶＣおよびＳＨＶＣのｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］のセマンティクスの一部として（たとえば、ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］のセマンティックへの注釈として）追加され、ここで、追加は、イタリック体を使用して表される。  
ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇ［ｉ］が１に等しいとき、ＶＰＳを参照するすべてのＣＶＳ内で、アクセスユニットが、ｌａｙｅｒ＿ｉｄ＿ｉｎ＿ｎｕｈ［ｉ］に等しいｎｕｈ＿ｌａｙｅｒ＿ｉｄをもつＩＤＲピクチャを含んでいるとき、ｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃがアクセスユニット中のすべてのピクチャについて２に等しいとは限らない限り、ｓｌｉｃｅ＿ｐｉｃ＿ｏｒｄｅｒ＿ｃｎｔ＿ｌｓｂの値が、アクセスユニット中のすべてのピクチャについて０に等しくなければならないということは、ビットストリーム適合性の要件である。
【０１６３】
[0167]図６は、本開示の技法による、マルチレイヤ・ビットストリームのビデオデータを符号化するための例示的な方法を示すフローチャートである。さらに、図６の方法は、現在ブロックを符号化することを含む。現在ブロックは、現在ＣＵ、または現在ＣＵの一部分を備え得る。ビデオエンコーダ２０（図１および図２）に関して説明するが、他のデバイスが図６の方法と同様の方法を実行するように構成され得ることを理解されたい。
【０１６４】
[0168]この例では、ビデオエンコーダ２０は、現在ブロックを含むピクチャのためのＰＯＣ値をリセットすべきかどうかを決定し得る（１３０）。ＰＯＣ値リセッティングが実行されるとき、ビデオエンコーダ２０はＰＯＣリセッティングタイプを決定し、ピクチャのＰＯＣ値をリセットし得る（１３２）。本開示の態様によれば、ビデオエンコーダ２０は、ピクチャが、０に等しいピクチャのためのＰＯＣ  ＬＳＢ値を有するとき、ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータのみを符号化し得る。
【０１６５】
[0169]たとえば、図２に関して上記で説明したように、ビデオエンコーダ２０は、ｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を符号化し得る。本開示の態様によれば、ビデオエンコーダ２０は、ｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃ値が１つまたは複数の制約に基づいて符号化される様式を制御し得る。たとえば、ビデオエンコーダ２０は、コーディングされているピクチャが０に等しいＰＯＣ  ＬＳＢ値を有するときのみ、２に等しくなるようにｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を符号化し得る。すなわち、コーディングされている特定のレイヤのためのｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが（たとえば、レイヤが独立非ベースレイヤであることを示す）１に等しく、ピクチャのＰＯＣ  ＬＳＢ値を示すｓｌｉｃｅ＿ｐｉｃ＿ｏｒｄｅｒ＿ｃｎｔ＿ｌｓｂシンタックス要素が０よりも大きいとき、ビデオエンコーダ２０は、ｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃの値を２に等しく設定しないことがある。
【０１６６】
[0170]ビデオエンコーダ２０がｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を３に等しくなるように符号化するとき、ビデオエンコーダ２０はｆｕｌｌ＿ｐｏｃ＿ｒｅｓｅｔ＿ｆｌａｇシンタックス要素とｐｏｃ＿ｌｓｂ＿ｖａｌシンタックス要素とをさらに符号化し得る。本開示の態様によれば、符号化されているレイヤのための（符号化されているレイヤが独立非ベースレイヤであることを示し得る）ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが１に等しく、ｆｕｌｌ＿ｐｏｃ＿ｒｅｓｅｔ＿ｆｌａｇが１に等しいとき、ビデオエンコーダ２０は、ｐｏｃ＿ｌｓｂ＿ｖａｌの値を０に等しく設定し得る。このようにして、ビデオエンコーダ２０は、ＰＯＣ値リセッティングが、０に等しいＰＯＣ  ＬＳＢ値を有するピクチャのためにのみ実行されることを保証し得、それにより、本明細書で説明するように、参照ピクチャが適切に識別されることを可能にし得る。
【０１６７】
[0171]ビデオエンコーダ２０は、次いで、参照ピクチャリストを形成し得る（１３４）。ビデオエンコーダ２０は、参照ピクチャリスト中に含まれる参照ピクチャのＰＯＣ値をさらにシグナリングする（１３６）。たとえば、ビデオエンコーダ２０は、ＳＰＳまたはＰＰＳなどのパラメータセット中で、および／あるいはスライスのためのスライスヘッダ中で、参照ピクチャのためのＰＯＣ値（または、ＰＯＣ値の部分、たとえば、ＰＯＣ  ＬＳＢ値）を符号化し得る。いくつかの参照ピクチャ（たとえば、長期参照ピクチャ）はパラメータセット中でシグナリングされ得るが、他の参照ピクチャ（たとえば、短期参照ピクチャ）はスライスヘッダ中でシグナリングされ得る。
【０１６８】
[0172]たとえば、現在スライスのブロックのための最良のレートひずみ特性を生じる参照ピクチャのセットを決定するために、参照ピクチャリストを形成するステップと、どのピクチャが参照ピクチャリスト中に含まれるかをシグナリングするステップとが、いくつかの異なる符号化パスを介して複数回実行され得ることを理解されたい。すなわち、ビデオエンコーダ２０は、単一のブロックの個々の特性のみに基づくのではなく、現在スライス中のすべてのブロックの特性に基づいて、参照ピクチャリスト中に含まれる参照ピクチャのセットを選択し得る。
【０１６９】
[0173]ビデオエンコーダ２０は、次いで、現在スライスの現在ブロックを予測し得る（１３８）。たとえば、ビデオエンコーダ２０は、現在ブロックの１つまたは複数の予測ユニット（ＰＵ）を計算し得る。より詳細には、動き推定ユニット４２は、たとえば、ＳＡＤ、ＳＳＤ、ＭＡＤ、ＭＳＤ、または他の誤差計算メトリクスに基づいて、参照ブロックとして使用される一致するブロックを識別するために、参照ピクチャリストの参照ピクチャの中で現在ブロックの動き探索を実行し得る。動き推定ユニット４２は、動き探索に基づいて現在ブロックのための動きベクトルを生成し得る。ビデオエンコーダ２０は、次いで、ブロックのための動き情報を符号化し得（１４０）、ブロックのための動き情報は、参照ブロックを一緒に識別する、動きベクトルのための動きベクトル差分値と、参照ピクチャリスト識別子と、参照インデックスとを含み得る。
【０１７０】
[0174]ビデオエンコーダ２０は、次いで、たとえば、変換ユニット（ＴＵ）を生成するために現在ブロックのための残差ブロックを計算し得る（１４２）。残差ブロックを計算するために、ビデオエンコーダ２０は、元のコーディングされていないブロックと、現在ブロックのための予測ブロックとの間の差分を計算し得る。ビデオエンコーダ２０は、次いで、残差ブロックの係数を変換および量子化し得る（１４４）。次に、ビデオエンコーダ２０は、残差ブロックの量子化された変換係数を走査し得る（１４６）。走査中に、または走査に続いて、ビデオエンコーダ２０はその係数をエントロピー符号化し得る（１４８）。たとえば、ビデオエンコーダ２０は、ＣＡＶＬＣまたはＣＡＢＡＣを使用してその係数を符号化し得る。ビデオエンコーダ２０は、次いで、ブロックのエントロピーコード化データを出力し得る（１５０）。
【０１７１】
[0175]このようにして、図６の方法は、ビデオエンコーダによって、マルチレイヤ・ビットストリームの独立して復号可能なレイヤのピクチャの少なくとも一部分を符号化することと、ビデオコーダによって、ピクチャが、０に等しいピクチャのためのピクチャ順序カウント（ＰＯＣ）最下位ビット（ＬＳＢ）値を有するときのみ、ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータを符号化することと、を含む方法の一例を表す。
【０１７２】
[0176]図７は、本開示の技法による、マルチレイヤ・ビットストリームのビデオデータを復号するための例示的な方法を示すフローチャートである。さらに、図７の方法は、現在ブロックを復号することを含む。現在ブロックは、現在ＣＵ、または現在ＣＵの一部分を備え得る。ビデオデコーダ３０（図１および図３）に関して説明するが、他のデバイスが、図７の方法と同様の方法を実行するように構成され得ることを理解されたい。
【０１７３】
[0177]この例では、ビデオデコーダ３０は、現在ブロックを含むピクチャのためのＰＯＣ値をリセットすべきかどうかを決定し得る（１６０）。ＰＯＣ値リセッティングが実行されるとき、ビデオデコーダ３０は、ＰＯＣリセッティングを示すデータを復号し得る（１６２）。いくつかの事例では、ビデオデコーダ３０は、ＰＯＣリセッティングタイプを示すデータを復号し得る。本開示の態様によれば、ビデオデコーダ３０は、ピクチャが、０に等しいピクチャのためのＰＯＣ  ＬＳＢ値を有するとき、ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータのみを符号化し得る。
【０１７４】
[0178]たとえば、図３に関して上記で説明したように、ビデオデコーダ３０はｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を復号し得る。本開示の態様によれば、ビデオデコーダ３０は、１つまたは複数の制約に基づいてｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃを受信および復号し得る。たとえば、ビデオデコーダ３０は、コーディングされているピクチャが０に等しいＰＯＣ  ＬＳＢ値を有するときのみ、２の値を有するｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を復号し得る。すなわち、コーディングされている特定のレイヤのためのｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが（たとえば、レイヤが独立非ベースレイヤであることを示す）１に等しく、ピクチャのＰＯＣ  ＬＳＢ値を示すｓｌｉｃｅ＿ｐｉｃ＿ｏｒｄｅｒ＿ｃｎｔ＿ｌｓｂシンタックス要素が０よりも大きいとき、ビデオデコーダ３０は、２に等しいｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃの値を復号しないことがある。
【０１７５】
[0179]ビデオデコーダ３０が、３に等しいｐｏｃ＿ｒｅｓｅｔ＿ｉｄｃシンタックス要素を復号するとき、ビデオデコーダ３０はｆｕｌｌ＿ｐｏｃ＿ｒｅｓｅｔ＿ｆｌａｇシンタックス要素とｐｏｃ＿ｌｓｂ＿ｖａｌシンタックス要素とをさらに復号し得る。本開示の態様によれば、符号化されているレイヤのための（符号化されているレイヤが独立非ベースレイヤであることを示し得る）ｐｏｃ＿ｌｓｂ＿ｎｏｔ＿ｐｒｅｓｅｎｔ＿ｆｌａｇが１に等しく、ｆｕｌｌ＿ｐｏｃ＿ｒｅｓｅｔ＿ｆｌａｇが１に等しいとき、ビデオデコーダ３０は、０に等しいｐｏｃ＿ｌｓｂ＿ｖａｌの値を復号し得る。このようにして、ビデオデコーダ３０は、ＰＯＣ値リセッティングが、０に等しいＰＯＣ  ＬＳＢ値を有するピクチャのためにのみ実行されることを保証し得、それにより、本明細書で説明するように、参照ピクチャが適切に識別されることを可能にし得る。
【０１７６】
[0180]ビデオデコーダ３０は、次いで、ピクチャのＰＯＣ値をリセットし、たとえば、スライスセグメントヘッダ、および／あるいはＰＰＳまたはＳＰＳなどのパラメータセットから参照ピクチャのＰＯＣ値を復号する（１６４）。ビデオデコーダ３０は、次いで、参照ピクチャリストを形成する（１６６）。
【０１７７】
[0181]次に、ビデオデコーダ３０は現在ブロックのための動き情報を復号する（１６８）。動き情報は、たとえば、参照ピクチャリスト識別子と、参照ピクチャリストへの参照インデックスとを含み得る。ビデオデコーダ３０は、次いで、たとえば、現在ブロックのための予測ブロックを計算するために、イントラ予測モードを使用して、現在ブロックを予測する（１７０）。より詳細には、ビデオデコーダ３０は、どの参照ピクチャリストを使用すべきかを識別するために参照ピクチャリスト識別子を使用し、参照ピクチャリスト中の参照インデックスを識別するために参照インデックスを使用する。ビデオデコーダ３０は、次いで、現在ブロックのための動きベクトルを復号し、識別された参照ピクチャ中の参照ブロックを識別する。
【０１７８】
[0182]ビデオデコーダ３０はまた、現在ブロックに対応する残差ブロックの係数のためのエントロピーコード化データなど、現在ブロックのためのエントロピーコード化データを受信し得る（１７２）。ビデオデコーダ３０は、残差ブロックの係数を再生するために、エントロピーコード化データをエントロピー復号し得る（１７４）。ビデオデコーダ３０は、次いで、量子化された変換係数のブロックを作成するために、再生された係数を逆走査し得る（１７６）。すなわち、逆走査を使用して、ビデオデコーダ３０は１次元ベクトルを２次元行列に変換する。ビデオデコーダ３０は、次いで、残差ブロックを生成するためにその係数を逆量子化および逆変換し得る（１７８）。ビデオデコーダ３０は、最終的に、予測ブロックと残差ブロックとを組み合わせることによって現在ブロックを復号し得る（１８０）。
【０１７９】
[0183]このようにして、図７の方法は、ビデオデコーダによって、マルチレイヤ・ビットストリームの独立して復号可能なレイヤのピクチャの少なくとも一部分を復号することと、ビデオデコーダによって、ピクチャが、０に等しいピクチャのためのピクチャ順序カウント（ＰＯＣ）最下位ビット（ＬＳＢ）値を有するときのみ、ピクチャのＰＯＣ  ＬＳＢ値のためのＰＯＣ値リセットを示すデータを復号することと、を含む方法の一例を表す。
【０１８０】
[0184]上記例に応じて、本明細書で説明した技法のうちのいずれかのいくつかの行為またはイベントが、異なるシーケンスで実行され得、追加、マージ、または完全に除外され得る（たとえば、すべての説明した行為またはイベントが本技法の実施のために必要であるとは限らない）ことを認識されたい。さらに、いくつかの例では、行為またはイベントは、連続的にではなく、たとえば、マルチスレッド処理、割込み処理、または複数のプロセッサを通して同時に実行され得る。
【０１８１】
[0185]１つまたは複数の例では、説明した機能は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装される場合、機能は、１つまたは複数の命令またはコードとして、コンピュータ可読媒体上に記憶されるか、あるいはコンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行され得る。コンピュータ可読媒体は、データ記憶媒体などの有形媒体に対応する、コンピュータ可読記憶媒体を含み得るか、または、たとえば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む通信媒体を含み得る。このようにして、コンピュータ可読媒体は、概して、（１）非一時的である有形コンピュータ可読記憶媒体、あるいは（２）信号または搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明した技法の実装のための命令、コードおよび／またはデータ構造を取り出すために１つまたは複数のコンピュータあるいは１つまたは複数のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品はコンピュータ可読媒体を含み得る。
【０１８２】
[0186]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ（登録商標）、ＣＤ−ＲＯＭまたは他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、フラッシュメモリ、あるいは命令またはデータ構造の形態の所望のプログラムコードを記憶するために使用され得、コンピュータによってアクセスされ得る、任意の他の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線（ＤＳＬ）、または赤外線、無線、およびマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、ＤＳＬ、または赤外線、無線、およびマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。ただし、コンピュータ可読記憶媒体およびデータ記憶媒体は、接続、搬送波、信号、または他の一時的媒体を含まないが、代わりに非一時的有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク（disk）およびディスク（disc）は、コンパクトディスク（disc）（ＣＤ）、レーザーディスク（登録商標）（disc）、光ディスク（disc）、デジタル多用途ディスク（disc）（ＤＶＤ）、フロッピー（登録商標）ディスク（disk）およびＢｌｕ−ｒａｙディスク（disc）を含み、ここで、ディスク（disk）は、通常、データを磁気的に再生し、ディスク（disc）は、データをレーザーで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
【０１８３】
[0187]命令は、１つまたは複数のデジタル信号プロセッサ（ＤＳＰ）、汎用マイクロプロセッサ、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、あるいは他の等価な集積回路またはディスクリート論理回路などの１つまたは複数のプロセッサによって実行され得る。したがって、本明細書で使用する「プロセッサ」という用語は、上記の構造、または本明細書で説明した技法の実装に好適な他の構造のいずれかを指すことがある。さらに、いくつかの態様では、本明細書で説明した機能は、符号化および復号のために構成された専用のハードウェアおよび／またはソフトウェアモジュール内に与えられ得、あるいは複合コーデックに組み込まれ得る。また、本技法は、１つまたは複数の回路または論理要素で十分に実装され得る。
【０１８４】
[0188]本開示の技法は、ワイヤレスハンドセット、集積回路（ＩＣ）またはＩＣのセット（たとえば、チップセット）を含む、多種多様なデバイスまたは装置で実装され得る。本開示では、開示する技法を実行するように構成されたデバイスの機能的態様を強調するために様々な構成要素、モジュール、またはユニットについて説明したが、それらの構成要素、モジュール、またはユニットを、必ずしも異なるハードウェアユニットによって実現する必要があるとは限らない。むしろ、上記で説明したように、様々なユニットが、好適なソフトウェアおよび／またはファームウェアとともに、上記で説明した１つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作ハードウェアユニットの集合によって与えられ得る。
【０１８５】
[0189]様々な例について説明した。これらおよび他の例は以下の特許請求の範囲内に入る。
【図１】
2017514354.tif 000005
【図２】
2017514354.tif 000006
【図３】
2017514354.tif 000007
【図４】
2017514354.tif 000008
【図５】
2017514354.tif 000009
【図６】
2017514354.tif 000010
【図７】
2017514354.tif 000011
【国際調査報告】
2017514354.tif 000012
2017514354.tif 000013
2017514354.tif 000014
2017514354.tif 000015