JP2012242845A - メディアファイル管理装置およびそのプログラム - Google Patents

メディアファイル管理装置およびそのプログラム Download PDF

Info

Publication number
JP2012242845A
JP2012242845A JP2011108660A JP2011108660A JP2012242845A JP 2012242845 A JP2012242845 A JP 2012242845A JP 2011108660 A JP2011108660 A JP 2011108660A JP 2011108660 A JP2011108660 A JP 2011108660A JP 2012242845 A JP2012242845 A JP 2012242845A
Authority
JP
Japan
Prior art keywords
data
media
file
index
content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2011108660A
Other languages
English (en)
Inventor
Yutaka Kaneko
金子  豊
Minsok Hwang
▲民▼錫 黄
Shinya Takeuchi
真也 竹内
Yoshinori Izumi
吉則 和泉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Japan Broadcasting Corp
Original Assignee
Nippon Hoso Kyokai NHK
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Hoso Kyokai NHK filed Critical Nippon Hoso Kyokai NHK
Priority to JP2011108660A priority Critical patent/JP2012242845A/ja
Publication of JP2012242845A publication Critical patent/JP2012242845A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】特定の時間位置の特定のメディアのデータを容易に抽出することができるメディアファイル管理装置を提供すること。
【解決手段】時系列を持つコンテンツを構成するメディアのデータを含むメディアデータと、そのメディアデータ毎に対応付けられたデータであって、コンテンツ中の時間位置とメディアデータ中のデータ位置との対応付けを示すインデックスデータとを記憶する記憶部と、コンテンツ中の時間位置を指定されると、該指定された時間位置に対応付けられたデータ位置を、インデックスデータから取得し、指定されたメディアの取得したデータ位置のデータを、メディアデータから抽出するデータ読み出し部とを具備する。
【選択図】図1

Description

