説明

情報処理装置、情報処理端末、情報処理システム、情報処理方法、プログラム及び情報記憶媒体

【課題】ストリーム送信に用いられるネットワークの帯域幅の無駄な使用を低減させる。
【解決手段】データ送信部32は、ストリームをクライアント12に送信する。データ受信部30は、クライアント12から送信される、クライアント12の状況に関する通知を受け付ける。データ送信部32は、クライアント12の状況に関する通知をデータ受信部30が受け付けた際に、当該状況に応じてストリームの少なくとも一部のクライアント12への送信を停止する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理端末、情報処理システム、情報処理方法、プログラム及び情報記憶媒体に関する。
【背景技術】
【0002】
動画像や音声等のストリームを送信する技術が存在する。
【発明の概要】
【発明が解決しようとする課題】
【0003】
従来技術では、ユーザの操作が行われること等によって、例えば、ミュート状態になる、スクリーンセーバの実行が開始される、ロック状態となる、などというように、ストリームの送信先の情報処理端末の状況が変化しても、そのことに応じてストリームの送信が変化することはなかった。
【0004】
そのため、例えば、情報処理端末がミュート状態となっていても音声のストリームの送信が継続される、送信される動画像のストリームに基づいて生成される画像が情報処理端末で表示されない状況となっていても動画像のストリームの送信が継続される、などのようにして、ストリームの送信に用いられるネットワークの帯域幅が無駄に使用されてしまうことがあった。
【0005】
本発明は上記課題に鑑みてなされたものであって、その目的の1つは、ストリーム送信に用いられるネットワークの帯域幅の無駄な使用を低減させることにある。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明に係る情報処理装置は、ストリームを情報処理端末に送信するストリーム送信手段と、前記情報処理端末から送信される、前記情報処理端末の状況に関する通知を受け付ける通知受付手段と、を含み、前記ストリーム送信手段は、前記情報処理端末の状況に関する通知を前記通知受付手段が受け付けた際に、当該状況に応じて前記ストリームの少なくとも一部の前記情報処理端末への送信を停止することを特徴とする。
【0007】
また、本発明に係る情報処理端末は、情報処理装置から送信されるストリームを受信するストリーム受信手段と、自端末の状況に関する通知を前記情報処理装置に送信する通知送信手段と、を含み、前記情報処理装置が前記状況に関する通知を受け付けた際に、当該状況に応じて、前記情報処理装置から送信されているストリームの少なくとも一部の送信が停止される、ことを特徴とする。
【0008】
また、本発明に係る情報処理システムは、情報処理装置と、情報処理端末と、を備え、前記情報処理端末は、前記情報処理装置から送信されるストリームを受信するストリーム受信手段と、当該情報処理端末の状況に関する通知を前記情報処理装置に送信する通知送信手段、を含み、前記情報処理装置は、ストリームを情報処理端末に送信するストリーム送信手段と、前記情報処理端末から送信される、前記情報処理端末の状況に関する通知を受け付ける通知受付手段と、を含み、前記ストリーム送信手段は、前記情報処理端末の状況に関する通知を前記通知受付手段が受け付けた際に、当該状況に応じて前記ストリームの少なくとも一部の前記情報処理端末への送信を停止することを特徴とする。
【0009】
また、本発明に係る情報処理方法は、ストリームを情報処理端末に送信するストリーム送信ステップと、前記情報処理端末から送信される、前記情報処理端末の状況に関する通知を受け付ける通知受付ステップと、を含み、前記ストリーム送信ステップでは、前記情報処理端末の状況に関する通知を前記通知受付手段が受け付けた際に、当該状況に応じて前記ストリームの少なくとも一部の前記情報処理端末への送信を停止することを特徴とする。
【0010】
また、本発明に係るプログラムは、ストリームを情報処理端末に送信するストリーム送信手段、前記情報処理端末から送信される、前記情報処理端末の状況に関する通知を受け付ける通知受付手段、としてコンピュータを機能させ、前記ストリーム送信手段は、前記情報処理端末の状況に関する通知を前記通知受付手段が受け付けた際に、当該状況に応じて前記ストリームの少なくとも一部の前記情報処理端末への送信を停止することを特徴とする。
【0011】
また、本発明に係る情報記憶媒体は、ストリームを情報処理端末に送信するストリーム送信手段、前記情報処理端末から送信される、前記情報処理端末の状況に関する通知を受け付ける通知受付手段、としてコンピュータを機能させ、前記ストリーム送信手段は、前記情報処理端末の状況に関する通知を前記通知受付手段が受け付けた際に、当該状況に応じて前記ストリームの少なくとも一部の前記情報処理端末への送信を停止することを特徴とするプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体である。
【0012】
本発明によれば、情報処理端末の状況に応じて、情報処理装置から情報処理端末へ送信されるストリームの少なくとも一部について、送信が停止されるため、ストリーム送信に用いられるネットワークの帯域幅の無駄な使用が低減される。
【0013】
本発明の一態様では、前記ストリーム送信手段は、前記情報処理端末がミュート状態となった際に前記情報処理端末から送信される通知を前記通知受付手段が受け付けた場合に、音声のストリームの前記情報処理端末への送信を停止することを特徴とする。
【0014】
また、本発明の一態様では、前記ストリーム送信手段は、前記情報処理端末がミュート状態となった際に前記情報処理端末から送信される通知を前記通知受付手段が受け付けた場合に、音声のストリームの前記情報処理端末への送信を停止し、動画像のストリームの前記情報処理端末への送信は継続することを特徴とする。
【0015】
また、本発明の一態様では、前記ストリーム送信手段は、前記情報処理端末での出力音量が小さいほど小さくなるよう決定されるビットレートで、音声のストリームを前記情報処理端末へ送信することを特徴とする。
【0016】
また、本発明の一態様では、前記ストリーム送信手段は、前記情報処理端末で音声がモノラル再生で出力される状態となった際に前記情報処理端末から送信される通知を前記通知受付手段が受け付けた場合に、音声のストリームをモノラルで前記情報処理端末に送信することを特徴とする。
【0017】
また、本発明の一態様では、前記ストリーム送信手段は、前記ストリーム送信手段により送信されるストリームに基づいて生成される画像が前記情報処理端末に表示されない状態となった際に前記情報処理端末から送信される通知を前記通知受付手段が受け付けた場合に、ストリームの前記情報処理端末への送信を停止することを特徴とする。
【0018】
また、本発明の一態様では、前記ストリーム送信手段により送信されるストリームに基づいて生成される画像が前記情報処理端末に表示されない状態となった際に前記情報処理端末から送信される通知を前記通知受付手段が受け付けた場合に、前記ストリーム送信手段により送信されるストリームに含まれるコンテンツを生成するプロセスを停止するプロセス停止手段、をさらに含む、ことを特徴とする。
【0019】
また、本発明の一態様では、前記ストリーム送信手段は、ストリームの送信中に、送信するストリームのコンテンツが変化した際に、当該変化に応じて、送信するストリームの品質を変化させることを特徴とする。
【0020】
また、本発明の一態様では、前記ストリーム送信手段は、送信対象となるコンテンツから前記情報処理端末に記憶済であるコンテンツを除外したコンテンツのストリームを前記情報処理端末に送信することを特徴とする。
【図面の簡単な説明】
【0021】
【図1】本発明の一実施形態に係るコンピュータネットワークの全体構成の一例を示す図である。
【図2】本発明の一実施形態に係るクラウドサービスとクライアントとの関係の一例を示す概念図である。
【図3】本発明の一実施形態に係るクラウドサービス及びクライアントで実現される機能の一例を示す機能ブロック図である。
【発明を実施するための形態】
【0022】
以下、本発明の一実施形態について図面に基づき詳細に説明する。
【0023】
図1は、本発明の一実施形態に係るコンピュータネットワークの全体構成の一例を示す図である。図1に示すように、インターネットなどのコンピュータネットワーク14には、いずれもコンピュータを中心に構成されたクラウドサービス10、クライアント12(12−1〜12−n)、が接続されている。そして、クラウドサービス10、クライアント12は、互いに通信可能になっている。本実施形態では、クラウドサービス10は、情報処理装置として機能し、クライアント12は、情報処理端末として機能する。また、本実施形態では、クラウドサービス10及びクライアント12全体として情報処理システムとして機能する。
【0024】
クライアント12は、クラウドサービス10のユーザが利用するコンピュータであり、例えば、パーソナルコンピュータ、ゲームコンソール、テレビ受像機、携帯型ゲーム装置、携帯情報端末、などである。そして、クライアント12は、例えば、CPU等の制御部、ROMやRAM等の記憶素子やハードディスクドライブ等の記憶部、ディスプレイ、スピーカ等の出力部、ゲームコントローラ、タッチパッド、マウス、キーボード、マイク等の入力部、ネットワークボード等の通信部、等を備えている。
【0025】
また、本実施形態に係るクライアント12は、ウェブブラウザ及びクライアントプログラムが予めインストールされており、これらのアプリケーションプログラムが実行される。
【0026】
クラウドサービス10は、例えば、分散コンピューティング環境であり、互いに通信可能に接続されている複数台のWebアプリケーションサーバ、複数台のデータベースサーバ、複数台のストレージデバイス、などを含んで構成されている。クラウドサービス10に含まれるサーバは、例えば、CPU等の制御部、ROMやRAM等の記憶素子やハードディスクドライブなどである記憶部、ネットワークボードなどの通信インタフェースである通信部、を含んで構成されている。これらの要素は、バスを介して接続される。
【0027】
クラウドサービス10を利用するクライアント12は、クラウドサービス10内に存在するサーバやストレージデバイスなどのリソースの所在を特に意識することなく、クラウドサービス10が提供する各種サービスを利用することができる。
【0028】
本実施形態では、クライアント12が、ウェブブラウザを通じてクラウドサービス10にアクセスし、ユーザID及びパスワードを入力してから、その後に所定のURLにアクセスすると、クライアント12のディスプレイに所定のURLに対応する画面が表示される。なお、ユーザID及びパスワードを入力した後は、クラウドサービス10は、例えば、セッションIDを参照することによりクライアント12を利用するユーザのユーザIDを特定することができるようになっている。
【0029】
本実施形態では、例えば、クライアント12から、ゲームのプレイの実行の開始要求がクラウドサービス10に送信されると、クラウドサービス10はそのゲームの実行を開始する。そして、このゲームが実行されている間、クラウドサービス10は、このゲームのプレイ内容を表す、エンコードされた音声付動画像のデータをクライアント12にストリーム送信する。そして、クライアント12は、この音声付動画像のデータを受信し、デコードし、デコードされた動画像のフレーム画像が配置されたゲーム画面を生成して、クライアント12のディスプレイ等に表示出力するともに、受信した音声のデータを音に変換してクライアント12のスピーカ等から出力する。また、本実施形態では、例えば、ユーザが、クライアント12が備えるゲームコントローラやボタンを操作することで、スピーカ等からの出力音量をクライアント12側で調整(変更)できるようになっている。そして、本実施形態では、クラウドサービス10からクライアント12に送信される音声のデータは、原則として(例えば、後述のようにして、クラウドサービス10が、クライアント12から受信するイベント対応データに応じた、クラウドサービス10からクライアント12に送信されるストリームの制御を行わない限りにおいては)、クライアント12側で調整される出力音量には関わらない。
【0030】
本実施形態では、各ユーザは、クラウドサービス10から送信された動画像を見ながら、ゲームコントローラのボタンを押下するなどしてゲームを楽しむことができる。本実施形態では、各ユーザは、ゲームコントローラのボタンを押下するなどの、キー入力を行うことにより、ゲームにおけるプレイヤオブジェクトの移動等の操作を行うことができる。
【0031】
図2は、本実施形態に係るクラウドサービス10とクライアント12との関係の一例を示す概念図である。本実施形態に係るクラウドサービス10では、例えば、管理プロセス20、サービス提供プロセス22、エミュレータ24が実行される。また、クラウドサービス10に含まれるストレージデバイス等の記憶部には、予め、CD−ROM等の情報記憶媒体のイメージファイル(ディスクイメージ)が記憶されている。このイメージファイルには、例えば、ゲームプログラム、画像、音声のデータ等、が含まれる。
【0032】
サービス提供プロセス22は、例えば、クラウドサービス10に含まれるサーバが、ショッピングサイトやSNS(Social Networking Service)等、クラウドサービス10が提供する種々のサービスを実現するプログラムを起動することで生成されるプロセスである。
【0033】
管理プロセス20は、例えば、クラウドサービス10に含まれるサーバが、クラウドサービス10に含まれるサーバやストレージデバイスにインストールされている管理プログラムを起動することで生成されるプロセスであり、エミュレータ24の所在管理処理、エミュレータ24の起動処理及び停止処理、クライアント12からの要求に応じたクライアント12とエミュレータ24との接続処理及び切断処理、などを実行する。
【0034】
エミュレータ24は、例えば、クラウドサービス10に含まれるサーバやストレージデバイスに記憶されているゲームプログラムを実行するための仮想マシンとして機能するプロセスである。エミュレータ24は、管理プロセス20が、クライアント12からの要求に応じて、クラウドサービス10に含まれるサーバやストレージデバイスにインストールされているエミュレータプログラムを起動することにより生成される。そして、管理プロセス20は、クライアント12からの要求に応じて、クライアント12により指定されたゲームプログラムのイメージファイルを読み込み、エミュレータ24にロードする。このことによって、エミュレータ24上でゲームプログラムが実行されることとなる。なお、エミュレータ24が、クライアント12により指定されたゲームプログラムを自プロセスにロードするようにしてもよい。
【0035】
また、エミュレータ24は、例えば、クライアント12や管理プロセス20からの要求に応じて、エミュレータ24が管理しているエミュレートされたメモリイメージやレジスタ(例えば、プログラムカウンタ等)、エミュレータ24上で動作するゲームプログラムによる入出力アクセスログ、エミュレータ24上で実行されるCPU命令やGPU命令のログなどを出力する。
【0036】
本実施形態では、図2に示すように、1つのエミュレータ24を1つのクライアント12が専有することができる(ゲームプログラムP1参照)。また、1つのエミュレータ24に対して複数のクライアント12が接続可能となっている(ゲームプログラムP2参照)。また、1つのエミュレータ24上で複数のゲームプログラムが実行可能となっている(ゲームプログラムP3、P4参照)。
【0037】
また、本実施形態では、各クライアント12には、エミュレータプログラムがインストールされている。そして、管理プロセス20は、クライアント12からの要求に応じて、クライアント12にエミュレータ24の起動指示や停止指示を出力する。クライアント12は、管理プロセス20から受け付ける起動指示に応じて、クライアント12にインストールされているエミュレータプログラムを起動する。また、クライアント12は、管理プロセス20から受け付ける停止指示に応じて、実行中のエミュレータ24を停止する。そして、クライアント12に記憶されているゲームプログラムをクライアント12で実行されているエミュレータ24で実行することもできるようになっている(ゲームプログラムP5参照)。また、クライアント12で実行されているエミュレータ24に対して他のクライアント12から接続できるようになっている(ゲームプログラムP6参照)。
【0038】
また、本実施形態では、図2に示すように、1つのクライアント12が複数のエミュレータ24に接続することもできる(ゲームプログラムP7、P8参照)。
【0039】
図3は、本実施形態に係るクラウドサービス10及びクライアント12で実現される機能の一例を示す機能ブロック図である。なお、図3には、以下の説明と特に関係がある機能が示されているにすぎず、本実施形態に係るクラウドサービス10やクライアント12では、図3に示す機能以外の機能も実現されている。
【0040】
図3に示すように、本実施形態に係るクラウドサービス10は、機能的には、例えば、データ受信部30、データ送信部32、エミュレータ管理部34、ゲーム実行部36、送信制御部38、を含んでいる。データ受信部30、データ送信部32は、クラウドサービス10が備えるネットワークボードなどの通信インタフェースを主として実現される。また、ゲーム実行部36は、例えば、エミュレータ24で実現される機能に対応する。その他の要素は、例えば、管理プロセス20で実現される機能に対応する。
【0041】
また、図3に示すように、本実施形態に係るクライアント12は、機能的には、例えば、データ受信部40、データ送信部42、デコード部44、データ出力部46、状況監視部48、を含んで構成される。データ受信部40、データ送信部42は、クライアント12が備えるネットワークボードなどの通信インタフェースを主として実現される。状況監視部48、デコード部44は、クライアント12が備えるCPU等の制御部を主として実現される。データ出力部46は、クライアント12が備えるディスプレイやスピーカなどの出力部を主として実現される。
【0042】
クラウドサービス10は、上述のようにコンピュータを中心に構成されており、プログラムを実行することにより、図3においてクラウドサービス10が担う各機能要素が実現されるようになっている。また、このプログラムは、例えば、CD−ROM、DVD−ROMなどのコンピュータ読み取り可能な情報記憶媒体を介して、あるいは、インターネットなどの通信ネットワークを介してクラウドサービス10に供給される。また、クライアント12も、上述のようにコンピュータを中心に構成されており、上述のクライアントプログラムを実行することにより、図3においてクライアント12が担う各機能要素が実現されるようになっている。また、このプログラムは、例えば、CD−ROM、DVD−ROMなどのコンピュータ読み取り可能な情報記憶媒体を介して、あるいは、インターネットなどの通信ネットワークを介してクライアント12に供給される。
【0043】
エミュレータ管理部34は、本実施形態では、例えば、クライアント12からの要求に応じてエミュレータ24を起動したり停止したりする。また、エミュレータ管理部34は、クライアント12からの要求に応じた、クライアント12とエミュレータ24との接続処理及び切断処理を実行する。また、エミュレータ管理部34は、起動したエミュレータ24へのゲームプログラムのイメージファイルのロードも行う。また、エミュレータ管理部34は、エミュレータ24の所在管理処理も実行する。
【0044】
本実施形態では、例えば、クライアントのデータ送信部42が、クラウドサービス10に、ゲームの実行の開始要求を送信する。すると、クラウドサービス10のデータ受信部30が、実行要求を受信する。
【0045】
そして、クラウドサービス10のエミュレータ管理部34は、エミュレータ24を起動し、起動したエミュレータ24にプレイされる対象となるゲームのイメージファイルをロードする。そして、エミュレータ管理部34は、起動したエミュレータ24と、ゲームの実行の開始要求の送信元のクライアント12と、を接続する。そして、ゲーム実行部36が、ロードされたゲームの実行を開始する。
【0046】
そして、本実施形態では、ゲームの実行中に、クライアント12がユーザによるボタンの押下などのキー入力を受け付けた際に、クライアント12のデータ送信部42が、入力に応じたキー情報(例えば、押下されたボタンの種別を示す信号)を、クラウドサービス10に送信する。そして、クラウドサービス10のデータ受信部30は、このキー情報を受信する。
【0047】
そして、本実施形態では、ゲームの開始以降、所定のゲーム更新時間毎(例えば、1/60秒毎)に、クラウドサービス10のゲーム実行部36が、クラウドサービス10のデータ受信部30により受信されたキー情報の取得を行う。そして、キー情報の取得が終わると、ゲーム実行部36は、取得したキー情報などに応じた、ゲームの状況を示すゲーム状況データの更新を行う。そして、ゲーム状況の更新が行われると、ゲーム実行部36は、更新後のゲーム状況データ(例えば、更新後のオブジェクト群の位置や向きを示すゲーム状況データ)に基づいて、ゲームのプレイ内容を表すフレーム画像を生成する。また、ゲーム実行部36は、ゲーム状況が更新されたことによって、ゲームのBGMや効果音等の音声を再生するイベントが発生したと判定された場合には、再生の対象となるBGMや効果音等の音声(例えば、音声ファイルとして記憶部に記憶されている音声)を再生する。
【0048】
そして、本実施形態では、クラウドサービス10の送信制御部38が、所定のデータ送信間隔(例えば、1/60秒間隔)で、未送信のフレーム画像と未送信の音声のデータとに基づいて、エンコードされたコンテンツのストリームのパケットを生成する。クラウドサービス10の送信制御部38は、本実施形態では、例えば、エンコードされた音声付動画像のストリームのパケットを生成する。なお、このパケットには、生成時刻順に順序づけられている識別子が関連づけられている。そして、クラウドサービス10のデータ送信部32が、当該パケットをクライアント12に送信する。
【0049】
そして、本実施形態では、クライアント12のデータ受信部40は、クラウドサービス10から順次送信されるストリームのパケットを受信する。
【0050】
そして、クライアント12のデコード部44が、クラウドサービス10から受信したストリームのパケットをデコードする。そして、データ出力部46が、デコードされたストリームのパケットからフレーム画像を抽出してディスプレイ等に表示出力するとともに、デコードされたストリームのパケットから音声のデータを抽出して、当該データを音に変換してスピーカ等から出力する。
【0051】
本実施形態では、クライアント12の状況監視部48は、ゲームの実行中におけるクライアント12の状況を監視して、予め定められたイベントの発生を検出する。状況監視部48は、具体的には、例えば、スピーカ等から出力される音の音量、スピーカ等から音がモノラル再生で出力されるかステレオ再生で出力されるか、クラウドサービス10から送信される動画像がディスプレイに表示されているか否か、スクリーンセーバが実行されているか否か、ロック状態となっているか否か、などを監視する。なお、本実施形態では、スピーカ等から出力される音の音量は、0〜100までのいずれかの数値で管理されており、当該数値が大きいほど音量が大きいことを表しており、音量0がミュート状態を表していることとする。
【0052】
そして、本実施形態では、状況監視部48によって、予め定められたイベントの発生が検出された際に、クライアント12のデータ送信部42が、イベントの発生が検出された際のクライアント12の状況に関する通知を、クラウドサービス10に送信する。そして、クラウドサービス10のデータ受信部30が、クライアント12の状況に関する通知を受け付ける。本処理例では、クライアント12のデータ送信部42は、発生したイベントに応じたデータ(以下、イベント対応データと呼ぶ。)を、クラウドサービス10に送信し、クラウドサービス10のデータ受信部30が、イベント対応データを受信する。
【0053】
そして、送信制御部38が、クラウドサービス10のデータ受信部30によって受信されたイベント対応データに応じて、ストリームのパケットの生成内容を制御する。
【0054】
このようにして、本実施形態では、クライアント12の状況の変化に応じて、クラウドサービス10からクライアント12に送信されるストリームが変化することとなる。
【0055】
以下、本実施形態における送信されるストリームの制御の具体例について説明する。
【0056】
例えば、クライアント12でスピーカ等から出力される音の音量が変更されたことが検出された際には、クライアント12は、変更後の音量を示す値に関連づけられた、音量が変更されたことを示すイベント対応データをクラウドサービス10に送信する。そして、送信制御部38は、イベント対応データに関連づけられている値が0である場合には、ストリームのパケットを生成するにあたって、ストリームのパケットに音声のデータが含まれないよう(すなわち、フレーム画像のみが含まれるパケットを生成するよう)制御する。そして、クラウドサービス10のデータ送信部32からは、音声が含まれないストリームのパケットが送信されることとなる。このようにして、本実施形態では、クライアント12がミュート状態である場合には、クラウドサービス10からクライアント12に送信されるパケットに音声が含まれないこととなる。なお、本実施形態では、クライアント12は、クラウドサービス10から受信するパケットに音声が含まれていなくても、当該パケットを正常に処理することができるようになっている。
【0057】
また、本実施形態では、変更後の音量を示す値に関連づけられた、音量が変更されたことを示すイベント対応データがクライアント12からクラウドサービス10に送信された場合に、送信制御部38は、イベント対応データに関連づけられている値が所定値未満(例えば、10未満)である場合には、送信される音声のデータのビットレートが、帯域節約時のビットレートとして予め設定されているビットレートとなる(例えば、音量が10以上である場合(以下、平常時と呼ぶ。)の1/5のビットレートとなる)よう制御する。そして、クラウドサービス10のデータ送信部32からは、帯域節約時のビットレートで音声のストリームがクライアント12に送信されることとなる。
【0058】
また、本実施形態では、変更後の音量を示す値に関連づけられた、音量が変更されたことを示すイベント対応データがクライアント12からクラウドサービス10に送信された場合に、送信制御部38は、イベント対応データに関連づけられている値が所定値以上(例えば、10以上)である場合には、送信される音声のデータのビットレートが、を平常時のビットレートとして予め定められているビットレートとなるよう制御する。そして、クラウドサービス10のデータ送信部32からは、平常時のビットレートで音声のストリームがクライアント12に送信されることとなる。
【0059】
また、本実施形態では、クライアント12でスピーカ等から出力される音がステレオ再生からモノラル再生に変更されたことが検出された際には、クライアント12は、モノラル再生に変更されたことを示すイベント対応データをクラウドサービス10に送信する。そして、送信制御部38は、送信されるストリームに含まれる音声のデータがモノラル音声のデータとなるよう制御する。そして、クラウドサービス10のデータ送信部32からは、モノラルの音声のストリームが送信されることとなる。
【0060】
また、本実施形態では、クライアント12で、例えば、スクリーンセーバの実行が開始されたこと、あるいは、ロック状態となったことが検出された際には、クライアント12は、ストリームに基づいて生成される画像がクライアント12に表示されない状態となったことを示すイベント対応データをクラウドサービス10に送信する。そして、送信制御部38は、ストリーム送信が停止されるよう制御する。そして、クラウドサービス10のデータ送信部32は、クライアント12へのストリーム送信を停止する。
【0061】
また、本実施形態では、クライアント12で、例えば、スクリーンセーバの実行が終了されたこと、あるいは、ロック状態が解除されたことが検出された際には、クライアント12は、ストリームに基づいて生成される画像がクライアント12に表示される状態となったことを示すイベント対応データをクラウドサービス10に送信する。そして、送信制御部38は、ストリーム送信が再開されるよう制御する。そして、クラウドサービス10のデータ送信部32は、クライアント12へのストリーム送信を再開する。
【0062】
以上のようにして、本実施形態では、クライアント12の状況に応じて、クラウドサービス10からクライアント12に送信されるストリームのうちの少なくとも一部について、送信が停止されるため、ストリーム送信に用いられるネットワークの帯域幅の無駄な使用が低減されることとなる。
【0063】
なお、本発明は上述の実施形態に限定されるものではない。
【0064】
例えば、クラウドサービス10は、クライアント12へのストリームの送信中に、送信するストリームのコンテンツが変化した際に、当該変化に応じて、送信するストリームの品質を変化させるようにしてもよい。
【0065】
具体的には、例えば、受け付けるキー情報等に基づいて更新されるゲーム状況データに基づく動画像ではなく、回想シーンなどのムービーの動画像がクライアント12に送信される状況となった際に、ゲーム実行部36が、上述のゲーム更新時間毎よりも高い頻度でフレーム画像の生成を行うようにしてもよい。そして、ゲーム実行部36が、生成したフレーム画像をクラウドサービス10のバッファメモリに蓄積するようにしてもよい。そして、クラウドサービス10の送信制御部38が、バッファメモリに蓄積された複数のフレーム画像を用いてエンコードやストリームのパケットの生成を行うようにしてもよい。そして、クラウドサービス10のデータ送信部が、このようにして生成されたストリームのパケットをクライアント12に送信するようにしてもよい。
【0066】
あるいは、例えば、回想シーンなどのムービーがクライアント12に送信される状況となった際に、送信制御部38が、予めエンコードされて記憶部に記憶されていた動画像ファイルを送信対象とするよう制御してもよい。そして、クラウドサービス10のデータ送信部32が、予めエンコードされて記憶部に記憶されていた動画像ファイルを、クライアント12にストリーム送信するようにしてもよい。
【0067】
こうすれば、回想シーンなどのムービーがクライアント12に送信される状況などといった、リアルタイムストリーミングの必要性が低い状況となった場合などに、通常のゲームプレイ時よりも高品質で低帯域のストリームがクラウドサービス10からクライアント12に送信されることとなる。
【0068】
また、例えば、あるゲームについて繰り返しプレイされる場合などのように、あるゲームのストリームが複数回クラウドサービス10からクライアント12に送信されるような場合には、ストリームのパケットがクラウドサービス10からクライアント12に送信される前に、クラウドサービス10が、当該パケットに含まれる音声のデータやフレーム画像を、クラウドサービス10の記憶部に記憶するとともに、当該パケットがクラウドサービス10からクライアント12に送信された後に、クライアント12が、当該パケットに含まれる音声のデータやフレーム画像を、クライアント12の記憶部に記憶するようにしてもよい。そして、2回目以降のストリーム送信の際に、クラウドサービス10は、上述のようにしてクラウドサービス10の記憶部に記憶された音声のデータやフレーム画像が存在する場合に、送信対象となるコンテンツから、クラウドサービス10の記憶部に記憶されている音声のデータやフレーム画像などのコンテンツを除外したコンテンツ(すなわち、送信対象となるコンテンツから、クライアント12の記憶部に記憶されている音声のデータやフレーム画像などのコンテンツを除外したコンテンツ)のストリームのパケットを、クライアント12に送信するようにしてもよい。
【0069】
また、例えば、変更後の音量を示す値に関連づけられた、音量が変更されたことを示すイベント対応データがクライアント12からクラウドサービス10に送信された場合に、送信制御部38は、平常時のビットレートとイベント対応データに関連づけられている値の積を100で割った値を算出するようにしてもよい。そして、送信制御部38は、送信される音声のデータのビットレートが、算出された値のビットレートとなるよう制御してもよい。そして、クラウドサービス10のデータ送信部32からは、算出された値のビットレートで音声のストリームがクライアント12に送信されるようにしてもよい。
【0070】
また、例えば、クラウドサービス10が、ストリームに基づいて生成される画像がクライアント12に表示されない状態となったことを示すイベント対応データを受け付けた際に、送信制御部38が、ゲームが実行されているエミュレータ24のプロセスを終了(停止)させるようにしてもよい。そして、その後、クラウドサービス10が、ストリームに基づいて生成される画像がクライアント12に表示される状態となったことを示すイベント対応データを受け付けた際に、送信制御部38が、新たなエミュレータ24のプロセスを起動させて、当該エミュレータ24とクライアント12とを接続するようにしてもよい。
【0071】
また、例えば、送信制御部38によってストリームの送信が停止されるよう制御された際に、ゲーム実行部36が、ゲームを実行しているエミュレータ24が管理しているメモリイメージの内容やレジスタの値を示すスナップショットデータを記憶部に出力するようにしてもよい。そして、ストリームの送信の再開時には、ゲーム実行部36が、記憶部に記憶されていたスナップショットデータを読み出して、ストリームの送信が停止された際のゲームの状況を再現した上で、ストリームの送信を再開するようにしてもよい。また、上述のようにしてエミュレータ24のプロセスが停止される際に、停止する前に、ゲーム実行部36が、上述のスナップショットデータを記憶部に出力するようにしてもよい。そして、その後、クラウドサービス10がストリームに基づいて生成される画像がクライアント12に表示される状態となったことを示すイベント対応データを受け付けて、新たなエミュレータ24のプロセスが起動される際に、当該エミュレータ24のプロセスが、記憶部に記憶されていたスナップショットデータを読み出して、当該スナップショットデータが示す状況からゲームの実行を開始するようにしてもよい。
【0072】
また、音声付動画像のストリームがクラウドサービス10からクライアント12に送信される必要はなく、フレーム画像群のストリームである動画像ストリームと、音声のデータのストリームである音声ストリームと、が互いに異なるストリームとしてクラウドサービス10からクライアント12に送信されるようにしてもよい。この場合に、例えば、クラウドサービス10のデータ受信部30が受け付けたイベント対応データに関連づけられている値が0である場合には、送信制御部38は、音声ストリームのクライアント12への送信を停止して、動画像ストリームだけをクライアント12に送信する制御してもよい。すると、クラウドサービス10のデータ送信部32から、動画像ストリームだけがクライアント12に送信されることとなる。
【0073】
また、ストリームに基づいて生成される画像がクライアント12に表示されない状態となったことを示すイベント対応データがクライアント12からクラウドサービス10に送信される場合は、スクリーンセーバの実行が開始された場合や、クライアント12がロック状態となった場合に限定されない。
【0074】
また、例えば、ユーザが、クライアント12が備えるゲームコントローラやボタン等を操作することによって、スピーカ等からの出力音量を変更する操作を行った際に、クライアント12が、変更後の音量を示す値を示すデータをクラウドサービス10に送信するようにしてもよい。そして、クラウドサービス10が、当該データを受信した際に、変更後の音量に調整された音声のデータが含まれる音声付動画像のデータをクライアント12に送信するようにしてもよい。このように、クラウドサービス10で実行される処理によって、クライアント12のスピーカ等の出力音量が調整されても構わない。このとき、ユーザが、スピーカ等からの音の出力音量をゼロに設定する操作を行った場合には、クラウドサービス10からクライアント12への音声のデータの送信が中止されることとなる。
【0075】
また、本実施形態は、ゲームプログラムの実行に伴い生成される動画像や音声のストリーム送信だけでなく、例えば、クラウドサービス10で実行されるミュージックプレイヤのプログラムの実行に伴い再生される音楽ファイルに含まれる音声のストリーム送信や、クラウドサービス10で実行される動画像プレイヤのプログラムの実行に伴い再生される映画等の音声付動画像のストリーム送信や、放送局から配信されるテレビ番組のストリーム送信などにも応用することができる。
【0076】
また、例えば、クラウドサービス10で実現されている機能が単一のサーバにより実現されていてもよい。また、ゲームプログラムはエミュレータ24上で実行される必要はなく、例えば、クラウドサービス10やクライアント12のシステムソフトウェア(オペレーティングシステム等)上で実行されてもよい。また、クラウドサービス10とクライアント12の役割分担は上述の例には限定されない。
【0077】
また、上記の具体的な文字列や図面中の具体的な文字列は例示であり、これらの文字列には限定されない。
【符号の説明】
【0078】
10 クラウドサービス、12 クライアント、14 コンピュータネットワーク、20 管理プロセス、22 サービス提供プロセス、24 エミュレータ、30 データ受信部、32 データ送信部、34 エミュレータ管理部、36 ゲーム実行部、38 送信制御部、40 データ受信部、42 データ送信部、44 デコード部、46 データ出力部、48 状況監視部。

