(57)【要約】【課題】ネットワークに接続された機器において、コンテンツに関連する処理を、より簡単に実行させることができるようにする。【解決手段】コンテンツ取得部５５１は、他の機器からコンテンツのアップロードの要求があった場合、URLを他の機器に送信する処理、送信されてくるコンテンツを受信する処理などの実行を制御する。elementsフィールド解析部５５２は、アクション「CreateObject」に伴って他の機器から送信されたXML文の中のelementsフィールドの内容を解析する。nextaction判定部５５３は、elementsフィールド解析部５５２の解析結果に基づいて、コンテンツのアップロードが完了した後、実行すべき処理があるか否かを判定する。指令実行制御部５５４は、実行すべき処理があると判定された場合、その指令に対応する処理を実行する。【選択図】図１０
2008210379.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツを送信するコンテンツ送信装置と、前記送信装置が送信したコンテンツを受信するコンテンツ受信装置とにより構成されるコンテンツ伝送システムであって、
前記コンテンツ送信装置は、
前記コンテンツのメタデータに関する情報を前記コンテンツのデータに付加するメタデータ付加手段と、
前記コンテンツ受信装置による前記コンテンツの受信が完了した後、前記コンテンツ受信装置に実行させる処理に関する情報を前記コンテンツのデータに付加されるメタデータに記述する実行処理記述手段と、
前記実行処理記述手段により前記処理に関する情報が記述されたメタデータが付加されたコンテンツのデータを、前記コンテンツ受信装置に送信するデータ送信手段とを備え、
前記コンテンツ受信装置は、
前記メタデータが付加されたコンテンツのデータを受信するデータ受信手段と、
前記データ受信手段が受信した前記メタデータを解析するメタデータ解析手段と、
前記メタデータ解析手段の解析結果に基づいて、前記コンテンツの受信が完了した後、実行すべき処理の内容を特定して、特定された前記実行すべき処理を実行する処理実行手段とを備える
コンテンツ伝送システム。
【請求項２】
送信されたコンテンツを受信するコンテンツ受信装置に、コンテンツを送信するコンテンツ送信装置であって、
前記コンテンツのメタデータに関する情報を前記コンテンツのデータに付加するメタデータ付加手段と、
前記コンテンツ受信装置による前記コンテンツの受信が完了した後、前記コンテンツ受信装置に実行させる処理に関する情報を前記コンテンツのデータに付加されるメタデータに記述する実行処理記述手段と、
前記実行処理記述手段により前記処理に関する情報が記述されたメタデータが付加されたコンテンツのデータを、前記コンテンツ受信装置に送信するデータ送信手段とを備える
コンテンツ送信装置。
【請求項３】
前記実行処理記述手段は、
前記コンテンツ受信装置に、受信したコンテンツのデータを、予め定められた記録媒体にコピーまたはムーブさせる処理に関する情報を生成して前記XML文の一部として記述する
請求項２に記載のコンテンツ送信装置。
【請求項４】
前記実行処理記述手段は、
前記コンテンツ受信装置に、前記コンテンツの受信が完了した後、所定の時間が経過したとき、前記コンテンツのデータを削除させる処理に関する情報を生成して前記XML文の一部として記述する
請求項２に記載のコンテンツ送信装置。
【請求項５】
前記実行処理記述手段は、
前記コンテンツ受信装置に、前記コンテンツを記録せずに削除させる処理に関する情報を生成して前記XML文の一部として記述する
請求項２に記載のコンテンツ送信装置。
【請求項６】
前記コンテンツの送信は、UPnP（Universal Plug and Play）で規定されるコンテンツのアップロードの処理として実行される
請求項２に記載のコンテンツ送信装置。
【請求項７】
前記メタデータ付加手段は、
CreateObjectのアクションに伴って、前記コンテンツ受信装置に送信するXML文の一部として前記メタデータを付加し、
前記実行処理記述手段は、予め設定されたXMLのタグを用いて前記コンテンツ受信装置に実行させる処理に関する情報を生成して前記XML文の一部として記述する
請求項６に記載のコンテンツ送信装置。
【請求項８】
送信されたコンテンツを受信するコンテンツ受信装置に、コンテンツを送信するコンテンツ送信装置のコンテンツ送信方法であって、
前記コンテンツのメタデータに関する情報を前記コンテンツのデータに付加し、
前記コンテンツ受信装置による前記コンテンツの受信が完了した後、前記コンテンツ受信装置に実行させる処理に関する情報を前記コンテンツのデータに付加されるメタデータに記述し、
前記処理に関する情報が記述されたメタデータが付加されたコンテンツのデータを、前記コンテンツ受信装置に送信する
ステップを含むコンテンツ送信方法。
【請求項９】
送信されたコンテンツを受信するコンテンツ受信装置に、コンテンツを送信するコンテンツ送信装置にコンテンツ送信処理を実行させるプログラムであって、
前記コンテンツのメタデータに関する情報の前記コンテンツのデータへの付加を制御し、
前記コンテンツ受信装置による前記コンテンツの受信が完了した後、前記コンテンツ受信装置に実行させる処理に関する情報の、前記コンテンツのデータに付加されるメタデータへの記述を制御し、
前記処理に関する情報が記述されたメタデータが付加されたコンテンツのデータの、前記コンテンツ受信装置への送信を制御する
ステップを含むコンピュータが読み取り可能なプログラム。
【請求項１０】
請求項９に記載のプログラムが記録されている記録媒体。
【請求項１１】
コンテンツ送信装置から送信されたコンテンツを受信するコンテンツ受信装置であって、
メタデータが付加されたコンテンツのデータを受信するデータ受信手段と、
前記データ受信手段が受信した前記メタデータを解析するメタデータ解析手段と、
前記メタデータ解析手段の解析結果に基づいて、前記コンテンツの受信が完了した後、実行すべき処理の内容を特定する処理特定して、前記特定された前記実行すべき処理を実行する処理実行手段と
を備えるコンテンツ受信装置。
【請求項１２】
前記処理実行手段は、前記処理を実行すべき時刻をさらに特定し、前記実行すべき処理を、前記処理を実行すべき時刻において実行する
請求項１１に記載のコンテンツ受信装置。
【請求項１３】
受信したコンテンツのデータを、予め定められた記録媒体にコピーまたはムーブする処理が、前記実行すべき処理の内容として特定される
請求項１１に記載のコンテンツ受信装置。
【請求項１４】
前記コンテンツの受信が完了した後、所定の時間が経過したとき、前記コンテンツのデータを削除する処理が、前記実行すべき処理の内容として特定される
請求項１１に記載のコンテンツ受信装置。
【請求項１５】
前記コンテンツのデータを記録せずに削除する処理が、前記実行すべき処理の内容として特定される
請求項１１に記載のコンテンツ受信装置。
【請求項１６】
前記コンテンツの送信は、UPnP（Universal Plug and Play）で規定されるコンテンツのアップロードの処理として前記コンテンツ送信装置により実行される
請求項１１に記載のコンテンツ受信装置。
【請求項１７】
前記メタデータ解析手段は、
CreateObjectのアクションに伴って、前記コンテンツ受信装置に送信するXML文の一部を解析し、
前記処理実行手段は、前記XML文の一部として挿入された記述であって、予め設定されたXMLのタグを用いて生成された記述に基づいて前記コンテンツの受信が完了した後、実行すべき処理の内容と前記処理を実行すべき時刻を特定する
請求項１６に記載のコンテンツ受信装置。
【請求項１８】
コンテンツ送信装置から送信されたコンテンツを受信するコンテンツ受信装置のコンテンツ受信方法であって、
メタデータが付加されたコンテンツのデータを受信し、
前記受信した前記メタデータを解析し、
前記解析結果に基づいて、前記コンテンツの受信が完了した後、実行すべき処理の内容を特定して、前記特定された前記実行すべき処理を実行するステップ
を含むコンテンツ受信方法。
【請求項１９】
コンテンツ送信装置から送信されたコンテンツを受信するコンテンツ受信装置にコンテンツ受信処理を実行させるプログラムであって、
メタデータが付加されたコンテンツのデータの受信を制御し、
前記受信した前記メタデータの解析を制御し、
前記解析結果に基づいて、前記コンテンツの受信が完了した後、実行すべき処理の内容の特定を制御して、前記特定された前記実行すべき処理を実行するように制御するステップ
を含むコンピュータが読み取り可能なプログラム。
【請求項２０】
請求項１９に記載のプログラムが記録されている記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ伝送システム、コンテンツ送信装置および方法、コンテンツ受信装置および方法、プログラム、並びに記録媒体に関し、特に、ネットワークに接続された機器において、コンテンツに関連する処理を、より簡単に実行させることができるようにするコンテンツ伝送システム、コンテンツ送信装置および方法、コンテンツ受信装置および方法、プログラム、並びに記録媒体に関する。
【背景技術】
【０００２】
近年、家庭内のパソコンや周辺機器、AV機器、電話、家電製品などの機器を、ネットワークを通じて接続し、相互に機能を提供しあう技術が普及している。このようなネットワークを実現するための技術仕様として、例えば、UPnP（Universal Plug and Play）が提唱されている。
【０００３】
UPnPでは、インターネットで標準となっている技術を基盤とし、ネットワークにつなぐだけで複雑な操作や設定作業を伴うことなく機能することを目指しており、例えば、ネットワークに接続された端末から、サーバに対してコンテンツをアップロードする場合の処理などが規定されている。
【０００４】
また、近年、録画した画像などを携帯型のディスプレイなどで楽しむことも可能となっており、例えば、サーバにアップロードされたコンテンツを、リムーバブルメディアに記録して、そのリムーバブルメディアを携帯型のディスプレイに装着して録画した画像を再生することも可能である。
【０００５】
さらに、サーバが、情報信号を配信する１つ以上のオーディオ再生機器の指定情報を受け付け、この受け付けた指定情報により指定される１つ以上のオーディオ再生機器のそれぞれに対して、コンテンツ蓄積用ハードディスクに蓄積しているオーディオコンテンツを配信し、１つ以上のオーディオ再生機器のそれぞれにおいて、同時再生ができるようにする技術も提案されている。
【０００６】
【特許文献１】特開２００５−１３４９７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
携帯型のディスプレイで画像を再生する場合、例えば、画像データの圧縮符号化方式を変更する必要がある。すなわち、テレビジョン受像機などにより受信される画像データは、MPEG２方式で圧縮符号化されることが多いが、携帯型のディスプレイなどにおいて再生可能な画像データは、MPEG４方式で圧縮符号化された画像データであることが多いので、例えば、サーバにアップロードされたコンテンツを携帯型のディスプレイで再生可能な方式に圧縮符号化し、その圧縮符号化されたデータをリムーバブルメディアに記録する必要がある。
【０００８】
このように、コンテンツのアップロードを行うユーザが、例えば、サーバなどの機器に対してコンテンツをアップロードした場合、アップロードされたコンテンツをリムーバブルメディアなどの記録媒体に記録させることが多いと考えられる。
【０００９】
しかしながら、UPnPで規定される処理によれば、コンテンツのアップロードの処理と、アップロードしたコンテンツを記録媒体に記録させる処理とは、別々の操作が必要となり、操作が煩雑になってしまう。
【００１０】
本発明はこのような状況に鑑みてなされたものであり、ネットワークに接続された機器において、コンテンツに関連する処理を、より簡単に実行させることができるようにするものである。
【課題を解決するための手段】
【００１１】
本発明の第１の側面は、コンテンツを送信するコンテンツ送信装置と、前記送信装置が送信したコンテンツを受信するコンテンツ受信装置とにより構成されるコンテンツ伝送システムであって、前記コンテンツ送信装置は、前記コンテンツのメタデータに関する情報を前記コンテンツのデータに付加するメタデータ付加手段と、前記コンテンツ受信装置による前記コンテンツの受信が完了した後、前記コンテンツ受信装置に実行させる処理に関する情報を前記コンテンツのデータに付加されるメタデータに記述する実行処理記述手段と、前記実行処理記述手段により前記処理に関する情報が記述されたメタデータが付加されたコンテンツのデータを、前記コンテンツ受信装置に送信するデータ送信手段とを備え、前記コンテンツ受信装置は、前記メタデータが付加されたコンテンツのデータを受信するデータ受信手段と、前記データ受信手段が受信した前記メタデータを解析するメタデータ解析手段と、前記メタデータ解析手段の解析結果に基づいて、前記コンテンツの受信が完了した後、実行すべき処理の内容を特定して、特定された前記実行すべき処理を実行する処理実行手段とを備えるコンテンツ伝送システムである。
【００１２】
本発明の第１の側面においては、前記コンテンツのメタデータに関する情報が前記コンテンツのデータに付加され、前記コンテンツ受信装置による前記コンテンツの受信が完了した後、前記コンテンツ受信装置に実行させる処理に関する情報が前記コンテンツのデータに付加されるメタデータに記述され、前記処理に関する情報が記述されたメタデータが付加されたコンテンツのデータが、前記コンテンツ受信装置に送信される。また、メタデータが付加されたコンテンツのデータが受信され、前記受信した前記メタデータが解析され、前記解析結果に基づいて、前記コンテンツの受信が完了した後、実行すべき処理の内容を特定して、前記特定された前記実行すべき処理が実行される。
【００１３】
本発明の第２の側面は、送信されたコンテンツを受信するコンテンツ受信装置に、コンテンツを送信するコンテンツ送信装置であって、前記コンテンツのメタデータに関する情報を前記コンテンツのデータに付加するメタデータ付加手段と、前記コンテンツ受信装置による前記コンテンツの受信が完了した後、前記コンテンツ受信装置に実行させる処理に関する情報を前記コンテンツのデータに付加されるメタデータに記述する実行処理記述手段と、前記実行処理記述手段により前記処理に関する情報が記述されたメタデータが付加されたコンテンツのデータを、前記コンテンツ受信装置に送信するデータ送信手段とを備えるコンテンツ送信装置である。
【００１４】
前記実行処理記述手段は、前記コンテンツ受信装置に、受信したコンテンツのデータを、予め定められた記録媒体にコピーまたはムーブさせる処理に関する情報を生成して前記XML文の一部として記述するようにすることができる。
【００１５】
前記実行処理記述手段は、前記コンテンツ受信装置に、前記コンテンツの受信が完了した後、所定の時間が経過したとき、前記コンテンツのデータを削除させる処理に関する情報を生成して前記XML文の一部として記述するようにすることができる。
【００１６】
前記実行処理記述手段は、前記コンテンツ受信装置に、前記コンテンツを記録せずに削除させる処理に関する情報を生成して前記XML文の一部として記述するようにすることができる。
【００１７】
前記コンテンツの送信は、UPnP（Universal Plug and Play）で規定されるコンテンツのアップロードの処理として実行されるようにすることができる。
【００１８】
前記メタデータ付加手段は、CreateObjectのアクションに伴って、前記コンテンツ受信装置に送信するXML文の一部として前記メタデータを付加し、前記実行処理記述手段は、予め設定されたXMLのタグを用いて前記コンテンツ受信装置に実行させる処理に関する情報を生成して前記XML文の一部として記述するようにすることができる。
【００１９】
本発明の第２の側面は、送信されたコンテンツを受信するコンテンツ受信装置に、コンテンツを送信するコンテンツ送信装置のコンテンツ送信方法であって、前記コンテンツのメタデータに関する情報を前記コンテンツのデータに付加し、前記コンテンツ受信装置による前記コンテンツの受信が完了した後、前記コンテンツ受信装置に実行させる処理に関する情報を前記コンテンツのデータに付加されるメタデータに記述し、前記処理に関する情報が記述されたメタデータが付加されたコンテンツのデータを、前記コンテンツ受信装置に送信するステップを含むコンテンツ送信方法である。
【００２０】
本発明の第２の側面は、送信されたコンテンツを受信するコンテンツ受信装置に、コンテンツを送信するコンテンツ送信装置にコンテンツ送信処理を実行させるプログラムであって、前記コンテンツのメタデータに関する情報の前記コンテンツのデータへの付加を制御し、前記コンテンツ受信装置による前記コンテンツの受信が完了した後、前記コンテンツ受信装置に実行させる処理に関する情報の、前記コンテンツのデータに付加されるメタデータへの記述を制御し、前記処理に関する情報が記述されたメタデータが付加されたコンテンツのデータの、前記コンテンツ受信装置への送信を制御するステップを含むコンピュータが読み取り可能なプログラムである。
【００２１】
本発明の第２の側面においては、前記コンテンツのメタデータに関する情報が前記コンテンツのデータに付加され、前記コンテンツ受信装置による前記コンテンツの受信が完了した後、前記コンテンツ受信装置に実行させる処理に関する情報が前記コンテンツのデータに付加されるメタデータに記述され、前記処理に関する情報が記述されたメタデータが付加されたコンテンツのデータが、前記コンテンツ受信装置に送信される。
【００２２】
本発明の第３の側面は、コンテンツ送信装置から送信されたコンテンツを受信するコンテンツ受信装置であって、メタデータが付加されたコンテンツのデータを受信するデータ受信手段と、前記データ受信手段が受信した前記メタデータを解析するメタデータ解析手段と、前記メタデータ解析手段の解析結果に基づいて、前記コンテンツの受信が完了した後、実行すべき処理の内容を特定する処理特定して、前記特定された前記実行すべき処理を実行する処理実行手段とを備えるコンテンツ受信装置である。
【００２３】
前記処理実行手段は、前記処理を実行すべき時刻をさらに特定し、前記実行すべき処理を、前記処理を実行すべき時刻において実行するようにすることができる。
【００２４】
受信したコンテンツのデータを、予め定められた記録媒体にコピーまたはムーブする処理が、前記実行すべき処理の内容として特定されるようにすることができる。
【００２５】
前記コンテンツの受信が完了した後、所定の時間が経過したとき、前記コンテンツのデータを削除する処理が、前記実行すべき処理の内容として特定されるようにすることができる。
【００２６】
前記コンテンツのデータを記録せずに削除する処理が、前記実行すべき処理の内容として特定されるようにすることができる。
【００２７】
前記コンテンツの送信は、UPnP（Universal Plug and Play）で規定されるコンテンツのアップロードの処理として前記コンテンツ送信装置により実行されるようにすることができる。
【００２８】
前記メタデータ解析手段は、CreateObjectのアクションに伴って、前記コンテンツ受信装置に送信するXML文の一部を解析し、前記処理実行手段は、前記XML文の一部として挿入された記述であって、予め設定されたXMLのタグを用いて生成された記述に基づいて前記コンテンツの受信が完了した後、実行すべき処理の内容と前記処理を実行すべき時刻を特定するようにすることができる。
【００２９】
本発明の第３の側面は、コンテンツ送信装置から送信されたコンテンツを受信するコンテンツ受信装置のコンテンツ受信方法であって、メタデータが付加されたコンテンツのデータを受信し、前記受信した前記メタデータを解析し、前記解析結果に基づいて、前記コンテンツの受信が完了した後、実行すべき処理の内容を特定して、前記特定された前記実行すべき処理を実行するステップを含むコンテンツ受信方法である。
【００３０】
本発明の第３の側面は、コンテンツ送信装置から送信されたコンテンツを受信するコンテンツ受信装置にコンテンツ受信処理を実行させるプログラムであって、メタデータが付加されたコンテンツのデータの受信を制御し、前記受信した前記メタデータの解析を制御し、前記解析結果に基づいて、前記コンテンツの受信が完了した後、実行すべき処理の内容の特定を制御して、前記特定された前記実行すべき処理を実行するように制御するステップを含むコンピュータが読み取り可能なプログラムである。
【００３１】
本発明の第３の側面においては、メタデータが付加されたコンテンツのデータが受信され、前記受信した前記メタデータが解析され、前記解析結果に基づいて、前記コンテンツの受信が完了した後、実行すべき処理の内容を特定して、前記特定された前記実行すべき処理が実行される。
【発明の効果】
【００３２】
本発明によれば、ネットワークに接続された機器において、コンテンツに関連する処理
を、より簡単に実行させることができる。
【発明を実施するための最良の形態】
【００３３】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書または図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書または図面に記載されていることを確認するためのものである。従って、明細書または図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００３４】
本発明の第１の側面のコンテンツ伝送システムは、コンテンツを送信するコンテンツ送信装置と、前記送信装置が送信したコンテンツを受信するコンテンツ受信装置とにより構成されるコンテンツ伝送システムであって、前記コンテンツ送信装置は、前記コンテンツのメタデータに関する情報を前記コンテンツのデータに付加するメタデータ付加手段（例えば、図７のメタデータ関連情報取得部５０１およびCreateObject制御部５０３）と、前記コンテンツ受信装置による前記コンテンツの受信が完了した後、前記コンテンツ受信装置に実行させる処理に関する情報を前記コンテンツのデータに付加されるメタデータに記述する実行処理記述手段（例えば、図７のnextaction制御部５０２）と、前記実行処理記述手段により前記処理に関する情報が記述されたメタデータが付加されたコンテンツのデータを、前記コンテンツ受信装置に送信するデータ送信手段（例えば、図７のhttp-post制御部５０４）とを備え、前記コンテンツ受信装置は、前記メタデータが付加されたコンテンツのデータを受信するデータ受信手段（例えば、図１０のコンテンツ取得部５５１）と、前記データ受信手段が受信した前記メタデータを解析するメタデータ解析手段（例えば、図１０のelementsフィールド解析部５５２）と、前記メタデータ解析手段の解析結果に基づいて、前記コンテンツの受信が完了した後、実行すべき処理の内容を特定して、特定された前記実行すべき処理を実行する処理実行手段（例えば、図１０のnextaction判定部５５３と指令実行制御部５５４）とを備える。
【００３５】
本発明の第２の側面のコンテンツ送信装置は、送信されたコンテンツを受信するコンテンツ受信装置に、コンテンツを送信するコンテンツ送信装置であって、前記コンテンツのメタデータに関する情報を前記コンテンツのデータに付加するメタデータ付加手段（例えば、図７のメタデータ関連情報取得部５０１およびCreateObject制御部５０３）と、前記コンテンツ受信装置による前記コンテンツの受信が完了した後、前記コンテンツ受信装置に実行させる処理に関する情報を前記コンテンツのデータに付加されるメタデータに記述する実行処理記述手段（例えば、図７のnextaction制御部５０２）と、前記実行処理記述手段により前記処理に関する情報が記述されたメタデータが付加されたコンテンツのデータを、前記コンテンツ受信装置に送信するデータ送信手段（例えば、図７のhttp-post制御部５０４）とを備える。
【００３６】
本発明の第２の側面のコンテンツ送信方法は、送信されたコンテンツを受信するコンテンツ受信装置に、コンテンツを送信するコンテンツ送信装置のコンテンツ送信方法であって、前記コンテンツのメタデータに関する情報を前記コンテンツのデータに付加し（例えば、図９のステップＳ１２１乃至Ｓ１２３の処理）、前記コンテンツ受信装置による前記コンテンツの受信が完了した後、前記コンテンツ受信装置に実行させる処理に関する情報を前記コンテンツのデータに付加されるメタデータに記述し（例えば、図９のステップＳ１２５の処理）、前記処理に関する情報が記述されたメタデータが付加されたコンテンツのデータを、前記コンテンツ受信装置に送信する（例えば、図８のステップＳ１０４の処理）ステップを含む。
【００３７】
本発明の第３の側面のコンテンツ受信装置は、コンテンツ送信装置から送信されたコンテンツを受信するコンテンツ受信装置であって、メタデータが付加されたコンテンツのデータを受信するデータ受信手段（例えば、図１０のコンテンツ取得部５５１）と、前記データ受信手段が受信した前記メタデータを解析するメタデータ解析手段（例えば、図１０のelementsフィールド解析部５５２）と、前記メタデータ解析手段の解析結果に基づいて、前記コンテンツの受信が完了した後、実行すべき処理の内容を特定する処理特定して、前記特定された前記実行すべき処理を実行する処理実行手段（例えば、nextaction判定部５５３と図１０の指令実行制御部５５４）とを備える。
【００３８】
本発明の第３の側面のコンテンツ受信方法は、コンテンツ送信装置から送信されたコンテンツを受信するコンテンツ受信装置のコンテンツ受信方法であって、メタデータが付加されたコンテンツのデータを受信し（例えば、図１１のステップＳ２０４およびＳ２０５の処理）、前記受信した前記メタデータを解析し（例えば、図１２のステップＳ２２１の処理）、前記解析結果に基づいて、前記コンテンツの受信が完了した後、実行すべき処理の内容を特定して、前記特定された前記実行すべき処理を実行する（例えば、図１２のステップＳ２２３の処理とステップＳ２２５の処理）ステップを含む。
【００３９】
以下、図面を参照して、本発明の実施の形態について説明する。
【００４０】
図１は、本発明の一実施の形態に係るコンテンツ伝送システム１０の構成例を示すブロック図である。コンテンツ伝送システム１０は、例えば、UPnP（Universal Plug and Play）の仕様に適合する機器により構成されるネットワークシステムとされる。
【００４１】
同図において、コンテンツ伝送システム１０には、テレビジョン受像機２１、パーソナルコンピュータ（ＰＣ）３１、およびストレージサーバ４１が、それぞれネットワーク１１により相互に接続される。なお、ネットワーク１１は、例えば、イーサネット（登録商標）などのローカルエリアネットワークとされる。
【００４２】
テレビジョン受像機２１は、内部にチューナ２２を有する構成とされ、例えば、チューナ２２により、コンテンツのデータがMPEG２などの所定の圧縮符号化方式により圧縮符号化されて放送されるデジタル放送信号を受信して復号し、復号された画像または音声のデータを、図示せぬディスプレイまたはスピーカなどに出力する。また、テレビジョン受像機２１は、必要に応じて、チューナ２２が受信した放送信号を、コンテンツのデータとしてネットワーク１１に送信するようになされている。
【００４３】
パーソナルコンピュータ３１は、図２に示されるような構成とされ、インストールされたプログラムなどに基づいて所定の情報処理を実行する。
【００４４】
すなわち、図２において、CPU（Central Processing Unit）１０１は、ROM（Read Only Memory）１０２に記憶されているプログラム、または記憶部１０８からRAM（Random Access Memory）１０３にロードされたプログラムに従って各種の処理を実行する。RAM１０３にはまた、CPU１０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【００４５】
CPU１０１、ROM１０２、およびRAM１０３は、バス１０４を介して相互に接続されている。このバス１０４にはまた、入出力インタフェース１０５も接続されている。
【００４６】
入出力インタフェース１０５には、キーボード、マウスなどよりなる入力部１０６、CRT(Cathode Ray Tube)、ＬＣＤ(Liquid Crystal display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部１０７、ハードディスクなどより構成される記憶部１０８、LANカードなどのネットワークインタフェースカードなどより構成される通信部１０９が接続されている。通信部１０９は、ネットワーク１１またはネットワーク３０を介しての通信処理を行う。
【００４７】
入出力インタフェース１０５にはまた、必要に応じてドライブ１１０が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア１１１が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部１０８にインストールされる。
【００４８】
パーソナルコンピュータ３１は、インターネットなどのネットワーク３０に接続され、例えば、ネットワーク３０からMPEG２などの所定の圧縮符号化方式により圧縮符号化されたコンテンツのデータストリームなどを受信し、受信したデータを復号して復号された画像または音声のデータを、図示せぬディスプレイまたはスピーカなどに出力する処理を実行する。また、パーソナルコンピュータ３１は、必要に応じて、受信したコンテンツのデータをネットワーク１１に送信するようになされている。
【００４９】
ストレージサーバ４１は、例えば、HDDレコーダなどとして構成され、テレビジョン受像機２１またはパーソナルコンピュータ３１から送信されたコンテンツのデータを受信して内部のストレージ５２に記録するようになされている。
【００５０】
ストレージサーバ４１は、制御部５１、ストレージ５２、およびドライブ５３を含む構成とされ、制御部５１は、プロセッサ、メモリなどを有し、予めインストールされたプログラムなどに基づいてストレージサーバ４１の各部を制御するようになされている。
【００５１】
また、制御部５１は、内部にタイマ６１を有する構成とされ、必要に応じて、タイマ６１により計時された時刻に関する情報を取得し、時刻に基づく処理を実行するようになされている。
【００５２】
ストレージ５２は、例えば、HDD（Hard Disk Drive）などで構成され、制御部５１の制御に基づいて、データを記録したり、読み出したり、また、記録されたデータを削除する。
【００５３】
ドライブ５３には、リムーバブルメディア７１が装着できるようになされている。ドライブ５３は、制御部５１の制御に基づいて装着されたリムーバブルメディア７１に対して、データを記録したり、読み出したり、また、記録されたデータを削除するようになされている。
【００５４】
リムーバブルメディア７１は、例えば、磁気ディスク（フロッピディスク（登録商標）を含む）、光ディスク（CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む）、光磁気ディスク（MD（Mini-Disk）（登録商標）を含む）、メモリスティックなどの半導体メモリなどとして構成され、ドライブ５３に着脱可能となるように構成されている。
【００５５】
ここで、メモリスティックとは、ソニー株式会社によって開発されたフラッシュメモリカードの一種である。このメモリスティックは、プラスチックケース内に電気的に書換えや消去が可能な不揮発性メモリであるEEPROMの一種であるフラッシュメモリ素子を格納したものであり、画像や音声、音楽等の各種データの書き込み及び読み出しが可能となっている。また、このメモリスティックには、データ制御用のコントローラも格納されている。
【００５６】
なお、コンテンツ伝送システム１０において、テレビジョン受像機２１またはパーソナルコンピュータ３１からコンテンツのデータを、ストレージサーバ４１に送信し、ストレージサーバ４１のストレージ５２に記録させる処理は、UPnPで規定されるコンテンツのアップロードの処理として実行されるものとする。ＵＰｎＰの使用に適合する各機器は、ＵＰｎＰの機能を用いてユーザに複雑な操作を求めることなく、ネットワークに参加し、通信が行える状態になるだけでなく、他の機器の検出や接続までをも自動的に行うことができるようにされる。
【００５７】
ＵＰｎＰは、１０／１００ＢＡＳＥ−Ｔのイーサネット（登録商標）を用いたネットワーク通信において代表的なＩＥＥＥ８０２ネットワーク上で用いることが可能な、ＩＰ（Internet Protocol）およびＩＰ上のＴＣＰ（Transmission Control Protocol）やＵＤＰ（User Datagram Protocol）などで構成されるプロトコル群とデータフォーマットの仕様であり、インターネット標準通信（ＴＣＰ／ＩＰ通信）における機能を拡充するものである。
【００５８】
ＵＰｎＰにおいて、実際のデータの送受は、ＩＰ、ＴＣＰ、ＵＤＰのインターネット標準通信プロトコルによって行われる。
【００５９】
ＵＰｎＰによるコンテンツの伝送においては、各機器を、コンテンツデータを提供する装置であるメディアサーバ（Media Server）と、制御端末装置として機能するコントロールポイント（Control Point）に分けている。ここで、メディアサーバは、ネットワークシステムにおいて一般にサーバ装置と呼ばれているものに相当し、例えば、図１のストレージサーバ４１がこれに該当する。
【００６０】
また、コントロールポイント（制御装置）は、ネットワークに接続された各ＵＰｎＰ機器を制御することができるものである。コントロールポイントとしての機能は、メディアサーバにも搭載することが可能であり、ネットワークを構成する全ての機器にコントロールポイントとしての機能を搭載することも、また、ネットワークを構成する任意の機器にコントロールポイントを搭載することもできるようになされている。図１の例では、テレビジョン受像機２１、パーソナルコンピュータ３１、およびストレージサーバ４１にコントロールポイントとしての機能が搭載されているものとする。
【００６１】
コントロールポイントの機能は、アクション（Action：実行）とクエリ（Query：問合せ）の２つの機能に大きく分類される。アクションはサービスディスクリプションのアクション情報に規定された方法で行われ、アクションを実施することによって、コントロールポイントはターゲットを操作することができる。クエリはサービスディスクリプションの機器情報の値を取り出すために用いられる。アクションまたはクエリの実施においては、ＳＯＡＰというトランスポートプロトコルが利用され、その表現としてはＸＭＬが用いられる。
【００６２】
メディアサーバには、ＣＤＳ（Contents Directory Service）という機能が組み込まれており、コントロールポイントに対して、メディアサーバにどのようにコンテンツが格納されているかを通知する。ＣＤＳには、コンテナ（Container）とアイテム（Item）という二つの抽象化されたオブジェクト（Object）があり、いわば米マイクロソフト社が提供するオペレーティングシステムであるＷｉｎｄｏｗｓ（登録商標）におけるフォルダ（Folder）とファイル（File）に相当する。
【００６３】
ここで、UPnPで規定されるコンテンツのアップロードの処理について図３のアローチャートを参照して説明する。ここでは、コントロールポイントとしてのパーソナルコンピュータ３１から、メディアサーバとしてのストレージサーバ４１にコンテンツをアップロードする処理を例として説明する。
【００６４】
ステップＳ１１において、パーソナルコンピュータ３１は、UPnPで規定されるアクション「CreateObject」を実施する。これにより、XMLで記述された情報がストレージサーバ４１に送信されて、ステップＳ３１でこれが受信される。
【００６５】
ステップＳ３１において、アクション「CreateObject」を受信したストレージサーバ４１は、ステップＳ３２において、コンテンツのデータを格納する記憶領域を表すURL（Uniform Resource Locator）をパーソナルコンピュータ３１に送信し、ステップＳ１２においてこれが受信される。
【００６６】
ステップＳ１３において、パーソナルコンピュータ３１は、UPnPで規定されるhttp-postの処理を実行し、コンテンツのデータを、ステップＳ１２の処理で受信したURLに送信する。
【００６７】
ステップＳ３３において、ストレージサーバ４１は、ステップＳ１３の処理により送信されてきたコンテンツのデータを受信してストレージ５２に記憶する。
【００６８】
このようにして、パーソナルコンピュータ３１（コントロールポイント）から、ストレージサーバ４１（メディアサーバ）にコンテンツがアップロードされる。
【００６９】
図４は、アクション「CreateObject」に伴って、パーソナルコンピュータ３１（コントロールポイント）が生成してストレージサーバ４１（メディアサーバ）に送信するXML文の例を示す図である。図４には、タイトルが「MPEG１  Sample  Movie2」であるコンテンツを、「dvdrec」というコンテナにアップロードするためのXML文２００が示されている。
【００７０】
なお、コンテナ「dvdrec」は、ストレージ５２内の論理的記憶領域としてストレージサーバ４１により管理されているものとする。
【００７１】
XML文２００の第１行目乃至第７行目は、「CreateObject」に対応するコマンド、パラメータ等が記述されており、第７行目に、アップロード先のコンテナ「dvdrec」を特定するための記述がなされている。
【００７２】
XML文２００の枠２１０で囲まれた部分は、elementsフィールドと称される。elementsフィールドは、主に、アップロードするコンテンツに付与するメタデータが記述されるフィールドとされる。
【００７３】
elementsフィールド内の枠２２１で囲まれる部分は、XML記述上の宣言文とされ、枠２２２で囲まれる部分には、アップロードするコンテンツのタイトル「MPEG１  Sample  Movie2」を特定するための記述がなされており、枠２２３で囲まれる部分には、アップロードするコンテンツのフォーマットを特定するための記述がなされており、この例では、このコンテンツがMPEGトランスポートストリームの形式で伝送され、DLNA（Digital Living Network Alliance）で定義される所定のフォーマットに対応するものであることを特定するための記述がなされている。
【００７４】
このような、XML文２００を、アクション「CreateObject」に伴って、パーソナルコンピュータ３１からストレージサーバ４１に送信することで、タイトル「MPEG１  Sample  Movie2」のコンテンツを、コンテナ「dvdrec」にアップロードすることができる。
【００７５】
このようにアップロードされたコンテンツを、ストレージサーバ４１で再生し、例えば、ストレージサーバ４１が備える図示せぬディスプレイやスピーカなどから出力させることでコンテンツを楽しむことも可能であるが、例えば、ストレージサーバ４１にアップロードされたコンテンツを、リムーバブルメディア７１に記録して、そのリムーバブルメディア７１を携帯型のディスプレイに装着して録画した画像を再生することも可能である。
【００７６】
携帯型のディスプレイで画像を再生する場合、例えば、画像データの圧縮符号化方式を変更する必要がある。すなわち、テレビジョン受像機などにより受信される画像データは、MPEG２方式で圧縮符号化されることが多いが、携帯型のディスプレイなどにおいて再生可能な画像データは、MPEG４方式で圧縮符号化された画像データであることが多いので、例えば、ストレージサーバ４１にアップロードされたコンテンツを携帯型のディスプレイで再生可能な方式に圧縮符号化し、その圧縮符号化されたデータをリムーバブルメディア７１に記録する必要がある。
【００７７】
このように、コンテンツのアップロードを行うユーザが、例えば、ストレージサーバ４１などの機器に対してコンテンツをアップロードした場合、アップロードされたコンテンツをリムーバブルメディア７１などの記録媒体に記録させることが多いと考えられる。
【００７８】
しかしながら、UPnPで規定される処理によれば、コンテンツのアップロードの処理と、アップロードしたコンテンツを記録媒体に記録させる処理とは、別々の操作が必要となり、操作が煩雑になってしまう。
【００７９】
そこで、本発明においては、アクション「CreateObject」に伴って、コントロールポイントが生成してメディアサーバに送信するXML文のelementsフィールド内に、アップロードされたコンテンツをリムーバブルメディア７１に複製（または移動）する処理の実行を、メディアサーバに指令するための記述を挿入する。
【００８０】
具体的には、所定の処理の実行をメディアサーバに指令するためのXMLのタグを予め定義しておき、メディアサーバに実行させるべき指令を、そのタグとともにelementsフィールド内の所定の位置に挿入する。そして、メディアサーバが「CreateObject」のXML文を受信した後、elementsフィールドを解析して、指令された処理を実行するようにすればよい。このようにすることで、ユーザは、コンテンツをアップロードさせるだけで、コンテンツのアップロード完了後にコンテンツを複製（または移動）する処理が自動的に実行されるようにすることができる。
【００８１】
図５は、アップロードされたコンテンツをリムーバブルメディア７１に複製する処理の実行を、メディアサーバに指令するための記述が挿入されたXML文の例を示す図である。同図に示されるXML文３００は、図４のXML文２００と同様に、アクション「CreateObject」に伴って、パーソナルコンピュータ３１が生成してストレージサーバ４１に送信するXML文であり、やはりタイトルが「MPEG１  Sample  Movie2」であるコンテンツを、「dvdrec」というコンテナにアップロードするためのものである。
【００８２】
図５のXML文３００の第１行目乃至第７行目の記述は、図４のXML文２００の第１行目乃至第７行目の記述と同様であり、また、図５の枠３１０、および枠３２１乃至枠３２３で囲まれた部分の記述は、それぞれ図４の枠２１０、および枠２２１乃至枠２２３で囲まれた部分の記述と同様なので、詳細な説明は省略する。
【００８３】
図５のXML文３００は、図４のXML文２００の場合と異なり、枠３２３で囲まれる部分の１行前に、枠３３１で囲まれた記述がなされており、この例では、
【００８４】
<private：nextaction>copy-to-memorystick</private：nextaction>
【００８５】
と記述されている。
【００８６】
これは、所定の処理の実行をメディアサーバに指令するためのXMLのタグ「private：nextaction」により、「copy-to-memorystick」という指令がなされたことを表しており、この指令が実行されることにより、アップロードされたコンテンツのデータが、リムーバブルメディア７１であるメモリスティックにコピー（複製）されることになる。
【００８７】
なお、ここで示したXMLのタグ「private：nextaction」は、所定の処理の実行をメディアサーバに指令するためのXMLのタグの一例であって、別のXMLのタグを、所定の処理の実行をメディアサーバに指令するためのXMLのタグとして定義するようにしてもよい。
【００８８】
このような、XML文３００を、アクション「CreateObject」に伴って、パーソナルコンピュータ３１からストレージサーバ４１に送信することで、タイトル「MPEG１  Sample  Movie2」のコンテンツを、コンテナ「dvdrec」にアップロードすることができるとともに、アップロードされたコンテンツを自動的にリムーバブルメディア７１にコピーさせることができる。
【００８９】
ここでは、アップロードされたコンテンツを自動的にリムーバブルメディア７１にコピーさせる場合の例について説明したが、例えば、枠３３１で囲まれた部分を、
【００９０】
<private：nextaction>move-to-memorystick</private：nextaction>
【００９１】
となるようなように記述するなどして、アップロードされたコンテンツを自動的にリムーバブルメディア７１に移動（ムーブ）させるようにしてもよい。
【００９２】
なお、XMLのタグ「private：nextaction」による指令は、コンテンツのアップロード完了後、直ちに実行されるようにしてもよいが、例えば、タイマ６１から供給される時刻の情報に基づいて、所定の時間が経過したと判定されたとき実行されるようにすることも可能である。
【００９３】
例えば、ストレージサーバ４１にアップロードが完了した後、所定の時間が経過したときにアップロードされたストレージ５２のコンテンツがコンテナから削除されるようにすることも可能である。
【００９４】
図６は、アップロードされたコンテンツを、アップロードが完了した後、所定の時間が経過したときにアップロードされたコンテンツをコンテナから削除する処理の実行を、メディアサーバに指令するための記述が挿入されたXML文の例を示す図である。同図に示されるXML文４００は、図４のXML文２００と同様に、アクション「CreateObject」に伴って、パーソナルコンピュータ３１が生成してストレージサーバ４１に送信するXML文であり、やはりタイトルが「MPEG１  Sample  Movie2」であるコンテンツを、「dvdrec」というコンテナにアップロードするためのものである。
【００９５】
図６のXML文４００の第１行目乃至第７行目の記述は、図４のXML文２００の第１行目乃至第７行目の記述と同様であり、また、図６の枠４１０、および枠４２１乃至枠４２３で囲まれた部分の記述は、それぞれ図４の枠２１０、および枠２２１乃至２２３で囲まれた部分の記述と同様なので、詳細な説明は省略する。
【００９６】
図６のXML文４００は、図４のXML文２００の場合と異なり、枠４２３で囲まれる部分の１行前に、枠４３１で囲まれた記述がなされており、この例では、
【００９７】
<private：nextaction>lifetime=24hours </private：nextaction>
【００９８】
と記述されている。
【００９９】
これは、所定の処理の実行をメディアサーバに指令するためのXMLのタグ「private：nextaction」により、「lifetime=24hours」という指令がなされたことを表しており、この指令が実行されることにより、アップロード完了後２４時間経過したときに、アップロードされたコンテンツのデータがストレージ５２のコンテナから削除されることになる。
【０１００】
このような、XML文４００を、アクション「CreateObject」に伴って、パーソナルコンピュータ３１からストレージサーバ４１に送信することで、タイトル「MPEG１  Sample  Movie2」のコンテンツを、コンテナ「dvdrec」にアップロードすることができるとともに、アップロードされたコンテンツを、所定の時間が経過したとき自動的に削除させることができる。
【０１０１】
図７は、パーソナルコンピュータ３１のCPU１０１で実行されるソフトウェアであって、コンテンツのアップロードに関する処理を制御するソフトウェアの機能的構成例を示すブロック図である。
【０１０２】
同図において、メタデータ関連情報取得部５０１は、アップロードするコンテンツのメタデータに関する情報を取得する。コンテンツのメタデータは、例えば、入力部１０６などの操作を介してユーザにより入力されることで取得されるようにしてもよいし、コンテンツのデータなどを解析することにより取得されるようにしてもよい。
【０１０３】
nextaction制御部５０２は、上述したXMLのタグ「private：nextaction」の記述を制御する。nextaction制御部５０２は、例えば、入力部１０６などの操作を介して、コンテンツのアップロードが完了した後、ストレージサーバ４１に実行させるべき所定の処理（例えば、コンテンツのデータの複製（または移動）、削除など）が、ユーザにより指定されたか否かを判定し、コンテンツのアップロードが完了した後、ストレージサーバ４１に実行させるべき所定の処理がユーザにより指定されたと判定された場合、XMLのタグ「private：nextaction」を用いて所定の処理の実行を、メディアサーバに指令するための記述を生成する。
【０１０４】
CreateObject制御部５０３は、アクション「CreateObject」に伴って、パーソナルコンピュータ３１からストレージサーバ４１に送信するXML文を生成し、生成されたXML文の送信を制御する。また、CreateObject制御部５０３は、nextaction制御部５０２により生成されたタグ「private：nextaction」を用いた記述を、上述しようにXML文のelementsフィールド内の所定の位置に挿入する。
【０１０５】
http-post制御部５０４は、UPnPで規定されるhttp-postの処理であって、コンテンツのデータを、ストレージサーバ４１に送信する処理（図３のステップＳ１３の処理）の実行を制御する。
【０１０６】
次に、図８のフローチャートを参照して、パーソナルコンピュータ３１によるコンテンツアップロード処理の例について説明する。この処理は、例えば、入力部１０６などの操作を介して、ユーザにより、コンテンツのアップロードが指令されたとき実行される。
【０１０７】
ステップＳ１０１において、メタデータ関連情報取得部５０１およびnextaction制御部５０２は、図９のフローチャートを参照して後述するelementsフィールド編集処理を実行する。これにより、アクション「CreateObject」に伴って、パーソナルコンピュータ３１からストレージサーバ４１に送信するXML文のelementsフィールドの記述が生成される。
【０１０８】
ステップＳ１０２において、CreateObject制御部５０３は、アクション「CreateObject」の処理を実行する。この処理は、図３のステップＳ１１の処理に対応する処理であり、図４乃至図６を参照して説明したXML文がストレージサーバ４１に送信される。
【０１０９】
ステップＳ１０３において、CreateObject制御部５０３は、ストレージサーバ４１から送信された情報を受信して、コンテンツのデータを格納する記憶領域を表すURLを取得する。この処理は、図３のステップＳ１２の処理に対応する処理である。
【０１１０】
ステップＳ１０４において、http-post制御部５０４は、UPnPで規定されるhttp-postの処理を実行し、コンテンツのデータを、ステップＳ１０３の処理で受信したURLに送信する。この処理は、図３のＳ１３の処理に対応する処理である。
【０１１１】
このようにして、パーソナルコンピュータ３１によるコンテンツアップロード処理が実行される。
【０１１２】
次に、図９のフローチャートを参照して、図８のステップＳ１０１のelementsフィールド編集処理の詳細について説明する。
【０１１３】
ステップＳ１２１において、メタデータ関連情報取得部５０１は、アップロードすべきコンテンツのタイトルの情報を取得する。このとき、例えば、コンテンツのタイトルとして「MPEG１  Sample  Movie2」という情報が取得される。
【０１１４】
ステップＳ１２２において、メタデータ関連情報取得部５０１は、アップロードすべきコンテンツのフォーマットの情報を取得する。このとき、例えば、コンテンツがMPEGトランスポートストリームの形式で伝送され、DLNA（Digital Living Network Alliance）で定義される所定のフォーマットに対応するものであることを特定する情報が取得される。
【０１１５】
ステップＳ１２３において、メタデータ関連情報取得部５０１は、ステップＳ１２１の処理で取得されたコンテンツのタイトルおよびステップＳ１２２の処理で取得されたコンテンツのフォーマットを特定する情報を、elementsフィールドに記述する。このとき、図４の枠２２２および枠２２３で囲まれた部分、図５の枠３２２および枠３２３で囲まれた部分、または図６の枠４２２および枠４２３で囲まれた部分の記述が生成されることになる。
【０１１６】
ステップＳ１２４において、nextaction制御部５０２は、アップロード後の処理が指令されたか否かを判定する。このとき、例えば、ユーザにより、コンテンツのアップロードが完了した後、ストレージサーバ４１に、そのコンテンツのデータの複製（または移動）、削除などの処理を実行させることが指令されたか否かが判定される。例えば、入力部１０６などの操作を介して、ユーザにより、コンテンツのデータの複製（または移動）、削除などの処理を実行させることが指令されたと判定された場合、処理は、ステップＳ１２５に進む。
【０１１７】
ステップＳ１２５において、nextaction制御部５０２は、XMLのタグ「private：nextaction」を用いて、ステップＳ１２４で指令されたと判定された処理の実行を、ストレージサーバ４１に指令するための情報を、elementsフィールドに記述する。例えば、ステップＳ１２４で、コンテンツのアップロードが完了した後、ストレージサーバ４１に、そのコンテンツのデータを、リムーバブルメディア７１に複製（コピー）させる処理が指令されたと判定された場合、図５の枠３３１で囲まれた部分の記述が生成されることになり、例えば、ステップＳ１２４で、コンテンツのアップロードが完了した後、所定の時間（例えば、２４時間）が経過したとき、ストレージサーバ４１に、そのコンテンツのデータを、削除させる処理が指令されたと判定された場合、図６の枠４３１で囲まれた部分の記述が生成されることになる。
【０１１８】
なお、ステップＳ１２４において、アップロード後の処理が指令されなかったと判定された場合、ステップＳ１２５の処理は、スキップされる。
【０１１９】
このようにして、elementsフィールドが編集される。
【０１２０】
図１０は、ストレージサーバ４１の制御部５１で実行されるソフトウェアであって、他の機器からアップロードされたコンテンツの取得に関する処理を制御するソフトウェアの機能的構成例を示すブロック図である。
【０１２１】
同図において、コンテンツ取得部５５１は、例えば、パーソナルコンピュータ３１など、他の機器からコンテンツのアップロードの要求があった場合、コンテンツを格納するURLに関する情報を他の機器に送信する処理、http-postの処理において送信されてくるコンテンツを受信する処理などの実行を制御する。
【０１２２】
elementsフィールド解析部５５２は、アクション「CreateObject」に伴って他の機器から送信されたXML文の中のelementsフィールドの内容を解析する。
【０１２３】
nextaction判定部５５３は、elementsフィールド解析部５５２の解析結果に基づいて、コンテンツのアップロードが完了した後、実行すべき処理があるか否かを判定する。
【０１２４】
指令実行制御部５５４は、nextaction判定部５５３により、コンテンツのアップロードが完了した後、実行すべき処理があると判定された場合、その指令に対応する処理を実行する。
【０１２５】
次に、図１１のフローチャートを参照して、ストレージサーバ４１によるコンテンツ取得処理について説明する。
【０１２６】
ステップＳ２０１において、コンテンツ取得部５５１は、アクション「CreateObject」に伴いパーソナルコンピュータ３１から送信されたXML文を受信したか否かを判定し、受信したと判定されるまで待機する。
【０１２７】
ステップＳ２０１において、アクション「CreateObject」に伴いパーソナルコンピュータ３１から送信されたXML文を受信したと判定された場合、処理は、ステップＳ２０２に進み、コンテンツ取得部５５１は、コンテンツのデータを格納する記憶領域を表すURLをパーソナルコンピュータ３１に送信する。この処理は、図３のステップＳ３２の処理に対応する処理である。
【０１２８】
ステップＳ２０３において、コンテンツ取得部５５１は、パーソナルコンピュータ３１からhttp-postを受信したか否かを判定し、受信したと判定されるまで待機する。
【０１２９】
ステップＳ２０３において、コンテンツ取得部５５１は、パーソナルコンピュータ３１からhttp-postを受信したと判定された場合、処理は、ステップＳ２０４に進み、コンテンツ取得部５５１は、コンテンツのデータを受信し、受信したコンテンツのデータをストレージ５２のコンテナに記録する。
【０１３０】
ステップＳ２０５において、コンテンツ取得部５５１は、パーソナルコンピュータ３１からアップロードされたコンテンツのデータの受信と記録が完了したか否かを判定し、まだ、コンテンツのデータの受信と記録が完了していないと判定された場合、ステップＳ２０４に戻り、それ以後の処理を繰り返し実行する。
【０１３１】
なお、ステップＳ２０４とＳ２０５の処理は、図３のステップＳ３３の処理に対応する処理である。
【０１３２】
ステップＳ２０５において、パーソナルコンピュータ３１からアップロードされたコンテンツのデータの受信と記録が完了したと判定された場合、処理は、ステップＳ２０６に進む。
【０１３３】
ステップＳ２０６において、elementsフィールド解析部５５２乃至指令実行制御部５５４は、図１２を参照して後述するelementsフィールド検証処理を実行する。これにより、elementsフィールドの記述に基づく処理の実行が制御される。
【０１３４】
このようにして、コンテンツが取得される。
【０１３５】
次に、図１２のフローチャートを参照して、図１１のステップＳ２０６のelementsフィールド検証処理の詳細について説明する。
【０１３６】
ステップＳ２２１において、elementsフィールド解析部５５２は、elementsフィールドのXMLのタグをチェックする。
【０１３７】
ステップＳ２２２において、nextaction判定部５５３は、ステップＳ２２１の処理の結果に基づいて、XMLのタグ「private：nextaction」があったか否かを判定し、XMLのタグ「private：nextaction」があったと判定された場合、処理は、ステップＳ２２３に進む。
【０１３８】
ステップＳ２２３において、nextaction判定部５５３は、タグ「private：nextaction」を用いて記述された指令を解釈する。
【０１３９】
例えば、
【０１４０】
<private：nextaction>copy-to-memorystick</private：nextaction>
【０１４１】
という記述がなされていた場合、コンテンツのアップロードの完了後、すなわち図１１のステップＳ２０５において、パーソナルコンピュータ３１からアップロードされたコンテンツのデータの受信と記録が完了したと判定された後、リムーバブルメディア７１に、ストレージ５２に記録されたコンテンツのデータをコピーする処理を実行すべきものと解釈する。
【０１４２】
また、例えば、
【０１４３】
<private：nextaction>lifetime=24hours </private：nextaction>
【０１４４】
という記述がなされていた場合、コンテンツのアップロードの完了後、すなわち図１１のステップＳ２０５において、パーソナルコンピュータ３１からアップロードされたコンテンツのデータの受信と記録が完了したと判定された後、２４時間経過したとき、ストレージ５２に記録されたコンテンツのデータを削除する処理を実行すべきものと解釈する。
【０１４５】
ステップＳ２２４において、指令実行制御部５５４は、ステップＳ２２３で解釈された処理を実行すべき時刻か否かを判定し、処理を実行すべき時刻であると判定されるまで待機する。このとき、例えば、タイマ６１から供給される時刻の情報に基づいて、ステップＳ２２３で解釈された処理を実行すべき時刻か否かが判定される。なお、ステップＳ２２３で解釈された処理において、例えば、処理を実行すべき時刻が指定されていない場合、ステップＳ２２４の処理はスキップされるようにしてもよい。
【０１４６】
ステップＳ２２４において、処理を実行すべき時刻であると判定された場合、処理は、ステップＳ２２５に進み、指令実行制御部５５４は、ステップＳ２２３で解釈された処理を実行する。
【０１４７】
このとき、例えば、リムーバブルメディア７１に、ストレージ５２に記録されたコンテンツのデータをコピー（または移動）する処理、ストレージ５２に記録されたコンテンツのデータを削除する処理などの処理が実行される。
【０１４８】
このようにして、elementsフィールドの記述に基づく処理が実行される。
【０１４９】
以上においては、パーソナルコンピュータ３１からストレージサーバ４１にコンテンツがアップロードされる場合の例について説明したが、テレビジョン受像機２１からストレージサーバ４１に、コンテンツがアップロードされる場合においても同様にアップロードの処理が行われ、図５のXML文３００または図６のXML文４００を、アクション「CreateObject」に伴って、テレビジョン受像機２１からストレージサーバ４１に送信することで、タイトル「MPEG１  Sample  Movie2」のコンテンツを、コンテナ「dvdrec」にアップロードすることができるとともに、アップロードされたコンテンツを、複製、移動または削除する処理を自動的に実行させることができる。
【０１５０】
すなわち、テレビジョン受像機２１のチューナ２２を、パーソナルコンピュータ３１と同様に、プロセッサ、メモリなどを有する構成とし、図７を参照して上述した構成と同様の機能的構成を有するソフトウェアをインストールして実行することにより、やはり図８と図９を参照して上述した処理を実行することが可能である。
【０１５１】
このようにすることで、例えば、放送されたコンテンツをテレビジョン受像機で受信してアップロードするとき、アップロード後に、コンテンツをリムーバブルメディアにコピーまたはムーブさせたり、所定の時間が経過した後、削除させたりする処理を自動的に実行させるようにすることが可能となる。
【０１５２】
また、以上においては、アップロード先（sinkと称する）がストレージサーバ４１である場合の例について説明したが、例えば、テレビジョン受像機２１、パーソナルコンピュータ３１がコンテンツのアップロード先となるようにしても構わない。
【０１５３】
さらに、ストレージサーバ４１から他の機器にコンテンツがアップロードされるようにすることも可能である。
【０１５４】
また、以上においては、コンテンツのアップロード完了後にコンテンツの複製、移動、または削除を行う処理が自動的に実行される例について説明したが、例えば、コンテンツのアップロード完了後にコンテンツの再生、圧縮符号化など他の処理が実行されるようにすることも可能である。
【０１５５】
ところで、アップロードされるコンテンツは、必ずしも、再生されることを目的とするものとは限られない。例えば、ネットワーク上で利用可能な帯域幅を測定するために、ダミーとしてアップロードされるコンテンツなどもある。
【０１５６】
例えば、放送されたコンテンツをテレビジョン受像機２１で受信してストレージサーバ４１にアップロードするとき、ネットワーク１１の構成、使用状況などにより、コンテンツのアップロードの処理において利用可能な帯域幅が小さくなってしまうことがある。このような場合、ネットワーク１１において、コンテンツのアップロードに利用可能な帯域幅が所定の値より小さいとき、放送されたコンテンツのデータを遅滞なく転送することができず、結果としてアップロードが失敗する可能性がある。
【０１５７】
そこで、例えば、テレビジョン受像機２１とストレージサーバ４１との通信において利用可能な帯域幅を事前に測定しておき、コンテンツのアップロードを行うにあたって帯域幅が不足していないかをチェックすることが考えられる。
【０１５８】
このような場合、例えば、コンテンツのアップロードを開始する前に、テレビジョン受像機２１からストレージサーバ４１に、ダミーコンテンツをアップロードし、ダミーコンテンツのアップロードに要した時間に基づいて、利用可能な帯域幅を事前に測定するようにすればよい。ここで、ダミーコンテンツのサイズ（データ容量）は、既知であるものとする。また、UPnPで規定されるhttp-postの処理では、コンテンツのデータの転送処理が全て正常に終了したとき、ストレージサーバ４１から「Acknowledge」と呼ばれる所定のデータが送信される。この「Acknowledge」に基づいて、ダミーコンテンツのアップロードに要した時間を特定することも可能である。
【０１５９】
例えば、テレビジョン受像機２１から１０Ｍバイトのダミーコンテンツを、ストレージサーバ４１にアップロードする場合、テレビジョン受像機２１がアップロードを開始した時刻から、「Acknowledge」を受信した時刻までの時間（すなわち、アップロードに要した時間）が１０秒であったとすると、テレビジョン受像機２１とストレージサーバ４１との通信において利用可能な帯域幅は、８Ｍbps（＝１０×８／１０）であると測定することができる。
【０１６０】
このように、利用可能な帯域幅を事前に測定しておき、コンテンツのアップロードを行うにあたって帯域幅が不足していないかをチェックし、帯域幅が不足している場合、例えば、ユーザに警告メッセージを出力したり、コンテンツのデータを圧縮する処理を実行させたりすれば、より確実にコンテンツのアップロードを実行させることが可能となる。
【０１６１】
しかしながら、このようにすると、ストレージサーバ４１のストレージ５２にダミーコンテンツが記録されたままとなる。すなわち、ダミーコンテンツをアップロードされた機器（いまの場合、ストレージサーバ４１）は、アップロードされたコンテンツがダミーコンテンツであるか否かを識別できないので、ダミーコンテンツも通常のコンテンツと同様に記録せざるを得ない。
【０１６２】
例えば、ネットワーク１１に接続される複数の機器が、ストレージサーバ４１にコンテンツをアップロードするに先立って、都度、利用可能な帯域幅を事前に測定するとすれば、ストレージ５２に複数のダミーコンテンツが次々と記録され、その結果、ストレージ５２の容量が不足して、通常のコンテンツのアップロードができなくなってしまうこともあり得る。
【０１６３】
また、利用可能な帯域幅を事前に測定する処理を実行した機器のユーザに、ストレージ５２に記録されたダミーコンテンツを都度削除させる操作を行わせるようにしてもよいが、このような操作は、ユーザの負担感を増大させ、コンテンツ伝送システム全体の利便性の低下を招くおそれもある。
【０１６４】
本発明は、このような問題も解決することができる。
【０１６５】
図１３は、例えば、利用可能な帯域幅を測定するために行われるダミーコンテンツのアップロードに関するXML文の例を示す図である。同図に示されるXML文６００は、図４のXML文２００と同様に、アクション「CreateObject」に伴って、パーソナルコンピュータ３１、またはテレビジョン受像機２１が生成してストレージサーバ４１に送信するXML文であり、やはりタイトルが「MPEG１  Sample  Movie2」であるコンテンツを、「dvdrec」というコンテナにアップロードするためのものである。なお、いまの場合、タイトルが「MPEG１  Sample  Movie2」であるコンテンツは、サイズが既知であるダミーコンテンツとされる。
【０１６６】
図１３のXML文６００の構成は、図５（または図６）の場合と同様なので、詳細な説明は省略し、図５のXML文３００との違いについてのみ説明する。
【０１６７】
図１３のXML文６００において、図５のXML文３００の枠３３１に対応する部分である、枠６３１で囲まれた部分の記述が、図５の場合と異なっている。すなわち、図１３の枠６３１で囲まれた部分の記述は、次の通りである。
【０１６８】
<private：nextaction>delete </private：nextaction>
【０１６９】
これは、所定の処理の実行をメディアサーバに指令するためのXMLのタグ「private：nextaction」により、「delete」という指令がなされたことを表しており、この指令が実行されることにより、例えば、ストレージサーバ４１から「Acknowledge」が送信されるタイミングで、アップロードされたダミーコンテンツのデータがストレージ５２のコンテナから削除されることになる。
【０１７０】
このような、XML文６００を、アクション「CreateObject」に伴って、パーソナルコンピュータ３１またはテレビジョン受像機２１からストレージサーバ４１に送信することで、タイトル「MPEG１  Sample  Movie2」のコンテンツを、コンテナ「dvdrec」にアップロードすることができるとともに、アップロードされたコンテンツを、自動的に削除して、ストレージ５２に不要なデータを蓄積させないようにすることができる。
【０１７１】
このようにすることで、例えば、ストレージ５２を効率的に利用することが可能になる。また、このようにすることで、ストレージ５２に不要なデータを蓄積させないようにすることができるので、例えば、ユーザは、利用可能な帯域幅を事前に測定し、コンテンツのアップロードを行うにあたって帯域幅が不足していないかのチェックを、コンテンツのアップロードの都度、躊躇なく行うことが可能となり、その結果、より確実にコンテンツをアップロードすることが可能となる。
【０１７２】
なお、この例では、ストレージサーバ４１から「Acknowledge」が送信されるタイミングで、アップロードされたダミーコンテンツのデータがストレージ５２のコンテナから削除されると説明したが、それ以外のタイミングで削除されるようにしてもよい。例えば、アップロードされるダミーコンテンツのデータは、通常、複数のブロックのデータに分割されて送信されるものと考えられるので、ストレージサーバ４１においてXMLのタグ「private：nextaction」を解析した後、送信されてくるブロックのデータを受信する都度削除していくようにしてもよい。すなわち、アップロードされるコンテンツが、ダミーコンテンツであると認識されれば、アップロードの完了を待つことなく、データが削除されるようにしてもよい。
【０１７３】
また、同様に、図５の説明においても、コンテンツのアップロード完了後、自動的に複製、または移動が行われると説明したが、それ以外のタイミングで複製、または移動が行われるようにしてもよい。例えば、ストレージサーバ４１においてXMLのタグ「private：nextaction」を解析した後、送信されてくるブロックのデータを受信する都度、自動的に複製、または移動が行われるようにしてもよい。すなわち、アップロードされるコンテンツが、複製または移動されるべきものであると認識されれば、アップロードの完了を待つことなく、データが複製または移動されるようにしてもよい。
【０１７４】
上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、プログラム記録媒体からインストールされる。
【０１７５】
コンピュータのCPU（例えば、CPU１０１、または制御部５１に含まれるプロセッサなど）が実行するプログラムは、例えば、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)等）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディアに記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供される。
【０１７６】
そして、プログラムは、リムーバブルメディアをドライブに装着することにより、インストールすることができる。また、プログラムは、無線の伝送媒体を介して、無線LANインタフェースで受信するか、または有線の伝送媒体を介して受信し、インストールすることができる。その他、プログラムは、ROMなどにあらかじめ記憶しておくことで、あらかじめインストールしておくことができる。
【０１７７】
なお、本明細書において上述した一連の処理を実行するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【図面の簡単な説明】
【０１７８】
【図１】本発明の一実施の形態に係るコンテンツ伝送システムの構成例を示すブロック図である。
【図２】図１のパーソナルコンピュータの構成例を示すブロック図である。
【図３】UPnPで規定されるコンテンツのアップロードの処理の例を説明するアローチャートである。
【図４】パーソナルコンピュータが生成してストレージサーバに送信するXML文の例を示す図である。
【図５】パーソナルコンピュータが生成してストレージサーバに送信するXML文の別の例を示す図である。
【図６】パーソナルコンピュータが生成してストレージサーバに送信するXML文のさらに別の例を示す図である。
【図７】パーソナルコンピュータのCPUで実行されるソフトウェアの機能的構成例を示すブロック図である。
【図８】コンテンツアップロード処理の例を説明するフローチャートである。
【図９】elementsフィールド編集処理の例を説明するフローチャートである。
【図１０】ストレージサーバの制御部で実行されるソフトウェアの機能的構成例を示すブロック図である。
【図１１】コンテンツ取得処理の例を説明するフローチャートである。
【図１２】elementsフィールド検証処理の例を説明するフローチャートである。
【図１３】パーソナルコンピュータまたはテレビジョン受像機が生成してストレージサーバに送信するXML文のさらに別の例を示す図である。
【符号の説明】
【０１７９】
１０  コンテンツ伝送システム，  １１  ネットワーク，  ２１  テレビジョン受像機，  ２２  チューナ，  ３１  パーソナルコンピュータ，  ４１  ストレージサーバ，  ５１  制御部，  ５２  ストレージ，  ５３  ドライブ，  ６１  タイマ，  ７１  リムーバブルメディア，  ５０１  メタデータ関連情報取得部，  ５０２  nextaction制御部，  ５０３  CreateObject制御部，  ５０４  http-post制御部，  ５５１  コンテンツ取得部，  ５５２  elementsフィールド解析部，  ５５３  nextaction判定部，  ５５４  指令実行制御部
【図１】
2008210379.tif 000003
【図２】
2008210379.tif 000004
【図３】
2008210379.tif 000005
【図４】
2008210379.tif 000006
【図５】
2008210379.tif 000007
【図６】
2008210379.tif 000008
【図７】
2008210379.tif 000009
【図８】
2008210379.tif 000010
【図９】
2008210379.tif 000011
【図１０】
2008210379.tif 000012
【図１１】
2008210379.tif 000013
【図１２】
2008210379.tif 000014
【図１３】
2008210379.tif 000015