本発明は、メディアファイル管理装置およびそのプログラムに関する。
映像、音声、字幕情報などの個別のメディアを同期して再生するために、一般には、2つの方法が用いられている。
1つ目の方法は、メディアデータのファイルをパケットに分割し、各パケットにタイムスタンプと呼ばれる時刻情報を付け、受信側でタイムスタンプに合わせて、複数のメディアの再生時刻を同期させる方法である。この方法としては、非特許文献1のMPEG(Moving Picture Experts Group)−2 TS(Transport Stream)、非特許文献2のRTP(Real-time Transport Protocol)などがある。MPEG−2 TSはデジタル放送でも用いられている方式である。これらの方法は、主にストリーミング転送用に使われる方式であり、一般にはファイルとして保存して利用する用途には用いられない。その理由は、映像、音声などの細かい単位のパケットが混在しているため、映像データや音声データだけを用いたいときに不便なことや、映像、音声などの特定のフレームへランダムアクセスして用いる場合、フレームの先頭箇所を特定するのが不便だからである。
複数メディアデータの同期再生の2つ目の方法は、複数の個別のメディアデータのファイルから多重化した1つのファイルを生成し、その多重化されたファイルを再生に用いる方式である。この方式の基本的なファイルのデータ構造を図20に示す。この方式では、映像や音声などの複数のメディアのデータを1つのファイル内に保存した上で、ファイルの中の各メディアに対する時刻情報のインデックスをファイル内に同時に保存しておく。再生時には、インデックス情報を使って同時刻の各メディアのデータを読み出すことで同期再生を行うことができる。この方式では、インデックス情報により各メディアの先頭フレーム位置などがわかるため、ランダムアクセスなどが簡単に実現できる。
このような方式としては、非特許文献3のMP4(MPEG(Moving Picture Experts Group)-4 Part 14;エムピーフォー、エムペグフォー)や、非特許文献4のMXF(Material eXchange Format;エムエックスエフ)などが標準化されている。しかし、MP4やMXFでは各メディアのデータフォーマット(圧縮方式など)が同じであっても、多重化ファイルのデータフォーマットが異なるため、それぞれ専用の再生機が必要となる。
放送局では、番組制作時には、映像、音声、字幕などは個別に制作が行われるため、各メディアデータのファイルは別々のファイルとして存在している方が扱いやすい。一方、放送として送出する時にはそれらのファイルを同期して再生する必要があるため、一旦MXFなどの多重化用のファイルに1本化した上で、そのファイルを送出システムでもちいる。
放送局で扱う映像や音声などのメディアデータのファイルはファイルサイズが大きいため、それらのファイルを蓄積して、共有利用するには大容量のストレージシステムが必要となる。大容量のファイルを蓄積する方法としては、多数のストレージをネットワークで結び、仮想的に1つのストレージとして利用可能な分散型のファイルシステムが有効である。分散ファイルシステムの一方式として、非特許文献5の構造型P2P(Peer to Peer;ピアツーピア)を利用した分散ファイルシステムがある。
この方式では、複数のストレージノードが仮想的な1つのファイルシステムを構成している。各ストレージノードに保管されているファイルは、どのファイルがどのストレージノードに保存されているのかを分散ハッシュテーブル(DHT;Distributed Hash Table)を利用して管理している。DHTは(Key, Value)の組を参加しているストレージノードで分散して管理し、データベースを構成する方式である。KeyとしてファイルのID(IDentification;識別情報)、Valueとしてそのファイルを保管しているストレージノードのアドレスとすることで、分散ファイルシステム内のファイルを参加しているストレージノードで分散して管理することが可能となる。
さらに、非特許文献5のファイルシステムでは、ディレクトリの管理のため、ディレクトリファイルを作成し、通常のファイルと同様にDHTを使うことで、ディレクトリ情報を分散管理している。
非特許文献5に示される分散型ファイルシステムの特徴は、ストレージノードを必要に応じて追加していくことで、容量を任意に拡大できること、複数のストレージノードに分散してファイルを保管するため、複数のユーザからのアクセスに対して負荷分散が行われるため、複数のユーザが同時に利用しても速度性能が低下しにくいなど、放送局の大容量で多くのファイルを保管し共有するのに向いた方式である。
しかしながら、上述のような従来のメディアデータにおいては、例えば、特定のフレームを修正や変更するなどのために、該特定の時間位置の特定のメディアのデータを抽出するのが困難であるという問題がある。
本発明は、このような事情に鑑みてなされたもので、その目的は、特定の時間位置の特定のメディアのデータを容易に抽出することができるメディアファイル管理装置およびそのプログラムを提供することにある。
(1)この発明は上述した課題を解決するためになされたもので、本発明の一態様は、時系列を持つコンテンツを構成するメディアのデータを含むメディアデータと、前記メディアデータ毎に対応付けられたデータであって、前記コンテンツ中の時間位置と前記メディアデータ中のデータ位置との対応付けを示すインデックスデータとを記憶する記憶部と、前記コンテンツ中の時間位置を指定されると、該指定された時間位置に対応付けられたデータ位置を、前記インデックスデータから取得し、前記指定されたメディアの該取得したデータ位置のデータを、前記メディアデータから抽出するデータ読み出し部とを具備することを特徴とするメディアファイル管理装置である。
(2)また、本発明の他の態様は、上述のメディアファイル管理装置であって、前記メディアデータは、前記コンテンツを構成するメディアを時間方向に分割したデータを含み、前記記憶部は、前記コンテンツを構成するメディアを時間方向に分割したデータを含むメディアデータに対応する前記インデックスデータを示す仮想メディアデータを記憶し、前記データ読み出し部は、前記コンテンツ中の時間位置を指定されると、前記仮想メディアデータが示すインデックスデータに基づき、前記時間位置に対応付けられたデータ位置と該データ位置を含むメディアデータとを示す情報を取得し、前記指定された時間位置のデータを、前記取得した情報が示すメディアデータのデータ位置から抽出することを特徴とする。
(3)また、本発明の他の態様は、上述のメディアファイル管理装置であって、前記仮想メディアデータは、前記コンテンツを構成するメディアを時間方向に分割したデータを含むメディアデータに対応する前記インデックスデータと、該インデックスデータが示すコンテンツ中の時間位置の範囲との対応付けを示す情報を含み、前記データ読み出し部は、前記コンテンツ中の時間位置を指定されると、前記仮想メディアデータを参照して、前記指定された時間位置を含むインデックスデータを選択し、該選択したインデックスデータを参照して、前記指定された時間位置に対応付けられたデータ位置と該データ位置を含むメディアデータとを示す情報を取得し、前記指定された時間位置のデータを、前記取得した情報が示すメディアデータのデータ位置から抽出することを特徴とする。
(4)また、本発明の他の態様は、上述のメディアファイル管理装置であって、前記記憶部は、前記コンテンツを構成するメディアの種類と、該種類のメディアの仮想メディアデータとの対応付けを示す多重化記述データを記憶し、前記データ読み出し部は、前記コンテンツ中の時間位置とメディアとを指定されると、前記多重化記述データを参照して、前記指定されたメディアの仮想メディアデータを選択し、該選択した仮想メディアデータを参照して、前記指定された時間位置を含むインデックスデータを選択し、該選択したインデックスデータを参照して、前記指定された時間位置に対応付けられたデータ位置と該データ位置を含むメディアデータとを示す情報を取得し、前記指定された時間位置およびメディアのデータを、前記取得した情報が示すメディアデータのデータ位置から抽出することを特徴とする。
(5)また、本発明の他の態様は、上述のメディアファイル管理装置であって、前記コンテンツを指定されると、前記多重化記述データを参照して、該指定されたコンテンツを構成するメディアの種類を取得する構成メディア取得部を具備することを特徴とする。
(6)また、本発明の他の態様は、上述のメディアファイル管理装置であって、前記インデックスデータに基づき、前記コンテンツを構成するメディアを時間方向に分割したデータを含むメディアデータに対応する前記インデックスデータと、該インデックスデータが示すコンテンツ中の時間位置の範囲との対応付けを示す情報を生成し、前記仮想メディアに含める仮想メディアデータベース構築部を具備することを特徴とする。
(7)また、本発明の他の態様は、上述のメディアファイル管理装置であって、前記記憶部は、通信網を介して接続された複数の記憶装置に分散してデータを記憶する分散型ファイルシステムであり、前記メディアデータおよび前記インデックスデータの各々について、該データの識別情報と該データを記憶する記憶装置を示す情報と対応付けるデータベースを記憶し、前記データ読み出し部は、前記メディアデータおよび前記インデックスデータを読み出す際に、前記データベースを用いて、読み出すデータを記憶している前記記憶装置を示す情報を取得することを特徴とする。
(8)また、本発明の他の態様は、時系列を持つコンテンツを構成するメディアのデータを含むメディアデータと、前記メディアデータ毎に対応付けられたデータであって、前記コンテンツ中の時間位置と前記メディアデータ中のデータ位置との対応付けを示すインデックスデータとを記憶する記憶部を有するメディアファイル管理装置のコンピュータを、前記コンテンツ中の時間位置を指定されると、該指定された時間位置に対応付けられたデータ位置を、前記インデックスデータから取得し、前記指定されたメディアの該取得したデータ位置のデータを、前記メディアデータから抽出するデータ読み出し部として機能させるためのプログラムである。
この発明によれば、特定の時刻の特定のメディアのデータを容易に抽出することができる。
この発明の第1の実施形態によるメディアファイル管理装置の構成を示す概略ブロック図である。 同実施形態におけるコンテンツの構成例を示す概念図である。 同実施形態における仮想的な多重化ファイル(コンテンツ)の一例を示す図である。 同実施形態におけるメディアファイルの例を示す図である。 同実施形態における多重化記述ファイルのデータ構造の例を示す図である。 同実施形態における仮想メディアファイルのデータ例を示す図である。 同実施形態におけるインデックスファイルのデータ構造の例を示す図である。 同実施形態における仮想メディアデータベース構築部の動作を説明するフローチャートである。 同実施形態における仮想データベース構築処理(ステップS1−7)を説明するフローチャートである 同実施形態における仮想メディアデータベースの記憶内容例を示す図である。 同実施形態におけるdir関数とread関数の入出力パラメータとその動作の説明を示す図である。 同実施形態における外部インタフェースの動作を説明するフローチャートである。 この発明の第2の実施形態における分散メディアファイル管理装置の構成を示す概略ブロック図である。 同実施形態における仮想メディアデータベース構築部の動作を説明するフローチャートである。 同実施形態におけるファイル取得処理(ステップS1A−2)を説明するフローチャートである。 同実施形態における外部インタフェースの動作を説明するフローチャートである。 同実施形態における仮想メディアデータベースの検索処理(ステップS2A−5)を説明するフローチャートである。 本発明をファイルのバージョン管理に用いた例を示す図である。 本発明を電子書籍のメディアファイルの管理に利用した例を示す図である。 従来の基本的なファイルのデータ構造を示す図である。
[第1の実施形態]
以下、図面を参照して、本発明の第1の実施形態について説明する。図1は、この発明の第1の実施形態によるメディアファイル管理装置の構成を示す概略ブロック図である。メディアファイル管理装置100は、LAN(Local Area Network;ラン)などの通信網を介して、コンテンツ編集装置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(Universally Unique Identifier)などの一意なIDを生成するアルゴリズムで生成した数値でも良いし、メディア管理装置100内で一意であることが保証されているのであれば、ファイル名をそのままファイルIDとして用いても良い。
図3は、メディアファイル管理装置100が図2で示す4種類のファイルを使って提供する仮想的な多重化ファイル(コンテンツ)の一例を示している。図3に示す例では、多重化記述ファイル10のファイル名としてDGTVが設定されている。本実施形態では多重化記述ファイル名はメディアファイル管理装置100内で一意に命名される。また、多重化記述ファイル10のファイル名をファイルIDとして用いる。
図3の例の多重化記述ファイル10では、仮想メディア名としてVideo, Audio, Audio Sub, Captionの4つが定義されている。
この例では、仮想メディア名VideoとしてfileA, fileB, fileC, fileDの4つのメディアファイル30が時間軸上にマッピングされている例を示している。同様に、仮想メディア名AudioとしてfileI, fileJ, fileK, fileLの4つのメディアファイル30が時間軸上にマッピングされており、仮想メディア名Audio SubとしてfileNの1つのメディアファイル30が、仮想メディア名CaptionとしてfileX, fileYの2つのメディアファイル30が時間軸上にマッピングされている例を示している。
このように、本実施形態では分割されて保存されているメディアファイル30を、多重化記述ファイル10内の同一の時間軸上にマッピングすることで、仮想的なメディアファイルとして配置するとともに、それらの仮想的なファイルを1つの多重化ファイルとして扱えるようにすることを基本構造としている。
<メディアファイル>
本実施形態ではメディアファイル30として、データ構造が時系列に連続するデータ構造として保存されているファイルを対象としている。図4は、データ構造が時系列であるメディアファイル30の例を示している。図4の(1)および(2)はそれぞれ映像および音声のフレーム構造をもった時系列データを示している。また、図4(3)は字幕情報の例を示したものであり、字幕情報を表示する時刻と文字情報を組とする連続するデータがファイルに保存されている例である。図4(4)は番組情報を示しており、放送番組などの編成情報が時系列に保存されている例を示している。図4(5)は映像、音声などを再生したときに視聴者が入力したコメント情報を示した例である。また、図4(6)は多重化ファイルを検索するためのキーワードを、映像や音声のメディアデータに同期して保存したファイルの例を示している。なお、本発明によるメディアファイル30としては、図4に示したものに限定されるものではなく、ファイルのデータがフレームなどの特定の単位で時系列に保存されてものであればどのようなファイルでもかまわない。
図3の例で説明したように本実施形態による仮想的な多重化ファイルを実現するため、メディアファイル管理装置100は、図2に示した4種類のファイルにより仮想的な多重化ファイルの構造を実現している。以下、図2を参照しながら、本実施形態で使われるファイルについて説明する。
<多重化記述ファイル>
多重化記述ファイル10は仮想メディア名と仮想メディアファイル20のファイルIDとの組のリストが保存される。図5に図3の例の場合の多重化記述ファイルのデータ構造の例を示す。多重化記述ファイルには、仮想メディア名であるVideo, Audio, Audio Sub, Captionの4つが、それぞれ仮想メディアファイル20のファイルIDとともに保存されている。本実施形態では、仮想メディアファイル20のファイルIDとして、多重化記述ファイル10のファイル名の先頭に“@”文字を付けた文字列と、仮想メディア名とを“/”で連結した文字列を使う。すなわち、図3の例での仮想メディア名“Video”の仮想メディアファイル20のファイルIDは“@DGTV/Video”となる。仮想メディア名“Audio”の仮想メディアファイル20のファイルIDは“@DGTV/Audio”となる。仮想メディア名“Audio Sub”の仮想メディアファイル20のファイルIDは“@DGTV/Audio Sub”となる。仮想メディア名“Caption”の仮想メディアファイル20のファイルIDは“@DGTV/Caption”となる。
<仮想メディアファイル>
仮想メディアファイル20には、1つの仮想メディアにマッピングされたインデックスファイル40のファイルIDが保存されている。インデックスファイル40は、メディアファイル30に対して付与されたインデックスを記録したファイルである。
図3の例における仮想メディアファイル20のファイルのデータ例を図6に示す。図6に示す仮想メディアファイルは、図5の多重化記述ファイルに記載された仮想メディアファイルである。すなわち、ファイルIDが“@DGVT/Video”のものと、ファイルIDが“@DGVT/Audio”のものと、ファイルIDが“@DGVT/Audio Sub”のものと、ファイル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”が記録されている。また、仮想ファイル名“Audio Sub”の仮想メディアファイル30(ファイルIDが“@DGTV/Audio Sub”)には、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(Modified Julian Date)、時間を示す値としては毎日の午前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”、“Audio Sub”、“Caption”の4つである。
図10では、仮想メディア名“Video”の仮想メディアデータベースは、開始時刻“TV1”と終了時刻“TV2”とインデックスファイルのファイルID“fileA.index”と対応づけて記憶し、開始時刻“TV2”と終了時刻“TV3”とインデックスファイルのファイルID“fileB.index”と対応づけて記憶し、開始時刻“TV3”と終了時刻“TV4”とインデックスファイルのファイルID“fileC.index”と対応づけて記憶し、開始時刻“TV4”と終了時刻“TV5”とインデックスファイルのファイルID“fileD.index”と対応づけて記憶している。
また、仮想メディア名“Audio”の仮想メディアデータベースは、開始時刻“TA1”と終了時刻“TA2”とインデックスファイルのファイルID“fileI.index”と対応づけて記憶し、開始時刻“TA2”と終了時刻“TA3”とインデックスファイルのファイルID“fileJ.index”と対応づけて記憶し、開始時刻“TA3”と終了時刻“TA4”とインデックスファイルのファイルID“fileK.index”と対応づけて記憶し、開始時刻“TA4”と終了時刻“TA5”とインデックスファイルのファイルID“fileL.index”と対応づけて記憶している。
また、仮想メディア名“Audio Sub”の仮想メディアデータベースは、開始時刻“TS1”と終了時刻“TS2”とインデックスファイルのファイルID“fileN.index”と対応づけて記憶している。
また、仮想メディア“Caption”の仮想メディアデータベースは、開始時刻“TC1”と終了時刻“TC2”とインデックスファイルのファイルID“fileX.index”と対応づけて記憶し、開始時刻“TC3”と終了時刻“TC4”とインデックスファイルのファイルID“fileX.index”と対応づけて記憶し、開始時刻“TC5”と終了時刻“TC6”とインデックスファイルのファイルID“fileY.index”と対応づけて記憶し、開始時刻“TC7”と終了時刻“TC8”とインデックスファイルのファイルID“fileY.index”と対応づけて記憶している。
<外部インタフェース>
メディアファイル管理装置100は、外部とのインタフェース150として、構成メディア取得部130のdir関数と、データ読み出し部140のread関数の2つのアクセス用関数を持つ。図11に、dir関数とread関数の入出力パラメータとその動作の説明を示す。
dir関数は、多重化記述ファイル10のファイル名をパラメータとして指定されると、多重化記述ファイル10に含まれる仮想メディア名を返すインタフェースである。すなわち、dir関数により、多重化記述ファイル10で示される同一の時間軸上に並べられた仮想メディアのリストを取得することができる。図3の例では、dir関数によりVideo, Audio, Audio Sub, 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等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
以上、この発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。
100…メディアファイル管理装置
100A、100B…分散メディアファイル管理装置
110…仮想メディアデータベース構築部
120、120A…メディア記憶部
121…KV検索部
122…Key−Value記憶部
123…ファイル記憶部
130…構成メディア取得部
140…データ読み出し部
150…外部インタフェース
200…コンテンツ編集装置
300…端末装置
400…ネットワーク装置

