(57)【特許請求の範囲】
【請求項１】
サービスを提供する複数のサービスデバイスと、前記サービスデバイスにサービスの提供を要求するクライアントと、前記サービスデバイスと前記クライアントとの間でデータを中継する中継装置とを備えたネットワークシステムであって、
前記サービスデバイスは、
複数のサービスプログラムと、前記各サービスプログラムの所在に関する情報を含むデバイス記述ファイルとを記憶するデバイス記憶手段と、
前記クライアントから送信された動作要求を受けたとき、前記動作要求に対応するサービスプログラムに基づいて、前記動作要求に応じた動作処理を実行する実行手段とを備え、
前記中継装置は、
前記複数のサービスデバイスの中から、前記クライアントから送信される動作要求を中継するサービスデバイスを選択する選択手段と、
前記選択されたサービスデバイスから前記デバイス記述ファイルを取得する中継取得手段と、
前記取得されたデバイス記述ファイルに基づいて、前記選択されたサービスデバイス内の複数のサービスプログラムのうち、前記中継装置によるデータの中継が必要なサービスプログラムを特定する特定手段と、
前記デバイス記述ファイル内の情報のうち、前記特定手段により特定されなかったサービスプログラムの所在を維持し、前記特定されたサービスプログラムの所在を前記中継装置の所在に変更したデバイス記述ファイルを作成する作成手段とを備え、
前記クライアントは、
前記作成されたデバイス記述ファイルを前記中継装置から取得するクライアント取得手段と、
前記取得されたデバイス記述ファイルに基づいて、所望のサービスプログラムの所在宛に前記動作要求を送信する送信手段とを備えることを特徴とするネットワークシステム。
【請求項２】
請求項１に記載のネットワークシステムであって、
前記中継装置はさらに、
前記作成手段により所在を変更されたサービスプログラムの変更前の所在を記憶する中継記憶手段と、
前記クライアントから前記動作要求を受けたとき、前記動作要求に応じた処理動作を実行する中継実行手段と、
前記中継実行手段による実行結果を、前記中継記憶手段に記憶された前記変更前の所在宛に送信する中継手段とを備えることを特徴とするネットワークシステム。
【請求項３】
請求項１に記載のネットワークシステムであって、
前記デバイス記憶手段はさらに、前記サービスプログラムにより実行可能な複数の動作処理に関する情報が登録された前記サービス記述ファイルを記憶し、
前記中継取得手段は、前記デバイス記述ファイルとともにサービス記述ファイルを取得し、
前記特定手段は、前記サービス記述ファイル内の前記動作処理ごとに、前記中継装置による中継が必要か否かを判断し、中継が必要な動作処理を含むサービスプログラムを特定することを特徴とするネットワークシステム。
【請求項４】
クライアントと、各々が複数のサービスプログラムと各サービスプログラムの所在に関する情報を有するデバイス記述ファイルとを蓄積し、前記サービスプログラムに基づいて前記クライアントからの動作要求に応じた動作処理を実行する複数のサービスデバイスと、前記サービスデバイスと前記クライアントとの間でデータを中継する中継装置とを備えたネットワークＡＶシステムにおける前記中継装置であって、
前記複数のサービスデバイスの中から、前記クライアントから送信される前記動作要求を中継するサービスデバイスを選択する選択手段と、
前記選択されたサービスデバイスから前記デバイス記述ファイルを取得する中継取得手段と、
前記取得されたデバイス記述ファイルに基づいて、前記選択されたサービスデバイス内の複数のサービスプログラムのうち、前記中継装置によるデータの中継が必要なサービスプログラムを特定する特定手段と、
前記デバイス記述ファイル内の情報のうち、前記特定手段により特定されなかったサービスプログラムの所在を維持し、前記特定されたサービスプログラムの所在を前記中継装置の所在に変更したデバイス記述ファイルを作成する作成手段と、
前記クライアントが前記作成されたデバイス記述ファイル内の所望のサービスプログラムの所在宛に前記動作要求を送信するために、前記作成されたデバイス記述ファイルを前記クライアントに送信する送信手段とを備えることを特徴とする中継装置。
【請求項５】
請求項４に記載の中継装置であってさらに、
前記作成手段により所在を変更されたサービスプログラムの変更前の所在を記憶する中継記憶手段と、
前記クライアントから前記動作要求を受けたとき、前記動作要求に応じた処理動作を実行する中継実行手段と、
前記中継手段による実行結果を前記中継記憶手段に記憶された前記変更前の所在宛に送信する中継手段とを備えることを特徴とする中継装置。
【請求項６】
請求項４に記載の中継装置であって、
前記中継取得手段はさらに、前記サービスデバイスに蓄積され、前記サービスプログラムにより実行可能な複数の動作処理に関する情報が登録されたサービス記述ファイルを取得し、
前記特定手段は、前記サービス記述ファイル内の前記動作処理ごとに、前記中継装置によるデータの中継が必要か否かを判断し、中継が必要な動作処理を含むサービスプログラムを特定することを特徴とする中継装置。
【請求項７】
クライアントと、各々が複数のサービスプログラムと各サービスプログラムの所在に関する情報を有するデバイス記述ファイルとを蓄積し、前記サービスプログラムに基づいて前記クライアントからの動作要求に応じた動作処理を実行する複数のサービスデバイスと、前記サービスデバイスと前記クライアントとの間でデータを中継する中継装置とを備えたネットワークシステムにおける前記中継装置内のコンピュータに実行させる中継プログラムであって、
前記複数のサービスデバイスの中から、前記クライアントから送信される動作要求を中継するサービスデバイスを選択するステップと、
前記選択されたサービスデバイスから前記デバイス記述ファイルを取得するステップと、
前記取得されたデバイス記述ファイルに基づいて、前記選択されたサービスデバイス内の複数のサービスプログラムのうち、前記中継装置によるデータの中継が必要なサービスプログラムを特定するステップと、
前記デバイス記述ファイル内の情報のうち、前記特定手段により特定されなかったサービスプログラムの所在を維持し、前記特定されたサービスプログラムの所在を前記中継装置の所在に変更したデバイス記述ファイルを作成するステップと
前記クライアントが前記作成されたデバイス記述ファイル内の所望のサービスプログラムの所在宛に前記動作要求を送信するために、前記作成されたデバイス記述ファイルを前記クライアントに送信するステップとを前記中継装置内のコンピュータに実行させる中継プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークシステムに関し、さらに詳しくは、クライアントと、クライアントからの要求に応じてサービスを提供するデバイスと、クライアントとデバイスとの間でデータを中継する中継装置とを備えたネットワークシステム、そのネットワークシステムに利用される中継装置、及び中継装置内のコンピュータに実装される中継プログラムに関する。
【背景技術】
【０００２】
最近、家庭内のパーソナルコンピュータやＡＶ（Audio Visual）機器を相互に接続してホームネットワークを構築する接続技術が複数提案されている。それらの接続技術の中でも、ＤＬＮＡ（Digital Living Network Alliance）が提案する接続技術（以下、ＤＬＮＡガイドラインという）を実装した機器が多数登場している。
【０００３】
ＤＬＮＡガイドラインは、既存のプロトコルであるＵＰｎＰ（Universal Plug and Play：ユニバーサルプラグアンドプレイ）を利用する。ＵＰｎＰプロトコルに基づくネットワークシステムでは、コントロールポイントと呼ばれるクライアントが、映像や音楽といったコンテンツを蓄積するメディアサーバや、コンテンツを再生するメディアレンダラといったサービスデバイスを制御する。たとえば、コントロールポイントは、メディアサーバが蓄積する複数のコンテンツに関する情報を取得し、所望のコンテンツを再生するようメディアレンダラに指示する。メディアレンダラは、メディアサーバに所望のコンテンツを要求する。メディアサーバは、要求に応じて所望のコンテンツをストリーミング配信し、メディアレンダラは、ストリーミング配信されたコンテンツを再生する。
【０００４】
このように、ＤＬＮＡガイドラインは、ＵＰｎＰプロトコルを利用することで、機器間の相互接続を実現し、クライアントやサービスデバイス等の複数の機器間でコンテンツの共有を実現する。
【０００５】
２００６年３月に公表されたＤＬＮＡガイドラインｖ１．５（DLNA Networked Device Interoperability Guidelines v1.5）ではさらに、相互接続の対象を、テレビやＡＶオーディオ機器といった家庭に据え置かれる機器（据置型機器）だけでなく、ポータブルミュージックプレイヤや携帯端末といったモバイル機器まで拡げている。
【０００６】
ＤＬＮＡガイドラインｖ１．５ではさらに、据置型機器とモバイル機器との間の通信を実現する中継装置（Home Infrastructure Device：ＨＩＤ）の概念が提案されている。ガイドラインによれば、中継装置は、据置機器とモバイル機器とが互いに異なるネットワークインターフェースを有する場合にブリッジ機能を提供したり、据置型機器からモバイル機器に配信されるコンテンツのデータフォーマットをモバイル機器で再生可能なフォーマットに変換する変換機能を提供する。
【０００７】
しかしながら、ＤＬＮＡガイドラインｖ１．５では、中継装置の具体的な技術仕様については何ら提案されていない。仮に、複数の機器間のデータ通信の全てが中継装置を経由して行われれば、ネットワーク全体の通信処理能力は低下する。
【特許文献１】特許第３７１６８４５号
【特許文献２】特開２００４−３５７２７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明の目的は、中継装置が必要に応じてデータを中継するネットワークシステムを提供することである。
【課題を解決するための手段及び発明の効果】
【０００９】
本発明によるネットワークシステムは、複数のサービスデバイスと、クライアントと、中継装置とを備える。サービスデバイスは、サービスを提供する。クライアントは、サービスデバイスにサービスの提供を要求する。中継装置は、サービスデバイスとクライアントとの間でデータを中継する。サービスデバイスは、デバイス記憶手段と、実行手段とを備える。デバイス記憶手段は、複数のサービスプログラムと、各サービスプログラムの所在に関する情報を含むデバイス記述ファイルとを記憶する。実行手段は、クライアントから送信された動作要求を受けたとき、動作要求に対応するサービスプログラムに基づいて、動作要求に応じた動作処理を実行する。中継装置は、選択手段と、中継取得手段と、特定手段と、作成手段とを備える。選択手段は、複数のサービスデバイスの中から、クライアントから送信された動作要求を中継する。中継取得手段は、選択されたサービスデバイスからデバイス記述ファイルを取得する。特定手段は、取得されたデバイス記述ファイルに基づいて、選択されたサービスデバイス内の複数のサービスプログラムのうち、中継装置によるデータの中継が必要なサービスプログラムを特定する。作成手段は、デバイス記述ファイル内の情報のうち、特定されたサービスプログラムの所在を中継装置の所在に変更したデバイス記述ファイルを作成する。クライアントは、クライアント取得手段と、送信手段とを備える。クライアント取得手段は、作成されたデバイス記述ファイルを中継装置から取得するクライアント取得手段と、取得されたデバイス記述ファイルに基づいて、所望のサービスプログラムの所在宛に動作要求を送信する。
【００１０】
本発明によるネットワークシステムでは、中継装置が、中継対象となるサービスデバイスのデバイス記述ファイル内の複数のサービスのうち、中継装置での処理が必要なサービスの所在情報を自身の所在情報に差し換えたデバイス記述ファイルを作成する。クライアントは、中継装置により作成されたデバイス記述ファイルに基づいて動作要求を送信する。そのため、クライアントは、中継装置での処理が必要な動作要求のみを中継装置に送信し、中継装置での処理が不要な動作要求を中継装置を経由することなくサービスデバイスに送信できる。
【００１１】
好ましくは、中継装置はさらに、中継記憶手段と、中継実行手段と、中継手段とを備える。中継記憶手段は、作成手段により所在を変更されたサービスプログラムの変更前の所在を記憶する。中継実行手段は、クライアントから動作要求を受けたとき、動作要求に応じた処理動作を実行する。中継手段は、実行された結果を、中継記憶手段に記憶された変更前の所在宛に送信する。
【００１２】
この場合、中継装置は、クライアントからの動作要求に対して所定の動作処理を実行し、その結果を送信すべきサービスデバイスに中継できる。
【００１３】
好ましくは、デバイス記憶手段はさらに、サービスプログラムにより実行可能な複数の動作処理に関する情報が登録されたサービス記述ファイルを記憶する。中継取得手段は、デバイス記述ファイルとともにサービス記述ファイルを取得する。特定手段は、サービス記述ファイル内の動作処理ごとに、中継装置による中継が必要か否かを判断し、中継が必要な動作処理を含むサービスプログラムを特定する。
【００１４】
この場合、中継装置は動作処理単位で、中継が必要か否かを判断する。そのため、中継が必要なサービスプログラムの特定精度が向上する。
【００１５】
本発明による中継装置は、上述のネットワークシステムに利用される。また、本発明による中継プログラムは、上述の中継装置内のコンピュータに実装される。
【発明を実施するための最良の形態】
【００１６】
以下、図面を参照し、本発明の実施の形態を詳しく説明する。図中同一又は相当部分には同一符号を付してその説明は繰り返さない。
【００１７】
［全体構成］
図１を参照して、本実施の形態によるネットワークＡＶシステム１は、クライアントとして機能するコントロールポイント（Control Point）ＣＰと、サービスを提供するサービスデバイスとして機能するメディアサーバ(Media Server)ＭＳ及びメディアレンダラ(Media Renderer)ＭＲと、中継装置（Home Infrastructure Device）ＨＩＤとを備える。これらの機器は、ＵＰｎＰ（Universal Plug and Play）プロトコルスタックを実装するＵＰｎＰデバイスであり、ＵＰｎＰプロトコルに基づいて互いに接続可能である。なお図１では１つのメディアサーバＭＳ及び１つのメディアレンダラＭＲを示したが、メディアサーバＭＳ及びメディアレンダラＭＲが複数存在してもよい。
【００１８】
各ＵＰｎＰデバイスのハードウェア構成は、図２に示すとおりである。具体的には、中央処理装置（ＣＰＵ）１０１と、メモリ１０２と、ハードディスクドライブ（ＨＤＤ）１０３と、他のＵＰｎＰデバイスと通信するための通信インタフェース１０４と、ディスプレイ１０５とを備える。なお、メディアサーバＭＳ、メディアレンダラＭＲ及び中継装置ＨＩＤは、ディスプレイ１０５を有していなくてもよい。以下、各ＵＰｎＰデバイスの詳細を説明する。
【００１９】
［メディアサーバ］
メディアサーバＭＳは、ＨＤＤ１０３に複数のコンテンツファイルを蓄積する。メディアサーバＭＳは、コントロールポイントＣＰからの要求に応じてサービスを実行する。メディアサーバＭＳは、たとえば、コントロールポイントＣＰからコンテンツの閲覧要求を受ければ、自身が蓄積するコンテンツのリストをコントロールポイントＣＰに送信する動作処理を実行する。メディアサーバＭＳはさらに、メディアレンダラＭＲや中継装置ＨＩＤからの要求に応じた動作処理を実行する。たとえば、メディアレンダラＭＲ又は中継装置ＨＩＤからコンテンツファイルの送信要求を受けたとき、メディアサーバＭＳは、要求元のＵＰｎＰデバイスにコンテンツファイルを送信する。
【００２０】
図３にメディアサーバＭＳのアーキテクチャを示す。図３を参照して、メディアサーバＭＳは、３つのサービス（コンテンツディレクトリＳＥ１、コネクションマネージャＳＥ２及びＡＶトランスポートＳＥ３）を含む。これらのサービスＳＥ１〜ＳＥ３は、ＨＤＤ１０３に記憶されているコンテンツディレクトリサービスプログラム、コネクションサービスプログラム及びＡＶトランスポートサービスプログラムがメモリ１０２にロードされ、ＣＰＵ１０１で実行されることで、実現される。
【００２１】
コンテンツディレクトリ(Content Directory Service)ＳＥ１は、コントロールポイントＣＰが、メディアサーバＭＳが蓄積するコンテンツに関する情報を閲覧できるサービスを提供する。たとえば、コントロールポイントＣＰからの要求に応じて、コンテンツリストを提供したり、特定のコンテンツのメタ情報を提供したりする。メタ情報とは、たとえば、曲のタイトル、アルバム名、アーティスト名等のコンテンツに関する情報である。このように、コンテンツディレクトリＳＥ１は、コントロールポイントＣＰからのアクション要求に応じて、コンテンツリストの提供やメタ情報の提供といった、複数のアクションを実行する。
【００２２】
同様に、コネクションマネージャＳＥ２も、コントロールポイントＣＰからの要求に応じた複数のアクションを実行する。たとえば、コネクションマネージャＳＥ２は、他のＵＰｎＰデバイスと確立したコネクションを管理する。また、通信を行う他のＵＰｎＰデバイスが対応可能な転送プロトコル及びデータフォーマットの情報を取得したり、自身が対応可能な転送プロトコル及びデータフォーマットの情報を提供したりする。ＡＶトランスポートＳＥ３は、コントロールポイントＣＰがコンテンツファイルの再生、停止、トリックプレイ等を制御できるように、複数のアクションを実行する。
【００２３】
このように、各サービスＳＥ１〜ＳＥ３は、コントロールポイントＣＰからのアクション要求に応じて、複数のアクションを実行する。図４に示すように、各サービスＳＥは、コントロールサーバ１４、イベントサーバ１５及び状態テーブル１６を含む。状態テーブルは、サービスの状態を示す状態変数が登録されている。状態変数は、たとえば、アクションを実行するときに更新される。コントロールサーバ１４は、コントロールポイントＣＰからのアクション要求を受けたとき、要求に応じたアクションを実行する。コントロールサーバ１４はさらに、アクションを実行したとき、状態テーブル内の状態変数を更新し、アクション要求の送信元であるコントロールポイントＣＰにレスポンスを送信する。イベントサーバ１５は、状態変数が変更されたとき、通知を希望したコントロールポイントＣＰにその旨を通知する。
【００２４】
上述のとおり、各サービスＳＥは、複数のアクションを実行する。各サービスＳＥが実行可能なアクションに関する情報は、サービス記述ファイル(Service Description Document)に登録される。図５に示すように、サービス記述ファイルには、各サービスＳＥが対応可能なアクションの識別子（アクションＩＤ）が列挙される。サービス記述ファイルは、各サービスＳＥ１〜ＳＥ３ごとに作成され、メモリ１０２又はＨＤＤ１０３に格納される。
【００２５】
メディアサーバＭＳはさらに、メディアサーバＭＳが実行可能なサービスの種類及びそのサービスの所在に関する情報が登録されたデバイス記述ファイル(Device Description Document)をメモリ１０２又はＨＤＤ１０３に記憶する。コントロールポイントＣＰは、メディアサーバＭＳからデバイス記述ファイルを取得し、各サービスの所在宛にアクション要求を送信する。
【００２６】
図６に示すように、デバイス記述ファイルには、サービスの種類を示すサービスＩＤと、そのサービスの所在を示す所在情報とが登録される。図６中の「ＣＤＳ」は、コンテンツディレクトリのサービスＩＤである。また、「ＣＭ」は、コネクションマネージャのサービスＩＤであり、「ＡＶＴ」はＡＶトランスポートのサービスＩＤである。コントロールポイントＣＰは、デバイス記述ファイル内のサービスＩＤを参照することで、メディアサーバＭＳがどのようなサービスを有するか確認できる。
【００２７】
所在情報は各サービスＳＥ１〜ＳＥ３のＵＲＬ(Uniform Resource Locator)を含む。より具体的には、所在情報は、アクション要求に応じてアクションを実行するコントロールサーバ１４のＵＲＬと、イベントサーバ１５のＵＲＬとを含む。所在情報はさらに、サービス記述ファイルのＵＲＬも含む。
【００２８】
図６では、所在情報ＵＲＬ１のサービスは、サービスＩＤ＝ＣＤＳである。つまり、所在ＵＲＬ１には、コンテンツディレクトリＳＥ１が格納されている。同様に、所在情報ＵＲＬ２のサービスは、コネクションマネージャＳＥ２であり、所在情報ＵＲＬ３のサービスは、ＡＶトランスポートＳＥ３である。
【００２９】
デバイス記述ファイルはさらに、デバイスクラスを含む。デバイスクラスは、サービスデバイスの種類（メディアサーバか、メディアレンダラか、中継装置か）を示す。デバイスクラスは、各サービスデバイスのメモリ１０２又はＨＤＤ１０３に記憶されている。
【００３０】
［メディアレンダラ］
メディアレンダラＭＲは、コントロールポイントＣＰのアクション要求に応じて、種々のアクションを実行する。たとえば、メディアレンダラＭＲは、コントロールポイントＣＰからのアクション要求に応じて、メディアサーバＭＳにコンテンツファイルを要求する。そして、メディアサーバＭＳから配信されたコンテンツファイルを受信し、再生する。さらに、要求に応じて、コンテンツファイルの停止、早送り等を実行する。
【００３１】
上述のアクションを実行するために、メディアレンダラＭＲは、図７に示す３つのサービス（レンダリングコントロールＳＥ４、コネクションマネージャＳＥ５及びＡＶトランスポートＳＥ６）を含む。各サービスＳＥ４〜ＳＥ６は、ＨＤＤ１０３に格納されたレンダリングコントロールプログラム、コネクションマネージャプログラム及びＡＶトランスポートプログラムをメモリ１０２に読み出し、ＣＰＵ１０１で実行することで実現する。
【００３２】
レンダリングコントロールＳＥ４は、コントロールポイントＣＰが、メディアレンダラＭＲから出力されるコンテンツの状態を調整できるよう、複数のアクションを実行する。たとえば、コンテンツが映像の場合、コントロールポイントＣＰからのアクション要求に応じて、映像のコントラストや輝度を調整する。また、コンテンツが音声の場合、コントロールポイントＣＰからのアクション要求に応じて、音量の調整やミュート等の制御を実行する。コネクションマネージャＳＥ５及びＡＶトランスポートＳＥ６は、上述のコネクションマネージャＳＥ２及びＡＶトランスポートＳＥ３と同様の複数のアクションを実行する。
【００３３】
メディアレンダラＭＲは、サービスＳＥ４〜ＳＥ６のアクションを列挙したサービス記述ファイルをサービスごとに有し、メモリ１０２又はＨＤＤ１０３に記憶する。また、各サービスＳＥ４〜ＳＥ６のサービスの種類及び所在を示すデバイス記述ファイルをメモリ１０２又はＨＤＤ１０３に記憶する。図８に示すように、レンダリングコントロールＳＥ４のサービスＩＤは「ＲＣＳ」であり、その所在情報はＵＲＬ４である。コネクションマネージャＳＥ５のサービスＩＤは、「ＣＭ」であり、コネクションマネージャＳＥ２と同じである。つまり、これらのサービスＳＥ２及びＳＥ５は同じ種類のサービスである。コネクションマネージャＳＥ５の所在情報はＵＲＬ５である。同様に、ＡＶトランスポートＳＥ６のサービスＩＤは「ＡＶＴ」であり、ＡＶトランスポートＳＥ３と同じ種類である。ＡＶトランスポートＳＥ６の所在情報はＵＲＬ６である。なお、デバイスクラスは、サービスデバイスがメディアレンダラであることを示す。
【００３４】
［コントロールポイント］
コントロールポイントＣＰは、サービスデバイス（メディアサーバＭＳ及びメディアレンダラＭＲ）と中継装置ＨＩＤとを制御する。具体的には、コントロールポイントＣＰは、サービスデバイス内の各サービスのアクションを呼び出し、実行させる。これを実現するために、コントロールポイントＣＰは、サービスデバイス及び中継装置ＨＩＤからデバイス記述ファイルを取得する。そして、デバイス記述ファイルに基づいて、利用したいサービスのＵＲＬ宛に、そのサービスが実行可能なアクションの要求（アクション要求）を送信する。サービスデバイス及び中継装置ＨＩＤ内の各サービスは、送信されたアクション要求に応じたアクションを実行する。
【００３５】
コントロールポイントＣＰはさらに、サービスデバイス及び中継装置ＨＩＤの状態を監視できる。コントロールポイントＣＰは、監視したいサービスのＵＲＬにサブスクライブ要求を送信する。サブスクライブ要求を受けたサービスは、状態変数が更新されたとき、その旨の通知をコントロールポイントＣＰに送信する。この通知を受けることで、コントロールポイントＣＰはサービスデバイス及び中継装置ＨＩＤ内の各サービスの状態を監視できる。
【００３６】
［中継装置］
中継装置ＨＩＤは、コントロールポイントＣＰと、メディアサーバＭＳと、メディアレンダラＭＲとの間を中継する。中継装置ＨＩＤは、ネットワーク上のサービスデバイス（メディアサーバＭＳ及びメディアレンダラＭＲ）の中から、中継する対象となるサービスデバイスを選択する。
【００３７】
図９を参照して、中継装置ＨＩＤは、サービスＳＥ１１〜ＳＥ１６を含む。中継装置ＨＩＤは、ＨＤＤ１０３に中継プログラムを含む。中継プログラムは、各サービスＳＥ１１〜ＳＥ１６に対応する複数のサービスプログラムを含む。各サービスＳＥ１１〜ＳＥ１６は、中継プログラムをメモリ１０２に読み出し、ＣＰＵ１０１で実行することにより実現される。
【００３８】
コンテンツディレクトリＳＥ１１、コネクションマネージャＳＥ１２及びＡＶトランスポートＳＥ１３は、中継装置ＨＩＤがメディアサーバＭＳとコントロールポイントＣＰとの間を中継するときに利用される。換言すれば、これらのサービスＳＥ１１〜ＳＥ１３は、中継装置ＨＩＤが中継対象としてメディアサーバＭＳを選択したときに利用される。
【００３９】
コンテンツディレクトリＳＥ１１は、メディアサーバＭＳ内のコンテンツディレクトリＳＥ１がアクションを実行するときに、コントロールポイントＣＰとコンテンツディレクトリＳＥ１との間を中継する。つまり、コンテンツディレクトリＳＥ１１は、コンテンツディレクトリＳＥ１に対応し、サービスＩＤは、「ＣＤＳ」である。
【００４０】
コンテンツディレクトリＳＥ１１は、コントロールポイントＣＰからのアクション要求を受ける。そして、必要に応じてアクション要求の内容を変更して、メディアサーバＭＳ内のコンテンツディレクトリＳＥ１に転送する。また、コンテンツディレクトリＳＥ１１は、メディアサーバＭＳのコンテンツディレクトリＳＥ１からのレスポンスを受け、必要に応じてレスポンスを加工した後、コントロールポイントＣＰにレスポンスを送信する。
【００４１】
コネクションマネージャＳＥ１２は、メディアサーバＭＳのコネクションマネージャＳＥ２に対応し、サービスＩＤは「ＣＭ」である。コネクションマネージャＳＥ１２の動作は、上述のコンテンツディレクトリＳＥ１１と同様である。つまり、コネクションマネージャＳＥ１２は、コントロールポイントＣＰからのアクション要求を、必要に応じて変更した後、サーバ用コネクションマネージャＳＥ２に送信する。また、コネクションマネージャＳＥ２からのレスポンスを、必要に応じて加工した後、コントロールポイントＣＰに送信する。
【００４２】
同様に、ＡＶトランスポートＳＥ１３は、サーバ用ＡＶトランスポートＳＥ３に対応し、サービスＩＤは「ＡＶＴ」である。
【００４３】
レンダリングコントロールＳＥ１４、コネクションマネージャＳＥ１５及びＡＶトランスポートＳＥ１６は、中継装置ＨＩＤがメディアサーバＭＳとコントロールポイントＣＰとの間を中継するときに利用される。換言すれば、これらのサービスＳＥ１４〜ＳＥ１６は、中継装置ＨＩＤが中継対象としてメディアレンダラＭＲを選択したときに利用される。
【００４４】
レンダリングコントロールＳＥ１４は、メディアレンダラＭＲ内のレンダリングコントロールＳＥ４に対応し、サービスＩＤは「ＲＣＳ」である。コネクションマネージャＳＥ１５は、コネクションマネージャＳＥ５に対応し、サービスＩＤは「ＣＭ」である。ＡＶトランスポートＳＥ１６は、ＡＶトランスポートＳＥ６に対応し、サービスＩＤは「ＡＶＴ」である。
【００４５】
上述のとおり、中継装置ＨＩＤは、各サービスＳＥ１１〜ＳＥ１６を用いて、中継動作を実行する。たとえば、中継装置ＨＩＤは、コントロールポイントＣＰから指示に応じて、メディアサーバＭＳから配信されたコンテンツファイルをメディアレンダラＭＲに中継する。このとき、中継装置ＨＩＤは、配信されたコンテンツファイルが、メディアレンダラＭＲで再生可能なデータフォーマットか否かを判断する。そして、メディアレンダラＭＲで再生できないデータフォーマットである場合、中継装置ＨＩＤは、コンテンツファイルを、メディアレンダラＭＲが再生可能なデータフォーマットに変換（トランスコーディング）し、変換されたコンテンツファイルをメディアレンダラＭＲに送信する。以上の中継装置ＨＩＤの動作により、メディアレンダラＭＲは、メディアサーバＭＳから配信されたコンテンツファイルを再生できる。
【００４６】
中継装置ＨＩＤはさらに、自身がアクションを実行する必要のないアクション要求をコントロールポイントＣＰから受けないように、特別な処理を実行する。具体的には、中継対象に選択したサービスデバイス（メディアレンダラＭＲ又はメディアサーバＭＳ）のデバイス記述ファイルの一部を変更して、変更されたデバイス記述ファイルをコントロールポイントＣＰに送信する。
【００４７】
コントロールポイントＣＰは、中継装置ＨＩＤのデバイス記述ファイルに基づいてアクション要求を送信する。そのため、コントロールポイントＣＰは、中継装置ＨＩＤで処理する必要のないアクション要求を、中継装置ＨＩＤを経由せずに、中継対象に選択されたサービスデバイス（メディアレンダラＭＲ又はメディアサーバＭＳ）に直接送信できる。そのため、ネットワークＡＶシステム１は、中継装置ＨＩＤを経由することによる動作遅延を抑制できる。以下、ネットワークＡＶシステム１の動作概要を説明する。
【００４８】
［ネットワークＡＶシステムの動作概要］
中継装置ＨＩＤは、起動時に、ネットワーク上で中継対象とするサービスデバイス（メディアレンダラ又はメディアサーバ）を選択する。以下、中継対象としてメディアレンダラＭＲが選択された場合のネットワークＡＶシステムの動作を説明するが、中継対象として、メディアサーバＭＳが選択されてもよい。中継対象は、たとえば、コントロールポイントＣＰ及び中継装置ＨＩＤのユーザにより選択される。
【００４９】
中継装置ＨＩＤは、中継対象として選択されたメディアレンダラＭＲのデバイス記述ファイルを取得する。そして、取得されたデバイス記述ファイルを加工して、新たなデバイス記述ファイルを作成する（デバイス記述ファイル作成処理）。
【００５０】
デバイス記述ファイル作成処理では、中継装置ＨＩＤは、メディアレンダラＭＲのデバイス記述ファイルに列挙された複数のサービスのうち、中継装置ＨＩＤでアクションを実行する必要のあるサービスの所在（ＵＲＬ）を、自身のＵＲＬに書き換える。一方、デバイス記述ファイル内の複数のサービスのうち、中継装置ＨＩＤでアクションが不要なサービスの所在については、ＵＲＬを変更しない。なお、サービスＩＤは何ら変更しない。以上の方法により、メディアレンダラＭＲのデバイス記述ファイルに基づいて、中継装置ＨＩＤのデバイス記述ファイルが作成される。つまり、中継装置ＨＩＤは、自身が動作処理を行う必要があるアクション要求のみを受信できるように、自身のデバイス記述ファイルを作成する。
【００５１】
コントロールポイントＣＰは、中継装置ＨＩＤのデバイス記述ファイルを取得し、デバイス記述ファイル内の所望のサービスの所在宛に、アクション要求を送信する。このとき、デバイス記述ファイルは、中継装置ＨＩＤで処理が必要なサービスについてはその所在を中継装置ＨＩＤ内のＵＲＬとし、中継装置ＨＩＤで処理が不要なサービスについては、その所在をメディアレンダラＭＲ内の所定サービスのＵＲＬとする。そのため、コントロールポイントＣＰは、中継装置ＨＩＤで処理が必要なサービスのアクションを呼び出すときのみ、アクション要求を中継装置ＨＩＤに送信する。そして、中継装置ＨＩＤで処理が不要なサービスのアクションを呼び出すとき、アクション要求を中継装置ＨＩＤを経由することなくメディアレンダラＭＲに送信できる。
【００５２】
以上のとおり、ネットワークＡＶシステム１では、中継装置ＨＩＤが、デバイス記述ファイル作成処理を実行することにより、上記動作を実現する。このとき、コントロールポイントＣＰや、メディアサーバＭＳ及びメディアレンダラＭＲ等のＵＰｎＰデバイスは、ＵＰｎＰプロトコルに準拠した通常の動作をすれば足り、中継装置ＨＩＤがネットワーク上で起動したことにより特別な動作を実行する必要がない。
【００５３】
以下、フロー図を用いて上述のネットワークＡＶシステム１の動作の詳細を説明する。
【００５４】
［中継装置によるデバイス記述ファイル取得及び作成処理］
メディアサーバＭＳ及びメディアレンダラＭＲが既に起動しているネットワーク上に、中継装置ＨＩＤが起動した場合を想定する。
【００５５】
図１０を参照して、中継装置ＨＩＤが起動したとき（Ｓ１）、中継装置ＨＩＤは、M-SEARCHメソッドを利用して、ネットワーク上に起動しているメディアレンダラＭＲを探し出す（Ｓ２）。具体的には、中継装置ＨＩＤは、ＳＳＤＰ(Simple Discovery Protocol)に準拠したSSDP Discoverメッセージをネットワーク上にマルチキャストする。SSDP Discoverメッセージは、中継装置ＨＩＤのＵＲＬと、探索対象のデバイスクラス（ここでは、メディアレンダラ）とを含む。
【００５６】
ネットワーク上の複数のサービスデバイスは、SSDP Discoverメッセージを受けたとき（Ｓ３）、メッセージ内の探索対象が自身のデバイスクラスと一致するか否かを確認する。そして、探索対象が自身のデバイスクラスと一致するとき、そのＵＰｎＰデバイスは、ディスカバリレスポンスをユニキャストで中継装置ＨＩＤに送信する（Ｓ４）。
【００５７】
中継装置ＨＩＤが出力したSSDP Discoverメッセージ内の探索対象はメディアレンダラである。そのため、ネットワーク上のメディアサーバＭＳはSSDP Discoverメッセージに応答しない。一方、ネットワーク上のメディアレンダラＭＲは、SSDP Discoverメッセージに応答し、ディスカバリレスポンスを中継装置ＨＩＤに送信する（Ｓ４）。ディスカバリレスポンスは、送信元のサービスデバイス固有の識別情報ＵＵＩＤ(Universally Unique Identifier)と、そのサービスデバイスのデバイス記述ファイルの所在（ＵＲＬ）とを含む。
【００５８】
中継装置ＨＩＤは、ディスカバリレスポンスを受信し、メモリ１０２に格納する（Ｓ５）。格納されたディスカバリレスポンスが複数存在する場合、ネットワーク上には複数のメディアレンダラＭＲが起動している。そこで、中継装置ＨＩＤは、複数のメディアレンダラＭＲから中継対象とするメディアレンダラＭＲを選択する（Ｓ６）。たとえば、中継装置ＨＩＤが複数のディスカバリレスポンスを受けたとき、中継装置ＨＩＤは、ディスカバリレスポンスを送信した複数のメディアレンダラＭＲをディスプレイ１０５に表示する。ネットワークＡＶシステム１のユーザは、中継装置ＨＩＤのディスプレイ１０５を参照して、中継対象とするメディアレンダラＭＲを選択する。他の方法によりメディアレンダラＭＲが選択されてもよい。ステップＳ５で受信されたディスカバリレスポンスが１つである場合、中継装置ＨＩＤは、そのディスカバリレスポンスを送信したメディアレンダラＭＲを中継対象として選択する（Ｓ６）。
【００５９】
中継装置ＨＩＤは、ステップＳ６で選択されたメディアレンダラＭＲのデバイス記述ファイルを要求する（Ｓ７）。具体的には、中継装置ＨＩＤは、ＨＴＴＰ(Hypertext Transfer Protocol)に準拠したHTTP GETメッセージを、ステップＳ５でメモリ１０２に格納された選択対象のメディアレンダラＭＲのＵＲＬ宛に送信する。メディアレンダラＭＲは、HTTP GETメッセージを受け（Ｓ８）、指定された宛先に格納されたデバイス記述ファイルを送信する（Ｓ９）。中継装置ＨＩＤは、デバイス記述ファイルを受信し、メモリ１０２に格納する（Ｓ１０）。
【００６０】
中継装置ＨＩＤはさらに、メモリ１０２内に格納されたデバイス記述ファイルに列挙された各サービスのサービス記述ファイルを取得する（Ｓ１１〜Ｓ１４）。中継装置ＨＩＤは、デバイス記述ファイル内の各サービスのＵＲＬ宛にHTTP GETメッセージを送信する（Ｓ１１）。メディアレンダラＭＲは、HTTP GETメッセージを受け、指定されたＵＲＬに格納されたサービス記述ファイルを中継装置ＨＩＤに送信する（Ｓ１３）。以上の動作により、中継装置ＨＩＤは、デバイス記述ファイル内に列挙された全てのサービスのサービス記述ファイルを取得し、メモリ１０２に格納する（Ｓ１４）。
【００６１】
続いて、中継装置ＨＩＤは、格納されたデバイス記述ファイルを用いて、デバイス記述ファイル作成処理を実行する（Ｓ１５）。以下、デバイス記述ファイル作成処理について説明する。
【００６２】
［デバイス記述ファイル作成処理］
中継装置ＨＩＤは、デバイス記述ファイル作成処理により、中継装置ＨＩＤ自身のデバイス記述ファイルを作成する。
【００６３】
図１１を参照して、初めに、中継装置ＨＩＤは、ステップＳ１４で格納された、メディアレンダラＭＲの複数のサービス記述ファイルのうち、任意のサービス記述ファイルを選択する（Ｓ１５０１）。ここでは、レンダリングコントロールＳＥ４のサービス記述ファイルが読み出されたと仮定して、説明を進める。
【００６４】
中継装置ＨＩＤは、読み出されたレンダリングコントロールＳＥ４のサービス記述ファイルに列挙された複数のアクションのうち、任意のアクションを選択する（Ｓ１５０２）。そして、コントロールポイントＣＰが、そのアクションを要求したとき、中継装置ＨＩＤが、そのアクションのメッセージ及びレスポンスに対応して、何らかの処理を実行する必要があるか否かを判断する（Ｓ１５０３）。
【００６５】
中継装置ＨＩＤは、図１２に示す判断テーブルをメモリ１０２に予め格納している。判断テーブルには、中継装置ＨＩＤで処理が必要なアクションのアクションＩＤが登録されている。中継装置ＨＩＤは、Ｓ１５０４で選択されたアクションが判断テーブルに登録されているか否かを判断する。登録されているとき（Ｓ１５０３でＹＥＳ）、そのアクションが呼び出されたとき、中継装置ＨＩＤはそのアクションに対するメッセージ又はレスポンスに対して動作処理を実行する必要がある。そのため、そのアクションが属するレンダリングコントロール（サービスＩＤ＝ＲＣＳ）については、中継装置ＨＩＤ内のレンダリングコントロールＳＥ１４のＵＲＬ情報（ＵＲＬ１４）をデバイス記述ファイルに登録する（Ｓ１５０６）。この場合、中継装置ＨＩＤは、Ｓ１５０８に進み、次のサービス記述ファイル（たとえばコネクションマネージャＳＥ５のサービス記述ファイル）を読み出し（Ｓ１５０１）。ステップＳ１５０２以降の動作を進める。
【００６６】
一方、ステップＳ１５０３で判断の結果、選択されたアクションが判断テーブルに登録されていないとき（Ｓ１５０３でＮＯ）、中継装置ＨＩＤは、サービス記述ファイル中の全てのアクションを選択するまで（Ｓ１５０４）、ステップＳ１５０２以降の動作を繰り返す。そして、全てのアクションを選択したとき（Ｓ１５０４でＹＥＳ）、つまり、サービス記述ファイル内の全てのアクションが判断テーブルに登録されていないとき、中継装置ＨＩＤは、これらのアクションが属するサービス（サービスＩＤ＝ＲＣＳ）については、メディアレンダラＭＲのレンダリングコントロールＳＥ４のＵＲＬ情報（ＵＲＬ４）をデバイス記述ファイルに登録する（Ｓ１５０５）。
【００６７】
ステップＳ１０で取得したメディアレンダラＭＲのデバイス記述ファイルに登録された全てのサービスのサービス記述ファイルを用いてステップＳ１５０１からＳ１５０６の処理を実行したとき（Ｓ１５０７でＹＥＳ）、中継装置は、作成されたデバイス記述ファイルをメモリ１０２に記憶する（Ｓ１５０８）。図１３に中継装置ＨＩＤのデバイス記述ファイルの一例を示す。図１３を参照して、中継装置ＨＩＤのデバイス記述ファイルは、メディアレンダラＭＲのデバイス記述ファイルに列挙されたサービスと同じ種類のサービス（サービスＩＤ＝ＲＣＳ、ＣＭ、ＡＶＴ）が列挙される。レンダリングコントロール（サービスＩＤ＝ＲＣＳ）については、中継装置ＨＩＤで処理が不要と判断されたため、メディアレンダラＭＲ内のレンダリングコントロールＳＥ４の所在情報ＵＲＬ４が登録されている。同様に、コネクションマネージャ（サービスＩＤ＝ＣＭ）についても、中継装置ＨＩＤで処理が不要と判断されたため、メディアレンダラＭＲ内のコネクションマネージャＳＥ５の所在情報ＵＲＬ５が登録されている。一方、ＡＶトランスポート（サービスＩＤ＝ＡＶＴ）については、中継装置ＨＩＤで処理が必要と判断され、中継装置ＨＩＤ内のＡＶトランスポートＳＥ１６の所在情報ＵＲＬ１６が登録されている。図１４は図１３に示すデバイス記述ファイルの構成例である。領域２０１は、ＡＶトランスポートＳＥ１６の所在情報ＵＲＬ１６を示す。また、領域２０２は、コネクションマネージャＳＥ５の所在情報ＵＲＬ５を示し、領域２０３は、レンダリングコントロールＳＥ４の所在情報ＵＲＬ４を示す。
【００６８】
以上の動作により、中継装置ＨＩＤは、コントロールポイントＣＰに送信するデバイス記述ファイルを作成する。コントロールポイントＣＰは、作成されたデバイス記述ファイルを利用することで、中継装置ＨＩＤで処理が必要なアクションの要求のみ、中継装置ＨＩＤに送信する。そして、コントロールポイントＣＰは、中継装置ＨＩＤで処理が不要のアクションの要求を、中継装置ＨＩＤに送信することなくメディアレンダラに直接送信できる。以下、コントロールポイントＣＰがステップＳ１５で作成されたデバイス記述ファイルを取得する動作を説明する。
【００６９】
［コントロールポイント起動動作］
図１５を参照して、コントロールポイントＣＰが起動したとき（Ｓ２０）、コントロールポイントＣＰはＳＳＤＰに準拠したM-SEARCHメソッドを利用し、SSDP Discoverメッセージをマルチキャストする（Ｓ２１）。このとき、SSDP Discoverメッセージは、コントロールポイントのＵＲＬと、探索対象のデバイスクラス（ここでは、中継装置ＨＩＤ）とを含む。中継装置ＨＩＤは、SSDP Discoverメッセージを受け（Ｓ２２）、ディスカバリレスポンスをコントロールポイントＣＰに送信する（Ｓ２３）。コントロールポイントＣＰは、ディスカバリレスポンスを受け、中継装置ＨＩＤ内のデバイス記述ファイルの所在情報を保存する（Ｓ２４）。
【００７０】
続いて、コントロールポイントＣＰは、中継装置ＨＩＤのデバイス記述ファイルを取得する（Ｓ２５〜Ｓ２８）。デバイス記述ファイルの取得方法（Ｓ２５〜Ｓ２８）は、図８中のステップＳ７〜Ｓ１０と同じである。なお、コントロールポイントＣＰは、同様の動作により、メディアサーバＭＳのデバイス記述情報も取得する。SSDP Discoverメッセージの探索対象のデバイスクラスをメディアサーバＭＳとすることにより、コントロールポイントＣＰはメディアサーバＭＳのデバイスディスクリプションを取得できる。
【００７１】
コントロールポイントＣＰは、中継装置ＨＩＤのデバイス記述ファイルを用いて、メディアレンダラ内の各サービスＳＥ４〜ＳＥ６にメッセージを送信する。このとき、中継装置ＨＩＤで処理が必要なサービス（ここではＡＶトランスポートＳＥ６）については、中継装置ＨＩＤを経由して、メディアレンダラＭＲにメッセージが送信される。一方、中継装置ＨＩＤで処理が不要なサービス（ここでは、レンダリングコントロールＳＥ４及びコネクションマネージャＳＥ５）については、中継装置ＨＩＤを経由することなく、メディアレンダラＭＲにメッセージが直接送信される。
【００７２】
以下、コントロールポイントＣＰが、中継装置ＨＩＤで処理が必要なサービスを利用する場合、及び、中継装置ＨＩＤで処理が不要なサービスを利用する場合の、ネットワークＡＶシステム１の動作を説明する。
【００７３】
［ＡＶトランスポート利用時の動作］
コントロールポイントＣＰを利用するユーザが、メディアレンダラＭＲに所望のコンテンツを再生させるときの、ネットワークＡＶシステム１の動作を説明する。このとき、利用される主なサービスは、ＡＶトランスポートである。
【００７４】
図１６を参照して、コントロールポイントＣＰはまず、メディアサーバＭＳ内のコンテンツディレクトリＳＥ１にBROWSEアクションを要求し、メディアサーバＭＳが蓄積するコンテンツの一覧を取得する（Ｓ３１〜Ｓ３４）。具体的には、コントロールポイントＣＰは、予め取得しているメディアサーバＭＳのデバイス記述ファイルを読み出す。そして、デバイス記述ファイルに記載されたコンテンツディレクトリＳＥ１のＵＲＬ宛に、ＳＯＡＰ(Simple Object Access Protocol)に準拠した、BROWSEアクションを呼び出すSOAPメッセージを送信する（Ｓ３１）。
【００７５】
メディアサーバＭＳは、SOAPメッセージを受ける（Ｓ３２）。そして、メディアサーバＭＳ内のコンテンツディレクトリＳＥ１は、メディアサーバＭＳが蓄積するコンテンツを列挙したコンテンツリストを含むレスポンスを送信する（Ｓ３３）。図１７に示すように、コンテンツリストは、各コンテンツのメタ情報と、各コンテンツの所在（ＵＲＬｃ１等）を含む。メタ情報はコンテンツに関する情報であり、たとえばコンテンツが曲の場合、曲名やアーティスト名、アルバム名等である。
【００７６】
コントロールポイントＣＰは、コンテンツリストを含むレスポンスを受け、コンテンツリストをディスプレイ１０５に表示する（Ｓ３４）。コントロールポイントＣＰのユーザは、コンテンツリストに列挙された複数のコンテンツの中から、所望のコンテンツを選択し、再生を指示する。
【００７７】
ユーザによりコンテンツの再生が指示されたとき、コントロールポイントＣＰは、ＡＶトランスポートを利用する。コントロールポイントＣＰはまず、選択されたコンテンツを指定し(AVT SetAVTransportURIアクション)、指定されたコンテンツの再生を指示する(AVT Playアクション)。
【００７８】
コントロールポイントＣＰはまず、中継装置ＨＩＤから取得したデバイス記述ファイルを参照する。そして、サービスＩＤ＝「ＡＶＴ」、つまり、ＡＶトランスポートの所在情報を読み出す。図１３に示すように、ＡＶトランスポートのＵＲＬは、中継装置ＨＩＤ内のＡＶトランスポートＳＥ１６のＵＲＬ１６である。そこで、コントロールポイントＣＰは、読み出された所在宛に、SetAVTransportURIアクションを呼び出すSOAPメッセージを送信する（Ｓ３５）。つまり、コントロールポイントＣＰは、SOAPメッセージを中継装置ＨＩＤに送信する。ここで送信されるSOAPメッセージは、図１８に示すように、呼び出すアクションのアクションＩＤと、指定コンテンツ情報を含む。指定コンテンツ情報は、選択されたコンテンツのＵＲＬを含む。図１８では、選択されたコンテンツＣ１のＵＲＬ（ＵＲＬｃ１）が登録されている。
【００７９】
中継装置ＨＩＤは、SetAVTransportURIアクションを呼び出すSOAPメッセージを受信したとき、SOAPメッセージ内の指定コンテンツ情報（ＵＲＬｃ１）を読み出してメモリ１０２に格納する（Ｓ３６）。そして、SOAPメッセージ内の指定コンテンツ情報を、中継装置ＨＩＤ内部の所定の所在情報（ＵＲＬｈｉｄ）に書き換える（Ｓ３７）。そして、指定コンテンツ情報が書き換えられたSOAPメッセージをメディアレンダラＭＲ内のＡＶトランスポートＳＥ４宛に送信する（３８）。ステップＳ３８で送信されるSOAPメッセージを図１９に示す。
【００８０】
メディアレンダラＭＲは、SOAPメッセージを受け（Ｓ３９）、指定コンテンツ情報（ＵＲＬｈｉｄ）をメモリ１０２に保存する（Ｓ４０）。このとき、メディアレンダラＭＲは、メモリ１０２に格納された指定コンテンツ情報（ＵＲＬｈｉｄ）を参照して、選択されたコンテンツが中継装置ＨＩＤ内にあると認識する。メディアレンダラＭＲは、指定コンテンツ情報を保存した後、レスポンスを送信する（Ｓ４１）。このとき、メディアレンダラＭＲは、ＵＰｎＰプロトコルに基づいて、SOAPメッセージを送信した中継装置ＨＩＤを送信する。
【００８１】
中継装置ＨＩＤは、メディアレンダラＭＲからレスポンスを受けたとき（Ｓ４２）、そのレスポンスをそのままコントロールポイントＣＰに転送する（Ｓ４２）。これにより、コントロールポイントＣＰは、メディアレンダラＭＲのレスポンスを受信でき（Ｓ４３）、コンテンツの指定が完了したことを確認できる。
【００８２】
続いて、コントロールポイントＣＰは、指定されたコンテンツの再生を指示する。このとき、コントロールポイントＣＰは、中継装置ＨＩＤから取得したデバイス記述ファイルを参照し、コンテンツの再生指示を実行できるＡＶトランスポートの所在情報を読み出す。ここで、中継装置ＨＩＤから取得したデバイス記述ファイル内のＡＶトランスポートのＵＲＬは、中継装置ＨＩＤ内のＡＶトランスポートＳＥ１６のＵＲＬ１６である。そこで、中継装置ＨＩＤは、中継装置ＨＩＤ内のＡＶトランスポートＳＥ１６宛に、AVT Playアクションを呼び出すSOAPメッセージを送信する（Ｓ４３）。
【００８３】
中継装置ＨＩＤ内のＡＶトランスポートＳＥ１６は、AVT Playアクションを呼び出すSOAPメッセージを受け、そのままメディアレンダラＭＲに転送する（Ｓ４４）。
【００８４】
メディアレンダラＭＲは、中継装置ＨＩＤからAVT Playアクションを呼び出すSOAPメッセージを受けたとき（Ｓ４５）。ステップＳ４０で保存されたＵＲＬｈｉｄ宛に、ＨＴＴＰプロトコルに準拠したHTTP GETリクエストを送信する。つまり、メディアレンダラＭＲは、中継装置ＨＩＤにコンテンツを要求する（Ｓ４６）。
【００８５】
中継装置ＨＩＤは、HTTP GETリクエストを受けたとき（Ｓ４７）、ステップＳ３６で格納されたＵＲＬ（ここではコンテンツＣ１の所在を示すＵＲＬｃ１）を読み出す（Ｓ４８）。そして、読み出されたＵＲＬ宛にHTTP GETリクエストを送信する（Ｓ４９）。つまり、中継装置ＨＩＤは、メディアサーバＭＳに対してコンテンツＣ１を要求する。メディアサーバＭＳは、HTTP GETリクエストを受け（Ｓ５０）、指定されたＵＲＬｃ１に格納されたコンテンツＣ１を中継装置ＨＩＤに送信する（Ｓ５１）。
【００８６】
中継装置ＨＩＤは、コンテンツＣ１を受信する（Ｓ５２）。そして、ＡＶトランスポートＳＥ１６は、受信したコンテンツＣ１が、メディアレンダラＭＲが再生可能なデータフォーマットであるか否かを判断する（Ｓ５３）。中継装置ＨＩＤは、コネクションマネージャＳＥ１４を用いて、メディアレンダラＭＲが再生可能なデータフォーマットに関する情報（以下、フォーマット情報という）を予め取得し、メモリ１０２に格納している。中継装置ＨＩＤは、フォーマット情報に基づいて、コンテンツＣ１のデータフォーマットが、メディアレンダラＭＲの対応可能なデータフォーマットか判断する。
【００８７】
判断の結果、対応可能なデータフォーマットである場合（Ｓ５３でＹＥＳ）、中継装置ＨＩＤは、コンテンツＣ１を信号処理することなく、メディアレンダラＭＲに配信する（Ｓ５５）。一方、ステップＳ５４での判断の結果、コンテンツＣ１が、メディアレンダラＭＲが対応できないデータフォーマットからなるとき（Ｓ５３でＮＯ）、中継装置ＨＩＤは、コンテンツＣ１を信号処理し、メディアレンダラＭＲが対応可能なフォーマットに変換する（Ｓ５４：トランスコーディング）。そして、信号処理されたコンテンツＣ１をメディアレンダラＭＲに送信する（Ｓ５５）。以上の動作により、メディアレンダラＭＲは、再生可能なデータフォーマットのコンテンツＣ１を受信し（Ｓ５６）、再生できる（Ｓ５７）。
【００８８】
以上の動作ではコントロールポイントＣＰ及びメディアレンダラＭＲは、ＵＰｎＰプロトコルに準拠した通常の動作を実行する。つまり、中継装置ＨＩＤがネットワーク内に挿入されたからといって、特別な動作処理を実行する必要はない。ネットワークＡＶシステム１では、中継装置ＨＩＤのデバイス記述ファイルを工夫することで、コントロールポイントＣＰやメディアレンダラＭＲの動作に変更を加えることなく、上記動作を実現している。
【００８９】
［レンダリングコントロール利用時の動作］
次に、コントロールポイントＣＰを利用するユーザが、コンテンツを再生中のメディアレンダラＭＲの音量を調整するときの、ネットワークＡＶシステム１の動作を図２０を用いて説明する。このとき、利用されるサービスの種類は、レンダリングコントロールである。
【００９０】
ユーザから音量の調整指示を受けたコントロールポイントＣＰは、中継装置ＨＩＤのデバイス記述ファイルを参照する。そして、サービスＩＤ＝「ＲＣＳ」、つまり、レンダリングコントロールの所在情報を読み出す。図１３に示すように、レンダリングコントロール（ＲＣＳ）のＵＲＬは、メディアレンダラＭＲ内のレンダリングコントロールＳＥ４のＵＲＬ４を示す。そこで、コントロールポイントＣＰは、読み出された所在（ＵＲＬ４）宛に、RCS::Volumeアクションを呼び出すSOAPメッセージを送信する（Ｓ６０）。つまり、コントロールポイントＣＰは、中継装置ＨＩＤを経由することなく、メディアレンダラＭＲにSOAPメッセージを送信する。
【００９１】
メディアレンダラＭＲは、RCS::Volumeアクションを呼び出すSOAPメッセージを受信し（Ｓ６１）、音量を調整する（Ｓ６２）。そして、調整後のボリューム値を含むレスポンスを、SOAPメッセージの送信元であるコントロールポイントＣＰに送信する（Ｓ６３）。このとき、レスポンスは中継装置ＨＩＤを経由しない。コントロールポイントＣＰは、メディアレンダラＭＲからレスポンスを受け、音量の調整が完了したことを認識できる（Ｓ６４）。
【００９２】
以上、中継装置ＨＩＤは、デバイス記述ファイルを作成するとき、中継装置ＨＩＤが処理する必要のあるサービスのＵＲＬのみ、自身を示すＵＲＬとし、中継装置ＨＩＤが処理する必要のないサービスのＵＲＬは、中継対象に選択したサービスデバイスのデバイス記述ファイルどおりのＵＲＬとする。そのため、コントロールポイントＣＰは、中継装置ＨＩＤでの処理が不要なアクションをメディアレンダラＭＲに送信でき、中継装置ＨＩＤを経由しない。その結果、中継装置ＨＩＤを利用することによる処理の遅延を抑制できる。
【００９３】
さらに、本実施の形態によるネットワークＡＶシステムでは、コントロールポイントＣＰ及びサービスデバイスが、中継装置ＨＩＤを利用するために特別の処理をする必要がない。つまり、コントロールポイントＣＰ及びサービスデバイスの動作は、ネットワーク上に中継装置ＨＩＤが存在する場合も存在しない場合も同じであり、ＵＰｎＰプロトコルに準拠したアクション要求を送信する。そのため、既存のＵＰｎＰデバイスに、本実施の形態による中継装置ＨＩＤを利用することができる。
【００９４】
上述の実施の形態におけるデバイス記述ファイル作成処理では、アクションごとに中継装置ＨＩＤでの処理が必要か否かを判断したが、サービスごとに判断してもよい。この場合、中継装置ＨＩＤは、中継装置ＨＩＤでの処理が必要なサービスＩＤを列挙したテーブルを有する。そして、テーブルを参照して、サービスごとに判断する。この場合、中継装置ＨＩＤは、サービス記述ファイルを取得する必要がなくなる。
【００９５】
上述の実施の形態では、コントロールポイントＣＰとメディアサーバＭＳとメディアレンダラＭＲとをそれぞれ別個の物理デバイスとしたが、これらのＵＰｎＰデバイスは論理デバイスであってもよい。そして、コントロールポイントＣＰとメディアサーバＭＳが１つの物理デバイスに収納されていてもよいし、コントロールポイントＣＰとメディアレンダラが１つの物理デバイスに実装されていてもよい。
【００９６】
以上、本発明の実施の形態を説明したが、上述した実施の形態は本発明を実施するための例示に過ぎない。よって、本発明は上述した実施の形態に限定されることなく、その趣旨を逸脱しない範囲内で上述した実施の形態を適宜変形して実施することが可能である。
【図面の簡単な説明】
【００９７】
【図１】本発明の実施の形態によるネットワークシステム構成を示す機能ブロック図である。
【図２】図１中の各ＵＰｎＰデバイスのハードウェア構成を示す機能ブロック図である。
【図３】図１中のメディアサーバの構成を示す機能ブロック図である。
【図４】図３中の各サービスの構成を示す機能ブロック図である。
【図５】図１中のメディアサーバに記憶されるサービス記述ファイルのデータ構成を示す図である。
【図６】図１中のメディアサーバに記憶されるデバイス記述ファイルのデータ構成を示す図である。
【図７】図１中のメディアレンダラの構成を示す機能ブロック図である。
【図８】図１中のメディアレンダラに記憶されるデバイス記述ファイルのデータ構成を示す図である。
【図９】図１中の中継装置の構成を示す機能ブロック図である。
【図１０】図１中の中継装置が起動したときの動作の詳細を示すフロー図である。
【図１１】図１０中のデバイス記述ファイル作成処理の詳細を示すフロー図である。
【図１２】図１中の中継装置に記憶される判断テーブルの構成を示す図である。
【図１３】図１１に示すデバイス記述ファイル作成処理により作成されるデバイス記述ファイルの一例を示す図である。
【図１４】図１３に示すデバイス記述ファイルの構成例を示す図である。
【図１５】図１中のコントロールポイントが起動したときの動作の詳細を示すフロー図である。
【図１６】図１に示すネットワークシステムでコンテンツの再生を行う場合の動作の詳細を示すフロー図である。
【図１７】図１６中でメディアサーバからコントロールポイントに送信されるコンテンツリストの一例を示す図である。
【図１８】図１６中でコントロールポイントから送信されるSOAPメッセージの構成を示す図である。
【図１９】図１６中で中継装置から送信されるSOAPメッセージの構成を示す図である。
【図２０】図１に示すネットワークシステムで音量の調整を行う場合の動作の詳細を示すフロー図である。
【符号の説明】
【００９８】
１  ネットワークシステム
１０１  ＣＰＵ
１０２  メモリ
１０３  ハードディスクドライブ
ＣＰ  コントロールポイント
ＨＩＤ  中継装置
ＭＲ  メディアレンダラ
ＭＳ  メディアサーバ
【図１】
0005119968.tif 000002
【図２】
0005119968.tif 000003
【図３】
0005119968.tif 000004
【図４】
0005119968.tif 000005
【図５】
0005119968.tif 000006
【図６】
0005119968.tif 000007
【図７】
0005119968.tif 000008
【図８】
0005119968.tif 000009
【図９】
0005119968.tif 000010
【図１０】
0005119968.tif 000011
【図１１】
0005119968.tif 000012
【図１２】
0005119968.tif 000013
【図１３】
0005119968.tif 000014
【図１４】
0005119968.tif 000015
【図１５】
0005119968.tif 000016
【図１６】
0005119968.tif 000017
【図１７】
0005119968.tif 000018
【図１８】
0005119968.tif 000019
【図１９】
0005119968.tif 000020
【図２０】
0005119968.tif 000021