(57)【要約】【課題】ソフトウェアの開発効率およびソフトウェアの品質を向上させるメディア処理方法およびメディア処理プログラムを提供する。【解決手段】本発明のメディア処理方法は、複数のプログラムモジュールをプロセッサに実行させることにより、メディア処理を行うメディア処理方法であっ て、第１階層の第１プログラムモジュールを実行することによって、メディアデータの入出力を制御し、１以上の呼び出し時刻を決定し、当該時刻に第２階層の １以上の第２プログラムモジュールを呼び出す第１ステップと、第２階層の第２プログラムモジュールを実行することによって、前記メディアデータを対してメ ディア処理の構成要素であるデータ変換をプロセッサに実行させる第２ステップとを有する。【選択図】図２
2010146575.tif 000002
【特許請求の範囲】
【請求項１】
複数のプログラムモジュールをプロセッサに実行させることにより、メディア処理を行うメディア処理方法であって、
第１階層の第１プログラムモジュールを実行することによって、メディアデータの入出力を制御し、１以上の呼び出し時刻を決定し、当該時刻に第１階層より下の第２階層の１以上の第２プログラムモジュールを呼び出す第１ステップと、
第２階層の第２プログラムモジュールを実行することによって、前記メディアデータに対してメディア処理の構成要素であるデータ変換をプロセッサに実行させる第２ステップと
を有することを特徴とするメディア処理方法。
【請求項２】
前記第１プログラムモジュールは、第１から第４プログラムセグメントを含み、
前記第１ステップは、
第１プログラムセグメントを実行することによって、第１階層より上の階層のホストプログラムからのコマンドを解析するコマンド処理ステップと、
第２プログラムセグメントを実行することによって、解析されたコマンドに従って第３プログラムセグメントの動作タイミングと、１以上の前記呼び出し時刻とを決定するタイミング決定ステップと、
第３プログラムセグメントを実行することによって、前記動作タイミングに従ってメディアデータの入出力を制御する入出力制御ステップと、
第４プログラムセグメントを実行することによって、１以上の呼び出し時刻に第２プログラムモジュールを呼び出す第１呼び出しステップと
を含むことを特徴とする請求項１記載のメディア処理方法。
【請求項３】
第１プログラムセグメントは、第１のアプリケーション・プログラム・インタフェースを介して、メディア処理の開始、停止または一時停止を指示する前記コマンドを受ける
ことを特徴とする請求項２記載のメディア処理方法。
【請求項４】
前記第２プログラムモジュールは、第５から第７プログラムセグメントを含み、
前記第２ステップは、
第５プログラムセグメントを実行することによって、第１のプログラムモジュールから処理対象のデータを受信するステップと、
第６プログラムセグメントを実行することによって、受信された処理対象データに対してメディア処理を行うステップと、
第７プログラムセグメントを実行することによって、前記メディア処理によるデータ変換結果を、第１プログラムモジュールに送信する送信ステップと
を含むことを特徴とする請求項１記載のメディア処理方法。
【請求項５】
前記第１プログラムモジュールは、第１から第４プログラムセグメントを含み、
前記第１ステップは、
第１プログラムセグメントを実行することによって、第１階層より上の階層のホストプログラムからのコマンドを解析するコマンド処理ステップと、
第２プログラムセグメントを実行することによって、解析されたコマンドがオーディオ再生を指示する場合に、第３プログラムセグメントの動作タイミングと、１以上の前記呼び出し時刻とを決定するタイミング決定ステップと、
第３プログラムセグメントを実行することによって、前記動作タイミングに従って符号化オーディオデータの入力と復号化オーディオデータの出力とを制御する入出力制御ステップと、
第４プログラムセグメントを実行することによって、１以上の呼び出し時刻に第２プログラムモジュールを呼び出す第１呼び出しステップと
を含むことを特徴とする請求項１記載のメディア処理方法。
【請求項６】
前記第１プログラムモジュールは、第１から第４プログラムセグメントを含み、
前記第１ステップは、
第１プログラムセグメントを実行することによって、第１階層より上の階層のホストプログラムからのコマンドを解析するコマンド処理ステップと、
第２プログラムセグメントを実行することによって、解析されたコマンドがオーディオ録音を指示する場合に、第３プログラムセグメントの動作タイミングと、１以上の前記呼
び出し時刻とを決定するタイミング決定ステップと、
第３プログラムセグメントを実行することによって、前記動作タイミングに従ってオーディオデータの入力と符号化オーディオデータの出力とを制御する入出力制御ステップと、
第４プログラムセグメントを実行することによって、１以上の呼び出し時刻に第２プログラムモジュールを呼び出す第１呼び出しステップと
を含むことを特徴とする請求項１記載のメディア処理方法。
【請求項７】
前記第２プログラムモジュールは、第５から第７プログラムセグメントを含み、
前記第２ステップは、
第５プログラムセグメントを実行することによって、第１のプログラムモジュールから複数種類のデータを受信するステップと、
第６プログラムセグメントを実行することによって、受信された複数種類のデータに対して、多重化処理を行うステップと、
第７プログラムセグメントを実行することによって、前記多重化処理による多重化データを、第１プログラムモジュールに送信する送信ステップと
を含むことを特徴とする請求項２記載のメディア処理方法。
【請求項８】
前記第２プログラムモジュールは、第５から第７プログラムセグメントを含み、
前記第２ステップは、
第５プログラムセグメントを実行することによって、第１のプログラムモジュールから多重化データを受信するステップと、
第６プログラムセグメントを実行することによって、受信された多重化データに対して、多重分離処理を行うステップと、
第７プログラムセグメントを実行することによって、前記多重分離処理による複数種類のデータを、第１プログラムモジュールに送信する送信ステップと
を含むことを特徴とする請求項２記載のメディア処理方法。
【請求項９】
前記第１プログラムモジュールは、第１から第４プログラムセグメントを含み、
前記第１ステップは、
第１プログラムセグメントを実行することによって、第１階層より上の階層のホストプログラムからのコマンドを解析するコマンド処理ステップと、
第２プログラムセグメントを実行することによって、解析されたコマンドがビデオ再生を指示する場合に、第３プログラムセグメントの動作タイミングと、１以上の前記呼び出し時刻とを決定するタイミング決定ステップと、
第３プログラムセグメントを実行することによって、前記動作タイミングに従って多重化データの入力とオーディオデータおよびビデオデータの出力とを制御する入出力制御ステップと、
第４プログラムセグメントを実行することによって、前記１つ以上の呼び出し時刻に基づいて、多重化データの分離用の第２プログラムモジュール、ビデオ再生用の第２プログラムモジュールおよびオーディオ再生用の第２プログラムモジュールを呼び出す第１呼び出しステップと
を含むことを特徴とする請求項１記載のメディア処理方法。
【請求項１０】
前記第１プログラムモジュールは、第１から第４プログラムセグメントを含み、
前記第１ステップは、
第１プログラムセグメントを実行することによって、第１階層より上の階層のホストプログラムからのコマンドを解析するコマンド処理ステップと、
第２プログラムセグメントを実行することによって、解析されたコマンドがビデオ録画を指示する場合に、第３プログラムセグメントの動作タイミングと、１以上の前記呼び出
し時刻とを決定するタイミング決定ステップと、
第３プログラムセグメントを実行することによって、前記動作タイミングに従ってオーディオデータおよびビデオデータの入力と多重化データの出力とを制御する入出力制御ステップと、
第４プログラムセグメントを実行することによって、前記１つ以上の呼び出し時刻に基づいて、ビデオ録画用の第２プログラムモジュール、オーディオ再生用の第２プログラムモジュールおよび多重化用の第２プログラムモジュールを呼び出す第１呼び出しステップと
を含むことを特徴とする請求項１記載のメディア処理方法。
【請求項１１】
メディア処理を行うためにプロセッサに実行されるプログラムであって、
メディアデータの入出力を制御し、１以上の呼び出し時刻を決定し、当該呼び出し時刻に第１階層より下の第２階層に属する１以上第２プログラムモジュールを呼び出す第１階層の第１プログラムモジュールと、
前記メディアデータに対してメディア処理を構成要素であるデータ変換をプロセッサに実行させる第２階層の１以上の第２プログラムモジュールと
を含むことを特徴とするコンピュータ読取可能なプログラム。
【請求項１２】
前記第１プログラムモジュールは、第１から第４プログラムセグメントを含み、
第１プログラムセグメントは、第１階層より上の階層のホストプログラムからのコマンドを解析し、
第２プログラムセグメントは、第３プログラムセグメントおよび第４プログラムセグメントの動作タイミングを決定し、
第３プログラムセグメントは、前記動作タイミングに従ってメディアデータの入出力を制御し、
第４プログラムセグメントは、前記動作タイミングに従って第２プログラムモジュールを呼び出す
ことを特徴とする請求項１１記載のコンピュータ読取可能なプログラム。
【請求項１３】
第１プログラムセグメントは、第１のアプリケーション・プログラム・インタフェースを介して、メディア処理の開始、停止または一時停止を指示する前記コマンドを受ける
ことを特徴とする請求項１２記載のコンピュータ読取可能なプログラム。
【請求項１４】
前記第２プログラムモジュールは、第５から第７プログラムセグメントを含み、
第５プログラムセグメントは、第１のプログラムモジュールから処理対象のデータを受信し、
第６プログラムセグメントは、受信された処理対象データに対してメディア処理を行い、
第７プログラムセグメントは、前記メディア処理によるデータ変換結果を、第１プログラムモジュールに送信する
ことを特徴とする請求項１３記載のコンピュータ読取可能なプログラム。
【請求項１５】
オーディオ再生装置であって、
メディア処理を行うメディアプロセッサと、
符号化オーディオデータを蓄積する蓄積部と、
前記蓄積部から符号化オーディオデータを読み取る読み取り部と、
ユーザから指示を受け付ける受け付け部と、
前記受け付け部によって受け付けられた指示に基づいてオーディオ再生の開始を前記メ
ディアプロセッサに指示する制御部と、
前記メディアプロセッサにより生成された復号化オーディオデータを外部に出力する出力部とを備え、
前記メディアプロセッサは、
（ａ）第１階層の第１プログラムモジュールを実行することによって、前記読み取り部によって読み出された符号化オーディオデータの入力と前記出力部への復号化オーディオデータの出力とを制御し、１以上の呼び出し時刻を決定し、当該時刻に第１階層より下の第２階層の１以上の第２プログラムモジュールを呼び出し、
（ｂ）呼び出された第２プログラムモジュールを実行することによって、単位時間あたりの符号化オーディオデータを復号化オーディオデータに変換するメディア処理を行う
ことを特徴とするオーディオ再生装置。
【請求項１６】
オーディオ録音装置であって、
メディア処理を行うメディアプロセッサと、
符号化オーディオデータを蓄積するための蓄積部と、
外部からオーディオデータを取得する取得部と、
ユーザから指示を受け付ける受け付け部と、
前記受け付け部によって受け付けられた指示に基づいてオーディオ録音の開始を前記メディアプロセッサに指示する制御部と、
メディアプロセッサにより生成された符号化オーディオデータを前記蓄積部に書き込む書き込み部とを備え、
前記メディアプロセッサは、
（ａ）第１階層の第１プログラムモジュールを実行することによって、前記取得部に取得されたオーディオデータの入力と前記書き込み部への符号化オーディオデータの出力とを制御し、１以上の呼び出し時刻を決定し、当該時刻に第１階層より下の第２階層の１以上の第２プログラムモジュールを呼び出し、
（ｂ）呼び出された第２プログラムモジュールを実行することによって、単位時間あたりのオーディオデータを符号化オーディオデータに変換するメディア処理を行う
ことを特徴とするオーディオ録音装置。
【請求項１７】
ビデオ再生装置であって、
メディア処理を行うメディアプロセッサと、
符号化ビデオデータを蓄積する蓄積部と、
前記蓄積部から符号化ビデオデータを読み取る読み取り部と、
ユーザから指示を受け付ける受け付け部と、
前記受け付け部によって受け付けられた指示に基づいてビデオ再生の開始を前記メディアプロセッサに指示する制御部と、
前記メディアプロセッサにより生成された復号化ビデオデータを外部に出力する出力部とを備え、
前記メディアプロセッサは、
（ａ）第１階層の第１プログラムモジュールを実行することによって、前記読み取り部によって読み出された符号化ビデオデータの入力と前記出力部への復号化ビデオデータの出力とを制御し、１以上の呼び出し時刻を決定し、当該時刻に第１階層より下の第２階層の１以上の第２プログラムモジュールを呼び出し、
（ｂ）呼び出された第２プログラムモジュールを実行することによって、単位時間あたりの符号化ビデオデータを復号化ビデオデータに変換するメディア処理を行う
ことを特徴とするビデオ再生装置。
【請求項１８】
ビデオ録画装置であって、
メディア処理を行うメディアプロセッサと、
符号化ビデオデータを蓄積するための蓄積部と、
外部からビデオデータを取得する取得部と、
ユーザから指示を受け付ける受け付け部と、
前記受け付け部によって受け付けられた指示に基づいてビデオ録画の開始を前記メディアプロセッサに指示する制御部と、
メディアプロセッサにより生成された符号化ビデオデータを前記蓄積部に書き込む書き込み部とを備え、
前記メディアプロセッサは、
（ａ）第１階層の第１プログラムモジュールを実行することによって、前記取得部に取得されたビデオデータの入力と前記書き込み部への符号化ビデオデータの出力とを制御し、１以上の呼び出し時刻を決定し、当該時刻に第１階層より下の第２階層の１以上の第２プログラムモジュールを呼び出し、
（ｂ）呼び出された第２プログラムモジュールを実行することによって、単位時間あたりのビデオデータを符号化ビデオデータに変換するメディア処理を行う
ことを特徴とするビデオ録画装置。
【請求項１９】
ビデオ再生装置であって、
メディア処理を行うメディアプロセッサと、
第１および第２符号化ビデオデータを蓄積する蓄積部と、
前記蓄積部から第１および第２符号化ビデオデータを読み取る読み取り部と、
ユーザから指示を受け付ける受け付け部と、
前記受け付け部によって受け付けられた指示に基づいて、第１および第２符号化ビデオデータの再生の開始を前記メディアプロセッサに指示する制御部と、
前記メディアプロセッサにより生成された第１および第２復号化ビデオデータを外部に出力する出力部とを備え、
前記メディアプロセッサは、
（ａ）第１階層の第１プログラムモジュールを実行することによって、前記読み取り部によって読み出された第１符号化ビデオデータの入力と前記出力部への第１復号化ビデオデータの出力とを制御し、１以上の呼び出し時刻を決定し、当該時刻に第１階層より下の第２階層の１以上の第２プログラムモジュールを呼び出し、
（ｂ）呼び出された第２プログラムモジュールを実行することによって、単位時間あたりの第１符号化ビデオデータを第１復号化ビデオデータに変換するメディア処理を行い、
（ｃ）第１階層の第４プログラムモジュールを実行することによって、前記読み取り部によって読み出された第２符号化ビデオデータの入力と前記出力部への第２復号化ビデオデータの出力とを制御し、１以上の呼び出し時刻を決定し、当該時刻に第１階層より下の第２階層の１以上の第５プログラムモジュールを呼び出し、
（ｄ）呼び出された第５プログラムモジュールを実行することによって、
単位時間あたりの第２符号化ビデオデータを第２復号化ビデオデータに変換するメディア処理を行う
ことを特徴とするビデオ再生装置。
【請求項２０】
複数のプログラムモジュールをプロセッサに実行させることにより、リアルタイム処理を行うリアルタイム処理方法であって、
第１階層の第１プログラムモジュールを実行することによって、時間管理を行い、第１階層より下の第２階層の第2プログラムモジュールを呼び出す第１ステップと、
第２階層の第２プログラムモジュールを実行することによって、単位時間あたりのデータへの処理を行う第２ステップと、
を有することを特徴とするリアルタイム処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＡＶデータの復号化処理または符号化処理を含むメディア処理をコンピュータに実行させるメディア処理方法、メディア処理プログラムに関する。
【背景技術】
【０００２】
近年、ＡＶデータの復号化処理や符号化処理を含むメディア処理を実行する種々のデジタル家電機器が製品化されている。
【０００３】
メディア処理を行うためのＤＳＰを制御するソフトウェアモジュールをライブラリ化して利用する技術がある（例えば非特許文献１）。図１は、従来技術におけるＤＳＰを制御するメディア処理用ソフトウェアの構成を示すブロック図である。同図において、このソフトウェアは、時間管理モジュール５０１、メディア処理制御モジュール５０２、データ変換処理ライブラリ５０４を含む。データ変換処理ライブラリ５０４は、複数のライブラリモジュールを含む。各ライブラリモジュールは、オーディオ符号化／復号化、オーディオフィルタ処理、画像符号化／復号化などを所定のデータ単位で処理する。メディア処理制御モジュール５０２は、データ変換ＡＰＩを介して、必要なライブラリモジュールを組み合わせて呼び出すことにより各種メディア処理を実行させる。時間管理モジュール５０１は、リアルタイム性を確保するために、メディア処理制御モジュール５０２によるライブラリモジュールの呼び出し時刻を管理する。
【０００４】
これによれば、汎用的なメディア処理の単位をライブラリモジュール化することによりソフトウェアの再利用化を可能にする。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】Texas Instruments Incorporated, “TMS320 DSP Algorithm Standard Rules and Guidelines (Rev. E)”, 17 Oct 2002
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記従来技術によれば、デジタルテレビ、携帯端末、デジタルカメラ、デジタルムービー、ＤＶＤレコーダ、ホームサーバなど異なる製品に対しては、ライブラリモジュールより上位のソフトウェアモジュールを製品毎に個別に開発する必要があり、開発効率が悪いという問題がある。
【０００７】
また、仕様変更に対しても製品個別に対応する必要があるので、ソフトウェアの品質を保証することが困難であるという問題がある。各製品での仕様変更には、次のような要因が考えられる。
【０００８】
（ａ）ユーザの要望に応じ、再生/停止のようなマクロレベル制御や、１フレーム/１画像デコードのようなミクロレベル制御といった制御粒度を変更する場合、（ｂ）アプリケーション機能やAVシステム構成に応じて、機能(特殊再生、AV再生中撮像等)を追加/変更した場合や、システム制御方式（AV同期、外部入出力制御など）を変更する場合、（ｃ）規格バージョンアップやアルゴリズム改善等による、信号処理方式の変更・追加する場合、（ｄ）低コスト化、処理効率化、他ハードウェア流用などにより機能の一部をハードウェア化する場合。
【０００９】
本発明は、ソフトウェアの開発効率およびソフトウェアの品質を向上させるメディア処理方法およびメディア処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記課題を解決するため本発明のメディア処理方法は、複数のプログラムモジュールをプロセッサに実行させることにより、メディア処理を行うメディア処理方法であって、第１階層の第１プログラムモジュールを実行することによって、メディアデータの入出力を制御し、１以上の呼び出し時刻を決定し、当該時刻に第１階層より下の第２階層の１以上の第２プログラムモジュールを呼び出す第１ステップと、第２階層の第２プログラムモジュールを実行することによって、第２階層より下の第３階層の１以上の第３プログラムモジュールを呼び出す第２ステップと、第３階層の第３プログラムモジュールを実行することによって、前記メディアデータに対してメディア処理の最小構成要素であるデータ変換処理をプロセッサに実行させる第３ステップとを有する。
【００１１】
この構成によれば、メディア処理方法を実現するソフトウェアの開発効率を向上することができる。すなわち、階層毎に、役割、機能、制御レベル、インタフェースを標準化することにより、ソフトウェアモジュールの流用性を拡大する。これにより開発されたソフトウェアモジュールの再利用性を高め、モバイルからサーバといった各種の製品を広くターゲットしてソフトウェアの開発効率を向上させることができる。
【００１２】
さらに、上記ソフトウェアの設計品質を向上させることができる。すなわち、階層化によりソフトウェア設計思想を明確化・共通化することにより、ソフトウェアの理解容易性を高める。また、標準化されたソフトウェア構造を再利用することで、設計品質を向上させることができる。
【００１３】
ここで、前記第１プログラムモジュールは、第１から第４プログラムセグメントを含み、前記第１ステップは、第１プログラムセグメントを実行することによって、第１階層より上の階層のホストプログラムからのコマンドを解析するコマンド処理ステップと、第２プログラムセグメントを実行することによって、解析されたコマンドに従って第３プログラムセグメントの動作タイミングと、１以上の前記呼び出し時刻とを決定するタイミング決定ステップと、第３プログラムセグメントを実行することによって、前記動作タイミングに従ってメディアデータの入出力を制御する入出力制御ステップと、第４プログラムセグメントを実行することによって、１以上の呼び出し時刻に第２プログラムモジュールを呼び出す第１呼び出しステップとを含むようにしてもよい。
【００１４】
ここで、第１プログラムセグメントは、第１のアプリケーション・プログラム・インタフェースを介して、メディア処理の開始、停止または一時停止を指示する前記コマンドを受けるようにしてもよい。
【００１５】
ここで、前記第２プログラムモジュールは、第５から第７プログラムセグメントを含み、前記第２ステップは、第５プログラムセグメントを実行することによって、第１のプログラムモジュールから処理対象のデータを受信するステップと、第６プログラムセグメントを実行することによって、受信された処理対象データに対して１つ以上の第３プログラムモジュールを順次呼び出す第２呼び出しステップと、第７プログラムセグメントを実行することによって、呼び出された第３プログラムモジュールからデータ変換結果を、第１プログラムモジュールに送信する送信ステップとを含むようにしてもよい。
【００１６】
ここで、第２ステップにおいて、第２のプログラムモジュールを実行することによって、入力データに対して１つ以上の第３プログラムモジュールを順次呼び出して、その結果を第１のプログラムモジュールに返し、第１ステップにおいて、第１のプログラムモジュールを実行することによって、第２のプログラムモジュールから返されたデータの出力を制御するようにしてもよい。
【００１７】
ここで、前記第１呼び出しステップにおいて、前記１つ以上の第３プログラムモジュールを指定するようにしてもよい。
【００１８】
ここで、前記第１呼び出しステップにおいて、前記１つ以上の第３プログラムモジュールの動作パラメータを指定するようにしてもよい。
【００１９】
ここで、前記第１呼び出しステップにおいて、前記１つ以上の第３プログラムモジュールの実行順序を指定するようにしてもよい。
【００２０】
上記構成によれば、各種製品における変更に対して、柔軟に対応でき、プログラムモジュールの流用性を高めることができる。例えば、制御粒度の変更に容易に対応することができる。つまり、再生/停止のようなマクロレベル制御や、１フレーム/１画像デコードのようなミクロレベル制御といった制御粒度毎に容易に変更することができる。
【００２１】
また、ホストとなるアプリケーションの機能やシステム構成に依存する制御方式の変更にも容易に対応することができる。アプリケーション機能やシステム構成に応じて、機能(特殊再生、AV再生中撮像等)を追加/変更した場合や、システム制御方式（ＡＶ同期、外部入出力制御など）を変更した場合の影響を局所化できる。
【００２２】
さらに、ＡＶ符号化の規格やＡＶ信号処理方式の変更や追加に容易に対応することができる。つまり、規格バージョンアップやアルゴリズム改善等による、信号処理方式の変更・追加の影響を局所化できる。
【００２３】
また、一部の機能のハードウェア化に容易に対応することができる。低コスト化、処理効率化、他のハードウェアへの流用などにより、一部の機能をハードウェア化した場合に対応するソフトウェアの影響を、一部の機能に対応するプログラムモジュールに局所化することができ、ソフトウェアの変更を最小限に抑えることができる。
【００２４】
また、本発明のプログラムは、メディア処理を行うためにプロセッサに実行されるプログラムであって、メディアデータの入出力を制御し、１以上の呼び出し時刻を決定し、当該呼び出し時刻に第１階層より下の第２階層に属する１以上第２プログラムモジュールを呼び出す第１階層の第１プログラムモジュールと、第２階層より下の第３階層の１以上の第３プログラムモジュールを呼び出す第２階層の第２プログラムモジュールと、前記メディアデータに対してメディア処理を構成要素であるデータ変換をプロセッサに実行させる第３階層の１以上の第３プログラムモジュールとを含む。
【発明の効果】
【００２５】
以上のように本発明のメディア処理方法およびプログラムによれば、メディア処理方法を実現するソフトウェアの開発効率を向上することができる。また、ソフトウェアの設計品質を向上させることができる。各種製品における変更に対して、柔軟に対応でき、プログラムモジュールの流用性を高めることができる。
【図面の簡単な説明】
【００２６】
【図１】図１は、従来技術におけるＤＳＰを制御するメディア処理用ソフトウェアの構成を示すブロック図である。
【図２】図２は、実施の形態におけるメディア処理用システムＬＳＩの構成を示すブロック図である。
【図３Ａ】図３Ａは、メディアプロセッサを制御するソフトウェアの構成を示すブロック図である。
【図３Ｂ】図３Ｂは、メディアプロセッサを制御するソフトウェアの構成の一例を示すブロック図である。
【図４】図４は、メディアモジュール層のプログラムモジュールの構成を示すブロック図である。
【図５】図５は、メディアコントローラ層のプログラムモジュールの構成を示すブロック図である。
【図６】図６は、メディアモジュール層のプログラムモジュール（オーディオ再生ＭＭ）の構成例を示すブロック図である。
【図７】図７は、メディアコントローラ層のプログラムモジュール（オーディオ再生ＭＣ）の構成例を示すブロック図である。
【図８】図８は、メディアモジュール層のプログラムモジュール（オーディオ録音ＭＭ）の構成例を示すブロック図である。
【図９】図９は、メディアコントローラ層のプログラムモジュール（オーディオ録音ＭＣ）の構成例を示すブロック図である。
【図１０】図１０は、メディアコントローラ層のプログラムモジュール（多重化ＭＣ）の構成例を示すブロック図である。
【図１１】図１１は、メディアコントローラ層のプログラムモジュール（多重分離ＭＣ）の構成例を示すブロック図である。
【図１２】図１２は、メディアモジュール層のプログラムモジュール（ビデオ再生ＭＭ）の構成例を示すブロック図である。
【図１３】図１３は、メディアコントローラ層のプログラムモジュール（ビデオ再生ＭＣ）の構成例を示すブロック図である。
【図１４】図１４は、メディアモジュール層のプログラムモジュール（ビデオ録画ＭＭ）の構成例を示すブロック図である。
【図１５】図１５は、メディアコントローラ層のプログラムモジュール（ビデオ録画ＭＣ）の構成例を示すブロック図である。
【図１６】図１６は、本発明のメディア処理方法を適用した家電製品の具体例を示す図である。
【図１７】図１７は、本発明のメディア処理方法を適用したオーディオ再生装置の構成を示すブロック図である。
【図１８】図１８は、本発明のメディア処理方法を適用したオーディオ録音装置の構成を示すブロック図である。
【図１９】図１９は、本発明のメディア処理方法を適用したビデオ再生装置の構成を示すブロック図である。
【図２０】図２０は、本発明のメディア処理方法を適用したビデオ録画装置の構成を示すブロック図である。
【図２１】図２１は、本発明のメディア処理方法を適用したビデオ再生装置の構成を示すブロック図である。
【発明を実施するための形態】
【００２７】
本発明の実施の形態におけるメディア処理方法、装置およびプログラムについて説明する。まず、メディア処理を行うハードウェア構成について説明する。
【００２８】
図２は、実施の形態におけるメディア処理用システムＬＳＩの構成を示すブロック図である。同図においてシステムＬＳＩ１０は、ＣＰＵ１１、メディアプロセッサ１２、ストリームＩ／Ｏ部１３、メモリ制御部１４、ＡＶＩ／Ｏ部１５を備える。
【００２９】
ＣＰＵ１１は、システムＬＳＩ１０の外部とのコマンド送受信、メディアプロセッサ１２の制御などシステムＬＳＩ１０全体を制御する。メディアプロセッサ１２は、ＣＰＵ１１の制御の下でメディア処理を行う。メディア処理は、音声の符号化処理、音声の復号化処理、動画像の符号化処理、動画像の復号化処理、テレビ電話処理などを含む。ストリームＩ／Ｏ部１３は、ストリームデータを入出力する。ストリームデータの入出力は、例えば、外部のチューナ２１からのストリームデータ入力や、光ディスク２２、ハードディスク２３またはメモリカード２４とのストリーム入出力などである。メモリ制御部１４は、メモリ１６へのアクセスを制御する。ＡＶＩ／Ｏ部１５は、ＡＶ(Audio、Video)データを入出力する。ＡＶデータの入出力は、例えば、ディスプレイ２５へのＡＶデータ出力、カメラ２６からのＡＶデータ入力などである。メモリ１６は、ＣＰＵ１１およびメディアプロセッサ１２のソフトウェアや、ＡＶデータ、ストリームデータ、メディア処理中の中間データなどを記憶する。
【００３０】
図３Ａは、メディアプロセッサ１２を制御するソフトウェアの構成例を示すブロック図である。このソフトウェアは、メディアプロセッサ１２でのメディア処理を実現するプログラムであり、メディアモジュール層、メディアコントローラ層、メディアライブラリ層の３階層に分かれる。ここで、階層は、ある機能を実現し上位層にそのインタフェースを提供するプログラムモジュールの集合体である。階層間は明確なＡＰＩ（Application Programming Interface）で分離される。同図における階層間のＡＰＩを、機器制御レベルＡＰＩ１００、メディアデータ変換ＡＰＩ２００、単純データ変換ＡＰＩ３００と呼ぶ。同図におけるメディアモジュール層は、ＭＭ（Media Module）層プログラムモジュール１０１を含む。メディアコントローラ層は、ＭＣ（Media Controller）層プログラムモジュール２０１ａ、２０２ｂを含む。メディアライブラリ層は、ＭＬ（Media Library）層プログラムモジュール３０１ａ〜３０１ｆを含む。
【００３１】
メディアモジュール層は、メディアコントローラ層を利用してＡＶ再生、ＴＶ電話、オーディオ録音など独立したメディア処理機能を実現する。メディアモジュール層は、１つ以上のＭＭ層プログラムモジュール（単に、メディアモジュール（ＭＭ）とも呼ぶ。）を含む。
【００３２】
ＭＭ層プログラムモジュール１０１は、ＣＰＵ１１とのインタフェース、メディアコントローラ層の起動タイミング制御によるリアルタイム処理保証、外部入出力等の機能を実現する。ＭＭ層プログラムモジュール１０１には、例えば図３Ｂに示すように、オーディオ再生のためのＭＭ層プログラムモジュール（オーディオ再生メディアモジュールと呼ぶ。）、ＡＶデータの再生のためのＭＭ層プログラムモジュール（ＡＶ再生メディアモジュールと呼ぶ。）、音声通話のためのＭＭ層プログラムモジュール（音声通話メディアモジュールと呼ぶ。）等がある。
【００３３】
メディアコントローラ層は、メディアライブラリ層を利用して、オーディオ、ビデオなどドメイン毎に定義される基本メディア処理機能をメディアモジュール層に提供する。メディアコントローラ層は、１つ以上のＭＣ層プログラムモジュール（単に、メディアコントローラ（ＭＣ）とも呼ぶ。）を含む。
【００３４】
ＭＣ層プログラムモジュール２０１ａ、２０２ｂは、それぞれ、メディアライブラリ間のシーケンス制御、排他制御、資源管理等を行う。また、メディアライブラリ毎の違いを吸収し、メディアモジュール層に対して統一したインタフェースを提供する。ＭＣ層プログラムモジュールには、例えば図３Ｂに示すように、オーディオ再生のためのＭＣ層プログラムコントローラ（オーディオ再生メディアコントローラと呼ぶ。）、ＡＶデータの再生のためのＭＣ層プログラムコントローラ（ＡＶ再生メディアコントローラと呼ぶ。）、音声通話のためのＭＣ層プログラムコントローラ（音声通話メディアコントローラと呼ぶ。）等がある。
【００３５】
メディアライブラリ層は、コーデック、フィルタなどそれ自体で独立した最小限のメディア処理機能を実現する。ＭＬ層プログラムモジュール３０１ａ〜３０１ｆ等は、この最小限のメディア処理機能をメディアプロセッサにより実現する。この最小限のメディア処理機能は、本実施形態におけるメディア処理機能の最小単位である。ＭＬ層プログラムモジュールには、例えば図３Ｂに示すように、ＡＡＣオーディオデコードのためのＭＬ層プログラムライブラリ（ＡＡＣデコードメディアライブラリと呼ぶ。）、ＭＰＥＧ２のＡＶデータの再生のためのＭＬ層プログラムライブラリ（ＭＰＥＧ２デコードメディアライブラリと呼ぶ。）、音声通話のためのＭＬ層プログラムコントローラ（Ｇ．７２６メディアライブラリと呼ぶ。）等がある。
【００３６】
図４は、メディアモジュール層のプログラムモジュールの構成を示すブロック図である。ＭＭ層の全てのプログラムモジュールは、制御粒度およびＡＰＩが統一化されているので、同図では複数種類のＭＭ層プログラムモジュール１０１の代表的な構成を示す。ＭＭ層プログラムモジュール１０１は、コマンド処理部１０２、時間管理部１０３、データ入出力制御部１０４、メディアデータ変換制御部１０５を含む。
【００３７】
コマンド処理部１０２は、メディア処理機能をホストが利用するためのインタフェースを提供する。具体的には、ホストＣＰＵアプリケーションとの間のコマンド・データの送受信処理、コマンド解析、メディアモジュールの状態管理、ホストＣＰＵ−メディアプロセッサ間の制御パラメータ管理を行う。また、上に述べたとおりＭＭ層プログラムモジュール１０１は、メディア処理の開始、停止または一時停止などの粗い粒度の非リアルタイム制御を基本とする。コマンド処理部１０２は、非リアルタイムなホストとの通信を取り扱い、下位層のリアルタイム処理と分離する。これにより、ホストからのコマンド、制御タイミングの変更が生じた際の影響をコマンド処理部１０２で吸収し、下位層への影響を軽減することができる。言い換えれば、ホストからコマンド処理部１０２へのＡＰＩは、システムＬＳＩが実装されるシステムに依存して変化し得る。この場合でも、コマンド処理部１０２から時間管理部１０３へのインタフェースはシステム要件が同一であれば変化しない。
【００３８】
時間管理部１０３は、コマンド処理部１０２により解析されたコマンドに従ってデータ入出力制御部１０４の動作タイミングを決定し、メディアデータ変換制御部１０５からのＭＣ層プログラムモジュール２０１の呼び出しについて、その呼び出し時刻を決定する。この呼び出し時刻は、フレームの周期毎の時刻である。ここで、フレームは、ビデオデータでは動画を構成する１枚の画像であり、オーディオデータでは、所定数（例えば１０２４）のサンプリングデータの集まりをいう。これにより、時間管理部１０３は、データ入出力制御部１０４およびメディアデータ変換制御部１０５の動作タイミングを制御してリアルタイム性を保証する。また、時間管理部１０３は、ＡＶ再生などのように、要求されるメディア処理機能がオーディオ、ビデオなど複数の分野に跨る場合には、これら複数分野間を同期させる。
【００３９】
データ入出力制御部１０４は、時間管理部１０３に決定された動作タイミングに従って、ＭＣ層プログラムモジュール２０１へのメディアデータの入出力を制御する。例えば、ＭＭ層プログラムモジュール１０１がオーディオ再生メディアモジュールである場合には、データ入出力制御部１０４は、ストリームＩ／Ｏ部１３からオーディオ再生メディアモジュールへの符号化オーディオデータの入力と、オーディオ再生メディアモジュールからＡＶＩ／Ｏ部１５への復号化オーディオデータの出力とを制御する。
【００４０】
メディアデータ変換制御部１０５は、時間管理部１０３に決定された呼び出し時刻にＭＣ層プログラムモジュール２０１を呼び出す。例えば、ＭＭ層プログラムモジュール１０１がＡＶデータ再生メディアモジュールである場合には、図１２に示すように、メディアデータ変換制御部１０５はストリームからオーディオデータとビデオデータとを分離するための分離用ＭＣ層プログラムモジュール２０１ｆ、オーディオ再生用のＭＣ層プログラムモジュール２０１ｃ、ビデオ再生ＭＣプログラムモジュール２０１ｉを呼び出す。
【００４１】
図５は、メディアコントローラ層のプログラムモジュールの構成を示すブロック図である。ＭＣ層の全てのプログラムモジュールは、制御粒度およびＡＰＩが統一化されているので、同図では複数種類のＭＣ層プログラムモジュール２０１の代表的な構成を示す。このＭＣ層プログラムモジュール２０１は、データ受信部２０２、データ送信部２０３、パラメータ受信部２０４、メディアデータ変換部２０５を備える。
【００４２】
データ受信部２０２は、ＭＭ層プログラムモジュール１０１から処理対象の入力データを受信する。
【００４３】
データ送信部２０３は、ＭＬ層プログラムモジュール３０１からのデータ変換結果を出力データとしてＭＭ層プログラムモジュール１０１に送信する。
【００４４】
パラメータ受信部２０４は、複数のＭＬ層プログラムモジュール３０１の指定、その呼び出し順序の指定、各ＭＬ層プログラムモジュール３０１の動作パラメータの指定などをＭＭ層プログラムモジュール１０１から受信する。
【００４５】
メディアデータ変換部２０５は、データ受信部２０２によって受信された入力データを処理するように複数種類のＭＬ層プログラムモジュール３０１ｇ〜３０１ｉなどを順次呼び出し、最終的なデータ処理結果をデータ送信部２０３に渡す。その際、各ＭＬ層プログラムモジュール３０１の処理結果は、次に呼び出されるＭＬ層プログラムモジュール３０１に引き渡される。例えば、ＭＣ層プログラムモジュール２０１がオーディオ再生メディアコントローラ２０１ｃである場合、図７に示すように、オーディオ復号化処理モジュールライブラリ３０１ｊ、オーディオフィルタモジュールライブラリ３０１ｋ、オーディオフィルタモジュールライブラリ３０１ｌを順次呼び出す。
【００４６】
なお、パラメータ受信部２０４が受信する上記の指定内容は、その一部または全部が省略されていてもよい。省略された場合、メディアデータ変換部２０５ｃは予め設定されたデフォルトデータを用いるようにしてもよい。
【００４７】
図６は、メディアモジュール層のプログラムモジュール（オーディオ再生ＭＭ）の構成例を示すブロック図である。同図のオーディオ再生ＭＭ１０１ｂは、図４に示したＭＭ層プログラムモジュール１０１と同様の構成であって、オーディオ再生用に設計されている。
【００４８】
コマンド処理部１０２ｂは、オーディオ再生に関するコマンドを受け取り、解析する。時間管理部１０３ｂは、オーディオデータ入出力制御部１０４ｂの動作タイミングと、オーディオフレーム周期毎の呼び出し時刻とを決定する。この決定を受けて、オーディオデータ入出力制御部１０４ｂは、ストリームＩ／Ｏ部１３からの符号化オーディオデータの入力とＡＶＩ／Ｏ部１５への復号化オーディオデータの出力とを制御する。メディアデータ変換制御部１０５ｂは、呼び出し時刻にオーディオ再生ＭＣ２０１ｃを呼び出す。
【００４９】
この構成によりオーディオ再生ＭＭ１０１ｂは、ホストから再生・停止・設定等の動作コマンドを受けとり、状態を遷移させるとともに、状態に基づいてオーディオ再生メディアコントローラへ指示を行う。再生状態では一定時間間隔でオーディオ再生メディアコントローラへフレーム再生指示を行う（自律動作）。併せてホストからの符号化データをオーディオ再生メディアコントローラに供給する。
【００５０】
図７は、メディアコントローラ層のプログラムモジュール（オーディオ再生ＭＣ）の構成例を示すブロック図である。同図のオーディオ再生ＭＣ２０１ｃは、図５に示したＭＣ層プログラムモジュール２０１と同様の構成であって、オーディオ再生用に設計されている。同図において、データ受信部２０２ｃは、オーディオ再生ＭＭ１０１ｂから符号化オーディオデータ（オーディオ符号データ）を受信する。データ送信部２０３ｃは、オーディオデータ（オーディオ再生データ）を送信する。
【００５１】
パラメータ受信部２０４ｃは、複数のＭＬ層プログラムモジュール３０１（オーディオ復号化モジュール３０１ｊ、オーディオフィルタモジュール３０１ｋ、オーディオフィルタモジュール３０１ｌ）の指定、その呼び出し順序の指定、それらの動作パラメータの指定などをオーディオ再生ＭＭ１０１ｂから受信する。
【００５２】
メディアデータ変換部２０５ｃは、オーディオ復号化処理モジュール呼び出し部２０５ｃ１と、オーディオフィルタモジュール呼び出し部２０５ｃ２とを備える。オーディオ復号化処理モジュール呼び出し部２０５ｃ１は、メディアライブラリ層の符号化オーディオデータを復号するオーディオ復号化モジュール３０１ｊを呼び出す。オーディオフィルタモジュール呼び出し部２０５ｃ２は、オーディオ復号化モジュール３０１ｊからの復号化オーディオデータに第１段階のフィルタ処理を施すオーディオフィルタモジュール３０１ｋを呼び出し、さらに、第１段階のフィルタ処理後のオーディオデータに第２段階のフィルタ処理を施すオーディオフィルタモジュール３０１ｌを呼び出す。
【００５３】
この構成により、オーディオ再生ＭＣ２０１ｃは、オーディオ再生メディアモジュールから１フレーム再生指示を受け取ると、符号化データを取得し、デコード・フィルタ処理を行って、１フレーム分のＰＣＭデータを出力し停止する（１回動作）。実際のデコード・フィルタ処理は、それぞれオーディオデコードライブラリ、オーディオフィルタライブラリを呼び出し実行する。また、オーディオデコードライブラリは、メディアコントローラから関数呼び出しにより同期的に起動され、ＭＰ３やＡＡＣ等の１フレーム分のデコード処理を行う。
【００５４】
図８は、メディアモジュール層のプログラムモジュール（オーディオ録音ＭＭ）の構成例を示すブロック図である。同図のオーディオ録音ＭＭ１０１ｃは、図４に示したＭＭ層プログラムモジュール１０１と同様の構成であって、オーディオ録音用に設計されている。
【００５５】
コマンド処理部１０２ｃは、オーディオ録音に関するコマンドを受け取り、解析する。時間管理部１０３ｃは、オーディオデータ入出力制御部１０４ｃの動作タイミングと、オーディオフレーム周期の呼び出し時刻とを決定する。この決定を受けて、オーディオデータ入出力制御部１０４ｃは、ＡＶＩ／Ｏ部１５からのオーディオデータの入力とストリームＩ／Ｏ部１３への符号化オーディオデータの出力とを制御する。メディアデータ変換制御部１０５ｃは、呼び出し時刻にオーディオ録音ＭＣ２０１ｄを呼び出す。
【００５６】
図９は、メディアコントローラ層のプログラムモジュール（オーディオ録音ＭＣ）の構成例を示すブロック図である。同図のオーディオ録音ＭＣ２０１ｄは、図５に示したＭＣ層プログラムモジュール２０１と同様の構成であって、オーディオ録音用に設計されている。同図において、データ受信部２０２ｄは、オーディオ録音ＭＭ１０１ｃからオーディオデータ（オーディオ入力データ）を受信する。データ送信部２０３ｄは、符号化オーディオデータ（オーディオ符号データ）をオーディオ録音ＭＭ１０１ｃに送信する。
【００５７】
パラメータ受信部２０４ｄは、複数のＭＬ層プログラムモジュール３０１（オーディオフィルタモジュール３０１ｍ、オーディオフィルタモジュール３０１ｍ、オーディオ符号化モジュール３０１ｏ）の指定、それらの呼び出し順序の指定、それらの動作パラメータの指定などをオーディオ録音ＭＭ１０１ｃから受信する。
【００５８】
メディアデータ変換部２０５ｄは、オーディオフィルタモジュール呼び出し部２０５ｄ１と、オーディオ符号化処理モジュール呼び出し部２０５ｄ２とを備える。オーディオフィルタモジュール呼び出し部２０５ｄ１は、オーディオデータに第１段階のフィルタ処理を施すオーディオフィルタモジュール３０１ｍを呼び出し、さらに、第１段階のフィルタ処理後のオーディオデータに第２段階のフィルタ処理を施すオーディオフィルタ化モジュール３０１ｎを呼び出す。オーディオ符号化処理モジュール呼び出し部２０５ｄ２は、第２段階のフィルタ処理後のオーディオデータを符号化するメディアライブラリ層のオーディオ符号化モジュール３０１ｊを呼び出す。
【００５９】
図１０は、メディアコントローラ層のプログラムモジュール（多重化ＭＣ）の構成例を示すブロック図である。同図の多重化ＭＣ２０１ｅは、図５に示したＭＣ層プログラムモジュール２０１と同様の構成であって、複数のデータを多重化する多重化用に設計されている。データ受信部２０２ｅは、ＡＶデータ符号化ＭＭ等から符号化オーディオデータ、符号化ビデオデータなど複数の入力データを受信する。データ送信部２０３ｅは、多重化データをＡＶデータ符号化ＭＭ等に送信する。パラメータ受信部２０４ｅは、ＭＬ層プログラムモジュール３０１（多重化処理モジュール３０１ｐ）の指定、その動作パラメータの指定などをビデオ録画ＭＭ等から受信する。メディアデータ変換部２０５ｅは、多重化処理モジュール３０１ｐを繰り返し呼び出す。
【００６０】
図１１は、メディアコントローラ層のプログラムモジュール（多重分離ＭＣ）の構成例を示すブロック図である。同図の多重分離ＭＣ２０１ｆは、図５に示したＭＣ層プログラムモジュール２０１と同様の構成であって、多重化データを分離する分離用に設計されている。データ受信部２０２ｆは、ビデオ再生ＭＭ１０１ｄ等から多重化データを受信する。データ送信部２０３ｆは、分離された個々の出力データをビデオ再生ＭＭ１０１ｄ等に送信する。パラメータ受信部２０４ｆは、ＭＬ層プログラムモジュール３０１（分離処理モジュール３０１ｑ）の指定、その動作パラメータの指定などをビデオ再生ＭＭ等から受信する。メディアデータ変換部２０５ｆは、分離処理モジュール３０１ｑを繰り返し呼び出す。
【００６１】
図１２は、メディアモジュール層のプログラムモジュール（ビデオ再生ＭＭ）の構成例を示すブロック図である。同図のビデオ再生ＭＭ１０１ｄは、図４に示したＭＭ層プログラムモジュール１０１と同様の構成であって、ビデオ再生用に設計されている。コマンド処理部１０２ｄは、ビデオ再生に関するコマンドを受け取り、解析する。時間管理部１０３ｄは、ＡＶデータ入出力制御部１０４ｄの動作タイミングと、オーディオフレーム周期の呼び出し時刻およびビデオフレーム周期の呼び出し時刻とを決定する。この決定を受けて、ＡＶデータ入出力制御部１０４ｄは、ストリームＩ／Ｏ部１３からのＡＶデータの入力とＡＶＩ／Ｏ部１５への復号化オーディオデータおよび復号化ビデオデータの出力とを制御する。メディアデータ変換制御部１０５ｄは、分離処理制御部１０５ｄ１とＡＶ再生データ生成制御部１０５ｄ２とを備える。分離処理制御部１０５ｄ１は、分離処理ＭＣ２０１ｆを周期的に呼び出す。ＡＶ再生データ生成制御部１０５ｄ２は、オーディオ再生ＭＣ２０１ｃとビデオ再生ＭＣ２０１ｉとをそれぞれの呼び出し時刻に呼び出す。
【００６２】
図１３は、メディアコントローラ層のプログラムモジュール（ビデオ再生ＭＣ）の構成例を示すブロック図である。同図のビデオ再生ＭＣ２０１ｉは、図５に示したＭＣ層プログラムモジュール２０１と同様の構成であって、ビデオ再生用に設計されている。同図において、データ受信部２０２ｉは、ビデオ再生ＭＭ１０１ｄから符号化ビデオデータ（ビデオ符号データ）を受信する。データ送信部２０３ｉは、ビデオデータ（ビデオ再生データ）を送信する。
【００６３】
パラメータ受信部２０４ｉは、複数のＭＬ層プログラムモジュール３０１（ビデオ復号化モジュール３０１ｒ、ビデオフィルタモジュール３０１ｓ、ビデオフィルタモジュール３０１ｔ）の指定、その呼び出し順序の指定、それらの動作パラメータの指定などをビデオ再生ＭＭ１０１ｄから受信する。
【００６４】
メディアデータ変換部２０５ｉは、ビデオ復号化処理モジュール呼び出し部２０５ｉ１と、ビデオフィルタモジュール呼び出し部２０５ｉ２とを備える。ビデオ復号化処理モジュール呼び出し部２０５ｉ１は、メディアライブラリ層の符号化ビデオデータを復号するビデオ復号化モジュール３０１ｒを呼び出す。ビデオフィルタモジュール呼び出し部２０５ｉ２は、ビデオ復号化モジュール３０１ｒからの復号化ビデオデータに第１段階のフィルタ処理を施すビデオフィルタモジュール３０１ｓを呼び出し、さらに、第１段階のフィルタ処理後のビデオデータに第２段階のフィルタ処理を施すビデオフィルタモジュール３０１ｔを呼び出す。
【００６５】
図１４は、メディアモジュール層のプログラムモジュール（ビデオ録画ＭＭ）の構成例を示すブロック図である。同図のビデオ録画ＭＭ１０１ｅは、図４に示したＭＭ層プログラムモジュール１０１と同様の構成であって、ビデオ録画用に設計されている。コマンド処理部１０２ｅは、ビデオ再生に関するコマンドを受け取り、解析する。時間管理部１０３ｅは、ＡＶデータ入出力制御部１０４ｅの動作タイミングと、オーディオフレーム周期の呼び出し時刻およびビデオフレーム周期の呼び出し時刻とを決定する。この決定を受けて、ＡＶデータ入出力制御部１０４ｅは、ＡＶＩ／Ｏ部１５からのオーディオデータおよびビデオデータの入力とストリームＩ／Ｏ部１３へのＡＶデータの出力とを制御する。メディアデータ変換制御部１０５ｅは、ＡＶ符号データ生成制御部１０５ｅ１と多重化処理制御部１０５ｅ２とを備える。
【００６６】
ＡＶ符号データ生成制御部１０５ｅ１は、オーディオ録音ＭＣ２０１ｈとビデオ録画ＭＣ２０１ｉとをそれぞれの呼び出し時刻に呼び出す。多重化処理制御部１０５ｅ２は、多重化処理ＭＣ２０１ｊを周期的に呼び出す。
【００６７】
図１５は、メディアコントローラ層のプログラムモジュール（ビデオ録画ＭＣ）の構成例を示すブロック図である。同図のビデオ録音ＭＣ２０１ｊは、図５に示したＭＣ層プログラムモジュール２０１と同様の構成であって、ビデオ録音用に設計されている。同図において、データ受信部２０２ｊは、ビデオ録画ＭＭ１０１ｅからビデオデータ（ビデオ入力データ）を受信する。データ送信部２０３ｊは、符号化ビデオデータ（ビデオ符号データ）をビデオ録画ＭＭ１０１ｅに送信する。
【００６８】
パラメータ受信部２０４ｊは、複数のＭＬ層プログラムモジュール３０１（ビデオフィルタモジュール３０１ｕ、ビデオフィルタモジュール３０１ｖ、ビデオ符号化モジュール３０１ｗ）の指定、それらの呼び出し順序の指定、それらの動作パラメータの指定などをビデオ録画ＭＭ１０１ｅから受信する。
【００６９】
メディアデータ変換部２０５ｊは、ビデオフィルタモジュール呼び出し部２０５ｊ１と、ビデオ符号化処理モジュール呼び出し部２０５ｊ２とを備える。ビデオフィルタモジュール呼び出し部２０５ｊ１は、ビデオデータに第１段階のフィルタ処理を施すビデオフィルタモジュール３０１ｕを呼び出し、さらに、第１段階のフィルタ処理後のビデオデータに第２段階のフィルタ処理を施すビデオフィルタ化モジュール３０１ｖを呼び出す。ビデオ符号化処理モジュール呼び出し部２０５ｊ２は、第２段階のフィルタ処理後のビデオデータを符号化するメディアライブラリ層のビデオ符号化モジュール３０１ｗを呼び出す。
【００７０】
次に、図３Ａに示した機器制御レベルＡＰＩ１００について説明する。ホストのアプリケーションに対し、メディア処理システムとしてのインタフェースを提供する。ホストのアプリケーションはこのインタフェースを使用してメディアモジュールを制御する。機器制御レベルＡＰＩ１００の主な機能は、ホストからの制御コマンド、ストリームデータの送受信処理とメディアモジュール層の制御を行う。その処理内容は、（ａ）ホストからのコマンド処理、ストリームデータ処理とその応答処理、（ｂ）メディアモジュールの状態管理や制御パラメータ管理である。ＭＭ層プログラムモジュール１０１では、（ａ）について、制御コマンドをメディアモジュール内部状態とあわせて解析し、制御を行い、ストリームデータに関しては、送受信処理のみを行う。また、（ｂ）について、メディアモジュールのインタフェース仕様として、ホストアプリケーションに提供される状態遷移や制御パラメータを管理する。制御パラメータは、パラメータ受信部２０４で使用する内部パラメータへの変換も行う。
【００７１】
機器制御レベルＡＰＩ１００は、ホストからはメディアモジュール単位に起動されるため、少なくとも１つ以上のスレッドで構成される。メディアモジュールを構成するスレッド数はシステム依存である。ホストからのコマンドは、イベントとして通知される。従って、機器制御レベルＡＰＩ１００はイベント駆動型の動作を行うことになる。イベント受信部は、内部状態を考慮したイベント分析と分析結果による下位層の制御を行なう。ここでいう、イベントには、ホストコマンド、パイプ通知、内部イベントがある。ホストコマンドは、ホストＣＰＵからコマンドパイプを経由して通知されるメッセージである。パイプ通知は、ホストＣＰＵからストリームパイプにデータを送信した場合に通知されるイベントである。内部イベントは、メディアプロセッサ内部のスレッド間通信メッセージ、割込み通知などである。
【００７２】
また、イベント分析とは、イベントの種類／内部状態から、行うべき処理を判定することをいう。
【００７３】
以上説明してきたように、本発明のメディア処理方法によれば、第１に、ソフト開発効率を向上させることができる。すなわち、階層毎に、役割・機能・制御レベル・インタフェースを標準化することにより、ソフトウェアモジュールの流用性を拡大する。これにより開発されたソフトウェアモジュールの再利用性を高め、モバイルからサーバといった製品を広くターゲットとする分野全体での開発効率向上を実現する。
【００７４】
第２に、ソフトウェアの設計品質を向上させることができる。すなわち、ソフトウェア設計思想を明確化・共通化することにより、ソフトウェアの理解容易性を高める。また、標準化されたソフトウェア構造を再利用することで、設計品質を向上させる。
【００７５】
第３に、メディア処理部分の階層構造の定義については、特にメディアプロセッサ特有の変更要因に留意し、これら要因に対する耐性の高いソフト階層を定義することでソフトウェアモジュールの流用性を高めることができる。主な変更要因は、制御粒度の変更、制御方式の変更、ＡＶ信号処理方式の変更、一部機能のハードウェア化などがある。
【００７６】
本発明のメディア処理方法によれば、これらの変更要因に対しても、柔軟に対応でき、プログラムモジュールの流用性を高めることができる。例えば、制御粒度の変更に容易に対応することができる。つまり、再生/停止のようなマクロレベル制御や、１フレーム/１画像デコードのようなミクロレベル制御といった制御粒度毎に容易に変更することができる。また、ホストとなるアプリケーションの機能やシステム構成に依存する制御方式の変更にも容易に対応することができる。アプリケーション機能やシステム構成に応じて、機能(特殊再生、AV再生中撮像等)を追加/変更した場合や、システム制御方式（ＡＶ同期、外部入出力制御など）を変更した場合の影響を局所化できる。
【００７７】
さらに、ＡＶ符号化の規格や処理方式にするＡＶ信号処理方式の変更や追加に容易に対応することができる。つまり、規格バージョンアップやアルゴリズム改善等による、信号処理方式の変更・追加の影響を局所化できる。また、一部の機能のハードウェア化に容易に対応することができる。低コスト化、処理効率化、他のハードウェアの流用などにより、一部の機能をハードウェア化した場合に対応するソフトウェアの影響を、一部の機能に対応するプログラムモジュールに局所化することができ、ソフトウェアの変更を最小限に抑えることができる。
【００７８】
以下、本発明のメディア処理方法を適用した製品の具体例について説明する。
【００７９】
図１６は、本発明のメディア処理方法を適用した家電製品の具体例を示す図である。同図のように、本発明のメディア処理方法またはメディア処理プログラムは、小型オーディオプレーヤ４１、携帯電話４２、オーディオコンポ４３、デジタルテレビ４４、デジタルビデオレコーダ４５、カーナビゲーションシステム４６、デジタルムービー４７等に適用される。これらの種々の家電製品に対して、図３Ａに示したＭＭ層プログラムモジュール１０１、ＭＣ層プログラムモジュール２０１、メディアライプラリー３０１ａ等の各プログラムモジュールは、柔軟に対応できる。これらのプログラムモジュールは種々の家電製品間で高い流用性を有する。
【００８０】
図１７は、本発明のメディア処理方法を適用したオーディオ再生装置４ａの構成を示すブロック図である。同図のオーディオ再生装置４ａは、データ蓄積部４０１ａ、データ読み取り部４０２ａ、データ出力部４０３ａ、指示入力部４０４ａ、機器制御部４０５ａおよびオーディオ再生部４０６ａを備える。同図と図２とを比較すると、データ蓄積部４０１ａは、光ディスク２２、ハードディスク２３またはメモリカード２４に対応する。データ読み取り部４０２ａはストリームＩ／Ｏ部１３に対応する。データ出力部４０３ａは、ＡＶＩ／Ｏ部１５に対応する。機器制御部４０５ａはＣＰＵ１１に対応する。オーディオ再生部４０６ａのハードウェア構成はメディアプロセッサ１２に対応する。オーディオ再生部４０６ａのソフトウェア構成は、図６のオーディオ再生ＭＭ１０１ｂ、図７のオーディオ再生ＭＣ２０１ｃおよびメディアライブラリ３０１ｊ〜３０１ｌに対応する。
【００８１】
データ蓄積部４０１ａは、符号化オーディオデータを格納している。
【００８２】
データ読み取り部４０２ａは、データ蓄積部４０１ａから符号化オーディオデータを読み出し、オーディオ再生部４０６ａに供給する。
【００８３】
データ出力部４０３ａは、オーディオ再生部４０６ａにより生成された復号化オーディオデータを外部装置に出力する。
【００８４】
指示入力部４０４ａは、ユーザからの指示を受け付ける。
【００８５】
機器制御部４０５ａは、指示入力部４０４ａによって受け付けられた指示に基づいてオーディオ再生の開始、終了または一時停止をオーディオ再生部４０６ａに指示する。
【００８６】
オーディオ再生部４０６ａは、次の（ａ）〜（ｃ）により、符号化オーディオデータを復号化オーディオデータに変換するメディア処理を行う。（ａ）オーディオ再生部４０６ａは、第１階層の第１プログラムモジュール（ここでは、図６のオーディオ再生ＭＭ１０１ｂ）を実行する。これにより、オーディオ再生部４０６ａは、データ読み取り部４０２ａによって読み出された符号化オーディオデータの入力と、データ出力部４０３ａへの復号化オーディオデータの出力とを制御し、第２プログラムモジュール（ここでは図７のオーディオ再生ＭＣ２０１ｃ）の呼び出し時刻を決定し、当該時刻に第２階層の第２プログラムモジュールを呼び出す。（ｂ）オーディオ再生部４０６ａは、呼び出された第２プログラムモジュールを実行することによって、第３階層の第３プログラムモジュール（ここでは、メディアライブラリ３０１ｊ〜３０１ｌなど）を呼び出す。（ｃ）オーディオ再生部４０６ａは呼び出された第３プログラムモジュールを実行することによって、入力された符号化オーディオデータを復号化オーディオデータに変換するメディア処理を行う。
【００８７】
このように、オーディオ再生部４０６ａは図３Ａに示した３階層のプログラムモジュールを実行することにより、オーディオ再生のために符号化オーディオデータを復号化するメディア処理を行う。
【００８８】
図１８は、本発明のメディア処理方法を適用したオーディオ録音装置４ｂの構成を示すブロック図である。同図のオーディオ録音装置４ｂは、データ蓄積部４０１ｂ、データ書き込み部４０２ｂ、データ入力部４０３ｂ、指示入力部４０４ｂ、機器制御部４０５ｂおよびオーディオ録音部４０６ｂを備える。同図と図２とを比較すると、データ蓄積部４０１ｂは、光ディスク２２、ハードディスク２３またはメモリカード２４に対応する。データ書き込み部４０２ｂはストリームＩ／Ｏ部１３に対応する。データ入力部４０３ｂは、ＡＶＩ／Ｏ部１５に対応する。機器制御部４０５ｂはＣＰＵ１１に対応する。オーディオ録音部４０６ｂのハードウェア構成はメディアプロセッサ１２に対応する。オーディオ録音部４０６ｂのソフトウェア構成は、図８のオーディオ録音ＭＭ１０１ｃ、図９のオーディオ録音ＭＣ２０１ｄおよびメディアライブラリ３０１ｍ〜３０１ｏに対応する。
【００８９】
データ蓄積部４０１ｂは、符号化オーディオデータの格納用である。
【００９０】
データ書き込み部４０２ｂは、オーディオ録音部４０６ｂから出力される符号化オーディオデータを、データ蓄積部４０１ｂに書き込む。
【００９１】
データ入力部４０３ｂは、外部装置からオーディオデータを取得し、オーディオ録音部４０６ｂに出力する。
【００９２】
指示入力部４０４ｂは、ユーザからの指示を受け付ける。
【００９３】
機器制御部４０５ｂは、指示入力部４０４ｂによって受け付けられた指示に基づいてオーディオ録音の開始、終了または一時停止をオーディオ録音部４０６ｂに指示する。
【００９４】
オーディオ録音部４０６ｂは、次の（ａ）〜（ｃ）により、オーディオデータを符号化オーディオデータに変換するメディア処理を行う。（ａ）オーディオ録音部４０６ｂは、第１階層の第１プログラムモジュール（ここでは、図８のオーディオ録音ＭＭ１０１ｃ）を実行する。これにより、オーディオ録音部４０６ｂは、データ入力部４０３ｂからのオーディオデータの入力と、データ書き込み部４０２ｂへの符号化オーディオデータの出力とを制御し、第２プログラムモジュール（ここでは図９のオーディオ録音ＭＣ２０１ｄ）の呼び出し時刻を決定し、第２階層の第２プログラムモジュールを呼び出す。（ｂ）オーディオ録音部４０６ｂは、呼び出された第２プログラムモジュールを実行することによって、第３階層の第３プログラムモジュール（ここでは、メディアライブラリ３０１ｊ〜３０１ｌなど）を呼び出す。（ｃ）オーディオ録音部４０６ｂは呼び出された第３プログラムモジュールを実行することによって、入力されたオーディオデータを符号化オーディオデータに変換するメディア処理を行う。
【００９５】
このように、オーディオ録音部４０６ｂは図３Ａに示した３階層のプログラムモジュールを実行することにより、オーディオ録音のためにオーディオデータを符号化するメディア処理を行う。
【００９６】
図１９は、本発明のメディア処理方法を適用したビデオ再生装置４ｃの構成を示すブロック図である。同図のビデオ再生装置４ｃは、データ蓄積部４０１ｃ、データ読み取り部４０２ｃ、データ出力部４０３ｃ、指示入力部４０４ｃ、機器制御部４０５ｃおよびビデオ再生部４０６ｃを備える。同図と図２とを比較すると、データ蓄積部４０１ｃは、光ディスク２２、ハードディスク２３またはメモリカード２４に対応する。データ読み取り部４０２ｃはストリームＩ／Ｏ部１３に対応する。データ出力部４０３ｃは、ＡＶＩ／Ｏ部１５に対応する。機器制御部４０５ｃはＣＰＵ１１に対応する。ビデオ再生部４０６ｃのハードウェア構成はメディアプロセッサ１２に対応する。ビデオ再生部４０６ｃのソフトウェア構成は、図１２のビデオ再生ＭＭ１０１ｄ、図１３のビデオ再生ＭＣ２０１ｉおよびメディアライブラリ３０１ｒ〜３０１ｔに対応する。
【００９７】
データ蓄積部４０１ｃは、符号化ビデオデータを格納している。
【００９８】
データ読み取り部４０２ｃは、データ蓄積部４０１ｃから符号化ビデオデータを読み出し、ビデオ再生部４０６ｃに供給する。
【００９９】
データ出力部４０３ｃは、ビデオ再生部４０６ｃにより生成された復号化ビデオデータを外部装置に出力する。
【０１００】
指示入力部４０４ｃは、ユーザからの指示を受け付ける。
【０１０１】
機器制御部４０５ｃは、指示入力部４０４ｃによって受け付けられた指示に基づいてビデオ再生の開始、終了または一時停止をビデオ再生部４０６ｃに指示する。
【０１０２】
ビデオ再生部４０６ｃは、次の（ａ）〜（ｃ）により、符号化ビデオデータを復号化ビデオデータに変換するメディア処理を行う。（ａ）ビデオ再生部４０６ｃは、第１階層の第１プログラムモジュール（ここでは、図１２のビデオ再生ＭＭ１０１ｄ）を実行する。これにより、ビデオ再生部４０６ｃは、データ読み取り部４０２ｃによって読み出された符号化ビデオデータの入力と、データ出力部４０３ｃへの復号化ビデオデータの出力とを制御し、第２プログラムモジュール（ここでは図１３のビデオ再生ＭＣ２０１ｉ）の呼び出し時刻を決定し、当該時刻に第２階層の第２プログラムモジュールを呼び出す。（ｂ）ビデオ再生部４０６ｃは、呼び出された第２プログラムモジュールを実行することによって、第３階層の第３プログラムモジュール（ここでは、メディアライブラリ３０１ｒ〜３０１ｔなど）を呼び出す。（ｃ）ビデオ再生部４０６ｃは呼び出された第３プログラムモジュールを実行することによって、入力された符号化ビデオデータを復号化ビデオデータに変換するメディア処理を行う。
【０１０３】
このように、ビデオ再生部４０６ｃは図３Ａに示した３階層のプログラムモジュールを実行することにより、ビデオ再生のために符号化ビデオデータを復号化するメディア処理を行う。
【０１０４】
図２０は、本発明のメディア処理方法を適用したビデオ録画装置４ｄの構成を示すブロック図である。同図のビデオ録画装置４ｄは、データ蓄積部４０１ｄ、データ書き込み部４０２ｄ、データ入力部４０３ｄ、指示入力部４０４ｄ、機器制御部４０５ｄおよびビデオ録画部４０６ｄを備える。同図と図２とを比較すると、データ蓄積部４０１ｄは、光ディスク２２、ハードディスク２３またはメモリカード２４に対応する。データ書き込み部４０２ｄはストリームＩ／Ｏ部１３に対応する。データ入力部４０３ｄは、ＡＶＩ／Ｏ部１５に対応する。機器制御部４０５ｄはＣＰＵ１１に対応する。ビデオ録画部４０６ｄのハードウェア構成はメディアプロセッサ１２に対応する。ビデオ録画部４０６ｄのソフトウェア構成は、図１４のビデオ録画ＭＭ１０１ｅ、図１５のビデオ録画ＭＣ２０１ｊおよびメディアライブラリ３０１ｕ〜３０１ｗに対応する。
【０１０５】
データ蓄積部４０１ｄは、符号化ビデオデータの格納用である。
【０１０６】
データ書き込み部４０２ｄは、ビデオ録画部４０６ｄから出力される符号化ビデオデータを、データ蓄積部４０１ｄに書き込む。
【０１０７】
データ入力部４０３ｄは、外部装置からビデオデータを取得し、ビデオ録画部４０６ｄに出力する。
【０１０８】
指示入力部４０４ｄは、ユーザからの指示を受け付ける。
【０１０９】
機器制御部４０５ｄは、指示入力部４０４ｄによって受け付けられた指示に基づいてビデオ録画の開始、終了または一時停止をビデオ録画部４０６ｄに指示する。
【０１１０】
ビデオ録画部４０６ｄは、次の（ａ）〜（ｃ）により、ビデオデータを符号化ビデオデータに変換するメディア処理を行う。（ａ）ビデオ録画部４０６ｄは、第１階層の第１プログラムモジュール（ここでは、図４のビデオ録画ＭＭ１０１ｅ）を実行する。これにより、ビデオ録画部４０６ｄは、データ入力部４０２ｄからのビデオデータの入力と、データ書き込み部４０ｄへの符号化ビデオデータの出力とを制御し、第２プログラムモジュール（ここでは図１５のビデオ録画ＭＣ２０１ｊ）の呼び出し時刻を決定し、第２階層の第２プログラムモジュールを呼び出す。（ｂ）ビデオ録画部４０６ｄは、呼び出された第２プログラムモジュールを実行することによって、第３階層の第３プログラムモジュール（ここでは、メディアライブラリ３０１ｕ〜３０１ｗなど）を呼び出す。（ｃ）ビデオ録画部４０６ｄは呼び出された第３プログラムモジュールを実行することによって、入力されたビデオデータを符号化ビデオデータに変換するメディア処理を行う。
【０１１１】
このように、ビデオ録画部４０６ｄは図３Ａに示した３階層のプログラムモジュールを実行することにより、ビデオ録画のためにビデオデータを符号化するメディア処理を行う。
【０１１２】
図２１は、本発明のメディア処理方法を適用したビデオ再生装置４ｅの構成を示すブロック図である。同図のビデオ再生装置４ｅは、データ蓄積部４０１ｅ、データ読み取り部４０２ｅ、データ出力部４０３ｅ、指示入力部４０４ｅ、機器制御部４０５ｅ、データ統合部４０６ｅおよびビデオ再生部４０７ｅ、４０８ｅを備え、異なる２つの符号化ビデオデータを同時に再生する。同図は図１９と比較して、ビデオ再生部４０６ｃの代わりにビデオ再生部４０７ｅ、４０８ｅを備える点と、新たにデータ統合部４０６ｅを備える点とが異なっている。これら以外の対応する構成要素は同じであるので説明を省略し、異なる点を中心に説明する。
【０１１３】
ビデオ再生部４０７ｅおよび４０８ｅは、異なる２つの符号化ビデオデータ（第１および第２符号化ビデオデータと呼ぶ）をそれぞれ復号化し、２つの復号化ビデオデータ（第１および第２復号化ビデオデータと呼ぶ）を出力する。ビデオ再生部４０７ｅおよび４０８ｅは１つのメディアプロセッサ上で実現される。ビデオ再生部４０７ｅおよび４０８ｅのソフトウェア構成は、それぞれ上記ビデオ再生部４０６ｃと同様である。
【０１１４】
データ統合部４０６ｅは、第１および第２復号化ビデオデータを１画面に表示するように統合する。例えば、データ統合部４０６ｅは、第１および第２復号化ビデオデータから得られた２つのビデオのサイズを同じ大きさに縮小し、縮小したビデオを左右に２つ並べる。あるいは、一方を他方よりも大きめに縮小して並べる。なお、データ統合部４０６ｅは、図２のメディアプロセッサにより実現してもよいし、メディアプロセッサとは異なるユニットとしてもよい。
【０１１５】
なお、データ読み取り部４０２ｅは、データ蓄積部４０１ｅから第１および第２符号化ビデオデータを読み出し、ビデオ再生部４０６ｅに供給する。その際、第２符号化ビデオデータを順次異なる符号化ビデオデータに変更してもよい。
【０１１６】
このように、ビデオ再生部４０７ｅ、４０８ｅは、それぞれ図３Ａに示した３階層のプログラムモジュールを実行することにより、ビデオ再生のために符号化ビデオデータを復号化するメディア処理を行う。
【０１１７】
なお、オーディオ再生、オーディオ録音、ビデオ再生およびビデオ録画を同時実行可能な録画再生装置も、上記と図１７〜図２１と同様の構成により実現することができる。
【０１１８】
また、上記データ蓄積部の代わりにデジタル放送を受信するチューナを備えてもよい。
【産業上の利用可能性】
【０１１９】
本発明は、メディア処理を行う各種装置に適しており、例えば、動画配信するウェブサーバー、それを受信するネットワーク端末、動画の記録再生可能なデジタルカメラ、カメラ付き携帯電話機、ＤＶＤ録画／再生機、ＰＤＡ、パーソナルコンピュータ等に適している。
【符号の説明】
【０１２０】
１１  ＣＰＵ
１２  メディアプロセッサ
１３  ストリームＩ／Ｏ部
１４  メモリ制御部
１５  ＡＶＩ／Ｏ部
１６  メモリ
２１  チューナ
２２  光ディスク
２３  ハードディスク
２４  メモリカード
２５  ディスプレイ
２６  カメラ
３０  ホスト
１００  機器制御レベルＡＰＩ
１０１  ＭＭ層プログラムモジュール
１０１ｂ  オーディオ再生ＭＭ
１０１ｃ  オーディオ録音ＭＭ
１０１ｄ  ビデオ再生ＭＭ
１０１ｅ  ビデオ録画ＭＭ
１０２  コマンド処理部
１０３  時間管理部
１０４  データ入出力制御部
１０５  メディアデータ変換制御部
２００  メディアデータ変換ＡＰＩ
２０１  ＭＣ層プログラムモジュール
２０１ｃ  オーディオ再生ＭＣ
２０１ｄ  オーディオ録音ＭＣ
２０１ｅ  多重化ＭＣ
２０１ｆ  多重分離ＭＣ
２０１ｉ  ビデオ再生ＭＣ
２０１ｊ  ビデオ録画ＭＣ
２０２  データ受信部
２０３  データ送信部
２０４  パラメータ受信部
２０５  メディアデータ変換部
３００  単純データ変換ＡＰＩ
３０１  ＭＬ層プログラムモジュール
【図１】
2010146575.tif 000003
【図２】
2010146575.tif 000004
【図３Ａ】
2010146575.tif 000005
【図３Ｂ】
2010146575.tif 000006
【図４】
2010146575.tif 000007
【図５】
2010146575.tif 000008
【図６】
2010146575.tif 000009
【図７】
2010146575.tif 000010
【図８】
2010146575.tif 000011
【図９】
2010146575.tif 000012
【図１０】
2010146575.tif 000013
【図１１】
2010146575.tif 000014
【図１２】
2010146575.tif 000015
【図１３】
2010146575.tif 000016
【図１４】
2010146575.tif 000017
【図１５】
2010146575.tif 000018
【図１６】
2010146575.tif 000019
【図１７】
2010146575.tif 000020
【図１８】
2010146575.tif 000021
【図１９】
2010146575.tif 000022
【図２０】
2010146575.tif 000023
【図２１】
2010146575.tif 000024