Claims (8)

  1. 時系列を持つコンテンツを構成するメディアのデータを含むメディアデータと、前記メディアデータ毎に対応付けられたデータであって、前記コンテンツ中の時間位置と前記メディアデータ中のデータ位置との対応付けを示すインデックスデータとを記憶する記憶部と、
    前記コンテンツ中の時間位置を指定されると、該指定された時間位置に対応付けられたデータ位置を、前記インデックスデータから取得し、前記指定されたメディアの該取得したデータ位置のデータを、前記メディアデータから抽出するデータ読み出し部と
    を具備することを特徴とするメディアファイル管理装置。
  2. 前記メディアデータは、前記コンテンツを構成するメディアを時間方向に分割したデータを含み、
    前記記憶部は、前記コンテンツを構成するメディアを時間方向に分割したデータを含むメディアデータに対応する前記インデックスデータを示す仮想メディアデータを記憶し、
    前記データ読み出し部は、前記コンテンツ中の時間位置を指定されると、前記仮想メディアデータが示すインデックスデータに基づき、前記時間位置に対応付けられたデータ位置と該データ位置を含むメディアデータとを示す情報を取得し、前記指定された時間位置のデータを、前記取得した情報が示すメディアデータのデータ位置から抽出すること
    を特徴とする請求項1に記載のメディアファイル管理装置。
  3. 前記仮想メディアデータは、前記コンテンツを構成するメディアを時間方向に分割したデータを含むメディアデータに対応する前記インデックスデータと、該インデックスデータが示すコンテンツ中の時間位置の範囲との対応付けを示す情報を含み、
    前記データ読み出し部は、前記コンテンツ中の時間位置を指定されると、前記仮想メディアデータを参照して、前記指定された時間位置を含むインデックスデータを選択し、該選択したインデックスデータを参照して、前記指定された時間位置に対応付けられたデータ位置と該データ位置を含むメディアデータとを示す情報を取得し、前記指定された時間位置のデータを、前記取得した情報が示すメディアデータのデータ位置から抽出すること
    を特徴とする請求項2に記載のメディアファイル管理装置。
  4. 前記記憶部は、前記コンテンツを構成するメディアの種類と、該種類のメディアの仮想メディアデータとの対応付けを示す多重化記述データを記憶し、
    前記データ読み出し部は、前記コンテンツ中の時間位置とメディアとを指定されると、前記多重化記述データを参照して、前記指定されたメディアの仮想メディアデータを選択し、該選択した仮想メディアデータを参照して、前記指定された時間位置を含むインデックスデータを選択し、該選択したインデックスデータを参照して、前記指定された時間位置に対応付けられたデータ位置と該データ位置を含むメディアデータとを示す情報を取得し、前記指定された時間位置およびメディアのデータを、前記取得した情報が示すメディアデータのデータ位置から抽出すること
    を特徴とする請求項3に記載のメディアファイル管理装置。
  5. 前記コンテンツを指定されると、前記多重化記述データを参照して、該指定されたコンテンツを構成するメディアの種類を取得する構成メディア取得部を具備することを特徴とする請求項4に記載のメディアファイル管理装置。
  6. 前記インデックスデータに基づき、前記コンテンツを構成するメディアを時間方向に分割したデータを含むメディアデータに対応する前記インデックスデータと、該インデックスデータが示すコンテンツ中の時間位置の範囲との対応付けを示す情報を生成し、前記仮想メディアに含める仮想メディアデータベース構築部を具備すること
    を特徴とする請求項3に記載のメディアファイル管理装置。
  7. 前記記憶部は、
    通信網を介して接続された複数の記憶装置に分散してデータを記憶する分散型ファイルシステムであり、
    前記メディアデータおよび前記インデックスデータの各々について、該データの識別情報と該データを記憶する記憶装置を示す情報と対応付けるデータベースを記憶し、
    前記データ読み出し部は、
    前記メディアデータおよび前記インデックスデータを読み出す際に、前記データベースを用いて、読み出すデータを記憶している前記記憶装置を示す情報を取得すること
    を特徴とする請求項1に記載のメディアファイル管理装置。
  8. 時系列を持つコンテンツを構成するメディアのデータを含むメディアデータと、前記メディアデータ毎に対応付けられたデータであって、前記コンテンツ中の時間位置と前記メディアデータ中のデータ位置との対応付けを示すインデックスデータとを記憶する記憶部を有するメディアファイル管理装置のコンピュータを、
    前記コンテンツ中の時間位置を指定されると、該指定された時間位置に対応付けられたデータ位置を、前記インデックスデータから取得し、前記指定されたメディアの該取得したデータ位置のデータを、前記メディアデータから抽出するデータ読み出し部
    として機能させるためのプログラム。
