(57)【要約】  スペクトルのコード化されていない要素にノイズを注入するスキームは、コード化されていない要素の位置間のオリジナルスペクトルのエネルギーの分布の測度にしたがって制御される。【選択図】    図３Ａ
2013539068.tif 000002
【特許請求の範囲】
【請求項１】
オーディオ信号を処理する方法において、
前記方法は、
前記オーディオ信号からの情報に基づいて、コードブックの複数のエントリの中から１つを選択することと、
前記選択したコードブックエントリに基づいている第１の信号のゼロ値の要素の、周波数領域中での位置を決定することと、
前記決定した周波数領域位置における前記オーディオ信号のエネルギーを計算することと、
前記決定した周波数領域位置間の前記オーディオ信号のエネルギーの分布の測度の値を計算することと、
前記計算したエネルギーと前記計算した値とに基づいて、ノイズ注入利得係数を計算することとを含む方法。
【請求項２】
前記選択したコードブックエントリは、単位パルスのパターンに基づいている請求項１記載の方法。
【請求項３】
前記オーディオ信号のエネルギーの分布の測度の値を計算することは、
前記決定した周波数領域位置のそれぞれにおける前記オーディオ信号の要素のエネルギーを計算することと、
前記要素の前記計算したエネルギーをソートすることとを含む請求項１および２のいずれか１項記載の方法。
【請求項４】
前記エネルギーの分布の測度の値は、（Ａ）前記決定した周波数領域位置における前記オーディオ信号の要素の適切なサブセットの総エネルギーと、（Ｂ）前記決定した周波数領域位置における前記オーディオ信号の要素の総エネルギーとの間の関係に基づいている請求項１ないし３のいずれか１項記載の方法。
【請求項５】
前記ノイズ注入利得係数は、（Ａ）前記決定した周波数領域位置における前記オーディオ信号の前記計算したエネルギーと、（Ｂ）前記決定した周波数領域位置を含む周波数範囲中の前記オーディオ信号のエネルギーとの間の関係に基づいている請求項１ないし４のいずれか１項記載の方法。
【請求項６】
前記ノイズ注入利得係数を計算することは、
前記ノイズ注入利得係数の初期値がしきい値よりも大きくないことを検出することと、
前記検出することに応答して、前記ノイズ注入利得係数の前記初期値をクリッピングすることとを含む請求項１ないし５のいずれか１項記載の方法。
【請求項７】
前記ノイズ注入利得係数は、前記エネルギー分布の測度の計算した値を、前記クリッピングされた値に適用した結果に基づいている請求項６記載の方法。
【請求項８】
前記オーディオ信号は、複数の修正離散コサイン変換係数である請求項１ないし７のいずれか１項記載の方法。
【請求項９】
前記オーディオ信号は、第２のオーディオ信号の線形予測コーディング分析の残差に基づいている請求項１ないし８のいずれか１項記載の方法。
【請求項１０】
前記ノイズ注入利得係数は、線形予測コーディング利得にも基づいており、
前記線形予測コーディング利得は、前記第２のオーディオ信号の前記線形予測コーディング分析によって生成される１組の係数に基づいている請求項９記載の方法。
【請求項１１】
オーディオ信号を処理する装置において、
前記装置は、
前記オーディオ信号からの情報に基づいて、コードブックの複数のエントリの中から１つを選択する手段と、
前記選択したコードブックエントリに基づいている第１の信号のゼロ値の要素の、周波数領域中での位置を決定する手段と、
前記決定した周波数領域位置における前記オーディオ信号のエネルギーを計算する手段と、
前記決定した周波数領域位置間の前記オーディオ信号のエネルギーの分布の測度の値を計算する手段と、
前記計算したエネルギーと前記計算した値とに基づいて、ノイズ注入利得係数を計算する手段とを具備する装置。
【請求項１２】
前記選択したコードブックエントリは、単位パルスのパターンに基づいている請求項１１記載の装置。
【請求項１３】
前記オーディオ信号のエネルギーの分布の測度の値を計算する手段は、
前記決定した周波数領域位置のそれぞれにおける前記オーディオ信号の要素のエネルギーを計算する手段と、
前記要素の前記計算したエネルギーをソートする手段とを備える請求項１１および１２のいずれか１項記載の装置。
【請求項１４】
前記エネルギーの分布の測度の値は、（Ａ）前記決定した周波数領域位置における前記オーディオ信号の要素の適切なサブセットの総エネルギーと、（Ｂ）前記決定した周波数領域位置における前記オーディオ信号の要素の総エネルギーとの間の関係に基づいている請求項１１ないし１３のいずれか１項記載の装置。
【請求項１５】
前記ノイズ注入利得係数は、（Ａ）前記決定した周波数領域位置における前記オーディオ信号の前記計算したエネルギーと、（Ｂ）前記決定した周波数領域位置を含む周波数範囲中の前記オーディオ信号のエネルギーとの間の関係に基づいている請求項１１ないし１４のいずれか１項記載の装置。
【請求項１６】
前記ノイズ注入利得係数を計算する手段は、
前記ノイズ注入利得係数の初期値がしきい値よりも大きくないことを検出する手段と、
前記検出することに応答して、前記ノイズ注入利得係数の前記初期値をクリッピングする手段とを備える請求項１１ないし１５のいずれか１項記載の装置。
【請求項１７】
前記ノイズ注入利得係数は、前記エネルギー分布の測度の計算した値を、前記クリッピングされた値に適用した結果に基づいている請求項１６記載の装置。
【請求項１８】
前記オーディオ信号は、複数の修正離散コサイン変換係数である請求項１１ないし１７のいずれか１項記載の装置。
【請求項１９】
前記オーディオ信号は、第２のオーディオ信号の線形予測コーディング分析の残差に基づいている請求項１１ないし１８のいずれか１項記載の装置。
【請求項２０】
前記ノイズ注入利得係数は、線形予測コーディング利得にも基づいており、
前記線形予測コーディング利得は、前記第２のオーディオ信号の前記線形予測コーディング分析によって生成される１組の係数に基づいている請求項１９記載の装置。
【請求項２１】
オーディオ信号を処理する装置において、
前記装置は、
前記オーディオ信号からの情報に基づいて、コードブックの複数のエントリの中から１つを選択するように構成されているベクトル量子化器と、
前記選択したコードブックエントリに基づいている第１の信号のゼロ値の要素の、周波数領域中での位置を決定するように構成されているゼロ値検出器と、
前記決定した周波数領域位置における前記オーディオ信号のエネルギーを計算するように構成されているエネルギー計算器と、
前記決定した周波数領域位置間の前記オーディオ信号のエネルギーの分布の測度の値を計算するように構成されているスパース性計算器と、
前記計算したエネルギーと前記計算した値とに基づいて、ノイズ注入利得係数を計算するように構成されている利得係数計算器とを具備する装置。
【請求項２２】
前記選択したコードブックエントリは、単位パルスのパターンに基づいている請求項２１記載の装置。
【請求項２３】
前記スパース性計算器は、
前記決定した周波数領域位置のそれぞれにおける前記オーディオ信号の要素のエネルギーを計算し、
前記要素の前記計算したエネルギーをソートするように構成されている請求項２１および２２のいずれか１項記載の装置。
【請求項２４】
前記エネルギーの分布の測度の値は、（Ａ）前記決定した周波数領域位置における前記オーディオ信号の要素の適切なサブセットの総エネルギーと、（Ｂ）前記決定した周波数領域位置における前記オーディオ信号の要素の総エネルギーとの間の関係に基づいている請求項２１ないし２３のいずれか１項記載の装置。
【請求項２５】
前記ノイズ注入利得係数は、（Ａ）前記決定した周波数領域位置における前記オーディオ信号の前記計算したエネルギーと、（Ｂ）前記決定した周波数領域位置を含む周波数範囲中の前記オーディオ信号のエネルギーとの間の関係に基づいている請求項２１ないし２４のいずれか１項記載の装置。
【請求項２６】
前記利得係数計算器は、
前記ノイズ注入利得係数の初期値がしきい値よりも大きくないことを検出し、
前記検出することに応答して、前記ノイズ注入利得係数の前記初期値をクリッピングするように構成されている請求項２１ないし２５のいずれか１項記載の装置。
【請求項２７】
前記ノイズ注入利得係数は、前記エネルギー分布の測度の計算した値を、前記クリッピングされた値に適用した結果に基づいている請求項２６記載の装置。
【請求項２８】
前記オーディオ信号は、複数の修正離散コサイン変換係数である請求項２１ないし２７のいずれか１項記載の装置。
【請求項２９】
前記オーディオ信号は、第２のオーディオ信号の線形予測コーディング分析の残差に基づいている請求項２１ないし２８のいずれか１項記載の装置。
【請求項３０】
前記ノイズ注入利得係数は、線形予測コーディング利得にも基づいており、
前記線形予測コーディング利得は、前記第２のオーディオ信号の前記線形予測コーディング分析によって生成される１組の係数に基づいている請求項２９記載の装置。
【請求項３１】
有体的な機能を読み出す機械に、請求項１ないし１０のいずれか１項記載の方法を実行させる前記機能を有するコンピュータ読取可能記憶媒体。
【発明の詳細な説明】
【合衆国法典第３５部第１１９条の下での優先権の主張】
【０００１】
本特許出願は、２０１０年８月１７日に出願され、“一般化されたオーディオコーディングのためのシステム、方法、装置、および、コンピュータ読取可能媒体”と題する仮出願番号第６１／３７４，５６５号に対する優先権を主張する。本特許出願は、２０１０年９月１７日に出願され、“一般化されたオーディオコーディングのためのシステム、方法、装置、および、コンピュータ読取可能媒体”と題する仮出願番号第６１／３８４，２３７号に対する優先権を主張する。本特許出願は、２０１１年３月３１日に出願され、“ダイナミックなビット割当のためのシステム、方法、装置、および、コンピュータ読取可能媒体”と題する仮出願番号第６１／４７０，４３８号に対する優先権を主張する。
【分野】
【０００２】
本開示は、オーディオ信号処理の分野に関する。
【背景】
【０００３】
修正離散コサイン変換（ＭＤＣＴ）に基づくコーディングスキームが、通常、一般化されたオーディオ信号をコーディングするために使用されている。一般化されたオーディオ信号は、スピーチ、および／または、音楽のような非スピーチコンテンツを含んでもよい。ＭＤＣＴコーディングを使用する既存のオーディオコーデックの例は、ＭＰＥＧ−１オーディオレイヤ３（ＭＰ３）、ドルビーデジタル（登録商標）（ドルビーラボラトリーズ、英国、ロンドン；ＡＣ−３とも呼ばれ、ＡＴＳＣ Ａ／５２として標準化されている）、ボルビス（ザイフォドットオルグファンデーション、マサチューセッツ、サマヴィル）、ウィンドウズ（登録商標）メディアオーディオ（ＷＭＡ、マイクロソフト株式会社、ワシントン、レドモンド）、Ａｄａｐｔｉｖｅ Ｔｒａｎｓｆｏｒｍ Ａｃｏｕｓｔｉｃ Ｃｏｄｉｎｇ（ＡＴＲＡＣ、ソニー株式会社、日本、東京）およびＡｄｖａｎｃｅｄ Ａｕｄｉｏ Ｃｏｄｉｎｇ（ＡＡＣ、ＩＳＯ／ＩＥＣ１４４９６−３において最も最近標準化されている：２００９）を含む。ＭＤＣＴコーディングはまた、Ｅｎｈａｎｃｅｄ Ｖａｒｉａｂｌｅ Ｒａｔｅ Ｃｏｄｅｃ（ＥＶＲＣ、第３世代パートナーシッププロジェクト２（３ＧＧＰ２）文書Ｃ．Ｓ００１４−Ｄ ｖ３．０ ２０１０年１０月において標準化されている；米国電気通信工業会、ヴァージニア、アーリントン)のような、いくつかの電気通信標準規格の構成要素である。Ｇ．７１８コーデック（“フレーム誤りにロバストな８−３２ｋビット／秒の狭帯域／広帯域エンベデッド可変ビットレート音声／オーディオコーディング”、電気通信標準化部門（ＩＴＵ−Ｔ）、スイス、ジュネーブ、２００８年６月、２００８年１１月および２００９年８月に訂正され、２００９年３月および２０１０年３月に修正されている）は、ＭＤＣＴコーディングを使用するマルチレイヤコーデックの１つの例である。
【概要】
【０００４】
一般的なコンフィギュレーションにしたがった、オーディオ信号を処理する方法は、オーディオ信号からの情報に基づいて、コードブックの複数のエントリの中から１つを選択することと、選択したコードブックエントリに基づいている第１の信号のゼロ値の要素の、周波数領域中での位置を決定することとを含む。この方法は、決定した周波数領域位置におけるオーディオ信号のエネルギーを計算することと、決定した周波数領域位置間のオーディオ信号のエネルギーの分布の測度の値を計算することと、計算したエネルギーと計算した値とに基づいて、ノイズ注入利得係数を計算することとを含む。有体的な機能を有し、その機能を読み取るマシンにこのような方法を実行させる、コンピュータ読取可能記憶媒体（例えば、一時的でない媒体）もまた開示する。
【０００５】
一般的なコンフィギュレーションにしたがった、オーディオ信号を処理する装置は、オーディオ信号からの情報に基づいて、コードブックの複数のエントリの中から１つを選択する手段と、選択したコードブックエントリに基づいている第１の信号のゼロ値の要素の、周波数領域中での位置を決定する手段とを具備する。この装置は、決定した周波数領域位置におけるオーディオ信号のエネルギーを計算する手段と、決定した周波数領域位置間のオーディオ信号のエネルギーの分布の測度の値を計算する手段と、計算したエネルギーと計算した値とに基づいて、ノイズ注入利得係数を計算する手段とを具備する。
【０００６】
別の一般的なコンフィギュレーションにしたがった、オーディオ信号を処理する装置は、オーディオ信号からの情報に基づいて、コードブックの複数のエントリの中から１つを選択するように構成されているベクトル量子化器と、選択したコードブックエントリに基づいている第１の信号のゼロ値の要素の、周波数領域中での位置を決定するように構成されているゼロ値検出器とを具備する。この装置は、決定した周波数領域位置におけるオーディオ信号のエネルギーを計算するように構成されているエネルギー計算器と、決定した周波数領域位置間のオーディオ信号のエネルギーの分布の測度の値を計算するように構成されているスパース性計算器と、計算したエネルギーと計算した値とに基づいて、ノイズ注入利得係数を計算するように構成されている利得係数計算器とを具備する。
【図面の簡単な説明】
【０００７】
【図１】図１は、ＭＤＣＴ動作のための典型的なシヌソイド窓形状の３つの例を示す。
【図２】図２は、異なる窓関数ｗ（ｎ）の１つの例を示す。
【図３Ａ】図３Ａは、一般的なコンフィギュレーションにしたがった、オーディオ信号を処理する方法Ｍ１００のブロックダイヤグラムを示す。
【図３Ｂ】図３Ｂは、方法Ｍ１００の実現Ｍ１１０のフローチャートを示す。
【図４Ａ】図４Ａは、利得−形状ベクトルの量子化構造の例を示す。
【図４Ｂ】図４Ｂは、利得−形状ベクトルの量子化構造の例を示す。
【図４Ｃ】図４Ｃは、利得−形状ベクトルの量子化構造の例を示す。
【図５】図５は、パルスエンコーディング前後の入力スペクトルベクトルの例を示す。
【図６Ａ】図６Ａは、１組のソートされたスペクトル係数エネルギーにおけるサブセットの例を示す。
【図６Ｂ】図６Ｂは、スパース性係数の値を利得調整係数の値にマッピングしたプロットを示す。
【図６Ｃ】図６Ｃは、特定のしきい値に対する図６Ｂのマッピングのプロットを示す。
【図７Ａ】図７Ａは、タスクＴ５００のこのような実現Ｔ５０２のフローチャートを示す。
【図７Ｂ】図７Ｂは、タスクＴ５００の実現Ｔ５０４のフローチャートを示す。
【図７Ｃ】図７Ｃは、タスクＴ５０２およびＴ５０４の実現Ｔ５０６のフローチャートを示す。
【図８Ａ】図８Ａは、タスクＴ５２０の例に対するクリッピング動作のプロットを示す。
【図８Ｂ】図８Ｂは、特定のしきい値に対するタスクＴ５２０の例のプロットを示す。
【図８Ｃ】図８Ｃは、タスクＴ５２０の実現を行うために実行してもよい擬似コードリスティングを示す。
【図８Ｄ】図８Ｄは、ノイズ注入利得係数のスパース性ベースの変調を行うために実行してもよい擬似コードリスティングを示す。
【図８Ｅ】図８Ｅは、タスクＴ５４０の実現を行うために実行してもよい擬似コードリスティングを示す。
【図９Ａ】図９Ａは、単調減少関数にしたがった、ＬＰＣ利得値（単位はデシベル）の、係数ｚの値へのマッピングの例を示す。
【図９Ｂ】図９Ｂは、特定のしきい値に対する図９Ａのマッピングのプロットを示す。
【図９Ｃ】図９Ｃは、図９Ａにおいて示されているマッピングの異なる実現の例を示す。
【図９Ｄ】図９Ｄは、特定のしきい値に対する図９Ｃのマッピングのプロットを示す。
【図１０Ａ】図１０Ａは、参照フレームおよびターゲットフレームにおけるサブバンドの位置間の関係の例を示す。
【図１０Ｂ】図１０Ｂは、一般的なコンフィギュレーションにしたがった、ノイズ注入の方法Ｍ２００のフローチャートを示す。
【図１０Ｃ】図１０Ｃは、一般的なコンフィギュレーションにしたがった、ノイズ注入のための装置ＭＦ２００のブロックダイヤグラムを示す。
【図１０Ｄ】図１０Ｄは、別の一般的なコンフィギュレーションにしたがった、ノイズ注入のための装置Ａ２００のブロックダイヤグラムを示す。
【図１１】図１１は、ローバンドオーディオ信号における、選択されたサブバンドの例を示す。
【図１２】図１２は、ハイバンドオーディオ信号における、選択されたサブバンドおよび残差成分の例を示す。
【図１３Ａ】図１３Ａは、一般的なコンフィギュレーションにしたがった、オーディオ信号を処理するための装置ＭＦ１００のブロックダイヤグラムを示す。
【図１３Ｂ】図１３Ｂは、別の一般的なコンフィギュレーションにしたがった、オーディオ信号を処理するための装置Ａ１００のブロックダイヤグラムを示す。
【図１４】図１４は、エンコーダＥ２０のブロックダイヤグラムを示す。
【図１５】図１５ＡないしＥは、エンコーダＥ１００に対する適用の範囲を示す。
【図１６Ａ】図１６Ａは、信号分類の方法ＭＺ１００のブロックダイヤグラムを示す。
【図１６Ｂ】図１６Ｂは、通信デバイスＤ１０のブロックダイヤグラムを示す。
【図１７】図１７は、ハンドセットＨ１００の正面図、背面図、および、側面図を示す。
【詳細な説明】
【０００８】
記憶または送信のために信号ベクトルをエンコーディングするシステムにおいて、知覚品質を最大化しながら、送信されることになる情報の量を最小化するために、注入されるノイズの、利得、スペクトル形状、および／または、他の特性を適切に調整するノイズ注入アルゴリズムを含むことが望ましいことがある。例えば、ここで説明するようなスパース性係数を適用して、このようなノイズ注入スキームを制御する（例えば、注入されることになるノイズのレベルを制御する）ことが望ましいことがある。基礎となるコーディングスキームによって、これらの信号が既によくコード化されていると仮定したときに、高い調性を持つ信号または他のスパース性スペクトルのような、擬似ノイズでないオーディオ信号にノイズを追加するのを避けるように特に注意することが、この点では、望ましいかもしれない。同様に、コード化された信号に関して、注入されるノイズのスペクトルを整形すること、または、そうでなければ、そのスペクトル特性を調整することに、利益があることがある。
【０００９】
その文脈によって明白に限定されない限り、“信号”という用語は、ワイヤ、バス、または、他の送信媒体上で表現されるような記憶場所の状態（または、記憶場所の組）を含む、その通常の意味のいずれかを示すように、ここでは使用される。その文脈によって明白に限定されない限り、“発生させること”という用語は、コンピュータで計算すること、または、そうでなければ、生成させることのような、その通常の意味のいずれかを示すように、ここでは使用される。その文脈によって明白に限定されない限り、“計算すること”という用語は、コンピュータで計算すること、評価すること、平滑化すること、および／または、複数の値から選択することのような、その通常の意味のうちのいずれかを示すように、ここでは使用される。その文脈によって明白に限定されない限り、“取得すること”という用語は、計算すること、導出すること、（例えば、外部デバイスから）受信すること、および／または、（例えば、記憶素子のアレイから）検索することのような、その通常の意味のいずれかを示すように使用される。その文脈によって明白に限定されない限り、“選択すること”という用語は、識別すること、示すこと、適用すること、ならびに／あるいは、２以上の組のうちの、少なくとも１つ、および、すべてより少ないものを使用することのような、その通常の意味のいずれかを示すように使用される。“含む”という用語が、本説明および特許請求の範囲中で使用されるとき、それは、他の要素または動作を除外しない。（“ＡはＢに基づく”のように）“基づく”という用語は、（ｉ）“〜から導出される”（例えば、“ＢはＡの先行モデルである”）、（ｉｉ）“少なくとも基づく”（例えば、“Ａは少なくともＢに基づく”）、および、特定の文脈において適切な場合、（ｉｉｉ）“〜に等しい”（例えば、“ＡはＢに等しい”）、のケースを含む、その通常の意味のいずれかを示すように使用される。同様に、“〜に応答して”という用語は、“少なくとも〜に応答して”を含む、その通常の意味のいずれかを示すように使用される。
【００１０】
特に示されていない限り、“連続”という用語は、２以上のアイテムのシーケンスを示すように使用される。“対数”という用語は、底が１０の対数を示すように使用されるが、他の底への、そのような演算の拡張は、本開示の範囲内である。“周波数成分”という用語は、（例えば、高速フーリエ変換またはＭＤＣＴによって生成されるような）信号の周波数領域表現のサンプルまたは信号のサブバンド（例えば、バーク尺度またはメル尺度のサブバンド）のような、信号の１組の周波数または周波数帯域のうちの１つを示すように使用される。
【００１１】
特に示されていない限り、特定の特徴を有する装置の動作の何らかの開示はまた、類似の特徴を有する方法を開示するように明白に向けられており（逆も成り立つ）、特定の構成にしたがった装置の動作の何らかの開示はまた、類似の構成にしたがった方法を開示するように明白に向けられている（逆も成り立つ）。“構成”という用語は、その特定の文脈によって示されるような方法、装置および／またはシステムへの参照において使用され得る。特定の文脈によって示されていない限り、用語“方法”、“プロセス”、“手続き”および“技術”は、包括的に、および、区別なく使用される。複数のサブタスクを有する“タスク”もまた方法である。用語“装置”および“デバイス”もまた、特定の文脈によって示されていない限り、包括的に、および、区別なく使用される。用語“エレメント”および“モジュール”は、通常、より大きな構成の一部を示すように使用される。その文脈によって明白に限定されない限り、“システム”という用語は、“共通の目的を果たすように相互作用するエレメントのグループ”を含む、その通常の意味のいずれかを示すように、ここでは使用される。文書の一部の参照による何らかの組み込みは、その部分内で参照される用語または変数の定義を組み込むことが理解され、そのような定義は、文書中の他の場所だけでなく、組み込まれている部分において参照される任意の図においても現れる。
【００１２】
ここで説明するシステム、方法および装置は、一般に、周波数領域におけるオーディオ信号の表現をコード化するのに適用可能である。そのような表現の典型的な例は、変換領域における一連の変換係数である。適切な変換の例は、シヌソイドユニタリ変換のような、離散直交変換を含む。適切なシヌソイドユニタリ変換の例は、離散三角変換を含み、離散三角変換は、限定ではないが、離散コサイン変換（ＤＣＴ）、離散サイン変換（ＤＳＴ）および離散フーリエ変換（ＤＦＴ）を含む。適切な変換の他の例は、そのような変換の重複バージョンを含む。適切な変換の特定の例は、先に紹介した修正ＤＣＴ（ＭＤＣＴ）である。
【００１３】
この開示全体を通して、オーディオ周波数範囲の“ローバンド”および“ハイバンド”（言い換えると、“上位バンド”）に対して、ならびに、ゼロないし４キロヘルツ（ｋＨｚ）のローバンドおよび３．５ないし７ｋＨｚのハイバンドの特定の例に対して、参照が成されている。ここで論じた原理は、そのような限定が明確に述べられていないかぎり、決してこの特定の例に限定されないことに特に留意されたい。エンコーディング、デコーディング、割当、量子化および／または他の処理に関する、これらの原理の適用が、特に熟慮され、ここで開示される周波数範囲の（繰り返しになるが、限定ではない）他の例は、０、２５、５０、１００、１５０、２００Ｈｚのいずれかにおける下限と３０００、３５００、４０００、４５００Ｈｚのいずれかにおける上限とを有するローバンド、および、３０００、３５００、４０００、４５００、５０００Ｈｚのいずれかにおける下限と６０００、６５００、７０００、７５００、８０００、８５００、９０００Ｈｚのいずれかにおける上限とを有するハイバンドを含む。３０００、３５００、４０００、４５００、５０００、５５００、６０００、６５００、７０００、７５００、８０００、８５００、９０００Ｈｚのいずれかにおける下限と、１０、１０．５、１１、１１．５、１２、１２．５、１３、１３．５、１４、１４．５、１５、１５．５、１６ｋＨｚのいずれかにおける上限とを有するハイバンドへの（繰り返しになるが、限定ではない）そのような原理の適用もまた、特に熟慮され、ここに開示されている。ハイバンド信号は通常、（例えば、再サンプリングおよび／またはデシメーションによって）コーディングプロセスのより早い段階でより低いサンプリングレートに変換されるが、それはハイバンド信号のままであり、それが搬送する情報は、ハイバンドオーディオ周波数範囲を表し続けることに、特に留意されたい。
【００１４】
ここで説明するようなノイズ注入利得の計算および／または適用を含むコーディングスキームは、（例えば、スピーチを含む）何らかのオーディオ信号をコード化するのに適用されてもよい。代替的に、非スピーチオーディオ（例えば、音楽）に対してのみ、そのようなコーディングスキームを使用するのが望ましいかもしれない。そのようなケースでは、コーディングスキームは、オーディオ信号の各フレームのコンテンツのタイプを決定して、適切なコーディングスキームを選択する分類スキームとともに使用されてもよい。
【００１５】
ここで説明するようなノイズ注入利得の計算および／または適用を含むコーディングスキームは、プライマリコーデックとして、あるいは、マルチレイヤまたはマルチステージコーデックにおけるレイヤまたはステージとして、使用されてもよい。そのような１つの例において、このようなコーディングスキームは、オーディオ信号の周波数コンテンツの一部（例えば、ローバンドまたはハイバンド）をコード化するために使用され、別のコーディングスキームが、信号の周波数コンテンツの別の部分をコード化するために使用される。そのような別の例において、そのようなコーディングスキームは、別のコーディングレイヤの残差（すなわち、オリジナル信号とエンコードされた信号との間の誤差）をコード化するために使用される。
【００１６】
周波数領域中の信号の表現として、オーディオ信号を処理することが望ましいことがある。そのような表現の典型的な例は、変換領域における一連の変換係数である。信号のそのような変換領域表現は、時間領域における信号のＰＣＭ（パルスコード変調）サンプルのフレームに対して変換動作（例えば、ＦＦＴまたはＭＤＣＴ動作）を実行することによって取得されてもよい。変換領域コーディングは、例えば、周波数にわたる（例えば、１つのサブバンドから別のサブバンドに）および／または時間にわたる（例えば、１つのフレームから別のフレームに）、信号のサブバンド間のエネルギースペクトルにおける相関を利用したコーディングスキームをサポートすることにより、コーディング効率を増加させるのを支援してもよい。処理されているオーディオ信号は、入力信号（例えば、スピーチ信号および／または音楽の信号）に対する別のコーディング動作の残差であってもよい。このような１つの例では、処理されているオーディオ信号は、入力オーディオ信号（例えば、スピーチ信号および／または音楽の信号）に対する線形予測コーディング（ＬＰＣ）分析動作の残差である。
【００１７】
ここで説明するような、方法、システム、および、装置は、一連のセグメントとしてオーディオ信号を処理するように構成されていてもよい。セグメント（または、“フレーム”）は、通常、約５または１０ミリ秒から、約４０または５０ミリ秒までの範囲中の長さを持つ時間領域セグメントに対応する変換係数のブロックであってもよい。時間領域セグメントは、オーバーラップしていてもよく（例えば、隣接するセグメントは、２５％または５０％だけオーバーラップしている）、あるいは、オーバーラップしていなくてもよい。
【００１８】
オーディオコーダにおいて、高品質と低遅延の双方を取得するのが望ましいことがある。オーディオコーダは、高品質を取得するために大きなフレームサイズを使用してもよいが、あいにく、大きなフレームサイズは、通常、より長い遅延を生じさせる。ここで説明するようなオーディオエンコーダの潜在的な利益は、短いフレームサイズ（例えば、１０ミリ秒のルックアヘッドを持つ、２０ミリ秒のフレームサイズ）による高品質コーディングを含む。１つの特定の例では、時間領域信号は、一連の２０ミリ秒のオーバーラップしていないセグメントに分割され、隣接フレームのそれぞれを１０ミリ秒だけオーバーラップさせる４０ミリ秒の窓にわたって、各フレームに対するＭＤＣＴが行われる。ここで開示するような、システム、方法、または、装置によって処理されることになるオーディオ信号を生成させるために使用されてもよいＭＤＣＴ変換動作の１つの例は、先に引用した文書Ｃ．Ｓ００１４−Ｄ ｖ３．０のセクション４．１３．４（修正離散コサイン変換（ＭＤＣＴ）４−１３４頁から４−１３５頁まで）に記述されており、このセクションは、ＭＤＣＴ変換動作の例として参照によりここに組み込まれている。
【００１９】
ここで説明するような方法、システム、または、装置によって処理されるようなセグメントはまた、変換によって生成されるようなブロックの一部（例えば、ローバンドまたはハイバンド）、あるいは、このようなブロックに対する前の動作によって生成されたようなブロックの一部であってもよい。１つの特定の例では、このような方法、システム、または、装置によって処理される、一連のセグメント（または“フレーム”）のそれぞれは、ゼロないし４ｋＨｚのローバンド周波数範囲を表す１組の１６０個のＭＤＣＴ係数を含む。別の特定の例では、このような方法、システム、または、装置によって処理される、一連のフレームのそれぞれは、３．５ないし７ｋＨｚのハイバンド周波数範囲を表す１組の１４０個のＭＤＣＴ係数を含む。
【００２０】
ＭＤＣＴコーディングスキームは、２つ以上の連続したフレームにわたって拡張する（すなわち、オーバーラップする）エンコーディング窓を使用する。Ｍのフレーム長に対して、ＭＤＣＴは、２Ｍ個のサンプルの入力に基づいて、Ｍ個の係数を生成させる。それゆえ、ＭＤＣＴコーディングスキームの１つの特徴は、エンコードされたフレームを表すのに必要とされる変換係数の数を増加させることなく、１つ以上のフレーム境界にわたって変換窓を拡張できることである。
【００２１】
Ｍ個のＭＤＣＴ係数の計算は、以下のように表してもよい。
【数１】
2013539068.tif 000003
【数２】
2013539068.tif 000004
【００２２】
関数ｗ（ｎ）は、通常、（プリンセン−ブラッドリー条件とも呼ばれる）条件ｗ2（ｎ）＋ｗ2（ｎ＋Ｍ）＝１を満たす窓であるように選択される。対応する逆ＭＤＣＴ動作は、以下のように表してもよく、ここで、Ｘ＾（ｋ）は、Ｍ個の受信したＭＤＣＴ係数であり、ｘ＾（ｎ）は、２Ｍ個のデコードされたサンプルである。
【数３】
2013539068.tif 000005
【００２３】
図１は、ＭＤＣＴ動作のための典型的なシヌソイド窓形状の３つの例を示す。プリンセン−ブラッドリー条件を満たす、この窓形状は、以下のように表してもよく、ここで、ｎ＝０は、現在のフレームの最初のサンプルを示す。
【数４】
2013539068.tif 000006
【００２４】
この図において示されているように、現在のフレーム（フレームｐ）をエンコードするのに使用されるＭＤＣＴ窓８０４は、フレームｐとフレーム（ｐ＋１）とにわたってゼロでない値を有し、それ以外の場合は、ゼロ値である。前のフレーム（フレーム（ｐ−１））をエンコードするのに使用されるＭＤＣＴ窓８０２は、フレーム（ｐ−１）とフレームｐとにわたって０でない値を有し、それ以外の場合は、ゼロ値であり、後続のフレーム（フレーム（ｐ＋１））をエンコードするのに使用されるＭＤＣＴ窓８０６は、同様に構成されている。デコーダにおいて、デコードされるシーケンスは、入力シーケンスと同じ方法でオーバーラップされて、追加される。たとえ、ＭＤＣＴが、オーバーラップしている窓関数を使用したとしても、オーバーラップおよび追加の後では、フレーム当たりの入力サンプルの数は、フレーム当たりのＭＤＣＴ係数の数と同じであることから、オーバーラップしている窓関数は、臨界サンプルフィルタバンクである。
【００２５】
図２は、Ｍよりも短いルックアヘッドインターバルを可能にするために（例えば、図１において図示したような関数ｗ（ｎ）の代わりに）使用してもよい窓関数ｗ（ｎ）の１つの例を示す。図２において示されている特定の例では、ルックアヘッドインターバルは、Ｍ／２のサンプル長であるが、ＬがゼロないしＭの任意の値を有する、Ｌサンプルの任意のルックアヘッドが可能になるように、このような技術を実現してもよい。この技術（この技術の例は、先の参照によって組み込まれている文書Ｃ．Ｓ００１４−Ｄのセクション４．１３．４に記述されている）では、ＭＤＣＴ窓は、長さ（Ｍ−Ｌ）／２のゼロパッド領域によって開始および終了し、ｗ（ｎ）は、プリンセン−ブラッドリー条件を満たす。このような窓関数の１つの実現は、以下のように表してもよい：
【数５】
2013539068.tif 000007
【００２６】
ここで、ｎ＝（Ｍ−Ｌ）／２は、現在のフレームｐの最初のサンプルであり、ｎ＝（３Ｍ−Ｌ）／２は、次のフレーム（ｐ＋１）の最初のサンプルである。このような技術にしたがってエンコードされた信号は、（量子化および数値の誤差がない場合に）完全な再構成特性を保つ。Ｌ＝Ｍのケースに対して、この窓関数は、図１において図示されたものと同じであり、Ｌ＝０のケースに対して、ｗ（ｎ）は、Ｍ／２≦ｎ＜３Ｍ／２に対しては、ｗ（ｎ）＝１であり、オーバーラップがないような他の場所ではゼロであることに留意されたい。
【００２７】
周波数領域（例えば、ＭＤＣＴ領域またはＦＦＴ領域）においてオーディオ信号をコード化するときに、特に、低ビットレートおよび高サンプリングレートにおいて、コード化されたスペクトルのかなりの部分が、ゼロエネルギーを含むことがある。この結果は、低エネルギーで開始する傾向がある、１つ以上の他のコーディング動作の残差である信号に対しては、特に当てはまる。この結果は、オーディオ信号の“ピンクノイズ”の平均形状が理由で、スペクトルのさらに高い周波数部分においても、特に当てはまるかもしれない。通常、これらの領域は、コード化される領域よりも全体的に重要度が低いが、それでも、デコードされた信号中にこれらが全くないと、不快なアーティファクト、一般的な“濁音（dullness）”、および／または、自然さの欠如を結果として生じさせることがある。
【００２８】
多くの実用的なクラスのオーディオ信号に対して、このような領域のコンテンツは、音響心理的に、ノイズとしてよくモデリングされていることがある。したがって、デコーディングの間に信号にノイズを注入することによって、このようなアーティファクトを減少させることが望ましいことがある。ビットにおける最小コストのために、このようなノイズ注入を、後処理動作として、スペクトル領域オーディオコーディングスキームに適用することができる。エンコーダにおいて、このような動作は、コード化される信号のパラメータとしてエンコードされることになる適切なノイズ注入利得係数を計算することを含んでもよい。デコーダにおいて、このような動作は、ノイズ注入利得係数にしたがって変調されたノイズによって、コード化された入力信号の空き領域を埋めることを含んでもよい。
【００２９】
図３Ａは、タスクＴ１００、Ｔ２００、Ｔ３００、Ｔ４００、および、Ｔ５００を含む一般的なコンフィギュレーションにしたがった、オーディオ信号を処理する方法Ｍ１００のブロックダイヤグラムを示す。オーディオ信号からの情報に基づいて、タスクＴ１００は、コードブックの複数のエントリの中から１つを選択する。分割ＶＱスキームまたはマルチステージＶＱスキームでは、タスクＴ１００は、２つ以上のコードブックのそれぞれからエントリを選択することによって信号ベクトルを量子化するように構成されていてもよい。タスクＴ２００は、選択されたコードブックエントリのゼロ値の要素の、周波数領域中での位置（または、１つ以上の追加のコードブックエントリに基づく信号のような、選択したコードブックエントリに基づく信号のこのような要素の位置）を決定する。タスクＴ３００は、決定した周波数領域位置におけるオーディオ信号のエネルギーを計算する。タスクＴ４００は、オーディオ信号内のエネルギーの分布の測度の値を計算する。計算したエネルギーと計算したエネルギー分布値とに基づいて、タスクＴ５００は、ノイズ注入利得係数を計算する。方法Ｍ１００は、通常、方法のそれぞれの具体例が、オーディオ信号の各フレームに対して（例えば、変換係数の各ブロックに対して）実行するように実現される。方法Ｍ１００は、（帯域幅全体またはいくつかのサブバンドに及ぶ）オーディオスペクトルをその入力としてとるように構成されていてもよい。１つの例では、方法Ｍ１００によって処理されるオーディオ信号は、ＬＰＣの残差領域におけるＵＢ−ＭＤＣＴスペクトルである。
【００３０】
オーディオ信号のフレームに対する１組の変換係数をベクトルとして処理することによって、コード化されたバージョンのオーディオ信号を生成させるようにタスクＴ１００を構成することが望ましいことがある。例えば、タスクＴ１００は、コードブック中のエントリにベクトルを一致させることによってベクトルをエンコードする、（デコーダとしても知られている）ベクトル量子化（ＶＱ）スキームを実行するように実現されてもよい。従来のＶＱスキームでは、コードブックはベクトルの表であり、この表内の選択されたエントリのインデックスが、ベクトルを表すために使用されている。コードブック中のエントリの最大数を決定する、コードブックインデックスの長さは、アプリケーションに適していると思われる何らかの任意の整数であってもよい。パルスコーディングＶＱスキームでは、（コードブックインデックスとしても呼ばれることがある）選択されたコードブックエントリが、パルスの特定のパターンを記述する。パルスコーディングのケースでは、エントリ（またはインデックス）の長さが、対応するパターン中のパルスの最大数を決定する。分割ＶＱスキームまたはマルチステージＶＱスキームでは、タスクＴ１００は、２つ以上のコードブックのそれぞれからエントリを選択することによって、信号ベクトルを量子化するように構成されていてもよい。
【００３１】
利得−形状ベクトル量子化は、利得係数によって表されるベクトルエネルギーを、形状によって表されるベクトル方向から切り離すことによって、（例えば、オーディオデータまたはイメージデータを表す）信号ベクトルを効率的にエンコードするために使用してもよいコーディング技術である。このような技術は、オーディオ信号（例えば、スピーチおよび／または音楽に基づく信号）のコーディングのような、信号のダイナミックレンジが大きいアプリケーションに対して特に適していてもよい。
【００３２】
利得−形状ベクトル量子化器（ＧＳＶＱ）は、信号ベクトルｘの形状および利得を別々にエンコードする。図４Ａは、利得−形状ベクトル量子化動作の例を示している。この例において、形状量子化器ＳＱ１００は、信号ベクトルｘに対して、コードブック中の最も近い（例えば、平均二乗誤差の意味において最も近い）ベクトルとしてコードブックから量子化された形状ベクトルＳ＾を選択して、インデックスをコードブック中のベクトルＳ＾に出力することによって、ＶＱスキームを実行するように構成されている。ノルム計算器ＮＣ１０は、信号ベクトルｘのノルム||ｘ||を計算するように構成されており、利得量子化器ＧＱ１０は、ノルムを量子化して、量子化された利得係数を生成させるように構成されている。利得量子化器ＧＱ１０は、ベクトル量子化に対して、ノルムをスカラとして量子化するか、または、ノルムを他の利得（例えば、複数のベクトルのうちの他のベクトルからのノルム）と組み合わせて利得ベクトルにするように構成されていてもよい。
【００３３】
形状量子化器ＳＱ１００は通常、コードブックベクトルが単位ノルムを有する（すなわち、単位超球上のすべての点である）制約を伴うベクトル量子化器として実現される。この制約は、コードブックサーチ（例えば、平均二乗誤差計算から内積演算まで）を簡単にする。例えば、形状量子化器ＳＱ１００は、ａｒｇ ｍａｘk（ｘTＳk）のような演算にしたがって、Ｋ個の単位ノルムベクトルＳk、ｋ＝０，１，．．．，Ｋ−１のコードブックの中から、ベクトルＳ^を選択するように構成されていてもよい。このようなサーチは、しらみ潰しであってもよく、または、最適化されてもよい。例えば、ベクトルは、特定のサーチ戦略をサポートするようにコードブック内で配置されていてもよい。
【００３４】
いくつかのケースでは、（例えば、特定のコードブックサーチ戦略を可能にするために、）形状量子化器ＳＱ１００への入力が単位ノルムであるようにさせることが望ましいかもしれない。図４Ｂは、利得−形状ベクトル量子化動作の、そのような例を示す。この例では、ノーマライザＮＬ１０が、信号ベクトルｘをノーマライズして、ベクトルノルム||ｘ||および単位ノルム形状ベクトルＳ＝ｘ／||ｘ||をもたらすように構成されており、形状量子化器ＳＱ１００は、その入力として、形状ベクトルＳを受け取るように構成されている。そのようなケースでは、形状量子化器ＳＱ１００は、ａｒｇ ｍａｘk（ＳTＳk）のような演算にしたがって、Ｋ個の単位ノルムベクトルＳk、ｋ＝０，１，．．．，Ｋ−１のコードブックの中からベクトルＳ^を選択するように構成されていてもよい。
【００３５】
代替的に、形状量子化器は、単位パルスのパターンのコードブックの中から、コード化されたベクトルを選択するように構成されていてもよい。図４Ｃは、このような利得−形状ベクトル量子化動作の例を示す。このケースでは、量子化器ＳＱ２００は、スケーリングされた形状ベクトルＳSCに最も近い（例えば、平均二乗誤差の意味において最も近い）パターンを選択するように構成されている。そのようなパターンは通常、パターン中の、パルスの数および占有されている各ポジションに対する符号を示すコードブックエントリとしてエンコードされる。パターンを選択することは（例えば、スケーラＳＣ１０中で）信号ベクトルをスケーリングして、形状ベクトルＳSCと、対応するスカラスケール係数ｇSCとを取得し、その後、スケーリングされた形状ベクトルＳSCをパターンに一致させることを含んでもよい。このケースでは、スケーラＳＣ１０は、信号ベクトルｘをスケーリングして、（各要素を最も近い整数に丸めた後の）ＳSCの要素の絶対値の和が、所望の値（例えば、２３または２８）に近似するような、スケーリングされた形状ベクトルＳSCを生成させるように構成されていてもよい。結果として生じるスケール係数ｇSCを使用して、選択したパターンをノーマライズすることによって、対応する逆量子化された信号ベクトルを発生させてもよい。このようなパターンをエンコードするために形状量子化器ＳＱ２００によって実行してもよいパルスコーディングスキームの例は、階乗パルスコーディングおよび組み合わせパルスコーディングを含む。ここで開示したようなシステム、方法、または、装置内で実行されてもよいパルスコーディングベクトル量子化動作の１つの例は、先に引用した文書Ｃ．Ｓ００１４−Ｄ ｖ３．０のセクション４．１３．５（ＭＤＣＴの残差線形スペクトル量子化、４−１３５頁から４−１３７頁まで）および４．１３．６（グローバルスケール係数量子化、４−１３７頁）において記述されており、これらのセクションは、タスクＴ１００の実現の例として参照によりここに組み込まれている。
【００３６】
図５は、パルスエンコーディング前後の入力スペクトルベクトルの例（例えば、ＭＤＣＴスペクトル）を示す。この例では、各次元におけるそのオリジナル値が実線によって示されている３０の次元のベクトルが、コード化されたスペクトルを示す点と、ゼロ値の要素を示す正方形とによって示されているような、パルスのパターン（０，０，−１，−１，＋１，＋２，−１，０，０，＋１，−１，−１，＋１，−１，＋１，−１，−１，＋２，−１，０，０，０，０，−１，＋１，＋１，０，０，０，０）によって表される。このパルスのパターンは通常、３０ビットよりもはるかに少ないコードブックエントリ（またはインデックス）によって表すことができる。
【００３７】
タスクＴ２００は、コード化されたスペクトルにおけるゼロ値の要素の位置を決定する。１つの例では、タスクＴ２００は、以下のような数式にしたがって、ゼロ検出マスクを生成させるように実現される：
【数６】
2013539068.tif 000008
【００３８】
ここで、ｚdは、ゼロ検出マスクを示し、Ｘcは、コード化された入力スペクトルベクトルを示し、ｋは、サンプルインデックスを示す。図５において示されているコード化された例に対して、このようなマスクは、｛１，１，０，０，０，０，０，１，１，０，０，０，０，０，０，０，０，０，０，１，１，１，１，０，０，０，１，１，１，１｝の形を有する。このケースでは、オリジナルベクトルの４０％（３０個のエレメントのうちの１２個）が、ゼロ値の要素としてコード化されている。
【００３９】
信号の周波数範囲のサブバンド内のゼロ値の要素の位置を示すようにタスクＴ２００を構成することが望ましいことがある。このような１つの例では、Ｘcは、ゼロないし４ｋＨｚのローバンド周波数範囲を表す１６０個のＭＤＣＴ係数のベクトルであり、（例えば、１０００ないし３６００Ｈｚの周波数範囲にわたるゼロ値の要素の検出のために、）タスクＴ２００は、以下のような数式にしたがって、ゼロ検出マスクを生成させるように実現される：
【数７】
2013539068.tif 000009
【００４０】
タスクＴ３００は、（例えば、ゼロ検出マスクによって示されているような、）タスクＴ２００において決定された周波数領域位置におけるオーディオ信号のエネルギーを計算する。これらの位置における入力スペクトルは、“コード化されていない入力スペクトル”または“入力スペクトルのコード化されていない領域”とも呼ばれてもよい。典型的な例では、タスクＴ３００は、これらの位置におけるオーディオ信号の値の二乗の和として、エネルギーを計算するように構成されている。図５で図示されているケースに対して、タスクＴ３００は、正方形によってマークされている周波数領域位置における入力スペクトルの値の二乗の和として、エネルギーを計算するように構成されていてもよい。このような計算は、以下のような数式にしたがって実行されてもよく、ここで、Ｋは、入力ベクトルＸの長さを示す。
【数８】
2013539068.tif 000010
【００４１】
さらなる例において、この合計は、タスクＴ２００においてゼロ検出マスクが計算されたサブバンドに（例えば、４０≦ｋ≦１４３にわたって）限定される。複素数値の係数を生成させる変換のケースでは、タスクＴ２００によって決定された位置におけるオーディオ信号の値の大きさの二乗の和として、エネルギーを計算してもよいことが理解されるだろう。
【００４２】
コード化されていないスペクトル内の（すなわち、オーディオ信号の決定された周波数領域位置間での）エネルギーの分布の測度に基づいて、タスクＴ４００は、対応するスパース性係数を計算する。タスクＴ４００は、（例えば、タスクＴ３００によって計算されたような）コード化されていないスペクトルの総エネルギーと、コード化されていないスペクトルの係数のサブセットの総エネルギーとの間の関係に基づいて、スパース性係数を計算するように構成されていてもよい。このような１つの例では、サブセットは、コード化されていないスペクトル中で最も高いエネルギーを有する係数の中から選択される。これらの値間の関係［例えば、（サブセットのエネルギー）／（コード化されていないスペクトルの総エネルギー）］は、コード化されていないスペクトルのエネルギーが集中または分散している程度を示すことが理解できる。
【００４３】
１つの例では、タスクＴ４００は、（タスクＴ３００によって計算されたような、）コード化されていない入力スペクトルの総エネルギーによって除算された、コード化されていない入力スペクトルの、ＬC個の最も高いエネルギー係数のエネルギーの和として、スパース性係数を計算する。このような計算は、コード化されていない入力スペクトルベクトルの要素のエネルギーを降順でソートすることを含んでもよい。ＬCが、コード化されていない入力スペクトルベクトル中の係数の総数の約５％、６％、７％、８％、９％、１０％、１５％、または、２０％の値を有することが望ましいことがある。図６Ａは、ＬC個の最も高いエネルギー係数を選択する例を図示している。
【００４４】
ＬCに対する値の例は、５、１０、１５、および、２０を含む。１つの特定の例では、ＬCは１０に等しく、ハイバンド入力スペクトルベクトルの長さは１４０である（代替的に、ローバンド入力スペクトルベクトルの長さは１４４である）。ここで説明する例では、タスクＴ４００が、ゼロ（例えば、エネルギーがない）から１（例えば、すべてのエネルギーが、ＬC個の最も高いエネルギー係数に集中している）までのスケール上でスパース性係数を計算することを仮定しているが、当業者は、これらの原理もこれらの原理のここでの説明も、このような制約に限定されないことを正しく認識するだろう。
【００４５】
１つの例では、タスクＴ４００は、以下のような数式にしたがって、スパース性係数を計算するように実現され、ここで、βは、スパース性係数を示し、Ｋは、入力ベクトルＸの長さを示す。（このようなケースでは、数式（３）における分数の分母を、タスクＴ３００から取得してもよい）：
【数９】
2013539068.tif 000011
【００４６】
さらなる例では、ＬC個の係数が選択されるプールと、数式（３）の分母における合計とは、タスクＴ２００においてゼロ検出マスクが計算されたサブバンドに（例えば、範囲４０≦ｋ≦１４３にわたって）限定される。
【００４７】
別の例では、タスクＴ４００は、そのエネルギー和が、コード化されていないスペクトルの総エネルギーの指定された部分（例えば、コード化されていないスペクトルの総エネルギーの５、１０、１２、１５、２０、２５、または、３０パーセント）を超える（代替的には、以上である）、コード化されていないスペクトルの最も高いエネルギー係数の数に基づいて、スパース性係数を計算するように実現される。このような計算もまた、タスクＴ２００においてゼロ検出マスクが計算されたサブバンドに（例えば、範囲４０≦ｋ≦１４３にわたって）限定されてもよい。
【００４８】
タスクＴ５００は、ノイズ注入利得係数を計算し、ノイズ注入利得係数は、タスクＴ３００によって計算されたような、コード化されていない入力スペクトルのエネルギーと、タスクＴ４００によって計算されたような、コード化されていない入力スペクトルのスパース性係数とに基づいている。タスクＴ５００は、決定された周波数領域位置における計算されたエネルギーに基づいているノイズ注入利得係数の初期値を計算するように構成されていてもよい。このような１つの例では、タスクＴ５００は、以下のような数式にしたがって、ノイズ注入利得係数の初期値を計算するように実現され、ここで、γniは、ノイズ注入利得係数を示し、Ｋは、入力ベクトルＸの長さを示し、αは、１よりも大きくない値（例えば、０．８または０．９）を有する係数である。（このようなケースでは、数式（４）における分数の分子を、タスクＴ３００から取得してもよい。）：
【数１０】
2013539068.tif 000012
【００４９】
さらなる例では、数式（４）における合計は、タスクＴ２００においてゼロ検出マスクが計算されたサブバンドに（例えば、範囲４０≦ｋ≦１４３にわたって）限定される。
【００５０】
スパース性係数が高い値を有するときに（すなわち、コード化されていないスペクトルが擬似ノイズでないときに）、ノイズ利得を減少させることが望ましいかもしれない。タスクＴ５００は、スパース性係数を使用して、スパース性係数が増加するにつれて、利得係数の値が減少するように、ノイズ注入利得係数を変調するように構成されていてもよい。図６Ｂは、単調減少関数にしたがった、スパース性係数βの値の、利得調整係数ｆ1の値へのマッピングのプロットを示す。ノイズ注入利得係数γniの計算にこのような変調が含まれていてもよく（例えば、ノイズ注入利得係数を生成させる、先の数式（４）の右辺に適用されてもよく）、または、係数ｆ1を使用して、γni←ｆ1×γniのような数式にしたがって、ノイズ注入利得係数γniの初期値を更新してもよい。
【００５１】
図６Ｂにおいて示されている特定の例は、指定された下位しきい値Ｌよりも小さいスパース性係数値に対しては、変更されていない利得値をパスし、Ｌと指定された上位しきい値Ｂとの間のスパース性係数値に対しては、利得値を線形的に減少させ、Ｂよりも大きいスパース性係数値に対しては、利得値をゼロにクリップする。このプロットの下にある線は、低い値のスパース性係数が、より低い程度のエネルギー集中（例えば、より分散されたエネルギースぺクトル）を示し、より高い値のスパース性係数が、より高い程度のエネルギー集中（例えば、調性を持つ信号）を示すことを図示する。図６Ｃは、（スパース性係数の値が、範囲［０，１］中にあると仮定した場合に、）Ｌ＝０．５かつＢ＝０．７の値に対して、この例を示す。これらの例は、減少が非線形的であるようにも実現されてもよい。図８Ｄは、図６Ｃにおいて示されているマッピングにしたがって、ノイズ注入利得係数のスパース性ベースの変調を行うために実行してもよい擬似コードリスティングを示す。
【００５２】
少数のビットを使用して、スパース性変調されたノイズ注入利得係数を量子化し、フレームのサイド情報として、量子化された係数を送信することが望ましいかもしれない。図３Ｂは、タスクＴ５００によって生成された変調されたノイズ注入利得係数を量子化するタスクＴ６００を含む方法Ｍ１００の実現Ｍ１１０のフローチャートを示す。例えば、タスクＴ６００は、スカラ量子化器（例えば、３ビットのスカラ量子化器）を使用して、対数スケール（例えば、デシベルのスケール）でノイズ注入利得係数を量子化するように構成されていてもよい。
【００５３】
タスクＴ５００は、それ自体の大きさにしたがって、ノイズ注入利得係数を変調するようにも構成されていてもよい。図７Ａは、サブタスクＴ５１０、Ｔ５２０、および、Ｔ５３０を含むタスクＴ５００のこのような実現Ｔ５０２のフローチャートを示す。タスクＴ５１０は、（数式（４）を参照して先に説明したような、）ノイズ注入利得係数に対する初期値を計算する。タスクＴ５２０は、初期値に対する低利得クリッピング動作を実行する。例えば、タスクＴ５２０は、指定されたしきい値を下回る利得係数の値をゼロに減少させるように構成されていてもよい。図８Ａは、しきい値ｃを下回る利得値をゼロにクリップし、ｃないしｄの範囲中の値をゼロないしｄの範囲に線形的にマッピングし、より高い値は変更することなくパスする、タスクＴ５２０の例に対するこのような動作のプロットを示す。図８Ｂは、ｃ＝２００、ｄ＝４００の値に対するタスクＴ５２０の特定の例を示す。これらの例は、マッピングが非線形的であるようにも実現されてもよい。タスクＴ５３０は、（例えば、上述したような利得調整係数ｆ1を適用して、クリップされた係数を更新することによって）タスクＴ５２０によって生成されたクリップされた利得係数に、スパース性係数を適用する。図８Ｃは、図８Ｂにおいて示されているマッピングにしたがって、タスクＴ５２０を行うように実行されてもよい擬似コードリスティングを示す。タスクＴ５２０とＴ５３０のシーケンスが逆であるように（すなわち、タスクＴ５１０によって生成された初期値に対してタスクＴ５３０が実行され、タスクＴ５３０の結果に対してタスクＴ５２０が実行されるように）もタスクＴ５００を実現してもよいことを当業者は認識するだろう。
【００５４】
ここで述べたように、方法Ｍ１００によって処理されるオーディオ信号は、入力信号のＬＰＣ分析の残差であってもよい。ＬＰＣ分析の結果として、デコーダにおける対応するＬＰＣ合成によって生成されたようなデコードされた出力信号は、入力信号よりも強音であってもよく、または、入力信号よりも弱音であってもよい。入力信号のＬＰＣ分析によって生成された１組の係数（例えば、１組の反射係数またはフィルタ係数）を使用して、デコーダにおける合成フィルタを信号が通過するときに、信号がどのくらい強音にまたは弱音になることが予想されるかを一般的に示すＬＰＣ利得を計算してもよい。
【００５５】
１つの例では、ＬＰＣ利得は、ＬＰＣ分析によって生成された１組の反射係数に基づいている。このようなケースでは、以下のような数式にしたがって、ＬＰＣ利得を計算してもよく、ここで、ｋiは、ｉ番目の反射係数であり、ｐは、ＬＰＣ分析の次数である。
【数１１】
2013539068.tif 000013
【００５６】
別の例では、ＬＰＣ利得は、ＬＰＣ分析によって生成された１組のフィルタ係数に基づいている。このようなケースでは、（例えば、先に引用した文書Ｃ．Ｓ００１４−Ｄ ｖ３．０のセクション４．６．１．２（スペクトル遷移インジケータ（ＬＰＣＦＬＡＧ）の発生、４から４０頁まで、このセクションは、ＬＰＣ利得計算の例として参照によりここに組み込まれている）において記述されているような、）ＬＰＣ分析フィルタのインパルス応答のエネルギーとして、ＬＰＣ利得を計算してもよい。
【００５７】
ＬＰＣ利得が増加するときに、残差信号に注入されるノイズもまた増幅されることが予想される。さらに、高ＬＰＣ利得は、通常、信号が、擬似ノイズではなく、非常に相関している（例えば、調性を持つ）ことを示しており、注入されるノイズをこのような信号の残差に追加することは適切でないかもしれない。このようなケースでは、たとえ、スペクトルが、残差領域において非スパースであるように見える場合であっても、入力信号は強く調性を持っているかもしれず、このため、高いＬＰＣ利得は、調性の表示として考えられてもよい。
【００５８】
入力オーディオスペクトルに関係付けられているＬＰＣ利得の値にしたがって、ノイズ注入利得係数の値を変調するようにタスクＴ５００を実現することが望ましいかもしれない。例えば、ＬＰＣ利得が増加するにつれて、ノイズ注入利得係数の値を減少させるようにタスクＴ５００を構成することが望ましいことがある。タスクＴ５２０の低利得クリッピング動作に加えて、または、タスクＴ５２０の低利得クリッピング動作の代わりに、実行されてもよい、ノイズ注入利得係数のこのようなＬＰＣ利得ベースの制御は、ＬＰＣ利得中のフレーム間の変動を平滑化するのを支援し得る。
【００５９】
図７Ｂは、サブタスクＴ５１０、Ｔ５３０、および、Ｔ５４０を含むタスクＴ５００の実現Ｔ５０４のフローチャートを示す。タスクＴ５４０は、ＬＰＣ利得に基づいて、タスクＴ５３０によって生成された、変調されたノイズ注入利得係数に対する調整を実行する。図９Ａは、単調減少関数にしたがった、ＬＰＣ利得値ｇLPC（単位はデシベル）の、係数ｚの値へのマッピングの例を示す。この例では、係数ｚは、ＬＰＣ利得がｕよりも小さいときにゼロの値を有し、それ以外の場合では、（２−ｇLPC）の値を有する。このようなケースでは、タスクＴ５４０は、γni←１０z/20×γniのような数式にしたがって、タスクＴ５３０によって生成されたノイズ注入利得係数を調整するように実現されてもよい。図９Ｂは、ｕの値が２である特定の例に対するこのようなマッピングのプロットを示す。
【００６０】
図９Ｃは、ＬＰＣ利得値ｇLPC（単位はデシベル）が、単調減少関数にしたがって、利得調整係数ｆ2の値にマッピングされる、図９Ａにおいて示されたマッピングの異なる実現の例を示し、図９Ｄは、ｕの値が２である特定の例に対するこのようなマッピングのプロットを示す。図９Ｃおよび図９Ｄ中のプロットの軸は、対数である。このようなケースでは、タスクＴ５４０は、γni←ｆ2×γniのような数式にしたがって、タスクＴ５３０によって生成されたノイズ注入利得係数を調整するように実現されてもよい。ここで、ｆ2の値は、ＬＰＣ利得が２よりも大きいときに、１０（2−ｇLPC）/20であり、それ以外の場合では、１である。図８Ｅは、図９Ｂおよび図９Ｄにおいて示されているようなマッピングにしたがって、タスクＴ５４０を行うように実行されてもよい擬似コードリスティングを示す。タスクＴ５３０とＴ５４０のシーケンスが逆であるように（すなわち、タスクＴ５１０によって生成された初期値に対してタスクＴ５４０が実行され、タスクＴ５４０の結果に対してタスクＴ５３０が実行されるように）タスクＴ５００を実現してもよいことを当業者は認識するだろう。図７Ｃは、サブタスクＴ５１０、Ｔ５２０、Ｔ５３０、および、Ｔ５４０を含む、タスクＴ５０２ならびにＴ５０４の実現Ｔ５０６のフローチャートを示す。異なるシーケンスで実行されるタスクＴ５２０、Ｔ５３０、および／または、Ｔ５４０によって（例えば、タスクＴ５２０および／またはＴ５３０の上流でタスクＴ５４０が実行されることにより、ならびに／あるいは、タスクＴ５２０の上流でタスクＴ５３０が実行されることにより）、タスクＴ５００が実現されてもよいことを当業者は認識するだろう。
【００６１】
図１０Ｂは、サブタスクＴＤ１００、ＴＤ２００、および、ＴＤ３００を含む一般的なコンフィギュレーションにしたがった、ノイズ注入の方法Ｍ２００のフローチャートを示す。このような方法は、例えば、デコーダにおいて実行されてもよい。タスクＴＤ１００は、コード化された入力スペクトルにおける空要素の数と同じ長さのノイズベクトル（例えば、互いに独立で同一の分布に従う（ｉ．ｉ．ｄ）ガウスノイズのベクトル）を取得する（例えば、発生させる）。（例えば、コード化された信号の閉ループ分析をサポートするために、）デコーダにおいて発生される同じノイズベクトルが、エンコーダにおいても発生されていてもよいような、決定論的関数にしたがって、ノイズベクトルを発生させるようにタスクＴＤ１００を構成することが望ましいことがある。例えば、エンコードされた信号からの値（例えば、タスクＴ１００によって発生されたコードブックインデックス）によってシードされている乱数発生器を使用して、ノイズベクトルを発生させるようにタスクＴＤ１００を実現することが望ましいことがある。
【００６２】
タスクＴＤ１００は、ノイズベクトルをノーマライズするように構成されていてもよい。例えば、タスクＴＤ１００は、１に等しいノルム（すなわち、二乗の和）を有するようにノイズベクトルをスケーリングするように構成されていてもよい。タスクＴＤ１００はまた、（フレームのＬＰＣパラメータのような）何らかのサイド情報から導出されるか、または、コード化された入力スペクトルから直接導出されるかのいずれかであってもよい関数（例えば、スペクトル重み付け関数）にしたがって、ノイズベクトルに対してスペクトル整形動作を実行するように構成されていてもよい。例えば、タスクＴＤ１００は、ガウスノイズベクトルにスペクトル整形曲線を適用し、単位エネルギーを有するように結果をノーマライズするように、構成されていてもよい。
【００６３】
ノイズベクトルの所望のスペクトルの傾きを維持するためにスペクトル整形を実行することが望ましいことがある。１つの例では、タスクＴＤ１００は、ノイズベクトルにフォルマントフィルタを適用することによって、スペクトル整形を実行するように構成されている。このような動作は、ＬＰＣフィルタ係数によって示されているような、スペクトルのピークの周りに、より多くのノイズを集中させ、スペクトルの谷はそれと同じでないようにさせる傾向があり、これは、知覚的にわずかに好ましいことがある。
【００６４】
タスクＴＤ２００は、逆量子化されたノイズ注入利得係数をノイズベクトルに適用する。例えば、タスクＴＤ２００は、タスクＴ６００によって量子化されたノイズ注入利得係数を逆量子化するように、および、逆量子化されたノイズ注入利得係数によって、タスクＴＤ１００によって生成されたノイズベクトルをスケーリングするように、構成されていてもよい。
【００６５】
タスクＴＤ３００は、タスクＴＤ２００によって生成された、スケーリングされたノイズベクトルの要素を、コード化された入力スペクトルの対応する空要素に注入して、コード化され、ノイズ注入された、出力スペクトルを生成させる。例えば、タスクＴＤ３００は、逆量子化された信号ベクトルとして、コード化された入力スペクトルを取得するために、（例えば、タスクＴ１００によって生成されたような、）１つ以上のコードブックインデックスを逆量子化するように構成されていてもよい。１つの例では、タスクＴＤ３００は、逆量子化された信号ベクトルの一端と、スケーリングされたノイズベクトルの一端とにおいて開始して、逆量子化された信号ベクトルを横切るように実現され、逆量子化された信号ベクトルを横切る間に出会う各ゼロ値の要素に、スケーリングされたノイズベクトルの次の要素を注入する。別の例では、タスクＴＤ３００は、（例えば、タスクＴ２００を参照してここで説明したように）逆量子化された信号ベクトルからゼロ検出マスクを計算し、（例えば、要素ごとの乗算のような）スケーリングされたノイズベクトルにマスクを適用し、逆量子化された信号ベクトルに、結果として生じるマスクされたノイズベクトルを追加するように構成されている。
【００６６】
先に述べたように、ノイズ注入方法（例えば、方法Ｍ１００およびＭ２００）は、パルスコード化された信号のエンコーディングおよびデコーディングに適用されてもよい。しかしながら、一般に、このようなノイズ注入は、後処理動作として、または、バックエンド動作として、スペクトルの領域がゼロに設定されているコード化された結果を生成させる任意のコーディングスキームに一般的に適用されてもよい。例えば、（方法Ｍ２００の対応する実現とともに）方法Ｍ１００のこのような実現は、ここで説明したような、依存モードコーディングスキームまたはハーモニックコーディングスキームの残差をパルスコーディングした結果に、あるいは、残差がゼロに設定されている、このような依存モードコーディングスキームまたはハーモニックコーディングスキームの出力に、適用されてもよい。
【００６７】
オーディオ信号の各フレームのエンコーディングは、通常、フレームを、複数のサブバンドに分割すること（すなわち、ベクトルとしてのフレームを、複数のサブベクトルに分割すること）と、各サブベクトルにビット割当を割り当てることと、各サブベクトルを、対応する割り当てられた数のビットにエンコードすることとを含む。例えば、典型的なオーディオコーディングアプリケーションでは、各フレームに対する、大きな数の（例えば、１０個、２０個、３０個、または、４０個の）異なるサブバンドベクトルに対してベクトル量子化を実行することが望ましいことがある。フレームサイズの例は、（これらに限定されないが）１００個、１２０個、１４０個、１６０個、および、１８０個の値（例えば、変換係数）を含み、サブバンドの長さの例は、（これらに限定されないが）５、６、７、８、９、１０、１１、１２、および、１６を含む。
【００６８】
装置Ａ１００の実現を含む、または、そうでなければ、方法Ｍ１００を実行するように構成されている、オーディオエンコーダは、変換領域中のサンプルとして（例えば、ＭＤＣＴ係数またはＦＦＴ係数のような、変換係数として）オーディオ信号のフレーム（例えば、ＬＰＣ残差）を受け取るように構成されていてもよい。このようなエンコーダは、予め定められた分割スキーム（すなわち、フレームが受信される前にデコーダに知られている固定分割スキーム）にしたがって、変換係数を１組のサブベクトルにグループ化し、利得−形状ベクトル量子化スキームを使用して、各サブベクトルをエンコードすることによって、各フレームをエンコードするように実現されてもよい。サブベクトルは、オーバーラップしていてもよいが、オーバーラップしていなくてもよく、互いに離れてさえいてもよい（ここで説明する特定の例では、ゼロないし４ｋＨｚのローバンドと、３．５ないし７ｋＨｚのハイバンドとの間の説明したようなオーバーラップを除いて、サブベクトルはオーバーラップしない）。各入力ベクトルが同じ方法で分割されるように、この分割は予め定められていてもよい（例えば、ベクトルのコンテンツから独立していてもよい）。
【００６９】
このような予め定められた分割スキームの１つの例では、１００の要素の各入力ベクトルは、それぞれの長さ（２５、３５、４０）の３個のサブベクトルに分割される。予め定められた分割の別の例は、１４０の要素の入力ベクトルを、長さ７の、２０個のサブベクトルの組に分割する。予め定められた分割のさらなる例は、２８０の要素の入力ベクトルを、長さ７の、４０個のサブベクトルの組に分割する。このようなケースでは、装置Ａ１００または方法Ｍ１００は、別々の入力信号ベクトルとして、サブベクトルのうちの２つ以上のそれぞれを受信し、これらのサブベクトルのそれぞれに対する別々のノイズ注入利得係数を計算するように構成されていてもよい。異なるサブベクトルを同時に処理するように構成されている装置Ａ１００または方法Ｍ１００の複数の実現もまた考えられる。
【００７０】
オーディオ信号の低ビットレートコーディングは、オーディオ信号フレームのコンテンツをコード化するのに利用可能なビットの最適な利用を要望することが多い。エンコードされることになる信号内のかなりのエネルギーの領域を識別することが望ましいかもしれない。このような領域を、信号の他の部分から分けることにより、増加したコーディング効率のための、これらの領域をターゲットとしたコーディングが可能になる。例えば、このような領域をエンコードするための、比較的多いビットと、信号の他の領域をエンコードするための、比較的少ないビット（または、ビットなしのことさえある）を使用することによって、コーディング効率を増加させることが望ましいかもしれない。このようなケースでは、これらの他の領域に対して方法Ｍ１００を実行することが望ましいことがある。その理由は、これらのコード化されたスペクトルは、通常、かなりの数のゼロ値の要素を含んでいるためである。
【００７１】
代替的に、この分割は、可変であってもよく、それにより、入力ベクトルは、（例えば、何らかの知覚基準にしたがって）１つのフレームから次のフレームに異なって分割される。例えば、信号の高調波成分の、検出およびターゲットとされるコーディングによって、オーディオ信号の効率的な変換領域コーディングを実行するのが望ましいことがある。図１１は、大きさ対周波数のプロットを示しており、このプロットにおいて、ローバンドの線形予測コーディング（ＬＰＣ）残差信号の調和的に間隔を置いたピークに対応する、長さ７の８個の選択されたサブバンドが、周波数軸の近くのバーによって示されている。このようなケースでは、選択されたサブバンドの位置は、２つの値を使用してモデリングされてもよい：基本周波数Ｆ０を表す第１の選択された値と、周波数領域中の隣接するピーク間の間隔を表す第２の選択された値である。図１２は、選択されたサブバンドの間と外側に横たわる残差成分を示すハイバンドＬＰＣ残差信号に対する類似の例を示す。このようなケースでは、残差成分に対して（例えば、各残差成分に対して別々に、ならびに／あるいは、残差成分のうちの２つ以上の、および、場合によってはすべての連結に対して）方法Ｍ１００を実行することが望ましいことがある。（フレームのハイバンド領域中のピークの位置が、同じフレームのローバンド領域のコード化されたバージョン中のピークの位置に基づいてモデリングされるケースを含む）ハーモニックモデリングおよびハーモニックモードコーディングの追加の説明は、本願が優先権を主張する先にリストアップした出願において見出すことができる。
【００７２】
可変分割スキームの別の例は、前のフレームであってもよい別のフレーム（参照フレームとも呼ばれる）のコード化されたバージョンにおける知覚的に重要なサブバンドの位置に基づいて、現在のフレーム（ターゲットフレームとも呼ばれる）における１組の知覚的に重要なサブバンドを識別する。図１０Ａは、そのようなコーディングスキームにおけるサブバンド選択動作の例を示す。高調波コンテンツを有するオーディオ信号（例えば、音楽の信号、音声化されたスピーチ信号）に対して、所定の時間における周波数領域中のかなりのエネルギーの領域の位置は、経時的に、相対的に持続的であってもよい。このような経時的な相関を活用することによって、オーディオ信号の効率的な変換領域コーディングを実行するのが望ましいことがある。このような１つの例では、デコードされている前のフレームの対応する知覚的に重要なサブバンドに、エンコードされることになるフレームの知覚的に重要な（例えば、高エネルギーの）サブバンドを一致させるために、ダイナミックなサブバンド選択スキーム（“依存モードコーディング”とも呼ばれる）が使用される。このようなケースでは、選択されたサブバンドの間と外側に横たわる残差成分に対して（例えば、各残差成分に対して別々に、ならびに／あるいは、残差成分のうちの２つ以上の、および、場合によってはすべての連結に対して）方法Ｍ１００を実行するのが望ましいことがある。特定の適用では、線形予測コーディング（ＬＰＣ）動作の残差のような、オーディオ信号のゼロないし４ｋＨｚの範囲に対応するＭＤＣＴ変換係数をエンコードするために、このようなスキームが使用される。依存モードコーディングの追加の説明は、本願が優先権を主張する先にリストアップした出願において見出すことができる。
【００７３】
残差信号の別の例は、（例えば、上述したダイナミックな選択スキームのいずれかにしたがって選択されたような）１組の選択されたサブバンドをコード化し、オリジナル信号から、コード化された組を減算することによって取得される。このようなケースでは、残差信号のすべてまたは一部に対して方法Ｍ１００を実行するのが望ましいことがある。例えば、残差信号ベクトル全体に対して方法Ｍ１００を実行すること、または、予め定められた分割スキームにしたがってサブベクトルに分割されることがある残差信号のうちの１つ以上のサブベクトルの各々に対して、別々に方法Ｍ１００を実行することが、望ましいことがある。
【００７４】
図１３Ａは、一般的なコンフィギュレーションにしたがった、オーディオ信号を処理するための装置ＭＦ１００のブロックダイヤグラムを示す。（例えば、タスクＴ１００の実現を参照してここで説明したように、）装置ＭＦ１００は、オーディオ信号からの情報に基づいて、コードブックの複数のエントリの中から１つを選択する手段ＦＡ１００を備える。（例えば、タスクＴ２００の実現を参照してここで説明したように、）装置ＭＦ１００は、選択したコードブックエントリに基づいている第１の信号のゼロ値の要素の、周波数領域中での位置を決定する手段ＦＡ２００も備える。（例えば、タスクＴ３００の実現を参照してここで説明したように、）装置ＭＦ１００は、決定した周波数領域位置におけるオーディオ信号のエネルギーを計算する手段ＦＡ３００も備える。（例えば、タスクＴ４００の実現を参照してここで説明したように、）装置ＭＦ１００は、決定した周波数領域位置におけるオーディオ信号のエネルギーの分布の測度の値を計算する手段ＦＡ４００も備える。（例えば、タスクＴ５００の実現を参照してここで説明したように、）装置ＭＦ１００は、前記計算したエネルギーと、前記計算した値とに基づいて、ノイズ注入利得係数を計算する手段ＦＡ５００も備える。
【００７５】
図１３Ｂは、ベクトル量子化器１００と、ゼロ値検出器２００と、エネルギー計算器３００と、スパース性計算器４００と、利得係数計算器５００とを備える、一般的なコンフィギュレーションにしたがった、オーディオ信号Ａ１００を処理する装置のブロックダイヤグラムを示す。（例えば、タスクＴ１００の実現を参照してここで説明したように、）ベクトル量子化器１００は、オーディオ信号からの情報に基づいて、コードブックの複数のエントリの中から１つを選択するように構成されている。（例えば、タスクＴ２００の実現を参照してここで説明したように、）ゼロ値検出器２００は、選択したコードブックエントリに基づいている第１の信号のゼロ値の要素の、周波数領域中での位置を決定するように構成されている。（例えば、タスクＴ３００の実現を参照してここで説明したように、）エネルギー計算器３００は、決定した周波数領域位置におけるオーディオ信号のエネルギーを計算するように構成されている。（例えば、タスクＴ４００の実現を参照してここで説明したように、）スパース性計算器４００は、決定した周波数領域位置におけるオーディオ信号のエネルギーの分布の測度の値を計算するように構成されている。（例えば、タスクＴ５００の実現を参照してここで説明したように、）利得係数計算器５００は、前記計算したエネルギーと、前記計算した値とに基づいて、ノイズ注入利得係数を計算するように構成されている。（例えば、タスクＴ６００の実現を参照してここで説明したように、）装置Ａ１００はまた、利得係数計算器５００によって生成されたノイズ注入利得係数を量子化するように構成されているスカラ量子化器を備えるように実現されてもよい。
【００７６】
図１０Ｃは、一般的なコンフィギュレーションにしたがった、ノイズ注入のための装置ＭＦ２００のブロックダイヤグラムを示す。（例えば、タスクＴＤ１００を参照してここで説明したように、）装置ＭＦ２００は、ノイズベクトルを取得する手段ＦＤ１００を備える。（例えば、タスクＴＤ２００を参照してここで説明したように、）装置ＭＦ２００は、逆量子化されたノイズ注入利得係数をノイズベクトルに適用する手段ＦＤ２００も備える。（例えば、タスクＴＤ３００を参照してここで説明したように、）装置ＭＦ２００は、コード化されたスペクトルの空要素に、スケーリングされたノイズベクトルを注入する手段ＦＤ３００も備える。
【００７７】
図１０Ｄは、ノイズ発生器Ｄ１００と、スケーラＤ２００と、ノイズ注入器Ｄ３００とを備える、一般的なコンフィギュレーションにしたがった、ノイズ注入のための装置Ａ２００のブロックダイヤグラムを示す。（例えば、タスクＴＤ１００を参照してここで説明したように、）ノイズ発生器Ｄ１００は、ノイズベクトルを取得するように構成されている。（例えば、タスクＴＤ２００を参照してここで説明したように、）スケーラＤ２００は、逆量子化されたノイズ注入利得係数をノイズベクトルに適用するように構成されている。例えば、スケーラＤ２００は、ノイズベクトルの各要素を、逆量子化されたノイズ注入利得係数と乗算するように構成されていてもよい。（例えば、タスクＴＤ３００を参照してここで説明したように、）ノイズ注入器Ｄ３００は、コード化されたスペクトルの空要素に、スケーリングされたノイズベクトルを注入するように構成されている。１つの例では、ノイズ注入器Ｄ３００は、逆量子化された信号ベクトルの一端と、スケーリングされたノイズベクトルの一端とにおいて開始して、逆量子化された信号ベクトルを横切るように実現され、逆量子化された信号ベクトルを横切る間に出会う各ゼロ値の要素に、スケーリングされたノイズベクトルの次の要素を注入する。別の例では、ノイズ注入器Ｄ３００は、（例えば、タスクＴ２００を参照してここで説明したように）逆量子化された信号ベクトルからゼロ検出マスクを計算し、（例えば、要素ごとの乗算のような）スケーリングされたノイズベクトルにマスクを適用し、逆量子化された信号ベクトルに、結果として生じるマスクされたノイズベクトルを追加するように構成されている。
【００７８】
図１４は、ＭＤＣＴ領域中のサンプル（すなわち、変換領域係数）として、オーディオフレームＳＭ１０を受け取り、対応するエンコードされたフレームＳＥ２０を生成させるように構成されているエンコーダＥ２０のブロックダイヤグラムを示す。エンコーダＥ２０は、（例えば、ＧＳＶＱのような、ＶＱスキームにしたがって、）フレームの複数のサブバンドをエンコードするように構成されているサブバンドエンコーダＢＥ１０を含む。コード化されたサブバンドは、入力フレームから減算されて、（残差とも呼ばれる）エラー信号ＥＳ１０が生成され、エラー信号ＥＳ１０は、エラーエンコーダＥＥ１０によってエンコードされる。エラーエンコーダＥＥ１０は、ここで説明したようなパルスコーディングスキームを使用して、エラー信号ＥＳ１０をエンコードして、ノイズ注入利得係数を計算するためのここで説明したような方法Ｍ１００の実現を実行するように、構成されていてもよい。コード化されたサブバンドと、（計算されたノイズ注入利得係数の表現を含む）コード化されたエラー信号とが組み合わされて、エンコードされたフレームＳＥ２０が取得される。
【００７９】
図１５ＡないしＥは、（例えば、ハーモニックコーディングスキームまたは依存モードコーディングスキームのような、あるいは、エンコーダＥ２０の実現のような、ここで説明したエンコーディングスキームのいずれかを実行することによって、）変換領域中の信号をエンコードするために実現され、ここで説明したような方法Ｍ１００の具体例を実行するようにも構成されているエンコーダＥ１００に対する適用の範囲を示している。図１５Ａは、変換モジュールＭＭ１（例えば、高速フーリエ変換またはＭＤＣＴモジュール）と、変換領域におけるサンプルとして（すなわち、変換領域係数として）オーディオフレームＳＡ１０を受け取って、対応する、エンコードされたフレームＳＥ１０を生成させるように構成されているエンコーダＥ１００の具体例とを含む、オーディオ処理パスのブロックダイヤグラムを示す。
【００８０】
図１５Ｂは、変換モジュールＭＭ１がＭＤＣＴ変換モジュールを使用して実現される、図１５Ａのパスの実現のブロックダイヤグラムを示す。修正ＤＣＴモジュールＭＭ１０は、各オーディオフレームに対して、ここで説明したようなＭＤＣＴ動作を実行して、１組のＭＤＣＴ領域係数を生成させる。
【００８１】
図１５Ｃは、線形予測コーディング分析モジュールＡＭ１０を含む、図１５Ａのパスの実現のブロックダイヤグラムを示している。線形予測コーディング（ＬＰＣ）分析モジュールＡＭ１０は、分類されたフレームに対してＬＰＣ分析動作を実行して、１組のＬＰＣパラメータ（例えば、フィルタ係数）と、ＬＰＣ残差信号とを生成させる。１つの例において、ＬＰＣ分析モジュールＡＭ１０は、ゼロから４０００Ｈｚの帯域幅を有するフレームに対して１０次ＬＰＣ分析を実行するように構成されている。別の例において、ＬＰＣ分析モジュールＡＭ１０は、３５００から７０００Ｈｚまでのハイバンド周波数範囲を表すフレームに対して６次ＬＰＣ分析を実行するように構成されている。修正ＤＣＴモジュールＭＭ１０は、ＬＰＣ残差信号に対してＭＤＣＴ動作を実行して、１組の変換領域係数を生成させる。対応するデコーディングパスは、エンコードされたフレームＳＥ１０をデコードし、デコードしたフレームに対してＭＤＣＴ逆変換を実行して、ＬＰＣ合成フィルタへの入力に対する励振信号を取得するように構成されていてもよい。
【００８２】
図１５Ｄは、信号分類器ＳＣ１０を含む処理パスのブロックダイヤグラムを示す。信号分類器ＳＣ１０は、オーディオ信号のフレームＳＡ１０を受け取って、各フレームを、少なくとも２つのカテゴリのうちの１つに分類する。例えば、信号分類器ＳＣ１０は、スピーチまたは音楽としてフレームＳＡ１０を分類するように構成されていてもよく、それにより、フレームが音楽として分類された場合、図１５Ｄ中で示されているパスの残りは、それをエンコードするために使用され、フレームがスピーチとして分類された場合には、異なる処理パスが、それをエンコードするために使用される。このような分類は、信号アクティビティ検出、ノイズ検出、周期性検出、時間領域スパース性検出、および／または、周波数領域スパース性検出を含んでもよい。
【００８３】
図１６Ａは、（例えば、オーディオフレームＳＡ１０のそれぞれに対して）信号分類機ＳＣ１０によって実行してもよい、信号分類の方法ＭＺ１００のブロックダイヤグラムを示す。方法ＭＣ１００は、タスクＴＺ１００、ＴＺ２００、ＴＺ３００、ＴＺ４００、ＴＺ５００、および、ＴＺ６００を含む。タスクＴＺ１００は、信号中のアクティビティのレベルを定量化する。アクティビティのレベルがしきい値を下回る場合に、タスクＴＺ２００が、（例えば、低ビットレートのノイズ励振線形予測（ＮＥＬＰ）スキームおよび／または不連続送信（ＤＴＸ）スキームを使用して）サイレンスとして信号をエンコードする。アクティビティのレベルが、十分に高い（例えば、しきい値を上回る）場合には、タスクＴＺ３００は、信号の周期性の程度を定量化する。タスクＴＺ３００が、信号が周期的でないことを決定した場合に、タスクＴＺ４００が、ＮＥＬＰスキームを使用して信号をエンコードする。タスクＴＺ３００が、信号が周期的であることを決定した場合に、タスクＴＺ５００が、時間および／または周波数領域における信号のスパース性の程度を定量化する。タスクＴＺ５００が、信号が時間領域においてスパースであることを決定した場合に、タスクＴＺ６００が、リラックストＣＥＬＰ（ＲＣＥＬＰ）または代数ＣＥＬＰ（ＡＣＥＬＰ）のような、コード励振線形予測（ＣＥＬＰ）スキームを使用して信号をエンコードする。タスクＴＺ５００が、信号が周波数領域においてスパースであることを決定した場合に、タスクＴＺ７００が、（例えば、図１５Ｄ中の処理パスの残りに信号をパスすることによって）ハーモニックモデル、依存モード、または、エンコーダＥ２０を参照して説明したようなスキームを使用して信号をエンコードする。
【００８４】
図１５Ｄ中で示されているように、処理パスは、知覚刈込モジュールＰＭ１０を含んでいてもよく、知覚刈込モジュールＰＭ１０は、時間マスキング、周波数マスキング、および／または、聴覚しきい値のような、音響心理的な基準を適用することによって、ＭＤＣＴ領域信号を簡単にする（例えば、エンコードされることになる変換領域係数の数を低減させる）ように構成されている。モジュールＰＭ１０は、知覚モデルをオリジナルのオーディオフレームＳＡ１０に適用することによって、このような基準に対する値を計算するように実現されてもよい。この例において、エンコーダＥ１００は、刈込まれたフレームをエンコードして、対応するエンコードされたフレームＳＥ１０を生成させるように構成されている。
【００８５】
図１５Ｅは、図１５Ｃおよび図１５Ｄのパスの双方の実現のブロックダイヤグラムを示し、図１５Ｃおよび図１５Ｄにおいて、エンコーダＥ１００は、ＬＰＣ残差をエンコードするように構成されている。
【００８６】
図１６Ｂは、装置Ａ１００の実現を含む通信デバイスＤ１０のブロックダイヤグラムを示す。デバイスＤ１０は、装置Ａ１００（またはＭＦ１００）のエレメントと、場合によっては、装置Ａ２００（またはＭＦ２００）のエレメントとを具現化する、チップまたはチップセットＣＳ１０（例えば、移動局モデム（ＭＳＭ）チップセット）を含む。チップ／チップセットＣＳ１０は、（例えば、命令のような、）装置Ａ１００あるいはＭＦ１００のソフトウェアおよび／またはファームウェアの部分を実行するように構成されていてもよい１つ以上のプロセッサを備えてもよい。
【００８７】
チップ／チップセットＣＳ１０は、無線周波数（ＲＦ）通信信号を受信し、ＲＦ信号内でエンコードされているオーディオ信号をデコードして再生するように構成されている受信機と、マイクロフォンＭＶ１０によって生成された信号に基づいているエンコードされたオーディオ信号（例えば、装置Ａ１００によって生成されるようなノイズ注入利得係数の表現を含む）を記述するＲＦ通信信号を送信するように構成されている送信機とを備える。このようなデバイスは、１つ以上のエンコーディングおよびデコーディングスキーム（“コーデック”とも呼ばれる）を介して、ワイヤレスに音声通信データを送受信するように構成されていてもよい。このようなコーデックの例は、“ワイドバンド拡散スペクトルデジタルシステムに対する、エンハンスト可変レートコーデック、スピーチサービスオプション３、６８および７０”（２００７年２月（ｗｗｗ−ｄｏｔ−３ｇｐｐ−ｄｏｔ−ｏｒｇにおいてオンラインで利用可能））と題する第３世代パートナーシッププロジェクト２（３ＧＰＰ２）文書Ｃ．Ｓ００１４−Ｃ、ｖ１．０中で記述されているようなエンハンスト可変レートコーデックと、“ワイドバンド拡散スペクトル通信システムに対する、選択可能なモードボコーダ（ＳＭＶ）サービスオプション”（２００４年１月（ｗｗｗ−ｄｏｔ−３ｇｐｐ−ｄｏｔ−ｏｒｇにおいてオンラインで利用可能））と題する３ＧＰＰ２文書Ｃ．Ｓ００３０−０、ｖ３．０中で記述されているような選択可能なモードボコーダスピーチコーデックと、文書ＥＴＳＩ ＴＳ １２６ ０９２ Ｖ６．０．０（欧州電気通信標準化機構（ＥＴＳＩ）、ソフィアアンチポリス、Ｃｅｄｅｘ、フランス、２００４年１２月）中で記述されているような、適応型マルチレート（ＡＭＲ）スピーチコーデックと、文書ＥＴＳＩ ＴＳ １２６ １９２ Ｖ６．０．０（ＥＴＳＩ、２００４年１２月）中で記述されているような、ＡＭＲワイドバンドスピーチコーデックとを含む。例えば、チップまたはチップセットＣＳ１０は、このような１つ以上のコーデックに準拠されるエンコードされたフレームを生成させるように構成されていてもよい。
【００８８】
デバイスＤ１０は、アンテナＣ３０を介してＲＦ通信信号を受信および送信するように構成されている。デバイスＤ１０はまた、アンテナＣ３０へのパス中に、ダイプレクサーおよび１つ以上の電力増幅器を含んでいてもよい。チップ／チップセットＣＳ１０はまた、キーパッドＣ１０を介してユーザ入力を受け取り、ディスプレイＣ２０を介して情報を表示するように構成されている。この例では、デバイスＤ１０はまた、グローバルポジショニングシステム（ＧＰＳ）ロケーションサービス、および／または、ワイヤレス（例えば、ブルートゥース（登録商標））ヘッドセットのような外部デバイスとの短距離通信をサポートする１つ以上のアンテナＣ４０を備える。別の例では、このような通信デバイスは、ブルートゥースヘッドセットそのものであり、キーパッドＣ１０、ディスプレイＣ２０、および、アンテナＣ３０を欠く。
【００８９】
通信デバイスＤ１０は、スマートフォンと、ラップトップおよびタブレットコンピュータとを含む、さまざまな通信デバイスにおいて具現化されてもよい。図１７は、ハンドセットＨ１００（例えば、スマートフォン）の、正面図、背面図、および、側面図を示し、ハンドセットＨ１００は、正面に配置された２つの音声マイクロフォンＭＶ１０−１およびＭＶ１０−３と、背面に配置された音声マイクロフォンＭＶ１０−２と、正面の上部角に位置しているエラーマイクロフォンＭＥ１０と、背面上に位置しているノイズ参照マイクロフォンＭＲ１０とを有する。ラウドスピーカーＬＳ１０が、エラーマイクロフォンＭＥ１０の近くの正面の上部中央に配置されており、他の２つのラウドスピーカーＬＳ２０Ｌ、ＬＳ２０Ｒもまた（例えば、スピーカーフォン適用のために）提供されている。このようなハンドセットのマイクロフォン間の最大距離は、通常、約１０または１２センチメートルである。
【００９０】
ここで開示した方法および装置は、一般に、任意の送受信アプリケーションおよび／またはオーディオ感知アプリケーション、特に、このようなアプリケーションの、移動またはそうでなければポータブルの具体例において適用され得る。例えば、ここで開示した構成の範囲は、エアインターフェースによってコード分割多元接続（ＣＤＭＡ）を用いるように構成されているワイヤレス電話通信システム中に存在する通信デバイスを含む。しかしながら、ここで記述した特徴を有する方法および装置は、ワイヤードおよび／またはワイヤレスの（例えば、ＣＤＭＡ、ＴＤＭＡ、ＦＤＭＡ、および／またはＴＤ−ＳＣＤＭＡ）送信チャネルによってボイスオーバＩＰ（ＶｏＩＰ）を用いるシステムのような、当業者に知られている広範囲の技術を用いるさまざまな通信システムのいずれかに存在してもよいことが、当業者によって理解されるだろう。
【００９１】
ここで開示した通信デバイスは、パケット交換であるネットワーク（例えば、ＶｏＩＰのようなプロトコルにしたがって、オーディオ送信を搬送するように構成されているワイヤードおよび／またはワイヤレスのネットワーク）および／または回路交換であるネットワークにおける使用に適合されていてもよいことが、特に考察され、ここに開示されている。ここで開示した通信デバイスは、全バンドのワイドバンドコーディングシステムおよび分割バンドのワイドバンドコーディングシステムを含む、ナローバンドコーディングシステム（例えば、約４または５キロヘルツのオーディオ周波数範囲エンコードするシステム）における使用に対して、および／または、ワイドバンドコーディングシステム（例えば、５キロヘルツよりも大きいオーディオ周波数をエンコードするシステム）における使用に対して適合されていてもよい。
【００９２】
記述した構成の提示は、当業者が、ここで開示した方法および他の構造を実施または使用できるように提供されている。ここで示し、記述したフローチャート、ブロックダイヤグラムおよび他の構造は、例に過ぎず、これらの構造の他の変形もまた、本開示の範囲内である。これらの構成へのさまざまな修正が可能であり、ここで与えた一般的な原理を、同様に他の構成に適用してもよい。したがって、本開示は、先に示した構成に限定されるように向けられておらず、むしろ、元の開示の一部を形成する添付の特許請求の範囲におけるものを含む、ここでの何らかの型で開示した原理および新規な特徴に一致する最も広い範囲に一致すべきである。
【００９３】
さまざまな異なる技術および技法のいずれかを使用して情報および信号を表わしてもよいことを、当業者は理解するであろう。例えば、電圧、電流、電磁波、磁界または磁気粒子、光領域または光粒子、あるいはそれらの任意の組み合わせにより、上の記述を通して参照されているデータ、命令、コマンド、情報、信号、ビットおよびシンボルを表わしてもよい。
【００９４】
ここで開示したような構成の実現に対する重要な設計要件は、特に、圧縮されたオーディオまたはオーディオヴィジュアル情報（例えば、ここで識別された例のうちの１つのような、圧縮フォーマットにしたがってエンコードされるファイルまたはストリーム）の再生のような、計算集約型のアプリケーション、あるいは、ワイドバンド通信に対するアプリケーション（例えば、１２、１６、４４．１、４８または１９２ｋＨｚのような、８キロヘルツよりも高いサンプリングレートでの音声通信）に対して、（通常、秒当たりの百万命令すなわちＭＩＰＳで測定される）処理の遅延および／または計算の複雑さを最小化することを含む。
【００９５】
ここで開示したような装置（例えば、装置Ａ１００およびＭＦ１００）は、意図された適用に適していると思われる、ソフトウェアとハードウェアの任意の組み合わせおよび／またはファームウェアとハードウェアの任意の組み合わせにおいて、実現されてもよい。例えば、このような装置のエレメントは、例えば、同じチップ上にまたはチップセット中の２つ以上のチップ間に存在する、電子デバイスならびに／あるいは光デバイスとして組み立てられてもよい。このようなデバイスの１つの例は、トランジスタまたは論理ゲートのような、論理エレメントの固定アレイまたはプログラム可能アレイであり、これらのエレメントのうちの任意のものが、１つ以上のこのようなアレイとして実現されてもよい。これらのエレメントのうちの任意の２つ以上が、または、これらのエレメントのすべてでさえも、同じアレイ内で実現されてもよい。このようなアレイは、１つ以上のチップ内で（例えば、２つ以上のチップを含むチップセット内で）実現されてもよい。
【００９６】
ここで開示した装置（例えば、装置Ａ１００およびＭＦ１００）のさまざまな実現の１つ以上のエレメントは、その全体または一部が、マイクロプロセッサと、埋め込みプロセッサと、ＩＰコアと、デジタル信号プロセッサと、ＦＰＧＡ（フィールドプログラム可能ゲートアレイ）と、ＡＳＳＰ（特定用途向け標準品）と、ＡＳＩＣ（特定用途向け集積回路）とのような、論理エレメントの１つ以上の固定アレイまたはプログラム可能アレイ上で実行するように構成されている１つ以上の組の命令として実現されてもよい。ここで開示したような装置の実現のさまざまなエレメントの任意のものはまた、１つ以上のコンピュータ（例えば、“プロセッサ”とも呼ばれる、１つ以上の組の命令または１つ以上のシーケンスの命令を実行するようにプログラムされている１つ以上のアレイを含むマシン）として具現化されてもよく、これらのエレメントのうちの任意の２つ以上、または、これらのエレメントのすべてでさえも、このような同じコンピュータ内で実現されてもよい。
【００９７】
ここで開示したように処理するプロセッサまたは他の手段は、例えば、同じチップ上にまたはチップセット中の２つ以上のチップ間に存在する、１つ以上の電子デバイスならびに／あるいは光デバイスとして組み立てられてもよい。このようなデバイスの１つの例は、トランジスタまたは論理ゲートのような、論理エレメントの固定アレイまたはプログラム可能アレイであり、このようなエレメントの任意のものが、１つ以上のこのようなアレイとして実現されてもよい。このようなアレイは、１つ以上のチップ内で（例えば、２つ以上のチップを含むチップセット内で）実現されてもよい。このようなアレイの例は、マイクロプロセッサと、埋め込みプロセッサと、ＩＰコアと、ＤＳＰと、ＦＰＧＡと、ＡＳＳＰと、ＡＳＩＣとのような、論理エレメントの固定アレイまたはプログラム可能アレイを含む。ここで開示したように処理するプロセッサまたは他の手段はまた、１つ以上のコンピュータ（例えば、１つ以上の組の命令または１つ以上のシーケンスの命令を実行するようにプログラムされている１つ以上のアレイを含むマシン）あるいは他のプロセッサとして具現化されてもよい。タスクを実行するために、あるいは、プロセッサがその中に組み込まれているデバイスまたはシステム（例えば、オーディオセンシングデバイス）の別の動作に関連するタスクのような、方法Ｍ１００またはＭＤ１００の実現の手順に直接関連しない他の組の命令を実行するために、ここで説明したようなプロセッサを使用することが可能である。ここで開示したような方法の一部を、オーディオセンシングデバイスのプロセッサによって実行し、方法の別の部分を、１つ以上の他のプロセッサの制御下で実行することも可能である。
【００９８】
さまざまな例示的なモジュール、論理ブロック、回路、および、テスト、ならびに、ここで開示したコンフィギュレーションに関連して説明した他の動作が、電子ハードウェア、コンピュータソフトウェア、あるいは、双方の組み合わせたものとして実現されてもよいことを当業者は正しく認識するだろう。このようなモジュール、論理ブロック、回路、および、動作は、汎用プロセッサ、デジタル信号プロセッサ（ＤＳＰ）、ＡＳＩＣまたはＡＳＳＰ、ＦＰＧＡまたは他のプログラム可能論理デバイス、ディスクリートゲートまたはトランジスタ論理、ディスクリートハードウェアコンポーネント、あるいは、ここで開示したようなコンフィギュレーションを生成させるように設計されたこれらの任意の組み合わせによって、実現または実行されてもよい。例えば、このようなコンフィギュレーションは、ハードワイヤード回路として、特定用途向け集積回路中に組み立てられる回路コンフィギュレーションとして、あるいは、不揮発性記憶装置中にロードされるファームウェアプログラムまたは機械読取可能コードとしてデータ記憶媒体からロードされるか、機械読取可能コードとしてデータ記憶媒体中にロードされるソフトウェアプログラムとして、少なくとも部分的に実現されてもよく、このようなコードは、汎用プロセッサまたは他のデジタル信号処理ユニットのような、論理エレメントのアレイによって実行可能な命令である。汎用プロセッサは、マイクロプロセッサであってもよいが、代替実施形態では、プロセッサは、何らかの従来のプロセッサ、制御装置、マイクロ制御装置、または、状態機械であってもよい。プロセッサはまた、コンピューティングデバイスの組み合わせとして、例えば、ＤＳＰとマイクロプロセッサの組み合わせ、複数のマイクロプロセッサ、ＤＳＰコアを備えた１つ以上のマイクロプロセッサ、または、このようなコンフィギュレーションの他の何らかのものとして実現されてもよい。ソフトウェアモジュールは、ＲＡＭ（ランダムアクセスメモリ）、ＲＯＭ（リードオンリーメモリ）、フラッシュＲＡＭのような不揮発性ＲＡＭ（ＮＶＲＡＭ）、消去可能プログラム可能ＲＯＭ（ＥＰＲＯＭ）、電気的消去可能プログラム可能ＲＯＭ（ＥＥＰＲＯＭ）、レジスタ、ハードディスク、リムーバブルディスク、または、ＣＤ−ＲＯＭ、あるいは、技術的に知られている他の何らかの形態の記憶媒体のような、一時的でない記憶媒体に存在してもよい。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができるように、プロセッサに結合されてもよい。代替実施形態では、記憶媒体はプロセッサと一体化されてもよい。プロセッサおよび記憶媒体は、ＡＳＩＣに存在してもよい。ＡＳＩＣは、ユーザ端末に存在してもよい。代替実施形態では、プロセッサおよび記憶媒体は、ユーザ端末中にディスクリートコンポーネントとして存在してもよい。
【００９９】
プロセッサのような論理エレメントのアレイによって、ここで開示したさまざまな方法（例えば、ここで説明したさまざまな装置の動作を参照して開示した方法Ｍ１００および他の方法の実現）が、実行されてもよいことに、ならびに、ここで説明したような装置のさまざまなエレメントが、このようなアレイ上で実行するように設計されているモジュールとして実現されてもよいことに、留意されたい。ここで使用したような、“モジュール”または“サブモジュール”という用語は、ソフトウェアの形で、ハードウェアの形で、または、ファームウェアの形で、コンピュータ命令（例えば、論理式）を含む、任意の方法、装置、デバイス、ユニット、または、コンピュータ読取可能データ記憶媒体のことを指すことができる。複数のモジュールまたはシステムを組み合わせて１つのモジュールまたはシステムにすることができ、１つのモジュールまたはシステムを、同じ機能を実行する複数のモジュールまたはシステムに分けることができることを理解すべきである。ソフトウェアまたは他のコンピュータ実行可能命令で実現されるときに、プロセスのエレメントは、本質的に、例えば、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造、および、これらに類似するものによって、関連するタスクを実行するコードセグメントである。“ソフトウェア”という用語は、ソースコードと、アセンブリ言語コードと、マシンコードと、バイナリコードと、ファームウェアと、マクロコードと、マイクロコードと、論理エレメントのアレイによって実行可能な任意の１つ以上の組の命令または１つ以上のシーケンスの命令と、このような例の任意の組み合わせとを含むことを理解すべきである。プログラムまたはコードセグメントは、プロセッサ読取可能媒体に記憶することができ、送信媒体または通信リンクを通して、搬送波で具現化されるコンピュータデータ信号によって送信することができる。
【０１００】
ここで開示した、方法、スキーム、および、技術の実現はまた、論理エレメントのアレイ（例えば、プロセッサ、マイクロプロセッサ、マイクロ制御装置、または、他の有限状態マシン）を含むマシンによって実行可能な１つ以上の組の命令として、有体的に（例えば、ここでリストアップしたような１つ以上のコンピュータ読取可能媒体の有体的なコンピュータ読取可能機能で）具現化されてもよい。“コンピュータ読取可能媒体”という用語は、揮発性記憶媒体と、不揮発性記憶媒体と、リムーバブル記憶媒体と、ノンリムーバル記憶媒体とを含む、情報を記憶または転送できる任意の媒体を含んでもよい。コンピュータ読取可能媒体の例は、電子回路、半導体メモリデバイス、ＲＯＭ、フラッシュメモリ、消去可能ＲＯＭ（ＥＲＯＭ）、フロッピー（登録商標）ディスケットまたは他の磁気記憶装置、ＣＤ−ＲＯＭ／ＤＶＤまたは他の光記憶装置、ハードディスクまたは所望の情報を記憶するために使用できる他の何らかの媒体、光ファイバ媒体、無線周波数（ＲＦ）リンク、あるいは、所望の情報を搬送するために使用でき、アクセスすることができる他の何らかの媒体を含んでいる。コンピュータデータ信号は、電子ネットワークチャネル、光ファイバ、無線、電磁気、ＲＦリンク等のような送信媒体を通して伝搬できる、何らかの信号を含んでもよい。コードセグメントは、インターネットまたはイントラネットのようなコンピュータネットワークを介してダウンロードされてもよい。任意のケースでは、本開示の範囲は、このような実施形態によって限定されるものとして解釈すべきではない。
【０１０１】
ここで説明した方法のタスクのそれぞれは、直接、ハードウェアで、プロセッサにより実行されるソフトウェアモジュールで、または、２つを組み合わせたもので、具現化されてもよい。ここで開示したような方法の実現の典型的な適用において、論理エレメント（例えば、論理ゲート）のアレイは、方法のさまざまなタスクのうちの１つ、１つより多いもの、または、すべてでさえ実行するように構成されている。タスクのうちの１つ以上（場合によってはすべて）は、コード（例えば、１つ以上の組の命令）として実現されてもよく、論理エレメントのアレイ（例えば、プロセッサ、マイクロプロセッサ、マイクロ制御装置、または、他の有限状態マシン）を含むマシン（例えば、コンピュータ）によって読取可能および／また実行可能であるコンピュータプログラムプロダクト（例えば、ディスク、フラッシュまたは他の不揮発性メモリカード、半導体メモリチップ等のような、１つ以上のデータ記憶媒体）で具現化されてもよい。ここで開示したような方法の実現のタスクはまた、１つより多いこのようなアレイまたはマシンによって実行されてもよい。これらの実現または他の実現において、セルラ電話機またはこのような通信能力を有する他のデバイスのような、ワイヤレス通信用のデバイス内で、タスクが実行されてもよい。このようなデバイスは、（例えば、ＶｏＩＰのような１つ以上のプロトコルを使用する）回路交換ネットワークおよび／またはパケット交換ネットワークと通信するように構成されていてもよい。例えば、このようなデバイスは、エンコードされたフレームを受信および／または送信するように構成されているＲＦ回路を備えてもよい。
【０１０２】
ここで開示したさまざまな方法が、ハンドセット、ヘッドセット、または、ポータブルデジタルアシスタント（ＰＤＡ）のような、ポータブル通信デバイスによって実行されてもよいこと、ならびに、ここで説明したさまざまな装置がこのようなデバイス内に含まれてもよいことを明確に開示した。典型的なリアルタイム（例えば、オンライン）適用は、このような移動デバイスを使用して行われる電話機での会話である。
【０１０３】
１つ以上の例示的な実施形態では、ここで説明した動作が、ハードウェアで、ソフトウェアで、ファームウェアで、または、これらのものを組み合わせた任意のもので実現されてもよい。ソフトウェアで実現された場合に、このような動作は、１つ以上の命令またはコードとして、コンピュータ読取可能媒体上に記憶されてもよく、あるいは、１つ以上の命令またはコードとして、コンピュータ読取可能媒体上に送信されてもよい。“コンピュータ読取可能媒体”という用語は、コンピュータ読取可能記憶媒体と通信（例えば、送信）媒体の双方を含む。一例として、これらに限定されないが、コンピュータ読取可能記憶媒体は、（これらに限定されないが、ダイナミックまたはスタティックな、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭならびに／あるいはフラッシュＲＡＭを含んでもよい）半導体メモリ、あるいは、強誘電体メモリ、磁気抵抗メモリ、オーボニックメモリ、高分子（polymeric）メモリ、または、相変化メモリのような、記憶エレメントのアレイ、ＣＤ−ＲＯＭまたは他の光ディスク記憶装置、ならびに／あるいは、磁気ディスク記憶装置または他の磁気記憶デバイスを含むことができる。このような記憶媒体は、コンピュータによってアクセスできる命令またはデータ構造の形で、情報を記憶してもよい。通信媒体は、１つの場所から別の場所へのコンピュータプログラムの転送を促進する任意の媒体を含む、コンピュータによってアクセスできる命令またはデータ構造の形で、所望のプログラムコードを搬送するために使用できる任意の媒体を含むことができる。また、あらゆる接続は、コンピュータ読取可能媒体と適切に呼ばれる。例えば、同軸ケーブル、光ファイバケーブル、撚り対、デジタル加入者線（ＤＳＬ）、あるいは、赤外線、無線、および／または、マイクロ波のようなワイヤレス技術を使用しているウェブサイト、サーバ、または、他の遠隔ソースから、ソフトウェアが送信される場合には、同軸ケーブル、光ファイバケーブル、撚り対、ＤＳＬ、あるいは、赤外線、無線、および／またはマイクロ波のようなワイヤレス技術は、媒体の定義に含まれる。ここで使用したようなディスク（ｄｉｓｋおよびｄｉｓｃ）は、コンパクトディスク（ＣＤ）、レーザディスク（登録商標）、光ディスク、デジタル多用途ディスク（ＤＶＤ）、フロッピーディスク、および、ブルーレイ（登録商標）ディスク（ブルーレイディスクアソシエーション、Ｕｎｉｖｅｒｓａｌ Ｃｉｔｙ、ＣＡ）を含むが、一般的に、ディスク（ｄｉｓｋ）は、データを磁気的に再生する一方で、ディスク（ｄｉｓｃ）はデータをレーザによって光学的に再生する。先のものを組み合わせたものもまた、コンピュータ読取可能媒体の範囲内に含められるべきである。
【０１０４】
ここで説明したような音響信号処理装置は、通信デバイスのような、ある動作を制御するためにスピーチ入力を受け入れ、または、そうでなければ、バックグラウンドノイズから所望のノイズを分離することによって恩恵を受けてもよい電子デバイス中に組み込まれてもよい。多くの適用は、クリアーな所望のサウンドを向上させること、または、複数の方向から発生するバックグラウンドサウンドからクリアーな所望のサウンドを分離することによって恩恵を受けてもよい。このような適用は、音声の認識および検出と、スピーチの向上および分離と、音声起動制御と、これらに類似するものとのような能力を組み込んでいる電子デバイス中あるいはコンピューティングデバイス中に、ヒューマン−マシンインターフェース含めてもよい。限定された処理能力のみを提供するデバイスにおいて適切であるように、このような音響信号処理装置を実現することが望ましいことがある。
【０１０５】
例えば、ここで説明したモジュール、エレメント、および、デバイスのさまざまな実現のエレメントは、例えば、同じチップ上にまたはチップセット中の２つ以上のチップ間に存在する、電子デバイスおよび／または光デバイスとして組み立てられてもよい。このようなデバイスの１つの例は、トランジスタまたはゲートのような、論理エレメントの固定アレイあるいはプログラム可能アレイである。ここで説明した装置のさまざまな実現のうちの１つ以上のエレメントもまた、その全体または一部が、マイクロプロセッサと、埋め込みプロセッサと、ＩＰコアと、デジタル信号プロセッサと、ＦＰＧＡと、ＡＳＳＰと、ＡＳＩＣとのような、論理エレメントの１つ以上の固定アレイまたはプログラム可能アレイ上で実行するように構成されている１つ以上の組の命令として実現されてもよい。
【０１０６】
タスクを実行するために、あるいは、装置がその中に組み込まれているデバイスまたはシステムの別の動作に関連するタスクのような、装置の動作に直接関連しない他の組の命令を実行するために、ここで説明したような装置の実現のうちの１つ以上のエレメントを使用することが可能である。このような装置の実現のうちの１つ以上のエレメントが、共通の構造（例えば、異なる時間において、異なるエレメントに対応するコードの一部を実行するために使用されるプロセッサ、異なる時間において、異なるエレメントに対応するタスクを実行するように実行される１組の命令、あるいは、異なる時間において、異なるエレメントに対する動作を実行する、電子デバイスおよび／または光デバイスの構成）を有することも可能である。
【図１】
2013539068.tif 000014
【図２】
2013539068.tif 000015
【図３Ａ】
2013539068.tif 000016
【図３Ｂ】
2013539068.tif 000017
【図４Ａ】
2013539068.tif 000018
【図４Ｂ】
2013539068.tif 000019
【図４Ｃ】
2013539068.tif 000020
【図５】
2013539068.tif 000021
【図６Ａ】
2013539068.tif 000022
【図６Ｂ】
2013539068.tif 000023
【図６Ｃ】
2013539068.tif 000024
【図７Ａ】
2013539068.tif 000025
【図７Ｂ】
2013539068.tif 000026
【図７Ｃ】
2013539068.tif 000027
【図８Ａ】
2013539068.tif 000028
【図８Ｂ】
2013539068.tif 000029
【図８Ｃ】
2013539068.tif 000030
【図８Ｄ】
2013539068.tif 000031
【図８Ｅ】
2013539068.tif 000032
【図９Ａ】
2013539068.tif 000033
【図９Ｂ】
2013539068.tif 000034
【図９Ｃ】
2013539068.tif 000035
【図９Ｄ】
2013539068.tif 000036
【図１０Ａ】
2013539068.tif 000037
【図１０Ｂ】
2013539068.tif 000038
【図１０Ｃ】
2013539068.tif 000039
【図１０Ｄ】
2013539068.tif 000040
【図１１】
2013539068.tif 000041
【図１２】
2013539068.tif 000042
【図１３Ａ】
2013539068.tif 000043
【図１３Ｂ】
2013539068.tif 000044
【図１４】
2013539068.tif 000045
【図１５】
2013539068.tif 000046
【図１６Ａ】
2013539068.tif 000047
【図１６Ｂ】
2013539068.tif 000048
【図１７】
2013539068.tif 000049
【国際調査報告】
2013539068.tif 000050
2013539068.tif 000051
2013539068.tif 000052