本発明は、ビデオの符号化・復号装置及びその方法、コンピュータプログラムに関する。
背景情報
動画の使用事例の中には、高解像度動画の一部の抽出を要求するものがある。こうした事例には、例えば動画の特定領域の拡大や、動画の特定対象の追跡、ビデオシーケンスにおける限定領域のコンテンツの修正又は解析が含まれる。こうした使用事例の最も素直な実装には、ピクチャの完全復号とそれに関する望ましい処理の実行が含まれてもよい。この種のアプローチは結果として、演算処理に関する高い要求や消費電力の増加、処理速度の低下を招くことになる。
H.265/HEVC規格のタイル及びH.265/HEVC・H.264/AVC規格のスライスにより、ビデオエンコーダは、互いに独立で復号できる所定のピクチャを生成することができる。そしてデコーダは、関心のあるサンプル値にアクセスするために復号を要するタイル又はスライスを選択することができる。しかしこのアプローチの欠点は、エンコーダがピクチャを複数のタイル又はスライスから成る固定グリッドに分割する必要があるということである。個々のタイル又はスライスの領域を小さくするほど、独立に復号可能な特定されるべきピクセル領域の数が増えるが、同時に符号化効率も著しく落ちることになる。これは、エンコーダが現在のスライス又はタイルの情報を予測するために別のスライス又はタイルからの情報を利用することができないからである。
また別の欠点として、デコーダでも典型的には、実際の関心領域以外に相当量のピクセルを復号する必要があることも挙げられる。これは、関心領域に交わる全てのスライス又はタイルを復号する必要があるからである。
摘要
本発明はこうした考察から得られたものであり、以下では、ビデオフレーム内の関心領域の復号を、その領域外にある不要データを完全に復号しなくても行えるようにするために、ビデオフレーム内のこうした領域へのランダムアクセスを実行する改良方法を導入する。
第1の実施形態に従う方法には、ビットストリームから符号化ビデオ表現を復号する方法であって、
前記ビットストリームの範囲内の全てのサンプルが予測制約付きで符号化されたこと示す標示子を復号することと;
前記範囲がピクチャ内の関心領域をカバーすることを決定することと;
復号順で前記関心領域より先にある少なくとも1つの第1符号化単位を、解析モードであって、該少なくとも1つの第1符号化単位に属するシンタックス要素が解析されるが、該シンタックス要素のサンプル再構成処理は省略される、該解析モードで復号することと;
前記関心領域に属する少なくとも1つの第2符号化単位を、該少なくとも1つの第2符号化単位に属するシンタックス要素が解析され、かつ該シンタックス要素に対するサンプル再構成処理が実行されるように復号することと
を含む、方法。
実施形態によっては、前記予測制約は次の1つ又は複数を含む:
・ 前記サンプルに対してイントラ符号化が使用されなかったこと;
・ 前記サンプルに対してイントラ予測が使用されなかったこと;
・ 前記サンプルに対してインピクチャサンプル予測が使用されなかったこと;
・ サンプルの基本単位の境界を跨ぐイントラ予測が使用されなかったこと;
・ サンプルの基本単位の境界を跨ぐインピクチャサンプル予測が使用されなかったこと;
・ 前記サンプルに対してピクチャ間予測のみが使用されたこと。
実施形態によっては、前記方法は更に、前記範囲が次の1つ又は複数であることを推定すること又は復号することを含む:
・ ビットストリーム;
・ ビットストリームのインター予測ピクチャ;
・ ビットストリーム内における少なくとも1つのスケーラビリティレイヤ;
・ ピクチャ;
・ 関心領域。
実施形態によっては、前記方法は更に、解析のみ行われる第1符号化単位を選択し、復号順で該第1符号化単位より先にある符号化単位の解析及び復号を省略することを含む。
実施形態によっては、前記方法は更に、解析モードで復号される第1符号化単位を、どのスライス、タイル及び/又は波面が符号化単位の符号化に使用されたかに基づいて選択することを含む。
実施形態によっては、タイルも波面も使用されなかった場合、前記解析モードで復号される第1符号化単位は、完全復号モードで復号される領域の左上符号化単位から復号順で直前のスライスの第1符号化単位として選択され、ここで符号化単位は解析され、サンプル再構成処理を受ける。
実施形態によっては、波面が使用された場合、前記解析モードで復号される第1符号化単位は、完全復号モードで復号される領域の左上符号化単位を含むCTU行の第1符号化単位として選択される。
実施形態によっては、タイルが使用された場合、前記解析モードで復号される第1符号化単位は、完全復号モードで復号される領域の左上符号化単位から復号順で直前のタイルの第1符号化単位として選択される。
実施形態によっては、前記方法は更に、前記ビットストリーム内又はそれで示されるエントリポイントからCTU行又はタイルに関する符号化データの開始位置を決めることを含む。
実施形態によっては、前記方法は更に、どのスライス、タイル及び/又は波面が符号化単位の符号化に使用されたかに基づいて、解析及び復号が省略される符号化単位を選択することを含む。
実施形態によっては、タイルも波面も使用されておらず、スライスが完全復号モードで復号される領域の一部でもない場合、スライスの解析及び復号が省略されてもよい。
実施形態によっては、波面が使用されていて、CTU行が完全復号モードで復号される領域の一部でもない場合、CTU行の解析及び復号が省略されてもよい。
実施形態によっては、タイルが使用されていて、タイルが完全復号モードで復号される領域の一部でもない場合、タイルの解析及び復号が省略されてもよい。
実施形態によっては、前記方法は更に、ピクチャの完全復号が望まれる場合、完全ピクチャのために完全復号モードで実行することを含む。
実施形態によっては、前記標示子が適用される関心領域は、完全ビデオフレーム、スライス、タイル、フレームパケットビデオの構成ピクチャ、又は他の方法で標示される領域の1つである。
実施形態によっては、前記標示子は、前記関心領域に対してインループフィルタリング処理が望まれることを示す。
実施形態によっては、前記完全復号モードは、標準対応復号とは異なって復号される領域しかない場合の修正復号処理を含む。
実施形態によっては、前記方法は更に、符号化ピクチャの符号化ツリー単位又は符号化単位の少なくとも1つのポイントに対してエントロピー復号エントリポイント(EDEP)データを生成することを含む。
実施形態によっては、前記方法は更に、前記解析モードで復号される第1符号化単位を選択するために、CTU行又はタイルのエントリポイントと同様にEDEPデータを復号し、使用することを含む。
第2の実施形態に従う装置は:
符号化ビデオ表現を含むビットストリームを復号するように構成されるビデオデコーダであって、
前記ビットストリームの範囲内の全てのサンプルが予測制約付きで符号化されたこと示す標示子を復号することと;
前記範囲がピクチャ内の関心領域をカバーすることを決定することと;
復号順で前記関心領域より先にある少なくとも1つの第1符号化単位を、解析モードであって、該少なくとも1つの第1符号化単位に属するシンタックス要素が解析されるが、該シンタックス要素のサンプル再構成処理は省略される、該解析モードで復号することと;
前記関心領域に属する少なくとも1つの第2符号化単位を、該少なくとも1つの第2符号化単位に属するシンタックス要素が解析され、かつ該シンタックス要素に対するサンプル再構成処理が実行されるように復号することと
を実行するように構成されるビデオデコーダを備える。
第3の実施形態によれば、装置によって利用されるコードで格納されるコンピュータ可読記憶媒体であって、前記コードがプロセッサによって実行されると、前記装置に:
前記ビットストリームの範囲内の全てのサンプルが予測制約付きで符号化されたこと示す標示子を復号することと;
前記範囲がピクチャ内の関心領域をカバーすることを決定することと;
復号順で前記関心領域より先にある少なくとも1つの第1符号化単位を、解析モードであって、該少なくとも1つの第1符号化単位に属するシンタックス要素が解析されるが、該シンタックス要素のサンプル再構成処理は省略される、該解析モードで復号することと;
前記関心領域に属する少なくとも1つの第2符号化単位を、該少なくとも1つの第2符号化単位に属するシンタックス要素が解析され、かつ該シンタックス要素に対するサンプル再構成処理が実行されるように復号することと
を実行させる、コンピュータ可読記憶媒体が提供される。
第4の実施形態によれば、少なくとも1つのプロセッサ及び少なくとも1つのメモリであって、前記少なくとも1つのメモリはそこにコードを格納し、前記コードは、前記少なくとも1つのプロセッサによって実行されると、装置に:
前記ビットストリームの範囲内の全てのサンプルが予測制約付きで符号化されたこと示す標示子を復号することと;
前記範囲がピクチャ内の関心領域をカバーすることを決定することと;
復号順で前記関心領域より先にある少なくとも1つの第1符号化単位を、解析モードであって、該少なくとも1つの第1符号化単位に属するシンタックス要素が解析されるが、該シンタックス要素のサンプル再構成処理は省略される、該解析モードで復号することと;
前記関心領域に属する少なくとも1つの第2符号化単位を、該少なくとも1つの第2符号化単位に属するシンタックス要素が解析され、かつ該シンタックス要素に対するサンプル再構成処理が実行されるように復号することと
を実行させる、少なくとも1つのプロセッサ及び少なくとも1つのメモリが提供される。
第5の実施形態に従う方法には、ビデオ表現を符号化する方法であって、
第1のピクチャを符号化することと;
前記第1のピクチャから第2のピクチャ内の少なくとも1つの領域を予測制約付きで符号化することと;
第2の符号化ピクチャに関連する標示子であって、前記予測制約が前記第2のピクチャにおける前記領域の少なくとも複数のサンプルに使用されたことを示す、前記標示子を生成することと
を含む方法が含まれる。
実施形態によっては、前記予測制約は次の1つ又は複数を含む:
・ 前記サンプルに対してイントラ符号化が使用されなかったこと;
・ 前記サンプルに対してイントラ予測が使用されなかったこと;
・ 前記サンプルに対してインピクチャサンプル予測が使用されなかったこと;
・ サンプルの基本単位の境界を跨ぐイントラ予測が使用されなかったこと;
・ サンプルの基本単位の境界を跨ぐインピクチャサンプル予測が使用されなかったこと;
・ 前記サンプルに対してピクチャ間予測のみが使用されたこと。
実施形態によっては、エンコーダは前記標示子を次の1つ又は複数に含め、デコーダはそれらから前記標示子を復号することができる:
・ 補助拡張情報(SEI)メッセージ;
・ シーケンスパラメータセット(SPS);
・ ピクチャパラメータセット(PPS);
・ ビデオユーザビリティ情報(VUI);
・ コンテナファイルフォーマット構造。
実施形態によっては、前記方法は更に、符号化ピクチャの符号化ツリー単位又は符号化単位の少なくとも1つのポイントに対してエントロピー復号エントリポイント(EDEP)データを生成することを含む。
第6の実施形態に従う装置は:
符号化ビデオ表現を符号化するように構成されるビデオエンコーダであって、
第1のピクチャを符号化することと;
前記第1のピクチャから第2のピクチャ内の少なくとも1つの領域をインター符号化のみを用いて符号化することと;
第2の符号化ピクチャに関連する標示子であって、前記第2のピクチャ内の少なくとも前記領域に対してインター予測のみが使用されたことを示す、前記標示子を生成することと
を実行するように構成されるビデオエンコーダを備える。
第7の実施形態によれば、装置によって利用されるコードで格納されるコンピュータ可読記憶媒体であって、前記コードがプロセッサによって実行されると、前記装置に:
第1のピクチャを符号化することと;
前記第1のピクチャから第2のピクチャ内の少なくとも1つの領域を予測制約付きで符号化することと;
第2の符号化ピクチャに関連する標示子であって、前記予測制約が前記第2のピクチャにおける前記領域の少なくとも複数のサンプルに使用されたことを示す、前記標示子を生成することと
を実行させる、コンピュータ可読記憶媒体が提供される。
第8の実施形態によれば、少なくとも1つのプロセッサ及び少なくとも1つのメモリであって、前記少なくとも1つのメモリはそこにコードを格納し、前記コードは、前記少なくとも1つのプロセッサによって実行されると、装置に:
第1のピクチャを符号化することと;
前記第1のピクチャから第2のピクチャ内の少なくとも1つの領域を予測制約付きで符号化することと;
第2の符号化ピクチャに関連する標示子であって、前記予測制約が前記第2のピクチャにおける前記領域の少なくとも複数のサンプルに使用されたことを示す、前記標示子を生成することと
を実行させる、少なくとも1つのプロセッサ及び少なくとも1つのメモリが提供される。
第9の実施形態によれば、符号化ビデオ表現を含むビットストリームを復号するように構成されるビデオデコーダであって、
前記ビットストリームの範囲内の全てのサンプルが予測制約付きで符号化されたこと示す標示子を復号することと;
前記範囲がピクチャ内の関心領域をカバーすることを決定することと;
復号順で前記関心領域より先にある少なくとも1つの第1符号化単位を、解析モードであって、該少なくとも1つの第1符号化単位に属するシンタックス要素が解析されるが、該シンタックス要素のサンプル再構成処理は省略される、該解析モードで復号することと;
前記関心領域に属する少なくとも1つの第2符号化単位を、該少なくとも1つの第2符号化単位に属するシンタックス要素が解析され、かつ該シンタックス要素に対するサンプル再構成処理が実行されるように復号することと
を実行するように構成される、ビデオデコーダが提供される。
第10の実施形態によれば、符号化ビデオ表現を符号化するように構成されるビデオエンコーダであって、
第1のピクチャを符号化することと;
前記第1のピクチャから第2のピクチャ内の少なくとも1つの領域を予測制約付きで符号化することと;
第2の符号化ピクチャに関連する標示子であって、前記予測制約が前記第2のピクチャにおける前記領域の少なくとも複数のサンプルに使用されたことを示す、前記標示子を生成することと
を実行するように構成される、ビデオエンコーダが提供される。
本発明の深い理解に資すべく、例として添付図面を参照されたい。
本発明の実施形態を採用する電子デバイスを概略的に示す。
本発明の実施形態の採用に適したユーザ装置を概略的に示す。
本発明の実施形態を採用し、無線および有線ネットワーク接続を用いて接続される複数の電子デバイスも概略的に示す。
本発明の実施形態の実装に適したエンコーダを概略的に示す。
本発明の実施形態に従う復号処理のフローチャートを示す。
本発明の実施形態に従う復号処理の実施例を示す。
本発明の実施形態に従う復号処理の別の実施例を示す。
本発明の実施形態に従う復号処理の更に別の実施例を示す。
本発明の特定の実施形態に従うデコーダの概略図を示す。
本発明の実施形態に従う符号化処理のフローチャートを示す。
本発明の実施形態の実装に適した汎用マルチメディア通信システムの実施例を示す。
例示的実施形態の説明
以下では、実施形態を遂行するための好適な装置及び想定される機構について、さらに詳しく説明する。この観点から、まず図1を参照する。図1には、本発明の実施形態に係るコーデックを組み込むことができる例示的装置又は電子デバイス50の概略ブロック図が示されている。
電子デバイス50は例えば、移動端末や無線通信システムにおけるユーザ機器であってもよい。ただし、本発明の実施形態は、符号化および復号、またはビデオ画像の符号化や復号を要する任意の電子デバイスや装置に実装できることを理解されたい。
装置50は、デバイスを組込んで保護するハウジング30を備えてもよい。装置50はまた、液晶表示の形態でディスプレイ32を備えてもよい。本発明の他の実施形態では、ディスプレイは画像やビデオを表示するのに適した任意適当なディスプレイ技術によるものでもよい。装置50はまた、キーパッド34を備えてもよい。本発明の他の実施形態では、任意適当なデータインタフェースやユーザインタフェースの機構が用いられてもよい。例えば、ユーザインタフェースはタッチセンサ式ディスプレイに属する仮想キーボードやデータ入力システムとして実装されてもよい。装置はマイクロフォン36や、デジタルまたはアナログ信号の任意適当な音声入力を備えてもよい。装置50はまた、音声出力デバイスを備えてもよく、本発明の実施形態では次の何れか1つでもよい:イヤホン38,スピーカ,アナログ音声またはデジタル音声出力接続。装置50はまた、バッテリ40を備えてもよい(または、本発明の他の実施形態では、太陽電池や燃料電池,時計仕掛けの発電機などの任意適当な携帯エネルギー装置によって電源供給されてもよい)。装置はまた、他のデバイスと短可視距離通信するための赤外線ポート42を備えてもよい。他の実施形態では、装置50はさらに、ブルートゥース(登録商標)無線通信やUSB/FireWire有線接続などの任意適当な短距離通信ソリューションを備えてもよい。
装置50は、装置50を制御するコントローラ56またはプロセッサを備えてもよい。コントローラ56はメモリ58に接続されてもよい。本発明の実施形態では、メモリは、画像形態におけるデータと音声データの両方を格納してもよく、および/または、コントローラ56に実装される命令を格納してもよい。また、コントローラ56はコーデック回路54に接続されてもよい。コーデック回路は、音声および/またはビデオデータの符号化・復号の遂行や、コントローラ56が遂行する符号化・復号を補助するのに適している。
装置50はまた、カードリーダー48とスマートカード46を備えてもよい。例えば、ユーザ情報を提供し、ネットワークでユーザ認証および認可のための認証情報を提供するのに適したUICCおよびUICCリーダーを備えてもよい。
装置50は、コントローラに接続され、無線通信信号を生成するのに適した無線インタフェース回路52を備えてもよい。無線通信は例えば、携帯通信ネットワークや無線通信システム,無線ローカルエリアネットワークでの通信である。また、装置50は無線インタフェース回路52に接続されたアンテナ44を備えてもよい。アンテナは、無線インタフェース回路52で生成された無線信号を他の(1または複数の)装置へ送信し、無線信号を他の(1または複数の)装置から受信する。
本発明の実施形態によっては、装置50は個別のフレームを記録または検出できるカメラを備え、このフレームは処理用のコーデック54またはコントローラに渡される。本発明の他の実施形態では、装置が処理対象のビデオ画像データを伝送及び/又は記憶する前に別のデバイスから受信してもよい。本発明の他の実施形態では、装置50は、符号化用/復号用画像を無線または有線の何れかで受信してもよい。
図3では、本発明の実施形態において利用可能なシステムの実施例が示されている。システム10は、1つ又は複数のネットワークを通じて通信できる複数の通信デバイスを含む。システム10は任意の無線または有線ネットワークの組合せを含んでよく、無線携帯電話ネットワーク(GSM(登録商標)やUMTS,CDMAネットワーク等)やIEEE 802.xの何れかの規格で規定される無線ローカルエリアネットワーク(WLAN),ブルートゥース(登録商標)パーソナルエリアネットワーク,イーサネット(登録商標)ローカルエリアネットワーク,トークンリング・ローカルエリアネットワーク,広域ネットワーク,インターネットを含んでもよい。ただし、これらに限定されない。
システム10は無線・有線両方の通信デバイスを含んでもよく、本発明の実施形態を実装するのに適した装置50を含んでもよい。
例えば、図3に示すシステムは、携帯電話ネットワーク11とインターネット28を表わす表現を示している。インターネット28への接続は長距離無線接続や短距離無線接続,様々な有線接続を含んでもよいが、これらに限定されない。有線接続には電話回線やケーブル線,電力線,その他同様の通信線が含まれるが、これらに限定されない。
システム10に示される例示的通信デバイスは電子デバイスや装置50,携帯情報端末(PDA)16,PDAと携帯電話14の組合せ,統合通信デバイス(integrated messaging device; IMD)18,デスクトップコンピュータ20,ノート型コンピュータ22を含んでもよい。ただし、これらに限定されない。装置50は固定型でもよく、移動する人が持ち運べる携帯型でもよい。また、装置50は移動手段に配置されてもよい。こうした移動手段には自動車やトラック,タクシー,バス,列車,船/ボート,飛行機,自転車,バイク,その他同様の適切な移動手段が含まれるが、これらに限定されない。
一部の又はさらなる装置は、呼び出し及びメッセージを送受信してもよく、基地局24への無線接続25を介してサービスプロバイダと通信してもよい。基地局24は、携帯電話ネットワーク11とインターネット28間の通信を可能にするネットワークサーバ26に接続されてもよい。システムは、付加的な通信デバイスと様々な種類の通信デバイスを含んでもよい。
通信デバイスは様々な伝送技術を用いて通信してもよく、こうした技術には符号分割多元接続(CDMA)やGSM(登録商標),ユニバーサル携帯電話システム(UMTS),時分割多元接続(TDMA),周波数分割多元接続(FDMA),TCP-IP(transmission control protocol-internet protocol),ショートメッセージサービス(SMS),マルチメディアメッセージサービス(MMS),電子メール,IMS(instant messaging service),ブルートゥース(登録商標), IEEE 802.11,その他類似の無線通信技術を含む。ただし、これらに限定されない。本発明の様々な実施形態への実装に含まれる通信デバイスは、様々な媒体を介して通信できる。こうした媒体として、無線,赤外線,レーザー,ケーブル接続,その他適切な接続が含まれるが、これらに限定されない。
ビデオコーデックは、入力されたビデオを保存/伝送に適した圧縮表現に変換するエンコーダと、その圧縮表現を可視形態に戻す復元を行えるデコーダから成る。典型的なエンコーダは、ビデオをよりコンパクトな形態で(即ち、低いビットレートで)表現するために、元のビデオシーケンスの情報の一部を切り捨てる。
ITU-T H.263やH.264等の典型的なハイブリッドビデオコーデックは、ビデオ情報を2段階で符号化する。第1段階で、例えば動き補償手段(符号化されるブロックと密接に対応する、先に符号化済みのビデオフレームの1つにある領域を探して示す手段)や空間手段(特定の方法で符号化されるブロックの周辺のピクセル値を用いる手段)によって、特定のピクチャ領域(又は「ブロック」)のピクセル値が予測される。第2段階で、予測誤差、即ちピクセルの予測ブロックとそのピクセルの元のブロックとの間の差が符号化される。これは通常、特定の変換(例えば、離散コサイン変換(DCT)やその変形)を用いてピクセル値の差を変換し、係数を量子化し、量子化済み係数をエントロピー符号化することによって行われる。量子化処理の忠実性を変えることによって、エンコーダはピクセル表現の正確性(ピクチャ品質)と結果として得られる符号化ビデオ表現のサイズ(ファイルサイズ又は伝送ビットレート)との間のバランスを制御することができる。
ビデオ符号化は通常2段階から成る。第1段階で。先に符号化済みのデータに基づいて、ビデオ信号の予測が行われる。第2段階で、予測信号と原信号との間の残差が符号化される。インター予測は時間予測とも呼ばれるが、このインター予測や動き補償、動き補償予測が時間冗長性を小さくする。インター予測では、予測の源泉は先に復号済みのピクチャである。イントラ予測では、同一ピクチャ内の隣接ピクセル同士に相関があることが見込まれるという事実が利用される。イントラ予測は、空間ドメイン又は変換ドメインで行うことができる。すなわち、サンプル値又は変換係数の何れかを予測することができる。イントラ符号化では通常イントラ予測が利用され、インター予測が適用されることはない。
符号化処理の成果として、動きベクトルと量子化変換係数のような符号化パラメータセットがある。多くのパラメータは、最初に空間的又は時間的に隣接するパラメータから予測される場合、それをより効率的にエントロピー符号化することができる。例えば、動きベクトルは空間的に隣接する動きベクトルから予測されてもよく、動きベクトル予測器との相対差のみが符号化されてもよい。ピクチャ内での符号化パラメータの予測、及びイントラ予測は、まとめてインピクチャ予測とも呼ばれる。
図4には、本発明の実施形態を実行するのに適したビデオエンコーダのブロック図が示されている。図4は、ピクセル予測器302と予測誤差エンコーダ303,予測誤差デコーダ304を備えるようなエンコーダを示す。図4はまた、インター予測器306とイントラ予測器308,モードセレクタ310,フィルタ316,リファレンスフレームメモリ318を備えるようなピクセル予測器302の実施形態を示す。ピクセル予測器302は、インター予測器306とイントラ予測器308の両方で符号化される画像300を受信する(インター予測器306はこの画像と動き補償リファレンスフレーム318との間の差を決定し、イントラ予測器308は現フレームまたはピクチャで処理済みの部分のみに基づいて画像ブロックの予測を決定する)。インター予測器とイントラ予測器の両方からの出力はモードセレクタ310に送られる。イントラ予測器308は複数のイントラ予測モードを持っていてよい。したがって、モード毎にイントラ予測が行われ、予測信号がモードセレクタ310に提供されてもよい。モードセレクタ310も画像300のコピーを受信する。
現在のブロックを符号化するためにどの符号化モードが選択されたかに応じて、モードセレクタ310内ではインター予測器306の出力、オプションのイントラ予測器の出力、又は外側エンコーダの出力がモードセレクタの出力に渡される。モードセレクタの出力は第1の加算器321に送られる。第1の加算器は、予測誤差エンコーダ303への入力である第1の予測誤差信号320を生成するために、画像300からピクセル予測器302の出力を引いてもよい。
ピクセル予測器302はさらに、画像ブロック312の予測表現と予測誤差デコーダ304の出力338の合成を仮再構成器339から受取る。仮再構成された画像314は、イントラ予測器308とフィルタ316に送られてもよい。仮表現を受取るフィルタ316は、その仮表現をフィルタリングし、リファレンスフレームメモリ318に保存される最終再構成画像340を出力する。リファレンスフレームメモリ318は、後の画像300がインター予測動作で比較されるためのリファレンス画像として使用されるように、インター予測器306に接続されてもよい。
ピクセル予測器302の動作は、本技術分野で周知のあらゆるピクセル予測アルゴリズムを遂行するように構成されてもよい。
予測誤差エンコーダ303は、変換ユニット342と量子化器344を備える。変換ユニット342は第1の予測誤差信号320を変換ドメインに変換する。この変換はDCT変換等である。量子化器344は、量子化係数を得るために、DCT係数などの変換ドメイン信号を量子化する。
予測誤差デコーダ304は予測誤差エンコーダ303からの出力を受取り、復号予測誤差信号338を生成するために、予測誤差エンコーダ303とは反対の処理を行う。復号予測誤差信号は第2の加算器339で画像ブロック312の予測表現と合成され、仮再構成画像314を生成する。予測誤差デコーダは、変換信号を再構成するために、DCT係数などの量子化係数値を逆量子化(dequantize)する逆量子化器(dequantizer)361と、再構成された変換信号に対して逆変換を行う逆変換ユニット363を備えるように構成されてもよい。逆変換ユニット363の出力は、(1つまたは複数の)再構成ブロックを含む。予測誤差デコーダはまた、さらに復号された情報とフィルタパラメータに従って再構成マクロブロックをフィルタリングできるマクロブロックフィルタを備えてもよい。
エントロピーエンコーダ330は、予測誤差エンコーダ303の出力を受取り、誤差検出と補正機能を提供するために、その信号に適切なエントロピー符号化/可変長符号化を行うこともできる。
エントロピー符号化/復号は様々な方法で行うことができる。例えば、エンコーダ及びデコーダの両方において、前に符号化/復号された符号化パラメータに基づいて符号化パラメータのコンテキスト状態を変更する場合、コンテキストベースの符号化/復号が適用されてもよい。コンテキストベース符号化は、例えばコンテキスト適応バイナリ算術符号化(context adaptive binary arithmetic coding, CABAC)やコンテキストベース可変長符号化(context-based variable length coding, CAVLC)、あるいはこれに類するエントロピー符号化でもよい。あるいは又は加えて、エントロピー符号化/復号は、ハフマン(Huffman)符号化/復号や指数ゴロム(Exp-Golomb)符号化/復号等の可変長符号化方式を用いて行われてもよい。エントロピー符号化されたビットストリーム又はコードワードからの符号化パラメータの復号はパーシングとも呼ばれる。
H.264/AVC規格は、ITU-T(国際電気通信連合の電気通信標準化部門)のビデオ符号化専門家グループ(VCEG)およびISO(国際標準化機構)/IEC(国際電気標準会議)の動画専門家グループ(MPEG)による統合ビデオチーム(JVT)によって開発された。H.264/AVC規格はその元となる両標準化機構によって公開されており、ITU-T勧告H.264およびISO/IEC国際規格14496-10と呼ばれる。ISO/IEC14496-10はMPEG-4パート10アドバンスドビデオ符号化(Advanced Video Coding;AVC)として知られている。H.264/AVC規格には複数のバージョンがあり、それぞれが規格に新たな拡張や仕様を統合している。こうした拡張には、スケーラブルビデオ符号化(Scalable Video Coding;SVC)とマルチビュービデオ符号化(Multiview Video Coding;MVC)が含まれる。
高効率ビデオ符号化(High Efficiency Video Coding)規格(HEVC又はH.265/HEVCと呼ばれる)は、VCEGとMPEGの共同研究開発チーム(JCT-VC)によって開発された。この規格はITU-T勧告H.265およびISO/IEC国際規格23008-2と呼ばれ、MPEG-Hパート2高効率ビデオ符号化(High Efficiency Video Coding, HEVC)として知られている。H.265/HEVCの拡張版を開発する標準化プロジェクトも現在進められている。この拡張には、スケーラブル拡張やマルチビュー、3次元、忠実度の拡張が含まれる。
本節では、H.264/AVCおよびHEVCの重要な定義やビットストリーム、コーディング構造、概念の一部が、ビデオのエンコーダやデコーダ、符号化方法、復号方法、ビットストリーム構造の例として説明される。本発明の実施形態はこうした例に実装されてもよい。H.264/AVCの重要な定義やビットストリーム、コーディング構造、概念の中には、HEVC規格にあるものと同一のものもある。したがって、以下ではこれらも一緒に説明される。本発明の態様はH.264/AVCやHEVCに限定されるものではない。本明細書は、本発明の一部または全部が実現される上での可能な原理を説明するためのものである。
例示的実施形態でH.264/AVCやHEVCを説明する場合、H.264/AVCやHEVCドラフト等で規定されているような算術演算子や論理演算子,関係演算子,二値演算子,代入演算子,範囲表記といった共通表記を用いることもある。また、H.264/AVCやHEVCドラフト等で規定されているような共通の数学的関数が用いられてもよい。演算の優先順位・実行順序に関する共通規則は、H.264/AVCやHEVCドラフト等で規定されているように使用されてもよい。
例示的実施形態でH.264/AVCやHEVCを説明する場合、各シンタックス要素の解析処理を規定するために、次の記述子が用いられる。
・ b(8):任意パターンのビット列を持つバイト(8ビット)。
・ se(v):左ビットを先頭とする符号付き整数型の指数ゴロム(Exp-Golomb)符号化シンタックス要素。
・ u(n):nビットの符号無し整数。シンタックステーブルでnが"v"であるときは、ビット数が他のシンタックス要素の値に依存して変化する。この記述子に対する解析処理は、最初に記述された最上位ビットを伴う符号無し整数の2進表現として解釈されたビットストリームから、次のnビットによって規定される。
・ ue(v):左ビットを先頭とする符号無し整数型のExp-Golomb符号化シンタックス要素。
Exp-Golombビット列は、例えば、次の表を用いて符号番号(codeNum)に変換されてもよい。
Exp-Golombビット列に対応する符号番号は、例えば、次の表を用いてse(v)に変換されてもよい。
例示的実施形態でH.264/AVCやHEVCを説明する場合、シンタックス構造とシンタックス要素の意味、復号処理は次のように規定されてもよい。ビットストリーム中のシンタックス要素は太字体で表わされる。各シンタックス要素はそれぞれの名前(下線文字を伴い全て小文字)で記述され、1または2のシンタックスカテゴリーが使用される。符号化表現方法として1または2の記述子が使用されることもある。復号処理はシンタックス要素の値と先に復号済みのシンタックス要素の値に従って行われる。シンタックス要素の値は、シンタックステーブルまたはテキストで使用される際は通常の(太字でない)書式で表わされる。場合によっては、シンタックステーブルはシンタックス要素値から派生する他の変数の値を用いてもよい。こうした変数は、下線文字を伴わず小文字と大文字を用いてシンタックステーブルまたはテキストに表わされる。大文字で始まる変数は、現在のシンタックス構造とそれに従属する全てのシンタックス構造の復号用に生成される。大文字で始まる変数は、その変数の元のシンタックス構造を示さずに後のシンタックス構造用として復号処理に使用されてもよい。小文字で始まる変数は、その変数が生成されたコンテキスト内でも使用される。場合によっては、シンタックス要素値または変数値の数値と変換可能な「ニーモニック」名も使用される。「ニーモニック」名は数値とは無関係に使用されることもある。数値と名前の関連はテキストに規定されている。名前は下線文字で分けられた1つ又は複数の文字列で構成される。各文字列は大文字で始まり、途中で大文字を含んでもよい。
例示的実施形態でH.264/AVCやHEVCを説明する場合、シンタックス構造は次のように規定されてもよい。丸括弧内の一連の文は複文であり、機能的には単文として扱われる。"while"構文は、条件が真であるかどうかの判断を規定し、条件が真であれば、その条件が真でなくなるまで、単文(または複文)の評価を繰り返し指定する。"do…while"構文は、一旦文の評価を規定した後、条件が真であるかどうかの判断が続き、条件が真であれば、その条件が真でなくなるまで、文の評価を繰り返し指定する。"if…else"構文は、条件が真であるかどうかの判断を規定し、条件が真であれば最初の文の評価を指定し、そうでなければ、代替文の評価を指定する。この構文の"else"節と関連する代替文は、代替文の評価が不要であれば省略できる。"for"構文は、初期値文の評価を指定し、条件判断が続き、条件が真であれば、その条件が真でなくなるまで、最初の文と後に続く文の評価を繰り返し指定する。
数ある従来のビデオコーディング規格と同様にH.264/AVCとHEVCでも、エラーの無いビットストリームの復号処理だけでなくビットストリームの構文と意味についても規定されている。符号化処理は規定されていないが、エンコーダは必ずビットストリームの確認を行わなくてはならない。ビットストリームとデコーダの適合性は、仮想リファレンスデコーダ(Hypothetical Reference Decoder;HRD)を用いて検証できる。標準規格は伝送エラーや伝送損失対策を助けるコーディングツールを含む。しかし、こうしたツールを符号化で使用するのは任意選択であって、誤ったビットストリームに対する復号処理は何も規定されていない。
現存の規格に関する記述と同様に例示的実施形態の記述においても、シンタックス要素はビットストリームで表わされるデータの要素として定義される。シンタックス構造は、特定の順序のビットストリームで表わされる0以上のデータの要素として定義される。
プロファイルは、復号/符号化規格又は標準によって特定されるビットストリームシンタックス全体のサブセットとして規定されてもよい。所与のプロファイルのシンタックスが課す範囲内においても、エンコーダとデコーダの性能が、復号ピクチャの特定のサイズのようなビットストリームのシンタックス要素がとる値に応じて大きく変動するようにすることも可能である。多くの適用事例において、特定のプロファイル内で想定されうるシンタックス利用の全てに対応可能なデコーダを実装することは、実用的でも経済的でもない。この問題に対応するには、レベルを使用することができる。レベルは、復号/符号化規格又は標準によって特定されるビットストリームのシンタックス要素と変数の値に課せられる特定の一組の制約条件として規定されてもよい。こうした制約条件は、値に対する単純な制限であってもよい。あるいは又は加えて、値の算術的組合せ(例えば、ピクチャの幅×ピクチャの高さ×1秒間に復号されるピクチャ数)に対する制約条件の形を取ってもよい。レベルに対する制約条件を特定する他の手段が用いられてもよい。レベルで特定される制約条件の中には、例えば最大ピクチャサイズや最大ビットレート、符号化単位毎の最大データレートに関連してもよい。符号化単位毎の最大データレートは例えば、単位時間、例えば1秒間におけるマクロブロック数などでもよい。同一のレベルセットが全プロファイルに対して規定されてもよい。好ましくは、例えば、別々のプロファイルであって、各レベルの定義の殆ど又は全ての観点がプロファイル間で共通であるようなプロファイルを実装する端末について、その相互運用を高めることができる。
H.264/AVCまたはHEVCのエンコーダへの入力およびH.264/AVCまたはHEVCのデコーダからの出力のための基本単位はそれぞれピクチャである。H.264/AVCおよびHEVCでは、ピクチャはフレームまたはフィールドの何れかでもよい。フレームは輝度(luma)サンプルと場合により対応する色差(chroma)サンプルの行列を含む。フィールドはフレームの代替サンプル行の組であり、ソース信号がインターレースである場合、エンコーダ入力として用いられてもよい。色差ピクチャは無くてもよく(従ってモノクロサンプリングが用いられる)、輝度ピクチャと比較されるときにサブサンプリングされてもよい。幾つかのクロマフォーマットは次のようにまとめられる。
・ モノクロサンプリングでは、サンプル配列が1つだけ存在し、名目上輝度配列と見なされる。
・ 4:2:0サンプリングでは、2つの色差配列の各々が輝度配列の半分の高さと半分の幅を有する。
・ 4:2:2サンプリングでは、2つの色差配列の各々が輝度配列と同じ高さと半分の幅を有する。
・ 4:4:4サンプリングでは、別個の色平面が使用されない場合、2つの色差配列の各々が輝度配列と同じ高さと幅を有する。
H.264/AVC及びHEVCでは、サンプル配列を別個の色平面としてビットストリームに符号化し、そのビットストリームから符号化色平面をそれぞれ別々に復号することができる。別個の色平面が用いられる場合、それらの各々は(エンコーダ及び/又はデコーダによって)モノクロサンプリングのピクチャとして別々に処理される。
色差サブサンプリングが用いられる場合(例えば、4:2:0又は4:2:2色差サンプリング)、輝度サンプリングに対する色差サンプリングの位置は、エンコーダ側で(例えば、プリプロセスステップや符号化の一部として)決定されてもよい。輝度サンプルの位置に対する色差サンプルの位置は、例えばH.264/AVCやHEVC等の符号化規格で予め規定されていてもよい。あるいは、例えばH.264/AVCやHEVCのVUIの一部としてビットストリームに示されていてもよい。
パーティショニングとは、1つのセットの各要素が正確にサブセットの1つであるように、そのセットを複数のサブセットに分割することとして定義することができる。ピクチャパーティショニングとは、1つのピクチャをそれより小さく互いに重なり合わない単位に分割することとして定義することができる。ブロックパーティショニングとは、1つのブロックをサブブロックという、より小さく互いに重なり合わない単位に分割することとして定義することができる。場合によっては、ブロックパーティショニングという用語が複数レベルのパーティショニングを含むと見なされることもある。例えば、1つのピクチャをスライスに分割し、各スライスをH.264/AVCのマクロブロックのような更に小さい単位に分割することを含んでもよい。ここで、ピクチャ等の1つの同じ単位が複数のパーティショニングを有してもよいことに留意すべきである。例えば、ドラフトHEVC規格の符号化単位は、予測単位に分割され、更に別の四分木によって別々に変換単位に分割される。
H.264/AVCでは、16×16ブロックの輝度サンプルと対応する色差サンプルのブロックがマクロブロックである。例えば4:2:0サンプリングパターンでは、マクロブロックは各色差成分で8×8ブロックの色差サンプルを含む。H.264/AVCでは、ピクチャは1つ又は複数のスライスグループに分割(パーティショニング)され、スライスグループは1つ又は複数のスライスを含む。H.264/AVCでは、スライスは整数のマクロブロックから成り、特定のスライスグループ内でラスタースキャンの順で連続している。
HEVC規格の流れにおいては、例えばピクチャパーティショニング単位に関する用語が展開してきた。次の段落では、HEVCの非限定的実施例の用語が与えられる。
HEVC符号化(復号)では、サンプルは符号化ツリーブロックを単位にして処理される。各々の輝度符号化ツリーブロックの配列サイズは、エンコーダによって決定されビットストリームに含められ、デコーダによってビットストリームから復号される。この際、エンコーダの処理とデコーダの処理はその何れかでも両方でもよい。ビットストリームではCtbSizeYとして幅(水平サイズ)と高さ(垂直サイズ)の両方がサンプル単位で指定されている。各々の色差符号化ツリーブロックに関する配列の幅と高さは、輝度符号化ツリーブロックの配列の幅・高さと使用されるべきクロマフォーマットから算出することができる。
HEVCでは、各符号化ツリーブロックにイントラまたはインター予測符号化用のブロックサイズと変換符号化用ブロックサイズを識別するパーティション信号が割当てられる。パーティショニングは再帰的四分木パーティショニングである。四分木の根は符号化ツリーブロックに関連付けられる。四分木は、符号化ブロックとも呼ばれる葉ノードに到達するまで分割される。要素の幅が整数値の符号化ツリーブロックサイズでない場合、右側要素の境界での符号化ツリーブロックは不完全になる。要素の高さが符号化ツリーブロックサイズの整数倍でない場合、下部要素の境界での符号化ツリーブロックは不完全になる。
HEVCでは、符号化ブロックは、予測ツリーと変換ツリーの2つのツリーの根ノードである。予測ツリーは予測ブロックの位置とサイズを特定する。変換ツリーは変換ブロックの位置とサイズを特定する。輝度および色差の分割情報は予測ツリーでは同一であるが、変換ツリーでは同一でも異なっていてもどちらでもよい。
ブロックとそれに関連するシンタックス構造は、次のような「単位」でカプセル化することができる。
・ 1つの予測ブロック(モノクロピクチャ又は別々の色平面が用いられる場合)又は3つの予測ブロック(輝度と色差)と、それに関連する予測シンタックス構造単位が1予測単位としてカプセル化される。
・ 1つの変換ブロック(モノクロピクチャ又は別々の色平面が用いられる場合)又は3つの変換ブロック(輝度と色差)と、それに関連する変換シンタックス構造単位が1変換単位としてカプセル化される。
・ 1つの符号化ブロック(モノクロピクチャ又は別々の色平面が用いられる場合)又は3つの符号化ブロック(輝度と色差)と、それに関連する符号化シンタックス構造、関連する予測単位及び変換単位が1符号化単位としてカプセル化される。
・ 1つの符号化ツリーブロック(モノクロピクチャ又は別々の色平面が用いられる場合)又は3つの符号化ツリーブロック(輝度と色差)と、それに関連する符号化ツリーシンタックス構造、関連する符号化単位が1符号化ツリー単位としてカプセル化される。
HEVCで使用される幾つかの用語に関する説明を以下に示す。ビデオピクチャは、ピクチャ領域を覆う複数の符号化単位(CU)に分割される。CUは1つ又は複数の予測単位(PU)と1つ又は複数の変換単位(TU)から成る。PUはCU内のサンプルに対する予測処理を規定し、TUはCUのサンプルに対する予測誤差の符号化処理を規定する。通常CUは、正方形のサンプルブロックから成り、既定されている可能なCUサイズのセットから選択可能なサイズを持つ。最大許容サイズのCUはLCU(最大符号化単位)又はCTU(符号化ツリー単位)と呼ばれることもあり、ビデオピクチャは重なり合わないLCUに分割される。LCUは、例えば、LCUと分割の結果得られるCUを再帰的に分割することによって更に小さいCUの組合せに分割されることもある。分割の結果得られる各CUは通常、少なくとも1つのPUとそれに関連する少なくとも1つのTUを有する。PUとTUはそれぞれ、予測処理と予測誤差符号化処理の粒度を上げるために、更に小さい複数のPUとTUに分割されることもある。各PUは、それぞれのPU内のピクセルに適用される予測の種類を定義する、それぞれのPUに関連した予測情報(例えば、インター予測されたPUに対しては動きベクトルの情報、イントラ予測されたPUに対してはイントラ予測の方向情報など)を持つ。同様に、各TUは、それぞれのTU内のサンプルに対する予測誤差復号処理を記述する情報(DCT係数情報なども含む)に関連付けられる。通常、各CUに対して予測誤差符号化が適用されるか否かがCUレベルで伝達される。CUに関連する予測誤差の残差がない場合、そのCUに対するTUが存在しないと見做される。ピクチャをCUに分割し、CUをPUとTUに分割することは通常、デコーダがこうした単位から目的の構造を再生できるようにビットストリーム信号で伝えられる。
HEVC規格では、ピクチャはタイルに分割される。タイルは長方形で、整数のLCUを含む。HEVC規格では、タイル分割(パーティショニング)は正規グリッド(regular grid)を形成し、タイルの高さと幅は最大のLCUによって互いに異なる。タイルはビットストリームにおいて、ピクチャ内のラスタースキャン順に連続している。タイルは整数のスライスを含んでもよい。タイル境界はスライス境界と同じく、エントロピー符号化やパラメータ予測、イントラ予測の依存性を破壊する。そのため、タイルはインループフィルタリングを除いて独立に処理することができる。インループフィルタリングはエンコーダが止めない限り(そしてビットストリームに標示しない限り)、タイル境界を跨ぐことができる。
HEVCでは、スライスは整数のLCUから成る。LCUは、タイル内、またはタイルが使われない場合はピクチャ内でLCUのラスタースキャン順にスキャンされる。スライスは整数のタイルを含んでもよく、あるいはタイルに含まれてもよい。LCU内では、CUは特定のスキャン順序を持つ。
HEVCでは、スライスは1つの独立スライスセグメントと、(存在する場合)それに続き同一アクセス単位内で(存在する場合)次の独立スライスセグメントより前の全ての従属スライスセグメントを含む。HEVCでは、独立スライスセグメントは、スライスセグメントヘッダのシンタックス要素値が前のスライスセグメントの値から推定されないようなスライスセグメントと定義され、従属スライスセグメントは、スライスセグメントヘッダのシンタックス要素の一部の値が復号順で前の独立スライスセグメントの値から推定されるようなスライスセグメントと定義される。HEVCでは、スライスヘッダは、現在のスライスセグメント又は現在のスライスセグメントより前の独立スライスセグメントである独立スライスセグメントのスライスセグメントヘッダと定義され、スライスセグメントヘッダは、スライスセグメントに現れる先頭の又は全ての符号化ツリー単位に関するデータ要素を含む符号化スライスセグメントの一部と定義される。
デコーダは、予測されたピクセルのブロック表現を形成して予測誤差を復号するために、エンコーダと同様の予測手段を適用することによって出力ビデオを再構成する(ここで、予測表現の形成は、エンコーダが作成し、圧縮表現に格納された動き情報や空間情報を使用し、予測誤差の復号は、空間ピクセル領域で量子化された予測誤差信号を回復する、予測誤差符号化の逆操作を使用して行われる)。デコーダは、予測及び予測誤差復号手段の適用後、出力ビデオフレームを形成するために、予測信号と予測誤差信号(ピクセル値)を足し合わせる。デコーダ(及びエンコーダ)は、出力ビデオをディスプレイに送る、及び/又は後続フレーム用予測リファレンスとしてビデオシーケンスに格納する前に、出力ビデオの品質を向上するために追加フィルタリング処理を適用することもできる。
典型的なビデオコーデックでは、動き情報は、動き補償された画像ブロックのそれぞれに関連する動きベクトルで示される。こうした動きベクトルはそれぞれ、(エンコーダ側で)符号化されるピクチャまたは(デコーダ側で)復号されるピクチャの画像ブロックと、先に符号化または復号されたピクチャの1つにおける予測元ブロックとの間の移動量を表わす。動きベクトルを効率よく表現するために、動きベクトルは通常、ブロック固有の予測動きベクトルに関して差動符号化されてもよい。典型的なビデオコーデックにおいて、予測動きベクトルは所定の方法、例えば、隣接ブロックの符号化/復号動きベクトルの中央値を計算することによって生成される。動きベクトル予測を行う別の方法は、時間軸上のリファレンスピクチャにおける隣接ブロックおよび/または同位置のブロックから予測候補のリストを作成し、選択された候補を動きベクトルの予測として信号で伝えるものである。動きベクトルの値の予測に加え、先に符号化/復号されたピクチャのリファレンスインデクスが予測されてもよい。リファレンスインデクスは通常、時間軸上のリファレンスピクチャにおける隣接ブロックおよび/または同位置のブロックから予測される。また、典型的な高効率ビデオコーデックでは追加的な動き情報符号化/復号機構を用い、通常、マージング又はマージモードと呼ばれる。ここで、全ての動きフィールド情報は、利用可能なリファレンスピクチャリストの各々について動きベクトルと対応するリファレンスピクチャインデックスを含んで、予測され、その他の変更/修正を行わずに使用される。同様に、動きフィールド情報の予測は、時間リファレンスピクチャにおける隣接ブロック及び/又はコロケート(co-located)ブロックの動きフィールド情報を用いて行われ、使用された動きフィールド情報は、利用可能な隣接/コロケートブロックの動きフィールド情報が含まれる動きフィールド候補のリストに信号で伝えられる。
典型的なビデオコーデックにおいて、動き補償後の予測残差は最初に(DCTのような)変換カーネルで変換され、次に符号化される。これは、通常残差間にも相関があり、こうした変換が多くの場合でこのような相関を小さくするのに役立ち、より高い効率での符号化を可能にするからである。
典型的なビデオエンコーダは、所期のマクロブロックモード及び関連する動きベクトル等の最適符号化モードを探索するために、ラグランジュ費用関数(Lagrangian cost function)を利用する。この種の費用関数は、非可逆符号化法による(正確なまたは推定された)画像歪みと、画像領域のピクセル/サンプル値を表現するのに必要である(正確なまたは推定された)情報量を一緒に固定するために、加重ファクタλを用いる。
C = D +λR, (1)
ここで、Cは最小化すべきラグランジュコスト、Dはそのモード及び考慮される動きベクトルによる画像歪み(平均二乗誤差など)、Rはデコーダで画像ブロックを再構成するために要求されるデータ(候補の動きベクトルを表わすためのデータ量を含んでもよい)を表わすのに必要なビット数である。
ビデオ符号化規格及び標準は、エンコーダが符号化ピクチャを符号化スライス等に分割できるようにしてもよい。通常、スライス境界を跨ぐインピクチャ予測は無効である。したがって、スライスは符号化ピクチャを独立に復号される部分に分割する方法だと考えられる。H.264/AVCおよびHEVCでは、ピクチャ内でスライス境界を跨ぐ予測が無効でもよい。したがって、スライスは符号化ピクチャを独立に復号される部分に分割する方法だと考えられることもあり、それ故しばしば、伝送の基本単位と見做される。多くの場合、エンコーダは、ピクチャ内予測のどの種類がスライス境界を跨ぐ際に止められているかをビットストリームで示してもよい。この情報は、デコーダの動作によって、どの予測ソースが利用可能であるかを決定する際などで考慮される。例えば、隣接するマクロブロックやCUが別のスライスに存在する場合、その隣接するマクロブロックやCUからのサンプルはイントラ予測には利用できないと見做されてもよい。
次に、幾つかの符号化規格で利用可能なスライスタイプについて分類する。
ラスタースキャン順のスライスは、ラスタースキャン順に連続するマクロブロック又は類似のものから成る符号化セグメントである。例えば、ラスタースキャン順のスライスの実施例には、MPEG-4パート2のビデオパケットや、H.263の空でないマクロブロックグループ(GOB)ヘッダで開始するGOBがある。
矩形スライスは、矩形マクロブロック領域又は同様のものから成る符号化セグメントである。矩形スライスは、高さが1マクロブロック又は類似の列よりも高く、幅がピクチャ全体よりも狭いものでもよい。H.263では任意選択できる矩形スライスサブモードも含まれ、H.261のGOBは矩形スライスと見なすこともできる。
フレキシブルスライスは、所定のマクロブロック(又は類似のもの)を任意の位置で含むことができる。H.264/AVCコーデックでは、複数のスライスグループに対してマクロブロックのグループ化が許容されている。スライスグループは任意のマクロブロック位置を含むことができ、このマクロブロック位置には隣接しないマクロブロックの位置も含まれる。H.264/AVCの特定のプロファイルにおけるスライスには、特定のスライスグループ内においてラスタースキャン順で少なくとも1つのマクロブロックから成るものもある。
H.264/AVCまたはHEVCのエンコーダからの出力およびH.264/AVCまたはHEVCのデコーダへの入力のための基本単位はそれぞれ、ネットワーク抽象化層(Network Abstraction Layer;NAL)単位である。パケット指向ネットワークでの伝送や構造化ファイルへの格納に対して、NAL単位はパケットや同様の構造にカプセル化されてもよい。H.264/AVCおよびHEVCでは、フレーム構造を提供しない伝送や格納の環境に対してバイトストリーム・フォーマットが特定されている。バイトストリーム・フォーマットは、各NAL単位の先頭に開始コードを付与することによってNAL単位同士を分離する。NAL単位境界の誤検出を防止するために、エンコーダはバイト指向開始コードエミュレーション防止アルゴリズムを実行する。これは、開始コードが別の形で生じた場合にNAL単位ペイロードにエミュレーション防止バイトを追加する。パケット指向システムとストリーム指向システムとの間の直接的なゲートウェイ動作を可能とするために、バイトストリーム・フォーマットが使用されているか否かに関係なく常に開始コードエミュレーション防止が行われてもよい。NAL単位は、後続データの種類の標示を含むシンタックス構造と、RBSP(raw byte sequence payload)の形態で必要に応じてエミュレーション・プリベンション(emulation prevention)バイトと一緒に散在するデータを含む複数バイトとして定義されてもよい。RBSPは、NAL単位にカプセル化される整数値を含むシンタックス構造として定義されてもよい。RBSPは空であるか、RBSPストップビットおよび0に等しいシーケンスビット0個以上に続くシンタックス構造要素を含むデータビット列の形態を持つかの何れかである。
NAL単位はヘッダとペイロードから成る。H.264/AVCおよびHEVCでは、NAL単位ヘッダはNAL単位の種類と、NAL単位に含まれる符号化スライスがリファレンスピクチャであるか非リファレンスピクチャであるかを示す。
H.264/AVC NAL単位ヘッダは2ビットのシンタックス要素nal_ref_idcを含み、これが0のときはNAL単位に含まれる符号化スライスが非リファレンスピクチャの一部であることを示し、0を超えるときはNAL単位に含まれる符号化スライスがリファレンスピクチャの一部であることを示す。SVCおよびMVCのNAL単位ヘッダは、拡張性とマルチビュー階層の関連する様々な標示を追加で含んでもよい。
HEVCでは、規定されるNAL単位タイプの全てに対して2バイトのNAL単位ヘッダが使用される。NAL単位ヘッダには、1ビットの予約ビットと6ビットのNAL単位タイプ標示、6ビットの予約フィールド(nuh_layer_idと呼ばれる)、時間レベルに対する3ビットのtemporal_id_plus1標示が含まれる。temporal_id_plus1シンタックス要素はNAL単位の時間識別子と見なされ、ゼロベースのTemporalId変数は次のように算出することができる:
TemporalId = temporal_id_plus1 - 1
TemporalIdが0のときは、最下位時間レベルに対応する。2つのNAL単位ヘッダバイトを含む符号化エミュレーションの開始を避けるために、temporal_id_plus1の値はゼロでない値であることが求められる。選択された値以上のTemporalIdを持つ全てのVCL-NAL単位を除外し、それ以外の全てのVCL-NAL単位を含めることによって生成されたビットストリームが適合するものである。その結果、TIDと等しいTemporalIdを持つピクチャは、TIDを超えるTemporalIdを持つどのピクチャもインター予測リファレンスとして使用しない。サブレイヤ又は時間サブレイヤは、TemporalId変数の特定の値を持つVCL-NAL単位及び関連する非VCL-NAL単位から成る、時間スケーラブルビットストリームの時間スケーラブルレイヤとして規定されてもよい。
例示的実施形態によっては、一般性を失わずに、変数LayerIdがnuh_layer_idの値から次のように算出される:
LayerId = nuh_layer_id
以下では、特段の指定のない限り、LayerIdとnuh_layer_id、layer_idは相互可換なものとして使用される。
NAL単位ヘッダにおいては、nuh_layer_id及び/又は類似のシンタックス要素がスケーラブル階層に関する情報を担うものと想定される。例えば、LayerIdの値であるnuh_layer_id及び/又は類似のシンタックス要素は、別のスケーラブル次元を記述する変数又はシンタックス要素の値に対応付けられてもよい。こうしたスケーラブル次元は例えば、quality_id又は類似の識別子、dependency_id又は類似の識別子、他のタイプのレイヤ識別子、ビュー順序インデクス又は類似のインデクス、ビュー識別子、NAL単位が深度とテクスチャの何れかに関係するかという標示、即ちdepth_flag又は同等の標示子、SVCのpriority_idのような識別子などである。priority_idは、特定の識別値を超える全てのNAL単位がビットストリームから削除された場合に有効なサブビットストリームの抽出を示す。
nuh_layer_id及び/又は類似のシンタックス要素は、スケーラブル特性を示す1つ又は複数のシンタックス要素に分割されてもよい。例えば、nuh_layer_id及び/又は類似のシンタックス要素の中の特定のビット数がdependency_id又は類似の標示子に使用され、nuh_layer_id及び/又は類似のシンタックス要素の中の別の特定のビット数がquality_id又は類似の標示子に使用されてもよい。あるいは、LayerId値または類似の値を別のスケーラブル次元を記述する変数又はシンタックス要素の値に対応付けることは、例えばビデオパラメータセットやシーケンスパラメータセット、又は別のシンタックス構造に対して提供されてもよい。
NAL単位はビデオ符号化層(Video Coding Layer;VCL)NAL単位と非VCL-NAL単位に分類できる。VCL-NAL単位は通常、符号化スライスNAL単位である。H.264/AVCでは、符号化スライスNAL単位は1つ又は複数の符号化マクロブロックを表わすシンタックス要素を含み、それぞれが非圧縮ピクチャのサンプルブロックに対応する。HEVCでは、符号化スライスNAL単位は1つ又は複数のCUを表わすシンタックス要素を含む。
H.264/AVCおよびHEVCでは、符号化スライスNAL単位は瞬時復号リフレッシュ(Instantaneous Decoding Refresh;IDR)ピクチャの符号化スライスまたは非IDRピクチャの符号化スライスであると示されることもある。
HEVCでは、符号化スライスNAL単位は次のタイプの中の1つであると示されてもよい。
HEVCでは、ピクチャタイプの略語は次のように定義される:末尾(TRAIL)ピクチャ、時間サブレイヤアクセス(TSA)、段階的時間サブレイヤアクセス(STSA)、ランダムアクセス復号可能先頭(RADL)ピクチャ、ランダムアクセススキップ先頭(RASL)ピクチャ、リンク切れアクセス(Broken Link Access, BLA)ピクチャ、瞬時復号リフレッシュ(Instantaneous Decoding Refresh, IDR)ピクチャ、クリーンランダムアクセス(CRA)ピクチャ。
ランダムアクセスポイント(RAP)ピクチャはイントラランダムアクセスポイント(IRAP)ピクチャとも呼ばれるが、スライス又はスライスセグメントの各々が16から23の範囲にnal_unit_typeを包括的に有するピクチャのことである。RAPピクチャはイントラ符号化スライスのみを含み、BLAピクチャやCRAピクチャ、あるいはIDRピクチャであってもよい。ビットストリームの先頭ピクチャはRAPピクチャである。所与の必須パラメータは、それらがアクティブ化される必要があるときに利用可能であるため、RAPピクチャ及び復号順でそれより後の全ての非RASLピクチャは、復号順でRAPピクチャより前のピクチャに復号処理を行わなくても、正しく復号することができる。RAPピクチャでないイントラ符号化スライスのみを含むビットストリームにピクチャが存在することもある。
HEVCでは、CRAピクチャが復号順でビットストリームの先頭のピクチャであってもよく、ビットストリームの後の方で現れてもよい。HEVCではCRAピクチャによって、いわゆる先頭ピクチャが復号順でCRAピクチャの後であるが出力順ではそれより前になる。先頭ピクチャの中のいわゆるRASLピクチャは、リファレンスとしてCRAピクチャより前に復号されるピクチャを用いてもよい。復号順及び出力順で共にCRAピクチャより後のピクチャは、CRAピクチャでランダムアクセスが行われる場合に復号可能となる。それ故、クリーンランダムアクセスは、IDRピクチャのクリーンランダムアクセス機能と同様にして実現される。
CRAピクチャは、関連するRADL又はRASLピクチャを有することもある。CRAピクチャが復号順でビットストリームの最初のピクチャである場合、CRAピクチャは、復号順で符号化ビデオシーケンスの最初のピクチャである。そして、どの関連RASLピクチャもデコーダから出力されず、復号できないかもしれない。その理由は、こうしたピクチャにはビットストリームに未だ現れないピクチャに対するリファレンスが含まれているかもしれないからである。
先頭ピクチャは、出力順で関連RAPピクチャより先のピクチャである。関連RAPピクチャは、(存在する場合は)復号順で前のRAPピクチャである。先頭ピクチャはRADLピクチャ又はRASLピクチャの何れかでもよい。
全てのRASLピクチャは、関連するBLAピクチャ又はCRAピクチャの先頭ピクチャである。関連RAPピクチャがBLAピクチャであるかビットストリームの先頭符号化ピクチャである場合、RASLピクチャは出力されず、正しく復号されないかもしれない。その理由は、RASLピクチャにはビットストリームに未だ現れないピクチャに対するリファレンスが含まれているかもしれないからである。しかし、RASLピクチャの関連RAPピクチャより前のRAPピクチャから復号が始まっていた場合、RASLピクチャは正しく復号することができる。RASLピクチャは、非RASLピクチャの復号処理のリファレンスとして使用されない。全てのRASLピクチャは、存在する場合、復号順で同一の関連RAPピクチャの全ての末尾ピクチャよりも前にある。HEVC規格の初期ドラフトの中には、RASLピクチャが破棄用タグ付き(Tagged for Discard, TFD)ピクチャに対して参照されていたものもあった。
全てのRADLピクチャは先頭ピクチャである。RADLピクチャは、同一の関連RAPピクチャにおける末尾ピクチャ
の復号処理のリファレンスとして使用されない。全てのRADLピクチャは、存在する場合、復号順で同一の関連RAPピクチャの全ての末尾ピクチャよりも前にある。RADLピクチャは、復号順で関連RAPピクチャより前のどのピクチャも参照しない。したがって、復号が関連RAPピクチャから始まる場合、RADLピクチャは正しく復号することができる。HEVC規格の初期ドラフトの中には、RADLピクチャが復号可能先頭ピクチャ(Decodable Leading Picture, DLP)に対して参照されていたものもあった。
復号可能先頭ピクチャは、CRAピクチャから復号が開始される場合に正しく復号することができるようなピクチャである。換言すれば、復号可能先頭ピクチャは、インター予測でのリファレンスとして最初のCRAピクチャ又はその後のピクチャのみを使用する。復号不可先頭ピクチャは、最初のCRAピクチャから復号が開始される場合に正しく復号することができないようなピクチャである。換言すれば、復号不可先頭ピクチャは、インター予測でのリファレンスとして復号順で最初のCRAピクチャより前のピクチャを使用する。
CRAピクチャから始まるビットストリームの一部が別のビットストリームに含まれる場合、このCRAピクチャに関連するRASLピクチャは、そのリファレンスピクチャが合成ビットストリームにも存在しないかもしれないため、正しく復号されない可能性がある。こうした接合動作を直接的に行うために、CRAピクチャのNAL単位タイプは、それがBLAピクチャであることを示すように変更することができる。BLAピクチャに関連するRASLピクチャは正しく復号できないかもしれず、それ故、出力/表示もされない。また、BLAピクチャに関連するRASLピクチャには復号処理を省略することもある。
BLAピクチャが復号順でビットストリームの最初のピクチャであってもよく、ビットストリームの後の方で現れてもよい。各BLAピクチャは新たな符号化ビデオシーケンスを開始し、復号処理に対してIDRピクチャと同様の影響を及ぼす。しかし、BLAピクチャは空でないリファレンスピクチャセットを特定するシンタックス要素を含む。BLAピクチャは、BLA_W_LPに等しいnal_unit_typeを有する場合、関連RASLピクチャを有することもある。ただし、関連RASLピクチャはデコーダから出力されず、復号できないかもしれない。その理由は、こうしたピクチャにはビットストリームに未だ現れないピクチャに対するリファレンスが含まれているかもしれないからである。BLAピクチャは、BLA_W_LPに等しいnal_unit_typeを有する場合、関連RADLピクチャを有してもよく、この関連RADLピクチャは復号されるべきか特定される。BLAピクチャは、BLA_W_DLPに等しいnal_unit_typeを有する場合、関連RASLピクチャを有さず、関連RADLピクチャを有してもよい。この関連RADLピクチャは復号されるべきか特定される。BLA_W_DLPはBLA_W_RADLとも呼ばれる。BLAピクチャは、BLA_N_LPに等しいnal_unit_typeを有する場合、如何なる関連先頭ピクチャも有さない。
IDR_N_LPに等しいnal_unit_typeを有するIDRピクチャは、ビットストリームに関連先頭ピクチャを有さない。IDR_W_DLPに等しいnal_unit_typeを有するIDRピクチャは、ビットストリームに関連RASLピクチャを有さず、ビットストリームに関連RADLピクチャを有してもよい。IDR_W_DLPはIDR_W_RADLとも呼ばれる。
nal_unit_typeの値がTRAIL_NやTSA_N、STSA_N、RADL_N、RASL_N、RSV_VCL_N10、RSV_VCL_N12、又はRSV_VCL_N14である場合、復号ピクチャは同一時間サブレイヤの他のピクチャに対するリファレンスとして使用されない。すなわち、ドラフトHEVC規格では、nal_unit_typeの値がTRAIL_NやTSA_N、STSA_N、RADL_N、RASL_N、RSV_VCL_N10、RSV_VCL_N12、又はRSV_VCL_N14である場合、復号ピクチャはTemporalIdが同じ値のピクチャのRefPicSetStCurrBefore、RefPicSetStCurrAfter、RefPicSetLtCurrの何れにも含まれない。nal_unit_typeの値がTRAIL_NやTSA_N、STSA_N、RADL_N、RASL_N、RSV_VCL_N10、RSV_VCL_N12、又はRSV_VCL_N14である符号化ピクチャは、TemporalIdが同じ値の他のピクチャの復号可能性に影響を与えないように破棄されてもよい。
末尾ピクチャは、出力順で関連RAPピクチャより後のピクチャとして定義することができる。末尾ピクチャであるピクチャは何れも、そのnal_unit_typeがRADL_N、RADL_R、RASL_N、RASL_Rの何れとも異なる。先頭ピクチャであるピクチャは何れも、復号順で、同一のRAPピクチャに関連する全ての末尾ピクチャより前であるように制限されてもよい。nal_unit_typeがBLA_W_DLP又はBLA_N_LPであるBLAピクチャに関連するRASLピクチャは、ビットストリームには存在しない。RADLピクチャであって、nal_unit_typeがBLA_N_LPであるBLAピクチャ、又はnal_unit_typeがIDR_N_LPであるIDRピクチャに関連するBLAピクチャに関連するRADLピクチャは、ビットストリームには存在しない。CRA又はBLAピクチャに関連するRASLピクチャは何れも、出力順で、CRA又はBLAピクチャに関連するどのRADLピクチャよりも前にあるように制限されてもよい。CRAピクチャに関連するRASLピクチャは何れも、復号順でCRAピクチャより前にある他の何れのRAPピクチャよりも、出力順で後となるように制限されてもよい。
HEVCでは、TSAピクチャタイプとSTSAピクチャタイプという2つのピクチャタイプがあり、時間サブレイヤの切替ポイントを示すために使用することができる。TSA又はSTSAピクチャ(排他的又は包括的)のTemporalIdがN+1に等しくなるまで、TemporalIdがNまでの時間サブレイヤが破棄されてきた場合、TSA又はSTSAピクチャは、TemporalIdがN+1である全ての(復号順で)後続のピクチャの復号を可能にする。TSAピクチャタイプは、TSAピクチャ自体に加え、同一サブレイヤにおいて復号順でそのTSAピクチャより後の全てのピクチャに対して制限を加えてもよい。こうしたピクチャは何れも、同一サブレイヤにおいて復号順でTSAピクチャより前のピクチャからのインター予測の使用が許容されない。またTSAの規定は、上位サブレイヤにおいて復号順でTSAピクチャに続くピクチャに対して制限を加えてもよい。こうしたピクチャは何れも、TSAピクチャとして同一又は上位サブレイヤに属する場合、復号順でTSAピクチャより前のピクチャの参照が許容されない。TSAピクチャは0を超えるTemporalIdを有する。STSAはTSAピクチャと同様であるが、上位サブレイヤにおいて復号順でSTSAピクチャより後のピクチャに対して制限を加えない。したがって、STSAピクチャが存在するサブレイヤに対してのみアップスイッチングが可能となる。
非VCL-NAL単位は例えば、次のタイプの1つでもよい:シーケンスパラメータセット;ピクチャパラメータセット;補助拡張情報(supplemental enhancement information;SEI)NAL単位;アクセス単位区切り;シーケンスNAL単位の一部;ストリームNAL単位の一部;または補充データNAL単位。パラメータセットは復号ピクチャの再構成に必要であってもよいが、他の非VCL-NAL単位の多くは、復号サンプル値の再構成には必要ない。
符号化ビデオシーケンスで不変のパラメータがシーケンスパラメータセットに含まれてもよい。復号処理に必要なパラメータに加え、シーケンスパラメータセットがビデオユーザビリティ情報(video usability information;VUI)を含んでもよい。これは、バッファリングやピクチャ出力タイミング、レンダリング、リソース予約に重要なパラメータを含む。H.264/AVCでは、シーケンスパラメータセットを含む3つのNAL単位が規定されている。シーケンスパラメータセットNAL単位は、H.264/AVCのVCL-NAL単位用データ全てをシーケンスに含む。シーケンスパラメータセット拡張NAL単位は補助符号化ピクチャ用データを含む。サブセット・シーケンスパラメータセットNAL単位はMVCとSVCのVCL-NAL単位用である。HEVC規格では、シーケンスパラメータセットRBSPには、1つ又は複数のピクチャパラメータセットRBSP、又はバッファリング期間(buffering period)SEIメッセージを含む1つ又は複数のSEI-NAL単位によって参照可能なパラメータが含まれる。ピクチャパラメータセットは、複数の符号化ピクチャで不変であるようなパラメータを含む。ピクチャパラメータセットRBSPは、1つ又は複数の符号化ピクチャの符号化スライスNAL単位によって参照可能なパラメータを含んでもよい。
HEVCでは、複数の符号化スライスで不変であると見なされるが、各ピクチャ又は複数ピクチャに対しては変化することもあるパラメータを含む、適応パラメータセット(APS)が提案されたが、最終的には規格に採用されなかった。APSシンタックス構造は、量子化マトリクス(quantization matrix;QM)や適応サンプルオフセット(adaptive sample offset;SAO),適応ループフィルタリング(adaptive loop filtering;ALF),デブロッキング・フィルタリングに関連するパラメータ又はシンタックス要素を含むように提案されている。APSはNAL単位でもあり、他のNAL単位から参照も予測もされずに符号化されてもよい。シンタックス要素aps_idと呼ばれる識別子はAPS-NAL単位に含まれる。これはスライスヘッダにも含まれ、特定のAPSを表わすために用いられる。APSシンタックス構造はALFパラメータを含むだけでもよい。
HEVC規格はビデオパラメータセット(VPS)NAL単位も含む。ビデオパラメータセットRBSPは、1つ又は複数のシーケンスパラメータセットRBSPによって参照可能なパラメータを含んでもよい。
ビデオパラメータセット(VPS)とシーケンスパラメータセット(SPS)、ピクチャパラメータセット(PPS)の間の関係及び階層は次のように記述できる。VPSは、スケーラビリティおよび/または3DVの背景では、パラメータセット階層でSPSの1段上に位置する。VPSは、全ての(スケーラブルまたはビュー)レイヤに亘って全スライスに共通なパラメータを符号化ビデオシーケンス全体に含んでもよい。SPSは、特定の(スケーラブルまたはビュー)レイヤにおける全スライスに共通なパラメータを符号化ビデオシーケンス全体に含み、複数の(スケーラブルまたはビュー)レイヤで共有されてもよい。PPSは、特定のレイヤ表現(特定のアクセス単位における特定のスケーラブルまたはビューレイヤの表現)における全スライスに共通なパラメータを含み、複数のレイヤ表現における全スライスで共有されるものである。
VPSは、全ての(スケーラブルまたはビュー)レイヤに亘って全スライスに適用可能なその他多くの情報を符号化ビデオシーケンス全体に提供しうるが、さらにレイヤの依存表現に関する情報をビットストリームに提供してもよい。HEVCのスケーラブル拡張では、VPSは例えば、NAL単位ヘッダから得られるLayerId値を1つ又は複数のスケーラビリティ次元の値にマッピングすることを含んでもよい。こうした値は例えば、SVCおよびMVCと同様に定義されるレイヤに関するdependency_id、quality_id、view_id、およびdepth_flagに対応してもよい。VPSは1つ又は複数のレイヤに関するプロファイルおよびレベル情報を含んでもよく、さらに、レイヤ表現の1つ又は複数の時間軸サブレイヤ(特定のtemporal_id値以下のVCL-NAL単位から成る)に関するプロファイルおよび/またはレベルを含んでもよい。
H.264/AVCおよびHEVCのシンタックスでは様々なパラメータセットの事例が許容され、各事例は固有の識別子で識別される。パラメータセットに必要なメモリ使用量を制限するために、パラメータセット識別値域は制限されている。H.264/AVCおよびHEVC規格では、各スライスヘッダは、そのスライスを含むピクチャの復号に対してアクティブなピクチャパラメータセットの識別子を含む。各ピクチャパラメータセットは、アクティブなシーケンスパラメータセットの識別子を含む。その結果、ピクチャとシーケンスパラメータセットの伝送がスライスの伝送と正確に同期されている必要がない。実際に、アクティブシーケンスとピクチャパラメータセットはそれらが参照される前までに受取られていれば十分であり、スライスデータ用のプロトコルよりも高い信頼性のある伝送機構を使って「帯域外」でパラメータセットを伝送することが可能になる。例えば、パラメータセットはリアルタイム転送プロトコル(Real-time Transport Protocol;RTP)セッション用のセッション記述でのパラメータとして含まれてもよい。パラメータセットは、帯域内で伝送される場合、エラー耐性を高めるために繰り返されることもある。
パラメータセットはスライスや別のアクティブパラメータセットからの参照によってアクティブ化されてもよい。場合によっては、バッファリング期間SEIメッセージのような別のシンタックス構造からの参照によることもある。
SEI-NAL単位は1つ又は複数のSEIメッセージを含んでもよい。これらは出力ピクチャの復号には必要ないが、ピクチャ出力タイミングやエラー検出、エラー隠蔽、リソース予約などの関連処理を補助してもよい。複数のSEIメッセージがH.264/AVCおよびHEVCで規定され、ユーザデータのSEIメッセージによって組織や企業が独自に使用するSEIメッセージを規定できる。H.264/AVCおよびHEVCは、規定されたSEIメッセージのシンタックスと意味を含むが、受信側でメッセージを取扱う処理については何も定義されない。その結果、エンコーダはSEIメッセージを作成する際、H.264/AVC規格やHEVC規格に従い、デコーダもそれぞれH.264/AVC規格やHEVC規格に準拠する必要がある。しかし、SEIメッセージを出力規定に準じて処理する必要はない。H.264/AVCおよびHEVCでSEIメッセージのシンタックスと意味を含める理由の1つは、異なるシステム仕様でも補助情報を同じ様に解釈し相互運用を可能にすることである。システム仕様は符号化側と復号側の両方で特定のSEIメッセージを使用できるように要求するものであり、受信側で特定のSEIメッセージを取扱う処理も規定されてもよい。
符号化ピクチャはピクチャの符号化された表現である。H.264/AVCでの符号化ピクチャは、ピクチャの復号に必要なVCL-NAL単位を含む。H.264/AVCでは、符号化ピクチャはプライマリ符号化ピクチャまたは冗長符号化ピクチャである。プライマリ符号化ピクチャは有効なビットストリームの復号処理で使用される。一方、冗長符号化ピクチャは、プライマリ符号化ピクチャが正しく復号されない場合にだけ復号される冗長表現である。HEVCでは、冗長符号化ピクチャは規定されていない。
H.264/AVCでは、アクセス単位がプライマリ符号化ピクチャとそれに関連付けられるNAL単位を含む。HEVCでは、アクセス単位は、特定の分類規則に従って互いに関連付けられ、復号順で連続し、正確に1つの符号化ピクチャを含むNAL単位のセットとして規定される。H.264/AVCでは、アクセス単位内でのNAL単位の出現順序が次のように制限されている。追加アクセス単位区切りのNAL単位は、アクセス単位の起点を示すことができる。この後に0以上のSEI-NAL単位が続く。プライマリ符号化ピクチャの符号化スライスが次に現われる。H.264/AVCでは、プライマリ符号化ピクチャの符号化スライスの後に0以上の冗長符号化ピクチャの符号化スライスが続いてもよい。冗長符号化ピクチャは、ピクチャまたはピクチャの一部の符号化された表現である。冗長符号化ピクチャは、伝送損失や物理記憶媒体でのデータ破損などによってデコーダがプライマリ符号化ピクチャを受取れない場合に復号されてもよい。
H.264/AVCでは、アクセス単位は補助符号化ピクチャを含んでもよい。これは、プライマリ符号化ピクチャを補助/補完し、表示処理などで使用できるピクチャである。補助符号化ピクチャは例えば、復号ピクチャのサンプルの透過レベルを特定するアルファチャンネルやアルファ面として使用されてもよい。アルファチャンネルまたはアルファ面は、レイヤ成分やレンダリングシステムで使用されてもよい。出力ピクチャは、互いに表面で少なくとも一部が透過しているピクチャを重ね合わせることで作成される。補助符号化ピクチャは、モノクロ冗長符号化ピクチャとして同一のシンタックスと意味の制限がある。H.264/AVCでは、補助符号化ピクチャはプライマリ符号化ピクチャと同数のマクロブロックを含む。
H.264/AVCでは、符号化ビデオシーケンスは、連続するアクセス単位のシーケンスとして定義される。このシーケンスは復号処理の順序であって、IDRアクセス単位を含んでそこから、次のIDRアクセス単位を含まずその直前かビットストリームの最後のうち先に出現するところまでの順序である。HEVCでは、符号化ビデオシーケンスは、復号順に、ビットストリームの先頭アクセス単位であるCRAアクセス単位、IDRアクセス単位又はBLAアクセス単位、0以上の非IDRアクセス単位又は非BLAアクセス単位から成るアクセス単位のシーケンスとして規定されてもよい。非IDRアクセス単位又は非BLAアクセス単位には、サブシーケンスIDR/BLAアクセス単位以外の全てのサブシーケンスアクセス単位が含まれる。
ピクチャーグループ(GOP)とその特性は次のように定義されてもよい。GOPは、その前のピクチャが復号されたどうかに関係なく復号される。オープンGOPとは、復号処理がその最初のイントラピクチャから開始する場合に、出力順で最初のイントラピクチャより先のピクチャが正しく復号できない様なピクチャグループである。換言すれば、オープンGOPのピクチャは、その前のGOPに属するピクチャを(インター予測で)参照してもよい。H.264/AVCデコーダは、H.264/AVCビットストリームでのリカバリポイントのSEIメッセージによって、オープンGOPの始めのイントラピクチャを認識できる。HEVCデコーダはオープンGOPの始めのイントラピクチャを認識できる。これは、符号化スライスに対して特別なNAL単位タイプであるCRA-NAL単位タイプが使用されるからである。クローズドGOPとは、復号処理がその最初のイントラピクチャから開始する場合に、全ピクチャが正しく復号される様なピクチャグループである。換言すれば、クローズドGOPではその前のGOPに属するピクチャを参照するピクチャは存在しない。H.264/AVCおよびHEVCでは、クローズドGOPはIDRアクセス単位から始まる。HEVCでは、クローズドGOPはBLA_W_DLP又はBLA_N_LPピクチャから開始してもよい。その結果、クローズドGOPの構造はオープンGOPの構造よりも高いエラー回復能力を持つ。しかし、圧縮効率を減らす可能性があるという代償を伴う。オープンGOPの符号化構造は、リファレンスピクチャの選択における高い柔軟性によって、より効率的な圧縮を可能にする。
H.264/AVCおよびHEVCのビットストリームシンタックスは、特定のピクチャが別のピクチャのイントラ予測のためのリファレンスピクチャであるかを示す。任意の符号化タイプ(I,P,B)のピクチャは、H.264/AVCおよびHEVCのリファレンスピクチャまたは非リファレンスピクチャであり得る。
H.264/AVCは、デコーダでのメモリ消費を制御するために、復号リファレンスピクチャのマーキング処理を特定する。インター予測に用いるリファレンスピクチャの数の最大値はMで表わし、シーケンスパラメータセットで決定される。リファレンスピクチャは、復号されるときに「リファレンスに使用済」とマークされる。リファレンスピクチャの復号で「リファレンスに使用済」とマークされるピクチャの数がMを超える場合、少なくとも1つのピクチャは「リファレンスに未使用」とマークされる。復号リファレンスピクチャのマーキング動作には適応メモリ制御とスライディングウィンドウの2種類がある。復号リファレンスピクチャのマーキング動作モードはピクチャに基づいて選択される。適応メモリ制御は、どのピクチャが「リファレンスに未使用」とマークされているかを明示的に信号で伝えられ、短期リファレンスピクチャに長期インデクスを割当ててもよい。適応メモリ制御は、ビットストリームにメモリ管理制御操作(memory management control operation;MMCO)パラメータの存在を要求してもよい。MMCOパラメータは、復号リファレンスピクチャ・マーキングのシンタックス要素に含まれてもよい。スライディングウィンドウ動作モードが使われ、M枚のピクチャが「リファレンスに使用済」とマークされている場合、「リファレンスに使用済」とマークされている短期リファレンスピクチャの中で最初に復号された短期リファレンスピクチャは「リファレンスに未使用」とマークされる。換言すれば、スライディングウィンドウ動作モードは、短期リファレンスピクチャに関して先入れ先出し(first-in-first-out)バッファ動作となる。
H.264/AVCのメモリ管理制御操作によっては、現ピクチャ以外の全てのリファレンスピクチャを「リファレンスに未使用」とマークする。瞬時復号リフレッシュ(IDR)ピクチャはイントラ符号化スライスのみを含み、リファレンスピクチャに対する同一「リセット」を行う。
HEVC規格では、リファレンスピクチャ・マーキングのシンタックス構造と関連する復号処理は使用されない。その代わり、リファレンスピクチャセット(reference picture set;RPS)のシンタックス構造と復号処理が同じ目的で使用される。特定のピクチャに有効またはアクティブなリファレンスピクチャセットは、そのピクチャに対するリファレンスとして使われる全てのリファレンスピクチャと、復号順で後続の任意のピクチャに対して「リファレンスに使用済」とマークされたままである全てのリファレンスピクチャを含む。リファレンスピクチャセットには6つのサブセットがあり、それぞれRefPicSetStCurr0,RefPicSetStCurr1,RefPicSetStFoll0,RefPicSetStFoll1,RefPicSetLtCurr,およびRefPicSetLtFollと呼ばれる。この6つのサブセットの表記法は次の通りである。「Curr」は現ピクチャのリファレンスピクチャリストに含まれるリファレンスピクチャを表わす。このため、現ピクチャに対するインター予測リファレンスとして使用されてもよい。「Foll」は現ピクチャのリファレンスピクチャリストに含まれないリファレンスピクチャを表わす。ただし、復号順で後続のピクチャではリファレンスピクチャとして使用されてもよい。「St」は短期リファレンスピクチャを表わし、通常、POC値の特定数の最下位ビットで識別される。「Lt」は長期リファレンスピクチャを表わし、特定の方法で識別される。通常、現ピクチャに対するPOC値の差は、前述した特定数の最下位ビットによって表わされるものよりも大きい。「0」は現ピクチャのPOC値よりも小さいPOC値を持つリファレンスピクチャを表わす。「1」は現ピクチャのPOC値よりも大きいPOC値を持つリファレンスピクチャを表わす。RefPicSetStCurr0,RefPicSetStCurr1,RefPicSetStFoll0およびRefPicSetStFoll1はまとめて、リファレンスピクチャセットの短期サブセットと呼ばれる。RefPicSetLtCurrおよびRefPicSetLtFollはまとめて、リファレンスピクチャセットの長期サブセットと呼ばれる。
HEVC規格では、リファレンスピクチャセットは、シーケンスパラメータセットで特定され、リファレンスピクチャセットへのインデクスを介してスライスヘッダ用に取込まれてもよい。リファレンスピクチャセットはスライスヘッダで特定されてもよい。リファレンスピクチャセットの長期サブセットは通常スライスヘッダでのみ特定されるが、同じリファレンスピクチャセットの短期サブセットはピクチャパラメータセットで特定されてもよく、スライスヘッダで特定されてもよい。リファレンスピクチャセットは独立に符号化されてもよく、別のリファレンスピクチャセットから予測されてもよい(インターRPS予測と呼ばれる)。リファレンスピクチャセットが独立に符号化される場合、シンタックス構造はタイプの異なるリファレンスピクチャの繰り返しを3ループまで含める。こうしたリファレンスピクチャとは、現ピクチャより小さいPOC値を持つ短期リファレンスピクチャと現ピクチャより大きいPOC値を持つ短期リファレンスピクチャ、長期リファレンスピクチャである。各ループエントリは、「リファレンスに使用済」とマークされるピクチャを特定する。一般に、ピクチャは異なるPOC値で特定される。インターRPS予測は、現ピクチャのリファレンスピクチャセットが先に復号済みのピクチャのリファレンスピクチャセットから予測可能であるという事実を利用する。これは、現ピクチャの全てのリファレンスピクチャは、前のピクチャのリファレンスピクチャであるか、先に復号済みのピクチャそのものであるかの何れかであるからである。したがって、これらのピクチャの中のどれがリファレンスピクチャであり、現ピクチャの予測に用いられるかを示すことだけが必要となる。リファレンスピクチャセット符号化の両方の種類で、各リファレンスピクチャに対してフラグ(used_by_curr_pic_X_flag)が追加で送信される。このフラグは、そのリファレンスピクチャがリファレンスとして現ピクチャに用いられる(*Curr listに含まれる)か、そうでないか(*Foll listに含まれるか)を示す。現在のスライス(現スライス)が使うリファレンスピクチャセットに含まれるピクチャは「リファレンスに使用済」とマークされ、現スライスが使うリファレンスピクチャセットに含まれないピクチャは「リファレンスに未使用」とマークされる。現ピクチャがIDRピクチャである場合、RefPicSetStCurr0,RefPicSetStCurr1,RefPicSetStFoll0,RefPicSetStFoll1,RefPicSetLtCurr,およびRefPicSetLtFollは全て空に設定される。
復号ピクチャバッファ(Decoded Picture Buffer;DPB)はエンコーダおよび/またはデコーダで使用されてもよい。復号ピクチャをバッファする理由は2つある。一つはインター予測で参照するためで、もう一つは復号ピクチャを出力順に並べ直すためである。H.264/AVCおよびHEVCはリファレンスピクチャのマーキングと出力の並べ換えの両方で相当な柔軟性を与えるため、リファレンスピクチャのバッファリングと出力ピクチャのバッファリングで別々のバッファを使うことはメモリリソースを浪費する可能性がある。このためDPBは、リファレンスピクチャと出力並び替えのための統合された復号ピクチャバッファリング処理を備えてもよい。復号ピクチャは、リファレンスとして使用されず出力される必要がなくなると、DPBから削除されてもよい。
H.264/AVCおよびHEVC等の多くの符号化モードでは、インター予測用リファレンスピクチャはリファレンスピクチャリストへのインデクスで示される。このインデクスは可変長符号化で符号化されてもよい。可変長符号化によって多くの場合、インデクスを小さくして対応するシンタックス要素に対してより小さい値を持つことができる。H.264/AVCおよびHEVCでは、双予測(B)スライスにはそれぞれ2つのリファレンスピクチャリスト(リファレンスピクチャリスト0およびリファレンスピクチャリスト1)が作成され、インター予測(P)スライスにはそれぞれ1つのリファレンスピクチャ・リスト(リファレンスピクチャ・リスト0)が形成される。
リファレンスピクチャリスト0およびリファレンスピクチャリスト1等のリファレンスピクチャリストは通常、2つのステップで作成される。第1ステップでは、初期リファレンスピクチャリストが作成される。初期リファレンスピクチャリストは例えば、frame_numやPOC,temporal_id,GOP構造などの予測階層に関する情報、またはこれらの組合せに基づいて作成されてもよい。第2ステップでは、リファレンスピクチャリスト並び替え(reference picture list reordering;RPLR)命令によって初期リファレンスピクチャリストが並び替えられてもよい。RPLR命令はリファレンスピクチャリスト変更シンタックス構造とも呼ばれ、スライスヘッダに含まれてもよい。RPLR命令は、各リファレンスピクチャリストの先頭に並べられるピクチャを示す。第2ステップはリファレンスピクチャリスト変更処理とも呼ばれ、RPLR命令がリファレンスピクチャリスト変更シンタックス構造に含まれてもよい。リファレンスピクチャセットが用いられる場合、リファレンスピクチャリスト0はRefPicSetStCurr0,RefPicSetStCurr1,RefPicSetLtCurrをこの順序で含むように初期化されてもよい。リファレンスピクチャリスト1はRefPicSetStCurr1,RefPicSetStCurr0をこの順序で含むように初期化されてもよい。初期リファレンスピクチャリストはリファレンスピクチャリスト変更シンタックス構造を通じて変更されてもよい。初期リファレンスピクチャリストのピクチャはリストに対するエントリインデクスを通じて識別されてもよい。
ビデオ符号化及び/又はビデオ復号に適用されうる種々の予測タイプの分類方法は、サンプル値又は符号化(復号)パラメータに対してどの予測が適用できるかを考慮するものである。
サンプル予測では、特定のピクチャ領域または「ブロック」のピクセル値またはサンプル値が予測される。こうしたピクセル又はサンプル値は、例えば次の方法の1つ又は複数を用いて予測することができる:
・ 動き補償機構(時間予測、動き補償時間予測、動き補償予測、MCPとも呼ばれる)。これには、符号化されるブロックと合致する、先に符号化済みのビデオフレームの1つにある領域の検索と標示が含まれる。
・ ビュー間予測。これには、符号化されるブロックと合致する、先に符号化済みのビューコンポーネントの1つにある領域の検索と標示が含まれる。
・ ビュー合成予測。これには、予測ブロック、又は再構成/復号範囲情報に基づいて導出される予測ブロックがある画像領域の合成が含まれる。
・ いわゆるSVCの IntraBL(ベースレイヤ)モードのような、再構成/復号サンプルを用いるレイヤ間予測。
・ レイヤ間残差予測。これは例えば、現在の拡張レイヤブロックの残差ブロックを予測するために、リファレンスレイヤの符号化残差、又は再構成/復号リファレンスレイヤピクチャと対応する再構成/復号拡張レイヤピクチャとの差から算出された残差が用いられてもよい。残差ブロックは、現在の拡張レイヤブロックに対する最終予測ブロックを取得するために、例えば動き補償予測ブロックに追加されてもよい。場合によっては、残差予測は、サンプル予測やシンタックス予測に加わる別のタイプの予測として扱われることもある。
・ インター予測。これは、空間領域の関係性の検索と標示を含む空間機構によって、ピクセル値又はサンプル値を予測することができる。
シンタックス予測。これはパラメータ予測とも呼ばれ、先に符号化(復号)されたシンタックス要素、及び/又は先に算出された変数から、シンタックス要素、及び/又はシンタックス要素から算出されるシンタックス要素値及び/又は変数が予測される。ただし、以下ではシンタックス予測の非限定的実施例が示されている。
・ 動きベクトル予測。これは、例えばインター予測及び/又はビュー間予測のための動きベクトルが、ブロック固有の予測動きベクトルに関して差動符号化されてもよい。多くのビデオコーデックでは、予測動きベクトルは所定の方法、例えば、隣接ブロックの符号化/復号動きベクトルの中央値を計算することによって生成される。動きベクトル予測を行う別の方法は、高度動きベクトル予測(advanced motion vector prediction、AMVP)とも呼ばれ、時間軸上のリファレンスピクチャにおける隣接ブロック及び/又は同位置のブロックから予測候補のリストを作成し、選択された候補を動きベクトルの予測として信号で伝える。動きベクトルの値の予測に加え、先に符号化/復号されたピクチャのリファレンスインデクスが予測されてもよい。リファレンスインデクスは、時間軸上のリファレンスピクチャにおける隣接ブロック及び/又は同位置のブロックから予測される。動きベクトルの差動符号化は、スライス境界を跨ぐときは無効にされる。
・ CTUからCU、更にPUといったブロックパーティショニングも予測されてもよい。
・ フィルタパラメータ予測では、サンプル適応オフセットに対するフィルタリングパラメータが予測されてもよい。
ビデオ符号化及び/又はビデオ復号に適用されうる種々の予測タイプの別の分類方法は、予測がどのドメイン又はスケーラビリティタイプに及ぶかを考慮するものである。この分類では、次のタイプの予測の1つ又は複数が導入される。場合によっては、これらは予測方向と呼ばれることもある。
・ 時間予測。これは例えば、通常、同一スケーラビリティレイヤ、同一ビュー、同一コンポーネントタイプ(テクスチャ又は深度)における前のピクチャから予測される、サンプル値又は動きベクトルの時間予測である。
・ ビュー間予測(クロスビュー予測とも呼ばれる)。これは、通常、同一時刻又はアクセス単位、同一コンポーネントタイプのビューコンポーネント間で行う予測である。
・ レイヤ間予測。これは、通常、同一時刻、同一コンポーネントタイプ、同一ビューのレイヤ間で行う予測である。
・ インター成分予測は、復号処理で用いられるシンタックス要素値やサンプル値、変数値、または特定のタイプの成分ピクチャから別のタイプの成分ピクチャまでのあらゆるものの予測を含むように定義されてもよい。例えば、インター成分予測は、深度ビュー成分からテクスチャビュー成分を予測すること、またはその逆を含んでもよい。
先に符号化済みの画像からの画像情報を用いた予測アプローチは、インター予測法とも呼ばれる。インター予測は動き補償時間予測のみを含むものと見なされてもよく、あるいは、予測元としてサンプルの中の再構成/復号ブロックが使用される全てのタイプの予測、即ち従来のビュー間予測等を含むものと見なされてもよい。インター予測は、サンプル予測のみを含むものと見なされてもよいが、サンプル予測とシンタックス予測の両方を含むものと見なされてもよい。シンタックス予測及びサンプル予測の結果として、ピクセル又はサンプルの予測ブロックが取得されてもよい。
同一画像内の画像情報を用いた予測アプローチは、イントラ予測法とも呼ばれる。イントラ予測は、サンプル予測のみを含むものと見なされてもよいが、サンプル予測とシンタックス予測の両方を含むものと見なされてもよい。
エンコーダが何らかの形で予測誤差又は残差符号化を用いることによって、予測変数値及び/又は予測ブロックのような予測が改善される場合、これを予測の継承と呼ぶことができる。
領域分割法で知られる符号化技術は、インピクチャ予測とインター予測を制限することに基づいている。ピクチャ内の離隔領域には任意のマクロブロック(又は類似のもの)が含まれ、ピクチャは0以上の重なり合わない離隔領域を含むことができる。ピクチャのどの離隔領域にも掛からないピクチャ領域がある場合、それは残余領域と呼ばれる。離隔領域を符号化する場合、その境界を跨ぐところで少なくとも複数タイプのインピクチャ予測が無効化される。残余領域は、同一ピクチャの離隔領域から予測されてもよい。
符号化離隔領域は、同じ符号化ピクチャにおける他の離隔領域又は残余領域を用いずに復号することができる。ピクチャの残余領域を復号する前に全ての離隔領域の復号が必須であってもよい。実装によっては、離隔領域又は残余領域が少なくとも1つのスライスを含んでもよい。
離隔領域同士で相互に予測し合うピクチャは、離隔領域ピクチャグループにグループ化されてもよい。離隔領域は、同じ離隔領域ピクチャグループ内の他のピクチャで対応する離隔領域からインター予測することができる。その一方で、他の離隔領域からのインター予測又はその離隔領域ピクチャグループ以外からのインター予測を禁止することもできる。残余領域は、任意の離隔領域からインター予測することができる。離隔領域ピクチャグループのピクチャ全体が、結合された離隔領域の形状や位置、大きさであってもよい。
H.264/AVCコーデックにおける離隔領域の符号化は、スライスグループに基づいてもよい。スライスグループのマクロブロック位置のマッピングは、ピクチャパラメータセットで特定されてもよい。H.264/AVCシンタックスには特定のスライスグループパターンを符号化するシンタックスが含まれ、このスライスグループパターンは静的と進化的という2つのタイプに分類することができる。静的スライスグループはピクチャパラメータセットが有効である限り不変であり続け、進化的スライスグループは、ピクチャパラメータセットの対応するパラメータ及びスライスヘッダのスライスグループ変化サイクルパラメータに従ってピクチャ毎に変化することができる。静的スライスグループパターンには、インターリーブやチェッカーボード、矩形配向、自由形状が含まれる。進化的スライスグループパターンには、水平ワイプや垂直ワイプ、ボックスイン、ボックスアウトが含まれる。特に、矩形配向パターンと進化的パターンは離隔領域の符号化に適しており、以下でより慎重に記述する。
矩形配向スライスグループパターンでは、ピクチャ領域内において希望する数の矩形が指定される。前景スライスグループは対応する矩形内にマクロブロック位置を含むが、これより前のスライスグループによって既に割り当てられたマクロブロック位置は除外される。残余スライスグループは、前景スライスグループがカバーしないマクロブロックを含む。
進化的スライスグループは、マクロブロック位置のスキャン順序と、ピクチャ当たりのマクロブロック数で表わしたスライスグループサイズの変化率を示すことによって特定される。各符号化ピクチャは、(スライスヘッダで提供される)スライスグループ変化サイクルパラメータに関連付けられる。変化サイクルに変化率を掛けると、第1のスライスグループにおけるマクロブロックの数が示される。第2のスライスグループには残りのマクロブロック位置が含まれる。
H.264/AVCでは、スライスグループの境界を跨ぐところでインピクチャ予測が無効化されるが、これはスライスグループ境界がスライスの境界にあるためである。したがって、各スライスグループは離隔領域か残余領域である。
各スライスグループはピクチャ内に識別番号を有する。エンコーダは、同一の識別番号を持つスライスグループに属する復号マクロブロックのみを符号化されるスライスグループとして参照する方法で動きベクトルを制限することができる。エンコーダは、端数ピクセル補間のために元サンプルの範囲が必要であり、全ての元サンプルが特定のスライスグループ内に存在していなくてはならないことを考慮しなくてはならない。
H.264/AVCコーデックにはデブロッキングループフィルタが含まれる。ループフィルタリングは4×4ブロック境界の各々に適用されるが、スライス境界ではエンコーダがループフィルタリングを停止することができる。スライス境界でループフィルタリングが止められる場合、デコーダでの完全再構成ピクチャは、段階的ランダムアクセスの実行時に生成することができる。それ以外では、再構成ピクチャは回復ポイント後であっても中身が不完全であるかもしれない。
H.264/AVC規格の回復ポイントSEIメッセージ及び動き制約スライスグループSEIメッセージは、スライスグループによっては離隔領域として制限された動きベクトルで符号化されるものがあることを示すために使用することができる。デコーダはこの情報を利用して、例えば高速ランダムアクセスを実行したり、残余領域を無視して処理時間を節約したりすることができる。
サブピクチャの概念は、HEVCに関して、例えば文献JCTVC-I0356(<http://phenix.int-evry.fr/jct/doc_end_user/documents/9_Geneva/wg11/JCTVC-I0356-v1.zip>)で提案されている。これは、H.264/AVCの矩形離隔領域又は矩形動き制約スライスグループセットと同様のものである。文献JCTVC-I0356で提案されているサブピクチャの概念は以下で説明される。ただし、サブピクチャは以下で説明されるものと同一でなくても、同様に規定されたものでもよい点に理解すべきである。サブピクチャの概念では、ピクチャは所定の矩形領域に分割される。各サブピクチャは、1つのピクチャを構成する全てのサブピクチャがSPSやPPS、リファレンスピクチャセットのような同一の大域情報を共有するという点を除いて、独立したピクチャのように処理される。サブピクチャは、幾何学的にはタイルと同様であり、その特性は次の通りである:シーケンスレベルで特定される、LCUで揃えた矩形領域である。ピクチャの中のサブピクチャは、そのピクチャのサブピクチャラスタースキャンでスキャンされてもよい。各サブピクチャは新たなスライスを開始する。ピクチャに複数のタイルが存在する場合、サブピクチャ境界とタイル境界は揃えられてもよい。サブピクチャを跨ぐループフィルタリングは無くてもよい。サブピクチャの範囲外のサンプル値と動き情報の予測は無くてもよい。サブピクチャ範囲外の1つ又は複数のサンプル値を用いて算出される端数サンプル位置のサンプル値もまた、サブピクチャ内のサンプルをインター予測するために用いられなくてもよい。動きベクトルがサブピクチャの外側の領域を指す場合、ピクチャ境界に対して規定されるパディング処理が適用されてもよい。LCUは、サブピクチャが複数のタイルを含まない限り、サブピクチャ内においてラスタースキャン順でスキャンされる。サブピクチャ内のタイルは、そのピクチャのサブピクチャラスタースキャンでスキャンされてもよい。タイルは、デフォルトで1ピクチャ当たり1タイルの場合を除き、サブピクチャ境界を跨ぐことはできない。ピクチャレベルに利用可能な全ての符号化機構は、サブピクチャレベルでもサポートされる。
HEVCでは、コーデックが並列化の利用向上、即ち符号化及び/又は復号タスクの並列処理の向上を行えるようにする実装が成されてきた。これにより、最新のマルチコアプロセッサのアーキテクチャをより効率的に利用することができる。
原理的には、スライスはデコーダの並列化に利用可能であるが、並列化にスライスを採用すると、符号化効率が相対的に悪化することが多い。並列化の利用を改善するために、HEVCには波面処理(wavefront processing)の概念が導入されている。
波面処理を有効にするために、エンコーダ及び/又はデコーダは、前のCTU行の2番目のCTUのCABAC状態を現在のCTU行の初期CABAC状態として使用する。したがって、現在のCTU行の処理は、前のCTUの2番目のCTUの処理が完了した時点で開始することができる。この特性により、CTU行は並列で処理することができる。一般に、符号化規格等で前のCTU行のエントロピー符号化(復号)状態の変換にCTUが使用されることを予め規定してもよい。また、このことをエンコーダが決定してビットストリームに標示してもよく、デコーダがビットストリームから復号してもよく、これら両方でもよい。
HEVCの波面処理は、波面並列処理(Wavefront Parallel Processing, WPP)と重ね合わせ波面(Overlapped Wavefront, OWF)という2つの並列化アプローチで使用される。WPPでは、符号化損失を大きくせずに並列処理可能なピクチャ分割を生成することができる。
WPPは、全ての符号化依存性を保持しながら符号化ツリー単位(CTU)の行を並列で処理する。WPPでは、エントロピー符号化、予測符号化に加えインループフィルタリングを単一の処理ステップで適用することができ、WPPの実装をより直接的に行える。一方、OWFでは、連続ピクチャの実行処理を重ね合わせることができる。現在のピクチャの符号化ツリー単位行の処理が完了し、それ以上利用可能な行が無い場合、現在のピクチャの処理完了を待たずに次のピクチャの処理を開始することができる。
波面処理に対して符号化ピクチャが制限されているか、タイルが使用されている場合、CTU行又はタイルは(それぞれ)ビットストリームにおいてバイト単位で揃えられていてもよく、開始コードが先にあってもよい。加えて、ビットストリーム(例えば、スライスヘッダ)又はその外部(例えば、コンテナファイル)の何れか又は両方でエントリポイントが与えられていてもよい。エントリポイントとは、(波面処理可能な符号化ピクチャに対する)タイルのCTU行の開始を示すためのバイトポインタやバイトカウント、又はそれに類する直接的な参照機構である。HEVCでは、エントリポイントはスライスヘッダのentry_point_offset_minus1[ i ]を用いて指定することができる。HEVCファイルフォーマット(ISO/IEC 14496-15)では、サブサンプル情報ボックスがエントリポイントの情報を提供してもよい。エントリポイントに加えて又はそれに代わって従属スライスセグメントの使用が有用であるというシナリオもある。従属スライスセグメントは、例えば符号化ピクチャが波面処理について制限される場合にCTUについて形成されてもよい。その結果、CTU行の境界を決定するために従属スライスセグメントNAL単位の開始が利用されてもよい。
スケーラブルビデオ符号化とは、コンテンツに関してビットレートや解像度、又はフレームレートが異なる複数の表現を1つのビットストリームが格納できるような符号化構造のことである。このような場合、受信側は、その特定(例えば、ディスプレイ装置に最適な解像度)に応じて望ましい表現を抽出することができる。あるいは、サーバまたはネットワーク要素が、ネットワーク特性や受信側の処理能力等に応じて受信側に送信されるように、ビットストリームの一部を抽出することもできる。スケーラブルビットストリームは、一般的には、利用可能な最低品質ビデオを提供する1層の基本レイヤ(base layer)と、下位レイヤと共に受信・復号されるとビデオ品質を高める1又は複数層の拡張レイヤ(enhancement layer)から構成される。拡張レイヤに対する符号化効率を高めるために、レイヤの符号化表現は、一般に下位レイヤに依存する。例えば、拡張レイヤの動き情報およびモード情報が下位レイヤから予測されてもよい。同様に、拡張レイヤ予測を作成するために、下位レイヤのピクセルデータを用いることもできる。
スケーラブルビデオ符号化方式によっては、ビデオ信号はベースレイヤおよび1つ又は複数の拡張レイヤに符号化されてもよい。拡張レイヤは時間分解能(すなわち、フレームレート)や空間分解能を上げたり、別のレイヤやその一部によって表わされるビデオコンテンツの品質を単に上げたりしてもよい。各レイヤは、それぞれの全ての従属レイヤと合わせて、特定の空間分解能,時間分解能および品質レベルでのビデオ信号の一表現となる。本願では、全ての従属レイヤを伴うスケーラブルレイヤを「スケーラブルレイヤ表現」と呼ぶ。特定の忠実度で元の信号表現を生成するために、スケーラブルレイヤ表現に対応するスケーラブルビットストリームの一部が抽出され復号される。
符号化規格によっては、スケーラブルビットストリームの生成が許容される。意味のある復号表現は、スケーラブルビットストリームの特定部分のみを復号することによって生成することができる。スケーラブルビットストリームは、例えばストリーミングサーバでのプレ符号化ユニキャストストリームのレート適応や、様々な能力及び/又は様々なネットワーク条件を有する端末への単一ビットストリームの伝送に使用することができる。スケーラブルビデオ符号化のその他の使用例のリストは、次の文献に掲載されている:ISO/IEC JTC1 SC29 WG11 (MPEG)成果文書N5540、「スケーラブルビデオ符号化の応用及び要件」("Applications and Requirements for Scalable Video Coding")、第64回MPEGミーティング、2003年3月10−14日、於タイ、パタヤ。
場合によっては、特定の位置または任意の位置の後で拡張レイヤのデータが切り捨てられてもよい。ここで切り捨て位置はそれぞれ、視覚的品質を高めて表現する追加データを含んでもよい。こうしたスケーラビリティは細粒度スケーラビリティ(fine-grained/granularity scalability;FGS)と呼ばれる。
SVCはレイヤ間予測機構を用い、現在再構成済みのレイヤ以外のレイヤまたは次の下位レイヤから特定の情報を予測できる。レイヤ間予測できた情報は、イントラテクスチャと動き,残差のデータを含む。レイヤ間動き予測は、ブロック符号化モードやヘッダ情報などの予測を含み、下位レイヤからの動きが上位レイヤの予測に用いられてもよい。イントラ符号化の場合、下位レイヤの周囲マクロブロックや同位置のマクロブロックからの予測が可能である。こうした予測技術は先に符号化済みのアクセス単位からの情報を使わないため、イントラ予測技術と呼ばれる。また、下位レイヤからの残差データも現レイヤの予測に用いることができる。
スケーラブルビデオ符号化(復号)は、シングルループ復号で知られる概念を用いて実現されてもよい。シングルループ復号では、復号リファレンスピクチャは復号される最上位レイヤのみで再構成され、それより下位のレイヤのピクチャは完全に復号されなくてもよく、あるいはレイヤ間予測に使用後破棄されてもよい。シングルループ復号では、デコーダは再生に望ましいスケーラブルレイヤ(「希望レイヤ」または「ターゲットレイヤ」と呼ばれる)に対してだけ動き補償および完全ピクチャ再構成を遂行する。こうして、マルチループ復号と比べ復号の複雑さを大幅に減らせる。希望レイヤ以外の全てのレイヤは完全に復号される必要がない。これは、符号化ピクチャデータの全て又は一部が希望レイヤの再構成に必要ないからである。ただし、(ターゲットレイヤよりも)下位レイヤは、レイヤ間動き予測のようなレイヤ間のシンタックス又はパラメータ予測に使用されることもある。あるいは又は加えて、下位レイヤはレイヤ間のイントラ予測に使用されてもよく、そのため下位レイヤのイントラ符号化ブロックが復号されなくてはならない場合もある。あるいは又は加えて、レイヤ間残差予測が適用されてもよい。レイヤ間残差予測では、下位レイヤの残差情報がターゲットレイヤの復号に使用されてもよく、その残差情報の復号又は再構成が必要となる場合もある。符号化構成によっては、大部分のピクチャの復号にシングル復号ループが必要となる場合もあるが、いわゆるベース表現(復号ベースレイヤピクチャ等)の再構成のために、第2の復号ループが選択的に適用されてもよい。ベース表現は予測リファレンスとして必要とされてもよいが、出力又は表示はされなくてもよい。
SVCではシングルループ復号が許容されている。これは制約テクスチャ内予測モードを用いることで可能となる。レイヤ間テクスチャ内予測はマクロブロック(MB)であって、そのMB内にベースレイヤの対応するブロックが位置するMBに対して適用可能である。同時に、ベースレイヤにおけるこうしたイントラMBは、制約イントラ予測を使用する(例えば、シンタックス要素"constrained_intra_pred_flag"が1に等しい)。シングルループ復号では、デコーダは再生に望ましいスケーラブルレイヤ(「希望レイヤ」または「ターゲットレイヤ」と呼ばれる)に対してだけ動き補償および完全ピクチャ再構成を遂行する。こうして、復号における複雑さを大幅に減らせる。希望レイヤ以外の全てのレイヤは完全に復号される必要がない。これは、レイヤ間予測(レイヤ間テクスチャ内予測,レイヤ間動き予測またはレイヤ間残差予測)に使用されないMBデータの全てまたは一部が希望レイヤの再構成に必要ないからである。
単一復号ループは殆どのピクチャの復号に必要であるが、第2の復号ループはベース表現を再構成するために選択的に適用される。このベース表現は、予測リファレンスとして必要であるが、出力または表示される必要はないので、いわゆるキーピクチャ("store_ref_base_pic_flag"が1に等しい)に対してのみ再構成される。
FGSはSVC規格のドラフトバージョンの一部に含まれていたが、最終版SVC規格からは除外された。よって以降では、FGSはSVC規格のドラフトバージョンの一部を背景として説明される。切り捨てされない拡張レイヤによって提供されるスケーラビリティは、粗粒度スケーラビリティ(coarse-grained/granularity scalability;CGS)と呼ばれる。これは、従来の品質(SNR)スケーラビリティと空間スケーラビリティを合わせて含む。SVC規格はいわゆる中粒度スケーラビリティ(medium-grained/granularity scalability;MGS)をサポートする。MGSでは、高品質ピクチャがSNRスケーラブルレイヤピクチャと同様に符号化されるが、FGSレイヤピクチャと同じ高水準シンタックス要素を用いて、シンタックス要素quality_idが0を超えることによって示される。
SVCドラフトにおけるスケーラビリティ構造は3つのシンタックス要素で特徴付けられる。"temporal_id","dependency_id","quality_id"の3つのシンタックス要素で特徴付けられる。シンタックス要素"temporal_id"は、時間スケーラビリティ階層または間接的にはフレームレートを示すのに用いられる。"temporal_id"の最大値が小さいピクチャを含むスケーラブルレイヤ表現のフレームレートは、"temporal_id"の最大値が大きいピクチャを含むスケーラブルレイヤ表現のフレームレートよりも低い。所与の時間レイヤは通常、下位時間レイヤ(すなわち、"temporal_id"がより小さい値の時間レイヤ)に依存するが、どの上位時間レイヤにも依存しない。シンタックス要素"dependency_id"は、CGSレイヤ間符号化依存階層を示すのに用いられる(前述の通り、SNRと空間スケーラビリティの両方を含む)。どの時間レベル位置でも、"dependency_id"値が小さいピクチャは、"dependency_id"値が大きいピクチャの符号化におけるレイヤ間予測に用いられてもよい。シンタックス要素"quality_id"は、FGSまたはMGSレイヤの品質レベル階層を示すのに用いられる。どの時間レベル位置でも、同一の"dependency_id"値であれば、"quality_id"値がQLであるピクチャは"quality_id"値がQL-1であるピクチャをレイヤ間予測に使用する。0を超える"quality_id"を持つ符号化スライスは、切り捨て可能なFGSスライスまたは切り捨て不可能なMGSスライスの何れかとして符号化されてもよい。
単純化するために、同一の"dependency_id"値を持つアクセス単位における全てのデータ単位(SVCの場合、ネットワーク抽象化層単位/NAL単位など)は、依存単位または依存表現と呼ばれる。1依存単位内では、同一の"quality_id"値を持つ全てのデータ単位は、品質単位またはレイヤ表現と呼ばれる。
復号ベースピクチャとも呼ばれるベース表現は、"quality_id"値が0である依存単位におけるビデオ符号化レイヤ(VCL)NAL単位の復号結果から得られる復号ピクチャで、"store_ref_base_pic_flag"が1に設定される。復号ピクチャとも呼ばれる拡張表現は通常の復号処理結果から得られ、最大依存表現に対して存在する全てのレイヤ表現が復号される。
前述の通り、CGSは空間スケーラビリティとSNRスケーラビリティの両方を含む。空間スケーラビリティは最初に、解像度の異なるビデオ表現をサポートするように設計される。各時刻に対して、VCL-NAL単位は同一アクセス単位で符号化され、これらのVCL-NAL単位が別々の解像度に対応している。復号中、低解像度VCL-NAL単位は動きフィールドおよび残差を提供する。これらは、高解像度ピクチャの最終復号および再構成によって引き継がれてもよい。従来のビデオ圧縮規格と比較した場合、SVCの空間スケーラビリティは、ベースレイヤが拡張レイヤをクロップおよびズームしたバージョンとなれるように一般化されている。
MGS品質レイヤはFGS品質レイヤと同様に"quality_id"で示される。各依存単位(同一の"dependency_id"を持つ)に対して、"quality_id"が0であるレイヤが存在し、"quality_id"が0を超える他のレイヤも存在し得る。"quality_id"が0を超えるこうしたレイヤは、スライスが切り捨て可能スライスとして符号化されたかどうかに応じてMGSレイヤまたはFGSレイヤの何れかである。
FGS拡張レイヤの基本形では、レイヤ間予測のみが使用される。したがって、FGS拡張レイヤは、復号シーケンスで誤差を伝播させず自由に切り捨てできる。しかし、FGSの基本形は圧縮効率が低くなる。この問題は、インター予測リファレンスに低品質ピクチャのみが使用されることで生じる。したがって、インター予測リファレンスとしてFGS拡張ピクチャの使用が提案されている。しかしこうした提案でも、FGSデータの一部が捨てられる際、ドリフトと呼ばれる符号化・復号間の不整合が生じ可能性がある。
SVCドラフト規格の特徴はFGS-NAL単位が自由にドロップされたり、切り捨てられたりできるが、SVCV規格の特徴は、MGS-NAL単位がビットストリームの適合性を損なわず自由にドロップされることができる(しかし、切り捨てられることはできない)。前述の通り、符号化時にこうしたFGSまたはMGSデータがインター予測リファレンスに対して使用される場合、データのドロップまたは切り捨てはデコーダ側とエンコーダ側との間で復号ピクチャの不整合を生じさせる。この不整合がドリフトと呼ばれる。
FGSまたはMGSデータのドロップまたは切り捨てによるドリフトを制御するために、SVCは次の解決方法を適用してきた。特定の依存単位において、("quality_id"が0であるCGSピクチャのみの復号とそれに依存する全ての下位レイヤデータによる)ベース表現は復号ピクチャバッファに格納される。同一の"dependency_id"値を持つ次の依存単位を符号化する際、FGS-NALまたはMGS-NAL単位を含む全てのNAL単位はインター予測リファレンス用にベース表現を使用する。その結果、先のアクセス単位におけるFGS/MGS-NAL単位のドロップまたは切り捨てによるドリフトは全て、このアクセス単位で止められる。同一の"dependency_id"値を持つ他の依存単位に対して、全てのNAL単位は、高い符号化効率のために、インター予測リファレンス用にこの復号ピクチャを使用する。
NAL単位はそれぞれのNAL単位ヘッダにシンタックス要素"use_ref_base_pic_flag"を含む。この要素の値が1である場合、NAL単位の復号ではインター予測処理時にリファレンスピクチャのベース表現を使用する。シンタックス要素"store_ref_base_pic_flag"は、後のピクチャに対してインター予測用に現ピクチャのベース表現を格納するか(値が1の場合)否か(値が0の場合)を特定する。
"quality_id"が0を超えるNAL単位はリファレンスピクチャリスト作成および加重予測に関するシンタックス要素を含まない。すなわち、シンタックス要素"num_ref_active_lx_minus1"(xは0または1)やリファレンスピクチャリスト並び替えシンタックステーブル,加重予測シンタックステーブルは存在しない。その結果、MGSまたはFGSレイヤは、必要に応じて同一の依存単位における"quality_id"が0であるNAL単位からこうしたシンタックス要素を引き継がなくてはならない。
SVCでは、リファレンスピクチャリストはベース表現のみ("use_ref_base_pic_flag"が1の場合)または「ベース表現」とマークされていない復号ピクチャのみ("use_ref_base_pic_flag"が0の場合)の何れかから構成され、同時に両方から構成されることはない。
SVCでは、スケーラブルネスティングSEIメッセージが規定されている。スケーラブルネスティングSEIメッセージは、標示された依存表現や他のスケーラブルレイヤのようなビットストリームのサブセットで、関連するSEIメッセージに関する機構を提供する。スケーラブルネスティングSEIメッセージには、スケーラブルネスティングSEIメッセージそのものとは異なる1つ又は複数のSEIメッセージが含まれる。スケーラブルネスティングSEIメッセージに含まれるSEIメッセージは、ネストSEIメッセージと呼ばれる。スケーラブルネスティングSEIメッセージに含まれないSEIメッセージは、非ネストSEIメッセージと呼ばれる。MVCでは、ネストSEIメッセージが適用されるビューを示すために、スケーラブルネスティングSEIメッセージと同様のSEIメッセージが規定されている。H.264/AVCのマルチビュー及び深度拡張(MVC+Dとも呼ばれる)では、ネストSEIメッセージが適用されるテクスチャビュー及び/又は深度ビューを指定ために、スケーラブルネスティングSEIメッセージと同様の別のSEIメッセージが規定されている。H.265/HEVCにおいても、同様のスケーラブルネスティングSEIメッセージが含まれる。
品質スケーラビリティ(信号対ノイズ比またはSN比とも呼ばれる)及び/又は空間スケーラビリティ対応のスケーラブルビデオコーデックは、次のように実装されてもよい。基本レイヤに対しては、従来の非スケーラブルビデオエンコーダ・デコーダが使用される。基本レイヤの再構成/復号ピクチャは、拡張レイヤ用リファレンスピクチャバッファに含められる。H.264/AVCやHEVC、インター予測用リファレンスピクチャリストを用いる同様のコーデックでは、基本レイヤ復号ピクチャは、拡張レイヤの復号リファレンスピクチャと同様に、拡張レイヤピクチャの符号化/復号のため、リファレンスピクチャリストに挿入されてもよい。その結果、エンコーダはインター予測リファレンスとして基本レイヤリファレンスピクチャを選択し、通常、リファレンスピクチャインデクスを用いて自身が使用していることを符号化ビットストリームに示すことができる。デコーダは、ビットストリームの例えばリファレンスピクチャインデクスから、拡張レイヤ用インター予測リファレンスとして基本レイヤピクチャが使用されることを復号する。復号基本レイヤピクチャは、拡張レイヤ用予測リファレンスとして使用される場合、レイヤ間リファレンスピクチャと呼ばれる。
品質スケーラビリティに加え、次のスケーラビリティモードも存在する:
・ 空間スケーラビリティ:ベースレイヤピクチャは、拡張レイヤピクチャよりも低い解像度で符号化される。
・ ビット深度スケーラビリティ:ベースレイヤピクチャは、(例えば10から12ビットの)拡張レイヤピクチャよりも低いビット深度(例えば8ビット)で符号化される。
・ クロマフォーマットスケーラビリティ:ベースレイヤピクチャは、(例えば4:4:4フォーマットの)拡張レイヤピクチャよりも低い忠実度(例えば4:2:0フォーマット)で色差符号化される。
・ 色域スケーラビリティ:拡張レイヤピクチャは、ベースレイヤピクチャよりも豊富な又は広い色表現範囲を有する。例えば、拡張レイヤは超高精細テレビ(UHDTV、ITU-R BT.2020規格)の色域を有し、ベースレイヤはITU-R BT.709規格の色域を有してもよい。
・ ビュースケーラビリティ:マルチビュービデオにおいて、複数のレイヤがそれぞれ別々のビューを表現する。
・ 深度スケーラビリティ:特定のレイヤが通常のカラービデオコンテンツを示し、その他のレイヤが範囲情報や視差、深度等を示すことができる。
・ 補助ピクチャスケーラビリティ:特定のレイヤがアルファ面等の補助ビデオコンテンツを表現することができる。アルファ面は、例えば透明度又は不透明度の情報提示やクロマキー処理に用いられてもよい。
上記のスケーラビリティ例の全てにおいて、ビットレートの追加オーバーヘッドを最小にするため、拡張レイヤの符号化にベースレイヤ情報を用いることができる。
フレームパッキングとは複数のフレームがエンコーダ側で符号化のプリプロセスステップで単一フレームにパッキングされる方法であり、フレームパッキングされたフレームは従来の2次元ビデオ符号化方式で符号化される。したがって、デコーダで生成される出力フレームには、エンコーダ側で空間的に1つのフレームにパッキングされた入力フレームに対応する構成フレームが含まれる。フレームにパッキングは立体映像に使用されてもよい。立体映像では、フレームの組であって、その一方が左の目/カメラ/ビューに対応し、もう一方が右の目/カメラ/ビューに対応する組が、単一フレームにパッキングされている。あるいは、フレームパッキングは深度拡張又は視差拡張映像にも使用される。深度/視差拡張映像では、構成フレームの1つが通常の色情報(輝度及び色差情報)を含み、もう1つがこれに対応する深度又は視差情報を表わす。フレームパッキングの使用は、例えばH.264/AVC等のパッキング構成SEIメッセージを用いてビデオビットストリームで伝えられてもよい。あるいは、フレームパッキングの使用はHDMI(登録商標)のようなビデオインタフェースを通じて示されてもよい。またあるいは、フレームパッキングの使用はセッション記述プロトコル(SDP)のような種々の機能を有する交換・モードネゴシエーションプロトコルを用いて示され及び/又はネゴシエーションされてもよい。
利用可能なメディアファイルフォーマット規格には、ISOベースのメディアファイルフォーマット(ISO/IEC 14496-12。ISOBMFFと略される)やMPEG-4ファイルフォーマット(ISO/IEC 14496-14。MP4フォーマットでも知られる)、NAL構造メディア用ファイルフォーマット(ISO/IEC 14496-15)、3GPPファイルフォーマット(3GPP TS 26.244、3GPフォーマット)が含まれる。ISO/IEC 14496-15は、当初H.264/AVC用ファイルフォーマットとして開発された。SVC・MVCファイルフォーマットは、AVCファイルフォーマットの改正版として規定される。後に、HEVCへの対応がISO/IEC 14496-15に追加された。ISOファイルフォーマットは、前述した(ISOファイルフォーマット自体を除く)全てのファイルフォーマットを導出する基礎である。これらのファイルフォーマット(ISOファイルフォーマット自体を含む)は概括してISOファイルフォーマットファミリーと呼ばれる。
ISOベースメディアファイルフォーマットの基礎構築ブロックはボックスと呼ばれる。各ボックスはヘッダとペイロードを有する。ボックスヘッダは、ボックスタイプとバイト単位でのボックスサイズを示す。ボックスはその中に別のボックスを格納してもよく、ISOファイルフォーマットは、特定のボックスタイプの中に格納可能なボックスタイプを指定する。また、各ファイルには何らかのボックスの存在が必須である場合もあるが、他のボックスの存在が任意である場合もある。加えて、ファイル中に複数のボックスを持つことが許されるボックスタイプもある。したがって、ISOベースメディアファイルフォーマットはボックスの階層構造を規定するものと見なされてもよい。
ISOファイルフォーマットファミリーによれば、ファイルには別々のボックスに格納されたメディアデータとメタデータが含まれる。例示的実施形態では、メディアデータはメディアデータ(mdat)ボックスで与えられ、メタデータを格納するためにムービー(moov)ボックスが使用されてもよい。処理されるファイルに対してmdatボックスとmoovボックスの両方の存在が必須である場合もある。ムービー(moov)ボックスには、1つ又は複数のトラックが含まれてもよく、各トラックは対応するトラックボックスの中にある。トラックはメディア、ヒント、タイムドメタデータというタイプの中の1つでもよい。メディアトラックは、メディア圧縮フォーマット(及びISOベースメディアファイルフォーマットへのカプセル化)に従ってフォーマット化されたサンプルを表わす。ヒントトラックはヒントサンプルを表わす。これは、示された通信プロトコルを介して伝送されるパケットを構成するための詳細な指示命令を含む。こうした詳細な指示命令には、パケットヘッダ構成及びパケットペイロード構成のガイダンスが含まれてもよい。パケットペイロード構成では、他のトラック又はアイテムに存在するデータが参照されてもよい。したがって、例えば他のトラック又はアイテムに存在するデータは、特定のトラック又はアイテムにおけるそのデータのデータ片を指し示すリファレンスによって示されてもよい。このデータ片は、パケット構成処理中にパケットにコピーされるものである。タイムドメタデータトラックは、参照メディア及び/又はヒントサンプルを記述するサンプルを表わす。特定のメディアタイプの表現に対して、通常1つのメディアトラックが選択される。トラックのサンプルは、暗黙的にサンプル番号に関連してもよい。サンプル番号はサンプルについて標示された復号順で1ずつ増える。トラックの先頭サンプルはサンプル番号1に関連する。
次に、ISOベースメディアファイルフォーマットに従う簡略化されたファイル構造の実施例について説明する。このファイルにはmoovボックスとmdatボックスが含まれ、moovボックスにはビデオ及びオーディオにそれぞれ対応する1つ又は複数のトラックが含まれてもよい。
ISOベースメディアファイルフォーマットは、1ファイルに含められる表現について制限しない。したがって、1つの表現が複数のファイルで構成される場合もある。例として、1つのファイルが表現全体に関するメタデータが含み、その結果、表現自体を制限するための全てのメディアデータを含んでもよい。他のファイルが用いられる場合、こうしたファイルはISOベースメディアファイルフォーマットでフォーマットされる必要はなく、メディアデータを格納するのに使用されてもよい。また、未使用メディアデータや他の情報を格納してもよい。ISOベースメディアファイルフォーマットは、表現ファイルの構造のみに関係する。メディアデータファイルのフォーマットは、メディアファイルのメディアデータがISOベースメディアファイルフォーマット又はその派生フォーマットで規定されるようにフォーマットされる場合のみ、ISOベースメディアファイルフォーマット又はその派生フォーマットにより制約を受ける。
外部ファイルの参照機能はデータ参照を通じて実現されてもよい。実施例によっては、各トラックに格納されたサンプル記述ボックスがサンプルエントリのリストを与え、各エントリが使用される符号化タイプの詳細情報と、その符号化に必要なあらゆる初期化情報を与えてもよい。チャンキングの全サンプルとトラックセグメントの全サンプルが同一のサンプルエントリを使用してもよい。チャンキングは、1トラックに関するサンプルの連続したセットとして規定される。データ参照(dref)ボックスも各トラックに格納されており、統一資源位置指定子(URL)や統一資源名(URN)、メタデータを含むファイルの自己参照の何れか又は全てのインデクス付きリストを規定してもよい。サンプルエントリはデータ参照のインデクスを指し示すことができ、関連するチャンキング又はトラックセグメントのサンプルを含むファイルを示すことができる。
動画の使用事例の中には、高解像度動画の一部の抽出を要求するものがある。こうした事例には、例えば動画の特定領域の拡大や、動画の特定対象の追跡、ビデオシーケンスにおける限定領域のコンテンツの修正又は解析が含まれる。こうした使用事例の最も素直な実装には、ピクチャの完全復号とそれに関する望ましい処理の実行が含まれてもよい。この種のアプローチは結果として、演算処理に関する高い要求や消費電力の増加、処理速度の低下を招くことになる。
前述のように、H.265/HEVCのタイル及びH.265/HEVC・H.264/AVCのスライスにより、ビデオエンコーダは、互いに独立で復号できる所定のピクチャを生成することができる。そしてデコーダは、関心のあるサンプル値にアクセスするために復号を要するタイル又はスライスを選択することができる。しかしこのアプローチの欠点の一つは、エンコーダがピクチャを複数のタイル又はスライスから成る固定グリッドに分割する必要があるということである。個々のタイル又はスライスの領域を小さくするほど、独立に復号可能な特定されるべきピクセル領域の数が増えるが、同時に符号化効率も著しく落ちることになる。これは、エンコーダが現在のスライス又はタイルの情報を予測するために別のスライス又はタイルからの情報を利用することができないからであり、あるいは、現在のスライスの情報を予測するために別のスライス又はタイルからの情報の一部しか利用することができないからである。また別の欠点として、デコーダでも典型的には、実際の関心領域以外に相当量のピクセルを復号する必要があることも挙げられる。これは、関心領域に交わる全てのスライス又はタイルを復号する必要があるからである。
次に、ビデオフレーム内の関心領域の復号を、その領域外にある不要データを完全に復号しなくても行えるようにするために、ビデオフレーム内のこうした領域へのランダムアクセスを実行する改良方法を以下で導入する。
この方法は図5に示されている。符号化ビデオ表現は、ビットストリームの範囲内の全てのサンプルが予測制約付きで符号化されたことを示す標示子が復号されるように、ビットストリームから復号される(500)。次に、前記範囲がピクチャ内の関心領域をカバーすることが決定される(502)。次に、復号順で前記関心領域より先にある少なくとも1つの第1符号化単位は、該少なくとも1つの第1符号化単位に属するシンタックス要素が解析されるが、該シンタックス要素のサンプル再構成処理は完全に又は部分的に省略される解析モードで復号される(504)。そして、前記関心領域に属する少なくとも1つの第2符号化単位は、該少なくとも1つの第2符号化単位に属するシンタックス要素が解析され、かつ該シンタックス要素に対するサンプル再構成処理が実行されるように、復号される(506)。
実施形態によっては、前記予測制約は次の1つ又は複数を含む:
・ 前記サンプルに対してイントラ符号化が使用されなかったこと;
・ 前記サンプルに対してイントラ予測が使用されなかったこと;
−前記サンプルに対してインピクチャサンプル予測が使用されなかったこと;
−サンプルの基本単位の境界を跨ぐイントラ予測が使用されなかったこと;
−サンプルの基本単位の境界を跨ぐインピクチャサンプル予測が使用されなかったこと;
・ 前記サンプルに対してピクチャ間予測のみが使用されたこと。
前述のサンプルの基本単位は、別の実施形態では、例えば次の1つでもよい:
・ (H.265/HEVCでの)符号化ツリー単位、(H.264/AVCでの)マクロブロック又は同様のもの;
・ (H.265/HEVCでの)符号化単位又は同様のもの;
・ (H.265/HEVCでの)タイル、(H.264/AVCでの)スライスグループ又は同様のもの;
・ (矩形スライス等の)スライス又は同様のもの。
サンプルの基本単位は、関心領域が規定される空間粒度を推定するために使用されてもよく、別の実施形態に従ってピクチャをアクセスすることもできる。あるいは、これら両方でもよい。例えば、サンプルの基本単位がCTUである場合、関心領域は幾つかのCTUを含むように規定されてもよく、CTUからピクチャがアクセスされてもよく、あるいはそれら両方でもよい。
実施形態によっては、サンプルの基本単位は符号化規格等で予め定義されていてもよい。実施形態によっては、サンプルの基本単位は、エンコーダやファイルクリエータ等によってビットストリームやファイルに標示され、デコーダやファイルパーサ等によってビットストリームやファイルから復号されてもよい。
実施形態によっては、前記方法は更に、前記範囲が次の1つ又は複数であることを推定すること又は復号することを含む:
・ ビットストリーム;
・ ビットストリームのインター予測ピクチャ;
・ ビットストリーム内における少なくとも1つのスケーラビリティレイヤ;
・ ピクチャ;
・ 関心領域。
こうして、ビデオフレームにおける関心領域内でのサンプル値の間の空間依存性が無いように制約付き符号化ピクチャでの符号化ツールの利用を制限し、その制限をビットストリームに示すことによって、ビデオフレーム表現のサンプル値に細粒度アクセスが提供される。デコーダは、この標示情報を読み取り、その後関心領域のサンプル値を表現する位置までビットストリームを解析し、関心領域内のサンプルデータを復元するために解析モードから完全復号モードに切り替えるだけで符号化サンプル値を再生成するように構成される。
図6には復号処理の実施例が描かれている。ビデオフレーム650は関心領域652を含み、それに属する符号化単位は、例えば関心領域内でのイントラ符号化が許容されないような制約で符号化される。関心領域は、空間ランダムアクセスが行われる領域を表わす。符号化単位654は復号順で前記関心領域より先の符号化単位であり、符号化単位654に属するシンタックス要素が解析されるような解析モードで復号される。ただし、前記シンタックス要素のサンプル再構成処理は省略される。符号化単位656は順番に前記関心領域に属する符号化単位であり、符号化単位656に属するシンタックス要素が解析されるような完全復号モードで復号される。そして、前記シンタックス要素のサンプル再構成処理も行われる。
実施形態によっては、デコーダは解析モードで復号される、即ち解析のみ行われる第1符号化単位を選択してもよい。そしてデコーダは、復号順でこの第1符号化単位より先にある符号化単位の解析と復号を省略することもできる。
実施形態によっては、解析モードで復号される第1符号化単位は、どのスライス、タイル及び/又は波面が符号化単位の符号化に使用されたかに基づいて選択されてもよい。
実施形態によっては、タイルも波面も使用されなかった場合(又は1つのタイルでピクチャ全体をカバーする場合)、解析モードで復号される第1符号化単位は、完全復号モードで復号される領域の左上符号化単位から復号順で直前のスライスの第1符号化単位でもよい。換言すれば、復号順で最後のスライスであって、その左上符号化単位が完全復号モードで復号される領域の左上符号化単位又はその前であるスライスが選択されてもよい。解析モードで復号される符号化単位は復号順にスライスの符号化単位を、完全復号モードで復号される領域の左上符号化単位の直前まで含む。
実施形態によっては、波面が使用された場合、解析モードで復号される第1符号化単位は、完全復号モードで復号される領域の左上符号化単位を含むCTU行の第1符号化単位でもよい。デコーダは、例えばビットストリームやそれ以外で示されるエントリポイントからCTU行の符号化データの開始位置を決めてもよい。例えば、デコーダはH.265/HEVCのentry_point_offset_minus1[ i ]シンタックス要素を使用してもよい。実施形態によっては、解析モードで復号される第1符号化単位の決定において、示されたエントリポイントによるCTU行のみが考慮される。
実施形態によっては、タイルが使用された場合、解析モードで復号される第1符号化単位は、完全復号モードで復号される領域の左上符号化単位から復号順で直前のタイルの第1符号化単位でもよい。デコーダは、例えばビットストリームやそれ以外で示されるエントリポイントからタイルの符号化データの開始位置を決めてもよい。例えば、デコーダはH.265/HEVCのentry_point_offset_minus1[ i ]シンタックス要素を使用してもよい。実施形態によっては、解析モードで復号される第1符号化単位の決定において、示されたエントリポイントによるタイルのみが考慮される。
実施形態によっては、デコーダは、どのスライス、タイル及び/又は波面が符号化単位の符号化に使用されたかに基づいて、解析及び復号が省略される符号化単位を選択してもよい。
実施形態によっては、タイルも波面も使用されておらず、スライスが完全復号モードで復号される領域の一部でもない場合、スライスの解析及び復号が省略されてもよい。
実施形態によっては、波面が使用されていて、CTU行が完全復号モードで復号される領域の一部でもない場合、CTU行の解析及び復号が省略されてもよい。
実施形態によっては、タイルが使用されていて、タイルが完全復号モードで復号される領域の一部でもない場合、タイルの解析及び復号が省略されてもよい。
実施形態によっては、ピクチャの完全復号が望まれる場合、デコーダは完全なピクチャを得るために完全復号モードで動作することができる。
実施形態によっては、CTUのようなサンプルの基本単位に予測制約が適用さ
れる場合、完全復号モードはこの予測制約に従うように制限される。例えば、予測制約がCTU境界を跨ぐイントラ予測を許容しないというものである場合、完全復号モードは、CTU内サンプルのイントラ予測のためにCTU外サンプルを使用しないように変更される。前述の完全復号モードは他の実施形態で適用されてもよく、あるいは次の方法等で独立に適用されてもよい。符号化ビデオ表現は、ビットストリームの範囲内のサンプルの基本単位が予測制約付きで符号化されたか否かを示す標示子が復号されるように、ビットストリームから復号される。ビットストリームの範囲内のサンプルの基本単位が予測制約付きで符号化されたことを示す標示子への応答として、サンプルの基本単位の予測で範囲内のサンプルの基本単位の外側のサンプルの省略がある。ビットストリームの範囲内のサンプルの基本単位が予測制約付きで符号化されなかったことを示す標示子への応答として、サンプルの基本単位の予測で範囲内のサンプルの基本単位の外側のサンプルの使用がある。
実施形態によっては、前記標示子が適用される関心領域は、完全ビデオフレームやスライス、タイル、フレームパケットビデオの構成ピクチャ、他の方法で標示される領域がありうる。
ここで、制約付き符号化サンプルとは、動き補償予測等の時間的手段で予測されたサンプルを表わすことができる。実施形態によっては、ビデオフレームの関心領域内の全サンプルが制約付きで符号化される場合、この関心領域に対して(デブロッキングフィルタやSAO等の)インループフィルタリング処理が無効化されることが更に示されてもよい。この無効化には次のようなものがある:
・ 関心領域内の特定の1つ又は複数のタイプの端部は何れもインループフィルタリングを使用しない。例えば、関心領域内のスライス端部及び/又は関心領域内のタイル端部の何れにもインループフィルタリングが適用されないことが示されてもよい。
・ 関心領域の境界の端部のみがインループフィルタリングに対して制限される。
実施形態によっては、完全復号モードには、標準対応復号とは異なって復号される領域しかない場合の修正復号処理が含まれてもよい。例えば、端部ピクセルのインループフィルタリングは、領域外のピクセルが利用可能でないために省略されてもよい。あるいは、修正復号処理で関心領域境界の符号化単位のみを復号することも可能である。
関心領域に修正復号処理を適用する実施例は、図7に描かれている。ビデオフレーム700は関心領域702を含み、その領域に属する符号化単位が制約付きで符号化される。符号化単位704は復号順で前記関心領域より先の符号化単位であり、解析モードで復号される。符号化単位706は順番に前記関心領域に属する符号化単位であり、前述の完全復号モードで復号される。この実施例では、修正復号処理は、その修正復号処理で関心領域境界の符号化単位のみが復号されるものと規定されている。したがって、符号化単位708は修正復号処理で復号される符号化単位である。
実施形態によっては、領域内の全ピクセルがインター符号化されることを示す代わりに、関心領域の境界における符号化単位は何れもインター符号化されておらず、残りの符号化単位はイントラ符号化又はインター符号化されることが示されてもよい。
図8には、関心領域境界の符号化単位がイントラ符号化されない実施例が示されている。ビデオフレーム800は関心領域802を含み、その領域に属する符号化単位が制約付きで符号化される。
これまで、「全ブロックがインター予測/符号化された」又は「イントラ符号化が使用/許容されなかった」という記載に関して、別の実施形態が説明されてきた。しかし、他の同様の記載で、例えば、全ブロックに対して特定タイプの予測/符号化が使用された、又は別の特定タイプの予測/符号化は使用されなかったことを参照することで、同じ様に実現可能な実施形態もあることを理解する必要がある。例えば、種々の実施形態は次の事項を参照して実現可能である:
・ イントラ符号化が使用されなかったこと;
・ イントラ予測が使用されなかったこと;
・ 如何なるタイプのインピクチャサンプル予測も使用されなかったこと;
・ LCU又はCTUの境界を跨ぐイントラ予測が使用されなかったこと(ただし、LCU又はCTU内でのイントラ予測は使用されていてもよい);
・ LCU又はCTUの境界を跨ぐインピクチャサンプル予測が使用されなかったこと(ただし、LCU又はCTU内でのインピクチャサンプル予測は使用されていてもよい);
・ ピクチャ間予測のみが使用されている又は使用可能であり、その予測は次のようなものに限定されずあらゆるタイプであってもよい:
− 時間予測。別名、インター予測又はレイヤ内予測;
− レイヤ間予測;
− ビュー間予測;
− コンポーネント間予測。例えば、テクスチャから深度又はその逆の予測;
・ ピクチャ間では、特定タイプの予測(例えば、前述の1つ又は複数のタイプの予測)のみが使用されている又は使用可能である。
実施形態によっては、エンコーダ及び/又はデコーダは、符号化ピクチャの符号化ツリー単位又は符号化単位の少なくとも1つのポイントに対してエントロピー復号エントリポイント(entropy decoding entry point。以下、EDEP)データを生成してもよい。EDEPデータにより、EDEPから解析処理を開始することができる。EDEPデータは、EDEPにおけるエントロピーデコーダのコンテキスト及び状態を含むことができる。EDEPデータは、符号化データ内の位置を示すポインタ又は別の標示子であって、例えば符号化ピクチャ内のEDEPのビット位置を示すことができるものを含むこともできる。EDEPデータを格納するフォーマットは規格等で規定されてもよく、専用フォーマットでもよい。EDEPデータは任意選択ボックスのコンテナファイル等に格納されてもよく、コンテナファイル以外に格納されてもよく、あるいはその両方でもよい。EDEPデータは、ピクチャの特定部分へのランダムアクセスが頻繁に行われることが想定される場合であって、例えば画像ギャラリー等で特定の空間領域がカバーピクチャ等として使用される場合などで生成されてもよい。EDEPデータは、エンコーダやデコーダ、ファイル生成器、ファイルエディタ、ファイルパーサ/プレーヤの何れか又は全てに格納することができる。
実施形態によっては、デコーダは、解析モードで復号される第1符号化単位を選択するために、CTU行(波面が使用されていた場合)又はタイルのエントリポイントと同様にEDEPデータを復号し、使用してもよい。換言すれば、解析モードで復号される第1符号化単位は、スライスやタイル、CTU行(波面が使用されていた場合)のEDEP又は第1符号化単位の何れかであって、復号順で後である方が、同じく復号順で、完全復号モードで復号される領域の左上符号化単位の直前であってもよい。
実施形態によっては、EDEPデータを有するファイルのビットストリームが別の物理的格納媒体及び/又は別のファイルにコピーまたは移動される場合、EDEPデータはそのコピー又は移動に合わせて削除されてもよい。同様に、ファイルのビットストリームが伝送される場合、EDEPデータがその伝送から削除又は省略されてもよい。その結果、実施形態によっては、EDEPデータは、ピクチャ内の空間領域の復号のためのランダムアクセスの高速化及び/又は簡略化を助けるメタデータと見なされてもよい。
前述した種々の実施形態は、ビットストリームから符号化ビデオ表現を復号するように構成されるデコーダに実装されてもよい。図9には、本発明の特定の実施形態に適したビデオデコーダのブロック図が示されている。
図9に関連して説明される復号処理は、種々の実施形態におけるサンプル再構成処理と見なすことができる。ここで、ビットストリーム等の符号化入力信号から復号サンプル又はピクセルの値が得られる任意の処理がサンプル再構成処理と見なされてもよいことを理解しなくてはならない。サンプル再構成処理からエントロピー復号が除外されてもよい。
デコーダには、受信信号に対して前述のエンコーダのエントロピーエンコーダ330とは逆の動作でエントロピー復号を行うエントロピーデコーダ600が具備されている。エントロピーデコーダ600は、エントロピー復号の結果を予測誤差デコーダ602とピクセル予測器604に出力する。
ピクセル予測器604はエントロピーデコーダ600の出力を受け取る。ピクセル予測器604内の予測器セレクタ614は、イントラ予測やインター予測、補間処理から実行されるべき処理を決定する。予測器セレクタは更に、画像ブロックの予測表現616を第1のコンバイナ613に出力してもよい。画像ブロックの予測表現616は、再構成された予測誤差信号612と結合して仮再構成画像618を生成するように使用される。仮再構成画像618は予測器614で使用されてもよく、フィルタ620に送られてもよい。フィルタ620では、最終再構成信号622を出力するフィルタ処理が適用される。最終再構成信号622はリファレンスフレームメモリ624に格納されてもよい。リファレンスフレームメモリ624は更に予測処理を行う予測器614に接続されてもよい。
予測誤差デコーダ602はエントロピーデコーダ600の出力を受け取る。予測誤差デコーダ602の逆量子化器692はエントロピーデコーダ600の出力を逆量子化し、逆変換ブロック693は逆量子化器692が出力する逆量子化信号に逆変換処理を行ってもよい。エントロピーデコーダ600の出力は、予測誤差信号が適用されないことを示してもよく、この場合、予測誤差デコーダは全て0である出力信号を生成する。
本発明のもう一つの態様は符号化処理であり、図10に示されている。符号化処理は例えば図4のエンコーダで実行される。この符号化処理では、エンコーダは第1のピクチャを符号化し(1000)、第1のピクチャから第2のピクチャ内の少なくとも1つの領域を予測制約付きで(例えば、第2のピクチャにおける前記領域の符号化ではイントラ予測が無効にされる等で)符号化してもよい(1002)。エンコーダは、前記予測制約が第2のピクチャにおける前記領域の少なくとも複数のサンプルに使用されたことを示す、第2の符号化ピクチャに関連する標示子を生成する(1004)。
実施形態によっては、前記予測制約は次の1つ又は複数を含む:
・ 前記サンプルに対してイントラ符号化が使用されなかったこと;
・ 前記サンプルに対してイントラ予測が使用されなかったこと;
・ 前記サンプルに対してインピクチャサンプル予測が使用されなかったこと;
・ サンプルの基本単位の境界を跨ぐイントラ予測が使用されなかったこと;
・ サンプルの基本単位の境界を跨ぐインピクチャサンプル予測が使用されなかったこと;
・ 前記サンプルに対してピクチャ間予測のみが使用されたこと。
こうして、エンコーダは符号化ツールの制限付き利用を実装することができ、例えばインター符号化ピクチャにおいて、ビデオフレームにおける関心領域内でのサンプル値の間の空間依存性が無いように関心領域が符号化されるような利用を実装することができる。
ビデオ符号化処理には、例えば逆量子化及び逆変換を経由したピクチャ再構成が含まれてもよい。したがって、符号化処理の一部は種々の実施形態におけるサンプル再構成処理と見なすことができる。ただし、符号化処理の一部として再構成サンプル又はピクセルの値が得られる任意の処理がサンプル再構成処理と見なされてもよいことを理解しなくてはならない。サンプル再構成処理からエントロピー符号化が除外されてもよい。
実施形態によっては、エンコーダは前記標示子を次の1つ又は複数に含め、デコーダはそれらから前記標示子を復号することができる:
・ 補助拡張情報(SEI)メッセージ;
・ シーケンスパラメータセット(SPS);
・ ピクチャパラメータセット(PPS);
・ ビデオユーザビリティ情報(VUI);
・ コンテナファイルフォーマット構造。ISOベースメディアファイルフォーマット又はその派生フォーマットを用いる状況では、こうしたファイルフォーマット構造が例えばサンプル記述エントリに含まれるボックスであり、サンプル記述エントリが対応するピクチャに使用されていることが示されていてもよい。
加えて又あるいは、ファイル生成器は標示子を生成し、例えば前述の構造の1つ又は複数に標示子を含めてもよい。加えて又あるいは、ファイルパーサ又はプレーヤが標示子の復号を、例えば前述の構造の1つ又は複数から行ってもよい。
次に、ISOベースメディアファイルフォーマット又はその派生フォーマットに標示子を含める例示的実施形態を説明する。標示子は、例えばCodingConstraintBoxと呼ばれる任意選択ボックスに格納されてもよい。このボックスは、HEVC符号化トラックに対してはHEVCSampleEntry構造のようなサンプルエントリに格納されてもよい。CodingConstraintBoxボックスは、プレーヤがHEVCビデオ又は画像シーケンスを復号するときの動作を調節するのに役立つ情報を保持することができる。
CodingConstraintBoxのシンタックスは、例えば次のようなものでもよい。シンタックス要素NoIntraPredInRefPicsは、種々の実施形態における標示子に対応する。
CodingConstraintsBoxにおけるシンタックス要素の意味は次のように規定することができる。
IntraOnlyFlag:このフラグが1に設定されるときは、トラックの全サンプルがイントラ符号化されていることを示す。このフラグが0に設定されるときは、他のピクチャから予測されるトラックのピクチャが存在することを示す。
AllReferencePicturesIntra:このフラグが1に設定されるときは、トラックにインター予測ピクチャ
が存在する場合にこうしたピクチャが全てイントラ符号化ピクチャから予測されることを示す。
NoIntraPredInRefPics:このフラグが1に設定されるときは、どのインター予測ピクチャにもイントラ予測が使用されなかったことを示す。このフラグが0に設定されるときは、インター予測ピクチャにイントラ予測が使用されたかどうかは分からない。
加えて、IntraOnlyFlagが1の場合、AllReferencePicturesIntra及びNoIntraPredInRefPicsの意味は予約されているか未定義である。
種々の実施形態に従う標示子は、1つ又は複数の標示を用いてビットストリーム又はファイル中で又はそれに沿って示されてもよい。こうした標示は、1つ又は複数のシンタックス構造における1つ又は複数のシンタックス要素又はシンタックス要素値として符号化されてもよい。エンコーダは、ビットストリームの1つ(又は複数)の標示を符号化してもよい。デコーダは、ビットストリームから1つ(又は複数)の標示を復号してもよい。
シンタックス構造は、1つ(又は複数)の標示の範囲や有効性、持続性を決定することができる。例えば、シーケンスパラメータセットに標示が存在する場合、実施形態によっては、その標示が、シーケンスパラメータセットがアクティブである間符号化ビデオシーケンスに対して有効であってもよい。同様に、ピクチャパラメータセットに標示が存在する場合、それが、ピクチャパラメータセットがアクティブである間ピクチャに対して有効であってもよい。あるいは、1つ(又は複数)の標示の範囲/有効性/持続性が、その1つ(又は複数)の標示に含まれてもよく、1つ(又は複数)の標示に関連する別のシンタックス要素に含まれてもよい。実施形態によっては、1つ(又は複数)の標示の範囲や有効性、持続性には、レイヤのセットが含まれてもよい。実施形態によっては、1つ(又は複数)の標示の範囲や有効性、持続性には、ビューやコンポーネントタイプ(例えば、テクスチャ及び/又は深度)、及び/又はスケーラビリティレイヤ(例えば、空間及び/又は品質スケーラビリティレイヤ)の各セットのような、スケーラビリティ次元のセットが含まれてもよい。
実施形態によっては、複数の標示子があって、例えばビットストリームの別々の部分に適用されてもよい。例えば、ある標示子がベースレイヤに適用され、別の標示子が拡張レイヤに適用されてもよい。第2の実施例では、第1の標示子が第1のピクチャに適用され、第2の標示子が第2のピクチャに適用される。標示子セットの各標示子は、1つ又は複数の標示を用いてビットストリーム又はファイル中で又はそれに沿って示されてもよい。こうした標示は、1つ又は複数のシンタックス構造における1つ又は複数のシンタックス要素又はシンタックス要素値として符号化されてもよい。1つ又は複数の標示子は、前述と同様に扱われてもよい。
前述では、標示情報やシンタックス要素、シンタックス構造の何れか又は全てをビットストリーム又は符号化ビデオシーケンスに符号化すること、及び/又は標示情報やシンタックス要素、シンタックス構造の何れか又は全てをビットストリーム又は符号化ビデオシーケンスから復号することに関連する実施形態が説明されてきた。しかし、標示情報やシンタックス要素、シンタックス構造の何れか又は全てを、符号化スライス等の符号化データレイヤを含むビットストリーム又は符号化ビデオシーケンスの外部のシンタックス構造又はデータ単位に符号化する場合、及び/又は標示情報やシンタックス要素、シンタックス構造の何れか又は全てを、符号化スライス等の符号化データレイヤを含むビットストリーム又は符号化ビデオシーケンスの外部のシンタックス構造又はデータ単位から復号する場合の実施形態も実現可能である点を理解する必要がある。例えば、任意の実施形態に従う標示情報は、実施形態によっては、ビデオパラメータセット又はシーケンスパラメータセットに符号化され、こうしたパラメータセットが、例えばSDP等の制御プロトコルを用いて符号化ビデオシーケンスの外部で送られてもよい。同じ実施例において、受信機が制御プロトコルを用いるなどしてビデオパラメータセット又はシーケンスパラメータセットを取得し、復号用にこのビデオパラメータセット又はシーケンスパラメータセットを提供することもできる。
図11は、実装可能な種々の実施形態における汎用マルチメディア通信システムの実施例に関するグラフ表現である。図11に示されるように、データソース1100がソース信号を提供する。この信号はアナログフォーマットや非圧縮デジタルフォーマット、圧縮デジタルフォーマット、又はこれらのフォーマットの組合せである。エンコーダ1110は、ソース信号を符号化メディアビットストリームに符号化する。ここで、復号されるビットストリームが、事実上あらゆるタイプのネットワーク内に配置されたリモートデバイスから直接的又は間接的に受取り可能であることに留意しなくてはならない。さらに、ビットストリームはローカルのハードウェア又はソフトウェアからも受け取ることができる。エンコーダ1110は音声と動画のような複数のメディアタイプの符号化が可能であってもよく、ソース信号における別々のメディアタイプを符号化するために複数のエンコーダ1110が必要であってもよい。エンコーダ1110は、グラフィックスとテキストのような合成により作られた入力を取得してもよく、合成メディアの符号化ビットストリームを生成可能であってもよい。以降では記述を簡略にするために、1つのメディアタイプによる符号化メディアビットストリームの処理のみを考慮する。しかし、典型的なリアルタイムブロードキャストサービスには複数のストリーム(通常、少なくとも1つの音声、動画、テキストサブタイトルのストリーム)が含まれることに留意しなくてはならない。また、こうしたシステムには多数のエンコーダが具備されるが、一般性を失わずに記述を簡略にするために、図11では1つのエンコーダ1110のみが示されていることにも留意しなくてはならない。また更に、本願に含まれるテキストと実施例はある符号化処理を特定して記述しているが、当業者であれば同様の概念及び原理が対応する復号処理にも適用可能でありその逆も同様だと理解するであろうということも理解しなくてはならない。
符号化メディアビットストリームはストレージ1120に送られる。ストレージ1120は、符号化メディアビットストリームを格納する任意タイプの大容量メモリを備えてもよい。ストレージ1120における符号化メディアビットストリームのフォーマットは基本自立型ビットストリームフォーマット(elementary self-contained bitstream format)でもよく、1つ又は複数の符号化メディアビットストリームが1つのコンテナファイルにカプセル化されてもよい。エンコーダ1110及び/又はストレージ1120は、ファイル生成器又はファイルクリエータを備えてもよく、それに接続されてもよい。ファイル生成器又はファイルクリエータは、メディアビットストリームを入力し、それをコンテナファイルにカプセル化する。システムによっては「ライブ」で動作するものもある。すなわち、ストレージを省き、エンコーダ1110からの符号化メディアビットストリームを直接送信機1130に伝送する。次いで、符号化メディアビットストリームは送信機1130に伝送される。送信機は必要に応じてサーバとも呼ばれる。伝送に用いられるフォーマットは基本自立型ビットストリームフォーマットやパケットストリームフォーマットでもよく、1つ又は複数の符号化メディアビットストリームが1つのコンテナファイルにカプセル化されてもよい。エンコーダ1110とストレージ1120、送信機1130は同一の物理的デバイスに格納されもよく、別々のデバイスに格納されてもよい。エンコーダ1110と送信機1130はライブリアルタイムコンテンツを処理してもよい。この場合、符号化メディアビットストリームは通常永久保存されず、処理遅延や伝送遅延、符号化メディアビットレートの変動を均すために、コンテンツエンコーダ1110及び/又は送信機1130に短時間だけバッファされる。
送信機1130は、符号化メディアビットストリームを通信プロトコル層で送信する。この層には、リアルタイム トランスポート プロトコル(RTP)やユーザ データグラム プロトコル(UDP)、インターネット プロトコル(IP)が含まれてもよい。通信プロトコル層がパケット指向の場合、送信機1130は符号化メディアビットストリームをパケットにカプセル化する。例えば、RTPが用いられる場合、送信機1130は、RTPペイロードフォーマットに従って符号化メディアビットストリームをRTPパケットにカプセル化する。通常、各メデイアタイプは専用のRTPペイロードフォーマットを有する。ここで、システムは複数の送信機1130を備えることができるが、簡略化のため以降の記述では1つの送信機1130のみを考慮していることに留意しなくてはならない。
ストレージ1120又は送信機1130へのデータ入力のためにメディアコンテンツがコンテナファイルにカプセル化される場合、送信機1130は「送信ファイルパーサ」(図示せず)を備えてもよく、動作可能であるように取り付けられてもよい。具体的には、コンテナファイルがそのように伝送されず、カプセル化された符号化メディアビットストリームの少なくとも1つが通信プロトコルを介して伝送用にカプセル化される場合、送信ファイルパーサは、符号化メディアビットストリームから通信プロトコルを介して運ばれるのに適切な部分を配置する。送信ファイルパーサは、パケットヘッダやペイロード等、通信プロトコル用の正しいフォーマットの作成を支援してもよい。マルチメディアコンテナファイルには、通信プロトコルで含められた符号化メディアビットストリームの少なくとも1つをカプセル化するために、ISOベースメディアファイルフォーマットのヒントトラックのようなカプセル化指示情報が含まれてもよい。
送信機1130は通信ネットワークを通じてゲートウェイ1140に接続されていてもよく、そうでなくてもよい。ゲートウェイ1140は様々なタイプの機能を実行することができる。こうした機能には、ある通信プロトコル層に従うパケットストリームを別の通信プロトコル層に従うものに変換することや、データストリームのマージ及びフォーク、ダウンリンク及び/又は受信機の容量に応じたデータストリームの操作等がある。データストリームの操作とは、例えば現在のダウンリンクネットワーク条件に応じた転送ストリームのビットレートの制御等である。ゲートウェイ1140の例には、MCUやテレビ電話の回線交換・パケット交換間ゲートウェイ、PoC(Push-to-talk over Cellular)、DVB-H(digital video broadcasting-handheld)システムでのIPエンキャプスレータ(IP encapsulator)、ブロードキャスト伝送をローカルで家庭の無線ネットワークに転送するセットトップボックスが含まれる。ゲートウェイ1140は、RTPが用いられる場合はRTP混合器又はRTP変換器とも呼ばれ、通常RTP接続のエンドポイントとして動作する。
システムは1つ又は複数の受信機1150を備える。受信機は通常、送信信号を受信して復調し、符号化メディアビットストリームにデカプセル化(de-capsulating)することができる。符号化メディアビットストリームは記憶ストレージ1155に送られる。記憶ストレージ1155は、符号化メディアビットストリームを格納する任意タイプの大容量メモリを備えてもよい。あるいは又は加えて、記憶ストレージ1155は、ランダムアクセスメモリ等の計算メモリを備えてもよい。記憶ストレージ1155における符号化メディアビットストリームのフォーマットは基本自立型ビットストリームフォーマット(elementary self-contained bitstream format)でもよく、1つ又は複数の符号化メディアビットストリームが1つのコンテナファイルにカプセル化されてもよい。音声ストリームと動画ストリームといった複数の符号化メディアビットストリームが互いに関連し合って存在する場合、通常コンテナファイルが使用され、受信機1150は、入力ストリームからコンテナファイルを生成するコンテナファイル生成器を備えるか、それに取り付けられる。システムによっては「ライブ」で動作するものもある。すなわち、記憶ストレージ1155を省き、受信機1150からの符号化メディアビットストリームを直接デコーダ1160に伝送する。システムによっては、記録済みストリームの直近10分間の抜粋のような記録済みストリームの最新部分が記憶ストレージ1155に保持され、それ以前に記録されたデータが記憶ストレージ1155から削除される。
符号化メディアビットストリームは記憶ストレージ1155からデコーダ1160に送られる。音声ストリームと動画ストリームといった複数の符号化メディアビットストリームが互いに関連し合って存在、コンテナファイルにカプセル化される場合、このコンテナファイルから各符号化メディアビットストリームをデカプセル化するために、ファイルパーサ(図示せず)が使用される。記憶ストレージ1155又はデコーダ1160はファイルパーサを備えてもよく、あるいは記憶ストレージ1155とデコーダ1160の何れかにファイルパーサが装備されてもよい。
符号化メディアビットストリームはデコーダ1160によって更に処理され、デコーダの出力が1つ又は複数の非圧縮メディアストリームでもよい。最後に、レンダラ1170は、非圧縮メディアストリームをラウドスピーカやディスプレイ等に再生してもよい。受信機1150と記憶ストレージ1155、デコーダ1160、レンダラ1170は同一の物理的デバイスに格納されもよく、別々のデバイスに格納されてもよい。
次に、図11に関連する幾つかの実施形態を説明する。ここで、以下の実施形態は別の方法によって図11のようなシステム又はその一部に実装可能であることを理解する必要がある。例えば、符号化側(1110,1120)のみ又は復号側(1160,1170)のみを実現可能な実施形態もありうる。
実施形態によっては、符号化ピクチャの全て又はそのサブセットが制約(例えば、符号化ピクチャの全て又はそのサブセットにはイントラ予測が使用されない等の制約)を受けるかについて、エンコーダ(1110)が示してもよく、ビットストリームアナライザが特定してもよい。こうしたサブセットは、例えばその全てがビットストリームのインター予測ピクチャであってもよい。符号化ピクチャの全て又は特定のサブセットが制約を受ける場合、ファイル生成器は、前述の1つ又は複数の実施形態における標示子を生成し、その標示子をコンテナファイル等に含める。
実施形態によっては、例えばズームのようなユーザ操作に対する応答として、(ファイルパーサ及び/又はデコーダ1160を備える又はそれに接続される)レンダラ(1170)又はプレーヤは、ピクチャ内の矩形領域のようなサブセットの復号が要求されると決定してもよい。ファイルパーサ又はデコーダ(1160)は、コンテナファイル等から前述の1つ又は複数の実施形態における標示子を復号してもよい。標示子に基づいて、デコーダ1160又はプレーヤは、図5等による動作が実行可能であることを決定してもよい。
前述の例示的実施形態は、ビットストリームのシンタックスを用いて記述されていた。しかし、対応する構成および/またはコンピュータプログラムがビットストリームを生成するエンコーダおよび/またはビットストリームを復号するデコーダに存在できることも理解されるべきである。同様に、エンコーダを参照して例示的実施形態が記述されていたことに対して、結果として得られるビットストリームとデコーダに対応する要素が備わることも理解されるべきである。同様に、デコーダを参照して例示的実施形態が記述されていたことに対して、デコーダによって復号されるビットストリームを生成する構成および/またはコンピュータプログラムをエンコーダが備えることも理解されるべきである。
前述された本発明の実施形態では、そこに含まれる処理の理解を助ける目的で、別々のエンコーダ装置とデコーダ装置に関するコーデックを説明しているが、こうした装置やその構造、動作が単一のエンコーダ・デコーダ装置/構造/動作として実装されうる点も理解されよう。また本発明の実施形態によっては、コーダとデコーダが共通要素の一部又は全部を共有してもよい。
前述の実施例は電子デバイスのコーデックにおいて動作する本発明の実施形態を記述しているが、以下で記述されるように本発明が任意のビデオコーデックの一部として実装され得ることを理解されたい。したがって例えば、本発明の実施形態は、固定または有線の通信経路を通じてビデオ符号化を実装し得るビデオコーデックに実装されてもよい。
そしてユーザ装置は、前述の本発明の実施形態に記述されるこうしたビデオコーデックを備えてもよい。「ユーザ機器」との語句は、如何なる種類の無線ユーザ機器を表してもよく、例えば携帯電話やポータブルデータ処理装置、ポータブルWebブラウザであってもよい。
さらに、地上波公共移動通信ネットワーク(public land mobile network;PLMN)が、前述のビデオコーデックを含んでもよい。
一般に、様々な実施形態が、ハードウェアまたは特定用途向け回路、ソフトウェア、ロジック、またはそれらの組み合わせで実装されてもよい。例えば、ある場合ではハードウェアで実装されてもよく、一方別の場合では、コントローラやマイクロプロセッサ等のコンピュータデバイスによって実行されるファームウェアやソフトウェアで実装されてもよい。本発明の種々の形態はブロック図,フローチャート,または他の図的記述を使用して記述ないし図示される。これらのブロック,装置,システム,技術,またはここで記述される方法は、非限定的な例として、ハードウェア,ソフトウェア,ファームウェア,特定用途向け回路やロジック,汎用ハードウェア,コントローラや他のコンピュータデバイス,またはそれらの組み合わせで実装されてもよいと理解されるべきである。
そして本発明の実施形態は、移動デバイスのデータプロセッサによって実行可能なコンピュータソフトウェア,ハードウェア,またはソフトウェアとハードウェアの組合せによって実装されてもよい。またこの点に関して、添付する図面に示される論理フローの任意のブロックが、プログラムのステップや相互接続された論理回路・ブロック・機能、またはプログラムのステップ、論理回路・ブロック・機能の組合せを表現してもよいことに留意されたい。ソフトウェアは、メモリチップ等の物理メディアやプロセッサ内に実装されるメモリブロック,ハードディスクやフレキシブルディスク等の磁気メディア,DVDやそのデータ異形態であるCD等の光学式メディアに格納されてもよい。
メモリは、ローカルな技術環境に適したあらゆる種類のものであってよい。例えば、半導体ベースのメモリデバイス,磁気メモリデバイス・システム,光学式メモリデバイス・システム,固定式・移動式メモリ等の様々な適合するデータ格納技術を用いて実装されてもよい。-データプロセッサは、ローカルな技術環境に適したあらゆる種類のものであってよく、非限定的な例として、1つ又は複数の汎用コンピュータ,特定用途向けコンピュータ,マイクロプロセッサ,デジタル信号プロセッサ(DSP),マルチコアプロセッサ・アーキテクチャに基づくプロセッサを含んでもよい。--
本発明の実施形態は、集積回路モジュールのような、様々な要素で実施されることもできる集積回路の設計は多くは自動化されたプロセスである。論理レベルの設計を、半導体基板上にエッチング・形成するための半導体回路設計に変換する複雑で強力なソフトウェアツールが利用可能である。
カリフォルニア州マウンテンビューのSynopsys, Incや、カリフォルニア州サンノゼのCadence Designのような業者が提供するプログラムは、定評のある設計ルールと実績のある設計モジュールのライブラリに基づいて、半導体チップ上に導電経路や要素を配する。-半導体回路の設計が完了すると、それは、OpusやGDSII等の標準的な電子フォーマットの形で半導体製造設備または、いわゆるfabに送られる。
前述の説明は、本発明の非限定的な実施例を十分かつ詳細に記述している。しかし、こうした前述の説明を、添付する図面および特許請求の範囲と併せて考慮すれば、種々の変更および適応が可能であることは、本願に関連する技術分野の当業者には明らかであろう。さらに、本発明が教示するこうした事項の全ておよび同様の変形は、その全てが本発明の範囲内にある。
第1の実施形態に従う方法には、ビットストリームから符号化ビデオ表現を復号する方法であって、
前記ビットストリームの範囲内の全てのサンプルが予測制約付きで符号化されたこと示す標示子を復号することと;
前記範囲がピクチャ内の関心領域をカバーすることを決定することと;
復号順で前記関心領域より先にある少なくとも1つの第1符号化単位を、解析モードであって、該少なくとも1つの第1符号化単位に属するシンタックス要素が解析されるが、該シンタックス要素のサンプル再構成処理は省略される、該解析モードで復号することと;
前記関心領域に属する少なくとも1つの第2符号化単位を、該少なくとも1つの第2符号化単位に属するシンタックス要素が解析され、かつ該シンタックス要素に対するサンプル再構成処理が実行されるように復号することと
を含む方法が含まれる。
・ 実施形態によっては、前記予測制約は次の1つ又は複数を含む:
・ 前記サンプルに対してイントラ符号化が使用されなかったこと;
・ 前記サンプルに対してイントラ予測が使用されなかったこと;
・ 前記サンプルに対してインピクチャサンプル予測が使用されなかったこと;
・ サンプルの基本単位の境界を跨ぐイントラ予測が使用されなかったこと;
・ サンプルの基本単位の境界を跨ぐインピクチャサンプル予測が使用されなかったこと;
・ 前記サンプルに対してピクチャ間予測のみが使用されたこと。
実施形態によっては、前記方法は更に、前記範囲が次の1つ又は複数であることを推定すること又は復号することを含む:
・ ビットストリーム;
・ ビットストリームのインター予測ピクチャ;
・ ビットストリーム内における少なくとも1つのスケーラビリティレイヤ;
・ ピクチャ;
・ 関心領域。
実施形態によっては、前記方法は更に、解析のみ行われる第1符号化単位を選択し、復号順で該第1符号化単位より先にある符号化単位の解析及び復号を省略することを含む。
実施形態によっては、前記方法は更に、解析モードで復号される第1符号化単位を、どのスライス、タイル及び/又は波面が符号化単位の符号化に使用されたかに基づいて選択することを含む。
実施形態によっては、タイルも波面も使用されなかった場合、前記解析モードで復号される第1符号化単位は、完全復号モードで復号される領域の左上符号化単位から復号順で直前のスライスの第1符号化単位として選択され、ここで符号化単位は解析され、サンプル再構成処理を受ける。
実施形態によっては、波面が使用された場合、前記解析モードで復号される第1符号化単位は、完全復号モードで復号される領域の左上符号化単位を含むCTU行の第1符号化単位として選択される。
実施形態によっては、タイルが使用された場合、前記解析モードで復号される第1符号化単位は、完全復号モードで復号される領域の左上符号化単位から復号順で直前のタイルの第1符号化単位として選択される。
実施形態によっては、前記方法は更に、前記ビットストリーム内又はそれで示されるエントリポイントからCTU行又はタイルに関する符号化データの開始位置を決めることを含む。
実施形態によっては、前記方法は更に、どのスライス、タイル及び/又は波面が符号化単位の符号化に使用されたかに基づいて、解析及び復号が省略される符号化単位を選択することを含む。
実施形態によっては、タイルも波面も使用されておらず、スライスが完全復号モードで復号される領域の一部でもない場合、スライスの解析及び復号が省略されてもよい。
実施形態によっては、波面が使用されていて、CTU行が完全復号モードで復号される領域の一部でもない場合、CTU行の解析及び復号が省略されてもよい。
実施形態によっては、タイルが使用されていて、タイルが完全復号モードで復号される領域の一部でもない場合、タイルの解析及び復号が省略されてもよい。
実施形態によっては、前記方法は更に、ピクチャの完全復号が望まれる場合、完全ピクチャのために完全復号モードで実行することを含む。
実施形態によっては、前記標示子が適用される関心領域は、完全ビデオフレーム、スライス、タイル、フレームパケットビデオの構成ピクチャ、又は他の方法で標示される領域の1つである。
実施形態によっては、前記標示子は、前記関心領域に対してインループフィルタリング処理が望まれることを示す。
実施形態によっては、前記完全復号モードは、標準対応復号とは異なって復号される領域しかない場合の修正復号処理を含む。
実施形態によっては、前記方法は更に、符号化ピクチャの符号化ツリー単位又は符号化単位の少なくとも1つのポイントに対してエントロピー復号エントリポイント(EDEP)データを生成することを含む。
実施形態によっては、前記方法は更に、前記解析モードで復号される第1符号化単位を選択するために、CTU行又はタイルのエントリポイントと同様にEDEPデータを復号し、使用することを含む。
第2の実施形態に従う装置は、
符号化ビデオ表現を含むビットストリームを復号するように構成されるビデオデコーダであって、
前記ビットストリームの範囲内の全てのサンプルが予測制約付きで符号化されたこと示す標示子を復号することと;
前記範囲がピクチャ内の関心領域をカバーすることを決定することと;
復号順で前記関心領域より先にある少なくとも1つの第1符号化単位を、解析モードであって、該少なくとも1つの第1符号化単位に属するシンタックス要素が解析されるが、該シンタックス要素のサンプル再構成処理は省略される、該解析モードで復号することと;
前記関心領域に属する少なくとも1つの第2符号化単位を、該少なくとも1つの第2符号化単位に属するシンタックス要素が解析され、かつ該シンタックス要素に対するサンプル再構成処理が実行されるように復号することと
を実行するように構成されるビデオデコーダを備える。
第3の実施形態によれば、装置によって利用されるコードで格納されるコンピュータ可読記憶媒体であって、前記コードがプロセッサによって実行されると、前記装置に:
前記ビットストリームの範囲内の全てのサンプルが予測制約付きで符号化されたこと示す標示子を復号することと;
前記範囲がピクチャ内の関心領域をカバーすることを決定することと;
復号順で前記関心領域より先にある少なくとも1つの第1符号化単位を、解析モードであって、該少なくとも1つの第1符号化単位に属するシンタックス要素が解析されるが、該シンタックス要素のサンプル再構成処理は省略される、該解析モードで復号することと;
前記関心領域に属する少なくとも1つの第2符号化単位を、該少なくとも1つの第2符号化単位に属するシンタックス要素が解析され、かつ該シンタックス要素に対するサンプル再構成処理が実行されるように復号することと
を実行させる、コンピュータ可読記憶媒体が提供される。
第4の実施形態によれば、少なくとも1つのプロセッサ及び少なくとも1つのメモリであって、前記少なくとも1つのメモリはそこにコードを格納し、前記コードは、前記少なくとも1つのプロセッサによって実行されると、装置に:
前記ビットストリームの範囲内の全てのサンプルが予測制約付きで符号化されたこと示す標示子を復号することと;
前記範囲がピクチャ内の関心領域をカバーすることを決定することと;
復号順で前記関心領域より先にある少なくとも1つの第1符号化単位を、解析モードであって、該少なくとも1つの第1符号化単位に属するシンタックス要素が解析されるが、該シンタックス要素のサンプル再構成処理は省略される、該解析モードで復号することと;
前記関心領域に属する少なくとも1つの第2符号化単位を、該少なくとも1つの第2符号化単位に属するシンタックス要素が解析され、かつ該シンタックス要素に対するサンプル再構成処理が実行されるように復号することと
を実行させる、少なくとも1つのプロセッサ及び少なくとも1つのメモリが提供される。
第5の実施形態に従う方法には、ビデオ表現を符号化する方法であって、
第1のピクチャを符号化することと;
前記第1のピクチャから第2のピクチャ内の少なくとも1つの領域を予測制約付きで符号化することと;
第2の符号化ピクチャに関連する標示子であって、前記予測制約が前記第2のピクチャにおける前記領域の少なくとも複数のサンプルに使用されたことを示す、前記標示子を生成することと
を含む方法が含まれる。
実施形態によっては、前記予測制約は次の1つ又は複数を含む:
・ 前記サンプルに対してイントラ符号化が使用されなかったこと;
・ 前記サンプルに対してイントラ予測が使用されなかったこと;
・ 前記サンプルに対してインピクチャサンプル予測が使用されなかったこと;
・ サンプルの基本単位の境界を跨ぐイントラ予測が使用されなかったこと;
・ サンプルの基本単位の境界を跨ぐインピクチャサンプル予測が使用されなかったこと;
・ 前記サンプルに対してピクチャ間予測のみが使用されたこと。
実施形態によっては、エンコーダは前記標示子を次の1つ又は複数に含め、デコーダはそれらから前記標示子を復号することができる:
・ 補助拡張情報(SEI)メッセージ;
・ シーケンスパラメータセット(SPS);
・ ピクチャパラメータセット(PPS);
・ ビデオユーザビリティ情報(VUI);
・ コンテナファイルフォーマット構造。
実施形態によっては、前記方法は更に、符号化ピクチャの符号化ツリー単位又は符号化単位の少なくとも1つのポイントに対してエントロピー復号エントリポイント(EDEP)データを生成することを含む。
第6の実施形態に従う装置は、
符号化ビデオ表現を符号化するように構成されるビデオエンコーダであって、
第1のピクチャを符号化することと;
前記第1のピクチャから第2のピクチャ内の少なくとも1つの領域をインター符号化のみを用いて符号化することと;
第2の符号化ピクチャに関連する標示子であって、前記第2のピクチャ内の少なくとも前記領域に対してインター予測のみが使用されたことを示す、前記標示子を生成することと
を実行するように構成されるビデオエンコーダを備える。
第7の実施形態によれば、装置によって利用されるコードで格納されるコンピュータ可読記憶媒体であって、前記コードがプロセッサによって実行されると、前記装置に:
第1のピクチャを符号化することと;
前記第1のピクチャから第2のピクチャ内の少なくとも1つの領域を予測制約付きで符号化することと;
第2の符号化ピクチャに関連する標示子であって、前記予測制約が前記第2のピクチャにおける前記領域の少なくとも複数のサンプルに使用されたことを示す、前記標示子を生成することと
を実行させる、コンピュータ可読記憶媒体が提供される。
第8の実施形態によれば、少なくとも1つのプロセッサ及び少なくとも1つのメモリであって、前記少なくとも1つのメモリはそこにコードを格納し、前記コードは、前記少なくとも1つのプロセッサによって実行されると、装置に:
第1のピクチャを符号化することと;
前記第1のピクチャから第2のピクチャ内の少なくとも1つの領域を予測制約付きで符号化することと;
第2の符号化ピクチャに関連する標示子であって、前記予測制約が前記第2のピクチャにおける前記領域の少なくとも複数のサンプルに使用されたことを示す、前記標示子を生成することと
を実行させる、少なくとも1つのプロセッサ及び少なくとも1つのメモリが提供される。
第9の実施形態によれば、符号化ビデオ表現を含むビットストリームを復号するように構成されるビデオデコーダであって、
前記ビットストリームの範囲内の全てのサンプルが予測制約付きで符号化されたこと示す標示子を復号することと;
前記範囲がピクチャ内の関心領域をカバーすることを決定することと;
復号順で前記関心領域より先にある少なくとも1つの第1符号化単位を、解析モードであって、該少なくとも1つの第1符号化単位に属するシンタックス要素が解析されるが、該シンタックス要素のサンプル再構成処理は省略される、該解析モードで復号することと;
前記関心領域に属する少なくとも1つの第2符号化単位を、該少なくとも1つの第2符号化単位に属するシンタックス要素が解析され、かつ該シンタックス要素に対するサンプル再構成処理が実行されるように復号することと
を実行するように構成される、ビデオデコーダが提供される。
第10の実施形態によれば、符号化ビデオ表現を符号化するように構成されるビデオエンコーダであって、
第1のピクチャを符号化することと;
前記第1のピクチャから第2のピクチャ内の少なくとも1つの領域を予測制約付きで符号化することと;
第2の符号化ピクチャに関連する標示子であって、前記予測制約が前記第2のピクチャにおける前記領域の少なくとも複数のサンプルに使用されたことを示す、前記標示子を生成することと
を実行するように構成される、ビデオエンコーダが提供される。