[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

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

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

Info

Publication number
JP2017507517A
JP2017507517A JP2016541218A JP2016541218A JP2017507517A JP 2017507517 A JP2017507517 A JP 2017507517A JP 2016541218 A JP2016541218 A JP 2016541218A JP 2016541218 A JP2016541218 A JP 2016541218A JP 2017507517 A JP2017507517 A JP 2017507517A
Authority
JP
Japan
Prior art keywords
picture
poc
current picture
video
reset
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.)
Granted
Application number
JP2016541218A
Other languages
English (en)
Other versions
JP2017507517A5 (ja
JP6517213B2 (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 JP2017507517A publication Critical patent/JP2017507517A/ja
Publication of JP2017507517A5 publication Critical patent/JP2017507517A5/ja
Application granted granted Critical
Publication of JP6517213B2 publication Critical patent/JP6517213B2/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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

ビデオ情報をコーディングするように構成された装置は、メモリユニットと、メモリユニットと通信しているプロセッサと、を含む。メモリユニットは、現在のピクチャを有する第1のビデオレイヤに関連付けられたビデオ情報を記憶するように構成される。プロセッサは、現在のピクチャに関連付けられた第1のオフセットを処理すること、第1のオフセットは、(a)現在のピクチャに復号順序において先行する第1のビデオレイヤの中の前のピクチャの第1のピクチャ順序カウント(POC)の最上位ビット(MSB)と、(b)現在のピクチャの第2のPOCのMSBとの間の差分を示し、を行うように構成される。

Description

[0001]本開示は、ビデオコーディングおよび圧縮の分野に関し、詳細には、スケーラブルビデオコーディング(SVC:scalable video coding)、マルチビュービデオコーディング(MVC:multiview video coding)、または3次元(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]本開示のシステム、方法、およびデバイスは、いくつかの発明的態様をそれぞれ有し、それらの態様は、1つとして、本明細書で開示する望ましい属性を単独で担うものではない。
[0006]一態様では、ビデオ情報をコーディング(たとえば、符号化または復号)するように構成された装置は、メモリユニットと、メモリユニットと通信しているプロセッサとを含む。メモリユニットは、現在のピクチャを有する第1のビデオレイヤに関連付けられたビデオ情報を記憶するように構成される。プロセッサは、現在のピクチャに関連付けられた第1のオフセットを処理すること、第1のオフセットは、(a)現在のピクチャに復号順序において先行する第1のビデオレイヤの中の前のピクチャの第1のピクチャ順序カウント(POC)の最上位ビット(MSB)と、(b)現在のピクチャの第2のPOCのMSBとの間の差分を示し、を行うように構成される。
[0007]別の態様では、ビデオ情報をコーディングする方法は、第1のビデオレイヤの中の現在のピクチャに関連付けられた第1のオフセットを処理すること、第1のオフセットは、(a)現在のピクチャに復号順序において先行する第1のビデオレイヤの中の前のピクチャの第1のPOCの最上位ビット(MSB)と、(b)現在のピクチャの第2のPOCのMSBとの間の差分を示し、を備える。
[0008]別の態様では、非一時的コンピュータ可読媒体は、実行されたとき、装置にプロセスを実行させるコードを備える。プロセスは、現在のピクチャを有する第1のビデオレイヤに関連付けられたビデオ情報を記憶することと、現在のピクチャに関連付けられた第1のオフセットを処理することと、第1のオフセットは、(a)現在のピクチャに復号順序において先行する第1のビデオレイヤの中の前のピクチャの第1のPOCの最上位ビット(MSB)と、(b)現在のピクチャの第2のPOCのMSBとの間の差分を示し、を含む。
[0009]別の態様では、ビデオ情報をコーディングするように構成されたビデオコーディングデバイスは、現在のピクチャを有する第1のビデオレイヤに関連付けられたビデオ情報を記憶するための手段と、現在のピクチャに関連付けられた第1のオフセットを処理するための手段と、第1のオフセットは、(a)現在のピクチャに復号順序において先行する第1のビデオレイヤの中の前のピクチャの第1のPOCの最上位ビット(MSB)と、(b)現在のピクチャの第2のPOCのMSBとの間の差分を示し、を備える。
[0010]本開示で説明する態様による技法を利用し得る例示的なビデオ符号化および復号システムを示すブロック図。 [0011]本開示で説明する態様による技法を実行し得る別の例示的なビデオ符号化および復号システムを示すブロック図。 [0012]本開示で説明する態様による技法を実装し得るビデオエンコーダの一例を示すブロック図。 [0013]本開示で説明する態様による技法を実装し得るビデオエンコーダの一例を示すブロック図。 [0014]本開示で説明する態様による技法を実装し得るビデオデコーダの一例を示すブロック図。 [0015]本開示で説明する態様による技法を実装し得るビデオデコーダの一例を示すブロック図。 [0016]異なるレイヤの中のピクチャの例示的な構成を示すブロック図。 [0017]異なるレイヤにおけるピクチャのPOC値を示す表。 [0018]異なるレイヤにおけるピクチャの例示的な構成を示すブロック図。 [0019]異なるレイヤにおけるピクチャのPOC値を示す表。 [0020]本開示の一実施形態による、ビデオ情報をコーディングする方法を示すフローチャート。
[0021]一般に、本開示は、HEVC(高効率ビデオコーディング)などのアドバンストビデオコーデックのコンテキストにおける、マルチレイヤビデオコーディングのためのPOC管理に関する。より具体的には、本開示は、HEVCのスケーラブルビデオコーディング(SVC)拡張におけるレイヤ間予測の実行を改善するためのシステムおよび方法に関する。
[0022]スケーラブルビデオコーディング(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つのビューの情報は、別のビューの情報(たとえば、動き推定、動きベクトル予測および/または他の冗長)をコーディング(たとえば、符号化または復号)するために利用され得る。
[0023]いくつかのビデオコーディング方式では、ピクチャが出力または表示されるべき順序を示すために、ピクチャ順序カウント(POC)が使用され得る。さらに、いくつかの実装形態では、いくつかのタイプのピクチャがビットストリームの中で処理されるときはいつでも、POCの値はリセット(たとえば、ゼロに設定、ビットストリームの中でシグナリングされる値に設定、またはビットストリームの中に含まれる情報から導出)され得る。たとえば、ある種のランダムアクセスポイントピクチャがビットストリームの中で処理されると、POCはリセットされ得る。
[0024]ビットレート効率を改善するために、いくつかの実装形態では、POCの一部分だけがシグナリングされる。たとえば、POCの最下位ビット(LSB)がシグナリングされてよく、POCの最上位ビット(MSB)は、ピクチャのネットワークアブストラクションレイヤ(NAL)ユニットタイプと、現在のピクチャに復号順序において先行するピクチャのLSBおよび/またはMSBとを使用して計算(たとえば、決定)され得る。他の実装形態では、POC導出プロセスの誤り耐性(error resilience)を改善するために、POC MSB情報が、クリーンランダムアクセス(CRA:clean random access)ピクチャとブロークンリンクアクセス(BLA:broken link access)ピクチャとを含むいくつかのタイプのピクチャのスライスヘッダ拡張の中でシグナリングされ得る。しかしながら、CRAピクチャおよびBLAピクチャ(NoRaslOutputFlagが1としての値に等しい)だけのためのPOC値を計算するために、シグナリングされるPOC MSB情報を使用することは、不正確なPOC値をもたらすことがあり、または、場合によっては、複数のレイヤにわたって位置合わせされないPOC値をもたらすことがある。複数のレイヤにわたるアライメント(たとえば、クロスアライメント)は、たとえば、アクセスユニットのピクチャが同時に、またはほぼ同時に出力されるような同じPOC値を、アクセスユニットの各ピクチャが有するときに起きる。そのような非アライメントは、単一のアクセスユニットの中のピクチャが同一のPOC値を有することを義務付ける(mandates)、スケーラブル高効率ビデオコーディング(SHVC)規格によって必要とされる制約に違反することになる。
[0025]したがって、POC値を導出するための改善されたコーディング方法が望まれる。
[0026]本開示では、マルチレイヤビデオコーディングのためのPOC導出を改善するために使用され得る様々な技法が説明される。本開示のいくつかの実施形態では、POC MSB情報(本開示で、「POC MSBサイクル」と呼ばれることがある)が、CRAピクチャおよびBLAピクチャだけでなく瞬時デコーダリフレッシュ(IDR:instantaneous decoder refresh)ピクチャとも一緒に提供され得る。IDRピクチャとともにPOC MSB情報を提供することによって、誤り耐性および改善されたPOC導出が、IDRピクチャに対して同様に実現され得る。本開示のいくつかの実施形態では、POC MSB情報は、POC MSB情報がPOCリセットピクチャを用いて提供されるか否かに基づいて、様々な方法で利用され得る。たとえば、POC MSB情報がPOCリセットピクチャを用いて提供される場合、POC MSB情報は、復号されたピクチャバッファ(DPB)の中のピクチャのPOC値を更新するために使用され得る。POC MSB情報が非POCリセットピクチャを用いて提供される場合、POC MSB情報は、非POCリセットピクチャの計算された(たとえば、決定する)POCに対して使用される。ピクチャがPOCリセットピクチャであるかどうかを考慮することによって、コーダは、POCリセットの後、DPBの中のピクチャの順序が乱れることを防ぐことができる場合がある。
[0027]以下の説明では、いくつかの実施形態に関係するH.264/AVC技法が記載され、HEVC規格および関係する技法も説明される。HEVC規格および/またはH.264規格のコンテキストにおいて、いくつかの実施形態が本明細書に記載されるが、本明細書で開示されるシステムおよび方法が任意の適切なビデオコーディング規格に適用可能であり得ることを、当業者なら諒解されよう。たとえば、本明細書で開示する実施形態は、(たとえば、国際電気通信連合電気通信標準化部門[ITU−T]ビデオコーディングエキスパートグループ[VCEG]または国際標準化機構/国際電気標準会議[ISO/IEC]ムービングピクチャエキスパートグループ[MPEG]によって開発された規格を含む)次の規格、すなわち、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つまたは複数に適用可能であり得る。
[0028]HEVCは、概して、多くの点で、前のビデオコーディング規格のフレームワークに従う。HEVCにおける予測の単位は、いくつかの前のビデオコーディング規格における予測の単位(たとえば、マクロブロック)とは異なる。事実上、マクロブロックの概念は、いくつかの前のビデオコーディング規格において理解されているように、HEVC中に存在しない。マクロブロックは、他の考えられる利益の中でも高いフレキシビリティを与え得る、4分木方式に基づく階層構造と置き換えられる。たとえば、HEVC方式内で、コーディングユニット(CU)、予測ユニット(PU:Prediction Unit)、および変換ユニット(TU:Transform Unit)という3つのタイプのブロックが定義される。CUは領域分割の基本単位を指すことがある。CUはマクロブロックの概念に類似するとみなされてよいが、HEVCは、CUの最大サイズを制限せず、コンテンツ適応性を改善するために4つの等しいサイズのCUへの繰り返しの(recursive)分割を可能にし得る。PUは、インター/イントラ予測の基本単位とみなされてよく、単一のPUは、不規則なイメージパターンを効率的にコーディングするために、複数の任意形状区分を含み得る。TUは、変換の基本単位とみなされてよい。TUはPUとは無関係に定義され得るが、TUのサイズはTUが属するCUのサイズに限定されることがある。3つの異なる概念へのブロック構造のこの分離は、各ユニットがそのユニットのそれぞれの役割に従って最適化されることを可能にし得、このことはコーディング効率の改善をもたらし得る。
[0029]単に説明の目的で、本明細書で開示するいくつかの実施形態は、ビデオデータの2つのレイヤ(たとえば、ベースレイヤのなどの下位レイヤおよびエンハンスメントレイヤなどの上位レイヤ)のみを含む例を用いて説明する。ビデオデータの「レイヤ」は、概して、ビュー、フレームレート、解像度などの、少なくとも1つの共通の特性を有するピクチャのシーケンスを指すことがある。たとえば、レイヤは、マルチビュービデオデータの特定のビュー(たとえば、視点(perspective))に関連付けられたビデオデータを含み得る。別の例として、レイヤは、スケーラブルビデオデータの特定のレイヤに関連付けられたビデオデータを含み得る。したがって、本開示は、ビデオデータのレイヤおよびビューを互換的に指すことがある。たとえば、ビデオデータのビューは、ビデオデータのレイヤと呼ばれることがあり、ビデオデータのレイヤは、ビデオデータのビューと呼ばれることがある。加えて、マルチレイヤコーデック(マルチレイヤビデオコーダまたはマルチレイヤエンコーダデコーダとも呼ばれる)は、マルチビューコーデックまたはスケーラブルコーデック(たとえば、MV−HEVC、3D−HEVC、SHVC、または別のマルチレイヤコーディング技法を使用してビデオデータを符号化および/または復号するように構成されるコーデック)を一緒に指すことがある。ビデオ符号化およびビデオ復号は、概して、両方ともビデオコーディングと呼ばれることがある。そのような例が複数のベースレイヤおよび/またはエンハンスメントレイヤを含む構成に適用可能であり得ることを理解されたい。さらに、説明を簡単にするために、以下の開示は、いくつかの実施形態に関して「フレーム」または「ブロック」という用語を含む。しかしながら、これらの用語は、限定的であることを意味しない。たとえば、以下で説明する技法は、ブロック(たとえば、CU、PU、TU、マクロブロックなど)、スライス、フレームなどの、任意の適切なビデオユニットとともに使用され得る。
ビデオコーディング規格
[0030]ビデオ画像、TV画像、静止画像、またはビデオレコーダもしくはコンピュータによって生成された画像などの、デジタル画像は、水平ラインおよび垂直ラインで構成されたピクセルまたはサンプルからなり得る。単一の画像中のピクセルの数は一般に数万個である。各ピクセルは、一般に、ルミナンス情報とクロミナンス情報とを含んでいる。圧縮がなければ、画像エンコーダから画像デコーダに搬送されるべき情報の純粋な量は、リアルタイム画像伝送を不可能にすることになる。送信されるべき情報の量を低減するために、JPEG、MPEGおよびH.263規格など、いくつかの異なる圧縮方法が開発された。
[0031]ビデオコーディング規格は、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とを含む。
[0032]さらに、ビデオコーディング規格、すなわち、HEVCが、ITU−T VCEGと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によって、それぞれ開発されている。
ビデオコーディングシステム
[0033]新規のシステム、装置、および方法の様々な態様は、これ以降、添付図面を参照しながら、より十分に説明される。しかしながら、本開示は、多くの異なる形態で実施可能であり、本開示の全体を通して示される任意の特定の構造または機能に限定されるものと解釈されるべきでない。むしろ、本開示が、入念で完全であり、本開示の範囲を当業者に十分に伝達するように、これらの態様が提供される。本明細書の教示に基づいて、本開示の範囲は、本開示の他の態様と無関係に実装されるにせよ、本開示の他の態様と組み合わせて実装されるにせよ、本明細書で開示する新規のシステム、装置、および方法のいかなる態様をもカバーするものであることを、当業者なら諒解されたい。たとえば、本明細書に記載される任意の数の態様を使用して装置が実装されてよく、または方法が実施されてもよい。さらに、本開示の範囲は、本明細書に記載する本開示の様々な態様に加えてまたはそれらの態様以外に、他の構造、機能、または構造および機能を使用して実施されるそのような装置または方法をカバーするものとする。本明細書で開示する任意の態様は、特許請求の範囲の1つまたは複数の要素により実施されてもよいことを理解されたい。
[0034]特定の態様について本明細書で説明するが、これらの態様の多くの変形および置換は本開示の範囲内に入る。好ましい態様のいくつかの利益および利点が述べられるが、本開示の範囲は、特定の利益、使用、または目的に限定されることを意図しない。むしろ、本開示の態様は、異なるワイヤレス技術、システム構成、ネットワーク、および伝送プロトコルに広く適用可能なものであることを意図され、そのうちのいくつかが図面および好ましい態様の以下の説明において例として示される。詳細な説明および図面は、限定的ではなく、本開示の例示にすぎず、本開示の範囲は、添付の特許請求の範囲およびその均等物によって定義される。
[0035]添付の図面は、例を示す。添付の図面内で参照番号によって指示される要素は、以下の説明において同様の参照番号で指示される要素に対応する。本開示では、序数語(たとえば、「第1の」、「第2の」、「第3の」など)で始まる名前を有する要素は、必ずしもそれらの要素が特定の順序を有することを暗示するとは限らない。むしろ、そのような序数語は、同じまたは同様のタイプの、異なる要素を指すために使用されるにすぎない。
[0036]図1Aは、本開示で説明する態様による技法を利用し得る例示的なビデオコーディングシステム10を示すブロック図である。本明細書で使用し説明する「ビデオコーダ」という用語は、総称的にビデオエンコーダとビデオデコーダの両方を指す。本開示では、「ビデオコーディング」または「コーディング」という用語は、ビデオ符号化とビデオ復号とを総称的に指すことがある。ビデオエンコーダおよびビデオデコーダに加えて、本出願に記載される態様は、トランスコーダ(たとえば、ビットストリームを復号し別のビットストリームを再符号化することができるデバイス)およびミドルボックス(たとえば、ビットストリームを修正、変換、および/または別のやり方で操作する(manipulate)ことができるデバイス)などの、他の関係するデバイスに拡張され得る。
[0037]図1Aに示すように、ビデオコーディングシステム10は、宛先デバイス14によって後で復号されるべき符号化されたビデオデータを生成するソースデバイス12を含む。図1Aの例では、ソースデバイス12および宛先デバイス14は別個のデバイス上にある。−詳細には、ソースデバイス12はソースデバイスの部分であり、宛先デバイス14は宛先デバイスの部分である。しかしながら、ソースおよび宛先モジュール12、14が、図1Bの例に示すように、同じデバイス上にあってもよく、または同じデバイスの部分であってもよいことに留意されたい。
[0038]もう一度図1Aを参照すると、ソースデバイス12および宛先デバイス14はそれぞれ、デスクトップコンピュータ、ノートブック(たとえば、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、いわゆる「スマート」フォンなどの電話ハンドセット、いわゆる「スマート」パッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミングデバイスなどを含む、広範囲のデバイスのいずれかを備え得る。様々な実施形態では、ソースデバイス12および宛先デバイス14はワイヤレス通信のために装備され得る。
[0039]宛先デバイス14は、リンク16を介して、復号されるべき符号化されたビデオデータを受信し得る。リンク16は、ソースデバイス12から宛先デバイス14に符号化されたビデオデータを動かすことが可能な任意のタイプの媒体またはデバイスを備え得る。図1Aの例では、リンク16は、ソースデバイス12が、符号化されたビデオデータをリアルタイムで宛先デバイス14に直接送信することを可能にするための通信媒体を備え得る。符号化されたビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され得、宛先デバイス14に送信され得る。通信媒体は、無線周波数(RF)スペクトルまたは1つもしくは複数の物理伝送線路などの、任意のワイヤレス通信媒体または有線通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワークなどのパケットベースのネットワーク、またはインターネットなどのグローバルネットワークの一部を形成し得る。通信媒体は、ルータ、スイッチ、基地局、またはソースデバイス12から宛先デバイス14への通信を容易にするために有用であり得る、任意の他の機器を含み得る。
[0040]代替的に、符号化されたデータは出力インターフェース22から、随意の記憶デバイス31に出力され得る。同様に、符号化されたデータは、たとえば、宛先デバイス14の入力インターフェース28によって、記憶デバイス31からアクセスされ得る。記憶デバイス31は、ハードドライブ、フラッシュメモリ、揮発性もしくは不揮発性のメモリ、または符号化されたビデオデータを記憶するための任意の他の適切なデジタル記憶媒体などの、様々な分散されたまたは局所的にアクセスされるデータ記憶媒体のいずれかを含み得る。さらなる例では、記憶デバイス31は、ソースデバイス12によって生成された符号化されたビデオを保持し得るファイルサーバまたは別の中間記憶デバイスに相当し得る。宛先デバイス14は、記憶されているビデオデータに、記憶デバイス31からストリーミングまたはダウンロードを介してアクセスし得る。ファイルサーバは、符号化されたビデオデータを記憶することができ、その符号化されたビデオデータを宛先デバイス14に送信することができる、任意のタイプのサーバであり得る。例示的なファイルサーバは、ウェブサーバ(たとえば、ウェブサイト用の)、ファイル転送プロトコル(FTP)サーバ、ネットワーク接続ストレージ(NAS)デバイス、またはローカルディスクドライブを含む。宛先デバイス14は、インターネット接続を含む任意の標準的なデータ接続を通じて、符号化されたビデオデータにアクセスし得る。これは、ファイルサーバ上に記憶された符号化されたビデオデータにアクセスするのに好適であるワイヤレスチャネル(たとえば、ワイヤレスローカルエリアネットワーク[WLAN]接続)、ワイヤード接続(たとえば、デジタル加入者回線(DSL)、ケーブルモデムなど)、またはその両方の組合せを含み得る。記憶デバイス31からの符号化されたビデオデータの伝送は、ストリーミング伝送、ダウンロード伝送、またはその両方の組合せであり得る。
[0041]本開示の技法は、ワイヤレスの用途または設定に限定されない。本技法は、オーバージエアテレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、たとえばインターネットを介したストリーミングビデオ送信(たとえば、動的適応ストリーミングオーバーハイパーテキスト転送プロトコル(HTTP)など)、データ記憶媒体上に記憶するためのデジタルビデオの符号化、データ記憶媒体上に記憶されたデジタルビデオの復号、または他の適用例など、様々なマルチメディア適用例のいずれかをサポートするビデオコーディングに適用され得る。いくつかの例では、ビデオコーディングシステム10は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、および/またはビデオ電話などの用途をサポートするために、単方向または双方向のビデオ送信をサポートするように構成され得る。
[0042]図1Aの例では、ソースデバイス12は、ビデオソース18と、ビデオエンコーダ20と、出力インターフェース22とを含む。場合によっては、出力インターフェース22は変調器/復調器(モデム)および/または送信機を含み得る。ソースデバイス12において、ビデオソース18は、ビデオキャプチャデバイス、たとえばビデオカメラ、以前にキャプチャされたビデオを含んでいるビデオアーカイブ、ビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェース、および/またはソースビデオとしてコンピュータグラフィックスデータを生成するためのコンピュータグラフィックスシステムなどのソース、あるいはそのようなソースの組合せを含み得る。一例として、図1Bの例に示すように、ビデオソース18がビデオカメラである場合、ソースデバイス12および宛先デバイス14は、いわゆるカメラ付き電話またはビデオ電話を形成し得る。しかしながら、本開示に記載される技法は、概してビデオコーディングに適用可能であり得、ワイヤレスアプリケーションおよび/または有線アプリケーションに適用され得る。
[0043]キャプチャされたビデオ、以前にキャプチャされたビデオ、またはコンピュータ生成されたビデオは、ビデオエンコーダ20によって符号化され得る。符号化されたビデオデータは、ソースデバイス12の出力インターフェース22を介して、宛先デバイス14に直接送信され得る。符号化されたビデオデータは、さらに(または代替的に)、復号および/または再生のための宛先デバイス14または他のデバイスによる後のアクセスのために、記憶デバイス31上に記憶され得る。図1Aおよび図1Bに示すビデオエンコーダ20は、図2Aに示すビデオエンコーダ20、図2Bに示すビデオエンコーダ23、または本明細書に記載される任意の他のビデオエンコーダを備えてよい。
[0044]図1Aの例では、宛先デバイス14は、入力インターフェース28と、ビデオデコーダ30と、ディスプレイデバイス32とを含む。場合によっては、入力インターフェース28は、受信機および/またはモデムを含み得る。宛先デバイス14の入力インターフェース28は、符号化されたビデオデータを、リンク16を介しておよび/または記憶デバイス31から受信し得る。リンク16を介して通信され、または記憶デバイス31上に提供された符号化されたビデオデータは、ビデオデータを復号する際のビデオデコーダ30などのビデオデコーダによる使用のために、ビデオエンコーダ20によって生成された様々なシンタックス要素を含み得る。そのようなシンタックス要素は、通信媒体上で送信されるか、記憶媒体上に記憶されるか、またはファイルサーバに記憶される符号化されたビデオデータに含まれ得る。図1Aおよび図1Bに示すビデオデコーダ30は、図3Aに示すビデオデコーダ30、図3Bに示すビデオデコーダ33、または本明細書に記載される任意の他のビデオデコーダを備えてよい。
[0045]ディスプレイデバイス32は、宛先デバイス14と一体化されるか、またはその外部にあり得る。いくつかの例では、宛先デバイス14は、一体型ディスプレイデバイスを含み得、また、外部ディスプレイデバイスとインターフェースするように構成され得る。他の例では、宛先デバイス14はディスプレイデバイスであり得る。概して、ディスプレイデバイス32は、復号されたビデオデータをユーザに対して表示し、液晶ディスプレイ(LCD)、プラズマディスプレイ、有機発光ダイオード(OLED)ディスプレイ、または別のタイプのディスプレイデバイスなど、様々なディスプレイデバイスのいずれかを備え得る。
[0046]関係する態様では、図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およびその構成要素と場合によっては類似である。
[0047]ビデオエンコーダ20およびビデオデコーダ30は、HEVC規格など、ビデオ圧縮規格に従って動作し得、HEVCテストモデル(HM)に準拠し得る。代替的に、ビデオエンコーダ20およびビデオデコーダ30は、代替的にMPEG−4,Part10,AVCと呼ばれるITU−T H.264規格など、他の独自の規格または業界規格、あるいはそのような規格の拡張に従って動作し得る。ただし、本開示の技法は、いかなる特定のコーディング規格にも限定されない。ビデオ圧縮規格の他の例は、MPEG−2およびITU−T H.263を含む。
[0048]図1Aおよび図1Bの例に示されないが、ビデオエンコーダ20およびビデオデコーダ30は各々、オーディオエンコーダおよびオーディオデコーダと統合されてよく、共通のデータストリームまたは別個のデータストリーム中のオーディオとビデオの両方の符号化を処理するための適切なMUX−DEMUXユニット、または他のハードウェアおよびソフトウェアを含み得る。適用可能な場合、いくつかの例では、MUX−DEMUXユニットは、ITU H.223マルチプレクサプロトコル、またはユーザデータグラムプロトコル(UDP)などの他のプロトコルに準拠し得る。
[0049]ビデオエンコーダ20およびビデオデコーダ30は各々、1つまたは複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェア、またはそれらの任意の組合せなどの様々な適切なエンコーダ回路のいずれかとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、デバイスは、適切な非一時的コンピュータ可読媒体にソフトウェアの命令を記憶し得、本開示の技法を実行するために、1つまたは複数のプロセッサを使用して、命令をハードウェアで実行し得る。ビデオエンコーダ20およびビデオデコーダ30の各々は、1つまたは複数のエンコーダまたはデコーダに含まれ得、そのいずれも、それぞれのデバイスにおいて複合エンコーダ/デコーダ(コーデック)の一部として統合され得る。
ビデオコーディングプロセス
[0050]上記で簡略に述べられたように、ビデオエンコーダ20はビデオデータを符号化する。ビデオデータは、1つまたは複数のピクチャを備え得る。ピクチャの各々は、ビデオの一部を形成する静止画像である。いくつかの事例では、ピクチャは、ビデオ「フレーム」と呼ばれることがある。ビデオエンコーダ20がビデオデータを符号化するとき、ビデオエンコーダ20は、ビットストリームを生成し得る。ビットストリームは、ビデオデータのコーディングされた表現を形成するビットのシーケンスを含み得る。ビットストリームは、コード化されたピクチャと、関連するデータとを含み得る。コード化されたピクチャは、ピクチャのコーディングされた表現である。
[0051]ビットストリームを生成するために、ビデオエンコーダ20は、ビデオデータ中の各ピクチャに対して符号化演算を実行し得る。ビデオエンコーダ20がピクチャに対して符号化演算を実行するとき、ビデオエンコーダ20は、一連のコード化されたピクチャと、関連するデータとを生成し得る。関連するデータは、ビデオパラメータセット(VPS:video parameter set)と、シーケンスパラメータセット(SPS)と、ピクチャパラメータセット(PPS)と、適応パラメータセット(APS)と、他のシンタックス構造とを含み得る。SPSは、ピクチャの0個以上のシーケンスに適用可能なパラメータを含み得る。PPSは、0個以上のピクチャに適用可能なパラメータを含み得る。APSは、0個以上のピクチャに適用可能なパラメータを含み得る。APS中のパラメータは、PPS中のパラメータよりも変化する可能性が高いパラメータであり得る。
[0052]コード化されたピクチャを生成するために、ビデオエンコーダ20は、ピクチャを等しいサイズのビデオブロックに区分し得る。ビデオブロックはサンプルの2次元アレイであり得る。ビデオブロックの各々は、ツリーブロックに関連付けられる。いくつかの事例では、ツリーブロックは、最大コーディングユニット(LCU:largest coding unit)と呼ばれることがある。HEVCのツリーブロックは、H.264/AVCのような従来の規格のマクロブロックに、広い意味で類似し得る。しかしながら、ツリーブロックは、特定のサイズに必ずしも限定されず、1つまたは複数のコーディングユニット(CU)を含み得る。ビデオエンコーダ20は、ツリーブロックのビデオブロックを、CUに関連付けられたビデオブロックに区分するために、4分木区分を使用し得、したがって、「ツリーブロック」という名前である。
[0053]いくつかの例では、ビデオエンコーダ20は、ピクチャを複数のスライスに区分し得る。スライスの各々は、整数個のCUを含み得る。いくつかの事例では、スライスは、整数個のツリーブロックを備える。他の事例では、スライスの境界は、ツリーブロック内にあり得る。
[0054]ピクチャに対して符号化演算を実行することの一部として、ビデオエンコーダ20は、ピクチャの各スライスに対して符号化演算を実行し得る。ビデオエンコーダ20がスライスに対して符号化演算を実行するとき、ビデオエンコーダ20は、スライスに関連付けられた符号化されたデータを生成し得る。スライスに関連付けられた符号化されたデータは、「コード化されたスライス」と呼ばれることがある。
[0055]コード化されたスライスを生成するために、ビデオエンコーダ20は、スライス中の各ツリーブロックに対して符号化演算を実行し得る。ビデオエンコーダ20がツリーブロックに対して符号化演算を実行するとき、ビデオエンコーダ20は、コーディングされたツリーブロックを生成し得る。コーディングされたツリーブロックは、ツリーブロックの符号化されたバージョンを表すデータを備え得る。
[0056]ビデオエンコーダ20がコード化されたスライスを生成するとき、ビデオエンコーダ20は、ラスタ走査順序に従って、スライス中のツリーブロックに対して符号化演算を実行(たとえば、符号化)し得る。たとえば、ビデオエンコーダ20は、スライス中のツリーブロックの一番上の行にわたって左から右に進み、次いでツリーブロックの次の下の行にわたって左から右に進み、以下同様に進む順序で、ビデオエンコーダ20がスライス中のツリーブロックの各々を符号化するまで、スライスのツリーブロックを符号化し得る。
[0057]ラスタ走査順序に従ってツリーブロックを符号化した結果として、所与のツリーブロックの上および左のツリーブロックは符号化されていることがあるが、所与のツリーブロックの下および右のツリーブロックはまだ符号化されていない。したがって、ビデオエンコーダ20は、所与のツリーブロックを符号化するとき、所与のツリーブロックの上および左のツリーブロックを符号化することによって生成される情報にアクセスすることが可能であり得る。しかしながら、ビデオエンコーダ20は、所与のツリーブロックを符号化するとき、所与のツリーブロックの下および右のツリーブロックを符号化することによって生成される情報にアクセスできないことがある。
[0058]コーディングされたツリーブロックを生成するために、ビデオエンコーダ20は、ビデオブロックを徐々により小さいビデオブロックに分割するために、ツリーブロックのビデオブロック上で4分木区分を繰り返し実行し得る。より小さいビデオブロックの各々は、異なるCUに関連付けられ得る。たとえば、ビデオエンコーダ20は、ツリーブロックのビデオブロックを4つの等しいサイズのサブブロックに区分し得、サブブロックのうちの1つまたは複数を4つの等しいサイズのサブサブブロックに区分し得、以下同様である。区分されたCUは、そのビデオブロックが他のCUに関連付けられたビデオブロックに区分されているCUであり得る。区分されていないCUは、そのビデオブロックが他のCUに関連付けられたビデオブロックに区分されていないCUであり得る。
[0059]ビットストリーム中の1つまたは複数のシンタックス要素は、ビデオエンコーダ20がツリーブロックのビデオブロックを区分し得る最大の回数を示し得る。CUのビデオブロックは形状が正方形であり得る。CUのビデオブロックのサイズ(たとえば、CUのサイズ)は、8×8のピクセルから、最大で64×64以上のピクセルを有するツリーブロックのビデオブロックのサイズ(たとえば、ツリーブロックのサイズ)までわたり得る。
[0060]ビデオエンコーダ20は、z走査順序に従って、ツリーブロックの各CUに対して符号化演算を実行(たとえば、符号化)し得る。言い換えれば、ビデオエンコーダ20は、左上のCUと、右上のCUと、左下のCUと、次いで右下のCUとを、その順序で符号化し得る。ビデオエンコーダ20が、区分されているCUに対して符号化演算を実行するとき、ビデオエンコーダ20は、z走査順序に従って、区分されているCUのビデオブロックのサブブロックに関連付けられたCUを符号化し得る。言い換えれば、ビデオエンコーダ20は、左上のサブブロックに関連付けられたCUと、右上のサブブロックに関連付けられたCUと、左下のサブブロックに関連付けられたCUと、次いで右下のサブブロックに関連付けられたCUとを、その順序で符号化し得る。
[0061]z走査順序に従ってツリーブロックのCUを符号化した結果として、所与のCUの上、左上、右上、左、および左下のCUは符号化されていることがある。所与のCUの下または右のCUはまだ符号化されていない。したがって、ビデオエンコーダ20は、所与のCUを符号化するとき、所与のCUに隣接するいくつかのCUを符号化することによって生成される情報にアクセスすることが可能であり得る。しかしながら、ビデオエンコーダ20は、所与のCUを符号化するとき、所与のCUに隣接する他のCUを符号化することによって生成される情報にアクセスできないことがある。
[0062]ビデオエンコーダ20が、区分されていないCUを符号化するとき、ビデオエンコーダ20は、CUに対する1つまたは複数の予測ユニット(PU)を生成し得る。CUのPUの各々は、CUのビデオブロック内の異なるビデオブロックに関連付けられ得る。ビデオエンコーダ20は、CUの各PUに対して予測されたビデオブロックを生成し得る。PUの予測されたビデオブロックは、サンプルのブロックであり得る。ビデオエンコーダ20は、PUのための予測されたビデオブロックを生成するために、イントラ予測またはインター予測を使用し得る。
[0063]ビデオエンコーダ20がPUの予測されたビデオブロックを生成するためにイントラ予測を使用するとき、ビデオエンコーダ20は、PUに関連付けられたピクチャの復号されたサンプルに基づいて、PUの予測されたビデオブロックを生成し得る。ビデオエンコーダ20がCUのPUの予測されたビデオブロックを生成するためにイントラ予測を使用する場合、CUはイントラ予測されたCUである。ビデオエンコーダ20がPUの予測されたビデオブロックを生成するためにインター予測を使用するとき、ビデオエンコーダ20は、PUに関連付けられたピクチャ以外の1つまたは複数のピクチャの復号されたサンプルに基づいて、PUの予測されたビデオブロックを生成し得る。ビデオエンコーダ20がCUのPUの予測されたビデオブロックを生成するためにインター予測を使用する場合、CUはインター予測されたCUである。
[0064]さらに、ビデオエンコーダ20がPUのための予測されたビデオブロックを生成するためにインター予測を使用するとき、ビデオエンコーダ20は、PUのための動き情報を生成し得る。PUのための動き情報は、PUの1つまたは複数の参照ブロックを示し得る。PUの各参照ブロックは、参照ピクチャ内のビデオブロックであり得る。参照ピクチャは、PUに関連付けられたピクチャ以外のピクチャであり得る。いくつかの事例では、PUの参照ブロックは、PUの「参照サンプル」と呼ばれることもある。ビデオエンコーダ20は、PUの参照ブロックに基づいて、PUのための予測されたビデオブロックを生成し得る。
[0065]ビデオエンコーダ20がCUの1つまたは複数のPUのための予測されたビデオブロックを生成した後、ビデオエンコーダ20は、CUのPUのための予測されたビデオブロックに基づいて、CUに対する残差データを生成し得る。CUの残差データは、CUのPUのための予測されたビデオブロック中のサンプルと、CUの元のビデオブロック中のサンプルとの差分を示し得る。
[0066]さらに、区分されていないCUに対して符号化演算を実行することの一部として、ビデオエンコーダ20は、CUの残差データを、CUの変換ユニット(TU)に関連付けられた残差データの1つまたは複数のブロック(たとえば、残差ビデオブロック)に区分するために、CUの残差データに対して繰り返しの4分木区分を実行し得る。CUの各TUは、異なる残差ビデオブロックに関連付けられ得る。
[0067]ビデオエンコーダ20は、TUに関連付けられた変換係数ブロック(たとえば、変換係数のブロック)を生成するために、TUに関連付けられた残差ビデオブロックに1つまたは複数の変換を適用し得る。概念的に、変換係数ブロックは変換係数の2次元(2D)行列であり得る。
[0068]変換係数ブロックを生成した後、ビデオエンコーダ20は、変換係数ブロックに対して量子化プロセスを実行し得る。量子化は、概して、変換係数を表すために使用されるデータの量をできるだけ低減するために変換係数が量子化され、さらなる圧縮を実現するプロセスを指す。量子化プロセスは、変換係数の一部または全部に関連するビット深度を低減し得る。たとえば、量子化中に、nビット変換係数はmビット変換係数に切り捨てられ得、ここで、nはmよりも大きい。
[0069]ビデオエンコーダ20は、各CUを、量子化パラメータ(QP)値に関連付け得る。CUに関連付けられたQP値は、ビデオエンコーダ20が、CUに関連付けられた変換係数ブロックをどのように量子化するかを決定し得る。ビデオエンコーダ20は、CUに関連付けられたQP値を調整することによって、CUに関連付けられた変換係数ブロックに適用される量子化の程度を調整し得る。
[0070]ビデオエンコーダ20が変換係数ブロックを量子化した後、ビデオエンコーダ20は、量子化された変換係数ブロックの中で変換係数を表すシンタックス要素のセットを生成し得る。ビデオエンコーダ20は、これらのシンタックス要素のうちのいくつかに、コンテキスト適応型バイナリ算術コーディング(CABAC:Context Adaptive Binary Arithmetic Coding)演算などのエントロピー符号化演算を適用し得る。コンテンツ適応型可変長コーディング(CAVLC:content adaptive variable length coding)、確率間隔区分エントロピー(PIPE:probability interval partitioning entropy)コーディング、または他のバイナリ算術コーディングなど、他のエントロピーコーディング技法も使用され得る。
[0071]ビデオエンコーダ20によって生成されるビットストリームは、一連のネットワークアブストラクションレイヤ(NAL:Network Abstraction Layer)ユニットを含み得る。NALユニットの各々は、NALユニット中のデータのタイプの指示と、データを含むバイトとを含む、シンタックス構造であり得る。たとえば、NALユニットは、ビデオパラメータセット、シーケンスパラメータセット、ピクチャパラメータセット、コード化されたスライス、補足エンハンスメント情報(SEI:supplemental enhancement information)、アクセスユニットデリミタ、フィラーデータ、または別のタイプのデータを表すデータを含み得る。NALユニット中のデータは、様々なシンタックス構造を含み得る。
[0072]ビデオデコーダ30は、ビデオエンコーダ20によって生成されたビットストリームを受信し得る。ビットストリームは、ビデオエンコーダ20によって符号化されたビデオデータのコーディングされた表現を含み得る。ビデオデコーダ30がビットストリームを受信すると、ビデオデコーダ30は、ビットストリームに対して構文解析動作(a parsing operation)を実行し得る。ビデオデコーダ30が構文解析動作を実行するとき、ビデオデコーダ30は、ビットストリームからシンタックス要素を抽出し得る。ビデオデコーダ30は、ビットストリームから抽出されたシンタックス要素に基づいて、ビデオデータのピクチャを再構成し得る。シンタックス要素に基づいてビデオデータを再構成するためのプロセスは、一般に、シンタックス要素を生成するためにビデオエンコーダ20によって実行されるプロセスの逆であり得る。
[0073]ビデオデコーダ30がCUに関連付けられたシンタックス要素を抽出した後、ビデオデコーダ30は、シンタックス要素に基づいて、CUのPUのための予測されたビデオブロックを生成し得る。さらに、ビデオデコーダ30は、CUのTUに関連付けられた変換係数ブロックを逆量子化し得る。ビデオデコーダ30は、CUのTUに関連付けられた残差ビデオブロックを再構成するために、変換係数ブロックに対して逆変換を実行し得る。予測されたビデオブロックを生成し、残差ビデオブロックを再構成した後、ビデオデコーダ30は、予測されたビデオブロックおよび残差ビデオブロックに基づいて、CUのビデオブロックを再構成し得る。このようにして、ビデオデコーダ30は、ビットストリーム中のシンタックス要素に基づいて、CUのビデオブロックを再構成し得る。
ビデオエンコーダ
[0074]図2Aは、本開示で説明する態様による技法を実装し得るビデオエンコーダの一例を示すブロック図である。ビデオエンコーダ20は、HEVCの場合など、ビデオフレームの単一のレイヤを処理するように構成され得る。さらに、ビデオエンコーダ20は、本開示の技法のいずれかまたはすべてを実行するように構成され得る。一例として、予測処理ユニット100は、本開示で説明する技法のいずれかまたはすべてを実行するように構成され得る。別の実施形態では、ビデオエンコーダ20は、本開示で説明する技法のいずれかまたはすべてを実行するように構成された随意のレイヤ間予測ユニット128を含む。他の実施形態では、レイヤ間予測は、予測処理ユニット100(たとえば、インター予測ユニット121および/またはイントラ予測ユニット126)によって実行され得、その場合、レイヤ間予測ユニット128は省略され得る。しかしながら、本開示の態様はそのように限定されない。いくつかの例では、本開示で説明する技法は、ビデオエンコーダ20の様々な構成要素間で共有され得る。いくつかの例では、追加または代替として、プロセッサ(図示せず)が、本開示で説明する技法のいずれかまたはすべてを実行するように構成され得る。
[0075]説明の目的で、本開示は、HEVCコーディングのコンテキストにおいてビデオエンコーダ20を説明する。しかしながら、本開示の技法は、他のコーディング規格または方法に適用可能であり得る。図2Aに示す例は、シングルレイヤコーデックのためのものである。しかしながら、図2Bに関してさらに説明するように、ビデオエンコーダ20の一部または全部は、マルチレイヤコーデックの処理のために複製され得る。
[0076]ビデオエンコーダ20は、ビデオスライス内のビデオブロックのイントラコーディングとインターコーディングとを実行し得る。イントラコーディングは、所与のビデオフレームまたはピクチャ内のビデオの空間的冗長性を低減または除去するために、空間予測に依拠する。インターコーディングは、ビデオシーケンスの隣接するフレーム内またはピクチャ内のビデオの時間的冗長性を低減または除去するために時間予測に依拠する。イントラモード(Iモード)は、いくつかの空間ベースのコーディングモードのいずれかを参照し得る。単方向予測(Pモード)または双方向予測(Bモード)などのインターモードは、いくつかの時間ベースのコーディングモードのいずれかを参照し得る。
[0077]図2Aの例では、ビデオエンコーダ20は複数の機能構成要素を含む。ビデオエンコーダ20の機能構成要素は、予測処理ユニット100と、残差生成ユニット102と、変換処理ユニット104と、量子化ユニット106と、逆量子化ユニット108と、逆変換ユニット110と、再構成ユニット112と、フィルタユニット113と、復号されたピクチャバッファ114と、エントロピー符号化ユニット116とを含む。予測処理ユニット100は、インター予測ユニット121と、動き推定ユニット122と、動き補償ユニット124と、イントラ予測ユニット126と、レイヤ間予測ユニット128とを含む。他の例では、ビデオエンコーダ20は、より多いか、より少ないか、または異なる機能構成要素を含み得る。さらに、動き推定ユニット122および動き補償ユニット124は、高度に統合され得るが、図2Aの例では、説明の目的で別々に表されている。
[0078]ビデオエンコーダ20は、ビデオデータを受信し得る。ビデオエンコーダ20は、様々なソースからビデオデータを受信し得る。たとえば、ビデオエンコーダ20は、ビデオソース18(たとえば、図1Aまたは図1Bに示す)または別のソースからビデオデータを受信し得る。ビデオデータは、一連のピクチャを表し得る。ビデオデータを符号化するために、ビデオエンコーダ20は、ピクチャの各々に対して符号化演算を実行し得る。ピクチャに対して符号化演算を実行することの一部として、ビデオエンコーダ20は、ピクチャの各スライスに対して符号化演算を実行し得る。スライスに対して符号化演算を実行することの一部として、ビデオエンコーダ20は、スライス中のツリーブロックに対して符号化演算を実行し得る。
[0079]ツリーブロックに対して符号化演算を実行することの一部として、予測処理ユニット100は、ビデオブロックを徐々により小さいビデオブロックに分割するために、ツリーブロックのビデオブロックに対して4分木区分を実行し得る。より小さいビデオブロックの各々は、異なるCUに関連付けられ得る。たとえば、予測処理ユニット100は、ツリーブロックのビデオブロックを4つの等しいサイズのサブブロックに区分し得、サブブロックのうちの1つまたは複数を4つの等しいサイズのサブサブブロックに区分し得、以下同様である。
[0080]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は非負整数値を表す。
[0081]さらに、ツリーブロックに対して符号化演算を実行することの一部として、予測処理ユニット100は、ツリーブロック用の階層的な4分木データ構造を生成し得る。たとえば、ツリーブロックは、4分木データ構造のルートノードに対応し得る。予測処理ユニット100がツリーブロックのビデオブロックを4つのサブブロックに区分する場合、ルートノードは、4分木データ構造中に4つの子ノードを有する。子ノードの各々は、サブブロックのうちの1つに関連付けられたCUに対応する。予測処理ユニット100がサブブロックのうちの1つを4つのサブサブブロックに区分する場合、サブブロックに関連付けられたCUに対応するノードは、サブサブブロックのうちの1つに関連付けられたCUに各々が対応する、4つの子ノードを有し得る。
[0082]4分木データ構造の各ノードは、対応するツリーブロックまたはCUのシンタックスデータ(たとえば、シンタックス要素)を含み得る。たとえば、4分木の中のノードは、そのノードに対応するCUのビデオブロックが4つのサブブロックに区分(たとえば、分割)されているかどうかを示すスプリットフラグを含み得る。CUのためのシンタックス要素は、繰り返し定義され得、CUのビデオブロックがサブブロックに分割されているかどうかに依存し得る。ビデオブロックが区分されていないCUは、4分木データ構造におけるリーフノードに対応し得る。コーディングされたツリーブロックは、対応するツリーブロック用の4分木データ構造に基づくデータを含み得る。
[0083]ビデオエンコーダ20は、ツリーブロックの区分されていない各CUに対して符号化演算を実行し得る。ビデオエンコーダ20が、区分されていないCUに対して符号化演算を実行するとき、ビデオエンコーダ20は、区分されていないCUの符号化された表現を表すデータを生成する。
[0084]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のビデオブロックの辺(sides)に直角に(at right angles)接触しない境界に沿ってCUのPUの間でCUのビデオブロックを区分するように、幾何学的な区分を実行し得る。
[0085]インター予測ユニット121は、CUの各PUに対してインター予測を実行し得る。インター予測は、時間圧縮(temporal compression)を実現し得る。PUに対してインター予測を実行するために、動き推定ユニット122は、PUのための動き情報を生成し得る。動き補償ユニット124は、PUベースの動き情報およびCUに関連付けられたピクチャ以外のピクチャ(たとえば、参照ピクチャ)の復号されたサンプルのための、予測されたビデオブロックを生成し得る。本開示では、動き補償ユニット124によって生成される予測されたビデオブロックは、インター予測されたビデオブロックと呼ばれることがある。
[0086]スライスは、Iスライス、Pスライス、またはBスライスであり得る。動き推定ユニット122および動き補償ユニット124は、PUがIスライス中にあるのか、Pスライス中にあるのか、それともBスライス中にあるのかに応じて、CUのPUのための異なる演算を実行し得る。Iスライス中では、すべてのPUがイントラ予測される。したがって、PUがIスライス中にある場合、動き推定ユニット122および動き補償ユニット124は、PUに対してインター予測を実行しない。
[0087]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のビデオブロック中のサンプルに対応するかを決定し得る。
[0088]Pスライス中のPUの参照ブロックを識別した後、動き推定ユニット122は、参照ブロックを含んでいる、リスト0中の参照ピクチャを示す参照インデックスと、PUと参照ブロックとの間の空間変位を示す動きベクトルとを生成し得る。様々な例において、動き推定ユニット122は、動きベクトルを異なる精度(varying degrees of precision)に生成し得る。たとえば、動き推定ユニット122は、1/4サンプル精度、1/8サンプル精度、または他の分数のサンプル精度で動きベクトルを生成し得る。分数のサンプル精度の場合、参照ブロック値は、参照ピクチャ中の整数位置のサンプル値から補間され得る。動き推定ユニット122は、PUの動き情報として、参照インデックスと動きベクトルとを出力し得る。動き補償ユニット124は、PUの動き情報によって識別された参照ブロックに基づいて、PUの予測されたビデオブロックを生成し得る。
[0089]PUがBスライス中にある場合、PUを含むピクチャは、「リスト0」および「リスト1」と呼ばれる参照ピクチャの2つのリストに関連付けられ得る。いくつかの例では、Bスライスを含むピクチャは、リスト0とリスト1の組合せである、リストの組合せと関連付けられ得る。
[0090]さらに、PUがBスライス中にある場合、動き推定ユニット122は、PUのための単方向予測または双方向予測を実行し得る。動き推定ユニット122がPUのための単方向予測を実行するとき、動き推定ユニット122は、PUのための参照ブロックについて、リスト0またはリスト1の参照ピクチャを探索し得る。動き推定ユニット122は、次いで、参照ブロックを含む、リスト0またはリスト1中の参照ピクチャを示す参照インデックスと、PUと参照ブロックとの間の空間変位を示す動きベクトルとを生成し得る。動き推定ユニット122は、PUの動き情報として、参照インデックスと、予測方向インジケータと、動きベクトルとを出力し得る。予測方向インジケータは、参照インデックスが、リスト0中の参照ピクチャを示すのか、それともリスト1中の参照ピクチャを示すのかを示し得る。動き補償ユニット124は、PUの動き情報によって示された参照ブロックに基づいて、PUの予測されたビデオブロックを生成し得る。
[0091]動き推定ユニット122がPUのための双方向予測を実行するとき、動き推定ユニット122は、PUのための参照ブロックについて、リスト0中の参照ピクチャを探索し得、また、PUのための別の参照ブロックについて、リスト1中の参照ピクチャを探索し得る。動き推定ユニット122は、次いで、参照ブロックを含む、リスト0およびリスト1中の参照ピクチャを示す参照インデックスと、参照ブロックとPUとの間の空間変位を示す動きベクトルとを生成し得る。動き推定ユニット122は、PUの動き情報として、PUの参照インデックスと動きベクトルとを出力し得る。動き補償ユニット124は、PUの動き情報によって示された参照ブロックに基づいて、PUの予測されたビデオブロックを生成し得る。
[0092]いくつかの事例では、動き推定ユニット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の動き情報をシグナリングすることが可能であり得る。
[0093]図8に関して以下でさらに説明するように、予測処理ユニット100は、図8に示される方法を実行することによってPU(または任意の他の参照レイヤブロックおよび/またはエンハンスメントレイヤブロックまたはビデオユニット)をコーディング(たとえば、符号化または復号)するように構成され得る。たとえば、(たとえば、動き推定ユニット122および/または動き補償ユニット124を介した)インター予測ユニット121、イントラ予測ユニット126、またはレイヤ間予測ユニット128は、一緒にまたは別々に、図8に示される方法を実行するように構成され得る。
[0094]CUに対して符号化演算を実行することの一部として、イントラ予測ユニット126は、CUのPUに対してイントラ予測を実行し得る。イントラ予測は、空間圧縮(spatial compression)を実現し得る。イントラ予測ユニット126がPUに対してイントラ予測を実行するとき、イントラ予測ユニット126は、同じピクチャ中の他のPUの復号されたサンプルに基づいて、PUのための予測データを生成し得る。PUのための予測データは、予測されたビデオブロックと様々なシンタックス要素とを含み得る。イントラ予測ユニット126は、Iスライス、Pスライス、およびBスライス中のPUに対してイントラ予測を実行し得る。
[0095]PUに対してイントラ予測を実行するために、イントラ予測ユニット126は、PUのための予測データの複数のセットを生成するために、複数のイントラ予測モードを使用し得る。イントラ予測ユニット126がPUのための予測データのセットを生成するためにイントラ予測モードを使用するとき、イントラ予測ユニット126は、イントラ予測モードと関連する方向および/または勾配で、隣接PUのビデオブロックからPUのビデオブロックにわたってサンプルを延ばし得る。PU、CU、およびツリーブロックについて左から右、上から下の符号化順序を仮定すると、隣接PUは、PUの上、右上、左上、または左にあり得る。イントラ予測ユニット126は、PUのサイズに応じて、様々な数のイントラ予測モード、たとえば、33個の方向性イントラ予測モードを使用し得る。
[0096]予測処理ユニット100は、動き補償ユニット124によってPUのために生成された予測データ、またはイントラ予測ユニット126によってPUのために生成された予測データの中から、PUのための予測データを選択し得る。いくつかの例では、予測処理ユニット100は、予測データのセットのレート/ひずみメトリックに基づいて、PUのための予測データを選択する。
[0097]予測処理ユニット100がイントラ予測ユニット126によって生成された予測データを選択する場合、予測処理ユニット100は、PUのための予測データを生成するために使用されたイントラ予測モード、たとえば、選択されたイントラ予測モードをシグナリングし得る。予測処理ユニット100は、選択されたイントラ予測モードを様々な方法でシグナリングし得る。たとえば、選択されたイントラ予測モードは、隣接PUのイントラ予測モードと同じであることが起こり得る。言い換えれば、隣接PUのイントラ予測モードは、現在のPUに対して最確モード(most probable mode)であり得る。したがって、予測処理ユニット100は、選択されたイントラ予測モードが隣接PUのイントラ予測モードと同じであることを示すためのシンタックス要素を生成し得る。
[0098]上記で説明したように、ビデオエンコーダ20は、レイヤ間予測ユニット128を含み得る。レイヤ間予測ユニット128は、SVCにおいて利用可能である1つまたは複数の異なるレイヤ(たとえば、ベースレイヤまたは参照レイヤ)を使用して、現在のブロック(たとえば、EL中の現在のブロック)を予測するように構成される。そのような予測は、レイヤ間予測と呼ばれることがある。レイヤ間予測ユニット128は、レイヤ間冗長性を低減するための予測方法を利用し、それによって、コーディング効率を改善し、計算リソース要件を低減する。レイヤ間予測のいくつかの例は、レイヤ間イントラ予測と、レイヤ間動き予測と、レイヤ間残差予測とを含む。レイヤ間イントラ予測は、エンハンスメントレイヤ中の現在のブロックを予測するために、ベースレイヤの中でコロケートされているブロックの再構成を使用する。レイヤ間動き予測は、エンハンスメントレイヤ中の動きを予測するために、ベースレイヤの動き情報を使用する。レイヤ間残差予測は、エンハンスメントレイヤの残差を予測するために、ベースレイヤの残差を使用する。レイヤ間予測方式の各々について、以下でより詳細に説明する。
[0099]予測処理ユニット100がCUのPUのための予測データを選択した後、残差生成ユニット102は、CUのビデオブロックからCUのPUの予測されたビデオブロックを差し引くこと(たとえば、マイナス符号によって示される)によって、CUの残差データを生成し得る。CUの残差データは、CUのビデオブロック中のサンプルの異なるサンプル成分に対応する2D残差ビデオブロックを含み得る。たとえば、残差データは、CUのPUの予測されたビデオブロック中のサンプルのルミナンス成分と、CUの元のビデオブロック中のサンプルのルミナンス成分との間の差分に対応する、残差ビデオブロックを含み得る。さらに、CUの残差データは、CUのPUの予測されたビデオブロック中のサンプルのクロミナンス成分と、CUの元のビデオブロック中のサンプルのクロミナンス成分との間の差分に対応する、残差ビデオブロックを含み得る。
[00100]予測処理ユニット100は、CUの残差ビデオブロックをサブブロックに区分するために、4分木区分を実行し得る。分割されていない各残差ビデオブロックは、CUの異なるTUに関連付けられ得る。CUのTUに関連付けられる残差ビデオブロックのサイズおよび位置は、CUのPUに関連付けられたビデオブロックのサイズおよび位置に基づいてもよく、または基づかなくてもよい。「残差4分木」(RQT)と呼ばれる4分木構造は、残差ビデオブロックの各々に関連付けられたノードを含み得る。CUのTUは、RQTのリーフノードに対応し得る。
[00101]変換処理ユニット104は、TUに関連付けられた残差ビデオブロックに1つまたは複数の変換を適用することによって、CUの各TUのための1つまたは複数の変換係数ブロックを生成し得る。変換係数ブロックの各々は、変換係数の2D行列であり得る。変換処理ユニット104は、TUに関連付けられた残差ビデオブロックに様々な変換を適用し得る。たとえば、変換処理ユニット104は、離散コサイン変換(DCT)、方向変換、または概念的に類似の変換を、TUに関連付けられた残差ビデオブロックに適用し得る。
[00102]変換処理ユニット104が、TUに関連付けられた変換係数ブロックを生成した後、量子化ユニット106は、変換係数ブロック中の変換係数を量子化し得る。量子化ユニット106は、CUに関連付けられたQP値に基づいて、CUのTUに関連付けられた変換係数ブロックを量子化し得る。
[00103]ビデオエンコーダ20は、様々な方法でQP値をCUに関連付け得る。たとえば、ビデオエンコーダ20は、CUに関連付けられたツリーブロックに対して、レートひずみ分析を実行し得る。レートひずみ分析では、ビデオエンコーダ20は、ツリーブロックに対して符号化演算を複数回実行することによって、ツリーブロックの複数のコーディングされた表現を生成し得る。ビデオエンコーダ20が、ツリーブロックの異なる符号化された表現を生成するとき、ビデオエンコーダ20は、異なるQP値をCUに関連付け得る。最小のビットレートおよびひずみメトリックを有するツリーブロックのコーディングされた表現で所与のQP値がCUに関連付けられるとき、ビデオエンコーダ20は、所与のQP値がCUに関連付けられることをシグナリングし得る。
[00104]逆量子化ユニット108および逆変換ユニット110は、変換係数ブロックから残差ビデオブロックを再構成するために、それぞれ、逆量子化と逆変換とを変換係数ブロックに適用し得る。再構成ユニット112は、TUに関連付けられた再構成されたビデオブロックを生成するために、再構成された残差ビデオブロックを、予測処理ユニット100によって生成された1つまたは複数の予測されたビデオブロックからの対応するサンプルに追加し得る。このようにCUの各TUについてビデオブロックを再構成することによって、ビデオエンコーダ20は、CUのビデオブロックを再構成し得る。
[00105]再構成ユニット112がCUのビデオブロックを再構成した後、フィルタユニット113は、CUに関連付けられたビデオブロックにおけるブロッキングアーティファクトを低減するために、デブロッキング演算を実行し得る。1つまたは複数のデブロッキング演算を実行した後、フィルタユニット113は、CUの再構成されたビデオブロックを復号されたピクチャバッファ114に記憶し得る。動き推定ユニット122および動き補償ユニット124は、後続のピクチャのPUに対してインター予測を実行するために、再構成されたビデオブロックを含む参照ピクチャを使用し得る。さらに、イントラ予測ユニット126は、CUと同じピクチャ中の他のPUに対してイントラ予測を実行するために、復号されたピクチャバッファ114の中の再構成されたビデオブロックを使用し得る。
[00106]エントロピー符号化ユニット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は、エントロピー符号化されたデータを含むビットストリームを出力し得る。
[00107]データに対してエントロピー符号化演算を実行することの一部として、エントロピー符号化ユニット116は、コンテキストモデルを選択し得る。エントロピー符号化ユニット116がCABAC演算を実行している場合、コンテキストモデルは、特定の値を有する特定のビンの確率の推定値を示し得る。CABACのコンテキストでは、「ビン」という用語は、シンタックス要素の2値化されたバージョンのビットを指すために使用される。
マルチレイヤビデオエンコーダ
[00108]図2Bは、本開示で説明する態様による技法を実装し得るマルチレイヤビデオエンコーダ23(単にビデオエンコーダ23とも呼ばれる)の一例を示すブロック図である。ビデオエンコーダ23は、SHVCおよびマルチビューコーディングの場合など、マルチレイヤビデオフレームを処理するように構成され得る。さらに、ビデオエンコーダ23は、本開示の技法のいずれかまたはすべてを実行するように構成され得る。
[00109]ビデオエンコーダ23はビデオエンコーダ20Aとビデオエンコーダ20Bとを含み、それらの各々はビデオエンコーダ20として構成され得、ビデオエンコーダ20に関して上記で説明した機能を実行し得る。さらに、参照番号の再利用によって示されるように、ビデオエンコーダ20Aおよび20Bは、ビデオエンコーダ20としてのシステムおよびサブシステムのうちの少なくともいくつかを含み得る。ビデオエンコーダ23は、2つのビデオエンコーダ20Aおよび20Bを含むように示されるが、ビデオエンコーダ23は、そのように限定されず、任意の数のビデオエンコーダ20のレイヤを含み得る。いくつかの実施形態では、ビデオエンコーダ23は、アクセスユニット中の各ピクチャまたは各フレームに対してビデオエンコーダ20を含み得る。たとえば、5つのピクチャを含むアクセスユニットは、5つのエンコーダレイヤを含むビデオエンコーダによって処理または符号化され得る。いくつかの実施形態では、ビデオエンコーダ23は、アクセスユニット中のフレームよりも多くのエンコーダレイヤを含み得る。いくつかのそのような場合では、ビデオエンコーダのレイヤのうちのいくつかは、いくつかのアクセスユニットを処理するときに非アクティブであり得る。
[00110]ビデオエンコーダ20Aおよび20Bに加えて、ビデオエンコーダ23は、リサンプリングユニット90を含み得る。リサンプリングユニット90は、場合によっては、たとえば、エンハンスメントレイヤを作成するために、受信されたビデオフレームのベースレイヤをアップサンプリングし得る。リサンプリングユニット90は、フレームの受信されたベースレイヤに関連付けられた特定の情報をアップサンプリングし得るが、他の情報をアップサンプリングしないことがある。たとえば、リサンプリングユニット90は、ベースレイヤの空間サイズまたはピクセルの数をアップサンプリングし得るが、スライスの数またはピクチャ順序カウントは一定のままであり得る。場合によっては、リサンプリングユニット90は、受信されたビデオを処理しないことがあり、および/または随意であり得る。たとえば、場合によっては、予測処理ユニット100は、アップサンプリングを実行し得る。いくつかの実施形態では、リサンプリングユニット90は、レイヤをアップサンプリングし、スライス境界ルールおよび/またはラスタ走査ルールのセットに準拠するように、1つまたは複数のスライスを再編成、再定義、修正、または調整するように構成される。アクセスユニット中のベースレイヤまたは下位レイヤをアップサンプリングするものとして主に説明したが、場合によっては、リサンプリングユニット90は、レイヤをダウンサンプリングし得る。たとえば、ビデオのストリーミング中に帯域幅が低減した場合、フレームは、アップサンプリングされるのではなく、ダウンサンプリングされ得る。
[00111]リサンプリングユニット90は、下位レイヤエンコーダ(たとえば、ビデオエンコーダ20A)の復号されたピクチャバッファ114からピクチャまたはフレーム(またはピクチャに関連付けられたピクチャ情報)を受信し、ピクチャ(または受信されたピクチャ情報)をアップサンプリングするように構成され得る。このアップサンプリングされたピクチャは、次いで、下位レイヤエンコーダと同じアクセスユニット中のピクチャを符号化するように構成された、上位レイヤエンコーダ(たとえば、ビデオエンコーダ20B)の予測処理ユニット100に供給され得る。場合によっては、上位レイヤエンコーダは、下位レイヤエンコーダから除去された1つのレイヤである。他の場合には、図2Bのレイヤ0ビデオエンコーダとレイヤ1エンコーダとの間に、1つまたは複数の上位レイヤエンコーダがあり得る。
[00112]場合によっては、リサンプリングユニット90は、省略またはバイパスされ得る。そのような場合、ビデオエンコーダ20Aの復号されたピクチャバッファ114からのピクチャは、直接、または少なくともリサンプリングユニット90に供給されずに、ビデオエンコーダ20Bの予測処理ユニット100に供給され得る。たとえば、ビデオエンコーダ20Bに供給されたビデオデータ、およびビデオエンコーダ20Aの復号されたピクチャバッファ114からの参照ピクチャが、同じサイズまたは解像度である場合、参照ピクチャは、いかなるリサンプリングも伴わずにビデオエンコーダ20Bに供給され得る。
[00113]いくつかの実施形態では、ビデオエンコーダ23は、ビデオエンコーダ20Aにビデオデータを供給する前に、ダウンサンプリングユニット94を使用して下位レイヤエンコーダに供給されるべきビデオデータをダウンサンプリングする。代替的に、ダウンサンプリングユニット94は、ビデオデータをアップサンプリングまたはダウンサンプリングすることが可能なリサンプリングユニット90であり得る。また他の実施形態では、ダウンサンプリングユニット94は省略され得る。
[00114]図2Bに示すように、ビデオエンコーダ23は、マルチプレクサ98、すなわちmuxをさらに含み得る。mux98は、ビデオエンコーダ23から合成ビットストリームを出力することができる。合成ビットストリームは、ビデオエンコーダ20Aおよび20Bの各々からビットストリームを取ることと、所与の時間において出力されるビットストリームを交替すること(alternating)とによって、作成され得る。場合によっては、2つの(または、3つ以上のビデオエンコーダレイヤの場合には、より多くの)ビットストリームからのビットが一度に1ビットずつ交替され得るが、多くの場合、ビットストリームは別様に合成される。たとえば、出力ビットストリームは、選択されたビットストリームを一度に1ブロックずつ交替することによって作成され得る。別の例では、出力ビットストリームは、ビデオエンコーダ20Aおよび20Bの各々から非1:1比のブロックを出力することによって作成され得る。たとえば、2つのブロックは、ビデオエンコーダ20Aから出力された各ブロックについてビデオエンコーダ20Bから出力され得る。いくつかの実施形態では、mux98からの出力ストリームはプリプログラムされ得る。他の実施形態では、mux98は、ソースデバイス12を含むソースデバイス上のプロセッサからなど、ビデオエンコーダ23の外部のシステムから受信された制御信号に基づいて、ビデオエンコーダ20A、20Bからのビットストリームを合成し得る。制御信号は、ビデオソース18からのビデオの解像度またはビットレートに基づいて、リンク16の帯域幅に基づいて、ユーザに関連するサブスクリプション(たとえば、有料サブスクリプション対無料サブスクリプション)に基づいて、またはビデオエンコーダ23から望まれる解像度出力を決定するための任意の他のファクタに基づいて生成され得る。
ビデオデコーダ
[00115]図3Aは、本開示で説明する態様による技法を実装し得るビデオデコーダの一例を示すブロック図である。ビデオデコーダ30は、HEVCの場合など、ビデオフレームの単一のレイヤを処理するように構成され得る。さらに、ビデオデコーダ30は、本開示の技法のいずれかまたはすべてを実行するように構成され得る。一例として、動き補償ユニット162および/またはイントラ予測ユニット164は、本開示で説明する技法のうちのいずれかまたはすべてを実行するように構成され得る。一実施形態では、ビデオデコーダ30は、本開示で説明する技法のいずれかまたはすべてを実行するように構成されたレイヤ間予測ユニット166を随意に含み得る。他の実施形態では、レイヤ間予測は、予測処理ユニット152(たとえば、動き補償ユニット162および/またはイントラ予測ユニット164)によって実行され得、その場合、レイヤ間予測ユニット166は省略され得る。しかしながら、本開示の態様はそのように限定されない。いくつかの例では、本開示で説明する技法は、ビデオデコーダ30の様々な構成要素の間で共有され得る。いくつかの例では、追加または代替として、プロセッサ(図示せず)が、本開示で説明する技法のいずれかまたはすべてを実行するように構成され得る。
[00116]説明の目的で、本開示は、HEVCコーディングのコンテキストにおいてビデオデコーダ30を説明する。しかしながら、本開示の技法は他のコーディング規格または方法に適用可能であり得る。図3Aに示す例は、シングルレイヤコーデックのためのものである。しかしながら、図3Bに関してさらに説明するように、ビデオデコーダ30の一部または全部は、マルチレイヤコーデックの処理のために複製され得る。
[00117]図3Aの例では、ビデオデコーダ30は複数の機能構成要素を含む。ビデオデコーダ30の機能構成要素は、エントロピー復号ユニット150と、予測処理ユニット152と、逆量子化ユニット154と、逆変換ユニット156と、再構成ユニット158と、フィルタユニット159と、復号されたピクチャバッファ160とを含む。予測処理ユニット152は、動き補償ユニット162と、イントラ予測ユニット164と、レイヤ間予測ユニット166とを含む。いくつかの例では、ビデオデコーダ30は、図2Aのビデオエンコーダ20に関して説明された符号化経路とは全般に逆の復号経路を実行し得る。他の例では、ビデオデコーダ30は、より多いか、より少ないか、または異なる機能構成要素を含み得る。
[00118]ビデオデコーダ30は、符号化されたビデオデータを備えるビットストリームを受信し得る。ビットストリームは、複数のシンタックス要素を含み得る。ビデオデコーダ30がビットストリームを受信すると、エントロピー復号ユニット150は、ビットストリームに対して構文解析動作を実行し得る。ビットストリームに対して構文解析動作を実行した結果として、エントロピー復号ユニット150は、ビットストリームからシンタックス要素を抽出し得る。構文解析動作を実行することの一部として、エントロピー復号ユニット150は、ビットストリーム中のエントロピー符号化されたシンタックス要素をエントロピー復号し得る。予測処理ユニット152、逆量子化ユニット154、逆変換ユニット156、再構成ユニット158、およびフィルタユニット159は、ビットストリームから抽出されたシンタックス要素に基づいて、復号されたビデオデータを生成する再構成演算を実行し得る。
[00119]上記で説明したように、ビットストリームは、一連のNALユニットを備え得る。ビットストリームのNALユニットは、ビデオパラメータセットNALユニット、シーケンスパラメータセットNALユニット、ピクチャパラメータセットNALユニット、SEI NALユニットなどを含み得る。ビットストリームに対して構文解析動作を実行することの一部として、エントロピー復号ユニット150は、シーケンスパラメータセットNALユニットからのシーケンスパラメータセット、ピクチャパラメータセットNALユニットからのピクチャパラメータセット、SEI NALユニットからのSEIデータなどを抽出しエントロピー復号する、構文解析動作を実行し得る。
[00120]さらに、ビットストリームのNALユニットは、コード化されたスライスNALユニットを含み得る。ビットストリームに対して構文解析動作を実行することの一部として、エントロピー復号ユニット150は、コード化されたスライスNALユニットからコード化されたスライスを抽出しエントロピー復号する、構文解析動作を実行し得る。コード化されたスライスの各々は、スライスヘッダとスライスデータとを含み得る。スライスヘッダは、スライスに関するシンタックス要素を含み得る。スライスヘッダ中のシンタックス要素は、スライスを含むピクチャに関連付けられたピクチャパラメータセットを識別するシンタックス要素を含み得る。エントロピー復号ユニット150は、スライスヘッダを復元するために、コード化されたスライスヘッダ中のシンタックス要素に対してCABAC復号演算などのエントロピー復号演算を実行し得る。
[00121]コード化されたスライスNALユニットからスライスデータを抽出することの一部として、エントロピー復号ユニット150は、スライスデータ中のコーディングされたCUからシンタックス要素を抽出する構文解析動作を実行し得る。抽出されたシンタックス要素は、変換係数ブロックに関連付けられたシンタックス要素を含み得る。エントロピー復号ユニット150は、次いで、シンタックス要素のうちのいくつかに対してCABAC復号演算を実行し得る。
[00122]エントロピー復号ユニット150が、区分されていないCUに対して構文解析動作を実行した後、ビデオデコーダ30は、区分されていないCUに対して再構成演算を実行し得る。区分されていないCUに対して再構成演算を実行するために、ビデオデコーダ30は、CUの各TUに対して再構成演算を実行し得る。CUの各TUについて再構成演算を実行することによって、ビデオデコーダ30は、CUに関連付けられた残差ビデオブロックを再構成し得る。
[00123]TUに対して再構成演算を実行することの一部として、逆量子化ユニット154は、TUに関連付けられた変換係数ブロックを逆量子化(inverse quantize)、たとえば、逆量子化(de-quantize)し得る。逆量子化ユニット154は、HEVCのために提案された、またはH.264復号規格によって定義された逆量子化処理と同様の方法で、変換係数ブロックを逆量子化し得る。逆量子化ユニット154は、量子化の程度を決定し、同様に、逆量子化ユニット154が適用すべき逆量子化の程度を決定するために、変換係数ブロックのCUに関してビデオエンコーダ20によって計算される量子化パラメータQPを使用し得る。
[00124]逆量子化ユニット154が変換係数ブロックを逆量子化した後、逆変換ユニット156は、変換係数ブロックに関連付けられたTUのための残差ビデオブロックを生成し得る。逆変換ユニット156は、TUのための残差ビデオブロックを生成するために、変換係数ブロックに逆変換を適用し得る。たとえば、逆変換ユニット156は、変換係数ブロックに、逆DCT、逆整数変換、逆カルーネンレーベ変換(KLT:Karhunen-Loeve transform)、逆回転変換、逆方向変換、または別の逆変換を適用し得る。いくつかの例では、逆変換ユニット156は、ビデオエンコーダ20からのシグナリングに基づいて、変換係数ブロックに適用すべき逆変換を決定し得る。そのような例では、逆変換ユニット156は、変換係数ブロックに関連付けられたツリーブロックの4分木のルートノードにおいてシグナリングされた変換に基づいて、逆変換を決定し得る。他の例では、逆変換ユニット156は、ブロックサイズ、コーディングモードなど、1つまたは複数のコーディング特性から逆変換を推定し得る。いくつかの例では、逆変換ユニット156はカスケードされた逆変換を適用し得る。
[00125]いくつかの例では、動き補償ユニット162は、補間フィルタに基づく補間を実行することによって、PUの予測されたビデオブロックを改良し得る。サブサンプル精度を有する動き補償のために使用されるべき補間フィルタ用の識別子は、シンタックス要素に含まれ得る。動き補償ユニット162は、参照ブロックのサブ整数サンプルについての補間された値を計算するために、PUの予測されたビデオブロックの生成中にビデオエンコーダ20によって使用された同じ補間フィルタを使用し得る。動き補償ユニット162は、受信されたシンタックス情報に従って、ビデオエンコーダ20によって使用された補間フィルタを決定し得、予測されたビデオブロックを生成するためにその補間フィルタを使用し得る。
[00126]図8に関して以下でさらに説明するように、予測処理ユニット152は、図8に示される方法を実行することによってPU(または任意の他の参照レイヤブロックおよび/またはエンハンスメントレイヤブロックまたはビデオユニット)をコーディング(たとえば、符号化または復号)し得る。たとえば、動き補償ユニット162、イントラ予測ユニット164、またはレイヤ間予測ユニット166は、一緒にまたは別々に、図8に示される方法を実行するように構成され得る。
[00127]PUが、イントラ予測を使用して符号化される場合、イントラ予測ユニット164は、PUのための予測されたビデオブロックを生成するためにイントラ予測を実行し得る。たとえば、イントラ予測ユニット164は、ビットストリーム中のシンタックス要素に基づいて、PUのためのイントラ予測モードを決定し得る。ビットストリームは、PUのイントラ予測モードを決定するためにイントラ予測ユニット164が使用し得るシンタックス要素を含み得る。
[00128]いくつかの事例では、イントラ予測ユニット164が現在のPUのイントラ予測モードを決定するために別のPUのイントラ予測モードを使用するべきであることを、シンタックス要素が示し得る。たとえば、現在のPUのイントラ予測モードが隣接PUのイントラ予測モードと同じであることが起こり得る。言い換えれば、隣接PUのイントラ予測モードは、現在のPUに対して最確モードであり得る。したがって、この例では、ビットストリームは、PUのイントラ予測モードが隣接PUのイントラ予測モードと同じであることを示す、小さいシンタックス要素を含み得る。イントラ予測ユニット164は、次いで、空間的に隣接するPUのビデオブロックに基づいてPUのための予測データ(たとえば、予測されたサンプル)を生成するために、イントラ予測モードを使用し得る。
[00129]上記で説明したように、ビデオデコーダ30もレイヤ間予測ユニット166を含み得る。レイヤ間予測ユニット166は、SVCにおいて利用可能である1つまたは複数の異なるレイヤ(たとえば、ベースレイヤまたは参照レイヤ)を使用して、現在のブロック(たとえば、EL中の現在のブロック)を予測するように構成される。そのような予測は、レイヤ間予測と呼ばれることがある。レイヤ間予測ユニット166は、レイヤ間冗長性を低減するための予測方法を利用し、それによって、コーディング効率を改善し、計算リソース要件を低減する。レイヤ間予測のいくつかの例は、レイヤ間イントラ予測と、レイヤ間動き予測と、レイヤ間残差予測とを含む。レイヤ間イントラ予測は、エンハンスメントレイヤ中の現在のブロックを予測するために、ベースレイヤの中でコロケートされているブロックの再構成を使用する。レイヤ間動き予測は、エンハンスメントレイヤ中の動きを予測するために、ベースレイヤの動き情報を使用する。レイヤ間残差予測は、エンハンスメントレイヤの残差を予測するために、ベースレイヤの残差を使用する。レイヤ間予測方式の各々について、以下でより詳細に説明する。
[00130]再構成ユニット158は、CUのビデオブロックを再構成するために、CUのTUに関連付けられた残差ビデオブロックおよびCUのPUの予測されたビデオブロック、たとえば、適用可能なとき、イントラ予測データまたはインター予測データのいずれかを使用し得る。したがって、ビデオデコーダ30は、ビットストリーム中のシンタックス要素に基づいて予測されたビデオブロックと残差ビデオブロックとを生成し得、予測されたビデオブロックと残差ビデオブロックとに基づいてビデオブロックを生成し得る。
[00131]再構成ユニット158がCUのビデオブロックを再構成した後、フィルタユニット159は、CUに関連したブロッキングアーティファクトを低減するためにデブロッキング演算を実行し得る。フィルタユニット159が、CUに関連したブロッキングアーティファクトを低減するためにデブロッキング演算を実行した後、ビデオデコーダ30は、CUのビデオブロックを復号されたピクチャバッファ160に記憶し得る。復号されたピクチャバッファ160は、次の動き補償、イントラ予測、および図1Aまたは図1Bのディスプレイデバイス32などのディスプレイデバイス上での提示のために、参照ピクチャを提供し得る。たとえば、ビデオデコーダ30は、復号されたピクチャバッファ160の中のビデオブロックに基づいて、他のCUのPUに対して、イントラ予測演算またはインター予測演算を実行し得る。
マルチレイヤデコーダ
[00132]図3Bは、本開示で説明する態様による技法を実装し得るマルチレイヤビデオデコーダ33(単にビデオデコーダ33とも呼ばれる)の一例を示すブロック図である。ビデオデコーダ33は、SHVCおよびマルチビューコーディングの場合など、マルチレイヤビデオフレームを処理するように構成され得る。さらに、ビデオデコーダ33は、本開示の技法のいずれかまたはすべてを実行するように構成され得る。
[00133]ビデオデコーダ33は、ビデオデコーダ30Aとビデオデコーダ30Bとを含み、それらの各々はビデオデコーダ30として構成され得、ビデオデコーダ30に関して上記で説明した機能を実行し得る。さらに、参照番号の再利用によって示されるように、ビデオデコーダ30Aおよび30Bは、ビデオデコーダ30としてのシステムおよびサブシステムのうちの少なくともいくつかを含み得る。ビデオデコーダ33は、2つのビデオデコーダ30Aおよび30Bを含むように示されるが、ビデオデコーダ33は、そのように限定されず、任意の数のビデオデコーダ30のレイヤを含み得る。いくつかの実施形態では、ビデオデコーダ33はアクセスユニット中の各ピクチャまたは各フレームに対してビデオデコーダ30を含み得る。たとえば、5つのピクチャを含むアクセスユニットは、5つのデコーダレイヤを含むビデオデコーダによって処理または復号され得る。いくつかの実施形態では、ビデオデコーダ33は、アクセスユニット中のフレームよりも多くのデコーダレイヤを含み得る。いくつかのそのような場合では、ビデオデコーダのレイヤのうちのいくつかは、いくつかのアクセスユニットを処理するときに非アクティブであり得る。
[00134]ビデオデコーダ30Aおよび30Bに加えて、ビデオデコーダ33は、アップサンプリングユニット92を含み得る。いくつかの実施形態では、アップサンプリングユニット92は、フレームまたはアクセスユニットのための参照ピクチャリストに追加されるべきエンハンストレイヤを作成するために、受信されたビデオフレームのベースレイヤをアップサンプリングし得る。このエンハンストレイヤは、復号されたピクチャバッファ160に記憶され得る。いくつかの実施形態では、アップサンプリングユニット92は、図2Aのリサンプリングユニット90に関して説明した実施形態の一部または全部を含むことができる。いくつかの実施形態では、アップサンプリングユニット92は、レイヤをアップサンプリングし、スライス境界ルールおよび/またはラスタ走査ルールのセットに準拠するように、1つまたは複数のスライスを再編成、再定義、修正、または調整するように構成される。場合によっては、アップサンプリングユニット92は、受信されたビデオフレームのレイヤをアップサンプリングおよび/またはダウンサンプリングするように構成されたリサンプリングユニットであり得る。
[00135]アップサンプリングユニット92は、下位レイヤデコーダ(たとえば、ビデオデコーダ30A)の復号されたピクチャバッファ160からピクチャまたはフレーム(またはピクチャに関連付けられたピクチャ情報)を受信し、ピクチャ(または受信されたピクチャ情報)をアップサンプリングするように構成され得る。このアップサンプリングされたピクチャは、次いで、下位レイヤデコーダと同じアクセスユニット中のピクチャを復号するように構成された、上位レイヤデコーダ(たとえば、ビデオデコーダ30B)の予測処理ユニット152に供給され得る。場合によっては、上位レイヤデコーダは、下位レイヤデコーダから除去された1つのレイヤである。他の場合には、図3Bのレイヤ0デコーダとレイヤ1デコーダとの間に、1つまたは複数の上位レイヤデコーダがあり得る。
[00136]場合によっては、アップサンプリングユニット92は、省略またはバイパスされ得る。そのような場合、ビデオデコーダ30Aの復号されたピクチャバッファ160からのピクチャは、直接、または少なくともアップサンプリングユニット92に供給されずに、ビデオデコーダ30Bの予測処理ユニット152に供給され得る。たとえば、ビデオデコーダ30Bに供給されたビデオデータ、およびビデオデコーダ30Aの復号されたピクチャバッファ160からの参照ピクチャが、同じサイズまたは解像度である場合、参照ピクチャは、アップサンプリングを伴わずにビデオデコーダ30Bに供給され得る。さらに、いくつかの実施形態では、アップサンプリングユニット92は、ビデオデコーダ30Aの復号されたピクチャバッファ160から受信された参照ピクチャを、アップサンプリングまたはダウンサンプリングするように構成されたリサンプリングユニット90であり得る。
[00137]図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)ピクチャ
[00138]いくつかのビデオコーディング方式は、ビットストリームが、そのようなランダムアクセスポイントに先行するいかなるピクチャも復号する必要なく、そのようなランダムアクセスポイントのいずれかから始めて復号され得るような、ランダムアクセスポイントをビットストリーム全体にわたって提供し得る。そのようなビデオコーディング方式では、出力順序においてランダムアクセスポイントに追従するすべてのピクチャ(たとえば、ランダムアクセスポイントを提供するピクチャと同じアクセスユニットの中にあるピクチャを含む)は、ランダムアクセスポイントに先行するいかなるピクチャも使用することなく正しく復号され得る。たとえば、ビットストリームの一部分が送信の間または復号の間に失われても、デコーダは、次のランダムアクセスポイントから始めてビットストリームの復号を再開することができる。ランダムアクセスのサポートは、たとえば、動的なストリーミングサービス、シーク動作、チャネル切替えなどを容易にし得る。
[00139]いくつかのコーディング方式では、そのようなランダムアクセスポイントは、イントラランダムアクセスポイント(IRAP)ピクチャと呼ばれるピクチャによって提供され得る。たとえば、layerBの中にあり復号順序においてauAに先行するアクセスユニット(「auB」)の中に含まれるランダムアクセスポイント(または、auAの中に含まれるランダムアクセスポイント)を有するlayerAの各参照レイヤ(「layerB」)(たとえば、layerAを予測するために使用されるレイヤである参照レイヤ)に関して出力順序においてauBに追従するlayerAの中のピクチャ(auBの中に位置するそれらのピクチャを含む)が、auBに先行するlayerAの中のいかなるピクチャも復号する必要なく正しく復号可能であるように、アクセスユニット(「auA」)の中に含まれるエンハンスメントレイヤ(「layerA」)の中のランダムアクセスポイント(たとえば、エンハンスメントレイヤIRAPピクチャによって提供される)は、レイヤ特有のランダムアクセスを提供し得る。
[00140]IRAPピクチャは、イントラ予測(たとえば、他のピクチャを参照することなくコーディングされる)を使用してコーディングされ得、たとえば、IDRピクチャと、CRAピクチャと、BLAピクチャとを含み得る。ビットストリームの中にIDRピクチャがあるとき、復号順序においてIDRピクチャに先行するすべてのピクチャは、復号順序においてIDRピクチャに追従するピクチャによる予測のために使用されない。ビットストリームの中にCRAピクチャがあるとき、CRAピクチャに追従するピクチャは、復号順序においてCRAピクチャに先行するピクチャを予測のために使用してよく、または使用しなくてもよい。復号順序においてCRAピクチャに追従するが、復号順序においてCRAピクチャに先行するピクチャを使用するピクチャは、ランダムアクセススキップドリーディング(RASL:random access skipped leading)ピクチャと呼ばれることがある。復号順序においてIRAPピクチャに追従するとともに出力順序においてIRAPピクチャに先行する別のタイプのピクチャは、復号順序においてIRAPピクチャに先行するいかなるピクチャへの参照も含まないことがあるランダムアクセス復号可能リーディング(RADL:random access decodable leading)ピクチャである。CRAピクチャに先行するピクチャが利用可能でない場合、RASLピクチャはデコーダによって廃棄されてよい。BLAピクチャは、(たとえば、2つのビットストリームが互いに接合され(spliced together)、BLAピクチャが復号順序において第2のビットストリームの最初のピクチャであるので)BLAピクチャに先行するピクチャがデコーダにとって利用可能でない場合があることを、デコーダに示す。IRAPピクチャであるベースレイヤのピクチャ(たとえば、0としてのレイヤID値を有するピクチャ)を含むアクセスユニット(たとえば、複数のレイヤにわたって同じ出力時間に関連付けられたすべてのコード化されたピクチャからなるピクチャのグループ)は、IRAPアクセスユニットと呼ばれることがある。
IRAPピクチャのクロスレイヤアライメント
[00141]SVCでは、IRAPピクチャは、異なるレイヤにわたる位置合わせ(たとえば、同じアクセスユニットに含まれる)を必要とされなくてよい。たとえば、IRAPピクチャが位置合わせを必要とされるのであれば、少なくとも1つのIRAPピクチャを含むいかなるアクセスユニットもIRAPピクチャのみを含むはずである。一方、IRAPピクチャが位置合わせを必要とされないのであれば、単一のアクセスユニットの中で、1つのピクチャ(たとえば、第1のレイヤの中の)がIRAPピクチャであってよく、別のピクチャ(たとえば、第2のレイヤの中の)が非IRAPピクチャであってよい。ビットストリームの中にそのような非整合IRAPピクチャを有することは、いくつかの利点をもたらすことがある。たとえば、2レイヤビットストリームの中で、エンハンスメントレイヤの中よりも多くのIRAPピクチャがベースレイヤの中にある場合、ブロードキャストおよびマルチキャストの適用例において、小さい同調遅延(low tune-in delay)および高いコーディング効率が達成され得る。
[00142]いくつかのビデオコーディング方式では、ピクチャ順序カウント(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値を生成するように修正され得る。
ピクチャ順序カウント(POC)
[00143]上記で説明したように、特定のコード化されたピクチャに対するピクチャ順序カウント(POC)の値(たとえば、HEVCにおけるPicOrderCntVal)は、ピクチャ出力プロセスにおける特定のコード化されたピクチャの、同じコード化されたビデオシーケンスの中の他のピクチャに対する相対順序を示す。いくつかの実施形態では、POCは最下位ビット(LSB)と最上位ビット(MSB)とを備え、POCはMSBとLSBとを連結することによって取得され得る。他の実施形態では、POCはMSB値とLSB値とを加算することによって取得され得る。LSBは、スライスヘッダの中でシグナリングされ得、MSBは、エンコーダまたはデコーダによって、現在のピクチャのNALユニットタイプ、および(1)RASLまたはRADLピクチャでなく、(2)廃棄可能(たとえば、他のピクチャがそれらに依拠せず、そのため帯域幅制約を満たすためにそれらがドロップされることを許容することを示す、「廃棄可能」としてマークされるピクチャ)でなく、(3)サブレイヤ非参照ピクチャ(たとえば、同じ時間的なサブレイヤまたは同じレイヤの中の他のピクチャによる参照のために使用されないピクチャ)でなく、(4)0としての値に等しい時間ID(a temporal ID)(たとえば、時間サブレイヤID)を有する、復号順序において1つまたは複数の前のピクチャのMSBおよびLSBに基づいて、算出され得る。(1)〜(4)に記載されるそのようなピクチャは、本明細書でPOCアンカーピクチャと呼ばれることがある。同様に、0としての値よりも大きい時間ID値を有するピクチャ、RASLもしくはRADLピクチャ、廃棄可能ピクチャ、またはサブレイヤ非参照ピクチャは、非POCアンカーピクチャと呼ばれることがある。POCアンカーピクチャは、エンコーダおよび/またはデコーダが、(たとえば、帯域幅制約を満たすために)ビットストリームから除去するように選ぶことがないピクチャをさらに含み得る。POCアンカーピクチャは、エンコーダおよび/またはデコーダが、(たとえば、帯域幅制約を満たすために)ビットストリームから除去するように構成されることがあるタイプのピクチャ以外の任意のピクチャをさらに含み得る。非POCアンカーピクチャは、POCアンカーピクチャでない任意のピクチャを含み得る。
[00144]現在のピクチャが、(1)1としての値に等しいNoRaslOutputFlag(たとえば、1としての値に設定される場合はRASLピクチャが出力されないことを示し、0としての値に設定される場合はRASLピクチャが出力されることを示すフラグ)を有するIRAPピクチャ、または(2)ビットストリームの最初のピクチャであるCRAピクチャであるとき、POC MSBの値は、0としての値に等しいものとして推定される。上述されたように、マルチレイヤビットストリーム(たとえば、1つを越えるレイヤを有するSHVCまたはMV−HEVCのビットストリーム)では、1つまたは複数のピクチャがIRAPピクチャであるとともに1つまたは複数の他のピクチャが非IRAPピクチャであるアクセスユニット(AU)が存在し得、そのようなAUは、「非整合IRAP AU」と呼ばれることがある。非整合IRAP AUを含むビットストリームを復号するとき、ビットストリームの中でシグナリングされるPOC LSB値に基づいて導出されるPOCが、アクセスユニットの中のすべてのピクチャが同じPOC値を有するべきであるというビットストリーム適合要件に違反することになると考えられる(また、その可能性が高い)。
[00145]いくつかの実施形態では、非整合IRAP AUがビットストリームの中に存在するときでも、AUの中のすべてのピクチャのPOCが同じであるように現在のピクチャおよびDPBの中のピクチャのPOC値が調整されるように、POCリセットフラグ(たとえば、poc_reset_flag)が、ピクチャのPOCをリセットするために使用され得る。
[00146]いくつかの実施形態では、単一のPOCリセットフラグの代わりに、2つのフラグ、すなわち、POC MSBリセットフラグ(たとえば、poc_msb_reset_flag)とPOC LSBリセットフラグ(たとえば、poc_lsb_reset_flag)とが使用され得る。前者(すなわち、poc_msb_reset_flag)は、POCのMSBをリセットし、後者(すなわち、poc_lsb_reset_flag)は、POCのLSBをリセットする。これらのフラグの両方が、スライスヘッダの中でシグナリングされ得る。
[00147]たとえば、特定のピクチャが233としてのPOC値を有し、POCのMSBおよびLSBがそれぞれ1ビットおよび7ビットを形成する場合、MSBは「1」(たとえば、128としての値を有する)であることになり、LSBは「1101001」(たとえば、105としての値を有する)であることになる。したがって、POCのMSBだけが(たとえば、1としての値を有するpoc_msb_reset_flagを処理することに応答して)リセットされる場合、POC値は105になり、LSBだけが(たとえば、1としての値を有するpoc_lsb_reset_flagを処理することに応答して)リセットされる場合、POC値は128になる。MSBとLSBの両方が(たとえば、それぞれ1としての値を有するpoc_msb_reset_flagとpoc_lsb_reset_flagとを処理することに応答して)リセットされる場合、POC値は0になる。
[00148]いくつかの実施形態では、2つのフラグ(たとえば、poc_msb_reset_flagおよびpoc_lsb_reset_flag)は、2ビットのPOCリセットインジケータと置き換えられてよい。たとえば、2ビットのPOCリセットインジケータは、4つの可能な値(たとえば、0〜3)を有してよく、ここで、0はリセットしないことを示し、1はMSBリセットを示し、2はMSBおよびLSBリセットを示し、3は誤り耐性のために使用される(たとえば、POCリセットID、POCリセッティング期間IDなどの、別のPOCリセットについての何かを示す)。
POC値のリセット
[00149]図4〜図7を参照すると、非整合IRAP AUの中のPOC値(たとえば、LSBおよびMSB)をリセットするための誘因(motivation)が説明される。上述されたように、いくつかのコーディング方式では、単一のAUの中のすべてのコード化されたピクチャのPOCが同じであるべきであることを、いくつかの適合制約が規定することがある。POC値の適切なリセットを伴わないと、ビットストリームの中の非整合IRAP AUは、そのような適合制約に違反するPOC値を生み出すことがある。
[00150]図4は、エンハンスメントレイヤ(EL)410とベースレイヤ(BL)420とを含むマルチレイヤビットストリーム400を示す。EL410はELピクチャ412〜418を含み、BLはBLピクチャ422〜428を含む。マルチレイヤビットストリーム400は、アクセスユニット(AU)430〜460をさらに含む。AU430は、ELピクチャ412とBLピクチャ422とを含み、AU440は、ELピクチャ414とBLピクチャ424とを含み、AU450は、ELピクチャ416とBLピクチャ426とを含み、AU460は、ELピクチャ418とBLピクチャ428とを含む。図4の例では、ELピクチャ414はIDRピクチャであり、AU440の中の対応するBLピクチャ424はトレイリングピクチャ(a trailing picture)(たとえば、非IRAPピクチャ)であり、したがって、AU440は非整合IRAP AUである。いくつかの実施形態では、そのピクチャがベースレイヤの中にないIDRピクチャである場合、MSBリセットが所与のピクチャにおいて実行される。そのようなIDRピクチャは、非ゼロのPOC LSB値を有してよい。
[00151]図5は、図4のマルチレイヤビットストリーム400に関してシグナリングおよび導出され得るPOC値を示す表500を示す。図5に示すように、EL410の中のPOCのMSBはELピクチャ414においてリセットされるが、BL420の中のPOCのMSBはリセットされない。したがって、リセットが非整合IRAP AU440の中のBLピクチャ424においてBL420の中で実行されない場合、AU440〜460の中のBLピクチャおよびELピクチャのPOC値は、適合制約によって規定されるように一致(すなわち、等しい)しないことになる。リセットありおよびリセットなしのPOC値の差異が、図5ではボールドで強調されている。
[00152]図6は、エンハンスメントレイヤ(EL)610とベースレイヤ(BL)620とを含むマルチレイヤビットストリーム600を示す。EL610はELピクチャ612〜618を含み、BLはBLピクチャ622〜628を含む。マルチレイヤビットストリーム600は、アクセスユニット(AU)630〜660をさらに含む。AU630は、ELピクチャ612とBLピクチャ622とを含み、AU640は、ELピクチャ614とBLピクチャ624とを含み、AU650は、ELピクチャ616とBLピクチャ626とを含み、AU660は、ELピクチャ618とBLピクチャ628とを含む。図6の例では、BLピクチャ624はIDRピクチャであり、AU640の中の対応するELピクチャ614はトレイリングピクチャ(たとえば、非IRAPピクチャ)であり、したがって、AU640は非整合IRAP AUである。いくつかの実施形態では、そのピクチャがベースレイヤの中にあるIDRピクチャである場合、MSBリセットおよびLSBリセットが所与のピクチャに対して実行される。たとえば、ビットストリームは、そのようなBL IDRピクチャのPOC MSBおよびPOC LSBがリセットされるべきであるという指示を含み得る。あるいは、デコーダは、POCリセットが実行されるべきであるといういかなる指示もビットストリームの中に伴わず、そのようなBL IDRピクチャのPOC MSBおよびPOC LSBのリセットを実行し得る。
[00153]図7は、図6のマルチレイヤビットストリーム600に関してシグナリングおよび導出され得るPOC値を示す表700を示す。図7に示すように、BL620の中のPOCのMSBおよびLSBはBLピクチャ624においてリセットされるが、EL610の中のPOCのMSBもLSBもリセットされない。したがって、POCのMSBおよびLSBのリセットが非整合IRAP AU640の中のELピクチャ614においてEL610の中で実行されない場合、AU640〜660の中のBLピクチャおよびELピクチャのPOC値は、適合制約によって規定されるように一致しないことになる。リセットありおよびリセットなしのPOC値の差分が、図7ではボールドで強調されている。
[00154]本明細書で説明される実施形態は図4および図6に示す例示的なビットストリーム構成に限定されず、本明細書で説明される技法は、任意の数のレイヤと、アクセスユニットと、ピクチャとを有する任意のマルチレイヤビットストリームに拡張され得る。また、図4〜図7に示す例では、POCのLSBは7つのビットを使用して表される。しかしながら、本明細書で説明される技法は、POC値表現の任意の形態を有するシナリオに拡張され得る。
先行するピクチャのリセットおよびリセットピクチャの損失
[00155]MSBリセットまたはLSBリセットが特定のピクチャにおいて実行されるとき、復号順序においてその特定のピクチャに先行する同じレイヤの中の他のピクチャも、その特定のピクチャにおいて実行されるリセットに基づいてリセットされる。たとえば、図6の例では、ELピクチャ614は、241(たとえば、113+128である、「1110001」としてのLSB+「1」としてのMSB)としてのPOC値を有する。MSBリセットおよびLSBリセットがELピクチャ614において実行されるとき、ELピクチャ614のPOC値は0になり、復号順序においてELピクチャ614に先行するEL610の中のELピクチャ612も、ELピクチャ614の241としての元のPOC値に基づいてリセットされる。たとえば、ELピクチャ612の新しいPOC値は、ELピクチャ614の事前にリセットされたPOC値(241としての値)を、240(たとえば、112+128である、「1110000」としてのLSB+「1」としてのMSB)であるELピクチャ612の事前にリセットされたPOC値から減算することによって計算される。したがって、リセットの後、ELピクチャ612がELピクチャ614の前に出力されるべきであるという事実に従って、ELピクチャ612のPOC値は−1になり、ここで、小さいPOC値は出力順序におけるより早い位置を示す。図7に示すように、後続のAU650および660に対してシグナリングされるLSB値は、リセットがELピクチャ614において実行されると仮定して、それに応じて(たとえば、それぞれ1としての値および2としての値に)調整される。
[00156]しかしながら、デコーダがシグナリングを処理しそれに応じてPOCリセットを実行できるように、上述されたMSBおよび/またはLSBの適切なPOCリセットがビットストリームの中で(たとえば、スライスヘッダの中で)シグナリングされる場合でも、そのようなPOCリセットをシグナリングするピクチャがビットストリームの送信の間に失われ、または帯域幅制約を満たすためにビットストリームから除去される場合、特定のピクチャにおいて実行されるように意図されたPOCリセットは適切に実行されないことがある。
[00157]たとえば、図6の例では、ELピクチャ614がデコーダにとって利用できない場合、デコーダは、EL610の中のPOCのMSBおよびLSBをAU640においてリセットすることを知らないことになる(すなわち、決定しないことになる)。したがって、ELピクチャ614におけるリセットが起きなかった(たとえば、リセット動作が実行されなかった)ので、利用できないELピクチャ614に復号順序において先行するいかなるピクチャのPOC値も、依然としてそれらの事前にリセットされた元のPOC値を有することになる。一方、利用できないELピクチャ614に復号順序において後続するピクチャのPOC値は、リセットが実際に起きた(すなわち、リセット動作が実行された)かのように決定またはシグナリングされたことになる。したがって、図7の例では、ELピクチャ612、616、および618は、それぞれ、240、1、および2としてのPOC値を有することになり、そのことは、ELピクチャ612が出力順序においてELピクチャ616および618に先行すると仮定すると正しくないことになる。したがって、POCリセットをシグナリングするピクチャが利用できなくなったときにも正確なPOC値をもたらすコーディング方法が望まれる。
POCリセッティング期間ID
[00158]いくつかの実施形態では、POCリセッティング期間IDは、各POCリセッティング期間(たとえば、POCリセットとともに開始し次のPOCリセットの直前に終了する期間)を識別するために使用される。ビットストリーム適合制約は、時間的に連続した(たとえば、復号順序において)2つのPOCリセッティング期間のためのPOCリセッティング期間IDが異なることを義務付け得る。POCリセッティング期間の中の各ピクチャは、POCリセッティング期間のPOCリセッティング期間IDに関連付けられ得る。POCリセッティング期間IDを使用して、コーダは、POCリセッティングAUの中の1つまたは複数のピクチャが失われた場合であっても、POC値が複数のレイヤにわたって位置合わせされることを確実にすることができる場合がある。
アンカー情報としてのPOC値の使用
[00159]いくつかの実施形態では、復号されたピクチャに割り当てられるPOC値は、アンカー情報として利用され得る。たとえば、特定のピクチャに割り当てられるPOC値は、その特定のピクチャに復号順序において後続する別のピクチャのPOC値の少なくとも一部分(たとえば、MSB、LSB、またはその両方)を計算するために使用され得る。そのような場合、前にシグナリングされた情報を使用して計算されるPOC値の部分は、明示的にシグナリングされる必要がなく、それによって、ビットの節約をもたらす。
[00160]しかしながら、復号されたピクチャに割り当てられるPOC値は、静的でなくてよく、POCリセットプロセスが呼び出されるときに更新されてよい。POC値のこの変わりやすい(mutable)性質により、POC値は、他のプロセッサ、またはビットストリームの中の他のピクチャのためのアンカー情報としての使用にとってあまり有用でなくなることがある。したがって、復号されたピクチャに関連付けられたPOC値を改変することがあるPOCリセットなどのプロセスをビットストリームが呼び出す場合、POC値を利用するときにそのようなプロセスを考慮に入れる改善されたコーディング方式が望まれる。
POCリセット時のDPBの中のピクチャの出力
[00161]いくつかの実装形態では、ビットストリーム制約は、いかなるPOCリセッティング期間についても、POCリセッティング期間に先行するすべてのピクチャが、POCリセッティング期間に関連付けられたPOCリセットピクチャ(たとえば、それに関連したPOCをリセットするための指示を有するピクチャ)、またはPOCリセットピクチャに復号順序において後続する任意のピクチャの前に、出力されるべきであることを義務付け得る。そのようなビットストリーム制約を満たすために、POCリセットが呼び出される(たとえば、POCリセットピクチャに関連付けられたPOCリセットインジケータによって示される)と、コーダは、POCリセットピクチャの前に復号されたDPBの中のすべてのピクチャを出力し得る。
[00162]しかしながら、POCリセッティングピクチャに復号順序において後続するピクチャが、POCリセッティングピクチャに復号順序において先行するすべてのピクチャに、出力順序において必然的に後続するという保証はないので、POCリセットが呼び出されるたびに(たとえば、コーダがPOCリセッティングピクチャを処理するたびに)DPBの中のより早いすべてのピクチャを出力することは、出力順序適合デコーダにおいてピクチャの不正確な出力順序をもたらすことになる。たとえば、POCリセッティングピクチャに復号順序において後続するピクチャは、POCリセッティングピクチャの前に復号されるピクチャのうちの1つに、出力順序において先行するかもしれない。
[00163]たとえば、ピクチャAがPOCリセットピクチャであり、ピクチャBがピクチャAに復号順序において先行するピクチャであり、ピクチャCがピクチャAに復号順序において後続するピクチャである場合、正しい復号順序は、ピクチャB、ピクチャA、そしてピクチャCであることになる。ピクチャCがピクチャAの前に出力されるべきであり、それがピクチャBの前に出力されるべきである場合、正しい出力順序は、ピクチャC、ピクチャA、そしてピクチャBであることになる。DPBの中のすべてのピクチャが上記の実施形態に従って出力されるべきである場合、コーダは、ピクチャBを復号しDPBに記憶し、ピクチャAがPOCリセットピクチャであると理解すると、ピクチャAを復号しDPBの中のピクチャBを出力することになる。しかしながら、ピクチャBをピクチャCの前に出力することは、上述された正しい出力順序によれば不正確であることになる。
POCリセットおよびSEIメッセージ
[00164]いくつかの既存のコーディング方式では、いくつかのSEIメッセージのセマンティクスは、マルチレイヤビデオコーディングに対して提案されるPOCリセットプロセスと互換性がないことになり、SEIメッセージのビットストリームへの適用に際してあいまいさにつながることになる。たとえば、HEVC仕様のバージョン1では、SEIメッセージのうちの多くが、それらがPOCに依存するような方法で規定された。実装がマルチレイヤの場合に拡張されるとき、POCをリセットするという概念が導入された。その結果、多くの場合、特にSEIメッセージがPOCをどのように規定していたのかにおいて、既存のSEIメッセージは不正確またはあいまいにされた。したがって、POCリセットの概念と互換性のあるSEIメッセージに対して更新されたセマンティクスを含む、改善されたコーディング方式が望まれる。
フィードバックメッセージの中のPOC情報
[00165]いくつかの実装形態では、フィードバックメッセージの中のピクチャを識別するためにPOC情報を使用することは不明瞭である。たとえば、多くのシステムは、ピクチャを識別するフィードバックメッセージを使用する。たとえば、送信元と受信側との間のセッションでは、いくつかのピクチャが失われた場合、ピクチャのPOCは、失われたピクチャを識別するために使用される。このPOC情報は、フィードバックメッセージの中で送信され得る。POCリセットの可能性を伴うと、フィードバックメッセージの中に含まれるPOC情報は、識別されているピクチャのPOCに加えて、ピクチャが属するPOCリセッティング期間に関する情報を含む必要があり得る。たとえば、複数のピクチャが同じPOCを有することがあり、ピクチャが属するPOCリセッティング期間に関する情報をシステムが与えられない限り、システムはそれらのピクチャを正しく識別できないことがある。したがって、識別されているピクチャのPOCリセッティング期間をフィードバックメッセージの中で示す、改善されたシステムが望まれる。
POC MSBサイクルのシグナリング
[00166]いくつかの実装形態では、POC LSBがシグナリングされ、POC MSBは、現在のピクチャのNALユニットタイプと、現在のピクチャに復号順序において先行するピクチャのLSBおよび/またはMSBとを使用して計算される。他の実装形態では、POC MSB情報が、POCの導出の誤り耐性を改善するために、CRAピクチャおよびBLAピクチャのスライスヘッダ拡張の中でシグナリングされる。しかしながら、シグナリングされるPOC MSBを、CRAピクチャおよびBLAピクチャ(NoRaslOutputFlagの値が1に等しい)だけに関するPOC値を計算するために使用することは、場合によっては、複数のレイヤにわたって位置合わせされないPOC値をもたらすことになる。したがって、POC値のクロスレイヤアライメントを改善する、改善されたコーディング方式が望まれる。
例および実装形態
[00167]上述されたいくつかの問題に対処するために使用され得るいくつかの方法が、以下に説明される。これらの方法のうちのいくつかは独立に適用されてよく、それらのうちのいくつかは組み合わせて適用されてよい。加えて、本明細書で説明される方法のうちの1つまたは複数を実施するために使用され得る例示的なシンタックスおよびセマンティクスも、以下で提供される。本明細書で説明される方法のうちの1つまたは複数を実施するために組み込まれ得る追加と削除とを示すために、HEVC規格のいくつかの部分が転載されるとき、そのような修正は、イタリック体で示される。
POC導出のための値のシグナリング
[00168]本開示のいくつかの実施形態では、正確なPOC導出のための情報を含むSEIメッセージが、POC MSBおよび/またはPOC LSBがリセットされるべきピクチャに後続する1つまたは複数のピクチャに対してシグナリングされる。たとえば、SEIメッセージは、POC MSB、POC LSB、またはそれらの両方がリセットされるべき別のピクチャ、picBに後続するピクチャ、picAに関連付けられ得る。したがって、picBが完全に失われるときでも、picAに関連付けられたSEIメッセージは、同じレイヤの中の他のピクチャに対する正確なPOC値を導出するために使用され得る。
[00169]本開示のいくつかの実施形態では、正確なPOC導出のための情報が、POC MSBおよび/またはPOC LSBがリセットされるべきピクチャに後続する1つまたは複数のピクチャのスライスヘッダの中でシグナリングされる。たとえば、情報は、POC MSB、POC LSB、またはそれらの両方がリセットされるべき別のピクチャpicBに後続するピクチャpicAのスライスヘッダの中に含まれ得る。したがって、picBが完全に失われるときでも、picAのスライスヘッダの中に含まれる情報は、同じレイヤの中の他のピクチャに対する正確なPOC値を導出するために使用され得る。
[00170]本開示のいくつかの実施形態では、ピクチャのスライスヘッダの中でシグナリングされる、および/またはピクチャに関連したSEIメッセージとしてシグナリングされる情報(本明細書でPOC導出情報と呼ばれることがある)は、同じレイヤの中の先行するPOCリセットピクチャ(たとえば、POCリセットが実行されるべきピクチャ)のPOC値が、POC値の最上位ビット(MSB)と最下位ビット(LSB)の両方をリセットすることによってリセットされるべきか、それともPOC値のMSBだけをリセットすることによってリセットされるべきかを示すPOCリセットタイプと、失われまたは除去された、またPOC導出情報が関連付けられたピクチャに先行するピクチャの、POC値を示すPOCリセット値と、POC導出情報が提供されるべきPOCリセットを識別するPOCリセットIDとを、含み得る。たとえば、シグナリングされるPOCリセットが1としてのPOCリセットIDを有し、1としてのPOCリセットIDを有する別のPOCリセットがすでに実行されている場合、デコーダは、特定のピクチャに関してシグナリングされるPOCリセットをスキップしてよい。
POCリセッティングピクチャに関する出力順序制約
[00171]本開示のいくつかの実施形態では、POCリセッティングピクチャに復号順序において後続するピクチャが、POCリセッティングピクチャに復号順序において先行する別のピクチャに出力順序において先行してはならないように、ビットストリーム制約が追加される。そのような実施形態では、コーダは、そのようなビットストリーム制約が適用可能であることを決定し得、コード化されたビットストリームがビットストリーム制約に適合するようなビットストリーム制約に忠実に従い得る。
[00172]たとえば、POCリセットが現在のピクチャとともにシグナリングされる前に、コーダは、現在のピクチャに復号順序において後続する任意のピクチャが、現在のピクチャに復号順序において先行する任意の他のピクチャの前に出力されるべきであるかどうかを決定し得る。現在のピクチャに復号順序において後続する任意のピクチャが、現在のピクチャに復号順序において先行する任意の他のピクチャの前に出力されるべきであるとコーダが決定する場合、コーダは、コード化されたビットストリームがビットストリーム制約に適合することを確実にするために、現在のピクチャに関連するPOCリセットをシグナリングすることを控えてよい。
[00173]あるいは、コーダは、POCリセットが現在のピクチャとともにシグナリングされるべきであると決定した後、現在のピクチャに復号順序において後続するピクチャが、現在のピクチャに復号順序において先行するいかなるピクチャの前にも出力されないことを確実にし得る。たとえば、コード化されたビットストリームがビットストリーム制約に適合することを確実にするために、現在のピクチャに復号順序において先行する任意のピクチャの前にそのピクチャが出力されるべきである場合、コーダは、ビットストリームの中の任意のピクチャを現在のピクチャの後にコーディングすること(または、任意のピクチャが提供されるのを引き起こすこと)を控えてよい。
POC MSBサイクル
[00174]本開示のいくつかの実施形態では、コーダは、POC MSBサイクルと呼ばれることがあるオフセット値をシグナリングし得る。一例では、POC MSBサイクルは、前にコーディングされたピクチャのPOC MSBと現在のピクチャのPOC MSBとの間の差分を示し得る。そのような例では、コーダは、POC MSBサイクルが関連付けられているピクチャに先行するピクチャのPOC値を更新するために、POC MSBサイクルを使用し得る。別の例では、POC MSBサイクルは、POC MSBサイクルが関連付けられているピクチャのPOC MSBと同一であってよい。したがって、POC MSBサイクルが特定のピクチャに関してシグナリングされるとき、その特定のピクチャのPOC MSBが、シグナリングされたPOC MSBサイクルに基づいて計算され得る。
CRAピクチャおよびBLAピクチャを用いたPOC MSBサイクルのシグナリング
[00175]本開示のいくつかの実施形態では、CRAピクチャおよびBLAピクチャに対して、シグナリングされるPOC MSBサイクルの値は、同じレイヤの中の前のPOCリセットピクチャまたは同じレイヤの中の前のIDRピクチャの、どちらか近い方に対して決定される。どちらも存在しない場合(たとえば、CRA/BLAピクチャが、レイヤの中の最初のCRA/BLAピクチャであることを意味する)、CRA/BLAピクチャのPOC MSBサイクルは、POC MSBサイクル値としての許容された範囲の中の任意の値であってよい。
POCリセットピクチャの中のPOC MSBサイクル
[00176]本開示のいくつかの実施形態では、特定のレイヤの中のCRAピクチャまたはBLAピクチャがPOCリセットピクチャでもあるとき、POC MSBサイクルとしてのシグナリングされる値は、特定のレイヤにおけるDPBの中のすべてのピクチャのPOC値を更新するために使用される。CRAピクチャまたはBLAピクチャがPOCリセットピクチャでもある場合、CRAピクチャまたはBLAピクチャのMSBは0であってよい。特定のレイヤの中のCRAピクチャまたはBLAピクチャがPOCリセットピクチャでないとき、POC MSBサイクルとしてのシグナリングされる値は、CRAピクチャまたはBLAピクチャのPOCを計算するために使用される。
[00177]本開示のいくつかの実施形態では、POC MSBサイクルは、IDRピクチャに対してシグナリングされ得る。特定のレイヤの中のIDRピクチャがPOCリセットピクチャでもあるとき、POC MSBサイクルとしてのシグナリングされる値は、特定のレイヤにおけるDPBの中のすべてピクチャのPOC値を更新するために使用される。特定のレイヤの中のIDRピクチャがPOCリセットピクチャでないとき、POC MSBサイクルとしてのシグナリングされる値は、IDRピクチャのPOCを計算するために使用される。
[00178]図8は、本開示の一実施形態による、ビデオ情報をコーディングするための方法800を示すフローチャートである。図8に示すステップは、エンコーダ(たとえば、図2Aまたは図2Bに示すようなビデオエンコーダ)、デコーダ(たとえば、図3Aまたは図3Bに示すようなビデオデコーダ)、または任意の他の構成要素によって実行され得る。便宜上、方法800について、エンコーダ、デコーダ、または別の構成要素であり得る、コーダによって実行されるものとして説明する。
[00179]方法800は、ブロック801において開始する。ブロック805において、コーダは、ビデオレイヤの中の現在のピクチャがPOCリセットピクチャであるかどうかを決定する。現在のピクチャがPOCリセットピクチャでないとコーダが決定する場合、方法800はブロック810に進む。一方、現在のピクチャがPOCリセットピクチャであるとコーダが決定する場合、方法800はブロック815に進む。
[00180]ブロック810において、コーダは、現在のピクチャに関連したオフセットに基づいて、現在のピクチャのPOCを決定する。オフセットは、現在のピクチャのPOC MSBと、同じレイヤの中の前に復号された別のピクチャのPOC MSBとの間の差分を示し得る。ブロック815において、コーダは、現在のピクチャに関連したオフセットに基づいて、現在のピクチャと同じレイヤの中にあるDPBの中のすべてのピクチャのPOCを更新する。たとえば、コーダは、DPBの中のすべてのピクチャのPOCを、DPBの中の各ピクチャのPOCから値を減算することによって更新し得る。一例では、減算される値は、現在のピクチャに関連したオフセットに基づいて決定されてよい。別の例では、減算される値は、POCリセットがないと現在のピクチャのPOCがそうなっていたはずの値であってよい。方法800は、820において終了する。
[00181]上記で説明したように、図2Aのビデオエンコーダ20、図2Bのビデオエンコーダ23、図3Aのビデオデコーダ30、または図3Bのビデオデコーダ33のうちの、1つまたは複数の構成要素(たとえば、レイヤ間予測ユニット128および/またはレイヤ間予測ユニット166)は、現在のピクチャがPOCリセットピクチャであるかどうかを決定すること、現在のピクチャに関連したオフセットに基づいて現在のピクチャのPOCを決定すること、および現在のピクチャに関連したオフセットに基づいてDPBの中のすべてのピクチャのPOCを更新することなどの、本開示で説明する技法のいずれかを実施するために使用され得る。
[00182]方法800では、図8に示すブロックのうちの1つまたは複数は削除される(たとえば、実行されない)もしくは修正されることがあり、および/または方法が実行される順序は入れ替えられることがある。たとえば、ブロック810が図8に示されるが、ブロック810が除去されてよく、現在のピクチャがPOCリセットでないとコーダが決定する場合、方法800は、いかなる追加の動作も実行することなく終了してよい。あるいは、ブロック815が除去されてよく、ピクチャがPOCリセットピクチャであるとコーダが決定する場合、方法800は、いかなる追加の動作も実行することなく終了してよい。したがって、本開示の実施形態は、図8に示す例に限定されず、または図8に示す例によって限定されず、他の変形が本開示の趣旨から逸脱することなく実施され得る。
POC MSBサイクルが存在することのシグナリング
[00183]本開示のいくつかの実施形態では、POC MSBサイクルがCRAピクチャおよびBLAピクチャに対して(たとえば、スライスヘッダの中で)シグナリングされるかどうかを規定するフラグまたはシンタックス要素が、VPSの中でシグナリングされ得る。POC MSBサイクルのシグナリングは、VPSの中に含まれるフラグまたはシンタックス要素に基づき得る。POC MSBサイクルをシグナリングするかどうかの決定は、VPSの中に含まれるフラグまたはシンタックス要素に基づいて行われ得る。
IRAPピクチャの中のPOC MSBサイクル
[00184]いくつかの実装形態では、コーダは、非整合AU(たとえば、同じAUの中のIRAPピクチャおよび非IRAPピクチャ)の中のPOCを位置合わせするためにPOCリセットを実行し得る。そのような場合、POCリセットが実行されるべきであることを示すために、poc_reset_idcが0としての値よりも大きい値に設定され得る。しかしながら、上述されたようにPOC MSBサイクルがCRAピクチャまたはBLAピクチャと一緒にシグナリングされる場合、そのようなPOCリセットは必要とされないことがある。
[00185]本開示のいくつかの実施形態では、特定のnal_unit_type値(たとえば、IDR、CRA、BLAなど)を有するIRAPピクチャに対してPOC MSBサイクルがシグナリングされ、nuh_layer_idの値が0に等しい非IRAPピクチャとnal_unit_typeの値がIRAPピクチャと同じである少なくとも1つのIRAPピクチャとをAUが含むとき、AUに関連した(たとえば、非IRAPピクチャまたはIRAPピクチャに関連した)poc_reset_idcは、0としての値に等しく設定されてよく、または0としての値よりも大きく設定されてよく、それによって、上述されたビットストリーム制約を除去させる。
静的なレイヤワイズPOC(Static Layer-wise POC)
[00186]本開示のいくつかの実施形態では、任意のPOCリセットプロセスの前に復号されたピクチャのPOC値を規定する追加のPOCが呼び出されている。このPOCは、レイヤワイズPOCと呼ばれることがある。このレイヤワイズPOCの値は、他のレイヤの中のピクチャからの追加の情報を使用することなく、ピクチャ、スライスヘッダ、または同じレイヤの中の他のピクチャの中でシグナリングされる情報から算出され得る。レイヤワイズPOCは、ピクチャ識別のための他のプロシージャ(たとえば、POCリセット)によって影響を受けない、静的なPOC値を望む場合がある任意のプロセスのために使用され得る。たとえば、そのようなプロセスは、参照ピクチャセット復号でのピクチャ識別のために、SEIメッセージを復号する際のピクチャ識別のために、およびピクチャの復号における任意の後処理のために、レイヤワイズPOCを使用し得る。レイヤワイズPOCが使用されるとき、DPBの中のより早いピクチャのPOC値は、POCリセットが実行される時にデクリメントされる必要がない。
[00187]本開示のいくつかの実施形態では、レイヤワイズPOCを実施するために、POCリセットピクチャの中で、またはpoc_reset_idcの値が0としての値に等しくないときはいつでも、レイヤワイズPOCの最下位ビット(LSB)がシグナリングされる。このLSB情報は、POCとレイヤワイズPOCの両方を導出するために使用され得る。POCの最上位ビットは、IRAPピクチャのスライスヘッダ拡張の中でシグナリングされ得る。このMSB情報は、POCとレイヤワイズPOCの両方を導出するために使用され得る。
[00188]本開示のいくつかの実施形態では、POC関連の情報を使用し得る任意のプロセスについて、(たとえば、HEVCの単一レイヤのバージョンへの後方互換を保つために)ベースレイヤに対してPOCが使用され、他のレイヤに対してレイヤワイズPOCが使用される。
フィードバックメッセージの中のPOCリセッティング期間ID
[00189]本開示のいくつかの実施形態では、SHVCまたはMV−HEVCプロファイルのコンテキストにおいて動作しているとき、POC値およびレイヤIDに加えて、最近復号されたピクチャのPOCリセッティング期間IDも、最近復号されたピクチャを識別するためのフィードバックメッセージの中でシグナリングされる。エンコーダは、その場合、前に符号化されたピクチャを一意に識別することができる。たとえば、現在の復号ピクチャは、それの参照ピクチャセット(RPS)の中に参照ピクチャを有し得るが、デコーダは、参照ピクチャへのアクセスを有していないことがある(たとえば、送信の間の喪失に起因して)。この例では、エンコーダが参照ピクチャを再送することを要求するフィードバックメッセージを、デコーダがエンコーダへ送り得る。フィードバックメッセージは、参照ピクチャに関連したPOC値と参照ピクチャに関連したPOCリセッティング期間とを含み得、エンコーダは、参照ピクチャを識別するためにPOC値とPOCリセッティング期間とを使用し得る。たとえば、POC値およびPOCリセッティング期間IDを有するフィードバックメッセージを受信すると、シグナリングされたPOC値に対応する最近復号されたピクチャが最近符号化されたピクチャと異なるPOCリセッティング期間の中にあることが偶然起きた場合、シグナリングされたPOCリセッティング期間IDは、2つのPOCリセッティング期間の間に存在する各POCリセッティング期間にとってのPOCデルタ値を加えて、正しいPOCリセッティング期間へトラックバックするために使用されることになる。
例示的な実装形態#1
[00190]上述された実施形態のうちの1つまたは複数の例示的な実装形態が以下に提供される。ital<<イタリック体>>italで以下に示す(なお、本翻訳文中において、本願の英文明細書におけるイタリック体表記部分を、ital<<…>>italのように表記する)シンタックス、セマンティクス、および復号プロセスへの変更は、MV−HEVC WD6において提供されるそれらに対するものである。これらの変更は、本出願に記載される様々な実施形態を実施する。以下で使用される参照番号(たとえば、サブクローズ5.8、セクション8.1など)は、MV−HEVC WD6におけるセクションを指す。
数学的関係の追加
一実施形態では、次の関係がサブクローズ5.8に組み込まれる。
Figure 2017507517
スライス復号プロセスへの変更
一実施形態では、次の変更がセクション8.1 一般的復号プロセスに加えられる。
− NoClrasOutputFlagが1に等しいとき、変数LayerInitializedFlag[i]は、両端値を含む0からvps_max_layer_idまでのiとしてのすべての値について0に等しく設定され、変数FirstPicInLayerDecodedFlag[i]は、両端値を含む0からvps_max_layer_idまでのiとしてのすべての値について0に等しく設定される。
8.3.1.ピクチャ順序カウントのための復号プロセスへの変更
8.3.1ピクチャ順序カウントのための復号プロセス
このプロセスの出力は、PicOrderCntVal、現在のピクチャのピクチャ順序カウントである。
ピクチャ順序カウントは、マージモードにおける動きパラメータ、および動きベクトル予測を導出するための、ならびにデコーダ適合検査のためのピクチャを識別するために使用される(サブクローズ11参照)。
各コード化されたピクチャは、PicOrderCntValとして示されるピクチャ順序カウント変数に関連付けられる。
現在のピクチャが1に等しいNoRaslOutputFlagを有するIRAPピクチャでないとき、変数prevPicOrderCntLsbおよびprevPicOrderCntMsbは次のように導出される。
− prevTid0Picを、0に等しいTemporalIdを有し、RASLピクチャ、RADLピクチャ、またはサブレイヤ非参照ピクチャでない、復号順序において前のピクチャとし、ital<<PrevPicOrderCnt[nuh_layer_id]を、prevTid0PicのPicOrderCntValとする>>ital。
− 変数prevPicOrderCntLsbは、ital<<prevPicOrderCnt[nuh_layer_id]&(MaxPicOrdeCntLsb−1)>>italに等しく設定される。
− 変数prevPicOrderCntMsbは、ital<<prevPicOrderCnt[nuh_layer_id]−prevPicOrderCntLsb>>italに等しく設定される。
現在のピクチャの変数PicOrderCntMsbは、次のように導出される。
− 現在のピクチャが1に等しいNoRaslOutputFlagを有するIRAPピクチャである場合、PicOrderCntMsbは0に等しく設定される。
− そうでない場合、PicOrderCntMsbは次のように導出される。
Figure 2017507517
PicOrderCntValは、次のように導出される。
Figure 2017507517
注1 − IDRピクチャに対してslice_pic_order_cnt_lsbが0であるものとして推定され、prevPicOrderCntLsbおよびprevPicOrderCntMsbがともに0に等しく設定されるので、すべてのIDRピクチャが0に等しいPicOrderCntValを有する。
PicOrderCntValの値は、両端値を含む−231〜231−1としての範囲の中になければならない。1つのCVSの中で、任意の2つのコード化されたピクチャに対するPicOrderCntVal値は同じであってはならない。
関数PicOrderCnt(picX)は、次のように規定される。
Figure 2017507517
関数DiffPicOrderCnt(picA,picB)は、次のように規定される。
Figure 2017507517
ビットストリームは、両端値を含む−215〜215−1としての範囲の中にない、復号プロセスにおいて使用されるDiffPicOrderCnt(picA,picB)の値をもたらすデータを含んではならない。
注2 − Xが現在のピクチャでありYおよびZが同じCVSの中の2つの他のピクチャであるとすると、DiffPicOrderCnt(X,Y)とDiffPicOrderCnt(X,Z)の両方が正であるか、または両方が負であるとき、YおよびZがXからの同じ出力順序方向にあるものとみなされる。
SEIメッセージのセマンティクスの修正
一実施形態では、サブクローズD.3.4は、次のように修正される。
pan_scan_rect_persistence_flagは、パンスキャン長方形SEIメッセージの持続性を規定する。
0に等しいpan_scan_rect_persistence_flagは、パンスキャン長方形情報が現在の復号されたピクチャだけに適用されることを規定する。
ital<<picAを現在のピクチャとする>>ital。1に等しいpan_scan_rect_persistence_flagは、次の条件のいずれかが真になるまでパンスキャン長方形情報が出力順序において持続することを規定する。
− 新しいCVSが開始する。
− ビットストリームが終了する。
− ital<<PicOrderCnt(picB)およびPicOrderCnt(picA)が、それぞれ、picBに対するピクチャ順序カウントのための復号プロセスの起動の直後のpicBおよびpicAのPicOrderCntVal値であるものとして>>ital、pan_scan_rect_idとしての同じ値を有するパンスキャン長方形SEIメッセージを含むアクセスユニットの中の、ital<<それに対するPicOrderCnt(picB)がPicOrderCnt(picA)よりも大きい>>italピクチャital<<picB>>italが出力される。
一実施形態では、サブクローズD.3.8は、次のように修正される。
回復点(recovery point)SEIメッセージに関連したアクセスユニットから復号を開始するためにランダムアクセスが実行されるとき、デコーダは、関連したピクチャが復号順序におけるビットストリームの中の最初のピクチャであるかのように動作し、PicOrderCntValの導出の際に使用される変数ital<<PrevPicOrderCnt[nuh_layer_id]>>italは、0に等しく設定される。
注2 − HRD情報がビットストリームの中に存在するとき、バッファリング期間SEIメッセージは、ランダムアクセスの後のHRDバッファモデルの初期化を確立するために、回復点SEIメッセージに関連したアクセスユニットに関連付けられるべきである。
復号プロセスが、ビットストリームの開始において、または復号順序において回復点SEIメッセージに関連したアクセスユニットとともに開始されるか否かにかかわらず、回復点SEIメッセージに関連したピクチャによって、またはそのようなピクチャに復号順序において後続する任意のピクチャによって参照されるいかなるSPSまたはPPS RBSPも、復号プロセスに対してそのアクティブ化の前に利用可能でなければならない。
recovery_poc_cntは、出力順序における復号されたピクチャの回復点を規定する。ital<<PicOrderCnt(picA)およびPicOrderCnt(picB)が、それぞれ、picBに対するピクチャ順序カウントのための復号プロセスの起動の直後のpicAおよびpicBのPicOrderCntVal値であるものとして>>ital、現在のピクチャ(すなわち、現在のSEIメッセージに関連したピクチャ)ital<<picA>>italにCVSの中で復号順序において後続するピクチャital<<picB>>italが存在し、ital<<PicOrderCnt(picB)がPicOrderCnt(picA)>>ital+recovery_poc_cntの値にital<<等しい>>ital場合、ピクチャital<<picB>>italは回復点ピクチャと呼ばれる。そうでない場合、ital<<PicOrderCnt(picA)およびPicOrderCnt(picC)が、それぞれ、picCに対するピクチャ順序カウントのための復号プロセスの起動の直後のpicAおよびpicCのPicOrderCntVal値であるものとして、それに対するPicOrderCnt(picC)がPicOrderCnt(picA)+recovery_poc_cntの値よりも大きい>>ital、出力順序における最初のピクチャital<<picCは、回復点ピクチャと呼ばれる>>ital。回復点ピクチャは、現在のピクチャに復号順序において先行してはならない。出力順序におけるすべての復号されたピクチャは、回復点ピクチャの出力順序位置において開始するコンテンツの点で適正またはほぼ適正であるように示される。recovery_poc_cntの値は、両端値を含む−MaxPicOrderCntLsb/2〜MaxPicOrderCntLsb/2−1としての範囲の中になければならない。
一実施形態では、サブクローズD.3.11は、次のように修正される。
前進的改良セグメント開始SEIメッセージは、現在のピクチャ、および継続的に動くシーンの表現ではなく現在のピクチャの品質の改良としての1つまたは複数の後続のピクチャのシーケンスからなる、復号順序において連続したコード化されたピクチャのセットの開始を規定する。
ital<<picAを現在のピクチャとする>>ital。連続したコード化されたピクチャのタグ付けされたセットは、次の条件のうちの1つが真になるまで継続する。
− 新しいCVSが開始する。
− ビットストリームが終了する。
− ital<<PicOrderCnt(picB)およびPicOrderCnt(picA)が、それぞれ、picBに対するピクチャ順序カウントのための復号プロセスの起動の直後のpicBおよびpicAのPicOrderCntVal値であるものとして>>ital、pic_order_cnt_deltaは0よりも大きく、ital<<ピクチャpicBに属し>>ital復号されるべき次のスライスのPicOrderCntVal、ital<<すなわち、PicOrderCnt(picB)>>italは、ital<<PicOrderCnt(picA)+pic_order_cnt_delta>>italよりも大きい。
− progressive_refinement_idがこのSEIメッセージの中のそれと同じである前進的改良セグメント終了SEIメッセージが復号される。
連続したピクチャのタグ付けされたセット内のピクチャの復号順序は、それらの出力順序と同じであるべきである。
progressive_refinement_idは、前進的改良動作のための識別番号を規定する。progressive_refinement_idは、両端値を含む0〜232−2としての範囲の中になければならない。
両端値を含む0〜255としての範囲の中の、および両端値を含む512〜231−1としての範囲の中のprogressive_refinement_idの値は、アプリケーションによって決定されるように使用され得る。両端値を含む256〜511としての範囲の中の、および両端値を含む231〜232−2としての範囲の中のprogressive_refinement_idの値は、将来の使用のためにITU−T|ISO/IECによって予約される。両端値を含む256〜511としての範囲の中の、または両端値を含む231〜232−2としての範囲の中のprogressive_refinement_idの値に遭遇するデコーダは、それを無視しなければならない。
pic_order_cnt_deltaは、復号順序において連続したコード化されたピクチャのタグ付けされたセットの中の最後のピクチャを、次のように規定する。
− pic_order_cnt_deltaが0に等しい場合、復号順序において連続したコード化されたピクチャのタグ付けされたセットの最後のピクチャは、次のピクチャである。
− 現在のピクチャに復号順序において後続し、同じprogressive_refinement_idを有する前進的改良セグメント終了SEIメッセージに関連した1つまたは複数のピクチャをCVSが含む場合、復号順序において連続したコード化されたピクチャのタグ付けされたセットの最後のピクチャは、これらのピクチャの復号順序における最初のピクチャである。
− そうでない場合、復号順序において連続したコード化されたピクチャのタグ付けされたセットの最後のピクチャは、復号順序におけるCVSの最後のピクチャである。
− そうでない場合、復号順序において連続したコード化されたピクチャのタグ付けされたセットの最後のピクチャは、次のピクチャである。
− ital<<PicOrderCnt(picC)およびPicOrderCnt(picA)が、それぞれ、picCに対するピクチャ順序カウントのための復号プロセスの起動の直後のpicCおよびpicAのPicOrderCntVal値であるものとして>>ital、現在のピクチャに復号順序において後続するとともに同じprogressive_refinement_idを有する前進的改良セグメント終了SEIメッセージに関連付けられ、ital<<それに対するPicOrderCnt(picC)がPicOrderCnt(picA)+pic_order_cnt_deltaよりも大きい>>ital、CVSの中の任意のピクチャital<<picC>>italに先行する1つまたは複数のピクチャをCVSが含む場合、復号順序において連続したコード化されたピクチャのタグ付けされたセットの最後のピクチャは、復号順序におけるこれらのピクチャの最初のピクチャである。
− そうでない場合、ital<<PicOrderCnt(picD)およびPicOrderCnt(picA)が、それぞれ、picDに対するピクチャ順序カウントのための復号プロセスの起動の直後のpicDおよびpicAのPicOrderCntVal値であるものとして、それに対するPicOrderCnt(picD)がPicOrderCnt(picA)+pic_order_cnt_deltaよりも大きい>>ital現在のピクチャに復号順序において後続する1つまたは複数のピクチャital<<picD>>italをCVSが含む場合、復号順序において連続したコード化されたピクチャのタグ付けされたセットの最後のピクチャは、復号順序におけるこれらのピクチャの最初のピクチャに先行する最後のピクチャである。
− そうでない場合、復号順序において連続したコード化されたピクチャのタグ付けされたセットの最後のピクチャは、復号順序におけるCVSの最後のピクチャである。
pic_order_cnt_deltaの値は、両端値を含む0〜256としての範囲の中になければならない。
一実施形態では、サブクローズD.3.13は、次のように修正される。
film_grain_characteristics_persistence_flagは、フィルム粒子特性SEIメッセージの持続性を規定する。
0に等しいfilm_grain_characteristics_persistence_flagは、フィルム粒子特性SEIメッセージが現在の復号されたピクチャだけに適用されることを規定する。
ital<<picAを現在のピクチャとする>>ital。1に等しいfilm_grain_characteristics_persistence_flagは、次の条件のいずれかが真になるまでフィルム粒子特性SEIメッセージが出力順序において持続することを規定する。
− 新しいCVSが開始する。
− ビットストリームが終了する。
− ital<<PicOrderCnt(picB)およびPicOrderCnt(picA)が、それぞれ、picBに対するピクチャ順序カウントのための復号プロセスの起動の直後のpicBおよびpicAのPicOrderCntVal値であるものとして>>ital、フィルム粒子特性SEIメッセージを含むアクセスユニットの中の、ital<<それに対するPicOrderCnt(picB)がPicOrderCnt(picA)よりも大きい>>italピクチャital<<picB>>italが出力される。
一実施形態では、サブクローズD.3.14は、次のように修正される。
tone_map_persistence_flagは、トーンマッピング情報SEIメッセージの持続性を規定する。
0に等しいtone_map_persistence_flagは、トーンマッピング情報が現在の復号されたピクチャだけに適用されることを規定する。
ital<<picAを現在のピクチャとする>>ital。1に等しいtone_map_persistence_flagは、次の条件のいずれかが真になるまでトーンマッピング情報が出力順序において持続することを規定する。
− 新しいCVSが開始する。
− ital<<PicOrderCnt(picB)およびPicOrderCnt(picA)が、それぞれ、picBに対するピクチャ順序カウントのための復号プロセスの起動の直後のpicBおよびpicAのPicOrderCntVal値であるものとして>>ital、tone_map_idとしての同じ値を有するトーンマッピング情報SEIメッセージを含むアクセスユニットの中の、ital<<それに対するPicOrderCnt(picB)がPicOrderCnt(picA)よりも大きい>>italピクチャital<<picB>>italが出力される。
一実施形態では、サブクローズD.3.16は、次のように修正される。
frame_packing_arrangement_persistence_flagは、フレーム格納配置(frame packing arrangement)SEIメッセージの持続性を規定する。
0に等しいframe_packing_arrangement_persistence_flagは、フレーム格納配置SEIメッセージが現在の復号されたフレームだけに適用されることを規定する。
ital<<picAを現在のピクチャとする>>ital。1に等しいframe_packing_arrangement_persistence_flagは、次の条件のいずれかが真になるまでフレーム格納配置SEIメッセージが出力順序において持続することを規定する。
− 新しいCVSが開始する。
− ビットストリームが終了する。
− ital<<PicOrderCnt(picB)およびPicOrderCnt(picA)が、それぞれ、picBに対するピクチャ順序カウントのための復号プロセスの起動の直後のpicBおよびpicAのPicOrderCntVal値であるものとして>>ital、frame_packing_arrangement_idとしての同じ値を有するフレーム格納配置SEIメッセージを含むアクセスユニットの中の、ital<<それに対するPicOrderCnt(picB)がPicOrderCnt(picA)よりも大きい>>italフレームital<<picB>>italが出力される。
一実施形態では、サブクローズD.3.17は、次のように修正される。
display_orientation_persistence_flagは、ディスプレイ配向SEIメッセージの持続性を規定する。
0に等しいdisplay_orientation_persistence_flagは、ディスプレイ配向SEIメッセージが現在の復号されたピクチャだけに適用されることを規定する。
ital<<picAを現在のピクチャとする>>ital。1に等しいdisplay_orientation_persistence_flagは、次の条件のうちの1つまたは複数が真になるまでディスプレイ配向SEIメッセージが出力順序において持続することを規定する。
− 新しいCVSが開始する。
− ビットストリームが終了する。
− ital<<PicOrderCnt(picB)およびPicOrderCnt(picA)が、それぞれ、picBに対するピクチャ順序カウントのための復号プロセスの起動の直後のpicBおよびpicAのPicOrderCntVal値であるものとして>>ital、ディスプレイ配向SEIメッセージを含むアクセスユニットの中の、ital<<それに対するPicOrderCnt(picB)がPicOrderCnt(picA)よりも大きい>>italピクチャital<<picB>>italが出力される。
サブクローズD.3.18において規定されるピクチャ情報SEIメッセージの構造のセマンティクスは、次のものと置き換えられる。
ピクチャ情報SEIメッセージの構造は、エントリのリストに関する情報を提供し、そのうちのいくつかが対応するital<<対象のピクチャセット>>italは、ital<<現在のピクチャから始めて>>ital、CVSの中での復号順序におけるital<<最後のピクチャ、または現在のPOCリセッティング期間の中での復号順序における最後のピクチャの、どちらか早い方までの>>ital一連のピクチャからなる。
ピクチャ情報SEIメッセージの構造の中の最初のエントリは、現在のピクチャに対応する。以下に規定されるような変数entryPicOrderCnt[i]に等しいPicOrderCntValを有するital<<対象のピクチャセット>>italの中にピクチャが存在するとき、エントリiは、ital<<対象のピクチャセット>>italの中のピクチャに対応する。ピクチャ情報SEIメッセージの構造の中のエントリに対応するital<<対象のピクチャセット>>italの中のピクチャの復号順序は、エントリのリストの中でiとしての値を増大させることに対応する。
ital<<PicOrderCntValが、picBに対するピクチャ順序カウントのための復号プロセスの起動の直後のpicBのPicOrderCntValの値であるものとして>>ital、両端値を含む0〜num_entries_in_sop_minus1としての範囲の中の任意のiについてentryPicOrderCnt[i]に等しいPicOrderCntValを有するital<<対象のピクチャセット>>italの中の任意のピクチャital<<picB>>italは、エントリのリストの中のエントリに対応しなければならない。
ピクチャ情報SEIメッセージの構造は、それに対してアクティブなSPSが1に等しいlong_term_ref_pics_present_flagまたは0に等しいnum_short_term_ref_pic_setsを有するCVSの中に存在してはならない。
ピクチャ情報SEIメッセージの構造は、0よりも大きいTemporalIdを有するか、またはRASLピクチャ、RADLピクチャまたはサブレイヤ非参照ピクチャを含むいかなるアクセスユニットの中にも存在してはならない。ピクチャ情報SEIメッセージの構造の中に記載される最初のエントリ以外のエントリに対応するital<<対象のピクチャセット>>italの中のいかなるピクチャも、IRAPピクチャであってはならない。
sop_seq_parameter_set_idは、アクティブなSPSのsps_seq_parameter_set_id値を示し、それに等しくなければならない。sop_seq_parameter_set_idの値は、両端値を含む0〜15としての範囲の中になければならない。
num_entries_in_sop_minus1+1は、ピクチャ情報SEIメッセージの構造の中のエントリの数を規定する。num_entries_in_sop_minus1は、両端値を含む0〜1023としての範囲の中になければならない。
sop_vcl_nut[i]は、第iのエントリがital<<対象のピクチャセット>>italの中のピクチャに対応するとき、第iのエントリに対応するピクチャのnal_unit_type値を示し、それに等しくなければならない。
sop_temporal_id[i]は、第iのエントリがital<<対象のピクチャセット>>italの中のピクチャに対応するとき、第iのエントリに対応するピクチャのTemporalId値を示し、それに等しくなければならない。sop_temporal_id[i]について7としての値は、将来の使用のためにITU−T|ISO/IECによって予約され、本仕様の本バージョンに適合するビットストリームの中に存在してはならない。デコーダは、sop_temporal_id[i]について値7を含むピクチャ情報SEIメッセージの構造を無視しなければならない。
sop_short_term_rps_idx[i]は、第iのエントリがital<<対象のピクチャセット>>italの中のピクチャに対応するとき、短期参照ピクチャセットの導出のための第iのエントリに対応するピクチャによって使用される候補の短期RPSの、アクティブなSPSの中に含まれる候補の短期RPSのリストへのインデックスを示し、それに等しくなければならない。sop_short_term_rps_idx[i]は、両端値を含む0〜num_short_term_ref_pic_sets−1としての範囲の中になければならない。
sop_poc_delta[i]は、ピクチャ情報SEIメッセージの構造の中に記載される第iのエントリに対する変数entryPicOrderCnt[i]の値を規定するために使用される。sop_poc_delta[i]は、両端値を含む(−MaxPicOrderCntLsb)/2+1〜MaxPicOrderCntLsb/2−1としての範囲の中になければならない。
変数entryPicOrderCnt[i]は、次のように導出される。
Figure 2017507517
ただし、currPicは現在のピクチャである。
一実施形態では、サブクローズD.3.24は、次のように修正される。
領域リフレッシュ情報SEIメッセージは、現在のSEIメッセージが適用されるスライスセグメントが、現在のピクチャのリフレッシュされた領域に属するかどうかを示す(以下に規定されるように)。
IRAPアクセスユニットでなく、回復点SEIメッセージを含むアクセスユニットは、漸進的復号リフレッシュ(GDR:gradual decoding refresh)アクセスユニットと呼ばれ、その対応するピクチャは、GDRピクチャと呼ばれる。示される回復点ピクチャに対応するアクセスユニットは、回復点アクセスユニットと呼ばれる。
ital<<PicOrderCnt(picA)およびPicOrderCnt(picB)が、それぞれ、picBに対するピクチャ順序カウントのための復号プロセスの起動の直後のpicAおよびpicBのPicOrderCntVal値であるものとして>>ital、GDRピクチャital<<picA>>italに復号順序においてCVSの中で後続するピクチャital<<picB>>italが存在し、ital<<PicOrderCnt(picB)がPicOrderCnt(picA)>>ital+回復点SEIメッセージの中のrecovery_poc_cntの値ital<<に等しい>>ital場合、変数lastPicInSetを回復点ピクチャとする。そうでない場合、lastPicInSetを、回復点ピクチャに出力順序において直前にくるピクチャとする。ピクチャlastPicInSetは、GDRピクチャに復号順序において先行してはならない。
シンタックス関数の追加
一実施形態では、more_data_in_slice_segment_header_extension()は、次のように規定される。
− (slice_segment_header()シンタックス構造の中での現在の位置)−(slice_segment_header_extension_lengthの直後の位置)が(slice_segment_header_extension_length*8)よりも小さい場合、more_data_in_slice_segment_header_extension()の戻り値はTRUEに等しい。
− そうでない場合、more_data_in_slice_segment_header_extension()の戻り値はFALSEに等しい。
2つの定義の追加
一実施形態では、次の定義がサブクローズF.3に追加される。
ピクチャ順序カウント(POC)リセッティング期間:ital<<1または2に等しいpoc_reset_idcおよびpoc_reset_period_idとしての特定の値を有するアクセスユニットとともに始めて>>ital、poc_reset_period_idとしての同じ値を有するかまたは0に等しいpoc_reset_idcを有するital<<すべてのアクセスユニットを含む>>ital、復号順序におけるアクセスユニットのシーケンス。
ital<<ピクチャ順序カウント(POC)リセッティングピクチャ:POCリセッティング期間のレイヤの、復号順序における最初のピクチャであるピクチャ>>ital。
ビデオパラメータセット拡張のシンタックスおよびセマンティクス
Figure 2017507517
ital<<0に等しいvps_poc_msb_present_flagは、VPSを参照するスライスのスライスセグメントヘッダの中に、シンタックス要素poc_msb_valが存在しないことを規定する。1に等しいvps_poc_msb_present_flagは、VPSを参照するスライスのスライスセグメントヘッダの中に、シンタックス要素poc_msb_valが存在し得ることを規定する>>ital。
ital<<vps_poc_msb_present_flagの値が0に等しいとき、poc_reset_info_present_flagは0に等しくなければならない>>ital。
NALユニットヘッダセマンティクスへの変更
一実施形態では、次の導出がNALユニットヘッダセマンティクスのセマンティクスに追加される。
ital<<変数CraOrBlaPicFlagは、次のように導出される>>ital。
Figure 2017507517
ピクチャパラメータセットRBSPシンタックスおよびセマンティクス
Figure 2017507517
0に等しいpps_extension_flagは、pps_extension_data_flagシンタックス要素がPPS RBSPシンタックス構造の中に存在しないことを規定する。slice_segment_header_extension_present_flagが0に等しいとき、本仕様の本バージョンに適合するビットストリームの中でpps_extension_flagは0に等しくなければならず、pps_extension_flagについての1としての値は将来の使用のためにITU T|ISO/IECによって予約され、デコーダは、PPS NALユニットの中でpps_extension_flagについて値1を採用する(follow)すべてのデータを無視しなければならない。
0に等しいpoc_reset_info_present_flagは、PPSを参照するスライスのスライスセグメントヘッダの中に、シンタックス要素poc_reset_idcが存在しないことを規定する。1に等しいpoc_reset_info_present_flagは、PPSを参照するスライスのスライスセグメントヘッダの中に、シンタックス要素poc_reset_idcが存在することを規定する。
0に等しいpps_extension2_flagは、pps_extension_data_flagシンタックス要素がPPS RBSPシンタックス構造の中に存在しないことを規定する。pps_extension2_flagは、本仕様の本バージョンに適合するビットストリームの中で0に等しくなければならない。pps_extension2_flagについて1としての値は、将来の使用のためにITU T|ISO/IECによって予約される。デコーダは、PPS NALユニットの中のpps_extension2_flagについて値1を採用する(follow)すべてデータを無視しなければならない。
1.1.1 一般的スライスセグメントヘッダシンタックスおよびセマンティクス
Figure 2017507517
Figure 2017507517
あるいは、poc_reset_period_idは、たとえば、u(14)としてコーディングされた異なる数のビットを使用してシグナリングされる。
存在するとき、スライスセグメントヘッダシンタックス要素slice_pic_parameter_set_id、pic_output_flag、no_output_of_prior_pics_flag、slice_pic_order_cnt_lsb、short_term_ref_pic_set_sps_flag、short_term_ref_pic_set_idx、num_long_term_sps、num_long_term_pics、slice_temporal_mvp_enabled_flag、discardable_flag、cross_layer_bla_flag、inter_layer_pred_enabled_flag、num_inter_layer_ref_pics_minus1、poc_reset_idc、poc_reset_pic_id、full_poc_reset_flag、poc_lsb_valおよびpoc_msb_valの値は、コード化されたピクチャのすべてのスライスセグメントヘッダの中で同じでなければならない。存在するとき、スライスセグメントヘッダシンタックス要素lt_idx_sps[i]、poc_lsb_lt[i]、used_by_curr_pic_lt_flag[i]、delta_poc_msb_present_flag[i]、delta_poc_msb_cycle_lt[i]、およびinter_layer_pred_layer_idc[i]の値は、iとして取り得る各値についてコード化されたピクチャのすべてのスライスセグメントヘッダの中で同じでなければならない。
(***削除:1に等しいpoc_reset_flagは、現在のピクチャに対して導出されたピクチャ順序カウントが0に等しいことを規定する。0に等しいpoc_reset_flagは、現在のピクチャに対して導出されたピクチャ順序カウントが0に等しくてもよく等しくなくてもよいことを規定する。存在しないとき、poc_reset_flagの値は0に等しいものと推定される。
注 − ベースレイヤのピクチャの中でpoc_reset_flagが1に等しいとき、サブクローズ8.3.1の復号プロセスが適用されるか、それともサブクローズF.8.3.1の復号プロセスが適用されるかに応じて、PicOrderCntValは異なって導出される。さらに、1に等しいpoc_reset_flagを有するベースレイヤのピクチャがサブクローズ8.3.1またはF.8.3.1に従ってprevTid0Picであるとき、変数prevPicOrderCntLsbは、サブクローズ8.3.1およびF.8.3.1において異なって導出される。PicOrderCntMsbがサブクローズ8.3.1またはF.8.3.1のうちの1つにおいて不正確に更新されることを回避するために、prevTid0Picが1に等しいpoc_reset_flagを有するベースレイヤのピクチャであり、サブクローズ8.3.1またはF.8.3.1のうちの一方を用いて導出されるprevPicOrderCntLsbについて次の条件のいずれかが真であるとき、prevTid0Picのpic_order_cnt_lsbの値は、サブクローズ8.3.1またはF.8.3.1のうちの他方を用いて導出されるprevPicOrderCntLsbについても同じ条件が真であるようでなければならない。
− (slice_pic_order_cnt_lsb < prevPicOrderCntLsb) && ((prevPicOrderCntLsb − slice_pic_order_cnt_lsb) >= (MaxPicOrderCntLsb/2))
− (slice_pic_order_cnt_lsb > prevPicOrderCntLsb) && ((slice_pic_order_cnt_lsb − prevPicOrderCntLsb) > (MaxPicOrderCntLsb/2))***)
0に等しいpoc_reset_idcは、現在のピクチャに対するピクチャ順序カウント値の最上位ビットも最下位ビットもリセットされないことを規定する。1に等しいpoc_reset_idcは、現在のピクチャに対するピクチャ順序カウント値の最上位ビットだけがリセットされ得ることを規定する。2に等しいpoc_reset_idcは、現在のピクチャに対するピクチャ順序カウント値の最上位ビットと最下位ビットの両方がリセットされ得ることを規定する。3に等しいpoc_reset_idcは、現在のピクチャに対するピクチャ順序カウント値の最上位ビットのみ、または最上位ビットと最下位ビットの両方がリセットされ得、追加のピクチャ順序カウント情報がシグナリングされることを規定する。存在しないとき、poc_reset_idcの値は0に等しいものと推定される。
次の制約が適用されることは、ビットストリーム適合の要件である。
− RASLピクチャ、RADLピクチャ、サブレイヤ非参照ピクチャ、0よりも大きいTemporalIdを有するピクチャ、または1に等しいdiscardable_flagを有するピクチャに対して、poc_reset_idcの値は1または2に等しくてはならない。
− アクセスユニットの中のすべてのピクチャのpoc_reset_idcの値は、同じでなければならない。
− アクセスユニットの中のital<<0に等しいnuh_layer_idを有する>>italピクチャが、nal_unit_typeとしての特定の値を有するIRAPピクチャであり、同じアクセスユニットの中のnal_unit_typeとしての異なる値を有する少なくとも1つの他のピクチャが存在するとき、そのアクセスユニットの中のすべてのピクチャに対して、poc_reset_idcの値は1または2に等しくなければならない。
− ital<<0よりも大きいnuh_layer_idを有するとともにアクセスユニットの中のnal_unit_typeとしての特定の値を有するIDRピクチャである少なくとも1つのピクチャが存在し、同じアクセスユニットの中のnal_unit_typeとしての異なる値を有する少なくとも1つの他のピクチャが存在するとき、そのアクセスユニットの中のすべてのピクチャに対して、poc_reset_idcの値は1または2に等しくなければならない>>ital。
− ital<<CRAピクチャまたはBLAピクチャのpoc_reset_idcの値は、3よりも小さくなければならない>>ital。
− アクセスユニットの中の0に等しいnuh_layer_idを有するピクチャがIDRピクチャであり、同じアクセスユニットの中の少なくとも1つの非IDRピクチャが存在するとき、そのアクセスユニットの中のすべてのピクチャに対して、poc_reset_idcの値は2に等しくなければならない。
− アクセスユニットの中の0に等しいnuh_layer_idを有するピクチャがIDRピクチャでないとき、そのアクセスユニットの中のいかなるピクチャに対しても、poc_reset_idcの値は2に等しくてはならない。
アクセスユニットのpoc_reset_idcの値は、そのアクセスユニットの中のピクチャのpoc_reset_idcの値である。
poc_reset_period_idは、POCリセッティング期間を識別する。poc_reset_period_idとしての同じ値と1または2に等しいpoc_reset_idcとを有する同じレイヤの中に、復号順序において連続する2つのピクチャがあってはならない。ital<<存在しないとき、poc_reset_period_idの値は、次のように推定される>>ital。
− ital<<現在のピクチャとビットストリームの同じレイヤの中の現時点においてスライスセグメントヘッダの中に存在するpoc_reset_period_idを有する前のピクチャpicAの場合、poc_reset_period_idの値はpicAのpoc_reset_period_idの値に等しいものと推定される>>ital。
− ital<<そうでない場合、poc_reset_period_idの値は0に等しいものと推定される>>ital。
注 − レイヤの中の複数のピクチャがpoc_reset_period_idとしての同じ値を有するとともに1または2に等しいpoc_reset_idcを有することは、そのようなピクチャが復号順序において連続した2つのアクセスユニットの中に出現しない限り禁止されていない。そのような2つのピクチャがピクチャ喪失、ビットストリーム抽出、シーキング(seeking)、または接合動作(splicing operations)に起因してビットストリームの中に現れる可能性を最小限に抑えるために、エンコーダは、poc_reset_period_idの値を各POCリセッティング期間に対してランダムな値となるように設定するべきである(上記で規定される制約を条件として)。
次の制約が適用されることは、ビットストリーム適合の要件である。
− 1つのPOCリセッティング期間は、1または2に等しいpoc_reset_idcを有する1つよりも多いアクセスユニットを含んではならない。
− 1または2に等しいpoc_reset_idcを有するアクセスユニットは、POCリセッティング期間の中の最初のアクセスユニットでなければならない。
− ital<<POCリセッティングピクチャに復号順序において後続するピクチャは、そのPOCリセッティングピクチャに復号順序において先行する別のピクチャに出力順序において先行してはならない>>ital。
1に等しいfull_poc_reset_flagは、同じレイヤの中の復号順序における前のピクチャが同じPOCリセッティング期間に属さないとき、現在のピクチャに対するピクチャ順序カウント値の最上位ビットと最下位ビットの両方がリセットされることを規定する。0に等しいfull_poc_reset_flagは、同じレイヤの中の復号順序における前のピクチャが同じPOCリセッティング期間に属さないとき、現在のピクチャに対するピクチャ順序カウント値の最上位ビットだけがリセットされることを規定する。
poc_lsb_valは、現在のピクチャのピクチャ順序カウントを導出するために使用され得る値を規定する。poc_lsb_valシンタックス要素の長さは、log2_max_pic_order_cnt_lsb_minus4+4ビットである。
poc_reset_idcが3に等しく、また、現在のピクチャと同じレイヤの中にあり、1または2に等しいpoc_reset_idcを有し、同じPOCリセッティング期間に属する復号順序における前のピクチャpicAがビットストリームの中に存在するとき、picAが、現在のピクチャと同じレイヤの中にあり、RASLピクチャ、RADLピクチャ、またはサブレイヤ非参照ピクチャでなく、0に等しいTemporalIdと0に等しいdiscardable_flagを有する、復号順序における前のピクチャと同じピクチャでなければならないことと、現在のピクチャのpoc_lsb_valの値がpicAのslice_pic_order_cnt_lsbの値に等しくなければならないこととは、ビットストリーム適合の要件である。
ital<<poc_msb_valは、CRAピクチャまたはBLAピクチャである現在のピクチャのピクチャ順序カウント値の最上位ビットの値を規定する。poc_msb_valの値はまた、現在のピクチャと同じレイヤの中の、前に復号されたピクチャのピクチャ順序カウント値をデクリメントするために使用される値を導出するために使用される。poc_msb_valの値は、両端値を含む0〜232-log2_max_pic_order_cnt_lsb_minus4-4としての範囲の中になければならない。poc_msb_valの値は、現在のピクチャのピクチャ順序カウントの最上位ビットの値と、同じレイヤの中の前のPOCリセッティングピクチャまたは同じレイヤの中の前のIDRピクチャの、どちらか復号順序において現在のピクチャに近い方との間の差分に等しくなければならない。いずれのピクチャも存在しないとき、poc_msb_valの値は、許容された範囲の中の任意の値であってよい>>ital。
0に等しいnuh_layer_idを有するコード化されたピクチャのための復号プロセス
一実施形態では、仕様のサブクローズ8.1.1は、次のように変更される。
− サブクローズ8.2、8.3、8.3.1、8.3.2、8.3.3、8.3.4、8.4、8.5、8.6、および8.7への参照は、それぞれ、サブクローズF.8.2、F.8.3、F.8.3.1、F.8.3.2、F.8.3.3、F.8.3.4、F.8.4、F.8.5、F.8.6、およびF.8.7への参照と置き換えられる。
− サブクローズの末尾において、以下に提供されるような項目5が追加される。
1.FirstPicInLayerDecodedFlag[0]が0に等しいとき、FirstPicInLayerDecodedFlag[0]は1に等しく設定される。
0よりも大きいnuh_layer_idを有するコード化されたピクチャの復号を開始するための復号プロセス
本サブクローズにおいて参照される各ピクチャは、完全なコード化されたピクチャである。
復号プロセスは、現在のピクチャCurrPicに対して次のように動作する。
1.NALユニットの復号は、サブクローズF.8.2において規定される。
2.サブクローズF.8.3におけるプロセスは、スライスセグメントレイヤおよびその上位におけるシンタックス要素を使用する次の復号プロセスを規定する。
− ピクチャ順序カウントに関係する変数および関数は、サブクローズF.8.3.1において導出される。これは、ピクチャの最初のスライスセグメントのために呼び出されるだけでよい。PicOrderCntValがアクセスユニット内で不変のままでなければならないことは、ビットストリーム適合の要件である。
− サブクローズF.8.3.2におけるRPSのための復号プロセスが呼び出され、その場合、CurrPicのnuh_layer_idに等しいnuh_layer_idを有する参照ピクチャだけが、「参照用に使用されない」または「長期の参照用に使用される」としてマークされてよく、nuh_layer_idとしての異なる値を有するいかなるピクチャもマークされない。これは、ピクチャの最初のスライスセグメントのために呼び出されるだけでよい。
− FirstPicInLayerDecodedFlag[nuh_layer_id]が0に等しいとき、サブクローズF.8.1.5において規定される利用できない参照ピクチャを生成するための復号プロセスが呼び出され、それは、ピクチャの最初のスライスセグメントのために呼び出されるだけでよい。
− FirstPicInLayerDecodedFlag[nuh_layer_id]が0に等しくなく、現在のピクチャが1に等しいNoRaslOutputFlagを有するIRAPピクチャであるとき、サブクローズF.8.3.3において規定される利用できない参照ピクチャを生成するための復号プロセスが呼び出され、それは、ピクチャの最初のスライスセグメントのために呼び出されるだけでよい。
ピクチャ順序カウントのための復号プロセス
このプロセスの出力は、PicOrderCntVal、現在のピクチャのピクチャ順序カウントである。
ピクチャ順序カウントは、マージモードにおける動きパラメータ、および動きベクトル予測を導出するために、ならびにデコーダ適合検査のために、ピクチャを識別するために使用される(サブクローズC.5参照)。
各コード化されたピクチャは、PicOrderCntValとして示されるピクチャ順序カウント変数に関連付けられる。
(***削除:FirstPicInLayerDecodedFlag[nuh_layer_id]が0に等しいか、または現在のピクチャが1に等しいNoRaslOutputFlagを有するIRAPピクチャである場合、変数PicOrderCntMsbは0に等しく設定される。そうでない場合、PicOrderCntMsbは、次のように導出される。
− 変数prevPicOrderCntLsbは、PrevPicOrderCnt[nuh_layer_id]&(MaxPicOrderCntLsb−1)に等しく設定される。
− 変数prevPicOrderCntMsbは、PrevPicOrderCnt[nuh_layer_id]−prevPicOrderCntLsbに等しく設定される。
− PicOrderCntMsbは、次のように導出される。
Figure 2017507517
PicOrderCntValは、次のように導出される。
Figure 2017507517
poc_reset_flagが1に等しいとき、次のステップが記載された順序で適用される。
− DPBの中にあり現在のピクチャと同じレイヤに属する各ピクチャのPicOrderCntValは、PicOrderCntValだけデクリメントされる。
− PrevPicOrderCnt[nuh_layer_id]は、PicOrderCntValだけデクリメントされる。
− PicOrderCntValは、0に等しく設定される。
現在のピクチャがRASLピクチャ、RADLピクチャまたはサブレイヤ非参照ピクチャでなく、現在のピクチャが0に等しいTemporalIdを有するとき、PrevPicOrderCnt[nuh_layer_id]は、PicOrderCntValに等しく設定される。***)
FirstPicInLayerDecodedFlag[nuh_layer_id]が1に等しく、現在のピクチャがital<<POCリセッティングピクチャ>>italである場合、次のことが適用される。
− 変数pocMsbDelta、pocLsbDeltaおよびDeltaPocValは、次のように導出される。
Figure 2017507517
− DPBの中にあり現在のピクチャと同じレイヤに属する各ピクチャのPicOrderCntValは、DeltaPocValだけデクリメントされる。
− 現在のピクチャのPicOrderCntValは、次のように導出される。
Figure 2017507517
− PrevPicOrderCnt[nuh_layer_id]の値は、次のように導出される。
− 現在のピクチャがRASLピクチャ、RADLピクチャ、またはサブレイヤ非参照ピクチャでなく、現在のピクチャが0に等しいTemporalIdと0に等しいdiscardable_flagとを有する場合、PrevPicOrderCnt[nuh_layer_id]はPicOrderCntValに等しく設定される。
− そうでない場合、poc_reset_idcが3に等しいとき、PrevPicOrderCnt[nuh_layer_id]は、full_poc_reset_flag?0:poc_lsb_valに等しく設定される。
そうでない場合、次のことが適用される。
− 現在のピクチャのPicOrderCntValは、次のように導出される。
Figure 2017507517
Figure 2017507517
− PrevPicOrderCnt[nuh_layer_id]の値は、次のように導出される。
− 現在のピクチャがRASLピクチャ、RADLピクチャまたはサブレイヤ非参照ピクチャでなく、現在のピクチャが0に等しいTemporalIdと0に等しいdiscardable_flagとを有する場合、PrevPicOrderCnt[nuh_layer_id]は、PicOrderCntValに等しく設定される。
− そうでない場合、FirstPicInLayerDecodedFlag[nuh_layer_id]が0に等しくpoc_reset_idcが3に等しいとき、PrevPicOrderCnt[nuh_layer_id]は、full_poc_reset_flag?0:poc_lsb_valに等しく設定される。
PicOrderCntValの値は、両端値を含む−231〜231−1としての範囲の中になければならない。1つのCVSの中で、同じレイヤの中の任意の2つのコード化されたピクチャに対するPicOrderCntVal値は同じであってはならない。
関数PicOrderCnt(picX)は、次のように規定される。
Figure 2017507517
関数DiffPicOrderCnt(picA,picB)は、次のように規定される。
Figure 2017507517
ビットストリームは、両端値を含む−215〜215−1としての範囲の中にない、復号プロセスにおいて使用されるDiffPicOrderCnt(picA,picB)の値をもたらすデータを含んではならない。
注 − Xを現在のピクチャとし、YおよびZを同じシーケンスの中の2つの他のピクチャとすると、DiffPicOrderCnt(X,Y)とDiffPicOrderCnt(X,Z)の両方が正であるか、または両方が負であるとき、YおよびZは、Xからの同じ出力順序方向にあるものとみなされる。
出力順序DPBの動作
C.5.2.2 DPBからのピクチャの出力および除去
現在のピクチャが現在のレイヤの中のピクチャ0でないとき、現在のピクチャ、すなわち、ピクチャnの復号の前の、ただし、現在のピクチャの最初のスライスのスライスヘッダを構文解析した後の、ピクチャ順序カウントのための復号プロセスの起動の前での、DPBからの現在のレイヤの中のピクチャの出力および除去は、現在のピクチャの最初の復号ユニットがCPBから除去される時に瞬時に生じ、次のように進む。
− 現在のピクチャのpoc_reset_idcが0よりも大きく、現在のアクセスユニットがPOCリセッティング期間の中の最初のアクセスユニットであるとき、現在のアクセスユニットに属さず「出力用に必要とされる」としてマークされているDPBの中のすべてピクチャは、DPBの中の現在のアクセスユニットの中のピクチャを除くすべてのピクチャのPicOrderCntValの最小値を有するピクチャとともに始めて、PicOrderCntVal値の昇順で出力され、PicOrderCntValとしての同じ値を有するピクチャが、nuh_layer_id値の昇順で出力される。ピクチャが出力されるとき、ピクチャは、ピクチャに対してアクティブなSPSの中に規定される適合クロッピングウィンドウを使用してクロッピングされ、クロッピングされたピクチャが出力され、ピクチャは「出力用に必要とされない」としてマークされる。
− ピクチャ順序カウントおよびRPSのための復号プロセスが呼び出される。付属書類Aにおいて規定されるプロファイルのうちの1つまたは複数に適合するCVSを、節2〜10において規定される復号プロセスを使用して復号するとき、ピクチャ順序カウントおよびRPSのための呼び出される復号プロセスは、それぞれ、サブクローズ8.3.1および8.3.2において規定されるようなものである。付属書類GまたはHにおいて規定されるプロファイルのうちの1つまたは複数に適合するCVSを、付属書類F、および付属書類GまたはHにおいて規定される復号プロセスを使用して復号するとき、ピクチャ順序カウントおよびRPSのための呼び出される復号プロセスは、それぞれ、サブクローズF.8.3.1およびF.8.3.2において規定されるようなものである。
− 現在のピクチャが1に等しいNoRaslOutputFlagを有するIRAPピクチャであるか、または現在のアクセスユニットの中のベースレイヤのピクチャが1に等しいNoRaslOutputFlagと1に等しいNoClrasOutputFlagとを有するIRAPピクチャである場合、次の順序付けられたステップが適用される。
1.変数NoOutputOfPriorPicsFlagが、テスト対象のデコーダ(decoder under test)に対して次のように導出される。
− 現在のピクチャが1に等しいNoRaslOutputFlagを有するCRAピクチャである場合、NoOutputOfPriorPicsFlagは1に等しく設定される(no_output_of_prior_pics_flagの値にかかわらず)。
− そうでない場合、現在のピクチャが1に等しいNoRaslOutputFlagを有するIRAPピクチャであり、現在のレイヤに対してアクティブな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に設定することが許容される。
− そうでない場合、現在のピクチャが1に等しいNoRaslOutputFlagを有するIRAPピクチャである場合、NoOutputOfPriorPicsFlagは、no_output_of_prior_pics_flagに等しく設定される。
− そうでない場合(現在のピクチャが1に等しいNoRaslOutputFlagを有するIRAPピクチャでなく、現在のアクセスユニットの中のベースレイヤのピクチャが1に等しいNoRaslOutputFlagを有するIRAPピクチャであり、NoClrasOutputFlagが1に等しい場合)、NoOutputOfPriorPicsFlagは1に等しく設定される。
2.テスト対象のデコーダに対して導出されるNoOutputOfPriorPicsFlagの値は、HRDに対して次のように適用される。
− NoOutputOfPriorPicsFlagが1に等しい場合、サブDPBの中のすべてのピクチャ記憶バッファはそれらが含んでいるピクチャを出力することなく空にされ、サブDPBフルネスは0に等しく設定される。
− そうでない場合(NoOutputOfPriorPicsFlagが0に等しい場合)、「出力用に必要とされない」および「参照用に使用されない」としてマークされているピクチャを含むすべてのピクチャ記憶バッファは(出力されずに)空にされ、サブDPBの中のすべての空でないピクチャ記憶バッファは、サブクローズC.5.2.4において規定される「バンピング」プロセスを繰り返し呼び出すことによって空にされ、サブDPBフルネスは0に等しく設定される。
− そうでない場合、現在のレイヤの中のピクチャを含み「出力用に必要とされない」および「参照用に使用されない」としてマークされているすべてのピクチャ記憶バッファは、(出力されずに)空にされる。空にされた各ピクチャ記憶バッファに対して、サブDPBフルネスは1だけデクリメントされる。次の条件のうちの1つまたは複数が真であるとき、サブクローズC.5.2.4において規定される「バンピング」プロセスが、(***削除:空にされた追加の各ピクチャ記憶バッファに対して、サブDPBフルネスを1だけさらにデクリメントする間***)次の条件のいずれも真でなくなるまで繰り返し呼び出される。
− 「出力用に必要とされる」としてマークされているDPBの中に少なくとも1つの復号されたピクチャを含むアクセスユニットの数は、MaxNumReorderPicsよりも大きい。
− MaxLatencyIncreasePlus1は0に等しくなく、「出力用に必要とされる」としてマークされているDPBの中に少なくとも1つの復号されたピクチャを含む、少なくとも1つのアクセスユニットが存在し、それに対して関連付けられた変数PicLatencyCountは、MaxLatencyPictures以上である。
− サブDPBの中の現在のレイヤの中のピクチャの数は、MaxDecPicBufferingMinus1+1以上である。
C.5.2.3 ピクチャ復号、マーキング、追加のバンピング、および記憶
本サブクローズにおいて規定されるプロセスは、ピクチャnの最後の復号ユニットがCPBから除去されるとき瞬時に生じる。
PicOutputFlagは、次のように更新される。
− 現在のアクセスユニットが対象の出力レイヤにおけるピクチャを含まず、alt_output_layer_flagが1に等しい場合、次の順序付けられたステップが適用される。
− リストnonOutputLayerPicturesは、1に等しいPicOutputFlagを有し、TargetDecLayerIdListの中に含まれ対象の出力レイヤ上にないnuh_layer_id値を有するアクセスユニットのピクチャのリストである。
− リストnonOutputLayerPicturesの中で最大のnuh_layer_id値を有するピクチャは、リストnonOutputLayerPicturesから除去される。
− リストnonOutputLayerPicturesの中に含まれる各ピクチャに対するPicOutputFlagは、0に等しく設定される。
− そうでない場合、対象の出力レイヤの中に含まれないピクチャに対するPicOutputFlagは、0に等しく設定される。
現在のピクチャが1に等しいPicOutputFlagを有するとき、「出力用に必要とされる」としてマークされ現在のピクチャに出力順序において後続する、サブDPBの中の現在のレイヤの中の各ピクチャに対して、関連した変数PicLatencyCountはPicLatencyCount+1に等しく設定される。
現在のピクチャは、ピクチャの最後の復号ユニットが復号された後、復号されたとみなされる。現在の復号されたピクチャは、サブDPBの中の空のピクチャ記憶バッファに記憶され、次のことが適用される。
− 現在の復号されたピクチャが1に等しいPicOutputFlagを有する場合、それは「出力用に必要とされる」としてマークされ、それの関連した変数PicLatencyCountは0に等しく設定される。
− そうでない場合(現在の復号されたピクチャが0に等しいPicOutputFlagを有する場合)、それは「出力用に必要とされない」としてマークされる。
現在の復号されたピクチャは、「短期の参照用に使用される」としてマークされる。
次の条件のうちの1つまたは複数が真であるとき、サブクローズC.5.2.4において規定される「バンピング」プロセスが、次の条件のいずれも真でなくなるまで繰り返し呼び出される。
− 「出力用に必要とされる」としてマークされているDPBの中の少なくとも1つの復号されたピクチャを含むアクセスユニットの数は、MaxNumReorderPicsよりも大きい。
− MaxLatencyIncreasePlus1は0に等しくなく、「出力用に必要とされる」としてマークされているDPBの中の少なくとも1つの復号されたピクチャを含む少なくとも1つのアクセスユニットが存在し、それに対して関連付けられた変数PicLatencyCountは、MaxLatencyPictures以上である。
C.5.2.4 「バンピング」プロセス
「バンピング」プロセスは、次の順序付けられたステップからなる。
1.出力のための最初のピクチャである1つまたは複数のピクチャは、「出力用に必要とされる」としてマークされているDPBの中のすべてピクチャのPicOrderCntValとしての最小値を有するピクチャとして選択される。
2.これらのピクチャの各々は、ピクチャに対してアクティブなSPSの中で規定される適合クロッピングウィンドウを使用して、nuh_layer_idの昇順でクロッピングされ、クロッピングされたピクチャが出力され、ピクチャは「出力用に必要とされない」としてマークされる。
3.「参照用に使用されない」としてマークされクロッピングおよび出力されたピクチャのうちの1つであったピクチャを含む、各ピクチャ記憶バッファは空にされ、関連したサブDPBのフルネスは1だけデクリメントされる。
例示的な実装形態#2
以下に提供される例示的な実装形態は、上述された例示的な実装形態#1と類似であり、POCリセットを用いず、すべてのピクチャに対して規定されたレイヤワイズPOCをさらに含む。上の例示的な実装形態#1において提案されたすべての技法が、以下に再現されるものを除いて適用可能である。この例示的な実装形態において提案される変更は、ital<<イタリック体>>italで強調される。
スライスセグメントヘッダシンタックスおよびセマンティクスへの変更
Figure 2017507517
Figure 2017507517
Figure 2017507517
Figure 2017507517
Figure 2017507517
poc_lsb_valは、現在のピクチャのピクチャ順序カウントital<<またはレイヤワイズピクチャ順序カウント>>italを導出するために使用され得る値を規定する。poc_lsb_valシンタックス要素の長さは、log2_max_pic_order_cnt_lsb_minus4+4ビットである。
poc_reset_idcが3に等しく、また、現在のピクチャと同じレイヤの中にあり、1または2に等しいpoc_reset_idcを有し、同じPOCリセッティング期間に属する、復号順序における前のピクチャpicAがビットストリームの中に存在するとき、picAが、現在のピクチャと同じレイヤの中にあり、RASLピクチャ、RADLピクチャ、またはサブレイヤ非参照ピクチャでなく、0に等しいTemporalIdと0に等しいdiscardable_flagを有する、復号順序における前のピクチャと同じピクチャでなければならないことと、現在のピクチャのpoc_lsb_valの値がpicAのslice_pic_order_cnt_lsbの値に等しくなければならないこととは、ビットストリーム適合の要件である。
C.1.1.1 ピクチャ順序カウントのためのピクチャ順序カウント復号プロセスの復号プロセスへの変更
このプロセスの出力は、PicOrderCntVal、すなわち現在のピクチャのピクチャ順序カウント、ital<<およびLayerWisePicOrderCntVal、すなわち現在のピクチャのレイヤワイズピクチャ順序カウント>>italである。
ピクチャ順序カウントは、マージモードにおける動きパラメータ、および動きベクトル予測を導出するために、ならびにデコーダ適合検査のために、ピクチャを識別するために使用される(サブクローズC.5参照)。
各コード化されたピクチャは、PicOrderCntValとして示されるピクチャ順序カウント変数、ital<<およびLayerWisePicOrderCntValとして示されるレイヤワイズピクチャ順序カウント変数>>italに関連付けられる。
FirstPicInLayerDecodedFlag[nuh_layer_id]が1に等しく、現在のピクチャがital<<POCリセッティングピクチャ>>italである場合、次のことが適用される。
− 変数ital<<pocLsbVal、lwPocMsb、およびlwPocLsb>>italは、次のように導出される。
Figure 2017507517
− DPBの中にあり現在のピクチャと同じレイヤに属する各ピクチャのPicOrderCntValは、DeltaPocValだけデクリメントされる。
− 現在のピクチャのPicOrderCntValは、次のように導出される。
Figure 2017507517
− PrevPicOrderCnt[nuh_layer_id]の値は、次のように導出される。
− 現在のピクチャがRASLピクチャ、RADLピクチャ、またはサブレイヤ非参照ピクチャでなく、現在のピクチャが0に等しいTemporalIdと0に等しいdiscardable_flagとを有する場合、PrevPicOrderCnt[nuh_layer_id]はPicOrderCntValに等しく設定される。
− そうでない場合、poc_reset_idcが3に等しいとき、PrevPicOrderCnt[nuh_layer_id]は、full_poc_reset_flag?0:poc_lsb_valに等しく設定される。
− ital<<PrevLwPicOrderCnt[nuh_layer_id]およびPrevLwPicOrderCntReset[nuh_layer_id]の値は、次のように導出される>>ital。
− ital<<現在のピクチャがRASLピクチャ、RADLピクチャ、またはサブレイヤ非参照ピクチャでなく、現在のピクチャが0に等しいTemporalIdと0に等しいdiscardable_flagとを有する場合、PrevLwPicOrderCnt[nuh_layer_id]は、LayerWisePicOrderCntValに等しく設定され、PrevLwPicOrderCntReset[nuh_layer_id]は、LayerWisePicOrderCntValに等しく設定される>>ital。
そうでない場合、次のことが適用される。
− 現在のピクチャのPicOrderCntValは、次のように導出される。
Figure 2017507517
Figure 2017507517
− ital<<現在のピクチャのLayerWisePicOrderCntValは、次のように導出される>>ital。
Figure 2017507517
− PrevPicOrderCnt[nuh_layer_id]の値は、次のように導出される。
− 現在のピクチャがRASLピクチャ、RADLピクチャまたはサブレイヤ非参照ピクチャでなく、現在のピクチャが0に等しいTemporalIdと0に等しいdiscardable_flagとを有する場合、PrevPicOrderCnt[nuh_layer_id]は、PicOrderCntValに等しく設定される。
− そうでない場合、FirstPicInLayerDecodedFlag[nuh_layer_id]が0に等しくpoc_reset_idcが3に等しいとき、PrevPicOrderCnt[nuh_layer_id]は、full_poc_reset_flag?0:poc_lsb_valに等しく設定される。
− ital<<PrevLwPicOrderCnt[nuh_layer_id]の値は、次のように導出される>>ital。
− ital<<現在のピクチャがRASLピクチャ、RADLピクチャまたはサブレイヤ非参照ピクチャでなく、現在のピクチャが0に等しいTemporalIdと0に等しいdiscardable_flagとを有する場合、PrevLwPicOrderCnt[nuh_layer_id]は、LayerWisePicOrderCntValに等しく設定される>>ital。
PicOrderCntValの値は、両端値を含む−231〜231−1としての範囲の中になければならない。1つのCVSの中で、同じレイヤの中の任意の2つのコード化されたピクチャに対するPicOrderCntVal値は同じであってはならない。
ital<<LayerWisePicOrderCntValの値は、両端値を含む−231〜231−1としての範囲の中になければならない。任意の2つのコード化されたピクチャに対するLayerWisePicOrderCntVal値は、復号順序において、1に等しいNoClrasOutputFlagを有するIRAPピクチャを含むアクセスユニット(それを含む)から始めて、ビットストリームの終了、または1に等しいNoClrasOutputFlagを有するIRAPピクチャを含む次のアクセスユニット(それを除く)の、どちらか復号順序において早い方まで、同じnuh_layer_id値を有するピクチャのシーケンス内で同じであってはならない>>ital。
関数ital<<LayerWisePicOrderCnt>>ital(picX)は、次のように規定される。
Figure 2017507517
関数DiffPicOrderCnt(picA,picB)は、次のように規定される。
Figure 2017507517
ビットストリームは、両端値を含む−215〜215−1としての範囲の中にない、復号プロセスにおいて使用されるDiffPicOrderCnt(picA,picB)の値をもたらすデータを含んではならない。
注 − Xを現在のピクチャとし、YおよびZを同じシーケンスの中の2つの他のピクチャとすると、DiffPicOrderCnt(X,Y)とDiffPicOrderCnt(X,Z)の両方が正であるか、または両方が負であるとき、YおよびZは、Xからの同じ出力順序方向にあるものとみなされる。
他の考慮事項
[00191]本明細書で開示された情報および信号は、多種多様な技術および技法のいずれかを使用して表され得る。たとえば、上記の説明全体にわたって参照され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁場もしくは磁性粒子、光場もしくは光学粒子、またはそれらの任意の組合せによって表され得る。
[00192]本明細書で開示された実施形態に関して記載された様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムステップは、電子ハードウェア、コンピュータソフトウェア、または両方の組合せとして実装され得る。ハードウェアとソフトウェアのこの互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップが、概してそれらの機能に関して上記で説明されている。そのような機能性が、ハードウェアまたはソフトウェアのどちらとして実施されるのかは、特定の応用例と、システム全体に課せられる設計制約とに依存する。当業者は、特定の適用例ごとに様々な方法で記載された機能を実装し得るが、そのような実装の決定が、本発明の範囲からの逸脱を引き起こすと解釈されるべきではない。
[00193]本明細書に記載された技術は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せに実装され得る。そのような技法は、汎用コンピュータ、ワイヤレス通信デバイスハンドセット、またはワイヤレス通信デバイスハンドセットおよび他のデバイスにおける適用例を含む複数の用途を有する集積回路デバイスなどの、様々なデバイスのいずれかにおいて実装され得る。モジュールまたは構成要素として記載された任意の特徴は、集積論理デバイス内で一緒に、または個別であるが相互運用可能な論理デバイスとして別々に実装され得る。ソフトウェアに実装された場合、本技法は、実行されたとき、上記で説明された方法のうちの1つまたは複数を実行する命令を含むプログラムコードを備えるコンピュータ可読データ記憶媒体によって、少なくとも部分的に実現され得る。コンピュータ可読データ記憶媒体は、パッケージング材料を含むことがあるコンピュータプログラム製品の一部を形成し得る。コンピュータ可読媒体は、同期型ダイナミックランダムアクセスメモリ(SDRAM)などのランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、不揮発性ランダムアクセスメモリ(NVRAM)、電気消去可能プログラマブル読取り専用メモリ(EEPROM(登録商標))、フラッシュメモリ、磁気または光学データ記憶媒体などの、メモリまたはデータ記憶媒体を備え得る。本技法は、追加または代替として、伝搬信号または電波などの、命令またはデータ構造の形態でプログラムコードを搬送または伝達し、コンピュータによってアクセスされ、読み取られ、および/または実行され得るコンピュータ可読通信媒体によって、少なくとも部分的に実現され得る。
[00194]プログラムコードは、1つまたは複数のデジタル信号プロセッサ(DSP)などの1つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルロジックアレイ(FPGA)、または他の等価の集積回路もしくはディスクリート論理回路を含み得るプロセッサによって実行され得る。そのようなプロセッサは、本開示に記載された技法のいずれかを実行するように構成され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPとマイクロプロセッサの組合せ、複数のマイクロプロセッサ、DSPコアと連携する1つまたは複数のマイクロプロセッサ、あるいは任意の他のそのような構成として実装され得る。したがって、本明細書で使用する「プロセッサ」という用語は、上記の構造、上記の構造の任意の組合せ、または本明細書に記載された技法の実装に適した任意の他の構造もしくは装置のいずれかを指し得る。さらに、いくつかの態様では、本明細書に記載された機能は、符号化および復号のために構成された専用のソフトウェアモジュールもしくはハードウェアモジュール内に提供され得るか、または複合ビデオエンコーダ/デコーダ(コーデック)に組み込まれ得る。また、本技法は、1つまたは複数の回路または論理要素で十分に実装され得る。
[00195]本開示の技法は、ワイヤレスハンドセット、集積回路(IC)またはICのセット(たとえば、チップセット)を含む、多種多様なデバイスまたは装置で実装され得る。様々なコンポーネント、モジュール、またはユニットは、開示されている技術を実行するように構成されたデバイスの機能的態様を強調するように本開示において説明されているが、異なるハードウェアユニットによる実現を必ずしも必要としない。むしろ、上記で説明したように、様々なユニットが、適切なソフトウェアおよび/またはファームウェアとともに、上記で説明した1つまたは複数のプロセッサを含めて、コーデックハードウェアユニットにおいて組み合わせられるか、または相互動作可能なハードウェアユニットの集合によって与えられ得る。
[00196]本発明の様々な実施形態について説明した。これらおよび他の実施形態は、以下の特許請求の範囲内に入る。
[00196]本発明の様々な実施形態について説明した。これらおよび他の実施形態は、以下の特許請求の範囲内に入る。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[C1]
ビデオ情報をコーディングするように構成された装置であって、
現在のピクチャを有する第1のビデオレイヤに関連付けられたビデオ情報を記憶するように構成されたメモリユニットと、
前記メモリユニットと通信しているプロセッサと、
を備え、前記プロセッサは、
前記現在のピクチャに関連付けられた第1のオフセットを処理すること、前記第1のオフセットは、(a)前記現在のピクチャに復号順序において先行する前記第1のビデオレイヤの中の前のピクチャの第1のピクチャ順序カウント(POC)の最上位ビット(MSB)と、(b)前記現在のピクチャの第2のPOCのMSBとの間の差分を示し、
を行うように構成される、装置。
[C2]
前記プロセッサは、前記現在のピクチャの前記第2のPOCの前記MSBを、前記第1のオフセットに基づいて決定するようにさらに構成される、C1に記載の装置。
[C3]
前記現在のピクチャは、クリーンランダムアクセス(CRA)ピクチャまたはブロークンリンクアクセス(BLA)ピクチャのうちの1つである、C1に記載の装置。
[C4]
前記前のピクチャは、POCリセットを示すPOCリセッティングピクチャ、または瞬時デコーダリフレッシュ(IDR)ピクチャのうちの1つであり、前記前のピクチャは、前記現在のピクチャに復号順序において近い方である、C1に記載の装置。
[C5]
前記プロセッサは、
前記現在のピクチャがPOCリセットに関連するかどうかを決定することと、
前記現在のピクチャがPOCリセットに関連するという決定に基づいて、前記第1のビデオレイヤの中にある復号されたピクチャバッファ(DPB)の中のすべてのピクチャのPOC値を、前記現在のピクチャに関連付けられた前記第1のオフセットに基づいて更新することと、
を行うようにさらに構成される、C1に記載の装置。
[C6]
前記プロセッサは、
前記現在のピクチャがPOCリセットに関連するかどうかを決定することと、
前記現在のピクチャがPOCリセットに関連しないという決定に基づいて、前記現在のピクチャのPOC値を、前記現在のピクチャに関連付けられた前記第1のオフセットに基づいて計算することと、
を行うようにさらに構成される、C1に記載の装置。
[C7]
前記第1のビデオレイヤに関連付けられたビデオパラメータセットが、前記現在のピクチャに関連するビットストリームの中で前記第1のオフセットがシグナリングされるかどうかを示す、フラグまたはシンタックス要素を含む、C1に記載の装置。
[C8]
前記現在のピクチャは、瞬時デコーダリフレッシュ(IDR)ピクチャである、C1に記載の装置。
[C9]
前記装置はエンコーダを備え、前記プロセッサは、少なくとも部分的に、前記現在のピクチャに関連する前記第1のオフセットをビットストリームの中でシグナリングすることによって、前記現在のピクチャに関連付けられた前記第1のオフセットを処理するように構成され、前記プロセッサは、前記ビットストリームの中で前記ビデオ情報を符号化するようにさらに構成される、C1に記載の装置。
[C10]
前記装置はデコーダを備え、前記プロセッサは、少なくとも部分的に、前記現在のピクチャに関連する前記第1のオフセットをビットストリームの中で受信することによって、前記現在のピクチャに関連付けられた前記第1のオフセットを処理するように構成され、前記プロセッサは、前記ビットストリームの中の前記ビデオ情報を復号するようにさらに構成される、C1に記載の装置。
[C11]
前記装置は、コンピュータ、ノートブック、ラップトップコンピュータ、タブレットコンピュータ、セットトップボックス、電話ハンドセット、スマートフォン、スマートパッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、および車載コンピュータのうちの1つまたは複数からなるグループの中から選択されたデバイスを備える、C1に記載の装置。
[C12]
ビデオ情報をコーディングする方法であって、
第1のビデオレイヤの中の現在のピクチャに関連付けられた第1のオフセットを処理すること、前記第1のオフセットは、(a)前記現在のピクチャに復号順序において先行する前記第1のビデオレイヤの中の前のピクチャの第1のピクチャ順序カウント(POC)の最上位ビット(MSB)と、(b)前記現在のピクチャの第2のPOCのMSBとの間の差分を示し、
を備える、方法。
[C13]
前記現在のピクチャの前記第2のPOCの前記MSBを、前記第1のオフセットに基づいて決定することを、さらに備える、C13に記載の方法。
[C14]
前記現在のピクチャは、クリーンランダムアクセス(CRA)ピクチャまたはブロークンリンクアクセス(BLA)ピクチャのうちの1つである、C13に記載の方法。
[C15]
前記前のピクチャは、POCリセットを示すPOCリセッティングピクチャ、または瞬時デコーダリフレッシュ(IDR)ピクチャのうちの1つであり、前記前のピクチャは、前記現在のピクチャに復号順序において近い方である、C13に記載の方法。
[C16]
前記現在のピクチャがPOCリセットに関連するかどうかを決定することと、
前記現在のピクチャがPOCリセットに関連するという決定に基づいて、前記第1のビデオレイヤの中にある復号されたピクチャバッファ(DPB)の中のすべてのピクチャのPOC値を、前記現在のピクチャに関連付けられた前記第1のオフセットに基づいて更新することと、
をさらに備える、C13に記載の方法。
[C17]
前記現在のピクチャがPOCリセットに関連するかどうかを決定することと、
前記現在のピクチャがPOCリセットに関連しないという決定に基づいて、前記現在のピクチャのPOC値を、前記現在のピクチャに関連付けられたPOC MSBサイクルに基づいて計算することと、
をさらに備える、C13に記載の方法。
[C18]
前記第1のビデオレイヤに関連付けられたビデオパラメータセットが、前記現在のピクチャに関連するビットストリームの中で前記POC MSBサイクルがシグナリングされるかどうかを示す、フラグまたはシンタックス要素を含む、C13に記載の方法。
[C19]
前記現在のピクチャは、瞬時デコーダリフレッシュ(IDR)ピクチャである、C13に記載の方法。
[C20]
実行されたとき、装置に、
現在のピクチャを有する第1のビデオレイヤに関連付けられたビデオ情報を記憶することと、
前記現在のピクチャに関連付けられた第1のオフセットを処理することと、前記第1のオフセットは、(a)前記現在のピクチャに復号順序において先行する前記第1のビデオレイヤの中の前のピクチャの第1のピクチャ順序カウント(POC)の最上位ビット(MSB)と、(b)前記現在のピクチャの第2のPOCのMSBとの間の差分を示し、
を備えるプロセスを実行させるコード、
を備える、非一時的コンピュータ可読媒体。
[C21]
前記プロセスは、前記現在のピクチャの前記第2のPOCの前記MSBを、前記第1のオフセットに基づいて決定することをさらに備える、C22に記載のコンピュータ可読媒体。
[C22]
前記プロセスは、
前記現在のピクチャがPOCリセットに関連するかどうかを決定することと、
前記現在のピクチャがPOCリセットに関連するという決定に基づいて、前記第1のビデオレイヤの中にある復号されたピクチャバッファ(DPB)の中のすべてのピクチャのPOC値を、前記現在のピクチャに関連付けられた前記第1のオフセットに基づいて更新することと、
をさらに備える、C22に記載のコンピュータ可読媒体。
[C23]
前記プロセスは、
前記現在のピクチャがPOCリセットに関連するかどうかを決定することと、
前記現在のピクチャがPOCリセットに関連しないという決定に基づいて、前記現在のピクチャのPOC値を、前記現在のピクチャに関連付けられたPOC MSBサイクルに基づいて計算することと、
をさらに備える、C22に記載のコンピュータ可読媒体。
[C24]
ビデオ情報をコーディングするように構成されたビデオコーディングデバイスであって、
現在のピクチャを有する第1のビデオレイヤに関連付けられたビデオ情報を記憶するための手段と、
前記現在のピクチャに関連付けられた第1のオフセットを処理するための手段と、前記第1のオフセットは、(a)前記現在のピクチャに復号順序において先行する前記第1のビデオレイヤの中の前のピクチャの第1のピクチャ順序カウント(POC)の最上位ビット(MSB)と、(b)前記現在のピクチャの第2のPOCのMSBとの間の差分を示し、
を備える、ビデオコーディングデバイス。
[C25]
前記プロセスは、前記現在のピクチャの前記第2のPOCの前記MSBを、前記第1のオフセットに基づいて決定することをさらに備える、C26に記載のビデオコーディングデバイス。
[C26]
前記現在のピクチャがPOCリセットに関連するかどうかを決定するための手段と、
前記現在のピクチャがPOCリセットに関連するという決定に基づいて、前記第1のビデオレイヤの中にある復号されたピクチャバッファ(DPB)の中のすべてのピクチャのPOC値を、前記現在のピクチャに関連付けられた前記第1のオフセットに基づいて更新するための手段と、
をさらに備える、C26に記載のビデオコーディングデバイス。
[C27]
前記現在のピクチャがPOCリセットに関連するかどうかを決定するための手段と、
前記現在のピクチャがPOCリセットに関連しないという決定に基づいて、前記現在のピクチャのPOC値を、前記現在のピクチャに関連付けられたPOC MSBサイクルに基づいて計算するための手段と、
をさらに備える、C26に記載のビデオコーディングデバイス。
[C28]
ビデオ情報をコーディングするように構成された装置であって、
現在のピクチャを有する第1のビデオレイヤに関連付けられたビデオ情報を記憶するように構成されたメモリユニットと、
前記メモリユニットと通信しているプロセッサと、
を備え、前記プロセッサは、
前記現在のピクチャに復号順序において後続する少なくとも1つのピクチャが、前記現在のピクチャに復号順序において先行する少なくとも1つの他のピクチャの前に出力されるべきであるかどうかを決定することと、
前記現在のピクチャに復号順序において後続する少なくとも1つのピクチャが、前記現在のピクチャに復号順序において先行する前記少なくとも1つの他のピクチャの前に出力されるべきであるという決定に基づいて、前記現在のピクチャに関連するPOCリセットを示すことを控えることと、
を行うように構成される、装置。
[C29]
ビデオ情報をコーディングする方法であって、
ビデオレイヤの中の現在のピクチャに復号順序において後続する少なくとも1つのピクチャが、前記現在のピクチャに復号順序において先行する前記ビデオレイヤの中の少なくとも1つの他のピクチャの前に出力されるべきであるかどうかを決定することと、
前記現在のピクチャに復号順序において後続する少なくとも1つのピクチャが、前記現在のピクチャに復号順序において先行する前記少なくとも1つの他のピクチャの前に出力されるべきであるという決定に基づいて、前記現在のピクチャに関連するPOCリセットを示すことを控えることと、
を備える、方法。
[C30]
実行されたとき、装置に、
現在のピクチャを有する第1のビデオレイヤに関連付けられたビデオ情報を記憶することと、
前記現在のピクチャに復号順序において後続する少なくとも1つのピクチャが、前記現在のピクチャに復号順序において先行する少なくとも1つの他のピクチャの前に出力されるべきであるかどうかを決定することと、
前記現在のピクチャに復号順序において後続する少なくとも1つのピクチャが、前記現在のピクチャに復号順序において先行する前記少なくとも1つの他のピクチャの前に出力されるべきであるという決定に基づいて、前記現在のピクチャに関連するPOCリセットを示すことを控えることと、
を備えるプロセスを実行させるコード、
を備える、非一時的コンピュータ可読媒体。
[C31]
ビデオ情報をコーディングするように構成されたビデオコーディングデバイスであって、
現在のピクチャを有する第1のビデオレイヤに関連付けられたビデオ情報を記憶するための手段と、
前記現在のピクチャに復号順序において後続する少なくとも1つのピクチャが、前記現在のピクチャに復号順序において先行する少なくとも1つの他のピクチャの前に出力されるべきであるかどうかを決定するための手段と、
前記現在のピクチャに復号順序において後続する少なくとも1つのピクチャが、前記現在のピクチャに復号順序において先行する前記少なくとも1つの他のピクチャの前に出力されるべきであるという決定に基づいて、前記現在のピクチャに関連するPOCリセットを示すことを控えるための手段と、
を備える、ビデオコーディングデバイス。

Claims (31)

  1. ビデオ情報をコーディングするように構成された装置であって、
    現在のピクチャを有する第1のビデオレイヤに関連付けられたビデオ情報を記憶するように構成されたメモリユニットと、
    前記メモリユニットと通信しているプロセッサと、
    を備え、前記プロセッサは、
    前記現在のピクチャに関連付けられた第1のオフセットを処理すること、前記第1のオフセットは、(a)前記現在のピクチャに復号順序において先行する前記第1のビデオレイヤの中の前のピクチャの第1のピクチャ順序カウント(POC)の最上位ビット(MSB)と、(b)前記現在のピクチャの第2のPOCのMSBとの間の差分を示し、
    を行うように構成される、装置。
  2. 前記プロセッサは、前記現在のピクチャの前記第2のPOCの前記MSBを、前記第1のオフセットに基づいて決定するようにさらに構成される、請求項1に記載の装置。
  3. 前記現在のピクチャは、クリーンランダムアクセス(CRA)ピクチャまたはブロークンリンクアクセス(BLA)ピクチャのうちの1つである、請求項1に記載の装置。
  4. 前記前のピクチャは、POCリセットを示すPOCリセッティングピクチャ、または瞬時デコーダリフレッシュ(IDR)ピクチャのうちの1つであり、前記前のピクチャは、前記現在のピクチャに復号順序において近い方である、請求項1に記載の装置。
  5. 前記プロセッサは、
    前記現在のピクチャがPOCリセットに関連するかどうかを決定することと、
    前記現在のピクチャがPOCリセットに関連するという決定に基づいて、前記第1のビデオレイヤの中にある復号されたピクチャバッファ(DPB)の中のすべてのピクチャのPOC値を、前記現在のピクチャに関連付けられた前記第1のオフセットに基づいて更新することと、
    を行うようにさらに構成される、請求項1に記載の装置。
  6. 前記プロセッサは、
    前記現在のピクチャがPOCリセットに関連するかどうかを決定することと、
    前記現在のピクチャがPOCリセットに関連しないという決定に基づいて、前記現在のピクチャのPOC値を、前記現在のピクチャに関連付けられた前記第1のオフセットに基づいて計算することと、
    を行うようにさらに構成される、請求項1に記載の装置。
  7. 前記第1のビデオレイヤに関連付けられたビデオパラメータセットが、前記現在のピクチャに関連するビットストリームの中で前記第1のオフセットがシグナリングされるかどうかを示す、フラグまたはシンタックス要素を含む、請求項1に記載の装置。
  8. 前記現在のピクチャは、瞬時デコーダリフレッシュ(IDR)ピクチャである、請求項1に記載の装置。
  9. 前記装置はエンコーダを備え、前記プロセッサは、少なくとも部分的に、前記現在のピクチャに関連する前記第1のオフセットをビットストリームの中でシグナリングすることによって、前記現在のピクチャに関連付けられた前記第1のオフセットを処理するように構成され、前記プロセッサは、前記ビットストリームの中で前記ビデオ情報を符号化するようにさらに構成される、請求項1に記載の装置。
  10. 前記装置はデコーダを備え、前記プロセッサは、少なくとも部分的に、前記現在のピクチャに関連する前記第1のオフセットをビットストリームの中で受信することによって、前記現在のピクチャに関連付けられた前記第1のオフセットを処理するように構成され、前記プロセッサは、前記ビットストリームの中の前記ビデオ情報を復号するようにさらに構成される、請求項1に記載の装置。
  11. 前記装置は、コンピュータ、ノートブック、ラップトップコンピュータ、タブレットコンピュータ、セットトップボックス、電話ハンドセット、スマートフォン、スマートパッド、テレビジョン、カメラ、ディスプレイデバイス、デジタルメディアプレーヤ、ビデオゲームコンソール、および車載コンピュータのうちの1つまたは複数からなるグループの中から選択されたデバイスを備える、請求項1に記載の装置。
  12. ビデオ情報をコーディングする方法であって、
    第1のビデオレイヤの中の現在のピクチャに関連付けられた第1のオフセットを処理すること、前記第1のオフセットは、(a)前記現在のピクチャに復号順序において先行する前記第1のビデオレイヤの中の前のピクチャの第1のピクチャ順序カウント(POC)の最上位ビット(MSB)と、(b)前記現在のピクチャの第2のPOCのMSBとの間の差分を示し、 を備える、
    方法。
  13. 前記現在のピクチャの前記第2のPOCの前記MSBを、前記第1のオフセットに基づいて決定することを、さらに備える、請求項13に記載の方法。
  14. 前記現在のピクチャは、クリーンランダムアクセス(CRA)ピクチャまたはブロークンリンクアクセス(BLA)ピクチャのうちの1つである、請求項13に記載の方法。
  15. 前記前のピクチャは、POCリセットを示すPOCリセッティングピクチャ、または瞬時デコーダリフレッシュ(IDR)ピクチャのうちの1つであり、前記前のピクチャは、前記現在のピクチャに復号順序において近い方である、請求項13に記載の方法。
  16. 前記現在のピクチャがPOCリセットに関連するかどうかを決定することと、
    前記現在のピクチャがPOCリセットに関連するという決定に基づいて、前記第1のビデオレイヤの中にある復号されたピクチャバッファ(DPB)の中のすべてのピクチャのPOC値を、前記現在のピクチャに関連付けられた前記第1のオフセットに基づいて更新することと、
    をさらに備える、請求項13に記載の方法。
  17. 前記現在のピクチャがPOCリセットに関連するかどうかを決定することと、
    前記現在のピクチャがPOCリセットに関連しないという決定に基づいて、前記現在のピクチャのPOC値を、前記現在のピクチャに関連付けられたPOC MSBサイクルに基づいて計算することと、
    をさらに備える、請求項13に記載の方法。
  18. 前記第1のビデオレイヤに関連付けられたビデオパラメータセットが、前記現在のピクチャに関連するビットストリームの中で前記POC MSBサイクルがシグナリングされるかどうかを示す、フラグまたはシンタックス要素を含む、請求項13に記載の方法。
  19. 前記現在のピクチャは、瞬時デコーダリフレッシュ(IDR)ピクチャである、請求項13に記載の方法。
  20. 実行されたとき、装置に、
    現在のピクチャを有する第1のビデオレイヤに関連付けられたビデオ情報を記憶することと、
    前記現在のピクチャに関連付けられた第1のオフセットを処理することと、前記第1のオフセットは、(a)前記現在のピクチャに復号順序において先行する前記第1のビデオレイヤの中の前のピクチャの第1のピクチャ順序カウント(POC)の最上位ビット(MSB)と、(b)前記現在のピクチャの第2のPOCのMSBとの間の差分を示し、
    を備えるプロセスを実行させるコード、
    を備える、非一時的コンピュータ可読媒体。
  21. 前記プロセスは、前記現在のピクチャの前記第2のPOCの前記MSBを、前記第1のオフセットに基づいて決定することをさらに備える、請求項22に記載のコンピュータ可読媒体。
  22. 前記プロセスは、
    前記現在のピクチャがPOCリセットに関連するかどうかを決定することと、
    前記現在のピクチャがPOCリセットに関連するという決定に基づいて、前記第1のビデオレイヤの中にある復号されたピクチャバッファ(DPB)の中のすべてのピクチャのPOC値を、前記現在のピクチャに関連付けられた前記第1のオフセットに基づいて更新することと、
    をさらに備える、請求項22に記載のコンピュータ可読媒体。
  23. 前記プロセスは、
    前記現在のピクチャがPOCリセットに関連するかどうかを決定することと、
    前記現在のピクチャがPOCリセットに関連しないという決定に基づいて、前記現在のピクチャのPOC値を、前記現在のピクチャに関連付けられたPOC MSBサイクルに基づいて計算することと、
    をさらに備える、請求項22に記載のコンピュータ可読媒体。
  24. ビデオ情報をコーディングするように構成されたビデオコーディングデバイスであって、
    現在のピクチャを有する第1のビデオレイヤに関連付けられたビデオ情報を記憶するための手段と、
    前記現在のピクチャに関連付けられた第1のオフセットを処理するための手段と、前記第1のオフセットは、(a)前記現在のピクチャに復号順序において先行する前記第1のビデオレイヤの中の前のピクチャの第1のピクチャ順序カウント(POC)の最上位ビット(MSB)と、(b)前記現在のピクチャの第2のPOCのMSBとの間の差分を示し、
    を備える、ビデオコーディングデバイス。
  25. 前記プロセスは、前記現在のピクチャの前記第2のPOCの前記MSBを、前記第1のオフセットに基づいて決定することをさらに備える、請求項26に記載のビデオコーディングデバイス。
  26. 前記現在のピクチャがPOCリセットに関連するかどうかを決定するための手段と、
    前記現在のピクチャがPOCリセットに関連するという決定に基づいて、前記第1のビデオレイヤの中にある復号されたピクチャバッファ(DPB)の中のすべてのピクチャのPOC値を、前記現在のピクチャに関連付けられた前記第1のオフセットに基づいて更新するための手段と、
    をさらに備える、請求項26に記載のビデオコーディングデバイス。
  27. 前記現在のピクチャがPOCリセットに関連するかどうかを決定するための手段と、
    前記現在のピクチャがPOCリセットに関連しないという決定に基づいて、前記現在のピクチャのPOC値を、前記現在のピクチャに関連付けられたPOC MSBサイクルに基づいて計算するための手段と、
    をさらに備える、請求項26に記載のビデオコーディングデバイス。
  28. ビデオ情報をコーディングするように構成された装置であって、
    現在のピクチャを有する第1のビデオレイヤに関連付けられたビデオ情報を記憶するように構成されたメモリユニットと、
    前記メモリユニットと通信しているプロセッサと、
    を備え、前記プロセッサは、
    前記現在のピクチャに復号順序において後続する少なくとも1つのピクチャが、前記現在のピクチャに復号順序において先行する少なくとも1つの他のピクチャの前に出力されるべきであるかどうかを決定することと、
    前記現在のピクチャに復号順序において後続する少なくとも1つのピクチャが、前記現在のピクチャに復号順序において先行する前記少なくとも1つの他のピクチャの前に出力されるべきであるという決定に基づいて、前記現在のピクチャに関連するPOCリセットを示すことを控えることと、
    を行うように構成される、装置。
  29. ビデオ情報をコーディングする方法であって、
    ビデオレイヤの中の現在のピクチャに復号順序において後続する少なくとも1つのピクチャが、前記現在のピクチャに復号順序において先行する前記ビデオレイヤの中の少なくとも1つの他のピクチャの前に出力されるべきであるかどうかを決定することと、
    前記現在のピクチャに復号順序において後続する少なくとも1つのピクチャが、前記現在のピクチャに復号順序において先行する前記少なくとも1つの他のピクチャの前に出力されるべきであるという決定に基づいて、前記現在のピクチャに関連するPOCリセットを示すことを控えることと、
    を備える、方法。
  30. 実行されたとき、装置に、
    現在のピクチャを有する第1のビデオレイヤに関連付けられたビデオ情報を記憶することと、
    前記現在のピクチャに復号順序において後続する少なくとも1つのピクチャが、前記現在のピクチャに復号順序において先行する少なくとも1つの他のピクチャの前に出力されるべきであるかどうかを決定することと、
    前記現在のピクチャに復号順序において後続する少なくとも1つのピクチャが、前記現在のピクチャに復号順序において先行する前記少なくとも1つの他のピクチャの前に出力されるべきであるという決定に基づいて、前記現在のピクチャに関連するPOCリセットを示すことを控えることと、
    を備えるプロセスを実行させるコード、
    を備える、非一時的コンピュータ可読媒体。
  31. ビデオ情報をコーディングするように構成されたビデオコーディングデバイスであって、
    現在のピクチャを有する第1のビデオレイヤに関連付けられたビデオ情報を記憶するための手段と、
    前記現在のピクチャに復号順序において後続する少なくとも1つのピクチャが、前記現在のピクチャに復号順序において先行する少なくとも1つの他のピクチャの前に出力されるべきであるかどうかを決定するための手段と、
    前記現在のピクチャに復号順序において後続する少なくとも1つのピクチャが、前記現在のピクチャに復号順序において先行する前記少なくとも1つの他のピクチャの前に出力されるべきであるという決定に基づいて、前記現在のピクチャに関連するPOCリセットを示すことを控えるための手段と、
    を備える、ビデオコーディングデバイス。
JP2016541218A 2013-12-19 2014-12-19 ビデオ情報のスケーラブルコーディングのためのデバイスおよび方法 Active JP6517213B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361918630P 2013-12-19 2013-12-19
US61/918,630 2013-12-19
US14/575,788 2014-12-18
US14/575,788 US9854270B2 (en) 2013-12-19 2014-12-18 Device and method for scalable coding of video information
PCT/US2014/071505 WO2015095706A1 (en) 2013-12-19 2014-12-19 Device and method for scalable coding of video information

Publications (3)

Publication Number Publication Date
JP2017507517A true JP2017507517A (ja) 2017-03-16
JP2017507517A5 JP2017507517A5 (ja) 2018-01-11
JP6517213B2 JP6517213B2 (ja) 2019-05-22

Family

ID=53401548

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016541218A Active JP6517213B2 (ja) 2013-12-19 2014-12-19 ビデオ情報のスケーラブルコーディングのためのデバイスおよび方法

Country Status (10)

Country Link
US (1) US9854270B2 (ja)
EP (1) EP3085097B1 (ja)
JP (1) JP6517213B2 (ja)
KR (1) KR102294250B1 (ja)
CN (1) CN105830447B (ja)
BR (1) BR112016014227B1 (ja)
CA (1) CA2930328C (ja)
ES (1) ES2854274T3 (ja)
TW (1) TWI645716B (ja)
WO (1) WO2015095706A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022531482A (ja) * 2019-05-06 2022-07-06 ホアウェイ・テクノロジーズ・カンパニー・リミテッド ビデオ符号化における回復ポイントシグナリング

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103931189B (zh) * 2011-09-22 2017-11-03 Lg电子株式会社 用信号发送图像信息的方法和装置,以及使用其的解码方法和装置
PL2901688T3 (pl) 2012-09-28 2020-05-18 Nokia Technologies Oy Aparat i sposób do kodowania i dekodowania wideo
RU2662922C2 (ru) * 2013-07-12 2018-07-31 Сони Корпорейшн Способ и устройство кодирования изображений
MX352400B (es) * 2013-07-12 2017-11-23 Sony Corp Dispositivo de reproducción, método de reproducción y medio de grabación.
WO2016089093A1 (ko) * 2014-12-04 2016-06-09 엘지전자 주식회사 방송 신호 송수신 방법 및 장치
US10216417B2 (en) 2016-10-26 2019-02-26 Samsung Electronics Co., Ltd. Method of consolidate data streams for multi-stream enabled SSDs
US10869032B1 (en) 2016-11-04 2020-12-15 Amazon Technologies, Inc. Enhanced encoding and decoding of video reference frames
US10484701B1 (en) 2016-11-08 2019-11-19 Amazon Technologies, Inc. Rendition switch indicator
KR102371099B1 (ko) 2016-11-17 2022-03-04 인텔 코포레이션 광시야 비디오를 인코딩하기 위한 구면 회전 기법
US10264265B1 (en) 2016-12-05 2019-04-16 Amazon Technologies, Inc. Compression encoding of images
US10681382B1 (en) * 2016-12-20 2020-06-09 Amazon Technologies, Inc. Enhanced encoding and decoding of video reference frames
TWI617181B (zh) * 2017-01-04 2018-03-01 晨星半導體股份有限公司 用於高效率視訊編碼裝置之排程方法
JP7077396B2 (ja) 2017-04-21 2022-05-30 ゼニマックス メディア インク. ビデオエンコードの延期されたポストプロセスのためのシステムおよび方法
US10698808B2 (en) 2017-04-25 2020-06-30 Samsung Electronics Co., Ltd. Garbage collection—automatic data placement
US11048624B2 (en) 2017-04-25 2021-06-29 Samsung Electronics Co., Ltd. Methods for multi-stream garbage collection
WO2020094079A1 (en) 2018-11-06 2020-05-14 Beijing Bytedance Network Technology Co., Ltd. Block size dependent storage of motion information
BR112021012679A2 (pt) * 2018-12-27 2021-09-08 Huawei Technologies Co., Ltd. Codificador de vídeo, decodificador de vídeo e métodos correspondentes
US11706429B2 (en) 2019-03-12 2023-07-18 Hyundai Motor Company Method and device for encoding and decoding image involving gradual refresh technique
WO2020185128A1 (en) * 2019-03-12 2020-09-17 Huawei Technologies Co., Ltd. Design for distributed decoding refresh in video coding
KR20220003101A (ko) * 2019-05-06 2022-01-07 후아웨이 테크놀러지 컴퍼니 리미티드 비디오 코딩에서 새로운 코딩된 비디오 시퀀스를 시작하는 픽처에 대한 이전 픽처의 출력
CN113950842A (zh) * 2019-06-20 2022-01-18 索尼半导体解决方案公司 图像处理装置和方法
US11166038B2 (en) * 2019-06-20 2021-11-02 Tencent America LLC Method for support of scalability with adaptive picture resolution
CN112118454B (zh) * 2019-06-20 2023-02-24 腾讯美国有限责任公司 视频解码方法、设备和计算机可读存储介质
US11457242B2 (en) * 2019-06-24 2022-09-27 Qualcomm Incorporated Gradual random access (GRA) signalling in video coding
CN110619193B (zh) * 2019-08-20 2022-02-15 许遥 提供网络图片的方法、装置、服务器及存储介质
MX2022003449A (es) * 2019-09-24 2022-04-19 Huawei Tech Co Ltd Compatibilidad con imagenes mixtas irap y no irap dentro de una unidad de acceso de flujos de bits de video de capas multiples.
MX2022003550A (es) * 2019-09-24 2022-06-02 Huawei Tech Co Ltd Pruebas de conformidad hrd en ols.
US12069315B2 (en) * 2019-12-19 2024-08-20 Telefonaktiebolaget Lm Ericsson (Publ) Film grain process
EP4062635A4 (en) 2019-12-26 2022-12-28 ByteDance Inc. CONSTRAINTS ON SIGNALING VIDEO LAYERS IN ENCODED BITSTREAMS
BR112022011719A2 (pt) 2019-12-26 2022-09-06 Bytedance Inc Método de processamento de vídeo, aparelho de processamento de dados de vídeo, e, mídias de armazenamento e de gravação legíveis por computador
EP4062634A4 (en) 2019-12-26 2022-12-28 ByteDance Inc. LIMITATIONS ON SIGNALING HYPOTHETICAL REFERENCE DECODER PARAMETERS IN VIDEO BITSTREAMS
JP7422881B2 (ja) 2019-12-27 2024-01-26 バイトダンス インコーポレイテッド パラメータセットにおけるサブピクチャシグナリング
US11356698B2 (en) 2019-12-30 2022-06-07 Tencent America LLC Method for parameter set reference constraints in coded video stream
KR20220125235A (ko) 2020-01-09 2022-09-14 바이트댄스 아이엔씨 상이한 sei 메시지들의 디코딩 순서
JP2023528786A (ja) * 2020-06-10 2023-07-06 フラウンホッファー-ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ マルチレイヤビデオビットストリーム及び出力タイミング導出のための多岐にわたるシグナリング概念
US20220321918A1 (en) * 2021-04-02 2022-10-06 Qualcomm Incorporated Picture orientation and quality metrics supplemental enhancement information message for video coding

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130287115A1 (en) * 2012-04-26 2013-10-31 Qualcomm Incorporated Parameter set coding

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1946563A2 (en) * 2005-10-19 2008-07-23 Thomson Licensing Multi-view video coding using scalable video coding
KR20090004658A (ko) * 2007-07-02 2009-01-12 엘지전자 주식회사 디지털 방송 시스템 및 데이터 처리 방법
US20120075436A1 (en) * 2010-09-24 2012-03-29 Qualcomm Incorporated Coding stereo video data
US9635355B2 (en) * 2011-07-28 2017-04-25 Qualcomm Incorporated Multiview video coding
US9451252B2 (en) * 2012-01-14 2016-09-20 Qualcomm Incorporated Coding parameter sets and NAL unit headers for video coding
US9973749B2 (en) * 2012-01-20 2018-05-15 Nokia Technologies Oy Method for video coding and an apparatus, a computer-program product, a system, and a module for the same
WO2013116415A1 (en) * 2012-01-31 2013-08-08 Vid Scale, Inc. Reference picture set (rps) signaling for scalable high efficiency video coding (hevc)
CN104205819B (zh) * 2012-02-01 2017-06-30 诺基亚技术有限公司 用于视频编码的方法和装置
KR102219907B1 (ko) * 2012-04-23 2021-02-25 삼성전자주식회사 다시점 비디오 부호화 방법 및 장치, 다시점 비디오 복호화 방법 및 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130287115A1 (en) * 2012-04-26 2013-10-31 Qualcomm Incorporated Parameter set coding

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
BYEONGDOO CHOI ET AL.: "POC signalling for CRA picture", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) 9TH MEETING: GENEVA, vol. JCTVC-I0133.doc, JPN6019009129, 16 April 2012 (2012-04-16) *
BYEONGDOO CHOI, ET AL.: "MV-HEVC/SHVC HLS: Alignment of picture order counts", JOINT COLLABORATIVE TEAM ON 3D VIDEO CODING EXTENSIONS OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/W, vol. JCT3V-F0053, JPN6018043808, 15 October 2013 (2013-10-15), pages pp. 1-5 *
RICKARD SJOBERG ET AL.: "HLS: Error robust POC alignment", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) 15TH MEETING: GENEVA, vol. JCTVC-O0176.doc, JPN6019009130, 24 October 2013 (2013-10-24) *
YE-KUI WANG ET AL.: "Spec text changes for JCTVC-L0043 based on JCTVC-L0030", JOINT COLLABORATIVE TEAM ON VIDEO CODING (JCT-VC) 12TH MEETING: GENEVA, vol. JCTVC-L0043v3_attachment.doc, JPN6018043810, 15 January 2013 (2013-01-15) *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022531482A (ja) * 2019-05-06 2022-07-06 ホアウェイ・テクノロジーズ・カンパニー・リミテッド ビデオ符号化における回復ポイントシグナリング
JP2022531481A (ja) * 2019-05-06 2022-07-06 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 漸次復号リフレッシュのための仮想参照デコーダ
JP7443398B2 (ja) 2019-05-06 2024-03-05 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 漸次復号リフレッシュのための仮想参照デコーダ
JP7462679B2 (ja) 2019-05-06 2024-04-05 ホアウェイ・テクノロジーズ・カンパニー・リミテッド ビデオ符号化における回復ポイントシグナリング
US12022064B2 (en) 2019-05-06 2024-06-25 Huawei Technologies Co., Ltd. Recovery point signaling in video coding
US12088797B2 (en) 2019-05-06 2024-09-10 Huawei Technologies Co., Ltd. Hypothetical reference decoder for gradual decoding refresh

Also Published As

Publication number Publication date
US20150181233A1 (en) 2015-06-25
ES2854274T3 (es) 2021-09-21
WO2015095706A1 (en) 2015-06-25
KR102294250B1 (ko) 2021-08-25
EP3085097A1 (en) 2016-10-26
CA2930328A1 (en) 2015-06-25
CN105830447B (zh) 2019-01-18
BR112016014227A2 (pt) 2017-08-08
KR20160099686A (ko) 2016-08-22
CA2930328C (en) 2022-06-14
BR112016014227B1 (pt) 2023-05-16
JP6517213B2 (ja) 2019-05-22
US9854270B2 (en) 2017-12-26
EP3085097B1 (en) 2020-11-18
CN105830447A (zh) 2016-08-03
TWI645716B (zh) 2018-12-21
TW201536038A (zh) 2015-09-16

Similar Documents

Publication Publication Date Title
JP6517213B2 (ja) ビデオ情報のスケーラブルコーディングのためのデバイスおよび方法
JP6580576B2 (ja) ビデオ情報のスケーラブルコーディングのためのデバイスおよび方法
KR102127549B1 (ko) 멀티-계층 비디오 코딩에서의 상이한 코덱의 기본 계층의 지원
JP2017525224A (ja) マルチレイヤコーデックにおける表現フォーマット更新
JP2017509252A (ja) マルチレイヤビットストリームのためのピクチャのフラッシングおよび復号ピクチャバッファのパラメータ推測
JP6608374B2 (ja) ビデオ情報のスケーラブルコーディングのためのデバイスおよび方法
JP2017507542A (ja) ビデオコーディングにおけるNoOutputOfPriorPicsFlagの改善された推論
JP6434044B2 (ja) ビデオ情報のスケーラブルコード化のための機器及び方法
JP2017513352A (ja) マルチレイヤビットストリームのためのsps時間idネスティング情報の導出
JP2016539545A (ja) ビデオ情報のスケーラブルコーディングのためのデバイスおよび方法
JP6312838B2 (ja) マルチレイヤコード化においてレイヤ間参照ピクチャセット(RPS)をコード化し、ビットストリーム終端(EoB)ネットワークアクセスレイヤ(NAL)単位をコード化するための方法
JP2017518704A (ja) マルチレイヤコーデックのためのフルピクチャ順序カウントリセット
JP2017507546A (ja) マルチレイヤコード化において参照ピクチャセット(rps)をコード化するための方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171122

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171122

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181030

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190206

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: 20190319

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190417

R150 Certificate of patent or registration of utility model

Ref document number: 6517213

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250