JP2002512456A - ネットワーク内でオーディオ・プロトコルをサポートするための方法および装置 - Google Patents

ネットワーク内でオーディオ・プロトコルをサポートするための方法および装置

Info

Publication number
JP2002512456A
JP2002512456A JP2000545085A JP2000545085A JP2002512456A JP 2002512456 A JP2002512456 A JP 2002512456A JP 2000545085 A JP2000545085 A JP 2000545085A JP 2000545085 A JP2000545085 A JP 2000545085A JP 2002512456 A JP2002512456 A JP 2002512456A
Authority
JP
Japan
Prior art keywords
audio
audio data
receiver
transmitter
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2000545085A
Other languages
English (en)
Inventor
ルバーグ,アラン・ティ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of JP2002512456A publication Critical patent/JP2002512456A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/326Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the transport layer [OSI layer 4]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
  • Input Circuits Of Receivers And Coupling Of Receivers And Audio Equipment (AREA)

Abstract

(57)【要約】 ネットワーク環境内でオーディオ・プロトコルをサポートするための方法および装置。受信器に関連付けられたオーディオ処理およびハードウェア要件は、ネットワーク上の送信器と受信器との間のオーディオ・データ伝送用に単一のオーディオ・プロトコルを指定することによって最小限にされる。プロトコルは、高品質の音声を可能にし、受信器の複雑さをさらに最小限にする、サンプリング・レート、ビット解像度、および量子化方式を指定する。送信器には、必要に応じてオーディオ・データを指定されたプロトコルに変換するためのドライバが備えられる。ネットワークを介したオーディオ・ストリームの伝送に伴う問題を補償するために、指定されたプロトコルの態様が提供される。指定されたプロトコルは、パケット喪失によって連続的にオーディオ・データ・サンプルを紛失することにより結果的に生じるエラーを最小限にするために、データ・パケット内のオーディオ・サンプルをインターリーブする形式を指定する。受信器は、さらに補間によってオーディオ・データ・サンプルの喪失を補償することができる。指定されたプロトコルに従い、オーディオ・データがどのように処理されるかを管理するためにシーケンス・サイズが指定される。送信器は、オーディオ待ち時間を各オーディオ・アプリケーションについて指定された制限内で維持するために、シーケンス・サイズを適応的に制御する。指定されたプロトコルは、複数のオーディオ出力装置間で、複数のチャネルを備えたオーディオ・データがどのようにミキシングおよびルーティングされるかを指定するために、ミックス・モードおよびいくつかのチャネルも決定する。

Description

