以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。なお、説明は以下の順序で行う。
1.第1の実施形態(インデックス情報を利用したダウンロードによる機能拡張)
2.第2の実施形態(データフォーマットによる利用サービスの自動選別)
<第1の実施形態>
[システム全体構成]
まず、図1を参照して、本発明の第1の実施形態にかかる通信システムの概要について説明する。図1は、本実施形態にかかる通信システムを示す概略構成図である。
なお、以下の説明では、本発明の情報処理装置の一例としてテレビジョン受像器の例を挙げ、拡張機能としてアップロード機能を挙げて、テレビジョン受像器においてアップロード機能を実現する例について説明する。
図1に示すように、本実施形態にかかる通信システムは、ネットワーク5に接続可能なテレビジョン受像器10と、アップロード機能拡張サーバ20と、アップロードサービスサーバ30と、外部記憶装置40と、ネットワーク記憶装置50とから構成される。テレビジョン受像器10、アップロード機能拡張サーバ20、アップロードサービスサーバ30及びネットワーク記憶装置50は、ネットワーク5を介して相互通信可能に接続されている。外部記憶装置40は、外付け型の記憶装置又はリムーバブルメディア44などで構成される。外付け型の記憶装置は、例えば、HDD(Hard Disk Drive)42等である。リムーバブルメディア44は、例えば、USB(Universal Serial Bass)フラッシュメモリ、メモリカード、光ディスク(例えばDVD、CD)等である。外部記憶装置40は、テレビジョン受像器に着脱自在に接続される。
ネットワーク5は、テレビジョン受像器10と、アップロード機能拡張サーバ20、アップロードサービスサーバ30及びネットワーク記憶装置50とを、相互に通信可能に接続する通信網であり、有線又は無線を問わない。このネットワーク5は、例えば、インターネット、電話回線網、衛星通信網等の公衆回線網や、Ethernet(登録商標)を含む各種のLAN(Local Area Network)、WAN(Wide Area Network)、IP−VPN(Internet Protocol−Virtual Private Network)等の専用回線網などを使用できる。
テレビジョン受像器(以下、TV受像器という。)10は、ユーザがテレビジョン放送番組などの映像・音声コンテンツを視聴するための表示装置である。TV受像器10は、不図示の放送局から、テレビジョン放送の番組コンテンツを、例えば放送電波又は専用通信網などを介して受信して、該番組の映像を表示画面に表示する。放送番組は、例えば、BS放送、CS放送、地上波デジタル放送、地上波アナログ放送、ケーブル放送など、任意の方式のテレビジョン放送の番組であってよい。また、番組には、IPTV(Internet Protocol Television)、VOD(Video On Demand)などの配信コンテンツも含まれる。また、TV受像器10は、ネットワーク通信機能を有しており、ネットワーク記憶装置50、コンテンツ配信サーバ(図示せず。)などの外部機器からネットワーク5を介してコンテンツを取得することもできる。また、TV受像器10は、HDD42又はリムーバブルメディア44などの外部記憶装置40からコンテンツを取得することもできる。
なお、TV受像器10において取り扱うコンテンツは、例えば、上記のテレビジョン番組に限られず、映画、ビデオプログラム、写真、フォト動画等を構成する静止画若しくは動画からなる映像(Video)コンテンツであってもよい。それ以外にも、当該コンテンツは、音楽、講演、ラジオ番組等の音声(Audio)コンテンツ、電子図書(E−book)、ゲーム、ソフトウェアなど、任意のコンテンツであってよい。以下では、TV受像器10が、外部記憶装置40又はネットワーク記憶装置50に保存された写真データ等の映像コンテンツのデータファイルを、アップロードサービスサーバ30にアップロードする例を挙げて説明する。しかし、本発明はかかる例に限定されず、例えば、動画コンテンツ、音楽コンテンツなど、他の任意のコンテンツをアップロードすることもできる。
アップロード機能拡張サーバ20及びアップロードサービスサーバ30は、コンピュータ装置で構成され、クライアントである情報処理装置(本実施形態にかかるTV受像器10)とネットワーク5を介して相互に通信可能である。
アップロード機能拡張サーバ(以下、機能拡張サーバという。)20は、本発明のサーバ装置の一例である。該機能拡張サーバ20は、TV受像器10からの要求に応じて、TV受像器10の拡張機能(例えば、アップロード機能)に関するインデックス情報を、ネットワーク5を介してTV受像器10に配信する。また、機能拡張サーバ20は、TV受像器10からの要求に応じて、TV受像器10の拡張機能(例えばアップロード機能)用のソフトウェアを配信する。
拡張機能は、所定の外部装置が提供する所定のサービスと情報処理装置(TV受像器10)とが連携することで、情報処理装置に提供される追加機能である。例えば、拡張機能は、所定のサービスを提供する外部装置(サービスサーバ30)と情報処理装置(TV受像器10)とがネットワーク5を介して通信することにより実現される機能である。該機能としては、例えば、アップロード機能、ダウンロード機能、配信コンテンツの受信機能などを例示できる。
インデックス情報は、当該拡張機能の属性情報であり、拡張機能の種類や、所在、サービスの利用可否状態など識別するための指標となる。インデックス情報は、例えば、拡張機能の機能名、拡張機能を実行するためのソフトウェアの所在情報、該追加機能を提供するサービスのサービス名、サービスの開始日時、停止期間、休止期間、サービスが対応可能なデータフォーマットを表す情報などを含む。このうち、該ソフトウェアの所在情報は、例えば、該ソフトウェアの保存場所を表すネットワーク5上のアドレス情報である。該所在情報としては、例えば、URI(Universal Resource Identifier)、URL(Uniform Resource Locator)などを使用できる。
アップロードサービスサーバ(以下、サービスサーバという。)30は、クライアントとしての情報処理装置(本実施形態ではTV受像器10)に、ネットワーク通信を利用した所定のサービスを提供する外部装置の一例である。本実施形態にかかるサービスサーバ30は、TV受像器10にアップロードサービスを提供する。アップロードサービスは、TV受像器10が、自身の保有するデータファイルを、ネットワーク5を介して外部装置にアップロードするためのサービスである。TV受像器10は、アップロード用のソフトウェアがインストールされることにより、拡張機能としてアップロード機能を実行可能となる。サービスサーバ30は、TV受像器10のアップロード機能を支援する。これにより、TV受像器10は、該TV受像器10に接続された外部記憶装置40やネットワーク記憶装置50に保存されたデータファイルを、ネットワーク5を介して所望の外部装置(例えばサービスサーバ30)にアップロードできるようになる。
なお、図1では、1つのサービスサーバ30のみを示しているが、複数のサービス(例えば、アップロードサービスとダウンロードサービス)が提供される場合には、サービスごとに複数のサービスサーバを設けてもよい。また、同種のサービスを複数の事業者が提供する場合には、事業者ごとに複数のサービスサーバを設けてもよい。
ところで、上記のTV受像器10は、コンピュータシステムとして、TV受像器10に特有の特定機能を実現するための組み込みシステムを備えている。組み込みシステムは、PCなどにおける汎用のコンピュータシステムとは異なり、要求される機能や性能が限定され、厳しいコスト上の制限から利用可能なハードウェア資源に制約がある。例えば、一般的な組み込みシステムは、PCなどと比べて、安価なCPU(Central Processing Unit)と、少ないメモリと、プログラムを内蔵するROM(Read Only Memory)とからなり、ディスク記憶装置も入出力機器も具備していないことが多い。
このため、かかる組み込みシステムを備えた従来のTV受像器においては、組み込みシステムの仕様上の制約により、拡張機能を提供するサービスの状況変化(開始、停止、休止など)に応じて柔軟に対応できず、拡張機能の追加/削除などが困難であった。
そこで、本実施形態では、サービスサーバ30が提供するサービスやその拡張機能に関するインデックス情報を、機能拡張サーバ20からネットワーク5を介してTV受像器10に配信する。これにより、新たなサービスの追加、既存のサービスの停止若しくは休止や、サービス内容の変化、対応サービスの追加、削除などを、機能拡張サーバ20からTV受像器10に通知できる。さらに、TV受像器10は、機能拡張サーバ20から取得したインデックス情報に基づいて、TV受像器10で実行可能な拡張機能の機能名を、表示画面のメニューに表示したり、その機能名の表示を追加、削除、活性化又は非活性化したりできる。
そして、TV受像器10は、拡張機能の実行時に、上記インデックス情報に含まれるソフトウェアの所在情報に基づいて、該拡張機能を実現するためのソフトウェアをダウンロードする。ダウンロード元は、例えば、アップロード機能拡張サーバ20又はアップロードサービスサーバ30などのサーバ装置である。この結果、TV受像器10は、当該ダウンロードしたソフトウェアを実行することで、TV受像器10における拡張機能(例えばアップロード機能)を実現できる。
このように、機能拡張サーバ20からTV受像器10に、拡張機能のインデックス情報を配信する。これにより、TV受像器10は、各種の拡張機能を実行できるか否かや、当該拡張機能を提供する各種サービスの状況(サービス開始、終了、休止など)、各拡張機能の内容(例えば、アップロード可能なデータフォーマットなど)を検知できる。さらに、TV受像器10は、機能拡張サーバ20から、インデックス情報に基づいて、拡張機能用のソフトウェアをダウンロードすることで、当該ソフトウェアを用いて新たな拡張機能を実行できるようになる。従って、TV受像器10において、拡張機能の追加/削除/活性化/不活性化、又は、対応サービスの追加/削除を、サービスの状況変化に応じてほぼリアルタイムに、かつ、容易に実施できる。また、TV受像器10は、インデックス情報に基づいて、表示画面のメニューに拡張機能の機能名を表示したり、その機能名の表示を追加、削除、活性化/非活性化したりする。これにより、ユーザは、TV受像器10で実行可能な拡張機能や、サービスの状況変化を容易に認知できる。
また、本実施形態では、TV受像器10の拡張機能を実現するためのソフトウェアとして、ウィジェット(widget)が用いられる。ウィジェットは、特定機能を実現するのに適した簡易なアプリケーションソフトウェアである。かかるウィジェットは、機能拡張サーバ20からネットワーク5を介してTV受像器10に容易かつ迅速に配信できる。かつ、TV受像器10の組み込みシステムで該ウィジェットを実行したとしても、処理負荷が低く、メモリの消費量も少ない。
[テレビジョン受像器のハードウェア構成]
次に、図2を参照して、本実施形態にかかるTV受像器10のハードウェア構成について説明する。図2は、本実施形態にかかるTV受像器10のハードウェア構成を示すブロック図である。
図2に示すように、本実施形態にかかるTV受像器10は、表示パネル100と、CPU108と、フラッシュROM110と、フラッシュメモリ112と、SDRAM(Synchronous Dynamic Random Access Memory)114と、リモートコントローラ受光部116と、ネットワークI/F118と、ネットワーク端子120と、地上波チューナー122と、デジタルチューナー124と、音声A/D変換回路126と、ビデオデコーダ128と、MPEGデコーダ130と、音声信号処理回路132と、映像信号処理回路134と、HDMI(High−Definition Multimedia Interface)レシーバ136と、HDMI端子138と、音声増幅回路140と、スピーカ142と、グラフィック生成回路144と、パネル駆動回路146と、を備える。
地上波チューナー122は、アナログ地上波を受信する地上波アンテナ102から送られてくる放送波信号を受信し、放送波信号に含まれる映像信号および音声信号を、ベースバンドの信号に復調する。地上波チューナー122で復調されたベースバンドの信号のうち、音声信号は音声A/D変換回路126に送られ、映像信号はビデオデコーダ128に送られる。
デジタルチューナー124は、デジタル放送を受信するデジタルアンテナ104から送られてくる放送波信号を受信し、受信した放送波信号をMPEG2−TS(MPEG2 Transport Stream)に変換する。変換されたMPEG2−TSは、MPEGデコーダ130に送られる。
音声A/D変換回路126は、地上波チューナー122で復調されたアナログ音声信号を受け取り、アナログ音声信号をデジタルの音声信号に変換する。変換されたデジタル音声信号は、音声信号処理回路132に送られる。
ビデオデコーダ128は、地上波チューナー122で復調された映像信号を受け取り、アナログ映像信号をデジタルコンポーネント信号に変換する。変換されたデジタルコンポーネント信号は映像信号処理回路134に送られる。
MPEGデコーダ130は、デジタルチューナー124から送られてくるMPEG2−TSを受信し、音声についてはMPEG2−TSからデジタルの音声信号に変換し、映像についてはMPEG2−TSからデジタルコンポーネント信号に変換する。変換されたデジタル音声信号は音声信号処理回路132に送られ、変換されたデジタルコンポーネント信号は映像信号処理回路134に送られる。
音声信号処理回路132は、音声A/D変換回路126やMPEGデコーダ130から送られてくるデジタル音声信号を受信し、該デジタル音声信号に対する信号処理を行う。信号処理された音声信号は音声増幅回路140に送られる。
音声増幅回路140は、音声信号処理回路132から出力される音声信号を受信し、所定量増幅して出力する。音声増幅回路140における増幅量は、TV受像器10のユーザによって指示される音量に応じたものとなる。音声増幅回路140で増幅された音声信号は、スピーカ142に送られる。スピーカ142は、音声増幅回路140から送られてくる音声信号に基づいて音声を出力する。
映像信号処理回路134は、ビデオデコーダ128やMPEGデコーダ130から送られてくるデジタルコンポーネント信号を受け取り、デジタルコンポーネント信号に対する信号処理を行う。信号処理されたデジタルコンポーネント信号はグラフィック生成回路144に送られる。
HDMIレシーバ136は、外部入力端子の一つであるHDMI端子138から入力されるデジタルベースバンド信号を受信する。HDMIレシーバ136で受信したデジタルベースバンド信号は、音声信号処理回路132および映像信号処理回路134に送られ、それぞれ音声信号やデジタルコンポーネント信号に対する信号処理が行われる。
グラフィック生成回路144は、TV受像器10の操作に必要となるグラフィック画面(例えば、拡張機能の操作メニュー画面)を生成する。TV受像器10の操作に必要となるグラフィック画面は、ユーザの操作によって異なるものが生成される。グラフィック生成回路144で生成されるグラフィック画面は、映像信号処理回路134から送られてくる映像信号に重畳したり、映像信号と差し替えたりして、パネル駆動回路146へ送られる。なお、グラフィック画面が生成されない場合には、映像信号処理回路134から送られてくる映像信号をそのままパネル駆動回路146へ通過させてもよい。
パネル駆動回路146は、グラフィック生成回路144から送られてくる映像信号から、表示パネル100に映像を表示するために必要となるパネル駆動信号を生成する。パネル駆動回路146で生成されたパネル駆動信号は表示パネル100に送られ、表示パネル100がパネル駆動信号に応じて動作することで、映像が表示パネル100に表示される。
表示パネル100は、パネル駆動回路146から送られてくるパネル駆動信号に基づいて画像(動画像又は静止画像)を表示する。表示パネル100は、例えば、LCD(Liquid Crystal Display)で構成されるが、それ他にも、PDP(Plasma Display Panel)、有機EL(electro−luminescence)パネルなどであってもよい。
CPU108、フラッシュROM110、フラッシュメモリ112及びSDRAM114は、上述した組み込みシステムを構成する。この組み込みシステムは、上記TV受像器10の各部を制御するとともに、ダウンロードされたソフトウェアを用いて動作して、各種の拡張機能を実行する。
CPU108は、TV受像器10の各部を制御する制御部として機能する。CPU108は、フラッシュROM110に格納されているコンピュータプログラムを読み出して、順次実行することで、TV受像器10の各部を制御する。また、CPU108は、フラッシュメモリ112に記憶された、拡張機能用のソフトウェアのコンピュータプログラムを読み出して、該プログラムを実行する。これにより、TV受像器10において、アップロード機能などの拡張機能を実現できる。フラッシュROM110は、CPU108がTV受像器10の各部を制御するためのコンピュータプログラムを格納する。フラッシュメモリ112は、読み書き自由なメモリであり、上記機能拡張サーバ20からダウンロードされた拡張機能用のコンピュータプログラムを格納する。SDRAM114は、CPU108が上記各コンピュータプログラムを実行するときの一時作業領域である。
リモートコントローラ受光部116は、リモートコントローラ106から送信されてきた信号を受信する。リモートコントローラ受光部116で受信した信号はCPU108に入力される。CPU108は、当該信号に含まれる制御コードを解読し、当該制御コードに応じた動作(音量の調整、チャンネルの設定、操作メニューの表示等)をするようにTV受像器10の各部を制御する。
ネットワークI/F118は、ネットワーク5経由でネットワーク端子120から入力されるデータを受信したり、ネットワーク端子120を介してネットワーク5へデータを送信したりする。ネットワークI/F118は、ネットワーク5経由のデータ(例えば、拡張機能用のソフトウェア、インデックス情報など)を受信すると、受信データをCPU108に送る。CPU108は、ネットワーク5経由で取得したデータを解析したり、フラッシュメモリ112に保存したりする。
なお、TV受像器10の各部は内部バス121で相互に接続されており、CPU108によってTV受像器10の各部の制御が可能となるように構成されている。また、TV受像器10とリモートコントローラ106とは相互に無線通信してもよい。また、TV受像器10の本体に、ユーザ操作のためのボタン、ダイヤル等からなる入力部を設けてもよい。
[サーバ装置のハードウェア構成]
次に、図3を参照して、本実施形態にかかる機能拡張サーバ20のハードウェア構成について説明する。図3は、本実施形態にかかる機能拡張サーバ20のハードウェア構成を示すブロック図である。なお、サービスサーバ30のハードウェア構成も図2の機能拡張サーバ20と同様である。
図3に示すように、機能拡張サーバ20は、例えば、CPU201と、ROM202と、RAM203と、ホストバス204と、ブリッジ205と、外部バス206と、インタフェース207と、入力装置208と、出力装置209と、ストレージ装置(HDD)210と、ドライブ211と、接続ポート212と、通信装置213とを備える。このように機能拡張サーバ20は、例えば、汎用のコンピュータ機器を用いて構成できる。
CPU201は、演算処理装置および制御装置として機能し、各種プログラムに従って動作し、機能拡張サーバ20内の各部を制御する。このCPU201は、ROM202に記憶されているプログラム、或いは、ストレージ装置120からRAM203にロードされたプログラムに従って、各種の処理を実行する。ROM202は、CPU201が使用するプログラムや演算パラメータ等を記憶するとともに、CPU201からストレージ装置210へのアクセスを軽減するためのバッファーとしても機能する。RAM203は、CPU201の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を一時記憶する。これらはCPUバスなどから構成されるホストバス204により相互に接続されている。ホストバス204は、ブリッジ205を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス206に接続されている。
入力装置208は、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチ、レバー等の操作手段と、入力信号を生成してCPU201に出力する入力制御回路などから構成されている。出力装置209は、例えば、CRT(Cathode Ray Tube)ディスプレイ装置、液晶ディスプレイ(LCD)装置、ランプ等の表示装置と、スピーカ等の音声出力装置などで構成される。なお、入力装置208及び出力装置210を設置してなくてもよい。
ストレージ装置210は、各種のデータを格納するための記憶装置であり、例えば、HDD(Hard Disk Drive)などの外付け型若しくは内蔵型のディスクドライブで構成される。このストレージ装置210は、記憶媒体であるハードディスクを駆動し、CPU201が実行するプログラムや各種データを格納する。ドライブ211は、記憶媒体用リーダライタであり、機能拡張サーバ20に内蔵、或いは外付けされる。このドライブ211は、機能拡張サーバ20にローディングされた磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記憶媒体に対して、各種データを書き込み/読み出しする。
接続ポート212は、外部周辺機器を接続するためのポートであり、例えば、USB、IEEE1394等の接続端子を有する。接続ポート212は、インタフェース207、および外部バス206、ブリッジ205、ホストバス204等を介してCPU201等に接続されている。通信装置213は、例えば、ネットワーク5に接続するための通信デバイス等で構成された通信インタフェースである。この通信装置213は、TV受像器10、サービスサーバ30等のネットワーク通信機能を備えた外部装置との間で、ネットワーク5を介して、各種データを送受信する。
[テレビジョン受像器及びサーバ装置の機能構成]
次に、図4を参照して、本実施形態にかかるTV受像器10及び機能拡張サーバ20の機能構成について説明する。図4は、本実施形態にかかるTV受像器10及び機能拡張サーバ20の主要機能部を概略的に示すブロック図である。
図4に示すように、TV受像器10は、情報要求部150と、情報受信部152と、情報記憶部154と、機能制御部156と、表示制御部158と、表示部160と、入力部162と、ダウンロード部164と、ソフトウェア記憶部166と、機能実行部168と、とを備える。機能拡張サーバ20は、インデックス情報配信部250と、情報記憶部252と、インデックス情報管理部254と、ソフトウェア修正部256と、ソフトウェア記憶部258と、ソフトウェア配信部260とを備える。
なお、TV受像器10内の情報記憶部154及びソフトウェア記憶部166は、例えば、前述のフラッシュメモリ112(図2参照。)などで構成される。また、TV受像器10内の情報要求部150、情報受信部152と、機能制御部156、表示制御部158、ダウンロード部164、機能実行部168などは、これら各部の機能を実行するプログラムをTV受像器10にインストールすることで実現される。また、機能拡張サーバ20内のインデックス情報配信部250、インデックス情報管理部254、ソフトウェア修正部256及びソフトウェア配信部260は、これら各部の機能を実行するプログラムを機能拡張サーバ20にインストールすることで実現される。これらのプログラムは、任意の通信媒体又は記憶媒体を介してTV受像器10又は機能拡張サーバ20に提供してインストールすることができる。以下に各部について詳述する。
TV受像器10の情報要求部150は、ネットワーク5を介して接続された機能拡張サーバ20に、拡張機能に関するインデックス情報の送信を要求する。詳細には、情報要求部150は、ネットワーク5を介して機能拡張サーバ20に、インデックス情報の取得要求を自動的に送信する。この取得要求の送信は、定期的に行ってもよいし、TV受像器10の電源オン、電源オフ時や、ユーザ操作時などのイベント発生時に行ってもよい。
機能拡張サーバ20のインデックス情報配信部250は、TV受像器10からインデックス情報の取得要求を受信すると、情報記憶部252に保存されている最新のインデックス情報を読み出し、TV受像器10にネットワーク5を介して送信する。上記のようにインデックス情報は、所定の外部装置が提供する所定のサービスと連携することでTV受像器10において実現される拡張機能に関する属性情報である。インデックス情報は、例えば、次のような情報を含む。
・拡張機能の識別情報(機能ID、サービスID、ウィジェットIDなど)
・拡張機能の機能名又はメニュー選択肢名(「アップロード」、「ダウンロード」など)
・拡張機能を実行するためのソフトウェア(例えばウィジェット)の所在情報(例えば、URI、URL)
・拡張機能を提供するサービスのサービス名又はウィジェット名(「サービスA」など)
・サービスの利用可否状態を表す情報(以下、サービス利用可否情報という。)
・サービスの開始日時、終了日時、休止期間など
・機能名やメニュー選択肢名の表示位置情報
・拡張機能に対応可能な機器情報
・拡張機能を提供するサービスが対応可能なフォーマット情報(以下、対応フォーマット情報という。)
ここで、図5を参照して、本実施形態にかかるインデックス情報の具体例について説明する。図5に示す例では、TV受像器10の拡張機能として、アップロード機能とダウンロード機能を実現するサービスが提供されていることが分かる。アップロード機能については4つのサービスA〜Dが存在し、ダウンロード機能については2つのサービスE、Fが存在している。このうち、サービスA、D、Xは開始されており、現在のことろ利用可能である。一方、サービスBは既に終了しており、サービスCはメンテナンス等で休止中であり、サービスYは開始前であるので、現在、サービスB、C、Yはいずれも利用できない。
また、サービスを利用できるTV受像器10に制限が有る場合には、図5に示すように、インデックス情報に各サービスを利用可能な機器情報(機器ID、機種名など)が記述される。また、サービスが対応可能なデータファイルのフォーマットに制限が有る場合には、図5に示すように、インデックス情報に、各サービスが対応可能なデータフォーマットが記述される。
以上のようなインデックス情報は、図4に示したように、機能拡張サーバ20のインデックス情報管理部254により管理される。インデックス情報管理部254は、各サービスの状況変化に応じて、インデックス情報を随時更新する。サービスの状況変化は、例えば、サービスサーバ30によるサービスの開始、終了、休止や、対応サービスの追加、削除、サービスが対応可能なデータフォーマットの変更などである。
例えば、サービスサーバ30によって新たなアップロードサービスAが開始される場合、TV受像器10で動作するアップロード機能用のウィジェットのプログラムと、該ウィジェットの所在情報等を含むインデックス情報が機能拡張サーバ20に保存される。このアップロードサービスAのウィジェットのプログラムは、機能拡張サーバ20のソフトウェア記憶部258に保存され、アップロードサービスAのインデックス情報は情報記憶部252に保存される。
また、各サービスの状況変化があった場合には、そのサービスを提供するサービスサーバ30から機能拡張サーバ20に、サービスの状況変化をあらわすサービス更新情報が送信される。機能拡張サーバ20のインデックス情報管理部254は、該サービス更新情報に基づいて、情報記憶部252内のインデックス情報を最新の状態に更新する。また、サービスが対応可能なデータファイルのフォーマットが変更された場合などには、そのサービスを提供するための拡張機能のソフトウェア(ウィジェット)のプログラムを修正する必要がある。例えば、「JPEG」フォーマットの画像データのみに対応可能であったアップロードサービスが、「RAW」フォーマットにも対応可能になった場合である。この場合、サービスサーバ30から機能拡張サーバ20にその旨のサービス更新情報が通知される。すると、ソフトウェア修正部256は、該フォーマット変更に応じて、ソフトウェア記憶部258に保存されているウィジェットのプログラムを修正する。また、インデックス情報管理部254は、インデックス情報のうち、サービスが対応可能なフォーマットの情報を修正する。
以上のようにして、機能拡張サーバ20は、TV受像器10からの要求に応じて、最新のサービス状況について記述されたインデックス情報を、ネットワーク5を介してTV受像器10に配信する。なお、インデックス情報をXML(EXtensible Markup Language)などのフォーマットで記述することで、ネットワーク5経由で複数の機器に配信されるインデックス情報を、機器の種別や機種などに依存せずに汎用化できる。
TV受像器10の情報受信部152は、機能拡張サーバ20から上記インデックス情報を受信して、情報記憶部154に記憶する。このように、TV受像器10は、機能拡張サーバ20から、TV受像器10で実行可能な拡張機能に関するインデックス情報を自動的に取得する。
ここで、TV受像器10は、インデックス情報の取得を、定期的に行ってもよいし、TV受像器10の電源オン時などのイベント発生時に行ってもよい。これにより、ユーザがわざわざサービスの更新状況等を調査した上で、設定変更しなくても、TV受像器10は、関連するインデックス情報を自動的に取得することができる。なお、TV受像器10は、ユーザが指示した任意のタイミングで、機能拡張サーバ20からインデックス情報を取得することも可能である。
また、TV受像器10が機能拡張サーバ20からインデックス情報を取得する際、情報要求部150は、機能拡張サーバ20に送信する取得要求に、要求元の機器(本実施形態にではTV受像器10)の属性情報を付加してもよい。属性情報は、例えば、情報処理装置の種別、機種、製造ロット、機器IDなどを表す情報である。これらの属性情報により、機能拡張サーバ20は、機能拡張すべき機器や機種、機器IDなどに応じて、要求元の機器が実行可能な拡張機能を選別し、該選別した拡張機能のインデックス情報を要求元の機器に送信できる。例えば、要求元の機器がTV受像器10である場合、機能拡張サーバ20は、TV受像器10が対応可能で、かつ、そのTV受像器10の機種が対応可能な拡張機能を選別する。これにより、機能拡張すべき機器や機種、機器IDなどに応じて、要求元の機器の拡張機能を、追加/活性化できる。
機能制御部156は、上記インデックス情報に基づいて、TV受像器10の拡張機能を制御する。例えば、機能制御部156は、インデックス情報に基づいて、TV受像器10の拡張機能を、追加、削除、活性化、非活性化したり、各サービスサーバ30から提供される対応サービスを追加、削除したり、或いは、対応フォーマットを追加、削除する。
ここで、拡張機能の追加とは、当該拡張機能を実行するためのソフトウェア(例えばウィジェット)をダウンロードしてTV受像器10にインストールすることであり、拡張機能の削除とは、該ソフトウェアをTV受像器10からアンインストールすることである。また、拡張機能の活性化とは、TV受像器10にインストールされているソフトウェア(例えばウィジェット)を実行可能にすることであり、拡張機能の非活性化とは、該ソフトウェアを実行不能にすることである。また、対応サービスの追加とは、TV受像器10が対応可能な新たなサービスが提供されたときに、当該サービスの拡張機能を実行するためのソフトウェア(例えばウィジェット)をダウンロードしてTV受像器10にインストールすることである。また、対応サービスの削除とは、既存のサービスが終了したときに、該サービスの拡張機能を実行するためのソフトウェア(例えばウィジェット)を、TV受像器10からアンインストールすることである。また、対応フォーマットの追加/削除とは、既存のサービスが対応可能なデータファイルのフォーマットが変更(追加/削除)されたときに、該フォーマットの変更に応じて、TV受像器10内にインストールされているソフトウェア(例えばウィジェット)を修正することである。
表示制御部158は、表示部160の表示内容を制御する。この表示制御部158は、機能拡張サーバ20から取得したインデックス情報に基づいて、TV受像器10で実行可能な拡張機能を表す情報(例えば機能名)を、表示部160の表示画面の操作メニューに表示させる。例えば、アップロードサービスが新たに開始されたときには、表示制御部158は、表示画面の操作メニューに、「アップロード」なる操作項目を表示させる。これにより、かかるメニューを見たユーザは、アップロードサービスを利用できることを認知できる。このように、表示制御部158は、上記機能制御部156による拡張機能の制御に応じて、表示画面の操作メニューに表示される拡張機能を表す情報(例えば機能名)の表示を、追加、削除、活性化又は非活性化する。なお、かかる表示制御部158による表示制御の詳細は後述する(図6及び図7を参照。)
表示部160は、TV受像器10において各種の映像を表示する表示機器であり、前述の表示パネル100(図2参照。)などで構成される。入力部162は、TV受像器10に対するユーザ入力を受け付ける装置であり、前述のリモートコントローラ106(図2参照。)などで構成される。
ダウンロード部164は、ユーザ選択された拡張機能を実行する際に、当該拡張機能を実行するためのソフトウェア(例えばウィジェット)を、機能拡張サーバ20からネットワーク5を介してダウンロードする。詳細には、TV受像器10においてアップロードなどの拡張機能を実行するときには、ユーザは、入力部162を操作して、上記表示制御部164により表示された操作メニューから所望の拡張機能を選択する。すると、ダウンロード部164は、上記インデックス情報に含まれるソフトウェアの所在情報(例えばURI)に基づいて、該ソフトウェアを保有している機能拡張サーバ20にアクセスして、当該ソフトウェアのダウンロードを要求する。この結果、機能拡張サーバ20のソフトウェア配信部260は、ソフトウェア記憶部258から該拡張機能のソフトウェア(ウィジェット)のプログラムを読み出して、ネットワーク5を介してTV受像器10に送信する。このようにして、ダウンロード部164によって、該ソフトウェア(ウィジェット)のプログラムが、機能拡張サーバ20からTV受像器10にダウンロードされ、TV受像器10内のソフトウェア記憶部166に記憶される。
機能実行部168は、上記拡張機能のソフトウェアのダウンロードが完了すると、該ソフトウェアを実行することによって、ユーザ選択された拡張機能を実行する。例えば、アップロード機能が選択された場合、機能実行部168は、ユーザ選択されたアップロード対象のデータファイル(例えば写真データ、動画データなど)を、外部記憶装置40又はネットワーク記憶装置50から取得する。そして、機能実行部168は、アップロードサービスを提供するサービスサーバ30にネットワーク5を介して、該データファイルをアップロードする。
[表示画面例1]
次に、図6を参照して、本実施形態にかかるTV受像器10の表示画面の一例について説明する。図6は、本実施形態にかかるTV受像器10の表示画面の一例を示す模式図である。
図6A〜Cに示すように、TV受像器10の表示部160の表示画面300には、上記表示制御部158によって、TV受像器10の操作項目を示す操作メニュー302が表示される。操作メニュー302は、例えば、ユーザ操作に応じて、表示画面300の一部(図では右上)に表示される。操作メニュー302は、例えば、コンテキストメニュー(contextual menu)であってもよい。コンテキストメニューは、ユーザが操作部を用いて表示画面300上のオブジェクトを指定すると、そのオブジェクトについて現在利用可能な操作の一覧が表示され、その操作の中から所望の操作を選択・実行することができるメニューである。例えば、ユーザが、TV受像器10の表示画面300に表示された写真データに対して、何らかの操作を所望する場合、その写真データの画像を指定すると、コンテキストメニューである操作メニュー302が表示される。ここで、操作とは、例えば、データファイルのコピー、削除、編集、アップロード、表示切り替えなどである。
TV受像器10にアップロード機能がインストールされていない初期状態では、図6Aに示すように、表示画面300には、既存の利用可能な機能(操作)を表す操作1〜操作5を含む操作メニュー302Aが表示される。操作1〜5は、例えば、「コピー」、「削除」、「編集」、「ファイル名変更」、「サムネール表示」、「リムーバブルメディア44内の画像の表示」などである。この時点では、サービスサーバ30によるアップロードサービスが提供されておらず、TV受像器10はアップロード機能を有していないので、操作メニューに302Aには、「アップロード」の操作項目は表示されない。
その後、サービスサーバ30によるデータのアップロードサービスが新たに開始される場合、機能拡張サーバ20に、アップロード機能のウィジェットのプログラム(例えばスクリプトデータ)と、その所在情報を含むインデックス情報とが設置される。TV受像器10は、機能拡張サーバ20からネットワーク5経由でインデックス情報を取得することで、該アップロードサービスが開始されたことを検知できる。この結果、図6Bに示すように、TV受像器10の表示画面300には、上記操作1〜5に加え、新たな操作(機能名)である「アップロード」を含む操作メニュー302Bが表示される。
このように、新たなサービスが追加された場合には、表示制御部158は、インデックス情報に基づいて、表示画面300の操作メニュー302Bに、拡張機能の機能名である「アップロード」の表示を追加する。これにより、ユーザは、かかる操作メニュー302Bを見ることで、アップロードサービスが開始されたことを認知できる。なお、TV受像器10は、例えば、一定周期でインデックス情報を定期的に取得したり、TV受像器10の電源オン時などのイベント発生時にインデックス情報を取得したりしてもよい。これにより、インデックス情報の取得と、操作メニューの表示変更を、ユーザが意識しない方法で自動的に行うことができる。
また、図6Bに示す操作メニュー302Bには、「アップロード」という機能名(メニュー選択肢)が追加されている。インデックス情報は、かかる拡張機能の機能名(メニュー選択肢名)や操作メニュー302B内におけるその機能名の表示位置情報などを含んでもよい。これにより、機能拡張サーバ20において、TV受像器10の操作メニュー302Bの表示態様を制御できる。
また、例えば、アップロードサービスが開始された後、メンテナンス等で一時的にサービスが利用できない休止状態となる場合がある。この場合、機能拡張サーバ20は、上記インデックス情報内のサービス利用可否情報に、サービス休止である旨を記載して、インデックス情報を更新する。その後、TV受像器10は、更新後のインデックス情報を取得して、そのサービス利用可否情報をチェックすることで、アップロードサービスが休止したことを検知できる。その結果、図6Cに示すように、表示制御部158は、操作メニュー302Cにおける「アップロード」の機能名の表示を非活性化して(例えば、薄い文字表示に変更)、ユーザが、非活性化された「アップロード」のメニュー選択肢を選択できないようにする。
その後、上記アップロードサービスの休止が終了し、サービスが再開された場合には、TV受像器10は、インデックス情報をチェックして、アップロードサービスが再開したことを検知できる。その結果、表示制御部158は、操作メニュー302Cにおける「アップロード」の機能名の表示を活性化して、図6Bに示した操作メニュー302Bに戻し、ユーザが「アップロード」のメニュー選択肢を選択できるようにする。
また、既存のアップロードサービスが終了した場合には、機能拡張サーバ20は、上記インデックス情報のサービス利用可否情報に対してサービス終了である旨を記載して、インデックス情報を更新する。その後、TV受像器10は、更新後のインデックス情報を取得して、そのサービス利用可否情報をチェックすることで、アップロードサービスが終了したことを検知できる。その結果、表示制御部158は、図6Cの操作メニュー302Bにおける「アップロード」の機能名の表示を削除して、図6Aの操作メニュー302Aに戻し、「アップロード」のメニュー選択肢を選択できないようにする。
以上のように、TV受像器10の表示制御部158は、機能拡張サーバ20から取得したインデックス情報に基づいて、表示画面300の操作メニュー302に、拡張機能の機能名である「アップロード」の表示を追加、削除、活性化又は非活性化する。これにより、ユーザは、特別な調査や操作をしなくても、操作メニュー302を見るだけで、アップロードサービスの状況変化を認知できる。
また、TV受像器10の機能制御部156は、上記表示制御部158と同様にして、インデックス情報をチェックすることで、アップロードサービスの状況変化を検出できる。これにより、機能制御部156は、各サービスの状況変化に応じて、TV受像器10における該サービスの拡張機能を、追加、削除、活性化又は非活性化できる。
[表示画面例2]
次に、図7を参照して、本実施形態にかかるTV受像器10の表示画面の別の例について説明する。図7は、本実施形態にかかるTV受像器10の表示画面の別の例を示す模式図である。
上記図6の例では、アップロードサービスが1つだけ存在し、このアップロードサービスとの連携でTV受像器10において実現されるアップロード機能の表示について説明した。これに対し、図7の例では、複数の事業者がそれぞれ提供する複数のアップロードサービスが存在し、これら複数のアップロードサービスにより提供されるアップロード機能を使い分けるときの表示例について説明する。
図7A〜Cに示すように、TV受像器10の表示部の表示画面310には、図6と同様に、上記表示制御部158によって、TV受像器10の操作項目を示す操作メニュー312が表示される。図7の表示画面310では、アップロードに対応するサービス(サイト)が複数ある場合に、このサービスの名称(以下、サイト名)を、TV受像器10の操作メニュー312に表示する。この際、表示制御部158は、アップロード機能を表す情報(機能名「アップロード」)と、当該アップロード機能を提供する複数のサービスを表す情報(サイト名「サイトA」等)とを、表示画面310の操作メニュー312に段階的に表示する。このとき、表示制御部158は、インデックス情報に含まれるサービスに関する情報に基づいて、アップロード機能の機能名の下位階層の情報として、そのアップロード機能を提供する複数のサイト名を一覧表示する。
上記のように、インデックス情報には、アップロードサービスのサイト名を記載することができる。これにより、表示制御部158は、機能拡張サーバ20から取得したインデックス情報をチェックすることで、アップロード機能の機能名(操作名)のみならず、アップロード機能を提供する複数のサービス名(サイト名)を検出できる。そして、表示画面310の操作メニュー312Aにおいて、第1階層の機能名「操作1〜5」及び「アップロード」の中から「アップロード」が選択されると、図7Aに示すように、第2階層のサブメニューが表示される。この第2階層のサブメニューは、上記選択された「アップロード」機能を提供する複数のサービスのサイト名「サイトA、B、C、D」をメニュー選択しとして含む。これにより、ユーザは、TV受像器10に対応するアップロードサービスが複数存在することを認知できるとともに、これらのうちから所望のサービスを選択することができる。
例えば、図7Aに示したように、サイトAが選択された場合には、上記ダウンロード部164は、インデックス情報内のサイトAの所在情報を用いて、サイトAのサービスサーバ30にアクセスし、サイトAのウィジェットをダウンロードする。これにより、サイトAのサービスと連携したアップロード機能が実現される。
また、新たなサービス(サイト)が開始したり、既存のサービスが終了したりした場合、機能拡張サーバ20は、TV受像器10に配信するインデックス情報内のサービス利用可否情報を更新する。その後、TV受像器10は、更新後のインデックス情報を取得して、そのサービス利用可否情報をチェックすることで、アップロードサービスが開始/終了したことを検知できる。その結果、TV受像器10の表示制御部158は、該更新後のインデックス情報に基づいて、操作メニュー312Aの表示項目を変更して、例えば、図7Bに示すような操作メニュー312Bを表示する。図7Bの操作メニュー312Bは、図7Aの操作メニュー312Aと比べて、「サイトB」、「サイトD」のサービスが終了し、「サイトE」、「サイトF」、「サイトG」のサービスが新たに開始されたことを表している。これにより、TV受像器10の操作メニュー312には、現在利用可能なサービスのサイト名がほぼリアルタイムで自動的に表示される。従って、ユーザが自ら、利用可能なサービスを調査・設定する必要がなく、ユーザの利便性を向上できる。
また、例えばサイトCがメンテナンス等で一時的にサービスが利用できない休止状態となる場合は、機能拡張サーバ20は、インデックス情報のサービス利用可否情報にその旨を記載して、インデックス情報を更新する。その後、TV受像器10は、更新後のインデックス情報を取得して、そのサービス利用可否情報をチェックすることで、アップロードサービスのサイトCが休止したことを検知できる。その結果、図7Cに示すように、表示制御部158は、操作メニュー312Cにおける「サイトC」の表示を非活性化して(例えば、薄い文字表示に変更)、ユーザが、非活性化された「サイトC」のメニュー選択肢を選択できないようにする。また、表示制御部158は、ユーザが「サイトC」を選択した場合に、一時的に利用ができない旨を、表示画面310に表示してもよい。
その後、上記サイトCの休止が終了し、サービスが再開された場合には、TV受像器10は、インデックス情報をチェックして、アップロードサービスのサイトCが再開したことを検知できる。その結果、表示制御部158は、操作メニュー312Cにおける「アップロード」の機能名の表示を活性化して、図7Aに示した操作メニュー312Aに戻し、ユーザが「サイトC」のメニュー選択肢を選択できるようにする。
さらに、図7Dに示す操作メニュー312Dのように、ユーザによる利用頻度に応じてサイト名の選択肢の表示の順序を自動的に変えることもできる。このとき、利用頻度が高いサイトから順に表示することが好ましい。かかる利用頻度に応じた表示順序の並び替えを行うために、TV受像器10において、ユーザによる各サービスの拡張機能の利用履歴情報を履歴記憶部(図示せず。)保存しておく。そして、表示制御部158は、操作メニュー312Dを表示するときに、該利用履歴情報に基づいて、各サイトの利用頻度を判断し、その利用頻度に応じた表示順序でサイト名を表示する。これにより、操作メニュー312Dを見たユーザは、自己のよく利用するサイトを容易に判別して、サービス選択が便利となる。なお、操作メニュー312Dにおけるサイトの表示順序は、ユーザにより手動で設定することも勿論可能である。
以上のような表示制御により、ユーザは、TV受像器10に対する新たな拡張機能の追加/削除や、該機能の有効化/無効化、該機能と連携するサービスの開始、終了又は一時的な中断などを容易に認知することができる。また、ユーザは、サービスが対応可能なデータフォーマットの変更(追加/削除)などがあったことも認知できる。
また、TV受像器10の機能制御部156は、上記表示制御部158と同様にして、インデックス情報をチェックすることで、複数のアップロードサービスの状況変化を、ほぼリアルタイムで検出できる。これにより、機能制御部156は、各サービスの状況変化に応じて、TV受像器10における各サービスの拡張機能を、ほぼリアルタイムで追加、削除、活性化又は非活性化できる。
[機能拡張フロー]
次に、図8を参照して、本実施形態にかかるTV受像器10における機能拡張方法について説明する。図8は、本実施形態にかかるTV受像器10のアップロード機能拡張方法を示すシーケンス図である。
図8に示すように、まず、ある事業者によりアップロードサービスが開始された場合、サービスサーバ30からインターネット5を介して機能拡張サーバ20に、サービス開始通知が送信される(S100)。すると、機能拡張サーバ20は、サービスサーバ30により提供されるアップロードサービスを実現するためのウィジェットのプログラムと、そのウィジェットにより実現されるアップロード機能のインデックス情報を、保存する(S102)。このインデックス情報は、例えば、ウィジェットの所在情報(URI)や、アップロード機能の機能名、サービス利用可否情報、サービス開始日時などの情報が含まれる(図5参照。)。機能拡張サーバ20は、上記ウィジェットやインデックス情報を、サービスサーバ30から取得してもよいし、他の機器から通信媒体又は記憶媒体を介して取得してもよいし、機能拡張サーバ20の管理者の登録作業により取得してもよい。
その後、TV受像器10は、インデックス情報の送信要求(例えばリクエストコマンド)を、ネットワーク5を介して機能拡張サーバ20に送信することで、機能拡張サーバ20にインデックス情報の送信を要求する(S104)。この要求は、定期的に行われてもよいし、TV受像器10の電源オン時などのイベント発生時に行われてもよい。このとき、TV受像器10は、上記送信要求に、TV受像器10の属性情報(機器情報、機種情報、機器IDなど)を付加して、機能拡張サーバ20に送信する。
次いで、機能拡張サーバ20は、TV受像器10からインデックス情報の送信要求を受信する。さらに、機能拡張サーバ20は、該送信要求に付加されたTV受像器10の属性情報に基づいて、TV受像器10が対応可能な拡張機能及びサービスを選択する(S106)。機能拡張サーバ20は、TV受像器10から取得した属性情報(機器情報、機種情報、機器IDなど)と、サーバ20内のインデックス情報に含まれる、対応可能な機器情報とを比較することで、S106の判断を行うことができる。このようにして、機能拡張サーバ20は、要求元のTV受像器10が、上記アップロードサービスに対応した機器である否かを判断する。
次いで、機能拡張サーバ20は、情報記憶部252に記憶されている複数の拡張機能及びサービスに関する複数のインデックス情報の中から、上記S106で選択した拡張機能及びサービスに関するインデックス情報を抽出する(S108)。その後、機能拡張サーバ20は、抽出したインデックス情報を、ネットワーク5を介して、要求元のTV受像器10に配信する(S110)。
以上のように機能拡張サーバ20は、要求元のTV受像器10に全機能及びサービスのインデックス情報を配信するのではなく、該TV受像器10の属性情報に基づき、該TV受像器10が対応可能な機能及びサービスを選別し、そのインデックス情報を配信する。即ち、要求元の機器の種別、機種、製造ロット、機器IDなどに応じて異なるインデックス情報が、各機器に配信される。これにより、TV受像器10等のユーザ端末は、自身が対応していない不要なインデックス情報を取得しないようにできる。
次いで、TV受像器10は、機能拡張サーバ20から配信されたインデックス情報を受信して、情報記憶部154に保存する。このインデックス情報により、TV受像器10は、アップロードサービスの開始と、拡張機能名「アップロード」及びアップロードサービスのサイト名、各サイトへのアップロードに対応したウィジェットの所在(URI等)を検知する(S112)。
その後、TV受像器10は、図6及び図7に示したように、表示画面300、310の操作メニュー302、312に、新たに開始されたアップロードサービスの選択肢(機能名「アップロード」、サービス名「サイトA」等)を追加表示する(S114)。これにより、ユーザは、TV受像器10がアップロード機能に対応したことを認知できる。
ここでは、新たなアップロードサービスの開始の例を述べたが、その他にも、各種の拡張機能を提供するサービスの開始、終了若しくは一時的な休止など、サービスの状況変化がある場合がある。この場合にも、TV受像器10は、機能拡張サーバ20から取得したインデックス情報により、当該サービスの状況変化を検知し、その変化に応じて操作メニュー302、312の機能名やサービス名の表示を、追加、削除、活性化/非活性化する(図6、図7参照)。これによって、ユーザは、操作メニューのサービスの状況変化を容易かつほぼリアルタイムで把握できる。
さらに、機能制御部154は、インデックス情報に基づいて、TV受像器10の拡張機能を、追加、削除、活性化/非活性化するよう制御してもよい。これにより、サービスの状況変化に応じて、TV受像器10内の拡張機能を適切に制御でき、例えば、新たなサービス開始時には、TV受像器10はそのサービスに対応可能な状態となる。
実際にアップロード機能を実行するときには、まず、ユーザは、アップロード対象のデータファイルを選択する(S116)。このデータファイルは、TV受像器10内や、TV受像器10に接続されたリムーバブルメディア44又はHDD44等の外部記憶装置40、或いは、ネットワーク5経由で接続されたネットワーク記憶装置50に保存されている。ユーザは、リモートコントローラ106を操作するなどすることで、TV受像器10の表示画面に表示された複数のデータファイルの映像又はアイコンの中から、アップロードを所望するデータファイルを選択する。
次いで、ユーザは、表示画面300、310に表示された操作メニュー302、312から、操作名「アップロード」を選択する(S118)。アップロードサービスが複数存在する場合には、操作メニュー312に各アップロードサービスの「サイト名」が一覧表示されるので、ユーザは、アップロード先のサイトを選択する(S120)。
このようにして、ユーザにより実行すべき拡張機能「アップロード」と、所望のサーバービスの「サイト名」が選択される。すると、TV受像器10のダウンロード部164は、当該ユーザ選択されたサイト用のアップロード機能を実現するためのウィジェットを、インデックス情報に含まれる当該ウィジェットの所在情報を用いて、ダウンロードする(S122)。
例えば、ユーザが選択したサイト向けウィジェットが機能拡張サーバ20内に保存されており、インデックス情報にそのURIが記載されている場合、TV受像器10は、機能拡張サーバ20から、当該ウィジェットをダウンロードする。なお、かかる例に限られず、インデックス情報を配信するサーバと、ウィジェットを配信するサーバが異なるサーバであっても構わない。例えば、ウィジェットを配信するサーバは、サービスサーバ30、又は、ネットワーク5に接続されたその他のサーバであってもよい。
その後、TV受像器10は、ダウンロードしたウィジェットを実行することで(S124)、S120にてユーザ選択されたサービスを利用して、S116で選択されたデータファイルを、サービスサーバ30にアップロードする(S126)。アップロードされたデータファイルは、サービスサーバ30又は他の外部装置に保存される。このようにして、ユーザはウィジェットを用いて、自分が選択したデータを、自分が選択したサイト(すなわちサービスサーバ103)に、ネットワーク5経由でアップロードすることができる。
なお、アップロードできるデータファイルのフォーマットは、アップロードサービス(サイト)に依存する。ここで、アップロードサービスが対応可能なフォーマットが変更される場合には、そのサービスのウィジェットを修正することで対処できる。
例えば、写真データをアップロードするときに、JPEGフォーマットのみに対応していたサービスが、RAWフォーマットにも対応可能となった場合を想定する。この場合、機能拡張サーバ20に保存されている当該サービスのウィジェットのプログラムを修正することにより、TV受像器10からサービスサーバ30にアップロードするデータのフォーマットを拡張できる。
詳細には、図8に示すように、あるアップロードサービスにおいて、対応可能なデータファイルのフォーマットが更新(S130)された場合、当該サービスのサービスサーバ30から、機能拡張サーバ20に、該フォーマットの変更を通知する(S132)。
すると、機能拡張サーバ20は、修正が必要な場合は、当該サービスのウィジェットのプログラムを、JPEG及びRAWフォーマットの双方に対応するように書き替えるとともに、そのウィジェットのインデックス情報に含まれる対応フォーマット情報も更新する(S134)。その後、TV受像器10は、機能拡張サーバ20から更新されたインデックス情報を取得して(S136)、対応フォーマットの変更を検知すると、更新されたウィジェットもダウンロードする(S138)。ウィジェットは、アップロード実行時にダウンロードされるため、ユーザは常に最新のウィジェットのプログラムが利用できる。
これにより、TV受像器10は、次にアップロード機能を利用する際に、拡張されたウィジェットを実行することで、JPEGのみならずRAWフォーマットの写真データもアップロードできるようになる。なお、ここでは、静止画データである写真データのアップロードについて説明したが、アップロードするデータファイルの種別が、例えば、音楽データ又は動画データなどである場合も、同様にして、対応するデータ種別および、フォーマットを拡張できる。
以上、本発明の第1の実施形態について説明した。第1の実施形態によれば、TV受像器10などの組み込み機器において、サービスと連携して実現される拡張機能(アップロード機能など)をウィジェットで実現し、該ウィジェットは、機能拡張サーバ20から組み込み機器に該ウィジェットをダウンロードされる。つまり、組み込み機器は、予め機能拡張サーバ20から拡張機能のインデックス情報を取得して保存しておき、いつでも、その拡張機能のウィジェットをダウンロードできる状態にしておく。そして、組み込み機器は、機能の実行開始時に、そのインデックス情報に基づいて、機能拡張サーバ20から、その時点でのサービスの状況を反映した最新のウィジェットをダウンロードして実行する。このインデックス情報には、サービス利用可否情報や、機能ID(ウィジェットID)、アップロードサービス名(サイト名)等が含まれており、これらの情報は、組み込み機器の表示画面の操作メニューに表示される。これにより、ユーザは、組み込み機器で実現可能な拡張機能や、それを提供するサービスの状況変化を容易に認知できる。
また、新たなサービスの開始時には、機能拡張サーバ20にウィジェットを保存した上で、インデックス情報に該サービスの追加を記述し、当該インデックス情報を組み込み機器に配信する。これにより、PCとは異なり汎用性の低いコンピュータシステムを搭載した組み込み機器であっても、該機器の製造後に事後的に、新たなサービスによる拡張機能を追加できる。また、インデックス情報を用いることで、サービスの削除、一時的中断など、サービスの状況変化に柔軟に対応して、組み込み機器の拡張機能を追加、削除、活性化/非活性化することができる。
以上のように、本実施形態によれば、拡張機能を提供するサービスの状況変化に応じて、拡張機能の追加、削除、活性化/不活性化や、対応サービスの追加/削除などを、容易かつほぼリアルタイムで実現できる。また、これらのサービスの状況変化を操作メニューの表示項目に反映させることで、ユーザが容易に当該状況変化を認知することができる。さらに、拡張機能やサービスの追加/削除などを、組み込み機器の種別や機種などに応じて、適切に変更することもできる。
<第2の実施形態>
次に、本発明の第2の実施形態に係るTV受像器10について説明する。第2の実施形態に係るTV受像器10は、上記第1の実施形態の機能構成に加え、アップロード対象のデータファイルのフォーマットを用いて、利用するサービスを自動的に選別する機能を有している。なお、この機能以外の機能構成については、第2の実施形態は、上記第1の実施形態と略同一であるので、その詳細説明は省略する。
[サービス選択フロー]
図9は、第2の実施形態にかかるTV受像器10におけるサービス選択フローを示すフローチャートである。この図9の処理フローは、上述した図8のサービス選択ステップS120に相当する。
第1の実施形態では、TV受像器10においてアップロード機能を実行する際に、アップロードサービスが複数存在する場合には、操作メニュー312に全てのサービス(サイト名)を一覧表示し、ユーザは所望のサービスを手動で選択していた(図7参照。)。しかし、かかる手法では、アップロード対象のデータファイルのフォーマットに対応していないサービスまでもが一覧表示され、ユーザが該サービスを選択しても、実際にはアップロードできないケースが生じうる。
そこで、第2の実施形態では、アップロード対象のデータファイルのフォーマットを用いて、利用可能なサービスを自動的に選別してから、操作メニューに表示する。以下にその手法について詳述する。
図8に示したように、TV受像器10においてデータファイルをアップロードする際には、まず、ユーザはアップロード対象のデータファイルを選択する(S116)。次いで、ユーザが、操作メニュー312で機能名「アップロード」の選択肢を選択すると(S118)、操作メニュー312にアップロード機能を提供する複数のサービス(サイト名)が表示され、このうちからユーザが所望するサービスを選択する(S120)。このS120において、第2の実施形態に係るTV受像器10は、図9の処理フローを実行する。
即ち、図9に示すように、まず、TV受像器10は、ユーザにより選択されたアップロード対象のデータファイルのフォーマットを検出する(S1202)。TV受像器10は、データファイルに付加されているメタデータ(例えば、ファイルの属性情報、ファイル名の拡張子など)をチェックすることで、該データファイルのフォーマットを検出できる。
次いで、表示制御部158は、上記インデックス情報に含まれる対応フォーマット情報に基づいて、複数のアップロードサービスの中から、S1202で検知したフォーマットに対応したアップロードサービスを自動的に選択する(S1204)。図5に示したように、インデックス情報には、各サービスが対応可能なデータフォーマットが記述されている。従って、インデックス情報により、アップロード対象のデータファイルのフォーマットに対応したサービスを選別できる。図5の例では、アップロード対象のデータファイルが「RAW」フォーマットである場合には、サービスA〜Cは対応できるが、サービスDは対応できない。
その後、表示制御部158は、S1024で選択されたアップロードサービスのサービス名(サイト名)を、表示画面の操作メニューに表示させる(S1206)。この結果、操作メニューには、アップロード対象のデータファイルのフォーマットに対応したサービス名のみが表示され、対応していないサービス名は表示されない。よって、操作メニューに表示されたサービス名のいずれを選択しても、そのサービスを利用して、データファイルをアップロードできることとなる。
次いで、ユーザがリモートコントローラ106等を用いて、操作メニュー内の1つのサービスを選択すると、表示制御部158は、該サービスのウィジェットのダウンロードをダウンロード部164に指示する(S1208)。
以上説明したように、第2の実施形態によれば、上記第1の実施形態の効果に加え、次の効果がある。第2の実施形態では、アップロード対象のデータファイルのフォーマットに対応するアップロードサービスを選別し、当該サービスのサービス名のみを操作メニューに表示する。従って、操作メニュー中のいずれのサービスを選択しても、データファイルをアップロード可能である。よって、TV受像器10を用いてデータファイルをアップロードするときに、ユーザの利便性を向上できる。
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
例えば、上記実施形態では、情報処理装置の一例としてTV受像器10を挙げ、該TV受像器10においてアップロード機能を拡張する例について説明した。しかし、本発明の情報処理装置は、かかる例に限定されず、例えば、家庭電化製品、産業機器など、コンピュータシステムとして組み込みシステムを備えた任意の組み込み機器に適用できる。組み込み機器は、例えば、ビデオ、カメラ、DVD/HDDプレーヤ/レコーダ等の記録再生装置、洗濯機、冷蔵庫、炊飯器、空調機、デジタルカメラ、プリンタ、コピー機、家庭用ゲーム機、その他の情報家電であってもよい。また、その他にも、組み込み機器は、携帯型ゲーム機、携帯型映像/音声プレーヤ、PDA(Personal Digital Assistant)等の携帯端末や、自動車、自動販売機、券売機などであってもよい。また、本発明の情報処理装置は、上記組み込み機器の例に限定されず、例えば、パーソナルコンピュータ(PC)、サーバ装置など、汎用コンピュータシステムを備えた各種のコンピュータ機器にも適用可能である。
また、本発明は、上記アップロード機能以外にも、組み込み機器においてサービスと連携して実現される機能全般にも適用可能である。例えば、ダウンロード機能、配信コンテンツの受信機能、天気・占い・ニュースなどの配信情報の受信機能など、情報処理装置とサーバ装置とのネットワーク通信を利用して実現される各種の機能に適用できる。
また、上記実施形態では、拡張機能に関する情報(機能名、サービス名など)を、操作メニュー300、310に表示したが、操作メニューの表示態様は、図6や図7の例に限定されず、適宜設計変更可能である。また、拡張機能に関する情報は、リスト形式でメニューに表示されれば、操作メニュー以外のメニューに表示されてもよい。