[0046]ビデオコード化規格は、ITU−T H.261と、ISO/IEC MPEG−1 Visualと、ITU−T H.262又はISO/IEC MPEG−2 Visualと、ITU−T H.263と、ISO/IEC MPEG−4 Visualと、それのスケーラブルビデオコード化(SVC)及びマルチビュービデオコード化(MVC)拡張を含む(ISO/IEC MPEG−4 AVCとしても知られる)ITU−T H.264とを含む。SVCとMVCとのジョイントドラフトは、「Advanced video coding for generic audiovisual services」、ITU−T勧告H.264、2010年3月に記載されている。
[0047]更に、ITU−Tビデオコード化エキスパートグループ(VCEG:Video Coding Experts Group)とISO/IECモーションピクチャエキスパートグループ(MPEG:Motion Picture Experts Group)とのジョイントコラボレーションチームオンビデオコード化(JCT−VC:Joint Collaboration Team on Video Coding)によって開発された新しいビデオコード化規格、即ち、高効率ビデオコード化(HEVC)がある。ITU−T H.265とも呼ばれるHEVCは、http://www.itu.int/rec/T−REC−H.265−201304−I/enにおいて入手可能な、ITU−T H.265、SERIES H:AUDIOVISUAL AND MULTIMEDIA SYSTEMS、オーディオビジュアルサービスのインフラストラクチャ─動画像(Moving Video)のコード化、高効率ビデオコード化、2013年4月に記載されている。
[0048]H.264/AVCのSVC拡張とHEVCのSVC拡張の両方に対して、SVCに関する幾つかの詳細が、図4〜図9に関して以下で説明される。
[0049]マルチレイヤコード化コンテキストにおける並列処理に対して存在する解決策は、少なくとも次の問題と関連付けられ得る。
[0050]HEVC拡張において、同じアクセス単位又は異なるアクセス単位内の異なるレイヤに関して、より大きい相互依存性が存在し得る。例えば、拡張レイヤピクチャの復号は、復号された参照レイヤピクチャに依存し得る。HEVC(SHVC)のSVC拡張は、マルチループスケーラブル復号フレームワークを利用する。現在のSHVCフレームワークにおいて、現在のレイヤピクチャが(任意のタイプのレイヤ間予測を介して)依存する全ての参照レイヤピクチャは、現在レイヤピクチャを復号することを開始するために復号されなければならない。これは、幾つかの復号システムに対する幾つかの並列処理アーキテクチャにおいて、全体的なコーデック遅延を増加させることがある。
[0051]加えて、各レイヤ内に2つ以上のタイルを有する異なるレイヤを並列処理するとき、幾つかの領域に対するアップサンプリング、レイヤ間フィルタリング、又はレイヤ間シンタックス予測は、参照レイヤピクチャ内のタイル境界を横切ることがある。タイルに対する並列処理によって、タイル境界に沿った参照レイヤピクチャ内の再構成されたサンプルの利用可能性は保証され得ず、従って、アップサンプリング又はレイヤ間フィルタリングは、適切に実行され得ない。従って、アップサンプリング又はレイヤ間フィルタリングは、参照レイヤピクチャ全体が復号されるか又は異なるレイヤの並列処理が部分的に中断されるまで延期されなければならない。
[0052]更に、K.Suhringら、Tile boundary alignment and inter−layer prediction constraints for SHVC and MV−HEVC、JCTVC−M0464、2013年4月(以後「JCTVC−M0464」)に記載されるタイル境界整合の規格は、少なくとも次の問題と関連する。拡張された空間スケーラビリティ又はアスペクト比スケーラビリティユースケースシナリオに対して、拡張レイヤサンプルは、対応するベースレイヤサンプルをもたず、その逆も同様である。従って、F.Henry及びS.Pateux、「Wavefront parallel processing」、JCTVC−E196、2011年3月(以後「JCTVC−E196」)に記載されるタイル境界整合の規格は、レイヤにわたるタイルの使用をまったく許容しない。図10は、拡張レイヤサンプルが対応するベースレイヤサンプルをもたない、拡張された空間スケーラビリティシナリオの一例を示す。図11は、ベースレイヤサンプルが対応する拡張レイヤサンプルをもたない、拡張された空間スケーラビリティシナリオの一例を示す。JCTVC−M0464及びJCTVC−E196は、それらの全体が参照により本明細書に組み込まれる。
[0053]図10は、幾つかの(拡張レイヤ)ELサンプルが対応するベースレイヤサンプルをもたない、拡張された空間スケーラビリティの一例を示す。図11は、幾つかの(ベースレイヤ)BLサンプルが対応する拡張レイヤサンプルをもたない、拡張された空間スケーラビリティの一例を示す。
[0054]本開示は、例えばHEVCの拡張における並列処理をサポートするために使用され得る技法の2つのカテゴリーを説明する。これらの2つのカテゴリーからの技法は、単独で又は独立に使用され得る。技法は、スケーラブルビデオコード化と、(深度を有するか又はもたない)マルチビュービデオコード化と、HEVCに対する他の拡張及び他のビデオコーデックとに適用可能である。第1のカテゴリーは、制限付きレイヤ間予測を対象とする。第2のカテゴリーは、信号伝達(signaling)を対象とする。両カテゴリーからの技法の例は、以下でより詳細に説明される。
[0055]図1は、ビデオデータを並列に処理するための技法を利用し得る例示的なビデオ符号化及び復号システム10を示すブロック図である。図1に示すように、システム10は、宛先機器14によって後で復号されるべき符号化ビデオデータを与える発信源機器12を含む。特に、発信源機器12は、コンピュータ可読媒体16を介してビデオデータを宛先機器14に与える。発信源機器12及び宛先機器14は、デスクトップコンピュータ、ノートブック(即ち、ラップトップ)コンピュータ、タブレットコンピュータ、セットトップボックス、所謂「スマート」フォンなどの電話ハンドセット、所謂「スマート」パッド、テレビジョン、カメラ、表示装置、デジタルメディアプレーヤ、ビデオゲームコンソール、ビデオストリーミング機器などを含む、広範囲にわたる機器のいずれかを備え得る。場合によっては、発信源機器12及び宛先機器14は、ワイヤレス通信のために装備され得る。
[0056]宛先機器14は、コンピュータ可読媒体16を介して復号されるべき符号化ビデオデータを受信し得る。コンピュータ可読媒体16は、符号化されたビデオデータを発信源機器12から宛先機器14に移動することが可能な任意のタイプの媒体又は機器を備え得る。一例では、コンピュータ可読媒体16は、発信源機器12が、符号化されたビデオデータをリアルタイムで宛先機器14に直接送信することを可能にするための通信媒体を備え得る。符号化されたビデオデータは、ワイヤレス通信プロトコルなどの通信規格に従って変調され、宛先機器14に送信され得る。通信媒体は、高周波(RF)スペクトル又は1つ以上の物理伝送線路など、任意のワイヤレス又は有線通信媒体を備え得る。通信媒体は、ローカルエリアネットワーク、ワイドエリアネットワーク、又はインターネットなどのグローバルネットワークなど、パケットベースネットワークの一部を形成し得る。通信媒体は、発信源機器12から宛先機器14への通信を可能にするために有用であり得るルータ、スイッチ、基地局、又は任意の他の機器を含み得る。
[0057]幾つかの例では、符号化されたデータは、出力インターフェース22から記憶装置に出力され得る。同様に、符号化されたデータは、入力インターフェースによって記憶装置からアクセスされ得る。記憶装置は、ハードドライブ、Blu−ray(登録商標)ディスク、DVD、CD−ROM、フラッシュメモリ、揮発性又は不揮発性のメモリ、又は符号化されたビデオデータを記憶するための任意の他の好適なデジタル記憶媒体のような、様々な分散された又はローカルにアクセスされるデータ記憶媒体のいずれかを含み得る。更なる一例では、記憶装置は、発信源機器12によって生成された符号化されたビデオを記憶し得る、ファイルサーバ又は別の中間記憶装置に対応し得る。
[0058]宛先機器14は、ストリーミング又はダウンロードを介して、記憶装置から記憶されたビデオデータにアクセスし得る。ファイルサーバは、符号化されたビデオデータを記憶し、その符号化されたビデオデータを宛先機器14に送信することができる任意のタイプのサーバであり得る。例示的なファイルサーバとしては、(例えば、ウェブサイト用の)ウェブサーバ、FTPサーバ、ネットワーク接続記憶(NAS)装置、又はローカルディスクドライブがある。宛先機器14は、インターネット接続を含むいずれかの標準データ接続を通して符号化ビデオデータにアクセスし得る。これは、ファイルサーバに記憶された符号化されたビデオデータにアクセスするのに適しているワイヤレスチャネル(例えば、Wi−Fi(登録商標)接続)、ワイヤード接続(例えば、DSL、ケーブルモデムなど)、又は両方の組合せを含むことができる。記憶装置からの符号化されたビデオデータの送信は、ストリーミング送信、ダウンロード送信、又はそれらの組合せであり得る。
[0059]本開示の技法は、必ずしもワイヤレス適用例又は設定に限定されるとは限らない。本技法は、無線テレビジョン放送、ケーブルテレビジョン送信、衛星テレビジョン送信、dynamic adaptive streaming over HTTP(DASH)などのインターネットストリーミングビデオ送信、データ記憶媒体上に符号化されたデジタルビデオ、データ記憶媒体に記憶されたデジタルビデオの復号、又は他の用途のような、種々のマルチメディア用途のいずれかをサポートするビデオコード化に適用され得る。幾つかの例では、システム10は、ビデオストリーミング、ビデオ再生、ビデオブロードキャスティング、及び/又はビデオテレフォニーなどの用途をサポートするために、一方向又は双方向のビデオ送信をサポートするように構成され得る。
[0060]図1の例では、発信源機器12は、ビデオ発信源18と、ビデオエンコーダ20と、出力インターフェース22とを含む。宛先機器14は、入力インターフェース28と、ビデオデコーダ30と、表示装置32とを含む。本開示によれば、発信源機器12のビデオエンコーダ20は、ビデオデータを並列に処理するための技法を適用するように構成され得る。他の例では、発信源機器及び宛先機器は、他の構成要素又は構成を含み得る。例えば、発信源機器12は、外部カメラなどの外部ビデオ発信源18からビデオデータを受信し得る。同様に、宛先機器14は、一体型表示装置を含むのではなく、外部表示装置とインターフェースをとり得る。
[0061]図1の図示のシステム10は一例にすぎない。ビデオデータを並列に処理するための技法は、任意のデジタルビデオ符号化及び/又は復号機器によって実行され得る。概して、本開示の技法はビデオ符号化機器によって実行されるが、本技法は、一般に「コーデック」と呼ばれるビデオエンコーダ/デコーダによっても実行され得る。その上、本開示の技法は、ビデオプリプロセッサによっても実行され得る。発信源機器12及び宛先機器14は、発信源機器12が、宛先機器14に送信するためのコード化されたビデオデータを生成するような、コード化機器の例にすぎない。幾つかの例では、機器12、14の各々がビデオ符号化コンポーネントとビデオ復号コンポーネントとを含むように、機器12、14は、実質的に対称的な方式で動作することができる。従って、システム10は、例えば、ビデオストリーミング、ビデオ再生、ビデオブロードキャスト、又はビデオテレフォニーのためのビデオ機器12とビデオ機器14の間の一方向又は双方向のビデオ送信をサポートし得る。
[0062]発信源機器12のビデオ発信源18は、ビデオカメラなどの撮像装置、以前に撮影されたビデオを含んでいるビデオアーカイブ、及び/又はビデオコンテンツプロバイダからビデオを受信するためのビデオフィードインターフェースを含み得る。更なる代替として、ビデオ発信源18は、発信源ビデオとしてのコンピュータグラフィックスベースのデータ、又はライブビデオとアーカイブされたビデオとコンピュータにより生成されたビデオとの組合せを生成し得る。場合によっては、ビデオ発信源18がビデオカメラである場合、発信源機器12及び宛先機器14は、所謂カメラフォン又はビデオフォンを形成し得る。しかしながら、上で言及されたように、本開示で説明される技法は、一般にビデオコード化に適用可能であり、ワイヤレス及び/又は有線の用途に適用され得る。各々の場合において、撮影されたビデオ、以前に撮影されたビデオ、又はコンピュータにより生成されたビデオは、ビデオエンコーダ20によって符号化され得る。次いで、符号化されたビデオ情報は、出力インターフェース22によってコンピュータ可読媒体16に出力され得る。
[0063]コンピュータ可読媒体16は、ワイヤレスブロードキャスト又はワイヤードネットワーク送信などの一時媒体、若しくは、ハードディスク、フラッシュドライブ、コンパクトディスク、デジタルビデオディスク、Blu−ray(登録商標)ディスク、又は他のコンピュータ可読媒体などの記憶媒体(即ち、非一時的記憶媒体)を含み得る。幾つかの例では、ネットワークサーバ(図示せず)は、例えば、ネットワーク送信を介して、発信源機器12から符号化されたビデオデータを受信し、宛先機器14に符号化されたビデオデータを与え得る。同様に、ディスクスタンピング設備など、媒体製造設備のコンピュータ機器は、発信源機器12から符号化されたビデオデータを受信し、その符号化されたビデオデータを含んでいるディスクを生成し得る。従って、コンピュータ可読媒体16は、様々な例において、様々な形態の1つ又は複数のコンピュータ可読媒体を含むことが理解されよう。
[0064]宛先機器14の入力インターフェース28は、コンピュータ可読媒体16から情報を受信する。コンピュータ可読媒体16の情報は、ビデオエンコーダ20によって定義され、またビデオデコーダ30によって使用される、ブロック及び他のコード化されたユニット、例えば、GOPの特性及び/又は処理を記述するシンタックス要素を含む、シンタックス情報を含み得る。表示装置32は、復号されたビデオデータをユーザに対して表示し、陰極線管(CRT)、液晶表示器(LCD)、プラズマ表示器、有機発光ダイオード(OLED)表示器、又は別のタイプの表示装置のような、様々な表示装置のいずれかを備え得る。
[0065]ビデオエンコーダ20及びビデオデコーダ30は、現在開発中の高効率ビデオコード化(HEVC)規格などのビデオコード化規格に従って動作し得、HEVCテストモデル(HM)に準拠し得る。代替として、ビデオエンコーダ20及びビデオデコーダ30は、代替的にMPEG−4、Part 10、先進的ビデオコード化(AVC)と呼ばれるITU−T H.264規格などの、他のプロプライエタリ規格又は業界規格、若しくはそのような規格の拡張に従って動作することができる。但し、本開示の技法は、いかなる特定のコード化規格にも限定されない。ビデオコード化規格の他の例には、MPEG−2及びITU−T H.263がある。図1には示されていないが、幾つかの態様では、ビデオエンコーダ20及びビデオデコーダ30は、それぞれオーディオエンコーダ及びオーディオデコーダと統合されてよく、共通のデータストリーム又は別個のデータストリーム中のオーディオとビデオの両方の符号化を処理するために、適切なMUX−DEMUXユニット、又は他のハードウェア及びソフトウェアを含んでもよい。適用可能な場合、MUX−DEMUXユニットはITU H.223マルチプレクサプロトコル、又はユーザデータグラムプロトコル(UDP)などの他のプロトコルに準拠することができる。
[0066]ITU−T H.264/MPEG−4(AVC)規格は、Joint Video Team(JVT)として知られる共同パートナーシップの成果としてISO/IEC Moving Picture Experts Group(MPEG)とともにITU−T Video Coding Experts Group(VCEG)によって策定された。幾つかの態様では、本開示で説明する技法は、H.264規格に概して準拠する機器に適用され得る。H.264規格は、ITU−T研究グループによる2005年3月付けのITU−T勧告H.264「Advanced Video Coding for generic audiovisual services」に記載されており、本明細書ではH.264規格又はH.264仕様、あるいはH.264/AVC規格又は仕様と呼ぶ。Joint Video Team(JVT)はH.264/MPEG−4 AVCへの拡張に取り組み続けている。
[0067]ビデオエンコーダ20及びビデオデコーダ30はそれぞれ、1つ又は複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理、ソフトウェア、ハードウェア、ファームウェア、又はそれらの任意の組合せなどの様々な適切なエンコーダ回路のいずれかとして実装され得る。本技法が部分的にソフトウェアで実装されるとき、機器は、好適な非一時的コンピュータ可読媒体にソフトウェアの命令を記憶し、本開示の技法を実行するために1つ又は複数のプロセッサを使用してハードウェアでその命令を実行し得る。ビデオエンコーダ20及びビデオデコーダ30の各々は1つ又は複数のエンコーダ又はデコーダ中に含まれてよく、そのいずれも、それぞれの機器において複合エンコーダ/デコーダ(コーデック)の一部として統合されてよい。
[0068]JCT−VCは、HEVC規格を開発し、HEVC規格のスケーラブル拡張及びマルチビュー拡張について作業中である。HEVC規格化の取り組みは、HEVCテストモデル(HM)と呼ばれるビデオコード化機器の発展的モデルに基づく。HMは、例えば、ITU−T H.264/AVCに従う既存の機器に対してビデオコード化機器の幾つかの追加の能力を仮定する。例えば、H.264は9つのイントラ予測符号化モードを提供するが、HMは33個ものイントラ予測符号化モードを提供し得る。
[0069]概して、HMの作業モデルは、ビデオフレーム又はピクチャが、ルーマサンプルとクロマサンプルの両方を含む一連のツリーブロック又は最大コード化単位(LCU)に分割され得ることを記述する。ビットストリーム内のシンタックスデータが、画素の数に関して最大コード化単位であるLCUのサイズを定義し得る。スライスは、コード化順序で幾つかの連続するツリーブロックを含む。ビデオフレーム又はピクチャは、1つ又は複数のスライスに区分され得る。各ツリーブロックは、4分木に従ってコード化単位(CU)に分割され得る。概して、4分木データ構造はCUごとに1つのノードを含み、ルートノードはツリーブロックに対応する。CUが4つのサブCUに分割された場合、CUに対応するノードは4つのリーフノードを含み、リーフノードの各々はサブCUのうちの1つに対応する。
[0070]4分木データ構造の各ノードは、対応するCUのシンタックスデータを与え得る。例えば、4分木のノードは、そのノードに対応するCUがサブCUに分割されるかどうかを示す分割フラグを含み得る。CUのシンタックス要素は、再帰的に定義されてよく、CUがサブCUに分割されるかどうかに依存し得る。CUがこれ以上分割されない場合、そのCUはリーフCUと呼ばれる。本開示では、元のリーフCUの明示的分割が存在しない場合でも、リーフCUの4つのサブCUをリーフCUとも呼ぶ。例えば、16×16サイズのCUが更に分割されない場合、この16×16CUが決して分割されなくても、4つの8×8サブCUをリーフCUとも呼ぶ。
[0071]CUは、CUがサイズ差異を有しないことを除いて、H.264規格のマクロブロックと同様の目的を有する。例えば、ツリーブロックは、4つの子ノード(サブCUとも呼ばれる)に分割され得、各子ノードは、今度は親ノードとなり、別の4つの子ノードに分割され得る。4分木のリーフノードと呼ばれる、最後の分割されていない子ノードは、リーフCUとも呼ばれるコード化ノードを備える。コード化ビットストリームに関連するシンタックスデータは、最大CU深度と呼ばれる、ツリーブロックが分割され得る最大回数を定義し得、また、コード化ノードの最小サイズを定義し得る。それに応じて、ビットストリームは最小コード化単位(SCU:smallest coding unit)をも定義し得る。本開示は、HEVCのコンテキストにおけるCU、PU、もしくはTU、又は他の規格のコンテキストにおける同様のデータ構造(例えば、H.264/AVCにおけるマクロブロック及びそのサブブロック)のいずれかを指すために「ブロック」という用語を使用する。
[0072]CUは、コード化ノードと、コード化ノードに関連する予測単位(PU)及び変換単位(TU)とを含む。CUのサイズは、コード化ノードのサイズに対応し、形状が正方形でなければならない。CUのサイズは、8×8画素から最大64×64以上の画素をもつツリーブロックのサイズまでに及び得る。各CUは、1つ又は複数のPUと、1つ又は複数のTUとを含み得る。CUに関連するシンタックスデータは、例えば、CUを1つ又は複数のPUに区分することを記述し得る。区分化モードは、CUが、スキップモード符号化又はダイレクトモード符号化されるか、イントラ予測モード符号化されるか、若しくはインター予測モード符号化されるかによって異なり得る。PUは、形状が非正方形になるように区分され得る。CUに関連するシンタックスデータは、例えば、4分木に従って、CUを1つ又は複数のTUに区分することも記述し得る。TUは、形状が方形又は非方形(例えば、矩形)であり得る。
[0073]HEVC規格は、CUごとに異なり得るTUに従った変換を可能にする。TUは、一般に、区分されたLCUについて定義された所与のCU内のPUのサイズに基づいてサイズ決定されるが、常にそうであるとは限らない。TUは、通常、PUと同じサイズであるか、又はPUよりも小さい。幾つかの例では、CUに対応する残差サンプルは、「残差4分木」(RQT:residual quad tree)として知られる4分木構造を使用して、より小さい単位に再分割され得る。RQTのリーフノードは変換単位(TU)と呼ばれることがある。TUに関連する画素差分値は、変換されて変換係数が生成され得、その変換係数は量子化され得る。
[0074]リーフCUは、1つ又は複数の予測単位(PU)を含み得る。概して、PUは、対応するCUの全部又は一部分に対応する空間エリアを表し、そのPUの参照サンプルを取り出すためのデータを含み得る。その上、PUは、予測に関係するデータを含む。例えば、PUがイントラモード符号化されるとき、PUについてのデータは、PUに対応するTUについてのイントラ予測モードを記述するデータを含み得る残差4分木(RQT)中に含まれ得る。別の例として、PUがインターモード符号化されるとき、PUは、PUのための1つ又は複数の動きベクトルを定義するデータを含み得る。PUのための動きベクトルを定義するデータは、例えば、動きベクトルの水平成分、動きベクトルの垂直成分、動きベクトルについての分解能(例えば、1/4画素精度又は1/8画素精度)、動きベクトルが指す参照ピクチャ、及び/又は動きベクトル用の参照ピクチャリスト(例えば、リスト0、リスト1、もしくはリストC)を記述することができる。
[0075]1つ又は複数のPUを有するリーフCUはまた、1つ又は複数の変換単位(TU)を含み得る。変換単位は、上記で説明したように、(TU4分木構造とも呼ばれる)RQTを使用して指定され得る。例えば、分割フラグは、リーフCUが4つの変換単位に分割されるかどうかを示し得る。次いで、各変換単位は更に、更なるサブTUに分割され得る。TUが更に分割されないとき、そのTUはリーフTUと呼ばれることがある。一般に、イントラコード化の場合、リーフCUに属する全てのリーフTUは同じイントラ予測モードを共有する。即ち、概して、リーフCUの全てのTUの予測値を計算するために同じイントラ予測モードが適用される。イントラコード化の場合、ビデオエンコーダは、イントラ予測モードを使用して各リーフTUの残差値を、TUに対応するCUの一部と元のブロックとの間の差分として計算し得る。TUは、必ずしもPUのサイズに制限されるとは限らない。従って、TUはPUよりも大きく又は小さくなり得る。イントラコード化の場合、PUは、同じCUの対応するリーフTUと配列され得る。幾つかの例では、リーフTUの最大サイズは、対応するリーフCUのサイズに該当する場合がある。
[0076]その上、リーフCUのTUはまた、残差4分木(RQT)と呼ばれる、それぞれの4分木データ構造に関連付けられ得る。即ち、リーフCUは、リーフCUがどのようにTUに区分されるかを示す4分木を含み得る。TU4分木のルートノードは一般にリーフCUに対応し、CU4分木のルートノードは一般にツリーブロック(又はLCU)に対応する。分割されないRQTのTUはリーフTUと呼ばれる。概して、本開示では、特に明記しない限り、リーフCU及びリーフTUに言及するためにそれぞれCU及びTUという用語を使用する。
[0077]ビデオシーケンスは、通常、一連のビデオフレーム又はピクチャを含む。ピクチャグループ(GOP)は、一般に、ビデオピクチャのうちの一連の1つ又は複数を備える。GOPは、GOP中に含まれる幾つかのピクチャを記述するシンタックスデータを、GOPのヘッダ中、ピクチャのうちの1つ又は複数のヘッダ中、又は他の場所に含み得る。ピクチャの各スライスは、それぞれのスライスのための符号化モードを記述するスライスシンタックスデータを含み得る。ビデオエンコーダ20は、通常、ビデオデータを符号化するために、個々のビデオスライス内のビデオブロックに対して動作する。ビデオブロックはCU内のコード化ノードに対応し得る。ビデオブロックは、固定サイズ又は可変サイズを有し得、指定のコード化規格に応じてサイズが異なり得る。
[0078]一例として、HMは、様々なPUサイズでの予測をサポートする。特定のCUのサイズが2N×2Nであると仮定すると、HMは、2N×2N又はN×NのPUサイズでのイントラ予測をサポートし、2N×2N、2N×N、N×2N、又はN×Nの対称的なPUサイズでのインター予測をサポートする。HMはまた、2N×nU、2N×nD、nL×2N、及びnR×2NのPUサイズでのインター予測のための非対称区分をサポートする。非対称区分では、CUの一方向は区分されないが、他の方向は25%と75%とに区分される。25%の区分に対応するCUの部分は、「n」とその後ろに付く「Up」、「Down」、「Left」、又は「Right」という表示とによって示される。従って、例えば、「2N×nU」は、上部の2N×0.5NのPU及び下部の2N×1.5NのPUで水平方向に区分された2N×2NのCUを指す。
[0079]本開示では、例えば16×16画素又は16かける16画素など、「N×N」及び「NかけるN(N by N)」は、垂直及び水平の寸法に関して、ビデオブロックの画素範囲を示すために区別なく使用され得る。一般的に、16×16ブロックは、垂直方向に16個の画素を有し(y=16)、水平方向に16個の画素を有する(x=16)。同様に、N×Nブロックは、一般に、垂直方向にN画素を有し、水平方向にN画素を有し、Nは非負整数値を表す。ブロック内の画素は行と列に構成され得る。その上、ブロックは、必ずしも、水平方向において垂直方向と同じ数の画素を有する必要はない。例えば、ブロックはN×M画素を備えてよく、この場合に、Mは必ずしもNに等しいとは限らない。
[0080]CUのPUを使用したイントラ予測コード化又はインター予測コード化の後に、ビデオエンコーダ20は、CUのTUのための残差データを計算し得る。PUは、(画素領域とも呼ばれる)空間領域において予測画素データを生成する方法又はモードを記述するシンタックスデータを備え得、TUは、変換、例えば、残差ビデオデータへの離散コサイン変換(DCT)、整数変換、ウェーブレット変換、又は概念的に同様の変換の適用後に、変換領域において係数を備え得る。残差データは、符号化されていないピクチャの画素と、PUに対応する予測値との間の画素差分に対応し得る。ビデオエンコーダ20は、CUのための残差データを含むTUを形成し、次いで、CU用の変換係数を生成するために、TUを変換することができる。
[0081]変換係数を生成するための任意の変換の後に、ビデオエンコーダ20は、変換係数の量子化を実施し得る。量子化は、概して、係数を表すために使用されるデータの量をできるだけ低減するために変換係数が量子化され、更なる圧縮を行うプロセスを指す。量子化プロセスは、係数の一部又は全部に関連するビット深度を低減し得る。例えば、量子化中にnビット値がmビット値に切り捨てられてよく、但し、nはmよりも大きい。
[0082]量子化の後、ビデオエンコーダは、変換係数を走査して、量子化変換係数を含む2次元行列から1次元ベクトルを生成し得る。走査は、より高いエネルギー(従ってより低い周波数)の係数をアレイの前方に配置し、より低いエネルギー(従ってより高い周波数)の係数をアレイの後方に配置するように設計され得る。幾つかの例では、ビデオエンコーダ20は、予め定義された走査順序を利用して、量子化された変換係数を走査し、エントロピー符号化され得る直列化されたベクトルを生成し得る。他の例では、ビデオエンコーダ20は適応走査を実施し得る。量子化された変換係数を走査して1次元ベクトルを形成した後に、ビデオエンコーダ20は、例えば、コンテキスト適応可変長コード化(CAVLC)、コンテキスト適応バイナリ算術コード化(CABAC)、シンタックスベースコンテキスト適応バイナリ算術コード化(SBAC)、確率間隔区分エントロピー(PIPE)コード化、又は別のエントロピー符号化方法に従って、1次元ベクトルをエントロピー符号化し得る。ビデオエンコーダ20はまた、ビデオデータを復号する際にビデオデコーダ30が使用するための符号化ビデオデータに関連するシンタックス要素をエントロピー符号化し得る。
[0083]CABACを実行するために、ビデオエンコーダ20は、送信されるべきシンボルに、コンテキストモデル内のコンテキストを割り当て得る。コンテキストは、例えば、シンボルの隣接値が0ではないかどうかに関係し得る。CAVLCを実行するために、ビデオエンコーダ20は、送信されるべきシンボルの可変長コードを選択し得る。VLCにおけるコードワードは、比較的短いコードが優勢シンボルに対応し、より長いコードが劣勢シンボルに対応するように構成され得る。このようにして、VLCの使用は、例えば、送信されるべき各シンボルのために等長コードワードを使用するよりも、ビット節約を達成し得る。確率決定は、シンボルに割り当てられたコンテキストに基づくことができる。
[0084]本開示の技法によれば、ビデオエンコーダ20及び/又はビデオデコーダ30は、上述のカテゴリーのいずれか又は両方からの技法を実装するように構成され得る。即ち、ビデオエンコーダ20及び/又はビデオデコーダ30は、(レイヤ間予測を制限することに関連する)第1のカテゴリーから、及び(信号伝達に関連する)第2のカテゴリーからの技法を実行するように構成され得る。
[0085]第1のカテゴリーからの技法の幾つかの例が、次に説明される。これらの技法は、単独で、又は互いの組合せ及び/又は第2のカテゴリーからの技法との任意の組合せで、使用され得る。
[0086]第1のカテゴリーの技法の第1の例では、参照レイヤ及び拡張レイヤのタイル境界が、整列され得る。一般性を喪失することなく、(以下で説明される)図9は、4つのタイルが、参照レイヤ及び拡張レイヤに対して使用されることを示す。この場合、ビデオエンコーダ20及び/又はビデオデコーダ30は、4つのプロセッサコアを用いてコード化を実行し得、プロセッサコアの各々は、タイルのうちのそれぞれの1つに専用される。4つのタイルの並列処理を保証するために、レイヤ間フィルタリングのアップサンプリングは、参照レイヤ内のタイル境界を横切ることを許容されない。拡張タイルに対して、参照レイヤの同一位置配置されたサンプルは、参照レイヤサンプルがこの拡張タイルと整列されないタイルに属する場合は利用不可能であると見なされる。例えば、図9において、タイルE0に対するアップサンプリング又はレイヤ間フィルタリングを行うとき、タイルB1内のサンプルは、利用不可能であると見なされる。従って、アップサンプリング又はレイヤ間フィルタリングのために、参照レイヤのタイル境界に沿ったパディング(padding)が必要となることがある。パディングは、例えば、タイル境界に沿ったブロックのこれらの画素値又は拡張値(extending value)にデフォルト値を加算することによって、タイル境界の他の画素に対して値を入力することを指す。
[0087]言い換えれば、レイヤ間予測は、一般的に、より高い解像度の予測タイルを生成するためにアップサンプリングされた画素に対する値を生成するためにベースレイヤタイルの画素を利用する、ある程度のアップサンプリングを必要とすることがある。第1のカテゴリーのこの第1の例によれば、拡張レイヤのブロックがベースレイヤ内のタイル境界におけるブロックに対応するとき、及びアップサンプリングがタイル境界を横切る画素を利用するとき、ビデオエンコーダ20及び/又はビデオデコーダ30は、タイル境界を横切る画素を利用不可能として取り扱うのではなく、これらの画素に値をパッドする(pad)。
[0088]同様に、参照レイヤ及び拡張レイヤのタイル境界が整列されているとき、デブロッキングとサンプルアダプティブオフセット(SAO)とを含むループフィルタは、並列符号化/復号を可能にするために参照レイヤ内のタイル境界を横切ることを許容されず、これは、参照レイヤのloop_filter_across_tiles_enabled_flagをゼロになるように制限することによって遂行され得る。
[0089]同様に、この第1の例では、レイヤ間シンタックス予測は、参照レイヤ内のタイル境界を横切ることを許容されない。一例として、intraBLベースのSHVC解決策では、参照レイヤの同一位置配置マージ又はAMVP動き候補は、同一位置配置ブロックが整列されないタイル内に位置するときに利用不可能としてマークされ得る。更に別の例として、参照インデックス(高レベルシンタックスのみ)ベースのSHVC解決策では、(例えば、所定の数の画素、CU、PUなどの中の)タイル境界付近の領域の動き情報は、動きフィールドアップサンプリング/マッピングの間にリセット又はクリップされ得る。
[0090]第1のカテゴリー内の第2の例示的な技法として、エンコーダ制約が適用され、それによって、拡張タイル内のCU/PUは、同じアクセス単位内の参照ピクチャ内のタイルを横切るレイヤ間フィルタリング又は参照レイヤフィルタリングを有し得る同一位置配置CU/PUからレイヤ間テクスチャ予測又はレイヤ間シンタックス予測されない。これを示すために、以下の表1に示すように、ビデオユーザビリティ情報(VUI)フラグが使用され得、ここで、イタリック体のテキストは、HEVCのシンタックスへの追加を表す。
[0091]従って、表1は、追加のシンタックス要素inter_layerpred_not_along_tile_boundary_flagを含む。このシンタックス要素に対するセマンティクスは、次のように定義され得る:1に等しいinter_layerpred_not_along_tile_boundary_flagは、異なるレイヤのタイル境界が整列され、同一位置配置参照レイヤのCU又はPUがタイルを横切るレイヤ間フィルタリング又は参照レイヤフィルタリングを有し得るときにレイヤ間テクスチャ予測は、拡張レイヤのCU又はPUに対するタイル境界に沿って/を横切って許容されないことを示す。レイヤ間フィルタリングはまた、レイヤ間SAO、レイヤ間アップサンプリング、レイヤ間ループフィルタなどを含み得る。参照レイヤフィルタリングは、参照レイヤSAO、参照レイヤループフィルタなどを含み得る。タイル境界の整列は、同じ拡張レイヤタイル内にある任意の2つの拡張レイヤピクチャサンプルに対して、同一位置配置参照レイヤサンプルもまた、利用可能な場合、同じ参照レイヤタイル内にあり、同じ参照レイヤタイル内に存在する任意の2つの参照レイヤピクチャサンプルに対して、同一位置配置拡張レイヤサンプルもまた、利用可能な場合、同じ拡張レイヤタイル内にあることを意味する。0に等しいシンタックス要素inter_layerpred_not_along_tile_boundary_flagは、レイヤ間のタイル構成に対する制約は存在しないことを示す。inter_layerpred_not_along_tile_boundary_flagがビットストリーム内に存在しないとき、それは0に等しくなると推測され得る。
[0092]代替として、このシンタックス要素に対するセマンティクスは、次のように定義され得る:1に等しいinter_layerpred_not_along_tile_boundary_flagは、異なるレイヤのタイル境界が整列され、レイヤ間テクスチャ予測及びレイヤ間シンタックス予測は、任意の拡張レイヤタイルが任意の整列されないベースレイヤタイルを復号することなく復号され得ないように、タイル境界に沿って/を横切って許容されないことを示す。タイル境界の整列は、同じ拡張レイヤタイル内にある任意の2つの拡張レイヤピクチャサンプルに対して、同一位置配置参照レイヤサンプルもまた、利用可能な場合、同じ参照レイヤタイル内にあり、同じ参照レイヤタイル内にある任意の2つの参照レイヤピクチャサンプルに対して、同一位置配置拡張レイヤサンプルもまた、利用可能な場合、同じ拡張レイヤタイル内にあることを意味する。0に等しいシンタックス要素inter_layerpred_not_along_tile_boundary_flagは、レイヤ間のタイル構成に対する制約は存在しないことを示す。inter_layerpred_not_along_tile_boundary_flagがビットストリーム内に存在しないとき、それは0に等しくなると推測され得る。
[0093]代替として、フラグは、同様のセマンティクスを有するSEIメッセージを含むコード化されたビデオシーケンスに適用されるSEIメッセージ内で通知され得る。
[0094]言い換えれば、ビデオエンコーダ20又はビデオデコーダ30が、アクセス単位の拡張レイヤタイル内の拡張レイヤブロックをコード化(例えば、符号化又は復号)しているとき、及びアクセス単位の参照ピクチャ内のタイルを横切るレイヤ間フィルタリング又は参照レイヤフィルタリングが可能にされるとき、ビデオエンコーダ20又はビデオデコーダ30は、参照ピクチャの同一位置配置ベースレイヤブロックからのレイヤ間テクスチャ予測又はレイヤ間シンタックス予測を使用する拡張レイヤブロックのコード化を防止する(例えば、無効にする)ことができる。
[0095]第1のカテゴリー内の第3の例示的な技法として、拡張された空間スケーラビリティにおいて、参照レイヤ及び拡張レイヤは、参照レイヤに対する4:3及び拡張レイヤに対する16:9など、異なるピクチャアスペクト比を有し得る。即ち、ベースレイヤは、4:3アスペクト比のビデオを作成するために十分なビデオデータを含み得る一方で、拡張レイヤは、16:9アスペクト比のビデオを作成するために十分なビデオデータを含み得る。この場合、参照レイヤ内に対応部分をもたない、大きい拡張レイヤ領域が存在し得、それによってレイヤ間予測は、そのような領域(即ち、ベースレイヤの4:3アスペクト比の領域の外側にある拡張レイヤピクチャ内の領域)に対して行われ得ない。そのような(ベースレイヤの4:3アスペクト比の領域の外側にある拡張レイヤピクチャ内の)領域及びレイヤ間予測され得る領域が、異なるタイル内でコード化されるとき、より良いレイヤ間の並列処理が得られ得る。
[0096]ビットストリーム内で上記を示すために、表2に関して説明される以下のシンタックス及びセマンティクスを有する、の例の中でタイルレイヤ間予測情報SEIメッセージと名付けられた新しいSEIメッセージが、コード化され得る。
[0097]この例では、sei_pic_parameter_set_idは、タイルレイヤ間予測情報SEIメッセージと関連付けられたピクチャによって参照されるPPSに対するpps_pic_parameter_setの値を規定する。sei_pic_parameter_set_idの値は、両端値を含む0〜63の範囲内になる。
[0098]代替として、sei_pic_parameter_set_idは、ue(v)としてコード化されるのではなく、例えばu(6)として固定長さにコード化されることがある。
[0099]この例では、1に等しいnon_interlayer_pred_flag[i][j]は、テクスチャ又はシンタックスのレイヤ間予測が、i番目のタイル列及びj番目のタイル行の中のタイルに対して使用されないことを示し、0に等しいnon_interlayer_pred_flag[i][j]は、テクスチャ又はシンタックスのレイヤ間予測が、i番目のタイル列及びj番目のタイル行の中のタイルに対して使用され得ることを示す。
[0100]第1のカテゴリー内の第4の例示的な技法として、仁川、韓国における第13回JCTVC会議において、タイル境界整合フラグが、HEVC拡張に対するJCTVC−M0464のように採用された。より具体的には、以下の技法は、拡張された空間スケーラビリティ及びアスペクト比スケーラビリティユースケースシナリオに対するタイル境界整合に関する。
[0101]この例では、タイル境界整合フラグのセマンティクスは次のように修正され、ここで、「除去された」で先行される括弧付きのテキストは、以前の定義からの削除を示す:1に等しいtile_boundaries_aligned_flagは、[削除:「対応するベースレイヤピクチャの全てのタイル境界は所与の拡張レイヤ内に対応するタイル境界を有し、拡張レイヤ内に追加のタイル境界は存在しない。それは、(以下を)意味する」]同じ拡張レイヤタイル内にある任意の2つの拡張レイヤピクチャサンプルに対して、同一位置配置参照レイヤサンプルもまた、利用可能な場合、同じ参照レイヤタイル内にあり、同じ参照レイヤタイル内にある任意の2つの参照レイヤピクチャサンプルに対して、同一位置配置拡張レイヤサンプルもまた、利用可能な場合、同じ拡張レイヤタイル内にあることを示す。0に等しいtile_boundaries_aligned_flagは、対応する拡張レイヤと所与の参照レイヤとの間にタイル構成に対する制約は存在しないことを示す。
[0102]同じく、拡張された空間スケーラビリティの場合に対して、参照レイヤと比較して拡張レイヤ内に追加のタイル境界が存在し得、同じく、代替として、拡張レイヤと比較して参照レイヤ内に追加のタイル境界が存在し得ることが留意され得る。
[0103]第1のカテゴリー内の第5の例示的な技法として、代替として、タイル境界整合フラグは、拡張されたスケーラビリティ又はアスペクト比スケーラビリティユースケースに対して、標準的にゼロに制約され得る。この例では、以下の制約が、tile_boundaries_aligned_flagに追加される:extended_spatial_scalability_idcがゼロより大きいとき、tile_boundaries_aligned_flagは、ゼロに等しい。代替として、リサンプリングプロセスに対する幾何学的パラメータのうちの少なくとも1つが非ゼロの値を有するとき、tile_boundaries_aligned_flagは、ゼロに等しい。幾何学的パラメータは、scaled_ref_layer_left_offset、scaled_ref_layer_top_offset、scaled_ref_layer_right_offset、scaled_ref_layer_bottom_offsetを含む。
[0104]技法の第2のカテゴリーは、並列処理に対する信号伝達に関する。SHVCは、マルチループスケーラブル復号フレームワークを利用し、ここで、現在レイヤピクチャが(任意のタイプのレイヤ間予測を介して)依存する全ての参照レイヤピクチャは、現在レイヤピクチャを復号することを開始するために復号されなければならない。しかしながら、デコーダは、異なるレイヤを並列に処理し得る。参照レイヤピクチャの部分的領域の復号が完了するとすぐに、拡張レイヤに対するデコーダスレッドが復号を開始することができれば、有利であり得る。参照レイヤピクチャのこの部分的復号は、1つ又は複数のタイルに対応し得る。
[0105]より小さいタイルは並列処理を増加させ得るが、同時にコード化効率を低下させ、その逆も同様であることも留意され得る。従って、空間スケーラビリティの場合に対して、拡張レイヤピクチャ及び参照レイヤピクチャは、異なるタイル構造を使用することがある。この場合、例えば、全体的なコーデック遅延の更なる低減を可能にするために、拡張レイヤタイルを復号することを開始する前に復号される必要がある参照レイヤピクチャ内のタイルの最大数を定義する情報をデコーダが有することが望ましい。
[0106]第2のカテゴリーの第1の例示的な技法では、例えば、max_ref_tile_dec_idc_minus1[i]と名付けられた、拡張レイヤ内の各タイルと関連付けられた新しいシンタックス要素を使用するそのような値を、ビデオエンコーダ20が通知し、ビデオデコーダ30が受信することができる。このシンタックス要素に対するセマンティクスは、下記の通りであり得る:max_ref_tile_dec_idc_minus1[i]プラス1は、現在のタイルが復号され得る前に復号される必要のある現在レイヤピクチャの参照レイヤピクチャ内の対応するタイルの最大数を示す。
[0107]ビデオデコーダ30は、参照レイヤピクチャのタイル走査順序に基づいて、対応するタイルを連続的なタイルとして導出し得る。シンタックス要素は、ビデオパラメータセット(VPS)、シーケンスパラメータセット(SPS)、ピクチャパラメータセット(PPS)、スライスヘッダ、ビデオユーザビリティ情報(VUI)において通知され得、又は好ましくは、tile_enable_flagに基づいて調整され、0に等しいnuh_layer_idを有するレイヤピクチャに対して通知されない、補助強化情報(SEI)メッセージ又は他のシンタックス構造として通知され得る。
[0108]第2のカテゴリーの第2の例示的な技法(第2のカテゴリーの第1の例示的な技法を展開する)では、拡張レイヤ内の各タイルと関連付けられ、現在の拡張レイヤピクチャが依存する各参照レイヤピクチャに対する、例えばmax_ref_tile_dec_idc_minus1[i][j]と名付けられた、新しいシンタックス要素を使用する値を、ビデオエンコーダ20が通知し、ビデオデコーダ30が受信することができる。このシンタックス要素に対するセマンティクスは、次の通りであり得る:max_ref_tile_dec_idc_minus1[i][j]プラス1は、i番目の現在のタイルが復号され得る前に復号される必要のある現在レイヤピクチャのj番目の参照レイヤピクチャ内の対応するタイルの最大数を示す。
[0109]ビデオデコーダ30は、参照レイヤピクチャのタイル走査順序に基づいて、対応するタイルを連続的なタイルとして導出し得る。シンタックス要素は、VPS、SPS、PPS、スライスヘッダ、VUI又はSEIメッセージ、又は好ましくは、tile_enable_flagに基づいて調整され、0に等しいnuh_layer_idを有するレイヤピクチャに対して通知されない他のシンタックス構造において通知され得る。
[0110]第2のカテゴリーの第3の例示的な技法(第2のカテゴリー内の第1の例示的な技法を展開し得る)では、拡張レイヤタイルの対応するタイルはまた、ビットストリームの中、例えば、VPS、SPS、PPS、スライスヘッダ、VUI、又はSEIメッセージ、若しくは他のシンタックス構造の中の、対応するタイルのタイルIDを明示的に通知することによって示され得る。
[0111]第2のカテゴリーの第4の例示的な技法(第2のカテゴリー内の第1及び/又は第2の例示的な技法を展開し得る)では、参照レイヤにおけるタイル走査プロセスは、随意のタイル走査プロセスを可能にするために、拡張レイヤに対して通知され得る。
[0112]第2のカテゴリーの第5の例示的な技法は、タイル境界を横切るレイヤ間フィルタリングに関する。HEVCドラフトにおいて定義されるフラグloop_filter_across_tiles_enabled_flagと同様に、異なるレイヤからタイルを横切る改善された並列処理を可能にするために、例えば、interlayer_filter_across_tiles_enabled_flagと呼ばれるフラグを、以下のセマンティクスを用いて定義することが提案されている:1に等しいinterlayer_filter_across_tiles_enabled_flagは、レイヤ間フィルタリング動作が参照レイヤのタイル境界を横切って実行されることを規定する。0に等しいinterlayer_filter_across_tiles_enabled_flagは、レイヤ間フィルタリング動作がタイル境界を横切って実行されないことを規定する。レイヤ間フィルタリング動作は、レイヤ間SAO、レイヤ間ALF、及び/又はアップサンプリングを含み得る。フラグは、VPS、SPS、PPS、スライスヘッダ、又は他のシンタックス構造において通知され得る。
[0113]第2のカテゴリーの第6の例示的な技法は、タイル境界を横切るレイヤ間予測に関する。この第6の例示的な技法では、例えば、interlayer_pred_across_tiles_enabled_flagと呼ばれるフラグを、以下のセマンティクスを用いて定義することが提案されている:1に等しいinterlayer_filter_across_tiles_enabled_flagは、レイヤ間予測動作が参照レイヤのタイル境界を横切って実行されることを規定する。0に等しいinterlayer_pred_across_tiles_enabled_flagは、レイヤ間フィルタリング動作がタイル境界を横切って実行されないことを規定する。レイヤ間予測は、テクスチャ、動き、シンタックス、又は残差の予測を含み得る。フラグは、VPS、SPS、PPS、スライスヘッダ、又は他のシンタックス構造において通知され得る。
[0114]本開示はまた、タイルベースのアップサンプリングに関する技法を説明する。ビデオエンコーダ20及び/又はビデオデコーダ30は、本開示のタイルベースのアップサンプリングの技法を実行するように構成され得る。実際には、アップサンプリングが、タイル境界に沿って及び/又はそこを横切って許容されないことは好ましくない。即ち、本開示の技法によって、アップサンプリングが、タイル境界に沿って及び/又はそこを横切って可能であることが好ましい。
[0115]一例として、ビデオエンコーダ20及びビデオデコーダ30は、タイルベースのアップサンプリングが(例えば、対応する拡張レイヤに対して)可能にされるかどうかを示すシンタックス要素(例えば、1つ又は複数の拡張レイヤに対するSPS、PPS、又はVPS内のフラグ)をコード化し得る。例えば、以下の表3に示すシンタックスは、SPS内で通知され得、ここで、イタリック体のシンタックス要素は、SPSに対する従来のシンタックスに対する追加を表す:
[0116]このシンタックス要素に対するセマンティクスは、次のように定義され得る:0に等しいresampling_filter_across_tiles_enabled_flagは、ピクチャベースのアップサンプリングが可能にされることを規定する。1に等しいresampling_filter_across_tiles_enabled_flagは、タイルベースのアップサンプリングが可能にされることを規定する。
[0117]タイルベースのアップサンプリングが可能にされると、ビデオエンコーダ20及びビデオデコーダ30は、アップサンプリングプロセスにおけるピクチャ境界のものと同様の方法でタイル境界を取り扱うことができる。即ち、(現在ピクチャの内側又は外側にあり得る)現在タイルの外側の画素サンプルがアップサンプリングに必要であるとき、ビデオエンコーダ20及びビデオデコーダ30は、現在タイルの内側のそれらの画素からパッドする画素を有する画素に対する値を生成し得る。パディングプロセスは、現在ピクチャの外側の画素に対して、例えばHEVCによって定義されるプロセスと同じであり得る。
[0118]同様の原理が、レイヤ間フィルタリングにも適用され得る。レイヤ間フィルタリング動作は、レイヤ間ALF及び/又はSNRに対する平滑化フィルタなどを含み得る。以下の表4は、レイヤ間フィルタリング動作が可能にされるかどうかを示すシンタックスデータの一例を表し、ここで、イタリック体のテキストは、提案された規格の以前のバージョンへの追加を表す。
[0119]このシンタックス要素に対するセマンティクスは、次のように定義され得る:0に等しいinter_layer_filter_across_tiles_enabled_flagは、ピクチャベースのレイヤ間フィルタリングが可能にされることを規定する。1に等しいinter_layer_filter_across_tiles_enabled_flagは、タイルベースのレイヤ間フィルタリングが可能にされることを規定する。存在しない(例えば、SPSにおいて)とき、ビデオデコーダ30は、inter_layer_filter_across_tiles_enabled_flagの値が0に等しいと推測し得る。タイルベースのアップサンプリングプロセスと同様に、タイルベースのレイヤ間フィルタリングが可能にされるとき、ビデオエンコーダ20及びビデオデコーダ30は、レイヤ間フィルタリングプロセスにおけるピクチャ境界と同様の方法でタイル境界を取り扱うことができる。
[0120]本開示はまた、スライス境界及び/又はタイル境界周りのSAOフィルタ及びデブロッキングフィルタの前に再構成された画素を使用するアップサンプリングに対する技法を説明する。PPSにおいて、1に等しいloop_filter_across_tiles_enabled_flagは、ループ内フィルタリング動作が、PPSを参照するピクチャ内のタイル境界を横切って実行され得ることを規定し得る。0に等しいloop_filter_across_tiles_enabled_flagは、ループ内フィルタリング動作が、PPSを参照するピクチャ内のタイル境界を横切って実行されないことを規定し得る。ループ内フィルタリング動作は、デブロッキングフィルタ及びサンプルアダプティブオフセットフィルタ動作を含み得る。loop_filter_across_tiles_enabled_flagの値は、存在しない場合、1に等しいと推測され得る。
[0121]幾つかの例では、ビデオエンコーダ20及びビデオデコーダ30は、タイルベースのアップサンプリングが、参照レイヤループフィルタリングプロセスが実行される前(又はされた後)に再構成された画素を使用して実行されるかどうかを示すシンタックス要素(例えば、各拡張レイヤに対するSPS又はVPS内のフラグ)をコード化し得る。表5は、タイルベースのアップサンプリングが、参照レイヤループフィルタリングプロセスの前に再構成された画素を使用して実行されるかどうかを示す、SPS内で通知され得るシンタックスデータの一例を表し、ここで、イタリック体のテキストは、提案された規格の以前のバージョンに対する、本開示で提案される追加を表す。
[0122]このシンタックス要素に対するセマンティクスは、次のように定義され得る:0に等しいresampling_filter_before_loop_filter_across_tiles_enabled_flagは、タイルベースのアップサンプリングが参照レイヤループフィルタリングプロセスの前に再構成された画素を使用することを規定する。1に等しいresampling_filter_across_tiles_enabled_flagは、タイルベースのアップサンプリングが参照レイヤループフィルタリングの後に再構成された画素を使用することを規定する。存在しないとき、ビデオデコーダ30は、resampling_filter_across_tiles_enabled_flagの値は1に等しいと推測し得る。同様の原理が、レイヤ間フィルタリングに適用され得る。同じく、同様の原理が、タイル境界に加えて又はその代替として、スライス境界に適用され得る。「サブピクチャ単位」という用語は、フルピクチャより小さく、複数のCTUを含む、スライス、タイル、波面、CTUの行、又は他のそのような単位を指すことがある。従って、上記の技法は、サブピクチャ単位ベースのアップサンプリングが、参照レイヤループフィルタリングプロセスが実行される前に再構成された画素を使用して実行されるかどうかを示すデータをコード化するための技法として説明され得る。
[0123]本開示はまた、波面並列処理(WPP)ベースのアップサンプリングに関する技法を説明する。実際には、WPPを使用する低遅延のアプリケーションに対して、アップサンプリング(又はSNRの場合に対する平滑フィルタリング)が垂直のCTU境界に沿って/を横切って許容されないことは好ましくない。即ち、垂直のCTU境界に沿って/を横切ってアップサンプリング(又は平滑フィルタリング)を可能にすることが望ましい。一実装例として、ビデオエンコーダ20及びビデオデコーダ30は、レイヤ間フィルタリングを実行するときに、下及び右のCTUからのデータを使用することを回避するために、パディングを使用するように構成され得る。この実装形態は、参照レイヤCTUが、拡張レイヤCTUの前にコード化されることだけを必要とする。
[0124]本開示の技法によれば、ビデオエンコーダ20及びビデオデコーダ30は、WPPベースのレイヤ間フィルタリングが可能にされるかどうかを示すシンタックス要素(例えば、各拡張レイヤに対するSPS又はVPS内のフラグ)をコード化するように構成され得る。例えば、ビデオエンコーダ20及びビデオデコーダ30は、以下の表6によるSPS内のシンタックス要素をコード化し得、ここで、イタリック体のテキストは、本開示で提案する追加を表す。
[0125]このシンタックス要素に対するセマンティクスは、次のように定義され得る:0に等しいresampling_filter_across_wpps_enabled_flagは、ピクチャベースのアップサンプリングが可能にされることを規定する。1に等しいresampling_filter_across_wpps_enabled_flagは、CTU行ベースのアップサンプリングが可能にされることを規定する。存在しないとき、ビデオデコーダ30は、resampling_filter_across_wpps_enabled_flagの値が0に等しいと推測する。
[0126]CTU行ベースのアップサンプリングが可能にされると、ビデオエンコーダ20及びビデオデコーダ30は、アップサンプリングプロセスにおけるピクチャ境界のものと同様の方法でCTU行境界を取り扱うことができる。即ち、(現在ピクチャの内側又は外側にあり得る)現在のCTU行の外側の画素サンプルがアップサンプリングに必要であるとき、ビデオエンコーダ20及びビデオデコーダ30は、現在のCTU行の内側のそれらの画素からパッドする画素を有する画素に対する値を生成し得る。パディングプロセスは、現在ピクチャの外側の画素に対して、例えばHEVCによって定義されるプロセスと同じであり得る。
[0127]ビデオエンコーダ20は更に、ブロックベースのシンタックスデータ、フレームベースのシンタックスデータ、及びGOPベースのシンタックスデータなどのシンタックスデータを、例えば、フレームヘッダ、ブロックヘッダ、スライスヘッダ、又はGOPヘッダ中でビデオデコーダ30に送り得る。GOPシンタックスデータは、それぞれのGOP内のフレームの数を記述することができ、フレームシンタックスデータは、対応するフレームを符号化するために使用される符号化/予測モードを示すことができる。
[0128]ビデオエンコーダ20及びビデオデコーダ30はそれぞれ、適用可能なとき、1つ又は複数のマイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、ディスクリート論理回路、ソフトウェア、ハードウェア、ファームウェアなど、様々な好適なエンコーダ又はデコーダ回路のいずれか、若しくはそれらの任意の組合せとして実装され得る。ビデオエンコーダ20及びビデオデコーダ30の各々は1つ又は複数のエンコーダ又はデコーダ中に含まれ得、そのいずれも複合ビデオエンコーダ/デコーダ(コーデック)の一部として統合され得る。ビデオエンコーダ20及び/又はビデオデコーダ30を含む機器は、集積回路、マイクロプロセッサ、及び/又はセルラー電話などのワイヤレス通信機器を備え得る。
[0129]図2は、ビデオデータを並列に処理するための技法を実装し得るビデオエンコーダ20の一例を示すブロック図である。ビデオエンコーダ20は、ビデオスライス内のビデオブロックのイントラコード化とインターコード化とを実施することができる。イントラコード化は、空間的予測を利用して、所与のビデオフレーム又はピクチャ内のビデオの空間的冗長性を低減又は除去する。インターコード化は、時間的予測を利用して、ビデオシーケンスの隣接フレーム又はピクチャ内のビデオの時間的冗長性を低減又は除去する。イントラモード(Iモード)は、幾つかの空間ベースのコード化モードのいずれかを指す場合がある。単方向予測(Pモード)又は双方向予測(Bモード)などのインターモードは、幾つかの時間ベースのコード化モードのいずれかを指す場合がある。
[0130]図2に示されたように、ビデオエンコーダ20は、符号化されるべきビデオフレーム内の現在ビデオブロックを受信する。図2の例では、ビデオエンコーダ20は、モード選択ユニット40と、参照ピクチャメモリ64と、加算器50と、変換処理ユニット52と、量子化ユニット54と、エントロピー符号化ユニット56とを含む。モード選択ユニット40は、今度は、動き補償ユニット44と、動き推定ユニット42と、イントラ予測単位46と、区分化ユニット48とを含む。ビデオブロック再構成のために、ビデオエンコーダ20はまた、逆量子化ユニット58と、逆変換単位60と、加算器62とを含む。ブロック境界をフィルタ処理して復元されたビデオからブロック歪み(blockiness artifacts)を除去するために、デブロッキングフィルタ(図2に示されず)が含まれる場合もある。所望される場合、デブロッキングフィルタは、一般に、加算器62の出力をフィルタリングすることになる。追加のフィルタ(ループ内又はループ後)もデブロッキングフィルタに加えて使用され得る。そのようなフィルタは簡潔のために示されていないが、必要な場合、(ループ内フィルタとして)加算器50の出力をフィルタ処理することができる。
[0131]符号化プロセス中に、ビデオエンコーダ20は、コード化されるべきビデオフレーム又はスライスを受信する。フレーム又はスライスは、複数のビデオブロックに分割され得る。動き推定ユニット42及び動き補償ユニット44は、時間予測を行うために、1つ又は複数の参照フレーム中の1つ又は複数のブロックに対して、受信されたビデオブロックのインター予測コード化を実行する。イントラ予測単位46は、代替として、空間予測を実現するために、コード化されるべきブロックと同じフレーム又はスライス内の1つ又は複数の隣接ブロックに対して、受信されたビデオブロックのイントラ予測コード化を実行することができる。ビデオエンコーダ20は、例えば、ビデオデータのブロックごとに適切なコード化モードを選択するために、複数のコード化パスを実行することができる。
[0132]その上、区分化ユニット48は、以前のコード化パスにおける以前の区分方式の評価に基づいて、ビデオデータのブロックをサブブロックに区分することができる。例えば、区分化ユニット48は、最初にフレーム又はスライスをLCUに区分し、レート歪み分析(例えば、レート歪み最適化)に基づいてLCUの各々をサブCUに区分することができる。モード選択ユニット40は、LCUをサブCUに区分することを示す4分木データ構造を更に生成し得る。4分木のリーフノードCUは、1つ又は複数のPUと1つ又は複数のTUとを含む場合がある。
[0133]モード選択ユニット40は、例えば、誤差結果に基づいてコード化モード、即ち、イントラ又はインターのうちの1つを選択し、残差ブロックデータを生成するために、得られたイントラコード化ブロック又はインターコード化ブロックを加算器50に与え、参照フレームとして使用するための符号化ブロックを再構成するために、得られたイントラコード化ブロック又はインターコード化ブロックを加算器62に与え得る。モード選択ユニット40はまた、動きベクトル、イントラモードインジケータ、区分情報(partition information)、及び他のそのようなシンタックス情報などのシンタックス要素をエントロピー符号化ユニット56に与える。
[0134]動き推定ユニット42と動き補償ユニット44とは、高度に統合され得るが、概念的な目的のために別々に示してある。動き推定ユニット42によって実施される動き推定は、ビデオブロックの動きを推定する動きベクトルを生成するプロセスである。動きベクトルは、例えば、現在フレーム(又は他のコード化単位)内でコード化されている現在ブロックに対する参照フレーム(又は他のコード化単位)内の予測ブロックに対する現在ビデオフレーム又はピクチャ内のビデオブロックのPUの変位を示し得る。予測ブロックは、絶対値差分和(SAD:sum of absolute difference)、2乗差分和(SSD:sum of square difference)、又は他の差分メトリックによって決定され得る画素差分に関して、コード化されるべきブロックにぴったり一致することがわかるブロックである。幾つかの例では、ビデオエンコーダ20は、参照ピクチャメモリ64に記憶された参照ピクチャのサブ整数画素位置の値を計算し得る。例えば、ビデオエンコーダ20は、参照ピクチャの1/4画素位置、1/8画素位置、又は他の分数画素位置の値を補間し得る。従って、動き推定ユニット42は、フル画素位置と分数画素位置とに対する動き探索を実施し、分数画素精度で動きベクトルを出力し得る。
[0135]動き推定ユニット42は、PUの位置を参照ピクチャの予測ブロックの位置と比較することによって、インターコード化スライスにおけるビデオブロックのPUのための動きベクトルを計算する。参照ピクチャは、第1の参照ピクチャリスト(リスト0)又は第2の参照ピクチャリスト(リスト1)から選択されてよく、それらの参照ピクチャリストの各々は、参照ピクチャメモリ64に記憶された1つ又は複数の参照ピクチャを識別する。動き推定ユニット42は、計算された動きベクトルをエントロピー符号化ユニット56と動き補償ユニット44とに送る。
[0136]動き補償ユニット44によって実施される動き補償は、動き推定ユニット42によって決定された動きベクトルに基づいて予測ブロックを取り込む(fetching)又は生成することに関与し得る。この場合も、幾つかの例では、動き推定ユニット42と動き補償ユニット44とは機能的に統合され得る。現在ビデオブロックのPUについての動きベクトルを受信すると、動き補償ユニット44は、動きベクトルが参照ピクチャリストのうちの1つにおいて指す予測ブロックの位置を特定し得る。加算器50は、以下で説明されるように、コード化されている現在ビデオブロックの画素値から予測ブロックの画素値を減算し、画素差分値を形成することによって、残差ビデオブロックを形成する。一般に、動き推定ユニット42はルーマ成分に対して動き推定を実行し、動き補償ユニット44は、クロマ成分とルーマ成分の両方のためにルーマ成分に基づいて計算された動きベクトルを使用する。モード選択ユニット40はまた、ビデオスライスのビデオブロックを復号する際にビデオデコーダ30が使用するためのビデオブロックとビデオスライスとに関連するシンタックス要素を生成し得る。
[0137]イントラ予測単位46は、前述のように、動き推定ユニット42と動き補償ユニット44とによって実行されるインター予測の代替として、現在のブロックをイントラ予測し得る。特に、イントラ予測単位46は、現在のブロックを符号化するために使用するようにイントラ予測モードを決定することができる。幾つかの例では、イントラ予測単位46は、例えば、別個の符号化パスにおいて、様々なイントラ予測モードを使用して現在のブロックを符号化することができ、イントラ予測単位46(又は、幾つかの例では、モード選択ユニット40)は、テストされたモードから使用するのに適切なイントラ予測モードを選択することができる。
[0138]例えば、イントラ予測単位46は、様々なテストされたイントラ予測モードのためのレート歪み分析を使用してレート歪み値を計算し、テストされたモードの中で最良のレート歪み特性を有するイントラ予測モードを選択し得る。レート歪み分析は、概して、符号化されたブロックと、符号化されたブロックを生成するために符号化された元の符号化されていないブロックとの間の歪み(又は誤差)の量、及び符号化されたブロックを生成するために使用されるビットレート(即ち、ビット数)を決定する。イントラ予測単位46は、どのイントラ予測モードがブロックについて最良のレート歪み値を呈するかを決定するために、様々な符号化されたブロックの歪み及びレートから比率を計算し得る。
[0139]ブロックのためのイントラ予測モードを選択した後に、イントラ予測単位46は、ブロックのための選択されたイントラ予測モードを示す情報をエントロピー符号化ユニット56に与え得る。エントロピー符号化ユニット56は、選択されたイントラ予測モードを示す情報を符号化し得る。ビデオエンコーダ20は、送信ビットストリーム中に、複数のイントラ予測モードインデックステーブル及び複数の変更されたイントラ予測モードインデックステーブル(コードワードマッピングテーブルとも呼ばれる)と、様々なブロックの符号化コンテキストの定義と、コンテキストの各々について使用すべき、最確イントラ予測モード(most probable intra-prediction mode)、イントラ予測モードインデックステーブル、及び変更されたイントラ予測モードインデックステーブルの指示とを含み得る、構成データを含め得る。
[0140]ビデオエンコーダ20は、コード化されている元のビデオブロックから、モード選択ユニット40からの予測データを減算することによって、残差ビデオブロックを形成する。加算器50は、この減算演算を実行する1つ又は複数の構成要素を表す。変換処理ユニット52は、離散コサイン変換(DCT)又は概念的に同様の変換などの変換を残差ブロックに適用し、残差変換係数値を含むビデオブロックを生成する。変換処理ユニット52は、DCTと概念的に同様である他の変換を実行することができる。ウェーブレット変換、整数変換、サブバンド変換又は他のタイプの変換も使用され得る。いずれの場合も、変換処理ユニット52は、変換を残差ブロックに適用し、残差変換係数のブロックを生成する。変換は、残差情報を画素値領域から周波数領域などの変換領域に変換し得る。変換処理ユニット52は、得られた変換係数を量子化ユニット54に送ることができる。量子化ユニット54は、ビットレートを更に低減するために変換係数を量子化する。量子化プロセスは、係数の一部又は全部に関連するビット深度を低減し得る。量子化の程度は、量子化パラメータを調整することによって修正され得る。幾つかの例では、量子化ユニット54は、次いで、量子化変換係数を含む行列の走査を実行することができる。代替的に、エントロピー符号化ユニット56が走査を実行してよい。
[0141]量子化の後、エントロピー符号化ユニット56は、量子化された変換係数をエントロピーコード化する。例えば、エントロピー符号化ユニット56は、コンテキスト適応型可変長コード化(CAVLC)、コンテキスト適応型バイナリ算術コード化(CABAC)、シンタックスベースコンテキスト適応型バイナリ算術コード化(SBAC)、確率間隔区分エントロピー(PIPE)コード化又は別のエントロピーコード化技法を実行し得る。コンテキストベースエントロピーコード化の場合、コンテキストは隣接ブロックに基づき得る。エントロピー符号化ユニット56によるエントロピーコード化の後に、符号化されたビットストリームは、別の機器(例えば、ビデオデコーダ30)に送信されるか、又は後で送信するか又は取り出すためにアーカイブされ得る。
[0142]逆量子化ユニット58及び逆変換単位60は、それぞれ逆量子化及び逆変換を適用して、例えば、参照ブロックとして後で使用するために、画素領域中で残差ブロックを再構築する。動き補償ユニット44は、残差ブロックを参照ピクチャメモリ64のフレームのうちの1つの予測ブロックに加算することによって参照ブロックを計算し得る。参照ピクチャメモリ64は、復号ピクチャバッファ(DPB)を実装し得るか又は含み得る。動き補償ユニット44はまた、動き推定において使用するためのサブ整数画素値を計算するために、再構成された残差ブロックに1つ又は複数の補間フィルタを適用し得る。加算器62は、再構築された残差ブロックを、動き補償ユニット44によって生成された動き補償予測ブロックに加算して、参照ピクチャメモリ64に記憶するための再構築されたビデオブロックを生成する。再構築されたビデオブロックは、後続のビデオフレーム中のブロックをインターコード化するために動き推定ユニット42及び動き補償ユニット44によって参照ブロックとして使用され得る。
[0143]ビデオエンコーダ20は、本開示の技法のいずれかを、単独で又は任意の組合せで実行するように構成され得るビデオエンコーダの一例を表す。例えば、ビデオエンコーダ20は、参照レイヤピクチャが、タイル境界を横切るフィルタリングを可能にされているかどうかを決定するように構成され得、そうである場合、参照レイヤピクチャからの拡張レイヤピクチャに対するレイヤ間予測を無効にする。追加又は代替として、ビデオエンコーダ20は、参照レイヤピクチャを符号化し、実質的に並列により大きいアスペクト比を有する拡張レイヤピクチャを符号化するように構成され得、ここで、ビデオエンコーダ20は、レイヤ間予測を使用して拡張レイヤピクチャの重複部を符号化し、レイヤ間予測を使用せずに拡張レイヤピクチャの非重複部を符号化することができる。追加又は代替として、ビデオエンコーダ20は、拡張レイヤに対するタイル境界が参照レイヤピクチャのタイル境界と整列されているかどうかを示すシンタックス要素を符号化し、シンタックス要素に基づいて拡張レイヤピクチャを符号化することができる。即ち、ビデオエンコーダ20は、タイル境界が整列されていない場合にレイヤ間予測を無効にするが、タイル境界が整列されている場合にレイヤ間予測を可能にすることができる。追加又は代替として、ビデオエンコーダ20は、拡張レイヤタイルが符号化され得る前に符号化されるべき参照レイヤタイルの数を示す拡張レイヤタイルに対するシンタックス要素を符号化し、次いで、参照レイヤタイルのその数を符号化した後、拡張レイヤタイルを符号化することができる。これらの様々な符号化動作のいずれか又は全ては、拡張レイヤタイルを符号化するためにレイヤ間予測に使用される参照レイヤタイルが、拡張レイヤタイルが符号化される前に符号化されるという制約の下で、他の符号化動作と並列に実行され得る。
[0144]図3は、ビデオデータを並列に処理するための技法を実装し得るビデオデコーダ30の一例を示すブロック図である。図3の例では、ビデオデコーダ30は、エントロピー復号ユニット70と、動き補償ユニット72と、イントラ予測ユニット74と、逆量子化ユニット76と、逆変換単位78と、参照ピクチャメモリ82と、加算器80とを含む。参照ピクチャメモリ82は、復号ピクチャバッファ(DPB)を実装し得るか又は含み得る。ビデオデコーダ30は、幾つかの例では、ビデオエンコーダ20(図2)に関して説明された符号化パスとは概して逆の復号パスを実行し得る。動き補償ユニット72は、エントロピー復号ユニット70から受信された動きベクトルに基づいて予測データを生成し得、イントラ予測ユニット74は、エントロピー復号ユニット70から受信されたイントラ予測モードインジケータに基づいて予測データを生成し得る。
[0145]復号プロセス中に、ビデオデコーダ30は、ビデオエンコーダ20から、符号化されたビデオスライスのビデオブロックと、関連付けられるシンタックス要素とを表す符号化されたビデオビットストリームを受信する。ビデオデコーダ30のエントロピー復号ユニット70は、量子化係数、動きベクトル又はイントラ予測モードインジケータ、及び他のシンタックス要素を生成するためにビットストリームをエントロピー復号する。エントロピー復号ユニット70は、動きベクトルと他のシンタックス要素とを動き補償ユニット72に転送する。ビデオデコーダ30は、ビデオスライスレベル及び/又はビデオブロックレベルでシンタックス要素を受信し得る。
[0146]ビデオスライスがイントラコード化(I)スライスとしてコード化されるとき、イントラ予測ユニット74は、信号伝達されたイントラ予測モードと、現在フレーム又はピクチャの、前に復号されたブロックからのデータとに基づいて、現在ビデオスライスのビデオブロックのための予測データを生成し得る。ビデオフレームがインターコード化(即ち、B、P、又はGPB)スライスとしてコード化されるとき、動き補償ユニット72は、エントロピー復号ユニット70から受信された動きベクトルと他のシンタックス要素とに基づいて、現在ビデオスライスのビデオブロック用の予測ブロックを生成する。予測ブロックは、参照ピクチャリストの1つの中の参照ピクチャのうち1つから生成され得る。ビデオデコーダ30は、参照ピクチャメモリ82に記憶された参照ピクチャに基づいて、デフォルトの構成技法を使用して、参照フレームリスト、即ち、リスト0とリスト1とを構成し得る。動き補償ユニット72は、動きベクトルと他のシンタックス要素とを解析することによって現在のビデオスライスのビデオブロックについての予測情報を決定し、復号されている現在のビデオブロックのための予測ブロックを生成するために予測情報を使用する。例えば、動き補償ユニット72は、ビデオスライスのビデオブロックをコード化するために使用される予測モード(例えば、イントラ又はインター予測)と、インター予測スライスタイプ(例えば、Bスライス、Pスライス、又はGPBスライス)と、スライスの参照ピクチャリストのうちの1つ又は複数のための構成情報と、スライスの各インター符号化ビデオブロックのための動きベクトルと、スライスの各インターコード化ビデオブロックのためのインター予測ステータスと、現在ビデオスライス中のビデオブロックを復号するための他の情報とを決定するために、受信されたシンタックス要素の幾つかを使用する。
[0147]動き補償ユニット72はまた、補間フィルタに基づいて補間を実行し得る。動き補償ユニット72は、参照ブロックのサブ整数画素のための補間された値を計算するために、ビデオブロックの符号化中にビデオエンコーダ20によって使用された補間フィルタを使用し得る。この場合、動き補償ユニット72は、受信されたシンタックス要素からビデオエンコーダ20によって使用された補間フィルタを決定し、その補間フィルタを使用して予測ブロックを生成し得る。
[0148]逆量子化ユニット76は、ビットストリーム中で与えられ、エントロピー復号ユニット70によって復号された量子化変換係数を逆の量子化(inverse quantize)、即ち、逆量子化(de-quantize)する。逆量子化プロセスは、量子化の程度を決定し、同様に、適用されるべき逆量子化の程度を決定するための、ビデオスライス中のビデオブロックごとにビデオデコーダ30によって計算される量子化パラメータQPYの使用を含み得る。
[0149]逆変換単位78は、画素領域において残差ブロックを生成するために、逆変換、例えば逆DCT、逆整数変換、又は概念的に同様の逆変換プロセスを変換係数に適用する。
[0150]動き補償ユニット72が、動きベクトルと他のシンタックス要素とに基づいて現在ビデオブロックのための予測ブロックを生成した後、ビデオデコーダ30は、逆変換単位78からの残差ブロックを動き補償ユニット72によって生成された対応する予測ブロックと加算することによって、復号されたビデオブロックを形成する。加算器80は、この加算演算を実行する1つ又は複数の構成要素を表す。所望される場合、ブロック歪み除去するために復号されたブロックをフィルタ処理するデブロッキングフィルタも適用され得る。画素遷移を平滑化するために、又は場合によってはビデオ品質を改善するために、(コード化ループ内又はコード化ループ後のいずれかの)他のループフィルタも使用され得る。所与のフレーム又はピクチャ中の復号されたビデオブロックは、次いで、その後の動き補償のために使用される参照ピクチャを記憶する参照ピクチャメモリ82に記憶される。参照ピクチャメモリ82はまた、図1の表示装置32などの表示装置上での後の提示のために、復号されたビデオを記憶する。
[0151]ビデオデコーダ30は、本開示の技法のいずれか又は全てを、単独で、又は任意の組合せで実施するように構成され得る。例えば、ビデオデコーダ30は、参照レイヤピクチャが、タイル境界を横切るフィルタリングを可能にされているかどうかを決定するように構成され得、そうである場合、参照レイヤピクチャからの拡張レイヤピクチャに対するレイヤ間予測を無効にする。追加又は代替として、ビデオデコーダ30は、参照レイヤピクチャを復号し、実質的に並列に参照レイヤピクチャより大きいアスペクト比を有する拡張レイヤピクチャを復号するように構成され得、ここで、ビデオデコーダ30は、レイヤ間予測を使用して拡張レイヤピクチャの重複部を復号し、レイヤ間予測を使用せずに拡張レイヤピクチャの非重複部とを復号することができる。追加又は代替として、ビデオデコーダ30は、拡張レイヤに対するタイル境界が参照レイヤピクチャの境界と整列されているかどうかを示すシンタックス要素を復号し、シンタックス要素に基づいて拡張レイヤピクチャを復号することができる。即ち、ビデオデコーダ30は、タイル境界が整列されていない場合にレイヤ間予測を無効にするが、タイル境界が整列されている場合にレイヤ間予測を可能にすることができる。追加又は代替として、ビデオデコーダ30は、拡張レイヤタイルが復号され得る前に復号されるべき参照レイヤタイルの数を示す拡張レイヤタイルに対するシンタックス要素を復号し、次いで、参照レイヤタイルのその数を復号した後、拡張レイヤタイルを復号することができる。これらの様々な復号動作のいずれか又は全ては、拡張レイヤタイルを復号するためにレイヤ間予測に使用される参照レイヤタイルが、拡張レイヤタイルが復号される前に復号されるという制約の下で、他の復号動作と並列に実行され得る。
[0152]図4は、スケーラブルビデオコード化(SVC)のための様々なスケーラブルな次元を示す概念図である。図4は、SVCのスケーラビリティ構造の一例を示す。特に、異なる次元におけるスケーラビリティの一例が図4に示される。この例では、スケーラビリティが3つの次元において使用可能である。時間次元では、7.5Hz、15Hz又は30Hzをもつフレームレートが時間スケーラビリティ(T)によってサポートされ得る。空間スケーラビリティ(S)がサポートされるとき、QCIF、CIF及び4CIFなどの異なる解像度が使用可能である。特定の空間解像度及びフレームレートごとに、ピクチャ品質を改善するために信号対雑音(SNR)(Q)レイヤが追加され得る。
[0153]ビデオコンテンツがそのようなスケーラブルな方法で符号化されると、例えば、クライアント又は送信チャネルに依存し得るアプリケーション要件に従って、実際の配信されたコンテンツを適応させるために、抽出器ツールが使用され得る。図4に示された例では、各体積、即ち立方体は、同じフレームレート(時間レベル)、空間解像度及びSNRレイヤをもつピクチャを含んでいる。それらの立方体(ピクチャ)を任意の次元で追加することによって、より良い表現が達成され得る。使用可能な2つ、3つ又は更に多くのスケーラビリティがあるとき、複合スケーラビリティがサポートされ得る。
[0154]SVCの仕様によれば、最も低い空間レイヤ及び品質レイヤを有するピクチャは、H.264/AVCと互換性があり、最低の時間レベルにあるピクチャは、より高い時間レベルにあるピクチャで強調され得る時間ベースレイヤを形成する。H.264/AVC互換レイヤに加えて、空間スケーラビリティ及び/又は品質スケーラビリティを実現するために、幾つかの空間拡張レイヤ及び/又はSNR拡張レイヤが追加され得る。SNRスケーラビリティは品質スケーラビリティと呼ばれることもある。各空間又はSNR拡張レイヤ自体は、H.264/AVC適合レイヤと同じ時間スケーラビリティ構造で、時間的にスケーラブルになり得る。1つの空間又はSNR拡張レイヤについて、それが依存するより低いレイヤは、その特定の空間又はSNR拡張レイヤのベースレイヤと呼ばれることもある。
[0155]図5は、SVCコード化構造の一例を示す概念図である。この例では、最低空間及び品質レイヤをもつピクチャ(QCIF解像度をもつ、レイヤ0及びレイヤ1中のピクチャ)は、H.264/AVCに適合する。それらの中で、最低時間レベルのピクチャは、図5のレイヤ0に示されているように、時間ベースレイヤを形成する。この時間ベースレイヤ(レイヤ0)は、より高い時間レベル(レイヤ1)のピクチャを用いて拡張され得る。H.264/AVC互換レイヤに加えて、空間スケーラビリティ及び/又は品質スケーラビリティを実現するために、幾つかの空間拡張レイヤ及び/又はSNR拡張レイヤが追加され得る。例えば、拡張レイヤは、レイヤ2と同じ解像度をもつCIF表現であり得る。この例では、レイヤ3はSNR拡張レイヤである。この例に示されているように、各空間又はSNR拡張レイヤ自体は、H.264/AVC適合レイヤと同じ時間スケーラビリティ構造で、時間的にスケーラブルになり得る。また、拡張レイヤは空間解像度とフレームレートの両方を向上させことができる。例えば、レイヤ4は、フレームレートを15Hzから30Hzに更に増加させる4CIF拡張レイヤを与える。
[0156]図6は、例示的なアクセス単位(AU)を示す概念図である。各AUは、ネットワークアブストラクションレイヤ(NAL)単位内にカプセル化された、1つ又は複数のスライスを含む。レイヤごとのアクセス単位当たりにゼロ又はそれ以上のNAL単位が存在し得る。1つのアクセス単位内の1つのレイヤに対応するNAL単位のセットは、「レイヤ成分」と呼ばれることがある。図6の例は、図5のレイヤ成分に対応するレイヤ成分を描いている。図6の例に示されているように、同じ時間インスタンス中(即ち、共通のAUの中)のコード化スライスは、ビットストリーム順序で連続しており、SVCのコンテキストにおける1つのアクセス単位を形成する。それらのSVCアクセス単位は、次いで、表示順序とは異なり得る、例えば、時間予測関係によって決定され得る、復号順序に従う。
[0157]H.264/AVC(先進的ビデオコード化)のスケーラブルな拡張が、以下で説明される。SVCの幾つかの機能はH.264/AVCから引き継がれている。以前のスケーラブルな規格と比較すると、H.264/AVCに対するSVC拡張の最大の利点の幾つか、即ちレイヤ間予測及びシングルループ復号が、以下で考察される。
[0158]H.264/AVCのSVC拡張は、シングルループ復号をサポートする。低複雑度デコーダを保持するために、SVCではシングルループ復号が必須である。シングルループ復号で、各々のサポートされるレイヤは、単一の動き補償ループで復号され得る。これを達成するために、レイヤ間イントラ予測の使用は、同一位置配置参照レイヤ信号がそのためにイントラコード化される拡張レイヤマクロブロックのためにのみ可能にされる。より高いレイヤをレイヤ間予測するために使用される全てのレイヤが、制約付きイントラ予測を使用してコード化されることが更に必要である。
[0159]H.264/AVCのSVC拡張もまた、レイヤ間予測をサポートする。SVCは、テクスチャ、残差及び動きに基づいて、空間スケーラビリティ及びSNRスケーラビリティのためのレイヤ間予測を導入する。SVCにおける空間スケーラビリティは、2つのレイヤ間の任意の解像度比に一般化されている。SNRスケーラビリティは、粗粒度スケーラビリティ(CGS)又は中粒度スケーラビリティ(MGS)によって実現され得る。SVCでは、2つの空間レイヤ又はCGSレイヤは、(NAL単位ヘッダ内でdependency_idによって示される)異なる依存性レイヤに属するが、2つのMGSレイヤは同じ依存性レイヤ内にあり得る。1つの依存性レイヤは、品質拡張レイヤに対応する、0からより高い値までのquality_idを有する品質レイヤを含む。SVCでは、レイヤ間の冗長性を低減するために、レイヤ間予測方法が利用される。それらは以下の段落で簡単に紹介される。
[0160]レイヤ間イントラ予測を使用するコード化モードは、SVCでは「イントラBL」モードと呼ばれる。シングルループ復号を使用可能にするために、制約付きイントラモードとしてコード化されるベースレイヤ中の同一位置配置(co-located)マクロブロック(MB)を有するMBのみが、レイヤ間イントラ予測モードを使用することができる。制約付きイントラモードのMBは、隣接するインターコード化されたMBからのいかなるサンプルも参照せずにイントラコード化される。
[0161]MBが残差予測を使用するように指示された場合、レイヤ間予測用のベースレイヤ内で同じ位置にあるMBは、インターMBであるに違いなく、その残差は空間解像度比に従ってアップサンプリングされる場合がある。拡張レイヤの残差とベースレイヤの残差との間の差分がコード化される。即ち、
[0162]同じ位置にあるベースレイヤの動きベクトルは、MBの動きベクトル用の予測子又は拡張レイヤ内のMB区分を生成するためにスケーリングされる場合がある。加えて、MBごとに1つのフラグを送る、基本モードと命名された1つのMBタイプが存在する。このフラグが真であり、対応するベースレイヤのMBがイントラでない場合、動きベクトル、区分化モード、及び参照インデックスは、全てベースレイヤから導出される。
[0163]図7は、高効率ビデオコード化(HEVC)規格による例示的なタイルを示す概念図である。HEVCは、タイル及び波面並列処理(WPP)を含む、コーデックをより並列に順応させるための幾つかの提案を含む。HEVCは、タイルのコード化ツリーブロックラスタ走査において連続的に順序付けられた、1つの列及び1つの行内で同時に発生する整数個のコード化ツリーブロックとしてタイルを定義する。各ピクチャをタイルに分割することは、HEVCにおける区分と呼ばれる。ピクチャ内のタイルは、図7に示すように、ピクチャのタイルラスタ走査において連続的に順序付けられる。
[0164]タイルの数及びそれらの境界のロケーションは、全体のシーケンスに対して定義されてもよく、又はピクチャごとに変更されてもよい。スライス境界と同様に、タイル境界は、タイルが単独で処理され得るが、ループ内フィルタ(デブロッキング及びSAO)は依然として境界を横切れるように、パースと予測依存性とを分割する。HEVCはまた、スライスとタイルとの間の関係に対する幾つかの制約を規定する。
[0165]タイルを使用することの1つの利点は、タイルは、エントロピー復号及び動き補償再構成に対してプロセッサ間の通信を必要としないことであるが、通信は、loop_filter_across_tiles_enabled_flagが1に設定される場合に必要になることがある。
[0166]スライスと比較して、タイルは、潜在的にスライスより高い相関を有するサンプルを含むピクチャ区分形状を可能とし、同じく、タイルはスライスヘッダオーバーヘッドを低減するので、タイルは、一般的に、より良好なコード化効率を有する。
[0167]HEVCにおけるタイル設計は、以下の利点を与え得る:1)並列処理を可能にすること、及び2)スライスの使用と比較して、コード化ツリー単位(CTU)の変更された復号順序を可能にすることによってコード化効率を改善すること、しかし、主たる利点は第1の利点である。タイルがシングルレイヤコード化において使用されるとき、シンタックス要素min_spatial_segmentation_idcは、1つの処理スレッドによって処理されるべきルーマサンプルの最大数を計算するためにデコーダによって使用され得、デコーダは並列復号情報を最大限に利用することが想定される。HEVCにおいて、例えば、エントロピーコード化同期又はタイル境界もしくはスライス境界を横切るデブロッキングフィルタリングによって、異なるスレッド間に同じピクチャの相互依存性が存在し得る。HEVC規格は、min_spatial_segmentation_idcの値を可能な最高の値にエンコーダが設定することを奨励する注記を含む。
[0168]図8は、波面並列処理(WPP)に対する波面を示す概念図である。HEVCは、WPP技法を定義する。WPPが可能にされるとき、ピクチャのCTU行の各々は、分離された区分である。しかしながら、スライス及びタイルと比較すると、コード化依存性は、CTU行の境界において分割されない。加えて、CABAC確率は、以前の行の第2のCTUから伝搬され、コード化ロスを更に低減する。同じく、WPPは、通常のラスタ走査順序を変更しない。依存性は分割されないので、WPPビットストリームのレート歪みロスは、非並列ビットストリーム(nonparallel bitstream)と比較して小さい。
[0169]WPPが可能にされると、CTU行の数までの数のプロセッサが、CTU行(又はライン)を処理するために並列に働き得る。しかしながら、波面依存性は、ピクチャのはじめにおいて、全てのCTU行が復号を開始することを許容しない。従って、CTU行は、同じく、ピクチャの終わりにおいて、同時に復号を終了することができない。これは、多数のプロセッサが使用されるときにより明白になる、並列化の非効率性をもたらす。
[0170]図8は、WPPが、どのようにしてCTBの行を並列に処理するかを示しており、各行は、上の行の第2のCTBを処理した後、利用可能なCABAC確率から開始する。
[0171]H.264/AVCと同様に、HEVCもまた、少なくとも時間スケーラビリティと、SNRスケーラビリティと、空間スケーラビリティとを提供する、現在、スケーラブル高効率ビデオコード化(SHVC:Scalable High efficiency Video Coding)と呼ばれるスケーラブルビデオコード化拡張を有することになる。提案書の募集が、2012年7月にリリースされた。SHVC作業ドラフト及びテストモデルの第1のバージョンが、2013年3月に利用可能になる。
[0172]SHVCにおいて、レイヤ間テクスチャ予測を達成するために、参照レイヤの解像度が拡張レイヤの解像度より低いときに、参照レイヤの再構成されたサンプルが最初にアップサンプリングされる。SNRスケーラビリティの場合でさえ、参照レイヤサンプルは、より高いコード化効率を得るために、レイヤ間予測のために使用される前にフィルタリングされることがある。現在、アップサンプリング又はレイヤ間フィルタリングのプロセスは、レイヤ成分又は単にピクチャとも呼ばれ得るレイヤピクチャ全体に対して実行される。
[0173]SHVCにおいて、マルチループ復号構造が使用される。デコーダは、異なるレイヤを並列に処理し得る。並列処理を容易にするために、F.Henry及びS.Pateux、「Wavefront parallel processing」、JCTVC−E196、2011年3月は、全ての参照レイヤのタイル境界がその拡張レイヤのタイル境界と整列されていることを示すことを提案した。異なるレイヤのタイル境界の整列は、最初に、同じ拡張レイヤタイル内にある任意の2つの拡張レイヤピクチャサンプルに対して、同一位置配置ベースレイヤサンプルもまた同じベースレイヤタイル内にあるように規定される。
[0174]SHVCにおいて、マルチループ復号構造が使用される。デコーダは、異なるレイヤを並列に処理し得る。並列処理を容易にするために、全ての参照レイヤのタイル境界がその拡張レイヤのタイル境界と整列されていることを示すことが提案されている。タイル境界の整列及び異なるレイヤの整列のシンタックス及びセマンティクスは、以下の表7において規定され、表7は、K.Suhring、R.Skupin、T.Schierl、Indication of tile boundary alignment、JCTVC−L0197、2013年1月及び上記のJCTVC−M0464に記載の表に対する修正を示しており、ここで、イタリック体のテキストは提案された追加を表す。
[0175]シンタックス要素「tile_boundaries_aligned_flag」に対するセマンティクスは、以下の通りである:1に等しいtile_boundaries_aligned_flagは、対応するベースレイヤピクチャの全てのタイル境界が所与の拡張レイヤ内に対応するタイル境界を有し、拡張レイヤ内に追加のタイル境界は存在しないことを示す。従って、同じ拡張レイヤタイル内にある任意の2つの拡張レイヤピクチャサンプルに対して、同一位置配置ベースレイヤサンプルもまた、同じ参照レイヤタイル内にあり、同じ参照レイヤタイル内にある任意の2つの参照レイヤピクチャサンプルに対して、同一位置配置拡張レイヤサンプルもまた、同じ拡張レイヤタイル内にある。0に等しいシンタックス要素tile_boundaries_aligned_flagは、対応する拡張レイヤと所与の参照レイヤとの間のタイル構成に対する制約が存在しないことを示す。
[0176]図9は、SHVCコーダ、例えばビデオエンコーダ20又はビデオデコーダ30における並列処理の一例を示す概念図である。SHVCにおいて、拡張レイヤは、ベースレイヤ又はより低い拡張レイヤなど、参照レイヤから予測され得る。更に、参照レイヤ及び拡張レイヤのピクチャのいずれか又は両方が、タイルに分割され得る。図9に示すように、参照レイヤ内のピクチャが、B0とB1との2つのタイルに分割される一方で、拡張レイヤ内のピクチャも、E0とE1との2つのタイルに分割される。この例では、同数のタイル及び同じ相対位置のタイルが、拡張レイヤピクチャ及び参照レイヤピクチャに使用されるが、概して、拡張レイヤピクチャは、参照レイヤピクチャとして同じか又は異なる数のタイルを含み得ることを理解されたい。その上、幾つかの例では、拡張レイヤピクチャは、2つ以上の参照レイヤピクチャから予測され得、それらのいずれか又は全ては、同じか又は異なる数のタイルを有し得る。
[0177]以下でより詳細に説明するように、ビデオエンコーダ20及びビデオデコーダ30は、参照のために参照レイヤピクチャを使用して拡張レイヤピクチャをコード化するときに様々な制約を利用するように構成され得、それらのピクチャのいずれか又は両方がタイルに区分される。以下でより詳細に説明される図10〜図14は、ビデオエンコーダ20及びビデオデコーダ30が構成され得る様々な制約のうちの幾つかを表す。
[0178]図10は、参照レイヤピクチャ104から予測される例示的な拡張レイヤピクチャ100を示す概念図である。この例では、拡張レイヤピクチャ100がタイル102A〜102Dを含む一方で、参照レイヤピクチャ104は、タイル106A、106Bを含む。図10の点線で示すように、拡張レイヤピクチャ100のタイル102Bが、参照レイヤピクチャ104のタイル106Aに対応する一方で、拡張レイヤピクチャ100のタイル102Cは、参照レイヤピクチャ104のタイル106Bに対応する。
[0179]この例では、拡張レイヤピクチャ100は、参照レイヤピクチャ104と異なるアスペクト比を有する。例えば、参照レイヤピクチャ104は4:3のアスペクト比を有し得、一方、拡張レイヤピクチャ100は16:9のアスペクト比を有し得る。従って、拡張レイヤピクチャ100のタイル102A、102Dは、参照レイヤピクチャ104内に対応するタイルをもたない。例えば、拡張レイヤピクチャ100のタイル102Aは、サンプル108を含む。垂直ハッシング(vertical hashing)で示すように、サンプル108は、参照レイヤピクチャ104内に利用可能な同一位置配置参照レイヤ(RL)サンプルをもたない。同様に、拡張レイヤピクチャ100のタイル102Dのサンプル114は、利用可能な同一位置配置RLサンプル(collocated RL sample)をもたない。しかしながら、サンプル110、112は、参照レイヤピクチャ104内に利用可能な同一位置配置参照レイヤサンプル(クロスハッチングで示す)を有する。特に、サンプル110、112は、参照レイヤピクチャ104のサンプル116、118に対応する。
[0180]このようにして、ビデオエンコーダ20及びビデオデコーダ30は、タイル106A、106Bのそれぞれに対するレイヤ間予測を使用してタイル102B、102Cのビデオデータをコード化し得る。しかしながら、タイル102A、102Dは、参照レイヤピクチャ104内に対応する部分をもたないので、ビデオエンコーダ20及びビデオデコーダ30は、レイヤ間予測を使用することなく、例えば、イントラ予測又は時間的予測を使用して、タイル102A、102Dをコード化し得る。拡張レイヤピクチャ100のコード化は、参照レイヤピクチャ104のコード化と実質的に並列に発生し得る。例えば、ビデオコーダ(例えば、ビデオエンコーダ20又はビデオデコーダ30)は、タイル106Aをコード化し、次いで、タイル106Bと実質的に並列にタイル102Bをコード化し得る。その上、タイル102A、102Dは参照レイヤピクチャ104のデータに依存しないので、タイル102A、102Dのコード化は、タイル106A、106Bをコード化する前に実質的に並列に、又はタイル106A、106Bをコード化した後に発生し得る。
[0181]図10は、タイル102B、102Cのタイル境界がタイル106A、106Bのタイル境界と整列されていると言われてよい一例を示す。幾つかの例では、同じ拡張レイヤタイル内にある任意の2つの拡張レイヤピクチャサンプルに対して、同一位置配置参照レイヤサンプルもまた、利用可能な場合、同じ参照レイヤタイル内にあるとき、及び、同じ参照レイヤタイル内にある任意の2つの参照レイヤピクチャサンプルに対して、同一位置配置拡張レイヤサンプルもまた、利用可能な場合、同じ拡張レイヤタイル内にあるときに、タイル境界は、整列されていると言われてよい。タイル102A内の任意の2つのサンプルは106A内の同一位置配置サンプルに対応し、同様に、タイル106A内の任意の2つのサンプルはタイル102A内の同一位置配置サンプルに対応するので、タイル102Aの境界は、タイル106Aの境界と整列されていると言われてよい。同様に、タイル102B内の任意の2つのサンプルはタイル106B内の同一位置配置サンプルに対応し、同様に、タイル106B内の任意の2つのサンプルはタイル102B内の同一位置配置サンプルに対応するので、タイル102Bの境界は、タイル106Bの境界と整列されていると言われてよい。
[0182]このようにして、図10は、ビデオエンコーダ20及びビデオデコーダ30が、第1のアスペクト比を備えるベースレイヤピクチャをコード化(例えば、符号化又は復号)することと、第2のアスペクト比を備える拡張レイヤピクチャをベースレイヤピクチャと実質的に並列にコード化することとを行うように構成され得る一例を描いており、第2のアスペクト比は第1のアスペクト比より大きく、拡張レイヤピクチャをコード化することは、レイヤ間予測を使用することなく、第1のアスペクト比によって定義された領域の外側にある拡張レイヤピクチャの部分をコード化することを備える。
[0183]図11は、幾つかの参照レイヤ(又はベースレイヤ)サンプルが、対応する拡張レイヤサンプルをもたない、拡張された空間スケーラビリティの一例を示す概念図である。特に、図11の例は、拡張レイヤピクチャ130と参照レイヤピクチャ136とを示す。この例に示すように、参照レイヤピクチャ136が、拡張レイヤピクチャ130をコード化するための参照ピクチャとして使用するために空間的にアップサンプリングされるとき、参照レイヤピクチャ130の部分に対応しない参照レイヤピクチャ136の領域が存在する。
[0184]より詳細には、参照レイヤピクチャ136は、タイル138A及びタイル138Bの2つのタイルを含む一方で、拡張レイヤピクチャ130は、タイル132A及びタイル132Bの、2つの概して対応するタイルを含む。参照レイヤピクチャ内の鎖線は、タイル132A、132Bのそれぞれに対応する領域140A、140Bを画定する。しかしながら、鎖線と参照レイヤピクチャ136の外部境界との間の領域142A、142Bは、拡張レイヤピクチャ130の実際の領域に対応しない領域を画定する。即ち、拡張レイヤピクチャ130の境界周りの鎖線は、拡張レイヤピクチャ130の外部境界と、拡張レイヤピクチャ130に対するサンプルを含まないが領域142A、142Bに対応する鎖線との間の領域134を画定する。
[0185]例えば、図11は、参照レイヤピクチャ136のタイル138Aに対する2つの例示的なサンプル、即ち、サンプル144及びサンプル148を示す。サンプル144は、領域140Aの境界内にあるので、サンプル144は、拡張レイヤピクチャ130内のタイル132Aのサンプル152に対応すると言われてよい。一方で、サンプル148は拡張レイヤピクチャ130のサンプルに対応せず、代わりに、領域142Aが、サンプルが存在しない領域134内の一部に対応する。このようにして、サンプル148は、対応する拡張レイヤサンプルをもたないサンプルの一例として説明され得る。
[0186]同様に、図11は、参照レイヤピクチャ136のタイル138Bに対する2つの例示的なサンプル、即ち、サンプル146及びサンプル150を示す。サンプル146は、領域140Aの境界内にあるので、サンプル146は、拡張レイヤピクチャ130内のタイル132Bのサンプル154に対応すると言われてよい。一方で、サンプル150は拡張レイヤピクチャ130のサンプルに対応せず、代わりに、領域142Bが、サンプルが存在しない領域134内の一部に対応する。このようにして、サンプル150は、対応する拡張レイヤピクチャをもたないサンプルの別の例として説明され得る。
[0187]このようにして、図11は、タイル138A、138Bが、それぞれ、タイル132A、132Bと整列されている一例を提供する。即ち、上記で説明したように、同じ拡張レイヤタイル内にある任意の2つの拡張レイヤピクチャサンプルに対して、同一位置配置参照レイヤサンプルもまた、利用可能な場合、同じ参照レイヤタイル内にあるとき、及び、同じ参照レイヤタイル内にある任意の2つの参照レイヤピクチャサンプルに対して、同一位置配置拡張レイヤサンプルもまた、利用可能な場合、同じ拡張レイヤタイル内にあるときに、タイルは、「整列されて」いると言われてよい。即ち、タイル138A、138Bの境界は、それぞれ、タイル132A、132Bの境界と厳密には整列されてはいないが、参照レイヤピクチャ136のサンプル148、150は、利用可能な拡張レイヤサンプルに対応しない。タイル132A内の全てのサンプルは、領域140Aに対応するサンプルを有し、同様に、タイル132B内の全てのサンプルは、領域140B内に対応するサンプルを有する。同様に、領域140A内の全てのサンプルは、タイル132A内のサンプルに対応し、領域140B内の全てのサンプルは、タイル132B内のサンプルに対応する。従って、タイル132A、132Bは、それぞれ、タイル138A、138Bと整列されていると言われてよい。
[0188]図12は、参照レイヤピクチャ162と拡張レイヤピクチャ160とを示す概念図である。拡張レイヤピクチャ160及び参照レイヤピクチャ162は、同じアクセス単位内で発生し得る(又はさもなければ、互いに対応し得る)。拡張レイヤピクチャ160は、タイル164A、164B及び164Cに区分される一方で、参照レイヤピクチャ162は、タイル168A、168B、168Cに区分される。加えて、図12は、タイル164B、168Bのそれぞれの中に例示的なブロック166、170を示す。ブロック166はブロック170と配列されているので、ブロック166は、ブロック170に対応すると言われてよい。
[0189]本開示の幾つかの例示的な技法によれば、ビデオエンコーダ20及びビデオデコーダ30は、様々な条件に基づいてブロック170からのブロック166のレイヤ間予測を防止するか又は可能にするように構成され得る。一例では、ビデオエンコーダ20及びビデオデコーダ30は、参照レイヤピクチャ162内のタイルを横切るレイヤ間フィルタリング及び/又は参照レイヤフィルタリングが可能にされるとき、ブロック170からのレイヤ間テクスチャ予測及び/又はレイヤ間シンタックス予測を使用するブロック166のコード化を防止するように構成され得る。ビデオエンコーダ20及びビデオデコーダ30は、拡張レイヤ及び参照レイヤなどの様々なレイヤのタイル境界が整列されているかどうかを示すデータ、並びにタイル境界を横切るレイヤ間フィルタリング又は参照レイヤフィルタリングがブロック170に対して可能にされるとき、レイヤ間テクスチャ予測及びレイヤ間シンタックス予測の少なくとも一方がタイル境界に沿って又はそこを横切って許容されないかどうかを示すデータを、更にコード化し得る。
[0190]ビデオエンコーダ20及びビデオデコーダ30は、追加又は代替として、異なるレイヤ間のタイル境界(例えば、タイル164、168の境界)が整列されているかどうかを示すデータ、及びレイヤ間テクスチャ予測及び/又はレイヤ間シンタックス予測がタイル境界に沿って又はそこを横切って許容されないかどうかを示すデータをコード化し得る。レイヤ間テクスチャ予測及びレイヤ間シンタックス予測がタイル境界に沿って又はそこを横切って許容されないとき、ビデオエンコーダ20及びビデオデコーダ30は、整列されないベースレイヤタイルをコード化することなく、タイルのブロックをコード化し得る。例えば、(ブロック160と同一位置配置された)ブロック177が、ブロック164Bと整列されないタイル内にあるとすれば、ビデオエンコーダ20及びビデオデコーダ30は、最初にブロック177をコード化することなくブロック160をコード化することができ、従って、ブロック177と並列にブロック160をコード化することができる。
[0191]レイヤ間テクスチャ予測及びレイヤ間シンタックス予測が、タイル境界に沿って又はそこを横切って許容されないかどうかを示すデータは、表1に関して上記で説明した、inter_layerpred_not_along_tile_boundary_flagシンタックス要素を備え得る。追加又は代替として、レイヤ間テクスチャ予測及びレイヤ間シンタックス予測が、タイル境界に沿って又はそこを横切って許容されないかどうかを示すデータは、ビデオユーザビリティ情報(VUI)として及び/又は補助強化情報(SEI)メッセージの一部としてコード化され得る。
[0192]図13は、異なるアスペクト比を有する例示的なピクチャを示す概念図である。特に、この例では、拡張レイヤピクチャ180は、参照レイヤピクチャ182と異なるアスペクト比を有する。例えば、拡張レイヤピクチャ180は、16×9のアスペクト比を有し得、一方で、参照レイヤピクチャ182は、4:3のアスペクト比を有し得る。16×9のアスペクト比は、4:3のアスペクト比より大きいアスペクト比の一例である。この例では、拡張レイヤピクチャ180は、4つのタイル、即ち184A〜184Dに区分される。参照レイヤピクチャ182は、タイル186A、186Bに区分される。概して、タイル184Bは、186Aに対応すると言われてよく、一方で、タイル184Cは、タイル186Bに対応すると言われてよい。
[0193]タイル184A〜184D及び186A、186Bの各々は、複数のサンプルを含むが、簡潔性及び説明の目的で、幾つかのサンプルだけが示される。特に、この例では、サンプル188はタイル184B内に示され、サンプル192はタイル186A内に示され、サンプル190はタイル184D内に示されている。更に、この例では、サンプル188は、サンプル192に対応する。即ち、タイル184Bは、(もともと、又は空間的アップサンプリングの後に)タイル186Aと同じ空間解像度を有するものと仮定すると、サンプル188は、サンプル192と配列される。更に、図13に示すように、サンプル188は、同じ拡張レイヤタイル、タイル184B内にあり、サンプル192は、同じ参照レイヤタイル、タイル186A内にある。このようにして、サンプル188は、同じ拡張レイヤタイル内にある2つの拡張レイヤピクチャサンプルの例を表し、サンプル192は、利用可能な、同一位置配置参照レイヤサンプルの例を表す。その逆もまた真である:サンプル192は、同じ参照レイヤタイル内の2つの参照レイヤサンプルの例を表し、それに対して、同一位置配置拡張レイヤサンプル(サンプル188)は利用可能であり、同じく、同じ拡張レイヤタイル(即ち、タイル184B)内にある。この特性は、タイル184B内のサンプルとタイル186A内の同一位置配置サンプルとのペアの任意のセットに対して真である。
[0194]従って、タイル184B及び186Aは、整列されたタイル境界を有すると言われてよい。従って、ビデオエンコーダ20又はビデオデコーダ30などのビデオコーダは、サンプル188をコード化する(例えば、ビデオエンコーダ20によって符号化する又はビデオデコーダ30によって復号する)ための参照サンプルとしてサンプル192を使用してレイヤ間予測を実行し得る。その上、ビデオコーダは、タイル184Bをコード化する前にタイル186Aをコード化したことと、同じく、フィルタリングは、参照レイヤ182のタイル境界を横切って、例えばタイル186Aと186Bとの間の境界を横切って実行されないこととを仮定して、ビデオエンコーダ20及びビデオデコーダ30は、タイル186Bと実質的に並列にタイル184Bをコード化し得る。
[0195]この例では、サンプル190は、タイル184D内に示される。しかしながら、拡張レイヤピクチャ180は、参照レイヤピクチャ182と異なるアスペクト比を有するので、参照レイヤピクチャ182内にタイル184に対応するタイルは存在しない。それゆえに、参照レイヤピクチャ182内にサンプル190に対応する(又はサンプル190と同一位置配置される)利用可能なサンプルは存在しない。拡張レイヤピクチャ180のサンプル190に対応する参照レイヤピクチャ182のサンプルは存在しない(及び同様に、タイル184Dに対応するタイルも存在しない)が、拡張レイヤピクチャ180のタイルに対するタイル境界は、それにもかかわらず、参照レイヤピクチャ182のタイルに対するタイル境界と整列されるように画定され得る。
[0196]従って、拡張レイヤピクチャ180及び参照レイヤピクチャ182のタイル境界が(図13の例におけるように)整列されるとき、及びレイヤ間テクスチャ予測並びに参照レイヤフィルタリングが参照レイヤピクチャ182のタイル境界を横切って実行されないとき、ビデオエンコーダ20は、これを示す値を、シンタックス要素に対して、例えばinter_layerpred_not_along_tile_boundary_flagに対してコード化し得る。同様に、ビデオデコーダ30は、拡張レイヤピクチャ180と参照レイヤピクチャ182とのタイル境界が整列されていることと、レイヤ間テクスチャ予測及び参照レイヤフィルタリングが参照レイヤピクチャ182のタイル境界を横切って実行されないこととを示す、inter_layerpred_not_along_tile_boundary_flagなどのシンタックス要素に対する値を復号し得る。
[0197]従って、ビデオエンコーダ20及びビデオデコーダ30は、共通の拡張レイヤタイル内の2つのそれぞれの拡張レイヤピクチャサンプルと同一位置配置される任意の2つの参照レイヤサンプルが、共通の参照レイヤタイル内にあるに違いないかどうかを表すシンタックス要素に対する値をコード化(符号化又は復号)することと、シンタックス要素の値に少なくとも部分的に基づいて拡張レイヤピクチャサンプルをコード化することとを行うように構成されたビデオコーダの例を表す。
[0198]図14は、異なる数のタイルを有する拡張レイヤピクチャ200と参照レイヤピクチャ202とを示す概念図である。この例では、拡張レイヤピクチャ200が8つのタイル、タイル204A〜204Hを含む一方で、参照レイヤピクチャ202は、6つのタイル、タイル206A〜206Fを含む。従って、拡張レイヤタイル204A〜204Hの境界は、参照レイヤタイル206A〜206Fの境界と整列されない。即ち、参照レイヤピクチャ202の同一位置配置サンプルが参照レイヤタイル206A〜206Fのうちの同じタイル内にない、タイル204A〜204Hのうちの少なくとも1つの少なくとも2つのサンプルが存在する。同様に、拡張レイヤピクチャ200の同一位置配置サンプルが拡張レイヤタイル204A〜204Hのうちの同じタイル内にない、タイル206A〜206Fのうちの少なくとも1つの少なくとも2つのサンプルが存在する。
[0199]それにもかかわらず、拡張レイヤピクチャ200のタイルと参照レイヤピクチャ202のタイルとの間の境界の整列がないとしても、ビデオコーダ(ビデオエンコーダ20又はビデオデコーダ30など)は本開示の技法を使用して、参照レイヤタイル206A〜206Fのうちの1つ又は複数と実質的に並列に、拡張レイヤタイル204A〜204Hのうちの1つ又は複数を依然としてコード化し得る。
[0200]特に、本開示の技法によれば、ビデオエンコーダ20及びビデオデコーダ30は、拡張レイヤピクチャ200の対応するタイルがコード化され得る前にコード化されるべき、(拡張レイヤピクチャ200に対するベースレイヤピクチャである)参照レイヤピクチャ202内のタイルの数を示すmax_ref_tile_dec_idc_minus1[i](ここで、iは、タイル204A〜204Hのi番目のタイルに対応する)などのシンタックス要素に対する値を、タイル204A〜204Hのいずれか又は全てに対してコード化し得る。特に、値がmax_ref_tile_dec_idc_minus1[i]の形態で表現されるとき、max_ref_tile_dec_idc_minus1[i]の値は、拡張レイヤピクチャ200の対応するタイルがコード化され得る前にコード化されるべき、参照レイヤピクチャ202内のタイルの数より小さい値であり、従って、ビデオデコーダ30は、その値を、コード化されるべき参照レイヤピクチャ202内のタイルの実際の数を決定するために、max_ref_tile_dec_idc_minus1[i]の値に加算し得る。
[0201]例えば、図14の例では、ビデオエンコーダ20は、以下の表8によるmax_ref_tile_dec_idc_minus1[i]に対する値をコード化し得る。
[0202]この例では、0の値に1を加算すると値1が得られるので、ビデオエンコーダ20は、タイル204Aに対応するmax_ref_tile_dec_idc_minus1[0]に対して0の値をコード化し得る。この値は、ひいては、参照レイヤピクチャ202のうちの1つのタイル(即ち、タイル206A)が、タイル204Aがコード化され得る前にコード化されるべきであることを示す。図14で分かるように、タイル206Aをコード化することによって、タイル204Aに対応する参照レイヤピクチャ202の全てのサンプルは、タイル206Aをコード化した後にコード化されることになり、従って、ビデオエンコーダ20は、タイル206Aだけが、タイル204Aがコード化され得る前にコード化されるべきであることを示し得る。同様に、ビデオデコーダ30は、タイル206Aがコード化された後に、タイル204Aが、例えばタイル206B〜206Fのうちのいずれかと実質的に並列に(又は並列に)コード化され得ることを決定するために、max_ref_tile_dec_idc_minus1[0]の値を使用し得る。
[0203]同じく、この例では、1の値に1を加算すると値2が得られるので、ビデオエンコーダ20は、タイル204Bに対応するmax_ref_tile_dec_idc_minus1[1]に対して1の値をコード化し得る。この値は、ひいては、参照レイヤピクチャ202のうちの2つのタイル(即ち、タイル206A、206B)が、タイル204Bがコード化され得る前にコード化されるべきであることを示す。図14でわかるように、タイル206A、206Bをコード化することによって、タイル204Bに対応する参照レイヤピクチャ202の全てのサンプルは、タイル206Bをコード化した後にコード化されることになり、従って、ビデオエンコーダ20は、タイル204Bがコード化され得る前にタイル206A、206Bがコード化されるべきであることを示し得る。同様に、ビデオデコーダ30は、タイル206Bがコード化された後に、タイル204Bが、例えばタイル206C〜206Fのうちのいずれかと実質的に並列に(又は並列に)コード化され得ることを決定するために、max_ref_tile_dec_idc_minus1[1]の値を使用し得る。
[0204]更に、この例では、2の値に1を加算すると値3が得られるので、ビデオエンコーダ20は、タイル204Cに対応するmax_ref_tile_dec_idc_minus1[2]に対して2の値をコード化し得る。この値は、ひいては、参照レイヤピクチャ202のうちの3つのタイル(即ち、タイル206A〜206C)が、タイル204Cがコード化され得る前にコード化されるべきであることを示す。同様に、ビデオエンコーダ20は、タイル204Dに対応するmax_ref_tile_dec_idc_minus1[3]に対して2の値をコード化し得る。図14でわかるように、タイル206A〜206Cをコード化することによって、タイル204C及び204Dに対応する参照レイヤピクチャ202の全てのサンプルは、タイル206Cをコード化した後にコード化されることになり、従って、ビデオエンコーダ20は、タイル204C、204Dがコード化され得る前にタイル206A〜206Cがコード化されるべきであることを示し得る。同様に、ビデオデコーダ30は、タイル206Cがコード化された後に、タイル204C及び204Dが、例えばタイル206D〜206Fのうちのいずれかと実質的に並列に(又は並列に)コード化され得ることを決定するために、max_ref_tile_dec_idc_minus1[2]及びmax_ref_tile_dec_idc_minus1[3]の値を使用し得る。
[0205]その上、この例では、3の値に1を加算すると値4が得られるので、ビデオエンコーダ20は、タイル204Eに対応するmax_ref_tile_dec_idc_minus1[4]に対して3の値をコード化し得る。この値は、ひいては、参照レイヤピクチャ202のうちの4つのタイル(即ち、タイル206A、206B)が、タイル204Bがコード化され得る前にコード化されるべきであることを示す。図14でわかるように、タイル206A〜206Dをコード化することによって、タイル204Eに対応する参照レイヤピクチャ202の全てのサンプルは、タイル206Dをコード化した後にコード化されることになり、従って、ビデオエンコーダ20は、タイル204Eがコード化され得る前にタイル206A〜206Dがコード化されるべきであることを示し得る。同様に、ビデオデコーダ30は、タイル206Dがコード化された後に、タイル204Eが、例えばタイル206E、206Fのうちのいずれかと実質的に並列に(又は並列に)コード化され得ることを決定するために、max_ref_tile_dec_idc_minus1[4]の値を使用し得る。
[0206]同じく、この例では、4の値に1を加算すると値5が得られるので、ビデオエンコーダ20は、タイル204Fに対応するmax_ref_tile_dec_idc_minus1[5]に対して4の値をコード化し得る。この値は、ひいては、参照レイヤピクチャ202のうちの5つのタイル(即ち、タイル206A〜206E)が、タイル204Fがコード化され得る前にコード化されるべきであることを示す。図14でわかるように、タイル206A〜206Eをコード化することによって、タイル204Fに対応する参照レイヤピクチャ202の全てのサンプルは、タイル206Eをコード化した後にコード化されることになり、従って、ビデオエンコーダ20は、タイル204Fがコード化され得る前にタイル206A〜206Eがコード化されるべきであることを示し得る。同様に、ビデオデコーダ30は、タイル206Eがコード化された後に、タイル204Fが、例えばタイル206Fと実質的に並列に(又は並列に)コード化され得ることを決定するために、max_ref_tile_dec_idc_minus1[5]の値を使用し得る。
[0207]更に、この例では、5の値に1を加算すると値6が得られるので、ビデオエンコーダ20は、タイル204Gに対応するmax_ref_tile_dec_idc_minus1[6]に対して5の値をコード化し得る。この値は、ひいては、参照レイヤピクチャ202のうちの6つのタイル全て(即ち、タイル206A〜206F)が、タイル204Gがコード化され得る前にコード化されるべきであることを示す。同様に、ビデオエンコーダ20は、タイル204Hに対応するmax_ref_tile_dec_idc_minus1[7]に対して5の値をコード化し得る。図14でわかるように、タイル206A〜206Fをコード化することによって、タイル204C及び204Gに対応する参照レイヤピクチャ202の全てのサンプルは、タイル206Fをコード化した後にコード化されることになり、従って、ビデオエンコーダ20は、タイル204G、204Hがコード化され得る前にタイル206A〜206Fがコード化されるべきであることを示し得る。同様に、ビデオデコーダ30は、タイル206Fがコード化された後に、タイル204G及び204Hが、例えば参照レイヤ内の後続のピクチャ(即ち、コード化順序でピクチャ202に後続する参照レイヤ内のピクチャ)のタイルと実質的に並列に(又は並列に)コード化され得ることを決定するために、max_ref_tile_dec_idc_minus1[6]及びmax_ref_tile_dec_idc_minus1[7]の値を使用し得る。
[0208]従って、ビデオエンコーダ20及びビデオデコーダ30は、拡張レイヤピクチャのタイルがコード化され得る前にコード化される必要のあるベースレイヤピクチャ内のタイルの数を示すデータを、拡張レイヤピクチャのタイルに対してコード化することと、タイルの数に対応するベースレイヤピクチャのタイルをコード化することと、ベースレイヤピクチャのタイルをコード化した後に、ベースレイヤピクチャ内の少なくとも1つの他のタイルと実質的に並列に拡張レイヤピクチャのタイルをコード化することとを行うように構成されたビデオコーダの例を表す。
[0209]図15は、本開示の技法による、レイヤ間予測を可能又は無効にするための例示的な方法を示すフローチャートである。図15方法は、概して、ビデオコーダによって実行されるものとして説明される。ビデオコーダは、例えば、ビデオエンコーダ20又はビデオデコーダ30、あるいは他のそのようなビデオコード化機器(例えば、ビデオトランスコーディング機器(video transcoding devices))に対応し得る。
[0210]最初に、ビデオコーダは、1つ又は複数の隣接する参照レイヤタイルをコード化し得る(250)。即ち、ビデオコーダは、参照レイヤピクチャ内の1つ又は複数のタイルのブロック(例えば、CU又はPU)をコード化し得る。次いで、ビデオコーダは、タイル境界を横切るフィルタリングが可能にされるかどうかを決定し得る(252)。例えば、ビデオエンコーダ20によって実行されるとき、ビデオエンコーダ20は、参照レイヤピクチャに対するタイル境界を横切るフィルタリングを可能にするかどうかを決定し得る。ビデオエンコーダ20はまた、参照レイヤピクチャに対するタイル境界を横切るフィルタリングが可能にされるかどうかを示すシンタックス要素を符号化し得る。一方で、ビデオデコーダ30によって実行されるとき、ビデオデコーダ30は、タイル境界を横切るフィルタリングが可能にされるかどうかをシンタックス要素から決定し得る。
[0211]タイル境界を横切るフィルタリングは、タイル境界を横切るレイヤ間フィルタリング(例えば、ここで、参照レイヤピクチャは、タイル境界を横切るフィルタリングが可能にされる更に別の参照レイヤピクチャに関してコード化される)か、あるいは参照レイヤフィルタリング、例えばデブロッキング、全ピクチャに対するアップサンプリング、又は参照レイヤピクチャの2つ以上の別個のタイルからの画素(サンプルとも呼ばれる)に適用されるフィルタを使用する任意の他のフィルタリング動作、のいずれか又は両方を含み得る。
[0212]幾つかの例では、ビデオコーダは、異なるレイヤのタイル境界が整列されているかどうかを更に決定し得る。例えば、ビデオエンコーダ20は、タイル境界を整列させるかどうかを決定し、タイル境界が整列されているかどうかを示すシンタックス要素を符号化する一方で、ビデオデコーダ30は、タイル境界が整列されているかどうかを決定するためにシンタックス要素を復号し得る。同様に、ビデオコーダは、レイヤ間予測が、タイル境界に沿って又はそれらを横切って許容されないかどうかを示すシンタックス要素、例えば、表1に関して上記で説明したinter_layerpred_not_along_tile_boundary_flagをコード化し得る。追加又は代替として、そのようなシンタックス要素は、ビデオユーザビリティ情報(VUI)、シーケンスパラメータセット(SPS)、ピクチャパラメータセット(PPS)、ビデオパラメータセット(VPS)、スライスヘッダ、補助強化情報(SEI)メッセージなどのいずれか又は全ての中に含まれ得る。
[0213]参照レイヤピクチャに対するタイル境界を横切るフィルタリングが可能にされる場合(252の「はい」分岐)、ビデオコーダは、拡張レイヤピクチャに対するレイヤ間予測を無効にし得る(254)。次いで、ビデオコーダは、レイヤ間予測を使用することなく、拡張レイヤピクチャのブロックをコード化し得る(256)。レイヤ間予測は、レイヤ間テクスチャ予測(例えば、ルミナンスデータ及び/又はクロミナンスデータの予測)及びレイヤ間シンタックス予測のいずれか又は両方を含み得る。参照レイヤピクチャは、拡張レイヤピクチャをコード化するときに参照のために実際に使用されないので、ビデオコーダは、参照レイヤピクチャのブロックのうちのいずれかと並列に、拡張レイヤピクチャのブロックをコード化し得る。従って、図15の例は、拡張レイヤピクチャのブロックをコード化する前に、隣接する参照レイヤタイルをコード化することを描いているが、幾つかの例では、ビデオコーダは、タイル境界を横切るフィルタリングが参照レイヤピクチャに対して可能にされるかどうかを単に決定し、そうであれば、参照レイヤピクチャと並列に拡張レイヤピクチャをコード化することを直ちに開始することができる。
[0214]一方で、参照レイヤピクチャに対するタイル境界を横切るフィルタリングが可能にされない場合(252の「いいえ」分岐)、ビデオコーダは、拡張レイヤピクチャに対するレイヤ間予測を可能にし得る(258)。次いで、ビデオコーダは、レイヤ間予測を使用して、拡張レイヤのブロックをコード化し得る(260)。特に、参照レイヤタイルのうちの1つ又は複数をコード化した後、ビデオコーダは、コード化された参照レイヤタイルと境界を整列された拡張レイヤピクチャのタイルのブロックをコード化し得る。更に、ビデオコーダは、参照レイヤピクチャの後続のタイルと並列に、拡張レイヤピクチャのタイルのブロックをコード化し得る。
[0215]拡張レイヤピクチャ及び参照レイヤピクチャは、概して、同じアクセス単位内に含まれることを理解されたい。即ち、拡張レイヤピクチャ及び参照レイヤピクチャは、同じ出力時間(又は表示時間)に対応する。
[0216]このようにして、図15の方法は、拡張レイヤタイル内の拡張レイヤブロックをコード化(例えば、符号化又は復号)するとき、拡張レイヤタイルとベースレイヤブロックの両方を含むアクセス単位内の参照レイヤピクチャ内のタイルを横切るレイヤ間フィルタリング又は参照レイヤフィルタリングが可能にされる同一位置配置ベースレイヤブロックから、レイヤ間テクスチャ予測又はレイヤ間シンタックス予測を使用する拡張レイヤブロックのコード化を防止することと、参照レイヤピクチャ内のタイル境界を横切るレイヤ間フィルタリング又は参照レイヤフィルタリングが可能にされるとき、拡張レイヤブロックと実質的に並列に、同一位置配置ブロックをコード化(符号化又は復号)することとを含む方法の一例を表す。代替では、参照レイヤピクチャ内のタイルの境界を横切るレイヤ間フィルタリング及び参照レイヤフィルタリングが可能にされないとき、方法は、参照レイヤピクチャの後続のタイルと並列に、拡張レイヤブロックをコード化(符号化又は復号)することを含み得る。
[0217]図16は、本開示の技法による、ピクチャが異なるアスペクト比を有するときに、拡張レイヤ及び参照レイヤのピクチャを並列にコード化するための例示的な方法を示すフローチャートである。図16の方法は、概して、ビデオコーダによって実行されるものとして説明される。ビデオコーダは、例えば、ビデオエンコーダ20又はビデオデコーダ30、又は他のそのようなビデオコード化機器(例えば、ビデオトランスコーディング機器)に対応し得る。
[0218]この例では、ビデオコーダは、最初に、第1のアスペクト比を有する参照レイヤピクチャのタイルをコード化する(280)。例えば、参照レイヤピクチャは、4:3のアスペクト比を有し得る。次いで、ビデオコーダは、拡張レイヤピクチャが、参照レイヤピクチャのアスペクト比より大きいエクスペクト比を有するかどうかを決定し得る(282)。例えば、拡張レイヤピクチャは、16×9のアスペクト比を有し得、一方で、参照レイヤピクチャは、4:3のアスペクト比を有し得る。
[0219]拡張レイヤピクチャが参照レイヤピクチャのアスペクト比より大きいアスペクト比を有する場合(282の「はい」分岐)、参照レイヤピクチャと重ならない拡張レイヤピクチャの少なくとも幾つかの部分(例えば、タイル)が存在することになる。従って、ビデオコーダは、レイヤ間予測を使用して拡張レイヤピクチャの重複部分をコード化し(284)、レイヤ間予測を使用することなく拡張レイヤピクチャの重複しない部分をコード化する(286)ことができる。更に、ビデオコーダは、参照レイヤピクチャの任意の部分と並列に、拡張レイヤピクチャの重複しない部分をコード化する一方で、ビデオコーダは、参照レイヤピクチャの後続の部分と並列に、拡張レイヤピクチャの重複部分をコード化することができる。例えば、再び図13を参照すると、ビデオコーダは、参照レイヤピクチャ182の任意の部分と並列にタイル184A、184Dをコード化し得る。ビデオコーダは、タイル186Bと並列にタイル184Bをコード化し得る。
[0220]一方で、拡張レイヤピクチャが参照レイヤピクチャのアスペクト比より大きいアスペクト比をもたない場合(282の「いいえ」分岐)、ビデオコーダは、レイヤ間予測を完全に使用して拡張レイヤピクチャをコード化し(288)、参照レイヤピクチャの他のタイルと並列に、拡張レイヤピクチャの幾つかのタイルをコード化することができる。
[0221]このようにして、図16の方法は、第1のアスペクト比を備えるベースレイヤピクチャをコード化(例えば、符号化又は復号)することと、第2のアスペクト比を備える拡張レイヤピクチャを、ベースレイヤピクチャと実質的に並列にコード化(例えば、符号化又は復号)することとを含む方法の一例を表しており、第2のアスペクト比は第1のアスペクト比より大きく、拡張レイヤピクチャをコード化することは、レイヤ間予測を使用することなく、第1のアスペクト比によって定義された領域の外側にある拡張レイヤピクチャの部分をコード化することを備える。
[0222]図17は、拡張レイヤピクチャのタイル境界が参照レイヤピクチャのタイル境界と整列されているかどうかに基づいて、拡張レイヤピクチャをコード化するための例示的な方法を示すフローチャートである。図17の方法は、概して、ビデオコーダによって実行されるものとして説明される。ビデオコーダは、例えば、ビデオエンコーダ20又はビデオデコーダ30、あるいは他のそのようなビデオコード化機器(例えば、ビデオトランスコーディング機器)に対応し得る。
[0223]この例では、ビデオコーダは、1つ又は複数の参照レイヤタイルをコード化する(300)。次いでビデオコーダは、拡張レイヤのタイル境界が整列されているかどうかを決定する(302)。例えば、ビデオエンコーダ20は、参照レイヤピクチャを整列させるかどうかを決定し、タイル境界が整列されているかどうかを示す、tile_boundaries_aligned_flagなどのシンタックス要素に対する値を符号化し得る一方で、ビデオデコーダ30は、例えば、tile_boundaries_aligned_flagなどのシンタックス要素の値に基づいて、参照レイヤの境界が整列されているかどうかを決定し得る。同じ拡張レイヤタイル内にある任意の2つの拡張レイヤピクチャサンプルに対して、同一位置配置参照レイヤサンプルもまた、利用可能な場合、同じ参照レイヤタイル内にあるとき、及び、同じ参照レイヤタイル内にある任意の2つの参照レイヤピクチャサンプルに対して、同一位置配置拡張レイヤサンプルもまた、利用可能な場合、同じ拡張レイヤタイル内にあるときに、拡張レイヤピクチャのタイル境界は、参照レイヤピクチャのタイル境界と整列されていると言われてよい。
[0224]拡張レイヤピクチャのタイル境界が、参照レイヤピクチャのタイル境界と整列されていないとき(302の「いいえ」分岐)、ビデオコーダは、拡張レイヤに対するレイヤ間予測を無効にし(304)、レイヤ間予測を使用することなく拡張レイヤピクチャのタイルをコード化する(306)ことができる。更に、レイヤ間予測は無効にされているので、ビデオコーダは、参照レイヤピクチャの任意の部分と並列に、拡張レイヤピクチャのタイルのいずれか又は全てをコード化し得る。
[0225]一方で、拡張レイヤピクチャのタイル境界が、参照レイヤピクチャのタイル境界と整列されているとき(302の「はい」分岐)、ビデオコーダは、拡張レイヤピクチャに対するレイヤ間予測を可能にし(308)、レイヤ間予測を使用して拡張レイヤピクチャのタイルをコード化する(310)ことができる。特に、参照レイヤピクチャのタイルをコード化した後、ビデオコーダは、参照レイヤピクチャの後続のタイルと並列に、拡張レイヤピクチャの対応するタイルをコード化することを開始し得る。
[0226]参照レイヤピクチャに対応しない拡張レイヤピクチャのタイルが存在する場合(例えば、図16に関して上記で説明したように)、ビデオコーダは、参照レイヤピクチャの任意の部分と並列にこれらのタイルコード化し得る。そのようなタイルが存在するときでも、上記で与えられた例示的な定義によって、参照レイヤピクチャ内のそのようなタイルに対して「同一位置配置された」サンプルは、利用可能にならないので、タイル境界は、依然として整列されていると言われてよい。
[0227]このようにして、図17の方法は、共通の拡張レイヤタイル内の2つのそれぞれの拡張レイヤピクチャサンプルと同一位置配置された、任意の2つの参照レイヤサンプルが、共通の参照レイヤタイル内にあるに違いないかどうかを表すシンタックス要素に対する値をコード化(例えば、符号化又は復号)することと、シンタックス要素の値に少なくとも部分的に基づいて拡張レイヤピクチャサンプルをコード化(例えば、符号化又は復号)することとを含む方法の一例を表す。
[0228]図18は、本開示の技法による、タイル境界が整列されていないときでさえも、参照レイヤピクチャと並列に、拡張レイヤピクチャのタイルをコード化するための例示的な方法を示すフローチャートである。図18の方法は、概して、ビデオコーダによって実行されるものとして説明される。ビデオコーダは、例えば、ビデオエンコーダ20又はビデオデコーダ30、あるいは他のそのようなビデオコード化機器(例えば、ビデオトランスコーディング機器(video transcoding devices))に対応し得る。
[0229]ビデオコーダは、特定の拡張レイヤタイル(即ち、対応する拡張レイヤピクチャのタイル)をコード化する前にコード化されるべき参照レイヤタイルの数(即ち、参照レイヤピクチャ内のタイルの数)を決定し得る(320)。特に、ビデオコーダは、各拡張レイヤタイルに対してコード化されるべき参照レイヤタイルの数を決定し得る。例えば、コード化はラスタ走査順序で(左から右に、上から下に)進むものと仮定すると、ビデオエンコーダ20は、特定の拡張レイヤタイルがコード化され得る前に、即ち、拡張レイヤタイルに対する参照レイヤタイル内の同一位置配置サンプルの全てがコード化される前に、コード化されるべき参照レイヤタイルの数を決定し得る。ラスタ走査順序は、例として使用されるが、他のタイル走査順序も使用され得る。ビデオエンコーダ20は、拡張レイヤタイルに対応するシンタックス要素の値、例えば、max_ref_tile_dec_idc_minus1[i]の値を符号化し得、ここで、iは、ラスタ走査順序における拡張レイヤタイルに対するインデックスを表す。ビデオデコーダ30は、拡張レイヤタイルを復号する前に復号すべきタイルの数を決定するために、シンタックス要素に対する値を復号し得る。コード化されるべき参照レイヤタイルの数を示すデータは、ビデオパラメータセット(VPS)、シーケンスパラメータセット(SPS)、ピクチャパラメータセット(SPS)、スライスヘッダ、ビデオユーザビリティ情報(VUI)、及び/又は補助強化情報(SEI)メッセージの一部を形成し得る。
[0230]次いで、ビデオコーダは、参照レイヤタイルの数がコード化されているかどうかを決定する(322)ことができる。コード化されていない場合(322の「いいえ」分岐)、ビデオコーダは、次の参照レイヤタイルをコード化する(326)ことができる。ビデオコーダは、参照レイヤタイルの決定された数がコード化されるまで、参照レイヤタイルをコード化するために進むことができる。参照レイヤタイルの数がコード化された後(322の「はい」分岐)、ビデオコーダは、1つ又は複数の参照レイヤタイルと並列に拡張レイヤタイルをコード化する(324)ことができる。
[0231]このようにして、図18の方法は、拡張レイヤピクチャのタイルがコード化され得る前にコード化される必要のあるベースレイヤピクチャ内のタイルの数を示すデータを、拡張レイヤピクチャのタイルに対してコード化(例えば、符号化又は復号)することと、タイルの数に対応するベースレイヤピクチャのタイルをコード化(例えば、符号化又は復号)することと、ベースレイヤピクチャのタイルをコード化した後に、ベースレイヤピクチャ内の少なくとも1つの他のタイルと実質的に並列に拡張レイヤピクチャのタイルをコード化(例えば、符号化又は復号)することとを含む方法の一例を表す。
[0232]例によるが、本明細書で説明した技法のうちいずれかの、幾つかの作用又はイベントは、異なるシーケンスで実行される可能性があり、追加されるか、併合されるか、又は完全に除外される場合がある(例えば、全ての説明した作用又はイベントが、本技法の実施のために必要であるとは限らない)ことは認識されたい。その上、幾つかの例では、動作又はイベントは、連続的にではなく、同時に、例えば、マルチスレッド処理、割込み処理、又は複数のプロセッサを通じて実行され得る。
[0233]1つ又は複数の例では、説明された機能は、ハードウェア、ソフトウェア、ファームウェア、又はそれらの任意の組合せで実現され得る。ソフトウェアで実装される場合、機能は、1つ又は複数の命令又はコードとしてコンピュータ可読媒体上に記憶されてよく、あるいは、コンピュータ可読媒体を介して送信され、ハードウェアベースの処理ユニットによって実行されてよい。コンピュータ可読媒体は、例えば、通信プロトコルに従って、ある場所から別の場所へのコンピュータプログラムの転送を支援する任意の媒体を含む、データ記憶媒体又は通信媒体などの有形媒体に対応するコンピュータ可読記憶媒体を含み得る。このようにして、コンピュータ可読媒体は、一般に、(1)非一時的である有形コンピュータ可読記憶媒体、又は(2)信号又は搬送波などの通信媒体に対応し得る。データ記憶媒体は、本開示で説明された技法を実装するための命令、コード及び/又はデータ構造を取り出すために、1つ以上のコンピュータ、又は1つ以上のプロセッサによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータプログラム製品は、コンピュータ可読媒体を含む場合がある。
[0234]限定ではなく例として、そのようなコンピュータ可読記憶媒体は、RAM、ROM、EEPROM(登録商標)、CD−ROM又は他の光ディスク記憶装置、磁気ディスク記憶装置、又は他の磁気記憶装置、フラッシュメモリ、若しくは、命令又はデータ構造の形態の所望のプログラムコードを記憶するために使用されコンピュータによってアクセスされ得る、任意の他の媒体を備え得る。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。例えば、命令が、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線(DSL)、又は赤外線、無線、及びマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、又は他のリモート発信源から送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、DSL、又は赤外線、無線、及びマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。しかしながら、コンピュータ可読記憶媒体及びデータ記憶媒体は、接続、搬送波、信号、又は他の一時的媒体を含まないが、代わりに非一時的な有形記憶媒体を対象とすることを理解されたい。本明細書で使用するディスク(disk)及びディスク(disc)は、コンパクトディスク(disc)(CD)、レーザーディスク(登録商標)(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピー(登録商標)ディスク(disk)及びBlu−ray(登録商標)ディスク(disc)を含み、この場合、ディスク(disk)は、通常、データを磁気的に再生し、一方、ディスク(disc)は、データをレーザーで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。
[0235]命令は、1つ以上のデジタルシグナルプロセッサ(DSP)などの1つ以上のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブル論理アレイ(FPGA)、又は他の等価な集積回路若しくはディスクリート論理回路によって実行され得る。従って、本明細書で使用される「プロセッサ」という用語は、前述の構造、又は本明細書で説明された技法の実施に適した任意の他の構造のいずれかを指し得る。加えて、幾つかの態様では、本明細書で説明された機能は、符号化及び復号のために構成された専用のハードウェア及び/又はソフトウェアモジュール内に設けられる場合があるか、又は複合コーデックに組み込まれる場合がある。また、本技法は、1つ以上の回路又は論理要素に完全に実装され得る。
[0236]本開示の技法は、ワイヤレスハンドセット、集積回路(IC)、又はICのセット(例えば、チップセット)を含む、多種多様な機器又は装置の中に実装される場合がある。本開示では、開示される技法を実行するように構成された機器の機能的態様を強調するために様々な構成要素、モジュール、又はユニットが説明されたが、それらの構成要素、モジュール、又はユニットは、必ずしも異なるハードウェアユニットによって実現する必要があるとは限らない。むしろ、前述のように、適切なソフトウェア及び/又はファームウェアとともに、様々なユニットがコーデックハードウェアユニットにおいて組み合わせられ得るか、又は前述のような1つもしくは複数のプロセッサを含む、相互動作可能なハードウェアユニットの集合体によって設けられ得る。
[0237]種々の例が記載された。これら及び他の例は、以下の特許請求の範囲内である。
以下に本件出願当初の特許請求の範囲に記載された発明を付記する。
[1] ビデオデータを復号する方法であって、共通の拡張レイヤタイル内の2つのそれぞれの拡張レイヤピクチャサンプルと同一位置配置された任意の2つの参照レイヤサンプルが、共通の参照レイヤタイル内になければならないかどうかを表す、シンタックス要素に対する値を復号することと、前記シンタックス要素の前記値に少なくとも部分的に基づいて、前記拡張レイヤピクチャサンプルを復号することとを備える、方法。
[2] 前記値が、第2の2つの拡張レイヤサンプルと同一位置配置され、前記共通の参照レイヤタイル内にない任意の第2の2つの参照レイヤサンプルに対して、前記第2の2つの拡張レイヤサンプルが、両方とも第2の共通の参照レイヤタイル内にあってはいけないことを更に示す、[1]に記載の方法。
[3] 前記共通の拡張レイヤタイルが第1の共通の拡張レイヤタイルを備え、前記共通の参照レイヤタイルが第1の拡張レイヤタイルを備え、前記2つの参照レイヤサンプルが第1の2つの参照レイヤサンプルを備え、前記2つのそれぞれの拡張レイヤピクチャサンプルが第1の2つのそれぞれの拡張レイヤピクチャサンプルを備え、前記値が、第2の共通の参照レイヤタイル内の第2の2つのそれぞれの参照レイヤサンプルを指す任意の第2の2つの拡張レイヤピクチャサンプルが第2の共通の拡張レイヤタイル内になければならないかどうかを更に表す、[1]に記載の方法。
[4] 前記値が、前記第1の2つの参照レイヤサンプルが利用可能であるときだけ、前記第1の2つの参照レイヤサンプルが前記共通の参照レイヤタイル内になければならないことと、前記第2の2つの拡張レイヤサンプルが利用可能であるときだけ、前記第2の2つの拡張レイヤピクチャサンプルが前記第2の共通の拡張レイヤタイル内になければならないこととを示す、[3]に記載の方法。
[5] シンタックス要素の値を復号することを更に備え、前記値が、前記共通の参照レイヤタイル内にある任意の2つの参照レイヤピクチャサンプルに対して、前記同一位置配置された拡張レイヤサンプルもまた前記共通の拡張レイヤタイル内にあることを示す、[1]に記載の方法。
[6] 前記シンタックス要素が、tile_boundaries_aligned_flagを備える、[5]に記載の方法。
[7] ビデオデータを符号化する方法であって、共通の拡張レイヤタイル内の2つのそれぞれの拡張レイヤピクチャサンプルと同一位置配置された任意の2つの参照レイヤサンプルが、共通の参照レイヤタイル内になければならないかどうかを表す、シンタックス要素に対する値を符号化することと、前記シンタックス要素の前記値に少なくとも部分的に基づいて、前記拡張レイヤピクチャサンプルを符号化することとを備える、方法。
[8] 前記値が、第2の2つの拡張レイヤサンプルと同一位置配置され、前記共通の参照レイヤタイル内にない任意の第2の2つの参照レイヤサンプルに対して、前記第2の2つの拡張レイヤサンプルが、両方とも第2の共通の参照レイヤタイル内にあってはいけないことを更に示す、[7]に記載の方法。
[9] 前記共通の拡張レイヤタイルが第1の共通の拡張レイヤタイルを備え、前記共通の参照レイヤタイルが第1の拡張レイヤタイルを備え、前記2つの参照レイヤサンプルが第1の2つの参照レイヤサンプルを備え、前記2つのそれぞれの拡張レイヤピクチャサンプルが第1の2つのそれぞれの拡張レイヤピクチャサンプルを備え、前記値が、第2の共通の参照レイヤタイル内の第2の2つのそれぞれの参照レイヤサンプルを指す任意の第2の2つの拡張レイヤピクチャサンプルが第2の共通の拡張レイヤタイル内になければならないかどうかを更に表す、[7]に記載の方法。
[10] 前記値が、前記第1の2つの参照レイヤサンプルが利用可能であるときだけ、前記第1の2つの参照レイヤサンプルが前記共通の参照レイヤタイル内になければならないことと、前記第2の2つの拡張レイヤサンプルが利用可能であるときだけ、前記第2の2つの拡張レイヤピクチャサンプルが前記第2の共通の拡張レイヤタイル内になければならないこととを示す、[9]に記載の方法。
[11] シンタックス要素の値を符号化することを更に備え、前記値が、前記共通の参照レイヤタイル内にある任意の2つの参照レイヤピクチャサンプルに対して、前記同一位置配置された拡張レイヤサンプルもまた前記共通の拡張レイヤタイル内にあることを示す、[7]に記載の方法。
[12] 前記シンタックス要素が、tile_boundaries_aligned_flagを備える、[11]に記載の方法。
[13] ビデオデータをコード化するための装置であって、共通の拡張レイヤタイル内の2つのそれぞれの拡張レイヤピクチャサンプルと同一位置配置された任意の2つの参照レイヤサンプルが、共通の参照レイヤタイル内になければならないかどうかを表す、シンタックス要素に対する値をコード化することと、前記シンタックス要素の前記値に少なくとも部分的に基づいて、前記拡張レイヤピクチャサンプルをコード化することとを行うように構成されたビデオコーダを備える、装置。
[14] 前記値が、第2の2つの拡張レイヤサンプルと同一位置配置され、前記共通の参照レイヤタイル内にない任意の第2の2つの参照レイヤサンプルに対して、前記第2の2つの拡張レイヤサンプルが、両方とも第2の共通の参照レイヤタイル内にあってはいけないことを更に示す、[13]に記載の装置。
[15] 前記共通の拡張レイヤタイルが第1の共通の拡張レイヤタイルを備え、前記共通の参照レイヤタイルが第1の拡張レイヤタイルを備え、前記2つの参照レイヤサンプルが第1の2つの参照レイヤサンプルを備え、前記2つのそれぞれの拡張レイヤピクチャサンプルが第1の2つのそれぞれの拡張レイヤピクチャサンプルを備え、前記値が、第2の共通の参照レイヤタイル内の第2の2つのそれぞれの参照レイヤサンプルを指す任意の第2の2つの拡張レイヤピクチャサンプルが第2の共通の拡張レイヤタイル内になければならないかどうかを更に表す、[13]に記載の装置。
[16] 前記値が、前記第1の2つの参照レイヤサンプルが利用可能であるときだけ、前記第1の2つの参照レイヤサンプルが前記共通の参照レイヤタイル内になければならないことと、前記第2の2つの拡張レイヤサンプルが利用可能であるときだけ、前記第2の2つの拡張レイヤピクチャサンプルが前記第2の共通の拡張レイヤタイル内になければならないこととを示す、[15]に記載の装置。
[17] 前記ビデオコーダが、シンタックス要素の値を処理するように更に構成され、前記値が、前記共通の参照レイヤタイル内にある任意の2つの参照レイヤピクチャサンプルに対して、前記同一位置配置された拡張レイヤサンプルもまた前記共通の拡張レイヤタイル内にあることを示す、[13]に記載の装置。
[18] 前記シンタックス要素が、tile_boundaries_aligned_flagを備える、[17]に記載の装置。
[19] 前記シンタックス要素の前記値を処理するために、前記ビデオコーダが、前記シンタックス要素をコード化するように構成される、[17]に記載の装置。
[20] 前記シンタックス要素の前記値を処理するために、前記ビデオコーダが、符号化されたビデオビットストリームに含めるための、前記シンタックス要素に対する前記値を生成するように構成される、[17]に記載の装置。
[21] 前記ビデオコーダが、ビデオエンコーダ又はビデオデコーダの少なくとも一方を備える、[13]に記載の装置。
[22] ビデオデータをコード化するための装置であって、共通の拡張レイヤタイル内の2つのそれぞれの拡張レイヤピクチャサンプルと同一位置配置された任意の2つの参照レイヤサンプルが、共通の参照レイヤタイル内になければならないかどうかを表す、シンタックス要素に対する値をコード化するための手段と、前記シンタックス要素の前記値に少なくとも部分的に基づいて、前記拡張レイヤピクチャサンプルをコード化するための手段とを備える、装置。
[23] 前記値が、第2の2つの拡張レイヤサンプルと同一位置配置され、前記共通の参照レイヤタイル内にない任意の第2の2つの参照レイヤサンプルに対して、前記第2の2つの拡張レイヤサンプルが、両方とも第2の共通の参照レイヤタイル内にあってはいけないことを更に示す、[22]に記載の装置。
[24] 前記共通の拡張レイヤタイルが第1の共通の拡張レイヤタイルを備え、前記共通の参照レイヤタイルが第1の拡張レイヤタイルを備え、前記2つの参照レイヤサンプルが第1の2つの参照レイヤサンプルを備え、前記2つのそれぞれの拡張レイヤピクチャサンプルが第1の2つのそれぞれの拡張レイヤピクチャサンプルを備え、前記値が、第2の共通の参照レイヤタイル内の第2の2つのそれぞれの参照レイヤサンプルを指す任意の第2の2つの拡張レイヤピクチャサンプルが第2の共通の拡張レイヤタイル内になければならないかどうかを更に表す、[22]に記載の装置。
[25] 前記値が、前記第1の2つの参照レイヤサンプルが利用可能であるときだけ、前記第1の2つの参照レイヤサンプルが前記共通の参照レイヤタイル内になければならないことと、前記第2の2つの拡張レイヤサンプルが利用可能であるときだけ、前記第2の2つの拡張レイヤピクチャサンプルが前記第2の共通の拡張レイヤタイル内になければならないこととを示す、[24]に記載の装置。
[26] シンタックス要素の値を処理するための手段を更に備え、前記値が、前記共通の参照レイヤタイル内にある任意の2つの参照レイヤピクチャサンプルに対して、前記同一位置配置された拡張レイヤサンプルもまた前記共通の拡張レイヤタイル内にあることを示す、[22]に記載の装置。
[27] 前記シンタックス要素が、tile_boundaries_aligned_flagを備える、[26]に記載の装置。
[28] 前記シンタックス要素の前記値を処理するための前記手段が、前記シンタックス要素をコード化するための手段を備える、[26]に記載の装置。
[29] 前記シンタックス要素の前記値を処理するための前記手段が、符号化されたビデオビットストリームに含めるための、前記シンタックス要素に対する前記値を生成するための手段を備える、[26]に記載の装置。
[30] 命令を記憶したコンピュータ可読記憶媒体であって、前記命令が、実行されたとき、プロセッサに、共通の拡張レイヤタイル内の2つのそれぞれの拡張レイヤピクチャサンプルと同一位置配置された任意の2つの参照レイヤサンプルが、共通の参照レイヤタイル内になければならないかどうかを表す、シンタックス要素に対する値をコード化することと、前記シンタックス要素の前記値に少なくとも部分的に基づいて、前記拡張レイヤピクチャサンプルをコード化することとを行わせる、コンピュータ可読記憶媒体。
[31] 前記値が、第2の2つの拡張レイヤサンプルと同一位置配置され、前記共通の参照レイヤタイル内にない任意の第2の2つの参照レイヤサンプルに対して、前記第2の2つの拡張レイヤサンプルが、両方とも第2の共通の参照レイヤタイル内にあってはいけないことを更に示す、[30]に記載のコンピュータ可読記憶媒体。
[32] 前記共通の拡張レイヤタイルが第1の共通の拡張レイヤタイルを備え、前記共通の参照レイヤタイルが第1の拡張レイヤタイルを備え、前記2つの参照レイヤサンプルが第1の2つの参照レイヤサンプルを備え、前記2つのそれぞれの拡張レイヤピクチャサンプルが第1の2つのそれぞれの拡張レイヤピクチャサンプルを備え、前記値が、第2の共通の参照レイヤタイル内の第2の2つのそれぞれの参照レイヤサンプルを指す任意の第2の2つの拡張レイヤピクチャサンプルが第2の共通の拡張レイヤタイル内になければならないかどうかを更に表す、[30]に記載のコンピュータ可読記憶媒体。
[33] 前記値が、前記第1の2つの参照レイヤサンプルが利用可能であるときだけ、前記第1の2つの参照レイヤサンプルが前記共通の参照レイヤタイル内になければならないことと、前記第2の2つの拡張レイヤサンプルが利用可能であるときだけ、前記第2の2つの拡張レイヤピクチャサンプルが前記第2の共通の拡張レイヤタイル内になければならないこととを示す、[32]に記載のコンピュータ可読記憶媒体。
[34] シンタックス要素の値を前記プロセッサに処理させる命令を更に備え、前記値が、前記共通の参照レイヤタイル内にある任意の2つの参照レイヤピクチャサンプルに対して、前記同一位置配置された拡張レイヤサンプルもまた前記共通の拡張レイヤタイル内にあることを示す、[30]に記載のコンピュータ可読記憶媒体。
[35] 前記シンタックス要素が、tile_boundaries_aligned_flagを備える、[34]に記載のコンピュータ可読記憶媒体。
[36] 前記シンタックス要素の前記値を前記プロセッサに処理させる前記命令が、前記シンタックス要素を前記プロセッサにコード化させる命令を備える、[34]に記載のコンピュータ可読記憶媒体。
[37] 前記シンタックス要素の前記値を前記プロセッサに処理させる前記命令が、符号化されたビデオビットストリームに含めるための、前記シンタックス要素に対する前記値を前記プロセッサに生成させる命令を備える、[34]に記載のコンピュータ可読記憶媒体。