(57)【要約】【課題】複数のユーザ端末を用いてゲームを提供する場合に、ユーザ端末間における出力タイミングのずれを低減する。【解決手段】出力タイミング制御装置は、所定の出力情報を出力する出力部に対して出力情報を供給する出力制御部が、出力部に出力情報を供給するタイミングを示す供給タイミング情報と、出力部によって出力情報が出力される出力タイミングを検出する検出部が、供給タイミング情報が示すタイミングを基準にして検出する検出タイミング情報とを取得する取得部と、取得部が取得した供給タイミング情報と検出タイミング情報とに基づいて供給タイミング情報を算出し、算出した当該供給タイミング情報に基づいて出力制御部に出力情報を供給させる出力タイミング制御部と、を備える。【選択図】図１６
2014109732.tif 000002
【特許請求の範囲】
【請求項１】
所定の出力情報を出力する出力部に対して前記出力情報を供給する出力制御部が、前記出力部に前記出力情報を供給するタイミングを示す供給タイミング情報と、前記出力部によって前記出力情報が出力される出力タイミングを検出する検出部が、前記供給タイミング情報が示すタイミングを基準にして検出する検出タイミング情報とを取得する取得部と、
前記取得部が取得した前記供給タイミング情報と前記検出タイミング情報とに基づいて前記供給タイミング情報を算出し、算出した当該供給タイミング情報に基づいて前記出力制御部に出力情報を供給させる出力タイミング制御部と、
を備えることを特徴とする出力タイミング制御装置。
【請求項２】
前記取得部は、
複数の前記供給タイミング情報と、前記複数の前記供給タイミング情報がそれぞれ示す前記複数のタイミング毎に、前記検出部がそれぞれ検出した前記複数の前記検出タイミング情報を取得し、
前記出力タイミング制御部は、
前記取得部が取得した前記複数の前記供給タイミング情報と、前記複数の前記検出タイミング情報とを演算した結果に基づいて前記供給タイミング情報を算出し、算出した当該供給タイミング情報に基づいて前記出力制御部に出力情報を供給させる
ことを特徴とする請求項１に記載の出力タイミング制御装置。
【請求項３】
前記検出タイミング情報とは、前記出力制御部と前記出力部とを備える第１端末装置の当該出力部が、前記供給タイミング情報が示すタイミングにより供給される前記出力情報を出力する前記出力タイミングを、前記検出部を備える第２端末装置の当該検出部が、前記供給タイミング情報が示すタイミングを基準にして検出する情報である
ことを特徴とする請求項１または請求項２に記載の出力タイミング制御装置。
【請求項４】
前記出力タイミング制御部は、
前記取得部が取得した前記供給タイミング情報が示すタイミングと、前記検出タイミング情報が示すタイミングとの差に基づいて、前記供給タイミング情報を算出し、算出した当該供給タイミング情報に基づいて前記出力制御部に出力情報を供給させる
ことを特徴とする請求項１から請求項３のいずれか一項に記載の出力タイミング制御装置。
【請求項５】
供給される出力情報を出力する出力部と、前記出力部に前記出力情報を供給する出力制御部と
を備える第１端末装置と、
前記出力制御部が、前記出力部に前記出力情報を供給するタイミングを示す供給タイミング情報と、前記出力部によって前記出力情報が出力される出力タイミングを検出する検出部
を備える第２端末装置と、
前記検出部が、前記供給タイミング情報が示すタイミングを基準にして検出する検出タイミング情報とを取得する取得部と、
前記取得部が取得した前記供給タイミング情報と前記検出タイミング情報とに基づいて前記供給タイミング情報を算出し、算出した当該供給タイミング情報に基づいて前記出力制御部に出力情報を供給させる出力タイミング制御部と、
を備えるサーバ装置と
を備えることを特徴とする出力タイミング制御システム。
【請求項６】
供給される出力情報を出力する出力部に前記出力情報を供給する出力制御部が、前記出力部に前記出力情報を供給するタイミングを示す供給タイミング情報と、前記出力部によって前記出力情報が出力される出力タイミングを検出する検出部が、前記供給タイミング情報が示すタイミングを基準にして検出する検出タイミング情報とを取得する取得手順と、
前記取得手順によって取得された前記供給タイミング情報と前記検出タイミング情報とに基づいて前記供給タイミング情報を算出し、算出した当該供給タイミング情報に基づいて前記出力制御部に出力情報を供給させる出力タイミング制御手順と、
を有することを特徴とする出力タイミング制御方法。
【請求項７】
コンピュータに、
供給される出力情報を出力する出力部に前記出力情報を供給する出力制御部が、前記出力部に前記出力情報を供給するタイミングを示す供給タイミング情報と、前記出力部によって前記出力情報が出力される出力タイミングを検出する検出部が、前記供給タイミング情報が示すタイミングを基準にして検出する検出タイミング情報とを取得する取得ステップと、
前記取得ステップにおいて取得された前記供給タイミング情報と前記検出タイミング情報とに基づいて前記供給タイミング情報を算出し、算出した当該供給タイミング情報に基づいて前記出力制御部に出力情報を供給させる出力タイミング制御ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、出力タイミング制御装置、出力タイミング制御システム、出力タイミング制御方法、およびプログラムに関する。
【背景技術】
【０００２】
ユーザ端末においてアプリケーションを利用する際には、ユーザ端末に予めアプリケーションプログラムをインストールし、ユーザ端末がアプリケーションプログラムに基づいて演算処理を行い、演算結果に基づいて画面や音声などの出力情報を変化させて表示するものが一般的である。これに対し、ユーザ端末にアプリケーションプログラムをインストールせず、インターネット等のネットワークを介してアプリケーションを利用させるアプリケーションシステムが提案されている。例えば、ユーザ端末がインターネット等のネットワークを介してアプリケーションサーバに接続し、ユーザから入力される指示情報をアプリケーションサーバに送信する。アプリケーションサーバは、ユーザ端末から送信される指示情報に応じて所定の演算処理を行い、演算結果に基づく結果を反映した出力情報をリアルタイムにそのユーザ端末にストリーミング配信することにより供給する。これによれば、ユーザ端末が行う処理は入力と出力のみであるため、アプリケーションプログラムをインストールすることなく、従来と同様の演算結果に基づく出力情報を表示することができる。このようなアプリケーションシステムにより、例えばデスクトップサービスや、クラウドゲームなどのサービスが提案されている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１８２０３１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述のようなアプリケーションシステムにおいては、複数のユーザ端末を用いてアプリケーションを利用させることがあるが、この場合、出力情報が複数のユーザ端末からそれぞれ出力されるタイミングが、ユーザ端末間において揃わないことがある（ずれが生じる）という問題があった。すなわち、例えばユーザが1つのアプリケーションを複数のユーザ端末を用いて利用する場合に、アプリケーションサーバから同時に供給される情報に基づいて、ユーザ端末内部の制御部から出力された画像信号に基づく画像が実際に表示部に表示されるまでの時間が異なる場合がある。かかる差異が生じる要因としては、ユーザ端末の種類、出力制御部から表示部まで画像信号を伝達する伝達ケーブルの種類や長さ、伝達経路、表示部において画像信号を画像に変換するのに用いる変換基板の種類、表示部の種類（ブラウン管ディスプレイ、液晶ディスプレイ、プラズマディスプレイ等）やメーカー、付属品の有無（プロジェクタや外部モニタの有無等）、ユーザ端末と表示部が別体となっている場合は接続方法（有線または無線）の相違、等の諸々の条件が挙げられる。そして、ユーザ端末間のかかる差異は、各ユーザ端末単体では計測は困難なものであった。
【０００５】
本発明は、このような状況に鑑みてなされたもので、複数のユーザ端末を用いてアプリケーションを提供する場合に、ユーザ端末間における出力タイミングのずれを低減することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一態様は、所定の出力情報を出力する出力部に対して前記出力情報を供給する出力制御部が、前記出力部に前記出力情報を供給するタイミングを示す供給タイミング情報と、前記出力部によって前記出力情報が出力される出力タイミングを検出する検出部が、前記供給タイミング情報が示すタイミングを基準にして検出する検出タイミング情報とを取得する取得部と、前記取得部が取得した前記供給タイミング情報と前記検出タイミング情報とに基づいて前記供給タイミング情報を算出し、算出した当該供給タイミング情報に基づいて前記出力制御部に出力情報を供給させる出力タイミング制御部と、を備えることを特徴とする出力タイミング制御装置である。
【０００７】
また本発明の一態様は、前記取得部は、複数の前記供給タイミング情報と、前記複数の前記供給タイミング情報がそれぞれ示す前記複数のタイミング毎に、前記検出部がそれぞれ検出した前記複数の前記検出タイミング情報を取得し、前記出力タイミング制御部は、前記取得部が取得した前記複数の前記供給タイミング情報と、前記複数の前記検出タイミング情報とを演算した結果に基づいて前記供給タイミング情報を算出し、算出した当該供給タイミング情報に基づいて前記出力制御部に出力情報を供給させることを特徴とする。
【０００８】
また本発明の一態様は、前記検出タイミング情報とは、前記出力制御部と前記出力部とを備える第１端末装置の当該出力部が、前記供給タイミング情報が示すタイミングにより供給される前記出力情報を出力する前記出力タイミングを、前記検出部を備える第２端末装置の当該検出部が、前記供給タイミング情報が示すタイミングを基準にして検出する情報であることを特徴とする。
【０００９】
また本発明の一態様は、前記出力タイミング制御部は、前記取得部が取得した前記供給タイミング情報が示すタイミングと、前記検出タイミング情報が示すタイミングとの差に基づいて、前記供給タイミング情報を算出し、算出した当該供給タイミング情報に基づいて前記出力制御部に出力情報を供給させることを特徴とする。
【００１０】
また本発明の一態様は、供給される出力情報を出力する出力部と、前記出力部に前記出力情報を供給する出力制御部とを備える第１端末装置と、前記出力制御部が、前記出力部に前記出力情報を供給するタイミングを示す供給タイミング情報と、前記出力部によって前記出力情報が出力される出力タイミングを検出する検出部を備える第２端末装置と、前記検出部が、前記供給タイミング情報が示すタイミングを基準にして検出する検出タイミング情報とを取得する取得部と、前記取得部が取得した前記供給タイミング情報と前記検出タイミング情報とに基づいて前記供給タイミング情報を算出し、算出した当該供給タイミング情報に基づいて前記出力制御部に出力情報を供給させる出力タイミング制御部と、を備えるサーバ装置とを備えることを特徴とする出力タイミング制御システムである。
【００１１】
また本発明の一態様は、供給される出力情報を出力する出力部に前記出力情報を供給する出力制御部が、前記出力部に前記出力情報を供給するタイミングを示す供給タイミング情報と、前記出力部によって前記出力情報が出力される出力タイミングを検出する検出部が、前記供給タイミング情報が示すタイミングを基準にして検出する検出タイミング情報とを取得する取得手順と、前記取得手順によって取得された前記供給タイミング情報と前記検出タイミング情報とに基づいて前記供給タイミング情報を算出し、算出した当該供給タイミング情報に基づいて前記出力制御部に出力情報を供給させる出力タイミング制御手順と、を有することを特徴とする出力タイミング制御方法である。
【００１２】
また本発明の一態様は、コンピュータに、供給される出力情報を出力する出力部に前記出力情報を供給する出力制御部が、前記出力部に前記出力情報を供給するタイミングを示す供給タイミング情報と、前記出力部によって前記出力情報が出力される出力タイミングを検出する検出部が、前記供給タイミング情報が示すタイミングを基準にして検出する検出タイミング情報とを取得する取得ステップと、前記取得ステップにおいて取得された前記供給タイミング情報と前記検出タイミング情報とに基づいて前記供給タイミング情報を算出し、算出した当該供給タイミング情報に基づいて前記出力制御部に出力情報を供給させる出力タイミング制御ステップと、を実行させるためのプログラムである。
【発明の効果】
【００１３】
以上説明したように、本発明によれば、複数のユーザ端末を用いてアプリケーションを提供する場合に、ユーザ端末間における出力タイミングのずれを低減することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施形態に係るアプリケーションシステムの構成の一例を示す構成図である。
【図２】本実施形態のユーザ端末の出力タイミングの一例を示すタイミング図である。
【図３】本実施形態のユーザ端末間の出力タイミングの差を低減させた場合の出力タイミングの一例を示すタイミング図である。
【図４】本実施形態の記憶部が記憶するユーザ端末情報の一例を示す表である。
【図５】本実施形態の記憶部が記憶する出力タイミング情報の一例を示す表である。
【図６】本実施形態のアプリケーション処理部が生成する出力情報の一例を示す図である。
【図７】本実施形態による設定前の供給タイミングの一例を示すタイミング図である。
【図８】本実施形態による設定後の供給タイミングの一例を示すタイミング図である。
【図９】本実施形態によるアプリケーションシステムの動作例を示す図である。
【図１０】本発明の第２の実施形態に係るアプリケーションシステムの構成の一例を示す構成図である。
【図１１】本発明の第３の実施形態に係るアプリケーションシステムの構成の一例を示す構成図である。
【図１２】本発明の第４の実施形態に係るアプリケーションシステムの構成の一例を示す構成図である。
【図１３】本実施形態のＡＰ処理部が生成する出力情報の一例を示す図である。
【図１４】本実施形態の記憶部が記憶する情報の一例を示す図である。
【図１５】本発明の第５の実施形態に係るアプリケーションシステムの構成の一例を示す構成図である。
【図１６】本発明の第６の実施形態に係るアプリケーションシステムの構成の一例を示す構成図である。
【発明を実施するための形態】
【００１５】
［第１の実施形態]
本発明を実施するための第１の実施形態について、図面を参照して説明する。
図１は、本発明の第１の実施形態に係るアプリケーションシステム１の構成の一例を示す構成図である。このアプリケーションシステム１とは、出力タイミング制御システムの一例である。アプリケーションシステム１は、複数のユーザ端末１０（ユーザ端末１０−１、ユーザ端末１０−２、・・・）と、複数のユーザ端末１０にネットワーク５を介して接続されたアプリケーションサーバ３０とを備えている。このユーザ端末１０とは、端末装置の一例である。また、アプリケーションサーバ３０とは、出力タイミング制御装置の一例である。ここで、複数のユーザ端末１０は同様の構成であるため、特に区別しない場合には「−１」、「−２」等の記載を省略してユーザ端末１０として説明する。本実施形態では、２台のユーザ端末１０を示して説明するが、任意の台数のユーザ端末１０がネットワーク５に接続されていてもよい。
ネットワーク５は、インターネット、ＷＡＮ（Wide Area Network）、ＬＡＮ（Local Area Network）、専用回線、またはこれらの組み合わせによって構成される情報通信ネットワークである。
また本実施形態においては、アプリケーションサーバ３０と各ユーザ端末１０とは、図示しない時刻情報提供サーバからの信号を受信することにより、時刻の同期がされている。
【００１６】
ユーザ端末１０は、ユーザが利用するコンピュータ装置であり、例えばＰＣ（Personal Computer）、タブレットＰＣ、スマートフォン、ゲーム機器等が適用できる。ユーザ端末１０は、表示部１１と、音声出力部１２と、出力制御部１３と、操作受付部１４とを備えている。このうち、表示部１１および音声出力部１２とは、出力部の一例である。ここで、ユーザ端末１０−１（第１端末装置の一例）は、表示部１１−１（第１出力部の一例）と、音声出力部１２−１（第１出力部の一例）と、出力制御部１３−１（第１出力制御部の一例）と、操作受付部１４−１（第１操作受付部の一例）とを備えている。同様に、ユーザ端末１０−２（第２端末装置の一例）は、表示部１１−２（第２出力部の一例）と、音声出力部１２−２（第２出力部の一例）と、出力制御部１３−２（第２出力制御部の一例）と、操作受付部１４−２（第２操作受付部の一例）とを備えている。
【００１７】
表示部１１は、情報を表示するディスプレイを含んでおり、ネットワーク５を介してアプリケーションサーバ３０から供給される画像情報に基づいて、画像を出力する。より具体的には、後述するように出力制御部１３は、ネットワーク５を介してアプリケーションサーバ３０から供給された画像情報に基づいて、画像信号を生成する。表示部１１は、出力制御部１３が生成した画像信号に基づいて、画像を出力する。
音声出力部１２は、音声を出力するスピーカーを含んでおり、ネットワーク５を介してアプリケーションサーバ３０から供給される音声情報に基づいて、音声を出力する。より具体的には、後述するように出力制御部１３は、ネットワーク５を介してアプリケーションサーバ３０から供給された音声情報に基づいて、音声信号を生成する。音声出力部１２は、出力制御部１３が生成した音声信号に基づいて、音声を出力する。
上述したように、表示部１１と、音声出力部１２とはいずれも出力部の一例であるが、本実施形態では、表示部１１を出力部の一例として、ユーザ端末１０−１の表示部１１−１と、ユーザ端末１０−２の表示部１１−２とが表示する画像を同期させる例を、以下説明する。
【００１８】
ここで、図面を参照して本発明の概要を説明する。
図２は、ユーザ端末１０の出力タイミングの一例を示すタイミング図である。ユーザ端末１０は、ユーザ端末１０の種類に応じた表示部１１を備えている。ユーザ端末１０の出力制御部１３が表示部１１への画像信号の供給を開始してから、表示部１１において画像として出力されるまで、所定の経過時間がかかる。この経過時間を、本実施形態では出力遅延時間Ｔｄと称する。図２に示すように、ユーザ端末１０−１が備える表示部１１−１の出力遅延時間Ｔｄは出力遅延時間Ｔｄ１と称し、ユーザ端末１０−２が備える表示部１１−２の出力遅延時間Ｔｄは出力遅延時間Ｔｄ２と称する。この出力遅延時間Ｔｄは、ユーザ端末１０の種類、出力制御部１３から表示部１１まで画像信号を伝達する伝達ケーブルの種類や長さ、伝達経路、表示部１１において画像信号を画像に変換するのに用いる変換基板（図示省略）の種類、表示部１１の種類（ブラウン管ディスプレイ、液晶ディスプレイ、プラズマディスプレイ等）やメーカー、付属品の有無（プロジェクタや外部モニタの有無等）などの諸々の条件によって異なるものであり、かつ、ユーザ端末１０単体では出力遅延時間Ｔｄの計測は困難なものである。また、出力遅延時間Ｔｄは各ユーザ端末毎に異なり得るものである。本実施形態では、例えば、ユーザ端末１０−１の表示部１１−１は、出力制御部１３−１から入力される画像信号に対して画像を出力する速度（応答速度）が比較的速いディスプレイ（例えば、ブラウン管ディスプレイ）を備えているものとする。一方、ユーザ端末１０−２の表示部１１−２は、出力制御部１３−２から入力される画像信号に対して画像を出力する速度（応答速度）が比較的遅いディスプレイ（例えば、液晶ディスプレイ）を備えているものとする。なお、出力制御部１３についての説明は後述する。
【００１９】
上述したように、ユーザ端末１０毎に出力遅延時間Ｔｄが異なり得るものであるため、各ユーザ端末１０の出力制御部１３から同一のタイミングで表示部１１に対する画像信号の供給を開始しても、表示部１１に画像が出力される出力タイミングＴｏに差異が生じる。ここで、出力タイミングＴｏとは、例えば何時何分何秒に画像信号が表示部１１に画像として出力されたのかを示す情報である。したがって、図２に示すように、ユーザ端末１０−１の出力制御部１３−１とユーザ端末１０−２の出力制御部１３−２とが、アプリケーションサーバ３０からそれぞれ供給された画像情報に基づいた画像信号を、それぞれ同時に表示部１１−１と表示部１１−２とに供給を開始した場合には、出力遅延時間Ｔｄ１と出力遅延時間Ｔｄ２との差（ずれ）に基づき、表示部１１−１の出力タイミングＴｏ１と、表示部１１−２の出力タイミングＴｏ２とに差（ずれ）、すなわち出力タイミングの差ΔＴｏが生じる。そこで、本実施形態では、図３に示すように供給タイミングを設定する。
【００２０】
図３は、ユーザ端末１０間の出力タイミングの差ΔＴｏを低減させた場合の出力タイミングＴｏの一例を示すタイミング図である。本実施形態では、表示部１１−１の出力タイミングＴｏ１が、表示部１１−２の出力タイミングＴｏ２と同期するように、ユーザ端末１０−２の供給タイミングＴｆ２を供給タイミングＴｆ２’にしてタイミングを設定する。これにより、ユーザ端末１０間において出力タイミングＴｏの差ΔＴｏを低減することができる。以下、このような制御について詳細に説明する。
【００２１】
出力制御部１３は、出力部に対して出力信号を供給する。例えば、出力制御部１３は、出力部としての表示部１１に対しては、出力信号としての画像信号を供給する。この供給される画像信号には、出力制御部１３が表示部１１に画像信号の供給を開始するタイミング（供給タイミングＴｆ）を示す供給タイミング情報が付与されている。ここで、供給タイミング情報とは、例えば何時何分何秒にその画像信号を出力制御部１３から表示部１１に対して供給を開始する、という情報である。したがって出力制御部１３は、ネットワーク５を介して入力される画像情報に基づく画像信号を、その画像情報に付与されて入力される供給タイミング情報に基づいて、表示部１１に供給する。
【００２２】
操作受付部１４（検出部の一例）は、キーボード、マウス、タッチパネル等の入力デバイスを備えており、ユーザからの指示情報の入力を受け付ける。ここで、指示情報とは、ユーザがユーザ端末１０に与える指示を示す情報である。この指示情報には、アプリケーションサーバ３０へのログイン要求を示す情報や、ユーザが表示部１１をタップする操作を示す情報などが含まれる。具体的には、操作受付部１４は、ユーザから指示情報が入力されると、入力された指示情報を受け付けて操作情報を生成するとともに、当該指示情報を受け付けたタイミングを示す操作タイミング情報を生成する。ここで、操作情報とは、ユーザから入力された指示情報を受け付けた操作受付部１４が当該指示情報に基づいて生成する、ユーザの操作を示す情報である。例えば、操作受付部１４は、ユーザが表示部１１をタップする操作を示す指示情報が入力されると、このタップ操作を示す指示情報を受け付けて、タップ操作を示す操作情報を生成する。このとき操作受付部１４は、タップ操作を受け付けたタイミング（例えば、何時何分何秒にそのタップ操作を受け付けたか）を示す操作タイミング情報を生成する。
なお、本実施形態では一例として、操作受付部１４はタッチパネルであり、表示部１１と一体となっている場合について説明する。したがって上述のタップ操作とは、本実施形態においては、ユーザが表示部１１に触れる操作を指す。
また、図示しないが、ユーザ端末１０は、ネットワーク５を介してアプリケーションサーバ３０と通信する通信部や、各種情報を記憶する記憶部等を備えている。
【００２３】
このユーザ端末１０は、ネットワーク５を介して接続されたアプリケーションサーバ３０によって提供されるアプリケーションサービスを、当該ユーザ端末１０を利用するユーザに提供する。本実施形態では、ユーザ端末１０は、ユーザから入力される指示情報に応じた操作情報をアプリケーションサーバ３０に送信し、この送信した操作情報に応じてアプリケーションサーバ３０によってアプリケーションの演算処理が行われた結果を反映した画面を、ストリーミング形式による動画としてアプリケーションサーバ３０から受信し、ディスプレイに表示する。ユーザ端末１０がアプリケーションサーバ３０に送信する操作情報とは、例えばアプリケーションサーバ３０へのログイン要求、アプリケーションの開始要求、またはアプリケーションの各種機能に応じた操作を示す情報である。このように、ユーザ端末１０にアプリケーションプログラムをインストールすることなく、ユーザはアプリケーションを利用することができる。
【００２４】
また、ユーザは、１または複数のユーザ端末１０をユーザ端末群Ｇとして利用することができる。このユーザ端末群Ｇとは、同一のユーザが利用するユーザ端末１０の群である。本実施形態では、ユーザＵ１は、ユーザ端末１０−１、およびユーザ端末１０−２を利用するものとして説明する。この場合、ユーザ端末１０−１、−２が、ユーザＵ１が利用するユーザ端末群Ｇである。
【００２５】
なお、本実施形態においては、ユーザがユーザ端末１０を操作して端末ＩＤとユーザＩＤとに基づいてログイン要求を行うと、アプリケーションサーバ３０は、端末ＩＤ及びこれに対応するアプリケーション（ＡＰ）処理部ＩＤを、記憶部３１に記憶させる処理を行う。ＡＰ処理部３５および記憶部３１については後述する。一例として、同一のユーザ端末群Ｇに含まれる複数のユーザ端末１０は、ログインを行ったユーザ端末１０の順番に基づいて端末ＩＤが付与され、同一のユーザ端末群Ｇに含まれるユーザ端末１０の中で端末ＩＤの値が最も小さいユーザ端末１０が、その中で一番早くログインを行ったユーザ端末１０になる。そして端末ＩＤの値が最も小さいユーザ端末１０がユーザの正面に、ユーザ正面のユーザ端末１０の次に端末ＩＤの値が小さいユーザ端末１０がユーザの左側に、それぞれ配置されることを前提として、各ユーザ端末１０の配置情報が設定される。具体的には、ユーザ端末１０−１がユーザの正面に、ユーザ端末１０−２がユーザの左側（左手側）に、それぞれ配置されることを前提に、ユーザ端末１０の配置情報が設定される。なお、ユーザ端末１０の配置情報は、このように同一のユーザ端末群Ｇに含まれる複数のユーザ端末１０の端末ＩＤの値に基づいて予め定められる場合に限られず、ユーザが設定したり、ユーザ端末１０の位置を自動的に検出することによって動的に配置情報を設定したりしてもよい。ここで、配置情報とは、ユーザ端末１０が配置されているユーザ端末１０間の順序や位置関係を示す情報である。
【００２６】
次に、アプリケーションサーバ３０の構成について説明する。
アプリケーションサーバ３０は、ネットワーク５を介してユーザ端末１０にアプリケーションを利用させるアプリケーションサービスを提供するコンピュータ装置であり、記憶部３１と、取得部３２と、受信部３３と、アプリケーション制御部３４と、送信部３７と、同期部３８と、設定部３９（出力タイミング制御部）とを備えている。
【００２７】
記憶部３１は、アプリケーションサーバ３０が動作するために参照する各種情報を記憶する。例えば、記憶部３１は、アプリケーションを実行するためのアプリケーションプログラムを予め記憶している。また、記憶部３１は、本実施形態では図４に示すように、ユーザ端末１０を識別する端末ＩＤと、ユーザ端末群Ｇに属する複数のユーザ端末１０にそれぞれ対応付けられているＡＰ処理部３５の識別情報（ＡＰ処理部ＩＤ）と、供給タイミングＴｆ（供給タイミング情報の一例）とを、ユーザ端末情報として記憶する。なお、ＡＰ処理部３５については、後述する。
【００２８】
例えば、図４（ａ）に示すように、記憶部３１は、ユーザ端末１０−１の端末ＩＤ（Ｔ００１）と、ユーザ端末１０−１の表示部１１−１に表示する画像を生成するＡＰ処理部３５−１のＡＰ処理部ＩＤ（ＡＰ０１）と、ユーザ端末１０−１の表示部１１−１の供給タイミングＴｆ（供給タイミングＴｆ１−１等）とを関連付けて、ユーザ端末情報として記憶する。同様に、図４（ｂ）に示すように、記憶部３１は、ユーザ端末１０−２の端末ＩＤ（Ｔ００２）と、ユーザ端末１０−２の表示部１１−２に表示する画像を生成するＡＰ処理部３５−２のＡＰ処理部ＩＤ（ＡＰ０２）と、ＡＰ処理部３５により生成される画像情報（コマ画像）の画像ＩＤ（Ｆｇ０１等）と、ユーザ端末１０−２の表示部１１−２の供給タイミング（供給タイミングＴｆ２−１等）とを関連付けて記憶する。
【００２９】
図５は、本実施形態の記憶部３１が記憶する出力タイミング情報の一例を示す表である。同図に示すように、記憶部３１は、本実施形態ではユーザ端末１０を識別する端末ＩＤと、ＡＰ処理部３５のＡＰ処理部ＩＤと、各ユーザ端末１０間の出力タイミングの差ΔＴｏとを関連付けて記憶する。出力タイミングの差ΔＴｏは、ユーザ端末１０間で同時に各出力制御部１３から画像信号を表示部１１に対して出力したときに生じる、各表示部１１に表示されるまでの時間の差を示す情報である。この出力タイミングの差ΔＴｏの詳細な算出方法は後述するが、概略として、ユーザ端末１０−１の出力タイミングＴｏ１と、ユーザ端末１０−２の出力タイミングＴｏ２との差分である各ユーザ端末間の出力タイミングの差ΔＴｏを算出する。
【００３０】
例えばユーザ端末１０−１を基準とする場合は、図５に示すように、記憶部３１には、ユーザ端末１０−１の端末ＩＤ（Ｔ００１）と出力タイミングの差ΔＴｏとを関連付けて、出力タイミング情報として記憶する。但しこの場合、ユーザ端末１０−１を基準とするため、出力タイミングの差ΔＴｏは０（ゼロ）と記憶している。また、ユーザ端末１０−２の端末ＩＤ（Ｔ００２）と、ユーザ端末１０−１を基準とした出力タイミングの差ΔＴｏ２とを関連付けて、出力タイミング情報として記憶する。
【００３１】
再び、図１を参照して、アプリケーションサーバ３０の構成について説明を続ける。
受信部３３は、ユーザ端末１０から送信される操作情報を受信する。具体的には、受信部３３は、アプリケーションサーバ３０へのログイン時にユーザ端末１０からネットワーク５を介して送信されるログイン要求を示す操作情報を受信する。また、受信部３３は、ユーザ端末１０の操作受付部１４が受け付けた、ユーザが表示部１１をタップする操作を示す操作情報を受信する。
【００３２】
アプリケーション制御部３４は、複数のユーザ端末１０のそれぞれから送信される操作情報に基づいて所定の演算処理を行い、演算結果に基づく動画を生成する、各ユーザ端末１０のそれぞれに対応した複数のアプリケーション（ＡＰ）処理部３５（ＡＰ処理部３５−１、ＡＰ処理部３５−２、・・・）を備えている。ここで、複数のＡＰ処理部３５は同様の構成であるため、特に区別しない場合には「−１」、「−２」等の記載を省略してＡＰ処理部３５として説明する。アプリケーション制御部３４は、ユーザ端末１０から、アプリケーションの利用要求である指示情報を、受信部３３を介して受信すると、予め記憶部３１に記憶されているアプリケーションプログラムを読み出して、アプリケーションの実行インスタンスであるＡＰ処理部３５を自身の記憶領域に生成する。アプリケーション制御部３４は、アプリケーションを利用するひとつのユーザ端末１０に対してひとつのＡＰ処理部３５を生成するため、ユーザ端末１０と同数のＡＰ処理部３５を生成する。すなわち、アプリケーション制御部３４は、各ユーザ端末１０に対応した各ＡＰ処理部３５を生成する。本実施形態では、ユーザ端末１０−１に対応するＡＰ処理部３５はＡＰ処理部３５−１とし、ユーザ端末１０−２に対応するＡＰ処理部３５はＡＰ処理部３５−２としている。
【００３３】
アプリケーション（ＡＰ）処理部３５は、自身に対応するユーザ端末１０から送信される指示情報に基づいて所定の演算処理を行い、演算結果に基づく動画を生成する。ＡＰ処理部３５が行う演算処理は、例えば、ゲームやデスクトップサービス等のアプリケーションを提供するための処理である。このゲームには、例えばレースゲーム等のスポーツゲーム、格闘ゲーム等のアクションゲーム、ＦＰＳ（First Person shooter）等のシューティングゲーム、ロールプレイングゲーム、パズルゲーム、タイミングゲーム、シミュレーションゲームなどが適用できる。あるいは、ＡＰ処理部３５は、ワープロソフト、表計算ソフト、プレゼンテーションソフト等のオフィスソフト等のアプリケーションを実行するものであってもよい。
【００３４】
このＡＰ処理部３５は、ユーザ端末群Ｇに含まれるユーザ端末１０のそれぞれから送信される指示情報に基づいて所定の演算処理を行い、演算結果に基づく画像情報を生成する。次に、ＡＰ処理部３５が生成する画像情報の一例を、図６を参照して説明する。
【００３５】
図６は、本実施形態のＡＰ処理部３５が生成する出力情報の一例を示す図である。ここでは、タイミングゲームを一例に説明する。このタイミングゲームとは、音声出力部１２が出力する音楽に合わせて表示部１１の下（＋Ｙ）方向に移動するオブジェクトＯＢによって示される操作位置および操作タイミングの指示と、ユーザによる操作との一致度に基づいて算出されるスコアを競うゲームである。ここでの出力情報とは、ゲーム画面におけるオブジェクトＯＢを示す画像情報である。
【００３６】
ここで、表示部１１に表示されるオブジェクトＯＢについて説明する。オブジェクトＯＢとは、ユーザによる操作の操作位置および操作タイミングの指示を示す画像である。このオブジェクトＯＢには、一例として、オブジェクトＯＢ１〜ＯＢ３が含まれる。以下、これらオブジェクトＯＢのうちの、オブジェクトＯＢ１について説明する。このオブジェクトＯＢ１とは、“○”の画像である。表示部１１には、オブジェクトＯＢ１が表示される位置としての線分Ｌ１が設定されている。オブジェクトＯＢ１は、この線分Ｌ１の上端（−Ｙ側端）において出現し、時間の経過とともに表示部１１の下（＋Ｙ）方向に移動して、線分Ｌ１と交差する基準線ＳＬを通過し、表示部１１の下端（＋Ｙ側端）において消滅するように表示される。また、操作位置とは、各オブジェクトＯＢに対してユーザが操作をすべき表示部１１上の位置である。この操作位置には、一例として、オブジェクトＯＢ１〜ＯＢ３にそれぞれ対応する第１操作位置Ｐ１と、第２操作位置Ｐ２と、第３操作位置Ｐ３とが含まれる。この第１操作位置Ｐ１とは、線分Ｌ１と基準線ＳＬとの交点の位置である。ユーザは、表示部１１にオブジェクトＯＢ１が表示されている場合には、第１操作位置Ｐ１をタップする。また、操作タイミングとは、各オブジェクトＯＢに対してユーザが操作をすべきタイミングである。具体的には、オブジェクトＯＢ１に対してユーザが操作すべきタイミングとは、時間の経過とともに表示部１１の下（＋Ｙ）方向に移動して表示されるオブジェクトＯＢ１が、線分Ｌ１と基準線ＳＬとの交点（すなわち、第１操作位置Ｐ１）に表示されたタイミングである。つまり、オブジェクトＯＢ１が示す操作タイミングとは、オブジェクトＯＢ１が第１操作位置Ｐ１に表示されたタイミングである。ユーザは、表示部１１に表示されたオブジェクトＯＢ１が、時間の経過とともに表示部１１の下（＋Ｙ）方向に移動して線分Ｌ１と基準線ＳＬとの交点（すなわち、第１操作位置Ｐ１）に表示されたタイミングにおいて、第１操作位置Ｐ１をタップする。
【００３７】
ここまで、オブジェクトＯＢ１について説明したが、オブジェクトＯＢ２およびオブジェクトＯＢ３についてもオブジェクトＯＢ１と同様である。具体的には、オブジェクトＯＢ２とは、“△”の画像であり、オブジェクトＯＢ３とは、“□”の画像である。表示部１１には、オブジェクトＯＢ２が表示される位置としての線分Ｌ２が設定されている。オブジェクトＯＢ２は、この線分Ｌ２の上端（−Ｙ側端）において出現し、時間の経過とともに表示部１１の下（＋Ｙ）方向に移動して、線分Ｌ２と交差する基準線ＳＬを通過し、表示部１１の下端（＋Ｙ側端）において消滅するように表示される。同様に、表示部１１には、オブジェクトＯＢ３が表示される位置としての線分Ｌ３が設定されている。オブジェクトＯＢ３は、この線分Ｌ３の上端（−Ｙ側端）において出現し、時間の経過とともに表示部１１の下（＋Ｙ）方向に移動して、線分Ｌ３と交差する基準線ＳＬを通過し、表示部１１の下端（＋Ｙ側端）において消滅するように表示される。また、第２操作位置Ｐ２とは、線分Ｌ２と基準線ＳＬとの交点の位置である。第３操作位置Ｐ３とは、線分Ｌ３と基準線ＳＬとの交点の位置である。ユーザは、表示部１１にオブジェクトＯＢ２が表示されている場合には、第２操作位置Ｐ２をタップする。同様に、ユーザは、表示部１１にオブジェクトＯＢ３が表示されている場合には、第３操作位置Ｐ３をタップする。また、オブジェクトＯＢ２に対してユーザが操作すべきタイミングとは、オブジェクトＯＢ２が示す操作タイミングとは、オブジェクトＯＢ２が第２操作位置Ｐ２に表示されたタイミングである。同様に、オブジェクトＯＢ３に対してユーザが操作すべきタイミングとは、オブジェクトＯＢ３が第３操作位置Ｐ３に表示されたタイミングである。以下、オブジェクトＯＢ１〜ＯＢ３を区別しない場合には、オブジェクトＯＢと総称して説明する。
【００３８】
上述したように、オブジェクトＯＢの画像は、表示部１１の上端（−Ｙ側端）において出現し、時間の経過とともに表示部１１の下（＋Ｙ）方向に移動して基準線ＳＬを通過し、表示部１１の下端（＋Ｙ側端）において消滅するように表示される。このとき、オブジェクトＯＢの画像は、表示部１１の上端（−Ｙ側端）において出現してから表示部１１の下端（＋Ｙ側端）において消滅するまでの時間が、時間（ａ＋ｂ）となる表示部１１上の移動速度（例えば、単位時間当たりの移動画素数）によって（＋Ｙ）方向に移動するように表示される。ここで、時間ａとは、オブジェクトＯＢの画像が基準線ＳＬに達してから表示部１１の下端（＋Ｙ側端）において消滅するまでの時間である。また、時間ｂとは、オブジェクトＯＢの画像が表示部１１の上端（−Ｙ側端）において出現してから基準線ＳＬに達するまでの時間である。この時間ａ及び時間ｂは、例えばゲーム中に音声出力部１２が出力する音楽のテンポに基づいて、予め設定されている。このゲームをプレイするユーザは、表示部１１の下（＋Ｙ）方向に移動するオブジェクトＯＢの画像が基準線ＳＬを通過するタイミングと、操作のタイミングとが一致するようにして、表示部１１に対する操作（例えば、タップ）を行う。
【００３９】
ここで、ＡＰ処理部３５は、それぞれ対応するユーザ端末１０が備える表示部１１に表示されるオブジェクトＯＢの画像情報を生成する。具体的には、ＡＰ処理部３５−１は、ユーザ端末１０−１が備える表示部１１−１に表示されるオブジェクトＯＢの画像情報を生成する。同様に、ＡＰ処理部３５−２は、ユーザ端末１０−２が備える表示部１１−２に表示されるオブジェクトＯＢの画像情報を生成する。このとき、各ＡＰ処理部３５は、同期部３８によって同期された画像情報の生成処理の進行度合いによって、オブジェクトＯＢの画像情報を生成する。この同期部３８が、ＡＰ処理部３５の処理進行度合いを同期する具体的な構成については後述する。
【００４０】
このように、ＡＰ処理部３５は、アプリケーションサーバ３０が備えるＧＰＵ（Graphics Processing Unit）等を用いてアプリケーション画面のレンダリングを行い、時系列とともに変化するコマ画像を生成する。そして、ＡＰ処理部３５は、同期部３８によって同期されて生成したコマ画像と、自身のＡＰ処理部ＩＤとを関連付けて、送信部３７に出力する。ＡＰ処理部３５は、このコマ画像の生成と、生成したコマ画像の設定部３９への送信を連続して行うことにより、コマ画像の連続である動画を生成する。
【００４１】
再び、図１を参照して、アプリケーションサーバ３０の構成について説明を続ける。
本実施形態における設定部３９は、各ＡＰ処理部３５のＡＰ処理部ＩＤ等と関連付けて、供給タイミング情報を予め記憶部３１に記憶する機能と、ＡＰ処理部ＩＤ等に関連付けて記憶部３１が記憶している供給タイミング情報Ｔｆを取得し、ＡＰ処理部が生成した画像情報に付加する機能を有する。さらに、後述のように供給タイミング情報を設定するための演算を行う機能を有するとともに、この演算の結果に応じて記憶部３１に供給タイミング情報を設定する機能を有する。さらに、設定された供給タイミング情報を取得し、ＡＰ処理部が生成した画像情報に付加する機能をも有する。供給タイミング情報を設定するための演算を行う機能については後述する。ここで、供給タイミング情報の設定とは、供給タイミングを決定する際、出力タイミングの差ΔＴｏを考慮して決定することを意味する。
【００４２】
ＡＰ処理部３５によって生成された画像情報に、設定部３９が所定の供給タイミング情報（供給タイミングＴｆ）を付加する機能について説明する。例えばＡＰ処理部３５−１により生成された画像情報であるコマ画像に、記憶部３１から取得部３２を介して取得した、ＡＰ処理部３５−１に関連付けられている供給タイミング情報（供給タイミングＴｆ１）を付加し、送信部３７に受け渡す。同様に、ＡＰ処理部３５−２により生成された画像情報であるコマ画像に、記憶部３１から取得した、ＡＰ処理部３５−２に関連付けられている供給タイミング情報（供給タイミングＴｆ２）を付加し、送信部３７に受け渡す。
【００４３】
送信部３７は、ＡＰ処理部３５によってユーザ端末群Ｇに含まれるユーザ端末１０のそれぞれに応じて生成され、設定部３９により供給タイミング情報が付加された画像情報を、ユーザ端末群Ｇに含まれるユーザ端末１０のそれぞれに送信する。具体的には、送信部３７は、ＡＰ処理部３５が生成したコマ画像を送信する。ここで、送信部３７は、例えばストリーミング形式により動画を送信する。ストリーミングとは、時系列に応じた動画のデータを受信しながら順次再生させる転送、再生方式である。これにより、指示情報に応じて変化する画面をユーザ端末１０に表示させることができる。上述したように、この送信部３７がユーザ端末１０に対して送信する画像情報には、ユーザ端末１０の出力制御部１３が表示部１１に画像信号を供給するタイミングを示す供給タイミング情報が含まれている。一例として、送信部３７がユーザ端末１０−１に対して送信する画像情報には、ユーザ端末１０−１の出力制御部１３−１が表示部１１−１に対してこの画像情報に基づく画像信号を供給する供給タイミングＴｆ１を示す供給タイミング情報が含まれている。この供給タイミングＴｆ１を示す供給タイミング情報とは、ユーザ端末１０−１の端末ＩＤ（Ｔ００１）に関連付けてユーザ端末情報として記憶部３１が記憶する供給タイミング情報である。
【００４４】
取得部３２は、ユーザ端末１０の表示部１１が画像情報を出力したタイミングを示す出力タイミング情報を取得する。すなわち、上述したように、ユーザ端末１０の出力制御部１３は、アプリケーションサーバ３０から供給される供給タイミング情報が示す供給タイミングＴｆによって、画像信号を表示部１１に供給する。ここで、ユーザ端末１０を利用するユーザが、上述した図６に示す基準線ＳＬに達したオブジェクトＯＢの画像が表示されたタイミングによって、操作（例えば、タップ）を行った場合には、この操作タイミング情報は、表示部１１の基準線ＳＬにオブジェクトＯＢが表示されたタイミングを示しているといえる。つまり、取得部３２は、表示部１１の基準線ＳＬにオブジェクトＯＢが表示されたタイミングを示す操作タイミング情報を、出力タイミング情報として取得する。ここで、出力タイミング情報とは、表示部１１が画像情報を出力した出力タイミングＴｏを示す情報である。具体的には、取得部３２は、受信部３３がユーザ端末１０からネットワーク５を介して受信した操作タイミング情報を、ユーザ端末１０の表示部１１の出力タイミングＴｏを示す出力タイミング情報として取得する。一例として、取得部３２は、表示部１１−１の出力タイミングＴｏ１を示す出力タイミング情報と、表示部１１−２の出力タイミングＴｏ２を示す出力タイミング情報とを取得する。
【００４５】
同期部３８は、ＡＰ処理部３５の処理進行度合いを相互に同期させる。すなわち、同期部３８は、ＡＰ処理部３５から入力される同期信号に基づいて、各ＡＰ処理部３５の処理進行度合いを同期させる。ここで同期信号とは、ＡＰ処理部３５の処理進行度合いを同期させる信号である。具体的には、ＡＰ処理部３５は、ユーザ端末群Ｇに含まれるユーザ端末１０が送信した指示情報を取得した場合に、同期部３８に対して同期信号を出力する。この同期信号は、ユーザ端末１０が送信した指示情報であってもよく、ユーザ端末１０が送信した指示情報を取得したことを示す情報であってもよい。同期部３８は、ＡＰ処理部３５が出力した同期信号が入力されると、同一のユーザ端末群Ｇに含まれるユーザ端末１０に対応するＡＰ処理部３５（つまり、同一のユーザ端末群Ｇに含まれるＡＰ処理部３５）のうち、他のＡＰ処理部３５に、指示情報を出力する。上述したように、ＡＰ処理部３５は、ユーザ端末群Ｇに含まれるユーザ端末１０のそれぞれから送信される指示情報に基づいて所定の演算処理を行い、演算結果に基づく画像情報を生成する。このようにして同期部３８は、各ＡＰ処理部３５の処理進行度合いを同期させる。
【００４６】
なお、同期部３８は、アプリケーション制御部３４内に、ＡＰ処理部３５とは別に備えることとしても良いし、ＡＰ処理部３５自身が備えていてもよい。例えば、ＡＰ処理部３５は、上述した同期部３８の構成を有しており、指示情報が入力された場合に、同一のユーザ端末群Ｇに含まれる他のＡＰ処理部に指示情報を出力することによって、互いに同期して画像情報を生成する構成であってもよい。
【００４７】
次に、設定部３９が供給タイミング情報を設定する構成について詳細に説明する。ここでは、一例として、ユーザ端末１０−２についての供給タイミングＴｆ２を設定する場合について説明する。
【００４８】
まず、設定部３９は、ユーザ端末１０−１の出力制御部１３−１が表示部１１−１に画像信号を供給する供給タイミングＴｆ１を示す供給タイミング情報を、記憶部３１から取得部３２を介して取得する。また、設定部３９は、ユーザ端末１０−２の出力制御部１３−２が表示部１１−２に画像信号を供給する供給タイミングＴｆ２を示す供給タイミング情報を、記憶部３１から取得部３２を介して取得する。
【００４９】
次に、設定部３９は、各ユーザ端末１０についての出力タイミング情報を取得部３２から取得する。具体的には、設定部３９は、ユーザ端末１０−１の表示部１１−１の出力タイミングＴｏ１を示す出力タイミング情報と、ユーザ端末１０−２の表示部１１−２の出力タイミングＴｏ２を示す出力タイミング情報とを、取得部３２から取得する。この出力タイミング情報とは、取得した供給タイミングＴｆによって、出力制御部１３が表示部１１に画像信号を供給したことにより表示部１１が画像情報を出力した出力タイミングＴｏを示す出力タイミング情報である。
【００５０】
次に、設定部３９は、取得した出力タイミング情報が示す、各ユーザ端末１０間の出力タイミングの差（ずれ）を算出する。
【００５１】
一例としてユーザ端末１０−１の出力タイミングＴｏ１を基準とすると、出力タイミングＴｏ２から出力タイミングＴｏ１を減算する演算を行い、出力タイミングの差ΔＴｏを算出する。かかる演算を行うことにより、各ユーザ端末１０間における出力タイミングの差、すなわちユーザ端末１０−１とユーザ端末１０−２とで同時に画像情報（コマ画像）に基づく画像信号を出力制御部１３から表示部１１に対して出力した場合に、ユーザ端末１０−１を基準としてユーザ端末１０−２は画像情報が表示部１１に表示されるのがどの程度早いか（または遅いか）を算出することができる。
【００５２】
次に、設定部３９は、算出した出力タイミングの差ΔＴｏをユーザ端末１０の端末ＩＤと関連付けて記憶部３１に記憶させる。具体的には、設定部３９は、ユーザ端末１０−１の出力タイミングＴｏ１を基準にしたユーザ端末１０−２についての出力タイミングの差ΔＴｏ２を算出し、算出した出力タイミングの差ΔＴｏ２をユーザ端末１０−２の端末ＩＤ（Ｔ００２）と関連付けて記憶部３１に記憶させる。なお、例えば、ユーザ端末１０−２の出力タイミングＴｏ２を基準にしたユーザ端末１０−１についての出力タイミングの差ΔＴｏ１を算出してもよい。
【００５３】
次に、設定部３９は、記憶部３１が記憶する出力タイミングの差に基づいて、供給タイミング情報を算出する。具体的には、設定部３９は、ユーザ端末１０の端末ＩＤと関連付けて記憶部３１が記憶する出力タイミングの差ΔＴｏを取得する。次に、設定部３９は、既に取得しているユーザ端末１０−２の供給タイミングＴｆ２と、取得した出力タイミングの差ΔＴｏとに基づいて、供給タイミングＴｆ２’を算出する。より具体的には、設定部３９は（式１）によって供給タイミングＴｆ２’を算出する。
【００５４】
供給タイミングＴｆ２’＝供給タイミングＴｆ２＋出力タイミングの差ΔＴｏ…（式１）
【００５５】
上述したように、この出力タイミングの差ΔＴｏの一例が、ユーザ端末１０−１の出力タイミングＴｏ１を基準にしたユーザ端末１０−２についての出力タイミングの差ΔＴｏ２である。
次に、設定部３９は、算出した供給タイミングＴｆ２’を、ユーザ端末１０−２についての新たな供給タイミング情報として、ユーザ端末１０−２の端末ＩＤ（Ｔ００２）と関連付けて記憶部３１に記憶させる。そして、設定部３９は、設定された供給タイミング情報と、ＡＰ処理部３５が生成した画像情報とを関連付けて、送信部３７に受け渡し、送信部３７は受け渡された情報をユーザ端末１０に供給する。ユーザ端末１０の出力制御部１３は、アプリケーションサーバ３０から供給された画像情報に付与された供給タイミング情報に応じたタイミングによって、表示部１１に画像信号を出力する。このようにして設定部３９が供給タイミングを設定することにより、出力遅延時間Ｔｄに差異があるユーザ端末１０間において、画像情報が出力される出力タイミングＴｏの差異を低減する。
【００５６】
次に、設定部３９が供給タイミング情報を設定して、各ユーザ端末１０の出力タイミングを一致させる構成を、図７および図８を参照して説明する。以下、一例として、複数のＡＰ処理部３５（ＡＰ処理部３５−１、およびＡＰ処理部３５−２）が生成した画像情報に基づいて、各ＡＰ処理部３５に対応する複数のユーザ端末１０（ユーザ端末１０−１、およびユーザ端末１０−２）が画像を表示する構成を説明する。
【００５７】
図７は、本実施形態による設定前の供給タイミングＴｆの一例を示すタイミング図である。ここで、設定部３９は、ユーザ端末１０−１の出力制御部１３−１が表示部１１−１に画像信号を供給する供給タイミングＴｆ１と、ユーザ端末１０−２の出力制御部１３−２が表示部１１−２に画像信号を供給する供給タイミングＴｆ２とが一致するタイミングになるように、供給タイミングＴｆ１と、供給タイミングＴｆ２とを予め設定している。具体的には、設定部３９は、供給タイミングＴｆ１および供給タイミングＴｆ２をいずれも時刻ｔ７に設定している。設定部３９は、設定した供給タイミングＴｆ１および供給タイミングＴｆ２を、記憶部３１に供給タイミング情報として予め記憶させている。また、ユーザ端末１０−１、−２の出力遅延時間Ｔｄをそれぞれ、出力遅延時間Ｔｄ１、出力遅延時間Ｔｄ２として、以下説明する。また、一例として、出力遅延時間Ｔｄ１は、出力遅延時間Ｔｄ２に比して相対的に短い時間であるとして、以下説明する。
【００５８】
まずユーザ端末１０−１の表示部１１−１に画像を表示させるまでの動作について説明すると、ＡＰ処理部３５−１は、時刻ｔ０から時刻ｔ１において、自身に対応するユーザ端末１０−１から送信される操作情報に基づいて所定の演算処理を行う。次に、ＡＰ処理部３５−１は、時刻ｔ１から時刻ｔ２において、演算結果に基づく動画情報を画像情報として生成する。そして生成した画像情報を設定部３９に受け渡す。次に設定部３９は、予め設定している供給タイミング情報を記憶部３１から取得する。具体的には、設定部３９は、ＡＰ処理部ＩＤ（ＡＰ０１）に関連付けて記憶部３１が供給タイミング情報として予め記憶している供給タイミングＴｆ１を取得する。この供給タイミングＴｆ１とは、ユーザ端末１０−１の出力制御部１３−１が出力部（表示部１１−１）に動画情報を供給するタイミングが、時刻ｔ７であることを示す情報である。そして取得した供給タイミングＴｆ１を、ＡＰ処理部３５−１から受け取った画像情報に付加して送信部３７に受け渡す。次に、送信部３７は、時刻ｔ２から時刻ｔ３において、生成された動画情報をストリーミング形式にエンコードする。次に、送信部３７は、時刻ｔ３から時刻ｔ４において、エンコードした動画情報をユーザ端末１０−１に送信する。
【００５９】
次に、ユーザ端末１０−１は、時刻ｔ４から時刻ｔ５において、エンコードされた動画情報を受信する。次に、ユーザ端末１０−１の出力制御部１３−１は、受信した動画情報に含まれる供給タイミング情報に基づいて、受信した動画情報を出力するタイミングに達するまで表示待ちを行う。具体的には、出力制御部１３−１は、出力するタイミングが時刻ｔ７であることを示す供給タイミング情報に基づいて、時刻ｔ５から時刻ｔ７において、表示待ちを行う。次に、出力制御部１３−１は、受信した動画情報に基づく画像（動画）を、時刻ｔ７において、出力部（表示部１１−１）に供給する。ユーザ端末１０−１の出力部（表示部１１−１）は、時刻ｔ７において供給された動画情報に基づく画像（動画）を表示する。ここで、表示部１１−１は、供給タイミングＴｆ１から出力遅延時間Ｔｄだけ遅延したタイミング、つまり時刻ｔ８−１において、供給された動画情報に基づく画像（動画）を表示する。
【００６０】
また、ＡＰ処理部３５−１およびユーザ端末１０−１と同様にして、ＡＰ処理部３５−２およびユーザ端末１０−２は図７に示すように画像（動画）を生成し、生成した画像（動画）を表示する。ここで、ＡＰ処理部３５−２が生成する画像情報にも、設定部３９によって付加された、時刻ｔ７を出力タイミングとして設定された供給タイミング情報が含まれている。これにより、ユーザ端末１０−２の出力部（表示部１１−２）は、時刻ｔ７において供給された動画情報に基づく画像（動画）を表示する。ここで、表示部１１−２は、供給タイミングＴｆ２から出力遅延時間Ｔｄ２だけ遅延したタイミング、つまり時刻ｔ８−２において、供給された動画情報に基づく画像（動画）を表示する。すなわち、供給タイミングの設定前では、ユーザ端末１０−１とユーザ端末１０−２とでは、時刻ｔ８−１と時刻ｔ８−２との時間差（＝出力タイミングの差ΔＴｏ）だけ、表示部１１−１、１１−２に表示されるタイミングにずれが生じ得る。
【００６１】
この出力部（表示部１１）への表示がされたことに応じて、ユーザからの操作、具体的には図６に示すような画像において、第１操作位置Ｐ１乃至第３操作位置Ｐ３での操作（タップ）を受け付ける。この操作を受け付けると、ユーザ端末１０の操作受付部１４は、操作タイミング情報を生成し、アプリケーションサーバ３０に送信する。アプリケーションサーバ３０の取得部３２は、操作タイミング情報を出力タイミング情報として、ユーザ端末１０から、受信部３３を介して取得する。
【００６２】
そして設定部３９は、上述したように、記憶部３１から取得部３２を介して取得した供給タイミング情報と、取得部３２が取得した出力タイミング情報とに基づいて、供給タイミング情報を設定する。具体的には、設定部３９は、各ユーザ端末１０について、記憶部３１から取得した供給タイミング情報（供給タイミングＴｆ）と、取得部３２が取得した出力タイミング情報（出力タイミングＴｏ）とに基づいて、各ユーザ端末１０間の出力遅延時間Ｔｄの差分（出力タイミングの差ΔＴｏ）を算出する。本実施形態では上述の通り、設定前の供給タイミングＴｆをユーザ端末１０−１とユーザ端末１０−２とで同時に設定しているため、ユーザ端末１０−１の出力タイミングＴｏ１とユーザ端末１０−２との差分を求めることにより、出力タイミングの差ΔＴｏを算出する。ここでは、ユーザ端末１０−１を基準として、ユーザ端末１０−２の出力タイミングの差ΔＴｏ２を算出する。
【００６３】
さらに、算出した出力タイミングの差ΔＴｏに応じたタイミングだけ、供給タイミングＴｆを早いタイミングに設定する。本実施形態に沿って説明すると、設定部３９は、図４に示すように記憶部３１に記憶している供給タイミングＴｆ２（供給タイミングＴｆ２−１等）のうち、まだ画像情報に付加していないものを、設定前の供給タイミングＴｆ２から、出力タイミングの差ΔＴｏ２だけ早い供給タイミングＴｆ２’に更新する。図８を用いて説明すると、設定部３９は、時刻ｔ７に設定されている供給タイミングＴｆ２を、時刻ｔ７から出力タイミングの差ΔＴｏだけ早い時刻ｔ７−２に設定する。この場合、供給タイミングＴｆ２’とは、時刻ｔ７−２である。
【００６４】
図８は、本実施形態による設定後の供給タイミングＴｆの一例を示すタイミング図である。同図が示す各動作のうち、時刻ｔ０から時刻ｔ６までは、図７を参照して説明した設定前の動作と同一である。上述したように、設定部３９が供給タイミングＴｆ２を供給タイミングＴｆ２’に設定した後においては、ユーザ端末１０−２の出力部（表示部１１−２）は、時刻ｔ７−２において供給された動画情報に基づく画像（動画）を表示する。これにより、ユーザ端末１０−１、およびユーザ端末１０−２は、いずれも、受信した動画情報に基づく画像（動画）を時刻ｔ８において表示する。このようにして、本実施形態のアプリケーションシステム１は、各ユーザ端末１０が備える表示部１１の出力遅延時間Ｔｄについて、各表示部１１間の差異があっても、各ユーザ端末１０において同じタイミングで画像（動画）を表示させることができる。
【００６５】
なお、図７及び図８において、ＡＰ処理部３５−１とＡＰ処理部３５−２との処理タイミング（例えば演算処理の開始タイミングｔ０）を異ならせているのは、同期部３８によってＡＰ処理部３５−１とＡＰ処理部３５−２とを同期させても、僅かに処理開始のタイミングがずれる場合があり得ることを示している。かかる場合であっても、各ＡＰ処理部３５が生成した画像（動画）が表示されるタイミング（例えば、時刻ｔ８）がそれぞれ一致していればよく、これによりユーザ端末１０毎の動画や音声の出力タイミングを同期させることができる。
【００６６】
次に、図９を参照して、本実施形態によるアプリケーションシステム１の動作例を説明する。図９は、本実施形態によるアプリケーションシステム１の動作例を示す図である。本実施形態のアプリケーションシステム１は、設定モードと通常動作モードとの２種類の動作モードを有している。このうち、設定モードにおいては、アプリケーションシステム１は、供給タイミング情報を設定する。また、通常動作モードにおいては、アプリケーションシステム１は、設定モードにおいて設定した供給タイミング情報を含む出力情報をユーザ端末１０に供給する。この２つの動作モードのうち、まず設定モードについて説明する。
【００６７】
［設定モードの動作］
ユーザによるユーザ端末１０−１、−２の操作と、図示しないログインサーバにおける処理とで、所定のログイン処理に成功すると、ユーザのログイン情報はアプリケーションサーバ３０に受け渡される。そしてアプリケーションサーバ３０の受信部３３が、ユーザ端末１０−１、−２から送信された利用開始要求を受信すると（ステップＳ１０−１、−２）、アプリケーション制御部３４は、ユーザ端末１０−１、−２に対応するＡＰ処理部３５−１、−２を生成する（ステップＳ３０−１、−２）。
【００６８】
ＡＰ処理部３５−１、−２は、ユーザ端末１０−１、−２から送信される指示情報に応じた所定の演算処理を行い、演算結果に基づくコマ画像を生成し、送信部３７に出力する処理を開始する（ステップＳ４０−１、−２）。このとき、ユーザ端末１０−１に送信される動画には、設定部３９によって供給タイミング情報が付加される。具体的には、ユーザ端末１０−１に送信される動画の各コマ画像には、図４に示すような供給タイミングＴｆ１−１、Ｔｆ１−２…を示す供給タイミング情報が設定部３９によってそれぞれ付加される。ユーザ端末１０−２に送信される動画の各コマ画像についても、ユーザ端末１０−２に送信される動画の各コマ画像と同様にして、設定部３９によって供給タイミング情報がそれぞれ付加される。
【００６９】
送信部３７は、ＡＰ処理部３５−１、−２から出力されるコマ画像をバッファリングし、動画配信に適したビットレートにエンコードしてストリーミング形式の動画を生成する処理を開始する（ステップＳ５０）。
【００７０】
送信部３７は、動画をストリーミング形式によって、ユーザ端末１０−１、−２に動画を送信する（ステップＳ６０−１、−２）。上述したように、この動画には、供給タイミング情報が付加されている。
【００７１】
ユーザ端末１０−１の出力制御部１３−１は、供給された画像情報に付加されている供給タイミング情報に応じたタイミングによって、表示部１１−１に対して、この画像情報に基づく画像信号を出力する。表示部１１−１は、出力制御部１３−１から画像信号が入力されると、画像信号が入力されたタイミングから出力遅延時間Ｔｄ（例えば、出力遅延時間Ｔｄ１）だけ遅延したタイミングにおいて、供給された動画情報に基づく画像（動画）を表示する。ユーザ端末１０−２の出力制御部１３−２も、出力制御部１３−１と同様にして、供給された画像情報に付加されている供給タイミング情報に応じたタイミングによって、表示部１１−２に対して、この画像情報に基づく画像信号を出力する。表示部１１−２は、出力制御部１３−２から画像信号が入力されると、画像信号が入力されたタイミングから出力遅延時間Ｔｄ（例えば、出力遅延時間Ｔｄ２）だけ遅延したタイミングにおいて、供給された動画情報に基づく画像（動画）を表示する。
【００７２】
次に、ユーザ端末１０−１は、操作受付部１４−１によってユーザからの操作を受け付ける。この操作を受け付けると、操作受付部１４−１は、操作タイミング情報を生成し、アプリケーションサーバ３０に送信する（ステップＳ７０−１）。ユーザ端末１０−２においても、ユーザ端末１０−１と同様に、操作受付部１４−２によってユーザからの操作を受け付ける。この操作を受け付けると、操作受付部１４−２は、操作タイミング情報を生成し、アプリケーションサーバ３０に送信する（ステップＳ７０−２）。
【００７３】
アプリケーションサーバ３０は、取得部３２によって、受信部３３がステップＳ７０−１、−２において受信した操作タイミング情報を出力タイミング情報として取得する。そしてアプリケーションサーバ３０は、設定部３９によって、上述したように、記憶部３１から取得した供給タイミング情報と、取得部３２が取得した出力タイミング情報とに基づいて供給タイミング情報を算出し、設定する。すなわち、設定部３９は、予め設定されている供給タイミング情報を設定する。このように供給タイミング情報を設定することにより、設定部３９は、ユーザ端末１０間における出力タイミングの差ΔＴｏの差異を低減することができる。
【００７４】
［通常モードの動作］
通常動作モードにおいて、アプリケーションサーバ３０は、上述した各ステップのうち、ステップＳ１０−１、−２からステップＳ６０−１、−２までの動作を繰り返し行う。これら各ステップのうち、ステップＳ４０−１、−２において、ＡＰ処理部３５−１、−２は、ユーザ端末１０−１、−２から送信される指示情報に応じた所定の演算処理を行い、演算結果に基づくコマ画像を生成し、送信部３７に出力する処理を開始する。このとき、ユーザ端末１０−１に送信される動画には、不図示の設定部３９によって供給タイミング情報が付加される。ここで、設定部３９によって動画に負荷される供給タイミング情報とは、上述した設定モードにおいて設定された供給タイミング情報である。したがって、いったん設定モードで供給タイミング情報を設定すれば、アプリケーションサーバ３０は、ユーザ端末１０−１、−２間における出力タイミングの差ΔＴｏの差異を低減した状態でアプリケーションをユーザ端末１０に提供することができる。
【００７５】
以上説明したように、本実施形態のアプリケーションシステム１は、取得部３２と、設定部３９とを備えている。この取得部３２は、所定の画像情報を出力する表示部１１（出力部）に対して画像信号を供給する出力制御部１３が、表示部１１（出力部）に画像信号を供給するタイミングを示す供給タイミング情報と、表示部１１（出力部）が画像情報を出力したタイミングを示す出力タイミング情報とを取得する。また、設定部３９は、取得部３２が取得した供給タイミング情報と出力タイミング情報とに基づいて、供給タイミング情報を設定し、設定した当該供給タイミング情報に基づいて、出力制御部１３に画像情報を供給させる。
【００７６】
これにより、本実施形態のアプリケーションシステム１は、供給タイミング情報と、出力タイミング情報とに基づいて、供給タイミング情報を設定することができる。したがって、アプリケーションシステム１は、ユーザ端末１０の出力部（例えば、表示部１１）の出力遅延時間Ｔｄに、ユーザ端末１０間において互いに差異が生じていても、出力部から画像情報が出力されるタイミングを揃えることができる。つまり、アプリケーションシステム１は、複数のユーザ端末１０を用いてゲームを提供する場合に、ユーザ端末１０間における出力タイミングのずれを低減することができる。
【００７７】
なお、アプリケーションシステム１は、算出した各ユーザ端末１０間における出力タイミングの差ΔＴｏを記憶部３１に記憶させるとともに、記憶部３１が記憶している出力タイミングの差ΔＴｏに基づいて、供給タイミング情報を設定する。これにより、アプリケーションシステム１は、１回だけ出力タイミングの差ΔＴｏを算出すれば、その後に出力タイミングの差ΔＴｏを算出することなく、供給タイミング情報を設定することができる。したがって、例えば、アプリケーションシステム１は、出力遅延時間Ｔｄが未知のユーザ端末１０を新たにユーザ端末群Ｇに追加する際の初期設定において、出力タイミングの差ΔＴｏを算出することにより、その後に出力タイミングの差ΔＴｏを算出することなく、供給タイミング情報を設定することができる。つまり、アプリケーションシステム１は、ユーザ端末１０間における出力タイミングのずれを低減するための手間を省力化することができる。
【００７８】
また、本実施形態のアプリケーションシステム１において、出力タイミング情報とは、出力制御部１３と、表示部１１（出力部）とを備えるユーザ端末１０の操作受付部１４によって検出された情報であり、取得部３２は、供給タイミング情報と、操作受付部１４が検出した出力タイミング情報とを取得する。これにより、アプリケーションシステム１は、出力タイミングの検出を、ユーザ端末１０が予め備える操作受付部１４を利用して行うことができる。つまり、アプリケーションシステム１は、出力タイミングを検出するための専用装置を備える必要がないため、構成を簡略化することができる。
【００７９】
また、本実施形態のアプリケーションシステム１において、設定部３９（出力タイミング制御部）は、取得部３２が取得した第１供給タイミング情報と、第２供給タイミング情報と、第１出力タイミング情報と、第２出力タイミング情報とに基づいて、第１供給タイミング情報を設定し、設定した当該第１供給タイミング情報に基づいて、出力制御部１３に画像情報を供給させるように構成してもよい。この場合には、設定部３９は、第１供給タイミング情報と、第２供給タイミング情報と、第１出力タイミング情報と、第２出力タイミング情報とを取得する。ここで、第１供給タイミング情報とは、ユーザ端末１０−１が備える出力制御部１３−１が出力部（例えば、表示部１１−１）に画像情報（第１出力情報）に基づく画像信号を供給するタイミングを示す情報である。同様に、第２供給タイミング情報とは、ユーザ端末１０−２が備える出力制御部１３−２が出力部（例えば、表示部１１−２）に画像情報（第２出力情報）に基づく画像信号を供給するタイミングを示す情報である。また、第１出力タイミング情報とは、ユーザ端末１０−１の表示部１１−１の出力タイミングに応じて、ユーザ端末１０−１が備える操作受付部１４−１（第１検出部）が受け付けた操作のタイミングが示す出力タイミング情報である。すなわち、第１出力タイミング情報とは、ユーザ端末１０−１の表示部１１−１が表示する画像情報に応じて、ユーザが操作受付部１４−１を操作したタイミングを示す情報である。また、第２出力タイミング情報とは、ユーザ端末１０−２の表示部１１−２の出力タイミングに応じて、ユーザ端末１０−１が備える操作受付部１４−１が受け付けた操作のタイミングが示す出力タイミング情報である。すなわち、第２出力タイミング情報とは、ユーザ端末１０−２の表示部１１−２が表示する画像情報に応じて、ユーザがユーザ端末１０−１の備える操作受付部１４−１を操作したタイミングを示す情報である。これにより、アプリケーションシステム１は、ユーザ端末群Ｇに含まれる複数のユーザ端末１０のうち、少なくとも、ユーザ端末１０−１が操作受付部１４−１を備えていれば、各ユーザ端末１０間の出力タイミングの差ΔＴｏを算出することができる。つまり、アプリケーションシステム１は、各ユーザ端末１０が操作受付部１４−１を備えていなくても、各ユーザ端末１０間の出力タイミングの差ΔＴｏを算出することができるため、ユーザ端末１０の構成を簡素化することができる。
【００８０】
また、本実施形態のアプリケーションシステム１において、設定部３９（出力タイミング制御部）は、取得部３２が取得した第１供給タイミング情報と、第２供給タイミング情報と、第１出力タイミング情報と、第２出力タイミング情報と、第３出力タイミング情報とに基づいて、第１供給タイミング情報を設定し、設定した当該第１供給タイミング情報に基づいて、出力制御部１３に画像情報を供給させるように構成してもよい。この場合には、取得部３２は、第１供給タイミング情報と、第２供給タイミング情報と、第１出力タイミング情報と、第２出力タイミング情報と、第３出力タイミング情報とを取得する。ここで、第３出力タイミング情報とは、ユーザ端末１０−１の表示部１１−１の出力タイミングに応じて、ユーザ端末１０−２が備える操作受付部１４−２（第２検出部）が受け付けた操作のタイミングが示す出力タイミング情報である。すなわち、第３出力タイミング情報とは、ユーザ端末１０−１の表示部１１−１が表示する画像情報に応じて、ユーザが操作受付部１４−２を操作したタイミングを示す情報である。これにより、アプリケーションシステム１は、ユーザ端末群Ｇに含まれる複数のユーザ端末１０のうち、ユーザ端末１０−１とユーザ端末１０−２との出力タイミングの差に加え、操作受付部１４の受付遅延時間の差をも算出することができる。ここで、操作受付部１４の受付遅延時間とは、ユーザが操作受付部１４に対して操作を行ってから、操作受付部１４が操作を検出して操作情報として受け付けるまでの遅延時間である。これにより、アプリケーションシステム１は、ユーザ端末１０間における受付遅延時間の差異に応じて、各ユーザ端末１０間の出力タイミングの差ΔＴｏを算出することができる。つまり、アプリケーションシステム１は、上述した構成に比して、より精密に供給タイミング情報を設定することができる。
【００８１】
また、本実施形態のアプリケーションシステム１において、同期部３８（出力タイミング制御部）は、取得部３２が取得した複数の出力タイミング情報に基づいて、供給タイミング情報を設定し、設定した当該供給タイミング情報に基づいて、出力制御部１３に画像情報を供給させるように構成してもよい。この場合には、取得部３２は、操作受付部１４がユーザからの複数回の入力を検出した複数の出力タイミング情報を取得する。これにより、アプリケーションシステム１は、操作受付部１４が受け付けた複数回の操作タイミングに基づいて（例えば、操作タイミングの平均値に基づいて）、ユーザ端末１０の各ユーザ端末１０間の出力タイミングの差ΔＴｏを算出することができる。この操作タイミングは、表示部１１が表示する画面に応じて、ユーザが操作するタイミングであるため、表示部１１が画像情報を表示してから、操作を行うまでの操作時間に差異が生じることがある。このアプリケーションシステム１によれば、この操作時間の差異を低減させることができるため、上述した構成に比して、より精密に供給タイミング情報を設定することができる。
【００８２】
なお、ここでは一例として、設定部３９は、複数のユーザ端末１０（例えば、ユーザ端末１０−１とユーザ端末１０−２）について供給タイミング情報を同時に設定する場合を説明したが、これに限られない。設定部３９は、ユーザ端末１０毎に異なる時刻において、供給タイミング情報を設定してもよい。例えば、設定部３９は、取得部３２がユーザ端末１０−１の出力タイミング情報を取得した後、ユーザ端末１０−２の出力タイミング情報を取得した時刻において、ユーザ端末１０−１の供給タイミング情報を基準にしたユーザ端末１０−２の供給タイミング情報を設定する。また、設定部３９は、取得部３２がユーザ端末１０−１の出力タイミング情報を取得した後、ユーザ端末１０−３の出力タイミング情報を取得した時刻において、ユーザ端末１０−１の供給タイミング情報を基準にしたユーザ端末１０−３の供給タイミング情報を設定する。このように、設定部３９は、基準になるユーザ端末１０（例えば、ユーザ端末１０−１）の出力タイミング情報と、供給タイミング情報の設定の対象になるユーザ端末１０−ｎの出力タイミング情報とが取得された時刻において、順次、供給タイミング情報を設定する。このように構成しても、設定部３９は、ユーザ端末１０間における出力タイミングの差ΔＴｏの差異を低減することができる。また、ユーザ端末１０が３台以上ある場合であっても対応可能となる。
【００８３】
［第２の実施形態]
本発明を実施するための第２の実施形態について、図面を参照して説明する。
図１０は、本発明の第２の実施形態に係るアプリケーションシステム１ａの構成の一例を示す構成図である。このアプリケーションシステム１ａとは、出力タイミング制御システムの一例である。アプリケーションシステム１ａは、アプリケーションサーバ３０ａが設定部３９ａ（出力タイミング制御部）を備える点において、上述したアプリケーションシステム１と相違する。なお、上述した実施形態における各構成と同一の構成については、同一の符号を付して説明を省略する。
【００８４】
アプリケーションシステム１ａは、アプリケーションサーバ３０ａを備えている。このアプリケーションサーバ３０ａは、設定部３９ａを備えている。この設定部３９ａが、供給タイミング情報を設定する構成について詳細に説明する。ここでは、一例として、ユーザ端末１０−２についての供給タイミングＴｆ２を設定する場合について説明する。
【００８５】
まず、設定部３９ａは、ユーザ端末１０−１の出力制御部１３−１が表示部１１−１に出力情報を供給する供給タイミングＴｆ１を示す供給タイミング情報を、記憶部３１から取得部３２を介して取得する。また、設定部３９ａは、ユーザ端末１０−２の出力制御部１３−２が表示部１１−２に出力情報を供給する供給タイミングＴｆ２を示す供給タイミング情報を、記憶部３１から取得部３２を介して取得する。ここでは、一例として出力情報が画像情報である場合について説明する。
【００８６】
次に、設定部３９ａは、各ユーザ端末１０についての出力タイミング情報を取得部３２から取得する。具体的には、設定部３９ａは、ユーザ端末１０−１の表示部１１−１の出力タイミングＴｏ１を示す出力タイミング情報と、ユーザ端末１０−２の表示部１１−２の出力タイミングＴｏ２を示す出力タイミング情報とを、取得部３２から取得する。この出力タイミング情報とは、取得した供給タイミングＴｆによって、出力制御部１３が表示部１１に画像信号を供給したことにより表示部１１が画像を出力した出力タイミングＴｏを示す出力タイミング情報である。
【００８７】
次に、設定部３９ａは、取得した出力タイミング情報が示す、各ユーザ端末１０間の出力タイミングの差（ずれ）を算出する。具体的には、設定部３９ａは、取得したユーザ端末１０−１の供給タイミングＴｆ１と出力タイミングＴｏ１との差分（出力遅延時間Ｔｄ１）を算出する。また、ユーザ端末１０−２の供給タイミングＴｆ２と出力タイミングＴｏ２との差分（出力遅延時間Ｔｄ２）を算出する。これにより、ユーザ端末１０−１、−２のそれぞれにおける、供給タイミングＴｆから出力タイミングＴｏまでに要する時間（出力遅延時間）が算出できる。さらに設定部３９ａは、出力遅延時間Ｔｄ１と出力遅延時間Ｔｄ２との差分である出力タイミングの差ΔＴｏを更に算出する。
【００８８】
一例としてユーザ端末１０−１の出力タイミングＴｏ１を基準とすると、出力遅延時間Ｔｄ１から出力遅延時間Ｔｄ２を減算する演算を行い、出力タイミングの差ΔＴｏ２を算出する。かかる演算を行うことにより、各ユーザ端末１０間における出力タイミングの差、すなわちユーザ端末１０−１とユーザ端末１０−２とで同時に画像情報（コマ画像）に基づく画像信号を出力制御部１３から表示部１１に対して出力した場合に、ユーザ端末１０−１を基準としてユーザ端末１０−２は画像情報が表示部１１に表示されるのがどの程度早いか（または遅いか）を算出することができる。
【００８９】
次に、設定部３９ａは、算出した出力タイミングの差ΔＴｏ２をユーザ端末１０−２の端末ＩＤ（Ｔ００２）と関連付けて記憶部３１に記憶させる。なお、ここでは一例として、設定部３９ａは、ユーザ端末１０−１の出力タイミングＴｏ１を基準にしたユーザ端末１０−２についての出力タイミングの差ΔＴｏ２を算出するとして説明したが、これに限られない。例えば、ユーザ端末１０−２の出力タイミングＴｏ２を基準にしたユーザ端末１０−１についての出力タイミングの差ΔＴｏ１を算出してもよい。
【００９０】
次に、設定部３９ａは、記憶部３１が記憶する出力タイミングの差に基づいて、供給タイミング情報を算出する。具体的には、設定部３９ａは、ユーザ端末１０−２の端末ＩＤ（Ｔ００２）と関連付けて記憶部３１が記憶する出力タイミングの差ΔＴｏ２を取得する。次に、設定部３９ａは、既に取得しているユーザ端末１０−２の供給タイミングＴｆ２と、取得した出力タイミングの差ΔＴｏ２とに基づいて、供給タイミングＴｆ２’を算出する。より具体的には、設定部３９ａは上述した（式１）によって供給タイミングＴｆ２’を算出する。
【００９１】
次に、設定部３９ａは、算出した供給タイミングＴｆ２’を、ユーザ端末１０−２についての新たな供給タイミング情報として、ユーザ端末１０−２の端末ＩＤ（Ｔ００２）と関連付けて記憶部３１に記憶させることにより、供給タイミングを設定する。これにより、ＡＰ処理部３５は、設定された供給タイミング情報と、生成した画像情報とを関連付けて、ユーザ端末１０に供給する。具体的には、ＡＰ処理部３５は、設定された供給タイミング情報と、生成した画像情報とを関連付けて、送信部３７およびネットワーク５を介してユーザ端末１０に供給する。ユーザ端末１０の出力制御部１３は、供給された画像情報に付与された供給タイミング情報に応じたタイミングによって、表示部１１に対して、この画像情報に基づく画像信号を出力する。このようにして同期部３８は、供給タイミングを設定することにより、出力遅延時間Ｔｄに差異があるユーザ端末１０間において、画像情報が出力される出力タイミングＴｏの差異を低減する。
【００９２】
以上説明したように、本実施形態のアプリケーションシステム１ａが備える設定部３９ａは、ユーザ端末１０−１の出力遅延時間Ｔｄ１と、ユーザ端末１０−２の出力遅延時間Ｔｄ２とをそれぞれ算出するとともに、算出した出力遅延時間Ｔｄ１と、出力遅延時間Ｔｄ２との差分である出力タイミングの差ΔＴｏを算出する。
【００９３】
このように構成しても、アプリケーションシステム１ａは、上述した実施形態と同様に、各ユーザ端末１０間における出力タイミングの差ΔＴｏを算出することができる。これにより、アプリケーションシステム１ａは、複数のユーザ端末１０を用いてゲームを提供する場合に、ユーザ端末１０間における出力タイミングのずれを低減することができる。さらに、アプリケーションシステム１ａによれば、ユーザ端末１０の出力遅延時間Ｔｄをユーザ端末１０毎に算出することができる。これにより、ユーザ端末１０−１の供給タイミングＴｆ１と、ユーザ端末１０−２の供給タイミングＴｆ２とが、互いに異なるタイミングであっても、各ユーザ端末１０間における出力タイミングの差ΔＴｏを算出することができる。したがって、例えば、先にユーザ端末１０−１の出力遅延時間Ｔｄ１を算出しておき、後にユーザ端末１０−２の出力遅延時間Ｔｄ２を算出するようにしても、各ユーザ端末１０間における出力タイミングの差ΔＴｏを算出することができる。
【００９４】
［第３の実施形態]
本発明を実施するための第３の実施形態について、図面を参照して説明する。
図１１は、本発明の第３の実施形態に係るアプリケーションシステム１ｂの構成の一例を示す構成図である。このアプリケーションシステム１ｂとは、出力タイミング制御システムの一例である。アプリケーションシステム１ｂは、アプリケーションサーバ３０ｂが設定部３９ｂ（出力タイミング制御部）を備える点において、上述した各アプリケーションシステムと相違する。なお、上述した実施形態における各構成と同一の構成については、同一の符号を付して説明を省略する。
【００９５】
アプリケーションシステム１ｂは、アプリケーションサーバ３０ｂを備えている。このアプリケーションサーバ３０ｂは、設定部３９ｂを備えている。この設定部３９ｂの概要について説明する。上述の図６を参照して説明したように、取得部３２は、ユーザがユーザ端末１０を操作（例えば、タップ）するタイミングを示す操作タイミング情報を、出力タイミング情報として取得する。ここで、ユーザは、表示部１１の上側（−Ｙ側）から下側（＋Ｙ側）に移動するように表示されるオブジェクトＯＢの画像を見ながらユーザ端末１０を操作する。このときユーザは、表示されるオブジェクトＯＢの位置が基準線ＳＬに表示されたタイミングにおいてユーザ端末１０を操作するのであるが、この操作のタイミングには時間的な誤差が生じる場合がある。例えば、オブジェクトＯＢの位置が基準線ＳＬに表示されたタイミングが基準タイミングであるとすると、オブジェクトＯＢが基準線ＳＬよりも上側（−Ｙ側）の位置に表示されているタイミングにおいて操作された場合には、操作のタイミングが基準タイミングよりも早くなる。逆に、オブジェクトＯＢが基準線ＳＬよりも下側（＋Ｙ側）の位置に表示されたタイミングにおいて操作された場合には、操作のタイミングが基準タイミングよりも遅くなる。このようにして、操作のタイミングと基準タイミングとに時間的な誤差が生じる場合があり、この場合には、出力タイミング情報にも時間的な誤差が生じる。本実施形態の設定部３９ｂは、上述したユーザが操作するタイミングの時間的な誤差の影響を低減させつつ、供給タイミングＴｆを設定する。
【００９６】
また、取得部３２は、上述のように、ユーザが操作するタイミングを、出力タイミング情報として取得する。このとき、ユーザが操作を行ってから、操作のタイミングを取得部３２が出力タイミング情報として取得するまでには遅延時間（操作受付遅延時間Ｔｅ）が発生する。この操作受付遅延時間Ｔｅは、ユーザ端末１０の構成に依存する。例えば、この操作受付遅延時間Ｔｅは、ユーザ端末１０の操作受付部１４の操作受付感度、操作受付処理の処理周期や演算性能などに依存する。したがって、ユーザ端末１０間において、この遅延時間が互いに異なる値になる場合があり、この場合には出力タイミング情報にもユーザ端末１０間の誤差が生じる。本実施形態の設定部３９ｂは、この操作受付遅延時間Ｔｅのユーザ端末１０間の誤差の影響を低減させつつ、供給タイミングＴｆを設定する。
【００９７】
まず、設定部３９ｂが、出力タイミング情報の時間的な誤差の影響を低減させる構成について説明する。ここでは、一例として、ユーザが、ユーザ端末１０−１の表示部１１−１に表示されるオブジェクトＯＢの画像を見ながら、ユーザ端末１０−１を操作する場合について説明する。
上述の図７を参照して説明したように、ユーザ端末１０−１の出力制御部１３−１は、受信した動画情報に基づく画像（動画）を、図７の時刻ｔ７において、表示部１１−１に供給する。ユーザ端末１０−１の表示部１１−１は、時刻ｔ７において供給された動画情報に基づく画像（動画）を表示する。ここで、表示部１１−１は、供給タイミングＴｆ１から出力遅延時間Ｔｄ１だけ遅延したタイミング、つまり時刻ｔ８−１において、供給された動画情報に基づく画像（動画）を表示する。この表示部１１−１への表示がされたことに応じて、ユーザからの操作、具体的には図６に示すような画像において、第１操作位置Ｐ１乃至第３操作位置Ｐ３での操作（タップ）を受け付ける。この操作を受け付けると、ユーザ端末１０−１の操作受付部１４−１は、操作タイミング情報を生成し、アプリケーションサーバ３０ｂに送信する。この操作タイミング情報は、上述したように、操作（タップ）の基準タイミングとの時間的な誤差である操作タイミング誤差ΔＴｃ１１を含んでいる。また、この操作タイミング情報は、上述したように、操作受付部１４−１の操作受付遅延時間Ｔｅ１を含んでいる。したがって、ユーザ端末１０−１の表示部１１−１が画像を表示する供給タイミングＴｆから、操作受付部１４−１が操作タイミング情報を生成するまでの時間を遅延時間Ｘ１１とすると、遅延時間Ｘ１１は、次の（式２）によって表すことができる。
【００９８】
遅延時間Ｘ１１＝出力遅延時間Ｔｄ１＋操作タイミング誤差ΔＴｃ１１＋操作受付遅延時間Ｔｅ１…（式２）
【００９９】
アプリケーションサーバ３０ｂの取得部３２は、この遅延時間Ｘ１１を示す操作タイミング情報を出力タイミング情報として、ユーザ端末１０−１から、受信部３３を介して取得する。
【０１００】
ここで、アプリケーションサーバ３０ｂは、ユーザ端末１０−１に対して繰り返し動画情報を供給する。ユーザ端末１０−１は、繰り返し供給される動画情報に基づいて、上述した操作タイミング情報を生成する手順を繰り返す。取得部３２は、操作受付部１４−１が操作タイミング情報を生成する毎に、生成される操作タイミング情報を出力タイミング情報として受信部３３を介して取得する。
【０１０１】
設定部３９ｂは、取得部３２が取得した複数の出力タイミング情報が示す遅延時間Ｘ１１を平均化する。この遅延時間Ｘ１１には、上述したように操作タイミング誤差ΔＴｃ１１が含まれている。この操作タイミング誤差ΔＴｃ１１とは、ユーザによる操作のタイミングと基準タイミングとの時間的な誤差であるため、平均化することにより、そのばらつきが低減される。ここでは、設定部３９ｂが遅延時間Ｘ１１を平均化したことにより、操作タイミング誤差ΔＴｃ１１が無視できる程度に小さくなった場合、例えば本実施形態では０（ゼロ）になった場合について説明する。この場合には、平均化後の遅延時間Ｘ１１’は、次の（式３）によって表すことができる。
【０１０２】
平均化後の遅延時間Ｘ１１’＝出力遅延時間Ｔｄ１＋操作受付遅延時間Ｔｅ１…（式３）
【０１０３】
そして設定部３９ｂは、記憶部３１から取得部３２を介して取得した供給タイミング情報と、（式３）による平均化後の遅延時間Ｘ１１’とに基づいて、上述した構成と同様にして供給タイミング情報を設定する。このようにして、設定部３９ｂは、操作タイミングのばらつきによるこの出力タイミング情報の時間的な誤差の影響を低減させる。
【０１０４】
次に、ユーザが、ユーザ端末１０−２の表示部１１−２に表示されるオブジェクトＯＢの画像を見ながら、ユーザ端末１０−１を操作する場合について説明する。なお、以下の説明においては、設定部３９ｂが遅延時間を平均化したことにより、操作タイミング誤差ΔＴｃが０（ゼロ）になっている場合について、それぞれ説明する。
上述したように、ユーザ端末１０−２の表示部１１−２は、供給タイミングＴｆ２から出力遅延時間Ｔｄ２だけ遅延したタイミングにおいて、供給された動画情報に基づく画像（動画）を表示する。この表示部１１−２への表示がされたことに応じて、ユーザは、ユーザ端末１０−１を操作（タップ）する。ユーザ端末１０−１の操作受付部１４−１は、この操作を受け付ける。この操作を受け付けると、ユーザ端末１０−１の操作受付部１４−１は、操作タイミング情報を生成し、アプリケーションサーバ３０ｂに送信する。この操作タイミング情報は、上述したように、操作（タップ）の基準タイミングとの時間的な誤差である操作タイミング誤差ΔＴｃ２１を含んでいる。また、この操作タイミング情報は、上述したように、操作受付部１４−１の操作受付遅延時間Ｔｅ１を含んでいる。したがって、ユーザ端末１０−２の表示部１１−２の供給タイミングＴｆから、ユーザ端末１０−１の操作受付部１４−１が操作タイミング情報を生成するまでの時間を遅延時間Ｘ２１とすると、平均化後の遅延時間Ｘ２１’は、次の（式４）によって表すことができる。
【０１０５】
平均化後の遅延時間Ｘ２１’＝出力遅延時間Ｔｄ２＋操作受付遅延時間Ｔｅ１…（式４）
【０１０６】
ここで、設定部３９ｂは、（式３）と（式４）との差に基づいて、（式５）に示すようにして、ユーザ端末１０−１の出力遅延時間Ｔｄ１と、ユーザ端末１０−２の出力遅延時間Ｔｄ２との差を算出する。
【０１０７】
（平均化後の遅延時間Ｘ２１’）−（平均化後の遅延時間Ｘ１１’）
＝（出力遅延時間Ｔｄ２）−（出力遅延時間Ｔｄ１）
＋（操作受付遅延時間Ｔｅ１）−（操作受付遅延時間Ｔｅ１）
＝（出力遅延時間Ｔｄ２）−（出力遅延時間Ｔｄ１）…（式５）
【０１０８】
ここで、（式５）の左辺が示す平均化後の遅延時間Ｘ１１’と平均化後の遅延時間Ｘ２１’との差とは、ユーザ端末１０−１の出力タイミングＴｏ１を基準にしたユーザ端末１０−２についての出力タイミングの差ΔＴｏ２である。この出力タイミングの差ΔＴｏ２とは、出力タイミングの差ΔＴｏの一例である。設定部３９ｂは、上述した各設定部と同様にして、ユーザ端末１０−１の出力タイミングＴｏ１を基準にしたユーザ端末１０−２についての出力タイミングの差ΔＴｏ２を算出する。これにより、（式５）から（式６）が導かれる。
【０１０９】
出力タイミングの差ΔＴｏ２＝（出力遅延時間Ｔｄ２）−（出力遅延時間Ｔｄ１）…（式６）
【０１１０】
ここで、（式６）の右辺が示す出力遅延時間Ｔｄ２と、出力遅延時間Ｔｄ１との差は、ユーザ端末１０−１とユーザ端末１０−２との出力遅延時間Ｔｄの差異を示す。したがって、設定部３９ｂは、出力タイミングの差ΔＴｏ２を低減するように、供給タイミングＴｆを設定することにより、ユーザ端末１０−１とユーザ端末１０−２との出力遅延時間Ｔｄのばらつき（誤差）による影響を低減することができる。
【０１１１】
また、設定部３９ｂは、算出した出力タイミングの差ΔＴｏ２を、例えば、アプリケーションサーバ３０ｂが備える不図示のタイミング判定部に対して供給することもできる。このタイミング判定部は、設定部３９ｂから供給される出力タイミングの差ΔＴｏ２に基づいて、各ユーザ端末１０による操作のタイミングを判定する。具体的には、このタイミング判定部は、出力タイミングの差ΔＴｏ２に基づいて、ユーザ端末１０−１の操作のタイミングを基準にした、ユーザ端末１０−２についての操作のタイミングを判定する。これにより、このタイミング判定部は、ユーザ端末１０間の操作受付遅延時間Ｔｅの差異を低減して、各ユーザ端末１０による操作のタイミングを判定することができる。
【０１１２】
次に、設定部３９ｂが、ユーザ端末１０間における操作受付遅延時間Ｔｅの誤差（ばらつき）の影響を低減させる構成について説明する。ここでは、一例として、ユーザが、ユーザ端末１０−１の表示部１１−１に表示されるオブジェクトＯＢの画像を見ながら、ユーザ端末１０−２を操作する場合について説明する。
【０１１３】
上述したように、ユーザ端末１０−１の表示部１１−１は、供給タイミングＴｆ１から出力遅延時間Ｔｄ１だけ遅延したタイミングにおいて、供給された動画情報に基づく画像（動画）を表示する。この表示部１１−１への表示がされたことに応じて、ユーザは、ユーザ端末１０−２を操作（タップ）する。ユーザ端末１０−２の操作受付部１４−２は、この操作を受け付ける。この操作を受け付けると、ユーザ端末１０−２の操作受付部１４−２は、操作タイミング情報を生成し、アプリケーションサーバ３０ｂに送信する。この操作タイミング情報は、上述したように、操作（タップ）の基準タイミングとの時間的な誤差である操作タイミング誤差ΔＴｃ１２を含んでいる。また、この操作タイミング情報は、上述したように、操作受付部１４−２の操作受付遅延時間Ｔｅ２を含んでいる。したがって、ユーザ端末１０−１の表示部１１−１の供給タイミングＴｆから、ユーザ端末１０−２の操作受付部１４−２が操作タイミング情報を生成するまでの時間を遅延時間Ｘ１２とすると、平均化後の遅延時間Ｘ１２’は、次の（式７）によって表すことができる。
【０１１４】
平均化後の遅延時間Ｘ１２’＝出力遅延時間Ｔｄ１＋操作受付遅延時間Ｔｅ２…（式７）
【０１１５】
取得部３２は、上述した（式３）による平均化後の遅延時間Ｘ１１’と、（式７）による平均化後の遅延時間Ｘ１２’と、（式４）による平均化後の遅延時間Ｘ２１’とを出力タイミング情報として、それぞれ取得する。
ここで、（式３）と（式７）との差を、（式８）に示すよう求めると、ユーザ端末１０−１の操作受付遅延時間Ｔｅ１と、ユーザ端末１０−２の操作受付遅延時間Ｔｅ２との差を算出することができる。
【０１１６】
（平均化後の遅延時間Ｘ１２’）−（平均化後の遅延時間Ｘ１１’）
＝（出力遅延時間Ｔｄ１）−（出力遅延時間Ｔｄ１）
＋（操作受付遅延時間Ｔｅ２）−（操作受付遅延時間Ｔｅ１）
＝（操作受付遅延時間Ｔｅ２）−（操作受付遅延時間Ｔｅ１）…（式８）
【０１１７】
ここで、（式８）の左辺が示す平均化後の遅延時間Ｘ１１’と平均化後の遅延時間Ｘ１２’との差は、ユーザ端末１０−１の操作受付遅延時間Ｔｅ１を基準にしたユーザ端末１０−２についての操作受付遅延時間の差ΔＴｅ２を示す。設定部３９ｂは、上述した各設定部と同様にして、ユーザ端末１０−１の出力タイミングＴｏ１を基準にしたユーザ端末１０−２についての操作受付遅延時間の差ΔＴｅ２を算出する。これにより、（式８）から（式９）が導かれる。
【０１１８】
操作受付遅延時間の差ΔＴｅ２＝（操作受付遅延時間Ｔｅ２）−（操作受付遅延時間Ｔｅ１）…（式９）
【０１１９】
ここで、（式９）の右辺が示す操作受付遅延時間Ｔｅ２と、操作受付遅延時間Ｔｅ１との差は、ユーザ端末１０−１とユーザ端末１０−２との操作受付遅延時間Ｔｅの差異を示す。したがって、設定部３９ｂは、ユーザ端末１０−１とユーザ端末１０−２との操作受付遅延時間の差ΔＴｅ２を低減するように供給タイミングＴｆを設定することによって、操作受付遅延時間Ｔｅの差異による影響を低減することできる。
【０１２０】
［第４の実施形態]
本発明を実施するための第４の実施形態について、図面を参照して説明する。
図１２は、本発明の第４の実施形態に係るアプリケーションシステム１ｃの構成の一例を示す構成図である。このアプリケーションシステム１ｃとは、出力タイミング制御システムの一例である。アプリケーションシステム１ｃは、アプリケーションサーバ３０ｃが操作（タップ）すべきタイミングに表示される画像を示す情報（タップ画像フラグ）をユーザ端末１０に通知する点において、上述した各アプリケーションシステムと相違する。なお、上述した実施形態における各構成と同一の構成については、同一の符号を付して説明を省略する。
【０１２１】
アプリケーションシステム１ｃは、アプリケーションサーバ３０ｃを備えている。このアプリケーションサーバ３０ｃは、記憶部３１ｃと、アプリケーション制御部３４ｃと、設定部３９ｃを備えている。このアプリケーション制御部３４ｃは、ＡＰ処理部３５ｃとしてのＡＰ処理部３５ｃ−１、−２を備えている。
【０１２２】
図１３は、本実施形態のＡＰ処理部３５ｃが生成する出力情報の一例を示す図である。ＡＰ処理部３５ｃ−１はオブジェクトＯＢ１の画像が表示部１１の上端（−Ｙ側端）から下端（＋Ｙ側端）の間の各位置に表示されるように、供給タイミングＴｆ毎にコマ画像を生成する。なお、同図には、供給タイミングＴｆ毎に生成される各コマ画像を同時に表示した状態を示している。具体的には、ＡＰ処理部３５ｃ−１は、オブジェクトＯＢ１の画像がＹ方向の位置Ｙ１に表示されるコマ画像（画像ＩＤ：Ｆｇ０１）を生成する。同様にして、ＡＰ処理部３５ｃ−１は、オブジェクトＯＢ１の画像がＹ方向の位置Ｙ２〜Ｙ５に表示されるコマ画像（画像ＩＤ：Ｆｇ０２〜Ｆｇ０５）をそれぞれ生成する。また、ＡＰ処理部３５ｃ−１は、オブジェクトＯＢ１の画像が基準線ＳＬの位置に表示されるコマ画像（画像ＩＤ：Ｆｇ０６）を生成する。ＡＰ処理部３５ｃ−１、以下、同様にしてコマ画像を順次生成する。ユーザ端末１０の表示部１１は、このようにして生成されるコマ画像を順次表示する。これにより、オブジェクトＯＢ１の画像が上端（−Ｙ側端）から下端（＋Ｙ側端）に移動するように表示される。
【０１２３】
ＡＰ処理部３５ｃ−１は、コマ画像を生成する際に、各コマ画像にタップ画像フラグ（０または１）を設定する。ここで、タップ画像フラグとは、ユーザが操作（タップ）をすべきタイミングにおいて表示されるコマ画像を１とし、ユーザが操作（タップ）をすべきでないタイミングにおいて表示されるコマ画像を０とする情報である。また、ユーザが操作（タップ）をすべきタイミングにおいて表示される画像とは、上述のコマ画像の場合においては、オブジェクトＯＢ１の画像が基準線ＳＬの位置に表示されるコマ画像（画像ＩＤ：Ｆｇ０６）である。ＡＰ処理部３５ｃ−１は、オブジェクトＯＢ１の画像が基準線ＳＬの位置に表示されるコマ画像（画像ＩＤ：Ｆｇ０６）について、タップ画像フラグを１に設定し、他のコマ画像（画像ＩＤ：Ｆｇ０１〜Ｆｇ０５等）について、タップ画像フラグを０に設定する。
【０１２４】
図１４は、本実施形態の記憶部３１ｃが記憶する情報の一例を示す図である。
記憶部３１ｃは、図１４に示すように、ユーザ端末１０−１の端末ＩＤ（Ｔ００１）と、ユーザ端末１０−１の表示部１１−１に表示する画像を生成するＡＰ処理部３５−１のＡＰ処理部ＩＤ（ＡＰ０１）と、画像ＩＤ（Ｆｇ０１〜Ｆｇ０６等）と、ユーザ端末１０−１の表示部１１−１の供給タイミングＴｆ（供給タイミングＴｆ１−１等）と、ＡＰ処理部３５ｃ−１が設定したタップ画像フラグ（０または１）とを関連付けて記憶する。
【０１２５】
再び図１２を参照して、アプリケーションシステム１ｃの構成の説明を続ける。
設定部３９ｃは、上述した各実施形態と同様にして、ＡＰ処理部３５ｃによって生成された画像情報に、所定の供給タイミング情報（供給タイミングＴｆ）を付加する。具体的には、設定部３９ｃは、例えばＡＰ処理部３５ｃ−１により生成された画像情報であるコマ画像に、記憶部３１ｃから取得部３２を介して取得した、ＡＰ処理部３５ｃ−１に関連付けられている供給タイミング情報（供給タイミングＴｆ１）を付加し、送信部３７に受け渡す。
【０１２６】
さらに、設定部３９ｃは、記憶部３１ｃから取得部３２を介して取得した、各コマ画像の画像ＩＤに関連付けられているタップ画像フラグ（０または１）を、送信部３７に受け渡す。
【０１２７】
送信部３７は、上述した各実施形態と同様にして、ＡＰ処理部３５ｃ−１によってユーザ端末群Ｇに含まれるユーザ端末１０のそれぞれに応じて生成され、設定部３９ｃにより供給タイミング情報が付加された画像情報を、ユーザ端末群Ｇに含まれるユーザ端末１０のそれぞれに送信する。ここでは、送信部３７は、上述の画像情報を、ユーザ端末１０−１に送信する。
【０１２８】
さらに、送信部３７は、各コマ画像の画像ＩＤに関連付けられているタップ画像フラグを、ユーザ端末群Ｇに含まれるユーザ端末１０のそれぞれに送信する。ここでは、送信部３７は、タップ画像フラグを、ユーザ端末１０−１に送信する。
【０１２９】
なお、送信部３７は、タップ画像フラグを、画像情報に付加してユーザ端末１０のそれぞれに送信してもよく、画像情報とは別にユーザ端末１０のそれぞれに送信してもよい。このようにタップ画像フラグを画像情報とは別にユーザ端末１０のそれぞれに送信する場合には、送信部３７は、記憶部３１ｃが関連付けて記憶するタップ画像フラグと供給タイミングＴｆとを、ユーザ端末１０のそれぞれに送信する。
【０１３０】
このように構成しても、アプリケーションシステム１ｃは、各ユーザ端末１０間の出力タイミングの差ΔＴｏを算出することができる。さらに、アプリケーションシステム１ｃによれば、各ユーザ端末１０において、タップ画像フラグを出力遅延時間Ｔｄの測定開始タイミングを示す情報として利用することができる。具体的には、各ユーザ端末１０において、値が１であるタップ画像フラグが付与されたコマ画像（すなわち、ユーザが操作（タップ）をすべきタイミングにおいて表示されるコマ画像）を表示するタイミングを、出力遅延時間Ｔｄの測定開始タイミングにする。このアプリケーションシステム１ｃによれば、各ユーザ端末１０において、出力遅延時間Ｔｄを測定することができる。
【０１３１】
［第５の実施形態]
次に、本発明を実施するための第５の実施形態について、図面を参照して説明する。なお、上述した各実施形態における各構成と同一の構成については、同一の符号を付して説明を省略する。
【０１３２】
図１５は、本発明の第５の実施形態に係るアプリケーションシステム１ｄの構成の一例を示す構成図である。上述した第１の実施形態においては、アプリケーションサーバ３０が、記憶部３１から同期部３８の各構成を備える例を示したが、アプリケーションシステム１ｄが備える各構成は、クラウド環境やネットワーク環境、ユーザ数の規模、アプリケーションシステム１ｄを構成するために用意されたハードウェアの数やスペック等に応じて、任意の台数のコンピュータ装置に分散または集約して配置することができる。本実施形態のアプリケーションシステム１ｄは、アプリケーションシステム１と同様の構成であるが、アプリケーションサーバ３０ｄ（アプリケーション制御システム）として、記憶サーバ３１ｄと、取得サーバ３２ｄと、受信サーバ３３ｄと、複数のアプリケーション制御サーバ３４ｄ（アプリケーション制御サーバ３４ｄ−１、アプリケーション制御サーバ３４ｄ−２、・・・）と、送信サーバ３７ｄと、同期サーバ３８ｄと、設定サーバ３９ｄ（出力タイミング制御サーバ）とを備えている。なお、本実施形態では、アプリケーションサーバ３０ｄがアプリケーション管理装置の一例である。
【０１３３】
記憶サーバ３１ｄは、第１の実施形態における記憶部３１と同様の構成である。取得サーバ３２ｄは、第１の実施形態における取得部３２と同様の構成である。受信サーバ３３ｄは、第１の実施形態における受信部３３と同様の構成である。アプリケーション制御サーバ３４ｄは、第１の実施形態におけるアプリケーション制御部３４と同様の構成である。送信サーバ３７ｄは、第１の実施形態における送信部３７と同様の構成である。同期サーバ３８ｄは、第１の実施形態における同期部３８と同様の構成である。設定サーバ３９ｄは、第１の実施形態における設定部３９と同様の構成である。このような構成によっても、上述した第１の実施形態と同様のアプリケーションを提供することができる。
【０１３４】
［第６の実施形態]
次に、本発明を実施するための第６の実施形態について、図面を参照して説明する。なお、上述した各実施形態における各構成と同一の構成については、同一の符号を付して説明を省略する。
【０１３５】
図１６は、本発明の第６の実施形態に係るアプリケーションシステム１ｅの構成の一例を示す構成図である。このアプリケーションシステム１ｅとは、出力タイミング制御システムの一例である。アプリケーションシステム１ｅは、アプリケーションサーバ３０ｅが、ネットワーク５を介してユーザ端末１０ｅと接続される点において、上述した各アプリケーションシステムと相違する。
【０１３６】
ユーザ端末１０ｅは、上述したユーザ端末１０に相当する。このユーザ端末１０ｅは、上述した表示部１１と、音声出力部１２と、出力制御部１３とに加えて、検出部１５を備えている。ここで、ユーザ端末１０ｅ−１は、上述した表示部１１−１と、音声出力部１２−１と、出力制御部１３−１とに加えて、検出部１５−１を備えている。同様に、ユーザ端末１０ｅ−２は、上述した表示部１１−２と、音声出力部１２−２と、出力制御部１３−２とに加えて、検出部１５−２を備えている。これら検出部１５−１および検出部１５−２とは、検出部１５の一例である。
【０１３７】
ユーザ端末１０ｅの検出部１５は、カメラ等の検出デバイスを備えており、表示部１１によって画像情報が出力される出力タイミングを検出する。また、検出部１５は、アプリケーションサーバ３０ｅからネットワーク５を介してユーザ端末１０ｅに送信される動画情報に含まれる供給タイミング情報を取得する。この供給タイミング情報とは、上述した各実施形態における供給タイミング情報に相当する。
【０１３８】
次に、検出部１５は、検出した出力タイミングと、取得した供給タイミング情報が示すタイミングとに基づいて、検出タイミング情報を生成する。この検出タイミング情報とは、表示部１１によって出力情報が出力される出力タイミングを示す情報である。すなわち、検出タイミング情報は、上述した各実施形態における操作タイミング情報に相当する。以下、一例として、出力情報が画像情報である場合について説明する。
【０１３９】
検出部１５は、供給タイミング情報が示すタイミングを基準にして、表示部１１によって画像情報が出力される出力タイミングを検出し、検出したタイミングを示す検出タイミング情報を生成する。より具体的には、検出部１５は、表示部１１が、上述した図６に示す基準線ＳＬに達したオブジェクトＯＢの画像を表示したタイミングを検出して、検出したタイミングを示す検出タイミング情報を生成する。この検出タイミング情報は、表示部１１の基準線ＳＬにオブジェクトＯＢが表示されたタイミングを示している。
【０１４０】
上述した各実施形態においては、ユーザ端末１０の操作受付部１４は、ユーザから指示情報が入力されると、入力された指示情報を受け付けて操作情報を生成するとともに、当該指示情報を受け付けたタイミングを示す操作タイミング情報を生成する。一方、本実施形態のユーザ端末１０ｅは、検出部１５を備えることにより、ユーザから指示情報が操作受付部１４に入力されるタイミングを検出することに代えて、表示部１１によって画像情報が出力される出力タイミングを検出することができる。すなわち、ユーザ端末１０ｅは、ユーザの操作によらずに、表示部１１によって画像情報が出力される出力タイミングを検出することができる。
【０１４１】
アプリケーションサーバ３０ｅの受信部３３ｅは、ユーザ端末１０ｅの検出部１５が検出した検出タイミング情報を、ネットワーク５を介して受信する。また、アプリケーションサーバ３０ｅの取得部３２ｅは、受信部３３ｅがユーザ端末１０ｅからネットワーク５を介して受信した検出タイミング情報を、ユーザ端末１０ｅの表示部１１の出力タイミングＴｏを示す出力タイミング情報として取得する。すなわち、取得部３２ｅは、上述した各実施形態の取得部が取得する操作タイミング情報に代えて、検出部１５が検出した検出タイミング情報を取得する。上述した具体例においては、取得部３２ｅは、表示部１１の基準線ＳＬにオブジェクトＯＢが表示されたタイミングを示す検出タイミング情報を、ユーザ端末１０ｅの表示部１１の出力タイミングＴｏを示す出力タイミング情報として取得する。
【０１４２】
アプリケーションサーバ３０ｅの設定部３９は、上述した各実施形態と同様にして、取得部３２ｅが取得した出力タイミング情報が示す、各ユーザ端末１０間の出力タイミングの差（ずれ）を算出する。例えば、検出部１５がカメラを備えている場合に、設定部３９は、あるユーザ端末１０の検出部１５が備えるカメラが、他のユーザ端末１０の表示部１１に表示される画像を撮像することにより生成される検出タイミング情報に基づいて、各ユーザ端末１０間の出力タイミングの差（ずれ）を算出する。具体的には、ユーザ端末１０ｅ−１の検出部１５−１は、ユーザ端末１０ｅ−２の表示部１１−２に表示される画像をカメラによって撮像することにより、ユーザ端末１０ｅ−２についての検出タイミング情報を生成する。設定部３９は、ユーザ端末１０ｅ−２の表示部１１−２の基準線ＳＬにオブジェクトＯＢが表示されたタイミングを示す検出タイミング情報を、表示部１１−２の出力タイミングＴｏ２を示す出力タイミング情報として取得する。また、ユーザ端末１０ｅ−２の検出部１５−２は、ユーザ端末１０ｅ−１の表示部１１−１に表示される画像をカメラによって撮像することにより、ユーザ端末１０ｅ−１についての検出タイミング情報を生成する。設定部３９は、ユーザ端末１０ｅ−１の表示部１１−１の基準線ＳＬにオブジェクトＯＢが表示されたタイミングを示す検出タイミング情報を、表示部１１−１の出力タイミングＴｏ１を示す出力タイミング情報として取得する。設定部３９は、取得したユーザ端末１０ｅ−１の出力タイミングＴｏ１と、取得したユーザ端末１０ｅ−２の出力タイミングＴｏ２との差分である出力タイミングの差ΔＴｏを算出する。
【０１４３】
このように構成することによっても、アプリケーションシステム１ｅの設定部３９は、各ユーザ端末１０ｅ間における出力タイミングの差、すなわちユーザ端末１０ｅ−１とユーザ端末１０ｅ−２とで同時に画像情報（コマ画像）に基づく画像信号を出力制御部１３から表示部１１に対して出力した場合に、ユーザ端末１０ｅ−１を基準としてユーザ端末１０ｅ−２は画像情報が表示部１１に表示されるのがどの程度早いか（または遅いか）を算出することができる。
【０１４４】
この検出部１５についての検出遅延時間が、各ユーザ端末１０ｅについて既知であれば、ユーザ端末１０ｅ毎に既知である検出遅延時間に基づいて、出力タイミングの差ΔＴｏを算出することができる。ここで検出遅延時間とは、表示部１１によって画像情報が出力されてから、出力されたことを検出して検出タイミング情報を生成するまでの時間である。すなわち、アプリケーションシステム１ｅは、ユーザ端末１０ｅ間における検出遅延時間の差異に応じて、各ユーザ端末１０間の出力タイミングの差ΔＴｏを算出することができる。ここで、検出部１５は、カメラ等の検出デバイスであり、タイミングの検出においては上述した各実施形態のようにユーザの操作が介在しないため、操作タイミングの誤差が生じない。したがって、アプリケーションシステム１ｅは、上述した各実施形態の構成に比して、より精密に供給タイミング情報を設定することができる。
【０１４５】
さらに、アプリケーションシステム１ｅによれば、アプリケーションサーバ３０ｅの取得部３２ｅは、ユーザの操作を介さずに出力タイミング情報を取得することができるため、供給タイミング情報の設定を自動化することができる。
【０１４６】
なお、表示部１１が表示する画像情報とは、所定の周期（例えば、１秒に１回）明滅する画像、所定の周期で白黒が反転する画像、または所定の周期で模様が変わる画像であってもよい。また、表示部１１が表示する画像情報とは、明滅、白黒反転、または模様が変わる周期が可変であってもよい。
【０１４７】
また、検出部１５は、上述したカメラ等の検出デバイスに代えて、マイク等の検出デバイスを備え、音声出力部１２によって音声情報が出力される出力タイミングを検出してもよい。このように構成することで、複数のユーザ端末１０ｅ間における、音声情報が出力される出力タイミングの差を検出することができる。さらに、検出部１５は、画像情報の出力タイミングの差ΔＴｏｇを出力タイミングの差ΔＴｏとして検出するカメラ等の検出デバイスを備え、音声情報の出力タイミングの差ΔＴｏｓを出力タイミングの差ΔＴｏとして検出するマイク等の検出デバイスを備え、画像情報の出力タイミングの差と音声情報の出力タイミングの差の両方を検出可能としていてもよい。
【０１４８】
以上、本発明の実施の形態について図面を参照して詳述したが、具体的な構成はその実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計等も含まれる。また、各実施形態は、上記の各実施形態を組み合せて実施してもよい。
【０１４９】
なお、上記各実施形態においては、アプリケーションサーバ３０、３０ａ〜３０ｄ（以下、単に「アプリケーションサーバ」と記載する。）とユーザ端末１０とは、図示しない時刻情報提供サーバからの信号を受信して時刻の同期を行っていることとしたが、これに限られるものではなく、時刻を同期できるものであればいかなる構成を用いてもよい。さらに、時刻の同期は、少なくともユーザ端末１０間で行われていればよい。
【０１５０】
また、供給タイミング情報の設定は、各ユーザ端末１０で行う構成としてもよい。すなわち、アプリケーションサーバの設定部３９により、上記実施形態で説明したように出力タイミングの差ΔＴｏ（ΔＴｏ２等）を算出する。また、当該算出した出力タイミングの差ΔＴｏを各ユーザ端末１０に送信し、記憶させる。そしてＡＰ処理部３５により生成される画像情報については、設定を行う前の供給タイミング情報を付加して、各ユーザ端末１０に送信する。画像情報を受信したユーザ端末１０は、記憶した出力タイミングの差ΔＴｏに基づき、画像情報に付加された供給タイミング情報の設定を行い、この設定された供給タイミングＴｆ’に基づいて、出力制御部１３から表示部１１に対して、この画像情報に基づく画像信号を供給する。
【０１５１】
なお、上記各実施形態においては、ユーザ端末１０が２台である場合を例に説明したが、これに限られるものではなく、ユーザ端末が３台以上であっても適用できるものである。すなわち、例えばユーザ端末が３台の場合は、特定のユーザ端末を基準端末とし、他の２台のユーザ端末のそれぞれが基準端末とどの程度の出力遅延時間Ｔｄの差があるかどうかを算出する。
【０１５２】
なお、アプリケーションサーバが備える各部は、他の装置から各部の機能を実現するためのプログラムをダウンロードすることにより機能が実現されるものであってもよく、他の装置が有するプログラムによって機能が実現されるものであってもよい。
【０１５３】
なお、上記の各実施形態におけるユーザ端末１０は、他の装置からこれらのユーザ端末１０の各部の機能を実現するためのプログラムをダウンロードすることにより機能が実現されるものであってもよく、他の装置が有するプログラムによって機能が実現されるものであってもよい。
【０１５４】
なお、このアプリケーションサーバが備える各部は、専用のハードウェアにより実現されるものであってもよく、また、このサーバが備える各部はメモリおよびＣＰＵ（中央演算装置）により構成され、アプリケーションサーバが備える各部の機能を実現するためのプログラムをメモリにロードして実行することによりその機能を実現させるものであってもよい。
【０１５５】
また、アプリケーションサーバが備える各部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより、サーバが備える各部による処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
【０１５６】
また、「コンピュータシステム」は、マークアップ言語で記述されたいわゆるウェブページの形態によって情報を提供する機能およびその情報をブラウザで表示する機能を含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
【符号の説明】
【０１５７】
１、１ａ、１ｂ、１ｃ、１ｄ、１ｅ…アプリケーションシステム、５…ネットワーク、１０、１０ｅ…ユーザ端末、３０、３０ａ、３０ｂ、３０ｃ、３０ｄ、３０ｅ…アプリケーションサーバ、３１、３１ｃ…記憶部、３２、３２ｅ…取得部、３３、３３ｅ…受信部、３４、３４ｃ…アプリケーション制御部、３５、３５ｃ…アプリケーション処理部、３７…送信部、３８…同期部、３９、３９ａ、３９ｂ、３９ｃ…設定部（出力タイミング制御部）、３１ｄ…記憶サーバ、３２ｄ…取得サーバ、３３ｄ…受信サーバ、３４ｄ…アプリケーション制御サーバ、３７ｄ…送信サーバ、３８ｄ…同期サーバ、３９ｄ…設定サーバ（出力タイミング制御サーバ）
【図１】
2014109732.tif 000003
【図２】
2014109732.tif 000004
【図３】
2014109732.tif 000005
【図４】
2014109732.tif 000006
【図５】
2014109732.tif 000007
【図６】
2014109732.tif 000008
【図７】
2014109732.tif 000009
【図８】
2014109732.tif 000010
【図９】
2014109732.tif 000011
【図１０】
2014109732.tif 000012
【図１１】
2014109732.tif 000013
【図１２】
2014109732.tif 000014
【図１３】
2014109732.tif 000015
【図１４】
2014109732.tif 000016
【図１５】
2014109732.tif 000017
【図１６】
2014109732.tif 000018