【発明の詳細な説明】
【0001】 (発明の背景) 1.発明の分野 本発明は、デジタル・オーディオの分野、より具体的に言えば、ネットワーク
環境内でのデジタル・オーディオ・アプリケーションに関する。
【0002】 Sun、Sun Microsystems、Sun社のロゴ、Sparc、
Java、ならびにすべてのJavaベースの商標およびロゴは、米国および他
の国でのSun Microsystems,Inc.の商標または登録商標で
ある。
【0003】 2.背景技術 コンピュータおよびコンピュータ・ネットワークは、たとえばメディア、商取
引、および通信など、数多くの分野で情報を交換するために使用されている。一
般に交換される情報形式の1つがオーディオ・データ、すなわちデジタル化され
た音声または音声のシーケンスで表されるデータである。音声電話の伝送および
テレビ会議の供給が、オーディオ・データを含む通信情報の例である。他のオー
ディオ・データの例には、デジタル化された音楽、ラジオ、およびテレビのパフ
ォーマンスあるいはそれらの一部に関連付けられた、オーディオ・ストリームま
たはオーディオ・ファイルが含まれるが、オーディオ・データはどんなタイプの
音声波形にも関連付けることができる。また、所望の大きさおよび周波数特性を
備えるオーディオ・データを人工的に生成することによって、音声波形を合成す
ることもできる。
【0004】 ここでの考察では、ネットワーク上にあるコンピュータ間での情報交換は、「
送信器」として動作するコンピュータと「受信器」として動作するコンピュータ
との間で発生する。オーディオ・アプリケーションでは、情報にオーディオ・デ
ータが含まれ、送信器によって提供されるサービスは、オーディオ・データの処
理および伝送に関連付けられる。現在のネットワーク・システムに関する問題は
、送信器として動作している1台または複数のコンピュータにより提供される複
数のサービスが、異なるオーディオ・プロトコルを使用しているオーディオ・デ
ータを提供する可能性があるということである。そこで、異なるオーディオ・プ
ロトコルそれぞれに対処する必要があるため、必然的に受信器がより複雑なもの
になる。ネットワーク上でのオーディオ・データの伝送に伴う他の問題には、パ
ケット喪失によって引き起こされるオーディオ信号内のエラー、ならびにリアル
タイムないし時間厳密性(タイムクリティカルな)、テレビ会議などのオーディ
オ関連アプリケーションでの望ましくない待ち時間が含まれる。次に、ネットワ
ーク上でオーディオ・データを伝送することに伴う問題をよりよく理解するため
に、オーディオ技術およびネットワーク方式の一例について説明する。
【0005】 《一般的なオーディオ技術》 オーディオ・データ技術は、音声の取込み、格納、伝送、および再生を可能に
するものである。音声をオーディオ・データとして電子的にどのように表すこと
ができるかを理解するためには、音声の一般的な性質を理解することが有用であ
る。音声とは、空気などの媒体を介して伝播される圧力波を意味する。この種の
圧力波は、たとえば人間が話したり歌ったりするときに喉にある声帯を振動させ
ることによって、あるいは衝突エネルギーの一部が圧力波として放散されるとき
に2つのオブジェクトの衝突によって、発生させることができる。それを介して
圧力波が伝播される媒体は、媒体の物理的特性すなわち「音響学的特性」に従っ
て徐々に圧力波を減衰させる。
【0006】 圧力波が人間の耳にある鼓膜に達すると、鼓膜はそれに応答して曲がったり振
動したりする。この鼓膜内の振動または変調が、脳によって音声として解釈され
る。マイクロフォンなどの電子的取込みメカニズムは、圧力波を検出し電子信号
に含まれる対応するオーディオ・データを生成するための、同様のメカニズムを
有する。マイクロフォン内の感知メカニズムは、圧力波によって物理的に変調さ
れ、この変調が電気機械式に電子信号に変換される。この電子信号は直接伝送ま
たは格納するか、現在典型的に実行されているように、第1にデジタル化(すな
わちサンプリングおよび量子化)することができる。音声は、たとえば適切な圧
力波を生成するために振動膜(メンブレン)を電気機械式に変調することによっ
て、電子信号が圧力波に変換し直されて、オーディオ・データから再生される。
【0007】 《音声波形およびデータ・サンプリング》 取り込まれた音声に対応する電子信号は、図1Aに示された音声波形100な
どの音声波形によってグラフで表すことができる。図1Aと図1Bおよび図1C
それぞれにおいて、縦軸は音声波形の振幅を表し、横軸は1ミリ秒の時間間隔を
表す。音声波形100は、連続波形である。図1Bおよび1Cは、それぞれ24
キロヘルツおよび8キロヘルツのサンプリング・レートで、音声波形100をサ
ンプリングすることによって生成された、離散的サンプリング波形を示す図であ
る。
【0008】 サンプリング・レートは、1秒あたりのヘルツまたはサンプル数で表される。
24キロヘルツのサンプリング・レートとは、1秒間に24000回サンプリン
グするか、または約42マイクロ秒ごとに1回サンプリングするという意味であ
る。予測されるように、図1Cで8キロヘルツのサンプリング・レートでサンプ
リングされた波形のサンプル数は、図1Bでサンプリングされた波形のサンプル
数の3分の1である。
【0009】 一般に、サンプリング・レートが高くなるほど、多量のサンプルに関連付けら
れたデータを格納するためのストレージおよび伝送帯域幅要件に対応する資源コ
ストは、相応して必然的に高くなる。ただし、一般に、サンプリング・レートが
高くなるほど、音声波形の再生がより精密になる。1組のサンプリング・データ
から元の波形を再生する能力は、元の波形の周波数特性およびサンプリング・レ
ートのナイキスト制限によって決まる。あらゆる信号または波形は周波数特性を
持つ。比較的高速で変化する信号レベルは、高い周波数挙動に関連付けられてい
るのに対して、変化の遅い信号レベルは低い周波数挙動に関連付けられている。
ほとんどの信号は、広い周波数域にわたる周波数成分を含む。可聴信号に関連付
けられた周波数、すなわち音声波形は、一般に20〜20,000キロヘルツの
範囲内にある。
【0010】 ナイキスト理論によれば、サンプリングされた信号に、元の波形にサンプリン
グ・レートの2分の1を超える周波数が含まれていなければ、サンプリングされ
たデータから元の波形を再構成することができる。すなわち、元の波形の帯域幅
が10キロヘルツ未満に制限されている場合、サンプリング・レートが20キロ
ヘルツ以上であれば、歪みなしで元の波形を十分再生することができる。比較的
低いサンプリング・レートが使用されている場合には、波形をプリ−フィルタ処
理して周波数の帯域幅を制限し、サンプリング・プロセスに起因する歪みを防止
ないしなくすと言うのが一般的である。しかし、音声波形のフィルタ処理すると
波形の高域周波数成分の減衰が生じるので、音声品質が低下する。
【0011】 オーディオ・プロトコルが異なると、オーディオ・データ用に異なるサンプリ
ング・レートが使用される場合がある。オーディオ・データから音声出力を生成
している受信器は、オーディオ・データ・サンプルからの音声波形の再構成中、
サンプル間の正しい時間間隔を維持するために、オーディオ・プロトコルにより
異なることあるサンプル・レートを処理できなければならない。
【0012】 《データ解像度および量子化方式》 オーディオ・プロトコル間で異なるオーディオ・データの他の態様は、サンプ
リングされたオーディオ・データの振幅を量子化ないしデジタル化して、固定数
のビットで表すことができるデジタル値にするのに使用される、量子化方式であ
る。オーディオ・データの各サンプルを表すのに使用されるビット数は、所与の
オーディオ・プロトコルの解像度である。典型的には、解像度Mビットの場合、
サンプル量子化には2Mの可能なデジタル値または量子化レベルが存在する。た
とえば、8ビットの解像度は、28すなわち256の量子化レベルを提供する。
典型的には解像度が高くなるほど良い音声が再生され、音声サンプルはより精密
に表される。解像度が高くなると、より多くのビット数をサポートするために、
ストレージ資源および伝送帯域幅にもより多くのコストが必要となる。
【0013】 オーディオ・データに異なる解像度があるのと同じように、振幅範囲にわたる
量子化レベルの配分に関して異なっている量子化方式もある。図2Aおよび2B
は、それぞれ線形および非線形の量子化関数の例を示す図である。図2Aおよび
2Bの横軸は、それぞれ量子化する前のオーディオ・データのサンプル値を表す
。それぞれの図の縦軸は、量子化が実行された後のオーディオ・データの量子化
レベルを表す。階段状関数が実施され、横軸に沿った固定範囲内のすべてのサン
プル値が縦軸上の離散量子化レベルに割り当てられる。
【0014】 図2Aの線形量子化関数では、量子化レベルは値の範囲にわたって均一に配分
される。その結果、1つの傾斜を有する直線に近い階段状関数となる。図2Bの
非線形量子化関数では、量子化レベルは、振幅がゼロに近づくと多くなり、振幅
が大きくなると少なくなるように配分される。その結果、放物曲線または関数曲
線に近い階段状関数となる。非線形量子化方式の利点は、ゼロ振幅近くで相対的
に解像度が得られ、信号対雑音比が向上することである。非線形量子化方式の欠
点は、線形方式よりも実施手段が複雑なことである。異なるオーディオ・データ
・プロトコルは、線形量子化方式または一般に使用されるいくつかの異なる非線
形量子化方式のうちの1つを指定することができる。
【0015】 《オーディオ・チャネル》 以上、単一の音声波形に関するオーディオ・データについて述べてきた。複数
の声や楽器などの複数音声の場合、各音声に関連付けられた個々の音声波形を重
ね合わせることによって、単一の複合音声波形で表すことができる。したがって
複合波形には、すべての音声の音声情報が含まれる。複数の「チャネル」を使用
してオーディオ・データを送ることもできる。オーディオ・データの各チャネル
には、音声波形の音声情報(たとえばデジタル化されたサンプル)が含まれる。
各チャネルが異なるオーディオ出力装置(たとえばスピーカ)から出力される場
合、または単一のオーディオ出力装置から出力するために複数のチャネルが1つ
の複合音声波形に「ミックス」される場合がある。
【0016】 複数チャネルは、2チャネルのステレオ・オーディオまたは4チャネルのサラ
ウンド・サウンドなど、音声再生用の空間効果を提供するために使用されること
が多い。空間効果は、事前に配置されたスピーカから特定のオーディオ・チャネ
ルを出力することで作り出される。たとえばステレオ・オーディオは左チャネル
および右チャネルを指定するが、これはオーディオ・データの第1チャネルが聞
き手の左側に配置されたスピーカから再生され、オーディオ・データの第2チャ
ネルが聞き手の右側に配置されたスピーカから再生されるという意味である。よ
り複雑なシステムでは、より多数のチャネルおよび出力装置を使用することがで
きる。特定のチャネル配列は、オーディオ・プロトコルによって違う可能性があ
る。
【0017】 《オーディオ・データのネットワーク伝送》 これまで述べたように、オーディオ・プロトコルはサンプリング・レート、ビ
ット解像度、量子化方式、およびチャネル配列によって変えることができる。こ
うした違いによって、多数の異なるオーディオ・プロトコルが可能になる。ネッ
トワーク上の受信器にとって、ネットワーク上でオーディオ・データ・ソースと
して動作している様々な送信器によって使用される可能性のあるすべての可能な
オーディオ・プロトコルを処理することが、問題になる。この複数のオーディオ
・プロトコルに伴う問題について、図3に示されたサンプル・ネットワーク・シ
ステムを参照しながら、以下に記述する。図3は、オーディオ・データをソーシ
ングするための複数の送信器300A〜300Cと、宛先コンピュータとして動
作する単一の受信器303とを備えたサンプル・ネットワーク・システムを示す
図である。受信器303には、受信したオーディオ・データに関連付けられる音
声出力を提供するための、1つまたは複数のスピーカが備えられている。
【0018】 図3の例では、送信器300A、300B、および300C、ならびに受信器
303は、たとえばローカル・エリア・ネットワーク(LAN)であってもよい
ネットワーク302を介して相互に結合されている。送信器300Aはオーディ
オ・プロトコルAを使用し、ネットワーク接続301Aに沿ってネットワーク3
02へオーディオ・データを送信する。送信器300Bはオーディオ・プロトコ
ルBを使用し、ネットワーク接続301Bに沿ってネットワーク302へオーデ
ィオ・データを送信する。送信器300Cはオーディオ・プロトコルCを使用し
、ネットワーク接続301Cに沿ってネットワーク302へオーディオ・データ
を送信する。したがって、受信器303はネットワーク接続305を介して、オ
ーディオ・プロトコルA、B、またはCの下で、あるいはネットワーク302に
接続された他の送信器が使用するかまたは送信器300A〜300Cのうちの1
つで実施される複数のサービスが使用する、任意の他のプロトコルのいずれかの
下で、ネットワーク302からオーディオ・データを受信することができる。
【0019】 受信器303は、各オーディオ・プロトコルをサポートするために、オーディ
オ処理用の異なるハードウェアを備えることができるが、これによって受信器が
より複雑なものになり、新しいオーディオ・プロトコルが開発されるとハードウ
ェアをアップグレードしなければならない。受信器の処理およびハードウェア要
件を最小化することが目的であるシステムの場合、複数のプロトコルをサポート
するために複雑さが増すことは望ましいことではない。
【0020】 《待ち時間およびパケット喪失に伴う問題》 複数のオーディオ・プロトコルに伴う問題に加えて、オーディオ・システムに
は待ち時間およびパケット喪失に伴う問題もある。待ち時間とは、受信器側での
オーディオ・データの受信と、受信器のオーディオ出力装置からの対応する圧力
波の出力との間にある時間遅延のことである。オーディオ待ち時間は、オーディ
オ出力がビデオ出力などの他のイベントと同期化されることを意図しているアプ
リケーションでは、特に問題である。たとえば、テレビ会議またはテレビ伝送の
オーディオ部分に待ち時間があると、登場人物の口の動きなどの画面上での目に
見えるキューと、口の動きに関連付けられたスピーチなどの関連するオーディオ
出力との間にタイミングのずれが生じることがある。このようなタイミングのず
れによって、結果的に不満足なオーディオ/ビジュアル・プレゼンテーションと
なることがある。
【0021】 パケット喪失は、多くのネットワーク接続上で一般的に発生し、多くのオーデ
ィオ・データ・サンプルの喪失を引き起こす可能性がある。オーディオ・データ
は、データ・パケット内に封入されたサンプルのグループとして、ネットワーク
を介して伝送される。受信器側でパケットが受信されると、パケットからサンプ
ルが抽出され、音声波形の再構成に使用される。パケット喪失が発生すると、オ
ーディオ・データの多くのサンプルが音声波形の再構成から取り残される。
【0022】 オーディオ・ストリーミングの場合、オーディオ・データはそのそれぞれのパ
ケットから抽出され、即時に出力用に処理される。典型的には、受信器が喪失し
たパケットの再送信を送信器に要求すること、ならびに受信器がオーディオ出力
を修正するのに十分な時間内に送信器が喪失したパケットで応じることは不可能
である。音声波形の対応する部分はすでに圧力波として出力装置外部で処理され
ている。パケット喪失を介したオーディオ・データの喪失の結果、具体的にはパ
ケット喪失が比較的頻繁に発生する不良ネットワーク接続によって、通常は無音
声の期間という出力音声品質の望ましくない低下が発生する場合がある。
【0023】 (発明の概要) ネットワーク環境内でオーディオ・プロトコルをサポートするための方法およ
び装置について記載する。本発明の一実施形態では、受信器に関連付けられたオ
ーディオ処理およびハードウェア要件は、ネットワーク上の送信器と受信器との
間のオーディオ・データ伝送用に単一のオーディオ・プロトコルを指定すること
によって最小限にされる。プロトコルは、高品質の音声を可能にし、受信器の複
雑さをさらに最小限にする、サンプリング・レート、ビット解像度、および量子
化方式を指定する。送信器には、必要に応じてオーディオ・データを指定された
プロトコルに変換するためのドライバが備えられる。
【0024】 ネットワークを介したオーディオ・ストリームの伝送に伴う問題を補償するた
めに、指定されたプロトコルの態様が提供される。指定されたプロトコルは、パ
ケット喪失によって連続的にオーディオ・データ・サンプルを紛失することによ
り結果的に生じるエラーを最小限にするために、データ・パケット内のオーディ
オ・サンプルをインターリーブするための形式を指定する。受信器は、さらに補
間を介したオーディオ・データ・サンプルの喪失を補償することができる。指定
されたプロトコルに従い、オーディオ・データがどのように処理されるかを管理
するためにシーケンス・サイズが指定される。送信器は、オーディオ待ち時間を
各オーディオ・アプリケーションに指定された制限内で維持するために、シーケ
ンス・サイズを適応的に制御する。指定されたプロトコルは、複数のオーディオ
出力装置間で、複数のチャネルを備えたオーディオ・データがどのようにミキシ
ングおよびルーティングされるかを指定するために、ミックス・モードおよびい
くつかのチャネルも決定する。
【0025】 (発明の詳細な説明) 本発明は、ネットワーク環境内でオーディオ・プロトコルをサポートするため
の方法および装置である。以下の記述では、本発明の実施形態をさらに詳しく説
明するために、数多くの特定の詳細について述べる。ただし、当分野の技術者で
あれば、本発明がこれらの特定の詳細を使用せずに実施できるものであることは
明らかであろう。他の例では、本発明を不明瞭にしないために、よく知られた特
徴については詳細に説明していない。
【0026】 《ネットワーク化された伝送のための単一オーディオ・プロトコル》 本発明の一実施形態では、「送信器」として働くコンピュータと「受信器」と
して働く他のコンピュータとの間でオーディオ・データを伝送するために、単一
のオーディオ・プロトコルが使用される。オーディオ・データのソースは、指定
されたプロトコルに従ってオーディオ・データを供給する役割を担う。たとえば
、送信器およびその内部オーディオ・サービスは、オーディオ・データを受信器
に送信する前に指定されたプロトコルに合致させるために、任意の必要なプロト
コル変換を実行するように構成される。受信器のハードウェアおよび処理要件は
、必要なオーディオ・プロトコルを1つだけ受信器側でサポートするように、最
小限にされる。
【0027】 この明細書では主に、送信器から受信器へ一方通行で伝送されるオーディオ・
データに適用されるように論じられるが、オーディオ・データは、指定されたプ
ロトコルを使用して、受信器から送信器へ伝送することもできる。その後送信器
は指定されたプロトコルの形式でオーディオ・データを処理するか、または送信
器は、オーディオ・データをさらに処理するために他のオーディオ・プロトコル
に変換することができる。
【0028】 指定されたプロトコルは、他のすべてのオーディオ・プロトコルを含むために
非常に高品質の音声を与えるように選択される。指定されたプロトコルの音声品
質が高ければ、送信器によってプロトコルを変換する必要があっても、元のオー
ディオ・データからの音声品質の損失は発生しない。高い音声品質を提供するプ
ロトコルの一例は、サンプリング・レートが48キロヘルツ、解像度が16ビッ
トの、線形量子化方式を指定するプロトコルである。人間の耳で検出可能な周波
数の可聴範囲は、20ヘルツから20キロヘルツ(20〜20,000Hz)の
間である。48キロヘルツのサンプリング・レートは、理論的には24キロヘル
ツの音声波形を再構成するのに十分である。これによって、指定されたプロトコ
ルは、4キロヘルツの周波数帯域幅の余裕をもって、可聴範囲内でどんな音声波
形も再構成することができる。
【0029】 16ビットのオーディオ・サンプル解像度であれば、65,536の量子化レ
ベルが可能である。これは、ほとんどまたはすべての消費者音声プロトコルに等
しいかまたはこれよりも大きい解像度を提供するのに十分である。16ビット・
サンプルが提供する高解像度によって、線形量子化方式を使用することが可能に
なり、さらに振幅の低い信号にも十分な高解像度を提供できる。線形量子化方式
を使用すると、デジタル・オーディオ・データから音声波形を再構成するのに必
要な処理およびハードウェアが簡略化される。たとえば、スピーカを駆動するの
にデジタル/アナログ変換器(DAC)を使用すると、オーディオ・データを線
形化するために前処理をする必要がなく、DAC自体の中で非線形変換関数を実
施する必要がない。
【0030】 送信器が指定されたプロトコルを使用してオーディオ・アプリケーションをサ
ポートするか、あるいはたとえば、サンプル・レート変換を実行するために多重
レートのデジタル・フィルタリング技法を使用するか、非線形に量子化されたデ
ータを線形に量子化されたデータに変換するために量子化テーブルを使用して、
ドライバを使用して他のオーディオ・プロトコルと指定されたプロトコルとを変
換するように、送信器を構成することができる。解像度変換は、一般に解像度の
低いオーディオ・データにさらに最下位ビット(LSB)を埋め込むことで実行
できる。LSBの埋込みにはディザリング技法も使用できる。
【0031】 本発明の一実施形態では、コネクションレス型データグラム方式およびパケッ
ト・フォーマットを使用して、送信器と受信器との間でオーディオ・データ・サ
ンプルを伝送する際に、データ・パケットが使用される。データグラム方式は、
各データグラムが独立して処理され、データグラム間に重要な共用状態がないこ
とから、コネクションレスとみなされる。これによって、個々のデータグラムが
頻繁に失われる可能性のある信頼性のないネットワーク上で、より確実なシステ
ム性能が実現できる。
【0032】 パケット・フォーマットの範囲内で、オーディオ・データ・パケットには以下
の情報が含まれる。 オーディオ・シーケンス番号・・・・オーディオ・ストリームが、一連のオ
ーディオ・データ・シーケンスとして処理される。オーディオ・シーケンス番号
は、現在のデータ・パケットを処理用の正しいオーディオ・データシーケンスに
関連付けることができる。 シーケンス長・・・・・・・・・・・シーケンス長さは、オーディオ・デー
タ・サンプルに関して指定されるもので、本明細書で後述する待ち時間制御の一
要素である。 パケット長・・・・・・・・・・・・パケット長さは、オーディオ・データ
・サンプルに関して指定されるもので、データ・パケットからインターリーブさ
れたデータを抽出するのに使用される。 インターリーブ・サイズ・・・・・・インターリーブ・サイズは、現在のオ
ーディオ・シーケンスのインターリーブ間隔を指定するのに使用される。 インターリーブ・オフセット・・・・インターリーブ・オフセットは、現在
のデータ・パケット内で第1のオーディオ・サンプルに対応するオーディオ・シ
ーケンスのオーディオ・サンプルと指定するのに使用される。シーケンス長さ、
パケット長さ、インターリーブ・サイズ、およびインターリーブ・オフセットは
、本明細書で後述するインターリーブされた処理操作で使用される。 ミキサー・モード・・・・・・・・・ミキサー・モードは、現在のデータ・
パケットに含まれるオーディオ・チャネル用の特定のミキシングおよび出力配列
を指定する。ミキシング・モードおよびチャネル割当てについては、本明細書で
後述する。 オーディオ・チャネル数・・・・・・オーディオ・チャネル数は、オーディ
オ・サンプル・データを適切なチャネル・データとして解析および処理するのに
使用される。 オーディオ・データ・・・・・・・・オーディオ・データには、現在のデー
タ・パケットのすべてのオーディオ・データ・サンプルが含まれる(パケット長
*オーディオ・チャネル数*16ビット)。
【0033】 《適応待ち時間制御》 多くのオーディオ・アプリケーションは、待ち時間要件の対象となる。これは
、受信器がオーディオ・データを受信する時間から、オーディオ・データが圧力
波の形で受信器から出力される時間までの間で許される時間は、指定された遅延
量だけであるという意味である。指定量を超える場合またはこれを下回る場合の
どちらも、待ち時間は不適当とみなされる。たとえば、受信器内へのテレビジョ
ン・フィードは、テレビジョン・フィードに関連付けられたオーディオ出力が、
ビデオ出力内の適切なタイミング・ポイントからのオフセットである場合、不十
分に表されたものとみなされる。
【0034】 AV(オーディオ/ビジュアル)同期に関して、人間は、比較的瞬時にビジュ
アル情報を送達する光の速度と、オーディオ情報をイベントからの距離1フィー
ト当たり約1ミリ秒遅く伝達される音の速度との相違によって、イベントを見た
後でイベントを聞くことに馴れている。オーディオとビジュアルのイベントが乱
れて知覚されたときには、実質的に不調和を認識する。
【0035】 オーディオ待ち時間に寄与する要因には、以下に記載するように、受信器自体
に関連付けられた固定遅延、および音声波形を個々のシーケンスに分離すること
によって生成される遅延が含まれる。受信器の固定遅延は、デジタル・オーディ
オ・データを、スピーカなどの出力装置に適したドライブ信号に変換するための
バッファリング遅延およびハードウェア遅延、ならびに出力装置自体の中での任
意の伝播遅延に関連付けられる。この固定の受信器遅延は典型的には約25ミリ
秒であるが、受信器のハードウェア構成によって異なる場合がある。
【0036】 音声波形は一般に個々のサンプル・シーケンスに分割される。オーディオ・デ
ータが再生されるとき、すなわち圧力波に再構成されるとき、シーケンスは、ま
ずパケットで送られるサンプルから構成され、そして、シーケンスが完成すると
、そのシーケンスがシステムで処理され出力装置へと送られる。次のシーケンス
は、第1のシーケンスの出力中に構成され、第1のシーケンスが終了するまでは
、その次のシーケンスの出力は開始できない。この順送りの(シーケンシャル)
処理が、シーケンス長に等しい全体の待ち時間に寄与する遅延の原因となる。た
とえば、オーディオ・データが100ミリ秒シーケンスで処理されている場合、
オーディオ・システムの待ち時間は、シーケンシャル遅延に由来する100ミリ
秒に、固定の受信器遅延を加えた値に等しくなる。本明細書の後半で論じるよう
に、データ・サンプルのインターリーブを可能にするには、シーケンス長を長く
することが望まれる。ただし、シーケンス長が長くなるほど待ち時間は増加する
。オーディオ待ち時間が所望の限界を超えない最大のシーケンス長を利用するこ
とで、性能を最適化することができる。
【0037】 本発明の一実施形態では、システムのオーディオ待ち時間を適応制御して、待
ち時間を所望の範囲内に抑制する。したがってオーディオ性能の向上が達成され
る。待ち時間制御を実行するために、所与のオーディオ・アプリケーションに許
容できる最大待ち時間が指定される。最大許容待ち時間は、オーディオ・アプリ
ケーションの時間厳密性の要求ないし時間的同期化性能の問題に基づいて決定す
ることができる。固定受信器遅延も指定される。最大許容待ち時間および固定受
信器遅延から、送信器は、待ち時間要件を満たすオーディオ・シーケンスの最大
長を決定することができる。その関係は、以下のとおりである。 最大シーケンス長=最大許容待ち時間−固定受信器遅延
【0038】 送信器は、上式で計算された最大シーケンス長に等しいかまたはこれよりも小
さいカレント(現在の)・シーケンス長を決定する。このカレント・シーケンス
長は、オーディオ・データと共に受信器に送信され、オーディオ・シーケンスの
処理がその指定されたカレント・シーケンス長に従って実行されるようにされる
。シーケンス長は、待ち時間要件の変化に伴って変更することができるので、最
適な性能が達成される。したがって、個々のオーディオ・アプリケーションの特
定待ち時間要件を、適応的な方法で満たすことができる。
【0039】 図4Aおよび4Bは、音声波形の出力における待ち時間制御の効果を示す図で
ある。各図が、水平時間軸を基準にした入力および出力の波形を示す。図4Aは
、受信器側で受信されるオーディオ・データ入力を表す波形400を含む。波形
400は、シーケンスM、シーケンスM+1、およびシーケンスM+2とラベル
表示された、100ミリ秒シーケンスに分割される。図4Aは、オーディオ出力
装置を介して受信器から出る、実際のオーディオ出力を表す波形401も含む。
波形401は、システムのオーディオ待ち時間によるタイミング・オフセットを
除いて、波形400とほぼ同じである。波形401内でのシーケンスMの始まり
は、波形400内でのシーケンスMの始まりよりも、TLATENCY量だけ遅延して
いる。TLATENCYは、シーケンスM、TSEQ、および固定受信器遅延TRCVRの合計
によって決定される。図4Aの例では、TSEQ=100msおよびTRCVR=25
msで、合計待ち時間はTLATENCY=125msとなる。
【0040】 オーディオ・アプリケーションの中には、125ミリ秒の待ち時間では長すぎ
るものもある。図4Bは、所望の最大待ち時間60ミリ秒を達成するために、波
形のシーケンス長を35ミリ秒まで減らす効果を示す図である。図4Bには、受
信器側で受信されるオーディオ・データ入力を表す波形400が示される。図4
Bでは、波形400は、シーケンスM’、シーケンスM’+1、およびシーケン
スM’+2などとラベル表示された、35ミリ秒のシーケンスに分割される。図
4Bには、受信器を出るオーディオ出力を表す波形402も含まれる。波形40
2は、タイミング・オフセットT’LATENCYを除いて、波形400とほぼ同じで
ある。固定受信器遅延TRCVRは同じままである。ただし、図4Bではシーケンス
長(T’SEQ)が35ミリ秒まで減らされているために、合計オーディオ待ち時
間はT’LATENCY=60msまで減っている。図からわかるように、記載どおり
にオーディオ待ち時間を制御することによって、最大可能シーケンス長を維持し
ながら、オーディオ待ち時間を所望の制限内に制約することができる。
【0041】 《ミキシング・モードおよびチャネル割当て》 本発明の一実施形態では、オーディオ・データは1つまたは複数のオーディオ
・データ・チャネルで構成することができる。複数チャネルの場合、各チャネル
のオーディオ・データは、他のチャネルのオーディオ・データによってインター
リーブされる。たとえば、3つのチャネル配列の場合、データ・パケットには以
下のようなシーケンシャル構成のオーディオ・サンプルが含まれる。 データ・パケット: [channel0/sample0, channel1/sample0, channel2/sample0, channel0/sample1, channel1/sample1, channel2/sample1, channel0/sample2, channel1/sample2, channel2/sample2, etc.]
【0042】 本発明の一実施形態により、オーディオ伝送に使用されるオーディオ・プロト
コルは、オーディオ・データに関連付けるために2つのフィールドを指定するの
であって、第1のフィールドはチャネル数であり、第2のフィールドは所定のミ
キシング配列、すなわち「標準ミックス」に含めるためのチャネル数である。標
準ミックスに含めるチャネル数は、「ミックス・モード」とも呼ばれることがあ
る。どちらのフィールドも各フィールドに4ビットを付与することにより、単一
バイトで表すことができる。これにより最大16チャネル、および16ミックス
・モードで表すことができる。
【0043】 伝送されるチャネル数よりも少ないミックス・チャネルが指示されると、標準
ミックスに含まれない残りのチャネルは、これらのチャネルに対応するオーディ
オ出力に直接送られる。受信器のハードウェアが標準ミックスから外れたこれら
のチャネルに対するサポートを含まない場合、これらのチャネルはドロップされ
る。
【0044】 伝送されるチャネル数と同じかまたは多いミックス・チャネルが指定されると
、受信器はこれらのチャネルを再生するのに利用可能な任意の合成を自由に使用
することができる。たとえば、2つのチャネルが送られて標準ミックス内には6
つのチャネルが指定され、受信器には6つ以上の出力がある場合、受信器は6つ
のチャネルを与えるマトリクス方式を使用して、出力を再生することができる。
【0045】 「標準ミックス」の可能な配列の1例が以下の表1に示されており、縦のイン
デックスはミックス・モード、横のインデックスはチャネル数である。
【表1】 凡例: 番号付きチャネル 直接出力(送られた場合) FC/FL/FR 前中央/前左/前右 RC/RL/RR 後ろ中央/後ろ左/後ろ右 SW サブウーファ、下中央、または効果 TC 上中央 CL 中央左(FLとRLの中央) CR 中央右(FRとRRの中央)
【0046】 16番目のミックス・モードは、ミックス・モードによって15のチャネルが
指定され、16のチャネルが送られたときに定義される。2つ以上のチャネルに
同じ出力宛先が与えられた場合(たとえばFL、FRなど)、これらのチャネル
は指定された装置上の出力用の複合波形にミックスされる。
【0047】 《エラー隠閉のためにインターリーブされるオーディオ・データ》 本発明の一実施形態では、パケット喪失によってオーディオ・データ内に生じ
る長いギャップまたはポップを防ぐために、データのインターリーブを利用する
。オーディオ・データをインターリーブすると、ネットワーク伝送時にパケット
が失われたときに紛失される、オーディオ・シーケンス内の連続するサンプル数
を最小限にし、紛失されたオーディオ・データ・サンプルを優良なオーディオ・
データ・サンプル間に隠閉することができる。オーディオ・データ内に残された
小さなギャップは、紛失したオーディオ・データの場所に近似のデータを挿入す
るデータ補間技法を使用して、さらに隠閉することができる。
【0048】 オーディオ・データは、送信器と受信器の間で、データ・パケット単位で封入
されたサンプル・グループとして伝送される。いくつかのデータ・パケットを各
オーディオ・シーケンスに関連付けることができる。データ・パケットが受信器
によって受信されると、特定のオーディオ・シーケンスが識別され、オーディオ
・データ・サンプルはパケットからバッファに転送される。
【0049】 本発明の一実施形態では、オーディオ・データをデータ・パケットにパッキン
グするためにインターリーブ・サイズが指定される。このインターリーブ・サイ
ズは、どの程度のデータ・パケット数が所与のシーケンスに使用されるか、およ
び各データ・パケット内に含めるためにどのようにオーディオ・データ・サンプ
ルを選択するかを指定するものである。たとえば、インターリーブ・サイズが3
であれば、所与のシーケンスにオーディオ・データを伝送するのに3つのデータ
・パケットが使用され、各データ・パケットには、シーケンス中の3つの連続し
たオーディオ・データ・サンプルのセットそれぞれから1つのオーディオ・デー
タ・サンプルを格納することを示す。ゼロから(インターリーブ・サイズ−1)
までの一意のインターリーブ・オフセットが各データ・パケットに割り当てられ
る。インターリーブ・オフセットは、所与のデータ・パケットに対して、開始オ
ーディオ・データ・サンプルを指定する。受信器側では、インターリーブ・サイ
ズおよびインターリーブ・オフセットを使用して、データ・パケットのオーディ
オ・データ・サンプルから音声波形が再構成される。
【0050】 ネットワークの中には、規則的な間隔でパケットが失われるという伝送上の問
題を伴うものがある。パケットの規則的な喪失と、その結果発生する定期的なサ
ンプル・エラーを途絶させるために、データ・パケットが伝送される順番をラン
ダムまたは擬似ランダム様式で実行することができる。これは、たとえば、第1
のパケットは必ずシーケンス内の第1のサンプルで始まり、第2のパケットは必
ず第2のサンプルで始まるなどというのではなく、各シーケンスのパケット間で
インターリーブ・オフセット割当てをランダムに行うことで、効率よく達成する
ことができる。
【0051】 インターリーブされたデータの一例として、3つのインターリーブ・サイズを
有する8つのサンプル・シーケンスについて考察してみよう。3つのデータ・パ
ケットはオーディオ・データの伝送に使用される。ゼロから(インターリーブ・
サイズ−1)までのインターリーブ・オフセットは、データ・パケットにランダ
ムに割り当てられる。各データ・パケットは、所与のパケット用に指定されたイ
ンターリーブ・オフセットに対応するサンプルで始まり、オーディオ・シーケン
スの終わりに達するまで、インターリーブ・サイズずつサンプルを増分しながら
、所与のシーケンスのオーディオ・データ・サンプルで満たされる。可能なパケ
ット割当ての一例は、次のとおりである。 サンプル (0 1 2 3 4 5 6 7) パケット1、オフセット=1: 1 4 7 パケット2、オフセット=0: 0 3 6 パケット3、オフセット=2: 2 5
【0052】 このやり方でインターリーブすることによって、オーディオ・データ・シーケ
ンスの連続したサンプルの紛失数を、データ・パケットの喪失数よりも少ないか
または等しく抑えることができる。これは、インターリーブされないサンプル配
列の場合とは対照的である。インターリーブされないサンプル配列では、連続し
たサンプルの紛失数が、単一パケット中のサンプル数を下回ることはなく、パケ
ットの喪失数にパケット当たりのサンプル数を乗じて得た値まで多くなってしま
うことがある。
【0053】 図5は、オーディオ・シーケンス上でのインターリーブ効果を示す図である。
図5に示す例は、12のオーディオ・データ・サンプルを含むシーケンスである
。オーディオ・データはそれぞれ3つのサンプルを含む4つのデータ・パケット
で伝送される。サンプリングされた波形500は、すべてのオーディオ・サンプ
ルが損なわれていないシーケンスを表す。サンプリングされた波形501〜50
3は、第2のデータ・パケットが失われ、その結果3つのサンプルが紛失した場
合のシーケンスを表す。
【0054】 サンプリングされた波形501の場合、データ・パケット・サンプルの割当て
は(パケット1:0,1,2; パケット2:3,4,5; パケット3:6,
7,8; および パケット4:9,10,11)となる。サンプル3、4、お
よび5が波形501から紛失した結果、シーケンスの中程に3つのサンプル・ギ
ャップが生じる。その結果、連続するサンプルが紛失したところは平らな波形に
なる。したがって、再構成された波形は歪むことになる。波形501内のような
ギャップから発生する音声歪みは、データ・パケット当たりのサンプル数が増加
するにつれて大きくなる。
【0055】 サンプリングされた波形502は、前述のようにインターリーブされたデータ
・サンプルから構成される。データ・パケット・サンプルの割当ては(パケット
1:1,5,9; パケット2:2,6,10; パケット3:0,4,8;
および パケット4:3,7,11)となる。第2のデータ・パケットが失われ
ることで、サンプル2、6、および10が波形502から紛失する。その結果、
非インターリーブ波形501の大きなギャップよりもシーケンスの再構成に与え
る影響がかなり小さい、いくつかの1サンプル・ギャップが生じる。
【0056】 波形502内のギャップの影響は、波形503に示したような紛失サンプルの
補間を実行することによって、さらに小さくすることができる。音質を向上させ
るためには、どのような補間機能を使用しても良い。波形503に示された補間
機能は線形補間であり、紛失したサンプルによって形成されるギャップの両側に
ある2地点間にラインを構成し、紛失サンプルのサンプリングの瞬間にそのライ
ンの値を決定することによって紛失したサンプルが補われる。その結果、理想的
な波形500にさらによく似た波形が形成される。補間水準が高いほど、結果も
良くなる。
【0057】 《自動レート変換》 一般に、本発明の一実施形態では、送信器はオーディオ・ストリームを、伝送
用のオーディオ・プロトコルに指定されたサンプリング・レートに変換する役割
を担う。これには、プロトコルを収容するためのオーディオ・ストリームのレー
ト変換も含まれる場合がある。ただし、特定セットのサンプリング・レートの場
合、レート変換は、受信器側のインターリーブおよび補間メカニズムによって自
動的に実行される。特定セットのサンプリング・レートには、プロトコルによっ
て指定されたサンプリング・レートの整数因数である、サンプリング・レートが
含まれる。たとえば、48キロヘルツのサンプリング・レートでは、整数因数と
しての資格がある適用可能なサンプリング・レートの中に、4、6、8、12、
16、および24キロヘルツが含まれる。4キロヘルツより小さい他のサンプリ
ング・レートも整数因数としての資格を持つものもあるが、小さなサンプリング
・レートがオーディオ・アプリケーションで使用されることはあまりない。
【0058】 適切なインターリーブ・サイズを指定することにより、送信器は、レート変換
せずに、これら整数因数のサンプリング・レートでオーディオ・データを送達す
ることができる。適切なインターリーブ・サイズを決定するための単純なメカニ
ズムは、48キロヘルツ(または他の指定されたプロトコル・サンプル・レート
)を問題のサンプル・レートで割ることである。この除算の結果を、オーディオ
・データを受信器に送達するデータ・パケットのインターリーブ・サイズとして
使用することができる。オーディオ・データの正しい位相を維持するためには、
一貫したインターリーブ・オフセットが使用される。たとえば、8キロヘルツの
オーディオ・データは、サイズ6のインターリーブ(48/8=6)および一定
のインターリーブ・オフセットで送信できる。このオーディオ・データは6つの
中で1つのデータ・パケットだけが首尾良く受信器に達するという仮定の下で、
48キロヘルツ・データとして処理される。受信器側の補間機能は、8キロヘル
ツのオーディオ・データを48キロヘルツに変換するために、「紛失した」サン
プルを自動的に補う。インターリーブ・サイズとインターリーブ・オフセットの
他の組み合わせは、同じ自動レート変換に影響を与えるために、同様に適用する
ことができる。たとえば、8キロヘルツのオーディオ・データは12のインター
リーブ・サイズで、6つのサンプルが別個のインターリーブ・オフセットを一貫
して使用して(たとえば、(0,6)、(1,7)、(2,8)などのインター
リーブ・オフセットを一貫して使用して)、送達することができる。
【0059】 上記に例示した様式では、送信器はインターリーブ・サイズ値を使用して、4
8キロヘルツのサンプリング・シーケンスに関連付けられたサンプル位置を確立
する。インターリーブ・オフセット値は、正しい位相を維持するために、オーデ
ィオ・データ・サンプルを正しい48キロヘルツのサンプル位置に配置するのに
使用される。したがって送信器は、レート変換を実行せずに、整数因数のサンプ
ル・レートでオーディオ・データ・サンプルの伝送に影響を与えることができる
。これは、送信器が提供するデータの帯域幅が低い場合に、低い帯域幅をネット
ワークに渡すことができるという意味でもある。受信器は伝送されたオーディオ
・データを48キロヘルツ・データとして解釈し、それに応じてオーディオ・デ
ータを処理する。
【0060】 《オーディオ・プロトコルを実施する処理流れ》 図6Aは、本発明の一実施形態に従って、オーディオ・データを処理するため
に、送信器が実施するステップを示す流れ図である。ステップ600では、送信
器が受信器に伝送するためのオーディオ・データを取得する。オーディオ・デー
タは、ハードウェア取込みボードを使用したオーディオ信号の取込み、オーディ
オ・サービスによるオーディオ・データの生成、またはマイクロフォンや電子楽
器などのオーディオ入力装置からのオーディオ・データの入力など、どのような
メカニズムでも取得することができる。オーディオ・データが取得されると、そ
のオーディオ・データは、オーディオ・データ伝送用に指定されたプロトコルに
適合させるために、必要に応じてステップ601で変換される。この変換には、
たとえば、サンプリング・レート変換、解像度変換、および量子化線形化のうち
の1つまたは複数が含まれることがある。ただし、サンプリング・レートの中に
は、本明細書で前述したように受信器によって自動的に変換されるものもある。
【0061】 ステップ602では、送信器が、オーディオ・データに関連付けられたオーデ
ィオ・アプリケーションに関する最大許容待ち時間を決定する。ステップ603
では、最大許容待ち時間および固定受信器遅延に基づいて、待ち時間要件を満た
すシーケンス長さが決定される。ステップ604では、送信器がオーディオ・デ
ータをデータ・パケットにインターリーブし、そのデータ・パケットを受信器に
伝送する。ステップ604を終了すると、プロセスはステップ600に戻る。
【0062】 図6Bおよび6Cは、本発明の一実施形態に従ってオーディオ・データを処理
するための受信器プロセスを示す流れ図である。受信器は、主にネットワークか
らデータを受信し、インターリーブ解除(デインターリーブ)することでシーケ
ンスをアセンブルして標準ミックスを実行し、受信したデータ・レートをオーデ
ィオ出力ハードウェアのデータ・レートにリタイミングした後、データを出力ハ
ードウェアのデータ・バッファ内にミキシングするという役割を担い、ここで複
数の送信器からのオーディオをオーディオ出力から聞くことができる。このプロ
セスは、データを受信してインターリーブ介助する受信器スレッドと、完了した
シーケンスをハードウェア・バッファに出力する出力スレッドとの2つの実行ス
レッドを使用する、本発明の一実施形態で実行される。
【0063】 図6Bは、受信器スレッドの流れの一実施形態を示す図である。ステップ60
5では、新しいデータ・パケットが受信される。ステップ606では、受信スレ
ッドがパケット・ヘッダを解析して、シーケンス番号を抽出する。このシーケン
ス番号が前に受信したパケットのシーケンス番号と一致すれば、プロセスはステ
ップ611までジャンプする。ただし、このシーケンス番号が前に受信したパケ
ットのシーケンス番号と異なる場合は、プロセスはステップ607に分かれ、出
力用に現在のシーケンスを処理して、新しいデータ・パケット内で識別された新
しいシーケンスに資源をセットアップする。
【0064】 ステップ607では、紛失サンプルを補償するためにカレント・シーケンス上
でエラー隠閉(たとえば補間)が実行される。ステップ608では、カレント・
シーケンスのサンプルがリタイミングされ、ステップ609では、カレント・シ
ーケンスがハードウェア出力バッファ内にミックスされる。受信器がシーケンス
をハードウェア出力バッファ内にミックスするこのステップは、新しいシーケン
スが到着することでカレント・シーケンスが出力バッファ内に「プッシュされる
」ので、「プッシュ」操作と呼ばれる。ステップ610では、新しいデータ・パ
ケットのヘッダ内に指定された長さを有する新しいシーケンス・バッファが、新
しいシーケンスに割り振られる。プロセスはステップ610からステップ611
へと続き、新しいデータ・パケットの内容処理を開始する。
【0065】 ステップ611では、パケット長、インターリーブ・サイズ、およびインター
リーブ・オフセットに従って、新しいデータ・パケットからオーディオ・データ
が抽出される。抽出が実行されている間、ステップ612に示したように、サン
プルは指定されたミックス・モードに従ってシーケンス・バッファ内にミックス
される。シーケンス・バッファのチャネル化は、オーディオ出力ハードウェアに
よってサポートされるチャネル数に依存する。プロセスは、新しいデータ・パケ
ットを受け取るために、ステップ612からステップ605に戻る。
【0066】 図6Cは、受信器の出力スレッドを示す流れ図である。通常、出力スレッドは
ハードウェア出力バッファからのデータを消費し、これをオーディオ出力ハード
ウェアにコピーする。出力スレッドがハードウェア出力バッファからのデータを
消費する際に、出力スレッドは各シーケンス・バッファをチェックして、いつ出
力されるスケジュールになっているかを確認する。出力スレッドがシーケンスに
追い付くと、スレッド受信プロセスについて上述したように、出力スレッドは部
分的に受信されたシーケンスを即時にミックスさせる。ネットワーク化された環
境では、この問題は、サンプル時間ベースのレート・エラーの場合には発生する
ことが少なく、シーケンスの完了を遅らせる原因となるネットワーク待ち時間ジ
ッタがある場合には発生することが多い。受信器スレッドは、新しいシーケンス
用のデータ・パケットが到着することでトリガされると、データのシーケンスを
出力バッファ内に「プッシュ」できるので、出力スレッドは、シーケンスが遅れ
たときにシーケンスのミキシングをトリガすることで、シーケンスを出力バッフ
ァ内に「プル」することができる。
【0067】 図6Cのステップ613では、関連するシーケンスがいつ出力されるようにス
ケジュールされているかを判定するために、出力スレッドがシーケンス・バッフ
ァをチェックする。ステップ614では、シーケンスがその出力スケジュールを
基準にして遅れていない場合、プロセスはステップ618に進む。ただし、ステ
ップ614で、シーケンスが遅れている、すなわちスケジュールよりも遅いと判
定されると、出力スレッドはステップ615でシーケンスのエラー隠閉を開始し
、ステップ616でシーケンスのリタイミング(retiming)を実行する。ステップ
617では、リタイミングされたシーケンスが出力バッファにミックスされる。
ステップ617はステップ618に続く。ステップ615〜617は、発生の可
能性がある不完全なシーケンスが、受信器の出力スケジュールと一致させるため
に出力バッファ内に「プルされる」ので、「プル」操作と呼ばれる。
【0068】 ステップ618では、出力スレッドが、カレント・出力バッファ内にミックス
する必要がある可能性のある他のシーケンスが進行中であるかどうかを判定する
。他のシーケンスがなければ、ステップ619で出力バッファがオーディオ・ハ
ードウェアに送られ、プロセスはステップ613に戻る。ステップ618で、カ
レント・出力バッファ内にミキシングする必要のある他のシーケンスがあれば、
プロセスはステップ613に戻って次のシーケンスをチェックする。
【0069】 以上、本発明の一実施形態に従って考察した図6Bおよび6Cに示されるよう
に、待ち時間テストは、シーケンスが予想よりも速いか遅いかを判定するために
実行される。待ち時間が変更されると、次いでデータは、オーディオ・ハードウ
ェアによってデータが消費されるよりも速くまたは遅く、送信器によって伝送さ
れる。これはおそらく、送信器が、受信器が使用するものには依存していない、
時間ベースを使用して動作しているためである。送信器の方が速い場合は、オー
ディオ・ハードウェアの出力生成が遅れ、バッファのオーバフローを引き起こす
。送信器の方が遅い場合は、バッファがアンダーフローして、受信器からのオー
ディオ出力が時折停止する。これを補償するために、出力ミキサーは、たとえば
「プッシュ」操作時に待ち時間の増加が検出された場合は、リタイミング・ステ
ップでシーケンス当たり少数のサンプルを削除し、たとえば「プル」操作時に待
ち時間の減少が検出された場合は、リタイミング・ステップ中にシーケンス当た
り少数のサンプルを追加する。本発明の一実施形態では、サンプルは適切に追加
または削除された後、補間方式を使用してフィルタリングされる。この「プッシ
ュ・プル」処理モデルは、サンプルのインターリーブおよびエラー隠閉方式によ
って可能となる。
【0070】 《オーディオ・プロトコルのネットワーク実施》 図7は、本発明の一実施形態に従ったネットワーク環境を示す構成図である。
図7には、ネットワーク708、複数の送信器700、1つまたは複数の一般オ
ーディオ・ソース706、および複数の受信器710が含まれる。
【0071】 送信器700は、それぞれがネットワーク接続705を介してネットワーク7
08に結合され、オーディオ・ソース706はそれぞれがネットワーク接続70
7を介してネットワーク708に結合される。各送信器700は、オーディオ・
データ取得メカニズム701、待ち時間制御メカニズム702、プロトコル変換
メカニズム703、およびインターリーブ操作メカニズム704を備える。一般
オーディオ・ソース706は、スタンドアロン型のオーディオ入力装置、または
指定されたプロトコルに合致しないためにいずれか1つの送信器700を介して
オーディオ・データを受信器に送信する他のコンピュータなどの、ネットワーク
708に結合されたどのようなオーディオ・データ・ソースでもよい。
【0072】 受信器710は、それぞれがネットワーク接続709を介してネットワーク7
08に結合される。各受信器710は、インターリーブ操作メカニズム711、
補間メカニズム712、ミックス・モード・メカニズム713、および1つまた
は複数のオーディオ出力装置714を備える。受信器710は、送信器700の
1つに伝送するためにオーディオ・データを取得するための1つまたは複数のオ
ーディオ入力装置(図示せず)も備える。
【0073】 メカニズム701〜704および711〜713は、ソフトウェア・プロセス
またはハードウェア装置、あるいは所与の機能を提供するように構成されたソフ
トウェア・プロセスとハードウェア装置の組み合わせを含むことができる。デー
タ取得メカニズム701には、(たとえばビデオ信号または電話回線から)オー
ディオ・ストリームを取り込むメカニズム、格納されたオーディオ・データをメ
モリ装置から読み取るソフトウェア・アプリケーション、オーディオ・データを
合成するソフトウェア・アプリケーション、あるいは送信器700に直接結合さ
れたオーディオ・ソース(図示せず)またはネットワーク708を介して送信器
700に結合されたオーディオ・ソース706のいずれかからオーディオ・デー
タを受信する通信装置などの、オーディオ・データを提供する任意の装置を含む
ことができる。
【0074】 待ち時間制御メカニズム702は、待ち時間要件に合致するようシーケンス長
の設定をするよう構成されている。プロトコル変換メカニズム703は、オーデ
ィオ・データの任意の必要なサンプリング・レート(サンプリング・レートの中
には受信器によって自動的に変換できるものもあるので留意のこと)、解像度、
または量子化変換を提供するように構成される。インターリーブ操作メカニズム
704は、送信器700と受信器710との間でのオーディオ・データの伝送を
容易にするために、インターリーブされたオーディオ・データ・サンプルを使用
してデータ・パケットをパックおよびパック解除(アンパック)するように構成
されている。送信器700は、オーディオ・データ用のミックス・モードを指定
するようにも構成されている。
【0075】 インターリーブ操作メカニズム711は、インターリーブされたオーディオ・
データを使用してデータ・パケットをパックおよびパック解除するように構成さ
れている。ただし、インターリーブ操作メカニズム711は、補間操作メカニズ
ム712と共に動作して、パケット喪失がある場合にエラー隠閉を実行する。ミ
ックス・モード・メカニズム713は、指示されたミックス・モードに従って、
チャネル・データをミキシングし、1つまたは複数のオーディオ出力装置714
にオーディオ・データをルーティングするように構成されている。
【0076】 送信器700およびオーディオ・ソース706は、概念的には送信器定義域の
要素であり、受信器710は概念的には受信器定義域の要素である。送信器定義
域内の要素間でのオーディオ・データ伝送は、どのようなプロトコルの下でも実
行可能である。ただし、送信器定義域内(たとえば送信器700)の要素と、受
信器定義域内(たとえば受信器710)の要素との間でのオーディオ伝送は、単
一の指定されたオーディオ・プロトコル(図7ではプロトコルAと図示)に従っ
て実行される。複数プロトコルのサポートが送信器700に制限されているので
、受信器710の処理およびハードウェア要件は単純化されている。新しいプロ
トコル変換メカニズムなどの新しいプロトコルをサポートするのに必要な任意の
アップグレードは、送信器定義域に制限されているため、受信器710をサポー
トするためのコストおよび労力は削減される。
【0077】 《コンピュータ実行環境の実施形態(ハードウェア)》 本発明の一実施形態は、図10に示されたコンピュータ1000などの汎用コ
ンピュータ上で実行されるコンピュータ読取り可能コード形式、またはそのよう
なコンピュータ上で実行されるJavaTMのランタイム環境内で実行可能なバイ
トコード・クラス・ファイル形式の、コンピュータ・ソフトウェアとして実施す
ることができる。キーボード1100およびマウス1110は、双方向システム
・バス1180に結合される。キーボードおよびマウスは、ユーザ入力をコンピ
ュータ・システムに導入し、そのユーザ入力をプロセッサ1130へ送るための
ものである。マウス1110およびキーボード1100に加えて、あるいはこれ
らの代わりに、他の好適な入力装置を使用することができる。双方向システム・
バス1180に結合されたI/O(入力/出力)ユニット1190は、このよう
なI/O要素をプリンタ、A/V(オーディオ/ビデオ)I/Oなどとして表し
ている。
【0078】 コンピュータ1000は、ビデオ・メモリ1140、主メモリ1150、およ
び大容量記憶装置1120を備え、すべてキーボード1100、マウス1110
、およびプロセッサ1130と共に、双方向システム・バス1180に結合され
ている。大容量記憶装置1120には、磁気、光、または磁気光の記憶システム
、あるいは任意の他の使用可能な大容量記憶装置などの、固定媒体および取外し
可能媒体の両方が含まれる。バス1180にはたとえば、ビデオ・メモリ114
0または主メモリ1150をアドレス指定するための32アドレス・ラインを含
むことができる。システム・バス1180には、たとえばプロセッサ1130、
主メモリ1150、ビデオ・メモリ1140、および大容量記憶装置1120な
どの構成要素間でデータを転送するための、32ビットのデータ・バスも含まれ
る。あるいは、別々のデータおよびアドレス・ラインではなく、多重データ/ア
ドレス・ラインを使用することもできる。
【0079】 本発明の一実施形態では、プロセッサ1130は、680×0プロセッサなど
のMotorola社が製造したマイクロプロセッサ、または80×86などの
Intel社が製造したマイクロプロセッサ、あるいはPentiumプロセッ
サ、またはSun MicrosystemsTM,Inc.からのSPARCTM マイクロプロセッサである。ただし、任意の他の好適なマイクロプロセッサまた
はマイクロコンピュータも利用可能である。主メモリ1150は、ダイナミック
・ランダム・アクセス・メモリ(DRAM)からなる。ビデオ・メモリ1140
は、2重ポートのビデオ・ランダム・アクセス・メモリである。ビデオ・メモリ
1140の1つのポートはビデオ増幅器1160に結合される。ビデオ増幅器1
160は、陰極線管(CRT)ラスタ・モニタ1170を駆動するのに使用され
る。ビデオ増幅器1160は当分野ではよく知られており、任意の好適な装置に
よって実施することができる。この回路構成は、ビデオ・メモリ1140内に格
納されたピクセル・データを、モニタ1170が使用するのに好適なラスタ信号
に変換する。モニタ1170は、グラフィック画像を表示するのに好適な一種の
モニタである。あるいは、ビデオ・メモリはフラット・パネルまたは液晶表示(
LCD)、あるいは任意の他の好適なデータ表示装置を駆動するのに使用するこ
とができる。
【0080】 コンピュータ1000は、バス1180に結合された通信インターフェース1
200も備えることができる。通信インターフェース1200は、ネットワーク
・リンク1210を介してローカル・ネットワーク1220に結合する、2方向
データ通信を提供する。たとえば、通信インターフェース1200が統合サービ
ス・デジタル通信網(ISDN)カードまたはモデムの場合、通信インターフェ
ース1200は、ネットワーク・リンク1210の一部を含む対応するタイプの
電話回線へのデータ通信接続を提供する。通信インターフェース1200がロー
カル・エリア・ネットワーク(LAN)カードの場合、通信インターフェース1
200は、ネットワーク・リンク1210を介した互換LANへのデータ通信接
続を提供する。通信インターフェース1200は、ケーブル・モデムまたは無線
インターフェースであってもよい。これらのいずれを実施する場合でも、通信イ
ンターフェース1200は、様々なタイプの情報を表すデジタル・データ・スト
リームを搬送する、電気信号、電磁信号、または光信号を送受信する。
【0081】 ネットワーク・リンク1210は、典型的には1つまたは複数のネットワーク
を介して他のデータ装置へのデータ通信を提供する。たとえば、ネットワーク・
リンク1210は、ローカル・ネットワーク1220を介したローカル・サーバ
・コンピュータ1230への、あるいはインターネット・サービス・プロバイダ
(ISP)1240によって動作するデータ機器への接続を提供することができ
る。次にISP 1240は、現在では一般に「インターネット」1250と呼
ばれているワールド・ワイド・パケット・データ通信ネットワークを介して、デ
ータ通信サービスを提供する。ローカル・ネットワーク1220およびインター
ネット1250は、どちらも、デジタル・データ・ストリームを搬送する、電気
信号、電磁信号、または光信号を使用する。コンピュータ1000との間でデジ
タル・データを相互に搬送する、様々なネットワークを介した信号ならびにネッ
トワーク・リンク1210上および通信インターフェース1200を介した信号
は、例示的に情報を移送する搬送波の形式をとる。
【0082】 コンピュータ1000は、ネットワーク、ネットワーク・リンク1210、お
よび通信インターフェース1200を介して、メッセージを送信し、プログラム
・コードを含むデータを受信することができる。インターネットの例では、リモ
ート・サーバ・コンピュータ1260が、アプリケーション・プログラム用に要
求されたコードを、インターネット1250、ISP 1240、ローカル・ネ
ットワーク1220、および通信インターフェース1200を介して伝送する場
合がある。
【0083】 受信されたコードは、受信されたままの状態でプロセッサ1130によって実
行されるか、後で実行するために大容量記憶装置1120または他の不揮発性記
憶装置内に格納され、あるいはその両方を実行することができる。この様式では
、コンピュータ1000が搬送波の形式でアプリケーション・コードを取得する
ことができる。
【0084】 アプリケーション・コードは、いずれの形式のコンピュータ・プログラム製品
でも具体化することができる。コンピュータ・プログラム製品は、コンピュータ
読取り可能コードまたはデータを格納または移送するように構成された媒体を含
むか、あるいはその中にコンピュータ読取り可能コードまたはデータを組み込む
ことができる。コンピュータ・プログラム製品の例としては、CD−ROMディ
スク、ROMカード、フロッピィ・ディスク、磁気テープ、コンピュータ・ハー
ド・ドライブ、ネットワーク上のサーバおよび搬送波がある。
【0085】 《ヒューマン・インターフェース装置コンピュータ・システム》 本発明は、データがネットワークを介して提供されるコンピュータ・システム
に適用される。このネットワークは、ローカル・エリア・ネットワーク、広域ネ
ットワーク、インターネット、ワールド・ワイド・ウェブ、あるいは任意の他の
好適なネットワーク構成が可能である。本発明の一実施形態は、本明細書ではヒ
ューマン・インターフェース装置コンピュータ・システムと呼ばれる、コンピュ
ータ・システム構成で使用される。
【0086】 このシステムでは、システムの機能性が表示および入力装置と、データソース
またはサービスとの間で区分される。表示および入力装置がヒューマン・インタ
ーフェース装置(HID)である。このシステムの区分は、HIDから状態関数
および計算関数が除去され、データ・ソースまたはサービス上に常駐するように
なっている。本発明の一実施形態では、1つまたは複数のサービスが1つまたは
複数のHIDと、ネットワークのような何らかの相互接続組織を介して通信する
。このようなシステムの一例が図8に示されている。図8を参照すると、このシ
ステムは、相互接続組織801を介してHID802と通信する、計算サービス
・プロバイダ800からなる。
【0087】 計算サービス・プロバイダ − HIDシステムでは、計算機能および状態保
守は、サービス・プロバイダまたはサービスにある。サービスは特定のコンピュ
ータに結びつけられているのではなく、図10に関連して述べたような1つまた
は複数の従来のデスクトップ・システムを介して、あるいは従来のサーバを使用
して分配することができる。1つのコンピュータが1つまたは複数のサービスを
有することが可能であり、あるいはサービスを1つまたは複数のコンピュータに
よって実施することが可能である。サービスは、計算、状態、およびデータをH
IDに提供し、このサービスは、一般の権限または管理者の制御下にある。図8
では、サービスはコンピュータ810、811、812、813、および814
に見られる。本発明の一実施形態では、コンピュータ810〜814のいずれも
、送信器として実施可能である。
【0088】 サービスの例には、X11/Unixサービス、アーカイブ対象ビデオ・サー
ビス、Windows NTサービス、JavaTMプログラム実行サービスなど
が含まれる。本明細書のサービスは、出力データを提供し、ユーザの要求および
入力に応答するプロセスである。
【0089】 相互接続組織 − 相互接続組織は、サービスとHIDとの間でデータを搬送
するための、任意の複数の好適な通信パスである。一実施形態では、相互接続組
織は、イーサネット・ネットワークとして実施されるローカル・エリア・ネット
ワークである。任意の他のローカル・ネットワークも利用可能である。本発明で
は、広域ネットワーク、インターネット、ワールド・ワイド・ウェブなどの使用
も企図している。相互接続組織は、電線または光ファイバ・ケーブルなどの物理
的な媒体を使用して実施するか、または無線環境で実施することができる。
【0090】 HID − HIDは、ユーザがサービスによって提供される計算サービスに
アクセスする手段である。図8は、HID 821、822、および823を示
す図である。HIDはディスプレイ826、キーボード824、マウス825、
およびオーディオ・スピーカ827からなる。HIDには、これらの装置を相互
接続組織にインターフェースし、サービスにデータを送信し、サービスからデー
タを受信するのに必要なエレクトロニクスが含まれる。本発明の一実施形態では
、HIDは受信器として実施される。
【0091】 HIDの構成図は図9に示されている。HIDの構成要素は、内部的にPCI
バス912に結合される。ネットワーク制御ブロック902は、ライン914を
介してイーサネットなどの相互接続組織と通信する。オーディオ・コーデック9
03はインターフェース916上でオーディオ・データを受信するものであって
、ブロック902に結合される。USBデータ通信は、ライン913上でUSB
制御装置901に提供される。
【0092】 組込型プロセッサ904は、たとえばフラッシュ・メモリ905およびDRA
M 906に結合されたSparc2epであってもよい。USB制御装置90
1、ネットワーク制御装置902、および組込型プロセッサ904は、すべてP
CIバス912に結合される。さらに、ビデオ制御装置909もPCI 912
に結合される。ビデオ制御装置909は、たとえば、ライン915上でSVGA
出力を提供する、ATI RagePro+フレーム・バッファ制御装置であっ
てもよい。NTSCデータは、それぞれビデオ復号器910およびビデオ符号器
911を介してビデオ制御装置内部および外部に提供される。スマートカード・
インターフェース908も、ビデオ制御装置909に結合されてもよい。
【0093】 上記のコンピュータ・システムは、例示目的でのみ述べたものである。本発明
の実施形態は、どのようなタイプのコンピュータ・システムあるいはプログラミ
ングまたは処理環境でも実施することができる。
【0094】 以上、ネットワーク環境でオーディオ・プロトコルをサポートするための方法
および装置について、1つまたは複数の特定の実施形態に関して述べてきた。本
発明は、特許請求の範囲およびそれらの均等物の全範囲によって定義されるもの
である。
【図面の簡単な説明】
【図1】 Aは時間に関するオーディオ波形を示す図であり、B及びCは、
それぞれ24キロヘルツおよび8キロヘルツのサンプリング・レートでサンプリ
ングされた波形を示す図である。
【図2】 Aは線形量子化関数の一例を示す図であり、Bは非線形量子化関
数の一例を示す図である。
【図3】 単一の受信器および複数の送信器を備えた、ネットワーク・シス
テムの構成図である。
【図4】 本発明の一実施形態に従い待ち時間制御のアプリケーションを示
した、入力および出力波形を示す図である。
【図5】 本発明の一実施形態に従い、オーディオ・データのインターリー
ブおよび補間の効果を示した、一連の波形を示す図である。
【図6】 本発明の一実施形態に従ってネットワーク化されたオーディオ・
データ処理の流れ図である。
【図7】 本発明の一実施形態に従ったネットワーク環境の構成図である。
【図8】 ヒューマン・インターフェース装置を含むコンピュータ・システ
ムを示す構成図である。
【図9】 ヒューマン・インターフェース装置の一実施形態を示す構成図で
ある。
【図10】コンピュータ実施環境を示す構成図である。
【手続補正書】
【提出日】平成13年5月31日(2001.5.31)
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正内容】
【特許請求の範囲】
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE),OA(BF,BJ ,CF,CG,CI,CM,GA,GN,GW,ML, MR,NE,SN,TD,TG),AP(GH,GM,K E,LS,MW,SD,SL,SZ,UG,ZW),E A(AM,AZ,BY,KG,KZ,MD,RU,TJ ,TM),AE,AL,AM,AT,AU,AZ,BA ,BB,BG,BR,BY,CA,CH,CN,CU, CZ,DE,DK,EE,ES,FI,GB,GD,G E,GH,GM,HR,HU,ID,IL,IN,IS ,JP,KE,KG,KP,KR,KZ,LC,LK, LR,LS,LT,LU,LV,MD,MG,MK,M N,MW,MX,NO,NZ,PL,PT,RO,RU ,SD,SE,SG,SI,SK,SL,TJ,TM, TR,TT,UA,UG,UZ,VN,YU,ZA,Z W (71)出願人 901 SAN ANTONIO ROAD PALO ALTO,CA 94303,U. S.A. Fターム(参考) 5D045 DA11 5K034 CC05 DD02 HH21 HH61 【要約の続き】 に従い、オーディオ・データがどのように処理されるか を管理するためにシーケンス・サイズが指定される。送 信器は、オーディオ待ち時間を各オーディオ・アプリケ ーションについて指定された制限内で維持するために、 シーケンス・サイズを適応的に制御する。指定されたプ ロトコルは、複数のオーディオ出力装置間で、複数のチ ャネルを備えたオーディオ・データがどのようにミキシ ングおよびルーティングされるかを指定するために、ミ ックス・モードおよびいくつかのチャネルも決定する。