JP2011108660A 2011-05-13 2011-05-13 メディアファイル管理装置およびそのプログラム Pending JP2012242845A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011108660A JP2012242845A (ja) 2011-05-13 2011-05-13 メディアファイル管理装置およびそのプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011108660A JP2012242845A (ja) 2011-05-13 2011-05-13 メディアファイル管理装置およびそのプログラム

Publications (1)

Publication Number Publication Date
JP2012242845A true JP2012242845A (ja) 2012-12-10

Family

ID=47464552

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011108660A Pending JP2012242845A (ja) 2011-05-13 2011-05-13 メディアファイル管理装置およびそのプログラム

Country Status (1)

Country Link
JP (1) JP2012242845A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014051071A1 (ja) * 2012-09-28 2014-04-03 日本電気株式会社 分散ストレージ装置、ストレージノード、データ提供方法およびプログラム
JP2017188891A (ja) * 2016-03-31 2017-10-12 株式会社インフォシティ 放送サービス再送信システムおよび視聴用携帯端末

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0981768A (ja) * 1995-07-11 1997-03-28 Matsushita Electric Ind Co Ltd シナリオ編集装置
JP2001008136A (ja) * 1999-06-21 2001-01-12 Victor Co Of Japan Ltd マルチメディアデータのオーサリング装置
US20020032696A1 (en) * 1994-12-16 2002-03-14 Hideo Takiguchi Intuitive hierarchical time-series data display method and system
JP2003178553A (ja) * 2001-09-29 2003-06-27 Samsung Electronics Co Ltd ユーザ定義統合情報ファイルが記録された情報貯蔵媒体、その記録方法及び装置
JP2004080623A (ja) * 2002-08-21 2004-03-11 Telecommunication Advancement Organization Of Japan 映像ファイル生成装置および映像ファイル生成方法
JP2004153452A (ja) * 2002-10-29 2004-05-27 Ikegami Tsushinki Co Ltd デジタル記録装置及びそのファイルシステム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020032696A1 (en) * 1994-12-16 2002-03-14 Hideo Takiguchi Intuitive hierarchical time-series data display method and system
JPH0981768A (ja) * 1995-07-11 1997-03-28 Matsushita Electric Ind Co Ltd シナリオ編集装置
JP2001008136A (ja) * 1999-06-21 2001-01-12 Victor Co Of Japan Ltd マルチメディアデータのオーサリング装置
JP2003178553A (ja) * 2001-09-29 2003-06-27 Samsung Electronics Co Ltd ユーザ定義統合情報ファイルが記録された情報貯蔵媒体、その記録方法及び装置
JP2004080623A (ja) * 2002-08-21 2004-03-11 Telecommunication Advancement Organization Of Japan 映像ファイル生成装置および映像ファイル生成方法
JP2004153452A (ja) * 2002-10-29 2004-05-27 Ikegami Tsushinki Co Ltd デジタル記録装置及びそのファイルシステム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014051071A1 (ja) * 2012-09-28 2014-04-03 日本電気株式会社 分散ストレージ装置、ストレージノード、データ提供方法およびプログラム
JPWO2014051071A1 (ja) * 2012-09-28 2016-08-25 日本電気株式会社 分散ストレージ装置、ストレージノード、データ提供方法およびプログラム
US9870402B2 (en) 2012-09-28 2018-01-16 Nec Corporation Distributed storage device, storage node, data providing method, and medium
JP2017188891A (ja) * 2016-03-31 2017-10-12 株式会社インフォシティ 放送サービス再送信システムおよび視聴用携帯端末

