米国特許法119条下での優先権の主張
本特許出願は、2010年6月1日に出願され、本出願の譲受人に譲渡された「SYSTEMS, METHODS, APPARATUS, AND COMPUTER PROGRAM PRODUCTS FOR WIDEBAND SPEECH CODING」と題する仮出願第61/350,425号(代理人整理番号第092086P1号)に優先権を主張する。
本開示は音声処理に関する。
公衆交換電話網(PSTN)と同様に、従来のワイヤレスボイスサービスは、300Hzから3400Hzの間の狭帯域の音響に基づいている。この品質は、50Hzと7または8kHzの間の音声周波数を再生するように設計された広帯域(wideband: WB)高品位(high definition: HD)ボイスシステムへの関心の高まりにより、課題になっている。このようにして帯域幅を2倍超に増加させることは、知覚される品質および了解度における著しい改善の結果になり得る。広帯域は、企業内のデスクフォンにおいて、ならびに同じタイプの他のクライアントへの通信を提供するパーソナルコンピュータ(PC)ベースのボイスオーバIP(Voice-over-IP: VoIP)クライアント(たとえば、Skype)において、勢いを増している。
広帯域の会話音声が勢いを増し始めていることに伴って、コーデック開発者は、会話音声のための音響帯域幅における次の発展段階に注目している。現在、50Hzから14kHzまでの周波数を再生する新しい超広帯域(super-wideband: SWB)の音声コーデックに向かう傾向がある。
音声のための帯域幅を14kHzに拡張することは、セルラー呼に新しい会話の音響感覚をもたらすことになる。可聴スペクトルのほぼ全体をカバーすることによって、追加された帯域幅は、改善された臨場感を与えることができる。有声音声は、一般に、オクターブごとに約マイナス6デシベルでロールオフし、その結果、14kHzを超えるとエネルギーがほとんど残らない。
一般的構成によって、低周波数のサブバンドにおいて、および低周波数サブバンドとは別個である高周波数サブバンドにおいて周波数成分を有する音響信号を処理する方法は、狭帯域信号とスーパーハイバンド(超広帯域)信号とを取得するために音響信号をフィルタ処理することを含む。本方法は、狭帯域信号からの情報に基づいて、符号化された狭帯域励振信号を計算することと、符号化された狭帯域励振信号からの情報に基づいて、スーパーハイバンド励振信号を計算することとを含む。本方法は、スーパーハイバンド信号からの情報に基づいて、高周波数サブバンドのスペクトルエンベロープを特徴づける複数のフィルタパラメータを計算することと、スーパーハイバンド信号に基づく信号とスーパーハイバンド励振信号に基づく信号との間の時間変動関係を評価することによって複数の利得ファクタ(factor:係数または因子)を計算することとを含む。本方法では、狭帯域信号は低周波数サブバンド中の周波数成分に基づき、スーパーハイバンド信号は高周波数サブバンド中の周波数成分に基づく。本方法では、低周波数サブバンドの幅は少なくとも3キロヘルツであり、低周波数サブバンドと高周波数サブバンドは、低周波数サブバンドの幅の少なくとも半分に等しい距離だけ分離される。一例では、スーパーハイバンド励振信号を計算することは、補間信号を生成するために、符号化された狭帯域励振信号からの情報に基づく信号をアップサンプリングすることと、スペクトル的に拡張された信号を生成するために、補間信号に基づく信号のスペクトルを拡張することとを含み、スーパーハイバンド励振信号はスペクトル的に拡張された信号に基づく。
別の一般的構成によって、低周波数サブバンドにおける、および低周波数サブバンドとは別個である高周波数サブバンドにおける周波数成分を有する音響信号を処理するための装置は、狭帯域信号とスーパーハイバンド信号とを取得するために音響信号をフィルタ処理するための手段と、狭帯域信号からの情報に基づいて、符号化された狭帯域励振信号を計算するための手段と、符号化された狭帯域励振信号からの情報に基づいて、スーパーハイバンド励振信号を計算するための手段とを含む。本装置は、スーパーハイバンド信号からの情報に基づいて、高周波数サブバンドのスペクトルエンベロープを特徴づける複数のフィルタパラメータを計算するための手段と、スーパーハイバンド信号に基づく信号とスーパーハイバンド励振信号に基づく信号との間の時間変動関係を評価することによって複数の利得ファクタ(係数)を計算するための手段とを含む。本装置では、狭帯域信号は低周波数サブバンド中の周波数成分に基づき、スーパーハイバンド信号は高周波数サブバンド中の周波数成分に基づく。本装置では、低周波数サブバンドの幅は少なくとも3キロヘルツであり、低周波数サブバンドと高周波数サブバンドは、低周波数サブバンドの幅の少なくとも半分に等しい距離だけ分離される。一例では、スーパーハイバンド励振信号を計算するための手段は、補間信号を生成するために、符号化された狭帯域励振信号からの情報に基づく信号をアップサンプリングするための手段と、スペクトル的に拡張された信号を生成するために、補間信号に基づく信号のスペクトルを拡張するための手段とを含み、スーパーハイバンド励振信号はスペクトル的に拡張された信号に基づく。
別の一般的構成によって、低周波数サブバンドにおける、および低周波数サブバンドとは別個である高周波数サブバンドにおける周波数成分を有する音響信号を処理するための装置は、狭帯域信号とスーパーハイバンド信号とを取得するために音響信号をフィルタ処理するように構成されたフィルタバンクと、狭帯域信号からの情報に基づいて、符号化された狭帯域励振信号を計算するように構成された狭帯域エンコーダとを含む。また、本装置は、(A)符号化された狭帯域励振信号からの情報に基づいて、スーパーハイバンド励振信号を計算することと、(B)スーパーハイバンド信号からの情報に基づいて、高周波数サブバンドのスペクトルエンベロープを特徴づける複数のフィルタパラメータを計算することと、(C)スーパーハイバンド信号に基づく信号とスーパーハイバンド励振信号に基づく信号との間の時間変動関係を評価することによって複数の利得係数を計算することとを行うように構成されたスーパーハイバンドエンコーダとを含む。本装置では、狭帯域信号は低周波数サブバンド中の周波数成分に基づき、スーパーハイバンド信号は高周波数サブバンド中の周波数成分に基づく。本装置では、低周波数サブバンドの幅は少なくとも3キロヘルツであり、低周波数サブバンドと高周波数サブバンドは、低周波数サブバンドの幅の少なくとも半分に等しい距離だけ分離される。一例では、スーパーハイバンドエンコーダは、補間信号を生成するために、符号化された狭帯域励振信号からの情報に基づく信号をアップサンプリングするよう構成されたアップサンプラと、スペクトル的に拡張された信号を生成するために、補間信号に基づく信号のスペクトルを拡張するよう構成されたスペクトル拡張器とを含み、スーパーハイバンド励振信号はスペクトル的に拡張された信号に基づく。
図1は、概略構成によるスーパーワイドバンドエンコーダSWE100のブロック図を示す。
図2は、スーパーワイドバンドエンコーダSWE100の実装形態SWE110のブロック図を示す。
図3は、概略構成によるスーパーワイドバンドデコーダSWD100のブロック図である。
図4は、スーパーワイドバンドデコーダSWD100の実装形態SWD110のブロック図である。
図5Aは、フィルタバンクFB100の実装形態FB110のブロック図を示す。
図5Bは、フィルタバンクFB200の実装形態FB210のブロック図を示す。
図6Aは、フィルタバンクFB110の実装形態FB112のブロック図を示す。
図6Bは、フィルタバンクFB210の実装形態FB212のブロック図を示す。
図7Aは、実装形態例における狭帯域信号SIL10と、ハイバンド信号SIH10と、スーパーハイバンド信号SIS10との相対帯域幅を示す。
図7Bは、実装形態例における狭帯域信号SIL10と、ハイバンド信号SIH10と、スーパーハイバンド信号SIS10との相対帯域幅を示す。
図7Cは、実装形態例における狭帯域信号SIL10と、ハイバンド信号SIH10と、スーパーハイバンド信号SIS10との相対帯域幅を示す。
図8Aは、デシメータDS10の実装形態DS12のブロック図を示す。
図8Bは、補間器IS10の実装形態IS12のブロック図を示す。
図8Cは、フィルタバンクFB112の実装形態FB120のブロック図を示す。
図9は、AないしFとして、経路PAS20の適用例において処理されている信号のスペクトルの段階的例を示す。
図10は、フィルタバンクFB212の実装形態FB220のブロック図を示す。
図11は、AないしFとして、経路PSS20の適用例において処理されている信号のスペクトルの段階的例を示す。
図12Aは、音声信号の対数振幅対周波数のプロットの一例を示す。
図12Bは、基本線形予測コーディングシステムのブロック図を示す。
図13は、狭帯域エンコーダEN100の実装形態EN110のブロック図を示す。
図14は、量子化器QLN10の実装形態QLN20のブロック図を示す。
図15は、量子化器QLN10の実装形態QLN30のブロック図を示す。
図16は、狭帯域デコーダDN100の実装形態DN110のブロック図を示す。
図17Aは、有声音声のための残差信号についての対数振幅対周波数のプロットの一例を示す。
図17Bは、有声音声のための残差信号についての対数振幅対時間のプロットの一例を示す。
図17Cは、長期予測をも実行する基本線形予測コーディングシステムのブロック図を示す。
図18は、ハイバンドエンコーダEH100の実装形態EH110のブロック図を示す。
図19は、スーパーハイバンドエンコーダES100の実装形態ES110のブロック図を示す。
図20は、ハイバンドデコーダDH100の実装形態DH110のブロック図を示す。
図21は、スーパーハイバンドデコーダDS100の実装形態DS110のブロック図を示す。
図22Aは、スーパーハイバンド励振発生器XGS10の実装形態XGS20のブロック図を示す。
図22Bは、スーパーハイバンド励振発生器XGS20の実装形態XGS30のブロック図を示す。
図23Aは、5つのサブフレームへのフレームの分割例を示す。
図23Bは、10個のサブフレームへのフレームの分割例を示す。
図23Cは、サブフレーム利得計算のためのウィンドウイング(窓)関数の一例を示す。
図24Aは、概略構成による方法M100のフローチャートを示す。
図24Bは、概略構成による装置MF100のブロック図を示す。
詳細な説明
従来の狭帯域(NB)音声コーデックは、一般に、300から3400Hzまでの周波数範囲を有する信号を再生する。広帯域音声コーデックは、このカバレージを、50〜7000Hzに拡張する。この中に記載されるSWB音声コーデックは、50Hzから14kHzまでのように、はるかに広い周波数範囲を再生するために使用され得る。拡張された帯域幅は、より大きい臨場感とともにより自然なサウンディング感覚を受話者に提供することができる。
提案のスペクトル的に効率的なSWB音声コーデックは、処理された音声が、従来の音声コーデックが提供することができるものよりもはるかに広い帯域幅を含むような、新しい音声符号化(エンコーディング)および復号化(デコーディング)技法を提供する。概して狭帯域(0〜3.5kHz)または広帯域(0〜7kHz)のいずれかである他の既存の音声コーデックと比較して、上記SWB音声コーデックは、はるかに現実感があり、よりクリアな感覚をモバイルエンドユーザに与える。
その文脈によって明示的に限定されない限り、「信号」という用語は、この中では、ワイヤ、バス、または他の伝送媒体上に表されるような記憶位置(または記憶位置の組)の状態を含む、その通常の意味のいずれをも示すために使用される。その文脈によって明示的に限定されない限り、「生成する(generating)」という用語は、この中では、計算(computing)またはその他の生みだすこと(producing)など、その通常の意味のいずれをも示すのに使用される。その文脈によって明示的に限定されない限り、「計算する(calculating)」という用語は、この中では、複数の値から計算すること(computing)、評価すること(evaluating)、推定すること(estimating)、および/または選択すること(selecting)など、その通常の意味のいずれをも示すのに使用される。その文脈によって明示的に限定されない限り、「取得する(obtaining)」という用語は、計算すること(calculating)、導出すること(deriving)、(たとえば、外部デバイスから)受信すること(receiving)、および/または(たとえば、記憶要素のアレイから)取り出すこと(retrieving)など、その通常の意味のいずれをも示すのに使用される。その文脈によって明確に限定されない限り、「選択する(selecting)」という用語は、2つ以上のセットのうちの少なくとも1つや全てよりも少数を識別すること(identifying)、示すこと(indicating)、適用すること(applying)、および/または使用すること(using)など、その通常の意味のいずれをも示すのに使用される。「備える(comprising)」という用語は、この中および特許請求の範囲において使用される場合、他の要素または動作を除外するものではない。「に基づく」(「AはBに基づく」などのような)という用語は、(i)「から導出される」(たとえば、「BはAのプリカーサ(前兆となるもの)である」)、(ii)「少なくとも〜に基づく」(たとえば、「Aは少なくともBに基づく」)、および、特定の文脈で適当な場合に、(iii)「に等しい」(たとえば、「AはBに等しい」または「AはBと同じである」)、という場合を含む、その通常の意味のいずれをも示すのに使用される。同様に、「に応答して」という用語は、「少なくとも〜に応答して」を含む、その通常の意味のいずれをも示すのに使用される。
別段に規定されていない限り、「一連(series)」という用語は、2つ以上のアイテムの流れ(シーケンス)を示すのに使用される。「対数」という用語は、10を底とする対数を示すのに使用されるが、他の底へのそのような演算の拡張も本開示の範囲内である。「周波数成分」という用語は、(たとえば、高速フーリエ変換によって生成されるような)信号の周波数領域表現のサンプル(sample)(または「ビン(bin)」)、あるいは信号のサブバンド(たとえば、バーク尺度またはメル尺度のサブバンド)など、信号の周波数の組または周波数帯域のうちの1つを示すのに使用される。
他に示されない限り、特定の特徴を有する装置の動作のいかなる開示も、類似の特徴を有する方法を開示する(その逆も同様)ことをも明示的に意図され、特定の構成による装置の動作のいかなる開示も、類似の構成による方法を開示する(その逆も同様)ことを明示的に意図される。「構成」という用語は、その特定の文脈によって示されるように、方法、装置、および/またはシステムに関して使用され得る。「方法」、「プロセス」、「プロシージャ」、および「技法」という用語は、特定の文脈によって他に示されていない限り、一般的、および互換的に使用される。「装置」および「デバイス」という用語も、特定の文脈によって他に示されていない限り、一般的、および互換的に使用される。「要素」および「モジュール」という用語は、一般に、より大きい構成の一部を示すのに使用される。その文脈によって明示的に限定されない限り、「システム」という用語は、この中では、「共通の目的に寄与するために協働する要素のグループ」を含む、その通常の意味のいずれをも示すのに使用される。文書の一部分の参照によるいかなる組込みも、その部分内で言及された用語または可変要素(variables)の定義が、該定義が現れ、該文書中の他の場所において、ならびに組み込まれた部分で参照される図において現れる場合、そのような定義をも組み込んでいることを理解されたい。
「コーダ(coder)」、「コーデック(codec)」、および「コーディングシステム(coding system)」という用語は、音響信号のフレームを受けて、符号化(エンコード)する(場合によっては知覚面での重み付け、および/または他のフィルタ処理動作などの1つまたは複数の前処理演算の後)ように構成された少なくとも1つのエンコーダと、該フレームの復号(デコードされた)表現を生成するように構成された対応された対応するデコーダとを含むシステムを示すために互換的に使用される。そのようなエンコーダおよびデコーダは、一般に、通信リンクの両端の端末に配備される。全二重通信をサポートするために、エンコーダとデコーダの両方のインスタンスは、一般に、そのようなリンクの各端に配備される。
特定の文脈によって他に規定されていない限り、「狭帯域」という用語は、6kHzよりも小さい帯域幅(たとえば、0、50、または300Hzから、2000、2500、3000、3400、3500、または4000Hzまで)を有する信号を指し、「広帯域」という用語は、6kHzから10kHzまでの範囲の帯域幅(たとえば、0、50、または300Hzから、7000または8000Hzまで)を有する信号を指し、また、「スーパーワイドバンド(超広帯域)」という用語は、10kHzよりも大きい帯域幅(たとえば、0、50、または300Hzから、12、14、または16kHzまで)を有する信号を指す。概して、「ローバンド(低い帯域)」、「ハイバンド(高い帯域)」、および「スーパーハイバンド(超高い帯域)」という用語は、ローバンド信号の周波数範囲が対応するハイバンド信号の周波数範囲より下に伸び、また、ハイバンド信号の周波数範囲がローバンド信号の周波数範囲より上に伸びるように、および、ハイバンド信号の周波数範囲が、対応するスーパーハイバンド信号の周波数範囲より下に伸び、また、スーパーハイバンド信号の周波数範囲が、ハイバンド信号の周波数範囲より上に伸びるように、相対的な意味で使用される。
G.719およびG.722.1Cなど、超広帯域幅をサポートする数個の会話コーデックがITU−T(International Telecommunications Union、Geneva、CH−Telecommunications Standardization Sector)において規格化されている。Speex(www−dot−speex−dot−orgでオンライン入手可能)は、GNUプロジェクト(www−dot−gnu−dot−org)の一部として利用可能になった他のSWBコーデックである。しかしながら、そのようなコーデックは、セルラー通信ネットワークなどの制約付き適用例において使用するには不適当であり得る。そのようなネットワークにおいて妥当な通信品質をエンドユーザに与えるためにそのようなコーデックを使用することは、一般に、容認できないほど高いビットレートを必要とすることになり、一方、G.722.1Cなど、変換ベースの音声コーデックは、より低いビットレートにおいて不満足な音声品質を与え得る。
一般的な音響信号の符号化および復号のための方法は、ストリーミングの音響コンテンツとともに使用するために意図された、コーデックのAAC(Advanced Audio Coding)ファミリー(たとえば、European Telecommunications Standards Institute TS 102005、International Organization for Standardization(ISO)/International Electrotechnical Commission(IEC) 14496−3:2009)など、変換ベースの方法を含む。そのようなコーデックは、そのコーデックが容量に影響されやすいワイヤレスネットワーク上で会話音声のための音声信号に直接適用されるときに問題になり得るいくつかの特徴(たとえば、より長い遅延およびより高いビットレート)を有する。3rd Generation Partnership Project(3GPP)規格Enhanced Adaptive Multi−Rate−Wideband(AMR−WB+)は、低い(たとえば、10.4kbit/sと同じくらい低い)レートで高品質SWB音声を符号化することが概して可能である、ストリーミング音響コンテンツとともに使用することを意図された他のコーデックであるが、高いアルゴリズム遅延により会話使用に不適当であり得る。
既存の広帯域音声コーデックは、Third Generation Partnership Project 2(3GPP2、Arlington、VA)規格のEnhanced Variable Rate Codec−Wideband(EVRC−WB)コーデック(www−dot−3gpp2−dot−orgでオンライン入手可能)およびG.729.1コーデックなど、モデルベースのサブバンド方法を含む。そのようなコーデックは、高周波数サブバンドにおける信号成分を再構成するために低周波数サブバンドからの情報を使用する、2バンドモデルを実装し得る。EVRC−WBコーデックは、たとえば、ハイバンド励振をシミュレートするために、信号のローバンド部分(50〜4000Hz)について励振のスペクトル伸長を使用する。
EVRC−WBでは、音声信号のハイバンド部分(4〜7kHz)は、スペクトル的に効率的な帯域幅伸長モデルを使用して再構成される。LP分析は、スペクトルエンベロープ情報を取得するために、HB信号上でさらに実行される。しかしながら、有声HB励振信号は、もはや、HB LPC分析の実際の残差ではない。代わりに、NB部分の励振信号が、有声音声のHB励振を発生するための非線形モデルを介して処理される。
そのような手法は、より広い帯域幅を有するハイバンド励振を発生するために使用され得る。適切なエンベロープおよびエネルギーレベルをもってより広い励振を変調した後に、SWB音声信号は再構成され得る。SWB音声コーディングのためにより広い周波数範囲を含むようにそのような手法を拡張することは、軽微な問題ではなく、とはいえ、この種類のモデルベースの方法が所望の品質および妥当な遅延をもってSWB音声信号のコーディングを効率的に扱うことができるかどうかは明らかでない。SWB音声コーディングへのそのような手法は、いくつかのネットワーク上の会話適用例に好適であり得るが、提案する方法は品質の利点を提供し得る。
提案するSWBコーデックは、SWB音声信号を合成するためのマルチバンド手法を導入することによって追加の帯域幅を適切におよび効率的に扱う。この中に記載された提案するSWB音声コーデックのために、マルチバンド技法が、コーデックが2倍さらにはそれ以上の帯域幅を再生することができるよう、帯域幅カバレージを効率的に拡張するために考案されている。SWB音声信号を合成するためにマルチバンドモデルベースの方法を使用する、提案される方法は、SWB音声信号の最も広い周波数成分を復元するために、高いスペクトル効率でスーパーハイバンド(SHB)部分を表す。それのモデルベースの特性から、この方法は、変換ベースの方法に関連するより高い遅延を回避する。追加のSHB信号を用いると、出力音声は、より自然となり、より大きい臨場感を与え、したがって、はるかに良い会話感覚をエンドユーザに提供する。また、マルチバンド技法は、2バンド手法において利用可能でないことがある、WBからSWBへの組込みスケーラビリティを可能にする。
一般的な例では、提案されたコーデックは、入力音声信号がローバンド(LB)、ハイバンド(HB)およびスーパーハイバンド(SHB)という3つの帯域に分割される、3バンド・スプリットバンド手法(three-band split-band approach)を使用して実装される。人間の音声におけるエネルギーは、周波数が増加するにつれてロールオフし、人間の聴覚は、周波数が狭帯域音声を上回って増加するにつれて敏感でなくなるので、よりアグレッシブなモデリングが、知覚的に満足のいく結果をもって、より高い周波数帯域のために使用され得る。
提案されたコーデックにおいて、実際のSHB励振信号を使用する代わりに、SHB励振信号は、EVRC−WBのハイバンド励振拡張と同様のLB励振の非線形拡張を使用してモデル化される。非線形拡張は、実際の励振を計算および符号化することよりも計算量的に複雑さが少ないので、より少ない電力およびより少ない遅延が、エンコーダとデコーダの両方におけるプロセスのこの部分に伴われる。
提案する方法は、SHB励振信号と、SHBスペクトルエンベロープと、SHB時間利得パラメータとを使用して、SHB成分を再構成する。SHBのためのスペクトルエンベロープ情報は、元のSHB信号に基づいて線形予測符号化(linear prediction coding: LPC)係数を計算することによって取得され得る。SHB時間利得パラメータ(SHB temporal gain parameters)は、元のSHB信号のエネルギーと推定されたSHB信号のエネルギーとを比較することによって推定され得る。フレームごとの時間利得のLPC次数と数との適切な選択は、この方法を使用して達成される品質には重要であり得、また、再生音声品質と、SHBエンベロープおよび時間利得パラメータを表すのに必要とされるビット数との間の適切なバランスを達成することが望ましいことがある。
提案されるSWBコーデックは、EVRC−WBにおける音声信号のHB部分のコーディングと同様の手法を使用して音声信号のSHB部分(7〜14kHz)をコーディングするように構成された拡張を含むように実装され得る。図10に示された1つのそのような例では、非線形関数が、SHB励振信号XS10を生成するためにLB(50〜4000Hz)のLPC残差を7〜14kHzのSHBまでずっとブラインドで拡張するために使用される。SHBのスペクトルエンベロープは、(たとえば、8次LPC分析によって取得される)LPCフィルタパラメータCPS10aによって表され、また、SHB信号の時間エンベロープは、元と合成されたSHB信号の利得エンベロープ(たとえば、エネルギー)間の差を表す10サブフレーム利得および1フレーム利得によってもたらされる。
図1は、(スペクトルおよび時間エンベロープパラメータの量子化を実行するようにも構成され得る)そのようなSHBエンコーダを含むSWBエンコーダSWE100のハイレベルブロック図を示す。(スペクトルおよび時間エンベロープパラメータの逆量子化を実行するようにも構成され得る)対応するSWBとSHBとのデコーダは、それぞれ図3および図21に示される。
提案される方法は、サービスオプション68(SO68)として3GPP2によって規格化された(およびwww−dot−3gpp2−dot−orgでオンライン入手可能な)EVRC−B狭帯域音声コーデックにおいて使用されるのと同じ技術を使用して、SWB信号のローバンド(LB)(たとえば、50〜4000Hz)を符号化するように実装され得る。アクティブ有声音声の場合、EVRC−Bは、ローバンドを符号化するために符号励振線形予測(CELP:code-excited linear prediction)ベースの圧縮技法を使用する。この技法の背景にある基本概念は、準周期的励振(ソース)の線形フィルタ処理の結果として音声を表す、音声生成のソースフィルタモデルである。フィルタは、元の入力音声のスペクトルエンベロープを整形する。入力信号のスペクトルエンベロープは、前のサンプルの線形結合として各サンプルを記述するLPC係数を使用して近似され得る。励振は、LPC分析の残差に最も良く一致するように選択される適応および固定コードブックエントリを使用してモデル化される。極めて高い品質が可能であるが、品質は、約8kbpsを下回るビットレートの場合、悪くなり得る。アクティブ無声音声の場合、EVRC−Bは、ローバンドを符号化するために、雑音励振線形予測(noise-excited linear prediction:NELP)ベースの圧縮技法を使用する。
理論上、SHBモデルは、任意のLBおよびHBコーディング技法とともに適用され得る。LB信号は、励振信号の分析および合成と、信号のスペクトルエンベロープの整形とを行う任意の従来のボコーダによって処理され得る。HB部分は、HB周波数成分を再生することができる任意のコーデックによって符号化および復号され得る。モデルベースの手法(たとえば、CELP)を使用することはHBには必要でないことが、明示的に注記される。たとえば、HBは、変換ベースの技法を使用して符号化され得る。しかしながら、HBを符号化するためにモデルベースの手法を使用することは、概して、より低いビットレートの要求を伴い、より少ないコーディング遅延を生じる。
提案する方法は、また、サービスオプション70(SO70)として3GPP2によって規格化された(およびwww−dot−3gpp2−dot−orgでオンライン入手可能な)EVRC−WBコーデックのハイバンドと同じモデリング手法を使用して、SWBコーデックの信号のハイバンド(HB)部分(4〜7kHz)を符号化するように実装され得る。この場合、HBは、非線形関数+スペクトルエンベロープの低レート符号化、(たとえば、図23Aに示す)5サブフレーム利得、および1フレーム利得による、LB線形予測残差のブラインド拡張である。
大部分のビットが最低周波数帯域の高品質符号化に割り振られるように、提案されるコーデックを実装することが望まれ得る。たとえば、EVRC−WBは、20ミリ秒フレームあたり合計171ビットの割り振りの場合、LBを符号化するために155ビット、およびHBを符号化するために16ビットを割り振る。提案されるSWBコーデックは、20ミリ秒フレームあたり合計190ビットの割り振りの場合、SHBを符号化するために、追加の19ビットを割り振る。結果的に、提案されるSWBコーデックは、12パーセントより少ないビットレートの増加を伴って、WBの帯域幅を2倍にする。提案されるSWBコーデックの代替実装形態は、(20ミリ秒フレームあたり合計195ビットの割り振りの場合)SHBを符号化するために追加の24ビットを割り振る。提案されるSWBコーデックの他の代替実装形態は、(20ミリ秒フレームあたり合計209ビットの割り振りの場合)SHBを符号化するために追加の38ビットを割り振る。
提案されるエンコーダの1つのバージョンは、SHB信号の再構成のために、LSFパラメータ、サブフレーム利得、およびフレーム利得という、ハイバンドパラメータの3つの組をデコーダに送信する。各フレームについてのLSFパラメータおよびサブフレーム利得は複数次元であり、一方、フレーム利得はスカラーである。複数次元のパラメータの量子化の場合、ベクトル量子化(VQ)を使用することによって必要とされるビット数を最小限に抑えることが望まれ得る。ハイバンドLSFパラメータとサブフレーム利得とのベクトル次元は通常高いので、スプリットVQ(split-VQ)が使用され得る。ある量子化品質を達成するために、VQコードブックは大きくてもよい。単一ベクトルVQが選ばれる場合には、メモリの要求を低減し、コードブック検索の複雑性を低下させるために、複数段のVQが採用され得る。
図1は、概略構成によるスーパーワイドバンドエンコーダSWE100のブロック図を示す。フィルタバンクFB100は、狭帯域信号SIL10と、ハイバンド信号SIH10と、スーパーハイバンド信号SIS30とを生成するために、スーパーワイドバンド信号SISW10をフィルタ処理するように構成される。狭帯域エンコーダEN100は、狭帯域(NB)フィルタパラメータFPN10と、符号化されたNB励振信号XL10とを生成するために、狭帯域信号SIL10を符号化するように構成される。この中でさらに詳細に説明されるように、狭帯域エンコーダEN100は、一般に、コードブックインデックスとして、または他の量子化形態で、狭帯域フィルタパラメータFPN10と、符号化された狭帯域励振信号XL10とを生成するように構成される。ハイバンドエンコーダEH100は、ハイバンドコーディングパラメータCPH10を生成するために、符号化された狭帯域励振信号XL10からの情報XL10aに従ってハイバンド信号SIH10を符号化するように構成される。この中でさらに詳細に説明されるように、ハイバンドエンコーダEH100は、一般に、コードブックインデックスとして、または他の量子化形態で、ハイバンドコーディングパラメータCPH10を生成するように構成される。スーパーハイバンドエンコーダES100は、スーパーハイバンドコーディングパラメータCPS10を生成するために、符号化された狭帯域励振信号XL10からの情報XL10bに従ってスーパーハイバンド信号SIS10を符号化するように構成される。この中でさらに詳細に説明されるように、スーパーハイバンドエンコーダES100は、一般に、コードブックインデックスとして、または他の量子化形態で、スーパーハイバンドコーディングパラメータCPS10を生成するように構成される。
スーパーワイドバンドエンコーダSWE100の1つの特定の例は、約9.75kbps(キロビット/秒)のレートでスーパーワイドバンド信号SISW10を符号化するように構成され、約7.75kbpsが狭帯域フィルタパラメータFPN10および符号化された狭帯域励振信号XL10のために使用され、約0.8kbpsがハイバンドコーディングパラメータCPH10のために使用され、約0.95kbpsがスーパーハイバンドコーディングパラメータCPS10のために使用される。スーパーワイドバンドエンコーダSWE100の他の特定の例は、約9.75kbpsのレートでスーパーワイドバンド信号SISW10を符号化するように構成され、約7.75kbpsが狭帯域フィルタパラメータFPN10および符号化された狭帯域励振信号XL10のために使用され、約0.8kbpsがハイバンドコーディングパラメータCPH10のために使用され、約1.2kbpsがスーパーハイバンドコーディングパラメータCPS10のために使用される。スーパーワイドバンドエンコーダSWE100の他の特定の例は、約10.45kbpsのレートでスーパーワイドバンド信号SISW10を符号化するように構成され、約7.75kbpsが狭帯域フィルタパラメータFPN10および符号化された狭帯域励振信号XL10のために使用され、約0.8kbpsがハイバンドコーディングパラメータCPH10のために使用され、約1.9kbpsがスーパーハイバンドコーディングパラメータCPS10のために使用される。
符号化された狭帯域信号、ハイバンド信号、およびスーパーハイバンド信号を単一のビットストリームに組み合わせることが望まれ得る。たとえば、符号化されたスーパーワイドバンド信号として、(たとえば、有線、光、または無線送信チャネル上での)送信のために、または記憶のために、符号化された信号を共にマルチプレクスすることが望まれ得る。図2は、狭帯域フィルタパラメータFPN10と、符号化された狭帯域励振信号XL10と、ハイバンドコーディングパラメータCPH10と、スーパーハイバンドコーディングパラメータCPS10とを、マルチプレクスされた信号SM10に組み合わせるように構成されたマルチプレクサMPX100(たとえば、ビットパッカー)を含むスーパーワイドバンドエンコーダSWE100の実装形態SWE110のブロック図を示す。
また、エンコーダSWE110を含む装置は、マルチプレクスされた信号SM10を、有線、光、または無線チャネルなどの送信チャネルの中に送信するように構成された回路を含み得る。そのような装置は、また、誤り訂正符号化(たとえば、レート互換畳み込み符号化(rate-compatible convolutional encoding))および/または誤り検出符号化(たとえば、サイクリック冗長性符号化(cyclic redundancy encoding))、および/またはネットワークプロトコルの1つまたは複数のレイヤの符号化(たとえば、イーサネット(登録商標)、TCP/IP、cdma2000)などの、信号上で1つまたは複数のチャネル符号化動作を実行するように構成され得る。
マルチプレクサMPX100は、符号化された狭帯域信号が、ハイバンド信号、スーパーハイバンド信号、および/またはローバンド信号など、マルチプレクスされた信号SM10の他の部分とは独立に復元され、復号され得るように、マルチプレクスされた信号SM10の分離可能なサブストリームとして、(狭帯域フィルタパラメータFPN10および符号化された狭帯域励振信号XL10を含む)符号化された狭帯域信号を埋め込むように構成されることが望ましくあり得る。たとえば、マルチプレクスされた信号SM10は、符号化された狭帯域信号が、ハイバンドコーディングパラメータCPH10およびスーパーハイバンドコーディングパラメータCPS10を取り去ることによって復元され得るように、アレンジされ得る。そのような特徴の1つの潜在的な利点は、狭帯域信号の復号をサポートするが、ハイバンドまたはスーパーハイバンド部分の復号をサポートしないシステムに、符号化されたスーパーワイドバンド信号を渡す前に、それをトランスコーディング(transcoding)する必要を回避することである。
代替または追加として、マルチプレクサMPX100は、符号化された狭帯域信号が、スーパーハイバンドおよび/またはローバンド信号などのマルチプレクスされた信号SM10の他の部分とは独立に復元され、復号され得るように、マルチプレクスされた信号SM10の分離可能なサブストリームとして、(狭帯域フィルタパラメータFPN10、符号化された狭帯域励振信号XL10、およびハイバンドコーディングパラメータCPH10を含む)符号化された広帯域信号を埋め込むように構成されることが望ましくあり得る。たとえば、マルチプレクスされた信号SM10は、符号化された広帯域信号が、スーパーハイバンドコーディングパラメータCPS10を取り去ることによって復元され得るように、アレンジされ得る。そのような特徴の1つの潜在的な利点は、広帯域信号の復号はサポートするが、スーパーハイバンド部分の復号はサポートしないシステムに符号化されたスーパーワイドバンド信号を渡す前に、それをトランスコーディングする必要を回避することである。
図3は、概略構成によるスーパーワイドバンドデコーダSWD100のブロック図である。狭帯域デコーダDN100は、復号された狭帯域信号SDL10を生成するために、狭帯域フィルタパラメータFPN10と、符号化された狭帯域励振信号XL10とを復号するように構成される。ハイバンドデコーダDH100は、ハイバンドコーディングパラメータCPH10と符号化された励振信号XL10からの情報XL10aとに基づいて、復号されたハイバンド信号SDH10を生成するように構成される。スーパーハイバンドデコーダDS100は、スーパーハイバンドコーディングパラメータCPS10と符号化された励振信号XL10からの情報XL10bとに基づいて、復号されたスーパーハイバンド信号SDS10を生成するように構成される。フィルタバンクFB200は、スーパーワイドバンド出力信号SOSW10を生成するために、復号された狭帯域信号SDL10と、復号されたハイバンド信号SDH10と、復号されたスーパーハイバンド信号SDS10とを組み合わせるように構成される。
図4は、マルチプレクスされた信号SM10から、符号化された信号FPN40、XL10、CPH10、およびCPS10を生成するように構成されたデマルチプレクサDMX100(たとえば、ビットアンパッカー)を含むスーパーワイドバンドデコーダSWD100の実装形態SWD110のブロック図である。デコーダSWD110を含む装置は、マルチプレクスされた信号SM10を、有線、光、または無線チャネルなどの送信チャネルから受信するように構成された回路を含み得る。そのような装置は、また、誤り訂正復号(たとえば、レート互換畳み込み復号)および/または誤り検出復号(たとえば、サイクリック冗長性復号)、および/またはネットワークプロトコルの1つまたは複数のレイヤの復号(たとえば、イーサネット、TCP/IP、cdma2000)など、1つまたは複数のチャネル復号動作を信号に対して実行するように構成され得る。
フィルタバンクFB100は、入力信号の対応するサブバンドの周波数成分を各々が含んでいる複数の帯域制限されたサブバンド信号を生成するために、スプリットバンド方式に従って入力信号をフィルタ処理するように構成される。特定の適用例の設計基準に応じて、出力サブバンド信号は、等しいまたは等しくない帯域幅を有し、重複するかまたは重複しなくてもよい。また、3つのサブバンド信号より多くを生成するフィルタバンクFB100の構成が可能である。たとえば、そのようなフィルタバンクは、狭帯域信号SIL10の周波数範囲の下の周波数範囲(0、20、または50Hzから、200、300、または500Hzまでの範囲など)内の成分を含む1つまたは複数のローバンド信号を生成するように構成され得る。そのようなフィルタバンクは、また、スーパーハイバンド信号SIH10の周波数範囲の上の周波数範囲(14〜20、16〜20、または16〜32kHzの範囲など)内の成分を含む1つまたは複数のウルトラハイバンド信号を生成するように構成されることが可能である。そのような場合、スーパーワイドバンドエンコーダSWE100は、この1つまたは複数の信号を別個に符号化するように実装され得、また、マルチプレクサMPX100は、追加の符号化された1つまたは複数の信号を(たとえば、分離可能な部分として)マルチプレクスされた信号SM10中に含めるように構成され得る。
フィルタバンクFB100は、低周波数サブバンドと、中間周波数サブバンドと、高周波数サブバンドとを有するスーパーワイドバンド信号SISW10を受信するようにアレンジされる。図5Aに、低減されたサンプリングレートを有する3つのサブバンド信号(狭帯域信号SIL10、ハイバンド信号SIH10、およびスーパーハイバンド信号SIS10)を生成するように構成されたフィルタバンクFB100の実装形態FB110のブロック図を示す。フィルタバンクFB110は、スーパーワイドバンド信号SISW10を受信することと、広帯域信号SIW10を生成することとを行うように構成された広帯域分析処理経路PAW10と、スーパーワイドバンド信号SISW10を受信することと、スーパーハイバンド信号SIS30を生成することとを行うように構成されたスーパーハイバンド分析処理経路PAS10とを含む。また、フィルタバンクFB110は、広帯域信号SIW10を受信することと、狭帯域信号SIL10を生成することとを行うように構成された狭帯域分析処理経路PAN10と、広帯域音声信号SIW10を受信することと、ハイバンド信号SIH10を生成することとを行うように構成されたハイバンド分析処理経路PAH10とを含む。狭帯域信号SIL10は、低周波数サブバンドの周波数成分を含んでおり、ハイバンド信号SIH10は、中間周波数サブバンドの周波数成分を含んでおり、広帯域信号SIW10は、低周波数サブバンドの周波数成分と中間周波数サブバンドの周波数成分とを含んでおり、また、スーパーハイバンド信号SIS10は、高周波数サブバンドの周波数成分を含む。
サブバンド信号はスーパーワイドバンド信号SISW10よりも狭い帯域幅を有するので、それらのサンプリングレートは(たとえば、情報の損失なしに計算の複雑性を低減するために)ある程度まで低減され得る。図6Aは、広帯域分析処理経路PAW10がデシメータ(信号を間引いて,サンプリングレートを下げるもの)DW10によって実装され、また、狭帯域分析処理経路PAN10がデシメータDN10によって実装される、フィルタバンクFB110の実装形態FB112のブロック図を示す。また、フィルタバンクFB112は、スペクトル反転モジュールRHA10とデシメータDH10とを有するハイバンド分析処理経路PAH10の実装形態PAH12と、スペクトル反転モジュールRSA10とデシメータDS10とを有するスーパーハイバンド分析処理経路PAS10の実装形態PAS12とを含む。
デシメータDW10、DN10、DH10、およびDS10の各々は、後ろにダウンサンプラが続く(たとえば、エイリアシング(ギザつき)を防ぐための)低域通過フィルタとして実装され得る。たとえば、図8Aは、入力信号を係数2でデシメートするように構成されたようなデシメータDS10の実装形態DS12のブロック図を示す。そのような場合、低域通過フィルタは、fs/(2kd)のカットオフ周波数を有する有限インパルス応答(FIR)または無限インパルス応答(IIR)フィルタとして実装され得、ここで、fsは入力信号のサンプリングレートであり、また、kdはデシメーション係数であり、また、ダウンサンプリングは、信号のサンプルを除くこと、および/またはサンプルを平均値に置き換えることによって実行され得る。
代替的に、デシメータDW10、DN10、DH10、およびDS10のうちの1つまたは複数(場合によってはすべて)は、低域通過フィルタ処理とダウンサンプリングとの演算を統合したフィルタとして実装され得る。デシメータの1つのそのような例は、偶数のn≧0についてのデシメートされるべき(信号を間引いて,サンプリングレートを下げるべき)入力信号S
in[n]のサンプルが、
によって与えられる伝達関数をもつ全域通過フィルタを通してフィルタ処理され、奇数のn≧0についての入力信号S
in[n]のサンプルが、
によって与えられる伝達関数をもつ全域通過フィルタを通してフィルタ処理されるような、3セクションポリフェーズ実装形態(three-section polyphase implementation)を使用して、2でのデシメーションを実行するように構成される。
これらの2つのポリフェーズ成分の出力は加算されて(たとえば、平均化されて)、デシメートされた出力信号S
out[n]が生じる。特定の例では、値
は、(0.06056541924291、0.42943401549235、0.80873048306552、0.22063024829630、0.63593943961708、0.94151583095682)に等しい。そのような実装形態は、論理および/またはコードの機能ブロックの再利用を可能にし得る。たとえば、この中に記載される2でのデシメート演算のいずれもこのようにして(および、場合によっては異なる時間に同じモジュールによって)実行され得ることが、明示的に注記される。特定の例では、デシメータDH10およびDS10は、この3セクションポリフェーズ実装形態を使用して実装される。
代わりに、または追加として、デシメータDW10、DN10、DH10、およびDS10のうちの1つまたは複数(場合によってはすべて)は、デシメートされるべき入力信号が、それぞれの13次FIRフィルタのそれぞれによってフィルタ処理される奇数の時間インデックス付きサブシーケンスと偶数の時間インデックス付きサブシーケンスとに分離されるような、ポリフェーズ実装形態を使用して、2でのデシメーションを実行するように構成される。言い換えれば、偶数のサンプルインデックスn≧0についてのデシメートされるべき入力信号S
in[n]のサンプルは、第1の13次FIRフィルタH
dec1(z)を通してフィルタ処理され、また、奇数のn≧0についての入力信号S
in[n]のサンプルは、第2の13次FIRフィルタH
dec2(z)を通してフィルタ処理される。これらの2つのポリフェーズ成分の出力は加算されて(たとえば、平均化されて)、デシメートされた出力信号S
out[n]を生じる。特定の例では、フィルタH
dec1(z)およびH
dec2(z)の係数は、以下の表に示されるような係数である。
そのような実装形態は、論理および/またはコードの機能ブロックの再利用を可能にし得る。たとえば、この中に記載される2でのデシメート演算のいずれもこのようにして(および、場合によっては異なる時間に同じモジュールによって)実行され得ることが明示的に注記される。特定の例では、デシメータDW10およびDN10は、このFIRポリフェーズ実装形態を使用して実装される。
ハイバンド分析処理経路PAH12では、スペクトル反転モジュールRHA10は、(たとえば、関数ejnπ、またはシーケンス(−1)n、その値が交互に+1か−1になる、をもって信号を乗算することによって)広帯域信号SIW10のスペクトルを反転させ、また、デシメータDH10は、ハイバンド信号SIH10を生成するために、所望のデシメーション係数に従ってスペクトルについて反転された信号のサンプリングレートを低減する。スーパーハイバンド処理経路PAS12では、スペクトル反転モジュールRSA10は、(たとえば、関数ejnπまたはシーケンス(−1)nをもって信号を乗算することによって)スーパーワイドバンド信号SISW10のスペクトルを反転させ、また、デシメータDS10は、スーパーハイバンド信号SIS10を生成するために、所望のデシメーション係数に従ってスペクトル反転信号のサンプリングレートを低減する。また、符号化のための3つより多くの通過帯域信号を生成するフィルタバンクFB112の構成も考えられる。
フィルタバンクFB200は、出力信号を生成するために、スプリットバンド方式に従って、低周波数成分を有する通過帯域信号と、中間周波数成分を有する通過帯域信号と、高周波数成分を有する通過帯域信号とをフィルタ処理するように構成され、その場合、帯域制限されたサブバンド信号の各々は、出力信号の対応するサブバンドの周波数成分を含む。特定の適用例の設計基準に応じて、出力サブバンド信号は、等しいまたは等しくない帯域幅を有し、重複するかまたは重複しなくてもよい。図5Bは、スーパーワイドバンド出力信号SOSW10を生成するために、低減されたサンプリングレートを有する3つの通過帯域信号(復号された狭帯域信号SDL10、復号されたハイバンド信号SDH10、および復号されたスーパーハイバンド信号SDS10)を受信することと、それらの通過帯域信号の周波数成分を組み合わせることとを行うように構成された、フィルタバンクFB200の実装形態FB210のブロック図を示す。
フィルタバンクFB210は、狭帯域信号SDL10(たとえば、狭帯域信号SIL10の復号されたバージョン)を受けることと、狭帯域出力信号SOL10を生成することとを行うように構成された狭帯域合成処理経路PSN10と、ハイバンド信号SDH10(たとえば、ハイバンド信号SIH10の復号されたバージョン)を受けることと、ハイバンド出力信号SOH10を生成することとを行うように構成されたハイバンド合成処理経路PSH10とを含む。フィルタバンクFB210は、通過帯域信号SOL10およびSOH10の和として、復号された広帯域信号SDW10(たとえば、広帯域信号SIW10の復号されたバージョン)を生成するように構成された加算器ADD10をも含む。また、加算器ADD10は、スーパーハイバンドデコーダSWD100によって受け取られおよび/または計算される1つまたは複数の重みに従って、2つの通過帯域信号SOL10およびSOH10の重み付け和として、復号された広帯域信号SDW10を生成するように実装され得る。1つのそのような例では、加算器ADD10は、式、SDW10[n]=SOL10[n]+0.9*SOH10[n]に従って、復号された広帯域信号SDW10を生成するように構成される。
また、フィルタバンクFB210は、復号された広帯域信号SDW10を受けることと、広帯域出力信号SOW10を生成することとを行うように構成された広帯域合成処理経路PSW10と、スーパーハイバンド信号SDS10(たとえば、スーパーハイバンド信号SIS10の復号されたバージョン)を受けることと、スーパーハイバンド出力信号SOS10を生成することとを行うように構成されたスーパーハイバンド合成処理経路PSS10とを含む。また、フィルタバンクFB210は、信号SOW10およびSOS10の和として、スーパーワイドバンド出力信号SOSW10(たとえば、スーパーワイドバンド信号SISW10の復号されたバージョン)を生成するように構成された加算器ADD20を含む。また、加算器ADD20は、スーパーハイバンドデコーダSWD100によって受けとられ、および/または計算された1つまたは複数の重みに従って、2つの通過帯域信号SOW10およびSOS10の重み付け和として、スーパーワイドバンド出力信号SOSW10を生成するように実装され得る。1つのそのような例では、フィルタバンクFB210は、式SOSW10[n]=SOW10[n]+0.9*SOS10[n]に従って、スーパーワイドバンド出力信号SOSW10を生成するように構成される。狭帯域信号SDL10およびSOL10は、信号SOSW10の低周波数サブバンドの周波数成分を含み、ハイバンド信号SDH10およびSOH10は、信号SOSW10の中間周波数サブバンドの周波数成分を含み、広帯域信号SDW10およびSOW10は、信号SOSW10の低周波数サブバンドの周波数成分と中間周波数サブバンドの周波数成分とを含み、また、スーパーハイバンド信号SDS10およびSOS10は、信号SOSW10の高周波数サブバンドの周波数成分を含む。
また、3つより多くのサブバンド信号を組み合わせるフィルタバンクFB210の構成が可能である。たとえば、そのようなフィルタバンクは、狭帯域信号SDL10の周波数範囲の下の周波数範囲(0、20、または50Hzから、200、300、または500Hzまでの範囲など)の中の成分を含む1つまたは複数のローバンド信号からの周波数成分を有する出力信号を生成するように構成され得る。そのようなフィルタバンクは、また、スーパーハイバンド信号SDH10の周波数範囲の上の周波数範囲(14〜20、16〜20、または16〜32kHzの範囲など)の中の成分を含む1つまたは複数のウルトラハイバンド信号からの周波数成分を有する出力信号を生成するように構成されることが可能である。そのような場合、スーパーワイドバンドデコーダSWD100は、この1つまたは複数の信号を別個に復号するように実装され得、また、デマルチプレクサDMX100は、追加の符号化された1つまたは複数の信号を(たとえば、分離可能な部分として)マルチプレクスされた信号SM10から抽出するように構成され得る。
サブバンド信号は、スーパーワイドバンド出力信号SOSW10よりも狭い帯域幅を有するので、それらのサンプリングレートは信号SOSW10のサンプリングレートよりも低くてもよい。図6Bは、狭帯域合成処理経路PSN10が補間器IN10によって実装され、また、広帯域合成処理経路PSW10が補間器IW10によって実装される、フィルタバンクFB210の実装形態FB212のブロック図を示す。また、フィルタバンクFB212は、補間器IH10とスペクトル反転モジュールRHD10とを有するハイバンド合成処理経路PSH10の実装形態PSH12と、補間器IS10とスペクトル反転モジュールRSD10とを有するスーパーハイバンド合成処理経路PSS10の実装形態PSS12とを含む。
補間器IW10、IN10、IH10、およびIS10の各々は、後ろに(たとえば、エイリアシングを防ぐための)低域通過フィルタが続くアップサンプラとして実装され得る。たとえば、図8Bは、入力信号を係数2で補間するように構成されるような補間器IS10の実装形態IS12のブロック図を示す。そのような場合、低域通過フィルタは、fs/(2kd)のカットオフ周波数を有する有限インパルス応答(FIR)または無限インパルス応答(IIR)フィルタとして実装され得、ここで、fsは入力信号のサンプリングレートであり、また、kdは補間係数であり、また、アップサンプリングは、ゼロスタッフィング(ゼロの詰め込み)することによって、および/またはサンプルを複製することによって実行され得る。
代替的に、補間器IW10、IN10、IH10、およびIS10のうちの1つまたは複数(場合によってはすべて)は、アップサンプリングと低域通過フィルタ処理との演算を統合したフィルタとして実装され得る。補間器の1つのそのような例は、偶数のn≧0についての補間信号S
out[n]のサンプルが、
によって与えられる伝達関数をもつ全域通過フィルタを通して入力信号S
in[n/2]をフィルタ処理することによって取得され、また、奇数のn≧0についての補間信号S
out[n]のサンプルが、
によって与えられる伝達関数をもつ全域通過フィルタを通して入力信号Sin[(n−1)/2]をフィルタ処理することによって取得されるような、3セクションポリフェーズ実装形態を使用して、2での補間を実行するように構成される。
は、(0.22063024829630、0.63593943961708、0.94151583095682)に等しく、また、値
は、(0.06056541924291、0.42943401549235、0.80873048306552)に等しい。そのような実装形態は、論理および/またはコードの機能ブロックの再利用を可能にし得る。たとえば、この中で記載される2での補間演算のいずれもこのようにして(および、場合によっては異なる時間に同じモジュールによって)実行され得ることが明示的に注記される。特定の例では、補間器IH10およびIS10は、この3セクションポリフェーズ実装形態を使用して実装される。
代替または追加として、補間器IW10、IN10、IH10、およびIS10のうちの1つまたは複数(場合によっては、すべて)は、補間されるべき入力信号が、補間された信号の奇数の時間インデックス付きサブシーケンスと偶数の時間インデックス付きサブシーケンスとを生成するために、2つの異なる15次FIRフィルタによってフィルタ処理されるような、ポリフェーズ実装形態を使用して、2による補間を実行するように構成される。言い換えれば、偶数のサンプルインデックスn≧0についての補間された信号S
out[n]のサンプルは、第1の15次FIRフィルタH
int1(z)を通して、補間されるべき入力信号S
in[n/2]をフィルタ処理することによって生成され、また、奇数のn≧0について、補間信号S
out[n]のサンプルは、第2の15次FIRフィルタH
int2(z)を通して入力信号サンプルS
in[(n−1)/2]をフィルタ処理することによって生成される。特定の例では、フィルタH
int1(z)およびH
int2(z)の係数は、以下の表に示すような係数である。
そのような実装形態は、論理および/またはコードの機能ブロックの再利用を可能にし得る。たとえば、この中で記載される2でのデシメート演算のいずれもこのようにして(および、場合によっては、異なる時間に同じモジュールによって)実行され得ることが、明示的に注記される。特定の例では、補間器IN10およびIW10は、このFIRポリフェーズ実装形態を使用して実装される。
ハイバンド合成処理経路PSH12では、補間器IH10は、所望の補間係数に従って、復号されたハイバンド信号SDH10のサンプリングレートを増加させ、また、スペクトル反転モジュールRHD10は、ハイバンド出力信号SOH10を生成するために、(たとえば、信号に関数ejnπまたはシーケンス(−1)nを乗算することによって)アップサンプリングされた信号のスペクトルを反転させる。そして、2つの通過帯域信号SOL10およびSOH10は、復号された広帯域信号SDW10が形成するために合計される。また、フィルタバンクFB212は、スーパーハイバンドデコーダSWD100によって受けとられ、および/または計算される1つまたは複数の重みに従って、2つの通過帯域信号SOL10およびSOH10の重み付け和として、復号された広帯域信号SDW10を生成するように実装され得る。1つのそのような例では、フィルタバンクFB212は、式、SDW10[n]=SOL10[n]+0.9*SOH10[n]に従って、復号された広帯域信号SDW10を生成するように構成される。
スーパーハイバンド合成処理経路PSS12では、補間器IS10は、所望の補間係数に従って、復号されたスーパーハイバンド信号SDS10のサンプリングレートを増加させ、また、スペクトル反転モジュールRSD10は、スーパーハイバンド出力信号SOS10を生成するために、(たとえば、関数ejnπまたはシーケンス(−1)nをもって信号を乗算することによって)アップサンプリングされた信号のスペクトルを反転させる。そして、2つの通過帯域信号SOW10およびSOS10は、スーパーワイドバンド出力信号SOSW10を形成するために、合計される。また、フィルタバンクFB212は、スーパーハイバンドデコーダSWD100によって受けとられ、および/または計算される1つまたは複数の重みに従って、2つの通過帯域信号SOW10およびSOS10の重み付け和として、スーパーワイドバンド出力信号SOSW10を生成するように実装され得る。1つのそのような例では、フィルタバンクFB212は、式、SOSW10[n]=SOW10[n]+0.9*SOS10[n]に従って、スーパーワイドバンド出力信号SOSW10を生成するように構成される。また、3つより多くの復号された通過帯域信号を組み合わせるフィルタバンクFB212の構成が考えられ得る。
典型的な例では、狭帯域信号SIL10は、300〜3400Hzの制限されたPSTN範囲を含む低周波数サブバンド(たとえば、0から4kHzまでの帯域)の周波数成分を含んでいるが、他の例では、低周波数サブバンドは、より狭くてもよい(たとえば、0、50、または300Hzから、2000、2500、または3000Hzまで)。図7A、図7B、および図7Cに、3つの異なる実装形態例における狭帯域信号SIL10と、ハイバンド信号SIH10と、スーパーハイバンド信号SIS10との相対の帯域幅を示す。これらの特定の例のすべてにおいて、スーパーワイドバンド信号SISW10は、32kHzのサンプリングレートを有し(0から16kHzまでの範囲内の周波数成分を表す)、また、狭帯域信号SIL10は、8kHzのサンプリングレートを有し(0から4kHzまでの範囲内の周波数成分を表す)、また、図7A〜図7Cの各々は、フィルタバンクによって生成された信号の各々の中に含まれる、スーパーワイドバンド信号SISW10の周波数成分の部分の一例を示す。
「周波数成分」という用語は、この中では、信号の特定の周波数に存在するエネルギーを指すために、または信号の特定の周波数帯域にわたるエネルギーの分配を指すために使用される。狭帯域信号SIL10は、低周波数サブバンドの周波数成分を含み、ハイバンド信号SIH10は、中間周波数サブバンドの周波数成分を含んでおり、広帯域信号SIW10は、低周波数サブバンドの周波数成分と中間周波数サブバンドの周波数成分とを含んでおり、また、スーパーハイバンド信号SIS10は、高周波数サブバンドの周波数成分を含んでいる。サブバンドの幅は、そのサブバンドの周波数成分を選択するフィルタバンク経路の周波数応答におけるマイナス20デシベルのポイント間の距離として定義される。同様に、2つのサブバンドの重複は、より高い周波数サブバンドの周波数成分を選択するフィルタバンク経路の周波数応答がマイナス20デシベルに落ちるポイントから、より低い周波数サブバンドの周波数成分を選択するフィルタバンク経路の周波数応答がマイナス20デシベルに落ちるポイントまでの距離として定義され得る。
図7Aの例では、3つのサブバンドの間で大きい重複がない。この例に示されるようなハイバンド信号SIH10は、4〜8kHzの通過帯域を有するハイバンド分析処理経路PAH10の一実装形態を使用して取得され得る。そのような場合、処理経路PAH10は、信号を係数2でデシメートすることによってサンプリングレートを8kHzに低減することが望まれ得る。信号上でのさらなる処理演算の計算上の複雑さを著しく低減することが期待され得る、そのような演算は、情報の損失なしに、4〜8kHzの中間周波数サブバンドの周波数成分を0〜4kHzの範囲に下げる。
同様に、この例に示されるスーパーハイバンド信号SIS10は、8〜16kHzの通過帯域を有するスーパーハイバンド分析処理経路PAS10の一実装形態を使用して取得され得る。そのような場合では、処理経路PAS10は、係数2で信号をデシメートすることによってサンプリングレートを16kHzに低減することが望まれ得る。信号上でのさらなる処理演算の計算の複雑さを著しく低減することが期待され得る、そのような演算は、情報の損失なしに、8〜16kHzの高周波数サブバンドの周波数成分を、0〜8kHzの範囲に下げる。
図7Bの代替例では、低周波数サブバンドと中間周波数サブバンドは、明らかな重複を有し、その結果、3.5から4kHzまでの領域が狭帯域信号SIL10とハイバンド信号SIH10の両方によって表されている。この例にあるようなハイバンド信号SIH10は、3.5〜7kHzの通過帯域を有するハイバンド分析処理経路PAH10の一実装形態を使用して取得され得る。そのような場合、処理経路PAH10は、係数16/7で信号をデシメートすることによって、サンプリングレートを7kHzに低減することが望まれ得る。信号状でのさらなる処理演算の計算の複雑さを著しく低減することが期待され得る、そのような演算は、情報の損失なしに、3.5〜7kHzの中間周波数サブバンドの周波数成分を0〜3.5kHzまでの範囲に下げる。ハイバンド分析処理経路PAH10の他の特定の例は、3.5〜7.5kHzおよび3.5〜8kHzの通過帯域を有する。
図7Bは、また、高周波数サブバンドが7から14kHzまでに伸びる一例を示している。この例にあるようなスーパーハイバンド信号SIS10は、7〜14kHzの通過帯域を有するスーパーハイバンド分析処理経路PAS10の一実装形態を使用して取得され得る。そのような場合、処理経路PAS10は、係数32/7で信号をデシメートすることによって、サンプリングレートを32kHzから7kHzまでに低減することが望まれ得る。信号状でのさらなる処理演算の計算の複雑さを著しく低減することが期待され得る、そのような演算は、情報の損失なしに、7〜14kHzの高周波数サブバンドの周波数成分を0から7kHzまでの範囲に下げる。
図8Cに、図7Bに示されるような適用例のために使用され得るフィルタバンクFB112の実装形態FB120のブロック図を示す。フィルタバンクFB120は、fS(たとえば、32kHz)のサンプリングレートを有するスーパーワイドバンド信号SISW10を受けるように構成される。フィルタバンクFB120は、fSW(たとえば、16kHz)のサンプリングレートを有する広帯域信号SIW10を取得するために、信号SISW10を係数2でデシメートするように構成されたデシメータDW10の実装形態DW20と、fSN(たとえば、8kHz)のサンプリングレートを有する狭帯域信号SIL10を取得するために、信号SIW10を係数2でデシメートするように構成されたデシメータDN10の実装形態DN20とを含む。
フィルタバンクFB120は、また、広帯域信号SIW10を非整数係数fSH/fSWでデシメートするように構成されたハイバンド分析処理経路PAH12の実装形態PAH20を含み、ここで、fSHはハイバンド信号SIH10のサンプリングレート(たとえば、7kHz)である。経路PAH20は、係数2で信号SIW10をfSW×2のサンプリングレート(たとえば、32kHzに)に補間するように構成された補間ブロックIAH10と、補間された信号をfSH×4のサンプリングレートに(たとえば、係数7/8で、28kHzに)リサンプリングするように構成されたリサンプリングブロックと、係数2でリサンプリングされた信号をfSH×2のサンプリングレート(たとえば、14kHzに)にデシメートするように構成されたデシメーションブロックDH30とを含む。デシメーションブロックDH30は、この中に記載されるような演算の例のいずれか(たとえば、この中で記載される3セクションポリフェーズの例)に従って実装され得る。経路PAH20は、また、経路PAH12の、モジュールRHA10とデシメータDH10とのそれぞれに関して、上記したように実装され得る、スペクトル反転ブロックとデシメータDH10の2でのデシメート実装形態DH20とを含む。
この特定の例では、経路PAH20は、また、所望の全体のフィルタ応答を取得するために、信号を整形するように構成された低域通過フィルタとして実装され得る、随意のスペクトル整形ブロックFAH10を含む。特定の例では、スペクトル整形ブロックFAH10は、伝達関数
を有する1次IIRフィルタとして実装される。
経路PAH20の補間ブロックIAH10は、この中に記載されるような演算の例のいずれか(たとえば、この中に記載される3セクションポリフェーズの例)に従って実装され得る。補間器の1つのそのような例は、
偶数のn≧0についての補間信号S
out[n]のサンプルが、
によって与えられる伝達関数をもつ全域通過フィルタを通して入力信号シーケンスS
in[n/2]をフィルタ処理することによって取得され、
また、奇数のn≧0についての補間信号のサンプルS
out[n]が、
によって与えられる伝達関数をもつ全域通過フィルタを通して入力信号シーケンスSin[(n−1)/2]をフィルタ処理することによって取得される、
ように、2セクションポリフェーズ実装形態を使用して、2による補間を実行するよう構成される。
は、(0.06262441299567、0.49326511845632、0.23754715248027、0.80890715711734)に等しい。
経路PAH20の7/8によるリサンプルブロックは、28kHzのサンプリングレートを有する出力信号S
outを生成するために、32kHzのサンプリングレートを有する入力信号S
inをリサンプリングするためのポリフェーズ補間を使用するように実装され得る。そのような補間は、たとえば、n=0,1,2,...,(320/8)−1、および、j=0,1,2,...,6について、
などの式に従って実装され得、上式で、h
32to28は7×10行列である。行列h
32to28の左半分に係る値を以下の表に示す。
この半分の行列は、行列h32to28の右半分の値を取得するために水平および垂直に反転される(すなわち、行rおよび列cにおける要素は、行(8−r)および列(11−c)における要素と同じ値をもつ)。
また、フィルタバンクFB120は、スーパーワイドバンド信号SISW10を非整数係数fS/fSSによりデシメートするように構成されたスーパーハイバンド分析処理経路PAS12の実装形態PAS20を含み、ここで、fSSはスーパーハイバンド信号SIS10のサンプリングレート(たとえば、14kHz)である。経路PAS20は、係数2で信号SISW10をfS×2のサンプリングレートに(たとえば、64kHzに)補間するように構成された補間ブロックIAS10と、補間された信号をfSS×4のサンプリングレートに(たとえば、係数7/8で、56kHzに)リサンプリングするように構成されたリサンプリングブロックと、リサンプリングされた信号を係数2でfSS×2のサンプリングレートに(たとえば、28kHzに)デシメートするように構成されたデシメーションブロックDS30とを含む。補間ブロックIAS10は、本この中に記載されるような演算の例のいずれか(たとえば、この中に記載される2セクションポリフェーズの例)に従って実装され得る。デシメーションブロックDS30は、この中に記載されるような演算の例のいずれか(たとえば、この中に記載される3セクションポリフェーズの例)に従って実装され得る。経路PAS20は、また、経路PAS12のモジュールRSA10とデシメータDS10とのそれぞれに関して上記したように実装され得る、スペクトル反転ブロックと、デシメータDS10の2によるデシメート実装形態DS20と、を含む。
14kHzのサンプリングレートと7〜14kHzの高周波数サブバンドの周波数成分とを有するスーパーハイバンド信号SIS10を、32kHzのサンプリングレートを有する入力スーパーワイドバンド信号SISW10から抽出するために、スーパーハイバンド分析処理経路PAS20を適用することが望まれ得る。図9のAないしFは、経路PAS20のそのような適用例において、図8CでAないしFの符号がつけられた対応するポイントの各々において、処理されている信号のスペクトルの段階的例を示す。図9のAないしFでは、影つき領域が7〜14kHzの高周波数サブバンドの周波数成分を示し、また、垂直軸が大きさを示す。図9のAは、32kHzスーパーワイドバンド信号SISW10の代表的なスペクトルを示す。図9のBは、信号SISW10を64kHzのサンプリングレートにアップサンプリングした後のスペクトルを示す。図9のCは、アップサンプリングされた信号を係数7/8により56kHzのサンプリングレートにリサンプリングした後のスペクトルを示す。図9のDは、リサンプリングされた信号を28kHzのサンプリングレートにデシメートした後のスペクトルを示す。図9のEは、デシメートされた信号のスペクトルを反転させた後のスペクトルを示す。図9のFは、14kHzのサンプリングレートを有するスーパーハイバンド信号SIS10を生成するためにスペクトル反転信号をデシメートした後のスペクトルを示す。
経路PAS20の補間ブロックIAS10およびデシメーションブロックDS30は、この中に記載されるような演算の例のいずれか(たとえば、この中に記載されるマルチセクションポリフェーズの例)に従って実装され得る。経路PAS20の7/8によるリサンプルブロックは、56kHzのサンプリングレートを有する出力信号S
outを生成するために、64kHzのサンプリングレートを有する入力信号S
inをリサンプリングするためのポリフェーズ実装形態を使用するように実装され得る。そのようなリサンプリングは、たとえば、n=0,1,2,...,(640/8)−1、および、j=0,1,2,...,6について、
などの式に従って実装され得、上式で、h
64to56は7×10行列である。行列h
64to56の特定の実装形態の左半分の値を以下の表に示す。
この半分の行列は、行列h64to56のこの特定の実装形態の右半分の値を取得するために水平および垂直に反転される(すなわち、行rおよび列cにおける要素は、行(8−r)および列(11−c)における要素と同じ値を有する)。
図7Cは、中間周波数サブバンドが3.5から7.5kHzまで伸び、その結果、3.5から4kHzまでの領域が、狭帯域信号SIL10とハイバンド信号SIH10の両方によって表されており、また、7から7.5kHzまでの領域が、ハイバンド信号SIH10とスーパーハイバンド信号SIS10の両方によって表されている、さらなる一例を示す。
いくつかの実装形態では、図7Bおよび図7Cの例におけるようにサブバンド間の重複を与えることにより、重複する領域上での滑らかなロールオフを有する処理経路の使用が可能になる。そのようなフィルタは、一般に、よりシャープな、または、「ブリックウォール」の応答を用いたフィルタよりも、設計しやすく、計算量的に複雑でなく、および/または、少ない遅延をもたらす。シャープな遷移の領域を有するフィルタは、滑らかなロールオフを有する同様の次数のフィルタよりも高いサイドローブ(これはエイリアシングを引き起こし得る)を有する傾向がある。シャープな遷移の領域を有するフィルタは、また、呼出し(ringing)アーティファクトを引き起こし得る長いインパルス応答を有し得る。1つまたは複数のIIRフィルタを有するフィルタバンク実装形態では、重複する領域上での滑らかなロールオフを許容することは、その極が単位円からより遠くに離れている1つまたは複数のフィルタの使用が可能になり得、これは、安定した固定点(fixed-point)の実装形態を確保するために重要であり得る。
サブバンドの重複は、サブバンドの滑らかなブレンディングを可能にし、これは、より少ない可聴アーティファクト、低減されたエイリアシング、および/またはあるサブバンドから他のサブバンドへのあまり顕著でない遷移を許容する。1つまたは複数のそのような特徴は、狭帯域エンコーダEN100と、ハイバンドエンコーダEH100と、スーパーハイバンドエンコーダES100とのうちの2つ以上が異なるコーディング方法に従って動作する実装形態にとって、特に望まれ得る。たとえば、異なるコーディング技法は、極めて異なって聞こえる信号を生成し得る。コードブックインデックスの形態でスペクトルエンベロープを符号化するコーダ(符号化器)は、代わりに、振幅スペクトルを符号化するコーダとは異なる音を有する信号を生成し得る。時間領域コーダ(たとえば、パルス符号変調、またはPCMコーダ)は、周波数領域コーダとは異なる音を有する信号を生成し得る。スペクトルエンベロープの表示と対応する残差信号とを用いて信号を符号化するコーダは、スペクトルエンベロープの表示のみを用いて信号を符号化するコーダ(たとえば、変換ベースのコーダ)とは異なる音を有する信号を生成し得る。信号の波形の表示として信号を符号化するコーダは、正弦波コーダからの音とは異なる音を有する出力を生成し得る。そのような場合、重複しないサブバンドを定義するためにシャープな遷移領域を有するフィルタを使用することは、合成されたスーパーワイドバンド信号中のサブバンド間の急激で知覚的に顕著な遷移につながり得る。
その上、エンコーダ(たとえば、波形コーダ)の符号化効率は、周波数の増加とともに下がり得る。符号化品質は、特に、背景雑音の存在下で、低ビットレートにおいて低下し得る。そのような場合、サブバンドの重複を与えることは、重複する領域における再生された周波数成分の品質を向上し得る。
より高い周波数サブバンドを生成する経路の周波数応答が−20dBに下がるポイントから、より低い周波数サブバンドを生成する経路の周波数応答が−20dBに落ちるポイントまでの距離として、2つのサブバンドの重複(たとえば、低周波数サブバンドと中間周波数サブバンドの重複、または中間周波数サブバンドと高周波数サブバンドの重複)を定義する。フィルタバンクFB100および/またはFB200の様々な例では、そのような重複は約200Hzから約1kHzまでの範囲をとる。約400から約600Hzまでの範囲は、コーディング効率と知覚的滑らかさとの間の望ましいトレードオフを表し得る。図7Bおよび図7Cに示される特定の例では、各重複は、約500Hzである。
処理経路PAH12およびPAS12におけるスペクトル反転演算の結果として、ハイバンド信号SIH10中の、およびスーパーハイバンド信号SIS10中の周波数成分のスペクトルが反転されることが注記される。エンコーダおよび対応するデコーダにおける後続の演算は、それに応じて構成され得る。たとえば、この中に記載されるようなハイバンド励振発生器GXH100は、スペクトルの反転形態をも有するハイバンド励振信号SXH10を生成するように構成され得る。
図10は、図7Bに示された適用例のために使用され得るフィルタバンクFB212の実装形態FB220のブロック図を示す。フィルタバンクFB220は、f
SN(たとえば、8kHz)のサンプリングレートを有する狭帯域信号SDL10を受けることと、f
SW(たとえば、16kHz)のサンプリングレートを有する狭帯域出力信号SOL10を生成するために2による補間を実行することと、のために構成された狭帯域合成処理経路PSN10の実装形態PSN20を含む。この例では、経路PSN20は、補間器IN10の実装形態IN20(たとえば、この中に記載されるFIRポリフェーズ実装形態)と、随意の整形フィルタFSL10(たとえば、1次極零フィルタ(first-order pole-zero filter))とを含む。特定の例では、整形フィルタFSL10は、伝達関数
を有する2次IIRフィルタとして実装される。
また、フィルタバンクFB220は、f
SH(たとえば、7kHz)のサンプリングレートを有するハイバンド信号SDH10を、非整数係数f
SW/f
SHにより補間するように構成されたハイバンド合成処理経路PSH12の実装形態PSH20をも含む。経路PSH20は、係数2により信号SDH10をf
SH×2のサンプリングレートに(たとえば、14kHzに)補間するように構成された補間器IH10の実装形態IH20と、経路PSH12のモジュールRHS10に関して上記したように実装され得るスペクトル反転ブロックと、係数2によりスペクトル反転信号をf
SH×4のサンプリングレートに(たとえば、28kHzに)補間するように構成された補間ブロックIH30と、補間された信号を(たとえば、係数4/7で)f
SWのサンプリングレートにリサンプリングするように構成されたリサンプリングブロックと、を含む。この特定の例では、経路PSH20は、また、所望の全体のフィルタ応答を取得するために信号を整形するように構成された低域通過フィルタとして、および/または7100Hzにおいて信号の成分を減衰させるように構成されたノッチフィルタとして実装され得る、随意のスペクトル整形フィルタFSW10をも含む。特定の例では、整形フィルタFSW10は、伝達関数
を有するノッチフィルタとして実装される。
経路PSH20の補間ブロックIH30は、この中に記載されるような演算の例のいずれか(たとえば、この中に記載される3セクションポリフェーズの例)に従って実装され得る。経路PSH20の4/7によるリサンプルブロックは、16kHzのサンプリングレートを有する出力信号S
outを生成するために、28kHzのサンプリングレートを有する入力信号S
inをリサンプリングするためのポリフェーズ実装形態を使用するように実装され得る。そのようなリサンプリングは、たとえば、n=0,1,2,...,およびj=0,1,2,3について、
などの式に従って実装され得、上式で、h
28to16は4×10行列である。行列h
28to16の特定の実装形態の左半分の値を以下の表に示す。
行列h
28to16のこの特定の実装形態の右半分の値を以下の表に示す。
フィルタバンクFB220は、また、fSW(たとえば、16kHz)のサンプリングレートを有する広帯域信号SDW10を受けることと、fS(たとえば、32kHz)のサンプリングレートを有する広帯域出力信号SOW10を生成するために2による補間を実行することと、のために構成された広帯域合成処理経路PSW12の実装形態PSW20を含む。この例では、経路PSW20は、補間器IW10の実装形態IW20(たとえば、この中に記載されるFIRポリフェーズ実装形態)と、随意の整形フィルタ(たとえば、2次極零フィルタ(second-order pole-zero filter))とを含む。
フィルタバンクFB220は、また、fSS(たとえば、14kHz)のサンプリングレートを有するスーパーハイバンド信号SDS10を非整数係数fS/fSSにより補間するように構成されたスーパーハイバンド合成処理経路PSS12の実装形態PSS20を含み、ここで、fSはスーパーワイドバンド信号SOSW10のサンプリングレート(たとえば、32kHz)である。フィルタバンクFB220は、係数2により信号SDS10をfSS×2のサンプリングレートに(たとえば、28kHzに)補間するように構成された補間器IS10の実装形態IS20と、経路PSS12のモジュールRHD10に関して上記したように実装され得るスペクトル反転ブロックと、係数2によりスペクトル反転信号をfSS×4のサンプリングレートに(たとえば、56kHzに)補間するように構成された補間ブロックIS30と、補間された信号を(たとえば、係数8/7で)fS×2のサンプリングレートにリサンプリングするように構成されたリサンプリングブロックと、係数2によりリサンプリングされた信号をfSのサンプリングレートに(たとえば、32kHzに)デシメートするように構成されたデシメーションブロックDSS10とを含む。この特定の例では、経路PSS20は、また、所望の全体のフィルタ応答を取得するために信号を整形するように構成されたフィルタ(たとえば、30次FIRフィルタ)として実装され得る、随意のスペクトル整形ブロックを含む。
32kHzのサンプリングレートと7〜14kHzの高周波数サブバンドの周波数成分とを有するスーパーハイバンド信号SOS10を、14kHzのサンプリングレートを有する入力復号スーパーハイバンド信号SDS10から生成するために、スーパーハイバンド合成処理経路PSS20を適用することが望まれ得る。図11に示すAないしFに、経路PSS20のそのような適用例において、図10でAないしFと符号をつけられた対応するポイントの各々において、処理されている信号のスペクトルの段階的例を示す。図11に示すAないしFでは、影つき領域が7〜14kHz高周波数サブバンドの周波数成分を示し、また、垂直軸が大きさを示す。図11に示すAは、7〜14kHz高周波数サブバンドのスペクトル反転周波数成分を含む、14kHzスーパーハイバンド信号SDS10の代表的なスペクトルを示す。図11に示すBは、信号SDS10を28kHzのサンプリングレートに補間した後のスペクトルを示す。図11に示すCは、補間された信号のスペクトルを反転させた後のスペクトルを示す。図11に示すDは、スペクトル反転信号を56kHzのサンプリングレートに補間した後のスペクトルを示す。図11に示すEは、係数8/7により、補間された信号を、64kHzのサンプリングレートにリサンプリングした後のスペクトルを示す。図11に示すFは、32kHzのサンプリングレートを有するスーパーハイバンド信号SOS10を生成するために、リサンプリングされた信号をデシメートした後のスペクトルを示す。
経路PSS20のデシメーションブロックDSS10は、この中に記載されるような演算の例のいずれか(たとえば、この中に記載される3セクションポリフェーズの例)に従って実装され得る。経路PSH20およびPSS20の補間器IH20、IH30、IS20、およびIS30は、この中に記載されるような演算の例のいずれかに従って実装され得る。特定の例では、補間器IH20、IH30、IS20、およびIS30の各々は、この中に記載される3セクションポリフェーズの例に従って実装される。
経路PSS20の8/7によるリサンプルブロックは、64kHzのサンプリングレートを有する出力信号S
outを生成するために、56kHzのサンプリングレートを有する入力信号S
inをリサンプリングするためのポリフェーズ補間を使用するように実装され得る。一例では、このリサンプリングは、n=0,1,2,...,(640/8)−1、および、j=0,1,2,...,6について、
に従うポリフェーズ補間を使用して実行され、上式で、h
56to64は8×5行列である。行列h
56to64の特定の実装形態の値を以下の表に示す。
狭帯域エンコーダEN100は、(A)フィルタを記述するパラメータの組、および(B)入力音声信号の合成された再生を生成するために、記述されたフィルタを駆動する励振信号、として入力音声信号を符号化するソースフィルタモデルに従って実装される。図12Aは、音声信号のスペクトルエンベロープの一例を示す。このスペクトルエンベロープを特徴づけるピークは、声道の共振を表し、ホルマント(formants)と呼ばれる。ほとんどの音声コーダは、少なくともこの粗いスペクトル構造を、フィルタ係数などのパラメータの組として符号化する。
図12Bに、狭帯域信号SIL10のスペクトルエンベロープのコーディングに適用される基本ソースフィルタ構成の一例を示す。分析モジュールが、ある時間期間(一般に10または20ミリ秒)にわたる音声音に対応するフィルタを特徴づけるパラメータの組を計算する。それらのフィルタパラメータに従って構成された白色化フィルタ(分析または予測誤差フィルタとも呼ばれる)が、信号をスペクトル的に平坦化するために、スペクトルエンベロープを除去する。得られた白色化された信号(残差とも呼ばれる)は、元の音声信号よりも、少ないエネルギーを有し、したがって少ない分散(variance)を有し、また、符号化しやすい。また、残差信号のコーディングから生じる誤差が、スペクトルにわたってより一様に拡散され得る。フィルタパラメータおよび残差は、一般に、チャネル上での効率的な送信のために量子化される。デコーダにおいて、フィルタパラメータに従って構成された合成フィルタが、元の音声音の合成されたバージョンを生成するために、残差に基づく信号によって励振される。合成フィルタは、一般に、白色化フィルタの伝達関数の逆数である伝達関数を有するように構成される。
図13に、狭帯域エンコーダEN100の基本実装形態EN110のブロック図を示す。この例では、線形予測符号化(LPC)分析モジュールLPN10が、線形予測(LP)係数(たとえば、全極型フィルタ1/A(z)の係数)の組として、狭帯域信号SIL10のスペクトルエンベロープを符号化する。分析モジュールは、一般に、各フレームについて計算される係数の新しい組で、一連の重複しないフレームとして入力信号を処理する。フレーム期間は、概して、信号が局所的にそれにわたって定常であることが予想され得る期間であり、1つの一般的な例は20ミリ秒(8kHzのサンプリングレートにおける160個のサンプルと等価)である。一例では、LPC分析モジュールLPN10は、各20ミリ秒フレームのホルマント(formant)構造を特徴づけるための10個のLPフィルタ係数の組を計算するように構成される。また、入力信号を、一連の重複するフレームとして処理するように分析モジュールを実装することが可能である。
分析モジュールは、各フレームのサンプルを直接分析するように構成され得、または、サンプルは、最初に、ウィンドウイング関数(たとえば、ハミングウィンドウ(Hamming window))に従って重み付けされ得る。また、フレームの分析は、30ミリ秒ウィンドウなど、フレームよりも大きいウィンドウにわたって実行され得る。このウィンドウは、対称(たとえば、このウィンドウが、20ミリ秒フレームの直前および直後に5ミリ秒を含むように、5−20−5)であるか、または非対称(たとえば、このウィンドウが、先行するフレームの最後の10ミリ秒を含むように、10−20)であり得る。LPC分析モジュールは、一般に、Levinson−Durbin再帰またはLeroux−Gueguenアルゴリズムを使用してLPフィルタ係数を計算するように構成される。他の実装形態では、分析モジュールは、LPフィルタ係数の組の代わりに、各フレームについてケプストラムの(cepstral)係数の組を計算するように構成され得る。
エンコーダEN110の出力レートは、フィルタパラメータを量子化することによって、再生品質への影響が相対的にほとんどなしに、著しく低減され得る。線形予測フィルタ係数は、効率的に量子化することが困難であり、普通、量子化および/またはエントロピー符号化のために、線スペクトル対(LSP)または線スペクトル周波数(LSF)などの他の表現にマッピングされる。図13の例では、LPフィルタ係数−LSF変換XLN10が、LPフィルタ係数の組をLSFの対応する組に変換する。LPフィルタ係数の他の1対1の表現は、parcor係数、ログ面積比(log-area-ratio)値、イミッタンススペクトル対(immittance spectral pairs:ISP)、およびイミッタンススペクトル周波数(immittance spectral frequencies:ISF)を含み、これらはGSM(登録商標)(Global System for Mobile Communications)AMR−WB(Adaptive Multirate−Wideband)コーデックにおいて使用される。一般に、LPフィルタ係数の組とLSFの対応する組との間の変換は可逆であるが、実施形態は、また、変換が、誤差なくして可逆でないエンコーダEN110の実装形態をも含む。
量子化器QLN10は、狭帯域LSFの組(または他の係数表現)を量子化するように構成され、また、狭帯域エンコーダEN110は、この量子化の結果を狭帯域フィルタパラメータFPN10として出力するように構成される。そのような量子化器は、一般に、入力ベクトルをテーブルまたはコードブック中の対応するベクトルエントリへのインデックスとして符号化するベクトル量子化器を含む。
量子化器QLN10は、時間的雑音整形を組み込むことが望まれ得る。図14は、量子化器QLN10のそのような実装形態QLN20のブロック図を示す。各フレームについて、LSF量子化誤差ベクトルが、計算され、値が1(unity)よりも小さいスケールファクタV40によって乗算される。後続のフレームでは、このスケーリングされた量子化誤差は、量子化の前にLSFベクトルに追加される。スケールファクタV40の値は、非量子化LSFベクトル中にすでに存在する変動(fluctuations)の量に応じて動的に調整され得る。たとえば、現在のLSFベクトルと前のLSFベクトルとの間の差が大きいとき、スケールファクタV40の値は0に近く、その結果、ほとんど、雑音整形が実行されない。現在のLSFベクトルが前のLSFベクトルとほとんど異ならないとき、スケールファクタV40の値は1(unity)に近い。得られたLSF量子化は、音声信号が変化しているときはスペクトルひずみを最小限に抑えることと、音声信号があるフレームから次のフレームまで比較的一定であるときはスペクトル変動を最小限に抑えることとが期待され得る。
図15に、量子化器QLN10の他の雑音整形実装形態QLN30のブロック図を示す。ベクトル量子化における時間的雑音整形の追加の説明は、2006年11月30日に公開された米国特許出願公開第2006/0271356号(Vosら)にみられ得る。
図13に示すように、狭帯域エンコーダEN110は、フィルタ係数の組に従って構成された白色化フィルタWF10(分析または予測誤差フィルタとも呼ばれる)を通して、狭帯域信号SIL10を受け渡すことによって残差信号を発生するように構成され得る。この特定の例では、白色化フィルタWF10は、FIRフィルタとして実装されるが、IIR実装形態も使用され得る。この残差信号は、一般に、狭帯域フィルタパラメータFPN10において表されない、ピッチに関係する長期構造など、音声フレームの知覚的に重要な情報を含む。量子化器QXN10は、符号化された狭帯域励振信号XL10としての出力のために、この残差信号の量子化表現を計算するように構成される。そのような量子化器は、一般に、テーブルまたはコードブック中の対応するベクトルエントリへのインデックスとして、入力ベクトルを符号化するベクトル量子化器を含む。代替的に、そのような量子化器は、スパースコードブックにおけるように、ベクトルが、ストレージから検索されるのではなく、デコーダにおいてそれから動的に発生され得る、1つまたは複数のパラメータを送るように構成され得る。そのような方法は、代数CELP(コードブック励振線形予測(codebook excitation linear prediction))などのコーディング方式において、および3GPP2(Third Generation Partnership 2)EVRC(Enhanced Variable Rate Codec)などのコーデックにおいて使用される。
狭帯域エンコーダEN110は、対応する狭帯域デコーダにとって利用可能となるのと同じフィルタパラメータ値に従って、符号化された狭帯域励振信号を発生することが望まれ得る。このようにして、結果としての符号化された狭帯域励振信号は、量子化誤差など、それらのパラメータ値における非理想性をある程度まですでに考慮し得る。それに応じて、デコーダにおいて利用可能となるのと同じ係数値を使用して白色化フィルタを構成することが望まれ得る。図13に示されるようなエンコーダEN110の基本例では、逆量子化器IQN10が狭帯域コーディングパラメータFPN10を逆量子化し、LSF−LPフィルタ係数変換IXN10が、結果としての値をLPフィルタ係数の対応する組にマッピングしなおし、また、係数のこの組は、量子化器QXN10によって量子化された残差信号を発生するように白色化フィルタWF10を構成するために使用される。
狭帯域エンコーダEN100のいくつかの実装形態は、コードブックベクトルの組のうち、残差信号に最も良く一致する1つを特定識することによって、符号化された狭帯域励振信号XL10を計算するように構成される。ただし、狭帯域エンコーダEN100は、残差信号を実際に発生することなしに残差信号の量子化表現を計算するようにも考慮され得ることが注記される。たとえば、狭帯域エンコーダEN100は、(たとえば、フィルタパラメータの現在の組に従って)対応する合成された信号を発生するためにいくつかのコードブックベクトルを使用することと、知覚的に重み付けされた領域において元の狭帯域信号SIL10に最も良く一致する、発生された信号に関連するコードブックベクトルを選択することと、のために構成され得る。
図16は、狭帯域デコーダDN100の実装形態DN110のブロック図を示す。(たとえば、狭帯域エンコーダEN110の逆量子化器IQN10および変換IXN10に関して上記したように)逆量子化器IQXN10は、狭帯域フィルタパラメータFPN10を(この場合には、LSFの組に)逆量子化し、また、LSF−LPフィルタ係数変換IXN20は、LSFをフィルタ係数の組に変換する。逆量子化器IQLN10が、復号された狭帯域励振信号XLD10を生成するために、符号化された狭帯域励振信号XL10を逆量子化する。フィルタ係数と狭帯域励振信号XLD10とに基づいて、狭帯域合成フィルタFNS10が狭帯域信号SDL10を合成する。言い換えれば、狭帯域合成フィルタFNS10は、狭帯域信号SDL10を生成するために、逆量子化されたフィルタ係数に従って狭帯域励振信号XLD10をスペクトル整形するように構成される。また、狭帯域デコーダDN110は、狭帯域励振信号XL10aを、この中に記載されるようにハイバンド励振信号XHD10を導出するためにそれを使用するハイバンドデコーダDH100に与え、また、この中に記載されるようにSHB励振信号XSD10を導出するためにそれを使用する狭帯域励振信号XL10bを、SHBデコーダDS100に与える。以下に記載されるようないくつかの実装形態では、狭帯域デコーダDN110は、スペクトル傾斜、ピッチ利得、およびラグ、ならびに/または音声モードなど、狭帯域信号に関係する追加情報をハイバンドデコーダDH100におよび/またはSHBデコーダDS100に与えるように構成され得る。
狭帯域エンコーダEN110および狭帯域デコーダDN110のシステムは、合成による分析(analysis-by-synthesis)音声コーデックの基本例である。コードブック励振線形予測(CELP)コーディングは、合成による分析コーディングの1つの普及しているファミリーであり、また、そのようなコーダの実装形態は、固定および適応型コードブックからのエントリの選択、誤差最小化演算、および/または知覚的重み付け演算などの動作を含む、残差の波形符号化を実行し得る。合成による分析コーディングの他の実装形態は、混合励振線形予測(mixed excitation linear prediction:MELP)、代数CELP(algebraic CELP:ACELP)、緩和CELP(RCELP:relaxation CELP)、レギュラーパルス励振(RPE:regular pulse excitation)、マルチパルスCELP(MPE)、およびベクトル和・励振線形予測(vector-sum excited linear prediction:VSELP)コーディングを含む。関連するコーディング方法は、マルチバンド励振(MBE:multi-band excitation)およびプロトタイプ波形補間(prototype waveform interpolation:PWI)コーディングを含む。規格化された、合成による分析音声コーデックの例は、残差励振線形予測(RELP:residual excited linear prediction)を使用するETSI(European Telecommunications Standards Institute)−GSMフルレートコーデック(GSM 06.10)、GSMエンハンストフルレートコーデック(ETSI−GSM 06.60)、ITU(International Telecommunication Union)規格の11.8kb/s G.729 Annex E コーダ、IS(暫定標準)−136(時分割多元接続方式)に関するIS−641コーデック、GSM適応型マルチレート(GSM−AMR)コーデック、および4GV(商標)(Fourth−Generation Vocoder(商標))コーデック(QUALCOMM Incorporated、San Diego、CA)を含む。狭帯域エンコーダEN110および対応するデコーダDN110は、これらの技術のいずれかに従って、または(A)フィルタを記述するパラメータのセット、および(B)音声信号を再生するために、記述されたフィルタを駆動するために使用される励振信号、として音声信号を表す(知られているのか、開発されることになるのかにかかわらず)他の音声コーディング技術に従って、実装され得る。
白色化フィルタが狭帯域信号SIL10から粗いスペクトルエンベロープを除去した後でも、特に有声音声について、かなりの量の微細な高調波構造が残り得る。図17Aは、母音などの有声信号のために、白色化フィルタによって生成され得るような、残差信号の一例のスペクトルプロットを示す。この例で見ることができる周期構造は、ピッチに関係し、また、同じ話者によって話される異なる有声音は、異なるホルマント構造を有し得るけれど、同様のピッチ構造を有し得る。図17Bは、時間的にピッチパルスのシーケンスを示す、そのような残差信号の一例の時間領域プロットを示す。
コーディング効率および/または音声品質は、ピッチ構造の特性を符号化するために、1つまたは複数のパラメータ値を使用することによって高まり得る。ピッチ構造の1つの重要な特性は、(基本周波数とも呼ばれる)第1高調波の周波数であり、これは一般に60から400Hzまでの範囲内にある。この特性は、一般に、ピッチラグとも呼ばれる、基本周波数の逆数として符号化される。ピッチラグは、1つのピッチ周期におけるサンプルの数を示し、最小または最大ピッチラグ値に対するオフセットとして、および/または1つまたは複数のコードブックインデックスとして符号化され得る。男性話者からの音声信号は、女性話者からの音声信号よりも大きいピッチラグを有する傾向がある。
ピッチ構造に関係する他の信号特性は、周期性であり、これは、高調波構造の強度、または言い換えれば、信号が高調波または非高調波である程度を示す。周期性の2つの典型的な指示子は、零交差および正規化自己相関関数(NACF:normalized autocorrelation function)である。周期性はピッチ利得によっても示され得、これは、通常、コードブック利得(たとえば、量子化された適応型コードブック利得)として符号化される。
狭帯域エンコーダEN100は、狭帯域信号SIL10の長期高調波構造を符号化するように構成された1つまたは複数のモジュールを含み得る。図17Cに示すように、使用され得る1つの典型的なCELPパラダイムは、短期特性または粗いスペクトルエンベロープを符号化する開ループLPC分析モジュールを含み、その後に、微細なピッチまたは高調波構造を符号化する閉ループ長期予測分析段が続く。短期特性はフィルタ係数として符号化され、また、長期特性は、ピッチラグおよびピッチ利得などのパラメータの値として符号化される。
CELPコーディング技法によって符号化されるようなLPC残差は、一般に固定コードブック部分および適応型コードブック部分を含む。たとえば、狭帯域エンコーダEN100は、1つまたは複数の固定コードブックインデックスと、対応する利得値および1つまたは複数の適応型コードブック利得値とを含む形態で、符号化された狭帯域励振信号XL10を出力するように構成され得る。(たとえば、量子化器QXN10による)狭帯域残差信号のこの量子化表現の計算は、そのようなインデックスを選択することと、そのような利得値を計算することとを含み得る。
残差の長期予測分析後に残っている構造は、固定コードブックへの1つまたは複数のインデックス、および1つまたは複数の対応する固定コードブック利得として符号化され得る。固定コードブックの量子化は、階乗または組合せパルスコーディングなどのパルスコーディング技法を使用して実行され得る。また、ピッチ構造の符号化は、ピッチプロトタイプ波形の補間を含み得、その動作は、連続するピッチパルス間の差を計算することを含み得る。長期構造のモデリングは、一般に雑音に似ており、非構造的である無声音声に対応するフレームについて動作しないようにされ得る。代替的に、特に、修正離散コサイン変換(MDCT)技法または他の変換ベースの技法は、一般化された音響または非音声適用例(たとえば、音楽)について、LPC残差を符号化するために使用され得る。
図17Cに示されるパラダイムによる狭帯域デコーダDN110の一実装形態は、長期構造(ピッチまたは高調波構造)が復元された後、狭帯域励振信号XL10aをハイバンドデコーダDH100に出力すること、および/または狭帯域励振信号XL10bをSHBデコーダDS100に出力すること、のために構成され得る。たとえば、そのようなデコーダは、符号化された狭帯域励振信号XL10の逆量子化バージョンとして狭帯域励振信号XL10aおよび/またはXL10bを出力するように構成され得る。また、もちろん、ハイバンドデコーダDH100が、狭帯域励振信号XL10aを取得するために、符号化された狭帯域励振信号XL10の逆量子化を実行するように、および/またはSHBデコーダDS100が、狭帯域励振信号XL10bを取得するために、符号化された狭帯域励振信号XL10の逆量子化を実行するように、狭帯域デコーダDN100を実装することが可能である。
図17に示されるパラダイムによるスーパーワイドバンド音声エンコーダSWE100の一実装形態では、ハイバンドエンコーダEH100および/またはSHBエンコーダES100は、短期分析または白色化フィルタによって生成されるような狭帯域励振信号を受けるように構成され得る。言い換えれば、狭帯域エンコーダEN100は、長期構造を符号化する前に、狭帯域励振信号XL10aをハイバンドエンコーダEH100に出力すること、および/または狭帯域励振信号XL10bをSHBエンコーダES100に出力すること、のために構成され得る。ただし、ハイバンドエンコーダEH100は、ハイバンドデコーダDH100によって受け取られる同じコーディング情報を狭帯域チャネルから受けとり、結果、ハイバンドエンコーダEH100によって生成されるコーディングパラメータが、その情報における非理想性をある程度まですでに考慮し得ることが望まれ得る。したがって、ハイバンドエンコーダEH100は、SWBエンコーダSWE100によって出力されることになるのと同じパラメータ化および/または量子化された符号化された狭帯域励振信号XL10からハイバンド励振信号XH10を再構成することが好ましい。たとえば、狭帯域エンコーダEN100は、符号化された狭帯域励振信号XL10の逆量子化バージョンとして、狭帯域励振信号XL10aを出力するように構成され得る。この手法の1つの潜在的な利点は、以下に記載するハイバンド利得係数CPH10bのより正確な計算である。
同様に、SHBエンコーダES100は、狭帯域チャネルから、SHBデコーダDS100によって受けられるのと同じコーディング情報を受け取り、結果、SHBエンコーダES100によって生成されたコーディングパラメータが、その情報における非理想性をある程度まですでに考慮し得ることが望まれ得る。したがって、SHBエンコーダES100は、SWBエンコーダSWE100によって出力されることになるのと同じパラメータ化および/または量子化される符号化された狭帯域励振信号XL10から、SHB励振信号XS10を再構成することが好ましくあり得る。たとえば、狭帯域エンコーダEN100は、符号化された狭帯域励振信号XL10の逆量子化バージョンとして、狭帯域励振信号XL10bを出力するように構成され得る。この手法の1つの潜在的な利点は、以下に記載するSHB利得係数CPS10bのより正確な計算である。
狭帯域信号SIL10の短期および/または長期構造を特徴づけるパラメータに加えて、狭帯域エンコーダEN100は、狭帯域信号SIL10の他の特性に関係するパラメータ値を生成し得る。SWB音声エンコーダSWE100によって出力のために適切に量子化され得るこれらの値は、狭帯域フィルタパラメータFPN10のうちに含まれるか、または別個に出力され得る。ハイバンドエンコーダEH100は、また、(たとえば、逆量子化後に)これらの追加のパラメータのうちの1つまたは複数に従ってハイバンドコーディングパラメータCPH10を計算するように構成され得る。SWBデコーダSWD100において、ハイバンドデコーダDH100は、(たとえば、逆量子化後に)狭帯域デコーダDN100を介してパラメータ値を受信するように構成され得る。代替的に、ハイバンドデコーダDH100は、パラメータ値を直接受ける(および、場合によっては逆量子化する)ように構成され得る。同様に、SHBエンコーダES100は、(たとえば、逆量子化後に)これらの追加のパラメータのうちの1つまたは複数に従ってSHBコーディングパラメータCPS10を計算するように構成され得る。SWBデコーダSWD100において、SHBデコーダDS100は、(たとえば、逆量子化後に)狭帯域デコーダDN100を介してパラメータ値を受けるように構成され得る。代替的に、SHBデコーダDS100は、パラメータ値を直接受ける(および、場合によっては逆量子化する)ように構成され得る。
追加の狭帯域コーディングパラメータの一例では、狭帯域エンコーダEN100は、各フレームについてスペクトル傾斜および音声モードパラメータの値を生成する。スペクトル傾斜は、通過帯域にわたるスペクトルエンベロープの形状に関係し、一般に、量子化された第1の反射係数によって表される。ほとんどの有声音では、スペクトルエネルギーは、周波数の増加とともに減少し、その結果、第1の反射係数は負であり、−1に近づき得る。ほとんどの無声音は平坦であるスペクトルをもち、その結果、第1の反射係数が0に近く、また、高周波においてより多くのエネルギーを有し、第1の反射係数が正であり、+1に近づき得る。
音声モード(発声モードとも呼ばれる)は、現在のフレームが有声音声を表すのか無声音声を表すのかを示す。このパラメータは、フレームについての周期性(たとえば、零交差、NACF、ピッチ利得)および/またはボイスアクティビティの1つまたは複数の計測と(例えば、そのような計測としきい値との間の関係な)に基づく2進値を有し得る。他の実装形態では、音声モードパラメータは、無音または背景雑音、または無音と有声音声との間の遷移などのモードを示すために、1つまたは複数の他の状態を有する。
SHB信号SIS10のLPC分析の次数を決定することは、ささいな作業ではない。概して、SHB信号SIS10は大きい帯域幅(たとえば、7kHz)を有するので、満足な知覚結果を伴うSWB信号SISW10の再構成をサポートするために、LPC係数の比較的高い次数が望まれ得る。そのような実装形態の一例は、SHB信号SIS10のスペクトルエンベロープを記述するための8つのスペクトルパラメータを取得するために従来の線形予測符号化(LPC)分析を使用し、また、ハイバンド信号SIH10のスペクトルエンベロープを記述するための6つのスペクトルパラメータを取得するために同様の分析を使用する。効率的なコーディングのために、これらの予測係数は、線スペクトル周波数(LSF)に変換され、次いで、この中に記載されるベクトル量子化器を使用して(たとえば、時間的雑音整形ベクトル量子化器を使用して)量子化される。
図18は、ハイバンドエンコーダEH100の実装形態EH110のブロック図を示し、また、図19は、SHBエンコーダES100の実装形態ES110のブロック図を示す。ハイバンドエンコーダEH100およびSHBエンコーダES100は、狭帯域エンコーダEN110におけるLPC分析経路と同様であるLPC分析経路を有するように構成され得る。たとえば、狭帯域エンコーダEN110は、(量子化および逆量子化を含む)LPC分析経路:LPN10−XLN10−QLN10−IQN10−IXN10を含み、一方、ハイバンドエンコーダEH110は、類似する経路:LPH10−XFH10−QLH10−IQH10−IXH10を含み、また、SHBエンコーダEH110は、類似する経路:LPS10−XFS10−QLS10−IQS10−IXS10を含む。したがって、エンコーダEN100、EH100、およびES100のうちの2つ以上は、異なる時間に、異なるそれぞれの構成で、(場合によっては、量子化を含み、および、場合によっては、逆量子化をも含む)同じLPC分析処理経路を使用するように構成され得る。ハイバンドエンコーダEH110は、ハイバンド励振信号XH10と変換IXH10によって生成されたLPCパラメータとに従って、合成されたハイバンド信号SYH10を生成するように構成された合成フィルタFSH10を含み、また、SHBエンコーダES110は、SHB励振信号XS10と変換IXS10によって生成されたLPCパラメータとに従って、合成されたSHB信号SYS10を生成するように構成された合成フィルタFSS10を含む。
異なるタイプの音声フレームについて、異なる数のビットが、ハイバンド量子化プロセスとSHB量子化プロセスとにおいて割り振られ得る。無音期間は、通常、多くのハイバンドまたはSHB成分を含まないので、無音期間においてハイバンドまたはSHB情報を送らないことにより、全体的なビットレート要求の無駄をなくすことができる。また、有声フレームと無声フレームは、VQトレーニングおよびコーディングプロセス中に、異なって扱われることができる。概して、コードブックサイズおよびコードワード検索の複雑さにおいて多くの制約がないとき、単段大型コードブックVQが、ハイバンドエンコーダEH100によって、および/またはSHBエンコーダES100によって使用され得る。一方、メモリと量子化プロセスの複雑さとに関するきつい制約がある場合、多段および/またはスプリットVQが、ハイバンドエンコーダEH100によって、および/またはSHBエンコーダES100によって採用され得る。
図19に示すように、SHBエンコーダES110は、狭帯域励振信号XL10bからSHB励振信号XS10を生成するように構成されたSHB励振発生器XGS10を含む。また、図21に示すように、SHBデコーダDS110は、狭帯域励振信号XL10bからSHB励振信号XS10を生成するように構成されたSHB励振発生器XGS10のインスタンスを含む。図22Aは、狭帯域励振信号XL10bからSHB励振信号XS10を発生するように構成されたSHB励振発生器XGS10の実装形態XGS20のブロック図を示す。発生器XGS20は、スペクトル拡張器SX10と、SHB分析フィルタバンクFBS10と、適応型白色化フィルタAW10とを含む。
スペクトル拡張(伸長)器SX10は、狭帯域励振信号XL10bのスペクトルを、SHB信号SIS10によって占有される周波数範囲に拡張(伸長)するように構成される。スペクトル拡張器SX10は、絶対値関数(全波整流とも呼ばれる)、半波整流、2乗、3乗、またはクリッピングなど、メモリ不要の非線形関数を狭帯域励振信号XL10bに適用するように構成され得る。スペクトル拡張器SX10は、非線形関数を適用する前に狭帯域励振信号XL10bを(たとえば、32kHzサンプリングレートに、あるいはSHB信号SIS10のサンプリングレートに等しいまたはより近いサンプリングレートに)アップサンプリングするように構成され得る。そして、ハイバンド励振信号を発生するために使用されたのと同じハイバンド分析フィルタバンク(たとえば、HB分析処理経路PAH10、PAH12、またはPAH20)であってよい分析フィルタバンクFBS10は、所望のサンプリングレート(たとえば、fSS、または14kHz)を有する信号を生成するために、スペクトル的に拡張された信号(スペクトル拡張信号)に適用される。
スペクトル拡張信号は、周波数が増加するにつれて、振幅の顕著な減少を有する可能性がある。白色化フィルタWF20(たとえば、適応6次線形予測フィルタ)は、SHB励振信号XS10を生成するように、高調波拡張された結果をスペクトル的に平坦化するために使用され得る。SHB励振発生器XGS20のさらなる実装形態は、高調波拡張された信号を雑音信号と混合するように構成され得、これは、狭帯域信号SIL10または狭帯域励振信号XL10bの時間領域エンベロープに従って時間的に変調され得る。
SHB励振はエンコーダとデコーダの両方において発生されることを注記する。復号プロセスが符号化プロセスに一致するようにするために、エンコーダとデコーダは、同等のSHB励振を発生することが望まれ得る。そのような結果は、エンコーダでとデコーダでの両方においてSHB励振を発生するために、エンコーダとデコーダの両方に利用可能である、符号化された狭帯域励振信号XL10からの情報を使用することによって達成され得る。たとえば、逆量子化された狭帯域励振信号は、エンコーダでとデコーダで、SHB励振発生器XGS10への入力XL10bとして使用され得る。
アーティファクト(響き、エコー、音ゆれなど)は、残差の量子化表示を計算するためにスパースコードブック(そのエントリが、大部分はゼロ値である)が使用されたとき、合成された音声信号において生じ得る。コードブックスパース性(codebook sparseness:まばらにしか存在しない性質)は、特に、狭帯域励振信号が低ビットレートで符号化されたときに起こり得る。コードブックスパース性によって生じるアーティファクトは、一般に、時間的に準周期的であり、たいてい3kHzより上で生じる。人間の耳はより高い周波数においてより良い時間分解能を有するので、これらのアーティファクトは、ハイバンドおよび/またはスーパーハイバンドにおいてより顕著であり得る。
実施形態は、アンチスパース性フィルタ処理(anti-sparseness filtering)を実行するように構成されたハイバンド励振発生器XGS10の実装形態を含む。図22Bは、狭帯域励振信号XL10bをフィルタ処理するように配置されたアンチスパース性フィルタASF10を含むSHB励振発生器XGS20の実装形態XGS30のブロック図を示す。一例では、アンチスパース性フィルタASF10は、
という形態の全域通過フィルタとして実装される。
アンチスパース性フィルタASF10は、それの入力信号の位相を変更するように構成され得る。たとえば、アンチスパース性フィルタASF10は、SHB励振信号XS10の位相が、時間上で、ランダム化されるか、またはさもなければより一様に分散されるように、構成および配置されることが望まれ得る。アンチスパース性フィルタASF10の応答は、フィルタ処理された信号の絶対値スペクトルが目に見えて変更されないように、スペクトル的に平坦であることも望まれ得る。一例では、アンチスパース性フィルタASF10は、以下の式に従う伝達関数を有する全域通過フィルタとして実装される。
そのようなフィルタの1つの効果は、入力信号のエネルギーがほんのいくつかのサンプルにもはや集中しないように、入力信号のエネルギーを拡散することであり得る。
コードブックスパース性によって生じるアーティファクトは、通常、残差がより少ないピッチ情報を含む雑音に似た信号について、また、背景雑音における音声についても、より顕著である。スパース性は、一般に、励振が長期構造を有する場合、より少数のアーティファクトを生じ、また、実際、位相修正は、有声信号における雑音性を生じ得る。したがって、無声信号をフィルタ処理し、変更なしに少なくともいくつかの有声信号を受け渡すようにアンチスパース性フィルタASF10を構成することが望まれ得る。ASFフィルタASF10の使用は、発声、周期性、および/またはスペクトル傾斜などのファクタに基づいて選択され得る。無声信号は、低いピッチ利得(たとえば、量子化された狭帯域適応型コードブック利得)と、平坦であるか、または周波数の増加とともに上方へ傾斜したスペクトルエンベロープを示す、0に近いかまたは正であるスペクトル傾斜(たとえば、量子化された第1の反射係数)とによって特徴づけられる。アンチスパース性フィルタASF10の典型的な実装形態は、(たとえば、スペクトル傾斜の値によって示される)無声音をフィルタ処理することと、ピッチ利得がしきい値を下回る(代替的に、しきい値より大きくはない)ときに有声音をフィルタ処理することと、場合によっては、変更なしに信号を受け渡すこととを行うように構成される。
アンチスパース性フィルタASF10のさらなる実装形態は、異なる最大位相修正角度(たとえば、180度まで)を有するように構成された2つ以上のフィルタを含む。そのような場合、アンチスパース性フィルタASF10は、より大きい最大位相修正角度が、より低いピッチ利得値を有するフレームのために使用されるように、ピッチ利得(たとえば、量子化された適応コードブックまたはLTP利得)の値に従ってこれらの構成要素フィルタの中から選択するように構成され得る。また、アンチスパース性フィルタASF10の一実装形態は、入力信号のより広い周波数範囲にわたって位相を修正するように構成されたフィルタが、より低いピッチ利得値を有するフレームのために使用されるように、周波数スペクトルのより多いまたはより少ない部分にわたって位相を修正するように構成された異なる構成要素フィルタをも含んでよい。
図18に示すように、ハイバンドエンコーダEH110は、狭帯域励振信号XL10aからハイバンド励振信号XH10を生成するように構成されたハイバンド励振発生器XGH10を含む。また、図20に示すように、ハイバンドデコーダDH110が、狭帯域励振信号XL10aからハイバンド励振信号XH10を生成するように構成されたハイバンド励振発生器XGH10のインスタンスを含む。ハイバンド励振発生器XGH10は、32kHzではなく16kHzにアップサンプリングするように構成されるスペクトル拡張器SX10を用いて、この中に記載されるSHB励振発生器XGS20またはXGS30と同じ方法で実装され得る。ハイバンド励振発生器XGH10の追加の説明は、たとえば、www−dot−3gpp2−dot−orgでオンライン入手可能な文書3GPP2 C.S0014−D、v3.0、2010年10月、「Enhanced Variable Rate Codec, Speech Service Options 3, 68, 70, 73 for Wideband Spread Spectrum Digital Systems」のセクション4.3.3.3(頁4.21ないし4.22)において見られ得る。
符号化された音声信号の正確な再生のために、合成されたSWB信号SOSW10のハイバンド部分および狭帯域部分のレベル間の比は、元のSWB信号SISW10におけるそのような比と同様であることが望まれ得る。SHBコーディングパラメータCPS10によって表されるスペクトルエンベロープに加えて、SHBエンコーダES100は、時間または利得エンベロープを特定することによってSHB信号SIS10を特徴づけるように構成され得る。図19に示されるように、SHBエンコーダES110は、フレームまたはフレームのある部分にわたる2つの信号のエネルギー間の差または比など、SHB信号SIS10と合成されたSHB信号SYS10との間の関係に従って1つまたは複数の利得係数を計算するように構成および配置されたSHB利得係数計算器GCS10を含む。SHBエンコーダES110の他の実装形態では、SHB利得計算器GCS10は、同様に構成され得るが、代わりに、SHB信号SIS10と狭帯域励振信号XL10bまたはSHB励振信号XS10との間のそのような時間変動関係に従って利得エンベロープを計算するように配置され得る。
狭帯域励振信号XL10bとSHB信号SIS10との時間エンベロープは、同様である可能性がある。したがって、SHB信号SIS10と狭帯域励振信号XL10b(あるいは、SHB励振信号XS10または合成されたSHB信号SYS10など、それらから導出される信号)との間の関係に基づく利得エンベロープを符号化することは、概して、SHB信号SIS10のみに基づく利得エンベロープを符号化することよりも効率的であることになる。典型的な実装形態では、SHBエンコーダES110の量子化器QGS10は、(たとえば、図23Bに示されるような10個のサブフレームの各々についての)10個のサブフレーム利得係数を指定する(たとえば、8、10、12、14、16、18、または20ビットの)量子化されたインデックスと、正規化係数とを、各フレームのSHB利得係数CPS10bとして出力するように構成される。
SHB利得係数計算器GCS10は、SHB信号SHB10と合成されたSHB信号SYS10との相対エネルギーに従って対応するサブフレームの利得値を計算することによって利得係数計算を実行するように構成され得る。計算器GCS10は、それぞれの信号の対応するサブフレームのエネルギーを計算するように(たとえば、それぞれのサブフレームのサンプルの平方和としてエネルギーを計算するように)構成され得る。そして、計算器GCS10は、それらのエネルギーの比の平方根としてサブフレームについての利得係数を計算する(たとえば、サブフレームにわたるSHB信号SIS10のエネルギーと合成されたSHB信号SYS10のエネルギーとの比の平方根として利得係数を計算する)ように構成され得る。
SHB利得係数計算器GCS10は、ウィンドウイング関数に従ってサブフレームエネルギーを計算するように構成されることが望まれ得る。たとえば、計算器GCS10は、同じウィンドウイング関数をSHB信号SIS10と合成されたSHB信号SYS10とに適用することと、それぞれのウィンドウのエネルギーを計算することと、エネルギーの比の平方根としてサブフレームの利得係数を計算することと、のために構成され得る。フレームについてのサブフレーム利得係数が計算されたら、計算器GCS10は、フレームについての正規化係数を計算することと、正規化係数に従ってサブフレーム利得係数を正規化することとを行うことが望まれ得る。
隣接するサブフレームに重なるウィンドウイング(窓)関数を適用することが望まれ得る。たとえば、オーバーラップ加算様式(overlap-add fashion)で適用され得る利得係数を生成するウィンドウイング関数は、サブフレーム間の不連続性を低減または回避するのに役立ち得る。一例では、SHB利得係数計算器GCS10は、図23Cに示される台形のウィンドウイング関数を適用するように構成され、その中で、ウィンドウは2つの隣接するサブフレームの各々に1ミリ秒だけ重なる。SHB利得係数計算器GCS10の他の実装形態は、対称または非対称であり得る異なる重複期間および/または異なるウィンドウ形状(たとえば、矩形、ハミング)を有するウィンドウイング関数を適用するように構成され得る。また、SHB利得係数計算器GCS10の一実装形態は、異なる長さのサブフレームを含むために、フレーム内のおよび/またはフレームのための異なるサブフレームに異なるウィンドウイング関数を適用するように構成されることが可能である。
SHBエンコーダは、合成されたSHB信号を元のSHB信号と比較することによって利得係数についてのサイド情報を判断するように構成され得る。次いで、デコーダは、合成されたSHB信号を適切にスケーリングするために、これらの利得を使用する。
より高い次数のSHB LPC係数は、十分な詳細をもってスペクトルの微細な構造をモデル化することが期待され得るが、良好なSWB信号を再生するために比較的高い時間領域分解能を使用することが望まれ得る。上記した一実装形態では、(たとえば、図23Bに示されるように)入力音声信号の各20ミリ秒フレームについて、対応する2ミリ秒サブフレームのスケールファクタを各々が示す10個の時間利得パラメータが計算される。それらの利得パラメータは、入力SHB信号の各サブフレームにおけるエネルギーを、スケーリングされてない合成されたSHB励振信号の対応するサブフレームにおけるエネルギーと比較することによって計算され得る。各サブフレーム利得の計算は、特定のサブフレームのサンプルのみを選択する、時間における矩形ウィンドウを使用して、あるいは、代替的に、(たとえば、図23Cに示すように)以前のおよび/または後続のサブフレームの中に伸びるウィンドウイング関数を使用して実行され得る。また、全体的な音声エネルギーレベルを調整するために、各フレームについてのフレーム利得を計算することが望まれ得る。後に続く量子化プロセスを改善するために、各サブフレーム利得ベクトルは、対応するフレーム利得値によって正規化され得る。また、フレーム利得値は、サブフレーム利得の正規化を補償するように調整され得る。
合成された信号が元の信号とはまったく異なることを示し得る、利得係数の間の経時的な大きい変動に応答して、利得係数の減衰を実行するようにSHB利得係数計算器GCS10を構成することが望まれ得る。代替または追加として、(たとえば、可聴アーティファクトを生じ得る変動を低減するために)利得係数の時間平滑化を実行するように、SHB利得係数計算器GCS10を構成することが望まれ得る。
同様に、狭帯域励振信号XL10aとハイバンド信号SIH10との時間エンベロープは類似である可能性がある。図18に示されるように、ハイバンドエンコーダEH100は、ハイバンド信号SIH10と狭帯域励振信号XL10a(あるいは、合成されたハイバンド信号SYH10またはハイバンド励振信号XH10などの、それらに基づく信号)との間の関係に従って、1つまたは複数の利得係数を計算するように構成および配置されたハイバンド利得係数計算器GCH10を含むように実装され得る。計算器GCH10は、計算器GCH10が、計算器GCS10よりも、フレームあたりのより少ないサブフレームの利得係数を計算することが望まれ得ることを除いて、計算器GCS10と同様に実装され得る。典型的な実装形態では、ハイバンドエンコーダEH110の量子化器QGH10は、(たとえば、図23Aに示される5つのサブフレームの各々についての)5つのサブフレーム利得係数を特定する(たとえば、8から12ビットの)量子化されたインデックスと、正規化係数とを、各フレームのハイバンド利得係数CPH10bとして出力するように構成される。
図20は、ハイバンドデコーダDH100の実装形態DH110のブロック図を示す。ハイバンドデコーダDH110は、狭帯域励振信号XL10aに基づいてハイバンド励振信号XH10を生成するように構成された、この中に記載されたようなハイバンド励振発生器XGH10のインスタンスを含む。デコーダDH110は、(この例では、LSFの組に)ハイバンドフィルタパラメータCPH10aを逆量子化するよう構成された逆量子化器IQH20を含み、また、LSFからLPへのフィルタ係数変換(LSF-to-LP filter coefficient transform)IHX20は、(たとえば、狭帯域デコーダDN110の逆量子化器IQXN10および変換IXN20に関して上記したように)LSFをフィルタ係数の組に変換するように構成される。他の実装形態では、上述のように、異なる係数の組(たとえば、ケプストラム係数)および/または係数表示(たとえば、ISP)が使用され得る。ハイバンド合成モジュールFSH20は、ハイバンド励振信号XH10とフィルタ係数の組とに従って、合成されたハイバンド信号を生成するように構成される。(たとえば、上記されたエンコーダEH110の例におけるように)ハイバンドエンコーダが合成フィルタを含むシステムについて、その合成フィルタと同じ応答(たとえば、同じ伝達関数)を有するように、ハイバンド合成モジュールFSH20を実装することが望まれ得る。
ハイバンドデコーダDH110は、また、ハイバンド利得係数CPH10bを逆量子化するように構成された逆量子化器IQGH10と、ハイバンド信号SDH10を生成するために、逆量子化された利得係数を合成されたハイバンド信号に適用するように構成および配置された利得制御要素GH10(たとえば、乗算器または増幅器)と、を含む。フレームの利得エンベロープが1より大きな利得係数によって特定されるような場合について、利得制御要素GH10は、場合によっては、対応するハイバンドエンコーダの利得計算器(たとえば、ハイバンド利得計算器GCH10)によって適用されるのと同じまたは異なるウィンドウイング関数であり得るウィンドウイング関数に従って、利得係数をそれぞれのサブフレームに適用するように構成されるロジックを含み得る。同様に、利得制御要素GH10は、利得係数が信号に適用される前に、利得係数に正規化係数を適用するように構成されるロジックを含み得る。ハイバンドデコーダDH110の他の実装形態では、利得制御要素GH10は、同様に構成されるが、代わりに、逆量子化された利得係数を、狭帯域励振信号XL10aに、またはハイバンド励振信号XH10に適用するように配置される。
上述のように、(たとえば、符号化の間に逆量子化された値を使用することによって)ハイバンドエンコーダとハイバンドデコーダにおいて同じ状態を取得することが望まれ得る。したがって、そのような実装形態によるコーディングシステムでは、エンコーダとデコーダのハイバンド励振発生器の中の対応する雑音発生器について同じ状態を保証することが望まれ得る。例えば、そのような実装形態のハイバンド励振発生器は、雑音発生器の状態が、同じフレーム内ですでに符号化された情報の決定性関数(たとえば、狭帯域フィルタパラメータFPN10またはその一部分、および/または符号化された狭帯域励振信号XL10またはその一部分)であるように構成され得る。
図21は、SHBデコーダDS100の実装形態DS110のブロック図を示す。SHBデコーダDS110は、狭帯域励振信号XL10bに基づいてSHB励振信号XS10を生成するように構成された、この中に記載されるSHB励振発生器XGS10のインスタンスを含む。デコーダDS110は、SHBフィルタパラメータCPS10aを(この例では、LSFの組に)逆量子化するように構成された逆量子化器IQS20を含み、また、LSFからLPへのフィルタ係数変換IXS20は、LSFをフィルタ係数の組に変換する(たとえば、狭帯域デコーダDN110の逆量子化器IQXN10および変換IXN20に関して上記したように)よう構成される。他の実装形態では、上述のように、異なる係数の組(たとえば、ケプストラム係数)および/または係数表示(たとえば、ISP)が使用され得る。SHB合成モジュールFSS20は、SHB励振信号XS10とフィルタ係数の組とに従って、合成されたSHB信号を生成するように構成される。(たとえば、上記されたエンコーダES110の例におけるように)SHBエンコーダが合成フィルタを含むようなシステムについて、その合成フィルタと同じ応答(たとえば、同じ伝達関数)を有するようにSHB合成モジュールFSS20を実装することが望まれ得る。
SHBデコーダDS110は、また、SHB利得係数CPS10bを逆量子化するように構成された逆量子化器IQGS10と、SHB信号SDS10を生成するために、逆量子化された利得係数を合成されたSHB信号に適用するように構成および配置された利得制御要素GS10(たとえば、乗算器または増幅器)と、を含む。フレームの利得エンベロープが1より多くの利得係数によって特定されるような場合、利得制御要素GS10は、場合によっては、対応するSHBエンコーダの利得計算器(たとえば、SHB利得計算器GCS10)によって適用されるのと同じまたは異なるウィンドウイング関数であり得るウィンドウイング関数に従って、利得係数をそれぞれのサブフレームに適用するように構成されたロジックを含み得る。同様に、利得制御要素GS10は、利得係数が信号に適用される前に、利得係数に正規化係数を適用するように構成されたロジックを含み得る。SHBデコーダDS110の他の実装形態では、利得制御要素GS10は、同様に構成されるが、代わりに、逆量子化された利得係数を、狭帯域励振信号XL10bに、またはSHB励振信号XS10に適用するように配置される。
上述のように、(たとえば、符号化の間に、逆量子化された値を使用することによって)SHBエンコーダとSHBデコーダにおいて同じ状態を取得することが望まれ得る。したがって、そのような実装形態によるコーディングシステムでは、エンコーダとデコーダのSHB励振発生器の中の対応する雑音発生器について同じ状態を保証することが望まれ得る。たとえば、そのような実装形態のSHB励振発生器は、雑音発生器の状態が、同じフレーム内ですでに符号化された情報の決定性関数(たとえば、狭帯域フィルタパラメータFPN10またはその一部分、および/または符号化された狭帯域励振信号XL10またはその一部分)であるように構成され得る。
この中に記載される要素の量子化器のうちの1つまたはそれより多く(たとえば、量子化器QLN10、QLH10、QLS10、QGH10、またはQGS10)は、クラスづけされた(classified)ベクトル量子化を実行するように構成され得る。たとえば、そのような量子化器は、狭帯域チャネルにおける、および/またはハイバンドチャネルにおける同じフレーム内ですでに符号化されている情報に基づいて、コードブックの組のうちの1つを選択するように構成され得る。そのような技法は、一般に、追加のコードブックストレージという対価を払って、向上したコーディング効率を与える。
符号化された狭帯域励振信号XL10は、(たとえば、緩和CELPまたは他のピッチ正則化技法によって)時間的にワープ(warp)された信号を記述し得る。たとえば、低周波数サブバンドのピッチ構造のモデルに従って、狭帯域信号SIL10または狭帯域残差に基づく信号を時間ワープすることが望まれ得る。そのような場合、(たとえば、狭帯域信号に、または残差に適用される)符号化された狭帯域励振信号において記述された時間ワーピングに基づいて、また、低周波数サブバンドおよびハイバンド信号SIH10のサンプリングレートにおける差に基づいて、利得係数計算の前にハイバンド信号SIH10をシフトするように、ハイバンドエンコーダEH100を構成することが望まれ得る。同様に、(たとえば、狭帯域信号に、または残差に適用されるように)符号化された狭帯域励振信号において記述された時間ワーピングに基づいて、また、低周波数サブバンドおよびSHB信号SIS10のサンプリングレートにおける差に基づいて、利得係数計算の前にSHB信号SIS10をシフトするように、SHBエンコーダES100を構成することが望まれ得る。そのような時間ワーピングは、時間ワープされた信号の少なくとも2つの連続するサブフレームの各々についての異なる時間シフトを含み得、および/または、計算された時間シフトを整数サンプル値に丸めることを含み得る。信号SIH10またはSIS10の時間ワーピングは、信号の対応するLPC分析の上流または下流に実行され得る。
符号化信号は、パケット交換ネットワーク上で搬送されることになる可能性がある。回線交換動作について、コーデックは、無音期間中に帯域幅を低減するために、間欠送信(discontinuous transmission:DTX)を実装することが望まれ得る。
第1の一般的構成による方法は、音声信号の第1の周波数帯域からの情報に基づいて第1の励振信号(たとえば、狭帯域励振信号XL10)を計算することを含む。本方法は、また、第1の励振信号からの情報に基づいて音声信号の第2の周波数帯域のための第2の励振信号(たとえば、SHB励振信号XS10)を計算することを含む。本方法では、第1の周波数帯域と第2の周波数帯域は、第1の周波数帯域の幅の少なくとも1/2の距離だけ分離される。一例では、励振信号は、少なくとも3000Hzの周波数を有する成分を含み、また、第2の励振信号は、8kHz以下の周波数を有する成分を含む。別の例では、第1の周波数帯域と第2の周波数帯域は、少なくとも2500Hzだけ分離される。この中に記載される一実装形態では、第1の周波数帯域は50から3500Hzまで伸び、また、第2の周波数帯域は7から14kHzまで伸びる。
第2の一般的構成による方法は、音声信号の第1の周波数帯域からの情報に基づいて第1の励振信号(たとえば、狭帯域励振信号XL10)を計算することを含む。本方法は、また、第1の励振信号からの情報に基づいて音声信号の第2の周波数帯域のための第2の励振信号(たとえば、SHB励振信号XS10)を計算することを含む。本方法では、第2の励振信号は、第1および第2の周波数成分の各々におけるエネルギーを含み、また、これらの成分は、第1の励振信号のサンプリングレートの少なくとも50パーセントの距離だけ分離される。他の例では、第2の励振信号は、8000〜8500Hzおよび13,000〜13,500Hzの範囲においてエネルギーを含む。この中に記載される一実装形態では、第1の励振信号のサンプリングレートは8kHzであり、また、第2の励振信号は、7kHzの範囲(たとえば、7から14kHzまで)にわたる成分においてエネルギーを含む。
第3の一般的構成による方法は、音声信号の第1の周波数帯域からの情報に基づいて第1の励振信号(たとえば、狭帯域励振信号XL10)を計算することを含む。本方法は、また、第1の励振信号からの情報に基づいて音声信号の第2の周波数帯域のための第2の励振信号(たとえば、ハイバンド励振信号)を計算することと、第1の励振信号からの情報に基づいて音声信号の第3の周波数帯域のための第3の励振信号(たとえば、SHB励振信号XS10)を計算することと、を含む。本方法では、第2の周波数帯域、は第1の周波数帯域とは異なり(ただし、第1の周波数帯域と重複し得る)、第3の周波数帯域は、第2の周波数帯域とは異なり(ただし、第2の周波数帯域と重複し得る)、また、第3の周波数帯域は、第1の周波数帯域とは離れている。一例では、第2の励振信号を計算することは、第1の励振信号のスペクトルを第2の周波数帯域に拡張(延伸)することを含み、また、第3の励振信号を計算することは、第1の励振信号のスペクトルを第3の周波数帯域に拡張することを含む。他の例では、第2の周波数帯域は、5kHzから6kHzの間の周波数を含み、また、第3の周波数帯域は、10kHzから11kHzの間の周波数を含む。この中に記載される一実装形態では、第2の励振信号は、3500Hzから7kHzまでに伸び、また、第3の励振信号は、7から14kHzまでに伸びる。
第4の一般的構成による方法は、音声信号の第1の周波数帯域からの情報に基づいて第1の励振信号(たとえば、狭帯域励振信号XL10)を計算することを含む。本方法は、また、第1の励振信号からの情報に基づいて音声信号の第2の周波数帯域のための第2の励振信号(たとえば、ハイバンド励振信号)を計算することと、第1の励振信号からの情報に基づいて音声信号の第3の周波数帯域のための第3の励振信号(たとえば、SHB励振信号XS10)を計算することと、を含む。本方法では、第2の周波数帯域は、第1の周波数帯域とは異なり(ただし、第1の周波数帯域と重複し得る)、第3の周波数帯域は、第2の周波数帯域とは異なり(ただし、第2の周波数帯域と重複し得る)、また、第3の周波数帯域は第1の周波数帯域とは離れている。
本方法は、(A)第1の周波数帯域からの情報に基づく信号のフレームと、(B)第2の励振信号からの情報に基づく信号の対応するフレームと、の間の関係を表す第1の複数m個の利得係数を計算することを含む。本方法は、(A)第1の周波数帯域からの情報に基づく信号の前記フレームと、(B)第3の励振信号からの情報に基づく信号の対応するフレームと、の間の関係を表す第2の複数n個の利得係数を計算することをも含み、nはmよりも大きい。
一例では、第1の複数m個の利得係数の各々は、m個のサブフレームのうちの1つに対応し、また、第2の複数n個の利得係数の各々は、n個のサブフレームのうちの1つに対応する。他の例では、第1の複数m個の利得係数を計算することは、第1の利得フレーム値に従って第1の複数m個の利得係数を正規化することを含み、また、第2の複数n個の利得係数を計算することは、第2の利得フレーム値に従って第2の複数n個の利得係数を正規化することを含む。この中に記載される一実装形態では、mは5に等しく、また、nは10に等しい。
図24Aに、低周波数サブバンド中の、および低周波数サブバンドとは離れた高周波数サブバンド中の周波数成分を有する音響信号を処理する、一般的構成による、方法 M100のフローチャートを示す。方法 M100は、(たとえば、フィルタバンクFB100に関してこの中に記載されるように)狭帯域信号とスーパーハイバンド信号とを取得するために、音響信号をフィルタ処理するタスクT100と、(たとえば、狭帯域エンコーダEN100に関してこの中に記載されるように)狭帯域信号からの情報に基づいて、符号化された狭帯域励振信号を計算するタスクT200と、(たとえば、SHBエンコーダES100に関してこの中に記載されるように)符号化された狭帯域励振信号からの情報に基づいて、スーパーハイバンド励振信号を計算するタスクT300と、を含む。方法 M100は、また、(たとえば、SHB利得係数計算器GCS100に関してこの中に記載されるように)スーパーハイバンド信号からの情報に基づいて、高周波数サブバンドのスペクトルエンベロープを特徴づける複数のフィルタパラメータを計算するタスクT400を含む。本方法では、狭帯域信号は、低周波数サブバンドの中の周波数成分に基づき、スーパーハイバンド信号は、高周波数サブバンドの中の周波数成分に基づく。本方法では、低周波数サブバンドの幅は、少なくとも2キロヘルツであり、低周波数サブバンドと高周波数サブバンドは、低周波数サブバンドの幅の少なくとも半分に等しい距離だけ分離される。方法 M100は、また、スーパーハイバンド信号に基づく信号とスーパーハイバンド励振信号に基づく信号との間の時間変動関係を評価することによって複数の利得係数を計算するタスクを含み得る。
図24Bは、低周波数サブバンドの中の、および低周波数サブバンドから離れた高周波数サブバンドの中の周波数成分を有する音響信号を処理するための、一般的構成による装置 MF100のブロック図を示す。装置MF100は、(たとえば、フィルタバンクFB100に関してこの中に記載されるように)狭帯域信号とスーパーハイバンド信号とを取得するために音響信号をフィルタ処理するための手段 F100と、(たとえば、狭帯域エンコーダEN100に関してこの中に記載されるように)狭帯域信号からの情報に基づいて、符号化された狭帯域励振信号を計算するための手段 F200と、(たとえば、SHBエンコーダES100に関してこの中に記載されるように)符号化された狭帯域励振信号からの情報に基づいて、スーパーハイバンド励振信号を計算するための手段 F300と、を含む。装置 MF100は、また、(たとえば、SHB利得係数計算器GCS100に関してこの中に記載されるように)スーパーハイバンド信号からの情報に基づいて、高周波数サブバンドのスペクトルエンベロープを特徴づける複数のフィルタパラメータを計算するための手段 F400を含む。本装置では、狭帯域信号は、低周波数サブバンドの中の周波数成分に基づき、また、スーパーハイバンド信号は、高周波数サブバンドの中の周波数成分に基づく。本装置では、低周波数サブバンドの幅は、少なくとも2キロヘルツであり、低周波数サブバンドと高周波数サブバンドは、低周波数サブバンドの幅の少なくとも半分に等しい距離だけ分離される。装置 MF100は、また、スーパーハイバンド信号に基づく信号とスーパーハイバンド励振信号に基づく信号との間の時間変動関係を評価することによって複数の利得係数を計算するための手段を含み得る。
この中に記載される方法および装置は、概して、任意の送受信および/または音響感知適用例、特にそのような適用例のモバイルまたはその他のポータブルインスタンスにおいて適用され得る。たとえば、この中に記載される構成の範囲は、符号分割多元接続(CDMA)オーバージエア(over-the-air)インターフェースを採用するように構成された無線電話系通信システム中に存在する通信デバイスを含む。とはいえ、この中に記載される特徴を有する方法および装置は、有線および/または無線(たとえば、CDMA、TDMA、FDMA、および/またはTD−SCDMA)の送信チャネルを介したボイスオーバIP(VoIP)を採用するシステムなど、当業者に知られている広範囲の技術を採用する様々な通信システムのいずれにも存在し得ることが、当業者には理解されよう。
この中に記載される通信デバイスは、パケット交換式であるネットワーク(たとえば、VoIPなどのプロトコルに従って音響送信を搬送するように構成された有線および/または無線ネットワーク)および/または回線交換式であるネットワークにおける使用に適応させられ得ることが明確に考慮され、この中に開示される。また、この中に記載される通信デバイスは、狭帯域コーディングシステム(たとえば、約4または5キロヘルツの音響周波数範囲を符号化するシステム)での使用、ならびに/または全帯域広帯域(whole-band wideband)コーディングシステムおよびスプリットバンド広帯域(split-band wideband)コーディングシステムを含む、広帯域コーディングシステム(たとえば、5キロヘルツを超える音響周波数を符号化するシステム)での使用に適応させられ得ることが明確に考慮され、この中に開示される。
この中に記載される構成の表示は、この中に記載される方法および他の構造を当業者が製造または使用できるように提供するものである。この中に図示および記載されるフローチャート、ブロック図、および他の構造は例にすぎず、これらの構造の他の変形も本開示の範囲内である。これらの構成への様々な変更が可能であり、この中で提示した一般化された原理は、他の構成にも同様に適用され得る。したがって、本開示は、上記した構成に限定されるものではなく、原開示の一部をなす、出願時に添付された特許請求の範囲の中のものを含む、この中における任意の様式で開示された原理および新規な特徴に合致する最も広い範囲が与えられるべきである。
情報および信号は、多種多様な技術および技法のいずれかを使用して表され得ることを当業者ならば理解されよう。たとえば、上記の全体にわたって言及され得るデータ、命令、コマンド、情報、信号、ビット、およびシンボルは、電圧、電流、電磁波、磁界または磁性粒子、光場または光学粒子、あるいはそれらの任意の組合せによって表され得る。
この中に記載される構成の実装形態の重要な設計上の要求は、特に、圧縮された音響もしくは音響・映像情報(たとえば、この中で特定された例のうちの1つなどの圧縮形式に従って符号化されるファイルまたはストリーム)の再生などの計算集約的適用例について、または、広帯域通信(たとえば、12、16、44.1、48、または192kHzなど、8キロヘルツよりも高いサンプリングレートでの音声通信)の適用例について、(一般に、毎秒百万命令またはMIPSで測定される)処理遅延および/または計算処理の複雑さを最小にすることを、含み得る。
この中に記載されるマルチマイクロフォン(multi-microphone)処理システムの目的は、全体で10から12dBの雑音低減を達成すること、所望の話者の移動の間の音声のレベルおよび音色を保持すること、雑音が積極的(アグレッシブ)な雑音除去の代わりに背景に移されているという知覚を得ること、音声の残響除去、ならびに/または、よりアグレッシブな雑音低減のための後処理(たとえば、スペクトル引き去り、またはウィーナーフィルタ(Wiener filtering)処理など、雑音推定に基づくスペクトルマスキングおよび/または他のスペクトル修正演算)のオプションを可能にすること、を含み得る。
この中に記載される装置の実装形態の様々な処理要素(たとえば、エンコーダSWE100およびデコーダSWD100、ならびにそれらの要素)は、意図された適用例に好適であると考えられるハードウェア、ソフトウェア、および/またはファームウェアの任意の組合せで実施され得る。たとえば、そのような要素は、たとえば同じチップ上に、またはチップセット中の2つ以上のチップ間に存在する電子デバイスおよび/または光デバイスとして作製され得る。そのようなデバイスの一例は、トランジスタまたは論理ゲートなどの論理要素の固定アレイまたはプログラマブルアレイであり、これらの要素のいずれも1つまたは複数のそのようなアレイとして実装され得る。これらの要素のうちの任意の2つ以上、さらにはすべてが、同じ1つまたは複数のアレイ内に実装され得る。そのような1つまたは複数のアレイは、1つまたは複数のチップ内(たとえば、2つ以上のチップを含むチップセット内)に実装され得る。
この中に記載される装置の様々な実装形態の1つまたは複数の要素(たとえば、エンコーダSWE100およびデコーダSWD100、ならびにそれらの要素)は、全体または一部が、マイクロプロセッサ、組込みプロセッサ、IPコア、デジタル信号プロセッサ、FPGA(フィールドプログラマブルゲートアレイ)、ASSP(特定用途向け標準製品)、およびASIC(特定用途向け集積回路)などの論理要素の1つまたは複数の固定アレイまたはプログラマブルアレイ上で実行するように構成された命令の1つまたは複数のセットとしても実装され得る。この中に記載される装置の実装形態の様々な要素のいずれも、1つまたは複数のコンピュータ(たとえば、「プロセッサ」とも呼ばれる、命令の1つまたは複数のセットまたはシーケンスを実行するようにプログラムされた1つまたは複数のアレイを含む機械)としても実施され得、これらの要素のうちの任意の2つ以上、さらにはすべてが、同じそのような1つまたは複数のコンピュータ内に実装され得る。
この中に記載されるプロセッサまたは処理するための他の手段は、たとえば同じチップ上に、またはチップセット中の2つ以上のチップ間に常駐する1つまたは複数の電子デバイスおよび/または光デバイスとして作製され得る。そのようなデバイスの一例は、トランジスタまたは論理ゲートなどの論理要素の固定アレイまたはプログラマブルアレイであり、これらの要素のいずれも1つまたは複数のそのようなアレイとして実装され得る。そのような1つまたは複数のアレイは、1つまたは複数のチップ内(たとえば、2つ以上のチップを含むチップセット内)に実装され得る。そのようなアレイの例には、マイクロプロセッサ、組込みプロセッサ、IPコア、DSP、FPGA、ASSP、およびASICなどの論理要素の固定アレイまたはプログラマブルアレイがある。この中に記載されるプロセッサまたは処理するための他の手段は、1つまたは複数のコンピュータ(たとえば、命令の1つまたは複数のセットまたはシーケンスを実行するようにプログラムされた1つまたは複数のアレイを含む機械)あるいは他のプロセッサとしても実施され得る。この中に記載されるプロセッサは、プロセッサが組み込まれているデバイスまたはシステム(たとえば、音声通信デバイス)の他の動作に関係するタスクなど、方法 M100(あるいは、この中に記載される装置またはデバイスの動作に関して開示する他の方法)の一実装形態の手続きに直接関係しないタスクを実施するために、またはその手続きに直接関係しない命令の他の組を実行するために、使用することが可能である。また、この中に記載される方法の一部は音響感知デバイスのプロセッサによって実行されることが可能であり、その方法の他の一部は1つまたは複数の他のプロセッサの制御下で実行されることが可能である。
この中に記載される構成に関して説明する様々な例示的なモジュール、論理ブロック、回路、およびテストならびに他の動作は、電子ハードウェア、コンピュータソフトウェア、または両方の組合せとして実装され得ることを、当業者なら理解されよう。そのようなモジュール、論理ブロック、回路、および動作は、この中に記載される構成を生成するように設計された、汎用プロセッサ、デジタル信号プロセッサ(DSP)、ASICまたはASSP、FPGAまたは他のプログラマブル論理デバイス、個別ゲートまたはトランジスタロジック、個別ハードウェア構成要素、あるいはそれらの任意の組合せを用いて実装または実行され得る。たとえば、そのような構成は、少なくとも部分的に、ハードワイヤード回路として、特定用途向け集積回路へと作製された回路構成として、あるいは不揮発性記憶装置にロードされるファームウェアプログラム、または汎用プロセッサもしくは他のデジタル信号処理ユニットなどの論理要素のアレイによって実行可能な命令である機械可読コードとしてデータ記憶媒体からロードされるもしくはデータ記憶媒体にロードされるソフトウェアプログラムとして実装され得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと連携する1つまたは複数のマイクロプロセッサ、あるいは任意の他のそのような構成として実装され得る。ソフトウェアモジュールは、RAM(ランダムアクセスメモリ)、ROM(読取り専用メモリ)、フラッシュRAMなどの不揮発性RAM(NVRAM)、消去可能プログラマブルROM(EPROM)、電気的消去可能プログラマブルROM(EEPROM)、レジスタ、ハードディスク、リムーバブルディスク、またはCD−ROMなど、非一時的記憶媒体中に、あるいは当技術分野で知られている任意の他の形態の記憶媒体中に常駐し得る。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができるように、プロセッサに結合される。代替として、記憶媒体はプロセッサに一体化され得る。プロセッサおよび記憶媒体はASIC中に存在し得る。ASICはユーザ端末中に存在し得る。代替として、プロセッサおよび記憶媒体は、ユーザ端末中に個別構成要素として存在し得る。
この中に記載される様々な方法(たとえば、方法 M100、および本明細書で説明する様々な装置の動作に関して開示する他の方法)は、プロセッサなどの論理要素のアレイによって実行され得、この中に記載される装置の様々な要素は、部分的に、そのようなアレイ上で実行するように設計されたモジュールとして実装され得ることを注記する。この中で使用する「モジュール」または「サブモジュール」という用語は、ソフトウェア、ハードウェアまたはファームウェアの形態でコンピュータ命令(たとえば、論理式)を含む任意の方法、装置、デバイス、ユニットまたはコンピュータ可読データ記憶媒体を指すことができる。複数のモジュールまたはシステムを1つのモジュールまたはシステムに結合することができ、1つのモジュールまたはシステムを、同じ機能を実行する複数のモジュールまたはシステムに分離することができることを理解されたい。ソフトウェアまたは他のコンピュータ実行可能命令で実装した場合、プロセスの要素は本質的に、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを用いて関連するタスクを実行するコードセグメントである。「ソフトウェア」という用語は、ソースコード、アセンブリ言語コード、機械コード、バイナリコード、ファームウェア、マクロコード、マイクロコード、論理要素のアレイによって実行可能な命令の1つまたは複数のセットまたはシーケンス、およびそのような例の任意の組合せを含むことを理解されたい。プログラムまたはコードセグメントは、プロセッサ可読記憶媒体に記憶され得、あるいは搬送波に埋め込まれたコンピュータデータ信号によって伝送媒体または通信リンクを介して送信され得る。
この中に記載される方法、方式、および技法の実装形態は、(たとえば、この中に記載される1つまたは複数のコンピュータ可読記憶媒体の有形のコンピュータ可読特徴において)論理要素のアレイ(たとえば、プロセッサ、マイクロプロセッサ、マイクロコントローラ、または他の有限状態機械)を含む機械によって実行可能な命令の1つまたは複数のセットとしても有形に実施され得る。「コンピュータ可読媒体」という用語は、情報を記憶または転送することができる、揮発性、不揮発性、取外し可能および取外し不可能な記憶媒体を含む、任意の媒体を含み得る。コンピュータ可読媒体の例は、電子回路、半導体メモリデバイス、ROM、フラッシュメモリ、消去可能ROM(EROM)、フロッピー(登録商標)ディスケットまたは他の磁気ストレージ、CD−ROM/DVDまたは他の光ストレージ、ハードディスク、または所望の情報を記憶するために使用され得る任意の他の媒体、光ファイバー媒体、無線周波(RF)リンク、または所望の情報を搬送するために使用され得、アクセスされ得る、任意の他の媒体を含む。コンピュータデータ信号は、電子ネットワークチャネル、光ファイバー、エアリンク、電磁リンク、RFリンクなどの伝送媒体を介して伝播することができるどんな信号をも含み得る。コードセグメントは、インターネットまたはイントラネットなどのコンピュータネットワークを介してダウンロードされ得る。いずれの場合も、本開示の範囲は、そのような実施形態によって限定されると解釈すべきではない。
この中に記載される方法のタスクの各々は、ハードウェアで直接実施され得るか、プロセッサによって実行されるソフトウェアモジュールで実施され得るか、またはその2つの組合せで実施され得る。この中に記載される方法の実装形態の典型的な適用例では、論理要素のアレイ(たとえば、論理ゲート)は、この方法の様々なタスクのうちの1つ、複数、さらにはすべてを実行するように構成される。タスクのうちの1つまたは複数(場合によってはすべて)は、論理要素のアレイ(たとえば、プロセッサ、マイクロプロセッサ、マイクロコントローラ、または他の有限状態機械)を含む機械(たとえば、コンピュータ)によって可読および/または実行可能であるコンピュータプログラム製品(たとえば、ディスク、フラッシュまたは他の不揮発性メモリカード、半導体メモリチップなどの1つまたは複数のデータ記憶媒体など)に埋め込まれたコード(たとえば、命令の1つまたは複数のセット)としても実装され得る。この中に記載される方法の実装形態のタスクは、2つ以上のそのようなアレイまたは機械によっても実行され得る。これらのまたは他の実装形態では、タスクは、セルラー電話など、ワイヤレス通信用のデバイス、またはそのような通信機能をもつ他のデバイス内で実行され得る。そのようなデバイスは、(VoIPなどの1つまたは複数のプロトコルを使用して)回線交換および/またはパケット交換ネットワークと通信するように構成され得る。たとえば、そのようなデバイスは、符号化フレームを受信および/または送信するように構成されたRF回路を含み得る。
この中に記載される様々な方法は、ハンドセット、ヘッドセット、または携帯情報端末(PDA)などのポータブル通信デバイスによって実行され得ること、およびこの中に記載される様々な装置は、そのようなデバイスに含まれ得ることが明確に開示される。典型的なリアルタイム(たとえば、オンライン)適用例は、そのようなモバイルデバイスを使用して行われる電話会話である。
1つまたは複数の例示的な実施形態では、この中に記載される動作は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せで実装され得る。ソフトウェアで実装した場合、そのような動作は、1つまたは複数の命令またはコードとしてコンピュータ可読媒体に記憶され得るか、あるいはコンピュータ可読媒体を介して送信され得る。「コンピュータ可読媒体」という用語は、コンピュータ可読記憶媒体と通信(たとえば、伝送)媒体の両方を含む。限定ではなく、例として、コンピュータ可読記憶媒体は、(限定はしないが、ダイナミックまたはスタティックRAM、ROM、EEPROM、および/またはフラッシュRAMを含み得る)半導体メモリ、または強誘電体メモリ、磁気抵抗メモリ、オボニックメモリ、高分子メモリ、または相変化メモリなどの記憶要素のアレイ、CD−ROMまたは他の光ディスクストレージ、ならびに/あるいは磁気ディスクストレージまたは他の磁気ストレージデバイスを備えることができる。そのような記憶媒体は、コンピュータによってアクセスされ得る命令またはデータ構造の形態で情報を記憶し得る。通信媒体は、ある場所から別の場所へのコンピュータプログラムの転送を可能にする任意の媒体を含む、命令またはデータ構造の形態の所望でプログラムコードを搬送するために使用され得、コンピュータによってアクセスされ得る、任意の媒体を備えることができる。また、いかなる接続もコンピュータ可読媒体と適切に呼ばれる。たとえば、ソフトウェアが、同軸ケーブル、光ファイバーケーブル、ツイストペア、デジタル加入者回線(DSL)、あるいは赤外線、無線、および/またはマイクロ波などのワイヤレス技術を使用して、ウェブサイト、サーバ、または他のリモートソースから送信される場合、同軸ケーブル、光ファイバーケーブル、ツイストペア、DSL、あるいは赤外線、無線、および/またはマイクロ波などのワイヤレス技術は、媒体の定義に含まれる。本明細書で使用するディスク(disk)およびディスク(disc)は、コンパクトディスク(disc)(CD)、レーザディスク(disc)、光ディスク(disc)、デジタル多用途ディスク(disc)(DVD)、フロッピーディスク(disk)およびブルーレイディスク(商標)(Blu−Ray Disc Association、Universal City、CA)を含み、ディスク(disk)は、通常、データを磁気的に再生し、ディスク(disc)はデータをレーザで光学的に再生する。上記の組合せもコンピュータ可読媒体の範囲内に含めるべきである。
この中に記載される音響信号処理装置は、いくつかの動作を制御するために音声入力を受容し、あるいは背景雑音から所望の雑音を分離することから利益を得ることがある、通信デバイスなどの電子デバイスに組み込まれ得る。多くの適用例では、複数の方向発の背景音から明瞭な所望の音を強調または分離することから利益を得ることがある。そのような適用例では、ボイス認識および検出、音声強調および分離、ボイスアクティブ化制御などの機能を組み込んだ電子デバイスまたはコンピューティングデバイスにおけるヒューマンマシンインターフェースを含み得る。限定された処理機能のみを与えるデバイスに適したそのような音響信号処理装置を実装することが望ましいことがある。
本明細書で説明するモジュール、要素、およびデバイスの様々な実装形態の要素は、たとえば、同じチップ上にまたはチップセット中の2つ以上のチップ間に常駐する電子デバイスおよび/または光デバイスとして作製され得る。そのようなデバイスの一例は、トランジスタまたはゲートなど、論理要素の固定アレイまたはプログラマブルアレイである。本明細書で説明する装置の様々な実装形態の1つまたは複数の要素は、全体または一部が、マイクロプロセッサ、組込みプロセッサ、IPコア、デジタル信号プロセッサ、FPGA、ASSP、およびASICなど、論理要素の1つまたは複数の固定アレイまたはプログラマブルアレイ上で実行するように構成された命令の1つまたは複数のセットとしても実装され得る。
この中に記載される装置の実装形態の1つまたは複数の要素は、装置が組み込まれているデバイスまたはシステムの別の動作に関係するタスクなど、装置の動作に直接関係しないタスクを実施するために、または装置の動作に直接関係しない命令の他のセットを実行するために、使用することが可能である。また、そのような装置の実装形態の1つまたは複数の要素は、共通の構造(たとえば、異なる要素に対応するコードの部分を異なる時間に実行するために使用されるプロセッサ、異なる要素に対応するタスクを異なる時間に実施するために実行される命令のセット、あるいは、異なる要素向けの動作を異なる時間に実施する電子デバイスおよび/または光デバイスの構成)を有することが可能である。