(57)【要約】【課題】コンテンツデータの合成に必要な合成スクリプトを新たに用意する必要をなくすることである。【解決手段】コンテンツ合成装置は、コンテンツデータの合成について記述した合成スクリプトを含む第１のコンテンツデータ、および、第２のコンテンツデータの入力を受付ける入力受付部（Ｓ１１）と、入力された第１のコンテンツデータに含まれる合成スクリプトに基づき、入力された第１のコンテンツデータを入力された第２のコンテンツデータと合成する合成処理部（Ｓ１３）とを備える。【選択図】        図３
2004264885.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツデータの合成について記述した合成スクリプトを含む第１のコンテンツデータ、および、第２のコンテンツデータの入力を受付ける入力受付手段と、
前記入力された第１のコンテンツデータに含まれる合成スクリプトに基づき、前記入力された第１のコンテンツデータを前記入力された第２のコンテンツデータと合成する合成処理手段とを備えた、コンテンツ合成装置。
【請求項２】
コンテンツデータの合成について記述した合成スクリプトの所在を示す所在情報を含む第１のコンテンツデータ、および、第２のコンテンツデータの入力を受付ける入力受付手段と、
前記入力された第１のコンテンツデータに含まれる所在情報が示す合成スクリプトを取得する取得手段と、
前記取得された合成スクリプトに基づき、前記入力された第１のコンテンツデータを前記入力された第２のコンテンツデータと合成する合成処理手段とを備えた、コンテンツ合成装置。
【請求項３】
前記第２のコンテンツデータの属性を判別する属性判別手段をさらに備え、
前記合成スクリプトは、コンテンツデータの複数の属性のそれぞれに対応するスクリプトを含み、
前記合成処理手段は、前記判別された属性に対応したスクリプトに基づき、前記入力された第１のコンテンツデータを前記入力された第２のコンテンツデータと合成する、請求項１または請求項２に記載のコンテンツ合成装置。
【請求項４】
現在時刻を取得する時刻取得手段をさらに備え、
前記合成スクリプトは、前記合成処理手段により合成される時刻に応じたスクリプトを含み、
前記合成処理手段は、前記取得された現在時刻に応じたスクリプトに基づき、前記入力された第１のコンテンツデータを前記入力された第２のコンテンツデータと合成する、請求項１または請求項２に記載のコンテンツ合成装置。
【請求項５】
前記コンテンツ合成装置の現在位置を取得する位置取得手段をさらに備え、
前記合成スクリプトは、位置に応じたスクリプトを含み、
前記合成処理手段は、前記取得された現在位置に応じたスクリプトに基づき、前記入力された第１のコンテンツデータを前記入力された第２のコンテンツデータと合成する、請求項１または請求項２に記載のコンテンツ合成装置。
【請求項６】
前記合成スクリプトは、他の合成スクリプトを含み、
前記合成されたコンテンツデータに前記他の合成スクリプトを含ませる付加手段をさらに備えた、請求項１または請求項２に記載のコンテンツ合成装置。
【請求項７】
前記合成スクリプトは、他の合成スクリプトの所在を示す所在情報を含み、
前記所在情報が示す他の合成スクリプトを取得する取得手段と、
前記合成されたコンテンツデータに前記取得された他の合成スクリプトを含ませる付加手段とをさらに備えた、請求項１に記載のコンテンツ合成装置。
【請求項８】
前記合成スクリプトは、他の合成スクリプトの所在を示す所在情報を含み、
前記取得手段は、前記所在情報が示す他の合成スクリプトをさらに取得し、
前記合成されたコンテンツデータに前記取得された他の合成スクリプトを含ませる付加手段をさらに備えた、請求項２に記載のコンテンツ合成装置。
【請求項９】
前記第１のコンテンツデータおよび前記第２のコンテンツデータは、アニメーションデータのコマを定義するキーフレームを含み、
前記合成スクリプトは、前記第２のコンテンツデータに含まれるキーフレームに含まれるデータを前記第１のコンテンツデータの所定のキーフレームに挿入することを記述したスクリプトを含む、請求項１または請求項２に記載のコンテンツ合成装置。
【請求項１０】
前記第１のコンテンツデータおよび前記第２のコンテンツデータは、アニメーションデータのコマを定義するキーフレームを含み、
前記合成スクリプトは、前記第２のコンテンツデータに含まれるキーフレームを前記第１のコンテンツデータの所定の箇所に追加することを記述したスクリプトを含む、請求項１または請求項２に記載のコンテンツ合成装置。
【請求項１１】
前記第１のコンテンツデータは、アニメーションデータのコマを定義するキーフレームを含み、
前記第２のコンテンツデータは、前記キーフレームに含むことが可能なデータであり、
前記合成スクリプトは、前記第１のコンテンツデータのキーフレームに含まれる所定のデータを前記第２のコンテンツデータに変更することを記述したスクリプトを含む、請求項１または請求項２に記載のコンテンツ合成装置。
【請求項１２】
前記合成スクリプトは、前記第１のコンテンツデータの所定の部分を削除することを記述したスクリプトを含む、請求項１または請求項２に記載のコンテンツ合成装置。
【請求項１３】
コンピュータでコンテンツデータを合成するコンテンツ合成方法であって、
合成スクリプトを含む第１のコンテンツデータ、および、第２のコンテンツデータの入力を受付けるステップと、
前記入力された第１のコンテンツデータに含まれる合成スクリプトに基づき、前記入力された第１のコンテンツデータを前記入力された第２のコンテンツデータと合成するステップとを含む、コンテンツ合成方法。
【請求項１４】
コンピュータでコンテンツデータを合成するコンテンツ合成方法であって、
合成スクリプトの所在を示す所在情報を含む第１のコンテンツデータ、および、第２のコンテンツデータの入力を受付けるステップと、
前記入力された第１のコンテンツデータに含まれる所在情報が示す合成スクリプトを取得するステップと、
前記取得された合成スクリプトに基づき、前記入力された第１のコンテンツデータを前記入力された第２のコンテンツデータと合成するステップとを含む、コンテンツ合成方法。
【請求項１５】
コンテンツデータを合成するコンテンツ合成プログラムであって、
合成スクリプトを含む第１のコンテンツデータ、および、第２のコンテンツデータの入力を受付けるステップと、
前記入力された第１のコンテンツデータに含まれる合成スクリプトに基づき、前記入力された第１のコンテンツデータを前記入力された第２のコンテンツデータと合成するステップとをコンピュータに実行させる、コンテンツ合成プログラム。
【請求項１６】
コンテンツデータを合成するコンテンツ合成プログラムであって、
合成スクリプトの所在を示す所在情報を含む第１のコンテンツデータ、および、第２のコンテンツデータの入力を受付けるステップと、
前記入力された第１のコンテンツデータに含まれる所在情報が示す合成スクリプトを取得するステップと、
前記取得された合成スクリプトに基づき、前記入力された第１のコンテンツデータを前記入力された第２のコンテンツデータと合成するステップとをコンピュータに実行させる、コンテンツ合成プログラム。
【請求項１７】
請求項１５または請求項１６に記載のコンテンツ合成プログラムを記録したコンピュータ読込可能な記録媒体。
【請求項１８】
コンテンツデータと、前記コンテンツデータを他のコンテンツデータと合成するための合成処理がコンピュータで実行される際に用いられる合成スクリプトとを含む、コンテンツデータのデータ構造。
【請求項１９】
前記コンテンツデータおよび前記他のコンテンツデータは、アニメーションデータのコマを定義するキーフレームを含み、
前記合成スクリプトは、前記他のコンテンツデータに含まれるキーフレームを前記コンテンツデータの所定の箇所に追加することを記述したスクリプトを含む、請求項１８に記載のコンテンツデータのデータ構造。
【請求項２０】
前記コンテンツデータは、アニメーションデータのコマを定義するキーフレームを含み、
前記他のコンテンツデータは、前記キーフレームに含むことが可能なデータであり、
前記合成スクリプトは、前記コンテンツデータのキーフレームに含まれる所定のデータを前記他のコンテンツデータに変更することを記述したスクリプトを含む、請求項１８に記載のコンテンツデータのデータ構造。
【請求項２１】
前記合成スクリプトは、前記コンテンツデータの所定の部分を削除することを記述したスクリプトを含む、請求項１８に記載のコンテンツデータのデータ構造。
【請求項２２】
請求項１８から請求項２１のいずれかに記載のデータ構造のコンテンツデータを記録したコンピュータ読込可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンテンツ合成装置、コンテンツ合成方法、コンテンツ合成プログラム、コンテンツ合成プログラムを記録したコンピュータ読取可能な記録媒体、コンテンツデータのデータ構造、および、コンテンツデータを記録したコンピュータ読取可能な記録媒体に関し、特に、コンテンツデータを合成するのに適したコンテンツ合成装置、コンテンツ合成方法、コンテンツ合成プログラム、コンテンツ合成プログラムを記録したコンピュータ読取可能な記録媒体、コンテンツデータのデータ構造、および、コンテンツデータを記録したコンピュータ読取可能な記録媒体に関する。
【０００２】
【従来の技術】
近年、インターネットの普及に伴い、画像や動画などのデジタル化したコンテンツを販売、配信することが多くなっている。このようなデジタルコンテンツを一から制作する場合、専用のオーサリングツールを用いることが多い。しかし、専用のオーサリングツールを用いるには、高度な技術が必要とされる場合があり、必ずしも一般の利用者が簡単に利用できるものではない。このような問題を解決するために、予め人物、物体、背景ごとにコンテンツを部品化して保存しておき、それらを組合わせることによって、新たなコンテンツを制作する手法がある。
【０００３】
なお、以上本発明についての従来の技術を、出願人の知得した一般的技術情報に基づいて説明したが、出願人の記憶する範囲において、出願前までに先行技術文献情報として開示すべき情報を出願人は有していない。
【０００４】
【発明が解決しようとする課題】
しかしながら、従来のコンテンツデータの合成方法には、次のような問題がある。第１に、コンテンツデータの作成者側から合成処理を規定することができないといった問題である。たとえば、あるコンテンツを特定のコンテンツとのみ合成を許可させるように設定することは不可能である。このため、コンテンツの作成者がコンテンツの合成形態を規定することはできない。
【０００５】
第２に、コンテンツデータを合成する際には、合成スクリプトが必要であるが、一般の利用者が合成スクリプトを作成することは困難であるといった問題がある。このため、一般の利用者は、合成するコンテンツデータに応じた合成スクリプトを探し出して、用いなければならない。
【０００６】
この発明は上述の問題点を解決するためになされたもので、この発明の目的の１つは、コンテンツデータ側から合成処理を制御することが可能なコンテンツ合成装置、コンテンツ合成方法、コンテンツ合成プログラム、コンテンツ合成プログラムを記録したコンピュータ読取可能な記録媒体、コンテンツデータのデータ構造、および、コンテンツデータを記録したコンピュータ読取可能な記録媒体を提供することである。
【０００７】
この発明の他の目的は、コンテンツデータの合成に必要な合成スクリプトを新たに用意する必要がないコンテンツ合成装置、コンテンツ合成方法、コンテンツ合成プログラム、コンテンツ合成プログラムを記録したコンピュータ読取可能な記録媒体、コンテンツデータのデータ構造、および、コンテンツデータを記録したコンピュータ読取可能な記録媒体を提供することである。
【０００８】
【課題を解決するための手段】
上述の目的を達成するためにこの発明のある局面によれば、コンテンツ合成装置は、コンテンツデータの合成について記述した合成スクリプトを含む第１のコンテンツデータ、および、第２のコンテンツデータの入力を受付ける入力受付手段と、入力された第１のコンテンツデータに含まれる合成スクリプトに基づき、入力された第１のコンテンツデータを入力された第２のコンテンツデータと合成する合成処理手段とを備える。
【０００９】
この発明に従えば、コンテンツ合成装置により、コンテンツデータの合成について記述した合成スクリプトを含む第１のコンテンツデータ、および、第２のコンテンツデータの入力が受付けられ、入力された第１のコンテンツデータに含まれる合成スクリプトに基づき、入力された第１のコンテンツデータが入力された第２のコンテンツデータと合成される。このため、第１のコンテンツデータに含まれる合成スクリプトにより、合成処理が制御される。また、第１のコンテンツデータに合成スクリプトが含まれるので、第１のコンテンツデータを第２のコンテンツデータと合成するときに、合成スクリプトを新たに用意する必要がない。その結果、コンテンツデータ側から合成処理を制御することができるとともに、コンテンツデータの合成に必要な合成スクリプトを新たに用意する必要がないコンテンツ合成装置を提供することができる。
【００１０】
この発明の他の局面によれば、コンテンツ合成装置は、コンテンツデータの合成について記述した合成スクリプトの所在を示す所在情報を含む第１のコンテンツデータ、および、第２のコンテンツデータの入力を受付ける入力受付手段と、入力された第１のコンテンツデータに含まれる所在情報が示す合成スクリプトを取得する取得手段と、取得された合成スクリプトに基づき、入力された第１のコンテンツデータを入力された第２のコンテンツデータと合成する合成処理手段とを備える。
【００１１】
この発明に従えば、コンテンツ合成装置により、コンテンツデータの合成について記述した合成スクリプトの所在を示す所在情報を含む第１のコンテンツデータ、および、第２のコンテンツデータの入力が受付けられ、入力された第１のコンテンツデータに含まれる所在情報が示す合成スクリプトが取得され、取得された合成スクリプトに基づき、入力された第１のコンテンツデータが入力された第２のコンテンツデータと合成される。このため、第１のコンテンツデータに含まれる所在情報が示す合成スクリプトにより、合成処理が制御される。また、第１のコンテンツデータに合成スクリプトの所在情報が含まれるので、第１のコンテンツデータを第２のコンテンツデータと合成するときに、合成スクリプトを新たに用意する必要がない。その結果、コンテンツデータ側から合成処理を制御することができるとともに、コンテンツデータの合成に必要な合成スクリプトを新たに用意する必要がないコンテンツ合成装置を提供することができる。
【００１２】
好ましくは、第２のコンテンツデータの属性を判別する属性判別手段をさらに備え、合成スクリプトは、コンテンツデータの複数の属性のそれぞれに対応するスクリプトを含み、合成処理手段は、判別された属性に対応したスクリプトに基づき、入力された第１のコンテンツデータを入力された第２のコンテンツデータと合成する。
【００１３】
この発明に従えば、コンテンツ合成装置により、第２のコンテンツデータの属性が判別され、第１のコンテンツデータに含まれる合成スクリプトに含まれる判別された属性に対応したスクリプトに基づき、第１のコンテンツデータが第２のコンテンツデータと合成される。このため、第２のコンテンツデータの属性に対応するスクリプトにより、合成処理が制御される。その結果、コンテンツデータ側から合成処理を制御することができるとともに、コンテンツデータの属性に応じた合成処理をすることができる。
【００１４】
好ましくは、現在時刻を取得する時刻取得手段をさらに備え、合成スクリプトは、合成処理手段により合成される時刻に応じたスクリプトを含み、合成処理手段は、取得された現在時刻に応じたスクリプトに基づき、入力された第１のコンテンツデータを入力された第２のコンテンツデータと合成する。
【００１５】
この発明に従えば、コンテンツ合成装置により、現在時刻が取得され、第１のコンテンツデータに含まれる合成スクリプトに含まれる取得された現在時刻に応じたスクリプトに基づき、第１のコンテンツデータが第２のコンテンツデータと合成される。このため、合成する時刻に応じたスクリプトにより、合成処理が制御される。その結果、コンテンツデータ側から合成処理を制御することができるとともに、コンテンツデータを合成する時刻に応じた合成処理をすることができる。
【００１６】
好ましくは、コンテンツ合成装置の現在位置を取得する位置取得手段をさらに備え、合成スクリプトは、位置に応じたスクリプトを含み、合成処理手段は、取得された現在位置に応じたスクリプトに基づき、入力された第１のコンテンツデータを入力された第２のコンテンツデータと合成する。
【００１７】
この発明に従えば、コンテンツ合成装置により、コンテンツ合成装置の現在位置が取得され、第１のコンテンツデータに含まれる合成スクリプトに含まれる取得された現在位置に応じたスクリプトに基づき、第１のコンテンツデータが第２のコンテンツデータと合成される。このため、合成する場所に応じたスクリプトにより、合成処理が制御される。その結果、コンテンツデータ側から合成処理を制御することができるとともに、コンテンツデータを合成する場所に応じた合成処理をすることができる。
【００１８】
好ましくは、合成スクリプトは、他の合成スクリプトを含み、合成されたコンテンツデータに他の合成スクリプトを含ませる付加手段をさらに備える。
【００１９】
この発明に従えば、コンテンツ合成装置により、合成されたコンテンツデータに、合成スクリプトに含まれる他の合成スクリプトが付加される。このため、新たに合成されたコンテンツデータ側から合成処理を制御可能にすることができる。
【００２０】
好ましくは、合成スクリプトは、他の合成スクリプトの所在を示す所在情報を含み、所在情報が示す他の合成スクリプトを取得する取得手段と、合成されたコンテンツデータに取得された他の合成スクリプトを含ませる付加手段とをさらに備える。
【００２１】
この発明に従えば、コンテンツ合成装置により、他の合成スクリプトの所在を示す合成スクリプトに含まれる所在情報が示す他の合成スクリプトが取得され、合成されたコンテンツデータに、取得された他の合成スクリプトが付加される。このため、新たに合成されたコンテンツデータ側から合成処理を制御可能にすることができる。
【００２２】
好ましくは、合成スクリプトは、他の合成スクリプトの所在を示す所在情報を含み、取得手段は、所在情報が示す他の合成スクリプトをさらに取得し、合成されたコンテンツデータに取得された他の合成スクリプトを含ませる付加手段をさらに備える。
【００２３】
この発明に従えば、コンテンツ合成装置により、他の合成スクリプトの所在を示す合成スクリプトに含まれる所在情報が示す他の合成スクリプトがさらに取得され、合成されたコンテンツデータに、取得された他の合成スクリプトが付加される。このため、新たに合成されたコンテンツデータ側から合成処理を制御可能にすることができる。
【００２４】
好ましくは、第１のコンテンツデータおよび第２のコンテンツデータは、アニメーションデータのコマを定義するキーフレームを含み、合成スクリプトは、第２のコンテンツデータに含まれるキーフレームに含まれるデータを第１のコンテンツデータの所定のキーフレームに挿入することを記述したスクリプトを含む。
【００２５】
この発明に従えば、コンテンツ合成装置により、第２のコンテンツデータに含まれるキーフレームに含まれるデータを第１のコンテンツデータの所定のキーフレームに挿入することを記述したスクリプトを含む合成スクリプトに基づき、入力された第２のコンテンツデータに含まれるキーフレームに含まれるデータが、入力された第１のコンテンツデータの所定のキーフレームに挿入される。このため、第１のコンテンツデータに含まれる合成スクリプトにより、第２のコンテンツデータに含まれるデータを第１のコンテンツデータに挿入する合成処理が制御される。その結果、コンテンツデータ側から他のコンテンツデータを挿入する合成処理を制御することができる。
【００２６】
好ましくは、第１のコンテンツデータおよび第２のコンテンツデータは、アニメーションデータのコマを定義するキーフレームを含み、合成スクリプトは、第２のコンテンツデータに含まれるキーフレームを第１のコンテンツデータの所定の箇所に追加することを記述したスクリプトを含む。
【００２７】
この発明に従えば、コンテンツ合成装置により、第２のコンテンツデータに含まれるキーフレームを第１のコンテンツデータの所定の箇所に追加することを記述したスクリプトを含む合成スクリプトに基づき、入力された第２のコンテンツデータに含まれるキーフレームが、キーフレームを含む第１のコンテンツデータの所定の箇所に追加される。このため、第１のコンテンツデータに含まれる合成スクリプトにより、第２のコンテンツデータを第１のコンテンツデータに追加する合成処理が制御される。その結果、コンテンツデータ側から他のコンテンツデータを追加する合成処理を制御することができる。
【００２８】
好ましくは、第１のコンテンツデータは、アニメーションデータのコマを定義するキーフレームを含み、第２のコンテンツデータは、キーフレームに含むことが可能なデータであり、合成スクリプトは、第１のコンテンツデータのキーフレームに含まれる所定のデータを第２のコンテンツデータに変更することを記述したスクリプトを含む。
【００２９】
この発明に従えば、コンテンツ合成装置により、第１のコンテンツデータのキーフレームに含まれる所定のデータを第２のコンテンツデータに変更することを記述したスクリプトを含む合成スクリプトに基づき、入力された第１のコンテンツデータのキーフレームに含まれる所定のデータが、入力された第２のコンテンツデータに変更される。このため、第１のコンテンツデータに含まれる合成スクリプトにより、第１のコンテンツデータに含まれる所定のデータを第２のコンテンツデータに変更する合成処理が制御される。その結果、コンテンツデータ側から他のコンテンツデータに変更する合成処理を制御することができる。
【００３０】
好ましくは、合成スクリプトは、第１のコンテンツデータの所定の部分を削除することを記述したスクリプトを含む。
【００３１】
この発明に従えば、コンテンツ合成装置により、第１のコンテンツデータの所定の部分を削除することを記述したスクリプトを含む合成スクリプトに基づき、入力された第１のコンテンツデータの所定の部分が削除される。このため、第１のコンテンツデータに含まれる合成スクリプトにより、第１のコンテンツデータに含まれる所定の部分を削除する合成処理が制御される。その結果、コンテンツデータ側からコンテンツデータの所定の部分を削除する合成処理を制御することができる。
【００３２】
この発明のさらに他の局面によれば、コンテンツ合成方法は、コンピュータでコンテンツデータを合成する方法であって、合成スクリプトを含む第１のコンテンツデータ、および、第２のコンテンツデータの入力を受付けるステップと、入力された第１のコンテンツに含まれる合成スクリプトに基づき、入力された第１のコンテンツデータを入力された第２のコンテンツデータと合成するステップとを含む。
【００３３】
この発明に従えば、コンテンツデータ側から合成処理を制御することができるとともに、コンテンツデータの合成に必要な合成スクリプトを新たに用意する必要がないコンテンツ合成方法を提供することができる。
【００３４】
この発明のさらに他の局面によれば、コンテンツ合成方法は、コンピュータでコンテンツデータを合成する方法であって、合成スクリプトの所在を示す所在情報を含む第１のコンテンツデータ、および、第２のコンテンツデータの入力を受付けるステップと、入力された第１のコンテンツデータに含まれる所在情報が示す合成スクリプトを取得するステップと、取得された合成スクリプトに基づき、入力された第１のコンテンツデータを入力された第２のコンテンツデータと合成するステップとを含む。
【００３５】
この発明に従えば、コンテンツデータ側から合成処理を制御することができるとともに、コンテンツデータの合成に必要な合成スクリプトを新たに用意する必要がないコンテンツ合成方法を提供することができる。
【００３６】
この発明のさらに他の局面によれば、コンテンツ合成プログラムは、コンテンツデータを合成するプログラムであって、合成スクリプトを含む第１のコンテンツデータ、および、第２のコンテンツデータの入力を受付けるステップと、入力された第１のコンテンツデータに含まれる合成スクリプトに基づき、入力された第１のコンテンツデータを入力された第２のコンテンツデータと合成するステップとをコンピュータに実行させる。
【００３７】
この発明に従えば、コンテンツデータ側から合成処理を制御することができるとともに、コンテンツデータの合成に必要な合成スクリプトを新たに用意する必要がないコンテンツ合成プログラム、および、コンテンツ合成プログラムを記録したコンピュータ読取可能な記録媒体を提供することができる。
【００３８】
この発明のさらに他の局面によれば、コンテンツ合成プログラムは、コンテンツデータを合成するプログラムであって、合成スクリプトの所在を示す所在情報を含む第１のコンテンツデータ、および、第２のコンテンツデータの入力を受付けるステップと、入力された第１のコンテンツデータに含まれる所在情報が示す合成スクリプトを取得するステップと、取得された合成スクリプトに基づき、入力された第１のコンテンツデータを入力された第２のコンテンツデータと合成するステップとをコンピュータに実行させる。
【００３９】
この発明に従えば、コンテンツデータ側から合成処理を制御することができるとともに、コンテンツデータの合成に必要な合成スクリプトを新たに用意する必要がないコンテンツ合成プログラム、および、コンテンツ合成プログラムを記録したコンピュータ読取可能な記録媒体を提供することができる。
【００４０】
この発明のさらに他の局面によれば、コンテンツデータのデータ構造は、コンテンツデータと、コンテンツデータを他のコンテンツデータと合成するための合成処理がコンピュータで実行される際に用いられる合成スクリプトとを含む。
【００４１】
この発明に従えば、コンテンツデータに含まれる合成スクリプトにより、コンピュータで、他のコンテンツデータをコンテンツデータと合成する合成処理が実行される。その結果、コンテンツデータ側から合成処理を制御することができるとともに、コンテンツデータの合成に必要な合成スクリプトを新たに用意する必要がないコンテンツデータのデータ構造、および、コンテンツデータを記録したコンピュータ読取可能な記録媒体を提供することができる。
【００４２】
好ましくは、コンテンツデータおよび他のコンテンツデータは、アニメーションデータのコマを定義するキーフレームを含み、合成スクリプトは、他のコンテンツデータに含まれるキーフレームをコンテンツデータの所定の箇所に追加することを記述したスクリプトを含む。
【００４３】
この発明に従えば、コンピュータにより、他のコンテンツデータに含まれるキーフレームをコンテンツデータの所定の箇所に追加することを記述したスクリプトを含む合成スクリプトに基づき、入力された他のコンテンツデータに含まれるキーフレームが、入力されたコンテンツデータの所定の箇所に追加される。このため、コンテンツデータに含まれる合成スクリプトにより、他のコンテンツデータをコンテンツデータに追加する合成処理が制御される。その結果、コンテンツデータ側から他のコンテンツデータを追加する合成処理を制御することができる。
【００４４】
好ましくは、コンテンツデータは、アニメーションデータのコマを定義するキーフレームを含み、他のコンテンツデータは、キーフレームに含むことが可能なデータであり、合成スクリプトは、コンテンツデータのキーフレームに含まれる所定のデータを他のコンテンツデータに変更することを記述したスクリプトを含む。
【００４５】
この発明に従えば、コンピュータにより、コンテンツデータのキーフレームに含まれる所定のデータを他のコンテンツデータに変更することを記述したスクリプトを含む合成スクリプトに基づき、入力されたコンテンツデータのキーフレームに含まれる所定のデータが、入力された他のコンテンツデータに変更される。このため、コンテンツデータに含まれる合成スクリプトにより、コンテンツデータに含まれる所定のデータを他のコンテンツデータに変更する合成処理が制御される。その結果、コンテンツデータ側から他のコンテンツデータに変更する合成処理を制御することができる。
【００４６】
好ましくは、合成スクリプトは、コンテンツデータの所定の部分を削除することを記述したスクリプトを含む。
【００４７】
この発明に従えば、コンピュータにより、コンテンツデータの所定の部分を削除することを記述したスクリプトを含む合成スクリプトに基づき、入力されたコンテンツデータの所定の部分が削除される。このため、コンテンツデータに含まれる合成スクリプトにより、コンテンツデータに含まれる所定の部分を削除する合成処理が制御される。その結果、コンテンツデータ側からコンテンツデータの所定の部分を削除する合成処理を制御することができる。
【００４８】
【発明の実施の形態】
［第１の実施の形態］
以下、本発明の実施の形態について図面を参照して説明する。なお、図中同一符号は同一または相当する部材を示し、重複する説明は繰返さない。
【００４９】
図１は、第１の実施の形態におけるコンテンツ合成装置１００の構成の概略を示すブロック図である。図１を参照して、コンテンツ合成装置１００は、パーソナルコンピュータ（以下、「ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）」という）等の汎用的なコンピュータで構成することができる。コンテンツ合成装置１００は、コンテンツ合成装置１００の全体を制御するための制御部１１０と、所定の情報を記憶するための記憶部１３０と、コンテンツ合成装置１００に所定の情報を入力するための入力部１４０と、コンテンツ合成装置１００から所定の情報を出力するための出力部１５０と、コンテンツ合成装置１００をネットワーク５００と接続するためのインターフェイスである通信部１６０と、記録媒体１７１に記録された情報を入力したり、記録媒体１７１に必要な情報を記録するための外部記憶装置１７０とを含む。また、制御部１１０と、記憶部１３０と、入力部１４０と、出力部１５０と、通信部１６０と、外部記憶装置１７０とは、バスを介して、互いに接続される。
【００５０】
制御部１１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）およびＣＰＵの補助回路からなり、記憶部１３０、入力部１４０、出力部１５０、および、外部記憶装置１７０を制御し、記憶部１３０に記憶されたプログラムにしたがって所定の処理を実行し、入力部１４０、通信部１６０、外部記憶装置１７０から入力されたデータを処理し、処理されたデータを、出力部１５０、通信部１６０、あるいは、外部記憶装置１７０に出力する。
【００５１】
記憶部１３０は、制御部１１０でプログラムを実行するために必要な作業領域として用いられるＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）と、制御部１１０で実行するためのプログラムを記憶するためのＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）とを含む。また、ＲＡＭの補助として、ハードディスクドライブ（以下、「ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）」という）等の磁気ディスク記憶装置が用いられる。
【００５２】
入力部１４０は、キーボード、マウス等からの信号を入力するためのインターフェイスであり、コンテンツ合成装置１００に必要な情報を入力することができる。
【００５３】
出力部１５０は、液晶表示装置または陰極線管（以下、「ＣＲＴ（Ｃａｔｈｏｄｅ  Ｒａｙ  Ｔｕｂｅ）」という）等のディスプレイに信号を出力するためのインターフェイスであり、コンテンツ合成装置１００から必要な情報を出力することができる。
【００５４】
通信部１６０は、コンテンツ合成装置１００をネットワーク５００に接続するための通信インターフェイスである。コンテンツ合成装置１００は、通信部１６０を介して、他のＰＣ等と必要な情報を送受信する。
【００５５】
外部記憶装置１７０は、記録媒体１７１に記録されたプログラムやデータを読込み、制御部１１０に送信する。また、外部記憶装置１７０は、制御部１１０からの指示により、記録媒体１７１に必要な情報を書込む。
【００５６】
コンピュータ読取可能な記録媒体１７１としては、磁気テープ、カセットテープ、フロッピー（Ｒ）ディスク、ハードディスク等の磁気ディスク、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等の光ディスク、ＭＯ（Ｍａｇｎｅｔｏ  Ｏｐｔｉｃａｌ  ｄｉｓｋ）、ＭＤ（ＭｉｎｉＤｉｓｃ）等の光磁気ディスク、ＩＣカード、光カード等のメモリカード、あるいは、マスクＲＯＭ，ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｏｎｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  ａｎｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、フラッシュＲＯＭ等の半導体メモリを含めた、固定的にプログラムを担持する記録媒体である。また、記録媒体を、ネットワーク５００からプログラムがダウンロードされるように流動的にプログラムを担持する媒体とすることができる。
【００５７】
図２は、第１の実施の形態におけるコンテンツ合成装置１００の機能の概略を示す図である。図２を参照して、コンテンツ合成装置１００の制御部１１０は、入力受付部１１１と、合成処理部１１２とを含む。コンテンツ合成装置１００の記憶部１３０は、複数のコンテンツデータを記憶する。コンテンツデータは、アニメーションデータと合成スクリプトとを含むコンテンツデータと、アニメーションデータを含むコンテンツデータとを含む。
【００５８】
コンテンツデータは、アニメーションデータ等の動画像データ、静止画像データ、音楽データ、図形データ等、コンピュータ等のコンテンツの再生装置により出力可能なデータを含み得る。ここでは、コンテンツデータにアニメーションデータが含まれる場合を例として説明するが、これに限定されることはない。アニメーションデータは、アニメーションデータの各コマを定義するデータであるキーフレームを含む。
【００５９】
また、合成スクリプトは、あるコンテンツデータを他のコンテンツデータと合成するための合成処理における手順を定義する情報であり、コンテンツ合成装置１００で合成処理が実行される際に用いられる。また、合成スクリプトは、制御内容と、パラメータとからなる。制御内容は、合成処理の内容を示す。パラメータは、合成処理の対象を示す。本実施の形態においては、コンテンツデータがアニメーションデータを含む例としているため、合成スクリプトは、アニメーションデータを他のアニメーションデータと合成するための合成処理における手順を定義する情報である。
【００６０】
記憶部１３０に記憶されるコンテンツデータは、予め、通信部１６０により他のＰＣ等からネットワーク５００を介して受信されて記憶部１３０に記憶されるようにしてもよいし、外部記憶装置１７０により記録媒体１７１から読込まれて記憶部１３０に記憶されるようにしてもよい。
【００６１】
入力受付部１１１は、記憶部１３０に記憶された合成スクリプトを含むコンテンツデータ１０、および、コンテンツデータ２０の入力を受付ける。受付けられたコンテンツデータ１０、および、コンテンツデータ２０は、合成処理部１１２に出力される。なお、入力受付部１１１は、直接、通信部１６０により他のＰＣ等からネットワーク５００を介して、合成スクリプトを含むコンテンツデータ１０、および、コンテンツデータ２０の入力を受付けてもよいし、外部記憶装置１７０により記録媒体１７１から、合成スクリプトを含むコンテンツデータ１０、および、コンテンツデータ２０の入力を受付けてもよい。
【００６２】
合成処理部１１２は、コンテンツデータ１０に含まれる合成スクリプトに基づき、コンテンツデータ１０に含まれるアニメーションデータを、コンテンツデータ２０に含まれるアニメーションデータと合成する。そして、合成処理部１１２は、合成されたコンテンツデータ３０を記憶部１３０に記憶させる。なお、合成処理部１１２は、合成されたコンテンツデータ３０を、直接、通信部１６０によりネットワーク５００を介して他のＰＣ等に送信してもよいし、外部記憶装置１７０により記録媒体１７１に記録してもよい。
【００６３】
図３は、第１の実施の形態におけるコンテンツ合成装置１００で実行されるコンテンツ合成処理の流れを示すフローチャートである。図３を参照して、まず、ステップＳ１１で、入力受付部１１１により、記憶部１３０に記憶された合成スクリプトを含むコンテンツデータ１０、および、コンテンツデータ２０の入力が受付けられる。
【００６４】
次に、ステップＳ１２で、合成処理部１１２により、ステップＳ１１で入力されたコンテンツデータ１０、あるいは、コンテンツデータ２０に合成スクリプトが含まれるか否かが判断される。いずれかのコンテンツデータに合成スクリプトが含まれる場合（ステップＳ１１でＹｅｓ）は、ステップＳ１３に進む。一方、いずれのコンテンツデータにも合成スクリプトが含まれない場合（ステップＳ１１でＮｏ）は、コンテンツ合成処理が終了する。ここでは、ステップＳ１１で入力されたコンテンツデータ１０に合成スクリプトが含まれるので、ステップＳ１３に進む。なお、ステップＳ１２で、いずれのコンテンツデータにも合成スクリプトが含まれる場合は、コンテンツ合成処理を終了させるようにしてもよいし、どちらかのコンテンツデータに含まれる合成スクリプトを以後のステップで用いるようにしてもよい。
【００６５】
ステップＳ１３では、合成処理部１１２により、データ合成処理が実行される。データ合成処理は、ステップＳ１１で入力されたコンテンツデータ１０に含まれる合成スクリプトに基づき、コンテンツデータ１０に含まれるアニメーションデータを、ステップＳ１１で入力されたコンテンツデータ２０に含まれるアニメーションデータと合成する処理である。
【００６６】
最後に、ステップＳ１４では、合成処理部１１２により、ステップＳ１３で合成されたコンテンツデータ３０が記憶部１３０に記憶され、コンテンツ合成処理が終了する。
【００６７】
（第１の実施の形態における第１の合成例）
ここでは、コンテンツデータに含まれる合成スクリプトに基づき、他のコンテンツデータに含まれるデータをコンテンツデータに挿入する合成例について説明する。
【００６８】
図４は、第１の実施の形態における第１の合成例において合成される前のコンテンツデータのデータ構造を示す図である。図４（ａ）は、合成スクリプトを含むコンテンツデータ１Ａのデータ構造を示す図である。図４（ａ）を参照して、コンテンツデータ１Ａは、ヘッダ、キーフレーム１〜キーフレーム４、および、合成スクリプトを含む。
ヘッダには、アニメーションデータの表示サイズやキーフレーム数や各キーフレームの再生時刻間隔などのアニメーションデータの属性を示すデータが含まれる。また、キーフレームは、アニメーションデータのコマを定義するデータである。そして、各キーフレームの再生時刻間隔から、各キーフレームがそれぞれ再生される時刻が定められる。次に、アニメーションデータを再生する再生装置で１秒間に再生可能なフレームの数を示すフレームレートに応じて、キーフレーム間のフレームが補完される。そして、キーフレームおよび補完されたフレームが順次再生されることにより、アニメーションが実現される。
【００６９】
キーフレーム１は、オブジェクトデータと、画像データとを含む。オブジェクトデータは、図形を示すデータであり、図形の形状を示す形状データと、図形の位置を示す位置データとからなる。ここでは、オブジェクトデータは、図形の形状が円形で、図形が画面の上方の中央より少し左側にあることを示している。以下、オブジェクトデータは、視覚的に分かりやすく示すために、オブジェクトデータが示す図形が画面に表示されるイメージで示す。また、画像データは、アニメーションの背景に表示される画像のデータであり、たとえば、模様や絵画や写真などの画像を所定の符号化形式で符号化したデータである。画像データは、別の画像データが含まれるキーフレームが再生されるまで表示される。
【００７０】
キーフレーム２は、オブジェクトデータと、音楽データとを含む。このオブジェクトデータは、キーフレーム１に含まれるオブジェクトデータが示す図形と同じ図形を示すオブジェクトデータであるので、互いに関連付けられる。ここでは、オブジェクトデータは、図形が画面の上方の中央より少し左側にあることを示している。また、音楽データは、アニメーションの進行とともに音を発生させるためのデータであり、たとえば、音楽や効果音をコンピュータで音を発生可能な符号化形式で符号化したデータである。音楽データは、別の音楽データが含まれるキーフレームが再生されるまで同じ音楽を発生させる。
【００７１】
キーフレーム３、および、キーフレーム４は、それぞれ、オブジェクトデータを含む。これらのオブジェクトデータは、キーフレーム１、および、キーフレーム２に含まれるオブジェクトデータが示す図形と同じ図形を示すオブジェクトデータであるので、互いに関連付けられる。すなわち、キーフレーム１からキーフレーム４に含まれるオブジェクトデータは、キーフレーム間で互いに関連付けられている。このため、アニメーションデータが再生されることにより、オブジェクトデータで示される図形が、キーフレームの経過にしたがい、図形のアニメーションとして表示される。このようなアニメーション方式をベクトルアニメーション方式という。
【００７２】
ここでは、キーフレーム３に含まれるオブジェクトデータは、図形が画面の中央より少し下側の中央より少し左側にあることを示している。また、キーフレーム４に含まれるオブジェクトデータは、図形が画面の中央より少し左側にあることを示している。具体的に、キーフレーム１からキーフレーム４が再生されることにより、円形の図形が、最初画面上方の中央より少し左側にあり、しばらく同じ位置に留まった後、下方向に動き出し、中央より少し下まで動いた後、上方向に動き、中央付近まで動くこととなる。
【００７３】
コンテンツデータ１Ａに含まれる合成スクリプトは、制御内容として「他ファイルのオブジェクト挿入」を含み、パラメータとして「キーフレーム２〜」を含む。制御内容「他ファイルのオブジェクト挿入」は、他のコンテンツデータ２Ａに含まれるアニメーションデータに含まれるオブジェクトデータを、パラメータで指定される対象位置に挿入することを示す。パラメータ「キーフレーム２〜」は、制御内容で示される合成処理の対象位置が、合成スクリプトを含むコンテンツデータ１Ａに含まれるアニメーションデータのキーフレーム２〜であることを示す。
【００７４】
図４（ｂ）は、コンテンツデータ２Ａのデータ構造を示す図である。図４（ｂ）を参照して、コンテンツデータ２Ａは、ヘッダ、および、キーフレーム１データ〜キーフレーム２を含む。
【００７５】
キーフレーム１、および、キーフレーム２は、オブジェクトデータを含む。ここでは、オブジェクトデータは、図形の形状が正方形で、図形が画面の中心より少し下側にあることを示している。また、キーフレームに含まれるオブジェクトデータは、キーフレーム１に含まれるオブジェクトデータが示す図形と同じ図形を示し、図形が画面の中心より少し上側にあることを示している。
【００７６】
そして、コンテンツ合成装置１００により、コンテンツデータ１Ａ、および、コンテンツデータ２Ａの入力が受付けられ、コンテンツデータ１Ａ、または、コンテンツデータ２Ａに合成スクリプトが含まれるか否かが判断される。コンテンツデータ１Ａに合成スクリプトが含まれるので、その合成スクリプトに基づき、コンテンツデータ１Ａに含まれるアニメーションデータがコンテンツデータ２Ａに含まれるアニメーションデータと合成され、後述するコンテンツデータ３Ａが記憶される。
【００７７】
合成スクリプトは、合成スクリプトを含むコンテンツデータ１Ａのキーフレーム２からの各キーフレームに、コンテンツデータ２Ａの各キーフレームに含まれるオブジェクトデータを挿入することを記述したものであった。
【００７８】
したがって、コンテンツ合成装置１００は、コンテンツデータ１Ａのキーフレーム１を、新たなキーフレーム１とする。
【００７９】
次に、コンテンツデータ２Ａのキーフレーム１に含まれるオブジェクトデータを、コンテンツデータ１Ａのキーフレーム２に挿入し、新たなキーフレーム２とする。
【００８０】
次に、コンテンツデータ２Ａのキーフレーム２に含まれるオブジェクトデータを、コンテンツデータ１Ａのキーフレーム３に挿入し、新たなキーフレーム３とする。
【００８１】
次に、コンテンツデータ１Ａのキーフレーム４を、新たなキーフレーム４とする。
【００８２】
最後に、新たなキーフレーム１〜キーフレーム４に基づき、ヘッダを生成し、ヘッダ、および、新たなキーフレーム１〜キーフレーム４を含むコンテンツデータ３Ａを合成して記憶する。
【００８３】
図５は、第１の実施の形態における第１の合成例において合成された後のコンテンツデータ３Ａのデータ構造を示す図である。図５を参照して、コンテンツ合成装置１００によりコンテンツデータ１Ａとコンテンツデータ２Ａとが合成されたコンテンツデータ３Ａは、ヘッダ、および、キーフレーム１〜キーフレーム４からなる。
【００８４】
ヘッダは、合成されたコンテンツデータ３Ａのキーフレーム１〜キーフレーム４に基づき、生成され、コンテンツデータ３Ａに含められる。
【００８５】
キーフレーム１は、図４（ａ）で説明したコンテンツデータ１Ａのキーフレーム１と同様である。
【００８６】
キーフレーム２は、コンテンツデータ１Ａのキーフレーム２に、図４（ｂ）で説明したコンテンツデータ２Ａのキーフレーム１に含まれるオブジェクトデータが挿入されたものである。
【００８７】
キーフレーム３は、コンテンツデータ１Ａのキーフレーム３に、コンテンツデータ２Ａのキーフレーム２に含まれるオブジェクトデータが挿入されたものである。
【００８８】
キーフレーム４は、コンテンツデータ１Ａのキーフレーム４と同様である。
図６は、第１の実施の形態における第１の合成例において合成されたコンテンツデータ３Ａを再生したときに表示されるアニメーションを説明するための図である。図６（ａ）〜図６（ｄ）は、順次再生される各キーフレームに対応する表示画面図である。図６（ａ）を参照して、まず、キーフレーム１では、円形の図形が画面上方の中央より少し左側に表示され、背景には、画像データで示される画像Ａが表示される。キーフレーム１とキーフレーム２との間では、１番目のキーフレームで表示された表示画面が継続表示される。
【００８９】
図６（ｂ）を参照して、キーフレーム２では、さらに、正方形の図形が画面の中央より少し下側に表示され、音楽データで示される音楽Ａが流れ出す。キーフレーム２とキーフレーム３との間では、円形の図形が下方向に動き、正方形の図形が上方向に動く。
【００９０】
図６（ｃ）を参照して、キーフレーム３では、円形の図形が画面の中央より少し下側の中央より少し左側に表示され、正方形の図形が画面の中央より少し上側に表示される。キーフレーム３とキーフレーム４との間では、円形の図形が上方向に動き、正方形の図形が徐々に消えていく。
【００９１】
図６（ｄ）を参照して、キーフレーム４では、円形の図形が画面の中央の少し左側で停止し、正方形の図形は完全に消える。なお、図６（ａ）〜図６（ｄ）では示さないが、コンテンツデータ３Ａが再生装置で再生されるときは、各キーフレームに対応する表示画面間は、補完されたフレームに対応する表示画面が表示される。
【００９２】
このように、コンテンツデータ１Ａに含まれる合成スクリプトにより、コンテンツデータ２Ａに含まれるオブジェクトデータをコンテンツデータ１Ａに挿入する合成処理が制御される。その結果、コンテンツデータ１Ａ側から他のコンテンツデータ２Ａを挿入する合成処理を制御することができる。
【００９３】
（第１の実施の形態における第２の合成例）
ここでは、コンテンツデータに含まれる合成スクリプトに基づき、他のコンテンツデータに含まれるデータをコンテンツデータに挿入し、コンテンツデータに所定のデータを挿入する合成例について説明する。
【００９４】
図７は、第１の実施の形態における第２の合成例において合成される前のコンテンツデータのデータ構造を示す図である。図７（ａ）は、合成スクリプトを含むコンテンツデータ１Ｂのデータ構造を示す図である。図７（ａ）を参照して、コンテンツデータ１Ｂは、ヘッダ、キーフレーム１〜キーフレーム４、および、合成スクリプトを含む。
【００９５】
キーフレーム１〜キーフレーム４は、それぞれ、オブジェクトデータを含む。これらのオブジェクトデータは、図４（ａ）で説明したコンテンツデータ１Ａのキーフレーム１〜キーフレーム４に含まれるオブジェクトデータと同様であるので説明は繰返さない。
【００９６】
コンテンツデータ１Ｂに含まれる合成スクリプトは、第１の制御内容として「他ファイルのオブジェクト挿入」を含み、第１のパラメータとして「キーフレーム２〜」を含む。また、第２の制御内容として「制御データの挿入」を含み、第２のパラメータとして「（ジャンプ  ４）キーフレーム２」とを含む。「他ファイルのオブジェクト挿入」については、図４（ａ）で説明したので説明は繰返さない。制御内容「制御データの挿入」は、括弧内のパラメータで指定される対象データを括弧外のパラメータで指定される対象位置に挿入することを示す。パラメータ「（ジャンプ  ４）キーフレーム２」は、制御内容で示される合成処理の対象データが、制御データ「ジャンプ  ４」であり、制御内容で示される合成処理の対象位置が、合成スクリプトを含むコンテンツデータ１Ｂに含まれるアニメーションデータのキーフレーム２であることを示す。
【００９７】
制御データとは、アニメーションデータのキーフレームの再生時に再生装置を制御するためのデータである。再生装置は、コンテンツデータのキーフレームに制御データが含まれる場合は、キーフレーム再生時に、その制御データに基づき、キーフレームを再生する。
【００９８】
図７（ｂ）は、コンテンツデータ２Ｂのデータ構造を示す図である。図７（ｂ）に示すコンテンツデータ２Ｂは、図４（ｂ）で説明したコンテンツデータ２Ａと同様であるので、説明は繰返さない。
【００９９】
そして、コンテンツ合成装置１００により、コンテンツデータ１Ｂ、および、コンテンツデータ２Ｂの入力が受付けられ、コンテンツデータ１Ｂ、または、コンテンツデータ２Ｂに合成スクリプトが含まれるか否かが判断される。コンテンツデータ１Ａに合成スクリプトが含まれるので、その合成スクリプトに基づき、コンテンツデータ１Ｂに含まれるアニメーションデータがコンテンツデータ２Ｂに含まれるアニメーションデータと合成され、後述するコンテンツデータ３Ｂが記憶される。
【０１００】
合成スクリプトは、合成スクリプトを含むアニメーションデータ１Ｂのキーフレーム２からの各キーフレームに、後述する他のアニメーションデータ２Ｂの各キーフレームに含まれるオブジェクトデータを挿入することを記述したスクリプトと、キーフレーム４にジャンプすることを示す「ジャンプ  ４」という制御データをアニメーションデータ１Ｂのキーフレーム２に挿入することを記述したものであった。
【０１０１】
したがって、コンテンツ合成装置１００は、コンテンツデータ１Ｂのキーフレーム１を、新たなキーフレーム１とする。
【０１０２】
次に、コンテンツデータ２Ｂのキーフレーム１に含まれるオブジェクトデータ、および、制御データ「ジャンプ  ４」を、コンテンツデータ１Ｂのキーフレーム２に挿入し、新たなキーフレーム２とする。
【０１０３】
次に、コンテンツデータ２Ｂのキーフレーム２に含まれるオブジェクトデータを、コンテンツデータ１Ｂのキーフレーム３に挿入し、コンテンツデータ３Ｂのキーフレーム３とする。
【０１０４】
次に、コンテンツデータ１Ｂのキーフレーム４を、新たなキーフレーム４とする。
【０１０５】
最後に、新たなキーフレーム１〜キーフレーム４に基づき、ヘッダを生成し、ヘッダ、および、新たなキーフレーム１〜キーフレーム４を含むコンテンツデータ３Ｂを合成して記憶する。
【０１０６】
図８は、第１の実施の形態における第２の合成例において合成された後のコンテンツデータ３Ｂのデータ構造を示す図である。図８を参照して、コンテンツ合成装置１００によりコンテンツデータ１Ｂとコンテンツデータ２Ｂとが合成されたコンテンツデータ３Ｂは、ヘッダ、および、キーフレーム１〜キーフレーム４からなる。ヘッダについては、図５で説明したので説明は繰返さない。
【０１０７】
キーフレーム１は、図７（ａ）で説明したコンテンツデータ１Ｂのキーフレーム１と同様である。
【０１０８】
キーフレーム２は、コンテンツデータ１Ｂのキーフレーム２に、図７（ｂ）で説明したコンテンツデータ２Ｂのキーフレーム１に含まれるオブジェクトデータが挿入され、制御データ「ジャンプ  ４」が挿入されたものである。
【０１０９】
キーフレーム３は、コンテンツデータ１Ｂのキーフレーム３に、コンテンツデータ２Ｂのキーフレーム２に含まれるオブジェクトデータが挿入されたものである。
【０１１０】
キーフレーム４は、コンテンツデータ１Ｂのキーフレーム４と同様である。
図９は、第１の実施の形態における第２の合成例において合成されたコンテンツデータ３Ｂを再生したときに表示されるアニメーションを説明するための図である。図９（ａ）〜図９（ｄ）は、順次再生される各キーフレームに対応する表示画面図である。図９（ａ）を参照して、まず、キーフレーム１では、円形の図形が画面上方の中央より少し左側に表示される。キーフレーム１とキーフレーム２との間では、１番目のキーフレームで表示された表示画面が継続表示される。
【０１１１】
図９（ｂ）を参照して、キーフレーム２では、さらに、正方形の図形が画面の中央より少し下側に表示される。図９（ｃ）を参照して、制御データ「ジャンプ４」にしたがって、キーフレーム３は、再生の対象から除外される。キーフレーム２とキーフレーム４との間では、円形の図形が下方向に動き、正方形の図形が徐々に消えていく。
【０１１２】
図９（ｄ）を参照して、キーフレーム４では、円形の図形が画面の中心より少し左側で停止し、正方形の図形は完全に消える。
【０１１３】
このように、コンテンツデータ１Ｂに含まれる複数のスクリプトを含む合成スクリプトにより、コンテンツデータ２Ｂに含まれるオブジェクトデータをコンテンツデータ１Ｂと合成する合成処理が制御される。その結果、コンテンツデータ１Ｂ側から他のコンテンツデータ２Ｂを合成する合成処理を制御することができる。
【０１１４】
（第１の実施の形態における第３の合成例）
ここでは、コンテンツデータに含まれる合成スクリプトに基づき、他のコンテンツデータをコンテンツデータに挿入する合成例ついて説明する。
【０１１５】
図１０は、第１の実施の形態における第３の合成例において合成される前のコンテンツデータのデータ構造を示す図である。図１０（ａ）は、合成スクリプトを含むコンテンツデータ１Ｃのデータ構造を示す図である。図１０（ｃ）を参照して、コンテンツデータ１Ｃは、ヘッダ、キーフレーム１〜キーフレーム２、および、合成スクリプトを含む。
【０１１６】
キーフレーム１〜キーフレーム２は、それぞれ、図７（ａ）で説明したコンテンツデータ１Ｂのキーフレーム２〜キーフレーム３に含まれるオブジェクトデータと同様であるので説明は繰返さない。
【０１１７】
コンテンツデータ２Ｃに含まれる合成スクリプトは、制御内容として「キーフレーム追加」を含み、パラメータとして「キーフレーム１の前」を含む。制御内容「キーフレーム追加」は、他のコンテンツデータ２Ｃに含まれるアニメーションデータの各キーフレームを、パラメータで指定される対象位置に挿入することを示す。パラメータ「キーフレーム１の前」は、制御内容で示される合成処理の対象位置が、合成スクリプトを含むコンテンツデータ１Ｃに含まれるアニメーションデータのキーフレーム１の前であることを示す。
【０１１８】
図１０（ｂ）は、コンテンツデータ２Ｃのデータ構造を示す図である。図１０（ｂ）を参照して、コンテンツデータ２Ｃは、図７（ｂ）で説明したコンテンツデータ２Ｂと同様であるので、説明は繰返さない。
【０１１９】
そして、コンテンツ合成装置１００により、コンテンツデータ１Ｃ、および、コンテンツデータ２Ｃの入力が受付けられ、コンテンツデータ１Ｃ、または、コンテンツデータ２Ｃに合成スクリプトが含まれるか否かが判断される。コンテンツデータ１Ｃに合成スクリプトが含まれるので、その合成スクリプトに基づき、コンテンツデータ１Ｃに含まれるアニメーションデータがコンテンツデータ２Ｃに含まれるアニメーションデータと合成され、後述するコンテンツデータ３Ｃが記憶される。
【０１２０】
合成スクリプトは、コンテンツデータ２Ｃに含まれるキーフレームを、合成スクリプトを含むコンテンツデータ１Ｃのキーフレーム１の前に追加することを記述したものであった。
【０１２１】
したがって、コンテンツ合成装置１００は、コンテンツデータ２Ｃのキーフレーム１およびキーフレーム２を、コンテンツデータ１Ｃのキーフレーム１の前に追加し、新たなキーフレーム１およびキーフレーム２とする。
【０１２２】
次に、コンテンツデータ１Ｃのキーフレーム１およびキーフレーム２を、コンテンツデータ３Ｃのキーフレーム３およびキーフレーム４とする。
【０１２３】
最後に、新たなキーフレーム１〜キーフレーム４に基づき、ヘッダを生成し、ヘッダ、および、新たなキーフレーム１〜キーフレーム４を含むコンテンツデータ３Ｃを合成して記憶する。
【０１２４】
図１１は、第１の実施の形態における第３の合成例において合成された後のコンテンツデータ３Ｃのデータ構造を示す図である。図１１を参照して、コンテンツ合成装置１００によりコンテンツデータ１Ｃとコンテンツデータ２Ｃとが合成されたコンテンツデータ３Ｃは、ヘッダ、および、キーフレーム１〜キーフレーム４からなる。
【０１２５】
キーフレーム１、および、キーフレーム２は、それぞれ、図１０（ｂ）で説明したコンテンツデータ２Ｃのキーフレーム１、および、キーフレーム２と同様である。
【０１２６】
キーフレーム３、および、キーフレーム４は、それぞれ、図１０（ａ）で説明したコンテンツデータ１Ｃのキーフレーム１、および、キーフレーム２と同様である。
【０１２７】
このように、コンテンツデータ１Ｃに含まれる合成スクリプトにより、コンテンツデータ２Ｃに含まれるキーフレームをコンテンツデータ１Ｃの所定の箇所に追加する合成処理が制御される。その結果、コンテンツデータ１Ｃ側から他のコンテンツデータ２Ｃを追加する合成処理を制御することができる。
【０１２８】
（第１の実施の形態における第４の合成例）
ここでは、コンテンツデータに含まれる合成スクリプトに基づき、コンテンツデータに含まれる所定のデータをほかのコンテンツデータに変更する合成例ついて説明する。
【０１２９】
図１２は、第１の実施の形態における第４の合成例において合成される前のコンテンツデータのデータ構造を示す図である。図１２（ａ）は、合成スクリプトを含むコンテンツデータ１Ｅのデータ構造を示す図である。図１２（ａ）を参照して、コンテンツデータ１Ｅは、ヘッダ、キーフレーム１〜キーフレーム２、および、合成スクリプトを含む。
【０１３０】
キーフレーム１、および、キーフレーム２は、顔を表す図形を示すオブジェクトデータＡと、吹出しを表す図形を示すオブジェクトデータＢと、文字データＡとを含む。
【０１３１】
キーフレーム１に含まれるオブジェクトデータＡは、顔を表す図形が画面の左下にあることを示している。また、キーフレーム２に含まれるオブジェクトデータＡは、顔を表す図形が画面の右下にあることを示している。
【０１３２】
キーフレーム１に含まれるオブジェクトデータＢは、吹出しを表す図形が画面の右上にあることを示している。また、キーフレーム２に含まれるオブジェクトデータＢは、吹出しを表す図形が画面の上方にあることを示している。
【０１３３】
キーフレーム１、および、キーフレーム２に含まれる文字データＡは、それぞれ、文字データＡがオブジェクトデータＢの内部に位置することを示している。
【０１３４】
コンテンツデータ１Ｅに含まれる合成スクリプトは、制御内容として「他ファイルのデータに変更」を含み、パラメータとして「文字データＡ」を含む。制御内容「他ファイルのデータに変更」は、パラメータで指定される対象データを他のコンテンツデータ２Ｅに含まれるデータに変更することを示す。パラメータ「文字データＡ」は、制御内容で示される合成処理の対象データが、合成スクリプトを含むコンテンツデータ１Ｅに含まれるアニメーションデータのキーフレームに含まれる文字データＡであることを示す。
【０１３５】
図１２（ｂ）は、変更するコンテンツデータ２Ｅを示す図である。図１２（ｂ）を参照して、コンテンツデータ２Ｅは、“Ｈｅｌｌｏ，Ｗｏｒｌｄ！”という文字列からなる文字データを含む。
【０１３６】
そして、コンテンツ合成装置１００により、コンテンツデータ１Ｅ、および、コンテンツデータ２Ｅの入力が受付けられ、コンテンツデータ１Ｅ、または、コンテンツデータ２Ｅに合成スクリプトが含まれるか否かが判断される。コンテンツデータ１Ｅに合成スクリプトが含まれるので、その合成スクリプトに基づき、コンテンツデータ１Ｅがコンテンツデータ２Ｅと合成され、後述するコンテンツデータ３Ｅが記憶される。
【０１３７】
合成スクリプトは、コンテンツデータ１Ｅのキーフレームに含まれる所定のデータを、コンテンツデータ２Ｅに含まれるデータに変更することを記述したものであった。
【０１３８】
したがって、コンテンツ合成装置１００は、コンテンツデータ１Ｅに含まれる合成スクリプトに基づき、コンテンツデータ１Ｅのキーフレーム１およびキーフレーム２に含まれる文字データＡを、それぞれ、コンテンツデータ２Ｅに含まれる“Ｈｅｌｌｏ，Ｗｏｒｌｄ！”という文字列からなる文字データに変更し、新たなキーフレーム１およびキーフレーム２とする。
【０１３９】
最後に、新たなキーフレーム１〜キーフレーム２に基づき、ヘッダを生成し、ヘッダ、および、新たなキーフレーム１〜キーフレーム２を含むコンテンツデータ３Ｅを合成して記憶する。
【０１４０】
図１３は、第１の実施の形態における第４の合成例において合成された後のコンテンツデータ３Ｅのデータ構造を示す図である。図１３を参照して、コンテンツ合成装置１００によりコンテンツデータ１Ｅとオブジェクトデータ２Ｅとが合成されたコンテンツデータ３Ｅは、ヘッダ、および、キーフレーム１〜キーフレーム２からなる。
【０１４１】
キーフレーム１、および、キーフレーム２は、それぞれ、図１２（ａ）で説明したコンテンツデータ１Ｅのキーフレーム１、および、キーフレーム２の文字データＡが、図１２（ｂ）で説明したコンテンツデータ２Ｅに含まれる文字データに変更されたものである。
【０１４２】
このように、コンテンツデータ１Ｅに含まれる合成スクリプトにより、コンテンツデータ１Ｅに含まれる所定のデータを他のデータに変更する合成処理を制御することができる。
【０１４３】
以上説明したように、第１の実施の形態におけるコンテンツ合成装置１００によれば、コンテンツデータの合成について記述した合成スクリプトを含む第１のコンテンツデータ、および、第２のコンテンツデータの入力が受付けられ、入力された第１のコンテンツデータに含まれる合成スクリプトに基づき、入力された第１のコンテンツデータが入力された第２のコンテンツデータと合成される。このため、第１のコンテンツデータに含まれる合成スクリプトにより、合成処理が制御される。また、第１のコンテンツデータに合成スクリプトが含まれるので、第１のコンテンツデータを第２のコンテンツデータと合成するときに、合成スクリプトを新たに用意する必要がない。その結果、コンテンツデータ側から合成処理を制御することができるとともに、コンテンツデータの合成に必要な合成スクリプトを新たに用意する必要がなくなる。
【０１４４】
なお、第１の実施の形態においては、コンテンツ合成装置１００で行なわれる処理について説明したが、図３に示した処理をコンピュータで実行するコンテンツ合成方法、図３に示した処理をコンピュータに実行させるためのコンテンツ合成プログラム、コンテンツ合成プログラムを記録したコンピュータ読取可能な記録媒体、図４（ａ），図７（ａ），図１０（ａ），図１２（ａ）に示したコンテンツデータのデータ構造、および、そのデータ構造のコンテンツデータを記録したコンピュータ読取可能な記録媒体として発明を捉えることができる。
【０１４５】
［第２の実施の形態］
第２の実施の形態においては、第１の実施の形態において説明した合成スクリプトに複数の属性のそれぞれに対応するスクリプトを含む場合について説明する。
【０１４６】
図１４は、第２の実施の形態におけるコンテンツ合成装置１００Ａの機能の概略を示す図である。図１４を参照して、コンテンツ合成装置１００Ａの制御部１１０Ａは、入力受付部１１１と、合成処理部１１２Ａと、属性判別部１１３とを含む。コンテンツ合成装置１００の記憶部１３０は、複数のコンテンツデータを記憶する。コンテンツデータは、アニメーションデータと合成スクリプトとを含むコンテンツデータと、アニメーションデータを含むコンテンツデータとを含む。
【０１４７】
入力受付部１１１については、第１の実施の形態における図２で説明したので説明は繰返さない。
【０１４８】
合成処理部１１２Ａは、コンテンツデータ１０に含まれる合成スクリプトに、コンテンツデータ２０に含まれるアニメーションデータの複数の属性のそれぞれに対応するスクリプトが含まれる場合は、属性判定部１１３に、コンテンツデータ２０を送る。
【０１４９】
属性判別部１１３は、合成処理部１１２Ａから送られたコンテンツデータ２０に含まれるアニメーションデータの属性を判別し、判別結果を合成処理部１１２Ａに返す。アニメーションデータの属性とは、アニメーションデータに含まれるオブジェクトデータの数、キーフレームの数、画像データの数、音楽データの数などのアニメーションデータの特徴を示す指標である。
【０１５０】
具体的には、たとえば、属性判別部１１３は、コンテンツデータ２０に含まれるオブジェクトデータの数がＷで、キーフレームの数がＸで、画像データの数がＹで、音楽データの数がＺである場合は、ＷＸＹＺという数列をコンテンツデータ２０に含まれるアニメーションデータの属性として、合成処理部１１２Ａに返す。なお、アニメーションデータの属性は、これに限定されず、たとえば、アニメーションデータの内容によって指定される番号であってもよいし、アニメーションデータの著作者の情報であってもよいし、アニメーションデータに対して一意に割付けられる番号であってもよいし、これらを複数組合わせたものであってもよい。
【０１５１】
合成処理部１１２Ａは、属性判別部１１３で判別された判別結果で示されるコンテンツデータ２０に含まれるアニメーションデータの属性に対応したスクリプトに基づき、入力受付部１１１により入力されたコンテンツデータ１０に含まれるアニメーションデータをコンテンツデータ２０に含まれるアニメーションデータと合成する。そして、合成処理部１１２Ａは、合成されたコンテンツデータ３０を記憶部１３０に記憶させる。なお、合成処理部１１２Ａは、合成されたコンテンツデータ３０を、直接、通信部１６０によりネットワーク５００を介して他のＰＣ等に送信してもよいし、外部記憶装置１７０により記録媒体１７１に記録してもよい。
【０１５２】
図１５は、第２の実施の形態におけるコンテンツ合成装置１００Ａで実行されるデータ合成処理の流れを示すフローチャートである。データ合成処理は、図３で説明したコンテンツ合成処理のステップＳ１３で実行される処理である。図１５を参照して、まず、ステップＳ２１で、属性判別部１１３により、ステップＳ１１で入力されたコンテンツデータ２０に含まれるアニメーションデータの属性を判別する属性判別処理が実行される。属性判別処理については、図１６で後述する。
【０１５３】
次に、ステップＳ２２では、合成処理部１１２Ａにより、ステップＳ２１で判別されたコンテンツデータ２０に含まれるアニメーションデータの属性に対応したスクリプトが、コンテンツデータ１０の合成スクリプトに含まれるか否かが判定される。そして、コンテンツデータ２０に含まれるアニメーションデータの属性に対応したスクリプトが、コンテンツデータ１０の合成スクリプトに含まれる場合（ステップＳ２２でＹｅｓ）は、ステップＳ２３で、合成処理部１１２Ａにより、ステップＳ２１で判別されたコンテンツデータ２０に含まれるアニメーションデータの属性に対応したスクリプトに基づき、ステップＳ１１で入力されたコンテンツデータ１０が、ステップＳ１１で入力されたコンテンツデータ２０と合成される合成処理が実行され、コンテンツ合成処理に戻る。
【０１５４】
一方、コンテンツデータ２０に含まれるアニメーションデータの属性に対応したスクリプトが、コンテンツデータ１０の合成スクリプトに含まれない場合（ステップＳ２２でＮｏ）は、コンテンツ合成処理に戻る。
【０１５５】
図１６は、第２の実施の形態におけるコンテンツ合成装置１００Ａで実行される属性判別処理の流れを示すフローチャートである。属性判別処理は、図１５で説明したデータ合成処理のステップＳ２１で属性判別部１１３により実行される処理である。図１６を参照して、まず、ステップＳ３１で、コンテンツデータ２０のキーフレームに含まれるオブジェクト数Ｗが判定される。そして、ステップＳ３２で、コンテンツデータ２０に含まれるキーフレーム数Ｘが判定される。
【０１５６】
また、ステップＳ３３で、コンテンツデータ２０のキーフレームに含まれる画像データ数Ｙが判定される。さらに、ステップＳ３４で、コンテンツデータ２０のキーフレームに含まれる音楽データ数Ｚが判定される。
【０１５７】
最後に、ステップＳ３５で、ステップＳ３１〜ステップＳ３４での判定に基づき、ＷＸＹＺという数列が、コンテンツデータ２０に含まれるキーフレームで定義されるアニメーションデータの属性として、データ合成処理に返される。
【０１５８】
（第２の実施の形態における第１の合成例）
ここでは、コンテンツデータの合成スクリプトに含まれる複数の属性に対応するスクリプトに基づき、コンテンツデータを他のコンテンツデータと合成する合成例ついて説明する。
【０１５９】
図１７は、第２の実施の形態における第１の合成例において合成される前のコンテンツデータのデータ構造を示す図である。図１７（ａ）は、合成スクリプトを含むコンテンツデータ１Ｆのデータ構造を示す図である。図１７（ａ）を参照して、コンテンツデータ１Ｆは、ヘッダ、キーフレーム１〜キーフレーム３、および、合成スクリプトを含む。
【０１６０】
キーフレーム１〜キーフレーム３は、それぞれ、図７で説明したコンテンツデータ１Ｂのキーフレーム２〜キーフレーム４に含まれるオブジェクトデータと同様であるので説明は繰返さない。
【０１６１】
コンテンツデータ１Ｆに含まれる合成スクリプトは、属性「０１０３００」に対応する合成スクリプトと、属性「０１０２００」に対応する合成スクリプトとを含む。属性「０１０３００」に対応する合成スクリプトは、制御内容として「他ファイルのオブジェクト挿入」を含み、パラメータとして「キーフレーム１〜」を含む。また、属性「０１０２００」のアニメーションデータに対応する合成スクリプトは、制御内容として「他ファイルのオブジェクト挿入」を含み、パラメータとして「キーフレーム２〜」を含む。
【０１６２】
制御内容「他ファイルのオブジェクト挿入」、パラメータ「キーフレーム２〜」、および、パラメータ「キーフレーム１〜」については、図４（ａ）で説明したので説明は繰返さない。
【０１６３】
属性「０１０３００」は、アニメーションデータに含まれるオブジェクトデータの数Ｗが０１で、キーフレームの数Ｘが０３で、画像データの数Ｙが０で、音楽データの数Ｚが０であることを示す。同様に、属性「０１０２００」は、アニメーションデータに含まれるオブジェクトデータ、画像データ、および、音楽データの数が属性「０１０３００」と同一で、キーフレームの数Ｘが０２であることを示す。
【０１６４】
図１７（ｂ）は、コンテンツデータ２ＦＡのデータ構造を示す図である。図１７（ｂ）に示すコンテンツデータ２ＦＡは、図４（ｂ）で説明したコンテンツデータ２Ａと同様であるので、説明は繰返さない。なお、コンテンツデータ２ＦＡに含まれるアニメーションデータに含まれるオブジェクトデータの数Ｗが０１で、キーフレームの数Ｘが０２で、画像データの数Ｙが０で、音楽データの数Ｚが０であるので、コンテンツデータ２ＦＡに含まれるアニメーションデータの属性は、「０１０２００」である。
【０１６５】
図１７（ｃ）は、コンテンツデータ２ＦＢのデータ構造を示す図である。図１７（ｃ）を参照して、コンテンツデータ２ＦＢは、ヘッダ、および、キーフレーム１〜キーフレーム３を含む。
【０１６６】
キーフレーム１、および、キーフレーム２は、図４（ｂ）で説明したコンテンツデータ２Ａのキーフレーム１、および、キーフレーム２と同様である。
【０１６７】
キーフレーム３は、キーフレーム１、および、キーフレーム２に含まれるオブジェクトデータが示す図形と同じ図形を示し、その図形が画面の下方の中央にあることを示すオブジェクトデータを含む。
【０１６８】
なお、コンテンツデータ２ＦＢに含まれるアニメーションデータに含まれるオブジェクトデータの数Ｗが０１で、キーフレームの数Ｘが０３で、画像データの数Ｙが０で、音楽データの数Ｚが０であるので、コンテンツデータ２ＦＡに含まれるアニメーションデータの属性は、「０１０３００」である。
【０１６９】
まず、コンテンツ合成装置１００Ａに、コンテンツデータ１Ｆと、コンテンツデータ２ＦＡが入力される場合について説明する。この場合、コンテンツ合成装置１００Ａにより、コンテンツデータ１Ｆ、または、コンテンツデータ２ＦＡに合成スクリプトが含まれるか否かが判断される。合成スクリプトがコンテンツデータ１Ｆに含まれるので、次に、コンテンツデータ２ＦＡに含まれるアニメーションデータの属性が判断される。コンテンツデータ２ＦＡに含まれるアニメーションデータの属性が「０１０２００」であるので、属性「０１０２００」に対応するスクリプトに基づき、コンテンツデータ１Ｆに含まれるアニメーションデータがコンテンツデータ２ＦＡと合成され、新たなコンテンツデータが記憶される。
【０１７０】
次に、コンテンツ合成装置１００Ａに、コンテンツデータ１Ｆと、コンテンツデータ２ＦＢが入力される場合について説明する。この場合、コンテンツ合成装置１００Ａにより、コンテンツデータ１Ｆ、または、コンテンツデータ２ＦＢに合成スクリプトが含まれるか否かが判断される。合成スクリプトがコンテンツデータ１Ｆに含まれるので、次に、コンテンツデータ２ＦＢに含まれるアニメーションデータの属性が判断される。コンテンツデータ２ＦＢに含まれるアニメーションデータの属性が「０１０３００」であるので、属性「０１０３００」に対応するスクリプトに基づき、コンテンツデータ１Ｆに含まれるアニメーションデータがコンテンツデータ２ＦＢと合成され、新たなコンテンツデータが記憶される。
【０１７１】
合成スクリプトは、属性「０１０３００」に対応するスクリプトと属性「０１０２００」に対応するスクリプトとを含むものであった。属性「０１０３００」に対応するスクリプトは、合成スクリプトを含むコンテンツデータ１Ｆに含まれるアニメーションデータのキーフレーム１からの各キーフレームに、属性「０１０３００」のアニメーションデータを含むコンテンツデータ２ＦＡに含まれるアニメーションデータの各キーフレームに含まれるオブジェクトデータを挿入することを記述したものであった。
【０１７２】
また、属性「０１０２００」に対応するスクリプトは、合成スクリプトを含むコンテンツデータ１Ｆに含まれるアニメーションデータのキーフレーム２からの各キーフレームに、属性「０１０２００」のアニメーションデータを含むコンテンツデータ２ＦＢに含まれるアニメーションデータの各キーフレームに含まれるオブジェクトデータを挿入することを記述したものであった。
【０１７３】
したがって、コンテンツデータ１Ｆとコンテンツデータ２ＦＡとが入力された場合、コンテンツ合成装置１００は、コンテンツデータ１Ｆのキーフレーム１を、新たなキーフレーム１とする。
【０１７４】
次に、コンテンツデータ２ＦＡのキーフレーム１に含まれるオブジェクトデータを、コンテンツデータ１Ｆのキーフレーム２に挿入し、新たなキーフレーム２とする。
【０１７５】
次に、コンテンツデータ２ＦＡのキーフレーム２に含まれるオブジェクトデータを、コンテンツデータ１Ｆのキーフレーム３に挿入され、新たなキーフレーム３とする。
【０１７６】
最後に、新たなキーフレーム１〜キーフレーム３に基づき、ヘッダが生成し、ヘッダ、および、新たなキーフレーム１〜キーフレーム３を含むコンテンツデータを合成して記憶する。
【０１７７】
また、コンテンツデータ１Ｆとコンテンツデータ２ＦＢとが入力された場合、コンテンツ合成装置１００は、コンテンツデータ２ＦＢのキーフレーム１に含まれるオブジェクトデータを、コンテンツデータ１Ｆのキーフレーム１に挿入し、新たなキーフレーム１とする。
【０１７８】
次に、コンテンツデータ２ＦＢのキーフレーム２に含まれるオブジェクトデータを、コンテンツデータ１Ｆのキーフレーム２に挿入し、新たなキーフレーム２とする。
【０１７９】
次に、コンテンツデータ２ＦＢのキーフレーム３に含まれるオブジェクトデータを、コンテンツデータ１Ｆのキーフレーム３に挿入し、新たなキーフレーム３とする。
【０１８０】
最後に、新たなキーフレーム１〜キーフレーム３に基づき、ヘッダを生成し、ヘッダ、および、新たなキーフレーム１〜キーフレーム３を含むコンテンツデータを合成して記憶する。
【０１８１】
図１８は、第２の実施の形態における第１の合成例において合成されたコンテンツデータを再生したときに表示されるアニメーションを説明するための図である。図１８（ａ）〜図１８（ｃ）は、コンテンツデータ１Ｆが、属性が「０１０２００」であるアニメーションデータを含むコンテンツデータ２ＦＡと合成されたコンテンツデータを再生したときに順次再生される各キーフレームに対応する表示画面図である。
【０１８２】
図１８（ａ）では、まず、円形の図形が画面上方の中央より少し左側に表示される。図１８（ａ）と図１８（ｂ）との間では、円形の図形が下方向に動く。図１８（ｂ）では、円形の図形が画面の中央より少し下側の中央より少し左側に表示され、正方形の図形が画面の中央より少し下側に表示される。図１８（ｂ）と図１８（ｃ）との間では、円形の図形が上方向に動き、正方形の図形が円形の図形より速い速度で上方向に動く。図１８（ｃ）では、円形の図形が画面の中央の少し左側で停止し、正方形の図形が画面の中央の少し上側で停止する。
【０１８３】
図１８（ｄ）〜図１８（ｆ）は、コンテンツデータ１Ｆが、属性が「０１０３００」であるアニメーションデータを含むコンテンツデータ２ＦＢと合成されたコンテンツデータを再生したときに順次再生される各キーフレームに対応する表示画面図である。
【０１８４】
図１８（ｄ）では、まず、円形の図形が画面上方の中央より少し左側に表示され、正方形の図形が画面の中央より少し下側に表示される。図１８（ｄ）と図１８（ｅ）との間では、円形の図形が下方向に動き、正方形の図形が上方向に動く。図１８（ｅ）では、円形の図形が画面の中央より少し下側の中央より少し左側に表示され、正方形の図形が画面の中央の少し上側に表示される。図１８（ｅ）と図１８（ｆ）との間では、円形の図形が上方向に動き、正方形の図形が下方向に動く。図１８（ｆ）では、円形の図形が画面の中央の少し左側で停止し、正方形の図形が画面の下方の中央で停止する。
【０１８５】
このように、コンテンツデータ１Ｆに含まれる合成スクリプトに含まれる判別された属性に対応したスクリプトに基づき、コンテンツデータ１Ｆが、他のコンテンツデータと合成される合成処理が制御される。その結果、コンテンツデータ側から合成処理を制御することができるとともに、コンテンツデータの属性に応じた合成処理をすることができる。
【０１８６】
なお、第２の実施の形態においては、コンテンツデータの属性を、コンテンツデータに含まれるキーフレームで定義されるアニメーションデータの属性として説明したが、これに限定されず、そのコンテンツデータの特徴を示す指標であれば他のものであってもよい。
【０１８７】
以上説明したように、第２の実施の形態におけるコンテンツ合成装置１００Ａによれば、コンテンツデータの合成について記述した合成スクリプトを含む第１のコンテンツデータ、および、第２のコンテンツデータの入力が受付けられ、入力された第２のコンテンツデータの属性が判別され、入力された第１のコンテンツデータに含まれる合成スクリプトに含まれる判別された属性に対応したスクリプトに基づき、第１のコンテンツデータが第２のコンテンツデータと合成される。このため、第２のコンテンツデータの属性に対応するスクリプトにより、合成処理が制御される。その結果、コンテンツデータ側から合成処理を制御することができるとともに、コンテンツデータの属性に応じた合成処理をすることができる。
【０１８８】
なお、第２の実施の形態においては、コンテンツ合成装置１００Ａで行なわれる処理について説明したが、図１５，図１６に示した処理をコンピュータで実行するコンテンツ合成方法、図１５，図１６に示した処理をコンピュータに実行させるためのコンテンツ合成プログラム、コンテンツ合成プログラムを記録したコンピュータ読取可能な記録媒体、図１７（ａ）に示したコンテンツデータのデータ構造、および、そのデータ構造のコンテンツデータを記録したコンピュータ読取可能な記録媒体として発明を捉えることができる。
【０１８９】
［第３の実施の形態］
第３の実施の形態においては、第１の実施の形態において説明した合成スクリプトに、コンテンツ合成装置１００Ｂにより合成される時刻に応じたスクリプトを含む場合について説明する。
【０１９０】
図１９は、第３の実施の形態におけるコンテンツ合成装置１００Ｂの機能の概略を示す図である。図１９を参照して、コンテンツ合成装置１００Ｂの制御部１１０Ｂは、入力受付部１１１と、合成処理部１１２Ｂと、時刻取得部１１４とを含む。コンテンツ合成装置１００Ｂの記憶部１３０は、複数のコンテンツデータを記憶する。コンテンツデータは、アニメーションデータと合成スクリプトとを含むコンテンツデータと、アニメーションデータを含むコンテンツデータとを含む。入力受付部１１１についは、第１の実施の形態における図２で説明したので説明は繰返さない。
【０１９１】
合成処理部１１２Ｂは、コンテンツデータ１０に含まれる合成スクリプトに、コンテンツデータが合成される時刻に応じたスクリプトが含まれる場合は、時刻取得部１１４に時刻の取得を指示する。
【０１９２】
時刻取得部１１４は、合成処理部１１２Ｂからの指示に応じて、現在時刻を取得し、合成処理部１１２Ｂに送る。現在時刻の取得は、たとえば、コンテンツ合成装置１００Ｂの計時機能などによって実現されるが、他の方法により実現されてもよい。
【０１９３】
合成処理部１１２Ｂは、コンテンツデータ１０に含まれる合成スクリプトの時刻取得部１１４で取得された時刻に応じたスクリプトに基づき、入力受付部１１１により入力されたコンテンツデータ１０を入力受付部１１１により入力されたコンテンツデータ２０と合成する。そして、合成処理部１１２Ｂは、合成されたコンテンツデータ３０を記憶部１３０に記憶させる。なお、合成処理部１１２Ｂは、合成されたコンテンツデータ３０を、直接、通信部１６０によりネットワーク５００を介して他のＰＣ等に送信してもよいし、外部記憶装置１７０により記録媒体１７１に記録してもよい。
【０１９４】
図２０は、第３の実施の形態におけるコンテンツ合成装置１００Ｂで実行されるデータ合成処理の流れを示すフローチャートである。データ合成処理は、図３で説明したコンテンツ合成処理のステップＳ１３で実行される処理である。図２０を参照して、まず、ステップＳ４１で、合成スクリプトに時刻に応じたスクリプトが含まれるか否かが判断される。合成スクリプトの時刻に応じたスクリプトが含まれる場合（ステップＳ４１でＹｅｓ）は、ステップＳ４２で、時刻取得部１１４により、現在時刻が取得され、ステップＳ４３で、合成処理部１１２Ｂにより、ステップＳ４２で取得された現在時刻に応じたスクリプトに基づき、ステップＳ１１で入力されたコンテンツデータ１０が、ステップＳ１１で入力されたコンテンツデータ２０と合成される合成処理が実行され、コンテンツ合成処理に戻る。
【０１９５】
一方、合成スクリプトに時刻に応じたスクリプトが含まれない場合（ステップＳ４１でＮｏ）は、コンテンツ合成処理に戻る。
【０１９６】
（第３の実施の形態における第１の合成例）
図２１は、第３の実施の形態における第１の合成例において合成される前のコンテンツデータのデータ構造を示す図である。図２１（ａ）は、合成スクリプトを含むコンテンツデータ１Ｉのデータ構造を示す図である。図２１（ａ）を参照して、コンテンツデータ１Ｉは、ヘッダ、キーフレーム１〜キーフレーム３、および、合成スクリプトを含む。
【０１９７】
キーフレーム１〜キーフレーム３は、図１７（ａ）で説明したコンテンツデータ１Ｆのキーフレーム１〜キーフレーム３と同様であるので説明は繰返さない。
【０１９８】
コンテンツデータ１Ｉに含まれる合成スクリプトは、時刻「午前」に対応する合成スクリプトと、時刻「午後」に対応する合成スクリプトを含む。時刻「午前」に対応する合成スクリプトは、制御内容として「他ファイルのオブジェクト挿入」を含み、パラメータとして「キーフレーム１〜」を含む。また、時刻「午後」に対応する合成スクリプトは、制御内容として「他ファイルのオブジェクト挿入」を含み、パラメータとして「キーフレーム２〜」を含む。制御内容「他ファイルのオブジェクト挿入」、パラメータ「キーフレーム１〜」、および、パラメータ「キーフレーム２〜」については、図４（ａ）で説明したので説明は繰返さない。
【０１９９】
図２１（ｂ）は、コンテンツデータ２Ｉのデータ構造を示す図である。図２１（ｂ）に示すコンテンツデータ２Ｉは、図４（ｂ）で説明したコンテンツデータ２Ａと同様であるので、説明は繰返さない。
【０２００】
まず、コンテンツ合成装置１００Ｂで、コンテンツデータ１Ｉと、コンテンツデータ２Ｉとが合成される時刻が午前である場合について説明する。この場合、コンテンツ合成装置１００Ｂにより、コンテンツデータ１Ｉ、および、コンテンツデータ２Ｉの入力が受付けられ、合成スクリプトがコンテンツデータ１Ｉに含まれ、合成される時刻が午前であるので、午前に対応するスクリプトに基づき、コンテンツデータ１Ｉのキーフレーム１からの各キーフレームに、コンテンツデータ２Ｉの各キーフレームに含まれるオブジェクトデータが挿入され、新たなコンテンツデータが記憶される。
【０２０１】
次に、コンテンツ合成装置１００Ｂで、コンテンツデータ１Ｉと、コンテンツデータ２Ｉとが合成される時刻が午後である場合について説明する。この場合、コンテンツ合成装置１００Ｂにより、コンテンツデータ１Ｉ、および、コンテンツデータ２Ｉの入力が受付けられ、合成スクリプトがコンテンツデータ１Ｉに含まれ、合成される時刻が午後であるので、午後に対応するスクリプトに基づき、コンテンツデータ１Ｉのキーフレーム２からの各キーフレームに、コンテンツデータ２Ｉの各キーフレームに含まれるオブジェクトデータが挿入され、新たなコンテンツデータが記憶される。
【０２０２】
合成スクリプトは、午前と午後とに対応するスクリプトを含むものであった。午前に対応するスクリプトは、合成スクリプトを含むコンテンツデータ１Ｉのキーフレーム１からの各キーフレームに、コンテンツデータ２Ｉの各キーフレームに含まれるオブジェクトデータを挿入することを記述したスクリプトであった。午後に対応するスクリプトは、合成スクリプトを含むコンテンツデータ１Ｉのキーフレーム２からの各キーフレームに、コンテンツデータ２Ｉの各キーフレームに含まれるオブジェクトデータを挿入することを記述したスクリプトであった。
【０２０３】
したがって、コンテンツ合成装置１００Ｂは、合成される時刻が午前である場合は、コンテンツデータ２Ｉのキーフレーム１に含まれるオブジェクトデータを、コンテンツデータ１Ｉのキーフレーム１に挿入し、新たなキーフレーム１とする。
【０２０４】
次に、コンテンツデータ２Ｉのキーフレーム２に含まれるオブジェクトデータを、コンテンツデータ１Ｉのキーフレーム２に挿入し、新たなコンテンツデータのキーフレーム２とする。
【０２０５】
次に、コンテンツデータ１Ｉのキーフレーム３を、新たなコンテンツデータのキーフレーム３とする。
【０２０６】
最後に、新たなキーフレーム１〜キーフレーム３に基づき、ヘッダを生成し、ヘッダ、および、新たなキーフレーム１〜キーフレーム３を含むコンテンツデータを合成して記憶する。
【０２０７】
また、コンテンツ合成装置１００Ｂは、合成される時刻が午後である場合は、コンテンツデータ１Ｉのキーフレーム１を、新たなキーフレーム１とする。
【０２０８】
次に、コンテンツデータ２Ｉのキーフレーム１に含まれるオブジェクトデータを、コンテンツデータ１Ｉのキーフレーム２に挿入し、新たなキーフレーム２とする。
【０２０９】
次に、コンテンツデータ２Ｉのキーフレーム２に含まれるオブジェクトデータを、コンテンツデータ１Ｉのキーフレーム３に挿入し、新たなコンテンツデータのキーフレーム３とする。
【０２１０】
最後に、新たなキーフレーム１〜キーフレーム３に基づき、ヘッダを生成し、ヘッダ、および、新たなキーフレーム１〜キーフレーム３を含むコンテンツデータを合成して記憶する。
【０２１１】
図２２は、第３の実施の形態における第１の合成例において合成されたコンテンツデータを再生したときに表示されるアニメーションを説明するための図である。図２２（ａ）〜図２２（ｃ）は、コンテンツデータ１Ｉとコンテンツデータ２Ｉとが午前に合成されたコンテンツデータを再生したときに順次再生される各キーフレームに対応する表示画面図である。図２２（ａ）〜図２２（ｃ）は、それぞれ、図１８（ｄ）〜図１８（ｆ）と同様であるので説明は繰返さない。
【０２１２】
図２２（ｄ）〜図２２（ｆ）は、コンテンツデータ１Ｉとコンテンツデータ２Ｉとが午後に合成されたコンテンツデータを再生したときに順次再生される各キーフレームに対応する表示画面図である。図２２（ｄ）〜図２２（ｆ）は、それぞれ、図１８（ａ）〜図１８（ｆ）と同様であるので説明は繰返さない。
【０２１３】
このように、コンテンツデータ１Ｉに含まれる合成する時刻に応じたスクリプトにより、合成処理が制御される。その結果、コンテンツデータ１Ｉ側から合成処理を制御することができるとともに、コンテンツデータを合成する時刻に応じた合成処理をすることができる。
【０２１４】
以上説明したように、第３の実施の形態におけるコンテンツ合成装置１００Ｂによれば、コンテンツデータなどのコンテンツデータの合成について記述した合成スクリプトを含む第１のコンテンツデータ、および、第２のコンテンツデータの入力が受付けられ、現在時刻が取得され、入力された第１のコンテンツデータに含まれる合成スクリプトに含まれる取得された現在時刻に応じたスクリプトに基づき、第１のコンテンツデータが、入力された第２のコンテンツデータと合成される。このため、合成する時刻に応じたスクリプトにより、合成処理が制御される。その結果、コンテンツデータ側から合成処理を制御することができるとともに、コンテンツデータを合成する時刻に応じた合成処理をすることができる。
【０２１５】
なお、第３の実施の形態においては、コンテンツ合成装置１００Ｂで行なわれる処理について説明したが、図２０に示した処理をコンピュータで実行するコンテンツ合成方法、図２０に示した処理をコンピュータに実行させるためのコンテンツ合成プログラム、コンテンツ合成プログラムを記録したコンピュータ読取可能な記録媒体、図２１（ａ）に示したコンテンツデータのデータ構造、および、そのデータ構造のコンテンツデータを記録したコンピュータ読取可能な記録媒体として発明を捉えることができる。
【０２１６】
［第４の実施の形態］
第４の実施の形態においては、第１の実施の形態において説明した合成スクリプトに、コンテンツ合成装置１００Ｃにより合成される位置に応じたスクリプトを含む場合について説明する。
【０２１７】
図２３は、第４の実施の形態におけるコンテンツ合成装置１００Ｃの機能の概略を示す図である。図２３を参照して、コンテンツ合成装置１００Ｃの制御部１１０Ｃは、入力受付部１１１と、合成処理部１１２Ｃと、位置取得部１１５とを含む。コンテンツ合成装置１００Ｃの記憶部１３０は、複数のコンテンツデータを記憶する。コンテンツデータは、アニメーションデータと合成スクリプトとを含むコンテンツデータと、アニメーションデータを含むコンテンツデータとを含む。入力受付部１１１については、第１の実施の形態における図２で説明したので説明は繰返さない。
【０２１８】
合成処理部１１２Ｃは、入力受付部１１１により入力されたコンテンツデータ１０に含まれる合成スクリプトに、コンテンツデータが合成される位置に応じたスクリプトが含まれる場合は、位置取得部１１５に位置の取得を指示する。
【０２１９】
位置取得部１１５は、合成処理部１１２Ｃからの指示に応じて、コンテンツ合成装置１００Ｃの現在位置を取得し、合成処理部１１２Ｃに送る。現在位置の取得は、たとえば、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）などによって実現されるが、他の方法により実現されていもよい。
【０２２０】
合成処理部１１２Ｃは、コンテンツデータ１０に含まれる合成スクリプトの位置取得部１１５で取得された位置に応じたスクリプトに基づき、入力受付部１１１により入力されたコンテンツデータ１０を入力受付部１１１により入力されたコンテンツデータ２０と合成する。そして、合成処理部１１２Ｃは、合成されたコンテンツデータ３０を記憶部１３０に記憶させる。なお、合成処理部１１２Ｃは、合成されたコンテンツデータ３０を、直接、通信部１６０によりネットワーク５００を介して他のＰＣ等に送信してもよいし、外部記憶装置１７０により記録媒体１７１に記録してもよい。
【０２２１】
図２４は、第４の実施の形態におけるコンテンツ合成装置１００Ｃで実行されるデータ合成処理の流れを示すフローチャートである。データ合成処理は、図３で説明したコンテンツ合成処理のステップＳ１３で実行される処理である。図２４を参照して、まず、ステップＳ５１で、合成スクリプトに位置に応じたスクリプトが含まれるか否かが判断される。合成スクリプトの位置に応じたスクリプトが含まれる場合（ステップＳ５１でＹｅｓ）は、ステップＳ５２で、位置取得部１１５により、現在位置が取得され、ステップＳ５３で、合成処理部１１２Ｃにより、ステップＳ５３で取得された現在位置に応じたスクリプトに基づき、ステップＳ１１で入力されたコンテンツデータ１０が、ステップＳ１１で入力されたコンテンツデータ２０と合成される合成処理が実行され、コンテンツ合成処理に戻る。
【０２２２】
一方、合成スクリプトに位置に応じたスクリプトが含まれない場合（ステップＳ５１でＮｏ）は、コンテンツ合成処理に戻る。
【０２２３】
（第４の実施の形態における第１の合成例）
図２５は、第４の実施の形態における第１の合成例において合成される前のコンテンツデータのデータ構造を示す図である。図２５（ａ）は、合成スクリプトを含むコンテンツデータ１Ｊは、ヘッダ、キーフレーム１〜キーフレーム３、および、合成スクリプトを含む。
【０２２４】
キーフレーム１〜キーフレーム３は、図１７（ａ）で説明したコンテンツデータ１Ｆのキーフレーム１〜キーフレーム３と同様であるので説明は繰返さない。
【０２２５】
コンテンツデータ１Ｊに含まれる合成スクリプトは、位置「大阪」に対応する合成スクリプトと、位置「奈良」に対応する合成スクリプトを含む。位置「大阪」に対応する合成スクリプトは、制御内容として「他ファイルのオブジェクト挿入」を含み、パラメータとして「キーフレーム１〜」を含む。また、位置「奈良」に対応する合成スクリプトは、制御内容として「他ファイルのオブジェクト挿入」を含み、パラメータとして「キーフレーム２〜」を含む。制御内容「他ファイルのオブジェクト挿入」、パラメータ「キーフレーム１〜」、および、「キーフレーム２〜」については、図４（ａ）で説明したので説明は繰返さない。
【０２２６】
図２５（ｂ）は、コンテンツデータ２Ｊのデータ構造を示す図である。図２５（ｂ）に示すコンテンツデータ２Ｊは、図４（ｂ）で説明したコンテンツデータ２Ａと同様であるので、説明は繰返さない。
【０２２７】
まず、コンテンツ合成装置１００Ｃで、コンテンツデータ１Ｊと、コンテンツデータ２Ｊとが合成される位置が大阪である場合について説明する。この場合、コンテンツ合成装置１００Ｃにより、コンテンツデータ１Ｊ、および、コンテンツデータ２Ｊの入力が受付けられ、合成スクリプトがコンテンツデータ１Ｊに含まれ、合成される位置が大阪であるので、大阪に対応するスクリプトに基づき、コンテンツデータ１Ｊのキーフレーム１からの各キーフレームに、コンテンツデータ２Ｊの各キーフレームに含まれるオブジェクトデータが挿入され、新たなコンテンツデータが記憶される。コンテンツデータ１Ｊとコンテンツデータ２Ｊとが大阪で合成されたアニメーションデータを再生したときに順次再生される各キーフレームに対応する表示画面図は、図１８（ｄ）〜図１８（ｆ）と同様であるので説明は繰返さない。
【０２２８】
次に、コンテンツ合成装置１００Ｃで、コンテンツデータ１Ｊと、コンテンツデータ２Ｊとが合成される位置が奈良である場合について説明する。この場合、コンテンツ合成装置１００Ｃにより、コンテンツデータ１Ｊ、および、コンテンツデータ２Ｊの入力が受付けられ、合成スクリプトがコンテンツデータ１Ｊに含まれ、合成される位置が奈良であるので、奈良に対応するスクリプトに基づき、コンテンツデータ１Ｊのキーフレーム２からの各キーフレームに、コンテンツデータ２Ｊの各キーフレームに含まれるオブジェクトデータが挿入され、コンテンツデータが合成され記憶される。コンテンツデータ１Ｊとコンテンツデータ２Ｊとが奈良で合成されたコンテンツデータを再生したときに順次再生される各キーフレームに対応する表示画面図は、図１８（ａ）〜図１８（ｃ）と同様であるので説明は繰返さない。
【０２２９】
合成スクリプトは、大阪と奈良とに対応するスクリプトを含むものであった。大阪に対応するスクリプトは、合成スクリプトを含むコンテンツデータ１Ｊのキーフレーム１からの各キーフレームに、コンテンツデータ２Ｊの各キーフレームに含まれるオブジェクトデータを挿入することを記述したスクリプトであった。奈良に対応するスクリプトは、合成スクリプトを含むコンテンツデータ１Ｊのキーフレーム２からの各キーフレームに、コンテンツデータ２Ｊの各キーフレームに含まれるオブジェクトデータを挿入することを記述したスクリプトであった。
【０２３０】
したがって、コンテンツ合成装置１００Ｃは、合成される位置が大阪である場合は、コンテンツデータ２Ｊのキーフレーム１に含まれるオブジェクトデータを、コンテンツデータ１Ｊのキーフレーム１に挿入し、新たなキーフレーム１とする。
【０２３１】
次に、コンテンツデータ２Ｊのキーフレーム２に含まれるオブジェクトデータを、コンテンツデータ１Ｊのキーフレーム２に挿入し、新たなキーフレーム２とする。
【０２３２】
次に、コンテンツデータ１Ｊのキーフレーム３を、新たなキーフレーム３とする。
【０２３３】
最後に、新たなキーフレーム１〜キーフレーム３に基づき、ヘッダを生成し、ヘッダ、および、新たなキーフレーム１〜キーフレーム３を含むコンテンツデータを合成して記憶する。
【０２３４】
また、コンテンツ合成装置１００Ｃは、合成される位置が奈良である場合は、コンテンツデータ１Ｊのキーフレーム１を、新たなキーフレーム１とする。
【０２３５】
次に、コンテンツデータ２Ｊのキーフレーム１に含まれるオブジェクトデータを、コンテンツデータ１Ｊのキーフレーム２に挿入し、新たなキーフレーム２とする。
【０２３６】
次に、コンテンツデータ２Ｊのキーフレーム２に含まれるオブジェクトデータを、コンテンツデータ１Ｊのキーフレーム３に挿入し、新たなキーフレーム３とする。
【０２３７】
最後に、新たなキーフレーム１〜キーフレーム３に基づき、ヘッダを生成し、ヘッダ、および、新たなキーフレーム１〜キーフレーム３を含むコンテンツデータを合成して記憶する。
【０２３８】
コンテンツデータ１Ｊとコンテンツデータ２Ｊとが大阪で合成されたコンテンツデータを再生したときに順次再生される各キーフレームに対応する表示画面は、図１８（ｄ）〜図１８（ｆ）で説明した表示画面である。また、コンテンツデータ１Ｊとコンテンツデータ２Ｊとが奈良で合成されたコンテンツデータを再生したときに順次再生される各キーフレームに対応する表示画面は、図１８（ａ）〜図１８（ｃ）で説明した表示画面である。
【０２３９】
以上説明したように、第４の実施の形態におけるコンテンツ合成装置１００Ｃによれば、コンテンツデータの合成について記述した合成スクリプトを含む第１のコンテンツデータ、および、第２のコンテンツデータの入力が受付けられ、コンテンツ合成装置１００Ｃの現在位置が取得され、入力された第１のコンテンツデータに含まれる合成スクリプトに含まれる取得された現在位置に応じたスクリプトに基づき、第１のコンテンツデータが、入力された第２のコンテンツデータと合成される。このため、合成する場所に応じたスクリプトにより、合成処理が制御される。その結果、コンテンツデータ側から合成処理を制御することができるとともに、コンテンツデータを合成する場所に応じた合成処理をすることができる。
【０２４０】
なお、第４の実施の形態においては、コンテンツ合成装置１００Ｃで行なわれる処理について説明したが、図２４に示した処理をコンピュータで実行するコンテンツ合成方法、図２４に示した処理をコンピュータに実行させるためのコンテンツ合成プログラム、コンテンツ合成プログラムを記録したコンピュータ読取可能な記録媒体、図２５（ａ）に示したコンテンツデータのデータ構造、および、そのデータ構造のコンテンツデータを記録したコンピュータ読取可能な記録媒体として発明を捉えることができる。
【０２４１】
［第５の実施の形態］
第５の実施の形態においては、コンテンツ合成装置により、コンテンツデータに含まれる合成スクリプトに基づき、アニメーションデータを暗号化する合成例、および、暗号化されたアニメーションデータを復号する合成例について説明する。
【０２４２】
第５の実施の形態におけるコンテンツ合成装置の機能は、第２の実施の形態で説明したコンテンツ合成装置１００の機能と同様であるので説明は繰返さない。
【０２４３】
図２６は、第５の実施の形態におけるコンテンツ合成装置で実行されるデータ合成処理の流れを示すフローチャートである。このデータ合成処理は、図１５で説明したデータ合成処理のステップＳ２３で実行される処理である。図１５を参照して、まず、ステップＳ５１で、合成処理部により、合成スクリプトに基づき、合成処理が実行される。そして、ステップＳ５２で、合成処理部により、新たに合成スクリプトを含ませることを示すスクリプトが、合成スクリプトに含まれるか否かが判断される。そして、新たに合成スクリプトを含ませることを示すスクリプトが、合成スクリプトに含まれる場合（ステップＳ５２でＹｅｓ）は、ステップＳ５３で、合成処理部により、ステップＳ５１で合成されたコンテンツデータに、合成スクリプトに含まれる新たな合成スクリプトが付加され、図１５で説明したデータ合成処理に戻る。
【０２４４】
一方、新たに合成スクリプトを含ませるスクリプトが、合成スクリプトに含まれない場合（ステップＳ５２でＮｏ）は、図１５で説明したデータ合成処理に戻る。
【０２４５】
（第５の実施の形態における第１の合成例）
ここでは、コンテンツ合成装置により、コンテンツデータに含まれる合成スクリプトに基づき、アニメーションデータを暗号化する合成例について説明する。
【０２４６】
図２７は、第５の実施の形態における第１の合成例において合成される前のコンテンツデータのデータ構造を示す図である。図２７（ａ）は、合成スクリプトを含むコンテンツデータ１Ｄのデータ構造を示す図である。図２７（ａ）を参照して、コンテンツデータ１Ｄは、ヘッダ、キーフレーム１、および、合成スクリプトを含む。
【０２４７】
キーフレーム１は、このキーフレームまでのキーフレームを繰返し再生することを示す「繰返し」という制御データを含む。
【０２４８】
コンテンツデータ１Ｄの合成スクリプトは、第１の制御内容として「キーフレーム追加」を含み、第１のパラメータとして「キーフレーム１の後」を含む。また、第２の制御内容として「合成スクリプトの付加」を含み、第２のパラメータとして他の合成スクリプトとを含む。
【０２４９】
第１の制御内容「キーフレームの追加」は、図１０で説明したので説明は繰返さない。第１のパラメータ「キーフレーム１の後」は、制御内容で示される合成処理の対象位置が、合成スクリプトを含むコンテンツデータ１Ｄに含まれるアニメーションデータのキーフレームの後であることを示す。
【０２５０】
また、第２の制御内容「合成スクリプトの付加」は、パラメータで指定される対象データをコンテンツデータ１Ｄに追加することを示す。第２のパラメータである他の合成スクリプトは、制御内容で示される合成処理の対象データを示す。
【０２５１】
第２のパラメータである他の合成スクリプトは、属性「００００００」に対応する合成スクリプトを含む。属性「００００００」に対応する合成スクリプトは、制御内容として「キーフレームの削除」を含み、パラメータとして「キーフレーム１」を含む。制御内容「キーフレームの削除」は、パラメータで指定される対象キーフレームを削除することを示す。パラメータ「キーフレーム１」は、制御内容で示される合成処理の対象キーフレームが、合成スクリプトを含むコンテンツデータに含まれるアニメーションデータのキーフレーム１であることを示す。
【０２５２】
図２７（ｂ）は、コンテンツデータ２Ｄのデータ構造を示す図である。図２７（ｂ）を参照して、コンテンツデータ２Ｄは、ヘッダ、および、キーフレーム１〜キーフレーム３を含む。
【０２５３】
キーフレーム１〜キーフレーム３は、それぞれ、図７（ａ）で説明したコンテンツデータ１Ｂのキーフレーム２〜キーフレーム４と同様であるので説明は繰返さない。
【０２５４】
そして、コンテンツ合成装置により、コンテンツデータ１Ｄ、および、コンテンツデータ２Ｄの入力が受付けられ、コンテンツデータ１Ｄ、または、コンテンツデータ２Ｄに合成スクリプトが含まれるか否かが判断される。コンテンツデータ１Ｄに合成スクリプトが含まれるので、その合成スクリプトに基づき、コンテンツデータ１Ｄがアニメーションデータ２Ｄと合成され、後述するコンテンツデータ３Ｄが記憶される。
【０２５５】
合成スクリプトは、コンテンツデータ２Ｄに含まれるキーフレームを、合成スクリプトを含むコンテンツデータ１Ｄのキーフレーム１の後に追加すること、および、合成されたコンテンツデータに他の合成スクリプトを含ませることを記述したものであった。
【０２５６】
したがって、コンテンツ合成装置は、制御データ「繰返し」を含むコンテンツデータ１Ｄのキーフレーム１を、新たなキーフレーム１とする。
【０２５７】
次に、コンテンツデータ２Ｄに含まれるキーフレーム１〜キーフレーム３を、それぞれ、コンテンツデータ１Ｄのキーフレーム１の後に追加し、新たなキーフレーム２〜キーフレーム４とする。
【０２５８】
最後に、新たなキーフレーム１〜キーフレーム４に基づき、ヘッダを生成し、ヘッダ、新たなキーフレーム１〜キーフレーム４、および、コンテンツデータ１Ｄの合成スクリプトに含まれる新たな合成スクリプトを含むコンテンツデータ３Ｄが合成して記憶する。
【０２５９】
図２８は、第５の実施の形態における第１の合成例において合成された後のコンテンツデータ３Ｄのデータ構造を示す図である。図２８を参照して、コンテンツ合成装置によりコンテンツデータ１Ｄとコンテンツデータ２Ｄとが合成されたコンテンツデータ３Ｄは、ヘッダ、キーフレーム１〜キーフレーム４、および、合成スクリプトからなる。
【０２６０】
キーフレーム１は、図２７（ａ）で説明したコンテンツデータ１Ｄのキーフレーム１と同様である。
【０２６１】
キーフレーム２〜キーフレーム４は、それぞれ、図２７（ｂ）で説明したコンテンツデータ２Ｄのキーフレーム１〜キーフレーム３と同様である。
【０２６２】
合成スクリプトは、図２７（ａ）で説明したコンテンツデータ１Ｄの合成スクリプトに含まれる他の合成スクリプトである。
【０２６３】
このように、コンテンツデータ１Ｄに含まれる合成スクリプトにより、コンテンツデータ２Ｄに含まれるキーフレームをコンテンツデータ１Ｄの所定の箇所に追加する合成処理が制御される。その結果、コンテンツデータ１Ｄ側から他のコンテンツデータ２Ｄを追加する合成処理を制御することができる。
【０２６４】
以上説明したように、第５の実施の形態の第１の合成例で示した合成処理により、図２７（ａ）で説明した合成スクリプトを含むコンテンツデータ１Ｄ、および、図２７（ｂ）で説明したコンテンツデータ２Ｄが、コンテンツ合成装置で合成され、図２８で説明したコンテンツデータ３Ｄが合成される。また、コンテンツデータ２Ｄが、再生装置で再生された場合は、円形の図形が動くアニメーションが再生される。一方、コンテンツデータ３Ｄが、再生装置で再生された場合は、円形の図形が動くアニメーションを表示するためのキーフレームが含まれているにもかかわらず、制御データ「繰返し」がキーフレーム１に含まれているため、円形の図形が動くアニメーションが再生されない。このように、コンテンツデータ１Ｄと合成することにより、コンテンツデータ２Ｄを再生できない状態とすることができる。この状態を、コンテンツデータ２Ｄが、いわゆる暗号化された状態とする。そして、コンテンツデータ１Ｄを、コンテンツデータ２Ｄを暗号化するためのいわゆる暗号キーとする。
【０２６５】
つまり、制御データ「繰返し」を含むキーフレームと、他のコンテンツデータに含まれるキーフレームを制御データ「繰返し」を含むキーフレームの後に追加し、所定の属性に対応する、制御データ「繰返し」を含むキーフレームを削除することを記述した新たな合成スクリプトを合成されたコンテンツデータに含ませることを記述した合成スクリプトとを含むコンテンツデータを暗号キーとすることにより、他のコンテンツデータを暗号化することができる。
【０２６６】
また、コンテンツデータ１Ｇに含まれる合成スクリプトにより、コンテンツデータ１Ｇに含まれる所定の部分を削除する合成処理が制御される。その結果、コンテンツデータ１Ｇ側からコンテンツデータ１Ｇの所定の部分を削除する合成処理を制御することができる。
【０２６７】
（第５の実施の形態における第２の合成例）
ここでは、コンテンツ合成装置により、暗号化されたアニメーションデータを復号する第１の合成例について説明する。
【０２６８】
図２９は、第５の実施の形態における第２の合成例において合成される前のコンテンツデータのデータ構造を示す図である。図２９（ａ）は、合成スクリプトを含むコンテンツデータ１Ｇのデータ構造を示す図である。図２９（ａ）に示すコンテンツデータ１Ｇは、図２８で説明したコンテンツデータ２Ｄがコンテンツデータ１Ｄと合成されたコンテンツデータ３Ｄと同様であるので、説明は繰返さない。
【０２６９】
図２９（ｂ）は、コンテンツデータ２Ｇのデータ構造を示す図である。図２９（ｂ）を参照して、コンテンツデータ２Ｇは、ヘッダのみを含む。すなわち、コンテンツデータ２Ｇに含まれるアニメーションデータは、属性「００００００」であるアニメーションデータである。
【０２７０】
そして、コンテンツ合成装置により、コンテンツデータ１Ｇ、および、コンテンツデータ２Ｇの入力が受付けられ、コンテンツデータ１Ｇ、または、コンテンツデータ２Ｇに合成スクリプトが含まれるか否かが判断される。合成スクリプトがコンテンツデータ１Ｇに含まれるので、次に、コンテンツデータ２Ｇに含まれるアニメーションデータの属性が判断される。コンテンツデータ２Ｇに含まれるアニメーションデータの属性が「００００００」であるので、属性「００００００」に対応するスクリプトに基づき、コンテンツデータ１Ｇがコンテンツデータ２Ｇと合成され、後述するコンテンツデータ３Ｇが記憶される。
【０２７１】
合成スクリプトは、属性「００００００」に対応するスクリプトを含むものであった。属性「００００００」に対応するスクリプトは、合成スクリプトを含むコンテンツデータ１Ｇと合成される他のコンテンツデータ２Ｇに含まれるアニメーションデータの属性が「００００００」である場合に、コンテンツデータ１Ｇのキーフレーム１を削除することを記述したものであった。
【０２７２】
したがって、コンテンツデータ１Ｇとコンテンツデータ２Ｇとが入力された場合、コンテンツ合成装置は、コンテンツデータ１Ｇのキーフレーム１を削除する。
【０２７３】
次に、コンテンツデータ１Ｇのキーフレーム２〜キーフレーム４を、新たなキーフレーム１〜キーフレーム３とする。
【０２７４】
最後に、新たなキーフレーム１〜キーフレーム３に基づき、ヘッダを生成し、ヘッダ、および、新たなキーフレーム１〜キーフレーム３を含むコンテンツデータ３Ｇを合成して記憶する。
【０２７５】
図３０は、第５の実施の形態における第２の合成例において合成された後のコンテンツデータ３Ｇのデータ構造を示す図である。図３０に示すコンテンツ合成装置１００Ａによりコンテンツデータ１Ｇとコンテンツデータ２Ｇとが合成されたコンテンツデータ３Ｇは、図２７で説明したコンテンツデータ２Ｄと同様であるので、説明は繰返さない。
【０２７６】
以上説明したように、第５の実施の形態の第２の合成例で示した合成処理により、図２８で説明したコンテンツデータ３Ｄと同様であり図２９（ａ）で説明した合成スクリプトを含むコンテンツデータ１Ｇ、および、図２９（ｂ）で説明したコンテンツデータ２Ｇが、コンテンツ合成装置で合成され、図３０で説明したコンテンツデータ３Ｇが合成される。このコンテンツデータ３Ｇは、図２７（ｂ）で説明したコンテンツデータ２Ｄと同様である。このように、コンテンツデータ２Ｄが暗号化された状態であるコンテンツデータ１Ｇを、コンテンツデータ２Ｇと合成することにより、コンテンツデータ２Ｄを再生できる状態とすることができる。この状態を、コンテンツデータ２Ｄが、いわゆる復号された状態とする。そして、コンテンツデータ２Ｇを、コンテンツデータ２Ｄを復号するためのいわゆる復号キーとする。
【０２７７】
つまり、所定の属性のコンテンツデータを復号キーとすることにより、他のコンテンツデータを復号することができる。
【０２７８】
（第５の実施の形態における第３の合成例）
ここでは、コンテンツ合成装置により、暗号化されたアニメーションデータを復号する第２の合成例について説明する。
【０２７９】
図３１は、第５の実施の形態における第３の合成例において合成される前のコンテンツデータのデータ構造を示す図である。図３１を参照して、コンテンツデータ１Ｈは、図２８で説明したコンテンツデータ３Ｄに含まれる合成スクリプトを変更したものである。すなわち、図２７で説明したコンテンツデータ１Ｄの合成スクリプトに含まれる他の合成スクリプトを変更して、コンテンツデータ２Ｄと合成したものである。
【０２８０】
コンテンツデータ１Ｈに含まれる合成スクリプトは、属性「００００００」に対応する合成スクリプトを含む。属性「００００００」に対応する合成スクリプトは、制御内容として「データの変更」を含み、パラメータとして「キーフレーム１（ジャンプ  ２）」を含む。制御内容「制御データの変更」は、パラメータで指定される対象位置のデータをパラメータで指定される対象データに変更することを示す。パラメータ「キーフレーム１（ジャンプ  ２）」は、制御内容で示される合成処理の対象位置が、合成スクリプトを含むコンテンツデータに含まれるアニメーションデータのキーフレーム１であり、制御内容で示される合成処理の対象データが、制御データ「ジャンプ  ２」であることを示す。
【０２８１】
図３１（ｂ）は、コンテンツデータ２Ｈのデータ構造を示す図である。図３１（ｂ）に示すコンテンツデータ２Ｈは、図２９（ｂ）で説明したコンテンツデータ２Ｇと同様であるので説明は繰返さない。
【０２８２】
そして、コンテンツ合成装置により、コンテンツデータ１Ｈ、および、コンテンツデータ２Ｈの入力が受付けられ、コンテンツデータ１Ｈ、または、コンテンツデータ２Ｈに合成スクリプトが含まれるか否かが判断される。合成スクリプトがコンテンツデータ１Ｈに含まれるので、次に、コンテンツデータの２Ｈに含まれるアニメーションデータの属性が判断される。コンテンツデータ２Ｈに含まれるアニメーションデータの属性が「００００００」であるので、属性「００００００」に対応するスクリプトに基づき、コンテンツデータ１Ｈがコンテンツデータ２Ｈと合成され、後述するコンテンツデータ３Ｈが記憶される。
【０２８３】
合成スクリプトは、属性「００００００」に対応するスクリプトを含むものであった。属性「００００００」に対応するスクリプトは、合成スクリプトを含むコンテンツデータ１Ｈと合成される他のコンテンツデータ２Ｇに含まれるアニメーションデータの属性が「００００００」である場合に、コンテンツデータ１Ｈに含まれるアニメーションデータのキーフレーム１に含まれる制御データを制御データ「ジャンプ  ２」に変更することを記述したものであった。
【０２８４】
したがって、コンテンツデータ１Ｈとコンテンツデータ２Ｈとが入力された場合、コンテンツ合成装置は、コンテンツデータ１Ｈのキーフレーム１に含まれる制御データ「繰返し」を、制御データ「ジャンプ  ２」に変更して、新たなキーフレーム１とする。
【０２８５】
次に、コンテンツデータ１Ｈのキーフレーム２〜キーフレーム４を、新たなキーフレーム２〜キーフレーム４とする。
【０２８６】
最後に、新たなキーフレーム１〜キーフレーム４に基づき、ヘッダを生成し、ヘッダ、および、新たなキーフレーム１〜キーフレーム４を含むコンテンツデータ３Ｈを合成して記憶する。
【０２８７】
図３２は、第５の実施の形態における第３の合成例において合成された後のコンテンツデータ３Ｈのデータ構造を示す図である。図３２を参照して、コンテンツ合成装置によりコンテンツデータ１Ｈとコンテンツデータ２Ｈとが合成されたコンテンツデータ３Ｈは、ヘッダ、および、キーフレーム１〜キーフレーム４からなる。
【０２８８】
キーフレーム１は、コンテンツデータ１Ｈのキーフレーム１の制御データが制御データ「ジャンプ  ２」に変更されたものである。
【０２８９】
キーフレーム２〜キーフレーム４は、図２７で説明したコンテンツデータ１Ｄのキーフレーム１〜キーフレーム３と同様であるので説明は繰返さない。
【０２９０】
以上説明したように、第５の実施の形態の第３の合成例で示した合成処理により、図２８で説明したコンテンツデータ３Ｄの合成スクリプトを変更した図３１（ａ）で説明した合成スクリプトを含むコンテンツデータ１Ｈ、および、図３１（ｂ）で説明したコンテンツデータ２Ｈが、コンテンツ合成装置で合成され、図３２で説明したコンテンツデータ３Ｈが合成される。このコンテンツデータ３Ｇが再生装置で再生された場合、図２７（ｂ）で説明したコンテンツデータ２Ｄが再生装置で再生されたアニメーションと同様のものが再生される。このように、コンテンツデータ２Ｄが暗号化された状態であるコンテンツデータ１Ｈを、コンテンツデータ２Ｈと合成することにより、コンテンツデータ２Ｄを復号することができる。
【０２９１】
つまり、制御データ「繰返し」を含むキーフレームと、他のコンテンツデータに含まれるキーフレームを制御データ「繰返し」を含むキーフレームの後に追加し、所定の属性に対応する、制御データ「繰返し」を制御データ「ジャンプ  ２」に変更することを記述した新たな合成スクリプトを合成されたコンテンツデータに含ませることを記述した合成スクリプトを含むコンテンツデータを暗号キーとすることにより、他のコンテンツデータを暗号化することができる。また、所定の属性のアニメーションデータを含むコンテンツデータを復号キーとすることにより、他のコンテンツデータを復号することができる。
【０２９２】
なお、第５の実施の形態においては、コンテンツ合成装置で行なわれる処理について説明したが、図２６に示した処理をコンピュータで実行するコンテンツ合成方法、図２６に示した処理をコンピュータに実行させるためのコンテンツ合成プログラム、コンテンツ合成プログラムを記録したコンピュータ読取可能な記録媒体、図２７（ａ），図２９（ａ），図３１（ａ）に示したコンテンツデータのデータ構造、および、そのデータ構造のコンテンツデータを記録したコンピュータ読取可能な記録媒体として発明を捉えることができる。
【０２９３】
［第６の実施の形態］
第６の実施の形態においては、第１の実施の形態において説明した合成スクリプトの所在を示す所在情報がコンテンツデータ１０に含まれる場合について説明する。
【０２９４】
図３３は、第６の実施の形態におけるコンテンツ合成装置１００Ｄの機能の概略を示す図である。図３３を参照して、コンテンツ合成装置１００Ｄの制御部１１０Ｄは、入力受付部１１１と、合成処理部１１２Ｄと、合成スクリプト取得部１１６とを含む。コンテンツ合成装置１００Ｄの記憶部１３０は、複数のコンテンツデータを記憶する。コンテンツデータは、アニメーションデータと合成スクリプトとを含むコンテンツデータと、アニメーションデータを含むコンテンツデータとを含む。入力受付部１１１については、第１の実施の形態における図２で説明したので説明は繰返さない。
【０２９５】
合成処理部１１２Ｄは、入力受付部１１１により入力されたコンテンツデータ１０に合成スクリプトの所在を示す所在情報が含まれる場合は、合成スクリプト取得部１１６に合成スクリプトの取得を指示する。
【０２９６】
合成スクリプト取得部１１６は、合成処理部１１２Ｄからの指示に応じて、合成スクリプト４０を取得し、合成処理部１１２Ｄに送る。ここでは、合成スクリプト４０は、記憶部１３０に記憶されている場合を示すが、合成スクリプトの所在情報が示す所在は、コンテンツ合成装置１００Ｄの記憶部１３０内のアドレスによって示される所在に限定されず、ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）によって示される所在であってもよいし、記録媒体１７１に含まれる合成スクリプトのパスによって示される所在であってもよい。
【０２９７】
合成処理部１１２Ｄは、合成スクリプト取得部１１６で取得された合成スクリプトに基づき、入力受付部１１１により入力されたコンテンツデータ１０を入力受付部１１１により入力されたコンテンツデータ２０と合成する。そして、合成処理部１１２Ｄは、合成されたコンテンツデータ３０を記憶部１３０に記憶させる。なお、合成処理部１１２Ｄは、合成されたコンテンツデータ３０を、直接、通信部１６０によりネットワーク５００を介して他のＰＣ等に送信してもよいし、外部記憶装置１７０により記録媒体１７１に記録してもよい。
【０２９８】
また、合成処理部１１２Ｄは、図２７で説明したコンテンツデータ１Ｄの合成スクリプトに、新たに合成されたコンテンツデータに含ませる合成スクリプトの所在情報が含まれる場合は、その所在情報に基づき、合成スクリプト取得部１１６で取得された合成スクリプトを新たに合成されたコンテンツデータに含ませるようにしてもよい。
【０２９９】
図３４は、第６の実施の形態におけるコンテンツ合成装置１００Ｄで実行されるデータ合成処理の流れを示すフローチャートである。データ合成処理は、図３で説明したコンテンツ合成処理のステップＳ１３で実行される処理である。図３４を参照して、まず、ステップＳ６１で、合成処理部１１２Ｄにより、ステップＳ１１で入力されたコンテンツデータ１０に含まれる合成スクリプトが解釈され、ステップＳ６２で、コンテンツデータ１０に合成スクリプトの所在情報が含まれるか否かが判断される。コンテンツデータ１０に合成スクリプトの所在情報が含まれる場合（ステップＳ６２でＹｅｓ）は、ステップＳ６３で、合成スクリプト取得部１１６により、合成スクリプトの所在情報が示す合成スクリプトが取得され、ステップＳ６４で、合成処理部１１２Ｄにより、ステップＳ６３で取得された合成スクリプトに基づき、ステップＳ１１で入力されたコンテンツデータ１０が、ステップＳ１１で入力されたコンテンツデータ２０と合成される合成処理が実行され、コンテンツ合成処理に戻る。
【０３００】
一方、コンテンツデータ１０に合成スクリプトの所在情報が含まれない場合（ステップＳ６２でＮｏ）は、コンテンツ合成処理に戻る。
【０３０１】
以上説明したように、第６の実施の形態におけるコンテンツ合成装置１００Ｄによれば、コンテンツデータの合成について記述した合成スクリプトの所在を示す所在情報を含む第１のコンテンツデータ、および、第２のコンテンツデータの入力が受付けられ、入力された第１のコンテンツデータに含まれる所在情報が示す合成スクリプトが取得され、取得された合成スクリプトに基づき、入力された第１のコンテンツデータが入力された第２のコンテンツデータと合成される。このため、第１のコンテンツデータに含まれる所在情報が示す合成スクリプトにより、合成処理が制御される。また、第１のコンテンツデータに合成スクリプトの所在情報が含まれるので、第１のコンテンツデータを第２のコンテンツデータと合成するときに、合成スクリプトを新たに用意する必要がない。その結果、コンテンツデータ側から合成処理を制御することができるとともに、コンテンツデータの合成に必要な合成スクリプトを新たに用意する必要がないようにできる。
【０３０２】
また、第６の実施の形態におけるコンテンツ合成装置１００Ｄによれば、他の合成スクリプトの所在を示す合成スクリプトに含まれる所在情報が示す他の合成スクリプトが取得され、合成されたコンテンツデータに、取得された他の合成スクリプトが含められる。このため、新たに合成されたコンテンツデータ側から合成処理を制御可能にすることができる。
【０３０３】
なお、第６の実施の形態においては、コンテンツ合成装置１００Ｄで行なわれる処理について説明したが、図３４に示した処理をコンピュータで実行するコンテンツ合成方法、図３４に示した処理をコンピュータに実行させるためのコンテンツ合成プログラム、コンテンツ合成プログラムを記録したコンピュータ読取可能な記録媒体として発明を捉えることができる。
【０３０４】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【図１】第１の実施の形態におけるコンテンツ合成装置の構成の概略を示すブロック図である。
【図２】第１の実施の形態におけるコンテンツ合成装置の機能の概略を示す図である。
【図３】第１の実施の形態におけるコンテンツ合成装置で実行されるコンテンツ合成処理の流れを示すフローチャートである。
【図４】第１の実施の形態における第１の合成例において合成される前のコンテンツデータのデータ構造を示す図である。
【図５】第１の実施の形態における第１の合成例において合成された後のコンテンツデータのデータ構造を示す図である。
【図６】第１の実施の形態における第１の合成例において合成されたコンテンツデータを再生したときに表示されるアニメーションを説明するための図である。
【図７】第１の実施の形態における第２の合成例において合成される前のコンテンツデータのデータ構造を示す図である。
【図８】第１の実施の形態における第２の合成例において合成された後のコンテンツデータのデータ構造を示す図である。
【図９】第１の実施の形態における第２の合成例において合成されたコンテンツデータを再生したときに表示されるアニメーションを説明するための図である。
【図１０】第１の実施の形態における第３の合成例において合成される前のコンテンツデータのデータ構造を示す図である。
【図１１】第１の実施の形態における第３の合成例において合成された後のコンテンツデータのデータ構造を示す図である。
【図１２】第１の実施の形態における第４の合成例において合成される前のコンテンツデータのデータ構造を示す図である。
【図１３】第１の実施の形態における第４の合成例において合成された後のコンテンツデータのデータ構造を示す図である。
【図１４】第２の実施の形態におけるコンテンツ合成装置の機能の概略を示す図である。
【図１５】第２の実施の形態におけるコンテンツ合成装置で実行されるデータ合成処理の流れを示すフローチャートである。
【図１６】第２の実施の形態におけるコンテンツ合成装置で実行される属性判別処理の流れを示すフローチャートである。
【図１７】第２の実施の形態における第１の合成例において合成される前のコンテンツデータのデータ構造を示す図である。
【図１８】第２の実施の形態における第１の合成例において合成されたコンテンツデータを再生したときに表示されるアニメーションを説明するための図である。
【図１９】第３の実施の形態におけるコンテンツ合成装置の機能の概略を示す図である。
【図２０】第３の実施の形態におけるコンテンツ合成装置で実行されるデータ合成処理の流れを示すフローチャートである。
【図２１】第３の実施の形態における第１の合成例において合成される前のコンテンツデータのデータ構造を示す図である。
【図２２】第３の実施の形態における第１の合成例において合成されたコンテンツデータを再生したときに表示されるアニメーションを説明するための図である。
【図２３】第４の実施の形態におけるコンテンツ合成装置の機能の概略を示す図である。
【図２４】第４の実施の形態におけるコンテンツ合成装置で実行されるデータ合成処理の流れを示すフローチャートである。
【図２５】第４の実施の形態における第１の合成例において合成される前のコンテンツデータのデータ構造を示す図である。
【図２６】第５の実施の形態におけるコンテンツ合成装置で実行されるデータ合成処理の流れを示すフローチャートである。
【図２７】第５の実施の形態における第１の合成例において合成される前のコンテンツデータのデータ構造を示す図である。
【図２８】第５の実施の形態における第１の合成例において合成された後のコンテンツデータのデータ構造を示す図である。
【図２９】第５の実施の形態における第２の合成例において合成される前のコンテンツデータのデータ構造を示す図である。
【図３０】第５の実施の形態における第２の合成例において合成された後のコンテンツデータのデータ構造を示す図である。
【図３１】第５の実施の形態における第３の合成例において合成される前のコンテンツデータのデータ構造を示す図である。
【図３２】第５の実施の形態における第３の合成例において合成された後のコンテンツデータのデータ構造を示す図である。
【図３３】第６の実施の形態におけるコンテンツ合成装置の機能の概略を示す図である。
【図３４】第６の実施の形態におけるコンテンツ合成装置で実行されるデータ合成処理の流れを示すフローチャートである。
【符号の説明】
１０，１Ａ〜１Ｊ  コンテンツデータ、２０，２１〜２３，２Ａ〜２Ｅ，２ＦＡ，２ＦＢ，２Ｇ〜２Ｊ  コンテンツデータ、３０，３Ａ〜３Ｅ，３Ｇ〜３Ｈ  コンテンツデータ、４０，４１  合成スクリプト、１００，１００Ａ〜１００Ｄコンテンツ合成装置、１１０，１１０Ａ〜１１０Ｄ  制御部、１１１  入力受付部、１１２，１１２Ａ〜１１２Ｄ  合成処理部、１１３  属性判別部、１１４時刻取得部、１１５  位置取得部、１１６  合成スクリプト取得部、１３０  記憶部、１４０  入力部、１５０  出力部、１６０  通信部、１７０  外部記憶装置、１７１  記録媒体、２００  コンテンツ合成装置、５００  ネットワーク。
【図１】
2004264885.tif 000003
【図２】
2004264885.tif 000004
【図３】
2004264885.tif 000005
【図４】
2004264885.tif 000006
【図５】
2004264885.tif 000007
【図６】
2004264885.tif 000008
【図７】
2004264885.tif 000009
【図８】
2004264885.tif 000010
【図９】
2004264885.tif 000011
【図１０】
2004264885.tif 000012
【図１１】
2004264885.tif 000013
【図１２】
2004264885.tif 000014
【図１３】
2004264885.tif 000015
【図１４】
2004264885.tif 000016
【図１５】
2004264885.tif 000017
【図１６】
2004264885.tif 000018
【図１７】
2004264885.tif 000019
【図１８】
2004264885.tif 000020
【図１９】
2004264885.tif 000021
【図２０】
2004264885.tif 000022
【図２１】
2004264885.tif 000023
【図２２】
2004264885.tif 000024
【図２３】
2004264885.tif 000025
【図２４】
2004264885.tif 000026
【図２５】
2004264885.tif 000027
【図２６】
2004264885.tif 000028
【図２７】
2004264885.tif 000029
【図２８】
2004264885.tif 000030
【図２９】
2004264885.tif 000031
【図３０】
2004264885.tif 000032
【図３１】
2004264885.tif 000033
【図３２】
2004264885.tif 000034
【図３３】
2004264885.tif 000035
【図３４】
2004264885.tif 000036