(57)【特許請求の範囲】
【請求項１】
複数のプログラムが動作できるシステム上で画像と音声、もしくはそれらのどちらかを符号圧縮化あるいはデータ変換し、リアルタイムに記録もしくは配信する符号圧縮化／データ変換装置であって、
前記システム上で動作する所定のアプリケーションから供給された前記画像をビデオキャプチャバッファに格納し、前記音声をオーディオキャプチャバッファに格納するとともに、前記アプリケーションからの要求に応じて、前記画像および前記音声に対する符号圧縮化もしくはデータ変換動作を制御するインタフェース制御手段と、
前記インタフェース制御手段による制御に従って前記画像および前記音声に対する符号圧縮化もしくはデータ変換動作を行う符号圧縮化手段と
を備え、
前記インタフェース制御手段は、前記ビデオキャプチャバッファへの前記画像の格納および前記オーディオキャプチャバッファへの前記音声の格納ができない場合には、前記符号圧縮化手段による前記画像および前記音声に対する前記符号圧縮化を一時停止させ、その後一定時間経過後、または前記システムの負荷が低下したとき、前記符号圧縮化手段による前記画像および前記音声に対する前記符号圧縮化もしくはデータ変換動作を再開させ、
前記符号圧縮化手段は、前記データ変換動作を再開させる際、前記一時停止時点までに
符号圧縮化された画像が、符号圧縮化された音声よりも時間軸上進んでいる場合には、画
像の符号圧縮化の開始を音声の符号圧縮化より遅らせ、符号圧縮化された音声が、符号圧
縮化された画像よりも時間軸上進んでいる場合には、音声の符号圧縮化の開始を画像の符
号圧縮化より遅らせる
ことを特徴とする符号圧縮化／データ変換装置。
【請求項２】
前記インタフェース制御手段は、前記ビデオキャプチャバッファへの前記画像の格納および前記音声の前記オーディオキャプチャバッファへの格納の少なくともいずれか一方が不可能となった場合、前記符号圧縮化手段に対して、前記画像および前記音声に対する前記符号圧縮化を一時停止させ、前記アプリケーションに対して前記要求に対する所定の応答を返す
ことを特徴とする請求項１に記載の符号圧縮化／データ変換装置。
【請求項３】
前記インタフェース制御手段は、前記システムの負荷が低下したとき、前記画像に関して現在までに符号圧縮化されたフレームの数をフレームレートで除算することによって第１の時間量を算出し、前記音声に関して現在までに符号圧縮化されたサンプルの数をサンプリング周波数で除算することによって第２の時間量を算出し、前記第１の時間量と前記第２の時間量との差を算出し、前記差と現在のキャプチャフレーム番号とから前記画像の符号圧縮化の再開フレーム番号を算出し、前記差と現在のキャプチャサンプル数とから前記音声の符号圧縮化の再開サンプル番号を算出する
ことを特徴とする請求項１に記載の符号圧縮化／データ変換装置。
【請求項４】
前記インタフェース制御手段は、前記アプリケーションからの前記要求により、前記符号圧縮化手段による前記画像および前記音声に対する前記符号圧縮化もしくはデータ変換動作を制御し、前記アプリケーションが直接符号圧縮化もしくはデータ変換処理に関与しなくてよいように、前記符号圧縮化もしくはデータ変換動作を集約して制御し、前記システムの負荷が上がり、前記ビデオキャプチャバッファへの前記画像の格納および前記音声の前記オーディオキャプチャバッファへの格納が不可能となった場合、前記符号圧縮化手段による前記画像および前記音声に対する前記符号圧縮化を一時停止させ、前記システムの負荷が低下したとき、前記符号圧縮化手段による前記画像および前記音声に対する前記符号圧縮化もしくはデータ変換動作を再開させ、前記アプリケーションからの制御を必要としないように構成されている
ことを特徴とする請求項１乃至３のいずれか一項に記載の符号圧縮化／データ変換装置。
【請求項５】
前記符号圧縮化手段は、前記画像に対して符号圧縮化を行うビデオ符号変換制御手段と、前記音声に対して符号圧縮化を行うオーディオ符号変換制御手段と、
前記符号圧縮化された前記画像および前記音声に対して所定のシステム符号化を行う画像・音声符号変換制御手段とを有し、
前記インタフェース制御手段は、前記アプリケーションからの要求に従って前記符号圧縮化手段を制御し、
符号圧縮化もしくはデータ変換またはキャプチャした前記画像を一時的に格納するビデオキャプチャバッファと、
前記ビデオ符号変換制御手段によって生成されたビデオ符号を一時的に格納するビデオ符号バッファと、
前記符号圧縮化もしくはデータ変換またはキャプチャしたオーディオデータを一時的に格納するオーディオキャプチャバッファと、
前記オーディオ符号変換制御手段によって生成されたオーディオ符号を一時的に格納するオーディオ符号バッファと、
前記画像・音声符号変換制御手段によって生成されたシステム符号を一時的に格納するシステムバッファを有し、
前記インターフェース制御手段は、
符号圧縮化もしくはデータ変換またはキャプチャした原画像を前記ビデオ符号変換制御手段に渡す原画像受け渡し制御手段と、
符号圧縮化もしくはデータ変換またはキャプチャした原音声を前記オーディオ符号変換制御手段に渡す原音声受け渡し制御手段と、
符号圧縮化の一時停止と再開を行う一時停止・再開制御手段を有し、
前記アプリケーションは、符号圧縮化もしくはデータ変換またはキャプチャした原画像と原音声を受け取って、前記インターフェース制御手段に渡して、前記インターフェース制御手段に渡されたシステム符号をシステム符号ファイルに書き込み、
前記インターフェース制御手段は、符号圧縮化もしくはデータ変換またはキャプチャした原画像を前記ビデオキャプチャバッファに格納し、符号圧縮化もしくはデータ変換またはキャプチャした原音声を前記オーディオキャプチャバッファに格納し、前記ビデオ符号変換制御手段と前記オーディオ符号変換制御手段と前記画像・音声符号変換制御手段を制御し、生成された前記ビデオ符号は前記ビデオ符号バッファに格納され、生成された前記オーディオ符号は前記オーディオ符号バッファに格納され、生成された前記システム符号は前記システムバッファに格納され、前記システム符号を前記アプリケーションに渡す
ことを特徴とする請求項４に記載の符号圧縮化／データ変換装置。
【請求項６】
前記アプリケーションは、
前記ビデオ符号のビデオキャプチャデバイスと前記オーディオ符号のオーディオキャプチャデバイスを初期化する第１工程を実行し、前記符号圧縮化手段に開始要求を出して必要なメモリを獲得させる第２工程を実行し、
ＭＰＥＧ符号を記録するファイルをオープンする第３工程を実行し、
前記ビデオキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがあるかどうかを判断する第４工程を実行し、
前記ビデオキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがある場合は前記原画像受け渡し制御手段を呼び出す第５工程を実行し、
前記ビデオキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがない場合は前記オーディオキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがあるかどうかを判断する第６工程を実行し、
前記オーディオキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがある場合は前記原音声受け渡し制御手段を呼び出す第７工程を実行し、
前記オーディオキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがない場合は前記システム符号があるかどうかを判断する第８工程を実行し
、
前記オーディオキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがある場合は前記システム符号を前記ファイルに書き込む第９工程を実行するとともに、前記オーディオキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがない場合は符号圧縮化もしくはデータ変換またはキャプチャが終了したかどうかを判断する第１０工程を実行し、
前記符号圧縮化もしくはデータ変換またはキャプチャが終了していない場合は前記第４工程に戻り、
前記符号圧縮化もしくはデータ変換またはキャプチャが終了した場合は前記ファイルをクローズする第１１工程を実行するとともに、前記符号圧縮化手段に終了要求を出して獲得した前記メモリを解放させる第１２工程を実行する
ことを特徴とする請求項５に記載の符号圧縮化／データ変換装置。
【請求項７】
前記原画像受け渡し制御手段は、
キャプチャフレーム番号を加算する第２１工程を実行するとともに、一時停止かどうかを判断する第２２工程を実行し、前記一時停止でない場合は前記ビデオキャプチャバッファに符号圧縮化もしくはデータ変換またはキャプチャした原画像が格納可能かどうかを判断する第２６工程に進み、
前記一時停止である場合は再開かどうかを判断する第２３工程を実行するとともに、前記再開でない場合は所定応答を前記アプリケーションに返す第２５工程に進み、
前記再開である場合はキャプチャフレーム番号が再開フレーム番号以上であるかどうかを判断する第２４工程を実行するとともに、前記キャプチャフレーム番号が再開フレーム番号以上でない場合は所定応答を前記アプリケーションに返す第２５工程を実行して処理を終了し、
前記キャプチャフレーム番号が再開フレーム番号以上である場合は前記ビデオキャプチャバッファに符号圧縮化もしくはデータ変換またはキャプチャした原画像が格納可能かどうかを判断する第２６工程を実行するとともに、前記キャプチャフレーム番号が再開フレーム番号以上でない場合は前記一時停止・再開制御手段を起動する第２９工程に進み、
前記ビデオキャプチャバッファに符号圧縮化もしくはデータ変換またはキャプチャした原画像が格納可能である場合は符号圧縮化もしくはデータ変換またはキャプチャした原画像を前記ビデオキャプチャバッファに格納する第２７工程を実行するとともに、前記ビデオ符号変換制御手段に符号圧縮化もしくはデータ変換またはキャプチャしたデータがあることを知らせる第２８工程を実行し、
第２９工程に進んだ場合は前記一時停止・再開制御手段を起動する
ことを特徴とする請求項５に記載の符号圧縮化／データ変換装置。
【請求項８】
前記原音声受け渡し制御手段は、
キャプチャサンプル番号を加算する第３１工程を実行するとともに、一時停止かどうかを判断する第３２工程を実行し、前記一時停止でない場合は前記オーディオキャプチャバッファに符号圧縮化もしくはデータ変換またはキャプチャした原画像が格納可能かどうかを判断する第３６工程に進み、
前記一時停止である場合は再開かどうかを判断する第３３工程を実行するとともに、前記再開でない場合は所定応答を前記アプリケーションに返す第３５工程に進み、
前記再開である場合はキャプチャサンプル番号が再開サンプル番号以上であるかどうかを判断する第３４工程を実行するとともに、前記キャプチャサンプル番号が再開サンプル番号以上でない場合は所定応答を前記アプリケーションに返す第３５工程を実行して処理を終了し、
前記キャプチャサンプル番号が再開サンプル番号以上である場合は前記オーディオキャプチャバッファに符号圧縮化もしくはデータ変換またはキャプチャした原画像が格納可能かどうかを判断する第３６工程を実行するとともに、前記オーディオキャプチャバッファに符号圧縮化もしくはデータ変換またはキャプチャした原画像が格納可能でない場合は前記一時停止・再開制御手段を起動する第３９工程に進み、
前記オーディオキャプチャバッファに符号圧縮化もしくはデータ変換またはキャプチャした原画像が格納可能である場合は符号圧縮化もしくはデータ変換またはキャプチャした原画像を前記オーディオキャプチャバッファに格納する第３７工程を実行するとともに、前記ビデオ符号変換制御手段に符号圧縮化もしくはデータ変換またはキャプチャしたデータがあることを知らせる第３８工程を実行し、
前記第３９工程に進んだ場合は前記一時停止・再開制御手段を起動する
ことを特徴とする請求項５に記載の符号圧縮化／データ変換装置。
【請求項９】
前記ビデオ符号変換制御手段は、
前記ビデオキャプチャバッファに格納されたデータがあるかどうかを判断する第４１工程を実行し、前記ビデオキャプチャバッファから原画像を取り出す第４２工程を実行し、現在までに圧縮した圧縮フレーム数を加算する第４３工程を実行し、原画像をビデオ圧縮する第４４工程を実行し、生成したビデオ符号を前記ビデオ符号バッファに格納する第４５工程を実行し、
その後に、前記インターフェース制御手段から一時停止の要求があるかどうかを判断する第４６工程を実行し、前記インターフェース制御手段から一時停止の要求がない場合は前記第４１工程に戻り、
前記インターフェース制御手段から一時停止の要求がある場合は前記インターフェース制御手段から再開の要求があるかどうかを判断する第４７工程を実行するとともに、前記インターフェース制御手段から再開の要求がない場合は前記第４７工程の先頭に戻り、
前記インターフェース制御手段から再開の要求がある場合は圧縮終了かどうかを判断する第４８工程を実行するとともに、前記再開の要求がない場合は前記第４１工程に戻り、前記インターフェース制御手段から再開の要求がある場合は処理を終了する
ことを特徴とする請求項５に記載の符号圧縮化／データ変換装置。
【請求項１０】
前記オーディオ符号変換制御手段は、
前記オーディオキャプチャバッファに格納されたデータがあるかどうかを判断する第５１工程を実行し、前記オーディオキャプチャバッファから原画像を取り出す第５２工程を実行し、現在までに圧縮した圧縮サンプル数を加算する第５３工程を実行し、原音声をオーディオ圧縮する第５４工程を実行し、生成したオーディオ符号を前記オーディオ符号バッファに格納する第５５工程を実行し、
その後に、前記インターフェース制御手段から一時停止の要求があるかどうかを判断する第５６工程を実行するとともに、前記インターフェース制御手段から一時停止の要求がない場合は前記第５１工程に戻り、
前記インターフェース制御手段から一時停止の要求がある場合は前記インターフェース制御手段から再開の要求があるかどうかを判断する第５７工程を実行するとともに、前記インターフェース制御手段から再開の要求がない場合は前記第５７工程の先頭に戻り、
前記インターフェース制御手段から再開の要求がある場合は圧縮終了かどうかを判断する第５８工程を実行し、前記圧縮終了でない場合は前記第５１工程に戻り、前記圧縮終了である場合は処理を終了する
ことを特徴とする請求項５に記載の符号圧縮化／データ変換装置。
【請求項１１】
前記一時停止・再開制御手段は、
ビデオ圧縮を一時停止する第６１工程を実行し、オーディオ圧縮を一時停止する第６２工程を実行し、負荷が低下したかどうかを判断する第６３工程を実行し、前記負荷が低下していない場合は前記第６３工程に戻り、前記負荷が低下している場合は現在までに前記ビデオ符号変換制御手段が圧縮した圧縮フレーム数から前記第１の時間量を計算する第６４工程を実行し、
その後に、現在までに前記オーディオ符号変換制御手段が圧縮した圧縮サンプル数から前記第２の時間量を計算する第６５工程を実行し、
その後に、前記圧縮フレーム数と前記圧縮サンプル数から前記第１の時間量と前記第２の時間量の差を計算する第６６工程を実行し、
その後に、前記第１の時間量と前記第２の時間量の差と現在のキャプチャフレーム番号からビデオ圧縮（ビデオ符号圧縮化）の再開フレーム番号を計算する第６７工程を実行し、
その後に、前記第１の時間量と前記第２の時間量の差と現在のキャプチャサンプル数からオーディオ圧縮（オーディオ符号圧縮化）の再開サンプル番号を計算する第６８工程を実行し、
その後に、前記ビデオキャプチャバッファに格納された原画像を全て破棄する第６９工程を実行し、ビデオ圧縮（ビデオ符号圧縮化）を再開する第７０工程を実行し、前記オーディオキャプチャバッファに格納された原音声を全て破棄する第７１工程を実行し、オーディオ圧縮（オーディオ符号圧縮化）を再開する第７２工程を実行する
ことを特徴とする請求項５に記載の符号圧縮化／データ変換装置。
【請求項１２】
前記インターフェース制御手段は、前記ビデオキャプチャバッファへの前記画像の格納または前記オーディオキャプチャバッファへの前記音声の格納が不可能となったとき、前記ビデオ符号変換制御手段と前記オーディオ符号変換制御手段を一時停止して、前記アプリケーションから渡されるビデオとオーディオのキャプチャデータを圧縮しないで、所定応答を前記アプリケーションに返し、ビデオ符号とオーディオ符号の時間量の差が少なくなるようにビデオ圧縮（ビデオ符号圧縮化）とオーディオ圧縮（オーディオ符号圧縮化）の再開時刻を変えて、リアルタイム符号圧縮化を再開する
ことを特徴とする請求項６乃至１１のいずれか一項に記載の符号圧縮化／データ変換装置。
【請求項１３】
前記インターフェース制御手段は、前記ビデオキャプチャバッファへの前記画像の格納または前記オーディオキャプチャバッファへの前記音声の格納が不可能となったとき、前記ビデオ符号変換制御手段と前記オーディオ符号変換制御手段を一時停止して、前記アプリケーションから渡される原画像と原音声を処理しないで、所定応答を返し、
その後に、生成したビデオ符号とオーディオ符号の時間量の差を調べて、前記ビデオ符号の方が多い場合は差が少なくなるようにオーディオ圧縮（オーディオ符号圧縮化）の再開時刻を早め、前記ビデオ符号の方が少ない場合は差が少なくなるようにオーディオ圧縮（オーディオ符号圧縮化）の再開時刻を遅くする
ことを特徴とする請求項１２に記載の符号圧縮化／データ変換装置。
【請求項１４】
複数のプログラムが動作できるシステム上で画像と音声を符号圧縮化してリアルタイムで蓄積媒体に記録する符号圧縮化／データ変換方法であって、
前記システム上で動作する所定のアプリケーションから供給された前記画像をビデオキャプチャバッファに格納し、前記音声をオーディオキャプチャバッファに格納するとともに、前記アプリケーションからの要求に応じて、前記画像および前記音声に対する符号圧縮化もしくはデータ変換動作を制御するインタフェース制御工程と、
前記インタフェース制御工程における制御に従って前記画像および前記音声に対する符号圧縮化もしくはデータ変換動作を行う符号圧縮化工程と、
ビデオキャプチャバッファへの前記画像の格納が不可能となったとき、符号圧縮化もしくはデータ変換またはキャプチャした画像データを圧縮しないでアプリケーションに所定応答を返す工程と、
オーディオキャプチャバッファへの前記音声の格納が不可能となったとき、符号圧縮化もしくはデータ変換またはキャプチャした音声データを圧縮しないでアプリケーションに所定応答を返す工程と、
前記システムの負荷が低下したとき、前記画像に関して現在までに符号圧縮化されたフレームの数をフレームレートで除算することによって第１の時間量を算出し、前記音声に関して現在までに符号圧縮化されたサンプルの数をサンプリング周波数で除算することによって第２の時間量を算出し、前記第１の時間量と前記第２の時間量との差を算出し、前記差と現在のキャプチャフレーム番号とから前記画像の符号圧縮化の再開フレーム番号を算出し、前記差と現在のキャプチャサンプル数とから前記音声の符号圧縮化の再開サンプル番号を算出し、ビデオ圧縮（ビデオ符号圧縮化）とオーディオ圧縮を再開する工程と、
前記アプリケーションが直接圧縮処理に関与しなくてもよいように、画像圧縮処理を集約して処理するインターフェース制御工程を有し、
前記インタフェース制御工程においては、他のプログラムの実行によりシステムの負荷が上がり、前記ビデオキャプチャバッファへの前記画像の格納および前記音声の前記オーディオキャプチャバッファへの格納の少なくともいずれか一方が不可能となった場合、前記画像および前記音声に対する前記符号圧縮化を一時停止させ、前記システムの負荷が低下したとき、前記画像および前記音声に対する前記符号圧縮化もしくはデータ変換動作を再開させ、
前記符号圧縮化工程においては、前記データ変換動作を再開させる際、前記一時停止時点までに符号圧縮化された画像が、符号圧縮化された音声よりも時間軸上進んでいる場合には、画像の符号圧縮化の開始を音声の符号圧縮化より遅らせ、符号圧縮化された音声が、符号圧縮化された画像よりも時間軸上進んでいる場合には、音声の符号圧縮化の開始を画像の符号圧縮化より遅らせる
ことを特徴とする符号圧縮化／データ変換方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像・音声符号圧縮化技術に係り、特にアプリケーションが処理しなくても、システムの負荷が上がったときに画像・画像・音声符号圧縮化を自動的に容易に一時停止し、システムの負荷が下がったときに当該画像・音声符号圧縮化を再開するシステムを構築でき、負荷が下がると直ちに符号圧縮化を再開できる符号圧縮化／データ変換装置及び符号圧縮化／データ変換方法に関する。
【０００２】
【従来の技術】
従来、画像をデジタル化して、ＣＤ−ＲＯＭやハードディスクなどの記録媒体に記録する場合、そのデータ量は巨大なものとなるため、通常は符号圧縮化して記録される。このような符号圧縮化方法には、各種の符号圧縮化方式があり、特に、画像の空間周波数が低周波に集中する性質を利用して圧縮を行うＤＣＴ（Ｄｉｓｃｒｅｔｅ  Ｃｏｓｉｎｅ  Ｔｒａｎｓｆｏｒｍ）をベースとした符号化方式が比較的多く使用されている。当該符号化方式は、ＪＰＥＧ（Ｊｏｉｎｔ  Ｐｈｏｔｏｇｒａｐｈｉｃ  Ｅｘｐｅｒｔ  Ｇｒｏｕｐ）や、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅｓ  Ｅｘｐｅｒｔ  Ｇｒｏｕｐ）１またはＭＰＥＧ２などの国際標準の符号化方式として採用されている。
【０００３】
以下に、ＭＰＥＧの場合の従来の圧縮動作について説明する。
【０００４】
図４は、画像圧縮を行うビデオ符号変換制御手段１０の構成図である。図４の画像圧縮では原画像をＭＰＥＧで符号圧縮化可能な色信号の形式（ＹＵＶ形式）に変換するＹＵＶ変換手段１１と、前／後フレームと現フレームの画像の動きをブロック（ＭＰＥＧでは１６画素×１６画素）の領域毎に検索する動き検索手段１２と、ブロックの画像を空間周波数に変換するＤＣＴ手段１３と量子化を行う量子化手段１４と、量子化から元に戻す逆量子化を行う逆量子化手段１７と、周波数変換から元に戻す逆ＤＣＴ手段１６と、ブロック単位で画像の動きを補償して新たな参照フレームを生成する動き補償手段１５と、可変長符号化を行う可変長符号化手段１８から構成されている。
【０００５】
画像圧縮は図４に示すように原画像をＹＵＶ変換手段１１でＹＵＶデータに変換して、各ピクチャ種別に応じた圧縮を行う。
【０００６】
Ｉピクチャの場合はＹＵＶデータをブロックに分割してブロック毎にＤＣＴ手段１３により空間周波数に変換して量子化手段１４により量子化して可変長符号化手段１８により可変長符号化して圧縮符号を出力する。また、量子化したブロックを逆量子化手段１７で逆量子化して逆ＤＣＴ手段１６で逆周波数変換して参照フレームを作成する。
【０００７】
Ｐピクチャの場合はＹＵＶデータをブロックに分割してブロック毎に動き検索手段１２で参照フレームとして格納されている前フレームのブロックの中で相関が最も高いブロックを求めて、相関が最も高い前フレームのブロックとの差分をＤＣＴ手段１３により空間周波数に変換して量子化手段１４により量子化して可変長符号化手段１８により可変長符号化して圧縮符号を出力する。また、量子化したブロックを逆量子化手段１７で逆量子化して逆ＤＣＴ手段１６で逆周波数変換して動き補償手段１５で動き補償したブロックと加算して参照フレームを作成する。
【０００８】
Ｂピクチャの場合はＹＵＶデータをブロックに分割してブロック毎に動き検索手段１２で参照フレームとして格納されている前／後フレームのブロックの中で相関が最も高いブロックを求めて、相関が最も高い前／後フレームのブロックとの差分をＤＣＴ手段１３により空間周波数に変換して量子化手段１４により量子化して可変長符号化手段１８により可変長符号化して圧縮符号を出力する。Ｂピクチャの場合は参照フレームは作成する必要がない。
【０００９】
図５は音声圧縮を行うオーディオ符号変換制御手段２０の構成図である。音声圧縮は原音から１ＡＵＵ分の原音データを切り出す原音切り出し手段２１と、１ＡＡＵ単位で周波数帯域写像処理を行う３２の周波数帯域写像を生成する周波数帯域写像手段２２と、線形量子化及び符号化を行う量子化符号化手段２３と、符号化されたデータに付加情報を加えて１ＡＡＵ分の圧縮データを作成するフレーム形成手段２４と、心理聴覚処理を行う心理聴覚処理手段２５で構成されている。
【００１０】
音声圧縮は図５に示すように原音を原音切り出し手段２１で１ＡＡＵ分（ＭＰＥＧオーディオレイヤ２の場合は１１５２サンプル）切り出して、ＡＡＵ単位で圧縮する。周波数帯域写像手段２２は入力信号をサブバンド分析フィルタで３２帯域のサブバンド信号に分解して、各サブバンド信号に対してスケールファクタを計算して、ダイナミックレンジをそろえる。心理聴覚処理手段２５は入力信号を高速フーリエ変換して、その結果を使って心理聴覚のマスキングを計算して、各サブバンドに対するビット割り当てを計算する。量子化符号化手段２３は決定したビット割り当てに従って量子化、符号化を行う。フレーム形成手段２４は量子化符号化したサブバンド信号にヘッダや補助情報を追加して、ビットストリームに整形して、圧縮符号として出力する。
【００１１】
図６は、ビデオ符号とオーディオ符号を多重化する画像・音声符号変換制御手段３０の構造を示した図である。図６を参照すると、システム符号化全体の制御を行う画像・音声符号変換制御手段３０は、オーディオ符号をパック化するオーディオパック生成手段３１と、ビデオ符号をパック化するビデオパック生成手段３２と、ビットレートを調整するためにデコーダでは読み飛ばされるパディングパックを生成するパディングパック生成手段３３と、パケットヘッダに挿入するタイムスタンプを生成するタイムスタンプ生成手段３４から構成される。
【００１２】
システム符号化の処理では、図６に示すように、画像・音声符号変換制御手段３０でビデオ符号とオーディオ符号を受け取り、ビデオパック生成手段３２とオーディオパック生成手段３１を制御して、システム符号として出力する。
【００１３】
ビデオパック生成手段３２は、ビデオ符号からパケット分のデータを切り出して、パケットヘッダ及びパックヘッダを付加する。また、オーディオパック生成手段３１は、オーディオ符号からパケット分のデータを切り出して、パケットヘッダ及びパックヘッダを付加する。
【００１４】
この時にビデオの場合であって、パケットのデータにフレームの先頭が含まれているときには、タイムスタンプ生成手段３４で生成したＰＴＳやＤＴＳを挿入する。オーディオの場合であって、パケットのデータにＡＡＵの先頭が含まれているときには、タイムスタンプ生成手段３４で生成したＰＴＳを挿入する。また、パディングパック生成手段３３は、システムビットレートが平均するようにパディングパックを挿入する。
【００１５】
このように画像と音声をリアルタイムで圧縮するときには、画像と音声の符号量の差が大きくなった場合に少ない方の符号を補間して、画像と音声の同期を取る必要がある。このような従来技術としては、例えば、特開平１０−４２２９５号公報に記載のものがある（第１従来技術）。
【００１６】
上記第１従来技術では、実際の圧縮を行わずに前後のフレームと同一であることを示す符号を生成することで、ビデオ符号を補間して同期を取っている。
【００１７】
また、他の従来技術としては、例えば、特開平１０−１６４５５６号公報に記載のもの（第２従来技術）、特開２０００−２０６９９４号公報に記載のもの（第３従来技術）がある。
【００１８】
上記第２従来技術及び上記第３従来技術では、無音の符号を挿入することで、オーディオ符号を補間して同期を取っている。
【００１９】
さらに他の従来技術としては、例えば、特開２０００−７８５３１号公報に記載のもの（第４従来技術）がある。
【００２０】
上記第４従来技術では、無音に相当するダミーオーディオデータを挿入することで、オーディオ符号を補間して同期を取っている。
【００２１】
【発明が解決しようとする課題】
しかしながら、上記従来技術では、ビデオ圧縮（ビデオ符号圧縮化）またはオーディオ圧縮（オーディオ符号圧縮化）のどちらかが連続して符号を生成できることを前提としている。このために、複数のプログラムが動作できるシステム上でソフトウェアによるリアルタイム圧縮を行っている場合、他のプログラムが動作して圧縮を継続できない程の重い負荷がかかったときは画像と音声の同期を取ることができなくなり、圧縮を停止しなければならなくなるという問題点があった。
【００２２】
また、負荷が下がってから符号圧縮化を再開するときは、キャプチャデバイスの初期化や符号圧縮化のためのメモリ獲得・ファイルオープンを行う必要があるので、その処理時間分だけ符号圧縮化の再開が遅れるという問題点もあった。
【００２３】
本発明は斯かる問題点を鑑みてなされたものであり、その目的とするところは、アプリケーションが処理しなくても、システムの負荷が上がったときに画像・音声符号圧縮化を自動的に容易に一時停止し、システムの負荷が下がったときに当該画像・音声符号圧縮化を再開するシステムを構築でき、負荷が下がると直ちに符号圧縮化を再開できる符号圧縮化／データ変換装置及び符号圧縮化／データ変換方法を提供する点にある。
【００２４】
【課題を解決するための手段】
この発明の請求項１に記載の発明の要旨は、複数のプログラムが動作できるシステム上で画像と音声、もしくはそれらのどちらかを符号圧縮化あるいはデータ変換し、リアルタイムに記録もしくは配信する符号圧縮化／データ変換装置であって、システム上で動作する所定のアプリケーションから供給された画像をビデオキャプチャバッファに格納し、音声をオーディオキャプチャバッファに格納するとともに、アプリケーションからの要求に応じて、画像および音声に対する符号圧縮化もしくはデータ変換動作を制御するインタフェース制御手段と、インタフェース制御手段による制御に従って画像および音声に対する符号圧縮化もしくはデータ変換動作を行う符号圧縮化手段とを備え、インタフェース制御手段は、ビデオキャプチャバッファへの画像の格納およびオーディオキャプチャバッファへの音声の格納ができない場合には、符号圧縮化手段による画像および音声に対する符号圧縮化を一時停止させ、その後一定時間経過後、またはシステムの負荷が低下したとき、符号圧縮化手段による画像および音声に対する符号圧縮化もしくはデータ変換動作を再開させ、符号圧縮化手段は、データ変換動作を再開させる際、一時停止時点までに符号圧縮化された画像が、符号圧縮化された音声よりも時間軸上進んでいる場合には、画像の符号圧縮化の開始を音声の符号圧縮化より遅らせ、符号圧縮化された音声が、符号圧縮化された画像よりも時間軸上進んでいる場合には、音声の符号圧縮化の開始を画像の符号圧縮化より遅らせることを特徴とする符号圧縮化／データ変換装置に存する。
また、この発明の請求項２に記載の発明の要旨は、インタフェース制御手段は、ビデオキャプチャバッファへの画像の格納および音声のオーディオキャプチャバッファへの格納の少なくともいずれか一方が不可能となった場合、符号圧縮化手段に対して、画像および音声に対する符号圧縮化を一時停止させ、アプリケーションに対して要求に対する所定の応答を返すことを特徴とする請求項１に記載の符号圧縮化／データ変換装置に存する。
また、この発明の請求項３に記載の発明の要旨は、インタフェース制御手段は、システムの負荷が低下したとき、画像に関して現在までに符号圧縮化されたフレームの数をフレームレートで除算することによって第１の時間量を算出し、音声に関して現在までに符号圧縮化されたサンプルの数をサンプリング周波数で除算することによって第２の時間量を算出し、第１の時間量と第２の時間量との差を算出し、差と現在のキャプチャフレーム番号とから画像の符号圧縮化の再開フレーム番号を算出し、差と現在のキャプチャサンプル数とから音声の符号圧縮化の再開サンプル番号を算出することを特徴とする請求項１に記載の符号圧縮化／データ変換装置に存する。
また、この発明の請求項４に記載の発明の要旨は、インタフェース制御手段は、アプリケーションからの要求により、符号圧縮化手段による画像および音声に対する符号圧縮化もしくはデータ変換動作を制御し、アプリケーションが直接符号圧縮化もしくはデータ変換処理に関与しなくてよいように、符号圧縮化もしくはデータ変換動作を集約して制御し、システムの負荷が上がり、ビデオキャプチャバッファへの画像の格納および音声のオーディオキャプチャバッファへの格納が不可能となった場合、符号圧縮化手段による画像および音声に対する符号圧縮化を一時停止させ、システムの負荷が低下したとき、符号圧縮化手段による画像および音声に対する符号圧縮化もしくはデータ変換動作を再開させ、アプリケーションからの制御を必要としないように構成されていることを特徴とする請求項１乃至３のいずれか一項に記載の符号圧縮化／データ変換装置に存する。
また、この発明の請求項５に記載の発明の要旨は、符号圧縮化手段は、画像に対して符号圧縮化を行うビデオ符号変換制御手段と、音声に対して符号圧縮化を行うオーディオ符号変換制御手段と、符号圧縮化された画像および音声に対して所定のシステム符号化を行う画像・音声符号変換制御手段とを有し、インタフェース制御手段は、アプリケーションからの要求に従って符号圧縮化手段を制御し、符号圧縮化もしくはデータ変換またはキャプチャした画像を一時的に格納するビデオキャプチャバッファと、ビデオ符号変換制御手段によって生成されたビデオ符号を一時的に格納するビデオ符号バッファと、符号圧縮化もしくはデータ変換またはキャプチャしたオーディオデータを一時的に格納するオーディオキャプチャバッファと、オーディオ符号変換制御手段によって生成されたオーディオ符号を一時的に格納するオーディオ符号バッファと、画像・音声符号変換制御手段によって生成されたシステム符号を一時的に格納するシステムバッファを有し、インターフェース制御手段は、符号圧縮化もしくはデータ変換またはキャプチャした原画像をビデオ符号変換制御手段に渡す原画像受け渡し制御手段と、符号圧縮化もしくはデータ変換またはキャプチャした原音声をオーディオ符号変換制御手段に渡す原音声受け渡し制御手段と、符号圧縮化の一時停止と再開を行う一時停止・再開制御手段を有し、アプリケーションは、符号圧縮化もしくはデータ変換またはキャプチャした原画像と原音声を受け取って、インターフェース制御手段に渡して、インターフェース制御手段に渡されたシステム符号をシステム符号ファイルに書き込み、インターフェース制御手段は、符号圧縮化もしくはデータ変換またはキャプチャした原画像をビデオキャプチャバッファに格納し、符号圧縮化もしくはデータ変換またはキャプチャした原音声をオーディオキャプチャバッファに格納し、ビデオ符号変換制御手段とオーディオ符号変換制御手段と画像・音声符号変換制御手段を制御し、生成されたビデオ符号はビデオ符号バッファに格納され、生成されたオーディオ符号はオーディオ符号バッファに格納され、生成されたシステム符号はシステムバッファに格納され、システム符号をアプリケーションに渡すことを特徴とする請求項４に記載の符号圧縮化／データ変換装置に存する。
また、この発明の請求項６に記載の発明の要旨は、アプリケーションは、ビデオ符号のビデオキャプチャデバイスとオーディオ符号のオーディオキャプチャデバイスを初期化する第１工程を実行し、符号圧縮化手段に開始要求を出して必要なメモリを獲得させる第２工程を実行し、ＭＰＥＧ符号を記録するファイルをオープンする第３工程を実行し、ビデオキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがあるかどうかを判断する第４工程を実行し、ビデオキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがある場合は原画像受け渡し制御手段を呼び出す第５工程を実行し、ビデオキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがない場合はオーディオキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがあるかどうかを判断する第６工程を実行し、オーディオキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがある場合は原音声受け渡し制御手段を呼び出す第７工程を実行し、オーディオのキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがない場合はシステム符号があるかどうかを判断する第８工程を実行し、オーディオキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがある場合はシステム符号をファイルに書き込む第９工程を実行するとともに、オーディオキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがない場合は符号圧縮化もしくはデータ変換またはキャプチャが終了したかどうかを判断する第１０工程を実行し、符号圧縮化もしくはデータ変換またはキャプチャが終了していない場合は第４工程に戻り、符号圧縮化もしくはデータ変換またはキャプチャが終了した場合はファイルをクローズする第１１工程を実行するとともに、符号圧縮化手段に終了要求を出して獲得したメモリを解放させる第１２工程を実行することを特徴とする請求項５に記載の符号圧縮化／データ変換装置に存する。
また、この発明の請求項７に記載の発明の要旨は、原画像受け渡し制御手段は、キャプチャフレーム番号を加算する第２１工程を実行するとともに、一時停止かどうかを判断する第２２工程を実行し、一時停止でない場合はビデオキャプチャバッファに符号圧縮化もしくはデータ変換またはキャプチャした原画像が格納可能かどうかを判断する第２６工程に進み、一時停止である場合は再開かどうかを判断する第２３工程を実行するとともに、再開でない場合は所定応答をアプリケーションに返す第２５工程に進み、再開である場合はキャプチャフレーム番号が再開フレーム番号以上であるかどうかを判断する第２４工程を実行するとともに、キャプチャフレーム番号が再開フレーム番号以上でない場合は所定応答をアプリケーションに返す第２５工程を実行して処理を終了し、キャプチャフレーム番号が再開フレーム番号以上である場合はビデオキャプチャバッファに符号圧縮化もしくはデータ変換またはキャプチャした原画像が格納可能かどうかを判断する第２６工程を実行するとともに、キャプチャフレーム番号が再開フレーム番号以上でない場合は一時停止・再開制御手段を起動する第２９工程に進み、ビデオキャプチャバッファに符号圧縮化もしくはデータ変換またはキャプチャした原画像が格納可能である場合は符号圧縮化もしくはデータ変換またはキャプチャした原画像をビデオキャプチャバッファに格納する第２７工程を実行するとともに、ビデオ符号変換制御手段に符号圧縮化もしくはデータ変換またはキャプチャしたデータがあることを知らせる第２８工程を実行し、第２９工程に進んだ場合は一時停止・再開制御手段を起動することを特徴とする請求項５に記載の符号圧縮化／データ変換装置に存する。
また、この発明の請求項８に記載の発明の要旨は、原音声受け渡し制御手段は、キャプチャサンプル番号を加算する第３１工程を実行するとともに、一時停止かどうかを判断する第３２工程を実行し、一時停止でない場合はオーディオキャプチャバッファに符号圧縮化もしくはデータ変換またはキャプチャした原画像が格納可能かどうかを判断する第３６工程に進み、一時停止である場合は再開かどうかを判断する第３３工程を実行するとともに、再開でない場合は所定応答をアプリケーションに返す第３５工程に進み、再開である場合はキャプチャサンプル番号が再開サンプル番号以上であるかどうかを判断する第３４工程を実行するとともに、キャプチャサンプル番号が再開サンプル番号以上でない場合は所定応答をアプリケーションに返す第３５工程を実行して処理を終了し、キャプチャサンプル番号が再開サンプル番号以上である場合はオーディオキャプチャバッファに符号圧縮化もしくはデータ変換またはキャプチャした原画像が格納可能かどうかを判断する第３６工程を実行するとともに、オーディオキャプチャバッファに符号圧縮化もしくはデータ変換またはキャプチャした原画像が格納可能でない場合は一時停止・再開制御手段を起動する第３９工程に進み、オーディオキャプチャバッファに符号圧縮化もしくはデータ変換またはキャプチャした原画像が格納可能である場合は符号圧縮化もしくはデータ変換またはキャプチャした原画像をオーディオキャプチャバッファに格納する第３７工程を実行するとともに、ビデオ符号変換制御手段に符号圧縮化もしくはデータ変換またはキャプチャしたデータがあることを知らせる第３８工程を実行し、第３９工程に進んだ場合は一時停止・再開制御手段を起動することを特徴とする請求項５に記載の符号圧縮化／データ変換装置に存する。
また、この発明の請求項９に記載の発明の要旨は、ビデオ符号変換制御手段は、ビデオキャプチャバッファに格納されたデータがあるかどうかを判断する第４１工程を実行し、ビデオキャプチャバッファから原画像を取り出す第４２工程を実行し、現在までに圧縮した圧縮フレーム数を加算する第４３工程を実行し、原画像をビデオ圧縮する第４４工程を実行し、生成したビデオ符号をビデオ符号バッファに格納する第４５工程を実行し、その後に、インターフェース制御手段から一時停止の要求があるかどうかを判断する第４６工程を実行し、インターフェース制御手段から一時停止の要求がない場合は第４１工程に戻り、インターフェース制御手段から一時停止の要求がある場合はインターフェース制御手段から再開の要求があるかどうかを判断する第４７工程を実行するとともに、インターフェース制御手段から再開の要求がない場合は第４７工程の先頭に戻り、インターフェース制御手段から再開の要求がある場合は圧縮終了かどうかを判断する第４８工程を実行するとともに、再開の要求がない場合は第４１工程に戻り、インターフェース制御手段から再開の要求がある場合は処理を終了することを特徴とする請求項５に記載の符号圧縮化／データ変換装置に存する。
また、この発明の請求項１０に記載の発明の要旨は、オーディオ符号変換制御手段は、オーディオキャプチャバッファに格納されたデータがあるかどうかを判断する第５１工程を実行し、オーディオキャプチャバッファから原画像を取り出す第５２工程を実行し、現在までに圧縮した圧縮サンプル数を加算する第５３工程を実行し、原音声をオーディオ圧縮する第５４工程を実行し、生成したオーディオ符号をオーディオ符号バッファに格納する第５５工程を実行し、その後に、インターフェース制御手段から一時停止の要求があるかどうかを判断する第５６工程を実行するとともに、インターフェース制御手段から一時停止の要求がない場合は第５１工程に戻り、インターフェース制御手段から一時停止の要求がある場合はインターフェース制御手段から再開の要求があるかどうかを判断する第５７工程を実行するとともに、インターフェース制御手段から再開の要求がない場合は第５７工程の先頭に戻り、インターフェース制御手段から再開の要求がある場合は圧縮終了かどうかを判断する第５８工程を実行し、圧縮終了でない場合は第５１工程に戻り、圧縮終了である場合は処理を終了することを特徴とする請求項５に記載の符号圧縮化／データ変換装置に存する。
また、この発明の請求項１１に記載の発明の要旨は、一時停止・再開制御手段は、ビデオ圧縮を一時停止する第６１工程を実行し、オーディオ圧縮を一時停止する第６２工程を実行し、負荷が低下したかどうかを判断する第６３工程を実行し、負荷が低下していない場合は第６３工程に戻り、負荷が低下している場合は現在までにビデオ符号変換制御手段が圧縮した圧縮フレーム数から第１の時間量を計算する第６４工程を実行し、その後に、現在までにオーディオ符号変換制御手段が圧縮した圧縮サンプル数から第２の時間量を計算する第６５工程を実行し、その後に、圧縮フレーム数と圧縮サンプル数から第１の時間量と第２の時間量の差を計算する第６６工程を実行し、その後に、第１の時間量と第２の時間量の差と現在のキャプチャフレーム番号からビデオ圧縮（ビデオ符号圧縮化）の再開フレーム番号を計算する第６７工程を実行し、その後に、第１の時間量と第２の時間量の差と現在のキャプチャサンプル数からオーディオ圧縮（オーディオ符号圧縮化）の再開サンプル番号を計算する第６８工程を実行し、その後に、ビデオキャプチャバッファに格納された原画像を全て破棄する第６９工程を実行し、ビデオ圧縮（ビデオ符号圧縮化）を再開する第７０工程を実行し、オーディオキャプチャバッファに格納された原音声を全て破棄する第７１工程を実行し、オーディオ圧縮（オーディオ符号圧縮化）を再開する第７２工程を実行することを特徴とする請求項５に記載の符号圧縮化／データ変換装置に存する。
また、この発明の請求項１２に記載の発明の要旨は、インターフェース制御手段は、ビデオキャプチャバッファへの画像の格納またはオーディオキャプチャバッファへの音声の格納が不可能となったとき、ビデオ符号変換制御手段とオーディオ符号変換制御手段を一時停止して、アプリケーションから渡されるビデオとオーディオのキャプチャデータを圧縮しないで、所定応答をアプリケーションに返し、ビデオ符号とオーディオ符号の時間量の差が少なくなるようにビデオ圧縮（ビデオ符号圧縮化）とオーディオ圧縮（オーディオ符号圧縮化）の再開時刻を変えて、リアルタイム符号圧縮化を再開することを特徴とする請求項６乃至１１のいずれか一項に記載の符号圧縮化／データ変換装置に存する。
また、この発明の請求項１３に記載の発明の要旨は、インターフェース制御手段は、ビデオキャプチャバッファへの画像の格納またはオーディオキャプチャバッファへの音声の格納が不可能となったとき、ビデオ符号変換制御手段とオーディオ符号変換制御手段を一時停止して、アプリケーションから渡される原画像と原音声を処理しないで、所定応答を返し、その後に、生成したビデオ符号とオーディオ符号の時間量の差を調べて、ビデオ符号の方が多い場合は差が少なくなるようにオーディオ圧縮（オーディオ符号圧縮化）の再開時刻を早め、ビデオ符号の方が少ない場合は差が少なくなるようにオーディオ圧縮（オーディオ符号圧縮化）の再開時刻を遅くすることを特徴とする請求項１２に記載の符号圧縮化／データ変換装置に存する。
また、この発明の請求項１４に記載の発明の要旨は、複数のプログラムが動作できるシステム上で画像と音声を符号圧縮化してリアルタイムで蓄積媒体に記録する符号圧縮化／データ変換方法であって、前記システム上で動作する所定のアプリケーションから供給された前記画像をビデオキャプチャバッファに格納し、前記音声をオーディオキャプチャバッファに格納するとともに、前記アプリケーションからの要求に応じて、前記画像および前記音声に対する符号圧縮化もしくはデータ変換動作を制御するインタフェース制御工程と、前記インタフェース制御工程における制御に従って前記画像および前記音声に対する符号圧縮化もしくはデータ変換動作を行う符号圧縮化工程と、ビデオキャプチャバッファへの画像の格納が不可能となったとき、符号圧縮化もしくはデータ変換またはキャプチャした画像データを圧縮しないでアプリケーションに所定応答を返す工程と、オーディオキャプチャバッファへの音声の格納が不可能となったとき、符号圧縮化もしくはデータ変換またはキャプチャした音声データを圧縮しないでアプリケーションに所定応答を返す工程と、システムの負荷が低下したとき、画像に関して現在までに符号圧縮化されたフレームの数をフレームレートで除算することによって第１の時間量を算出し、音声に関して現在までに符号圧縮化されたサンプルの数をサンプリング周波数で除算することによって第２の時間量を算出し、第１の時間量と第２の時間量との差を算出し、差と現在のキャプチャフレーム番号とから画像の符号圧縮化の再開フレーム番号を算出し、差と現在のキャプチャサンプル数とから音声の符号圧縮化の再開サンプル番号を算出し、ビデオ圧縮（ビデオ符号圧縮化）とオーディオ圧縮を再開する工程と、アプリケーションが直接圧縮処理に関与しなくてもよいように、画像圧縮処理を集約して処理するインターフェース制御工程を有し、前記インタフェース制御工程においては、他のプログラムの実行によりシステムの負荷が上がり、前記ビデオキャプチャバッファへの前記画像の格納および前記音声の前記オーディオキャプチャバッファへの格納の少なくともいずれか一方が不可能となった場合、前記画像および前記音声に対する前記符号圧縮化を一時停止させ、前記システムの負荷が低下したとき、前記画像および前記音声に対する前記符号圧縮化もしくはデータ変換動作を再開させ、前記符号圧縮化工程においては、前記データ変換動作を再開させる際、前記一時停止時点までに符号圧縮化された画像が、符号圧縮化された音声よりも時間軸上進んでいる場合には、画像の符号圧縮化の開始を音声の符号圧縮化より遅らせ、符号圧縮化された音声が、符号圧縮化された画像よりも時間軸上進んでいる場合には、音声の符号圧縮化の開始を画像の符号圧縮化より遅らせることを特徴とする符号圧縮化／データ変換方法に存する。
【００２５】
【発明の実施の形態】
本発明は、複数のプログラムが動作できるシステム上で画像と音声を符号圧縮化してリアルタイムで蓄積媒体に記録する符号圧縮化／データ変換装置において、他のプログラムの実行によりシステムの負荷が上がり、リアルタイム圧縮が継続できなくなったときに、アプリケーション側は何も処理しなくても、自動的にリアルタイム圧縮を一時停止して、その後で自動的にＡＶ同期を取ってリアルタイム符号圧縮化を再開できる構成を提供するものである。
【００２６】
（第１の実施の形態）
以下、本発明の第１の実施の形態を図面に基づいて詳細に説明する。図７を用いて後述するように、アプリケーション４１が直接圧縮処理に関与しなくてもよいようにインターフェース制御手段４２が画像圧縮処理を集約して処理する。
【００２７】
また、インターフェース制御手段４２はビデオ圧縮（ビデオ符号圧縮化）またはオーディオ圧縮（オーディオ符号圧縮化）が継続できなくなるとビデオ符号変換制御手段１０とオーディオ符号変換制御手段２０を一時停止して、アプリケーション４１から渡されるビデオとオーディオのキャプチャデータを圧縮しないで、所定応答をアプリケーション４１に返す。次に、ビデオ符号とオーディオ符号の時間量の差が少なくなるようにビデオ圧縮（ビデオ符号圧縮化）とオーディオ圧縮（オーディオ符号圧縮化）の再開時刻を変えて、リアルタイム符号圧縮化を再開する。以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、本実施の形態では、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ
Ｇｒｏｕｐ）圧縮方式の場合について図を参照して説明する。
【００２８】
図１は、ＭＰＥＧビデオに準拠した符号フォーマットの構成図である。図１を参照すると、本実施の形態では、ビデオデータは１個以上のビデオシーケンス（Ｖｉｄｅｏ  Ｓｅｑｕｅｎｃｅ）から構成されていて、ビデオシーケンスエンドコードで終了する。
【００２９】
上記ビデオシーケンスは、ビデオシーケンスヘッダ（Ｖｉｄｅｏ  Ｓｅｑｕｅｎｃｅ  Ｈｅａｄｅｒ）と、１個以上のＧＯＰ（Ｇｒｏｕｐ  Ｏｆ  Ｐｉｃｔｕｒｅ）から構成される。ＧＯＰは１個以上のピクチャから構成され、１つのピクチャが１枚の画像を示している。ピクチャの先頭にはピクチャ種別等の情報を含んだピクチャヘッダが置かれる。
【００３０】
上記ピクチャには、フレーム内符号のみから構成されるＩピクチャと、前方向のみのフレーム間符号から構成されるＰピクチャと、前後の双方向のフレーム間符号から構成されるＢピクチャの３種類がある。このようなピクチャは、任意の領域に分割された複数のスライスから構成される。
【００３１】
上記スライスは、左から右へ、または上から下への順序で並んだ複数のマクロブロックから構成される。当該マクロブロックは、大別してフレーム内符号であるイントラブロックと前方向や双方向のフレーム間符号であるインターブロックの２種類がある。
【００３２】
上記Ｉピクチャは、イントラブロックのみで構成されるが、ＰピクチャやＢピクチャはインターブロックのみでなくイントラブロックも含む場合がある。
【００３３】
また、上記マクロブロックは、１６×１６ドットのブロックをさらに８×８ドットのブロックに分割した輝度成分（Ｙ１，Ｙ２，Ｙ３，Ｙ４）と輝度成分に一致する領域の８×８ドットのブロックの色差成分（Ｃｂ，Ｃｒ）の６個のブロックから構成される。当該８×８ドットのブロックが符号化の最小単位となる。
【００３４】
図２は、ＭＰＥＧオーディオに準拠した符号フォーマットの構成図である。図２を参照すると、本実施の形態では、オーディオデータは１個のオーディオシーケンスから構成されて、オーディオシーケンスは１個以上のＡＡＵ（Ａｕｄｉｏ
Ａｃｃｅｓｓ  Ｕｎｉｔ：オーディオ復号単位）から構成される。
【００３５】
また、上記１個のＡＡＵは、同期ワード、ビットレート、サンプリング周波数等の情報を含んだＡＡＵヘッダと圧縮されたオーディオ符号から構成される。１個のＡＡＵが符号化の最小単位となる。
【００３６】
図３は、ＭＰＥＧシステムに準拠したビデオ符号・オーディオ符号の多重化フォーマットの構成図である。図３を参照すると、本実施の形態では、ビデオ符号・オーディオ符号は１個のシステムストリームから構成されて、システムストリームは複数のパックから構成される。
【００３７】
上記パックはパックヘッダとシステムヘッダと１個以上のパケットから構成される。また、システムヘッダはビットレート等の情報が格納されていて、２番目以降のパックには付けても、付けなくてもよい。パケットにはビデオパケットとオーディオパケットがある。
【００３８】
このうちビデオパケットは、パケットヘッダとビデオ符号から構成される。このビデオパケット内のビデオ符号のみを取り出して連続すると、一連のビデオシーケンスが構成される。
【００３９】
また、上記ビデオパケットのパケットヘッダは、パケット開始コードと、パケット長（このパケット長の直後に続くパケットデータの全バイト数）を示すコードと、再生出力の時刻を示すＰＴＳ（Ｐｒｅｓｅｎｔａｔｉｏｎ  Ｔｉｍｅ  Ｓｔａｍｐ）と、復号の時刻を示すＤＴＳ（Ｄｅｃｏｄｉｎｇ  Ｔｉｍｅ  Ｓｔａｍｐ）等から構成される。
【００４０】
上記ビデオ符号ではＩピクチャやＰピクチャがＢピクチャよりも前に符号化されるので、復号する順番と再生する順番が異なることがある。このため、時刻を示すコードも再生時と復号時の２種類が用意されていて、復号の時刻と再生の時刻が異なる場合はＰＴＳとＤＴＳの両方が出力される。復号の時刻と再生の時刻が同じ場合はＰＴＳのみが出力される。
【００４１】
また、上記オーディオパケットはパケットヘッダとオーディオ符号から構成される。このようなオーディオパケット内のオーディオ符号のみを取り出して連続することで、一連のオーディオシーケンスが構成される。
【００４２】
また、上記オーディオパケットのパケットヘッダは、パケット開始コードとパケット長を示すコードと再生出力の時刻を示すＰＴＳ（Ｐｒｅｓｅｎｔａｔｉｏｎ  Ｔｉｍｅ  Ｓｔａｍｐ）等から構成される。オーディオ符号では復号の順番と再生の順番が同じなのでＰＴＳのみが出力される。
【００４３】
上記ビデオパケットのＰＴＳとオーディオパケットのＰＴＳが一致している場合は、その符号が同時に再生されることになる。
【００４４】
以下、画像と音声をリアルタイムでＭＰＥＧ圧縮中に圧縮を一時停止してＡＶ同期を取って再開する場合の圧縮動作について説明する。図７は、本発明の第１の実施の形態に係る符号圧縮化／データ変換装置１００を説明するための機能ブロック図である。
【００４５】
図７を参照すると、本実施の形態の符号圧縮化／データ変換装置１００は、ユーザが操作するアプリケーション４１と、アプリケーション４１からの要求に従って圧縮動作を制御するインターフェース制御手段４２と、図４で後述するビデオ圧縮（ビデオ符号圧縮化）を制御するビデオ符号変換制御手段１０と、図５で後述するオーディオ圧縮（オーディオ符号圧縮化）を制御するオーディオ符号変換制御手段２０と、図６で後述するシステム符号化を制御する画像・音声符号変換制御手段３０と、符号圧縮化もしくはデータ変換またはキャプチャしたビデオデータを一時的に格納するビデオキャプチャバッファ４３と、生成したビデオ符号を一時的に格納するビデオ符号バッファ４４と、符号圧縮化もしくはデータ変換またはキャプチャしたオーディオデータを一時的に格納するオーディオキャプチャバッファ４６と、生成したオーディオ符号を一時的に格納するオーディオ符号バッファ４７と、システム符号を一時的に格納するシステムバッファ４５を中心にして構成されている。
【００４６】
インターフェース制御手段４２には、符号圧縮化もしくはデータ変換またはキャプチャした原画像をビデオ符号変換制御手段１０に渡す原画像受け渡し制御手段４８と、符号圧縮化もしくはデータ変換またはキャプチャした原音声をオーディオ符号変換制御手段２０に渡す原音声受け渡し制御手段４９と、符号圧縮化の一時停止と再開を行う一時停止・再開制御手段５０が含まれる。
【００４７】
アプリケーション４１は、符号圧縮化もしくはデータ変換またはキャプチャした原画像と原音声を受け取って、インターフェース制御手段４２に渡して、インターフェース制御手段４２に渡されたシステム符号をシステム符号ファイルに書き込む。
【００４８】
インターフェース制御手段４２は、符号圧縮化もしくはデータ変換またはキャプチャした原画像をビデオキャプチャバッファ４３に格納し、符号圧縮化もしくはデータ変換またはキャプチャした原音声をオーディオキャプチャバッファ４６に格納し、ビデオ符号変換制御手段１０とオーディオ符号変換制御手段２０と画像・音声符号変換制御手段３０を制御し、生成された符号をビデオ符号バッファ４４やオーディオ符号バッファ４７やシステムバッファ４５に格納して、アプリケーション４１に符号を渡す。
【００４９】
インターフェース制御手段４２は、ビデオ圧縮（ビデオ符号圧縮化）またはオーディオ圧縮（オーディオ符号圧縮化）が継続できなくなった際に、ビデオ符号変換制御手段１０とオーディオ符号変換制御手段２０を一時停止して、アプリケーション４１から渡される原画像と原音声を処理しないで、所定応答を返す。その後に、生成したビデオ符号とオーディオ符号の時間量の差を調べて、ビデオ符号の方が多い場合は差が少なくなるようにオーディオ圧縮（オーディオ符号圧縮化）の再開時刻を早くする。ビデオ符号の方が少ない場合は差が少なくなるようにオーディオ圧縮（オーディオ符号圧縮化）の再開時刻を遅くする。
【００５０】
本実施の形態では、このようにインターフェース制御手段４２が符号圧縮化の一時停止と再開を処理しているので、アプリケーション４１は何も処理する必要がないといった効果を奏する。
【００５１】
なお、図７に示す符号圧縮化／データ変換装置１００ではアプリケーション４１が原画像と原音声の受け取り及び生成された符号のファイル書き込みを行っているが、これに特に限定されることなく、インターフェース制御手段４２がこの２つの処理を行ってもよい。
【００５２】
次に、符号圧縮化／データ変換装置１００の動作（符号圧縮化／データ変換方法）について説明する。
【００５３】
図８は、アプリケーション４１が処理するキャプチャ符号圧縮化の一処理を説明するためのフローチャートである。図８を参照すると、本実施の形態のキャプチャ圧縮では、ビデオとオーディオのキャプチャデバイスを初期化し（ステップＳ１）、符号圧縮化制御（ビデオ符号変換制御手段１０、オーディオ符号変換制御手段２０）に開始要求を出して必要なメモリを獲得させ（ステップＳ２）、ＭＰＥＧ符号を記録するファイルをオープンし（ステップＳ３）、ビデオキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがあるかどうかを判断し（ステップＳ４）、そうでない場合（ステップＳ４のＮ）はステップＳ６に進む。そうである場合（ステップＳ４のＹ）は原画像受け渡し制御手段４８を呼び出す（ステップＳ５）。
【００５４】
その後に、オーディオのキャプチャデバイスから符号圧縮化もしくはデータ変換またはキャプチャしたデータがあるかどうかを判断し（ステップＳ６）、そうでない場合（ステップＳ６のＮ）はステップＳ８に進む。そうである場合（ステップＳ６のＹ）は原音声受け渡し制御手段４９を呼び出す（ステップＳ７）。
【００５５】
その後に、圧縮符号があるかどうかを判断して（ステップＳ８）、そうでない場合（ステップＳ８のＮ）はステップＳ１０に進む。そうである場合（ステップＳ８のＹ）は圧縮符号をファイルに書き込み（ステップＳ９）、キャプチャが終了したかどうかを判断し（ステップＳ１０）、そうでない場合（ステップＳ１０のＮ）はステップＳ４に戻る。そうである場合（ステップＳ１０のＹ）はファイルをクローズし（ステップＳ１１）、符号圧縮化制御（ビデオ符号変換制御手段１０、オーディオ符号変換制御手段２０）に終了要求を出して獲得したメモリを解放させる（ステップＳ１２）。
【００５６】
図９は、原画像受け渡し制御手段４８の一処理を説明するためのフローチャートである。図９を参照すると、本実施の形態の原画像受け渡し制御手段４８はキャプチャフレーム番号を加算し（ステップＳ２１）、一時停止かどうかを判断し（ステップＳ２２）、そうでない場合（ステップＳ２２のＮ）はステップＳ２６に進む。
【００５７】
そうである場合（ステップＳ２２のＹ）は再開かどうかを判断し（ステップＳ２３）、そうでない場合（ステップＳ２３のＮ）はステップＳ２５に進む。
【００５８】
そうである場合（ステップＳ２３のＹ）はキャプチャフレーム番号が再開フレーム番号以上であるかどうかを判断し（ステップＳ２４）、そうでない場合（ステップＳ２４のＮ）は所定応答をアプリケーション４１に返して（ステップＳ２５）、終了する。
【００５９】
そうである場合（ステップＳ２４のＹ）はビデオキャプチャバッファ４３に符号圧縮化もしくはデータ変換またはキャプチャした原画像が格納可能かどうかを判断して（ステップＳ２６）、そうでない場合（ステップＳ２６のＮ）はステップＳ２９に進む。
【００６０】
そうである場合（ステップＳ２６のＹ）は符号圧縮化もしくはデータ変換またはキャプチャした原画像をビデオキャプチャバッファ４３に格納し（ステップＳ２７）、ビデオ符号変換制御手段１０に符号圧縮化もしくはデータ変換またはキャプチャしたデータがあることを知らせる（ステップＳ２８）。
【００６１】
また、ステップＳ２９に進んだ場合は一時停止・再開制御手段５０を起動する。これはマルチタスクで動作するので、一時停止・再開制御手段５０の終了を待たずに終了する。
【００６２】
このように、本実施の形態では、一時停止中でもビデオのキャプチャ動作を止める必要がないので、直ちに再開できるといった効果を奏する。
【００６３】
図１０は、原音声受け渡し制御手段４９の一処理を説明するためのフローチャートである。図１０を参照すると、本実施の形態の原音声受け渡し制御手段４９は、キャプチャサンプル番号を加算し（ステップＳ３１）、一時停止かどうかを判断して（ステップＳ３２）、そうでない場合（ステップＳ３２のＮ）はステップＳ３６に進む。
【００６４】
そうである場合（ステップＳ３２のＹ）は再開かどうかを判断し（ステップＳ３３）、そうでない場合（ステップＳ３３のＮ）はステップＳ３５に進む。
【００６５】
そうである場合（ステップＳ３３のＹ）はキャプチャサンプル番号が再開サンプル番号以上であるかどうかを判断し（ステップＳ３４）、そうでない場合（ステップＳ３４のＮ）は所定応答をアプリケーション４１に返し（ステップＳ３５）、終了する。
【００６６】
そうである場合（ステップＳ３４のＹ）はオーディオキャプチャバッファ４６ に符号圧縮化もしくはデータ変換またはキャプチャした原音声が格納可能かどう かを判断し（ステップＳ３６）、そうでない場合（ステップＳ３６のＮ）はステ ップＳ３９に進む。
【００６７】
そうである場合（ステップＳ３６のＹ）は符号圧縮化もしくはデータ変換またはキャプチャした原音声をオーディオキャプチャバッファ４６に格納し（ステッ プＳ３７）、オーディオ符号変換制御手段２０に符号圧縮化もしくはデータ変換 またはキャプチャしたデータがあることを知らせる（ステップＳ３８）。
【００６８】
また、ステップＳ３９に進んだ場合は一時停止・再開制御手段５０を起動する。これはマルチタスクで動作するので、一時停止・再開制御手段５０の終了を待たずに終了する。
【００６９】
このように、本実施の形態では、一時停止中でもオーディオのキャプチャ動作を止める必要がないので、直ちに再開できるといった効果を奏する。
【００７０】
なお、図９や図１０に示す処理では、キャプチャバッファにデータを格納できなくなったら一時停止を始めているが、これに特に限定されることなく、前フレームと同一と見なす符号を挿入してもリアルタイムで圧縮できなくなった時に一時停止を始めてもよい。
【００７１】
図１１は、ビデオ符号変換制御手段１０の一処理を説明するためのフローチャートである。図１１を参照すると、本実施の形態のビデオ符号変換制御手段１０は、ビデオキャプチャバッファ４３に格納されたデータがあるかどうかを判断し（ステップＳ４１）、ない場合（ステップＳ４１のＮ）はステップＳ４１の先頭に戻る。ある場合（ステップＳ４１のＹ）はビデオキャプチャバッファ４３から原画像を取り出し（ステップＳ４２）、圧縮フレーム数を加算し（ステップＳ４３）、原画像をビデオ圧縮（ビデオ符号圧縮化）し（ステップＳ４４）、生成したビデオ符号をビデオ符号バッファ４４に格納する（ステップＳ４５）。
【００７２】
その後に、インターフェース制御手段４２から一時停止の要求があるかどうかを判断し（ステップＳ４６）、そうでない場合（ステップＳ４６のＮ）はステップＳ４１に戻る。
【００７３】
そうである場合（ステップＳ４６のＹ）はインターフェース制御手段４２から再開の要求があるかどうかを判断し（ステップＳ４７）、そうでない場合（ステップＳ４７のＮ）はステップＳ４７の先頭に戻る。
【００７４】
そうである場合（ステップＳ４７のＹ）は圧縮終了かどうかを判断し（ステップＳ４８）、そうでない場合（ステップＳ４８のＮ）はステップＳ４１に戻る。そうである場合（ステップＳ４８のＹ）は処理を終了する。
【００７５】
このように、本実施の形態では、インターフェース制御手段４２からの要求によりビデオ符号変換制御手段１０内で一時停止・再開を行うので、アプリケーション４１は一時停止・再開の処理を行う必要がない。また、キャプチャデバイスの初期化、メモリの獲得、ファイルのオープンがされたままで一時停止するので、直ちに再開できるといった効果を奏する。
【００７６】
図１２は、オーディオ符号変換制御手段２０の一処理を説明するためのフロー チャートである。図１２を参照すると、本実施の形態のオーディオ符号変換制御 手段２０は、オーディオキャプチャバッファ４６に格納されたデータがあるかど うかを判断し（ステップＳ５１）、オーディオキャプチャバッファ４６から原音声を取り出し（ステップＳ５２）、圧縮サンプル数を加算し（ステップＳ５３）、原音声をオーディオ圧縮（オーディオ符号圧縮化）し（ステップＳ５４）、生 成したオーディオ符号をオーディオ符号バッファ４７に格納する（ステップＳ５ ５）。
【００７７】
その後に、インターフェース制御手段４２から一時停止の要求があるかどうかを判断し（ステップＳ５６）、そうでない場合（ステップＳ５６のＮ）はステップＳ５１に戻る。
【００７８】
そうである場合（ステップＳ５６のＹ）はインターフェース制御手段４２から再開の要求があるかどうかを判断し（ステップＳ５７）、そうでない場合（ステップＳ５７のＮ）はステップＳ５７の先頭に戻る。
【００７９】
そうである場合（ステップＳ５７のＹ）は圧縮終了かどうかを判断し（ステップＳ５８）、そうでない場合（ステップＳ５８のＮ）はステップＳ５１に戻る。そうである場合（ステップＳ５８のＹ）は処理を終了する。
【００８０】
このように、本実施の形態では、インターフェース制御手段４２からの要求によりオーディオ符号変換制御手段２０内で一時停止・再開を行うので、アプリケーション４１は一時停止・再開の処理を行う必要がない。また、キャプチャデバイスの初期化、メモリの獲得、ファイルのオープンがされたままで一時停止するので、直ちに再開できるといった効果を奏する。
【００８１】
図１３は、一時停止・再開制御手段５０の一処理を説明するためのフローチャートである。図１３を参照すると、本実施の形態の一時停止・再開制御手段５０は、ビデオ圧縮（ビデオ符号圧縮化）を一時停止し（ステップＳ６１）、オーディオ圧縮（オーディオ符号圧縮化）を一時停止し（ステップＳ６２）、負荷が低下したかどうかを判断し（ステップＳ６３）、そうでない場合（ステップＳ６３のＮ）はステップＳ６３に戻る。そうである場合（ステップＳ６３のＹ）は現在までの圧縮フレーム数から時間量を計算する（ステップＳ６４）。
【００８２】
例えば、圧縮フレーム数が１２００フレームで、フレームレートが２９．９７ｆｐｓの場合は以下の計算となる。
１２００／２９．９７＝４０．０４０秒
【００８３】
その後に、現在までの圧縮サンプル数から時間量を計算する（ステップＳ６５）。
【００８４】
例えば、圧縮サンプル数が１７８６０００サンプルで、サンプリング周波数が４４．１ＫＨｚの場合は以下の計算となる。
１７８６０００／４４１００＝４０．４９８秒
【００８５】
その後に、圧縮フレーム数と圧縮サンプル数から時間量の差を計算する（ステップＳ６６）。
【００８６】
上記の例では以下の計算となる。
４０．４９８−４０．０４０＝０．４５８秒
【００８７】
その後に、時間量の差と現在のキャプチャフレーム番号からビデオ圧縮（ビデオ符号圧縮化）の再開フレーム番号を計算する（ステップＳ６７）。
【００８８】
例えば、現在のキャプチャフレーム番号が１２２９フレームの場合は以下の計算となる。
１２２９＋α×２９．９７
＝１２２９＋２．９９７
＝１２３１．９９７
四捨五入して１２３２フレームとなる（αは装置毎に最適な値、例では０．１）。
【００８９】
その後に、時間量の差と現在のキャプチャサンプル数からオーディオ圧縮（オーディオ符号圧縮化）の再開サンプル番号を計算する（ステップＳ６８）。
【００９０】
例えば、現在のキャプチャサンプル数が１８０８４３８の場合は以下の計算となる。
１８０８４３８＋０．４５８×４４１００＋α×４４１００
＝１８０８４３８＋２０２１９７．８＋４４１０
＝１８３３０４５．８
四捨五入して１８３３０４６サンプルとなる（αは装置毎に最適な値、例では０．１）。
【００９１】
その後に、ビデオキャプチャバッファ４３に格納された原画像を全て破棄し（ステップＳ６９）、ビデオ圧縮（ビデオ符号圧縮化）を再開し（ステップＳ７０）、オーディオキャプチャバッファ４６に格納された原音声を全て破棄し（ステップＳ７１）、オーディオ圧縮（オーディオ符号圧縮化）を再開する（ステップＳ７２）。
【００９２】
上記計算例ではビデオ符号がオーディオ符号よりも少ないので、ビデオ圧縮（ビデオ符号圧縮化）の再開時刻をオーディオ圧縮（オーディオ符号圧縮化）の再開時刻よりも早くしているが、ビデオ符号がオーディオ符号よりも多い場合はビデオ圧縮（ビデオ符号圧縮化）の再開時刻をオーディオ圧縮（オーディオ符号圧縮化）の再開時刻よりも遅くする。
【００９３】
このように、本実施の形態では、再開時刻をずらしてビデオ符号とオーディオ符号の時間量の差を減らすので、ビデオとオーディオの同期を取って符号圧縮化を再開できるといった効果を奏する。
【００９４】
なお、図１３に示す処理では、負荷が下がるのを待ってから再開時刻の計算を行っているが、これに特に限定されることなく、一定時間待ってから再開時刻の計算を行ってもよい。また、図１３に示す処理では、再開時刻をずらすことのみで同期を取っているが、これに特に限定されることなく、符号圧縮化制御に渡された原画像と原音声の時間量の差が大きい場合はビデオ符号に前フレームと同一と見なす符号を挿入したり、オーディオ符号に無音を挿入したりして、その差を縮めてから再開時刻をずらして同期を取ってもよい。また、ビデオ符号はフレーム単位で、オーディオ符号はＡＡＵ単位で多い方の符号を切り捨てて、その差を縮めてから再開時刻をずらして同期を取ってもよい。また、図１３に示す処理では、圧縮フレーム数と圧縮サンプル数から時間量の差を計算しているが、これに特に限定されることなく、生成したビデオ符号とオーディオ符号の符号量とビットレートから時間量の差を計算したり、生成したシステム符号のビデオパケットとオーディオパケットのタイムスタンプから時間量の差を計算してもよい。
【００９５】
図１４は、図１３で生成されたビデオ符号とオーディオ符号の一処理を説明する図である。図１３で説明したように、一時停止直後では、ビデオ符号はフレーム数が１２００フレームで２９．９７ｆｐｓなので、時間量は４０．０４０秒となり、オーディオ符号はサンプル数が１７８６０００サンプルでサンプリング周波数が４４．１ＫＨｚなので、時間量は４０．４９８秒となり、ビデオ符号とオーディオ符号の時間量の差は０．４５８秒となる。
【００９６】
また、図１３で説明したように、ビデオの再開フレーム番号が１２３２フレームで、オーディオの再開サンプル番号が１８３３０４６サンプルとなるので、先行するビデオ符号の時間量は以下の計算となる。
（１８３３０４６／４４１００）−（１２３２／２９．９７）
＝４１．５６５−４１．１０７
＝０．４５８秒
【００９７】
このように、一時停止直後のビデオ符号とオーディオ符号の時間量の差は０．４５８秒なので、その差は０．４５８−０．４５８＝０秒となり、オーディオ圧縮（オーディオ符号圧縮化）が再開した時点で差が無くなるので、ビデオとオーディオの同期が取れる。
【００９８】
以上説明したように本実施の形態によれば、以下に掲げる効果を奏する。まず第１の効果は、アプリケーション４１が処理しなくても、システムの負荷が上がったときに画像・音声符号圧縮化を自動的に容易に一時停止し、システムの負荷が下がったときに当該画像・音声符号圧縮化を再開するシステムを構築できることである。その理由は、符号圧縮化制御装置（不図示）に画像・音声の符号圧縮化の制御を集約して、アプリケーション４１が直接圧縮処理に関与しなくてもよいように構成したからである。
【００９９】
そして第２の効果は、負荷が下がると直ちに符号圧縮化を再開できることである。その理由は、キャプチャ動作を止めずに圧縮を一時停止しているので、処理時間のかかるキャプチャデバイスの初期化や符号圧縮化のためのメモリ獲得・ファイルオープンを行わずに符号圧縮化を再開できるからである。
【００１００】
（第２の実施の形態）
以下、本発明の第２の実施の形態を図面に基づいて詳細に説明する。なお、上記実施の形態において既に記述したものと同一の部分については、同一符号を付し、重複した説明は省略する。
【００１０１】
図１５は、画像サイズを変換するビデオ符号変換（画像符号変換の１形態）を実行する第２の実施の形態の機能ブロック図である。なお、本実施の形態のビデオ符号変換では、説明を簡単にするためにＩピクチャのみのビデオ符号（画像符号の１形態）を変換する構成を示す。
【００１０２】
図１５を参照すると、本実施の形態のビデオ符号変換制御手段１０は、ビデオ符号を復号する復号化手段１５１と、逆量子化を行う逆量子化手段１５２と、ビデオ符号を空間周波数から元（時間空間）に戻す逆ＤＣＴ手段１５３と、画像サイズを変換する画像サイズ変換手段１５４と、ビデオ符号を時間空間から空間周波数に変換するＤＣＴ手段１５５と、量子化を行う量子化手段１５６と、可変長符号化を行う可変長符号化手段１５７を中心にして構成されている。
【００１０３】
本実施の形態のビデオ符号変換制御手段１０が実行するビデオ符号変換では、ビデオ符号を画像データに戻してから画像サイズを変えて新たなビデオ符号に圧縮する。また、ビデオ符号を復号化手段１５１で復号して、逆量子化手段１５２で逆量子化して、逆ＤＣＴ手段１５３で画像データに戻す。次に画像データの画像サイズを画像サイズ変換手段１５４で変換して、ＤＣＴ手段１５５により空間周波数に変換して、量子化手段１５６により量子化して、可変長符号化手段１５７により可変長符号化して新たなビデオ符号を出力する。
【００１０４】
（第３の実施の形態）
以下、本発明の第３の実施の形態を図面に基づいて詳細に説明する。なお、上記実施の形態において既に記述したものと同一の部分については、同一符号を付し、重複した説明は省略する。図１６は、オーディオ符号変換（音声符号変換の１形態）を実行する第３の実施の形態の機能ブロック図である。
【００１０５】
図１６を参照すると、本実施の形態のオーディオ符号変換制御手段２０は、オーディオ符号変換はオーディオ符号（音声符号の１形態）を分解するフレーム分解手段１６１と、復号化及び逆量子化を行う再構成手段１６２と、逆写像を行う逆写像手段１６３と、音声の周波数を変換する音声周波数変換手段１６４と、３２の周波数帯域写像を生成する周波数帯域写像手段１６５と、線形量子化及び符号化を行う量子化符号化手段１６６と、符号化されたデータに付加情報を加えて圧縮データを作成するフレーム形成手段１６７と、心理聴覚処理を行う心理聴覚処理手段１６８を中心にして構成されている。
【００１０６】
本実施の形態のオーディオ符号変換制御手段２０が実行するオーディオ符号変換では、オーディオ符号を音声データに戻してから周波数を変換して新たなオーディオ符号に圧縮する。また、オーディオ符号をフレーム分解手段１６１で分解して、再構成手段１６２で復号化及び逆量子化を行い、逆写像手段１６３で逆写像を行い、音声データに戻す。次に音声周波数変換手段１６４で音声の周波数を変換して、周波数帯域写像手段１６５で音声を３２帯域のサブバンド信号に分解して、各サブバンド信号に対してスケール・ファクタを計算し、ダイナミックレンジを揃え、心理聴覚処理手段１６８で音声を高速フーリエ変換し、その結果を使って心理聴覚のマスキングを計算し、各サブバンドに対するビット割り当てを計算し、量子化符号化手段１６６で決定したビット割り当てに従って量子化、符号化を行い、フレーム形成手段１６７で量子化符号化したサブバンド信号にヘッダや補助情報を追加し、ビットストリームに整形することで、新たなオーディオ符号として出力する。
【００１０７】
（第４の実施の形態）
以下、本発明の第４の実施の形態を図面に基づいて詳細に説明する。なお、上記実施の形態において既に記述したものと同一の部分については、同一符号を付し、重複した説明は省略する。図１７は、符号圧縮を伴わない変換制御を実行する第４の実施の形態の機能ブロック図である。
【００１０８】
図１７を参照すると、本実施の形態の画像・音声符号変換制御手段３０は、ビデオ符号またはオーディオ符号の解析を行う符号解析処理手段１７１と間引き処理手段１７２を中心にして構成されている。
【００１０９】
本実施の形態の画像・音声符号変換制御手段３０が実行する符号変換では、ビデオ符号またはオーディオ符号を復号することなくそのデータ内部情報を符号解析処理手段１７１にて解析して、データ（画像の場合は色、フレーム、画素など、また音声の場合はサンプリング周波数、１サンプル当たりのビット数、チャンネル数など）の間引き処理を間引き処理手段１７２にて行い、所望の低ビットレートへ変換した新たなビデオ符号またはオーディオ符号を出力する。
【００１１０】
なお、上記実施の形態では、キャプチャされたデータのみを対象として説明を行ったが、これに特に限定されることなく、デジタル放送等で使用されるデータ（特に、デジタル圧縮化済みのデータ）にも同様に適用でき、圧縮化済みデータのトランスコード化にも適用できる。当該デジタル放送等で使用されるデータ（特に、デジタル圧縮化済みのデータ）に適用する場合は、キャプチャの処理を符号圧縮化あるいはデータ変換の処理と読み変えればよい。また、本発明が上記実施の形態に限定されず、本発明の技術思想の範囲内において、上記実施の形態は適宜変更され得ることは明らかである。また上記構成部材の数、位置、形状等は上記実施の形態に限定されず、本発明を実施する上で好適な数、位置、形状等にすることができる。また、各図において、同一構成要素には同一符号を付している。
【００１１１】
【発明の効果】
本発明は以上のように構成されているので、以下に掲げる効果を奏する。まず第１の効果は、アプリケーションが処理しなくても、システムの負荷が上がったときに画像・音声符号圧縮化を自動的に容易に一時停止し、システムの負荷が下がったときに当該画像・音声符号圧縮化を再開するシステムを構築できることである。その理由は、符号圧縮化制御装置（不図示）に画像・音声の符号圧縮化の制御を集約して、アプリケーションが直接圧縮処理に関与しなくてもよいように構成したからである。
【００１１２】
そして第２の効果は、負荷が下がると直ちに符号圧縮化を再開できることである。その理由は、キャプチャ動作を止めずに圧縮を一時停止しているので、処理時間のかかるキャプチャデバイスの初期化や符号圧縮化のためのメモリ獲得・ファイルオープンを行わずに符号圧縮化を再開できるからである。
【図面の簡単な説明】
【図１】ＭＰＥＧビデオに準拠した符号フォーマットの構成図である。
【図２】ＭＰＥＧオーディオに準拠した符号フォーマットの構成図である。
【図３】ＭＰＥＧシステムに準拠したビデオ符号・オーディオ符号の多重化フォーマットの構成図である。
【図４】画像圧縮を行うビデオ符号変換制御手段の構成図である。
【図５】音声圧縮を行うオーディオ符号変換制御手段の構成図である。
【図６】ビデオ符号とオーディオ符号を多重化する画像・音声符号変換制御手段の構造を示した図である。
【図７】本発明の第１の実施の形態に係る符号圧縮化／データ変換装置を説明するための機能ブロック図である。
【図８】アプリケーションが処理するキャプチャ符号圧縮化の一処理を説明するためのフローチャートである。
【図９】原画像受け渡し制御手段の一処理を説明するためのフローチャートである。
【図１０】原音声受け渡し制御手段の一処理を説明するためのフローチャートである。
【図１１】ビデオ符号変換制御手段の一処理を説明するためのフローチャートである。
【図１２】オーディオ符号変換制御手段の一処理を説明するためのフローチャートである。
【図１３】一時停止・再開制御手段の一処理を説明するためのフローチャートである。
【図１４】図１３で生成されたビデオ符号とオーディオ符号の一処理を説明する図である。
【図１５】画像サイズを変換するビデオ符号変換を実行する第２の実施の形態の機能ブロック図である。
【図１６】オーディオ符号変換を実行する第３の実施の形態の機能ブロック図である。
【図１７】符号圧縮を伴わない変換制御を実行する第４の実施の形態の機能ブロック図である。
【符号の説明】
１０…ビデオ符号変換制御手段
２０…オーディオ符号変換制御手段
３０…画像・音声符号変換制御手段
４１…アプリケーション
４２…インターフェース制御手段
４３…ビデオキャプチャバッファ
４４…ビデオ符号バッファ
４５…システムバッファ
４６…オーディオキャプチャバッファ
４７…オーディオ符号バッファ
４８…原画像受け渡し制御手段
４９…原音声受け渡し制御手段
５０…一時停止・再開制御手段
１００…符号圧縮化／データ変換装置
１５１…復号化手段
１５２…逆量子化手段
１５３…逆ＤＣＴ手段
１５４…画像サイズ変換手段
１５５…ＤＣＴ手段
１５６…量子化手段
１５７…可変長符号化手段
１６１…フレーム分解手段
１６２…再構成手段
１６３…逆写像手段
１６４…音声周波数変換手段
１６５…周波数帯域写像手段
１６６…量子化符号化手段
１６７…フレーム形成手段
１６８…心理聴覚処理手段
１７１…符号解析処理手段
１７２…間引き処理手段
【図１】
0003671842.tif 000002
【図２】
0003671842.tif 000003
【図３】
0003671842.tif 000004
【図４】
0003671842.tif 000005
【図５】
0003671842.tif 000006
【図６】
0003671842.tif 000007
【図７】
0003671842.tif 000008
【図８】
0003671842.tif 000009
【図９】
0003671842.tif 000010
【図１０】
0003671842.tif 000011
【図１１】
0003671842.tif 000012
【図１２】
0003671842.tif 000013
【図１３】
0003671842.tif 000014
【図１４】
0003671842.tif 000015
【図１５】
0003671842.tif 000016
【図１６】
0003671842.tif 000017
【図１７】
0003671842.tif 000018