【文献】
Sun-Mi Jun et al.,Controlling Non IP Bluetooth Devices in UPnP Home Network,The 6th International Conference on Advanced Communication Technology 2004 PROCEEDINGS,2004年 2月,Volume II,p.714-718,URL,http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=1292963
(58)【調査した分野】(Int.Cl.,DB名)
再生されたコンテンツから前記コンテンツの特徴を表すシグニチャデータを抽出し、抽出した前記シグニチャデータを少なくとも含むクエリを生成して識別サーバに送信し、前記クエリに応じて前記識別サーバから返信された、前記再生されたコンテンツの識別結果を表すレスポンスを受信する識別依頼処理部を
さらに備え、
前記公開部は、前記端末装置から前記識別依頼処理部を動作させるためのコマンドも前記端末装置に公開する
請求項2に記載の情報処理装置。
前記コマンド取得部は、前記コンテンツ表示装置が公開した、UPnPの規定を拡張したデバイスディスクリプションに直接記述されている前記コマンドのURLを取得する
請求項11に記載の情報処理装置。
前記コンテンツ表示装置は、再生されたコンテンツから前記コンテンツの特徴を表すシグニチャデータを抽出し、抽出した前記シグニチャデータを少なくとも含むクエリを生成して識別サーバに送信し、前記クエリに応じて前記識別サーバから返信された、前記再生されたコンテンツの識別結果を表すレスポンスを受信する識別依頼処理部を備え、
前記コマンド取得部は、前記コンテンツ表示装置の前記識別依頼処理部を動作させるためのコマンドも前記コンテンツ表示装置から取得し、前記コマンドを呼び出すことにより前記コンテンツ表示装置から転送される前記レスポンスを受信し、
前記連動アプリケーション実行部は、受信された前記レスポンスに含まれる、識別された前記コンテンツに対応する関連メタデータに基づいて、前記連動アプリケーションを取得して実行する
請求項11に記載の情報処理装置。
【発明の概要】
【発明が解決しようとする課題】
【0011】
ところで、上述したように米国においてはCATVやIPTV等の普及により、TV受像機がCATVやIPTV等のセットトップボックス等の外部装置の表示出力デバイスとして位置づけられている。
【0012】
このため、ユーザはTV受像機のリモートコントローラ(以下、リモコンと略称する)を操作する機会がほとんどなく、該外部装置のリモコンを操作することが多い。よって、TV受像機のリモコンによって操作することになる、コンテンツ再生装置としてのTV受像機において起動された連動アプリに対する操作は、ユーザにとって使い勝手がよいものとはならない可能性がある。
【0013】
したがって、ユーザの利便性を考慮し、ACRクライアントが搭載されたコンテンツ再生装置(TV受像機等)とは異なるセカンドスクリーンデバイスにて、コンテンツ再生装置で視聴中のコンテンツに関するメタデータを表示したり、連動アプリを実行させたりしたいという要求が発生してきている。
【0014】
ここで、セカンドスクリーンデバイスとしては、例えばタブレット型端末、スレートPC、スマートフォン等を挙げることができる。
【0015】
また、昨今においては、セカンドスクリーンデバイスにて起動した所定のアプリケーションプログラムにより該外部装置を操作できるもの、すなわち、セカンドスクリーンデバイスを該外部装置のリモコンとして利用できるものが存在する。よって、コンテンツ再生装置やその外部装置に対する操作入力デバイスをセカンドスクリーンデバイスに集約するという観点においても上記要求の実現が望まれる。
【0016】
またさらに、主に米国においては、コンテンツ再生装置としてのTV受像機等の画面が50乃至60インチよりも大型化される傾向にあり、該大型化された画面に同時に異なる複数のコンテンツを表示させて視聴する利用形態が徐々に一般化し始めている。したがって、そのような大型画面を有するTV受像機等にACRクライアントを内蔵させ、セカンドスクリーンデバイスと連携させる利用形態についても考慮する必要がある。以下、大型画面を有し、同時に異なる複数のコンテンツを表示できるTV受像機等を、マルチウィンドウスクリーンデバイスと称する。
【0017】
図1は、ACRクライアントを内蔵させたマルチウィンドウスクリーンデバイスとセカンド(2nd)スクリーンデバイスとを連携させてACRサービスを利用する想定し、それらをユーザ宅等に配置した場合の空間概略図である。
【0018】
同図においては、ユーザの正面にマルチウィンドウスクリーンデバイス1−1が設置され、左側壁にマルチスクリーンデバイス1−2が設置されている。ユーザの傍には、セカンドスクリーンデバイス3が配置されている。
【0019】
マルチウィンドウスクリーンデバイス1−1には、画面上に複数(
図1の場合、3)のウィンドウを設けることができ、各ウィンドウには同時にそれぞれ異なるコンテンツ(同一のものも可能)を表示させることができる。以下、例えば、ウィンドウAに表示されているコンテンツをコンテンツAと称する。他のウィンドウに表示されているコンテンツについても同様とする。
【0020】
また、マルチウィンドウスクリーンデバイス1−1は、ACRサービスを利用することにより、各ウィンドウに表示されているコンテンツの識別結果等を含むACRレスポンスをセカンドスクリーンデバイス3に転送できる。
【0021】
マルチウィンドウスクリーンデバイス1−2についても、マルチウィンドウスクリーンデバイス1−1と同様である。ただし、
図1においてマルチウィンドウスクリーンデバイス1−2は、その画面上にウィンドウXだけを設けてコンテンツXを表示している状態である。
【0022】
セカンドスクリーンデバイス3では、マルチウィンドウスクリーンデバイス1−1やマルチウィンドウスクリーンデバイス1−2の各ウィンドウに表示されているコンテンツに対応するメタデータや、該コンテンツの進行に合わせた連動アプリを起動して同時に表示することができる。
【0023】
図1の場合、セカンドスクリーンデバイス3は、ウィンドウAのコンテンツAに対する連動アプリAと、ウィンドウCのコンテンツCに対する連動アプリCと、ウィンドウXのコンテンツXに対するメタデータXとが同時に表示されている状態である。
【0024】
図1に示された利用形態を想定した場合、ユーザはセカンドスクリーンデバイス3の画面に表示されている各情報(連動アプリの映像やメタデータ)が、マルチウィンドウスクリーンデバイス1−1,1−2のいずれのウィンドウに表示されているコンテンツに対応するものであるのかを速やかに把握できない可能性がある。
【0025】
したがって、マルチウィンドウスクリーンデバイス1−1,1−2の各ウィンドウに同時に表示され得る複数のコンテンツと、セカンドスクリーンデバイス3に表示され得る複数の情報(連動アプリの映像やメタデータ)との対応関係を、ユーザが速やかに把握できる仕組みが必要である。
【0026】
本開示はこのような状況に鑑みてなされたものであり、同時に表示され得る複数のコンテンツと、別途表示される情報との対応関係を、ユーザが速やかに把握できるようにするものである。
【課題を解決するための手段】
【0027】
本開示の第1の側面である情報処理装置は、端末装置とともにホームネットワークシステムを構成する情報処理装置において、画面上に設けられたウィンドウであって、再生されたコンテンツを表示させるための前記ウィンドウに対して枠視覚属性を設定する枠視覚属性設定部と、前記ウィンドウに対して設定されている前記枠視覚属性の通知を前記端末装置から要求するためのコマンドを前記端末装置に公開する公開部と、前記端末装置からの前記コマンドの呼び出しに応じて、前記ウィンドウの前記枠視覚属性を前記端末装置に通知する通知部とを備える。
【0028】
前記
枠視覚属性設定部は、画面上に設けた複数の前記ウィンドウであって、異なる複数の前記コンテンツをそれぞれ表示させるための前記複数のウィンドウに対して、それぞれ異なる前記枠視覚属性を設定し、前記公開部は、複数の前記ウィンドウぞれぞれの枠視覚属性の通知を前記端末装置から要求するためのコマンドを前記端末装置に公開することができる。
【0029】
前記枠視覚属性設定部は、前記端末装置からの前記コマンドを利用したリクエストに応じて、前記ウィンドウの前記枠視覚属性を変更することができる。
【0030】
前記公開部は、UPnPの規定を拡張した
デバイスディスクリプションに、前記コマンドのURLを直接記述して前記端末装置に公開することができる。
【0031】
前記コマンドは、WebAPIとすることができる。
【0032】
前記公開部は、
ホームネットワーク上にNotifyメッセージをマルチキャスト配信し、前記Notifyメッセージに基づく前記端末装置からのアクセスに応じて
デバイスディスクリプションを前記端末装置に公開することができる。
【0033】
前記公開部は、前記端末装置からのM-Searchに応じて
デバイスディスクリプションを前記端末装置に公開することができる。
【0034】
本開示の第1の側面である情報処理装置は、再生されたコンテンツから前記コンテンツの特徴を表すシグニチャデータを抽出し、抽出した前記シグニチャデータを少なくとも含むクエリを生成して識別サーバに送信し、前記クエリに応じて前記識別サーバから返信された、前記再生されたコンテンツの識別結果を表すレスポンスを受信する識別依頼処理部をさらに備えることができ、前記公開部は、前記端末装置から前記識別依頼処理部を動作させるためのコマンドも前記端末装置に公開することができる。
【0035】
本開示の第1の側面である情報処理方法は、端末装置とともにホームネットワークシステムを構成する情報処理装置の情報処理方法において、前記情報処理装置による、画面上に設けられたウィンドウであって、再生されたコンテンツを表示させるための前記ウィンドウに対して枠視覚属性を設定する枠視覚属性設定ステップと、前記ウィンドウに対して設定されている前記枠視覚属性の通知を前記端末装置から要求するためのコマンドを前記端末装置に公開する公開ステップと、前記端末装置からの前記コマンドの呼び出しに応じて、前記ウィンドウの前記枠視覚属性を前記端末装置に通知する通知ステップとを含む。
【0036】
本開示の第1の側面であるプログラムは、端末装置とともにホームネットワークシステムを構成するコンピュータを、画面上に設けられたウィンドウであって、再生されたコンテンツを表示させるための前記ウィンドウに対して枠視覚属性を設定する枠視覚属性設定部と、前記ウィンドウに対して設定されている前記枠視覚属性の通知を前記端末装置から要求するためのコマンドを前記端末装置に公開する公開部と、前記端末装置からの前記コマンドの呼び出しに応じて、前記ウィンドウの前記枠視覚属性を前記端末装置に通知する通知部として機能させる。
【0037】
本開示の第1の側面においては、画面上に設けられたウィンドウであって、再生されたコンテンツを表示させるための前記ウィンドウに対して枠視覚属性が設定され、前記ウィンドウに対して設定されている前記枠視覚属性の通知を端末装置から要求するためのコマンドが前記端末装置に公開され、前記端末装置からの前記コマンドの呼び出しに応じて、前記ウィンドウの前記枠視覚属性が前記端末装置に通知される。
【0038】
本開示の第2の側面である情報処理装置は、画面上に設けられたウィンドウにコンテンツを表示させるコンテンツ表示装置とともにホームネットワークシステムを構成する情報処理装置において、前記コンテンツ表示装置の画面上に設けられた前記ウィンドウであって、再生されたコンテンツを表示させるための前記ウィンドウに対して設定されている枠視覚属性の通知を要求するためのコマンドを前記コンテンツ表示装置から取得し、前記コマンドを呼び出すことにより前記枠視覚属性の通知を受信するコマンド取得部と、前記コンテンツ表示装置の画面上に設けられた前記ウィンドウに表示されている前記コンテンツの進行に合わせて実行すべき連動アプリケーションを取得して実行する連動アプリケーション実行部と、前記連動アプリケーションによる画像を表示させる枠に対して、通知された前記枠視覚属性と同じ設定を行う枠表示制御部とを備える。
【0039】
前記コマンド取得部は、前記コンテンツ表示装置が公開した、UPnPの規定を拡張したデバイスディスクリプションに直接記述されている前記コマンドのURLを取得することができる。
【0040】
前記コマンドは、WebAPIとすることができる。
【0041】
前記コマンド取得部は、前記コンテンツ表示装置が
ホームネットワーク上にマルチキャスト配信したNotifyメッセージに基づき、前記コンテンツ表示装置から
デバイスディスクリプションを取得することができる。
【0042】
前記コマンド取得部は、M-Searchにより検索した前記コンテンツ表示装置から供給される
デバイスディスクリプションを取得することができる。
【0043】
前記コンテンツ表示装置は、再生されたコンテンツから前記コンテンツの特徴を表すシグニチャデータを抽出し、抽出した前記シグニチャデータを少なくとも含むクエリを生成して識別サーバに送信し、前記クエリに応じて前記識別サーバから返信された、前記再生されたコンテンツの識別結果を表すレスポンスを受信する識別依頼処理部を備え、前記コマンド取得部は、前記コンテンツ表示装置の前記識別依頼処理部を動作させるためのコマンドも前記コンテンツ表示装置から取得し、前記コマンドを呼び出すことにより前記コンテンツ表示装置から転送される前記レスポンスを受信し、前記連動アプリケーション実行部は、受信された前記レスポンスに含まれる、識別された前記コンテンツに対応する関連メタデータに基づいて、前記連動アプリケーションを取得して実行することができる。
【0044】
本開示の第2の側面である情報処理方法は、画面上に設けられたウィンドウにコンテンツを表示させるコンテンツ表示装置とともにホームネットワークシステムを構成する情報処理装置の情報処理方法において、前記情報処理装置による、前記コンテンツ表示装置の画面上に設けられた前記ウィンドウであって、再生されたコンテンツを表示させるための前記ウィンドウに対して設定されている枠視覚属性の通知を要求するためのコマンドを前記コンテンツ表示装置から取得する取得ステップと、前記コマンドを呼び出すことにより前記枠視覚属性の通知を受信する受信ステップと、前記コンテンツ表示装置の画面上に設けられた前記ウィンドウに表示されている前記コンテンツの進行に合わせて実行すべき連動アプリケーションを取得して実行する連動アプリケーション実行ステップと、前記連動アプリケーションによる画像を表示させる枠に対して、通知された前記枠視覚属性と同じ設定を行う枠表示制御ステップとを含む。
【0045】
本開示の第2の側面であるプログラムは、画面上に設けられたウィンドウにコンテンツを表示させるコンテンツ表示装置とともにホームネットワークシステムを構成するコンピュータを、前記コンテンツ表示装置の画面上に設けられた前記ウィンドウであって、再生されたコンテンツを表示させるための前記ウィンドウに対して設定されている枠視覚属性の通知を要求するためのコマンドを前記コンテンツ表示装置から取得し、前記コマンドを呼び出すことにより前記枠視覚属性の通知を受信するコマンド取得部と、前記コンテンツ表示装置の画面上に設けられた前記ウィンドウに表示されている前記コンテンツの進行に合わせて実行すべき連動アプリケーションを取得して実行する連動アプリケーション実行部と、前記連動アプリケーションによる画像を表示させる枠に対して、通知された前記枠視覚属性と同じ設定を行う枠表示制御部として機能させる。
【0046】
本開示の第2の側面においては、コンテンツ表示装置の画面上に設けられたウィンドウであって、再生されたコンテンツを表示させるための前記ウィンドウに対して設定されている枠視覚属性の通知を要求するためのコマンドが前記コンテンツ表示装置から取得され、前記コマンドを呼び出すことにより前記枠視覚属性の通知を受信し、前記コンテンツ表示装置の画面上に設けられた前記ウィンドウに表示されている前記コンテンツの進行に合わせて実行すべき連動アプリケーションが取得されて実行される。その際、前記連動アプリケーションによる画像を表示させる枠に対して、通知された前記枠視覚属性と同じ設定が行われる。
【0047】
本開示の第3の側面である情報処理方法は、コンテンツ表示装置と端末装置とを有するホームネットワークシステムの情報処理方法において、前記コンテンツ表示装置による、画面上に設けられたウィンドウであって、再生されたコンテンツを表示させるための前記ウィンドウに対して枠視覚属性を設定する枠視覚属性設定ステップと、前記コンテンツ表示装置による、前記ウィンドウに対して設定されている前記枠視覚属性の通知を前記端末装置から要求するためのコマンドを前記端末装置に公開する公開ステップと、前記端末装置による、公開された前記コマンドを取得する取得ステップと、前記コンテンツ表示装置による、前記端末装置による前記コマンドの呼び出しに応じて、前記ウィンドウの前記枠視覚属性を前記端末装置に通知する通知ステップと、前記端末装置による、前記コンテンツ表示装置の画面上に設けられた前記ウィンドウに表示されている前記コンテンツの進行に合わせて実行すべき連動アプリケーションを取得して実行する連動アプリケーション実行ステップと、前記端末装置による、前記連動アプリケーションによる画像を表示させる枠に対して、通知された前記枠視覚属性と同じ設定を行う枠表示制御ステップとを含む。
【0048】
本開示の第3の側面においては、コンテンツ表示装置により、画面上に設けられたウィンドウであって、再生されたコンテンツを表示させるための前記ウィンドウに対して枠視覚属性が設定され、ウィンドウに対して設定されている前記枠視覚属性の通知を前記端末装置から要求するためのコマンドが前記端末装置に公開される。一方、前記端末装置により、公開された前記コマンドが取得される。さらに、前記コンテンツ表示装置により、前記端末装置による前記コマンドの呼び出しに応じて、前記ウィンドウの前記枠視覚属性が前記端末装置に通知され、前記端末装置により、前記コンテンツ表示装置の画面上に設けられた前記ウィンドウに表示されている前記コンテンツの進行に合わせて実行すべき連動アプリケーションが取得されて実行され、その際、前記連動アプリケーションによる画像を表示させる枠に対して、通知された前記枠視覚属性と同じ設定が行われる。
【発明の効果】
【0049】
本開示の第1の側面によれば、コンテンツを表示させるウィンドウに対して設定した枠視覚属性を端末装置に通知することができる。
【0050】
本開示の第2の側面によれば、コンテンツの進行に合わせて実行すべき連動アプリケーションによる画像を表示させる枠に対して、コンテンツ表示装置にてコンテンツを表示させるウィンドウに対して設定された枠視覚属性と同じ設定を行なうことができる。
【0051】
本開示の第3の側面によれば、コンテンツ表示装置においてコンテンツを表示させるウィンドウと、端末装置において該コンテンツの進行に合わせて実行すべき連動アプリケーションによる画像を表示させる枠とに対して、共通の枠視覚属性を設定できる。
【発明を実施するための形態】
【0053】
以下、本開示を実施するための最良の形態(以下、実施の形態と称する)について、図面を参照しながら詳細に説明する。
[ACRサービス活用システムの概要]
図2は、本開示の実施の形態であるACRサービス活用システムの概要を示している。該ACRサービス活用システムは、ACRクライアントを内蔵させたマルチウィンドウスクリーンデバイス40−1,40−2とセカンドスクリーンデバイス50とを有し、これらを連携させてACRサービスを利用するものである。
【0054】
同図においては、ユーザの正面にマルチウィンドウスクリーンデバイス40−1が設置され、左側壁にマルチスクリーンデバイス40−2が設置されている。ユーザの傍には、セカンドスクリーンデバイス50が配置されている。
【0055】
マルチウィンドウスクリーンデバイス40−1には、画面上に複数(
図2の場合、3)のウィンドウを設けることができ、各ウィンドウには同時にそれぞれ異なるコンテンツ(同一のものも可能)を表示させることができる。以下、例えば、ウィンドウAに表示されているコンテンツをコンテンツAと称する。他のウィンドウに表示されているコンテンツについても同様とする。
【0056】
また、マルチウィンドウスクリーンデバイス40−1は、ACRサービスを利用することにより、各ウィンドウに表示されているコンテンツの識別結果等を含むACRレスポンスをセカンドスクリーンデバイス50に転送できる。
【0057】
さらに、マルチウィンドウスクリーンデバイス40−1は、各ウィンドウの枠に、他のウィンドウ(マルチウィンドウスクリーンデバイス40−2のウィンドウも含む)の枠と視覚的に区別可能な属性(以下、枠視覚属性と称する)を持たせることができる。
【0058】
枠視覚属性としては、CSS(Cascading Style Sheets)にて設定、変更が可能な枠線の色、太さ、線種、3D表示の深度等を挙げることができる。
図2の場合では、各ウィンドウの枠の線種を他のウィンドウの枠と異なるものに設定しており、ウィンドウAの枠は一点鎖線、ウィンドウBの枠は実線、ウィンドウCの枠は点線に設定されている。
【0059】
マルチウィンドウスクリーンデバイス40−2についても、マルチウィンドウスクリーンデバイス40−1と同様である。ただし、
図2においてマルチウィンドウスクリーンデバイス40−2は、その画面上にウィンドウXだけを設け、その枠は二点鎖線とされてコンテンツXを表示している状態である。
【0060】
セカンドスクリーンデバイス50では、マルチウィンドウスクリーンデバイス40−1,40−2の各ウィンドウに表示されているコンテンツに対応するメタデータや、該コンテンツの進行に合わせた連動アプリを起動して表示することができる。
【0061】
さらに、セカンドスクリーンデバイス50では、表示する各情報(コンテンツに対応するメタデータ、連動アプリの画面)に枠を設け、該枠に対して、対応するコンテンツを表示しているウィンドウの枠と同様の枠視覚属性を設定することができる。
【0062】
すなわち、
図2の場合、セカンドスクリーンデバイス50は、ウィンドウAのコンテンツAに対する連動アプリAを一点鎖線の枠内に、ウィンドウCのコンテンツCに対する連動アプリCを点線の枠内に、ウィンドウXのコンテンツXに対するメタデータXを二点鎖線の枠内に同時に表示されている状態である。なお、これらの情報を同時に表示するものではなく、切替えて表示する場合においても、その枠に対して、対応するコンテンツを表示しているウィンドウの枠と同様の枠視覚属性を設定することができる。
【0063】
[ACRサービス活用システムの構成例]
図3は、本開示の実施の形態であるACRサービス活用システムの構成例を示している。
【0064】
このACRサービス活用システム10は、大型画面を有するTV受像機等のマルチウィンドウスクリーンデバイス40−1,40−2の画面に同時に表示されている1以上のコンテンツをそれぞれ識別し、各コンテンツに関するメタデータをセカンド(2nd)スクリーンデバイス50にてユーザに提示したり、該コンテンツの進行に合わせて連動アプリケーションを実行したりするものである。以下、マルチウィンドウスクリーンデバイス40−1,40−2を個々に区別する必要がない場合、単にマルチウィンドウスクリーンデバイス40と称する。
【0065】
ここで、コンテンツとは、放送中の番組に限られない。例えば、マルチウィンドウスクリーンデバイス40に接続されたビデオレコーダ等の外部装置により録画、再生された番組、パッケージメディアから再生された映画等の映像、インターネット等を介してダウンロードした動画、楽曲等のあらゆるAVコンテンツが含まれる。また、番組間や番組の途中等に挿入されるコマーシャルメッセージ(以下、CMと称する)もコンテンツに含まれる。
【0066】
コンテンツの識別には、視聴しているコンテンツから周期的に抽出する、該コンテンツの特徴を表すシグニチャデータ(例えば、ウォータマーク、フィンガプリント等)と、予めデータベースに登録されているコンテンツのシグニチャデータとを比較することにより、コンテンツを識別するACRサービスが利用される。
【0067】
ACRサービス活用システム10は、コンテンツやそれに対応する連動アプリ等を供給する側のプロバイダシステム20と、コンテンツを視聴したり連動アプリを利用したりするユーザ側のホームネットワークシステム30とにより構成される。
【0068】
プロバイダシステム20とホームネットワークシステム30とは、放送網11および双方向通信網12を介して接続される。ここで、放送網11には、TV放送網、CATV網、IPTV網等が含まれる。双方向通信網12はインターネットに代表されるIP通信網を指す。
【0069】
なお、
図3において、ホームネットワークシステム30に属するマルチウィンドウスクリーンデバイス40−2とプロバイダシステム20との放送網11および双方向通信網12を介するラインは省略されている。
【0070】
[プロバイダシステム20の説明]
プロバイダシステム20は、コンテンツサーバ21、メタデータサーバ22、アプリケーションサーバ23、およびACRサーバ24から構成される。
【0071】
コンテンツサーバ21は、番組やCM等のコンテンツを、放送網11を介して放送する。また、コンテンツサーバ21は、放送するコンテンツをACRサーバ24に供給する。なお、コンテンツを供給する代わりに、コンテンツ識別子と、該コンテンツから予め抽出したシグニチャデータをACRサーバ24に供給するようにしてもよい。
【0072】
メタデータサーバ22は、コンテンツサーバ21から放送されるコンテンツに対応するメタデータをACRサーバ24に供給する。メタデータには、該コンテンツに関する各種の情報や該コンテンツの進行に合わせて実行させる連動アプリケーションを表す識別子、該連動アプリケーションにて用いるデータ等が含まれる。
【0073】
アプリケーションサーバ23は、ホームネットワークシステム30のセカンドスクリーンデバイス50からの要求に応じ、双方向通信網12を介してアプリケーションや該アプリケーションにて利用するデータを供給する。
【0074】
ACRサーバ24は、ホームネットワークシステム30のマルチウィンドウスクリーンデバイス40で視聴され得る様々なコンテンツのそれぞれから所定のサンプリング周期で抽出されたシグニチャデータに、コンテンツ識別子、アプリケーション識別子等を対応付けたACRリファレンスデータを予め生成し、データベース化して保持している。ACRサーバ24は、ACRリファレンスデータのデータベースに基づいて、マルチウィンドウスクリーンデバイス40のACRクライアント42A乃至42Cから送信されるACRクエリに応じてACRレスポンスを生成、返信する。
【0075】
なお、プロバイダシステム20を構成するコンテンツサーバ21、メタデータサーバ22、アプリケーションサーバ23、およびACRサーバ24は、一箇所に集中して配置してもよいし、分散して配置してもよい。また、これらのうちのいくつかを適宜組み合わせて構成するようにしてもよい。さらに、これらはそれぞれ複数存在してもよい。
【0076】
[ホームネットワークシステム30の説明]
ホームネットワークシステム30は、大型画面を有するTV受像機等のマルチウィンドウスクリーンデバイス40と、タブレット型端末、スレートPC、スマートフォン等のセカンドスクリーンデバイス50から成る。マルチウィンドウスクリーンデバイス40とセカンドスクリーンデバイス50とは、例えば無線LAN等により接続されているものとする。
【0077】
なお、マルチウィンドウスクリーンデバイス40およびセカンドスクリーンデバイス50は、ホームネットワークシステム30内にそれぞれ複数存在してもよい。
【0078】
マルチウィンドウスクリーンデバイス40は、その画面に複数のウィンドウを設け、各ウィンドウに同時に異なるコンテンツを表示して、ユーザに視聴させるためのものであり、コンテンツレンダラ41、ACRクライアント42、UPnP(Universal Plug and Play)サーバ43、ローカルWebサーバ44、およびウィドウマネージャ45を有する。コンテンツレンダラ41およびACRクライアント42のそれぞれは、該マルチウィンドウスクリーンデバイス40が設定可能なウィンドウの数と同数だけ搭載されている。
【0079】
本実施の形態において、マルチウィンドウスクリーンデバイス40は、その画面に3つウィンドウA,B,Cを設けることができるものとする。この場合、それに対応して3つのコンテンツレンダラ41A,41B,41Cと、3つのACRクライアント42A,42B,42Cが搭載されているものとする。設定可能なウィンドウなどの数は3に限定されるものではない。以下、コンテンツレンダラ41A,41B,41Cを個々に区別する必要がない場合、単にコンテンツレンダラ41と称する。ACRクライアント42A,42B,42Cについても同様とする。
【0080】
コンテンツレンダラ41Aは、マルチウィンドウスクリーンデバイス40の画面上のウィンドウAに表示される全てのコンテンツを取得、分岐してACRクライアント42Aに供給する。すなわち、コンテンツレンダラ41Aは、コンテンツサーバ21から放送されるコンテンツのみならず、マルチウィンドウスクリーンデバイス40の各種入力端子(HDMI(登録商標)端子等)を介して入力されるコンテンツも取得、分岐してACRクライアント42Aに供給する。コンテンツレンダラ41B,41Cについても同様である。
【0081】
ACRクライアント42Aは、コンテンツレンダラ41Aより入力されるコンテンツから、当該コンテンツの特徴を表すシグニチャデータを所定のサンプリング周期で抽出する。ここで、シグニチャデータの抽出方式は、プロバイダシステム20のACRサーバ24と同じ抽出方式(後述)を用いることとする。
【0082】
また、ACRクライアント42Aは、抽出したシグニチャデータを含むACRクエリを生成し、双方向通信網12を介してプロバイダシステム20のACRサーバ24に送信する。また、ACRクライアント42Aは、送信したACRクエリに応じてACRサーバ24から返信されるACRレスポンスを受信して保持する。ACRクライアント42B,42Cについても同様である。
【0083】
UPnPサーバ43は、マルチウィンドウスクリーンデバイス40とともにホームネットワークシステム30を構成している他のデバイス(いまの場合、セカンドスクリーンデバイス50)に対して、自身が実装されているマルチウィンドウスクリーンデバイス40の機能(いまの場合、ACRクライアント42によりACRサービスを利用すること)を呼び出すためのWebAPI(Application Program Interface)の詳細を周知するものである。具体的には、一般的なUPnPサーバが提供する基本プロトコル上に新たにプロトコルを定義し、これを用いて周知を行なう(詳細後述)。
【0084】
ローカルWebサーバ44は、マルチウィンドウスクリーンデバイス40とともにホームネットワークシステム30を構成している他のデバイス(いまの場合、セカンドスクリーンデバイス50)に対して、自身が実装されているマルチウィンドウスクリーンデバイス40の機能(いまの場合、いまの場合、ACRクライアント42によりACRサービスを利用すること)を利用させる。具体的には、UPnPサーバ43が通知したWebAPIが呼び出されたことに応じてACRクライアント42を制御し、ACRサービスを利用させ、ACRサーバ24から返信されるACRレスポンスをセカンドスクリーンデバイス50に転送する。
【0085】
ウィドウマネージャ45は、マルチウィンドウスクリーンデバイス40の画面上に設けられたウィンドウの枠の表示を制御する。
【0086】
セカンドスクリーンデバイス50は、本実施の形態おいては主にマルチウィンドウスクリーンデバイス40にて視聴されているコンテンツのメタデータをユーザに提示したり、該コンテンツの進行に合わせて連動アプリを実行したりするものであり、複数のACRアプリ51、それと同数の連動アプリマネージャ52、およびウィンドウマネージャ53を有する。
【0087】
本実施の形態においては、セカンドスクリーンデバイス50は、3つのACRアプリ51a,51b,51cと3つの連動アプリマネージャ52a,52b,52cを有するものとする。ただし、これらの数は3に限定されるものではない。以下、ACRアプリ51a,51b,51cを個々に区別する必要がない場合、単にACRアプリ51と称する。連動アプリマネージャ52a,52b,52cについても同様とする。
【0088】
ACRアプリ51は、セカンドスクリーンデバイス50に予めインストールされており、マルチウィンドウスクリーンデバイス40と連携してACRサービスを利用するときに起動される。ACRアプリ51は、ACRサービスを利用する機能を読み出すためのWebAPIをUPnPサーバ43から取得し、該WebAPIを呼び出すことにより、ACRクライアント42が受信したACRサーバ24からのACRレスポンスを、ローカルWebサーバ44を介して取得する。さらに、ACRアプリ51は、取得したACRレスポンスを解析し、解析結果を連動アプリマネージャ52に通知する。
【0089】
連動アプリマネージャ52は、ACRアプリ51からの通知に従い、ACRレスポンスに含まれていたメタデータをユーザに提示したり、マルチウィンドウィンドウスクリーンデバイス40にて視聴中のコンテンツに対応する連動アプリを、双方向通信網12を介してアプリケーションサーバ23から取得して実行したりする。なお、連動アプリマネージャ52には、Webブラウザを用いることができる。
【0090】
ウィンドウマネージャ53は、各連動アプリマネージャ52により表示される情報(メタデータや連動アプリの画面)を表示する枠に対して、対応するコンテンツを表示しているマルチウィンドウスクリーンデバイス40のウィンドウの枠視覚属性と同じ設定を行なう。
【0091】
[ACRサーバ24の詳細な構成例]
図4は、プロバイダシステム20に含まれるACRサーバ24の詳細な構成例を示している。
【0092】
ACRサーバ24は、コンテンツ取得部61、シグニチャ抽出部62、ACRデータベース(DB)63、ACRレスポンス生成部64、および通信部65から構成される。
【0093】
コンテンツ取得部61は、コンテンツサーバ21が放送網11を介して放送する予定のコンテンツやマルチウィンドウスクリーンデバイス40で視聴され得る様々なコンテンツを、コンテンツサーバ21等から取得し、取得したコンテンツをシグニチャ抽出部62に供給する。シグニチャ抽出部62は、コンテンツ取得部61から供給されるコンテンツから、その特徴を表すシグニチャデータを所定の抽出方式を用い、所定のサンプリング周期で抽出してACRデータベース63に出力する。
【0094】
シグニチャ抽出部62におけるシグニチャデータの抽出方式は、既存の任意の手法を適用することができる。例えば、コンテンツに予め埋め込まれているウォータマークを抽出してシグニチャデータとしたり、フィンガプリントを算出し、それをシグニチャデータとしたりするようにしてもよい。
【0095】
シグニチャデータとしてフィンガプリントを用いることにより、コンテンツの解像度、アスペクト比、ビットレート、符号化フォーマット等が変換されたとしても、変換前と変換後とで同一のシグニチャデータを得ることができる。したがって、このシグニチャデータに基づいてコンテンツの識別を行った場合の識別精度を上げることができる。
【0096】
なお、ACRサーバ24が複数存在する場合、それぞれのシグニチャ抽出部62におけるシグニチャデータの抽出方式は必ずしも統一する必要はなく、ACRサーバ24ごとに任意の抽出方式を採用することができる。
【0097】
ACRデータベース63は、シグニチャ抽出部62から入力される各シグニチャデータに対してその抽出元のコンテンツを表すコンテンツ識別子等を対応付けたACRリファレンスデータを生成して記憶する。これにより、コンテンツから抽出されたシグニチャデータがデータベース化される。ACRリファレンスデータのデータ構造については
図4を参照して後述する。
【0098】
ACRレスポンス生成部64は、ACRデータベース63を参照することにより、ACRクライアント42から送信されるACRクエリに含まれるシグニチャデータの抽出元のコンテンツを識別する。さらに、ACRレスポンス生成部64は、識別結果としてのコンテンツ識別子、関連メタデータ等を含むACRレスポンスを生成する。ACRレスポンスのデータ構造については
図8を参照して後述する。通信部65は、ACRクライアント42から送信されたACRクエリを受信してACRレスポンス生成部64に出力し、ACRレスポンス生成部64で生成されたACRレスポンスをACRクライアント42に送信する。
【0099】
[ACRクライアント42の詳細な構成例]
図5は、マルチウィンドウスクリーンデバイス40に搭載されたACRクライアント42の詳細な構成例を示している。
【0100】
ACRクライアント42は、シグニチャ抽出部71、ACRクエリ生成部72、通信部73、およびACRレスポンス保持部74から構成される。
【0101】
シグニチャ抽出部71は、コンテンツレダラ41から分岐、供給されるコンテンツから、その特徴を表すシグニチャデータを所定のサンプリング周期で抽出してACRクエリ生成部72に出力する。なお、シグニチャ抽出部71におけるシグニチャデータの抽出方式は、利用するACRサーバ24のシグニチャ抽出部62におけるそれと共通である。
【0102】
ACRクエリ生成部72は、シグニチャ抽出部71により抽出されたシグニチャデータを含むACRクエリであって、ACRサーバ24に対してコンテンツの識別を依頼するためのACRクエリを生成する。ACRクエリのデータ構造については
図7を参照して後述する。
【0103】
通信部73は、ACRクエリ生成部72で生成されたACRクエリをACRサーバ24に送信し、ACRサーバ24から返信されるACRレスポンスを受信してACRレスポンス保持部74に出力する。ACRレスポンス保持部74は、通信部73で受信されたACRレスポンスを保持する。なお、保持されたACRレスポンスはローカルWebサーバ44によりセカンドスクリーンデバイス50に転送される。
【0104】
[ACRリファレンスデータのデータ構造]
図6は、ACRサーバ24のACRデータベース63にデータベース化されているACRリファレンスデータのデータ構造を示している。
【0105】
ACRリファレンスデータ100においては、コンテンツから所定の周期で抽出された各シグニチャデータ101に対して、コンテンツ識別子102、再生時刻103、および関連メタデータ104が対応付けられている。
【0106】
シグニチャデータ101は、シグニチャ抽出部62にてコンテンツから抽出されたものである。コンテンツ識別子102は、シグニチャデータ101の抽出元のコンテンツを表す情報である。再生時刻103は、コンテンツ識別子102が表すコンテンツから該シグニチャデータ101が抽出されたときのコンテンツの進行タイミングを示すものであり、例えば、該コンテンツの先頭からの経過時間によって表される。
【0107】
関連メタデータ104には、コンテンツ識別子102が表すコンテンツのメタデータや、連動アプリ識別子(該コンテンツの、再生時刻103が示すコンテンツの進行タイミングに合わせて実行すべき連動アプリを一意に表す情報)、実行された該連動アプリにより利用される各種データが含まれる。
【0108】
なお、関連メタデータ104は、再生時刻103が示すコンテンツの進行タイミングに応じて異なる内容にしてもよい。
【0109】
[ACRクエリのデータ構造]
図7は、ACRクライアント42のACRクエリ生成部72にて生成されるACRクエリのデータ構造を示している。
【0110】
ACRクエリ110には、ACRクエリ識別子111、シグニチャ方式識別子112、サービス識別子113、シグニチャデータ114、ローカルタイムスタンプ115、発信元アドレス116、および署名117が含まれる。
【0111】
ACRクエリ識別子111は、該ACRクエリ110を一意に特定するための情報である。シグニチャ方式識別子112は、シグニチャデータ114を抽出する際に用いられた抽出方式を特定するための情報である。サービス識別子113は、ACRサーバ24が複数存在する場合において、該ACRクエリ110を送信してACRレスポンスを得るACRサーバ24を選択するための情報である。
【0112】
シグニチャデータ114は、ACRクライアント42のシグニチャ抽出部71にてコンテンツから抽出されたものである。ローカルタイムスタンプ115は、コンテンツからシグニチャデータ114が抽出されたタイミングを示すものであり、マルチウィンドウスクリーンデバイス40のローカルシステムクロックが示す時刻により表される。
【0113】
発信元アドレス116は、該ACRクエリ110を発信するACRクライアント42の双方向通信網12におけるアドレスであり、該ACRクエリ110に応じてACRサーバ24にて生成されるACRレスポンスの返信先を表す情報として利用される。署名117は、該ACRクエリ110の改ざんを抑止するためのものである。なお、ACRクエリ110の全体を暗号化して送信するようにしてもよい。
【0114】
[ACRレスポンスのデータ構造]
図8は、ACRサーバ24のACRレスポンス生成部64にて生成されるACRレスポンスのデータ構造を示している。
【0115】
ACRレスポンス120は、同
図Aまたは同
図Bに示すデータ構造を有する。同
図Aは、ACRクエリ110に含まれるシグニチャデータ114の抽出元のコンテンツが識別できた場合、すなわち、マルチウィンドウスクリーンデバイス40のユーザが視聴中のコンテンツを識別できた場合のACRレスポンス120のデータ構造である。同
図Bはコンテンツを識別できなかった場合のACRレスポンス120のデータ構造である。
【0116】
マルチウィンドウスクリーンデバイス40のユーザが視聴中のコンテンツを識別できた場合のACRレスポンス120(同
図A)には、ACRクエリ識別子121、シグニチャ方式識別子122、サービス識別子123、コンテンツ識別子124、再生時刻125、ローカルタイムスタンプ126、関連メタデータ127、発信元アドレス128、および署名129が含まれる。
【0117】
一方、マルチウィンドウスクリーンデバイス40のユーザが視聴中のコンテンツを識別できなかった場合のACRレスポンス120(同
図B)には、ACRクエリ識別子121、サービス識別子122、発信元アドレス128、署名129、および識別失敗フラグ130が含まれる。
【0118】
ACRクエリ識別子121、シグニチャ方式識別子122、サービス識別子123、ローカルタイムスタンプ126は、該ACRレスポンス120の返信を要求したACRクエリ110を特定するためのものであり、該ACRクエリ110のACRクエリ識別子111、シグニチャ方式識別子112、サービス識別子113、およびローカルタイムスタンプ115が引用されて記述される。
【0119】
コンテンツ識別子124、再生時刻125、および関連メタデータ127は、コンテンツの識別結果を表すものであり、対応するACRリファレンスデータ100のコンテンツ識別子102、再生時刻103、および関連メタデータ104が引用されて記述される。
【0120】
発信元アドレス128は、該ACRレスポンス120を送信するACRサーバ24の双方向通信網12におけるアドレスである。署名129は、該ACRレスポンス120の改ざんを抑止するためのものである。なお、ACRレスポンス120の全体を暗号化して送信することにより、その改ざんを防止するようにしてもよい。
【0121】
識別失敗フラグ130は、ACRサーバ24にて、ACRクライアント42からのACRクエリ110に含まれるシグニチャデータ114の抽出元のコンテンツ、すなわち、マルチウィンドウスクリーンデバイス40のユーザが視聴中のコンテンツを識別することができなかったことを表すフラグである。
【0122】
[ACRサービス活用システム10のホームネットワークシステム30の処理]
次に、ホームネットワークシステム30において、セカンドスクリーンデバイス50が、マルチウィンドウスクリーンデバイス40が利用できる機能に関する情報であるデバイスディスクリプションを取得するときの2通りの処理について説明する。
【0123】
なお、本実施の形態におけるマルチウィンドウスクリーンデバイス40が利用できる機能とは、ACRクライアント42によるACRサービスの利用と、ウィンドウマネージャ45による画面上の各ウィンドウに対する枠視覚属性の付与とを指す。
【0124】
図9は、既にセカンドスクリーンデバイス50にてACRアプリ51が起動されている状態において、マルチウィンドウスクリーンデバイス40がネットワークシステム30に接続された場合(マルチウィンドウスクリーンデバイス40の起動時も含む)の処理を説明するフローチャートである。
【0125】
ステップS1において、マルチウィンドウスクリーンデバイス40のUPnPサーバ43は、ホームネットワークシステム30に対して、以下に示されるUPnPで規定されたNotifyメッセージをマルチキャスト配信する。該Notifyメッセージは、UDP/IPによりホームネットワークシステム30に転送され、いまの場合、セカンドスクリーンデバイス50のACRアプリ51に受信される。
【0126】
NOTIFY * HTTP/1.1
…
LOCATION “http://192.168.0.4:55500”
…
【0127】
NotifyメッセージのLOCATIONヘッダにはマルチウィンドウスクリーンデバイス40のデバイスディスクリプションの取得先アドレスが記載されている。そこで、ステップS11において、セカンドスクリーンデバイス50にてACRアプリ51は、HTTP GETにより、該取得先アドレスからデバイスディスクリプションを取得する。
【0128】
以上の処理により、セカンドスクリーンデバイス50のACRアプリ51は、マルチウィンドウスクリーンデバイス40のデバイスディスクリプションを取得することができる。
【0129】
次に、
図10は、先にマルチウィンドウスクリーンデバイス40がネットワークシステム30に接続されて起動されている状態において、後からセカンドスクリーンデバイス50にてACRアプリ51が起動された場合の処理を説明するフローチャートである。
【0130】
この場合、マルチウィンドウスクリーンデバイス40のUPnPサーバ43によるNotifyメッセージのマルチキャスト配信が既に行なわれてしまっているので、セカンドスクリーンデバイス50のACRアプリ51はNotifyメッセージを受信することができない。そこで、ステップS21において、ACRアプリ51は、UPnPで規定されているM-Searchにより利用可能なACRクライアントを検索する。
【0131】
該M-Searchに応じたマルチウィンドウスクリーンデバイス40のUPnPサーバ43は、ステップS31において、デバイスディスクリプションを応答する。ACRアプリ51は、ステップS22において、該デバイスディスクリプションを受信する。
【0132】
以上の処理により、セカンドスクリーンデバイス50のACRアプリ51は、マルチウィンドウスクリーンデバイス40のデバイスディスクリプションを取得することができる。
【0133】
[デバイスディスクリプションの例]
ここで、デバイスディスクリプションの例について説明する。デバイスディスクリプションの記述には、例えばXMLファイルが用いられる。
【0134】
以下にデバイスディスクリプションの第1の例を示す。
【0135】
デバイスディスクリプションの第1の例
<root xmlns="urn:schemas-upnp-org:device-1-0">
…
<serviceList>
<service>
<serviceType>"urn:abc:service:ACRClient.v1"</serviceType>(ACRクライアントサービスを意味する)
<serviceId>"urn:UPnP:serviceId:1234"</serviceId>(ACRクライアントサービスのサービスIDを意味する)
<SCPDURL></SCPDURL>
<controlURL>" http://192.168.0.4:55500/getACRResponse"</controlURL>
<WindowStyle>"http://192.168.0.4:55500/windowStyle"</WindowStyle>
…
</service>
</serviceList>
…
</root>
【0136】
なお、既存の一般的なUPnPに規定されたデバイスディスクリプションの<SCPDURL>要素には、ACRクライアント42が利用できるACRサービスに関して記述されているサービスディスクリプションの取得先アドレスが記述されており、ACRアプリ51がHTTP GETにより該取得先アドレスからサービスディスクリプションを取得することになる。さらに、ACRアプリ51が、UPnPで規定されているSOAPにより、<controlURL>要素に記述されているURLに対してアクションのメッセージを送付することによりアクション(いまの場合、ACRクエリの送信と、ACRレスポンスの転送)を呼び出すことになる。
【0137】
しかしながら、本実施の形態においては、より少ない手順でアクションを呼び出せるように、上述したようなUPnPに規定されたデバイスディスクリプションを拡張し、該アクションを呼び出すためのWebAPIをデバイスディスクリプションに直接記述するようにする。
【0138】
具体的には、上に示された第1の例のように、例えば、<SCPDURL>要素に何も記述せず空にするか、または所定のダミーの文字列を記述するようにし、<controlURL>要素に、ACRクライアントを起動させるとともに、ACRレスポンス120の転送を要求するためのWebAPIのサーバサイドスクリプトURL(第1の例の場合、http://192.168.0.4:55500/getACRResponse)を直接記述するようにする。
【0139】
さらに、UPnPには規定されていない<WindowStyle>要素を新たに設け、そこにウィンドウマネージャ45に枠視覚属性を通知させたり、変更させたりするためのWebAPIのサーバサイドスクリプトURL(第1の例の場合、http://192.168.0.4:55500/widowStyle)を直接記述するようにする。
【0140】
なお、<service>要素は、搭載されているACRクライアント42毎に記述される。したがって、本実施の形態の場合、<serviceList>に3つの<service>要素が記述される。
【0141】
または、以下に示す第2の例のように、UPnPには規定されていない<WebAPIURL>要素を新たに設け、該<WebAPIURL>要素にWebAPIのサーバサイドスクリプトURLを直接記述するようにしてもよい。
【0142】
デバイスディスクリプションの第2の例
<root xmlns="urn:schemas-upnp-org:device-1-0">
…
<serviceList>
<service>
<serviceType>"urn:abc:service:ACRClient.v1"</serviceType>(ACRクライアントサービスを意味する)
<serviceId>"urn:UPnP:serviceId:1234"</serviceId>(ACRクライアントサービスのサービスIDを意味する)
<SCPDURL></SCPDURL>
<controlURL></controlURL>
<WebAPIURL>" http://192.168.0.4:55500/getACRResponse"</WebAPIURL>
<WindowStyle>"http://192.168.0.4:55500/windowStyle"</WindowStyle>
…
</service>
</serviceList>
【0143】
第1または第2の例のデバイスディスクリプションを取得したセカンドスクリーンデバイス50のACRアプリ51では、デバイスディスクリプションの<controlURL>要素または<WebAPIURL>要素に記述されているWebAPIのサーバサイドスクリプトurlであるgetACRResponseをHTTP GETにより呼び出すことにより、アクションを実行させることができる。
【0144】
具体的には、マルチウィンドウスクリーンデバイス40のACRクライアント42に対して起動していなければ起動させた上で、ACRクリエ110を送信させ、それに応じて返信されたACRレスポンス120を転送させることができる。なお、ACRレスポンス120の転送は、WebAPIに応じて戻されるHTTPレスポンスのボディに、例えば以下のようにJSONにより記述された状態で行なわれる。
【0145】
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
…
“JSONによりエンコードされたACRレスポンスの内容”
【0146】
該WebAPIを用いたトランザクションはコンテンツが視聴されている間、繰り返しポーリングにより行われる。そして、コンテンツの進行に応じてその時々に変換するACRレスポンス120の中の関連メタデータ127等がセカンドスクリーンデバイス50にてユーザに提示される。
【0147】
上述したように、デバイスディスクリプションを拡張し、これを標準化すれば、異なるベンダにより製造、販売されるマルチウィンドウスクリーンデバイス40とセカンドスクリーンデバイス50とが速やかに連携動作することが可能となる。
【0148】
なお、WebAPIを用いる代わりに、IETF(Internet Engineering Task Force)等が標準化を策定しているWebSocketを用いるようにしてもよい。WebSocketを用いる場合、ローカルWebサーバ44(またはACRクライアント42あるいはセカンドスクリーンデバイス50)内にWebSocketサーバを設け、該WebSocketサーバを介して、ACRアプリ51とACRクライアント42の双方からセッション(TCPコネクション)確立リクエストを発行してセッションを確立し、該セッション上で上記JSON等によりACRレスポンス120を転送するようにする。
【0149】
この場合、ACRクライアント42が新たなACRレスポンス120をACRサーバ24から受信すると直ちに、確立された該セッションを介してACRアプリ51に転送される。したがって、WebAPIを用いた時には必要であったポーリングが不要となり、ポーリングの周期に依存しないACRレスポンス120の即時転送が可能となる。
【0150】
また、ACRアプリ51では、デバイスディスクリプションの<WindowStyle>要素に記述されているWebAPIのサーバサイドスクリプトurlであるwindowStyleをHTTP GETにより呼び出すことにより、ローカルWebサーバ44を介してウィンドウマネージャ45からマルチウィンドウスクリーンデバイス40の画面に設けたウィンドウの枠視覚属性を取得することができる。
【0151】
具体的には、該WebAIPに応じて戻されるHTTPレスポンスのボディに枠視覚属性が記述される。例えば、枠視覚属性として色が設定されている場合には、
border-color:#ffa000 -> オレンジのボーダー色を指定する例
がHTTPレスポンスのボディに記述される。
【0152】
なお、仮にマルチウィンドウスクリーンデバイス40−1から戻された枠視覚属性と、マルチウィンドウスクリーンデバイス40−2から戻された枠視覚属性とが重複している場合、マルチウィンドウスクリーンデバイス40−1または40−2の一方に枠視覚属性の変更を要求することができる。
【0153】
具体的には、<WindowStyle>要素のWebAPIのURLに対して、HTTP POSTリクエストにて、リクエストのボディに変更させる枠視覚属性を記述すればよい。下の例は重複していた枠視覚属性を(border-color:#ffa001)に変更させる場合を示している。
POST /windowStyle HTTP/1.0
host: 192.168.0.4:55500
Content-Length: 20
border-color:#ffa001
【0154】
[ACRサービス活用システム10による動作]
次に、ACRサービス活用システム10の動作について説明する。
【0155】
なお、以下に説明する動作の前提として、ホームネットワークシステム30においては、セカンドスクリーンデバイス50のACRアプリ51が、既にマルチウィンドウスクリーンデバイス40のUPnPサーバ43からデバイスディスクリプションを取得しているものとする。
【0156】
また、プロバイダシステム20のACRサーバ24においては、マルチウィンドウスクリーンデバイス40にて視聴され得る様々なコンテンツに対応するACRリファレンスデータ100が生成されてACRデータベース63に登録されているものとする。
【0157】
図11は、ACRサービス活用システム10の動作を説明するフローチャートである。
【0158】
ステップS41において、プロバイダシステム20のコンテンツサーバ21は、放送網11を介したコンテンツの送信を開始する。
【0159】
一方、ホームネットワークシステム30においては、ステップS51として、マルチウィンドウスクリーンデバイス40がコンテンツの受信、再生を開始する。ここで、ステップS61として、セカンドスクリーンデバイス50のACRアプリ51が、ACRクライアント42の起動とACRレスポンスの転送を要求するWebAPIを呼び出すと、これに応じたローカルWebサーバ44からの制御により、ACRクライアント42等が動作を開始する。
【0160】
すなわち、ステップS52において、マルチウィンドウスクリーンデバイス40のACRクライアント42は、コンテンツレンダラ41から視聴中のコンテンツの供給を受けると、シグニチャ抽出部71が該コンテンツからシグニチャデータ114を抽出してACRクエリ生成部72に出力する。ステップS53において、ACRクエリ生成部72は、該シグニチャデータ114を含むACRクエリ110を生成し、生成されたACRクエリ110を通信部73がACRサーバ24に送信する。
【0161】
ACRクライアント42からのACRクエリ110を受信したACRサーバ24では、ステップS42において、ACRレスポンス生成部64が、ACRデータベース63を参照し、受信したACRクエリ110に含まれるシグニチャデータ114に対応するコンテンツを識別する。さらに、ACRレスポンス生成部64は、ステップS43において、コンテンツの識別結果に応じたACRレスポンス120を生成し、通信部65は、生成されたACRレスポンス120をACRクライアント42に返信する。
【0162】
ACRサーバ24からのACRレスポンス120を受信したACRクライアント42は、ステップS54において、受信したACRレスポンス120をローカルWebサーバ44に供給する。ローカルWebサーバ44は、該ACRレスポンス120をセカンドスクリーンデバイス50のACRアプリ51に転送する。
【0163】
転送されたACRレスポンス120を受信したACRアプリ51は、ステップS62として、セカンドスクリーンデバイス50のACRアプリ51が、枠視覚属性の通知を要求するWebAPIを呼び出すと、これに応じたローカルWebサーバ44は、ステップS55において、ウィンドウマネージャ45にて管理されている枠視覚属性をACRアプリ51に通知する。
【0164】
枠視覚属性が通知されたACRアプリ51は、該枠視覚属性をウィンドウマネージャ53に通知する。ウィンドウマネージャ53は、他のマルチウィンドウスクリーンデバイス40から既に通知されている枠視覚属性と重複していないか否かを確認する。重複している場合、ACRアプリ51は、HTTP POSTリクエストにて、枠視覚属性の変更を要求する。該要求はステップS56において、ローカルWebサーバ44からウィンドウマネージャ45に通知され、ウィンドウマネージャ45が該要求に応じて変更すると、変更後の枠視覚属性がローカルWebサーバ44からACRアプリ51に通知される。変更後の枠視覚属性が通知されたACRアプリ51は、ステップS64において、変更後の枠視覚属性をウィンドウマネージャ53に通知する。ウィンドウマネージャ53は、変更後の枠視覚属性に基づき、これから表示する連動アプリの画面などの枠視覚属性を設定する。
【0165】
なお、ステップS62において、重複していないことが確認された場合、枠視覚属性の変更は要求されず、ステップS64の処理が実行される。
【0166】
また、ステップS62乃至64の処理を、ステップS54の処理(ACRレスポンスの転送)を待つことなく、ステップS61の直後に実行するようにしてもよい。
【0167】
ステップS65において、ACRアプリ51は、転送されたACRレスポンス120に含まれる関連メタデータ127を解析し、視聴中のコンテンツの進行に合わせて実行すべき連動アプリを連動アプリマネージャ52に取得させる。
【0168】
ステップS66において、連動アプリマネージャ52は、アプリケーションサーバ23がステップS44の処理として供給する該連動アプリを取得して実行する。なお、該連動アプリが既に取得済みである場合にはその取得を省略できる。また、該連動アプリが既に起動済みである場合にはその起動を省略できる。さらに、該連動アプリの実行を伴わずに、関連メタデータ127に含まれる情報をユーザに提示することもある。
【0169】
このとき、ユーザに提示される連動アプリの画面は、その枠がウィンドウマネージャ53によって枠視覚属性が、マルチウィンドウスクリーンデバイス40にて対応するコンテンツが表示されているウィンドウの枠の枠視覚属性と一致したものとなる。
【0170】
以上に説明したステップS41乃至S44の処理、ステップS51乃至S56の処理、およびステップS61乃66の処理は、コンテンツが視聴されている間、繰り返し実行される。ただし、ステップS61乃66の処理とステップS55およびS56の処理はその繰り返しを省略したり、実行頻度を減少させたりすることができる。
【0171】
これにより、マルチウィンドウスクリーンデバイス40にてユーザが視聴中のコンテンツの進行に合わせ、セカンドスクリーンデバイス50にて連動アプリを動作させることができる。
【0172】
また、セカンドスクリーンデバイス50にてユーザに提示されている画面が、マルチウィンドウスクリーンデバイス40に表示されているどのコンテンツに対応するものであるのかを、ユーザに速やかに把握させることができる。
【0173】
ところで、上述した一連の処理を実行するプロバイダシステム20のコンテンツサーバ21乃至ACRサーバ24、並びにホームネットワークシステム30のマルチウィンドウスクリーンデバイス40およびセカンドスクリーンデバイス50は、それぞれをハードウェアにより構成する他、コンピュータがソフトウェアを実行することにより実現することもできる。このコンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等が含まれる。
【0174】
図12は、上述したコンピュータのハードウェアの構成例を示すブロック図である。
【0175】
このコンピュータ200において、CPU(Central Processing Unit)201,ROM(Read Only Memory)202,RAM(Random Access Memory)203は、バス204により相互に接続されている。
【0176】
バス204には、さらに、入出力インターフェイス205が接続されている。入出力インターフェイス205には、入力部206、出力部207、記憶部208、通信部209、およびドライブ220が接続されている。
【0177】
入力部206は、キーボード、マウス、マイクロフォン等よりなる。出力部207は、ディスプレイ、スピーカ等よりなる。記憶部208は、ハードディスクや不揮発性のメモリ等よりなる。通信部209は、ネットワークインタフェース等よりなる。ドライブ220は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリ等のリムーバブルメディア211を駆動する。
【0178】
以上のように構成されるコンピュータ200では、CPU201が、例えば、記憶部208に記憶されているプログラムを、入出力インターフェイス205およびバス204を介して、RAM203にロードして実行することにより、上述した一連の処理が行われる。
【0179】
コンピュータ200(CPU201)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア211に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
【0180】
コンピュータ200では、プログラムは、リムーバブルメディア211をドライブ220に装着することにより、入出力インターフェイス205を介して、記憶部208にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部209で受信し、記憶部208にインストールすることができる。その他、プログラムは、ROM202や記憶部208に、あらかじめインストールしておくことができる。
【0181】
なお、コンピュータ200が実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであってもよいし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであってもよい。
【0182】
なお、本開示の実施の形態は、上述した実施の形態に限定されるものではなく、本開示の要旨を逸脱しない範囲において種々の変更が可能である。