Similar Documents

Publication Publication Date Title
KR101254385B1 (ko) 미디어 데이터 및 멀티미디어 데이터 중 적어도 하나를 적어도 하나의 파일 내에서 구성화하는 방법 및 장치, 액세스 방법, 컴퓨터 판독가능 저장 매체
US10642917B2 (en) Method and device for sharing segmented video content across multiple manifests
EP1612686A1 (en) Content providing server, information processing device and method, and computer program
CN102326178A (zh) 通过综合频道管理来再现内容的方法和设备
KR101565670B1 (ko) 싱크로 콘텐츠 방송 분배 시스템
JP2004362099A (ja) サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP2004357334A (ja) Avコンテンツ生成装置及びavプログラム生成方法
US20090282060A1 (en) Representing digital content metadata
US20120128334A1 (en) Apparatus and method for mashup of multimedia content
CN108702478B (zh) 文件生成装置、文件生成方法、再现装置和再现方法
KR20060117934A (ko) 가상 콘텐트 디렉토리 서비스
US20140157324A1 (en) Content Identification and Management
KR100809641B1 (ko) 이종 시스템간의 컨텐츠 교환 방법 및 그 방법을 수행하는컨텐츠 관리 시스템
JP7238948B2 (ja) 情報処理装置および情報処理方法
CN108702534B (zh) 文件生成装置、文件生成方法以及再现装置和再现方法
Angelides et al. The handbook of MPEG applications: standards in practice
CN105812831B (zh) 网络节目的录制方法、装置、系统以及播放方法、装置
WO2011157212A1 (zh) 一种交互式网络电视中点播节目的处理系统及方法
CN100455011C (zh) 一种提供媒体资源预览信息的方法
JP2015510652A (ja) メディアコンテンツを処理するためのシステム及び方法
JP6077007B2 (ja) サブレコーディングの作成および管理
JP2012242845A (ja) メディアファイル管理装置およびそのプログラム
JP2009225116A (ja) ネットワーク伝送機能を備えた映像記録装置
JP6076149B2 (ja) 放送番組管理装置、放送番組再生装置、及びプログラム
JP2011182388A (ja) 映像記録装置および映像再生装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140108

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140728

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140805

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20141216