(57)【要約】【課題】  ハイブリッドビデオＣＯＤＥＣビットストリーム間で符号変換するための方法とシステムを提供する。【解決手段】  本発明によれば、元のビットストリーム（図２の４）を復号し／解凍することより、少数の資源を使用するハイブリッドビデオコーデックにより符号化されたビットストリームと、第２の形式（図２の６、７、８）間の符号変換を実行する方法及び装置（図１）が提供される。特殊な実施例によれば、可能で有れば、入力ビットストリームにおける暗号化されたパラメータを直接に、出力ビットストリームへの特定の規則に従って生成された、データを構成する暗号化されたパラメータに変換するための、標準ビデオ圧縮アルゴリズム類似性を利用することを可能とする。
2005533468.tif 000002
【特許請求の範囲】
【請求項１】
第一のハイブリッドビデオコーデックから符号化されたビデオビットストリームを、第二ハイブリッドビデオコーデックに対して符号化されたビットストリームへと処理する装置であり、該装置は、
第一のハイブリッドビデオコーデックからの入力ビデオビットストリームを復号する可変長デコーダであって、該可変長デコーダは復号されたビットストリームを出力するように適合されており、
復号されたシンボルの意味変換を実行するユニットであって、前記意味変換は、復号されたビットストリームの部分を処理して復号されたビットストリームを、第二のハイブリッドビデオコーデックと互換性があるように適合させるユニット、及び、
出力ビットストリームを前記ユニットの出力から第二のハイブリッドビデオコーデックへと暗号化する可変長エンコーダと、
を備えることを特徴とする装置。
【請求項２】
第一のビデオコーデックはベースラインＨ．２６３であり、第二のビデオコーデックはＭＰＥＧ−４であり、前記ユニットにおける意味変換が、一つ又は複数の所定のパラメータに基づいた複数のイントラマクロブロック計数の逆イントラＡＣ予測を備える、ことを特徴とする請求項１に記載の装置。
【請求項３】
イントラＡＣ予測を実行する一つ又は複数の所定のパラメータは、マクロブロック基底によりマクロブロック上に提供され、処理はマクロブロック基底によりマクロブロック上に提供される、ことを特徴とする請求項２に記載の装置。
【請求項４】
第一のハイブリッドビデオコーデックから、第二のハイブリッドビデオコーデックへ符号化されたビットストリームへ、ビデオビットストリームを処理する装置であって、
複数のマクロブロック間のマクロブロック基底による、マクロブロック上の第一のハイブリッドコーデックからの複数のマクロブロック、を備える前記入力ビットストリームを復号するステップと、
複数のマクロブロックの入力フレームサイズが第二のハイブリッドコーデックにより、サポートするかどうかを決定するステップと、
前記入力フレームサイズが前記第二のハイブリッドコーデックにより、サポートされていないならば、前記第２のハイブリッドコーデックによりサポートされる前記入力フレームサイズを変換するステップと、
一つ又はより多くの複数の入力動きベクタが、第二のハイブリッドコーデックにサポートされるかどうかを決定するステップと、
前記一つ又はそれ以上の入力動きベクタが、第二のハイブリッドコーデックによりサポートされていない場合、第二のハイブリッドコーデックによりサポートされる一つ又はそれ以上の入力動きベクタを変換し、結果として得られる符号変換化されたデータを形成するステップ、及び、
マクロブロック基底により、マクロブロック上の複数のマクロブロックの符号変換化されたデータを暗号化するステップ、
とを備えることを特徴とする装置。
【請求項５】
第一のビデオコーデックは単純プロファイルＭＰＥＧ−４であり、第二のビデオコーデックはベースラインＨ．２６３である、ことを特徴とする請求項４に記載の装置。
【請求項６】
有効出力フレームサイズでない前記入力ビデオフレームは、出力フレームサイズを設定することにより、前記入力フレームサイズより大きい最小有効出力フレームサイズに変換され、
イントラフレームに対しては、前記出力フレームにおける追加のマクロブロックを固定値として暗号化するステップと、
イントラフレームに対しては、前記出力フレームにおける追加のマクロブロックを「符号化されていない」マクロブロックとして暗号化するステップと、
を備えることを特徴とする請求項４に記載の装置。
【請求項７】
前記出力フレームサイズを、前記入力フレームサイズより小さい最大有効出力フレームサイズに設定し、出力フレームにおいて適合しない前記入力フレームから、マクロブロックを切り捨てることにより、有効出力フレームサイズでない前記インプットビデオフレームが変換される、ことを特徴とする請求項４に記載の装置。
【請求項８】
動きベクタを複製することにより、多重動きベクタを有する前記入力マクロブロックが多数の出力動きベクタに変換される、ことを特徴とする請求項４に記載の装置。
【請求項９】
算術平均又は中央値をとる工程を含む一つ又はそれ以上の工程により、前記多重動きベクタを有する前記入力マクロブロックが、少数の出力動きベクタに変換される、ことを特徴とする請求項４に記載の装置。
【請求項１０】
前記出力コーデック参照フレームと異なる参照フレームを参照する、前記入力動きベクタがスケーリングされ、前記出力動きベクタを形成する、ことを特徴とする請求項４に記載の装置。
【請求項１１】
前記出力コーデックによりサポートされる解像度より高い解像度を使用する前記入力動きベクタが、最も近い有効出力動きベクタに向けられる、ことを特徴とする請求項４に記載の装置。
【請求項１２】
有効出力動きベクタの範囲外の前記入力動きベクタは、成分を切り捨てることにより前記最大許容出力値に変換される、ことを特徴とする請求項４に記載の装置。
【請求項１３】
前記入力ベクタと同じ方向を有する前記最大有効出力ベクタを選択することにより、有効出力動きベクタの範囲外の前記入力動きベクタが変換されることを特徴とする請求項４に記載の装置。
【請求項１４】
前記決定し、変換し、決定し、変換するステップは、
計算機符号により提供される、ことを特徴とする請求項４に記載の装置。
【請求項１５】
算術平均又は中央値をとることを含む一つ又はそれ以上の工程により、前記４ベクタの平均をとり、４つの動きブロックを有するＭＰＥＧ−４マクロブロックが、単一の動きベクタに変換される、ことを特徴とする請求項９に記載の装置。
【請求項１６】
前記成分を切り捨てることにより、有効なＨ．２６３動きベクタの範囲外にある前記ＭＰＥＧ−４動きベクタが、前記最大許容Ｈ．２６３値に変換される、ことを特徴とする請求項１２に記載の装置。
【請求項１７】
ＭＰＥＧ−４ベクタと同じ方向を有する、前記有効な最大Ｈ．２６３ベクタを選択することにより、有効なＨ．２６３動きベクタの範囲外にある前記ＭＰＥＧ−４動きベクタが変換される、ことを特徴とする請求項１３に記載の装置。
【請求項１８】
前記ベクタの前記成分を切り捨てることにより、前記ビデオフレーム外を指すＭＰＥＧ−４動きベクタが、フレームエッジに変換される、ことを特徴とする請求項１２に記載の装置。
【請求項１９】
第一のハイブリッドコーデック及び第二のハイブリッドコーデックが、同じ空間の変換、同じ参照フレーム及び量子化を有し、有効な出力動きベクタである入力動きベクタを伴う同じインターマクロブロックは、
入力ビットストリームマクロブロックを復号するステップと、
前記複数のマクロブロックの入力フレームサイズが、前記第二のハイブリッドコーデックによりサポートされるか否かを判定するステップと、
前記入力フレームサイズが前記第二のハイブリッドコーデックによりサポートされないとき、前記入力フレームサイズを前記第２のハイブリッドコーデックによりサポートされるように変換するステップと、
前記復号された入力ビットストリームマクロブロックからの、一つ又はそれ以上の複数の量子化された変換係数を、ＶＬＣ暗号化する工程を実行するステップと、
前記復号された入力ビットストリームマクロブロックからの、一つ又はそれ以上の前記マクロブロックピクセル値を使用して、エンコーダ参照フレームを更新するステップと、
を備える方法により符号変換される、ことを特徴とする請求項４に記載の装置。
【請求項２０】
所定の周波数で最適化されたモードをスキップして、少なくとも判定し、変換し、実行する、符号変換の工程においてドリフトが増えないようにするステップ、をさらに備えることを特徴とする請求項１９の装置。
【請求項２１】
前記第一のビデオコーデックは単純プロファイルＭＰＥＧ−４と、前記第二のビデオコーデックはベースラインＨ．２６３である、ことを特徴とする請求項１９に記載の装置。
【請求項２２】
前記ユニットは、前記選択された入力ＰフレームをＩフレームに変換するように更に適合されている、ことを特徴とする請求項４に記載の装置。
【請求項２３】
前記復号されたビットストリームから、ＭＰＥＧ−４「符号化されていない」フレームを除去するステップを更に備える、ことを特徴とする請求項４に記載の装置。
【請求項２４】
一つ又はそれ以上のＭＰＥＧ−４「符号化されていない」フレームを、「符号化されていない」マクロブロックとして符号化された、各マクロブロックを有するＨ．２６３Ｐフレームに変換するステップを更に備える、ことを特徴とする請求項４に記載の装置。
【請求項２５】
動きベクタの範囲が、暗号化されたマクロブロックの所定の近傍内に備えられたエンコーダ又はトランスコーダにおける、メモリの使用量の削減の為に提供される方法であって、該方法は、
動き補償のための参照フレーム内の、一つ又はそれ以上のピクセルを判定するステップ、
暗号化される前記マクロブロックの、前記所定の近傍内に備えられる、前記一つ又はそれ以上のピクセル内に、動きベクタの前記範囲が提供される間に、前記マクロブロックを暗号化するステップ、及び、
バッファが他の暗号化されたマクロブロックを維持する間に、暗号化されたマクロブロックをバッファにストアするステップと、
を備えることを特徴とする方法。
【請求項２６】
前記バッファは、符号化されていない、如何なるマクロブロックをも有さない、ことを特徴とする請求項２５に記載の装置。
【請求項２７】
前記エンコーダ又はトランスコーダは、ベースラインＨ．２６３エンコーダ又はトランスコーダのためである、ことを特徴とする、該方法は、
単一の参照フレーム及びバッファのために、一つのフレーム列プラス１のマクロブロックを示す多数のマクロブロックをストアするステップと、
前記バッファにおける最も古いマクロブロックを参照フレームに書くステップと、及び
前記バッファにおける前記最も古いマクロブロックを、暗号化されたマクロブロックで置き換えるステップと、
を備えることを特徴とする請求項２５に記載の方法。
【発明の詳細な説明】
【背景技術】
【０００１】
本出願は、参考文献としてここに挙げる、２００２年７月１７日付米国特許出願中  第６０/３９６８９１号、２００２年７月１７日付  第６０／３９６６８９号、２００２年１０月１０日付  第６０／４１７８３１号、２００２年１２月４日付  第６０／４３１０５４号に先行する。
【０００２】
本願発明は一般的に遠隔通信技術に関する。より詳細には、本発明はハイブリッドビデオコーデックビットストリーム間の符号変換のための方法とシステムを提供する。実施例において、本発明は遠隔通信ネットワーク間環境に応用されている。しかし、本発明はより大きな応用範囲を有していると認識されるであろう。
【０００３】
時代の推移とともに、遠隔通信技術もまた改善されてきた。聴覚の符号化及び通信リンク上のビデオ信号に対して、幾つかの標準がある。これらの標準は端末が、標準の同じセットをサポートする他の端末と中間操作をすることを許す。共通の標準をサポートしない端末は追加の装置、トランスコーダが装置間に挿入される場合に中間操作のみをすることができる。トランスコーダは符号化された信号を一つの標準から他の標準へと翻訳する。
【０００４】
Ｉフレームは静的なイメージとして符号化され、他のフレームとは別個に復号され得る。
【０００５】
Ｐフレームはフレームにおける類似性を除くために先行するＩ又はＰと異なるように符号化される。
【０００６】
ＭＰＥＧ−４のようないくつかのハイブリッドビデオコーデック標準は、フレームヘッダーの後に符号化されたデータを含まない「符号化されていない」フレームも又、サポートする。標準のある例の詳細は、以下にもっと詳細に提供される。
【０００７】
Ｈ．２６１、Ｈ．２６３、Ｈ．２６４のような、ある標準及びＭＰＥＧ−４ビデオコーデックは、両方とも、１６画素（ピクセル）マクロブロックにより、ソースビデオフレームを１６に分解する。Ｈ．２６１、Ｈ．２６３及びＭＰＥＧ−４ビデオコーデックはそれぞれのマクロブロックをさらに８ピクセルブロックにより６個の８に分割する。ブロックの４つはマクロブロックに対する１６ピクセル輝度値により１６に対応し、残りの２つのブロックはマクロブロックのサブ抽出された色差要素に対応する。Ｈ．２６４ビデオコーデックは４個のピクセルブロックにより各マクロブロックを２４個の４に、輝度のために１６に、部分抽出された色差に対する８に分割する。
【０００８】
ハイブリッドビデオコーデックは、すべて一般に同様の技術を使用し、ソースマクロブロックを暗号化されたマクロブロックに変換する。各ブロックはまず、空間的な変換をとることにより、ついで、変換係数を量子化することにより暗号化される。このことを変換暗号化と呼ぶ。Ｈ．２６１、Ｈ．２６３及びＭＰＥＧ−４ビデオコーデックはこの段階で離散コサイン変換（ＤＣＴ）を使用する。Ｈ．２６４ビデオコーデックは整数変換を使用する。
【０００９】
非ゼロ量子化変換係数はランレングス及び可変長符号化を使用してさらに暗号化される。この第２段階はＶＬＣ（可変長符号化）暗号化と呼ばれるであろう。逆変換はそれぞれＶＬＣ復号化及び変換復号化と呼ばれる。マクロブロックは３つの方法で符号化される。
【００１０】
「イントラコード化された」マクロブロックは、符号化されたソースフレームから直接コピーされたピクセル値を有する。
【００１１】
「インターコード化された」マクロブロックは、現在のソースフレームにおけるピクセル値と参照フレームにおけるピクセル値との間から形成されるピクセル値を有する。
参照フレームに対する値は、以前に暗号化されたフレームに対して暗号化されたデータを復号化することにより導かれる。違いを計算するときに使用される参照フレームのエリアは、現在のフレームにおけるマクロブロック及び参照フレームにおけるベストマッチとの間の置換を特定する動きベクタにより制御される。動きベクタは、中間フレームに対する量子化された係数と共に送信される。ピクセル値における違いが十分小さいならば、動きベクタのみが送信される。
【００１２】
一般的に、全てのハイブリッドビデオコーデックは、マクロブロックあたりの動きベクタの数、前記ベクタの解像度、前記ベクタの範囲、及び、前記ベクタが参照フレームの外側の点に向けられるか否かなどを与える、動きベクタの形式にしばしば相違がある。動きベクタの評価の過程は「動き評価」という用語で呼ばれる。ハイブリッドビデオエンコーダの最も計算が集中する部分の一つである。
【００１３】
「符号化されていない」マクロブロックは、以前のフレームから本質的に変わっていないマクロブロックであり、いかなる動きも係数データもこれらマクロブロックのために送られない。
【００１４】
与えられたフレームに含まれるマクロブロックのタイプは、フレームタイプに依存する。このアルゴリズムへの重要なフレームタイプに対して、許容されるマクロブロックタイプは以下の通りである。
【００１５】
Iフレームは内部コードマクロブロックのみを含んでいる。
【００１６】
Ｐフレームはマクロブロック内部、マクロブロック間及び符号化されていないマクロブロックを含むことができる。
【００１７】
マクロブロックに対する暗号化されたデータを送信するに先だって、損失の少ない可変長符号化（ＶＬＣ暗号化）を使用してさらに圧縮される。
【００１８】
他にハイブリッドビデオコ−デックが異なるのは、ビデオフレームサイズに対するサポートである。Ｈ．２６１及びベースラインＨ．２６３は、フレームサイズの限られたセットをサポートするのみであるが、ＭＰＥＧ−４及びＨ．２６４は幅と高さは１６を乗じた制限を伴って、任意のフレームサイズをサポートする。ハイブリッドビデオコーデックのタイプに依存して、他の限定もあり得る。
【００１９】
符号変換化への従来のアプローチは、タンデム符号変換として知られている。タンデムトランスコーダは、しばしば受信される符号化された信号を復号し、生（圧縮されていない）フォーマットにおいてデータを生産し、所望のターゲット標準に従い、生データを再び暗号化し、圧縮された信号を生産する。単純であるが、タンデムビデオトランスコーダは「ブルートフォース」アプローチと考えられ、計算機資源のかなりの量を消費する。タンデム符号変換化の他の代替は、入力ビットストリームにおける動きベクタにおける情報の使用を含み、出力されたビットストリームに対する動きベクタを評価する。このような代替アプローチも又、限定を有し、又、ブルートフォース技法と考えられる。
【００２０】
上述したことから、有効で対費用効果のある方法で、異なる遠隔通信形式間で変換する方法を改善することが望ましい。
【発明の開示】
【発明が解決しようとする課題】
【００２１】
本発明によれば、遠隔通信のための技術が提供される。より詳細には、本発明はハイブリッドビデオコーデックビットストリーム間で符号変換化するための方法とシステムを提供する。実施例では、本発明は遠隔通信ネットワーク環境に適用される。しかし、本発明はより広い応用範囲を有することが認識されるだろう。
【課題を解決するための手段】
【００２２】
ハイブリッドコーデックはデータ圧縮への２つのアプローチ、すなわち、ソース符号化とチャネル符号化を利用する圧縮スキームである。ソース符号化はデータ特定的でありデータの性質を排除する。ビデオの場合、ソース符号化は変換則に従ってピクセルの基本成分を抽出する変換（例えば、離散コサイン変換或いはウェーブレット変換）のような技術に言及する。結果としてもたらされる変換係数はデータバンド幅を減少するために一般的にされるように量子化される（これは圧縮の損失部分である）。一方、チャネル符号化は、データ平均と関係のないデータの統計的性質を使用することにおいてソースとは独立である。チャネル符号化の例として、ハフマン及び算術符号化のような統計的符号化スキームが挙げられる。ビデオ符号化は、データの統計的発生に基づくシンボル（例えば「０」と「１」の文字列）により送信されるデータを置き換える、ハフマン符号化を一般的に使用する。より頻度の高いデータは、より短い文字列により表される。したがって、ビットストリームを全面的に表すために使用されるビットの量は減少する。
【００２３】
チャネル符号化の別の例は、ストリームのデータ成分の繰り返しを利用するランレングス暗号化である。したがって、Ｎ個の連続的なデータ成分を送信する代わりに、成分とその繰り返し数が送信される。このアイデアは、変換された行列における離散コサイン変換の係数が、量子化後ジグザグな方法でスキャンされるビデオ符号化において利用される。このことは、変換行列の低い右の部分に位置している高周波数成分が（量子化後）一般的に零であることを意味し、行列の左上から右下へジグザグな方法でスキャンされる場合、繰り返される零の文字列が現れる。ランレングス暗号化は、これらの繰り返される零を表すために、可変長符号化により要求されるビット量を減少させる。上述したソース及びチャネル技術は、画像とビデオ符号化の両方に適用される。
【００２４】
ハイブリッドビデオコーデックにおいて使用される付加的な技術は、動き評価及び補償である。動き評価及び補償は連続する時間に関する冗長さを取り除く。動き評価及び補償における２つの主なアプローチにより達成される。まず、（「変化」を定義するある閾値内で）変化しないピクセルブロックは、ピクセルブロックが２つの連続的なフレーム間でどのように動くかを示すのに、動きベクタが使用されることと同じである。第二に、問題のブロックと、先行するフレームにおける最も近接してマッチするブロックの２つのブロック間の、位置の変化を全て示すために要求される動きベクタに加えて、ストレートな離散コサイン変換、量子化、ジグザグ、前記２つのブロック間の差分操作列を実行することによる、ピクセルブロック上のＶＬＣ暗号化により要求されるビットの量を減少させる事に、予測符号化は使用される。このことから、問題となるブロックを表すために使用されるビットの量が、かなり減少される。この予測符号化アプローチは、一つ又は複数の予測フレーム（後ろ向き、又は前向きに多数繰り返される過程）を考慮する多くのバリエーションを有する。まさに、予測符号化から生じる誤差は累積でき、重要な歪みの開始の前に、イントラ符号化（予測モードは考慮されず、現在のフレームにおけるピクセルのみが考慮される）サイクルは、ブロック上で実行され、そのことにより、暗号化され、それまで累積された誤差を除去する。
【００２５】
本発明の実施例によれば、スマートな技術を使用し、２つのハイブリッドビデオコーデック間で変換コーディングを実行する技術が提供される。変換符号化における情報はハイブリッドビデオコーデックによる一般的な符号化原理の類似の開発によっている。そしてビットストリームがビデオ列の暗号化を含む事実は、ビットストリームの対象を他のハイブリッドビデオ符号化標準とする過程を大きく単純化する情報を含み得る。それと比較して、タンデムビデオ変換符号化は入力ビットストリームを復号化してピクセル表現（ルミナンス及びクロミナンス表現）であるＹＵＶ画像表現にし、ピクセルを目標ビデオ標準に再暗号化する。ソース符号化又はチャネル符号化（ピクセル冗長性、時間に関連した冗長性又は動き情報）に関するビットストリーム中の全ての情報は使用されない。
【００２６】
他の実施例によれば、現在の発明は、復号化された入力ビットストリームから利用されるパラメータと出力ビットストリームを暗号化することを要求されるパラメータとの間の関係を利用することによりトランスコーダの計算複雑性を減少させることも可能である。ビットストリームを符号変換するために要求されるコンピュータサイクルの数を減少させることにより及び／又はビットストリームを符号変換するために要求されるメモリを減少させることにより複雑性を減少することが可能である。
【００２７】
トランスコーダへの出力コーデックが入力コーデックの全ての特徴（動きベクタ形式、フレームサイズ及び空間変換の型）をサポートするとき、装置は出力コーデックは入力ビットストリーム、意味的なマッピングモジュールと出力ビットストリームに対するＶＬＣエンコーダに対するＶＬＣデコーダ、意味マッピングモジュールと出力ビットストリームのためのＶＬＣエンコーダを含む。ＶＬＣデコーダはビット文字列文法を復号する。意味マッピングモジュールは第一コーデックの復号されたシンボルを、第二コーデック形式における暗号に適したシンボルへ変換する。文法成分は暗号化され、出力ビット文字列を形成する。
【００２８】
トランスコーダへの出力コーデックは入力コーデックの全ての特徴（動きベクタ形式、フレームサイズと空間の変換のタイプ）をサポートしないとき、装置は入力コーデック、入力コーデックシンボルを、有効出力コーデック値へ変換するための、モジュール及び出力ビット文字列を生成するための暗号化モジュールを含む。
【００２９】
本発明は入力フレームサイズを、有効な出力コーデックフレームサイズへ変換するための方法を提供する。一つの方法は入力フレームサイズより大きい出力フレームを作成し、一定の色で出力フレームの特別の領域を満たすことである。２番目の方法は、出力フレームサイズが入力フレームサイズより小さくなるようにし、入力フレームを切り捨て出力フレームを創造することである。
【００３０】
本発明は入力モーションベクタを変換し出力モーションベクタを評価する方法を提供する。
【００３１】
もし入力コーデックがマクロブロック当たりの多重動きベクタをサポートし、出力コーデックがマクロブロック当たりの同じ数のモーションベクタをサポートしないならば、入力ベクタの数は、利用可能な出力の構成にマッチするように変換される。もし、出力コーデックが入力動きベクタの数よりもマクロブロック当たりの、より多くの動きベクタをサポートするならば、入力ベクタは複製され、有効な出力を形成する。例えば、マクロブロック当たりの二つの動きベクタは、入力ベクタのそれぞれを複製することにより、マクロブロック当たり四つの動きベクタに変換され得る。逆に、もし出力コーデックが入力コーデックより少ない、マクロブロック当たりの動きベクタをサポートするならば、入力ベクタは結合されて、出力ベクタを形成する。
【００３２】
もし、入力コーデックが最も最近の復号化されたフレームでない参照フレームを備えるＰ個のフレームをサポートするならば、入力動きベクタはスケーリングされて動きベクタは、最も最近の復号化されたフレームを参照するようにスケーリングされる必要がある。
【００３３】
もし、出力コーデックにおける動きベクタの解像度が入力コーデックにおいて動きベクタの解像度より少なければ、入力動きベクタ成分は最近の有効な出力動きベクタ成分値に変換される。例えば、もし入力コーデックが１／４のピクセル動き補償及び出力コーデックは１／２のピクセル動き補償をサポートし、いかなる１／４の入力におけるピクセル動きベクタも、１／２に最も近いピクセル値に変換される。
【００３４】
もし、出力コーデックにおける動きベクタに対して許容される範囲が、入力コーデックにおける動きベクタの許容される範囲より少なければ、復号化された或いは計算された動きベクタがチェックされたか、もし必要ならば、許容範囲に落ちるように調節される。
【００３５】
装置は、有効な出力動きベクタである入力動きベクタである、マクロブロックに対する最適化された動きモードを有する。この経路は入力及び出力コーデックは同じ空間、同じ参照フレーム及び同じ量子の変換を使用しなければならない追加の制限を有する。このモードにおいて、量子化された変換係数及びそれら逆変換されたピクセル値は変換し、量子化し、及びトランスコーダの暗号部分において逆量子化する必要を除去し、トランスコーダの暗号化された部分から暗号化された部分に直接発送される。
【００３６】
本発明はＰフレームをＩフレームに変換させるための方法を提供する。使用された方法は出力フレームタイプをＩフレームに設定し、入力ビットストリームにおけるマクロブロックに関し、イントラマクロブロックとして各マクロブロックを暗号化するためのものである。
【００３７】
本発明は「符号化されていない」フレームをＰフレームに変換し、符合変換化されたビットストリームからＰフレームを捨てるための方法を提供する。
【００３８】
本発明の実施例はＭＰＥＧ−４（単純プロファイル）及びＨ．２６３（ベースライン）ビデオコーデック間の符号化変換のための方法及び装置である。
【００３９】
代わりの特殊な実施例においてさえも、本発明は動きベクタの幅が、暗号化されるマクロブロックの所定の近傍内に限られて提供される、エンコーダ又はトランスコーダにおいてメモリを削減する使用のための方法を提供する。方法は動き補償のための参照フレーム内の一つ又は多くのピクセルを決定することと、動きベクタの幅が、マクロブロックが暗号化される所定の近傍内で提供された、一つ又は多くのピクセル内で提供される、インターマクロブロックを暗号化することを含む。方法は、暗号化されたマクロブロックを、バッファが他の暗号化されたマクロブロックを維持する間、バッファにストアすることを含む。
【００４０】
我々の知る限り新規性を有する、本発明の対象、特徴及び利点は追加された請求項において特に詳細に説明される。本発明は、組織及び操作方法の両方に関して、更なる対象と利点を伴い、次の図面の説明を参照して最もよく理解されるだろう。
【発明を実施するための最良の形態】
【００４１】
本発明によれば、遠隔通信の技術が提供される。より詳細には、本発明はハイブリッドビデオＣＯＤＥＣビットストリーム間の符号変換する方法及びシステムを提供する。単に実施例によれば、本発明は遠隔通信ネットワーク環境に適用される。しかし、本発明はより広い適用範囲を有すると認識されるだろう。
【００４２】
本発明の方法及び装置が以下に詳細に述べられる。以下の記述において、説明のため、多くの特殊な詳細な説明が本発明の完全な理解を提供するために述べられる。単純なプロファイルＭＰＥＧ−４とベースラインＨ．２６３の場合は、例示された目的と例のために使用される。ここで述べられた方法は、一般的でハイブリッドビデオコーデックの如何なる対の間の符号変換にも適用される。当業者は他のステップ、構成及び配置が、本発明の精神と範囲から離れること無しに使用可能であることを認識するだろう。
【００４３】
図１は第一のコーデック（入力ビットストリーム）が本発明の実施例に従って、第二のコーデック（出力ビットストリーム）の特徴の部分集合をサポートする、２つのコーデック間の符号変換のための選択された実施例のブロック図である。この図は一例に過ぎず、ここに記載する請求項の範囲を不当に制限すべきものではない。当業者は多くのバリエーション、代替物、及び修正があることを認識するであろう。入力ビットストリームは可変長デコーダ１により復号される。第一のビデオコーデックにおける復号されたシンボルの意味と、第二のビデオコーデックにおける意味の相違は、意味変換モジュール２により解像度される。係数は、可変長で符号化され、出力ビットストリーム３を形成する。ステージ１の出力はマクロブロックタイプ、動きベクタ及び変換係数のようなコーデックのリストである。第二の出力は、シンボルを第二のコーデックに調和させる為に要求される、あらゆる修正を伴う先のリストである。ステージ３の出力は、第二のコーデック標準において符号化されたビットストリームである。
【００４４】
図２は、本発明の実施例によれば、ベースラインＨ．２６３ビットストリームからＭＰＥＧ−４ビットストリームを符号変換するために選択された、実施例のブロック図である。この図は単に一例でありここに記載された、請求項の範囲を不当に制限されるべきでない。当業者は多くのバリエーション、代替物、及び修正することを認識するだろう。入力ビットストリームは可変長デコーダ４により復号化される。もし、マクロブロックはイントラ符号化マクロブロックであれば、復号化された係数は逆イントラ予測６である。ＤＣ  ＤＣＴ係数のイントラ予測は必須のものである。トランスコーダは選択が随意のイントラＡＣ計数予測を使用するかどうかを選択してもよい。この予測はＭＰＥＧ−４標準において特定されるイントラ予測の逆である。係数は可変長で符号化され、出力ビットストリーム８を形成する。
【００４５】
Ｈ．２６３ビットストリームはＭＰＥＧ−４ビットストリームに符号変換するとき、トランスコーダは、出力ビットストリームにおけるＭＰＥＧ−４ビジュアルオブジェクトシーケンス、ビジュアルオブジェクト及びビデオオブジェクトレイヤーヘッダーを、第一の符号変換されたビデオフレームの前に挿入する。意味変換モジュール２は、ビジュアルオブジェクトシークエンス、ビジュアルオブジェクト及びビデオオブジェクトレイヤーを入力リスト中の第一のシンボルに挿入する。
【００４６】
Ｈ．２６３ビットストリームはＭＰＥＧ−４ビットストリームに変換され、Ｈ．２６３ビットストリームにおけるピクチャーヘッダーは符号変換化されたビデオオブジェクトプレーンヘッダーに変換される。意味変換モジュール２は「ピクチャー  ヘッダー」が生成されると、全てを、「ビデオオブジェクトプレーンヘッダー」に置き換える。
【００４７】
Ｈ．２６３ビットストリームをＭＰＥＧ−４ビットストリームに変換するときに、もし、Ｈ．２６３ビットストリームがＧＯＢヘッダーを含むならば、出力ビットストリーム中のビデオパケットヘッダーに変換される。意味変換モジュール２は「ＧＯＢヘッダー」が生成されると、全てを「ビデオパケットヘッダー」に置き換える。
【００４８】
図３は、トランスコーダへの出力コーデックは本発明の実施例による、入力コーデックの特徴（動きベクタ形式、フレームサイズ及び空間の変換のタイプ）をサポートしない、２つのハイブリッドビデオコーデック間の符合変換のための選択された実施例のブロック図である。この図は単に一例であり、ここに記載された請求項の範囲を不当に制限するべきものでない。当業者は多くのバリエーション、代替物及び修正があることを認識するであろう。入力ビットストリームは、可変長の復号化された９であり、マクロブロック、動きベクタ及び変換係数のようなコーデックシンボルのリストを生成する。変換係数は、逆量子化された１０であり、逆変換１１は係数をピクセル領域へ変換し、現在のマクロブロックのための復号されたイメージを生成する。インターコード化マクロブロックに対し、この画像は、参照フレーム１４から回復された動き補償マクロブロックである。これは入力ハイブリッドビデオコーデックに対する標準デコーダを含む。
【００４９】
いくつかの出力ビデオコーデック標準は、デコーダに入力コーデックによりサポートされた、フレームサイズのサブセットのみをサポートする。もし入力フレームサイズが、出力コーデックによりサポートされなかったとしたら、トランスコーダは、入力フレームを完全に含む最大の法定な出力フレームを出力し、フレームサイズ変換１５を実行する。出力フレームは、入力フレーム上の中心に位置する。入力フレームがＩフレームであれば、入力フレーム内の出力フレームの領域は適当な背景色として符号化される。入力フレームが、Ｐフレームであれば、入力フレーム外の出力フレームの領域は、符号化されていないマクロブロックとして符号化される。
【００５０】
フレームサイズ変換を達成する別の方法は、トランスコーダが入力フレーム内に完全に適合する、最大の法定な出力フレームサイズを出力することである。出力フレームは入力フレームの中心に位置する。この場合、出力フレーム境界の外に落ちる如何なる入力マクロブロックをも無視し、フレームサイズ変換モジュール１５は入力フレームの端部を切り捨てる。
【００５１】
入力コーデックでサポートされるが、出力コーデックでサポートされないかもしれない動きベクタの４つの特徴がある。マクロブロック当たりの動きベクタの数における相違、動き補償に使用される参照フレームにおける相違、動きベクタ成分の解像度における相違、動きベクタの許容された範囲における相違がある。各場合において、トランスコーダの動きベクタ変換ユニット１６は、入力動き情報を「最適に評価する」有効な出力動きベクタを選択する。この変換は画像の質の損失及び／又は出力ビットストリームサイズにおける増加のいずれかをもたらし得る。
【００５２】
入力動きベクタは出力動きベクタと違うとき、エンコーダ参照フレーム２５を使用した復号段階の間、マクロブロック誤差係数を再計算する必要がある。
【００５３】
入力コーデックがマクロブロック当たりの多重動きベクタをサポートし、出力コーデックがマクロブロック当たりの、動きベクタの同じ数をサポートしないならば、入力ベクタの数は変換され、利用可能な出力構成に適合する。出力コーデックが、入力動きベクタの数よりも多くのマクロブロック当たりの動きベクタをサポートするならば、入力ベクタは複製され有効な出力ベクタを形成する。例えば、マクロブロック入力当たりの２つの動きベクタが、入力ベクタのそれぞれを複製することにより、マクロブロック当たりの４つの動きベクタに変換され得る。逆に、もし出力コーデックが、入力コーデックよりも少ない、マクロブロック当たりの動きベクタをサポートするならば、入力ベクタは結合され出力ベクタを形成する。例えば、ＭＰＥＧ−４からＨ．２６３へのトランスコーダが４つの動きベクタを伴って入力マクロブロックと遭遇するとき、４つのベクタを結合し、単一の出力動きベクタを得る。
【００５４】
動きベクタを結合する一つの方法は、入力ベクタのｘ、ｙ成分の平均を使用する。
【００５５】
他の方法は入力ベクタのｘ、ｙ成分のメジアンをとることである。
【００５６】
多重の入力動きベクタから要求された出力動きベクタへの変換は、常に第一に実行され、変換後のベクタはもし要求されるならば、次の変換のための入力として使用される。
【００５７】
もし、入力コーデックが、最も最近に復号されたのではない参照フレームを伴うＰフレームをサポートし、出力コーデックがそうでなければ、入力動きベクタがスケーリングされ、動きベクタが最も最近の復号フレームを参照する。入力ベクタの各成分を、スキップされた参照フレームの数プラス１個に分割することにより、スケーリングが実行される。
【００５８】
もし、出力コーデックにおける動きベクタの解像度が入力コーデックにおける動きベクタの解像度より少ないならば、入力動きベクタ成分が最も近い有効な出力動きベクタ成分値に変換される。例えば、もし入力コーデックが１／４のピクセル動き補償と出力コーデックがピクセル動き補償の半分をサポートするのみならば、入力における１／４のピクセル動きベクタは最も最近の半分のピクセル値に変換される。
【００５９】
トランスコーダが、出力コーデックに許容された範囲の外の、一つ又は両方の成分を伴って入力動きベクタに遭遇するとき、ベクタを許容された出力値にベクタを変換しなければならない。同様の状況は、入力動きベクタがビデオフレーム境界外の領域を指すことができ、出力動きベクタが画像内を指すように制限されるときに起こる。両方の場合にアルゴリズムは入力ベクタに基づいて有効な出力ベクタを選択する。
【００６０】
変換の一つの方法は、出力動きベクタ成分を近接の許容値に締め付けることである。例えば、ＭＰＥＧ−４動きベクタは、−１６から１５．５ピクセルのＨ．２６３幅より大きくなり得る。この場合、計算されたＨ．２６３のｘ成分μは以下の式で与えられる。
【数１】
2005533468.tif 000003
第二の変換方法は、出力ベクタを入力ベクタと同じ方向の最大の有効な出力ベクタにすることである。
【００６１】
フレームサイズと動きベクタを変換後、復号化されたマクロブロックピクセルは、インターマクロブロックに対して動き補償参照値２５から１７が差し引かれた後、空間的に変換された１９になる。変換係数は２０に量子化され、送信後に可変長は２１に暗号化される。量子化された変換係数は、逆量子化された２２であり、逆変換２３によりピクセル領域に変換される。イントラマクロブロックに対して、ピクセルは参照フレームストア２５において直接にストアされる。インターマクロブロックは、参照フレームストア２５にストアされる前に、動き補償参照ピクセルに付け加えられた２４である。
【００６２】
図４は、トランスコーダへの出力コーデックが本発明の実施例により入力コーデックの特徴（動きベクタ形式、フレームサイズ及び空間変換のタイプ）をサポートしていないとき、２つのハイブリッドビデオコーデック間の符号変換の為に選択された実施例の最適化されたモードのブロック図である。この図は単に一例に過ぎず、ここに記載する範囲を不当に制限すべきものではない。当業者は多くのバリエーション、代替物及び修正があることを認識するだろう。最適化されたモードは入力と出力コーデックが同じ空間変換、同じ参照フレーム及び同じ量子かを使用するときに利用可能であるのみである。最適化されたモードは法定の出力動きベクタである入力動きベクタを有するインターマクロブロックに使用される。最適化されたモードにおいて、逆量子化器１０の出力と逆空間変換１１は、フレームサイズ変換後、可変長エンコーダ２１とフレームストア２４にそれぞれ直接供給される。このモードは、暗号側空間変換１９、量子化器２０、逆量子化器２２及び逆変換２３モジュールを使用しないので、より著しく効果的である。もし、デコーダ動き補償１２とエンコーダ動き補償２４が異なる丸め変換を使用しているならば、元のビットストリームの出力と符号変換の出力間の可視のドリフトがないことを補償するために、図３において示される符号変換経路を通じて、それぞれのフレームを周期的に走らせる必要がある。
【００６３】
Ｈ．２６３標準は各マクロブロックがそれぞれ１３２フレームに対して少なくとも一回、イントラコード化されなければならないことを明らかにする。ＭＰＥＧ−４標準において同様の要請はない。我々の方法では、Ｈ．２６３のイントラ符号化の制約を満たすこと保証するために、トランスコーダは最後のＭＰＥＧ−４Ｉフレームからのフレームの数を追跡し、ＭＰＥＧ−４ストリームにおける最後のＩフレームにおける１３１Ｐフレームより多くがあれば、復号されたＰフレームをＩフレームとして強制的に暗号化する。
【００６４】
もし入力コーデックが「符号化されていない」フレームをサポートし、出力コーデックがそうでないならば、装置はフレームを変換する。変換の一つの方法は、トランスコーダが、符号変換されたビットストリームからのフレームを符号変換されたビットストリームから完全に落とすことである。変換の第二の方法はトランスコーダがフレームを全ての符号化されたマクロブロックを「符号化されていない」マクロブロックとして伴うＰフレームとして、送信することである。
【００６５】
参照フレームストア１４、２５は従来のデコーダとエンコーダにおける２つの分離したフレームとして通常実施される。一つは参照フレーム（先に暗号化されたフレーム）であり、一つは現在の暗号化されたフレームである。コーデック動きベクタが値の制限された範囲をとることを許すのみであるとき、これらのストレージの要求を減少させる事を可能とする。我々の方法においては、マクロブロックが暗号化されるときに使用される唯一の参照フレームマクロブロックが最大許容動きベクタの範囲内の近傍にあることを認識し、実質的にストレージ要求を減少する。
【００６６】
図５は、一例としてベースラインＨ．２６３に暗号化される、１１グリッドのマクロブロックを伴う基礎になる９とともに、ＱＣＩＦサイズフレーム２６を使用したマクロブロックバッファ過程を示す。この図は単に一例であり、ここに記載する請求項の範囲を不当に制限するべきでないものである。当業者は多くのバリエーション、代替物及び修正があることを認識するであろう。直ちに２８を囲むマクロブロックと現在暗号化された２７マクロブロックは、暗号化の間の動き補償に使用され得る、参照フレームにおけるピクセルを含む。２７に符号化されるマクロブロックに先立つマクロブロックは、既に２９に暗号化されている。ベースラインＨ．２６３動きベクタの最大範囲は、−１６から１５．５ピクセルである。現在の画像をストアする代わりに、画像列プラス１におけるマクロブロックの数を有するマクロブロックバッファ３０を維持する。各マクロブロックが符号化された後、バッファにおける最も古いマクロブロックは、参照画像における位置に書かれ、現在のマクロブロックはバッファに書かれる。
【００６７】
バッファはバッファにおける各マクロブロックが符号化されているか「符号化されていないか」否かを又ストアする。「符号化されていない」マクロブロックの場合、我々の方法は、これらのマクロブロックをバッファに書くことをスキップし、あたかも、参照フレームにおけるこれらとマクロブロックピクセル値が変わらないかのように、参照フレームにこれらを書き戻すこともスキップすることである。
【００６８】
選択された実施例の先の記載は、当業者が本発明をし、或いは使用するようにすることを可能にするために提供される。これらの実施例へのさまざまな修正は、当業者にとって自明であり、ここで定義された一般的な原則は、進歩性のある機能を使用せずに、他の実施例に適用され得る。このように、本発明はここで示される実施例に限定されるように意図されていないが、原則と、ここに開示された新規性を有する特徴と一貫する、最も広い範囲と一致する。
【図面の簡単な説明】
【００６９】
【図１】図１は、本発明の実施例により、第二のコーデックを第一のコーデックの特徴をサポートする、第一のハイブリッドビデオコーデックから第二のハイブリッドビデオコーデックへのトランスコーダの接続を示す単純化されたブロック図である。
【図２】図２は本発明の実施例により、Ｈ．２６３からＭＰＥＧ−４へのトランスコーダの接続を示す単純化されたブロック図である。
【図３】図３は本発明の実施例により、ハイブリッドビデオコーデックから第二のハイブリッドビデオコーデックへの、トランスコーダの接続を示す単純化されたブロック図である。
【図４】図４は本発明の実施例により、ハイブリッドビデオコーデックから第二のハイブリッドビデオコーデックへの、トランスコーダの接続の最適化されたモードを示す単純化されたブロック図である。
【図５】図５は本発明の実施例により、参照フレームとマクロブロックバッファがＨ．２６３暗号化の間に如何に使用される単純化された図である。
【図１】
2005533468.tif 000004
【図２】
2005533468.tif 000005
【図３】
2005533468.tif 000006
【図４】
2005533468.tif 000007
【図５】
2005533468.tif 000008
【国際調査報告】
2005533468.tif 000009