以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書および図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
また、以下では、下記に示す順序で説明を行う。
1.本発明の実施形態に係るアプローチ
2.本発明の実施形態に係る音声信号伝送システム
3.本発明の実施形態に係るプログラム
(本発明の実施形態に係るアプローチ)
本発明の実施形態に係る音声信号伝送システム(以下、「音声信号伝送システム1000」とよぶ場合がある。)を構成する各装置の構成について説明する前に、本発明の実施形態に係る固定伝送遅延実現アプローチについて説明する。
[音声信号伝送システム1000の概要]
後述する本発明の実施形態に係る固定伝送遅延実現アプローチの概要を説明する前に、音声信号伝送システム1000の概要について説明する。図1は、本発明の実施形態に係る音声信号伝送システム1000の概要を示す説明図である。音声信号伝送システム1000は、音声再生装置100と、送信装置200と、受信装置300A、300B、…(以下、総称して「受信装置300」とよぶ場合がある。)と、音声出力装置400A、400B、…(以下、総称して「音声出力装置400」とよぶ場合がある。)とを有する。
なお、図1では、音声信号伝送システム1000が複数の受信装置300および複数の音声出力装置400を有する構成を示しているが、上記に限られない。例えば、本発明の実施形態に係る音声信号伝送システム1000は、1つの受信装置300および、当該受信装置300に接続された1つの音声出力装置400を有する構成であってもよい。ここで、本発明の実施形態に係る音声信号伝送システム1000が1つの受信装置300を有する上記構成をとる場合であっても伝送遅延を固定遅延とすることによって、例えば、音声信号伝送システム1000が上記混在システムとする場合におけるユーザが感じる音像の定位のずれを防止することが可能となる。
音声再生装置100は、音声データを再生してデジタル音声信号(以下、「音声信号」と示す。)を生成する。そして、音声再生装置100は、有線で接続された送信装置200へ生成した音声信号を送信する。
ここで、本発明の実施形態に係る音声信号は、例えば非圧縮のデジタル音声信号である。本発明の実施形態に係る音声信号としては、例えば、リニアPCMの音声信号が挙げられる。なお、以下に示す本発明の実施形態に係る固定伝送遅延実現アプローチは、任意の方式で圧縮された音声信号の伝送にも適用することが可能である。また、本発明の実施形態に係る音声信号は、人の声や音楽などの任意の音声を示す。
また、音声再生装置100と送信装置200とは、例えば、音声信号用のシリアルインタフェースや、USB(Universal Serial Bus)、LAN(Local Area Network)、PCIバス(Peripheral Components Interconnect bus)により接続される。ここで、本発明の実施形態に係る「接続」とは、例えば、通信可能な状態にある(または、通信可能な状態にさせる)ことをいう。
送信装置200は、受信装置300A、300B、…それぞれと無線で接続され、音声再生装置100から送信された音声信号や、同期信号(後述する)などの信号を受信装置300A、300B、…へ送信する役目を主として果たす。また、送信装置200は、例えば複数のチャネルを用いて音声信号を送信することによって、受信装置300A、300B、…それぞれに対応する音声信号を伝送する。ここで、送信装置200と受信装置300とは、例えば無線LANにて接続される。
なお、送信装置200は受信装置300から送信される信号を受信することも可能である。つまり、送信装置200は、音声信号伝送システム1000における通信装置と捉えることができる。
受信装置300は、送信装置200と無線で接続され、送信装置200から送信された音声信号や同期信号などの信号を受信する役目を主として果たす。なお、受信装置300は送信装置200へ信号を送信することも可能である。つまり、受信装置300は、音声信号伝送システム1000における通信装置と捉えることができる。
また、受信装置300は、音声出力装置400と有線で接続され、受信した音声信号を音声出力装置400へ伝送する。ここで、受信装置300と音声出力装置400とは、例えば、音声用のシリアルインタフェースであるI2Sバスや、Left Justified、USB、LAN、PCIバスなどで接続される。
音声出力装置400は、増幅器(いわゆるアンプ)や、スピーカなどの音声出力デバイスで構成され、受信した音声信号に応じた音声を出力する。
音声信号伝送システム1000は、例えば図1に示す構成を有する。なお、本発明の実施形態に係る音声信号伝送システム1000の構成は、図1に示す構成に限られない。例えば、本発明の実施形態に係る音声信号伝送システム1000は、図1に示す音声再生装置100および送信装置200を1つの装置(送信側装置)として有していてもよく、また、図1に示す受信装置300および音声出力装置400それぞれを1つの装置(受信側装置)として有していてもよい。さらに述べれば、本発明の実施形態に係る音声信号伝送システム1000は、音声再生装置100、送信装置200、受信装置300、および音声出力装置400それぞれを別の別の筐体やモジュールに実装してもよい。また、本発明の実施形態に係る音声信号伝送システム1000は、音声再生装置100、送信装置200、受信装置300、および音声出力装置400の一部または全部が同一の筐体、基板、LSI(Large Scale Integration)などに実装されていてもよい。
以下では、図1に示す音声信号伝送システム1000を例に挙げて、本発明の実施形態に係る固定伝送遅延実現アプローチの概要について説明する。
[固定伝送遅延実現アプローチの概要]
上述したように、図1に示すような音声信号を無線で伝送する音声信号伝送システム1000では、ユーザが感じる音像の定位のずれを防止するために、伝送遅延を固定遅延にする必要がある。また、従来の技術のようにTSタイムスタンプを音声信号に付したとしても、固定遅延を実現は望めない。
そこで、本発明の実施形態に係る音声信号伝送システム1000では、例えば下記の(1)、(2)に示す方法(本発明の実施形態に係る音声信号伝送方法に係る方法)を用いることによって、音声信号を無線伝送する場合における伝送遅延を固定遅延とする。
(1)送信装置200と各受信装置300とが、同期した音声信号伝送のための時間フレームを共有する。また、音声信号伝送システム1000では、時間フレーム単位で音声信号が伝送される。
(2)音声信号伝送システム1000では、音声信号における時間フレームごとに基準時間(以下、「基準時間T0」と示す場合がある。)が定義され、当該基準時間T0からの時間に基づいて音声信号の伝送に係る処理が行われる。
送信装置200は、時間フレームごとの音声信号それぞれを、対応する基準時間T0から所定の時間(以下、「時間T1」と示す場合がある。)が経過したときに送信する。また、受信装置300は、時間フレームごとの音声信号を、対応する基準時間T0から所定の第1時間(以下、「時間T4」と示す場合がある。ここで、(T1−T0)<(T4−T0)。)が経過したときに、音声出力装置400へ送信する。
ここで、送信装置200と各受信装置300とは、上記(1)によって時間フレームを同期して共有している。よって、送信装置200と各受信装置300とは、例えば、上記音声信号伝送のための時間フレームを基準に音声信号の伝送に係る各種処理を開始するタイミングを設定することによって、同一の基準時間T0から所定の時間(例えば上記時間T1、時間T4や後述する時間T2、T3)が経過したときに各種処理を開始することができる。
また、送信装置200と各受信装置300とは、上記(1)によって時間フレームを同期して共有しているので、各受信装置100は、各時間フレームの音声信号を同一の基準時間から時間T4が経過したときに、音声信号を音声出力装置400へ送信することができる。つまり、音声信号伝送システム1000では、基準時間T0から時間T4が経過するときまでが、固定遅延となる。よって、各受信装置300に接続された各音声出力装置400には、基準時間から時間T4が経過したとき(固定遅延が経過したとき)に音声信号が伝送されるので、各音声出力装置400からは、一致したタイミングで音声が出力される。
したがって、音声信号伝送システム1000では、音声信号を無線伝送する場合における伝送遅延を固定遅延とすることが実現されることにより、ユーザが感じる音像の定位のずれの発生が防止される。
音声信号伝送システム1000では、上記(1)、(2)の方法を用いることにより、音声信号の伝送における固定遅延が実現される。ここで、本発明の実施形態に係る固定遅延は、例えば、送信装置200から各受信装置300への個別の伝送遅延のゆらぎや、無線伝送時の再送処理などを想定したタイミングマージンを含めて設定される。
また、ある時間フレームの音声信号の伝送に際して上記タイミングマージンを超える伝送遅延が発生した場合、音声信号伝送システム1000では音声信号の伝送に係る伝送処理が打ち切られる。より具体的には、上記の場合において各受信装置300は、例えば、音声信号のうちの未到達のパケットをパケットロス(伝送において消失した消失音声信号)として扱う。また、各受信装置300は、上記パケットロスが発生した場合には、例えば、FEC(Foward Error Correction)処理(誤り訂正処理)や、補間処理を行うことによって、上記パケットロスの影響を最小限に抑える。よって、各受信装置300において上記FEC処理や補間処理が行われる場合には、本発明の実施形態に係る固定遅延は、上記FEC処理や補間処理の実行に起因する処理遅延が含まれるように設定される。
以上のように、本発明の実施形態に係る音声信号伝送システム1000では、各時間フレームの音声信号の基準時間T0を基準とし、タイミングマージンを持たせた上で、送信装置200および受信装置300それぞれが行う音声信号の伝送に係る処理期限を設定する。したがって、音声信号伝送システム1000では、各受信装置300から接続された各音声出力装置400への各時間フレームの音声信号の伝送が、対応する基準時間T0から所定の時間T4が経過したときに行われるので、音声信号の伝送に係る固定遅延が実現される。また、音声信号伝送システム1000では、固定遅延が経過したときに各音声出力装置400への音声信号の伝送が行われるので、ユーザが感じる音像の定位のずれの発生が防止される。
また、音声信号伝送システム1000では、ある処理において設定された処理期限に間に合わなかった場合には、当該処理の実行を打ち切る。よって、音声信号伝送システム1000では、途切れのない固定遅延のストリーミング再生が実現される。
また、音声信号伝送システム1000では、例えば、送信装置200から各受信装置300への伝送遅延のばらつきや、ソフトウェア処理による処理遅延のばらつきの合計に基づいて固定遅延が設定される。よって、音声信号伝送システム1000では、個々の伝送遅延のばらつきや処理遅延のばらつきを管理する必要はないので、実装の容易化を図ることができる。
さらに、音声信号伝送システム1000では、従来の技術のように、音声データそのものにTSタイムスタンプなどを付さないので、従来の技術を用いる場合よりも処理の容易化が図られる。
(音声信号伝送システム1000)
次に、上述した固定伝送遅延実現アプローチを実現することが可能な、音声信号伝送システム1000の構成の一例について説明する。
[音声信号伝送システム1000の構成の概要]
[1]第1の構成
〔第1の構成の概要〕
第1の構成に係る音声信号伝送システム1000は、例えば、下記(1−1)〜(1−4)の機能を有する。
(1−1)送信装置200と受信装置300との時間の同期
送信装置200と受信装置300とは、時間を同期させる同期手段を有する。
より具体的には、送信装置200は、例えば、自装置の時間を示す同期信号を送信する。また、受信装置300は、例えば、送信装置200から送信される同期信号に基づいて自装置の時間を調整する同期部を備え、同期部が自装置の時間を調整することによって、送信装置200との間における時間の同期をとる。ここで、送信装置200は、例えば、定期的に送信するビーコンに同期信号を含めることによって、同期信号を送信する。なお、送信装置200は、非定期的に同期信号を送信してもよい。
また、本発明の実施形態に係る音声信号伝送システム1000は、例えば、IEEE1588に規定される高精度同期プロトコルを用いるなど、様々な同期方法を用いることが可能である。IEEE1588に係る高精度同期プロトコルでは、マスター側からスレーブ側に時刻情報を定期的に送信するとともに、スレーブ側からDerlay Requestというパケットをマスター側に送信し、その応答にDelay Requestの受信時刻を付加する。よって、例えばIEEE1588に係る高精度同期プロトコルを用いる場合には、音声信号伝送システム1000は、伝搬遅延を含めて同期をとることができる。
(1−2)送信装置200と受信装置300とにおける時間フレーム単位で送信される音声信号における位相の同期
送信装置200と受信装置300とは、時間フレーム単位で送信される音声信号における位相を同期させる同期手段を有する。
より具体的には、送信装置200は、例えば、時間フレームの番号およびオフセット時間の情報を上記同期信号に含めて送信する。また、受信装置300は、例えば、同期部が受信された同期信号に基づいて送信装置200から送信される各時間フレームの音声信号の位相を把握することにより、送信装置200との間における音声信号の位相の同期をとる。
(1−3)音声信号の第1の伝送制御
送信装置200と受信装置300それぞれは、時間フレームごとの基準時間T0を基準として各時間フレームの音声信号の伝送制御を行う。
より具体的には、送信装置200は、例えば、N番目(Nは、整数。)の時間フレームの基点から所定の時間が経過したときにN番目の時間フレームの音声信号の送信を開始する。上記により、送信装置200は、N番目の時間フレームの音声信号における基準時間T0から時間T1(所定の時間)が経過したときに、N番目の時間フレームの音声信号を各受信装置300へ送信することができる。
また、受信装置300は、受信されたN番目の時間フレームの音声信号を記憶部に記憶する。そして、受信装置300は、(N+α)番目(α≧0、αは整数)の時間フレームの基点から所定の時間が経過したときに、受信されたN番目の時間フレームの音声信号を音声出力装置400へと送信する。上記により、受信装置300は、N番目の時間フレームの音声信号における基準時間T0から時間T4(第1の時間)が経過したときに、N番目の時間フレームの音声信号を音声出力装置400へ送信することができる。
(1−4)音声信号の第2の伝送制御
受信装置300は、固定遅延を実現するために、受信した音声信号の記憶部への記録を制御する。
受信装置300は、記憶部として例えばFIFO(First-In First-Out)メモリ(先入れ先出しメモリ。単に「FIFO」と示す場合がある。)を備える。そして、受信装置300は、N番目の時間フレームの音声信号における基準時間T0から時間T3(第2の時間。ここで、(T3−T0)<(T4−T0)。)が経過したときに、N番目の時間フレームの音声信号をFIFOメモリに記録させる。より具体的には、受信装置300は、例えば、(N+α)番目(α≧0、αは整数)の時間フレームの基点から所定の時間が経過したとき、または、当該基点よりも所定の時間前に、N番目の時間フレームの音声信号をFIFOメモリへと記録させる。
なお、本発明の実施形態に係る記憶部は、FIFOメモリで構成されることに限られない。例えば、受信装置300は、アドレス管理を行うことによって、任意の種類の記録媒体を記憶部として備えることもできる。ここで、受信装置300が記憶部としてFIFOメモリを備える場合には、アドレス管理などが容易になるという利点がある。
また、受信装置300は、N番目の時間フレームの音声信号における基準時間T0から時間T3が経過するまでに受信されていない音声信号(パケットデータ)がある場合には、消失音声信号(パケットロス)として処理する。
上記のように受信した音声信号の記憶部への記録を制御することによって、受信装置300は、基準時間T0から時間T4が経過したときに記憶部に記憶されているN番目の時間フレームの音声信号を音声出力装置400へ送信することができる。よって、受信装置300が受信した音声信号の記憶部への記録を制御することによって、音声信号伝送システム1000では、固定遅延のストリーミング再生が実現される。
また、受信装置300は、時間フレームごとの音声信号それぞれに対して選択的に補間処理を行う補間部を備えていてもよい。補間部を備える受信装置300は、消失音声信号が発生した場合に当該消失部分を補間する。よって、受信装置300が補間部を備えることによって、音声信号伝送システム1000では、途切れのない固定遅延のストリーミング再生が実現される。
〔第1の構成の作用〕
次に、上記第1の構成における作用について説明する。第1の構成におけるN番目の時間フレームの音声信号における伝送遅延は、音声信号の時間フレームの長さをTframeとおくと、例えば下記の数式1で表される。ここで、数式1に示すように、第1の構成に係る伝送遅延は、送信装置200におけるN番目の時間フレームの音声信号に係る伝送処理の開始(時間T1)から、受信装置300における音声出力装置400への伝送開始までの間で定義される。よって、第1の構成では、固定遅延が実現される。
(Tframe×α)+T4−T1
・・・(数式1)
ここで、送信装置200から各受信装置300への音声信号の無線伝送は、各受信装置300が備えるFIFOメモリ(記憶部の一例。以下、同様とする。)がEmptyまたはFullにならないように制御されればよい。つまり、送信装置200から各受信装置300への伝送処理における遅延量にばらつきがあっても、上記前提を満たす限り数式1で表わされる固定の伝送遅延が実現される。
また、第1の構成では、受信装置300が備えるFIFOメモリがEmptyにならないようにするために、時間T3(第2の時間)が設定される。一般に無線通信では、伝送エラーが生じたときに再送処理が行われる。受信装置300では、この再送処理が1回以上起こることを見込んで時間T3が設定されるが、送信装置200との間の通信状態によっては再送処理が複数回繰り返され、その結果、時間T3が経過するまでに音声信号の伝送が終了しない可能性もある。そのため、受信装置300は、時間T3が経過するまでに伝送されなかった音声信号の伝送に係るパケットをパケットロスとみなし、例えば、前データをコピーしたり、前後のデータの補間値を生成するといった補間処理を行う。
そして、受信装置300は、基準時間T0から時間T3が経過したときに、受信された音声信号のFIFOメモリへの転送を開始し、また、当該転送を基準時間T0から時間T4が経過する前に転送を完了する。つまり、第1の構成では、時間T3〜T4の間の時間は、受信装置300が上記のような補間処理を行う時間として確保される。
より具体的には、ある時間フレームの音声信号に係るパケットの伝送が1回で正常終了した場合、受信装置300では、時間T3よりも再送マージン分だけ処理は早く終了し、補間処理などのパケットロスに対する処理も不要である。よって、受信装置300は、時間T3が経過したときにFIFOメモリへ受信された音声信号を転送する。
また、ある時間フレームの音声信号に係るパケットの伝送が1回で正常終了しない場合には、時間T1〜T3の間に、送信装置200、受信装置300において、例えば、無線伝送用のパケット生成、無線伝送開始待ち、無線伝送、再送処理が行われる。なお、例えば無線伝送開始待ち時間が長くなると、再送処理に使用できる時間は短くなる。そして、時間T3が経過したときに正常に受信されていない音声信号に係るパケットがある場合、受信装置300は、受信さえていないパケットがパケットロスであるとして、選択的に補間処理を行った後に、FIFOメモリへ受信された音声信号を転送する。
第1の構成に係る音声信号伝送システム1000は、例えば上記(1−1)〜(1−4)に示す機能を有する構成によって、伝送遅延が一定ではない無線伝送処理を使用しながら、固定の伝送遅延により各音声出力装置400へ時間フレームごとの音声信号を伝送することができる。
[2]第2の構成
〔第2の構成の概要〕
本発明の実施形態に係る音声信号伝送システム1000の構成は、上記第1の構成に限られない。例えば、本発明の実施形態に係る音声信号伝送システム1000は、上記第1の構成が有する機能に加え、さらにエラー訂正を行うことによりデータの復元を行う機能を有することができる。
より具体的には、送信装置200は、例えば、1の時間フレームを無線伝送の単位として、当該単位ごとに時間フレームごとの音声信号にエラー訂正(FEC)用のパリティデータ(誤り訂正データの一例。以下、同様とする。)を付加する。そして、送信装置200は、上記パリティデータが付加された音声信号を送信する。
受信装置300は、受信された時間フレームごとの音声信号に含まれる誤り訂正データに基づいて、受信された音声信号を復元する誤り訂正部を備える。受信装置300は、基準時間T0から所定の時間T2(第3の時間。ここで、(T1−T0)<(T2−T0)<(T3−T0)。)が経過するまでに未受信の音声信号がある場合、受信された音声信号に含まれるエラー訂正用のパリティデータを用いて、音声信号の復元を行う。
第2の構成に係る音声信号伝送システム1000は、送信装置200および受信装置300が、上記第1の構成に係る機能に加えて上記の機能を有することによって、無線通信における伝送特性がさらに改善され、途切れのない固定遅延のストリーミング再生を実現することができる。
〔第2の構成の作用〕
次に、上記第2の構成における作用について説明する。なお、第2の構成における作用のうち、上記第1の構成における作用と同様の作用については、説明を省略する。
第2の構成では、受信装置300は、再送によるエラーの復旧に加え、上位レイヤーにてエラーを訂正することによりエラーの復旧を図る。より具体的には、第2の構成では、受信装置300は、新たに時間T2を設定し、時間T2〜時間T3をエラー訂正のための時間として確保する。ここで、時間T2は、エラー訂正の種類や実行方法を考慮して設定される。また、時間T2は、受信装置300において、再送によるエラーの復旧を中止して、エラー訂正処理によるエラーの復旧を図るタイミングとしての役目を果たす。
第2の構成に係る音声信号伝送システム1000は、第1の構成に係る音声信号伝送システム1000と同様の構成を有する。したがって、第2の構成に係る音声信号伝送システム1000は、第1の構成に係る音声信号伝送システム1000と同様に、伝送遅延が一定ではない無線伝送処理を使用しながら、固定の伝送遅延により各音声出力装置400へ時間フレームごとの音声信号を伝送することができる。
[3]第3の構成
〔第3の構成の概要〕
本発明の実施形態に係る音声信号伝送システム1000の構成は、上記第1の構成、第2の構成に限られない。例えば、本発明の実施形態に係る音声信号伝送システム1000は、上記第1の構成(または、第2の構成)が有する機能に加え、さらに音声再生装置100と送信装置200との間の時間を同期させる機能を有することができる。上記構成によって、第3の構成に係る音声信号伝送システム1000では、音声再生装置100、送信装置200、および受信装置300の時間が同期することとなる。
〔第3の構成の作用〕
次に、上記第3の構成における作用について説明する。なお、第3の構成における作用のうち、上記第1の構成(または第2の構成)における作用と同様の作用については、説明を省略する。
上記第1の構成(または第2の構成)は、音声信号再生装置100から送信装置200への伝送遅延がほぼ0(ゼロ)であるとみなせる場合に対応する。ここで、上記音声信号再生装置100から送信装置200への伝送遅延がほぼ0(ゼロ)であるとみなせる場合としては、例えば、音声信号再生装置100と送信装置200とがシリアルのオーディオインタフェースで接続される場合が挙げられる。
一方、音声信号再生装置100と送信装置200とが、例えば、USBや、LAN、PCIバスで接続される場合には、音声信号再生装置100から送信装置200への伝送遅延が生じうる。上記伝送遅延には、例えば、一定量のデータを蓄積してパケット化するためのバッファリング遅延と、パケット化したデータを伝送するための遅延とが含まれる。一般に前者の遅延は固定遅延と捉えることができるが、後者の遅延は固定遅延ではなく、使用するバスの状態に依存する。
ある時間フレームの音声信号について、音声再生装置100が送信装置200へと音声信号の伝送に係る処理を開始するタイミングを基準時間T0とすると、第3の構成に係る伝送遅延は、下記の数式2で表される。ここで、数式2に示すように、第3の構成に係る伝送遅延は、音声再生装置100におけるN番目の時間フレームの音声信号に係る伝送処理の開始(基準時間T0に相当)から、受信装置300における音声出力装置400への伝送開始までの間で定義される。よって、第3の構成では、固定遅延が実現される。
(Tframe×α)+T4−T0
・・・(数式2)
第3の構成では、基準時間T0〜時間T1の間の時間が、音声再生装置100から送信装置200への音声信号の伝送時間として確保される。ここで、音声再生装置100と送信装置200とは有線で接続されるので、伝送に係る処理時間にばらつきが発生するとしても、再送やエラー訂正による遅延は通常考慮しなくてもよい。よって、第3の構成に係る基準時間T0〜時間T1の間の時間は、上記伝送に係る処理のばらつきを吸収できる時間が確保されればよい。
第3の構成に係る音声信号伝送システム1000は、第1の構成(または第2の構成)に係る音声信号伝送システム1000と同様の構成を有する。したがって、第3の構成に係る音声信号伝送システム1000は、第1の構成(または第2の構成)に係る音声信号伝送システム1000と同様に、伝送遅延が一定ではない無線伝送処理を使用しながら、固定の伝送遅延により各音声出力装置400へ時間フレームごとの音声信号を伝送することができる。
本発明の実施形態に係る音声信号伝送システム1000は、例えば上記第1の構成〜第3の構成によって、音声信号の伝送に係る固定遅延を実現することができる。よって、例えば上記第1の構成〜第3の構成によって、上述した固定伝送遅延実現アプローチが実現される。
[音声信号伝送システム1000の構成の具体例]
次に、本発明の実施形態に係る音声信号伝送システム1000の構成について、より具体的に説明する。以下では、上述した第1の構成〜第3の構成のうち、第3の構成を例に挙げて説明する。また、以下では、音声信号伝送システム1000を構成しうる1または2以上の受信装置300および音声出力装置400のうち、1つの受信装置300と1つの音声出力装置400を例に挙げて説明する。
図2、図3は、本発明の実施形態に係る音声信号伝送システム1000の構成を説明するための説明図である。ここで、図2は、音声再生装置100および送信装置200の構成の一例を示しており、また、図3は、受信装置300および音声出力装置400の構成の一例を示している。
また、図4は、本発明の実施形態に係る音声信号伝送システム1000を構成する音声再生装置100、送信装置200、受信装置300、および音声出力装置400のハードウェア構成の一例を示す説明図である。なお、図4では、音声再生装置100が音声出力装置500と有線でさらに接続され、音声再生装置100がさらに音声出力装置500へ音声信号を伝送する構成を示している。つまり、図4は、音声信号伝送システム1000が上記混在システムである場合における構成の一例を示している。ここで、音声出力装置500は、例えば、マルチチャネルオーディオシステムにおけるフロントスピーカに相当する。
以下、図2〜図4を適宜参照して、音声再生装置100、送信装置200、受信装置300、および音声出力装置400それぞれの構成について説明する。
〔音声再生装置100〕
図2を参照すると、音声再生装置100は、再生部102と、記憶部104と、通信部106と、通信制御部108とを備える。
また、音声再生装置100は、例えば、制御部(図示せず)や、ROM(Read Only Memory;図示せず)、RAM(Random Access Memory;図示せず)、ユーザが操作可能な操作部(図示せず)、各種画面を表示画面に表示する表示部(図示せず)などを備えていてもよい。音声再生装置100は、例えば、データの伝送路としてのバス(bus)により上記各構成要素間を接続する。
ここで、制御部(図示せず)は、例えば、MPU(Micro Processing Unit)や、各種処理回路などで構成され音声再生装置100全体を制御する。また、制御部(図示せず)は、例えば、再生部102および通信制御部108としての役目を果たすこともできる。
ROM(図示せず)は、制御部(図示せず)が使用するプログラムや演算パラメータなどの制御用データを記憶する。RAM(図示せず)は、制御部(図示せず)により実行されるプログラムなどを一次記憶する。
操作部(図示せず)としては、例えば、ボタンや、方向キー、あるいは、これらの組み合わせなどが挙げられるが、上記に限られない。また、表示部(図示せず)としては、例えば、液晶ディスプレイや有機ELディスプレイが挙げられるが、上記に限られない。また、音声再生装置100は、音声再生装置100の外部装置としての操作入力デバイス(例えば、キーボードやマウスなど)や表示デバイスと接続されてもよい。
再生部102は、音声データを再生して再生処理に応じて生成された音声信号を記憶部104へ伝達して、音声データを記憶部104に記憶させる。通信部106は、記憶部104に記憶された音声信号を送信装置200へ送信する。
通信制御部108は、通信部106における音声信号の送信を制御する。具体的には、通信制御部108は、記憶部104に記憶された音声データを読み出して通信部106へ伝達し、当該音声データを通信部106に送信させる。また、通信制御部108は、例えば定期的(非定期でもよい。)に自装置の時間情報をタイムスタンプ情報として通信部106に送信させる。タイムスタンプ情報が送信装置200へと送信されることによって、音声信号伝送システム1000では、音声再生装置100の時間と送信装置200の時間との同期と、音声再生装置100と送信装置200とにおける音声信号の位相の同期(すなわち、時間フレームの共有)とが図られる。
音声再生装置100は、例えば図2に示す構成によって、音声信号を生成して生成された音声信号を送信装置200へ送信する。次に、図4を参照して音声再生装置100の構成についてより具体的に説明する。
オーディオ・デコーダ150は、例えば、音声データから非圧縮のリニアPCMフォーマットの音声信号を生成する。ここで、オーディオ・デコーダ150が処理する音声データとしては、例えば、DVDディスクなどの光ディスクや、ハードディスク(Hard Disk)などの磁気記録媒体、USB(Universal Serial Bus)メモリなどの様々な記録媒体から取得された音声データや、チューナや外部入力端子などを介して取得された音声データが挙げられる。
オーディオ・デコーダ150により生成された音声信号(音声データ)のうち、音声出力装置500から出力させる音声信号は、FIFOメモリ160を経由して遅延量を設定可能な遅延回路162へ伝達される。ここで、遅延回路162の遅延量は、本発明の実施形態に係る音声信号の伝送に係る固定遅延に相当する量が設定される。上記によって、音声信号伝送システム1000では、有線により音声信号が伝送される音声出力装置500から出力される音声と、無線を介して音声信号が伝送される音声出力装置400から出力される音声とが同期することとなる。
また、オーディオ・デコーダ150により生成された音声信号(音声データ)のうち、音声出力装置500から出力させる音声信号は、FIFOメモリ152を経由してUSBホスト回路154へ伝達される。そして、USBホスト回路154は、音声信号を有線で接続された送信装置200へ送信する。
ここで、音声再生装置100は、音声信号を所定のサイズのパケットの形式で送信装置200へ送信する。例えば、USB Audioクラスが用いられる場合、1[ms]あたり192[Byte]のデータがIsochronousパケットで送信される(16[bit] 48[kHz] sampling stereo 2chの場合)。ここで、USBを用いた転送には、“Isochronous”、“Interrupt”、“Control”、“Bulk”の4種類があるが、音声信号の伝送用としては、例えば、“Isochronous”または“Bulk”が使用される。また、USB2.0が用いられる場合、1[ms]がフレームという単位となっており、1フレームは、124[μs]のマイクロフレーム8個から構成される。
ここで、Bulk転送はBest Effort転送であり、バスが空いている場合は待ち時間なく高速伝送されるが、他の転送が行われている場合や転送待ちになっている場合は順番待ち状態となってしまう。したがって、Bulk転送が用いられる場合には、転送処理遅延を予め知ることはできない。また、Isochronous転送は予めマイクロフレームごとに一定の帯域が確保され、確保された帯域で転送が行われる。しかしながら、Isochronous転送では、転送開始時にどのマイクロフレームを使用するかや、マイクロフレーム内での転送タイミングなどは規定されていない。したがって、Bulk転送、またはIsochronous転送のいずれを用いる場合も伝送遅延にばらつきが生じうる。
そこで、音声再生装置100は、マスタ・クロック156と、タイムベース・コントローラ158を備える。マスタ・クロック156は、音声データの再生を行う際の基準クロックを提供する。また、タイムベース・コントローラ158は、音声信号の伝送のための音声信号の時間フレームを管理する。
タイムベース・コントローラ158は、各時間フレームの音声信号それぞれについて、時間フレームの起点から時間T0が経過したときをトリガとして、FIFOメモリ152からUSBホスト回路154へと音声信号を伝達させる。例えばある音声信号の時間フレームを8[ms]とすると、16[bit] 48[kHz] samplingでは192[byte]の音声信号の伝達が8回行われる。
USBホスト回路154は、上記のように伝達された音声信号を順次送信装置200へと送信する。ここで、音声再生装置100と送信装置200とがUSBで接続されている場合には伝送遅延にばらつきが生じうるが、上述したように送信装置200において時間T1が設定されることによって、当該ばらつきの影響は吸収される。
タイムベース・コントローラ158は、例えば定期的にマスタ・クロック156の値をタイムスタンプ情報としてUSBホスト回路154に送信させる。タイムベース・コントローラ158がタイムスタンプ情報を送信させることによって、送信装置200のマスタ・クロック258はマスタ・クロック156と同期し、また、音声再生装置100と送信装置200とは音声信号の時間フレームを共有することができる。
音声再生装置100は、例えば図4に示す構成によって、音声信号を生成して生成された音声信号を送信装置200、および音声出力装置500それぞれへ送信することができる。
〔送信装置200〕
図2を参照すると、送信装置200は、第1通信部202と、誤り訂正符号付加部204と、記憶部206と、第2通信部208と、同期部210(送信側同期部)と、送信制御部212とを備える。
また、送信装置200は、例えば、制御部(図示せず)や、ROM(図示せず)、RAM(図示せず)などを備えていてもよい。送信装置200は、例えば、データの伝送路としてのバスにより上記各構成要素間を接続する。
ここで、制御部(図示せず)は、例えば、MPUや、各種処理回路などで構成され送信装置200全体を制御する。また、制御部(図示せず)は、例えば、誤り訂正符号付加部204および送信制御部212としての役目を果たすこともできる。
ROM(図示せず)は、制御部(図示せず)が使用するプログラムや演算パラメータなどの制御用データを記憶する。RAM(図示せず)は、制御部(図示せず)により実行されるプログラムなどを一次記憶する。
第1通信部202は、送信装置200が備える第1の通信手段であり、音声再生装置100と通信を行う役目を果たす。第1通信部202は、受信した音声信号を誤り訂正符号付加部204へ伝達し、また、受信したタイムスタンプ情報を同期部210へ伝達する。
誤り訂正符号付加部204は、第1通信部202から伝達される音声信号に対して、時間フレームごとに誤り訂正データを付加する。ここで、誤り訂正データとしては、例えばFEC用のパリティデータが挙げられる。また、誤り訂正符号付加部204は、処理後の音声信号をバッファとしての役目を果たす記憶部206へ伝達し、記憶部206に音声信号を記憶させる。
第2通信部208は、送信装置200が備える第2の通信手段であり、各受信装置300と無線で通信を行う役目を果たす。第2通信部208は、記憶部206に記憶された音声信号を、1または2以上のチャネルを用いて送信する。
同期部210は、第1通信部202が受信したタイムスタンプ情報に基づいて自装置の時間を音声再生装置100と同期させ、また、音声再生装置100との間において音声信号の時間フレームを共有させる。なお、図4では、同期部210がマスタ・クロック256で構成される例を示しているが、上記に限られない。例えば、図4に示すマスタ・クロック256およびタイムベース・コントローラ258が同期部210としての役目を果たしてもよい。
送信制御部212は、第2通信部208における各種信号の送信を制御する。より具体的には、送信制御部212は、記憶部206に記憶された音声データを読み出して第2通信部208へ伝達し、当該音声データを第2通信部208に送信させる。また、送信制御部212は、例えば定期的(非定期でもよい。)に同期信号を含むビーコンを第2通信部208に送信させる。同期信号を含むビーコンが送信装置200へと送信されることによって、音声信号伝送システム1000では、送信装置200の時間と受信装置300の時間との同期と、送信装置200と受信装置300とにおける音声信号の位相の同期(すなわち、時間フレームの共有)とが図られる。
送信装置200は、例えば図2に示す構成によって、音声再生装置100が生成した音声信号を各受信装置300へ無線で送信する。次に、図4を参照して送信装置200の構成についてより具体的に説明する。ここで、図4では、送信装置200が、IEEE802.11に準拠した無線LANにて音声信号などの各種信号を無線で送信する場合の構成の一例を示している。なお、本発明の実施形態に係る送信装置200が、無線LANに限られず、他の無線通信方式を用いて各受信装置300と無線通信が可能であることは、言うまでもない。
音声再生装置100からUSB転送された音声信号やタイムスタンプ情報などのデータは、USBファンクション・コントローラ250で受信される。また、USBファンクション・コントローラ250により受信された音声信号は、バッファメモリ252に保持される。ここで、一般にUSB転送のときのパケットサイズと無線伝送する際のパケットサイズは異なることもあり、受信された音声信号は、バッファメモリ252に保持される。
また、FECエンコーダ254は、USBファンクション・コントローラ250で受信された複数のパケット(音声信号)に対する冗長パケット(誤り訂正データ)を生成し、生成した冗長パケットを当該複数のパケットに付加する。なお、本発明の実施形態に係る送信装置200では、FECエンコーダ254が生成した冗長パケットの付加を他の構成要素が行ってもよい。
送信装置200では、上述したようにUSBファンクション・コントローラ250により受信されたタイムスタンプ情報によって、マスタ・クロック256が音声生成装置100と同期している。また、送信装置200では、上記タイムスタンプ情報によって、タイムベース・コントローラ258は、音声再生装置100と音声信号の時間フレームを共有する。タイムベース・コントローラ258は、バッファメモリ252に記憶された各時間フレームに対応する音声信号(音声パケット)および冗長パケットを、各時間フレームの基準時間T0から時間T1が経過したときに無線伝送が開始されるように、無線LAN回路260へ転送させる。
無線LAN回路260は、WLAN Phy/Macや、インタフェース回路、WLAN Phy/Macが送受信するパケットの構築、分解、データのバッファリングを行う回路などで構成される。なお、図4では、無線LAN回路260をWLAN Phy/Macと示している。また、無線LAN回路260は、上記各機能を実現するためのCPU(Central Processing Unit)(ネットワークプロセッサとよばれる場合もある。)で構成されてもよい。上記の場合には、上記各機能のうちの多くの機能は、例えばファームウェアを上記CPUが実行することにより実現される。
ここで、IEEE802.11ではCSMA(Carrier Sense Multiple Access)とよばれるキャリアセンスベースのアクセスが採用されている。CSMAにおけるキャリアセンスベースのアクセスでは、他の通信装置などが送信中でなければすぐに信号を送信することができるが、そうでなければ当該通信装置の送信終了を待たねばならない。つまり、送信装置200が通信方式としてIEEE802.11を用いる場合には、無線通信における伝送遅延は一定になるとは限らない。また、IEEE802.11を用いる場合、伝送エラーが発生したときには、再送処理が行われる。
そこで、音声信号伝送システム1000では、上述したように、各受信装置300が、各時間フレームの音声信号それぞれについて対応する基準時間T0から時間T2で上記再送処理を打ち切る。そして、各受信装置300は、送信装置200が送信する冗長パケット(誤り訂正データ)を用いてエラー訂正処理を行う。なお、以下では、送信装置200が送信する音声信号に誤り訂正データが含まれるものとして説明する。
送信装置200は、例えば図4に示す構成によって、例えば音声再生装置100が生成した音声信号などの各種信号を各受信装置300へ無線で送信する。
〔受信装置300〕
図3を参照すると、受信装置300は、第1通信部302と、誤り訂正部304と、補間部306と、記憶部308と、第2通信部310と、同期部312と、送信制御部314とを備える。
また、受信装置300は、例えば、制御部(図示せず)や、ROM(図示せず)、RAM(図示せず)などを備えていてもよい。受信装置300は、例えば、データの伝送路としてのバスにより上記各構成要素間を接続する。
ここで、制御部(図示せず)は、例えば、MPUや、各種処理回路などで構成され受信装置300全体を制御する。また、制御部(図示せず)は、例えば、誤り訂正符号部304、補間部306、および送信制御部314としての役目を果たすこともできる。
ROM(図示せず)は、制御部(図示せず)が使用するプログラムや演算パラメータなどの制御用データを記憶する。RAM(図示せず)は、制御部(図示せず)により実行されるプログラムなどを一次記憶する。
第1通信部302は、受信装置300が備える第1の通信手段であり、送信装置200と無線で通信を行う役目を果たす。第1通信部302は、受信した音声信号を誤り訂正部304へ伝達し、また、受信した同期信号を同期部312へ伝達する。
誤り訂正部304は、第1通信部302が受信した音声信号に含まれる誤り訂正データに基づいて、受信された音声信号を復元する。
また、誤り訂正部304における処理は、送信制御部314により制御される。より具体的には、送信制御部314は、例えば、受信された各時間フレームの音声信号について、音声信号に対応する基準時間T0から時間T2(第3時間)が経過したときに、当該音声信号に対する処理を誤り訂正部304に行わせる。また、送信制御部314は、上記時間T2の経過後には、時間T2が経過するまでに受信されていない音声信号が消失音声信号(パケットロス)であるとして、時間T2経過後に受信された音声信号に対する処理を誤り訂正部304に行わせない。上記によって、受信装置300では、各時間フレームの音声信号について、対応する基準時間T0から時間T2で再送処理が打ち切られることとなる。
補間部306は、第1通信部302により受信された時間フレームごとの音声信号それぞれに対して選択的に補間処理を行い、選択的に補間された音声信号を記憶部308に記憶させる。より具体的には、補間部306は、例えば、消失音声信号(パケットロス)が発生した場合に、前データをコピーしたり、前後のデータの補間値を生成するといった補間処理を行い、補間処理後の音声信号を記憶部308に伝達して記憶させる。また、補間部306は、例えば、消失音声信号(パケットロス)が発生していない場合には、補間処理を行わずに入力された音声信号を記憶部308に伝達して記憶させる。なお、受信装置300における記憶部308への音声信号(音声データ)の記録は、補間部306が行ってもよいし、例えば、制御部(図示せず)や送信制御部314など他の構成要素が行うこともできる。
また、補間部306における処理は、送信制御部314により制御される。より具体的には、送信制御部314は、例えば、受信された各時間フレームの音声信号について、音声信号に対応する基準時間T0から時間T3(第2時間)が経過したときに、当該音声信号を補間部306へ入力させ、補間部306に選択的な処理を行わせる。また、送信制御部314は、例えば、時間T3(第2時間)が経過るまでに受信されていない音声信号がある場合には、消失音声信号(パケットロス)であるとして当該音声信号を補間部306へ入力させない。上記によって、受信装置300は、補間処理を行う時間を確保した上で、音声信号伝送システム1000における音声信号の伝送遅延を固定遅延とすることができる。
記憶部308は、第1通信部302が受信した音声信号(音声データ)を記憶する。また、記憶部308は、第1通信部302側と第2通信部310側とにおけるクロック乗り換えのために備えられる。ここで、記憶部308としては、例えばFIFOメモリが挙げられる。
また、記憶部308からの記憶された音声信号の読み出しは、送信制御部314により制御される。より具体的には、送信制御部314は、各時間フレームの基準時間T0から時間T4が経過したときに第2通信部310から音声出力装置400へと音声信号の伝送が開始されるように、記憶部308から音声信号を読み出して第2通信部310へ伝達する。
第2通信部310は、受信装置300が備える第2の通信手段であり、送信装置200と無線で通信を行う役目を果たす。第2通信部310は、記憶部308に記憶された音声信号を有線で接続された音声出力装置400へ送信する。
同期部312は、第1通信部302が受信した同期信号に基づいて自装置の時間を音声再生装置100と同期させ、また、送信装置200との間において音声信号の時間フレームを共有させる。なお、図4では、同期部312がマスタ・クロック358で構成される例を示しているが、上記に限られない。例えば、図4に示すマスタ・クロック358およびタイムベース・コントローラ360が同期部312としての役目を果たしてもよい。
送信制御部314は、第2通信部310における音声信号の送信を制御する。より具体的には、送信制御部314は、各時間フレームの音声信号について、対応する基準時間T0から時間T4(第1時間)が経過するときに第2通信部310から音声信号が出力されるように、記憶部308に記憶された音声データを読み出して第2通信部310へ伝達する。送信制御部314が上記のように第2通信部310における音声信号の送信を制御することによって、音声信号伝送システム1000における音声信号の伝送遅延を固定遅延とすることが実現される。
受信装置300は、例えば図3に示す構成によって、送信装置200から送信された時間フレームごとの音声信号を、対応する基準時間T0から時間T4(第1時間)が経過したときに、有線で接続さえた音声出力装置400へ送信する。次に、図4を参照して受信装置300の構成についてより具体的に説明する。ここで、図4では、受信装置300が、IEEE802.11に準拠した無線LANにて、送信装置200から送信された音声信号などの各種信号を無線で受信する場合の構成の一例を示している。なお、本発明の実施形態に係る受信装置300が、無線LANに限られず、他の無線通信方式を用いて受信装置300と無線通信が可能であることは、言うまでもない。
無線LAN回路350は、送信装置200から送信された音声信号やビーコンなどの各種信号を受信する。そして、無線LAN回路350は、受信された音声信号をバッファメモリ352へ保持させ、また、同期信号(図4ではTSF(Timing Synchronization function)と示している。)をマスタ・クロック312へ伝達する。ここで、無線LAN回路350は、送信装置200の無線LAN回路260と対応する構成を有する。なお、使用されるインタフェースやエラー訂正機能など、ネットワークプロセッサとしての機能に係る仕様が異なっていてもよい。
FECデコーダ352は、例えば、無線LAN回路350により受信されたパケットがパケットエラーであったり、何らかの原因で未受信であった場合に、冗長パケット(誤り訂正データ)を用いて当該パケットを復元する。ここで、FECデコーダ352における処理を、例えば、ネットワークプロセッサとしてのCPUで行う場合には、処理遅延にばらつきが生じうる。
補間回路356は、FECデコーダ352を用いても訂正ができなかったパケットがあった場合、または何らかの原因により受信できなかったパケットがあった場合に、前後の音声信号を用いて補間する。
また、FECデコーダ352と補間回路356とは、マスタ・クロック358が生成するクロック信号に応じて処理を行うタイムベース・コントローラ360によって、動作開始タイミングなどが制御される。ここで、受信装置300では、無線LAN回路350が受信した同期信号によって、マスタ・クロック358が送信装置200と同期している。また、受信装置300では、上記同期信号によって、タイムベース・コントローラ360は、送信装置200と音声信号の時間フレームを共有する。よって、受信装置300は、各時間フレームの音声信号について、対応する基準時間から所定の時間(時間T2、時間T3)が経過したときを用いて、動作開始タイミングなどを制御することができる。
FIFOメモリ362は、送信装置200との無線通信に係る無線LAN回路350側と、音声出力装置400との有線通信に係るシリアルインタフェース回路364(図4では、I2Sバスに対応する構成を示している。)側のクロック乗り換えのために備えられる。FIFOメモリ362からの音声信号(音声データ)の読み出しのタイミング、およびシリアルインタフェース回路364からの音声信号の送信のタイミングは、タイムベース・コントローラ360により制御される。より具体的には、タイムベース・コントローラ360は、各時間フレームの音声信号について、対応する基準時間T0から所定の時間T4(第1時間)が経過したときにシリアルインタフェース回路364から音声出力装置400へ音声信号を送信させる。
受信装置300は、例えば図4に示す構成によって、各時間フレームの音声信号について、対応する基準時間T0から所定の時間T4(第1時間)が経過したときに、音声信号を音声出力装置400へ伝送することができる。したがって、音声信号伝送システム1000における音声信号の無線伝送は、固定遅延となる。
〔音声出力装置400〕
図3を参照すると、音声出力装置400は、受信部402と、処理部404と、音声出力部406とを備える。
受信部402は、音声出力装置400が備える音声信号の受信手段であり、有線で接続された受信装置300から送信される音声信号を受信する。処理部404は、例えば、受信部402が受信した音声信号(音声データ)のアナログ信号への変換や、増幅など、受信部402が受信した音声信号に対して様々な処理を行う。音声出力部406は、例えばスピーカなどの音声出力デバイスで構成され、処理部404が処理した音声信号(アナログ信号)に応じた音声を出力する。
音声出力装置400は、例えば図3に示す構成によって、受信装置300から送信される音声信号に応じた音声を出力する。次に、図4を参照して音声出力装置400の構成についてより具体的に説明する。
シリアルインタフェース回路450(図4では、I2Sバスに対応する構成を示している。)は、受信された音声信号を左右などのチャネルに分離させる(ステレオの音声信号の場合)。また、シリアルインタフェース回路450により分離された音声信号は、それぞれD/Aコンバータ(Digital to Analog converter)452に入力され、アナログ信号に変換される。D/Aコンバータ452から出力されるアナログ信号はアンプ回路454で増幅され、増幅された音声信号によりスピーカ456が駆動する。
音声出力装置400は、例えば図4に示す構成により、有線で接続された受信装置300から送信される音声信号に応じた音声を出力することができる。
本発明の実施形態に係る音声信号伝送システム1000は、図2〜図4に示す構成を有する音声再生装置100、送信装置200、受信装置300、および音声出力装置400を有することによって、音声信号を無線伝送する場合における伝送遅延を固定遅延とする。
[音声信号伝送システム1000における動作の具体例]
次に、音声信号伝送システム1000の動作について説明する。以下では、音声信号伝送システム1000を構成する音声再生装置100、送信装置200、および受信装置300が図4に示す構成を有する場合を例に挙げて説明する。また、以下では、音声信号伝送システム1000の動作の一例をタイミングチャート(図5、図6)と、シーケンス図(図7)を用いて説明する。
図5、図6は、本発明の実施形態に係る音声信号伝送システム1000の動作の一例を説明するためのタイミングチャートである。ここで、図5は、音声信号伝送システム1000におけるN番目の時間フレームに対応する音声信号の伝送動作の一例を示している。また、図6は、音声信号伝送システム1000における、N番目の時間フレーム以降の各時間フレームにおける音声信号の伝送動作(連続伝送動作)の一例を示している。
また、図5、図6に示す符号A〜Gは、図4に示す同符号の箇所を示しており、図5、図6では、音声信号を無線で伝送するひとまとまりの音声信号(音声データ)に対応する時間を、1時間フレームとして示している。以下、N番目の時間フレームの音声信号の伝送を例に挙げて、音声信号伝送システム1000の動作の一例について説明する。
音声再生装置100では、基準時間T0にN番目の時間フレームの音声信号の伝送が開始される。例えば、1時間フレームが8[ms]であるとすると、音声再生装置100から送信装置200へのUSB転送では、1[ms]ごとに8回の伝送が行われる。
送信装置200は、基準時間T0から時間T1が経過したときに音声再生装置100から伝送された音声信号の無線伝送を開始する。送信装置200から受信装置300への音声信号の無線伝送は、再送処理を含め基準時間T0から時間T2(第3時間)が経過するまでに行われ、時間T2が経過したときに未到達の音声信号は、受信装置300において消失音声信号(パケットロス)として処理される。
受信装置300は、必要に応じて誤り訂正処理(FEC処理)を行い、基準時間T0から時間T3が経過したときに、補間処理およびFIFOメモリ362への書込みを開始する。なお、本発明の実施形態に係る受信装置300は、時間T2が経過してから時間T3が経過するまでに誤り訂正処理および補間処理を行い、時間T3が経過したときに、FIFOメモリ362への書込みを開始してもよい。
そして、受信装置300は、基準時間T0から時間T4が経過したときに、送信装置200から送信された音声信号を、有線で接続された音声出力装置400へ送信する。よって、音声信号伝送システム1000では、基準時間T0から時間T4までの時間が、音声信号の伝送における固有遅延(固有伝送遅延)となる。
図7は、本発明の実施形態に係る音声信号伝送システム1000の動作の一例を説明するためのシーケンス図である。ここで、図7は、図6と同様に、音声信号伝送システム1000における、N番目の時間フレーム以降の各時間フレームにおける音声信号の伝送動作(連続伝送動作)の一例を示している。
N番目の時間フレームにおける基準時間T0_Nにおいて、音声再生装置100は、生成したN番目の時間フレームの音声信号の、送信装置200への伝送を開始する。音声再生装置100は、音声信号をパケット単位で送信し(S100、S104、…)、送信装置200は、パケットを受信するごとに応答を行う(S102、S106、…)。
また、音声再生装置100は、N+1番目の時間フレームにおける基準時間T0_N+1において、音声信号をパケット単位で送信し(S108、S112、…)、送信装置200は、パケットを受信するごとに応答を行う(S110、S114、…)。
送信装置200は、N番目の時間フレームにおける基準時間T0_Nから時間T1_Nが経過したときに、受信したN番目の時間フレームの音声信号を無線で受信装置300へ送信する(S116)。受信装置300は、ステップS116において送信装置200から送信されたN番目の時間フレームの音声信号の受信結果を示す応答を行う(S118)。
ステップS118における応答がエラーを示す場合には、送信装置200は、再度受信したN番目の時間フレームの音声信号を無線で受信装置300へ送信する(S120)。また、受信装置300は、ステップS120において送信装置200から送信されたN番目の時間フレームの音声信号の受信結果を示す応答を行う(S122)。
受信装置300は、N番目の時間フレームにおける基準時間T0_Nから時間T2_N(第3時間)が経過したときに、受信したN番目の時間フレームの音声信号に対する誤り訂正処理を行う(S124)。
音声再生装置100は、N+2番目の時間フレームにおける基準時間T0_N+2において、音声信号をパケット単位で送信し(S126、…)、送信装置200は、パケットを受信するごとに応答を行う(S128、…)。
受信装置300は、N番目の時間フレームにおける基準時間T0_Nから時間T3_N(第2時間)が経過したときに、受信したN番目の時間フレームの音声信号に対する補間処理を行い、FIFOメモリ362に記憶させる(S130)。そして、受信装置300は、N番目の時間フレームにおける基準時間T0_Nから時間T4_N(第1時間)が経過したときに、有線で接続された音声出力装置400へ音声信号を送信する(S132)。
送信装置200は、N+1番目の時間フレームにおける基準時間T0_N+1から時間T1_N+1が経過したときに、受信したN+1番目の時間フレームの音声信号を無線で受信装置300へ送信する(S134)。受信装置300は、ステップS134において送信装置200から送信されたN+番目の時間フレームの音声信号の受信結果を示す応答を行う(S136)。
受信装置300は、N+1番目の時間フレームにおける基準時間T0_N+1から時間T2_N+1(第3時間)が経過したときに、受信したN+1番目の時間フレームの音声信号に対する誤り訂正処理を行う(S138)。
図7に示すように、音声信号伝送システム1000では、音声再生装置100、送信装置200、および受信装置300が、同期した時間フレームを共有することによって、それぞれの装置での処理が全体としてうまく連携して動作することが分かる。
以上のように、本発明の実施形態に係る音声信号伝送システム1000は、音声再生装置100と、音声再生装置100と有線で接続された送信装置200と、1または2以上の受信装置300と、対応する受信装置300と有線で接続された1または2以上の音声出力装置400とを有する。音声信号伝送システム1000では、各時間フレームの音声信号の基準時間T0を基準とし、タイミングマージンを持たせた上で、送信装置200および受信装置300それぞれが行う音声信号の伝送に係る処理期限を設定する。したがって、音声信号伝送システム1000では、各受信装置300から各音声出力装置400への各時間フレームの音声信号の伝送が対応する基準時間T0から所定の時間T4が経過したときに行われるので、音声信号の伝送に係る固定遅延が実現される。
また、音声信号伝送システム1000では、固定遅延が経過したときに各音声出力装置400への音声信号の伝送が行われるので、ユーザが感じる音像の定位のずれの発生が防止される。
また、音声信号伝送システム1000では、ある処理において設定された処理期限に間に合わなかった場合には、当該処理の実行を打ち切る。よって、音声信号伝送システム1000では、途切れのない固定遅延のストリーミング再生が実現される。
また、音声信号伝送システム1000では、例えば、送信装置200から各受信装置300への伝送遅延のばらつきや、ソフトウェア処理による処理遅延のばらつきの合計に基づいて固定遅延が設定される。よって、音声信号伝送システム1000では、個々の伝送遅延のばらつきや処理遅延のばらつきを管理する必要はないので、実装の容易化を図ることができる。
また、音声信号伝送システム1000では、従来の技術のように、音声データそのものにTSタイムスタンプなどを付さないので、従来の技術を用いる場合よりも処理の容易化が図られる。
さらに、音声信号伝送システム1000では、受信装置300が、例えばFIFOメモリ362を備え、FIFOメモリ362に受信した音声信号を記憶する構成をとる。よって、受信装置300が上記の構成をよる場合には、大きなメモリを使った長時間のバッファリングが使用されないので、伝搬遅延自体を小さくすることができる。
以上、本発明の実施形態に係る音声信号伝送システム1000を構成する構成要素として音声再生装置100を挙げて説明したが、本発明の実施形態は、かかる形態に限られない。本発明の実施形態は、例えば、テレビジョン放送を受信するテレビ受像機、PC(Personal Computer)や、サーバなどのコンピュータ、携帯電話やPHS(Personal Handyphone System)などの携帯型通信装置、映像/音楽記録再生装置、携帯型ゲーム機など、様々な機器に適用することができる。
また、本発明の実施形態に係る音声信号伝送システム1000を構成する構成要素として送信装置200を挙げて説明したが、本発明の実施形態は、かかる形態に限られない。本発明の実施形態は、例えばワイアレス・トランスミッタなど、信号を無線で送信可能な装置に適用することができる。また、本発明の実施形態に係る送信装置200は、本発明の実施形態に係る音声再生装置100と一体の装置であってもよい。
また、本発明の実施形態に係る音声信号伝送システム1000を構成する構成要素として受信装置300を挙げて説明したが、本発明の実施形態は、かかる形態に限られない。本発明の実施形態は、例えばワイアレス・レシーバなど、送信装置200から無線で送信される信号を受信可能な装置に適用することができる。また、本発明の実施形態に係る受信装置300は、本発明の実施形態に係る音声出力装置400と一体の装置であってもよい。
また、本発明の実施形態に係る音声信号伝送システム1000を構成する構成要素として音声出力装置400を挙げて説明したが、本発明の実施形態は、かかる形態に限られない。本発明の実施形態は、例えば音声出力デバイスなど、音声信号に応じた音声を出力可能な様々な装置に適用することができる。
(本発明の実施形態に係るプログラム)
[送信装置200に係るプログラム]
コンピュータを、本発明の実施形態に係る送信装置として機能させるためのプログラムによって、各時間フレームの音声信号を、対応する基準時間T0から所定の時間T1が経過したときに送信することができる。上記プログラムが用いられることによって、音声信号伝送システム1000では、送信装置200と各受信装置300との間における音声信号の無線伝送において消失音声信号が発生する可能性を低減させることが可能となる。
[受信装置300に係るプログラム]
コンピュータを、本発明の実施形態に係る受信装置として機能させるためのプログラムによって、各時間フレームの音声信号を、対応する基準時間T0から所定の時間T4が経過したときに接続された音声出力装置へ送信することができる。よって、上記プログラムが用いられることによって、音声信号伝送システム1000では、音声信号を無線伝送する場合における伝送遅延を固定遅延とすることが実現される。
以上、添付図面を参照しながら本発明の好適な実施形態について説明したが、本発明は係る例に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
例えば、上記では、コンピュータを、本発明の実施形態に係る送信装置、受信装置それぞれとして機能させるためのプログラム(コンピュータプログラム)が提供されることを示したが、本発明の実施形態は、さらに、上記プログラムをそれぞれ記憶させた記憶媒体も併せて提供することができる。
上述した構成は、本発明の実施形態の一例を示すものであり、当然に、本発明の技術的範囲に属するものである。