Claims (42)

    【特許請求の範囲】
  1. 【請求項1】 複数のオーディオ・プロトコルに従ってオーディオ・データ
    を提供する1つまたは複数のオーディオ・ソースを備え、 単一のオーディオ・プロトコルをサポートするよう構成された受信器を備え、 ネットワークを介して受信器に結合された送信器を備え、この送信器が前記1
    つまたは複数のオーディオ・ソースからの前記オーディオ・データを、前記単一
    のオーディオ・プロトコルに合致する変換済みのオーディオ・データに変換する
    よう構成されている ことを特徴とする装置。
  2. 【請求項2】 前記送信器がオーディオ・データの取得を実行するように構
    成された、請求項1に記載の装置。
  3. 【請求項3】 前記送信器が待ち時間制御を実行するように構成された、請
    求項1に記載の装置。
  4. 【請求項4】 前記送信器が前記変換済みのオーディオ・データをインター
    リーブするように構成された、請求項1に記載の装置。
  5. 【請求項5】 前記受信器が前記変換済みのオーディオ・データをインター
    リーブ解除するように構成された、請求項4に記載の装置。
  6. 【請求項6】 前記受信器が補間済みのオーディオ・データを生成するよう
    に構成された、請求項1に記載の装置。
  7. 【請求項7】 前記受信器が、前記変換済みのオーディオ・データを、前記
    送信器によって指定されたミックス・モードに従って1つまたは複数の出力装置
    に出力するように構成された、請求項1に記載の装置。
  8. 【請求項8】 前記受信器が、前記ミックス・モードに基づいて複数のオー
    ディオ・チャネルをミックスするように構成された、請求項7に記載の装置。
  9. 【請求項9】 前記送信器が、前記変換済みのオーディオ・データを前記受
    信器に複数のパケット単位で送信するように構成された、請求項1に記載の装置
  10. 【請求項10】 前記送信器が、前記複数のパケットを擬似ランダムに送信
    するように構成された、請求項9に記載の装置。
  11. 【請求項11】 前記複数のパケットのうち少なくとも1つがオーディオ・
    シーケンス番号を含む、請求項9に記載の装置。
  12. 【請求項12】 前記複数のパケットのうち少なくとも1つがシーケンス長
    を含む、請求項9に記載の装置。
  13. 【請求項13】 前記複数のパケットのうち少なくとも1つがパケット長を
    含む、請求項9に記載の装置。
  14. 【請求項14】 前記複数のパケットのうち少なくとも1つが、現在のオー
    ディオ・シーケンスのインターリーブ・サイズを含む、請求項9に記載の装置。
  15. 【請求項15】 前記複数のパケットのうち少なくとも1つがインターリー
    ブ・オフセットを含む、請求項14に記載の装置。
  16. 【請求項16】 前記複数のパケットのうち少なくとも1つが、1つまたは
    複数のオーディオ・チャネルの出力配列を指定するミックス・モード・フィール
    ドを含む、請求項9に記載の装置。
  17. 【請求項17】 前記複数のパケットのうち少なくとも1つが、カレント・
    パケット中にあるオーディオ・チャネル数を指定するチャネル・フィールドを含
    む、請求項9に記載の装置。
  18. 【請求項18】 コンピュータ・ネットワークを介してオーディオ・データ
    を処理するための方法であって、 送信器が1つまたは複数のオーディオ・ソースからオーディオ・データを取得
    し、 前記送信器が前記オーディオ・データをプロトコルに合致するように変換し、 前記送信器が前記オーディオ・データを受信器に送信し、 前記受信器が前記オーディオ・データを受信し、 前記受信器が前記オーディオ・データを1つまたは複数の出力装置に送信する
    ステップを含む方法。
  19. 【請求項19】 前記オーディオ・データを変換するステップに、サンプル
    ・レート変換、解像度変換、および量子化線形化のうちの少なくとも1つが含ま
    れる、請求項18に記載の方法。
  20. 【請求項20】 前記送信器が前記オーディオ・データを伝送用に複数のパ
    ケットに書き込むことをさらに含む、請求項18に記載の方法。
  21. 【請求項21】 前記送信器が最大待ち時間を決定することと、 前記送信器が前記最大待ち時間に基づいてシーケンス長を指定することをさら
    に含む、請求項20に記載の方法。
  22. 【請求項22】 前記受信器が前記複数のパケットを前記指定されたシーケ
    ンス長のバッファに書き込むことをさらに含む、請求項21に記載の方法。
  23. 【請求項23】 前記受信器が前記バッファ内で不存在のオーディオ・サン
    プルを補間することをさらに含む、請求項22に記載の方法。
  24. 【請求項24】 前記受信器が前記バッファ内の複数のサンプルをリタイミ
    ングすることをさらに含む、請求項22に記載の方法。
  25. 【請求項25】 前記受信器が前記シーケンス・バッファを出力バッファ内
    にミキシングすることをさらに含む、請求項22に記載の方法。
  26. 【請求項26】 前記受信器が、遅延シーケンスを検出し、前記シーケンス
    の前記出力バッファ内への前記ミキシングを強制することをさらに含む、請求項
    25に記載の方法。
  27. 【請求項27】 前記オーディオ・データの書込むことが、前記複数のパケ
    ット間で前記オーディオ・データをインターリーブすることを含む、請求項20
    に記載の方法。
  28. 【請求項28】 前記受信器が前記オーディオ・データをインターリーブ解
    除することをさらに含む、請求項27に記載の方法。
  29. 【請求項29】 前記オーディオ・データの送信が、前記複数のパケットを
    擬似ランダム順序で送信することを含む、請求項20に記載の方法。
  30. 【請求項30】 コンピュータ・ネットワーク内のオーディオ・データを伝
    送するために、コンピュータ読取り可能コードが組み込まれたコンピュータ使用
    可能媒体を備えたコンピュータ・プログラム製品であって、 送信器において: 1つまたは複数のオーディオ・ソースからオーディオ・データを取得するス
    テップと、 前記オーディオ・データをプロトコルに合致するように変換するステップ
    と、 前記オーディオ・データを受信器に送信するステップとを 実行させるように構成されたコンピュータ読取り可能コードと; 受信器において: 前記オーディオ・データを受信するステップと、 前記オーディオ・データを1つまたは複数の出力装置に送信するステップと
    を、 実行させるように構成されたコンピュータ読取り可能コードと を含むコンピュータ・プログラム製品。
  31. 【請求項31】 前記オーディオ・データを変換するステップに、サンプル
    ・レート変換、解像度変換、および量子化線形化のうちの少なくとも1つが含ま
    れる、請求項30に記載のコンピュータ・プログラム製品。
  32. 【請求項32】 前記送信器において前記オーディオ・データを伝送用に複
    数のパケットに書き込むステップを実行させるよう構成されたコンピュータ読取
    り可能コードをさらに含む、請求項30に記載のコンピュータ・プログラム製品
  33. 【請求項33】 前記送信器において最大待ち時間を決定するステップを実
    行させるよう構成されたコンピュータ読取り可能コードと、 前記送信器において前記最大待ち時間に基づいてシーケンス長を指定するステ
    ップを実行させるよう構成されたコンピュータ読取り可能コードとをさらに含む
    、請求項32に記載のコンピュータ・プログラム製品。
  34. 【請求項34】 前記受信器において、前記複数のパケットを前記指定され
    たシーケンス長のバッファに書き込むステップを実行させるよう構成されたコン
    ピュータ読取り可能コードをさらに含む、請求項33に記載のコンピュータ・プ
    ログラム製品。
  35. 【請求項35】 前記受信器において、前記バッファ内で不存在のオーディ
    オ・サンプルを補間するステップを実行させるよう構成されたコンピュータ読取
    り可能コードをさらに含む、請求項34に記載のコンピュータ・プログラム製品
  36. 【請求項36】 前記受信器において、前記バッファ中の複数のサンプルを
    リタイミングさせるステップを実行するよう構成されたコンピュータ読取り可能
    コードをさらに含む、請求項34に記載のコンピュータ・プログラム製品。
  37. 【請求項37】 前記受信器において、前記シーケンス・バッファを出力バ
    ッファ内にミキシングさせるステップを実行させるよう構成されたコンピュータ
    読取り可能コードをさらに含む、請求項34に記載のコンピュータ・プログラム
    製品。
  38. 【請求項38】 前記受信器において、遅延シーケンスを検出し、前記シー
    ケンスの前記出力バッファ内への前記ミキシングを開始させるステップを実行さ
    せるよう構成されたコンピュータ読取り可能コードをさらに含む、請求項37に
    記載のコンピュータ・プログラム製品。
  39. 【請求項39】 前記オーディオ・データの書込みが、前記複数のパケット
    間で前記オーディオ・データをインターリーブすることを含む、請求項32に記
    載のコンピュータ・プログラム製品。
  40. 【請求項40】 前記受信器において、前記オーディオ・データをインター
    リーブ解除させるステップを実行するよう構成されたコンピュータ読取り可能コ
    ードをさらに含む、請求項39に記載のコンピュータ・プログラム製品。
  41. 【請求項41】 前記オーディオ・データの送信が、前記複数のパケットを
    擬似ランダム順序で送信することを含む、請求項32に記載のコンピュータ・プ
    ログラム製品。
  42. 【請求項42】 コンピュータ・ネットワーク内のオーディオ・データを処
    理するための装置であって、 送信器内に: 1つまたは複数のオーディオ・ソースからオーディオ・データを取得する手
    段と、 前記オーディオ・データをプロトコルに合致するように変換する手段と、 前記オーディオ・データを受信器に送信する手段と を含んでおり; 前記受信器内に: 前記オーディオ・データを受信する手段と、 前記オーディオ・データを1つまたは複数の出力装置に送信する手段と を含んでいる ことを特徴とする装置。
