(57)【要約】  プリエンコードビデオコンテンツのレート制御システムおよび方法が開示される。前回のエンコーダによって提供されたソース量子化値に基づくトランスコーディング量子化値を用いて、前回に復号されたビデオデータをローカルシステムにより符号化する。トランスコーディング量子化値はさらに、ターゲットシステムのビデオバッファの占有量に基づいて決定される。ここで、占有量は、直接ターゲットシステムから得られるか、またはローカルシステムによりモデリングされる。ビデオデータは、ローカルシステムにより符号化され、その後復号し、さらに表示および／または記憶するためのターゲットシステムに供給される。
2005510980.tif 000002
【特許請求の範囲】
【請求項１】
第１のマクロブロックに対する第１の量子化値を受信するステップと、
前記第１の量子化値と、ビデオバッファの第１の予想ビデオデータ量とに基づいて、前記第１のマクロブロックに対する第２の量子化値を決定するステップと、
を有する方法。
【請求項２】
さらに前記第２の量子化値に基づいて第１のマクロブロックを修正するステップを含む請求項１に記載の方法。
【請求項３】
前記第１の量子化値は、第１のマクロブロックのソースから受信される請求項１に記載の方法。
【請求項４】
ビデオバッファのアドレス位置が、前記ビデオバッファの前記第１の予想データ量を表わす請求項１に記載の方法。
【請求項５】
フレームが処理される時を指示するバッファ遅延値が、前記ビデオバッファの前記第１の予想データ量を表わす請求項１に記載の方法。
【請求項６】
前記バッファ遅延値は、前記ビデオバッファのバッファ位置に記憶されたフレームの数に基づく請求項５に記載の方法。
【請求項７】
前記第１の予想データ量は、前記ビデオバッファのモデリングに基づいて決定される請求項１に記載の方法。
【請求項８】
前記ビデオバッファの前記モデリングは、入力レートと出力レートとの相違に基づいてビデオバッファの占有量を決定することを含む請求項７に記載の方法。
【請求項９】
前記ビデオバッファの前記モデリングは、ＶＢＶバッファモデルを用いることを含む請求項７に記載の方法。
【請求項１０】
前記決定するステップは、さらに出力ビットレートに対する入力ビットレートの第１の比に基づいて、第２の量子化値を決定するステップを含む請求項１に記載の方法。
【請求項１１】
前記決定するステップは、さらにソースビットカウントに対する前記第１の比の第２の比に基づいて、第２の量子化値を決定するステップを含む請求項１０に記載の方法。
【請求項１２】
前記決定するステップは、さらにＸスケーリング値とＹスケーリング値との積の値に基づいて、第２の量子化値を決定するステップであって、前記積の値は、１より小さいＺによりＺ乗されるステップを含む請求項１０に記載の方法。
【請求項１３】
前記Ｘスケーリング値は、水平フレームサイズ値を含み、Ｙスケーリング値は垂直フレームサイズ値を含む請求項１２に記載の方法。
【請求項１４】
Ｚは、０．７５＋／−０．１である請求項１３に記載の方法。
【請求項１５】
前記第２の量子化値は、量子化比に対する前記第１の量子化値の比の値を含む請求項１に記載の方法。
【請求項１６】
前記量子化比は、第１の予想データ量に基づいている請求項１５に記載の方法。
【請求項１７】
前記第１の予想データ量が第１のインジケータより大きい場合は、前記量子化比は第１の定数値を含み、
前記第１の予想データ量が第１のインジケータより小さく、第２のインジケータより大きい場合は、前記量子化比は第２の定数値を含み、
前記第１の予想データ量が第２のインジケータより小さい場合は、前記量子化比は非線形関数により決定される請求項１６に記載の方法。
【請求項１８】
前記第１のインジケータは、最大バッファ占有量の７５％＋／−１％である占有量の値である請求項１７に記載の方法。
【請求項１９】
前記第２のインジケータは、最大バッファ占有量の２０％＋／−１％である占有量の値である請求項１７に記載の方法。
【請求項２０】
非線形関数は、式
【数１】
2005510980.tif 000010
を含み、ここで、Ｒは量子化比、Ｑは量子化比の初期値、Ｘは第１の定数値、Ｙは第２の定数値、Ｗはデータ量を表わす値、Ｚは第３の定数値である請求項１７に記載の方法。
【請求項２１】
バッファに記憶されたデータ量が第１のインジケータより大きい場合、第１のマクロブロックに対する量子化値を第１の定数値により変更するステップと、
バッファに記憶されたデータ量が第２のインジケータより大きく、第１のインジケータより小さい場合、第１のマクロブロックに対する量子化値を第２の定数値により変更するステップと、
バッファに記憶されたデータ量が第２のインジケータより小さい場合、第１のマクロブロックに対する量子化値を非線形関数値により変更するステップと、
を含む方法。
【請求項２２】
第１のマクロブロックに関連する第１の量子化値を決定するステップと、
第２の量子化値を用いて第１のマクロブロックを修正するステップであって、前記第２の量子化値は、前記第１の量子化値に対する第１の量子化比の比に基づいており、前記第１の量子化比は、ビデオバッファの第１の予想特性に基づいているステップと、
を有する方法。
【請求項２３】
前記第１量子化値を決定するステップは、前記第１マクロブロックのソースから前記第１の量子化値を受信するステップを含む請求項２２に記載の方法。
【請求項２４】
前記ビデオバッファの第１の予想特性は、ビデオバッファの占有量を含む請求項２２に記載の方法。
【請求項２５】
フレームが処理される時を指示するバッファ遅延値が、前記ビデオバッファの第１の予想特性を表わす請求項２２に記載の方法。
【請求項２６】
前記バッファ遅延値は、バッファ位置に記憶されたフレーム数に基づく請求項２５に記載の方法。
【請求項２７】
前記第１の予想特性は、前記ビデオバッファのモデリングに基づいて決定される請求項２２に記載の方法。
【請求項２８】
前記ビデオバッファの前記モデリングは、入力レートと出力レートとの相違に基づいて前記ビデオバッファの占有量を決定することを含む請求項２７に記載の方法。
【請求項２９】
前記ビデオバッファの前記モデリングは、ＶＢＶバッファモデルを用いることを含む請求項２７に記載の方法。
【請求項３０】
前記量子化比は、Ｘスケーリング値とＹスケーリング値との積の値に基づいており、前記積の値は、１より小さいＺによりＺ乗される請求項２２に記載の方法。
【請求項３１】
前記Ｘスケーリング値は、水平フレームスケーリング値を含み、前記Ｙスケーリング値は垂直フレームスケーリング値を含む請求項３０に記載の方法。
【請求項３２】
Ｚは、０．７５＋／−０．１である請求項３０に記載の方法。
【請求項３３】
前記第１の予想特性が第１のインジケータより大きい場合、前記量子化比は第１の定数値を含み、
前記第１の予想特性が第１のインジケータより小さく、第２のインジケータより大きい場合、前記量子化比は第２の定数値を含み、
前記第１の予想特性が第２のインジケータより小さい場合、前記量子化比は非線形関数値により決定される
請求項３０に記載の方法。
【請求項３４】
前記第１のインジケータは、最大バッファ占有量の７５％＋／−１％である占有量の値である請求項３３に記載の方法。
【請求項３５】
前記第２のインジケータは、最大バッファ占有量の２０％＋／−１％である占有量の値である請求項３３に記載の方法。
【請求項３６】
非線形関数は、式
【数２】
2005510980.tif 000011
を含み、ここで、Ｒは量子化比、Ｑは量子化比の初期値、Ｘは第１の定数値、Ｙは第２の定数値、Ｗはデータ量を表わす値、Ｚは第３の定数値である請求項３３に記載の方法。
【請求項３７】
出力部を有する監視モジュールであって、ターゲットデコーダの予想特性と、受信されたソースマクロブロックに対するソース量子化値とを決定する監視モジュールと、
前記第１の予想特性と前記ソース量子化値を受信するために、前記監視モジュールの出力に接続された第１の入力部および出力部とを有するレート制御モジュールであって、前記第１の予想特性と前記ソース量子化値とに基づいて、前記ソースマクロブロックに対するトランスコーディング量子化値を決定するレート制御モジュールと、
を備えるレート制御システム。
【請求項３８】
さらに、レート制御モジュールの出力部に接続される入力部をもつ量子化器であって、トランスコーディング量子化値を用いて、ソースマクロブロックを量子化する量子化器を備える請求項３７に記載のレート制御システム。
【請求項３９】
さらに、ターゲットデコーダの第１の予想特性に基づいて量子化比を決定する、出力部をもつ比ジェネレータを備える請求項３７に記載のレート制御システム。
【請求項４０】
前記レート制御モジュールは、前記量子化比を受信するために、前記比ジェネレータの出力部に接続された入力部をもち、前記量子化比に対する前記ソース量子化値の比の値に基づいて、トランスコーディング量子化値を決定する請求項３９に記載のレート制御システム。
【請求項４１】
前記レート制御モジュールは、前記ソース量子化値に適用される非線形関数に基づいて、トランスコーディング量子化値を決定する請求項３７に記載のレート制御システム。
【請求項４２】
前記第１の予想特性は、前記ターゲットデコーダに関連するバッファの占有量を含む請求項３７に記載のレート制御システム。
【請求項４３】
前記バッファの占有量は、前記ターゲットデコーダから求める請求項４２に記載のレート制御システム。
【請求項４４】
前記バッファの占有量は、前記バッファのモデルから求める請求項４２に記載のレート制御システム。
【請求項４５】
前記モデルは、ＶＢＶバッファモデルを含む請求項４２に記載のレート制御システム。
【請求項４６】
前記監視モジュールは、前記バッファのアドレス位置を用いて、バッファの占有量を決定する請求項４２に記載のレート制御システム。
【請求項４７】
前記第１の予想特性は、バッファに関連する遅延値を含む請求項３７に記載のレート制御システム。
【請求項４８】
前記遅延値は、前記バッファに記憶されたフレーム数に基づく請求項４７に記載のレート制御システム。
【請求項４９】
前記監視モジュールは、前記第１の予想特性を決定するために、前記ターゲットデコーダをモデル化する請求項３７に記載の方法。
【請求項５０】
前記監視モジュールは、入力レートと出力レートとの相違量をモデル化する請求項４９に記載の方法。
【請求項５１】
第１のマクロブロックに対する第１の量子化値を受信し、
第１の量子化値とビデオバッファの第１の予想ビデオデータ量とに基づいて、第１のマクロブロックに対する第２の量子化値を決定するように、
プロセッサを動作させる命令を含むコンピュータ可読媒体。
【請求項５２】
前記命令はさらに、第２の量子化値に基づいて第１のマクロブロックを修正するように、前記プロセッサを動作させる命令を含む請求項５１に記載のコンピュータ可読媒体。
【請求項５３】
前記第１の量子化値は、第１のマクロブロックのソースから受信される請求項５１に記載のコンピュータ可読媒体。
【請求項５４】
ビデオバッファのアドレス位置が、前記ビデオバッファの前記第１の予想データ量を表わす請求項５１に記載のコンピュータ可読媒体。
【請求項５５】
フレームが処理される時を指示するバッファ遅延値が、前記ビデオバッファの前記第１の予想データ量を表わす請求項５１に記載のコンピュータ可読媒体。
【請求項５６】
前記バッファ遅延値は、前記ビデオバッファのバッファ位置に記憶されたフレームの数に基づく請求項５５に記載のコンピュータ可読媒体。
【請求項５７】
前記第１の予想データ量は、前記ビデオバッファのモデリングに基づいて決定される請求項５１に記載のコンピュータ可読媒体。
【請求項５８】
前記ビデオバッファの前記モデリングは、ＶＢＶバッファモデルを用いることを含む請求項５７に記載のコンピュータ可読媒体。
【請求項５９】
前記ビデオバッファの前記モデリングは、入力レートと出力レートとの相違に基づいて、ビデオバッファの占有量を決定することを含む請求項５７に記載のコンピュータ可読媒体。
【請求項６０】
前記プロセッサを動作させて決定する前記命令はさらに、出力ビットレートに対する入力ビットレートの第１の比に基づいて前記第２の量子化値を決定するように、前記プロセッサを動作させる命令を含む請求項５１に記載のコンピュータ可読媒体。
【請求項６１】
前記プロセッサを動作させて決定する前記命令はさらに、ソースビットカウントに対する前記第１の比の第２の比に基づいて第２の量子化値を決定するように、前記プロセッサを動作させる命令を含む請求項６０に記載のコンピュータ可読媒体。
【請求項６２】
前記プロセッサを動作させて決定する前記命令はさらに、Ｘスケーリング値とＹスケーリング値の積の値であって、この積の値は１より小さいＺを用いてＺ乗されるものに基づいて第２の量子化値を決定するように、前記プロセッサを動作させる命令を含む請求項６０に記載のコンピュータ可読媒体。
【請求項６３】
前記Ｘスケーリング値は水平フレームサイズ値を含み、Ｙスケーリング値は垂直フレームサイズ値を含む請求項６２に記載のコンピュータ可読媒体。
【請求項６４】
Ｚは、０．７５＋／−０．１である請求項６３に記載のコンピュータ可読媒体。
【請求項６５】
前記第２量子化値は、量子化比に対する前記第１の量子化値の比を含む請求項５１に記載のコンピュータ可読媒体。
【請求項６６】
前記量子化比は、前記第１の予想データ量に基づく請求項６５に記載のコンピュータ可読媒体。
【請求項６７】
前記第１の予想データ量が第１のインジケータより大きい場合、前記量子化比は第１の定数値を含み、
前記第１の予想データ量が第１のインジケータより小さく、第２のインジケータより大きい場合、前記量子化比は第２の定数値を含み、
前記第１の予想データ量が第２のインジケータより小さい場合、前記量子化比は非線形関数値により決定される
請求項６６に記載のコンピュータ可読媒体。
【請求項６８】
前記第１のインジケータは、最大バッファ占有量の７５％＋／−１％である占有量の値である請求項６７に記載のコンピュータ可読媒体。
【請求項６９】
前記第２のインジケータは、最大バッファ占有量の２０％＋／−１％である占有量の値である請求項６７に記載のコンピュータ可読媒体。
【請求項７０】
前記非線形関数は、式
【数３】
2005510980.tif 000012
を含み、ここで、Ｒは量子化比、Ｑは量子化比の初期値、Ｘは第１の定数値、Ｙは第２の定数値、Ｗはデータ量を表わす値、Ｚは第３の定数値である請求項６７に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的にはプリエンコードされたディジタルビデオのトランスコーディングのためのレート制御に関し、より詳細には、目標とするビットレートを得るために、プリエンコードされたビデオデータから抽出した情報に基づいて、量子化パラメータを効率的に計算することに関する。
【背景技術】
【０００２】
プリエンコードされたビデオデータを伝送する際の一般的な関心は、異なる帯域幅をもつ通信チャネルにプリエンコードされたビデオをいかにして適応させるかにある。ほとんどのプリエンコードされたビデオストリームは、高品位ビデオを保証するためにきわめて高いビットレートで符号化される。このような高ビットレートのビデオストリームを伝送することは、通常費用のかかることであり、通信チャネルが十分広い帯域幅を提供できない場合、ときには実行不可能である。プリエンコードされたビデオのビットレートを削減する一般的なアプローチは、そのビデオを復号して生の画素データをまず生成し、それから各種のビットレートで生の画素データを再符号化するものである。しかし、単純な再符号化方法では、複雑さと費用の点から高価なものとなり、フレームの再度の並べ換えにより遅延が発生することになりかねない。ビデオデータを再符号化するには、１つのデコーダと十分な機能をもつ１つのエンコーダとが必要である。さらに、エンコーダは、動きサーチを再度行う必要があり、また復号されたデータに基づいて新たな符号化の決定事項（例えば、ピクチャ符号化タイプ、マクロブロックモードおよび量子化パラメータ）を作成する必要があるので、生成損失あるいはカスケード符号化損失として知られている効果により、ビデオ品質は通常大きく低下する。
【０００３】
プリエンコードビデオビットレートを減少させる他のアプローチは、元のコーディングの決定事項のいくつかを再使用するトランスコーディングシステムを用いることである。しかしながら、もしトランスコーディングシステムが、１以上の従来のレート制御アルゴリズム、例えば動画専門家グループ−２のテストモデル５（ＭＰＥＧ２  ＴＭ５）のレート制御アルゴリズムを使用する場合、トランスコードされたビデオは、一般に多数の要因により品質が低下する。１つの要因は、ソースシステムで用いるレート制御パラメータとトランスコーディングシステムで用いるレート制御パラメータとが相違している可能性があるということである。他の要因は、元のプリエンコードストリームにおける量子化損失のような欠陥の存在であり、この欠陥は、トランスコーディングシステムにより考慮されない。さらに、この種のトランスコーディングシステムにより使用されるアルゴリズムは、ピクチャグループの符号化タイプについて前もって知っていることが必要であるのに、この情報をあらかじめ利用できない場合が多く、したがって計算するのに費用がかかりかつ非効率である。
【０００４】
上記のような制限を考えると、プリエンコードビデオデータのトランスコーディングのための改良されたレート制御方法があれば、有利であることは明らかである。
【０００５】
すべてが本明細書の一部を形成する添付の図面を参照して、以下の説明と特許請求の範囲を考察することにより、方法、関連する構成要素の動作と機能、製造の部品と節約の組合わせばかりでなく、本発明のさまざまな利点、特徴、および特性が明らかとなるであろう。
【０００６】
〔図の詳細な説明〕
本発明の少なくとも一実施形態によれば、ソースマクロブロックの量子化値を受信し、ソース量子化値とビデオバッファの予想データ量とに基づいて、デスティネーション・マクロブロックの量子化値を決定する。本発明の１つの利点は、ビット位置を決定するために２以上のビデオピクチャをバッファリングすることが必要ではないので、バッファサイズを最小限にできることである。他の利点は、バッファのオーバフローおよび／またはアンダーフローを避けることができることである。さらに他の利点は、１枚のピクチャ全体の量子化パラメータを、あらかじめ決定することができるので、量子化パラメータマクロブロックのパイプラインに必要とされる負荷を少なくできる。なお、追加すべき利点として、出力ビットレートのより正確な予測ができるので、ビデオ品質が改善されるということがある。
【０００７】
図１〜５に、プリエンコード・ビデオコンテンツの効率的なレート制御システムおよび方法を示す。少なくとも一実施形態では、探索されたビデオデータの一部として前のエンコーダにより供給される、ソース量子化値に基づくトランスコーディング量子化値を用いて、ローカルシステムのローカルエンコーダが、前に復号されたビデオデータを符号化する。ビデオデータは、ローカルシステムにより符号化され、復号とこれに続く表示および／または記憶のためのターゲットシステムに供給される。少なくとも一実施形態では、量子化比に対するソース量子化値の比を採用することにより、トランスコーディング量子化値が決定される。ここで、量子化比は、トランスコーディングオプション（例えば、出力ビデオ解像度を制御するスケーリングファクタおよび／またはフレームドロップフラグ）、ビットバジェットおよびビットコンサンプション・ステータス、および／またはターゲットシステムのビデオバッファの特性、のような１以上のファクタに基づくものである。ビデオバッファの特性は、バッファされたフレームが、ターゲットシステムによって復号され除去されるまでの時間を指示する、ビデオバッファの占有量および／またはバッファ遅延を含み得る。一実施形態では、ビデオバッファの特性は、ターゲットシステムから直接得られ、実際の特性を表わす。他の実施形態では、ローカルシステム例えばビデオバッファリング検証器（ＶＢＶ）バッファをモデリングすることにより、ビデオバッファの特性がモデリングされ、その結果予測される特性を表わす。ローカルエンコーダでは、ターゲットシステムのビデオバッファへ入力するためにローカルシステムにより送られるビデオ量と、既知のフレームレートでビデオバッファから出力されるデータ量とを比較することによって、ＶＢＶバッファの特性がモデリングされる。
【０００８】
さて図１を参照すると、ビデオシステム１００が、本発明の少なくとも一実施形態に従って示されている。ビデオシステム１００は、ソースシステム１０１と、ローカルシステム１１０と、通信媒体１５５と、ターゲットシステム１６０とを含む。ローカルシスム１１０は、メモリ１２０と、ソースバッファ１２５と、ローカルデコーダ１３０と、フレームバッファ１４０と、ローカルエンコーダ１５０とを含む。少なくとも一実施形態では、ローカルシステム１１０は、ソースシステム１０１からビデオデータをトランスコーディングするトランスコーディングシステムを含む。したがって、ローカルシステム１１０は、明細書中ではトランスコーディングシステム１１０と言う。トランスコーディングシステム１１０は、一実施形態では、代理人の書類番号ＶＩＸＳ．０１００１２０をもつ係属中の特許出願に記載されている特徴と同様の特徴をもち得る。この特許出願は、同時に出願され、名称を「複数チャネルビデオトランスコーディングシステム及び方法」とするもので、本明細書に参照として組み込まれる。トランスコーディングシステム１１０と記載することは、特に断りのない限り、ローカルシステム１１０の他の実施形態についても同様である。同様に、ローカルエンコーダ１５０とローカルデコーダは、本明細書では、それぞれトランスコーディングエンコーダ１５０、トランスコーディングデコーダ１３０と言う。ターゲットシステム１６０は、ターゲットデコーダ１７０と、表示装置１８０および／または記憶装置１９０を含む。少なくとも一実施形態では、トランスコーディングシステム１１０は、ビデオトランスコーダを表す。この場合、トランスコーディングシステム１１０は、ソースシステム１０１から受信したソースビデオデータ１０５を復号し、復号されたソースビデオデータ１０５をターゲットビデオデータ１６５にトランスコードする。ここで、ターゲットビデオデータ１６５は、ソースビデオデータ１０５とは異なる特性、例えば異なるフレームレート、異なるビットレート、異なる解像度等をもち得る。ターゲットビデオデータ１６５は、ターゲットシステム１６０に供給され、そこで復号され、表示および／または後の検索のために記憶されることもある。
【０００９】
一般に、ソースビデオデータ１０５は、各種のビデオ符号化／圧縮フォーマットの１つを用いて圧縮および／または符号化されたビデオデータを含んでいる。例えば、一実施形態では、ソースビデオデータ１０５は、動画専門家グループフォーマット（例えばＭＰＥＧ−２）を用いて、符号化されたビデオデータを含む。受信したソースビデオ１０５は、トランスコーディングシステム１１０において、例えばソースバッファ１２５で記憶され、その後トランスコーディングデコーダ１３０により復号のために探索される。トランスコーディングデコーダ１３０の出力は、フレームバッファ１４０に記憶することができる。ソースビデオデータ１０５の復号に関連するソース符号化情報、例えばソースビデオデータ１０５のマクロブロックに関連する量子化値および動きベクトルは、必要に応じてトランスコーディングエンコーダ１５０に送られる。サウンドバッファ１２５とフレームバッファ１４０とは、一実施形態では、図１に示すようなメモリ１２０で実現される。メモリ１２０は、１以上のランダムアクセスメモリ（ＲＡＭ）、キャッシュ、デスクストレージ等を含み、またフレームバッファを含んでいてもよい。
【００１０】
一実施形態では、トランスコーディングエンコーダ１５０は、フレームバッファ１４０に記憶されたトランスコーディングデコーダ１３０の復号出力を、ソースビデオデータ１０５とは異なる特性をもつ、すなわち解像度、フレームレート、ビットレート等が異なるターゲットビデオデータ１６５に再符号化する。例えば、トランスコーディングエンコーダ１５０は、フレームを落すことによってフレームレートを変更できる。例えば、ソースビデオデータ１０５は、６０フレーム／秒（ｆｐｓ）のフレームレートをもつように符号化されているのに対して、ターゲットビデオデータに対して３０ｆｐｓのフレームレートを所望のものとして、ユーザが指示する場合がある。この場合、トランスコーディングエンコーダ１５０は、フレームバッファ１４０に記憶された１つおきのソースフレームを、ターゲットビデオデータとして含むように符号化することが可能である。トランスコーディングエンコーダ１５０は通信媒体１５５を介して、ターゲットビデオデータ１６５をターゲットシステム１６０に供給する。通信媒体１５５は、無線媒体、物理媒体、またはその組み合わせから構成され得る。
【００１１】
少なくとも一実施形態では、ターゲットビデオデータ１６５は、ターゲットシステム１６０で復号される前に、ターゲットビデオバッファ１７５に記憶される。ターゲットデコーダ１７０は、ターゲットビデオバッファ１７５からターゲットビデオデータ１６５を探索して復号し、表示装置１８０に表示する。ここで、表示装置１８０は、各種の表示装置、例えばテレビジョン、コンピュータモニタ等であってよい。また、ターゲットビデオデータ１６５は、符号化および／または復号された形式で、記憶装置１９０に記憶することもできる。記憶装置１９０は、ハードディスク、ディジタル汎用ディスク（ＤＶＤ）ライタ、メモリスティック等の各種の記憶装置を含んでよい。
【００１２】
ソースビデオデータ１０５のビットレートは、通信媒体１５５の伝送レートより小さく、トランスコーディングシステム１１０をバイパスするにが理想である。しかしながら、この理想的シナリオは、明らかに多くの環境では起こりそうにない。代表的なＨＤＴＶストリームが、１８．２Ｍビット／秒（ｂｐｓ）で符号化されるのに対して、ディジタル加入者線（ＤＳＬ）は通常、１Ｍｂｐｓから３Ｍｂｐｓのチャネルビットレートを提供できるだけである。無線通信では、希望するビットレートと利用できるビットレートとの間の相違は、より顕著であり、チャネルの帯域は、その時々に変化する。このような場合、トランスコーディングシステム１１０を利用して、通信媒体１５５のチャネルビットレートにターゲットビデオデータ１６５を適合させる。ソースビデオビットレートをターゲットビデオビットレートに変換する間、ターゲットシステム１６０のビデオバッファ１７５のオーバフローまたはアンダーフローがおきないように、トランスコーディングシステム１１０のレート制御モジュールが、各トランスコードされたフレームのデータサイズを制御する必要がある。
【００１３】
ビデオバッファ１７５への入力データレートは、ビデオバッファ１７５からの出力データレートに等しく、結果としてビデオバッファ１７５の占有量の正味の変化が零となるのが理想である。しかしながら、この理想的なシナリオは、多くのビデオシステムでは起こりそうにない。１つには、伝送されるフレームが同一サイズであることはあまりないことが挙げられる。例えば、ＭＰＥＧ標準では、符号化フレームは、Ｉフレームと、Ｂフレームと、Ｐフレームとを有し、一般にそれぞれがきわめて異なるデータサイズをもつ。例えば、Ｉフレームは、フレーム内で符号化され、Ｉフレームに含まれるデータのみから復号できるので、過去および／または未来のフレームからの予測データを復号過程で用いるＰフレームおよびＢフレームより多いデータにより表される。同様に、フレームのコンテンツおよび量子化パラメータに起因して、同じタイプのフレームが異なるデータ量をもつことがよくある。一定のデータレートの通信チャネルについては、フレーム送信時間はそのサイズに比例する。大きなフレームの送信時間は長く、小さなフレームの送信時間は短い。その結果、エンコーダが、ターゲットデコーダビデオバッファに１秒間で送信可能なフレーム数は、符号化フレームデータサイズの変化に応じて変化する一方、ターゲットデコーダが固定フレームレートでビデオを復号して表示するので、ビデオバッファにおけるフレーム数および／またはデータ量は増えたり減ったりする。
【００１４】
したがって、トランスコーディングシステムにおけるレート制御モジュールは、それぞれの符号化ビデオフレームサイズを制御して、平均ビットレートがチャネルデータレートに等しくなるようにし、ターゲットシステム１６０のビデオバッファ１７５がオーバフローまたはアンダーフローしないようにする。これは、ビデオバッファ１７５のアンダーフローまたはオーバフローがおきないように、ターゲットビデオデータ１６５のフレームを表現するために用いられるデータ量を増減することにより達成される。例えば一実施形態では、通信媒体１５５の帯域を十分に利用するために、データは、比較的一定のデータ伝送レートで通信媒体１５５を介して伝送される。この場合、ターゲットビデオデータ１６５の符号化フレームを表現するデータ量が増加すると、所定の時間に伝送されるフレーム数は減少する。ターゲットデコーダ１７０は固定フレームレートでビデオを復号するので、フレームサイズが大きくなればなるほど、ビデオバッファ１７５からのデータ除去はより速くなる。換言すれば、フレームデータサイズを制御することにより、レート制御は、実際にバッファからデータが除去される速度を制御するものである。データ除去がチャネルデータレートに比較して速すぎると、バッファアンダーフローを起こす。逆であれば、バッファオーバオフローとなる。レート制御モジュールの目的は、平均出力データレートすなわちビデオバッファ１７５の入力データレートをチャネルデータレートに等しくすることである。レート制御モジュールは、図２を参照して詳細に説明する。
【００１５】
すくなくとも一実施形態では、量子化マトリクスの量子化値は、トランスコーディングエンコーダ１５０の離散コサイン変換（ＤＣＴ）モジュールの出力を量子化するために用いられるが、この量子化マトリクスの量子化値を変更することにより、フレームに関連するデータ量が増減する。量子化値が増加すると、量子化出力にはゼロが多く現れ、量子化値が減少すると、ゼロは少なくなる傾向がある。データ量の増減は、量子化出力に関するランレングスエンコーダあるいは可変長エンコーダにようなエンコーダによる圧縮処理の結果であるゼロの数に基づいいる。すくなくとも一実施形態では、ソースから受信したマクロブロックを量子化するために用いられた先の量子化値と、ソースデータレートとターゲットデータレートの比とに基づいて、トランスコーディングエンコーダ１５０によって、マクロブロックを量子化するために使用される量子化値が決定される。さらに、１以上のトランスコーディングオプションと、ターゲットビデオバッファの予想される占有量とに従って、量子化値は調整することができる。ここで、予想される占有量は、仮想復号バッファ（例えばＶＢＶバッファ）を用いて決定されるか、あるいはターゲットシステムから得られる占有量情報により決定される。デスティネーション・マクロブロックあるいはフレームの要素を量子化するために用いられる量子化値を決定する方法は、以下に詳細に説明される。
【００１６】
図２には、本発明の少なくとも一実施形態による、トランスコーディングエンコーダ１５０が詳細に示されている。トランスコーディングエンコーダ１５０は、動き補償モジュール２００と、離散コサイン変換（ＤＣＴ）モジュール２１０と、監視モジュール２２０と、評価モジュール２３０と、レート制御モジュール２４０と、量子化器２５０と、可変長エンコーダ２６０とを備える。トランスコーディング・エンコーダ１５０の要素は、ソフトウェア、ハードウェア、ファームウェアまたはこれらの組合わせとして実現される。
【００１７】
一実施形態では、トランスコーディングシステムが、ソースビデオデータを逆量子化するために用いるソース量子化値を、トランスコーディング・エンコーダ１５０が修正することにより、フレームに関連するデータ量を修正して、トランスコーディング量子化値を生成する。動き補償モジュール２００によって供給される、復号され動き補償されたソースビデオデータ（マクロブロック間に残留するデータのみ）のマクロブロックについて、ＤＣＴモジュール２１０により離散コサイン変換を実行する。トランスコーディング量子化値を用いて、ＤＣＴモジュール２１０の出力について、量子化器２５０が量子化処理を行う。量子化器２５０の出力は、可変長エンコーダ（ＶＬＥ）２６０に供給される。そこでは、ランレングスおよび／または可変長符号化が、量子化器２５０の出力について行われる。その後ＶＬＥ２６０の出力はバッファリングされ、多重化され、図１のターゲットシステムのようなターゲット復号システムに伝送される。バッファリング、多重化および伝送は、単独でまたは任意の組み合わせで実行できる。先に説明したように、量子化値を修正することにより、マクロブロックおよび／またはフレームに関連するデータ量は必要に応じて増減可能である。
【００１８】
すくなくとも一実施形態では、量子化器２５０により用いられるトランスコーディング量子化値は、レート制御モジュール２４０によって供給される。トランスコーディング量子化値を決定するために、レート制御モジュール２４０によって使用される一方法は、ソース量子化値と量子化比との比に基づく。これを次の式に示す。
【数１】
2005510980.tif 000003
【００１９】
ここで、trcQはトランスコーディング量子化値、srcQはソース量子化値、qRatioは量子化比である。一実施形態では、量子化比の初期値（ｑRatioInit）は、ターゲットビットレート（tgtBitRate）とソースビットレート（srcBitRate）との比である、トランスコーディング比（trcRatio）に設定され、次の式で示される。
【数２】
2005510980.tif 000004
【００２０】
すくなくとも一実施形態では、初期状態の量子化比と、トランスコーディングオプションと、ターゲットビデオバッファのステータスとに基づいて、量子化比ジェネレータ２４１が量子化比を決定する。量子化比ジェネレータ２４１は一般に、正常なターゲットバッファ占有量を維持し、十分に機能を果たさないビデオデータに必要以上のビットを配置しないようにしながら、ターゲットビットレートを達成しようとする。量子化比ジェネレータ２４１の動作は、図５を参照して詳しく説明する。
【００２１】
監視モジュール２２０は、一実施形態では、ＶＢＶバッファモデルのような、ターゲットビデオバッファのローカルモデルを用いてターゲットシステムのビデオバッファをエミュレートし、ターゲットビデオバッファの予想される特性を決定する。占有量を表すＶＢＶ遅延のような特性を表す値は、レート制御モジュール２４０に供給される。監視モジュール２２０はＶＢＶバッファモデルの初期占有量を、ＶＢＶバッファサイズのある百分率（すなわち７５％＋／−．１０）に設定し、第１のトランスコードされたフレームの初期ＶＢＶ遅延を、ＶＢＶバッファの初期占有量に反映するように設定する。フレームをトランスコードした後、監視モジュール２２０は、ＢＶＢバッファの占有量の値から、トランスコードされたフレームにより表されるのと同じだけのデータ量を減少させ、ＶＢＶバッファステータスを更新し、新たなバッファ占有量の値に従って、次のピクチャのためのＶＢＶ遅延を計算する。これに代えて、一実施形態では、モデリングジュール２２０が、占有量および／またはバッファ遅延を最大値に設定し、トランスコードされるビデオが可変ビットレート（ＶＢＲ）ストリームであることを指示する。この場合は、すべてのフレームのデータサイズは比例して変更され、ビットレートプロファイルは入力ストリームと同じになる。
【００２２】
一実施形態では、監視モジュール２２０は、ターゲットビデオバッファの予想される占有量をモデリングしたり、エミュレートするのではなく、ビデオバッファの占有量やバッファ遅延を直接決定する。例えば、監視モジュール２２０は、ビデオバッファの動作を制御してビデオバッファの占有量を得る制御モジュールを、周期的にポーリングする。例えば、制御モジュールは、ビデオバッファに最近記憶されたデータのアドレス値を返すことができる。そこでこのアドレス値を用いて、ビデオバッファの占有量を決定できる。例えば、ビデオバッファのアドレス値は、例えば０から９９までのアドレスの線形増加列を含むこともあり、そこではデータは、アドレス０から記憶を開始する。この場合、アドレス値７４を返すことによって、ビデオバッファ約７５％の占有量（（74+1)/(99+1)）であると想定できる。ビデオバッファの占有量またはバッファ遅延を決定する他の方法も、本発明の精神または範囲から逸脱することなく使用可能である。
【００２３】
一実施形態では、トランスコーディング量子化値の生成のために、トランスコーディングデコーダ１３０（図１）は、ソース量子化値をレート制御モジュール２４０に供給する。トランスコーディングデコーダ１３０はソース量子化値を、記憶されたソースビデオデータから引き出す。他の実施形態では、復号のためにソース量子化値がソースシステムにより与えられる量子化値のテーブルに、レート制御モジュール２４０がアクセスする。このソース量子化値は、ＤＣＴ係数マトリクスの各要素に適用される単一の量子化スケール値、またはＤＣＴ係数マトリクスに対応する量子化値のマトリクスであってもよい。
【００２４】
図３には、ソース量子化値に適用される各種の量子化比の作用が、本発明の少なくとも一実施形態に従って示されている。先に説明したように、トランスコーディング量子化値３４５は、ソース量子化値３３５を量子化比３２０で割って求められる。ここで、量子化比３２０は、量子化比ジェネレータ２４１によって生成される。先に説明したように、ソース量子化値３３５は、ＤＣＴ係数マトリクスの各要素に適用される量子化スケール値とＤＣＴ係数マトリクスに対応する量子化値との組合わせであってもよい。
【００２５】
トランスコーディング量子化マトリクス３３１について示されているように、０．６の量子化比３２０をソース量子化マトリクス３１０に適用して、トランスコーディング量子化マトリクス３３１を生成する。生成したトランスコーディング量子化マトリクス３３１は、ソース量子化マトリクス３１０の対応するソース量子化値より大きいか等しいトランスコーディング量子化値３４５をもつ。これに代えて、１．５の量子化比３２０を適用すると、ソース量子化マトリクス３１０の対応量子化値より小さいか等しいトランスコーディング量子化値３４５をもつデスティネーションマトリクス３３２が生成する。明らかに、大きな量子化マトリクス値は通常、小さな量子化マトリクス値よりも多くの零をもつ量子化ＤＣＴ係数マトリクスを生成する。量子化比が高ければ高いほど、量子化マトリクスは小さくなり、より高い出力ビットレートとなる。その結果、低い量子化比を用いると、ＤＣＴ係数マトリクスに関連するデータ量を減少させることができ、高い量子化比を用いると、データ量を増加させることができる。
【００２６】
図４には、トランスコーディングシステムの効率的ビットレート制御方法が、本発明の少なくとも一実施形態に従って示されている。方法４００はステップ４１０から始まり、図２を参照して先に説明したように、量子化比の初期値が計算される。
【００２７】
ステップ４２０では、ステップ４１０で計算された量子化比の初期値に基づいて、ソース量子化値に適用される量子化比が決定または生成される。少なくとも一実施形態では、ビット割当量の消費（bit budget consumption）と、トランスコーディングオプションと、予想される占有量のようなターゲットバッファのステータスとに基づいて、量子化比が決定される。ステップ４２０は、図５を参照して詳細に説明される。ステップ４３０では、処理されたフレームの１つのソースマクロブロックに対するソース量子化値が、フェッチされる。ステップ４４０では、ステップ４２０で求められた量子化比は、ソース量子化値に適用され、トランスコーディング量子化値を得る。例えば、一実施形態では、図２のレート制御モジュール２４０は、ソース量子化値と量子化比との比をとり、トランスコーディング量子化値を生成する。他の実施形態では、ある条件を満たす場合ソース量子化値に非線形関数を適用すること等の、バッファ占有量あるいはバッファ遅延に基づく他の手段により、トランスコーディング量子化値が決定される。
【００２８】
ステップ４５０では、ステップ４４０で得られたトランスコーディング量子化値が、フレームから選択されたマクロブロックを表現するＤＣＴ係数マトリクスに適用され、ＤＣＴ係数マトリクスを量子化する。ステップ４６０では、ランレングス可変長符号化等を用いて、量子化されたＤＣＴ係数マトリクスが符号化される。ステップ４７０では、符号化されたＤＣＴ係数マトリクスは、次に続くシステムに出力される。ステップ４８０では、符号化されたフレームのマクロブロックのいくつかあるいはすべてに対して、ステップ４１０〜４７０が繰り返される。
【００２９】
次に図５には、方法４００（図４）のステップ４２０が、本発明の少なくとも一実施形態に従って示されている。ステップ４２０は、サブステップ５１０から始まり、そこではビット消費がビット割当量と比較される。ビット割当量がビット消費と等しくない場合、平均ビットレートをターゲットビットレート（すなわちチャネルビットレート）と一致させる試みが、サブセット５１５で行なわれる。少なくとも一実施形態では、ビット割当量と実際のビット消費との誤差を補償するために、初期値が、次の式により調整される。
【数３】
2005510980.tif 000005
【００３０】
ここで、qRatioは、量子化比、qRatioInitは、ステップ４１０（図４）で得られた量子化値の初期値、bitUsedは、ｉ番目の実際の出力フレームのビットサイズ、ｗは、移動窓のサイズ、ｎは符号化されたフレームの数である。ｗの代表的な値は、４〜１２である。ビット割当量すなわちbitBudgetは、次の式で計算される。
【数４】
2005510980.tif 000006
ここで、inBitCntは、ｉ番目の入力フレームデータのビットサイズであり、trcRatioは、図２を参照して説明したトランスコーディング比である。
【００３１】
サブステップ５２０では、ドロップフレームとスケーリングビデオを含むトランスコーディングオプションが評価され、必要ならステップ５２５で補償される。スケーリングの補償は、次の式に従って行なわれる。
【数５】
2005510980.tif 000007
【００３２】
ここで、qRatioは、サブステップ５１０および／または５１５の結果であり、xscaleは、入力水平フレームサイズと出力水平フレームサイズとの比であり、ｙscaleは、入力垂直フレームサイズと出力垂直フレームサイズとの比であり、Zは、１未満の定数である。少なくとも一実施形態では、Zは、0.75+/-0.10である。例えば、入力水平フレームサイズが７０４画素、入力垂直フレームサイズが４８０画素で、他方対応するトランスコードされたフレームの出力水平フレームサイズが３５２画素で、出力垂直フレームサイズが２４０であるとする。このとき、xscaleは、２（704/352）で、yscaleは、２（480/240）となる。また、Zが0.75であれば、補償係数は、約2.83（４の0.75乗）となる。
【００３３】
ドロップフレームフラグは、ソースビデオデータとターゲットビデオデータとのフレーム表示レートの相違を示すために用いられるが、これはまたサブステップ５２０でチェックされる。例えば、ソースビデオデータのフレームレートが６０fpsで、ターゲットビデオデータに対して、ユーザが３０fpsのフレーム表示レートを指示するならば、平均して２フレームごとに１つを間引かなければならない。フレームを間引くと、補償は次の式により行なう。
【数６】
2005510980.tif 000008
【００３４】
ここで、ｑRatioは、前ステップの結果であり、Ｄは、１より大きく２未満の定数である。少なくとも一実施形態では、フレームを1つおきに間引くことに対して、Ｄは1.2である。フレームをまったく間引かない場合は、サブステップ５２０は、サブステップ５３０に続く。
【００３５】
サブステップ５３０では、ビデオバッファの占有量が、最初のインジケータ値Ｘと比較され、量子化比の値が値１．０と比較される。ターゲットビデオバッファの占有量は、ビデオバッファをモデリングすることにより、例えばＶＢＶバッファモデルを用いることにより決定され得ること、またはビデオバッファの特性は、ターゲットシステムから直接得られ得ることが先に説明されている。バッファ占有量が最初のインジケータ値Ｘより小さく、量子化比の値が１．０より大きい場合、量子化比の値は。ステップ５３５で一定値Ｙに設定される。少なくとも一実施形態では、Ｙは１．０である。量子化比を１．０に設定すると、これ以上量子化比の値に変更がなければ、トランスコーディング量子化値はソース量子化値と同一になる。一実施形態では、バッファ占有量の最初のインジケータ値以下、例えばバッファ占有量が最大バッファ容量の７５％以下に収まっている場合、ビデオバッファは、所望の動作パラメータ内にある、または少なくともオーバフローすることはないと想定されるので、量子化比は１．０に設定される。
【００３６】
バッファ占有量が最初のインジケータ値Ｘより大きく、量子化比にこれ以上の変更がないのなら、このことは、量子化レベルを、サブステップ５１５および／または５２５で必要とする高さ（例えば１．０より大きく）に設定して、ターゲットビデオバッファのオーバフローを避けるようにできるということを意味する。１．０より大きな量子化値を用いることは、ソース量子化マトリクス値より小さい量子化マトリクス値を用いることであり、一般にトランスコードされたフレームサイズを増加させるものの、品質を高めることはない（すなわちビットは浪費される）。一実施形態では、ターゲットビデオバッファがオーバフローするリスクがあるときだけ、量子化比を１．０より大きくできるようにする。例えば、バッファ占有量が、その容量の７５％を超えている場合、次のフレームのデータサイズを増加させることにより達成される、ビデオバッファの出力データレートの増加がなければ、ビデオバッファが、オーバフローする可能性があるということを意味している。一実施形態では、次のフレームのデータサイズを、量子化比を増加して増加させ、より低い値の量子化マトリクスを生成し、その結果フレームデータサイズを増加させる。サブステップ５４０では、ビデオバッファの占有量が、第２のインジケータ値Ｚに比較される。一実施形態では、第２のインジケータ値Ｚは、ビデオバッファの最大バッファ容量の２０％＋／−１％の値を含む。ビデオバッファの占有量を表す値が、第２のインジケータ値以下になると、ビデオバッファは、アンダーフローの可能性もつと考えられ、量子化比の値はサブステップ５４５で変更される。一実施形態では、非線形関数がサブステップ５４５の量子化比に適用される。この非線形の式は次のとおりである。
【数７】
2005510980.tif 000009
【００３７】
ここで、Ｘは、第１の一定値であり、Ｙは、第２の一定値であり、Ｗは、ビデオバッファの占有量を表わす値であり、Ｚは、第３の一定値である。一実施形態では、Ｘは０．９、Ｙは１３００、Ｚは３０００である。この場合、量子化比の前回の値が０．８で、ビデオバッファの測定されたデータ量（すなわちビデオバッファの占有量）が９０００であるとすると、量子化比の変更値は、０．６９５となる。バッファ占有量が第２のインジケータ値Ｚより上であれば、ビデオバッファは、所望の動作パラメータ内にあると想定できる。ビデオバッファの占有量とソースビデオデータを量子化するために用いられるソース量子化値とに基づく、トランスコーディング量子化値の変更の結果、ビデオバッファに伝送され記憶されるトランスコードされたフレームのサイズは効果的に変更されて、ビデオバッファのオーバフローおよび／またはアンダーフローを防ぐことができる。なお、Ｘ，Ｙ，Ｚの値は、経験的に導出されたものである。しかしながら、他のいろいろなＸ，Ｙ，Ｚの値がその式に代入されて、他の量子化比を得ることができ、さらに上記式の近似が、テーラー級数あるいは二次近似のような数値解法を介して実行され、同様の結果を得ることができる。上記の基本式の妥当な近似、または計算を簡単にするＸ，Ｙ，Ｚの簡略化した値は、上記の基本量子化式の変形例であることは明らかである。
【００３８】
本実施例のさまざまな機能と部品は、１つのデータプロセッサまたは複数の処理装置のような情報処理機械を用いて実現できる。このデータプロセッサは、マイクロプロセッサ、マイクロコントローラ、マイクロコンピュータ、ディジタル信号処理装置、状態機械、論理回路、および動作指令に基づいてあるいは予め定められた方法で、ディジタル情報を処理する任意の装置のうちの１つまたは任意の組合わせで構成できる。一般にブロック図で表現されたさまざまな機能やシステムは、すでに当業者により明細書にリストアップした実現手段の１以上のものを用いて実現されている。命令を発するデータプロセッサが用いられる場合は、その命令はメモリに記憶される。そのようなメモリは、単一のメモリ装置であっても、複数のメモリ装置であってもよい。メモリ装置は、読出し専用メモリ装置、ランダムアクセスメモリ装置、磁気テープ装置、フロッピーディスクメモリ、ハードディスクメモリ、外部テープ、およびディジタル情報を記憶する任意の装置のうちのいずれかあるいは任意の組合わせであり得る。なお、データプロセッサが、状態機械または論理回路を介して、１以上の機能を実現する場合は、対応する命令を記憶するメモリは、状態機械および／または論理回路を含む回路内に組み込まれることがあり、またその機能は組合わせロジックを用いて行なわれるので、必要とされない場合もある。このような情報処理機械は、コンピュータ、携帯端末、ハンドヘルドコンピュータ、ケーブル・セットトップボックス、携帯電話のようなインターネット利用可能装置等のシステムあるいはシステムの一部であり得る。
【００３９】
これまでの図の詳細な説明において、その一部である添付の図面が参照され、発明が実施された特定の好ましい実施形態が実例として示された。これらの実施形態は、当業者が本発明を実施することができるように、十分詳細に説明されている。また、他の実施形態が使用可能であること、本発明の精神または範囲から逸脱することなく、論理的、機械的、化学的そして電気的な変更が実行可能であることは明らかである。当業者が本発明を実施するために必要としない細部に立ち入ることのないように、当業者にとって公知である情報の説明を省略している。さらに、本発明を含む他の多様な実施形態は、当業者により容易に構成できる。したがって、本発明は、明細書に示された特定の形態に限られるものではなく、逆に、代替例、修正例、および均等例を包含するものである。したがって、先の詳細な説明は、限定する意味はなく、本発明の範囲は、添付の特許請求の範囲により規定される。
【図面の簡単な説明】
【００４０】
【図１】本発明の少なくとも一実施形態によるビデオコンテンツを供給するシステムを示すブロック図である。
【図２】本発明の少なくとも一実施形態によるソース量子化値に基づくトランスコーディング量子化値を決定するエンコーダを示すブロック図である。
【図３】量子化マトリックスに対して量子化比を適用して、量子化マトリックスの値を修正することを示すブロック図である。
【図４】本発明の少なくとも一実施形態によるビデオコンテンツ・トランスコーディング方法を示すフローチャートである。
【図５】本発明の少なくとも一実施形態による量子化比決定方法を示すフローチャートである。
【図１】
2005510980.tif 000013
【図２】
2005510980.tif 000014
【図３】
2005510980.tif 000015
【図４】
2005510980.tif 000016
【図５】
2005510980.tif 000017
【国際調査報告】
2005510980.tif 000018
2005510980.tif 000019
2005510980.tif 000020