(57)【特許請求の範囲】
【請求項１】
処理装置のための拡張可能なオーディオ処理方法であって、
入力オーディオ信号の各フレーム毎に、符号化ビットレートの利用可能な合計ビット数に基づき、該符号化ビットレートを第１及び第２の周波数帯域用の第１および第２のビットレート割当てに振り分けるべく、該第１及び第２の周波数帯域用の該第１および第２のビットレート割当てを決定するステップと、
時間領域の前記入力オーディオ信号の前記各フレームを、複数サブバンドの周波数領域の変換係数に変換符号化するステップと、
各フレーム毎に、前記第１の周波数帯域における当該フレームの複数の前記変換係数からなる第１のセットに対して前記第１のビットレート割当てを配分し、前記第２の周波数帯域における当該フレームの複数の前記変換係数からなる第２のセットに対して前記第２のビットレート割当てを配分するステップと、
各フレーム毎に、当該フレームに対応して配分された前記第１のビットレート割当てを有する複数サブバンドの前記変換係数の前記第１のセット、および当該フレームに対応して配分された前記第２のビットレート割当てを有する複数サブバンドの前記変換係数の前記第２のセットを、１パケットにパケット化するステップと、
前記パケットを前記処理装置により送信するステップと、
を具備する拡張可能なオーディオ処理方法。
【請求項２】
前記第１および第２のビットレート割当てを決定する前記ステップ及び前記第１および第２のビットレート割当てを配分する前記ステップは、前記入力オーディオ信号の各フレーム単位で行われる、請求項１の方法。
【請求項３】
前記第１および第２のビットレート割当てを決定する前記ステップは、
前記変換係数の前記第１および第２のセットに対応する当該フレームの信号の第１および第２の周波数帯域のエネルギー比を計算するステップと、
当該フレームについての前記第１および第２のビットレート割当てを、前記計算された比に基づいて決定するステップと、
を含む請求項１の方法。
【請求項４】
前記変換係数の前記第１および第２のセットはそれぞれ複数サブバンドの周波数領域において配列されており、
前記変換係数の前記第１および第２のセットをパケット化する前記ステップは、
前記複数サブバンドの周波数領域の重要度を判定するステップと、
前記判定した重要度に基づいて前記複数サブバンドの周波数領域を順位付けるステップと、
前記順位付けに従って前記複数サブバンドの周波数領域を並べ替えて前記変換係数の前記第１および第２のセットをパケット化するステップと、
を含む請求項１の方法。
【請求項５】
前記重要度を判定する前記ステップは、前記複数サブバンドの周波数領域それぞれのパワーレベルを判定するステップを含み、
前記複数サブバンドの周波数領域を順位付ける前記ステップは、前記複数サブバンドの周波数領域を最大パワーレベルから最小パワーレベルまでの順で順位付けるステップを含む
請求項４の方法。
【請求項６】
前記パワーレベルを判定する前記ステップは、前記複数サブバンドの周波数領域間のスペクトル距離に基づく固定関数を用いて前記複数サブバンドの周波数領域のパワーレベルに重み付けをするステップを更に含む、請求項５の方法。
【請求項７】
前記パケット化する前記ステップは、前記第１および第２のビットレート割当てを示す情報をパケット化するステップを含む、請求項１の方法。
【請求項８】
前記パケット化する前記ステップは、前記変換係数の前記第１および第２のセットに対応する当該フレームの前記第１および第２の周波数帯域両方のスペクトル包絡線をパケット化するステップを含む、請求項１の方法。
【請求項９】
前記パケット化する前記ステップは、各フレーム毎に、前記変換係数の前記第１および第２のセットに対応する当該フレームの前記第１および第２の周波数帯域の内の低い方をパケット化してから高い方をパケット化するステップを含む、請求項１の方法。
【請求項１０】
前記変換係数に変換符号化する前記ステップは、
第１のビットレートからなる前記符号化ビットレートで当該フレームを変換符号化することにより当該フレームの第１のバージョンを生成するステップと、
前記第１のビットレートより低い第２のビットレートへ前記第１のバージョンを剥落させることにより、当該フレームの第２のバージョンを生成するステップと、
を含み、
前記パケットにパケット化する前記ステップは、
当該１フレームの第１のバージョンをその前の１フレームの前記第２のバージョンと併せて一緒に前記パケットにパケット化するステップを含む、
請求項１の方法。
【請求項１１】
前記変換係数の前記第１のセットが０乃至１２ｋＨｚの前記第１の周波数帯域に対応し、前記変換係数の前記第２のセットが１２ｋＨｚ乃至２２ｋＨｚの前記第２の周波数帯域に対応する、請求項１の方法。
【請求項１２】
前記変換係数の前記第１のセットが０乃至１２，５００Ｈｚの前記第１の周波数帯域に対応し、前記変換係数の前記第２のセットが１３ｋＨｚ乃至２２ｋＨｚの前記第２の周波数帯域に対応する、請求項１の方法。
【請求項１３】
前記第１および第２のビットレート割当ては、合計して６４ｋｂｐｓの符号化ビットレートの前記利用可能な合計ビット数になる、請求項１の方法。
【請求項１４】
前記変換係数は変調重複変換の係数からなる請求項１の方法。
【請求項１５】
拡張可能なオーディオ処理方法をプログラム可能な制御装置に実行させるためのプログラム命令群を記憶したプログラム可能な記憶装置であって、前記プログラム可能な制御装置に、
入力オーディオ信号の各フレーム毎に、符号化ビットレートの利用可能な合計ビット数に基づき、該符号化ビットレートを第１及び第２の周波数帯域用の第１および第２のビットレート割当てに振り分けるべく、該第１及び第２の周波数帯域用の該第１および第２のビットレート割当てを決定する手順と、
時間領域の前記入力オーディオ信号の前記各フレームを、複数サブバンドの周波数領域の変換係数に変換符号化する手順と、
各フレーム毎に、前記第１の周波数帯域における当該フレームの複数の前記変換係数からなる第１のセットに対して前記第１のビットレート割当てを配分し、前記第２の周波数帯域における当該フレームの複数の前記変換係数からなる第２のセットに対して前記第２のビットレート割当てを配分する手順と、
各フレーム毎に、当該フレームに対応して配分された前記第１のビット割当てを有する複数サブバンドの前記変換係数の前記第１のセット、および当該フレームに対応して配分された前記第２のビットレート割当てを有する複数サブバンドの前記変換係数の前記第２のセットを、１パケットにパケット化する手順と、
前記パケットを前記処理装置により送信する手順と
を実行させるためのプログラム命令群を記憶したプログラム可能な記憶装置。
【請求項１６】
ネットワークインターフェースと、
前記ネットワークインターフェースに接続されて通信し、入力オーディオ信号を取得するプロセッサとを備え、
前記プロセッサは、
入力オーディオ信号の各フレーム毎に、符号化ビットレートの利用可能な合計ビット数に基づき、該符号化ビットレートを第１及び第２の周波数帯域用の第１および第２のビットレート割当てに振り分けるべく、該第１及び第２の周波数帯域用の該第１および第２のビットレート割当てを決定し、
時間領域の前記入力オーディオ信号の前記各フレームを、複数サブバンドの周波数領域の変換係数に変換符号化し、
各フレーム毎に、前記第１の周波数帯域における当該フレームの複数の前記変換係数からなる第１のセットに対して前記第１のビットレート割当てを配分し、前記第２の周波数帯域における当該フレームの複数の前記変換係数からなる第２のセットに対して前記第２のビットレート割当てを配分し、
各フレーム毎に、当該フレームに対応して配分された前記第１のビットレート割当てを有する複数サブバンドの前記変換係数の前記第１のセット、および当該フレームに対応して配分された前記第２のビットレート割当てを有する複数サブバンドの前記変換係数の前記第２のセットを、１パケットにパケット化し、
前記パケットを前記ネットワークインターフェースにより送信するように構成されている、
ことを特徴とする処理装置。
【請求項１７】
前記処理装置が、オーディオ会議エンドポイント、ビデオ会議エンドポイント、オーディオ再生装置、個人用音楽プレーヤ、コンピュータ、サーバ、通信装置、携帯電話、および携帯情報端末のいずれかである請求項１６の処理装置。
【請求項１８】
処理装置のためのオーディオ処理方法であって、
入力オーディオ信号の複数フレームのパケットを受信するステップと、ここで、前記パケットはそれぞれ、複数サブバンドの周波数領域の変換係数を有しており、
前記各パケットにおいて、前記各フレームについての符号化ビットレートから振り分けられた第１及び第２の周波数帯域用の第１および第２のビットレート割当てを決定するステップと、ここで、前記各第１のビットレート割当てには、該１パケットにおける前記第１の周波数帯域における当該フレームの複数サブバンドの前記変換係数からなる第１のセットが割り当てられ、前記各第２のビットレート割当てには、該１パケットにおける前記第２の周波数帯域における当該フレームの複数サブバンドの前記変換係数からなる第２のセットが割り当てられており、
前記パケットにおける前記各フレーム毎の前記変換係数の前記第１および第２のセットを出力オーディオ信号に逆変換符号化するステップと、
前記パケットにおける前記各フレーム毎の前記第１および第２のビットレート割当てからビットが失われているかどうかを判定するステップと、
失われていると判定された前記ビットのどれかにオーディオ信号を充填するステップと、
を具備するオーディオ処理方法。
【請求項１９】
前記パケットを受信する前記ステップは、前記フレームの前記変換係数の前記第１および第２のセット毎のスペクトル包絡線を受信するステップを含み、
前記オーディオ信号を充填する前記ステップは、前記スペクトル包絡線により該充填するオーディオ信号をレベル調整するステップを含む、請求項１８の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はオーディオ（audio；音声若しくは可聴周波）信号の処理技術に関する。多くの種類のシステムがオーディオ信号処理を用いてオーディオ信号を創り出したり、かかるオーディオ信号から音を再生したりしている。典型的には、信号処理はオーディオ信号をデジタルデータに変換し、ネットワーク上に送信するためにそのデータを符号化する。次に、別の信号処理により、送信されたデータを復号化し、それを音響波として再生するためにアナログ信号へ逆変換する。
【背景技術】
【０００２】
オーディオ信号を符号化または復号化するために多様な技術が存在する（信号を符号化および復号化するプロセッサまたは処理モジュールを一般にコーデック（ｃｏｄｅｃ）と称する）。会議システムではオーディオコーデックを用いて、近端から遠端まで送信しなければならない、オーディオを表すデータ量を低減する。例えば、オーディオ会議（音声会議）およびビデオ会議用のオーディオコーデックは、得られる送信用信号が最良品質を保ちながらも、最小ビット数となるように、高忠実度のオーディオ入力を圧縮する。そうすれば、オーディオコーデックを有する会議装置に必要な記憶容量はより少なく、オーディオ信号を送信するためにその装置で用いる通信チャンネルの帯域幅は狭くて済む。
【０００３】
オーディオコーデックは多様な技法を用いて、会議中の一エンドポイントから別のエンドポイントへ送信するためにオーディオを符号化および復号化できる。普通に用いられるいくつかのオーディオコーデックは、変換符号化技法を用いてネットワーク上に送信されるオーディオデータを符号化および復号化する。オーディオコーデックの一形式はＰｏｌｙｃｏｍ社のＳｉｒｅｎコーデックである。Ｐｏｌｙｃｏｍ社のＳｉｒｅｎコーデックの１つのバージョンは、ＩＴＵ−Ｔ（国際電気通信連合電気通信標準化部門）勧告Ｇ．７２２．１（Ｐｏｌｙｃｏｍ  Ｓｉｒｅｎ７）である。Ｓｉｒｅｎ７は７ｋＨｚまでの信号を符号化する広帯域コーデックである。もう１つのバージョンは、ＩＴＵ−Ｔ Ｇ．７２２．１．Ｃ（Ｐｏｌｙｃｏｍ  Ｓｉｒｅｎ１４）である。Ｓｉｒｅｎ１４は１４ｋＨｚまでの信号を符号化する超広帯域コーデックである。
【０００４】
Ｓｉｒｅｎコーデックは、変調重複変換（ＭＬＴ）ベースのオーディオコーデックである。従って、Ｓｉｒｅｎコーデックは、オーディオ信号を時間領域から変調重複変換（Modulation Lapped Transform）（ＭＬＴ）領域に変換する。周知のように、変調重複変換（ＭＬＴ）は、各種信号を変換符号化するために用いるコサイン変調フィルターバンクの一形式である。一般に、重複変換は、長さＬのオーディオブロックを取り出し、そのブロックをＭ個の係数に変換する（条件Ｌ＞Ｍ）。この変換を実行するには、変換された係数の連続ブロックを用いて合成信号を得ることができるように、連続するブロック間でのＬ−Ｍサンプルの重複がなければならない。
【０００５】
図１Ａおよび図１ＢはＳｉｒｅｎコーデックのような変換符号化コーデックの特徴を簡単に示す。特定のオーディオコーデックの実際の詳細は、用いられるコーデックの実装および形式に依存する。例えば、Ｓｉｒｅｎ１４の公知の詳細についてはＩＴＵ−Ｔ勧告Ｇ．７２２．１の付属書Ｃに、Ｓｉｒｅｎ７の公知の詳細についてはＩＴＵ−Ｔ勧告Ｇ．７２２．１に記載があり、ともに引用して本明細書に組み込む。オーディオ信号の変換符号化に関連する別の詳細情報は、引用して本明細書に組み込まれた米国特許出願第１１／５５０，６２９号および第１１／５５０，６８２号に記載されている。
【０００６】
図１Ａに、変換符号化コーデック（例えば、Ｓｉｒｅｎコーデック）用の符号器１０を示す。符号器１０はアナログオーディオ信号から変換されたデジタル信号１２を受信する。アナログオーディオ信号の振幅は特定周波数でサンプリングされ、振幅を表す数字に変換されている。典型的なサンプリング周波数は、８ｋＨｚ（すなわち、毎秒８，０００回のサンプリング）、１６ｋＨｚ〜１９６ｋＨｚ、またはその間である。一例として、このデジタル信号１２は、約２０ｍｓブロックまたはフレームで、４８ｋＨｚまたは他のレートでサンプリングされていてもよい。
【０００７】
離散コサイン変換（ＤＣＴ）であってもよい変換２０は、デジタル信号１２を時間領域から、変換係数を有する周波数領域に変換する。例えば、変換２０は、オーディオブロックまたはフレーム毎に９６０個の変換係数のスペクトルを生成できる。符号器１０は、正規化プロセス２２で係数の平均エネルギーレベル（規範）を求める。次に、符号器１０が、高速格子ベクトル量子化（ＦＬＶＱ）アルゴリズム２４等により係数を量子化してパケット化および送信のための出力信号１４を符号化する。
【０００８】
図１Ｂに、変換符号化コーデック（例えば、Ｓｉｒｅｎコーデック）用の復号器５０を示す。復号器５０は、ネットワークから受信されて入ってくる入力信号５２のビットストリームを取り出し、元の信号の最良推定値を再現する。そのために、復号器５０は、入力信号５２に格子復号化（逆ＦＬＶＱ）６０を実行し、逆量子化プロセス６２を用いて、復号化した変換係数を逆量子化する。更に、変換係数のエネルギーレベルを各周波数帯域で補正してもよい。最後に、出力信号５４として送信するために、逆変換６４は、逆ＤＣＴとして動作し、周波数領域から時間領域に信号を変換する。
【０００９】
このようなオーディオコーデックは効果的ではあり、オーディオ会議用途でのニーズの高まりとともに、複雑さも増大し、更に多目的かつ強力なオーディオ符号化技法が求められている。例えば、オーディオコーデックは、ネットワーク上で動作しなければならず、多様な条件（帯域幅、受信器の各種接続速度等）が動的に変化する。チャンネルのビットレートが時間経過とともに変化する無線ネットワークはその一例である。従って、無線ネットワークのエンドポイント（ネットワーク端末）は様々なビットレートでビットストリームを送出してネットワーク条件に順応しなければならない。
【００１０】
Ｐｏｌｙｃｏｍ社のＲＭＸシリーズおよびＭＧＣシリーズ製品等のＭＣＵ（マルチウェイ制御ユニット）の使用はもう１つの実施例であり、そこでは、より多目的かつ強力なオーディオ符号化技法を利用できる。例えば、会議においてＭＣＵは、先ず第１エンドポイント（ネットワーク端末）Ａからビットストリームを受信し、次に、いくつかの他のエンドポイント（ネットワーク端末）Ｂ、Ｃ、Ｄ、Ｅ、Ｆ．．．へ異なる長さでビットストリームを送出する必要がある。送出すべき様々なビットストリームは、各エンドポイントが持つネットワーク帯域幅がどれほどであるかに依存する。例えば、一エンドポイントＢはオーディオ用に６４ｋｂｐｓでネットワークに接続され、別のエンドポイントＣは僅か８ｋｂｐｓで接続される場合がある。
【００１１】
従って、ＭＣＵは、一エンドポイントＢには６４ｋｂｐｓでビットストリームを送出し、他のエンドポイントＣには８ｋｂｐｓでビットストリームを送出し、というようにエンドポイント毎に送出する。現在、ＭＣＵが、第１エンドポイントＡからのビットストリームを復号化、すなわちビットストリームを時間領域に変換して戻している。次いで、ＭＣＵは、１つ１つのエンドポイントＢ、Ｃ、Ｄ、Ｅ、Ｆ．．．毎に符号化を行い、それによりビットストリームを各エンドポイントに設定できるようにしている。明らかに、この手法は多くの計算リソースを必要とし、信号待ち時間を長くし、実行される符号変換に起因して信号品質は低下してしまう。
【００１２】
失われたパケットの処理は、より多目的かつ強力なオーディオ符号化技法が有効な別の領域である。ビデオ会議またはＶｏＩＰの通話では、符号化されたオーディオ情報は、例えば、典型的にはパケット当たり２０ミリ秒のオーディオを有するパケットで送出される。パケットは送信中に失われることもあり、オーディオパケットが失われると、受信されたオーディオに空隙が生じる。ネットワークにおけるパケットロスに対抗する一方法は、パケット（すなわち、ビットストリーム）を多数回、例えば４回、送信することである。これらのパケットの４つが全て失われる可能性は非常に低いので、空隙が生じる可能性は低下する。
【００１３】
しかし、パケットを多数回送信すると必要なネットワーク帯域幅は４倍に増加する。コストを最小に抑えるために、通常、同じ２０ｍｓの時間領域信号を、高ビットレート（通常モード、例えば４８ｋｂｐｓ）で符号化するとともに、低ビットレート（例えば８ｋｂｐｓ）でも符号化する。低ビット（８ｋｂｐｓ）ストリームは多数回送信されるビットストリームである。こうすると、必要な合計帯域幅は、元データが多数回送出された場合の４８×４＝１９２ｋｂｐｓではなく４８＋８×３＝７２ｋｂｐｓとなる。マスク効果により、４８＋８×３の方式は、ネットワークがパケットロスを有する場合の会話品質に関して、４８×４方式とほぼ同じ性能を持つ。但し、同一の２０ｍｓ時間領域データを異なるビットレートでそれぞれ符号化するこの従来の解決法は、計算リソースを必要とする。
【００１４】
最後に、エンドポイントによっては、完全に復号化するのに十分な計算リソースが備わっていないこともある。例えば、エンドポイントが低速の信号プロセッサしか持っていなかったり、信号プロセッサが他の実行タスクに占有されていたりすることがある。この場合、エンドポイントが受信するビットストリームの一部だけの復号化では、有効なオーディオを生成しないことがある。言うまでもなく、オーディオ品質は復号器が受信し、復号化するビット数に依存する。
【００１５】
これらの理由から、オーディオ会議およびビデオ会議で用いられる拡張可能なオーディオコーデックの必要性がある。
【発明の概要】
【００１６】
背景で述べたように、オーディオ会議用途におけるニーズが高まり、その複雑さが増大し、より多目的かつ強力なオーディオ符号化技法が求められている。特に、オーディオ会議およびビデオ会議で用いられる拡張可能なオーディオコーデックの必要性がある。
【００１７】
本開示によれば、処理装置用の拡張可能なオーディオコーデックは、入力オーディオ信号の各フレーム毎に第１および第２のビット割当て（allocation；「割当て」若しくは「配分」）を決定する。第１の複数ビットが第１の周波数帯域のために割り当てられ（配分され）、第２の複数ビットが第２の周波数帯域のために割り当てられる（配分される）。この割当て（配分）は、２つの帯域間のエネルギー比に基づいてフレーム単位（frame-by-frame basis）で行われる。フレーム毎に、コーデックは両周波数帯域を２セットの変換係数に変換し、その係数をビット割当てに基づいて量子化してから、パケット化する。次に、処理装置を用いてパケットを送信する。更に、変換係数の周波数領域を、パワーレベルおよび知覚モデルにより決定される重要度の順位で配置することができる。もしビット剥落が発生しても、複数帯域の間でビット割り当て（配分）されていて、かつ変換係数の領域に重要度の順位が付けられていれば、受信装置の復号器は適切な品質のオーディオを生成できる。
【００１８】
拡張可能なこのオーディオコーデックは、入力オーディオのフレーム単位で動的なビット割当てを実行する。フレームに利用可能な合計ビットは、低周波数帯域と高周波数帯域との間で割り当てられる。一例では、低周波数帯域は０ｋＨｚから１４ｋＨｚまでを含み、高周波数帯域は１４ｋＨｚから２２ｋＨｚまでを含む。所与のフレーム内の２つの帯域間のエネルギーレベル比により、各帯域に割り当てられる利用可能なビット数が決定される。概して、低周波数帯域にはより多くの利用可能なビット数が割り当てられる傾向がある。このフレーム単位での動的なビット割当てにより、オーディオコーデックは、会話品質の知覚に一貫性を与えるように、送信されたオーディオを符号化および復号化できる。言い換えれば、処理する間に極端に低いビットレートが発生しても、フルバンドの会話としてオーディオを知覚することができる。
【００１９】
本開示に係る拡張可能なオーディオコーデックは、フルバンド、すなわち、２２ｋＨｚまで周波数帯域幅を拡張する。全体として、このオーディオコーデックは約１０ｋｂｐｓ〜６４ｋｂｐｓまで拡張可能である。１０ｋｂｐｓの値が異なることがあり、所与の実装で許容できる符号化品質を選択する。いずれにしても、本開示のオーディオコーデックの符号化品質は、固定レートの、Ｓｉｒｅｎ１４として知られる２２ｋＨｚバージョンのオーディオコーデックとほぼ同じ品質とすることができる。２８ｋｂｐｓ以上では、本開示のオーディオコーデックは２２ｋＨｚコーデックと同程度である。他方、２８ｋｂｐｓ未満では、本開示のオーディオコーデックは、どのレートでも少なくとも１４ｋＨｚの帯域幅を有する１４ｋＨｚコーデックと同程度である。本開示のオーディオコーデックが、スイープ音、ホワイトノイズおよび実際の会話信号を用いる試験に合格できるのは言うまでもない。更に、本開示のオーディオコーデックは、現時点で既存のＳｉｒｅｎ１４オーディオコーデックが要求する計算リソースおよびメモリ要件の約１．５倍しか要求しない。
【００２０】
ビット割当てに加えて、拡張可能なオーディオコーデックは、各周波数帯域の各領域の重要性に基づいてビットの順位を付け直す。例えば、フレームの低周波数帯域は、複数領域に配置される変換係数を有する。オーディオコーデックは、これら領域それぞれの重要性を判定してから、重要度の順位で帯域に割り当てられるビットによりパケット化する。領域の重要度を判定する一方法は、領域のパワーレベルに基づくものであり、これら領域は最大パワーレベルから最小パワーレベルまで重要度の順に配列される。この判定は、周囲の領域の重み付けを用いて重要度を判定する知覚モデルに基づいて拡張できる。
【００２１】
拡張可能なオーディオコーデックによる復号化パケットは、ビット割当ての利点と、重要度に基づいて周波数領域の順位を付け直す利点とを有する。万一、受信パケットのビットストリームの一部が何らかの理由で剥落した場合、オーディオコーデックは、高周波数帯域の方にいくらかのビットが剥落した可能性があるビットストリーム内の、少なくとも最初の低周波数帯域を復号化できる。また、重要度に基づく帯域の領域の順位付けにより、大きなパワーレベルを持つ高い重要度のビットを最初に復号化するので、剥落する可能性は低下する。
【００２２】
上記のように、本開示の拡張可能なオーディオコーデックにより、符号器が生成するビットストリームからビットを剥落させることができるようになるが、復号器は依然として時間領域でオーディオを知的に生成できる。従って、拡張可能なコーデックは以下に説明する多くの用途で有用であり、そのうちのいくつかの用途を以下に検討する。
【００２３】
一実施例では、拡張可能なオーディオコーデックは、エンドポイントが様々なビットレートでビットストリームを送出してネットワーク条件に適合しなければならない無線ネットワークで有用である。ＭＣＵを用いる場合、拡張可能なオーディオコーデックは、従来の慣例によらずに、ビットを剥落させることにより、多様なエンドポイントへ送出するために様々なビットレートでビットストリームを創成できる。従って、ＭＣＵは、拡張可能オーディオコーデックを用いて、第１のエンドポイントからの６４ｋｂｐｓビットストリームからビットを剥落させることにより、有用なオーディオを維持したまま、第２のエンドポイント用の８ｋｂｐｓのビットストリームを得ることができる。
【００２４】
拡張可能なオーディオコーデックを用いて、失われたパケットを扱う場合の計算リソースの節約を支援できる。上述のように、失われたパケットを処理する従来の解決法は、高ビットレートおよび低ビットレート（例えば、４８ｋｂｐｓおよび８ｋｂｐｓ）で同一の２０ｍｓの時間領域データを独立して符号化しているので、低品質（８ｋｂｐｓ）のビットストリームを多数回送出できる。しかし、拡張可能なオーディオコーデックを用いる場合、コーデックは１回符号化するだけでよい。その理由は、第２（低品質）のビットストリームは、第１（高品質）のビットストリームからビットを剥落させることにより、有用なオーディオを維持したまま得ることができる。
【００２５】
最後に、拡張可能なオーディオコーデックは、エンドポイントが完全な復号化を行うのに十分な計算リソースを持っていない場合の助けになる。例えば、エンドポイントが低速の信号プロセッサを持っていたり、信号プロセッサが他のタスクの実行にビジーであったりすることがある。この状況では、拡張可能なオーディオコーデックを用いて、エンドポイントが受信するビットストリームの一部を復号化すれば、依然として有用なオーディオを生成できる。
【００２６】
上記の概要は、それぞれの潜在的な実施の形態または本開示の全ての態様を要約するものではない。
【図面の簡単な説明】
【００２７】
【図１Ａ】変換符号化コーデックの符号器を示す図。
【００２８】
【図１Ｂ】変換符号化コーデックの復号器を示す図。
【００２９】
【図２Ａ】本開示による符号化および復号化技法を用いるための、会議システムの端末等のオーディオ処理装置を示す図。
【００３０】
【図２Ｂ】本開示による符号化および復号化技法を用いるための、送信器および受信器を有する会議システムの配置を示す図。
【００３１】
【図３】本開示によるオーディオ符号化技法のフロー図。
【００３２】
【図４Ａ】より詳細に符号化技法を示すフロー図。
【００３３】
【図４Ｂ】サンプリングされたアナログオーディオ信号をいくつかのフレームとして示す図。
【００３４】
【図４Ｃ】時間領域でサンプリングされたフレームから変換された１セットの変換係数を周波数領域で示す図。
【００３５】
【図４Ｄ】変換係数を符号化するために利用可能なビットを２つの周波数帯域に割り当てる８つのモードを示す図。
【００３６】
【図５Ａ】重要度に基づいて符号化オーディオ内の領域を順位付ける実施例を示す図。
【図５Ｂ】重要度に基づいて符号化オーディオ内の領域を順位付ける実施例を示す図。
【図５Ｃ】重要度に基づいて符号化オーディオ内の領域を順位付ける実施例を示す図。
【００３７】
【図６Ａ】符号化オーディオ内の領域の重要度を判定するためのパワースペクトル技法を示すフロー図。
【００３８】
【図６Ｂ】符号化オーディオ内の領域の重要度を判定するための知覚技法を示すフロー図。
【００３９】
【図７】より詳細に復号化技法を示すフロー図。
【００４０】
【図８】開示する拡張可能なオーディオコーデックを用いてオーディオパケットロスを処理するための技法を示す図。
【発明を実施するための形態】
【００４１】
本開示によるオーディオコーデックは拡張可能であり、利用可能なビット数を複数の周波数帯域の間で割り当てる（配分する）。更に、オーディオコーデックは、重要度に基づいてこれらの帯域それぞれの周波数領域に順位を付ける。ビット剥落が発生しても、重要度が高いこれらの周波数領域はビットストリームの最初にパケット化されている。こうして、ビット剥落が生じても、より有用なオーディオが維持されることになる。オーディオコーデックのこれらの詳細および他の詳細を本明細書に開示する。
【００４２】
本開示の多様な実施の形態は、オーディオ会議（音声会議）、ビデオ会議、およびストリーム音楽または会話を含むストリームメディア等の分野で有用な用途を見いだすことができる。従って、本開示のオーディオ処理装置には、オーディオ会議エンドポイント（オーディオ会議ネットワーク端末）、ビデオ会議エンドポイント（ビデオ会議ネットワーク端末）、オーディオ再生装置、個人用音楽プレーヤ、コンピュータ、サーバ、電話通信装置、携帯電話、携帯情報端末、ＶｏＩＰ電話装置、コールセンター装置、音声記録装置、音声メッセージ装置などが含まれる。例えば、ここに開示する技術は専用のオーディオ会議またはビデオ会議のエンドポイントにとって有用である。同様に、コンピュータまたは他の装置をデスクトップ会議またはデジタルオーディオの送受信に使用してもよく、ここで開示する技術はこれらの装置にとって有用である。
Ａ．会議エンドポイント
【００４３】
上記のように、本開示のオーディオ処理装置には会議のエンドポイントつまり端末が含まれる。図２Ａは、エンドポイントつまり端末１００の実施例を略示する。図示のように、会議端末１００は、ネットワーク１２５上の送信器および受信器の両方とすることができる。また、図示のように、会議端末１００は、オーディオ会議能力はもとより、ビデオ会議能力を持つこともできる。概して、端末１００はマイクロホン１０２およびスピーカ１０８を有し、ビデオカメラ１０３、ディスプレイ１０９、キーボード、マウス等の他の各種入力／出力装置を有してもよい。更に、端末１００は、プロセッサ１６０、メモリ１６２、変換器電子回路１６４、および、特定のネットワーク１２５に適合したネットワークインターフェース１２２／１２４を有する。オーディオコーデック１１０は、ネットワーク端末用の適切なプロトコルに従って標準規格ベースの会議を提供する。これらの標準規格の全体を、メモリ１６２に格納されたソフトウエアで実装してもよく、プロセッサ１６０、専用ハードウエア、またはこれらの組合せを用いて実行する。
【００４４】
送信パス（送信経路）では、マイクロホン１０２により収音されたアナログ入力信号が変換器電子回路１６４によりデジタル信号に変換され、端末のプロセッサ１６０上で動作するオーディオコーデック１１０がインターネット等のネットワーク１２５上に送信器インターフェース１２２を介して送信するためのデジタルオーディオ信号を符号化する符号器２００を有する。ビデオ符号器１７０を有するビデオコーデックがあれば、ビデオ信号用の類似機能を実行できる。
【００４５】
受信パス（受信経路）では、端末１００は、オーディオコーデック１１０に接続されたネットワーク受信器インターフェース１２４を有する。復号器２５０は、受信したオーディオ信号を復号化し、変換器電子回路１６４が、スピーカ１０８へ出力するためにデジタル信号をアナログ信号に変換する。ビデオ復号器１７２を有するビデオコーデックがあれば、ビデオ信号用の類似機能を実行できる。
Ｂ．オーディオ処理構成
【００４６】
図２Ｂは、第１のオーディオ処理装置１００Ａ（送信器として作用する）が、圧縮されたオーディオ信号を第２のオーディオ処理装置１００Ｂ（この文脈では受信器として作用する）へ送出する会議編成を示す。送信器１００Ａおよび受信器１００Ｂはともに、ＩＴＵ Ｇ．７２２．１（Ｐｏｌｙｃｏｍ  Ｓｉｒｅｎ７）またはＩＴＵ Ｇ．７２２．１．Ｃ（Ｐｏｌｙｃｏｍ  Ｓｉｒｅｎ１４）で使用されるものと類似の、変換符号化を実行する拡張可能なオーディオコーデック１１０を有する。説明のために、送信器および受信器１００Ａ、１００Ｂは、オーディオ会議またはビデオ会議内のエンドポイントつまり端末とすることができるが、他の種類の装置であってもよい。
【００４７】
動作中は、送信器１００Ａのマイクロホン１０２は、ソースのオーディオを取得し、電子回路がそのオーディオのブロックまたはフレームをサンプリングする。典型的には、オーディオのブロックまたはフレームのスパン（間隔）は入力オーディオの２０ｍｓである。この時点で、オーディオコーデック１１０の正変換が、各オーディオフレームを１セットの周波数領域の変換係数群に変換する。次いで、当技術分野で公知の技法を用いて、これらの変換係数群を量子化器１１５により量子化し、符号化する。
【００４８】
符号化されると、送信器１００Ａは、そのネットワークインターフェース１２０を用いて、パケット内の符号化された変換係数群をネットワーク１２５経由で受信器１００Ｂに送出する。ＩＰ（インターネットプロトコル）ネットワーク、ＰＳＴＮ（公衆交換電話網）、ＩＳＤＮ（デジタル総合サービス網）等を含むがそれらに限定はされない、任意の適切なネットワークを使用できる。それらの一部では、送信されるパケットは任意の適切なプロトコルまたは標準規格を使用できる。例えば、パケット内のオーディオデータは、ＴＯＣの後に続けることができ、オーディオフレームを含む全てのオクテットをユニットとしてペイロードに添えることができる。オーディオフレームおよびパケットに関する追加詳細はＩＴＵ−Ｔ勧告Ｇ．７２２．１およびＧ．７２２．１Ｃに規定されるが、これらを引用して本明細書に組み込む。
【００４９】
受信器１００Ｂで、ネットワークインターフェース１２０はパケットを受信する。続く逆処理では、受信器１００Ｂは、逆量子化器１１５およびコーデック１１０の逆変換を用いて、符号化された変換係数群を逆量子化し、復号化する。逆変換は、係数群を時間領域に変換して戻すことにより、受信器のスピーカ１０８用の出力オーディオ信号を生成する。オーディオ会議およびビデオ会議では、受信器１００Ｂおよび送信器１００Ａは、会議をしている間、交互に動作する。
Ｃ．オーディオコーデック動作
【００５０】
オーディオコーデック１１０およびオーディオ処理装置１００を理解したところで、オーディオコーデック１１０が本開示に従ってどのようにオーディオを符号化し、復号化するかの説明に移る。図３に示すように、送信器１００Ａのオーディオコーデック１１０は、時間領域のオーディオデータを受信し（ブロック３１０）、オーディオデータのオーディオブロックまたはフレームを取り出す（ブロック３１２）。
【００５１】
正変換を用いて、オーディオコーデック１１０は、オーディオフレームを周波数領域の変換係数群に変換する（ブロック３１４）。上記説明のように、オーディオコーデック１１０は、Ｐｏｌｙｃｏｍ社のＳｉｒｅｎ技術を用いてこの変換を実行する。ここで、オーディオコーデックは、ＭＰ３、ＭＰＥＧ ＡＡＣ等を含む任意の変換コーデックとすることができるが、それらに限定はされない。
【００５２】
オーディオフレームを変換する場合、オーディオコーデック１１０は、フレームのスペクトル包絡線も量子化し、符号化する（ブロック３１６）。この包絡線は符号化されるオーディオの振幅を記述するが、位相の詳細情報は何も提供しない。スペクトル包絡線の符号化はビット数をさほど必要としないので、直ちに完成させることができる。更に、以下から分かるように、ビットが送信から剥落された場合、スペクトル包絡線は、オーディオ復号化において後で使用され得る。
【００５３】
インターネット等のネットワーク上で通信する場合、帯域幅が変わることがあり、パケットが失われることがあり、そして接続レートが異なることがある。これらの困難に対抗するために、本開示に係るオーディオコーデック１１０は拡張可能（scalable）である。この方法で、オーディオコーデック１１０は、より詳細に後述するプロセスで、利用可能な複数ビット（ビット数）を少なくとも２つの周波数帯域間で割り当てる（配分する）（ブロック３１８）。コーデックの符号器２００は、割り当てられた周波数帯域のそれぞれにおいて変換係数群を量子化し、符号化し（ブロック３２０）、次いで、領域の重要度に基づいて周波数領域毎にビットの順位を付け直す（ブロック３２２）。全般的に見れば、符号化プロセス全体で約２０ｍｓの遅延しか発生しない。
【００５４】
より詳細に後述するビットの重要度判定は、いくつもの理由でビットが剥落する場合、遠端（遠隔地点）で再生できるオーディオ品質を向上させる。ビットの順位を付け直してから、ビットを遠端に送出するためにパケット化する。最後に、パケットを遠端に送信し、それにより次のフレームを処理できるようになる（ブロック３２４）。
【００５５】
遠端では、受信器１００Ｂはパケットを受信し、それらを周知の技法に従って取り扱う。次に、コーデックの復号器２５０は、スペクトル包絡線を復号化して、逆量子化し（ブロック３５２）、複数周波数帯域間に割り当てられた複数ビットを判定する（ブロック３５４）。復号器２５０が周波数帯域間のビット割当てを判定する方法の詳細については後述する。ビット割当てが分かると、復号器２５０は変換係数群を復号化して、逆量子化し（ブロック３５６）、各帯域の係数群について逆変換を実行する（ブロック３５８）。最後に、復号器２５０はオーディオを時間領域に変換して戻し、受信器のスピーカ用に出力オーディオを生成する（ブロック３６０）。
Ｄ．符号化技術
【００５６】
上記のように、開示のオーディオコーデック１１０は拡張可能であり、変換符号化を用いて、少なくとも２つの周波数帯域の配分ビットでオーディオを符号化する。拡張可能なオーディオコーデック１００により実行される符号化技術の詳細を図４のフロー図に示す。最初に、オーディオコーデック１１０は、１フレームの入力オーディオ信号を得て（ブロック４０２）、当技術分野で周知の変調重複変換を用いて、そのフレームを変換係数群に変換する（ブロック４０４）。周知のように、これら変換係数群の各係数は、それぞれ大きさ（マグニチュード）を有し、正であっても負であってもよい。また、オーディオコーデック１１０は、上記したように、スペクトル包絡線［０Ｈｚ〜２２ｋＨｚ］を量子化し、符号化する（ブロック４０６）。
【００５７】
この時点で、オーディオコーデック１１０は、２つの周波数帯域間で１フレーム分の複数ビットを割り当てる（配分する）（ブロック４０８）。このビット割当ては、オーディオコーデック１１０が受信オーディオデータを符号化するときにフレーム単位で動的に判定される。２つの帯域を分ける分割周波数が選択されることで、利用可能な第１の数のビットが該分割周波数以下の低周波数領域に割り当てられ、残りのビットが該分割周波数より上の高周波数領域に割り当てられる。
【００５８】
帯域のビット割当てが決定された後、オーディオコーデック１１０は、低周波数帯域および高周波数帯域両方の正規化された係数を各割当てビット数により符号化する（ブロック４１０）。次に、オーディオコーデック１１０は、これら両方の周波数帯域内の各周波数領域の重要度を決定し（ブロック４１２）、決定された重要度に基づいて周波数領域を順位付ける（ブロック４１４）。
【００５９】
上記のように、オーディオコーデック１１０は、Ｓｉｒｅｎコーデックに類似させることができ、時間領域から、ＭＬＴ係数を有する周波数領域へオーディオ信号を変換できる（簡単にするために、本開示は、かかるＭＬＴ変換の変換係数に言及するが、ＦＦＴ（高速フーリエ変換）およびＤＣＴ（離散コサイン変換）等の他の変換形式を用いてもよい）。
【００６０】
サンプリングレートで、ＭＬＴ変換は約９６０個のＭＬＴ係数（すなわち、２５Ｈｚ毎に１つの係数）を生成する。これらの係数は、０、１、２．．．のインデックスの昇順に従って周波数領域で並べられる。例えば、最初の領域０は周波数範囲［０〜５００Ｈｚ］をカバーし、次の領域１は［５００〜１０００Ｈｚ］をカバーし、という具合である。従来なされていたように周波数領域を昇順で送出するだけでなく、拡張可能なオーディオコーデック１１０は、オーディオ全体の脈絡で領域の重要度を判定してから、重要度の高い方から重要度の低い方へという基準で領域の順位を付け直す。重要度に基づくこの再配列は、両方の周波数帯域で行われる。
【００６１】
各周波数領域の重要度の判定は様々な方法で行うことができる。１つの実装例において、符号器２００は、量子化した信号パワースペクトルに基づいて領域の重要度を判定する。この場合、大きなパワーを持つ領域の方が重要度が高い。別の実装例では、知覚モデルを用いて領域の重要度を判定できる。知覚モデルは、人が知覚しない外来オーディオ、ノイズ等をマスクする。これら技法についてはそれぞれ、より詳細に後述する。
【００６２】
重要度に基づいて順位を付けてから、最も重要度が高い領域を最初に、続いて重要度がより低い領域を、というようにパケット化する（ブロック４１６）。最後に、順位を付け、パケット化した領域をネットワークに載せて遠端に送出する（ブロック４２０）。パケットを送出するとき、変換係数の領域の順位に関するインデックス情報は送出しなくてもよい。それが無くても、ビットストリームから復号化されるスペクトル包絡線に基づいて、復号器内でインデックス情報を計算できる。
【００６３】
ビット剥落が発生すると、エンドポイントに向かってパケット化されたこれらのビットが剥落してしまうことがある。領域は順位付けられているので、より重要度の高い領域の係数が最初にパケット化されている。従って、ビット剥落が発生した場合、最後にパケット化された重要度の低い領域の方が剥落する可能性が高い。
【００６４】
遠端では、送信器１００Ａにより最初に与えられた順位付け重要度を既に反映した受信データを、復号器２５０が復号化し変換する。こうして、受信器１００Ｂがパケットを復号化し、時間領域のオーディオを生成した場合、受信器のオーディオコーデック１１０が、入力オーディオ内の、重要度が高い係数の方の領域を実際に受信し、処理する機会が増加える。予想されるように、帯域幅、計算能力、およびその他のリソースの変化が会議中に起き、それにより、オーディオが失われたり、符号化されなかったりする。
【００６５】
オーディオ信号が複数帯域間でビット割り当て（ビット配分）され、重要度で順位付けられるなら、オーディオコーデック１１０は更に有用なオーディオを遠端で処理する機会を増やすことができる。これら全てを考え合わせると、どのような理由であれオーディオ品質が低下する時に、ビットストリームからビット（すなわち、部分的なビットストリーム）が剥落しても、オーディオコーデック１１０は依然として実用的なオーディオ信号を生成できる。
１．ビット割当て
【００６６】
上記のように、本願で開示する拡張可能なコーデック１１０は、利用可能なビット数を複数の周波数帯域間で割り当てる。図４Ｂに示すように、オーディオコーデック（１１０）は、特定のサンプリング周波数（例えば、４８ｋＨｚ）でオーディオ信号４３０をそれぞれ約２０ｍｓの連続フレームＦ１、Ｆ２、Ｆ３等でサンプリングし、デジタル化する（実際にはフレームが重なっていてもよい）。従って、各フレームＦ１、Ｆ２、Ｆ３等は、約９６０個のサンプルを有する（４８ｋＨｚ×０．０２ｓ＝９６０）。次いで、オーディオコーデック（１１０）は、各フレームＦ１、Ｆ２、Ｆ３等を時間領域から周波数領域に変換する。所与のフレームに対して、例えば、この変換は図４Ｃに示すような１セットのＭＬＴ係数を生成する。この１フレームに約９６０個のＭＬＴ係数がある（すなわち、２５Ｈｚ毎に１つのＭＬＴ係数）。符号化帯域幅が２２ｋＨｚなので、約２２ｋＨｚを超える周波数を表すＭＬＴ変換係数は無視される。
【００６７】
符号化された情報をパケット化し、ネットワーク上に送信できるように、０〜２２ｋＨｚの周波数領域の変換係数セットを符号化しなければならない。一例では、オーディオコーデック（１１０）は、６４ｋｂｐｓの最高レートでフルバンドのオーディオ信号を符号化するように構成されている。更に、本明細書で説明するように、オーディオコーデック（１１０）は、１フレームを符号化するために利用可能なビット数を２つの周波数帯域間で割り当てる（配分する）。
【００６８】
ビット数を割り当てるために、オーディオコーデック１１０は、利用可能な合計ビット数を第１の帯域［０〜１２ｋＨｚ］と第２の帯域［１２ｋＨｚ〜２２ｋＨｚ］の間で分割するようにできる。２つの帯域を分ける分割周波数（１２ｋＨｚ）は、主として会話の音質変化および主観テストに基づいて選定できる。所与の実装形態に対応して他の分割周波数を使用できるであろう。
【００６９】
利用可能な合計ビットの分割は、２つの帯域の間のエネルギー比に基づいている。１つの実施例では、２つの帯域の間で分割するための４つのモードの可能性がある。例えば、６４ｋｂｐｓの利用可能な合計ビットを以下のように分割できる。
【表１】
0005647571.tif 000002
【００７０】
遠端へ送信される情報内にこれら４つの可能性を表すには、符号器（２００）が送信のビットストリーム内で２ビットを使用する必要がある。遠端復号器（２５０）は、これらの送信されたビットからの情報を用いて、受信時に所与のフレームに対するビット割当てを決定できる。ビット割当てが分かると、復号器（２５０）はこの決定されたビット割当てに基づいて信号を復号化することができる。
【００７１】
図４Ｃに示す別の例では、オーディオコーデック（１１０）は、［０〜１４ｋＨｚ］の第１の帯域（ＬｏＢａｎｄ）４４０と、［１４ｋＨｚ〜２２ｋＨｚ］の第２の帯域（ＨｉＢａｎｄ）４５０との間で、利用可能な合計ビット数を分けることによりビット数を割り当てるよう構成されている。実装に応じて他の値を使用できようが、１４ｋＨｚの分割周波数は、会話／音楽、ノイジー／明瞭、男声／女声等の主観的な聴覚品質に基づいていて好ましい。１４ｋＨｚで信号をＨｉＢａｎｄとＬｏＢａｎｄとに分割することにより、拡張可能なオーディオコーデック１１０を既存のＳｉｒｅｎ１４オーディオコーデックと同等にする。
【００７２】
この例では、可能性のある８つの分割モードによりフレーム単位でフレームを分割できる。この８モード（bit_split_mode；ビット分割モード）は、２つの帯域４４０、４５０の間のエネルギー比に基づいている。ここで、低周波数帯域（ＬｏＢａｎｄ）のエネルギーまたはパワー値をＬｏＢａｎｄｓＰｏｗｅｒとする一方、高周波数帯域（ＨｉＢａｎｄ）のエネルギーまたはパワー値をＨｉＢａｎｄｓＰｏｗｅｒとする。所与のフレームの特定のモード（bit_split_mode；ビット分割モード)は以下のように決定される：
if (HiBandsPower > (LoBandsPower*4.0))
bit_split_mode = 7;
else if (HiBandsPower > (LoBandsPower*3.0))
bit_split_mode = 6;
else if (HiBandsPower > (LoBandsPower*2.0))
bit_split_mode = 5;
else if (HiBandsPower > (LoBandsPower*1.0))
bit_split_mode = 4;
else if (HiBandsPower > (LoBandsPower*0.5))
bit_split_mode = 3;
else if  (HiBandsPower > (LoBandsPower*0.01))
bit_split_mode = 2;
else if  (HiBandsPower > (LoBandsPower*0.001))
bit_split_mode  = 1; 
else bit_split_mode = 0;
【００７３】
ここで、低周波数帯域（ＬｏＢａｎｄｓＰｏｗｅｒ）のパワー値は、
【数１】
0005647571.tif 000003
として計算される、ここで、範囲インデックスｉ＝０，１，２，．．．２５である。（各領域の帯域幅は５００Ｈｚなので、対応する周波数範囲は０Ｈｚ〜１２，５００Ｈｚである）。既存のＳｉｒｅｎコーデックに利用可能な予め定義済みの表を用いて、各領域のパワーを量子化して、quantized_region_power[i] の値を求めることができる。その部分については、高周波数帯域（ＨｉＢａｎｄｓＰｏｗｅｒ）のパワー値も同様に計算する。但し、１３ｋＨｚ〜２２ｋＨｚの周波数範囲を使用する。従って、このビット割当て技術における分割周波数は、信号スペクトルは１４ｋＨｚで分割されるが、実際には１３ｋＨｚである。これは掃引サイン波テストに合格するように行われる。
【００７４】
次に、上記のように、帯域のパワー値のエネルギー比から判定されたビット分割モード（bit_split_mode）に基づいて、２つの周波数帯域４４０、４５０のビット割当てを計算する。詳細には、ＨｉＢａｎｄ周波数帯域は、利用可能な合計６４ｋｂｐｓの内の（１６＋４ * bit_split_mode）ｋｂｐｓを得る一方、ＬｏＢａｎｄ周波数帯域は、利用可能な合計６４ｋｂｐｓの内の残りのビットを得る。これは、以下の８モードの割当てに展開される。
【表２】
0005647571.tif 000004
【００７５】
遠端に送信された情報内のこれら８つの可能性を表すには、送信コーデック（１１０）がビットストリーム中に３ビットを使用する必要がある。遠端の復号器（２５０）はこれら３ビットにより指示されるビット割当てを使用でき、このビット割当てに基づいて所与のフレームを復号化できる。
【００７６】
図４Ｄは、可能性のある８つのモード（０〜７）のビット割当て４６０のグラフである。フレームは２０ミリ秒のオーディオを有するので、６４ｋｂｐｓの最大ビットレートは、フレームあたり利用可能な合計１２８０ビット（すなわち、６４，０００ｂｐｓ×０．０２ｓ）に対応する。繰り返しになるが、使用するモードは、２つの周波数帯域のパワー値４７４、４７５のエネルギー比に依存する。様々な比４７０も図４Ｄにグラフとして描かれている。
【００７７】
従って、ＨｉＢａｎｄのパワー値４７５がＬｏＢａｎｄのパワー値４７４の４倍を超えると、決定されるビット分割モード（bit_split_mode）は"７"となる。これは、ＬｏＢａｎｄの２０ｋｂｐｓ（または４００ビット）の第１のビット割当て４６４に対応し、利用可能な６４ｋｂｐｓ（または１２８０ビット）の内のＨｉＢａｎｄの４４ｋｂｐｓ（または８８０ビット）の第２のビット割当て４６５に対応する。別の実施例として、ＨｉＢａｎｄのパワー値４６４が、ＬｏＢａｎｄのパワー値４６５の半分を超えるが、ＬｏＢａｎｄのパワー値４６４の１倍未満の場合、ビット分割モード（bit_split_mode）は、"３"と決定される。これは、ＬｏＢａｎｄの３６ｋｂｐｓ（または７２０ビット）の第１のビット割当て４６４と対応し、利用可能な６４ｋｂｐｓ（または１２８０ビット）の内のＨｉＢａｎｄの２８ｋｂｐｓ（または、５６０ビット）の第２のビット割当て４６５と対応する。
【００７８】
これら２つの可能性のあるビット割当ての形から分かるように、２つの周波数帯域の間でビット数を割り当てる方法を決定するのは、所与の実装形態のいくつかの細目に依存しており、これらのビット割当て方式が例示に過ぎないことを意味している。３つ以上の周波数帯域をビット割当てに関与させて、所与のオーディオ信号のビット割当てを更に精緻にすることも考えられる。従って、本開示の全体のビット割当ておよびオーディオの符号化／復号化は、３つ以上の周波数帯域をカバーするように拡張でき、また、本開示の教示により与えられる分割モード数を増加／減少させるように拡張できる。
２．順位付け直し
【００７９】
上記のように、ビット割当てに加えて、開示するオーディオコーデック（１１０）は、より重要な領域における係数の順位を付け直して、それらの係数が最初にパケット化されるようにする。こうすると、通信事情のせいでビットストリームからビットが剥落する時に、重要な領域の方が削除される可能性は低くなる。例えば、図５Ａは、従来の、ビットストリーム５００に入る領域のパケット順を示す。上記のように、各領域は、対応する周波数範囲の変換係数を有する。図示のように、この従来の構成では、周波数範囲［０〜５００Ｈｚ］の最初の領域"０"が最初にパケット化される。［５００〜１０００Ｈｚ］をカバーする次の領域"１"が次にパケット化され、最後の領域がパケット化されるまでこのプロセスが繰り返される。その結果が従来のビットストリーム５００であり、周波数領域０、１、２、．．．Ｎの昇順で領域が配列される。
【００８０】
領域の重要度を判定し、次いで、より重要な領域をビットストリームの最初にパケット化することにより、本開示のオーディオコーデック１１０は、図５Ｂに示すようなビットストリーム５１０を生成する。ここで、最も重要な領域（周波数範囲とは無関係に）を最初にパケット化し、続いて２番目に重要な領域をパケット化する。このプロセスを重要度が最も低い領域がパケット化されるまで繰り返す。
【００８１】
図５Ｃに示すように、何らかの理由で、ビット群がビットストリーム５１０から剥落することがある。例えば、ビットストリームの送信中または受信中にビット群が脱落することがある。しかし、残りのビットストリームは、保持されているビットについて、まだ復号化することができる。これらのビットは重要度に基づいて順位付けられているので、最も重要度が低い領域のビット５２０は、これが発生すると剥落する可能性が高くなる。最後に、図５Ｃで明らかなように、順位を付け直したビットストリーム５１０にビット剥落が発生しても、全体のオーディオ品質を維持することができる。
３．重要度を決定するためのパワースペクトル技術
【００８２】
上記のように、符号化オーディオ内の領域の重要度を判定する技術は、領域のパワー信号を用いて領域に順位を付けることである。図６Ａに示すように、本開示に係るオーディオコーデック（１１０）が使用するパワースペクトルモデル６００が、領域毎の信号パワーを計算する（すなわち、領域０［０〜５００Ｈｚ］、領域１［５００〜１０００Ｈｚ］等）（ブロック６０２）。オーディオコーデック（１１０）がこれを行う１つの方法は、所与の領域内の各変換係数の二乗和を計算し、これを所与の領域の信号パワーに使用することである。
【００８３】
所与の周波数帯域のオーディオを変換係数に変換してから（例えば、図４のブロック４１０で実行するように）、オーディオコーデック（１１０）は、各領域内の係数の二乗を計算する。現在の変換では、各領域は５００Ｈｚをカバーし、それぞれ２５Ｈｚをカバーする２０個の変換係数を有する。所与の領域内のこれら２０個の変換係数のそれぞれの二乗和が、この領域のパワースペクトルを生成する。対象とする帯域内の領域毎にこれを実行して、対象とする帯域内の領域毎にパワースペクトル値を計算する。
【００８４】
領域の信号パワーの計算を終えると（ブロック６０２）、それらを量子化する（ブロック６０３）。次に、モデル６００がパワーの降順で領域をソートし、各帯域内の最大パワー領域で開始し、最小パワー領域で終了する（ブロック６０４）。最後に、オーディオコーデック（１１０）は、決定された順位で係数のビットをパケット化することにより、モデル６００を完了させる（ブロック６０６）。
【００８５】
結局、オーディオコーデック（１１０）は、領域の信号パワーに基づき他の領域と比較して領域の重要度を判定している。この場合、大きなパワーを有する領域は高い重要度を有する。最後にパケット化された領域が、送信プロセス内の何らかの理由で剥落した場合、より大きなパワー信号を有するこれらの領域が最初にパケット化され、剥落しない有用なオーディオを含む可能性が高い。
４．重要度を判定するための知覚技法
【００８６】
上記のように、符号化信号内の領域の重要度を判定するための別の技術は、知覚モデル６５０を使用する。その一例を図６Ｂに示す。最初に、知覚モデル６５０は、２つの帯域のそれぞれの各領域の信号パワーを計算するが、上記とほとんど同じ方法で行うことができ（ブロック６５２）、次いで、モデル６５０は信号パワーを量子化する（ブロック６５３）。
【００８７】
次に、モデル６５０は、領域毎の変更した領域パワー値（すなわち、ｍｏｄｉｆｉｅｄ＿ｒｅｇｉｏｎ＿ｐｏｗｅｒ）を定義する（ブロック６５４）。変更した領域パワー値は、所与の領域の重要度を考慮する場合、周囲の領域の影響を考慮して重み付けした合計に基づく。従って、知覚モデル６５０は、１つの領域内の信号パワーが別の領域内の量子化ノイズをマスクでき、２つの領域がスペクトル上で近い場合にこのマスキング効果が最大になるという事実を利用している。従って、所与の領域の変更した領域パワー値（すなわち、ｍｏｄｉｆｉｅｄ＿ｒｅｇｉｏｎ＿ｐｏｗｅｒ（ｒｅｇｉｏｎ＿ｉｎｄｅｘ））を次のように定義できる：
SUM ( weight [region_index, r ] * quantized_region_power(r));
ここで、r=［0...43］であり；
quantized_region_power(r)は、領域の算出信号パワーであり；
weight [region_index, r ]は、スペクトル距離｜region_index − r｜が増加すると減少する固定関数である。
【００８８】
従って、知覚モデル６５０は、重み付け関数が以下のように定義されると、図６Ａのモデルに帰着する：
r = region_index のとき、weight(region_index, r) = 1 
r != region_index のとき、weight(region_index, r) = 0 
【００８９】
上記概説したように、変更した領域パワー値を計算してから、知覚モデル６５０は、降順で変更した領域パワー値に基づいて領域をソートする（ブロック６５６）。上記のように、特に、２つの領域がスペクトル上で互いに近い場合、重み付けをしたことにより、１つの領域の信号パワーは別の領域の量子化ノイズをマスクできる。次いで、オーディオコーデック（１１０）は、決定された順位で領域のビットをパケット化することによりモデル６５０を完了させる（ブロック６５８）。
５．パケット化
【００９０】
上記説明のように、開示のオーディオコーデック（１１０）は、低周波数および高周波数の帯域に使用される特定のビット割当ての詳細を遠端の復号器（２５０）へ送出できるように、ビットを符号化し、それらをパケット化する。更に、スペクトル包絡線が、パケット化される２つの周波数帯域における変換係数の割当てビットと共にパケット化される。以下の表は、近端から遠端へ送信されるべき所与のフレームのビットストリームにおいてビットがパケット化される（第１ビットから最後のビットまで）方法を示す。
【表３】
0005647571.tif 000005
【００９１】
表から分かるように、特定のビット割当てを指示する（可能性のある８つのモードの）３ビットをフレーム用に先ずパケット化する。次に、この帯域のスペクトル包絡線用のビット群を最初にパケット化することにより低周波数帯域（ＬｏＢａｎｄ）をパケット化する。普通、包絡線は振幅情報を含むが位相情報は含まないので、少ない符号化ビットで済む。包絡線用のビット群をパケット化した後、特定の割当てビット数を低周波数帯域（ＬｏＢａｎｄ）の正規化係数用にパケット化する。スペクトル包絡線用のビット群は、それらビットの典型的な昇順に基づいてパケット化されるだけである。更に、上記概説したように、低周波数帯域（ＬｏＢａｎｄ）の係数用に割り当てられたビット群が重要度に従って順位が付け直されている時、それらビットがパケット化される。
【００９２】
最後に、表から分かるように、高周波数帯域（ＨｉＢａｎｄ）を、この帯域のスペクトル包絡線用のビット群を先ずパケット化することによりパケット化し、次いで、同じ方法で、ＨｉＢａｎｄ周波数帯域の正規化係数用の特定の割当て数からなるビット群をパケット化する。
Ｅ．復号化技術
【００９３】
先に、図２Ａで説明したように、本開示のオーディオコーデック１１０の復号器２５０は、パケットを受信すると、それらのビットを復号化するので、オーディオコーデック１１０は、係数を時間領域に変換して戻すことにより、出力オーディオを生成することができる。この処理を図７に詳細に示す。
【００９４】
最初に、受信器（例えば、図２Ｂの１００Ｂ）がビットストリームでパケットを受信し、周知の技術を用いてパケットを処理する（ブロック７０２）。パケットを送出する場合、例えば、送信器１００Ａは、送出されるパケットに含まれるシーケンス番号を作成する。周知のように、パケットは、送信器１００Ａから受信器１００Ｂまで、ネットワーク１２５上の様々なルートを通過することがあるので、パケットは受信器１００Ｂに様々な時間に到着するかもしれない。つまり、パケットが到着する順序はランダムとなる。この「ジッター」と呼ばれる変化する到着時間を処理するために、受信器１００Ｂは受信器のインターフェース１２０に接続されるジッターバッファ（不図示）を有する。典型的には、ジッターバッファは、同時に４つ以上のパケットを保持する。従って、受信器１００Ｂは、パケットのシーケンス番号に基づいてジッターバッファ内のパケットを並べ替える。
【００９５】
ビットストリーム内の最初の３ビットを用いて（例えば、図５Ｂの５２０）、復号器２５０は、処理される所与のフレームのビット割当て用パケットを復号化する（ブロック７０４）。上記のように、構成によって、１つの実装内に８つのビット割当ての可能性がある。使用される分割が分かると（最初の３ビットにより指示される）、復号器２５０は帯域毎に割り当てられた数のビットを復号化できる。
【００９６】
低周波数で開始すると、復号器２５０は、フレーム用の低周波数帯域（ＬｏＢａｎｄ）のスペクトル包絡線を復号化し、逆量子化する（ブロック７０６）。次に、復号器２５０は、ビットが受信され、剥落されていない限り、低周波数帯域の係数を復号化し、逆量子化する。従って、復号器２５０は順次に、繰返しプロセスを経由し、それ以上ビットが残っているかどうかを判定する（決定７１０）。ビットが利用可能な限り、復号器２５０は、低周波数帯域内の領域の正規化係数を復号化し（ブロック７１２）、現在の係数値を計算する（ブロック７１４）。この計算のために、復号器２５０は、変換係数をスペクトル包絡線の値に、正規化した係数の値を乗じてｃｏｅｆｆ＝ｅｎｖｅｌｏｐ＊ｎｏｒｍａｌｉｚｅｄ＿ｃｏｅｆｆとして計算する（ブロック７１４）。これを、全てのビットを復号化し、低周波数帯域のスペクトル包絡線値を乗じるまで続ける。
【００９７】
ビットは周波数領域の重要度に従って順位付けられているので、復号器２５０は、ビットストリームが剥落したビットを持っているかどうかに関わらず、たいていはビットストリーム内の最も重要な領域を最初に復号化する。次に復号器２５０は２番目に重要な領域、というように以下順次復号化する。復号器２５０は全てのビットが使用されてしまうまで続ける（判定７１０）。
【００９８】
全てのビットを処理したら（実際には、ビット剥落のせいで元のまま復号化された全てのビットでないかもしれない）、剥ぎ取られているかもしれない最低重要度のこれら領域をノイズで満たし、この低周波数帯域内の信号の残っている部分を完了させる。
【００９９】
ビットストリームでビットが剥落している場合、剥落したビットの係数情報は失われている。しかし、復号器２５０は、低周波数帯域のスペクトル包絡線を既に受信し、復号化している。従って、復号器２５０には少なくともその信号の振幅が分かっているが、位相は分からない。ノイズを満たすために、復号器２５０は剥落したビット内に既知の振幅についての位相情報を満たす。
【０１００】
ノイズで満たすために、復号器２５０は、ビットが欠けているいずれかの残りの領域用の係数を計算する（ブロック７１６）。残りの領域用のこれらの係数は、ノイズ充填値（NOISE_FILL）を乗じたスペクトル包絡線の値として計算される。このノイズ充填値（NOISE_FILL）は、ビット剥落のせいで欠けて失われた領域の係数を満たすために用いられるランダム値とすることができる。ノイズで満たすことにより、端末の復号器２５０は、１０ｋｂｐｓのような極端に低いビットレートであっても、ビットストリームをフルバンドとして知覚できる。
【０１０１】
低周波数帯域を処理した後、復号器２５０は高周波数帯域（ＨｉＢａｎｄ）の全体の処理を繰り返す（ブロック７２０）。従って、復号器２５０は、ＨｉＢａｎｄのスペクトル包絡線を復号化して、逆量子化し、ビットの正規化係数を復号化し、ビットの現在の係数値を計算し、そしてビットを欠いた残りの領域（剥落していれば）のノイズ埋込み係数を計算する。
【０１０２】
復号器２５０が、ＬｏＢａｎｄおよびＨｉＢａｎｄ両方の全ての領域の変換係数を決定し、スペクトル包絡線から導かれた領域の順位を知り得たので、復号器２５０は変換係数に逆変換を実行して、フレームを時間領域に変換する（ブロック７２２）。最後に、オーディオコーデックは時間領域でオーディオを生成する（ブロック７２４）。
Ｆ．オーディオ欠損パケットの復元
【０１０３】
ここで開示するように、拡張可能なオーディオコーデック１１０はビット剥落が発生している場合のオーディオ処理に有用である。加えて、拡張可能なオーディオコーデック１１０は、パケットロス（欠損）復元の支援に用いることもできる。パケットロスに対抗する普通のアプローチは、出力用に既に処理してある、以前に受信したオーディオを単に繰り返して、パケットロスでできた空隙を埋めることである。このアプローチは、オーディオの空隙によって発生する歪みを減らせるが、歪みを解消することはない。例えば、５％を超えるパケットロスのレートでは、以前送信されたオーディオを繰り返すことにより発生するアーチファクトが目立つようになる。
【０１０４】
拡張可能なオーディオコーデック１１０は、連続するパケットにおいて１オーディオフレームの高品質バージョンと低品質をインターレースする（織り混ぜる）ことによりパケットロスに対抗する。これは拡張可能であり、異なる品質でオーディオフレームを２回符号化しなくてよいので、オーディオコーデック１１０は計算コストを低減させることができる。それどころか、拡張可能なオーディオコーデック１１０が既に生成した高品質バージョンからビットを落とすだけで低品質バージョンが得られる
【０１０５】
図８は、送信器１００Ａにある本開示の拡張可能なオーディオコーデック１１０が、オーディオ信号を２回符号化しなくてもオーディオフレームの高品質と低品質のバージョンをインターレースできる方法を示す。以下の説明で、「フレーム」についての言及は、本明細書で説明するような２０ｍｓ位のオーディオブロックを意味している。更に、インターレース（織り混ぜ）処理は、送信パケット、変換係数領域、ビット補正等に適用できる。加えて、３２ｋｂｐｓの最小一定ビットレートおよび、より低品質の８ｋｂｐｓのレートについても説明するが、オーディオコーデック１１０が用いるインターレース技術は他のビットレートにも適用できる。
【０１０６】
典型的には、このオーディオコーデック１１０は、３２ｋｂｐｓの最小一定ビットレートを用いて劣化しないオーディオ品質を達成できる。パケットはそれぞれ２０ｍｓのオーディオを持っているので、この最小ビットレートは６４０ビット／パケットに相当する。但し、このビットレートは、無視できるほどの主観的な歪みを持つ８ｋｂｐｓ（つまり１６０ビット／パケット）に低下することが稀にある。これは、６４０ビットで符号化されたパケットが、１６０ビットだけで符号化されたこれらの稀に発生するパケットからの符号化歪みをマスクするように見えるので起こり得る。
【０１０７】
このプロセスでは、送信器１００Ａのオーディオコーデック１１０が、最小でも３２ｋｂｐｓのビットレートを与えられた各２０ｍｓパケット毎の６４０ビットを用いて、現在の２０ｍｓのオーディオフレームを符号化する。パケットロスの可能性に対処するために、オーディオコーデック１１０は、未来の各フレーム毎に低品質の１６０ビットを用いて、未来のＮ個のオーディオフレームを符号化する。しかし、フレームを２回符号化しなければならないのではなく、代わりに、オーディオコーデック１１０が高品質バージョンからビットを落とす処理を行うことにより低品質の未来のフレームを作成する。何らかの送信オーディオ遅延を導入できるので、送信器１００Ａにオーディオ遅延を追加しなくても、符号化できる可能性のある低品質フレームの数は、例えば、Ｎ＝４に制限してもよい。
【０１０８】
この段階で、次に、送信器１００Ａは高品質ビットと低品質ビットを単一パケットに組み合せ、それを受信器１００Ｂに送出する。図８に示すように、例えば、第１のオーディオフレーム８１０ａは、３２ｋｂｐｓの最小一定ビットレートで符号化される。第２のオーディオフレーム８１０ｂも、同じく３２ｋｂｐｓの最小一定ビットレートで符号化されるが、１６０ビットの低品質でも符号化される。本明細書で説明するように、この低品質バージョン８１４ｂは、既に符号化されている高品質バージョン８１２ｂからビットを落とす（ビットレートを落とす）ことにより実際に達成される。このオーディオコーデック１１０が重要度の領域を区分するとすると、高品質バージョン８１２ｂから低品質バージョン８１４ｂへとビットを落とすことは、この低品質バージョン８１４ｂにおいても何らかの有用なオーディオ品質が実際に保持されるであろう。
【０１０９】
第１の符号化パケット８２０ａを生成するために、第１のオーディオフレーム８１０ａの高品質バージョン８１２ａを、第２のオーディオフレーム８１０ｂの低品質バージョン８１４ｂと組み合せる。この符号化パケット８２０ａは、上記のように分割された低周波数および高周波数の帯域のためのビット割当ておよび順位付け直しの技術を組み込むことができ、かつ、これら技術は、高品質および低品質のバージョンの一方または両方８１２ａ／８１４ｂに適用できる。従って、例えば、符号化したパケット８２０ａには、ビット分割割当ての指示、フレームの高品質バージョン８１２ａの低周波数帯域の第１のスペクトル包絡線、低周波数帯域の順位付けられた領域重要度の第１の変換係数、フレームの高品質バージョン８１２ａの高周波数帯域の第２のスペクトル包絡線、および高周波数帯域の順位付けられた領域重要度の第２の変換係数を含めることができる。次いで、これに、ビット割当て等と無関係に後続のフレームの低品質バージョン８１４ｂだけが続く。代替として、後続のフレームの低品質バージョン８１４ｂは、スペクトル包絡線および２つの帯域周波数の係数が含むことができる。
【０１１０】
高品質符号化、低品質へのビット落とし、および隣接するオーディオフレームとの組合せは、符号化プロセス全体を通じて繰り返される。従って、例えば、第３のオーディオフレーム８１０ｃの低品質バージョン８１４ｃ（すなわち、ビット落としバージョン）と組み合わされた第２のオーディオフレーム８１０ｂの高品質バージョン８１２ｂを含む第２の符号化パケット８２０ｂが生成される。
【０１１１】
受信端末で、受信器１００Ｂは送信されたパケット８２０を受信する。パケットが良好であれば（すなわち、受信されると）、受信器のオーディオコーデック１１０は、現在の２０ミリ秒のオーディオを表す６４０ビットを復号化し、受信器のスピーカにそれを提供する。例えば、受信器１１０Ｂで受信した第１の符号化パケット８２０ａが良好なので、受信器１１０Ｂはパケット８２０ａの第１のフレーム８１０ａの高品質バージョン８１２ａを復号化して、第１の復号化オーディオフレーム８３０ａを生成する。受信した第２の符号化パケット８２０ｂも良好かもしれない。従って、受信器１１０Ｂは、このパケット８２０ｂの第２のフレーム８１０ｂの高品質バージョン８１２ｂを復号化して、第２の復号化オーディオフレーム８３０ｂを生成する。
【０１１２】
パケットが不良または失われている場合、受信器のオーディオコーデック１１０は、受信した最新の良好パケットに含まれる現在のフレームの低品質バージョン（１６０ビットの符号化データ）を用いて、失われたオーディオを復元する。図示のように、例えば、第３の符号化パケット８２０ｃは送信中に失われてしまった。従来なされていたように別のフレームのオーディオで空隙を埋めるのではなく、受信器１００Ｂのオーディオコーデック１１０は、失われたフレーム８２０ｃに代えて、良好だった前回の符号化パケット８２０ｂから得られる低品質オーディオバージョン８１４ｃを用いる。次に、この低品質オーディオを用いて、失われた第３の符号化オーディオフレーム８３０ｃを再構築できる。こうして、失われたパケット８２０ｃのフレームに、低品質ではあるが、実際に失われたオーディオを使用できるのである。しかも、この低品質は、マスキングのせいで知覚的な歪みをさほど起こさないと予想される。
【０１１３】
本開示の拡張可能なオーディオコーデックを会議システムのエンドポイントつまり端末で使用するための説明を行ってきた。しかし、開示の拡張可能なオーディオコーデックは、エンドポイント、端末、ルータ、カンファレンスブリッジ等の各種の会議システムのコンポーネントで使用することができる。これらのそれぞれにおいて、本開示の拡張可能なオーディオコーデックは、帯域幅、計算、およびメモリーリソースを節約できる。同様に、本開示のオーディオコーデックは、短い待ち時間および少ないアーチファクト（作為）という点でオーディオ品質を改善することができる。
【０１１４】
本開示の技法は、デジタル電子回路もしくはコンピューターハードウエア、ファームウエア、ソフトウエア、またはこれらの組合せに実装することができる。これらの技法を実施する装置は、プログラマブルプロセッサが実行するためのマシン読取り可能な格納装置へ具体的に実装されるコンピュータープログラム製品に実装でき、開示する技法の方法ステップは、命令プログラムを実行するプログラマブルプロセッサにより実行されて、入力データ上で動作し、出力を生成することにより開示する技法の機能を実行できる。適切なプロセッサには、例示に過ぎないが、汎用および専用の両方のマイクロプロセッサが含まれる。概して、プロセッサは、命令とリードオンリーメモリおよび／またはランダムアクセスメモリからのデータとを受け取る。概して、コンピュータにはデータファイルを格納するための１つ以上の大容量記憶装置が含まれ、そのような装置には、内蔵ハードディスクおよびリムーバブルディスクのような磁気ディスク；光磁気ディスク；および光ディスクが含まれる。コンピュータープログラム命令およびデータを具体的に実装するために適した格納装置には、例示にすぎないが、ＥＰＲＯＭ、ＥＥＰＲＯＭ、およびフラッシュメモリデバイス等の半導体メモリーデバイス；内蔵ハードディスクおよびリムーバブルディスク等の磁気ディスク；光磁気ディスク；およびＣＤ−ＲＯＭディスクを含むあらゆる形式の不揮発メモリが含まれる。上記の内の何れかは、ＡＳＩＣ（特定用途向け集積回路）により補完されるか、またはＡＳＩＣに組み込むことができる。
【０１１５】
好適な実施の形態および他の実施の形態についての上記説明は、出願人が着想した本発明の概念の範囲または用途を制限または限定するものではない。本明細書に含まれる発明概念を開示する代わりに、本出願人は付帯する特許請求の範囲により付与される全ての特許権を希求する。従って、付帯する特許請求の範囲は、以下の請求項またはその均等物の範囲内にある限りにおいて、あらゆる変形および代替が含まれるものとする。
【符号の説明】
【０１１６】
１００  エンドポイントすなわち端末
１０２  マイクロホン
１０３  ビデオカメラ
１０９  ディスプレイ
１６０  プロセッサ
１６２  メモリ
１６４  変換器電子回路
１２２、１２４  ネットワークインターフェース
１２５  ネットワーク
【図１Ａ】
0005647571.tif 000006
【図１Ｂ】
0005647571.tif 000007
【図２Ａ】
0005647571.tif 000008
【図２Ｂ】
0005647571.tif 000009
【図３】
0005647571.tif 000010
【図４Ａ】
0005647571.tif 000011
【図４Ｂ】
0005647571.tif 000012
【図４Ｃ】
0005647571.tif 000013
【図４Ｄ】
0005647571.tif 000014
【図５Ａ】
0005647571.tif 000015
【図５Ｂ】
0005647571.tif 000016
【図５Ｃ】
0005647571.tif 000017
【図６Ａ】
0005647571.tif 000018
【図６Ｂ】
0005647571.tif 000019
【図７】
0005647571.tif 000020
【図８】
0005647571.tif 000021