(58)【調査した分野】(Int.Cl.,DB名)
前記プロセッサは、前記第1の端末が前記コンテンツを出力している最中に前記第1の端末と前記第2の端末との通信が切断された場合に、前記第2の出力部に、前記切断時に前記第1の端末が出力していた箇所から前記コンテンツの再生を開始させる、請求項3または4に記載のネットワークシステム。
【発明を実施するための形態】
【0017】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【0018】
<ネットワークシステム1の動作概要>
まずは、本実施の形態に係るネットワークシステム1の動作概要について説明する。
図1は、本実施の形態に係るネットワークシステム1の動作概要を示すイメージ図である。
【0019】
なお、以下では、端末1としてスマートフォン100を例に挙げて説明する。しかしながら、端末1は、その他の携帯電話、ノートパソコン、電子辞書、電子ブック、PDAなどの携帯型の端末であってもよい。さらに言うと、端末1は、端末2が対応していない通信方式で外部のコンテンツサーバ400とデータ通信することができれば携帯型の装置に限定するものではない。
【0020】
また、以下では、端末2としてスピーカ200およびテレビ300を例に挙げて説明する。しかしながら、端末2は、ハードディスクレコーダ、デスクトップ型のパーソナルコンピュータなどの据置型の端末であってもよい。さらに言うと、端末2は、ディスプレイおよび/またはスピーカを有し、少なくとも1つの通信方式によって外部のコンテンツサーバ400とデータ通信することができれば据置型の装置に限定するものではない。
【0021】
また、スマートフォン100とスピーカ200とテレビ300とが出力するコンテンツは音声または動画像を含む。そして、コンテンツデータは、音声データまたは動画像データを含む。
【0022】
以下では、スマートフォン100とスピーカ200とテレビ300とが、ストリームデータを受信して、当該ストリームデータを順次再生するものとしている。しかしながら、スマートフォン100とスピーカ200とテレビ300とは、コンテンツデータを最後まで受信し終わってから、当該コンテンツデータを最初から再生するものであってもよい。
【0023】
また、通信方式とは、通信プロトコルまたはデータ形式などから特定されるものである。そして、通信プロトコルは、100BASE−TX、RS−232Cおよび電話線などの第1層としての物理層のプロトコル、PPP(Point to Point Protocol)およびMAC(Media Access Control)などの第2層としてのデータリンク層のプロトコル、ICMP(Internet Control Message Protocol)およびIP(Internet Protocol)などの第3層としてのネットワーク層のプロトコル、TCP(Transmission Control Protocol)およびUDP(User Datagram Protocol)などの第4層としてのトランスポート層のプロトコル、RTP(Real-time Transport Protocol)などの第5層としてのセッション層のプロトコル、SSL(Secure Sockets Layer)およびTLS(Transport Layer Security)などの第6層としてのプレゼンテーション層のプロトコル、HTTP(HyperText Transfer Protocol)およびFTP(File Transfer Protocol)などの第7層としてのアプリケーション層のプロトコルなど、いずれの階層の通信プロトコルであってもよい。
【0024】
図1(A)を参照して、ネットワークシステム1は、スマートフォン100と、スピーカ200と、テレビ300と、コンテンツサーバ400とを含む。ここでは、スマートフォン100が、コンテンツサーバ400からストリームデータをダウンロードして、音声または画像を出力している。
【0025】
スマートフォン100は、近距離無線通信によって、スピーカ200およびテレビ300から機器情報を取得する。たとえば、スマートフォン100は、スピーカ200およびテレビ300から、対応可能な通信方式などを取得する。スマートフォン100は、スピーカ200およびテレビ300の機器情報に基づいて、現在スマートフォン100がストリームデータを受信するために使用している通信方式にスピーカ200およびテレビ300が対応可能か否かを判断する。
【0026】
図1(B)を参照して、現在スマートフォン100がストリームデータを受信するために使用している通信方式にスピーカ200およびテレビ300が対応可能である場合、スマートフォン100は、スピーカ200およびテレビ300に再生中のコンテンツを再生するために必要な情報を送信する。スピーカ200およびテレビ300は、当該情報に基づいて、スマートフォン100を介さずにコンテンツサーバ400からストリームデータをダウンロードする。つまり、スピーカ200およびテレビ300は、スマートフォン100を介さずにコンテンツサーバ400からストリームデータをダウンロードすることによって、コンテンツを出力する。
【0027】
図1(C)を参照して、現在スマートフォン100がストリームデータを受信するために使用している通信方式にスピーカ200およびテレビ300が対応可能でない場合、スマートフォン100は、受信したストリームデータをスピーカ200およびテレビ300に転送する。スピーカ200およびテレビ300は、スマートフォン100から転送されたストリームデータに基づいてコンテンツを出力する。
【0028】
このように、本実施の形態に係るネットワークシステム1は、スピーカ200およびテレビ300がストリームデータの通信方式に対応していなくても、スマートフォン100を介することによってスピーカ200およびテレビ300がコンテンツを出力することができる。
【0029】
以下、このような機能を実現するためのネットワークシステム1の構成について詳述する。
【0030】
<ネットワークシステム1の全体構成>
本実施の形態に係るネットワークシステム1の全体構成について説明する。
図2は、本実施の形態に係るネットワークシステム1の全体構成を示すブロック図である。
【0031】
図1および
図2を参照して、本実施の形態に係るネットワークシステム1は、上述したように、スマートフォン100などの携帯型の端末1と、スピーカ200またはテレビ300などの据置型の端末2とを含む。スマートフォン100は、ルータ500を介して、または直接的に、少なくとも1つの通信方式(たとえば、第1〜第4の通信プロトコル)に従ってインターネットからストリームデータを受信することができる。スピーカ200またはテレビ300は、ルータを介して、または直接的に、少なくとも1つの通信方式(たとえば、第4の通信プロトコル)に従ってインターネットからストリームデータを受信することができる。換言すれば、スピーカ200またはテレビ300は、第1〜第3の通信プロトコルには対応していない。
【0032】
本実施の形態においては、スマートフォン100は、ユーザからの切り替え命令が入力されたときに、または所定の条件が満たされたときに、スピーカ200にストリームデータに基づいてコンテンツを出力させる。具体的には、スピーカ200が対応していない通信プロトコルに従ってストリームデータを受信する必要がある場合、スマートフォン100がスピーカ200にストリームデータを転送する。一方、スピーカ200が対応している通信プロトコルに従ってストリームデータを受信可能な場合、スピーカ200がスマートフォン100を介さずにストリームデータを受信する。
【0033】
<スマートフォン100のハードウェア構成>
次に、スマートフォン100のハードウェア構成について説明する。
図3は、本実施の形態に係るスマートフォン100のハードウェア構成を示すブロック図である。
【0034】
図3を参照して、スマートフォン100は、CPU110と、タッチパネル120と、メモリ130と、メモリインターフェイス140と、第1の通信インターフェイス150と、第2の通信インターフェイス160と、スピーカ170と、ボタン180と、電池190とを含む。
【0035】
タッチパネル120は、ディスプレイ121とポインティングデバイス122とを含む。タッチパネル120は、抵抗膜方式、表面弾性波方式、赤外線方式、電磁誘導方式、静電容量方式などのいずれのタイプであってもよい。タッチパネル120は、光センサ液晶を含んでもよい。
【0036】
タッチパネル120は、CPU110からの命令(信号)に基づいて、文字および/または画像を表示する。CPU110は、受信したストリームデータに基づいて、タッチパネル120に画像および/またはテキストを表示させる。また、CPU110は、制御プログラムに基づいて、タッチパネル120に各種のソフトウェアボタンを表示させたりする。
【0037】
タッチパネル120は、所定時間毎に外部の物体によるタッチパネル120へのタッチ操作を検知して、タッチ座標(接触座標)をCPU110に入力する。換言すれば、CPU110は、タッチパネル120から順次タッチ座標を取得する。CPU110は、タッチ座標に基づいて、ユーザからの命令の入力を受け付ける。
【0038】
メモリ130は、各種のRAM(Random Access Memory)、ROM(Read-Only Memory)および/またはハードディスクなどによって実現される。メモリ130は、CPU110によって実行される制御プログラムとその他のデータとを記憶する。
【0039】
メモリインターフェイス140は、外部の記憶媒体141からデータを読み出す。換言すれば、CPU110は、メモリインターフェイス140を介して外部の記憶媒体141に格納されているデータを読み出して、当該データをメモリ130に格納する。逆に、CPU110は、メモリ130からデータを読み出して、メモリインターフェイス140を介して当該データを外部の記憶媒体141に格納する。
【0040】
なお、記憶媒体141としては、CD−ROM(Compact Disc - Read Only Memory)、DVD−ROM(Digital Versatile Disk - Read Only Memory)、USB(Universal Serial Bus)メモリ、メモリカード、FD(Flexible Disk)、ハードディスク、磁気テープ、カセットテープ、MO(Magnetic Optical Disc)、MD(Mini Disc)、IC(Integrated Circuit)カード(メモリカードを除く)、光カード、マスクROM、EPROM、EEPROM(Electronically Erasable Programmable Read-Only Memory)などの、不揮発的にプログラムを格納する媒体が挙げられる。
【0041】
第1の通信インターフェイス150は、アンテナおよび/またはコネクタによって実現される。第1の通信インターフェイス150は、インターネットなどのネットワークを介してコンテンツサーバ400およびルータ500などの他の装置との間でデータをやり取りする。換言すれば、CPU110は、第1の通信インターフェイス150を介して、他の装置からプログラム、音声データ、画像データ、テキストデータなどを受信したり、他の装置にデータを送信したりする。
【0042】
第2の通信インターフェイス160は、アンテナおよび/またはコネクタによって実現される。第2の通信インターフェイス160は、無線LAN(Wifi)等のネットワーク又はbluetooth(登録商標)などの近距離用の通信方式を利用してスピーカ200およびテレビ300などの他の装置との間でデータをやり取りする。換言すれば、CPU110は、第2の通信インターフェイス160を介して、他の装置からプログラム、音声データ、画像データ、テキストデータなどを受信したり、他の装置にデータを送信したりする。
【0043】
スピーカ170は、CPU110からの信号に基づいて、音声を出力する。すなわち、CPU110は、受信したストリームデータに基づいて、スピーカ170に音声を出力させる。
【0044】
ボタン180は、スマートフォン100の表面に配置される。スマートフォン100には、電源キー、ホームキー、文字キー、テンキー、十字キー、決定キーなどの複数のボタンが配置されても良い。ボタン180は、ユーザから命令を受け付ける。ボタン180は、ユーザからの命令をCPU110に入力する。
【0045】
電池190は、スマートフォン100の各部に電力を供給する。CPU110は、電池190の残量を取得することができる。
【0046】
CPU110は、メモリ130あるいは記憶媒体141に記憶されている制御プログラムを実行することによって、スマートフォン100の各部を制御する。すなわち、CPU110は、メモリ130あるいは記憶媒体141に記憶されている制御プログラムを実行することによって、後述する各種の処理を実行する。
【0047】
<スマートフォン100の機能構成>
次に、スマートフォン100の機能構成について説明する。
図4は、本実施の形態に係るスマートフォン100の機能構成を示すブロック図である。ここでは、本実施の形態に係るスマートフォン100が、4種類のコンテンツ配信サービスに対応している場合について説明する。例えば、本実施の形態に係るスマートフォン100が、第1〜第4の通信プロトコルに対応している場合について説明する。
【0048】
図4を参照して、CPU110は、メモリ130に記憶されているアプリケーションプログラムを実行することによって、第1のサービス受信部111と、第2のサービス受信部112と、第3のサービス受信部113と、第4のサービス受信部114と、出力制御部115とを実現する。また、ディスプレイ121およびスピーカ170が、A/V出力部を実現する。
【0049】
第1のサービス受信部111は、第1の通信インターフェイス150を介して、第1の通信プロトコルに従って、ストリームデータを取得する。第1のサービス受信部111は、受信したストリームデータを順次出力制御部115に受け渡す。
【0050】
第2のサービス受信部112は、第1の通信インターフェイス150を介して、第2の通信プロトコルに従って、ストリームデータを取得する。第2のサービス受信部112は、受信したストリームデータを順次出力制御部115に受け渡す。
【0051】
第3のサービス受信部113は、第1の通信インターフェイス150を介して、第3の通信プロトコルに従って、ストリームデータを取得する。第3のサービス受信部113は、受信したストリームデータを順次出力制御部115に受け渡す。
【0052】
第4のサービス受信部114は、第1の通信インターフェイス150を介して、第4の通信プロトコルに従って、ストリームデータを取得する。第4のサービス受信部114は、受信したストリームデータを順次出力制御部115に受け渡す。
【0053】
出力制御部115は、受信したストリームデータに基づいて、A/V出力部を介して順次コンテンツを出力する。
【0054】
また、本実施の形態の出力制御部115は、ユーザの切り替え命令に応じて、または所定の条件を満たした際に自動的に、第2の通信インターフェイス160を介して、スピーカ200およびテレビ300の機器情報を取得する。出力制御部115は、当該機器情報に基づいて、スピーカ200およびテレビ300が、現在第1の通信インターフェイス150を介して受信している(これから受信しようとしている)ストリームデータの通信プロトコルに対応しているか否かを判断する。
【0055】
そして、出力制御部115は、スピーカ200およびテレビ300が、現在第1の通信インターフェイス150を介して受信している(これから受信しようとしている)ストリームデータの通信プロトコルに対応している場合、第2の通信インターフェイス160を介してスピーカ200およびテレビ300にストリームデータを受信するための情報および再生するための情報を送信する。これによって、スピーカ200およびテレビ300は、自身で(スマートフォン100を介さずに)、ストリームデータをダウンロードして、コンテンツを出力することができる。
【0056】
一方、出力制御部115は、スピーカ200およびテレビ300が、現在第1の通信インターフェイス150を介して受信している(これから受信しようとしている)ストリームデータの通信プロトコルに対応していない場合、第2の通信インターフェイス160を介して受信したストリームデータをスピーカ200およびテレビ300に転送する。これによって、スピーカ200およびテレビ300は、スマートフォン100からのストリームデータに基づいてコンテンツを出力することができる。
【0057】
<スピーカ200のハードウェア構成>
次に、スピーカ200のハードウェア構成について説明する。
図5は、本実施の形態に係るスピーカ200のハードウェア構成を示すブロック図である。
【0058】
図5を参照して、スピーカ200は、CPU210と、メモリ230と、メモリインターフェイス240と、第1の通信インターフェイス250と、第2の通信インターフェイス260と、スピーカ270と、ボタン280とを含む。
【0059】
メモリ230は、各種のRAM、ROMおよび/またはハードディスクなどによって実現される。メモリ230は、CPU210によって実行される制御プログラムとその他のデータとを記憶する。
【0060】
メモリインターフェイス240は、外部の記憶媒体241からデータを読み出す。換言すれば、CPU210は、メモリインターフェイス240を介して外部の記憶媒体241に格納されているデータを読み出して、当該データをメモリ230に格納する。逆に、CPU210は、メモリ230からデータを読み出して、メモリインターフェイス240を介して当該データを外部の記憶媒体241に格納する。
【0061】
なお、記憶媒体241としては、スマートフォン100の記憶媒体141と同様であるため、ここでは説明を繰り返さない。
【0062】
第1の通信インターフェイス250は、アンテナおよび/またはコネクタによって実現される。第1の通信インターフェイス250は、インターネットなどのネットワークを介してコンテンツサーバ400およびルータ500などの他の装置との間でデータをやり取りする。換言すれば、CPU210は、第1の通信インターフェイス250を介して、他の装置からプログラム、音声データ、画像データ、テキストデータなどを受信したり、他の装置にデータを送信したりする。
【0063】
第2の通信インターフェイス260は、アンテナおよび/またはコネクタによって実現される。第2の通信インターフェイス260は、無線LAN等のネットワーク又はbluetooth(登録商標)などの近距離用の通信方式を利用してスマートフォン100およびテレビ300などの他の装置との間でデータをやり取りする。換言すれば、CPU210は、第2の通信インターフェイス260を介して、他の装置からプログラム、音声データ、画像データ、テキストデータなどを受信したり、他の装置にデータを送信したりする。
【0064】
スピーカ270は、CPU210からの信号に基づいて、音声を出力する。すなわち、CPU210は、受信したストリームデータに基づいて、スピーカ270に音声を出力させる。
【0065】
ボタン280は、スピーカ200の表面に配置される。スピーカ200には、電源キー、ホームキー、文字キー、テンキー、十字キー、決定キーなどの複数のボタンが配置されても良い。ボタン280は、ユーザから命令を受け付ける。ボタン280は、ユーザからの命令をCPU210に入力する。
【0066】
CPU210は、メモリ230あるいは記憶媒体241に記憶されている制御プログラムを実行することによって、スピーカ200の各部を制御する。
【0067】
<スピーカ200の機能構成>
次に、スピーカ200の機能構成について説明する。
図6は、本実施の形態に係るスピーカ200の機能構成を示すブロック図である。ここでは、本実施の形態に係るスピーカ200が、第1〜第3のコンテンツ配信サービスに対応していない場合について説明する。例えば、本実施の形態に係るスピーカ200が、第1〜第3の通信プロトコルに対応していない場合について説明する。
【0068】
図6を参照して、CPU210は、メモリ230に記憶されているアプリケーションプログラムを実行することによって、ローカル通信受信部211と、第4のサービス受信部214と、出力制御部215とを実現する。また、スピーカ270が、A/V出力部を実現する。
【0069】
ローカル通信受信部211は、第2の通信インターフェイス260を介して、スマートフォン100から制御命令およびストリームデータを受信する。ローカル通信受信部211は、制御命令を第4のサービス受信部214または出力制御部215に受け渡し、ストリームデータを順次出力制御部215に受け渡す。
【0070】
第4のサービス受信部214は、ユーザからの命令に応じて、または、スマートフォン100からの制御命令に応じて、第1の通信インターフェイス250を介して、第4の通信プロトコルに従って、ストリームデータを取得する。第4のサービス受信部214は、受信したストリームデータを順次出力制御部215に受け渡す。
【0071】
出力制御部215は、現在第1の通信インターフェイス250を介して、スマートフォン100を介さずに受信しているストリームデータに基づいて、A/V出力部を介してコンテンツを出力する。出力制御部215は、現在第2の通信インターフェイス250を介してスマートフォン100から受信しているストリームデータに基づいて、A/V出力部を介してコンテンツを出力する。
【0072】
<テレビ300のハードウェア構成>
次に、テレビ300のハードウェア構成について説明する。
図7は、本実施の形態に係るテレビ300のハードウェア構成を示すブロック図である。
【0073】
図7を参照して、テレビ300は、CPU310と、ディスプレイ321と、メモリ330と、メモリインターフェイス340と、第1の通信インターフェイス350と、第2の通信インターフェイス360と、スピーカ370と、ボタン380とを含む。
【0074】
ディスプレイ321は、CPU310からの命令(信号)に基づいて、文字および/または画像を表示する。CPU310は、受信したストリームデータに基づいて、ディスプレイ321に画像および/またはテキストを表示させる。また、CPU310は、制御プログラムに基づいて、ディスプレイ321に各種のソフトウェアボタンを表示させたりする。
【0075】
メモリ330は、各種のRAM、ROMおよび/またはハードディスクなどによって実現される。メモリ330は、CPU310によって実行される制御プログラムとその他のデータとを記憶する。
【0076】
メモリインターフェイス340は、外部の記憶媒体341からデータを読み出す。換言すれば、CPU310は、メモリインターフェイス340を介して外部の記憶媒体341に格納されているデータを読み出して、当該データをメモリ330に格納する。逆に、CPU310は、メモリ330からデータを読み出して、メモリインターフェイス340を介して当該データを外部の記憶媒体341に格納する。
【0077】
なお、記憶媒体341としては、スマートフォン100の記憶媒体141と同様であるため、ここでは説明を繰り返さない。
【0078】
第1の通信インターフェイス350は、アンテナおよび/またはコネクタによって実現される。第1の通信インターフェイス350は、インターネットなどのネットワークを介してコンテンツサーバ400およびルータ500などの他の装置との間でデータをやり取りする。換言すれば、CPU310は、第1の通信インターフェイス350を介して、他の装置からプログラム、音声データ、画像データ、テキストデータなどを受信したり、他の装置にデータを送信したりする。
【0079】
第2の通信インターフェイス360は、アンテナおよび/またはコネクタによって実現される。第2の通信インターフェイス360は、無線LAN等のネットワーク又はbluetooth(登録商標)などの近距離用の通信方式を利用してスマートフォン100およびスピーカ200などの他の装置との間でデータをやり取りする。換言すれば、CPU310は、第2の通信インターフェイス360を介して、他の装置からプログラム、音声データ、画像データ、テキストデータなどを受信したり、他の装置にデータを送信したりする。
【0080】
スピーカ370は、CPU310からの信号に基づいて、音声を出力する。すなわち、CPU310は、受信したストリームデータに基づいて、スピーカ370に音声を出力させる。
【0081】
ボタン380は、テレビ300の表面に配置される。テレビ300には、電源キー、ホームキー、文字キー、テンキー、十字キー、決定キーなどの複数のボタンが配置されても良い。ボタン380は、ユーザから命令を受け付ける。ボタン380は、ユーザからの命令をCPU310に入力する。
【0082】
CPU310は、メモリ330あるいは記憶媒体341に記憶されている制御プログラムを実行することによって、テレビ300の各部を制御する。
【0083】
<テレビ300の機能構成>
次に、テレビ300の機能構成について説明する。
図8は、本実施の形態に係るテレビ300の機能構成を示すブロック図である。ここでは、本実施の形態に係るテレビ300が、第1〜第3のコンテンツ配信サービスに対応していない場合について説明する。例えば、本実施の形態に係るテレビ300が、第1〜第3の通信プロトコルに対応していない場合について説明する。
【0084】
図8を参照して、CPU310は、メモリ330に記憶されているアプリケーションプログラムを実行することによって、ローカル通信受信部311と、第4のサービス受信部314と、出力制御部315とを実現する。また、ディスプレイ321およびスピーカ370が、A/V出力部を実現する。
【0085】
ローカル通信受信部311は、第2の通信インターフェイス360を介して、スマートフォン100から制御命令およびストリームデータを受信する。ローカル通信受信部311は、制御命令を第4のサービス受信部314または出力制御部315に受け渡し、ストリームデータを順次出力制御部315に受け渡す。
【0086】
第4のサービス受信部314は、ユーザからの命令に応じて、または、スマートフォン100からの制御命令に応じて、第1の通信インターフェイス350を介して、第4の通信プロトコルに従って、ストリームデータを取得する。第4のサービス受信部314は、受信したストリームデータを順次出力制御部315に受け渡す。
【0087】
出力制御部315は、現在第1の通信インターフェイス350を介して、スマートフォン100を介さずに受信しているストリームデータに基づいて、A/V出力部を介してコンテンツを出力する。出力制御部315は、現在第2の通信インターフェイス350を介してスマートフォン100から受信しているストリームデータに基づいて、A/V出力部を介してコンテンツを出力する。
【0088】
<ネットワークシステム1におけるデータの流れ>
次に、本実施の形態に係るネットワークシステム1におけるデータの流れについて説明する。以下では、スマートフォン100がコンテンツを出力する場合のデータの流れと、据置端末が通信プロトコルに対応していない場合のデータの流れと、据置端末が通信プロトコルに対応している場合のデータの流れとについて説明する。そして、スピーカ200またはテレビ300を据置端末と総称する。
【0089】
図9は、本実施の形態に係るスマートフォン100がコンテンツを出力する場合のデータの流れを示すシーケンス図である。
【0090】
図9を参照して、スマートフォン100は、ユーザからの命令に基づいて、コンテンツサーバ400に通信接続する。コンテンツサーバ400は、スマートフォン100にログイン情報を要求する。スマートフォン100は、コンテンツサーバ400にログイン情報を送信する。スマートフォン100は、コンテンツサーバ400にストリームリストを要求する。ここで、ストリームリストとは、コンテンツサーバ400からダウンロード可能なストリームデータのリストをいう。コンテンツサーバ400は、スマートフォン100にストリームリストを送信する。
【0091】
スマートフォン100は、ユーザからのストリームデータを選択するための命令を受け付ける。スマートフォン100は、当該命令に基づいてストリームデータを指定する情報をコンテンツサーバ400に送信する。コンテンツサーバ400は、当該情報に基づいて、指定されたストリームデータをスマートフォン100に送信する。スマートフォン100は、受信したストリームデータに基づいて、順次コンテンツを出力する。
【0092】
図10は、本実施の形態に係る据置端末が通信プロトコルに対応していない場合のデータの流れを示すシーケンス図である。
【0093】
図10を参照して、スマートフォン100は、ユーザからの命令に基づいて、コンテンツサーバ400からストリームデータをダウンロードする。スマートフォン100は、受信したストリームデータに基づいて、順次コンテンツを出力する。
【0094】
スマートフォン100は、ユーザから出力画面を切り替えるための命令を受け付けると、近距離用の通信方式に基づいて据置端末に機器情報を要求する。据置端末は、機器情報をスマートフォン100に送信する。たとえば、据置端末は、対応可能な通信プロトコルをスマートフォン100に送信する。
【0095】
スマートフォン100は、受信した機器情報に基づいて、現在ストリームデータをダウンロードするのに利用している通信プロトコルに据置端末が対応しているか否かを判断する。通信プロトコルに据置端末が対応していない場合、スマートフォン100は、現在再生されているコンテンツの位置を示す情報(たとえば、コンテンツの開始からの経過時間を示す情報)とコンテンツの再生命令とを据置端末に送信する。スマートフォン100は、自身がダウンロードしたストリームデータを据置端末に送信する。これによって、据置端末が、スマートフォン100から受信したストリームデータに従って、コンテンツを出力する。
【0096】
図11は、本実施の形態に係る据置端末が通信プロトコルに対応している場合のデータの流れを示すシーケンス図である。
【0097】
図11を参照して、スマートフォン100は、ユーザからの命令に基づいて、コンテンツサーバ400からストリームデータをダウンロードする。スマートフォン100は、受信したストリームデータに基づいて、順次コンテンツを出力する。
【0098】
スマートフォン100は、ユーザから出力画面を切り替えるための命令を受け付けると、近距離用の通信方式に基づいて据置端末に機器情報を要求する。据置端末は、機器情報をスマートフォン100に送信する。たとえば、据置端末は、対応可能な通信プロトコルをスマートフォン100に送信する。
【0099】
スマートフォン100は、受信した機器情報に基づいて、現在ストリームデータをダウンロードするのに利用している通信プロトコルに据置端末が対応しているか否かを判断する。通信プロトコルに据置端末が対応している場合、スマートフォン100は、現在再生されているコンテンツを特定するための情報とコンテンツの再生位置を示す情報(たとえば、コンテンツの開始からの経過時間を示す情報)とコンテンツサーバにログインするための情報とを据置端末に送信する。スマートフォン100は、ネットワークを介してサービスからログアウトして、ストリームデータのダウンロードを終了する。スマートフォン100は、コンテンツの再生命令を据置端末に送信する。
【0100】
据置端末は、ネットワークを介して(ルータ500を介して)、コンテンツサーバに通信接続する。コンテンツサーバ400は、据置端末にログイン情報を要求する。コンテンツサーバ400は、据置端末にログイン情報を送信する。据置端末は、コンテンツサーバ400にコンテンツを特定するための情報とコンテンツの再生位置を示す情報とをコンテンツサーバ400に送信する。コンテンツサーバ400は、当該情報に基づいて、指定されたストリームデータを据置端末に送信する。据置端末は、受信したストリームデータに基づいて、スマートフォン100から指定された再生位置から順次コンテンツを出力する。
【0101】
<スマートフォン100における処理>
次に、スマートフォン100における処理について説明する。
図12は、本実施の形態に係るスマートフォン100における処理を示すフローチャートである。
【0102】
図12を参照して、スマートフォン100のCPU110は、タッチパネル120またはボタン180を介して、ユーザからコンテンツをダウンロードするためのページを表示するための命令を受け付けると以下の処理を実行する。CPU110は、第1の通信インターフェイス150を介して、コンテンツサーバ400にサービス画面を要求する。CPU110は、ダウンロードしたデータに基づいて、ディスプレイ121にログイン情報を入力するための画面を表示させる。
【0103】
CPU110は、タッチパネル120またはボタン180を介して、ログイン情報を受け付ける。または、CPU110は、メモリ130に記憶されているログイン情報を読み出す。CPU110は、第1の通信インターフェイス150を介して、サービスにログインする(ステップS102)。CPU110は、第1の通信インターフェイス150を介して、コンテンツサーバ400からストリームリストを受信する(ステップS104)。ストリームリストは、配信可能なストリームデータの各々を特定するための情報のリストである。
【0104】
CPU110は、タッチパネル120またはボタン180を介して、ユーザからストリームデータを選択するための命令を受け付ける(ステップS106)。CPU110は、第1の通信インターフェイス150を介してコンテンツサーバ400からストリームデータを受信する。CPU110は、ストリームデータに基づいて、スピーカ170またはディスプレイ121に順次コンテンツを出力させる(ステップS108)。
【0105】
CPU110は、コンテンツの再生中、タッチパネル120またはボタン180を介して、ユーザから出力部を切り替えるための切り替え命令を待ち受ける(ステップS110)。CPU110は、切り替え命令を受け付けなかった場合(ステップS110にてNOである場合)、タッチパネル120またはボタン180を介して、ユーザから再生を停止するための停止命令を待ち受ける(ステップS112)。
【0106】
CPU110は、停止命令を受け付けなかった場合(ステップS112にてNOである場合)、ステップS108からの処理を繰り返す。CPU110は、停止命令を受け付けた場合(ステップS112にてYESである場合)、コンテンツの再生処理を終了する。
【0107】
CPU110は、切り替え命令を受け付けた場合(ステップS110にてYESである場合)、第2の通信インターフェイス160を介して据置端末から機器情報を取得する(ステップS114)。CPU110は、機器情報に基づいて、据置端末が現在スマートフォン100がダウンロードのために利用している通信プロトコルに対応しているか否かを判断する(ステップS116)。
【0108】
CPU110は、据置端末が現在スマートフォン100がダウンロードのために利用している通信プロトコルに対応している場合(ステップS116にてYESである場合)、第2の通信インターフェイス160を介してストリームデータの特定情報及び現在の再生箇所を据置端末に送信する(ステップS132)。
【0109】
CPU110は、第2の通信インターフェイス160を介して据置端末にログイン情報を送信する(ステップS134)。CPU110は、第1の通信インターフェイス150を介して、サービスからログアウトする(ステップS136)。CPU110は、コンテンツの再生を停止する。CPU110は、第2の通信インターフェイス160を介して、据置端末に再生開始命令を送信する(ステップS138)。据置端末は、ログイン情報に基づいてサービスにログインし、コンテンツサーバ400からスマートフォン100を介さずにストリームデータを受信する。据置端末は、ストリームデータに基づいて、スマートフォン100からの再生箇所から順次コンテンツを出力する。
【0110】
CPU110は、据置端末が現在スマートフォン100がダウンロードのために利用している通信プロトコルに対応していない場合(ステップS116にてNOである場合)、第2の通信インターフェイス160を介して、据置端末にストリームデータの現在の再生箇所を送信する(ステップS142)。CPU110は、コンテンツの再生を停止する(ステップS144)。CPU110は、第2の通信インターフェイス160を介して据置端末に再生開始命令を送信する(ステップS146)。CPU110は、第1の通信インターフェイス150を介してダウンロードしたストリームデータを、第2の通信インターフェイス160を介して順次据置端末に送信する(ステップS148)。据置端末は、スマートフォン100からストリームデータを受信する。据置端末は、ストリームデータに基づいて、スマートフォン100からの再生箇所から順次コンテンツを出力する。
【0111】
<切り替え動作の変形例>
上記の実施の形態の変形例として、ネットワークシステム1またはスマートフォン100は、曲が切り替わるタイミング、セクションが切り替わるタイミング、またはシーンが切り替わるタイミングにおいて、コンテンツを出力する出力部を切り替えてもよい。あるいは、ネットワークシステム1またはスマートフォン100は、スマートフォン100の電池残量に基づいて、出力部を切り替えてもよい。
【0112】
以下、スマートフォン100における処理の変形例について説明する。
図13は、本実施の形態に係るスマートフォン100における処理の変形例を示す第1のフローチャートである。
図14は、本実施の形態に係るスマートフォン100における処理の変形例を示す第2のフローチャートである。
【0113】
図13および
図14を参照して、スマートフォン100のCPU110は、タッチパネル120またはボタン180を介して、ユーザからコンテンツをダウンロードするためのページを表示するための命令を受け付けると以下の処理を実行する。CPU110は、第1の通信インターフェイス150を介して、コンテンツサーバ400にサービス画面を要求する。CPU110は、ダウンロードしたデータに基づいて、ディスプレイ121にログイン情報を入力するための画面を表示させる。
【0114】
CPU110は、タッチパネル120またはボタン180を介して、ログイン情報を受け付ける。または、CPU110は、メモリ130に記憶されているログイン情報を読み出す。CPU110は、第1の通信インターフェイス150を介して、サービスにログインする(ステップS202)。CPU110は、第1の通信インターフェイス150を介して、コンテンツサーバ400からストリームリストを受信する(ステップS204)。ストリームリストは、配信可能なストリームデータの各々を特定するための情報のリストである。
【0115】
CPU110は、タッチパネル120またはボタン180を介して、ユーザからストリームデータを選択するための命令を受け付ける(ステップS206)。CPU110は、第1の通信インターフェイス150を介してコンテンツサーバ400からストリームデータを受信する。CPU110は、ストリームデータに基づいて、スピーカ170またはディスプレイ121に順次コンテンツを出力させる(ステップS208)。
【0116】
CPU110は、タッチパネル120またはボタン180を介して、ユーザから操作を受け付けたか否かを判断する(ステップS210)。CPU110は、ユーザから操作を受け付けた場合(ステップS210にてYESである場合)、ディスプレイ121に切り替えボタンを表示させる(ステップS212)。
【0117】
CPU110は、タッチパネル120またはボタン180を介して、ユーザから切り替え命令を受け付けたか否かを判断する(ステップS214)。CPU110は、ユーザから切り替え命令を受け付けなかった場合(ステップS214にてNOである場合)、ステップS208からの処理を繰り返す。このとき、CPU110は、所定の時間が経過後に切り替えボタンの表示を終了する。CPU110は、ユーザから切り替え命令を受け付けた場合(ステップS214にてYESである場合)、ステップS220からの処理を実行する。
【0118】
CPU110は、ユーザから操作を受け付けなかった場合(ステップS210にてNOである場合)、電池190の残量を取得する。CPU110は、電池190の残量が予め設定された第1のしきい値未満であるか否かを判断する(ステップS216)。
【0119】
CPU110は、電池190の残量が第1のしきい値未満でない場合(ステップS216にてNOである場合)、電池190の残量が第2のしきい値未満であるか否かを判断する(ステップS218)。なお、第2のしきい値は第1のしきい値よりも大きい。
【0120】
CPU110は、電池190の残量が第2のしきい値未満である場合(ステップS218にてYESである場合)、ステップS212からの処理を実行する。CPU110は、電池190の残量が第2のしきい値未満でない場合(ステップS218にてNOである場合)、ステップS208からの処理を繰り返す。
【0121】
CPU110は、電池190の残量が第1のしきい値未満である場合(ステップS216にてYESである場合)、第2の通信インターフェイス160を介して据置端末またはテレビ300から機器情報を取得する(ステップS220)。CPU110は、機器情報に基づいて、据置端末が現在スマートフォン100がダウンロードのために利用している通信プロトコルに対応しているか否かを判断する(ステップS222)。
【0122】
CPU110は、据置端末が現在スマートフォン100がダウンロードのために利用している通信プロトコルに対応している場合(ステップS222にてYESである場合)、第2の通信インターフェイス160を介してストリームデータの再生開始箇所を据置端末に送信する(ステップS232)。ここで、「ストリームデータの再生開始箇所」とは、ストリームデータのうちの現在再生されている曲、セクション、またはシーンの次の曲、セクションまたはシーンを示す情報である。
【0123】
CPU110は、第2の通信インターフェイス160を介して据置端末にログイン情報を送信する(ステップS234)。CPU110は、曲、セクション、またはシーンが終了したときに、第1の通信インターフェイス150を介して、サービスからログアウトする(ステップS236)。CPU110は、コンテンツの再生を停止する。CPU110は、第2の通信インターフェイス160を介して、据置端末に再生開始命令を送信する(ステップS238)。据置端末は、ログイン情報に基づいてサービスにログインし、コンテンツサーバ400からスマートフォン100を介さずにストリームデータを受信する。据置端末は、ストリームデータに基づいて、次の曲、セクション、またはシーンの開始箇所から順次コンテンツを出力する。CPU110は、コンテンツを出力するためのアプリケーションを終了する(ステップS250)。
【0124】
一方、CPU110は、据置端末が現在スマートフォン100がダウンロードのために利用している通信プロトコルに対応していない場合(ステップS222にてNOである場合)、第2の通信インターフェイス160を介して、据置端末に再生開始箇所を送信する(ステップS242)。CPU110は、曲、セクション、またはシーンが終了したときに、コンテンツの再生を停止する(ステップS244)。CPU110は、第2の通信インターフェイス160を介して据置端末に再生開始命令を送信する(ステップS246)。CPU110は、第1の通信インターフェイス150を介してダウンロードしたストリームデータを、次の曲、セクション、またはシーンの開始箇所から、第2の通信インターフェイス160を介して順次据置端末に送信する(ステップS248)。据置端末は、スマートフォン100からストリームデータを受信する。据置端末は、ストリームデータに基づいて、次の曲、セクション、またはシーンの開始箇所から順次コンテンツを出力する。
【0125】
CPU110は、定期的に、第2の通信インターフェイス160を介して、据置端末との通信が可能か否かを判断する(ステップS252)。CPU110は、据置端末との通信が不可能になったときに(ステップS252にてNOである場合)、第1の通信インターフェイス150を介して受信したストリーミングデータに基づいて、据置端末が出力した最終箇所または据置端末に送信した最終箇所から、自身のスピーカ170またはディスプレイ121にコンテンツの出力を再生させる。
【0126】
<その他の実施の形態>
上記の実施の形態においては、スマートフォン100が、スピーカ200またはテレビ300などの据置端末がコンテンツのダウンロードに使用される通信プロトコルに対応しているか否かを判断するものであった。しかしながら、スマートフォン100は、据置端末がダウンロード(又はストリーミング再生)されるコンテンツのデータに対応しているか否かを判断してもよい。この場合には、スマートフォン100が、ダウンロードしたデータを据置端末が対応するデータ形式のデータに変換する処理を実行する。
【0127】
具体的には、
図10を参照して、スマートフォン100がダウンロードしたデータを据置端末に送信する際に、ダウンロードしたデータを据置端末が対応するデータ形式のデータに変換し、変換後のデータを据置端末に送信する。換言すれば、
図12のステップS148および
図14のステップS248において、CPU110が、第1の通信インターフェイス150を介してダウンロードしたデータを据置端末が対応するデータ形式のデータに変換し、第2の通信インターフェイス160を介して変換後のデータを据置端末に送信する。
【0128】
また、本発明は、システムまたは装置にプログラムを供給することによって達成される場合にも適用できることはいうまでもない。そして、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記憶媒体を、システムまたは装置に供給し、そのシステムまたは装置のコンピュータ(またはCPUまたはMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の効果を享受することが可能となる。
【0129】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0130】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現されてもよい。
【0131】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードおよび/またはコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードおよび/または機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現されてもよい。
【0132】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。