(57)【要約】【課題】  複数のメディアデータを格納する複合コンテンツファイルに対して、メディアデータの高速な切り出しを可能にする複合コンテンツファイル生成装置及び複合コンテンツファイル編集装置を提供する。【解決手段】  ファイル生成部１５が、メディアデータ部の所定の領域において、所定の時間範囲外の時間に対応するメディアデータを含まずに、所定の時間範囲以内のメディアデータを格納し、メタデータ生成部１２が、メディアデータが所定の領域で所定の時間範囲外の時間に対応するメディアデータを含まずに格納されたことを示すフラグ、所定の時間範囲及び格納されているメディアデータのファイル上のオフセットを有するメタデータを生成する。【選択図】図１
2006054659.tif 000002
【特許請求の範囲】
【請求項１】
メディアデータが格納されるメディアデータ部を少なくとも有する複合コンテンツファイルを生成する複合コンテンツファイル生成装置であって、
前記メディアデータ部の所定の領域において、所定の時間範囲外のメディアデータを含まずに、前記所定の時間範囲以内のメディアデータを格納する格納手段と、
前記メディアデータが前記所定の領域で前記所定の時間範囲外のメディアデータを含まずに格納されたことを示すフラグ、前記所定の時間範囲及び前記格納されているメディアデータのファイル上のオフセットを有するメタデータを生成するメタデータ生成手段とを備える複合コンテンツファイル生成装置。
【請求項２】
前記メタデータを前記複合コンテンツファイルのヘッダ部に格納するヘッダ部生成手段を備える請求項１記載の複合コンテンツファイル生成装置。
【請求項３】
メディアデータが格納されるメディアデータ部を少なくとも有する複合コンテンツファイルを編集する複合コンテンツファイル編集装置であって、
前記メディアデータが前記メディアデータ部の所定の領域において所定の時間範囲外のメディアデータを含まずに格納されたことを示すフラグ、前記所定の時間範囲及び前記格納されているメディアデータのファイル上のオフセットを有するメタデータを用いて、
前記複合コンテンツファイルから、指定された時間範囲に相当するメディアデータを切り出す切り出し手段と、
前記切り出されたメディアデータに基づいて、複合コンテンツファイルを生成するファイル生成手段とを備える複合コンテンツファイル編集装置。
【請求項４】
前記メタデータを、
前記複合コンテンツファイルのヘッダ部から取り出す取り出し手段を備える請求項３記載の複合コンテンツファイル編集装置。
【請求項５】
前記切り出し手段が指定された時間範囲に相当するメディアデータを切り出す処理において、
前記フラグが前記メディアデータが前記メディアデータ部の所定の領域において所定の時間範囲外のメディアデータを含まずに格納されたことを示し、かつ、前記所定の時間範囲が指定された切り出し時間範囲に合致している場合に、
前記複合コンテンツファイルの前記ヘッダ部を修正するヘッダ部処理手段を備え、
前記切り出し手段が、前記格納されているメディアデータのファイル上のオフセット情報を用いて指定された時間範囲に相当するメディアデータの切り出し処理を行う請求項４に記載の複合コンテンツファイル編集装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数種類のメディアデータを多重化して一つにし、伝送、保存、利用する技術に関する。
【背景技術】
【０００２】
マルチメディアデータは、動画像や音声といった、時間の概念を有する複数のメディアデータから構成される。マルチメディアデータを伝送、利用、交換する場合、上記複数のメディアデータが別々に分かれていると非常に不便である。また、上記複数のメディアデータが別々に分かれていると各メディアデータの同期が難しくなる。そのため、各メディアデータを一つにまとめることが必要である。この、各メディアデータを一つにまとめることをパッキングともいう。
【０００３】
従来、いくつかのマルチメディアデータのパッキングのための技術が開発されてきた。特に国際標準として、次のような規格が存在する。
ＩＳＯ／ＩＥＣ  １３８１８−１（ＭＰＥＧ−２  Ｓｙｓｔｅｍｓ）：マルチメディアデータを伝送・蓄積するための形式（ＴＳ：Ｔｒａｎｓｐｏｒｔ  Ｓｔｒｅａｍ，ＰＳ：Ｐｒｏｇｒａｍ  Ｓｔｒｅａｍ）を規定する。
ＩＳＯ／ＩＥＣ  １４４９６−１４（ＭＰ４  Ｆｉｌｅ  Ｆｏｒｍａｔ）：マルチメディアをコンピュータ上の一つのファイルとするための形式を規定する（以下ＭＰ４と呼ぶ）。
【０００４】
ＭＰ４は、データの途中からの再生等をサポートするために、サンプル（例えば、動画像の場合、フレームのデータをいい、オーディオデータの場合一定の時間範囲のデータのことをいう。）の時間情報とファイル内のオフセット情報とを保有することが特徴である。指定された時間からのメディア再生を瞬時に開始するには、上記オフセット情報を参照し、指定された時間のサンプルがファイル中のどこにあるかを取得すれば良い。
【０００５】
ＭＰ４の構造は、先に述べたオフセット情報といった、各メディアの操作等に必要な情報をまとめたヘッダ部と、各メディアデータの実体を格納するメディアデータ部とから構成される。
【特許文献１】国際公開第００／１８１１７号パンフレット
【特許文献２】特開２００２−１６９１８号公報
【特許文献３】特許３０８００９２号明細書
【特許文献４】特開平１１−２１５１８８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ＭＰ４の問題点として、ファイルに含まれている各メディアデータの一部分切り出し、といった編集処理に適していないことが挙げられる。一般に、動画像、音声といったメディアデータは上記メディアデータ部の中において、種類毎にひとつの塊とせず、時間的に細分し多重化（インタリーブ）して保存することが多い。多重化（インタリーブ）とは、連続したファイルの領域上において、複数のメディアデータを格納することをいう。この理由は、ＭＰ４ファイルをネットワーク伝送し再生する場合、各メディアが一つの塊となっていると、ＭＰ４ファイル全部が伝送完了するまでマルチメディアデータを再生できないからである。多重化保存することにより、ＭＰ４ファイルの先頭が届いた時点でマルチメディアデータを順次再生可能になる。
【０００７】
上記に述べた、メディアデータを「時間的に細分し多重化」してファイルに格納する場合、細分化された各メディアデータの順番は必ずしも時間順にはならない。これは、異なるバッファサイズを持つ各メディアデータの復号装置の間で、メディア再生の同期を保証するためである。図２０は、その様子を模式的に示したものである。図２０は、メディアデータ部における各メディアデータの多重化を示す概念図である。
【０００８】
図２０の例であると、時刻０から時刻４に相当する動画像データは、時刻４から時刻６に相当する音声データの後に配置されている。図２０の状態で、時刻４から時刻８に相当する音声データ及び動画像データを切り出し、新たなＭＰ４ファイルとして作成する場合、各メディアの出現順序が時間順序と一致していないため、処理が非常に煩雑になってしまう。なお、図２０に示されるような、音声データと動画像データとのファイル内での格納方法は任意に設定することができる。
【０００９】
すなわち、図２０において、単純に（Ａ）の部分から（Ｂ）の部分だけを切り出すと、時刻０から時刻４に相当する動画像データが余計なデータとして残ってしまう。このようなデータを回避するには、（Ａ）の部分から（Ｂ）の部分の全データの時間をチェックし、余計なデータを抜き取ることが必要になってくる。さらに、ヘッダ部分のオフセット情報も一つ一つ更新する必要がでてくる。このような処理を行うことは、結局一度ＭＰ４ファイルから、各メディアを分離して取り出し、各メディアで時間切り出しを行い、切り出し結果を元に再度一からＭＰ４ファイルを作成する、という処理と等価か、それ以上の処理量となる。
【００１０】
また、効率的にコンテンツの編集を行う既存技術として、特許文献１に開示された技術がある。特許文献１に開示された技術は、時間管理情報とともに時間順に並べられた動画像データ本体を有する動画像ファイルにおいて、指定された再生範囲を抽出し新たなコンテンツを作成する場合、編集が必要な再生時刻を管理する為の情報を、編集情報として記録媒体上における動画像データ本体以外に付加し、それらを用いて所望の時間に再生する技術である。
【００１１】
しかしながら、この既存技術は、上記のＭＰ４ファイルのように、メディアデータと時間情報がともに時間順に並べられておらず、ヘッダ部とメディアデータ部が完全に分離している場合には対応できず、また、指定された再生範囲を抽出する編集処理における処理効率は考慮されていなかった。
【００１２】
そのため、ＭＰ４のような、複数のメディアデータを時間的に細分し多重化するメディアデータ部と、各メディアデータを操作するための情報を持つヘッダ部とからなる、復号コンテンツファイルの、たとえば、特定の時間部分の切り出しを高速に実行するという編集を行うための技術が要望されていた。
【００１３】
本発明は、上記事情に鑑みなされたもので、複数のメディアデータを格納する複合コンテンツファイルに対して、メディアデータの高速な切り出しを可能にする複合コンテンツファイル生成装置及び複合コンテンツファイル編集装置を提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記課題を解決するため、本発明の複合コンテンツファイル生成装置は、
メディアデータが格納されるメディアデータ部を少なくとも有する複合コンテンツファイルを生成する複合コンテンツファイル生成装置であって、
前記メディアデータ部の所定の領域において、所定の時間範囲外のメディアデータを含まずに、前記所定の時間範囲以内のメディアデータを格納する格納手段と、
前記メディアデータが前記所定の領域で前記所定の時間範囲外のメディアデータを含ま
ずに格納されたことを示すフラグ、前記所定の時間範囲及び前記格納されているメディアデータのファイル上のオフセットを有するメタデータを生成するメタデータ生成手段とを備える。
【００１５】
また、本発明の複合コンテンツファイル生成装置は、
前記メタデータを前記複合コンテンツファイルのヘッダ部に格納するヘッダ部生成手段を備える。
【００１６】
さらに、本発明の複合コンテンツファイル編集装置は、
メディアデータが格納されるメディアデータ部を少なくとも有する複合コンテンツファイルを編集する複合コンテンツファイル編集装置であって、
前記メディアデータが前記メディアデータ部の所定の領域において所定の時間範囲外のメディアデータを含まずに格納されたことを示すフラグ、前記所定の時間範囲及び前記格納されているメディアデータのファイル上のオフセットを有するメタデータを用いて、
前記複合コンテンツファイルから、指定された時間範囲に相当するメディアデータを切り出す切り出し手段と、
前記切り出されたメディアデータに基づいて、複合コンテンツファイルを生成するファイル生成手段とを備える。
【００１７】
また、本発明の複合コンテンツファイル編集装置は、
前記メタデータを、
前記複合コンテンツファイルのヘッダ部から取り出す取り出し手段を備える。
【００１８】
また、本発明の複合コンテンツファイル編集装置は、
前記切り出し手段が指定された時間範囲に相当するメディアデータを切り出す処理において、
前記フラグが前記メディアデータが前記メディアデータ部の所定の領域において所定の時間範囲外のメディアデータを含まずに格納されたことを示し、かつ、前記所定の時間範囲が指定された切り出し時間範囲に合致している場合に、
前記複合コンテンツファイルの前記ヘッダ部を修正するヘッダ部処理手段を備え、
前記切り出し手段が、前記格納されているメディアデータのファイル上のオフセット情報を用いて指定された時間範囲に相当するメディアデータの切り出し処理を行う。
【００１９】
このように、本発明の複合コンテンツファイル生成装置は、複合コンテンツファイルの編集操作、すなわち、特定の時間部分のメディアデータの切り出しを高速に実行するため、メディアデータ部において、ある切り出し時間内に相当する各メディアデータがファイル領域上で特定の時間範囲外のメディアデータを含まないように格納されている状態（以下、この状態を連続という）になるように、複合コンテンツファイルを生成する。ここで、特定の時間範囲外のメディアデータとは、メディアデータの再生時間が、特定の時間範囲外であることをいう。また、特定の時間範囲以内のメディアデータとは、メディアデータの再生時間が、特定の時間範囲以内であることをいう。
【００２０】
また、本発明の複合コンテンツファイル生成装置は、複合コンテンツファイルが連続した状態で生成されたことを示すフラグ、ファイル上でメディアデータが連続になっている時間帯、及びその時間帯に相当するメディアのファイル先頭からのオフセットをメタデータとして生成し出力する。
【００２１】
さらに、本発明の複合コンテンツファイル編集装置は、メタデータを参照し、指定された切り出し時間が、メタデータに記述された時間帯と一致している場合にオフセット情報を利用することで、細分化された各メディアの時間情報を個々にチェックして入れ替え、
抜出し等の処理をすることなく、指定された切り出し時間に相当する各メディアの切り出しが可能になり、結果として複合コンテンツファイル編集装置による、メディアデータの高速切り出しが可能になる。
【発明の効果】
【００２２】
本発明による複合コンテンツファイル生成装置及び複合コンテンツファイル編集装置を用いることにより、例えば、指定された時間に相当するメディアデータ部分の切り出しといった、複合コンテンツファイルに格納された複合コンテンツデータの編集が、従来方法に比べ高速に実行することが可能になる。具体的には、例えば、元の複合コンテンツデータの時間長が１時間であった場合、約１０秒で編集処理が終了する。従来の方法で処理を行った場合約３分２０秒の処理時間を要しており、約２０倍の処理速度となる。
【発明を実施するための最良の形態】
【００２３】
以下、図面を参照して本発明を実施するための最良の形態について説明する。以下の実施の形態の構成は例示であり、本発明は実施の形態の構成に限定されない。
【００２４】
[複合コンテンツファイル生成装置]
まず、本発明の複合コンテンツファイル生成装置の一実施形態について以下説明する。図１は、本発明の複合コンテンツファイル生成装置の一実施形態の構成図である。以下に、図１に示される各部の概要を説明する。なお、図１に示される各部の機能は、コンピュータのＣＰＵがメモリなどに格納されたプログラムと協働することにより実現されるとしても良い。
【００２５】
複合コンテンツファイル生成装置１０は、入力されたメディアデータを基に、時間軸でファイル領域上で連続に多重化された複合コンテンツファイルを出力する。「時間軸でファイル領域上で連続に多重化された」複合コンテンツファイルとは、ある時間領域［ｔ１，ｔ２］に対応する各メディアデータを、他のデータ（［ｔ１，ｔ２］以外の時間に対応する各メディアデータなど）が含まれないように、サンプル単位で、単一の連続したファイル領域上に格納すると共に、インタリーブされたサンプルが時間順に並んでいる複合コンテンツファイルのことをいう。また、パケット解析部１１は、入力されたメディアデータの、時間管理情報、サイズ情報、エンコード情報などが格納されている各パケットヘッダを解析し、時間軸でファイル領域上で連続に多重化されるデータ順で、メタデータの生成に必要な情報をメタデータ生成部１２に、ヘッダ生成に必要な情報をヘッダ部生成部１３に、パケットヘッダに続くメディアデータをメディア部生成部１４に送信する。
【００２６】
メタデータ生成部１２は、パケット解析部１１から受信したパケット解析結果を基に、メタデータを生成し、このメタデータをヘッダ部生成部１３に送信する。ヘッダ部生成部１３は、パケット解析部１１から受信したパケット解析結果と、メタデータ生成部１２から出力されるメタデータを基に、ヘッダ部を生成し、この生成したヘッダ部をファイル生成部１５に送信する。
【００２７】
メディア部生成部１４は、パケット解析部１１から受信したメディアデータを基に、メディアデータ部を生成し、このメディアデータ部をファイル生成部１５に送信する。ファイル生成部１５は、ヘッダ部生成部１３から受信したヘッダ部と、メディア部生成部１４から出力されたメディアデータ部を基に、時間軸でファイル領域上連続に多重化された複合コンテンツファイルを生成し出力する。
【００２８】
次に、図１に示される複合コンテンツファイル生成装置に入力するメディアデータについて図２を参照して説明する。図２は、図１に示される複合コンテンツファイル生成装置に入力するメディアデータの概念図である。
【００２９】
図２に示されるメディアデータの例では、各メディアデータは時間的に細分化され、パケット化されている。パケットの先頭には、パケット内に含まれるメディア種別を示すコード、パケット長、時間管理などの為のタイムスタンプなどを含むパケットヘッダ（図のｈで示された部分）が存在する。その後に続いて、細分化されたメディアデータ本体が格納されている（図のＡ［０，１］といったように示された部分）。これらのパケットがメディア毎に時間的に連続になるように多重化されて配列されている。このようなフォーマットをしたシステムレイヤの例としては、ＭＰＥＧ−２  ＰＳが挙げられる。
【００３０】
次に、図３から図９を参照して、図１に示される複合コンテンツファイル生成装置で生成される複合コンテンツデータ及び複合コンテンツファイルについて説明する。図３及び図５から図９は、図１に示される複合コンテンツファイル生成装置で生成される複合コンテンツデータの概念図である。図４は、図１に示される複合コンテンツファイル生成装置で生成される複合コンテンツファイルの概念図である。複合コンテンツデータが格納されて複合コンテンツファイルとなる。
【００３１】
図３に示されるＢｏｘ５０は、図４に示される複合コンテンツファイル５１に含まれる各情報を管理するデータである。複合コンテンツファイルの各データは、このＢｏｘ５０で構成されている。Ｂｏｘ５０の最初の４バイトはＢｏｘ５０全体のデータサイズが記述され、続く４バイトはＢｏｘ５０のタイプとして４文字の文字列が記述されている。その後に、そのＢｏｘ５０で管理されている情報が、ｓｉｚｅ−８バイトの大きさで記述される。
【００３２】
このＢｏｘ５０の中には、別のＢｏｘ５０を含むことができる。図４に示されるように、複合コンテンツファイル５１に含まれるデータは全てＢｏｘ５０の形式で格納されている。また、図４に示される複合コンテンツファイル５１は、Ｆｔｙｐ  Ｂｏｘ５２と、Ｍｏｏｖ  Ｂｏｘ５３と、Ｍｄａｔ  Ｂｏｘ５４とから構成される。Ｆｔｙｐ  Ｂｏｘ５２とＭｏｏｖ  Ｂｏｘ５３とは、複合コンテンツファイル５１のヘッダ部となる。また、Ｍｄａｔ  Ｂｏｘ５４は、複合コンテンツファイル５１のメディアデータ部となる。
【００３３】
Ｆｔｙｐ  Ｂｏｘ５２は、複合コンテンツファイル５１の最上層のＢｏｘで、ファイルのタイプを管理している。Ｆｔｙｐ  Ｂｏｘ５２のｔｙｐｅ領域には、“ｆｔｙｐ”という文字列が格納される。
【００３４】
Ｍｏｏｖ  Ｂｏｘ５３は、複合コンテンツファイル５１のＢｏｘで、ビデオデータ及びオーディオデータを管理するための情報であるムービー情報を管理している。Ｍｏｏｖ  Ｂｏｘ５３には、様々な種類のＢｏｘが格納されている。“ｍｏｏｖ”は、Ｍｏｏｖ  Ｂｏｘ５３のｔｙｐｅ領域に格納される文字列である。
【００３５】
Ｍｄａｔ  Ｂｏｘ５４は、複合コンテンツファイル５１のＢｏｘで、メディアデータを管理している。Ｍｄａｔ  Ｂｏｘ５４内には、複合コンテンツファイル５１に含まれるメディアデータが、多重化され格納されている。“ｍｄａｔ”はＭｄａｔ  Ｂｏｘ５４のｔｙｐｅ領域に格納される文字列である。
【００３６】
図５は、図４に示されるＭｏｏｖ  Ｂｏｘ５３の詳細を示す図である。図５に示されるように、Ｍｏｏｖ  Ｂｏｘ５３は、ビデオデータを管理するＶｉｄｅｏ  ｔｒａｋ５６とオーディオデータを管理するＡｕｄｉｏ  ｔｒａｋ５１２とから構成される。
【００３７】
ビデオデータを管理するＶｉｄｅｏ  ｔｒａｋ５６は、Ｍｏｏｖ  Ｂｏｘ５３内に格納されているビデオデータを管理する。Ｖｉｄｅｏ  ｔｒａｋ５６の内部にはビデオデータ
を管理する為の情報がＢｏｘ形式で格納されている。
【００３８】
Ｖｉｄｅｏ  ｔｒａｋ５６はメディア毎に作成される。Ｖｉｄｅｏ  ｔｒａｋ５６のｔｙｐｅ領域には文字列“ｔｒａｋ”が格納される。この例ではＶｉｄｅｏ  ｔｒａｋ５６はビデオデータを管理するｔｒａｋ  Ｂｏｘである。
【００３９】
ｓｔｂｌ  Ｂｏｘ５７は、Ｖｉｄｅｏ  ｔｒａｋ５６が管理するビデオデータの情報を管理するＢｏｘである。下層には各ビデオデータの時間管理情報やサイズ情報、オフセット情報などがＢｏｘ形式で格納されている。ｓｔｂｌ  Ｂｏｘ５７のｔｙｐｅ領域には文字列“ｓｔｂｌ”が格納される。
【００４０】
ｓｔｔｓ  Ｂｏｘ５８は、ｓｔｂｌ  Ｂｏｘ５７が管理するビデオデータの時間管理情報を管理するＢｏｘ５０である。ｓｔｔｓ  Ｂｏｘ５８のｔｙｐｅ領域には文字列“ｓｔｔｓ”が格納される。
【００４１】
ｓｔｓｚ  Ｂｏｘ５９は、ｓｔｂｌ  Ｂｏｘ５７が管理するビデオデータのサイズ情報を管理するＢｏｘである。ｓｔｓｚ  Ｂｏｘ５９のｔｙｐｅ領域には文字列“ｓｔｓｚ”が格納される。
【００４２】
ｓｔｓｃ  Ｂｏｘ５１０は、ｓｔｂｌ  Ｂｏｘ５７が管理するメディアのチャンク情報を管理するＢｏｘである。ｓｔｓｃ  Ｂｏｘ５１０のｔｙｐｅ領域には文字列“ｓｔｓｃ”が格納される。チャンクとは、複数のサンプル列で構成され、メディアサンプルの管理を簡潔にするサンプル列である。
【００４３】
ここで、チャンクについてさらに説明する。
チャンクとは、「データの塊」を意味する。特に、本実施形態が対象にしているＭＰ４ファイルフォーマットにおいては、「時間的に連続する同一種類のメディアサンプルの集合」を意味する。また、１つのチャンクは、ファイル上で連続した１つの領域を占める。
【００４４】
また、チャンクは、データアクセスの最適化のために利用される。このチャンクの意義であるデータアクセスの最適化について以下説明する。
メディア再生にあたり、ある時間に対応するサンプルを取得する、という動作（データアクセス）が一般に行われる。
このとき、以下の順で各アトムの内容を調べ、上記サンプルのファイル内オフセット情報を取得する。アトムとは、ファイルに格納されるデータの１単位をいう。
【００４５】
１：“ｓｔｔｓ”アトムの内容を調べ、指定された時間に対応するサンプルの番号（０，１，２，・・・）を決定する。ここで、ＭＰＥＧ−４映像の場合、必ずしも各サンプル（フレーム）間の間隔が一定ではなく、単純に時間÷フレームレートでサンプル番号が決定できない。
【００４６】
２：“ｓｔｓｃ”アトムの内容を調べ、該当サンプルが収められているチャンクを決定する。すなわち、各チャンクについて、どの種類のメディアか、及び内包するサンプル数が記述されているので、チャンク先頭から順に検索することにより、探すサンプルを含むチャンクが決定できる。
【００４７】
３：“ｓｔｃｏ”アトムから、そのチャンクまでのファイルオフセットを取得する。
４：“ｓｔｓｚ”アトムから、チャンク内でのオフセットを取得する。すなわち、チャンク先頭のサンプル番号の番号が“ｓｔｓｃ”アトムから判る。チャンク内でのオフセットはチャンク先頭のサンプルと、探すサンプルとの間のサンプルについて、そのサンプル
サイズを合計することで得られる。
５：３と４との合計がサンプルのファイルオフセットとなる。
【００４８】
このようなチャンクのメリットは、まず、１：同一チャンク内の複数サンプルの一括操作（サンプル取得など）が可能になる点である。
また、このようなチャンクのメリットは、２：各サンプルについて、ファイルオフセットそのものを記述する必要が無くなる。すなわち、ファイルオフセットそのものを記述してしまうと、ファイル編集を行った場合、全てのサンプルのファイルオフセットを変更する必要がでてくる。チャンクがあれば、基本的に“ｓｔｃｏ”を変更するだけで済む。
【００４９】
ｓｔｃｏ  Ｂｏｘ５１１は、ｓｔｂｌ  Ｂｏｘ５７が管理するメディアのチャンクオフセット情報を管理するＢｏｘである。ｓｔｃｏ  Ｂｏｘ５１１のｔｙｐｅ領域には文字列“ｓｔｃｏ”が格納される。
【００５０】
オーディオデータを管理するＡｕｄｉｏ  ｔｒａｋ５１２は、ビデオトラックを管理するＶｉｄｅｏ  ｔｒａｋ５６と同じＴｒａｋ  Ｂｏｘである。Ａｕｄｉｏ  ｔｒａｋ５１２の内部構造はＶｉｄｅｏ  ｔｒａｋ５６と同一である。
【００５１】
図６は、図５に示されるｓｔｔｓ  Ｂｏｘ５８の詳細を示す図である。時間情報は、メディアの１サンプルの表示時間と、同じ表示時間を持つサンプルが連続でいくつ続くかのカウント数で管理される。
【００５２】
図６に示される例は、時間長ｄｅｌｔａ１で表示されるサンプルが連続でｃｏｕｎｔ１個存在し、ｃｏｕｎｔ１＋１番目のサンプルは時間長ｄｅｌｔａ２（ｄｅｌｔａ１とは異なる）である。この後、時間長ｄｅｌｔａ２表示されるサンプルがｃｏｕｎｔ２個（ｃｏｕｎｔ１＋１番目のサンプルも含む）続く、というように管理される。Ｅｎｔｒｙ  ｃｏｕｎｔは、このｄｅｌｔａとｃｏｕｎｔのセットがいくつ存在しているかのカウント数である。
【００５３】
図７は、図５に示されるｓｔｓｚ  Ｂｏｘ５９の詳細を示す図である。データ領域に格納されるサイズ情報は、メディアの１サンプルのデータサイズと、同じサイズを持つサンプルが連続でいくつ続くかを示すカウント数で管理される。
【００５４】
図７に示される例では、サイズｓａｍｐｌｅ  ｓｉｚｅ１のサンプルが連続でｃｏｕｎｔ１個存在し、ｃｏｕｎｔ１＋１番目のサンプルサイズはｓａｍｐｌｅ  ｓｉｚｅ２（ｓａｍｐｌｅ  ｓｉｚｅ１とは異なる）である。この後、サイズｓａｍｐｌｅ  ｓｉｚｅ２のサンプルが連続でｃｏｕｎｔ２（ｃｏｕｎｔ１＋１番目のサンプルも含む）続く、というように管理される。
【００５５】
図８は、図５に示されるｓｔｓｃ  Ｂｏｘ５１０の詳細を示す図である。データ領域に格納されるチャンク情報は、同じ性質を持つサンプル列の先頭のインデックス番号と、チャンクに含まれるサンプルの数と、サンプル情報インデックス番号で管理される。
【００５６】
図８に示される例では、先頭のチャンクのインデックスがｃｈｕｎｋ  ｉｎｄｅｘ１であり、チャンクに含まれるサンプル数がｓａｍｐｌｅ  ｐｅｒ１、含まれるサンプルの情報はｓａｍｐｌｅ  ｄｅｓｃ１で示されるサンプル情報を持つチャンクが、その次に格納されているｃｈｕｎｋ  ｉｎｄｅｘまで続く、というように管理される。
【００５７】
図９は、図５に示されるｓｔｃｏ  Ｂｏｘ５１１の詳細を示す図である。データ領域に格納されるチャンクオフセット情報は、複合コンテンツファイルの先頭からのチャンクの
オフセット情報で管理される。
【００５８】
図９に示される例は、最初のチャンクはファイルの先頭からｏｆｆｓｅｔ１バイト以降に格納されており、次のチャンクはｏｆｆｓｅｔ２バイト以降、というように管理される。Ｅｎｔｒｙ  ｃｏｕｎｔはチャンクオフセットのエントリー数である。
【００５９】
次に、メタデータの構成について図１０を参照して説明する。図１０は、本発明の複合コンテンツファイルの生成装置の一実施形態が生成するメタデータの構成を示す概念図である。
【００６０】
メタデータ６０は、複合コンテンツデータの編集に必要なデータである。このメタデータは、図４に示されるＭｏｏｖ  Ｂｏｘ５３に格納される。なお、このメタデータは、複合コンテンツファイルにおいて、Ｍｏｏｖ  Ｂｏｘ５３以外の場所に格納されるとしても良い。ＩＤ番号６１は、時間軸でファイル領域上で連続に多重化されたブロックを明示するＩＤ番号である。時間情報６２は、時間軸でファイル領域上で連続に多重化されたブロックの最初のサンプルが表示される時間情報である。
【００６１】
時間情報６３は、時間軸でファイル領域上で連続に多重化されたブロックの最後のサンプルが表示される時間情報である。判定フラッグ６４は、時間軸でファイル領域上で連続に多重化されたブロックであるかどうかの判定フラッグである。
【００６２】
オフセット情報６５は、時間軸でファイル領域上で連続に多重化されたブロックの先頭位置のファイル先頭からのオフセット情報である。オフセット情報６６は、時間軸でファイル領域上で連続に多重化されたブロックの最終位置のファイル先頭からのオフセット情報である。
【００６３】
チャンク数６７は、時間軸でファイル領域上で連続に多重化されたブロック内に含まれるオーディオトラックのチャンク数である。チャンク数６８は、時間軸でファイル領域上で連続に多重化されたブロック内に含まれるビデオトラックのチャンク数である。
【００６４】
次に、本発明の複合コンテンツファイル生成装置におけるメタデータの生成アルゴリズムについて、図１１を参照して説明する。図１１は、本発明の複合コンテンツファイル生成装置の一実施形態における、ビデオとオーディオが多重化された複合コンテンツデータ生成における、メタデータ生成アルゴリズムのフローチャートである。
【００６５】
以下、図１１に示される処理フローについて説明する。
＜ステップＳ０＞
パケット解析部１１は、現在のパケットの時間情報をｔ１［ｓ１，ｅ１］、最後に追加したビデオパケットの時間情報をｔｖ［ｓｖ，ｅｖ］、最後に追加したオーディオパケットの時間情報をｔａ［ｓａ，ｅａ］（初期値ｓ１＝ｅ１＝ｓｖ＝ｅｖ＝ｓａ＝ｅａ＝０）と設定する。（ｔ［ｓ，ｅ］，ｓ：スタート時間，ｅ：エンド時間）
【００６６】
＜ステップＳ１＞
パケット解析部１１は、入力したメディアデータの次のパケットヘッダをサーチする。
＜ステップＳ２＞
パケット解析部１１は、ヘッダが見つかった場合は、ヘッダに含まれるメディアの時間情報やサイズ情報などを解析する。
【００６７】
＜ステップＳ３＞
パケット解析部１１は、解析したパケットの時間情報ｔ２［ｓ２，ｅ２］と現在のパケ
ットの時間情報ｔ１［ｓ１，ｅ１］とを比較する。
＜ステップＳ４−１＞
現在のパケットのスタート時間ｓ１より次のパケットのスタート時間ｓ２が早かった場合、ヘッダ部生成部１３は、次のパケットのパケットヘッダ情報を複合コンテンツファイルのヘッダ部に格納し、メディア部生成部１４は、次のパケットのメディアデータを複合コンテンツファイルのメディアデータ部に格納する。
【００６８】
＜ステップＳ４−２＞
現在のパケットのスタート時間ｓ１が次のパケットのスタート時間ｓ２より早かった場合、ヘッダ部生成部１３は、現在のパケットのパケットヘッダ情報を複合コンテンツファイルのヘッダ部に格納し、メディア部生成部１４は、メディアデータを複合コンテンツファイルのメディアデータ部に格納する。
【００６９】
＜ステップＳ５＞
メタデータ生成部１２は、追加したメディアがビデオかオーディオかをチェックする。
＜ステップＳ６−１，Ｓ６−３＞
メタデータ生成部１２は、格納したパケットがビデオの場合、追加したビデオデータのエンド時間と、最後に格納したオーディオデータのエンド時間とを比較する。
【００７０】
＜ステップＳ６−２，Ｓ６−４＞
メタデータ生成部１２は、格納したパケットがオーディオの場合は、追加したオーディオのエンド時間と、最後に格納したビデオデータのエンド時間とを比較する。
＜ステップＳ７＞
メタデータ生成部１２は、格納した、ビデオとオーディオのエンド時間が一致した場合、ファイル上の領域は、ファイル領域上で連続な時間軸で隙間のない領域となるため、メタデータを作成する。
【００７１】
＜ステップＳ８−１、Ｓ８−２＞
パケット解析部１１は、格納したパケットを最後に追加したビデオもしくはオーディのパケットとし、時間情報を保持する。
＜ステップＳ８−３、Ｓ８−４＞
パケット解析部１１は、格納したパケットを最後に格納したビデオもしくはオーディオのパケットとし時間情報を保持し、追加しなかった次のパケットを現在のパケットとして保持する。
【００７２】
＜ステップＳ１＞
パケット解析部１１は、次のパケットヘッダをサーチする。
＜ステップＳ９＞
ファイル生成部１５は、パケットが見つからなかった場合は、作成した複合コンテンツのヘッダ部にメタデータを格納する。
【００７３】
ここで、図１１に示されるメタデータ生成アルゴリズムを用いて生成したメタデータについて説明する。図１２は、図１１に示されるメタデータ生成アルゴリズムを用いて生成したメタデータの概念図である。図１２に示される例では、音声パケットＡ［０，１］，Ａ［１，５］，Ａ［５，８］、映像パケットＶ［０，２］，Ｖ［２，８］が連続した領域に並び替えられる。なお、図１２に示される例において、初期値ｔ［０，０］は意味の無いデータであるので、ファイルへの格納は行われない。
【００７４】
この領域で切り出した場合、音声パケット、映像パケット共に該当する時間帯に相当するパケットのみを持っている。また、この例ではチャンクとしてこのパケットを使用し、
多重化されたブロックに含まれるオーディオのチャンク数とビデオのチャンク数をメタデータとして保持する。
【００７５】
このように、本発明の複合コンテンツファイル生成装置の一実施形態によれば、メディアデータをファイル上で連続して格納することができると共に、この格納されたデータに対応したメタデータを生成することができる。
【００７６】
［複合コンテンツファイル編集装置の全体構成］
次に、本発明の複合コンテンツファイル編集装置の一実施形態の構成について図１３を参照して説明する。図１３は、本発明の複合コンテンツファイル編集装置の一実施形態の構成図である。なお、図１３に示される各部の機能は、コンピュータのＣＰＵがメモリなどに格納されたプログラムと協働することにより実現されるとしても良い。
【００７７】
図１３に示される複合コンテンツファイル編集装置１３００は、入力された複合コンテンツファイルと切り出し時間を基に、切り出し時間のメディアのみで構成される複合コンテンツファイルを出力する。メタデータ解析部１３０１は、入力された複合コンテンツファイルと切り出し時間を基に、メタデータを解析する。そして、複合コンテンツファイル編集装置１３００は、メタデータによる編集が可能な場合はファイル分割部１３０２に編集に必要なメタデータと編集前複合コンテンツファイルとを送信し、メタデータによる編集が不可能な場合はメディア取出し部１３０３に編集に必要な切り出し時間などの情報と編集前複合コンテンツファイルを送信する。
【００７８】
ファイル分割部１３０２は、メタデータ解析部１３０１から受信したメタデータを基に、複合コンテンツファイルのメディアデータ部と編集に必要なメタデータをメディア部処理部１３０４に、ヘッダ部と編集に必要なメタデータをヘッダ部処理部１３０５に送信する。
【００７９】
メディア取出し部１３０３は、メタデータ解析部１３０１から受信した情報を基に、複合コンテンツファイルからメディアデータと、取り出し時間とを、メディアカット部１３０６に送信する。
【００８０】
メディア部処理部１３０４は、ファイル分割部１３０２から受信したメディアデータ部とメタデータを基に、メディアデータ部の必要な箇所のみを切り出し、切り出した部分をファイル生成部１３０７に送信する。
【００８１】
ヘッダ部処理部１３０５は、ファイル分割部１３０２から受信したヘッダ部とメタデータを基に、ヘッダ部の必要な箇所のみを編集し、ファイル生成部１３０７に送信する。メディアカット部１３０６は、メディア取出し部１３０３から受信したメディアデータと切り出し時間とを基に、切り出し時間で指定された部分のみを取り出しパッキング処理部１３０８に送信する。
【００８２】
ファイル生成部１３０７は、メディア部処理部１３０４から受信した編集済みメディアデータとヘッダ部処理部１３０５から受信した編集済みヘッダとを基に、複合コンテンツファイルを生成し、出力する。パッキング処理部１３０８は、メディアカット部１３０６から受信したメディアデータを複合コンテンツファイルにパッキングして出力する。
【００８３】
次に、図１３に示される複合コンテンツファイル編集装置における編集アルゴリズムについて、図１４を参照して説明する。図１４は、図１３に示される複合コンテンツファイル編集装置における編集アルゴリズムのフローチャートである。
【００８４】
＜ステップＳ０＞
メタデータ解析部１３０１は、予め指定された切り取り時間を［ｓ，ｅ］（ｓ：スタート時間，ｅ：エンド時間）とする。
＜ステップＳ１＞
メタデータ解析部１３０１は、メタデータを解析し、指定された切り取り時間［ｓ，ｅ］でファイル領域上で連続に多重化されているか、多重化フラグをチェックする。
【００８５】
＜ステップＳ２−１＞
メディア取出し部１３０３は、ステップＳ１で多重化フラグがｏｆｆであった場合、メタデータによる編集不可のコンテンツである為、複合コンテンツデータのＭｏｏｖ  Ｂｏｘ部を解析し、Ｍｄａｔ  Ｂｏｘ部に多重化されて格納されている各メディアのエレメンタリーストリームを取り出すことにより、メディア毎の分割を行う。
【００８６】
＜ステップＳ２−２＞
メディアカット部１３０６は、各メディアエレメンタリーストリームを解析し、［ｓ，ｅ］部分をカットし、所望のデータを取り出す。
＜ステップＳ２−３＞
パッキング処理部１３０８は、各エレメンタリーストリームから、複合コンテンツデータのＭｏｏｖ  Ｂｏｘを新規作成する為に必要なデータを取得し、Ｍｏｏｖ  Ｂｏｘを作成する。
＜ステップ  Ｓ２−４＞
パッキング処理部１３０８は、各エレメンタリーストリームを多重化しながら格納し、Ｍｄａｔ  Ｂｏｘ部を新規作成する。
【００８７】
＜ステップＳ３−１＞
ファイル分割部１３０２は、ステップＳ１で多重化フラグがｏｎだった場合、メタデータによる編集が可能であるので、受信したメタデータ解析結果から、Ｍｄａｔ  Ｂｏｘのスタートオフセット、つまり切り出しスタート時間が０である多重化ボックスのスタートオフセットを参照し、そのオフセット以前のヘッダ部（Ｆｔｙｐｅ  ＢｏｘとＭｏｏｖ  Ｂｏｘ）とメディアデータ部（Ｍｄａｔ  Ｂｏｘ）とを分割する。この時、切り出しスタート時間が０である多重化ボックスのスタートオフセットがａであった場合、多重化ブロックデータのスタートオフセットがａであるということなので、Ｍｄａｔ  Ｂｏｘのスタートオフセットとしては、ｔｙｐｅとｓｉｚｅ分の８バイト前の位置となる。
【００８８】
＜ステップＳ３−２＞
メディア部処理部１３０４は、メタデータを参照し、Ｍｄａｔ  Ｂｏｘを編集する。メタデータから［ｓ，ｅ］に対応するオフセット情報を取得し、Ｍｄａｔ  Ｂｏｘ部から［ｓ，ｅ］区間に対応する多重化されたメディアデータブロックを抽出する。さらに、抽出したデータサイズｘ１とｂｏｘ  ｔｙｐｅであるｍｄａｔの文字列をデータとして追加し、編集後のＭｄａｔ  Ｂｏｘを作成する。この時、削除された［０，ｓ］区間に対応するメディアデータサイズをｘ２とする。
【００８９】
＜ステップＳ３−３＞
ヘッダ部処理部１３０５は、メタデータを参照し、各ｔｒａｋのｓｔｔｓ  Ｂｏｘデータを編集する。ｓｔｔｓ  Ｂｏｘのｄｅｌｔａとｃｏｕｎｔから［ｓ，ｅ］部分に対応する時間管理情報区間以外を削除する。この時削除したサイズをｘ３（ｔ）とする。ここでｔはｔｒａｃｋ（ＶｉｄｅｏもしくはＡｕｄｉｏ）を表す。Ｂｏｘのサイズ情報から、削除したサイズｘ３（ｔ）を引き、削除したエントリー数ｙ１をｅｎｔｒｙ  ｃｏｕｎｔから引く。対応する部分の検索の仕方としては、Σ（ｄｅｌｔａ（ｎ）＊ｃｏｕｎｔ（ｎ））＝ｓ，Σ（ｄｅｌｔａ（ｍ）＊ｃｏｕｎｔ（ｍ））＝ｅ，となるｎ，ｍを検索し、ｎ番
目からｍ番目のエントリーが［ｓ，ｅ］に対応する時間管理情報となる。
【００９０】
＜ステップＳ３−４＞
ヘッダ部処理部１３０５は、メタデータを参照し、各ｔｒａｋのｓｔｓｃ  ｂｏｘデータを編集する。メタデータから［ｓ，ｅ］に対応する多重化ブロック以前に存在する各メディアのチャンク数の合計と、［ｓ，ｅ］に対応する多重化ブロックに含まれる各メディアのチャンク数を取得する。
【００９１】
［ｓ，ｅ］以前に含まれるオーディオチャンク数の合計をａ＿ｃｋ＿ｎｕｍ１、ビデオチャンク数の合計をｖ＿ｃｋ＿ｎｕｍ１とし、［ｓ，ｅ］に対応する多重化ブロックに含まれるオーディオチャンク数をａ＿ｃｋ＿ｎｕｍ２、ビデオチャンク数をｖ＿ｃｋ＿ｎｕｍ２とする。
【００９２】
各メディアが管理されているｓｔｓｃ  Ｂｏｘのｃｈｕｎｋ  ｉｎｄｅｘ情報を参照し、［ｓ，ｅ］区間に対応するチャンク情報、つまりｃｈｕｎｋ  ｉｎｄｅｘが［ａ＿ｃｋ＿ｎｕｍ１＋１，ａ＿ｃｋ＿ｎｕｍ１＋ａ＿ｃｋ＿ｎｕｍ２］（Ａｕｄｉｏ  ｔｒａｋの場合）、もしくは［ｖ＿ｃｋ＿ｎｕｍ１＋１，ｖ＿ｃｋ＿ｎｕｍ１＋ｖ＿ｃｋ＿ｎｕｍ２］（Ｖｉｄｅｏ  ｔｒａｋの場合）の区間のｃｈｕｎｋ  ｉｎｄｅｘを持つエントリー情報以外を削除する。この時、削除したサイズをｘ４（ｔ）とする。Ｂｏｘのサイズ情報から削除したサイズｘ４（ｔ）を引く。
【００９３】
また、各メディアのｓｔｓｃ  Ｂｏｘの各ｃｈｕｎｋ  ｉｎｄｅｘから、削除したチャンク数のａ＿ｃｋ＿ｎｕｍ１とｖ＿ｃｋ＿ｎｕｍ１を引いて新しいｃｈｕｎｋ  ｉｎｄｅｘに編集する。
【００９４】
＜ステップＳ３−５＞
ヘッダ部処理部１３０５は、メタデータを参照し、各ｔｒａｋのｓｔｓｚ  Ｂｏｘデータを編集する。そして、ヘッダ部処理部１３０５は、メタデータからオフセットを取得し、［ｓ，ｅ］区間以外のｓｔｓｚ  Ｂｏｘデータを検索し削除する。対応するデータの検索の仕方としては、ステップＳ３−２で削除した［０，ｓ］区間のメディアデータサイズｘ２を使用し、Σ（ｓａｍｐｌｅｓｉｚｅ（ｎ）＊ｃｏｕｎｔ（ｎ））＝ｘ２となるｎを検索し、ｎ番目のエントリーまで削除する。
【００９５】
更に、ヘッダ部処理部１３０５は、［ｓ，ｅ］区間に対応するサイズ情報を検索する為に、Σ（ｓａｍｐｌｅｓｉｚｅ（ｍ）＊ｃｏｕｎｔ（ｍ））−ｘ２＝ｘ１となるｍを検索する。ヘッダ部処理部１３０５は、ｎ＋１番目からｍ番目までのエントリーのみを残し、ｍ＋１番目以降のデータも削除する。ヘッダ部処理部１３０５は、この時削除したｓｔｓｚ  Ｂｏｘサイズをｘ５（ｔ）とし、ｓｔｓｚ  Ｂｏｘのサイズ情報から削除したサイズｘ５（ｔ）を引く。
【００９６】
＜ステップ  Ｓ３−６＞
ヘッダ部処理部１３０５は、メタデータを参照し、各ｔｒａｋのｓｔｃｏ  Ｂｏｘデータを編集する。ヘッダ部処理部１３０５は、メタデータから［ｓ，ｅ］に対応するオフセット情報［Ｆ＿ＩＮ，Ｆ＿ＯＵＴ］を取得し、Ｆ＿ＩＮと等しくなるｏｆｆｓｅｔＮと、Ｆ＿ＯＵＴと等しくなるｏｆｆｓｅｔＭを検索し、その区間以外のｏｆｆｓｅｔ情報は削除する。この時削除したサイズをｘ６（ｔ）とする。この時、Ｍｏｏｖ  Ｂｏｘ内のｂｏｘデータが合計でΣ（ｘ３（ｔ）＋ｘ４（ｔ）＋ｘ５（ｔ）＋ｘ６（ｔ））削除され、また、Ｍｄａｔ  Ｂｏｘの［ｓ，ｅ］区間以前のデータがｘ２削除されている。その為、［ｓ，ｅ］区間に存在するチャンクのオフセットもｘ７＝ｘ２＋Σ（ｘ３（ｔ）＋ｘ４（ｔ）＋ｘ５（ｔ）＋ｘ６（ｔ））サイズ編集される必要がある。ヘッダ部処理部１３０５は
、各ｏｆｆｓｅｔからｘ７引いて、削除したエントリー数ｙ２をｅｎｔｒｙ  ｃｏｕｎｔから引く。さらに、ヘッダ部処理部１３０５は、Ｂｏｘのサイズ情報からｘ６（ｔ）引く。
【００９７】
＜ステップ  Ｓ３−７＞
ヘッダ部処理部１３０５は、編集した、Ｂｏｘが格納されている上位Ｂｏｘのサイズ情報を編集する。ヘッダ部処理部１３０５は、ｓｔｔｓ，ｓｔｓｃ，ｓｔｓｚ，ｓｔｃｏの全Ｂｏｘが格納されているｓｔｂｌ  Ｂｏｘ（ｔ），ｔｒａｋ  Ｂｏｘ（ｔ），Ｍｏｏｖ
Ｂｏｘのサイズ情報からそれぞれ、ｘ８（ｔ）＝（ｘ３（ｔ）＋ｘ４（ｔ）＋ｘ５（ｔ）＋ｘ６（ｔ）），ｘ８（ｔ）＝（ｘ３（ｔ）＋ｘ４（ｔ）＋ｘ５（ｔ）＋ｘ６（ｔ）），ｘ（９）＝Σ（ｘ３（ｔ）＋ｘ４（ｔ）＋ｘ５（ｔ）＋ｘ６（ｔ））を引く。
【００９８】
＜ステップＳ４＞
ファイル生成部１３０７は、編集したＭｏｏｖ  Ｂｏｘと、抽出した［ｓ，ｅ］部分のＭｄａｔ  Ｂｏｘを結合する。
＜ステップＳ５＞
そして、ファイル生成部１３０７及びパッキング処理部１３０８は、編集複合メディアコンテンツを出力する。
【００９９】
図１５は、本発明の複合コンテンツファイル編集装置の一実施形態が図１４に示される編集アルゴリズムを用いて編集される複合コンテンツファイルの概念図であり、図１６は、本発明の複合コンテンツファイル編集装置の一実施形態が図１４に示される編集アルゴリズムを用いて編集される複合コンテンツデータの概念図であり、図１７は、本発明の複合コンテンツファイル編集装置の一実施形態が図１４に示される編集アルゴリズムを用いて編集されるメタデータの概念図であり、図１８は、本発明の複合コンテンツファイル編集装置の一実施形態が図１４に示される編集アルゴリズムを用いて編集された複合コンテンツデータの概念図であり、図１９は、本発明の複合コンテンツファイル編集装置の一実施形態が図１４に示される編集アルゴリズムを用いて編集されるメタデータの概念図である。
【０１００】
図１５は、本発明の複合コンテンツファイル編集装置の一実施形態が図１４に示される編集アルゴリズムを用いて編集する複合コンテンツファイルの概念図であり、図１６は、本発明の複合コンテンツファイル編集装置の一実施形態が図１４に示される編集アルゴリズムを用いて編集する複合コンテンツデータの概念図であり、図１７は、本発明の複合コンテンツファイル編集装置の一実施形態が図１４に示される編集アルゴリズムを用いて編集するメタデータの概念図であり、図１８は、本発明の複合コンテンツファイル編集装置の一実施形態が図１４に示される編集アルゴリズムを用いて編集した複合コンテンツデータの概念図であり、図１９は、本発明の複合コンテンツファイル編集装置の一実施形態が図１４に示される編集アルゴリズムを用いて編集したメタデータの概念図である。
【０１０１】
図１５において、複合コンテンツファイル１００は、編集前の状態であり、メディアデータ領域１０１を備える。図１５において、斜線部分は、編集処理で削除される領域を示す。
【０１０２】
メディアデータ領域１０１の削除される領域の前半１０２は、図１４のアルゴリズムのステップＳ３−２における［０，ｓ］区間に対応するメディアデータであり、領域サイズをｘ２とする。
【０１０３】
図１５及び図１６に示されるように、ｓｔｂｌ  Ｂｏｘ領域１０３は、Ｍｏｏｖ  Ｂｏｘの下層Ｂｏｘであり、さらに下層Ｂｏｘとしてｓｔｔｓ  Ｂｏｘ１０４、ｓｔｓｃ  Ｂ
ｏｘ１０５、ｓｔｓｚ  Ｂｏｘ１０６、ｓｔｃｏ  Ｂｏｘ１０７を持つ。
【０１０４】
ｓｔｔｓ  Ｂｏｘ１０４は、斜線部分で示される、編集処理で削除される領域を有する。この削除される領域のサイズをｘ３（ｔ）とする。また、削除される情報のエントリー数をｙ１とする。
ｓｔｓｃ  Ｂｏｘ１０５は、斜線部分で示される、編集処理で削除される領域を有する。この削除される領域のサイズをｘ４（ｔ）とする。
【０１０５】
ｓｔｓｚ  Ｂｏｘ１０６は、斜線部分で示される、編集処理で削除される領域を有する。この削除される領域のサイズをｘ５（ｔ）とする。
ｓｔｃｏ  Ｂｏｘ１０７は、斜線部分で示される、編集処理で削除される領域を有する。この削除される領域の領域サイズをｘ６（ｔ）とする。また、削除される情報のエントリー数をｙ２とする。
【０１０６】
図１７に示される、メタデータの内容１０８は、編集前の複合メディアコンテンツ１００のヘッダ部に格納される。斜線部分（ｉｄ（１）−ｉｄ（Ｎ−１），ｉｄ（Ｎ＋Ｍ＋１）以降）は、編集処理で削除される領域を示す。
【０１０７】
図１８に示されるサイズ１０９は、編集後のＭｏｏｖ  Ｂｏｘのサイズ領域である。下層Ｂｏｘで削除された領域サイズの合計ｘ９＝Σ（ｘ３（ｔ）＋ｘ４（ｔ）＋ｘ５（ｔ）＋ｘ６（ｔ））がサイズ情報から引かれる。
【０１０８】
サイズ領域１０１０は、編集後のｓｔｂｌ  Ｂｏｘのサイズ領域である。下層Ｂｏｘで削除された領域サイズの合計ｘ８（ｔ）＝（ｘ３（ｔ）＋ｘ４（ｔ）＋ｘ５（ｔ）＋ｘ６（ｔ））がサイズ情報から引かれる。
【０１０９】
編集後のｓｔｔｓ  Ｂｏｘ１０１１は、斜線部分が削除され、削除されたエントリー数ｙ１がｅｎｔｒｙ  ｃｏｕｎｔ情報から引かれ、また削除された領域サイズｘ３（ｔ）がサイズ情報から引かれる。
【０１１０】
編集後のｓｔｓｃ  Ｂｏｘ１０１２は、斜線部分が削除され、削除された領域サイズｘ４（ｔ）がサイズ情報から引かれる。また、インデックス情報は、削除されたｉｄ＿ｋ−１シフトされ、１から振りなおされる。
編集後のｓｔｓｚ  Ｂｏｘ１０１３は、斜線部分が削除され、削除された領域サイズｘ５（ｔ）がサイズ情報から引かれる。
【０１１１】
編集後のｓｔｃｏ  Ｂｏｘ１０１４は、斜線部分が削除され、削除された領域サイズｘ６（ｔ）がサイズ情報から引かれる。また、削除されたエントリー数ｙ２がエントリー情報から引かれる。さらに、Ｍｄａｔ  Ｂｏｘの最初のデータ以前に削除された領域サイズｘ７＝ｘ２＋Σ（ｘ３（ｔ）＋ｘ４（ｔ）＋ｘ５（ｔ）＋ｘ６（ｔ））をオフセット情報から引き編集する。
【０１１２】
図１９に示されるメタデータの内容１０１５は、編集後の複合メディアコンテンツのヘッダ部に格納されるメタデータの内容である。各ｉｄ情報はＮ−１シフトされ、１から振りなおされる。各Ｔ＿ＩＮ情報は、ｓシフトされる。各Ｔ＿ＯＵＴ情報は、ｓシフトされる。各Ｆ＿ＩＮ情報はｘ７シフトされる。各Ｆ＿ＯＵＴ情報はｘ７シフトされる。
【０１１３】
このように、本発明の複合コンテンツファイル編集装置の一実施形態によれば、指定された切り出し時間と一致し、連続して格納されているメディアデータをメタデータを用いて切り出すことができると共に、メディアデータを切り出した際にヘッダ部の処理を行う
ため、処理を迅速に行うことができる。
【図面の簡単な説明】
【０１１４】
【図１】本発明の複合コンテンツファイル生成装置の一実施形態の構成図である。
【図２】図１に示される複合コンテンツファイル生成装置に入力するメディアデータの概念図である。
【図３】図１に示される複合コンテンツファイル生成装置で生成される複合コンテンツデータの概念図である。
【図４】図１に示される複合コンテンツファイル生成装置で生成される複合コンテンツファイルの概念図である。
【図５】図１に示される複合コンテンツファイル生成装置で生成される複合コンテンツデータの概念図である。
【図６】図１に示される複合コンテンツファイル生成装置で生成される複合コンテンツデータの概念図である。
【図７】図１に示される複合コンテンツファイル生成装置で生成される複合コンテンツデータの概念図である。
【図８】図１に示される複合コンテンツファイル生成装置で生成される複合コンテンツデータの概念図である。
【図９】図１に示される複合コンテンツファイル生成装置で生成される複合コンテンツデータの概念図である。
【図１０】本発明の複合コンテンツファイルの生成装置の一実施形態が生成するメタデータの構成を示す概念図である。
【図１１】本発明の複合コンテンツファイル生成装置の一実施形態における、ビデオとオーディオが多重化された複合コンテンツデータ生成における、メタデータ生成アルゴリズムのフローチャートである。
【図１２】図１１に示されるメタデータ生成アルゴリズムを用いて生成したメタデータの概念図である。
【図１３】本発明の複合コンテンツファイル編集装置の一実施形態の構成図である。
【図１４】図１３に示される複合コンテンツファイル編集装置における編集アルゴリズムのフローチャートである。
【図１５】本発明の複合コンテンツファイル編集装置の一実施形態が図１４に示される編集アルゴリズムを用いて編集する複合コンテンツファイルの概念図である。
【図１６】本発明の複合コンテンツファイル編集装置の一実施形態が図１４に示される編集アルゴリズムを用いて編集する複合コンテンツデータの概念図である。
【図１７】本発明の複合コンテンツファイル編集装置の一実施形態が図１４に示される編集アルゴリズムを用いて編集するメタデータの概念図である。
【図１８】本発明の複合コンテンツファイル編集装置の一実施形態が図１４に示される編集アルゴリズムを用いて編集した複合コンテンツデータの概念図である。
【図１９】本発明の複合コンテンツファイル編集装置の一実施形態が図１４に示される編集アルゴリズムを用いて編集したメタデータの概念図である。
【図２０】メディアデータ部における各メディアデータの多重化を示す概念図である。
【符号の説明】
【０１１５】
１０  複合コンテンツファイル生成装置
１１  パケット解析部
１２  メタデータ生成部(メタデータ生成手段)
１３  ヘッダ部生成部(ヘッダ部生成手段)
１４  メディア部生成部
１５  ファイル生成部（格納手段）
５０  Ｂｏｘ
５１  複合コンテンツファイル
５２  Ｆｔｙｐ  Ｂｏｘ
５３  Ｍｏｏｖ  Ｂｏｘ
５４  Ｍｄａｔ  Ｂｏｘ
６０  メタデータ
６１  ＩＤ番号
６２，６３  時間情報
６４  判定フラッグ
６５，６６  オフセット情報
６７，６８  チャンク数
１００  複合コンテンツファイル
１３００  複合コンテンツファイル編集装置
１３０１  メタデータ解析部（取り出し手段）
１３０２  ファイル分割部
１３０３  メディア取出し部
１３０４  メディア部処理部（切り出し手段）
１３０５  ヘッダ部処理部(ヘッダ部処理手段)
１３０６  メディアカット部
１３０７  ファイル生成部(ファイル生成手段)
１３０８  パッキング処理部
【図１】
2006054659.tif 000003
【図２】
2006054659.tif 000004
【図３】
2006054659.tif 000005
【図４】
2006054659.tif 000006
【図５】
2006054659.tif 000007
【図６】
2006054659.tif 000008
【図７】
2006054659.tif 000009
【図８】
2006054659.tif 000010
【図９】
2006054659.tif 000011
【図１０】
2006054659.tif 000012
【図１１】
2006054659.tif 000013
【図１２】
2006054659.tif 000014
【図１３】
2006054659.tif 000015
【図１４】
2006054659.tif 000016
【図１５】
2006054659.tif 000017
【図１６】
2006054659.tif 000018
【図１７】
2006054659.tif 000019
【図１８】
2006054659.tif 000020
【図１９】
2006054659.tif 000021
【図２０】
2006054659.tif 000022