(57)【要約】【課題】元のデータと同じパラメータ設定を維持しつつ、より少ない処理負荷及びメモリ使用量で、エラー発生箇所を除去したデータに更新することが可能な情報処理装置、情報処理方法及び情報処理プログラムを提供する。【解決手段】ＭＰ４解析部１４、Ａｕｄｉｏ  Ｄｅｃｏｄｅｒ１６及びＶｉｄｅｏ  Ｄｅｃｏｄｅｒ１８が、ＩＳＯ１４４９６に規定するデータ構造を有し、データ先頭のメタデータ２００とメタデータ２００に続くメディアデータ３００とからなるＭＰ４データ１００における再生不可能となるエラー発生箇所を解析し、ＭＰ４更新部２０が、解析したエラー発生箇所以降のメディアデータ３００を削除してＭＰ４データ１００を更新する。これにより、元のデータと同じパラメータ設定を維持しつつ、より少ない処理負荷及びメモリ使用量で、エラー発生箇所を除去したデータに更新することが可能となる。【選択図】図１
2009239861.tif 000002
【特許請求の範囲】
【請求項１】
ＩＳＯ１４４９６に規定するデータ構造を有し、データ先頭のメタデータと前記メタデータに続くメディアデータとからなるデータにおける再生不可能となるエラー発生箇所を解析する解析手段と、
前記解析手段が解析した前記エラー発生箇所以降の前記メディアデータを削除して前記データを更新する更新手段と、
を備えた情報処理装置。
【請求項２】
前記更新手段は、前記解析手段が解析した前記エラー発生箇所の先頭部分に相当する前記メタデータをＩＳＯ１４４９６に規定するフリーボックス（ｆｒｅｅ  ｂｏｘ）に置換して前記データを更新する、請求項１に記載の情報処理装置。
【請求項３】
前記更新手段は、前記メタデータにおける更新前後の差分が前記フリーボックスのデータサイズ未満となるであると予測されるときは、前記メタデータにおける更新前後の差分が前記フリーボックスのデータサイズ以上となるように前記メタデータのデータを削除して、前記エラー発生箇所の先頭部分に相当する前記メタデータを前記フリーボックスに置換する、請求項２に記載の情報処理装置。
【請求項４】
前記更新手段は、前記解析手段が多重分離後の前記データを再生する際にエラー発生箇所を解析したときに、前記解析手段が解析した前記エラー発生箇所以降の前記メディアデータを削除して前記データを更新する、請求項１〜３のいずれか１項に記載の情報処理装置。
【請求項５】
前記更新手段は、前記解析手段が多重分離前の前記データのエラー発生箇所を解析したときに、前記解析手段が解析した前記エラー発生箇所以降の前記メディアデータを削除して前記データを更新する、請求項１〜３のいずれか１項に記載の情報処理装置。
【請求項６】
解析手段が、ＩＳＯ１４４９６に規定するデータ構造を有し、データ先頭のメタデータと前記メタデータに続くメディアデータとからなるデータにおける再生不可能となるエラー発生箇所を解析し、
更新手段が、前記解析手段が解析した前記エラー発生箇所以降の前記メディアデータを削除して前記データを更新する、情報処理方法。
【請求項７】
前記更新手段は、前記解析手段が解析した前記エラー発生箇所の先頭部分に相当する前記メタデータをＩＳＯ１４４９６に規定するフリーボックス（ｆｒｅｅ  ｂｏｘ）に置換して前記データを更新する、請求項６に記載の情報処理方法。
【請求項８】
解析手段に、ＩＳＯ１４４９６に規定するデータ構造を有し、データ先頭のメタデータと前記メタデータに続くメディアデータとからなるデータにおける再生不可能となるエラー発生箇所を解析させ、
更新手段に、前記解析手段が解析した前記エラー発生箇所以降の前記メディアデータを削除して前記データを更新する処理を実行させる情報処理プログラム。
【請求項９】
前記更新手段に、前記解析手段が解析した前記エラー発生箇所の先頭部分に相当する前記メタデータをＩＳＯ１４４９６に規定するフリーボックス（ｆｒｅｅ  ｂｏｘ）に置換して前記データを更新する処理を実行させる、請求項８に記載の情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置、情報処理方法及び情報処理プログラムに関し、特に、ＩＳＯ１４４９６−１２、ＩＳＯ１４４９６−１４およびＩＳＯ１４４９６−１５などに規定するデータ構造を有するデータにおいて、再生不可能となるエラーが発生したときにデータを更新する情報処理装置、情報処理方法及び情報処理プログラムに関するものである。
【背景技術】
【０００２】
ＭＰ４といったデータフォーマットにより動画像圧縮符号化及び多重化がなされた映像及び音声データを、配信元サーバからダウンロードして再生することが行われている。例えば、特許文献１には、ディジタル信号を送受信可能な無線通信部と、無線通信制御の運用に係る制御ソフトウェア及び該制御ソフトウェアの更新処理を行う更新ソフトウェアを格納する主メモリと、前記主メモリの各ソフトウェアに従って動作するＣＰＵと、更新用ソフトウェアを一時的に格納するバッファメモリとを備えた無線端末装置であって、ＣＰＵは、現用の制御ソフトウェアの制御下で無線を介してダウンロードされた更新用ソフトウェアをバッファメモリに蓄積して後、更新ソフトウェアの制御下で現用の制御ソフトウェアの対応部分をバッファメモリに蓄積した更新用ソフトウェアで更新し、しかる後の制御を更新後の制御ソフトウェアに戻すことにより、制御ソフトウェアの更新を効率良く安全に行なう無線端末装置が開示されている。
【０００３】
このような従来の装置においては、ＭＰ４データのダウンロードに途中で失敗し、ＭＰ４データ中に再生不可能となるエラーが発生した場合、あるいはダウンロードしたＭＰ４データをデコードして再生する際に、途中で再生不可能となるエラーが発生した場合には、ダウンロードしたデータを多重分離化した後に当該エラー発生箇所を除去し、データを再び多重化することにより、ダウンロードしたデータを再生可能なデータのみに更新することが一般的な手法である。
【特許文献１】特開２００５−１００４２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記のような技術においては、エラー発生箇所の除去のために多重分離化及び再度の多重化の両機能を必要とするため、処理負荷及びメモリ使用量が増大する。また、ダウンロードした元のデータと同じパラメータ設定に合わせる場合も同様に処理負荷及びメモリ使用量が増加してしまう。
【０００５】
本発明は、かかる事情に鑑みてなされたものであり、その目的は、元のデータと同じパラメータ設定を維持しつつ、より少ない処理負荷及びメモリ使用量で、エラー発生箇所を除去したデータに更新することが可能な情報処理装置、情報処理方法及び情報処理プログラムを提供することにある。
【課題を解決するための手段】
【０００６】
本発明は、ＩＳＯ１４４９６に規定するデータ構造を有し、データ先頭のメタデータと前記メタデータに続くメディアデータとからなるデータにおける再生不可能となるエラー発生箇所を解析する解析手段と、解析手段が解析したエラー発生箇所以降のメディアデータを削除してデータを更新する更新手段と、を備えた情報処理装置である。
【０００７】
また、本発明は、解析手段が、ＩＳＯ１４４９６に規定するデータ構造を有し、データ先頭のメタデータとメタデータに続くメディアデータとからなるデータにおける再生不可能となるエラー発生箇所を解析し、更新手段が、解析手段が解析したエラー発生箇所以降のメディアデータを削除してデータを更新する、情報処理方法である。
【０００８】
さらに、本発明は、解析手段に、ＩＳＯ１４４９６に規定するデータ構造を有し、データ先頭のメタデータとメタデータに続くメディアデータとからなるデータにおける再生不可能となるエラー発生箇所を解析させ、更新手段に、解析手段が解析したエラー発生箇所以降のメディアデータを削除してデータを更新する処理を実行させる情報処理プログラムである。
【発明の効果】
【０００９】
本発明の情報処理装置、情報処理方法及び情報処理プログラムによれば、元のデータと同じパラメータ設定を維持しつつ、より少ない処理負荷及びメモリ使用量で、エラー発生箇所を除去したデータに更新することが可能となる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施の形態に係る情報処理装置、情報処理方法及び情報処理プログラムについて添付図面を参照して説明する。
【００１１】
図１は、本実施形態に係る情報処理装置の構成例を示すブロック図である。図１に示す本実施形態の情報処理装置１０は、具体的には、ＩＰＴＶ（Internet  Protocol  Television）機器、パーソナルコンピュータ、携帯端末、携帯電話機等であり、各々に搭載された情報処理プログラムが実行されることにより、以下に示す構成及び動作が実現される。
【００１２】
図１に示すように、情報処理装置１０は、ＭＰ４データダウンロード部１２、ＭＰ４解析部１４、Ａｕｄｉｏ  Ｄｅｃｏｄｅｒ１６、Ｖｉｄｅｏ  Ｄｅｃｏｄｅｒ１８、及びＭＰ４更新部２０を備えている。ＭＰ４データダウンロード部１２は、対象となるＭＰ４データをダウンロードするためのものである。
【００１３】
ＭＰ４解析部１４は、ダウンロードしたＭＰ４データ５１の解析および多重分離（Ｄｅｍｕｘ）を行うためのものである。ＭＰ４解析部１４は、ダウンロードしたＭＰ４データ５１の解析時にエラーを検出した場合は、ＭＰ４更新部２０にエラー通知５６を送信する。
【００１４】
Ａｕｄｉｏ  Ｄｅｃｏｄｅｒ１６及びＶｉｄｅｏ  Ｄｅｃｏｄｅｒ１８は、それぞれＭＰ４解析部１４が多重分離を行なったＤｅｍｕｘ後音声データ５２及びＤｅｍｕｘ後映像データ５３を復号化（デコード）するためのもので、デコード時にエラーが発生した場合、それぞれＭＰ４更新部２０にエラー通知５４，５５を送信する。
【００１５】
ＭＰ４解析部１４、Ａｕｄｉｏ  Ｄｅｃｏｄｅｒ１６、及びＶｉｄｅｏ  Ｄｅｃｏｄｅｒ１８は、特許請求の範囲に記載の解析手段として機能する。
【００１６】
ＭＰ４更新部２０は、ＭＰ４解析部１４、Ａｕｄｉｏ  Ｄｅｃｏｄｅｒ１６、及びＶｉｄｅｏ  Ｄｅｃｏｄｅｒ１８からエラー通知５４，５５，５６を受信した場合に、ダウンロードしたＭＰ４データの内容を更新するためのものである。ＭＰ４更新部２０は、特許請求の範囲に記載の更新手段として機能する。
【００１７】
図２は、本実施形態が対象とするＭＰ４形式データのｂｏｘ構造の概略である。図２に示すように、ＭＰ４データ１００は、ｂｏｘと呼ばれるブロックが入れ子状に構成されており、様々なデータ構造を利用することが可能である。本発明が対象とするデータ構造は、ＩＳＯ１４４９６に規定するデータ構造を有し、メタデータ２００となる単一のｍｏｏｖと、メディアデータ３００となる任意個のｍｄａｔで構成されたものであり、ｍｄａｔよりもｍｏｏｖが先に挿入された形式である。
【００１８】
メタデータ２００には、ＭＰ４データ１００に関する諸情報（再生長やストリームの格納場所など）が示されている。ＭＰ４データ１００からストリームを取り出すためには、このｍｏｏｖ  Ｂｏｘを解析しなければならない。また、メディアデータ３００には、多重化したストリームのサンプル（実データ）が、ｍｏｏｖ  ｂｏｘに示された構造で格納されている。
【００１９】
図３は、本実施形態が対象とするＭＰ４のデータ構造の詳細を示す図である。図３に示すように、ＭＰ４データ１００の先頭のメタデータ２００には、Ｈ．２６４ピクチャが、メディアデータ３００中にどのように格納されているかを表わす情報（データ先頭Ｆからのオフセット値等）などで構成されている。
【００２０】
また、メディアデータ３００には、Ｈ．２６４ストリームがピクチャ毎に格納されている。このデータを取り出すためには、メタデータ２００によるデコードが必要である。長時間のコンテンツの場合は、メタデータ２００に対してメディアデータ３００のデータ長が非常に大きくなりやすい。
【００２１】
以下、本実施形態の情報処理装置の動作について説明する。図４は、本実施形態の情報処理の全体的な手順を示すフロー図である。図４に示すように、ＭＰ４データダウンロード部１２がコンテンツのダウンロードを行なう場合において（Ｓ１０１）、何らかの要因でコンテンツの終端までダウンロードが完了しなかった場合、すなわちコンテンツの保存に失敗した場合は（Ｓ１０２）、情報処理装置１０はエラー処理（１）によってダウンロードできたメディアデータ３００を再生できるようにする（Ｓ１０３）。
【００２２】
ＭＰ４解析部１４で、ダウンロードしたコンテンツに対して解析エラーが発生した場合（Ｓ１０５）、情報処理装置１０はエラー処理（２）によってエラーが発生する箇所の直前までメディアデータ３００を再生することができるようにする（Ｓ１０６）。
【００２３】
コンテンツの再生時に（Ｓ１０７）、ＭＰ４解析部１４で多重分離したメディアデータを後段のモジュールであるＡｕｄｉｏ  Ｄｅｃｏｄｅｒ１６及びＶｉｄｅｏ  Ｄｅｃｏｄｅｒ１８でデコードする。ここでデコードエラーが発生した場合（Ｓ１０８）、情報処理装置１０はエラー処理（３）によってエラーが発生する箇所の直前までメディアデータ３００を再生することができるようにする（Ｓ１０９）。以上のようにして、全体的な処理フローが終了する（Ｓ１１０）。
【００２４】
図５は、ＭＰ４のデータ構造におけるデコードエラーとなるデータを示す図である。このようなエラーとなるＭＰ４データ１００は、メディアデータ３００に再生不可能となるデコードエラーデータ３０１を有している。また、メタデータ２００には、当該デコードエラーデータ３０１のサンプルテーブル要素を含んでいる。
【００２５】
以下、エラー処理（１）について説明する。図６は、エラー処理（１）の手順を示すフロー図である。エラー処理（１）はＭＰ４データ１００のダウンロードに失敗した場合を対象としている。図６に示すように、ＭＰ４更新部２０は、ＭＰ４データダウンロード部１２が保存したコンテンツのサイズを取得し（Ｓ２０１）、ｍｏｏｖ（メタデータ２００）の終端までダウンロードが完了しているかを判定する（Ｓ２０２）。
【００２６】
もし、ｍｏｏｖが途中で切れている場合は、ｍｄａｔ（メディアデータ３００）が全くダウンロードできていないことを意味し、再生可能なメディア・データ３００が一つも存在しないことになるため、情報処理装置１０は、該当データを「再生不可」の状態にする（Ｓ２０３）。
【００２７】
一方、ｍｏｏｖの終端までダウンロードが完了している場合は、ＭＰ４更新部２０は、Ｓ２０１で取得したデータサイズを参照して、ｍｄａｔのデータサイズを取得し、以下の処理を行う（Ｓ２０２）。
【００２８】
ＭＰ４更新部２０は、メタデータ２００のトラック毎に、メタデータ２００のｓｔｃｏ内に記載されたｃｈｕｎｋ  ｏｆｆｓｅｔに相当する実データが、ダウンロードしたメタデータ３００であるｍｄａｔ中に存在するかどうかを確認する（Ｓ２０４，Ｓ２０５）。もし、ｃｈｕｎｋ  ｏｆｆｓｅｔに相当する実データがｍｄａｔ中に存在しない場合は（Ｓ２０５）、ＭＰ４更新部２０は、存在しないｏｆｆｓｅｔテーブルを削除するため、後述のテーブル変更処理（１）を実行する（Ｓ２０６）。一方、ｃｈｕｎｋ  ｏｆｆｓｅｔに相当する実データがｍｄａｔ中に存在する場合は、ＭＰ４更新部２０は、ｓｔｃｏの全テーブルを確認するまで、ｃｈｕｎｋ  ｏｆｆｓｅｔに相当する実データが、ダウンロードしたメタデータ３００であるｍｄａｔ中に存在するかどうかを確認する（Ｓ２０５〜Ｓ２０８）。
【００２９】
ＭＰ４更新部２０は、テーブル変更処理（１）を必要な全てのトラックに対して実行する（Ｓ２０５，Ｓ２０６，Ｓ２０９，Ｓ２１０）。テーブル変更処理（１）が必要な全てのトラックについて完了したときは（Ｓ２０９）、ＭＰ４更新部２０は、後述する未処理差分の処理を実行する（Ｓ２１１）。ＭＰ４更新部２０は、ｍｄａｔのサイズ等を更新した後（Ｓ２１２）、エラー処理（１）を完了する（Ｓ２１３）。
【００３０】
以下、エラー処理（２）について説明する。図７は、エラー処理（２）の手順を示すフロー図である。エラー処理（２）は、ＭＰ４データの解析時にエラーを検出した場合を対象としている。なお、ＭＰ４データ１００の解析のエラーについては様々なケースが考えられるが、本実施形態が対象とするのは、メタデータ２００のｓｔｂｌによって示されたサンプルがメディアデータ３００のｍｄａｔに存在しない場合（Ｓ３０１）のみである。それ以外のＭＰ４データ１００の解析時のエラーについては、情報処理装置１０は、「該当コンテンツは再生不可」とし（Ｓ３０２）、本処理を中止する。
【００３１】
一方、ＭＰ４データの解析時のエラーが、メタデータ２００のｓｔｂｌによって示されたサンプルがメディアデータ３００のｍｄａｔに存在しないことが原因である場合（Ｓ３０３）、ＭＰ４更新部２０は、ＭＰ４解析部１４からエラー通知５６としてエラーが発生したサンプル番号を受け取る（Ｓ３０３）。ＭＰ４更新部２０は、受け取ったサンプル番号に関する情報に基づいて、テーブル変更処理（１）を実行する（Ｓ３０４）。
【００３２】
以下、エラー処理（３）について説明する。図８は、エラー処理（３）の手順を示すフロー図である。エラー処理（３）は、多重分離したメディアデータ３００を後段のモジュールでデコードする際にエラーを検出した場合を対象としている。図８におけるＳ４０１の「コンテンツ再生部」とは、Ａｕｄｉｏ  Ｄｅｃｏｄｅｒ１６やＶｉｄｅｏ  Ｄｅｃｏｄｅｒ１８を意味し、Ａｕｄｉｏ  Ｄｅｃｏｄｅｒ１６やＶｉｄｅｏ  Ｄｅｃｏｄｅｒ１８でエラーが発生した場合、ＭＰ４更新部２０は、Ａｕｄｉｏ  Ｄｅｃｏｄｅｒ１６やＶｉｄｅｏ  Ｄｅｃｏｄｅｒ１８からエラー通知５４，５５としてエラーが発生したサンプル番号を受け取る（Ｓ４０１）。ＭＰ４更新部２０は、受け取ったサンプル番号に関する情報に基づいて、テーブル変更処理（１）を実行する（Ｓ３０４）。
【００３３】
以下、テーブル変更処理（１）について説明する。図９は、テーブル変更処理（１）の手順を示すフロー図である。テーブル変更処理（１）は、メディアデータ３００を何らかの理由により短くする場合に必要なメタデータ２００の変更処理である。図９に示すテーブル変更処理（１）における入力は、エラー処理（１）〜（３）で検出したエラー発生サンプル番号である（Ｓ３０４）。ＭＰ４更新部２０は、エラー発生サンプル番号に基づいて、エラー発生サンプルの直前までのサンプルで、ｓｔｂｌ  ｂｏｘ以下の各ｂｏｘについてテーブルサイズを見積もる（Ｓ５０１）。
【００３４】
ＭＰ４更新部２０は、見積もったテーブルサイズをＴＢＬ＿ｅｓｔ［ｂｙｔｅ］とし、オリジナルのＭＰ４データ１００におけるテーブルサイズＴＢＬ＿ｏｒｇ［ｂｙｔｅ］との差分サイズｄｉｆｆ［ｂｙｔｅ］を下式にて算出する。
ｄｉｆｆ＝ＴＢＬ＿ｏｒｇ−ＴＢＬ＿ｅｓｔ
【００３５】
ＭＰ４更新部２０は、得られたｄｉｆｆの大きさに応じて以下の処理を行う。ｄｉｆｆ＝０の場合は（Ｓ５０２）、ｓｔｂｌ  ｂｏｘ以下のデータサイズが変化しないため、テーブル変更処理自体は不要である。但し、ＭＰ４更新部２０は、メディアデータ削減に伴う、必要パラメータの変更は行う（Ｓ５０３）。一方、ｄｉｆｆ＜８［ｂｙｔｅ］の場合は（Ｓ５０４）、ＭＰ４更新部２０は、後述のテーブル変更処理（２）を実行する（Ｓ５０５）。
【００３６】
上記以外のｄｉｆｆ≧８［ｂｙｔｅ］である場合は（Ｓ５０４）、ＭＰ４更新部２０は、図１０に示すように、変更するサンプル数に併せてメタデータ２００のｓｔｂｌ  ｂｏｘ以下を再構築し、ｓｔｂｌ  ｂｏｘの直後にｄｉｆｆ［ｂｙｔｅ］分のｆｒｅｅ  ｂｏｘ２０２を挿入する。
【００３７】
以下、テーブル変更処理（２）について説明する。図１１は、テーブル変更処理（２）の手順を示すフロー図である。テーブル変更処理（２）は、テーブル変更処理（１）でｄｉｆｆ＜８［ｂｙｔｅ］となった場合の処理である。本実施形態では、メタデータ２００のｓｔｂｌ  ｂｏｘ内のデータサイズが減少する場合の埋め合わせとして、ｆｒｅｅ  ｂｏｘ２０２を利用している。ｆｒｅｅ  ｂｏｘ２０２は以下のデータ構成となる。
（ヘッダ８［ｂｙｔｅ］）＋（バイト単位のデータ）
【００３８】
つまり、ｆｒｅｅ  ｂｏｘ２０２の挿入可能な最小サイズは８［ｂｙｔｅ］ということになる。そのため、テーブル変更処理（１）でｄｉｆｆ＜９となった場合、このままではｆｒｅｅ  ｂｏｘ２０２の挿入はできない。そこで、メタデータ２００におけるｓｔｔｓ，ｓｔｓｚ，ｓｔｃｏのテーブルエントリの何れかを削除し、ｄｉｆｆ≧８とするものである。
【００３９】
図１１に示すように、ＭＰ４更新部２０は、ｄｉｆｆ≧８とするために削除すべきエントリ数ｄｅｌを見積もる（Ｓ８０１）。ｓｔｂｌ  ｂｏｘ以下の各テーブルエントリは４［ｂｙｔｅ］なので、１ｓａｍｐｌｅ削除すると４［ｂｙｔｅ］減ると考えられる。ＭＰ４更新部２０は、ｓｔｔｓまたはｓｔｓｚ  ｂｏｘからサンプルの削減を検討する。ｓｔｔｓまたはｓｔｓｚ  ｂｏｘのテーブルエントリ数がｄｅｌよりも大きい場合（Ｓ８０２）、ＭＰ４更新部２０は、ｓｔｔｓまたはｓｔｓｚ  ｂｏｘのテーブルエントリを削減し（Ｓ８０３）、テーブルを更新する（Ｓ８０７）。
【００４０】
一方、ｓｔｔｓまたはｓｔｓｚ  ｂｏｘのテーブルエントリ数がｄｅｌ以下の場合（ＳＳ８０２）、ＭＰ４更新部２０は、ｓｔｃｏ  ｂｏｘのテーブルエントリ数の削減を検討する。ｓｔｃｏ  ｂｏｘのテーブルエントリ数がｄｅｌよりも大きい場合（Ｓ８０４）、ｓｔｃｏ  ｂｏｘのテーブルエントリをｃｈｕｎｋ単位で削減し（Ｓ８０５）、テーブルを更新する（Ｓ８０７）。
【００４１】
上記のようにしてテーブルが更新された場合、ＭＰ４更新部２０は、新たにｄｉｆｆを算出し、ｄｉｆｆ［ｂｙｔｅ］分のｆｒｅｅ  ｂｏｘをｓｔｂｌ  ｂｏｘ直後に挿入する（Ｓ８０８）。一方、テーブルが更新された場合、ＭＰ４更新部２０は、テーブル変更処理（１）で算出したｄｉｆｆを「未処理差分」Ｒｅｍａｉｎ＿ｄｉｆｆとして保持し、次のトラックへ処理を移す（Ｓ８０６）。
【００４２】
以下、未処理差分の処理について説明する。ここで「未処理差分」とは、テーブル変更処理（１）〜（２）でテーブルサイズの縮小に伴うｆｒｅｅ  ｂｏｘでの対応ができなかった場合の、未処理のデータサイズを意味する。ある一つのトラックにたいして未処理差分が発生した場合、別のトラックで発生した未処理差分とあわせて８［ｂｙｔｅ］以上になれば、ｆｒｅｅ  ｂｏｘの挿入で対応することが可能である。本処理では、トラック毎に未処理差分を保持し、全トラックの処理が完了した時点でまとめて未処理差分を処理するものである。
【００４３】
図１２は、未処理差分の処理の手順を示すフロー図である。図１２で用いられている“未処理差分”とは、全トラックの未処理差分の合計値を表す。ＭＰ４更新部２０は、未処理差分の合計値が０の場合（Ｓ９０１）、未処理差分の処理は行わない（Ｓ９０２）。一方、未処理差分の合計値が８［ｂｙｔｅ］以下の場合（Ｓ９０３）、ｆｒｅｅ  ｂｏｘ挿入による本手法は適用できない（Ｓ９０４）。上記以外の別のトラックで発生した未処理差分とあわせて未処理差分の合計が８［ｂｙｔｅ］以上となる場合は（Ｓ９０３）、ＭＰ４更新部２０は、ｍｄａｔの直前に未処理差分の合計値分のｆｒｅｅ  ｂｏｘを挿入する（Ｓ９０５）。
【００４４】
本実施形態によれば、ＭＰ４解析部１４、Ａｕｄｉｏ  Ｄｅｃｏｄｅｒ１６及びＶｉｄｅｏ  Ｄｅｃｏｄｅｒ１８が、ＩＳＯ１４４９６に規定するデータ構造を有し、データ先頭のメタデータ２００とメタデータ２００に続くメディアデータ３００とからなるＭＰ４データ１００における再生不可能となるエラー発生箇所を解析し、ＭＰ４更新部２０が、解析したエラー発生箇所以降のメディアデータ３００を削除してＭＰ４データ１００を更新するため、元のデータと同じパラメータ設定を維持しつつ、より少ない処理負荷及びメモリ使用量で、エラー発生箇所を除去したデータに更新することが可能となる。
【００４５】
メディアデータ３００はデータサイズが非常に大きいため、デコードして再生することが不可能な部分を保存しておくのは冗長である。一方、デコードすることができないメディアデータ３００を除去するためには、一般的にはメタデータ２００を作り直さなければならない。メタデータ２００を作り直すためには再多重化が必要である。
【００４６】
例えば、図１３に示すように、エラーコンテンツ発生に対し（Ｓ１０）、多重分離化後（Ｓ１１）、エラーを取り除いたストリームで再多重化した場合（Ｓ１２）、エラーが含まれた部分を取り除くことが可能となるが、エラー発生箇所の除去のために多重分離化及び再度の多重化の両機能を必要とするため、処理負荷及びメモリ使用量が増大する。また、ダウンロードした元のデータと同じパラメータ設定に合わせることが難しい。
【００４７】
一方、本実施形態によれば、図１４に示すように多重分離化及び再多重化を行なわず、テーブル変更（Ｓ２１）とメディアデータの更新（Ｓ２２）とを行なうため、処理負荷が軽減され、メモリ使用量も通常の多重分離化と同様にできる。また、ダウンロードした元のデータと同じパラメータ設定を維持することができる。なお、エラーが発生したコンテンツを再ダウンロードする場合には、エラー発生サンプル以降のメタデータ２００及びメディアデータ３００をダウンロードすれば良い。
【００４８】
特に、本実施形態によれば、ＭＰ４更新部２０は、ＭＰ４解析部１４が解析したエラー発生箇所の先頭部分に相当するメタデータ２００をＩＳＯ１４４９６に規定するフリーボックス２０２に置換して前記データを更新するため、メタデータの全体サイズは変えずにサンプル数関連のパラメータだけを変更することで、ＭＰ４データ１００をエラー箇所のないものに更新することができる。なお、メディアデータ３００の終端に書き換える前の８ｂｙｔｅを追記しておけば、再ダウンロード時にテーブル部のダウンロードは不要になるという利点がある。
【００４９】
さらに、本実施形態によれば、ＭＰ更新部２０は、メタデータ２００における更新前後の差分が前記フリーボックスのデータサイズ未満となるであると予測されるときは、前記メタデータにおける更新前後の差分が前記フリーボックスのデータサイズ以上となるように前記メタデータのデータを削除して、前記エラー発生箇所の先頭部分に相当する前記メタデータを前記フリーボックスに置換するため、多くの状況において、メターデータ２００のエラー発生箇所の先頭部分に相当する部分をフリーボックスに置換することができる。
【００５０】
以上、本発明の実施の形態について説明したが、本発明は、上記実施形態に限定されるものではなく種々の変形が可能である。
【図面の簡単な説明】
【００５１】
【図１】本実施形態に係る情報処理装置の構成例を示すブロック図である。
【図２】本実施形態が対象とするＭＰ４のデータ構造を示す図である。
【図３】本実施形態が対象とするＭＰ４のデータ構造の詳細を示す図である。
【図４】本実施形態の情報処理の全体的な手順を示すフロー図である。
【図５】ＭＰ４のデータ構造におけるデコードエラーとなるデータを示す図である。
【図６】エラー処理（１）の手順を示すフロー図である。
【図７】エラー処理（２）の手順を示すフロー図である。
【図８】エラー処理（３）の手順を示すフロー図である。
【図９】テーブル変更処理（１）の手順を示すフロー図である。
【図１０】ＭＰ４のデータ構造において、フリーボックスへの置換を示す図である。
【図１１】テーブル変更処理（２）の手順を示すフロー図である。
【図１２】未処理差分の処理の手順を示すフロー図である。
【図１３】従来のＭＰ４データからのエラー除去方法を示すフロー図である。
【図１４】本実施形態のＭＰ４データからのエラー除去方法を示すフロー図である。
【符号の説明】
【００５２】
１０…情報処理装置、１２…ＭＰ４データダウンロード部、１４…ＭＰ４解析部、１６…Ａｕｄｉｏ  Ｄｅｃｏｄｅｒ、１８…Ｖｉｄｅｏ  Ｄｅｃｏｄｅｒ、２０…ＭＰ４更新部、５１…ＭＰ４データ、５２…Ｄｅｍｕｘ後音声データ、５３…Ｄｅｍｕｘ後映像データ、５４，５５，５６…エラー通知、１００…ＭＰ４データ、２００…メタデータ、２０１…サンプルテーブル要素、２０２…フリーボックス、３００…メディアデータ、３０１…デコードエラーデータ。
【図１】
2009239861.tif 000003
【図２】
2009239861.tif 000004
【図３】
2009239861.tif 000005
【図４】
2009239861.tif 000006
【図５】
2009239861.tif 000007
【図６】
2009239861.tif 000008
【図７】
2009239861.tif 000009
【図８】
2009239861.tif 000010
【図９】
2009239861.tif 000011
【図１０】
2009239861.tif 000012
【図１１】
2009239861.tif 000013
【図１２】
2009239861.tif 000014
【図１３】
2009239861.tif 000015
【図１４】
2009239861.tif 000016