"時系列を持つコンテンツを構成するメディアのデータを含むメディアデータと、前記メディアデータ毎に対応付けられたデータであって、前記コンテンツ中の時間位置と前記メディアデータ中のデータ位置との対応付けを示すインデックスデータとを記憶する記憶部と、前記コンテンツ中の時間位置を指定されると、該指定された時間位置に対応付けられたデータ位置を、前記インデックスデータから取得し、前記指定されたメディアの該取得したデータ位置のデータを、前記メディアデータから抽出するデータ読み出し部とを具備することを特徴とするメディアファイル管理装置。前記メディアデータは、前記コンテンツを構成するメディアを時間方向に分割したデータを含み、前記記憶部は、前記コンテンツを構成するメディアを時間方向に分割したデータを含むメディアデータに対応する前記インデックスデータを示す仮想メディアデータを記憶し、前記データ読み出し部は、前記コンテンツ中の時間位置を指定されると、前記仮想メディアデータが示すインデックスデータに基づき、前記時間位置に対応付けられたデータ位置と該データ位置を含むメディアデータとを示す情報を取得し、前記指定された時間位置のデータを、前記取得した情報が示すメディアデータのデータ位置から抽出することを特徴とする請求項1に記載のメディアファイル管理装置。前記仮想メディアデータは、前記コンテンツを構成するメディアを時間方向に分割したデータを含むメディアデータに対応する前記インデックスデータと、該インデックスデータが示すコンテンツ中の時間位置の範囲との対応付けを示す情報を含み、前記データ読み出し部は、前記コンテンツ中の時間位置を指定されると、前記仮想メディアデータを参照して、前記指定された時間位置を含むインデックスデータを選択し、該選択したインデックスデータを参照して、前記指定された時間位置に対応付けられたデータ位置と該データ位置を含むメディアデータとを示す情報を取得し、前記指定された時間位置のデータを、前記取得した情報が示すメディアデータのデータ位置から抽出することを特徴とする請求項2に記載のメディアファイル管理装置。前記記憶部は、前記コンテンツを構成するメディアの種類と、該種類のメディアの仮想メディアデータとの対応付けを示す多重化記述データを記憶し、前記データ読み出し部は、前記コンテンツ中の時間位置とメディアとを指定されると、前記多重化記述データを参照して、前記指定されたメディアの仮想メディアデータを選択し、該選択した仮想メディアデータを参照して、前記指定された時間位置を含むインデックスデータを選択し、該選択したインデックスデータを参照して、前記指定された時間位置に対応付けられたデータ位置と該データ位置を含むメディアデータとを示す情報を取得し、前記指定された時間位置およびメディアのデータを、前記取得した情報が示すメディアデータのデータ位置から抽出することを特徴とする請求項3に記載のメディアファイル管理装置。前記コンテンツを指定されると、前記多重化記述データを参照して、該指定されたコンテンツを構成するメディアの種類を取得する構成メディア取得部を具備することを特徴とする請求項4に記載のメディアファイル管理装置。前記インデックスデータに基づき、前記コンテンツを構成するメディアを時間方向に分割したデータを含むメディアデータに対応する前記インデックスデータと、該インデックスデータが示すコンテンツ中の時間位置の範囲との対応付けを示す情報を生成し、前記仮想メディアに含める仮想メディアデータベース構築部を具備することを特徴とする請求項3に記載のメディアファイル管理装置。前記記憶部は、通信網を介して接続された複数の記憶装置に分散してデータを記憶する分散型ファイルシステムであり、前記メディアデータおよび前記インデックスデータの各々について、該データの識別情報と該データを記憶する記憶装置を示す情報と対応付けるデータベースを記憶し、前記データ読み出し部は、前記メディアデータおよび前記インデックスデータを読み出す際に、前記データベースを用いて、読み出すデータを記憶している前記記憶装置を示す情報を取得することを特徴とする請求項1に記載のメディアファイル管理装置。時系列を持つコンテンツを構成するメディアのデータを含むメディアデータと、前記メディアデータ毎に対応付けられたデータであって、前記コンテンツ中の時間位置と前記メディアデータ中のデータ位置との対応付けを示すインデックスデータとを記憶する記憶部を有するメディアファイル管理装置のコンピュータを、前記コンテンツ中の時間位置を指定されると、該指定された時間位置に対応付けられたデータ位置を、前記インデックスデータから取得し、前記指定されたメディアの該取得したデータ位置のデータを、前記メディアデータから抽出するデータ読み出し部として機能させるためのプログラム。しかしながら、上述のような従来のメディアデータにおいては、例えば、特定のフレームを修正や変更するなどのために、該特定の時間位置の特定のメディアのデータを抽出するのが困難であるという問題がある。本発明は、このような事情に鑑みてなされたもので、その目的は、特定の時間位置の特定のメディアのデータを容易に抽出することができるメディアファイル管理装置およびそのプログラムを提供することにある。1この発明は上述した課題を解決するためになされたもので、本発明の一態様は、時系列を持つコンテンツを構成するメディアのデータを含むメディアデータと、前記メディアデータ毎に対応付けられたデータであって、前記コンテンツ中の時間位置と前記メディアデータ中のデータ位置との対応付けを示すインデックスデータとを記憶する記憶部と、前記コンテンツ中の時間位置を指定されると、該指定された時間位置に対応付けられたデータ位置を、前記インデックスデータから取得し、前記指定されたメディアの該取得したデータ位置のデータを、前記メディアデータから抽出するデータ読み出し部とを具備することを特徴とするメディアファイル管理装置である。2また、本発明の他の態様は、上述のメディアファイル管理装置であって、前記メディアデータは、前記コンテンツを構成するメディアを時間方向に分割したデータを含み、前記記憶部は、前記コンテンツを構成するメディアを時間方向に分割したデータを含むメディアデータに対応する前記インデックスデータを示す仮想メディアデータを記憶し、前記データ読み出し部は、前記コンテンツ中の時間位置を指定されると、前記仮想メディアデータが示すインデックスデータに基づき、前記時間位置に対応付けられたデータ位置と該データ位置を含むメディアデータとを示す情報を取得し、前記指定された時間位置のデータを、前記取得した情報が示すメディアデータのデータ位置から抽出することを特徴とする。3また、本発明の他の態様は、上述のメディアファイル管理装置であって、前記仮想メディアデータは、前記コンテンツを構成するメディアを時間方向に分割したデータを含むメディアデータに対応する前記インデックスデータと、該インデックスデータが示すコンテンツ中の時間位置の範囲との対応付けを示す情報を含み、前記データ読み出し部は、前記コンテンツ中の時間位置を指定されると、前記仮想メディアデータを参照して、前記指定された時間位置を含むインデックスデータを選択し、該選択したインデックスデータを参照して、前記指定された時間位置に対応付けられたデータ位置と該データ位置を含むメディアデータとを示す情報を取得し、前記指定された時間位置のデータを、前記取得した情報が示すメディアデータのデータ位置から抽出することを特徴とする。4また、本発明の他の態様は、上述のメディアファイル管理装置であって、前記記憶部は、前記コンテンツを構成するメディアの種類と、該種類のメディアの仮想メディアデータとの対応付けを示す多重化記述データを記憶し、前記データ読み出し部は、前記コンテンツ中の時間位置とメディアとを指定されると、前記多重化記述データを参照して、前記指定されたメディアの仮想メディアデータを選択し、該選択した仮想メディアデータを参照して、前記指定された時間位置を含むインデックスデータを選択し、該選択したインデックスデータを参照して、前記指定された時間位置に対応付けられたデータ位置と該データ位置を含むメディアデータとを示す情報を取得し、前記指定された時間位置およびメディアのデータを、前記取得した情報が示すメディアデータのデータ位置から抽出することを特徴とする。5また、本発明の他の態様は、上述のメディアファイル管理装置であって、前記コンテンツを指定されると、前記多重化記述データを参照して、該指定されたコンテンツを構成するメディアの種類を取得する構成メディア取得部を具備することを特徴とする。6また、本発明の他の態様は、上述のメディアファイル管理装置であって、前記インデックスデータに基づき、前記コンテンツを構成するメディアを時間方向に分割したデータを含むメディアデータに対応する前記インデックスデータと、該インデックスデータが示すコンテンツ中の時間位置の範囲との対応付けを示す情報を生成し、前記仮想メディアに含める仮想メディアデータベース構築部を具備することを特徴とする。7また、本発明の他の態様は、上述のメディアファイル管理装置であって、前記記憶部は、通信網を介して接続された複数の記憶装置に分散してデータを記憶する分散型ファイルシステムであり、前記メディアデータおよび前記インデックスデータの各々について、該データの識別情報と該データを記憶する記憶装置を示す情報と対応付けるデータベースを記憶し、前記データ読み出し部は、前記メディアデータおよび前記インデックスデータを読み出す際に、前記データベースを用いて、読み出すデータを記憶している前記記憶装置を示す情報を取得することを特徴とする。8また、本発明の他の態様は、時系列を持つコンテンツを構成するメディアのデータを含むメディアデータと、前記メディアデータ毎に対応付けられたデータであって、前記コンテンツ中の時間位置と前記メディアデータ中のデータ位置との対応付けを示すインデックスデータとを記憶する記憶部を有するメディアファイル管理装置のコンピュータを、前記コンテンツ中の時間位置を指定されると、該指定された時間位置に対応付けられたデータ位置を、前記インデックスデータから取得し、前記指定されたメディアの該取得したデータ位置のデータを、前記メディアデータから抽出するデータ読み出し部として機能させるためのプログラムである。この発明によれば、特定の時刻の特定のメディアのデータを容易に抽出することができる。[第1の実施形態]以下、図面を参照して、本発明の第1の実施形態について説明する。図1は、この発明の第1の実施形態によるメディアファイル管理装置の構成を示す概略ブロック図である。メディアファイル管理装置100は、LANLocalAreaNetwork;ランなどの通信網を介して、コンテンツ編集装置200および端末装置300と通信可能に接続されている。また、メディアファイル管理装置100は、仮想メディアデータベース構築部110、メディア記憶部120、構成メディア取得部130、データ読み出し部140を含んで構成される。メディア記憶部120は、ハードディスク装置や半導体メモリなどデータを記録できる装置で構成される。コンテンツ編集装置200は、時系列を持つコンテンツを構成するファイルを生成し、メディア記憶部120に格納する。本実施形態において、時系列を持つコンテンツとは、放送局が放送する特定のチャネルのサービスであるが、これに限定されず、映画や、放送番組であってもよい。メディアファイル管理装置100は、コンテンツを構成するファイルを記憶しており、端末装置300からの要求に応じて、記憶しているコンテンツのデータの中から、要求された任意のメディアの任意のフレーム時間位置のデータを出力する。ユーザはこのようにして、任意のメディアの任意のフレームのデータを取得することで、例えば、他のコンテンツに流用したり、特定のフレームの特定のメディアのみを変更したりするなど、様々なことに利用することができる。なお、図1において、メディアファイル管理装置100には、1台のコンテンツ編集装置200と、1台の端末装置300とが接続されているが、それぞれが、複数台接続されてもよい。メディア記憶部120は、コンテンツ編集装置200が生成したコンテンツを構成するファイルと、該ファイルに基づき、仮想メディアデータベース構築部110が生成した仮想メディアデータベースとを記憶する。仮想メディアデータベース構築部110は、メディア記憶部120が記憶するコンテンツの各々について、該コンテンツを構成するメディアファイル各々と、該メディアファイルのコンテンツ中の時間位置の範囲との対応付を示す情報を生成し、仮想メディアデータベースとしてメディア記憶部120に記憶させる。構成メディア取得部130は、端末装置300からコンテンツを指定されると、メディア記憶部120を参照して、該コンテンツを構成するメディア仮想メディアを端末装置300に通知する。データ読み出し部140は、端末装置300からメディアとコンテンツ中の時間位置とを指定されると、メディア記憶部120を参照して、指定されたメディア、時間位置に応じたデータを、端末装置300に出力する。なお、構成メディア取得部130と、データ読み出し部140とで、外部インタフェース150を構成する。図2は、本実施形態におけるコンテンツの構成例を示す概念図である。図2に示すように、本実施形態におけるコンテンツは、仮想的に多重化されており、多重化記述ファイル10、仮想メディアファイル20、メディアファイル30、インデックスファイル40の4種類のファイルから構成される。多重化記述ファイル10は、一コンテンツに対して、一ファイル存在し、該コンテンツを構成する仮想メディアファイル20のファイルIDを含むファイルである。仮想メディアファイル20は、該コンテンツを構成するメディア毎に存在するファイルであり、該メディアを構成するメディアファイル30に対応付けられたインデックスファイル40のファイルIDを含むファイルである。なお、該メディアが時間方向に分割された複数のメディアファイル30からなるときは、それらのメディアファイル30各々に対応したインデックスファイル40が存在する。インデックスファイル40は、コンテンツにおける時間位置と、メディアファイル30における該時間位置のデータ位置との対応付けを示す情報を含むファイルである。メディアファイル管理装置100内では、これらのファイルにはすべて一意のファイルIDが付与されており、ファイルIDからファイルが一意に特定できる。ファイルIDは、UUIDなどの一意なIDを生成するアルゴリズムで生成した数値でも良いし、メディア管理装置100内で一意であることが保証されているのであれば、ファイル名をそのままファイルIDとして用いても良い。図3は、メディアファイル管理装置100が図2で示す4種類のファイルを使って提供する仮想的な多重化ファイルコンテンツの一例を示している。図3に示す例では、多重化記述ファイル10のファイル名としてDGTVが設定されている。本実施形態では多重化記述ファイル名はメディアファイル管理装置100内で一意に命名される。また、多重化記述ファイル10のファイル名をファイルIDとして用いる。図3の例の多重化記述ファイル10では、仮想メディア名としてVideo,Audio,AudioSub,Captionの4つが定義されている。この例では、仮想メディア名VideoとしてfileA,fileB,fileC,fileDの4つのメディアファイル30が時間軸上にマッピングされている例を示している。同様に、仮想メディア名AudioとしてfileI,fileJ,fileK,fileLの4つのメディアファイル30が時間軸上にマッピングされており、仮想メディア名AudioSubとしてfileNの1つのメディアファイル30が、仮想メディア名CaptionとしてfileX,fileYの2つのメディアファイル30が時間軸上にマッピングされている例を示している。このように、本実施形態では分割されて保存されているメディアファイル30を、多重化記述ファイル10内の同一の時間軸上にマッピングすることで、仮想的なメディアファイルとして配置するとともに、それらの仮想的なファイルを1つの多重化ファイルとして扱えるようにすることを基本構造としている。<メディアファイル>本実施形態ではメディアファイル30として、データ構造が時系列に連続するデータ構造として保存されているファイルを対象としている。図4は、データ構造が時系列であるメディアファイル30の例を示している。図4の1および2はそれぞれ映像および音声のフレーム構造をもった時系列データを示している。また、図43は字幕情報の例を示したものであり、字幕情報を表示する時刻と文字情報を組とする連続するデータがファイルに保存されている例である。図44は番組情報を示しており、放送番組などの編成情報が時系列に保存されている例を示している。図45は映像、音声などを再生したときに視聴者が入力したコメント情報を示した例である。また、図46は多重化ファイルを検索するためのキーワードを、映像や音声のメディアデータに同期して保存したファイルの例を示している。なお、本発明によるメディアファイル30としては、図4に示したものに限定されるものではなく、ファイルのデータがフレームなどの特定の単位で時系列に保存されてものであればどのようなファイルでもかまわない。図3の例で説明したように本実施形態による仮想的な多重化ファイルを実現するため、メディアファイル管理装置100は、図2に示した4種類のファイルにより仮想的な多重化ファイルの構造を実現している。以下、図2を参照しながら、本実施形態で使われるファイルについて説明する。<多重化記述ファイル>多重化記述ファイル10は仮想メディア名と仮想メディアファイル20のファイルIDとの組のリストが保存される。図5に図3の例の場合の多重化記述ファイルのデータ構造の例を示す。多重化記述ファイルには、仮想メディア名であるVideo,Audio,AudioSub,Captionの4つが、それぞれ仮想メディアファイル20のファイルIDとともに保存されている。本実施形態では、仮想メディアファイル20のファイルIDとして、多重化記述ファイル10のファイル名の先頭に文字を付けた文字列と、仮想メディア名とを/で連結した文字列を使う。すなわち、図3の例での仮想メディア名Videoの仮想メディアファイル20のファイルIDはDGTV/Videoとなる。仮想メディア名Audioの仮想メディアファイル20のファイルIDはDGTV/Audioとなる。仮想メディア名AudioSubの仮想メディアファイル20のファイルIDはDGTV/AudioSubとなる。仮想メディア名Captionの仮想メディアファイル20のファイルIDはDGTV/Captionとなる。<仮想メディアファイル>仮想メディアファイル20には、1つの仮想メディアにマッピングされたインデックスファイル40のファイルIDが保存されている。インデックスファイル40は、メディアファイル30に対して付与されたインデックスを記録したファイルである。図3の例における仮想メディアファイル20のファイルのデータ例を図6に示す。図6に示す仮想メディアファイルは、図5の多重化記述ファイルに記載された仮想メディアファイルである。すなわち、ファイルIDがDGVT/Videoのものと、ファイルIDがDGVT/Audioのものと、ファイルIDがDGVT/AudioSubのものと、ファイルIDがDGVT/Captionのものの4つである。ファイルIDがDGTV/Videoの仮想メディアファイル20には、fileA,fileB,fileC,fileDの各メディアファイル30に対して付けられたインデックスファイル40のファイルIDが保存されている。図6の例では、fileA,fileB,fileC,fileDの各メディアファイル30に付与されたインデックスファイル40のファイルIDとして、fileA.index,fileB.index,fileC.index,fileD.indexの4つのファイルIDが保存されている。同様に、仮想メディア名Audioの仮想メディアファイル20ファイルIDがDGTV/Audioには、fileI,fileJ,fileK,fileLのメディアファイル30のインデックスファイル40のファイルIDであるfileI.index,fileJ.index,fileK.index,fileL.indexが記録されている。また、仮想ファイル名AudioSubの仮想メディアファイル30ファイルIDがDGTV/AudioSubには、fileNのメディアファイル30のインデックスファイル40のファイルIDであるfileN.indexが記録され、仮想ファイル名Captionの仮想メディアファイル30ファイルIDがDGTV/Captionには、fileX,fileYのメディアファイル30のインデックスファイル40のファイルIDであるfileX.index,fileY.indexが記録されている。<インデックスファイル>図7は、インデックスファイルのデータ構造の例を示す図である。インデックスファイル40には、ヘッダーとしてメディアファイル30のファイルIDが保存され、続いてメディアファイル30のフレーム毎の開始時刻、終了時刻、メディアファイル30の先頭からの位置、データ長のデータがリストとして保存されている。開始時刻および終了時刻は、多重化記述ファイル10内での時間軸に対応した時刻情報である。また、メディアファイル30の先頭からの位置データ位置としては、該ファイルの先頭からのバイト数を用いる。なお、データ位置や、データ長の単位として、パケット分割されているメディアであればパケット数などを用いるようにしてもよい。本実施形態では、インデックスファイルに保存する開始時刻、終了時刻などの時刻情報は、日付を示す値と時刻を示す値を含む。日付を示す値としてMJD、時間を示す値としては毎日の午前0時を0とした90KHzのカウンタ値を用いる。90KHzを基準としたカウント値を時間情報として用いることで、90KHzの精度でフレーム単位の同期をとることが可能となる。なお、時刻情報としてこれに限定されるものではなく、本発明の使用目的同期の精度などを考慮して連続する数値を決定すればよい。例えば、映画や放送番組をコンテンツとするときは、時刻情報として、該コンテンツの先頭からの経過時間やフレーム数を用いるようにしてもよい。以上説明した多重化記述ファイル10、仮想メディアファイル20、メディアファイル30、インデックスファイル40を用いてコンテンツを格納し、多重化記述ファイル名と仮想メディア名、時刻情報を与えることで、同一の時間軸上にマッピングされたメディアファイルのフレームデータを特定することが可能となる。<メディアファイル管理装置>以上説明した本発明における仮想的な多重化ファイルの原理を踏まえ、図1に示したメディアファイル管理装置100の動作について説明する。なお、以下の説明で必要となる多重化記述ファイル10、仮想メディアファイル20、メディアファイル30、インデックスファイル40の各ファイルは、コンテンツ編集装置200により、あらかじめメディア記憶部120に記録されており、メディアファイル管理装置100内で一意のファイルIDにより特定できる。図8は、メディアファイル管理装置100の仮想メディアデータベース構築部110の動作を説明するフローチャートである。メディアファイル管理装置100は、外部から多重化記述ファイル名が入力されると、仮想メディアデータベース構築部110が動作し、仮想メディアデータベースが内部的に構築される。まず、仮想メディアデータベース構築部110は、入力された多重化記述ファイル名を取得するS1-1。次に、仮想メディアデータベース構築部110は、取得した多重化記述ファイル名たとえばDGTVでメディア記憶部120に記憶されている多重化記述ファイルを取得するS1-2。次に、仮想メディアデータベース構築部110は、取得した多重化記述ファイル10から、仮想メディア数を読み出し、変数Mに設定するS1-3。たとえば、図5の例では仮想メディア数は4であるので、Mは4となる。次に、仮想メディアデータベース構築部110は、繰り返し処理用のカウンタNに1をセットしS1-4、繰り返し処理を開始するS1-5。繰り返し処理では、仮想メディアデータベース構築部110は、多重化記述ファイルに記録されているN番目の仮想メディアファイルのファイルIDを取得するS1-6。たとえば、図5の例では、N=1の場合、DGTV/Videoを取得する。次に、仮想メディアデータベース構築部110は、取得した仮想メディアファイル20のファイルIDから、仮想メディアデータベース構築手段111を使って仮想メディアデータベースを構築するS1-7。ステップS1-6の処理の詳細は後述する。その後、仮想メディアデータベース構築部110は、Nに1を加えS1-8、その結果、N≦Mの場合にはS1-9、S1-4に戻って処理を繰り返し、そうでない場合は、仮想メディアデータベース構築部110の動作を終了する。以上説明した動作により、多重化記述ファイル10に対する、仮想メディアデータベースが構築される。<ステップS1-7の詳細>図9は、上述の仮想データベース構築処理ステップS1-7を説明するフローチャートである。始めに、仮想メディアデータベース構築部110は、ステップS1-6にて取得した仮想メディアファイルのファイルIDから、メディア記憶部120に記録されている仮想メディアファイル20を取得するS10-1。次に、仮想メディアデータベース構築部110は、取得した仮想メディアファイル20内に記述されているインデックスファイルのファイルIDの個数を変数Mに設定するS10-2。たとえば、図6の例では、仮想メディアファイルのファイルIDがDGTV/Videoの場合には、Mに4が設定されることになる。次に、仮想メディアデータベース構築部110は、繰り返し処理のカウンタNに1を設定しS10-3、繰り返し処理に入るS10-4。繰り返し処理では、まず、仮想メディアデータベース構築部110は、取得した仮想メディアファイル20に記録されている、N番目のインデックスファイルのファイルIDに基づき、メディア記憶部120に記録されているインデックスファイル40を取得するS10-5。次に、仮想メディアデータベース構築部110は、取得したインデックスファイル40から、開始時刻と終了時刻とを読み出す。そして、仮想メディアデータベース構築部110は、読み出した開始時刻と終了時刻とが表す時間帯の開始時刻と終了時刻のリストを作成するS10-6。たとえば、取得したインデックスファイル40が、図3のファイルIDがfileA.indexのインデックスファイルの場合は、開始時刻TV1、終了時刻TV2である1つのデータからなるリストを作成する。同様に、ファイルIDがfileX.indexのインデックスファイル40の場合は、開始時刻TC1、終了時刻がTC2と、開始時刻がTC3、終了時刻がTC4の2つのデータからなるリストを作成する。仮想メディアデータベース構築部110は、作成したリストを、インデックスファイル40のファイルIDとともに仮想メディアデータベースに登録するS10-7。次に、繰り返し処理のカウンタNに1を加えS10-8、その結果N≦Mの場合には、S10-4に戻り、処理を繰り返し、N>Mの場合には、仮想メディアデータベース構築処理ステップS1-7を終了する。以上説明した動作により、仮想メディア名と指定時刻から、対応するインデックスファイル40を検索できる仮想メディアデータベースが構築される。図3の場合を例として、仮想メディアデータベースの状態を図10に示す。図10に示すように、図3の場合、構築される仮想メディアデータベースは、仮想メディア名Video、Audio、AudioSub、Captionの4つである。図10では、仮想メディア名Videoの仮想メディアデータベースは、開始時刻TV1と終了時刻TV2とインデックスファイルのファイルIDfileA.indexと対応づけて記憶し、開始時刻TV2と終了時刻TV3とインデックスファイルのファイルIDfileB.indexと対応づけて記憶し、開始時刻TV3と終了時刻TV4とインデックスファイルのファイルIDfileC.indexと対応づけて記憶し、開始時刻TV4と終了時刻TV5とインデックスファイルのファイルIDfileD.indexと対応づけて記憶している。また、仮想メディア名Audioの仮想メディアデータベースは、開始時刻TA1と終了時刻TA2とインデックスファイルのファイルIDfileI.indexと対応づけて記憶し、開始時刻TA2と終了時刻TA3とインデックスファイルのファイルIDfileJ.indexと対応づけて記憶し、開始時刻TA3と終了時刻TA4とインデックスファイルのファイルIDfileK.indexと対応づけて記憶し、開始時刻TA4と終了時刻TA5とインデックスファイルのファイルIDfileL.indexと対応づけて記憶している。また、仮想メディア名AudioSubの仮想メディアデータベースは、開始時刻TS1と終了時刻TS2とインデックスファイルのファイルIDfileN.indexと対応づけて記憶している。また、仮想メディアCaptionの仮想メディアデータベースは、開始時刻TC1と終了時刻TC2とインデックスファイルのファイルIDfileX.indexと対応づけて記憶し、開始時刻TC3と終了時刻TC4とインデックスファイルのファイルIDfileX.indexと対応づけて記憶し、開始時刻TC5と終了時刻TC6とインデックスファイルのファイルIDfileY.indexと対応づけて記憶し、開始時刻TC7と終了時刻TC8とインデックスファイルのファイルIDfileY.indexと対応づけて記憶している。<外部インタフェース>メディアファイル管理装置100は、外部とのインタフェース150として、構成メディア取得部130のdir関数と、データ読み出し部140のread関数の2つのアクセス用関数を持つ。図11に、dir関数とread関数の入出力パラメータとその動作の説明を示す。dir関数は、多重化記述ファイル10のファイル名をパラメータとして指定されると、多重化記述ファイル10に含まれる仮想メディア名を返すインタフェースである。すなわち、dir関数により、多重化記述ファイル10で示される同一の時間軸上に並べられた仮想メディアのリストを取得することができる。図3の例では、dir関数によりVideo,Audio,AudioSub,Captionが取得される。read関数は、多重化記述ファイル10のファイル名と、仮想メディア名と、開始時刻とをパラメータとして指定されると、多重化記述ファイル10の指定した仮想メディア名の1フレーム分のデータを返すインタフェースである。すなわち、多重化記述ファイル10のファイル名nameと、仮想メディア名media、開始時刻startの位置のフレームデータがdataに、そのサイズがsizeに、そのフレームデータの終了時刻がendの各引数に読み出される。たとえば、図3の例では、引数nameにDGTV、引数mediaにVideo、引数startにTV1を指定してread関数を実行すると、メディアファイルfileAの先頭1フレームのデータが読み出される。アクセス用インタフェースのdir関数およびread関数は外部インタフェース150によって処理が行われる。外部インタフェース150の動作の流れを図12に示す。外部インタフェース150は始めに、端末装置300から指定された多重化記述ファイル名に基づき、メディア記憶部120から多重化記述ファイルを取得するS2-1。次に、外部インタフェース150は、呼び出された関数がdir関数かread関数かを判別するS2-2およびS2-4。呼び出された関数がdir関数の場合S2-2でYes、メディア構成取得部130が、多重化記述ファイル10に記録された、仮想メディア名のリストをdir関数の出力として返送しS2-3、外部インタフェース150の処理を終了する。一方、関数がread関数の場合S2-2でNo、S2-4でYes、データ読み出し部140が、read関数で指定された仮想メディア名および、開始時刻に対応する、フレームデータを取得する。具体的には、まず、データ読み出し部140は、メディア記憶部120に記録された仮想メディアデータベースのうち、指定された仮想メディア名の仮想メディアデータベースに対して、指定された開始時刻を含む時間帯に対応するインデックスファイルのファイIDを取得するように、検索を実行するS2-5。次に、データ読み出し部140は、仮想メディアデータベースを検索して取得したファイルIDからインデックスファイル40を取得する。さらに、データ読み出し部140は、取得したインデックスファイル40から、メディアファイル30のファイルIDと、read関数で指定された開始時刻のデータ位置と、データ長とを取得するS2-6。そして、データ読み出し部140は、ステップS2-6で取得したメディアファイルのファイルIDと、データ位置と、データ長とに基づき、メディアファイル40のフレームデータを取得し、そのデータをread関数の出力として返送S2-7し処理を終了する。このとき、データ読み出し部140は、メディア記憶部120に記録されているメディアファイル40から、指定されたインデックスデータファイルの先頭位置からの位置と、データ長に対応する1フレーム分のデータを読み出す。以上、説明したようにメディア管理装置100を使うことで、多重化記述ファイル10で示される時間軸上に配置された仮想メディアの指定した時刻のデータを、実際のメディアファイルの分割状態を意識することなく読み込むことが可能となる。また、このように、メディア記憶部120は、時系列を持つコンテンツを構成するメディアのデータを含むメディアファイルメディアデータと、メディアファイル毎に対応付けられたデータであって、コンテンツ中の時間位置とメディアファイル中のデータ位置との対応付けを示すインデックスデータとを記憶している。さらに、データ読み出し部140は、コンテンツ中の時間位置を指定されると、該指定された時間位置に対応付けられたデータ位置を、インデックスデータから取得し、指定されたメディアの該取得したデータ位置のデータを、メディアファイルから抽出する。このため、特定の時間位置の特定のメディアのデータを容易に抽出することができる。また、メディアファイルに対応するインデックスファイルをコンテンツ毎に用意し、一つのメディアファイルの同じ部分、あるいは、別々の部分を複数のコンテンツの一部とすることができる。この場合、一つのメディアファイルを複数のコンテンツから参照することになるため、メディア記憶部120の記憶容量を圧迫することなく、効率良く使用することができる。また、メディアファイルは、コンテンツを構成するメディアを時間方向に分割したデータを含み、メディア記憶部120は、コンテンツを構成するメディアを時間方向に分割したデータを含むメディアファイルに対応するインデックスファイルを示す仮想メディアファイル仮想メディアデータを記憶する。そして、データ読み出し部140は、コンテンツ中の時間位置を指定されると、仮想メディアファイルが示すインデックスファイルに基づき、その時間位置に対応付けられたデータ位置と該データ位置を含むメディアデータとを示す情報を取得する。このため、特定の時間位置の特定のメディアのデータを、容易に抽出することができる。また、仮想メディアデータベース仮想メディアデータは、インデックスファイルと、該インデックスファイルが示すコンテンツ中の時間位置の範囲との対応付けを示す情報を含む。そして、データ読み出し部140は、コンテンツ中の時間位置を指定されると、仮想メディアデータベースを参照して、指定された時間位置を含むインデックスファイルを選択する。このため、複数あるインデックスファイルの中から、特定のインデックスファイルを参照するだけで、特定の時間位置の特定のメディアのデータを、容易に抽出することができる。また、メディア記憶部120は、コンテンツを構成するメディアの種類と、該種類のメディアの仮想メディアデータとの対応付けを示す多重化記述ファイル多重化記述データを記憶している。そして、データ読み出し部140は、コンテンツ中の時間位置とメディアとを指定されると、多重化記述ファイルを参照して、指定されたメディアの仮想メディアファイルを選択する。このため、特定の時間位置の特定のメディアのデータを、容易に抽出することができる。[第2の実施形態]第1の実施形態におけるメディア管理装置100は、仮想メディアデータベースおよび、すべてのファイルが同一のメディア管理装置100内に存在するものとして説明したが、本発明はこれに限定されるものではない。すなわち、仮想メディアデータベースおよびファイルの蓄積を複数のメディアファイル管理装置により分担しておこなう分散型のメディアファイル管理装置であっても実現可能である。以下、図面を参照して、本発明の第2の実施形態について説明する。図13は、本実施形態における分散メディアファイル管理装置の構成を示す概略ブロック図である。図13は、2つの分散メディアファイル管理装置100Aと100Bが、ネットワーク装置400により接続されている例を示している。なお、本発明による分散メディアファイル管理装置は2台に限定されるものではなく、2台を超える台数であってもよいが、説明のため、ここでは2台から構成される装置を例として説明する。また、図13において、図1におけるコンテンツ編集装置200および端末装置300の図示は、省略されているが、これらの装置もネットワーク装置400を介して、メディアファイル管理装置100A、100Bに接続されている。図13の分散メディアファイル管理装置100A、100Bはまったく同じ構成であるため、以下では分散メディアファイル管理装置100Aを中心として動作を説明する。また、同図において、図1の各部に対応する部分には同一の符号110、150を付け、その説明を省略する。図13の分散メディアファイル管理装置100Aは、図1で示したメディアファイル管理装置100に対して、メディア記憶部120に変えて、メディア記憶部120Aを備える点が異なる。そして、メディア記憶部120Aは、KV検索部121、Key-Value記憶部122、ファイル記憶部123を含んで構成される。<分散ハッシュテーブル>分散メディアファイル管理装置100Aでは、ファイルIDの管理および、仮想メディアデータベースの保存先の管理に分散ハッシュテーブルDHTを使う。DHTは、Key-Value型データベースをDHTに参加するノードで分担することで、巨大なデータベースを構築する手法である。ここで、Key-Value型データベースは、Key値から対応するValue値を取得できるデータベースのことである。DHTでは参加するノードはハッシュ関数により生成された一意のノードIDが付与されている。本実施形態では、分散メディアファイル管理装置100A、100BにそれぞれノードIDが付与されている。そして、Key-Value型データベースに登録するKey-ValueデータはKeyのハッシュ値に近いノードIDのノードが保管する。これにより、与えられたKey値から、それを保管するノードがわかり、そのノードに問い合わせることで、Value値を取得することができる。分散メディアファイル管理装置100AのKey-Value記憶部122は、当該ノードに割り当てられたKey-Valueデータを記憶している。KV検索部121は、DHTによりKey-Value型データベースの検索を行う部分である。すなわち、KV検索部121は、ファイルIDを与えられると、これをKeyとして、Key-Valueデータベースを検索し、与えられたIDが示すファイルの保存先を取得する。以下、KV検索部121を使うことで、Key-Value型データベースの検索が可能であるものとして説明する。なお、DHTの実現方法はさまざまな手法が開発されているが、本発明はDHTの手法に依存するものではないので説明は省略する。さらに、本実施形態では、KV検索部121としてDHTを利用することで説明しているが、DHTに限定されるものではなく、分散型のKey-Value型データベースであればどのような方式であってもかまわない。分散メディアファイル管理装置100A、100Bでは、仮想メディアデータベースを仮想メディアごとに複数の分散メディアファイル管理装置で分担して管理する。すなわち、仮想メディアファイルのファイルIDをKeyとして、Key-Value型データベースを検索することで、所望の仮想メディアデータベースが構築されている分散メディアファイル管理装置を知ることができる。外部インタフェース150のデータ読み出し部140は、仮想メディアファイルのファイルIDたとえばDGTV/VideoをKeyとして、Key-Value型データベースを検索して、仮想メディアデータベースの保管先を取得し、該取得した保管先のファイル記憶部123に記憶されている仮想メディアデータベースを検索する。また、多重化記述ファイル10、仮想メディアファイル20、メディアファイル30、インデックスファイル40は、分散メディアファイル管理装置100Aのファイル記憶部123または、分散メディアファイル管理装置100Bのファイル記憶部123のどちらかに保管されている。ファイルの保管先は、ファイルIDをKeyとして、保管先のアドレスをValueとしてあらかじめDHTに登録しておき、key-Value型データベースを検索することで、ファイルの保管先を知ることができる。外部インタフェース150の構成メディア取得部130およびデータ読み出し部140、仮想メディアデータベース構築部110は、ファイルIDからkey-Value型データベースを検索し、検索した装置のファイル蓄積装置からファイルを読み出す。<仮想メディアデータベース構築部>分散メディアファイル管理装置100Aは、外部から多重化記述ファイル10のファイル名本実施形態ではファイルIDと等価が入力されると、仮想メディアデータベース構築部110が動作し、仮想メディアデータベースを構築する。本実施形態における仮想メディアデータベース構築部110の基本的な動作は、すでに図8を使って説明した第1の実施形態における仮想メディアデータベース構築部110と同じである。図14は、本実施形態における仮想メディアデータベース構築部110の動作を説明するフローチャートである。仮想メディアデータベース構築部110は、始めに多重化記述ファイル10のファイル名を取得するS1A-1。次に、仮想メディアデータベース構築部110は、取得したファイル名から、多重化記述ファイル10を取得するS1A-2。このステップS1A-2における多重化記述ファイル10の取得処理の詳細については、後述する。仮想メディアデータベース構築部110は、取得した多重化記述ファイル10から仮想メディア数を取得し、変数Mに設定するS1A-3。仮想メディアデータベース構築部110は、続いて、繰り返し処理のカウンタ用変数Nに1をセットしS1A-4、繰り返し処理の実行を開始するS1A-5。仮想メディアデータベース構築部110は、繰り返し処理内では、始めにKV検索部121を使い、N番目の仮想メディアファイルのファイルIDたとえばDGTV/Videoを検索し、その仮想メディアデータベースを自装置が管理するかどうかを判定する。自装置の管理ではないと判定したときはS1A-6-No、ステップS1A-9にジャンプし、自装置の管理であると判定したときはS1A-6-Yes、仮想メディアデータベースを構築するS1A-7。仮想メディアデータベースの構築処理は、すでに図9を使って説明した第1の実施形態における仮想メディアデータベース構築部110と同じである。次に、Nに1を加えS1A-9、N≦Mの場合には、ステップS1A-5に戻り処理を繰り返し、N>Mの場合には、仮想メディアデータベース構築部110の動作を終了する。<ファイル取得処理>図15は、上述のステップS1A-2におけるファイル取得処理を説明するフローチャートである。仮想メディアデータベース構築部110は、KV検索部121を使ってKey-Value型データベースを検索して、ファイル多重化記述ファイル10の保管先の管理装置を示す情報を取得するS21A-1。取得した情報が所望のファイルの保管先として自装置を示しているときはS21A-2-Yes、自装置のファイル記憶部123からファイルを取得するS21A-3。他の装置内を示しているときはS21A-2-Noには、ネットワーク装置400を介して、その装置のファイル記憶部123からファイルを取得する。以上、分散メディアファイル管理装置100Aの仮想メディアデータベース構築部110の動作を説明したが、分散メディアファイル管理装置100Bの仮想メディアデータベース構築部110も全く同じ動作をすることで、仮想メディアデータベースが、分散メディアファイル管理装置100Aおよび100Bで分散して構築される。<外部インタフェース150>図16は、外部インタフェース150の動作を説明するフローチャートである。外部インタフェース150の動作は、すでに図12を使って説明した第1の実施形態における外部インタフェース150の動作と基本的に同じである。外部インタフェース150は始めに、指定された多重化記述ファイル10のファイル名から多重化記述ファイル10を取得するS2A-1。ファイルの取得は、図14のステップS1A-2にて仮想メディアデータベース構築部110が行ったファイル取得処理と同様である。すなわち、自装置のファイル記憶部123または、ネットワーク装置400で接続された他の装置のファイル記憶部123から読み出す。次に、外部インタフェース150は、呼び出された関数がdir関数かread関数かを判別するS2A-2およびS2A-4。関数がdir関数の場合S2A-2-Yes、外部インタフェース150の構成メディア取得部130が多重化記述ファイル10に記録された、仮想メディア名のリストをdir関数の出力として返送しS2A-3、外部インタフェース150の処理を終了する。関数がread関数の場合S2A-2でNo、S2A-4でYes、外部インタフェース150のデータ読み出し部140が、仮想メディアデータベースを検索し、read関数で指定された仮想メディア名および開始時刻に対応するインデックスファイル40のファイルIDを取得するS2A-5。なお、仮想メディアデータベースの検索処理の詳細については、後述する。次に、データ読み出し部140は、ステップS2A-1と同様にして、取得したファイルIDからインデックスファイル40を取得する。さらに、データ読み出し部140は、このインデックスファイル40からメディアファイル30のファイルIDと、read関数で指定された開始時刻のインデックスデータ位置、データ長を取得するS2A-6。続いて、データ読み出し部140は、メディアファイルのファイルIDとインデックスから、メディアファイル40のフレームデータを取得し、そのデータをread関数の出力として返送しS2A-7、処理を終了する。フレームデータの取得は、指定されたインデックスデータメディアファイルの先頭位置からの位置と、データ長に対応するメディアファイル40のデータを、ファイル記憶部123または、ネットワーク装置400で接続された他の分散メディアファイル管理装置100Bのファイル記憶部123に記録されているメディアファイル40から読み出す。この動作はすでに説明したステップS2A-1と同じである。以上、分散メディアファイル管理装置100Aの外部インタフェース150の説明を行ったが、分散メディアファイル管理装置100Bの外部インタフェース150の動作も全く同じである。すなわち、分散メディアファイル管理装置100A、100Bのいずれのdir関数およびread関数を使っても全く同じデータを得ることができる。<仮想メディアデータベース検索処理>図17は、ステップS2A-5の仮想メディアデータベースの検索処理を説明するフローチャートである。始めに、入力された仮想メディアファイルのファイルIDからKV検索部121を使って仮想メディアデータベースが存在する装置を検索するS12A-1。仮想メディアデータベースが自分の装置にある場合S12A-2-Yesには、自装置のファイル記憶部123が記憶する仮想メディアデータベースを検索して、インデックスファイル40のファイルIDを取得する。一方、仮想メディアデータベースが他の装置に存在する場合S12A-2-Noには、ネットワーク装置400を介して、分散メディアファイル管理装置100Bの仮想メディアデータベースを検索し、インデックスファイル40のファイルIDを取得するS12A-4。以上、説明したように分散メディア管理装置100A、100Bを使うことで、多重化記述ファイル10で示される時間軸上に配置された仮想メディアに対し、時刻を指定することで、実際のメディアファイルの保存場所を意識することなく、容易にデータを読み込むことが可能となる。また、本実施形態においても、第1の実施形態と同様の効果が得られる。<ファイルのバージョン管理に利用した形態>以上の実施形態では、映像や音声などのメディアファイルを時間軸上にマッピングでき、複数のメディアファイルを意識することなくメディアファイルを読み出すことが可能であることを説明したが、対象とするメディアファイルは、これらに限定されるものではない。たとえば、図18は、本発明をファイルのバージョン管理に用いた例である。ソフトウェアプログラムのソースコードや、地上デジタル放送におけるデータ放送のファイルは、同じファイル名であっても、時間的に更新される。図18はこのような同じファイル名であっても、時間とともにファイルの内容が異なるファイルのバージョン管理に本発明を利用した例である。この例では、それぞれのバージョンのファイルに対して、インデックスファイルを付け、同一の仮想メディアにマッピングしている。すなわち、メディアファイルのVersion1はT1からT2にマッピングし、Version2はT2からT3にマッピングしている。これにより、時刻を指定することで、その時刻におけるバージョンのファイルを取得できるようになる。<電子書籍のメディアファイルに利用した形態>さらに、図19は本発明を電子書籍のメディアファイルの管理に利用した例を示している。ここでは、メディアファイルとして、雑誌などをスキャンしたデータが1ファイルとして保存されているとする。すなわち、ある雑誌の1月号をスキャンしたメディアファイル、2月号をスキャンしたファイルなどである。図19ではこれらのメディアファイルの中から、ある特定の連載記事だけを、時間軸上にマッピングすることで、異なるメディアファイルに存在する同じ連載記事だけを連続したファイルとして読み出すようにした例である。すなわち、それぞれのメディアファイルの特定の連載記事部分に対してインデックスファイルを作成し、それを同一の仮想メディアの時間軸上にマッピングすることで実現できる。なお、本実施例ではこれまで時間軸を実際の日時として説明したが、この例に示すように、時間に限定されるものではなく、この例のようにページ数など、連続する数であればどのようなものでもかまわない。また、図1におけるメディアファイル管理装置100、図13における分散メディアファイル管理装置100A、100Bの機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、これらの機能を実現させてもよい。なお、ここでいうコンピュータシステムとは、OSや周辺機器等のハードウェアを含むものとする。また、コンピュータシステムは、WWWシステムを利用している場合であれば、ホームページ提供環境あるいは表示環境も含むものとする。また、コンピュータ読み取り可能な記録媒体とは、フレキシブルディスク、光磁気ディスク、ROM、CD-ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらにコンピュータ読み取り可能な記録媒体とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。"