JP2000545085A 1998-04-20 1999-04-20 ネットワーク内でオーディオ・プロトコルをサポートするための方法および装置 Pending JP2002512456A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/063,341 1998-04-20
US09/063,341 US6675054B1 (en) 1998-04-20 1998-04-20 Method and apparatus of supporting an audio protocol in a network environment
PCT/US1999/008619 WO1999054801A2 (en) 1998-04-20 1999-04-20 Method and apparatus of supporting an audio protocol in a network

Publications (1)

Publication Number Publication Date
JP2002512456A true JP2002512456A (ja) 2002-04-23

Family

ID=22048544

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000545085A Pending JP2002512456A (ja) 1998-04-20 1999-04-20 ネットワーク内でオーディオ・プロトコルをサポートするための方法および装置

Country Status (9)

Country Link
US (1) US6675054B1 (ja)
EP (1) EP1074135B1 (ja)
JP (1) JP2002512456A (ja)
AT (1) ATE306167T1 (ja)
AU (1) AU760909B2 (ja)
CA (1) CA2329414A1 (ja)
DE (1) DE69927580D1 (ja)
HK (1) HK1035820A1 (ja)
WO (1) WO1999054801A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180066458A (ko) * 2016-12-09 2018-06-19 주식회사 케이티 오디오 컨텐츠를 분석하는 장치 및 방법

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7076016B1 (en) * 2000-02-28 2006-07-11 Advanced Micro Devices, Inc. Method and apparatus for buffering data samples in a software based ADSL modem
GB2360178B (en) 2000-03-06 2004-04-14 Mitel Corp Sub-packet insertion for packet loss compensation in Voice Over IP networks
US6996068B1 (en) * 2000-03-31 2006-02-07 Intel Corporation Audio testing in a packet switched network
CA2357165A1 (en) * 2001-09-10 2003-03-10 Ibm Canada Limited-Ibm Canada Limitee Configurable connector
US7437450B1 (en) 2001-11-30 2008-10-14 Cisco Technology Inc. End-to-end performance tool and method for monitoring electronic-commerce transactions
US7610553B1 (en) * 2003-04-05 2009-10-27 Apple Inc. Method and apparatus for reducing data events that represent a user's interaction with a control interface
US7450570B1 (en) * 2003-11-03 2008-11-11 At&T Intellectual Property Ii, L.P. System and method of providing a high-quality voice network architecture
US20050100023A1 (en) * 2003-11-07 2005-05-12 Buckwalter Paul B. Isochronous audio network software interface
US7450705B1 (en) 2005-08-31 2008-11-11 At&T Corp. Method to test and compare voice teleconference systems
US8024503B2 (en) * 2006-08-11 2011-09-20 Shanda Computer (Shanghai) Co., Ltd. System and method for accessing internet via TV and a PC connecting set and a TV connecting set
US9602295B1 (en) 2007-11-09 2017-03-21 Avaya Inc. Audio conferencing server for the internet
US8363810B2 (en) * 2009-09-08 2013-01-29 Avaya Inc. Method and system for aurally positioning voice signals in a contact center environment
US8144633B2 (en) * 2009-09-22 2012-03-27 Avaya Inc. Method and system for controlling audio in a collaboration environment
US8547880B2 (en) * 2009-09-30 2013-10-01 Avaya Inc. Method and system for replaying a portion of a multi-party audio interaction
US8744065B2 (en) 2010-09-22 2014-06-03 Avaya Inc. Method and system for monitoring contact center transactions
US9736312B2 (en) 2010-11-17 2017-08-15 Avaya Inc. Method and system for controlling audio signals in multiple concurrent conference calls
CN102810314B (zh) * 2011-06-02 2014-05-07 华为终端有限公司 音频编码方法及装置、音频解码方法及装置、编解码系统
US20150254056A1 (en) * 2014-03-10 2015-09-10 JamKazam, Inc. Track based music management server and related methods for interactive music systems
FR3031223A1 (fr) * 2014-12-29 2016-07-01 Eric Papillier Invention permettant le test et l'utilisation de pedales d'effets pour instruments de musique ou de systemes comportant une entree et une sortie audio, a distance, via le reseau internet
RU2712093C1 (ru) 2016-03-07 2020-01-24 Фраунхофер-Гезелльшафт Цур Фердерунг Дер Ангевандтен Форшунг Е.Ф. Блок маскирования ошибок, аудиодекодер и соответствующие способ и компьютерная программа, использующие характеристики декодированного представления надлежащим образом декодированного аудиокадра
ES2874629T3 (es) * 2016-03-07 2021-11-05 Fraunhofer Ges Forschung Unidad de ocultación de error, decodificador de audio y método y programa informático relacionados que desvanecen una trama de audio ocultada según factores de amortiguamiento diferentes para bandas de frecuencia diferentes
US20180310327A1 (en) * 2017-04-19 2018-10-25 General Electric Company Wireless patient monitoring system and method with improved physiological data transmission

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5694603A (en) 1982-09-28 1997-12-02 Reiffin; Martin G. Computer memory product with preemptive multithreading software
JPH0658624B2 (ja) 1990-03-30 1994-08-03 インターナショナル・ビシネス・マシーンズ・コーポレーション グラフィカル・ユーザ・インターフェース管理装置
JPH0756628B2 (ja) 1990-10-22 1995-06-14 富士ゼロックス株式会社 グラフィカル・ユーザインターフェースの編集装置
US5430836A (en) 1991-03-01 1995-07-04 Ast Research, Inc. Application control module for common user access interface
US5291585A (en) 1991-07-29 1994-03-01 Dell Usa, L.P. Computer system having system feature extension software containing a self-describing feature table for accessing I/O devices according to machine-independent format
US5566330A (en) 1991-08-20 1996-10-15 Powersoft Corporation Method for forming a reusable and modifiable database interface object
US5461710A (en) 1992-03-20 1995-10-24 International Business Machines Corporation Method for providing a readily distinguishable template and means of duplication thereof in a computer system graphical user interface
JPH0683603A (ja) 1992-04-03 1994-03-25 Internatl Business Mach Corp <Ibm> オブジェクト・クラスのバッチ登録の方法とシステム
US5347627A (en) 1992-04-07 1994-09-13 International Business Machines Corporation Graphical user interface including dynamic sizing and spacing
US5526517A (en) 1992-05-15 1996-06-11 Lsi Logic Corporation Concurrently operating design tools in an electronic computer aided design system
US5423034A (en) 1992-06-10 1995-06-06 Cohen-Levy; Leon Network file management with user determined hierarchical file structures and means for intercepting application program open and save commands for inputting and displaying user inputted descriptions of the location and content of files
GB2270242A (en) 1992-08-29 1994-03-02 Ibm A method of editing for an object oriented computer system
US5412772A (en) 1992-10-13 1995-05-02 Novell, Inc. System for permitting a view of an object or a user interface to be exchanged between operating system environments
US5345550A (en) 1992-12-23 1994-09-06 International Business Machines Corporation User-modifiable popup menus for object oriented behavior
US5384911A (en) 1992-12-23 1995-01-24 International Business Machines Corporation Method of transferring programs from action oriented GUI paradigm to object oriented GUI paradigm
US5448695A (en) 1992-12-31 1995-09-05 International Business Machines Corporation Method and apparatus for dynamic visual feedback messaging in a graphical user interface of a data processing system
US5436637A (en) 1993-03-05 1995-07-25 Borland International, Inc. Graphical user interface system and methods for improved user feedback
GB2276796B (en) * 1993-04-01 1997-12-10 Sony Corp Audio data communications
JP2620576B2 (ja) 1993-04-15 1997-06-18 インターナショナル・ビジネス・マシーンズ・コーポレイション ユーザが要求したフォントに従ってグラフィカル・ユーザ・インターフェースを調節する方法及びシステム
US5559942A (en) 1993-05-10 1996-09-24 Apple Computer, Inc. Method and apparatus for providing a note for an application program
US5422674A (en) 1993-12-22 1995-06-06 Digital Equipment Corporation Remote display of an image by transmitting compressed video frames representing background and overlay portions thereof
US5461399A (en) 1993-12-23 1995-10-24 International Business Machines Method and system for enabling visually impaired computer users to graphically select displayed objects
US5548702A (en) 1993-12-23 1996-08-20 International Business Machines Corporation Scrolling a target window during a drag and drop operation
US5491784A (en) 1993-12-30 1996-02-13 International Business Machines Corporation Method and apparatus for facilitating integration of software objects between workspaces in a data processing system graphical user interface
US5546519A (en) 1994-02-28 1996-08-13 International Business Machines Corporation System and method for visually programming iteration
US5550968A (en) 1994-04-12 1996-08-27 International Business Machines Corporation Method and system for providing access security to controls in a graphical user interface
US5473745A (en) 1994-12-14 1995-12-05 International Business Machines Corporation Exposing and hiding a title bar behind its window using a visual cue
US5570462A (en) 1995-05-05 1996-10-29 Apple Computer, Inc. System and method for object placement and sizing in a dynamic display environment
US20010040885A1 (en) 1995-10-13 2001-11-15 Howard Jonas Method and apparatus for transmitting and routing voice telephone calls over a packet switched computer network
US5572643A (en) 1995-10-19 1996-11-05 Judson; David H. Web browser with dynamic display of information objects during linking
US6240448B1 (en) 1995-12-22 2001-05-29 Rutgers, The State University Of New Jersey Method and system for audio access to information in a wide area computer network
CA2224712A1 (en) 1996-04-22 1997-10-30 At&T Corp. Method and apparatus for information retrieval using audio interface
US6125115A (en) * 1998-02-12 2000-09-26 Qsound Labs, Inc. Teleconferencing method and apparatus with three-dimensional sound positioning

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180066458A (ko) * 2016-12-09 2018-06-19 주식회사 케이티 오디오 컨텐츠를 분석하는 장치 및 방법
KR102582494B1 (ko) * 2016-12-09 2023-09-25 주식회사 케이티 오디오 컨텐츠를 분석하는 장치 및 방법

