JP4419434B2 - サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム - Google Patents

サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム Download PDF

Info

Publication number
JP4419434B2
JP4419434B2 JP2003144990A JP2003144990A JP4419434B2 JP 4419434 B2 JP4419434 B2 JP 4419434B2 JP 2003144990 A JP2003144990 A JP 2003144990A JP 2003144990 A JP2003144990 A JP 2003144990A JP 4419434 B2 JP4419434 B2 JP 4419434B2
Authority
JP
Japan
Prior art keywords
content
connection
client
server
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003144990A
Other languages
English (en)
Other versions
JP2004348454A5 (ja
JP2004348454A (ja
Inventor
卓也 五十嵐
典史 吉川
淳一 宮嶋
全章 濱田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2003144990A priority Critical patent/JP4419434B2/ja
Publication of JP2004348454A publication Critical patent/JP2004348454A/ja
Publication of JP2004348454A5 publication Critical patent/JP2004348454A5/ja
Application granted granted Critical
Publication of JP4419434B2 publication Critical patent/JP4419434B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラムに関する。詳細には、複数のクライアントがアクセス可能なコンテンツ管理サーバを持つシステムにおいて、サーバの管理するサーバクライアント間のコネクション情報をクライアントに公開し、クライアントおいてコネクション情報に基づく処理を可能とすることで、ユーザの利便性を高めたサーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラムに関する。
【0002】
【従来の技術】
昨今のデータ通信ネットワークの普及に伴い、家庭内においても家電機器やコンピュータ、その他の周辺機器をネットワーク接続し、各機器間での通信を可能とした、いわゆるホームネットワークが浸透しつつある。ホームネットワークは、ネットワーク接続機器間で通信を行なうことにより各機器のデータ処理機能を共有することを可能とするものである。ネットワーク接続機器間のコンテンツ送受信等、ユーザに利便性・快適性を提供するものであり、今後、ますます普及することが予測される。
【0003】
このようなホームネットワークの構成に適するプロトコルとしてユニバーサルプラグアンドプレイ(UPnP:Universal Plug and Play)が知られている。ユニバーサルプラグアンドプレイ(UPnP)は、複雑な操作を伴うことなく容易にネットワークを構築することが可能であり、困難な操作や設定を伴うことなくネットワーク接続された機器において各接続機器の提供サービスを受領可能とするものである。また、UPnPはデバイス上のOS(オペレーティングシステム)にも依存せず、容易に機器の追加ができるという利点を持つ。
【0004】
UPnPは、接続機器間で、XML(eXtensible Markup Language)に準拠した定義ファイルを交換し、機器間において相互認識を行なう。UPnPの処理の概要は、以下の通りである。
(1)IPアドレス等の自己のデバイスIDを取得するアドレッシング処理。
(2)ネットワーク上の各デバイスの検索を行ない、各デバイスから応答を受信し、応答に含まれるデバイス種別、機能等の情報を取得するディスカバリ処理。
(3)ディスカバリ処理で取得した情報に基づいて、各デバイスにサービスを要求するサービス要求処理。
【0005】
上記処理手順を行なうことで、ネットワーク接続された機器を適用したサービスの提供および受領が可能となる。ネットワークに新たに接続される機器は、上記のアドレッシング処理によりデバイスIDを取得し、ディスカバリ処理によりネットワーク接続された他のデバイスの情報を取得して、取得情報に基づいて他の機器にサービスの要求が可能となる。
【0006】
例えばサーバに格納された音楽データ、画像データ等のコンテンツをクライアント側デバイスにおいて再生しようとする場合には、クライアントは、サーバの保有するコンテンツについての情報を取得する。サーバは、記憶部に格納したコンテンツや、チューナを介して外部から受信する様々なコンテンツに関するインフォメーションを含む属性情報を記憶部に格納しており、この情報をクライアントに提供する。属性情報には、例えばコンテンツとしての例えば曲や映画のタイトル、アーティスト名、記録日時、さらにデータの圧縮態様等に関する情報など様々である。これらの属性情報はメタデータあるいはメタ情報と呼ばれる。
【0007】
クライアントは、サーバに対してサーバに格納されたコンテンツ情報、例えば曲や映画のタイトルやアーティスト名、さらにデータの圧縮態様情報(ATRAC:adaptive transform acoustic coding, MPEG:moving picture experts group等)、さらに必要に応じて著作権情報などの様々なコンテンツの属性情報の取得要求を行うことができる。
【0008】
サーバは、クライアントからの要求に応じてサーバの保有するコンテンツに関するメタデータ(属性情報)をクライアントに送信する。クライアントは、サーバから取得したメタデータに基づいてクライアントデバイスのディスプレイにコンテンツ情報を表示する。例えばアーティスト名、タイトル等からなる曲目リストなどがディスプレイに表示される。ユーザは、表示情報に基づいて、再生対象コンテンツを確認あるいは選択して、コンテンツの送信要求をサーバに送信する。サーバはクライアントからのコンテンツリクエストを受信し、受信リクエストに応じてサーバからクライアントに対するコンテンツの送信が行われ、クライアント側において受信コンテンツの再生が行われる。
【0009】
クライアントがサーバから特定のコンテンツを取得する場合の処理は、クライアントからサーバに対してコンテンツ識別子を送信し、サーバがクライアントからの受信したコンテンツ識別子に基づいて指定コンテンツを取得して送信するという処理になる。
【0010】
例えば、サーバがコンテンツに対応付けたコンテンツURL(Uniform Resource Locators)をコンテンツ対応のメタデータとして保持し、クライアントがコンテンツURLを指定したHTTP(Hyper Text Transfer Protocol)のGETメソッドを生成してサーバに送信することで、サーバが受信URLに基づいて特定されるコンテンツをクライアントに送信することができる。
【0011】
このようにサーバに格納されたコンテンツは、ネットワーク接続された他の機器(クライアント)から検索を行い、特定のコンテンツを指定して再生することが可能となる。
【0012】
コンテンツを提供するサーバにチューナ機能が併設されている場合、チューナを介して受信したビデオまたはオーディオデータをクライアントに送信するいわゆるライブストリーミングデータの配信が可能である。例えば、地上波、衛星放送等、の各種のブロードキャストデータをホームサーバ内のチューナにおいて受信し、受信データをサーバからクライアント、例えばチューナを持たないPC等に送信し、ユーザがPCに備えられたディスプレイ、スピーカを介して様々なTV、ラジオ等の番組を視聴することが可能となる。
【0013】
例えば特許文献1は、クライアントからサーバを操作し、サーバ内のチューナで受信したテレビジョンデータをローカルエリアネットワークを介してクライアント側で受信、再生するシステムについて記載している。
【0014】
ホームネットワーク等の構成においては、様々なコンテンツを格納した1つのコンテンツ管理サーバに対して、複数のクライアントがサーバとのコネクションを設定し、それぞれ異なるコンテンツ、あるいは同一のコンテンツを各クライアントにおいて受信し再生する場合がある。
【0015】
従来のサーバクライアントシステムでは、クライアントは、他のクライアントがサーバに接続してコンテンツ配信を受けている状況にあるか否かについての情報、すなわち他のクライアントのコネクション情報を取得することはできなかった。従って、例えば、他のクライアントがサーバとのコネクションを設定して視聴しているビデオコンテンツ、あるいはサーバに併設されたチューナによる受信コンテンツを、他のクライアントが視聴したい場合であっても、他のクライアントのコネクション情報を利用して、サーバに対するコンテンツ要求を行うといった処理は実行することができず、クライアントは独自にコンテンツの検索を行い、検索に基づいてコンテンツ識別子としてのコンテンツURLを取得し、取得したコンテンツURLに基づくコンテンツ要求を実行するという処理が必要となっていた。
【0016】
なお、サーバにおけるコネクション管理を行うシステムとしては、例えば特許文献2に記載されている。特許文献2は、クライアントとのコネクションに対応したセッション番号を付与し、セッション番号によるコネクション管理を実行する構成を開示している。
【0017】
ただし、特許文献2に記載の構成は、サーバ内においてコネクション管理を実行するのみであり、コネクション管理情報をクライアントに提供し、クライアントがコネクション情報を利用した処理を行うことを開示するものではない。
【0018】
【特許文献1】
特許公開2002−84484号公報
【特許文献2】
特許公開2002−328851号公報
【0019】
【発明が解決しようとする課題】
本発明は、上述の問題点に鑑みてなされたものであり、複数のクライアントがアクセスするコンテンツ管理サーバにおいて、クライアントとの接続情報としてのコネクション情報を管理するとともに、このコネクション情報をクライアントに提供し、クライアントがコネクション情報に基づく処理を実行することを可能としたサーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラムを提供することを目的とする。
【0020】
【課題を解決するための手段】
本発明の第1の側面は、
サーバに対する配信コンテンツ制御要求を行うクライアントとしての情報処理装置であり、
前記サーバと他クライアントとの間のコネクションに関する情報であり、少なくとも前記コネクションの識別子であるコネクションIDと、前記コネクションを介した他クライアントへの提供コンテンツの識別子であるコンテンツIDを含むコネクション情報を前記サーバから取得し、取得したコネクションID、またはコネクション情報を利用した配信コンテンツの制御要求を生成して、前記サーバに送信する処理を実行する構成を有することを特徴とする情報処理装置にある。
【0021】
さらに、本発明の情報処理装置の一実施態様において、前記サーバから取得するコネクション情報は、コンテンツIDであり、前記サーバに送信するコンテンツ制御要求は、コンテンツIDを設定したコンテンツ取得要求であることを特徴とする。
【0022】
さらに、本発明の情報処理装置の一実施態様において、前記サーバから取得するコネクション情報は、前記コンテンツ配信コネクションを介したコンテンツ配信制御を実行する配信制御部の識別子であり、前記サーバに送信するコンテンツ制御要求は、前記配信制御部の識別子を設定した配信制御部に対する制御要求であることを特徴とする。
【0023】
さらに、本発明の情報処理装置の一実施態様において、前記サーバから取得する情報は、コンテンツ配信コネクション識別子であるコネクションIDであり、前記サーバに送信するコンテンツ制御要求は、前記コネクションIDを設定したコンテンツ配信終了要求であることを特徴とする。
【0024】
さらに、本発明の第2の側面は、
サーバに対するコンテンツ制御要求を行うクライアントにおける情報処理方法であり、
通信部において、前記サーバと他クライアントとの間のコネクションに関する情報であり、少なくとも前記コネクションの識別子であるコネクションIDと、前記コネクションを介した他クライアントへの提供コンテンツの識別子であるコンテンツIDを含むコネクション情報を前記サーバから取得する情報取得ステップと、
データ処理部において、前記コネクションID、またはコネクション情報を利用した配信コンテンツの制御要求を生成して、前記サーバに送信する処理を実行する処理要求ステップと、
を有することを特徴とする情報処理方法にある。
【0025】
さらに、本発明の第3の側面は、
情報処理装置において、サーバに対するコンテンツ制御要求処理を実行させるコンピュータ・プログラムであり、
通信部において、前記サーバと他クライアントとの間のコネクションに関する情報であり、少なくとも前記コネクションの識別子であるコネクションIDと、前記コネクションを介した他クライアントへの提供コンテンツの識別子であるコンテンツIDを含むコネクション情報を前記サーバから取得させる情報取得ステップと、
データ処理部において、前記コネクションID、またはコネクション情報を利用した配信コンテンツの制御要求を生成して、前記サーバに送信させる処理を実行する処理要求ステップと、
を実行させることを特徴とするコンピュータ・プログラムにある。
【0045】
【作用】
本発明の構成によれば、クライアントに対してコンテンツを提供するサーバにおいて、サーバクライアント間のコネクション情報として、コネクションID、コンテンツURL等の配信コンテンツ識別子、配信制御部(AVトランスポート)識別子、およびプロトコル情報を対応付けて管理し、クライアントからの要求に基づいて、これらの情報をクライアントに提供する構成としたので、クライアントは、これらのコネクション情報に基づいた様々なコンテンツ制御要求をサーバに対して行うことが可能となる。
【0046】
本発明の構成によれば、クライアントは、ブラウズ、サーチ処理によるコンテンツ情報の取得や、ライブコンテンツの配信の事前処理として必要なAVTインスタンスの設定処理等の接続準備要求(Prepare For Connection)実行することなく、コネクションマネージャサービスから受信するコネクション情報に含まれるコンテンツ識別子(コンテンツURL)を指定情報として設定したHTTP−GETメソッドを生成し、サーバに送信することで、現在サーバが他のクライアントに配信しているコンテンツと同様のコンテンツを取得することが可能となる。
【0047】
また、本発明の構成によれば、クライアントは、コネクションマネージャサービスから受信するコネクション情報に含まれる配信制御部(AVトランスポート)識別子に基づいて、配信制御部(AVトランスポート)識別子を設定したコンテンツの制御要求、例えばチャンネルの切り替え要求を生成し、配信制御部(AVトランスポート)に要求を送信することで、チャンネル切り替えなどの制御を行うことができる。
【0048】
さらに、本発明の構成によれば、クライアントは、コネクションマネージャサービスから受信するコネクション情報に含まれるプロトコル情報に含まれるファンクションIDに基づいて、現在サーバが他のクライアントに配信しているコンテンツに対する制御を実行している機器を知ることが可能であり、例えば複数のチューナを持つサーバにおいて、一方が他のコンテンツ配信に適用されている場合、他のチューナを適用したコンテンツ配信の要求を行うことが可能となり、他のクライアントに対して配慮した制御要求が可能となる。
【0049】
また、本発明の構成によれば、クライアントは、コネクションマネージャサービスから受信するコネクション情報に含まれるコネクションIDに基づいて、コネクションIDを指定したコネクション終了をサーバに要求することも可能であり、1つのクライアント装置で受信を開始したコンテンツ送信を他のクライアントにおいて、終了させることが可能となる。
【0050】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、CDやFD、MOなどの記憶媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【0051】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づく、より詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【0052】
【発明の実施の形態】
以下、図面を参照しながら、本発明のサーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラムの詳細について説明する。
【0053】
[システム概要]
まず、図1を参照して、本発明の適用可能なネットワーク構成例について説明する。図1は、様々なクライアント装置からの処理要求に応じて処理を実行するコンテンツ配信装置としてのサーバ101と、サーバ101に対して処理要求を行なうコンテンツ受信装置としてのクライアントがネットワーク100を介して接続された構成、例えばホームネットワーク構成を示している。クライアント装置としては、パーソナルコンピュータ(PC)121、モニタ122、携帯電話123、再生機124、PDA(Personal Digital Assistant)125を例示している。ただし、クライアント装置としては、この他にも様々な電子機器、家電機器が接続可能である。
【0054】
サーバ101がクライアントからの要求に応じて実行する処理は、例えばサーバ101の保有するハードディスク等の記憶手段に格納されたコンテンツの提供、あるいはサーバ101の有するチューナを介して受信するライブコンテンツをクライアントに対して転送するコンテンツ配信サービス等である。なお、図1においては、サーバ101と、クライアント装置とを区別して示しているが、クライアントからの要求に対するサービスを提供する機器をサーバとして示しているものであり、いずれのクライアント装置も、自己のデータ処理サービスを他のクライアントに提供する場合には、サーバとしての機能を提供可能となる。従って、図1に示すネットワーク接続されたクライアント装置もサーバとなり得る。
【0055】
ネットワーク100は、有線、無線等いずれかのネットワークであり、各接続機器は、例えばイーサネット(登録商標)フレーム等の通信パケットをネットワーク100を介して送受信する。すなわち、クライアントは、イーサネットフレームのデータ部に処理要求情報を格納したフレームをサーバ101に送信することにより、サーバ101に対するデータ処理要求を実行する。サーバ101は、処理要求フレームの受信に応じて、データ処理を実行し、必要に応じてデータ処理結果としての結果データを通信パケットのデータ部に格納し、各クライアントに送信する。
【0056】
ネットワーク接続機器は、例えばユニバーサルプラグアンドプレイ(UPnP:Universal Plug and Play)対応機器によって構成される。従って、ネットワークに対する接続機器の追加、削除が容易な構成である。ネットワークに新たに接続する機器は、
(1)IPアドレス等の自己のデバイスIDを取得するアドレッシング処理。
(2)ネットワーク上の各デバイスの検索を行ない、各デバイスから応答を受信し、応答に含まれるデバイス種別、機能等の情報を取得するディスカバリ処理。
(3)ディスカバリ処理で取得した情報に基づいて、各デバイスにサービスを要求するサービス要求処理。
上記処理手順を行なうことで、ネットワーク接続された機器を適用したサービスを受領することが可能となる。
【0057】
図1に示すサーバおよびクライアント装置を構成する情報処理装置の一例としてPCのハードウェア構成例について図2を参照して説明する。
【0058】
CPU(Central Processing Unit)201は、ROM(Read Only Memory)202、またはHDD(Hard Disk Drive)204等に記憶されているプログラムに従って、各種の処理を実行し、データ処理手段、あるいは通信制御処理手段として機能する。RAM(Random Access Memory)203には、CPU201が実行するプログラムやデータが適宜記憶される。CPU201、ROM202、およびRAM203、HDD204は、バス205を介して相互に接続されている。
【0059】
バス205には、入出力インタフェース206が接続されており、この入出力インタフェース206には、例えば、ユーザにより操作されるキーボード、スイッチ、ボタン、ポインティングデバイス、あるいはマウス等により構成される入力部207、ユーザに各種の情報を提示するLCD、CRT、スピーカ等により構成される出力部208が接続される。さらに、データ送受信手段として機能する通信部209、さらに、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブル記録媒体211を装着可能で、これらのリムーバブル記録媒体211からのデータ読み出しあるいは書き込み処理を実行するドライブ210が接続される。
【0060】
さらに、地上波放送データ、衛星放送データ、ケーブルTVデータ、インターネット配信データ等、様々な外部からの配信データの受信を行うチューナ220を備えている。
【0061】
図2に示す構成は、図1に示すネットワーク接続機器の一例としてのサーバ、パーソナルコンピュータ(PC)の例であるが、ネットワーク接続機器はPCに限らず、図1に示すように携帯電話、PDA等の携帯通信端末、その他、再生装置、ディスプレイ等の様々な電子機器、情報処理装置によって構成することが可能である。従って、それぞれの機器固有のハードウェア構成を持つことが可能であり、そのハードウェアに従った処理を実行する。
【0062】
[オブジェクト管理およびメタデータ]
次にクライアントに提供するコンテンツを管理するサーバのコンテンツを含むオブジェクト管理構成、およびメタデータについて説明する。サーバは、自己の記憶部に格納した静止画、動画等の画像データ、音楽等の音声データ等のコンテンツ、さらには、ライブストリーミングデータを実行するためのチューナに関する情報、例えばチャンネル情報を各コンテンツに対応する属性情報(メタデータ)として保有している。
【0063】
なお、サーバの保有する静止画、動画等の画像データ、音楽等の音声データ、チューナを介して受信するライブストリーミングデータ等のコンテンツを総称してAVコンテンツと呼ぶ。サーバにおいて、AVコンテンツは、階層構成を有するコンテンツ管理ディレクトリによってサーバ内のCDS(コンテンツディレクトリサービス)において管理される。
【0064】
サーバのCDS(コンテンツディレクトリサービス)において管理されるコンテンツ管理ディレクトリの構成例を図3に示す。階層構成は図3に示すように分岐ツリー状の図として示すことができる。図3に示す各円の各々が個々のオブジェクトである。この階層構成は、サーバが記憶部に格納し管理するコンテンツ、およびライブストリーミングコンテンツに対応する論理的な管理構成を示すものである。
【0065】
コンテンツ管理ディレクトリの個々の要素、すなわち、個々のAVコンテンツあるいは複数のAVコンテンツを格納したフォルダ、メタデータ格納フォルダの各々はオブジェクト(Object)と呼ばれる。なお、オブジェクトとは、サーバによって処理されるデータ単位の総称であり、個々のAVコンテンツあるいは複数のAVコンテンツを格納したフォルダ、メタデータ格納フォルダ以外にも様々なオブジェクトが存在する。
【0066】
AVコンテンツの最小単位、すなわち1つの楽曲データ、1つの動画データ、1つの静止画データ等をアイテム(item)とよぶ。ライブストリーミングデータの場合は、1つのチャンネルが1アイテムとして定義される。
【0067】
また、アイテムの集合として規定されるアイテムの上位オブジェクトをコンテナ(Container)と呼ぶ、集合の単位は、例えば各オブジェクトの物理的な記憶位置に基づく集合、各オブジェクトの論理的関係に基づく集合、カテゴリに基づく集合等、様々に設定され得る。
【0068】
例えば、チャンネルをアイテムとしたコンテナの一例としては地上波のみのチャンネルのアイテムを集合としたコンテナや、衛星放送のチャンネルを集合としたコンテナが設定される。これらの例については後段でさらに説明する。
【0069】
オブジェクトは、その種類、例えば音楽(Audio)、ビデオ(Video)、写真(Photo)等、その種類によりクラスに分類されクラスラベリングがなされる。クライアントは、例えば特定のクラスを指定して、特定の分類に属するオブジェクトのみを対象とした「サーチ」を要求し実行することができる。また特定のフォルダ等のオブジェクトを指定して、そのフォルダに関する情報のみを要求する「ブラウズ」を要求し特定フォルダに関する情報の取得処理をすることが可能である。なお、サーバにおいては、クラスも階層構成で管理されており、1つのクラスの下にサブクラスの設定が可能である。
【0070】
メタデータは、サーバの持つコンテンツに対応した属性情報、クラスの定義情報、コンテンツ管理ディレクトリを構成する階層構成に関する情報等を含むさまざまな管理情報である。個々のオブジェクトに対応付けて定義されたコンテンツの属性情報としてのメタデータには、例えばコンテンツURL等のコンテンツ識別子(ID)、データサイズ、リソース情報、タイトル、アーティスト名、著作権情報、チャンネル情報等、様々な情報が含まれる。メタデータに含まれる個々の情報をプロパティまたはプロパティ情報と呼ぶ。なお、音楽(Audio)、ビデオ(Video)、写真(Photo)、ライブストリーミングデータ等、前述したクラス毎にどのようなプロパティからなるメタデータを持つかが予め規定されている。
【0071】
図3において、最上位はルートコンテナ301と呼ばれる。ルートコンテナの下位に例えば音楽(ミュージック)コンテナ302、動画コンテナ303、静止画コンテナ304、さらにチューナコンテナ305等が設定される。音楽(ミュージック)コンテナ302の下位には、ジャンル305、ジャンルの下位には、アーティスト306などのフォルダまたはアイテム等のオブジェクトの設定がなされる。
【0072】
動画コンテナ303の下位には、ジャンル308、さらにその下位にコンテンツに対応するアイテムとしてのビデオカプセル309が設定される。例えばビデオカプセル309は、サーバ内のハードディスク等の記憶部に格納されたビデオコンテンツに対応し、そのビデオコンテンツに対応した属性情報(メタデータ)を持つ。メタデータには、クライアントがコンテンツを取得するためのコンテンツ識別子、すなわちコンテンツの所在を示すアドレス情報としてのコンテンツのURL(Uniform Resource Locators)が含まれる。クライアントは、コンテンツ情報取得手続きによりビデオカプセル309のURLすなわち、ビデオカプセルURLを取得し、ビデオカプセルURLを指定したコンテンツ要求をサーバに送信することでビデオカプセルに対応するビデオコンテンツをサーバから受信して再生することができる。
【0073】
一方、チューナコンテナ305にもコンテナに対応するメタデータに設定されるコンテンツURLとしてチャンネルリストURLが設定される。すなわち、チューナ受信コンテンツに対応する属性情報としてチャンネルリストURLが設定される。チャンネルリストURLは、チューナコンテナ306の子として存在するチャンネルアイテムに対応する全てのコンテンツの取得、制御権をクライアントに提供するために設定されたURLである。
【0074】
従来のシステムであれば、アイテムであるチャンネル毎にURLが設定され、クライアントは、チャンネル切り替えに応じてURLの切替えを行うことが必要となっていたが、本発明においては、チャンネルの集合体としてのチャンネルリストにURLを設定し、クライアントが、チャンネルリストURLを指定したコンテンツ取得要求をサーバに送信することで、クライアントは、チャンネルリストにリストアップされたチャンネル、すなわちコンテンツ管理ディレクトリにおいて、チューナコンテナの下位に設定されたチャンネルアイテムの全てのコンテンツの取得、すなわち制御権をまとめて得ることができる。結果として、チャンネルリストにリストされたチャンネル間の切り替えにおいては、新たなURLに基づくコンテンツ要求を行う必要がない。
【0075】
コンテンツ検索を実行しようとするクライアントは、コンテンツ管理ディレクトリの階層やオブジェクト集合に対応するクラスを指定した「サーチ」、あるいは、特定のオブジェクトの指定としての「ブラウズ」をサーバに要求することで、コンテンツの情報を取得することが可能である。クライアントは、サーバから受信するコンテンツ情報を記述したXMLデータに基づいてコンテンツ情報をディスプレイに表示する。
【0076】
コンテンツ情報リストの表示処理例を図4に示す。図4に示す例では、コンテンツNo、タイトル、アーティスト名、チャンネル、コンテンツURLをリスト化したデータ構成を持つコンテンツ情報リスト357をディスプレイ350に表示した例を示している。
【0077】
例えばビデオカプセルに対応するメタデータに基づいて表示されるコンテンツ情報は、図4中のコンテンツNo.[0001]、[0002]のコンテンツであり、チューナコンテナに対応するメタデータに基づいて表示されるコンテンツ情報は、[0003]、[0004]のようにチャンネルリストであることと、チャンネルリストに含まれるチャンネル情報、およびチャンネルリストURL等となる。
【0078】
これらのコンテンツ情報は、サーバの管理するコンテンツ対応のメタデータの構成要素としてのプロパティ情報に基づいて生成される。サーバはクライアントから受信した「サーチ」または「ブラウズ」要求に基づいて条件に一致するコンテンツのメタデータ中のプロパティ情報を取得し、取得したプロパティ情報に基づいてXMLデータを生成し、クライアントに送信する。
【0079】
クライアントは、サーバによって抽出されたコンテンツに対応するプロパティ情報に基づくXMLデータを受信し、受信XMLデータに基づいて図4に示すような表示データを生成し、クライアントのディスプレイに表示する。
【0080】
クライアント側のユーザはこれらのリストから再生対象コンテンツを選択し、選択コンテンツ指定情報、例えばコンテンツURLをサーバに送信することで、サーバからコンテンツ、すなわち音楽や映画、あるいは写真等、様々なコンテンツが送信されクライアント側で再生、出力が実行される。チューナコンテナに対応するチャンネルリストURLに基づくコンテンツ要求を行うと、チャンネルリストにリストされたチャンネルに対応するコンテンツをまとめて取得、すなわちURL切り替えを行うことなく、チャンネル切り替えを自在に実行することができる。
【0081】
前述したように、クライアントに送信されるコンテンツ情報には、コンテンツの所在を示すアドレス情報としてのコンテンツのURL(Uniform Resource Locators)が含まれる。クライアントディスプレイに表示されたコンテンツURLあるいはリンクデータをユーザが指定(クリック)したことを条件として、クライアントデバイスにおいて、コンテンツ取得要求であるHTTP(Hyper Text Transfer Protocol)GETメソッドを生成してサーバに送信し、サーバがコンテンツURLに対応するコンテンツをクライアントに送信する。
【0082】
コンテンツ管理ディレクトリにおけるチューナコンテナのメタデータとして設定されるチャンネルリストURLは、例えば地上波1〜12チャンネルのみを受信可能なチューナの場合は、1〜12チャンネルの12個のチャンネルをリスト化した1つのチャンネルリストを取得するためのURLとして設定される。地上波、BS、CS等の衛星放送等のチャンネル(1〜nチャンネル)の放送データを受信可能なチューナの場合は、1〜nチャンネルのnチャンネルをリスト化した1つのチャンネルリストを取得するためのURLとして設定される。
【0083】
なお、地上波のチャンネルリスト、BS用のチャンネルリスト、CS用のチャンネルリスト等、カテゴリ毎に区分したチャンネルリストを設定し、それぞれに異なるチャンネルリストURLを設定してもよい、
【0084】
これらのチャンネルリストURLは、クライアントからコンテンツディレクトリサービス(CDS)に対するサーチやブラウズを適用したコンテンツ情報取得処理によってクライアントが取得可能である。
【0085】
クライアントは取得したチャンネルリストURLに基づくコンテンツ取得を行うことで、チャンネルリストに設定された、例えば1〜12チャンネルの間の切り替え制御をその1つのURLに基づいて実行可能となる。すなわちクライアントはチャンネルリストURLによるコンテンツ取得により、チャンネルリストにリストアップされたすべてのストリーミングデータの制御権をまとめて得ることができる
【0086】
[サーバの処理構成]
サーバが記憶部に格納した動画、静止画、音楽などの様々な格納コンテンツをクライアントに提供するとともに、サーバ内にチューナ機能を持ち、チューナにより受信したデータについてもクライアントに配信可能とした構成を持つサーバの構成例を図5に示す。
【0087】
図5に示す構成について説明する。サーバ400は、クライアントに対してクライアント460の要求するコンテンツを送信し、クライアント460側のユーザは、例えばPC等によって構成されるクライアント460に備えたディスプレイ、スピーカ等を介してコンテンツを視聴する。なお、図5においては、クライアント460を1つのみ示してあるが、サーバ400に対して接続するクライアントは複数あり、複数のクライアントがサーバ400から様々なコンテンツの提供を受けることが可能である。
【0088】
サーバ400は、コンテンツ記憶部444に格納したコンテンツのクライアントに対する提供処理を制御するとともに、コンテンツのメタデータ管理を含むコンテンツ管理を実行するコンテンツ管理部(メディアサーバ)446と、チューナ410の受信コンテンツのクライアントに対する配信制御を実行するライブコンテンツ配信制御部(メディアレンダラー)430を有する。
【0089】
サーバ400とクライアント460間の通信ネットワークは、先に、図1を参照して説明したように、有線、無線等いずれかのネットワークであり、例えばイーサネット(登録商標)フレーム等の通信パケットをネットワークを介して送受信する。すなわち、クライアント460は、イーサネットフレームのデータ部に処理要求情報を格納したフレームをサーバ400に送信することにより、サーバ400に対するデータ処理要求を実行する。サーバ400は、処理要求フレームの受信に応じて、データ処理を実行し、必要に応じてデータ処理結果としての結果データを通信パケットのペイロードとして格納し、各クライアント460に送信する。
【0090】
チューナ410は、地上波放送データ、衛星放送データ、ケーブルTVデータ、インターネット配信データ等、様々な外部からの受信データを受信するライブストリーミングデータの受信部である。チューナ410は、ライブコンテンツ配信制御部430内のAVトランスポート(配信制御部)432に設定される配信コンテンツ毎のコンテンツ配信制御を実行する制御インスタンスとしてのAVTインスタンス(AV-Transport Instance)によって制御される。なお、本明細書において、制御インスタンスとは、制御対象ハードウェア等の制御オブジェクトの設定が可能で、かつ設定オブジェクトに応じた制御パラメータの設定が可能な制御プログラムであり、該制御プログラムに従って制御対象ハードウェアを含む制御オブジェクトの制御が実行される。
【0091】
AVトランスポート(配信制御部)432は、配信コンテンツ毎に、コンテンツ配信制御実行部としてのAVTインスタンス(AV-Transport Instance)を設定する。各AVTインスタンスは、それぞれ特定のコンテンツの配信制御を実行する。例えばチューナ410を介して受信するデータのライブストリーミング用のチューナコントロールインスタンス433は、チューナを介して受信するデータのライブストリーミングコンテンツのみの制御を実行する。具体的には、コンテンツ送信開始、終了、あるいはチャンネル切り替え等の指示をクライアント460から受け、チャンネル切り替え等の制御をチューナ410に対して実行する。
【0092】
AVトランスポート(配信制御部)432に設定されるAVTインスタンスは、チューナコントロールインスタンスの他に、例えば、サーバ内のコンテンツ記憶部444に格納されたビデオコンテンツであるビデオカプセル451の配信制御を実行するビデオカプセルコンロールインスタンスや、サーバに装着されたDVDに格納されたビデオデータ、オーディオデータ等の配信制御を実行するDVDコントロールインスタンスなどが設定可能である。これら各AVTインスタンスが、特定の配信コンテンツの制御を実行する。
【0093】
AVトランスポート(配信制御部)432に設定されるビデオカプセルコンロールインスタンスは、例えば、チューナ受信コンテンツをコンテンツ記憶部444内のビデオカプセルに格納する処理を実行し、コンテンツ記憶部444がハードディスクである場合、ハードディスクを制御対象とし、ハードディスクに応じた制御パラメータを持つ制御プログラムとして設定される。
【0094】
各AVTインスタンスには、制御対象コンテンツに対応するURL、すなわちコンテンツ識別子としてのコンテンツURLが設定される。コンテンツURLはコンテンツの所在を示すコンテンツ識別子であり、コンテンツ管理部(メディアサーバ)440のコンテンツディレクトリサービス(CDS)がコンテンツ管理ディレクトリ(図3参照)に基づく管理の下にメタデータ記憶部443に記憶しているURLである。
【0095】
チューナコントロールインスタンス433には、コンテンツ管理ディレクトリ内のチューナコンテナ305(図3参照)に対応するメタデータとしてメタデータ記憶部443が記憶しているチャンネルリストURLが設定される。
【0096】
AVトランスポート(配信制御部)432に設定される各種のAVTインスタンスは、自己に設定されたURLに基づいて、制御するコンテンツと関係付けられる。また、URLを設定された各AVTインスタンスは、AVTインスンタス識別子としてのAVTインスタンスID(配信制御部識別子)を持つことになる。
【0097】
チューナ410の受信コンテンツをクライアント460に配信する場合は、ライブコンテンツ配信制御部430のコネクションマネージャサービス431が1つのAVTインスタンスをチューナコントロールインスタンス433としてアサインし、さらにコンテンツ記憶部450に格納されたチューナコンテナに対応するコンテンツURLであるチャンネルリストURLをチューナコントロールインスタンス433にセットする。この処理により、チューナコントロールインスタンス433がチューナ410の制御を行い、チューナ410の受信コンテンツのユーザに対する配信を行う。なお、配信コンテンツは、必要に応じてコーデック420においてデータ変換がなされて配信される。
【0098】
チャンネルリストURLによって特定されるコンテンツは、チャンネルリストに含まれる複数のチャンネルに対応するコンテンツであり、クライアントは、チャンネルリストに含まれる複数のチャンネルに対応するチューナ受信コンテンツの制御権を取得することになる。
【0099】
コンテンツ対応のURLが設定され、URLによって識別されるコンテンツの配信制御を受け持つことになったチューナコントロールインスタンス433は、クライアント460からの制御コマンドを受信すると、その制御コマンドに従ったコンテンツ制御を実行する。このクライアント460サーバ間でのコンテンツ配信制御処理には、例えばSOAP(Simple Object Access Control)プロトコルが使用される。クライアント460は、XMLデータに従った記述データを生成しチューナコントロールインスタンス433に送信することで、クライアント460からの制御情報が、チューナコントロールインスタンス433に通知され、チューナコントロールインスタンス433が受信情報に基づく制御、例えばコンテンツ再生開始、終了、チャンネル切り替えなどの処理を実行する。
【0100】
例えばチューナコントロールインスタンス433にクライアント460からの制御情報として、チャンネル切り替え指示情報が入力されると、チューナコントロールインスタンス433から、制御情報がチューナ410に入力されてチューナ410が特定のチャンネルのデータを受信するように設定される。
【0101】
なお、サーバクライアント間のチューナ受信コンテンツの配信用コネクションは、チャンネルリストURLに基づいて設定されるHTTP(Hyper Text Transfer Protocol)コネクションである。チャンネルリストに記述された複数チャンネルに対応する複数のチューナ受信コンテンツの切り替えとして実行されるチャンネル切り替え前後において、チャンネルリストURLに基づいて設定されるHTTPコネクションを継続的に使用したコンテンツ配信を実行する。
【0102】
ライブコンテンツ配信制御部430のコネクション制御部としてのコネクションマネージャサービス(CMS)431は、クライアント460にライブコンテンツ配信制御部430の処理可能なプロトコル情報を伝える。また、クライアント460から提示されたコンテンツ要求、プロトコル情報に基づいて、AVTインスタンスのアサイン(割り当て)処理を実行し、アサインしたAVTインスタンスの識別子、すなわちAVTインスタンスIDをクライアント460に通知する。
【0103】
さらに、コネクションマネージャサービス(CMS)431は、サーバクライアント間のコネクション識別子としてのコネクションIDを生成し、クライアント460に通知する。コネクションマネージャサービス431は、コネクションIDをコネクション管理テーブル435に登録し、コネクション管理テーブル435に基づいてコネクション管理を実行する。コネクション情報に基づく処理については後述する。
【0104】
一方、コンテンツ管理部(メディアサーバ)440は、コンテンツ記憶部444に格納されたコンテンツ、例えばビデオカプセル448に格納されたコンテンツの配信制御、およびコンテンツディレクトリに基づくコンテンツ管理を実行する。
【0105】
コンテンツ管理部(メディアサーバ)440は、ビデオカプセル、オーディオカプセル等の様々なコンテンツを記憶したコンテンツ記憶部444と、コンテンツのメタデータを格納したメタデータ記憶部443を有する。コンテンツディレクトリサービス442は、先に図3を参照して説明したコンテンツ管理ディレクトリに基づいてコンテンツ管理を行い、クライアント460からのコンテンツ検索要求としてのサーチ、閲覧要求としてのブラウズなどの処理要求に応答してコンテンツ情報を提供する。
【0106】
メタデータ記憶部443には、コンテンツ記憶部444に格納したコンテンツの情報のみならず、チューナを介して受信するデータに関する情報、例えばチャンネル情報などの管理情報もチューナコンテナに対応するメタデータとして格納しており、クライアント460からのチューナに関するコンテンツ情報取得要求をコンテンツディレクトリサービス442が受信した場合には、サーバの受信可能なチャンネル情報、複数のチャンネルの集合として設定されるチャンネルリストに対応付けられたチャンネルリストURL等の情報をクライアント460に提供する処理を実行する。
【0107】
コンテンツディレクトリサービス442は、クライアント460からのコンテンツ情報取得要求に応じて、コンテンツ対応のメタデータとしてメタデータ記憶部443に格納したビデオカプセルURL、チャンネルリストURLや、コーデック情報、プロトコル情報を取得してクライアント460に送信する。
【0108】
コンテンツ記憶部444に格納されたビデオカプセル448のコンテンツの実体データをクライアント460に配信する場合は、クライアント460から受信するビデオカプセル448に対応するURLを指定したHTTP−GETメソッドに基づく処理をAVトランスポート(配信制御部)445が実行する。HTTP−GETメソッドに指定されたURLに基づくコンテンツ(ビデオカブセル448)がコンテンツ記憶部444から取得され、必要に応じてコーデック446においてデータ変換がなされて配信される。
【0109】
コンテンツ管理部(メディアサーバ)440のコネクション制御部としてのコネクションマネージャサービス(CMS)441は、クライアント460にコンテンツ管理部(メディアサーバ)440の処理可能なプロトコル情報を伝える。また、クライアント460から受信するコンテンツ要求(HTTP−GET)に基づいて、AVTトランスポート445にコンテンツ配信制御を依頼する。
【0110】
さらに、コネクションマネージャサービス(CMS)441は、サーバクライアント間のコネクション識別子としてのコネクションIDを生成し、コネクション管理テーブル447に登録し、コネクション管理を行う。コネクション情報に基づく処理については後述する。
【0111】
[サーバ格納コンテンツ再生処理]
コンテンツを再生しようとするクライアントは、サーバに対してコンテンツ要求を行い、要求コンテンツをサーバから受信してコンテンツの再生を行うことができる。サーバのコンテンツ記憶部444に格納されたコンテンツの取得再生処理手順について図6を参照して説明する。まず、ステップS11において、クライアントは、サーバのコンテンツ管理部(メディアサーバ)440に対して保有するコンテンツ情報の取得要求を行う。例えば、サーチ、ブラウズなどによるコンテンツ情報取得処理である。コンテンツ検索を実行しようとするクライアント460は、コンテンツ管理ディレクトリの階層やオブジェクト集合に対応するクラスを指定した「サーチ」、あるいは、特定のオブジェクトの指定としての「ブラウズ」をサーバに要求することで、コンテンツの情報を取得することが可能である。ブラウズまたはサーチは、コンテンツ管理部440(図5参照)のコンテンツディレクトリサービス442に対して実行され、コンテンツディレクトリサービス442がメタデータを格納したデータベース443から各オブジェクト対応のメタデータに基づくXMLデータを生成してコンテンツ情報としてクライアント460に提供する。
【0112】
ステップS12で、サーバのコンテンツディレクトリサービス442は、クライアントの要求に従ってコンテンツ対応のメタデータに基づいて、コンテンツの所在を示すアドレス情報としてのコンテンツのURL(Uniform Resource Locators)一覧、コンテンツのタイトル、アーティスト名などのコンテンツ情報をXML(eXtended Markup Language)データにより生成してクライアントに送信する。
【0113】
クライアントは、ステップS13において、受信XML情報に従って、コンテンツ情報をディスプレイに表示する。例えば音楽コンテンツであれば、サーバの保有する複数の音楽に対応する曲名、アーティスト名、再生時間等からなるリストとして表示される。
【0114】
次に、クライアントはステップS14において、クライアント装置において、サーバから受信し再生する曲を選択し、コンテンツ指定情報としてのコンテンツURLを指定してサーバに送信する。サーバはステップS15において、AVトランスポート445の制御の下に、クライアントからの受信コンテンツURLに基づいてコンテンツをコンテンツ記憶部444から取得して送信する。
【0115】
なお、コネクションマネージャサービス441は、コンテンツ配信において適用するサーバクライアント間のコネクションの識別子としてのコネクションIDを生成し、コネクション管理テーブル447に格納する。
【0116】
ステップS16において、クライアントはサーバから受信したコンテンツを再生する。なお、コンテンツがATRAC、MPEG等の圧縮処理がなされている場合は、サーバあるいはクライアント側で復号処理を行った後に送信あるいは再生処理を行う。
【0117】
コンテンツ記憶部444に格納されたコンテンツの取得再生手順は、上述したとおりである。上述したように、クライアントは、様々なコンテンツ属性情報、すなわち、サーバの保有するコンテンツ対応のメタデータを取得し、メタデータに含まれるコンテンツURLを設定したHTTP−GETメソッドをサーバに送信し、サーバがコンテンツURLに対応するコンテンツをクライアントに送信することで、クライアント側でコンテンツの再生が行われる。
【0118】
[チューナ受信ライブコンテンツ再生処理]
次に、図7を参照して、サーバクライアント間で実行されるチャンネルリストURLに基づくストリーミングデータ配信処理シーケンスの詳細について説明する。
【0119】
まず、クライアントは、サーバが保有し、クライアントに提供可能なコンテンツを調べるために、ステップS101において、ブラウズまたはサーチ処理により、コンテンツ情報を取得する。コンテンツ検索を実行しようとするクライアントは、コンテンツ管理ディレクトリの階層やオブジェクト集合に対応するクラスを指定した「サーチ」、あるいは、特定のオブジェクトの指定としての「ブラウズ」をサーバに要求することで、コンテンツの情報を取得することが可能である。ブラウズまたはサーチは、コンテンツ管理部440(図5参照)のコンテンツディレクトリサービス442に対して実行され、コンテンツディレクトリサービス442がメタデータを格納したデータベース443から各オブジェクト対応のメタデータに基づくXMLデータを生成してコンテンツ情報としてクライアント460に提供する。
【0120】
例えば、チューナコンテナに関するコンテンツ情報を取得した場合は、図8(a)に示すチューナコンテナ対応のコンテンツ情報および、図8(b)に示すチャンネル毎のコンテンツ情報に基づく情報がクライアントに送信される。
【0121】
図8は、チューナコンテナおよびチャンネルアイテムに対応するコンテンツ情報(メタデータ)を示している。図8に示すデータは、クライアントからコンテンツディレクトリサービス(CDS)442に対するコンテンツ情報要求に応じてクライアントに送信されるXMLデータの例である。
【0122】
図8(a)がチューナコンテナに対応するメタデータに基づく情報であり、下記に示すような情報を持つ。
<container id=ch-list parentID=-1 restricted=1 …>
<dc:title> 地上波チャンネル一覧</dc:title>
<upnp:class>object.container.function.avVideoTuner</upnp:class>

<av:allowedOperation>Play</av:allowedOperation>
<av:eventingURI>http://1.2.3.4:56000/SENA?id=live</av:eventingURI>
<res protocolInfo=http-get:*:video/mpeg:func-id=t01 av:codec=MPEG1V …>
http://1.2.3.4:56000/liveoutUrl
</res>
</container>
【0123】
上段から、コンテナID、タイトル、クラスに関するデータ、さらに、許容処理[allowedOperation]、イベント通知用URL[eventingURI]、プロトコル情報[protocolInfo]などがチューナコンテナのコンテンツ情報として格納される。イベント通知とは、例えばステレオ/モノラルの切り替え、2ヶ国語放送の切り替え等、配信コンテンツに対応するイベントが発生した場合にクライアントに通知するための処理を実行するために設定されるURLであり、クライアントは、イベント通知用URLを指定したイベント通知要求をサーバに対して送信することで、コンテンツ配信に並列して様々なイベント通知を受けることが可能となる。
【0124】
図8のデータ部491に示すプロトコル情報[protocolInfo]中のファンクションID[func-id=t01]は、このコンテンツがライブストリーミング用のコンテンツであることを示す、すなわちチューナを適用した制御によるコンテンツ配信を実行することを示している。ファンクションIDは、チューナ制御、DVD制御等、コンテンツ配信のための制御対象毎に設定されるIDであり、チューナが2つあればそれぞれ異なるファンクションID、例えばfuncID=a、funcID=bのように異なるIDが設定される。図8のデータ部492に示す[http://1.2.3.4:56000/liveoutUrl]が、チャンネルリストURLである。
【0125】
図8(b)が、チャンネルアイテムに対応するメタデータに基づく情報であり、下記に示すような情報を持つ。
<dc:title>東京テレビ</dc:title>
<upnp:class>object.item.videoItem.videoBroadcast.avChannel
</upnp:class>
<upnp:channelName>東京テレビ</upnp:channelName>
<upnp:channelNr>8</upnp:channelNr>

</item>
【0126】
上段から、タイトル、クラス、チャンネル名、チャンネル番号が記載されている。クライアントは、チューナコンテンナおよびチャンネルアイテムに対応するコンテンツ情報を取得することで、チューナコンテナに設定されたチャンネルリストURLに基づくコンテンツ要求により、どのような範囲のチャンネル制御権を取得することが可能かを知ることができる。
【0127】
なお、図8(b)に示す情報は、1つのチャンネルに対応するコンテンツ情報であり、クライアントが、チューナコンテナおよび子アイテムとしての全チャンネルの情報を要求した場合は、チューナコンテナの子アイテムとして設定されるチャンネル数に対応する数の図8(b)に示す情報がクライアントに送信されることになる。
【0128】
クライアントは、サーバから受信するコンテンツ情報を記述したXMLデータに基づいてコンテンツ情報をディスプレイに表示する。これは、先に、図4を参照して説明したような表示情報である。
【0129】
クライアントは、図8(a)(b)に示すチューナコンテナおよびチャンネルアイテムに対応するコンテンツ情報に基づいて、
チャンネルリストURL
ファンクションID(funcID)
チャンネル情報
を取得する。
【0130】
クライアントは、次に、ステップS102において、ライブコンテンツ配信制御部430のコネクションマネージャサービス431に対して、プロトコル情報取得要求を送信する。これは、ライブコンテンツ配信制御部430に入力可能なプロトコル情報、すなわち、ライブコンテンツ配信制御部430の処理可能なプロトコル情報の一覧を要求する処理である。
【0131】
ステップS103において、コネクションマネージャサービス431は、プロトコル情報一覧をクライアントに送信する。このプロトコル情報一覧には、例えばビデオデータのプロトコルとしてのMPEGや、オーディオデータのATRAC等、ライブコンテンツ配信制御部430で処理可能な様々なプロトコル情報が含まれる。
【0132】
チューナ410の受信データを配信可能なサーバのコネクションマネージャサービス431がクライアントに送信するプロトコル情報一覧には、ライブストリーミングデータの配信が可能であることを示す情報が含まれる。具体的には、[internal:1.2.3.4:application/x-av-tuner-content:func-id=t01]なるプロトコル情報が含まれる。すなわち、schema欄(第1カラム)が[internal]であるものが含まれる。このプロトコル情報は、内部のコンテンツ管理部(メディアサーバ)440との論理コネクションが、以下に説明する接続準備(Prepare For Connection)によって可能であることを示す。
【0133】
このプロトコル情報にもファンクションIDが含まれる。前述したように、ファンクションIDは、チューナ制御、DVD制御等、コンテンツ配信のための制御対象毎に設定されるIDであり、ステップS101においてクライアントがブラウズまたはサーチ処理により、コンテンツディレクトリサービス442から取得したコンテンツ情報にも含まれる。ここでは、ファンクションID[func-id=t01]がチューナ410を適用したコンテンツ配信に対応するファンクションIDとして設定されている。
【0134】
次に、ステップS104において、クライアントは、コネクションマネージャサービス431から、現在、サーバ400に接続されている他のクライアントに関する情報を取得する。コネクションマネージャサービス431は、サーバに接続しているクライアントに対して送信するコンテンツに対応するリソース識別子、コネクションID、コンテンツ配信制御を実行しているAVTインスタンスID(配信制御部識別子)、および配信コンテンツに対応するプロトコル情報と対応付けたコネクション管理テーブルを保持してコネクション管理を実行している。
【0135】
クライアントからのコネクション情報の取得要求に応じて、これらの情報をクライアントに提供する。この処理については、後述する。なお、このコネクション情報通知処理は、クライアントが他のクライアントの接続状況を確認するために実行するものである。
【0136】
ステップS105において、クライアントは、コネクションマネージャサービス431に対して、接続準備要求(Prepare For Connection)を送信する。クライアントが、チューナを適用したライブストリーミングデータの配信を希望する場合は、先にコンテンツディレクトリサービス(CDS)442から受領したコンテンツ情報としてのチューナコンテナに対応するコンテンツ情報に含まれるファンクションID(funcID)と一致するファンクションIDを持つプロトコル情報を送信すればよい。
【0137】
ステップS105の接続準備(Prepare For Connection)の送信において、クライアントは、前述のプロトコル情報取得(S103)において、コネクションマネージャサービス431から受領したライブストリーミングに関するプロトコル情報[internal:1.2.3.4:application/x-av-tuner-content:func-id=t01]を送信する。
【0138】
クライアントから接続準備要求(Prepare For Connection)を受信したコネクションマネージャサービス431は、接続準備要求に含まれるプロトコル情報[internal:1.2.3.4:application/x-av-tuner-content:func-id=t01]に基づいて、チューナによる受信データのストリーミング配信の要求であると判断し、AVトランスポート(配信制御部)432内の1つのチューナコントロールインスタンス433をチューナコントロールインスタンスとして設定(アサイン)し、接続準備要求(Prepare For Connection)のあったクライアントに対するコネクションIDと、チューナコントロールインスタンスとして設定(アサイン)したAVTインスタンスの識別子(AVTインスタンスID)とのバインド処理、すなわち対応付けを行う。
【0139】
なお、前述したように、コネクションマネージャサービス431は、コネクション管理テーブル、すなわち、各接続クライアント毎のコネクションIDとAVTインスタンスID、プロトコル情報との対応データを持ち、これをコネクション管理情報として管理している。
【0140】
ステップS106において、コネクションマネージャサービス431は、クライアントに対して、アサインしたAVTインスタンスの識別子であるAVTインスタンスIDおよび、クライアントサーバ間のコネクションに対して設定したコネクションID情報を通知する。クライアントはこれらの情報をメモリに格納する。
【0141】
ステップS107において、クライアントは、コネクションマネージャサービス431によってアサインされたAVTインスタンスによるコンテンツ配信制御を行わせるための処理として、アサインされたAVTインスタンスに対して、URI(Uniform Resource Identifier)セット要求を発行する。AVTインスタンスに対してセットするURIには、コネクションマネージャサービス431から通知されたAVTインスタンスIDと、ステップS102の処理において取得したチューナコンテナに対応するコンテンツ情報に含まれるチャンネルリストURLが含まれる。
【0142】
AVTインスタンスは、クライアントから指定されたAVTインスタンスIDと、チャンネルリストURLとに基づいて、自己の制御対象コンテンツおよびクライアントを識別することが可能となる。すなわち、AVTインスタンスIDを指定して各種の制御命令を送信するクライアントをAVTインスタンスに対応するクライアントであり、チャンネルリストURLが制御対象コンテンツとなる。
【0143】
チャンネルリストURLは、チューナコンテナの対応コンテンツであり、チャンネルリストURLをセットしたAVTインスタンスは、チューナ410の制御を実行するインスタンスとして設定されることになる。
【0144】
次にクライアントはステップS108以降において、AVTインスタンスに対して、様々なコンテンツの制御要求を実行することができる。ステップS108では、再生(Play)要求をAVTインスタンスに対して発行している。この制御要求は、例えばSOAP(Simple Object Access Control)プロトコルが利用される。SOAPに基づいて、クライアントは、XMLデータに従った記述データを生成しチューナコントロールインスタンス433に送信する。
【0145】
チューナコントロールインスタンス433は、クライアントからの受信情報に基づく制御、例えばコンテンツ再生開始、終了、チャンネル切り替えなどの処理を実行する。チューナコントロールインスタンス433は、セットされたコンテンツURLに基づいて制御対象コンテンツを特定し、その特定された制御対象コンテンツを制御する。この場合は、コンテンツURLはチャンネルリストURLであり、チャンネルリストURLはチューナコンテナに対応するコンテンツ情報であり、チューナコントロールインスタンス433はチューナ410の制御を実行する。
【0146】
ステップS108の、再生(Play)要求をチューナコントロールインスタンス433が受領すると、チューナコントロールインスタンス433はチューナ410を制御し、チューナ受信データのクライアントに対する送信を開始する。
【0147】
ステップS109においては、チャンネル設定(Seek)要求をAVTインスタンスに対して発行している。この要求には、AVTインスタンスIDとチャンネル番号が含まれる。チャンネル設定(Seek)要求をチューナコントロールインスタンス433が受領すると、チューナコントロールインスタンス433はチューナ410を制御し、チューナのチャンネルを設定して受信データをクライアントに送信する。
【0148】
ステップS110は、以下継続して実行されるライブストリーミングデータの配信を示している。ステップS111は、イベント通知処理(SENA)がコンテンツ配信と並列して実行されることを示している。前述したようにイベントとは、例えばステレオ/モノラルの切り替え等のように配信コンテンツに関する情報であり、クライアントからのイベントURLに基づくイベント通知要求に基づいてサーバが様々なイベント情報を通知する処理である。
【0149】
チャンネル切り替え処理シーケンスについて、図9を参照して説明する。チャンネル切り替え処理は、チャンネルリストURLに基づくストリーミングデータの配信中に実行する。ステップS201において、ストリーミングデータの配信およびイベント通知が実行されているとする。
【0150】
ステップS202において、クライアントはチャンネル切り替え(Seek)要求をAVTインスタンスに対して発行する。この制御要求には、上述したように例えばSOAP(Simple Object Access Control)プロトコルが利用される。クライアントは、XMLデータに従った記述データを生成しチューナコントロールインスタンス433に送信する。この要求には、AVTインスタンスIDと切り替えチャンネル番号が含まれる。チャンネル設定(Seek)要求をチューナコントロールインスタンス433が受領すると、チューナコントロールインスタンス433はチューナ410を制御し、チューナのチャンネルを切り替えて受信データをクライアントに送信する。
【0151】
その後、ステップS203において、切り替え後のチャンネルに対応するストリーミングデータの配信およびイベント通知が実行される。
【0152】
このチャンネル切り替えの前後におけるサーバクライアント間のHTTPコネクションは、同一のURL、すなわち同じチャンネルリストURLに基づくHTTPコネクションであるため、サーバクライアント間においてはコネクションが維持されたままチャンネル切り替えが実行されることになる。
【0153】
このように、チャンネルリスト中のチャンネルを切り替えるときは、AVTインスタンスに対してチャンネル切り替え要求(AVT Seek action)を行う。この際、チャンネル切り替え要求(AVT Seek action)を行なったクライアントのみならず、同じライブストリーミングを利用しているクライアントも、HTTPコネクションを切ることなくコンテンツが変更される。
【0154】
なお、サーバからクライアントに対して送信される画像または音声データを、例えばMPEG等の符号化データとした場合、クライアントから受信するチャンネル切り替えのタイミングに基づいて無条件に送信データの切り替えを実行すると、送信する符号化データパケットの不整合が発生する場合がある。このような不整合な符号化データをクライアント側でデコード(復号)するとデコードエラーによりコンテンツ再生エラーを発生させる。
【0155】
例えばMPEG−2システムでは、映像や音声などの個別データストリームであるPES(Packetized Elementary Stream)パケットを複数結合し、さらに制御情報をヘッダに格納したパック(Pack)を1つの処理単位としている。従って、パック(Pack)を構成するPESパケットの一部を送信中に、チャンネル切り替えを実行して、送信データを変更すると、クライアントにおいてデコードする際の1つの処理単位であるパック(Pack)に欠落が発生し、再生エラーを発生させることになる。
【0156】
従って、サーバのライブコンテンツ配信制御部430は、クライアントからのチャンネル切り替え要求に基づく送信データの変更により、送信符号化データの整合性の保持が可能か否かを判定し、整合性が保持されないと判断した場合は、サーバクライアント間のデータストリーム配信用の接続コネクション、すなわち、チャンネルリストURLに基づくHTTPコネクションを切断する。サーバは、さらに、クライアントに対して、イベント通知用コネクションを介して、データストリーム配信用の接続コネクションが切断されたことを通知する。
【0157】
クライアントは、サーバからコネクション切断通知を受信した場合は、再度、チャンネルリストURLに基づくHTTPコネクションを設定する処理、すなわち、チャンネルリストURLに基づくHTTP−GETメソッドをサーバに対して送信する。なお、AVTインスタンス(チューナコントロールインスタンス433)の設定状態は維持されているので、チューナコントロールインスタンス433の新たなアサイン、URIセット等の設定処理は省略可能である。
【0158】
あるいは、サーバは、クライアントから受信したチャンネル切り替えタイミングに基づいて無条件にチャンネル切り替えを実行するのではなく、クライアントからのチャンネル切り替え要求受信後、クライアントに対して送信する符号化データの整合性を保持可能なタイミングを待機し、整合性を保持可能なタイミングでクライアントに対する送信データの切り替えを実行する構成としてもよい。この切り替えタイミングの制御は、コーデック420のデータエンコード状況を検出し、検出情報をチューナコントロールインスタンス433に入力し、チューナコントロールインスタンス433のタイミング制御の下にチューナ410のチャンネル切り替えを実行することで行う。
【0159】
サーバ側でこのようなチャンネル切り替えタイミングの制御を実行することで、クライアント側でのデコードエラーの発生が防止され、クライアント側ではチャンネル切り替え前のデータおよびチャンネル切り替え後のデータ再生を正常に実行することが可能となる。
【0160】
次に、図10のシーケンス図を参照してライブストリーミングデータの配信処理を終了する場合の処理について説明する。ステップS301において、ストリーミングデータの配信およびイベント通知が実行されているとする。
【0161】
ライブストリーミングデータの配信処理を終了しようとするクライアントは、ステップS302において、コネクションIDを格納したコネクション終了要求をコネクションマネージャサービス431に送信する。コネクションIDは、図7のシーケンス図のステップS106において、コネクションマネージャサービス431から受領したものである。コネクションマネージャサービス431は、クライアントからの要求に従って、サーバクライアント間のコネクションの切断を行い、さらに、コネクション管理テーブルから対応エントリを削除する。
【0162】
なお、クライアントは同じAVTインスタンスを使用している他のクライアントの存在を知ることが、ステップS104の問い合わせ処理によって可能である。このチェックを前もって行うことで、どのファンクションID(func-id)を選択すれば空いているAVTインスタンスを使えるかがわかる。このチェックを行い、他のクライアントに配慮した処理が可能となる。
【0163】
例えば、全てのAVTインスタンスが使用されている場合などは、チャンネル変更時に「他に人が視聴している可能性があります。本当に良いですか?」等のメッセージをサーバからクライアントに送信し、クライアントにおいてメッセージ表示UIを生成し、提示することにより、複数のクライアントが接続されたネットワークにおいて、他のクライアントの接続を不用意に制御する、例えばチャンネルを切り替えてしまうといったことが防止される。
【0164】
[コネクション管理情報に基づく処理]
上述したように、サーバでは、チューナ受信ライブコンテンツの配信処理を実行する際、ライブコンテンツ配信制御部430のコネクションマネージャサービス431がクライアントに対するコネクション毎の識別子としてのコネクションIDを生成し、コネクション管理テーブル435に登録し、コネクション管理を実行する。同様に、コンテンツ管理部440においても、コンテンツ記憶部444の格納コンテンツのクライアントに対する配信を実行する際に、コンテンツ管理部440のコネクションマネージャサービス441がクライアントに対するコネクション毎の識別子としてのコネクションIDを生成し、コネクション管理テーブル447に登録し、コネクション管理を実行する。
【0165】
以下、コネクション管理情報に基づく処理について説明する。コネクションマネージャサービス431,441は、例えば図11に示すようなコネクション管理テーブルを生成しコネクション管理を行う。
【0166】
図11には、ライブコンテンツの配信制御を実行するライブコンテンツ配信制御部430のコネクションマネージャサービス431の生成するコネクション管理テーブル435のデータ構成例を示す。コネクション管理テーブルは、サーバクライアント間のコネクション識別子としてのコネクションIDと、配信中のコンテンツに対応するコンテンツ識別子(リソース識別子:コンテンツURL)、クライアントに対するコンテンツ配信制御を実行しているAVTインスタンスID(配信制御部識別子)、および各クライアントに配信されるコンテンツに対応するプロトコル情報を対応付けたデータ構成を有する。プロトコル情報には、コンテンツの配信処理のための制御対象となる機器識別子としてのファンクションIDを含む。ファンクションIDは、コンテンツ配信において制御対象としている機器を示す情報であり、例えばファンクションIDがチューナAを示すIDであれば、配信コンテンツがチューナAによって受信されるコンテンツであることになる。
【0167】
図12には、コンテンツ記憶部に記憶されたコンテンツの配信を実行するコンテンツ管理部440のコネクションマネージャサービス441の生成するコネクション管理テーブル447のデータ構成例を示す。コネクション管理テーブルは、サーバクライアント間のコネクション識別子としてのコネクションIDと、配信中のコンテンツに対応するコンテンツ識別子(リソース識別子:コンテンツURL)と、各クライアントに配信されるコンテンツに対応するプロトコル情報を対応付けたデータ構成を有する。
【0168】
ライブコンテンツ配信制御部430のコネクションマネージャサービス431、および、コンテンツ管理部440のコネクションマネージャサービス441は、クライアントからのコネクションID取得要求に応じて、コネクション管理テーブルのエントリに基づき、コネクションIDリストを生成し、クライアントに提供する。コネクションIDリストは、サーバが現在接続しているクライアント全てのコネクションに対応するコネクションIDのリストであり、各クライアントは、サーバに対して接続しているクライアントの有無、接続クライアントの数を知ることができる。
【0169】
さらに、クライアントは、サーバから取得したコネクションIDリストから特定のコネクションIDを指定したコネクション情報取得要求を各コネクションマネージャサービス431,441に対して送信することができ、各コネクションマネージャサービス431,441はクライアントからの要求に基づき、コネクション管理テーブルの登録情報、すなわち、コンテンツURL等のコンテンツ識別子(リソース識別子)、プロトコル情報、配信制御部識別子(AVTインスタンスID)の各情報をクライアントに通知する。
【0170】
例えば、先に図7を参照して説明したライブコンテンツのストリーミング要求に行われるコネクション情報の取得処理(ステップS104)の詳細は、以下の通りである。
【0171】
まず、クライアントは、ライブコンテンツ配信制御部430のコネクションマネージャサービス431に対し現接続コネクションID要求(GetCurrentConnectionIDs)を行う。コネクションマネージャサービス431はコネクション管理テーブル435に基づいて、現在アクティブであるコネクションID(ConnectionID)を取得し、コネクションIDリスト(一覧)をクライアントに送信する。
【0172】
コネクションIDリストは、サーバが現在接続しているクライアント全てのコネクションに対応するコネクションIDのリストであり、各クライアントは、サーバに対して接続しているクライアントの有無、接続クライアントの数を知ることができる。
【0173】
次に、クライアントは各々のコネクションIDを指定したコネクション情報要求(GetCurrentConnectionInfo)をコネクションマネージャサービス431に対して行う。コネクションマネージャサービス431はコネクション管理テーブル435に基づいて、指定コネクションIDに対応する各情報、すなわちリソース識別子、AVTインスタンスID(配信制御部識別子)、プロトコル情報をクライアントに提供する。
【0174】
コンテンツ記憶部444に格納したコンテンツの配信を実行するコンテンツ管理部(メディアサーバ)440のコネクションマネージャサービス441においても、クライアントからの要求に応じて、コネクションIDリストの提供、およびコネクション情報の提供処理を行う。
【0175】
すなわち、コネクションマネージャサービス441はコネクション管理テーブル447に基づいて、指定コネクションIDに対応する各情報、すなわちリソース識別子、プロトコル情報をクライアントに提供する。
【0176】
コンテンツ記憶部444に格納したコンテンツの配信の際に実行されるコネクション管理を伴う一連の処理について、図13を参照して説明する。クライアントは、ステップS381において、ブラウズ、サーチ等のコンテンツ情報取得要求をサーバのコンテンツ管理部に対して実行する。クライアントは、ブラウズ、サーチ等のコンテンツ情報取得処理により、コンテンツ識別子としてのコンテンツURLをコンテンツ管理部(メディアサーバ)440から取得する。コンテンツURLは例えばビデオカプセルURL等、メディアサーバ内のコンテンツ記憶部444に格納されたコンテンツの識別情報である。
【0177】
クライアントは、ステップS382において、取得したコンテンツURLを設定したHTTP−GETメソッドをコンテンツ管理部(メディアサーバ)440に送信し、コンテンツ管理部(メディアサーバ)440が、クライアントからのHTTP−GETメソッドを受信すると、ステップS383において、コンテンツ管理部(メディアサーバ)440のコネクションマネージャサービス441は、クライアントからのコンテンツ取得要求に応じたコンテンツ送信コネクションに対応するコネクション情報を生成し、ステップS384において、コネクション管理テーブル(図12参照)に登録する。
【0178】
コネクション情報としては、先に図12を参照して説明したように、コネクションID、コンテンツ識別子、プロトコル情報が含まれる。なお、サーバクライアント間のコネクションが新規コネクションである場合は、コネクションマネージャサービス441は、新規のコネクションIDを生成し、生成した新規コネクションIDに対応付けてクライアントからのHTTP−GETメソッドに対応してクライアントに送信するコンテンツに対応するコンテンツURLおよびプロトコル情報を登録する。
【0179】
ステップS385において、コンテンツ管理部(メディアサーバ)440は、において指定されたコンテンツURLに対応するコンテンツをコンテンツ記憶部から取得して、クライアントに送信する。
【0180】
このように、クライアントは、ブラウズ、サーチの処理によってコンテンツ情報を取得して、コンテンツURLを指定情報として設定したHTTP-GETメソッドを生成し、サーバに送信することで、コンテンツ管理部(メディアサーバ)440はクライアントにコンテンツを送信し、同時にクライアントからの要求に対応したコネクション情報を生成し、コネクションマネージャーサービス441のコネクション管理テーブルに登録する。これにより、ライブコンテンツ配信の事前処理として接続要求(PrepareForConnection)を実行されなくても、クライアントに配信しているコネクションを管理をおこなうことが可能となる。この場合、新規コネクションには新たなコネクションIDがコネクションマネージャーサービス441により割り当てられ、HTTP−GETメソッドのリクエストに対するレスポンスにおいて、割り当てたコネクションIDがクライアントに返される。これによりコネクションマネージャーサービス441はコンテンツ管理部440のコンテンツ配信のコネクション管理を行い、クライアントのコネクション情報を開示できる。
【0181】
クライアントが、コンテンツ管理部(メディアサーバ)440のコネクションマネージャサービス441に対し現接続コネクションID要求(GetCurrentConnectionIDs)を行うと、コネクションマネージャサービス441はコネクション管理テーブル447に基づいて、現在アクティブであるコネクションID(ConnectionID)を取得し、コネクションIDリスト(一覧)をクライアントに送信する。クライアントは、この処理により、現在アクティブであるコネクションIDを取得することができる。
【0182】
次に、クライアントはコネクションIDリストから選択したコネクションIDを指定したコネクション情報要求(GetCurrentConnectionInfo)をコネクションマネージャサービス441に対して行う。コネクションマネージャサービス441はコネクション管理テーブル447に基づいて、指定コネクションIDに対応する各情報、すなわちコンテンツ識別子、プロトコル情報をクライアントに提供する。
【0183】
クライアントは、これらの処理によって、他のクライアントの取得しているコンテンツ情報を知ることが可能となる。
【0184】
また、クライアントは、サーバから取得したコネクションIDを用いてコネクション終了処理(図10参照)を行うことも可能となる。例えば、ホームサーバを利用しているユーザがある部屋のPCa(クライアントa)でホームサーバからのコンテンツ受信を開始した後、他の部屋に移動し、他のPCb(クライアントb)を用いて、PC(クライアントa)で受信中のコンテンツの配信を終了させることが可能となる。コネクションの終了は、図10を用いて説明したようにコネクションIDを指定して実行するものであり、PCa(クライアントa)に設定されたコネクションIDを指定したコネクション終了処理を他のクライアントから実行してもそのコネクションを終了させることが可能となる。
【0185】
また、クライアントはコネクション情報に含まれるプロトコル情報に基づいて、どのファンクションID(func-id)を選択すれば空いているAVTインスタンスを使えるかがわかる。例えばチューナを2つ(チューナA,B)搭載したサーバであり、コネクション情報のプロトコル情報にチューナAを示すファンクションIDを含むプロトコル情報が存在した場合、チューナBを使用したコンテンツ配信処理要求を行うことで、他の接続クライアントに配慮した処理が可能となる。
【0186】
なお、コネクション情報の取得により、得られるコンテンツURL(チャンネルリストURL)により、接続準備要求を行うことなく、設定済みのAVTインスタンスに基づくライブコンテンツの受信が可能となり、またコネクション情報の取得により、得られるAVTインスタンスIDに基づいてチャンネル切り替えも可能であるが、コネクションマネージャサービスは、同一のAVTインスタンスが使用されている異なるコネクションがコネクション管理テーブルに設定されている場合に、クライアントからAVTインスタンスに対するチャンネル制御や、接続終了要求があった場合には、「他に人が視聴している可能性があります。本当に良いですか?」等の警告メッセージをサーバからクライアントに送信する処理を実行する構成としてもよい。
【0187】
なお、サーバのコネクションマネージャサービスは、コネクション終了処理に伴い、コネクション管理テーブルから対応エントリを削除する処理を実行する。
【0188】
なお、同一のコンテンツURLと同一のAVTインスタンスを異なるクライアントに対するコンテンツ配信に適用可能であるが、この場合であっても、コネクションマネージャサービスは、それぞれの異なるクライアントに対応するコンテンツ配信コネクションに対して異なるコネクションIDを設定して管理する。
【0189】
具体的には1つのチャンネルリストURLの設定されたAVTインスタンスの制御を2つ以上のクライアントが実行可能であり、いずれのクライアントからの制御命令、例えばチャンネル切り替え処理もその1つのAVTインスタンスの制御の下に有効に実行されることになる。
【0190】
なお、ライブコンテンツ配信制御部430が、AVTインスタンス−#0とAVTインスタンス−#1の2つを持っているが、同時に1つのAVTしか動作できないサーバの場合の処理は、例えば以下のa〜fのように実行される。
a.最初、クライアント1からAVT−#0をアサインするように要求
b.コネクションID−1にAVTインスタンスID−#0をアサイン
c.次に、クライアント2からAVT−#0をアサインするように要求
d.コネクションID−2にAVTインスタンスID−#0をアサイン
e.次に、クライアント1からAVT−#1をアサインするように要求
f.クライアント1にエラーを返す
【0191】
このような処理を実行することで、AVTインスタンスの設定数の制限が可能となる。
【0192】
前述したように、チャンネルリストURLは、コンテンツディレクトリサービス(CDS)442から得ることが可能である。チューナがプレイ状態、すなわちクライアントに対するコンテンツ配信状態にあるときは、このチャンネルリストURLに既にHTTP−GETに基づくコンテンツ要求を行っている全てのクライアント(サーバが複数クライアント対応時に限る)は、チャンネルリストURLがAVTインスタンスにセットされたと同時にチューナのストリーミングを得ることができる。
【0193】
すなわち、他のクライアントによって使われているストリーミングを単にモニタしたい場合には、AVTインスタンスの設定を実行することなく、ストリーミング用のURLすなわち、コンテンツディレクトリサービス(CDS)442から取得したチャンネルリストURL、ビデオカプセルURL等のコンテンツURL、あるいは上述したコネクション情報取得処理により取得したコンテンツURLを設定したHTTP−GETメソッドを発行するのみで、チューナのストリーミング、ビデオカプセルの配信当、すでに他のクライアントに対して実行されている配信コンテンツを取得することができる。
【0194】
サーバ400のライブコンテンツ配信制御部430は、チャンネルリスト識別子としてのチャンネルリストURLに基づいて特定されるチューナ410の受信する複数チャンネルのコンテンツの配信制御をAVTインスタンスの制御の下に実行している間に、他クライアントからの同一のチャンネルリストURLを指定したコンテンツ要求としてのHTTP−GETメソッドを受信した場合、その要求クライアントは、AVTインスタンスの設定を行うことなく、チャンネルリストURLに基づくHTTPコネクションにより、チャンネルリストURLに基づいて特定されるチューナ受信コンテンツの配信を実行することができる。
【0195】
なお、コンテンツ管理部440のコネクションマネージャサービス441の生成するコネクションIDと、ライブコンテンツ配信制御部430のコネクションマネージャサービス431の生成するコネクションIDは、それぞれ異なるコネクションに対応して設定されるものであり、基本的に異なる値が設定される。
【0196】
ライブコンテンツ配信制御部430の配信制御の下にコンテンツ配信が実行されている場合、同一コンテンツの配信要求を他のクライアントが、ライブコンテンツ配信制御部430に対するAVTセット等を実行することなく、コンテンツ管理部440に対するHTTP−GETによって実行することが可能となるが、この場合、コンテンツ管理部440のコネクションマネージャサービス441の生成するコネクションIDをライブコンテンツ配信制御部430のコネクションマネージャサービス431の生成するコネクション管理テーブル435に反映させる処理を実行し、ライブストリーミングのコンテンツ配信コネクションの全情報をライブコンテンツ配信制御部430のコネクションマネージャサービス431が保持する構成とする。
【0197】
この処理により、ライブコンテンツ配信制御部430のコネクションマネージャサービス431では、複数のクライアントに対する同一のAVTインスタンスを適用したコンテンツ配信の監視を行うことが可能となり、コネクションマネージャサービス431は、同一のAVTインスタンスが使用されている複数コネクションが存在することをコネクション管理テーブルに基づいて判定し、いずれかのクライアントからAVTインスタンスに対するチャンネル制御や、接続終了要求があった場合には、同一コンテンツを受信している他のクライアントの存在を通知する警告メッセージをサーバからクライアントに送信することができる。
【0198】
図14を参照して、クライアントによるコネクション情報の取得および利用処理シーケンスについて説明する。図14において、サーバ側の処理は、ライブコンテンツ配信制御部430のコネクションマネージャサービス431、またはコンテンテ管理部440のコネクションマネージャサービス441のいずれかにおいて実行する処理である。
【0199】
クライアントはステップS401において、コネクションIDリスト要求をサーバに送信する。サーバは、コネクション管理テーブル(図11、図12参照)からエントリされているコネクションIDを取得し、ステップS402においてクライアントに送信する。
【0200】
クライアントは、ステップS403において、コネクションIDを指定したコネクション情報要求をサーバに送信する。サーバは、コネクション管理テーブル(図11、図12参照)から指定されたコネクションIDに対応するコネクション情報としてのコンテンツ識別子(リソースID:コンテンツURL)、AVTインスタンスID、プロトコル情報を取得し、ステップS404においてクライアントに送信する。
【0201】
ステップS405において、クライアントは、サーバに対してコンテンツ情報を利用した処理、例えばコンテンツURLを指定したHTTP−GETの送信、あるいはAVTインスタンスを指定したライブコンテンツの制御、すなわちチャンネル切り替え(図9参照)、あるいはコネクションIDに基づくコンテンツ配信終了処理(図10参照)等をサーバに対して要求する。
【0202】
このように、クライアントは、コネクションマネージャサービスからサーバとクライアント間のコネクション情報、すなわち、コネクションID、配信コンテンツの識別子としてのコンテンツURL、配信制御部(AVトランスポート)識別子、およびプロトコル情報を取得することが可能であり、これらの取得情報に基づく様々なコンテンツ制御要求を生成し、サーバに対してコンテンツの制御要求を行うことができる。
【0203】
例えば、クライアントは、ブラウズ、サーチ処理によるコンテンツ情報の取得や、ライブコンテンツの配信の事前処理として必要なAVTインスタンスの設定処理等の接続準備要求(Prepare For Connection)実行することなく、コネクションマネージャサービスから受信するコネクション情報に含まれるコンテンツURLを指定情報として設定したHTTP−GETメソッドを生成し、サーバに送信することで、現在サーバが他のクライアントに配信しているコンテンツと同様のコンテンツを取得することが可能となる。
【0204】
また、クライアントは、コネクションマネージャサービスから受信するコネクション情報に含まれる配信制御部(AVトランスポート)識別子に基づいて、配信制御部(AVトランスポート)識別子を設定したコンテンツの制御要求、例えばチャンネルの切り替え要求を生成し、配信制御部(AVトランスポート)に要求を送信することで、チャンネル切り替えなどの制御を行うことができる。
【0205】
さらに、クライアントは、コネクションマネージャサービスから受信するコネクション情報に含まれるプロトコル情報に含まれるファンクションIDに基づいて、現在サーバが他のクライアントに配信しているコンテンツに対する制御を実行している機器を知ることが可能であり、例えば複数のチューナを持つサーバにおいて、一方が他のコンテンツ配信に適用されている場合、他のチューナを適用したコンテンツ配信の要求を行うことが可能となり、他のクライアントに対して配慮した制御要求が可能となる。
【0206】
また、クライアントは、コネクションマネージャサービスから受信するコネクション情報に含まれるコネクションIDに基づいて、コネクションIDを指定したコネクション終了をサーバに要求することも可能であり、1つのクライアント装置で受信を開始したコンテンツ送信を他のクライアントにおいて、終了させることが可能となる。
【0207】
[サーバおよびクライアントの処理フロー]
チューナ受信データのライブストリーミング処理におけるサーバおよびクライアント各々の処理手順について、図15および図16のフローを参照して説明する。まず、クライアントにおける処理を図15の処理フローを参照して説明する。
【0208】
クライアント装置は、ステップS501において、ブラウズまたはサーチ処理により、コンテンツ情報の取得要求を実行する。これは、コンテンツ管理部440(図5参照)のコンテンツディレクトリサービス442に対して実行する。
【0209】
ステップS502において、コンテンツ情報を受信する。ここでは、チューナを介したストリーミングデータの配信を実行するためチューナコンテナおよびチャンネルアイテムのコンテンツ情報を取得するものであり、図8(a)に示すチューナコンテナ対応のコンテンツ情報および、図8(b)に示すチャンネル毎のコンテンツ情報に基づく情報を取得する。この処理により、チャンネルリストURL、ファンクションID、チャンネル情報が取得される。
【0210】
クライアントは、次に、ステップS503において、コンテンツ配信制御部430のコネクションマネージャサービス431に対して、プロトコル情報取得要求を送信する。ステップS504において、コネクションマネージャサービス431から、プロトコル情報一覧を受信する。このプロトコル情報一覧に、ライブストリーミングデータの配信が可能であることを示すプロトコル情報[internal:1.2.3.4:application/x-av-tuner-content:func-id=t01]が含まれる。
【0211】
次に、ステップS505において、クライアントは、コネクションマネージャサービス431から、現在、サーバ400に接続されている他のクライアントに関する情報を取得する。ステップS506において、クライアントは、コネクションマネージャサービス431に対して、接続準備要求(Prepare For Connection)を送信する。クライアントが、チューナを適用したライブストリーミングデータの配信を希望する場合は、ステップS502において、コンテンツディレクトリサービス(CDS)442から受領したチューナコンテナに対応するコンテンツ情報中のファンクションID(funcID)と一致するファンクションIDを持つプロトコル情報を送信する。
【0212】
ステップS507において、クライアントは、コネクションIDと、チューナコントロールインスタンスとして設定(アサイン)したAVTインスタンスの識別子(AVTインスタンスID)を受信する。
【0213】
ステップS508において、クライアントは、アサインされたAVTインスタンスに対して、URI(Uniform Resource Identifier)セット要求を発行する。AVTインスタンスに対してセットするURIには、コネクションマネージャサービス431から通知されたAVTインスタンスIDと、ステップS502において取得したチューナコンテナに対応するコンテンツ情報に含まれるチャンネルリストURLが含まれる。
【0214】
ここまでの処理が、AVTインスタンスによるチューナ制御を可能とするための設定処理である。これ以降は、クライアントは、AVTインスタンスに対して制御要求を発行することで、コンテンツ送信、停止、チャンネル切り替えなどの様々な制御が可能となる。
【0215】
ステップS509において、クライアントはAVTインスタンスに対してコンテンツの制御要求を実行する。例えば、再生(Play)要求、チャンネル切り替え(Seek)要求である。クライアントは、XMLデータに従った記述データを生成し、各種の制御情報をチューナコントロールインスタンス433に送信する。
【0216】
ステップS510においてクライアント側ユーザがチャンネル切り替えを行いたいと判断した場合は、ステップS511において、クライアントはチャンネル切り替え(Seek)要求をAVTインスタンスに対して発行する。この制御要求には、AVTインスタンスIDと切り替えチャンネル番号を格納する。ステップS512において、接続終了すると判断した場合は、コネクションIDを格納したコネクション終了要求をコネクションマネージャサービス431に送信する。コネクションIDは、ステップS507において、コネクションマネージャサービス431から受領したものである。
【0217】
次に、サーバ側の処理について、図16の処理フローを参照して説明する。ステップS601において、コンテンツ管理部440(図5参照)のコンテンツディレクトリサービス442は、クライアントからのコンテンツ情報取得要求を受信する。ここではチューナコンテナおよびチャンネルアイテムのコンテンツ情報の取得要求があったものとする。
【0218】
ステップS602において、コンテンツディレクトリサービス442は、クライアントに対して、チューナコンテナおよびチャンネルアイテムのコンテンツ情報を送信する。図8(a)に示すチューナコンテナ対応のコンテンツ情報および、図8(b)に示すチャンネル毎のコンテンツ情報であり、チャンネルリストURL、ファンクションID(funcID)、チャンネル情報を含む情報である。
【0219】
ステップS603において、サーバのコンテンツ配信制御部430のコネクションマネージャサービス431は、クライアントからプロトコル情報取得要求を受信する。ステップS604において、コネクションマネージャサービス431は、プロトコル情報一覧をクライアントに送信する。コネクションマネージャサービス431がクライアントに送信するプロトコル情報一覧には、ライブストリーミングデータの配信が可能であることを示す情報[internal:1.2.3.4:application/x-av-tuner-content:func-id=t01]なるプロトコル情報が含まれる。
【0220】
次に、ステップS605において、コネクションマネージャサービス431は、クライアントに、現在、サーバ400に接続されている他のクライアントに関する情報を提供する。コネクションマネージャサービス431は、図11に示すコネクション管理テーブルに基づいてコネクション情報を提供する。
【0221】
ステップS606において、コネクションマネージャサービス431はクライアントから接続準備要求(Prepare For Connection)を受信する。クライアントが、チューナを適用したライブストリーミングデータの配信を希望している場合は、先にコンテンツディレクトリサービス(CDS)442が送信したコンテンツ情報としてのチューナコンテナに対応するコンテンツ情報に含まれるファンクションID(funcID)が、接続準備要求に含まれる。
【0222】
クライアントから接続準備要求を受信したコネクションマネージャサービス431は、接続準備要求に含まれるプロトコル情報[internal:1.2.3.4:application/x-av-tuner-content:func-id=t01]に基づいて、チューナによる受信データのストリーミング配信の要求であると判断し、ステップS607において、コンテンツ対応制御部432内の1つのチューナコントロールインスタンス433をチューナコントロールインスタンスとして設定(アサイン)し、接続準備要求を送信してきたクライアントに対するコネクションIDと、チューナコントロールインスタンスとして設定(アサイン)し、AVTインスタンスの識別子(AVTインスタンスID)とのバインド処理、すなわち対応付け、図11に示すコネクション管理テーブルに対するエントリ設定を行い、ステップS608において、コネクションIDとAVTインスタンスIDをクライアントに通知する。
【0223】
ステップS609において、AVTインスタンスが、クライアントからURI(Uniform Resource Identifier)セット要求を受信すると、ステップS610において、AVTインスタンスIDとチャンネルリストURLとを、AVTインスタンスURIとしてAVTインスタンスにセットする。
【0224】
AVTインスタンスは、クライアントから指定されたAVTインスタンスIDと、チャンネルリストURLとに基づいて、自己の制御対象コンテンツおよびクライアントを識別することが可能となる。すなわち、AVTインスタンスIDを指定して各種の制御命令を送信するクライアントをAVTインスタンスに対応するクライアントとして認識し、チャンネルリストURLによって対応付けられるチューナが制御対象となる。チャンネルリストURLは、チューナコンテナの対応コンテンツであり、チャンネルリストURLをセットしたAVTインスタンスは、チューナ410の制御を実行するインスタンスとして設定されることになる。
【0225】
次にステップS611において、AVTインスタンスが、コンテンツ制御要求を受信すると、ステップS612において、チューナコントロールインスタンス433は、クライアントからの受信情報に基づくチューナ制御、例えばコンテンツ再生開始、終了、チャンネル切り替えなどの処理を実行する。チューナコントロールインスタンス433は、セットされたコンテンツURLに基づいて制御対象コンテンツを特定し、その特定された制御対象コンテンツを制御する。この場合は、コンテンツURLはチャンネルリストURLであり、チャンネルリストURLはチューナコンテナに対応するコンテンツ情報であり、チューナコントロールインスタンス433はチューナ410の制御を実行する。
【0226】
ステップS613において、チャンネル切り替え(Seek)要求を受信したと判定した場合は、ステップS614において、チューナコントロールインスタンス433はチューナ410を制御し、チューナのチャンネルを切り替える。このチャンネル切り替えの前後におけるサーバクライアント間のHTTPコネクションは、同一のURL、すなわち同じチャンネルリストURLに基づくHTTPコネクションであるため、サーバクライアント間においてはコネクションが維持されたままチャンネル切り替えが実行される。
【0227】
ステップS615において、コネクションIDを格納したコネクション終了要求をコネクションマネージャサービス431が受信したと判定した場合は、ステップS616において、クライアントからの要求に従って、サーバクライアント間のコネクションの切断を行い、さらに、図11を参照して説明したコネクション管理テーブルから対応エントリを削除する。
【0228】
なお、前述したように、サーバからクライアントに対して送信される画像または音声データを、例えばMPEG等の符号化データとした場合、クライアントから受信するチャンネル切り替えのタイミングに基づいて無条件に送信データの切り替えを実行すると、送信する符号化データパケットの不整合が発生する場合がある。例えばMPEG−2システムに規定されるパック(Pack)の構成パケットであるPES(Packetized Elementary Stream)パケットの一部を送信中に、チャンネル切り替えを実行して、送信データを変更すると、クライアントにおいてデコードする際の1つの処理単位であるパック(Pack)に欠落が発生し、再生エラーを発生させることになる。
【0229】
従って、サーバは、ステップS613において、チャンネル切り替え(Seek)要求を受信したと判定した場合は、クライアントからのチャンネル切り替え要求に基づく送信データの変更により、送信符号化データの整合性の保持が可能か否かを判定し、整合性が保持されないと判断した場合は、ステップS614のチューナコントロールインスタンス433のチューナ410の制御によるチャンネル切り替えの実行前にサーバクライアント間のデータストリーム配信用の接続コネクション、すなわち、チャンネルリストURLに基づくHTTPコネクションを切断し、クライアントに対して、イベント通知用コネクションを介して、データストリーム配信用の接続コネクションが切断されたことの通知処理を実行し、その後、ステップS614のチューナコントロールインスタンス433のチューナ410の制御によるチャンネル切り替えを実行する。
【0230】
クライアントは、サーバからコネクション切断通知を受信した場合は、再度、チャンネルリストURLに基づくHTTPコネクションを設定する処理、すなわち、チャンネルリストURLに基づくHTTP−GETメソッドをサーバに対して送信する。なお、AVTインスタンス(チューナコントロールインスタンス433)の設定状態は維持されているので、チューナコントロールインスタンス433の新たなアサイン、URIセット等の設定処理は省略可能である。
【0231】
なお、サーバは、コーデック420のデータエンコード状況を検出し、検出情報をチューナコントロールインスタンス433に入力し、チューナコントロールインスタンス433のタイミング制御の下にチューナ410のチャンネル切り替えを実行する構成としてもよく、この場合は、ステップS613における、チャンネル切り替え(Seek)要求受信後、コーデック420のデータエンコード状況の検出情報に基づいて、チューナコントロールインスタンス433が、クライアントに対して送信する符号化データの整合性を保持可能なタイミングにおいて、ステップS614のAVTインスタンス(チューナコントロールインスタンス433)のチューナ410の制御によるチャンネル切り替えを実行する。
【0232】
サーバ側でこのようなチャンネル切り替えタイミングの制御を実行することで、クライアント側でのデコードエラーの発生が防止され、クライアント側ではチャンネル切り替え前のデータおよびチャンネル切り替え後のデータ再生を正常に実行することが可能となる。
【0233】
[サーバおよびクライアントの機能構成]
サーバおよびクライアント装置のハードウェア構成については、先に図2を参照して説明した通りであり、上述した各種の処理は、サーバクライアントそれぞれの記憶部に格納されたプログラムに従って主にCPUの制御の下に実行される。上述した処理を実行するために必要となるサーバの機能構成とクライアントの機能構成について図17および図18を参照して説明する。
【0234】
図17は、サーバの主要機能構成を示すブロック図である。基本的に図5に示す構成に対応するが、図17の構成ではチューナを2つ持つ構成例を示してある。パケット送受信部701は、クライアントに対するパケット、クライアントからのパケットを受信する。パケット生成、解析部702は、送信パケットの生成処理、受信パケットの解析処理を行う。パケットのアドレス設定、アドレス認識、データ部に対するデータ格納、データ部からのデータ取得処理などである。
【0235】
チューナA703は、チューナB704は、地上波、BS、CS等の衛星放送、インターネット、その他の通信網を介するデータを受信するチューナである。
【0236】
イベント情報記憶部705は、コンテンツに対応するイベント情報を格納する。各イベント情報はイベントURLによって特定可能である。
【0237】
コーデック706は、サーバの保有するコンテンツ、チューナ受信コンテンツをクライアントからの要求に対応したデータ態様に変換する。ファイルフォーマット、コーデック、解像度等の変換を実行する。例えばATRAC3、MPEG4に基づくデータ変換を実行する。
【0238】
コンテンツ管理部710は、コンテンツ記憶部714に格納されたコンテンツの提供、メタデータ記憶部713に格納されたコンテンツ情報の提供、管理を行う。
【0239】
メタデータ記憶部713は、コンテンツに対応する属性情報としてのメタデータを格納した記憶部である。メタデータ記憶部713には、前述したように、コンテナ等の各オブジェクト対応のメタデータを構成するプロパティ情報が格納される。例えば、チューナコンテナのプロパティ情報として、チャンネルリストURLが設定される。ビデオカプセルに対してはビデオカプセルURLが設定される。
【0240】
コンテンツ記憶部714は、サーバの保有するコンテンツを格納する。上述したビデオカプセル等、コンテンツ格納オブジェクトが設定される。各コンテンツはビデオカプセルURL等のコンテンツURLによって特定可能である。
【0241】
コンテンツディレクトリサービス712は、コンテンツ管理ディレクトリに基づく、コンテンツおよびコンテンツメタデータの管理を行い、クライアントからのサーチやブラウズ要求に基づいてクライアントに提供するコンテンツ情報を生成する。
【0242】
AVトランスポート715は、クライアントからのコンテンツURLを指定したコンテンツ要求に応じてコンテンツ記憶部からコンテンツを取得しクライアントに対して送信する制御を実行する。
【0243】
コネクションマネージャサービス711は、コンテンツ管理部におけるクライアントとの接続を管理し、コンテンツ管理部において処理可能なプロトコル情報等をクライアントに提供し、クライアントからのコンテンツ要求に応じた処理を実行し、コネクション管理テーブル716にコネクションID、リソース識別子、プロトコル情報を対応付けて格納し、コネクション管理を行う。また、クライアントからの要求に応じてクライアントに提供するコネクションIDリスト、コネクション情報を生成する。
【0244】
ライブコンテンツ配信制御部720は、クライアントに対する配信コンテンツの制御を実行し、コネクションマネージャサービス721とAVトランスポート(配信制御部)722を有する。AVトランスポート(配信制御部)722には配信コンテンツに対応してAVTインスタンス723を設定し、コンテンツの配信制御を実行する。コネクションマネージャサービス721は、AVTインスタンスをアサインし、コネクションID、AVTインスタンスID、プロトコル情報を対応付けて管理するコネクション管理テーブル723を設定してコネクション管理を行う。また、クライアントからの要求に応じてクライアントに提供するコネクションIDリスト、コネクション情報を生成する。
【0245】
次に、クライアント装置の機能構成について、図18を参照して説明する。パケット送受信部801は、サーバに対するパケット、サーバからのパケットを受信する。パケット生成、解析部802は、送信パケットの生成処理、受信パケットの解析処理を行う。パケット内の格納データ解析のみならず、パケットのアドレス設定、アドレス認識、データ部に対するデータ格納、データ部からのデータ取得処理なども含む。
【0246】
記憶部803は、サーバから受信したパケットに含まれるコンテンツ情報、コンテンツ、チャンネル情報、チャンネルリストURL、ファンクションID、イベント情報、コネクションID、AVTインスタンスID等を格納する。
【0247】
出力部804は、コンテンツ再生処理に適用するスピーカ、ディスプレイを含む。なお、ディスプレイは、先に図4を参照して説明した表示情報の出力にも利用される。入力部805は、例えば、表示情報として表示されたコンテンツ情報としてのチャンネルリストの選択、チャンネル情報に基づくチャンネル選択など、ユーザの入力を実行するためのキーボード、その他のデータ入力手段である。
【0248】
コンテンツ情報解析部806は、サーバから受信したコンテンツ情報からなるXMLデータを解析し、解析データに基づいて、先に図4を参照して説明したコンテンツURL、チャンネルリストURLまたはこれらのリンクデータを含む表示情報を生成し、出力部としてのディスプレイに出力する処理を実行する。
【0249】
コンテンツ再生制御部807は、サーバから受信するコンテンツの再生制御を実行する。なお、コンテンツ再生処理おいては、必要に応じてデータ変換部808において、サーバからの受信コンテンツの変換処理を実行する。例えばATRAC3、MPEG4に基づくデータ復号処理等を実行する。
【0250】
サーバ、およびクライアントは、機能的には図17、図18に示す各機能を有し、上述した各処理を実行する。ただし、図17、図18に示すブロック図は、機能を説明するブロック図であり、実際には、図2に示すPC等のハードウェア構成におけるCPUの制御の下に各種の処理プログラムが実行される。
【0251】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
【0252】
なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【0253】
例えば、プログラムは記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
【0254】
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
【0255】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【0256】
【発明の効果】
以上、説明したように、本発明の構成では、クライアントに対してコンテンツを提供するサーバにおいて、サーバクライアント間のコネクション情報として、コネクションID、コンテンツURL等の配信コンテンツ識別子、配信制御部(AVトランスポート)識別子、およびプロトコル情報を対応付けて管理し、クライアントからの要求に基づいて、これらの情報をクライアントに提供する構成としたので、クライアントは、これらのコネクション情報に基づいた様々なコンテンツ制御要求をサーバに対して行うことが可能となる。
【0257】
本発明の構成によれば、クライアントは、ブラウズ、サーチ処理によるコンテンツ情報の取得や、ライブコンテンツの配信の事前処理として必要なAVTインスタンスの設定処理等の接続準備要求(Prepare For Connection)実行することなく、コネクションマネージャサービスから受信するコネクション情報に含まれるコンテンツ識別子(コンテンツURL)を指定情報として設定したHTTP−GETメソッドを生成し、サーバに送信することで、現在サーバが他のクライアントに配信しているコンテンツと同様のコンテンツを取得することが可能となる。
【0258】
また、本発明の構成によれば、クライアントは、コネクションマネージャサービスから受信するコネクション情報に含まれる配信制御部(AVトランスポート)識別子に基づいて、配信制御部(AVトランスポート)識別子を設定したコンテンツの制御要求、例えばチャンネルの切り替え要求を生成し、配信制御部(AVトランスポート)に要求を送信することで、チャンネル切り替えなどの制御を行うことができる。
【0259】
また、本発明の構成によれば、クライアントは、コネクションマネージャサービスから受信するコネクション情報に含まれるコネクションIDに基づいて、コネクションIDを指定したコネクション終了をサーバに要求することも可能であり、1つのクライアント装置で受信を開始したコンテンツ送信を他のクライアントにおいて、終了させることが可能となる。
【0260】
さらに、本発明の構成においては、チャンネルの集合体としてのチャンネルリストにURLを設定し、チャンネルリストURLをコンテンツ識別子としてチューナ制御インスタンスに設定したので、リスト内のチャンネル変更においては、新たなURLに基づくコンテンツ要求を行う必要がなく継続したコンテンツ配信が可能となる。
【図面の簡単な説明】
【図1】本発明の適用可能なネットワーク構成例を示す図である。
【図2】ネットワーク接続機器の構成例について説明する図である。
【図3】サーバにおけるコンテンツ管理ディレクトリ構成について説明する図である。
【図4】コンテンツ情報表示例を示す図である。
【図5】チューナ受信データのストリーミング配信処理を実行するサーバの構成を示す図である。
【図6】コンテンツデータ再生処理におけるサーバクライアント間の処理シーケンスについて説明する図である。
【図7】チューナ受信データのストリーミング配信処理を実行するサーバクライアント間の処理シーケンスについて説明する図である。
【図8】チューナコンテナおよびチャンネルアイテムに対応するコンテンツ情報について説明する図である。
【図9】チューナ受信データのストリーミング配信処理を実行するサーバクライアント間の処理シーケンス中のチャンネル切り替え処理について説明する図である。
【図10】チューナ受信データのストリーミング配信処理を実行するサーバクライアント間の処理シーケンス中のコネクション終了処理について説明する図である。
【図11】ライブコンテンツ配信制御部のコネクションマネージャサービスの保有するコネクション管理テーブルの構成データについて説明する図である。
【図12】コンテンツ管理部のコネクションマネージャサービスの保有するコネクション管理テーブルの構成データについて説明する図である。
【図13】コンテンツ管理部が記憶部に格納したコンテンツ送信処理を実行する際に行われるコネクション情報生成、格納処理シーケンスについて説明する図である。
【図14】コネクション情報を適用したサーバクライアント間の処理シーケンスを説明する図である。
【図15】クライアントの処理を説明するフローチャート図である。
【図16】サーバの処理を説明するフローチャート図である。
【図17】サーバの処理機能を説明するブロック図である。
【図18】クライアントの処理機能を説明するブロック図である。
【符号の説明】
100 ネットワーク
101 サーバ
121 PC
122 モニタ
123 携帯電話
124 再生機
125 PDA
201 CPU
202 ROM
203 RAM
204 HDD
205 バス
206 入出力インタフェース
207 入力部
208 出力部
209 通信部
210 ドライブ
211 リムーバブル記録媒体
220 チューナ
301 ルートコンテナ
302〜308 コンテナ(フォルダ)
309 ビデオカプセル
350 ディスプレイ
357 コンテンツ情報
400 サーバ
410 チューナ
420 コーデック
430 ライブコンテンツ配信制御部
431 コネクションマネージャサービス
432 AVトランスポート(配信制御部)
433 チューナコントロールインスタンス
435 コネクション管理テーブル
440 コンテンツ管理部
441 コネクションマネージャサービス
442 コンテンツディレクトリサービス
443 メタデータ記憶部
444 コンテンツ記憶部
445 AVトランスポート(配信制御部)
446 コーデック
491 ファンクションID
492 チャンネルリストURL
701 パケット送受信部
702 パケット生成、解析部
703 チューナA
704 チューナB
705 イベント情報記憶部
706 コーデック
710 コンテンツ管理部
711 コネクションマネージャサービス
712 コンテンツディレクトリサービス
713 メタデータ記憶部
714 コンテンツ記憶部
715 AVトランスポート
716 コネクション管理テーブル
720 ライブコンテンツ配信制御部
721 コネクションマージャサービス
722 AVトランスポート(配信制御部)
723 AVTインスタンス
724 コネクション管理テーブル
801 パケット送受信部
802 パケット生成、解析部
803 記憶部
804 出力部
805 入力部
806 コンテンツ情報解析部
807 コンテンツ再生制御部
808 データ変換部

Claims (6)

  1. サーバに対する配信コンテンツ制御要求を行うクライアントとしての情報処理装置であり、
    前記サーバと他クライアントとの間のコネクションに関する情報であり、少なくとも前記コネクションの識別子であるコネクションIDと、前記コネクションを介した他クライアントへの提供コンテンツの識別子であるコンテンツIDを含むコネクション情報を前記サーバから取得し、取得したコネクションID、またはコネクション情報を利用した配信コンテンツの制御要求を生成して、前記サーバに送信する処理を実行する構成を有することを特徴とする情報処理装置。
  2. 前記サーバから取得するコネクション情報は、コンテンツIDであり、
    前記サーバに送信するコンテンツ制御要求は、コンテンツIDを設定したコンテンツ取得要求であることを特徴とする請求項に記載の情報処理装置。
  3. 前記サーバから取得するコネクション情報は、前記コンテンツ配信コネクションを介したコンテンツ配信制御を実行する配信制御部の識別子であり、
    前記サーバに送信するコンテンツ制御要求は、前記配信制御部の識別子を設定した配信制御部に対する制御要求であることを特徴とする請求項に記載の情報処理装置。
  4. 前記サーバから取得する情報は、コンテンツ配信コネクション識別子であるコネクションIDであり、
    前記サーバに送信するコンテンツ制御要求は、前記コネクションIDを設定したコンテンツ配信終了要求であることを特徴とする請求項に記載の情報処理装置。
  5. サーバに対するコンテンツ制御要求を行うクライアントにおける情報処理方法であり、
    通信部において、前記サーバと他クライアントとの間のコネクションに関する情報であり、少なくとも前記コネクションの識別子であるコネクションIDと、前記コネクションを介した他クライアントへの提供コンテンツの識別子であるコンテンツIDを含むコネクション情報を前記サーバから取得する情報取得ステップと、
    データ処理部において、前記コネクションID、またはコネクション情報を利用した配信コンテンツの制御要求を生成して、前記サーバに送信する処理を実行する処理要求ステップと、
    を有することを特徴とする情報処理方法。
  6. 情報処理装置において、サーバに対するコンテンツ制御要求処理を実行させるコンピュータ・プログラムであり、
    通信部において、前記サーバと他クライアントとの間のコネクションに関する情報であり、少なくとも前記コネクションの識別子であるコネクションIDと、前記コネクションを介した他クライアントへの提供コンテンツの識別子であるコンテンツIDを含むコネクション情報を前記サーバから取得させる情報取得ステップと、
    データ処理部において、前記コネクションID、またはコネクション情報を利用した配信コンテンツの制御要求を生成して、前記サーバに送信させる処理を実行する処理要求ステップと、
    を実行させることを特徴とするコンピュータ・プログラム。
JP2003144990A 2003-05-22 2003-05-22 サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム Expired - Fee Related JP4419434B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003144990A JP4419434B2 (ja) 2003-05-22 2003-05-22 サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003144990A JP4419434B2 (ja) 2003-05-22 2003-05-22 サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム

Publications (3)

Publication Number Publication Date
JP2004348454A JP2004348454A (ja) 2004-12-09
JP2004348454A5 JP2004348454A5 (ja) 2006-06-22
JP4419434B2 true JP4419434B2 (ja) 2010-02-24

Family

ID=33532300

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003144990A Expired - Fee Related JP4419434B2 (ja) 2003-05-22 2003-05-22 サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム

Country Status (1)

Country Link
JP (1) JP4419434B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8205235B2 (en) * 2003-11-14 2012-06-19 Sharp Laboratories Of America, Inc. Systems and methods for representing a tuner device in a media server content directory service
JP4519736B2 (ja) * 2004-09-15 2010-08-04 株式会社東芝 データ伝送システム、データ伝送方法およびメディア装置
WO2006077935A1 (ja) * 2005-01-21 2006-07-27 Matsushita Electric Industrial Co., Ltd. Avサーバ機器
JPWO2006106606A1 (ja) * 2005-03-22 2008-09-11 松下電器産業株式会社 メディア管理装置及びメディア管理方法
JPWO2007091480A1 (ja) 2006-02-06 2009-07-02 パナソニック株式会社 Avサーバ機器及びコネクション管理方法
JP5300951B2 (ja) * 2011-09-29 2013-09-25 株式会社東芝 コンテンツ処理システム、サーバ装置、コンテンツ再生装置、制御方法及び制御プログラム

Also Published As

Publication number Publication date
JP2004348454A (ja) 2004-12-09

Similar Documents

Publication Publication Date Title
US8135844B2 (en) Content providing server, information processing device and method, and computer program
US7523214B2 (en) Content providing server, information processing device and method, and computer program
US7996538B2 (en) Information processing apparatus and content information processing method for transmitting content and event information to a client
EP2663027B1 (en) Apparatus and method for sharing a bookmark with other user in a home network
US20060200534A1 (en) Multi-medium information sharing system
US9229937B2 (en) Apparatus and method for managing digital contents distributed over network
JP2004362099A (ja) サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP2009296625A (ja) 家庭用通信網の認証済み操作のための方法および機器
KR20050104358A (ko) 정보 처리 장치, 콘텐츠 관리 방법, 콘텐츠 정보 관리 방법및 컴퓨터 프로그램
JP2006318469A (ja) ウェブサービス技術を支援するa/vネットワークにおけるコンテンツサービスの提供方法および装置
JP2004348455A (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
US20110060841A1 (en) Method and apparatus for providing streaming information in a broadcast system
JP4419434B2 (ja) サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP2005020180A (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP2004350043A (ja) サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
US8082326B2 (en) Server and server program
KR100674085B1 (ko) 홈네트워크에서의 미디어포맷/전송프로토콜 변환 장치 및 그 방법
JP4808122B2 (ja) 内部ネットワーク上の内部端末に外部ネットワーク上の外部サーバからコンテンツを取得して送信する方法、内部サーバ、及び外部サーバ
JP5588008B2 (ja) コンテンツ変換装置、コンテンツ変換方法、コンテンツ変換プログラムおよびコンテンツ配信システム
US20140012955A1 (en) Communication System, Communication Device, And Communication Method
JP2017050870A (ja) Dlna dmsサービスを使用してチャンネルをリモートからチューニングするための方法および装置
KR20120072100A (ko) 웹 콘텐트 서비스와 홈네트워크의 연동을 위한 웹 미디어 제어 장치 및 그 방법
JP2004312414A (ja) コンテンツ記録サーバ、コンテンツ記録方法、並びにコンピュータ・プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060426

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060426

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081120

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090202

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090811

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090918

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20091110

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091123

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121211

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4419434

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121211

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131211

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees