実施の形態1.
図1は、実施の形態1における映像監視システム101の概略図である。映像監視システム101では、防犯や防災などの用途で設置される監視カメラが撮像した映像を遠隔地に伝送して監視を行う。
映像監視システム101は、監視カメラ102、データ符号装置103、伝送路105、データ復号装置107、ユーザーインタフェース108、映像表示装置111及び音声出力装置112で構成される。
監視カメラ102は、防犯や防災などの用途で設置される撮像装置である。通信機能を備え、遠隔地に撮像映像を送信することができる。
データ符号装置103は、監視カメラ102に実装され、監視カメラ102が撮像した映像や音声などのメディア信号を符号処理して、ストリーム信号104として出力する装置である。
ストリーム信号104は、データ符号装置103が、例えばMPEG−2システム規格などの技術を用いて、上記メディア信号を符号処理した信号である。ストリーム信号104にはPS(Program Stream)とTS(Transport Stream)の場合がある。
伝送路105は、例えばイーサネット(登録商標)などの通信網である。データ符号装置103とデータ復号装置107の間で授受されるストリーム信号104の伝送を行う。
監視室106は、監視カメラ102が撮像した映像を収集し、監視映像システム101の使用者が監視する場所である。監視室106には、データ復号装置107、ユーザーインタフェース108、映像表示装置111及び音声出力装置112が設置されている。
データ復号装置107は、データ符号装置103が符号処理したストリーム信号104を復号処理し、再び映像や音声などのメディア信号として映像表示装置111及び音声出力装置112に出力する装置である。
ユーザーインタフェース108は、使用者がデータ復号装置107の設定変更等を行う入力装置である。ユーザーインタフェース108は、データ復号装置107の本体に直接設けられるものであっても良いし、例えばイーサネットやRS−232Cなどによってデータ復号装置107に接続されるものでも良い。
映像信号109は、データ復号装置107がストリーム信号104を復号処理して得られた、データ種別が映像であるものを示す。
音声信号110は、データ復号装置107がストリーム信号104を復号処理して得られた、データ種別が音声であるものを示す。
映像表示装置111は、データ復号装置107が復号処理した映像信号109を再生表示させる装置である。
音声出力装置112は、データ復号装置107が復号処理した音声信号110を音声出力させる装置である。
図2は、データ符号装置103の構成を示すブロック図である。
データ符号装置103は、メディア信号出力部201、システムクロック生成部202、映像符号部203、音声符号部204、データ多重部205及びデータ送信部206で構成される。
メディア信号出力部201は、メディア信号のうち、映像信号207を映像符号部203に、音声信号208を音声符号部204に出力する機能部である。メディア信号は、監視カメラ102が撮像した映像以外に、例えば外部の記憶媒体から得られるメディア情報等であっても良い。
システムクロック生成部202は、映像符号部203及び音声符号部204の符号処理に用いるシステムクロック信号209を生成する機能部である。
映像符号部203は、システムクロック生成部202からのシステムクロック信号209を用いて、メディア信号出力部201からの映像信号207を符号処理する機能部である。符号処理された映像信号207は、映像ストリーム信号210として出力される。
映像符号部204は、システムクロック生成部202からのシステムクロック信号209を用いて、メディア信号出力部201からの音声信号208を符号処理する機能部である。符号処理された音声信号208は、音声ストリーム信号211として出力される。
データ多重部205は、映像符号部203から入力される映像ストリーム信号210と、音声符号部204から入力される音声ストリーム信号211とを多重化し、ストリーム信号104を出力する機能部である。
データ送信部206は、データ多重部205が多重化したストリーム信号104を、データ復号装置107に送信する機能部である。
図3は、データ復号装置の構成を示すブロック図である。
データ復号装置107は、データ受信部301、基準時刻選択部302、システムクロック生成部305、データ分離部309、映像復号部310、音声復号部311、データ管理部312及びメモリ管理部313で構成される。
データ受信部301は、データ符号装置103から送信されたストリーム信号104を受信する機能部である。ストリーム信号104は、複数の種別に区別され符合処理されたデータと、そのデータの種別を区別するデータ種別情報314と、1以上のデータの種別と対応した基準時刻情報315とを含む。基準時刻情報315は、データ符号装置103のシステムクロック信号209と同期をとるための同期情報である。ストリーム信号104のフレーム構造については、後に図4又は図5で説明する。
基準時刻選択部302は、データ受信部301が受信するストリーム信号104から、データ種別情報314で区別して基準時刻情報315を抽出し、システムクロック生成部305に出力する基準時刻情報315を選択する機能部である。基準時刻選択部302は、抽出部303及び選択部304で構成される。
抽出部303は、データ受信部301より入力されたストリーム信号104からデータ種別情報314及び基準時刻情報315を抽出する機能部である。上述の通り、データ符号装置103が送信するストリーム信号104には、PSとTSの場合がある。PS又はTSにおけるデータ種別情報314及び基準時刻情報315については、後に図4又は図5を用いて説明する。
選択部304は、抽出部303が抽出したデータ種別情報314及び基準時刻情報315を入力として、データ種別情報314に対応した基準時刻情報315における時刻の変動量が、所定の閾値以下となるかどうかを判定し、閾値以下となる基準時刻情報315を選択する機能部である。選択した基準時刻情報315は、システムクロック信号317の生成に使用される使用時刻情報316として、システムクロック生成部305に出力される。時刻の変動量が閾値以下となる基準時刻情報315が複数ある場合には、所定の判断基準に従って1つだけ選択する。所定の判断基準については、後の図9で説明する。
また、選択部304は、選択した基準時刻情報315に対応するデータ種別情報314を、後述するメモリM4に保持しておき、所定の更新条件により新たな基準時刻情報315を選択するまでの間、メモリM4に保持したデータ種別情報314に対応する基準時刻情報315を固定的に出力し続ける。更新条件については、後の図8で説明する。
システムクロック生成部305は、基準時刻選択部302が選択した使用時刻情報316を入力とし、システムクロック信号317を生成するシステムクロック生成回路である。システムクロック生成部305は、クロック再生部306、カウンタ部307及び差分部308で構成される。
クロック再生部306は、入力した使用時刻情報316に基づき、図示しないH/W又はS/Wの処理によっておよそ27MHzの周波数を持つクロック信号を再生し、システムクロック信号317として出力するクロック発振回路である。
また、クロック再生部306は、差分部308から入力した差分情報319に基づき、発振周波数を高める又は低める変更をすることが可能である。クロック再生部306は、差分情報319に追随して再生するクロック信号の周波数を変更することで、データ符号装置103のシステムクロック信号209と同期のとれたシステムクロック信号317を生成することができる。
カウンタ部307は、クロック再生部306のシステムクロック信号317を用いて計数し、基準時刻選択部302から入力される使用時刻情報316に加算した経過時刻情報318を出力する機能部である。カウンタ部307は、使用時刻情報316が入力される度に計数を開始し、次の使用時刻情報316が入力されると同時に、経過時刻情報318を算出して差分部308に対し出力する。
差分部308は、基準時刻選択部302より入力した使用時刻情報316と、使用時刻情報316の入力と同時にカウンタ部307より入力した経過時刻情報318との差分から、差分情報319を算出する機能部である。算出した差分情報319はクロック再生部306に対し出力される。クロック再生部306は、差分情報319の内容に応じて、入力した使用時刻情報316に対し経過時刻情報318が進んでいる場合には発振周波数を低め、入力した使用時刻情報316に対し経過時刻情報318が遅れている場合には発振周波数を高める。
データ分離部309は、データ受信部301が受信したストリーム信号104を、映像ストリーム信号320と音声ストリーム信号321とに分離する機能部である。
映像復号部310は、映像ストリーム信号320を復号処理し、映像表示装置111に対し映像信号109を出力する機能部である。上述の通り、復号処理に用いるシステムクロック信号317は、データ符号装置103のシステムクロック信号209との同期が取れている。
音声復号部311は、音声ストリーム信号321を復号処理し、音声出力装置112に対し音声信号110を出力する機能部である。上述の通り、復号処理に用いるシステムクロック信号317は、データ符号装置103のシステムクロック信号209との同期が取れている。
データ管理部312は、選択部304が基準時刻情報315を選択する過程で参照する各種設定情報を保持し、管理する機能部である。各種設定情報とは、例えば、後の図8又は図9で説明する、基準時刻情報315の時刻の変動量を判定するための閾値や、処理の実行条件などである。使用者は、ユーザーインタフェース108を介してデータ管理部312との間で情報の入出力を行うことで、各種設定情報を変更することができる。
メモリ管理部313は、選択部304が基準時刻情報315を選択する過程での処理情報を記憶させたメモリを管理する機能部である。メモリには、データ種別情報314が映像であるときの処理情報を扱うメモリM1、音声であるときの処理情報を扱うメモリM2、映像又は音声以外であるときの処理情報を扱うメモリM3、及び選択部304が選択した基準時刻情報314と対応したデータ種別情報314を記憶させるメモリM4がある。
図4は、ストリーム信号104がPSである場合のフレーム構造を示す図である。PSは、MPEG−2システム規格のフレーム形式の1つであり、イーサネットフレーム401で伝送されるUDP又はRTPフレーム402のペイロードに、PSパックパケット403として含まれる。また、PSの基準時刻情報315であるSCRは、PSパックヘッダ404に付与される、SCR406で示される情報であり、データ種別情報314であるStream IDは、PES(Packetized Elementary Stream)パケット405に付与される、Stream_ID407で示される情報である。
尚、ストリーム信号104がPSである場合には、PESパケット405にデータ種別情報314が異なる複数の符号データが混在することがある。そのようなストリーム信号104では、1つのSCR406に、データ種別情報314が異なる複数の符号データが対応するため、抽出部303では、複数の異なるデータ種別情報314に、共通の基準時刻情報315を対応させて抽出する。
図5は、ストリーム信号104がTSである場合のフレーム構造を示す図である。TSは、MPEG−2システム規格のフレーム形式の1つであり、イーサネットフレーム501で伝送されるUDP又はRTPフレーム502のペイロードに、TSパケット503として含まれる。また、TSのデータ種別情報314であるPIDは、TSフレームヘッダ504に付与される、PID506で示される情報であり、基準時刻情報315であるPCRは、AF(Adaptation Field)505に付与される、PCR507で示される情報である。
ここで、TSでは、複数のプログラムに対応したストリーム信号を並行して伝送することが可能であるため、データ種別情報314であるPID506は、プログラム及びデータ種別情報314を区別する情報となる。本発明のデータ復号装置107においては、ストリーム信号104がTSである場合に、データ種別情報314のPID506から、先ずプログラムを区別した上で、各プログラムにおいて映像や音声等のデータ種別情報314を区別し、それに対応した基準時刻情報315の判定と選択とを行う。
図6(a)〜(c)は、一部のストリーム信号104を例にとり、ストリーム信号104に含まれる基準時刻情報315の差分を示す図である。各図の先頭行は列のタイトルであり、左から番号、基準時刻情報、差分及びデータ種別と続く。番号は、ストリーム信号104の並び順を示す番号である。基準時刻情報は、ストリーム信号104に含まれる基準時刻情報315である。差分は、基準時刻情報315の差分であり、1つ前のストリーム信号104の基準時刻情報315との差分を示す。データ種別は、ストリーム信号104に含まれるデータ種別情報314である。
図6(a)は、連続したストリーム信号104に含まれる基準時刻情報315の差分を示す図である。番号4及び番号5に対応するストリーム信号104の基準時刻情報315では、前の基準時刻情報315との差分の変動が大きいことが分かる。本発明では、このように基準時刻情報315の差分に大きな変動を含むものを、連続性がない基準時刻情報315と呼び、それとは反対に、基準時刻情報315の差分に大きな変動を含まないものを、連続性がある基準時刻情報315と呼ぶ。
図6(b)は、図6(a)からデータ種別情報314が映像であるストリーム信号104を抽出した図である。番号4に対応するストリーム信号104の基準時刻情報315において差分の変動が大きくなっており、データ種別情報314が映像であるストリーム信号104の基準時刻情報315は、この間において連続性がないと言える。
図6(c)は、図6(a)からデータ種別情報314が音声であるストリーム信号104を抽出した図である。番号1〜6に対応するストリーム信号104の基準時刻情報315において差分の変動が殆んどなく、データ種別情報314が音声であるストリーム信号104の基準時刻情報315は、この間において連続性があると言える。
図7(a)〜(c)は、ストリーム信号104を、基準時刻情報315のカウンタ値を示すTc軸にそって並べた模式図である。
図7(a)は、連続したストリーム信号104をTc軸にそって並べた模式図である。図7(a)は図6(a)のストリーム信号104に対応しており、基準時刻情報701及び702並びに基準時刻情報702及び703の間で、連続性がないことが分かる。この間に、データ種別情報314は、映像、音声、映像、と変化している。
図7(b)は、図7(a)からデータ種別情報314が映像であるストリーム信号104を抽出し、Tc軸にそって並べた模式図である。図7(b)は図6(b)のストリーム信号104に対応しており、基準時刻情報701及び703の間で、連続性がないことが分かる。図7(a)と比較すると、データ種別情報314が音声であるストリーム信号104を挟んでおり、このときに、基準時刻情報315の差分に大きな変動が生じている。
図7(c)は、図7(a)からデータ種別情報314が音声であるストリーム信号104を抽出し、Tc軸にそって並べた模式図である。図7(c)は図6(c)のストリーム信号104に対応しており、一連の基準時刻情報315において連続性があると言える。
図6及び図7の例からは、データ符号装置103において、音声信号208の符号処理は、映像信号207の符号処理に対する割り込みで行っており、このため映像信号207の符号処理に遅延が生じていることが考えられる。そして、この処理の遅延に伴い、映像ストリーム信号210に付与される基準時刻情報315においても時刻のずれが生じている。このような連続性がない基準時刻情報315をシステムクロック生成部305に入力すると、生成されるシステムクロック信号317に大きな変動が生じてしまう。
しかしながら、データ符号装置103の側での処理遅延等によって、一部の基準時刻情報315に連続性がないストリーム信号104であっても、基準時刻情報315の付与を定めたMPEG−2システム規格に適合していることから、データ復号装置107の側では、このようなストリーム信号104を受信してシステムクロック信号317を生成する必要がある。
そこで、上述の例では、ストリーム信号104から、音声のデータ種別情報314に対応した基準時刻情報315のみを抽出して、システムクロック生成部305に入力することで、時刻の変動が小さい安定したシステムクロック信号317を生成することができる。
本発明は、ストリーム信号104に含まれる基準時刻情報315を、データ種別情報314で区別して連続性の有無を判定し、連続性がある基準時刻情報315のみを選択できるようにするものである。
図8〜図10は、選択部304が、基準時刻情報315を選択する処理を示すフローチャート図である。
図8は、選択部304が、所定の更新条件に従って基準時刻情報315を選択するフローチャート図である。
所定の更新条件とは、選択部304が、基準時刻情報315を新たに選択するかどうかを判断する条件であって、データ復号装置107に予め設定されるものである。更新条件としては、例えば所定周期の経過や、映像復号部310及び音声復号部311での復号処理におけるエラー発生頻度の所定基準の超過などが考えられる。
処理S801は、データ復号装置107が動作中の間、処理S802及び処理S803を永久に繰り返すループ処理である。ループ処理の始端に入ると、処理S802に進む。
処理S802では、更新条件を満たすかどうかを判定する。更新条件を満たす場合には、処理S803に進む。更新条件を満たさない場合には、処理S803を行わずに処理S801のループ処理の終端に進み、再びループ処理の始端に戻る。
処理S803では、選択部304に入力されるデータ種別情報314及び基準時刻情報315に基づいて、基準時刻情報315の選択を行う。処理S803の詳細は、図9で説明する。
図9は、選択部304が、データ種別情報314に対応した基準時刻情報315を選択するフローチャート図である。
図9の処理S901〜処理S928は、図8の処理S803に対応している。
処理S901では、データ種別情報314に対応したインデックス値のi、j及びkを0に初期化する。インデックス値i,j及びkはいずれも0以上の整数である。データ種別情報314が映像に対応するインデックス値をi、音声に対応するインデックス値をj、映像又は音声以外に対応するインデックス値をkとし、これらのインデックス値を用いて処理やデータを区別する。例えば、データ種別情報314が映像である場合は、基準時刻情報315は、インデックス値のiを用いて基準時刻情報315(i)と表す。同じ要領でiが1のときは、基準時刻情報315(1)と表す。その後、処理S902に進む。
処理S902は、繰り返し条件付きのループ処理である。ループの始端にある判定終了条件を満たすまでの間、ループの終端に到達するとループの始端に戻り、処理S903〜処理S924を繰り返し行う。また、ループの始端に進んだ時点で、判定終了条件を満たしていれば、処理S925に進む。
ここで、判定終了条件とは、基準時刻情報315の連続性有無の判定を終了するかどうかを判断する条件である。判定終了条件としては、例えば所定回数又は所定時間に達した、若しくは使用者が停止操作を行った、などが考えられる。
処理S903では、選択部304は、抽出部303が抽出したデータ種別情報314及び基準時刻情報315があれば入力する。その後、処理S904に進む。
処理S904では、データ種別情報314が映像であるかどうかを判定する。映像であれば処理S905に進み、映像でなければ処理S912に進む。
処理S905では、基準時刻情報315(i)をメモリM1に格納する。基準時刻情報315(i)を格納したメモリM1の領域をメモリM1(i)と表す。その後、処理S906に進む。
処理S906では、インデックス値iに1を加算する。その後、処理S907に進む。
処理S907では、インデックス値iが2に満たないかどうかを判定する。2に満たない場合には処理S903に進み、2以上となる場合には処理S908に進む。
処理S908は、映像、音声、又は映像並びに音声以外のデータ種別情報314に共通の処理であり、基準時刻情報315の時刻の変動を数値化した第2差分を算出し出力する。データ種別情報314が映像であるときの第2差分を第2差分(i)と表す。処理S908の処理については、後の図10で説明する。
処理S909では、第2差分(i)が閾値T1以下であるかどうかを判定する。閾値T1以下である場合には処理S910に進み、閾値T1より大きい場合には処理S911に進む。ここでの閾値T1は、データ種別情報314が映像である基準時刻情報315の連続性を評価する閾値として、予め設定される値である。第2差分(i)が閾値T1以下となれば、第2差分(i)の算出元である基準時刻情報315(i)〜(i−2)には連続性があると判断する。また、第2差分(i)が閾値T1以下とならなければ、第2差分(i)の算出元である基準時刻情報315(i)〜(i−2)には連続性がないと判断する。
処理S910では、処理S909で行った判定結果を、メモリM1に記憶される判定データJ1に書き込む。第2差分(i)に対応する判定データJ1を判定データJ1(i)と表す。処理S909で、第2差分(i)は閾値T1以下となったため、判定データJ1(i)にOKを書き込む。その後、処理S902のループの始端に戻り、判定終了条件を満たす場合には処理S925に進む。判定終了条件を満たさない場合には処理S903に進む。
処理S911では、処理S909で、第2差分(i)は閾値T1を超過したため、判定データJ1(i)にNGを書き込む。その後、処理S902のループの始端に戻り、判定終了条件を満たす場合には処理S925に進む。判定終了条件を満たさない場合には処理S903に進む。
処理S912から処理S918までの処理は、処理S904から処理S911までの処理と同様であり、データ種別情報314を映像から音声に、インデックス値をiからjに、メモリM1をメモリM2に、閾値T1を閾値T2に、判定データJ1を判定データJ2に、置き換えたものである。判定データJ2は、メモリM2に記憶されるデータである。
処理S919から処理S924までの処理は、処理S904から処理S911までの処理と同様であり、データ種別情報314を映像から映像又は音声以外に、インデックス値をiからkに、メモリM1をメモリM3に、閾値T1を閾値T3に、判定データJ1を判定データJ3に、置き換えたものである。判定データJ3は、メモリM3に記憶されるデータである。
処理S925では、処理S902のループ処理での一連の判定結果に基づき、連続性があると判断する基準時刻情報315のうちから1つを選択する。連続性があると判断する基準時刻情報315とは、例えば、あるデータ種別情報314について、処理S902のループ処理が終了した時点で、判定データの内容が全てOKである、或いは、判定データの内容の99%以上がOKである基準時刻情報315を指す。
また、処理S925において、複数の基準時刻情報315から1つを選択するための判断基準としては、例えば以下の判断基準(a)〜(c)が考えられる。
判断基準(a)では、予めデータ種別情報314に優先順位を設定し、優先順位の高いデータ種別情報314に対応する基準時刻情報315を選択する。
判断基準(b)では、処理S902のループ処理と並行してデータ種別情報314ごとに基準時刻情報315の受信頻度を算出し、処理S925の時点で最も受信頻度の高いデータ種別情報314に対応する基準時刻情報315を選択する。
判断基準(c)では、処理S902のループ処理と並行してデータ種別情報314ごとに基準時刻情報315の第2差分の平均値を算出し、処理S925の時点で第2差分の平均値が最も小さくなるデータ種別情報314に対応する基準時刻情報315を選択する。
処理S925の判断基準には、上述の判断基準(a)〜(c)以外のものを適用しても良い。更に、判断基準は1つでなくとも、重み付けを行った複数の判断基準を合わせたものを適用しても良い。
選択した基準時刻情報315に対応するデータ種別情報314は、メモリM4に記録し保持しておく。その後、処理S926に進む。
処理S926では、処理S925で基準時刻情報315が1つ選択されたかどうかを判定する。選択された場合は処理S927に進み、選択されなかった場合は処理S928に進む。
処理S927では、処理S925で選択した基準時刻情報315を、システムクロック信号317の生成に使用する、使用時刻情報316に指定する。その後、処理を終了する。
処理S928では、処理S902のループ処理での一連の判定結果から、いずれのデータ種別情報314に対応する基準時刻情報315においても連続性がないと判断したため、受信したストリーム信号104に含まれる基準時刻情報315を使用してシステムクロック信号317を生成しても、適正に復号処理が行えないとして使用者に通知する。その後、処理を終了する。
図10は、基準時刻情報315の第2差分を出力する共通処理を示すフローチャート図である。
図10の処理S1001〜処理S1010は、図9の処理S908に対応しており、図10のインデックス値xには、図9の処理S908に進んだ時点でのインデックス値i、j又はkが引き渡される。
処理S1001では、xがi、j又はkのいずれとなるかを判定する。xがiであれば処理S1002に進み、jであれば処理S1005に進み、kであれば処理S1008に進む。
処理S1002では、連続する基準時刻情報315が記憶された、メモリM1(i−1)とメモリM1(i−2)との差分である第1差分(i−1)を算出する。その後、処理S1003に進む。
処理S1003では、連続する基準時刻情報315が記憶された、メモリM1(i)とメモリM1(i−1)との差分である第1差分(i)を算出する。その後、処理S1004に進む。
処理S1004では、第1差分(i)と第1差分(i−1)との差分である第2差分(i)を算出する。ここで、第1差分(i)と第1差分(i−1)の大小は決まらないため、第1差分(i)と第1差分(i−1)との差分の絶対値を第2差分(i)とする。その後、処理を終了する。
図10のフローチャートで算出した第2差分(i)は、図9の処理S908の出力となる。
処理S1005〜処理S1007は、処理S1002〜処理S1004でのiをjに、メモリM1をメモリM2に、置き換えたものである。
処理S1008〜処理S1010は、処理S1002〜処理S1004でのiをkに、メモリM1をメモリM3に、置き換えたものである。
選択部304は、図8〜10のフローチャートを実行する傍らで、新たに選択する基準時刻情報315が決まるまでの間、メモリM4に保持したデータ種別情報314に対応する基準時刻情報315を固定的に出力する。
また、図8〜9にある、処理S802の更新条件、処理S902の判定終了条件、処理S909の閾値T1、処理S916の閾値T2、処理S922の閾値T3及び処理S925の判断基準は、データ管理部312に保持されており、ユーザーインタフェース108を介して、使用者が設定を変更できるものとする。
実施の形態1によれば、受信したストリーム信号104からデータ種別情報314と対応して基準時刻情報315を抽出し、抽出した基準時刻情報315を基にシステムクロック信号317を生成する傍らで、データ種別情報315と対応した基準時刻情報314に基づいて、符号処理でのシステムクロック信号209との同期の精度を示す時刻の変動量を評価し、変動量が所定閾値以下となる基準時刻情報314を選択することで、精度高く同期のとれるシステムクロック信号317を復号処理に用いることが可能となる。その結果として、復号処理における復号データの品質劣化を抑制する効果が得られる。
また、実施の形態1によれば、基準時刻情報315の時刻の変動量を、第2差分として数値化することで、予め設定する閾値と比較し評価することが可能となる。その結果として、基準時刻情報315の時刻の変動を定量的に評価し判定できる効果が得られる。
また、実施の形態1によれば、基準時刻情報315における時刻の変動の評価を、所定回数の判定結果を以って行うことが可能となる。その結果として、判定の終了条件に、受信するストリーム信号104のフレーム数を指定できる効果が得られる。
また、実施の形態1によれば、基準時刻情報315における時刻の変動の評価を、所定時間内の判定結果を以って行うことが可能となる。その結果として、判定の終了条件に、データ復号装置107の動作時間を指定できる効果が得られる。
また、実施の形態1によれば、時刻の変動量が閾値以下となった基準時刻情報315が複数ある場合に、データ種別情報314の優先順位に従って選択することが可能となる。その結果として、同期させたいデータ種別情報314に対応した基準時刻情報315を優先的に選択できる効果が得られる。
また、実施の形態1によれば、基準時刻情報315の時刻の変動量の平均値を以って評価することが可能となる。その結果として、時刻の変動量が閾値を超えることがあっても、総じて時刻の変動が小さく精度の高い基準時刻情報315を選択できる効果が得られる。
また、実施の形態1によれば、時刻の変動量が閾値以下となった基準時刻情報315が複数ある場合に、受信周期が短いものを優先的に選択することが可能となる。その結果として、受信周期が短い基準時刻情報315を使用することで、データ符号装置103との同期を短い周期で合わせられる効果が得られる。
また、実施の形態1によれば、周期的に基準時刻情報315を評価し、時刻の変動量が所定閾値以下のものを選択することが可能となる。その結果として、一度選択した基準時刻情報315の精度が低下して時刻の変動が大きくなった場合に、他のデータ種別情報314に対応した基準時刻情報315を評価して、時刻の変動が小さいものがあれば選択を切り替えられる効果が得られる。
また、実施の形態1によれば、データ種別情報314としてStream IDを利用し、基準時刻情報315としてSCRを利用することが可能となる。その結果として、ストリーム信号104がPSであっても選択部304はシステムクロック信号317の生成に使用する基準時刻情報315を選択できる効果が得られる。
また、実施の形態1によれば、データ種別情報314としてPIDを利用し、基準時刻情報315としてPCRを利用することが可能となる。その結果として、ストリーム信号104がTSであっても選択部304はシステムクロック信号317の生成に使用する基準時刻情報315を選択できる効果が得られる。
また、実施の形態1によれば、差分部308が算出する、基準時刻情報315と経過時刻情報318との差分情報319に応じて、システムクロック信号317を生成するクロック再生部306の発振周波数を変更することが可能となる。その結果として、基準時刻情報315に生じた時刻の変動をシステムクロック信号317の生成に反映できる効果が得られる。
実施の形態2.
実施の形態1では、受信したストリーム信号104よりデータ種別情報314及び基準時刻情報315を抽出し、データ種別情報314に対応した基準時刻情報315の時刻の変動量が所定閾値以下となるかどうかを判定し、閾値以下となったものから1つ選択していた。実施の形態2では、データ種別情報314と対応した基準時刻情報315を基に複数のシステムクロック信号1108〜1110を生成し、複数のシステムクロック信号1108〜1110のうち、クロック周波数の変動量が所定閾値以下のものを選択する。システムクロック信号1108〜1110は、データ符号装置103のシステムクロック信号209と同期をとるための同期情報である。
図11は、データ復号装置107の構成を示すブロック図である。図3の構成と異なる機能部は、抽出部1101〜1103及び選択部1104である。また、データ復号装置107は、抽出部1101〜1103と同数のシステムクロック生成部305を備えている。
抽出部1101〜1103は、データ受信部301より入力されたストリーム信号104からデータ種別情報314及び基準時刻情報315を抽出する機能部である。ここで、抽出部1101はデータ種別情報314が映像である基準時刻情報315を抽出し、抽出部1102はデータ種別情報314が音声である基準時刻情報315を抽出し、抽出部1103はデータ種別情報314が映像又は音声以外である基準時刻情報315を抽出する。抽出部1101〜1103が抽出した基準時刻情報315は、それぞれの抽出部1101〜1103と対応するシステムクロック生成部305に対し出力される。そのため、図11では、抽出部1101〜1103の個数に合わせてシステムクロック生成部305の個数も3となる。尚、抽出部1101〜1103及びシステムクロック生成部305の個数は3以外であっても良く、基準時刻情報315を抽出するのに必要な個数を備えることが可能である。
選択部1104は、それぞれのシステムクロック生成部305が生成したシステムクロック信号1108〜1110のうち1つを選択する機能部である。選択部1104が選択したシステムクロック信号1108〜1110は、使用システムクロック信号1111として出力される。また、選択部1104は、システムクロック信号1108〜1110を区別して入力するように、システムクロック信号1108〜1110と対応するクロック入力部C1〜C3を備えている。例えばデータ種別情報314が映像である基準時刻情報315から生成されたシステムクロック信号1108はクロック入力部C1に入力され、データ種別情報314が音声である基準時刻情報315から生成されたシステムクロック信号1109はクロック入力部C2に入力され、データ種別情報314が映像又は音声以外である基準時刻情報315から生成されたシステムクロック信号1110はクロック入力部C3に入力されることで、システムクロック信号1108〜1110を区別できる。
また、メモリ管理部313は、実施の形態1と同様に、選択部1104がシステムクロック信号1108〜1110を選択する過程での処理情報を記憶させたメモリを管理する機能部である。メモリには、システムクロック信号1108に関わる処理情報を扱うメモリM1、システムクロック信号1109に関わる処理情報を扱うメモリM2、システムクロック信号1110に関わる処理情報を扱うメモリM3、及びシステムクロック信号1108〜1110のうち選択部1104が選択したものと対応するクロック入力部C1〜C3のいずれかを記憶させるメモリM4がある。
図12は、選択部1104が、複数のシステムクロック信号1108〜1110より1つを選択するフローチャート図である。
図12のフローチャートの構成は、実施の形態1の図9のフローチャートと対応している。また、図12のフローチャートは、実施の形態1の図9のフローチャートと同様に、図8のフローチャートに示す所定の更新条件に従って、処理S803と同様のタイミングで実行される。
処理S1201は、図9の処理S901に対応する。ここでのインデックス値i,j及びkはそれぞれ、データ種別情報314が映像,音声及び映像又は音声以外の基準時刻情報315を基に生成された、システムクロック信号1108,1109及び1110に対応する。その後、処理S1202に進む。
処理S1202は、図9の処理S902に対応する。ここでの判定終了条件とは、システムクロック信号1108〜1110のクロック周波数の変動についての判定を終了するかどうかを判断する条件である。その後、処理S1203に進む。
処理S1203では、選択部1104は、システムクロック生成部305からシステムクロック信号1108〜1110を入力すると同時に、システムクロック信号1108〜1110と対応したクロック入力部C1〜C3の情報を得る。その後、処理S1204に進む。
処理S1204では、処理S1203で入力があったのはクロック入力部C1であるかどうかを判定する。クロック入力部C1であれば処理S1205に進み、クロック入力部C1でなければ処理S1212に進む。
処理S1205では、クロック入力部C1より入力されたシステムクロック信号1108のクロック周波数をメモリM1に格納する。図9のフローチャートと同様に、インデックス値iに対応するクロック周波数をクロック周波数(i)、メモリM1をメモリM1(i)と表す。その後、処理S1206に進む。
処理S1206及び処理S1207は、図9の処理S906及び処理S907と同様である。その後、処理S1208に進む。
処理S1208では、メモリM1(i)とメモリM1(i−1)の差分の絶対値である、システムクロック信号1108のクロック周波数変動量(i)を算出する。その後、処理S1209に進む。
処理S1209では、算出したクロック周波数変動量(i)が閾値T1以下であるかどうかを判定する。閾値T1以下である場合には処理S1210に進み、閾値T1より大きい場合には処理S1211に進む。ここでの閾値T1は、図9のフローチャートと同様に、データ種別情報314が映像であるシステムクロック信号1108のクロック周波数の変動量を評価する閾値として、予め設定される値である。
処理S1210及び処理S1211は、図9の処理S910及び処理S911と同様である。その後、処理S1202のループの始端に戻り、判定終了条件を満たす場合には処理S1226に進む。判定終了条件を満たさない場合には処理S1203に進む。
処理S1212から処理S1219までの処理は、処理S1204から処理S1211までの処理と同様であり、データ種別情報314を映像から音声に、インデックス値をiからjに、メモリM1をメモリM2に、閾値T1を閾値T2に、判定データJ1を判定データJ2に、置き換えたものである。判定データJ2は、メモリM2に記憶されるデータである。
処理S1220から処理S1225までの処理は、処理S1205から処理S1211までの処理と同様であり、データ種別情報314を映像から映像又は音声以外に、インデックス値をiからkに、メモリM1をメモリM3に、閾値T1を閾値T3に、判定データJ1を判定データJ3に、置き換えたものである。判定データJ3は、メモリM3に記憶されるデータである。
処理S1226では、処理S1202のループ処理での一連の判定結果に基づき、システムクロック信号1108〜1110のうちからクロック周波数の変動が僅かであると判断できるものを1つ選択する。クロック周波数の変動が僅かであると判断できるシステムクロック信号1108〜1110とは、例えば、処理S1202のループ処理が終了した時点で、判定データの内容が全てOKである、或いは、判定データの内容の99%以上がOKであるものを指す。また、システムクロック信号1108〜1110から1つを選択するための判断基準については、図9の処理S925と同様のものが考えられる。
また、処理S1226では、選択したシステムクロック信号1108〜1110と対応するクロック入力部C1〜C3の情報は、メモリM4に記録し保持しておく。これにより、図9の処理S925で保持したデータ種別情報314の代わりにクロック入力部C1〜C3の情報を用いて、システムクロック信号1108〜1110を区別できる。その後、処理S1227に進む。
処理S1227では、処理S1226でシステムクロック信号1108〜1110から1つ選択されたかどうかを判定する。選択された場合は処理S1228に進み、選択されなかった場合は処理S1229に進む。
処理S1228では、処理S1226で選択したシステムクロック信号1108〜1110のうちの1つを、使用システムクロック信号1111に指定する。その後、処理を終了する。
処理S1229では、処理S1202での一連の判定結果から、いずれのデータ種別情報314に対応するシステムクロック信号1108〜1110において、クロック周波数の変動が僅かではないと判断したため、受信したストリーム信号104に含まれる基準時刻情報315を基にシステムクロック信号1108〜1110を生成しても、適正に復号処理が行えないとして使用者に通知する。その後、処理を終了する。
また、図12にある、処理S1202の判定終了条件、処理S1209の閾値T1、処理S1217の閾値T2、処理S1224の閾値T3及び処理S1226の判断基準は、データ管理部312に保持されており、ユーザーインタフェース108を介して、使用者が設定を変更できるものとする。
実施の形態2によれば、選択部1104が、データ種別情報314と対応したシステムクロック信号1108〜1110のうち、クロック周波数の変動量が所定閾値以下となるものを選択することが可能となる。その結果として、実施の形態1と比べて、復号処理に入力間近の信号における精度を評価でき、より精度の良いシステムクロック信号を復号処理に使用できる効果が得られる。
また、実施の形態2によれば、システムクロック信号1108〜1110のクロック周波数の差分である変動量を算出し数値化することで、予め設定する閾値と比較し評価することが可能となる。その結果として、システムクロック信号1108〜1110のクロック周波数の変動を定量的に評価し判定できる効果が得られる。
また、実施の形態2によれば、選択部1104が、既に生成したシステムクロック信号1108〜1110より選択するため、復号処理に使用システムクロック信号1111を引き込むまでに要する時間を、実施の形態1と比べて短縮できる効果が得られる。
実施の形態3.
実施の形態1又は実施の形態2では、データ復号装置107の選択部304又は選択部1104が、データ種別情報314と対応した同期情報である、基準時刻情報315又はシステムクロック信号1108〜1110より算出される変動量が所定閾値以下となるかどうかを判定し、閾値以下となったものから1つ選択していた。実施の形態3では、変動量が閾値以下と判定された同期情報の中から、使用者がデータ種別情報314を指定し、選択を行う。
図13は、実施の形態3を、実施の形態1のデータ復号装置107に適用した装置構成を示すブロック図である。図3の構成と異なる機能部は、選択部1301及びデータ種別情報選択部1302である。
選択部1301は、図3の選択部304と異なり、データ種別情報選択部1302からの指定に基づいて基準時刻情報315の選択を行う機能部である。そのため、図9の処理S925での処理は、選択部304が所定の判定基準に従って基準時刻情報315を選択するのではなく、使用者が指定したデータ種別情報314と対応する基準時刻情報315を選択する処理となる。処理S926以降は同じである。
データ種別情報選択部1302は、ユーザーインタフェース108が備える、選択部1301との間で情報の入出力を行う機能部である。データ種別情報選択部1302と選択部1301との間の入出力は次の通りである。
先ず、選択部1301は、図9の処理S902のループ処理を終了したときに、処理S902での一連の判定結果をデータ種別情報選択部1302に対して出力する。
次に、データ種別情報選択部1302は、選択部1301から判定結果の入力があると、ユーザーインタフェース108を介し、例えば画面表示出力を行って、使用者に通知する。
使用者は、ユーザーインタフェース108を介して通知された判定結果に基づいて、システムクロック信号317の生成に使用する基準時刻情報315を1つ選択し、対応するデータ種別情報314を、ユーザーインタフェース108を介して指定する。
最後に、データ種別情報選択部1302は、ユーザーインタフェース108を介して使用者が指定したデータ種別情報314を、選択部1301に対して出力する。
図14は、実施の形態3を、実施の形態2のデータ復号装置に適用した装置構成を示すブロック図である。図11の構成と異なる機能部は、選択部1401及びデータ種別情報選択部1402である。
選択部1401は、図11の選択部1104と異なり、データ種別情報選択部1402からの指定に基づいてシステムクロック信号1108〜1110の選択を行う機能部である。そのため、図12の処理S1226での処理は、選択部1104が所定の判定基準に従ってシステムクロック信号1108〜1110を選択するのではなく、使用者が指定したデータ種別情報314と対応するシステムクロック信号1108〜1110を選択する処理となる。処理S1227以降は同じである。
データ種別情報選択部1402は、ユーザーインタフェース108が備える、選択部1401との間で情報の入出力を行う機能部である。データ種別情報選択部1402と選択部1401との間の入出力は、図13の構成と同様である。
実施の形態3によれば、変動量が閾値以下となる基準時刻情報315又はシステムクロック信号1108〜1110が複数ある場合に、使用者がデータ種別情報314を指定し選択することが可能となる。その結果として、使用者から指定された入力情報に基づいて基準時刻情報315又はシステムクロック信号1108〜1110を選択することができ、実施の形態1又は実施の形態2と比べて選択部1301又は選択部1401を簡易な構成にできる効果が得られる。