(57)【要約】【課題】所定のファイルフォーマットのファイルをダウンロードしながら再生することが可能か否かを容易に判定して多重化分離する多重化分離装置及び方法を提供することにある。【解決手段】多重化分離装置は、多重化データが入力されるダウンロード処理部１０２を備え、この処理部１０２では、多重化データが蓄積保存されるとともに同時に多重化データをダウンロードしながら再生処理するために多重化データが出力される。多重化データは、分離部１０３において、ヘッダ情報とデータ情報に分離され、ヘッダ情報は、解析部１０４で解析され、この解析を基に、前記データ情報が同様に解析部１０６において解析される。これらの解析を基にインターリーブ情報が解析されて再生処理部１０７における再生処理を実行するかどうかが判定される。【選択図】　　図１
2004040329.tif 000002
【特許請求の範囲】
【請求項１】
複数のメディア・データが多重化されいる多重化データが入力され、この多重化データを蓄積保存する為のデータを出力すると同時に多重化データをダウンロードしながら再生処理するために多重化データを出力することが可能なダウンロード処理部と、
前記ダウンロード処理部により、ダウンロードされた多重化データを逐次受け、その多重化データを解析してヘッダ情報とデータ情報に分離する分離部と、
前記分離部により分離されたヘッダ情報を解析し、各種パラメータを入手するヘッダ解析部と、
前記ヘッダ解析部により得られたパラメータを基に、前記分離部によって分離されたデータ情報を解析し、インターリーブされたデータ情報から各メディア単位のメディア・データを取り出すデータ解析部と、
前記データ解析部からの各メディア・データを基に再生処理する再生処理部と、
前記ヘッダ解析部により得られたパラメータを基にインターリーブ情報を解析して前記再生処理部における再生処理を実行するかどうかを判定するインターリーブ判定部と、
を具備することを特徴とする多重化分離装置。
【請求項２】
前記多重化データは、所定のファイル構造を有し、このファイル中には、ヘッダ項目及び多重化メディアデータが格納されるデータ項目とを含み、ヘッダ項目には、インターリーブ情報として多重化メディアデータのインタリーブの有無、各メディア・データのデコード種別及び各メディア・データのデコードに必要とされるバッファサイズの情報を含むことを特徴とする請求項１の多重化分離装置。
【請求項３】
複数のメディア・データが多重化されいる多重化データが入力され、この多重化データを蓄積保存する為のデータを出力すると同時に多重化データをダウンロードしながら再生処理するために多重化データを出力するダウンロード処理工程と、
前記ダウンロードされた多重化データを逐次受け、その多重化データを解析してヘッダ情報とデータ情報に分離する分離工程と、
前記分離部により分離されたヘッダ情報を解析し、各種パラメータを入手するヘッダ解析工程と、
前記各種パラメータを基に、前記分離されたデータ情報を解析し、インターリーブされたデータ情報から各メディア単位のメディア・データを取り出すデータ解析工程と、
前記各種パラメータを基にインターリーブ情報を解析して再生処理を実行するかどうかを判定するインターリーブ判定工程と、
前記判定に従って各メディア・データを再生処理する再生処理部と、
を具備することを特徴とする多重化分離方法。
【請求項４】
前記多重化データは、所定のファイル構造を有し、このファイル中には、ヘッダ項目及び多重化メディアデータが格納されるデータ項目とを含み、ヘッダ項目には、インターリーブ情報として多重化メディアデータのインタリーブの有無、各メディア・データのデコード種別及び各メディア・データのデコードに必要とされるバッファサイズの情報を含むことを特徴とする請求項３の多重化分離装置。
【請求項５】
複数のメディア・データが入力され、この複数のメディア・データを解析する解析部と、
この複数のメディア・データを夫々所定のデータ単位に分割してインターリーブされたインターリーブメディアデータを生成するデータ生成部と、
前記解析部の解析を基にメディアデータに関する所定のヘッダ情報を生成するヘッダ生成部と、
前記複数のメディアをインターリーブしているか否かを示す情報及びこのインターリーブされたデータをデコード処理するに必要なデコーダバッファサイズを示す情報を含むインターリーブ情報をヘッダ情報と関連させて設定するインターリーブ情報設定部と、及び
前記インターリーブメディアデータ、ヘッダ情報及びインターリーブ情報を所定のフォーマットで多重化する多重化部と、
を具備する多重化装置。
【請求項６】
複数のメディア・データが入力され、この複数のメディア・データを解析する解析工程と、
この複数のメディア・データを夫々所定のデータ単位に分割してインターリーブされたインターリーブメディアデータを生成するデータ生成工程と、
前記解析工程における解析を基にメディアデータに関する所定のヘッダ情報を生成するヘッダ生成工程と、
前記複数のメディアをインターリーブしているか否かを示す情報及びこのインターリーブされたデータをデコード処理するに必要なデコーダバッファサイズを示す情報を含むインターリーブ情報をヘッダ情報と関連させて設定するインターリーブ情報設定工程と、及び
前記インターリーブメディアデータ、ヘッダ情報及びインターリーブ情報を所定のフォーマットで多重化する多重化工程と、
を具備することを特徴とする多重化方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、多重化分離装置及びその方法並びに多重化装置及びその方法に係り、特に、複数の情報が多重化されたデータストリームから各情報を分離する多重化分離装置及びその方法並びに複数のデータストリームを多重化する多重化装置及びその方法に関するものである。
【０００２】
【従来の技術】
ＩＳＯ／ＩＥＣ１４４９６−ｌ　ＭＰＥＧ−４システムパートは、ビデオ、或いは、オーディオなどのストリームの多重化、シーン記述に関して規定をしている（ＩＳＯ／ＩＥＣ１４４９６−１，　”Ｉｎｆｏｒｍａｔｉｏｎ　ｔｅｃｈｎｏｌｏｇｙ−Ｃｏｄｉｎｇ　ｏｆ　ａｕｄｉｏ−ｖｉｓｕａｌ　ｏｂｊｅｃｔｓ−Ｐａｒｔ　ｌ：　Ｓｙｓｔｅｍｓ”，　２０００）。ここで、ＭＰＥＧ−４ファイル・フォーマット（以下単に、ＭＰ４、或いは、ＭＰ４ファイル・フォーマットと称する。）は、この規格中で規定されたマルチメディア・コンテンツ用ファイル・フォーマットであり、このフォーマットに従えば、ビデオ或いはオーディオなどの複数のメディア情報を多重化して一つのファイルとして保存することができる。
【０００３】
【発明が解決しようとする課題】
しかしながら、上記した従来技術においては、ビデオ或いはオーディオデータストリームのような複数のメディア・データを格納する際に、インターリーブするかどうかについては規定されていない。
【０００４】
これに対して、ＭＰ４ファイルをサーバーからダウンロードしながら、並行してこのファイルに含まれるビデオ或いはオーディオデータストリームを同時に再生するような場合、複数のメディア・データがデコーダのバッファモデルを満たす範囲でインターリーブされている必要がある。
このため、ＭＰ４ファイルをサーバーからダウンロードしながら同時にこのファイルに含まれるビデオ或いはオーディオデータストリームを再生する場合、ＭＰ４ファイルの途中まで再生処理が可能であったとしても、最後までメディア・データがインターリーブされている保証がないため、最悪の場合、途中で再生処理が一時停止常態になる等の問題がある。
【０００５】
そこで、本発明は、上記の問題を解決するためになされたものであり、その目的は、所定のファイルフォーマットのファイルをダウンロードしながら再生することが可能か否かを容易に判定して多重化分離する多重化分離装置及び方法を提供することにある。
【０００６】
また、この発明の目的は、所定のファイルフォーマットのファイルをダウンロードしながら再生することが可能か否かを容易に判定するに適するファイルにメディア・データを多重化する多重化装置及び方法を提供することにある。
【０００７】
更に、この発明の目的は、メディア・データをデコードするのに必要なバッファサイズ及びインターリーブされているかどうかを示す情報を格納する多重化装置及びその方法並びにその情報を用いてメディア・データがインターリーブされているか否か並びにデコード処理が可能か否かを容易に判定して多重化分離する多重化分離装置及び方法を提供することにある。
【０００８】
【課題を解決するための手段】
この発明によれば、
複数のメディア・データが多重化されいる多重化データが入力され、この多重化データを蓄積保存する為のデータを出力すると同時に多重化データをダウンロードしながら再生処理するために多重化データを出力することが可能なダウンロード処理部と、
前記ダウンロード処理部により、ダウンロードされた多重化データを逐次受け、その多重化データを解析してヘッダ情報とデータ情報に分離する分離部と、
前記分離部により分離されたヘッダ情報を解析し、各種パラメータを入手するヘッダ解析部と、
前記ヘッダ解析部により得られたパラメータを基に、前記分離部によって分離されたデータ情報を解析し、インターリーブされたデータ情報から各メディア単位のメディア・データを取り出すデータ解析部と、
前記データ解析部からの各メディア・データを基に再生処理する再生処理部と、
前記ヘッダ解析部により得られたパラメータを基にインターリーブ情報を解析して前記再生処理部における再生処理を実行するかどうかを判定するインターリーブ判定部と、
を具備することを特徴とする多重化分離装置が提供される。
【０００９】
この多重化分離装置においては、インターリーブ情報を解析するインターリーブ判定部を付加することにより、多重化データをダウンロードしながら同時に再生処理を実行可能かどうかを容易に判定することが可能となる。
【００１０】
また、この発明によれば、
複数のメディア・データが多重化されいる多重化データが入力され、この多重化データを蓄積保存する為のデータを出力すると同時に多重化データをダウンロードしながら再生処理するために多重化データを出力するダウンロード処理工程と、
前記ダウンロードされた多重化データを逐次受け、その多重化データを解析してヘッダ情報とデータ情報に分離する分離工程と、
前記分離部により分離されたヘッダ情報を解析し、各種パラメータを入手するヘッダ解析工程と、
前記各種パラメータを基に、前記分離されたデータ情報を解析し、インターリーブされたデータ情報から各メディア単位のメディア・データを取り出すデータ解析工程と、
前記各種パラメータを基にインターリーブ情報を解析して再生処理を実行するかどうかを判定するインターリーブ判定工程と、
前記判定に従って各メディア・データを再生処理する再生処理部と、
を具備することを特徴とする多重化分離方法が提供される。
【００１１】
この多重化分離方法によれば、インターリーブの有無を示す情報と、デコード処理に必要なデコーダバッファサイズ情報をヘッダ情報に設定することで、多重化データがインターリーブされているかを容易に判定することが可能となると同時に、デコード処理が可能かを容易に判定することが可能となる。
【００１２】
更に、この発明によれば、
複数のメディア・データが入力され、この複数のメディア・データを解析する解析部と、
この複数のメディア・データを夫々所定のデータ単位に分割してインターリーブされたインターリーブメディアデータを生成するデータ生成部と、
前記解析部の解析を基にメディアデータに関する所定のヘッダ情報を生成するヘッダ生成部と、
前記複数のメディアをインターリーブしているか否かを示す情報及びこのインターリーブされたデータをデコード処理するに必要なデコーダバッファサイズを示す情報を含むインターリーブ情報をヘッダ情報と関連させて設定するインターリーブ情報設定部と、及び
前記インターリーブメディアデータ、ヘッダ情報及びインターリーブ情報を所定のフォーマットで多重化する多重化部と、
を具備する多重化装置が提供される。
【００１３】
更にまた、この発明によれば、
複数のメディア・データが入力され、この複数のメディア・データを解析する解析工程と、
この複数のメディア・データを夫々所定のデータ単位に分割してインターリーブされたインターリーブメディアデータを生成するデータ生成工程と、
前記解析工程における解析を基にメディアデータに関する所定のヘッダ情報を生成するヘッダ生成工程と、
前記複数のメディアをインターリーブしているか否かを示す情報及びこのインターリーブされたデータをデコード処理するに必要なデコーダバッファサイズを示す情報を含むインターリーブ情報をヘッダ情報と関連させて設定するインターリーブ情報設定工程と、及び
前記インターリーブメディアデータ、ヘッダ情報及びインターリーブ情報を所定のフォーマットで多重化する多重化工程と、
を具備することを特徴とする多重化方法が提供される。
【００１４】
【発明の実施の形態】
以下、図面を参照しながら、この発明の一実施の形態に係る多重化分離装置及び多重化分離方法ついて説明する。
【００１５】
図１は、この発明の一実施の形態に係る多重化分離装置の機能構成例を示すブロック図である。図１に示される多重化分離装置では、ＭＰ４のフォーマット形式で多重化された入力データ１０１がダウンロード処理部１０２にて受け取られ、このダウンロード処理部１０２内のメモリ、例えば、ローカルメモリ上にＭＰ４形式のファイル１１０として保存される。ダウンロード処理部１０２では、ＭＰ４ファイルをダウンロードして保存すると同時にダウンロードしながらそのＭＰ４ファイル内のデータを再生処理するために受け取った入力データ１０１を逐次分離部１０３に転送している。
【００１６】
分離部１０３においては、受け取ったＭＰ４ファイルのデータが順次解析され、ヘッダ情報及びデータ情報とに分離される。ヘッダ情報は、ヘッダ情報を解析するヘッダ解析部１０４に転送され、データ情報は、ＭＰ４データを解析するデータ解析部１０６に転送される。ヘッダ解析部１０４においては、受け取ったヘッダ情報が解析されて再生処理に必要な各種パラメータが抽出される。この各種パラメータには、多重化されているメディアの数、そのメディアのコーデック種別、各メディア・データに含まれるサンプルの数、サンプル間の時間間隔、各サンプルのサイズ並びにサンプルが実際に格納されている位置のような情報及びインターリーブ情報がある。
【００１７】
ヘッダ解析部１０４は、各種パラメータの内のデータ情報を解析するに必要なパラメータ、例えば、コーデック種別或いはサンプルの数、サンプル間の時間間隔、サンプルサイズ、サンプル格納位置情報をデータ解析部１０６に転送している。また、インタリーブの判定に必要なパラメータ、例えば、インターリーブ情報等は、ヘッダ解析部１０４からインターリーブ判定部１０５に転送される。インターリーブ判定部１０５は、受け取ったインターリーブ情報を解析してデータの再生処理が可能かどうかを判定する。判定結果が再生不可の場合、その旨をダウンロード処理部１０２に通知する。ダウンロード処理部１０２は、インターリーブ判定部１０５から再生不可通知を受け取ると、入力データ１０１を分離部１０３に転送する処理を中止し、再生対象とされるデータの再生処理を停止する。判定結果が再生可能の場合、その旨を分離部１０３へ通知する。分離部１０３は、インターリーブ判定部から再生可能通知を受け取ると初めてデータ情報をデータ解析部１０６に転送する処理を開始する。データ解析部１０６は、ヘッダ解析部１０４から受け取ったデータ情報を解析するのに必要なパラメータ、例えば、コーデック種別、サンプルの数、サンプル間の時間間隔、サンプルサイズ、サンプル格納位置情報を基に、分離部１０３から受け取るデータ情報を逐次解析し、各メディア単位のデータストリームを取り出す。各メディアがインターリーブされている場合には、この段階で、各メディア単位に、例えば、後に説明するオーディオチャンク及びビデオチャンクの単位でデータが分離される。分離された各メディア・データは、再生処理部１０７へ逐次転送される。
【００１８】
再生処理部１０７は、データ解析部１０６より受け取ったメディア・データを、メディア単位にデコード処理し、その出力データ１０８，１０９を各メディア単位にあらかじめ決められている再生デバイスへ出力する。例えば、ＭＰＥＧ−４ビデオ・データは、ＭＰＥＧ−４ビデオデコード処理された上、フレーム単位の画像データとして出力データ１０８に出力され、フレームバッファへ転送される。例えば、ＡＡＣ（Ａｄｖａｎｃｅｄ　Ａｕｄｉｏ　Ｃｏｄｉｎｇ）データは、ＡＡＣデコード処理された上、フレーム単位のオーディオデータとして出力データ１０９に出力され、Ｄ／Ａ変換器等のオーディオ出力デバイスへ転送される。デコードされるメディアの種別としては、ビデオやオーディオの他に、文字や静止画、ＭＩＤＩ情報、制御データ等があり、この発明の実施の形態に係る多重化分離装置では、その種類を限定するものではない。
【００１９】
図２は、図１に示される多重化分離装置において処理されるＭＰ４多重化ファイルフォーマットの構造を示している。ＭＰ４は、ＭＰＥＧ−４ファイルフォーマットを省略した称呼であって、このＭＰ４は、ＭＰＥＧ−４ビデオまたはＭＰＥＧ−４オーディオコーデックに従って符号化されたビデオストリーム及び／又はオーディオストリームを格納するためのファイル・フォーマットである。このファイル・フォーマットには、定義により、ＭＰＥＧ−４ビデオまたはＭＰＥＧ−４オーディオ以外のコーデックデータも格納することが可能である。尚、このＭＰ４データは、ファイルとしてディスク上に格納されている場合、或いは、バイナリイメージとしてメモリ上に格納されている場合等が想定される。
【００２０】
図２に示すように、ＭＰ４は、オブジェクト構造を有し、幾つかのアトム（ａｔｏｍ）より構成されている。このアトムは、文献によりボックスと称せられる場合があることに注意されたい。ＭＰ４では、アトム中に、さらにアトムを入れた入れ子状態で格納することができるとされている。ここで、入れ子状態、即ち、階層構造になっているアトムの最初のアトム、即ち、最上位のアトムは、トップ・レベル・アトムと称せられる。図２には、トップ・レベル・アトムのみが示されている。ここでは、通常のオーディオ及びビデオ・データが多重化されているＭＰ４形式のファイルを想定している。
【００２１】
通常の場合、ＭＰ４ファイルは、ムービー・アトム（ｍｏｏｖ：　Ｍｏｖｉｅ　Ａｔｏｍ）１２及びメディア・データ・アトム（ｍｄａｔ：　Ｍｅｄｉａ　Ｄａｔａ　Ａｔｏｍ）１３から構成される。これらムービー・アトム（ｍｏｏｖ：　Ｍｏｖｉｅ　Ａｔｏｍ）１２及びメディア・データ・アトム（ｍｄａｔ：　Ｍｅｄｉａ　Ｄａｔａ　Ａｔｏｍ）１３に加えて図２に示すようにトップ・レベル・アトム、即ち、第１層には、ファイル・タイプ・アトム（ｆｔｙ：　Ｆｉｌｅ　Ｔｙｐｅ　Ａｔｏｍ）１１、ムービー・フラグメント・アトム（ｍｏｏｆ：　Ｍｏｖｉｅ　Ｆｒａｇｍｅｎｔ　Ａｔｏｍ）１４、フリー・スペース・アトム（ｆｒｅｅ：　Ｆｒｅｅ　Ｓｐａｃｅ　Ａｔｏｍ）１５、スキップ・アトム（ｓｋｉｐ：　ＳｋｉｐＡｔｏｍ）１６及びユーザデータ・アトム（ｕｄａｔ：　Ｕｓｅｒ　Ｄａｔａ　Ａｔｏｍ）１７がある。これらのアトムは、ＭＰ４ファイル中に必須のもの、或いは、オプションで記述されれば良いものがある。
【００２２】
図２に示されるＭＰ４ファイルには、インターリーブ情報を格納するために、ユーザ拡張モバイル・アトム（Ｍｏｂｉｌｅ　Ａｔｏｍ）としてユニバーサル・ユニークＩＤアトム（ｕｕｉｄ：　Ｕｎｉｖｅｒｓａｌ　Ｕｎｉｑｕｅ　ＩＤ　Ａｔｏｍ）１８がトップレベル、即ち、第１階層に付加されている。このユニバーサル・ユニークＩＤアトムの詳細については、後に詳述する。
【００２３】
ここで、各トップ・レベル・アトムの機能について説明する。ファイル・タイプ・アトム１１は、ファイルのブランド或いはバージョン等のファイルのタイプを格納するアトムであり、ＭＰ４で定まったファイルであることが記述される。ムービー・アトム１２は、ＭＰ４データ全体のメタデータ、つまり符号化されたメディアのコーデック・ストリームをデコードするために必要な情報等、例えば、データのデコードに必要とされる属性及びアドレス等が記述されている情報を格納している。メディア・データ・アトム１３は、実際の符号化されたメディアのコーデック・ストリーム、即ち、ビデオ・ストリーム、或いは、オーディオ・ストリーム等のコンテンツ・データを格納している。ムービー・フラグメント・アトム１４は、ムービー・アトム１２の情報を分割して格納するためのアトムである。フリー・スペース・アトム１５、スキップ・アトム１６及びユーザ・データ・アトム（ｕｄａｔ：　Ｕｓｅｒ　Ｄａｔａ　Ａｔｏｍ）１７は、ユーザー・データや、パディングのためにパディング・データを格納するためのアトムである。
【００２４】
次に、アトムの構造について説明する。アトムは、全てのアトムにおいて共通の構造を有している。図３には、共通の構造を有するアトム２０が示されている。このアトム２０においては、先頭の４バイトがアトムのサイズをバイトで示すためのサイズ・フィールド２１に定められている。次の、４バイトは、アトムの種別を識別するタイプ・フィールド２２に定められている。アトムの種別は、４つのキャラクターにより識別され、例えば、ムービー・アトム１２の場合は、”ｍｏｏｖ”となり、メディアデータ・アトムの場合は”ｍｄａｔ”となる。この４文字のキャラクターをマッチングさせることによりアトムの種別を識別することが可能となる。次に、タイプ・フィールド２２に続いてアトム・データ部２３が格納されている。このアトム・データの構造は、各アトムにおいて用途によりシンタックスが定義されている。
【００２５】
図４に示されるように、ムービー・アトム（ｍｏｏｖ：　Ｍｏｖｉｅ　Ａｔｏｍ）は、ヘッダとして第２階層にあるＭＰ４ファイルの作成時刻及びＭＰ４ファイルのコンテンツ長等のヘッダ情報が記述されているムービー・ヘッダ・アトム（ｍｖｈｄ：　Ｍｏｖｉｅ　Ｈｅａｄｅｒ　Ａｔｏｍ）を含んでいる。また、ムービー・アトム（ｍｏｏｖ）は、オブジェクト、即ち、再生対象に関する情報が記述されているオブジェクト・ディスクリプタ・アトム（ｉｏｄｓ：　Ｏｂｊｅｃｔ　ｄｅｓｃｒｉｐｔｏｒ　Ａｔｏｍ）及び多重化されているメディア情報に関する各種パラメータ、例えば、オーディオ及びビデオが多重化されている場合には、オーディオメディアのパラメータ、ビデオメディアのパラメータが記述されているトラック・アトム（ｔｒａｋ：　Ｔｒａｃｋ　Ａｔｏｍ）を含んでいる。このトラック・アトム（ｔｒａｋ）は、多重化されているメディアが多数あれば、そのメディアの数だけ用意される。例えば、オーディオとビデオとが多重化されたコンテンツにあっては、オーディオメディアトラック及びビデオメディアのトラックが用意され、そのオーディオ用のトラックにオーディオメディアのパラメータが格納され、ビデオ用のトラックにビデオメディアのパラメータが格納される。
【００２６】
また、図４に示されるようにトラック・アトム（ｔｒａｋ）は、第３階層にあるトラックの作成時刻及びトラックＩＤ（識別子）と称されるトラックを識別するための一連の番号が格納されているトラック・ヘッダ・アトム（ｔｋｈｄ：　Ｔｒａｃｋ　Ｈｅａｄｅｒ　Ａｔｏｍ）、トラックに関して記述されたトラック・リファレンス・アトム（ｔｒｅｆ：　Ｔｒａｃｋ　Ｒｅｆｅｒｅｎｃｅ　Ａｔｏｍ）、編集情報に関してのエディット・アトム（ｅｄｔｓ：　Ｅｄｉｔ　Ａｔｏｍ）及びメディアの情報に関して記述されたメディア・アトム（ｍｄｉａ：　Ｍｅｄｉａ　Ａｔｏｍ）を含んでいる。エディット・アトム（ｅｄｔｓ）は、第４階層に編集リスト情報が記述されたエディト・リスト・アトム（ｅｌｓｔ：　Ｅｄｉｔ　Ｌｉｓｔ　Ａｔｏｍ）を含み、メディア・アトム（ｍｄｉａ：　Ｍｅｄｉａ　Ａｔｏｍ）は、第４階層にこのメディアトラックのタイムスケール等の情報が格納されるメディア・ヘッダ・アトム（ｍｄｈｄ：　Ｍｅｄｉａ　Ｈｅａｄｅｒ　Ａｔｏｍ）、ヘッダを参照する情報が記述されたハンドラー・レファレンス・アトム（ｈｄｌｒ：　Ｈａｎｄｌｅｒ　Ｒｅｆｅｒｅｎｃｅ　Ａｔｏｍ）及びメディアに関する情報が格納されているメディア・インフォメーション・アトム（ｍｉｎｆ：　Ｍｅｄｉａ　ｉｎｆｏｒｍａｔｉｏｎ　Ａｔｏｍ）を含んでいる。メディア・インフォメーション・アトム（ｍｉｎｆ）は、更に第５階層にトラックに格納されているメディアがビデオであることを示すビデオ・メディア・ヘッダ・アトム（ｖｍｈｄ：　Ｖｉｄｅｏ　Ｍｅｄｉａ　Ｈｅａｄｅｒ　Ａｔｏｍ）、或いは、トラックに格納されているメディアがオーディオであることを示すサウンド・メディア・ヘッダ・アトム（ｓｍｈｄ：Ｓｏｕｎｄ　Ｍｅｄｉａ　Ｈｅａｄｅｒ　Ａｔｏｍ）、ヒント・メディアのヘッダ情報が記述されたヒント・メディア・ヘッダ・アトム（ｈｍｈｄ：　Ｈｉｎｔ　Ｍｅｄｉａ　Ｈｅａｄｅｒ　Ａｔｏｍ）、メディアがビデオ或いはオーディオ以外のＭＰＥＧ−４ストリームである場合に、ＭＰＥＧ−４のヘッダ情報が記述されたエムペグ・アトム（＜ｍｐｅｇ＞：　ＭＰＥＧ−４　Ｍｅｄｉａ　Ａｔｏｍｓ）　、メディア情報が記述されたデータ・インフォーメーション・アトム（ｄｉｎｆ：　Ｄａｔａ　Ｉｎｆｏｒｍａｔｉｏｎ　Ａｔｏｍ）及びサンプルに関しての情報が記述されたサンプル・テーブル・アトム（ｓｔｂｌ：　Ｓａｍｐｌｅ　Ｔａｂｌｅ　Ａｔｏｍ）を含んでいる。ビデオ・メディア・ヘッダ・アトム（ｖｍｈｄ：　Ｖｉｄｅｏ　Ｍｅｄｉａ　Ｈｅａｄｅｒ　Ａｔｏｍ）及びサウンド・メディア・ヘッダ・アトム（ｓｍｈｄ：　Ｓｏｕｎｄ　Ｍｅｄｉａ　Ｈｅａｄｅｒ　Ａｔｏｍ）は、トラックに格納されているメディア、即ち、オーディオかビデオ化の種別に応じて択一的に記載される。更にまた、データ・インフォーメーション・アトム（ｄｉｎｆ）は、データを参照する情報が記述されたデータ・リファレンス・アトム（ｄｒｅｆ：　Ｄａｔａ　Ｒｅｆｅｒｅｎｃｅ　Ａｔｏｍ）を含み、また、サンプル・テーブル・アトム（ｓｔｂｌ）は、各サンプルの時間間隔が設定されているでデコーディング・タイム・トウ・サンプル・アトム（ｓｔｔｓ：　Ｄｅｃｏｄｉｎｇ　ｔｉｍｅ　ｔｏ　Ｓａｍｐｌｅ　Ａｔｏｍ）　、サンプルに対するデコード時間が記述されたコンポジション・タイム・トウ・サンプル・アトム（ｃｔｔｓ：　Ｃｏｍｐｏｓｉｔｉｏｎ　Ｔｉｍｅ　ｔｏ　Ｓａｍｐｌｅ　Ａｔｏｍ）、サンプルの同期情報が記述されたシンク・サンプル・アトム（ｓｔｓｓ：　Ｓｙｎｃ　Ｓａｍｐｌｅ　Ａｔｏｍ）、コーデックの種別やデコードに必要となる各種情報が設定されているサンプル・ディスクリプタ・アトム（ｓｔｓｄ：　Ｓａｍｐｌｅ　Ｄｅｓｃｒｉｐｔｉｏｎ　Ａｔｏｍ）　、トラック中のサンプルの総数（ｓａｍｐｌｅ＿ｃｏｕｎｔ）及び各サンプルのデータ・サイズ（ｅｎｔｒｙ＿ｓｉｚｅ）が設定されているサンプル・サイズ・アトム（ｓｔｓｚ：　Ｓａｍｐｌｅ　Ｓｉｚｅ　Ａｔｏｍ）、チャンク内のサンプル数（ｓａｍｐｌｅ＿ｐｅｒ＿ｃｈｕｎｋ）及びサンプルのインデックス（ｓａｍｐｌｅ＿ｄｅｓｃｒｉｐｔｉｏｎ＿ｉｎｄｅｘ）が記述されたサンプル・トウ・チャンク・アトム（ｓｔｓｃ：　Ｓａｍｐｌｅ　ｔｏ　Ｃｈｕｎｋ　Ａｔｏｍ）、チャンクに関するファイルの先頭からのオフセット位置情報（ｃｈｕｎｋ＿ｏｆｆｓｅｔ）が記述されるチャンク・オフセット・アトム（ｓｔｃｏ：　Ｃｈｕｎｋ　Ｏｆｆｓｅｔ　Ａｔｏｍ）、同期情報が記述されたシャドウ・シンク・アトム（ｓｔｓｈ：　Ｓｈａｄｏｗ　Ｓｙｎｃ　Ｓａｍｐｌｅ　Ａｔｏｍ）及びディグレーション・プライオリティ・アトム（ｓｔｄｐ：　Ｄｅｇｒａｄａｔｉｏｎ　Ｐｒｉｏｒｉｔｙ　Ａｔｏｍ）を含んでいる。サンプル・ディスクリプタ・アトム（ｓｔｓｄ：　Ｓａｍｐｌｅ　Ｄｅｓｃｒｉｐｔｉｏｎ　Ａｔｏｍ）は、そのコーデック種別情報等に依存して複数個設定することができる。
【００２７】
図２及び図４に示すようにインターリーブ情報を格納するためにユニバーサル・ユニークＩＤアトム（ｕｕｉｄ：　Ｕｎｉｖｅｒｓａｌ　Ｕｎｉｑｕｅ　ＩＤ　Ａｔｏｍ）１８がトップレベルに付加されている。このユニバーサル・ユニークＩＤアトム（ｕｕｉｄ）１８は、例えば、下記に示されるような定義（数１）に従ったデータ構造を有している。
【００２８】
【数１】
2004040329.tif 000003
【００２９】
ここで、上記定義において、変数インターリーブ（ｕｎｓｉｇｎｅｄ　ｉｎｔ（３２）　ｉｎｔｅｒｌｅａｖｅ）には、インターリーブの有無を示す情報が格納される。この変数インターリーブ（ｕｎｓｉｇｎｅｄ　ｉｎｔ（３２）　ｉｎｔｅｒｌｅａｖｅ）には、例えば、インターリーブなしの場合に、値”０”が設定され、インターリーブありの場合に、値”１”が設定される。また、変数トラックカウント（ｕｎｓｉｇｎｅｄ　ｉｎｔ（３２）　ｔｒａｃｋ＿ｃｏｕｎｔ）には、ファイルに含まれるトラックの数が設定される。この変数トラックカウント（ｕｎｓｉｇｎｅｄ　ｉｎｔ（３２）　ｔｒａｃｋ＿ｃｏｕｎｔ）には、例えば、オーディオ及びビデオのトラックから構成されるＭＰ４ファイルの場合、値“２”が設定される。変数トラックＩＤ（ｕｎｓｉｇｎｅｄ　ｉｎｔ　（３２）　ｔｒａｃｋ＿ｉｄ）には、トラックヘッダ・アトム（ｔｋｈｄ）に設定されるトラックＩＤと同一のＩＤが設定され、トラック・アトム（ｔｒａｋ）と関連付けられる。変数エントリーカウント（ｕｎｓｉｇｎｅｄ　ｉｎｔ（３２）　ｅｎｔｒｙ＿ｃｏｕｎｔ）には、サンプル・ディスクリプタ・アトム（ｓｔｓｄ）に設定されるコーデック種別情報の個数が設定され、サンプル・ディスクリプタ・アトム（ｓｔｓｄ）内の特定のコーデック種別と関連付けられる。変数デコードバッファサイズ（ｂｉｔ２４　ｄｅｃｏｄｅｒＢｕｆｆｅｒＳｉｚｅ）には、サンプル・ディスクリプタ・アトム（ｓｔｓｄ）で指定される特定のコーデックに対するデコード処理に必要となるバッファのサイズが設定される。このように、ユニバーサル・ユニークＩＤアトム（ｕｕｉｄ）には、デコーダの有無や、デコード処理に必要となるバッファのサイズなどのインターリーブ情報が格納されている。
【００３０】
尚、ＭＰ４では、上述したアトムは、図２及び図４に示すような順序で配列されることは要求されず、前述したような規定項目の範囲内で構成を変更することが可能である。しかし、ここでは、特に具体的な規定内容については説明を省略する。ただし、アトムによって出現個数、位置、有無が規定され、データによりトップ・レベル・アトムの構成が異なることがＭＰ４の特徴であるとされている。
【００３１】
尚、サンプル（即ち、ｓａｍｐｌｅ）とは、ビデオやオーディオの実際のメディア・データをある大きさに区切った単位を称し、メディア・データは、このサンプル（ｓａｍｐｌｅ）を基に管理されている。図５に示されるように、チャンク（即ち、ｃｈｕｎｋ）は、１又は複数のサンプル（ｓａｍｐｌｅ）が連接されているものを称し、ファイル先頭からのチャンク（ｃｈｕｎｋ）の位置や当該チャンク（ｃｈｕｎｋ）にいくつのサンプル（ｓａｍｐｌｅ）が含まれているかと言った、データ領域の内部構造に関する情報は、上述したようにムーブ・コンテナ・アトム（ａｔｏｍ）の下位階層に記述される。また、既に説明したように実際のメディア・データは、メディア・データ・アトム（ｍｄａｔ）に配置され、オーディオやビデオといったメディア毎の情報管理にトラック（ｔｒａｋ）というアトム（ａｔｏｍ）が割り当てられている。このようにＭＰ４ファイルは、ムービーコンテナアトム（ｍｏｏｖ）を取得すれば、構成されるメディア数、それぞれの種別、データ・サイズ等が判明する。
【００３２】
メディア・データ・アトム（ｍｄａｔ）１３は、一例として図５に示されるようにオーディオチャンク（Ａ　ｃｈｕｎｋ　０）、ビデオチャンク（Ｖ　ｃｈｕｎｋ　０）、オーディオチャンク（Ａ　ｃｈｕｎｋ　１）、ビデオチャンク（Ｖ　ｃｈｕｎｋ　１）〜オーディオチャンク（Ａｃｈｕｎｋ　ｋ）として示されるようにチャンク単位でオーディオ・データ及びビデオ・データがインターリーブされている。この図５の例では、オーディオチャンクは、２つのオーディオサンプルから構成されている。
【００３３】
図６は、インターリーブ判定部１０５における処理手順を示すフローチャートを示している。インターリーブ判定部１０５において、処理が開始されると、インターリーブ情報が格納されたモバイル・アトム（Ｍｏｂｉｌｅ　Ａｔｏｍ）のデータが獲得される（ステップＳ１１）。次に、ＭＰ４ヘッダ情報が格納されたムービーアトム（ｍｏｏｖ：　Ｍｏｖｉｅ　Ａｔｏｍ）のデータが獲得される（ステップＳ１２）。また、ユニバーサル・ユニークＩＤアトム（ｕｕｉｄ：　Ｕｎｉｖｅｒｓａｌ　Ｕｎｉｑｕｅ　ＩＤ　Ａｔｏｍ）１８が検索されてその内の変数インターリーブ（ｕｎｓｉｇｎｅｄ　ｉｎｔ（３２）　ｉｎｔｅｒｌｅａｖｅ）の値が調べられる（ステップＳ１３）。ここで、インターリーブなしの場合には、再生処理を中止するためにダウンロード処理部１０２に再生不可が通知されて処理が終了される（ステップＳ１４）。また、インターリーブありの場合には、内部変数ｉ（ｉｎｔ　ｉ）の値が０に初期化され（ステップＳ１５）、変数トラックカウント（ｕｎｓｉｇｎｅｄ　ｉｎｔ（３２）　ｔｒａｃｋ＿ｃｏｕｎｔ）の個数分だけ以下に説明するバッファサイズ判定処理が繰り返えされる。次に、変数ｉの値が変数トラックカウントの数を超えているかが判定される（ステップＳ１６）。ここで、変数ｉの値が変数トラックカウントの数を超えている場合には、バッファサイズの判定処理が全て合格されていることとし、分離部１０３に対して再生可能が通知されて処理が終了される（ステップＳ２８）。変数ｉの値が変数トラックカウントより小さい場合には、ムービー・アトム内から変数トラックＩＤ（ｔｒａｃｋ＿ｉｄ［ｉ］）と一致するトラックＩＤを有するトラック・アトムが検索される（ステップＳ１７）。この検索によって、目的のトラック・アトムが検出されたかが判定され（ステップＳ１８）、検出されない場合にはエラーとして、再生不可判定がダウンロード処理部１０２に通知されて処理が終了される（ステップＳ１４）。目的のトラック・アトムが検出された場合には、次の処理へ進む。
【００３４】
目的のトラック・アトムが検出された場合には、内部変数ｊの値が０に初期化され（ステップＳ２０）、変数エントリーカウント（ｕｎｓｉｇｎｅｄ　ｉｎｔ（３２）　ｅｎｔｒｙ＿ｃｏｕｎｔ）の個数分だけ以下のバッファサイズの判定処理が繰り返される。変数ｊの値が変数エントリーカウントの数を超えているかが判定される（ステップＳ２１）。変数ｊの値が変数エントリーカウントの数を超えている場合には、次のバッファ判定処理のために内部変数ｉがインクリメントされてステップＳ１９及びステップＳ１６〜ステップＳ２１の処理が繰り返えされる。ここで、変数ｊの値が変数エントリーカウントより小さい場合には、ステップＳ１７の処理で検出されたトラック・アトム（ｔｒａｋ）からサンプルディスクリプションアトム（ｓｔｓｄ）が検出される（ステップＳ２２）。この検出されたサンプルディスクリプションアトム（ｓｔｓｄ）内のｊ番目に格納されているデコーダ情報が獲得される（ステップＳ２３）。獲得されたデコーダ情報からデコーダ種別、例えば、ＭＰＥＧ−４ビデオ或いはＡＡＣなどのデコーダ種別が獲得され（ステップＳ２４）、また、獲得されたデコーダ種別に対して多重化分離装置で使用可能な固有のバッファサイズが獲得される（ステップＳ２５）。
【００３５】
通常の場合、各デコーダで使用可能な固有のバッファサイズは、予め固定的に決められている。この使用可能な固有のバッファサイズと、実際の多重化データをデコードするのに必要となるバッファサイズ情報であるユニバーサル・ユニークＩＤアトム（ｕｕｉｄ）に記述されたデコードバッファサイズ（ｄｅｃｏｄｅｒＢｕｆｆｅｒＳｉｚｅ［ｉ］［ｊ］）とが比較される。（ステップＳ２６）装置に固有のデコードバッファサイズ（ｄｅｃｏｄｅｒＢｕｆｆｅｒＳｉｚｅ［ｉ］［ｊ］）よりも使用可能なバッファサイズが小さい場合には、デコード処理途中でバッファオーバフローが発生することが予想される。このような場合には、再生不可の判定がダウンロード処理部１０２に通知されて処理が終了される（ステップＳ１４）。使用可能なバッファサイズが十分に確保できる場合には、内部変数ｊがインクリメントされた後（ステップＳ２７）、ステップＳ２１の処理が繰り返えされる。
【００３６】
以上のように、この発明の実施例によれば、ＭＰ４形式のファイル・フォーマットにユニバーサル・ユニークＩＤアトム（ｕｕｉｄ：　Ｕｎｉｖｅｒｓａｌ　Ｕｎｉｑｕｅ　ＩＤ　Ａｔｏｍ）１８が追加され、この拡張されたアトムにインターリーブの有無や、各コーデック種別毎に必要となるデコーダバッファサイズ情報等インターリーブ情報が格納される。従って、多重化分離装置にインターリーブ判定部１０５が設けられ、ＭＰ４ファイル内のインターリーブ情報を解析することで、ダウンロードしながら再生処理を安定して実行できるかどうかを再生処理開始前に、容易に判定することが可能となる。
【００３７】
上述した実施の形態においては、図３に示すようにトップレベルにユーザ拡張モバイル・アトム（Ｍｏｂｉｌｅ　Ａｔｏｍ）としてのユニバーサル・ユニークＩＤアトム（ｕｕｉｄ：　ｕｎｉｖｅｒｓａｌ　ｕｎｉｑｕｅ　ＩＤ　Ａｔｏｍ）１８が追加されているが、図５に示されるトラック・アトム（ｔｒａｋ）或いはムービー・ヘッダ・アトム（ｍｖｈｄ）が設けられている第２階層にユニバーサル・ユニークＩＤアトム（ｕｕｉｄ：　ｕｎｉｖｅｒｓａｌ　ｕｎｉｑｕｅ　ＩＤ　Ａｔｏｍ）１８が追加されても良い。
【００３８】
また、ムービー・ヘッダ・アトム（ｍｖｈｄ）内に下記に示されるような項目を設ける場合には、ユニバーサル・ユニークＩＤアトム（ｕｕｉｄ）１８を設けなくとも良く、ユニバーサル・ユニークＩＤアトム（ｕｕｉｄ）１８がユーザ拡張モバイル・アトム（Ｍｏｂｉｌｅ　Ａｔｏｍ）として設けられる旨の記述も不要となる。
【００３９】
【数２】
2004040329.tif 000004
【００４０】
更に、ユニバーサル・ユニークＩＤアトム（ｕｕｉｄ）１８に代えて、モバイル・アトム（ＭｏｂｉｌｅＡｔｏｍ）が新たに定義されても良い。このモバイル・アトム（ｍｏｂｌ：　ＭｏｂｉｌｅＡｔｏｍ）は、ユニバーサル・ユニークＩＤアトム（ｕｕｉｄ）１８に代えてムーブアトム等と並設して図３に示すようにトップレベルに設けられても良い。このモバイル・アトム（ｍｏｂｌ：　ＭｏｂｉｌｅＡｔｏｍ）は、数１と同様に下記定義（数３）に従ったデータ構造を有している。
【００４１】
【数３】
2004040329.tif 000005
【００４２】
次に図７及び図８を参照して図４に示すＭＰ４ファイルを出力データとして出力する多重化装置について説明する。
【００４３】
図７は、この発明の一実施の形態に係る多重化装置の機能構成例を示すブロック図である。図７に示される多重化装置においては、各メディア単位にエンコードされた入力データ５０１，５０２を各コーデックに対応したデータ解析部５０３，５０４にて受け取る。例えば、ＡＡＡエンコードされたオーディオ並びにＭＰＥＧ−４ビデオエンコードされたビデオが入力される場合、ＡＡＡ形式でエンコードされた入力データ５０１がデータ解析部５０３にて受け取られる。また、ＭＰＥＧ−４ビデオ形式でエンコードされた入力データ５０２がデータ解析部５０４にて受け取られる。データ解析部５０３，５０４では、入力データ５０１，５０２をそれぞれ解析し、フレームなどの分割可能な区切り位置情報等のＭＰ４ヘッダ情報を作成する上で必要となる情報が検出される。
【００４４】
次に、ヘッダ生成部５０５では、データ解析部５０３，５０４からの各コーデックの解析結果からＭＰ４ヘッダ情報が生成される。この時、あらかじめ指定されたインターリーブ間隔に従い、各入力データがインターリーブされるようにＭＰ４ヘッダ情報が設定される。例えば、１秒間隔にインターリーブする際には、各入力データのフレーム区分が更に１秒間隔に分割され、その分割されたデータの塊が同一チャンクに格納される。更には、全ての入力データに対して、各チャンク毎の再生時間が順に並ぶように、各チャンクのオフセット位置が設定される。また、インターリーブ情報設定部５０６では、ＭＰ４ヘッダ情報及びインターリーブ有無の情報をヘッダ生成部５０５から受け取り、インターリーブ情報を格納するためのアトム（ｕｕｉｄ）１８が生成され、そのパラメータが設定される。次にデータ生成部５０７では、ヘッダ生成部５０５にて設定されたインターリーブを考慮したチャンクオフセット値に従い、データ解析部５０３、５０４にて受け取った各コーデックデータのデータ位置が並べ替えられ、ＭＰ４データ情報が生成される。次に多重化部５０８では、ヘッダ生成部５０５及びインターリーブ情報設定部５０６、データ生成部５０７にて生成した情報がＭＰ４形式に多重化され、出力データ５０８として出力される。ここで入力されるメディアの種別としては、ビデオやオーディオの他に、文字や静止画、ＭＩＤＩ情報、制御データ等があり、この実施例では、メディアの種類及び数が限定されるものではない。
【００４５】
図８は、インターリーブ情報設定部５０６における処理手順を示すフローチャートである。インターリーブ情報設定部５０６において処理が開始されると、始めに生成したＭＰ４ヘッダ情報及びインターリーブ有無を示す情報が獲得される（ステップＳ３１）。また、インターリーブ情報を格納するためのデータ構造である空のモバイル・アトム（ｕｕｉｄ）１８が生成される（ステップＳ３２）。次に、入手したインターリーブ有無の情報に従い、変数インターリーブの値（ｕｎｓｉｇｎｅｄｉｎｔ（３２）　ｉｎｔｅｒｌｅａｖｅ）が設定される（ステップＳ３３）。例えば、変数インターリーブの値として、インターリーブなしの場合には値“０”が、有りの場合には値“１”が設定される。次に変数トラックカウント（ｔｒａｃｋ＿ｃｏｕｎｔ）が０に初期化される（ステップＳ３４）。入手したＭＰ４ヘッダ情報が順次検索されトラック・アトムが見つけ出される（ステップＳ３５）。トラック・アトム（ｔｒａｋ）が見つからなければ（ステップＳ３６）、処理が終了される。トラック・アトム（ｔｒａｋ）が見つかった場合には、トラック・アトム（ｔｒａｋ）に含まれるトラックヘッダ・アトム（ｔｒｈｄ）が見付け出される（ステップＳ３７）。次にトラックヘッダ・アトム（ｔｒｈｄ）内の変数からトラックＩＤが獲得される（ステップＳ３９）。次にモバイル・アトム（ｕｕｉｄ）１８にトラックＩＤ（ｔｒａｃｋ＿ｉｄ）及びデコーダバッファサイズ（ｄｅｃｏｄｅｒＢｕｆｆｅｒＳｉｚｅ）が追加され、変数トラックＩＤにトラックＩＤが設定される（ステップＳ３９）。次にトラック・アトム（ｔｒａｋ）に含まれるサンプルサイズアトム（ｓｔｓｚ）が獲得される（ステップＳ４０）。サンプルサイズアトム（ｓｔｓｚ）には、トラックに含まれるサンプルの数（ｓａｍｐｌｅ＿ｃｏｕｎｔ）と各サンプルのサイズ情報（ｓａｍｐｌｅ＿ｓｉｚｅ）が含まれる。同様にトラック・アトム（ｔｒａｋ）に含まれるチャンクオフセットアトム（ｓｔｃｏ）が獲得される（ステップＳ４１）。チャンクオフセットアトム（ｓｔｃｏ）には、チャンクの数（ｅｎｔｒｙ＿ｃｏｕｎｔ）とファイルの先頭からのオフセット値（ｃｈｕｎｋ＿ｏｆｆｓｅｔ）が含まれる。同様にトラック・アトム（ｔｒａｋ）に含まれるサンプルトウチャンクアトム（ｓｔｓｃ）が獲得される（ステップＳ４２）。サンプルトウチャンクアトム（ｓｔｓｃ）には、各チャンク毎のサンプル数（ｓａｍｐｌｅ＿ｐｅｒ＿ｃｈｕｎｋ）が含まれる。次に、サンプルサイズアトム（ｓｔｓｚ）、チャンクオフセットアトム（ｓｔｃｏ）及びサンプルトウチャンクアトム（ｓｔｓｃ）の情報を元に、オフセットの値が連続しているサンプルを一つのまとまりとし、各まとまり毎のサンプルの合計サイズがすべて算出される（ステップＳ４３）。算出された合計サイズの中で最大値が求められ、モバイル・アトムの変数デコーダバッファサイズ（ｄｅｃｏｄｅｒＢｕｆｆｅｒＳｉｚｅ）に設定される（ステップＳ４４）。次に変数トラックカウント（ｕｎｓｉｇｎｅｄ　ｉｎｔ（３２）　ｔｒａｃｋ＿ｃｏｕｎｔ）がインクリメントされた後（ステップＳ４５）、次のトラック・アトムを検索する処理（ステップＳ３５）が繰り返えされる。
【００４６】
以上の処理手順により、各トラックのデータをデコードするのに必要なバッファ情報がモバイル・アトムに設定される。
【００４７】
【発明の効果】
以上のように、この発明の多重化分離装置及び方法によれば、メディア・データをデコードするのに必要なバッファサイズ及びインターリーブされているかどうかを示す情報がＭＰ４ファイル中に格納されている。従って、この情報を用いてメディア・データがインターリーブされているか否か並びにデコード処理が可能か否かを容易に判定することができる。その結果、この発明の多重化分離装置及び方法においては、ＭＰ４ファイルをダウンロードしながら最後まで再生することができる。
【図面の簡単な説明】
【図１】この発明の一実施の形態に係る多重化分離装置の機能を示すブロック図である。
【図２】図１に示される多重化分離装置において処理されるＭＰ４多重化フォーマット・ファイルの構造を示す説明図である。
【図３】図２に示される各アトムの共通構造を示す説明図である。
【図４】図３に示されるムービー・アトムのデータ構造を示す説明図である。
【図５】図３に示されるメディア・データ・アトム内におけるインターリーブの一例を示す説明図である。
【図６】図１に示されるインターリーブ判定部における処理手順を示すフローチャートである。
【図７】この発明の実施の形態に係る多重化装置の機能を示すブロック図である。
【図８】図７に示した多重化装置のインターリーブ情報設定部における処理手順を示すフローチャートである。
【符号の説明】
１０３．．．分離部
１０４．．．ヘッダ解析部
１０５．．．インターリーブ判定部
１０６．．．データ解析部
１０６．．．ＡＭＲ情報設定部
１０７．．．再生処理部
５０３、５０４．．．データ解析部
５０５．．．ヘッダ生成部
５０６．．．インターリーブ情報設定部
５０７．．．データ生成部
５０８．．．多重化部
【図１】
2004040329.tif 000006
【図２】
2004040329.tif 000007
【図３】
2004040329.tif 000008
【図４】
2004040329.tif 000009
【図５】
2004040329.tif 000010
【図６】
2004040329.tif 000011
【図７】
2004040329.tif 000012
【図８】
2004040329.tif 000013