Also Published As

Publication number Publication date
AU3655099A (en) 1999-11-08
EP1074135A2 (en) 2001-02-07
WO1999054801A2 (en) 1999-10-28
DE69927580D1 (de) 2006-02-16
HK1035820A1 (en) 2001-12-07
WO1999054801A3 (en) 2000-06-15
CA2329414A1 (en) 1999-10-28
ATE306167T1 (de) 2005-10-15
US6675054B1 (en) 2004-01-06
EP1074135B1 (en) 2005-10-05
AU760909B2 (en) 2003-05-22

Similar Documents

Publication Publication Date Title
JP2002512456A (ja) ネットワーク内でオーディオ・プロトコルをサポートするための方法および装置
US8639830B2 (en) System and method for streaming audio
EP1815713B1 (en) Synchronizing multi-channel speakers over a network
US8375137B2 (en) System and method for streaming audio using a send queue
US7302396B1 (en) System and method for cross-fading between audio streams
US6088733A (en) Communications of MIDI and other data
US20040052371A1 (en) Content providing apparatus and content providing method
US20050165911A1 (en) Multimedia distributing and/or playing systems and methods using separate resolution-enhancing supplemental data
US20040006484A1 (en) Method and system for media content data distribution and consumption
US7631088B2 (en) System and method for minimizing perceived dead air time in internet streaming media delivery
WO2001035674A1 (en) Adaptive control of streaming data in a graph
JP2000308015A (ja) 複数のオーディオ・ストリームをマージするためのシステムおよび方法
JP2003510734A (ja) ストリーミングのエミュレート用ファイル分割
CN1520118A (zh) 解聚视听组件的方法和系统
EP3566227A1 (en) Adapting a distributed audio recording for end user free viewpoint monitoring
JP2019531670A (ja) 接続されたマルチメディアデバイスの制御
US7389093B2 (en) Call method, call apparatus and call system
US20050050090A1 (en) Call method, copyright protection system and call system
Bouillot et al. Aes white paper: Best practices in network audio
CA2603579A1 (en) Integrated wireless multimedia transmission system
Cooperstock et al. The recording studio that spanned a continent
US6525253B1 (en) Transmission of musical tone information
WO2017148178A1 (zh) 一种音视频处理方法以及相关设备
JP2004153373A (ja) ネットワークカメラシステムとそれを構成するネットワークカメラ、ネットワーク端末、及び音声再生方法
US7133408B1 (en) Shared decoder

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20040810