(57)【要約】  ＨＴＴＰのもとで、複数のコンテンツ再生装置でのコンテンツ制御を同期させるようにコンテンツ同期制御装置が各コンテンツ再生装置を制御することができるコンテンツ同期システムを提供する。問い合わせ受信手段８２は、各コンテンツ再生装置９０から、そのコンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせを受信する。待機時間決定手段８３は、問い合わせの受信周期の基準に基づいて、各コンテンツ再生装置９０からの問い合わせの受信時刻が揃うように、問い合わせの送信元のコンテンツ再生装置が問い合わせ応答を受信してから次の問い合わせを送信するまでの待機時間を決定する。問い合わせ応答送信手段８５は、待機時間を含む問い合わせ応答をコンテンツ再生装置に返す。このとき、再生制御コマンドおよびその制御の開始時刻が定まっていれば、それらの情報も問い合わせ応答に含める。
2013046571.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツを再生する複数のコンテンツ再生装置と、
前記複数のコンテンツ再生装置におけるコンテンツ制御を同期させるコンテンツ同期制御装置とを備え、
前記コンテンツ同期制御装置は、
コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置で同期して実行されることを要求する要求情報を各コンテンツ再生装置から受信する要求情報受信手段と、
各コンテンツ再生装置から、当該コンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせを受信する問い合わせ受信手段と、
問い合わせの受信周期の基準として定められる周期基準値に基づいて、各コンテンツ再生装置からの問い合わせの受信時刻が揃うように、問い合わせの送信元のコンテンツ再生装置が問い合わせに対する当該コンテンツ同期制御装置からの応答である問い合わせ応答を受信してから次の問い合わせを送信するまでの待機時間を決定する待機時間決定手段と、
前記問い合わせ受信手段が問い合わせを受信したときに、要求情報受信手段が前記要求情報を受信済みであり、前記要求情報が示す再生制御コマンドに応じた各コンテンツ再生装置によるコンテンツ制御の開始時刻が未決定である場合に、当該開始時刻を決定する開始時刻決定手段と、
問い合わせの送信元のコンテンツ再生装置に関して決定された待機時間を含む問い合わせ応答を前記コンテンツ再生装置に送信する問い合わせ応答送信手段とを備え、
前記問い合わせ応答送信手段は、前記問い合わせ受信手段が問い合わせを受信したときに、要求情報受信手段が前記要求情報を受信済みであり、前記開始時刻が決定されている場合に、前記要求情報が示す再生制御コマンドおよび前記開始時刻の情報を含む再生制御情報を含めた問い合わせ応答を送信し、
各コンテンツ再生装置は、
前記コンテンツ同期制御装置に前記要求情報を送信する要求情報送信手段と、
前記コンテンツ同期制御装置に前記問い合わせを送信する問い合わせ送信手段と、
前記問い合わせに応じて前記問い合わせ応答送信手段が送信した問い合わせ応答を受信する問い合わせ応答受信手段と、
前記問い合わせ応答が示す待機時間に応じたタイミングで問い合わせ送信手段に次の問い合わせを送信させる問い合わせ送信制御手段と、
前記問い合わせ応答が再生制御情報を含んでいる場合に、当該再生制御情報が示す開始時刻に、当該再生制御情報が示す再生制御コマンドによるコンテンツ制御を開始する再生制御手段とを備える
ことを特徴とするコンテンツ同期システム。
【請求項２】
コンテンツ同期制御装置は、
問い合わせ受信手段が問い合わせを受信したときに、当該問い合わせの送信元のコンテンツ再生装置と当該コンテンツ同期制御装置との間の通信遅延を計算する通信遅延計算手段と、
前記通信遅延が周期基準値よりも大きな値であることを条件に、周期基準値を前記通信遅延よりも大きな値に更新する周期基準値更新手段とを備える
請求項１に記載のコンテンツ同期システム。
【請求項３】
周期基準値更新手段は、通信遅延計算手段によって計算された通信遅延が所定の値以下になったことを条件に、周期基準値を初期値に戻す
請求項２に記載のコンテンツ同期システム。
【請求項４】
各コンテンツ再生装置の問い合わせ送信手段は、問い合わせ応答の受信時から問い合わせの送信時までの経過時間の情報を問い合わせに含めて送信し、
コンテンツ同期制御装置の通信遅延計算手段は、問い合わせ応答の送信間隔から前記経過時間を減算することにより、問い合わせの送信元のコンテンツ再生装置に関する通信遅延を計算する
請求項２または請求項３に記載のコンテンツ同期システム。
【請求項５】
待機時間決定手段は、問い合わせ受信手段が問い合わせを受信したときに、少なくとも、コンテンツ同期制御装置から各コンテンツ再生装置までの片道の通信時間の最大値分、現在時刻よりも後の時刻を開始時刻として決定する
請求項１から請求項４のうちのいずれか１項に記載のコンテンツ同期システム。
【請求項６】
待機時間決定手段は、予め定められた基準時点から周期基準値の整数倍の期間が経過した時刻にコンテンツ再生装置からの問い合わせを受信するように、待機時間を決定する
請求項１から請求項５のうちのいずれか１項に記載のコンテンツ同期システム。
【請求項７】
コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置で同期して実行されることを要求する要求情報を各コンテンツ再生装置から受信する要求情報受信手段と、
各コンテンツ再生装置から、当該コンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせを受信する問い合わせ受信手段と、
問い合わせの受信周期の基準として定められる周期基準値に基づいて、各コンテンツ再生装置からの問い合わせの受信時刻が揃うように、問い合わせの送信元のコンテンツ再生装置が問い合わせに対する当該コンテンツ同期制御装置からの応答である問い合わせ応答を受信してから次の問い合わせを送信するまでの待機時間を決定する待機時間決定手段と、
前記問い合わせ受信手段が問い合わせを受信したときに、要求情報受信手段が前記要求情報を受信済みであり、前記要求情報が示す再生制御コマンドに応じた各コンテンツ再生装置によるコンテンツ制御の開始時刻が未決定である場合に、当該開始時刻を決定する開始時刻決定手段と、
問い合わせの送信元のコンテンツ再生装置に関して決定された待機時間を含む問い合わせ応答を前記コンテンツ再生装置に送信する問い合わせ応答送信手段とを備え、
前記問い合わせ応答送信手段は、前記問い合わせ受信手段が問い合わせを受信したときに、要求情報受信手段が前記要求情報を受信済みであり、前記開始時刻が決定されている場合に、前記要求情報が示す再生制御コマンドおよび前記開始時刻の情報を含む再生制御情報を含めた問い合わせ応答を送信する
ことを特徴とするコンテンツ同期制御装置。
【請求項８】
問い合わせ受信手段が問い合わせを受信したときに、当該問い合わせの送信元のコンテンツ再生装置と当該コンテンツ同期制御装置との間の通信遅延を計算する通信遅延計算手段と、
前記通信遅延が周期基準値よりも大きな値であることを条件に、周期基準値を前記通信遅延よりも大きな値に更新する周期基準値更新手段とを備える
請求項７に記載のコンテンツ同期制御装置。
【請求項９】
コンテンツを再生するコンテンツ再生装置であって、
コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置で同期して実行されることを要求する要求情報を、複数のコンテンツ再生装置におけるコンテンツ制御を同期させるコンテンツ同期制御装置に送信する要求情報送信手段と、
当該コンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせを前記コンテンツ同期制御装置に送信する問い合わせ送信手段と、
前記問い合わせに応じて前記コンテンツ同期制御装置が送信した問い合わせ応答であって、当該問い合わせ応答受信後の待機時間の情報を含む問い合わせ応答を受信する問い合わせ応答受信手段と、
前記待機時間に応じたタイミングで問い合わせ送信手段に次の問い合わせを送信させる問い合わせ送信制御手段と、
前記問い合わせ応答が再生制御コマンドと、当該再生制御コマンドに応じたコンテンツ制御の開始時刻の情報とを含んでいる場合に、前記開始時刻に、再生制御コマンドによるコンテンツ制御を開始する再生制御手段とを備える
ことを特徴とするコンテンツ再生装置。
【請求項１０】
問い合わせ送信手段は、問い合わせ応答の受信時から問い合わせの送信時までの経過時間の情報を問い合わせに含めてコンテンツ同期制御装置に送信する
請求項９に記載のコンテンツ再生装置。
【請求項１１】
コンテンツを再生する複数のコンテンツ再生装置のうちのいずれかのコンテンツ再生装置が、コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置で同期して実行されることを要求する要求情報を送信した場合に、複数のコンテンツ再生装置におけるコンテンツ制御を同期させるコンテンツ同期制御装置が、前記要求情報を受信し、
各コンテンツ再生装置が、当該コンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせを前記コンテンツ同期制御装置に送信し、
前記コンテンツ同期制御装置が、問い合わせを受信すると、問い合わせの受信周期の基準として定められる周期基準値に基づいて、各コンテンツ再生装置からの問い合わせの受信時刻が揃うように、問い合わせの送信元のコンテンツ再生装置が問い合わせに対する当該コンテンツ同期制御装置からの応答である問い合わせ応答を受信してから次の問い合わせを送信するまでの待機時間を決定し、
前記コンテンツ同期制御装置が、問い合わせを受信したときに、前記要求情報を受信済みであり、前記要求情報が示す再生制御コマンドに応じた各コンテンツ再生装置によるコンテンツ制御の開始時刻が未決定である場合に、当該開始時刻を決定し、
前記コンテンツ同期制御装置が、問い合わせの送信元のコンテンツ再生装置に待機時間を含む問い合わせ応答を送信し、
前記コンテンツ同期制御装置が、問い合わせを受信したときに、前記要求情報を受信済みであり、前記開始時刻が決定されている場合には、前記問い合わせ応答を送信する際に、前記要求情報が示す再生制御コマンドおよび前記開始時刻の情報を含む再生制御情報を含めた問い合わせ応答を送信し、
各コンテンツ再生装置が、問い合わせを送信した後に、前記コンテンツ同期制御装置から前記問い合わせに対応する問い合わせ応答を受信すると、当該問い合わせ応答が示す待機時間に応じたタイミングで次の問い合わせを送信し、
各コンテンツ再生装置が、問い合わせ応答に再生制御情報が含まれている場合に、当該再生制御情報が示す開始時刻に、当該再生制御情報が示す再生制御コマンドによるコンテンツ制御を開始する
ことを特徴とするコンテンツ同期方法。
【請求項１２】
コンテンツ同期制御装置が、
問い合わせを受信したときに、当該問い合わせの送信元のコンテンツ再生装置と当該コンテンツ同期制御装置との間の通信遅延を計算し、
前記通信遅延が周期基準値よりも大きな値であることを条件に、周期基準値を前記通信遅延よりも大きな値に更新する
請求項１１に記載のコンテンツ同期方法。
【請求項１３】
コンテンツを再生する複数のコンテンツ再生装置のうちのいずれかのコンテンツ再生装置が、コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置で同期して実行されることを要求する要求情報を送信した場合に、複数のコンテンツ再生装置におけるコンテンツ制御を同期させるコンテンツ同期制御装置が、前記要求情報を受信し、
前記コンテンツ同期制御装置が、
各コンテンツ再生装置から、当該コンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせを受信し、
コンテンツ再生装置からの問い合わせを受信すると、問い合わせの受信周期の基準として定められる周期基準値に基づいて、各コンテンツ再生装置からの問い合わせの受信時刻が揃うように、問い合わせの送信元のコンテンツ再生装置が問い合わせに対する当該コンテンツ同期制御装置からの応答である問い合わせ応答を受信してから次の問い合わせを送信するまでの待機時間を決定し、
問い合わせを受信したときに、前記要求情報を受信済みであり、前記要求情報が示す再生制御コマンドに応じた各コンテンツ再生装置によるコンテンツ制御の開始時刻が未決定である場合に、当該開始時刻を決定し、
問い合わせの送信元のコンテンツ再生装置に待機時間を含む問い合わせ応答を送信し、
前記コンテンツ同期制御装置が、
問い合わせを受信したときに、前記要求情報を受信済みであり、前記開始時刻が決定されている場合には、前記問い合わせ応答を送信する際に、前記要求情報が示す再生制御コマンドおよび前記開始時刻の情報を含む再生制御情報を含めた問い合わせ応答を送信する
ことを特徴とするコンテンツ同期制御方法。
【請求項１４】
コンテンツ同期制御装置が、
問い合わせを受信したときに、当該問い合わせの送信元のコンテンツ再生装置と当該コンテンツ同期制御装置との間の通信遅延を計算し、
前記通信遅延が周期基準値よりも大きな値であることを条件に、周期基準値を前記通信遅延よりも大きな値に更新する
請求項１３に記載のコンテンツ同期制御方法。
【請求項１５】
コンテンツを再生するコンテンツ再生装置が、
コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置で同期して実行されることを要求する要求情報を、複数のコンテンツ再生装置におけるコンテンツ制御を同期させるコンテンツ同期制御装置に送信し、
当該コンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせを前記コンテンツ同期制御装置に送信し、
前記問い合わせに応じて前記コンテンツ同期制御装置が送信した問い合わせ応答であって、当該問い合わせ応答受信後の待機時間の情報を含む問い合わせ応答を受信し、
前記待機時間に応じたタイミングで次の問い合わせを送信し、
前記問い合わせ応答が再生制御コマンドと、当該再生制御コマンドに応じたコンテンツ制御の開始時刻の情報とを含んでいる場合に、前記開始時刻に、再生制御コマンドによるコンテンツ制御を開始する
ことを特徴とするコンテンツ再生方法。
【請求項１６】
コンテンツ再生装置が、
問い合わせ応答の受信時から問い合わせの送信時までの経過時間の情報を問い合わせに含めてコンテンツ同期制御装置に送信する
請求項１５に記載のコンテンツ再生方法。
【請求項１７】
コンピュータに、
コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置で同期して実行されることを要求する要求情報を各コンテンツ再生装置から受信する要求情報受信処理、
各コンテンツ再生装置から、当該コンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせを受信する問い合わせ受信処理、
問い合わせの受信周期の基準として定められる周期基準値に基づいて、各コンテンツ再生装置からの問い合わせの受信時刻が揃うように、問い合わせの送信元のコンテンツ再生装置が問い合わせに対する当該コンピュータからの応答である問い合わせ応答を受信してから次の問い合わせを送信するまでの待機時間を決定する待機時間決定処理、
問い合わせを受信したときに、前記要求情報を受信済みであり、前記要求情報が示す再生制御コマンドに応じた各コンテンツ再生装置によるコンテンツ制御の開始時刻が未決定である場合に、当該開始時刻を決定する開始時刻決定処理、および、
問い合わせの送信元のコンテンツ再生装置に関して決定された待機時間を含む問い合わせ応答を前記コンテンツ再生装置に送信する問い合わせ応答送信処理を実行させ、
問い合わせを受信したときに、前記要求情報を受信済みであり、前記開始時刻が決定されている場合に、前記問い合わせ応答送信処理で、前記要求情報が示す再生制御コマンドおよび前記開始時刻の情報を含む再生制御情報を含めた問い合わせ応答を送信させる
ためのコンテンツ同期制御プログラム。
【請求項１８】
コンピュータに、
コンテンツの再生制御に関するコマンドである再生制御コマンドが複数のコンピュータで同期して実行されることを要求する要求情報を、複数のコンピュータにおけるコンテンツ制御を同期させるコンテンツ同期制御装置に送信する要求情報送信処理、
当該コンピュータに送信する再生制御コマンドの有無の問い合わせを前記コンテンツ同期制御装置に送信する問い合わせ送信処理、
前記問い合わせに応じて前記コンテンツ同期制御装置が送信した問い合わせ応答であって、当該問い合わせ応答受信後の待機時間の情報を含む問い合わせ応答を受信する問い合わせ応答受信処理、
前記待機時間に応じたタイミングで、再度、前記問い合わせを前記コンテンツ同期制御装置に送信する処理、および、
前記問い合わせ応答が再生制御コマンドと、当該再生制御コマンドに応じたコンテンツ制御の開始時刻の情報とを含んでいる場合に、前記開始時刻に、再生制御コマンドによるコンテンツ制御を開始する再生制御処理
を実行させるためのコンテンツ再生プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のコンテンツ再生装置でのコンテンツ制御を同期させるコンテンツ同期システム、および、そのコンテンツ同期システムに適用されるコンテンツ同期制御装置、コンテンツ再生装置、コンテンツ同期方法、コンテンツ同期制御方法、コンテンツ再生方法、コンテンツ同期制御プログラム、コンテンツ再生プログラムに関する。
【背景技術】
【０００２】
複数の情報処理装置間で同一のコンテンツを同期させて再生させる技術が種々提案されている（例えば、特許文献１〜３参照）。【０００３】
例えば、特許文献１に記載された技術では、マスタ端末が、符号化された映像の復号化開始時刻を算出する。このとき、マスタ端末は、そのマスタ端末からスレーブ端末に復号化開始指示が届くまでの最大時間を電波時計の時刻に加えた時刻を、復号化開始時刻として計算する。また、マスタ端末は、全スレーブ端末に復号化開始時刻を送信する。そして、全スレーブ端末は、電波時計の示す時刻が復号化開始時刻になったときに、符号化された映像の復号化を開始する。【０００４】
また、例えば、特許文献２に記載された技術では、１台の親局が複数の端末局に対して、コンテンツＩＤ、制御種別情報、制御開始情報、制御開始指示を送信する。そして、端末局は、制御開始情報で指定される時刻にコンテンツＩＤで指定されるコンテンツの制御を開始する。このとき、端末局は、制御種別情報で指定される制御内容に従ってコンテンツを制御する。制御種別情報として、例えば、「コンテンツデータを再生する」、「コンテンツデータを早送りする」等が挙げられている。【０００５】
また、例えば、特許文献３には、コンテンツを再生するユーザコンピュータが他のユーザコンピュータに対して、ビデオデータの「停止」、「休止」、「巻き戻し」、および「早送り」の少なくとも１つの機能を有効にすることによって、ビデオデータの流れを変えるように命令することが記載されている。このとき、ユーザコンピュータが他のユーザコンピュータに対して、ピア・ツー・ピアで命令を送信する態様や、サーバ等のコンテンツ提供デバイスを介して命令を送信する態様が記載されている。【０００６】
また、特許文献３には、コンピュータネットワークにおけるデータ送信の規格として、ＨＴＴＰ（hypertext transfer protocol ）が記載されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１１−３５５０３号公報（段落００１２，００１３，００３２）
【特許文献２】特開２００９−２６８１４１号公報（段落００５１，００３４，００３８〜００５０）
【特許文献３】特表２０１１−５０１２６０号公報（段落００３０，００３９，００４０，図１，段落００３２）
【発明の概要】
【発明が解決しようとする課題】
【０００８】
特許文献１に記載の技術では、マスタ端末からスレーブ端末に復号化開始指示が届くまでの最大時間を電波時計の時刻に加えることによって、全スレーブ端末における復号開始時刻を算出する。この結果、全スレーブ端末で映像の再生を同時に開始することができる。【０００９】
しかし、ＨＴＴＰサーバとＨＴＴＰクライアントとを含むサーバ・クライアントシステムに特許文献１に記載の技術を適用した場合、各クライアントが同時にコンテンツ再生に関する種々のコマンド（例えば、再生、停止等）を実行する時刻（再生制御時刻）をサーバが適切に決定することができないという問題があった。以下、この点について具体的に説明する。【００１０】
ＨＴＴＰのサーバ・クライアントシステムで、いずれかのクライアントにおける操作に従って各クライアントでのコンテンツ再生を同期させるためには、個々のクライアントがそれぞれサーバに対してポーリングを行う必要がある。ポーリングとは、サーバからクライアントに送信すべき情報の有無をクライアントがサーバに定期的に問い合わせ、サーバがその問い合わせに応じて、送信すべき情報をクライアントに送信する通信方式である。すなわち、いずれかのクライアントにおける操作に従って各クライアントでのコンテンツ再生を同期させるためには、サーバが再生制御時刻を決定したとしても、サーバは、クライアントからのＨＴＴＰリクエストに応答する態様でしか再生制御情報を送信できない。従って、サーバからクライアントに再生制御情報が届くまでの最大時間に基づいて再生制御時刻を決定しても、クライアントがサーバにＨＴＴＰリクエストを行うタイミングの方が再生制御時刻よりも遅くなることがあり、クライアントが問い合わせを行った時点で、再生制御時刻が経過している場合が生じ得る。【００１１】
この場合、サーバからクライアントに再生制御情報が届くまでの最大時間に基づいて定めた時刻にポーリング周期を加算した時刻を、再生制御時刻として定めることで、クライアントがＨＴＴＰリクエストを行うタイミングが再生制御時刻よりも遅れることを防止できる。しかし、この場合には、ポーリング周期を加算する分だけ、再生制御時刻が遅くなる。【００１２】
また、ユーザコンピュータが他のユーザコンピュータに対してビデオデータに関する命令を送信する技術（特許文献３）にＨＴＴＰを適用する場合、サーバ等のコンテンツ提供デバイスを介して命令を送信する態様では、命令を送信する側のユーザコンピュータは、命令を受信する側のコンピュータがサーバにＨＴＴＰリクエストを行う時刻を認識できない。そのため、命令を送信する側のユーザコンピュータは再生制御時刻を算出することができない。【００１３】
そこで、本発明は、ＨＴＴＰのもとで、複数のコンテンツ再生装置でのコンテンツ制御を同期させるようにコンテンツ同期制御装置が各コンテンツ再生装置を制御することができるコンテンツ同期システム、および、そのコンテンツ同期システムに適用されるコンテンツ同期制御装置、コンテンツ再生装置、コンテンツ同期方法、コンテンツ同期制御方法、コンテンツ再生方法、コンテンツ同期制御プログラム、コンテンツ再生プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明によるコンテンツ同期システムは、コンテンツを再生する複数のコンテンツ再生装置と、複数のコンテンツ再生装置におけるコンテンツ制御を同期させるコンテンツ同期制御装置とを備え、コンテンツ同期制御装置は、コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置で同期して実行されることを要求する要求情報を各コンテンツ再生装置から受信する要求情報受信手段と、各コンテンツ再生装置から、当該コンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせを受信する問い合わせ受信手段と、問い合わせの受信周期の基準として定められる周期基準値に基づいて、各コンテンツ再生装置からの問い合わせの受信時刻が揃うように、問い合わせの送信元のコンテンツ再生装置が問い合わせに対する当該コンテンツ同期制御装置からの応答である問い合わせ応答を受信してから次の問い合わせを送信するまでの待機時間を決定する待機時間決定手段と、問い合わせ受信手段が問い合わせを受信したときに、要求情報受信手段が要求情報を受信済みであり、その要求情報が示す再生制御コマンドに応じた各コンテンツ再生装置によるコンテンツ制御の開始時刻が未決定である場合に、当該開始時刻を決定する開始時刻決定手段と、問い合わせの送信元のコンテンツ再生装置に関して決定された待機時間を含む問い合わせ応答をコンテンツ再生装置に送信する問い合わせ応答送信手段とを備え、問い合わせ応答送信手段が、問い合わせ受信手段が問い合わせを受信したときに、要求情報受信手段が要求情報を受信済みであり、開始時刻が決定されている場合に、要求情報が示す再生制御コマンドおよび開始時刻の情報を含む再生制御情報を含めた問い合わせ応答を送信し、各コンテンツ再生装置は、コンテンツ同期制御装置に要求情報を送信する要求情報送信手段と、コンテンツ同期制御装置に問い合わせを送信する問い合わせ送信手段と、問い合わせに応じて問い合わせ応答送信手段が送信した問い合わせ応答を受信する問い合わせ応答受信手段と、問い合わせ応答が示す待機時間に応じたタイミングで問い合わせ送信手段に次の問い合わせを送信させる問い合わせ送信制御手段と、
問い合わせ応答が再生制御情報を含んでいる場合に、当該再生制御情報が示す開始時刻に、当該再生制御情報が示す再生制御コマンドによるコンテンツ制御を開始する再生制御手段とを備えることを特徴とする。【００１５】
本発明によるコンテンツ同期制御装置は、コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置で同期して実行されることを要求する要求情報を各コンテンツ再生装置から受信する要求情報受信手段と、各コンテンツ再生装置から、当該コンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせを受信する問い合わせ受信手段と、問い合わせの受信周期の基準として定められる周期基準値に基づいて、各コンテンツ再生装置からの問い合わせの受信時刻が揃うように、問い合わせの送信元のコンテンツ再生装置が問い合わせに対する当該コンテンツ同期制御装置からの応答である問い合わせ応答を受信してから次の問い合わせを送信するまでの待機時間を決定する待機時間決定手段と、問い合わせ受信手段が問い合わせを受信したときに、要求情報受信手段が要求情報を受信済みであり、その要求情報が示す再生制御コマンドに応じた各コンテンツ再生装置によるコンテンツ制御の開始時刻が未決定である場合に、当該開始時刻を決定する開始時刻決定手段と、問い合わせの送信元のコンテンツ再生装置に関して決定された待機時間を含む問い合わせ応答をコンテンツ再生装置に送信する問い合わせ応答送信手段とを備え、問い合わせ応答送信手段は、問い合わせ受信手段が問い合わせを受信したときに、要求情報受信手段が要求情報を受信済みであり、開始時刻が決定されている場合に、要求情報が示す再生制御コマンドおよび開始時刻の情報を含む再生制御情報を含めた問い合わせ応答を送信することを特徴とする。【００１６】
本発明によるコンテンツ再生装置は、コンテンツを再生するコンテンツ再生装置であって、コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置で同期して実行されることを要求する要求情報を、複数のコンテンツ再生装置におけるコンテンツ制御を同期させるコンテンツ同期制御装置に送信する要求情報送信手段と、当該コンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせをコンテンツ同期制御装置に送信する問い合わせ送信手段と、問い合わせに応じてコンテンツ同期制御装置が送信した問い合わせ応答であって、当該問い合わせ応答受信後の待機時間の情報を含む問い合わせ応答を受信する問い合わせ応答受信手段と、待機時間に応じたタイミングで問い合わせ送信手段に次の問い合わせを送信させる問い合わせ送信制御手段と、問い合わせ応答が再生制御コマンドと、当該再生制御コマンドに応じたコンテンツ制御の開始時刻の情報とを含んでいる場合に、開始時刻に、再生制御コマンドによるコンテンツ制御を開始する再生制御手段とを備えることを特徴とする。【００１７】
本発明によるコンテンツ同期方法は、コンテンツを再生する複数のコンテンツ再生装置のうちのいずれかのコンテンツ再生装置が、コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置で同期して実行されることを要求する要求情報を送信した場合に、複数のコンテンツ再生装置におけるコンテンツ制御を同期させるコンテンツ同期制御装置が、要求情報を受信し、各コンテンツ再生装置が、当該コンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせをコンテンツ同期制御装置に送信し、コンテンツ同期制御装置が、問い合わせを受信すると、問い合わせの受信周期の基準として定められる周期基準値に基づいて、各コンテンツ再生装置からの問い合わせの受信時刻が揃うように、問い合わせの送信元のコンテンツ再生装置が問い合わせに対する当該コンテンツ同期制御装置からの応答である問い合わせ応答を受信してから次の問い合わせを送信するまでの待機時間を決定し、コンテンツ同期制御装置が、問い合わせを受信したときに、要求情報を受信済みであり、その要求情報が示す再生制御コマンドに応じた各コンテンツ再生装置によるコンテンツ制御の開始時刻が未決定である場合に、当該開始時刻を決定し、コンテンツ同期制御装置が、問い合わせの送信元のコンテンツ再生装置に待機時間を含む問い合わせ応答を送信し、コンテンツ同期制御装置が、問い合わせを受信したときに、要求情報を受信済みであり、開始時刻が決定されている場合には、問い合わせ応答を送信する際に、要求情報が示す再生制御コマンドおよび開始時刻の情報を含む再生制御情報を含めた問い合わせ応答を送信し、各コンテンツ再生装置が、問い合わせを送信した後に、コンテンツ同期制御装置から問い合わせに対応する問い合わせ応答を受信すると、当該問い合わせ応答が示す待機時間に応じたタイミングで次の問い合わせを送信し、各コンテンツ再生装置が、問い合わせ応答に再生制御情報が含まれている場合に、当該再生制御情報が示す開始時刻に、当該再生制御情報が示す再生制御コマンドによるコンテンツ制御を開始することを特徴とする。【００１８】
本発明によるコンテンツ同期制御方法は、コンテンツを再生する複数のコンテンツ再生装置のうちのいずれかのコンテンツ再生装置が、コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置で同期して実行されることを要求する要求情報を送信した場合に、複数のコンテンツ再生装置におけるコンテンツ制御を同期させるコンテンツ同期制御装置が、要求情報を受信し、コンテンツ同期制御装置が、各コンテンツ再生装置から、当該コンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせを受信し、コンテンツ再生装置からの問い合わせを受信すると、問い合わせの受信周期の基準として定められる周期基準値に基づいて、各コンテンツ再生装置からの問い合わせの受信時刻が揃うように、問い合わせの送信元のコンテンツ再生装置が問い合わせに対する当該コンテンツ同期制御装置からの応答である問い合わせ応答を受信してから次の問い合わせを送信するまでの待機時間を決定し、問い合わせを受信したときに、要求情報を受信済みであり、その要求情報が示す再生制御コマンドに応じた各コンテンツ再生装置によるコンテンツ制御の開始時刻が未決定である場合に、当該開始時刻を決定し、問い合わせの送信元のコンテンツ再生装置に待機時間を含む問い合わせ応答を送信し、コンテンツ同期制御装置が、問い合わせを受信したときに、要求情報を受信済みであり、開始時刻が決定されている場合には、問い合わせ応答を送信する際に、要求情報が示す再生制御コマンドおよび開始時刻の情報を含む再生制御情報を含めた問い合わせ応答を送信することを特徴とする。【００１９】
本発明によるコンテンツ再生方法は、コンテンツを再生するコンテンツ再生装置が、コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置で同期して実行されることを要求する要求情報を、複数のコンテンツ再生装置におけるコンテンツ制御を同期させるコンテンツ同期制御装置に送信し、当該コンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせをコンテンツ同期制御装置に送信し、問い合わせに応じてコンテンツ同期制御装置が送信した問い合わせ応答であって、当該問い合わせ応答受信後の待機時間の情報を含む問い合わせ応答を受信し、待機時間に応じたタイミングで次の問い合わせを送信し、問い合わせ応答が再生制御コマンドと、当該再生制御コマンドに応じたコンテンツ制御の開始時刻の情報とを含んでいる場合に、開始時刻に、再生制御コマンドによるコンテンツ制御を開始することを特徴とする。【００２０】
本発明によるコンテンツ同期制御プログラムは、コンピュータに、コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置で同期して実行されることを要求する要求情報を各コンテンツ再生装置から受信する要求情報受信処理、各コンテンツ再生装置から、当該コンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせを受信する問い合わせ受信処理、問い合わせの受信周期の基準として定められる周期基準値に基づいて、各コンテンツ再生装置からの問い合わせの受信時刻が揃うように、問い合わせの送信元のコンテンツ再生装置が問い合わせに対する当該コンピュータからの応答である問い合わせ応答を受信してから次の問い合わせを送信するまでの待機時間を決定する待機時間決定処理、問い合わせを受信したときに、要求情報を受信済みであり、その要求情報が示す再生制御コマンドに応じた各コンテンツ再生装置によるコンテンツ制御の開始時刻が未決定である場合に、当該開始時刻を決定する開始時刻決定処理、および、問い合わせの送信元のコンテンツ再生装置に関して決定された待機時間を含む問い合わせ応答をコンテンツ再生装置に送信する問い合わせ応答送信処理を実行させ、問い合わせを受信したときに、要求情報を受信済みであり、開始時刻が決定されている場合に、問い合わせ応答送信処理で、要求情報が示す再生制御コマンドおよび開始時刻の情報を含む再生制御情報を含めた問い合わせ応答を送信させることを特徴とする。【００２１】
本発明によるコンテンツ再生プログラムは、コンピュータに、コンテンツの再生制御に関するコマンドである再生制御コマンドが複数のコンピュータで同期して実行されることを要求する要求情報を、複数のコンピュータにおけるコンテンツ制御を同期させるコンテンツ同期制御装置に送信する要求情報送信処理、当該コンピュータに送信する再生制御コマンドの有無の問い合わせをコンテンツ同期制御装置に送信する問い合わせ送信処理、問い合わせに応じてコンテンツ同期制御装置が送信した問い合わせ応答であって、当該問い合わせ応答受信後の待機時間の情報を含む問い合わせ応答を受信する問い合わせ応答受信処理、待機時間に応じたタイミングで、再度、問い合わせをコンテンツ同期制御装置に送信する処理、および、問い合わせ応答が再生制御コマンドと、当該再生制御コマンドに応じたコンテンツ制御の開始時刻の情報とを含んでいる場合に、開始時刻に、再生制御コマンドによるコンテンツ制御を開始する再生制御処理を実行させることを特徴とする。
【発明の効果】
【００２２】
本発明によれば、ＨＴＴＰのもとで、複数のコンテンツ再生装置でのコンテンツ制御を同期させるようにコンテンツ同期制御装置が各コンテンツ再生装置を制御することができる。
【図面の簡単な説明】
【００２３】
【図１】本発明の第１の実施形態のコンテンツ同期システムの例を示すブロック図である。
【図２】第１の実施形態におけるコンテンツ同期制御装置の構成例を示すブロック図である。
【図３】通信遅延管理手段１０４が保持する通信遅延情報の例を示す説明図である。
【図４】再生制御コマンドの例を示す説明図である。
【図５】制御時刻決定手段１０６が生成する再生制御情報の例を示す説明図である。
【図６】制御情報管理手段１０７が記憶する情報の例を示す説明図である。
【図７】第１の実施形態におけるコンテンツ再生装置の構成例を示すブロック図である。
【図８】サーバ１０が再生制御情報を含まない問い合わせ応答を送信する場合の動作の例を示すシーケンス図である。
【図９】サーバ１０が再生制御情報を含む問い合わせ応答を送信する場合の動作の例を示すシーケンス図である。
【図１０】サーバ１０が再生制御情報を含む問い合わせ応答を送信する場合の動作の例を示すシーケンス図である。
【図１１】ステップＳ２９における更新後の情報の例を示す説明図である。
【図１２】本発明の第２の実施形態のコンテンツ同期システムの例を示すブロック図である。
【図１３】第２の実施形態におけるコンテンツ同期制御装置の構成例を示すブロック図である。
【図１４】第２の実施形態における動作の例を示すシーケンス図である。
【図１５】本発明のコンテンツ同期システムの最小構成を示すブロック図である。
【図１６】本発明のコンテンツ同期制御装置の最小構成を示すブロック図である。
【図１７】本発明のコンテンツ再生装置の最小構成を示すブロック図である。
【発明を実施するための形態】
【００２４】
以下、本発明の実施形態を図面を参照して説明する。
【００２５】
実施形態１．
図１は、本発明の第１の実施形態のコンテンツ同期システムの例を示すブロック図である。第１の実施形態のコンテンツ同期システムは、コンテンツ同期制御装置１０と、複数のコンテンツ再生装置２０ａ，２０ｂとを備える。なお、図１では、２台のコンテンツ再生装置２０ａ，２０ｂを図示しているが、コンテンツ再生装置は３台以上設けられていてもよい。コンテンツ同期制御装置１０と複数のコンテンツ再生装置２０ａ，２０ｂとは、ネットワーク３０を介して接続されている。コンテンツ同期制御装置１０と、複数のコンテンツ再生装置２０ａ，２０ｂとは、ＨＴＴＰに従って通信を行う。コンテンツ同期制御装置１０は、サーバ・クライアントシステムにおけるサーバであり、以下、サーバ１０と記す。また、各コンテンツ再生装置２０ａ，２０ｂは、サーバ・クライアントシステムにおけるクライアントであり、以下、クライアント端末２０ａ，２０ｂと記す。
【００２６】
クライアント端末２０ａ，２０ｂは、例えば、互いに離れた地点に存在する端末であるが、クライアント端末同士の物理的な距離は特に限定されない。
【００２７】
クライアント端末２０ａ，２０ｂは、例えば、汎用のブラウザ上でコンテンツの再生を行う。
【００２８】
クライアント端末２０ａ，２０ｂは、例えば、サーバ１０から同一のコンテンツをダウンロードし、それぞれ再生する。なお、コンテンツは、動画であっても音声であってもよい。サーバ１０は、各クライアント端末２０ａ，２０ｂがコンテンツ再生に関する種々のコマンド（例えば、再生開始、一時停止等のコマンド）を同時に実行するように各クライアント端末２０ａ，２０ｂを制御する。以下、コンテンツの再生制御に関するコマンドを再生制御コマンドと記す。サーバ１０は、各クライアント端末２０ａ，２０ｂが再生制御コマンドによるコンテンツ制御を開始する時刻（以下、制御開始時刻を記すことがある。）を決定し、その制御開始時刻および再生制御コマンドを含む情報である再生制御情報を各クライアント端末２０ａ，２０ｂに送信する。ただし、サーバ１０およびクライアント端末２０ａ，２０ｂ間の通信はＨＴＴＰに従う。従って、サーバ１０は、個々のクライアント端末から再生制御コマンドの有無の問い合わせ（ＨＴＴＰリクエスト）を受信し、そのときに問い合わせ元のクライアント端末への再生制御コマンドがあれば、問い合わせに対する応答に再生制御情報（再生制御コマンドおよび制御開始時刻の情報）を含めて、問い合わせに対する応答を問い合わせ元のクライアント端末に送信する。クライアント端末２０ａ，２０ｂは、サーバ１０への問い合わせに対してサーバ１０が送り返した応答に再生制御情報が含まれていれば、再生制御情報で指定されている制御開始時刻に再生制御コマンドによるコンテンツ制御を開始する。この結果、各クライアント端末２０ａ，２０ｂでの再生、一時停止等、再生に関する種々の動作が同期される。以下、クライアント端末からの再生制御コマンドの有無の問い合わせに対するサーバ１０の応答を問い合わせ応答と記す。なお、コンテンツ制御とは、コンテンツの再生状態の制御と称することもできる。
【００２９】
また、サーバ１０は、問い合わせ応答に、クライアント端末がその問い合わせ応答を受信してから次に問い合わせを送信するまでの待機時間を含める。クライアント端末２０ａ，２０ｂは問い合わせ応答を受信後、指定された待機時間が経過したときに、再生制御コマンドの有無の問い合わせを再度、サーバ１０に送信する。この結果、クライアント端末２０ａ，２０ｂはそれぞれ、再生制御コマンドの有無の問い合わせを繰り返しサーバ１０に送信する。
【００３０】
図２は、第１の実施形態におけるサーバ（コンテンツ同期制御装置）１０の構成例を示すブロック図である。サーバ１０は、問い合わせ受信手段１０１と、待機時間決定手段１０２と、問い合わせ応答送信手段１０３と、通信遅延管理手段１０４と、制御要求受信手段１０５と、制御時刻決定手段１０６と、制御情報管理手段１０７と、時刻同期手段１０８と、データ記憶手段１０９と、データ送信手段１１０とを備える。サーバ１０は、ネットワーク３０を介してクライアント端末（図２において図示略）に接続される。
【００３１】
問い合わせ受信手段１０１は、個々のクライアント端末２０ａ，２０ｂから、そのクライアント端末に対する未送信の再生制御コマンドの有無の問い合わせを受信する。なお、各クライアント２０ａ，２０ｂは、例えば、ＨＴＴＰのＧＥＴメソッドにより、サーバ１０への問い合わせを送信すればよい。
【００３２】
待機時間決定手段１０２は、再生制御コマンドの有無の問い合わせを送信したクライアント端末に関して、そのクライアント端末が問い合わせ応答を受信してから次回の問い合わせを送信するまでの待機時間を決定する。待機時間決定手段１０２は、問い合わせ受信手段１０１がクライアント端末から問い合わせを受信した時刻に基づいて、次回の問い合わせの受信時刻が他のクライアント端末からの問い合わせの受信時刻と揃うように待機時間を決定する。待機時間の決定方法については、後述する。
【００３３】
問い合わせ応答送信手段１０３は、問い合わせ受信手段１０１が受信した問い合わせに対する応答を、問い合わせの送信元のクライアント端末に送信する。問い合わせ応答送信手段１０３は、問い合わせ応答に、少なくとも、待機時間決定手段１０２によって決定された待機時間の情報を含める。また、問い合わせ応答送信手段１０３は、問い合わせの送信元のクライアント端末に対して送信する再生制御コマンドが未送信であれば、その再生制御コマンドを問い合わせ応答に含める。なお、再生制御コマンドは、再生制御情報として問い合わせ応答に含められる。また、再生制御情報は、制御時刻決定手段１０６によって生成される。
【００３４】
通信遅延管理手段１０４は、通信遅延情報を保持する。通信遅延情報は、少なくとも、クライアント端末の識別子と、そのクライアント端末とサーバ１０との間の通信遅延とを含む。通信遅延は、クライアント端末とサーバ１０との間の往復の通信に要する時間である。本発明の説明では、「通信遅延」と、通信遅延を含む「通信遅延情報」とを区別する。図３は、通信遅延管理手段１０４が保持する通信遅延情報の例を示す説明図である。図３では、通信遅延情報が、クライアント端末毎に、クライアント端末の識別子と、通信遅延と、そのクライアント端末に対する前回の問い合わせ応答送信時刻とを対応付けた情報である場合を例示している。図３に示す第１列は、クライアント端末の識別子である。本例では、図１に示した符号“２０ａ”，“２０ｂ”を識別子として示している。図３に示す第２列は、通信遅延であり、本例ではミリ秒単位で示している。図３に示す第３列は、クライアント端末に対する前回の問い合わせ応答送信時刻である。この時刻は、通信遅延を測定するために用いられる。また、本実施形態では、予め定めた所定の基準時点からの経過時間によって時刻を表す。本例では、グリニッジ標準時の１９７０年１月１日０時０分０秒を基準時点とし、その基準時点からの経過時間をミリ秒で表すことにより時刻を表現する場合を例にする。ただし、基準時点として他の時刻を用いてもよい。また、基準時点からの経過時間は、ミリ秒以外の単位で表されてもよい。ただし、通信遅延の単位と、基準時点からの経過時間との単位は同じ単位（本例ではミリ秒）にすることが好ましい。
【００３５】
通信遅延管理手段１０４は、例えば、クライアント端末からの問い合わせと、その問い合わせに対する応答とを利用して通信遅延を測定する。この測定方法を具体例を用いて説明する。例えば、サーバ１０の問い合わせ受信手段１０１がクライアント端末２０ａから問い合わせを受信すると、問い合わせ応答送信手段１０３がクライアント端末２０ａに問い合わせ応答を送信する。そして、問い合わせ応答送信手段１０３が問い合わせ応答を送信する際に、通信遅延管理手段１０４は、その送信時刻で、クライアント端末２０ａに対応する「前回の問い合わせ応答送信時刻」を更新する。このように、通信遅延管理手段１０４は、個々のクライアント端末への問い合わせ応答の送信の度に、通信遅延情報のうち、そのクライアント端末に対応する「前回の問い合わせ応答送信時刻」を更新する。更新後、通信遅延情報の内容が図３に示す内容になったとする。そして、クライアント端末２０ａは、サーバ１０から問い合わせ応答を受信すると、その受信時刻を記憶する。その後、クライアント端末２０ａは、再度、サーバ１０に対して問い合わせを送信する。その際、クライアント端末２０ａは、問い合わせ応答を受信してから問い合わせを送信するまでの経過時間を問い合わせに付与する。この経過時間は、問い合わせ応答に含まれる待機時間と等しい。この経過時間は、例えば、ＵＲＬ（Uniform Resource Locator）パラメータとして送信される。例えば、経過時間が１２１ミリ秒であったとすると、クライアント端末２０ａは、問い合わせ送信時のＵＲＬに「ｔｉｍｅ＝１２１」を付与し、「ｈｔｔｐ：／／ｅｘａｍｐｌｅ．ｃｏｍ／ＧｅｔＭｅｓｓａｇｅ？ｔｉｍｅ＝１２１」とすることで、経過時間が１２１ミリ秒であった事をサーバ１０に伝達すればよい。
【００３６】
サーバ１０の問い合わせ受信手段１０１がクライアント端末２０ａから問い合わせを受信すると、通信遅延管理手段１０４は、問い合わせを受信した時刻を確認する。例えば、この時刻が「１３０８６３７１５１４５３」であったとする。通信遅延管理手段１０４は、クライアント端末２０ａに対応する「前回の問い合わせ応答送信時刻」を参照する。本例では、この時刻は、「１３０８６３７１５１３２２」である（図３参照）。通信遅延管理手段１０４は、クライアント端末２０ａから問い合わせを受信した時刻から、前回の問い合わせ応答送信時刻と、クライアント端末２０ａから通知された経過時間（上記の例では、１２１ミリ秒）とを差し引いた値として、通信遅延を算出することができる。すなわち、本例では、以下に示す式（１）の計算により、クライアント端末２０ａに関する通信遅延を１０ミリ秒として算出することができる。
【００３７】
１３０８６３７１５１４５３−１３０８６３７１５１３２２−１２１＝１０
式（１）
【００３８】
通信遅延管理手段１０４は、通信遅延を算出すると、保持している通信遅延情報に含まれる通信遅延を更新する。このように、問い合わせ受信手段１０１がクライアント端末から問い合わせを受信すると、通信遅延管理手段１０４は、そのクライアント端末に関する通信遅延を算出し、通信遅延情報を更新する。
【００３９】
なお、通信遅延管理手段１０４は、上記の方法によって通信遅延を測定し、複数回の測定結果の平均値を通信遅延として定め、通信遅延情報に含まれる通信遅延をその平均値で更新してもよい。このように通信遅延を定めれば、パケットロス等の影響によって例外的に通信遅延が大きくなり、正常時の通信遅延が正しく測定できなかった場合の影響を軽減することができる。
【００４０】
制御要求受信手段１０５は、各クライアント端末２０ａ，２０ｂから再生制御要求を受信する。再生制御要求は、指定した再生制御コマンドが各クライアント端末で同期して実行されるように各クライアント端末を制御することを要求するリクエスト情報である。各クライアント端末は、使用者の操作に応じて定まる再生制御コマンドを、再生制御要求としてサーバ１０に送信すればよい。再生制御コマンドの例として、例えば、再生、一時停止、早送り、巻き戻し、頭出し再生等の種々の処理に応じた再生制御コマンドが挙げられる。ただし、再生制御コマンドの種類は、これらに限定されない。また、再生制御コマンドには、付帯情報が付加されていてもよい。付帯情報は、例えば、コマンドの実行態様を指定する情報である。付帯情報の例として、再生を指示する再生制御コマンドにおける再生速度や、頭出し再生を指示する再生制御コマンドにおける頭出し位置等が挙げられる。付帯情報の種類も、これらに限定されない。
【００４１】
図４は、再生制御コマンドの例を示す説明図である。図４に示す例では、各行が「パラメータ名＝パラメータの値」の形式で記述される。また、パラメータ名が「ｃｏｍｍａｎｄ」で示されるパラメータの値が再生制御コマンドを表す。そして、その他のパラメータ名は再生制御コマンドの付帯情報を表す。図４に示す例１では、第１行でコマンド名「ｃｏｍｍａｎｄ」が指定され、そのパラメータの値が「ｐａｕｓｅ」であり、例１は、一時停止の開始を指示するコマンドである。図４に示す例２では、第１行でコマンド名「ｃｏｍｍａｎｄ」が指定され、そのパラメータの値が「ｓｅｅｋ」であり、例２は、頭出し再生の開始を指示するコマンドである。また、例２では、第２行に付帯情報として、「ｐｏｓｉｔｉｏｎ＝２３００」という記述があり、動画の先頭から２３００ミリ秒後の位置で頭出し再生を実施することを示している。図４に示す例３では、第１行でコマンド名「ｃｏｍｍａｎｄ」が指定され、そのパラメータの値が「ｆｏｒｗａｒｄ」であり、例３は、早送りの開始を指示するコマンドである。また、例３では、第２行に付帯情報として、「ｓｐｅｅｄ＝４」という記述があり、４倍速で早送りを行うことを示している。
【００４２】
付帯情報を付加することで、コマンドの実行態様を指定することができ、各クライアント端末でのコンテンツ制御の開始タイミングだけでなく、実行態様も揃えることができる。従って、コマンドの実行態様が可変である場合であっても、各クライアント端末は、同一コンテンツの同一箇所を同期して出力することができる。例えば、各クライアント端末は、頭出し再生を行う場合に、同じ箇所からコンテンツの再生を開始し、同一の時刻にコンテンツの同一の箇所を出力することができる。
【００４３】
再生制御コマンドおよび付帯情報は、図４に示す例に限定されない。また、再生制御コマンドおよび付帯情報の記述形式も図４に示す例に限定されず、他の形式で記述されていてもよい。
【００４４】
制御時刻決定手段１０６は、制御要求受信手段１０５が再生制御要求として受信した再生制御コマンドによるコンテンツ制御を各クライアント端末２０ａ，２０ｂが開始する制御開始時刻を決定する。そして、制御時刻決定手段１０６は、その再生制御コマンドに制御開始時刻の情報を付加することによって、再生制御情報を生成する。すなわち、再生制御情報は、再生制御コマンドおよび制御開始時刻の情報を含む。また、再生制御コマンドには、付帯情報が付加されていてもよい。なお、制御開始時刻の決定方法については後述する。
【００４５】
図５は、制御時刻決定手段１０６が生成する再生制御情報の例を示す説明図である。図５に示す例において、再生制御コマンドおよび付帯情報の記述は図４に示す例と同様である。図５に示す再生制御情報では、パラメータ名を「ｔｉｍｅ」として、制御開始時刻が追加されている点が、図４に例示する記述と異なる。図５に示す例１では、制御開始時刻として「１３０８６３７１５２０３２」が指定されている。例１は、グリニッジ標準時の１９７０年１月１日０時０分０秒から、１３０８６３７１５２０３２ミリ秒経過した時刻に制御（例１では一時停止）を開始することを意味する。同様に、図５に示す例２は、時刻「１３０８６３７１６５９８３」に、コンテンツの先頭から２３００ミリ秒後の位置からの頭出し再生を開始することを意味する。同様に、図５に示す例３は、時刻「１３０８６３７１７８１１１」に、４倍速で早送りを開始することを意味する。
【００４６】
制御情報管理手段１０７は、制御要求受信手段１０５が再生制御要求（すなわち、再生制御コマンド）を受信したときには、その再生制御コマンドを記憶する。また、その再生制御コマンドに制御開始時刻を追加した再生制御情報が制御時刻決定手段１０６に生成された場合には、制御情報管理手段１０７は、再生制御コマンドおよび制御開始時刻を含む再生制御情報を記憶する。また、制御情報管理手段１０７は、その再生制御コマンドや再生制御情報が未だ再生制御情報として送信されていないクライアント端末の識別子を、その再生制御コマンドや再生制御情報に対応付けて記憶する。図６は、制御情報管理手段１０７が記憶する情報の例を示す説明図である。図６に示す例では、まだ制御開始時刻が付加されていない再生制御コマンドを記憶している場合を例示している。この再生制御コマンドは、制御開始時刻が追加されて再生制御情報とされた後、クライアント端末２０ａ，２０ｂに送信されることになるが、現時点では再生制御情報としてクライアント端末２０ａ，２０ｂに送信されていない。従って、それらのクライアント端末の識別子“２０ａ”，“２０ｂ”とともに制御情報管理手段１０７に記憶される。
【００４７】
時刻同期手段１０８は、サーバ１０が持つ時計の時刻を所定の時刻に同期させることで、サーバ１０の時計の時刻を正しい時刻に同期させる。例えば、時刻同期手段１０８は、ＮＴＰサーバ（network time protocol サーバ、図示せず。）を参照し、ネットワークタイムプロトコルによってＮＴＰサーバから提供される時刻に、サーバ１０が持つ時計の時刻を同期させてもよい。
【００４８】
後述のクライアント端末の時刻同期手段２０６（図７参照。）も、クライアント端末が持つ時計の時刻を所定の時刻に同期させることで、クライアント端末の時計の時刻を正しい時刻に同期させる。従って、サーバ１０および各クライアント端末の時計の時刻は同期し、同一の時刻を指し示すことになる。そして、全てのクライアント端末２０ａ、２０ｂは、制御時刻決定手段１０６によって決定された時刻に再生制御コマンドに応じたコンテンツ制御（例えば、再生、一時停止等）を開始するので、全てのクライアント端末２０ａ、２０ｂは再生制御コマンドに応じたコンテンツ制御を同時に開始することができる。
【００４９】
データ記憶手段１０９は、各クライアント端末２０ａ，２０ｂにおいて再生されるコンテンツのデータを記憶する。データ記憶手段１０９は、例えば、動画、音声等のデータを記憶する。
【００５０】
データ送信手段１１０は、各クライアント端末２０ａ，２０ｂにコンテンツのデータを送信する。
【００５１】
問い合わせ受信手段１０１、待機時間決定手段１０２、問い合わせ応答送信手段１０３、通信遅延管理手段１０４、制御要求受信手段１０５、制御時刻決定手段１０６、制御情報管理手段１０７、時刻同期手段１０８およびデータ送信手段１１０は、例えば、コンテンツ同期制御プログラムに従って動作するコンピュータのＣＰＵによって実現される。この場合、例えば、コンピュータのプログラム記憶手段（図示略）がコンテンツ同期制御プログラムを記憶し、ＣＰＵがそのプログラムを読み込んで、そのプログラムに従って、上記の各要素１０１，１０２，１０３，１０４，１０５，１０６，１０７，１０８，１１０として動作すればよい。また、上記の各要素が、それぞれ別々のユニットで実現されていてもよい。
【００５２】
図７は、第１の実施形態におけるクライアント端末（コンテンツ再生装置）２０の構成例を示すブロック図である。なお、図７では、クライアント端末を符号“２０”で表す。図１に示す各クライアント端末２０ａ，２０ｂは、いずれも、図７に示すクライアント端末２０と同様である。
【００５３】
クライアント端末２０は、問い合わせ送信手段２０１と、問い合わせ応答受信手段２０２と、問い合わせ制御手段２０３と、制御要求送信手段２０４と、再生手段２０５と、時刻同期手段２０６と、再生制御手段２０７と、データ受信手段２０８と、データ蓄積手段２０９とを備える。クライアント端末２０は、ネットワーク３０を介してサーバ１０（図７において図示略）に接続される。
【００５４】
問い合わせ送信手段２０１は、問い合わせ制御手段２０３に従って、サーバ１０に対して、自端末（クライアント端末２０）に対して未だ送信されていない再生制御コマンドの有無の問い合わせを送信する。
【００５５】
問い合わせ応答受信手段２０２は、問い合わせ送信手段２０１がサーバ１０に送信した問い合わせに対する応答（問い合わせ応答）を、サーバ１０から受信する。既に説明したように、この問い合わせ応答には、待機時間決定手段１０２によって決定された待機時間の情報が含まれる。また、クライアント端末２０に対して送信されていなかった再生制御コマンドがサーバ１０に存在していた場合には、その再生制御コマンドおよび制御開始時刻を含む再生制御情報も、問い合わせ応答に含まれる。
【００５６】
問い合わせ送信手段２０１は、問い合わせ応答受信手段２０２が問い合わせ応答を受信した時刻から待機時間が経過した時に、再度、自端末（クライアント端末２０）に対して未だ送信されていない再生制御コマンドの有無の問い合わせを送信する。従って、問い合わせ送信手段２０１は、サーバ１０に対する問い合わせを繰り返し送信する。問い合わせ送信手段２０１は、サーバ１０に対する問い合わせに、問い合わせ応答の受信時刻から新たな問い合わせの送信時刻までの経過時間（すなわち、上記の待機時間）を含める。
【００５７】
問い合わせ制御手段２０３は、問い合わせ送信手段２０１がサーバ１０に対する問い合わせを送信するタイミングを制御する。すなわち、問い合わせ制御手段２０３は、問い合わせ応答受信手段２０２が問い合わせ応答を受信したときに、その受信時刻の値に、問い合わせ応答が示す待機時間を加算することによって、次回の問い合わせを送信する時刻を算出する。そして、問い合わせ制御手段２０３は、その時刻に、問い合わせ送信手段２０１にサーバ１０への問い合わせを送信させる。
【００５８】
制御要求手段２０４は、クライアント端末２０の使用者の操作に対応した再生制御コマンドを再生制御要求としてサーバ１０に送信する。例えば、クライアント端末２０の使用者が、再生開始を指示する操作を行った場合、制御要求手段２０４は、再生開始を指示する再生制御コマンドを再生制御要求として送信する。同様に、制御要求手段２０４は、使用者の操作に応じて、一時停止、早送り、巻き戻し、頭出し再生等の種々の再生制御コマンドを再生制御要求としてサーバ１０に送信する。
【００５９】
再生手段２０５は、再生制御手段２０７の指示に基づいてコンテンツの再生、一時停止、早送り、巻き戻し、頭出し再生等を実施する。再生手段２０５は、例えば、汎用的なブラウザ上でコンテンツの再生等を行えばよい。
【００６０】
時刻同期手段２０６は、クライアント端末２０が持つ時計の時刻を所定の時刻に同期させることで、クライアント端末２０の時計の時刻を正しい時刻に同期させる。この動作は、サーバにおける時刻同期手段１０８と同様である。
【００６１】
再生制御手段２０７は、問い合わせ応答受信手段２０２が受信した再生制御情報に基づいて、再生手段２０５におけるコンテンツの再生状態を制御する。
【００６２】
データ受信手段２０８は、再生手段２０５において再生するコンテンツをサーバ１０から受信する。
【００６３】
データ蓄積手段２０９は、データ受信手段２０８が受信したコンテンツを蓄積し、再生手段２０５にコンテンツを引き渡す。
【００６４】
問い合わせ送信手段２０１、問い合わせ応答受信手段２０２、問い合わせ制御手段２０３、制御要求送信手段２０４、再生手段２０５、時刻同期手段２０６、再生制御手段２０７、データ受信手段２０８およびデータ蓄積手段２０９は、例えば、コンテンツ再生プログラムに従って動作するコンピュータのＣＰＵによって実現される。この場合、例えば、コンピュータのプログラム記憶手段（図示略）がコンテンツ再生プログラムを記憶し、ＣＰＵがそのプログラムを読み込んで、そのプログラムに従って、上記の各要素２０１〜２０９として動作すればよい。また、上記の各要素が、それぞれ別々のユニットで実現されていてもよい。
【００６５】
なお、本実施の形態では、各クライアント端末が再生するコンテンツは、サーバ１０のデータ記憶手段１０９（図２参照）に記憶され、各クライアント端末のデータ受信手段２０８がサーバ１０からコンテンツを受信する場合を例示している。コンテンツは、サーバ１０とは別の装置に記憶され、各クライアント端末のデータ受信手段２０８がその装置からコンテンツを受信してもよい。また、いずれかのクライアント端末がコンテンツを記憶し、そのクライアント端末と他の各クライアント端末とがコンテンツを送受信する構成であってもよい。
【００６６】
次に、動作について説明する。以下の説明では、サーバ１０の時刻同期手段１０８、および各クライアント端末２０ａ，２０ｂの時刻同期手段２０６が、それぞれ自装置の時計の時刻を所定の時刻（例えば、ＮＴＰサーバの時刻）に同期させているものとする。すなわち、サーバ１０および各クライアント端末２０ａ，２０ｂの時計の時刻は全て正しい時刻に同期済みであるものとする。また、各クライアント端末２０ａ，２０ｂにおいて、データ受信手段２０８は、サーバ１０のデータ送信手段１０１からコンテンツを受信し、データ蓄積手段２０９がそのコンテンツを蓄積済みであるものとする。
【００６７】
以下、クライアント端末からの問い合わせに対して、サーバ１０が再生制御情報を含まない問い合わせ応答を送信する場合の動作と、クライアント端末からの問い合わせに対して、サーバ１０が再生制御情報を含む問い合わせ応答を送信する場合の動作についてそれぞれ説明する。
【００６８】
図８は、クライアント端末からの問い合わせに対して、サーバ１０が再生制御情報を含まない問い合わせ応答を送信する場合の動作の例を示すシーケンス図である。いずれのクライアント端末２０ａ，２０ｂにおいてもユーザの操作が行われていない場合に、図８に示す処理が行われる。
【００６９】
図８では、クライアント端末２０ａがサーバ１０に対して問い合わせを送信する場合を例示している。図８では、クライアント端末２０ｂに関する動作の図示を省略しているが、サーバ１０とクライアント端末２０ａとの間の処理と同様の処理が、サーバ１０とクライアント端末２０ｂとの間でも並列に実行される。
【００７０】
クライアント端末２０ａの問い合わせ送信手段２０１は、クライアント端末２０ａに対する未送信の再生制御コマンドの有無の問い合わせをサーバ１０に送信する（ステップＳ１）。具体的には、前回の問い合わせ応答受信時刻に、その問い合わせ応答が示す待機時間を加算した時刻を問い合わせ制御手段２０３が算出しておき、その時刻に、問い合わせ制御手段２０３が、問い合わせ送信手段２０１にサーバ１０への問い合わせを送信させる。このとき、問い合わせ送信手段２０１は、サーバ１０に送信する問い合わせに、前回の問い合わせ応答受信時刻から、ステップＳ１における問い合わせの送信時刻までの経過時間（すなわち、待機時間）を付加する。
【００７１】
サーバ１０の問い合わせ受信手段１０２は、クライアント端末２０ａが送信した問い合わせを受信する（ステップＳ２）。
【００７２】
次に、サーバ１０の通信遅延管理手段１０４は、保持している通信遅延情報のうち、クライアント端末２０ａに対する前回の問い合わせ応答送信時間を参照する。そして、通信遅延管理手段１０４は、その問い合わせ応答送信時間と、ステップＳ２において問い合わせを受信した時刻と、その問い合わせに付加されている経過時間とに基づいて、サーバ１０とクライアント端末２０ａとの間の通信遅延を算出する。さらに、通信遅延管理手段１０４は、保持している通信遅延情報のうち、クライアント端末２０ａに対応する通信遅延の値を、新たに算出した通信遅延の値に更新する（ステップＳ３）。
【００７３】
次に、サーバ１０の待機時間決定手段１０２は、クライアント端末２０ａがサーバ１０からの問い合わせ応答を受信してから次に問い合わせを送信するまでの待機時間を決定する（ステップＳ４）。待機時間決定手段１０２は、例えば、以下に例示する方法で待機時間を決定すればよい。待機時間決定手段１０２は、同一のクライアント端末からの問い合わせの受信周期を予め記憶する。この問い合わせの受信周期を符号Ｔで表す。問い合わせの受信周期Ｔは、例えば、サーバ１０の管理者が予め定め、待機時間決定手段１０２に記憶させておけばよい。また、問い合わせの受信周期Ｔは、各クライアント端末２０ａ，２０ｂで共通であり、管理者はＴの値として１つの値を定めておけばよい。なお、通信遅延のばらつきのため実際の問い合わせの受信周期にはばらつきが生じるが。予め定められたＴは、問い合わせの受信周期の基準値であるということができる。
【００７４】
待機時間決定手段１０２は、現在時刻を取得する。そして、待機時間決定手段１０２は、Ｔ×ｎが現在時刻に最も近くなる整数ｎを求める。なお、本発明では、Ｔ×ｎが示す時刻は、現在時刻の近辺の時刻となる。Ｔ×ｎと現在時刻が一致することが理想的であるが、同一のクライアント端末とサーバ１０との通信遅延にばらつきが生じるため、Ｔ×ｎが表す時刻は現在時刻よりも前になったり後になったりし得る。なお、待機時間決定手段１０２は、例えば、ステップＳ２における問い合わせ受信時刻を現在時刻として用いてもよい。あるいは、ステップＳ３を終了し、ステップＳ４を開始するときの時刻を現在時刻として用いてもよい。コンピュータの処理上、ステップＳ２における受信時刻と、ステップＳ４の開始時刻とでほとんど差はなく、待機時間決定手段１０２は、ステップＳ４実行時の近傍の時刻を現在時刻とすればよい。待機時間決定手段１０２は、通信遅延管理手段１０４から、問い合わせの送信元のクライアント端末２０ａの通信遅延の値を読み込み、以下の式（２）の計算を行うことによって、クライアント端末２０ａの待機時間を決定する。
【００７５】
待機時間＝Ｔ×（ｎ＋１）−現在時刻−通信遅延の値          式（２）
【００７６】
上記のように待機時間を決定することにより、クライアント端末２０ａから次回の問い合わせを受信する時刻は、ほぼＴ×（ｎ＋１）となる。ここで、「ほぼＴ×（ｎ＋１）」としたのは、通信遅延のばらつきを考慮したためである。
【００７７】
ステップＳ４の後、サーバ１０の制御情報管理手段１０７は、問い合わせの送信元のクライアント端末２０ａに対して送信する再生制御コマンドを記憶しているか否かを確認する（ステップＳ５）。図８に示す例では、問い合わせの送信元に対して送信する再生制御コマンドは存在しない（すなわち、制御情報管理手段１０７が記憶していない）ものとする。そのような再生制御コマンドがある場合の処理経過については、後述の図９および図１０を参照して説明する。
【００７８】
問い合わせの送信元に対して送信する再生制御コマンドが存在しない場合、サーバ１０の問い合わせ応答送信手段１０３は、ステップＳ４で決定された待機時刻を記述した問い合わせ応答を、問い合わせの送信元のクライアント端末２０ａに送信する（ステップＳ６）。このとき、クライアント端末２０ａへの再生制御コマンドは存在しないので、問い合わせ応答に再生制御情報は付加されない。また、このとき、通信遅延管理手段１０４は、問い合わせ応答の送信時刻で、クライアント端末２０ａに対応する「前回の問い合わせ応答送信時刻」を更新する。
【００７９】
問い合わせの送信元であるクライアント端末２０ａにおいて、問い合わせ応答受信手段２０２は、ステップＳ６でサーバ１０が送信した問い合わせ応答を受信する（ステップＳ７）。
【００８０】
次に、クライアント端末２０ａの問い合わせ制御手段２０３は、問い合わせ応答に記述された待機時間を読み込み、その待機時間が経過するまで、問い合わせ送信手段２０１を、問い合わせの送信を行わないまま待機させる。問い合わせ送信手段２０１は、問い合わせ制御手段２０３に従って、待機時間が経過するまで待機する（ステップＳ８）。具体的には、問い合わせ制御手段２０３は、ステップＳ７における問い合わせ応答の受信時刻に待機時間を加算した時刻を算出し、その時刻まで問い合わせ送信手段２０１を待機させる。
【００８１】
そして、問い合わせ制御手段２０３は、問い合わせ応答の受信時刻に待機時間を加算した時刻になったときに、問い合わせ送信手段２０１にサーバ１０への問い合わせを送信させる。問い合わせ送信手段２０１は、問い合わせ制御手段２０３に従って、サーバ１０に対して、再度、問い合わせを送信する（ステップＳ９）。このとき、問い合わせ送信手段２０１は、前回の問い合わせ応答受信時刻から、ステップＳ９における問い合わせの送信時刻までの経過時間を、問い合わせに付加して送信する。
【００８２】
この結果、ステップＳ９で送信された問い合わせをサーバ１０が受信する時刻は、ほぼＴ×（ｎ＋１）となる。
【００８３】
ステップＳ９は、ステップＳ１と同様の処理であり、ステップＳ９以降の処理は、ステップＳ１以降の処理と同様である。
【００８４】
既に説明したように、サーバ１０とクライアント端末２０ａとの間の処理と同様の処理が、サーバ１０とクライアント端末２０ｂとの間でも並列に実行される。従って、上記の例と同様に、クライアント端末２０ｂがステップＳ９として送信した問い合わせも、ほぼ時刻Ｔ×（ｎ＋１）に、サーバ１０によって受信される。
【００８５】
以上のように、各クライアント端末２０ａ，２０ｂが送信する問い合わせは、ほぼ同時刻にサーバ１０に到達するように調整される。
【００８６】
図９および図１０は、クライアント端末からの問い合わせに対して、サーバ１０が再生制御情報を含む問い合わせ応答を送信する場合の動作の例を示すシーケンス図である。図９では、クライアント端末２０ａの使用者がコンテンツの再生開始や一時停止等の操作を行った場合の例にして説明する。
【００８７】
まず、クライアント端末２０ａの使用者がコンテンツの再生制御の操作を行う。本例では、動画の再生中に使用者が一時停止操作を行ったとする。クライアント端末２０ａにおいて、ユーザによる再生制御の操作が行われると、クライアント端末２０ａの制御要求送信手段２０４は、サーバ１０に再生制御要求を送信する（ステップＳ２１）。ここでは、図４の例１に示す再生制御コマンド（一時停止の開始を指示するコマンド）を再生制御要求として送信する場合を例にする。
【００８８】
サーバ１０の制御要求受信手段１０５は、ステップＳ２１で送信された再生制御要求を受信する（ステップＳ２２）。そして、サーバ１０の制御情報管理手段１０７は、再生制御要求として受信した再生制御コマンド（本例では、図４の例１に示すコマンド）を記憶する（ステップＳ２３）。このとき、制御情報管理手段１０７は、コンテンツ制御を同期させる対象となる各クライアント端末の識別子とともに、再生制御コマンドを記憶する。本例では、クライアント端末２０ａ、２０ｂの識別子（“２０ａ”，“２０ｂ”）とともに再生制御コマンドを記憶する。すなわち、制御情報管理手段１０７は、図６に例示する情報を記憶する。制御情報管理手段１０７が記憶した情報（図６参照）は、再生制御コマンド（ｃｏｍｍａｎｄ＝ｐａｕｓｅ）がまだ再生制御情報としてクライアント端末２０ａ、２０ｂに送信されていないことを表す。
【００８９】
なお、コンテンツ制御を同期させる対象となる各クライアント端末の識別子は、予め制御情報管理手段１０７に保持させておけばよい。
【００９０】
ここでは、クライアント端末２０ａの使用者が操作を行い、クライアント端末２０ａが再生制御要求を送信した場合を例に説明した。クライアント端末２０ｂの使用者が操作を行い、クライアント端末２０ｂが再生制御要求を送信した場合のサーバ１０の動作も、上記のステップＳ２２，Ｓ２３と同様である。
【００９１】
次に、クライアント端末２０ａの問い合わせ送信手段２０１が、クライアント端末２０ａに対する未送信の再生制御コマンドの有無の問い合わせをサーバ１０に送信する（ステップＳ２４）。そして、サーバ１０の問い合わせ受信手段１０２は、その問い合わせを受信する（ステップＳ２５）。ステップＳ２４，Ｓ２５の動作は、ステップＳ１，Ｓ２（図８参照）の動作と同様である。また、図９では図示を省略しているが、ステップＳ２５の後、通信遅延管理手段１０４が通信遅延情報の更新を行い、待機時間決定手段１０２が待機時間を決定する。この動作は、前述のステップＳ３，Ｓ４の動作と同様である。
【００９２】
その後、サーバ１０の制御情報管理手段１０７は、問い合わせの送信元のクライアント端末２０ａに対して送信する再生制御コマンドを記憶しているか否かを確認する（ステップＳ２６）。本例では、制御情報管理手段１０７は、図６に例示する情報を保持している。従って、制御情報管理手段１０７は、クライアント端末２０ａに対して送信する再生制御コマンド（ｃｏｍｍａｎｄ＝ｐａｕｓｅ）が存在すると判定する。
【００９３】
クライアント端末２０ａに対して送信する再生制御コマンドが存在する場合、制御時刻決定手段１０６は、その再生制御コマンドに関する制御開始時刻が決定されていないことを条件に、その再生制御コマンドに関する制御開始時刻を決定する（ステップＳ２７）。既に制御開始時刻が決定されている場合には、ステップＳ２７の処理を実行しなくてよい。
【００９４】
制御時刻決定手段１０６は、例えば、以下に例示する方法で制御開始時刻を決定すればよい。制御時刻決定手段１０６は、現在時刻を取得する。また、制御時刻決定手段１０６は、遅延情報管理手段１０４が記憶している通信遅延情報（図３に例示する情報）を参照し、コンテンツ制御を同期させる対象となる各クライアント端末２０ａ，２０ｂの通信遅延を読み込む。以下、その各クライアント端末２０ａ，２０ｂの通信遅延の最大値をＲｍａｘと表す。また、各クライアント端末内での再生制御処理時間をαとする。再生制御処理時間αは、再生制御手段２０７が、再生制御コマンドに応じたコンテンツ制御を開始する前に要するマージン時間である。制御時刻決定手段１０６は、以下の式（３）の計算を行うことによって、制御開始時刻を決定する。
【００９５】
制御開始時刻＝現在時刻＋（Ｒｍａｘ／２）＋α          式（３）
【００９６】
式（３）において、Ｒｍａｘ／２を用いる理由について説明する。既に説明したように、通信遅延は、クライアント端末とサーバ１０との間の往復の通信に要する時間である。一方、制御開始時刻の導出に必要となるのは、サーバ１０からクライアント端末に再生制御情報を送信し、クライアント端末が再生制御情報に応じて再生、一時停止等の処理を実行するのに要する時間である。そして、Ｒｍａｘ／２は、サーバ１０から各クライアント端末までの片道の通信時間の最大値に相当する。そのため、式（３）では、通信遅延の最大値Ｒｍａｘそのものではなく、Ｒｍａｘ／２を加算することとしている。
【００９７】
再生制御処理時間αは、サーバ１０の管理者が予め定めておき、制御時刻決定手段１０６に記憶させておけばよい。なお、各クライアント端末２０ａ，２０ｂにおける再生制御処理時間が共通である場合には、その共通の値をαとして定めればよい。クライアント端末２０ａ，２０ｂ間で再生制御処理時間にばらつきがある場合には、その最大値をαとして定めればよい。
【００９８】
また、制御時刻決定手段１０６は、ステップＳ２７実行時の近傍の時刻を現在時刻として用いればよい。例えば、ステップＳ２６が終了し、ステップＳ２７が開始する時点の時刻を現在時刻として用いればよい。
【００９９】
式（３）の計算例を示す。例えば、現在時刻が「１３０８６３７１５１８３２」であるとする。また、図３に示すように、クライアント端末２０ａの通信遅延が１０ミリ秒であり、クライアント端末２０ｂの通信遅延が２００ミリ秒であるとする。このとき、Ｒｍａｘ＝２００である。また、再生制御処理時間αが１００ミリ秒として定められているとする。この場合、制御時刻決定手段１０６は、以下の計算により、制御開始時刻「１３０８６３７１５２０３２」を算出すればよい。
【０１００】
１３０８６３７１５１８３２＋２００／２＋１００＝１３０８６３７１５２０３２
【０１０１】
式（３）におけるＲｍａｘ／２は、サーバ１０とクライアント端末間の片道の通信時間の最大値を表す。サーバ１０とクライアント端末間の片道の通信時間の最大値を表す値として、Ｒｍａｘ／２以外の値を用いてもよい。通信方式によっては、サーバ１０とクライアント端末間の片道の通信時間の最大値が、２以外の値ｋを用いてＲｍａｘ／ｋと表される場合もある。ｋは通信方式に応じた値である。従って、通信方式によっては、その通信方式に応じた値ｋを用いて、式（３）におけるＲｍａｘ／２をＲｍａｘ／ｋに置き換えればよい。
【０１０２】
制御時刻決定手段１０６は、制御開始時刻を算出した後、ステップＳ２６で存在すると判定された再生制御コマンドと組み合わせることにより、再生制御情報を生成する。
【０１０３】
次に、問い合わせ応答送信手段１０３は、待機時刻を記述した問い合わせ応答に、制御時刻決定手段１０６によって生成された再生制御情報を含め、問い合わせの送信元のクライアント端末２０ａに問い合わせ応答を送信する（ステップＳ２８）。このとき、通信遅延管理手段１０４は、問い合わせ応答の送信時刻で、クライアント端末２０ａに対応する「前回の問い合わせ応答送信時刻」を更新する。
【０１０４】
続いて、制御情報管理手段１０７は、記憶している情報を更新する（ステップＳ２９）。具体的には、ステップＳ２６で存在すると判定された再生制御コマンドを、制御時刻決定手段１０６に生成された再生制御情報の内容で更新する。この結果、制御情報管理手段１０７は、制御開始時刻を記憶せずに再生制御コマンドを記憶している状態から、制御開始時刻および再生制御コマンドを記憶する状態に移行する。また、その再生制御コマンドに対応するクライアント端末の識別子のうち、再生制御情報（問い合わせ応答）の送信先であるクライアント端末の識別子を削除する。ステップＳ２９における更新後の情報の例を図１１に示す。図６に示す更新前の情報と比較すると、再生制御情報の送信先であるクライアント端末２０ａの識別子“２０ａ”が削除されている。また、制御開始時刻が追加され、再生制御情報として再生制御コマンドが記憶されている。
【０１０５】
また、クライアント端末２０ａの問い合わせ応答受信手段１０３は、ステップＳ２８で送信された問い合わせ応答を受信する（ステップＳ３０）。そして、クライアント端末２０ａの再生制御手段２０７は、問い合わせ応答に含まれる再生制御情報が示す制御開始時刻に応じて、コンテンツ再生制御を行わずに待機する（ステップＳ３１）。以後の動作は、図１０を参照して説明する。
【０１０６】
また、クライアント端末２０ｂの問い合わせ送信手段２０１は、クライアント端末２０ｂに対する未送信の再生制御コマンドの有無の問い合わせをサーバ１０に送信する（ステップＳ３２）。そして、サーバ１０の問い合わせ受信手段１０２は、その問い合わせを受信する（ステップＳ３３）。なお、各クライアント端末２０ａ，２０ｂからの問い合わせをサーバ１０が受信する時刻はほぼ同時刻になるように調整されているが、図９および図１０に示す例では、クライアント端末２０ａからの問い合わせを先に受信した場合を例示している。
【０１０７】
ステップＳ３２，Ｓ３３の動作は、ステップＳ２４，Ｓ２５（図９参照）の動作や、ステップＳ１，Ｓ２（図８参照）の動作と同様である。また、図１０では図示を省略しているが、ステップＳ３３の後、通信遅延管理手段１０４が通信遅延情報の更新を行い、待機時間決定手段１０２が待機時間を決定する。この動作は、前述のステップＳ３，Ｓ４の動作と同様である。
【０１０８】
その後、サーバ１０の制御情報管理手段１０７は、問い合わせの送信元のクライアント端末２０ｂに対して送信する再生制御コマンドを記憶しているか否かを確認する（ステップＳ３４）。本例では、制御情報管理手段１０７は、図１１に例示する情報を保持している。従って、制御情報管理手段１０７は、クライアント端末２０ｂに対して送信する再生制御コマンド（ｃｏｍｍａｎｄ＝ｐａｕｓｅ）が存在すると判定する。なお、図１１に示す例では、再生制御コマンドは、制御開始時刻とともに再生制御情報として記憶されている。
【０１０９】
ステップＳ３４は、ステップＳ２６と同様の処理であるが、ステップＳ３４の時点で、再生制御コマンドに対応する制御開始時刻は既に決定されている。従って、ステップＳ３４の後には、制御時刻決定手段１０６は制御開始時刻の決定を行わなくてよい。よって、ステップＳ３４の後、問い合わせ応答送信手段１０３は、図１１に例示する再生制御情報を含めた問い合わせ応答を、問い合わせの送信元のクライアント端末２０ｂに送信する（ステップＳ３５）。なお、問い合わせ応答送信手段１０３は、問い合わせ応答に待機時間の情報も含めておく。また、このとき、通信遅延管理手段１０４は、問い合わせ応答の送信時刻で、クライアント端末２０ｂに対応する「前回の問い合わせ応答送信時刻」を更新する。
【０１１０】
続いて、制御情報管理手段１０７は、記憶している情報を更新する（ステップＳ３６）。ここでは、制御情報管理手段１０７は、ステップＳ３５で問い合わせ応答に含めた再生制御情報に対応するクライアント端末の識別子のうち、再生制御情報（問い合わせ応答）の送信先であるクライアント端末の識別子を削除する。そして、再生制御情報に対応するクライアント端末の識別子が全て削除された場合には、その再生制御情報も削除する。本例では、ステップＳ３５で、クライアント端末２０ｂに再生制御情報を送信したので識別子“２０ｂ”を削除する。すると、図１１に示す再生制御情報に対応するクライアント端末の識別子が全て削除された状態になるので、制御情報管理手段１０７は、その再生制御情報も削除する。
【０１１１】
また、クライアント端末２０ｂの問い合わせ応答受信手段１０３は、ステップＳ３５で送信された問い合わせ応答を受信する（ステップＳ３７）。そして、クライアント端末２０ｂの再生制御手段２０７は、問い合わせ応答に含まれる再生制御情報が示す制御開始時刻に応じて、コンテンツ再生制御を行わずに待機する（ステップＳ３８）。
【０１１２】
クライアント端末２０ａ，２０ｂが受信した再生制御情報に含まれている制御開始時刻は、同一時刻である。クライアント端末２０ａ，２０ｂの再生制御手段２０７はそれぞれ、その制御開始時刻に、再生制御情報内の再生制御コマンドが示すコンテンツ制御を実行する（ステップＳ３９，Ｓ４０）。各クライアント端末２０ａ，２０ｂの再生手段２０５は、再生制御手段２０７の制御の応じた動作を行う。本例では、再生中の動画を一時停止する処理を行う。この結果、クライアント端末２０ａ，２０ｂで再生されていた動画は同期して一時停止する。ここでは、一時停止を例にして説明したが、再生開始、早送り、巻き戻し、頭出し再生等の場合でも同様である。
【０１１３】
また、図９および図１０に示す例では、クライアント端末２０ａが先に問い合わせを送信する場合を例示しているが、クライアント端末２０ｂが先に問い合わせを送信してもよい。
【０１１４】
なお、図９および図１０では、クライアント端末２０ａ，２０ｂが問い合わせ応答を受信した後、次の問い合わせを送信する動作の図示を省略しているが、各クライアント端末２０ａ，２０ｂが問い合わせ応答受信後に次の問い合わせを送信する動作は、図８に示した場合と同様である。
【０１１５】
本実施形態によれば、サーバ１０が、コンテンツ制御を同期させる対象となる複数のクライアント端末２０ａ，２０ｂからの問い合わせをほぼ同時に受信するように調整する。そして、サーバ１０は、それらのクライアント端末２０ａ，２０ｂのうちの任意の一つのクライアント端末から問い合わせを受信したときに、全てのクライアント端末で同時にコンテンツ制御を実行する時刻（制御開始時刻）を決定する。さらに、サーバ１０が、ほぼ同時に受信する各クライアント端末２０ａ、２０ｂからの問い合わせに対応する応答として、その制御開始時刻を含む問い合わせ応答を送信する。従って、サーバ１０が、ＨＴＴＰに従って通信を行う環境で、各クライアント端末２０ａ、２０ｂにおけるコンテンツ制御を同期させることができる。
【０１１６】
また、サーバ１０は、制御開始時刻を決定する際に、問い合わせ受信周期Ｔを加算しなくてもよい（式（３）参照）。従って、制御開始時刻を早い時刻として定めることができる。
【０１１７】
また、特許文献３に記載された技術のうち、ユーザコンピュータ間でビデオデータに関する命令をピア・ツー・ピアで送信する態様では、ＮＡＴ（network address translation）やファイアウォールのもとにあるユーザコンピュータに命令直接を送信することは困難である。この問題は、ＴＣＰ（transmission control protocol ）に適応した専用アプリケーションソフトウェアをユーザコンピュータにインストールすることで解決可能である。しかし、専用アプリケーションソフトウェアが必要となる。これに対し、本発明では、ＨＴＴＰに従って通信を行うので、サーバ１０はＮＡＴ等のもとにあるクライアント端末に対する制御を行うことができる。また、ＴＣＰに適応した専用アプリケーションソフトウェアを用いる必要もなく、汎用的なブラウザでコンテンツを再生することができる。
【０１１８】
実施形態２．
図１２は、本発明の第２の実施形態のコンテンツ同期システムの例を示すブロック図である。第２の実施形態のコンテンツ同期システムは、コンテンツ同期制御装置１１と、複数のコンテンツ再生装置２０ａ，２０ｂとを備える。コンテンツ同期制御装置１０と各コンテンツ再生装置２０ａ，２０ｂとは、ネットワーク３０を介して接続されている。コンテンツ再生装置２０ａ，２０ｂは、第１の実施形態におけるコンテンツ再生装置２０ａ，２０ｂと同様であり、詳細な説明を省略する。以下、第１の実施形態と同様に、コンテンツ同期制御装置をサーバと記し、コンテンツ再生装置をクライアント端末と記す。
【０１１９】
サーバ１１は、第１の実施形態におけるサーバ１０の動作に加え、クライアント端末からの問い合わせの受信周期Ｔを更新する処理も行う。問い合わせの受信周期Ｔの更新条件については後述する。
【０１２０】
図１３は、第２の実施形態におけるサーバ（コンテンツ同期制御装置）１１の構成例を示すブロック図である。第１の実施形態におけるサーバ１０の要素と同様の要素については、図２と同一の符号を付し、説明を省略する。サーバ１１は、第１の実施形態におけるサーバ１０の各要素に加え、問い合わせ受信周期調整手段１２１を備える。
【０１２１】
問い合わせ受信周期調整手段１２１は、所定の条件が満たされた場合に、クライアント端末からの問い合わせの受信周期Ｔを更新することによって、Ｔの値を調整する。問い合わせの受信周期Ｔの初期値は、例えば、サーバ１１の管理者が予め定め、待機時間決定手段１０２に記憶させておけばよい。そして、問い合わせ受信周期調整手段１２１は、待機時間決定手段１０２に記憶されたＴを更新する。
【０１２２】
問い合わせ受信周期調整手段１２１は、通信遅延の値の更新処理の後、その更新後の通信遅延（以下、ｄａとする。）と、問い合わせの受信周期Ｔとを比較する。そして、問い合わせ受信周期調整手段１２１は、更新後の通信遅延ｄａが問い合わせ受信周期Ｔよりも大きいことを条件に、Ｔをｄａよりも大きな値に更新する。例えば、問い合わせ受信周期調整手段１２１は、Ｔ＝ｄａ×１．１の計算を行うことによって、更新後のＴの値を計算する。ただし、この計算は、新たなＴの値の計算の一例であり、Ｔ＞ｄａという関係を満足するようにＴを更新すれば、更新後のＴの値の計算方法は、上記の計算方法に限定されない。
【０１２３】
問い合わせ受信周期調整手段１２１は、例えば、例えば、コンテンツ同期制御プログラムに従って動作するコンピュータのＣＰＵによって実現される。また、問い合わせ受信周期調整手段１２１および他の各要素が、それぞれ別々のユニットで実現されていてもよい。
【０１２４】
図１４は、第２の実施形態における動作の例を示すシーケンス図である。図８に示す処理と同様の処理に関しては、図８と同一の符号を付し、詳細な説明を省略する。
【０１２５】
クライアント端末２０ａの問い合わせ送信手段２０１は、クライアント端末２０ａに対する未送信の再生制御コマンドの有無の問い合わせをサーバ１１に送信する（ステップＳ１）。サーバ１１の問い合わせ受信手段１０２は、クライアント端末２０ａが送信した問い合わせを受信する（ステップＳ２）。次に、サーバ１１の通信遅延管理手段１０４は、クライアント端末２０ａとサーバ１１との間の通信遅延を算出する。そして、サーバ１１の通信遅延管理手段１０４は、保持している通信遅延情報のうち、クライアント端末２０ａとサーバ１１との間の通信遅延の値を更新する（ステップＳ３）。ステップＳ１〜Ｓ３の動作は、第１の実施形態における動作と同様である。
【０１２６】
第２の実施形態では、ステップＳ３の後、問い合わせ受信周期調整手段１２１は、ステップＳ３で算出されたクライアント端末２０ａとサーバ１１との間の通信遅延ｄａと、問い合わせの受信周期Ｔとを比較し、ｄａ＞Ｔであることを条件に、Ｔの値をｄａよりも大きな値に更新する（ステップＳ１０）。ステップＳ１０において、ｄａ≦Ｔであれば、問い合わせ受信周期調整手段１２１はＴを更新しない。
【０１２７】
問い合わせ受信周期調整手段１２１が上記のステップＳ１０の処理を行うことにより、問い合わせの受信周期Ｔは、それまでに求められた通信遅延の最大値よりも大きな値に調整される。
【０１２８】
ステップＳ１０の後の動作（ステップＳ４以降の動作）は、第１の実施形態と同様である。なお、ステップＳ４において、待機時間決定手段１０２は、最新のＴの値を用いて待機時間を計算する。
【０１２９】
なお、図１３では、クライアント端末２０ａがサーバ１１に対して問い合わせを送信する場合を例示しているが、クライアント端末２０ｂがサーバ１１に対して問い合わせを送信する場合の動作も同様である。また、どのクライアント端末に関する待機時間を計算する場合であっても、サーバ１１は共通のＴを用いる。すなわち、サーバ１１は、クライアント端末毎に問い合わせの受信周期Ｔを区別することはない。そして、待機時間決定手段１０２は、クライアント端末に依らず、ステップＳ４実行時におけるＴの値を用いて、待機時間を計算する。
【０１３０】
以上のような動作により、各クライアント端末２０ａ，２０ｂが送信する問い合わせは、ほぼ同時刻にサーバ１１に到達するように調整される。
【０１３１】
第２の実施形態において、クライアント端末からの問い合わせに対してサーバ１１が再生制御情報を含む問い合わせ応答を送信する場合の動作について説明する。前述の第１の実施形態において、図９では図示を省略しているが、ステップＳ２５，Ｓ２６の間でステップＳ３，Ｓ４と同様の処理が行われると説明した。同様に、図１０では図示を省略しているが、ステップＳ３３，Ｓ３４の間でステップＳ３，Ｓ４と同様の処理が行われると説明した。第２の実施形態では、サーバ１１は、ステップＳ２５，Ｓ２６の間でステップＳ３，Ｓ１０，Ｓ４と同様の動作を行う。また、サーバ１１は、ステップＳ３３，Ｓ３４の間でもステップＳ３，Ｓ１０，Ｓ４と同様の動作を行う。その他の点に関しては、第１の実施形態と同様である。
【０１３２】
第２の実施形態においても、第１の実施形態と同様の効果が得られる。さらに、第２の実施形態では、問い合わせ受信周期調整手段１２１が、問い合わせの受信周期Ｔを過去における通信遅延の最大値よりも大きな値に調整する。従って、通信遅延が増大した場合であっても、サーバ１１は、各クライアント端末２０ａ，２０ｂからの問い合わせを、ほぼ共通の周期で、ほぼ同一時刻に受信することができる。その結果、通信遅延が増大した場合であっても、第１の実施形態と同様の効果を得ることができる。
【０１３３】
また、上記の第２の実施形態では、ｄａ＞Ｔであることを条件に、Ｔの値をｄａよりも大きな値に更新する。この更新処理に加えて、問い合わせ受信周期調整手段１２１は、ｄａ＞Ｔとは異なる他の条件が満たされた場合にＴをより小さな値に更新してもよい。例えば、「ステップＳ３で更新された通信遅延ｄａの値が所定の値以下である」という条件が満たされた場合には、問い合わせ受信周期調整手段１２１は、ステップＳ１０でＴの値を初期値に戻してもよい。この所定の値として、Ｔの初期値未満の値（例えば、０．８×Ｔ）を用いればよい。
【０１３４】
第２の実施形態では、通信状態が悪くなり通信遅延ｄａの値が大きくなると、Ｔの値も大きくなる。その結果、通信状態が悪くなった場合であっても、サーバ１１は、各クライアント端末２０ａ，２０ｂからの問い合わせを、ほぼ共通の周期でほぼ同一時刻に受信することができる。ただし、Ｔの値が大きくなると、クライアント端末の使用者が再生に関する種々の操作を行った際、操作に応じたコンテンツ制御が行われるまでのレスポンス期間が長くなる。上記のように、ステップＳ３で更新された通信遅延ｄａの値がＴの初期値未満の値であるという条件が満たされた場合に、問い合わせ受信周期調整手段１２１がＴの値を初期値に戻すことで、通信状態が良好な状態に回復したときに操作に対するレスポンス期間を短くすることができる。
【０１３５】
なお、上記の各実施形態において、時刻同期手段１０８，２０６は、それぞれ原子時計による時刻情報を電波によって受信し、自装置の時計の時刻を、その時刻情報が示す時刻に同期させてもよい。
【０１３６】
次に、本発明の最小構成について説明する。図１５は、本発明のコンテンツ同期システムの最小構成を示すブロック図である。図１６は、本発明のコンテンツ同期制御装置の最小構成を示すブロック図である。図１７は、本発明のコンテンツ再生装置の最小構成を示すブロック図である。図１６および図１７において、図１５に示す要素と同一の要素には、図１５と同一の符号を付している。
【０１３７】
本発明のコンテンツ同期システムは、コンテンツを再生する複数のコンテンツ再生装置９０と、複数のコンテンツ再生装置９０におけるコンテンツ制御を同期させるコンテンツ同期制御装置８０とを備える。
【０１３８】
コンテンツ同期制御装置８０は、要求情報受信手段８１と、問い合わせ受信手段８２と、待機時間決定手段８３と、開始時刻決定手段８４と、問い合わせ応答送信手段８５とを備える（図１５および図１６参照）。
【０１３９】
要求情報受信手段８１（例えば、制御要求受信手段１０５）は、コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置９０で同期して実行されることを要求する要求情報（例えば、再生制御要求）を各コンテンツ再生装置９０から受信する。
【０１４０】
問い合わせ受信手段８２（例えば、問い合わせ受信手段１０１）は、各コンテンツ再生装置９０から、そのコンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせを受信する。
【０１４１】
待機時間決定手段８３（例えば、待機時間決定手段１０２）は、問い合わせの受信周期の基準として定められる周期基準値（例えば、Ｔ）に基づいて、各コンテンツ再生装置９０からの問い合わせの受信時刻が揃うように、問い合わせの送信元のコンテンツ再生装置が問い合わせに対するコンテンツ同期制御装置８０からの応答である問い合わせ応答を受信してから次の問い合わせを送信するまでの待機時間を決定する。
【０１４２】
開始時刻決定手段８４（例えば、制御時刻決定手段１０６）は、問い合わせ受信手段８２が問い合わせを受信したときに、要求情報受信手段８１が要求情報を受信済みであり、その要求情報が示す再生制御コマンドに応じた各コンテンツ再生装置によるコンテンツ制御の開始時刻が未決定である場合に、当該開始時刻を決定する。
【０１４３】
問い合わせ応答送信手段８５（例えば問い合わせ応答送信手段１０３）は、問い合わせの送信元のコンテンツ再生装置に関して決定された待機時間を含む問い合わせ応答をそのコンテンツ再生装置に送信する。そして、問い合わせ応答送信手段８５は、問い合わせ受信手段８２が問い合わせを受信したときに、要求情報受信手段８１が要求情報を受信済みであり、開始時刻が決定されている場合に、その要求情報が示す再生制御コマンドおよび開始時刻の情報を含む再生制御情報を含めた問い合わせ応答を送信する。
【０１４４】
また、コンテンツ再生装置９０は、要求情報送信手段９１と、問い合わせ送信手段９２と、問い合わせ応答受信手段９３と、問い合わせ送信制御手段９４と、再生制御手段９５とを備える。
【０１４５】
要求情報送信手段９１（例えば、制御要求送信手段２０４）は、コンテンツ同期制御装置８０に要求情報を送信する。
【０１４６】
問い合わせ送信手段９２（例えば、問い合わせ送信手段２０１）は、コンテンツ同期制御装置８０に問い合わせを送信する。
【０１４７】
問い合わせ応答受信手段９３は、問い合わせに応じて問い合わせ応答送信手段８５が送信した問い合わせ応答を受信する。
【０１４８】
問い合わせ送信制御手段９４（例えば、問い合わせ制御手段２０３）は、問い合わせ応答が示す待機時間に応じたタイミングで問い合わせ送信手段９２に次の問い合わせを送信させる。
【０１４９】
再生制御手段９５（例えば、再生制御手段２０７）は、問い合わせ応答が再生制御情報を含んでいる場合に、再生制御情報が示す開始時刻に、再生制御情報が示す再生制御コマンドによるコンテンツ制御を開始する。
【０１５０】
以上のような構成により、ＨＴＴＰのもとで、複数のコンテンツ再生装置でのコンテンツ制御を同期させるようにコンテンツ同期制御装置が各コンテンツ再生装置を制御することができる。
【０１５１】
上記の実施形態の一部または全部は、以下の付記のようにも記載され得るが、以下に限定されるわけではない。
【０１５２】
（付記１）コンテンツを再生する複数のコンテンツ再生装置と、前記複数のコンテンツ再生装置におけるコンテンツ制御を同期させるコンテンツ同期制御装置とを備え、前記コンテンツ同期制御装置は、コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置で同期して実行されることを要求する要求情報を各コンテンツ再生装置から受信する要求情報受信部と、各コンテンツ再生装置から、当該コンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせを受信する問い合わせ受信部と、問い合わせの受信周期の基準として定められる周期基準値に基づいて、各コンテンツ再生装置からの問い合わせの受信時刻が揃うように、問い合わせの送信元のコンテンツ再生装置が問い合わせに対する当該コンテンツ同期制御装置からの応答である問い合わせ応答を受信してから次の問い合わせを送信するまでの待機時間を決定する待機時間決定部と、前記問い合わせ受信部が問い合わせを受信したときに、要求情報受信部が前記要求情報を受信済みであり、前記要求情報が示す再生制御コマンドに応じた各コンテンツ再生装置によるコンテンツ制御の開始時刻が未決定である場合に、当該開始時刻を決定する開始時刻決定部と、問い合わせの送信元のコンテンツ再生装置に関して決定された待機時間を含む問い合わせ応答を前記コンテンツ再生装置に送信する問い合わせ応答送信部とを備え、前記問い合わせ応答送信部は、前記問い合わせ受信部が問い合わせを受信したときに、要求情報受信部が前記要求情報を受信済みであり、前記開始時刻が決定されている場合に、前記要求情報が示す再生制御コマンドおよび前記開始時刻の情報を含む再生制御情報を含めた問い合わせ応答を送信し、各コンテンツ再生装置は、前記コンテンツ同期制御装置に前記要求情報を送信する要求情報送信部と、前記コンテンツ同期制御装置に前記問い合わせを送信する問い合わせ送信部と、前記問い合わせに応じて前記問い合わせ応答送信部が送信した問い合わせ応答を受信する問い合わせ応答受信部と、前記問い合わせ応答が示す待機時間に応じたタイミングで問い合わせ送信部に次の問い合わせを送信させる問い合わせ送信制御部と、前記問い合わせ応答が再生制御情報を含んでいる場合に、当該再生制御情報が示す開始時刻に、当該再生制御情報が示す再生制御コマンドによるコンテンツ制御を開始する再生制御部とを備えることを特徴とするコンテンツ同期システム。
【０１５３】
（付記２）コンテンツ同期制御装置は、問い合わせ受信部が問い合わせを受信したときに、当該問い合わせの送信元のコンテンツ再生装置と当該コンテンツ同期制御装置との間の通信遅延を計算する通信遅延計算部と、前記通信遅延が周期基準値よりも大きな値であることを条件に、周期基準値を前記通信遅延よりも大きな値に更新する周期基準値更新部とを備える付記１に記載のコンテンツ同期システム。
【０１５４】
（付記３）周期基準値更新部は、通信遅延計算部によって計算された通信遅延が所定の値以下になったことを条件に、周期基準値を初期値に戻す付記２に記載のコンテンツ同期システム。
【０１５５】
（付記４）各コンテンツ再生装置の問い合わせ送信部は、問い合わせ応答の受信時から問い合わせの送信時までの経過時間の情報を問い合わせに含めて送信し、コンテンツ同期制御装置の通信遅延計算部は、問い合わせ応答の送信間隔から前記経過時間を減算することにより、問い合わせの送信元のコンテンツ再生装置に関する通信遅延を計算する付記２または付記３に記載のコンテンツ同期システム。
【０１５６】
（付記５）待機時間決定部は、問い合わせ受信部が問い合わせを受信したときに、少なくとも、コンテンツ同期制御装置から各コンテンツ再生装置までの片道の通信時間の最大値分、現在時刻よりも後の時刻を開始時刻として決定する付記１から付記４のうちのいずれかに記載のコンテンツ同期システム。
【０１５７】
（付記６）待機時間決定部は、予め定められた基準時点から周期基準値の整数倍の期間が経過した時刻にコンテンツ再生装置からの問い合わせを受信するように、待機時間を決定する付記１から付記５のうちのいずれかに記載のコンテンツ同期システム。
【０１５８】
（付記７）コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置で同期して実行されることを要求する要求情報を各コンテンツ再生装置から受信する要求情報受信部と、各コンテンツ再生装置から、当該コンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせを受信する問い合わせ受信部と、問い合わせの受信周期の基準として定められる周期基準値に基づいて、各コンテンツ再生装置からの問い合わせの受信時刻が揃うように、問い合わせの送信元のコンテンツ再生装置が問い合わせに対する当該コンテンツ同期制御装置からの応答である問い合わせ応答を受信してから次の問い合わせを送信するまでの待機時間を決定する待機時間決定部と、前記問い合わせ受信部が問い合わせを受信したときに、要求情報受信部が前記要求情報を受信済みであり、前記要求情報が示す再生制御コマンドに応じた各コンテンツ再生装置によるコンテンツ制御の開始時刻が未決定である場合に、当該開始時刻を決定する開始時刻決定部と、問い合わせの送信元のコンテンツ再生装置に関して決定された待機時間を含む問い合わせ応答を前記コンテンツ再生装置に送信する問い合わせ応答送信部とを備え、前記問い合わせ応答送信部は、前記問い合わせ受信部が問い合わせを受信したときに、要求情報受信部が前記要求情報を受信済みであり、前記開始時刻が決定されている場合に、前記要求情報が示す再生制御コマンドおよび前記開始時刻の情報を含む再生制御情報を含めた問い合わせ応答を送信することを特徴とするコンテンツ同期制御装置。
【０１５９】
（付記８）問い合わせ受信部が問い合わせを受信したときに、当該問い合わせの送信元のコンテンツ再生装置と当該コンテンツ同期制御装置との間の通信遅延を計算する通信遅延計算部と、前記通信遅延が周期基準値よりも大きな値であることを条件に、周期基準値を前記通信遅延よりも大きな値に更新する周期基準値更新部とを備える付記７に記載のコンテンツ同期制御装置。
【０１６０】
（付記９）コンテンツを再生するコンテンツ再生装置であって、コンテンツの再生制御に関するコマンドである再生制御コマンドが各コンテンツ再生装置で同期して実行されることを要求する要求情報を、複数のコンテンツ再生装置におけるコンテンツ制御を同期させるコンテンツ同期制御装置に送信する要求情報送信部と、当該コンテンツ再生装置に送信する再生制御コマンドの有無の問い合わせを前記コンテンツ同期制御装置に送信する問い合わせ送信部と、前記問い合わせに応じて前記コンテンツ同期制御装置が送信した問い合わせ応答であって、当該問い合わせ応答受信後の待機時間の情報を含む問い合わせ応答を受信する問い合わせ応答受信部と、前記待機時間に応じたタイミングで問い合わせ送信部に次の問い合わせを送信させる問い合わせ送信制御部と、前記問い合わせ応答が再生制御コマンドと、当該再生制御コマンドに応じたコンテンツ制御の開始時刻の情報とを含んでいる場合に、前記開始時刻に、再生制御コマンドによるコンテンツ制御を開始する再生制御部とを備えることを特徴とするコンテンツ再生装置。
【０１６１】
（付記１０）問い合わせ送信部は、問い合わせ応答の受信時から問い合わせの送信時までの経過時間の情報を問い合わせに含めてコンテンツ同期制御装置に送信する付記９に記載のコンテンツ再生装置。
【０１６２】
この出願は、２０１１年９月２６日に出願された日本特許出願２０１１−２０８４９２を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【０１６３】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記の実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【産業上の利用の可能性】
【０１６４】
本発明は、複数のコンテンツ再生装置でのコンテンツ制御を同期させる用途に好適に適用される。
【符号の説明】
【０１６５】
１０，１１  サーバ（コンテンツ同期制御装置）
２０，２０ａ，２０ｂ  クライアント端末（コンテンツ再生装置）
１０１  問い合わせ受信手段
１０２  待機時間決定手段
１０３  問い合わせ応答送信手段
１０４  通信遅延管理手段
１０５  制御要求受信手段
１０６  制御時刻決定手段
１０７  制御情報管理手段
１０８  時刻同期手段
１０９  データ記憶手段
１１０  データ送信手段
１２１  問い合わせ受信周期調整手段
２０１  問い合わせ送信手段
２０２  問い合わせ応答受信手段
２０３  問い合わせ制御手段
２０４  制御要求送信手段
２０５  再生手段
２０６  時刻同期手段
２０７  再生制御手段
２０８  データ受信手段
２０９  データ蓄積手段
【図１】
2013046571.tif 000003
【図２】
2013046571.tif 000004
【図３】
2013046571.tif 000005
【図４】
2013046571.tif 000006
【図５】
2013046571.tif 000007
【図６】
2013046571.tif 000008
【図７】
2013046571.tif 000009
【図８】
2013046571.tif 000010
【図９】
2013046571.tif 000011
【図１０】
2013046571.tif 000012
【図１１】
2013046571.tif 000013
【図１２】
2013046571.tif 000014
【図１３】
2013046571.tif 000015
【図１４】
2013046571.tif 000016
【図１５】
2013046571.tif 000017
【図１６】
2013046571.tif 000018
【図１７】
2013046571.tif 000019
【国際調査報告】
2013046571.tif 000020
2013046571.tif 000021