(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-01-05
(45)【発行日】2022-01-20
(54)【発明の名称】受信装置、通信システム、プログラム及び受信方法
(51)【国際特許分類】
H04N 5/073 20060101AFI20220113BHJP
【FI】
H04N5/073 B
(21)【出願番号】P 2021506851
(86)(22)【出願日】2019-03-18
(86)【国際出願番号】 JP2019011168
(87)【国際公開番号】W WO2020188699
(87)【国際公開日】2020-09-24
【審査請求日】2021-04-14
(73)【特許権者】
【識別番号】310021766
【氏名又は名称】株式会社ソニー・インタラクティブエンタテインメント
(74)【代理人】
【識別番号】110000154
【氏名又は名称】特許業務法人はるか国際特許事務所
(72)【発明者】
【氏名】谷川 正和
【審査官】西谷 憲人
(56)【参考文献】
【文献】特表2008-535291(JP,A)
【文献】特開2011-155486(JP,A)
【文献】特開2010-181616(JP,A)
【文献】特開2012-005025(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 5/073
H04N 5/66
H04N 5/60
H04N 21/242
H04N 7/173
H04N 5/14
H04L 7/00
(57)【特許請求の範囲】
【請求項1】
送信装置が所与の第1間隔で送信する画像情報を無線通信によって順次受信する受信部と、
表示クロックに従って、前記画像情報に基づいてフレーム画像を順次表示するとともに、前記フレーム画像の更新時刻に応じた時刻を表す表示時刻情報を生成する表示部と、
複数の前記表示時刻情報に基づいて前記フレーム画像の表示が行われた間隔を表す第2間隔を算出し、前記第2間隔が前記第1間隔に近づくように、前記表示クロックに応じた前記フレーム画像の更新周期を制御する制御部と、
を含
み、
前記制御部は、
前記画像情報を受信する周期と前記フレーム画像を表示する周期との周波数の相違を表す周波数情報が第1の値より大きい場合に、該周波数情報を用いて前記更新周期を制御し、
前記周波数情報が第2の値より小さい場合に、前記周波数情報とともに、前記画像情報を受信する周期と前記フレーム画像を表示する周期との位相の相違を表す位相情報を用いて前記更新周期を制御する、
ことを特徴とする受信装置。
【請求項2】
前記画像情報は、前記画像情報毎に生成された時刻を表す生成時刻情報を含み、
前記制御部は、複数の前記画像情報にそれぞれ含まれる前記生成時刻情報に基づいて、前記第1間隔を算出する、
ことを特徴とする請求項1に記載の受信装置。
【請求項3】
さらに、受信した前記画像情報毎に処理を施すとともに、該処理を施す時刻に応じた処理時刻情報を生成する処理部を有し、
前記制御部は、さらに、前記処理時刻情報と前記表示時刻情報とに基づいて、前記処理が施された時刻から前記フレーム画像が表示された時刻までの時間が所定の値に近づくように制御する、
ことを特徴とする請求項1または2に記載の受信装置。
【請求項4】
前記処理部は、エンコードされた前記画像情報をデコードするデコーダであって、前記画像情報のデコードを完了させた時刻を表す前記処理時刻情報を生成する、ことを特徴とする請求項3に記載の受信装置。
【請求項5】
さらに、nフレーム目及びn+1フレーム目の前記画像情報のそれぞれ少なくとも一部を記憶する記憶部を有し、
前記受信部がn+1フレーム目の前記画像情報を受信した時に、
前記記憶部は、n-1フレーム目の前記画像情報をn+1フレーム目の前記画像情報に更新し、
前記表示部は、前記記憶部が記憶したnフレーム目のフレーム画像を表示する、
ことを特徴とする請求項1~4のいずれかに記載の受信装置。
【請求項6】
前記制御部は、
前記第1間隔と前記第2間隔の差分の絶対値が
前記第1の値より大きくなる時間が第1の時間以上続いた場合に、前記第1間隔及び前記第2間隔を用いて
前記周波数情報を算出し、該周波数情報を用いて前記更新周期を制御し、
前記第1間隔と前記第2間隔の差分の絶対値が
前記第2の値より小さくなる時間が第2の時間以上続いた場合に、前記第1間隔と、前記第2間隔と、前記処理時刻情報と、前記表示時刻情報と、を用いて
前記周波数情報及び前記位相情報を算出し、該周波数情報及び該位相情報を用いて前記更新周期を制御する、
ことを特徴とする請求項3または4に記載の受信装置。
【請求項7】
請求項2に記載の受信装置と
前記生成時刻情報と、前記画像情報と、を画像毎に前記受信装置に送信する送信装置と、
を含む通信システム。
【請求項8】
送信装置が所与の第1間隔で送信する画像情報を無線通信によって順次受信する手順と、
表示クロックに従って、前記画像情報に基づいてフレーム画像を順次表示するとともに、前記フレーム画像の更新時刻に応じた時刻を表す表示時刻情報を生成する手順と、
複数の前記表示時刻情報に基づいて前記フレーム画像の表示が行われた間隔を表す第2間隔を算出し、前記第2間隔が前記第1間隔に近づくように、前記表示クロックに応じた前記フレーム画像の更新周期を制御する手順と、
をコンピュータに実行させる
プログラムであって、
前記制御する手順において、
前記画像情報を受信する周期と前記フレーム画像を表示する周期との周波数の相違を表す周波数情報が第1の値より大きい場合に、該周波数情報を用いて前記更新周期は制御され、
前記周波数情報が第2の値より小さい場合に、前記周波数情報とともに、前記画像情報を受信する周期と前記フレーム画像を表示する周期との位相の相違を表す位相情報を用いて前記更新周期は制御される、
ことを特徴とするプログラム。
【請求項9】
送信装置が所与の第1間隔で送信する画像情報を無線通信によって順次受信するステップと、
表示クロックに従って、前記画像情報に基づいてフレーム画像を順次表示するとともに、前記フレーム画像の更新時刻に応じた時刻を表す表示時刻情報を生成するステップと、
複数の前記表示時刻情報に基づいて前記フレーム画像の表示が行われた間隔を表す第2間隔を算出し、前記第2間隔が前記第1間隔に近づくように、前記表示クロックに応じた前記フレーム画像の更新周期を制御するステップと、
を含む
受信方法であって、
前記制御するステップにおいて、
前記画像情報を受信する周期と前記フレーム画像を表示する周期との周波数の相違を表す周波数情報が第1の値より大きい場合に、該周波数情報を用いて前記更新周期は制御され、
前記周波数情報が第2の値より小さい場合に、前記周波数情報とともに、前記画像情報を受信する周期と前記フレーム画像を表示する周期との位相の相違を表す位相情報を用いて前記更新周期は制御される、
ことを特徴とする受信方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、受信装置、通信システム、プログラム及び受信方法に関する。
【背景技術】
【0002】
一般的に、送信装置と受信装置との間で映像信号の送受信を行う場合、映像信号を伝送する際に生じる遅延を低減するため、送信装置の送信時刻と受信装置の表示時刻と合わせる同期処理が実施される。同期処理は、例えば、映像信号とともに送信される時刻信号を用いて実行される。
【発明の概要】
【発明が解決しようとする課題】
【0003】
送信装置と受信装置とが有線で接続される場合、送信される映像信号は大きな外乱を受けるおそれが小さい。そのため、簡易な同期処理で十分である。しかし、送信装置と受信装置とが無線で接続される場合、信号経路に大きな外乱が含まれる可能性がある。
【0004】
当該外乱による影響を除去するため、PLL(Phase Locked Loop)回路が用いられることがある。しかしながら、当該外乱による影響を取り除くためだけにPLL回路を用いることはコストアップの要因となる。一方、送信装置と受信装置とが無線で接続される場合に何ら同期処理が行われないと、外乱によって送信時刻と表示時刻の周波数及びまたは位相に差異が生じ、フレームの欠落や表示遅延の増加等が生じるおそれがある。
【0005】
本発明は、上記問題点に鑑みてなされたものであり、その目的は、通信経路に外乱が生じても、フレームの欠落や表示遅延の増加等の不具合が生じる可能性を低減する受信装置及び通信システムを提供することである。
【課題を解決するための手段】
【0006】
本発明の一側面に係る受信装置は、送信装置が所与の第1間隔で送信する画像情報を無線通信によって順次受信する受信部と、表示クロックに従って、前記画像情報に基づいてフレーム画像を順次表示するとともに、前記フレーム画像の更新時刻に応じた時刻を表す表示時刻情報を生成する表示部と、複数の前記表示時刻情報に基づいて前記フレーム画像の表示が行われた間隔を表す第2間隔を算出し、前記第2間隔が前記第1間隔に近づくように、前記表示クロックに応じた前記フレーム画像の更新周期を制御する制御部と、を含む。
【0007】
また、本発明の他の一側面に係る受信装置によれば、前記画像情報は、前記画像情報毎に生成された時刻を表す生成時刻情報を含み、前記制御部は、複数の前記画像情報にそれぞれ含まれる前記生成時刻情報に基づいて、前記第1間隔を算出する。
【0008】
また、本発明の他の一側面に係る受信装置によれば、さらに、受信した前記画像情報毎に処理を施すとともに、該処理を施す時刻に応じた処理時刻情報を生成する処理部を有し、前記制御部は、さらに、前記処理時刻情報と前記表示時刻情報とに基づいて、前記処理が施された時刻から前記フレーム画像が表示された時刻までの時間が所定の値に近づくように制御する。
【0009】
また、本発明の他の一側面に係る受信装置によれば、前記処理部は、エンコードされた前記画像情報をデコードするデコーダであって、前記画像情報のデコードを完了させた時刻を表す前記処理時刻情報を生成する。
【0010】
また、本発明の他の一側面に係る受信装置によれば、さらに、nフレーム目及びn+1フレーム目の前記画像情報のそれぞれ少なくとも一部を記憶する記憶部を有し、前記受信部がn+1フレーム目の前記画像情報を受信した時に、前記記憶部は、n-1フレーム目の前記画像情報をn+1フレーム目の前記画像情報に更新し、前記表示部は、前記記憶部が記憶したnフレーム目のフレーム画像を表示する。
【0011】
また、本発明の他の一側面に係る受信装置によれば、前記制御部は、前記第1間隔と前記第2間隔の差分の絶対値が第1の値より大きくなる時間が第1の時間以上続いた場合に、前記第1間隔及び前記第2間隔を用いて前記更新周期を制御し、前記第1間隔と前記第2間隔の差分の絶対値が第2の値より小さくなる時間が第2の時間以上続いた場合に、前記第1間隔と、前記第2間隔と、前記処理時刻情報と、前記表示時刻情報と、を用いて前記更新周期を制御する。
【0012】
また、本発明の一側面に係る通信システムによれば、受信装置と、前記生成時刻情報と、前記画像情報と、を画像毎に前記受信装置に送信する送信装置と、を含む。
【0013】
また、本発明の一側面に係るプログラムによれば、送信装置が所与の第1間隔で送信する画像情報を無線通信によって順次受信する手順と、表示クロックに従って、前記画像情報に基づいてフレーム画像を順次表示するとともに、前記フレーム画像の更新時刻に応じた時刻を表す表示時刻情報を生成する手順と、複数の前記表示時刻情報に基づいて前記フレーム画像の表示が行われた間隔を表す第2間隔を算出し、前記第2間隔が前記第1間隔に近づくように、前記表示クロックに応じた前記フレーム画像の更新周期を制御する手順と、をコンピュータに実行させる。
【0014】
また、本発明の一側面に係る受信方法によれば、送信装置が所与の第1間隔で送信する画像情報を無線通信によって順次受信するステップと、表示クロックに従って、前記画像情報に基づいてフレーム画像を順次表示するとともに、前記フレーム画像の更新時刻に応じた時刻を表す表示時刻情報を生成するステップと、複数の前記表示時刻情報に基づいて前記フレーム画像の表示が行われた間隔を表す第2間隔を算出し、前記第2間隔が前記第1間隔に近づくように、前記表示クロックに応じた前記フレーム画像の更新周期を制御するステップと、を含む。
【図面の簡単な説明】
【0015】
【
図1】本発明の一実施形態に係る通信システムの機能ブロック図である。
【
図2】本発明の一実施形態に係る制御量の算出について説明するための図である。
【
図3】表示時刻、処理完了時刻及び画像情報生成時刻の関係を示す図である。
【
図4】本発明の一実施形態に係る状態遷移図である。
【発明を実施するための形態】
【0016】
以下、本発明の一実施形態について図面に基づき詳細に説明する。
図1は、本実施形態に係る通信システム100の機能ブロック図である。本実施形態に係る通信システム100は、例えば、ヘッドマウントディスプレイと、当該ヘッドマウントディスプレイに対して無線で映像信号を送信するゲーム機と、を含むゲームシステムである。
【0017】
図1に示すように、通信システム100は、送信部200と、受信部300と、を含む。送信部200は、生成時刻情報と、画像情報と、をフレーム画像毎に受信部300に送信する。受信部300は、送信部200が所与の第1間隔で送信する画像情報を無線通信によって順次受信する。
【0018】
また、送信部200は、第1制御部202と、第1クロック生成部204と、画像生成部206と、第1処理部208と、第1通信部210と、を含む。また、受信部300は、第2制御部302と、第2クロック生成部304と、第2通信部306と、第2処理部308と、記憶部310と、表示部400と、を含む。
【0019】
第1制御部202は、例えば図示しないメモリにインストールされるプログラムに従って動作するCPU等のプログラム制御デバイスである。第1制御部202は、送信部200に含まれる各部の動作を制御する。
【0020】
第1クロック生成部204は、第1通信部210で用いられる第1クロックを生成する。具体的には、例えば、第1クロック生成部204は、水晶発振子を含む発振回路であり、所与の周波数である第1クロックを生成する。なお、第1クロック生成部204は、送信部200に含まれる他の各部で用いられるクロックを生成してもよい。
【0021】
画像生成部206は、フレーム画像を生成する。具体的には、例えば、画像生成部206は、フレーム画像を更新する頻度(以下、フレーム周波数とする)に応じた数の画像情報を毎秒生成する。例えば、フレーム周波数が120Hzである場合、画像生成部206は、1秒ごとに120個の画像情報を生成する。
【0022】
ここで、画像情報は、当該画像情報毎に当該画像情報が生成された時刻を表す生成時刻情報を含むことが望ましい。例えば、画像情報がMPEG-4規格に適合する情報である場合、画像情報は、PTS(presentation time stamp)と呼ばれる生成時刻情報を含む。
【0023】
第1処理部208は、画像生成部206が生成した画像情報毎に処理を施す。処理は、例えば、変調または圧縮である。具体的には、例えば、第1処理部208はエンコーダであって、画像情報を圧縮する。第1処理部208が画像情報を変調または圧縮することにより、送信部200は、フレーム周波数に応じた数の画像情報を受信部300に毎秒送信できる。なお、画像情報に処理を施さずに送信する場合、第1処理部208は省略されてもよい。
【0024】
第1通信部210は、第1クロックを用いた無線通信によって、所与の第1間隔で画像情報を送信する。具体的には、第1通信部210は、所与の無線通信規格に従って、第1処理部208で圧縮または変調された画像情報を受信部300に送信する。所与の無線通信規格は、フレーム周波数に応じた数の画像情報を毎秒送信できる通信速度が確保されていれば、どのような通信規格であってもよい。
【0025】
第2制御部302は、記憶部310にインストールされるプログラムに従って動作するCPU等のプログラム制御デバイスである。第2制御部302は、受信部300に含まれる各部の動作を制御する。
【0026】
また、第2制御部302は、複数の表示時刻情報に基づいてフレーム画像の表示が行われた間隔を表す第2間隔を算出し、第2間隔が第1間隔に近づくように、表示クロックに応じたフレーム画像の更新周期を制御する。ここで、第2制御部302は、さらに、処理時刻情報と表示時刻情報とに基づいて、処理が施された時刻からフレーム画像が表示された時刻までの時間が所定の値に近づくように制御してもよい。具体的な制御については後述する。
【0027】
第2クロック生成部304は、受信部300に含まれる各部で用いられる第2クロックを生成する。具体的には、例えば、第2クロック生成部304は、水晶発振子を含む発振回路であり、所与の周波数である第2クロックを生成する。
【0028】
ここで、第1クロック生成部204及び第2クロック生成部304は、第1クロックと第2クロックの周波数が設計上同じ周波数となるように構成される。しかしながら、第1クロック生成部204及び第2クロック生成部304に含まれる各部品の仕様が同一であっても、各部品の特性には誤差が存在する。また、送信部200と受信部300は、構造上分離されており置かれた環境(例えば温度など)が異なる。この場合、第1クロック生成部204及び第2クロック生成部304に含まれる同一の部品の特性が相違するため、第1クロックと第2クロックの周波数は相違するのが通常である。
【0029】
第2通信部306は、第2クロックを用いた無線通信によって、所与の第2間隔で画像情報を受信する。具体的には、第2通信部306は、上記無線通信規格に従って、第1通信部210から画像情報を受信する。
【0030】
ここで、第1通信部210が画像情報を送信する間隔である第1間隔と、第2通信部306が画像情報を受信する間隔である第2間隔は、同一となることが望ましい。しかしながら、第1通信部210と第2通信部306は無線通信によって通信を行うため、当該通信は外乱の影響を受けるおそれがある。また、上記のように、第1通信部210で用いられる第1クロックと、第2通信部306で用いられる第2クロックは、相違するおそれがある。従って、第1間隔と第2間隔は相違することが通常である。当該相違は、フレームの欠落や表示遅延の増加等の不具合の原因となる。
【0031】
第2処理部308は、受信した画像情報毎に処理を施すとともに、該処理を施す時刻に応じた処理時刻情報を生成する。処理は、例えば、復調または伸張である。具体的には、例えば、第2処理部308は、エンコードされた画像情報をデコードするデコーダであって、画像情報のデコードを完了させた時刻を表す処理時刻情報を生成する。第2処理部308が画像情報に処理を施すことにより、表示部400は、画像情報に基づいてフレーム画像を表示できる。
【0032】
なお、画像情報が処理を施されずに送信される場合、第2処理部308は省略されてもよい。この場合、処理時刻情報は、第2通信部が画像情報を受信した時刻を表す情報であってもよい。
【0033】
記憶部310は、ROMやRAM等の記憶素子やハードディスクドライブなどである。記憶部310は、第2制御部302によって実行されるプログラムなどを記憶する。
【0034】
また、記憶部310は、nフレーム目及びn+1フレーム目の画像情報のそれぞれ少なくとも一部を記憶する。そして、記憶部310は、第2通信部306がn+1フレーム目の画像情報を受信した時に、n-1フレーム目の画像情報をn+1フレーム目の画像情報に更新する。具体的には、例えば、まず、第2通信部306が1フレーム目の画像情報を受信した時に、記憶部310は、1フレーム目の画像情報を記憶する。次に、第2通信部306が2フレーム目の画像情報を受信した時に、記憶部310は、2フレーム目の画像情報を記憶する。さらに、第2通信部306が3フレーム目の画像情報を受信した時に、記憶部310は、1フレーム目の画像情報が記憶されている領域に、3フレーム目の画像情報を上書して記憶する。以降、第2通信部306がnフレーム目の画像情報を受信したときに、n-2フレーム目の画像情報が記憶されている領域に、nフレーム目の画像情報を上書して記憶する。これにより、記憶部310は2フレーム分の画像情報を記憶する。記憶部310は、nフレーム目の画像情報が書き換えられると同時に、n+1フレーム目の画像情報が表示部400に読み出されることによって、バッファとしての機能を果たす。
【0035】
表示部400は、表示クロックに従って、画像情報に基づいてフレーム画像を順次表示するとともに、フレーム画像の更新時刻に応じた時刻を表す表示時刻情報を生成する。具体的には、例えば、表示部400は、液晶表示装置や有機EL表示装置等の表示装置である。
【0036】
表示部400は、表示クロック生成部402と、パネル部404と、第3制御部406と、を有する。表示部400は、第2通信部306がn+1フレーム目の画像情報を受信した時に、記憶部310が記憶したnフレーム目のフレーム画像を表示する。
【0037】
表示クロック生成部402は、表示クロックを生成する。具体的には、例えば、表示クロック生成部402は、第2クロック及び第2制御部302が生成する制御量Cに基づいて、パネル部404が用いる表示クロックを生成する。
【0038】
パネル部404は、表示に必要な電子回路が形成されたガラス基板や樹脂基板である。パネル部404は、第3制御部406の指示に従って、記憶部310が記憶しているnフレーム目のフレーム画像を表示する。
【0039】
第3制御部406は、表示部400の各部の動作を制御するデバイスである。具体的には、例えば、第3制御部406は、第2制御部302が生成した制御量Cに基づいて、フレーム画像の更新周期を制御する。
【0040】
更新周期は、表示クロックの周波数または帰線期間が変更されることによって制御される。具体的には、更新周期を短くする場合、第3制御部406は、表示クロックの周波数を上げる、または、帰線期間が短くなるように制御する。一方、更新周期を長くする場合、第3制御部406は、表示クロックの周波数を下げる、または、帰線期間を長くするように制御する。
【0041】
続いて、第2制御部302による制御量Cの生成について説明する。
図2は、制御量Cの算出について説明するための図である。また、
図3は、表示時刻、処理完了時刻及び画像情報生成時刻の関係を示す図である。
図3に含まれる四角い枠に囲まれた文字はフレームの順番を表す。表示時刻は、各フレームが開始した時刻を表す。処理完了時刻は、第2処理部308が処理を完了した時刻を表す。映像生成時刻は、画像生成部206が画像情報を生成した時刻を表す。
【0042】
なお、
図3では、表示時刻は、各フレームが開始した時刻を表すが表示が完了した時刻や、表示が開始されてから所定の時間が経過した時刻を表してもよい。また、処理完了時刻は、処理が完了した時刻ではなく、処理を開始した時刻や、第2通信部306が画像情報の受信を完了した時刻であってもよい。
【0043】
なお、以下具体例として、記憶部310がn-1フレーム目及びnフレーム目のフレーム画像情報のそれぞれ少なくとも一部を記憶した状態であって、第2通信部306がn+1フレーム目の画像情報を受信している途上であるとして説明する。
【0044】
まず、第2制御部302は、第1間隔を算出する。具体的には、例えば、第2制御部302は、複数の画像情報にそれぞれ含まれる生成時刻情報に基づいて、第1間隔を算出する。第2制御部302は、nフレーム目の画像情報に含まれる生成時刻情報(PTS(n))が表す時刻から、n-1フレーム目の画像情報に含まれる生成時刻情報(PTS(n-1)が表す時刻を差し引く。第2制御部302は、当該差し引いた値を第1間隔(D_SrcTS)として取得する。
図3に示すように、第1間隔(D_SrcTS)は、あるフレームの画像情報が生成された時刻とその次のフレームの画像情報が生成された時刻との間隔である。
【0045】
次に、第2制御部302は、第2間隔を算出する。具体的には、例えば、第2制御部302は、複数の表示時刻情報に基づいて、第2間隔を算出する。第2制御部302は、nフレーム目の表示時刻情報(DispTS(n))が表す時刻から、n-1フレーム目の画像情報に含まれる生成時刻情報(DispTS(n-1))が表す時刻を差し引く。第2制御部302は、当該差し引いた値を第2間隔(D_DispTS)として取得する。
【0046】
表示時刻情報は、例えば、第2制御部302が表示部400から取得する垂直同期信号である。垂直同期信号は、1個のフレーム画像を表示する期間を周期とする信号であって、例えば、1周期に1個のパルスを含む信号である。第2制御部302は、nフレーム目の垂直同期信号を取得した時刻から、n-1フレーム目の垂直同期信号を取得した時刻を差し引くことで第2間隔(D_DispTS)を取得する。
図3に示すように、第2間隔(D_DispTS)は、nフレーム目の表示が開始された時刻と、n+1フレーム目の表示が開始された時刻と、の間隔である。
【0047】
そして、第2制御部302は、第1間隔から第2間隔を差し引いて係数F(D_SrcTS-DispTS)を算出する。係数Fは、画像情報が生成された時間間隔と、当該画像情報に基づいて実際に行われた表示の時間間隔とのずれを表す情報である。すなわち、係数Fは、周波数のずれを表す情報である。
【0048】
なお、第1間隔及び第2間隔を算出する時刻は、表示部400がフレーム画像を更新する時刻と同期していなくてもよい。また、第2制御部302は、1フレーム期間に、第1間隔及び第2間隔を複数回算出することが望ましい。具体的には、表示部400の理想的なフレーム更新周波数が120Hzである場合、表示部400がフレーム画像を更新する周期はおよそ8.33msである。これに対して、生成時刻情報は、例えば90kHzで生成される。この場合、第2制御部302は、90kHzで第1間隔及び第2間隔を算出してもよい。
【0049】
ここで、
図3に示すように、n番目のフレームとn+1番目のフレームの処理完了時刻の間隔(D_SrcTS+jitter)は、外乱等の影響による不定の成分(jitter)を含むことが通常である。表示部400は画像情報に基づいてフレーム画像を順次表示するため、処理完了時刻がフレーム毎に異なる場合、第2間隔も一定とはならない。
【0050】
そこで、第2制御部302は、第2間隔(D_DispTS)が所定の範囲に納まるように処理してもよい。具体的には、第2制御部302は、第2間隔(D_DispTS)が設定された下限値より小さい値である場合には、第2間隔(D_DispTS)を下限値とし、第2間隔(D_DispTS)が設定された上限値より大きい値である場合には、第2間隔(D_DispTS)を上限値としてもよい。例えば、表示部400の理想的なフレーム更新周波数が120Hzである場合、下限値は8.00ms、上限値は8.66msに設定される。
【0051】
また、第2制御部302は、第2間隔(D_DispTS)を平滑化する処理を行ってもよい。例えば、第2制御部302は、8.33msの期間に算出した第2間隔(D_DispTS)の移動平均を算出してもよい。
【0052】
次に、第2制御部302は、第3間隔(Raw_Ph)を算出する。具体的には、例えば、第2制御部302は、nフレーム目において、第2処理部308による処理が完了した時刻と表示時刻情報に基づいて、第3間隔を算出する。第2制御部302は、nフレーム目の表示時刻情報(DispTS(n))が表す時刻から、nフレーム目の処理が完了した時刻(DecTS(n))が表す時刻を差し引く。第2制御部302は、当該差し引いた値を第3間隔(Raw_Ph)として取得する。
【0053】
次に、第2制御部302は、第3間隔を平滑化する処理を行う。具体的には、例えば、第2制御部302は、演算によって、移動平均処理やローパスフィルタ処理(Phase=LPF(Raw_Ph))を行う。当該処理は、従来から知られている技術が適用されてよい。以降、平滑化された第3間隔(Raw_Ph)を、第3間隔(Phase)と表記する。
図3に示すように、第3間隔(Phase)は、n番目のフレームの処理が完了した時刻とn番目のフレームの画像情報に基づいてフレーム画像の表示が開始された時刻との間隔である。
【0054】
そして、第2制御部302は、処理が施された時刻からフレーム画像の表示が開始された時刻までに要する時間の目標値(Target)を、第3間隔(Phase)から差し引いて、係数P(Phase-Target)を算出する。目標値(Target)は、理想的な環境下において、処理が施された時刻からフレーム画像の表示が開始された時刻までに要する時間として設定された値である。すなわち、当該係数Pは、処理が施された時刻からフレーム画像の表示が開始された時刻までの、実際に要した時間と理想的な時間との差分を表す情報である。すなわち、係数Pは、位相のずれを表す情報である。
【0055】
ここで、外乱等が存在しない理想的な環境化では、第1間隔及び第2間隔は一致し、時間によって変化しない。また、第3間隔も一定である。そのため、第2処理部308がnフレーム目の画像情報に処理を施したあと、当該nフレーム目の画像情報が記憶部310に記憶され、表示部400による表示が開始されるまでの時間は一定である。この場合、係数Pは0となる。しかしながら、実際には、上記のように外乱等によって、処理が施された時刻からフレーム画像の表示が開始された時刻までに要する時間は変動する。そのため、第3間隔から、目標値(Target)を差し引いて算出された係数Pは0とはならないことが通常である。
【0056】
次に、第2制御部302は、第1間隔と第2間隔の差分の絶対値が第1の値より大きくなる時間が第1の時間以上続いた場合に、第1間隔及び第2間隔を用いて更新周期を制御する。また、第2制御部302は、第1間隔と第2間隔の差分の絶対値が第2の値より小さくなる時間が第2の時間以上続いた場合に、第1間隔と、第2間隔と、処理時刻情報と、表示時刻情報と、を用いて更新周期を制御する。すなわち、第2制御部302は、係数F及び係数Pの大きさに応じて、2つの状態に場合分けを行い、状態に応じて異なる方法でフレーム画像の更新周期を制御するための制御量Cを算出する。
【0057】
当該2つの状態について、
図4に示す状態遷移図を用いて説明する。初期状態は、係数Fのみによって制御が行われる第1状態である。係数Fの絶対値が第2の値(stable_threshold)より小さくなる時間が第2の時間(stable_time)以上続いた場合に、第1状態から第2状態に遷移する。第2状態は、係数F及び係数Pによって制御が行われる状態である。係数Fの絶対値が第1の値(instable_freq_threshold)より大きくなる時間が第1の時間(instable_time)以上続いた場合に、第2状態から第1状態に遷移する。
【0058】
第1状態は、画像情報が生成された時間間隔と、実際に当該画像情報に基づいて行われた表示の時間間隔とのずれが大きい状態である。従って、フレーム画像の更新周期を大きく変更する必要がある。具体的には、例えば、第2制御部302は、第1状態の場合、数1に従って、制御量Cを算出する。数1の関数f0は、係数Fの絶対値に比例した値を出力する関数である。制御量Cには、位相に関する成分Pは含まれない。
【0059】
【0060】
一方、第2状態は、画像情報が生成された時間間隔と、実際に当該画像情報に基づいて行われた表示の時間間隔とのずれが小さい状態である。従って、フレーム画像の更新周期を大きく変更する必要はない。具体的には、例えば、第2制御部302は、第2状態の場合、数2に従って、制御量Cを算出する。数2の関数f1は、係数Pの絶対値に比例した値を出力する関数である。
【0061】
【0062】
第2制御部302は、制御量Cを用いてフレーム画像の更新周期を制御する。具体的には、第2制御部302は、現在のフレーム画像の更新周期を、制御量Cだけ変化させる。すなわち、第2制御部302は、制御量Cが正の値であれば、フレーム画像の更新周期を長く(すなわちフレーム画像の更新周波数を小さく)する。一方、第2制御部302は、制御量Cが負の値であれば、フレーム画像の更新周期を短く(すなわちフレーム画像の更新周波数を大きく)する。
【0063】
第1状態は、上記ずれが大きい状態であり、位相を合わせる前に周波数を制御する必要がある状態である。そのため、第1状態では、数1に基づいて第2状態よりも大きい係数Fが算出される。従って、第1状態では第2状態よりもフレーム画像の更新周期は大きく変更される。一方、第2状態は上記ずれが小さい状態であり、位相を制御する必要がある状態である。従って、係数Pの成分が制御量Cに含まれることを表す数2に基づいて、係数Pが目標値(Target)に近づくようにフレーム画像の更新周期は制御される。
【0064】
なお、数2には係数Fの成分も含まれる。これにより、第2制御部302は、係数Pに基づいて位相がそろうようにフレーム画像の更新周期を制御するだけでなく、係数Fに基づいて周波数が大きくずれないようにすることができる。上記の制御を繰り返すことにより、係数F及び係数Pが小さくなるように制御される。
【0065】
なお、第2制御部302は、制御量Cを表示部400が認識できる形式に変換した上で表示部400に変換した信号を送信する。表示部400は、当該信号によって、表示クロックの周波数や、帰線期間の長さを変更することにより、フレーム画像の更新周期を変更する。以上により、第2制御部302は、第2間隔が第1間隔に近づくように、フレーム画像の更新周期を制御する。
【0066】
なお、本発明は上述の実施形態に限定されるものではない。また、上記の具体的な文字列や数値及び図面中の具体的な文字列や数値は例示であり、これらの文字列や数値には限定されない。
【0067】
例えば、第2制御部302は、係数Fを用いて表示クロックの周波数を制御し、係数Pを用いて帰線期間の長さを制御するようにしてもよい。係数Fは、画像情報が生成される周波数と、フレーム画像の更新周波数と、のずれが反映された情報である。一方、係数Pは、画像情報が生成される時刻と、フレーム画像の表示が開始された時刻と、のずれが反映された情報である。すなわち、係数Fは周波数のずれを表す情報であり、係数Pは位相のずれを表す情報である。そこで、第2制御部302は、周波数のずれを表す係数Fを用いて表示クロックの周波数を制御し、位相のずれを表す係数Pを用いて帰線期間の長さを制御してもよい。当該制御よって、よりフレーム欠落や表示遅延が増加する可能性を低減できる。