説明

リアルタイムデータ伝送システム

【課題】受信機間の同期を必要とする映像/音声配信システムにおいて,送信機と受信機間のクロックに誤差が生じても,再生の同期を取ることができ,且つ,構成が簡易な受信機を提供する。
【解決手段】受信機のシステムタイマとオーディオクロックのそれぞれを別々のシステムで合わせ込み,システムタイマに合わせて音声を再生できるようにオーディオクロックを調整することで,システムタイマの揺らぎをオーディオクロック調整時に平滑化し吸収する。さらに,システム全体として簡易な構成とすることができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はネットワーク上で動作するリアルタイムデータ伝送システムの同期に関するものであって,特に音声データのリアルタイム伝送に関する。
【背景技術】
【0002】
近年,ネットワークを経由して音声/映像等の連続データをリアルタイムに伝送する技術が実用化されている。
【0003】
このように,ネットワークを介してデータを伝送するシステムにおいて,受信側でリアルタイムにデータの再生を行おうとした場合,通常は,送信側と受信側の動作クロックが別系統となり,同期が完全にとれないことに起因する再生音声/映像の乱れが発生するという問題がある。
【0004】
リアルタイム伝送システムにおいて,送信側と受信側のシステムタイマが非同期の場合,受信側バッファにアンダーフローやオーバーフローが発生する。この結果,復号動作の連続性が失われ,音声/映像の途切れやノイズ発生といった不具合が生じる。このため,オーバーフローやアンダーフロー対策は,リアルタイム伝送システムにとって重要な課題となっている。
【0005】
また,音声または映像の符号化器が出力する符号化データが定ビットレートで無い場合や,伝送路上でパケットの損失が発生した場合も,受信用バッファの蓄積データ量が変動するため正しくクロックの補正ができない。
【0006】
このような課題への対策として,特許文献1では,送信側のクロック情報を受信側に送信し,受信側では,このクロック情報の,期待される理論的な受信タイミングと,実際の受信タイミングとの誤差に基づいて,自身の動作クロックを調整する発明が開示されている。
【0007】
図8は,特許文献1における受信機のブロック図である。電圧制御水晶発振回路(VCXO)は,D/Aコンバータを経由して得られる誤差判定部からの誤差情報に基づいて制御され,最終的に,クロック誤差に基づいた形でタイミングカウンタのカウントタイミングが制御されている。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特許第3950847号
【0009】
ところで,ネットワークを介して音声/映像を伝送するシステムは,単にリアルタイムに送信機から受信機に伝送するだけでなく,複数の受信機において同時に再生することが要求されているものもある。たとえば,空港ロビーにある発着状況を示すモニタや大会議場における複数のモニタへの同時配信などである。このようなシステムはマルチキャスト配信システムなどと呼ばれ,送信機と受信機だけでなく,複数の受信機間の同期も同時に制御しなければならない点で,特許文献1に記載のシステムとは異なる。マルチキャスト配信システムの製品は,例えば非特許文献2である。
【非特許文献】
【0010】
【非特許文献2】http://www.silex.jp/products/audiovisual/mvds_x2.html
【0011】
なお,このようなマルチキャスト配信システムも,上述した従来のリアルタイム伝送システムと同様,送信機と受信機のクロック誤差によって引き起こされる同期の問題が発生する。
しかし,このような問題に対する解決手段として,特許文献1に開示されている発明を用いることは容易ではない。
これは,同期について,送信機と受信機だけでなく受信機間の同期も制御しなければならないというマルチキャスト配信システム特有の事情があるからである。
【0012】
受信機間の同期を実現するための構成としてマルチキャスト配信システムの受信機は,クロックに関し,システムタイマに加え,映像/音声に用いるクロックを別系統で備えるのが一般的である。通常は,システムタイマは受信機間の同期に使用され,映像/音声用のクロックは送信機との映像/音声の同期に使用される。
【発明の概要】
【発明が解決しようとする課題】
【0013】
仮にマルチキャスト配信システムの同期制御のために特許文献1を適用すると次のような問題がある。
【0014】
まず,システムタイマと音声/映像再生クロックの2つが必要となり,システムを二重にする必要がある。次いで,受信機内の再生クロックを制御する装置に対し,再生クロックを制御する情報を持ったパケットを元に期待値演算や急峻なクロック周波数変更を防ぐための緩衝処理をリアルタイムに行う必要がある。このため,音声/映像再生装置としては不必要に高速かつ複雑な処理が必要となる。
さらに,受信機間で同期させた再生をするため,音声/映像再生の開始タイミングを制御する装置も必要となる。
【0015】
本発明は,係る問題を解決するためのものであり,受信機間の同期を必要とする映像/音声配信システムにおいて,送信機と受信機間のクロックに誤差が生じても,再生の同期を取ることができ,且つ,構成が簡易な受信機を提供することを目的とする。
【課題を解決するための手段】
【0016】
本願の第1の形態に係る受信機は,送信機用タイマを有する送信機と受信機用タイマを有する複数の受信機とがそれぞれネットワーク接続されており,ネットワークを通じて送信機から複数の受信機へ送信機用タイマ値(T_TIME)と,送信機用タイマ値がP_TIMEとして付された音声フレームとが伝送されるリアルタイム音声データ伝送システムにおける受信機であって,受信機のシステムクロックを発振させるシステムクロック発振器と,システムクロック発振器が発振させる周波数に基づいて受信機用タイマのカウント動作のベースとなる周波数を発振させる分周器と,システムクロック発振器より低い周波数を発振させるオーディオクロック発振器と,送信機より受信した送信機用タイマ値(T_TIME)と受信機用タイマのタイマ値(R_TIME)との誤差を第1のタイマ誤差として検出する第1のタイマ誤差検出手段と,第1のタイマ誤差に基づいて,当該第1のタイマ誤差を減少させるよう,分周器の分周値を調整する分周値調整手段と,送信機より受信した音声フレームに付された送信機用タイマ値(P_TIME)を抽出する送信機用タイマ値抽出手段と,受信機用タイマのタイマ値(R_TIME)と抽出された送信機用タイマ値(P_TIME)との間の誤差を第2のタイマ誤差として検出する第2のタイマ誤差検出手段と,第2のタイマ誤差に基づいて,当該タイマ誤差を減少させるよう,オーディオクロック発振器が発振させる周波数を調整するオーディオクロック発振器周波数調整手段と,を備えることを特徴とする。
【0017】
より好ましくは,さらに,オーディオクロック発振器が発振させる周波数に基づいて音声を出力する音声出力手段を備えることを特徴とする。
【0018】
より好ましくは,分周値調整手段は,さらに,第1のタイマ誤差が所定の値を超えた場合には,受信機用タイマのタイマ値を送信機より受信した送信機用タイマ値で更新することを特徴とする。
【0019】
本願の第2の形態に係る音声データ伝送システムは,送信機と受信機とがネットワーク接続されており,送信機から受信機へリアルタイムに音声データが伝送される音声データ伝送システムであって,送信機は,送信機用タイマと,送信機用タイマのタイマ値(T_TIME)を受信機に送信するタイマ値送信手段と,送信機用タイマのタイマ値(P_TIME)が付された音声データを受信機に送信する音声フレーム送信手段とを備え,受信機は,受信機用タイマと,受信機のシステムクロックを発振させるシステムクロック発振器と,システムクロック発振器が発振させる周波数に基づいて受信機用タイマのカウント動作のベースとなる周波数を発振させる分周器と,システムクロック発振器より低い周波数を発振させるオーディオクロック発振器と,送信機より受信した送信機用タイマ値(T_TIME)と受信機用タイマのタイマ値(R_TIME)との誤差を第1のタイマ誤差として検出する第1のタイマ誤差検出手段と,第1のタイマ誤差に基づいて,当該第1のタイマ誤差を減少させるよう,分周器の分周値を調整する分周値調整手段と,送信機より受信した音声フレームに付された送信機用タイマ値(P_TIME)を抽出する送信機用タイマ値抽出手段と,受信機用タイマのタイマ値(R_TIME)と抽出された送信機用タイマ値(P_TIME)との間の誤差を第2のタイマ誤差として検出する第2のタイマ誤差検出手段と,第2のタイマ誤差に基づいて,当該タイマ誤差を減少させるよう,オーディオクロック発振器が発振させる周波数を調整するオーディオクロック発振器周波数調整手段とを備えることを特徴とする。
【発明の効果】
【0020】
本発明によると,受信機間の同期を必要とする音声配信システムにおける送受信機間の同期について,受信機のシステムタイマとオーディオクロックのそれぞれを別々のシステムで合わせ込み,システムタイマに合わせて音声を再生できるようにオーディオクロックを調整することで,オーディオクロックの調整間隔がシステムタイマの調整間隔よりも大きい場合には,システムタイマの揺らぎをオーディオクロック調整時に平滑化し吸収することができる。さらに,システムタイマの同期に高度な緩衝処理が必要ではないため,システム全体として簡易な構成とすることができる。
【発明を実施するための形態】
【0021】
以下では図面を参照し,本発明に係る実施例を説明する。なお,各図面において共通する要素には同じ番号を付し,説明は繰り返さない。
[システム全体図]
【0022】
図1は本発明に係るシステムの全体図である。映像および音声(オーディオ)のソースである映像・音声サーバ101が,映像・音声をネットワーク上に送信する送信機103に接続されている。これらの機器の間の接続は,映像であれば,例えばRGBケーブルなどであり,音声であればステレオケーブルなどである。なお,HDMI(登録商標)など映像と音声の両方が伝送可能なものであっても構わない。
【0023】
本発明に係るシステムにおいて,送信機103と複数の受信機105とがLANなどのネットワーク109を介して相互に接続されており,それぞれの受信機105には映像・音声出力装置107が接続されている。受信機105と映像・音声出力装置107との接続は,上記した,映像・音声サーバ101と送信機103との間の接続と同様である。
[ブロック図(送信機)]
【0024】
図2は,送信機103のブロック図である。送信機103のシステムタイマである送信機システムタイマ205は,発振器201より発振された周波数を分周器203で分周したものである。後の説明で明らかとなるが,本発明における全ての動作は,送信機システムタイマ205が刻む任意の時点におけるタイマ値であるT_TIMEが基準となる。なお,発振器201が発振させる周波数は,任意の値でよいが,本実施例では33MHzとする。この周波数は,後述する受信機においても同様である。
【0025】
音声I/F207は,映像・音声サーバ101と接続されるものであり,アナログ音声データを受信する。受信したアナログ音声データは,キャプチャクロック発振器209によって発振される周波数に基づいて,音声ADC211によってデジタルデータに変換される。
【0026】
CPU213は,送信機システムタイマ205より取得するT_TIMEを,随時,受信機105に対してマルチキャスト送信する。また,音声ADC211より得られる音声データおよび音声クロックとT_TIMEに基づいてタイムスタンプを含む音声フレームを生成し,これをネットワークI/F215を通じて受信機105に対してマルチキャスト送信する。
[フローチャート(送信機)]
【0027】
図3は送信機103のフローチャートである。図3を参照して,送信機103は2つのシステムを持っており,1つはシステムタイマの司るシステムであり,もう1つはオーディオクロックの司るシステムである。
【0028】
システムタイマ側のシステムについて説明する。CPU213が送信機システムタイマ205よりT_TIMEを取得(ステップ301)し,これを受信機105に対してマルチキャスト送信(ステップ303)する。
【0029】
オーディオクロック側のシステムについて説明する。CPU213が音声データをキャプチャ(ステップ351)し,正常にキャプチャできたのであればステップ353に進み,そうでなければキャプチャ処理を繰り返す。
【0030】
次いで,CPU213がそのキャプチャ時点におけるT_TIMEを取得(ステップ353)し,これを音声データの送信単位である音声フレームに,各フレームのタイムスタンプを意味するP_TIMEとして付加(ステップ355)したものを,ネットワークI/F215を通じて受信機105に対してマルチキャスト送信(ステップ357)する。
[送信フレーム]
【0031】
図4は,送信機103から受信機105へマルチキャスト送信される音声フレームのフォーマットである。図から明らかなとおり,音声データおよびタイムスタンプであるP_TIMEが,UDP/IPによってマルチキャスト送信される。
[ブロック図(受信機)]
【0032】
図5は,受信機105のブロック図である。発振器501および分周器503は,送信機103のものと基本的に同じであるが,分周器503は,後に説明するように,CPU509からの指令により調整可能となっている点で異なる。受信機システムタイマ505は,受信機105のシステムタイマであり,送信機のそれと同様の役目を果たすものである。なお,以下では,受信機システムタイマ505が刻む任意の時点におけるタイマ値をR_TIMEとして説明する。受信機システムタイマ(R_TIME)の開始時は,送信機103からマルチキャスト送信されたT_TIMEにあわせる。即ち,R_TIME=T_TIMEとする。なお,この処理は,T_TIMEを受信した初回,およびT_TIMEとR_TIMEとの差異が所定より大きい場合(詳細は後述する)に行われる。
【0033】
後に詳しく説明するが,CPU509は,R_TIMEをT_TIMEで更新したり,音声DAC515との間で,音声データや音声クロックのやりとりをしたり,ネットワークI/F507より受信した音声データおよびタイムスタンプであるP_TIMEに基づいて分周器503の出力値およびクロックシンセサイザ511が発振させる周波数を調整する。クロックシンセサイザ511が発振させる周波数は,音声再生に用いるクロックであるため,システムタイマ(33MHz)に比して十分に遅いものでよい。本実施例では32kHzとする。
【0034】
なお,上記した周波数は音声DAC513がパラレルDACの場合における例であり,シリアルDACの場合は,例えば16MHzなどとし,音声DAC513に備える分周器により分周した音声クロックとともにフレーム同期信号をCPU509に与えるようにすればよい。
【0035】
音声DAC513は,クロックシンセサイザ511からの周波数に基づいてCPU509に対して音声クロックを提供し,CPU309からは,当該音声クロックにより所定の処理が施されたデジタルの音声データを得る。さらに,このデジタル音声データをアナログに変換し音声I/F515に提供する。
[機能ブロック図(受信機)]
【0036】
図6は,受信機105のCPU509により行われる機能のブロック図であり,図中の矢印はデータの流れを示している。
【0037】
T_TIME受信手段601は,ネットワークI/F507を通じて送信機103よりT_TIMEを受信し,R_TIME更新手段603は,R_TIMEを当該T_TIMEで更新する。
R_TIME取得手段609は,受信機システムタイマ505より,R_TIMEを取得する。
【0038】
第1のタイマ誤差検出手段611は,T_TIME受信手段601が受信したT_TIMEと受信機システムタイマ505より取得したR_TIMEとの誤差を検出する。
分周値調整手段615は,検出した当該誤差に基づいて誤差が減少する方向に分周器503の出力値を調整する。
【0039】
音声フレーム受信手段605は,ネットワークI/F507を通じて送信機103より図4に示すP_TIMEを含む音声フレームを受信し,P_TIME抽出手段607は,当該音声フレームよりP_TIMEを抽出する。
【0040】
第2のタイマ誤差検出手段613は,P_TIME抽出手段607が抽出したP_TIMEとR_TIME取得手段が取得したR_TIMEとの誤差を検出する。
オーディオクロック調整手段617は,検出した当該誤差に基づいて誤差が減少する方向にクロックシンセサイザ511が発振させる周波数を調整する。
[フローチャート(受信機)]
【0041】
図7は受信機105のフローチャートである。図7を参照して,受信機105は2つのシステムを持っており,1つはシステムタイマの司るシステムであり,もう1つはオーディオクロックの司るシステムである。
【0042】
システムタイマ側のシステムについて説明する。T_TIME受信手段601が送信機103よりT_TIMEを受信したかどうかを判定(ステップ701)し,受信していれば次のステップに進み,そうでなければこの受信判定をし続ける。R_TIME更新手段603は,R_TIMEをステップ701で受信したT_TIMEで更新する(ステップ703)。
【0043】
次に,ステップ705にて,再度T_TIME受信手段601が送信機103よりT_TIMEを受信したかどうかを判定し,受信していれば次のステップに進み,そうでなければこの受信判定をし続ける。
【0044】
R_TIME取得手段609は,受信機システムタイマ505よりR_TIMEを取得する(ステップ707)。第1のタイマ誤差検出手段611は,ステップ707およびステップ705で取得したR_TIMEとT_TIMEとの誤差があるかどうかを判定する(ステップ709)。当該誤差が所定値よりも小さい場合には,分周値調整手段615は,これが減少する方向に分周器503の出力値を調整する(ステップ711)。一方,所定値よりも大きくなった場合は,送信機側とのずれが修正不能な程度にまで大きくなったと判断し,処理がステップ701まで戻り,再度T_TIMEでR_TIMEを更新することとなる。
【0045】
次いで,オーディオクロック側のシステムについて説明する。音声フレーム受信手段605は,ネットワークI/F507を通じて送信機103より音声フレームを受信したかどうかを判定(ステップ751)し,受信していれば次のステップに進み,そうでなければ音声フレームの受信判定をし続ける。P_TIME抽出手段607は,受信した音声フレームに付加されているタイムスタンプであるP_TIMEを抽出する(ステップ753)。R_TIME取得手段609は,受信機システムタイマ505よりR_TIMEを取得する(ステップ755)。第2のタイマ誤差検出手段613は,ステップ753およびステップ755で取得したP_TIMEとR_TIMEとの誤差があるかどうかを判定する(ステップ757)。当該誤差がある場合,オーディオクロック調整手段617は,当該誤差が減少する方向にクロックシンセサイザ511が発振させる周波数を調整する(ステップ759)。例えば,あるR_TIMEよりP_TIMEが進んでいれば,クロックシンセサイザを遅らせ,P_TIMEが遅れていれば進めるようにする。
【0046】
以上で説明した本願発明によれば,受信機間の同期を必要とする音声配信システムにおける送受信機間の同期について,受信機のシステムタイマとオーディオクロックのそれぞれを別々のシステムで合わせ込み,システムタイマに合わせて音声を再生できるようにオーディオクロックを調整することで,オーディオクロックの調整間隔がシステムタイマの調整間隔よりも大きい場合には,システムタイマの揺らぎをオーディオクロック調整時に平滑化し吸収することができる。さらに,システムタイマの同期に高度な緩衝処理が必要ではないため,システム全体として簡易な構成とすることができる。
なお,上記した実施例では音声データの同期について説明したが,映像データについても同様に同期を行うことが可能である。

