(57)【特許請求の範囲】
【請求項１】
コンテンツを記憶する記憶手段と、
受信装置へ送信されるコンテンツのリストによって特定されるコンテンツの中に、前記記憶手段によって前記受信装置に応じた形式で記憶されていない未取得コンテンツが含まれているかを判定する判定手段と、
前記リストによって特定されるコンテンツの中に未取得コンテンツが含まれると前記判定手段により判定されたことに応じて、
少なくとも一つの未取得コンテンツについての前記受信装置によるコンテンツ要求を抑制するための通知を前記受信装置に対して行う通知手段と、
前記通知手段による通知において特定される前記少なくとも一つの未取得コンテンツを取得して前記記憶手段に記憶させる取得手段と、
前記記憶手段に記憶されたコンテンツを、前記リストを受信した前記受信装置からのコンテンツ要求に応じて送信する送信手段と、を有することを特徴とする送信装置。
【請求項２】
前記通知手段は、前記通知において特定されるコンテンツを送信するためのストリームの識別情報を前記受信装置に通知し、
前記送信手段は、前記取得手段が取得した前記通知において特定されるコンテンツを、前記ストリームを使用して前記受信装置に送信することを特徴とする請求項１に記載の送信装置。
【請求項３】
前記受信装置に対して、前記通知手段による通知において特定されるコンテンツに対するコンテンツ要求を許可する要求許可通知を行う要求許可手段を有することを特徴とする請求項１又は２に記載の送信装置。
【請求項４】
前記通知手段は、前記リストによって特定される未取得コンテンツの数が所定数を超える場合に、前記所定数に納まらない未取得コンテンツについてのコンテンツ要求を抑制するための通知を前記受信装置に対して行うことを特徴とする請求項１乃至３のうち何れか１項に記載の送信装置。
【請求項５】
前記所定数は、前記取得手段が並行して取得することが可能なコンテンツの数に対応することを特徴とする請求項４に記載の送信装置。
【請求項６】
前記通知手段は、前記受信装置に前記リストが送信される前に、前記リストによって特定される未取得コンテンツについてのコンテンツ要求を抑制するための通知を受信装置に対して行うことを特徴とする請求項１乃至５のうち何れか１項に記載の送信装置。
【請求項７】
前記リストによって特定される未取得コンテンツが前記取得手段により取得される前に、前記リストを前記受信装置へ送信するリスト送信手段を有することを特徴とする請求項１乃至６のうち何れか１項に記載の送信装置。
【請求項８】
前記取得手段は、前記記憶手段が記憶しているコンテンツのサイズ及びフォーマットの少なくとも何れかを変換することで、前記少なくとも一つの未取得コンテンツを取得することを特徴とする請求項１乃至７のうち何れか１項に記載の送信装置。
【請求項９】
前記取得手段は、前記少なくとも一つの未取得コンテンツを他の装置から取得することを特徴とする請求項１乃至７のうち何れか１項に記載の送信装置。
【請求項１０】
前記通知手段は、前記少なくとも一つの未取得コンテンツを前記受信装置からのコンテンツ要求なしに送信することを示す通知を行うことで、前記少なくとも一つの未取得コンテンツについてのコンテンツ要求を抑制することを特徴とする請求項１乃至９のうち何れか１項に記載の送信装置。
【請求項１１】
前記通知手段は、ＨＴＴＰ／２におけるＰｕｓｈＰｒｏｍｉｓｅフレームを送信することで、前記少なくとも一つの未取得コンテンツについてのコンテンツ要求を抑制することを特徴とする請求項１乃至９のうち何れか１項に記載の送信装置。
【請求項１２】
記憶手段を有する送信装置が行う送信方法であって、
受信装置へ送信されるコンテンツのリストによって特定されるコンテンツの中に、前記記憶手段によって前記受信装置に応じた形式で記憶されていない未取得コンテンツが含まれているかを判定する判定工程と、
前記リストによって特定されるコンテンツの中に未取得コンテンツが含まれると前記判定工程において判定されたことに応じて、
少なくとも一つの未取得コンテンツについての前記受信装置によるコンテンツ要求を抑制するための通知を前記受信装置に対して行う通知工程と、
前記通知工程における通知において特定される前記少なくとも一つの未取得コンテンツを取得して前記記憶手段に記憶させる取得工程と、
前記記憶手段に記憶されたコンテンツを、前記リストを受信した前記受信装置からのコンテンツ要求に応じて送信する送信工程と、を有することを特徴とする送信方法。
【請求項１３】
コンピュータを、請求項１乃至１１のうち何れか１項に記載の送信装置として動作させるためのプログラム。
【請求項１４】
請求項１乃至１１のうち何れか１項に記載の送信装置及び受信装置を備えた通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツを送信する送信装置に関する。
【背景技術】
【０００２】
近年、コンテンツ共有サービスやコミュニケーションサービスなどを提供するインターネット上のサーバ装置にアクセスする機能を備えた携帯電話やデジタルカメラなどの通信装置が存在する。ユーザは、これらの通信装置を用いることで、例えば撮像した画像コンテンツを写真共有サービスにアップロードすることや、あるいはメッセージを友人に送信することができる。通常、Ｗｅｂサーバ装置とクライアント装置との間におけるコンテンツの送受信においては、ＨＴＴＰプロトコルが利用されている。
【０００３】
ＨＴＴＰプロトコルの一つとして、ＩＥＴＦ（Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅ）はＨＴＴＰ／２の規格を策定中である。ＨＴＴＰ／２においては、サーバ装置とクライアント装置との間で接続を確立し、その接続内においてストリームと呼ぶ論理的なセッションを複数構築することができる。そして、そのストリームごとに独立してサーバ装置とクライアント装置との間でメッセージを送受信することができる。また、ＨＴＴＰ／２においては、送受信を行うためのストリームをサーバ装置からクライアント装置に対して予約するＰｕｓｈＰｒｏｍｉｓｅというフレームが定義されている。このＰｕｓｈＰｒｏｍｉｓｅを使用することで、サーバ装置側の任意のタイミングでクライアント装置へ情報を送信することが可能となる。
【０００４】
特許文献１では、クライアント装置からのリクエストを受けることなくサーバ装置からコンテンツを配信するＰｕｓｈ配信を利用したコンテンツ配信が記載されている。具体的には、クライアント装置はｈｔｍｌファイルのリクエストメッセージをサーバ装置に送信する。サーバ装置は、クライアント装置からリクエストを受けたｈｔｍｌファイルに関連するコンテンツデータを予め他のサーバ装置から収集しておき、それらをサーバ装置からのＰｕｓｈ配信により配信する。これによりＷｅｂページの高速配信が実現される（特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１４−１０６２２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の技術では、サーバ装置がクライアント装置にコンテンツを送信する際に、コンテンツ送信の効率が低下する場合があった。
【０００７】
例えば、クライアント装置がコンテンツリストを取得し、コンテンツリストに含まれる個々のコンテンツを取得しようとする。その際に、クライアント装置はサーバ装置に対して個々のコンテンツの取得要求を送信するが、サーバ装置がそれらのコンテンツの送信を直ちに行うことができない場合、クライアント装置は取得要求を再送してしまう可能性がある。この場合、クライアント装置は無駄な取得要求を行ってそのレスポンスを待ち、サーバ装置は無駄な取得要求を受信してレスポンスが不可能であることを確認することとなる。取得要求の再送に係るこれらの処理により、コンテンツ送信の効率が低下する。
【０００８】
上記の課題に鑑み、本発明は、送信装置（サーバ装置）が受信装置（クライアント装置）にコンテンツを効率的に送信する技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記の課題を解決するため、本発明に係る送信装置は、例えば以下の構成を有する。すなわち、コンテンツを記憶する記憶手段と、受信装置へ送信されるコンテンツのリストによって特定されるコンテンツの中に、前記記憶手段によって前記受信装置に応じた形式で記憶されていない未取得コンテンツが含まれているかを判定する判定手段と、前記リストによって特定されるコンテンツの中に未取得コンテンツが含まれると前記判定手段により判定されたことに応じて、少なくとも一つの未取得コンテンツについての前記受信装置によるコンテンツ要求を抑制するための通知を前記受信装置に対して行う通知手段と、前記通知手段による通知において特定される前記少なくとも一つの未取得コンテンツを取得して前記記憶手段に記憶させる取得手段と、前記記憶手段に記憶されたコンテンツを、前記リストを受信した前記受信装置からのコンテンツ要求に応じて送信する送信手段と、を有する。
【発明の効果】
【００１０】
本発明によれば、受信装置によるコンテンツ取得要求の再送を減らすことができ、送信装置から受信装置へ効率的にコンテンツを送信することができるようになる。
【図面の簡単な説明】
【００１１】
【図１】実施形態に係るコンテンツ送信システムの構成例を示す図である。
【図２】実施形態に係る送信装置２０のハードウェア構成例を示すブロック図である。
【図３】実施形態に係る送信装置２０の機能モジュール構成例を示すブロック図である。
【図４】実施形態に係るコンテンツ送信全体の流れを示すシーケンス図である。
【図５】実施形態に係るコンテンツリスト取得シーケンスの詳細を説明するためのシーケンス図である。
【図６】実施形態に係るコンテンツ変換シーケンスの詳細を説明するためのシーケンス図である。
【図７】実施形態に係るコンテンツ取得シーケンスの詳細を説明するためのシーケンス図である。
【図８】実施形態に係る送信装置２０がコンテンツリスト取得要求を受信した際の動作を説明するためのフローチャートである。
【図９】実施形態に係る送信装置２０がコンテンツ取得要求を受信した際の動作を説明するためのフローチャートである。
【図１０】実施形態に係るコンテンツリスト情報１０００のデータ構成例を示す図である。
【図１１】実施形態に係るコンテンツ情報１１００のデータ構成例を示す図である。
【図１２】実施形態に係る複数コンテンツ送信時の処理全体の例を示すシーケンス図である。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について説明する。
【００１３】
＜システムの全体構成＞
図１は、本実施形態に係るコンテンツ送信を行う通信システムの構成例を示す図である。
【００１４】
本実施形態における受信装置１０は、コンテンツやコンテンツリストを受信する通信機能、表示機能、操作機能を有する。受信装置１０の具体例は、パソコン、テレビ、スマートフォンなどである。
【００１５】
なお、コンテンツリストとは、送信装置２０から送信できるコンテンツの一部又は全部を列挙したリストである。例えば、送信装置２０としてのカメラに格納されている静止画や動画などのコンテンツのリストである。
【００１６】
本実施形態における送信装置２０は、コンテンツやコンテンツリストを送信する通信機能、コンテンツの変換機能、表示機能、操作機能を有する。送信装置２０の具体例は、カメラ、パソコン、ハードディスクレコーダなどである。
【００１７】
なお、コンテンツ変換とは、送信装置２０が保有するコンテンツのサイズやフォーマットを変換することにより、受信装置１０に応じた形式のコンテンツを取得する取得処理のことをいう。例えば、送信装置２０が大きいサイズの静止画を保有しており受信装置１０が小さいサイズの静止画しか表示できない場合、送信装置２０が受信装置１０に静止画を送信する際にサイズの縮小変換を行う。また、送信装置２０が保有する動画のフォーマットと受信装置１０が再生できる動画のフォーマットが異なる場合には、フォーマット変換を行う。本実施形態では取得処理としてコンテンツ変換を行っているが、取得処理の内容はコンテンツ変換に限らない。例えば、送信装置２０が、受信装置１０に応じた形式のコンテンツを他の装置から取得することも可能である。
【００１８】
ネットワーク３０は、受信装置１０と送信装置２０が接続するネットワークである。ネットワーク３０の具体例は、有線ＬＡＮ、無線ＬＡＮ、ＷＡＮ、インターネットなどである。
【００１９】
＜送信装置のハードウェア構成＞
図２は、本実施形態に係る送信装置２０のハードウェア構成例を示すブロック図である。送信装置２０は、ＣＰＵ２０１と、ＲＯＭ２０２と、ＲＡＭ２０３と、補助記憶装置２０４と、表示部２０５と、操作部２０６と、通信部２０７と、無線ＬＡＮアンテナ２０８とを備える。
【００２０】
ＣＰＵ２０１は、送信装置２０全体を制御する。ＲＯＭ２０２は、送信装置２０の動作を実現するための、変更を必要としないプログラムやパラメータを格納する。ＲＡＭ２０３は、補助記憶装置２０４などから供給されるプログラムやデータを一時的に記憶する。補助記憶装置２０４は、無線パラメータなどの設定データや、画像や動画などのコンテンツデータを記憶する。補助記憶装置２０４の具体例としては、メモリカードやハードディスクなどが挙げられる。表示部２０５は、ユーザが送信装置２０を操作するためのＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を表示する。表示部２０５の具体例としては、液晶ディスプレイやプラズマディスプレイなどが挙げられる。操作部２０６は、マウスやキーボードなどによってユーザが送信装置２０を操作するための入力インタフェースである。通信部２０７は、ネットワーク３０を介して受信装置１０と通信するためのコネクタや通信回路である。無線ＬＡＮアンテナ２０８は、無線ＬＡＮによる通信時に通信部２０７によって制御される。
【００２１】
なお、受信装置１０のハードウェア構成も、送信装置２０と同様である。
【００２２】
また、上記の説明では、表示部２０５が送信装置２０と一体であったが、表示部２０５が送信装置２０とは別の装置であってもよい。この場合、送信装置２０のＣＰＵ２０１が、表示制御部として動作し、外部の表示部２０５に対する表示制御を行う。受信装置１０についても同様である。
【００２３】
＜送信装置のモジュール構成＞
図３は、本実施形態に係る送信装置２０の機能モジュール構成例を示すブロック図である。送信装置２０は、送受信部３０１と、制御部３０２と、情報管理部３０３と、変換部３０４と、記憶部３０５とを備える。
【００２４】
送受信部３０１は、メッセージ制御を行って受信装置１０との間でリクエストとレスポンスを送受信する。送受信部３０１は、ＨＴＴＰ／２によるリクエストとレスポンスを生成し送受信する機能を備えている。ただし、送信装置２０と受信装置１０との間のやりとりにはＨＴＴＰ／２以外のプロトコルを使用することも可能である。送受信部３０１がコンテンツを送信する際は、記憶部３０５に記憶されたコンテンツにアクセスして送信を行う。制御部３０２は、送信装置２０が備える個々の機能モジュール全体を制御する。また、制御部３０２はコンテンツリストに係る情報やコンテンツに係る情報の解析を行う。情報管理部３０３は、コンテンツリストに係る情報やコンテンツに係る情報の管理を行う。変換部３０４は、記憶部３０５に記憶されたコンテンツにアクセスし、制御部３０２から指定された設定に応じてコンテンツ変換を行う。記憶部３０５は、ＲＡＭ２０３及び／又は補助記憶装置２０４によって構成される。記憶部３０５はコンテンツを記憶し、送受信部３０１と変換部３０４にコンテンツを受け渡す。
【００２５】
＜コンテンツリスト情報及びコンテンツ情報のデータ構成＞
図１０は、本実施形態に係るコンテンツリスト情報１０００のデータ構成例を示す図である。
【００２６】
本実施形態において、送信装置２０は、受信装置１０から一つのコンテンツリスト取得要求を受信すると、一つのコンテンツリスト情報１０００を生成する。例えば、送信装置２０は、受信装置１０から特定日時に撮影された静止画を要求されると、記憶部３０５に記憶されたコンテンツから条件に該当するものを抽出してリスト化し、コンテンツリスト情報１０００を生成する。ただし、この例に限らず、一つのコンテンツリスト取得要求に対して複数のコンテンツリスト情報１０００を生成してもよい。
【００２７】
コンテンツリストＩＤ１００１は、コンテンツリストの識別情報である。コンテンツ数１００２は、コンテンツリストに含まれるコンテンツ数を示す値である。コンテンツＩＤ１００３は、コンテンツリストに含まれる各コンテンツの識別情報である。コンテンツリスト情報１０００にはコンテンツ数１００２の値の数だけコンテンツＩＤ１００３が含まれる。
【００２８】
図１１は、本実施形態に係るコンテンツ情報１１００のデータ構成例を示す図である。
【００２９】
送信装置２０は、コンテンツリスト情報１０００を生成する際、そのコンテンツリストに含まれる各コンテンツに対してコンテンツ情報１１００を生成する。コンテンツリスト情報１０００中のコンテンツＩＤ１００３とコンテンツ情報１１００中のコンテンツＩＤ１１０１が一致する場合、そのコンテンツはそのコンテンツリストに含まれる。
【００３０】
コンテンツＩＤ１１０１は、コンテンツの識別情報である。ＳｔｒｅａｍＩＤ１１０２は、コンテンツの送信時に使用するストリームの識別情報である。ＰｕｓｈＰｒｏｍｉｓｅ設定１１０３は、コンテンツの送信のためのＰｕｓｈＰｒｏｍｉｓｅフレームが送信装置２０によって送信済みかどうかを示す値である。ＨＴＴＰ／２におけるＰｕｓｈＰｒｏｍｉｓｅフレームには、送信装置２０が受信装置１０に対して予約するストリームの識別情報が含まれている。送信装置２０は、Ｐｕｓｈｐｒｏｍｉｓｅフレームを送信しておくことで、受信装置１０からのコンテンツ要求なしに、予約したストリームを使用してコンテンツを送信することができる。コンテンツ変換要否１１０４は、コンテンツの送信前にコンテンツ変換が必要であるか否かを示す値である。コンテンツ変換結果１１０５は、コンテンツの送信前にコンテンツ変換が必要な場合に、コンテンツ変換が未実施か実施済みかを示す値である。
【００３１】
＜コンテンツ送信のシーケンス＞
図４は、本実施形態に係るコンテンツ送信全体の流れを示すシーケンス図である。図４の処理は、送信装置２０からコンテンツリストを取得するためのユーザ操作が受信装置１０に入力されたタイミングで開始される。ただし、図４の処理の開始タイミングは上記タイミングに限定されない。
【００３２】
Ｍ４０１において、受信装置１０は、送信装置２０に対してコンテンツリスト取得要求を送信し、コンテンツリストを取得する。Ｍ４０１の詳細は図５に示す。Ｍ４０２において、送信装置２０はコンテンツ変換を実施する。Ｍ４０２の詳細は図６に示す。Ｍ４０３において、受信装置１０は、送信装置２０に対してコンテンツ取得要求を送信し、コンテンツを取得する。Ｍ４０３の詳細は図７に示す。
【００３３】
図５は、図４におけるコンテンツリスト取得シーケンスの詳細を説明するためのシーケンス図である。図５の処理は、送信装置２０からコンテンツリストを取得するためのユーザ操作が受信装置１０に入力されたタイミングで開始される。ただし、図５の処理の開始タイミングは上記タイミングに限定されない。
【００３４】
Ｍ５０１において、受信装置１０は、コンテンツリスト取得要求を送信装置２０の送受信部３０１へ送信する。コンテンツリスト取得要求には、コンテンツのタイプに関する情報が含まれる。コンテンツのタイプは、受信装置１０のユーザが指定することが可能である。コンテンツのタイプには、例えば、静止画や動画やテキストなどの種別、生成日時や生成場所、生成者に関する情報が含まれる。また、コンテンツリスト取得要求には、受信装置１０が扱うことが可能なコンテンツのサイズやフォーマットなどのコンテンツ変換に関する情報も含まれる。
【００３５】
Ｍ５０２において、送受信部３０１は受信したコンテンツリスト取得要求を制御部３０２へ伝達する。
【００３６】
Ｍ５０３において、制御部３０２はコンテンツリスト取得に関する処理の制御を行う。具体的には、制御部３０２は、コンテンツリスト情報１０００及びコンテンツ情報１１００の生成、コンテンツリスト情報１０００及びコンテンツ情報１１００の解析、ＰｕｓｈＰｒｏｍｉｓｅフレームの送信、コンテンツリストの送信に関する制御を実施する。
【００３７】
Ｍ５０４において、制御部３０２は情報管理部３０３に対してコンテンツリストの生成を指示する。
【００３８】
Ｍ５０５において、情報管理部３０３は、コンテンツリスト取得要求に対応するコンテンツのリストを生成するとともに、そのリストに係るコンテンツリスト情報１０００を生成する。コンテンツリストＩＤ１００１にはそのリストの識別情報が設定され、コンテンツ数１００２にはそのリストに含まれるコンテンツの数が設定され、コンテンツＩＤ１００３にはそのリストに含まれるコンテンツの識別情報が設定される。また、情報管理部３０３は、生成したコンテンツリストに含まれる各コンテンツのコンテンツ情報１１００も生成する。コンテンツＩＤ１１０１にはそのコンテンツの識別情報が設定される。ＳｔｒｅａｍＩＤ１１０２には何も設定されないか、もしくはデフォルトに指定される値が設定されてもよい。ＰｕｓｈＰｒｏｍｉｓｅ設定１１０３にはＰｕｓｈＰｒｏｍｉｓｅフレーム未送信を示す値が設定される。コンテンツ変換要否１１０４には、コンテンツリスト取得要求に含まれるコンテンツ変換に関する情報を基に、コンテンツ変換が必要か否かを示す値が設定される。コンテンツ変換結果１１０５にはコンテンツ変換未実施を示す値が設定される。
【００３９】
Ｍ５０６において、情報管理部３０３は生成したコンテンツリスト情報１０００とそれに関するコンテンツ情報１１００を制御部３０２へ伝達する。
【００４０】
Ｍ５０７において、制御部３０２はコンテンツリスト情報１０００とそれに関するコンテンツ情報１１００を解析し、コンテンツリストにＰｕｓｈＰｒｏｍｉｓｅが必要なコンテンツが含まれるか否かを判定する。ＰｕｓｈＰｒｏｍｉｓｅが必要であると判定されるコンテンツは、送信前にコンテンツ変換が必要であり、且つコンテンツ変換を直ちに実施できないコンテンツである。コンテンツ変換を直ちに実施できないコンテンツの特定方法は、後述する。ＰｕｓｈＰｒｏｍｉｓｅフレームを受信した受信装置１０は、そのＰｕｓｈＰｒｏｍｉｓｅフレームで指定されるコンテンツに対する取得要求を行わない。そのため、ＰｕｓｈＰｒｏｍｉｓｅフレームの送信によって、送信装置２０は受信装置１０に対して、対象コンテンツに対するコンテンツ要求を送信しないように指示し、対象コンテンツの送信に使用するストリームを予約することができる。
【００４１】
Ｍ５０８において、制御部３０２は、Ｍ５０７でＰｕｓｈＰｒｏｍｉｓｅが必要だと判定されたコンテンツについてのＰｕｓｈＰｒｏｍｉｓｅフレーム送信を送受信部３０１に対して指示する。
【００４２】
Ｍ５０９において、送受信部３０１は受信装置１０へＰｕｓｈＰｒｏｍｉｓｅフレームを送信する。ＰｕｓｈＰｒｏｍｉｓｅフレーム送信時に、送受信部３０１は対象コンテンツに係るＰｕｓｈＰｒｏｍｉｓｅ設定１１０３にＰｕｓｈＰｒｏｍｉｓｅフレーム送信済みを示す値を設定する。さらに、送受信部３０１はＳｔｒｅａｍＩＤ１１０２に、ＰｕｓｈＰｒｏｍｉｓｅフレームにより受信装置１０に通知する予約ストリームの識別情報を設定する。もしくは、送受信部３０１から制御部３０２へＰｕｓｈＰｒｏｍｉｓｅフレームにより通知する予約ストリームの識別情報を伝達し、制御部３０２が情報管理部３０３を制御することで、対象コンテンツのＳｔｒｅａｍＩＤ１１０２を設定してもよい。
【００４３】
Ｍ５１０において、制御部３０２は送受信部３０１に対してコンテンツリストの送信を指示する。
【００４４】
Ｍ５１１において、送受信部３０１は受信装置１０へコンテンツリストを送信する。
【００４５】
図６は、図４におけるコンテンツ変換シーケンスの詳細を説明するためのシーケンス図である。図６の処理は、Ｍ５０７において制御部３０２がコンテンツ情報１１００を解析したタイミングで開始される。ただし、図６の処理の開始タイミングは上記タイミングに限定されない。
【００４６】
Ｍ６０１において、制御部３０２はコンテンツ変換に関する処理の制御を行う。具体的には、コンテンツ変換処理と、ＰｕｓｈＰｒｏｍｉｓｅフレーム送信済みコンテンツの送信と、コンテンツ情報更新とに関する制御を実施する。
【００４７】
Ｍ６０２において、制御部３０２は変換部３０４に対してコンテンツ変換を指示する。本指示には、変換したいコンテンツのコンテンツＩＤや変換内容などが含まれる。コンテンツの変換内容の例としては、サイズやフォーマットの変換などがある。
【００４８】
Ｍ６０３において、変換部３０４は、Ｍ６０２で指定されたコンテンツＩＤと変換内容に応じて、記憶部３０５にアクセスしてコンテンツ変換を実施する。
【００４９】
Ｍ６０４において、変換部３０４は制御部３０２へコンテンツ変換の完了を通知する。制御部３０２は変換の完了したコンテンツに係るＰｕｓｈＰｒｏｍｉｓｅ設定１１０３を確認し、そのコンテンツについてＰｕｓｈＰｒｏｍｉｓｅフレームが送信済みである場合は、ＡＬＴ（条件分岐）内のＭ６０５とＭ６０６を実行する。なお、受信装置１０はＰｕｓｈＰｒｏｍｉｓｅフレームを受信した後にＰｕｓｈＰｒｏｍｉｓｅの解除要求を送信装置２０に送信することもできる。解除要求を受信した送信装置２０はＰｕｓｈＰｒｏｍｉｓｅ設定１１０３にＰｕｓｈＰｒｏｍｉｓｅフレーム未送信を示す値を設定するため、そのコンテンツについてのＡＬＴ内の処理は実行されない。
【００５０】
Ｍ６０５において、制御部３０２は送受信部３０１に対して変換の完了したＰｕｓｈＰｒｏｍｉｓｅフレーム送信済みコンテンツの送信を指示する。この際、そのコンテンツに係るＳｔｒｅａｍＩＤ１１０２で特定される予約ストリームを送信に使用するストリームとして設定する。
【００５１】
Ｍ６０６において、送受信部３０１は制御部３０２に指示されたコンテンツを記憶部３０５から取得する。そして、Ｍ６０５で設定したストリームを使用して受信装置１０へコンテンツを送信する。
【００５２】
Ｍ６０７において、制御部３０２は情報管理部３０３に対してコンテンツ情報１１００の更新を指示する。
【００５３】
Ｍ６０８において、情報管理部３０３は変換を完了したコンテンツに係るコンテンツ変換結果１１０５に変換済みを示す値を設定する。また、そのコンテンツについてＰｕｓｈＰｒｏｍｉｓｅフレームが送信済みであり、Ｍ６０５及びＭ６０６でコンテンツ送信が行われている場合には、ＰｕｓｈＰｒｏｍｉｓｅ設定１１０３は未送信を示す値にリセットされる。
【００５４】
Ｍ６０９において、情報管理部３０３は制御部３０２へコンテンツ情報１１００の更新完了を通知する。
【００５５】
図７は、図４におけるコンテンツ取得シーケンスの詳細を説明するためのシーケンス図である。図７の処理は、Ｍ５１１において受信装置１０がコンテンツリストを受信したタイミングで開始される。ただし、図６の処理の開始タイミングは上記タイミングに限定されない。
【００５６】
Ｍ７０１において、受信装置１０は、取得したコンテンツリストによって特定されるコンテンツのうち、ＰｕｓｈＰｒｏｍｉｓｅフレームで指定されていないコンテンツから、取得するコンテンツを選択する。そして、そのコンテンツに係るコンテンツＩＤを指定して、送信装置２０の送受信部３０１にコンテンツ取得要求を送信する。一度ＰｕｓｈＰｒｏｍｉｓｅフレームが送信された後にＰｕｓｈＰｒｏｍｉｓｅが解除されたコンテンツもコンテンツ取得要求の対象となる。また、取得するコンテンツの選択については、受信装置１０が自動的に選択してもよいし、受信装置１０の表示部に取得の候補となるコンテンツを表示してユーザが選択する方法も可能である。
【００５７】
Ｍ７０２において、送受信部３０１は受信したコンテンツ取得要求を制御部３０２へ伝達する。また、送受信部３０１は、受信装置１０からのコンテンツ取得要求の受信に使用したストリームの識別情報を、要求されたコンテンツに係るＳｔｒｅａｍＩＤ１１０２に設定する。
【００５８】
Ｍ７０３において、制御部３０２はコンテンツ取得に関する処理の制御を行う。具体的には、コンテンツ情報取得と、コンテンツ情報解析と、コンテンツ送信とに関する制御を実施する。
【００５９】
Ｍ７０４において、制御部３０２は要求されたコンテンツに係るコンテンツ情報１１００の取得を情報管理部３０３に指示する。
【００６０】
Ｍ７０５において、情報管理部３０３は制御部３０２から指示されたコンテンツ情報１１００を取得する。
【００６１】
Ｍ７０６において、情報管理部３０３は取得したコンテンツ情報１１００を制御部３０２へ伝達する。
【００６２】
Ｍ７０７において、制御部３０２は取得したコンテンツ情報１１００を解析し、コンテンツ変換要否１１０４を確認する。コンテンツ変換が不要であった場合、Ｍ７０８とＭ７０９の処理を行う。コンテンツ変換が必要であった場合はコンテンツ変換結果１１０５を確認し、コンテンツ変換が実施済みであればＭ７０８とＭ７０９の処理を行う。コンテンツ変換が必要であり且つ未実施であった場合は、Ｍ６０３のコンテンツ変換処理の完了を待ってからＭ７０８とＭ７０９の処理を行う。
【００６３】
Ｍ７０８において、制御部３０２はＭ７０１で要求されたコンテンツの送信を送受信部３０１に指示する。この際、そのコンテンツに係るＳｔｒｅａｍＩＤ１１０２で特定されるストリームを送信に使用するストリームとして設定する。
【００６４】
Ｍ７０９において、送受信部３０１は制御部３０２に指示されたコンテンツを記憶部３０５から取得する。そして、Ｍ７０８で設定したストリームを使用して受信装置１０へコンテンツを送信する。
【００６５】
＜送信装置の処理フロー＞
図８は、コンテンツリスト取得要求を受信した送信装置２０の動作を説明するためのフローチャートである。送信装置２０は、コンテンツリスト取得要求の待ち受け状態に設定されたタイミングで図８の処理を開始する。ただし、図８の処理の開始タイミングは上記タイミングに限定されない。図８の処理は、送信装置２０のＣＰＵ２０１が所定のプログラムを読みだして実行することにより実現される。ただし、図８の処理の一部または全部が専用のハードウェア等によって実現されるようにしてもよい。
【００６６】
ステップＳ８０１において、送受信部３０１は、受信装置１０からコンテンツリスト取得要求を受信し（Ｍ５０１）、制御部３０２へ要求を伝達する（Ｍ５０２）。
【００６７】
ステップＳ８０２において、制御部３０２は情報管理部３０３へコンテンツリストの生成を指示する（Ｍ５０４）。情報管理部３０３はコンテンツリスト情報１０００及びコンテンツ情報１１００を生成し（Ｍ５０５）制御部３０２に伝達する（Ｍ５０６）。
【００６８】
ステップＳ８０３において、制御部３０２は、コンテンツリスト情報１０００に記述されている一つ以上のコンテンツＩＤ１００３のそれぞれに対応するコンテンツ変換要否１１０４を参照する。コンテンツ変換要否１１０４を参照した結果、コンテンツリストによって特定されるコンテンツの中にコンテンツ変換が必要なコンテンツが含まれているか否かを判断する。コンテンツ変換が必要なコンテンツとは、受信装置１０に応じた形式（サイズやフォーマット等）で記憶部３０５に記憶されていない未取得コンテンツである。本実施形態では、記憶部３０５が別の形式の当コンテンツのみを記憶している場合にコンテンツ変換を必要とする。コンテンツリストによって特定されるコンテンツの中にコンテンツ変換が必要なコンテンツがある場合（Ｓ８０３；ＹＥＳ）、ステップＳ８０４に進む。一方、コンテンツ変換が不要である場合は、ステップＳ８０７に進む。
【００６９】
ステップＳ８０４において、制御部３０２は、コンテンツリストからコンテンツ変換が必要なコンテンツを抽出し、そのコンテンツ数が変換部３０４にて直ちに変換可能な所定のコンテンツ数以内であるか否かを判断する（Ｍ５０７）。コンテンツ変換の必要なコンテンツ数が所定数以内である場合（Ｓ８０４；ＹＥＳ）、ステップＳ８０７に進む。一方、コンテンツ変換の必要なコンテンツ数が所定数を超える場合、ステップＳ８０５へ進む。ここで、変換部３０４にて直ちに変換可能なコンテンツ数は、変換部３０４において並行して変換が可能なコンテンツ数などに対応する設定値である。
【００７０】
ステップＳ８０５において、制御部３０２は、コンテンツ変換が必要なコンテンツのうち、直ちに変換可能な所定のコンテンツ数に納まらないコンテンツについてのＰｕｓｈＰｒｏｍｉｓｅフレームを、送受信部３０１を制御して送信する（Ｍ５０８、Ｍ５０９）。送信されたＰｕｓｈＰｒｏｍｉｓｅフレームは、送信装置２０が受信装置１０からのコンテンツ要求なしに対象コンテンツを送信することを受信装置１０に通知し、受信装置１０はそのコンテンツに対する取得要求を送信しなくなる。つまり、制御部３０２は、受信装置１０にＰｕｓｈＰｒｏｍｉｓｅフレームを送信することで、対象コンテンツに対するコンテンツ要求が送信されないように受信装置１０に指示することができる。また、ＰｕｓｈＰｒｏｍｉｓｅフレームには、対象コンテンツに係るＳｔｒｅａｍＩＤ１１０２に設定されるストリームの識別情報が含まれる。よって、制御部３０２は、ＰｕｓｈＰｒｏｍｓｅフレームの送信によって、対象コンテンツを送信するためのストリームを指定してその識別情報を受信装置１０に通知することができる。
【００７１】
ステップＳ８０６において、制御部３０２は、コンテンツ変換処理待ちのコンテンツを管理するキューに、ＰｕｓｈＰｒｏｍｉｓｅ対象となったコンテンツのコンテンツ情報１１００を格納する。
【００７２】
ステップＳ８０７において、制御部３０２は送受信部３０１に対してコンテンツリストの送信を指示し（Ｍ５１０）、送受信部３０１は受信装置１０へコンテンツリストを送信する（Ｍ５１１）。本実施形態では、ステップＳ８０５での制御部３０２によるＰｕｓｈＰｒｏｍｉｓｅフレーム送信が、Ｓ８０７での送受信部３０１によるコンテンツリスト送信より前に行われる。これにより受信装置１０は、コンテンツリストを受信した時点で、コンテンツ取得要求を送信すべきでないコンテンツを把握することができる。
【００７３】
ステップＳ８０８において、コンテンツ変換が必要なコンテンツがコンテンツリストに含まれていた場合、制御部３０２はコンテンツ変換に関するループ処理を開始する。
【００７４】
ステップＳ８０９において、制御部３０２は変換部３０４に対してコンテンツ変換を指示する（Ｍ６０２）。変換部３０４は記憶部３０５にアクセスし、コンテンツリスト取得要求に含まれるコンテンツ変換に関する情報を基にコンテンツ変換処理を行う（Ｍ６０３）。コンテンツ変換処理では、変換部３０４が、記憶部３０５が記憶している変換の必要なコンテンツのサイズ及びフォーマットの少なくとも何れかを変換することで、受信装置１０に応じた形式のコンテンツを取得する。ただし、ステップＳ８０９で行われる処理は、本実施形態のようなコンテンツ変換に限らない。例えば、記憶部３０５が対象コンテンツを記憶していない場合に、送信装置２０が送受信部３０１を介して、受信装置１０に応じた形式の未取得コンテンツを他の装置から取得する処理が含まれてもよい。
【００７５】
ステップＳ８１０において、制御部３０２は、コンテンツ変換が完了したコンテンツがＰｕｓｈＰｒｏｍｉｓｅフレームの送信されたコンテンツであるか否かを、ＰｕｓｈＰｒｏｍｉｓｅ設定１１０３を参照して判断する（Ｍ６０４）。コンテンツ変換が完了したコンテンツについてのＰｕｓｈＰｒｏｍｉｓｅフレームが送信済みであった場合（Ｓ８１０；ＹＥＳ）、ステップＳ８１１に進む。一方、ＰｕｓｈＰｒｏｍｉｓｅが未送信であった場合、ステップＳ８１３へ進む。
【００７６】
ステップＳ８１１において、制御部３０２は、変換の完了したコンテンツを送信する為のストリームとして、ＳｔｒｅａｍＩＤ１１０２に示されたＰｕｓｈＰｒｏｍｉｓｅフレームにより予約したストリームを選択する。
【００７７】
ステップＳ８１２において、制御部３０２はコンテンツ変換の完了したＰｕｓｈＰｒｏｍｉｓｅフレーム送信済コンテンツの送信を送受信部３０１に対して指示する（Ｍ６０５）。送受信部３０１は、対象のコンテンツを記憶部３０５から取得し、制御部３０２がＰｕｓｈＰｒｏｍｉｓｅフレームにより受信装置１０に識別情報を通知したストリームを使用して、受信装置１０へ送信する（Ｍ６０６）。
【００７８】
ステップＳ８１３において、制御部３０２は情報管理部３０３に対して変換が完了したコンテンツに係るコンテンツ情報１１００の更新を依頼する（Ｍ６０７）。情報管理部３０３はコンテンツ情報更新を行い（Ｍ６０８）、制御部３０２へコンテンツ情報１１００の更新完了を通知する（Ｍ６０９）。
【００７９】
制御部３０２は、更新が完了したコンテンツ情報１１００をコンテンツ変換処理待ちキューから除く。そして、キューに変換を必要とするコンテンツのコンテンツ情報１１００がなくなるまで、前記ステップＳ８０９からステップＳ８１３までの処理を繰り返し実行する。
【００８０】
図９は、コンテンツ取得要求を受信した送信装置２０の動作を説明するためのフローチャートである。送信装置２０は、コンテンツ取得要求の待ち受け状態に設定されたタイミングで、図９の処理を開始する。ただし、図９の処理の開始タイミングは上記タイミングに限定されない。図９の処理は、送信装置２０のＣＰＵ２０１が、所定のプログラムを読みだして実行することにより、実現される。ただし、図９の処理の一部または全部が専用のハードウェア等によって実現されるようにしてもよい。
【００８１】
ステップＳ９０１において、送受信部３０１は受信装置１０からコンテンツ取得要求を受信し（Ｍ７０１）、制御部３０２へ要求を伝達する（Ｍ７０２）。受信装置１０から受信したコンテンツ取得要求には、取得対象となるコンテンツのコンテンツＩＤが設定されている。
【００８２】
ステップＳ９０２において、制御部３０２は情報管理部３０３に対してコンテンツ情報１１００の取得を指示する（Ｍ７０４）。情報管理部３０３は指定されたコンテンツＩＤのコンテンツ情報１１００を取得し（Ｍ７０５）制御部３０２へ伝達する（Ｍ７０６）。
【００８３】
ステップＳ９０３において、制御部３０２は、取得したコンテンツ情報１１００のコンテンツ変換要否１１０４を参照し、コンテンツ変換が必要であるか否かを判断する。コンテンツ変換が必要である場合（Ｓ９０３；ＹＥＳ）、ステップＳ９０４に進む。一方、コンテンツ変換が必要でない場合、ステップＳ９０６へ進む。
【００８４】
ステップＳ９０４において、制御部３０２は、取得したコンテンツ情報１１００のコンテンツ変換結果１１０５を参照し、コンテンツ変換が未実施であるかどうかを判断する。コンテンツ変換が未実施である場合（Ｓ９０４；ＹＥＳ）、ステップＳ９０５へ進む。一方、コンテンツ変換が実施済みである場合、ステップＳ９０６へ進む（Ｍ７０７）。
【００８５】
ステップＳ９０５において、制御部３０２は変換部３０４からコンテンツ変換の完了が通知されるのを待つ。
【００８６】
ステップＳ９０６において、制御部３０２は、コンテンツを送信する為のストリームとして、ＳｔｒｅａｍＩＤ１１０２に示されたコンテンツ取得要求の受信に使用したストリームを選択する。
【００８７】
ステップＳ９０７において、制御部３０２は送受信部３０１に対してコンテンツの送信を指示する（Ｍ７０８）。送受信部３０１は記憶部３０５に格納されているコンテンツを取得して受信装置１０へ送信する（Ｍ７０９）。
【００８８】
以上、図９で示したように、送信装置２０は送受信部３０１を介して、ステップＳ８０７でコンテンツリストを受信した受信装置１０からのコンテンツ要求に応じてコンテンツを送信する。
【００８９】
＜複数コンテンツ送信のシーケンス例＞
図１２は、本実施形態に係る複数コンテンツ送信時の処理全体の例を示すシーケンス図である。図１２において、送信装置２０が受信装置１０からの要求に対して送信するコンテンツリストは４つのコンテンツを含む。Ｃｏｎｔ１はコンテンツ変換が不要なコンテンツであり、Ｃｏｎｔ２、Ｃｏｎｔ３、Ｃｏｎｔ４はコンテンツ変換が必要なコンテンツである。また、変換部３０４は並行して１コンテンツのみのコンテンツ変換が可能な処理能力を有している。
【００９０】
Ｍ１２０１において、受信装置１０は送信装置２０の送受信部３０１へコンテンツリスト取得要求を送信する。Ｍ１２０２において、送受信部３０１は制御部３０２へコンテンツリスト取得要求を伝達する。Ｍ１２０３において、制御部３０２はコンテンツリスト取得に関する処理の制御を行う。具体的には、Ｍ１２０４、Ｍ１２０６、Ｍ１２０７、Ｍ１２０９、Ｍ１２１１に関する制御を行う。Ｍ１２０４において、制御部３０２は情報管理部３０３に対してコンテンツリストの生成を指示する。Ｍ１２０５において、情報管理部３０３はコンテンツリスト情報１０００を生成する。この際、Ｃｏｎｔ１、Ｃｏｎｔ２、Ｃｏｎｔ３、Ｃｏｎｔ４それぞれのコンテンツ情報１１００も生成される。Ｍ１２０６において、情報管理部３０３は制御部３０２へコンテンツリスト情報１０００及びコンテンツ情報１１００を伝達する。
【００９１】
制御部３０２は、コンテンツリスト情報１０００及びコンテンツ情報１１００を解析する。制御部３０２は、コンテンツ変換が必要なＣｏｎｔ２、Ｃｏｎｔ３、Ｃｏｎｔ４のうち、最初にコンテンツ変換を行うＣｏｎｔ２を除いたＣｏｎｔ３、Ｃｏｎｔ４についてＰｕｓｈＰｒｏｍｉｓｅが必要だと判断する。
【００９２】
Ｍ１２０７、Ｍ１２０９において、制御部３０２はそれぞれＣｏｎｔ３、Ｃｏｎｔ４についてのＰｕｓｈＰｒｏｍｉｓｅフレーム送信を送受信部３０１に対して指示する。Ｍ１２０８、Ｍ１２１０において、送受信部３０１はそれぞれＣｏｎｔ３、Ｃｏｎｔ４についてのＰｕｓｈＰｒｏｍｉｓｅフレームを受信装置１０へ送信する。Ｍ１２１１において、制御部３０２は送受信部３０１に対してコンテンツリストの送信を指示する。Ｍ１２１２において、送受信部３０１は受信装置１０へコンテンツリストの送信を行う。
【００９３】
Ｍ１２１３において、制御部３０２はＣｏｎｔ２のコンテンツ変換を変換部３０４に対して指示する。Ｍ１２１４において、変換部３０４はＣｏｎｔ２のコンテンツ変換処理を実施する。
【００９４】
Ｍ１２１５において、受信装置１０は、Ｍ１２１２で受信したコンテンツリストおよびＭ１２０８、Ｍ１２１０にて受信したＰｕｓｈＰｒｏｍｉｓｅフレームを参照し、取得するコンテンツとしてコンテンツ変換が不要なＣｏｎｔ１を選択する。そして、受信装置１０は送信装置２０の送受信部３０１へＣｏｎｔ１についてのコンテンツ取得要求を送信する。Ｍ１２１６において、送受信部３０１は制御部３０２へＣｏｎｔ１のコンテンツ取得要求を伝達する。Ｍ１２１７において、制御部３０２は情報管理部３０３に対してＣｏｎｔ１に係るコンテンツ情報１１００の取得を指示する。Ｍ１２１８において、情報管理部３０３はＣｏｎｔ１のコンテンツ情報１１００を取得する。Ｍ１２１９において、情報管理部３０３は制御部３０２へＣｏｎｔ１のコンテンツ情報１１００を伝達する。Ｍ１２２０において、制御部３０２は送受信部３０１に対してＣｏｎｔ１のコンテンツ送信を指示する。Ｍ１２２１において、送受信部３０１は受信装置１０へＣｏｎｔ１を送信する。
【００９５】
Ｍ１２２２において、変換部３０４は制御部３０２へＣｏｎｔ２のコンテンツ変換の完了を通知する。Ｍ１２２３において、制御部３０２はＣｏｎｔ３のコンテンツ変換を変換部３０４に対して指示する。Ｍ１２２４において、変換部３０４はＣｏｎｔ３のコンテンツ変換を実施する。
【００９６】
Ｍ１２２５において、制御部３０２はコンテンツ変換の完了したＣｏｎｔ２に係るコンテンツ情報１１００の更新を情報管理部３０３に対して指示する。Ｍ１２２６において、情報管理部３０３はＣｏｎｔ２のコンテンツ情報１１００を更新する。Ｍ１２２７において、情報管理部３０３は制御部３０２へＣｏｎｔ２のコンテンツ情報１１００の更新完了を通知する。
【００９７】
Ｍ１２２８において、受信装置１０は、取得するコンテンツとして、コンテンツ変換が必要でありＰｕｓｈＰｒｏｍｉｓｅが実施されていないＣｏｎｔ２を選択する。そして、受信装置１０は送信装置２０の送受信部３０１へＣｏｎｔ２についてのコンテンツ取得要求を送信する。Ｍ１２２９において、送受信部３０１は制御部３０２へＣｏｎｔ２のコンテンツ取得要求を伝達する。Ｍ１２３０において、制御部３０２は情報管理部３０３に対してＣｏｎｔ２に係るコンテンツ情報１１００の取得を指示する。Ｍ１２３１において、情報管理部３０３はＣｏｎｔ２のコンテンツ情報１１００を取得する。Ｍ１２３２において、情報管理部３０３は制御部３０２へＣｏｎｔ２のコンテンツ情報１１００を伝達する。Ｍ１２３３において、制御部３０２は送受信部３０１に対してＣｏｎｔ２のコンテンツ送信を指示する。Ｍ１２３４において、送受信部３０１は受信装置１０へＣｏｎｔ２を送信する。
【００９８】
Ｍ１２３５において、変換部３０４は制御部３０２へＣｏｎｔ３のコンテンツ変換完了を通知する。Ｍ１２３６において、制御部３０２は、変換の完了したＣｏｎｔ３がＰｕｓｈＰｒｏｍｉｓｅにより予約されたコンテンツであることを確認し、送受信部３０１に対してＣｏｎｔ３の送信を要求する。Ｍ１２３７において、送受信部３０１は受信装置１０へＣｏｎｔ３を送信する。
【００９９】
Ｍ１２３８において、制御部３０２はＣｏｎｔ４のコンテンツ変換を変換部３０４に対して指示する。Ｍ１２３９において、変換部３０４はＣｏｎｔ４のコンテンツ変換処理を実施する。
【０１００】
Ｍ１２４０において、制御部３０２はコンテンツ変換の完了したＣｏｎｔ３に係るコンテンツ情報１１００の更新を情報管理部３０３に対して指示する。Ｍ１２４１において、情報管理部３０３はＣｏｎｔ３のコンテンツ情報１１００を更新する。Ｍ１２４２において、情報管理部３０３は制御部３０２へＣｏｎｔ３のコンテンツ情報１１００の更新完了を通知する。
【０１０１】
Ｍ１２４３において、変換部３０４は制御部３０２へＣｏｎｔ４のコンテンツ変換完了を通知する。Ｍ１２４４において、制御部３０２は、変換の完了したＣｏｎｔ４がＰｕｓｈＰｒｏｍｉｓｅにより予約されたコンテンツであることを確認し、送受信部３０１に対してＣｏｎｔ４の送信を指示する。Ｍ１２４５において、送受信部３０１は受信装置１０へＣｏｎｔ４を送信する。
【０１０２】
Ｍ１２４６において、制御部３０２はコンテンツ変換の完了したＣｏｎｔ４に係るコンテンツ情報１１００の更新を情報管理部３０３に対して指示する。Ｍ１２４７において、情報管理部３０３はＣｏｎｔ４のコンテンツ情報１１００を更新する。Ｍ１２４８において、情報管理部３０３は制御部３０２へＣｏｎｔ４のコンテンツ情報１１００の更新完了を通知する。
【０１０３】
以上説明したように、本実施形態における送信装置２０は、受信装置１０の要求に応じてコンテンツリストを生成する。そして、そのコンテンツリストに含まれるコンテンツのうち、コンテンツ変換が必要であり且つ直ちに変換を行うことができないコンテンツについて、ＰｕｓｈＰｒｏｍｉｓｅフレームを送信する。受信装置１０はＰｕｓｈＰｒｏｍｉｓｅフレームを受信したコンテンツに対するコンテンツ取得要求を送信しないため、変換に時間のかかるコンテンツについて送信する無駄なコンテンツ取得要求を減らすことができる。また、ＰｕｓｈＰｒｏｍｉｓｅが実施されたコンテンツは、コンテンツ変換が完了すると直ちに送信装置２０から受信装置１０にＰｕｓｈ送信されるため、低遅延の効率的なコンテンツ送信が可能となる。
【０１０４】
なお、上記の実施形態では、ＰｕｓｈＰｒｏｍｉｓｅが実施されたコンテンツは、コンテンツ変換が完了すると直ちに送信装置２０から受信装置１０にＰｕｓｈ送信されるものとしたが、そのコンテンツの送信方法はＰｕｓｈ送信に限定されない。例えば、ＰｕｓｈＰｒｏｍｉｓｅフレームで指定されたコンテンツの変換が完了すると、制御部３０２は送受信部３０１を制御して、そのコンテンツに対するコンテンツ要求を許可する要求許可通知を受信装置１０に対して行う。そして、受信装置１０は要求許可通知に対応するコンテンツについてのコンテンツ取得要求を送信装置２０に送信し、それに応じて送信装置２０がそのコンテンツを受信装置１０に送信するということも可能である。この方法によれば、受信装置１０が不要なコンテンツを送信装置２０から受信することを減らすことができる。
【０１０５】
また、上記の実施形態では、送信前にコンテンツ変換が必要であり且つコンテンツ変換を直ちに実施できないコンテンツについてＰｕｓｈＰｒｏｍｉｓｅフレームを送信した。しかしながら、ＰｕｓｈＰｒｏｍｉｓｅフレーム送信の対象となるコンテンツはこれに限定されず、受信装置１０に応じた形式で記憶されていない未取得コンテンツの少なくとも一つに対してＰｕｓｈＰｒｏｍｉｓｅフレームが送信される。例えば、受信装置からのリクエスト再送間隔よりもコンテンツ変換に要する時間が長い場合、直ちにコンテンツ変換を実施できるコンテンツについてもＰｕｓｈＰｒｏｍｉｓｅを実施することが可能である。
【０１０６】
また、上記の実施形態では、送信装置２０が受信装置１０からのコンテンツリスト取得要求に応じてコンテンツリストを生成し送信したが、コンテンツリストを生成する主体は送信装置２０に限らない。例えば、送信装置２０とは別の装置がコンテンツリストを生成し送信装置２０と受信装置１０に送信する。そして、送信装置２０と受信装置１０は受信したコンテンツリストに基づいてコンテンツ要求やＰｕｓｈＰｒｏｍｉｓｅなどのやり取りを行うことが可能である。
【０１０７】
また、上記の実施形態では、送信装置２０が受信装置１０に対してコンテンツリストとＰｕｓｈＰｒｏｍｉｓｅフレームを送信することで受信装置１０からのコンテンツ要求を制御する場合の例を中心に説明したが、この例に限らない。例えば、送信装置２０は、コンテンツリスト情報１０００と共にコンテンツ情報１１００を受信装置１０に送信する。受信装置１０は、コンテンツリスト情報１０００により特定される複数のコンテンツのうち、コンテンツ変換が必要なコンテンツとコンテンツ変換が不要なコンテンツとを識別可能に表示した上で、ユーザに取得対象となるコンテンツを選択させる。そして、受信装置１０は、ユーザに選択されたコンテンツについてコンテンツ取得要求を送信し、送信装置２０からそのコンテンツを取得することができる。
【０１０８】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【０１０９】
１０  受信装置
２０  送信装置
３０１  送受信部
３０２  制御部
３０３  情報管理部
３０４  変換部
３０５  記憶部
１０００  コンテンツリスト情報
１１００  コンテンツ情報
【図１】
0006489838.tif 000002
【図２】
0006489838.tif 000003
【図３】
0006489838.tif 000004
【図４】
0006489838.tif 000005
【図５】
0006489838.tif 000006
【図６】
0006489838.tif 000007
【図７】
0006489838.tif 000008
【図８】
0006489838.tif 000009
【図９】
0006489838.tif 000010
【図１０】
0006489838.tif 000011
【図１１】
0006489838.tif 000012
【図１２】
0006489838.tif 000013