(57)【要約】【課題】  一方の装置のセンサ出力を他方の装置に与えることにより他方の装置を制御するシステムにおいて、被制御装置のアプリケーション開発者が、制御装置のセンサ出力を利用するために、制御装置のアプリケーションの仕様を気にせずに、被制御装置のアプリケーションを開発できるようにすること。【解決手段】  外部装置ＳＰが有するハードウェアセンサ３１のセンサ値情報に基づいて被制御装置ＳＫを制御する。被制御装置ＳＫは、外部装置ＳＰから送信されたセンサ値情報を受信し当該センサ値情報に基づく入力情報をハードウェアセンサ３１に相当する仮想センサ４１に入力する入力部４３と、仮想センサ４１の出力に基づいて自装置ＳＫの動作を制御する制御部４４とを備えている。【選択図】図６
2016127424.tif 000002
【特許請求の範囲】
【請求項１】
一方の装置から他方の装置の動作を制御する装置制御方法であって、
前記一方の装置が有するハードウェアセンサの出力に基づくセンサ値情報を前記他方の装置に送信する送信ステップと、
前記他方の装置が前記センサ値情報を受信し、当該センサ値情報に基づく入力情報を前記ハードウェアセンサに相当する仮想センサに入力する入力ステップと、
前記他方の装置が、前記仮想センサの出力に基づいて自装置の動作を制御する制御ステップと、
を備えた装置制御方法。
【請求項２】
請求項１に記載の装置制御方法において、
前記センサ値情報は、複数の前記ハードウェアセンサを区別するセンサ識別子とセンサ値との関連付けを含み、
前記入力ステップでは、複数の前記仮想センサのうち、前記センサ識別子に対応する仮想センサに前記入力情報を入力する、装置制御方法。
【請求項３】
請求項１又は２に記載の装置制御方法において、
前記他方の装置は映像出力端子をテレビ等の表示装置に接続された装置であり、前記一方の装置は前記他方の装置を操作可能な携帯端末である、装置制御方法。
【請求項４】
外部装置が有するハードウェアセンサのセンサ値情報に基づいて制御される被制御装置であって、
前記外部装置から送信された前記センサ値情報を受信し当該センサ値情報に基づく入力情報を前記ハードウェアセンサに相当する仮想センサに入力する入力部と、
前記仮想センサの出力に基づいて自装置の動作を制御する制御部とを備えた被制御装置。
【請求項５】
請求項４に記載の被制御装置において、
前記センサ値情報は、複数の前記ハードウェアセンサを区別するセンサ識別子とセンサ値との関連付けを含み、
前記入力部は、複数の前記仮想センサのうち、前記センサ識別子に対応する仮想センサに前記入力情報を入力する、被制御装置。
【請求項６】
外部装置が有するハードウェアセンサのセンサ値情報に基づいて制御される被制御装置用の装置制御プログラムであって、
前記外部装置から送信された前記センサ値情報を受信し当該センサ値情報に基づく入力情報を前記ハードウェアセンサに相当する仮想センサに入力する入力ステップと、
前記仮想センサの出力に基づいて自装置の動作を制御する制御ステップと、を前記被制御装置のプロセッサに実行させる被制御装置用の装置制御プログラム。
【請求項７】
請求項６に記載の被制御装置用の装置制御プログラムにおいて、
前記センサ値情報は、複数の前記ハードウェアセンサを区別するセンサ識別子とセンサ値との関連付けを含み、
前記入力ステップでは、複数の前記仮想センサのうち、前記センサ識別子に対応する仮想センサに前記入力情報を入力する、被制御装置用の装置制御プログラム。
【請求項８】
制御装置が備えるハードウェアセンサのセンサ値情報に基づいて外部装置を制御するための、前記制御装置用の装置制御プログラムであって、
前記センサ値情報に基づく入力情報を前記ハードウェアセンサに相当する前記外部装置が備える仮想センサに入力させるために、前記センサ値情報を前記外部装置に送信する処理を前記制御装置のプロセッサに実行させる、制御装置用の装置制御プログラム。
【請求項９】
請求項８に記載の制御装置用の装置制御プログラムにおいて、
前記外部装置が前記ハードウェアセンサに対応する前記仮想センサを複数の中から識別できるようにするために、
前記センサ値情報が複数の前記ハードウェアセンサを区別するセンサ識別子とセンサ値との関連付けを含む、制御装置用の装置制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一方のコンピュータ機器のハードウェアセンサの出力により、他方のコンピュータ機器の動作を制御する装置制御方法等に関する。
【背景技術】
【０００２】
従来、スマートフォンのように多様なハードウェアセンサを搭載したコンピュータ機器が知られている。例えば、最近のスマートフォンは、圧力センサ、近接センサ、温度センサ、湿度センサ、ＧＰＳ、ジャイロセンサ、加速度センサ、照明センサ及び磁界センサ等を供えている。一方、このように多様なハードウェアセンサを搭載したコンピュータ機器（制御装置）が、自器のハードウェアセンサの出力に基づき、比較的ハードウェア資源が少ないコンピュータ機器（被制御装置）を制御しようとする場合、制御装置のハードウェアセンサの出力を被制御装置のアプリケーションプログラムに渡す必要がある。被制御装置のアプリケーションプログラムは、制御装置から受信したセンサ出力に基づく情報を解釈し、この解釈に応じて所定の処理を実行しなければならない。従って、被制御装置のアプリケーションプログラムを開発する際には、制御装置側が送信するセンサ出力に基づく情報を解釈するためのプロセスを実装しなければならない。即ち、被制御装置のアプリケーション開発者は、制御装置のセンサ出力を利用するために、制御装置のアプリケーションの仕様を意識しながら、被制御装置のアプリケーションを開発しなければならず、煩雑である。
【０００３】
ところで、一方の装置のセンサ出力を他方の装置に与えることにより、他方の装置を制御する仕組みは、２以上のデバイスで構成される様々なシステムに採用することができる。例えば、画面表示をリアルタイムに同期する２デバイス間にも採用することができる。
【０００４】
従来、デバイス間で画面を転送・表示する技術が知られており、その規格には幾つかの種類がある。
【０００５】
Wi-Fi Allianceが策定したMiracast（登録商標）は、コンテンツのレンダリング結果及びアプリケーションGUI（Graphical User Interface）等を含めたディスプレイ出力を無線化する技術である。通信路はWi-Fi Direct（登録商標）、プロトコルはRTP/RTSPで伝送し、出力するUI（User Interface）をMPEG2-TS(H.264/LPCM/AAC/AC3）に圧縮する。
【０００６】
Apple社のAirPlay（登録商標）は、iTunesやiPhone、iPod touch、iPad（いずれも登録商標）で再生している音楽、動画や画像を他の機器でストリーミング再生する機能である。
【０００７】
Car Connectivity ConsortiumのMirrorLink（登録商標）は、スマートフォンのようなモバイル機器と車載AV機器との通信接続に関する規格である。
【０００８】
この他、DLNA（登録商標）ガイドライン等が知られている。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明は、上述した従来技術の中でも特に、一方の装置のセンサ出力を他方の装置に与えることにより他方の装置を制御するシステムにおいて、被制御装置のアプリケーション開発者が、制御装置のセンサ出力を利用するために、制御装置のアプリケーションの仕様を気にせずに、被制御装置のアプリケーションを開発できるようにすることを課題とする。
【課題を解決するための手段】
【００１０】
この課題を解決する本願明は、一方の装置（制御装置）から他方の装置（被制御装置）の動作を制御する装置制御方法に特徴を有する。まず、送信ステップでは、一方の装置が有するハードウェアセンサの出力に基づくセンサ値情報を前記他方の装置に送信する。次いで、入力ステップでは、他方の装置がセンサ値情報を受信し、当該センサ値情報に基づく入力情報をハードウェアセンサに相当する仮想センサに入力する。そして、制御ステップでは、他方の装置が、仮想センサの出力に基づいて自装置の動作を制御する。
【００１１】
後述するセンサエミュレーション機能において、「送信ステップ」は、操作装置の送信部が実行する処理に対応する。「入力ステップ」は、視聴装置の入力部が実行する処理に対応する。「制御ステップ」は、視聴装置の動作制御部が実行する処理に対応する。
【００１２】
本発明によると、被制御装置のアプリケーション開発者は、制御装置のセンサ出力を利用する場合でも、被制御装置に実装した仮想センサの出力を利用するようにアプリケーションを作成すればよい。これが結果的に、制御装置のセンサ出力を利用することになる。
【発明の効果】
【００１３】
このため、本発明によれば、被制御装置のアプリケーション開発者は、制御装置のセンサ出力を利用するために、制御装置のアプリケーションの仕様を気にせずに、被制御装置のアプリケーションを開発することができる。
【図面の簡単な説明】
【００１４】
【図１】図１は、本発明の実施形態であるコンテンツ視聴システムの全体構成図。
【図２】図２は、図１のコンテンツ視聴システムが実行するプロジェクションモードの構成図。
【図３】図３は、図２のプロジェクションモードの説明図。
【図４】図４は、図２のプロジェクションモードが実行する画像対策処理の構成図。
【図５】図５は、図４の視聴装置ＳＫが実行する画像対策処理のフローチャート。
【図６】図６は、図１のコンテンツ視聴システムが実行するセンサエミュレーション機能の構成図。
【図７】図７は、図１のコンテンツ視聴システムが実行するビューモード及びハイブリッドモードの構成図。
【発明を実施するための形態】
【００１５】
以下、本発明を適用したコンテンツ視聴システムの実施形態を説明する。
【００１６】
［システムの全体構成］
図１は、コンテンツ視聴システムの全体構成図である。テレビモニタＭＯＮには、視聴装置ＳＫが接続されている。視聴装置ＳＫは、モニタＭＯＮに映像信号及び音声信号を出力する。視聴装置ＳＫは、無線ＬＡＮ（Local Area Network）のアクセスポイントＡＰを介して操作装置ＳＰとWi-Fi（Wireless Fidelity）に準拠した無線通信を行う。また、アクセスポイントＡＰは有線でＷＡＮ（Wide Area Network）に接続されている。ＷＡＮにはコンテンツサーバＣＳが設けられ、操作装置ＳＰはＡＰを介してコンテンツサーバＣＳと通信する。また、視聴装置ＳＫもＡＰを介してコンテンツサーバＣＳと通信する。
【００１７】
操作装置ＳＰと視聴装置ＳＫとの間の通信は、お互いの装置を相互に認証した上で許可され、論理通信パスを介して行われる。また、操作装置ＳＰとコンテンツサーバＣＳとの通信及び視聴装置ＳＫとコンテンツサーバＣＳとの通信も同様に、お互いの装置を相互に認証した上で許可され、論理通信パスを介して行われる。
【００１８】
本実施形態において、操作装置ＳＰは、Wi-Fiインターフェースを備えたスマートフォンに所定のアプリケーションプログラム（アプリ）をインストールしたものである。また、視聴装置ＳＫは、市販のＵＳＢメモリと同程度の大きさのスティック状の筺体に収められている。この筺体に、Wi-Fiインターフェースを内蔵すると共に、映像音声出力用のＨＤＭＩ（High-Definition Multimedia Interface、登録商標）端子を備えている。
【００１９】
ユーザは、操作装置ＳＰを操作することにより、視聴装置ＳＫの動作を制御する。その際ユーザの利便性を向上するために、プロジェクションモード、ビューモード、ハイブリッドモード及びセンサエミュレーション機能が利用される。
【００２０】
プロジェクションモードは、視聴装置ＳＫがテレビモニタＭＯＮに表示する画面と同じ画面を操作装置ＳＰの表示装置に同期的に表示するモードである。ビューモードは、視聴装置ＳＫがテレビモニタＭＯＮに表示する画面のシーンに応じて、操作装置ＳＰの表示装置に異なるＵＩを表示するモードである。ハイブリッドモードは、視聴装置ＳＫがテレビモニタＭＯＮに表示する画面のシーンに応じて、プロジェクションモード又はビューモードを選択的に実行するモードである。センサエミュレーション機能は、操作装置ＳＰに装備されている各種センサの機能を、視聴装置ＳＫ上で再現することにより、視聴装置ＳＫのアプリケーションプログラムが各種センサの機能を利用できるようにする機能である。本実施形態では、操作装置ＳＰとしての携帯端末（スマートフォン）に装備されている各種センサの機能を、視聴装置ＳＫ上で再現する。以上の各モード及び機能については、追って詳述する。
【００２１】
操作装置ＳＰは、プログラムの実行により種々の機能を実現する処理装置と、処理装置が処理に用いる情報を記憶する記憶装置とを備えている。また、操作装置ＳＰは、ユーザが情報を入力するための入力装置と、ユーザに情報を表示する表示装置とを有する。更に、操作装置ＳＰは、視聴装置ＳＫやコンテンツサーバＣＳと通信するための通信装置を備えている。本実施形態では、入力装置兼表示装置としてタッチパネルを備えている。通信装置は前述のようにWi-Fiインターフェースである。
【００２２】
一方、視聴装置ＳＫのハードウェアは、プログラムの実行により種々の機能を実現する処理装置と、処理装置が処理に用いる情報を記憶する記憶装置とを備えている。また、入力装置を接続するための入力インターフェース（入力Ｉ／Ｆ）と、表示装置を接続するための表示インターフェース（表示Ｉ／Ｆ）とを有する。更に、操作装置ＳＰやコンテンツサーバＣＳと通信するための通信装置を備えている。本実施形態において、入力Ｉ／ＦはＵＳＢ端子であり、主にメンテナンス時にＵＳＢ機器を接続する目的で設けられている。また前述のように、表示Ｉ／ＦはＨＤＭI（登録商標）端子であり、通信装置はWi-Fiインターフェースである。
【００２３】
また、本実施形態では、操作装置ＳＰ及び視聴装置ＳＫに共通のプラットフォームを搭載する。そのプラットフォームは、例えば、Android（登録商標）である。以下では、このプラットフォーム上で実行される各モード及び機能について詳述する。
【００２４】
［プロジェクションモード］
プロジェクションモードは、視聴装置ＳＫがテレビモニタＭＯＮに表示する画面と、操作装置ＳＰの表示装置に表示する画面とを同期する。つまり、視聴装置ＳＫが表示する画面と同じ画面を操作装置ＳＰが同期的に表示するモードである。このプロジェクションモードの構成図を図２に示す。視聴装置ＳＫの記憶装置１１は、原描画命令、描画ライブラリ及び改描画命令を記憶する。
【００２５】
「原描画命令」は、重ね順を有する複数の図形を描画する指示を含む描画命令である。
「重ね順を有する図形」は、重ね順を設定された異なるレイヤに描画される複数の図形でもよいし、図形毎に重ね順を設定された複数の図形でもよい。
「描画ライブラリ」は、プラットフォームに装備された描画ライブラリである。
「改描画命令」は、原描画命令により描画される一枚の画面の見かけをプリミティブにより描画する描画命令である。
「プリミティブ」は、点、線、三角形、四角形などの基本的な図形構成要素である。
「一枚の画面の見かけ」とは、重ね順を考慮して複数の図形を２次元に描いた際に視認できる一枚の絵をいう。
【００２６】
視聴装置ＳＫが、テレビモニタＭＯＮに表示する画面を描画する場合、原描画命令が命令生成部１２に渡される。命令生成部１２は、描画ライブラリを利用し、原描画命令に基づいて改描画命令を生成し、記憶装置１１に格納する（命令生成ステップ）。例えば、図３（ａ）に示すように、原描画命令が長い直線Ｌ１の前面に塗りつぶした四角形Ｑを描画するものである場合、四角形の背面にある直線Ｌ１の点線部分は隠れて見えないので、描画された画面の見かけは図３（ｂ）に示すようになる。そこで、改描画命令は、図３（ｂ）に示す四角形Ｑとその両脇に繋がる２本の短い直線Ｌ２，Ｌ３をそれぞれプリミティブにより描画する描画命令として生成する。これにより、改描画命令により描画されるピクセルの総数は、原描画命令により描画されるピクセルの総数に比べて減少する。
【００２７】
命令生成部１２により、１枚の画面を描画するための改描画命令が記憶装置１１に格納されると、送信部１３は、１枚の画面を描画するための改描画命令を記憶装置１１から読み出して操作装置ＳＰに送信する（送信ステップ）。
【００２８】
また、命令実行部１４は、１枚の画面を描画するための改描画命令を記憶装置１１から読み出し、表示処理部１５の描画ドライバに入力する。表示処理部１５の描画ドライバは、改描画命令に基づいて１枚の画面を描画し、テレビモニタＭＯＮに表示する（表示ステップ）。
【００２９】
これに並行して、操作装置ＳＰでは、受信部２３が、視聴装置ＳＫから送信された改描画命令を受信し、記憶装置２１に格納する。操作装置ＳＰの命令実行部２４は、１枚の画面を描画するための改描画命令を記憶装置２１から読み出し、表示処理部２５の描画ドライバに入力する。本実施形態において、視聴装置ＳＫのプラットフォームと操作装置ＳＰのプラットフォームとは同一であり、両装置の描画ドライバの仕様も同一である。表示処理部２５の描画ドライバは、改描画命令に基づいて１枚の画面を描画し、表示装置２６に表示する（表示ステップ）。
【００３０】
このプロジェクションモードによれば、１枚の画面をプリミティブにより描画する改描画命令を視聴装置ＳＫから操作装置ＳＰに転送し、視聴装置ＳＫと操作装置ＳＰとが同じ改描画命令に基づいて分散描画処理を行う。このため、従来のように、一方の装置が描画した画面の描画ピクセル情報を他方の装置に転送し装置間で同じ画面を表示する方法に比べ、装置間における表示の同期速度を改善することができる。
【００３１】
また、本実施形態によれば、視聴装置ＳＫのプラットフォームと操作装置ＳＰのプラットフォームとが同一なので、操作装置ＳＰのアプリケーションプログラムは、視聴装置ＳＫから受信した改描画命令をそのまま描画ドライバに入力することにより、視聴装置ＳＫと同一の画面を表示することができる。このため、視聴装置ＳＫのアプリケーションプログラムにとらわれずに、操作装置ＳＰのアプリケーションソフトウェアを開発することができる。同様に、視聴装置ＳＫのアプリケーションプログラムは、視聴装置ＳＫ用の改描画命令をそのまま操作装置ＳＰに送信することにより、操作装置ＳＰに同一の画面を表示することができる。このため、操作装置ＳＰのアプリケーションプログラムにとらわれずに、視聴装置ＳＫのアプリケーションプログラムを開発することができる。
【００３２】
［プロジェクションモードにおける画像対策処理］
視聴装置ＳＫが画像を表示する場合、プロジェクションモードにおいては、視聴装置ＳＫから操作装置ＳＰに画像データを転送しなければならない。しかし、視聴装置ＳＫから操作装置ＳＰに画像データを転送する場合、画像のデータ容量が比較的大きく転送に時間を要するため、装置間の表示の同期速度を悪化させる。そこで、この課題を解決する画像対策処理をプロジェクションモードに搭載する。
【００３３】
図４は、画像対策処理を搭載したプロジェクションモードの構成図である。図２のプロジェクションモードと比較すると、図４では、視聴装置ＳＫの記憶装置１１と、操作装置ＳＰの記憶装置２１とが、それぞれ画像データと画像識別子との関連付けを記憶するようになっている。「画像識別子」は、画像データを特定するための一意の識別子であり、他の画像データと重複しない値が指定される。
【００３４】
視聴装置ＳＫの命令生成部１２は、プロジェクションモードにおいて、原描画命令が画像の描画を含むことを検知すると、図５に示す画像対策処理を実行する。命令生成部１２は、Ｓ１において、描画すべき画像の画像データに既に画像識別子が付与されているか否かを判定する。即ち、当該画像データと画像識別子との関連付けが記憶装置１１に既に登録されているか否かを判定する。
【００３５】
この結果、当該画像データに画像識別子が付与されていない場合、即ち、初めて描画する画像である場合、Ｓ２において、当該画像データに固有の画像識別子を付与し、当該画像データと画像識別子との関連付けを記憶装置１１に登録する。また、命令生成部１２は、Ｓ３において、原描画命令に基づいて生成する改描画命令に当該画像識別子を埋め込む。即ち、改描画命令が画面上の所定の領域に所定の画像を描画するように、描画命令文に当該画像に対応する画像識別子を埋め込む。
【００３６】
送信部１３は、Ｓ４において、Ｓ２の画像データと画像識別子とを関連付けて操作装置ＳＰに送信する。また、送信部１３は、当該画像識別子を埋め込んだ改描画命令を操作装置ＳＰに送信する。ここで、画像識別子を関連付けた画像データの送信は、改描画命令の送信と同時に行ってもよい。又は、画像識別子を関連付けた画像データの送信は、Ｓ２とＳ３の処理の間に行うことも可能である。視聴装置ＳＫの命令実行部１４は、改描画命令に画像識別子が埋め込まれている場合、当該画像識別子に関連付けて格納されている画像データを記憶装置から読み出して表示処理部１５の描画ドライバに渡す。表示処理部１５の描画ドライバは、改描画命令に基づいて当該画像を含む１枚の画面をレンダリングし、テレビモニタＭＯＮに表示させる。
【００３７】
一方、Ｓ１において、描画しようとする画像の画像データに固有の画像識別子が既に付与されている場合、即ち、その画像の描画が２回目以降である場合、命令生成部１２は、Ｓ５において、当該画像データに関連付けられた固有の画像識別子を記憶装置１１から読み出す。また、命令生成部１２は、Ｓ６において、原描画命令に基づいて生成する改描画命令に当該画像識別子を埋め込む。即ち、改描画命令が画面上の所定の領域に所定の画像を描画するように、描画命令文に当該画像に対応する画像識別子を埋め込む。送信部１３は、Ｓ７において、当該画像識別子を埋め込んだ改描画命令を操作装置ＳＰに送信する。
【００３８】
これに対し、操作装置ＳＰでは、受信部２３が、視聴装置ＳＫから送信された画像データと画像識別子とを受信し、これらを関連付けて記憶装置２１に格納する。本実施形態において、その格納先はキャッシュ領域である。また、受信部２３は、画像識別情報を埋め込まれた改描画命令を操作装置ＳＰから受信し、記憶装置２１に格納する。操作装置ＳＰの命令実行部２４は、改描画命令に画像識別子が埋め込まれている場合、当該画像識別子に関連付けて格納されている記憶装置２１内の画像データを表示処理部２５の描画ドライバに渡す。表示処理部２５の描画ドライバは、改描画命令に基づいて当該画像を含む１枚の画面をレンダリングし、操作装置ＳＰの表示装置に表示させる。
【００３９】
以上の画像対策処理によれば、視聴装置ＳＫから操作装置ＳＰに渡した画像データを操作装置ＳＰの記憶装置２１に保管する。そして、同じ画像を再度描画する際には、視聴装置ＳＫから操作装置ＳＰに画像識別子を渡し、操作装置ＳＰは画像識別子に対応する画像データを自己の記憶装置２１から読み出して利用する。このため、同じ画像を再度描画する際には、視聴装置ＳＫから操作装置ＳＰに画像データを伝送する必要がない。よって、比較的大容量の画像データを装置間で伝送する頻度を最小限に抑えることができる。これにより、プロジェクションモードにおいて、装置間の表示同期速度の低下を抑えることができる。
【００４０】
プロジェクションモードは、視聴装置ＳＫの画面表示を操作装置ＳＰの表示装置に投影する。視聴装置ＳＫがテレビモニタＭＯＮに表示する画面を、操作装置ＳＰの表示装置に投影する際、投影のリアルタイム性を確保できないと、操作者に違和感を与え、結果的に操作装置ＳＰがコントローラとしての役割を果たせない。一方、本実施形態のプロジェクションモードによれば、物理的に離れた２デバイス間で投影のリアルタイム性を確保しつつ、視聴装置ＳＫが表示する画面を操作装置ＳＰの表示装置に表示することができる。
【００４１】
また、プロジェクションモードによれば、視聴装置ＳＫ側のアプリケーションプログラムが提供するＵＩを、操作装置ＳＰ上の表示装置に完全再現することができる。これにより、テレビモニタＭＯＮに接続された視聴装置ＳＫの側で主体的に動作するアプリケーションプログラムを、スマートフォン等の操作装置ＳＰの側から操作するのに好適な環境が整う。
【００４２】
以上のプロジェクションモード及び画像対策処理の説明において、視聴装置ＳＫの命令生成部１２、送信部１３、命令実行部１４及び表示処理部１５は、視聴装置ＳＫの処理装置がプログラムを実行することにより実現する。また、操作装置ＳＰの受信部２３、命令実行部２４及び表示処理部２５は、操作装置ＳＰの処理装置がプログラムを実行することにより実現する。
【００４３】
［センサエミュレーション］
次に、センサエミュレーションの機能を図６に基づいて説明する。操作装置ＳＰは、スマートフォン等の携帯端末であり、手元で操作すること及び移動体端末であることを前提としたハードウェアを備えている。このため、操作装置ＳＰは、視聴装置ＳＫには搭載されていない各種のハードウェアセンサを備えている。一方、視聴装置ＳＫは、ＵＳＢメモリ程度の比較的小さく軽量かつ比較的安価な装置であり、操作装置ＳＰに比べ搭載しているハードウェアが限られている。そこで、操作装置ＳＰのハードウェアセンサの機能を、疑似的に視聴装置ＳＫの機能として利用することを考える（センサエミュレーション機能）。即ち、操作装置ＳＰのハードウェアセンサの出力を、あたかも視聴装置ＳＫに搭載されたハードウェアセンサの出力であるかのように、視聴装置ＳＫにリアルタイムに伝送する。これにより、視聴装置ＳＫのアプリケーションプログラムは、操作装置ＳＰのアプリケーションプログラムと同じようにハードウェアセンサの出力を利用する処理を実行することが可能となる。
【００４４】
図６において、操作装置ＳＰは、ハードウェアセンサ３１の出力に基づくセンサ値情報を視聴装置ＳＫに送信する送信部３２を備えている。一方、視聴装置ＳＫは、操作装置ＳＰからセンサ値情報を受信する受信部４２を備えている。また、視聴装置ＳＫは、当該センサ値情報に基づく入力情報をハードウェアセンサ３１に相当する仮想センサデバイス４１に入力する入力部４３を備えている。更に、視聴装置ＳＫは、仮想センサデバイス４１の出力に基づいて自装置の動作を制御する動作制御部４４を備えている。
【００４５】
これを更に詳述すると、本実施形態において、センサ値情報は、複数のハードウェアセンサ３１を区別するセンサ識別子とセンサ値との関連付けを含む。入力部４３は、複数の仮想センサデバイス４１のうち、センサ識別子に対応する仮想センサデバイスに入力情報を入力する。
【００４６】
本実施形態において、操作装置ＳＰのハードウェアセンサ３１は、圧力センサ、近接センサ、温度センサ、湿度センサ、ＧＰＳ、ジャイロセンサ、加速度センサ、照明センサ及び磁界センサ等を含む。各ハードウェアセンサは、センサの出力信号値を、それぞれ対応するセンサドライバ３５に入力する。各センサドライバ３５は、各センサから取得した出力信号値をアプリケーションプログラム用のセンサ値に変換し送信部３２に渡す。送信部３２は、アプリケーションプログラムの処理により、取得した各センサのセンサ値と各センサのセンサ識別子とを関連付けたセンサ値情報を生成し、視聴装置ＳＫにリアルタイムに送信する。ここで「センサ識別子」とは、一のセンサデバイスを特定するための一意の識別子であり、他のセンサデバイスと重複しない値が指定される。
【００４７】
視聴装置ＳＫの受信部４２は、操作装置ＳＰから送信されたセンサ値情報を受信し、入力部４３に渡す。視聴装置ＳＫは、処理装置がプログラムを実行することにより動作する仮想センサデバイス４１を備えている。仮想センサデバイス４１は、操作装置ＳＰのハードウェアセンサ３１に対応する複数の仮想センサデバイスを備えている。即ち、仮想センサデバイス４１は、本実施形態において、圧力センサ、近接センサ、温度センサ、湿度センサ、ＧＰＳ、ジャイロセンサ、加速度センサ、照明センサ及び磁界センサ等の仮想モデルを含む。仮想センサデバイス４１は、視聴装置ＳＫのＯＳが認識できるように構成されている。各仮想センサデバイスには、センサ識別子が割り振られている。入力部４３は、受信部４２からセンサ値情報を受信すると、センサ識別子に対応する仮想センサデバイス４１にセンサ値を入力する。このとき、入力部４３は、仮想センサデバイス４１の入力端子の仕様に適合するように、センサ値データを変換し、仮想センサデバイス４１に入力する。
【００４８】
仮想センサデバイス４１は、上記変換後のセンサ値を入力されると、当該センサ値を出力した操作装置ＳＰのハードウェアセンサ３１と同一の出力信号値を出力するようにモデリングされている。例えば、操作装置ＳＰの圧力センサ３１に対応する視聴装置ＳＫの仮想センサデバイス４１は、圧力センサ３１の出力信号値と同一の出力信号値をリアルタイムに出力する。ここで、本実施形態において、操作装置ＳＰのプラットフォームと視聴装置ＳＫのプラットフォームは同一である。操作装置ＳＰのセンサドライバ３５と視聴装置ＳＰのセンサドライバ４５も構成は同一である。視聴装置ＳＫのＯＳは、仮想センサデバイス４１から出力された信号を、視聴装置ＳＫに搭載されたハードウェアセンサから発生した信号であると認識してＯＳの通常の処理を実行する。操作装置ＳＰにおいてセンサドライバ３５からアプリケーションプログラムに渡されるセンサ値と、視聴装置ＳＫにおいてセンサドライバ４５からアプリケーションプログラムに渡されるセンサ値とは同一になる。視聴装置ＳＫの動作制御部４４は、処理装置がアプリケーションプログラムを実行することにより動作し、センサドライバ４５から取得したセンサ値に応じた処理を実行する。
【００４９】
以上のセンサエミュレーション機能によると、操作装置ＳＰのハードウェアセンサが出力した信号値を、あたかも視聴装置ＳＫでリアルタイムに発生した信号値であるかのように取り扱い、視聴装置ＳＫの動作を制御することができる。よって、視聴装置ＳＫのアプリケーションプログラムは、自装置に搭載していないハードウェアセンサの機能を利用することができる。
【００５０】
前述のプロジェクションモードでは、視聴装置ＳＫの表示画面を操作装置ＳＰのタッチパネルにリアルタイムに投影する。この状態で、センサエミュレーション機能を利用して操作装置ＳＰのタッチパネルからタッチセンサや圧力センサ等の値を視聴装置ＳＫにリアルタイムに反映する。これにより、視聴装置ＳＫから操作装置ＳＰの表示装置に投影されたＵＩを操作装置ＳＰから操作することができる。よって、プロジェクションモードとセンサエミュレーション機能との組み合わせは、視聴装置ＳＫが主体的に提供するＵＩを、操作装置ＳＰからリモート操作するシステムを実現する。これは、操作とＵＩとの分離を実現する。また、開発者は、視聴装置ＳＫにハードウェアセンサが搭載されている前提で視聴装置ＳＫのアプリケーションプログラムを作成することができる。また、開発者は、視聴装置ＳＫのアプリケーションプログラムを作成するにあたり、操作装置ＳＰのハードウェアセンサの出力を利用することを意識する必要がない。
【００５１】
以上のセンサエミュレーション機能の説明において、操作装置ＳＰの送信部３２及びセンサドライバ３５は、操作装置ＳＰの処理装置がプログラムを実行することにより実現される。また、視聴装置ＳＫの仮想センサデバイス４１、受信部４２、入力部４３、動作制御部４４及びセンサドライバ４５は、視聴装置ＳＫの処理装置がプログラムを実行することにより実現される。ここで、センサエミュレーション機能の利用は、プロジェクションモードに限られない。また、センサの種類は問わない。
【００５２】
［ビューモード］
次に、ビューモードについて説明する。前述したプロジェクションモードは、視聴装置ＳＫが表示する画面を操作装置ＳＰの表示装置に同期的に表示させるモードである。しかし、視聴装置ＳＫが表示するシーンによっては、操作装置ＳＰに視聴装置ＳＫの画面とは異なるＵＩを表示させたい場合がある。ビューモードは、視聴装置ＳＫが表示する画面のシーンに応じて、視聴装置ＳＫが表示する画面と異なるＵＩを操作装置ＳＰに表示させるモードである。
【００５３】
図７は、ビューモードの構成を含んでいる。図７において、視聴装置ＳＫは、操作装置ＳＰに操作ＵＩを提供する。即ち、視聴装置ＳＫの通信部６１は、コンテンツの表示シーンに対応する操作ＵＩ構成情報を視聴装置ＳＫから操作装置ＳＰに送信する。操作装置ＳＰの表示制御部５３は、操作ＵＩ構成情報に従って自装置の表示装置２６に操作ＵＩを表示する。視聴装置ＳＫの通信部６１及び操作装置ＳＰの表示制御部５３は、視聴装置ＳＫが表示するシーンを変更する毎に上記の動作を繰り返す。
【００５４】
視聴装置ＳＫは、テレビモニタＭＯＮに表示させるシーンの識別子（表示シーン識別子）と操作ＵＩ構成情報との関連付けを、シーンごとに記憶部６２に記憶している。視聴装置ＳＫの通信部６１は、表示シーンが変更される場合、変更後の表示シーンの識別子に関連付けられた操作ＵＩ構成情報を記憶部６２から読み出して操作装置ＳＰに送信する。「表示シーン識別子」は、コンテンツの表示シーン毎に固有の識別子である。
【００５５】
これを更に詳述すると、視聴装置ＳＫにおいて、表示制御部６３は、記憶部から取得した表示コンテンツをテレビモニタＭＯＮに表示する。ビューモードの実行時において、表示制御部６３のシーン変更検知部は、表示制御部６３が表示する表示シーンの変更を検知する。表示シーンの変更を検知する方法には幾つか考えられる。例えば、操作装置ＳＰから取得した表示シーンを変更する操作情報に基づいて検知する方法、現在表示中のシーンの表示シーン識別子と次に表示するシーンの表示シーン識別子とが異なることを検知する方法、等が考えられる。
【００５６】
表示コンテンツがＵＩである場合、表示シーン識別子は、当該ＵＩに含まれる選択可能なオブジェクト毎に付与されていてもよい。ＵＩの表示において、一のオブジェクトが選択されているシーンと、他のオブジェクトが選択されているシーンは、別々の表示シーンである。この場合、当該一のオブジェクトと他のオブジェクトとにそれぞれ異なる表示シーン識別子を付与するとよい。
【００５７】
本実施形態において、シーン変更検知部は、表示シーンの変更を検知すると、次に表示するシーンの表示シーン識別子を通信部６１を介して操作装置ＳＰに送信する。又は、シーン変更検知部は、表示シーンの変更を検知すると、次に表示するシーンの表示シーン識別子に関連付けられた操作ＵＩ構成情報のアドレス（ＵＲＬ等）を記憶部６２から取得し、通信部６１を介して操作装置ＳＰに送信する。操作装置ＳＰは、視聴装置ＳＫから送信された表示シーン識別子又は操作ＵＩ構成情報のアドレスを通信部５１を介して受信し、モード選択部５２に渡す。モード選択部５２は、表示シーン識別子を取得した場合、表示シーン識別子をクエリ文字列として視聴装置ＳＫのＨＴＴＰサーバ上のアドレスに付加し通信部５１のＨＴＴＰクライアントに渡す。又は、モード選択部５２は、操作ＵＩ構成情報のアドレスを取得した場合、視聴装置ＳＫのＨＴＴＰサーバ上にある当該アドレスを通信部５１のＨＴＴＰクライアントに渡す。
【００５８】
操作装置ＳＰのＨＴＴＰクライアントは、モード選択部５２から渡された視聴装置ＳＫのＨＴＴＰサーバ上のアドレスに宛てて、表示シーン識別子に関連付けられた操作ＵＩ構成情報を又は操作ＵＩ構成情報の実体を直接、リクエストする。視聴装置ＳＫのＨＴＴＰサーバは、このリクエストを受信し、リクエストに対応する操作ＵＩ構成情報を記憶部６２から読み出し、操作装置ＳＰのＨＴＴＰクライアントに送信する。操作ＵＩ構成情報は、本実施形態において、手続き型言語によるプログラムであり、例えば、ＨＴＭＬ５やJavaScript（登録商標）等で記述し、ＣＳＳ（Cascading Style Sheets）等のスタイルシートを伴ってもよい。
【００５９】
操作装置ＳＰのＨＴＴＰクライアントは、視聴装置ＳＫから送信された操作ＵＩ構成情報を受信し、操作ＵＩ構成情報に従って表示装置２６に視聴装置ＳＫの表示シーンに対応するＵＩを表示する。視聴装置ＳＫと操作装置ＳＰは、視聴装置ＳＫが表示するシーンの変更が検知される毎に直ちに上記の処理を繰り返す。
【００６０】
本実施形態において、操作ＵＩ構成情報に基づいて操作装置ＳＰに表示したＵＩをユーザが入力装置５４を用いて操作した場合、その後に必要となる操作装置ＳＰと視聴装置ＳＫとの間の通信は、操作装置ＳＰのWebSocketクライアントと、視聴装置ＳＫのWebSocketサーバとの間で行われる。
【００６１】
以上のビューモードによれば、視聴装置ＳＫが表示するシーンに応じて、操作装置ＳＰが表示するＵＩを動的に変化させることができる。つまり、視聴装置ＳＫが表示する画面と、これをコントロールする操作装置の画面とをシーンに応じて別々にすることができる。かつ、操作装置ＳＰのユーザは、シーン毎に適したＵＩを用いて視聴装置ＳＫの動作をコントロールすることができる。よって、視聴装置ＳＫと操作装置ＳＰから成るシステム全体で表現できる画面のバリエーションが広がる。また、視聴装置ＳＫのソフトウェア開発者は、簡単なＳＤＫ（ソフトウェア開発キット）を呼び出し、シーンに応じた操作ＵＩ構成情報を登録することにより、シーンに応じた所望のＵＩを操作装置ＳＰに表示させることが可能である。即ち、２デバイス間でのプログラマブルな実行環境を実現できる。
【００６２】
［ハイブリッドモード］
次に、既述のプロジェクションモードとビューモードとを表示シーンに応じて選択的に実行するハイブリッドモードを説明する。図７は、ハイブリッドモードの構成図である。視聴装置ＳＫの記憶部６２は、表示シーン識別子毎に操作ＵＩ構成情報又はプロジェクションモード指示情報を関連付けて記憶している。「表示シーン識別子」及び「操作ＵＩ構成情報」は、既述の通りである。「プロジェクションモード指示情報」は、操作装置ＳＰに既述のプロジェクションモードを実行するように指示する情報である。
【００６３】
視聴装置ＳＫの表示制御部６３は、記憶部から取得した表示コンテンツをテレビモニタＭＯＮに表示する。また、表示制御部６３は、シーン変更検知部とプロジェクションモード処理部とを備えている。視聴装置ＳＫのプロジェクションモード処理部は、既述のプロジェクションモードの視聴装置ＳＫ側の処理を実行する。ハイブリッドモードの実行時において、シーン変更検知部は、表示制御部６３が表示するシーンの変更を検知する。表示シーンの変更を検知する方法は、既述の通りである。
【００６４】
本実施形態において、シーン変更検知部は、表示シーンの変更を検知すると、記憶部６２を参照し、次に表示するシーンの表示シーン識別子に関連付けられている情報が操作ＵＩ構成情報であるか又はプロジェクションモード指示であるかを判定する。
【００６５】
この結果、表示シーン識別子に関連付けられている情報が操作ＵＩ構成情報である場合、シーン変更検知部は、その表示シーン識別子を通信部６１を介して操作装置ＳＰに送信する。又は、シーン変更検知部は、その表示シーン識別子に関連付けられた操作ＵＩ構成情報のアドレス（ＵＲＬ等）を記憶部６２から取得し、通信部６１を介して操作装置ＳＰに送信する。一方、上記判定の結果、表示シーン識別子に関連付けられている情報がプロジェクションモード指示情報である場合、シーン変更検知部は、視聴装置ＳＫのプロジェクションモード処理部に対し、既述のプロジェクションモードの視聴装置ＳＫ側の処理を実行するように指示する。また、この場合、シーン変更検知部は、プロジェクションモード実行指示を通信部６１を介して操作装置ＳＰに送信する。
【００６６】
操作装置ＳＰは、視聴装置ＳＫから送信された表示シーン識別子、操作ＵＩ構成情報のアドレス又はプロジェクションモード実行指示を通信部５１を介して受信し、モード選択部５２に渡す。モード選択部５２は、表示シーン識別子又は操作ＵＩ構成情報のアドレスを取得した場合、ビューモードを選択する。一方、モード選択部５２は、プロジェクションモード実行指示を取得した場合、プロジェクションモードを選択する。
【００６７】
モード選択部５２が、ビューモードを選択した場合、既述のビューモードの処理を視聴装置ＳＫと操作装置ＳＰとの共働により実行する。一方、モード選択部５２が、プロジェクションモードを選択した場合、既述のプロジェクションモードの処理を視聴装置ＳＫと操作装置ＳＰとの共働により実行する。以上の処理を視聴装置ＳＫの表示するシーンが変更される毎に繰り返す。
【００６８】
以上のハイブリッドモードによれば、視聴装置ＳＫが表示するシーンに応じて、操作装置ＳＰの表示装置にプロジェクションモードによる投影画面又はビューモードによる操作装置用のＵＩを動的に切り替えて表示することができる。これにより、操作装置ＳＰが、より高度なコントローラとなる。
【００６９】
以上のビューモード及びハイブリッドモードの説明において、視聴装置ＳＫの通信部６１及び表示制御部６３は、視聴装置ＳＫの処理装置がプログラムを実行することにより実現する。また、操作装置ＳＰの通信部５１、モード選択部５２及び表示制御部５３は、操作装置ＳＰの処理装置がプログラムを実行することにより実現する。
【００７０】
以上が本発明の実施形態であるが、本発明は、以上の実施形態に限定されるものではない。上記実施形態において、プロジェクションモード及びセンサエミュレーション機能は、視聴装置ＳＫと操作装置ＳＰとにより実行されるが、これに限らず、一方の装置と他方の装置とにより実行することができる。また、上記実施形態において、ビューモード及びハイブリッドモードも、視聴装置ＳＫと操作装置ＳＰとにより実行されるが、これに限らず、操作装置と被操作装置とにより実行することができる。本発明の範囲は、特許請求の範囲に記載した発明の範囲であり、上記実施形態に限定されない。
【符号の説明】
【００７１】
１１，６２  視聴装置の記憶装置
１２  視聴装置の命令生成部
１３  視聴装置の送信部
１４  視聴装置の命令実行部
１５  視聴装置の表示処理部
２１  操作装置の記憶装置
２３  操作装置の受信部
２４  操作装置の命令実行部
２５  操作装置の表示処理部
２６  操作装置の表示装置
３１  操作装置のハードウェアセンサ
３２  操作装置の送信部
３５  操作装置のセンサドライバ
４１  視聴装置の仮想センサデバイス
４２  視聴装置の受信部
４３  視聴装置の入力部
４４  視聴装置の動作制御部
４５  視聴装置のセンサドライバ
５１  操作装置の通信部
５２  操作装置のモード選択部
５３  操作装置の表示制御部
５４  操作装置の入力装置
６１  視聴装置の通信部
６３  視聴装置の表示制御部
ＡＰ  アクセスポイント
ＣＳ  コンテンツサーバ
Ｌ１，Ｌ２，Ｌ３  直線
ＭＯＮ  テレビモニタ
Ｑ  四角形
ＳＫ  視聴装置
ＳＰ  操作装置
【図１】
2016127424.tif 000003
【図２】
2016127424.tif 000004
【図３】
2016127424.tif 000005
【図４】
2016127424.tif 000006
【図５】
2016127424.tif 000007
【図６】
2016127424.tif 000008
【図７】
2016127424.tif 000009