【特許請求の範囲】
【請求項1】
ストリームを情報処理端末に送信するストリーム送信手段と、
前記情報処理端末から送信される、前記情報処理端末の状況に関する通知を受け付ける通知受付手段と、を含み、
前記ストリーム送信手段は、前記情報処理端末の状況に関する通知を前記通知受付手段が受け付けた際に、当該状況に応じて前記ストリームの少なくとも一部の前記情報処理端末への送信を停止する、
ことを特徴とする情報処理装置。
【請求項2】
前記ストリーム送信手段は、前記情報処理端末がミュート状態となった際に前記情報処理端末から送信される通知を前記通知受付手段が受け付けた場合に、音声のストリームの前記情報処理端末への送信を停止する、
ことを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記ストリーム送信手段は、前記情報処理端末がミュート状態となった際に前記情報処理端末から送信される通知を前記通知受付手段が受け付けた場合に、音声のストリームの前記情報処理端末への送信を停止し、動画像のストリームの前記情報処理端末への送信は継続する、
ことを特徴とする請求項2に記載の情報処理装置。
【請求項4】
前記ストリーム送信手段は、前記情報処理端末での出力音量が小さいほど小さくなるよう決定されるビットレートで、音声のストリームを前記情報処理端末へ送信する、
ことを特徴とする請求項1から3のいずれか一項に記載の情報処理装置。
【請求項5】
前記ストリーム送信手段は、前記情報処理端末で音声がモノラル再生で出力される状態となった際に前記情報処理端末から送信される通知を前記通知受付手段が受け付けた場合に、音声のストリームをモノラルで前記情報処理端末に送信する、
ことを特徴とする請求項1から4のいずれか一項に記載の情報処理装置。
【請求項6】
前記ストリーム送信手段は、前記ストリーム送信手段により送信されるストリームに基づいて生成される画像が前記情報処理端末に表示されない状態となった際に前記情報処理端末から送信される通知を前記通知受付手段が受け付けた場合に、ストリームの前記情報処理端末への送信を停止する、
ことを特徴とする請求項1から5のいずれか一項に記載の情報処理装置。
【請求項7】
前記ストリーム送信手段により送信されるストリームに基づいて生成される画像が前記情報処理端末に表示されない状態となった際に前記情報処理端末から送信される通知を前記通知受付手段が受け付けた場合に、前記ストリーム送信手段により送信されるストリームに含まれるコンテンツを生成するプロセスを停止するプロセス停止手段、をさらに含む、
ことを特徴とする請求項1から5のいずれか一項に記載の情報処理装置。
【請求項8】
前記ストリーム送信手段は、ストリームの送信中に、送信するストリームのコンテンツが変化した際に、当該変化に応じて、送信するストリームの品質を変化させる、
ことを特徴とする請求項1から7のいずれか一項に記載の情報処理装置。
【請求項9】
前記ストリーム送信手段は、送信対象となるコンテンツから前記情報処理端末に記憶済であるコンテンツを除外したコンテンツのストリームを前記情報処理端末に送信する、
ことを特徴とする請求項1から8のいずれか一項に記載の情報処理装置。
【請求項10】
情報処理装置から送信されるストリームを受信するストリーム受信手段と、
自端末の状況に関する通知を前記情報処理装置に送信する通知送信手段と、を含み、
前記情報処理装置が前記状況に関する通知を受け付けた際に、当該状況に応じて、前記情報処理装置から送信されているストリームの少なくとも一部の送信が停止される、
ことを特徴とする情報処理端末。
【請求項11】
情報処理装置と、情報処理端末と、を備え、
前記情報処理端末は、
前記情報処理装置から送信されるストリームを受信するストリーム受信手段と、
当該情報処理端末の状況に関する通知を前記情報処理装置に送信する通知送信手段、を含み、
前記情報処理装置は、
ストリームを情報処理端末に送信するストリーム送信手段と、
前記情報処理端末から送信される、前記情報処理端末の状況に関する通知を受け付ける通知受付手段と、を含み、
前記ストリーム送信手段は、前記情報処理端末の状況に関する通知を前記通知受付手段が受け付けた際に、当該状況に応じて前記ストリームの少なくとも一部の前記情報処理端末への送信を停止する、
ことを特徴とする情報処理システム。
【請求項12】
ストリームを情報処理端末に送信するストリーム送信ステップと、
前記情報処理端末から送信される、前記情報処理端末の状況に関する通知を受け付ける通知受付ステップと、を含み、
前記ストリーム送信ステップでは、前記情報処理端末の状況に関する通知を前記通知受付手段が受け付けた際に、当該状況に応じて前記ストリームの少なくとも一部の前記情報処理端末への送信を停止する、
ことを特徴とする情報処理方法。
【請求項13】
ストリームを情報処理端末に送信するストリーム送信手段、
前記情報処理端末から送信される、前記情報処理端末の状況に関する通知を受け付ける通知受付手段、としてコンピュータを機能させ、
前記ストリーム送信手段は、前記情報処理端末の状況に関する通知を前記通知受付手段が受け付けた際に、当該状況に応じて前記ストリームの少なくとも一部の前記情報処理端末への送信を停止する、
ことを特徴とするプログラム。
【請求項14】
ストリームを情報処理端末に送信するストリーム送信手段、
前記情報処理端末から送信される、前記情報処理端末の状況に関する通知を受け付ける通知受付手段、としてコンピュータを機能させ、
前記ストリーム送信手段は、前記情報処理端末の状況に関する通知を前記通知受付手段が受け付けた際に、当該状況に応じて前記ストリームの少なくとも一部の前記情報処理端末への送信を停止する、
ことを特徴とするプログラムを記憶したコンピュータ読み取り可能な情報記憶媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate


【公開番号】特開2013−110707(P2013−110707A)
【公開日】平成25年6月6日(2013.6.6)
【国際特許分類】
【出願番号】特願2011−256449(P2011−256449)
【出願日】平成23年11月24日(2011.11.24)
【出願人】(310021766)株式会社ソニー・コンピュータエンタテインメント (417)
【Fターム(参考)】