(57)【要約】ＹＵＶ４：４：４等の高解像度クロマ・サンプリング・フォーマットのビデオ・フレームが、ビデオ符号化のためのＹＵＶ４：２：０等の低解像度クロマ・サンプリング・フォーマットのビデオ・フレームにパックされる。例えば、ＹＵＶ４：４：４フォーマットの１つのフレームのサンプル値が、ＹＵＶ４：２：０フォーマットの２つのフレームにパックされる。復号化後、低解像度クロマ・サンプリング・フォーマットのビデオ・フレームが、高解像度クロマ・サンプリング・フォーマットのビデオ・フレームを再構築するためにアンパックされ得る。このように、低解像度クロマ・サンプリング・フォーマットで動作する利用可能なエンコーダ及びデコーダを使用することができるとともに、高解像度クロマ情報を維持することができる。例示的な実施例において、幾何学的対応が、ＹＵＶ４：２：０フォーマットのフレームのＹ成分、Ｕ成分、及びＶ成分間で維持されるように、ＹＵＶ４：４：４フォーマットのフレームが、ＹＵＶ４：２：０フォーマットのフレームにパックされる。
2015534778.tif 000002
【特許請求の範囲】
【請求項１】
高解像度クロマ・サンプリング・フォーマットの１以上のフレームを、低解像度クロマ・サンプリング・フォーマットの１以上のフレームにパックするパッキング・ステップ
を含む、方法。
【請求項２】
前記パッキング・ステップの後に、
前記低解像度クロマ・サンプリング・フォーマットの前記１以上のフレームを符号化する符号化ステップ
をさらに含み、
前記パッキング・ステップは、前記低解像度クロマ・サンプリング・フォーマットの前記１以上のフレームのルマ成分及びクロマ成分の隣接サンプル及び／又は配置された部分として、前記高解像度クロマ・サンプリング・フォーマットの前記１以上のフレームのクロマ成分の隣接サンプル値間の幾何学的対応を維持し、
前記符号化ステップは、前記幾何学的対応を利用する、請求項１記載の方法。
【請求項３】
前記符号化ステップは、
（ａ）動きベクトルの導出及び予測モードの導出のうちの１以上を含む符号化オペレーションにおいて、且つ／あるいは
（ｂ）動き推定、量子化パラメータの選択、及び予測モードの選択のうちの１以上を含む符号化決定をガイドするために、
前記幾何学的対応を利用する、請求項２記載の方法。
【請求項４】
前記低解像度クロマ・サンプリング・フォーマットの前記１以上のフレームの第１部分は、前記高解像度クロマ・サンプリング・フォーマットの前記１以上のフレームの低クロマ解像度バージョンを表し、前記低解像度クロマ・サンプリング・フォーマットの前記１以上のフレームの第２部分は、前記高解像度クロマ・サンプリング・フォーマットの前記１以上のフレームからの残存するクロマ情報を表す、請求項１記載の方法。
【請求項５】
前記パッキング・ステップは、
前記高解像度クロマ・サンプリング・フォーマットの前記１以上のフレームのクロマ成分のサンプル値をアンチエイリアス・フィルタリングするステップと、
前記低解像度クロマ・サンプリング・フォーマットの前記１以上のフレーム間において、前記のアンチエイリアス・フィルタリングしたサンプル値をメイン・ビューのクロマ成分のサンプル値に割り当てるステップと、
を含む、請求項１記載の方法。
【請求項６】
方法を実行するよう適合されたコンピューティング・デバイスであって、前記方法は、
低解像度クロマ・サンプリング・フォーマットの１以上のフレームを、高解像度クロマ・サンプリング・フォーマットの１以上のフレームにアンパックするアンパッキング・ステップ
を含む、コンピューティング・デバイス。
【請求項７】
前記方法は、前記アンパッキング・ステップの前に、
前記低解像度クロマ・サンプリング・フォーマットの前記１以上のフレームを復号化するステップ
をさらに含む、請求項６記載のコンピューティング・デバイス。
【請求項８】
前記低解像度クロマ・サンプリング・フォーマットの前記１以上のフレームの第１部分は、前記高解像度クロマ・サンプリング・フォーマットの前記１以上のフレームの低クロマ解像度バージョンを表し、前記低解像度クロマ・サンプリング・フォーマットの前記１以上のフレームの第２部分は、前記高解像度クロマ・サンプリング・フォーマットの前記１以上のフレームからの残存するクロマ情報を表す、請求項６記載のコンピューティング・デバイス。
【請求項９】
前記方法は、
前記低解像度クロマ・サンプリング・フォーマットの前記１以上のフレームの第１部分が、前記高解像度クロマ・サンプリング・フォーマットの前記１以上のフレームの低クロマ解像度バージョンを表し、前記低解像度クロマ・サンプリング・フォーマットの前記１以上のフレームの第２部分が、前記高解像度クロマ・サンプリング・フォーマットの前記１以上のフレームからの残存するクロマ情報を表すことを示すメタデータを受信するステップ
をさらに含む、請求項６記載のコンピューティング・デバイス。
【請求項１０】
ＹＵＶ４：２：０フォーマットのフレームを符号化するよう適合されたビデオ・エンコーダ及び／又はＹＵＶ４：２：０フォーマットのフレームを復号化するよう適合されたビデオ・デコーダと、
（ａ）前記ＹＵＶ４：２：０フォーマットの１以上のフレームの第１部分が、ＹＵＶ４：４：４フォーマットの１以上のフレームの低クロマ解像度バージョンを表し、（ｂ）前記ＹＵＶ４：２：０フォーマットの前記１以上のフレームの第２部分が、前記ＹＵＶ４：４：４フォーマットの前記１以上のフレームからの残存するクロマ情報を表し、（ｃ）前記ＹＵＶ４：４：４フォーマットの前記１以上のフレームのクロマ成分のサンプル値が、前記ＹＵＶ４：２：０フォーマットの前記１以上のフレームへのパッキングの一部としてフィルタリングされたかどうか、を示す付加拡張情報メッセージを処理するためのモジュールと、
を備えた、コンピューティング・デバイス。
【発明の詳細な説明】
【背景技術】
【０００１】
エンジニアは、デジタル・ビデオのビット・レートを低減させるために、圧縮（ソース符号化とも呼ばれる）を使用する。圧縮は、ビデオ情報をより低いビット・レート形式に変換することにより、ビデオ情報を記憶して伝送するコストを低減させる。伸張（復号化とも呼ばれる）は、圧縮形式からオリジナル情報のバージョンを再構築する。「コーデック」はエンコーダ／デコーダ・システムである。
【０００２】
ここ２０年の間、ＩＴＵ−Ｔ  Ｈ．２６１規格、Ｈ．２６２（ＭＰＥＧ−２又はＩＳＯ／ＩＥＣ  １３８１８−２）規格、Ｈ．２６３規格、及びＨ．２６４（ＭＰＥＧ−４  ＡＶＣ又はＩＳＯ／ＩＥＣ  １４４９６−１０）規格、並びに、ＭＰＥＧ−１（ＩＳＯ／ＩＥＣ  １１１７２−２）規格、ＭＰＥＧ−４  Ｖｉｓｕａｌ（ＩＳＯ／ＩＥＣ  １４４９６−２）規格、及びＳＭＰＴＥ  ４２１Ｍ規格を含む様々なビデオ・コーデック規格が採用されてきた。より最近では、ＨＥＶＣ（ＩＴＵ−Ｔ  Ｈ．２６５又はＩＳＯ／ＩＥＣ  ２３００８−２）規格を策定中である。例えば、ＨＥＶＣ規格のドラフト・バージョンＪＣＴＶＣ−Ｉ１００３（２０１２年４月にジュネーブで開催された第９回会合の”High  efficiency  video  coding  (HEVC)  text  specification  draft  7”,  JCTVC-I1003_d5）を参照されたい。ビデオ・コーデック規格は、通常、特定の機能が符号化及び復号化において使用されるときの、符号化ビデオ・ビットストリームのシンタックスのためのオプション、ビットストリームにおける詳細パラメータを定義している。多くの場合、ビデオ・コーデック規格はまた、デコーダが復号化において整合する結果を達成するために実行すべき復号化オペレーションに関する詳細を提供している。コーデック規格とは別に、様々なプロプライエタリ・コーデック・フォーマット（proprietary  codec  format）が、符号化ビデオ・ビットストリームのシンタックスのための他のオプション及び対応する復号化オペレーションを定義している。
【０００３】
カメラ、アニメーション出力、スクリーン・キャプチャ・モジュール等のビデオ・ソースは、通常、ＹＵＶ４：４：４クロマ・サンプリング・フォーマット等のフォーマットに変換されるビデオを提供する。ＹＵＶフォーマットは、おおよその輝度値を表すサンプル値を有するルマ（すなわち、Ｙ）成分と、色差値を表すサンプル値を有する複数のクロマ（すなわち、Ｕ及びＶ）成分とを含む。ＹＵＶ４：４：４フォーマットにおいて、クロマ情報は、ルマ情報と同じ空間解像度で表される。
【０００４】
多くの商用利用可能なビデオ・エンコーダ及びビデオ・デコーダは、ＹＵＶ４：２：０クロマ・サンプリング・フォーマットしかサポートしていない。ＹＵＶ４：２：０フォーマットは、ＹＵＶ４：４：４フォーマットと比較すると、クロマ解像度が水平方向及び垂直方向の両方でルマ解像度の半分であるように、クロマ情報をサブサンプリングするフォーマットである。設計原理として、符号化／復号化のためにＹＵＶ４：２：０フォーマットを使用する決定は、カメラによりキャプチャされた自然なビデオ・コンテンツの符号化／復号化等のほとんどのユース・ケースにおいて、ビューワがＹＵＶ４：２：０フォーマットで符号化／復号化されたビデオとＹＵＶ４：４：４フォーマットで符号化／復号化されたビデオとの間の多くの視覚的な差異に通常は気付かないという理解に基づいている。したがって、１フレームにつきより少ないサンプルしか有さないＹＵＶ４：２：０フォーマットの圧縮上の利点は注目すべきものである。しかしながら、ビデオがよりリッチな色情報を有するいくつかのユース・ケースが存在し、色に対するより高い忠実性が正しいとされる場合がある。そのようなユース・ケースにおいて、ＹＵＶ４：４：４クロマ・サンプリング・フォーマットとＹＵＶ４：２：０クロマ・サンプリング・フォーマットとの間の差異は、ビューワにより、より容易に認識される。例えば、コンピュータ・スクリーン・テキスト・コンテンツ、人工的な鋭い境界を有するアニメーション化されたビデオ・コンテンツ、又はより一般的にはビデオ・コンテンツの所定のフィーチャ（スクロールするタイトル及び鋭いグラフィックス、又はクロマ・チャネルに集中した情報を有するビデオ等）の符号化／復号化では、４：４：４フォーマットの方が、４：２：０フォーマットよりも好ましいものであり得る。４：４：４フォーマットの符号化及び復号化をサポートするスクリーン・キャプチャ・コーデックが利用可能であるが、４：４：４フォーマットをサポートするコーデックの幅広いサポートの欠如（特に、ハードウェア・コーデック実装に関して）が、そのようなユース・ケースの障害である。
【発明の概要】
【０００５】
要約すると、詳細な説明は、符号化のための低解像度クロマ・サンプリング・フォーマットのビデオ・フレームへの高解像度クロマ・サンプリング・フォーマットのビデオ・フレームのフレーム・パッキング（frame  packing）におけるイノベーションを提供する。例えば、高解像度クロマ・サンプリング・フォーマットはＹＵＶ４：４：４フォーマットであり、低解像度クロマ・サンプリング・フォーマットはＹＵＶ４：２：０フォーマットである。復号化後、低解像度クロマ・サンプリング・フォーマットのビデオ・フレームは、高解像度クロマ・サンプリング・フォーマットのビデオ・フレームを再構築するために、アンパックされ得る（unpacked）。このように、低解像度クロマ・サンプリング・フォーマットで動作する利用可能なエンコーダ及びデコーダを使用することができるとともに、高解像度クロマ情報を維持することができる。
【０００６】
例えば、コンピューティング・デバイスは、高解像度クロマ・サンプリング・フォーマットの１以上のフレームを、低解像度クロマ・サンプリング・フォーマットの１以上のフレームにパックする（pack）。次いで、コンピューティング・デバイスは、低解像度クロマ・サンプリング・フォーマットの１以上のフレームを符号化することができる。
【０００７】
別の例として、コンピューティング・デバイスは、低解像度クロマ・サンプリング・フォーマットの１以上のフレームを、高解像度クロマ・サンプリング・フォーマットの１以上のフレームにアンパックする（unpack）。そのようなアンパッキング（unpacking）の前に、コンピューティング・デバイスは、低解像度クロマ・サンプリング・フォーマットの１以上のフレームを復号化することができる。
【０００８】
パッキング又はアンパッキングは、方法の一部として、方法を実行するよう適合されたコンピューティング・デバイスの一部として、又は、コンピューティング・デバイスに方法を実行させるコンピュータ実行可能命令を記憶した有体のコンピュータ読み取り可能媒体の一部として実施され得る。
【０００９】
本発明の前述の目的及び他の目的、特徴、並びに利点が、添付の図面を参照しながら進む以下の詳細な説明からより明らかになるであろう。
【図面の簡単な説明】
【００１０】
【図１】いくつかの説明する実施形態を実装することができる例示的なコンピューティング・システムの図。
【図２ａ】いくつかの説明する実施形態を実装することができる例示的なネットワーク環境の図。
【図２ｂ】いくつかの説明する実施形態を実装することができる例示的なネットワーク環境の図。
【図３】いくつかの説明する実施形態を実装することができる一般化されたフレーム・パッキング／アンパッキング・システムの図。
【図４】いくつかの説明する実施形態を協働して実装することができる例示的なエンコーダ・システムの図。
【図５】いくつかの説明する実施形態を協働して実装することができる例示的なデコーダ・システムの図。
【図６】いくつかの説明する実施形態を協働して実装することができる例示的なビデオ・エンコーダを示す図。
【図７】いくつかの説明する実施形態を協働して実装することができる例示的なビデオ・デコーダを示す図。
【図８】フレームの空間分割を使用するフレーム・パッキングの例示的な手法を示す図。
【図９】高解像度クロマ・サンプリング・フォーマットのフレームのクロマ成分プレーンの行が１行おきにコピーされるフレーム・パッキングの例示的な手法を示す図。
【図１０】図９の手法に従ってパックされる例示的なフレームを示す図。
【図１１】高解像度クロマ・サンプリング・フォーマットのフレームのクロマ成分プレーンの列が１列おきにコピーされるフレーム・パッキングの例示的な手法を示す図。
【図１２】高解像度クロマ・サンプリング・フォーマットのフレームのフレーム・パッキングのための一般化された技術を示すフローチャート。
【図１３】高解像度クロマ・サンプリング・フォーマットのフレームのフレーム・アンパッキングのための一般化された技術を示すフローチャート。
【発明を実施するための形態】
【００１１】
カメラ、アニメーション出力、スクリーン・キャプチャ・モジュール等のビデオ・ソースは、通常、（より一般的に４：４：４フォーマットの一例である）ＹＵＶ４：４：４クロマ・サンプリング・フォーマット等のフォーマットに変換されるビデオを提供する。ＹＵＶフォーマットは、おおよその輝度値を表すサンプル値を有するルマ（すなわち、Ｙ）成分と、色差値を表すサンプル値を有する複数のクロマ（すなわち、Ｕ及びＶ）成分とを含む。色差値（及びＹＵＶ色空間からＲＧＢ等の別の色空間への変換オペレーションとＲＧＢ等の別の色空間からＹＵＶ色空間への変換オペレーション）の正確な定義は実装に依存する。一般に、本明細書において使用されるとき、ＹＵＶという語は、ルマ（又は、ルミナンス）成分と１以上のクロマ（又は、クロミナンス）成分とを有する任意の色空間を示す。そのような色空間として、Ｙ’ＵＶ、ＹＩＱ、Ｙ’ＩＱ、及びＹＤｂＤｒに加えて、ＹＣｂＣｒ及びＹＣｏＣｇ等の変形がある。使用される成分信号の測定値は、非線形伝送特性関数（一般に、「ガンマ・プレ補正」として知られており、しばしばプライム記号を使用することにより示されるが、印刷上の都合のためプライム記号はしばしば省略される）を適用することにより調整され得る。あるいは、成分信号の測定値は、光振幅（light  amplitude）と線形関係にある領域にあり得る。ルマ成分信号及びクロマ成分信号は、人間の視覚系の明るさ及び色の知覚に対してうまく調整され得る、あるいは、ルマ成分信号及びクロマ成分信号は、（例えば、色成分値の計算を単純にする公式が適用されるＹＣｏＣｇ変形例のように、）そのような測定値から少々逸脱し得る。本明細書で説明するＹＵＶフォーマットの例は、ＩＴＵ−Ｒ  ＢＴ．６０１、ＩＴＵ−Ｒ  ＢＴ．７０９、及びＩＴＵ−Ｒ  ＢＴ．２０２０として知られている国際規格において説明されているものを含む。クロマ・サンプル・タイプの例は、Ｈ．２６４／ＡＶＣ規格の図Ｅ−１に示されている。４：４：４フォーマットは、ＹＵＶ４：４：４フォーマットであってもよいし、ＲＧＢ又はＧＢＲ等の別の色空間のためのフォーマットであってもよい。
【００１２】
多くの商用利用可能なビデオ・エンコーダ及びビデオ・デコーダは、（より一般的に４：２：０フォーマットの一例である）ＹＵＶ４：２：０クロマ・サンプリング・フォーマットしかサポートしていない。ＹＵＶ４：２：０は、フル解像度のクロマ情報を維持する（すなわち、クロマ情報がルマ情報と同じ解像度で表される）ＹＵＶ４：４：４フォーマットと比較すると、クロマ情報をサブサンプリングするフォーマットである。設計原理として、符号化／復号化のためにＹＵＶ４：２：０フォーマットを使用する決定は、カメラによりキャプチャされた自然なビデオ・コンテンツの符号化／復号化等のほとんどのユース・ケースにおいて、ビューワがＹＵＶ４：２：０フォーマットで符号化／復号化されたビデオとＹＵＶ４：４：４フォーマットで符号化／復号化されたビデオとの間の多くの視覚的な差異に通常は気付かないという理解に基づいている。したがって、１フレームにつきより少ないサンプルしか有さないＹＵＶ４：２：０フォーマットの圧縮上の利点は注目すべきものである。
【００１３】
しかしながら、２つのフォーマット間の差異が、ビューワにより、より容易に認識されるいくつかのユース・ケースが存在する。例えば、コンピュータ・スクリーン・テキスト・コンテンツ（特に、ＣｌｅａｒＴｙｐｅ技術を用いてレンダリングされるテキスト）、人工的な鋭い境界を有するアニメーション化されたビデオ・コンテンツ、又はより一般的にはビデオ・コンテンツの所定のフィーチャ（スクロールするタイトル及び鋭いグラフィックス、又はクロマ・チャネルに集中した情報を有するビデオ等）の符号化／復号化では、４：４：４フォーマットの方が、４：２：０フォーマットよりも好ましいものであり得る。４：４：４フォーマットをサポートするビデオ・コーデックの幅広いサポートの欠如（特に、ハードウェア・コーデック実装に関して）が、そのようなユース・ケースの障害である。
【００１４】
詳細な説明は、高解像度クロマ・サンプリング・フォーマットのフレームを低解像度クロマ・サンプリング・フォーマットのフレームにパックする様々な手法を提供する。次いで、低解像度クロマ・サンプリング・フォーマットのフレームが、低解像度クロマ・サンプリング・フォーマットのために設計されたエンコーダを用いて符号化され得る。（低解像度クロマ・サンプリング・フォーマットのために設計されたデコーダを用いた）復号化の後、低解像度クロマ・サンプリング・フォーマットのフレームが、さらなる処理及び表示のために出力され得る。あるいは、そのような復号化の後、高解像度クロマ・サンプリング・フォーマットのフレームが、出力及び表示のために、フレーム・アンパッキングを介して元に戻され得る。多くの場合、これらの手法は、高解像度クロマ・サンプリング・フォーマットのフレームからのクロマ情報を維持することにより、従来手法の欠点を軽減するとともに、低解像度クロマ・サンプリング・フォーマットに適合する商用利用可能なコーデックを利用する。詳細には、専用ハードウェアを有する広く利用可能なコーデックは、ＹＵＶ４：２：０ビデオ・フレームにパックされるＹＵＶ４：４：４ビデオ・フレームのために、より低い電力消費で、より速い符号化／復号化を提供することができる。
【００１５】
説明する手法を使用して、符号化／復号化が別のクロマ・サンプリング・フォーマットを使用するときに、１つのクロマ・サンプリング・フォーマットのフレームのクロマ情報を維持することができる。本明細書で説明するいくつかの例は、ＹＵＶ４：２：０フォーマットに適合するコーデックを用いた符号化／復号化のための、ＹＵＶ４：４：４フォーマットのフレームのフレーム・パッキング／アンパッキングを含む。本明細書で説明する他の例は、ＹＵＶ４：２：０フォーマットに適合するコーデックを用いた符号化／復号化のための、ＹＵＶ４：２：２フォーマットのフレームのフレーム・パッキング／アンパッキングを含む。より一般的に、説明する手法は、他のクロマ・サンプリング・フォーマットのために使用することもできる。例えば、４：４：４、４：２：２、４：２：０、４：１：１、４：０：０等のサンプリング・レシオにおけるＹ’ＵＶ、ＹＩＱ、Ｙ’ＩＱ、ＹｄｂＤｒ、ＹＣｂＣｒ、ＹＣｏＣｇ等のＹＵＶ色空間の変形に加えて、説明する手法は、クロマ・サンプリング・フォーマットとしての、４：４：４、４：２：２、４：２：０、４：１：１、４：０：０等のサンプリング・レシオにおけるＲＧＢ、ＧＢＲ等の色空間のためにも使用することができる。
【００１６】
例示的な実施例において、本明細書で説明するイノベーションの特定の態様は、以下のことを含むが、それらに限定されるものではない：
・１つの４：４：４フレームを２つの４：２：０フレームにパックし、４：２：０フォーマットのために設計されたビデオ・エンコーダを用いて２つの４：２：０フレームを符号化すること。
・４：２：０フォーマットのために設計されたビデオ・デコーダを用いて符号化されたフレームを復号化し、復号化された４：４：４フレームを形成するために、復号化した２つの４：２：０フレームをアンパックすること。
・２つの４：２：０フレームの各々のＹ成分、Ｕ成分、及びＶ成分間の幾何学的対応（geometric  correspondence）が維持されるように、ＹＵＶフォーマットのためのパッキングを実行すること。
・２つの４：２：０フレームのうちの１つ（メイン・ビュー）が、より低い解像度のクロマ成分を有するにもかかわらず、４：４：４フレームにより表される完全なシーンを表すとともに、他の４：２：０フレーム（補助ビュー）が、残存するクロマ情報をパックするように、ＹＵＶフォーマットのためのパッキングを実行すること。
・付加拡張情報（「ＳＥＩ」）メッセージを処理するデコーダが、４：４：４フレーム又はシーンを表す４：２：０フレームを出力することができるように、あるタイプのＳＥＩメッセージ又は他のメタデータにより、２つの４：２：０フレームの使用のインジケーションをシグナリングすること。
・（２つの４：２：０フレームからの）１つの４：２：０フレームのみが最終的な表示のために使用されるときのＹＵＶフォーマットの最終的に表示されるフレームの品質を向上させることができる前処理オペレーション及び後処理オペレーション。そのような前処理オペレーション及び後処理オペレーションと組み合わせると、前処理オペレーション及び後処理オペレーションにおいてクロマ情報の損失を避けるために、２つの４：２：０フレームは、符号化／復号化のためのより高いビット深度を有することができる。
・１つの４：２：２フレームを（２以下の）４：２：０フレームにパックし、４：２：０フォーマットのために設計されたビデオ・エンコーダを用いて４：２：０フレームを符号化すること。
・４：２：０フォーマットのために設計されたビデオ・デコーダを用いて符号化されたフレームを復号化し、復号化された４：２：２フレームを形成するために、復号化した４：２：０フレームをアンパックすること。
【００１７】
フレーム・パッキング構成ＳＥＩメッセージ（frame  packing  arrangement  SEI  message）を使用する特定の例示的な実施例において、フレーム・パッキング構成ＳＥＩメッセージの定義は、名目上４：２：０ビットストリームにおいて４：４：４コンテンツを表現することをサポートするよう拡張される。いくつかの例において、（例えば、トップ・ボトム・パッキング方式又は交互フレーム符号化方式における）１つの構成フレームは、通常の４：２：０画像として、互換性を有して復号化され得る、あるいは、完全な４：４：４画像表現を形成するために、別の構成フレームからのデータを用いて補足され得る。ＹＵＶ４：２：０は、製品において最も広くサポートされているフォーマット（特にハードウェア・コーデック実装に関して）であるので、そのようなデコーダを介してＹＵＶ４：４：４コンテンツを伝達する効果的な方法を有することは、（特にスクリーン・コンテンツ符号化のための）ＹＵＶ４：４：４機能の近々の幅広い展開を可能にするという相当の利点を提供し得る。例示的な実施例において、１つの４：４：４フレームのサンプルは、２つの４：２：０フレームにパックされ、２つの４：２：０フレームは、フレーム・パッキング構成の構成フレームとして符号化される。フレーム・パッキング構成ＳＥＩメッセージを使用する実装では、content_interpretation_typeシンタックス要素のセマンティックスが、この使用をシグナリングするよう拡張される。content_interpretation_typeシンタックス要素は、パッキング構成を用いてパックされるデータをどのように解釈するかをシグナリングし、パッキング構成のフレーム構成が、異なるシンタックス要素を用いてシグナリングされる。本明細書で説明するいくつかの手法は、スクリーン・コンテンツを含むアプリケーションのための高度に実用的な値を有する。また、ネイティブ４：４：４符号化と比較すると、本明細書で説明するいくつかの手法は、復号化製品においてより広くサポートされることが期待される通常の４：２：０復号化プロセスとの互換性という利点を提供し得る。
【００１８】
高解像度クロマ・サンプリング・フォーマットのためのフレーム・パッキング及びフレーム・アンパッキングのさらなる革新的な態様も説明される。説明する技術は、ビデオ符号化／復号化以外の静止画像符号化、医用スキャン・コンテンツ符号化、マルチスペクトル画像コンテンツ符号化等のさらなるアプリケーションに適用されてもよい。本明細書で説明するオペレーションは、エンコーダ（例えば、ビデオ・エンコーダ）又はデコーダ（例えば、ビデオ・デコーダ）により実行されるものとして所々で説明されるが、多くの場合、このようなオペレーションは、代替的に、別のタイプのメディア処理ツールにより実行することができる。
【００１９】
本明細書で説明するイノベーションのいくつかは、ＨＥＶＣ規格に固有のシンタックス要素及びオペレーションを参照して示される。例えば、ＨＥＶＣ規格のドラフト・バージョンＪＣＴＶＣ−Ｉ１００３（２０１２年４月にジュネーブで開催された第９回会合の”High  efficiency  video  coding  (HEVC)  text  specification  draft  7”,  JCTVC-I1003_d5）を参照する。本明細書で説明するイノベーションはまた、他の規格又はフォーマットのためにも実装することができる。例えば、本明細書で説明するイノベーションは、フレーム・パッキング構成ＳＥＩメッセージを用いるＨ．２６４／ＡＶＣ規格のためにも実装することができる。
【００２０】
より一般的に、本明細書で説明する例に対する様々な代替例が可能である。例えば、本明細書で説明する方法のいずれも、説明する方法動作の順番を変えることにより、所定の方法動作を分けることにより、所定の方法動作を繰り返すことにより、又は所定の方法動作を省略することにより、変更することができる。開示する技術の様々な態様が、組み合わせることにより、又は別々に使用され得る。様々な実施形態が、説明するイノベーションのうちの１以上を使用する。本明細書で説明するイノベーションのいくつかは、背景技術において記した問題のうちの１以上に対処する。一般的に、所与の技術／ツールが、そのような問題の全てを解決するわけではない。
【００２１】
Ｉ．例示的なコンピューティング・システム
図１は、説明するイノベーションのいくつかを実装することができる適切なコンピューティング・システム（１００）の一般化された例を示している。コンピューティング・システム（１００）は、使用又は機能の範囲に関して限定を示唆するよう意図するものではない。というのは、このイノベーションは、多様な汎用コンピューティング・システム又は専用コンピューティング・システムにおいて実施することができるからである。
【００２２】
図１を参照すると、コンピューティング・システム（１００）は、１以上の処理装置（１１０、１１５）及びメモリ（１２０、１２５）を含む。図１において、この最も基本的な構成（１３０）は破線内に含まれる。処理装置（１１０、１１５）はコンピュータ実行可能命令を実行する。処理装置は、汎用中央処理装置（「ＣＰＵ」）、特定用途向け集積回路におけるプロセッサ、又は任意の他のタイプのプロセッサとすることができる。マルチ処理システムにおいて、複数の処理装置が、処理能力を増大させるために、コンピュータ実行可能命令を実行する。例えば、図１は、中央処理装置（１１０）に加えて、グラフィックス処理装置又は共処理装置（１１５）も示している。有体のメモリ（１２０、１２５）は、１以上の処理装置によりアクセス可能な、揮発性メモリ（例えば、レジスタ、キャッシュ、ＲＡＭ）であってもよいし、不揮発性メモリ（例えば、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュ・メモリ等）であってもよいし、それら２つの何らかの組合せであってもよい。メモリ（１２０、１２５）は、１以上の処理装置による実行に適したコンピュータ実行可能命令の形態で、高解像度クロマ・サンプリング・フォーマットのフレーム・パッキング及び／又はフレーム・アンパッキングのための１以上のイノベーションを実装するソフトウェア（１８０）を記憶する。
【００２３】
コンピューティング・システムは追加の特徴を有することができる。例えば、コンピューティング・システム（１００）は、ストレージ（１４０）、１以上の入力デバイス（１５０）、１以上の出力デバイス（１６０）、及び１以上の通信コネクション（１７０）を含む。バス、コントローラ、又はネットワーク等の相互接続機構（図示せず）が、コンピューティング・システム（１００）のコンポーネントを相互接続する。通常、オペレーティング・システム・ソフトウェア（図示せず）が、コンピューティング・システム（１００）において実行される他のソフトウェアのための動作環境を提供し、コンピューティング・システム（１００）のコンポーネントの動作を調整する。
【００２４】
有体のストレージ（１４０）は、取り外し可能であっても取り外し不可能であってもよく、磁気ディスク、磁気テープ若しくは磁気カセット、ＣＤ−ＲＯＭ、ＤＶＤ、又は、情報を非一時的に記憶するために使用することができ、コンピューティング・システム（１００）内でアクセスされ得る任意の他の媒体を含む。ストレージ（１４０）は、高解像度クロマ・サンプリング・フォーマットのフレーム・パッキング及び／又はフレーム・アンパッキングのための１以上のイノベーションを実装するソフトウェア（１８０）の命令を記憶する。
【００２５】
１以上の入力デバイス（１５０）は、キーボード、マウス、ペン、若しくはトラックボール等のタッチ入力デバイス、音声入力デバイス、スキャニング・デバイス、又はコンピューティング・システム（１００）に入力を提供する別のデバイスとすることができる。ビデオ符号化に関して、１以上の入力デバイス（１５０）は、カメラ、ビデオ・カード、ＴＶチューナ・カード、若しくはアナログ形態あるいはデジタル形態でビデオ入力を受信する同様のデバイス、又はビデオ・サンプルをコンピューティング・システム（１００）に読み込むＣＤ−ＲＯＭあるいはＣＤ−ＲＷとすることができる。１以上の出力デバイス（１６０）は、ディスプレイ、プリンタ、スピーカ、ＣＤライタ、又はコンピューティング・システム（１００）からの出力を提供する別のデバイスとすることができる。
【００２６】
１以上の通信コネクション（１７０）は、通信媒体を介した別のコンピューティング・エンティティへの通信を可能にする。通信媒体は、変調されたデータ信号により、コンピュータ実行可能命令、オーディオ入力、ビデオ入力、オーディオ出力、ビデオ出力、又は他のデータ等の情報を伝達する。変調されたデータ信号とは、信号内の情報を符号化するように設定又は変更された特性の１以上を有する信号である。例えば、通信媒体は、電気信号、光信号、ＲＦ、又は他のキャリアを使用することができるが、これらに限定されるものではない。
【００２７】
イノベーションは、コンピュータ読み取り可能媒体の一般的なコンテキストにおいて説明することができる。コンピュータ読み取り可能媒体は、コンピューティング環境内でアクセスされ得る任意の利用可能な有体の媒体である。例えば、コンピューティング・システム（１００）において、コンピュータ読み取り可能媒体は、メモリ（１２０、１２５）、ストレージ（１４０）、及びそれらの組合せを含むが、これらに限定されるものではない。
【００２８】
イノベーションは、コンピュータ実行可能命令の一般的なコンテキストにおいて説明することができる。コンピュータ実行可能命令は、例えば、プログラム・モジュールに含まれ、コンピューティング・システムにおいて、ターゲット実プロセッサ又は仮想プロセッサ上で実行される。一般に、プログラム・モジュールは、特定のタスクを実行する、あるいは特定の抽象データ型を実装するルーチン、プログラム、ライブラリ、オブジェクト、クラス、コンポーネント、データ構造等を含む。プログラム・モジュールの機能は、様々な実施形態において、必要に応じて、組み合わされてもよいし、プログラム・モジュール間で分割されてもよい。プログラム・モジュールのコンピュータ実行可能命令は、ローカル・コンピューティング・システム又は分散コンピューティング・システム内で実行され得る。
【００２９】
「システム」及び「デバイス」という語は、本明細書において置き換え可能に使用される。文脈が別途明確に示さない限り、これらの語は、コンピューティング・システム又はコンピューティング・デバイスのタイプに関して、いかなる限定も示すものではない。一般に、コンピューティング・システム又はコンピューティング・デバイスは、ローカルであってもよいし、分散されてもよく、専用ハードウェア及び／又は汎用ハードウェアと、本明細書で説明する機能を実装するソフトウェアとの任意の組合せを含み得る。
【００３０】
開示する方法は、開示する方法のいずれかを実行するよう構成された専用コンピューティング・ハードウェアを用いて実装することもできる。例えば、開示する方法は、開示する方法のいずれかを実行するよう特別に設計又は構成された集積回路（例えば、特定用途向け集積回路（「ＡＳＩＣ」）（ＡＳＩＣデジタル信号処理装置（「ＤＳＰ」）、グラフィックス処理装置（「ＧＰＵ」）、又はフィールド・プログラマブル・ゲート・アレイ（「ＦＰＧＡ」）等のプログラマブル・ロジック・デバイス（「ＰＬＤ」）等）により実装することができる。
【００３１】
プレゼンテーションの目的上、詳細な説明では、コンピューティング・システムにおけるコンピュータ・オペレーションを説明するための「決定する」及び「使用する」のような語が使用される。これらの語は、コンピュータにより実行されるオペレーションの高レベル抽象表現であって、人間により実行される動作と混同すべきではない。これらの語に対応する実際のコンピュータ・オペレーションは、実装に応じて変化する。
【００３２】
ＩＩ．例示的なネットワーク環境
図２ａ及び図２ｂは、ビデオ・エンコーダ（２２０）及びビデオ・デコーダ（２７０）を含む例示的なネットワーク環境（２０１、２０２）を示している。エンコーダ（２２０）及びデコーダ（２７０）は、適切な通信プロトコルを用いて、ネットワーク（２５０）を介して接続される。ネットワーク（２５０）は、インターネット又は別のコンピュータ・ネットワークを含み得る。
【００３３】
図２ａに示されるネットワーク環境（２０１）において、各リアルタイム通信（「ＲＴＣ」）ツール（２１０）は、双方向通信のためのエンコーダ（２２０）及びデコーダ（２７０）の両方を含む。所与のエンコーダ（２２０）は、ＳＭＰＴＥ  ４２１Ｍ規格、ＩＳＯ／ＩＥＣ  １４４９６−１０規格（Ｈ．２６４／ＡＶＣとしても知られている）、Ｈ．２６５／ＨＥＶＣ規格、別の規格、又はプロプライエタリ・フォーマットに準拠する出力を生成することができ、対応するデコーダ（２７０）は、エンコーダ（２２０）から符号化データを受信することができる。双方向通信は、ビデオ会議、ビデオ通話、又は他の２パーティの通信シナリオの一部であり得る。図２ａのネットワーク環境（２０１）は、２つのリアルタイム通信ツール（２１０）を含むが、ネットワーク環境（２０１）は、マルチパーティ通信に参加する３以上のリアルタイム通信ツール（２１０）を含んでもよい。
【００３４】
リアルタイム通信ツール（２１０）は、エンコーダ（２２０）による符号化を管理する。図４は、リアルタイム通信ツール（２１０）に含まれ得る例示的なエンコーダ・システム（４００）を示している。代替的に、リアルタイム通信ツール（２１０）は、別のエンコーダ・システムを使用してもよい。リアルタイム通信ツール（２１０）はまた、デコーダ（２７０）による復号化も管理する。図５は、リアルタイム通信ツール（２１０）に含まれ得る例示的なデコーダ・システム（５００）を示している。代替的に、リアルタイム通信ツール（２１０）は、別のデコーダ・システムを使用してもよい。
【００３５】
図２ｂに示されるネットワーク環境（２０２）において、符号化ツール（２１２）は、デコーダ（２７０）を含む複数の再生ツール（２１４）に伝送するためのビデオを符号化するエンコーダ（２２０）を含む。一方向通信は、ビデオが符号化されて１つのロケーションから１以上の他のロケーションに送信される、ビデオ監視システム、ウェブ・カメラ・モニタリング・システム、リモート・デスクトップ会議プレゼンテーション、又は他のシナリオのために提供され得る。図２ｂのネットワーク環境（２０２）は、２つの再生ツール（２１４）を含むが、ネットワーク環境（２０２）は、それより多い又はそれより少ない再生ツール（２１４）を含んでもよい。一般に、再生ツール（２１４）は、再生ツール（２１４）が受信するビデオのストリームを判定するために、符号化ツール（２１２）と通信する。再生ツール（２１４）は、ストリームを受信し、適切な期間の間受信した符号化データをバッファし、復号化及び再生を開始する。
【００３６】
図４は、符号化ツール（２１２）に含まれ得る例示的なエンコーダ・システム（４００）を示している。代替的に、符号化ツール（２１２）は、別のエンコーダ・システムを使用してもよい。符号化ツール（２１２）はまた、１以上の再生ツール（２１４）との接続を管理するためのサーバ・サイド・コントローラ・ロジックも含み得る。図５は、再生ツール（２１４）に含まれ得る例示的なデコーダ・システム（５００）を示している。代替的に、再生ツール（２１４）は、別のデコーダ・システムを使用してもよい。再生ツール（２１４）はまた、符号化ツール（２１２）との接続を管理するためのクライアント・サイド・コントローラ・ロジックも含み得る。
【００３７】
ＩＩＩ．例示的なフレーム・パッキング／アンパッキング・システム
図３は、いくつかの説明する実施形態を協働して実装することができる一般化されたフレーム・パッキング／アンパッキング・システム（３００）のブロック図である。
【００３８】
システム（３００）は、４：４：４フォーマット等の高解像度クロマ・サンプリング・フォーマットのソース・フレーム（３１１）を生成するビデオ・ソース（３１０）を含む。ビデオ・ソース（３１０）は、カメラ、チューナ・カード、記憶媒体、又は他のデジタル・ビデオ・ソースとすることができる。
【００３９】
フレーム・パッカ（３１５）は、４：２：０フォーマット等の低解像度クロマ・サンプリング・フォーマットのソース・フレーム（３１６）を生成するために、高解像度クロマ・サンプリング・フォーマットのフレーム（３１１）を再構成する。フレーム・パッキングの例示的な手法については以下で説明する。フレーム・パッカ（３１５）は、復号化後のフレーム・アンパッカ（３８５）による使用のために、フレーム・パッキングが実行されたかどうか、及びフレーム・パッキングがどのように実行されたかを示すメタデータ（３１７）をシグナリングすることができる。フレーム・パッキング構成メタデータのシグナリングの例示的な手法については以下で説明する。
【００４０】
エンコーダ（３４０）は、低解像度クロマ・サンプリング・フォーマットのフレーム（３１６）を符号化する。例示的なエンコーダについては図４及び図６を参照して以下で説明する。エンコーダ（３４０）は、チャネル（３５０）を介して符号化データ（３４１）を出力する。チャネル（３５０）は、ストレージ、通信コネクション、又は出力のための別のチャネルを表す。
【００４１】
デコーダ（３６０）は、符号化データ（３４１）を受信し、低解像度クロマ・サンプリング・フォーマットのフレーム（３１６）を復号化する。例示的なデコーダについては図５及び図７を参照して以下で説明する。デコーダは、低解像度クロマ・サンプリング・フォーマットの再構築フレーム（３８１）を出力する。
【００４２】
フレーム・アンパッカ（３８５）は、高解像度クロマ・サンプリング・フォーマットのフレーム（３８６）を再構築するために、任意的に、低解像度クロマ・サンプリング・フォーマットの再構築フレーム（３８１）を再構成する。フレーム・アンパッキングの例示的な手法については以下で説明する。フレーム・アンパッカ（３８５）は、フレーム・パッキングが実行されたかどうか、及びフレーム・パッキングがどのように実行されたかを示すメタデータ（３１７）を受信することができ、そのようなメタデータ（３１７）を使用して、アンパッキング・オペレーションをガイドすることができる。フレーム・アンパッカ（３８５）は、高解像度クロマ・サンプリング・フォーマットの再構築フレームを出力先（３９０）に出力する。
【００４３】
ＩＶ．例示的なエンコーダ・システム
図４は、いくつかの説明する実施形態を協働して実装することができる例示的なエンコーダ・システム（４００）のブロック図である。エンコーダ・システム（４００）は、リアルタイム通信のための低レイテンシ符号化モード、トランスコーディング・モード、及びファイル又はストリームからのメディア再生のための通常の符号化モード等の複数の符号化モードのうちいずれかで動作することができる汎用符号化ツールであってもよいし、そのような１つの符号化モードのために適合された専用符号化ツールであってもよい。エンコーダ・システム（４００）は、オペレーティング・システム・モジュールとして、アプリケーション・ライブラリの一部として、又はスタンドアロン・アプリケーションとして、実装することができる。概して、エンコーダ・システム（４００）は、ビデオ・ソース（４１０）から、（４：４：４フォーマット等の高解像度クロマ・サンプリング・フォーマットの）一連のソース・ビデオ・フレーム（４１１）を受信し、４：２：０フォーマット等の低解像度クロマ・サンプリング・フォーマットへのフレーム・パッキングを実行し、低解像度クロマ・サンプリング・フォーマットのフレームを符号化し、チャネル（４９０）への出力として符号化データを生成する。
【００４４】
ビデオ・ソース（４１０）は、カメラ、チューナ・カード、記憶媒体、又は他のデジタル・ビデオ・ソースとすることができる。ビデオ・ソース（４１０）は、例えば、毎秒３０フレームといったフレーム・レートで一連のビデオ・フレームを生成する。本明細書で使用されるとき、「フレーム」という語は、一般に、ソースの符号化された又は再構築された画像データを指す。プログレッシブ・スキャン・ビデオでは、フレームはプログレッシブ・スキャン・ビデオ・フレームである。インタレース・ビデオでは、例示的な実施形態において、インタレース・ビデオ・フレームは、符号化の前にインタレース効果が除かれる（de-interlaced）。代替的に、２つの相補的インタレース・ビデオ・フィールドが、インタレース・ビデオ・フレーム又は別々のフィールドとして符号化されてもよい。プログレッシブ・スキャン・ビデオ・フレームを示すかは別にして、「フレーム」という語は、単一の対でないビデオ・フィールド、相補的な一対のビデオ・フィールド、所与の時間におけるビデオ・オブジェクトを表すビデオ・オブジェクト・プレーン、又はより大きなイメージにおける関心領域を示し得る。ビデオ・オブジェクト・プレーン又は領域は、シーンの複数のオブジェクト又は領域を含むより大きなイメージの一部であり得る。キャプチャ・フォーマット（例えば、ＲＧＢフォーマット）からの色空間変換後に、ソース・フレーム（４１１）は、４：４：４フォーマット等の高解像度クロマ・サンプリング・フォーマットになる。
【００４５】
フレーム・パッカ（４１５）は、４：２：０フォーマット等の低解像度クロマ・サンプリング・フォーマットのソース・フレーム（４１６）を生成するために、高解像度クロマ・サンプリング・フォーマットのフレーム（４１１）を再構成する。フレーム・パッキングの例示的な手法については以下で説明する。フレーム・パッカ（４１５）は、復号化後のフレーム・アンパッカによる使用のために、フレーム・パッキングが実行されたかどうか、及びフレーム・パッキングがどのように実行されたかを示すメタデータ（図示せず）をシグナリングすることができる。フレーム・パッキング構成メタデータのシグナリングの例示的な手法については以下で説明する。フレーム・パッカ（４１５）は、例えば、以下で説明するように、前処理オペレーションを実行することができる。
【００４６】
到着ソース・フレーム（４１６）は、複数のフレーム・バッファ記憶領域（４２１、４２２、．．．、４２ｎ）を含むソース・フレーム一時メモリ記憶領域（４２０）に記憶される。フレーム・バッファ（４２１、４２２等）は、ソース・フレーム記憶領域（４２０）内で１つのソース・フレームを保持する。ソース・フレーム（４１６）のうちの１以上がフレーム・バッファ（４２１、４２２等）に記憶された後、フレーム・セレクタ（４３０）が、ソース・フレーム記憶領域（４２０）から個々のソース・フレームを定期的に選択する。エンコーダ（４４０）への入力のためにフレーム・セレクタ（４３０）によりフレームが選択される順番は、ビデオ・ソース（４１０）によりフレームが生成される順番とは異なり得る。例えば、一時的に後方予測を容易にするために、選択されるフレームが前の順番になる場合がある。
【００４７】
フレーム・パッカ（４１５）及びフレーム記憶領域（４２０）の順番は逆になってもよい。エンコーダ（４４０）の前に、エンコーダ・システム（４００）は、符号化の前に選択されたフレーム（４３１）の前処理（例えば、フィルタリング）を実行する別のプリ・プロセッサ（図示せず）を含み得る。
【００４８】
エンコーダ（４４０）は、符号化フレーム（４４１）を生成するために、（低解像度クロマ・サンプリング・フォーマットの）選択されたフレーム（４３１）を符号化するとともに、メモリ管理制御操作（「ＭＭＣＯ」）信号（４４２）又は参照ピクチャ・セット（「ＲＰＳ」）情報を生成する。現フレームが、符号化された最初のフレームではない場合、符号化プロセスを実行するとき、エンコーダ（４４０）は、復号化フレーム一時メモリ記憶領域（４６０）に記憶された１以上の以前に符号化／復号化されたフレーム（４６９）を使用することができる。そのような記憶された復号化フレーム（４６９）は、現ソース・フレーム（４３１）のコンテンツのフレーム間予測のための参照フレームとして使用される。一般に、エンコーダ（４４０）は、動き推定及び動き補償、周波数変換、量子化、並びにエントロピ符号化等の符号化タスクを実行する複数の符号化モジュールを含む。エンコーダ（４４０）により実行される正確なオペレーションは、圧縮フォーマットに応じて変わり得る。出力される符号化データのフォーマットは、Ｗｉｎｄｏｗｓ（登録商標）  Ｍｅｄｉａ  Ｖｉｄｅｏフォーマット、ＶＣ−１フォーマット、ＭＰＥＧ−ｘフォーマット（例えば、ＭＰＥＧ−１、ＭＰＥＧ−２、又はＭＰＥＧ−４）、Ｈ．２６ｘフォーマット（例えば、Ｈ．２６１、Ｈ．２６２、Ｈ．２６３、Ｈ．２６４）、ＨＥＶＣフォーマット、又は他のフォーマットであり得る。一般に、エンコーダ（４４０）は、低解像度クロマ・サンプリング・フォーマットのフレームを符号化するのに適合されている。
【００４９】
例えば、エンコーダ（４４０）において、インター符号化された予測フレームが、参照フレームからの予測の観点で表される。動き推定部が、１以上の参照フレーム（４６９）に関して、ソース・フレーム（４４１）のサンプルのセットの動きを推定する。サンプルのセットは、（例えば、Ｈ．２６４規格における）マクロブロック、サブマクロブロック、又はサブマクロブロック・パーティションであってもよいし、（例えば、ＨＥＶＣ規格における）符号化ツリー・ユニット又は予測ユニットであってもよい。一般に、本明細書で使用されるとき、「ブロック」という語は、サンプルのセットを示し、これは、単一の２次元（「２Ｄ」）アレイであってもよいし、複数の２Ｄアレイ（例えば、１つのアレイはルマ成分のためのものであり、２つのアレイはクロマ成分のためのものである）であってもよい。複数の参照フレームが使用される場合、複数の参照フレームは、異なる時間的方向からのものであってもよいし、同じ時間的方向からのものであってもよい。動き推定部は、エントロピ符号化される動きベクトル情報等の動き情報を出力する。動き補償部は、動き補償予測値を決定するために、動きベクトルを参照フレームに適用する。エンコーダは、ブロックの動き補償予測値と対応するオリジナルの値との間の差（あれば）を決定する。このような予測残差値（すなわち、残差、残余値）が、周波数変換、量子化、及びエントロピ符号化を用いて、さらに符号化される。同様に、イントラ予測では、エンコーダ（４４０）は、ブロックに関するイントラ予測値を決定し、予測残差値を決定し、予測残差値を符号化することができる。エンコーダ（４４０）のエントロピ符号化部が、量子化された変換係数値に加えて、所定のサイド情報（例えば、動きベクトル情報、ＱＰ値、モード決定、パラメータ選択）も圧縮する。一般的なエントロピ符号化技術は、指数ゴロム符号化、算術符号化、差分符号化、ハフマン符号化、ラン・レングス符号化、「Ｖ２Ｖ（variable-length-to-variable-length）」符号化、「Ｖ２Ｆ（variable-length-to-fixed-length）」符号化、ＬＺ符号化、辞書符号化、「ＰＩＰＥ（probability  interval  partitioning  entropy）」符号化、及びこれらの組合せを含む。エントロピ符号化部は、様々な種類の情報のための様々な符号化技術を使用することができ、特定の符号化技術における複数の符号テーブルの中から選択することができる。
【００５０】
符号化フレーム（４４１）及びＭＭＣＯ／ＲＰＳ情報（４４２）が、復号化プロセス・エミュレータ（４５０）により処理される。復号化プロセス・エミュレータ（４５０）は、例えば、動き推定及び動き補償においてエンコーダ（４４０）により使用される参照フレームを再構築する復号化タスク等のデコーダの機能の一部を実装している。復号化プロセス・エミュレータ（４５０）は、所与の符号化フレーム（４４１）が、符号化される後続フレームのフレーム間予測において参照フレームとして使用するために記憶される必要があるかどうかを判定するために、ＭＭＣＯ／ＲＰＳ情報（４４２）を使用する。ＭＭＣＯ／ＲＰＳ情報（４４２）により、符号化フレーム（４４１）が記憶される必要があると示される場合、復号化プロセス・エミュレータ（４５０）は、符号化フレーム（４４１）を受信して対応する復号化フレーム（４５１）を生成するデコーダにより行われるであろう復号化プロセスを模擬する。そうする場合、エンコーダ（４４０）が、復号化フレーム記憶領域（４６０）に記憶された１以上の復号化フレーム（４６９）を使用したとき、復号化プロセス・エミュレータ（４５０）は、復号化プロセスの一部として、記憶領域（４６０）から１以上の復号化フレーム（４６９）を使用する。
【００５１】
復号化フレーム一時メモリ記憶領域（４６０）は、複数のフレーム・バッファ記憶領域（４６１、４６２、．．．、４６ｎ）を含む。復号化プロセス・エミュレータ（４５０）は、参照フレームとして使用するためにエンコーダ（４４０）によりもはや必要とされなくなったフレームを有する任意のフレーム・バッファ（４６１、４６２等）を識別するために、ＭＭＣＯ／ＲＰＳ情報（４４２）を使用して、記憶領域（４６０）のコンテンツを管理する。復号化プロセスを模擬した後、復号化プロセス・エミュレータ（４５０）は、このように識別されるフレーム・バッファ（４６１、４６２等）に、新たに復号化されたフレーム（４５１）を記憶する。
【００５２】
符号化フレーム（４４１）及びＭＭＣＯ／ＲＰＳ情報（４４２）はまた、一時符号化データ領域（４７０）にバッファされる。符号化データ領域（４７０）に収集される符号化データは、（例えば、（フレーム・パッキング構成ＳＥＩメッセージ等の）１以上のＳＥＩメッセージ又はビデオ・ユーザビリティ情報（「ＶＵＩ」）メッセージにおける１以上のパラメータとして、）符号化ビデオ・データに関連するメディア・メタデータを含み得る。
【００５３】
一時符号化データ領域（４７０）からの収集されたデータ（４７１）は、チャネル・エンコーダ（４８０）により処理される。チャネル・エンコーダ（４８０）は、（例えば、ＩＳＯ／ＩＥＣ  １４４９６−１２等のメディア・コンテナ・フォーマットに従って）メディア・ストリームとして伝送するために、収集されたデータをパケット化することができる。そのような場合、チャネル・エンコーダ（４８０）は、メディア伝送ストリームのシンタックスの一部として、シンタックス要素を付加することができる。あるいは、チャネル・エンコーダ（４８０）は、（例えば、ＩＳＯ／ＩＥＣ  １４４９６−１２等のメディア・コンテナ・フォーマットに従って）ファイルとして記憶するために、収集されたデータを編成することができる。そのような場合、チャネル・エンコーダ（４８０）は、メディア記憶ファイルのシンタックスの一部として、シンタックス要素を付加することができる。あるいは、より一般的に、チャネル・エンコーダ（４８０）は、１以上のメディア・システム多重化プロトコル又は伝送プロトコルを実装することができる。そのような場合、チャネル・エンコーダ（４８０）は、１以上のプロトコルのシンタックスの一部として、シンタックス要素を付加することができる。メディア伝送ストリーム、メディア記憶ストリーム、多重化プロトコル又は伝送プロトコルのそのようなシンタックス要素は、フレーム・パッキング構成メタデータを含み得る。チャネル・エンコーダ（４８０）は、チャネル（４９０）への出力を提供する。チャネル（４９０）は、ストレージ、通信コネクション、又は出力のための別のチャネルを表す。
【００５４】
Ｖ．例示的なデコーダ・システム
図５は、いくつかの説明する実施形態を協働して実装することができる例示的なデコーダ・システム（５００）のブロック図である。デコーダ・システム（５００）は、リアルタイム通信のための低レイテンシ復号化モード及びファイル又はストリームからのメディア再生のための通常の復号化モード等の複数の復号化モードのうちいずれかで動作することができる汎用復号化ツールであってもよいし、そのような１つの符号化モードのために適合された専用復号化ツールであってもよい。デコーダ・システム（５００）は、オペレーティング・システム・モジュールとして、アプリケーション・ライブラリの一部として、又はスタンドアロン・アプリケーションとして、実装することができる。概して、デコーダ・システム（５００）は、チャネル（５１０）から符号化データを受信し、４：２：０フォーマット等の低解像度クロマ・サンプリング・フォーマットのフレームを復号化し、低解像度クロマ・サンプリング・フォーマットから４：４：４フォーマット等の高解像度クロマ・サンプリング・フォーマットへのフレーム・アンパッキングを任意的に実行し、出力先（５９０）への出力として（高解像度クロマ・サンプリング・フォーマットの）再構築フレームを生成する。
【００５５】
デコーダ・システム（５００）は、ストレージ、通信コネクション、又は入力としての符号化データのための別のチャネルを表し得るチャネル（５１０）を含む。チャネル（５１０）は、チャネル符号化された符号化データを生成する。チャネル・デコーダ（５２０）は、符号化データを処理することができる。例えば、チャネル・デコーダ（５２０）は、（例えば、ＩＳＯ／ＩＥＣ  １４４９６−１２等のメディア・コンテナ・フォーマットに従って）メディア・ストリームとして伝送するために収集されたデータを脱パケット化する。そのような場合、チャネル・デコーダ（５２０）は、メディア伝送ストリームのシンタックスの一部として付加されたシンタックス要素を解析することができる。あるいは、チャネル・デコーダ（５２０）は、（例えば、ＩＳＯ／ＩＥＣ  １４４９６−１２等のメディア・コンテナ・フォーマットに従って）ファイルとして記憶するために収集された符号化ビデオ・データを分離する。そのような場合、チャネル・デコーダ（５２０）は、メディア記憶ファイルのシンタックスの一部として付加されたシンタックス要素を解析することができる。あるいは、より一般的に、チャネル・デコーダ（５２０）は、１以上のメディア・システム逆多重化プロトコル又は伝送プロトコルを実装することができる。そのような場合、チャネル・デコーダ（５２０）は、１以上のプロトコルのシンタックスの一部として付加されたシンタックス要素を解析することができる。メディア伝送ストリーム、メディア記憶ストリーム、多重化プロトコル又は伝送プロトコルのそのようなシンタックス要素は、フレーム・パッキング構成メタデータを含み得る。
【００５６】
十分な量のデータが受信されるまで、チャネル・デコーダ（５２０）から出力される符号化データ（５２１）は、一時符号化データ領域（５３０）に記憶される。符号化データ（５２１）は、（低解像度クロマ・サンプリング・フォーマットの）符号化フレーム（５３１）及びＭＭＣＯ／ＲＰＳ情報（５３２）を含む。符号化データ領域（５３０）内の符号化データ（５２１）は、（例えば、フレーム・パッキング構成ＳＥＩメッセージ等の１以上のＳＥＩメッセージ又はＶＵＩメッセージにおける１以上のパラメータとして、）符号化ビデオ・データに関連するメディア・メタデータを含み得る。一般に、そのような符号化データ（５２１）がデコーダ（５５０）により使用されるまで、符号化データ領域（５３０）は、符号化データ（５２１）を一時的に記憶する。その時点で、符号化フレーム（５３１）及びＭＭＣＯ／ＲＰＳ情報（５３２）の符号化データが、符号化データ領域（５３０）からデコーダ（５５０）に伝送される。復号化が進むにつれ、新たな符号化データが、符号化データ領域（５３０）に追加され、符号化データ領域（５３０）に残っている最も古い符号化データが、デコーダ（５５０）に伝送される。
【００５７】
デコーダ（５５０）は、低解像度クロマ・サンプリング・フォーマットの対応する復号化フレーム（５５１）を生成するために、符号化フレーム（５３１）を定期的に復号化する。必要に応じて、復号化プロセスを実行するとき、デコーダ（５５０）は、フレーム間予測のための参照フレームとして、１以上の以前に復号化されたフレーム（５６９）を使用することができる。デコーダ（５５０）は、復号化フレーム一時メモリ記憶領域（５６０）から、そのような以前に復号化されたフレーム（５６９）を読み出す。一般に、デコーダ（５５０）は、エントロピ復号化、逆量子化、逆周波数変換、及び動き補償等の復号化タスクを実行する複数の復号化モジュールを含む。デコーダ（５５０）により実行される正確なオペレーションは、圧縮フォーマットに応じて変わり得る。一般に、デコーダ（５５０）は、低解像度クロマ・サンプリング・フォーマットのフレームを復号化するのに適合されている。
【００５８】
例えば、デコーダ（５５０）は、圧縮フレーム又は一連のフレームの符号化データを受信し、低解像度クロマ・サンプリング・フォーマットの復号化フレーム（５５１）を含む出力を生成する。デコーダ（５５０）において、バッファは、圧縮フレームの符号化データを受け入れ、受け入れた符号化データをエントロピ復号化部に利用可能にする。エントロピ復号化部は、通常はエンコーダにおいて実行されたエントロピ符号化の逆を適用することにより、エントロピ符号化された量子化データに加えて、エントロピ符号化されたサイド情報もエントロピ復号化する。動き補償部は、再構築されているフレームのブロック（例えば、マクロブロック、サブマクロブロック、サブマクロブロック・パーティション、符号化ツリー・ユニット、予測ユニット、又はそれらの一部分）の動き補償予測を形成するために、動き情報を１以上の参照フレームに適用する。イントラ予測モジュールは、隣接する以前に再構築されたサンプル値から、現ブロックのサンプル値を空間的に予測することができる。デコーダ（５５０）はまた、予測残差を再構築する。逆量子化部は、エントロピ復号化されたデータを逆量子化する。逆周波数変換部は、量子化された周波数領域データを空間領域情報に変換する。予測フレームに関して、デコーダ（５５０）は、再構築フレームを形成するために、再構築された予測残差を動き補償予測と結合する。デコーダ（５５０）は、同様に、予測残差を、イントラ予測からの空間予測と結合することができる。ビデオ・デコーダ（５５０）における動き補償ループは、適応デブロッキング・フィルタを含み、適応デブロッキング・フィルタは、復号化フレーム（５５１）内のブロック境界ロー及び／又はカラムにわたる不連続さを平滑化する。
【００５９】
復号化フレーム一時メモリ記憶領域（５６０）は、複数のフレーム・バッファ記憶領域（５６１、５６２、．．．、５６ｎ）を含む。復号化フレーム記憶領域（５６０）はＤＰＢの一例である。デコーダ（５５０）は、低解像度クロマ・サンプリング・フォーマットの復号化フレーム（５５１）を記憶することができるフレーム・バッファ（５６１、５６２等）を識別するために、ＭＭＣＯ／ＲＰＳ情報（５３２）を使用する。デコーダ（５５０）は、そのフレーム・バッファに復号化フレーム（５５１）を記憶する。
【００６０】
出力シーケンサ（５８０）は、出力順で生成される次のフレームが復号化フレーム記憶領域（５６０）内で利用可能になるときを識別するために、ＭＭＣＯ／ＲＰＳ情報（５３２）を使用する。出力順で生成される低解像度クロマ・サンプリング・フォーマットの次のフレーム（５８１）が、復号化フレーム記憶領域（５６０）内で利用可能になったとき、そのフレームが、出力シーケンサ（５８０）により読み出され、（ａ）低解像度クロマ・サンプリング・フォーマットのフレームの表示のための出力先（５９０）（例えば、ディスプレイ）、又は（ｂ）フレーム・アンパッカ（５８５）のいずれかに出力される。一般に、復号化フレーム記憶領域（５６０）から出力シーケンサ（５８０）によりフレームが出力される順番は、デコーダ（５５０）によりフレームが復号化される順番とは異なり得る。
【００６１】
フレーム・アンパッカ（５８５）は、４：４：４フォーマット等の高解像度クロマ・サンプリング・フォーマットの出力フレーム（５８６）を生成するために、低解像度クロマ・サンプリング・フォーマットのフレーム（５８１）を再構成する。フレーム・アンパッキングの例示的な手法については以下で説明する。フレーム・アンパッカ（５８５）は、フレーム・パッキングが実行されたかどうか、及びフレーム・パッキングがどのように実行されたかを示すメタデータ（図示せず）を使用して、フレーム・アンパッキング・オペレーションをガイドすることができる。フレーム・アンパッカ（５８５）は、例えば、以下で説明するように、後処理オペレーションを実行することができる。
【００６２】
ＶＩ．例示的なビデオ・エンコーダ
図６は、いくつかの説明する実施形態を協働して実装することができる一般化されたビデオ・エンコーダ（６００）のブロック図である。エンコーダ（６００）は、現フレーム（６０５）を含む、４：２：０フォーマット等の低解像度クロマ・サンプリング・フォーマットの一連のビデオ・フレームを受信し、出力として符号化データ（６９５）を生成する。
【００６３】
エンコーダ（６００）は、ブロックベースであり、実装に依存するマクロブロック・フォーマットを使用する。ブロックは、例えば、周波数変換段階及びエントロピ符号化段階において等の様々な段階において、さらに分割され得る。例えば、フレームは、１６×１６マクロブロックに分割され得、今度は、そのブロックが、符号化及び復号化のために、ピクセル値の８×８ブロック及びより小さなサブ・ブロックに分割され得る。
【００６４】
エンコーダ・システム（６００）は、予測フレーム及びイントラ符号化されたフレームを圧縮する。プレゼンテーションの目的上、図６は、フレーム内符号化のためのエンコーダ（６００）を介した「イントラ・パス」と、フレーム間符号化のための「インター・パス」とを示している。エンコーダ（６００）のコンポーネントの多くが、フレーム内符号化及びフレーム間符号化の両方のために使用される。これらのコンポーネントにより実行される正確なオペレーションは、圧縮される情報のタイプに応じて変わり得る。
【００６５】
現フレーム（６０５）が予測フレームである場合、動き推定部（６１０）は、１以上の参照フレームに関して、現フレーム（６０５）のブロック（例えば、マクロブロック、サブマクロブロック、サブマクロブロック・パーティション、符号化ツリー・ユニット、予測ユニット、又はそれらの一部分）の動きを推定する。フレーム・ストア（６２０）は、参照フレームとして使用するために、１以上の再構築された以前のフレーム（６２５）をバッファする。複数の参照フレームが使用される場合、複数の参照フレームは、異なる時間的方向からのものであってもよいし、同じ時間的方向からのものであってもよい。動き推定部（６１０）は、サイド情報として、差分動きベクトル情報等の動き情報（６１５）を出力する。
【００６６】
動き補償部（６３０）は、動き補償された現フレーム（６３５）を形成するとき、再構築された動きベクトルを、１以上の再構築された参照フレーム（６２５）に適用する。動き補償された現フレーム（６３５）のブロックとオリジナルの現フレーム（６０５）の対応する部分との間の差（あれば）が、ブロックの予測残差（６４５）である。オリジナルの現フレーム（６０５）により近い再構築フレームを得るために、現フレームの後の再構築の間に、再構築された予測残差が、動き補償された現フレーム（６３５）に付加される。しかしながら、不可逆圧縮（lossy  compression）では、それでも、いくつかの情報が、オリジナルの現フレーム（６０５）から失われる。イントラ・パスは、イントラ予測モジュール（図示せず）を含み得る。イントラ予測モジュールは、隣接する以前に再構築されたピクセル値から、現ブロックのピクセル値を空間的に予測する。
【００６７】
周波数変換部（６６０）は、空間領域ビデオ情報を周波数領域（すなわち、スペクトル変換）データに変換する。ブロックベースのビデオ・フレームに関して、周波数変換部（６６０）は、離散コサイン変換とその整数近似、又は別のタイプの前方ブロック変換をピクセル値データ又は予測残差データのブロックに適用して、周波数変換係数のブロックを生成する。次いで、量子化部（６７０）は、変換係数を量子化する。例えば、量子化部（６７０）は、フレームごとに、マクロブロックごとに、又は他の単位で変わるステップ・サイズで、一様でないスカラ量子化を周波数領域データに適用する。
【００６８】
後続の動き推定／動き補償のために現フレームの再構築されたバージョンが必要とされる場合、逆量子化部（６７６）が、量子化された周波数係数データに対して逆量子化を実行する。逆周波数変換部（６６６）は、逆周波数変換を実行し、再構築された予測残差又はピクセル値のブロックを生成する。予測フレームに関して、エンコーダ（６００）は、再構築フレーム（６０５）を形成するために、再構築された予測残差（６４５）を動き補償予測（６３５）と結合する。（図６には示されていないが、イントラ・パスにおいては、エンコーダ（６００）は、予測残差を、イントラ予測からの空間予測と結合することができる。）フレーム・ストア（６２０）は、後続の動き補償予測において使用するために、再構築された現フレームをバッファする。
【００６９】
エンコーダ（６００）における動き補償ループは、フレーム・ストア（６２０）の前又は後に、適応ループ内デブロック・フィルタ（６１０）を含む。エンコーダ（６００）は、フレーム内の境界にわたる不連続さを適応的に平滑化するために、ループ内フィルタリングを再構築フレームに適用する。適応ループ内デブロック・フィルタ（６１０）は、いくつかのタイプのコンテンツに対しては無効にされ得る。例えば、メイン・ビュー及び補助ビューを伴うフレーム・パッキング手法において、適応ループ内デブロック・フィルタ（６１０）は、ブラー（blurring）等のアーチファクトを生成しないようにするために、（メイン・ビューの一部ではない残存するクロマ情報を含む）補助ビューを符号化するときに無効にされ得る。
【００７０】
エントロピ符号化部（６８０）は、量子化部（６７０）の出力に加えて、動き情報（６１５）及び所定のサイド情報（例えば、ＱＰ値）も圧縮する。エントロピ符号化部（６８０）は、符号化データ（６９５）をバッファ（６９０）に供給し、バッファ（６９０）は、符号化データを出力ビットストリームに多重化する。
【００７１】
コントローラ（図示せず）は、エンコーダの様々なモジュールから入力を受信する。コントローラは、符号化中、中間結果を評価し、例えば、ＱＰ値を設定して、レート−歪み解析を実行する。コントローラは、他のモジュールと協働して、符号化中、符号化パラメータを設定及び変更する。具体的には、コントローラは、符号化中、ルマ成分及びクロマ成分の量子化を制御するために、ＱＰ値及び他の制御パラメータを変更することができる。例えば、コントローラは、所与のフレームのクロマ・コンテンツと比較して、（フレーム・パッキング手法におけるメイン・ビュー又は補助ビューであり得る、）そのフレームのルマ・コンテンツにより多くのビットを取っておくために、ＱＰ値を変更することができる。あるいは、メイン・ビュー及び補助ビューを伴うフレーム・パッキング手法において、コントローラは、（残存するクロマ情報を含む）補助ビューと比較して、（ルマ成分及びサブサンプリングされたクロマ成分を含む）メイン・ビューにより多くのビットを取っておくために、ＱＰ値を変更することができる。
【００７２】
フレーム・パッキングのいくつかの手法において、高解像度クロマ・サンプリング・フォーマットのフレームからのクロマ情報が、低解像度クロマ・サンプリング・フォーマットの符号化されるフレームにパックされた後でも、エンコーダは、いくつかの方法により、クロマ成分のサンプル値間の幾何学的対応を利用することができる。幾何学的対応という語は、（１）低解像度クロマ・サンプリング・フォーマットから構築されたフレームの（名目上の）ルマ成分の位置におけるクロマ情報と、（２）低解像度クロマ・サンプリング・フォーマットのフレームのクロマ成分の対応するスケーリングされた位置におけるクロマ情報との間の関係を示す。ルマ成分の位置とクロマ成分の位置との間で、スケーリング・ファクタが適用される。例えば、４：２：０では、スケーリング・ファクタは、水平方向及び垂直方向の両方とも２であり、４：２：２では、スケーリング・ファクタは、水平方向では２であり、垂直方向では１である。
【００７３】
エンコーダは、幾何学的対応を使用して、符号化されるフレームの現ブロックを符号化するときに隣接ブロックの最近の結果をまず評価することにより、動き推定、ＱＰ選択、予測モード選択、又はブロック対ブロックからの他の決定プロセスをガイドすることができる。あるいは、エンコーダは、幾何学的対応を使用して、符号化されるフレームの「ルマ」成分にパックされる高解像度クロマ情報の符号化からの結果を用いることにより、符号化されるフレームのクロマ成分にパックされる高解像度クロマ情報のそのような決定プロセスをガイドすることができる。あるいは、より直接的に、エンコーダは、幾何学的対応を使用して、圧縮性能を向上させることができる。ここで、動きベクトル、予測モード、又は符号化されるフレームの「ルマ」成分にパックされる高解像度クロマ情報の他の決定がまた、符号化されるフレームのクロマ成分にパックされる高解像度クロマ情報のために使用される。詳細には、本明細書で説明するいくつかの手法（例えば、以下の手法２）において、クロマ情報が、低解像度クロマ・サンプリング・フォーマットの補助フレームにパックされるとき、補助フレームの名目上のルマ成分と補助フレームの名目上のクロマ成分との間の空間対応及び動きベクトル変位の関係が維持される。補助フレームのＹ成分、Ｕ成分、及びＶ成分における対応する空間位置でのサンプル値は、一貫している傾向があり、これは、空間ブロック・サイズ・セグメンテーション等の目的に有用であり、非ゼロ係数値の存在／不存在を示す符号化ブロック・パターン情報又は他の情報のジョイント符号化に有用である。補助フレームのＹ成分、Ｕ成分、及びＶ成分の対応する部分の動きベクトルは、一貫している傾向があり（例えば、Ｙにおける２つのサンプルの垂直変位又は水平変位は、Ｕ及びＶにおける１サンプルの変位に対応する）、これもまた符号化効率に役立つ。
【００７４】
実装及び所望の圧縮のタイプに応じて、エンコーダのモジュールを追加してもよいし、省略してもよいし、複数のモジュールに分割してもよいし、他のモジュールと結合してもよいし、且つ／あるいは同様のモジュールと置換してもよい。代替実施形態において、異なるモジュール及び／又はモジュールの他の構成を有するエンコーダは、説明した技術のうちの１以上を実行する。エンコーダの特定の実施形態は、通常、エンコーダ（６００）の変形又は補完バージョンを使用する。エンコーダ（６００）内のモジュール間の示された関係は、エンコーダ内の情報の一般的な流れを示すものである。他の関係は、簡潔さのため示されていない。
【００７５】
ＶＩＩ．例示的なビデオ・デコーダ
図７は、いくつかの説明する実施形態を協働して実装することができる一般化されたデコーダ（７００）のブロック図である。デコーダ（７００）は、圧縮フレーム又は一連のフレームの符号化データ（７９５）を受信し、４：２：０フォーマット等の低解像度クロマ・サンプリング・フォーマットの再構築フレーム（７０５）を含む出力を生成する。プレゼンテーションの目的上、図７は、フレーム内復号化のためのデコーダ（７００）を介した「イントラ・パス」と、フレーム間復号化のための「インター・パス」とを示している。デコーダ（７００）のコンポーネントの多くが、フレーム内復号化及びフレーム間復号化の両方のために使用される。これらのコンポーネントにより実行される正確なオペレーションは、伸張される情報のタイプに応じて変わり得る。
【００７６】
バッファ（７９０）は、圧縮フレームの符号化データ（７９５）を受け入れ、受け入れた符号化データを解析部／エントロピ復号化部（７８０）に利用可能にする。解析部／エントロピ復号化部（７８０）は、通常はエンコーダにおいて実行されたエントロピ符号化の逆を適用することにより、エントロピ符号化された量子化データに加えて、エントロピ符号化されたサイド情報もエントロピ復号化する。
【００７７】
動き補償部（７３０）は、再構築されているフレーム（７０５）のブロック（例えば、マクロブロック、サブマクロブロック、サブマクロブロック・パーティション、符号化ツリー・ユニット、予測ユニット、又はそれらの一部分）の動き補償予測（７３５）を形成するために、動き情報（７１５）を１以上の参照フレーム（７２５）に適用する。フレーム・ストア（７２０）は、参照フレームとして使用するために、１以上の以前に再構築されたフレームを記憶する。
【００７８】
イントラ・パスは、イントラ予測モジュール（図示せず）を含み得る。イントラ予測モジュールは、隣接する以前に再構築されたピクセル値から、現ブロックのピクセル値を空間的に予測する。インター・パスにおいて、デコーダ（７００）は、予測残差を再構築する。逆量子化部（７７０）は、エントロピ復号化されたデータを逆量子化する。逆周波数変換部（７６０）は、量子化された周波数領域データを空間領域情報に変換する。例えば、逆周波数変換部（７６０）は、逆ブロック変換を周波数変換係数に適用して、ピクセル値データ又は予測残差データを生成する。逆周波数変換は、逆離散コサイン変換とその整数近似、又は別のタイプの逆周波数変換であり得る。
【００７９】
予測フレームに関して、デコーダ（７００）は、再構築フレーム（７０５）を形成するために、再構築された予測残差（７４５）を動き補償予測（７３５）と結合する。（図７には示されていないが、イントラ・パスにおいては、デコーダ（７００）は、予測残差を、イントラ予測からの空間予測と結合することができる。）デコーダ（７００）における動き補償ループは、フレーム・ストア（７２０）の前又は後に、適応ループ内デブロック・フィルタ（７１０）を含む。デコーダ（７００）は、フレーム内の境界にわたる不連続さを適応的に平滑化するために、ループ内フィルタリングを再構築フレームに適用する。適応ループ内デブロック・フィルタ（７１０）は、符号化中に無効化されたとき、いくつかのタイプのコンテンツに対して無効にされ得る。例えば、メイン・ビュー及び補助ビューを伴うフレーム・パッキング手法において、適応ループ内デブロック・フィルタ（７１０）は、（メイン・ビューの一部ではない残存するクロマ情報を含む）補助ビューを復号化するときに無効にされ得る。
【００８０】
図７において、デコーダ（７００）はまた、後処理デブロック・フィルタ（７０８）を含む。後処理デブロック・フィルタ（７０８）は、任意的に、再構築フレーム内の不連続さを平滑化する。（デリング・フィルタリング等の）他のフィルタリングも、後処理フィルタリングの一部として適用することができる。通常は、後のフレーム・アンパッキングが適用される再構築フレームは、後処理デブロック・フィルタ（７０８）をバイパスする。
【００８１】
実装及び所望の伸張のタイプに応じて、デコーダのモジュールを追加してもよいし、省略してもよいし、複数のモジュールに分割してもよいし、他のモジュールと結合してもよいし、且つ／あるいは同様のモジュールと置換してもよい。代替実施形態において、異なるモジュール及び／又はモジュールの他の構成を有するデコーダは、説明した技術のうちの１以上を実行する。デコーダの特定の実施形態は、通常、デコーダ（７００）の変形又は補完バージョンを使用する。デコーダ（７００）内のモジュール間の示された関係は、デコーダ内の情報の一般的な流れを示すものである。他の関係は、簡潔さのため示されていない。
【００８２】
ＶＩＩＩ．高解像度クロマ・サンプリング・フォーマットのフレーム・パッキング／アンパッキング
このセクションは、高解像度クロマ・サンプリング・フォーマットのフレームを、低解像度クロマ・サンプリング・フォーマットのフレームにパックする様々な手法を記載している。次いで、低解像度クロマ・サンプリング・フォーマットのフレームが、低解像度クロマ・サンプリング・フォーマットのために設計されたエンコーダを用いて符号化され得る。（低解像度クロマ・サンプリング・フォーマットのために設計されたデコーダを用いた）復号化の後、低解像度クロマ・サンプリング・フォーマットのフレームが、さらなる処理及び表示のために出力され得る。あるいは、そのような復号化の後、高解像度クロマ・サンプリング・フォーマットのフレームが、出力及び表示のために、フレーム・アンパッキングを介して元に戻され得る。
【００８３】
Ａ．ＹＵＶ４：４：４ビデオのためのフレーム・パッキング／アンパッキングの手法
本明細書で説明する様々な手法を使用して、１つの特定の例として、符号化／復号化が４：２：０フォーマットを使用するとき、４：４：４フォーマットのフレームのクロマ情報を維持することができる。これらの手法において、例えば、１つのＹＵＶ４：４：４フレームが、２つのＹＵＶ４：２：０フレームにパックされる。通常の４：４：４フレームは、４ピクセル位置（pixel  position）ごとに１２個のサンプル値を含むのに対し、４：２：０フレームは、４ピクセル位置ごとに６個のサンプル値しか含まない。したがって、１つの４：４：４フレームに含まれる全てのサンプル値が、２つの４：２：０フレームにパックされ得る。
【００８４】
１．手法１
手法１において、１つのＹＵＶ４：４：４フレームは、空間分割（spatial  partitioning）を用いて、２つのＹＵＶ４：２：０フレームにパックされる。図８は、ＹＵＶ４：４：４フレームの空間分割を用いるフレーム・パッキングのこの手法（８００）を示している。
【００８５】
Ｙ４４４プレーン、Ｕ４４４プレーン、及びＶ４４４プレーンは、ＹＵＶ４：４：４フレーム（８０１）の３つの成分プレーンである。各プレーンは、幅Ｗ及び高さＨの解像度を有する。本明細書で用いる例を説明する都合上、Ｗ及びＨの両方とも４で割り切れるが、これは、本手法の限定であることを意味しない。１つのＹＵＶ４：４：４フレームを２つのＹＵＶ４：２：０フレームにパックする手法（８００）は、図８に示されるように、ＹＵＶ４：４：４フレームを分割する。ＹＵＶ４：４：４フレーム（８０１）のＵ４４４プレーンは、空間分割を用いて、１つのボトム・ハーフＨ２−Ｕ４４４と、２つのアッパ・クォータＱ１−Ｕ４４４及びＱ２−Ｕ４４４とに分割される。ＹＵＶ４：４：４フレーム（８０１）のＶ４４４プレーンは、空間分割を用いて、１つのボトム・ハーフＨ２−Ｖ４４４と、２つのアッパ・クォータＱ１−Ｖ４４４及びＱ２−Ｖ４４４とに分割される。
【００８６】
次いで、ＹＵＶ４：４：４フレーム（８０１）の分割されたプレーンが、１以上のＹＵＶ４：２：０フレームとして再編成される。ＹＵＶ４：４：４フレームのＹ４４４プレーンは、ＹＵＶ４：２：０フォーマットの第１フレーム（８０２）のルマ成分プレーンになる。Ｕ４４４プレーンのボトム・ハーフ及びＶ４４４プレーンのボトム・ハーフは、ＹＵＶ４：２：０フォーマットの第２フレーム（８０３）のルマ成分プレーンになる。Ｕ４４４プレーンのトップ・クォータ及びＶ４４４プレーンのトップ・クォータは、図８に示されるように、ＹＵＶ４：２：０フォーマットの第１フレーム（８０２）及び第２フレーム（８０３）のクロマ成分プレーンになる。
【００８７】
ＹＵＶ４：２：０フォーマットの第１フレーム（８０２）及び第２フレーム（８０３）は、（図８において暗いラインにより分離されている）別々のフレームとして編成され得る。あるいは、ＹＵＶ４：２：０フォーマットの第１フレーム（８０２）及び第２フレーム（８０３）は、２×Ｈの高さを有する単一のフレームとして編成され得る（図８における暗いラインは無視する）。あるいは、ＹＵＶ４：２：０フォーマットの第１フレーム（８０２）及び第２フレーム（８０３）は、２×Ｗの幅を有する単一のフレームとして編成され得る。あるいは、ＹＵＶ４：２：０フォーマットの第１フレーム（８０２）及び第２フレーム（８０３）は、Ｈ．２６４／ＡＶＣ規格又はＨＥＶＣ規格におけるframe_packing_arrangement_typeのために規定された方法のうちいずれかを用いて、単一のフレーム又は複数のフレームとして編成され得る。
【００８８】
このタイプのフレーム・パッキングが機能しても、これは、２つのＹＵＶ４：２：０フレームの各々におけるＹ成分、Ｕ成分、及びＶ成分間の幾何学的対応をもたらさない。詳細には、ＹＵＶ４：２：０フォーマットの第２フレーム（８０３）に関して、ルマ成分とクロマ成分との間の幾何学的対応は通常存在しない。本明細書で説明する他のパッキング手法は、一般に、はるかに良い幾何学的対応を実現する。
【００８９】
代替的に、手法１は、クロマ・サンプリング・フォーマットとしての４：４：４、４：２：２、４：２：０等のサンプリング・レシオにおけるＲＧＢ、ＧＢＲ等の色空間のために使用されてもよい。
【００９０】
２．手法２
手法２において、ＹＵＶ４：４：４フレームのクロマ情報の幾何学的対応を維持したまま、１つのＹＵＶ４：４：４フレームは、２つのＹＵＶ４：２：０フレームにパックされる。Ｙ成分、Ｕ成分、及びＶ成分間の良い幾何学的対応を有するＹＵＶ４：２：０フレームが、より良く圧縮され得る。なぜならば、このＹＵＶ４：２：０フレームは、ＹＵＶ４：２：０フレームを符号化するよう適合された通常のエンコーダにより期待されるモデルにフィットするからである。
【００９１】
２つのＹＵＶ４：２：０フレームのうちの１つが、より低い解像度の色成分を有するにもかかわらず、ＹＵＶ４：４：４フレームにより表される完全なシーンを表すように、パッキングが行われ得る。これは、復号化においてオプションを提供する。フレーム・アンパッキングを実行することができないデコーダ又はフレーム・アンパッキングを実行しないことを選択するデコーダは、シーンを表すＹＵＶ４：２：０フレームの再構築されたバージョンを単に受け取り、その再構築されたバージョンをディスプレイに直接供給するだけでよい。
【００９２】
図９は、このような設計制約に矛盾しないフレーム・パッキングの１つの例示的な手法（９００）を示している。この手法（９００）において、１つのＹＵＶ４：４：４フレーム（８０１）は、２つのＹＵＶ４：２：０フレーム（９０２、９０３）にパックされる。第１フレーム（９０２）は、ＹＵＶ４：２：０フォーマットの「メイン・ビュー」を提供し、これは、ＹＵＶ４：４：４フレーム（８０１）により表される完全なシーンのより低いクロマ解像度のバージョンである。第２フレーム（９０３）は、ＹＵＶ４：２：０フォーマットの「補助ビュー」を提供し、これは、残存するクロマ情報を含む。
【００９３】
図９において、領域Ｂ１．．．領域Ｂ９は、ＹＵＶ４：２：０フォーマットのそれぞれのフレーム（９０２、９０３）内の異なる領域である。ＹＵＶ４：４：４フレーム（８０１）のＵ４４４プレーン及びＶ４４４プレーンの奇数行のサンプル値が、領域Ｂ４及び領域Ｂ５に割り当てられ、ＹＵＶ４：４：４フレーム（８０１）のＵ４４４プレーン及びＶ４４４プレーンの偶数行のサンプル値が、領域Ｂ２、領域Ｂ３、領域Ｂ６、領域Ｂ７、領域Ｂ８、及び領域Ｂ９間に分散される。詳細には、ＹＵＶ４：４：４フレーム（８０１）のＹ４４４プレーン、Ｕ４４４プレーン、及びＶ４４４プレーンのサンプル値は、以下のように、領域Ｂ１．．．領域Ｂ９にマッピングする。
・領域Ｂ１に関して、
【数１】
2015534778.tif 000003
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ−１］×［０，Ｈ−１］である。
・領域Ｂ２に関して、
【数２】
2015534778.tif 000004
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ／２−１］×［０，Ｈ／２−１］である。
・領域Ｂ３に関して、
【数３】
2015534778.tif 000005
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ／２−１］×［０，Ｈ／２−１］である。
・領域Ｂ４に関して、
【数４】
2015534778.tif 000006
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ−１］×［０，Ｈ／２−１］である。
・領域Ｂ５に関して、
【数５】
2015534778.tif 000007
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ−１］×［０，Ｈ／２−１］である。
・領域Ｂ６に関して、
【数６】
2015534778.tif 000008
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ／２−１］×［０，Ｈ／４−１］である。
・領域Ｂ７に関して、
【数７】
2015534778.tif 000009
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ／２−１］×［０，Ｈ／４−１］である。
・領域Ｂ８に関して、
【数８】
2015534778.tif 000010
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ／２−１］×［０，Ｈ／４−１］である。
・領域Ｂ９に関して、
【数９】
2015534778.tif 000011
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ／２−１］×［０，Ｈ／４−１］である。
【００９４】
代替的に、ＹＵＶ４：４：４フレーム（８０１）のＹ４４４プレーン、Ｕ４４４プレーン、及びＶ４４４プレーンのサンプル値は、異なる形で領域Ｂ１．．．領域Ｂ９に割り当てられてもよい。例えば、ＹＵＶ４：４：４フレーム（８０１）のＵ４４４プレーン及びＶ４４４プレーンの偶数行のサンプル値が、領域Ｂ４及び領域Ｂ５に割り当てられ、ＹＵＶ４：４：４フレーム（８０１）のＵ４４４プレーン及びＶ４４４プレーンの奇数行のサンプル値が、領域Ｂ２、領域Ｂ３、領域Ｂ６、領域Ｂ７、領域Ｂ８、及び領域Ｂ９間に分散される。あるいは、別の例として、ＹＵＶ４：４：４フレームのオリジナルのＵプレーンからのデータが、補助ＹＵＶ４：２：０フレームのＵプレーン内に構成され、ＹＵＶ４：４：４フレームのオリジナルのＶプレーンからのデータが、補助ＹＵＶ４：２：０フレームのＶプレーン内に構成されてもよい。この例において、図９と比較すると、上記の式において領域Ｂ７に割り当てられるＶ４４４（２ｘ＋１，４ｙ）からのサンプル値は、代わりに、領域Ｂ８に割り当てることができ、上記の式において領域Ｂ８に割り当てられるＵ４４４（２ｘ＋１，４ｙ＋２）からのサンプル値は、代わりに、領域Ｂ７に割り当てることができる。あるいは、Ｕ４４４からの同じサンプル値が、１行おきに分けるのではなく、Ｂ６及びＢ７の代わりに、単一の領域にコピーされ、Ｖ４４４からの同じサンプル値が、１行おきに分けるのではなく、Ｂ８及びＢ９の代わりに、単一の領域にコピーされてもよい。どちらにしても、補助ＹＵＶ４：２：０フレームのＵプレーン（又は、Ｖプレーン）が、異なるオリジナルのＵプレーン及びＶプレーンからのコンテンツを混合することなく、ＹＵＶ４：４：４フレームのＵプレーン（又は、Ｖプレーン）から構築される。（反対に、図９の例において、補助ＹＵＶ４：２：０フレームのＵプレーン（又は、Ｖプレーン）は、ＹＵＶ４：４：４フレームのＵ成分及びＶ成分からのデータの混合を有する。補助ＹＵＶ４：２：０フレームのＵプレーン（又は、Ｖプレーン）の上半分は、オリジナルのＵプレーンからのデータを含み、下半分は、オリジナルのＶプレーンからのデータを含む。）
【００９５】
ＹＵＶ４：２：０フォーマットの第１フレーム（９０２）及び第２フレーム（９０３）は、（図９において暗いラインにより分離されている）別々のフレームとして編成され得る。あるいは、ＹＵＶ４：２：０フォーマットの第１フレーム（９０２）及び第２フレーム（９０３）は、２×Ｈの高さを有する単一のフレームとして編成され得る（図９における暗いラインは無視する）。あるいは、ＹＵＶ４：２：０フォーマットの第１フレーム（９０２）及び第２フレーム（９０３）は、２×Ｗの幅を有する単一のフレームとして編成され得る。あるいは、ＹＵＶ４：２：０フォーマットの第１フレーム（９０２）及び第２フレーム（９０３）は、Ｈ．２６４／ＡＶＣ規格又はＨＥＶＣ規格におけるframe_packing_arrangement_typeのために規定された方法のうちいずれかを用いて、単一のフレームとして編成され得る。
【００９６】
図１０は、図９の手法（９００）に従ってパックされる例示的なフレームを示している。図１０は、Ｙ４４４プレーン、Ｕ４４４プレーン、及びＶ４４４プレーンを含むＹＵＶ４：４：４フレーム（１００１）を示している。
【００９７】
フレーム・パッキング後、メイン・ビュー（１００２）（第１ＹＵＶ４：２：０フレーム）は、オリジナルのＹＵＶ４：４：４フレーム（１００１）と同等のＹＵＶ４：２：０である。復号化システムは、ＹＵＶ４：４：４がサポートされていない、あるいは必ずしも考慮されない場合、メイン・ビュー（１００２）の再構築されたバージョンを単に表示するだけでよい。
【００９８】
補助ビュー（１００３）は、ＹＵＶ４：４：４フレーム（１００１）のクロマ情報を含む。そうであっても、補助ビュー（１００３）は、ＹＵＶ４：２：０フレームのコンテンツ・モデルにフィットし、通常のＹＵＶ４：２：０ビデオ・エンコーダを用いた圧縮によく適している。フレーム内において、補助ビュー（１００３）は、Ｙ成分、Ｕ成分、及びＶ成分にわたる幾何学的対応を示す。フレーム間で、補助ビューは、Ｙ成分、Ｕ成分、及びＶ成分にわたる高い相関関係がある動きを示すことが予期される。
【００９９】
図１１は、設計制約に矛盾しないフレーム・パッキングの別の例示的な手法（１１００）を示している。この手法（１１００）において、１つのＹＵＶ４：４：４フレーム（８０１）は、２つのＹＵＶ４：２：０フレーム（１１０２、１１０３）にパックされる。図９の手法（９００）とほとんど同様に、図１１の手法（１１００）において、第１フレーム（１１０２）は、ＹＵＶ４：２：０フォーマットの「メイン・ビュー」を提供し、これは、ＹＵＶ４：４：４フレーム（８０１）により表される完全なシーンのより低いクロマ解像度のバージョンである。それに対し、第２フレーム（１１０３）は、ＹＵＶ４：２：０フォーマットの「補助ビュー」を提供し、これは、残存するクロマ情報を含む。
【０１００】
図１１において、領域Ａ１．．．領域Ａ９は、ＹＵＶ４：２：０フォーマットのそれぞれのフレーム（１１０２、１１０３）内の異なる領域である。ＹＵＶ４：４：４フレーム（８０１）のＵ４４４プレーン及びＶ４４４プレーンの奇数列のサンプル値が、領域Ａ４及び領域Ａ５に割り当てられ、ＹＵＶ４：４：４フレーム（８０１）のＵ４４４プレーン及びＶ４４４プレーンの偶数列のサンプル値が、領域Ａ２、領域Ａ３、領域Ａ６、領域Ａ７、領域Ａ８、及び領域Ａ９間に分散される。詳細には、ＹＵＶ４：４：４フレーム（８０１）のＹ４４４プレーン、Ｕ４４４プレーン、及びＶ４４４プレーンのサンプル値は、以下のように、領域Ａ１．．．領域Ａ９にマッピングする。
・領域Ａ１に関して、
【数１０】
2015534778.tif 000012
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ−１］×［０，Ｈ−１］である。
・領域Ａ２に関して、
【数１１】
2015534778.tif 000013
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ／２−１］×［０，Ｈ／２−１］である。
・領域Ａ３に関して、
【数１２】
2015534778.tif 000014
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ／２−１］×［０，Ｈ／２−１］である。
・領域Ａ４に関して、
【数１３】
2015534778.tif 000015
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ／２−１］×［０，Ｈ−１］である。
・領域Ａ５に関して、
【数１４】
2015534778.tif 000016
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ／２−１］×［０，Ｈ−１］である。
・領域Ａ６に関して、
【数１５】
2015534778.tif 000017
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ／４−１］×［０，Ｈ／２−１］である。
・領域Ａ７に関して、
【数１６】
2015534778.tif 000018
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ／４−１］×［０，Ｈ／２−１］である。
・領域Ａ８に関して、
【数１７】
2015534778.tif 000019
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ／４−１］×［０，Ｈ／２−１］である。
・領域Ａ９に関して、
【数１８】
2015534778.tif 000020
である。ここで、（ｘ，ｙ）の範囲は、［０，Ｗ／４−１］×［０，Ｈ／２−１］である。
【０１０１】
代替的に、ＹＵＶ４：４：４フレーム（８０１）のＹ４４４プレーン、Ｕ４４４プレーン、及びＶ４４４プレーンのサンプル値は、異なる形で領域Ａ１．．．領域Ａ９に割り当てられてもよい。例えば、ＹＵＶ４：４：４フレーム（８０１）のＵ４４４プレーン及びＶ４４４プレーンの偶数列のサンプル値が、領域Ａ４及び領域Ａ５に割り当てられ、ＹＵＶ４：４：４フレーム（８０１）のＵ４４４プレーン及びＶ４４４プレーンの奇数列のサンプル値が、領域Ａ２、領域Ａ３、領域Ａ６、領域Ａ７、領域Ａ８、及び領域Ａ９間に分散される。あるいは、別の例として、ＹＵＶ４：４：４フレームのオリジナルのＵプレーンからのデータが、補助ＹＵＶ４：２：０フレームのＵプレーン内に構成され、ＹＵＶ４：４：４フレームのオリジナルのＶプレーンからのデータが、補助ＹＵＶ４：２：０フレームのＶプレーン内に構成されてもよい。この例において、図１１と比較すると、上記の式において領域Ａ７に割り当てられるＶ４４４（４ｘ，２ｙ＋１）からのサンプル値は、代わりに、領域Ａ８に割り当てられ、上記の式において領域Ａ８に割り当てられるＵ４４４（４ｘ＋２，２ｙ＋１）からのサンプル値は、代わりに、領域Ａ７に割り当てられる。あるいは、Ｕ４４４からの同じサンプル値が、１列おきに分けるのではなく、Ａ６及びＡ７の代わりに、単一の領域にコピーされ、Ｖ４４４からの同じサンプル値が、１列おきに分けるのではなく、Ａ８及びＡ９の代わりに、単一の領域にコピーされてもよい。どちらにしても、補助ＹＵＶ４：２：０フレームのＵプレーン（又は、Ｖプレーン）が、異なるオリジナルのＵプレーン及びＶプレーンからのコンテンツを混合することなく、ＹＵＶ４：４：４フレームのＵプレーン（又は、Ｖプレーン）から構築される。
【０１０２】
ＹＵＶ４：２：０フォーマットの第１フレーム（１１０２）及び第２フレーム（１１０３）は、（図１１において暗いラインにより分離されている）別々のフレームとして編成され得る。あるいは、ＹＵＶ４：２：０フォーマットの第１フレーム（１１０２）及び第２フレーム（１１０３）は、２×Ｈの高さを有する単一のフレームとして編成され得る（図１１における暗いラインは無視する）。あるいは、ＹＵＶ４：２：０フォーマットの第１フレーム（１１０２）及び第２フレーム（１１０３）は、２×Ｗの幅を有する単一のフレームとして編成され得る。あるいは、ＹＵＶ４：２：０フォーマットの第１フレーム（１１０２）及び第２フレーム（１１０３）は、Ｈ．２６４／ＡＶＣ規格又はＨＥＶＣ規格におけるframe_packing_arrangement_typeのために規定された方法のうちいずれかを用いて、単一のフレームとして編成され得る。
【０１０３】
フレーム・アンパッキングは、フレーム・パッキングを単にミラーするだけでよい。ＹＵＶ４：２：０フォーマットのフレームの領域に割り当てられたサンプルが、ＹＵＶ４：４：４フォーマットのフレームのクロマ成分におけるオリジナルの位置に再度割り当てられる。一実施例において、例えば、フレーム・アンパッキング中、ＹＵＶ４：２：０フォーマットのフレームの領域Ｂ２．．．Ｂ９におけるサンプルが、以下の擬似コードに示されるように、ＹＵＶ４：４：４フォーマットのフレームの再構築されたクロマ成分Ｕ’４４４及びＶ’４４４に割り当てられる。
【数１９】
2015534778.tif 000021
ここで、’’マークは、（おそらくは不可逆的な）符号化からの再構築を示す。
【０１０４】
Ｂ．フレーム・パッキング情報のシグナリングのための値のシンタックス及びセマンティックス
例示的な実施例において、フレーム・パッキング構成ＳＥＩメッセージは、２つの４：２：０フレームが、パックされた１つの４：４：４フレームを含みことをシグナリングするために使用される。フレーム・パッキング構成ＳＥＩメッセージは、Ｈ．２６４／ＡＶＣ規格及びＨＥＶＣ規格において規定されているが、そのようなフレーム・パッキング構成ＳＥＩメッセージは、異なる目的で以前にも使用されている。
【０１０５】
フレーム・パッキング構成ＳＥＩメッセージは、２Ｄビデオ・コーデックを用いる立体視３Ｄビデオ・フレームを送信するために設計された。そのような場合、２つの４：２：０フレームは、立体視３Ｄビデオ・シーンの左目用視点及び右目用視点を表す。本明細書で説明する手法では、フレーム・パッキング構成ＳＥＩメッセージの範囲は、その代わりに、その後に１つの４：４：４フレームを元に戻すためのフレーム・アンパッキングが続く、その４：４：４フレームから得られる２つの４：２：０フレームの符号化／復号化をサポートするよう拡張され得る。２つの４：２：０フレームは、メイン・ビュー及び補助ビューを表す。メイン・ビュー（フレーム）及び補助ビュー（フレーム）は両方とも、４：２：０フォーマットと同等のフォーマットである。メイン・ビュー（フレーム）は、独立して有用であり得るのに対し、補助ビュー（フレーム）は、メイン・ビューとともに適切に解釈されるときに有用である。したがって、これらの手法は、フレーム・パッキング構成ＳＥＩメッセージを使用して、４：２：０フレームを符号化／復号化することができるビデオ・コーデックを用いる４：４：４フレームの符号化／復号化を効果的にサポートすることができる。
【０１０６】
この目的のために、ＳＥＩメッセージは拡張される。例えば、シンタックス要素content_interpretation_typeのセマンティックスは、以下のように拡張される。関連するフレーム・パッキング手法において、ＹＵＶ４：４：４フレームに関して、２つの構成ＹＵＶ４：２：０フレームが存在する。それらは、メイン・ビューのための第１フレームと、補助ビューのための第２フレームである。content_interpretation_typeは、以下の表で指定される構成フレームの意図される解釈を示す。０、１、及び２の値は、Ｈ．２６４／ＡＶＣ規格及びＨＥＶＣ規格において解釈されている。content_interpretation_typeの新たな値は、構成フレームがＹＵＶ４：４：４フレームからのデータを含むものとして解釈されるべきであることを示すために規定される：
【表１】
2015534778.tif 000022
【０１０７】
代替的に、シンタックス要素content_interpretation_typeの異なる値が、上記の表に示された解釈に関連付けられてもよい。あるいは、フレーム・パッキングにより高解像度クロマ・サンプリング・フォーマットの１以上のフレームから得られる低解像度クロマ・サンプリング・フォーマットのフレームの符号化／復号化をサポートするために、content_interpretation_typeの他の解釈及び／又は追加の解釈が使用されてもよい。
【０１０８】
さらに、単純さのために、次の制約のうちの１以上が、フレーム・パッキング構成ＳＥＩメッセージの他のシンタックス要素に課せられ得る。content_interpretation_typeが３〜６の値を有する場合（すなわち、ＹＵＶ４：２：０フレームへのＹＵＶ４：４：４フレームのフレーム・パッキングを伴う場合）、シンタックス要素quincunx_sampling_flag、spatial_flipping_flag、frame0_grid_position_x、frame0_grid_position_y、frame1_grid_position_x、及びframe1_grid_position_yの値は０である。さらに、content_interpretation_typeが３又は５に等しい場合（前処理においてフィルタリングが存在しないことを示す）、chroma_loc_info_present_flagは１であり、chroma_sample_loc_type_top_field及びchroma_sample_loc_type_bottom_fieldの値は２である。
【０１０９】
Ｈ．２６４／ＡＶＣ規格（及び、ＨＥＶＣ規格）において、シンタックス要素frame_packing_arrangement_typeは、立体視ビューの２つの構成フレームがどのように構成されるかを示す。例えば、frame_packing_arrangement_typeが３であることは、２つの構成フレームのサイド・バイ・サイド・パッキングを示し、frame_packing_arrangement_typeが４であることは、２つの構成フレームのトップ・ボトム・パッキングを示し、frame_packing_arrangement_typeが５であることは、２つの構成フレームのテンポラル・インタリービングを示す。シンタックス要素frame_packing_arrangement_typeは、高解像度クロマ・サンプリング・フォーマットのフレームのパッキングを示すcontent_interpretation_typeの値とともに、同様に使用することができる。例えば、frame_packing_arrangement_typeが３であることは、メイン・フレーム及び補助フレームのサイド・バイ・サイド・パッキングを示し得る。frame_packing_arrangement_typeが４であることは、メイン・フレーム及び補助フレームのトップ・ボトム・パッキングを示し得る。frame_packing_arrangement_typeが５であることは、メイン・フレーム及び補助フレームのテンポラル・インタリービングを示し得る。あるいは、フレーム・パッキング構成メタデータは、何らかの他の形でシグナリングされてもよい。代替的に、高解像度クロマ・サンプリング・フォーマットのフレームのパッキングを示すcontent_interpretation_typeシンタックス要素のセマンティックスを拡張する代わりに、高解像度クロマ・サンプリング・フォーマットのフレームのパッキングを示すために、frame_packing_arrangement_typeのセマンティックスが拡張されてもよい。例えば、フレーム・パッキング構成メタデータ（５より大きいframe_packing_arrangement_typeの値等）は、メイン・ビュー及び補助ビューがどのように構成されるかを示すことに加えて、フレーム・パッキング／アンパッキングが使用されるか使用されないか、フィルタリング又は他の前処理オペレーションが使用されたか使用されなかったか（したがって、対応する後処理フィルタリング又は他の後処理オペレーションが使用されるべきか使用されないべきか）、実行する後処理オペレーションのタイプ、又はフレーム・パッキング／アンパッキングに関する他の情報を示すことができる。
【０１１０】
これらの例において、フレーム・パッキング構成ＳＥＩメッセージは、復号化ピクチャが、フレーム・パッキング構成の構成フレームとして４：４：４フレームのメイン・ビュー及び補助ビューを含むことを、デコーダに通知する。この情報を使用して、表示又は他の目的のために、メイン・ビュー及び補助ビューを適切に処理することができる。例えば、復号化側のシステムが、４：４：４フォーマットのビデオを望み、メイン・ビュー及び補助ビューから４：４：４フレームを再構築することができる場合、このシステムは、そのようにすることができ、出力フォーマットは４：４：４になるであろう。そうでなければ、メイン・ビューのみが出力として提供され、出力フォーマットは４：２：０になるであろう。
【０１１１】
Ｃ．前処理オペレーション及び後処理オペレーション
高解像度クロマ・サンプリング・フォーマットのフレームのクロマ・サンプル値の単純なサブサンプリングは、ダウンサンプリングされたクロマ・サンプル値においてエイリアシング・アーチファクトを生成させ得る。エイリアシングを軽減するために、フレーム・パッキングは、クロマ・サンプル値をフィルタリングするための前処理オペレーションを含み得る。そのようなフィルタリングは、アンチエイリアス・フィルタリングと呼ばれ得る。対応するフレーム・アンパッキングは、クロマ・サンプル値の前処理フィルタリングを補償するための後処理オペレーションを含み得る。例えば、上記の表を参照すると、content_interpretation_typeが４又は６である場合、前処理オペレーションを使用して、フレーム・パッキング中、クロマ・サンプル値をフィルタリングすることができ、フレーム・アンパッキングは、対応する後処理オペレーションを含み得る。
【０１１２】
フレーム・パッキング／アンパッキングに適合される前処理及び後処理の様々な理由が存在する。
【０１１３】
例えば、前処理は、メイン・ビューを表すＹＵＶ４：２：０フレームのみが表示のために使用されるときの品質を向上させるのに役立ち得る。これは、デコーダが、クロマ情報の単純なサブサンプリングにより生じるエイリアシング・アーチファクトのリスクを冒すことなく、補助ビューを表すＹＵＶ４：２：０フレームを無視することを許容し得る。前処理がないと、（メイン・ビューを表すＹＵＶ４：２：０フレームのクロマ信号が、ＹＵＶ４：４：４フレームからのクロマ信号の直接的なサブサンプリングにより得られる場合、）出力を生成するためにメイン・ビューのみが使用されるときには、エイリアシング・アーチファクトが、例えば、ＣｌｅａｒＴｙｐｅテキスト・コンテンツといった何らかのコンテンツ上で見られ得る。
【０１１４】
別の例として、前処理及び後処理は、ＹＵＶ４：４：４領域における圧縮されたクロマ信号の一貫性及び平滑さを維持／強化するのに役立ち得る。フレーム・パッキングを使用して、１つのＹＵＶ４：４：４フレームを２つのＹＵＶ４：２：０フレームにパックするとき、クロマ信号は複数の領域に分割され、各領域は、その位置に応じて、（例えば、異なるレベルの量子化により）異なって圧縮され得る。このため、クロマ信号が、複数の領域からのデータをインタリーブすることにより、再度組み立てられるとき、人工的な不連続さ及び高周波ノイズが生成され得る。後処理オペレーションは、圧縮に起因する、これらの領域において生じる差異を平滑化するのに役立ち得る。
【０１１５】
別の例として、前処理は、残存するクロマ情報を含む補助ビューを表すＹＵＶ４：２：０フレームの圧縮を拡張するのに役立ち得る。
【０１１６】
いくつかの例示的な実施例において、前処理オペレーション及び後処理オペレーションは、メイン・ビューを表すＹＵＶ４：２：０フレームの一部であるクロマ信号にしか影響を及ぼさないように制限される。すなわち、フィルタリングされるサンプル値は、メイン・ビューのクロマ成分の一部である。
【０１１７】
さらに、ＡＶＣ符号化／復号化又はＨＥＶＣ符号化／復号化と組み合わせたフレーム・パッキング／アンパッキングに関して、前処理オペレーション及び後処理オペレーションは、（ルマ・サンプル・グリッドとのクロマ・サンプル・グリッド・アライメントを示す）クロマ・サンプル位置タイプに基づき得る。クロマ・サンプル位置タイプは、圧縮ビットストリームの一部としてシグナリングされるchroma_sample_loc_type_top_fieldシンタックス要素及びchroma_sample_loc_type_bottom_fieldシンタックス要素から決定される。（これら２つの要素は、プログレッシブ・スキャン・ソース・コンテンツでは、通常等しい値を有するであろう。）所与のクロマ・サンプル位置タイプに関して、クロマ・サンプルが、特定の方向（水平方向又は垂直方向）について、ルマ・サンプルとアラインする場合、奇数タップ対称フィルタ（丸め処理に加えた［１  ２  １］／４すなわち［０．２５  ０．５  ０．２５］等）を使用して、その方向のクロマをフィルタリングする。一方、クロマ・サンプルが、特定の方向（水平方向又は垂直方向）について、ルマ・サンプルとアラインせず、クロマ・サンプル・グリッド位置が、特定の方向（水平方向／垂直方向）について、ルマ・サンプル位置間で中央に揃えられている場合、偶数タップ対称フィルタ（通常は、丸め処理に加えた［１  １］／２すなわち［０．５  ０．５］）を使用して、その方向のクロマをフィルタリングする。後者の場合の別の可能なフィルタ選択は、丸め処理に加えた［１  ３  ３  １］／８すなわち［０．１２５  ０．３７５  ０．３７５  ０．１２５］である。後処理オペレーションの選択は、通常、後処理オペレーションが前処理オペレーションを補償するようになされる。いくつかの場合において、後処理は、前処理を直接的に逆にするのに対し、他の場合において、後処理は、以下で説明するように、前処理をおおよそ逆にするにすぎない。
【０１１８】
ＡＶＣ符号化／復号化又はＨＥＶＣ符号化／復号化と組み合わせたフレーム・パッキング／アンパッキングの実施例において、クロマ・サンプル位置タイプが、chroma_sample_loc_type_top_fieldシンタックス要素及びchroma_sample_loc_type_bottom_fieldシンタックス要素について、１である場合、クロマ・サンプルは、水平方向又は垂直方向で、ルマ・サンプルとアラインせず、したがって、前処理オペレーションでは、水平方向及び垂直方向の両方で、フィルタ［０．５  ０．５］が適用される。そのような場合、図９を参照して示した手法（９００）では、領域Ｂ２及び領域Ｂ３のサンプル値を導出するための式は以下のとおりである。
・領域Ｂ２に関して、
【数２０】
2015534778.tif 000023
・領域Ｂ３に関して、
【数２１】
2015534778.tif 000024
ここで、（ｘ，ｙ）の範囲は、両方の領域について、［０，Ｗ／２−１］×［０，Ｈ／２−１］である。
【０１１９】
このフィルタリングに起因して、ＹＵＶ４：４：４フレームからの位置Ｕ４４４（２ｘ，２ｙ）及び位置Ｖ４４４（２ｘ，２ｙ）におけるサンプル値は、メイン・ビュー（９０２）において直接的に表されない。代わりに、フィルタリングされたサンプル値
（
【数２２】
2015534778.tif 000025
及び
【数２３】
2015534778.tif 000026
）が、メイン・ビュー（９０２）における位置での値である。ＹＵＶ４：４：４フレームからのＵ４４４（２ｘ＋１，２ｙ）、Ｕ４４４（２ｘ，２ｙ＋１）、Ｕ４４４（２ｘ＋１，２ｙ＋１）、Ｖ４４４（２ｘ＋１，２ｙ）、Ｖ４４４（２ｘ，２ｙ＋１）、及びＶ４４４（２ｘ＋１，２ｙ＋１）は、依然として、領域Ｂ４．．．領域Ｂ９間の補助ビュー（９０３）において直接的に表される。
【０１２０】
ＹＵＶ４：４：４フォーマットのフレームが出力されるときの後処理オペレーションの一部としての対応するフィルタリングにおいて、ＹＵＶ４：４：４フレームの位置Ｕ４４４（２ｘ，２ｙ）及び位置Ｖ４４４（２ｘ，２ｙ）のサンプル値は、パックされたフレームにおける値から、Ｕ’４４４（２ｘ，２ｙ）及びＶ’４４４（２ｘ，２ｙ）として、以下のように計算され得る：
・
【数２４】
2015534778.tif 000027
・
【数２５】
2015534778.tif 000028
ここで、（ｘ，ｙ）の範囲は、［０，Ｗ／２−１］×［０，Ｈ／２−１］であり、αは、実装に依存する重み付けファクタであり、’’マークは、（おそらくは不可逆的な）符号化からの再構築を示す。水平方向及び垂直方向の両方でルマ・サンプル位置間で中央に揃えられたクロマ・サンプル・グリッド位置に関して、［０．５  ０．５］という提案されるアンチエイリアス・フィルタを用いると、α＝１という値は、前処理において実行されたフィルタリングを直接的に逆にすることで、量子化誤差及び丸め誤差なしで、入力値を完全に再構築するであろう。αが他の値の場合、後処理中のフィルタリングは、前処理において実行されたフィルタリングをおおよそ逆にするに過ぎない。量子化誤差を考慮すると、認識されるアーチファクトを低減させるために、いくらか小さな値のα（例えば、α＝０．５）を用いることが望ましいことであり得る。一般に、αは、０．０〜１．０の範囲にあるべきであり、量子化ステップ・サイズが大きいほど、αは小さいべきである。高い値のαを用いると、不可逆圧縮に起因して生成されるアーチファクトを増幅させ得る。
【０１２１】
あるいは、異なる重みを異なるサンプル位置に対して割り当てることができる。ＹＵＶ４：４：４フレームの位置Ｕ４４４（２ｘ，２ｙ）及び位置Ｖ４４４（２ｘ，２ｙ）のサンプル値は、パックされたフレームにおける値から、Ｕ’４４４（２ｘ，２ｙ）及びＶ’４４４（２ｘ，２ｙ）として、以下のように計算され得る：
・
【数２６】
2015534778.tif 000029
・
【数２７】
2015534778.tif 000030
ここで、（ｘ，ｙ）の範囲は、［０，Ｗ／２−１］×［０，Ｈ／２−１］であり、α、β、及びγは、実装に依存する重み付けファクタであり、’’マークは、（おそらくは不可逆的な）符号化からの再構築を示す。水平方向及び垂直方向の両方でルマ・サンプル位置間で中央に揃えられたクロマ・サンプル・グリッド位置に関して、［０．５  ０．５］という提案されるアンチエイリアス・フィルタを用いると、α＝β＝γ＝１という値は、前処理において実行されたフィルタリングを直接的に逆にすることで、量子化誤差及び丸め誤差なしで、入力値を完全に再構築するであろう。α、β、及びγが他の値の場合、後処理中のフィルタリングは、前処理において実行されたフィルタリングをおおよそ逆にするに過ぎない。量子化誤差を考慮すると、認識されるアーチファクトを低減させるために、いくらか小さな値のα、β、及びγ（例えば、α＝β＝γ＝０．５）を用いることが望ましいことであり得る。一般に、α、β、及びγは、０．０〜１．０の範囲にあるべきであり、量子化ステップ・サイズが大きいほど、α、β、及びγは小さいべきである。高い値のα、β、及びγを用いると、不可逆圧縮に起因して生成されるアーチファクトを増幅させ得る。α、β、及びγの値は、相互相関分析を用いる条件付き最適化のために設計され得る。
【０１２２】
α＝β＝γ＝１の場合、ＹＵＶ４：４：４フレームの位置Ｕ４４４（２ｘ，２ｙ）及び位置Ｖ４４４（２ｘ，２ｙ）のサンプル値は、パックされたフレームにおける値から、Ｕ’４４４（２ｘ，２ｙ）及びＶ’４４４（２ｘ，２ｙ）として、以下のように計算され得る：
・
【数２８】
2015534778.tif 000031
・
【数２９】
2015534778.tif 000032
ここで、（ｘ，ｙ）の範囲は、［０，Ｗ／２−１］×［０，Ｈ／２−１］である。
【０１２３】
例えば、前処理中、位置（２ｘ，２ｙ）、位置（２ｘ＋１，２ｙ）、位置（２ｘ，２ｙ＋１）、及び位置（２ｘ＋１，２ｙ＋１）のサンプル値２９、１５、７、及び１８が、フィルタリングされて、１７に丸められるサンプル値１７．２５が生成される。１７というフィルタリングされたサンプル値が、２９というオリジナルのサンプル値の代わりに使用される。後処理中、位置（２ｘ，２ｙ）のサンプル値は、６８−１５−７−１８＝２８として再構築される。オリジナルのサンプル値（２９）と再構築されたサンプル値（２８）との間の差は、前処理オペレーションのフィルタリングに起因する正確さの損失を示す。
【０１２４】
代替的に、デバイスは、フィルタリングが前処理中に実行された場合であっても、後処理中のフィルタリング・オペレーションを選択的に省略してもよい。例えば、デバイスは、復号化及び再生の計算負荷を低減させるために、後処理中のフィルタリングを省略することができる。
【０１２５】
代替的に、前処理オペレーション及び後処理オペレーションは、（例えば、図９に示されるフレーム９０２の領域Ｂ２及び領域Ｂ３といった）メイン・ビューを表す４：２：０フレームの一部である４：４：４フレームのクロマ信号に限定されるものではない。代わりに、前処理オペレーション及び後処理オペレーションは、（例えば、図９に示されるフレーム９０３の領域Ｂ４〜領域Ｂ９といった）補助ビューを表す４：２：０フレームの一部である４：４：４フレームのクロマ信号についても実行されてもよい。（補助ビューを表す４：２：０フレームの一部である４：４：４フレームのクロマ信号についての）そのような前処理オペレーション及び後処理オペレーションは、メイン・ビューを表す４：２：０フレームの一部となる４：４：４フレームのクロマ信号の前処理及び後処理とは異なるフィルタリング・オペレーションを使用することができる。
【０１２６】
前処理オペレーション及び後処理オペレーションの上記の例において、前処理中、平均フィルタリングが使用され、後処理中、対応するフィルタリングが使用される。代替的に、前処理オペレーション及び後処理オペレーションは、変換／逆変換ペアを実施してもよい。例えば、変換／逆変換ペアは、ウェーブレット変換、リフティング変換、及び他の変換のクラスの１つであり得る。４：４：４フレームをパックするというコンテキストにおける前処理オペレーション及び後処理オペレーションの使用の上述した様々な設計理由を満たすために、特定の変換がまた、ユース・ケース・シナリオに応じて設計され得る。あるいは、前処理及び後処理は、他のフィルタ領域のサポート付きの他のフィルタ構造を使用してもよいし、コンテンツ及び／又は忠実性に関して適応的な（例えば、符号化のために使用される量子化ステップ・サイズに関して適応的な）フィルタリングを使用してもよい。
【０１２７】
いくつかの例示的な実施例において、フレーム・パックされた４：２：０コンテンツの表現及び／又は圧縮は、４：４：４コンテンツのオリジナルのサンプル・ビット深度よりも高いサンプル・ビット深度を使用し得る。例えば、４：４：４フレームのサンプル・ビット深度は、１サンプルにつき８ビットであり、フレーム・パックされた４：２：０フレームのサンプル・ビット深度は、１サンプルにつき１０ビットである。これは、前処理オペレーション及び後処理オペレーションの適用中の正確性の損失を低減させるのに役立ち得る。あるいは、これは、４：２：０フレームが不可逆圧縮を用いて符号化されるときのより高いレベルの忠実性を実現するのに役立ち得る。例えば、４：４：４コンテンツが、１サンプルにつき８ビットのサンプル・ビット深度を有し、フレーム・パックされた４：２：０コンテンツが、１サンプルにつき１０ビットのサンプル・ビット深度を有する場合、１サンプルにつき１０ビットのビット深度は、エンコーダ及びデコーダの全て又はほとんどの内部モジュールにおいて維持され得る。受信側でコンテンツを４：４：４フォーマットにアンパックした後、必要ならば、サンプル・ビット深度を１サンプルにつき８ビットに低減させることができる。より一般的に、高解像度クロマ・サンプリング・フォーマットのフレームのサンプル値は、第１のビット深度（１サンプルにつき８ビット、１０ビット、１２ビット、又は１６ビット等）を有し得るのに対して、（フレーム・パッキング後の）低解像度クロマ・サンプリング・フォーマットのフレームのサンプル値は、第１のビット深度よりも高い第２のビット深度を有する。
【０１２８】
Ｄ．ＹＵＶ４：２：２ビデオのための代替例
前述の例の多くにおいて、ＹＵＶ４：４：４フレームが、符号化及び復号化のために、ＹＵＶ４：２：０フレームにパックされている。他の例において、ＹＵＶ４：２：２フレームが、符号化及び復号化のために、ＹＵＶ４：２：０フレームにパックされる。通常の４：２：２フレームは、４ピクセル位置ごとに８個のサンプル値を含むのに対し、４：２：０フレームは、４ピクセル位置ごとに６個のサンプル値しか含まない。したがって、４：２：２フレームに含まれるサンプル値は、４／３の４：２：０フレームにパックされ得る。すなわち、効率的にパックされると、３つの４：２：２フレームが、４つの４：２：０フレームにパックされ得る。
【０１２９】
一手法において、４：２：２フレームのフレーム・パッキングは、図８に示した４：４：４フレームから４：２：０フレームへの単純な手法（８００）と同様の単純な方法で行われる。
【０１３０】
他の手法において、ＹＵＶ４：２：２フレームのクロマ情報の幾何学的対応を維持したまま、１つのＹＵＶ４：２：２フレームは、複数のＹＵＶ４：２：０フレームにパックされる。Ｙ成分、Ｕ成分、及びＶ成分間の良い幾何学的対応を有する、結果として生じるＹＵＶ４：２：０フレームが、より良く圧縮され得る。なぜならば、このＹＵＶ４：２：０フレームは、符号化されたＹＵＶ４：２：０フレームに適合する通常のエンコーダにより期待されるモデルにフィットするからである。同時に、ＹＵＶ４：２：０フレームが、より低い解像度の色成分を有するにもかかわらず、ＹＵＶ４：２：２フレームにより表される完全なシーンを表すように、パッキングが行われ得る。
【０１３１】
１つのＹＵＶ４：２：２フレームを２つのＹＵＶ４：２：０フレーム（メイン・ビュー及び補助ビュー）にパックするとともに、このような設計制約が満たされ得る。補助ビューは、「空（empty）」領域を有するが、このような空領域は、固定値を用いて、あるいはクロマ値を複製することにより、満たされ得る。あるいは、シーンの奥行き等の他の情報を示すために、このような空領域が使用されてもよい。例えば、図９を参照して説明したパッキング手法（９００）に関して、領域Ｂ４及び領域Ｂ５がデータを有さないことを除いて、手法（９００）をそのまま使用することができる。あるいは、図１１を参照して説明したパッキング手法（１１００）に関して、領域Ａ４及び領域Ａ５がデータを有さないことを除いて、手法（１１００）をそのまま使用することができる
【０１３２】
例示的な実施例において、以下の表に示されるように、構成ＹＵＶ４：２：０フレームへのＹＵＶ４：２：２フレームのパッキングをシグナリングするための、content_interpretation_typeの新たな値が規定される。
【表２】
2015534778.tif 000033
【０１３３】
代替的に、シンタックス要素content_interpretation_typeの異なる値が、上記の表に示された解釈に関連付けられてもよい。あるいは、フレーム・パッキングにより高解像度クロマ・サンプリング・フォーマットの１以上のフレームから得られる低解像度クロマ・サンプリング・フォーマットのフレームの符号化／復号化をサポートするために、content_interpretation_typeの他の解釈及び／又は追加の解釈が使用されてもよい。
【０１３４】
Ｅ．他のクロマ・サンプリング・フォーマット
本明細書で説明した例の多くは、クロマ・サンプリング・フォーマットとしての、４：４：４、４：２：２、４：２：０等のサンプリング・レシオにおけるＹ’ＵＶ、ＹＩＱ、Ｙ’ＩＱ、ＹｄｂＤｒ、ＹＣｂＣｒ、ＹＣｏＣｇ等のＹＵＶ色空間の変形を含む。代替的に、説明した手法は、クロマ・サンプリング・フォーマットとしての、４：４：４、４：２：２、４：２：０等のサンプリング・レシオにおけるＲＧＢ、ＧＢＲ等の色空間のために使用されてもよい。例えば、デバイスは、（ＲＧＢ４：４：４又はＧＢＲ４：４：４等の）高解像度の非ＹＵＶクロマ・サンプリング・フォーマットのフレームを、（４：２：０フォーマット等の）低解像度フォーマットのフレームにパックすることができ、次いで、低解像度フォーマットのフレームを符号化することができる。この符号化において、名目上のルマ成分及び名目上のクロマ成分は、（おおよその輝度及び色差値ではなく）非ＹＵＶ成分のサンプル値を表す。対応するアンパッキングにおいて、デバイスは、（４：２：０フォーマット等の）低解像度フォーマットのフレームを、（ＲＧＢ４：４：４又はＧＢＲ４：４：４等の）高解像度の非ＹＵＶクロマ・サンプリング・フォーマットのフレームにアンパックする。
【０１３５】
また、説明した手法は、通常はグレー・スケール・ビデオ・コンテンツ又はモノクローム・ビデオ・コンテンツのために使用される４：０：０フォーマットへの４：４：４フォーマット、４：２：２フォーマット、又は４：２：０フォーマットのビデオ・コンテンツのフレーム・パッキングのために使用することができる。４：４：４フォーマット、４：２：２フォーマット、又は４：２：０フォーマットのフレームからのクロマ情報が、４：０：０フォーマットの１以上の追加フレーム又は補助フレームのプライマリ成分にパックされ得る。
【０１３６】
Ｆ．フレーム・パッキング／アンパッキングのための一般化された技術
図１２は、フレーム・パッキングのための一般化された技術（１２００）を示している。例えば、図４を参照して説明したフレーム・パッカを実装するコンピューティング・デバイスは、技術（１２００）を実行することができる。
【０１３７】
デバイスは、高解像度クロマ・サンプリング・フォーマットの１以上のフレームを、低解像度クロマ・サンプリング・フォーマットの１以上のフレームにパックする（１２１０）。例えば、デバイスは、４：４：４フォーマット（例えば、ＹＵＶ４：４：４フォーマット）の１以上のフレームを、４：２：０フォーマット（例えば、ＹＵＶ４：２：０フォーマット）の１以上のフレームにパックする。あるいは、デバイスは、４：２：２フォーマット（例えば、ＹＵＶ４：２：２フォーマット）の１以上のフレームを、４：２：０フォーマット（例えば、ＹＵＶ４：２：０フォーマット）の１以上のフレームにパックする。あるいは、デバイスは、４：４：４フォーマット（例えば、ＹＵＶ４：４：４フォーマット）の１以上のフレームを、４：２：２フォーマット（例えば、ＹＵＶ４：２：２フォーマット）の１以上のフレームにパックする。
【０１３８】
ＹＵＶフォーマットでは、デバイスは、フレーム・パッキングの後、高解像度クロマ・サンプリング・フォーマットの１以上のフレームのクロマ成分の隣接サンプル値間の幾何学的対応を維持するように、フレーム・パッキング（１２１０）を実行することができる。例えば、そのようなサンプル値は、低解像度クロマ・サンプリング・フォーマットの１以上のフレームのルマ成分及びクロマ成分の隣接サンプル及び／又は配置された部分として維持される。後の符号化は、そのような幾何学的対応を利用することができる。
【０１３９】
いくつかのフレーム・パッキング手法において、デバイスは、低解像度クロマ・サンプリング・フォーマットの１以上のフレームの一部として、高解像度クロマ・サンプリング・フォーマットの１以上のフレームの低クロマ解像度バージョンを組み込むことができる。したがって、低解像度クロマ・サンプリング・フォーマットの１以上のフレームの一部は、高解像度クロマ・サンプリング・フォーマットの１以上のフレームの低クロマ解像度バージョンを表す。低解像度クロマ・サンプリング・フォーマットの１以上のフレームの残りの部分は、高解像度クロマ・サンプリング・フォーマットの１以上のフレームからの残存するクロマ情報を表す。他のフレーム・パッキング手法において、高解像度クロマ・サンプリング・フォーマットの１以上のフレームの空間分割に従って、デバイスは、高解像度クロマ・サンプリング・フォーマットの１以上のフレームのクロマ成分のサンプル値を、低解像度クロマ・サンプリング・フォーマットの１以上のフレームのルマ成分及びクロマ成分に割り当てる。
【０１４０】
フレーム・パッキング中、高解像度クロマ・サンプリング・フォーマットの１以上のフレームのクロマ成分のサンプル値は、フィルタリングされ得、フィルタリングされたサンプル値は、低解像度クロマ・サンプリング・フォーマットの１以上のフレームのクロマ成分の諸部分に割り当てられる。いくつかの実施例において、高解像度クロマ・サンプリング・フォーマットの１以上のフレームのクロマ成分のサンプル値は、より低いビット深度（例えば、１サンプルにつき８ビット）を有し、フィルタリングされたサンプル値は、より高いビット深度での符号化のために、より高いビット深度（例えば、１サンプルにつき１０ビット）を有する。
【０１４１】
次いで、デバイスは、低解像度クロマ・サンプリング・フォーマットの１以上のフレームを符号化することができる（１２２０）。代替的に、異なるデバイスが符号化（１２２０）を実行してもよい。１以上のデバイスは、フレームごとに、又は他の単位で、技術（１２００）を繰り返すことができる。
【０１４２】
デバイスは、フレーム・パッキング／アンパッキングに関するメタデータをシグナリングすることができる。例えば、デバイスは、フレーム・パッキング／アンパッキングが使用されるか使用されないかを示すメタデータをシグナリングする。あるいは、デバイスは、高解像度クロマ・サンプリング・フォーマットの１以上のフレームのクロマ成分のサンプル値が、フレーム・パッキング中にフィルタリングされ、後処理の一部としてフィルタリングされるべきであるというインジケーションをシグナリングする。フレーム・パッキング／アンパッキングに関するメタデータは、付加拡張情報（ＳＥＩ）メッセージの一部として、又は何らかの他のタイプのメタデータとしてシグナリングされ得る。
【０１４３】
図１３は、フレーム・アンパッキングのための一般化された技術（１３００）を示している。例えば、図５を参照して説明したフレーム・アンパッカを実装するコンピューティング・デバイスは、技術（１３００）を実行することができる。
【０１４４】
フレーム・アンパッキング自体の前に、デバイスは、低解像度クロマ・サンプリング・フォーマットの１以上のフレームを復号化することができる（１３１０）。代替的に、異なるデバイスが復号化（１３１０）を実行してもよい。
【０１４５】
デバイスは、低解像度クロマ・サンプリング・フォーマットの１以上のフレームを、高解像度クロマ・サンプリング・フォーマットの１以上のフレームにアンパックする（１３２０）。例えば、デバイスは、４：２：０フォーマット（例えば、ＹＵＶ４：２：０フォーマット）の１以上のフレームを、４：４：４フォーマット（例えば、ＹＵＶ４：４：４フォーマット）の１以上のフレームにアンパックする。あるいは、デバイスは、４：２：０フォーマット（例えば、ＹＵＶ４：２：０フォーマット）の１以上のフレームを、４：２：２フォーマット（例えば、ＹＵＶ４：２：２フォーマット）の１以上のフレームにアンパックする。あるいは、デバイスは、４：２：２フォーマット（例えば、ＹＵＶ４：２：２フォーマット）の１以上のフレームを、４：４：４フォーマット（例えば、ＹＵＶ４：４：４フォーマット）の１以上のフレームにアンパックする。
【０１４６】
高解像度クロマ・サンプリング・フォーマットの１以上のフレームの低クロマ解像度バージョンが、低解像度クロマ・サンプリング・フォーマットの１以上のフレームの一部として組み込まれるとき、デバイスは、表示のためのオプションを有する。高解像度クロマ・サンプリング・フォーマットの１以上のフレームの低クロマ解像度バージョンを表す低解像度クロマ・サンプリング・フォーマットの１以上のフレームの一部は、出力及び表示のために再構築され得る。低解像度クロマ・サンプリング・フォーマットの１以上のフレームの残りの部分は、高解像度クロマ・サンプリング・フォーマットの１以上のフレームからの残存するクロマ情報を表し、フレーム・アンパッキングの一部として使用され得る。他のフレーム・アンパッキング手法において、高解像度クロマ・サンプリング・フォーマットの１以上のフレームの空間分割の逆を実行するために、デバイスは、低解像度クロマ・サンプリング・フォーマットの１以上のフレームのルマ成分及びクロマ成分のサンプル値を、高解像度クロマ・サンプリング・フォーマットの１以上のフレームのクロマ成分に割り当てる。
【０１４７】
フレーム・アンパッキング中、高解像度クロマ・サンプリング・フォーマットの１以上のフレームのクロマ成分のサンプル値は、後処理の一部としてフィルタリングされ得る。いくつかの実施例において、高解像度クロマ・サンプリング・フォーマットの１以上のフレームのクロマ成分の少なくともいくつかのサンプル値は、後処理フィルタリングの前に、より高いビット深度（例えば、１サンプルにつき１０ビット）を有し、そのようなサンプル値は、後処理フィルタリングの後、より低いビット深度（例えば、１サンプルにつき８ビット）を有する。
【０１４８】
デバイスはまた、フレーム・パッキング／アンパッキングに関するメタデータを受信することができる。例えば、デバイスは、フレーム・パッキング／アンパッキングが使用されるか使用されないかを示すメタデータを受信する。あるいは、デバイスは、高解像度クロマ・サンプリング・フォーマットの１以上のフレームのクロマ成分のサンプル値が、フレーム・パッキング中にフィルタリングされ、後処理の一部としてフィルタリングされるべきであるというインジケーションを受信する。フレーム・パッキング／アンパッキングに関するメタデータは、付加拡張情報（ＳＥＩ）メッセージの一部として、又は何らかの他のタイプのメタデータとしてシグナリングされ得る。
【０１４９】
１以上のデバイスは、フレームごとに、又は他の単位で、技術（１３００）を繰り返すことができる。
【０１５０】
開示した本発明の原理を適用することができる多くの可能な実施形態の観点から、例示した実施形態は、本発明の好ましい例に過ぎないことを認識すべきであり、本発明の範囲を限定するものとして解釈すべきではない。むしろ、本発明の範囲は、請求項により定められる。したがって、我々は、請求項の範囲及び精神に含まれる全てを、我々の発明として特許請求する。
【図１】
2015534778.tif 000034
【図２ａ】
2015534778.tif 000035
【図２ｂ】
2015534778.tif 000036
【図３】
2015534778.tif 000037
【図４】
2015534778.tif 000038
【図５】
2015534778.tif 000039
【図６】
2015534778.tif 000040
【図７】
2015534778.tif 000041
【図８】
2015534778.tif 000042
【図９】
2015534778.tif 000043
【図１０】
2015534778.tif 000044
【図１１】
2015534778.tif 000045
【図１２】
2015534778.tif 000046
【図１３】
2015534778.tif 000047
【国際調査報告】
2015534778.tif 000048
2015534778.tif 000049
2015534778.tif 000050
2015534778.tif 000051