(57)【要約】【構成】ムービファイル１を形成するＪＰＥＧデータおよび音声データとムービファイル２を形成するＪＰＥＧデータおよび音声データとを結合するとき、ＣＰＵ１２は、結合音声データの再生周波数をムービファイル１の音声データのサンプリング周波数とムービファイル２の音声データのサンプリング周波数とに基づいて算出する。算出されたサンプリング周波数は、結合ＪＰＥＧデータおよび結合音声データの再生を同時に完了させることができる周波数である。このサンプリング周波数は、結合ファイルに書き込まれる。【効果】結合音声データを結合ファイルに割り当てられたサンプリング周波数に従って再生すれば、結合ＪＰＥＧデータおよび結合音声データの再生が同時に完了する。【選択図】　図１
2004112369.tif 000002
【特許請求の範囲】
【請求項１】
第１コンテンツを形成する第１動画像信号および第１音声信号と第２コンテンツを形成する第２動画像信号および第２音声信号とをそれぞれ結合して結合コンテンツを生成するコンテンツ編集装置において、
前記結合コンテンツを形成する結合動画像信号および結合音声信号の再生時間が互いに一致する前記結合音声信号の最適再生周波数を算出する最適再生周波数算出手段、および
前記最適再生周波数を前記結合コンテンツに割り当てる周波数割り当て手段を備えることを特徴とする、コンテンツ編集装置。
【請求項２】
前記最適再生周波数算出手段は、前記第１音声信号および前記第２音声信号の合計サイズと前記第１動画像信号および前記第２動画像信号の合計記録時間とに基づいて前記最適再生周波数を算出する、請求項１記載のコンテンツ編集装置。
【請求項３】
前記第１音声信号の第１再生周波数を検出する第１再生周波数検出手段、
前記最適再生周波数と前記第１再生周波数とのずれ量に相関する第１相関値を算出する第１相関値算出手段、および
前記第１動画像信号の画面数を前記第１相関値に基づいて調整する第１画面数調整手段をさらに備える、請求項１または２記載のコンテンツ編集装置。
【請求項４】
前記第１調整手段は、前記第１動画像信号の画面数を増加させる増加手段、前記第１動画像信号の画面数を減少させる減少手段、および前記第１相関値に従うタイミングで前記増加手段および前記減少手段のいずれか一方を能動化する能動化手段を含む、請求項３記載のコンテンツ編集装置。
【請求項５】
前記能動化手段は、前記第１相関値が第１極性を示すとき前記増加手段を能動化し、前記第１相関値が第２極性を示すとき前記減少手段を能動化する、請求項４記載のコンテンツ編集装置。
【請求項６】
前記第１動画像信号を形成する複数画面の静止画像信号を一時的に格納するメモリ、および
前記メモリに格納された静止画像信号を処理順序情報に従う順序で読み出す読み出し手段をさらに備え、
前記増加手段は特定画面の静止画像信号が重複するように前記処理順序情報を作成し、
前記減少手段は特定画面の静止画像信号が欠落するように前記処理順序情報を作成する、請求項４または５記載のコンテンツ編集装置。
【請求項７】
前記第１動画像信号を形成する静止画像信号のインデックス情報を前記結合コンテンツに割り当てる情報割り当て手段をさらに備え、
前記増加手段は特定画面の静止画像信号のインデックス情報に補間を施し、
前記減少手段は特定画面の静止画像信号のインデックス情報に間引きを施す、請求項４ないし６のいずれかに記載のコンテンツ編集装置。
【請求項８】
前記第２音声信号の第２再生周波数を検出する第２再生周波数検出手段、
前記最適再生周波数と前記第２再生周波数とのずれ量に相関する第２相関値を算出する第２相関値算出手段、および
前記第２動画像信号の画面数を前記第２相関値に基づいて調整する第２画面数調整手段をさらに備える、請求項３ないし７のいずれかに記載のコンテンツ編集装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、コンテンツ結合装置に関し、特にたとえば、ディジタルビデオカメラやＴＶ番組を録画するハードディスクビデオレコーダに適用され、記録済みの第１コンテンツを形成する第１動画像信号および第１音声信号と記録済みの第２コンテンツを形成する第２動画像信号および第２音声信号とをそれぞれ結合して結合コンテンツを生成する、コンテンツ編集装置に関する。
【０００２】
【従来技術】
従来のこの種のコンテンツ編集装置の一例が、特許文献１に開示されている。この従来技術によれば、ジョイントモードが選択されると、一方のファイルの動画像信号および音声信号が内部メモリを経由して所定量ずつ他方のファイルに転送される。これによって、他方のファイルに含まれる動画像信号および音声信号の末尾に一方のファイルから転送された動画像信号および音声信号がそれぞれ接続される。つまり、２つのファイルを結合した結合ファイルが生成される。
【０００３】
【特許文献１】
特開２０００−２０７８７５号公報（第７頁−第９頁）
【０００４】
【発明が解決しようとする課題】
しかし、結合前の２つのファイル間で音声信号のサンプリング周波数にずれがある場合に、結合ファイルの音声信号を一方のサンプリング周波数に従って再生すると、動画像信号および音声信号の再生を同時に終了することができない。たとえば、一方のファイルに含まれる音声信号のサンプリング周波数が７９８０Ｈｚで、他方のファイルに含まれる音声信号のサンプリング周波数が８０４０Ｈｚである場合に、結合ファイルの音声信号を８０４０Ｈｚで再生すると、音声信号の再生が動画像信号よりも早く終了してしまう。
【０００５】
それゆえに、この発明の主たる目的は、結合動画像信号および結合音声信号の再生を同時に完了させることができる、コンテンツ編集装置を提供することである。
【０００６】
【課題を解決するための手段】
この発明は、第１コンテンツを形成する第１動画像信号および第１音声信号と第２コンテンツを形成する第２動画像信号および第２音声信号とをそれぞれ結合して結合コンテンツを生成するコンテンツ編集装置において、結合コンテンツを形成する結合動画像信号および結合音声信号の再生時間が互いに一致する結合音声信号の最適再生周波数を算出する最適再生周波数算出手段、および最適再生周波数を結合コンテンツに割り当てる周波数割り当て手段を備えることを特徴とする、コンテンツ編集装置である。
【０００７】
【作用】
結合コンテンツは、記録済みの第１コンテンツを形成する第１動画像信号および第１音声信号と記録済みの第２コンテンツを形成する第２動画像信号および第２音声信号とをそれぞれ結合して生成される。最適再生周波数算出手段は、結合コンテンツを形成する結合動画像信号および結合音声信号の再生時間が互いに一致する結合音声信号の最適再生周波数を算出し、周波数割り当て手段は、算出された最適再生周波数を結合コンテンツに割り当てる。結合コンテンツに割り当てられた最適再生周波数に従って結合音声信号を再生すれば、結合動画像信号および結合音声信号の再生が同時に完了する。
【０００８】
好ましくは、最適再生周波数算出手段は、第１音声信号および第２音声信号の合計サイズと第１動画像信号および第２動画像信号の合計記録時間とに基づいて最適再生周波数を算出する。
【０００９】
好ましくは、第１音声信号の第１再生周波数が第１再生周波数検出手段によって検出され、最適再生周波数と第１再生周波数とのずれ量に相関する第１相関値が第１相関値算出手段によって算出される。このとき、第１動画像信号の画面数は、第１相関値に基づいて第１画面数調整手段によって調整される。第１再生周波数と最適再生周波数とのずれが大きければ、動画像再生および音声再生を同時に終了することはできても、再生の途中で動画像と音声との同期が確保できない。ずれ量の相関する第１相関値に基づいて第１動画像信号の画面数を調整することで、第１動画像信号に基づく再生動画像と再生音声との間で同期を確保することができる。
【００１０】
第１調整手段の調整にあたっては、好ましくは、増加手段によって第１動画像信号の画面数が増加され、減少手段によって第１動画像信号の画面数が減少される。能動化手段は、第１相関値に従うタイミングで増加手段および減少手段のいずれか一方を能動化する。たとえば、能動化手段は、第１相関値が第１極性を示すとき増加手段を能動化し、第１相関値が第２極性を示すとき減少手段を能動化する。
【００１１】
さらに好ましくは、第１動画像信号を形成する複数画面の静止画像信号は、メモリに一時的に格納され、処理順序情報に従う順序で読み出される。このとき、増加手段は特定画面の静止画像信号が重複するように処理順序情報を作成し、減少手段は特定画面の静止画像信号が欠落するように処理順序情報を作成する。この結果、結合コンテンツ内において、静止画像信号の重複／欠落が生じる。
【００１２】
第１動画像信号を形成する静止画像信号のインデックス情報を情報割り当て手段によって結合コンテンツに割り当てる場合、好ましくは、増加手段は特定画面の静止画像信号のインデックス情報に補間を施し、減少手段は特定画面の静止画像信号のインデックス情報に間引きを施す。インデックス情報を参照して動画像再生を行えば、再生動画像を形成する画面に重複／欠落が生じる。
【００１３】
【発明の効果】
この発明によれば、最適再生周波数を結合コンテンツに割り当てるようにしたため、再生時に結合コンテンツから最適再生周波数を検出し、この最適周波数で結合音声信号を再生すれば、結合動画像信号および結合音声信号の再生を同時に完了させることができる。
【００１４】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【００１５】
【実施例】
図１を参照して、この実施例のコンテンツ編集装置（ディジタルビデオカメラ）１０は、ＣＰＵ１２を含む。メニューキー１６によってファイル結合モードが選択されると、記録媒体２２に記録された２つのムービファイルを結合するファイル結合処理が、ＣＰＵ１２によって実行される。ファイル結合処理では、所望の２つのムービファイルからＪＰＥＧデータおよび音声データが読み出され、読み出されたＪＰＥＧデータおよび音声データは、Ｉ／Ｆ回路１８およびメモリ制御回路２６を通してＳＤＲＡＭ２８に転送される。ＳＤＲＡＭ２８に格納されたＪＰＥＧデータおよび音声データはその後、メモリ制御回路２６およびＩ／Ｆ回路１８を通して記録媒体２２に戻され、新規に作成されたムービファイルつまり結合ファイルに書き込まれる。
【００１６】
なお、記録媒体２２は着脱自在であり、スロット２０に装着されたときにＩ／Ｆ回路１８を介したアクセスが可能となる。
【００１７】
ムービファイルは、ＱｕｉｃｋＴｉｍｅフォーマットに従って図２に示すように構成される。つまり、ファイルの先頭にムービファイルヘッダが配置され、ムービファイルヘッダ以降に音声チャンクおよび画像チャンクが交互に配置され、そしてファイル末尾にインデックスチャンクが配置される。各々の音声チャンクは３フレーム相当の音声データによって形成され、各々の画像チャンクは３フレームのＪＰＥＧデータによって形成される。したがって、音声チャンクとそれに続く画像チャンクとが、互いに関連する。図２において各フレームのＪＰＥＧデータに付された番号０，１，２，…ｎはフレーム番号であり、図２によれば、ｎ＋１フレームのＪＰＥＧデータがムービファイルに格納される。
【００１８】
インデックスチャンクには、音声データのインデックス情報およびＪＰＥＧデータのインデックス情報が書き込まれる。音声データのインデックス情報は、ムービファイルの先頭から各々の音声チャンクまでの距離で表される位置情報と各々の音声チャンクのサイズ情報とからなり、ＪＰＥＧデータのインデックス情報は、ムービファイルの先頭から各フレームのＪＰＥＧデータまでの距離で表される位置情報と各フレームのＪＰＥＧデータのサイズ情報とからなる。つまり、音声データは１チャンク毎に管理され、ＪＰＥＧデータは１フレーム毎に管理される。インデックスチャンクにはまた、ムービファイルに格納されたＪＰＥＧデータのフレームレート値およびトータルフレーム数、ならびにムービファイルに格納された音声データのサンプリング周波数が、制御情報として書き込まれる。
【００１９】
各々の音声チャンクのサイズは、ムービファイルヘッダを作成したディジタルビデオカメラの性能によって異なる。たとえば、ディジタルカメラに設けられたイメージセンサのフレームレートが３０ｆｐｓで、音声処理回路のサンプリング周波数が７９８０Ｈｚであれば、１秒（＝３０フレーム）に相当する音声データのサイズは７９８０バイトとなり、音声チャンクのサイズは７９８バイトとなる。別のディジタルビデオカメラに設けられたイメージセンサのフレームレートが３０ｆｐｓで、音声処理回路のサンプリング周波数が８０４０Ｈｚであれば、１秒（＝３０フレーム）に相当する音声データのサイズは８０４０バイトとなり、音声チャンクのサイズは８０４バイトとなる。記録媒体２２は着脱自在であるため、記録媒体２２に記録された複数のムービファイルに注目すると、音声チャンクのサイズは互いに異なる可能性がある。
【００２０】
ファイル結合処理では、まず、結合しようとする２つのムービファイル１および２から制御情報つまりＪＰＥＧデータのフレームレートおよびトータルフレーム数と音声データのサンプリング周波数とが検出され、結合ファイルに格納されるＪＰＥＧデータのフレームレートおよびトータルフレーム数と結合ファイルに格納される音声データの再生時のサンプリング周波数とが決定される。
【００２１】
この実施例では、ムービファイル１および２のいずれにおいてもＪＰＥＧデータは３０ｆｐｓのフレームレートを有することを前提とする。このため、結合ファイルに格納されるＪＰＥＧデータのフレームレートも３０ｆｐｓに決定される。また、結合ファイルに格納されるＪＰＥＧデータのトータルフレーム数は、ムービファイル１および２から検出されたトータルフレーム数の合計値に決定される。一方、結合ファイルに格納される音声データの再生時のサンプリング周波数は、ムービファイル１および２から検出されたサンプリング周波数に基づいて、ＪＰＥＧデータおよび音声データの再生が同時に終了する周波数に決定される。
【００２２】
ただし、結合ファイルのトータルフレーム数が多いほど、再生画像と再生音声とのずれが大きくなる。そこで、ムービファイル１のＪＰＥＧデータを結合ファイルに転送するときは、ムービファイル１に割り当てられたサンプリング周波数と結合ファイル用に求められたサンプリング周波数とのずれ量に基づいて、フレーム補間またはフレーム間引きが実行される。また、ムービファイル２のＪＰＥＧデータを結合ファイルに転送するときは、ムービファイル２に割り当てられたサンプリング周波数と結合ファイル用に求められたサンプリング周波数とのずれ量に基づいて、フレーム補間またはフレーム間引きが実行される。
【００２３】
なお、フレーム補間／間引きの実行によって、ファイル結合の途中でフレーム数の変動が発生する。しかし、ムービファイル１のＪＰＥＧデータにフレーム補間が実行されるときはムービファイル２のＪＰＥＧデータにフレーム間引きが施され、ムービファイル１のＪＰＥＧデータにフレーム間引きが実行されるときはムービファイル２のＪＰＥＧデータにフレーム補間が施される。このため、結合ファイルに格納されるＪＰＥＧデータのトータルフレーム数は、結合処理の開始時に決定されたトータルフレーム数から大きくずれることはない。
【００２４】
フレーム補間／間引き処理について、以下に詳しく説明する。結合ファイルに格納されるＪＰＥＧデータおよび音声データのインデックス情報は、図３に示す要領でＳＤＲＡＭ２６上に作成される。また、記録媒体２２内のムービファイル１または２からＳＤＲＡＭ２６に転送されたＪＰＥＧデータのアクセス情報が、図４に示すアクセス情報テーブル１２ｔ上に作成される。
【００２５】
図３を参照して、ＳＤＲＡＭ２６に作成されるＪＰＥＧデータのインデックス情報は、結合ファイルの先頭から各フレームのＪＰＥＧデータまでの距離で表される位置情報と、各フレームのＪＰＥＧデータのサイズ情報とを含み、ＳＤＲＡＭ２６に作成される音声データのインデックス情報は、結合ファイルの先頭から各々の音声チャンクまでの距離で表される位置情報と、各々の音声チャンクのサイズ情報とを含む。また、図４を参照して、アクセス情報は、ＳＤＲＡＭ２６に格納されたＪＰＥＧデータの先頭アドレスを示すアドレス情報と、各フレームのＪＰＥＧデータのサイズを示す情報とを含む。図４において、変数ｉは結合ファイルに書き込まれるＪＰＥＧデータのフレーム番号である。フレーム補間／間引き処理は、かかるインデックス情報およびアクセス情報に対して施される。
【００２６】
フレーム補間処理が実行される場合、インデックス情報は図５（Ａ）〜図５（Ｃ）に示す要領でＳＤＲＡＭ２６上に作成され、アクセス情報は図６（Ａ）〜図６（Ｃ）に示す要領でアクセス情報テーブル１２ｔ上に作成される。
【００２７】
図５（Ａ）によれば、ＪＰＥＧデータＰのインデックス情報がＳＤＲＡＭ２６に設定されている。この状態でフレーム補間が必要になると、図５（Ｂ）に示すように同じＪＰＥＧデータＰのインデックス情報が連続して設定される。こうしてＪＰＥＧデータＰのインデックス情報が補間された後は、図５（Ｃ）に示すようにＪＰＥＧデータＰ＋１のインデックス情報がＳＤＲＡＭ２６に設定される。
【００２８】
また、図６（Ａ）によれば、ＪＰＥＧデータＰのアクセス情報が変数ｉ（＝Ｐ）に割り当てられている。この状態でフレーム補間が必要になると、図６（Ｂ）に示すようにＪＰＥＧデータＰのアクセス情報が変数ｉ（＝Ｐ＋１）に割り当てられる。こうしてＪＰＥＧデータＰのアクセス情報が補間された後は、図６（Ｃ）に示すようにＪＰＥＧデータＰ＋１のアクセス情報が変数ｉ（＝Ｐ＋２）に割り当てられる。
【００２９】
フレーム間引き処理が実行される場合、インデックス情報は図７（Ａ）〜図７（Ｃ）に示す要領でＳＤＲＡＭ２６上に作成され、アクセス情報は図８（Ａ）〜図８（Ｃ）に示す要領でアクセス情報テーブル１２ｔ上に作成される。
【００３０】
図７（Ａ）によれば、ＪＰＥＧデータＰのインデックス情報とＪＰＥＧデータＰ＋１のインデックス情報とが、ＳＤＲＡＭ２６に設定されている。この状態でフレーム間引きが必要になると、図７（Ｂ）に示すように、ＪＰＥＧデータＰ＋１のインデックス情報がＪＰＥＧデータＰ＋２のインデックス情報によって上書きされる。これによって、ＪＰＥＧデータＰ＋１のインデックス情報が間引かれる。ＪＰＥＧデータＰ＋２のインデックス情報の次は、図７（Ｃ）に示すようにＪＰＥＧデータＰ＋３のインデックス情報が設定される。
【００３１】
また、図８（Ａ）によれば、ＪＰＥＧデータＰのアクセス情報とＪＰＥＧデータＰ＋１のアクセス情報とが、アクセス情報テーブル５２ｂに設定されている。この状態でフレーム間引きが必要になると、図８（Ｂ）に示すように、ＪＰＥＧデータＰ＋１のアクセス情報がＪＰＥＧデータＰ＋２のアクセス情報によって上書きされる。これによって、ＪＰＥＧデータＰ＋１のアクセス情報が間引かれる。ＪＰＥＧデータＰ＋２のアクセス情報の次は、図８（Ｃ）に示すようにＪＰＥＧデータＰ＋３のアクセス情報が設定される。
【００３２】
ＳＤＲＡＭ２６に格納されたＪＰＥＧデータは、アクセス情報テーブル１２ｔを参照して読み出され、結合ファイルに書き込まれる。ムービファイル１または２からＳＤＲＡＭ２６へは各フレームのＪＰＥＧデータが順次転送されるが、アクセス情報にフレーム補間が施されたときは特定フレームのＪＰＥＧデータが２回連続してＳＤＲＡＭ２６から結合ファイルに転送され、アクセス情報にフレーム間引きが施されたときは特定フレームのＪＰＥＧデータの読み出しが取り消される。この結果、結合ファイルに格納されるＪＰＥＧデータに、部分的な重複または欠落が生じる。アクセス情報の補間／間引きとともにインデックス情報の補間／間引きも行われているため、結合ファイルに格納されたＪＰＥＧデータおよびインデックス情報の間でずれが生じることはない。
【００３３】
なお、ムービファイル１または２からＳＤＲＡＭ２６へのＪＰＥＧデータの転送は、基本的に３フレーム単位で実行される。この３フレーム単位のＪＰＥＧデータ転送処理の合間で、３フレーム相当の音声データがムービファイル１または２からＳＤＲＡＭ２６に転送される。３フレームのＪＰＥＧデータおよび３フレーム相当の音声データがＳＤＲＡＭ２６に確保されると、これらのデータがまとめて結合ファイルに転送される。結合ファイルには、音声チャンクおよび画像チャンクが１つずつ形成される。
【００３４】
結合ファイルへのＪＰＥＧデータおよび音声データの転送が完了すると、ファイル結合処理の開始時に決定された制御情報（フレームレート，トータルフレーム数およびサンプリング周波数）とＳＤＲＡＭ２６上に作成されたインデックス情報とを含むインデックスチャンクが結合ファイルの末尾に格納され、これによって結合ファイルが完成する。
【００３５】
メニューキー１６の操作によって所望のムービファイル（結合ファイル含む）の再生が指示されると、ＣＰＵ１２によってファイル再生処理が実行される。まず所望のムービファイルのインデックスチャンクから制御情報が検出され、検出した制御情報に含まれるサンプリング周波数が音声処理回路３４に設定される。続いて、所望のムービファイルに格納されたＪＰＥＧデータおよび音声データがインデックス情報に基づいて所定量ずつ読み出され、メモリ制御回路２６を通してＳＤＲＡＭ２８に書き込まれる。
【００３６】
ＪＰＥＧコーデック２４は、ＳＤＲＡＭ２８に格納された各フレームのＪＰＥＧデータをメモリ制御回路２６を通して読み出し、読み出されたＪＰＥＧデータにＪＰＥＧ伸長を施す。伸長された画像データは、メモリ制御回路２６を通してＳＤＲＡＭ２８に書き込まれ、その後メモリ制御回路２６を通してビデオエンコーダ３０に与えられる。ビデオエンコーダ３０は与えられた画像データをコンポジットビデオ信号に変換し、変換されたコンポジットビデオ信号をモニタ３２に与える。この結果、再生動画像が画面に表示される。
【００３７】
音声処理回路３４は、ＳＤＲＡＭ２８に格納された音声データをメモリ制御回路２６を通して読み出し、読み出された音声データを再生開示時に設定されたサンプリング周波数に従ってアナログ音声信号に変換する。変換されたアナログ音声信号は、スピーカ３６から出力される。
【００３８】
ＣＰＵ１２は、詳しくは、図９〜図１６に示すフロー図に従ってファイル結合を行い、図１７に示すフロー図に従ってファイル再生を行う。なお、これらのフロー図に対応する制御プログラムは、ＲＯＭ１４に記憶されている。
【００３９】
まず、ファイル結合に関して、図９のステップＳ１ではファイル選択処理を行う。これによって、結合すべき２つのムービファイル１および２が選択される。
【００４０】
ステップＳ３ではムービファイル１のインデックスチャンクから制御情報を検出し、続くステップＳ５では検出された制御情報に基づいて各種変数を設定する。検出される制御情報には、ＪＰＥＧデータのフレームレートおよびトータルフレーム数と、音声データのサンプリング周波数とが含まれる。フレームレートは変数ｆｒｍ＿ｒａｔｅ１として設定され、トータルフレーム数は変数ｔｏｔａｌ＿ｆｒｍ１として設定され、そしてサンプリング周波数は変数ａｕｄ＿ｆｒｅｑ１として設定される。
【００４１】
ステップＳ７およびＳ９では、ムービファイル２についてステップＳ３およびＳ５と同様の処理を実行する。つまり、ムービファイル２の制御情報をステップＳ７で検出し、検出された制御情報に基づく各種変数をステップＳ９で設定する。ムービファイル２に含まれるＪＰＥＧデータのフレームレートは変数ｆｒｍ＿ｒａｔｅ２として設定され、ムービファイル２に含まれるＪＰＥＧデータのトータルフレーム数は変数ｔｏｔａｌ＿ｆｒｍ２として設定され、そしてムービファイル２に含まれる音声データのサンプリング周波数は変数ａｕｄ＿ｆｒｅｑ２として設定される。
【００４２】
ステップＳ１１では、変数ｆｒｍ＿ｒａｔｅ３およびｔｏｔａｌ＿ｆｒｍ３を数１および数２に従って算出し、変数ａｕｄ＿ｆｒｅｑ３を数３〜数６に従って算出する。ここで、変数ｆｒｍ＿ｒａｔｅ３およびｔｏｔａｌ＿ｆｒｍ３は、結合ファイルに格納されるＪＰＥＧデータのフレームレートおよびトータルフレーム数を表し、変数ａｕｄ＿ｆｒｅｑ３は結合ファイルに格納される音声データを再生するときのサンプリング周波数を表す。
【００４３】
【数１】
ｆｒｍ＿ｒａｔｅ３＝ｆｒｍ＿ｒａｔｅ１
【００４４】
【数２】
ｔｏｔａｌ＿ｆｒｍ３＝ｔｏｔａｌ＿ｆｒｍ１＋ｔｏｔａｌ＿ｆｒｍ２
【００４５】
【数３】
ａｕｄ＿ｓｚ１＝
ａｕｄ＿ｆｒｅｑ１＊ｔｏｔａｌ＿ｆｒｍ１／ｆｒｍ＿ｒａｔｅ１
【００４６】
【数４】
ａｕｄ＿ｓｚ２＝
ａｕｄ＿ｆｒｅｑ２＊ｔｏｔａｌ＿ｆｒｍ２／ｆｒｍ＿ｒａｔｅ２
【００４７】
【数５】
ｆｒｍ＿ｓｅｃ＝ｔｏｔａｌ＿ｆｒｍ３／ｆｒｍ＿ｒａｔｅ３
【００４８】
【数６】
ａｕｄ＿ｆｒｅｑ３＝（ａｕｄ＿ｓｚ１＋ａｕｄ＿ｓｚ２）／ｆｒｍ＿ｓｅｃ数１によれば、変数ｆｒｍ＿ｒａｔｅ１が変数ｆｒｍ＿ｒａｔｅ３として設定される。ＪＰＥＧデータのフレームレートはムービファイル１およびムービファイル２の間で一致しているため、変数ｆｒｍ＿ｒａｔｅ１およびｆｒｍ＿ｒａｔｅ２のいずれを変数ｆｒｍ＿ｒａｔｅ３として設定してもよい。
【００４９】
数２によれば、変数ｔｏｔａｌ＿ｆｒｍ１およびｔｏｔａｌ＿ｆｒｍ２が互いに加算される。これによって、結合ファイルに格納されるＪＰＥＧデータのトータルフレーム数が求められる。
【００５０】
数３ではムービファイル１に格納された音声データのサイズａｕｄ＿ｓｚ１が求められ、数４ではムービファイル２に格納された音声データのサイズａｕｄ＿ｓｚ２が求められ、そして数５では結合ファイルに格納されるＪＰＥＧデータの再生に要する時間ｆｒｍ＿ｓｅｃが求められる。数６によれば、各々の音声データの合成サイズ（＝ａｕｄ＿ｓｚ１＋ａｕｄ＿ｓｚ２）が、時間ｆｒｍ＿ｓｅｃによって割り算される。割り算によって求められた周波数は、結合ファイルに格納されたＪＰＥＧデータおよび音声データの再生を同時に終了させることができる音声データのサンプリング周波数である。
【００５１】
たとえば、ムービファイル１に格納されたＪＰＥＧデータのフレームレートおよびトータルフレーム数がそれぞれ３０ｆｐｓおよび５４０００フレーム（＝１８００秒）で、かつムービファイル１に格納された音声データのサンプリング周波数が７９８０Ｈｚである場合、変数ｆｒｍ＿ｒａｔｅ１は“３０”に設定され、変数ｔｏｔａｌ＿ｆｒｍ１は“５４０００”に設定され、そして変数ａｕｄ＿ｆｒｅｑ１が“７９８０”に設定される。
【００５２】
また、ムービファイル２に格納されたＪＰＥＧデータのフレームレートおよびトータルフレーム数がそれぞれ３０ｆｐｓおよび１０８０００フレーム（＝３６００秒）で、かつムービファイル２に格納された音声データのサンプリング周波数が８０４０Ｈｚである場合、変数ｆｒｍ＿ｒａｔｅ１は“３０”に設定され、変数ｔｏｔａｌ＿ｆｒｍ１は“１０８０００”に設定され、そして変数ａｕｄ＿ｆｒｅｑ１が“８０４０”に設定される。
【００５３】
この場合、結合ファイルに関連する変数ｆｒｍ＿ｒａｔｅ３，ｔｏｔａｌ＿ｆｒｍ３およびａｕｄ＿ｆｒｅｑ３は、それぞれ“３０”，“１６２０００”および“８０２０”となる。つまり、結合ファイルに格納されるＪＰＥＧデータのフレームレートおよびトータルフレーム数は、それぞれ３０ｆｐｓおよび１６２０００フレーム（＝５４００秒）に決定され、結合ファイルに格納される音声データのサンプリング周波数は、８０２０Ｈｚに決定される。
【００５４】
ステップＳ１３では、変数ｆｒｍ＿ｎｕｍおよびΔｆｒｍ＿ｎｕｍを“０”に設定する。変数ｆｒｍ＿ｎｕｍは、注目するフレームのＪＰＥＧデータをＳＤＲＡＭ２８のどの位置に書き込むべきかを特定するための変数であり、“０”〜“３”の間で更新される。ただし、実際に意味を持つ数値は“０”，“１”および“２”である。変数Δｆｒｍ＿ｎｕｍは、フレーム補間／間引き処理に起因するフレーム数の変動量を示す変数である。
【００５５】
ステップＳ１５では、変数ａｕｄ＿ｆｒｅｑ３およびａｕｄ＿ｆｒｅｑ１が互いに一致するかどうか判断する。そして、ＹＥＳであればステップＳ１９で変数ｆｒｍ＿ｃｒｃｔ１を“０”に設定してからステップＳ２１に進むが、ＮＯであればステップＳ１７で数７および数８に従って変数ｆｒｍ＿ｃｒｃｔ１を算出してからステップＳ２１に進む。
【００５６】
【数７】
ｆｒｍｎｕｍ＿ｒｅｐ１＝（ａｕｄ＿ｓｚ１／ａｕｄ＿ｆｒｅｑ３）＊ｆｒｍ＿ｒａｔｅ３
【００５７】
【数８】
ｆｒｍ＿ｃｒｃｔ１＝ｔｏｔａｌ＿ｆｒｍ１／（ｔｏｔａｌ＿ｆｒｍ１−ｆｒｍｎｕｍ＿ｒｅｐ１）
数７によって求められる変数ｆｒｍｎｕｍ＿ｒｅｐ１は、ムービファイル１に格納された音声データを変数ａｕｄ＿ｆｒｅｑ３に従うサンプリング周波数で再生したときに、音声データおよびＪＰＥＧデータの再生を同時に終了させるために必要なフレーム数である。数８では、変数ｔｏｔａｌ＿ｆｒｍ１から変数ｆｒｍｎｕｍ＿ｒｅｐ１が引き算され、変数ｔｏｔａｌ＿ｆｒｍ１が引き算値で割り算される。
【００５８】
こうして得られる変数ｆｒｍ＿ｃｒｃｔ１は、ムービファイル１および３の間でのサンプリング周波数のずれ量に相関する相関値であり、フレーム補間およびフレーム間引きのいずれの処理をどの程度の周期で行うべきかを表すこととなる。変数ｆｒｍ＿ｃｒｃｔ１が示す数値の大きさによって周期が特定され、数値の極性によってフレーム補間およびフレーム間引きのいずれを行うかが特定される。なお、負極性がフレーム補間に対応し、正極性がフレーム間引きに対応する。
【００５９】
変数ｆｒｍ＿ｒａｔｅ１，ｔｏｔａｌ＿ｆｒｍ１，ａｕｄ＿ｆｒｅｑ１，ｆｒｍ＿ｒａｔｅ２，ｔｏｔａｌ＿ｆｒｍ２およびａｕｄ＿ｆｒｅｑ２が上述の数値をとる場合、変数ｆｒｍ＿ｃｒｃｔ１は、“２００”に決定される（小数点以下は切り捨て）。この場合、２００フレームに１回の割合でフレーム間引きが実行される。
【００６０】
ステップＳ２１では結合ファイルのファイルヘッダを作成し、ステップＳ２３では変数ｉおよびｎｅｘｔ＿ｃｒｃｔを“０”に設定する。変数ｉは、上述のように、ムービファイル１または２に格納されたＪＰＥＧデータを特定するための変数である。変数ｎｅｘｔ＿ｃｒｃｔは、フレーム補間／間引き処理が保留状態であるかどうかを判別するための変数である。保留状態のとき、変数ｎｅｘｔ＿ｃｒｃｔは“１”を示す。
【００６１】
ステップＳ２５ではムービファイル１に格納されたｉフレーム目のＪＰＥＧデータをＳＤＲＡＭ２８に転送する。詳しくは、Ｉ／Ｆ回路１８を通して記録媒体２２にアクセスし、ムービファイル１からｉフレーム目のＪＰＥＧデータを検出し、そして検出したＪＰＥＧデータをメモリ制御回路２６を通してＳＤＲＡＭ２８に書き込む。書き込み位置は、変数ｆｒｍ＿ｎｕｍによって特定される。
【００６２】
ステップＳ２７では変数ｉの値を判別し、ステップＳ２９では変数ｆｒｍ＿ｃｒｃｔ１の値を判別し、ステップＳ３１では変数ｉを変数ｆｒｍ＿ｃｒｃｔ１で割り算したときの余り（＝ｉ％ｆｒｍ＿ｃｒｃｔ１）を判別し、そしてステップＳ３３では変数ｎｅｘｔ＿ｃｒｃｔの値を判別する。
【００６３】
ここで、変数ｉが“０”である場合、変数ｆｒｍ＿ｃｒｃｔ１が“０”である場合、あるいは余りｉ％ｆｒｍ＿ｃｒｃｔ１が“０”以外でかつ変数ｎｅｘｔ＿ｃｒｃｔが“０”である場合は、現フレームはフレーム補間／間引き処理を行うべきフレームではないと判断し、ステップＳ５９に進む。これに対して、変数ｉおよびｆｒｍ＿ｃｒｃｔ１の各々が“０”以外でかつ余りｉ％ｆｒｍ＿ｃｒｃｔ１が“０”である場合、あるいは変数ｉおよびｆｒｍ＿ｃｒｃｔ１および余りｉ％ｆｒｍ＿ｃｒｃｔ１の各々が“０”以外でかつ変数ｎｅｘｔ＿ｃｒｃｔが“１”である場合は、現フレームはフレーム補間／間引き処理を行うべきフレームであると判断して、ステップＳ３５に進む。
【００６４】
ステップＳ３５では、変数ｆｒｍ＿ｃｒｃｔ１が“０”未満であるかどうか判断する。ここでＹＥＳであればつまり変数ｆｒｍ＿ｃｒｃｔ１が負極性であれば、フレーム補間処理が必要であると判断してステップＳ３７に進むが、ＮＯであればつまり変数ｆｒｍ＿ｃｒｃｔ１が正極性であれば、フレーム間引き処理が必要であると判断してステップＳ４９に進む。
【００６５】
ステップＳ３７では変数ｆｒｍ＿ｎｕｍを“２”と比較し、ｆｒｍ＿ｎｕｍ＝２であれば、ステップＳ５７で変数ｎｅｘｔ＿ｃｒｃｔを“１”に設定してからステップＳ５９に進む。上述のように、ムービファイル上では３フレームのＪＰＥＧデータによって１つの画像チャンクが形成され、ＳＤＲＡＭ２８に転送されたＪＰＥＧデータの結合ファイルへの書き込みはチャンク単位で実行される。一方、ｆｒｍ＿ｎｕｍ＝２は３フレームのＪＰＥＧデータが既にＳＤＲＡＭ２６に格納されていることを意味し、このときはフレーム補間処理を行うことができない。そこで、フレーム補間処理を保留状態とするべく、ステップＳ５７で変数ｎｅｘｔ＿ｃｒｃｔを“１”に設定する。フレーム補間処理は、次フレームで実行される。
【００６６】
これに対して、変数ｆｒｍ＿ｎｕｍが“０”または“１”であれば、フレーム補間処理を実行するべく、ステップＳ３９に進む。まずステップＳ３９で変数ｎｅｘｔ＿ｃｒｃｔを“０”に設定する。つまり、これからフレーム補間処理が実行されるため、保留状態を解除するべく変数ｎｅｘｔ＿ｃｒｃｔを“０”に戻す。
【００６７】
続くステップＳ４１では、ｉフレーム目のＪＰＥＧデータのインデックス情報をＳＤＲＡＭ２８に作成する。上述のように、ムービファイルのインデックスチャンクでは、ＪＰＥＧデータのファイル上の位置およびサイズは１フレーム毎に管理される。このため、ステップＳ４１では、１フレームのＪＰＥＧデータの位置情報およびサイズ情報をインデックス情報として作成する。また、３フレームのＪＰＥＧデータによって１つの画像チャンクが形成されるため、現フレームが連続する３フレームの何番目であるかを変数ｆｒｍ＿ｎｕｍから特定し、これによってインデックス情報をＳＤＲＡＭ２６のどの位置に作成するかを決定する。図５（Ａ）に示すようにインデックス情報がマッピングされている状態でステップＳ４１が実行された場合、マッピング状態は図５（Ａ）から図５（Ｂ）に遷移する。
【００６８】
ステップＳ４３では、ｉフレーム目のＪＰＥＧデータのアクセス情報を図４に示すアクセス情報テーブル１２ｔ上に作成する。つまり、ＳＤＲＡＭ２６に存在するｉフレーム目のＪＰＥＧデータの先頭アドレス情報およびサイズ情報をアクセス情報として作成し、作成したアクセス情報をアクセス情報テーブル１２ｔに設定する。このときも、変数ｆｒｍ＿ｎｕｍに基づいてアクセス情報の書き込み先を特定する。図６（Ａ）に示すようにアクセス情報が設定されている状態でステップＳ４３が実行された場合、設定状態は図６（Ａ）から図６（Ｂ）に遷移する。
【００６９】
ステップＳ４３の処理が完了すると、ステップＳ４５で変数Δｆｒｍ＿ｎｕｍをインクリメントし、ステップＳ４７で変数ｆｒｍ＿ｎｕｍをインクリメントし、その後ステップＳ５９に進む。
【００７０】
フレーム間引き処理が必要なときはステップＳ３５からステップＳ４９に進み、変数ｆｒｍ＿ｎｕｍが“０”であるかどうか判断する。ここでｆｒｍ＿ｎｕｍ＝０と判断されると、ステップＳ５７で変数ｎｅｘｔ＿ｃｒｃｔを“１”に設定する。上述のように、変数ｆｒｍ＿ｎｕｍは“０”〜“３”の間でしか更新されない。一方、フレーム間引き処理では、ステップＳ５５で変数ｆｒｍ＿ｎｕｍがディクリメントされる。すると、ｆｒｍ＿ｎｕｍ＝０の状態でフレーム間引き処理を行ったのでは、処理が破綻してしまう。そこで、ｆｒｍ＿ｎｕｍ＝０と判断されたときは、フレーム間引き処理を保留状態とするべく、ステップＳ５７で変数ｎｅｘｔ＿ｃｒｃｔを“１”に設定する。フレーム間引き処理は、次フレームで実行される。
【００７１】
これに対して、変数ｆｒｍ＿ｎｕｍが“１”または“２”であれば、フレーム間引き処理を行うべく、ステップＳ５１に進む。ステップＳ５１では変数ｎｅｘｔ＿ｃｒｃｔを“０”に設定し、続くステップＳ５３およびＳ５５では変数Δｆｒｍ＿ｎｕｍおよびｆｒｍ＿ｎｕｍをディクリメントする。変数ｆｒｍ＿ｎｕｍがディクリメントされることで、次回のインデックス情報作成処理においてインデックス情報の上書きが発生し、次回のアクセス情報作成処理においてアクセス情報の上書きが発生する。したがって、図７（Ａ）に示すようにインデックス情報がマッピングされている状態で上書きが発生すると、マッピング状態は図７（Ａ）から図７（Ｂ）に遷移する。また、図８（Ａ）に示すようにアクセス情報が設定されている状態で上書きが発生すると、設定状態は図８（Ａ）から図８（Ｂ）に遷移する。
【００７２】
ステップＳ５９〜Ｓ６３では上述のステップＳ４１〜Ｓ４５と同様の処理を実行し、続くステップＳ６５では変数ｆｒｍ＿ｎｕｍを“３”と比較する。ここで、変数ｆｒｍ＿ｎｕｍが“１”または“２”であればそのままステップＳ７３に進むが、変数ｆｒｍ＿ｎｕｍが“３”であればステップＳ６７〜Ｓ７１の処理を経てステップＳ７３に進む。
【００７３】
ステップＳ６７では、ムービファイル１（および２）に格納された３フレーム相当の音声データをＳＤＲＡＭ２６に転送する。具体的には、現時点でＳＤＲＡＭ２６に格納されているＪＰＥＧデータに対応する３フレーム相当の音声データを特定し、特定した音声データをＩ／Ｆ回路１８を介して記録媒体２２から読み出し、そして読み出された音声データをメモリ制御回路２６を通してＳＤＲＡＭ２８に書き込む。
【００７４】
結合ファイルについて求められた音声データのサンプリング周波数が８０２０Ｈｚであれば、ムービファイル１から読み出される３フレーム相当の音声データのサイズは８０２バイトとなる。ムービファイル１に格納された音声データのサンプリング周波数が結合ファイルと異なる場合、この音声データの読み出しは、２つの音声チャンクに跨って行われる。さらに、この２つの音声チャンクは、ムービファイル１および２からそれぞれ特定される場合もある。
【００７５】
ステップＳ６９では、ＳＤＲＡＭ２６に確保されたＪＰＥＧデータおよび音声データを結合ファイルに転送する。具体的には、メモリ制御回路２６を通して３フレームのＪＰＥＧデータおよび３フレーム相当の音声データをＳＤＲＡＭ２８から読み出し、読み出されたこれらのデータをＩ／Ｆ回路１８を介して記録媒体２２内の結合ファイルに書き込む。特に、ＪＰＥＧデータについては、アクセス情報テーブル１２ｔを参照して、ＳＤＲＡＭ２８から読み出す。これによって、結合ファイル内に音声チャンクおよび画像チャンクが１つずつ形成される。ステップＳ３７〜Ｓ４７のフレーム補間処理が実行されたときは、画像チャンク内でＪＰＥＧデータの重複が生じ、ステップＳ５１〜Ｓ５５のフレーム間引き処理が行われたときは、画像チャンク内でＪＰＥＧデータの欠落が生じる。
【００７６】
ステップＳ６９の処理が完了すると、ステップＳ７１で変数ｆｒｍ＿ｎｕｍを“０”に設定する。
【００７７】
ステップＳ７３では変数ｉをインクリメントし、続くステップＳ７５では更新された変数ｉを“ｔｏｔａｌ＿ｆｒｍ１−１”と比較する。ここで変数ｉが“ｔｏｔａｌ＿ｆｒｍ１−１”以下であれば、ムービファイル１からのデータ読み出しは未だ完了していないと判断して、ステップＳ２５に戻る。これに対して、変数ｉが“ｔｏｔａｌ＿ｆｒｍ１−１”を上回るときは、ムービファイル１からのＪＰＥＧデータの読み出しが完了したと判断して、ステップＳ７７に進む。
【００７８】
ステップＳ７７〜Ｓ１３５では、必要に応じてムービファイル１の末尾部分のデータを結合ファイルに転送するとともに、ムービファイル２から結合ファイルへのデータの転送を行う。ただし、ステップＳ７７〜Ｓ８１は上述のステップＳ１５〜Ｓ１９とほぼ同様であり、ステップＳ８３〜Ｓ１３５は上述のステップＳ２１〜Ｓ７５とほぼ同様であるため、重複した説明はできる限り省略する。
【００７９】
ステップＳ７７では変数ａｕｄ＿ｆｒｅｑ３と変数ａｕｄ＿ｆｒｅｑ２とを比較し、比較結果に応じてステップＳ７９またはＳ８１で変数ｆｒｍ＿ｃｒｃｔ２を決定する。特に、ステップＳ７９では、数９および数１０に従って変数ｆｒｍ＿ｃｒｃｔ２を算出する。
【００８０】
【数９】
ｆｒｍｎｕｍ＿ｒｅｐ２＝（ａｕｄ＿ｓｚ２／ａｕｄ＿ｆｒｅｑ３）＊ｆｒｍ＿ｒａｔｅ３
【００８１】
【数１０】
ｆｒｍ＿ｃｒｃｔ２＝ｔｏｔａｌ＿ｆｒｍ２／（ｔｏｔａｌ＿ｆｒｍ２−ｆｒｍｎｕｍ＿ｒｅｐ２）
変数ｆｒｍ＿ｒａｔｅ１，ｔｏｔａｌ＿ｆｒｍ１，ａｕｄ＿ｆｒｅｑ１，ｆｒｍ＿ｒａｔｅ２，ｔｏｔａｌ＿ｆｒｍ２およびａｕｄ＿ｆｒｅｑ２が上述の数値をとる場合、変数ｆｒｍ＿ｃｒｃｔ２は“−４０１”に決定される。この場合、４０１フレームに１回の割合でフレーム補間が実行される。
【００８２】
ステップＳ８５では、ムービファイル２に格納されたｉフレーム目のＪＰＥＧデータをＳＤＲＡＭ２８に転送する。また、ステップＳ８９では変数ｆｒｍ＿ｃｒｃｔ２の値を判別し、ステップＳ９１では変数ｉを変数ｆｒｍ＿ｃｒｃｔ２で割り算した余り（＝ｉ％ｆｒｍ＿ｃｒｃｔ２）の値を判別する。さらに、ステップＳ９５では変数ｆｒｍ＿ｃｒｃｔ２が“０”未満であるかどうか判断する。
【００８３】
ステップＳ１２７では、ムービファイル（１および）２に格納された３フレーム相当の音声データをＳＤＲＡＭ２６に転送する。このときも、音声データの読み出しは、サンプリング周波数によって２つの音声チャンクに跨る場合があり、さらにはこの２つの音声チャンクがムービファイル１および２からそれぞれ特定される場合がある。ステップＳ１３５では、変数ｉを“ｔｏｔａｌ＿ｆｒｍ２−１”と比較する。ステップＳ１３５でＹＥＳと判断されると、ムービファイル２からのＪＰＥＧデータの読み出しが完了したと判断し、ステップＳ１３７以降の処理に進む。
【００８４】
ステップＳ１３７では変数ｆｒｍ＿ｎｕｍを“０”と比較する。そして、ｆｒｍ＿ｎｕｍ＝０であればそのままステップＳ１４３に進むが、ｆｒｍ＿ｎｕｍ＞０であればステップＳ１３９〜Ｓ１４１を経てステップＳ１４３に進む。ステップＳ１３９では、ムービファイル２の末尾部分に存在する３フレーム相当に満たない音声データをＳＤＲＡＭ２８に転送し、ステップＳ１４１ではＳＤＲＡＭ２８に格納された３フレーム未満のＪＰＥＧデータおよび３フレーム相当未満の音声データを結合ファイルに格納する。これによって、ムービファイル１および２から結合ファイルへのＪＰＥＧデータおよび音声データの転送が完了する。
【００８５】
ステップＳ１４３では、変数ｔｏｔａｌ＿ｆｒｍ３を更新するべく、数１１の演算を実行する。
【００８６】
【数１１】
ｔｏｔａｌ＿ｆｒｍ３＝ｔｏｔａｌ＿ｆｒｍ３＋Δｆｒｍ＿ｎｕｍ
結合ファイルに格納されるＪＰＥＧデータのトータルフレーム数は、フレーム補間／間引き処理によって変動しうるため、数１１によって変数Δｆｒｍ＿ｎｕｍを変数ｔｏｔａｌ＿ｆｒｍ３に加算するようにしている。
【００８７】
ステップＳ１４５では、変数ｆｒｍ＿ｒａｔｅ３に従うフレームレート，変数ｔｏｔａｌ＿ｆｒａｍ３に従うトータルフレーム数および変数ａｕｄ＿ｆｒｅｑ３に従うサンプリング周波数を含む制御情報を結合ファイルに書き込み、ステップＳ１４７では、ＳＤＲＡＭ２８上に作成されたインデックス情報を結合ファイルに書き込む。これによって、結合ファイルの末尾にインデックスチャンクが形成され、結合ファイルが完成する。
【００８８】
ファイル再生のために所望のムービファイルがオペレータによって選択されると、ＣＰＵ１２は図１７に示すファイル再生処理を実行する。
【００８９】
まずステップＳ２０１で所望のムービファイルから制御情報を検出し、検出された制御情報に含まれるサンプリング周波数を音声処理回路３４に設定する。ステップＳ２０３では変数ｉを“０”に設定し、ステップＳ２０５では変数ｉに対応するＪＰＥＧデータおよび音声データをＳＤＲＡＭ２８に転送する。ＪＰＥＧデータおよび音声データは所望のムービファイルから読み出され、メモリ制御回路２６を通してＳＤＲＡＭ２８に書き込まれる。
【００９０】
ステップＳ２０７では図示しないＴＧ（Ｔｉｍｉｎｇ　Ｇｅｎｅｒａｔｏｒ）から垂直同期信号が発生したかどうか判別し、ＹＥＳであればステップＳ２０９に進む。垂直同期信号は１／３０秒に１回の割合で発生し、ステップＳ２０９以降の処理は１／３０秒毎に実行される。
【００９１】
ステップＳ２０９ではＪＰＥＧコーデック２４に伸長処理を命令し、ステップＳ２１１では音声処理回路３４に再生処理を命令する。
【００９２】
ＪＰＥＧコーデック２４は、ＳＤＲＡＭ２８に格納された１フレームのＪＰＥＧデータをメモリ制御回路２６を通して読み出し、読み出されたＪＰＥＧデータに伸長処理を施す。伸長画像データは、メモリ制御回路２６を通してＳＤＲＡＭ２８に書き込まれ、その後メモリ制御回路２６を通してビデオエンコーダ３０に与えられる。ビデオエンコーダ３０は与えられた画像データをコンポジットビデオ信号に変換し、変換されたコンポジットビデオ信号をモニタ３２に与える。この結果、再生画像が画面に表示される。
【００９３】
音声処理回路３４は、ＳＤＲＡＭ２８に格納された音声データをメモリ制御回路２６を通して読み出し、読み出された音声データをステップＳ２０１で設定されたサンプリング周波数に従ってアナログ音声信号に変換する。変換されたアナログ音声信号は、スピーカ３６から出力される。
【００９４】
ステップＳ２１３ではＪＰＥＧコーデック２４の伸長処理が完了したかどうか判断し、ＹＥＳであればステップＳ２１５で変数ｉをインクリメントしてからステップＳ２１７に進む。ステップＳ２１７では更新された変数ｉを所望のムービファイルに格納されたＪＰＥＧデータのトータルフレーム数と比較し、ｉ＜トータルフレーム数であればステップＳ２０５に戻る。このため、全てのフレームのＪＰＥＧデータが再生されるまで、ステップＳ２０５〜Ｓ２１７の処理が繰り返される。
【００９５】
以上の説明から分かるように、結合ファイル（結合コンテンツ）は、ムービファイル１（第１コンテンツ）を形成するＪＰＥＧデータおよび音声データとムービファイル２（第２コンテンツ）を形成するＪＰＥＧデータおよび音声データとをそれぞれ結合して生成される。結合ファイルに格納された結合音声データを再生するときのサンプリング周波数は、ステップＳ１１で算出される。この周波数は、結合ファイルに格納された結合ＪＰＥＧデータおよび結合音声データの各々の再生時間が互いに一致する最適再生周波数であり、ステップＳ１４５で結合ファイルに書き込まれる。
【００９６】
このため、結合音声データをステップＳ１１で算出されたサンプリング周波数に従って再生すれば、結合ＪＰＥＧデータおよび結合音声データの再生が同時に完了する。
【００９７】
ただし、結合ファイルに割り当てられたサンプリング周波数とムービファイル１または２に割り当てられたサンプリング周波数とのずれが大きければ、画像および音声の再生を同時に終了することはできるものの、再生の途中で画像と音声と間に無視できないずれが生じる。
【００９８】
そこで、この実施例では、ムービファイル１に割り当てられたサンプリング周波数と結合ファイル用に算出されたサンプリング周波数とのずれ量に相関する相関値つまり変数ｆｒｍ＿ｃｒｃｔ１がステップＳ１７で算出され、ムービファイル２に割り当てられたサンプリング周波数と結合ファイル用に算出されたサンプリング周波数とのずれ量に相関する相関値つまり変数ｆｒｍ＿ｃｒｃｔ２がステップＳ７９で算出される。ムービファイル１から読み出されたＪＰＥＧデータのフレーム数は変数ｆｒｍ＿ｃｒｃｔ１に基づいて調整され、ムービファイル２から読み出されたＪＰＥＧデータのフレーム数は変数ｆｒｍ＿ｃｒｃｔ２に基づいて調整される。これによって、再生画像と再生音声とのずれを抑えることができる。
【００９９】
ＪＰＥＧデータのフレーム数は、アクセス情報の補間／間引きおよびインデックス情報の補間／間引きによって調整される。アクセス情報はＳＤＲＡＭ２８に転送されたＪＰＥＧデータの読み出し制御に用いられるため、アクセス情報の補間／間引きによって、結合ファイルへの格納時にＪＰＥＧデータのフレーム数が調整される。また、インデックス情報は結合ファイルの再生制御に用いられるため、インデックス情報の補間／間引きによって、再生時にＪＰＥＧデータのフレーム数が調整される。
【０１００】
なお、この実施例では、ＱｕｉｃｋＴｉｍｅ形式のムービファイルを結合するようにしているが、この発明はＭＰＥＧ形式のムービファイルの結合にも適用できる。
【０１０１】
また、この実施例では、アクセス情報およびインデックス情報の両方に間引き／補間を施すようにしているが、ＱｕｉｃｋＴｉｍｅ形式を考慮しなければ、インデックス情報のみに間引き／補間を施すようにしてもよい。これによって、アクセス情報の間引き処理に起因するＪＰＥＧデータの欠落を防止することができる。
【図面の簡単な説明】
【図１】この発明の一実施例を示すブロック図である。
【図２】ムービファイルの構造の一例を示す図解図である。
【図３】ＳＤＲＡＭのマッピング状態の一例を示す図解図である。
【図４】アクセス情報テーブルの構成の一例を示す図解図である。
【図５】インデックス情報の作成処理の一部を示す図解図である。
【図６】アクセス情報テーブルの作成処理の一部を示す図解図である。
【図７】インデックス情報の作成処理の他の一部を示す図解図である。
【図８】アクセス情報テーブルの作成処理の他の一部を示す図解図である。
【図９】ファイル結合を行うときのＣＰＵの動作の一部を示すフロー図である。
【図１０】ファイル結合を行うときのＣＰＵの動作の他の一部を示すフロー図である。
【図１１】ファイル結合を行うときのＣＰＵの動作のその他の一部を示すフロー図である。
【図１２】ファイル結合を行うときのＣＰＵの動作のさらにその他の一部を示すフロー図である。
【図１３】ファイル結合を行うときのＣＰＵの動作の他の一部を示すフロー図である。
【図１４】ファイル結合を行うときのＣＰＵの動作のその他の一部を示すフロー図である。
【図１５】ファイル結合を行うときのＣＰＵの動作のさらにその他の一部を示すフロー図である。
【図１６】ファイル結合を行うときのＣＰＵの動作の他の一部を示すフロー図である。
【図１７】ファイル再生を行うときのＣＰＵの動作の一部を示すフロー図である。
【符号の説明】
１０…コンテンツ編集装置
１２…ＣＰＵ
２２…記録媒体
２４…ＪＰＥＧコーデック
２６…メモリ制御回路
２８…ＳＤＲＡＭ
３０…ビデオエンコーダ
３２…モニタ
３４…音声処理回路
３６…スピーカ
【図１】
2004112369.tif 000003
【図２】
2004112369.tif 000004
【図３】
2004112369.tif 000005
【図４】
2004112369.tif 000006
【図５】
2004112369.tif 000007
【図６】
2004112369.tif 000008
【図７】
2004112369.tif 000009
【図８】
2004112369.tif 000010
【図９】
2004112369.tif 000011
【図１０】
2004112369.tif 000012
【図１１】
2004112369.tif 000013
【図１２】
2004112369.tif 000014
【図１３】
2004112369.tif 000015
【図１４】
2004112369.tif 000016
【図１５】
2004112369.tif 000017
【図１６】
2004112369.tif 000018
【図１７】
2004112369.tif 000019