(57)【要約】【課題】複数の地点でコンテンツの制御タイミングを高精度に同期する。【解決手段】実施形態によれば、通信装置は、タイマと、同期処理部と、信号生成部とを含む。タイマは、クロック信号に合わせてカウントアップすることによって第１のタイマ値を更新する。同期処理部は、共通のネットワークに属する他の通信装置の内部の第２のタイマ値と第１のタイマ値とを同期させるために時刻同期処理を行う。信号生成部は、コンテンツに対して制御が行われるタイミングを示すコンテンツ制御情報と第１のタイマ値とに基づいて、コンテンツに対して制御が行われるタイミングの到来を伝達するタイミング信号を生成する。【選択図】図７
2016042614.tif 000002
【特許請求の範囲】
【請求項１】
クロック信号に合わせてカウントアップすることによって第１のタイマ値を更新するタイマと、
共通のネットワークに属する他の通信装置の内部の第２のタイマ値と前記第１のタイマ値とを同期させるために時刻同期処理を行う同期処理部と、
コンテンツに対して制御が行われるタイミングを示すコンテンツ制御情報と前記第１のタイマ値とに基づいて、前記コンテンツに対して制御が行われるタイミングの到来を伝達するタイミング信号を生成する信号生成部と
を具備する、通信装置。
【請求項２】
前記第１のタイマ値に基づいてチャネルにアクセスし、前記コンテンツ制御情報を前記他の通信装置のいずれか１つから受信する受信部をさらに具備する、請求項１に記載の通信装置。
【請求項３】
前記同期処理部は、前記第２のタイマ値を示すタイマ制御情報を前記他の通信装置のうちいずれか１つから受信し、当該第２のタイマ値によって前記第１のタイマ値を上書きする、請求項２に記載の通信装置。
【請求項４】
前記同期処理部は、前記第１のタイマ値を示すタイマ制御情報を前記他の通信装置へと送信する、請求項２に記載の通信装置。
【請求項５】
前記同期処理部は、前記第１のタイマ値を示すタイマ制御情報を前記他の通信装置へと送信し、前記第２のタイマ値を示すタイマ制御情報を前記他の通信装置から受信し、当該第２のタイマ値が前記第１のタイマ値よりも進んでいる場合に当該第２のタイマ値によって当該第１のタイマ値を上書きする、請求項２に記載の通信装置。
【請求項６】
前記タイミング信号は、前記コンテンツの特性情報に基づく周期を持つ、請求項２に記載の通信装置。
【請求項７】
前記信号生成部は、前記受信部の処理負荷が閾値以上である場合に、前記タイミング信号を生成する処理の実行タイミングを当該処理負荷が当該閾値未満である場合に比べて早くなるようにスケジューリングする、請求項２に記載の通信装置。
【請求項８】
前記第１のタイマ値に基づいてチャネルにアクセスし、前記コンテンツ制御情報を前記他の通信装置へと送信する送信部をさらに具備する、請求項１に記載の通信装置。
【請求項９】
前記同期処理部は、前記第１のタイマ値を示すタイマ制御情報を前記他の通信装置へと送信する、請求項８に記載の通信装置。
【請求項１０】
前記第２のタイマ値を示すタイマ制御情報を前記他の通信装置のうちいずれか１つから受信し、当該第２のタイマ値によって前記第１のタイマ値を上書きする、請求項８に記載の通信装置。
【請求項１１】
前記同期処理部は、前記第１のタイマ値を示すタイマ制御情報を前記他の通信装置へと送信し、前記第２のタイマ値を示すタイマ制御情報を前記他の通信装置から受信し、当該第２のタイマ値が前記第１のタイマ値よりも進んでいる場合に当該第２のタイマ値によって当該第１のタイマ値を上書きする、請求項８に記載の通信装置。
【請求項１２】
前記タイミング信号は、前記コンテンツの特性情報に基づく周期を持つ、請求項８に記載の通信装置。
【請求項１３】
前記信号生成部は、前記送信部の処理負荷が閾値以上である場合に、前記タイミング信号を生成する処理の実行タイミングを当該処理負荷が当該閾値未満である場合に比べて早くなるようにスケジューリングする、請求項８に記載の通信装置。
【請求項１４】
請求項１に記載の通信装置と、
クライアント装置と
を具備し、
前記クライアント装置は、前記タイミング信号に応じて、前記コンテンツに対して制御を行うコンテンツ制御部を具備する、
コンテンツクライアント。
【請求項１５】
サーバ装置と通信装置とを具備し、
前記サーバ装置は、コンテンツに対して制御が行われるタイミングを示すコンテンツ制御情報を生成するタイミング制御部を具備し、
前記通信装置は、
クロック信号に合わせてカウントアップすることによって第１のタイマ値を更新するタイマと、
共通のネットワークに属する他の通信装置の内部の第２のタイマ値と前記第１のタイマ値とを同期させるために時刻同期処理を行う同期処理部と、
前記第１のタイマ値に基づいてチャネルにアクセスし、前記コンテンツ制御情報を前記他の通信装置へと送信する送信部と
を具備する、
コンテンツサーバ。
【請求項１６】
前記同期処理部は、前記第１のタイマ値を示すタイマ制御情報を前記他の通信装置へと送信する、請求項１５に記載のコンテンツサーバ。
【請求項１７】
前記第２のタイマ値を示すタイマ制御情報を記他の通信装置のうちいずれか１つから受信し、当該第２のタイマ値によって前記第１のタイマ値を上書きする、請求項１５に記載のコンテンツサーバ。
【請求項１８】
前記同期処理部は、前記第１のタイマ値を示すタイマ制御情報を前記他の通信装置へと送信し、前記第２のタイマ値を示すタイマ制御情報を前記他の通信装置から受信し、当該第２のタイマ値が前記第１のタイマ値よりも進んでいる場合に当該第２のタイマ値によって当該第１のタイマ値を上書きする、請求項１５に記載のコンテンツサーバ。
【請求項１９】
前記通信装置は、前記コンテンツ制御情報と前記第１のタイマ値とに基づいて、前記コンテンツに対して制御が行われるタイミングの到来を伝達するタイミング信号を生成する信号生成部をさらに具備し、
前記サーバ装置は、前記タイミング信号に応じて、前記コンテンツに対して制御を行うコンテンツ制御部をさらに具備する、
請求項１５に記載のコンテンツサーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
実施形態は、複数の地点におけるコンテンツの同期制御に関する。
【背景技術】
【０００２】
従来、複数の表示制御端末においてコンテンツを同期再生する技術が知られている。係る技術では、これら複数の表示制御端末の各々が、同期サーバから送信される時刻情報に基づいて内部の時計の時刻合わせをして、コンテンツに設定された再生開始時刻に合わせて当該コンテンツの再生を開始する。
【０００３】
しかしながら、同期再生の対象となるコンテンツが複雑化するほど、コンテンツの同期再生に対する要求精度は厳しくなる。例えば、フレームレートが１２０ｆｐｓの映像を同期再生する場合に、表示制御端末間の時刻のずれが約８．３ｍｓｅｃ以上であるならば、これらの表示制御端末は同時に同一のフレームを表示することができない。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特許第５１５１２１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
実施形態は、複数の地点でコンテンツの制御タイミングを高精度に同期することを目的とする。
【課題を解決するための手段】
【０００６】
実施形態によれば、通信装置は、タイマと、同期処理部と、信号生成部とを含む。タイマは、クロック信号に合わせてカウントアップすることによって第１のタイマ値を更新する。同期処理部は、共通のネットワークに属する他の通信装置の内部の第２のタイマ値と第１のタイマ値とを同期させるために時刻同期処理を行う。信号生成部は、コンテンツに対して制御が行われるタイミングを示すコンテンツ制御情報と第１のタイマ値とに基づいて、コンテンツに対して制御が行われるタイミングの到来を伝達するタイミング信号を生成する。
【図面の簡単な説明】
【０００７】
【図１】第１の実施形態に係る映像同期表示システムを例示する図。
【図２】図１の映像サーバのハードウェア構成を例示するブロック図。
【図３】図２のサーバ装置のハードウェア構成の変形例を示すブロック図。
【図４】図１の映像サーバの機能構成を例示するブロック図。
【図５】図１の映像クライアントのハードウェア構成を例示するブロック図。
【図６】図１の映像クライアントの機能構成を例示するブロック図。
【図７】図６の映像クライアントの機能構成の変形例を示すブロック図。
【図８】図５のクライアント装置のハードウェア構成の変形例を示すブロック図。
【図９】第１の実施形態に係る映像同期表示システムの動作を例示するシーケンス図。
【図１０】第２の実施形態に係る映像同期表示システムを例示する図。
【図１１】図１０の映像サーバのハードウェア構成を例示するブロック図。
【図１２】図１０の映像サーバの機能構成を例示するブロック図。
【図１３】第２の実施形態に係る映像同期表示システムの動作を例示するシーケンス図。
【図１４】第３の実施形態に係るコンテンツ同期出力システムを例示する図。
【図１５】図１４のコンテンツサーバのハードウェア構成を例示するブロック図。
【図１６】図１４のコンテンツサーバの機能構成を例示するブロック図。
【図１７】図１４のコンテンツクライアントのハードウェア構成を例示するブロック図。
【図１８】図１４のコンテンツクライアントの機能構成を例示するブロック図。
【図１９】第１の実施形態に係る映像クライアントの動作を例示する図。
【発明を実施するための形態】
【０００８】
以下、図面を参照しながら実施形態の説明が述べられる。尚、以降、説明済みの要素と同一または類似の要素には同一または類似の符号が付され、重複する説明は基本的に省略される。
【０００９】
（第１の実施形態）  
第１の実施形態に係る映像同期表示システムは、映像サーバと、複数の映像クライアントとを含む。映像サーバは、サーバ装置１００および通信装置２００を含む。映像クライアントは、通信装置３００、クライアント装置４００および表示装置５００を含む。
【００１０】
本実施形態に係る映像同期表示システムが図１に例示される。図１の映像同期表示システムは、映像サーバと３台の映像クライアントとを含む。なお、以降の説明において、符号「ＸＸＸ」を付された要素と共通の機能を持つ要素が複数存在する場合には、当該符号「ＸＸＸ」に枝番号を付けて区別することとする。
【００１１】
サーバ装置１００および通信装置２００のハードウェア構成の一例が図２に示される。
図２のサーバ装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１、メモリ１０２、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１０３およびホストインターフェース１０４を含む。図２のサーバ装置１００に含まれる各ハードウェアは、互いにバス接続されている。
【００１２】
ＣＰＵ１０１は、例えばメモリ１０２に保存されたプログラムを実行することによって、サーバ装置１００に含まれる各ハードウェアを制御する。ＣＰＵ１０１は、例えば、ＭＰＵ（Ｍｉｃｒｏ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＭｅＰ（Ｍｅｄｉａ  ｅｍｂｅｄｄｅｄ  Ｐｒｏｃｅｓｓｏｒ）、マイクロコントローラ、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、ＧＰＵ（Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などの種々のプロセッサに置き換えられてもよい。
【００１３】
メモリ１０２には、例えばＣＰＵ１０１によって実行されるプログラム、当該プログラムによって使用されるデータなどが一時的に保存される。メモリ１０２は、例えばＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）またはＤＲＡＭ（Ｄｙｎａｍｉｃ  ＲＡＭ）などの揮発性メモリであってもよいし、不揮発性メモリであってもよい。
【００１４】
ＨＤＤ１０３には、例えば映像クライアントへと配信される映像コンテンツが保存される。ＨＤＤ１０３は、例えばＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）に置き換えられてもよいし、図示されないホストインターフェースを介してバスに接続されるフラッシュメモリに置き換えられてもよい。
【００１５】
ホストインターフェース１０４は、サーバ装置１００と通信装置２００との間で信号（例えば、映像コンテンツ、後述されるコンテンツ制御情報などを搬送する信号）をやり取りする。
【００１６】
ホストインターフェース１０４は、例えばＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）、ＳＤＩＯ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ  Ｉｎｐｕｔ  ／  Ｏｕｔｐｕｔ）、ＵＡＲＴ（Ｕｎｉｖｅｒｓａｌ  Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｒｅｃｅｉｖｅｒ  Ｔｒａｎｓｍｉｔｔｅｒ）、Ｉ２Ｃ（Ｉｎｔｅｒ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＳＰＩ（Ｓｅｒｉａｌ  Ｐｅｒｉｐｈｅｒａｌ  Ｉｎｔｅｒｆａｃｅ）、ＰＣＩｅ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｅｘｐｒｅｓｓ）などの汎用インターフェースであってもよいし、専用インターフェースであってもよい。
【００１７】
なお、サーバ装置１００は、図３に例示されるように変形されてもよい。図３のサーバ装置１００は、ネットワークインターフェース１０５をさらに備える点で図２のサーバ装置１００とは異なる。サーバ装置１００は、ネットワークインターフェース１０５を介してインターネットに接続し、映像コンテンツを送信、受信または制御したり、ＮＴＰ（Ｎｅｔｗｏｒｋ  Ｔｉｍｅ  Ｐｒｏｔｏｃｏｌ）サーバと時刻同期したりしてもよい。なお、ネットワークインターフェース１０５は、通信装置２００、通信装置３００またはクライアント装置４００に組み込まれてもよい。
【００１８】
図２の通信装置２００は、ＣＰＵ２０１、メモリ２０２、通信部２０３およびホストインターフェース２０６を含む。図２の通信装置２００に含まれる各ハードウェアは、互いにバス接続されている。
【００１９】
ＣＰＵ２０１は、例えばメモリ２０２に保存されたプログラムを実行することにより、通信装置２００に含まれる各ハードウェアを制御する。例えば、ＣＰＵ２０１は、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）層、ＴＣＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）層若しくはＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）層、またはさらなる上位層の処理を実行する。なお、これらの処理はＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）を介して行われてもよい。
【００２０】
ＣＰＵ２０１は、例えば、ＭＰＵ、ＭｅＰ、マイクロコントローラ、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）、ＦＰＧＡなどの種々のプロセッサに置き換えられてもよい。
【００２１】
メモリ２０２には、例えばＣＰＵ２０１によって実行されるプログラム、当該プログラムによって使用されるデータなどが一時的に保存される。メモリ２０２は、例えばＳＲＡＭまたはＤＲＡＭなどの揮発性メモリであってもよいし、不揮発性メモリであってもよい。
【００２２】
通信部２０３は、映像クライアントとデータ通信を行う。具体的には、通信部２０３は、ＰＨＹ（Ｐｈｙｓｉｃａｌ）層またはＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）層の処理の一部または全部を行う。
【００２３】
例えば、通信部２０３は、映像クライアントに含まれる通信装置３００との間で接続を確立するためのフレームをやり取りする。後述されるように、通信装置２００および通信装置３００の接続処理を通じて通信装置２００および通信装置３００が参照する時刻は同期する。通信部２０３は、例えば、映像コンテンツ、コンテンツ制御情報などの搬送のためのデータフレームを通信装置３００へと送信する。通信部２０３は、信号処理部２０４とレジスタ部２０５とを含む。
【００２４】
信号処理部２０４は、少なくともデータの送受信に関わるディジタル信号処理を行う。さらに、信号処理部２０４は、データの送受信に関わるアナログ信号処理を行うために、例えばＤＡＣ（Ｄｉｇｉｔａｌ−ｔｏ−Ａｎａｌｏｇ  Ｃｏｎｖｅｒｔｅｒ）、ＡＤＣ（Ａｎａｌｏｇ−ｔｏ−Ｄｉｇｉｔａｌ  Ｃｏｎｖｅｒｔｅｒ）、ＬＮＡ（Ｌｏｗ  Ｎｏｉｓｅ  Ａｍｐｌｉｆｉｅｒ）、アンテナなどのアナログ信号処理回路を含んでもよい。なお、アナログ信号処理回路の一部または全部が通信部２０３の外部に設けられてもよい。
【００２５】
レジスタ部２０５は、例えば信号処理部２０４とＣＰＵ２０１との間でやり取りされるデータを一時的に保存する。さらに、レジスタ部２０５の一部が、後述される同期タイマとして使用されてもよい。
【００２６】
ホストインターフェース２０６は、通信装置２００とサーバ装置１００との間で信号（例えば、映像コンテンツ、コンテンツ制御情報などを搬送する信号）をやり取りする。ホストインターフェース２０６は、例えばＵＳＢ、ＳＤＩＯ、ＵＡＲＴ、Ｉ２Ｃ、ＳＰＩ、ＰＣＩｅなどの汎用インターフェースであってもよいし、専用インターフェースであってもよい。
【００２７】
サーバ装置１００および通信装置２００の機能構成の一例が図４に示される。  
サーバ装置１００は、タイミング制御部１１１および映像記憶部１１２を含む。  
タイミング制御部１１１は、コンテンツに対して所定の制御が行われるタイミングを決定する。タイミング制御部１１１は、決定されたタイミングを明示的または黙示的に表すコンテンツ制御情報を生成し、当該コンテンツ制御情報をデータ送信部２１３へと出力する。コンテンツ制御情報は、例えば、同期表示の対象となる映像コンテンツの再生開始時刻を明示的または黙示的に表す情報であってもよい。
【００２８】
タイミング制御部１１１は、通信装置２００の内部の同期タイマ２１２によってカウントアップされるタイマ値を参照し、当該タイマ値に基づいて上記タイミングを決定してもよい。具体的には、タイミング制御部１１１は、上記タイマ値よりも未来の特定の絶対時刻を再生開始時刻として決定してもよい。
【００２９】
また、タイミング制御部１１１は、再生開始時刻を算出するための相対時間を決定してもよい。この場合に、映像サーバが再生開始時刻を算出する第１の技法と、各映像クライアントが再生開始時刻を算出する第２の技法とが採用可能である。
【００３０】
第１の技法によれば、タイミング制御部１１１は相対時間を示すコンテンツ制御情報をデータ送信部２１３へと出力する。データ送信部２１３は、コンテンツ制御情報の示す相対時間に同期タイマ２１２のタイマ値を加算することによって再生開始時刻を算出する。データ送信部２１３は、算出された再生開始時刻によってコンテンツ制御情報を補完してから、複数の映像クライアントへと送信する。
【００３１】
第２の技法によれば、データ送信部２１３は、タイミング制御部１１１によって決定された相対時間を示すコンテンツ制御情報を複数の映像クライアントへと送信する。各映像クライアントは、コンテンツ制御情報の受信時における当該映像クライアントの内部の同期タイマのタイマ値に当該コンテンツ制御情報の示す相対時間を加算することによって再生開始時刻を算出する。但し、第２の技法は、第１の技法に比べると、例えばチャネルの伝送遅延や受信処理遅延などの要因により同期精度が劣化するおそれがある。
【００３２】
映像記憶部１１２は、映像クライアントへと配信される映像コンテンツを保存する。映像記憶部１１２に保存された映像コンテンツは、必要に応じて読み出され、データ送信部２１３へと転送される。なお、同期表示の対象となる映像コンテンツを全ての映像クライアントが既に保存しているならば、映像記憶部１１２は不要である。但し、同期表示の対象となり得る映像コンテンツが複数存在する場合には、同期表示される映像コンテンツを一意に特定するために、当該映像コンテンツを識別する識別子情報が伝送されてもよい。
【００３３】
通信装置２００は、時刻同期部２１１、同期タイマ２１２およびデータ送信部２１３を含む。  
時刻同期部２１１は、映像サーバおよび複数の映像クライアントが接続を確立する際に、所定の時刻同期処理を行う。この時刻同期処理は、映像サーバおよび複数の映像クライアントが形成するネットワークアーキテクチャに依存する。
【００３４】
映像サーバおよび複数の映像クライアントは、例えば無線ＬＡＮ規格またはＷｉ−Ｆｉ規格としても知られるＩＥＥＥ８０２．１１規格のインフラストラクチャモードのようなスター型ネットワークを形成してもよい。このスター型ネットワークでは、１台のハブに相当する親機（ＡＰ（Ａｃｃｅｓｓ  Ｐｏｉｎｔ）と呼ばれる）と、当該ＡＰに接続する１台以上の子機（ＳＴＡ（Ｓｔａｔｉｏｎ）と呼ばれる）とが存在する。ＩＥＥ８０２．１１規格をサポートする無線通信装置は、６４ビットのレジスタをマイクロ秒単位のカウントアップタイマとして使用する。このカウントアップタイマは、ＴＳＦ（Ｔｉｍｉｎｇ  Ｓｙｎｃｈｒｏｎｉｚａｔｉｏｎ  Ｆｕｎｃｔｉｏｎ）タイマと呼ばれる。
【００３５】
ＡＰは、Ｂｅａｃｏｎフレームを約１００ｍｓｅｃの周期で送信する。ＢｅａｃｏｎフレームにはＡＰ内部のＴＳＦタイマのタイマ値が記載されており、このタイマ値は当該Ｂｅａｃｏｎフレームの送信直前にＡＰによって記述される。各ＳＴＡは、受信したＢｅａｃｏｎフレームに含まれるタイマ値によって、当該ＳＴＡ内部のＴＳＦタイマのタイマ値を上書きする。結果的に、共通のネットワーク（ＢＳＳ（Ｂａｓｉｃ  Ｓｅｒｖｉｃｅ  Ｓｅｔ）とも呼ばれる）内の各無線通信装置の内部のＴＳＦタイマは同期する。このようなＩＥＥＥ８０２．１１規格の枠組みによれば、ハードウェア制御を通じて高精度な時刻同期が可能となる。具体的には、ＩＥＥＥ８０２．１１規格において規定される水晶振動子の要求精度は２０ｐｐｍであり、前述のＢｅａｃｏｎフレームの送信周期は約１００ｍｓｅｃであるから、共通のネットワーク内の各無線通信装置の内部のＴＳＦタイマの同期精度は約４μｓｅｃ程度と見積もることができる。
【００３６】
或いは、映像サーバおよび複数の映像クライアントが、例えばＩＥＥＥ８０２．１１規格のアドホックモードのようなピアツーピアネットワークを形成してもよい。アドホックモードでは、任意の無線通信装置同士が対等に直接通信可能であり、全ての無線通信装置がＢｅａｃｏｎフレームを送信および受信する。各無線通信装置は、内部のＴＳＦタイマのタイマ値よりも受信Ｂｅａｃｏｎフレームに記載されたタイマ値が進んでいる場合に限って、当該ＴＳＦタイマのタイマ値を当該受信Ｂｅａｃｏｎフレームに記載されたタイマ値によって上書きする。結果的に、共通のネットワーク内の各無線通信装置の内部のＴＳＦタイマは同期する。
【００３７】
なお、映像サーバおよび複数の映像クライアントが形成可能なネットワークは、ＩＥＥＥ８０２．１１規格において規定されているネットワークに限定されない。
【００３８】
図４の映像サーバが、スター型ネットワークにおいてハブに相当する親機（例えば、ＡＰ）として機能するならば、時刻同期部２１１は通信装置２００の内部の同期タイマ２１２のタイマ値を参照タイマ値として伝達するためのタイマ制御情報を子機（すなわち、複数の映像クライアント）へと送信する。タイマ制御情報は、例えばＢｅａｃｏｎフレームなどの管理フレームであってよい。
【００３９】
他方、図４の映像サーバが、スター型ネットワークにおいて子機（例えば、ＳＴＡ）として機能するならば、時刻同期部２１１は、当該スター型ネットワークの親機（すなわち、複数の映像クライアントのいずれか１つ、または、当該複数の映像クライアントとは別に用意された親機（例えば通常のＡＰであってもよい））から上記タイマ制御情報を受信する。そして、時刻同期部２１１は、同期タイマ２１２のタイマ値をタイマ制御情報の示す参照タイマ値によって上書きする。
【００４０】
なお、映像サーバおよび複数の映像クライアントがスター型ネットワークを形成する場合には、例えば映像コンテンツ、コンテンツ制御情報などの搬送時の周波数利用効率の観点から、映像サーバを親機として機能させることが好ましい。しかしながら、映像サーバを子機として機能させることも可能である。いずれの場合であっても、時刻同期の精度に優劣はない。
【００４１】
図４の映像サーバおよび複数の映像クライアントがピアツーピアネットワークを形成する場合には、時刻同期部２１１は、タイマ制御情報を複数の映像クライアントへと送信すると共に当該複数の映像クライアントからもタイマ制御情報を受信する。時刻同期部２１１は、同期タイマ２１２のタイマ値を受信タイマ制御情報の示す参照タイマ値に基づいて補正する。例えば、時刻同期部２１１は、同期タイマ２１２のタイマ値よりも受信タイマ制御情報の示す参照タイマ値が進んでいる場合（若しくは、遅れている場合）に限って、同期タイマ２１２のタイマ値を当該参照タイマ値によって上書きする。
【００４２】
同期タイマ２１２は、例えば水晶振動子などのクロック素子が発生するクロック信号に合わせてカウントアップすることによってタイマ値を更新する。同期タイマ２１２のタイマ値は、時刻同期部２１１によって必要に応じて読み出される。さらに、同期タイマ２１２のタイマ値は、前述の時刻同期処理において時刻同期部２１１によって補正されることもある。
【００４３】
なお、前述のように、同期タイマ２１２は、レジスタ部２０５の一部を用いて実装されてもよい。係る実装によれば、同期タイマ２１２はハードウェア制御されるので高精度な時刻同期が可能である。但し、同期タイマ２１２は、ソフトウェア制御されてもよい。同期タイマ２１２は、例えばメモリ２０２の一部などを用いて実装することも可能である。
【００４４】
データ送信部２１３は、同期タイマ２１２のタイマ値に基づいてチャネルにアクセスし、複数の映像クライアントへ種々のデータを送信する。例えば、データ送信部２１３は、例えば、映像コンテンツ、コンテンツ制御情報などを送信してもよい。
【００４５】
具体的には、データ送信部２１３は、ブロードキャストによって映像コンテンツおよびコンテンツ制御情報を複数の映像クライアントへと一斉送信してもよいし、ユニキャストによって映像コンテンツおよびコンテンツ制御情報を複数の映像クライアントへと個別送信してもよい。また、データ送信部２１３は、コンテンツ制御情報を映像コンテンツと一緒に複数の映像クライアントへと送信してもよいし、コンテンツ制御情報を映像コンテンツとは別々に複数の映像クライアントへと送信してもよい。例えば、ストリーミングサービスにおいて、データ送信部２１３は、映像コンテンツの配信中にコンテンツ制御情報を複数の映像クライアントへと送信してもよい。なお、コンテンツ制御情報が映像コンテンツとは別々に送信される場合には、当該コンテンツ制御情報は対応する映像コンテンツを識別する情報を含んでいてもよい。
【００４６】
なお、複数の映像クライアントによって表示される複数の映像コンテンツを意図的に異ならせたり、当該複数の映像コンテンツの再生開始時刻に意図的に時間差をつけたりすることも可能である。例えば、複数の映像クライアント間でインタラクティブな効果を得るために、相異なる映像が表示されてもよいし、１つのオリジナル映像を画面内位置で分割することによって得られる複数の映像が表示されてもよいし、１つのオリジナル映像を時間で分割することによって得られる複数の映像が表示されてもよい。
【００４７】
故に、データ送信部２１３は、相異なる映像コンテンツを複数の映像クライアントへと送信してもよいし、相異なるコンテンツ制御情報を複数の映像クライアントへと送信してもよい。相異なる映像コンテンツまたは相異なるコンテンツ制御情報を複数の映像クライアントへと一斉送信するために、データ送信部２１３は種々の多元接続方式を利用してもよい。具体的には、データ送信部２１３は、例えば、ＦＤＭＡ（Ｆｒｅｑｕｅｎｃｙ  Ｄｉｖｉｓｉｏｎ  Ｍｕｌｔｉｐｌｅ  Ａｃｃｅｓｓ）、ＯＦＤＭＡ（Ｏｒｔｈｏｇｏｎａｌ  ＦＤＭＡ）、ＣＤＭＡ（Ｃｏｄｅ  Ｄｉｖｉｓｉｏｎ  Ｍｕｌｔｉｐｌｅ  Ａｃｃｅｓｓ）、ＳＤＭＡ（Ｓｐａｃｅ  Ｄｉｖｉｓｉｏｎ  Ｍｕｌｔｉｐｌｅ  Ａｃｃｅｓｓ）、マルチユーザＭＩＭＯ（Ｍｕｌｔｉｐｌｅ  Ｉｎｐｕｔ  Ｍｕｌｔｉｐｌｅ  Ｏｕｔｐｕｔ）などを利用できる。
【００４８】
さらに、データ送信部２１３は、タイミング制御部１１１から受け取ったコンテンツ制御情報が相対時間を示す場合に、同期タイマ２１２のタイマ値を当該相対時間に加算することによって、例えば再生開始時刻を算出してもよい。そして、データ送信部２１３は、算出された再生開始時刻によってコンテンツ制御情報を補完してから、複数の映像クライアントへと送信する。
【００４９】
なお、時刻同期部２１１およびデータ送信部２１３は、図４では別々の要素として描かれているが、どちらも通信部２０３を用いて実装することができる。
【００５０】
通信装置３００およびクライアント装置４００のハードウェア構成の一例が図５に示される。  
図５の通信装置３００は、ＣＰＵ３０１、メモリ３０２、通信部３０３、ホストインターフェース３０６およびタイミングインターフェース３０７を含む。図５の通信装置３００に含まれる各ハードウェアは、互いにバス接続されている。
【００５１】
ＣＰＵ３０１は、例えばメモリ３０２に保存されたプログラムを実行することにより、通信装置３００に含まれる各ハードウェアを制御する。例えば、ＣＰＵ３０１は、ＩＰ層、ＴＣＰ層若しくはＵＤＰ層、またはさらなる上位層の処理を実行する。なお、これらの処理はＯＳを介して行われてもよい。ＣＰＵ３０１は、例えば、ＭＰＵ、ＭｅＰ、マイクロコントローラ、ＦＰＧＡなどの種々のプロセッサに置き換えられてもよい。
【００５２】
メモリ３０２には、例えばＣＰＵ３０１によって実行されるプログラム、当該プログラムによって使用されるデータなどが一時的に保存される。メモリ３０２は、例えばＳＲＡＭまたはＤＲＡＭなどの揮発性メモリであってもよいし、不揮発性メモリであってもよい。
【００５３】
通信部３０３は、映像サーバとデータ通信を行う。具体的には、通信部３０３は、ＰＨＹ層またはＭＡＣ層の処理の一部または全部を行う。例えば、通信部３０３は、映像サーバに含まれる通信装置３００との間で接続を確立するためのフレームをやり取りする。通信装置２００および通信装置３００の接続処理を通じて、通信装置２００および通信装置３００が参照する時刻は同期する。通信部３０３は、例えば、映像コンテンツ、コンテンツ制御情報などの搬送ためのデータフレームを通信装置２００から受信する。通信部３０３は、信号処理部３０４とレジスタ部３０５とを含む。
【００５４】
信号処理部３０４は、少なくともデータの送受信に関わるディジタル信号処理を行う。さらに、信号処理部３０４は、データの送受信に関わるアナログ信号処理を行うために、例えばＤＡＣ、ＡＤＣ、ＬＮＡ、アンテナなどのアナログ信号処理回路を含んでもよい。なお、アナログ信号処理回路の一部または全部が通信部３０３の外部に設けられてもよい。
【００５５】
レジスタ部３０５は、例えば信号処理部３０４とＣＰＵ３０１との間でやり取りされるデータを一時的に保存する。さらに、レジスタ部３０５の一部が、同期タイマとして使用されてもよい。
【００５６】
ホストインターフェース３０６は、通信装置３００とクライアント装置４００との間でタイミングに関する信号以外の信号（例えば、映像コンテンツなどを搬送する信号）をやり取りする。ホストインターフェース３０６は、例えばＵＳＢ、ＳＤＩＯ、ＵＡＲＴ、Ｉ２Ｃ、ＳＰＩ、ＰＣＩｅなどの汎用インターフェースであってもよいし、専用インターフェースであってもよい。
【００５７】
タイミングインターフェース３０７は、クライアント装置４００へとタイミングに関する信号を出力する。タイミングに関する信号は、例えば、後述される第１のタイミング信号、コンテンツ制御情報を搬送する信号、同期タイマのタイマ値を搬送する信号などである。タイミングインターフェース３０７は、例えばＵＳＢ、ＳＤＩＯ、ＵＡＲＴ、Ｉ２Ｃ、ＳＰＩ、ＰＣＩｅなどのディジタルの汎用インターフェースであってもよいし、例えばＰＩＯ（Ｐａｒａｌｌｅｌ  Ｉｎｐｕｔ  ／  Ｏｕｔｐｕｔ）、ＧＰＩＯ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ  ／  Ｏｕｔｐｕｔ）などのアナログの汎用インターフェースであってもよい。タイミングに関する信号の伝送遅延は、表示映像の同期精度に影響するので、タイミングインターフェース３０７は伝送遅延およびその揺らぎが小さいことが好ましい。
【００５８】
図５のクライアント装置４００は、ＣＰＵ４０１、メモリ４０２、ＨＤＤ４０３、ホストインターフェース４０４、タイミングインターフェース４０５およびディスプレイインターフェース４０６を含む。図５のクライアント装置４００に含まれる各ハードウェアは、互いにバス接続されている。
【００５９】
ＣＰＵ４０１は、例えばメモリ４０２に保存されたプログラムを実行することによって、クライアント装置４００に含まれる各ハードウェアを制御する。ＣＰＵ４０１は、例えば、ＭＰＵ、ＭｅＰ、マイクロコントローラ、ＦＰＧＡ、ＧＰＵなどの種々のプロセッサに置き換えられてもよい。
【００６０】
メモリ４０２には、例えばＣＰＵ４０１によって実行されるプログラム、当該プログラムによって使用されるデータなどが一時的に保存される。メモリ４０２は、例えばＳＲＡＭまたはＤＲＡＭなどの揮発性メモリであってもよいし、不揮発性メモリであってもよい。
【００６１】
ＨＤＤ４０３には、例えば映像サーバから配信された映像コンテンツが保存される。ＨＤＤ４０３は、例えばＳＳＤに置き換えられてもよいし、図示されないホストインターフェースを介してバスに接続されるフラッシュメモリに置き換えられてもよい。
【００６２】
ホストインターフェース４０４は、クライアント装置４００と通信装置３００との間でタイミングに関する信号以外の信号（例えば、映像コンテンツなどを搬送する信号）をやり取りする。ホストインターフェース４０４は、例えばＵＳＢ、ＳＤＩＯ、ＵＡＲＴ、Ｉ２Ｃ、ＳＰＩ、ＰＣＩｅなどの汎用インターフェースであってもよいし、専用インターフェースであってもよい。
【００６３】
タイミングインターフェース４０５は、通信装置３００からタイミングに関する信号を受け取る。タイミングインターフェース４０５は、例えばＵＳＢ、ＳＤＩＯ、ＵＡＲＴ、Ｉ２Ｃ、ＳＰＩ、ＰＣＩｅなどのディジタルの汎用インターフェースであってもよいし、例えばＰＩＯ、ＧＰＩＯなどのアナログの汎用インターフェースであってもよい。タイミングに関する信号の伝送遅延は、表示映像の同期精度に影響するので、タイミングインターフェース４０５は伝送遅延およびその揺らぎが小さいことが好ましい。
【００６４】
ディスプレイインターフェース４０６は、クライアント装置４００と表示装置５００との間で信号（例えば、映像信号）をやり取りする。
【００６５】
なお、図５のクライアント装置４００は、図８に例示されるように変形されてもよい。図８のクライアント装置４００は、タイミングインターフェース４０５の代わりにタイミングインターフェース４３５を備え、ＰＬＬ（Ｐｈａｓｅ  Ｌｏｃｋｅｄ  Ｌｏｏｐ）４３７をさらに備える点で図５のクライアント装置４００とは異なる。
【００６６】
タイミングインターフェース４３５は、バス接続されず、ＰＬＬ４３７に直接接続されている点で、タイミングインターフェース４０５とは異なる。
【００６７】
ＰＬＬ４３７は、タイミングインターフェース４３５を介して通信装置３００から周期的な第１のタイミング信号を受け取る。ＰＬＬ４３７は、この第１のタイミング信号の周期を基準に所望の周期を持つ第２のタイミング信号を生成し、当該第２のタイミング信号をディスプレイインターフェース４０６へと出力する。ディスプレイインターフェース４０６は、この第２のタイミング信号に応じて再生映像信号を表示装置５００へと出力する。所望の周期は、例えば映像コンテンツのフレーム間隔であってもよいし、ＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）技術におけるＧＯＰ（Ｇｒｏｕｐ  Ｏｆ  Ｐｉｃｔｕｒｅｓ）内のＩ（Ｉｎｔｒａ）ピクチャフレーム同士の間隔であってもよい。所望の周期は、例えば映像コンテンツのヘッダ情報に含まれるフレームレートなどの特性情報に基づいて決定されてもよい。さらに、所望の周期は、第１のタイミング信号の周期と異なっていてもよいし、同一であってもよい。所望の周期が第１のタイミング信号の周期と同一の場合であっても、ＰＬＬ４３７の作用により当該周期の揺らぎを緩和することができる。
【００６８】
通信装置３００およびクライアント装置４００の機能構成の一例が図６に示される。  
通信装置３００は、時刻同期部３１１、同期タイマ３１２およびデータ受信部３１３を含む。  
時刻同期部３１１は、映像サーバおよび複数の映像クライアントが接続を確立する際に、所定の時刻同期処理を行う。この時刻同期処理は、映像サーバおよび複数の映像クライアントが形成するネットワーク構造に依存する。
【００６９】
例えば、図６の映像クライアントが、スター型ネットワークにおいてハブに相当する親機（例えば、ＡＰ）として機能するならば、時刻同期部３１１は前述のタイマ制御情報を子機（すなわち、映像サーバおよび他の映像クライアント）へと送信する。
【００７０】
他方、図６の映像クライアントが、スター型ネットワークにおいて子機（例えば、ＳＴＡ）として機能するならば、時刻同期部３１１は、当該スター型ネットワークの親機（すなわち、映像サーバ若しくは他の映像クライアントのいずれか１つ、または、当該スター型ネットワークを形成するために用意された図示されない親機（例えば通常のＡＰであってもよい））から上記タイマ制御情報を受信する。そして、時刻同期部３１１は、同期タイマ３１２のタイマ値をタイマ制御情報の示す参照タイマ値によって上書きする。
【００７１】
映像サーバおよび複数の映像クライアントが、前述のピアツーピアネットワークを形成する場合に、時刻同期部３１１は、タイマ制御情報を映像サーバおよび他の映像クライアントへと送信すると共に当該映像サーバおよび他の映像クライアントからもタイマ制御情報を受信する。時刻同期部３１１は、同期タイマ３１２のタイマ値を受信タイマ制御情報の示す参照タイマ値に基づいて補正する。例えば、時刻同期部３１１は、同期タイマ３１２のタイマ値よりも受信タイマ制御情報の示す参照タイマ値が進んでいる場合（若しくは、遅れている場合）に限って、同期タイマ３１２のタイマ値を当該参照タイマ値によって上書きする。
【００７２】
同期タイマ３１２は、例えば水晶振動子などのクロック素子が発生するクロック信号に合わせてカウントアップすることによってタイマ値を更新する。同期タイマ３１２のタイマ値は、時刻同期部３１１によって必要に応じて読み出される。さらに、同期タイマ３１２のタイマ値は、前述の時刻同期処理において時刻同期部３１１によって補正されることもある。
【００７３】
なお、前述のように、同期タイマ３１２は、レジスタ部３０５の一部を用いて実装されてもよい。係る実装によれば、同期タイマ３１２はハードウェア制御されるので高精度な時刻同期が可能である。但し、同期タイマ３１２は、ソフトウェア制御されてもよい。同期タイマ３１２は、例えばメモリ３０２の一部などを用いて実装することも可能である。
【００７４】
データ受信部３１３は、同期タイマ３１２のタイマ値に基づいてチャネルにアクセスし、映像サーバから種々のデータを受信する。例えば、データ受信部３１３は、例えば、映像コンテンツ、コンテンツ制御情報などを受信してもよい。データ受信部３１３は、ホストインターフェース３０６を介して映像コンテンツをクライアント装置４００へと出力し、タイミングインターフェース３０７を介してコンテンツ制御情報をクライアント装置４００へと出力する。
【００７５】
さらに、データ受信部３１３は、受信したコンテンツ制御情報が絶対時刻ではなく相対時間を示す場合には、同期タイマ３１２のタイマ値を当該相対時間に加算することによって、例えば再生開始時刻などの絶対時刻を算出してもよい。データ受信部３１３は、算出された絶対時刻によってコンテンツ制御情報を補完してから、タイミングインターフェース３０７を介してクライアント装置４００へと出力する。
【００７６】
なお、時刻同期部３１１およびデータ受信部３１３は、図６では別々の要素として描かれているが、どちらも通信部３０３を用いて実装することができる。
【００７７】
クライアント装置４００は、タイミング制御部４１１、再生制御部４１２および映像記憶部４１３を含む。
【００７８】
タイミング制御部４１１は、タイミングインターフェース４０５を介して、同期タイマ３１２から現在のタイマ値を搬送する信号を受け取り、データ受信部３１３からコンテンツ制御情報を搬送する信号を受け取る。タイミング制御部４１１は、現在のタイマ値とコンテンツ制御情報とに基づいて、映像記憶部４１３に記憶されている映像コンテンツの制御タイミング（例えば、再生開始時刻）の到来を伝達するタイミング信号を生成する。タイミング制御部４１１は、タイミング信号を再生制御部４１２へと出力する。
【００７９】
再生制御部４１２は、タイミング制御部４１１からタイミング信号を受け取り、映像記憶部４１３から映像コンテンツを読み出す。再生制御部４１２は、タイミング信号に応じて、映像コンテンツの再生、停止などの制御を適時に行う。なお、再生制御部４１２は、再生開始時刻の他に再生終了時刻に基づくタイミング信号を利用してもよい。係るタイミング信号は、フェイルセーフの観点から有効である。また、再生制御部４１２は、同期を長期間に亘って安定的に維持するために、周期的なタイミング信号を利用してもよい。
【００８０】
映像記憶部４１３は、ホストインターフェース４０４を介して、データ受信部３１３から映像コンテンツを搬送する信号を受け取る。映像記憶部４１３には、受信映像コンテンツが記憶される。映像記憶部４１３に記憶された映像コンテンツは、再生制御部４１２によって必要に応じて読み出される。
【００８１】
なお、図６の映像クライアントは、図７に例示されるように変形されてもよい。  
図７の通信装置３００は、データ受信部３１３の代わりにデータ受信部３２３を備え、タイミング信号生成部３２４をさらに備える点で図６の通信装置３００とは異なる。
【００８２】
データ受信部３２３は、コンテンツ制御情報をクライアント装置４００の代わりにタイミング信号生成部３２４へと出力する点でデータ受信部３１３とは異なる。
【００８３】
タイミング信号生成部３２４は、同期タイマ３１２から現在のタイマ値を搬送する信号を受け取り、データ受信部３２３からコンテンツ制御情報を搬送する信号を受け取る。タイミング信号生成部３２４は、現在のタイマ値とコンテンツ制御情報とに基づいて、映像記憶部４１３に記憶されている映像コンテンツの制御タイミング（例えば、再生開始時刻）の到来を伝達する第１のタイミング信号を生成する。タイミング信号生成部３２４は、タイミングインターフェース３０７を介して、第１のタイミング信号をクライアント装置４００へと出力する。
【００８４】
なお、タイミング信号生成部３２４として機能するプロセッサ（例えば、ＣＰＵ３０１であってもよいし、図示されないプロセッサであってもよい）は、例えば時刻同期部３１１およびデータ受信部３２３の一部として機能するプロセッサと共通であってもよい。この場合には、時刻同期部３１１またはデータ受信部３２３のための通信処理などの影響により、タイミング信号生成部３２４のためのタイミング信号生成処理が遅延するおそれがある。そこで、タイミング信号生成部３２４としてのプロセッサは、当該プロセッサの処理負荷を評価し、処理負荷の大きさに応じてタイミング信号生成処理の実行タイミングを前倒しするようにスケジューリングしてもよい。例えば、タイミング信号生成部３２４としてのプロセッサは、処理負荷が閾値以上である場合に、タイミング信号生成処理の実行タイミングを通常時（処理負荷が閾値未満である時）よりも所定時間早くなるようにスケジューリングしてもよい。係るスケジューリングによれば、処理負荷の影響によるタイミング信号生成処理の遅延を補償することができる。なお、上記所定時間の適正値は、タイミング信号生成部３２４としてのプロセッサの性能等の要因に依存するので実験を通じて調整することが望ましい。
【００８５】
図７のクライアント装置４００は、タイミング制御部４１１の代わりにタイミング制御部４２１を備える点で図６のクライアント装置４００とは異なる。
【００８６】
タイミング制御部４２１は、タイミングインターフェース４０５またはタイミングインターフェース４３５を介して、通信装置３００から第１のタイミング信号を受け取る。例えば、この第１のタイミング信号が周期的であるならば、タイミング制御部４２１は、この第１のタイミング信号の周期を基準に前述の所望の周期を持つ第２のタイミング信号を生成してもよい。タイミング制御部４２１は、第２のタイミング信号を再生制御部４１２へと出力する。さらに、所望の周期は、第１のタイミング信号の周期と異なっていてもよいし、同一であってもよい。所望の周期が第１のタイミング信号の周期と同一の場合であっても、タイミング制御部４２１の作用により当該周期の揺らぎを緩和することができる。或いは、タイミング制御部４２１は、第２のタイミング信号の電圧が再生制御部４１２の入力電圧範囲に収まるように第１のタイミング信号の電圧を降圧または昇圧することによって、第２のタイミング信号を生成してもよい。
【００８７】
本実施形態に係る映像同期表示システムは、図９に例示されるように動作可能である。図９の例では、通信装置３００−１および通信装置３００−２が通信装置２００に接続することにより、これらの内部の同期タイマは高精度に同期する。それから、コンテンツサーバから２つのコンテンツクライアントへと、映像コンテンツが配信され、当該映像コンテンツの再生開始時刻（コンテンツ制御情報）が通知される。クライアント装置４００−１およびクライアント装置４００−２は、再生開始時刻と通信装置３００−１および通信装置３００−２の内部の同期タイマのタイマ値とに基づいて生成されたタイミング信号に応じて、映像コンテンツを表示装置５００−１および表示装置５００−２に略同時に表示できる。
【００８８】
なお、本実施形態に係る映像クライアントは、図１９に例示されるように動作してもよい。図１９の例では、フレーム間隔と同じ周期を持つタイミング信号が用いられるので、複数の映像クライアントは映像コンテンツをフレームレベルで同期表示できる。
【００８９】
以上説明したように、第１の実施形態に係る映像同期表示システムは、映像サーバおよび複数の映像クライアントに含まれる通信装置間の接続を確立させることで当該通信装置の内部のタイマを高精度に同期させる。そして、この映像同期表示システムは、これらタイマのタイマ値に基づいて映像コンテンツに対して種々の制御を行う。従って、この映像同期表示システムによれば、複数の映像クライアントが映像コンテンツを高精度に同期表示できる。
【００９０】
（第２の実施形態）  
第２の実施形態に係る映像同期表示システムは、映像サーバが映像コンテンツを表示する点で第１の実施形態に係る映像同期表示システムとは異なる。具体的には、この映像同期表示システムは、映像サーバと、１以上の映像クライアントとを含む。映像サーバは、サーバ装置６００、通信装置７００および表示装置８００を含む。映像クライアントは、通信装置３００、クライアント装置４００および表示装置５００を含む。本実施形態に係る映像同期表示システムが図１０に例示される。図１０の映像同期表示システムは、映像サーバと３台の映像クライアントとを含む。
【００９１】
サーバ装置６００および通信装置７００のハードウェア構成の一例が図１１に示される。  
図１１のサーバ装置６００は、ＣＰＵ６０１、メモリ６０２、ＨＤＤ６０３、ホストインターフェース６０４、タイミングインターフェース６０５、ディスプレイインターフェース６０６およびＰＬＬ６０７を含む。ＣＰＵ６０１、メモリ６０２、ＨＤＤ６０３、ホストインターフェース６０４およびディスプレイインターフェース６０６は、互いにバス接続されている。なお、図１１のサーバ装置６００は、図８のクライアント装置４００と類似のハードウェア構成を備えているが、図８の代わりに図５のクライアント装置４００と類似のハードウェア構成を備えていてもよい。
【００９２】
ＣＰＵ６０１は、例えばメモリ６０２に保存されたプログラムを実行することによって、サーバ装置６００に含まれる各ハードウェアを制御する。ＣＰＵ６０１は、例えば、ＭＰＵ、ＭｅＰ、マイクロコントローラ、ＦＰＧＡ、ＧＰＵなどの種々のプロセッサに置き換えられてもよい。
【００９３】
メモリ６０２には、例えばＣＰＵ６０１によって実行されるプログラム、当該プログラムによって使用されるデータなどが一時的に保存される。メモリ６０２は、例えばＳＲＡＭまたはＤＲＡＭなどの揮発性メモリであってもよいし、不揮発性メモリであってもよい。
【００９４】
ＨＤＤ６０３には、例えば映像クライアントへと配信される映像コンテンツが保存される。なお、この映像コンテンツは、表示装置８００によっても表示される。ＨＤＤ６０３は、例えばＳＳＤに置き換えられてもよいし、図示されないホストインターフェースを介してバスに接続されるフラッシュメモリに置き換えられてもよい。
【００９５】
ホストインターフェース６０４は、サーバ装置６００と通信装置７００との間でタイミングに関する信号以外の信号（例えば、映像コンテンツなどを搬送する信号）をやり取りする。ホストインターフェース６０４は、例えばＵＳＢ、ＳＤＩＯ、ＵＡＲＴ、Ｉ２Ｃ、ＳＰＩ、ＰＣＩｅなどの汎用インターフェースであってもよいし、専用インターフェースであってもよい。
【００９６】
タイミングインターフェース６０５は、通信装置７００から周期的な第１のタイミング信号を受け取り、ＰＬＬ６０７へと出力する。タイミングインターフェース６０５は、例えばＵＳＢ、ＳＤＩＯ、ＵＡＲＴ、Ｉ２Ｃ、ＳＰＩ、ＰＣＩｅなどのディジタルの汎用インターフェースであってもよいし、例えばＰＩＯ、ＧＰＩＯなどのアナログの汎用インターフェースであってもよい。第１のタイミング信号の伝送遅延は、表示映像の同期精度に影響するので、タイミングインターフェース６０５は伝送遅延およびその揺らぎが小さいことが好ましい。
【００９７】
ディスプレイインターフェース６０６は、サーバ装置６００と表示装置８００との間で信号（例えば、映像信号）をやり取りする。
【００９８】
ＰＬＬ６０７は、タイミングインターフェース６０５を介して通信装置７００から周期的な第１のタイミング信号を受け取る。ＰＬＬ６０７は、この第１のタイミング信号の周期を基準に所望の周期を持つ第２のタイミング信号を生成し、当該第２のタイミング信号をディスプレイインターフェース６０６へと出力する。ディスプレイインターフェース６０６は、この第２のタイミング信号に応じて再生映像信号を表示装置８００へと出力する。所望の周期は、例えば映像コンテンツのフレーム間隔であってもよいし、ＭＰＥＧ技術におけるＧＯＰ内のＩピクチャフレーム同士の間隔であってもよい。所望の周期は、例えば映像コンテンツのヘッダ情報に含まれるフレームレートなどの特性情報に基づいて決定されてもよい。さらに、所望の周期は、第１のタイミング信号の周期と異なっていてもよいし、同一であってもよい。所望の周期が第１のタイミング信号の周期と同一の場合であっても、ＰＬＬ６０７の作用により当該周期の揺らぎを緩和することができる。
【００９９】
図１１の通信装置７００は、ＣＰＵ７０１、メモリ７０２、通信部７０３、ホストインターフェース７０６およびタイミングインターフェース７０７を含む。図１１の通信装置７００に含まれる各ハードウェアは、互いにバス接続されている。
【０１００】
ＣＰＵ７０１は、例えばメモリ７０２に保存されたプログラムを実行することにより、通信装置７００に含まれる各ハードウェアを制御する。例えば、ＣＰＵ７０１は、ＩＰ層、ＴＣＰ層若しくはＵＤＰ層、またはさらなる上位層の処理を実行する。なお、これらの処理はＯＳを介して行われてもよい。ＣＰＵ７０１は、例えば、ＭＰＵ、ＭｅＰ、マイクロコントローラ、ＤＳＰ、ＦＰＧＡなどの種々のプロセッサに置き換えられてもよい。
【０１０１】
メモリ７０２には、例えばＣＰＵ７０１によって実行されるプログラム、当該プログラムによって使用されるデータなどが一時的に保存される。メモリ７０２は、例えばＳＲＡＭまたはＤＲＡＭなどの揮発性メモリであってもよいし、不揮発性メモリであってもよい。
【０１０２】
通信部７０３は、映像クライアントとデータ通信を行う。具体的には、通信部７０３は、ＰＨＹ層またはＭＡＣ層の処理の一部または全部を行う。例えば、通信部７０３は、映像クライアントに含まれる通信装置３００との間で接続を確立するためのフレームをやり取りする。通信装置７００および通信装置３００の接続処理を通じて、通信装置７００および通信装置３００が参照する時刻は同期する。通信部７０３は、例えば、映像コンテンツ、コンテンツ制御情報などの搬送のためのデータフレームを通信装置３００へと送信する。通信部７０３は、信号処理部７０４とレジスタ部７０５とを含む。
【０１０３】
信号処理部７０４は、少なくともデータの送受信に関わるディジタル信号処理を行う。さらに、信号処理部７０４は、データの送受信に関わるアナログ信号処理を行うために、例えばＤＡＣ、ＡＤＣ、ＬＮＡ、アンテナなどのアナログ信号処理回路を含んでもよい。なお、アナログ信号処理回路の一部または全部が通信部７０３の外部に設けられてもよい。
【０１０４】
レジスタ部７０５は、例えば信号処理部７０４とＣＰＵ７０１との間でやり取りされるデータを一時的に保存する。さらに、レジスタ部７０５の一部が、同期タイマとして使用されてもよい。
【０１０５】
ホストインターフェース７０６は、通信装置７００とサーバ装置６００との間でタイミングに関する信号以外の信号（例えば、映像コンテンツなどを搬送する信号）をやり取りする。ホストインターフェース７０６は、例えばＵＳＢ、ＳＤＩＯ、ＵＡＲＴ、Ｉ２Ｃ、ＳＰＩ、ＰＣＩｅなどの汎用インターフェースであってもよいし、専用インターフェースであってもよい。
【０１０６】
タイミングインターフェース７０７は、サーバ装置６００へと第１のタイミング信号を出力する。タイミングインターフェース７０７は、例えばＵＳＢ、ＳＤＩＯ、ＵＡＲＴ、Ｉ２Ｃ、ＳＰＩ、ＰＣＩｅなどのディジタルの汎用インターフェースであってもよいし、例えばＰＩＯ、ＧＰＩＯなどのアナログの汎用インターフェースであってもよい。第１のタイミング信号の伝送遅延は、表示映像の同期精度に影響するので、タイミングインターフェース７０７は伝送遅延およびその揺らぎが小さいことが好ましい。
【０１０７】
サーバ装置６００および通信装置７００の機能構成の一例が図１２に示される。  
サーバ装置６００は、タイミング制御部６１１、再生制御部６１２および映像記憶部６１３を含む。  
タイミング制御部６１１は、コンテンツに対して所定の制御が行われるタイミングを決定する。タイミング制御部６１１は、決定されたタイミングを明示的または黙示的に表すコンテンツ制御情報を生成し、当該コンテンツ制御情報をタイミング信号生成部７１３およびデータ送信部７１４へと出力する。
【０１０８】
タイミング制御部６１１は、通信装置７００の内部の同期タイマ７１２のタイマ値を参照し、当該タイマ値に基づいて上記タイミングを決定してもよい。具体的には、タイミング制御部６１１は、上記タイマ値よりも未来の特定の絶対時刻を再生開始時刻として決定してもよい。
【０１０９】
また、タイミング制御部６１１は、再生開始時刻を算出するための相対時間を決定してもよい。この場合には、タイミング制御部６１１は相対時間を示すコンテンツ制御情報をデータ送信部７１４へと出力する。データ送信部７１４は、コンテンツ制御情報の示す相対時間に同期タイマ７１２のタイマ値を加算することによって再生開始時刻を算出する。データ送信部７１４は、算出された再生開始時刻によってコンテンツ制御情報を補完してから、１以上の映像クライアントへと送信すると共にタイミング信号生成部７１３へと出力する。
【０１１０】
さらに、タイミング制御部６１１は、タイミングインターフェース６０５を介して、通信装置７００から第１のタイミング信号を受け取る。例えば、この第１のタイミング信号が周期的であるならば、タイミング制御部６１１は、この第１のタイミング信号の周期を基準に前述の所望の周期を持つ第２のタイミング信号を生成してもよい。タイミング制御部６１１は、第２のタイミング信号を再生制御部６１２へと出力する。さらに、所望の周期は、第１のタイミング信号の周期と異なっていてもよいし、同一であってもよい。所望の周期が第１のタイミング信号の周期と同一の場合であっても、タイミング制御部６１１の作用により当該周期の揺らぎを緩和することができる。或いは、タイミング制御部６１１は、第２のタイミング信号の電圧が再生制御部６１２の入力電圧範囲に収まるように第１のタイミング信号の電圧を降圧または昇圧することによって、第２のタイミング信号を生成してもよい。
【０１１１】
再生制御部６１２は、タイミング制御部６１１から第２のタイミング信号を受け取り、映像記憶部６１３から映像コンテンツを読み出す。再生制御部６１２は、第２のタイミング信号に応じて、映像コンテンツの再生、停止などの制御を適時に行う。なお、再生制御部６１２は、再生開始時刻の他に再生終了時刻に基づくタイミング信号を利用してもよい。係るタイミング信号は、フェイルセーフの観点から有効である。また、再生制御部６１２は、同期を長期間に亘って安定的に維持するために、周期的なタイミング信号を利用してもよい。
【０１１２】
映像記憶部６１３は、映像クライアントへと配信される映像コンテンツを保存する。映像記憶部６１３に保存された映像コンテンツは、必要に応じて読み出され、データ送信部７１４へと転送される。さらに、この映像コンテンツは、再生制御部６１２によって必要に応じて読み出される。
【０１１３】
通信装置７００は、時刻同期部７１１、同期タイマ７１２、タイミング信号生成部７１３およびデータ送信部７１４を含む。  
時刻同期部７１１は、映像サーバおよび１以上の映像クライアントが接続を確立する際に、所定の時刻同期処理を行う。この時刻同期処理は、映像サーバおよび１以上の映像クライアントが形成するネットワークアーキテクチャに依存する。
【０１１４】
図１２の映像サーバが、スター型ネットワークにおいてハブに相当する親機（例えば、ＡＰ）として機能するならば、時刻同期部７１１は前述のタイマ制御情報を子機（すなわち、１以上の映像クライアント）へと送信する。
【０１１５】
他方、図１２の映像サーバが、スター型ネットワークにおいて子機（例えば、ＳＴＡ）として機能するならば、時刻同期部７１１は、当該スター型ネットワークの親機（すなわち、１以上の映像クライアントのいずれか１つ、または、当該スター型ネットワークを形成するために用意された図示されない親機（例えば通常のＡＰであってもよい））から上記タイマ制御情報を受信する。そして、時刻同期部７１１は、同期タイマ７１２のタイマ値をタイマ制御情報の示す参照タイマ値によって上書きする。
【０１１６】
なお、映像サーバおよび１以上の映像クライアントがスター型ネットワークを形成する場合には、例えば映像コンテンツ、コンテンツ制御情報などの搬送時の周波数利用効率の観点から、映像サーバを親機として機能させることが好ましい。しかしながら、映像サーバを子機として機能させることも可能である。いずれの場合であっても、時刻同期の精度に優劣は生じない。
【０１１７】
図１２の映像サーバおよび１以上の映像クライアントがピアツーピアネットワークを形成する場合には、時刻同期部７１１は、タイマ制御情報を１以上の映像クライアントへと送信すると共に当該１以上の映像クライアントからもタイマ制御情報を受信する。時刻同期部７１１は、同期タイマ７１２のタイマ値を受信タイマ制御情報の示す参照タイマ値に基づいて補正する。例えば、時刻同期部７１１は、同期タイマ７１２のタイマ値よりも受信タイマ制御情報の示す参照タイマ値が進んでいる場合（若しくは、遅れている場合）に限って、同期タイマ７１２のタイマ値を当該参照タイマ値によって上書きする。
【０１１８】
同期タイマ７１２は、例えば水晶振動子などのクロック素子が発生するクロック信号に合わせてカウントアップすることによってタイマ値を更新する。同期タイマ７１２のタイマ値は、時刻同期部７１１によって必要に応じて読み出される。さらに、同期タイマ７１２のタイマ値は、前述の時刻同期処理において時刻同期部７１１によって補正されることもある。
【０１１９】
なお、前述のように、同期タイマ７１２は、レジスタ部７０５の一部を用いて実装されてもよい。係る実装によれば、同期タイマ７１２はハードウェア制御されるので高精度な時刻同期が可能である。但し、同期タイマ７１２は、ソフトウェア制御されてもよい。同期タイマ７１２は、例えばメモリ７０２の一部などを用いて実装することも可能である。
【０１２０】
タイミング信号生成部７１３は、同期タイマ７１２から現在のタイマ値を搬送する信号を受け取り、タイミング制御部６１１またはデータ送信部７１４からコンテンツ制御情報を搬送する信号を受け取る。タイミング信号生成部７１３は、現在のタイマ値とコンテンツ制御情報とに基づいて、映像記憶部６１３に記憶されている映像コンテンツの制御タイミング（例えば、再生開始時刻）の到来を伝達する第１のタイミング信号を生成する。タイミング信号生成部７１３は、タイミングインターフェース７０７を介して、第１のタイミング信号をサーバ装置６００へと出力する。
【０１２１】
なお、タイミング信号生成部７１３として機能するプロセッサ（例えば、ＣＰＵ７０１であってもよいし、図示されないプロセッサであってもよい）は、例えば時刻同期部７１１およびデータ送信部７１４の一部として機能するプロセッサと共通であってもよい。この場合には、時刻同期部７１１またはデータ送信部７１４のための通信処理などの影響により、タイミング信号生成部７１３のためのタイミング信号生成処理が遅延するおそれがある。そこで、タイミング信号生成部７１３としてのプロセッサは、当該プロセッサの処理負荷を評価し、処理負荷の大きさに応じてタイミング信号生成処理の実行タイミングを前倒しするようにスケジューリングしてもよい。例えば、タイミング信号生成部７１３としてのプロセッサは、処理負荷が閾値以上である場合に、タイミング信号生成処理の実行タイミングを通常時（処理負荷が閾値未満である時）よりも所定時間早くなるようにスケジューリングしてもよい。係るスケジューリングによれば、処理負荷の影響によるタイミング信号生成処理の遅延を補償することができる。なお、上記所定時間の適正値は、タイミング信号生成部７１３としてのプロセッサの性能等の要因に依存するので実験を通じて調整することが望ましい。
【０１２２】
データ送信部７１４は、同期タイマ７１２のタイマ値に基づいてチャネルにアクセスし、１以上の映像クライアントへ種々のデータを送信する。例えば、データ送信部７１４は、例えば、映像コンテンツ、コンテンツ制御情報などを送信してもよい。
【０１２３】
具体的には、データ送信部７１４は、ブロードキャストによって映像コンテンツおよびコンテンツ制御情報を１以上の映像クライアントへと一斉送信してもよいし、ユニキャストによって映像コンテンツおよびコンテンツ制御情報を１以上の映像クライアントへと個別送信してもよい。また、データ送信部７１４は、コンテンツ制御情報を映像コンテンツと一緒に１以上の映像クライアントへと送信してもよいし、コンテンツ制御情報を映像コンテンツとは別々に１以上の映像クライアントへと送信してもよい。例えば、ストリーミングサービスにおいて、データ送信部７１４は、映像コンテンツの配信中にコンテンツ制御情報を１以上の映像クライアントへと送信してもよい。なお、コンテンツ制御情報が映像コンテンツとは別々に送信される場合には、当該コンテンツ制御情報は対応する映像コンテンツを識別する情報を含んでいてもよい。
【０１２４】
なお、１以上の映像クライアントによって表示される複数の映像コンテンツを意図的に異ならせたり、当該複数の映像コンテンツの再生開始時刻に意図的に時間差をつけたりすることも可能である。例えば、複数の映像クライアント間でインタラクティブな効果を得るために、相異なる映像が表示されてもよいし、１つのオリジナル映像を画面内位置で分割することによって得られる複数の映像が表示されてもよいし、１つのオリジナル映像を時間で分割することによって得られる複数の映像が表示されてもよい。
【０１２５】
故に、データ送信部７１４は、相異なる映像コンテンツを１以上の映像クライアントへと送信してもよいし、相異なるコンテンツ制御情報を１以上の映像クライアントへと送信してもよい。相異なる映像コンテンツまたは相異なるコンテンツ制御情報を１以上の映像クライアントへと一斉送信するために、データ送信部７１４は種々の多元接続方式を利用してもよい。具体的には、データ送信部７１４は、例えば、ＦＤＭＡ、ＯＦＤＭＡ、ＣＤＭＡ、ＳＤＭＡ、マルチユーザＭＩＭＯなどを利用できる。
【０１２６】
さらに、データ送信部７１４は、タイミング制御部６１１から受け取ったコンテンツ制御情報が相対時間を示す場合に、同期タイマ７１２のタイマ値を当該相対時間に加算することによって、例えば再生開始時刻を算出してもよい。そして、データ送信部７１４は、算出された再生開始時刻によってコンテンツ制御情報を補完してから、１以上の映像クライアントへと送信すると共にタイミング信号生成部７１３へと出力する。
【０１２７】
なお、時刻同期部７１１およびデータ送信部７１４は、図１２では別々の要素として描かれているが、どちらも通信部７０３を用いて実装することができる。
【０１２８】
本実施形態に係る映像同期表示システムは、図１３に例示されるように動作可能である。図１３の例では、通信装置３００−１および通信装置３００−２が通信装置７００に接続することにより、これらの内部の同期タイマは高精度に同期する。それから、コンテンツサーバから２つのコンテンツクライアントへと、映像コンテンツが配信され、当該映像コンテンツの再生開始時刻（コンテンツ制御情報）が通知される。クライアント装置４００−１、クライアント装置４００−２およびサーバ装置６００は、再生開始時刻と通信装置３００−１、通信装置３００−２および通信装置７００の内部の同期タイマのタイマ値とに基づいて生成されたタイミング信号に応じて、映像コンテンツを表示装置５００−１、表示装置５００−２および表示装置８００に略同時に表示できる。
【０１２９】
以上説明したように、第２の実施形態に係る映像同期表示システムは、第１の実施形態と同様に、映像サーバおよび１以上の映像クライアントに含まれる通信装置間の接続を確立させることで当該通信装置の内部のタイマを高精度に同期させる。そして、この映像同期表示システムは、これらタイマのタイマ値に基づいて映像コンテンツに対して種々の制御を行う。従って、この映像同期表示システムによれば、映像サーバおよび１以上の映像クライアントが映像コンテンツを高精度に同期表示できる。
【０１３０】
さらに、本実施形態に係る映像同期表示システムによれば、映像サーバも映像コンテンツを表示するので、第１の実施形態に比べて、所定数の表示装置に対して必要とされる映像クライアントの数は１つ減少する。故に、この映像同期表示システムによれば、ハードウェアコストの削減が可能である。なお、この映像同期表示システムにおいて、映像サーバおよび映像クライアントのハードウェアは概ね共通であるから、例えばハードウェアスイッチまたはソフトウェアスイッチを用いて、映像サーバおよび映像クライアントの役割が変更できるように設計されてもよい。
【０１３１】
（第３の実施形態）  
前述の第１の実施形態および第２の実施形態では、映像コンテンツを同期制御する技術が説明された。しかしながら、これらの実施形態は、映像コンテンツの同期制御に限られず種々のコンテンツの同期制御に適用可能である。
【０１３２】
本実施形態において言及されるコンテンツは、複数の地点においてその制御タイミングを同期させる必要のあるデータを意味する。なお、制御タイミングの同期とは、必ずしも複数の地点での一致に限定されず、複数の地点間で意図的に時間差をつけることも許容される。
【０１３３】
例えば、本実施形態において音声コンテンツが取り扱われてもよい。具体的には、本実施形態は、マルチスピーカシステムに適用されてよい。このマルチスピーカシステムは、複数の地点に配置されたスピーカによって同一の音声コンテンツを高精度に同期出力できる。或いは、本実施形態は、頭外音像定位を提供するシステムに適用されてもよい。このシステムは、複数の地点に配置された各スピーカが音声コンテンツを所定の時間差をつけて出力することで、聴者に対して頭外音像定位を提供できる。
【０１３４】
さらに、コンテンツは、機械の制御パターンであってもよい。例えば、コンテンツは、複数の照明機器（例えば、ステージライト、ＬＥＤ（Ｌｉｇｈｔ  Ｅｍｉｔｔｉｎｇ  Ｄｉｏｄｅ）、イルミネーションなど）の制御パターンであってもよいし、複数の家庭内機器（例えば、家電、家具など）の制御パターンであってもよいし、生産ラインにおける複数の産業機械の制御パターンであってもよいし、複数のロボットのダンスまたは合奏などの協調動作のための制御パターンであってもよいし、複数のセンサの制御パターンであってもよいし、花火大会における複数の花火または爆竹の着火装置のための制御パターンであってもよい。或いは、コンテンツは、例えばアミューズメントパークにおいて開催されるパレードによって使用される音、光、映像などの複数の演出装置の制御パターンであってもよい。
【０１３５】
なお、コンテンツは、上記例に限られず、例えば光、音、電気、磁気、圧力などの制御パターンであってもよい。さらに、本実施形態は、エンターテイメント分野または工業分野に限られず、ヘルスケア分野、エネルギー分野、交通分野などに適用されてもよい。
【０１３６】
第３の実施形態に係るコンテンツ同期出力システムは、コンテンツサーバと、複数のコンテンツクライアントとを含む。コンテンツサーバは、サーバ装置９００および通信装置２００を含む。コンテンツクライアントは、通信装置３００およびクライアント装置１０００を含む。本実施形態に係るコンテンツ同期出力システムが図１４に例示される。図１４のコンテンツ同期出力システムは、コンテンツサーバと３台のコンテンツクライアントとを含む。なお、このコンテンツ同期出力システムは、複数種類のコンテンツを取り扱ってもよい。
【０１３７】
サーバ装置９００のハードウェア構成の一例が図１５に示される。図１５のサーバ装置９００は、ＣＰＵ９０１、メモリ９０２、ＨＤＤ９０３およびホストインターフェース９０４を含む。図１５のサーバ装置９００に含まれる各ハードウェアは、互いにバス接続されている。
【０１３８】
ＣＰＵ９０１は、例えばメモリ９０２に保存されたプログラムを実行することによって、サーバ装置９００に含まれる各ハードウェアを制御する。ＣＰＵ９０１は、例えば、ＭＰＵ、ＭｅＰ、マイクロコントローラ、ＦＰＧＡ、ＧＰＵなどの種々のプロセッサに置き換えられてもよい。
【０１３９】
メモリ９０２には、例えばＣＰＵ９０１によって実行されるプログラム、当該プログラムによって使用されるデータなどが一時的に保存される。メモリ９０２は、例えばＳＲＡＭまたはＤＲＡＭなどの揮発性メモリであってもよいし、不揮発性メモリであってもよい。
【０１４０】
ＨＤＤ９０３には、例えばコンテンツクライアントへと配信されるコンテンツが保存される。ＨＤＤ９０３は、例えばＳＳＤに置き換えられてもよいし、図示されないホストインターフェースを介してバスに接続されるフラッシュメモリに置き換えられてもよい。
【０１４１】
ホストインターフェース９０４は、サーバ装置９００と通信装置２００との間で信号（例えば、コンテンツ、コンテンツ制御情報などを搬送する信号）をやり取りする。ホストインターフェース９０４は、例えばＵＳＢ、ＳＤＩＯ、ＵＡＲＴ、Ｉ２Ｃ、ＳＰＩ、ＰＣＩｅなどの汎用インターフェースであってもよいし、専用インターフェースであってもよい。
【０１４２】
サーバ装置９００の機能構成の一例が図１６に示される。サーバ装置９００は、タイミング制御部９１１およびコンテンツ記憶部９１２を含む。  
タイミング制御部９１１は、コンテンツに対して所定の制御が行われるタイミングを決定する。タイミング制御部９１１は、決定されたタイミングを明示的または黙示的に表すコンテンツ制御情報を生成し、当該コンテンツ制御情報をデータ送信部２１３へと出力する。コンテンツ制御情報は、例えば、同期出力の対象となるコンテンツの出力開始時刻を明示的または黙示的に表す情報であってもよい。
【０１４３】
タイミング制御部９１１は、通信装置２００の内部の同期タイマ２１２のタイマ値を参照し、当該タイマ値に基づいて上記タイミングを決定してもよい。具体的には、タイミング制御部９１１は、上記タイマ値よりも未来の特定の絶対時刻を出力開始時刻として決定してもよい。
【０１４４】
また、タイミング制御部９１１は、出力開始時刻を算出するための相対時間を決定してもよい。この場合に、コンテンツサーバが出力開始時刻を算出する第１の技法と、各コンテンツクライアントが出力開始時刻を算出する第２の技法とが採用可能である。
【０１４５】
第１の技法によれば、タイミング制御部９１１は相対時間を示すコンテンツ制御情報をデータ送信部２１３へと出力する。データ送信部２１３は、コンテンツ制御情報の示す相対時間に同期タイマ２１２のタイマ値を加算することによって出力開始時刻を算出する。データ送信部２１３は、算出された出力開始時刻によってコンテンツ制御情報を補完してから、複数のコンテンツクライアントへと送信する。
【０１４６】
第２の技法によれば、データ送信部２１３は、タイミング制御部９１１によって決定された相対時間を示すコンテンツ制御情報を複数のコンテンツクライアントへと送信する。各コンテンツクライアントは、コンテンツ制御情報の受信時における当該コンテンツクライアントの内部の同期タイマのタイマ値に当該コンテンツ制御情報の示す相対時間を加算することによって出力開始時刻を算出する。但し、第２の技法は、第１の技法に比べて、例えばチャネルの伝送遅延や受信処理遅延などの要因により同期精度が劣化するおそれがある。
【０１４７】
コンテンツ記憶部９１２は、コンテンツクライアントへと配信されるコンテンツを保存する。コンテンツ記憶部９１２に保存されたコンテンツは、必要に応じて読み出され、データ送信部２１３へと転送される。なお、同期出力の対象となるコンテンツを全てのコンテンツクライアントが既に保存しているならば、コンテンツ記憶部９１２は不要である。但し、同期出力の対象となり得るコンテンツが複数存在する場合には、同期出力されるコンテンツを一意に特定するために、当該コンテンツを識別する識別子情報が伝送されてもよい。
【０１４８】
クライアント装置１０００のハードウェア構成の一例が図１７に示される。図１７のクライアント装置１０００は、ＣＰＵ１００１、メモリ１００２、ＨＤＤ１００３、ホストインターフェース１００４、タイミングインターフェース１００５およびコンテンツ出力インターフェース１００６を含む。図１７のクライアント装置１０００に含まれる各ハードウェアは、互いにバス接続されている。
【０１４９】
ＣＰＵ１００１は、例えばメモリ１００２に保存されたプログラムを実行することによって、クライアント装置１０００に含まれる各ハードウェアを制御する。ＣＰＵ１００１は、例えば、ＭＰＵ、ＭｅＰ、マイクロコントローラ、ＦＰＧＡ、ＧＰＵなどの種々のプロセッサに置き換えられてもよい。
【０１５０】
メモリ１００２には、例えばＣＰＵ１００１によって実行されるプログラム、当該プログラムによって使用されるデータなどが一時的に保存される。メモリ１００２は、例えばＳＲＡＭまたはＤＲＡＭなどの揮発性メモリであってもよいし、不揮発性メモリであってもよい。
【０１５１】
ＨＤＤ１００３には、例えばコンテンツサーバから配信されたコンテンツが保存される。ＨＤＤ１００３は、例えばＳＳＤに置き換えられてもよいし、図示されないホストインターフェースを介してバスに接続されるフラッシュメモリに置き換えられてもよい。
【０１５２】
ホストインターフェース１００４は、クライアント装置１０００と通信装置３００との間でタイミングに関する信号以外の信号（例えば、コンテンツなどを搬送する信号）をやり取りする。ホストインターフェース１００４は、例えばＵＳＢ、ＳＤＩＯ、ＵＡＲＴ、Ｉ２Ｃ、ＳＰＩ、ＰＣＩｅなどの汎用インターフェースであってもよいし、専用インターフェースであってもよい。
【０１５３】
タイミングインターフェース１００５は、通信装置３００からタイミングに関する信号を受け取る。タイミングインターフェース１００５は、例えばＵＳＢ、ＳＤＩＯ、ＵＡＲＴ、Ｉ２Ｃ、ＳＰＩ、ＰＣＩｅなどのディジタルの汎用インターフェースであってもよいし、例えばＰＩＯ、ＧＰＩＯなどのアナログの汎用インターフェースであってもよい。タイミングに関する信号の伝送遅延は、出力コンテンツの同期精度に影響するので、タイミングインターフェース１００５は伝送遅延およびその揺らぎが小さいことが好ましい。
【０１５４】
コンテンツ出力インターフェース１００６は、クライアント装置１０００と図示されないコンテンツ出力装置との間で信号（例えば、オーディオ信号、機械の制御信号などのコンテンツの種別に依存する信号）をやり取りする。コンテンツ出力インターフェース１００６およびコンテンツ出力装置の詳細は、図１７のコンテンツクライアントが取り扱うコンテンツの種別に依存する。
【０１５５】
例えば、音声コンテンツが取り扱われる場合には、スピーカがコンテンツ出力装置に相当し、当該スピーカ用のオーディオインターフェースがコンテンツ出力インターフェース１００６に相当する。照明機器の制御パターンが取り扱われる場合には、コンテンツ出力インターフェース１００６は、例えばＰＩＯなどのアナログピンであってもよい。モータの制御パターンが取り扱われる場合には、コンテンツ出力インターフェース１００６は、ＰＷＭ（Ｐｕｌｓｅ  Ｗｉｄｔｈ  Ｍｏｄｕｌａｔｉｏｎ）インターフェースであってもよい。
【０１５６】
クライアント装置１０００の機能構成の一例が図１８に示される。クライアント装置１０００は、タイミング制御部１０１１、出力制御部１０１２およびコンテンツ記憶部１０１３を含む。
【０１５７】
タイミング制御部１０１１は、タイミングインターフェース１００５を介して、同期タイマ３１２から現在のタイマ値を搬送する信号を受け取り、データ受信部３１３からコンテンツ制御情報を搬送する信号を受け取る。タイミング制御部１０１１は、現在のタイマ値とコンテンツ制御情報とに基づいて、コンテンツ記憶部１０１３に記憶されているコンテンツの制御タイミング（例えば、出力開始時刻）の到来を伝達するタイミング信号を生成する。タイミング制御部１０１１は、タイミング信号を出力制御部１０１２へと出力する。
【０１５８】
出力制御部１０１２は、タイミング制御部１０１１からタイミング信号を受け取り、コンテンツ記憶部１０１３からコンテンツを読み出す。出力制御部１０１２は、タイミング信号に応じて、コンテンツの出力、停止などの制御を適時に行う。なお、出力制御部１０１２は、出力開始時刻の他に出力終了時刻に基づくタイミング信号を利用してもよい。係るタイミング信号は、フェイルセーフの観点から有効である。また、出力制御部１０１２は、同期を長期間に亘って安定的に維持するために、周期的なタイミング信号を利用してもよい。
【０１５９】
コンテンツ記憶部１０１３は、ホストインターフェース１００４を介して、データ受信部３１３からコンテンツを搬送する信号を受け取る。コンテンツ記憶部１０１３には、受信コンテンツが記憶される。コンテンツ記憶部１０１３に記憶されたコンテンツは、出力制御部１０１２によって必要に応じて読み出される。
【０１６０】
以上説明したように、第３の実施形態に係るコンテンツ同期出力システムは、前述の第１の実施形態および第２の実施形態を映像コンテンツに限らず種々のコンテンツへと拡張したシステムに相当する。従って、このシステムによれば、映像コンテンツ以外のコンテンツを同期出力する場合に、第１の実施形態および第２の実施形態と同一または類似の効果を得ることができる。
【０１６１】
なお、各実施形態において説明されたサーバ装置およびクライアント装置は、汎用のコンピュータを基本ハードウェアとして用いることでも実現可能である。例えば、タイミング制御部、再生制御部および出力制御部は、コンピュータに搭載されたプロセッサにプログラムを実行させることによって実装されてよい。また、映像記憶部およびコンテンツ記憶部は、コンピュータに内蔵または外付けされた種々の記録媒体（例えば、メモリ、ＨＤＤ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＡＭ、ＤＶＤ−Ｒ）などを適宜利用して実装されてもよい。
【０１６２】
プログラムは、コンピュータに予めインストールされていてもよいし、コンピュータで読み取り可能な記録媒体に格納して提供されてもよい。プログラムは、インストール可能な形式のファイルまたは実行可能な形式のファイルとして記録媒体に記憶される。記録媒体としては、磁気ディスク、光ディスク（ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＤＶＤ等）、光磁気ディスク（ＭＯ等）、半導体メモリなどである。記録媒体は、プログラムを記憶でき、かつ、コンピュータが読み取り可能であれば、何れであってもよい。また、プログラムを、インターネットなどのネットワークに接続された他のコンピュータ（サーバ）上に格納し、ネットワーク経由でコンピュータ（クライアント）にダウンロードさせてもよい。
【０１６３】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１６４】
１００，６００，９００・・・サーバ装置
１０１，２０１，３０１，４０１，６０１，７０１，９０１，１００１・・・ＣＰＵ
１０２，２０２，３０２，４０２，６０２，７０２，９０２，１００２・・・メモリ
１０３，４０３，６０３，９０３，１００３・・・ＨＤＤ
１０４，２０６，３０６，４０４，６０４，７０６，９０４，１００４・・・ホストインターフェース
１０５・・・ネットワークインターフェース
１１１，４１１，４２１，６１１，９１１，１０１１・・・タイミング制御部
１１２，４１３，６１３・・・映像記憶部
２００，３００，７００・・・通信装置
２０３，３０３，７０３・・・通信部
２０４，３０４，７０４・・・信号処理部
２０５，３０５，７０５・・・レジスタ部
２１１，３１１，７１１・・・時刻同期部
２１２，３１２，７１２・・・同期タイマ
２１３，７１４・・・データ送信部
３０７，４０５，４３５，６０５，７０７，１００５・・・タイミングインターフェース
３１３，３２３・・・データ受信部
３２４，７１３・・・タイミング信号生成部
４００，１０００・・・クライアント装置
４０６，６０６・・・ディスプレイインターフェース
４１２，６１２・・・再生制御部
４３７，６０７・・・ＰＬＬ
５００，８００・・・表示装置
９１２，１０１３・・・コンテンツ記憶部
１００６・・・コンテンツ出力インターフェース
１０１２・・・出力制御部
【図１】
2016042614.tif 000003
【図２】
2016042614.tif 000004
【図３】
2016042614.tif 000005
【図４】
2016042614.tif 000006
【図５】
2016042614.tif 000007
【図６】
2016042614.tif 000008
【図７】
2016042614.tif 000009
【図８】
2016042614.tif 000010
【図９】
2016042614.tif 000011
【図１０】
2016042614.tif 000012
【図１１】
2016042614.tif 000013
【図１２】
2016042614.tif 000014
【図１３】
2016042614.tif 000015
【図１４】
2016042614.tif 000016
【図１５】
2016042614.tif 000017
【図１６】
2016042614.tif 000018
【図１７】
2016042614.tif 000019
【図１８】
2016042614.tif 000020
【図１９】
2016042614.tif 000021