【図面の簡単な説明】
【0047】
【図1】システム全体図
【図2】送信機のブロック図
【図3】送信機のフローチャート
【図4】音声フレームのフォーマット
【図5】受信機のブロック図
【図6】受信機のCPUにより行われる機能のブロック図
【図7】受信機のフローチャート
【図8】従来技術における受信機のブロック図
【符号の説明】
【0048】
分周器503
受信機システムタイマ505
クロックシンセサイザ511
第1のタイマ検出誤差検出手段611
第2のタイマ検出誤差検出手段613
分周値調整手段615
オーディオクロック調整手段617


【特許請求の範囲】
【請求項1】
送信機用タイマを有する送信機と受信機用タイマを有する複数の受信機とがそれぞれネットワーク接続されており,ネットワークを通じて送信機から複数の受信機へ前記送信機用タイマ値(T_TIME)と,前記送信機用タイマ値がP_TIMEとして付された音声フレームとが伝送されるリアルタイム音声データ伝送システムにおける受信機であって,
前記受信機のシステムクロックを発振させるシステムクロック発振器と,
前記システムクロック発振器が発振させる周波数に基づいて前記受信機用タイマのカウント動作のベースとなる周波数を発振させる分周器と,
前記システムクロック発振器より低い周波数を発振させるオーディオクロック発振器と,
前記送信機より受信した前記送信機用タイマ値(T_TIME)と前記受信機用タイマのタイマ値(R_TIME)との誤差を第1のタイマ誤差として検出する第1のタイマ誤差検出手段と,
前記第1のタイマ誤差に基づいて,当該第1のタイマ誤差を減少させるよう,前記分周器の分周値を調整する分周値調整手段と,
前記送信機より受信した音声フレームに付された送信機用タイマ値(P_TIME)を抽出する送信機用タイマ値抽出手段と,
前記受信機用タイマのタイマ値(R_TIME)と抽出された送信機用タイマ値(P_TIME)との間の誤差を第2のタイマ誤差として検出する第2のタイマ誤差検出手段と,
前記第2のタイマ誤差に基づいて,当該タイマ誤差を減少させるよう,前記オーディオクロック発振器が発振させる周波数を調整するオーディオクロック発振器周波数調整手段と,
を備えることを特徴とする受信機。
【請求項2】
請求項1記載のリアルタイム音声データ伝送システムにおける受信機は,さらに,
前記オーディオクロック発振器が発振させる周波数に基づいて音声を出力する音声出力手段を備えることを特徴とする。
【請求項3】
請求項1および2記載のリアルタイム音声データ伝送システムにおける受信機において,
前記分周値調整手段は,さらに,前記第1のタイマ誤差が所定の値を超えた場合には,前記受信機用タイマのタイマ値を前記送信機より受信した前記送信機用タイマ値で更新することを特徴とする。
【請求項4】
送信機と受信機とがネットワーク接続されており,前記送信機から前記受信機へリアルタイムに音声データが伝送される音声データ伝送システムであって,
(A)前記送信機は
(a1)送信機用タイマと,
(a2)前記送信機用タイマのタイマ値(T_TIME)を前記受信機に送信するタイマ値送信手段と,
(a3)前記送信機用タイマのタイマ値(P_TIME)が付された音声データを前記受信機に送信する音声フレーム送信手段と,を備え,
(B)前記受信機は,
(b1)受信機用タイマと,
(b2)前記受信機のシステムクロックを発振させるシステムクロック発振器と,
(b3)前記システムクロック発振器が発振させる周波数に基づいて前記受信機用タイマのカウント動作のベースとなる周波数を発振させる分周器と,
(b4)前記システムクロック発振器より低い周波数を発振させるオーディオクロック発振器と,
(b5)前記送信機より受信した前記送信機用タイマ値(T_TIME)と前記受信機用タイマのタイマ値(R_TIME)との誤差を第1のタイマ誤差として検出する第1のタイマ誤差検出手段と,
(b6)前記第1のタイマ誤差に基づいて,当該第1のタイマ誤差を減少させるよう,前記分周器の分周値を調整する分周値調整手段と,
(b7)前記送信機より受信した音声フレームに付された送信機用タイマ値(P_TIME)を抽出する送信機用タイマ値抽出手段と,
(b8)前記受信機用タイマのタイマ値(R_TIME)と抽出された送信機用タイマ値(P_TIME)との間の誤差を第2のタイマ誤差として検出する第2のタイマ誤差検出手段と,
(b9)前記第2のタイマ誤差に基づいて,当該タイマ誤差を減少させるよう,前記オーディオクロック発振器が発振させる周波数を調整するオーディオクロック発振器周波数調整手段と,
を備えることを特徴とする音声データ伝送システム。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2011−160272(P2011−160272A)
【公開日】平成23年8月18日(2011.8.18)
【国際特許分類】
【出願番号】特願2010−21305(P2010−21305)
【出願日】平成22年2月2日(2010.2.2)
【出願人】(500112146)サイレックス・テクノロジー株式会社 (74)
【Fターム(参考)】