(57)【要約】【課題】ダウンロード再生及びリアルタイム記録の有効性を保持しつつコンテンツのダウンロード再生時の利便性を向上した逆多重化装置及び多重化装置を提供する。【解決手段】逆多重化装置２００は、ＭＰ４ファイルデータ１００を取得するデータ取得部２１０と、データ取得部２１０により取得されたＭＰ４ファイルデータ１００を一組のｍｏｏｖ１１０及びｍｄａｔ１１０と一組のｍｏｏｆ１３０及びｍｄａｔ１４０ごとに逆多重化して復号化する復号部２１３と、データ取得２１０により取得されたＭＰ４ファイルデータ１００のｍｏｏｖ１１０に含まれるコンテンツ総時間長情報に基づいて、コンテンツ総時間長を特定するコンテンツ時間長特定部２１１ａと、コンテンツ時間長特定部２１１ａにより特定されたコンテンツ総時間長を表示する再生部２１４とを備える。【選択図】　　　　図２
2004007610.tif 000002
【特許請求の範囲】
【請求項１】
デジタル著作物であるコンテンツが多重化された多重化データを、その先頭部から取得して逆多重化する逆多重化装置であって、
前記多重化データは、多重化されたコンテンツの一部を格納するコンテンツ格納ボックスと前記一部のコンテンツに関連する関連情報を格納する関連情報格納ボックスとの組が複数連なるとともに、前記全てのコンテンツの再生に要する総時間長を特定するための総時間長情報が前記先頭部に含まれるように構成されており、
前記逆多重化装置は、
前記多重化データを取得する取得手段と、
前記取得手段により取得された前記多重化データを前記各組ごとに逆多重化処理する処理手段と、
前記取得手段により取得された前記多重化データの先頭部に含まれる総時間長情報に基づいて、前記総時間長を特定する総時間長特定手段と、
前記総時間長特定手段により特定された総時間長を表示する表示手段と
を備えることを特徴とする逆多重化装置。
【請求項２】
前記総時間長情報は、前記全てのコンテンツの再生に要する総時間長を示し、
前記取得手段は、前記総時間長情報を含む前記多重化データを取得する
ことを特徴とする請求項１記載の逆多重化装置。
【請求項３】
前記多重化データは、前記組をそれぞれ有する第１及び第２の領域から構成され、
前記総時間長情報は、前記第１の領域に含まれるコンテンツの再生に要する時間長を示す内容の第１の時間長情報と、前記第２の領域に含まれるコンテンツの再生に要する時間長を示す内容の第２の時間長情報とから構成されており、
前記総時間長特定手段は、
前記第１の時間長情報により示される時間長と、前記第２の時間長情報により示される時間長とを足し合わせることで、前記総時間長を特定する
ことを特徴とする請求項１記載の逆多重化装置。
【請求項４】
前記多重化データは、そこに含まれる前記コンテンツに応じて、第１の領域、又は前記組をそれぞれ有する第１及び第２の領域から構成され、
前記多重化データが第１の領域から構成されるときには、前記総時間長情報は、前記第１の領域に含まれるコンテンツの再生に要する時間長を示し、
前記多重化データが第１及び第２の領域から構成されるときには、前記総時間長情報は、前記第１の領域に含まれるコンテンツの再生に要する時間長を示す内容の第１の時間長情報と、前記第２の領域に含まれるコンテンツの再生に要する時間長を示す内容の第２の時間長情報とから構成されており、
前記総時間長特定手段は、
前記取得手段で取得された前記多重化データが、第１の領域から構成されているか、第１及び第２の領域から構成されているかを判別し、
第１の領域から構成されていると判別したときには、前記総時間長情報により示される時間長を前記総時間長として特定し、
第１及び第２の領域から構成されていると判別したときには、前記第１の時間長情報により示される時間長と、前記第２の時間長情報により示される時間長とを足し合わせることで、前記総時間長を特定する
ことを特徴とする請求項１記載の逆多重化装置。
【請求項５】
前記総時間長情報は、前記全てのコンテンツの再生に要する総時間長、又は前記総時間長以外の所定の内容を示し、
前記総時間長特定手段は、
前記取得手段で取得された前記多重化データに前記総時間長情報が含まれているか否かを判別するとともに、前記総時間長情報が含まれていると判別したときには、さらに、前記総時間長情報が前記所定の内容を示しているか否かを判別し、
前記所定の内容を示していないと判別したときには、
前記総時間長情報により示される前記総時間長を特定し、
前記多重化データに前記総時間長情報が含まれていないと判別したとき、又は前記総時間長情報が前記所定の内容を示していると判別したときには、
前記総時間長を特定することができないと判別し、
前記表示手段は、
前記総時間長特定手段で前記総時間長が特定できないと判別されたときには、前記総時間長が不明であることを報知する
ことを特徴とする請求項１記載の逆多重化装置。
【請求項６】
前記多重化データは、そこに含まれる前記コンテンツに応じて、第１の領域、又は前記組をそれぞれ有する第１及び第２の領域から構成され、
前記多重化データが第１の領域から構成されるときには、前記総時間長情報は、前記第１の領域に含まれるコンテンツの再生に要する時間長を示し、
前記多重化データが第１及び第２の領域から構成されるときには、前記総時間長情報は、前記第１の領域に含まれるコンテンツの再生に要する時間長を示す内容の第１の時間長情報と、前記第２の領域に含まれるコンテンツの再生に要する時間長、又は前記時間長が不明であることを示す内容の第２の時間長情報とから構成されており、
前記総時間長特定手段は、
前記取得手段で取得された前記多重化データが、第１の領域から構成されているか、第１及び第２の領域から構成されているかを判別し、
第１の領域から構成されていると判別したときには、前記総時間長情報により示される時間長を前記総時間長として特定し、
第１及び第２の領域から構成されていると判別したときには、さらに、前記第２の時間長情報に基づいて、前記第２の領域に含まれるコンテンツの再生に要する時間長が不明であるか否かを判別し、
不明でないと判別したときには、
前記第１の時間長情報により示される時間長と、前記第２の時間長情報により示される時間長とを足し合わせることで、前記総時間長を特定し、
不明であると判別したときには、
前記総時間長を特定することができないと判別し、
前記表示手段は、
前記総時間長特定手段で前記総時間長が特定できないと判別されたときには、前記総時間長が不明であることを報知する
ことを特徴とする請求項１記載の逆多重化装置。
【請求項７】
前記多重化データの先頭部には、前記多重化データが第１及び第２の領域から構成されているか否かを示す領域特定情報が含められており、
前記総時間長特定手段は、前記領域特定情報に基づいて、前記取得手段で取得された前記多重化データが、第１の領域から構成されているか、第１及び第２の領域から構成されているかを判別する
ことを特徴とする請求項６記載の逆多重化装置。
【請求項８】
前記逆多重化装置は、さらに、
前記処理手段により逆多重化処理されたコンテンツを再生する再生手段と、
前記再生手段により前記コンテンツが再生されている再生時間を特定する再生時間特定手段とを備え、
前記表示手段は、
前記総時間長特定手段により特定された前記総時間長に対する、前記再生時間特定手段により特定された再生時間の割合を算出し、
所定の図形を前記割合に応じて移動させて表示する
ことを特徴とする請求項１記載の逆多重化装置。
【請求項９】
前記コンテンツは複数の種類から構成され、前記多重化データの先頭部には、前記各種類のコンテンツの再生に要する種別総時間長を示す種別総時間長情報が含められており、
前記総時間長特定手段は、
前記取得手段により取得された前記多重化データの先頭部に含まれる種別総時間長情報に基づいて前記種別総時間長を特定し、
前記表示手段は、
前記総時間長特定手段により特定された種別総時間長を表示する
ことを特徴とする請求項１記載の逆多重化装置。
【請求項１０】
前記多重化データには、前記多重化されたコンテンツが複数の構成要素に分けて含まれるとともに、前記各構成要素の再生に要する要素時間長を示す内容の要素時間長情報と、複数の構成要素からなる構成単位の再生に要する単位時間長を示す単位時間長情報とが含められており、
前記逆多重化装置は、さらに、
所定の目標時間を示す目標時間情報を取得すると、前記要素時間長情報により示される要素時間長よりも、前記単位時間長情報により示される単位時間長を優先して用いることで、前記取得手段により取得された前記多重化データの中から、前記目標時間情報により示される目標時間に応じた構成要素を特定するランダムアクセス処理手段と、
前記ランダムアクセス処理手段により特定された前記構成要素からコンテンツを再生する再生手段と
を備えることを特徴とする請求項１記載の逆多重化装置。
【請求項１１】
前記ランダムアクセス処理手段は、
先に前記各構成単位の単位時間長を加算することで、前記目標時間に応じた構成要素を検索し、
前記目標時間に応じた構成要素がなければ、前記目標時間に最も近い前記加算結果に対して、前記各構成要素の要素時間長をさらに加算することで、前記目標時間に応じた構成要素を特定する
ことを特徴とする請求項１０記載の逆多重化装置。
【請求項１２】
前記ランダムアクセス処理手段は、
前記単位時間長情報により示される内容が有効な単位時間長であるか否かを判別し、
有効な単位時間長ではないと判別したときには、前記要素時間長情報により示される要素時間長を用いて、前記目標時間に応じた構成要素を特定する
ことを特徴とする請求項１１記載の逆多重化装置。
【請求項１３】
デジタル著作物であるコンテンツが多重化された多重化データを格納する記憶媒体であって、
前記多重化データは、
多重化されたコンテンツの一部を格納するコンテンツ格納ボックスと前記一部のコンテンツに関連する関連情報を格納する関連情報格納ボックスとの組が複数連なるとともに、
前記多重化データの先頭部には、
前記全てのコンテンツの再生に要する総時間長を特定するための総時間長情報が含まれるように構成されている
ことを特徴とする記憶媒体。
【請求項１４】
前記多重化データは、前記組をそれぞれ有する第１及び第２の領域から構成され、
前記総時間長情報は、前記第１の領域に含まれるコンテンツの再生に要する時間長を示す内容の第１の時間長情報と、前記第２の領域に含まれるコンテンツの再生に要する時間長を示す内容の第２の時間長情報とから構成される
ことを特徴とする請求項１３記載の記憶媒体。
【請求項１５】
前記多重化データは、前記多重化データに含まれる前記コンテンツに応じて、第１の領域、又は前記組をそれぞれ有する第１及び第２の領域から構成され、
前記多重化データが第１の領域から構成されるときには、前記総時間長情報は、前記第１の領域に含まれるコンテンツの再生に要する時間長を示し、
前記多重化データが第１及び第２の領域から構成されるときには、前記総時間長情報は、前記第１の領域に含まれるコンテンツの再生に要する時間長を示す内容の第１の時間長情報と、前記第２の領域に含まれるコンテンツの再生に要する時間長を示す内容の第２の時間長情報とから構成される
ことを特徴とする請求項１３記載の記憶媒体。
【請求項１６】
前記多重化データは、前記多重化データに含まれる前記コンテンツに応じて、第１の領域、又は前記組をそれぞれ有する第１及び第２の領域から構成され、
前記多重化データが第１の領域から構成されるときには、前記総時間長情報は、前記第１の領域に含まれるコンテンツの再生に要する時間長を示し、
前記多重化データが第１及び第２の領域から構成されるときには、前記総時間長情報は、前記第１の領域に含まれるコンテンツの再生に要する時間長を示す内容の第１の時間長情報と、前記第２の領域に含まれるコンテンツの再生に要する時間長、又は前記時間長が不明であることを示す内容の第２の時間長情報とから構成される
ことを特徴とする請求項１３記載の記憶媒体。
【請求項１７】
前記多重化データの先頭部には、
前記多重化データが第１及び第２の領域から構成されているか否かを示す領域特定情報が含められている
ことを特徴とする請求項１６記載の記憶媒体。
【請求項１８】
前記総時間長情報は、前記全てのコンテンツの再生に要する総時間長、又は前記総時間長が不明であることを示す
ことを特徴とする請求項１３記載の記憶媒体。
【請求項１９】
デジタル著作物であるコンテンツを多重化して多重化データを生成する多重化装置であって、
前記コンテンツを取得する取得手段と、
前記コンテンツを多重化する多重化手段と、
前記取得手段により取得されたコンテンツに基づき、前記コンテンツの再生に要する総時間長を特定するための総時間長情報を生成する時間長情報生成手段と、
前記多重化手段により多重化されたコンテンツの一部を格納するコンテンツ格納ボックスと前記一部のコンテンツに関連する関連情報を格納する関連情報格納ボックスとの組が複数連なるように、さらに、前記総時間長情報生成手段により生成された総時間長情報が先頭部に含められるように、前記多重化データを生成するデータ生成手段
とを備えることを特徴とする多重化装置。
【請求項２０】
前記データ生成手段は、
前記組をそれぞれ有する第１及び第２の領域から前記多重化データを構成し、
前記時間長情報生成手段は、
前記総時間長情報を、前記第１の領域に含まれるコンテンツの再生に要する時間長を示す内容の第１の時間長情報と、前記第２の領域に含まれるコンテンツの再生に要する時間長を示す内容の第２の時間長情報とから構成する
ことを特徴とする請求項１９記載の多重化装置。
【請求項２１】
前記データ生成手段は、
前記多重化データを、前記多重化データに含まれる前記コンテンツに応じて、第１の領域、又は前記組をそれぞれ有する第１及び第２の領域から構成し、
前記時間長情報生成手段は、
前記多重化データが第１の領域から構成されるときには、前記総時間長情報を、前記第１の領域に含まれるコンテンツの再生に要する時間長を示す内容として生成し、
前記多重化データが第１及び第２の領域から構成されるときには、前記総時間長情報を、前記第１の領域に含まれるコンテンツの再生に要する時間長を示す内容の第１の時間長情報と、前記第２の領域に含まれるコンテンツの再生に要する時間長を示す内容の第２の時間長情報とから構成する
ことを特徴とする請求項１９記載の多重化装置。
【請求項２２】
前記データ生成手段は、
前記多重化データを、前記多重化データに含まれる前記コンテンツに応じて、第１の領域、又は前記組をそれぞれ有する第１及び第２の領域から構成し、
前記時間長情報生成手段は、
前記多重化データが第１の領域から構成されるときには、前記総時間長情報を、前記第１の領域に含まれるコンテンツの再生に要する時間長を示す内容として生成し、
前記多重化データが第１及び第２の領域から構成されるときには、前記総時間長情報を、前記第１の領域に含まれるコンテンツの再生に要する時間長を示す内容の第１の時間長情報と、前記第２の領域に含まれるコンテンツの再生に要する時間長、又は前記時間長が不明であることを示す内容の第２の時間長情報とから構成する
ことを特徴とする請求項１９記載の多重化装置。
【請求項２３】
前記データ生成手段は、
前記多重化データが第１及び第２の領域から構成されているか否かを示す領域特定情報を先頭部に含めて前記多重化データを生成する
ことを特徴とする請求項２２記載の多重化装置。
【請求項２４】
前記時間長情報生成手段は、
前記全てのコンテンツの再生に要する総時間長、又は前記総時間長が不明であることを示す内容の前記総時間長情報を生成する
ことを特徴とする請求項１９記載の多重化装置。
【請求項２５】
デジタル著作物であるコンテンツが多重化された多重化データを、その先頭部から取得して逆多重化する逆多重化方法であって、
前記多重化データは、多重化されたコンテンツの一部を格納するコンテンツ格納ボックスと前記一部のコンテンツに関連する関連情報を格納する関連情報格納ボックスとの組が複数連なるとともに、前記全てのコンテンツの再生に要する総時間長を特定するための総時間長情報が前記先頭部に含まれるように構成されており、
前記逆多重化方法は、
前記多重化データを取得する取得ステップと、
前記取得ステップで取得された前記多重化データを前記各組ごとに逆多重化処理する処理ステップと、
前記取得ステップで取得された前記多重化データの先頭部に含まれる総時間長情報に基づいて、前記総時間長を特定する総時間長特定ステップと、
前記総時間長特定ステップにより特定された総時間長を表示する表示ステップと
を含むことを特徴とする逆多重化方法。
【請求項２６】
前記多重化データは、前記組をそれぞれ有する第１及び第２の領域から構成され、
前記総時間長情報は、前記第１の領域に含まれるコンテンツの再生に要する時間長を示す内容の第１の時間長情報と、前記第２の領域に含まれるコンテンツの再生に要する時間長を示す内容の第２の時間長情報とから構成されており、
前記総時間長特定ステップでは、
前記第１の時間長情報により示される時間長と、前記第２の時間長情報により示される時間長とを足し合わせることで、前記総時間長を特定する
ことを特徴とする請求項２５記載の逆多重化方法。
【請求項２７】
デジタル著作物であるコンテンツを多重化して多重化データを生成する多重化方法であって、
前記コンテンツを取得する取得ステップと、
前記コンテンツを多重化する多重化ステップと、
前記取得ステップで取得されたコンテンツに基づき、前記コンテンツの再生に要する総時間長を特定するための総時間長情報を生成する時間長情報生成ステップと、
前記多重化ステップで多重化されたコンテンツの一部を格納するコンテンツ格納ボックスと前記一部のコンテンツに関連する関連情報を格納する関連情報格納ボックスとの組が複数連なるように、さらに、前記総時間長情報生成ステップで生成された総時間長情報が先頭部に含められるように、前記多重化データを生成するデータ生成ステップ
とを含むことを特徴とする多重化方法。
【請求項２８】
前記データ生成ステップでは、
前記組をそれぞれ有する第１及び第２の領域から前記多重化データを構成し、
前記時間長情報生成ステップでは、
前記総時間長情報を、前記第１の領域に含まれるコンテンツの再生に要する時間長を示す内容の第１の時間長情報と、前記第２の領域に含まれるコンテンツの再生に要する時間長を示す内容の第２の時間長情報とから構成する
ことを特徴とする請求項２７記載の多重化方法。
【請求項２９】
デジタル著作物であるコンテンツが多重化された多重化データを、その先頭部から取得して逆多重化する逆多重化方法をコンピュータに実行させるプログラムであって、
前記多重化データは、多重化されたコンテンツの一部を格納するコンテンツ格納ボックスと前記一部のコンテンツに関連する関連情報を格納する関連情報格納ボックスとの組が複数連なるとともに、前記全てのコンテンツの再生に要する総時間長を特定するための総時間長情報が前記先頭部に含まれるように構成されており、
前記プログラムは、
前記多重化データを取得する取得ステップと、
前記取得ステップで取得された前記多重化データを前記各組ごとに逆多重化処理する処理ステップと、
前記取得ステップで取得された前記多重化データの先頭部に含まれる総時間長情報に基づいて、前記総時間長を特定する総時間長特定ステップと、
前記総時間長特定ステップにより特定された総時間長を表示する表示ステップと
を含むことを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像データや音楽データ等のマルチメディアデータが多重化された多重化データを逆多重化する逆多重化装置、及びマルチメディアデータを多重化する多重化装置に関する。
【０００２】
【従来の技術】
近年、マルチメディアデータ（動画像、音声、テキスト、あるいは、静止画等のコンテンツ）を多重化して格納するファイルフォーマットとしてＭＰ４が注目されている。
【０００３】
ＭＰ４は、動画像の圧縮符号化方式であるＭＰＥＧ−４や、自然画像の圧縮符号化方式であるＪＰＥＧの次世代バージョンＪＰＥＧ２０００のファイルフォーマットとして採用されるなど、その応用範囲が広がっている。
【０００４】
当初、このＭＰ４のファイルフォーマットは、多重化されたコンテンツが格納される１つのデータボックスと、そのデータ領域のコンテンツに関連する情報が格納される１つのヘッダボックスとから構成されていた。
【０００５】
したがって、マルチメディアデータからＭＰ４ファイルデータを生成する多重化装置は、マルチメディアデータを取得して符号化及び多重化処理を行い、全てのマルチメディアデータに対する処理が終了した後に、そのヘッダボックスを作成し、ＭＰ４ファイルデータを完成させていた。
【０００６】
このような多重化装置では、マルチメディアデータの情報量が多い場合には、マルチメディアデータの取得及びこれに対する処理の終了後、そのヘッダボックスの作成のためにしばらくの時間を要する。
【０００７】
例えば、録画機能付き携帯電話として構成された多重化装置では、録画中に着信があったときには、これまで録画したコンテンツの全体に関連する情報を含めたヘッダボックスを作成するために、着信にタイムラグが生じる。また、着信を優先するような場合には、ヘッダボックスの作成が途中で中断され、ＭＰ４ファイルデータを完成することができないといった問題があった。
【０００８】
そこで、ＭＰ４のファイルフォーマットは、データボックスとヘッダボックスとの組が複数連なるように改良された（例えば、非特許文献１参照。）。
【０００９】
図２１は、上述のように改良された従来のＭＰ４ファイルデータの基本的なファイルフォーマットを示すデータ構成図である。
【００１０】
このＭＰ４ファイルデータ９００は、基本領域９００ａと拡張領域９００ｂから構成される。
【００１１】
基本領域９００ａは、上記ヘッダボックスたるムービーボックス（以下、「ｍｏｏｖ」と称す）９１０と、上記データボックスたるメディアデータボックス（以下、「ｍｄａｔ」と称す）９２０とからなる。
【００１２】
ｍｏｏｖ９１０は、さらに、１つのムービーヘッダーボックス（以下「ｍｖｈｄ」と称す）９１１と、複数のトラックボックス（以下「ｔｒａｋ」と称す）９１２と、１つのムービーエクステンドボックス（以下「ｍｖｅｘ」と称す）９１３とから構成される。
【００１３】
拡張領域９００ｂは、上記ヘッダボックスたる１つのムービーフラグメントボックス（以下「ｍｏｏｆ」と称す）９３０と、上記データボックスたる１つのメディアデータボックス（以下、「ｍｄａｔ」と称す）９４０との組が複数連なるように組み合わされて構成される。
【００１４】
ｍｏｏｆ９３０は、さらに、１つのムービーフラグメントヘッダーボックス（以下「ｍｆｈｄ」と称す）９３１と、複数のトラックフラグメントボックス（以下「ｔｒａｆ」と称す）９３２とから構成される。
【００１５】
図２２は、ｍｏｏｖ９１０の詳細な構成を示すデータ構成図である。
ｍｖｈｄ９１１には、基本領域９００ａに含まれるコンテンツの再生に要する時間長（基本コンテンツ時間長）を示す基本コンテンツ時間長情報を格納するムービー時間長フィールド９１１ａが含まれている。
【００１６】
ｔｒａｋ９１２には、さらに、トラックヘッダーボックス（以下「ｔｋｈｄ」と称す）９１４が含まれ、このｔｋｈｄ９１４には、トラックを識別するためのトラック識別情報を格納するトラックＩＤフィールド９１６と、トラック時間長フィールド９１７とが含まれている。また、このトラック時間長フィールド９１７には、上記トラック識別情報により示される基本領域９００ａに含まれたトラックの再生に要する時間長（基本トラック時間長）を示す基本トラック時間長情報が格納される。
【００１７】
ここでトラックとは、コンテンツの一種であって、動画像や音声やテキストなどを意味する。
【００１８】
ｍｖｅｘ９１３には、拡張領域９００ｂに含まれるトラックの数に応じた数のトラックエクステンドボックス（以下「ｔｒｅｘ」と称す）９１５が含まれる。
【００１９】
このｔｒｅｘ９１５には、トラックを識別するためのトラック識別情報を格納するトラックＩＤフィールド９１８と、そのトラック識別情報により特定される拡張領域９００ｂのトラックのサンプルに対し、デフォルトで設定された時間長を示すデフォルトサンプル時間長情報が格納される第１デフォルト時間長フィールド９１９とが含まれている。
【００２０】
ここで、サンプルとは、ＭＰ４のファイルフォーマットの最小単位であって、トラックが動画像であれば１フレームやピクチャを意味し、トラックが音声ならば例えば２０（ｍｓｅｃ）分の音情報を意味する。
【００２１】
図２３は、ｍｏｏｆ９３０の詳細な構成を示すデータ構成図である。
ｍｏｏｆ９３０に含まれるｔｒａｆ９３２には、さらに、１つのトラックフラグメントヘッダーボックス（以下「ｔｆｈｄ」と称す）９３３と、複数のトラックフラグメントランボックス（以下「ｔｒｕｎ」と称す）９３６とが含まれている。
【００２２】
このｔｆｈｄ９３３には、トラックを識別するためのトラック識別情報を格納するトラックＩＤフィールド９３４と、そのトラック識別情報により特定される拡張領域９００ｂのトラックのサンプルのなかで、ｔｆｈｄ９３３を格納しているｔｒａｆ９３２に関連づけられたサンプルに対し、デフォルトで設定された時間長を示すデフォルトサンプル時間長情報が格納される第２デフォルト時間長フィールド９３５とが含まれている。ここで、第２デフォルト時間長フィールド９３５は省略することも可能であり、この場合は、第１デフォルト時間長フィールド９１９が参照される。
【００２３】
ｔｒｕｎ９３６には、上記トラック識別情報により特定される拡張領域９００ｂのトラックに含まれる各サンプルの時間長（サンプル時間長）を示すサンプル時間長情報を格納するサンプル時間長フィールド９３７が含まれている。
【００２４】
このように、ＭＰ４のファイルフォーマットが、ｍｄａｔ９２０及びｍｏｏｖ９１０を一組含み、さらにｍｄａｔ９４０及びｍｏｏｆ９３０を複数組含むように、つまり、多重化されたコンテンツを格納するボックスと、そのボックスに含まれる内容に関連する情報を格納するボックスとの組が複数連なるように構成されたことで、従来の多重化装置は、マルチメディアデータを逐次取得して処理するごとにＭＰ４ファイルデータ９００を完成させ、リアルタイム記録において効力を発揮している。そして、録画機能付き携帯電話として構成された従来の多重化装置では、録画中でも着信のタイムラグの発生を防ぐことができる。
【００２５】
図２４は、上記ＭＰ４ファイルデータ９００を生成する従来の多重化装置の構成を示す構成図である。
【００２６】
この多重化装置７００は、画像データ解析部７０１と、音声データ解析部７０２と、第１切換スイッチ７０３と、第２切換スイッチ７０４と、制御部７０８と、ｍｏｏｆ生成部７０５と、ｍｏｏｖ生成部７０６と、ファイル生成部７０７とを備えている。
【００２７】
画像データ解析部７０１は、画像データを取得してこれを解析することで、その画像データのタイムスタンプやサイズなどを示す内容の画像特定情報を生成する。そして、画像データ解析部７０１は、画像データを符号化して画像符号化データを作成し、その画像符号化データと画像特定情報とを出力する。
【００２８】
音声データ解析部７０２は、音声データを取得してこれを解析することで、その音声データのタイムスタンプやサイズなどを示す内容の音声特定情報を生成する。そして、音声データ解析部７０２は、音声データを符号化して音声符号化データを作成し、その音声符号化データと音声特定情報とを出力する。
【００２９】
ｍｏｏｖ生成部７０６は、制御部７０８からの制御に応じて、ｍｏｏｖ９１０に格納されるデータ（ｍｏｏｖデータ）を生成して出力する。
【００３０】
ｍｏｏｆ出力部７０５は、制御部７０８からの制御に応じて、ｍｏｏｆ９３０に格納されるデータ（ｍｏｏｆデータ）を生成して出力する。
【００３１】
制御部７０８は、画像データ解析部７０１から画像特定情報を取得するとともに、音声データ解析部７０２から音声特定情報を取得し、その画像特定情報及び音声特定情報に基づいて、第１切換スイッチ７０３及び第２切換スイッチ７０４を切り換えることで、第２切換スイッチ７０４からまずｍｏｏｖデータを含む基本領域９００ａに格納されるべきデータを出力させ、次にｍｏｏｆデータを含む拡張領域９００ｂに格納されるべきデータを出力させる。
【００３２】
ファイル生成部７０７は、第２切換スイッチ７０４から出力される各データに対して多重化処理を行ってＭＰ４ファイルデータ９００を生成し、これを出力する。
【００３３】
図２５は、従来の多重化装置７００のｍｏｏｖデータ及びｍｏｏｆデータの生成に関する動作を示すフロー図である。
【００３４】
まず、多重化装置７００は、ｍｏｏｖデータを生成する（ステップＳ１００）。
次に、多重化装置７００は、ｍｏｏｆデータを作成する（ステップＳ１０２）。
【００３５】
そして、多重化装置７００は、入力された画像データや音声データの符号化及び多重化に対して未処理のデータがあるか否かを判別する（ステップＳ１０４）。ここで、未処理のデータがあると判別したときには（ステップＳ１０４のＹ）、ステップＳ１０２からの動作を繰り返し実行し、未処理のデータがないと判別したときには（ステップＳ１０４のＮ）、処理を終了する。
【００３６】
このように、ＭＰ４ファイルデータ９００を用いた従来の多重化装置７００では、順次ｍｏｏｆデータを作成するため、リアルタイム記録に有効である。
【００３７】
ところで、上記ＭＰ４ファイルデータ９００は、図２１〜図２３に示すように、データボックスとヘッダボックスとの組が複数連なるように構成されていることにより、ストリーミングに適している。つまり、ＭＰ４ファイルデータ９００を取得して逆多重化処理を行うことによりコンテンツを再生する逆多重化装置は、ストリームとして配信されるＭＰ４ファイルデータ９００の全てのダウンロードを完了する前から順次再生（ダウンロード再生）することができる。
【００３８】
図２６は、上記ＭＰ４ファイルデータ９００に基づいてコンテンツの再生を行う従来の逆多重化装置の構成を示す構成図である。
【００３９】
この逆多重化装置８００は、ＭＰ４ファイルデータ９００を取得して再生するものであって、ＭＰ４ファイルデータ９００を取得するデータ取得部８１０と、そのデータ取得部８１０で取得されたＭＰ４ファイルデータ９００を逆多重化して復号化する復号部８１３と、取得されたＭＰ４ファイルデータ９００に基づいて時間的な処理を行う時間処理部８１１と、取得されたＭＰ４ファイルデータ９００に対してランダムアクセスするための処理を行うランダムアクセス処理部８１２と、復号部８１３から出力されたデータに基づいて画像や音声を出力する再生部８１４とを備えている。
【００４０】
また時間処理部８１１は、ＭＰ４ファイルデータ９００に含まれる一部のコンテンツの再生に要する時間長を特定する時間長特定部８１１ａと、再生時間を特定する再生時間特定部８１１ｂとを備えている。ここで、再生時間とは、コンテンツを最初から再生したときに、その再生開始時点から現時点に至るまでの再生にかかった時間をいう。
【００４１】
図２７は、時間長特定部８１１ａの内部構成を示すブロック図である。
時間長特定部８１１ａは、第１分離部８２１と、第２分離部８２２と、第３分離部８２３と、第１解析部８２４と、第２解析部８２５とを備えている。
【００４２】
第１分離部８２１は、ＭＰ４ファイルデータ９００を取得すると、そのＭＰ４ファイルデータ９００からｍｏｏｖデータを分離して出力する。
【００４３】
第２分離部８２２は、ｍｏｏｖデータを取得すると、そのｍｏｏｖデータから、ｍｖｈｄ９１１に格納されているデータ（ｍｖｈｄデータ）と、ｔｒａｋ９１２に格納されているデータ（ｔｒａｋデータ）とを分離して出力する。
【００４４】
第３分離部８２３は、ｔｒａｋデータを取得すると、そのｔｒａｋデータから、ｔｋｈｄ９１４に格納されているデータ（ｔｋｈｄデータ）を分離して出力する。
【００４５】
第１解析部８２４は、第２分離部８２２からｍｖｈｄデータを取得すると、そのｍｖｈｄデータを解析して、そのムービー時間長フィールド９１１ａに格納されている基本コンテンツ時間長情報を出力する。
【００４６】
第２解析部８２５は、第３分離部８２３からｔｋｈｄデータを取得すると、そのｔｋｈｄデータを解析して、トラックＩＤフィールド９１６に格納されているトラック識別情報を出力するとともに、そのトラック識別情報に対応してトラック時間長フィールド９１７に格納されている基本トラック時間長情報を出力する。
【００４７】
このような時間長特定部８１１ａは、基本コンテンツ時間長情報を再生部８１４に出力するとともに、トラック識別情報と、そのトラック識別情報により示される基本領域９００ａのトラックに対応する基本トラック時間長情報とを、再生部８１４に出力する。
【００４８】
そして、再生部８１４は、基本コンテンツ時間長情報及びトラック時間長情報並びにトラック識別情報を取得すると、必要に応じて、基本コンテンツ時間長を表示したり、基本トラック時間長をトラックごとに表示したりする。また、再生部８１４は、再生時間特定部８１１ｂによる特定結果に基づいて、画像や音声の再生を行いながらその再生時間を表示する。
【００４９】
図２８は、ランダムアクセス処理部８１２の構成を示す構成図である。
ランダムアクセス処理部８１２は、外部から目標時間を示す内容の目標時間情報を取得すると、蓄積されたＭＰ４ファイルデータ９００の中から、その目標時間に対応するサンプルを目的サンプルとして検索するものであって、データ蓄積部８３０ａと、第１分離部８３０と、第２分離部８３１と、第３分離部８３２と、第４分離部８３５と、第５分離部８３４と、第１解析部８３６と、第２解析部８３７と、第３解析部８３８と、トラック制御部８３３と、決定部８３９と、制御部８４０とを備えている。ここで、目標時間とは、ユーザがコンテンツを途中から再生しようとするときの途中再生開始時間をいう。例えば、ユーザが総時間長１０分のコンテンツをその先頭の２分間を見ずに再生しようとする場合には、目標時間は２分である。　データ蓄積部８３０ａは、データ取得部８１０で取得されたＭＰ４ファイルデータ９００を蓄積している。
【００５０】
第１分離部８３０は、データ蓄積部８３０ａからＭＰ４ファイルデータ９００を取得すると、そのＭＰ４ファイルデータ９００から、ｍｏｏｖデータとｍｏｏｆデータとを分離して出力する。
【００５１】
第３分離部８３２は、ｍｏｏｖデータを取得すると、そのｍｏｏｖデータから、ｍｖｅｘ９１３に格納されているデータ（ｍｖｅｘデータ）を分離して出力する。
【００５２】
トラック制御部８３３は、第１分離部８３０からｍｏｏｖデータを取得すると、そのｍｏｏｖデータに基づいて、トラック識別情報を出力する。
【００５３】
第２分離部８３１は、第１分離部８３０からｍｏｏｆデータを取得し、トラック制御部８３３からトラック識別情報を取得すると、そのｍｏｏｆデータから、トラック識別情報により特定されるトラックに対応するｔｒａｆ９３２に格納されているデータ（ｔｒａｆデータ）を分離して出力する。
【００５４】
第４分離部８３５は、第２分離部８３１からｔｒａｆデータを取得すると、そのｔｒａｆデータから、ｔｆｈｄ９３３に格納されているデータ（ｔｆｈｄデータ）と、ｔｒｕｎ９３６に格納されているデータ（ｔｒｕｎデータ）とを分離して出力する。
【００５５】
第５分離部８３４は、第３分離部８３２からｍｖｅｘデータを取得し、トラック制御部８３３からトラック識別情報を取得すると、そのｍｖｅｘデータから、トラック識別情報により特定されるトラックに対応するｔｒｅｘ９１５に格納されているデータ（ｔｒｅｘデータ）を分離して出力する。
【００５６】
第１解析部８３６は、第５分離部８３４からｔｒｅｘデータを取得すると、そのｔｒｅｘデータを解析して、ｔｒｅｘデータに含まれるデフォルトサンプル時間長情報を、第１時間長情報として出力する。
【００５７】
第２解析部８３７は、第４分離部８３５からｔｆｈｄデータを取得すると、そのｔｆｈｄデータを解析して、ｔｆｈｄデータに含まれるサンプル時間長情報を、第２時間長情報として出力する。
【００５８】
第３解析部８３８は、第４分離部８３５からｔｒｕｎデータを取得すると、そのｔｒｕｎデータを解析して、ｔｒｕｎデータに含まれるサンプル時間長情報を、第３時間長情報として出力する。
【００５９】
決定部８３９は、第１解析部８３６から取得した第１時間長情報と、第２解析部８３７から取得した第２時間長情報と、第３解析部８３８から取得した第３時間長情報とから、何れか１つを選択決定して、これを時間長情報として出力する。ここで決定部８３９は、まず、第３時間長情報を優先し、第３時間長情報が省略されていて得られない場合には、第２時間長情報を優先し、第２時間長情報が省略されていて得られない場合には、第１時間長情報を選択して出力する。
【００６０】
また、決定部８３９は、時間長情報を出力するときには、その時間長情報に対応したサンプルを識別するためのサンプル識別情報も出力する。
【００６１】
制御部８４０は、目標時間を示す目標時間情報を取得すると、決定部８３９から逐次出力される時間長情報に示される時間長を順次加算する。そして制御部８４０は、加算結果が目標時間情報に示される目標時間に達するまで上記加算を行い、目標時間に達したときに決定部８３９から取得されたサンプル識別情報を、目的サンプル識別情報として出力する。
【００６２】
図２９は、トラック制御部８３３の内部構成を示すブロック図である。
トラック制御部８３３は、ｍｏｏｖデータを取得してそこからｔｒａｋデータを分離する第６分離部８４１と、そのｔｒａｋデータを取得してそこからさらにｔｋｈｄデータを分離する第７分離部８４２と、そのｔｋｈｄデータを解析することでトラック識別情報を特定してこれを出力する解析部８４３とを備えている。
【００６３】
図３０は、ランダムアクセス処理部８１２の概略的な動作を説明するための説明図である。
【００６４】
この図３０に示すように、従来のランダムアクセス処理部８１２は、サンプル時間長を順次加算していくことで目標時間に対応する目的サンプルを特定する。
【００６５】
そして、ランダムアクセス処理部８１２は、ＭＰ４ファイルデータ９００と目的サンプル識別情報とを復号部８１３に出力して、その目的サンプル識別情報により示される目的サンプルからのコンテンツの再生を復号部８１３及び再生部８１４に実行させる。
【００６６】
このような従来の逆多重化装置８００は、ストリームとして配信されるＭＰ４ファイルデータ９００を取得すると、これに基づいてダウンロード再生することができるとともに、ランダムアクセス処理部８１２を備えることにより、蓄積された全てのＭＰ４ファイルデータ９００に対してランダムアクセスを可能としている。
【００６７】
【非特許文献１】
「ＩＮＴＥＲＮＡＴＩＯＮＡＬ　ＯＲＧＡＮＩＳＡＴＩＯＮ　ＦＯＲ　ＳＴＡＮＤＡＲＤＩＳＡＴＩＯＮ　　ＯＲＧＡＮＩＳＡＴＩＯＮＩＮＴＥＲＮＡＴＩＯＮＡＬＥ　ＤＥ　ＮＯＲＭＡＬＩＳＡＴＩＯＮ　　ＩＳＯ／ＩＥＣ　ＪＴＣ１／ＳＣ２９／ＷＧ１１　　ＣＯＤＩＮＧ　ＯＦ　ＭＯＶＩＮＧ　ＰＩＣＴＵＲＥＳ　ＡＮＤ　ＡＵＤＩＯ」，ＩＳＯ／ＩＥＣ　ＪＴＣ１／ＳＣ２９／ＷＧ１１，ＭＰＥＧ０１／Ｎ４２７０−１，　２００１．１．２０
【００６８】
【発明が解決しようとする課題】
しかしながら、上記従来の逆多重化装置８００では、ＭＰ４ファイルデータ９００をダウンロード再生するときには、基本領域９００ａに含まれるコンテンツの再生に要する時間長を表示することができても、拡張領域９００ｂを含む全体のコンテンツの総時間長を表示することができず、使い勝手が悪いという問題があった。
【００６９】
図３１は、従来の逆多重化装置８００での問題点を説明するための説明図である。
【００７０】
携帯電話として構成された逆多重化装置８００は、基地局９９０を介してストリームとして配信されるＭＰ４ファイルデータ９００をダウンロードし、そのダウンロードされたＭＰ４ファイルデータ９００を順次再生する。このとき、逆多重化装置８００は、再生時間を表示するものの、全てのＭＰ４ファイルデータ９００を取得した後でなければ、全てのコンテンツを再生に要する時間長を特定することができず、その結果、ダウンロード中又は再生中にコンテンツの総時間長を表示することができない。例えば、利用時間に応じて課金される料金体系では、逆多重化装置８００のユーザは、利用料金の目安がわからないといった不安や、バッテリーの残り容量が少ない場合などには、途中で電源が切れてしまうかもしれないといった不安などを感じることがある。このように、従来の逆多重化装置８００では、ユーザがコンテンツの総時間長を知ることができず、利便性に欠けるのである。
【００７１】
そこで、本発明は、かかる問題点に鑑み、ダウンロード再生及びリアルタイム記録の有効性を保持しつつコンテンツのダウンロード再生時の利便性を向上した逆多重化装置及び多重化装置を提供することを目的とする。
【００７２】
【課題を解決するための手段】
上記目的を達成するために、本発明に係る逆多重化装置は、デジタル著作物であるコンテンツが多重化された多重化データを、その先頭部から取得して逆多重化する逆多重化装置であって、前記多重化データは、多重化されたコンテンツの一部を格納するコンテンツ格納ボックスと前記一部のコンテンツに関連する関連情報を格納する関連情報格納ボックスとの組が複数連なるとともに、前記全てのコンテンツの再生に要する総時間長を特定するための総時間長情報が前記先頭部に含まれるように構成されており、前記逆多重化装置は、前記多重化データを取得する取得手段と、前記取得手段により取得された前記多重化データを前記各組ごとに逆多重化処理する処理手段と、前記取得手段により取得された前記多重化データの先頭部に含まれる総時間長情報に基づいて、前記総時間長を特定する総時間長特定手段と、前記総時間長特定手段により特定された総時間長を表示する表示手段とを備える。ここで、前記多重化データは、前記組をそれぞれ有する第１及び第２の領域から構成され、前記総時間長情報は、前記第１の領域に含まれるコンテンツの再生に要する時間長を示す内容の第１の時間長情報と、前記第２の領域に含まれるコンテンツの再生に要する時間長を示す内容の第２の時間長情報とから構成されており、前記総時間長特定手段は、前記第１の時間長情報により示される時間長と、前記第２の時間長情報により示される時間長とを足し合わせることで、前記総時間長を特定することを特徴としても良い。
【００７３】
これにより、処理手段で多重化データが各組ごとに逆多重化処理されるため、ストリームとして配信される多重化データからコンテンツをダウンロード再生することができるとともに、多重化データの先端部に含まれる総時間長情報に基づいて総時間長が総時間長特定手段で特定されてその総時間長が表示手段により表示されるため、ダウンロード再生中にでも総時間長をユーザに知らせることができ、コンテンツのダウンロード再生時の利便性を向上することができる。
【００７４】
また、前記多重化データは、そこに含まれる前記コンテンツに応じて、第１の領域、又は前記組をそれぞれ有する第１及び第２の領域から構成され、前記多重化データが第１の領域から構成されるときには、前記総時間長情報は、前記第１の領域に含まれるコンテンツの再生に要する時間長を示し、前記多重化データが第１及び第２の領域から構成されるときには、前記総時間長情報は、前記第１の領域に含まれるコンテンツの再生に要する時間長を示す内容の第１の時間長情報と、前記第２の領域に含まれるコンテンツの再生に要する時間長、又は前記時間長が不明であることを示す内容の第２の時間長情報とから構成されており、前記総時間長特定手段は、前記取得手段で取得された前記多重化データが、第１の領域から構成されているか、第１及び第２の領域から構成されているかを判別し、第１の領域から構成されていると判別したときには、前記総時間長情報により示される時間長を前記総時間長として特定し、第１及び第２の領域から構成されていると判別したときには、さらに、前記第２の時間長情報に基づいて、前記第２の領域に含まれるコンテンツの再生に要する時間長が不明であるか否かを判別し、不明でないと判別したときには、前記第１の時間長情報により示される時間長と、前記第２の時間長情報により示される時間長とを足し合わせることで、前記総時間長を特定し、不明であると判別したときには、前記総時間長を特定することができないと判別し、前記表示手段は、前記総時間長特定手段で前記総時間長が特定できないと判別されたときには、前記総時間長が不明であることを報知することを特徴としても良い。
【００７５】
これにより、多重化データに第２の領域がなければ、第１の領域に含まれるコンテンツの再生に要する時間長が、総時間長として特定され、多重化データが第１及び第２の領域から構成されているときには、第１及び第２の領域に含まれるコンテンツの再生に要する時間長が加算されて、その加算結果が総時間長として特定されるために、総時間長を的確に特定することができるとともに、多重化データに含まれる第２の時間長情報に基づいて、第２の領域に含まれるコンテンツの再生に要する時間長が不明であるか否かが判別され、不明であるときにはその旨が報知されるため、信頼性のある総時間長のみをユーザに知らせることができる。
【００７６】
また、前記逆多重化装置は、さらに、前記処理手段により逆多重化処理されたコンテンツを再生する再生手段と、前記再生手段により前記コンテンツが再生されている再生時間を特定する再生時間特定手段とを備え、前記表示手段は、前記総時間長特定手段により特定された前記総時間長に対する、前記再生時間特定手段により特定された再生時間の割合を算出し、所定の図形を前記割合に応じて移動させて表示することを特徴としても良い。
【００７７】
これにより、総時間長に対する再生時間の割合に応じて上記図形が移動するため、ユーザはコンテンツの再生状況を容易に把握することができる。
【００７８】
なお、本発明は、上記逆多重化装置が取り扱う多重化データのデータ構造や、その多重化データを格納する記憶媒体や、その多重化データを生成する多重化装置や、上記逆多重化装置及び多重化装置が行う逆多重化方法及び多重化方法や、その方法をコンピュータに実行させるプログラムとしても実現することができる。
【００７９】
【発明の実施の形態】
以下、本発明の実施の形態における逆多重化装置及び多重化装置について図面を参照しながら説明する。
【００８０】
図１は、本実施の形態における逆多重化装置及び多重化装置が扱うＭＰ４ファイルデータのファイルフォーマットを示すデータ構成図である。
【００８１】
このＭＰ４ファイルデータ１００は、基本領域１００ａと拡張領域１００ｂから構成され、そのデータ１００に含まれるコンテンツの総時間長を示す内容の情報が基本領域１００ａに格納されている点に特徴がある。この情報があることで、逆多重化装置においてユーザは総時間長を知ることができ、利便性が向上する。また、リアルタイムに記録する多重化装置などで、この情報を付与するのが困難な装置は、その情報の付与を省略可能としてもよい。
【００８２】
基本領域１００ａは、多重化されたコンテンツが格納されるメディアデータボックス（以下、「ｍｄａｔ」と称す）１２０と、そのｍｄａｔ１２０のコンテンツに関連する情報が格納されるムービーボックス（以下、「ｍｏｏｖ」と称す）１１０とからなる。
【００８３】
ｍｏｏｖ１１０は、さらに、１つのムービーヘッダーボックス（以下「ｍｖｈｄ」と称す）１１１と、複数のトラックボックス（以下「ｔｒａｋ」と称す）１１２と、１つのムービーエクステンドボックス（以下「ｍｖｅｘ」と称す）１１３とから構成される。
【００８４】
拡張領域１００ｂは、多重化されたコンテンツが格納される１つのメディアデータボックス（以下、「ｍｄａｔ」と称す）１４０と、そのｍｄａｔ１４０のコンテンツに関連する情報が格納される１つのムービーフラグメントボックス（以下「ｍｏｏｆ」と称す）１３０との組が複数連なるように組み合わされて構成される。ここで、ｍｏｏｆ１３０は従来例と同様、さらに、１つのムービーフラグメントヘッダーボックス（以下「ｍｆｈｄ」と称す）と、複数のトラックフラグメントボックス（以下「ｔｒａｆ」と称す）とから構成される。つまり、このような拡張領域１００ｂは、従来の拡張領域９００ｂと同様の構造を有する。
【００８５】
基本領域１００ａのｍｏｏｖ１１０におけるｍｖｈｄ１１１には、基本領域１００ａに含まれるコンテンツの再生に要する時間長（基本コンテンツ時間長）を示す内容の基本コンテンツ時間長情報を格納するムービー時間長フィールド１１１ａが含まれている。
【００８６】
ｔｒａｋ１１２には、トラックヘッダーボックス（以下「ｔｋｈｄ」と称す）１１４が含まれている。ここで、このｔｋｈｄ１１４には、トラックを識別するためのトラック識別情報を格納するトラックＩＤフィールド１１６と、そのトラック識別情報により示される基本領域１００ａのトラックを再生するのに要する時間長（基本トラック時間長）を示す基本トラック時間長情報を格納するトラック時間長フィールド１１７とが含まれている。
【００８７】
そして、ｍｖｅｘ１１３には、拡張領域１００ｂに含まれるトラックの数に応じた数のトラックエクステンドボックス（以下「ｔｒｅｘ」と称す）１１５が含まれるとともに、さらに、１つのムービーエクステンドヘッダーボックス（以下「ｍｈｅｘ」と称す）１１３ａが含まれている。
【００８８】
ｍｈｅｘ１１３ａには、拡張領域１００ｂに含まれるコンテンツの再生に要する時間長（拡張コンテンツ時間長）を示す内容の拡張コンテンツ時間長情報を格納するムービー時間長フィールド１１３ｂが含まれている。ここで、拡張コンテンツ時間長情報は、「０」を示す場合があり、この場合、その拡張コンテンツ時間長情報は、拡張コンテンツ時間長が不明であることを示している。
【００８９】
ｔｒｅｘ１１５には、拡張領域１００ｂのトラックを識別するためのトラック識別情報を格納するトラックＩＤフィールド１１８と、そのトラック識別情報により特定される拡張領域１００ｂのトラックのサンプルに対し、デフォルトで設定された時間長を示すデフォルトサンプル時間長情報が格納される第１デフォルト時間長フィールド１１９と、そのトラック識別情報により特定される拡張領域１００ｂのトラックの再生に要する時間長（拡張トラック時間長）を示す内容の拡張トラック時間長情報が格納されるトラック時間長フィールド１１５ａとが含まれている。
【００９０】
つまり、本実施の形態のＭＰ４ファイルデータ１００では、従来例と比べて、ｍｖｅｘ１１３に、拡張コンテンツ時間長情報が格納されるｍｈｅｘ１１３ａが含められ、さらに、ｍｖｅｘ１１３のｔｒｅｘ１１５に、拡張トラック時間長情報が格納されるトラック時間長フィールド１１５ａが含められている点に特徴がある。
【００９１】
なお、ＭＰ４ファイルデータ１００は、そこに含まれるコンテンツの情報量が少ないときには、基本領域１００ａのみから構成されることがあり、この場合には、ｍｏｏｖ１１０のｍｖｅｘ１１３が省かれた構成となる。　図２は、上記ＭＰ４ファイルデータ１００に基づいてコンテンツの再生を行う本実施の形態の逆多重化装置２００の構成を示す構成図である。
【００９２】
この逆多重化装置２００は、ＭＰ４ファイルデータ１００を取得して再生するものであって、ＭＰ４ファイルデータ１００を基本領域１００ａから順次取得するデータ取得部２１０と、そのデータ取得部２１０で取得されたＭＰ４ファイルデータ１００を、一組のｍｏｏｖ１１０及びｍｄａｔ１２０や一組のｍｏｏｆ１３０及びｍｄａｔ１４０ごとに順次逆多重化して復号化する復号部２１３と、データ取得部２１０で取得されたＭＰ４ファイルデータ１００に基づいて時間的な処理を行う時間処理部２１１と、取得されたＭＰ４ファイルデータ１００に対してランダムアクセスするための処理を行うランダムアクセス処理部２１２と、復号部２１３から出力されたデータに基づいて画像や音声を出力する再生部２１４とを備えている。
【００９３】
ランダムアクセス処理部２１２は、データ取得部２１０で取得されたＭＰ４ファイルデータ１００を全て蓄積しており、外部から目標時間を示す内容の目標時間情報を取得すると、その蓄積されたＭＰ４ファイルデータ１００の中から、その目標時間に対応するサンプルを目的サンプルとして検索し、その目的サンプルからのコンテンツの再生を復号部２１３及び再生部２１４に実行させる。
【００９４】
また、時間処理部２１１は、ＭＰ４ファイルデータ１００に基づいてそこに含まれる全てのコンテンツの再生に要する総時間長を特定するコンテンツ時間長特定部２１１ａと、ＭＰ４ファイルデータ１００に含まれる全てのトラックの再生に要する時間長をトラック毎に特定するトラック時間長特定部２１１ｂと、再生時間を特定する再生時間特定部２１１ｃとを備えている。
【００９５】
図３は、時間処理部２１１のコンテンツ時間長特定部２１１ａの内部構成を示すブロック図である。
【００９６】
コンテンツ時間長特定部２１１ａは、第１分離部２２１と、第２分離部２２２と、第３分離部２２４と、第１解析部２２３と、第２解析部２２５と、加算部２２６とを備えている。
【００９７】
第１分離部２２１は、ＭＰ４ファイルデータ１００を取得して、そのＭＰ４ファイルデータ１００からｍｏｏｖ１１０に格納されているデータ（ｍｏｏｖデータ）を分離して出力する。
【００９８】
第２分離部２２２は、ｍｏｏｖデータを取得すると、そのｍｏｏｖデータから、ｍｖｈｄ１１１に格納されているデータ（ｍｖｈｄデータ）と、ｍｖｅｘ１１３に格納されているデータ（ｍｖｅｘデータ）とを分離して出力する。
【００９９】
第３分離部２２４は、ｍｖｅｘデータを取得すると、そのｍｖｅｘデータから、ｍｈｅｘ１１３ａに格納されているデータ（ｍｈｅｘデータ）を分離して出力する。
【０１００】
第１解析部２２３は、第２分離部２２２からｍｖｈｄデータを取得すると、そのｍｖｈｄデータを解析して、そのムービー時間長フィールド１１１ａに格納されている基本コンテンツ時間長情報を出力する。
【０１０１】
第２解析部２２５は、第３分離部２２４からｍｈｅｘデータを取得すると、そのｍｈｅｘデータを解析して、そのムービー時間長フィールド１１３ｂに格納されている拡張コンテンツ時間長情報を出力する。
【０１０２】
加算部２２６は、第１解析部２２３及び第２解析部２２５から、基本コンテンツ時間長情報及び拡張コンテンツ時間長情報を取得すると、基本コンテンツ時間長情報により示される基本コンテンツ時間長と、拡張コンテンツ時間長情報により示される拡張コンテンツ時間長とを加算し、その加算された時間長（コンテンツ総時間長）を示すコンテンツ総時間長情報を出力する。また、加算部２２６は、拡張コンテンツ時間長情報が「０」を示しているときには、基本コンテンツ時間長情報をコンテンツ総時間長情報として出力する。
【０１０３】
このように、本実施の形態のコンテンツ時間長特定部２１１ａは、ＭＰ４ファイルデータ１００の基本領域１００ａ及び拡張領域１００ｂに含まれるコンテンツの総時間長を特定して、そのコンテンツ総時間長を示す内容のコンテンツ総時間長情報を出力する。
【０１０４】
図４は、時間処理部２１１のトラック時間長特定部２１１ｂの内部構成を示すブロック図である。
【０１０５】
トラック時間長特定部２１１ｂは、第１分離部２３１と、第２分離部２３２と、第３分離部２３３と、第４分離部２３５と、第１解析部２３４と、第２解析部２３６と、加算部２３７とを備えている。
【０１０６】
第１分離部２３１は、ＭＰ４ファイルデータ１００を取得して、そのＭＰ４ファイルデータ１００からｍｏｏｖデータを分離して出力する。
【０１０７】
第２分離部２３２は、ｍｏｏｖデータを取得すると、そのｍｏｏｖデータからｔｒａｋ１１２に格納されているデータ（ｔｒａｋデータ）と、ｍｖｅｘデータとを分離して出力する。
【０１０８】
第３分離部２３３は、ｔｒａｋデータを取得すると、そのｔｒａｋデータから、ｔｋｈｄ１１４に格納されているデータ（ｔｋｈｄデータ）を分離して出力する。
【０１０９】
第１解析部２３４は、第３分離部２３３からｔｋｈｄデータを取得すると、そのｔｋｈｄデータを解析して、ｔｋｈｄ１１４のトラックＩＤフィールド１１６に格納されているトラック識別情報を出力する。さらに、第１解析部２３４は、そのトラック識別情報により特定されるトラックに対応する基本トラック時間長情報を、ｔｋｈｄ１１４のトラック時間長フィールド１１７から抽出して、これを出力する。
【０１１０】
第４分離部２３５は、第２分離部２３２からｍｖｅｘデータを取得し、第１解析部２３４からトラック識別情報を取得すると、そのｍｖｅｘデータから、そのトラック識別情報により特定されるトラックに対応するｔｒｅｘ１１５に格納されているデータ（ｔｒｅｘデータ）を分離して出力する。
【０１１１】
第２解析部２３６は、第４分離部２３５からｔｒｅｘデータを取得すると、そのｔｒｅｘデータを解析して、トラック時間長フィールド１１５ａに格納されている拡張トラック時間長情報を出力する。
【０１１２】
加算部２３７は、第１解析部２３４から基本トラック時間長情報を取得し、第２解析部２３６から拡張トラック時間長情報を取得すると、基本トラック時間長情報に示される時間長と、拡張トラック時間長情報に示される時間長とを加算し、その加算された時間長（トラック総時間長）を示すトラック総時間長情報を出力する。
【０１１３】
このように、本実施の形態のトラック時間長特定部２１１ｂは、ＭＰ４ファイルデータ１００の基本領域１００ａ及び拡張領域１００ｂに含まれるトラックの総時間長を、トラックごとに特定し、そのトラックを示すトラック識別情報と、そのトラックのトラック総時間長を示すトラック総時間長情報とを出力する。
【０１１４】
図５は、本実施の形態における逆多重化装置２００のコンテンツ時間長特定部２１１ａの特徴的な動作を示すフロー図である。
【０１１５】
まず、コンテンツ時間長特定部２１１ａは、ＭＰ４ファイルデータ１００を取得し（ステップＳ２００）、そのデータ１００のｍｖｈｄ１１１を解析して、基本コンテンツ時間長Ｔ１を特定する（ステップＳ２０２）。
【０１１６】
次に、コンテンツ時間長特定部２１１ａは、ステップＳ２００で取得したデータ１００のｍｏｏｖ１１０にｍｖｅｘ１１３が含まれているか否かを判別する（ステップＳ２０４）。
【０１１７】
ここで、コンテンツ時間長特定部２１１ａは、ｍｖｅｘ１１３を検出すると（ステップＳ２０４のＹ）、ＭＰ４ファイルデータ１００は基本領域１００ａと拡張領域１００ｂとから構成されていると判断し、さらに、そのｍｖｅｘ１１３に含まれるｍｈｅｘ１１３ａを解析することで（ステップＳ２０６）、そのムービー時間長フィールド１１３ｂに格納されている拡張コンテンツ時間長情報が「０」を示すか否かを判別する（ステップＳ２０８）。
【０１１８】
コンテンツ時間長特定部２１１ａは、拡張コンテンツ時間長情報が「０」を示していないと判別すると（ステップＳ２０８のＮ）、その拡張コンテンツ時間長情報から拡張コンテンツ時間長Ｔ２を特定する（ステップＳ２１０）。
【０１１９】
そして、コンテンツ時間長特定部２１１ａは、基本コンテンツ時間長Ｔ１と拡張コンテンツ時間長Ｔ２とを加算して、コンテンツ総時間長Ｔを算出し（ステップＳ２１２）、そのコンテンツ総時間長Ｔを示す内容のコンテンツ総時間長情報を出力する（ステップＳ２１４）。
【０１２０】
一方、ステップＳ２０４でｍｖｅｘ１１３を検出しなかったときには（ステップＳ２０４のＮ）、コンテンツ時間長特定部２１１ａは、ＭＰ４ファイルデータ１００は基本領域１００ａから構成されると判断し、基本コンテンツ時間長Ｔ１をコンテンツ総時間長Ｔとして扱って（ステップＳ２２０）、コンテンツ総時間長情報を出力する（ステップＳ２１４）。
【０１２１】
そして、ステップＳ２０８で拡張コンテンツ時間長情報が「０」を示していると判別したときには（ステップＳ２０８のＹ）、コンテンツ時間長特定部２１１ａは、コンテンツ総時間長Ｔを算出することができないと判断し（ステップＳ２１６）、コンテンツ総時間長Ｔが不明であることを知らせる内容の総時間長不明情報を出力する（ステップＳ２１８）。
【０１２２】
ここで、本実施の形態における逆多重化装置２００の再生部２１４は、復号部２１３からのデータに基づいて画像や音声を出力し、再生時間特定部２１１ｃにより特定された再生時間を表示するとともに、コンテンツ時間長特定部２１１ａからコンテンツ総時間長情報が出力されたときには、そのコンテンツ総時間長情報により示されるコンテンツ総時間長を表示し、コンテンツ時間長特定部２１１ａから総時間長不明情報が出力されたときには、コンテンツ総時間長が不明であることを報知する。
【０１２３】
図６は、コンテンツ総時間長情報が出力されたときの再生部２１４により表示される画像を示す画像表示図である。
再生部２１４は、再生画像を表示するための画面Ｐ１を表示し、その画面Ｐ１上に、再生画像が表示される再生画像表示部Ｐ２と、スライダーバーＰ３と、操作ボタンＰ４と、時間表示部Ｐ５を表示する。
【０１２４】
時間表示部Ｐ５には、図中右側にコンテンツ総時間長が、例えば「００：０２：３０」のように表示され、図中左側に再生時間が、例えば「００：００：３０」のように表示される。
【０１２５】
スライダーバーＰ３は、コンテンツ総時間長に対する再生時間の割合に応じて、ラインＬｎ１上を図中左側から右側にスライドする。
【０１２６】
図７は、総時間長不明情報が出力されたときの再生部２１４により表示される画像を示す画像表示図である。
【０１２７】
再生部２１４は、上述と同様、再生画像表示部Ｐ２とスライダーバーＰ３と操作ボタンＰ４と時間表示部Ｐ５とを含む画面Ｐ１を表示するが、時間表示部Ｐ５の図中右側には、コンテンツ総時間長が不明であることを示す文字又は記号を、例えば「−−：−−：−−」のように表示する。また、再生部２１４は時間表示部Ｐ５の図中右側に、再生時間を、例えば「００：００：３０」のように表示する。
【０１２８】
スライダーバーＰ３は、例えば所定の時間に対する再生時間の割合に応じて、ラインＬｎ１上を図中左端から右側にスライドし、再生時間が上記所定の時間を越えれば、再び図中左端から右側へのスライドを繰り返し実行する。
【０１２９】
また、再生部２１４は、トラック時間長特定部２１１ｂからトラック識別情報及びトラック総時間長情報を取得したときには、必要に応じて、そのトラック識別情報に示されるトラック毎に、トラック総時間長情報により示されるトラック総時間長を表示する。
【０１３０】
このように本実施の形態における逆多重化装置２００は、ＭＰ４ファイルデータ１００のダウンロードを開始したときには、ダウンロード再生を行うことができるとともに、ＭＰ４ファイルデータ１００の全てのダウンロードが完了するまでもなく、そのＭＰ４ファイルデータ１００のｍｏｏｖ１１０に格納されたコンテンツ総時長情報に基づいて、コンテンツ総時間長を表示することができ、利便性を向上することができる。
【０１３１】
次に、本実施の形態におけるＭＰ４ファイルデータ１００を作成する多重化装置３００について説明する。
【０１３２】
図８は、本実施の形態における多重化装置３００の構成を示す構成図である。この本実施の形態における多重化装置３００は、画像データ解析部３０１と、音声データ解析部３０２と、第１切換スイッチ３０３と、第２切換スイッチ３０４と、制御部３０８と、ｍｏｏｆ生成部３０５と、ｍｏｏｖ生成部３０６と、ファイル生成部３０７とを備えている。　画像データ解析部３０１は、画像データを取得してこれを解析することで、その画像データのタイムスタンプやサイズなどを示す内容の画像特定情報を生成する。そして、画像データ解析部３０１は、画像データを符号化して画像符号化データを作成し、その画像符号化データと画像特定情報とを出力する。
【０１３３】
音声データ解析部３０２は、音声データを取得してこれを解析することで、その音声データのタイムスタンプやサイズなどを示す内容の音声特定情報を生成する。そして、音声データ解析部３０２は、音声データを符号化して音声符号化データを作成し、その音声符号化データと音声特定情報とを出力する。
【０１３４】
ｍｏｏｖ生成部３０６は、制御部３０８からの制御に応じて、ｍｏｏｖデータを生成して出力する。ここで本実施の形態におけるｍｏｏｖ生成部３０６は、ｍｏｏｖデータのｍｖｅｘ１１３にｍｈｅｘ１１３ａを作成する。
【０１３５】
ｍｏｏｆ生成部３０５は、制御部３０８からの制御に応じて、ｍｏｏｆデータを生成して出力する。
【０１３６】
制御部３０８は、画像データ解析部３０１から画像特定情報を取得するとともに、音声データ解析部３０２から音声特定情報を取得し、その画像特定情報及び音声特定情報に基づいて、第１切換スイッチ３０３及び第２切換スイッチ３０４を切り換えることで、第２切換スイッチ３０４からまずｍｏｏｖデータを含む基本領域１００ａに格納されるべきデータを出力させ、次にｍｏｏｆデータを含む拡張領域１００ｂに格納されるべきデータを出力させる。
【０１３７】
ここで本実施の形態における制御部３０８は、ｍｏｏｖ生成部３０６からｍｏｏｖデータを出力させるときには、まず、ｍｈｅｘ１１３ａのムービー時間長フィールド１１３ｂに格納される拡張コンテンツ時間長情報が「０」を示すようなｍｏｏｖデータをｍｏｏｖ生成部３０６に生成させて、これを出力させる。
【０１３８】
そして、制御部３０８は、画像特定情報及び音声特定情報に基づいて、画像符号化データ及び音声符号化データの拡張領域１００ｂに納められる各サンプルの時間長を順次加算する。
【０１３９】
次に制御部３０８は、入力された音声データや画像データの全てに対してｍｏｏｆデータをｍｏｏｆ生成部３０５から出力させると、上述のように加算した時間長を、拡張コンテンツ時間長として、その時間長を示す拡張コンテンツ時間長情報をｍｏｏｖ生成部３０６に出力する。
【０１４０】
そして、制御部３０８から拡張コンテンツ時間長情報を取得したｍｏｏｖ出力部３０６は、その拡張コンテンツ時間長情報と、その情報が格納されるｍｈｅｘ１１３ａのムービー時間長フィールド１１３ｂの位置を示す内容の位置特定情報とをファイル生成部３０７に出力する。
【０１４１】
ファイル出力部３０７は、ｍｏｏｖ生成部３０６から拡張コンテンツ時間長情報と位置特定情報とを取得すると、その位置特定情報により示されるｍｈｅｘ１１３ａのムービー時間長フィールド１１３ｂに、その取得した拡張コンテンツ時間長情報を上書きする。つまり、ファイル生成部３０７は、「０」を示す拡張コンテンツ時間長情報を、後に取得した拡張コンテンツ時間長情報に変更して、ＭＰ４ファイルデータ１００を完成する。
【０１４２】
図９は、本実施の形態における多重化装置３００の動作を示すフロー図である。
まず、多重化装置３００は、「０」を示す拡張コンテンツ時間長情報を含むｍｏｏｖデータを生成する（ステップＳ３００）。つまり、多重化装置３００は、最初に仮のｍｏｏｖデータを生成しておく。
【０１４３】
次に、多重化装置３００は、ｍｏｏｆデータを作成する（ステップＳ３０２）。
【０１４４】
そして、多重化装置３００は、入力された画像データや音声データの符号化及び多重化に対して未処理のデータがあるか否かを判別する（ステップＳ３０４）。ここで、未処理のデータがあると判別したときには（ステップＳ３０４のＹ）、ステップＳ３０２からの動作を繰り返し実行し、未処理のデータがないと判別したときには（ステップＳ３０２のＮ）、サンプルの時間長の加算結果に基づく拡張コンテンツ時間長情報をｍｏｏｖデータに上書きして（ステップＳ３０６）、処理を終了する。
【０１４５】
このような本実施の形態における多重化装置３００は、コンテンツの情報量に応じて一組のｍｏｏｖ１１０及びｍｄａｔ１２０と、少なくとも一組のｍｏｏｆ１３０及びｍｄａｔ１４０とが連なるように構成されるＭＰ４ファイルデータ１００を生成するため、リアルタイム記録に有効であるとともに、逆多重化装置２００の利便性向上のために要する拡張コンテンツ時間長情報をｍｏｏｖ１１０に格納することができる。
【０１４６】
図１０は、ｔｒｅｘのシンタックスを示す表示図である。
ｔｒｅｘ１１５のトラック時間長フィールド１１５ａには、バージョンによって、３２ビットや６４ビットが割り当てられ、第１デフォルト時間長フィールド１１９には３２ビットが割り当てられる。また、タイムスケールはｍｖｈｄ１１１により示される。
【０１４７】
なお、本実施の形態では、ＭＰ４ファイルデータ１００のｍｖｅｘ１１３に、拡張コンテンツ時間長情報を含むｍｈｅｘ１１３ａを格納したが、このｍｈｅｘ１１３ａの代わりに、コンテンツ総時間長情報を含むボックス（以下「ｍｅｈｄ」と称す）を格納しても良い。
【０１４８】
図１１は、ｍｅｈｄを含むＭＰ４ファイルデータに基づいてコンテンツ総時間長を特定するコンテンツ時間長特定部の内部構成を示すブロック図である。
【０１４９】
このコンテンツ時間長特定部２１１ａ’は、第１分離部２１１’と、第２分離部２２２’と、第３分離部２２４’と、解析部２２５’とを備えている。第１分離部２２１’は、ＭＰ４ファイルデータを取得して、そのＭＰ４ファイルデータからｍｏｏｖデータを分離して出力する。第２分離部２２２’は、ｍｏｏｖデータを取得すると、そのｍｏｏｖデータからｍｖｅｘデータを分離して出力する。第３分離部２２４’は、ｍｖｅｘデータを取得すると、そのｍｖｅｘデータから、上述のｍｅｈｄに格納されているｍｅｈｄデータを分離して出力する。解析部２２５’は、第３分離部２２４’からｍｅｈｄデータを取得すると、そのｍｅｈｄデータを解析してコンテンツ総時間長情報を出力する。
【０１５０】
図１２は、上述のコンテンツ時間長特定部２１１ａ’の特徴的な動作を示すフロー図である。
【０１５１】
まず、コンテンツ時間長特定部２１１ａ’は、上述のＭＰ４ファイルデータを取得して（ステップＳ２６０）、そのデータにｍｅｈｄが含まれているか否かを判別する（ステップＳ２６２）。
【０１５２】
ここで、コンテンツ時間長特定部２１１ａ’は、ｍｅｈｄを検出すると（ステップＳ２６２のＹ）、そのｍｅｈｄを解析して（ステップＳ２６４）、ｍｅｈｄに格納されているコンテンツ総時間長情報が「０」を示しているか否かを判別する（ステップＳ２６６）。
【０１５３】
そして、コンテンツ時間長特定部２１１ａ’は、ステップＳ２６６でコンテンツ総時間長情報が「０」を示していないと判別したときには（ステップＳ２６６のＮ）、そのコンテンツ総時間長情報を出力する（ステップＳ２６８）。一方、コンテンツ時間長特定部２１１ａ’は、ステップＳ２６２でデータにｍｅｈｄが含まれていないと判別したとき（ステップＳ２６２のＮ）、又はステップＳ２６６でコンテンツ総時間長情報が「０」を示していると判別したときには（ステップＳ２６６のＹ）、コンテンツ総時間長を特定することができないと判別し（ステップＳ２７０）、コンテンツ総時間長が不明であることを知らせる内容の総時間長不明情報を出力する（ステップＳ２７２）。
【０１５４】
このように、ｍｈｅｘ１１３ａの代わりにｍｅｈｄをＭＰ４ファイルデータに格納することにより、コンテンツ時間長特定部２１１ａ’は、コンテンツ総時間長を特定するために、基本領域１００ａのコンテンツの時間長と拡張領域１００ｂのコンテンツの時間長とを加算することなく、ｍｅｈｄデータを解析することで、容易にコンテンツ総時間長を特定することができる。
【０１５５】
一方、多重化装置３００の制御部３０８は、ｍｏｏｖ生成部３０６にｍｏｏｖデータを生成させるときには、まず、ｍｅｈｄに格納されるコンテンツ総時間長情報が「０」を示すようなｍｏｏｖデータをｍｏｏｖ生成部３０６に生成させるとともに、画像特定情報及び音声特定情報に基づいて、画像符号化データ及び音声符号化データの基本領域１００ａ及び拡張領域１００ｂに納められる各サンプルの時間長を順次加算する。そして、制御部３０８は、入力された音声データや画像データの全てに対してｍｏｏｆデータをｍｏｏｆ生成部３０５から出力させると、上述のように加算した時間長をコンテンツ総時間長として、その時間長を示すコンテンツ総時間長情報をｍｏｏｖ生成部３０６に出力する。これにより多重化装置３００のファイル生成部３０７は、上述のｍｅｈｄを格納するＭＰ４ファイルデータ１００を生成する。
【０１５６】
図１３は、ｍｅｈｄのシンタックスを示す表示図である。
ｍｅｈｄのコンテンツ総時間長情報を格納するムービー時間長フィールドには、バージョンに応じて、３２ビットや６４ビットが割り当てられる。例えば、バージョンが０を示すときには３２ビットが割り当てられ、バージョンが１を示すときには６４ビットが割り当てられる。また、タイムスケールはｍｖｈｄにより示される。
【０１５７】
なお、ｍｈｅｘ１１３ａが図１３に示すようなシンタックスを有していても良い。
【０１５８】
また、上記実施の形態では、拡張コンテンツ時間長情報が「０」を示す場合に、拡張コンテンツ時間長が不明であるとしたが、その値は「０」以外の例えば負数などであっても良い。
【０１５９】
（変形例）　次に、上記本実施の形態における逆多重化装置２００の変形例について説明する。
【０１６０】
上述の逆多重化装置２００は、従来のファイルフォーマットと基本領域の構造が異なるＭＰ４ファイルデータを取り扱ったが、本変形例に係る逆多重化装置はさらに、従来のファイルフォーマットと拡張領域の構造も異なるＭＰ４ファイルデータを取り扱う。
【０１６１】
図１４は、本変形例に係る逆多重化装置が取り扱うＭＰ４ファイルデータのｍｏｏｆのファイルフォーマットを示すデータ構成図である。
【０１６２】
ｍｏｏｆ１３０’は、１つのｍｆｈｄ１３１と複数のｔｒａｆ１３２とから構成されている。
【０１６３】
ｍｆｈｄ１３１は、エントリカウンタフィールド１３１ａと、複数の時間長エントリフィールド１３１ｂとから構成され、時間長エントリフィールド１３１ｂには、さらに、トラックを識別するためのトラック識別情報を格納するトラックＩＤフィールド１３１ｃと、当該ｍｏｏｆ１３０’と対になるｍｄａｔ１４０において、そのトラック識別情報により特定されるトラックの時間長（ｍｏｏｆ時間長）を示すｍｏｏｆ時間長情報を格納するｍｏｏｆ時間長フィールド１３１ｄとが形成されている。
【０１６４】
ｔｒａｆ１３２は、１つのトラックフラグメントヘッダーボックス（以下、「ｔｆｈｄ」と称す）１３３と、複数のトラックフラグメントランボックス（以下「ｔｒｕｎ」と称す）１３６とから構成され、ｔｆｈｄ１３３には、ｔｒａｆ時間長情報が格納されるｔｒａｆ時間長フィールド１３５と、デフォルトサンプル時間長情報が格納される第２デフォルト時間長フィールド１３４とが含まれている。
【０１６５】
ｔｒａｆ時間長フィールド１３５に格納されるｔｒａｆ時間長情報は、ｔｒａｆ１３２のｔｒｕｎ１３６に含まれるサンプル時間長情報により示されるサンプルの時間長の総和（ｔｒａｆ時間長）を示し、第２デフォルト時間長フィールド１３４に格納されるデフォルトサンプル時間長情報は、そのｔｒａｆ時間長に対してデフォルトで設定された時間長を示す。
【０１６６】
図１５は、本変形例に係る逆多重化装置のランダムアクセス処理部の内部構成を示すブロック図である。
【０１６７】
ランダムアクセス処理部４００は、従来のランダムアクセス処理部８１２と比べて計算量を少なくして迅速に目的サンプルを探し出すことができるものであって、図１４に示すｍｏｏｆ１３０’を有するＭＰ４ファイルデータ１００’を蓄積するデータ蓄積部４０１と、ｍｏｏｆ時間長を特定するｍｏｏｆ時間長処理部４２０と、ｔｒａｆ時間長を特定するｔｒａｆ時間長処理部４３０と、サンプル時間長を特定するサンプル時間長処理部４４０と、これらの処理部を制御する主制御部４１０とから構成される。
【０１６８】
主制御部４１０は、ＭＰ４ファイルデータ１００’と、目標時間を示す目標時間情報を取得すると、そのＭＰ４ファイルデータ１００’の構成を解析して、ｍｏｏｆ時間長処理部４２０とｔｒａｆ時間長処理部４３０とサンプル時間長処理部４４０とを制御し、これらの各処理部により特定されるｍｏｏｆ時間長及びｔｒａｆ時間長並びにサンプル時間長を積算処理することで、上記目標時間に応じた目的サンプルを示す目的サンプル識別情報を出力する。
【０１６９】
図１６は、ｍｏｏｆ時間長処理部４２０の内部構成を示すブロック図である。ｍｏｏｆ時間長処理部４２０は、第１分離部４２１と、第２分離部４２３と、トラック制御部４２２と、解析部４２４とを備えている。
【０１７０】
第１分離部４２１は、図１４のｍｏｏｆ１３０’を有するＭＰ４ファイルデータ１００’を取得すると、そのＭＰ４ファイルデータ１００’から、ｍｏｏｖデータとｍｏｏｆデータとを分離して出力する。
【０１７１】
第２分離部４２３は、第１分離部４２１からｍｏｏｆデータを取得すると、そのｍｏｏｆデータから、ｍｆｈｄ１３１に格納されているデータ（ｍｆｈｄデータ）を分離して出力する。
【０１７２】
トラック制御部４２２は、第１分離部４２１からｍｏｏｖデータを取得すると、そのｍｏｏｖデータに基づいて、トラック識別情報を出力する。
【０１７３】
解析部４２４は、第２分離部４２３からｍｆｈｄデータを取得するとともに、トラック制御部４２２からトラック識別情報を取得すると、ｍｆｈｄデータを解析してそのｍｆｈｄデータから、トラック識別情報により特定されるトラックのｍｏｏｆ時間長情報を抽出して、これを出力する。
【０１７４】
図１７は、ｔｒａｆ時間長処理部４３０の内部構成を示すブロック図である。ｔｒａｆ時間長処理部４３０は、第１分離部４３１と、第２分離部４３３と、第３分離部４３４と、トラック制御部４３２と、解析部４３５とを備えている。
【０１７５】
第１分離部４３１は、ＭＰ４ファイルデータ１００’を取得すると、そのＭＰ４ファイルデータ１００’から、ｍｏｏｖデータとｍｏｏｆデータとを分離して出力する。
【０１７６】
トラック制御部４３２は、第１分離部４３１からｍｏｏｖデータを取得すると、そのｍｏｏｖデータに基づいて、トラック識別情報を出力する。
【０１７７】
第２分離部４３３は、第１分離部４３１からｍｏｏｆデータを取得するとともに、トラック制御部４３２からトラック識別情報を取得すると、ｍｏｏｆデータを解析してそのｍｏｏｆデータから、トラック識別情報により特定されるトラックに対応するｔｒａｆデータを分離して出力する。
【０１７８】
第３分離部４３４は、第２分離部４３３からｔｒａｆデータを取得すると、そのｔｒａｆデータからｔｆｈｄデータを分離して出力する。
【０１７９】
解析部４３５は、第３分離部４３４からｔｆｈｄデータを取得すると、そのｔｆｈｄデータを解析して、そのｔｆｈｄデータからｔｒａｆ時間長情報を抽出して出力する。
【０１８０】
また、サンプル時間長処理部４４０は、ＭＰ４ファイルデータ１００’から所定の分離処理を行うことでトラック毎にｔｒｕｎデータを分離し、そのｔｒｕｎデータからサンプル時間長情報を抽出して出力する。
【０１８１】
図１８は、ランダムアクセス処理部４００の概略的な動作を説明するための説明図である。
【０１８２】
図１８の（ａ）は、ＭＰ４ファイルデータ１００’のストリームを示すデータ構成図である。このようなストリームは、サンプル単位で構成され、そのサンプルにはシーク可能（最初に読み出し可能）であることを示すフラグが含められている。
【０１８３】
図１８の（ｂ）は、ＭＰ４ファイルデータ１００’のセグメント構造を示すデータ構成図である。
【０１８４】
ＭＰ４ファイルデータ１００’のファイルフォーマットには、上述のように、ｍｏｏｖ１１０とｍｏｏｆ１３０’とが含まれ、そのｍｏｏｆ１３０’にはｔｒａｆ１３２が含まれている。
【０１８５】
ＭＰ４ファイルデータ１００’に含まれるコンテンツ総時間長は、基本コンテンツ時間長Ａと、拡張コンテンツ時間長Ｂとの和で表される。
【０１８６】
さらに、拡張コンテンツ時間長Ｂは、拡張領域の各ｍｏｏｆ１３０’により示されるｍｏｏｆ時間長Ｃ１，Ｃ２，…の総和で表され、ｍｏｏｆ時間長Ｃ１，Ｃ２，…は、それぞれのｍｏｏｆ１３０’内の各ｔｒａｆ１３２により示されるｔｒａｆ時間長Ｄ１，Ｄ２，…の総和で表される。
【０１８７】
図１８の（ｃ）は、ランダムアクセス処理部４００のシーク動作を説明するための説明図である。
【０１８８】
ランダムアクセス処理部４００は、目標時間を示す目標時間情報を取得すると、まず、基本コンテンツ時間長Ａに拡張コンテンツ時間長Ｂを加算する。その加算結果が目標時間と等しくなれば、ランダムアクセス処理部４００は、ＭＰ４ファイルデータ１００’の最後に取得したサンプルを目的サンプルとして特定し、その目的サンプルを示す目的サンプル識別情報を出力する。
【０１８９】
一方、加算結果が目標時間を越えていれば、ランダムアクセス処理部４００は、基本コンテンツ時間長Ａに対するｍｏｏｆ時間長Ｃ１，Ｃ２，…の加算を時系列に沿って順次行う。その加算結果が目標時間と等しくなったときには、ランダムアクセス処理部４００は、最後に加算したｍｏｏｆ時間長に対応する最後のサンプルを目的サンプルとして特定し、その目的サンプルを示す目的サンプル識別情報を出力する。
【０１９０】
また、その加算結果が目標時間を越えたときには、ランダムアクセス処理部４００は、目標時間を越える直前の加算結果に対して、ｔｒａｆ時間長Ｄ１，Ｄ２，…の加算を時系列に沿って順次行う。その加算結果が目標時間と等しくなったときには、ランダムアクセス処理部４００は、最後に加算したｔｒａｆ時間長に対応する最後のサンプルを目的サンプルとして特定し、そのサンプルを示す目的サンプル識別情報を出力する。
【０１９１】
そしてさらに、その加算結果が目標時間を越えたときには、ランダムアクセス処理部４００は、目標時間を越える直前の加算結果に対して、サンプル時間長Ｅ１，Ｅ２，…の加算を時系列に沿って順次行う。ここで、その加算結果が目標時間と等しくなったときには、ランダムアクセス処理部は、最後に加算したサンプル時間長に対応するサンプルを目的サンプルとして特定し、その目的サンプルを示す目的サンプル識別情報を出力する。
【０１９２】
図１９は、ランダムアクセス処理部４００の動作を示すフロー図である。
まず、ランダムアクセス処理部４００は、基本コンテンツ時間長Ａに拡張コンテンツ時間長Ｂを加算して、その加算結果が目標時間Ｘと等しくなるか否かを判別する（ステップＳ４００）。
【０１９３】
その判別の結果、等しいと判別したときには（ステップＳ４００のＹ）、ランダムアクセス処理部４００は、目的サンプルはＭＰ４ファイルデータの最後にあるサンプルであると判別する（ステップＳ４０２）。
【０１９４】
また、等しくないと判別したときには（ステップＳ４００のＮ）、ランダムアクセス処理部４００は、まず変数ＮをＮ＝１として（ステップＳ４０４）、基本コンテンツ時間長Ａ及びｍｏｏｆ時間長Ｃｎを用いて時間長ａを下記数式により算出する（ステップＳ４０６）。
【数１】
2004007610.tif 000003
【０１９５】
ここで、ランダムアクセス処理部４００は、時間長ａが目標時間Ｘと等しいか否かを判別し（ステップＳ４０８）、等しいと判別したときには（ステップＳ４０８のＹ）、目的サンプルはｍｏｏｆ時間長ＣＮに対応する最後のサンプルであると判別する（ステップＳ４１０）。
【０１９６】
また、ランダムアクセス処理部４００は、時間長ａが目標時間Ｘと等しくないと判別したときには（ステップＳ４０８のＮ）、さらに、時間長ａが目標時間Ｘよりも大きいか否かを判別する（ステップＳ４１２）。
【０１９７】
ランダムアクセス処理部４００は、時間長ａが目標時間Ｘよりも大きくないと判別したときには（ステップＳ４１２のＮ）、Ｎ＝Ｎ＋１として（ステップＳ４１４）、さらにステップＳ４０６からの動作を繰り返し実行する。なお、上記数式は、基本コンテンツ時間長Ａとｍｏｏｆ時間長Ｃ１〜ＣＮとの総和を表しているが、ランダムアクセス処理部４００は、Ｎの増加の度に上記数式の加算処理を全て実行することはなく、加算処理結果を一時保存しておき、Ｎが１増加する度に、前記Ｎに相当するＣＮを上記保存された加算処理結果にさらに加算することで上記数式の解を求める。
【０１９８】
そして、時間長ａが目標時間Ｘよりも大きいと判別したときには（ステップＳ４１２のＹ）、ランダムアクセス処理部４００は、まず変数ＭをＭ＝１として（ステップＳ４１６）、基本コンテンツ時間長Ａ及びｍｏｏｆ時間長Ｃｎ並びにｔｒａｆ時間長Ｄｍを用いて時間長ｂを下記数式により算出する（ステップＳ４１７）。
【数２】
2004007610.tif 000004
【０１９９】
ここで、ランダムアクセス処理部４００は、時間長ｂが目標時間Ｘと等しいか否かを判別し（ステップＳ４１８）、等しいと判別したときには（ステップＳ４１８のＹ）、目的サンプルはｔｒａｆ時間長ＤＭに対応する最後のサンプルであると判別する（ステップＳ４２０）。
【０２００】
また、ランダムアクセス処理部４００は、時間長ｂが目標時間Ｘと等しくないと判別したときには（ステップＳ４１８のＮ）、さらに、時間長ｂが目標時間Ｘよりも大きいか否かを判別する（ステップＳ４２２）。
【０２０１】
ランダムアクセス処理部４００は、時間長ｂが目標時間Ｘよりも大きくないと判別したときには（ステップＳ４２２のＮ）、Ｍ＝Ｍ＋１として（ステップＳ４２４）、さらにステップＳ４１７からの動作を繰り返し実行する。そして、時間長ｂが目標時間Ｘよりも大きいと判別したときには（ステップＳ４２２のＹ）、ランダムアクセス処理部４００は、まず変数ＬをＬ＝１として（ステップＳ４２６）、基本コンテンツ時間長Ａ、ｍｏｏｆ時間長Ｃｎ、ｔｒａｆ時間長Ｄｍ、サンプル時間Ｅｌを用いて時間長ｃを下記数式により算出する（ステップＳ４２８）。
【数３】
2004007610.tif 000005
【０２０２】
ここで、ランダムアクセス処理部４００は、時間長ｃが目標時間Ｘと等しいか否かを判別し（ステップＳ４３０）、等しいと判別したときには（ステップＳ４３０のＹ）、目的サンプルはサンプル時間長ＥＬに対応するサンプルであると判別する（ステップＳ４３２）。
【０２０３】
また、ランダムアクセス処理部４００は、時間長ｃが目標時間Ｘと等しくないと判別したときには（ステップＳ４３０のＮ）、さらに、時間長ｃが目標時間Ｘよりも大きいか否かを判別する（ステップＳ４３４）。
【０２０４】
ランダムアクセス処理部４００は、時間長ｃが目標時間Ｘよりも大きくないと判別したときには（ステップＳ４３４のＮ）、Ｌ＝Ｌ＋１として（ステップＳ４３６）、さらにステップＳ４２８からの動作を繰り返し実行する。そして、時間長ｃが目標時間Ｘよりも大きいと判別したときには（ステップＳのＹ）、ランダムアクセス処理部４００は、エラーが発生したものと判断する（ステップＳ４３８）。
【０２０５】
そして、ステップＳ４０２、ステップＳ４１０、ステップＳ４２０、又はステップＳ４３２で目的サンプルが特定された後、ランダムアクセス処理部４００は、その目的サンプルを示す目的サンプル識別情報を出力する（ステップＳ４４０）。
【０２０６】
このように本変形例では、拡張領域のｍｏｏｆ１３０’のｍｆｈｄ１３１に、ｍｏｏｆ時間長情報を格納するｍｏｏｆ時間長フィールド１３１ｄを設け、さらに、ｔｆｈｄ１３３に、ｔｒａｆ時間長情報を格納するｔｒａｆ時間長フィールド１３５を設けるとともに、ランダムアクセス時において目標時間から目的サンプルを探すときには、まず拡張コンテンツ時間長を用い、次に、拡張コンテンツ時間長よりも短いｍｏｏｆ時間長を用い、さらに次に、ｍｏｏｆ時間長よりも短いｔｒａｆ時間長を用い、そして最後に、ｔｒａｆ時間長よりも短いサンプル時間長を用いるため、図２８に示す従来のランダムアクセス処理部８１２の動作と比べて、計算量を少なくし、迅速に目的サンプルを探し出すことができる。
【０２０７】
そして、ランダムアクセス処理部４００は、ＭＰ４ファイルデータ１００’と目的サンプル識別情報とを復号部２１３に出力して、その目的サンプル識別情報により示される目的サンプルからのコンテンツの再生を復号部２１３及び再生部２１４に実行させる。
【０２０８】
図２０は、ｔｆｈｄ１３３のシンタックスを示す表示図である。
この図２０に示すように、ｔｒａｆ１３２のｔｒａｆ時間長フィールド１３５には、例えば３２ビットが割り当てられる。
【０２０９】
なお、ランダムアクセス処理部４００の主制御部４１０は、ｍｏｏｆ時間長処理部４２０からのｍｏｏｆ時間長情報の出力状況や、ｍｏｏｆ時間長情報により示されるｍｏｏｆ時間長の有効性を判別しており、ｍｏｏｆ時間長を用いようとする場合に、ｍｏｏｆ時間長情報が出力されなかったとき、又はｍｏｏｆ時間長が有効でないと判別したときには、ｔｒａｆ時間長処理部４３０にｍｏｏｆ１３０’に格納されている全てのｔｒａｆ時間長情報を出力させて、これらｔｒａｆ時間長の和をｍｏｏｆ時間長の代わりに用いても良い。さらに、ランダムアクセス処理部４００の主制御部４１０は、ｔｒａｆ時間長処理部４３０からのｔｒａｆ時間長情報の出力状況や、ｔｒａｆ時間長情報により示されるｔｒａｆ時間長の有効性を判別しており、ｔｒａｆ時間長を用いようとする場合に、ｔｒａｆ時間長情報が出力されなかったとき、又はｔｒａｆ時間長が有効でないと判別したときには、サンプル時間長処理部４４０にｔｒａｆ１３２に格納されている全てのサンプル時間長情報を出力させて、これらサンプル時間長の和をｔｒａｆ時間長の代わりに用いても良い。
【０２１０】
また、上記変形例では、各サンプルにシーク可能か否かを示すフラグを含めたが、ｍｏｏｆ１３０に対応する複数のサンプルに対して１つのフラグを含めたり、ｔｒａｆ１３２に対応する複数のサンプルに対して１つのフラグを含めたりしても良い。これにより、各サンプル毎にフラグをチェックする処理を省くことができる。
【０２１１】
【発明の効果】
以上の説明から明らかなように、本発明に係る逆多重化装置によれば、処理手段で多重化データが各組ごとに逆多重化処理されるため、ストリームとして配信される多重化データからコンテンツをダウンロード再生することができるとともに、多重化データの先端部に含まれる総時間長情報に基づいて総時間長が総時間長特定手段で特定されてその総時間長が表示手段により表示されるため、ダウンロード再生中にでも総時間長をユーザに知らせることができ、コンテンツのダウンロード再生時の利便性を向上することができる。また、本発明に係る逆多重化装置は、ＭＰ４ファイルデータをダウンロードして再生するパーソナルコンピュータや携帯電話などに用いるのに適し、本発明に係る多重化装置は、画像や音声などのマルチメディアデータを取得してＭＰ４ファイルデータを作成して記録するデジタルビデオカメラや録画機能付き携帯電話などに用いるのに適している。
【図面の簡単な説明】
【図１】実施の形態における逆多重化装置及び多重化装置が扱うＭＰ４ファイルデータのファイルフォーマットを示すデータ構成図である。
【図２】同上のＭＰ４ファイルデータに基づいて再生を行う逆多重化装置の構成を示す構成図である。
【図３】同上の時間処理部のコンテンツ時間長特定部の内部構成を示すブロック図である。
【図４】同上の時間処理部のトラック時間長特定部の内部構成を示すブロック図である。
【図５】同上の逆多重化装置のコンテンツ時間長特定部の特徴的な動作を示すフロー図である。
【図６】同上の逆多重化装置の再生部により表示される画像を示す画像表示図である。
【図７】同上の逆多重化装置の再生部により表示される他の画像を示す画像表示図である。
【図８】同上の多重化装置の構成を示す構成図である。
【図９】同上の多重化装置の動作を示すフロー図である。
【図１０】同上のｔｒｅｘのシンタックスを示す表示図である。
【図１１】同上のｍｅｈｄを含むＭＰ４ファイルデータを扱うコンテンツ時間長特定部の内部構成を示すブロック図である。
【図１２】同上のコンテンツ時間長特定部の特徴的な動作を示すフロー図である。
【図１３】同上のｍｅｈｄのシンタックスを示す表示図である。
【図１４】同上の変形例に係る逆多重化装置が取り扱うＭＰ４ファイルデータのｍｏｏｆのファイルフォーマットを示すデータ構成図である。
【図１５】同上の変形例に係る逆多重化装置のランダムアクセス処理部の内部構成を示すブロック図である。
【図１６】同上の変形例に係るｍｏｏｆ時間長処理部の内部構成を示すブロック図である。
【図１７】同上の変形例に係るｔｒａｆ時間長処理部の内部構成を示すブロック図である。
【図１８】同上の変形例に係るランダムアクセス処理部の概略的な動作を説明するための説明図である。
【図１９】同上の変形例に係るランダムアクセス処理部の動作を示すフロー図である。
【図２０】同上の変形例に係るｔｆｈｄのシンタックスを示す表示図である。
【図２１】従来例におけるＭＰ４ファイルデータの基本的なファイルフォーマットを示すデータ構成図である。
【図２２】同上のｍｏｏｖの詳細な構成を示すデータ構成図である。
【図２３】同上のｍｏｏｆの詳細な構成を示すデータ構成図である。
【図２４】同上のＭＰ４ファイルデータを生成する従来の多重化装置の構成を示す構成図である。
【図２５】同上の多重化装置のｍｏｏｖデータ及びｍｏｏｆデータの生成に関する動作を示すフロー図である。
【図２６】同上のＭＰ４ファイルデータに基づいて再生を行う従来の逆多重化装置の構成を示す構成図である。
【図２７】同上の時間長特定部の内部構成を示すブロック図である。
【図２８】同上のランダムアクセス処理部の構成を示す構成図である。
【図２９】同上のトラック制御部の内部構成を示すブロック図である。
【図３０】同上のランダムアクセス処理部の概略的な動作を説明するための説明図である。
【図３１】同上の従来の逆多重化装置での問題点を説明するための説明図である。
【符号の説明】
１００　ＭＰ４ファイルデータ
１００ａ　基本領域
１００ｂ　拡張領域
１１０　ｍｏｏｖ
１１３ａ　ｍｈｅｘ
１１３ｂ　ムービー時間長フィールド
１２０　ｍｄａｔ
１３０　ｍｏｏｆ
１４０　ｍｄａｔ
２００　逆多重化装置
２１０　データ取得部
２１１　時間処理部
２１１ａ　コンテンツ時間長特定部
２１１ｂ　トラック時間長特定部
２１１ｃ　再生時間特定部
２１２　ランダムアクセス処理部
２１３　復号部
２１４　再生部
【図１】
2004007610.tif 000006
【図２】
2004007610.tif 000007
【図３】
2004007610.tif 000008
【図４】
2004007610.tif 000009
【図５】
2004007610.tif 000010
【図６】
2004007610.tif 000011
【図７】
2004007610.tif 000012
【図８】
2004007610.tif 000013
【図９】
2004007610.tif 000014
【図１０】
2004007610.tif 000015
【図１１】
2004007610.tif 000016
【図１２】
2004007610.tif 000017
【図１３】
2004007610.tif 000018
【図１４】
2004007610.tif 000019
【図１５】
2004007610.tif 000020
【図１６】
2004007610.tif 000021
【図１７】
2004007610.tif 000022
【図１８】
2004007610.tif 000023
【図１９】
2004007610.tif 000024
【図２０】
2004007610.tif 000025
【図２１】
2004007610.tif 000026
【図２２】
2004007610.tif 000027
【図２３】
2004007610.tif 000028
【図２４】
2004007610.tif 000029
【図２５】
2004007610.tif 000030
【図２６】
2004007610.tif 000031
【図２７】
2004007610.tif 000032
【図２８】
2004007610.tif 000033
【図２９】
2004007610.tif 000034
【図３０】
2004007610.tif 000035
【図３１】
2004007610.tif 000036