JP6608374B2 - ビデオ情報のスケーラブルコーディングのためのデバイスおよび方法 - Google Patents

ビデオ情報のスケーラブルコーディングのためのデバイスおよび方法 Download PDF

Info

Publication number
JP6608374B2
JP6608374B2 JP2016547995A JP2016547995A JP6608374B2 JP 6608374 B2 JP6608374 B2 JP 6608374B2 JP 2016547995 A JP2016547995 A JP 2016547995A JP 2016547995 A JP2016547995 A JP 2016547995A JP 6608374 B2 JP6608374 B2 JP 6608374B2
Authority
JP
Japan
Prior art keywords
picture
video
layer
pictures
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016547995A
Other languages
English (en)
Other versions
JP2016537930A5 (ja
JP2016537930A (ja
Inventor
ラマスブラモニアン、アダルシュ・クリシュナン
ワン、イェ−クイ
チェン、イン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2016537930A publication Critical patent/JP2016537930A/ja
Publication of JP2016537930A5 publication Critical patent/JP2016537930A5/ja
Application granted granted Critical
Publication of JP6608374B2 publication Critical patent/JP6608374B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/36Scalability techniques involving formatting the layers as a function of picture distortion after decoding, e.g. signal-to-noise [SNR] scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/188Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a video data packet, e.g. a network abstraction layer [NAL] unit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Description

[0001]本開示は、ビデオコーディングおよび圧縮の分野に関し、詳細には、スケーラブルビデオコーディング(SVC:scalable video coding)、マルチビュービデオコーディング(MVC:multiview video coding)、または3Dビデオコーディング(3DV)に関する。
[0002]デジタルビデオ機能は、デジタルテレビジョン、デジタルダイレクトブロードキャストシステム、ワイヤレスブロードキャストシステム、携帯情報端末(PDA)、ラップトップまたはデスクトップコンピュータ、デジタルカメラ、デジタル記録デバイス、デジタルメディアプレーヤ、ビデオゲームデバイス、ビデオゲームコンソール、携帯電話または衛星無線電話、ビデオ遠隔会議デバイスなどを含む、広範囲にわたるデバイスに組み込まれ得る。デジタルビデオデバイスは、MPEG−2、MPEG−4、ITU−T H.263、ITU−T H.264/MPEG−4,Part10,アドバンストビデオコーディング(AVC)、現在開発中の高効率ビデオコーディング(HEVC)規格によって定義された規格、およびそのような規格の拡張に記載されているもののような、ビデオ圧縮技法を実装する。ビデオデバイスは、そのようなビデオコーディング技法を実装することによって、デジタルビデオ情報をより効率的に送信、受信、符号化、復号、および/または記憶し得る。
[0003]ビデオ圧縮技法は、ビデオシーケンスに固有の冗長性を低減または除去するために、空間(イントラピクチャ)予測および/または時間(インターピクチャ)予測を実行する。ブロックベースのビデオコーディングの場合、ビデオスライス(たとえば、ビデオフレーム、ビデオフレームの一部分など)が、ツリーブロック、コーディングユニット(CU:coding unit)および/またはコーディングノードと呼ばれることもあるビデオブロックに区分され得る。ピクチャのイントラコーディングされる(I)スライスの中のビデオブロックは、同じピクチャの中の隣接ブロック中の参照サンプルに対する空間予測を使用して符号化される。ピクチャのインターコーディングされる(PまたはB)スライスの中のビデオブロックは、同じピクチャの中の隣接ブロック中の参照サンプルに対する空間予測、または他の参照ピクチャにおける参照サンプルに対する時間予測を使用し得る。ピクチャはフレームと呼ばれることがあり、参照ピクチャは参照フレームと呼ばれることがある。
[0004]空間予測または時間予測により、コーディングされるべきブロックのための予測ブロックが生じる。残差データは、コーディングされるべき元のブロックと予測ブロックとの間のピクセル差分を表す。インターコード化ブロックは、予測ブロックを形成する参照サンプルのブロックを指す動きベクトル、およびコーディングされたブロックと予測ブロックとの間の差分を示す残差データに従って符号化される。イントラコード化ブロックは、イントラコーディングモードおよび残差データに従って符号化される。さらなる圧縮のために、残差データは、ピクセル領域から変換領域に変換され、残差変換係数をもたらす場合があり、その残差変換係数は、次いで量子化される場合がある。最初に2次元アレイで構成された量子化変換係数は、変換係数の1次元ベクトルを生成するためにスキャンされ得、なお一層の圧縮を達成するために、エントロピー符号化が適用され得る。
[0005]スケーラブルビデオコーディング(SVC)は、参照レイヤ(RL:reference layer)と呼ばれることがあるベースレイヤ(BL:base layer)と、1つまたは複数のスケーラブルエンハンスメントレイヤ(EL:enhancement layer)とが使用されるビデオコーディングを指す。SVCでは、ベースレイヤは、ベースレベルの品質でビデオデータを搬送することができる。1つまたは複数のエンハンスメントレイヤは、たとえば、より高い空間レベル、時間レベル、および/または信号対雑音(SNR:signal-to-noise)レベルをサポートするために、追加のビデオデータを搬送することができる。エンハンスメントレイヤは、前に符号化されたレイヤに対して定義され得る。たとえば、最下位レイヤはBLとして働き得、最上位レイヤはELとして働き得る。中間レイヤは、ELまたはRLのいずれか、あるいはその両方として働き得る。たとえば、中間レイヤ(たとえば、最下位レイヤでもなく最上位レイヤでもないレイヤ)は、ベースレイヤまたは介在エンハンスメントレイヤ(intervening enhancement layer)などの中間レイヤの下のレイヤのためのELであり得、同時に、中間レイヤの上の1つまたは複数のエンハンスメントレイヤのためのRLとして働き得る。同様に、HEVC規格のマルチビューまたは3D拡張では、複数のビューがあり得、1つのビューの情報は、別のビューの情報(たとえば、動き推定、動きベクトル予測および/または他の冗長)をコーディング(たとえば、符号化または復号)するために利用され得る。
[0006]復号されるピクチャは、(たとえば、それらが表示され得、または他のピクチャを予測するために使用され得るように)復号ピクチャバッファ(DPB)に記憶される。出力されるべきピクチャは、「出力用に必要とされる」としてマークされてよく、他のピクチャを予測するために使用されるべきピクチャは、「参照として使用される」としてマークされてよい。「出力用に必要とされる」としても「参照用に使用される」としてもマークされない復号ピクチャは、それらが復号プロセスによって除去されるまでDPBの中に存在してよい。出力順序適合の復号器では、ピクチャをDPBから除去するプロセスが、しばしば、「出力用に必要とされる」としてマークされているピクチャの出力の直後にくる。出力およびその後の除去のプロセスは、「バンピング」と呼ばれることがある。
[0007]さらに、これらのピクチャが「出力用に必要とされる」としてマークされていることがあっても、復号器がDPBの中のピクチャを出力せずに除去し得る状況もあり得る。たとえば、ビットストリームの中間にあるいくつかのランダムアクセスポイントピクチャに対して、そのようなピクチャをコーディングする時間において、DPBの中のすべてのピクチャが除去され得る。
[0008]しかしながら、マルチレイヤビットストリームのコンテキストにおいて、アラインされないIRAPピクチャをビットストリームの中に有する可能性を伴うと、同じアクセスユニットの他のピクチャがランダムアクセスポイントピクチャでないことがあり、したがって、DPBの中のピクチャのうちのいくつかを使用する必要があり得るので、DPBの中のすべてのピクチャがそのようなランダムアクセスポイントピクチャに対して除去される場合に面倒な事態が起こり得る。
[0009]したがって、ランダムアクセスピクチャが複数のレイヤにわたってアラインされないときにDPBをフラッシングするための改善されたコーディング方法が望まれる。
[0010]本開示のシステム、方法、およびデバイスは、いくつかの発明的態様をそれぞれ有し、それらの態様は、1つとして、本明細書で開示する望ましい属性を単独で担うものではない。
[0011]一態様では、ビデオ情報をコーディング(たとえば、符号化または復号)するように構成された装置は、メモリユニットと、メモリユニットと通信しているプロセッサとを含む。メモリユニットは、ベースレイヤ(BL)およびエンハンスメントレイヤ(EL)に関連付けられたビデオ情報を記憶するように構成され、BLは、第1のアクセスユニットの中にBLピクチャを有し、ELは、第1のアクセスユニットの中にELピクチャを有し、BLピクチャは、それに関連付けられたフラグを有する。プロセッサは、BLピクチャに関連付けられたフラグの値を決定し、フラグの値に基づいて、(1)ELピクチャがコーディングされる前に、復号ピクチャバッファ(DPB)の中の1つまたは複数のELピクチャを、1つまたは複数のELピクチャを出力することなく除去すること、または(2)DPBの中の1つまたは複数のELピクチャを、1つまたは複数のELピクチャを出力することなく除去することを控えることのうちの1つを実行するように構成される。
[0012]別の態様では、ビデオ情報を符号化する方法は、第1のアクセスユニットの中のBLピクチャに関連付けられたフラグの値を決定することと、フラグの値に基づいて、(1)第1のアクセスユニットの中のELピクチャがコーディングされる前に、復号ピクチャバッファ(DPB)の中の1つまたは複数のELピクチャを、1つまたは複数のELピクチャを出力することなく除去すること、または(2)DPBの中の1つまたは複数のELピクチャを、1つまたは複数のELピクチャを出力することなく除去することを控えることのうちの1つを実行することとを備える。
[0013]別の態様では、非一時的コンピュータ可読媒体は、実行されたとき、装置にプロセスを実行させるコードを備える。プロセスは、ベースレイヤ(BL)およびエンハンスメントレイヤ(EL)に関連付けられたビデオ情報を記憶することと、BLは、第1のアクセスユニットの中にBLピクチャを有し、ELは、第1のアクセスユニットの中にELピクチャを有し、ここにおいて、BLピクチャは、それに関連付けられたフラグを有する、BLピクチャに関連付けられたフラグの値を決定することと、フラグの値に基づいて、(1)ELピクチャがコーディングされる前に、復号ピクチャバッファ(DPB)の中の1つまたは複数のELピクチャを、1つまたは複数のELピクチャを出力することなく除去すること、または(2)DPBの中の1つまたは複数のELピクチャを、1つまたは複数のELピクチャを出力することなく除去することを控えることのうちの1つを実行することとを含む。
[0014]別の態様では、ビデオ情報をコーディングするように構成されたビデオコーディングデバイスは、ベースレイヤ(BL)およびエンハンスメントレイヤ(EL)に関連付けられたビデオ情報を記憶するための手段と、BLは、第1のアクセスユニットの中にBLピクチャを有し、ELは、第1のアクセスユニットの中にELピクチャを有し、ここにおいて、BLピクチャは、それに関連付けられたフラグを有する、BLピクチャに関連付けられたフラグの値を決定するための手段と、フラグの値に基づいて、(1)ELピクチャがコーディングされる前に、復号ピクチャバッファ(DPB)の中の1つまたは複数のELピクチャを、1つまたは複数のELピクチャを出力することなく除去すること、または(2)DPBの中の1つまたは複数のELピクチャを、1つまたは複数のELピクチャを出力することなく除去することを控えることのうちの1つを実行するための手段とを備える。
本開示で説明する態様による技法を利用し得る例示的なビデオ符号化および復号システムを示すブロック図。 本開示で説明する態様による技法を実行し得る別の例示的なビデオ符号化および復号システムを示すブロック図。 本開示で説明する態様による技法を実装し得るビデオ符号化器の一例を示すブロック図。 本開示で説明する態様による技法を実装し得るビデオ符号化器の一例を示すブロック図。 本開示で説明する態様による技法を実装し得るビデオ復号器の一例を示すブロック図。 本開示で説明する態様による技法を実装し得るビデオ復号器の一例を示すブロック図。 本開示の一実施形態による、異なるレイヤの中のピクチャの例示的な構成を示すブロック図。 本開示の一実施形態による、ビデオ情報をコーディングする方法を示すフローチャート。 本開示の一実施形態による、ビデオ情報をコーディングする方法を示すフローチャート。
[0024]本明細書に記載されるいくつかの実施形態は、HEVC(高効率ビデオコーディング)などのアドバンストビデオコーデックのコンテキストにおけるスケーラブルビデオコーディングのためのレイヤ間予測に関する。より具体的には、本開示は、HEVCのスケーラブルビデオコーディング(SVC)拡張におけるレイヤ間予測の実行を改善するためのシステムおよび方法に関する。
[0025]以下の説明では、いくつかの実施形態に関係するH.264/AVC技法が記載され、HEVC規格および関係する技法も説明される。HEVC規格および/またはH.264規格のコンテキストにおいて、いくつかの実施形態が本明細書に記載されるが、本明細書で開示されるシステムおよび方法が任意の適切なビデオコーディング規格に適用可能であり得ることを、当業者なら諒解されよう。たとえば、本明細書で開示される実施形態は、以下の規格、すなわち、ITU−T H.261、ISO/IEC MPEG−1ビジュアル、ITU−T H.262もしくはISO/IEC MPEG−2ビジュアル、ITU−T H.263、ISO/IEC MPEG−4ビジュアル、およびそのスケーラブルビデオコーディング(SVC)およびマルチビュービデオコーディング(MVC)拡張を含むITU−T H.264(ISO/IEC MPEG−4 AVCとも呼ばれる)のうちの、1つまたは複数に適用可能であり得る。
[0026]HEVCは、概して、多くの点で、前のビデオコーディング規格のフレームワークに従う。HEVCにおける予測の単位は、いくつかの前のビデオコーディング規格における単位(たとえば、マクロブロック)とは異なる。事実上、マクロブロックの概念は、いくつかの前のビデオコーディング規格において理解されているように、HEVC中に存在しない。マクロブロックは、他の考えられる利益の中でも高いフレキシビリティを与え得る、4分木スキームに基づく階層構造と置き換えられる。たとえば、HEVCスキーム内で、コーディングユニット(CU)、予測ユニット(PU:Prediction Unit)、および変換ユニット(TU:Transform Unit)という3つのタイプのブロックが定義される。CUは領域分割の基本単位を指すことがある。CUはマクロブロックの概念に類似するとみなされてよいが、HEVCは、CUの最大サイズを制限せず、コンテンツ適応性を改善するために4つの等しいサイズのCUへの再帰的分割を可能にし得る。PUは、インター/イントラ予測の基本単位とみなされてよく、単一のPUは、不規則なイメージパターンを効率的にコーディングするために、複数の任意形状区分を含み得る。TUは、変換の基本単位とみなされてよい。TUはPUとは無関係に定義され得るが、TUのサイズはTUが属するCUのサイズに限定されることがある。3つの異なる概念へのブロック構造のこの分離は、各ユニットがそのユニットのそれぞれの役割に従って最適化されることを可能にし得、このことはコーディング効率の改善をもたらし得る。
[0027]単に説明の目的で、本明細書で開示するいくつかの実施形態について、2つのレイヤのみ(たとえば、ベースレイヤなどの下位レイヤ、およびエンハンスメントレイヤなどの上位レイヤ)を含む例を用いて説明する。そのような例が複数のベースレイヤおよび/またはエンハンスメントレイヤを含む構成に適用可能であり得ることを理解されたい。さらに、説明を簡単にするために、以下の開示は、いくつかの実施形態に関して「フレーム」または「ブロック」という用語を含む。しかしながら、これらの用語は、限定的であることを意味しない。たとえば、以下で説明する技法は、ブロック(たとえば、CU、PU、TU、マクロブロックなど)、スライス、フレームなどの、任意の適切なビデオユニットとともに使用され得る。

ビデオコーディング規格
[0028]ビデオ画像、TV画像、静止画像、またはビデオレコーダもしくはコンピュータによって生成された画像などの、デジタル画像は、水平ラインおよび垂直ラインで構成されたピクセルまたはサンプルからなり得る。単一の画像中のピクセルの数は一般に数万個である。各ピクセルは、一般に、ルミナンス情報とクロミナンス情報とを含んでいる。圧縮がなければ、画像符号化器から画像復号器に搬送されるべき情報の純粋な量は、リアルタイム画像伝送を不可能にすることになる。送信されるべき情報の量を低減するために、JPEG、MPEGおよびH.263規格など、いくつかの異なる圧縮方法が開発された。
[0029]ビデオコーディング規格は、ITU−T H.261と、ISO/IEC MPEG−1ビジュアルと、ITU−T H.262またはISO/IEC MPEG−2ビジュアルと、ITU−T H.263と、ISO/IEC MPEG−4ビジュアルと、それのスケーラブルビデオコーディング(SVC)およびマルチビュービデオコーディング(MVC)拡張を含む(ISO/IEC MPEG−4 AVCとも呼ばれる)ITU−T H.264とを含む。
[0030]さらに、新しいビデオコーディング規格、すなわち、高効率ビデオコーディング(HEVC)が、ITU−Tビデオコーディングエキスパートグループ(VCEG:Video Coding Experts Group)とISO/IECモーションピクチャエキスパートグループ(MPEG)とのジョイントコラボレーションチームオンビデオコーディング(JCT−VC:Joint Collaboration Team on Video Coding)によって開発されている。HEVCドラフト10についての完全引用は、文書JCTVC−L1003、Brossら、「High Efficiency Video Coding(HEVC)Text Specification Draft 10」、ITU−T SG16 WP3およびISO/IEC JTC1/SC29/WG11のジョイントコラボレーティブチームオンビデオコーディング(JCT−VC)、第12回会合:ジュネーブ、スイス、2013年1月14日〜2013年1月23日である。HEVCへのマルチビュー拡張、すなわち、MV−HEVC、およびSHVCと名付けられたHEVCへのスケーラブル拡張も、JCT−3V(ITU−T/ISO/IECジョイントコラボレーティブチームオン3Dビデオコーディング拡張開発)およびJCT−VCによって、それぞれ開発されている。
[0031]新規のシステム、装置、および方法の様々な態様は、これ以降、添付図面を参照しながら、より十分に説明される。しかしながら、本開示は、多くの異なる形態で実施可能であり、本開示の全体を通して示される任意の特定の構造または機能に限定されるものと解釈されるべきでない。むしろ、本開示が、入念で完全であり、本開示の範囲を当業者に十分に伝達するように、これらの態様が提供される。本明細書の教示に基づいて、本開示の範囲は、本開示の他の態様と無関係に実装されるにせよ、本開示の他の態様と組み合わせて実装されるにせよ、本明細書で開示する新規のシステム、装置、および方法のいかなる態様をもカバーするものであることを、当業者なら諒解されたい。たとえば、本明細書に記載される任意の数の態様を使用して装置が実装されてよく、または方法が実施されてもよい。さらに、本開示の範囲は、本明細書に記載する本開示の様々な態様に加えてまたはそれらの態様以外に、他の構造、機能、または構造および機能を使用して実施されるそのような装置または方法をカバーするものとする。本明細書で開示する任意の態様は、特許請求の範囲の1つまたは複数の要素により実施されてもよいことを理解されたい。
[0032]特定の態様について本明細書で説明するが、これらの態様の多くの変形および置換は本開示の範囲内に入る。好ましい態様のいくつかの利益および利点が述べられるが、本開示の範囲は、特定の利益、使用、または目的に限定されることを意図しない。むしろ、本開示の態様は、異なるワイヤレス技術、システム構成、ネットワーク、および伝送プロトコルに広く適用可能なものであり、そのうちのいくつかが図面および好ましい態様の以下の説明において例として示される。詳細な説明および図面は、限定的ではなく、本開示の例示にすぎず、本開示の範囲は、添付の特許請求の範囲およびその均等物によって定義される。
[0033]添付の図面は、例を示す。添付の図面内で参照番号によって示される要素は、以下の説明において同様の参照番号で示される要素に対応する。本開示では、序数語(たとえば、「第1の」、「第2の」、「第3の」など)で始まる名前を有する要素は、必ずしもそれらの要素が特定の順序を有することを暗示するとは限らない。むしろ、そのような序数語は、同じまたは同様のタイプの、異なる要素を指すために使用されるにすぎない。

ビデオコーディングシステム
[0034]図1Aは、本開示で説明する態様による技法を利用し得る例示的なビデオコーディングシステム10を示すブロック図である。本明細書で使用し説明する「ビデオコーダ」という用語は、総称的にビデオ符号化器とビデオ復号器の両方を指す。本開示では、「ビデオコーディング」または「コーディング」という用語は、ビデオ符号化とビデオ復号とを総称的に指すことがある。ビデオ符号化器およびビデオ復号器に加えて、本出願に記載される態様は、トランスコーダ(たとえば、ビットストリームを復号し別のビットストリームを再符号化することができるデバイス)およびミドルボックス(たとえば、ビットストリームを修正、変換、および/または別のやり方で操作することができるデバイス)などの、他の関係するデバイスに拡張され得る。
[0035]図1Aに示すように、ビデオコーディングシステム10は、宛先モジュール14によって後で復号されるべき符号化ビデオデータを生成するソースモジュール12を含む。図1Aの例では、ソースモジュール12および宛先モジュール14は別個のデバイス上にある− 詳細には、ソースモジュール12はソースデバイスの部分であり、宛先モジュール14は宛先デバイスの部分である。しかしながら、ソースおよび宛先モジュール12、14が、図1Bの例に示すように、同じデバイス上にあってもよく、または同じデバイスの部分であってもよいことに留意されたい。
[0036]もう一度図1Aを参照すると、ソースモジュール12および宛先モジュール14は、デスクトップコンピュータ、ノートブック(たとえば、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲のデバイスのいずれかを備え得る。場合によっては、ソースモジュール12および宛先モジュール14はワイヤレス通信のために装備され得る。
[0037]宛先モジュール14は、リンク16を介して、復号されるべき符号化ビデオデータを受信し得る。リンク16は、ソースモジュール12から宛先モジュール14に符号化ビデオデータを動かすことが可能な任意のタイプの媒体またはデバイスを備え得る。図1Aの例では、リンク16は、ソースモジュール12が、符号化ビデオデータをリアルタイムで宛先モジュール14に直接送信することを可能にするための通信媒体を備え得る。符号化ビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され得、宛先モジュール14に送信され得る。通信媒体は、無線周波数(RF)スペクトルまたは1つもしくは複数の物理伝送線路などの、任意のワイヤレス通信媒体または有線通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワークなどのパケットベースのネットワーク、またはインターネットなどのグローバルネットワークの一部を形成し得る。通信媒体は、ルータ、スイッチ、基地局、またはソースモジュール12から宛先モジュール14への通信を容易にするために有用であり得る、任意の他の機器を含み得る。
[0038]代替的に、符号化データは出力インターフェース22から、オプションの記憶デバイス31に出力され得る。同様に、符号化データは、入力インターフェース28によって記憶デバイス31からアクセスされ得る。記憶デバイス31は、ハードドライブ、フラッシュメモリ、揮発性もしくは不揮発性のメモリ、または符号化ビデオデータを記憶するための任意の他の適切なデジタル記憶媒体などの、様々な分散されたまたは局所的にアクセスされるデータ記憶媒体のいずれかを含み得る。さらなる例では、記憶デバイス31は、ソースモジュール12によって生成された符号化ビデオを保持し得るファイルサーバまたは別の中間記憶デバイスに相当し得る。宛先モジュール14は、記憶されているビデオデータに、記憶デバイス31からストリーミングまたはダウンロードを介してアクセスし得る。ファイルサーバは、符号化ビデオデータを記憶することができ、その符号化ビデオデータを宛先モジュール14に送信することができる、任意のタイプのサーバであり得る。例示的なファイルサーバは、ウェブサーバ(たとえば、ウェブサイトのための)、FTPサーバ、ネットワーク接続記憶(NAS)デバイス、または局所的なディスクドライブを含む。宛先モジュール14は、インターネット接続を含む任意の標準的なデータ接続を通じて、符号化ビデオデータにアクセスし得る。これは、ファイルサーバに記憶された符号化ビデオデータにアクセスするのに好適である、ワイヤレスチャネル(たとえば、Wi−Fi(登録商標)接続)、有線接続(たとえば、DSL、ケーブルモデムなど)、またはその両方の組合せを含み得る。記憶デバイス31からの符号化ビデオデータの伝送は、ストリーミング伝送、ダウンロード伝送、またはその両方の組合せであり得る。
[0039]本開示の技法は、ワイヤレスの用途または設定に限定されない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、たとえばインターネットを介したストリーミングビデオ送信(たとえば、動的適応ストリーミングオーバーHTTP(DASH:dynamic adaptive streaming over HTTP)など)、データ記憶媒体に記憶するためのデジタルビデオの符号化、データ記憶媒体に記憶されたデジタルビデオの復号、または他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、ビデオコーディングシステム10は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および/またはビデオ電話などの用途をサポートするために、単方向または双方向のビデオ送信をサポートするように構成され得る。
[0040]図1Aの例では、ソースモジュール12は、ビデオソース18と、ビデオ符号化器20と、出力インターフェース22とを含む。場合によっては、出力インターフェース22は変調器/復調器(モデム)および/または送信機を含み得る。ソースモジュール12において、ビデオソース18は、ビデオキャプチャデバイス、たとえばビデオカメラ、以前にキャプチャされたビデオを含んでいるビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェース、および/またはソースビデオとしてコンピュータグラフィックスデータを生成するためのコンピュータグラフィックスシステムなどのソース、あるいはそのようなソースの組合せを含み得る。一例として、図1Bの例に示すように、ビデオソース18がビデオカメラである場合、ソースモジュール12および宛先モジュール14は、いわゆるカメラ付き電話またはビデオ電話を形成し得る。しかしながら、本開示に記載される技法は、概してビデオコーディングに適用可能であり得、ワイヤレスアプリケーションおよび/または有線アプリケーションに適用され得る。
[0041]キャプチャされたビデオ、以前にキャプチャされたビデオ、またはコンピュータ生成されたビデオは、ビデオ符号化器20によって符号化され得る。符号化ビデオデータは、ソースモジュール12の出力インターフェース22を介して、宛先モジュール14に直接送信され得る。符号化ビデオデータは、さらに(または代替的に)、復号および/または再生のための宛先モジュール14または他のデバイスによる後のアクセスのために、記憶デバイス31に記憶され得る。図1Aおよび図1Bに示すビデオ符号化器20は、図2Aに示すビデオ符号化器20、図2Bに示すビデオ符号化器23、または本明細書に記載される任意の他のビデオ符号化器を備えてよい。
[0042]図1Aの例では、宛先モジュール14は、入力インターフェース28と、ビデオ復号器30と、ディスプレイデバイス32とを含む。場合によっては、入力インターフェース28は、受信機および/またはモデムを含み得る。宛先モジュール14の入力インターフェース28は、符号化ビデオデータを、リンク16を介して受信し得る。リンク16を介して通信され、または記憶デバイス31上に提供された符号化ビデオデータは、ビデオデータを復号する際のビデオ復号器30などのビデオ復号器による使用のために、ビデオ符号化器20によって生成された様々なシンタックス要素を含み得る。そのようなシンタックス要素は、通信媒体上で送信されるか、記憶媒体に記憶されるか、またはファイルサーバに記憶される符号化ビデオデータに含まれ得る。図1Aおよび図1Bに示すビデオ復号器30は、図3Aに示すビデオ復号器30、図3Bに示すビデオ復号器33、または本明細書に記載される任意の他のビデオ復号器を備えてよい。
[0043]ディスプレイデバイス32は、宛先モジュール14と一体化されるか、またはその外部にあり得る。いくつかの例では、宛先モジュール14は、一体型ディスプレイデバイスを含み得、また、外部ディスプレイデバイスとインターフェースするように構成され得る。他の例では、宛先モジュール14はディスプレイデバイスであり得る。概して、ディスプレイデバイス32は、復号ビデオデータをユーザに対して表示し、液晶ディスプレイ(LCD)、プラズマディスプレイ、有機発光ダイオード(OLED)ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備え得る。
[0044]関係する態様では、図1Bは、例示的なビデオ符号化および復号システム10’を示し、ここにおいて、ソースおよび宛先モジュール12、14は、デバイスまたはユーザデバイス11上にあり、またはその部分である。デバイス11は、「スマート」フォンなどの電話ハンドセットであり得る。デバイス11は、ソースおよび宛先モジュール12、14と動作可能に通信しているオプションのコントローラ/プロセッサモジュール13を含み得る。図1Bのシステム10’は、ビデオ符号化器20と出力インターフェース22との間にビデオ処理ユニット21をさらに含み得る。いくつかの実装形態では、ビデオ処理ユニット21は、図1Bに示すように別個のユニットであるが、他の実施態様では、ビデオ処理ユニット21は、ビデオ符号化器20および/またはプロセッサ/コントローラモジュール13の部分として実装され得る。システム10’は、また、ビデオシーケンスの中で対象のオブジェクトを追跡することができるオプションの追跡器29を含み得る。追跡されるべきオブジェクトまたは対象は、本開示の1つまたは複数の態様に関して説明する技法によって、セグメント化され得る。関係する態様では、追跡することは、ディスプレイデバイス32によって単独で、または追跡器29と一緒に実行され得る。図1Bのシステム10’およびその構成要素は、図1Aのシステム10およびその構成要素と場合によっては類似である。
[0045]ビデオ符号化器20およびビデオ復号器30は、現在開発中の高効率ビデオコーディング(HEVC)規格など、ビデオ圧縮規格に従って動作し得、HEVCテストモデル(HM)に準拠し得る。代替的に、ビデオ符号化器20およびビデオ復号器30は、代替的にMPEG−4,Part10,アドバンストビデオコーディング(AVC)と呼ばれるITU−T H.264規格など、他の独自の規格または業界規格、あるいはそのような規格の拡張に従って動作し得る。ただし、本開示の技法は、いかなる特定のコーディング規格にも限定されない。ビデオ圧縮規格の他の例は、MPEG−2およびITU−T H.263を含む。
[0046]図1Aおよび図1Bの例に示されないが、ビデオ符号化器20およびビデオ復号器30は各々、オーディオ符号化器およびオーディオ復号器と統合されてよく、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理するための適切なMUX−DEMUXユニット、または他のハードウェアおよびソフトウェアを含み得る。適用可能な場合、いくつかの例では、MUX−DEMUXユニットは、ITU H.223マルチプレクサプロトコル、またはユーザデータグラムプロトコル(UDP)などの他のプロトコルに準拠し得る。
[0047]ビデオ符号化器20およびビデオ復号器30は各々、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の組合せなどの様々な適切な符号化器回路のいずれかとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、デバイスは、適切な非一時的コンピュータ可読媒体にソフトウェアの命令を記憶し得、本開示の技法を実行するために、1つまたは複数のプロセッサを使用して、命令をハードウェアで実行し得る。ビデオ符号化器20およびビデオ復号器30の各々は、1つまたは複数の符号化器または復号器に含まれ得、そのいずれも、それぞれのデバイスにおいて複合符号化器/復号器(コーデック)の一部として統合され得る。

ビデオコーディングプロセス
[0048]上記で簡略に述べられたように、ビデオ符号化器20はビデオデータを符号化する。ビデオデータは、1つまたは複数のピクチャを備え得る。ピクチャの各々は、ビデオの一部を形成する静止画像である。いくつかの事例では、ピクチャは、ビデオ「フレーム」と呼ばれることがある。ビデオ符号化器20がビデオデータを符号化するとき、ビデオ符号化器20は、ビットストリームを生成し得る。ビットストリームは、ビデオデータのコーディングされた表現を形成するビットのシーケンスを含み得る。ビットストリームは、コード化ピクチャと、関連するデータとを含み得る。コード化ピクチャは、ピクチャのコーディングされた表現である。
[0049]ビットストリームを生成するために、ビデオ符号化器20は、ビデオデータ中の各ピクチャに対して符号化演算を実行し得る。ビデオ符号化器20がピクチャに対して符号化演算を実行するとき、ビデオ符号化器20は、一連のコード化ピクチャと、関連するデータとを生成し得る。関連するデータは、ビデオパラメータセット(VPS:video parameter set)と、シーケンスパラメータセットと、ピクチャパラメータセットと、適応パラメータセットと、他のシンタックス構造とを含み得る。シーケンスパラメータセット(SPS:sequence parameter set)は、ピクチャの0個以上のシーケンスに適用可能なパラメータを含み得る。ピクチャパラメータセット(PPS:picture parameter set)は、0個以上のピクチャに適用可能なパラメータを含み得る。適応パラメータセット(APS:adaptation parameter set)は、0個以上のピクチャに適用可能なパラメータを含み得る。APS中のパラメータは、PPS中のパラメータよりも変化する可能性が高いパラメータであり得る。
[0050]コード化ピクチャを生成するために、ビデオ符号化器20は、ピクチャを等しいサイズのビデオブロックに区分し得る。ビデオブロックはサンプルの2次元アレイであり得る。ビデオブロックの各々は、ツリーブロックに関連付けられる。いくつかの事例では、ツリーブロックは、最大コーディングユニット(LCU:largest coding unit)と呼ばれることがある。HEVCのツリーブロックは、H.264/AVCのような従来の規格のマクロブロックに、広い意味で類似し得る。しかしながら、ツリーブロックは、特定のサイズに必ずしも限定されず、1つまたは複数のコーディングユニット(CU)を含み得る。ビデオ符号化器20は、ツリーブロックのビデオブロックを、CUに関連付けられたビデオブロックに区分するために、4分木区分を使用し得、したがって、「ツリーブロック」という名前である。
[0051]いくつかの例では、ビデオ符号化器20は、ピクチャを複数のスライスに区分し得る。スライスの各々は、整数個のCUを含み得る。いくつかの事例では、スライスは、整数個のツリーブロックを備える。他の事例では、スライスの境界は、ツリーブロック内にあり得る。
[0052]ピクチャに対して符号化演算を実行することの一部として、ビデオ符号化器20は、ピクチャの各スライスに対して符号化演算を実行し得る。ビデオ符号化器20がスライスに対して符号化演算を実行するとき、ビデオ符号化器20は、スライスに関連付けられた符号化データを生成し得る。スライスに関連付けられた符号化データは、「コード化スライス」と呼ばれることがある。
[0053]コード化スライスを生成するために、ビデオ符号化器20は、スライス中の各ツリーブロックに対して符号化演算を実行し得る。ビデオ符号化器20がツリーブロックに対して符号化演算を実行するとき、ビデオ符号化器20は、コーディングされたツリーブロックを生成し得る。コーディングされたツリーブロックは、ツリーブロックの符号化されたバージョンを表すデータを備え得る。
[0054]ビデオ符号化器20がコード化スライスを生成するとき、ビデオ符号化器20は、ラスタスキャン順序に従って、スライス中のツリーブロックに対して符号化演算を実行(たとえば、符号化)し得る。たとえば、ビデオ符号化器20は、スライス中のツリーブロックの一番上の行にわたって左から右に進み、次いでツリーブロックの次の下の行にわたって左から右に進み、以下同様に進む順序で、ビデオ符号化器20がスライス中のツリーブロックの各々を符号化するまで、スライスのツリーブロックを符号化し得る。
[0055]ラスタスキャン順序に従ってツリーブロックを符号化した結果として、所与のツリーブロックの上および左のツリーブロックは符号化されていることがあるが、所与のツリーブロックの下および右のツリーブロックはまだ符号化されていない。したがって、ビデオ符号化器20は、所与のツリーブロックを符号化するとき、所与のツリーブロックの上および左のツリーブロックを符号化することによって生成される情報にアクセスすることが可能であり得る。しかしながら、ビデオ符号化器20は、所与のツリーブロックを符号化するとき、所与のツリーブロックの下および右のツリーブロックを符号化することによって生成される情報にアクセスできないことがある。
[0056]コーディングされたツリーブロックを生成するために、ビデオ符号化器20は、ビデオブロックを徐々により小さいビデオブロックに分割するために、ツリーブロックのビデオブロック上で4分木区分を再帰的に実行し得る。より小さいビデオブロックの各々は、異なるCUに関連付けられ得る。たとえば、ビデオ符号化器20は、ツリーブロックのビデオブロックを4つの等しいサイズのサブブロックに区分し得、サブブロックのうちの1つまたは複数を4つの等しいサイズのサブサブブロックに区分し得、以下同様である。区分されたCUは、そのビデオブロックが他のCUに関連付けられたビデオブロックに区分されているCUであり得る。区分されていないCUは、そのビデオブロックが他のCUに関連付けられたビデオブロックに区分されていないCUであり得る。
[0057]ビットストリーム中の1つまたは複数のシンタックス要素は、ビデオ符号化器20がツリーブロックのビデオブロックを区分し得る最大の回数を示し得る。CUのビデオブロックは形状が正方形であり得る。CUのビデオブロックのサイズ(たとえば、CUのサイズ)は、8×8のピクセルから、最大で64×64以上のピクセルを有するツリーブロックのビデオブロックのサイズ(たとえば、ツリーブロックのサイズ)までわたり得る。
[0058]ビデオ符号化器20は、zスキャン順序に従って、ツリーブロックの各CUに対して符号化演算を実行(たとえば、符号化)し得る。言い換えれば、ビデオ符号化器20は、左上のCUと、右上のCUと、左下のCUと、次いで右下のCUとを、その順序で符号化し得る。ビデオ符号化器20が、区分されているCUに対して符号化演算を実行するとき、ビデオ符号化器20は、zスキャン順序に従って、区分されているCUのビデオブロックのサブブロックに関連付けられたCUを符号化し得る。言い換えれば、ビデオ符号化器20は、左上のサブブロックに関連付けられたCUと、右上のサブブロックに関連付けられたCUと、左下のサブブロックに関連付けられたCUと、次いで右下のサブブロックに関連付けられたCUとを、その順序で符号化し得る。
[0059]zスキャン順序に従ってツリーブロックのCUを符号化した結果として、所与のCUの上、左上、右上、左、および左下のCUは符号化されていることがある。所与のCUの下または右のCUはまだ符号化されていない。したがって、ビデオ符号化器20は、所与のCUを符号化するとき、所与のCUに隣接するいくつかのCUを符号化することによって生成される情報にアクセスすることが可能であり得る。しかしながら、ビデオ符号化器20は、所与のCUを符号化するとき、所与のCUに隣接する他のCUを符号化することによって生成される情報にアクセスできないことがある。
[0060]ビデオ符号化器20が、区分されていないCUを符号化するとき、ビデオ符号化器20は、CUに対する1つまたは複数の予測ユニット(PU)を生成し得る。CUのPUの各々は、CUのビデオブロック内の異なるビデオブロックに関連付けられ得る。ビデオ符号化器20は、CUの各PUに対して予測ビデオブロックを生成し得る。PUの予測ビデオブロックは、サンプルのブロックであり得る。ビデオ符号化器20は、PUのための予測ビデオブロックを生成するために、イントラ予測またはインター予測を使用し得る。
[0061]ビデオ符号化器20がPUの予測ビデオブロックを生成するためにイントラ予測を使用するとき、ビデオ符号化器20は、PUに関連付けられたピクチャの復号サンプルに基づいて、PUの予測ビデオブロックを生成し得る。ビデオ符号化器20がCUのPUの予測ビデオブロックを生成するためにイントラ予測を使用する場合、CUはイントラ予測されたCUである。ビデオ符号化器20がPUの予測ビデオブロックを生成するためにインター予測を使用するとき、ビデオ符号化器20は、PUに関連付けられたピクチャ以外の1つまたは複数のピクチャの復号サンプルに基づいて、PUの予測ビデオブロックを生成し得る。ビデオ符号化器20がCUのPUの予測ビデオブロックを生成するためにインター予測を使用する場合、CUはインター予測されたCUである。
[0062]さらに、ビデオ符号化器20がPUのための予測ビデオブロックを生成するためにインター予測を使用するとき、ビデオ符号化器20は、PUのための動き情報を生成し得る。PUのための動き情報は、PUの1つまたは複数の参照ブロックを示し得る。PUの各参照ブロックは、参照ピクチャ内のビデオブロックであり得る。参照ピクチャは、PUに関連付けられたピクチャ以外のピクチャであり得る。いくつかの事例では、PUの参照ブロックは、PUの「参照サンプル」と呼ばれることもある。ビデオ符号化器20は、PUの参照ブロックに基づいて、PUのための予測ビデオブロックを生成し得る。
[0063]ビデオ符号化器20がCUの1つまたは複数のPUのための予測ビデオブロックを生成した後、ビデオ符号化器20は、CUのPUのための予測ビデオブロックに基づいて、CUに対する残差データを生成し得る。CUの残差データは、CUのPUのための予測ビデオブロック中のサンプルと、CUの元のビデオブロック中のサンプルとの差分を示し得る。
[0064]さらに、区分されていないCUに対して符号化演算を実行することの一部として、ビデオ符号化器20は、CUの残差データを、CUの変換ユニット(TU)に関連付けられた残差データの1つまたは複数のブロック(たとえば、残差ビデオブロック)に区分するために、CUの残差データに対して再帰的な4分木区分を実行し得る。CUの各TUは、異なる残差ビデオブロックに関連付けられ得る。
[0065]ビデオ符号化器20は、TUに関連付けられた変換係数ブロック(たとえば、変換係数のブロック)を生成するために、TUに関連付けられた残差ビデオブロックに1つまたは複数の変換を適用し得る。概念的に、変換係数ブロックは変換係数の2次元(2D)行列であり得る。
[0066]変換係数ブロックを生成した後、ビデオ符号化器20は、変換係数ブロックに対して量子化プロセスを実行し得る。量子化は、概して、変換係数を表すために使用されるデータの量をできるだけ低減するために変換係数が量子化され、さらなる圧縮を実現するプロセスを指す。量子化プロセスは、変換係数の一部または全部に関連するビット深度を低減し得る。たとえば、量子化中に、nビット変換係数はmビット変換係数に切り捨てられ得、ここで、nはmよりも大きい。
[0067]ビデオ符号化器20は、各CUを、量子化パラメータ(QP)値に関連付け得る。CUに関連付けられたQP値は、ビデオ符号化器20が、CUに関連付けられた変換係数ブロックをどのように量子化するかを決定し得る。ビデオ符号化器20は、CUに関連付けられたQP値を調整することによって、CUに関連付けられた変換係数ブロックに適用される量子化の程度を調整し得る。
[0068]ビデオ符号化器20が変換係数ブロックを量子化した後、ビデオ符号化器20は、量子化された変換係数ブロックの中で変換係数を表すシンタックス要素のセットを生成し得る。ビデオ符号化器20は、これらのシンタックス要素のうちのいくつかに、コンテキスト適応型バイナリ算術コーディング(CABAC:Context Adaptive Binary Arithmetic Coding)演算などのエントロピー符号化演算を適用し得る。コンテンツ適応型可変長コーディング(CAVLC:content adaptive variable length coding)、確率間隔区分エントロピー(PIPE:probability interval partitioning entropy)コーディング、または他のバイナリ算術コーディングなど、他のエントロピーコーディング技法も使用され得る。
[0069]ビデオ符号化器20によって生成されるビットストリームは、一連のネットワークアブストラクションレイヤ(NAL:Network Abstraction Layer)ユニットを含み得る。NALユニットの各々は、NALユニット中のデータのタイプのインジケーションと、データを含むバイトとを含む、シンタックス構造であり得る。たとえば、NALユニットは、ビデオパラメータセット、シーケンスパラメータセット、ピクチャパラメータセット、コード化スライス、補足エンハンスメント情報(SEI:supplemental enhancement information)、アクセスユニットデリミタ、フィラーデータ、または別のタイプのデータを表すデータを含み得る。NALユニット中のデータは、様々なシンタックス構造を含み得る。
[0070]ビデオ復号器30は、ビデオ符号化器20によって生成されたビットストリームを受信し得る。ビットストリームは、ビデオ符号化器20によって符号化されたビデオデータのコーディングされた表現を含み得る。ビデオ復号器30がビットストリームを受信すると、ビデオ復号器30は、ビットストリームに対して構文解析動作を実行し得る。ビデオ復号器30が構文解析動作を実行するとき、ビデオ復号器30は、ビットストリームからシンタックス要素を抽出し得る。ビデオ復号器30は、ビットストリームから抽出されたシンタックス要素に基づいて、ビデオデータのピクチャを再構成し得る。シンタックス要素に基づいてビデオデータを再構成するためのプロセスは、一般に、シンタックス要素を生成するためにビデオ符号化器20によって実行されるプロセスの逆であり得る。
[0071]ビデオ復号器30がCUに関連付けられたシンタックス要素を抽出した後、ビデオ復号器30は、シンタックス要素に基づいて、CUのPUのための予測ビデオブロックを生成し得る。さらに、ビデオ復号器30は、CUのTUに関連付けられた変換係数ブロックを逆量子化し得る。ビデオ復号器30は、CUのTUに関連付けられた残差ビデオブロックを再構成するために、変換係数ブロックに対して逆変換を実行し得る。予測ビデオブロックを生成し、残差ビデオブロックを再構成した後、ビデオ復号器30は、予測ビデオブロックおよび残差ビデオブロックに基づいて、CUのビデオブロックを再構成し得る。このようにして、ビデオ復号器30は、ビットストリーム中のシンタックス要素に基づいて、CUのビデオブロックを再構成し得る。

ビデオ符号化器
[0072]図2Aは、本開示で説明する態様による技法を実装し得るビデオ符号化器の一例を示すブロック図である。ビデオ符号化器20は、HEVCの場合など、ビデオフレームの単一のレイヤを処理するように構成され得る。さらに、ビデオ符号化器20は、本開示の技法のいずれかまたはすべてを実行するように構成され得る。一例として、予測処理ユニット100は、本開示で説明する技法のいずれかまたはすべてを実行するように構成され得る。別の実施形態では、ビデオ符号化器20は、本開示で説明する技法のいずれかまたはすべてを実行するように構成されたオプションのレイヤ間予測ユニット128を含む。他の実施形態では、レイヤ間予測は、予測処理ユニット100(たとえば、インター予測ユニット121および/またはイントラ予測ユニット126)によって実行され得、その場合、レイヤ間予測ユニット128は省略され得る。しかしながら、本開示の態様はそのように限定されない。いくつかの例では、本開示で説明する技法は、ビデオ符号化器20の様々な構成要素間で共有され得る。いくつかの例では、追加または代替として、プロセッサ(図示せず)が、本開示で説明する技法のいずれかまたはすべてを実行するように構成され得る。
[0073]説明の目的で、本開示は、HEVCコーディングのコンテキストにおいてビデオ符号化器20を説明する。しかしながら、本開示の技法は、他のコーディング規格または方法に適用可能であり得る。図2Aに示す例は、シングルレイヤコーデックのためのものである。しかしながら、図2Bに関してさらに説明するように、ビデオ符号化器20の一部または全部は、マルチレイヤコーデックの処理のために複製され得る。
[0074]ビデオ符号化器20は、ビデオスライス内のビデオブロックのイントラコーディングとインターコーディングとを実行し得る。イントラコーディングは、所与のビデオフレームまたはピクチャ内のビデオの空間的冗長性を低減または除去するために、空間予測に依拠する。インターコーディングは、ビデオシーケンスの隣接するフレーム内またはピクチャ内のビデオの時間的冗長性を低減または除去するために時間予測に依拠する。イントラモード(Iモード)は、いくつかの空間ベースのコーディングモードのいずれかを参照し得る。単方向予測(Pモード)または双方向予測(Bモード)などのインターモードは、いくつかの時間ベースのコーディングモードのいずれかを参照し得る。
[0075]図2Aの例では、ビデオ符号化器20は複数の機能構成要素を含む。ビデオ符号化器20の機能構成要素は、予測処理ユニット100と、残差生成ユニット102と、変換処理ユニット104と、量子化ユニット106と、逆量子化ユニット108と、逆変換ユニット110と、再構成ユニット112と、フィルタユニット113と、復号ピクチャバッファ114と、エントロピー符号化ユニット116とを含む。予測処理ユニット100は、インター予測ユニット121と、動き推定ユニット122と、動き補償ユニット124と、イントラ予測ユニット126と、レイヤ間予測ユニット128とを含む。他の例では、ビデオ符号化器20は、より多いか、より少ないか、または異なる機能構成要素を含み得る。さらに、動き推定ユニット122および動き補償ユニット124は、高度に統合され得るが、図2Aの例では、説明の目的で別々に表されている。
[0076]ビデオ符号化器20は、ビデオデータを受信し得る。ビデオ符号化器20は、様々なソースからビデオデータを受信し得る。たとえば、ビデオ符号化器20は、ビデオソース18(たとえば、図1Aまたは図1Bに示す)または別のソースからビデオデータを受信し得る。ビデオデータは、一連のピクチャを表し得る。ビデオデータを符号化するために、ビデオ符号化器20は、ピクチャの各々に対して符号化演算を実行し得る。ピクチャに対して符号化演算を実行することの一部として、ビデオ符号化器20は、ピクチャの各スライスに対して符号化演算を実行し得る。スライスに対して符号化演算を実行することの一部として、ビデオ符号化器20は、スライス中のツリーブロックに対して符号化演算を実行し得る。
[0077]ツリーブロックに対して符号化演算を実行することの一部として、予測処理ユニット100は、ビデオブロックを徐々により小さいビデオブロックに分割するために、ツリーブロックのビデオブロックに対して4分木区分を実行し得る。より小さいビデオブロックの各々は、異なるCUに関連付けられ得る。たとえば、予測処理ユニット100は、ツリーブロックのビデオブロックを4つの等しいサイズのサブブロックに区分し得、サブブロックのうちの1つまたは複数を4つの等しいサイズのサブサブブロックに区分し得、以下同様である。
[0078]CUに関連付けられたビデオブロックのサイズは、8×8サンプルから、最大で64×64サンプル以上のツリーブロックのサイズにまでわたり得る。本開示では、「N×N」および「N by N」は、垂直方向の寸法および水平方向の寸法に関するビデオブロックのサンプルの寸法、たとえば、16×16サンプルまたは16 by 16サンプルを指すために、互換的に使用され得る。一般に、16×16のビデオブロックは、垂直方向に16個のサンプルを有し(y=16)、水平方向に16個のサンプルを有する(x=16)。同様に、N×Nのブロックは、一般に、垂直方向にN個のサンプルを有し、水平方向にN個のサンプルを有し、ここで、Nは非負整数値を表す。
[0079]さらに、ツリーブロックに対して符号化演算を実行することの一部として、予測処理ユニット100は、ツリーブロック用の階層的な4分木データ構造を生成し得る。たとえば、ツリーブロックは、4分木データ構造のルートノードに対応し得る。予測処理ユニット100がツリーブロックのビデオブロックを4つのサブブロックに区分する場合、ルートノードは、4分木データ構造中に4つの子ノードを有する。子ノードの各々は、サブブロックのうちの1つに関連付けられたCUに対応する。予測処理ユニット100がサブブロックのうちの1つを4つのサブサブブロックに区分する場合、サブブロックに関連付けられたCUに対応するノードは、サブサブブロックのうちの1つに関連付けられたCUに各々が対応する、4つの子ノードを有し得る。
[0080]4分木データ構造の各ノードは、対応するツリーブロックまたはCUのシンタックスデータ(たとえば、シンタックス要素)を含み得る。たとえば、4分木の中のノードは、そのノードに対応するCUのビデオブロックが4つのサブブロックに区分(たとえば、分割)されているかどうかを示すスプリットフラグを含み得る。CUのためのシンタックス要素は、再帰的に定義され得、CUのビデオブロックがサブブロックに分割されているかどうかに依存し得る。ビデオブロックが区分されていないCUは、4分木データ構造におけるリーフノードに対応し得る。コーディングされたツリーブロックは、対応するツリーブロック用の4分木データ構造に基づくデータを含み得る。
[0081]ビデオ符号化器20は、ツリーブロックの区分されていない各CUに対して符号化演算を実行し得る。ビデオ符号化器20が、区分されていないCUに対して符号化演算を実行するとき、ビデオ符号化器20は、区分されていないCUの符号化された表現を表すデータを生成する。
[0082]CUに対して符号化演算を実行することの一部として、予測処理ユニット100は、CUの1つまたは複数のPUの中で、CUのビデオブロックを区分し得る。ビデオ符号化器20およびビデオ復号器30は、様々なPUサイズをサポートし得る。特定のCUのサイズが2N×2Nであると仮定すると、ビデオ符号化器20およびビデオ復号器30は、2N×2NまたはN×NのPUサイズ、および2N×2N、2N×N、N×2N、N×N、2N×nU、nL×2N、nR×2N、または同様の対称PUサイズでのインター予測とをサポートし得る。ビデオ符号化器20およびビデオ復号器30は、2N×nU、2N×nD、nL×2N、およびnR×2NのPUサイズに対する非対称区分もサポートし得る。いくつかの例では、予測処理ユニット100は、CUのビデオブロックの辺に直角に接触しない境界に沿ってCUのPUの間でCUのビデオブロックを区分するように、幾何学的な区分を実行し得る。
[0083]インター予測ユニット121は、CUの各PUに対してインター予測を実行し得る。インター予測は、時間圧縮を実現し得る。PUに対してインター予測を実行するために、動き推定ユニット122は、PUのための動き情報を生成し得る。動き補償ユニット124は、PUベースの動き情報およびCUに関連付けられたピクチャ以外のピクチャ(たとえば、参照ピクチャ)の復号サンプルのための、予測ビデオブロックを生成し得る。本開示では、動き補償ユニット124によって生成される予測ビデオブロックは、インター予測ビデオブロックと呼ばれることがある。
[0084]スライスは、Iスライス、Pスライス、またはBスライスであり得る。動き推定ユニット122および動き補償ユニット124は、PUがIスライス中にあるのか、Pスライス中にあるのか、それともBスライス中にあるのかに応じて、CUのPUのための異なる演算を実行し得る。Iスライス中では、すべてのPUがイントラ予測される。したがって、PUがIスライス中にある場合、動き推定ユニット122および動き補償ユニット124は、PUに対してインター予測を実行しない。
[0085]PUがPスライス中にある場合、PUを含むピクチャは、「リスト0」と呼ばれる参照ピクチャのリストに関連付けられる。リスト0中の参照ピクチャの各々は、他のピクチャのインター予測のために使用され得るサンプルを含む。動き推定ユニット122がPスライス中のPUに関して動き推定演算を実行するとき、動き推定ユニット122は、PUのための参照ブロックについて、リスト0中の参照ピクチャを探索し得る。PUの参照ブロックは、PUのビデオブロック中のサンプルに最も密接に対応するサンプルのセット、たとえば、サンプルのブロックであり得る。動き推定ユニット122は、参照ピクチャ中のサンプルのセットがどの程度密接にPUのビデオブロック中のサンプルに対応するかを決定するために、様々なメトリックを使用し得る。たとえば、動き推定ユニット122は、絶対差分の和(SAD:sum of absolute difference)、2乗差分の和(SSD:sum of square difference)、または他の差分メトリックによって、参照ピクチャ中のサンプルのセットがどの程度密接にPUのビデオブロック中のサンプルに対応するかを決定し得る。
[0086]Pスライス中のPUの参照ブロックを識別した後、動き推定ユニット122は、参照ブロックを含んでいる、リスト0中の参照ピクチャを示す参照インデックスと、PUと参照ブロックとの間の空間変位を示す動きベクトルとを生成し得る。様々な例において、動き推定ユニット122は、動きベクトルを異なる精度に生成し得る。たとえば、動き推定ユニット122は、1/4サンプル精度、1/8サンプル精度、または他の分数のサンプル精度で動きベクトルを生成し得る。分数のサンプル精度の場合、参照ブロック値は、参照ピクチャ中の整数位置のサンプル値から補間され得る。動き推定ユニット122は、PUの動き情報として、参照インデックスと動きベクトルとを出力し得る。動き補償ユニット124は、PUの動き情報によって識別された参照ブロックに基づいて、PUの予測ビデオブロックを生成し得る。
[0087]PUがBスライス中にある場合、PUを含むピクチャは、「リスト0」および「リスト1」と呼ばれる参照ピクチャの2つのリストに関連付けられ得る。いくつかの例では、Bスライスを含むピクチャは、リスト0とリスト1の組合せである、リストの組合せと関連付けられ得る。
[0088]さらに、PUがBスライス中にある場合、動き推定ユニット122は、PUのための単方向予測または双方向予測を実行し得る。動き推定ユニット122がPUのための単方向予測を実行するとき、動き推定ユニット122は、PUのための参照ブロックについて、リスト0またはリスト1の参照ピクチャを探索し得る。動き推定ユニット122は、次いで、参照ブロックを含む、リスト0またはリスト1中の参照ピクチャを示す参照インデックスと、PUと参照ブロックとの間の空間変位を示す動きベクトルとを生成し得る。動き推定ユニット122は、PUの動き情報として、参照インデックスと、予測方向インジケータと、動きベクトルとを出力し得る。予測方向インジケータは、参照インデックスが、リスト0中の参照ピクチャを示すのか、それともリスト1中の参照ピクチャを示すのかを示し得る。動き補償ユニット124は、PUの動き情報によって示された参照ブロックに基づいて、PUの予測ビデオブロックを生成し得る。
[0089]動き推定ユニット122がPUのための双方向予測を実行するとき、動き推定ユニット122は、PUのための参照ブロックについて、リスト0中の参照ピクチャを探索し得、また、PUのための別の参照ブロックについて、リスト1中の参照ピクチャを探索し得る。動き推定ユニット122は、次いで、参照ブロックを含む、リスト0およびリスト1中の参照ピクチャを示す参照インデックスと、参照ブロックとPUとの間の空間変位を示す動きベクトルとを生成し得る。動き推定ユニット122は、PUの動き情報として、PUの参照インデックスと動きベクトルとを出力し得る。動き補償ユニット124は、PUの動き情報によって示された参照ブロックに基づいて、PUの予測ビデオブロックを生成し得る。
[0090]いくつかの事例では、動き推定ユニット122は、PUのための動き情報のフルセットをエントロピー符号化ユニット116に出力しない。そうではなく、動き推定ユニット122は、別のPUの動き情報を参照して、PUの動き情報をシグナリングし得る。たとえば、動き推定ユニット122は、PUの動き情報が、隣接PUの動き情報と十分に類似していると決定し得る。この例では、動き推定ユニット122は、PUに関連付けられたシンタックス構造において、PUが隣接PUと同じ動き情報を有することをビデオ復号器30に示す値を示し得る。別の例では、動き推定ユニット122は、PUに関連付けられたシンタックス構造において、隣接PUと動きベクトル差分(MVD)とを識別し得る。動きベクトル差分は、PUの動きベクトルと、示される隣接PUの動きベクトルとの差分を示す。ビデオ復号器30は、PUの動きベクトルを決定するために、示された隣接PUの動きベクトルと、動きベクトル差分とを使用し得る。第2のPUの動き情報をシグナリングするときに第1のPUの動き情報を参照することによって、ビデオ符号化器20は、より少数のビットを使用して、第2のPUの動き情報をシグナリングすることが可能であり得る。
[0091]図5および図6に関して以下でさらに説明するように、予測処理ユニット100は、図5および図6に示される方法を実行することによってPU(または他の参照レイヤブロックおよび/またはエンハンスメントレイヤブロックまたはビデオユニット)をコーディング(たとえば、符号化または復号)するように構成され得る。たとえば、(たとえば、動き推定ユニット122および/または動き補償ユニット124を介した)インター予測ユニット121、イントラ予測ユニット126、またはレイヤ間予測ユニット128は、一緒にまたは別々に、図5および図6に示される方法を実行するように構成され得る。
[0092]CUに対して符号化演算を実行することの一部として、イントラ予測ユニット126は、CUのPUに対してイントラ予測を実行し得る。イントラ予測は、空間圧縮を実現し得る。イントラ予測ユニット126がPUに対してイントラ予測を実行するとき、イントラ予測ユニット126は、同じピクチャ中の他のPUの復号サンプルに基づいて、PUのための予測データを生成し得る。PUのための予測データは、予測ビデオブロックと様々なシンタックス要素とを含み得る。イントラ予測ユニット126は、Iスライス、Pスライス、およびBスライス中のPUに対してイントラ予測を実行し得る。
[0093]PUに対してイントラ予測を実行するために、イントラ予測ユニット126は、PUのための予測データの複数のセットを生成するために、複数のイントラ予測モードを使用し得る。イントラ予測ユニット126がPUのための予測データのセットを生成するためにイントラ予測モードを使用するとき、イントラ予測ユニット126は、イントラ予測モードと関連する方向および/または勾配で、隣接PUのビデオブロックからPUのビデオブロックにわたってサンプルを延ばし得る。PU、CU、およびツリーブロックについて左から右、上から下の符号化順序を仮定すると、隣接PUは、PUの上、右上、左上、または左にあり得る。イントラ予測ユニット126は、PUのサイズに応じて、様々な数のイントラ予測モード、たとえば、33個の方向性イントラ予測モードを使用し得る。
[0094]予測処理ユニット100は、動き補償ユニット124によってPUのために生成された予測データ、またはイントラ予測ユニット126によってPUのために生成された予測データの中から、PUのための予測データを選択し得る。いくつかの例では、予測処理ユニット100は、予測データのセットのレート/ひずみメトリックに基づいて、PUのための予測データを選択する。
[0095]予測処理ユニット100がイントラ予測ユニット126によって生成された予測データを選択する場合、予測処理ユニット100は、PUのための予測データを生成するために使用されたイントラ予測モード、たとえば、選択されたイントラ予測モードをシグナリングし得る。予測処理ユニット100は、選択されたイントラ予測モードを様々な方法でシグナリングし得る。たとえば、選択されたイントラ予測モードは、隣接PUのイントラ予測モードと同じであることが起こり得る。言い換えれば、隣接PUのイントラ予測モードは、現在PUに対して最確モードであり得る。したがって、予測処理ユニット100は、選択されたイントラ予測モードが隣接PUのイントラ予測モードと同じであることを示すためのシンタックス要素を生成し得る。
[0096]上記で説明したように、ビデオ符号化器20は、レイヤ間予測ユニット128を含み得る。レイヤ間予測ユニット128は、SVCにおいて利用可能である1つまたは複数の異なるレイヤ(たとえば、ベースレイヤまたは参照レイヤ)を使用して、現在ブロック(たとえば、EL中の現在ブロック)を予測するように構成される。そのような予測は、レイヤ間予測と呼ばれることがある。レイヤ間予測ユニット128は、レイヤ間冗長性を低減するための予測方法を利用し、それによって、コーディング効率を改善し、計算リソース要件を低減する。レイヤ間予測のいくつかの例は、レイヤ間イントラ予測と、レイヤ間動き予測と、レイヤ間残差予測とを含む。レイヤ間イントラ予測は、エンハンスメントレイヤ中の現在ブロックを予測するために、ベースレイヤの中でコロケートされているブロックの再構成を使用する。レイヤ間動き予測は、エンハンスメントレイヤ中の動作を予測するために、ベースレイヤの動き情報を使用する。レイヤ間残差予測は、エンハンスメントレイヤの残差を予測するために、ベースレイヤの残差を使用する。レイヤ間予測スキームの各々について、以下でより詳細に説明する。
[0097]予測処理ユニット100がCUのPUのための予測データを選択した後、残差生成ユニット102は、CUのビデオブロックからCUのPUの予測ビデオブロックを差し引くこと(たとえば、マイナス符号によって示される)によって、CUの残差データを生成し得る。CUの残差データは、CUのビデオブロック中のサンプルの異なるサンプル成分に対応する2D残差ビデオブロックを含み得る。たとえば、残差データは、CUのPUの予測ビデオブロック中のサンプルのルミナンス成分と、CUの元のビデオブロック中のサンプルのルミナンス成分との間の差分に対応する、残差ビデオブロックを含み得る。さらに、CUの残差データは、CUのPUの予測ビデオブロック中のサンプルのクロミナンス成分と、CUの元のビデオブロック中のサンプルのクロミナンス成分との間の差分に対応する、残差ビデオブロックを含み得る。
[0098]予測処理ユニット100は、CUの残差ビデオブロックをサブブロックに区分するために、4分木区分を実行し得る。分割されていない各残差ビデオブロックは、CUの異なるTUに関連付けられ得る。CUのTUに関連付けられる残差ビデオブロックのサイズおよび位置は、CUのPUに関連付けられたビデオブロックのサイズおよび位置に基づいてもよく、または基づかなくてもよい。「残差4分木」(RQT)と呼ばれる4分木構造は、残差ビデオブロックの各々に関連付けられたノードを含み得る。CUのTUは、RQTのリーフノードに対応し得る。
[0099]変換処理ユニット104は、TUに関連付けられた残差ビデオブロックに1つまたは複数の変換を適用することによって、CUの各TUのための1つまたは複数の変換係数ブロックを生成し得る。変換係数ブロックの各々は、変換係数の2D行列であり得る。変換処理ユニット104は、TUに関連付けられた残差ビデオブロックに様々な変換を適用し得る。たとえば、変換処理ユニット104は、離散コサイン変換(DCT)、方向変換、または概念的に類似の変換を、TUに関連付けられた残差ビデオブロックに適用し得る。
[00100]変換処理ユニット104が、TUに関連付けられた変換係数ブロックを生成した後、量子化ユニット106は、変換係数ブロック中の変換係数を量子化し得る。量子化ユニット106は、CUに関連付けられたQP値に基づいて、CUのTUに関連付けられた変換係数ブロックを量子化し得る。
[00101]ビデオ符号化器20は、様々な方法でQP値をCUに関連付け得る。たとえば、ビデオ符号化器20は、CUに関連付けられたツリーブロックに対して、レートひずみ分析を実行し得る。レートひずみ分析では、ビデオ符号化器20は、ツリーブロックに対して符号化演算を複数回実行することによって、ツリーブロックの複数のコーディングされた表現を生成し得る。ビデオ符号化器20が、ツリーブロックの異なる符号化表現を生成するとき、ビデオ符号化器20は、異なるQP値をCUに関連付け得る。最小のビットレートおよびひずみメトリックを有するツリーブロックのコーディングされた表現で所与のQP値がCUに関連付けられるとき、ビデオ符号化器20は、所与のQP値がCUに関連付けられることをシグナリングし得る。
[00102]逆量子化ユニット108および逆変換ユニット110は、変換係数ブロックから残差ビデオブロックを再構成するために、それぞれ、逆量子化と逆変換とを変換係数ブロックに適用し得る。再構成ユニット112は、TUに関連付けられた再構成されたビデオブロックを生成するために、再構成された残差ビデオブロックを、予測処理ユニット100によって生成された1つまたは複数の予測ビデオブロックからの対応するサンプルに追加し得る。このようにCUの各TUについてビデオブロックを再構成することによって、ビデオ符号化器20は、CUのビデオブロックを再構成し得る。
[00103]再構成ユニット112がCUのビデオブロックを再構成した後、フィルタユニット113は、CUに関連付けられたビデオブロックにおけるブロッキングアーティファクトを低減するために、デブロッキング演算を実行し得る。1つまたは複数のデブロッキング演算を実行した後、フィルタユニット113は、CUの再構成されたビデオブロックを復号ピクチャバッファ114に記憶し得る。動き推定ユニット122および動き補償ユニット124は、後続のピクチャのPUに対してインター予測を実行するために、再構成されたビデオブロックを含む参照ピクチャを使用し得る。さらに、イントラ予測ユニット126は、CUと同じピクチャ中の他のPUに対してイントラ予測を実行するために、復号ピクチャバッファ114の中の再構成されたビデオブロックを使用し得る。
[00104]エントロピー符号化ユニット116は、ビデオ符号化器20の他の機能構成要素からデータを受信し得る。たとえば、エントロピー符号化ユニット116は、量子化ユニット106から変換係数ブロックを受信し得、予測処理ユニット100からシンタックス要素を受信し得る。エントロピー符号化ユニット116がデータを受信すると、エントロピー符号化ユニット116は、エントロピー符号化データを生成するために、1つまたは複数のエントロピー符号化演算を実行し得る。たとえば、ビデオ符号化器20は、コンテキスト適応型可変長コーディング(CAVLC)演算、CABAC演算、変数間(V2V:variable-to-variable)レングスコーディング演算、シンタックスベースコンテキスト適応型バイナリ算術コーディング(SBAC:syntax-based context-adaptive binary arithmetic coding)演算、確率間隔区分エントロピー(PIPE)コーディング演算、または別のタイプのエントロピー符号化演算をデータに対して実行し得る。エントロピー符号化ユニット116は、エントロピー符号化データを含むビットストリームを出力し得る。
[00105]データに対してエントロピー符号化演算を実行することの一部として、エントロピー符号化ユニット116は、コンテキストモデルを選択し得る。エントロピー符号化ユニット116がCABAC演算を実行している場合、コンテキストモデルは、特定の値を有する特定のビンの確率の推定値を示し得る。CABACのコンテキストでは、「ビン」という用語は、シンタックス要素の2値化されたバージョンのビットを指すために使用される。

マルチレイヤビデオ符号化器
[00106]図2Bは、本開示で説明する態様による技法を実装し得るマルチレイヤビデオ符号化器23の一例を示すブロック図である。ビデオ符号化器23は、SHVCおよびマルチビューコーディングの場合など、マルチレイヤビデオフレームを処理するように構成され得る。さらに、ビデオ符号化器23は、本開示の技法のいずれかまたはすべてを実行するように構成され得る。
[00107]ビデオ符号化器23はビデオ符号化器20Aとビデオ符号化器20Bとを含み、それらの各々はビデオ符号化器20として構成され得、ビデオ符号化器20に関して上記で説明した機能を実行し得る。さらに、参照番号の再利用によって示されるように、ビデオ符号化器20Aおよび20Bは、ビデオ符号化器20としてのシステムおよびサブシステムのうちの少なくともいくつかを含み得る。ビデオ符号化器23は、2つのビデオ符号化器20Aおよび20Bを含むように示されるが、ビデオ符号化器23は、そのように限定されず、任意の数のビデオ符号化器20のレイヤを含み得る。いくつかの実施形態では、ビデオ符号化器23は、アクセスユニット中の各ピクチャまたは各フレームに対してビデオ符号化器20を含み得る。たとえば、5つのピクチャを含むアクセスユニットは、5つの符号化器レイヤを含むビデオ符号化器によって処理または符号化され得る。いくつかの実施形態では、ビデオ符号化器23は、アクセスユニット中のフレームよりも多くの符号化器レイヤを含み得る。いくつかのそのような場合では、ビデオ符号化器のレイヤのうちのいくつかは、いくつかのアクセスユニットを処理するときに非アクティブであり得る。
[00108]ビデオ符号化器20Aおよび20Bに加えて、ビデオ符号化器23は、リサンプリングユニット90を含み得る。リサンプリングユニット90は、場合によっては、たとえば、エンハンスメントレイヤを作成するために、受信されたビデオフレームのベースレイヤをアップサンプリングし得る。リサンプリングユニット90は、フレームの受信されたベースレイヤに関連付けられた特定の情報をアップサンプリングし得るが、他の情報をアップサンプリングしないことがある。たとえば、リサンプリングユニット90は、ベースレイヤの空間サイズまたはピクセルの数をアップサンプリングし得るが、スライスの数またはピクチャ順序カウントは一定のままであり得る。場合によっては、リサンプリングユニット90は、受信されたビデオを処理しないことがあり、および/またはオプションであり得る。たとえば、場合によっては、予測処理ユニット100は、アップサンプリングを実行し得る。いくつかの実施形態では、リサンプリングユニット90は、レイヤをアップサンプリングし、スライス境界ルールおよび/またはラスタスキャンルールのセットに準拠するように、1つまたは複数のスライスを再編成、再定義、修正、または調整するように構成される。アクセスユニット中のベースレイヤまたは下位レイヤをアップサンプリングするものとして主に説明したが、場合によっては、リサンプリングユニット90は、レイヤをダウンサンプリングし得る。たとえば、ビデオのストリーミング中に帯域幅が低減した場合、フレームは、アップサンプリングされるのではなく、ダウンサンプリングされ得る。
[00109]リサンプリングユニット90は、下位レイヤ符号化器(たとえば、ビデオ符号化器20A)の復号ピクチャバッファ114からピクチャまたはフレーム(またはピクチャに関連付けられたピクチャ情報)を受信し、ピクチャ(または受信されたピクチャ情報)をアップサンプリングするように構成され得る。このアップサンプリングされたピクチャは、次いで、下位レイヤ符号化器と同じアクセスユニット中のピクチャを符号化するように構成された、上位レイヤ符号化器(たとえば、ビデオ符号化器20B)の予測処理ユニット100に供給され得る。場合によっては、上位レイヤ符号化器は、下位レイヤ符号化器から除去された1つのレイヤである。他の場合には、図2Bのレイヤ0ビデオ符号化器とレイヤ1符号化器との間に、1つまたは複数の上位レイヤ符号化器があり得る。
[00110]場合によっては、リサンプリングユニット90は、省略またはバイパスされ得る。そのような場合、ビデオ符号化器20Aの復号ピクチャバッファ114からのピクチャは、直接、または少なくともリサンプリングユニット90に供給されずに、ビデオ符号化器20Bの予測処理ユニット100に供給され得る。たとえば、ビデオ符号化器20Bに供給されたビデオデータ、およびビデオ符号化器20Aの復号ピクチャバッファ114からの参照ピクチャが、同じサイズまたは解像度である場合、参照ピクチャは、いかなるリサンプリングも伴わずにビデオ符号化器20Bに供給され得る。
[00111]いくつかの実施形態では、ビデオ符号化器23は、ビデオ符号化器20Aにビデオデータを供給する前に、ダウンサンプリングユニット94を使用して下位レイヤ符号化器に供給されるべきビデオデータをダウンサンプリングする。代替的に、ダウンサンプリングユニット94は、ビデオデータをアップサンプリングまたはダウンサンプリングすることが可能なリサンプリングユニット90であり得る。また他の実施形態では、ダウンサンプリングユニット94は省略され得る。
[00112]図2Bに示すように、ビデオ符号化器23は、マルチプレクサ98、すなわちmuxをさらに含み得る。mux98は、ビデオ符号化器23から合成ビットストリームを出力することができる。合成ビットストリームは、ビデオ符号化器20Aおよび20Bの各々からビットストリームを取ることと、所与の時間において出力されるビットストリームを交替することとによって、作成され得る。場合によっては、2つの(または、3つ以上のビデオ符号化器レイヤの場合には、より多くの)ビットストリームからのビットが一度に1ビットずつ交替され得るが、多くの場合、ビットストリームは別様に合成される。たとえば、出力ビットストリームは、選択されたビットストリームを一度に1ブロックずつ交替することによって作成され得る。別の例では、出力ビットストリームは、ビデオ符号化器20Aおよび20Bの各々から非1:1比のブロックを出力することによって作成され得る。たとえば、2つのブロックは、ビデオ符号化器20Aから出力された各ブロックについてビデオ符号化器20Bから出力され得る。いくつかの実施形態では、mux98からの出力ストリームはプリプログラムされ得る。他の実施形態では、mux98は、ソースモジュール12を含むソースデバイス上のプロセッサからなど、ビデオ符号化器23の外部のシステムから受信された制御信号に基づいて、ビデオ符号化器20A、20Bからのビットストリームを合成し得る。制御信号は、ビデオソース18からのビデオの解像度またはビットレートに基づいて、リンク16の帯域幅に基づいて、ユーザに関連するサブスクリプション(たとえば、有料サブスクリプション対無料サブスクリプション)に基づいて、またはビデオ符号化器23から望まれる解像度出力を決定するための他のファクタに基づいて生成され得る。

ビデオ復号器
[00113]図3Aは、本開示で説明する態様による技法を実装し得るビデオ復号器の一例を示すブロック図である。ビデオ復号器30は、HEVCの場合など、ビデオフレームの単一のレイヤを処理するように構成され得る。さらに、ビデオ復号器30は、本開示の技法のいずれかまたはすべてを実行するように構成され得る。一例として、動き補償ユニット162および/またはイントラ予測ユニット164は、本開示で説明する技法のうちのいずれかまたはすべてを実行するように構成され得る。一実施形態では、ビデオ復号器30は、本開示で説明する技法のいずれかまたはすべてを実行するように構成されたレイヤ間予測ユニット166をオプションとして含み得る。他の実施形態では、レイヤ間予測は、予測処理ユニット152(たとえば、動き補償ユニット162および/またはイントラ予測ユニット164)によって実行され得、その場合、レイヤ間予測ユニット166は省略され得る。しかしながら、本開示の態様はそのように限定されない。いくつかの例では、本開示で説明する技法は、ビデオ復号器30の様々な構成要素の間で共有され得る。いくつかの例では、追加または代替として、プロセッサ(図示せず)が、本開示で説明する技法のいずれかまたはすべてを実行するように構成され得る。
[00114]説明の目的で、本開示は、HEVCコーディングのコンテキストにおいてビデオ復号器30を説明する。しかしながら、本開示の技法は他のコーディング規格または方法に適用可能であり得る。図3Aに示す例は、シングルレイヤコーデックのためのものである。しかしながら、図3Bに関してさらに説明するように、ビデオ復号器30の一部または全部は、マルチレイヤコーデックの処理のために複製され得る。
[00115]図3Aの例では、ビデオ復号器30は複数の機能構成要素を含む。ビデオ復号器30の機能構成要素は、エントロピー復号ユニット150と、予測処理ユニット152と、逆量子化ユニット154と、逆変換ユニット156と、再構成ユニット158と、フィルタユニット159と、復号ピクチャバッファ160とを含む。予測処理ユニット152は、動き補償ユニット162と、イントラ予測ユニット164と、レイヤ間予測ユニット166とを含む。いくつかの例では、ビデオ復号器30は、図2Aのビデオ符号化器20に関して説明された符号化経路とは全般に逆の復号経路を実行し得る。他の例では、ビデオ復号器30は、より多いか、より少ないか、または異なる機能構成要素を含み得る。
[00116]ビデオ復号器30は、符号化ビデオデータを備えるビットストリームを受信し得る。ビットストリームは、複数のシンタックス要素を含み得る。ビデオ復号器30がビットストリームを受信すると、エントロピー復号ユニット150は、ビットストリームに対して構文解析動作を実行し得る。ビットストリームに対して構文解析動作を実行した結果として、エントロピー復号ユニット150は、ビットストリームからシンタックス要素を抽出し得る。構文解析動作を実行することの一部として、エントロピー復号ユニット150は、ビットストリーム中のエントロピー符号化シンタックス要素をエントロピー復号し得る。予測処理ユニット152、逆量子化ユニット154、逆変換ユニット156、再構成ユニット158、およびフィルタユニット159は、ビットストリームから抽出されたシンタックス要素に基づいて、復号ビデオデータを生成する再構成演算を実行し得る。
[00117]上記で説明したように、ビットストリームは、一連のNALユニットを備え得る。ビットストリームのNALユニットは、ビデオパラメータセットNALユニット、シーケンスパラメータセットNALユニット、ピクチャパラメータセットNALユニット、SEI NALユニットなどを含み得る。ビットストリームに対して構文解析動作(parsing operation)を実行することの一部として、エントロピー復号ユニット150は、シーケンスパラメータセットNALユニットからのシーケンスパラメータセット、ピクチャパラメータセットNALユニットからのピクチャパラメータセット、SEI NALユニットからのSEIデータなどを抽出しエントロピー復号する、構文解析動作を実行し得る。
[00118]さらに、ビットストリームのNALユニットは、コード化スライスNALユニットを含み得る。ビットストリームに対して構文解析動作を実行することの一部として、エントロピー復号ユニット150は、コード化スライスNALユニットからコード化スライスを抽出しエントロピー復号する、構文解析動作を実行し得る。コード化スライスの各々は、スライスヘッダとスライスデータとを含み得る。スライスヘッダは、スライスに関するシンタックス要素を含み得る。スライスヘッダ中のシンタックス要素は、スライスを含むピクチャに関連付けられたピクチャパラメータセットを識別するシンタックス要素を含み得る。エントロピー復号ユニット150は、スライスヘッダを復元するために、コード化スライスヘッダ中のシンタックス要素に対してCABAC復号演算などのエントロピー復号演算を実行し得る。
[00119]コード化スライスNALユニットからスライスデータを抽出することの一部として、エントロピー復号ユニット150は、スライスデータ中のコーディングされたCUからシンタックス要素を抽出する構文解析動作を実行し得る。抽出されたシンタックス要素は、変換係数ブロックに関連付けられたシンタックス要素を含み得る。エントロピー復号ユニット150は、次いで、シンタックス要素のうちのいくつかに対してCABAC復号演算を実行し得る。
[00120]エントロピー復号ユニット150が、区分されていないCUに対して構文解析動作を実行した後、ビデオ復号器30は、区分されていないCUに対して再構成演算を実行し得る。区分されていないCUに対して再構成演算を実行するために、ビデオ復号器30は、CUの各TUに対して再構成演算を実行し得る。CUの各TUについて再構成演算を実行することによって、ビデオ復号器30は、CUに関連付けられた残差ビデオブロックを再構成し得る。
[00121]TUに対して再構成演算を実行することの一部として、逆量子化ユニット154は、TUに関連付けられた変換係数ブロックを逆量子化(inverse quantize)、たとえば、逆量子化(de-quantize)し得る。逆量子化ユニット154は、HEVCのために提案された、またはH.264復号規格によって定義された逆量子化処理と同様の方法で、変換係数ブロックを逆量子化し得る。逆量子化ユニット154は、量子化の程度を決定し、同様に、逆量子化ユニット154が適用すべき逆量子化の程度を決定するために、変換係数ブロックのCUに関してビデオ符号化器20によって計算される量子化パラメータQPを使用し得る。
[00122]逆量子化ユニット154が変換係数ブロックを逆量子化した後、逆変換ユニット156は、変換係数ブロックに関連付けられたTUのための残差ビデオブロックを生成し得る。逆変換ユニット156は、TUのための残差ビデオブロックを生成するために、変換係数ブロックに逆変換を適用し得る。たとえば、逆変換ユニット156は、変換係数ブロックに、逆DCT、逆整数変換、逆カルーネンレーベ変換(KLT:Karhunen-Loeve transform)、逆回転変換、逆方向変換、または別の逆変換を適用し得る。いくつかの例では、逆変換ユニット156は、ビデオ符号化器20からのシグナリングに基づいて、変換係数ブロックに適用すべき逆変換を決定し得る。そのような例では、逆変換ユニット156は、変換係数ブロックに関連付けられたツリーブロックの4分木のルートノードにおいてシグナリングされた変換に基づいて、逆変換を決定し得る。他の例では、逆変換ユニット156は、ブロックサイズ、コーディングモードなど、1つまたは複数のコーディング特性から逆変換を推定し得る。いくつかの例では、逆変換ユニット156はカスケード逆変換を適用し得る。
[00123]いくつかの例では、動き補償ユニット162は、補間フィルタに基づく補間を実行することによって、PUの予測ビデオブロックを改良し得る。サブサンプル精度を有する動き補償のために使用されるべき補間フィルタ用の識別子は、シンタックス要素に含まれ得る。動き補償ユニット162は、参照ブロックのサブ整数サンプルについての補間値を計算するために、PUの予測ビデオブロックの生成中にビデオ符号化器20によって使用された同じ補間フィルタを使用し得る。動き補償ユニット162は、受信されたシンタックス情報に従って、ビデオ符号化器20によって使用された補間フィルタを決定し得、予測ビデオブロックを生成するためにその補間フィルタを使用し得る。
[00124]図5および図6に関して以下でさらに説明するように、予測処理ユニット152は、図5および図6に示される方法を実行することによってPU(または他の参照レイヤブロックおよび/またはエンハンスメントレイヤブロックまたはビデオユニット)をコーディング(たとえば、符号化または復号)し得る。たとえば、動き補償ユニット162、イントラ予測ユニット164、またはレイヤ間予測ユニット166は、一緒にまたは別々に、図5および図6に示される方法を実行するように構成され得る。
[00125]PUが、イントラ予測を使用して符号化される場合、イントラ予測ユニット164は、PUのための予測ビデオブロックを生成するためにイントラ予測を実行し得る。たとえば、イントラ予測ユニット164は、ビットストリーム中のシンタックス要素に基づいて、PUのためのイントラ予測モードを決定し得る。ビットストリームは、PUのイントラ予測モードを決定するためにイントラ予測ユニット164が使用し得るシンタックス要素を含み得る。
[00126]いくつかの事例では、イントラ予測ユニット164が現在PUのイントラ予測モードを決定するために別のPUのイントラ予測モードを使用するべきであることを、シンタックス要素が示し得る。たとえば、現在PUのイントラ予測モードが隣接PUのイントラ予測モードと同じであることが起こり得る。言い換えれば、隣接PUのイントラ予測モードは、現在PUに対して最確モードであり得る。したがって、この例では、ビットストリームは、PUのイントラ予測モードが隣接PUのイントラ予測モードと同じであることを示す、小さいシンタックス要素を含み得る。イントラ予測ユニット164は、次いで、空間的に隣接するPUのビデオブロックに基づいてPUのための予測データ(たとえば、予測サンプル)を生成するために、イントラ予測モードを使用し得る。
[00127]上記で説明したように、ビデオ復号器30もレイヤ間予測ユニット166を含み得る。レイヤ間予測ユニット166は、SVCにおいて利用可能である1つまたは複数の異なるレイヤ(たとえば、ベースレイヤまたは参照レイヤ)を使用して、現在ブロック(たとえば、EL中の現在ブロック)を予測するように構成される。そのような予測は、レイヤ間予測と呼ばれることがある。レイヤ間予測ユニット166は、レイヤ間冗長性を低減するための予測方法を利用し、それによって、コーディング効率を改善し、計算リソース要件を低減する。レイヤ間予測のいくつかの例は、レイヤ間イントラ予測と、レイヤ間動き予測と、レイヤ間残差予測とを含む。レイヤ間イントラ予測は、エンハンスメントレイヤ中の現在ブロックを予測するために、ベースレイヤの中でコロケートされているブロックの再構成を使用する。レイヤ間動き予測は、エンハンスメントレイヤ中の動作を予測するために、ベースレイヤの動き情報を使用する。レイヤ間残差予測は、エンハンスメントレイヤの残差を予測するために、ベースレイヤの残差を使用する。レイヤ間予測スキームの各々について、以下でより詳細に説明する。
[00128]再構成ユニット158は、CUのビデオブロックを再構成するために、CUのTUに関連付けられた残差ビデオブロックおよびCUのPUの予測ビデオブロック、たとえば、適用可能なとき、イントラ予測データまたはインター予測データのいずれかを使用し得る。したがって、ビデオ復号器30は、ビットストリーム中のシンタックス要素に基づいて予測ビデオブロックと残差ビデオブロックとを生成し得、予測ビデオブロックと残差ビデオブロックとに基づいてビデオブロックを生成し得る。
[00129]再構成ユニット158がCUのビデオブロックを再構成した後、フィルタユニット159は、CUに関連したブロッキングアーティファクトを低減するためにデブロッキング演算を実行し得る。フィルタユニット159が、CUに関連したブロッキングアーティファクトを低減するためにデブロッキング演算を実行した後、ビデオ復号器30は、CUのビデオブロックを復号ピクチャバッファ160に記憶し得る。復号ピクチャバッファ160は、次の動き補償、イントラ予測、および図1Aまたは図1Bのディスプレイデバイス32などのディスプレイデバイス上での提示のために、参照ピクチャを提供し得る。たとえば、ビデオ復号器30は、復号ピクチャバッファ160の中のビデオブロックに基づいて、他のCUのPUに対して、イントラ予測演算またはインター予測演算を実行し得る。

マルチレイヤ復号器
[00130]図3Bは、本開示で説明する態様による技法を実装し得るマルチレイヤビデオ復号器33の一例を示すブロック図である。ビデオ復号器33は、SHVCおよびマルチビューコーディングの場合など、マルチレイヤビデオフレームを処理するように構成され得る。さらに、ビデオ復号器33は、本開示の技法のいずれかまたはすべてを実行するように構成され得る。
[00131]ビデオ復号器33は、ビデオ復号器30Aとビデオ復号器30Bとを含み、それらの各々はビデオ復号器30として構成され得、ビデオ復号器30に関して上記で説明した機能を実行し得る。さらに、参照番号の再利用によって示されるように、ビデオ復号器30Aおよび30Bは、ビデオ復号器30としてのシステムおよびサブシステムのうちの少なくともいくつかを含み得る。ビデオ復号器33は、2つのビデオ復号器30Aおよび30Bを含むように示されるが、ビデオ復号器33は、そのように限定されず、任意の数のビデオ復号器30のレイヤを含み得る。いくつかの実施形態では、ビデオ復号器33はアクセスユニット中の各ピクチャまたは各フレームに対してビデオ復号器30を含み得る。たとえば、5つのピクチャを含むアクセスユニットは、5つの復号器レイヤを含むビデオ復号器によって処理または復号され得る。いくつかの実施形態では、ビデオ復号器33は、アクセスユニット中のフレームよりも多くの復号器レイヤを含み得る。いくつかのそのような場合では、ビデオ復号器のレイヤのうちのいくつかは、いくつかのアクセスユニットを処理するときに非アクティブであり得る。
[00132]ビデオ復号器30Aおよび30Bに加えて、ビデオ復号器33は、アップサンプリングユニット92を含み得る。いくつかの実施形態では、アップサンプリングユニット92は、フレームまたはアクセスユニットのための参照ピクチャリストに追加されるべきエンハンストレイヤを作成するために、受信されたビデオフレームのベースレイヤをアップサンプリングし得る。このエンハンストレイヤは、復号ピクチャバッファ160に記憶され得る。いくつかの実施形態では、アップサンプリングユニット92は、図2Aのリサンプリングユニット90に関して説明した実施形態の一部または全部を含むことができる。いくつかの実施形態では、アップサンプリングユニット92は、レイヤをアップサンプリングし、スライス境界ルールおよび/またはラスタスキャンルールのセットに準拠するように、1つまたは複数のスライスを再編成、再定義、修正、または調整するように構成される。場合によっては、アップサンプリングユニット92は、受信されたビデオフレームのレイヤをアップサンプリングおよび/またはダウンサンプリングするように構成されたリサンプリングユニットであり得る。
[00133]アップサンプリングユニット92は、下位レイヤ復号器(たとえば、ビデオ復号器30A)の復号ピクチャバッファ160からピクチャまたはフレーム(またはピクチャに関連付けられたピクチャ情報)を受信し、ピクチャ(または受信されたピクチャ情報)をアップサンプリングするように構成され得る。このアップサンプリングされたピクチャは、次いで、下位レイヤ復号器と同じアクセスユニット中のピクチャを復号するように構成された、上位レイヤ復号器(たとえば、ビデオ復号器30B)の予測処理ユニット152に供給され得る。場合によっては、上位レイヤ復号器は、下位レイヤ復号器から除去された1つのレイヤである。他の場合には、図3Bのレイヤ0復号器とレイヤ1復号器との間に、1つまたは複数の上位レイヤ復号器があり得る。
[00134]場合によっては、アップサンプリングユニット92は、省略またはバイパスされ得る。そのような場合、ビデオ復号器30Aの復号ピクチャバッファ160からのピクチャは、直接、または少なくともアップサンプリングユニット92に供給されずに、ビデオ復号器30Bの予測処理ユニット152に供給され得る。たとえば、ビデオ復号器30Bに供給されたビデオデータ、およびビデオ復号器30Aの復号ピクチャバッファ160からの参照ピクチャが、同じサイズまたは解像度である場合、参照ピクチャは、アップサンプリングを伴わずにビデオ復号器30Bに供給され得る。さらに、いくつかの実施形態では、アップサンプリングユニット92は、ビデオ復号器30Aの復号ピクチャバッファ160から受信された参照ピクチャを、アップサンプリングまたはダウンサンプリングするように構成されたリサンプリングユニット90であり得る。
[00135]図3Bに示すように、ビデオ復号器33は、デマルチプレクサ99、すなわちdemuxをさらに含み得る。demux99は、符号化ビデオビットストリームを複数のビットストリームに分割することができ、demux99によって出力された各ビットストリームは、異なるビデオ復号器30Aおよび30Bに供給される。複数のビットストリームは、ビットストリームを受信することによって作成され得、ビデオ復号器30Aおよび30Bの各々は、所与の時間においてビットストリームの一部分を受信する。場合によっては、demux99において受信されるビットストリームからのビットは、ビデオ復号器の各々(たとえば、図3Bの例ではビデオ復号器30Aおよび30B)の間で、一度に1ビットずつ交替され得るが、多くの場合、ビットストリームは別様に分割される。たとえば、ビットストリームは、一度に1ブロックずつビットストリームを受信するビデオ復号器を交替することによって分割され得る。別の例では、ビットストリームは、非1:1比のブロックによって、ビデオ復号器30Aおよび30Bの各々に分割され得る。たとえば、2つのブロックは、ビデオ復号器30Aに供給される各ブロックについてビデオ復号器30Bに供給され得る。いくつかの実施形態では、demux99によるビットストリームの分割は、プリプログラムされ得る。他の実施形態では、demux99は、宛先モジュール14を含む宛先デバイス上のプロセッサからなど、ビデオ復号器33の外部のシステムから受信された制御信号に基づいてビットストリームを分割し得る。制御信号は、入力インターフェース28からのビデオの解像度またはビットレートに基づいて、リンク16の帯域幅に基づいて、ユーザに関連付けられたサブスクリプション(たとえば、有料サブスクリプション対無料サブスクリプション)に基づいて、またはビデオ復号器33によって取得可能な解像度を決定するための他のファクタに基づいて生成され得る。

イントラランダムアクセスポイント(IRAP)ピクチャ
[00136]いくつかのビデオコーディングスキームは、ビットストリームが、ビットストリームの中でそれらのランダムアクセスポイントに先行するいかなるピクチャも復号する必要なく、それらのランダムアクセスポイントのいずれかから始めて復号され得るような、様々なランダムアクセスポイントをビットストリーム全体にわたって提供し得る。そのようなビデオコーディングスキームでは、出力順序においてランダムアクセスポイントに追従するすべてのピクチャ(たとえば、ランダムアクセスポイントを提供するピクチャと同じアクセスユニットの中にあるピクチャを含む)は、ランダムアクセスポイントに先行するいかなるピクチャも使用することなく正しく復号され得る。たとえば、ビットストリームの一部分が送信の間または復号の間に失われても、復号器は、次のランダムアクセスポイントから始めてビットストリームの復号を再開することができる。ランダムアクセスのサポートは、たとえば、動的なストリーミングサービス、シーク動作、チャネル切替えなどを容易にし得る。
[00137]いくつかのコーディングスキームでは、そのようなランダムアクセスポイントは、イントラランダムアクセスポイント(IRAP)ピクチャと呼ばれるピクチャによって提供され得る。たとえば、layerBの中にあり復号順序においてauAに先行するアクセスユニット(「auB」)の中に含まれるランダムアクセスポイント(または、auAの中に含まれるランダムアクセスポイント)を有するlayerAの各参照レイヤ(「layerB」)(たとえば、layerAを予測するために使用されるレイヤである参照レイヤ)に関して出力順序においてauBに追従するlayerAの中のピクチャ(auBの中に位置するそれらのピクチャを含む)が、auBに先行するlayerAの中のいかなるピクチャも復号する必要なく正しく復号可能であるように、アクセスユニット(「auA」)の中に含まれるエンハンスメントレイヤ(「layerA」)の中のランダムアクセスポイント(たとえば、エンハンスメントレイヤIRAPピクチャによって提供される)は、レイヤ特有のランダムアクセスを提供し得る。
[00138]IRAPピクチャは、イントラ予測(たとえば、他のピクチャを参照することなくコーディングされる)および/またはレイヤ間予測を使用してコーディングされ得、たとえば、瞬時復号器リフレッシュ(IDR:instantaneous decoder refresh)ピクチャと、クリーンランダムアクセス(CRA:clean random access)ピクチャと、ブロークンリンクアクセス(BLA:broken link access)ピクチャとを含み得る。ビットストリームの中にIDRピクチャがあるとき、復号順序においてIDRピクチャに先行するすべてのピクチャは、IDRピクチャに追従するピクチャによる予測のために使用されない。ビットストリームの中にCRAピクチャがあるとき、CRAピクチャに追従するピクチャは、復号順序においてCRAピクチャに先行するピクチャを予測のために使用してよく、または使用しなくてもよい。復号順序においてCRAピクチャに追従するが、復号順序においてCRAピクチャに先行するピクチャを使用するピクチャは、ランダムアクセススキップドリーディング(RASL:random access skipped leading)ピクチャと呼ばれることがある。復号順序においてIRAPピクチャに追従するとともに出力順序においてそれに先行することができる別のタイプのピクチャは、復号順序においてIRAPピクチャに先行するいかなるピクチャへの参照も含まないことがあるランダムアクセス復号可能リーディング(RADL:random access decodable leading)ピクチャである。CRAピクチャに先行するピクチャが利用可能でない場合、RASLピクチャは復号器によって廃棄されてよい。BLAピクチャは、(たとえば、2つのビットストリームが互いに接合され、BLAピクチャが復号順序において第2のビットストリームの最初のピクチャであるので)BLAピクチャに先行するピクチャが復号器にとって利用可能でない場合があることを、復号器に示す。IRAPピクチャであるベースレイヤのピクチャ(たとえば、0としてのレイヤIDを有する)を含むアクセスユニット(たとえば、複数のレイヤにわたって同じ出力時間に関連付けられたすべてのコード化ピクチャからなるピクチャのグループ)は、IRAPアクセスユニット
と呼ばれることがある。

IRAPピクチャのクロスレイヤアライメント
[00139]SVCでは、IRAPピクチャは、異なるレイヤにわたってアラインされる(たとえば、同じアクセスユニットに含まれる)ように要求されなくてよい。たとえば、IRAPピクチャがアラインされるように要求されるのであれば、少なくとも1つのIRAPピクチャを含むいかなるアクセスユニットもIRAPピクチャのみを含むはずである。一方、IRAPピクチャがアラインされるよう要求されないのであれば、単一のアクセスユニットの中で、1つのピクチャ(たとえば、第1のレイヤの中の)がIRAPピクチャであってよく、別のピクチャ(たとえば、第2のレイヤの中の)が非IRAPピクチャであってよい。ビットストリームの中にそのようなアラインされないIRAPピクチャを有することは、いくつかの利点をもたらすことがある。たとえば、2レイヤビットストリームの中で、エンハンスメントレイヤの中よりも多くのIRAPピクチャがベースレイヤの中にある場合、ブロードキャストおよびマルチキャストの適用例において、小さい同調遅延および高いコーディング効率が達成され得る。
[00140]いくつかのビデオコーディングスキームでは、ピクチャ順序カウント(POC:picture order count)が、復号ピクチャが表示される相対的な順序を追跡するために使用され得る。そのようなコーディングスキームのうちのいくつかは、いくつかのタイプのピクチャがビットストリームの中に出現するときはいつでも、POC値をリセット(たとえば、0またはビットストリームの中でシグナリングされたいくつかの値に)させ得る。たとえば、ある種のIRAPピクチャのPOC値がリセットされてよく、復号順序においてそれらのIRAPピクチャに先行する他のピクチャのPOC値もリセットさせる。IRAPピクチャが異なるレイヤにわたってアラインされるように要求されないとき、このことが問題となり得る。たとえば、あるピクチャ(「picA」)がIRAPピクチャであり同じアクセスユニットの中の別のピクチャ(「picB」)がIRAPピクチャでないとき、picAがIRAPピクチャであることに起因してリセットされる、picAを含むレイヤの中のピクチャ(「picC」)のPOC値は、picBを含むレイヤの中のリセットされないピクチャ(「picD」)のPOC値と異なることがあり、ここで、picCおよびpicDは同じアクセスユニットの中にある。このことは、それらが同じアクセスユニット(たとえば、同じ出力時間)に属していても、picCおよびpicDが異なるPOC値を有することを引き起こす。したがって、この例では、picCおよびpicDのPOC値を導出するための導出プロセスは、POC値およびアクセスユニットの定義と一致するPOC値を生成するように修正され得る。

レイヤ初期化ピクチャ(LIP)
[00141]いくつかのコーディングスキームでは、レイヤ初期化ピクチャ(「LIPピクチャ」)は、1に設定されたNoRaslOutputFlagフラグ(たとえば、1に設定される場合はRASLピクチャが出力されないことを示し、0に設定される場合はRASLピクチャが出力されることを示すフラグ)を有するIRAPピクチャであるピクチャ、またはベースレイヤのピクチャ(たとえば、ビットストリームの中で定義される0としてのレイヤIDまたは最小のレイヤIDを有するピクチャ)が1に設定されたNoRaslOutputFlagをその中に有するIRAPアクセスユニットである初期IRAPアクセスユニットが含まれるピクチャとして定義され得る。
[00142]いくつかの実施形態では、SPSは、各LIPピクチャにおいてアクティベートされ得る。たとえば、1に設定されたNoRaslOutputFlagフラグを有する各IRAPピクチャ、または初期IRAPアクセスユニットの中に含まれる各ピクチャ、前にアクティベートされたSPSと異なってよい(たとえば、異なるピクチャ解像度を規定するなど)新しいSPS。しかしながら、LIPピクチャがIRAPピクチャ(たとえば、初期IRAPアクセスユニットの中に含まれる任意のピクチャ)でなく、初期IRAPアクセスユニットの中のベースレイヤのピクチャが0に設定されたフラグNoClrasOutputFlagフラグ(たとえば、1に設定される場合はクロスレイヤランダムアクセススキップピクチャが出力されないことを示し、0に設定される場合はクロスレイヤランダムアクセススキップピクチャが出力されることを示すフラグ)を有するIDRピクチャである場合では、LIPピクチャが新しいSPSをアクティベートさせることを許容するべきでない。そのような場合では、そのようなLIPピクチャにおいて新しいSPSがアクティベートされる場合、詳細には、新しいSPSのSPS RBSPのコンテンツが初期IRAPアクセスユニットの前にあらかじめアクティブであったSPSのコンテンツと異なるとき、異なるピクチャ解像度および誤り耐性において問題となることがある。たとえば、新しいSPSは、解像度を更新し、異なるサイズのピクチャを参照するための時間予測を使用することがある。

ピクチャのバンピングおよびフラッシング
[00143]復号されるピクチャは、(たとえば、それらが表示され得、または他のピクチャを予測するために使用され得るように)復号ピクチャバッファ(DPB)に記憶される。出力されるべきピクチャは、「出力用に必要とされる」としてマークされてよく、他のピクチャを予測するために使用されるべきピクチャは、「参照用に使用される」としてマークされてよい。「出力用に必要とされる」としても「参照用に使用される」としてもマークされない復号ピクチャ(たとえば、最初に「参照用に使用される」または「出力用に必要とされる」としてマークされたが、その後、「参照用に使用されない」または「出力用に必要とされない」としてマークされたピクチャ)は、それらが復号プロセスによって除去されるまでDPBの中に存在し得る。出力順序適合の復号器では、ピクチャをDPBから除去するプロセスが、しばしば、「出力用に必要とされる」としてマークされているピクチャの出力の直後にくる。出力およびその後の除去のプロセスは、「バンピング」と呼ばれることがある。
[00144]これらのピクチャが「出力用に必要とされる」としてマークされていることがあっても、復号器がDPBの中のピクチャを出力することなく除去し得る状況もある。本明細書での説明を簡単にするために、IRAPピクチャを復号する時間においてDPBの中に存在する復号ピクチャは、(復号ピクチャが「出力用に必要とされる」または「参照用に使用される」としてマークされているかどうかにかかわらず)IRAPピクチャに関連付けられた「遅れDPBピクチャ」、またはIRAPピクチャの「関連遅れDPBピクチャ」と呼ばれる。そのような状況のいくつかの例が、HEVCのコンテキストにおいて以下に説明される。
[00145]一例では、「1」としての値に等しいNoRaslOutputFlagを有するCRAピクチャがビットストリームの中間に存在するとき(たとえば、ビットストリームの中の最初のピクチャでない)、CRAピクチャに関連付けられた遅れDPBピクチャは、出力されないことになり、DPBから除去されることになる。2つのビットストリームが互いに接合され、後者のビットストリームの最初のピクチャが「1」としての値に等しいNoRaslOutputFlagを有するCRAピクチャである接合ポイントにおいて、そのような状況が起こる可能性が高い。別の例では、「1」としての値に等しいNoRaslOutputFlagを有するとともにCRAピクチャでない(たとえば、IDRピクチャ)IRAPピクチャpicAがビットストリームの中間に存在し、ピクチャの解像度がpicAにおいて変化するとき(たとえば、新しいSPSのアクティベートを伴って)、関連遅れDPBピクチャがDPBを占有し続ける場合、picAから始まるピクチャの復号が、たとえば、バッファオーバーフローに起因して問題となり得るので、picAの関連遅れDPBピクチャは、それらが出力され得る前にDPBから除去されてよい。この場合では、picAに関連付けられたno_output_of_prior_pics_flag(たとえば、1に設定される場合は前に復号されDPBに記憶されたピクチャが出力されることなくDPBから除去されるべきであることを示し、0に設定される場合は前に復号されDPBに記憶されたピクチャが出力されることなくDPBから除去されるべきでないことを示すフラグ)の値は、符号化器またはスプライサによって「1」としての値に等しく設定されるべきであり、または、NoOutputOfPriorPicsFlag(たとえば、ビットストリームの中に含まれる情報に基づいて決定され得る導出値)は、遅れピクチャをDPBの外へ出力することなくフラッシングするように、復号器によって「1」としての値に等しいものとして導出されてよい。接合動作が、図4に関して以下でさらに説明される。
[00146]関連遅れDPBピクチャを出力することなくDPBから除去するこのプロセスは、「フラッシング」と呼ばれることがある。上述されない状況においても、復号器がIRAPピクチャの関連DPB遅れピクチャをフラッシングするように、IRAPピクチャは、no_output_of_prior_pics_flagの値を「1」としての値に等しく規定してよい。

接合ポイントを含むビットストリーム
[00147]図4を参照すると、接合ポイントを有する例示的なビットストリームが記載される。図4は、接合するビットストリーム410および420によって作り出されたマルチレイヤビットストリーム400を示す。ビットストリーム410は、エンハンスメントレイヤ(EL)410Aとベースレイヤ(BL)410Bとを含み、ビットストリーム420は、EL420AとBL420Bとを含む。EL410AはELピクチャ412Aを含み、BL410BはBLピクチャ412Bを含む。EL420Aは、ELピクチャ422A、424A、および426Aを含み、BL420Bは、BLピクチャ422B、424B、および426Bを含む。マルチレイヤビットストリーム400は、アクセスユニット(AU)430〜460をさらに含む。AU430は、ELピクチャ412AとBLピクチャ412Bとを含み、AU440は、ELピクチャ422AとBLピクチャ422Bとを含み、AU450は、ELピクチャ424AとBLピクチャ424Bとを含み、AU460は、ELピクチャ426AとBLピクチャ426Bとを含む。図4の例では、BLピクチャ422BはIRAPピクチャであり、AU440の中の対応するELピクチャ422Aは、末尾のピクチャ(たとえば、非IRAPピクチャ)であり、したがって、AU440はアラインされないIRAP AUである。また、AU440が接合ポイント470の直後にくるアクセスユニットであることに留意されたい。
[00148]図4の例は2つの異なるビットストリームが互いに接合される場合を示すが、いくつかの実施形態では、ビットストリームの一部分が除去されるときに接合ポイントが存在することがある。たとえば、ビットストリームは部分A、B、およびCを有し得、部分Bは部分AとCとの間にある。部分Bがビットストリームから除去される場合、残りの部分AおよびCは互いに接合され得、それらが互いに接合される点は接合ポイントと呼ばれることがある。より一般に、本出願で説明されるような接合ポイントは、1つまたは複数のシグナリングまたは導出されたパラメータまたはフラグが所定の値を有するとき、存在するとみなされてよい。たとえば、接合ポイントが特定のロケーションにおいて存在するという特定のインジケーションを受信しなければ、復号器は、フラグ(たとえば、NoClrasOutputFlag)の値を決定し得、フラグの値に基づいて本出願に記載される1つまたは複数の技法を実行し得る。

マルチレイヤのコンテキストにおけるピクチャのフラッシング
[00149]ピクチャをフラッシングするプロセスは、マルチレイヤビットストリームにおいても関連する。より具体的には、それは初期IRAPアクセスユニットに属するすべてのピクチャと関連し、初期IRAPアクセスユニットの中にないIRAPピクチャとも関連する。上述されたように、SHVCおよびMV−HEVCなどのいくつかの既存の実装形態では、IRAPアクセスユニットは、「0」としての値に等しいnuh_layer_idを有するIRAPピクチャを含むアクセスユニットとして定義され得(アクセスユニットの中の他のピクチャがIRAPピクチャであるかどうかにかかわらず)、初期IRAPアクセスユニットは、「0」としての値に等しいnuh_layer_idを有するとともに「1」としての値に等しいNoRaslOutputFlagを有するIRAPピクチャを含むアクセスユニットとして定義され得る(再び、アクセスユニットの中の他のピクチャがIRAPピクチャであるかどうかにかかわらず)。
[00150]SHVCおよびMV−HEVCにおいて、アラインされないIRAPピクチャをアクセスユニットの中に有する可能性(たとえば、アクセスユニットはIRAPピクチャと非IRAPピクチャの両方を含み得る)を伴うと、HEVCのコンテキストにおいて前のセクションで説明した状況は、SHVC/MV−HEVCビットストリームの異なるレイヤにおいて起こり得る。たとえば、「1」としての値に等しいNoRaslOutputFlagを有するCRAピクチャpicAは、エンハンスメントレイヤにおいてpicAと同じレイヤの中にCRAピクチャを有していない初期IRAPアクセスユニットを用いて開始するビットストリームの中間に(たとえば、ビットストリームの第1のアクセスユニットの中でない)存在し得る。また、ピクチャの解像度変更は、ベースレイヤの解像度が変化しないアクセスユニットにおけるエンハンスメントレイヤの中で、またはその逆に、IRAPピクチャにおいて発生し得る。類似の状況が、異なるDPBサイズに対して起こり得る。

SVCおよびMVCにおけるピクチャのフラッシング
[00151]SVCの単一ループコーディング設計に起因して、いわゆる中粒度スケーラビリティ(MGS)が使用される場合を除いて、アクセスユニットあたり1つの再構成ピクチャのみがDPBの中に挿入される(その場合では、DPBに記憶されるいわゆるキーピクチャアクセスユニットからの2つの復号ピクチャが存在し得る)。しかしながら、各アクセスユニットの中で、最上位レイヤの復号ピクチャのみが出力され得る。DPBを管理するための動作は、ピクチャのフラッシングを含み、したがって、主にベースレイヤの復号ピクチャはエンハンスメントレイヤを予測するためにDPBの中に存在することが必要とされないので、最上位レイヤの中のピクチャのみに関係する。
[00152]MVCでは、1つを越えるビューがターゲット出力ビューであり得、それらが同じレイヤの中のビューコンポーネントを予測するために必要とされなくても、他のレイヤの中のビューコンポーネントを予測するために維持される必要がある復号ビューコンポーネントであり得る。したがって、1つを越えるビューからのビューコンポーネントが、DPBの中に存在し得る。フラグno_output_of_prior_pics_flagが、各IDRビューコンポーネントに対してシグナリングされ(たとえば、非ベースビューのIDRビューコンポーネントが「0」としての値に等しいnon_idr_flagを用いてシグナリングされる)、ビューコンポーネントのフラッシングは、レイヤ特有(またはビュー特有)である。MVCでは、簡単のため、MVCにおけるアクセスユニットの中のIDRビューコンポーネントはアラインされる。たとえば、アクセスユニットの中のあるビューコンポーネントがIDRビューコンポーネントである場合、そのアクセスユニットの中のすべてのビューコンポーネントもIDRビューコンポーネントである。したがって、フラッシング動作はまた、動作がビュー/レイヤ特有であり得ても、ビットストリームの中のすべてのビューにわたって実行される。

SHVCおよびMV−HEVCにおけるピクチャのフラッシング
[00153]フラッシングがSHVCおよびMV−HEVCにおける現在の設計のもとで発生すると、DPBの中のすべてのピクチャは、出力(たとえば、表示)されることなく除去される。ビットストリームの中の1つのレイヤのみのピクチャがフラッシングされることは可能でなく(ベースレイヤのみがビットストリームの中に存在するときの自明な場合を除いて)、したがって、フラッシングはレイヤ特有でない。

出力タイミング適合
[00154]いくつかの実装形態では(たとえば、SHVC、MV−HEVCなど)、出力タイミング適合に関して、ピクチャのDPBからの出力および除去は、以下に説明されるように実行される。フラッシングプロセスと関連する部分は、《イタリック体》(《》内はイタリック体である)で示される。以下の例では、呼び出されるピクチャの除去は、HEVC規格のセクションF.13.3.2に規定されるように各レイヤに特有である。

C.3.2 ピクチャのDPBからの除去
現在のピクチャの復号の前の(ただし、現在のピクチャの第1のスライスのスライスヘッダをパースした後の)、ピクチャのDPBからの除去は、アクセスユニットn(現在のピクチャを含む)の第1の復号ユニットのCPB除去時間において瞬時に起こり、次のように進む。
− サブクローズ8.3.2で規定されるようなRPSのための復号プロセスが呼び出される。
− 《現在のピクチャが1に等しいNoRaslOutputFlagを有しピクチャ0でないIRAPピクチャであるとき、以下の順序付けられたステップが適用される。
1.変数NoOutputOfPriorPicsFlagが、テスト対象の復号器に対して次のように導出される。
− 現在のピクチャがCRAピクチャである場合、NoOutputOfPriorPicsFlagは1に等しく設定される(no_output_of_prior_pics_flagの値にかかわらず)。
− そうでない場合、アクティブなSPSから導出されるpic_width_in_luma_samples、pic_height_in_luma_samples、またはsps_max_dec_pic_buffering_minus1[HighestTid]の値が、先行するピクチャに対してアクティブなSPSからそれぞれ導出されるpic_width_in_luma_samples、pic_height_in_luma_samples、またはsps_max_dec_pic_buffering_minus1[HighestTid]の値と異なる場合、NoOutputOfPriorPicsFlagは、no_output_of_prior_pics_flagの値にかかわらず、テスト対象の復号器によって1に設定されてよい(ただし、設定されるべきでない)。
注− これらの条件下ではNoOutputOfPriorPicsFlagをno_output_of_prior_pics_flagに等しく設定することが好ましいが、テスト対象の復号器は、この場合にはNoOutputOfPriorPicsFlagを1に設定することが許容される。
− そうでない場合、NoOutputOfPriorPicsFlagは、no_output_of_prior_pics_flagに等しく設定される。
2.NoOutputOfPriorPicsFlagの値が1に等しいとき、DPBの中のすべてのピクチャ記憶バッファが、それらが含んでいるピクチャを出力することなく空にされるように、テスト対象の復号器に対して導出されるNoOutputOfPriorPicsFlagの値がHRDに対して適用され、DPBフルネスは0に等しく設定される。》(《》内はイタリック体である)
− 以下の条件の両方がDPBの中の任意のピクチャkに対して真であるとき、DPBの中のすべてのそのようなピクチャkはDPBから除去される。
− ピクチャkが、「参照用に使用されない」としてマークされている。
− ピクチャkが、0に等しいPicOutputFlagを有するか、またはそれのDPB出力時間が現在のピクチャnの第1の復号ユニット(復号ユニットmとして示す)のCPB除去時間以下である、すなわち、DpbOutputTime[k]がCpbRemovalTime(m)以下である。
− DPBから除去される各ピクチャに対して、DPBフルネスは1だけデクリメントされる。
F.13.3.2 ピクチャのDPBからの除去
サブクローズC.3.2における仕様は、nuh_layer_idとしての特定の値を有する復号ピクチャの各セットに対して、以下の修正とともに別個に適用される。
− 「現在のピクチャの復号の前の(ただし、現在のピクチャの第1のスライスのスライスヘッダをパースした後の)、ピクチャのDPBからの除去は、アクセスユニットn(現在のピクチャを含む)の第1の復号ユニットのCPB除去時間において瞬時に起こり、次のように進む。」を、「現在のピクチャの復号の前の(ただし、現在のピクチャの第1のスライスのスライスヘッダをパースした後の)、ピクチャのDPBからの除去は、ピクチャnの第1の復号ユニットのCPB除去時間において瞬時に起こり、次のように進む。」に置き換える。

出力順序適合
[00155]いくつかの実装形態では(たとえば、SHVC、MV−HEVCなど)、出力順序適合に関して、ピクチャのDPBからの出力および除去は、以下に説明されるように実行される。フラッシングプロセスと関連する部分は、《イタリック体》(《》内はイタリック体である)で示される。以下の例では、ピクチャの除去は、呼び出されたとき、すべてのレイヤに対して実行される。

F.13.5.2.2 ピクチャのDPBからの出力および除去
現在のピクチャの復号の前の(ただし、現在のピクチャの第1のスライスのスライスヘッダをパースした後の)、ピクチャのDPBからの出力および除去は、現在のピクチャの第1の復号ユニットがCPBから除去されたときに瞬時に起こり、次のように進む。
サブクローズF.8.3.2で規定されるようなRPSのための復号プロセスが呼び出される。
− 《現在のピクチャが1に等しいNoRaslOutputFlagを有し、0に等しいnuh_layer_idを有し、ピクチャ0でないIRAPピクチャである場合、以下の順序付けられたステップが適用される。
1.変数NoOutputOfPriorPicsFlagが、テスト対象の復号器に対して次のように導出される。
− 現在のピクチャがCRAピクチャである場合、NoOutputOfPriorPicsFlagは1に等しく設定される(no_output_of_prior_pics_flagの値にかかわらず)。
− そうでない場合、アクティブなSPSから導出されるpic_width_in_luma_samples、pic_height_in_luma_samples、またはsps_max_dec_pic_buffering_minus1[HighestTid]の値が、先行するピクチャに対してアクティブなSPSからそれぞれ導出されるpic_width_in_luma_samples、pic_height_in_luma_samples、またはsps_max_dec_pic_buffering_minus1[HighestTid]の値と異なる場合、NoOutputOfPriorPicsFlagは、no_output_of_prior_pics_flagの値にかかわらず、テスト対象の復号器によって1に設定されてよい(ただし、設定されるべきでない)。
注− これらの条件下ではNoOutputOfPriorPicsFlagをno_output_of_prior_pics_flagに等しく設定することが好ましいが、テスト対象の復号器は、この場合にはNoOutputOfPriorPicsFlagを1に設定することが許容される。
− そうでない場合、NoOutputOfPriorPicsFlagは、no_output_of_prior_pics_flagに等しく設定される。
2.テスト対象の復号器に対して導出されるNoOutputOfPriorPicsFlagの値が次のようにHRDに対して適用される。
− NoOutputOfPriorPicsFlagが1に等しい場合、DPBの中のすべてのピクチャ記憶バッファはそれらが含んでいるピクチャを出力することなく空にされ、DPBフルネスは0に等しく設定される。
− そうでない場合(NoOutputOfPriorPicsFlagが0に等しい)、「出力用に必要とされない」および「参照用に使用されない」としてマークされているピクチャを含むすべてのピクチャ記憶バッファは空にされ(出力せずに)、DPBの中のすべての空でないピクチャ記憶バッファは、サブクローズF.13.5.2.4で規定される「バンピング」プロセスを繰り返し呼び出すことによって空にされ、DPBフルネスは0に等しく設定される。》(《》内はイタリック体である)
− そうでない場合(現在のピクチャが、1に等しいNoRaslOutputFlagを有するか、または0に等しくないnuh_layer_idを有するIRAPピクチャでない)、「出力用に必要とされない」および「参照用に使用されない」としてマークされているピクチャを含むすべてのピクチャ記憶バッファは空にされる(出力せずに)。空にされた各ピクチャ記憶バッファに対して、DPBフルネスは1だけデクリメントされる。変数currLayerIdは現在の復号ピクチャのnuh_layer_idに等しく設定され、以下の条件のうちの1つまたは複数が真であるとき、空にされた各追加のピクチャ記憶バッファに対してDPBフルネスを1だけさらにデクリメントしながら、以下の条件のいずれも真でなくなるまでサブクローズF.13.5.2.4で規定される「バンピング」プロセスが繰り返し呼び出される。
− 「出力用に必要とされる」としてマークされているDPBの中のcurrLayerIdに等しいnuh_layer_idを有するピクチャの数は、アクティブなSPSからの(currLayerIdが0に等しいとき)またはcurrLayerIdの値に対してアクティブなレイヤのSPSからの(currLayerIdが0に等しくないとき)sps_max_num_reorder_pics[HighestTid]よりも大きい。
− アクティブなSPS(currLayerIdが0に等しいとき)またはcurrLayerIdの値に対してアクティブなレイヤのSPSのsps_max_latency_increase_plus1[HighestTid]は0に等しくなく、それに対して関連した変数PicLatencyCount[currLayerId]が、アクティブなSPSから(currLayerIdが0に等しいとき)またはcurrLayerIdの値に対してアクティブなレイヤのSPSから導出されるSpsMaxLatencyPictures[HighestTid]以上である「出力用に必要とされる」としてマークされているDPBの中のcurrLayerIdに等しいnuh_layer_idを有する少なくとも1つのピクチャが存在する。
− DPBの中のcurrLayerIdに等しいnuh_layer_idを有するピクチャの数は、アクティブなSPSからの(currLayerIdが0に等しいとき)またはcurrLayerIdの値に対してアクティブなレイヤのSPSからのsps_max_dec_pic_buffering_minus1[HighestTid]+1以上である。

出力タイミング適合および出力順序適合の比較
[00156]上述されたように、出力タイミング適合および出力順序適合は、ともに同じフラッシングの挙動をもたらさないことがある。たとえば、出力タイミング適合復号器に関して、フラッシングは、ビットストリームの中のレイヤの最初のピクチャでなく「1」としての値に等しいNoRaslOutputFlagを有する、レイヤの中の各ピクチャに対して呼び出される。フラッシングが呼び出されると、DPBの中のそのレイヤのすべての復号ピクチャがフラッシングされる。一方、出力順序適合復号器に関して、フラッシングは、ビットストリームの中の最初のピクチャでなく「1」としての値に等しいNoRaslOutputFlagを有する、ベースレイヤの中のピクチャのみに対して呼び出される。フラッシングが呼び出されると、DPBの中のすべてのレイヤのすべての復号ピクチャがフラッシングされる。
[00157]2つのレイヤを有するビットストリームでは、IRAPピクチャでありIRAP AUに属さない、ELの中のLIPピクチャが異なる解像度をアクティベートさせ、BLピクチャが非IRAP AU(たとえば、IRAPピクチャでない)の中にあることに起因してBLの解像度がこのAUにおいて変更できないとき、ピクチャのレイヤ特有のフラッシングが望まれることがある。ここで、ELからのピクチャのみがフラッシングされるべきであり、BLからのピクチャはフラッシングされるべきでない。この機能は、出力順序適合に対して利用可能でない。
[00158]2つのレイヤを有するビットストリームでは、アクセスユニットが、IDRピクチャであるBLピクチャと、非IRAPピクチャであるELピクチャとを含む場合において、BLピクチャの解像度はそのアクセスユニットにおいて更新され得るが、ELピクチャの解像度は更新されない。そのような場合では、フラッシングはBLからのピクチャのみに対して実行されるべきであり、ELピクチャはフラッシングされるべきでない。この機能は、出力順序適合に対して利用可能でない。

出力タイミング適合および出力順序適合のSPSアクティベーション
[00159]「0」としての値に等しいnuh_layer_idを有するSPSが、1つを越えるレイヤを有するビットストリームの中の、「0」としての値に等しいnuh_layer_idを有する最後のVCL NALユニットの後のアクセスユニットの中に存在し、復号順序において追従するアクセスユニットがアクセスユニットデリミタ(たとえば、0よりも大きいnuh_layer_id値を有するさらなるVCL NALユニットがビットストリームの中に存在することを示す)を有するとき、BLのみを含む出力レイヤセットを用いて抽出されるビットストリームは、非適合であり得る。たとえば、抽出されるビットストリームは、それのVCL NALユニットのすべての後にSPS NALユニットを含み得る。そのようなSPS NALユニットは、未結合SPSと呼ばれることがある。復号器は、通常、SPS NALユニットを処理した後、ビットストリームの中で追従するべきさらなるVCL NALユニットを処理することを予期する。したがって、いくつかのコーディングスキームでは、そのような未結合SPSは、非適合なビットストリームをもたらすことがある。

例示的な実施形態
[00160]上述されたいくつかの問題に対処するために使用され得るいくつかの方法が、以下に説明される。これらの方法のうちのいくつかは独立に適用されてよく、それらのうちのいくつかは組み合わせて適用されてよい。加えて、本明細書で説明される方法のうちの1つまたは複数を実施するために使用され得る例示的なシンタックスおよびセマンティクスも、以下で提供される。本明細書で説明される方法のうちの1つまたは複数を実施するために組み込まれ得る追加と削除とを示すために、HEVC規格のいくつかの部分が転載されるとき、そのような修正は、それぞれ《イタリック体》(《》内はイタリック体である)および取り消し線(下線は取り消し線を表す)で示される。

ピクチャのレイヤ特有フラッシング
[00161]いくつかの実施形態では、ピクチャのフラッシングは、復号器適合の両方のタイプ(たとえば、出力タイミング適合および出力順序適合)に関するレイヤ特有の方式で実行される。フラッシングプロセスは、「1」としての値に等しいNoRaslOutputFlagを有する各IRAPピクチャにおいて、および各LIPピクチャにおいて(たとえば、「1」としての値に等しいNoRaslOutputFlagと、「0」としての値に等しいnuh_layer_idとを有するIRAPピクチャのみにおいて発生する代わりに)発生し得る(または、発生することが可能であり得る)。

前のピクチャの出力を示すフラグのシグナリング
[00162]いくつかの実施形態では、フラグno_output_of_prior_pics_flagは、BLの中のすべてのIRAPピクチャ(たとえば、「0」としての値に等しいnuh_layer_idを有する)に対してシグナリングされ、フラグno_output_of_prior_pics_flagは、「0」としての値に等しくないnuh_layer_idを有するすべてのVCL NALユニットのスライスセグメントヘッダの中でシグナリングされる。上記で説明したように、no_output_of_prior_pics_flagは、前に復号およびDPBに記憶されたピクチャが出力されることなくDPBから除去されるべきであるかどうかを示し得る。他の実施形態では、フラグno_output_of_prior_pics_flagは、すべてのVCL NALユニットのスライスセグメントヘッダの中でシグナリングされる。
[00163]現在のピクチャがELの中にある(たとえば、「0」としての値よりも大きいnuh_layer_idを有する)場合、普通はno_output_of_prior_pics_flagがシグナリングされる前に検査され得る条件(たとえば、現在のピクチャがIRAPピクチャであるかどうか)は、スキップされ得る。たとえば、フラグno_output_of_prior_pics_flagは、ビットストリームの中に存在する各ELに対してシグナリングされ得る。フラグno_output_of_prior_pics_flagは、シンタックステーブルにおける元の位置に存在し得る(たとえば、条件が満たされているかどうかを検査する余分なステップを伴わない)。現在のピクチャがIRAPピクチャでないBLピクチャ(たとえば、「0」としての値に等しいnuh_layer_idを有する)である場合、フラグno_output_of_prior_pics_flag(または、類似のインジケーションおよび/または機能を有する別のフラグ)は、スライスヘッダの中の予約済みビットのうちの1つ、またはスライスヘッダ拡張の一部のいずれかとして存在し得る。現在のピクチャがBLピクチャ(たとえば、「0」としての値に等しいnuh_layer_idを有する)でありIRAPピクチャである場合、フラグno_output_of_prior_pics_flagのシグナリングは変更されないままとなり得る。

アクセスユニット条件に基づくピクチャの出力
[00164]いくつかの実施形態では、変数NoOutputOfPriorPicsFlag(たとえば、DPBがフラッシングされる前にDPBの中のピクチャを出力するべきか否かを決定するために復号器によって導出される値)は、no_output_of_prior_pics_flagおよび他の条件に基づいて、少なくともIRAPピクチャでないすべてのLIPピクチャに対して導出される。たとえば、no_output_of_prior_pics_flagは、ビットストリームの中でシグナリングされる値であってよく、NoOutputOfPriorPicsFlagは、ビットストリームの中に含まれる情報に基づいて符号化器によって導出される値であってよい。復号器は、no_output_of_prior_pics_flagの値および他の条件に基づいてNoOutputOfPriorPicsFlagの値を導出し得、次いで、ピクチャを出力するか否かを決定するためにNoOutputOfPriorPicsFlagの導出値を使用し得る。いくつかの実施形態では、IRAPピクチャでない各LIPピクチャpicAに関するNoOutputOfPriorPicsFlagの値は、picAを含むアクセスユニットに属し、「0」としての値に等しいnuh_layer_idを有し、「1」としての値に等しいNoRaslOutputFlagを有するIRAPピクチャに関連付けられたNoClRasOutputFlagの値に基づいて推定され得る。いくつかの実施形態では、フラグNoOutputOfPriorPicsFlagは、現在のアクセスユニットが、2つの異なるビットストリームが互いに縫合される接合ポイントを備えるかどうかを示し得る。
[00165]いくつかの実施形態では、NoClRasOutputFlagおよびNoRaslOutputFlagは、ビットストリームの中に含まれる情報に基づいて導出される変数であり得る。たとえば、NoRaslOutputFlagは、すべてのIRAPピクチャ(たとえば、BLおよび/またはELの中の)に対して導出され得、NoClRasOutputFlagは、最下位レイヤのピクチャ(たとえば、BLピクチャ)のみに対して導出され得る。NoClRasOutputFlagおよびNoRaslOutputFlagの各々の値は、ビットストリームの中のいくつかのピクチャが、いくつかの参照ピクチャの非利用可能性に起因して正しく復号可能でない場合があることを示し得る。参照ピクチャのそのような非利用可能性は、ランダムアクセスポイントにおいて発生し得る。クロスレイヤランダムアクセススキップ(CL−RAS)ピクチャは、いくつかの点で、RASLピクチャのマルチレイヤ対応である。復号器がランダムアクセスポイント(たとえば、BL IRAPピクチャを有するアクセスユニット)においてビットストリームの復号を開始し、アクセスユニットの中のELピクチャがIRAPピクチャでない場合、そのELピクチャはCL−RASピクチャである。ELの中のすべてのピクチャは、IRAPピクチャがELの中に発生するまでCL−RASピクチャ(たとえば、復号可能だが、正しく復号可能ではない)であり得る。そのようなEL IRAPピクチャがビットストリームの中で提供されるとき、ELは初期化されたと言われることがある。
[00166]たとえば、図4の例では、ELピクチャ422AはIRAPピクチャでないLIPピクチャであってよく、BLピクチャ422Bはそれに関連付けられたフラグNoClRasOutputFlagを有するIRAPピクチャであってよい。この例では、ELピクチャ422Aに関連付けられたNoOutputOfPriorPicsFlagの値は、BLピクチャ422Bに関連付けられたNoClRasOutputFlagの値に基づいて推定され得る。たとえば、NoClRasOutputFlagが「1」としての値に等しい場合、ELピクチャ422Aに対するNoOutputOfPriorPicsFlagはまた、「1」としての値に設定されてよく、それらがDPBから除去される前にDPBの中のピクチャを出力させない。一方、NoClRasOutputFlagが「0」としての値に等しい場合、ELピクチャ422Aに対するNoOutputOfPriorPicsFlagはまた、「0」としての値に設定されてよく、出力の後でDPBの中のピクチャをDPBから除去させる。

アクセスユニット条件に基づいてピクチャを出力するための例示的なフローチャート
[00167]図5を参照すると、DPBをフラッシングするための例示的なルーチンが記載される。図5は、本開示の一実施形態による、ビデオ情報をコーディングするための方法500を示すフローチャートである。図5に示すステップは、符号化器(たとえば、図2Aまたは図2Bに示すビデオ符号化器)、復号器(たとえば、図3Aまたは図3Bに示すビデオ復号器)、または任意の他の構成要素によって実行され得る。便宜上、方法500について、符号化器、復号器、または別の構成要素であり得る、コーダによって実行されるものとして説明する。
[00168]方法500は、ブロック501において開始する。ブロック505において、コーダは、ピクチャが接合ポイントの非IRAPピクチャであるかどうかを決定する。たとえば、コーダは、ピクチャが接合ポイントの直後にくるアクセスユニットの中にある非IRAPピクチャであるかどうかを決定し得る。いくつかの実施形態では、特定のピクチャが接合ポイントの直後にくるアクセスユニットの中にあるかどうかは、フラグとしてシグナリングまたは処理され得る。そのような実施形態では、1としてのフラグ値は、ピクチャが接合ポイントの直後にくるアクセスユニットの中にあることを示し得、0としてのフラグ値は、ピクチャが接合ポイントの直後にくるアクセスユニットの中にないことを示し得る。コーダが、ピクチャが接合ポイントの非IRAPピクチャでないと決定する場合、方法500はブロック510に進む。コーダが、ピクチャが接合ポイントの非IRAPピクチャであると決定する場合、方法500はブロック515に進む。
[00169]ブロック510において、コーダは、DPBからピクチャを除去する前に、DPBの中のピクチャを出力する。ブロック515において、コーダは、ピクチャを出力することなく、DPBの中のピクチャを除去する。方法500は、515において終了する。
[00170]上記で説明したように、図2Aのビデオ符号化器20、図2Bのビデオ符号化器23、図3Aのビデオ復号器30、または図3Bのビデオ復号器33(たとえば、レイヤ間予測ユニット128および/またはレイヤ間予測ユニット166)のうちの1つまたは複数の構成要素は、ピクチャが接合ポイントの非IRAPピクチャであるかどうかを決定すること、ならびにピクチャを出力すること、および/またはDPBからピクチャを除去することなどの、本開示で説明する技法のいずれかを実施するために使用され得る。

DPBフラッシング方法の組合せ
[00171]いくつかの実施形態では、フラッシングプロセスは、それがIRAPピクチャでもあるELピクチャのうちの1つの中で呼び出されるときのみ、レイヤ特有である。フラッシングプロセスが「1」としての値に等しいNoRaslOutputFlagを有するBLに属するIRAPピクチャにおいて呼び出されると、すべてのレイヤにわたるすべてのピクチャは、DPBからフラッシングされ得る。

ネットワークアブストラクションレイヤ(NAL)ユニットおよびパラメータセット
[00172]上記で説明したように、符号化器または復号器によって使用されるパラメータは、それらが利用され得るコーディングレベルに基づいてパラメータセットへグループ化され得る。たとえば、ビットストリームの中の1つまたは複数のコード化ビデオシーケンスによって利用されるパラメータは、ビデオパラメータセット(VPS)の中に含まれてよく、コード化ビデオシーケンスの中の1つまたは複数のピクチャによって利用されるパラメータは、シーケンスパラメータセット(SPS)の中に含まれてよい。同様に、ピクチャの中の1つまたは複数のスライスによって利用されるパラメータは、ピクチャパラメータセット(PPS)の中に含まれてよく、単一のスライスに特有である他のパラメータは、スライスヘッダの中に含まれてよい。そのようなパラメータセットは、所与のレイヤに対してパラメータセットNALユニット(たとえば、SPS NALユニット、PPS NALユニットなど)によってアクティベートされ得る(または、アクティブであるとして示され得る)。NALユニットは、ローバイトシーケンスペイロード(RBSP:raw byte sequence payload)とNALユニットヘッダとを備える。RBSPは、パラメータセットID(たとえば、SPS ID)を規定し得、NALユニットヘッダは、どのレイヤがSPSを使用し得るかを示し得るレイヤIDを規定し得る。
[00173]場合によっては、所与のレイヤによって使用され得る、または所与のレイヤに対してアクティベートされ得る特定のパラメータセットのビットストリームの中で、複数のインスタンスを提供することが有益であり得る。たとえば、特定のパラメータセットが所与のレイヤに対してすでにアクティベートされた後でさえも、特定のパラメータセットのさらなるインスタンスは、所与のレイヤによる使用のためにビットストリームの中で提供され得る。ビットストリームがそのようなSPSのさらなるインスタンスを含むとき、前にシグナリングされた特定のパラメータセットが失われても、復号器は、その後シグナリングされる特定のパラメータセットを所与のレイヤに対して使用し得る。
[00174]しかしながら、いくつかのコーディングスキームでは、パラメータセットのそのようなさらなるインスタンス(たとえば、反復SPS)がビットストリームの中で提供されるとき、パラメータセット(たとえば、SPS NALユニット)のコンテンツは、パラメータセットのすべての前のインスタンスと同一であることが求められ得る。たとえば、ビットストリームがベースレイヤとエンハンスメントレイヤとを備える場合、SPS NALユニットがビットストリームの中で提供された後、ベースレイヤとエンハンスメントレイヤの両方がSPSを参照し得る。ベースレイヤのすべてのNALユニット(たとえば、VCL NALユニット)がビットストリームの中で提供された後、たとえば、誤り耐性を改善するために、SPSをビットストリームの中で再び提供することが望ましい状況があり得る。そのような状況では、後続のSPS NALユニットは、ビットストリームの中で前に提供されたSPS NALユニットと同じコンテンツを有することが必要とされ得る。SPS NALユニットはどのレイヤがSPS NALユニットを使用し得るかを示すためのレイヤIDを規定し得るので、上述された例では、後続のSPS NALユニットが単にエンハンスメントレイヤによって使用されることがあっても、後続のSPS NALユニットは、ベースレイヤとエンハンスメントレイヤの両方がSPSを使用し得ることを示し得る前に提供されたSPS NALユニットと同じレイヤIDを規定することが、ビットストリーム制約によって必要とされ得る。SPS NALユニットの両方が、異なるレイヤによって使用されながら同じレイヤIDを規定した場合、復号プロセスの間に問題が起こり得る。
[00175]たとえば、特定のビットストリームがベースレイヤとエンハンスメントレイヤとを有する場合、ここで、ベースレイヤおよびエンハンスメントレイヤの両方は同じSPSを参照する。ELがBLよりも高いフレームレートを有する場合、ビットストリームの中の最後の少数のアクセスユニットは、ELピクチャのみを含みBLピクチャを含まないことがある。そのような例では、最後の少数のアクセスユニットのうちの1つが反復SPS NALユニットを含んだ場合、上述されたビットストリーム制約は、SPS NALユニットのレイヤIDを、SPSをアクティベートする前のSPS NALユニットと同じであるように強制し得る(たとえば、コーダは、そのようなビットストリーム制約が適用可能であると決定し得、コード化ビットストリームがビットストリーム制約に適合するようにビットストリーム制約に忠実に従い得る)。たとえば、そのような前のSPS NALユニットはベースレイヤによって使用されることがあり、前のSPS NALユニットは、ベースレイヤがSPSを使用し得ることを示す0としてのレイヤID値を有してよい。そのような場合では、反復SPS NALユニットがベースレイヤによって使用されるべきと意味されなくても、反復SPS NALユニットのレイヤIDはまた、「0」としての値に等しくなければならないことになる。この例で、復号器がビットストリームのベースレイヤを抽出しようと試みる場合(たとえば、0としてのレイヤIDを有するすべてのNALユニットを取ることによって)、得られたビットストリームは、反復SPS NALユニットをビットストリームの終わりにおいて有することになる。復号器は、反復SPS NALユニットを処理すると、反復SPS NALユニットが次のアクセスユニット(または、コード化ビデオシーケンス)の始まりをシグナリングすると仮定することがあるので、このことは問題となり得る。そのような問題を回避するために、符号化器は、ビットストリームの中に後続のSPS NALユニットをまったく提供しないことを決定してよく、それによって、反復SPS NALユニットに関連する潜在的な利益を断念する。

シーケンスパラメータセット(SPS)ローバイトシーケンスペイロード(RBSP)のアクティベーション
[00176]SPS RBSPは、1つまたは複数のピクチャパラメータセット(PPS)RBSP、またはアクティブなパラメータセットSEIメッセージを含む1つまたは複数のSEI NALユニットによって参照され得るパラメータを含む。各SPS RBSPは、最初に、復号プロセスの開始においていかなるレイヤに対してもアクティブでないとみなされてよい。各レイヤに対して、多くて1つのSPS RBSPが、復号プロセスの間の所与の瞬間においてアクティブであるとみなされ、特定のレイヤに対する任意の特定のSPS RBSPのアクティベーションは、もしあれば、その特定のレイヤに対して前にアクティブであったSPS RBSPのデアクティベーションをもたらす。
[00177]1つのSPS RBSPが、1つを越えるレイヤに対してアクティブなSPS RBSPであってよい。たとえば、ベースレイヤおよびエンハンスメントレイヤが、3としてのSPS IDを有するSPSを参照するPPSを参照するピクチャをともに含む場合、3としてのSPS IDを有するSPSは、参照レイヤとエンハンスメントレイヤの両方に対してアクティブなSPS RBSPである。
[00178]SPS RBSP(たとえば、特定のSPS IDを有する)が、XとしてのレイヤID(たとえば、nuh_layer_id)を有する特定の非ベースレイヤ(たとえば、非ゼロのレイヤID値または0よりも大きいレイヤIDを有する)に対してすでにアクティブでなく、SPS RBSPがピクチャパラメータセット(PPS)RBSPの中で参照されるとき、SPS RBSPは、特定の非ベースレイヤに対してアクティベートされる。このSPSは、それが特定の非ベースレイヤに対する別のSPS RBSPのアクティベーションによってデアクティベートされるまで、特定の非ベースレイヤに対してアクティブなSPS RBSPとして参照されてよい。

パラメータセットのアクティベーション
[00179]上記で説明したように、いくつかのコーディングスキームでは、レイヤ初期化ピクチャ(「LIPピクチャ」)は、(1)1に設定されたNoRaslOutputFlagフラグ(たとえば、RASLピクチャが出力されるべきかどうかを示すフラグ)を有するIRAPピクチャであるピクチャ、または(2)ベースレイヤのピクチャ(たとえば、0としてのレイヤIDまたはビットストリームの中で定義される最小のレイヤIDを有するピクチャ)が1に設定されたNoRaslOutputFlagを有するIRAPアクセスユニットである初期IRAPアクセスユニットが含まれるピクチャとして定義される。
[00180]いくつかの実施形態では、SPSは、各LIPピクチャにおいてアクティベートされ得る。たとえば、1に設定されたNoRaslOutputFlagフラグを有する各IRAPピクチャ、または初期IRAPアクセスユニットの中に含まれる各ピクチャは、新しいSPSをアクティベートさせることができ、新しいSPSは、前にアクティベートされた(たとえば、ピクチャサイズなどの異なるパラメータを有する)SPSと同じであってよく、異なってもよい。さらに、SPSがアクティベートされた後、同じSPSのさらなるインスタンスが、ビットストリームの中で提供されてよい。SPSのそのような反復インスタンス(または、反復SPS)は、前に提供されたSPSが失われ、またはビットストリームから落とされた場合、バックアップSPSとして働くことによって誤り耐性を改善し得る。

ビットストリームの中で反復SPSを提供するための例示的なフローチャート
[00181]図6は、本開示の一実施形態による、ビデオ情報をコーディングするための方法600を示すフローチャートである。図6に示すステップは、符号化器(たとえば、図2Aまたは図2Bに示すビデオ符号化器)、復号器(たとえば、図3Aまたは図3Bに示すビデオ復号器)、または任意の他の構成要素によって実行され得る。便宜上、方法600について、符号化器、復号器、または別の構成要素であり得る、コーダによって実行されるものとして説明する。
[00182]方法600は、ブロック601において開始する。ブロック605において、コーダは、そのSPSが第1のビデオレイヤおよび第2のビデオレイヤに対してアクティベートされ得るというインジケーションを有するシーケンスパラメータセット(SPS)を、ビットストリームの中で提供する。たとえば、第1のビデオレイヤはベースレイヤであってよく、第2のビデオレイヤはエンハンスメントレイヤであってよい。第2のビデオレイヤは、第1のビデオレイヤと異なるレイヤIDを有する任意のレイヤであってよい。SPSは、ビットストリームの中で、レイヤIDとSPS IDとを有するSPS NALユニットの形態で提供され得る。たとえば、SPS NALユニットは、SPSが第1および第2のビデオレイヤの両方に対してアクティベートされ得ることを示すレイヤIDを有してよい。いくつかの実施形態では、SPSのレイヤIDが0としての値を有する場合、SPSは、「0」としての値以上のレイヤIDを有する任意のレイヤに対してアクティベートされ得る。たとえば、ベースレイヤが0としてのレイヤIDを有しエンハンスメントレイヤが1としてのレイヤIDを有する場合では、SPSのレイヤIDが0としての値を有する場合、SPSは、ベースレイヤとエンハンスメントレイヤの両方によってアクティベートされ得る。
[00183]ブロック610において、コーダは、そのSPSが第2のビデオレイヤに対してアクティベートされ得るが第1のビデオレイヤに対してアクティベートされないというインジケーションを有する同じSPS(たとえば、前に提供されたSPS NALユニットと同じSPS IDを有するSPS NALユニットである反復SPS)を、ビットストリームの中で提供する。たとえば、反復SPS NALユニットは、前に提供されたSPS NALユニットと異なるレイヤIDを有してよい。ベースレイヤが0としてのレイヤIDを有しエンハンスメントレイヤが1としてのレイヤIDを有する場合では、反復SPSのレイヤIDが1としての値を有する場合、反復SPSは、エンハンスメントレイヤ(たとえば、1としてのレイヤID値を有する)によってアクティベートされ得るが、ベースレイヤ(たとえば、0としてのレイヤID値を有する)によってアクティベートされ得ない。前に提供されたSPSと同じSPS IDを有するが異なるレイヤIDを有する反復SPSを提供することは、1つまたは複数の下位レイヤ(たとえば、ベースレイヤ)のすべてのVCL NALユニットが提供された後、反復SPSがビットストリームの中で提供される場合、有用であり得る。1つまたは複数の下位レイヤに対して反復SPSがアクティベートされるべきでないことを示すレイヤIDを有する反復SPSを提供することによって、1つまたは複数の下位レイヤがビットストリームから抽出されるとき、その結果得られる抽出されたビットストリームは反復SPSを含まないことになり、すべてのVCL NALユニットが反復SPSの前に提供されたので、反復SPSは下位レイヤにとって必要とされない。方法600は、615において終了する。
[00184]上記で説明したように、図2Aのビデオ符号化器20、図2Bのビデオ符号化器23、図3Aのビデオ復号器30、または図3Bのビデオ復号器33(たとえば、レイヤ間予測ユニット128および/またはレイヤ間予測ユニット166)のうちの1つまたは複数の構成要素は、SPSが第1のビデオレイヤおよび第2のビデオレイヤに対してアクティベートされ得るというインジケーションを有するシーケンスパラメータセット(SPS)をビットストリームの中で提供すること、およびSPSが第2のビデオレイヤに対してアクティベートされ得るが第1のビデオレイヤに対してアクティベートされ得ないというインジケーションを有する同じSPSをビットストリームの中で提供することなどの、本開示で説明する技法のいずれかを実施するために使用され得る。
[00185]方法600では、図6に示すブロックのうちの1つまたは複数は削除される(たとえば、実行されない)ことがあり、および/または方法が実行される順序は入れ替えられることがある。いくつかの実施形態では、さらなるブロックが方法600に追加されてよい。方法600はSPSを参照しながら説明されたが、方法600に関して説明された技法がVPS、PPS、およびスライスヘッダなどの他のパラメータセットに拡張および適用され得ることが理解されるべきである。したがって、本開示の実施形態は、図6に示す例に限定されず、または図6に示す例によって限定されず、他の変形が本開示の趣旨から逸脱することなく実施され得る。

反復SPSに関するビットストリーム制約
[00186]いくつかの実施形態では、SPS NALユニット(たとえば、反復SPS)が、前にシグナリングされたSPSと同じSPS ID値(たとえば、sps_seq_parameter_set_id)を含むとき、反復SPSがアクティブなSPSが依然としてアクティブなままであることをそれに対して必要とされる最後のコード化ピクチャに追従するとともに、同じSPS ID値(たとえば、sps_seq_parameter_set_id)を有するSPSをアクティベートさせる第1のNALユニットに先行しない限り、反復SPS NALユニットのSPS RBSPは前にシグナリングされたSPS NALユニットのコンテンツと同じコンテンツを有するべきであることを、ビットストリーム制約は規定し得る。

例示的な実装形態#1
[00187]以下に記載される実施形態では、no_output_of prior_pics_flagの値は、すべてのVCL NALユニットのスライスセグメントヘッダの中でシグナリングされる。本明細書で説明される方法のうちの1つまたは複数を実施するために組み込まれ得る追加と削除とを示すために、HEVC規格のいくつかの部分が転載されるとき、そのような修正は、それぞれ《イタリック体》および取り消し線で示される(《》内はイタリック体であり、下線は、取り消し線を示す)。

スライスセグメントヘッダシンタックス
[00188]以下の例示的なシンタックスは、本明細書で説明される実施形態のうちの1つまたは複数を実施するために使用され得る。HEVC規格における既存の言葉への追加は、《イタリック体》で示される(《》内はイタリック体である)。
Figure 0006608374
スライスセグメントヘッダセマンティクス
[00189]以下の例示的なセマンティクスは、本明細書で説明される実施形態のうちの1つまたは複数を実施するために使用され得る。HEVC規格における既存の言葉への追加およびそこからの削除は、それぞれ、《イタリック体》および取り消し線で示される(《》内はイタリック体であり、下線は、取り消し線を示す)。
no_output_of_prior_pics_flagは、付属書類Cにおいて規定されるようなビットストリームの中の第1のピクチャ《アクセスユニットの中に含まれ》ないIDRまたは《、》BLAピクチャ、《またはLIP》の復号の後の、復号ピクチャバッファの中の前に復号されたピクチャの出力に影響を及ぼす(《》内はイタリック体であり、下線は、取り消し線を示す)。
[00190]一実施形態では、base_no_output_of_prior_pics_flagは、IRAPでないBLピクチャに対して、それがLIPピクチャであることを可能にするようにシグナリングされ得る。
《base_no_output_of_prior_pics_flagは、付属書類Cにおいて規定されるようなビットストリームの中の第1のアクセスユニットの中に含まれないレイヤ初期化ピクチャの復号の後の、復号ピクチャバッファの中の前に復号されたピクチャの出力に影響を及ぼす。》(《》内はイタリック体である)存在するとき、no_output_of_prior_pics_flagはbase_no_output_of_prior_pics_flagに等しく設定される。
[00191]別の実施形態では、base_no_output_of_prior_pics_flagはシグナリングされない。

アクティベーションプロセスへの変更
[00192]現在のHEVC規格におけるアクティベーションプロセス(たとえば、セクションF.7.4.2.4.2)は以下に示すように修正され、プロセスの残部は同じである。HEVC規格における既存の言葉への追加は、《イタリック体》で示される(《》内はイタリック体である)。
アクティブなレイヤのSPS RBSPに対してsps_seq_parameter_set_idとしての値を含むいかなるSPS NALユニットも、それがアクティブなレイヤのSPSがアクティブであることをそれに対して必要とされる最後のコード化ピクチャに追従するとともに、seq_parameter_set_idとしての同じ値のSPSをアクティベートさせる第1のNALユニットに先行しない限り、アクティブなレイヤの《SPS RBSPの》コンテンツと同じSPS RBSPのコンテンツを有していなければならない(《》内はイタリック体である)。
[00193]いくつかの実施形態では、類似の制約が、ビデオパラメータセット(VPS)およびピクチャパラメータセット(PPS)などの他のパラメータセットに追加されることがある。

ピクチャのDPBからの除去への変更
[00194]以下の例示的なテキストは、本明細書で説明される実施形態のうちの1つまたは複数を実施するために使用され得る。HEVC規格における既存の言葉への追加およびそこからの削除は、それぞれ、《イタリック体》および取り消し線で示される(《》内はイタリック体であり、下線は、取り消し線を示す)。

C.3.2 ピクチャのDPBからの除去
現在のピクチャの復号の前の(ただし、現在のピクチャの第1のスライスのスライスヘッダをパースした後の)、ピクチャのDPBからの除去は、アクセスユニットn(現在のピクチャを含む)の第1の復号ユニットのCPB除去時間において瞬時に起こり、次のように進む。
− サブクローズ8.3.2で規定されるようなRPSのための復号プロセスが呼び出される。
− 現在のピクチャが1に等しいNoRaslOutputFlagを有するIRAPピクチャ《LIP(または、1に等しいNoRaslOutputFlagを有し、0に等しいnuh_layer_idを有するIRAPピクチャ)がピクチャ0でない》とき、以下の順序付けられたステップが適用される(《》内はイタリック体であり、下線は、取り消し線を示す)。
1.変数NoOutputOfPriorPicsFlagが、テスト対象の復号器に対して次のように導出される。
− 現在のピクチャがCRAピクチャである場合、NoOutputOfPriorPicsFlagは1に等しく設定される(no_output_of_prior_pics_flagの値にかかわらず)。
− そうでない場合、《現在のピクチャの》アクティブなSPSから導出されるpic_width_in_luma_samples、pic_height_in_luma_samples、またはsps_max_dec_pic_buffering_minus1[HighestTid]の値が、《現在のピクチャと同じレイヤIDを有する》先行するピクチャに対してアクティブなSPSからそれぞれ導出されるpic_width_in_luma_samples、pic_height_in_luma_samples、またはsps_max_dec_pic_buffering_minus1[HighestTid]の値と異なる場合、NoOutputOfPriorPicsFlagは、no_output_of_prior_pics_flagの値にかかわらず、テスト対象の復号器によって1に設定されてよい(ただし、設定されるべきでない)(《》内はイタリック体である)。
注− これらの条件下ではNoOutputOfPriorPicsFlagをno_output_of_prior_pics_flagに等しく設定することが好ましいが、テスト対象の復号器は、この場合にはNoOutputOfPriorPicsFlagを1に設定することが許容される。
− そうでない場合、NoOutputOfPriorPicsFlagは、no_output_of_prior_pics_flagに等しく設定される。
2.NoOutputOfPriorPicsFlagの値が1に等しいとき、DPBの中に《あり》、《現在のピクチャのそれと同じnuh_layer_idとしての値を有するピクチャを含む》すべてのピクチャ記憶バッファが、それらが含んでいるピクチャを出力することなく空にされるように、テスト対象の復号器に対して導出されるNoOutputOfPriorPicsFlagの値がHRDに対して適用され、DPBフルネスは0に等しく設定《除去されたピクチャの数だけデクリメントされる》(《》内はイタリック体であり、下線は、取り消し線を示す)。
− 以下の条件の両方がDPBの中の任意のピクチャkに対して真であるとき、DPBの中のすべてのそのようなピクチャkはDPBから除去される。
− ピクチャkが、「参照用に使用されない」としてマークされている。
− ピクチャkが、0に等しいPicOutputFlagを有するか、またはそれのDPB出力時間が現在のピクチャnの第1の復号ユニット(復号ユニットmとして示す)のCPB除去時間以下である、すなわち、DpbOutputTime[k]がCpbRemovalTime(m)以下である。
− DPBから除去される各ピクチャに対して、DPBフルネスは1だけデクリメントされる。

ピクチャのDPBからの出力および除去への変更
[00195]以下の例示的なテキストは、本明細書で説明される実施形態のうちの1つまたは複数を実施するために使用され得る。HEVC規格における既存の言葉への追加およびそこからの削除は、それぞれ、《イタリック体》および取り消し線で示される(《》内はイタリック体であり、下線は、取り消し線を示す)。

F.13.5.2.2 ピクチャのDPBからの出力および除去
現在のピクチャの復号の前の(ただし、現在のピクチャの第1のスライスのスライスヘッダをパースした後の)DPBからのピクチャの出力および削除は、現在のピクチャの第1の復号ユニットがCPBから削除された時に瞬時に起こり、次のように進む。
サブクローズF.8.3.2で規定されるようなRPSのための復号プロセスが呼び出される。
− 現在のピクチャが1に等しいNoRaslOutputFlagを有し、0に等しいnuh_layer_idを有するIRAPピクチャピクチャ0でない《LIP(または、1に等しいNoRaslOutputFlagを有し、0に等しいnuh_layer_idを有するIRAP)》である場合、以下の順序付けられたステップが適用される(《》内はイタリック体であり、下線は、取り消し線を示す)。
1.変数NoOutputOfPriorPicsFlagが、テスト対象の復号器に対して次のように導出される。
− 現在のピクチャがCRAピクチャである場合、NoOutputOfPriorPicsFlagは(no_output_of_prior_pics_flagの値にかかわらず)1に等しく設定される。
− そうでない場合、《現在のピクチャの》アクティブなSPSから導出されるpic_width_in_luma_samples、pic_height_in_luma_samples、またはsps_max_dec_pic_buffering_minus1[HighestTid]の値が、《現在のピクチャと同じレイヤIDを有する》先行するピクチャに対してアクティブなSPSからそれぞれ導出されるpic_width_in_luma_samples、pic_height_in_luma_samples、またはsps_max_dec_pic_buffering_minus1[HighestTid]の値と異なる場合、NoOutputOfPriorPicsFlagは、no_output_of_prior_pics_flagの値にかかわらず、テスト対象の復号器によって1に設定されてよい(ただし、設定されるべきでない)(《》内はイタリック体である)。
注− これらの条件下ではNoOutputOfPriorPicsFlagをno_output_of_prior_pics_flagに等しく設定することが好ましいが、テスト対象の復号器は、この場合にはNoOutputOfPriorPicsFlagを1に設定することが許容される。
− そうでない場合、NoOutputOfPriorPicsFlagは、no_output_of_prior_pics_flagに等しく設定される。
2.テスト対象の復号器に対して導出されるNoOutputOfPriorPicsFlagの値が次のようにHRDに対して適用される。
− NoOutputOfPriorPicsFlagが1に等しい場合、DPBの中に《あり、現在のピクチャのそれと同じnuh_layer_idとしての値を有するピクチャを含む》すべてのピクチャ記憶バッファは、それらが含んでいるピクチャを出力することなく空にされ、DPBフルネスは、0に等しく設定《除去されたピクチャの数だけデクリメントされる》(《》内はイタリック体であり、下線は、取り消し線を示す)。
− そうでない場合(NoOutputOfPriorPicsFlagが0に等しい)、「出力用に必要とされない」および「参照用に使用されない」としてマークされているピクチャを含むすべてのピクチャ記憶バッファは空にされ(出力せずに)、DPBの中のすべての空でないピクチャ記憶バッファは、サブクローズF.13.5.2.4で規定される「バンピング」プロセスを繰り返し呼び出すことによって空にされ、DPBフルネスは0に等しく設定される。
− そうでない場合(現在のピクチャが、1に等しいNoRaslOutputFlagを有するか、または0に等しくないnuh_layer_idを有するIRAPピクチャでない)、「出力用に必要とされない」および「参照用に使用されない」としてマークされているピクチャを含むすべてのピクチャ記憶バッファは空にされる(出力せずに)。空にされた各ピクチャ記憶バッファに対して、DPBフルネスは1だけデクリメントされる。変数currLayerIdは現在の復号ピクチャのnuh_layer_idに等しく設定され、以下の条件のうちの1つまたは複数が真であるとき、空にされた各追加のピクチャ記憶バッファに対してDPBフルネスを1だけさらにデクリメントしながら、以下の条件のいずれも真でなくなるまでサブクローズF.13.5.2.4で規定される「バンピング」プロセスが繰り返し呼び出される。
− 「出力用に必要とされる」としてマークされているDPBの中のcurrLayerIdに等しいnuh_layer_idを有するピクチャの数は、アクティブなSPSからの(currLayerIdが0に等しいとき)またはcurrLayerIdの値に対してアクティブなレイヤのSPSからの(currLayerIdが0に等しくないとき)sps_max_num_reorder_pics[HighestTid]よりも大きい。
− アクティブなSPS(currLayerIdが0に等しいとき)またはcurrLayerIdの値に対してアクティブなレイヤのSPSのsps_max_latency_increase_plus1[HighestTid]は0に等しくなく、それに対して関連した変数PicLatencyCount[currLayerId]が、アクティブなSPSから(currLayerIdが0に等しいとき)またはcurrLayerIdの値に対してアクティブなレイヤのSPSから導出されるSpsMaxLatencyPictures[HighestTid]以上である「出力用に必要とされる」としてマークされているDPBの中のcurrLayerIdに等しいnuh_layer_idを有する少なくとも1つのピクチャが存在する。
− DPBの中のcurrLayerIdに等しいnuh_layer_idを有するピクチャの数は、アクティブなSPSからの(currLayerIdが0に等しいとき)またはcurrLayerIdの値に対してアクティブなレイヤのSPSからのsps_max_dec_pic_buffering_minus1[HighestTid]+1以上である。

例示的な実装形態#2
[00196]以下に記載される実施形態では、no_output_of_prior_pics_flagはIRAPピクチャのみに対してシグナリングされ、NoOutputOfPriorPicsFlagは、「1」としての値に等しいNoRaslOutputFlagを有するすべてのIRAPピクチャに対して導出され、LIPピクチャであるすべての非IRAPピクチャに対してNoClRasOutputFlagとしての値に基づいて推定される。

ピクチャのDPBからの除去への変更
[00197]以下の例示的なテキストは、本明細書で説明される実施形態のうちの1つまたは複数を実施するために使用され得る。HEVC規格における既存の言葉への追加およびそこからの削除は、それぞれ、《イタリック体》および取り消し線で示される(《》内はイタリック体であり、下線は、取り消し線を示す)。

C.3.2 ピクチャのDPBからの除去
現在のピクチャの復号の前の(ただし、現在のピクチャの第1のスライスのスライスヘッダをパースした後の)、ピクチャのDPBからの除去は、アクセスユニットn(現在のピクチャを含む)の第1の復号ユニットのCPB除去時間において瞬時に起こり、次のように進む。
− サブクローズ8.3.2で規定されるようなRPSのための復号プロセスが呼び出される。
− 現在のピクチャが1に等しいNoRaslOutputFlagを有するIRAPピクチャピクチャ0でない《LIP(または、1に等しいNoRaslOutputFlagを有し、0に等しいnuh_layer_idを有するIRAPピクチャ)》であるとき、以下の順序付けられたステップが適用される(《》内はイタリック体であり、下線は、取り消し線を示す)。
1.変数NoOutputOfPriorPicsFlagが、テスト対象の復号器に対して次のように導出される。
− 現在のピクチャが《1に等しいNoRaslOutputFlagを有する》CRAピクチャである場合、NoOutputOfPriorPicsFlagは1に等しく設定される(no_output_of_prior_pics_flagの値にかかわらず)。
− そうでない場合、《現在のピクチャの》アクティブなSPSから導出されるpic_width_in_luma_samples、pic_height_in_luma_samples、またはsps_max_dec_pic_buffering_minus1[HighestTid]の値が、《現在のピクチャと同じレイヤIDを有する》先行するピクチャに対してアクティブなSPSからそれぞれ導出されるpic_width_in_luma_samples、pic_height_in_luma_samples、またはsps_max_dec_pic_buffering_minus1[HighestTid]の値と異なる場合、NoOutputOfPriorPicsFlagは、no_output_of_prior_pics_flagの値にかかわらず、テスト対象の復号器によって1に設定されてよい(ただし、設定されるべきでない)(《》内はイタリック体である)。
注− これらの条件下ではNoOutputOfPriorPicsFlagをno_output_of_prior_pics_flagに等しく設定することが好ましいが、テスト対象の復号器は、この場合にはNoOutputOfPriorPicsFlagを1に設定することが許容される。
− そうでない場合、《現在のピクチャがIRAPピクチャである場合》、NoOutputOfPriorPicsFlagはno_output_of_prior_pics_flagに等しく設定される(《》内はイタリック体である)。
− 《そうでない場合、現在のピクチャ(LIPである)がIRAPピクチャでなく現在のアクセスユニットの中の0に等しいIRAPピクチャのnuh_layer_idに関連付けられたNoClrasOutputFlagが1に等しい場合、NoOutputOfPriorPicsFlagは1に等しく設定される。
− そうでない場合、NoOutputOfPriorPicsFlagは、0に等しく設定される。》(《》内はイタリック体である)
2.NoOutputOfPriorPicsFlagの値が1に等しいとき、DPBの中に《あり、現在のピクチャのそれと同じnuh_layer_idとしての値を有するピクチャを含む》すべてのピクチャ記憶バッファが、それらが含んでいるピクチャを出力することなく空にされるように、テスト対象の復号器に対して導出されるNoOutputOfPriorPicsFlagの値がHRDに対して適用され、DPBフルネスは、0に等しく設定《除去されたピクチャの数だけデクリメントされる》(《》内はイタリック体であり、下線は、取り消し線を示す)。
− 以下の条件の両方がDPBの中の任意のピクチャkに対して真であるとき、DPBの中のすべてのそのようなピクチャkはDPBから除去される。
− ピクチャkが、「参照用に使用されない」としてマークされている。
− ピクチャkが、0に等しいPicOutputFlagを有するか、またはそれのDPB出力時間が現在のピクチャnの第1の復号ユニット(復号ユニットmとして示す)のCPB除去時間以下である、すなわち、DpbOutputTime[k]がCpbRemovalTime(m)以下である。
− DPBから除去される各ピクチャに対して、DPBフルネスは1だけデクリメントされる。

ピクチャのDPBからの出力および除去への変更
[00198]以下の例示的なテキストは、本明細書で説明される実施形態のうちの1つまたは複数を実施するために使用され得る。HEVC規格における既存の言葉への追加およびそこからの削除は、それぞれ、《イタリック体》および取り消し線で示される(《》内はイタリック体であり、下線は、取り消し線を示す)。

F.13.5.2.2 ピクチャのDPBからの出力および除去
現在のピクチャの復号の前の(ただし、現在のピクチャの第1のスライスのスライスヘッダをパースした後の)DPBからのピクチャの出力および削除は、現在のピクチャの第1の復号ユニットがCPBから削除された時に瞬時に起こり、次のように進む。
サブクローズF.8.3.2で規定されるようなRPSのための復号プロセスが呼び出される。
− 現在のピクチャが1に等しいNoRaslOutputFlagを有するIRAPピクチャピクチャ0でない《LIP(または、1に等しいNoRaslOutputFlagを有し、0に等しいnuh_layer_idを有するIRAPピクチャ)》である場合、以下の順序付けられたステップが適用される(《》内はイタリック体であり、下線は、取り消し線を示す)。
1.変数NoOutputOfPriorPicsFlagが、テスト対象の復号器に対して次のように導出される。
− 現在のピクチャがCRAピクチャである場合、NoOutputOfPriorPicsFlagは(no_output_of_prior_pics_flagの値にかかわらず)1に等しく設定される。
− そうでない場合、《現在のピクチャの》アクティブなSPSから導出されるpic_width_in_luma_samples、pic_height_in_luma_samples、またはsps_max_dec_pic_buffering_minus1[HighestTid]の値が、《現在のピクチャと同じレイヤIDを有する》先行するピクチャに対してアクティブなSPSからそれぞれ導出されるpic_width_in_luma_samples、pic_height_in_luma_samples、またはsps_max_dec_pic_buffering_minus1[HighestTid]の値と異なる場合、NoOutputOfPriorPicsFlagは、no_output_of_prior_pics_flagの値にかかわらず、テスト対象の復号器によって1に設定されてよい(ただし、設定されるべきでない)(《》内はイタリック体である)。
注− これらの条件下ではNoOutputOfPriorPicsFlagをno_output_of_prior_pics_flagに等しく設定することが好ましいが、テスト対象の復号器は、この場合にはNoOutputOfPriorPicsFlagを1に設定することが許容される。
− そうでない場合、《現在のピクチャがIRAPピクチャである場合》、NoOutputOfPriorPicsFlagはno_output_of_prior_pics_flagに等しく設定される(《》内はイタリック体である)。
− そうでない場合、《現在のピクチャ(LIPである)がIRAPピクチャでなく現在のアクセスユニットの中の0に等しいIRAPピクチャのnuh_layer_idに関連付けられたNoClrasOutputFlagが1に等しい場合、NoOutputOfPriorPicsFlagは1に等しく設定される。
− 《そうでない場合、NoOutputOfPriorPicsFlagは、0に等しく設定される。》(《》内はイタリック体である)
2.テスト対象の復号器に対して導出されるNoOutputOfPriorPicsFlagの値が次のようにHRDに対して適用される。
− NoOutputOfPriorPicsFlagが1に等しい場合、DPBの中に《あり、現在のピクチャのそれに等しいnuh_layer_idを有するピクチャを含む》すべてのピクチャ記憶バッファはそれらが含んでいるピクチャを出力することなく空にされ、DPBフルネスは0に等しく設定《除去されたピクチャの数だけデクリメントされる》(《》内はイタリック体であり、下線は、取り消し線を示す)。
− そうでない場合(NoOutputOfPriorPicsFlagが0に等しい)、「出力用に必要とされない」および「参照用に使用されない」としてマークされているピクチャを含むすべてのピクチャ記憶バッファは空にされ(出力せずに)、DPBの中のすべての空でないピクチャ記憶バッファは、サブクローズF.13.5.2.4で規定される「バンピング」プロセスを繰り返し呼び出すことによって空にされ、DPBフルネスは0に等しく設定される。
− そうでない場合(現在のピクチャが、1に等しいNoRaslOutputFlagを有するか、または0に等しくないnuh_layer_idを有するIRAPピクチャでない)、「出力用に必要とされない」および「参照用に使用されない」としてマークされているピクチャを含むすべてのピクチャ記憶バッファは空にされる(出力せずに)。空にされた各ピクチャ記憶バッファに対して、DPBフルネスは1だけデクリメントされる。変数currLayerIdは現在の復号ピクチャのnuh_layer_idに等しく設定され、以下の条件のうちの1つまたは複数が真であるとき、空にされた各追加のピクチャ記憶バッファに対してDPBフルネスを1だけさらにデクリメントしながら、以下の条件のいずれも真でなくなるまでサブクローズF.13.5.2.4で規定される「バンピング」プロセスが繰り返し呼び出される。
− 「出力用に必要とされる」としてマークされているDPBの中のcurrLayerIdに等しいnuh_layer_idを有するピクチャの数は、アクティブなSPSからの(currLayerIdが0に等しいとき)またはcurrLayerIdの値に対してアクティブなレイヤのSPSからの(currLayerIdが0に等しくないとき)sps_max_num_reorder_pics[HighestTid]よりも大きい。
− アクティブなSPS(currLayerIdが0に等しいとき)またはcurrLayerIdの値に対してアクティブなレイヤのSPSのsps_max_latency_increase_plus1[HighestTid]は0に等しくなく、それに対して関連した変数PicLatencyCount[currLayerId]が、アクティブなSPSから(currLayerIdが0に等しいとき)またはcurrLayerIdの値に対してアクティブなレイヤのSPSから導出されるSpsMaxLatencyPictures[HighestTid]以上である「出力用に必要とされる」としてマークされているDPBの中のcurrLayerIdに等しいnuh_layer_idを有する少なくとも1つのピクチャが存在する。
− DPBの中のcurrLayerIdに等しいnuh_layer_idを有するピクチャの数は、アクティブなSPSからの(currLayerIdが0に等しいとき)またはcurrLayerIdの値に対してアクティブなレイヤのSPSからのsps_max_dec_pic_buffering_minus1[HighestTid]+1以上である。
[00199]いくつかの実施形態では、出力タイミング適合と出力順序適合の両方において、現在のピクチャがIRAPピクチャでないLIPピクチャであるとき、またIRAPピクチャであり、「0」としての値に等しいnuh_layer_idを有し、現在のアクセスユニットの中にある別のピクチャに関連付けられたNoClrasOutputFlagが「1」としての値に等しいとき、NoOutputOfPriorPicsFlagは、「0」としての値に等しいnuh_layer_idを有する現在のAUの中のIRAPピクチャのNoOutputOfPriorPicsFlagに等しく設定される。

例示的な実装形態#3
[00200]以下に記載される実施形態では、「1」としての値に等しいNoRaslOutputFlagを有する非BL IRAPピクチャを復号する時間におけるピクチャのフラッシングは、レイヤ特有の方式で実行されるように規定される。「1」としての値に等しいNoRaslOutputFlagを有するBL IRAPピクチャを復号する時間においてフラッシングが行われるとき、フラッシング動作は、すべてのレイヤにわたって実行されるように規定される。たとえば、すべてのフラッシングは、非ベースレイヤ(たとえば、エンハンスメントレイヤ)に対してレイヤ特有であるが、ベースレイヤに関して実行されるフラッシング動作は非ベースレイヤの中のピクチャをフラッシングしてよい。

ピクチャのDPBからの除去への変更
[00201]以下の例示的なテキストは、本明細書で説明される実施形態のうちの1つまたは複数を実施するために使用され得る。HEVC規格における既存の言葉への追加およびそこからの削除は、それぞれ、《イタリック体》および取り消し線で示される(《》内はイタリック体であり、下線は、取り消し線を示す)。

C.3.2 ピクチャのDPBからの除去
現在のピクチャの復号の前の(ただし、現在のピクチャの第1のスライスのスライスヘッダをパースした後の)、ピクチャのDPBからの除去は、アクセスユニットn(現在のピクチャを含む)の第1の復号ユニットのCPB除去時間において瞬時に起こり、次のように進む。
− サブクローズ8.3.2で規定されるようなRPSのための復号プロセスが呼び出される。
− 現在のピクチャが、1に等しいNoRaslOutputFlagを有し、《0に等しいnuh_layer_idを有し、ピクチャ0でないIRAPピクチャであるとき、または1に等しいNoRaslOutputFlagを有し、0に等しくないnuh_layer_idを有し、初期IRAP AUに属さないIRAPピクチャである》とき、以下の順序付けられたステップが適用される(《》内はイタリック体である)。
1.変数NoOutputOfPriorPicsFlagが、テスト対象の復号器に対して次のように導出される。
− 現在のピクチャが、《0に等しいnuh_layer_idを有する》CRAピクチャである場合、NoOutputOfPriorPicsFlagは1に等しく設定される(no_output_of_prior_pics_flagの値にかかわらず)(《》内はイタリック体である)。
− そうでない場合、《現在のピクチャの》アクティブなSPSから導出されるpic_width_in_luma_samples、pic_height_in_luma_samples、またはsps_max_dec_pic_buffering_minus1[HighestTid]の値が、《現在のピクチャと同じレイヤIDを有する》先行するピクチャに対してアクティブなSPSからそれぞれ導出されるpic_width_in_luma_samples、pic_height_in_luma_samples、またはsps_max_dec_pic_buffering_minus1[HighestTid]の値と異なる場合、NoOutputOfPriorPicsFlagは、no_output_of_prior_pics_flagの値にかかわらず、テスト対象の復号器によって1に設定されてよい(ただし、設定されるべきでない)(《》内はイタリック体である)。
注− これらの条件下ではNoOutputOfPriorPicsFlagをno_output_of_prior_pics_flagに等しく設定することが好ましいが、テスト対象の復号器は、この場合にはNoOutputOfPriorPicsFlagを1に設定することが許容される。
− 他の場合、NoOutputOfPriorPicsFlagはno_output_of_prior_pics_flagに等しく設定される。
1.テスト対象の復号器に対して導出されるNoOutputOfPriorPicsFlagの値が《次のように》HRDに対して適用される。その結果として、(《》内はイタリック体であり、下線は、取り消し線を示す)
− NoOutputOfPriorPicsFlagの値が1に等しく《現在のピクチャのnuh_layer_idが0に等しい場合》とき、DPBの中のすべてのピクチャ記憶バッファはそれらが含んでいるピクチャを出力することなく空にされ、DPBフルネスは0に等しく設定される(《》内はイタリック体であり、下線は、取り消し線を示す)。
− 《そうでない場合、NoOutputOfPriorPicsFlagが1に等しく現在のピクチャのnuh_layer_idが0に等しくない場合、DPBの中にあり、現在のピクチャのそれに等しいnuh_layer_idを有するピクチャを含むすべてのピクチャ記憶バッファが空にされ、DPBフルネスは除去されたピクチャの数だけデクリメントされる。》(《》内はイタリック体である)
− 以下の条件の両方がDPBの中の任意のピクチャkに対して真であるとき、DPBの中のすべてのそのようなピクチャkはDPBから除去される。
− ピクチャkが、「参照用に使用されない」としてマークされている。
− ピクチャkが、0に等しいPicOutputFlagを有するか、またはそれのDPB出力時間が現在のピクチャnの第1の復号ユニット(復号ユニットmとして示す)のCPB除去時間以下である、すなわち、DpbOutputTime[k]がCpbRemovalTime(m)以下である。
− DPBから除去される各ピクチャに対して、DPBフルネスは1だけデクリメントされる。

ピクチャのDPBからの出力および除去への変更
[00202]以下の例示的なテキストは、本明細書で説明される実施形態のうちの1つまたは複数を実施するために使用され得る。HEVC規格における既存の言葉への追加およびそこからの削除は、それぞれ、《イタリック体》および取り消し線で示される(《》内はイタリック体であり、下線は、取り消し線を示す)。
F.13.5.2.2 ピクチャのDPBからの出力および除去
現在のピクチャの復号の前の(ただし、現在のピクチャの第1のスライスのスライスヘッダをパースした後の)DPBからのピクチャの出力および削除は、現在のピクチャの第1の復号ユニットがCPBから削除された時に瞬時に起こり、次のように進む。
サブクローズF.8.3.2で規定されるようなRPSのための復号プロセスが呼び出される。
− 現在のピクチャが、1に等しいNoRaslOutputFlagを有し、0に等しいnuh_layer_idを有し、ピクチャ0でないIRAPピクチャである場合、《または1に等しいNoRaslOutputFlagを有し、0に等しくないnuh_layer_idを有し、初期IRAP AUに属さないIRAPピクチャ》である場合、以下の順序付けられたステップが適用される(《》内はイタリック体である)。
1.変数NoOutputOfPriorPicsFlagが、テスト対象の復号器に対して次のように導出される。
− 現在のピクチャが、0に等しいnuh_layer_idを有するCRAピクチャである場合、NoOutputOfPriorPicsFlagは1に等しく設定される(no_output_of_prior_pics_flagの値にかかわらず)。
− そうでない場合、《現在のピクチャの》アクティブなSPSから導出されるpic_width_in_luma_samples、pic_height_in_luma_samples、またはsps_max_dec_pic_buffering_minus1[HighestTid]の値が、《現在のピクチャと同じレイヤIDを有する》先行するピクチャに対してアクティブなSPSからそれぞれ導出されるpic_width_in_luma_samples、pic_height_in_luma_samples、またはsps_max_dec_pic_buffering_minus1[HighestTid]の値と異なる場合、NoOutputOfPriorPicsFlagは、no_output_of_prior_pics_flagの値にかかわらず、テスト対象の復号器によって1に設定されてよい(ただし、設定されるべきでない)(《》内はイタリック体である)。
注− これらの条件下ではNoOutputOfPriorPicsFlagをno_output_of_prior_pics_flagに等しく設定することが好ましいが、テスト対象の復号器は、この場合にはNoOutputOfPriorPicsFlagを1に設定することが許容される。
− 他の場合、NoOutputOfPriorPicsFlagはno_output_of_prior_pics_flagに等しく設定される。
2.テスト対象の復号器に対して導出されるNoOutputOfPriorPicsFlagの値が次のようにHRDに対して適用される。
− NoOutputOfPriorPicsFlagが1に等しく《現在のピクチャのnuh_layer_idが0に等しい》場合、DPBの中のすべてのピクチャ記憶バッファはそれらが含んでいるピクチャを出力することなく空にされ、DPBフルネスは0に等しく設定される(《》内はイタリック体である)。
− 《そうでない場合、NoOutputOfPriorPicsFlagが1に等しく現在のピクチャのnuh_layer_idが0に等しくない場合、DPBの中にあり、現在のピクチャのそれに等しいnuh_layer_idを有するピクチャを含むすべてのピクチャ記憶バッファが空にされ、DPBフルネスは除去されたピクチャの数だけデクリメントされる。》(《》内はイタリック体である)
− そうでない場合(NoOutputOfPriorPicsFlagが0に等しい)、「出力用に必要とされない」および「参照用に使用されない」としてマークされているピクチャを含むすべてのピクチャ記憶バッファは空にされ(出力せずに)、DPBの中のすべての空でないピクチャ記憶バッファは、サブクローズF.13.5.2.4で規定される「バンピング」プロセスを繰り返し呼び出すことによって空にされ、DPBフルネスは0に等しく設定される。
− そうでない場合(現在のピクチャが、1に等しいNoRaslOutputFlagを有するか、または0に等しくないnuh_layer_idを有するIRAPピクチャでない)、「出力用に必要とされない」および「参照用に使用されない」としてマークされているピクチャを含むすべてのピクチャ記憶バッファは空にされる(出力せずに)。空にされた各ピクチャ記憶バッファに対して、DPBフルネスは1だけデクリメントされる。変数currLayerIdは現在の復号ピクチャのnuh_layer_idに等しく設定され、以下の条件のうちの1つまたは複数が真であるとき、空にされた各追加のピクチャ記憶バッファに対してDPBフルネスを1だけさらにデクリメントしながら、以下の条件のいずれも真でなくなるまでサブクローズF.13.5.2.4で規定される「バンピング」プロセスが繰り返し呼び出される。
− 「出力用に必要とされる」としてマークされているDPBの中のcurrLayerIdに等しいnuh_layer_idを有するピクチャの数は、アクティブなSPSからの(currLayerIdが0に等しいとき)またはcurrLayerIdの値に対してアクティブなレイヤのSPSからの(currLayerIdが0に等しくないとき)sps_max_num_reorder_pics[HighestTid]よりも大きい。
− アクティブなSPS(currLayerIdが0に等しいとき)またはcurrLayerIdの値に対してアクティブなレイヤのSPSのsps_max_latency_increase_plus1[HighestTid]は0に等しくなく、それに対して関連した変数PicLatencyCount[currLayerId]が、アクティブなSPSから(currLayerIdが0に等しいとき)またはcurrLayerIdの値に対してアクティブなレイヤのSPSから導出されるSpsMaxLatencyPictures[HighestTid]以上である「出力用に必要とされる」としてマークされているDPBの中のcurrLayerIdに等しいnuh_layer_idを有する少なくとも1つのピクチャが存在する。
− DPBの中のcurrLayerIdに等しいnuh_layer_idを有するピクチャの数は、アクティブなSPSからの(currLayerIdが0に等しいとき)またはcurrLayerIdの値に対してアクティブなレイヤのSPSからのsps_max_dec_pic_buffering_minus1[HighestTid]+1以上である。

他の考慮事項
[00203]本明細書で開示された情報および信号は、多種多様な技術および技法のいずれかを使用して表され得る。たとえば、上記の説明全体にわたって参照され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁場もしくは磁性粒子、光場もしくは光学粒子、またはそれらの任意の組合せによって表され得る。
[00204]本明細書で開示された実施形態に関して記載された様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、または両方の組合せとして実装され得る。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップが、概してそれらの機能に関して上記で説明されている。そのような機能性が、ハードウェアまたはソフトウェアのどちらとして実施されるのかは、特定の応用例と、システム全体に課せられる設計制約とに依存する。当業者は、特定の適用例ごとに様々な方法で記載された機能を実装し得るが、そのような実装の決定が、本発明の範囲からの逸脱を引き起こすと解釈されるべきではない。
[00205]本明細書に記載された技術は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せに実装され得る。そのような技法は、汎用コンピュータ、ワイヤレス通信デバイスハンドセット、またはワイヤレス通信デバイスハンドセットおよび他のデバイスにおける適用例を含む複数の用途を有する集積回路デバイスなどの、様々なデバイスのいずれかにおいて実装され得る。モジュールまたは構成要素として記載された任意の特徴は、集積論理デバイス内で一緒に、または個別であるが相互運用可能な論理デバイスとして別々に実装され得る。ソフトウェアに実装された場合、本技法は、実行されたとき、上記で説明された方法のうちの1つまたは複数を実行する命令を含むプログラムコードを備えるコンピュータ可読データ記憶媒体によって、少なくとも部分的に実現され得る。コンピュータ可読データ記憶媒体は、パッケージング材料を含むことがあるコンピュータプログラム製品の一部を形成し得る。コンピュータ可読媒体は、同期型ダイナミックランダムアクセスメモリ(SDRAM)などのランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、不揮発性ランダムアクセスメモリ(NVRAM)、電気消去可能プログラマブル読取り専用メモリ(EEPROM(登録商標))、フラッシュメモリ、磁気または光学データ記憶媒体などの、メモリまたはデータ記憶媒体を備え得る。本技法は、追加または代替として、伝搬信号または電波などの、命令またはデータ構造の形態でプログラムコードを搬送または伝達し、コンピュータによってアクセスされ、読み取られ、および/または実行され得るコンピュータ可読通信媒体によって、少なくとも部分的に実現され得る。
[00206]プログラムコードは、1つまたは複数のデジタル信号プロセッサ(DSP)などの1つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルロジックアレイ(FPGA)、または他の等価の集積回路もしくはディスクリート論理回路を含み得るプロセッサによって実行され得る。そのようなプロセッサは、本開示に記載された技法のいずれかを実行するように構成され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、DSPコアと連携する1つまたは複数のマイクロプロセッサ、あるいは任意の他のそのような構成として実装され得る。したがって、本明細書で使用する「プロセッサ」という用語は、上記の構造、上記の構造の任意の組合せ、または本明細書に記載された技法の実装に適した任意の他の構造もしくは装置のいずれかを指し得る。さらに、いくつかの態様では、本明細書に記載された機能は、符号化および復号のために構成された専用のソフトウェアモジュールもしくはハードウェアモジュール内に提供され得るか、または複合ビデオ符号化器/復号器(コーデック)に組み込まれ得る。また、本技法は、1つまたは複数の回路または論理要素で十分に実装され得る。
[00207]本開示の技法は、ワイヤレスハンドセット、集積回路(IC)またはICのセット(たとえば、チップセット)を含む、多種多様なデバイスまたは装置で実装され得る。様々なコンポーネント、モジュール、またはユニットは、開示されている技術を実行するように構成されたデバイスの機能的態様を強調するように本開示において説明されているが、異なるハードウェアユニットによる実現を必ずしも必要としない。むしろ、上記で説明したように、様々なユニットが、適切なソフトウェアおよび/またはファームウェアとともに、上記で説明した1つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作可能なハードウェアユニットの集合によって与えられ得る。
[00208]本発明の様々な実施形態について説明した。これらおよび他の実施形態は、以下の特許請求の範囲内に入る。
以下に本願発明の当初の特許請求の範囲に記載された発明を付記する。
[C1]
ビデオ情報をコーディングするように構成された装置であって、
ベースレイヤ(BL)およびエンハンスメントレイヤ(EL)に関連付けられたビデオ情報を記憶するように構成されたメモリユニット、前記BLは、第1のアクセスユニットの中にBLピクチャを有し、前記ELは、前記第1のアクセスユニットの中にELピクチャを有し、前記BLピクチャは、それに関連付けられたフラグを有する、と、
前記メモリユニットと通信しているプロセッサと
を備え、前記プロセッサは、
前記BLピクチャに関連付けられた前記フラグの値を決定することと、
前記フラグの前記値に基づいて、(1)前記ELピクチャがコーディングされる前に、復号ピクチャバッファ(DPB)の中の1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去すること、または(2)前記DPBの中の前記1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去することを控えることのうちの1つを実行することと
を行うように構成される、装置。
[C2]
前記BLピクチャに関連付けられた前記フラグは、前記第1のアクセスユニットが、2つのビットストリームが前記BLと前記ELとを備える単一のビットストリームへと互いに接合される接合ポイントの直後にくるかどうかを示す、
C1に記載の装置。
[C3]
前記プロセッサは、前記フラグの前記値が前記第1のアクセスユニットが接合ポイントの直後にくることを示すと決定することに基づいて、前記ELピクチャがコーディングされる前に、前記DPBの中の前記1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去することを行うようにさらに構成される、
C1に記載の装置。
[C4]
前記プロセッサは、前記フラグの前記値が前記第1のアクセスユニットが接合ポイントの直後にこないことを示すと決定することに基づいて、前記DPBの中の前記1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去することを控えることを行うようにさらに構成される、
C1に記載の装置。
[C5]
前記ELピクチャは、イントラランダムアクセスポイント(IRAP)ピクチャでない、
C1に記載の装置。
[C6]
前記第1のアクセスユニットは、初期IRAPアクセスユニットである、
C1に記載の装置。
[C7]
前記BLピクチャは、1に等しいNoRaslOutputFlagを有する、
C1に記載の装置。
[C8]
前記BLピクチャに関連付けられた前記フラグは、NoClrasOutputFlagである、
C1に記載の装置。
[C9]
前記BLピクチャは、IRAPピクチャである、
C1に記載の装置。
[C10]
前記BLピクチャは、前記ビデオ情報に対して使用されるすべてのレイヤIDのうちの最小のレイヤIDに関連付けられる、
C1に記載の装置。
[C11]
符号化器を備え、前記プロセッサは、ビットストリームの中の前記ビデオ情報を符号化することを行うようにさらに構成される、
C1に記載の装置。
[C12]
復号器を備え、前記プロセッサは、ビットストリームの中の前記ビデオ情報を復号することを行うようにさらに構成される、
C1に記載の装置。
[C13]
コンピュータ、ノートブック、ラップトップコンピュータ、タブレットコンピュータ、セットトップボックス、電話ハンドセット、スマートフォン、スマートパッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、および車載コンピュータのうちの1つまたは複数からなるグループの中から選択されたデバイスを備える、
C1に記載の装置。
[C14]
ビデオ情報を符号化する方法であって、
第1のアクセスユニットの中のBLピクチャに関連付けられたフラグの値を決定することと、
前記フラグの前記値に基づいて、(1)前記第1のアクセスユニットの中のELピクチャがコーディングされる前に、復号ピクチャバッファ(DPB)の中の1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去すること、または(2)前記DPBの中の前記1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去することを控えることのうちの1つを実行することと
を備える、方法。
[C15]
前記BLピクチャに関連付けられた前記フラグは、前記第1のアクセスユニットが、2つのビットストリームが前記BLと前記ELとを備える単一のビットストリームへと互いに接合される接合ポイントの直後にくるかどうかを示す、
C14に記載の方法。
[C16]
(1)前記フラグの前記値が前記第1のアクセスユニットが接合ポイントの直後にくることを示すと決定することに基づいて、前記ELピクチャがコーディングされる前に、前記DPBの中の前記1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去すること、または(2)前記フラグの前記値が前記第1のアクセスユニットが接合ポイントの直後にこないことを示すと決定することに基づいて、前記DPBの中の前記1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去することを控えることのうちの少なくとも1つを、さらに備える、
C14に記載の方法。
[C17]
前記ELピクチャは、イントラランダムアクセスポイント(IRAP)ピクチャでない、
C14に記載の方法。
[C18]
前記第1のアクセスユニットは、初期IRAPアクセスユニットである、
C14に記載の方法。
[C19]
前記BLピクチャは、1に等しいNoRaslOutputFlagを有する、
C14に記載の方法。
[C20]
前記BLピクチャに関連付けられた前記フラグは、NoClrasOutputFlagである、
C14に記載の方法。
[C21]
前記BLピクチャは、IRAPピクチャである、
C14に記載の方法。
[C22]
前記BLピクチャは、前記ビデオ情報に対して使用されるすべてのレイヤIDのうちの最小のレイヤIDに関連付けられる、
C14に記載の方法。
[C23]
実行されたとき、装置に、
ベースレイヤ(BL)およびエンハンスメントレイヤ(EL)に関連付けられたビデオ情報を記憶することと、前記BLは、第1のアクセスユニットの中にBLピクチャを有し、前記ELは、前記第1のアクセスユニットの中にELピクチャを有し、ここにおいて、前記BLピクチャは、それに関連付けられたフラグを有する、
前記BLピクチャに関連付けられた前記フラグの値を決定することと、
前記フラグの前記値に基づいて、(1)前記ELピクチャがコーディングされる前に、復号ピクチャバッファ(DPB)の中の1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去すること、または(2)前記DPBの中の前記1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去することを控えることのうちの1つを実行することと
を備えるプロセスを実行させるコードを備える非一時的コンピュータ可読媒体。
[C24]
前記BLピクチャに関連付けられた前記フラグは、前記第1のアクセスユニットが、2つのビットストリームが前記BLと前記ELとを備える単一のビットストリームへと互いに接合される接合ポイントの直後にくるかどうかを示す、
C23に記載のコンピュータ可読媒体。
[C25]
前記プロセスは、(1)前記フラグの前記値が前記第1のアクセスユニットが接合ポイントの直後にくることを示すと決定することに基づいて、前記ELピクチャがコーディングされる前に、前記DPBの中の前記1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去すること、または(2)前記フラグの前記値が前記第1のアクセスユニットが接合ポイントの直後にこないことを示すと決定することに基づいて、前記DPBの中の前記1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去することを控えることのうちの少なくとも1つをさらに備える、
C23に記載のコンピュータ可読媒体。
[C26]
ビデオ情報をコーディングするように構成されたビデオコーディングデバイスであって、
ベースレイヤ(BL)およびエンハンスメントレイヤ(EL)に関連付けられたビデオ情報を記憶するための手段、前記BLは、第1のアクセスユニットの中にBLピクチャを有し、前記ELは、前記第1のアクセスユニットの中にELピクチャを有し、前記BLピクチャは、それに関連付けられたフラグを有する、と、
前記BLピクチャに関連付けられた前記フラグの値を決定するための手段と、
前記フラグの前記値に基づいて、(1)前記ELピクチャがコーディングされる前に、復号ピクチャバッファ(DPB)の中の1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去すること、または(2)前記DPBの中の前記1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去することを控えることのうちの1つを実行するための手段と
を備える、ビデオコーディングデバイス。
[C27]
前記BLピクチャに関連付けられた前記フラグは、前記第1のアクセスユニットが、2つのビットストリームが前記BLと前記ELとを備える単一のビットストリームへと互いに接合される接合ポイントの直後にくるかどうかを示す、
C26に記載のビデオコーディングデバイス。
[C28]
(1)前記フラグの前記値が前記第1のアクセスユニットが接合ポイントの直後にくることを示すと決定することに基づいて、前記ELピクチャがコーディングされる前に、前記DPBの中の前記1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去するための手段、または(2)前記フラグの前記値が前記第1のアクセスユニットが接合ポイントの直後にこないことを示すと決定することに基づいて、前記DPBの中の前記1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去することを控えるための手段のうちの少なくとも1つを、さらに備える、
C26に記載のビデオコーディングデバイス。

Claims (15)

  1. ビデオ情報をコーディングするように構成された装置であって、
    ベースレイヤ(BL)およびエンハンスメントレイヤ(EL)に関連付けられたビデオ情報を記憶するように構成されたメモリユニット、前記BLは、第1のアクセスユニットの中にBLピクチャを有し、前記ELは、前記第1のアクセスユニットの中にELピクチャを有し、前記BLピクチャは、それに関連付けられたフラグを有し、前記BLピクチャは、前記ビデオ情報に対して使用されるすべてのレイヤIDのうちの最小のレイヤIDに関連付けられる、と、
    前記メモリユニットと通信しているプロセッサと
    を備え、前記プロセッサは、
    前記BLピクチャに関連付けられたNoClrasOutputFlagフラグの値が第1の値に等しいかどうかを決定すること、ここにおいて、前記NoClrasOutputFlagフラグは、クロスレイヤランダムアクセススキップ(CL−RAS)ピクチャが出力されるかどうかを示す、と、
    前記NoClrasOutputFlagフラグの前記値が前記第1の値に等しい決定した場合、DPBの中の1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャ出力の後で除去することと
    を行うように構成される、装置。
  2. 前記ELピクチャに関連付けられ、前記NoClrasOutputFlagフラグの値に基づいて推定されるNoOutputOfPriorPicsFlagは、前記第1のアクセスユニットが、2つのビットストリームが前記BLと前記ELとを備える単一のビットストリームへと互いに接合される接合ポイントの直後にくるかどうかをさらに示す、
    請求項1に記載の装置。
  3. 前記プロセッサは、前記ELピクチャがIRAPピクチャでなく、前記NoClrasOutputFlagフラグの前記値が1に等しいとの決定に基づいて、前記ELピクチャがコーディングされる前に、前記DPBの中の前記1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去することを行うようにさらに構成される、
    請求項1に記載の装置。
  4. 前記プロセッサは、前記ELピクチャがIRAPピクチャでなく、前記NoClrasOutputFlagフラグの前記値が1に等しくないとの決定に基づいて、前記DPBの中の前記1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去することを控えることを行うようにさらに構成される、
    請求項1に記載の装置。
  5. 前記ELピクチャは、レイヤ初期化ピクチャ(LIP)である、
    請求項1に記載の装置。
  6. 前記第1のアクセスユニットは、初期IRAPアクセスユニットである、
    請求項1に記載の装置。
  7. 前記BLピクチャは、1に等しいNoRaslOutputFlagを有する、
    請求項1に記載の装置。
  8. 前記BLピクチャは、IRAPピクチャである、
    請求項1に記載の装置。
  9. 前記装置は、符号化器または復号器を備え、前記プロセッサは、ビットストリームの中の前記ビデオ情報を符号化または復号することを行うようにさらに構成される、
    請求項1に記載の装置。
  10. ビデオ情報を符号化する方法であって、
    第1のアクセスユニットの中のBLピクチャに関連付けられたNoClrasOutputFlagフラグの値が第1の値に等しいかどうかを決定すること、ここにおいて、前記BLピクチャは、前記ビデオ情報に対して使用されるすべてのレイヤIDのうちの最小のレイヤIDに関連付けられ、前記NoClrasOutputFlagフラグは、クロスレイヤランダムアクセススキップ(CL−RAS)ピクチャが出力されるかどうかを示す、と、
    前記NoClrasOutputFlagフラグの前記値が前記第1の値に等しい決定した場合、DPBの中の1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャ出力の後で除去することのうちの1つを実行することと
    を備える、方法。
  11. 前記ELピクチャに関連付けられ、前記NoClrasOutputFlagフラグの値に基づいて推定されるNoOutputOfPriorPicsFlagは、前記第1のアクセスユニットが、2つのビットストリームが前記BLと前記ELとを備える単一のビットストリームへと互いに接合される接合ポイントの直後にくるかどうかを示す、
    請求項10に記載の方法。
  12. (1)前記ELピクチャがIRAPピクチャでなく、前記NoClrasOutputFlagフラグの前記値が1に等しいとの決定に基づいて、前記ELピクチャがコーディングされる前に、前記DPBの中の前記1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去すること、または(2)前記ELピクチャがIRAPピクチャでなく、前記NoClrasOutputFlagフラグの前記値が1に等しくないと決定することに基づいて、前記DPBの中の前記1つまたは複数のELピクチャを、前記1つまたは複数のELピクチャを出力することなく除去することを控えることのうちの少なくとも1つを、さらに備える、
    請求項10に記載の方法。
  13. 前記ELピクチャは、レイヤ初期化ピクチャ(LIP)である、
    請求項10に記載の方法。
  14. 前記BLピクチャは、IRAPピクチャである、
    請求項10に記載の方法。
  15. 実行されたとき、装置に、請求項10乃至14のいずれか一項に記載の方法を実行することを行わせるコードを備える、非一時的コンピュータ可読媒体。
JP2016547995A 2013-10-14 2014-10-14 ビデオ情報のスケーラブルコーディングのためのデバイスおよび方法 Active JP6608374B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361890782P 2013-10-14 2013-10-14
US61/890,782 2013-10-14
US14/513,121 US20150103878A1 (en) 2013-10-14 2014-10-13 Device and method for scalable coding of video information
US14/513,121 2014-10-13
PCT/US2014/060451 WO2015057683A1 (en) 2013-10-14 2014-10-14 Device and method for scalable coding of video information

Publications (3)

Publication Number Publication Date
JP2016537930A JP2016537930A (ja) 2016-12-01
JP2016537930A5 JP2016537930A5 (ja) 2017-10-26
JP6608374B2 true JP6608374B2 (ja) 2019-11-20

Family

ID=52809622

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2016547998A Pending JP2016533698A (ja) 2013-10-14 2014-10-14 ビデオ情報のスケーラブルコーディングのためのデバイスおよび方法
JP2016547995A Active JP6608374B2 (ja) 2013-10-14 2014-10-14 ビデオ情報のスケーラブルコーディングのためのデバイスおよび方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2016547998A Pending JP2016533698A (ja) 2013-10-14 2014-10-14 ビデオ情報のスケーラブルコーディングのためのデバイスおよび方法

Country Status (8)

Country Link
US (2) US20150103878A1 (ja)
EP (2) EP3058728B1 (ja)
JP (2) JP2016533698A (ja)
KR (2) KR20160072123A (ja)
CN (2) CN105637863A (ja)
ES (1) ES2834481T3 (ja)
MX (2) MX2016004643A (ja)
WO (2) WO2015057683A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106937121B (zh) * 2015-12-31 2021-12-10 中兴通讯股份有限公司 图像解码和编码方法、解码和编码装置、解码器及编码器
CN106162180A (zh) * 2016-06-30 2016-11-23 北京奇艺世纪科技有限公司 一种图像编解码方法及装置
CN111989920A (zh) * 2018-02-20 2020-11-24 弗劳恩霍夫应用研究促进协会 支持变化的分辨率和/或有效地处理区域级打包的图片/视频编码
GB2575435B (en) * 2018-06-29 2022-02-09 Imagination Tech Ltd Guaranteed data compression
US10595048B1 (en) * 2018-09-13 2020-03-17 Tencent America LLC Method and device using high layer syntax architecture for coding and decoding
JP7431330B2 (ja) 2019-12-26 2024-02-14 バイトダンス インコーポレイテッド ビデオコーディングにおけるプロファイル、層及びレイヤの指示
KR20220114557A (ko) 2019-12-26 2022-08-17 바이트댄스 아이엔씨 코딩된 픽처 내에서 디코딩 순서를 구현하기 위한 기술들
JP7425204B2 (ja) 2019-12-26 2024-01-30 バイトダンス インコーポレイテッド ビデオビットストリームにおける仮想参照デコーダパラメータのシグナリングに対する制約
EP4066387A4 (en) 2019-12-27 2023-02-15 ByteDance Inc. SUBPICTURE SIGNALING IN PARAMETER SETS
KR20220125235A (ko) * 2020-01-09 2022-09-14 바이트댄스 아이엔씨 상이한 sei 메시지들의 디코딩 순서

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6501797B1 (en) * 1999-07-06 2002-12-31 Koninklijke Phillips Electronics N.V. System and method for improved fine granular scalable video using base layer coding information
JP2006203662A (ja) * 2005-01-21 2006-08-03 Toshiba Corp 動画像符号化装置・復号化装置及び符号化ストリーム生成方法
CN101263513A (zh) * 2005-07-15 2008-09-10 德克萨斯仪器股份有限公司 过滤和扭曲的运动补偿
EP1949701A1 (en) * 2005-10-11 2008-07-30 Nokia Corporation Efficient decoded picture buffer management for scalable video coding
US20080002773A1 (en) * 2006-06-26 2008-01-03 Texas Instruments Incorporated Video decoded picture buffer
ES2702704T3 (es) * 2006-10-16 2019-03-05 Nokia Technologies Oy Sistema y procedimiento para implementar una administración eficiente de memoria intermedia decodificada en codificación de video de vistas múltiples
KR101349836B1 (ko) * 2006-11-17 2014-01-10 엘지전자 주식회사 비디오 신호의 디코딩/인코딩 방법 및 장치
CN101622878B (zh) * 2007-01-10 2015-01-14 汤姆逊许可公司 用于实现位深度可分级性的视频编解码方法和视频编解码设备
MX2009011217A (es) * 2007-04-18 2009-12-07 Thomson Licensing Sistemas de codificacion.
US8363721B2 (en) * 2009-03-26 2013-01-29 Cisco Technology, Inc. Reference picture prediction for video coding
CN103416003B (zh) * 2011-01-14 2015-05-27 维德约股份有限公司 改进的nal单元头部
US20120230409A1 (en) * 2011-03-07 2012-09-13 Qualcomm Incorporated Decoded picture buffer management
US20140003534A1 (en) * 2012-07-02 2014-01-02 Sony Corporation Video coding system with temporal scalability and method of operation thereof
CA2897152C (en) * 2013-01-07 2019-03-05 Kemal Ugur Inter-layer video encoding and decoding with adaptive resolution change at indicated switching points
US9591321B2 (en) * 2013-04-07 2017-03-07 Dolby International Ab Signaling change in output layer sets
WO2015015058A1 (en) * 2013-07-31 2015-02-05 Nokia Corporation Method and apparatus for video coding and decoding

Also Published As

Publication number Publication date
EP3058728B1 (en) 2020-09-02
KR20160072123A (ko) 2016-06-22
JP2016533698A (ja) 2016-10-27
CN105637862B (zh) 2019-04-26
US20150103887A1 (en) 2015-04-16
MX2016004643A (es) 2016-08-05
MX2016004634A (es) 2016-08-05
CN105637863A (zh) 2016-06-01
ES2834481T3 (es) 2021-06-17
WO2015057683A1 (en) 2015-04-23
WO2015057704A1 (en) 2015-04-23
EP3058728A1 (en) 2016-08-24
KR20160072124A (ko) 2016-06-22
CN105637862A (zh) 2016-06-01
EP3058727A1 (en) 2016-08-24
JP2016537930A (ja) 2016-12-01
MX369062B (es) 2019-10-28
KR102329656B1 (ko) 2021-11-19
US20150103878A1 (en) 2015-04-16

Similar Documents

Publication Publication Date Title
JP6554477B2 (ja) マルチレイヤビットストリームのためのピクチャのフラッシングおよび復号ピクチャバッファのパラメータ推測
JP6580576B2 (ja) ビデオ情報のスケーラブルコーディングのためのデバイスおよび方法
JP6513685B2 (ja) ビデオコーディングにおけるNoOutputOfPriorPicsFlagの改善された推論
JP6622211B2 (ja) マルチレイヤビットストリームのためのシーケンス終了nalユニット情報の導出
JP6608374B2 (ja) ビデオ情報のスケーラブルコーディングのためのデバイスおよび方法
JP6608395B2 (ja) スケーラブルビデオコード化におけるビットストリーム適合制約
JP6513684B2 (ja) マルチレイヤビデオコーディングにおける異なるコーデックのベースレイヤのサポート
JP2016539545A (ja) ビデオ情報のスケーラブルコーディングのためのデバイスおよび方法
JP2017510121A (ja) Hevcマルチレイヤ拡張における非hevcベースレイヤのサポート
JP6434044B2 (ja) ビデオ情報のスケーラブルコード化のための機器及び方法
JP2017522793A (ja) マルチレイヤコーデックのためのピクチャ順序カウントリセット
JP2016526855A (ja) ビデオ情報のスケーラブルコーディングのためのデバイスおよび方法
NZ719895B2 (en) Improved inference of nooutputofpriorpicsflag in video coding

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160629

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170915

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170915

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180827

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180911

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181211

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190507

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190521

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190821

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190924

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191023

R150 Certificate of patent or registration of utility model

Ref document number: 6608374

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250