以下の実施の形態では、同一の部品には同一の参照番号を付してある。それらの機能および名称も同一である。従って、それらについての詳細な説明は繰返さない。
<第1の実施の形態>
図1を参照して、本発明の第1の実施の形態に係るコンテンツ通信システムについて説明する。図1に示すように、このコンテンツ通信システムは、コンテンツを送信する側の装置であるコンテンツ送信装置と、コンテンツを受信して再生する側の装置であるコンテンツ再生装置と、コンテンツ再生装置のリモートコントローラ(以下、リモコンと記載する場合がある)600とを含む。以下においては、本実施の形態に係るコンテンツ送信装置は携帯電話100であるとして、本実施の形態に係るコンテンツ再生装置はテレビ装置500であるとして説明する。なお、これらの携帯電話100はコンテンツ送信装置の一例でしかなく、テレビ装置500はコンテンツ再生装置の一例でしかない。
図1に示すように、コンテンツ送信装置の通信部(後述する通信部150)とコンテンツ再生装置の通信部(後述する通信部550)とによる通信は、たとえば赤外線通信方式または無線LAN通信方式等により実現される。なお、本発明はこのような通信方式に限定されるものではなく、上述したBluetooth(登録商標)等の近距離無線通信方式または他の通信方式を用いてもよい。これらの通信方式は、指向特性および距離特性が異なるので、後述するように、通信機器および通信対象であるデータの種類等に応じて、このような通信特性に応じた通信方式が採用される。
上述したように、本実施の形態に係るコンテンツ送信装置は、携帯電話100に実装されているものとして説明する。しかしながら、コンテンツ送信装置は、必ずしも携帯電話100に実装される必要はない。本実施の形態に係るコンテンツ送信装置を携帯電話100に実装した場合には、ユーザが携帯電話100を普段から持ち歩く装置であり、また、軽量であるため、手軽に本実施の形態に係るコンテンツ送信装置として利用される点で好ましい。さらに、携帯電話100においては、カメラ機能、録音機能または録画機能等のコンテンツ取得機能を備えていることが多いため、それらのコンテンツ取得機能により取得したコンテンツを、取得後にすぐに本実施の形態に係るコンテンツ送信装置が備える機能を利用して、ユーザ間で共有させることができる。
上述したように、本実施の形態に係るコンテンツ再生装置は、テレビ装置500に実装されているものとして説明する。しかしながら、コンテンツ再生装置は、必ずしもテレビ装置500に実装される必要はない。本実施の形態に係るコンテンツ再生装置をテレビ装置500に実装した場合には、テレビ装置500は(携帯電話100に比較して)大きな画面を備え、また、居間等の家庭の中で皆が集まりやすい場所に設置されていることが多いため、コンテンツを再生する装置としての利便性が高く、複数のユーザにコンテンツを好適に視聴させることができる点で好ましい。
[コンテンツ送信装置の一例である携帯電話の構造]
図2に携帯電話100の外観図を示す。図2に示すように、この携帯電話100は、中折れ式の構造を備える。スライド式等の他の構造を備える携帯電話であっても構わない。この携帯電話100は、ユーザの視覚へ伝達する情報を表示する表示部102と、ユーザの聴覚へ伝達する情報を出力する音声出力部104と、ユーザの音声が入力される音声入力部106と、操作部140とを備える。
表示部102は、たとえば2〜3インチ程度の液晶パネルまたは有機エレクトロルミネッセンスパネル等で構成される。このパネルは感圧式の選択スイッチを備えた、いわゆるタッチパネルディスプレイであっても構わない。また、図2には示していないが、カメラ部をこの携帯電話100が備えるようにしても構わない。
操作部140は、決定キー144と、その周囲に設けられ上下左右方向へカーソルを移動させるカーソルキー142と、戻るキーおよび終了キー等の操作キー146と、テンキー148とを含む。このようなキーは、ユーザによる通話先の選択または入力、コンテンツの選択等に使用される。カーソルキー142は上下左右に移動して項目を選択する操作、戻るキーは元の画面に戻ったり選択をキャンセルしたりする操作、決定キーは選択を決定する操作、終了キーは一定の操作モードの終了を選択する操作に使用される。また、テンキー148を用いて、数字、アルファベット、平仮名、片仮名および漢字を入力することも可能である。
本実施の形態に係るコンテンツ送信装置を実装した携帯電話100は、携帯電話の機能を備え、他の携帯電話または固定電話等との間での通話するために通信する。これらの通信において、表示部102は、ユーザへの視覚的情報を提示し、音声入力部106および音声出力部104は、音声を入出力し、操作部140は、ユーザによる入力を受け付ける。この携帯電話100は、このような携帯電話としての基本的な機能に加えて、本実施の形態に係るコンテンツ送信装置としての機能を備える。以下、このような機能を備えた携帯電話100の制御ブロックについて説明する。
図3は、この携帯電話100の制御ブロック図であって、図4は、携帯電話100が本実施の形態に係るコンテンツ送信装置として機能するための詳細な制御ブロックを示す図である。
これらの図に示すように、この携帯電話100は、この携帯電話100を制御するCPU(Central Processing Unit)110と、CPU110に接続された、他の携帯電話または固定電話との間で通話等のために通信する電話網通信部130および携帯回線部132と、上述した表示部102、音声出力部104、音声入力部106および操作部140と、コンテンツ再生装置の一例であるテレビ装置500との間でコンテンツデータを通信する通信部150と、ROM(Read−Only Memory)および/またはRAM(Random Access Memory)等の記憶素子で構成される記憶部160および一時記憶部170とを含む。
CPU110は、通信部150および記憶部160等との間でデータをやり取りして、携帯電話の機能およびコンテンツ送信装置としての機能を実現する。CPU110に接続された通信部150および記憶部160等は、CPU110の制御のもとに協調して動作し、必要な情報処理を実行して、携帯電話100に携帯電話の機能およびコンテンツ送信装置としての機能を実現させる。
記憶部160は、携帯電話100における情報処理のために用いるプログラムおよびデータを保持する。記憶部160には、CPU110で実行されるプログラムを格納するプログラム記憶領域162と、データを格納するデータ記憶領域164とが設けられている。一時記憶部170は、携帯電話100における情報処理に必要な情報を一時的に記憶する。通信部150は、コンテンツ再生装置の一例であるテレビ装置500との間で、コンテンツデータ等を送受信する。
さらに、図4を参照して、携帯電話100において本実施の形態に係るコンテンツ送信装置を実現する機能について説明する。この機能として、CPU110で実現されるコンテンツサーバ部112および識別子入込部114と、通信部150で実現されるコンテンツ送信部152、コマンド受信部154および応答送信部156とがある。
コンテンツサーバ部112は、テレビ装置500を含む他の機器に配信するコンテンツを管理する。このとき、コンテンツが携帯電話100に記憶されている場合には、CPU110が記憶部160および/または一時記憶部170に記憶されたデータを管理することにより、コンテンツが管理される。一方、コンテンツは、携帯電話100に記憶されているのではなく、他の機器で記憶されるものであっても構わない。この場合には、コンテンツサーバ部112は、通信部150を用いて、他の機器からコンテンツの実体またはコンテンツを識別する識別情報(コンテンツ識別子)を取得して、受信側のテレビ装置500へ送信することになる。
識別子入込部114は、コンテンツデータ内に、コンテンツ識別子および/またはサーバ識別子を入れ込む。これは、CPU110が、記憶部160および/または一時記憶部170に記憶されたデータに、コンテンツ識別子および/またはサーバ識別子のデータを生成して入れ込むことにより実現される。後述するように、サーバ識別子は入れ込まれない場合がある。
コンテンツ送信部152は、無線LAN通信方式または赤外線通信方式等を用いて、コンテンツを他の機器に配信する。これは、CPU110が、通信部150を経由して他の機器から受信した要求コマンドに従って、記憶部160および/または一時記憶部170に記憶されたデータを、通信部150を経由して、他の機器に送信することにより実現される。
コマンド受信部154は、他の機器からの送信されたコマンドを受信する。これは、CPU110が、他の機器からの受信したコマンドを、解析することにより実現される。
応答送信部156は、他の機器から受信したコマンドへの応答を送信する。これは、CPU110が、他の機器から受けたコマンドと、記憶部160および/または一時記憶部170に記憶されたデータとに応じて応答データを生成して、通信部150を経由して、生成された応答データを他の機器に送信されることにより実現される。
[コンテンツ再生装置の一例であるテレビ装置の構造]
図5(A)にテレビ装置500の外観図を、図5(B)にリモコン600の外観図をそれぞれ示す。図5(A)に示すように、このテレビ装置500は、ユーザの視覚へ伝達する情報を表示する表示部502と、ユーザの聴覚へ伝達する情報を出力する音声出力部504と、リモコン600から発信された赤外線を受信する赤外線受光部540とを備える。
また、図5(B)に示すように、リモコン600は、各種の制御キーを備える。たとえば、リモコン600は、テレビ装置500の電源をオンオフする電源キー602と、受信チャンネルを選択するテンキー604と、音量キー、決定キーおよびカーソルキー等を含む操作キー606とを含む。このような操作キー606により、テレビ装置(受信映像出力装置)としての操作だけではなく、表示部502に表示されたメニュー上のカーソルをカーソルキーで移動させて項目を選択したり、元の画面に戻ったり、一定の操作モードを終了させたりする等の操作ができるようになっている。
表示部502は、多くの場合、たとえば30〜50インチ程度の液晶パネル等で構成される。
本実施の形態に係るコンテンツ再生装置を実装したテレビ装置500は、テレビの機能を備え、放送番組に係る動画データストリームを放送電波から取り出し、表示部502から映像を出力して、音声出力部504から音声を出力して、受信した情報をユーザに提示する。また、ユーザがリモコン600を用いることにより、リモコン600から送信された赤外線信号がテレビ装置500の赤外線受光部540で受信され、選局および音量変更等を操作することができる。
このテレビ装置500は、このようなテレビ装置としての基本的な機能に加えて、本実施の形態に係るコンテンツ再生装置としての機能を備える。以下、このような機能を備えたテレビ装置500の制御ブロックについて説明する。
図6は、このテレビ装置500の制御ブロック図であって、図7は、テレビ装置500が本実施の形態に係るコンテンツ再生装置として機能するための詳細な制御ブロックを示す図である。
これらの図に示すように、このテレビ装置500は、このテレビ装置500を制御するCPU510と、CPU510に接続された、放送局(中継局を含む)からブロードキャストされる放送波を受信するチューナ部530と、上述した表示部502、音声出力部504および赤外線受光部540と、コンテンツ送信装置の一例である携帯電話100との間でコンテンツデータを通信する通信部550と、ROM(Read−Only Memory)および/またはRAM(Random Access Memory)等の記憶素子で構成される記憶部560および一時記憶部570とを含む。
CPU510は、通信部550および記憶部560等との間でデータをやり取りして、テレビ装置の機能およびコンテンツ再生装置としての機能を実現する。CPU510に接続された通信部550および記憶部560等は、CPU510の制御のもとに協調して動作し、必要な情報処理を実行して、テレビ装置500にテレビ装置の機能およびコンテンツ再生装置としての機能を実現させる。
記憶部560は、テレビ装置500における情報処理のために用いるプログラムおよびデータを保持する。記憶部560には、CPU510で実行されるプログラムを格納するプログラム記憶領域562と、データを格納するデータ記憶領域564とが設けられている。一時記憶部570は、テレビ装置500における情報処理に必要な情報を一時的に記憶する。通信部550は、コンテンツ送信装置の一例である携帯電話100との間で、コンテンツデータ等を送受信する。
さらに、図7を参照して、テレビ装置500において本実施の形態に係るコンテンツ再生装置を実現する機能について説明する。この機能として、CPU510で実現されるコンテンツ再生部512、識別子取出部514、コンテンツ情報取得部516、コンテナ情報取得部518およびコンテンツデータ取得部520と、通信部550で実現されるコンテンツ受信部552およびコマンド送信部554とがある。
コンテンツ再生部512は、コンテンツデータを再生する。これは、CPU510が、記憶部560および/または一時記憶部570に記憶されたコンテンツデータを、表示部502および音声出力部504を用いて再生することにより実現される。なお、コンテンツデータ取得部520により、コンテンツ送信装置の一例である携帯電話100と通信しながら、バッファリングされたコンテンツデータを、順次再生(ストリーミング再生)するようにしも構わない。
識別子取出部514は、コンテンツデータ内に入れ込まれた、コンテンツ識別子および/またはサーバ識別子のデータを、コンテンツデータから取り出す。これは、CPU510が、受信した後に記憶部560および/または一時記憶部570に記憶されたコンテンツデータから、コンテンツ識別子および/またはサーバ識別子のデータを取り出すことにより実現される。なお、取り出した識別子のデータは、記憶部560および/または一時記憶部570に格納される。
コンテンツ情報取得部516は、無線LAN通信方式または赤外線通信方式等を用いて、コンテンツ情報を他の機器から取得する。これは、CPU510が、通信部550を経由して他の機器から送信されてきたコンテンツ情報を受信することにより実現される。なお、受信したコンテンツ情報は、記憶部560および/または一時記憶部570に格納される。
コンテナ情報取得部518は、無線LAN通信方式または赤外線通信方式等を用いて、コンテナ情報を他の機器から取得する。これは、CPU510が、通信部550を経由して他の機器から送信されてきたコンテナ情報を受信することにより実現される。受信したコンテナ情報は、記憶部560および/または一時記憶部570に格納される。
コンテンツデータ取得部520は、無線LAN通信方式または赤外線通信方式等を用いて、コンテンツデータを他の機器から受信する。これは、CPU510が、通信部550を経由して他の機器から送られてきたコンテンツデータを受信することにより実現される。受信したコンテンツデータは、記憶部560および/または一時記憶部570に格納される。なお、コンテンツデータ取得部520は、バッファリングしながらコンテンツデータを順次少しずつ取得して、コンテンツ再生部512での再生が終了したら、終了済の分は順次消去するようにしても構わない。
コンテンツ受信部552は、無線LAN通信方式または赤外線通信方式等を用いて、コンテンツを他の機器から取得する。これは、CPU510が、通信部550を経由して他の機器から送信されてきたコンテンツのデータを受信することにより実現される。
コマンド送信部554は、他の機器へコマンドを送信する。これは、CPU110が、記憶部560および/または一時記憶部570を用いながら送信すべきコマンドを決定したり生成したりして、通信部550を用いて他の機器に決定されたコマンドまたは生成されたコマンドを送信することにより実現される。
一例として構成されるこれらの制御ブロックによると、コンテンツ受信部552が受信するコンテンツは、識別子取出部514により取り出される識別子と、コンテンツ情報取得部516により取得されるコンテンツ情報とを含み、コンテンツ情報は、コンテナ情報取得部518により取り出されるコンテナ情報と、コンテンツデータ取得部520により取得されるコンテンツを再生するために必要なデータとを含むことになる。
[コンテンツ送信装置の一例である携帯電話のソフトウェア構造]
以下、本実施の形態に係るコンテンツ送信装置の一例である携帯電話100のCPU110で実行されるプログラムの制御構造について説明する。なお、携帯電話100のCPU110は、このようなプログラムと並行して、携帯電話としての一般的機能を実現するプログラムを実行する。しかしながら、そのプログラムは、本発明の本質的部分とは直接関係するものではないので、その詳細についてはここでは説明しない。
図8を参照して、ステップ(以下、ステップをSと記載する。)1000にて、携帯電話100のCPU110(以下、単にCPU110と記載する。)は、たとえばユーザの操作に従ってコンテンツサーバ部112に記憶されているコンテンツを選択する。このとき、選択するコンテンツは、上述したように、ユーザが選択するのであっても構わないし、自動的に選択されるのであっても構わない。ここで、コンテンツが自動的に選択される場合とは、たとえば、携帯電話100が備えるカメラ部により最も新しく撮影された画像が選択されることが考えられる。ユーザの操作に従ってコンテンツが選択される場合には、たとえば、ユーザは、表示部102のコンテンツリストの表示を見ながら、操作部140のカーソルキー142、決定キー144および操作キー146等を適宜用いて、データ記憶階層を順番に下位の階層へ移動するようにして、目的のコンテンツを選択する。
このデータ記憶階層について図9を用いて説明する。このデータ記憶階層においては、コンテナ(フォルダ)およびコンテンツが、区分された階層別に記憶されている。たとえば、この図9に示すように、一番上位にルートコンテナ3000があり、ルートコンテナ3000を含む各コンテナの直下の階層にコンテナ3100およびコンテナ3200ならびにコンテンツ3300、コンテンツ3400およびコンテンツ3500がある。このようなデータ階層構想においては、ルートコンテナ3000を起点にして階層を順に追跡して目的のコンテンツにアクセスできる。
ここで、コンテナの直下には、コンテナまたはコンテンツのいずれか一方しかない場合、あるいは、コンテナもコンテンツも一つも存在しない場合もあり得る。このようなデータ記憶階層は、たとえば、オペレーティングシステムとしてWindows(登録商標)が搭載されたパーソナルコンピュータで採用されている。なお、Windowsにおいては、ここでいう「コンテナ」が「フォルダ」と呼ばれており、このフォルダの中には、フォルダ以外に、コンテンツに限らず、その他の各種データを記憶した各種ファイルが格納され得る。
なお、以下においては、コンテナとコンテンツとを総称して「オブジェクト」と呼ぶ場合がある。また、あるコンテナの直下にあるコンテナ、コンテンツまたはオブジェクト(すなわち、そのコンテナの一階層下にあるコンテナ、コンテンツまたはオブジェクト)を、そのコンテナの子コンテナ、子コンテンツまたは子オブジェクトと呼ぶ。逆に、あるオブジェクトの一階層上にあるコンテナを、そのオブジェクトの親コンテナと呼ぶ。さらに、あるコンテナの子コンテナや子コンテンツについて、そのコンテナの中にあるという記載をする場合がある。また、「コンテナ」と「フォルダ」とを同義で使用する場合がある。
この処理において、ユーザの操作により選択されるコンテンツまたは自動的に選択されるコンテンツは、上述したように、必ずしも携帯電話100にコンテンツの実体が記憶されている必要はなく、コンテンツの実体は他のサーバにあっても構わない。このサーバはサーバ識別子(装置識別子)により特定することができる。このような態様として、たとえば、携帯電話100は、テレビ装置500からアクセスされた時点で、他の機器からコンテンツの実体を取得して、テレビ装置500に転送するように動作してもよい。さらに、携帯電話100は、テレビ装置500に、コンテンツの実体を記憶した他の機器を特定するためのURLを送信して、テレビ装置500は、そのURLを用いて、他の機器に直接アクセスしてコンテンツを取得するものであっても構わない。さらに、携帯電話100内にその実体が記憶されているコンテンツと、他の機器内にその実体が記憶されているコンテンツとが混在していても構わない。
S1010にて、CPU110は、識別子入込部114を制御して、コンテンツ識別子およびサーバ識別子をコンテンツに入れ込む。ここで、コンテンツ識別子とは、コンテンツサーバ部112において、コンテンツを特定することのできる情報であったり、コンテンツを絞り込むことのできる情報であったりする。具体的には、このコンテンツ識別子は、数値であっても、文字列であっても構わない。必ずしも唯一のコンテンツに絞り込むことができる情報である必要はない。たとえば、そのコンテンツを含む上位階層を特定する識別子であっても構わない。サーバ識別子(装置識別子)とは、コンテンツサーバを特定することのできる情報であったり、コンテンツサーバを絞り込むことのできる情報であったりする。具体的には、このサーバ識別子は、数値であっても、文字列であっても構わない。なお、たとえば、アクセス可能な範囲にコンテンツサーバ(本実施の形態においては携帯電話100)が1つしか存在しない場合のように、コンテンツサーバを特定する必要のないような場合には、サーバ識別子は入れ込まれず、コンテンツ識別子だけが入れ込まれるようにしても構わない。
この処理におけるコンテンツへのコンテンツ識別子およびサーバ識別子の入れ込みについて、図10を用いて説明する。コンテンツを格納するためのフォーマットにおいては、コンテンツデータ4000に、コンテンツデータ本体4010の他、そのコンテンツに関する情報を格納等するためのメタデータ等領域4020が設けられている。識別子入込部114は、コンテンツ識別子4100およびサーバ識別子4110を、メタデータ等領域の未使用部分または拡張用部分等を利用して、コンテンツデータ4000に入れ込む。ここで、メタデータ等領域にどのように入れ込むかについては、たとえば、メタデータ等領域4020の先頭からのバイト数等によって予め設定しておいて、テレビ装置500でコンテンツを受信した後に、そのバイト数に基づいてコンテンツ識別子およびサーバ識別子を取り出せるようにしておく。図10に示すように、この処理により、コンテンツデータ4200は、コンテンツ識別子4100およびサーバ識別子4110が入れ込まれたデータになる。
S1020にて、CPU110は、コンテンツ送信部152を制御して、少なくともコンテンツ識別子が入れ込まれたコンテンツを送信する。コンテンツの送信先は、コンテンツ再生装置であるテレビ装置500である。この処理においては、無線LAN等の指向性の少ない通信方式を用いても構わないが、赤外線等の指向性の強い短距離通信方式を用いることが好ましい。その理由は、送信先を予め選択しておく等の手間を必要とすることなく、携帯電話100の赤外線発光部を送信先のテレビ装置500の赤外線受光部540に対向させる(接近して向かい合わせる)ことにより、送信先を容易に選択することができるためである。
さらに、図11を参照して、S1100にて、CPU110は、コマンド受信部154を制御して、コンテンツ再生装置であるテレビ装置500から、コマンドを受信したか否かを判定する。このとき受信するコマンドの種類としては、親コンテナ識別子(上位階層識別子)を要求するコマンド、子オブジェクト識別子のリストを要求するコマンド、コンテンツデータを要求するコマンドがあるとする。コマンドを受信したと判定されると(S1100にてYES)、処理はS1110へ移される。もしそうでないと(S1100にてNO)、この処理はS1100へ移される。
S1110にて、CPU110は、コマンド受信部154を制御して、コンテンツ再生装置であるテレビ装置500から、親コンテナ識別子を要求するコマンドを受信したか否かを判定する。このとき、CPU110は、コンテンツ識別子またはコンテナ識別子(階層識別子)とともに、親コンテナの識別子を要求するコマンドを受信する。親コンテナ識別子を要求するコマンドを受信したと判定されると(S1110にてYES)、処理はS1120へ移される。もしそうでないと(S1110にてNO)、この処理はS1130へ移される。
S1120にて、CPU110は、コンテンツサーバ部112に記憶されたデータ記憶構造を参照して、応答送信部156を制御して、受信したコンテンツ識別子で特定されるコンテンツの親コンテナ識別子または受信したコンテナ識別子で特定されるコンテナの親コンテナ識別子を、コンテンツ再生装置であるテレビ装置500へ、応答として送信する。その後、この処理はS1100へ戻される。
S1130にて、CPU110は、コマンド受信部154を制御して、コンテンツ再生装置であるテレビ装置500から、子オブジェクト識別子のリストを要求するコマンドを受信したか否かを判定する。このとき、CPU110は、コンテナ識別子とともに、子オブジェクト識別子のリストを要求するコマンドを受信する。子オブジェクト識別子のリストを要求するコマンドを受信したと判定されると(S1130にてYES)、処理はS1140へ移される。もしそうでないと(S1130にてNO)、この処理はS1150へ移される。
S1140にて、CPU110は、コンテンツサーバ部112に記憶されたデータ記憶構造を参照して、応答送信部156を制御して、受信したコンテナ識別子で特定されるコンテナの子オブジェクト識別子のリストを応答として、コンテンツ再生装置であるテレビ装置500へ送信する。このとき送信されるリストは、受信したコンテナ識別子で特定されるコンテナの子コンテンツのコンテンツ識別子のリストおよび受信したコンテナ識別子で特定されるコンテナの子コンテナのコンテナ識別子のリストになる。その後、この処理はS1100へ戻される。
S1150にて、CPU110は、コマンド受信部154を制御して、コンテンツ再生装置であるテレビ装置500から、コンテンツデータを要求するコマンドを受信したか否かを判定する。このとき、CPU110は、コンテンツ識別子とともに、コンテンツデータを要求するコマンドを受信する。コンテンツデータを要求するコマンドを受信したと判定されると(S1150にてYES)、処理はS1160へ移される。もしそうでないと(S1150にてNO)、この処理はS1100へ戻される。
S1160にて、CPU110は、コンテンツ送信部152を制御して、コンテンツサーバ部112に記憶されたコンテンツデータであって、受信したコンテンツ識別子により特定されるコンテンツデータを応答として、コンテンツ再生装置であるテレビ装置500へ送信する。
[コンテンツ再生装置の一例であるテレビ装置のソフトウェア構造]
以下、本実施の形態に係るコンテンツ再生装置の一例であるテレビ装置500のCPU510で実行されるプログラムの制御構造について説明する。なお、テレビ装置500のCPU510は、このようなプログラムと並行して、テレビ装置としての一般的機能を実現するプログラムを実行する。しかしながら、そのプログラムは、本発明の本質的部分とは直接関係するものではないので、その詳細についてはここでは説明しない。
図12を参照して、S2000にて、テレビ装置500のCPU510(以下、単にCPU510と記載する。)は、コンテンツ受信部552を制御して、コンテンツ送信装置である携帯電話100から、コンテンツを受信したか否かを判定する。コンテンツを受信したと判定されると(S2000にてYES)、処理はS2010へ移される。もしそうでないと(S2000にてNO)、この処理は終了する。
S2010にて、CPU510は、識別子取出部514を制御して、受信したコンテンツに入れ込まれているコンテンツ識別子およびサーバ識別子を取り出す。このとき、このテレビ装置500がアクセス可能な範囲にコンテンツサーバ(本実施の形態においては携帯電話100)が1つしか存在しない場合にはコンテンツサーバを特定するサーバ識別子は格納されていないので、コンテンツ識別子のみが取り出されることになる。
S2020にて、CPU510は、コンテンツ再生部512を制御して、受信したコンテンツを再生する。ここで、コンテンツ再生部512は、受信したコンテンツが静止画であれば静止画を表示部502に表示し、受信したコンテンツが音声であれば音声出力部504から音声を出力し、受信したコンテンツが音声付き動画であれば動画を表示部502に表示するとともに音声を音声出力部504から出力する。しかしながら、本発明は、これらに限られず、コンテンツの種類に応じて、そのコンテンツに関して定義付けられた再生動作を行なうものであれば構わない。
なお、この図12においては、コンテンツ識別子およびサーバ識別子を取り出した後に受信したコンテンツを再生するものとしたが、コンテンツ識別子およびサーバ識別子の取り出しとコンテンツ再生との実行順序については、特に限定されない。たとえば上述とは逆にコンテンツ再生を先に実行するようにしても構わないし、両者を並行して実行するようにしても構わない。
このように処理されると、コンテンツ送信装置である携帯電話100から、コンテンツ再生装置であるテレビ装置500へ、コンテンツ識別子およびサーバ識別子を入れ込まれたコンテンツが送信されて、テレビ装置500において、入れ込まれたコンテンツ識別子およびサーバ識別子を取り出し、コンテンツが再生されている。このような状態において、コンテンツ再生装置であるテレビ装置500からコンテンツ送信装置である携帯電話100へ送信される処理およびテレビ装置500における再生処理について、図13〜図16を参照して説明する。
図13は、テレビ装置500に対するユーザの操作と、それに対応したコマンドの送信処理と、このコマンドに応答して携帯電話100から送信されたデータを受信したテレビ装置500の再生処理とを示すフローチャートである。図14は図13のS2500における処理の詳細、図15は図13のS2700における処理の詳細、図16は図13のS2900における処理の詳細を示すフローチャートである。なお、テレビ装置500におけるユーザの操作には、リモコン600が用いられる。
図13を参照して、S2100にて、CPU510は、コンテンツ受信部552を制御して、現在再生しているコンテンツが属する階層の直下にあるコンテナ・コンテンツのリストを取得したか否かを判定する。コンテナ・コンテンツのリストを取得したと判定されると(S2100にてYES)、処理はS2200へ移される。もしそうでないと(S2100にてNO)、この処理はS2100へ戻される。
S2200にて、CPU510は、このリストを表示部502に表示する。このときの具体的な表示例については、後述する動作において説明する。
この処理により、ユーザによるコンテンツの探索の開始時および階層の移動時に、現在の階層の直下にあるコンテナ・コンテンツのリストが取得されてユーザに提示される。このS2100にてリストを受信するにあたり、コンテナ情報取得部518は、現在の階層の親コンテナのコンテナ識別子とともに、子オブジェクト識別子のリストを取得するコマンドを携帯電話100へ送信する。テレビ装置500は、その応答として子コンテナ・子コンテンツのリストを取得する。
このように、ユーザがコンテンツの探索を始める時の「現在の階層」は、テレビ装置500が最初に携帯電話100から受信したコンテンツと同じ階層であるが、その親コンテナのコンテナ識別子はわからない。このため、携帯電話100から親コンテナのコンテナ識別子を取得する必要がある。このとき、コンテナ情報取得部518は、最初にコンテンツに入れ込まれて受け取ったコンテンツ識別子とともに、親コンテナの識別子取得コマンドを携帯電話100へ送信して、その応答として、親コンテナ識別子を取得する。そして、上述したように、さらに、コンテナ情報取得部518は、その親コンテナ識別子とともに、子オブジェクトのリスト取得コマンドを携帯電話100へ送信して、その応答として、子コンテナ・子コンテンツのリストを取得する。このように処理されることにより、最初にコンテンツの上位階層である親コンテナ識別子が取得され、その親コンテナの下位階層にある子コンテナ・子コンテンツのリストが取得される。このため、最初にコンテンツに入れ込まれて受け取ったコンテンツと関係があるコンテンツ(すなわち親コンテナが同じであるという点で関係があるコンテンツ)のリストを取得することができる。
S2300にて、CPU510は、ユーザによってコマンドが入力されたか否かを判定する。このコマンド入力は、テレビ装置500の表示部502に表示されたUI(User Interface)の表示に従って、ユーザがリモコン600で入力した内容が、コマンド入力となる。ユーザによってコマンドが入力されたと判定されると(S2300にてYES)、処理はS2400へ移される。もしそうでないと(S2300にてNO)、処理はS2300へ戻されてユーザによりコマンドが入力されるまで待つ。なお、リストを表示してから予め定められた時間が経過してもコマンドが入力されない場合には、タイムアウトとして処理を中止するようにしても構わない。
S2400にて、CPU510は、ユーザにより親コンテナへの移動を要求するコマンドが入力されたか否かを判定する。ユーザにより親コンテナへの移動を要求するコマンドが入力されたと判定されると(S2400にてYES)、処理はS2500へ移される。もしそうでないと(S2400にてNO)、この処理はS2600へ移される。
S2500にて、CPU510は、親コンテナへの移動処理が実行される。この処理の詳細な説明については、図14を用いて後述する。このS2500の処理後、処理はS2100へ戻される。
S2600にて、CPU510は、ユーザにより画像の再生を要求するコマンドが入力されたか否かを判定する。ユーザにより画像の再生を要求するコマンドが入力されたと判定されると(S2600にてYES)、処理はS2700へ移される。もしそうでないと(S2600にてNO)、この処理はS2800へ移される。
S2700にて、CPU510は、画像の再生処理が実行される。この処理の詳細な説明については、図15を用いて後述する。このS2700の処理後、処理はS2100へ戻される。
S2800にて、CPU510は、ユーザにより画像のスライドショーを要求するコマンドが入力されたか否かを判定する。ユーザにより画像のスライドショーを要求するコマンドが入力されたと判定されると(S2800にてYES)、処理はS2900へ移される。もしそうでないと(S2800にてNO)、この処理はS2100へ戻される。
S2900にて、CPU510は、画像のスライドショー処理が実行される。この処理の詳細な説明については、図16を用いて後述する。このS2900の処理後、処理はS2100へ戻される。
図14を参照して、図13のS2500の親コンテナへの移動処理について詳しく説明する。
S2510にて、CPU510は、コンテナ情報取得部518を制御して、最初にコンテンツに入れ込まれて受け取ったコンテンツ識別子とともに、親コンテナの識別子を取得するコマンドを、携帯電話100へ送信する。
S2520にて、CPU510は、携帯電話100から、親コンテナ識別子を受信したか否かを判定する。親コンテナ識別子を受信したと判定されると(S2520にてYES)、処理はS2530へ移される。もしそうでないと(S2520にてNO)、この処理はS2520へ戻される。なお、親コンテナの識別子を取得するコマンドを送信してから予め定められた時間が経過しても親コンテナの識別子を受信しない場合には、タイムアウトとして処理を中止するようにしても構わない。
S2530にて、CPU510は、S2520にて受信したコンテナ識別子とともに、子オブジェクト識別子のリストを取得するコマンドを、携帯電話100へ送信する。
S2540にて、CPU510は、携帯電話100から、子オブジェクト識別子のリストを受信したか否かを判定する。子オブジェクト識別子のリストを受信したと判定されると(S2540にてYES)、処理はS2550へ移される。もしそうでないと(S2540にてNO)、この処理はS2540へ戻される。このようにして、親コンテナの子オブジェクトのリストが取得される。なお、子オブジェクト識別子のリストを取得するコマンドを送信してから予め定められた時間が経過しても子オブジェクト識別子のリストを受信しない場合には、タイムアウトとして処理を中止するようにしても構わない。
S2550にて、CPU510は、受信した子オブジェクト識別子のリストに基づいて、親コンテナ識別子の子オブジェクトのリスト(子コンテナ・子コンテンツのリスト)を作成する。
S2560にて、CPU510は、作成した親コンテナ識別子の子オブジェクトのリストに基づいて、親コンテナへ移動する。このとき、表示部502には、移動した親コンテナの子オブジェクト識別子のリストが表示される。その後、この処理は終了して、図13のS2100へ戻される。
図15を参照して、図13のS2700の画像の再生処理について詳しく説明する。
S2710にて、CPU510は、再生するコンテンツ(ユーザにより選択されたコンテンツ)のコンテンツ識別子とともに、コンテンツデータを要求するコマンドを、携帯電話100へ送信する。
S2720にて、CPU510は、再生するコンテンツデータを携帯電話100から受信したか否かを判定する。再生するコンテンツデータを受信したと判定されると(S2720にてYES)、処理はS2730へ移される。もしそうでないと(S2720にてNO)、この処理はS2720へ戻される。なお、コンテンツデータを要求するコマンドを送信してから予め定められた時間が経過してもコンテンツデータを受信しない場合には、タイムアウトとして処理を中止するようにしても構わない。
S2730にて、CPU510は、コンテンツ再生部512を制御して、受信したコンテンツデータに基づいて、ユーザにより再生要求されたコンテンツを再生する。その後、この処理は終了して、図13のS2100へ戻される。
図16を参照して、図13のS2900のスライドショー処理について詳しく説明する。
S2910にて、CPU510は、スライドショーの停止指示を検出したか否かを判定する。ユーザがスライドショーの停止指示をリモコン600で入力すると、スライドショーの停止指示を検出したと判定される。スライドショーの停止指示を検出したと判定されると(S2910にてYES)、処理はS2920へ移される、もしそうでないと(S2910にてNO)、この処理は終了して図13のS2100へ戻される。なお、ここでは、ユーザがスライドショーの停止指示を入力するとして説明したが、たとえば、親コンテナにある全ての子コンテンツについてのスライドショーが終了した時点で、スライドショーを停止するようにしても構わない。
S2920にて、CPU510は、現在の階層のコンテンツリストの中から、次に表示するコンテンツの識別子とともに、コンテンツデータの取得を要求するコマンドを、携帯電話100へ送信する。すなわち、コンテンツデータ取得部520は、現在の階層のコンテンツのリストのなかから、次に再生するコンテンツを選択して、そのコンテンツのコンテンツ識別子とともに、コンテンツデータの取得を要求するコマンドを携帯電話100へする。ここで、次に再生するデータとは、たとえば、コンテンツのリストの中の並び順で単純に選択されたコンテンツである。この場合には、コンテンツの再生順は、コンテンツのリストの並び順で決定される。また、コンテンツのリスト内に、コンテンツの作成日時(写真データであれば撮影日付)等のメタデータが含まれる場合には、そのメタデータを参照して、たとえば、作成日時順に、コンテンツの再生順を決定するようにしても構わない。この場合において、スライドショーで再生するコンテンツがリストの最後に到達した場合、または、リスト内の全てのコンテンツをスライドショーでの再生を終了した場合には、再度リストの始めから、または作成日時の一番古いデータから再生するようにしても構わない。なお、上述したように、この時点でスライドショーを終了するようにしても構わない。このS2920の処理においては、ユーザがコンテンツのリストの中から再生するコンテンツを選択するのではなく、コンテンツデータ取得部520が自動的に次々に再生するコンテンツを携帯電話100へ要求している。このように、自動的にコンテンツが選択されている。
S2930にて、CPU510は、スライドショーとして次に再生するコンテンツデータを携帯電話100から受信したか否かを判定する。スライドショーとして次に再生するコンテンツデータを受信したと判定されると(S2930にてYES)、処理はS2940へ移される。もしそうでないと(S2930にてNO)、この処理はS2930へ戻される。なお、スライドショーとして次に再生するコンテンツデータを要求するコマンドを送信してから予め定められた時間が経過してもコンテンツデータを受信しない場合には、タイムアウトとして処理を中止するようにしても構わない。
S2940にて、CPU510は、コンテンツ再生部512を制御して、受信したコンテンツデータに基づいて、ユーザによりスライドショーとして再生要求されたコンテンツを、予め定められた長さの時間再生する。なお、ここではコンテンツデータに基づいて、コンテンツを予め定められた長さの時間再生するとして説明したが、たとえば、ランダムな時間再生するようにしても構わない。その後、この処理は終了して、図13のS2100へ戻される。
[コンテンツ通信システムの動作]
以上のような構造およびフローチャートに基づく、本実施の形態に係るコンテンツ通信システムの動作について説明する。
携帯電話100からテレビ装置500へ、コンテンツ識別子およびサーバ識別子を入れ込まれたコンテンツが送信されて(サーバ識別子は入れ込まれていない場合もある。)、テレビ装置500において、入れ込まれたコンテンツ識別子およびサーバ識別子を取り出し、コンテンツが再生されている。
このようにコンテンツが再生されているテレビ装置500は、ユーザの指示によって、または、自動的に、コンテンツを表示するためのコマンド(コンテンツ要求コマンド)、コンテンツを探索するためのリストを取得するためのコマンド(リスト要求コマンド)を携帯電話100へ送信して、コンテンツサーバ部112に記憶されたコンテンツを指定して再生していく。
たとえば、コンテンツ送信装置である携帯電話100において、コンテンツサーバ部112で、図9に示すようなデータ記憶構造が採用される場合がある。より詳しくは、「撮影日付別」のコンテナ3100および「撮影場所別」のコンテナ3200が、第一階層(ルートコンテナ3000の直下の階層)に、コンテンツ3300、コンテンツ3400およびコンテンツ3500とともに配置される。
「撮影日付別」のコンテナ3100の直下の階層には、「20090728」のコンテナ3110(2009年7月28日に撮影された画像が格納)、「20090729」のコンテナ3120(2009年7月29日に撮影された画像が格納)および「20090730」のコンテナ3130(2009年7月28日に撮影された画像が格納)が、コンテンツ3140およびコンテンツ3150とともに配置される。
「撮影場所別」のコンテナ3200の直下の階層には、「奈良」のコンテナ3210(奈良市で撮影された画像が格納)、「天理」のコンテナ3220(天理市で撮影された画像が格納)および「大和郡山」のコンテナ3230(大和郡山市で撮影された画像が格納)が、コンテンツ3240およびコンテンツ3250とともに配置される。
このようにコンテナおよびコンテンツが配置されたデータ構造においては、最初に「20090728」のコンテナ3110の直下にあるコンテンツ3114またはコンテンツ3116から探索を始める場合は、それらのコンテンツ3114またはコンテンツ3116のすぐ上の階層へ移動することで、「20090729」のコンテナ3120および「20090730」のコンテナ3130に格納されているコンテンツに容易にアクセスすることができる。これは、探索を始めたときのコンテンツに関係が深いコンテンツをアクセスしていることを意味する。この場合に、日付順にコンテナをソートして記憶しておくようにすると、撮影日付が近いコンテナに格納されたコンテンツに容易にアクセスすることができる。
なお、携帯電話100のコンテンツサーバ部112においては、同じコンテンツを複数の異なるコンテナの中(すなわち、階層構造の中の別の場所)に格納するようにしても構わない。たとえば、2009年7月28日に奈良市で撮影された画像は、「20090728」のコンテナ3110と、「奈良」のコンテナ3210との両方のコンテナにあるようにしても構わない。この場合は、同じコンテンツであっても、「20090728」のコンテナ3110の下位階層にある場合と、「奈良」のコンテナ3210の下位階層にある場合とで異なるコンテンツ識別子を割り振るようにする。たとえば、「参照識別子」等のコンテンツ識別子を設けること等で、両者が同じコンテンツを指すことがわかるようにしておくことが好ましい。
また、携帯電話100のコンテンツサーバ部112においては、上述したようなデータ階層構造を永続的に保持している必要はない。たとえば、テレビ装置500から「20090728」のコンテナ3110にあるコンテンツが要求された時点で、携帯電話100内のデータベースの中から2009年7月28日に撮影された画像を検索して、コンテンツリスト等として応答するようにしても構わない。
コンテンツサーバ部112が、このようなデータ階層構造によりコンテンツを管理している場合において、コンテンツの表示中における、ユーザによるコンテンツの選択動作について説明する。
図17および図18に示すように、テレビ装置500の表示部502には、コンテナ・コンテンツリストが表示される(S2200)。なお、これらの図17および図18に示すコンテナ・コンテンツリストは表示例に過ぎない。
図17および図18に示すように、テレビ装置500の表示部502に対応する領域5000または領域6000には、コンテンツリスト5020またはコンテンツリスト6020が表示される。なお、現在選択されているコンテンツがカーソル5030またはカーソル6030で示されている。さらに、現在選択してされているコンテンツのプレビューのための画像5010および画像6010が表示されている。
なお、コンテンツリスト6020のアイコンおよび画像サムネイルについては、リストの中に含めて携帯電話100からテレビ装置500へ送信しても構わないし、リストの中にそれらのアイコンおよびサムネイルのURI(Uniform Resource Identifier)を含めておいて、テレビ装置500がそのURIにアクセスしてアイコンや画像サムネイルのデータを取得するようにしても構わない。なお、このプレビュー画像の表示は必ず必要なものではない。
図17および図18に示すコンテンツリストは、上述のS2100およびS2200で説明したように、現在再生しているコンテンツが属する階層の直下にあるコンテナ・コンテンツのリストである。
(ユーザによるコンテンツ選択)
このように表示されたコンテンツリストの中からユーザが次に再生したい(画像を表示させたい)コンテンツが選択される(S2600にてYES)。
テレビ装置500から携帯電話100へ、ユーザが次に再生したいコンテンツ(ユーザにより選択されたコンテンツ)のコンテンツ識別子とともに、コンテンツデータを要求するコマンドが、送信される(S2710)。
再生するコンテンツデータを携帯電話100から受信したテレビ装置500は(S2720にてYES)、受信したコンテンツデータに基づいて、ユーザにより再生要求されたコンテンツが再生される(S2730)。
このようにして、ユーザが選択するコンテンツは、テレビ装置500の表示部502に表示されたコンテンツリストの中から選択されるものである。そして、図17および図18を用いて説明したように、このコンテンツリストは、現在再生しているコンテンツが属する階層の直下にあるコンテナ・コンテンツのリストであるので、現在再生しているコンテンツに関係があるコンテンツのリストである。たとえば、現在再生しているコンテンツと撮影日付が同じコンテンツであったり、現在再生しているコンテンツと撮影場所が同じでコンテンツであったりする。
ユーザはこのようなコンテンツリストの中から次に再生したいコンテンツを選択するだけで、現在再生しているコンテンツに関係があるコンテンツを携帯電話100から受信して、テレビ装置500にて再生させることができる。このため、ユーザが膨大な数のコンテンツの中から、現在再生しているコンテンツに関係するコンテンツを容易に探し出すことができる。
このように動作することにより、コンテンツサーバ部112におけるデータ階層構造によりコンテンツが管理されている場合に、携帯電話100から最初に送信されたコンテンツに近い位置(下位階層)にあるコンテンツのリストがテレビ装置500において表示される。ユーザがこのリストの中からコンテンツを選択することにより、最初に送信されてきたコンテンツに関係するコンテンツを次々に再生することができる。従って、コンテンツサーバ部112のデータ階層構造において、日付順または場所毎などにコンテンツをコンテナ内に入れて整理しておけば、コンテンツ送信装置である携帯電話100から送信されてきたコンテンツに関係があるコンテンツをコンテンツ再生装置であるテレビ装置500において容易に選択して、次々に再生することができる。
(スライドショーによるコンテンツ再生)
携帯電話100から最初に受信したコンテンツがテレビ装置500でスライドショーとして再生されている場合には、以下のようにして(ユーザが次のコンテンツを選択する必要なく)関係があるコンテンツが次々に再生される。
テレビ装置500おいて、スライドショーの停止指示を検出しない限り(S2910にてNO)、現在の階層のコンテンツリストの中から、次に表示するコンテンツ(たとえば現在再生中のコンテンツの撮影日付に最も近い撮影日付のコンテンツ)の識別子とともに、コンテンツデータの取得を要求するコマンドが、携帯電話100へ送信される(S2920)。このとき、ユーザによるコンテンツの選択操作は必要としない。
テレビ装置500において、再生するコンテンツデータを携帯電話100から受信すると(S2930にてYES)、受信したコンテンツデータに基づいて、ユーザによりスライドショートして再生要求されたコンテンツが再生される(S2940)。
図19に、このときのテレビ装置500の表示部502に表示される画面例を示す。テレビ装置500の表示部502に対応する領域7000には、コンテンツデータのスライドショーが表示される。スライドショーとして画像Aが表示されるとともにアイコン7010が表示されている。このアイコン7010はスライドショーの再生中であることを示す。ここで、スライドショーとは、ある順序に従って、コンテンツをある時間ずつ自動的に再生していくことをいう。ここで、「ある順序に従って」とは、上述したように、コンテンツサーバ部112におけるデータ階層構造において、同じコンテナ(フォルダ)に格納されたコンテンツ(特定の集合に属するコンテンツ)をその撮影日付が新しい順番で再生していくことである。なお、順番は適宜変更されても構わない。また、「ある時間ずつ」とは、予め設定された時間ずつ再生することであるが、たとえば、ランダムに3秒、5秒または10秒と再生時間を変更して、コンテンツを再生するようにしても構わない。
さらに、このようなスライドショーにおいては、携帯電話100のコンテンツサーバ部112のステップ階層構造を用いて、最初のコンテンツを受信したテレビ装置500においては、自動的に、まず、そのコンテンツの親コンテナ内のコンテンツのスライドショー再生を実行した後に、親コンテナと同じ階層にあるコンテナの中にあるコンテンツについて、スライドショー再生を実行するようにしても構わない。このとき、コンテナ内でコンテナが撮影日付順にソートされていれば、リスト内の順序で再生していくようにしておくことで、撮影日付順で画像を再生していくことができる。
このようにして、自動的に選択されるコンテンツは、現在再生しているコンテンツが属する階層の直下にあるコンテナ・コンテンツのリストから選択されるコンテンツであるので、現在再生しているコンテンツに関係があるコンテンツをスライドショーの形式で次々を再生することができる。
このように動作することにより、コンテンツサーバ部112におけるデータ階層構造によりコンテンツが管理されている場合に、携帯電話100から最初に送信されたコンテンツに近い位置(下位階層)にあるコンテンツを、テレビ装置500において次々に再生することができる。従って、コンテンツサーバ部112のデータ階層構造において、日付順または場所毎などにコンテンツをコンテナ内に入れて整理しておけば、コンテンツ送信装置である携帯電話100から送信されてきたコンテンツに関係があるコンテンツを、コンテンツ再生装置であるテレビ装置500において、ユーザがコンテンツを選択することなく、次々にスライドショーとして再生することができる。
<第2の実施の形態>
以下に、本発明の第2の実施の形態に係るコンテンツ通信システムについて説明する。なお、本実施の形態に係るコンテンツ通信システムにおいては、このコンテンツ通信システムを構成する、コンテンツ送信装置である携帯電話100の通信部150が通信部8000により実現されている点およびコンテンツ再生装置であるテレビ装置500の通信部550が通信部8500により実現されている点が異なる。それ以外の構造およびフローチャートについては上述した第1の実施の形態と同じであるため、ここでの詳細な説明は繰返さない。本発明の適用は、このような携帯電話100およびテレビ装置500以外の装置であっても構わないことも、上述した第1の実施の形態と同じである。
図20は、上述した図4に対応する制御ブロック図であり、図21は、上述した図7に対応する制御ブロック図である。
この携帯電話100およびテレビ装置500は、コンテンツを携帯電話100からテレビ装置500へ最初に送信する際(図8、図12で示されるフローチャートを実行する際)には、第1の通信部8010および第1の通信部8510を用いて通信する。その後の携帯電話100とテレビ装置500との間において通信する際(図11、図13〜図16で示されるフローチャートを実行する際)には、第2の通信部8020および第2の通信部8520を用いて通信する。
ここで、本実施の形態においては、第1の通信部8010および第1の通信部8510は、赤外線を用いた近距離無線通信方式を用いる。第2の通信部8020および第2の通信部8520は、無線LAN通信方式を用いる。
携帯電話100からテレビ装置500へ最初にコンテンツを送信する際には、第1の通信部8010および第1の通信部8510を用いた赤外線を利用して通信することにより、赤外線の近距離性および高指向性により、コンテンツ送信装置である携帯電話100の赤外線発光部をコンテンツ再生装置であるテレビ装置500の赤外線受光部540に対向させるという動作だけで、通信相手となるコンテンツ再生装置であるテレビ装置500を容易にかつ直感的に指定することができる。
特に、無線LAN通信方式を用いて、コンテンツ再生装置であるテレビ装置500からコンテンツリストまたはコンテンツデータをコンテンツ送信装置である携帯電話100へ取得しに行く際には、通信相手は、最初にコンテンツを送信してきたコンテンツ送信装置である携帯電話100であることが既に決定している。このため、指向性のない無線LAN通信方式を採用しても通信相手を誤ることもない。このようにすると、コンテンツ再生装置であるテレビ装置500の発光部をコンテンツ送信装置である携帯電話100の受光部に対向させるという手間を必要としないで、コンテンツの探索および取得(再生)を実行することができる。
<変形例>
以下に、本発明の変形例について説明する。
本変形例においては、コンテンツサーバ部112のデータ階層構造は、図9に示す構造ではなく、図22に示すような環状構造である。コンテンツサーバ部112は、このような環状構造でコンテンツ8600〜コンテンツ8660を管理している。なお、図22におけるコンテンツの数は一例でしかない。このため、関係するコンテンツの取得に関しては、上述した第1の実施の形態のように階層の上位階層または下位階層のコンテンツを取得するのではなく、環状構造の中で前後のコンテンツを取得する。
環状構造においては、関係が深いコンテンツどうしを近くに配置するようにすれば、コンテンツ再生装置であるテレビ装置500において、最初にコンテンツ送信装置である携帯電話100から送信されたコンテンツに関係が深いコンテンツを、順に取得していくことができる。
今回開示された実施の形態は単に例示であって、本発明が上述した実施の形態のみに限定されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、特許請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味および範囲内でのすべての変更を含む。