(57)【要約】バッファ管理システム（１００）は、データ通信システムにおいて、入力端から出力端までのデータユニット（１５０）のエンド・ツー・エンド遅延（Δ）を制御するために配置される。データユニット（１５０，１５２）のブロック（１０４，１０６）は、バッファ（１０２）内にブロック書込み速度（Ｒｒ）で書込まれ、データユニット（１５０，１５２）はこのバッファ（１０２）から読取り速度（Ｒｒ）で読取られる。エンド・ツー・エンド遅延（Δ）は、バッファ（１０２）からの読取り速度（Ｒｒ）、従ってバッファの充填量（F）を、バッファ管理システム（１００）における様々な遅延測定値に基づいて適合させることにより制御される。読取り速度（Ｒｒ）を計算するためには、少なくともバッファ管理システム（１００）にデータユニット（１５０）が入力される入力時間瞬時の入力時間測定値(ｍＴａ)を必要とする。
2007501428.tif 000002
【特許請求の範囲】
【請求項１】
データ通信システムにおけるバッファ管理システム（１００）の入力と、該バッファ管理システム（１００）からの出力との間のデータユニット（１５０）の遅延（Δ）を制御するためのバッファ管理システム（１００）であって：
-  入力されたデータユニット（１５０，１５２）のブロック（１０４，１０６）がブロック書込み速度（Ｒｗ）で書込まれ、且つデータユニット（１５４，１５６）が読取り速度（Ｒｒ）で読取られるバッファ（１０２）と；
-  或る特定時間瞬時（Ｔ１）におけるバッファ（１０２）内のデータユニットの量（Ｆ）を求めて、充填量測定値（ｍF）を出力すべく構成したバッファ充填量測定コンポーネント（１１０）と；
-  読取り速度（Ｒｒ）と書込み速度（Ｒｗ）との比率を充填量測定値（ｍF）に基づいて設定すべく構成したデータ転送速度変換コンポーネント（１０８）と；
を具えているバッファ管理システムにおいて、当該バッファ管理システム（１００）が：
-  該バッファ管理システムにデータユニット（１５０）が入力される入力時間瞬時（Ｔａ）を測定して、入力時間測定値（ｍTa）を出力すべく構成した入力時間測定コンポーネント；及び
-  充填量測定値（ｍF）と入力時間測定値（ｍTa）とに基づいてデータ転送速度変換コンポーネント（１０８）を制御することにより前記遅延（Δ）を制御するための遅延制御コンポーネント（１２０）；
を具えていることを特徴とするバッファ管理システム。
【請求項２】
第１データユニット（１５４）の読取り時間瞬時（Ｔｒ）を測定して、その読取り時間測定値（ｍＴｒ）を出力すべく構成した読取り時間測定コンポーネント（１６０）を具え、且つバッファ管理システム（１００）における遅延制御コンポーネント（１２０）は、前記読取り時間測定値（ｍＴｒ）に基づいてデータ転送速度変換コンポーネント（１０８）を制御すべく構成される、請求項１に記載のバッファ管理システム。
【請求項３】
前記データ転送速度変換コンポーネント（１０８）は電圧制御発振器を具えている、請求項１又は２に記載のバッファ管理システム。
【請求項４】
前記データ転送速度変換コンポーネント（１０８）は、第１個数のサンプル（１４０）から第２個数のサンプル（１４２）を発生すべく構成されたサンプル速度変換器（５１４）を具えている、請求項１又は２に記載のバッファ管理システム。
【請求項５】
前記バッファ管理システムが圧縮解除装置（５１２）を具え、前記遅延制御コンポーネント（１２０）は、圧縮解除に関連する圧縮解除遅延及び/又は第２バッファ（５０６）内のデータユニットの量（Ｗ）に基づいて前記データ転送速度変換コンポーネント（１０８）を制御すべく構成される、請求項１に記載のバッファ管理システム。
【請求項６】
請求項１に記載のバッファ管理システム（１００）に接続される出力端（５０３）を有する無線受信コンポーネント（５０２）を具えている、ディジタルオーディオ受信機（５００）。
【請求項７】
出力端がヘッドホンのスピーカに接続される、請求項６に記載のディジタルオーディオ受信機（５００）を具えているヘッドホン（５３０）。
【請求項８】
出力端がキャビネット内のスピーカ（５２８）に接続される、請求項６に記載のディジタルオーディオ受信機（５００）を具えているスタンド−アローン式のサラウンド音響スピーカキャビネット（５４０）。
【請求項９】
データ通信システムにおけるディジタルオーディオ受信機（５００）の入力と、該ディジタルオーディオ受信機（５００）からの出力との間のデータユニット（１５０）の遅延（Δ）を制御する方法であって：
-  入力されたデータユニット（１５０，１５２）のブロック（１０４，１０６）をブロック書込み速度（Ｒｒ）でバッファ（１０２）に書込み；
-  或る特定時間瞬時（Ｔ１）におけるバッファ（１０２）内のデータユニットの量（Ｆ）である充填量測定値（ｍF）を求め；
-  該充填量測定値（ｍF）に基づいて読取り速度（Ｒｒ）と書込み速度（Ｒｗ）との比を設定し；且つ
-  前記バッファ（１０２）からデータユニット（１５４，１５６）を前記読取り速度（Ｒｒ）で読取るようにして、データ通信システムにおけるデータユニットの遅延を制御方法において、
-  前記ディジタルオーディオ受信機（５００）にデータユニット（１５０）が入力される入力時間瞬時（Ｔａ）の入力時間測定（ｍＴａ）を行ない；且つ
-  前記読取り速度（Ｒｒ）と書込み速度（Ｒｗ）との比を、入力時間測定値（ｍTa）にも基づいて設定することにより前記遅延（Δ）を制御することを特徴とするデータ通信システムにおけるデータユニットの遅延制御方法。
【請求項１０】
請求項９に記載の方法をプロセッサに実行させることができるコンピュータプログラムプロダクト。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ通信システムにおけるバッファ管理システムの入力と、該バッファ管理システムの出力との間のデータユニットの遅延を制御するためのバッファ管理システムであって：
-  入力されたデータユニットのブロックがブロック書込み速度で書込まれ、且つデータユニットが読取り速度で読取られるバッファと；
-  或る特定時間瞬時におけるバッファ内のデータユニットの量を求めて、充填量測定値を出力すべく構成したバッファ充填量測定コンポーネントと；
-  読取り速度と書込み速度との比率を充填量測定値に基づいて設定すべく構成したデータ転送速度変換コンポーネントと；
を具えているバッファ管理システムに関する。
【０００２】
本発明は、このようなバッファ管理システムに接続される出力端を有する無線受信コンポーネントを具えている、ディジタルオーディオ受信機にも関する。
【０００３】
本発明は、このようなディジタルオーディオ受信機を具え、該ディジタルオーディオ受信機の出力端がヘッドホンのスピーカに接続される、ヘッドホンにも関する。
【０００４】
本発明は、ディジタルオーディオ受信機を具え、該ディジタルオーディオ受信機の出力端がキャビネット内のスピーカに接続される、スタンド−アローン式のサラウンド音響スピーカキャビネットにも関する。
【０００５】
本発明は、データ通信システムにおけるディジタルオーディオ受信機の入力と、該ディジタルオーディオ受信機の出力との間のデータユニットの遅延を制御する方法であって：
-  入力されたデータユニットのブロックをブロック書込み速度でバッファに
書込み；
-  或る特定時間瞬時における前記バッファ内のデータユニットの量である充填量測定値を求め；
-  該充填量測定値に基づいて読取り速度と書込み速度との比を設定し；且つ
-  前記バッファからのデータユニットを前記読取り速度で読取る；
データ通信システムにおけるデータユニットの遅延制御方法にも関する。
【０００６】
本発明は、このような方法をプロセッサに実行させることがコンピュータプログラムプロダクトにも関する。
【背景技術】
【０００７】
上述したようなバッファ管理システムの一例は国際特許出願WO99/35876から既知である。この既知のシステムは、パルス符号変調した（ＰＣＭ）オーディオデータをストリーム化するのに有効な非同期転送モード（ＡＴＭ）ネットワークの一部である。特にこの文献には、移動通信用交換機（ＭＳＣ）と送受信基地局（ＢＴＳ）（これは、典型的にはワイヤレスデータを携帯電話に送るローカル局である）との間のリンクについて記載されている。このようなシステムは、オーディオデータをストリーム化するのに用いることができ、これは、オーディオファイルを完全にダウンロードし終わる前に、オーディオデータのプレイを開始して、数分間の待機をなくすことを意味する。データユニットのブロック（上記既知の文献では、セルと称している）は、ネットワークリンクに転送する前に、第1クロックclk_1によって決められたブロック書込み速度にて第1バッファに書込まれる。ブロックは第2クロックロックclk_2によって決められた読取り速度でネットワークから出力される。システム全体は２つのバッファからなり、ネットワークリンクにおいては、これらのバッファは単一のバッファとして取り扱われる。clk_2がclk_1よりも遅い場合、バッファのサイズは限られていることからして、バッファは一杯になり始める。従って、データがある時点で失われるため、オーディオ品質が低下することになる。同様に、clk_2が早すぎる場合には、バッファのデータがなくなり、例えば受信機側では前のブロックを繰り返し受信することになる。
【０００８】
バッファの大きさは、典型的なネットワーク遅延のために、受信側でオーディオデータを確実にプレイするのに利用できる十分なブロックが常に存在するような大きさとしている。オーディオデータは、バッファ内に存在するデータユニットの量に対応する遅延した時間にプレイされる。例えば、オーディオデータはプレイ開始の10秒前にバッファにロードされる。プレイ中に常にオーディオブロックのダウンロードが停滞しても、受信機はバッファに格納されているコンテンツのプレイを続行することができる。従来のバッファ管理システムは、バッファに格納されるオーディオデータを妥当なレベルに保つようにしたものである。例えば、従来のシステムでは、バッファの充填量が上限レベル以上になる場合に、送信機側のサンプル速度変換器が入力サンプルを少な目のサンプルのブロックにグループ分けして、バッファに書込まれるデータの量が、受信機側で読出される量と等しくなるようにしているだけである。同様に、受信機が過剰なサンプルを消費するために、バッファが空になる場合には、サンプル速度変換器が平均して多めのサンプルをバッファに書込むようにする。
【０００９】
従来のシステムの欠点は、バッファを首尾よく充填させることに焦点を置いているから、この充填制御戦略に対応するオーディオデータのプレイ遅延が極めて変化し得ることにある。ネットワークは、信号の転送に加わる多くのコンポーネントのために、種々のブロックの到達時間に大きな遅延ジッターをもたらす。例えば、マルチキャストバックボーン（Mbone）リンクでは、ブロックの到達時間が典型的には±150msまで変化し、ブロックによってはさらに大きく遅延することもある。しかし他方では、例えばＶＯＩＰ（voice over internet protocol）の電話会話では、100msまでの遅延は許容でき、それ以上の遅延では相手方がその会話に極めて躊躇することになる。
【発明の開示】
【００１０】
本発明の第1の目的は、データサンプルを受信するときと、それを出力するときとの間の遅延を制御し得る、冒頭にて述べたようなシステムを提供することにある。データはオーディオデータとするのが好適であるが、リサンプルすることができ、特にそのリサンプリングが殆ど目立って人に感じられない場合には、任意の連続関数のデータとすることもできる。
【００１１】
この第1目的は、バッファ管理システムが、
-  該バッファ管理システムにデータユニットが入力される入力時間瞬時を測定して、入力時間測定値を出力すべく構成した入力時間測定コンポーネント；及び
-  充填量測定値と入力時間測定値とに基づいてデータ転送速度変換コンポーネントを制御することにより遅延を制御するための遅延制御コンポーネント；
を具えるようにして実現される。
【００１２】
なお、システムを、例えばオーディオデータを受信する多数のサラウンドスピーカを有する室内のワイヤレスオーディオ回線システムとする場合には、オーディオデータユニットのブロックを送る時間を、そのブロックを受信する時間に等しくすることができる。送信機での遅延は一般に、この送信機が全ての受信機に対して同じものである場合には考慮しなくて済む。ここで云う室とは、広義に解釈されるべきであって、消費者の居間以外に、工場や、映画館や、限られた野外のスペースも含むものとする。オーディオシステムによっては、オーディオサンプルのプレイの関わるエンド・ツー・エンド遅延の制御の度合いを、例えばＶＯＩＰの場合よりも大きくすることが望まれるものもある。例えば、ワイヤレスヘッドホンの遅延は、テレビスクリーン上に見られるような唇の動きと、ヘッドホンを伝わって聞こえるような音声との間のリップ同期（lip-synchronization）が緩慢にならないようにするために、３０ms以下にすることが望まれる。アナログシステムは殆ど遅延を示さないが、ディジタルシステムは、例えばパケット送信のために、圧縮解除等の処理を行なうので遅延が生じる。多数のサラウンドスピーカがある場合、例えば左側と右側のサラウンドスピーカがある場合には、遅延に関わる要求は一層厳しいものとなる。この場合には、遅延の平均値を比較的低くするだけでなく、遅延の変動、所謂遅延ジッターも比較的低く、数サンプル程度、典型的には、例えば５サンプル以下にすべきである。換言するに、各スピーカに対するエンド・ツー・エンド遅延を一定にすることによって、各スピーカはほぼ同じサンプルを音声として出力する。しかしながら、左のサラウンドスピーカがサンプルｘを出力し、右のサラウンドスピーカがサンプルｘ＋ｙを出力する場合で、ここに、ｙを０から例えば５０サンプルまでの可変遅延とする場合には、仮想の音源位置、即ちステレオイメージが最早安定しなくなる。これは、左と右のスピーカによって発生される音声が人の耳に遅れて到達することによって仮想の音源イルージョンが発生するからである。
【００１３】
ディジタルデータ通信システムでは、３種類の遅延を特定することができる。先ずは、復号化遅延のような、データ処理要素による遅延がある。こうした遅延は可変であるが、その処理には一定のタイムスロットがリザーブされることがよくあり、従って、こうした遅延は遅延制御戦略では無視することができる。第２の遅延として、起動するシステムの動作が早いか、又は遅いかのため、典型的にはその動作を制御するクロックが、基準のクロックに対して早いか、又は遅いために生じる動作遅延がある。例えば、データのブロックは、システムに入力されて、バッファから周期的に読出される前の可変時間瞬時にバッファに書込まれる。第3の遅延として、バッファの充填に対応する遅延がある。データユニットが特定の読出し速度でバッファから読出される場合には、バッファ内における最初のデータユニットと、最後のデータユニットの読み出しとの間に、バッファ内のデータユニットの数を読出し速度で割った値に相当する遅延がある。このような一連の、処理要素、バッファ及びシステム動作を経るデータサンプルはエンド・ツー・エンドの総合遅延を体験することになる。遅延の所定部分が装置の作用以外、例えばクロックの遅滞によるものである場合には、これらは制御可能なシステム動作及びバッファの充填量によって補償して、エンド・ツー・エンドの総遅延がほぼ一定になる制御することができる。
【００１４】
本発明によるシステムでは、データユニットの入力時間瞬時を入力時間測定コンポーネントによって測定する。これにより、バッファがどのように充填されるのかを測定すると云うよりもむしろ、バッファの充填量を遅延のために補償することができる。この入力時間の測定値を遅延制御コンポーネントに送り、これにより、常にバッファの充填量から遅延を制御できるようにし、システムによっては、その遅延をほぼ一定にする。遅延制御コンポーネントはこれを、後に図面につき詳述するように、バッファへの入力時間と、バッファからの読取り時間とを考慮するフロー等式を用いて行なう。なお、後述する図面を参照しての簡単な実施例では、データユニットがシステムに入力される前と、このデータユニットをバッファに書込む前との間には遅延はないものとする。この簡単な例では、２つの遅延成分のみ、即ち、入力時間瞬時（従って、書込み時間に等しく、つまり、書込み速度は入力速度である）と読取り時間瞬時との差と、バッファの充填遅れとの２つの遅延成分のみを含むエンド・ツー・エンド遅延がある。また、バッファからの読取りと、スピーカによるデータユニットの出力との間には一定、従って無視できる遅延があるものと想定する。システムにもっと多くの遅延が生じる場合には、後にもっと複雑な実施例によって説明するように、エンド・ツー・エンド遅延の等式はさらに複雑となる。
【００１５】
なお、データユニットはバッファにブロックとして書込まれる。ディジタル通信システムでは、これらのブロックは典型的には多数のデータユニットのフレーム単位でも入力される。しかしながら、データユニットはアンテナに１つづつ到達させることもできる。この場合には、バッファ内に書込まれたサンプルのブロックを復号化するのに十分なデータユニットがバッファに存在するまでデータユニットはバッファに累積されるものとする。
【００１６】
バッファ管理システムの好適例は、第１データユニットの読取り時間瞬時を測定して、読取り時間測定値を出力すべく構成した読取り時間測定コンポーネントを具え、且つ前記バッファ管理システムにおける遅延制御コンポーネントが、前記読取り時間測定値に基づいてデータ転送速度変換コンポーネントを制御すべく構成されるようにする。読取り時間は一定、例えば遅延制御コンポーネントによって指示することができるが、これは測定して、遅延制御コンポーネントに送ることもできる。
【００１７】
ＶＣＯの例では、データ転送速度コンポーネントが電圧制御発振器（ＶＣＯ）具えるようにする。例えば、サンプルの読み出し速度が遅すぎて、バッファが一杯になり、遅延が増加する恐れがある場合には、バッファからの読取り速度を上げて、即ち、スピーカへのサンプルの送信速度を速くする。
【００１８】
ＳＲＣの例では、データ転送速度変換コンポーネントが、第１個数のサンプルから第２個数のサンプルを発生すべく構成したサンプル速度変換器（ＳＲＣ）を具えるようにする。出力転送速度をシステムによって固定する場合に、バッファ充填量が増えないように読取るサンプル数を増やさなければならない場合には、サンプル速度変換器はサンプルを第1個数のサンプルで補間することにより、少ない第2個数のサンプルを入力として発生させることができる。ＶＣＯとＳＲＣを単一のシステムに組み合わせることができることは明らかである。クロックの公差（クロックが、例えば温度変動のために、或る特定時間瞬時において、その平均値、又は公称値から変化するのを許容されるクロック速度の量）が小さく、典型的には１００ppm（百万分の一）以下の場合には、ＶＣＯが好適であり、さもなければＳＲＣが好適である。
【００１９】
本発明のさらに他の好適例では、バッファ管理システムが圧縮解除装置を具え、遅延制御コンポーネントが、圧縮解除に関連する圧縮解除遅延又は第２バッファ内のデータユニットの量に基づいて前記データ転送速度変換コンポーネントを制御すべく構成されるようにする。圧縮解除、移送ストリームの復号化、又はディジタル/アナログ変換に関連するようなシステムにおけるさらなる遅延も遅延制御コンポーネントによって補償することができる。オーディオ通信システムは、典型的にはデータを圧縮ストリームで送信する。これはリソースの利用可能な帯域幅が限定されるからである。圧縮解除は各ブロックに対して一定量の時間がかかるか、又は可変時間量を要する。この圧縮解除時間が測定可能である限り、それは補償することができる。圧縮解除時間は、例えばデータユニット又はブロックが圧縮解除装置に入って、そしてそこから出るタイムスタンプの差として明白に、又は圧縮解除すべき圧縮解除装置のまえのバッファにて待っているデータユニット又はブロックの量として暗黙理に測定することができる（圧縮解除装置の動作が遅くなればなるほど、待たなければならないデータユニットの量が多くなる）。
【００２０】
バッファ管理システムは、無線受信コンポーネントも具えているディジタルオーディオ受信機に組み込むのが有利である。概して、この無線受信コンポーネントを設けるのは、受信機が搬送波上に変調されるワイヤレスのオーディオデータを受信するためである。バッファ管理システムは有線のネットワークに組み込むこともできる。ワイヤレスのオーディオ製品は、特にホームシネマ用途に適しており、この場合、消費者はあらゆる種類の配線接続の必要性から開放される。このような製品の特定例にワイヤレスのヘッドホン及びスタンドアローン式のサラウンドサウンドスピーカがある。
【００２１】
本発明の第２の目的は、オーディオサンプルを送るときと、そのサンプルをプレイするときとの間の遅延を制御し得る、最初に述べたようなバッファ管理方法を提供することにある。
【００２２】
この第２の目的は、
-  ディジタルオーディオ受信機にデータユニットが入力される入力時間瞬時の入力時間測定を行ない；且つ
-  前記遅延が、読取り速度と書込み速度との比を前記入力時間測定値にも基づいて設定することにより制御されるようにすることによって達成される。
【００２３】
従来、バッファを例えば空と満杯との間の妥当なレベルに維持して、アンダーフロー及びオーバーフローのリスクを最小にする方法は多数あるが、これらのバッファ制御技法はエンド・ツー・エンドの遅延に配慮していない。従って、入力時間測定のような、バッファの充填をほぼ一定、又は一般的に云えば、エンド・ツー・エンドの遅延を可制御とするのに用いられる、システム中の遅延を示すものの測定がなされていない。
【００２４】
本発明によるバッファ管理システム、ディジタルオーディオ受信機、ヘッドホン、スタンドアロン式のサラウンド・サウンドスピーカのこれら及び他の特徴は、単なる非制限的な例示として仕える添付図面を参照しての以下の説明から明らかにされるであろう。
【発明を実施するための最良の形態】
【００２５】
図1において、データユニット１５０，１５２のブロック１０４，１０６は、受信機におけるバッファ管理システム１００に入る。バッファ管理システム１００は有線でデータユニットの送信機に接続することができるも、このバッファ管理システム１００はアンテナ１３０によってワイヤレスで接続するのが好適である。なお、ここで用いる“データユニット”とは、データ片、例えばセンサーによって捕らえられるような、少なくとも1ビットからなる、例えばディジタル化したオーディオ、ビデオ、又は他の時間的に連続するデータ信号の一部を示すものとする。実施例によっては、データユニットを１６ビットのＰＣＭオーディオデータの１サンプルとする。他の例では、オーディオデータを圧縮、例えばサブバンド符号化（ＳＢＣ）して、データユニットを多数のサンプル及び/又はこれらサンプルの一部とすることができる。説明の簡易化のために、データユニットの代わりにサンプルなる用語を時々用いるが、このような他のタイプのデータユニットに対してシステムを如何に変更すべきかについては当業者の知るところである。ブロックは、場合によっては特別な制御ビットと一緒にグループ化され、且つ一緒に書込まれたり、読取られたりする多数のデータユニットのことである。本明細書での模範的な数値例では、１ブロックにおけるサンプルの数を１２８個とする。説明の簡易化のために（図２，４及び７におけるように）、データユニットのブロックの第1データユニットがバッファ管理システム１００（例えばアンテナ１３０）に到達する入力時間瞬時Taは、バッファ１０２にこのブロックを書込む時間Tｗと同一とみなし、従って、データユニットがアンテナ１３０に到達する時点と、このデータユニットをバッファに書込む時点との間に存在する一定の遅延は、説明の簡易化のためにゼロに等しく設定されるものとする。入力時間瞬時Taは種々の方法で測定することができ、例えば、データユニットが受信バッファ１０２に入る時か、又は第1処理要素等によって測定することができる。もっと進んだ例では、TaとTｗとの間の全ての遅延もエンド・ツー・エンドの遅延制御にて考慮しなければならない。従って、ブロック１０４，１０６は書込み時間瞬時Tｗにバッファ１０２に書込まれ、毎秒当たりの書込み時間瞬時Ｔｗの数が書込み速度Rｗになる。或る特定の時間瞬時T1において、バッファは、量Fのデータユニット、例えば、次の読取りコマンドで直ぐに読出されるデータユニットの１ブロックで満たされる。データユニットは読取り速度Rｒで読出される。この読出しは、データユニット毎（例えば、サンプル毎）、又はブロック毎とすることができる。
【００２６】
バッファ１０２への書込み及びそれからの読取りを図2で説明する。第1書込み時間瞬時tw1に、バッファへの第1書込み処置W1,２１２が行なわれる。例えば、tw1の前にバッファを空にし、そしてtw1後にバッファに1ブロックを入れることができる。第１読取り時間瞬時tr1には、ブロックを読出して、第２書込み処置W2のためにバッファを空にする。この第2書込み処置W2の後に、受信機は時間瞬時tr2にバッファからブロックを読出す。書込み処置は、第1クロックclk_1によって指示される書込み時間twに行われる。この第1クロックは送信機のクロックであり、これは受信機では分からない。しかしながら、送信機はブロックを送信し、これらのブロックは受信機にほぼ瞬時的に到達するため、受信機がこれらブロックの到達瞬時を用いて、送信機の第1クロックclk_1を計測することができる。しかし、受信機は第1クロックclk_1、又はその公称速度付近のばらつきまでは管理しない。読取り動作は、受信機のクロックである第2クロックclk_2によって指示される読取り時間trに行なわれる。第1読取り時間tr1に対する基準時間は、tw1にバッファ１０２に書込まれた或る特定ブロックの第1データユニット１５４が、（それぞれのデータユニットが単独で読み出されるか、又はブロック単位で読出されるかに関係なく）読出されるときの時間とすることができる。バッファ１０２からデータユニットを読出した後におけるシステムの残りの部分に一定の遅延がある場合には、サンプルをスピーカでプレイする際の再生時間瞬時Tsを基準時間とすることができる。この再生時間瞬時Tsと書込み時間瞬時Tw（又は、ブロック１０４がバッファ１０２に書込まれる前に別の遅延がある場合には、ブロック到達時間瞬時Ta）との差がエンド・ツー・エンド遅延Δであり、これをバッファ管理システム１００によって制御しなければならない。図２ａでは、図面の明瞭化のために、バッファ１０２の前後における（一定又は無視できる遅延をもたらすと想定される）全ての処理コンポーネントを無視して、第1クロックclk_1及び第２クロックclk_2によってそれぞれ指示されるバッファ１０２への書込み及びこのバッファからの読取りのみを考慮する。
【００２７】
クロックclk_1及びclk_2が完全に同期している場合には、常にバッファへの書込み後の或る特定の時間インターバルにて読取りが行なわれ、これが第１遅延Δ１を生じさせる。以下の説明では、第１クロックclk_1による一定の書込み時間瞬時tw1，tw2等に比べて、第2クロックclk_2はジッターし、もっと正確に言えば一時的にゆっくり駆動するものとする（実際上、このような相対クロック差が問題になる）。バッファ管理システム１００は、クロックの変動が他のタイプのものである場合にも使用することができるが、第1及び第2クロックclk_1及びclk_2が同じ公称値を有するも、この公称値付近のジッターが未知で、典型的には１０００ppmまでの小さなジッターである場合に用いるのが有利である。本明細書では、こうした場合につき詳細に説明する。図２ａでは、第２クロックclk_2が第１クロックclk_1に比べて遅く、即ち、多数の書込み/読取りサイクルにわたって常にゆっくり駆動し、従って読取り動作が書込み処置に比べていつも遅れて行なわれるものとする。図２ａに破線にて示してある矢印ＡＲ２は、第２バッファ管理システムによる例えば第２のスタンドアローン式のスピーカでの第２ブロックの読取り動作であり、この処置はtr2に比べてずれている時間ta2に行われる。従って、これらの2つのスピーカがそれらの各サンプルを或る特定の時間瞬時にプレイすると、これらのサンプルは一致しなくなり、不正確なステレオイメージを来たすことになる。
【００２８】
図２ｂに転じるに、サンプルは、低速運転のclk_2のために、第３サンプル２４２と第４サンプル２４４との間の第２サンプル間距離２４６が、第１サンプル２３２と第2サンプル２３４との間の第1サンプル間距離２３６よりも大きくなるので、もっとゆっくり出力される。或る所定の瞬時に、この例では、第3の読取り動作R3が、１ブロック分よりも大きな第3遅延Δ３だけ遅延され、従って、第4の書込み処置W4が第3の読取り動作R3の前に生じる。図２ｃから明らかなように、書込みと読取り動作との間におけるこのような瞬時からは、バッファ１０２内には常に１ブロックではなくて、２ブロックが存在すことになる。第２クロックが低速で運転し続ける場合には、しばらくすると、バッファ１０２内のブロック数は３となり、以下順次ブロックの数が増えることになる。しかし、このようにバッファの充填量が増えること以上に有害なことは、遅延時間Δがそれ相当に増大することにある。例えば、左側サラウンドスピーカのクロックの運転が、このサラウンドスピーカにオーディオ信号を送信する送信機の第１クロックclk_1に対して遅すぎ、また、右側サラウンドスピーカのクロックの運転が第１クロックclk_1との同期を取るにはあまりにも早すぎる場合には、これら２つのスピーカによって出力されるサンプルが、かなり離れた時間瞬時のオーディオ信号に相当し、従って、ステレオイメージがかなり損なわれることになる。バッファの充填、又は遅延を標準的な値に戻すために、図３に示すような種々の戦略を試みることができる。
【００２９】
図３ａでは、各読取り時間瞬時Trに128サンプルのブロックを読取る代わりに、１つ又は数個の余分のサンプルを読取る。例えば、8個の余分のサンプル（extra sample）を各読取り動作中に読取る場合に、１６（＝１２８/８）回の読取り動作後には、再び以前の読取り動作に追いつくのに次の書込み処置に対してこれら１６回の書込み/読取りサイクルよりも長時間かかるものとすれば、バッファの充填量は正規の1ブロックの充填量に戻ることになる。これは、クロック速度がほんの数ppmしか違わず、これに対応する遅延変化量が軟傾斜のライン３０２で示すようになる場合には確かにその通りである。しかしながら、斯様な高速補正動作３０４は、バッファの充填管理そのものにとっては極めて有効ではあるが、遅延管理にとってはよくない。先ずは、長い期間Twa中に遅延が増加し続け、従って、これがステレオイメージを悪くすることになる。そして、早い回復期間Tco中に、遅延が再び例えば１ブロックの大きさに戻る。しかし、この復旧インターバルは2つのスピーカにとって異なる時間に生じ、実際には、クロックがほぼ同じ傾向で変化しても、一方のスピーカがまだ２ブロック遅延しているいつかの時点に、他方のスピーカの遅延が既に１ブロックに過ぎないものとなることがある。これはステレオイメージを比較的早く損ねることになる。図3ｂは、WO99/35876におけるような修正戦略にて生じる遅延を示す。この既知の方式でのバッファ管理は、バッファが上限値URに満たされるか、又は下限値LLになる場合にだけ行なわれるから、遅延は典型的には、上限値と下限値の間の非制御過渡期３１２での斯様なバッファ充填に対応する値の近辺にて生じる。
【００３０】
良好なステレオイメージを維持する唯一の策は、図3cに示すように、全てのスピーカに対する遅延Δを制御することであり、もっと正確に云えば、遅延をほぼ予定値に等しくすることにある。
【００３１】
図1に戻るに、1ブロックよりも多くのサンプルを読取る際には、データ転送速度変換コンポーネント１０８が、読取りサンプル１５４，１５６の第1数１４０を、出力すべきサンプル１７４，１７６の第2数１４２に変換する処理を行なう。出力オーディオデータ信号は一般に、ディジタル/アナログ（D/A）変換後にスピーカによって再生される。サンプルは、例えばストレージデバイスのような他の装置に送ることもできることは勿論である。データ転送速度変換コンポーネント１０８は、例えばサンプル速度変換器とすることができる。従来、例えば、補間フィルタのような多数のＳＲＣ技法があり、これらの技法はＰＳＯＬＡ等のような反復パターンを抽出して代用するものである。有利なサンプル速度変換器は、先ずオーディオ信号を例えばファクタ１０でアップコンバートし、次にナイキストフィルタ処理してから、ファクタ７でダウンコンバートして、任意の変換速度を容易に達成し得るようにする。ＳＲＣでは、第2クロックclk_2を比較的安価な固定クロック、例えば水晶発振器とすることができる。ＳＲＣを用いる代わりに、図6に示すように、電圧制御発振器のような可変読取り速度Rrを発生する可変クロックを適用することもできる。バッファ１０２の充填を所望な遅延Δに対応する所望な量Fに保つためにバッファからより多くのサンプルを読出さなければならない場合には、読取り速度Rr（clk_2の速度）を上昇させ、その逆の場合には読取り速度Rrを低下させる。
【００３２】
当業者には、上述した例にどんなデータ転送速度戦略を適用すべきかが分かるから、第２クロックclk_2の相対な速さ又は遅さ、即ち読取り速度Rrに依存する読取り戦略の適応に的を絞るとする。本発明の原理を図４によって概略的に説明する。
【００３３】
入力時間Taに対するclk_2の誤同期を補償する簡単な模範例として、バッファ１０２に書込む前には一定の遅延があり、また、ブロック読取り動作の直前におけるバッファ１０２内のデータユニットの所望量Fは１２８個のサンプルからなる１ブロック４２０であるものとする。この量Fは、読取りコマンドを実行した直後のバッファ１０２内のデータユニットをゼロとして有利に測定することができる。バッファの充填量は読取りコマンドの前にチェックすることもできる。これは、一定の遅延、例えば図2aの第1遅延Δ1に相当する。図４のグラフ４００は、時間に対する第２クロックclk_2の読取り速度Rrの相対的な変化による遅延の変動δΔを示した図である。送信機の第１クロックclk_1と受信機の第２クロックclk_2が同期している場合には、δΔはゼロになり、これをベースライン４３０にて示してある。このベースラインの左側には“高速受信機クロック”のドメイン４０２があり、右側の第２クロックclk_2はclk_1に比べてゆっくり駆動する。“低速受信機クロック”のドメイン４０４内での発生事象４０８に対しては、バッファの充填量Fを（次の書込み時間瞬時にバッファに書込まれる）１ブロックに維持するために、もっと正確に言えば、所望な遅延Δを維持するために、１２８個のサンプルよりも多くのサンプルBR、即ち、BR＝１２８＋ｄＦを読み出さなければならない。図２bから明らかなように、低速clk_2のインターバル内に、出力すべきサンプルが８個ある場合、前記サンプルＢＲはSRCによって１ブロック+df個のサンプルで構成することができる。クロック同士が左程違わない限り、補間されるサンプルは、実際のオーディオサンプルが所望な遅延に対応する正に正確な時間瞬時のサンプルになるのと知覚的に極めて似たものとなる。従って、ステレオイメージはかなり忠実に再生される。そして、バッファの充填量も、以前の書込み/読取りサイクル中（余分の充填がなく、遅延の増加をまねいた）におけるのと同じとなり、遅延Δは連続する書込み/読取りサイクルにわたってほぼ一定のままとなる。
【００３４】
このことを図７によってもっと明確に説明する。行７０２は、バッファ１０２に書込まれるデータユニット（簡単化のためにサンプルと称する）、例えばブロック７３０を示し、従って、このブロックの最初のサンプルはtw1に書込まれる。行７０４は、サンプルが標準の動作の下で読み出される際のサンプルを示し、ここに云う標準の動作とは、クロックclk_1とclk_2が正確に同期していることを意味する。この例では、斯かる第１サンプルがt1にバッファから読出され、このことは３個のサンプルに相当するΔ1に等しい遅延があることを意味している。標準動作の下では、サンプル７４０と全く一致しているサンプル７４１が次に読み出されることになり；実際には8個のサンプルからなる新たなブロックが次に読み出されることになる。行７０６は低速第2クロックclk_2で起こることを示しており、従ってサンプル７３０に対応するサンプル７３２は時間伸長を示すために正方形と言うよりもむしろ長方形として概略的に示してある。次の読取り時間瞬時７８０には、サンプル７４０に対応するサンプル７４２が低速クロックclk_2の指示の下で読出されることになるが、これは上述したように遅延を増加することになる。従って、クリーン・スレートの戦略をとらねばならず、これは書込まれたサンプル７５０に対応するサンプル７５５を読出すことを意味する。しかしながら、このことは、サンプル７４０が決して読み出されることがなく、即ちこれらのサンプルが脱落してしまい、また、時間t21，t31及びt41におけるインターバルでの後者のサンプルが不適切に遅延することを意味する。上述したように、このような問題は３つの余分のサンプルを読み出し、且つサンプル速度変換を行い、例えば補間をとることによって解決される。行７０８には、明瞭化のために、補間サンプルを２つだけ示してある。ブロックの開始時には、サンプル７２０のようなサンプルを先の余分な量のサンプル７１２で補間する。理論的には、これは時間瞬時t1に行なうべきであるが、実際にはサンプルを時間瞬時tl1に出力させることもでき、これらの時間瞬時の差はごく僅かである。ブロックの終了時、例えば時間瞬時t2には、音声サンプルがサンプル７３０の最後のものに似たものよりも、余分の追加サンプル７４１に似たものとなるため、サンプル７２２の補間が余分の読
取りサンプル７４２も考慮することは明らかである。クロックのジッターが僅か数ppmに過ぎない場合には、このスキームはかなり誇張されることは勿論であるが、同じ原理を適用する。
【００３５】
数学的にこのことは、バッファ１０２への、及びバッファ１０２からのデータユニットの流れを一定として、バッファへの充填量Fを一定にするフロー等式（式１）として表すことができる。
Δnom＝cte＝TRnom−TWnom
Δact＝cte＝TRact−TWnom
ｄF＝TRact−TRnom                                            （式1）
【００３６】
従って、読取るべきサンプルの余分の量dFは、実際の読取り時間TRactと、公称、即ち所望な読取り時間TRnomとの差に等しく、即ち、clk_2の遅さに等しい。換言するに、時間差としての遅延変動δΔ＝Δact−Δnomは、バッファ充填の点から見て、或る特定量のサンプルdFに対応し、書込み時間TWnomは一定の基準時間とする。
【００３７】
図1に戻って、この式は遅延制御コンポーネント１２０によって評価される。書込み時間測定コンポーネント１１２は、ブロックがデータ管理システムに入力されるとき（又は簡略化した例では、バッファ１０２に書込まれるとき）、つまり入力時間瞬時Taを測定し、これを入力時間測定値mTaとして、又はタイムスタンプとして遅延制御コンポーネント１２０に送る。特定時間瞬時T1、例えばブロックをバッファ１０２から読取った直後には、バッファ充填量測定コンポーネント１１０がバッファ内のデータユニットの量Fを測定し、このバッファ充填量測定値mFを遅延制御コンポーネント１２０に送る。遅延制御コンポーネント１２０には、必要に応じて読取り時間測定コンポーネント１６０によって読取り時間Trを送ることもできる。遅延制御コンポーネント１２０は、バッファ内のデータユニットの余分量dFが式１に照らして正しいかどうかを計算する。これが正しくない場合には、制御信号Cによってデータ転送速度変換コンポーネント１０８に命令して、読取るサンプルの量を多くしたり、減らしたりして、データ出力速度Roを適切に変更する。第２クロックclk_2が数ppm程度のごく僅かな遅延で低速駆動する際には、データ転送速度変換コンポーネントは少数のサンプルを補間するだけであり、即ち、十分に間隔をあけた書込み/読取りサイクルの短い期間内にてVCO-クロックを変えることになる。このような戦略は実際上、dF−TRact＋TRnom＝０を維持する戦略である。なお、余分な量dFは直接計算することもでき、また、任意の速度変換戦略をこうした計算に用いることができる。この簡略化した説明では、バッファ１０２への書込み前、又はバッファ１０２からの読取り後の可変遅延は想定しなかった。本システムが、遅延をバッファ１０２からの読出し制御（即ち、充填量の制御）によって補償することができる別の遅延源がある場合、又は所要に応じ多くの可制御バッファがある場合に特に有効であることは明らかである。
【００３８】
図５はディジタルオーディオ受信機５００に組込まれるようなバッファ管理システム１００の例を概略的に示している。ワイヤレスディジタルオーディオストリームはアンテナ１３０から入ってくる。無線受信コンポーネント５０２は必要な同調及び復調処理を行なう。このコンポーネントの出力端５０３にはディジタルベースバンド移送ストリームが現れる。同期コンポーネント５０４は、ビット及びフレーム同期をとるべく、即ち、サンプリングを行なう前に送信機のクロックを再生すべく構成する。典型的には、各ブロックの前に、従来既知のように、バーカーシーケンス（フレームと称されることもある）のような同期ワードを用いる。同期コンポーネント５０４はスタッフィングビットを除去することもできる。送信機側におけるCDプレーヤのクロックのクロック速度は1.4Mbit/sとし、送信機のクロックは140kbit/sで送信し、このクロックはCDプレーヤのクロックから取り出すか、又は独立に発生させることができるものとする。送信機がデータのブロックを送信することを望む時間瞬時に、CDプレーヤが送信機のバッファ（図示せず）にまだ十分なビットを蓄積していない場合には、送信機は不足サンプルをスタッフィングビットで満たすことができる。スタッフィングビットを除去した後のデータは、受信機側にて送信機のクロックドメイン内ではなくて、CDプレーヤのようなオーディオソース装置のクロックドメイン内に再び入り、このソース装置のクロックは典型的には１０００ppm、即ち0.1%までの比較的大きな公差を有する。
【００３９】
次いで、ブロックは受信バッファ５０６内に書込まれる。オーディオ移送ストリーム（ＡＴＳ）デコーダ５０８は、全ての移送プロトコルデータを取り去って、これにて得られるブロックをＡＴＳバッファ５１０に書込む。圧縮解除装置５１２、例えばサブバンドデコーダは、圧縮されたオーディオブロックを圧縮解除して、ＰＣＭオーディオブロックをバッファ１０２に書込む。遅延制御コンポーネント１２０の制御の下で、サンプル速度変換器５１４は、2つのＤＡＣバッファ５１６及び５１８の一方にサンプルを書込む。Ｄ/Ａ変換器５２２は第1ＤＡＣバッファ５１６及び第2ＤＡＣバッファ５１８から交互に読取り、この場合、他方のバッファはそれへのサンプルブロックの書込みによっていずれ満たされる。このバッファからの読取りの切り替えは可制御スイッチ５２０で行なわれる。アナログオーディオデータ、例えば左Ｌと右Ｒの信号は、左の増幅器５２６及び右の増幅器５２４による増幅後に、ヘッドホン５３０の左スピーカ５３２及び右スピーカ５３４に送られる。或いはまた、受信機はスピーカのキャビネット５４０内に組み込むこともでき、この場合には、オーディオデータをスピーカ５２８に送る。受信機５００は、例えば、本来の機器製造業者のスピーカキャビネット５４０内に組込むべきＯＥＭモジュールとして製造するか、又は例えばヘッドホン５３０の成形コネクタに取り付けるプラグインモジュールとすることもでき、この後者の場合には、末端消費者のシステムを容易にグレードアップさせる。なお、明瞭化のために、図1に既に示した測定コンポーネントへの結線は図示してないが、以下図8につき説明する好適例に必要とされる追加の測定用結線だけは示してある。
【００４０】
図8によって、バッファ１０２の前後における遅延の例を考慮するもっと複雑な模範的な一定遅延戦略につき説明する。
【００４１】
第1時間瞬時８０２には、ワード、又はワードのフレームが受信バッファ５０６に書込まれる。ＡＴＳフレームは、１２８個のサンプルと、２４ビットの１５２個のワード、即ち、３６４８ビットとからなるものとする。なお、この数はファクタ４のオーバサンプリングを含む。毎秒２５０個のフレームが来る。第２時間瞬時８０４には、移送データが取り去られて、オーディオコンテンツがＡＴＳバッファ５１０内に書込まれる。第３時間瞬時８０６には、オーディオデータが圧縮解除されて、最後にバッファ１０２に書込まれる。システムが３２kHz、即ち、毎秒３２０００個のサンプルで作動する場合、バッファ１０２における量FのサンプルはF/３２０００秒の第１部分遅延８９０に相当する。移送ストリームデコーダ５０８及び圧縮解除装置５１２の処理及びスケジューリングによって導入される遅延は、復号化遅延測定コンポーネント５９９によって測定することができ、これは、圧縮解除装置５１２がバッファ１０２にブロックを書込んだほぼ直後に受信バッファ５０６内に残っているワードの量Wを測定すべく構成するのが好適である。毎秒２５０個のフレームと、フレーム当たり１５２個のワードがあるから、これはW/(250*152)秒の第２部分遅延８２０に相当する。
【００４２】
バッファの充填量Fに関係なく、サンプルはTr−Twの時間差（読取り時間瞬時８１０−第３の書込み時間瞬時８０６）に対応する読取り−書込み遅延８２２を体験する。バッファ内にF個のサンプルがある場合、これは常にF/32000の余分な部分遅延をもたらす。第４時間瞬時８０８には、ＤＡＣが別のＤＡＣバッファに切り替わる。理論的には、この第４時間瞬時８０８の直前に読取り時間瞬時８１０（図１のTr）があることになり、追加的な遅延はないことになる。しかしながら、ブロックの読取が別の時間瞬時にて行なわれる場合には、バッファ１０２からＤＡＣバッファ（例えば５１６）に読取るブロックが、    ディジタル/アナログ変換のために最終的にアクセスされるまでの追加のＤＡＣ遅延８２４がある。２つのＤＡＣバッファの切り替え時間は４msである。
【００４３】
総合遅延は次式（２）で表すことができる。
Δ＝W／(250*152)＋F／32000＋(Tr‐Tw)+(TnxtDACint‐Tr)    （２）
【００４４】
ＤＡＣ切り替え時間はＤＡＣ切り替え時間測定コンポーネント５９８によって測定されて、次のＤＡＣバッファ切り替え時間TnxtDACintを出力する。
【００４５】
最悪状況解析法は、数値例に対して８msの一定のエンド・ツー・エンド遅延が好ましいと云うことを学習する。式２の第１、又は特に第３と第４項が遅延を殆どもたらさず、８msの一定遅延を得る場合、これは、バッファ１０２内の量Fを増やし、従って読出されるサンプルの数を一時的に増やすと共に、データ転送速度変換戦略も変えることによって達成しなければならない。好ましくは、アルゴリズムを可制御アルゴリズムとし、Fの値が、現在の遅延が８msにほぼ等しい場合には何もせずに、その遅延が大きすぎる場合にはＳＲＣをダウンサンプリングモードにし、逆の場合はアップサンプリングモードにする。これにて得られる精度は約２サンプルであり、これは高品質のステレオ又はサラウンドサウンドの用途にとって十分である。
【００４６】
同期コンポーネント５０４、移送ストリームデコーダ５０８、圧縮解除装置５１２、データ転送速度変換コンポーネント１０８、遅延制御コンポーネント１２０及び測定コンポーネント１１２，１１０，１６０，５９８，５９９はいずれもプロセッサ（例えばＤＳＰ）、又はハードウェア（例えば、ＡＳＩＣ）にて実現することができる。
【００４７】
図９は、本発明にて提案したバッファ管理システムを有利に使用できるワイヤレスの室内オーディオデータ伝送に対する代表的な用途を示す。この用途には、ステレオオーディオソースを含むオーディオソースユニット１１００、及び左と右のオーディオチャネルをそれぞれ再生するための２つの受信ユニット１１１０，１１２０を用いる。
【００４８】
ソースユニット１１００では、例えばオーディオサンプルクロックclk_1を有するＣＤプレーヤ１１０１が、左と右のオーディオ情報及びサンプルクロック速度情報を搬送するディジタル回線１１０２によって基地局１１０３に接続される。基地局１１０３は、アンテナ１１０４を介してオーディオデータを双方の受信ユニット１１１０，１１２０にワイヤレス伝送するように構成配置した集積化送信機ユニットを有している。大抵のワイヤレスシステムにおける基地局１１０３は、利用可能なＲＦスペクトル周波数を有効に使用するためのビット転送速度低減（例えば、ＭＰ３又はＳＢＣ符号化）手段と、受信端でのデータ再生を可能にするためのフレームフォーマット化手段を包含する。符号化した左と右のオーディオチャネルは、これらが受信アンテナ１１１１及び１１２１にほぼ同じ時間瞬時に到達するように、一緒に放送される。受信ユニット１１１０及び１１２０は受信したオーディオデータを復号化し、左と右のオーディオチャネルの複合化したオーディオサンプルを、ＤＡ変換器を介してそれぞれスピーカ１１１３及び１１２３に供給する。各宛先ユニット１１１２，１１２２はローカルＤＡクロックclk_2a，clk_2b（これは、受信機の動作用のマスタークロックとして機能する）を有している。このローカルクロックはclk_1と同じ公称値を有するが、その周波数は、公差や温度の影響及びエージングのために、公称値から１０００ppm（0.1%）程度ずれる。
【００４９】
図１０は、図9のシステム（及び図５の受信機５００）に対するデータの流れを示す。図１０ａには基地局１１０３におけるデータの流れを示してある。左と右のチャネルに対するオーディオサンプル１２０１はサンプル速度clk_1で基地局に入ってくる。オーディオエンコーダ１２０２は、ビットレートを１/５に低減させるために用いるものとする。さらに、オーディオエンコーダは、６０個のオーディオサンプル（オーディオエンコーダに転送される６０個のサンプルを矢印１２０３にて示してある）の入力ブロックサイズに働きかけて、データユニット当たりオーディオサンプルと同数（例えば１６ビット）の１２データユニット（１２０４）の出力ブロックにするものと仮定する。符号化したオーディオデータの新ブロックがいつスタートするのかを受信ユニットが判断できるようにするために、３つの同期ユニット（データユニット毎に同数のビットを有する）のブロック１２０５と、１２個のデータユニットのブロック１２０４とをＡＴＳフレーム発生器１２０７によってオーディオ移送ストリーム（ＡＴＳ）フレーム１２０６内に一緒にパックする。これはフレームを一緒に構成する小さな処理ブロックである。同期ブロック１２０５はビット同期とフレーム同期用のシーケンス５０４（例えばバーカー（Barker）シーケンス）を包含し得るが、他のシステム特有の情報を包含することもできる。この実施例用に選択される図面では、データユニットのサンプルレート（これは伝送ＴＸ速度に等しい）はオーディオサンプルレートclk_1の１/４（clk_1から導出される）である。図示の例では、ＡＴＳフレームは、オーディオエンコーダ１２０２の入力ブロック１２０１と一定の位相関係にあり、ソースユニットの入力バッファに(回線１１０２を経て)入るブロックＮ（１２０８）の第１オーディオサンプルＳＩＮと、（送信ユニット及び送信アンテナ１１０４へと）ソースユニットの出力バッファからでる符号化バージョンのサンプルＳＩＮ（１２０９）との間に一定のＴＸ遅延１２０７が生じる。
【００５０】
バッファ管理システムは、オーディオクロックclk_1とは無関係のデータユニットサンプルクロックで作動させることもできる。この場合、ＡＴＳフレームのギャップはスタッフィングビットで随意満たすことができ、これらのスタッフィングビットはデータユニットをさらに処理する前に受信端にて除去しなければならない。
【００５１】
もっと一般的なケースでは、ＴＸ遅延１２０７を可変とすることができる。エンド・ツー・エンド遅延を総体的に一定にする必要がある場合には（例えば、ソース側におけるＴＶ画像とのリップ同期問題をなくすため）、受信ユニットにおけるバッファ管理システムを適切に実現することによってＴＸ遅延１２０７の可変部を補償することができる。入力時間瞬時Taを送信機にて（即ち、例えば、ＣＤプレーヤを離れて、タイムスタンプとして受信機に送るデータユニットの時間瞬時）、又は受信機での代わりに、バッファ管理システムの少なくとも引き出せるどこかにて測定すれば、このようなバッファ管理システム１００が実現される。
【００５２】
１つのＡＴＳフレーム内に多数のＳＢＣブロックをパックすることもできる。この場合には、受信ユニットにおけるバッファ管理システムのアルゴリズムがこの（既知の）フレーム構成を考慮しなければならない。
【００５３】
受信ユニット１１１０及び１１２０はＡＴＳフレームを、これらが基地局１１００によって送信されるのと殆ど同じ時間瞬時に受信する。これを図１０ｂ及び図１０ｃに、送信された（図１０ａ）及び受信された（図１０ｂ及び１０ｃ）データストリーム（矢印１２９９）における基準サンプルＳＩＮの相対位置によって示してある。ＡＴＳデコーダユニット１２２２，１２４２は、データストリーム１２２１，１２４１が入力バッファにて受信される際にこれらのデータストリームを調べ、且つ同期シンボルを探す。ビット及びフレーム同期後に、データブロックユニット１２２３，１２４３のスタートが分かり、オーディオデコーダユニット１２２４，１２４４は、１２個のデータユニットが利用可能となるときにデータブロックの復号化を開始することができる。この復号化後に、６０個のオーディオサンプルが出力バッファにブロック１２２５，１２４５として書込まれることになる。宛先ユニット１１１０では、左のオーディオチャネルのサンプルのみが使用され、宛先ユニット１１２０では右のオーディオチャネルのサンプルのみが使用されることになる。
【００５４】
clk_2a及びclk_2bがclk_1に全く等しい場合には、ブロックＮ（１２２８，１２４８）の符号化した第１サンプルＳＩＮの受信時と、これを復号化したブロック（１２２９，１２４９）の第１サンプルＳＩＮをＤＡＣ及びスピーカ１１１３，１１２３に出力する出力時との間のＲＸdelay(ＲＸ遅延)１２２６，１２４６は、双方の受信ユニットにとって同じである。この場合には双方のスピーカ間の位相差がなくなる。
【００５５】
これに対し、例えばclk_2aがclk_1よりも早い場合には（図１０ｂ）、出力ブロック１２２５は（ブロック縁を点線で示したように）短くなり、ＲＸａdelay（１２２６）は公称値よりも短くなる。この公称値に対する偏差da（１２２７）は、補正処置をとらない場合に、径時的に累積されることになる。
【００５６】
同様に、例えばclk_2bがclk_1よりも遅い場合には（図１０ｃ）、出力ブロック１２４５は（ブロック縁を点線で示したように）長くなり、ＲＸａdelay（１２４６）は公称値よりも長くなる。この公称値に対する偏差db（１２４７）は、補正処置をとらない場合に、径時的に累積されることになる。
【００５７】
clk_2a，clk_2b及びclk_1のクロック差はサンプル速度変換器（ＳＲＣ）によって補償することができる。図10ｂの例の場合（clk_2aがclk_1よりも早い）には、ＳＲＣはＳＲＣバッファから60個以上のサンプルを読取って、60個のサンプル１２２５をＤＡＣバッファに書込み、従って時間差を補償することができる。図10ｃの例の場合（clk_2ｂがclk_1よりも遅い）には、60個以上のサンプルを読取って、60個の出力サンプルを発生することを示している。
【００５８】
良好且つ安定なステレオイメージを得るためには、クロックドメインclk_2a（１１１０）及びclk_2ｂ（１１２０）におけるオーディオ信号が互いに、且つソース（１１００）のオーディオ信号と一定の位相関係を持つことが必要である。
【００５９】
ＳＲＣ制御に対する既知のアルゴリズムは、このような同期用に使用することはできない。それは、これらのアルゴリズムは僅か2つのクロックドメイン間の同期用（例えば、clk_2aとclk_1又はclk_2ｂとclk_1）に設計されているからである。本発明にて提案するようなバッファ管理システムは、ドメイン間に物理的な回線がなくても、多数のクロックドメイン間の同期をとる（clk_2a及びclk_2ｂとclk_1、及びお互いにも）ことができる。
【００６０】
一定のRX delay１２２６，１２４６を得るための同期メカニズム（TX delay１２０７は図１０ａに示すように一定であるものとする）を図１１に示したデータの流れ図につき説明する。これは、受信機を図５に示すように実現し得ると云うことに基づくものである。
【００６１】
無線受信コンポーネント５０２からの受信データストリームは、Clk_1/4に等しい書込み速度Ｗｒ’でデータユニット毎に受信バッファ５０６に書込まれる。同期コンポーネント５０４は同期データユニットを除去して、１２ユニットの新規データブロックが圧縮解除又は復号化用に利用可能となる際に圧縮解除装置５１２を作動させる。これにて圧縮解除されたオーディオデータはＳＲＣバッファ１０２内に格納される。
【００６２】
ＤＡＣバッファが空のときには、ＤＡＣ割込み、例えばＤＡＣinterrupt Ｎ-１（ＤＡＣintN-1）がもたらされる。この瞬時にバッファ管理システム１００は、データブロックＮの第１サンプルＳＩＮとＤＡＣinterrupt との間の時間差であるTarrivalを測定又は計算する。これを実施するために、データは既知の（公称）速度Clk_1/4で単調に受信バッファ５０６に入るため、Tarrivalは、受信したワード（サンプル）をブロックＮの第１サンプルＳＩＮ（これは最終同期ブロック後の第１サンプルである）から計数した数Ｗによって表すこともできる。データが単調に受信されない場合及び/又は送信機の遅延が可変である場合には、Tarrivalがソースユニットの入力ストリームにおける第１サンプルＳＩＮと受信ユニットにおけるＤＡＣinterrupt Ｎ-１との間における遅延の可変部を表すようにTarrivalを計算すべきである。
【００６３】
ＤＡＣinterrupt Ｎ-１は、ＳＲＣバッファ１０２から可変量のサンプルを読取って、これを一定量の出力サンプル（この例では６０個；矢印（９９９））に変換するＳＲＣブロックを開始させ、これらのサンプルを空のＤＡＣバッファ（この例では、ＤＡＣ２バッファ）に書込む。ＤＡＣに出力するのに要する時間Tdecodeは、受信したデータを復号化し、処理するのに利用することができる。この期間中には３つの処理、即ち、ＡＴＳの復号化（及びシステムがまだ同期しているかどうかの検証）、オーディオデータの復号化（圧縮解除）及びサンプル速度の変換を行なわなければならない。Tdecodeは一定とし、これはＤＡＣブロック当たりのサンプル数を出力クロック速度（clk_2）で割った値に等しくする。
【００６４】
ＤＡＣinterrupt Ｎ-１後で、ＳＲＣの後に、受信システムは、ＡＴＳプロセッサがデータブロックＮの復号化を開始するまで待機する。これは、ブロックＮの最後のデータユニットが受信された後に行われる。復号化後、ブロックＮの第１サンプルＳＩＮは、ＳＲＣバッファ内の位置３１（図示の例の場合、Ｆ＝３０）にある。ＳＲＣは６０個のサンプルを読取るから（補正を必要としない公称ケースの場合）、サンプルＳＩＮはＤＡＣ１バッファＮの中間に位置する。このサンプルは周期的な次のＤＡＣinterrupt Ｎ＋１にてＤＡＣに送られる。サンプルＳＩＮがＳＲＣバッファ１０２を離れる時点と、サンプルＳＩＮがディジタル/アナログ変換器５２２に送られる時点との時間差Tleaveは、ＳＲＣバッファ１０２内のサンプル数Ｆを出力のクロック速度Clk_2で割ることにより計算することができる。
【００６５】
従って、RX delayは次のように計算することができる。即ち、
RX delay＝Tarrival＋Tdecode+Tleave                  （３）
又は      RX delay＝4*W/Clk_1+60/Clk_2+F/Clk_2               （４）
【００６６】
従って、一定のRX delayは、次の規則が満足される場合に達成することができる。
４*Ｗ＋Ｆ＝ＤＲ（遅延基準）＝一定                    （５）
数値例におけるファクタ４は、１２データユニットと３同期ユニットに対する６０の比である。
【００６７】
結果として、Ｗが1ユニット変化する場合には、Ｆを他の方向に４ユニットだけ変えることによって補正すべきである。これは、ＳＲＣバッファから６０個のサンプルの代わりに５６又は６４個のサンプルを読取ることによって行なうことができる。
【００６８】
図１１に示した例の場合には、ＤＲ＝５８である。公称ケースの場合（補正を必要としない）には、ＳＲＣによって読取るべきサンプル数はＤＡＣバッファに書込むべきサンプル数（６０）に等しい。図１１の左側の部分に、このような公称状態をＷ＝６及びＦ＝９４で示してある。Clk_2がClk_1よりも遅く駆動する場合、これは所定の瞬時に値Ｗ＝６の代わりにＷ＝７を読取ることによって検出される。これは、DACinterrupt N-1がδT＝４/Clk_1で量δTだけ遅延されることに起因する。この偏差はバッファ管理システムにより検出され（式３）、ＳＲＣブロックによって６４のサンプルが読取られることになる。これにより図１１の右側に示すように、Ｗ＝７で、Ｆ＝９０の新たな定常状態になる。なお、これらの数量は式（５）を満足し、もはや補正の必要がなく、再び６０個のサンプルをＳＲＣバッファから読取ることができる。
【００６９】
本発明によるバッファ管理システムがこのようにほぼ一定のＲＸdelayを提供することは明らかである。これにはいくらかのジッターδＴがあり、このδＴは主としてTarrival測定の精度によって生じる。Tarrivalがジッタリー（jittery）になる場合には（これは、データブロックがＲＸバッファにブロック単位で入り、単調に入らない場合にそのようになる）、何等かの追加の低域フィルタリング処理、又は他の手段を用いてＲＸdelayのジッターを減らすことができる。このようなメカニズムによってスピーカ１１１３及び１１２３から出てくるオーディオ信号間の位相関係を安定なものとすることができる。
【００７０】
コンピュータプログラムプロダクトとは、一連のローディングステップ後に、（一般的又は特殊目的の）プロセッサにコマンドを取得させて、発明の如何なる特徴的機能をも実行させることを可能にするコマンドを物理的に収集したものと理解すべきである。特に、コンピュータプログラムプロダクトは、例えばディスク又はテープのような担体上のデータ、メモリ内に存在するデータ、有線又はワイヤレスワイヤレスのネットワーク回線を伝わるデータ、或いは紙面上のプログラムコードとして実現することができる。プログラムコードとは別に、プログラムに必要とされる特徴的なデータもコンピュータプログラムプロダクトとして具体化することもできる。
【００７１】
本発明は上述した例のみに限定されるものでなく、請求項にて組み合わせたような発明の要素の組み合わせとは別の組み合わせも可能である。要素の任意の組み合わせは単一の専用要素で実現することができる。
【００７２】
請求項における括弧内の参照符号は請求の範囲を限定するものではない。「具える」なる用語は、請求項に掲げていない要素、又は態様の存在を除外するものではない。各要素の単数表現は、このような要素の複数の存在を除外するものではない。
【００７３】
本発明はハードウェアによるか、プロセッサでのソフトウェアの実行によって実施することができる。
【図面の簡単な説明】
【００７４】
【図１】本発明によるバッファ管理システムの実施例を概略的に示した図である。
【図２ａ】バッファへの書込み、及びそれからの読取りのタイミングを図式的に示した図である。
【図２ｂ】可変読取り速度によって得られるオーディオサンプルの出力を図式的に示した図である。
【図２ｃ】バッファ内のデータユニットのブロック数を図式的に示した図である。
【図３ａ】２つの連続する書込みステップ後に余分なバッファ充填量を補正するための高速バッファ読出し戦略を図式的に示した図である。
【図３ｂ】従来文献のWO99/35876におけるようなバッファ管理を図式的に示した図である。
【図３ｃ】本発明によるバッファ管理システムの好適実施例におけるような一定のエンド・ツー・エンド遅延バッファ管理を図式的に示した図である。
【図４】読取り速度が書込み速度に比べて遅い場合における一定のエンド・ツー・エンド遅延に対するバッファからのデータユニットの読取りを図式的に示した図である。
【図５】バッファ管理システムの実施例を含むワイヤレスのディジタルオーディオ受信機の模範的な例を概略的に示した図である。
【図６】電圧制御発振器と共に機能するバッファ管理システムの実施例を概略的に示した図である。
【図７】データ転送速度の変換によって全てのオーディオサンプルに対するエンド・ツー・エンド遅延を如何にして大体一定にするかの例を図式的に説明するための図である。
【図８】エンド・ツー・エンド遅延をより一層一定にする戦略を説明するための図式タイミング図である。
【図９】オーディオソースユニットと、２つのスピーカとの間のワイヤレス室内オーディオ伝送用システムを概略的に示した図である。
【図１０】送信機及び２つの受信機内でのデータ処理の時系列の高度な例を示した図である。
【図１１】受信機でデータを受信し、ディジタル/アナログ変換器を介して処理して出力するデータ処理の時系列を図１０に対応して示した図である。
【図１】
2007501428.tif 000003
【図２ａ】
2007501428.tif 000004
【図２ｂ】
2007501428.tif 000005
【図２ｃ】
2007501428.tif 000006
【図３ａ】
2007501428.tif 000007
【図３ｂ】
2007501428.tif 000008
【図３ｃ】
2007501428.tif 000009
【図４】
2007501428.tif 000010
【図５】
2007501428.tif 000011
【図６】
2007501428.tif 000012
【図７】
2007501428.tif 000013
【図８】
2007501428.tif 000014
【図９】
2007501428.tif 000015
【図１０ａ】
2007501428.tif 000016
【図１０ｂ】
2007501428.tif 000017
【図１０ｃ】
2007501428.tif 000018
【図１１】
2007501428.tif 000019
【国際調査報告】
2007501428.tif 000020
2007501428.tif 000021
2007501428.tif 000022