(57)【要約】【課題】低いビットレートでも音質に優れたＡｂＳ符号化技術を提供する。【解決手段】一実施例によれば、音声信号のサンプルをフレームに分割するステップと、  前記フレームを、無声フレームと非無声フレームのいずれかに分類し、さらに、非無声フレームを、有声フレームと遷移フレームに分類するステップと、線形予測フィルタを用いて各フレームの残差信号を導き出すステップと、フレームの残差信号のエネルギー・プロファイルを考慮することにより、フレームの範囲内に存在する中心を持つ少なくとも１つのウィンドウの位置を決定するステップと、前記決定した少なくとも１つのウィンドウの位置および前記フレームに関する分類に基づき、ＡｂＳ符号化を用いて、すべてのまたはほぼすべてのノンゼロ励振振幅が前記少なくとも１つのウィンドウの範囲内に存在するように、前記フレームの励振信号を符号化するステップとを含む。【選択図】図９
2010286853.tif 000002
【特許請求の範囲】
【請求項１】
音声信号符号化方法において、
音声信号のサンプルをフレームに分割するステップと、
前記フレームを、無声フレームと非無声フレームのいずれかに分類し、さらに、前記非無声フレームを、有声フレームと遷移フレームに分類するステップと、
線形予測フィルタを用いて各フレームの残差信号を導き出すステップと、
前記フレームの残差信号のエネルギー・プロファイルを考慮することにより、前記フレームの範囲内に存在する中心を持つ少なくとも１つのウィンドウの位置を決定するステップと、
前記決定した少なくとも１つのウィンドウの位置および前記フレームに関する前記分類に基づき、ＡｂＳ符号化を用いて、すべてのまたはほぼすべてのノンゼロ励振振幅が前記少なくとも１つのウィンドウの範囲内に存在するように、前記フレームの励振信号を符号化するステップと、
を含む、方法。
【請求項２】
請求項１に記載の方法において、各フレームの残差信号を導き出す前記ステップが、前記残差信号のエネルギー・プロファイルを平滑化するステップを含み、前記少なくとも１つのウィンドウの位置が、前記残差信号の前記平滑化されたエネルギー分布を調べることにより決定される、方法。
【請求項３】
請求項１または２に記載の方法において、前記ウィンドウが、前記フレームの範囲内に完全に存在するように、前記フレームの境界が修正され、前記修正されたフレームのエッジが前記ウィンドウの境界と一致するように前記ウィンドウの前記境界が配置される、方法。
【請求項４】
音声信号符号化方法において、
音声信号のサンプルをフレームに分割するステップと、
線形予測フィルタを用いて各フレームの残差信号を導き出すステップと、
各フレーム内の音声信号を複数のクラスの中の１つに分類するステップ、ただしこのステップは、前記フレームを、無声フレームと非無声フレームのいずれかに分類し、さらに、前記非無声フレームを、有声フレームと遷移フレームに分類する、ステップと、
前記フレームの残差信号のエネルギー・プロファイルを検査することにより前記フレーム内の少なくとも１つのウィンドウの位置を特定するステップと、
前記フレームのクラスに応じて選択される複数の励振符号化技術の中の１つを用いて前記フレームの励振信号を符号化するステップ、ただし、前記クラスの少なくとも１つに属するフレームに対して、すべてのまたはほぼすべてのノンゼロ励振振幅が前記少なくとも１つのウィンドウの範囲内に存在するように符号化する、ステップと、
を有する、方法。
【請求項５】
請求項４に記載の方法において、前記クラスが、強い周期性を持つフレームと、弱い周期性を持つフレームームと、不規則なフレームと、無声フレームとから構成される、方法。
【請求項６】
請求項４または５に記載の方法において、前記音声信号を分類する前記ステップが、前記残差信号のエネルギー・プロファイルから平滑化されたエネルギー分布を形成し、前記平滑化されたエネルギー分布におけるピークの位置を考慮するステップを有する、方法。
【請求項７】
請求項４乃至６のいずれか１つに記載の方法において、前記複数の励振符号化技術の中の１つが適応型コードブックである、方法。
【請求項８】
請求項４乃至７のいずれか１つに記載の方法において、前記複数の励振符号化技術の中の１つが固定３元パルス符号化コードブックである、方法。
【請求項９】
請求項４乃至８のいずれか１つに記載の方法において、前記分類ステップが、閉ループ分類装置が後に続く開ループ分類装置を用いる、方法。
【請求項１０】
請求項４乃至９のいずれか１つに記載の方法において、前記分類ステップが、無声フレームまたは非無声フレームのうちの一方としてフレームを分類する第１の分類装置、あるいは、有声フレームまたは遷移フレームのうちの一方として非無声フレームを分類する第２の分類装置を用いる、方法。
【請求項１１】
請求項４乃至１０のいずれか１つに記載の方法において、前記符号化ステップが、フレームを複数のサブフレームに分割するステップと、各サブフレーム内に少なくとも１つのウィンドウの位置を決めるステップと、を有する、方法。
【請求項１２】
請求項１１に記載の方法において、少なくとも１つのウィンドウの位置を決める前記ステップが、フレームのピッチの関数である位置に第１のウィンドウの位置を決め、フレームのピッチの関数として、かつ、前記第１のウィンドウ位置の関数として、後続するウィンドウの位置を決める、方法。
【請求項１３】
請求項４乃至１２のいずれか１つに記載の方法において、少なくとも１つのウィンドウの位置を特定する前記ステップが前記残差信号のエネルギー・プロファイルを平滑化するステップを含み、さらに、前記特定ステップが、前記残差信号の前記平滑化されたエネルギー分布におけるエネルギー・ピークの存在を考慮する、方法。
【請求項１４】
音声符号化装置であって、
入力された音声信号のサンプルを分割してフレームに変えるためのフレーミング用ユニットと、
前記フレームを無声フレームと非無声フレームのいずれかに分類する第１分留手段、および、前記非無声フレームを更に有声フレームと遷移フレームに分類する第２分類手段と、
各フレームの残差信号を導き出すための線形予測フィルタユニットと、
あるフレーム内において、該フレームの残差信号のエネルギー・プロファイルに基づいて少なくとも１つのウィンドウの位置を決定するウィンドウ操作用ユニットと、
前記決定した少なくとも１つのウィンドウの位置および前記フレームに関する前記分類に基づき、ＡｂＳ符号化を用いて、すべてのまたはほぼすべてのノンゼロ励振振幅が前記少なくとも１つのウィンドウの範囲内に存在するように、前記フレームの励振信号を符号化する符号器と、
を有する、音声符号化装置。
【請求項１５】
送信装置と受信装置とを有する無線送受信装置と、
入力音声トランスデューサと、
出力音声トランスデューサと、
音声プロセッサであって、
・  入力された音声信号のサンプルをフレームに分割するための、前記入力音声トランスデューサの出力部と接続された入力部を持つサンプリング用およびフレーミング用ユニットと、
・  前記フレームを無声フレームと非無声フレームのいずれかに分類する第１分留手段、および、前記非無声フレームを更に有声フレームと遷移フレームに分類する第２分類手段と、
・  各フレームの残差信号を導き出すための線形予測フィルタユニットと、
・  あるフレーム内において、該フレームの残差信号のエネルギー・プロファイルに基づいて少なくとも１つのウィンドウの位置を決定するウィンドウ操作用ユニットと、
・  前記決定した少なくとも１つのウィンドウの位置および前記フレームに関する前記分類に基づき、ＡｂＳ符号化を用いて、すべてのまたはほぼすべてのノンゼロ励振振幅が前記少なくとも１つのウィンドウの範囲内に存在するように符号化された音声信号を出力する符号器と、
を有する音声プロセッサと、
前記符号化された音声信号を用いて搬送波を変調する変調器であって、前記送信装置の入力部と接続された出力部を有する変調器と、
音声信号を用いて符号化される搬送波であって、遠隔送信装置から送信された搬送波を復調する、前記受信装置の出力部と接続された入力部を持つ復調装置と、
フレームからの励振を復号する、前記復調装置の出力部と接続された入力部および前記出力音声トランスデューサの入力部と接続された出力部を有し、すべてのまたはほぼすべてのノンゼロ励振振幅が少なくとも１つのウィンドウの範囲内に存在する符号化信号を復号する復号器と、
を有する、無線コミュニケータ。
【請求項１６】
請求項１５に記載の無線コミュニケータにおいて、前記残差信号のエネルギー・プロファイルを平滑化するユニットをさらに有し、前記残差信号の前記平滑化されたエネルギー分布を検査することにより、前記ウィンドウ操作用ユニットが前記少なくとも１つのウィンドウの前記位置を決定する、無線コミュニケータ。
【請求項１７】
請求項１５乃至１６のいずれか１つに記載の無線コミュニケータにおいて、前記ウィンドウ操作用ユニットが、前記少なくとも１つのウィンドウの位置を、前記フレームの境界の少なくとも一方と一致するエッジを有するように定める、無線コミュニケータ。
【請求項１８】
請求項１５乃至１７のいずれか１つに記載の無線コミュニケータにおいて、前記音声プロセッサが、前記音声または前記フレームの残差信号を考慮することにより、フレームの前記持続時間と境界とを修正するユニットをさらに有する、無線コミュニケータ。
【請求項１９】
請求項１５乃至１８に記載の無線コミュニケータにおいて、フレームが少なくとも２つのサブフレームから構成され、サブフレーム境界またはフレーム境界が修正されるように前記ウィンドウ操作用ユニットが作動し、その結果、前記ウィンドウが前記修正されたサブフレームまたはフレームの範囲内に完全に存在するようになされ、さらに、前記修正されたフレームのエッジがウィンドウ境界と一致するように前記境界の位置が決められる、無線コミュニケータ。
【請求項２０】
請求項１５乃至１８に記載の無線コミュニケータにおいて、ウィンドウがエポック(epoch)において中心となるように前記ウィンドウ操作用ユニットが作動し、有声フレームのエポックが所定の距離±ジッタ値だけ離され、前記変調器が前記ジッタ値の表示を用いて前記搬送波をさらに変調し、前記復調装置が前記受信された搬送波をさらに復調して前記受信されたフレームのジッタ値を得るように成す、無線コミュニケータ。
【請求項２１】
請求項２０に記載の無線コミュニケータにおいて、前記所定の距離が１ピッチ間隔であり、前記ジッタ値が約−８と＋７との間の整数である、無線コミュニケータ。
【請求項２２】
請求項１５乃至２１のいずれか１つに記載の無線コミュニケータにおいて、前記符号器と前記復号器とが、約４ｋｂ／秒未満のデータ・レートで作動する、無線コミュニケータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は一般にデジタル通信メッセージに関し、特に、スピーチすなわち音声符号器(ボコーダ)および復号器方法並びに装置に関する。
【背景技術】
【０００２】
本発明の教示の関心の対象である音声による通信システムの１つのタイプは、元々ＥＩＡの中間規格ＩＳ−９５Ａによって定義され、その後改訂され、拡張された技術のような、符号分割多元接続(ＣＤＭＡ)技術を利用するものである。このＣＤＭＡシステムはデジタル拡散スペクトル技術に基づくものであり、この技術によって電波スペクトルの単一の１.２５ＭＨｚセグメントの両端にわたって複数の独立したユーザー信号が送信される。ＣＤＭＡでは、各ユーザー信号は異なる直交符号と、搬送波を変調し、波形スペクトルを拡散する疑似ランダム２進シーケンスを含み、これによって多数のユーザー信号が同じ周波数スペクトルを共有することが可能になる。ユーザー信号は相関器を備えた受信装置の中で分離される。この相関器によって選択された直交符号から出る信号エネルギーのみが拡散を抑える(de-spread)ことが可能になる。符合が一致しないその他のユーザー信号は、拡散を抑えられないためノイズに寄与するだけであり、したがってシステムによって引き起こされる自己干渉を示す。システムのＳＮＲは、ベースバンドのデータ・レートに対して、システム処理利得または拡散された帯域幅によって強められたすべての干渉信号の出力の和に対する所望の信号出力の比によって決定される。
【０００３】
ＩＳ−９５Ａの中で定義されているように、ＣＤＭＡシステムでは可変レート音声符号化アルゴリズムが使用される。このアルゴリズムでは、データ・レートは音声パターン(音声活動)の関数として、２０ミリ秒毎のフレーム・ベースで動的に変動することができる。トラフィック・チャネル・フレームは、全速、１/２、１／４または１/８のレート(それぞれ９６００、４８００、２４００、１２００ｂｐｓ)で送信することができる。各々の低い方のデータ・レートに伴って、送信出力(ＥＳ)は比例して低くなり、それによってチャネル内のユーザー信号の数の増加が可能になる。
【０００４】
低いビットレート(４、２、０.８ｋｂ／秒のような毎秒４０００ビット(４ｋｂ／秒)およびそれより低いビット付近など)で市外通話の音質を再現することは、困難なタスクであることが証明されている。多くの音声研究者による努力にもかかわらず、低いビットレートで符号化される音質は、一般に、無線アプリケーションおよびネットワーク・アプリケーションには適していない。従来のＣＥＬＰアルゴリズムでは、励振が効率的に発生せず、有声インタバル中残差信号内に存在する周期性が適切に利用されない。さらに、ＣＥＬＰ符号器とその派生物は低いビットレートでの満足のゆく主観的性能を示していない。
【０００５】
従来の音声合成による分析("ＡｂＳ")符号化では、音声波形は一続きの連続フレームに分割される。各フレームは固定長を持ち、整数の等長サブフレームに分割される。符号器は、試行錯誤サーチ処理によって励振信号を発生し、サブフレームの各候補励振がフィルタに印加され、次いで、結果として得られる合成音声セグメントがターゲット音声の対応セグメントと比較される。歪みの測定値が計算され、サーチメカニズムによって、許される候補の中で各サブフレームの最適の(あるいは最適に近い)励振の選択肢が特定される。これらの候補は時としてコードブックの中にベクトルとして蓄積されるので、この符号化方法は符号励振線形予測(ＣＥＬＰ)と呼ばれる。またこれらの候補は、所定の生成メカニズムによりサーチ用として必要とされ、生成される場合もある。このケースには、特に、マルチ・パルス線形予測符号化(ＭＰ−ＬＰＣ)または代数的符号励振線形予測(ＡＣＥＬＰ)が含まれる。選択された励振サブフレームの指定に必要とされるビットは各々フレームの形で受信装置へ送信されるデータのパッケージの一部である。
【０００６】
通常、励振は２段階で形成され、過去の励振ベクトルを含む励振サブフレームに対する第１の近似値が適応型コードブックから選択され、次いで、上述の処理手順を用いる第２のＡｂＳサーチ・オペレーション用として修正されたターゲット信号が新しいターゲットとして形成される。
【０００７】
拡張型可変レート符号器(ＴＩＡ／ＥＩＡ/ＩＳ−１２７)の緩和型(Relaxation)ＣＥＬＰ(ＲＣＥＬＰ)では、入力された音声信号は、単純化された(線形)ピッチ輪郭に従うことを保証するために時間ワープ処理によって修正される。修正は以下のように行われる。
【０００８】
音声信号はフレームに分割され、線形予測が行われて、残差信号が生成される。次いで、残差信号のピッチ分析が行われ、整数のピッチ値がフレーム当たり１回計算され、復号器へ送信される。この送信されたピッチ値は補間されて、ピッチ輪郭として定義されるピッチのサンプル毎の推定値が得られる。次に、残差信号は符号器で修正され、修正された残差信号が生成される。この修正残差信号は知覚できるほど元の残差と類似している。さらに、この修正残差信号は、(ピッチ分布によって定義されているような)１つのピッチ間隔によって分離されたサンプルと強い相関を示す。この修正残差信号は、線形予測係数から導き出される合成フィルタを介してフィルタにかけられ、修正音声信号が得られる。残差信号の修正は、米国特許Ｎｏ５,７０４,００３に記載の方法で行うことができる。
【０００９】
ＲＣＥＬＰの標準的符号化(サーチ)処理手順は、２つの重要な違いを除いて正規のＣＥＬＰと類似している。第１に、ＲＣＥＬＰ適応型励振は、ピッチ輪郭を用いて過去の符号化された励振信号の時間ワープ処理を行うことにより得られる。第２に、ＲＣＥＬＰの合成による分析の目的は合成音声と修正音声信号との間の最適の可能な一致を得ることである。
【特許文献１】米国特許第５,７０４,００３号明細書
【発明の開示】
【００１０】
適応して修正されるサブフレーム境界と、サブフレーム内で適応して設定されるウィンドウのサイズと位置とを有する合成による分析(ＡｂＳ)型ボコーダを実現する方法と回路構成を提供することが本発明の第１の目的と利点である。
【００１１】
適応型ウィンドウを用いる音声符号化／復号システムである、符号励振線形予測(ＣＥＬＰ)型アルゴリズムに少なくとも部分的に基づいて、時間領域リアルタイム音声符号化／復号システムを提供することが本発明の第２の目的と利点である。
【００１２】
ＣＥＬＰまたは緩和型(relaxation)ＣＥＬＰ(ＲＣＥＬＰ)モデルを用いる新規の励振符号化方式を採用することにより上述の問題の多くを解決するアルゴリズムとそれに対応する装置とを提供することが、本発明のさらなる目的と利点である。該励振符号化方式では、パターン分類装置が用いられて、各フレーム内での音声信号の特徴を記述する分類が決定され、次いで、そのクラス専用の構造化されたコードブックを用いて一定の励振が符号化される。
【００１３】
合成による分析(ＡｂＳ)型音声符号器を実現する方法と回路構成を提供することが本発明の別の目的と利点である。この場合、上記適応型ウィンドウの利用によって、比較的限定されたビット数をさらに効率的に割り振って励振信号を記述することが可能になる。この記述によって、４Ｋｂｐｓまたはそれより低いビットレートで従来のＣＥＬＰ型符号器の利用と比較して向上した音質が結果として得られる。
【００１４】
上述の問題およびその他の問題が解決され、改善された時間領域、ＣＥＬＰ型音声符号器／復号器を提供する方法と装置により本発明の目的と利点とが実現される。
【００１５】
現時点における好適な音声符号化モデルでは、固定コードブック励振の発生と符号化を行う新規のクラス従属アプローチが用いられる。このモデルによって、有声フレーム用として適応型コードブック寄与を効率的に生成し、符号化するＲＣＥＬＰアプローチが保存される。しかし、このモデルには、有声クラス、遷移クラス、および無声クラスのような複数の残差信号クラスの各々のための、および、強い周期性を持つクラス、弱い周期性を持つクラス、不規則な(遷移)クラス、無声クラスのための様々な励振符号化戦略が導入される。このモデルでは閉ループ遷移／有声選択を提供する分類装置が採用される。有声フレームの固定コードブック励振は拡張された適応型ウィンドウ・アプローチに基づいており、このアプローチは、例えば、４ｋｂ／秒以下のレートでの高い音質の達成に効果的であることが証明されている。
【００１６】
本発明の１つの態様によれば、サブフレーム内の励振信号はサブフレーム内の選択された間隔の外側ではゼロとなるように制約される。これらの間隔を本明細書ではウィンドウと呼ぶ。
【００１７】
本発明のさらなる態様によれば、パルス振幅の適切な選択を用いて表すために特に重要な、励振信号の臨界セグメントを特定するウィンドウの位置とサイズを設定するための技術が開示される。サブフレームとフレームのサイズは、音声信号のローカルな特徴に適合するように(制御された方法で)変更が可能である。これによって、２つの隣接サブフレーム間の境界を横切るウィンドウを設けることなくウィンドウの効率的な符号化が行われる。一般に、ウィンドウのサイズおよびその位置は、入力される音声信号またはターゲットの音声信号のローカルな特徴に従って適合される。本明細書で用いられているように、ウィンドウの位置とは、短期エネルギー・プロファイルに応じて、残差信号と関連するエネルギー・ピークの周りでのウィンドウの位置決めを意味する。
【００１８】
本発明のさらなる態様によれば、ウィンドウ自体に対する処理を行い、ウィンドウの内部で領域を符号化するために、利用可能なビットの全てまたはほとんど全てを割り振ることにより、励振フレームの非常に効率的な符号化が達成される。
【００１９】
さらに、本発明の教示によれば、ウィンドウ内部で信号を符号化するための複雑さの少ない本方法は、３元値化した振幅値、０、−１、＋１の利用に基づくものである。この複雑さの少ない方法は、周期的音声セグメント内で連続するウィンドウ間の相関の利用に基づくものである。
【００２０】
本発明による市外通話の高い音質の音声符号化技術は、音声信号の短時間の時間セグメントの中に含まれる情報の質と量とに応じて異なるデータ・レートで音声信号を表し、符号化する新規の方法を利用する時間領域方式である。
【００２１】
本発明は、入力された音声信号の符号化を行うための方法と装置の様々な実施例を目的とする。音声信号は、音声電話コールを行うために使用されるマイク等の音声トランスデューサの出力から直接得ることができる。或いは、最初に音声信号をサンプル化し、ある遠隔設置においてアナログ・データからデジタル・データへ変換を行った後、通信メッセージ・ケーブルやネットワークを介してデジタルデータ・ストリームとして入力されるこの音声信号を受信することができる。唯一の例として、無線電話システム用の固定サイトすなわち基地局において、基地局での入力音声信号が、一般に陸線電話ケーブルから着信する場合がある。
【００２２】
いずれにせよ、本方法は、(ａ)音声信号サンプルを分割してフレームに変えるステップと、(ｂ)フレーム内に少なくとも１つのウィンドウの位置を決定するステップと、(ｃ)少なくとも１つのウィンドウがノンゼロ励振振幅のすべてまたはほぼすべての範囲内に在るフレームの励振を符号化するステップと、を有する。現時点における好適な実施例では、本方法は、各フレーム用として残差信号を導き出すステップをさらに含み、この導き出された残差信号を検査することにより少なくとも１つのウィンドウの位置が決定される。さらに好適な実施例では、上記残差信号を導き出すステップには残差信号のエネルギー分布（energy contour）を平滑化するステップが含まれ、残差信号の平滑化されたエネルギー分布を検査することにより少なくとも１つのウィンドウの位置が決定される。この少なくとも１つのウィンドウは、サブフレーム境界またはフレーム境界の少なくとも一方と一致するエッジを有するように配置することができる。
【００２３】
さらに、本発明によれば、(ａ)音声信号のサンプルを分割してフレームに変えるステップと、(ｂ)各フレームの残差信号を導き出すステップと、(ｃ)各フレーム内の音声信号を複数のクラスに分類するステップと、(ｄ)フレームの残差信号を検査することによりフレーム内の少なくとも１つのウィンドウの位置を特定するステップと、(ｅ)フレームのクラスに応じて選択される複数の励振符号化技術の中の１つを用いてフレームの励振を符号化するステップと、クラスの少なくとも１つに対して、(ｆ)すべてのまたはほぼすべてのノンゼロ励振振幅をウィンドウの範囲内に存在するように制限するステップとを含む音声信号の符号化方法が提供される。
【００２４】
１つの実施例では、これらのクラスには有声フレーム、無声フレームおよび遷移フレームが含まれるが、一方、別の実施例では、これらのクラスには、強い周期性を持つフレームと、弱い周期性を持つフレームームと、不規則なフレームと、無声フレームとが含まれる。
【００２５】
好適な実施例では、音声信号を分類するステップには、残差信号から平滑化されたエネルギー分布を形成するステップと、平滑化されたエネルギー分布内のピークの位置を考慮するステップとが含まれる。
【００２６】
複数のコードブックの中の１つは、適応型コードブック及び／又は固定３元パルス符号化用コードブックであってもよい。
【００２７】
本発明の好適な実施例では、分類ステップによって閉鎖ループ分類装置が後に続く開ループ分類装置が使用される。
【００２８】
また本発明の好適な実施例では、分類ステップは、無声フレームまたは非無声フレームのうちの一方としてフレームを分類する第１の分類装置、あるいは、有声フレームまたは遷移フレームのうちの一方として非無声フレームを分類する第２の分類装置を用いる。
【００２９】
本方法では、符号化ステップは、フレームを分割して複数のサブフレームに変えるステップと、各サブフレーム内に少なくとも１つのウィンドウ位置を決めるステップとを含み、少なくとも１つのウィンドウの位置決めを行う該ステップによって、フレームのピッチの関数である位置に第１のウィンドウ位置が決められ、フレームのピッチの関数として、かつ、第１のウィンドウ位置の関数として後に続くウィンドウの位置が決められる。
【００３０】
少なくとも１つのウィンドウの位置を特定するステップが、残差信号を平滑化するステップを好適に含み、さらに、該特定するステップは、残差信号の平滑化された輪郭内のエネルギー・ピークの存在を考慮する。
【００３１】
本発明の実施時に、ウィンドウが修正されたサブフレームまたはフレーム内に存在し、かつ、この修正されたフレームまたはサブフレームのエッジをウィンドウ境界と一致させるように、サブフレームまたはフレーム境界がサブフレームまたはフレーム境界の修正を行うことができる。
【００３２】
要約すると、本発明は、音声符号化のための音声符号器と方法とを目的とするものであり、音声信号は励振信号によって表され、合成フィルタに印加される。音声信号はフレームとサブフレームに分割される。分類装置は、音声フレームが、いくつかのカテゴリのいずれに属するかを特定し、各カテゴリの励振を表すための様々な符号化方法が適用される。いくつかのカテゴリについては、１以上のウィンドウがフレーム用として特定される。このフレームにはすべてのまたはほとんどの励振信号サンプルが符号化方式により割り当てられている。励振の重要なセグメントをより正確に符号化することによりパフォーマンスの向上が図られる。ウィンドウの位置は、平滑化された残差エネルギー分布のピークを特定することにより線形予測残差から決定される。この方法によって、フレームとサブフレーム境界とが調整され、修正されたサブフレームまたはフレームの範囲内に各ウィンドウが完全に配置されるように成される。これによって、フレームまたはサブフレーム境界にわたる音声信号のローカルな振舞いについて考慮することなく、フレームまたはサブフレームを分離して符号化する際に生じる人工的制約を取り除くことが可能となる。
【図面の簡単な説明】
【００３３】
以上に記載の本発明の特徴およびその他の特徴は、添付図面と関連して読むとき以下の発明の詳細な説明でさらに明らかになる。
【図１】本発明の実施に適した回路構成を備えた無線電話の１つの実施例のブロック図である。
【図２】複数(３)の基本サブフレームに分割された基本フレームを例示する図であり、サーチ・サブフレームを示す。
【図３】音声残差信号の平滑なエネルギー分布を得るための回路構成を示す単純化したブロック図である。
【図４】音声復号器に対してフレーム・タイプの表示を行うフレーム分類装置を示す単純化したブロック図である。
【図５】適応型コードブックを示す第１段と、３元パルス符号器を示す第２段とを備えた２段階符号器を描く。
【図６】例示のウィンドウ・サンプリング図である。
【図７】本発明の方法による論理フローチャートである。
【図８】本発明の好適な実施例による音声符号器を示すブロック図である。
【図９】図８に示す励振符号器と音声合成ブロックのブロック図である。
【図１０】図８の符号器の動作を例示する単純化した論理フローチャートである。
【図１１】図８の符号器、特に、それぞれ、有声フレーム、遷移フレーム、無声フレームの励振符号器と音声合成ブロックの動作を示す論理フローチャートである。
【図１２】図８の符号器、特に、それぞれ、有声フレーム、遷移フレーム、無声フレームの励振符号器と音声合成ブロックの動作を示す論理フローチャートである。
【図１３】図８の符号器、特に、それぞれ、有声フレーム、遷移フレーム、無声フレームの励振符号器と音声合成ブロックの動作を示す論理フローチャートである。
【図１４】図８と９に図示の音声符号器と関連して作動する音声復号器のブロック図である。
【発明を実施するための形態】
【００３４】
図１を参照すると、本発明の音声符号化方法と装置に従って作動する拡散スペクトル無線電話６０が例示されている。可変レート無線電話の説明については、共に譲受された米国特許Ｎｏ５,７９６,７５７(１９９８年８月１８日発行)を参照することが可能であり、該無線電話での本発明の実施が可能である。米国特許Ｎｏ５,７９６,７５７の開示は、本明細書に参考文献としてその全体が取り入れられている。
【特許文献２】米国特許第５,７９６,７５７号明細書
【００３５】
無線電話６０のブロックの中の或るいくつかのブロックに、個別の回路素子、あるいは、高速信号プロセッサのような適切なデジタルデータ・プロセッサにより実行されるソフトウェア・ルーチンを設けることが可能であることを最初に理解することが望ましい。或いは、回路素子とソフトウェア・ルーチンとの組合せを用いることも可能である。したがって、以下の説明は、本発明の適用を特定の技術的実施例のいずれかに限定するものではない。
【００３６】
拡散スペクトル無線電話６０は、ＥＩＡの中間規格、デュアル・モード広帯域拡散スペクトル・セルラー・システム用移動局−基地局互換性標準規格ＴＩＡ／ＥＩＡ／ＩＳ−９５(１９９３年７月)に従って及び／又は該規格のその後の拡張版および改訂版に従って作動することができる。しかし、特定の規格あるいはエア・インターフェース仕様のいずれかとの互換性を本発明の実施に対する限定と考えるべきではない。
【００３７】
本発明の教示は、符号分割多元接続(ＣＤＭＡ)技術または拡散スペクトル技術との使用に限定されるものではなく、例えば、時分割多元接続(ＴＤＭＡ)技術や、いくつかの他の多元ユーザーアクセス技術（あるいは同様に単一ユーザーアクセス技術においても）においても同様に実施可能であることに最初に留意することが望ましい。
【００３８】
無線電話６０には、基地局(図示せず)と呼ぶ場合もあるセル・サイトからのＲＦ信号受信用、および、基地局へのＲＦ信号送信用アンテナ６２が含まれる。デジタル(拡散スペクトルすなわちＣＤＭＡ)モードで作動する場合、ＲＦ信号は位相変調されて、音声と信号情報とが送られる。位相変調されたＲＦ信号をそれぞれ送受信する利得制御受信装置６４と送信装置６６とがアンテナ６２と接続されている。周波数シンセサイザ６８は制御装置７０の管理の下でこれらの受信装置と送信装置へ必要な周波数を出力する。制御装置７０は、コーデック７２を介してスピーカ７２ａとマイク７２ｂとのインターフェスを行うための、また、キーボードおよび表示装置７４とのインターフェスを行うための低速マイクロプロセッサ制御ユニット(ＭＣＵ)から構成される。マイク７２ｂは、一般に入力音声トランスデューサと考えることができる。該トランスデューサの出力はサンプル化され、デジタル化され、また、本発明の１つの実施例によれば、トランスデューサは音声符号器への入力を形成する。
【００３９】
一般に、ＭＣＵは、制御全体および無線電話６０の作動に責任を負う。制御装置７０は、送受信信号のリアルタイム処理に適した、より高速のデジタル信号プロセッサ(ＤＳＰ)からも好適に構成され、本発明に従って音声を復号する音声復号器１０(図１４参照)と、本発明に従って音声を符号化する音声符号器１２とを含む。音声符号器と音声復号器とはまとめて音声プロセッサと呼ばれる場合もある。
【００４０】
受信されたＲＦ信号は、受信装置の中でベースバンドに変換され、位相復調装置７６に印加され、該位相復調装置は受信信号から同相(Ｉ)信号と直角位相(Ｑ)信号とを導き出す。ＩとＱ信号は、適切なＡ／Ｄコンバーターによってデジタル表現に変換され、複数のフィンガ(３つのフィンガＦ−１Ｆ３など)復調装置７８に印加される。これらフィンガの各々には擬似ノイズ(ＰＮ)発生装置が含まれる。復調装置７８の出力は、コンバイナ８０に印加され、コンバイナ８０はデインターリーバと復号器８１ａと、レート測定ユニット８１ｂとを介して制御装置７０へ信号を出力する。制御装置７０へのデジタル信号入力は、符号化された音声サンプルすなわち信号情報の受信を表す。
【００４１】
送信装置６６への入力は本発明に従って符号化された音声及び／又は信号情報であるが、該入力は、ブロック８２としてまとめて示されている畳込み符号器、インターリーバ、ウォルシュ変調器、ＰＮ変調器、Ｉ−Ｑ変調器を介して制御装置７０から導き出される。
【００４２】
本発明に従う音声の符号化および復号のために構成可能な音声通信装置の１つの好適な実施例について説明してきたが、この音声符号器およびそれに対応する復号器に関するこの好適な実施例についての詳細な説明を図２−１３を参照しながら行うことにする。
【００４３】
図２を参照する。入力音声に関するＬＰ分析を行うために、および、送信対象データをパッケージ化して各々一定のフレーム間隔に対して一定数のビットに変えるために、音声符号器１２は、基本フレーム構造と本明細書で呼ぶ固定フレーム構造を有する。各基本フレームは、Ｍ個の等しい(あるいはほとんど等しい)長さのサブフレームに分割される。このサブフレームは本明細書では基本サブフレームと呼ばれる。Ｍの１つの好適な値は３であるがこれは限定的な値ではない。
【００４４】
従来のＡｂＳ符号化方式では、各サブフレームの励振信号はサーチ・オペレーションによって選択される。しかし、音声の非常に効率的な低いビットレートの符号化を達成するためには、各サブフレームの符号化に利用可能なビット数が少ないことに起因して、励振セグメントの好適に正確な表現を行うことが非常に困難であったり不可能であったりする。
【００４５】
本発明者は、励振信号における目立った活動は時間軸上で均等に分布してはいないことを観察した。代わりに、励振信号には、重要な活動のほとんどを含む、ある種の自然に生じる間隔(本明細書ではアクティブ間隔と呼ぶ)が存在し、このアクティブ間隔の外側では、励振サンプルをゼロに設定することにより失われるものはほとんどあるいはまったくない。１４人の本発明者は、線形予測残差の平滑化されたエネルギー・プロファイルを検査することにより、アクティブ間隔の位置を特定する技術も発見した。したがって、本発明者は、アクティブ間隔(本明細書ではウィンドウと呼ぶ)の実際の時間位置を得ることができること、また、このアクティブ間隔に対応するウィンドウ内に符号化のための努力を集中できることを決定した。このようにして、励振信号の符号化に利用可能な限定されたビットレートは、重要な時間セグメントや、励振のサブインタバルを、効率的に表現するために専ら費やすことができる。
【００４６】
実施例によっては、ウィンドウの範囲内にノンゼロ励振振幅のすべてを配置させる方が望ましい場合もあるものの、別の実施例では、柔軟性を高めるために、少なくとも１つまたは数個のノンゼロ励振振幅がウィンドウの外側に存在することを許容する方が望ましい場合もあることに留意されたい。
【００４７】
サブインタバルは、フレームまたはサブフレーム・レートと同期させる必要はない。したがって、各ウィンドウの位置（location）および持続時間（duration）を適合させて音声のローカルな特徴に合わせるようにする方が望ましい。ウィンドウの位置を指定するための大きなオーバーヘッドのビットの導入を避けるために、代わりに本発明者は連続するウィンドウの位置内に存在する相関を利用する。それによって許容可能なウィンドウの位置の範囲が限定される。ウィンドウの持続時間を指定するためにビットの消費を避けるための１つの好適な技術として、ウィンドウの持続時間を有声音声用ピッチに依存させる方法と、無声音声用としてウィンドウ持続時間を一定とする方法とがあることが判明した。本発明のこれらの態様について以下さらに詳細に説明する。
【００４８】
各ウィンドウが符号化対象の重要なエンティティであるため、各基本サブフレームが整数個のウィンドウを含むことが望ましい。各基本サブフレームが整数個のウィンドウを含まない場合、２つのサブフレーム間でウィンドウを分割して、ウィンドウの範囲内に存在する相関を利用しないようにしてもよい。したがって、ＡｂＳサーチ処理のために、サブフレーム・サイズ(持続時間)を状況に適応して修正して、整数個のウィンドウが符号化対象の励振セグメント内に存在することを保証するようにすることが望ましい。
【００４９】
各基本サブフレームに対応して、サーチ・サブフレームが関連づけられる。このサーチ・サブフレームは、基本フレームの開始ポイントと終了ポイントとからオフセットされる開始ポイントと終了ポイントとを有する。したがって、そのまま図２を参照すると、基本サブフレームが時刻ｎ１からｎ２までの幅を有する場合、関連するサーチ・サブフレームはｎ１＋ｄ１からｎ２＋ｄ２の幅を有する。ただし、ｄとｄ２とはゼロまたはいくつかの小さな正または負の整数のいずれかの値を持つものとする。ウィンドウ・サイズの１／２未満に常になるように定義されるｄ１とｄ２の大きさ、および、それらの値は、各サーチ・サブフレームが整数個のウィンドウを含むように選択される。
【００５０】
ウィンドウが基本サブフレーム境界を横切る場合、ウィンドウが次の基本サブフレームまたは現在の基本サブフレームのいずれかの中に完全に含まれるように、サブフレームは狭められるか拡げられるかのいずれかが行われる。ウィンドウの中心が現在の基本サブフレームの内部に存在する場合、サブフレーム境界がウィンドウの終了ポイントと一致するようにサブフレームは拡げられる。ウィンドウの中心が現在の基本サブフレームを越えて存在する場合、サブフレーム境界がウィンドウの開始ポイントと一致するようにウィンドウは狭められる。次のサーチ・サブフレームの開始ポイントは、前のサーチ・サブフレームの終了ポイントの直ぐ後に存在するように適宜修正される。
【００５１】
各基本フレームについて、本発明に従う方法によってＭ個の隣接するサーチ・サブフレームが生成される。これらのサーチ・サブフレームは本明細書でまとめてサーチ・フレームと呼ばれるものを構成する。サーチ・フレームの終了ポイントは、基本フレームの終了ポイントから修正され、基本フレームの終了ポイントが、対応する基本フレームと関連する最後のサーチ・サブフレームの終了ポイントと一致するようになされる。サーチ・フレーム全体の励振信号の指定用として使用されるビットは、各基本フレームについて最終的にパッケージ化されてデータ・パケットに変えられる。受信装置へのデータの送信は、ほとんどの音声符号化システムの従来の固定フレーム構造と一致する。
【００５２】
本発明者は適応型ウィンドウと適応型サーチ・サブフレームの導入によってＡｂＳ音声符号化の効率が大幅に改善されることを発見した。本発明の音声符号化方法及び装置の理解を助けるためにさらなる詳細を示す。
【００５３】
ウィンドウを配置するための技術の説明をまず行うことにする。音声残差信号のエネルギー分布を平滑化して、エネルギー・ピークを特定する処理を行う。図３を参照すると、線形予測(ＬＰ)白色化フィルタ１４を介して音声のフィルタリングにより残差信号が形成される。この場合線形予測パラメータは音声統計の変化の後を追って規則的に更新される。二乗または絶対値のような残差サンプル値の非負関数をとることにより残差信号エネルギー関数が形成される。例えば、残差信号エネルギー関数が二乗ブロック１６で形成される。次いで、この技術によって、ローパス・フィルタリング・オペレーションや中間値平滑化オペレーションのような線形または非線形平滑化オペレーションによる信号の平滑化が行われる。例えば、二乗ブロック１６内で形成される残差信号エネルギー関数はローパス・フィルタ１８でローパス・フィルタリング・オペレーションにかけられ、平滑化されたエネルギー分布が得られる。
【００５４】
現時点における好適な技術では、ブロック２０で行われる３点スライディング・ウィンドウ平均化オペレーションが用いられる。平滑な残差輪郭のエネルギー・ピーク(Ｐ)が適応型エネルギー閾値を用いて配置される。所定のウィンドウを配置するための合理的な選択として、平滑化されたエネルギー分布のピークにウィンドウの中心に置く方法がある。次いで、この配置によって間隔が定義される。この場合ノンゼロ・パルス振幅を用いて励振をモデル化する(すなわち上述のアクティブ間隔の中心を定義する)ことがきわめて重要である。
【００５５】
ウィンドウの配置のための好適な技術について説明したので、次にフレームを分類するための技術、並びに、その分類に依存して、ウィンドウ内に励振信号を見つけるための技術について説明を行う。
【００５６】
個々のウィンドウ内の励振の符号化に必要なビット数は多い。所定のサーチ・サブフレーム内に複数のウィンドウが生じる場合もあるので、各ウィンドウを独立して符号化するとすれば、各サーチ・サブフレームのために膨大なビット数が必要となる。幸い、発明者は、周期的音声セグメント用の同一サブフレーム内の異なるウィンドウ間に顕著な相関が存在するという結論を下した。音声の周期的または非周期的性質に応じて、異なる符号化戦略を用いることが可能である。したがって、各サーチ・サブフレームの励振信号を符号化する際にできるだけ大きな冗長性を利用できるように、基本フレームをカテゴリに分類することが望ましい。各カテゴリ用としてこの符号化方法を仕立てる及び／又は選択することが可能である。
【００５７】
有声音声（voiced speech）では、平滑化された残差エネルギー分布のピークが一般にピッチ間隔で生じ、このピークはピッチ・パルスに対応する。この文脈では、"ピッチ（pitch）"とは有声音声のセグメント内の周期性を持つ基本周波数を意味し、"ピッチ間隔（pitch period）"とは基本周期期間を意味する。音声信号の遷移領域(本明細書では不規則領域とも呼ばれる)によっては、その波形が周期的ランダムまたは定常的ランダムのいずれかになるという性質を持っていないものもある。また、この波形は、１以上の分離されたエネルギー・バースト(破裂音の場合のような)を含むことが多い。周期的音声に対しては、ピッチ間隔の或る関数となるようにウィンドウのまたは幅を選択することができる。例えば、ウィンドウ持続時間をピッチ間隔の数分の一に固定してもよい。
【００５８】
次に説明する本発明の１つの実施例では、各基本フレームに対する４通りの方法によって良好な解決策が提供される。この第１の実施例では、基本フレームは、強い周期性を持つフレームと、弱い周期性を持つフレームームと、不規則なフレームと、無声フレームの中の１つとして分類される。しかし、別の実施例を参照して以下に説明するように、３通りの方法による分類を用いることも可能であり、その場合、基本フレームは、有声フレーム、遷移フレームまたは無声フレームの中の１つとして分類される。２通りの分類(有声フレームと無声フレームなど)、並びに４通り以上の分類の利用も本発明の範囲に入るものである。
【００５９】
現時点における好適な実施例では、サンプリング・レートは毎秒８０００サンプル(８ｋｂ／ｓ)で、基本フレーム・サイズは１６０サンプル、Ｍ＝３、３つの基本サブフレーム・サイズは５３サンプル、５３サンプル、及び、５４サンプルである。各基本フレームは上述の４つのクラス(強い周期性を持つフレーム、弱い周期性を持つフレームーム、不規則なフレーム、無声フレーム)の中の１つとして分類される。
【００６０】
図４を参照すると、フレーム分類装置２２は基本フレーム当たり２ビットを受信装置内の音声復号器１０へ送り(図１４参照)、クラス(００、０１、１０、１１)が特定される。４つの基本フレーム・クラスの各々について、それぞれのその符号化方式と共に以下説明する。しかし、上述のように、状況や利用方法によっては、異なる数のカテゴリを持つ代替の分類方式の方がさらにずっと効率的な場合もあること、また、符号化戦略のさらなる最適化が実際に可能であることに留意されたい。したがって、現時点における好適なフレーム分類および符号化戦略についての以下の説明は、本発明の実施に対して限定を課すものであるという意味で読むべきではない。
【００６１】
〔強い周期性を持つフレーム（Strongly Periodic Frame）〕
この第１のクラスには非常に周期的な性質を持つ音声の基本フレームが含まれる。サーチ・フレーム内の第１のウィンドウはピッチ・パルスと関連する。したがって、連続するウィンドウがほぼ連続するピッチ間隔で配置されることを当然仮定することが可能である。
【００６２】
有声音声の各基本フレーム内での第１のウィンドウの位置が、復号器１０へ送信される。続くウィンドウは、第１のウィンドウからの連続するピッチ間隔で、サーチ・フレーム内に配置される。ピッチ間隔が基本フレームの範囲内で変動する場合、各基本サブフレーム用として計算されたピッチ値あるいは補間されたピッチ値が、対応するサーチ・サブフレーム内に連続するウィンドウを配置するために用いられる。ピッチ間隔が３２サンプル以下である場合、１６サンプルから成るウィンドウサイズが用いられ、ピッチ間隔が３２サンプル以上である場合、２４サンプルが用いられる。一続きの連続する周期的フレームの第１のフレーム内のウィンドウの開始ポイントは４ビットなどを用いて指定される。同一サーチ・フレームの範囲内の後に続くウィンドウは前のウィンドウの開始に続く１ピッチ間隔で開始する。各後続する有声サーチ・フレーム内の第１のウィンドウは、前のウィンドウ開始ポイントに１ピッチ間隔を加えることにより予測開始ポイントの近傍に配置される。次いで、サーチ処理により正確な開始ポイントが決定される。例えば、予測値からの開始ポイントのずれを指定するために２ビットが用いられる。このずれは"ジッター"と呼ばれる場合もある。
【００６３】
上の表現に使用される上記の特定のビット数は、アプリケーション固有のものであり、大幅に異なる場合もあることに留意されたい。例えば、本発明の教示は、第１のフレーム内でウィンドウの開始ポイントを指定するための４ビット、あるいは、予測値からの開始ポイントのずれを指定するための２ビットの好適な利用だけに限定されるものではない。
【００６４】
図５を参照すると、各サーチ・サブフレーム用として２段階ＡｂＳ符号化技術が利用される。第１段２６は"適応型コードブック（adaptive codebook）"技術に基づくものである。この技術ではサブフレーム内の励振信号に対する第１の近似値として励振信号の過去のセグメントが選択される。第２段２６は３元パルス符号化方法（ternary pulse coding method）に基づくものである。図６を参照すると、サイズ２４サンプルから成るウィンドウに対して、３元パルス符号器２６によって３つのノンゼロ・パルスが特定される。１つのパルスがサンプル位置０、３、６、９、１２、１５、１８、２１から選択され、第２のパルス位置が１、４、７、１０、１３、１６、１９、２２から選択され、第３のパルスが２、５、８、１１、１４、１７、２０、２３から選択される。したがって、３つのパルス位置の各々を指定するために３ビットが必要となり、各パルスの極性用として１ビットが必要となる。従って、ウィンドウの符号化に合計１２ビットが使用される。サイズ１６のウィンドウ用として同様の方法が利用される。サーチ・サブフレームの第１のウィンドウの場合のような同一パルス・パターンの反復は、同一サーチ・サブフレーム内の後に続くウィンドウを表す。したがって、これらの後続するウィンドウ用の追加ビットは必要ではない。
【００６５】
〔弱い周期性を持つフレーム（Weakly Periodic Frame）〕
この第２のクラスには、ある周期性のレベルを示すが、第１のクラスのような強い規則的な周期的性質は欠く音声の基本フレームが含まれる。したがって、連続するウィンドウが、連続するピッチ間隔で配置されることを仮定することはできない。
【００６６】
有声音声の各基本フレーム内の各ウィンドウの位置が、エネルギー分布ピークによって決定され、復号器へ送信される。各候補位置についてＡｂＳサーチ処理を実行することにより位置を発見する場合、パフォーマンスの改善を得ることができるが、この技術は結果としてさらに高度の複雑さを伴う。１サーチ・サブフレーム当たり１つだけのウィンドウが用いられ、２４サンプルから成る固定ウィンドウ・サイズが使用される。量子化されたタイム・グリッドが用いられ、各ウィンドウの開始ポイントを指定するために３ビットが使用される。すなわち、ウィンドウの開始は８サンプルの倍数で発生が可能となる。つまり、ウィンドウの位置が"量子化され"、それによって時間分解能が低下するため、対応するビットレートを低下させうる。
【００６７】
第１のクラスの場合と同じように、２段階合成による分析符号化技術が用いられる。図５を再び参照すると、第１段２４は適応型コードブック方法に基づき、第２段２６は３元パルス符号化方法に基づいている。
【００６８】
〔不規則なフレーム（Erratic Frame）〕
この第３のクラスに含まれる基本フレームでは、音声は周期的でもランダムでもないが、残差信号の中には１以上の区別可能なエネルギー・ピークが含まれる。不規則な音声フレームの励振信号は、サブフレーム当たりウィンドウの範囲内に１つの励振を特定することにより表される。この励振信号は、平滑化されたエネルギー分布のピークの位置に対応する。各ウィンドウの位置は送信される。
【００６９】
有声音声の各基本フレーム内の各ウィンドウの位置はエネルギー分布ピークによって決定され、復号器１０へ送信される。弱い周期性を持つケースの場合と同じように、各候補位置についてＡｂＳサーチ処理を実行することにより位置が発見する場合、改善されたパフォーマンスを得ることが可能であるが、その代償としてさらに高度の複雑さが伴う。３２サンプルの固定ウィンドウ・サイズと、サーチ・サブフレーム当りただ１つのウィンドウとを使用することが望ましい。また、弱い周期性を持つケースの場合と同じように、量子化されたタイム・グリッドを用い、各ウィンドウの開始ポイントを指定するために３ビットが使用される。すなわち、ウィンドウの開始は８サンプルの倍数で発生が可能となり、それによって時間分解能が低下してビットレートの低減が可能となる。
【００７０】
このクラスについては適応型コードブックが一般に役に立たないので、単一のＡｂＳ符号化段が利用される。
【００７１】
〔無声フレーム（Unvoiced Frame）〕
この第４のクラスには周期的でない基本フレームが含まれる。この基本フレームでは、強い分離されたエネルギー・ピークを伴わずに、ランダム様の性質で音声が現れる。各基本サブフレーム用として疎励振ベクトルのランダムなコードブックを用いて励振が符号化される。
【００７２】
必要な励振信号のランダムな性質のためにウィンドウ操作は不要である。サーチ・フレームとサブフレームはそれぞれ基本フレームとサブフレームに常に一致する。ランダムに配置された３元パルスを含む固定コードブックを用いて、単一のＡｂＳ符号化段を利用することができる。
【００７３】
前述したように、上述の説明は、本発明の教示と実施を限定するようなものとして解釈すべきではない。例えば、上述したように、各ウィンドウに対して、パルス位置と極性とが３元パルス符号化を用いて符号化され、その結果、３つのパルスとサイズ２４のウィンドウに対して１２ビットが必要となる。ウィンドウ・パルスのベクトル量子化と呼ばれる代替実施例では、各コードブックのエントリが特定のウィンドウ・パルス・シーケンスを表すようにするために、パルス・パターンの予め設計されたコードブックが用いられる。このようにして、比較的少ないビットしか必要とせずに、３以上のノンゼロ・パルスを含むウィンドウを設けることが可能となる。例えば、ウィンドウの符号化用として８ビットが許されている場合、２５６のエントリを持つコードブックが必要となる。このコードブックは、非常に大きな数のすべての生じ得るパルスの組合せの中から統計的に最も有用な代表的パターンとなるウィンドウ・パターンを好適に表す。言うまでもなく、この同じ技術を他のサイズのウィンドウに適用することが可能である。さらに具体的には、最も有用なパルス・パターンの選択は、はっきりそれと判るほど重み付けられたコスト関数(すなわち、各パターンと関連する歪み測定値)を計算し、最大のコストあるいはそれに対応して最少の歪みを持つパターン選択により行われる。
【００７４】
強い周期性を持つクラスでは、あるいは、３クラス・システム(以下説明する)用の周期的クラスでは、前のウィンドウ開始ポイントに１ピッチ間隔分を加えることにより、各有声サーチ・フレーム内の第１のウィンドウが開始ポイントの近傍に配置されることについては上述した。次いで、サーチ処理によって正確な開始ポイントが決定される。予測値からの開始ポイントのずれ("ジッタ"と呼ばれる)を指定するために４ビットが用いられる。このように決定されたウィンドウの位置を持つフレームは"ジッタ・フレーム"と呼ぶことができる。
【００７５】
ピッチがオンセットしたり、ピッチが前のフレームから大きく変化したりすることに起因して、ジッターの正常なビット割り当てが不適切になる場合が時としてあることが判明している。ウィンドウの位置に対するさらに大きな制御を行うようにするために、"リセット・フレーム"を設けるオプションの導入が可能である。その場合ウィンドウの位置の指定専用としてさらに大きなビット割り当てが行われる。各周期的フレームに対して、ウィンドウの位置を指定するための２つのオプションの各々を求める個別サーチが行われ、決定処理によって、２つのケースの残差エネルギー・プロファイルのピークが比較され、ジッタ・フレームとしてフレームを処理するか、リセット・フレームとしてフレームを処理するかの選択が行われる。リセット・フレームが選択された場合、"リセット条件"が生じるように必要なウィンドウの位置をさらに正確に指定するためにさらに大きなビット数が使用される。
【００７６】
ピッチ値とウィンドウ位置のある一定の組合せに対して、サブフレームが全くウィンドウを含まないという可能性もある。しかし、このようなサブフレームに対してすべてゼロの固定励振を設ける代わりに、サブフレームの励振信号を得るために、たとえウィンドウが存在しなくてもビットの割り振りを行うことが有用であることが判明している。これは、ウィンドウの範囲内に励振を限定するという一般的原則からの逸脱と考えることができる。２パルス法は、単に、１つのパルスの最適位置を求めてサブフレーム内の偶数のサンプル位置をサーチし、次いで、第２のパルスの最適位置を求めて奇数のサンプル位置をサーチするものにすぎない。
【００７７】
本発明のさらなる態様に従う別のアプローチでは、適応型コードブック(Adaptive Codebook; ＡＣＢ)によりガイドされるウィンドウ操作が利用される。この場合、特別のウィンドウが、本来ウィンドウの無いサブフレーム内に含まれる。
【００７８】
ＡＣＢガイド型ウィンドウ操作法では、符号器によって、現在の、ウィンドウの無いサブフレームの適応型コードブック(ＡＣＢ)信号セグメントがチェックされる。これは、１ピッチ時間早く合成励振からとられた１サブフレームの持続時間からなるセグメントである。このセグメントのピークは、現在のサブフレーム様の特別のウィンドウの中心として発見され、選択される。このウィンドウの位置の特定にはビットを必要としない。次いで、このウィンドウ内でのパルス励振が、ウィンドウ無しではないサブフレームのための通常の処理手順に従って得られる。ビットがウィンドウ位置の符号化を必要としないという点を除いて、任意の他の"正常な"サブフレームに関する限り、このサブフレーム用として同数のビットを使用してもよい。
【００７９】
図７を参照すると、本発明に従う方法の論理フローチャートが示されている。ステップＡで、本方法はＬＰ残差用のエネルギー・プロファイルを計算する。ステップＢで、本方法は、ピッチ間隔≧３２に対しては２４に等しくなるように、また、ピッチ間隔＜３２に対しては１６に等しくなるようにウィンドウの長さを設定する。ステップＢの後、ステップＣとステップＤの双方を実行することができる。ステップＣで、本方法は前のフレーム・ウィンドウとピッチとを用いてウィンドウ位置を計算し、ウィンドウの範囲内のエネルギー(Ｅ)を計算して、最適のジッタを与える最大値ＥＰが得られる。ステップＤで、本方法は、リセット・フレームのケースのための、ＬＰ残差ＥＭの最大エネルギーを捕捉できるウィンドウ位置を得る。
【００８０】
上述したように、ジッタとは、前のフレームプラスピッチ間隔により与えられる位置に関するウィンドウ位置のずれである。同一フレーム内のウィンドウ間の距離はピッチ間隔に等しい。リセット・フレームに対して、第１のウィンドウ位置が送信され、フレーム内のすべての他のウィンドウは、ピッチ間隔に等しい前のウィンドウからの距離にあると考えられる。
【００８１】
不規則なフレームと弱い周期的フレームに対しては、サブフレーム当たり１つのウィンドウが存在し、そのウィンドウ位置はエネルギー・ピークによって決定される。各ウィンドウ用としてウィンドウ位置が送信される。周期的(有声)フレームに対しては、第１のウィンドウ位置だけが("ジッタされた"フレームの前のフレームに関して、さらに、リセット・フレームのためには必ず)送信される。第１のウィンドウ位置が与えられれば、ウィンドウの残り部分はピッチ間隔で配置される。
【００８２】
図７に戻ると、ステップＥで、本方法はＥＰとＥＭとを比較し、ＥＭ＞＞ＥＰの場合にはリセット・フレームを宣言し、そうでない場合には本方法はジッタ・フレームを利用する。ステップＦで、各サブフレームが整数のウィンドウを持つように、本方法はサーチ・フレームとサーチ・サブフレームを決定する。ステップＧで、本方法はウィンドウの内部で最適の励振をサーチする。ウィンドウの外側では励振はゼロに設定される。同一サブフレーム内の２つのウィンドウは同一の励振を持つように制約が設けられる。最後に、ステップＨで、本方法は、各サブフレームに対するウィンドウ位置と、ピッチと、励振ベクトルのインデックスとを復号器１０へ送信する。復号器１０はこれらの値を用いて元の音声信号の再構成を行う。
【００８３】
図７の論理フローチャートは、本発明の教示に従う符号化音声用回路構成のブロック図と考えることができることを理解すべきである。
【００８４】
次に、簡単に上述した３分類の実施例について説明を行う。本実施例では、基本フレームは、有声フレーム、遷移(不規則な)フレーム、無声フレームのいずれかとして分類される。図８−１０と関連してこの実施例についての詳細な説明を行う。当業者であれば、前述した４つのタイプの基本フレーム分類の実施例との発明主題の或るオーバーラップに気づくであろう。
【００８５】
一般に、無声フレームでは、固定コードブックの中には１組のランダムなベクトルが含まれる。各々のランダムなベクトルは３元(−１、０または＋１)の疑似ランダム・シーケンスのセグメントである。このフレームは３つのサブフレームに分割され、最適のランダムなベクトルとそれに対応する利得とがＡｂＳを用いて各サブフレーム内で決定される。無声フレームでは、適応型コードブックの寄与は無視される。この固定コードブックの寄与はそのフレーム内の励振の合計を表す。
【００８６】
効率的な励振表現を行うために、また、前述した本発明の態様に従って、有声フレーム内の固定コードブックの寄与は、そのフレームの範囲内の選択された間隔(ウィンドウ)の外側ではゼロとなるように制約が設けられる。有声フレーム内の２つの連続するウィンドウ間の分離は１ピッチ間隔に等しくなるように制約が設けられる。ウィンドウの位置とサイズは、理想的固定コードブック寄与の最も臨界的セグメントを一緒に表すように選択される。この技術は、音声信号のはっきりとそれと判るほど重要なセグメント上に符号器を集中させ、効率的な符号化を保証するものである。
【００８７】
有声フレームは一般に３つのサブフレームに分割される。１つの代替実施例では、フレーム当たり２つのサブフレームが実行可能な実現フレームであることが判明した。フレームとサブフレームの長さは(制御された方法で)変動可能である。これらの長さを決定する処理手順によって、ウィンドウが２つの隣接サブフレームを跨ぐことは決してないことが保証される。
【００８８】
ウィンドウの範囲内の励振信号は、３元値化した成分を持つベクトルのコードブックを用いて符号化される。さらに高い符号化効率のために、同一サブフレームの範囲内に配置される複数のウィンドウは(例え時間シフトされていても)同じ固定コードブック寄与を持つように制約が設けられる。最適コード−ベクトルとそれに対応する利得がＡｂＳを用いて各サブフレーム内で決定される。ＣＥＬＰ型アプローチを用いて過去の符号化された励振から導き出される適応型励振も利用される。
【００８９】
遷移クラス・フレーム内の固定コードブック励振の符号化方式はウィンドウのシステムにも基づいている。６つのウィンドウが可能であり、各サブフレーム内に２つのウィンドウが許容される。これらのウィンドウはサブフレーム内のどこにでも配置することができ、互いにオーバーラップしていてもよく、また、１ピッチ間隔によって分離される必要はない。しかし、１つのサブフレーム内のウィンドウは、別のサブフレーム内のウィンドウとオーバーラップしてはならない。フレームとサブフレームの長さは有声フレームにおける場合と同じように調整可能であり、最適固定コードブック(ＦＣＢ)ベクトルと利得とを各サブフレーム内で決定するためにＡｂＳが利用される。しかし、有声フレーム内での処理手順とは異なり適応型励振は利用されない。
【００９０】
フレームの分類に関して、現時点における好適な音声符号化モデルでは２段階分類装置が利用され、フレームのクラス(すなわち、有声クラス、無声クラス、あるいは遷移クラス)が決定される。分類装置の第１段によって現在のフレームが無声であるかどうかが決定される。第１段の決定は修正残差から抽出された１組の特徴分析を通じて行われる。分類装置の第１段が、フレームを"無声ではない"と宣言した場合、第２段は、フレームが有声フレームであるか遷移フレームであるかの判定を行う。第２段は"閉ループ"で機能する。すなわちフレームは、遷移フレームと有声フレームの双方に対して符号化方式に従って処理され、重み付き２乗平均誤差が低い方のクラスが選択される。
【００９１】
図８は、上述の動作原理を具現化する音声符号化モデル１２の高レベルのブロック図である。
【００９２】
入力サンプル化された音声はブロック３０内で高域フィルタにかけられる。３つの四乗冪セクションで実現されるバターワース(Butterworth)フィルタが好適な実施例で使用される。但し他のタイプのフィルタあるいはセグメント数を用いることも可能である。フィルタ・カットオフ周波数は８０Ｈｚであり、フィルタ３０の伝達関数は：
【数１】
2010286853.tif 000003
である。但し、各セクションHj(Z)は：
【数２】
2010286853.tif 000004
【００９３】
高域フィルタにかけられた音声は各々１６０サンプルの非オーバーラップ"フレーム"に分割される。
【００９４】
各フレーム(ｍ)で、３２０サンプル(フレーム"ｍ−１"から得られる最後の８０サンプルと、フレーム"ｍ"から得られる１６０サンプルと、フレーム"ｍ＋１"から得られる第１の８０サンプル)からなる"ブロック"は、モデル・パラメータ推測および逆フィルタ用ユニット３２内に在ると考えられる。本発明の好適な実施例では、サンプルのブロックは、ＴＩＡ／ＥＩＡ／ＩＳ−１２７文書のセクション４.２(モデル・パラメータ推定)に記載されている処理手順を用いて分析される。該文書には拡張型可変レート符号器(ＥＶＲＣ)音声符号化アルゴリズムについての記載がある。また以下のパラメータが得られる：
現在のフレーム用非量子化線形予測係数：  (ａ)；
現在のフレーム用非量子化ＬＳＰ：  Ω(ｍ)；
ＬＰＣ予測利得：  Ｙｌｐｃ(ｍ)；
予測残差：  ε(ｎ)，ｎ＝０,..３１９、現在のブロック内のサンプルに対応；
ピッチ遅延推定値：  Τ；
現在のブロックの２つの１／２の中の長期予測利得：  β，β１；
帯域幅拡張相関係数：  Ｒｗ
【００９５】
無言検出ブロック３６は、現在のフレーム内の音声の存在または非存在に関する２進決定を行う。この決定は以下のように行われる。
【００９６】
(Ａ)  ＴＩＡ／ＥＩＡ/ＩＳ−１２７ＥＶＲＣ文書のセクション４.３(データ・レートの決定)の"レート決定アルゴリズム"が用いられる。このアルゴリズムへの入力は、前のステップで計算されたモデル・パラメータであり、出力はレート変数Rate(m)である。このレート変数Rate(m)は現在のフレーム内での音声活動に応じて、値１、３または４をとることが可能である。
【００９７】
(Ｂ)  Rate(m)＝１ならば、現在のフレームは無音フレームと宣言される。Rate(m)＝１でない場合(すなわちRate(m)＝３または４の場合)現在のフレームはアクティブ音声と宣言される。
【００９８】
本発明の実施例では、無言を検出するだけの目的のために、ＥＶＲＣのレート変数が用いられることに留意されたい。すなわち、Rate(m)は、従来のＥＶＲＣの場合のように符号器１２のビットレートを決定するものではない。
【００９９】
以下のステップを通じてフレーム遅延を補間することにより現在のフレーム用遅延分布推定４０内で遅延した分布が計算される。
【０１００】
(Ａ)  補間式を用いて、ＴＩＡ／ＥＩＡ/ＩＳ−１２７文書のセクション４.５.４.５（補間された遅延推定値計算）の各サブフレーム、ｍ'＝０、１、２について３つの補間された遅延推定値、ｄ(ｍ',ｊ)、ｊ＝０、１、２が計算される。
【０１０１】
(Ｂ)  次いで、現在のフレーム内の３つのサブフレームの各々について、ＴＩＡ／ＥＩＡ/ＩＳ−１２７文書のセクション４.５.５.１（遅延分布計算）の数式を用いて遅延分布Ｔｃ(ｎ)が計算される。
【０１０２】
残差修正ユニット３８で、残差信号がＲＣＥＬＰ残差修正アルゴリズムに従って修正される。この修正の目的は、修正残差が、ピッチ間隔によって分離されたサンプル間で強い相関を示すことを保証することである。修正処理の適切なステップは、ＴＩＡ／ＥＩＡ/ＩＳ−１２７文書のセクション４.５.６（残差の修正）にリストされている。
【０１０３】
当業者は、規格ＥＶＲＣの中で、あるサブフレーム内の残差修正の後にそのサブフレーム内での励振の符号化が続くことに留意する。しかし、本発明の音声符号化では、現在のフレーム全体（３つすべてのサブフレーム）の残差の修正がそのフレーム内の励振信号の符号化に先行して行われる。
【０１０４】
現時点における好適な実施例の文脈で、ＲＣＥＬＰへの上述の参照を行うこと、および、ＲＣＥＬＰ技術の代わりに任意のＣＥＬＰ型技術を利用できることに再び留意されたい。
【０１０５】
開ループ分類装置ユニット３４は分類装置内の２つの段のうちの第１段を表し、該段で各フレーム内の音声の性質(有声、無声または遷移)が決定される。フレーム(ｍ)内の分類装置の出力はＯＬＣ(ｍ)であり、このＯＬＣ(ｍ)は「無声」または「無声ではない」という値を持つことができる。この決定は、高域フィルタにかけられた音声の３２０サンプルから成るブロックの分析によって行われる。このブロックｘ(ｋ)（ｋ＝０,１...３１９）は、モデル・パラメータ推定の場合のように、フレーム"ｍ−１"の最後の８０サンプルと、フレーム"ｍ"からの１６０サンプルと、フレーム"ｍ＋１"からの第１の８０サンプルとから、フレーム"ｍ"で得られる。次に、このブロックは４つの等長サブフレーム(各８０サンプル)ｊ＝０、１、２、３に分割される。次いで、４つのパラメータ(エネルギーＥ(ｊ)、ピーク度Ｐｅ(ｊ)、ゼロクロス・レートＺＣＲ(ｊ)、長期予測利得ＬＴＰＧ(ｊ))が各サブフレームｊのサンプルから計算される。これらのパラメータは、１組の分類決定（サブフレーム当たり１回の決定）を得るために次に用いられる。次いで、サブフレーム・レベルの分類決定が組み合わされて、開ループ分類装置ユニット３４の出力であるフレーム−レベル決定が行われる。
【０１０６】
サブフレームパラメータの計算に関して次に説明する。
【０１０７】
〔エネルギー（Energy）〕
サブフレームエネルギは次のように定義される。
【数３】
2010286853.tif 000005
ｊ＝０，１，２，３
【０１０８】
〔ピーク度（Peakiness）〕
サブフレーム内信号のピーク度は次のように定義される。
【数４】
2010286853.tif 000006
【０１０９】
〔ゼロ交差レート（Zero Crossing Rate）〕
ゼロ交差レートは次に示すステップを経て各サブフレームに関して計算される。    
まず、各サブフレームｊについてサンプルの平均Ａｖ（ｊ）が次式で計算される。
【数５】
2010286853.tif 000007
次に、平均値が、サブフレーム内の全サンプルから減算される。
y(k) = X(k) - Av(j)k = 80j...80j+79
サブフレームのゼロ交差レートは次のように定義される。
【数６】
2010286853.tif 000008
ここに、ＱがＴＲＵＥであれば関数δ(Q)＝１、ＱがＦＡＬＳＥであれば０である。
【０１１０】
〔長期予測利得（Long-term Prediction Gain）〕
長期予測利得（LTPG）は、次に示すモデル・パラメータ予測プロセスにおいて得られるβ及びβ１の値から計算される。
LTPG(0) = LTPG(3)（LTPG(3)は前のフレームに割り当てられた値）
LTPG(1) = (β1 + LTPG(0)) / 2
LTPG(2) = (β1 + β) / 2
LTPG(3) = β
【０１１１】
〔サブフレーム・レベルの分類〕
次に、上で計算された４つのサブフレームパラメータは、現行ブロック内の各サブフレームに関する分類決定を行うために用いられる。サブフレームｊに関して、その値がUNVOICED（無声）又はNOT UNVOICED（無声でない）のいずれかであり得る分類変数CLASS(j)が計算される。CLASS(j)の値は、以下に詳述される一連のステップを実行することによって求められる。後続するステップにおいて、次の量：
「有声エネルギー］  Vo(j)；
「無声エネルギー」  Si(j)；
「差エネルギー」    Di(j) = Vo(j) - Si(j）；
は、それぞれ、有声サブフレームの平均エネルギー、無声サブフレーム、および、これらの量の間の差の符号器による推定値を表す。これらのエネルギー推定値は各フレームの末端部において、以下に示す手順を用いて更新される。
【０１１２】
〔手順〕
2010286853.tif 000009
【０１１３】
〔フレームレベル分類〕
次に、各サブフレームに関して得られる分類決定は、全フレームに関する分類
決定OLC(m)を行うために用いられる。この決定は、次のように実施される。
【０１１４】
〔手順〕
2010286853.tif 000010
【０１１５】
〔音声エネルギー、無声エネルギー、及び、差エネルギーの更新〕
現行フレームが第3の連続した有声フレームであるならば、音声エネルギーは次のように更新される。
〔手順〕
If OLC(m) = OLC(m-1) = OLC(m-2) = VOICED
V0(M) = 10log10(0.94*100.1Vo(m) + 0.06*100.1E(0)
V0(m)= MAX(V0(m), E(1), E(2))
Else V0(m)= V0(m-1)(音声エネルギーの更新なし)
【０１１６】
現行フレームが無声フレームとして宣言されたならば、無声エネルギーは更新される。
〔手順〕
If SILENCE(m) = TRUE, Si(M) = [e(0)+e(1)]/2.0
【０１１７】
差エネルギーは次のように更新される。
〔手順〕
Di(m) = V0(m)-Si(m)
If Di(m)<10.0
Di(m)=10、V0(m)=Si(m)+10
【０１１８】
図８の励振符号化および音声合成ブロック４２は図９に示すように組織される。最初に、各フレームにおける修正済み残余を、当該フレームに適した符号器へ導くために開ループ分類器３４の決定が用いられる。ＯＬＣ（ｍ）が無声ならば、無声用符号器４２ａが用いられる。ＯＬＣ（ｍ）が無声でないならば、遷移符号器４２ｂおよび有声用符号器４２ｃ両方が呼び出され、閉ループ分類器４２ｄは、その値がTRANSITION（遷移）かVOICED（有声）のいずれかであるＣＬＣ（ｍ）決定を行う。遷移および有声用符号器４２ｂ及び４２ｃを用いた、閉ループ分類器４２ｄの決定は、音声の合成に起因する重み付けされたエラーに依存する。閉ループ分類器４２ｄは２つの符号化方式（遷移または有声）の一方を選び、選ばれた方式は合成音声を生成するために用いられる。各符号化システム４２ａ−４２ｃの動作および閉ループ分類器４２ｄについて、次に詳細に示す。
【０１１９】
先ず、図９の有声用符号器４２ｃを参照する。符号化処理は次の一連のステップのようにまとめることができる。各ステップは、後で図１１を参照しながら説明される。
（Ａ）ウィンドウ境界を決定する。
（Ｂ）サーチ・サブフレーム境界を決定する。
（Ｃ）各サブフレームにおけるＦＣＢベクトル及び利得を決定する。
【０１２０】
（Ａ）有声フレームに関するウィンドウ境界の決定。
〔入力〕
前のサーチ・フレームの終結点。
前のサーチ・フレームにおける最後の「エポック」の位置。エポックは現行フレームにおける重要なアクティビティのウィンドウ中心を表す。
現行基礎フレームの開始に対する１６から１７５までのサンプルインデックス（標本インデックス）に関する修正済み残余。
〔出力〕
現行フレームにおけるウィンドウの位置。
【０１２１】
〔手順〕
いくつかの点で図７に示すフローチャートに類似する図１０のフローチャートに示す手順を用いることにより、「エポック」を中心とする１組のウィンドウが有声フレーム内で同定される。有声フレームにおいて、修正済み残余における強い活動区間は、一般に、周期的に繰り返される。現時点において好ましい音声符号器１２は、有声フレーム内エポックは相互に１ピッチ間隔だけ分離されなければならないという強制条件を実装することによってその特質を発揮する。エッポクの配置に幾らかの融通性を許容するために、「ジッタ」が許される。即ち、現行サーチ・フレーム内の第１エポックと前のフレーム内の最後のエポックの間の距離はピッチ−８とピッチ＋７の間で選択可能である。ジッタの値（−８と＋７の間の整数）は受信装置における復号器１０に伝送される例えばジッタを偶数整数に限定するような拘束条件によって得られる量子化された値を使用しても差し支えないことに留意されたい）。
【０１２２】
ただし、幾らかの有声フレームにおいては、ジッタを導入したウィンドウを使用するとしても、全ての重要な信号アクティビティを捕捉するに十分な融通性は許容されない。そのような場合、「リセット」状態が許容され、当該フレームは有声リセット（VOICED RESET）フレームと呼ばれる。有声リセット・フレームにおいては、現行フレーム内エポックは相互に１ピッチ間隔だけ分離されているが、最初のエポックが現行フレーム内のどこにでも配置可能である。有声フレームがリセット・フレームでない場合には、非リセット（N0N-RESET）有声フレーム又はジッタが導入された（JITTERED）有声フレームと呼ばれる。
【０１２３】
次に、図１０のフローチャートにおける個別のブロックについて更に詳細に述べることとする。
【０１２４】
（ブロックＡ）ウィンドウ長およびエネルギー・プロファイルの決定
有声フレームで使用されるウィンドウの長さは現行フレームにおけるピッチに応じて選択される。先ず、ピッチ間隔が、各サブフレームに関して従来型ＥＶＲＣにおいて定義されていると同様に定義される。現行フレームの全てのサブフレームにおけるピッチ間隔の最大の値が３２より大きい場合には、ウィンドウ長は２４に選定され、そうでない場合には、ウィンドウ長は１６に設定される。
【０１２５】
各エポックに関してウィンドウは次のように定義される。エポックが位置ｅに所在する場合には、対応する長さＬのウィンドウはサンプルインデックスe-L/2からサンプルインデックスe+L/2-1の長さを有する。
【０１２６】
次に、「試験的サーチ・フレーム（tentative search frame）」が、現行サーチ・フレームの開始から現行基礎フレームの終りまでのサンプルの集合として定義される。同様に、「エポックサーチレンジ（epoch search range）」が、サーチ・フレームの開始後Ｌ／２サンプルで開始し、現行基礎フレームの終端部において終了する範囲として定義される（Ｌは現行フレームにおけるウィンドウ長である）。試験的サーチ・フレーム内の修正済み残余信号のサンプルはｅ（ｎ）（ｎ＝０...，Ｎ−１）として表示される。ここに、Ｎは試験的サーチ・フレームの長さである。試験的サーチ・フレーム内の各サンプルに関するピッチ値は、当該サンプルがその中に所在するサブフレームのピッチ値として定義され、ピッチ（ｎ）（ｎ＝０，．．Ｎ−１）で表示される。
【０１２７】
２つの「エネルギー・プロファイル」の一集合は、試験的サーチ・フレーム内の各サンプル位置において計算される。
【０１２８】
第1に、ローカルエネルギー・プロファイル、LE_Profileが、修正済み残余エネルギーのローカル平均として次のように定義される。
LE_Profile(n) = ［e(n-1)2＋e(n)2＋e(n+1)2］/3
【０１２９】
第2に、ピッチフィルタ後のエネルギー・プロファイル、PFE_Profileが次のとおりに定義される。
n＋pitch(n)＜N(現行サンプルを試験的サーチ・フレームの内側に置いた後のピッチ間隔のサンプル)であれば、
PF_Profile(n) = 0.5*［LE_Profile(n)＋LE_Profile(n＋pitch(n))］
そうでなければ、
PFE_Pro1ile(n) = LE_Profile(n)
【０１３０】
（ブロックＢ）ジッタが導入された最良エポックの決定
現行フレームをジッタが導入された有声(JITTERED VOICED)フレームとして宣言することの実用性を評価するために、ジッタの最良値(-8と7の間)が決定される。
【０１３１】
各候補ジッタ値jについて、次の処理を行う：
１．下記によって帰納的に決定される候補ジッタ値を選定することの結果として収集されるエポックとして、トラック（track）を定義する。
初期化：
epoch[n] = LastEpoch＋j＋pitch[subframe[0]]
繰り返し：
epoch[n] = epoch[n-1]＋Pitch(epoch[n-1])
（エポック[n]がエポックサーチレンジ内に在る限り、
n = 1，2..として繰り返す。）
【０１３２】
２．トラックピークの位置および振幅、すなわち、トラック上のローカルエネルギー・プロファイルが最大値であるようなエポックを計算する。
最適ジッタ値、j＊は、最大トラックピークを持つ候補ジッタとして定義される。リセット決定のために後で使用される量を次に示す。
J_TRACK_MAX_AMP：最適ジッタに対応するトラックピークの振幅。
J_TRACK_MAX_POS：最適ジッタに対応するトラックピークの位置。
【０１３３】
（Ｃ）最良リセットエポックの決定
VOICEDフレームとして宣言することの実用性を評価するために、エポックをリセットするための最良位置reset_epochが決定される。決定は次のとおりに行われる。
【０１３４】
reset_epochの値は、エポックサーチレンジ内におけるLE_Profile(n)ローカルエネルギプロファイルの最大値の位置に初期化される。
reset_epochから出発して周期的に配置される一連のエポック位置である初期「リセットトラック」が定義される。トラックは帰納的に求められる。
初期化：
epoch[0] = reset_epoch
繰り返し：
epoch(n] = epoch[n-1]＋Pitch(epoch[n-1])
（epoch[n]がエポックサーチレンジ内にある限り、
n = 1，2..として繰り返す。）
【０１３５】
reset_epochの値は次のように計算し直される。エポックサーチレンジ内の全てのサンプルインデックスkの中で、次の条件(a)-(e)を満足させる最も前の(kが最小の)サンプルが選定される。
(a)サンプルkはリセットトラック上のエポックの5個のサンプルに含まれる。
(b)ピッチフィルタ後のエネルギー・プロファイル、PFE_Profileは、次に示すkにおいて、以下に定義される局所最大値を有する。
PFE_Proffie(k)＞PPE_Profile(k＋j)  （j= -2, -1, 1, 2）
(c)kにおけるピッチフィルタ後のエネルギー・プロファイルの値は、reset_epochにおけるその値と比べて顕著に大きい。
PFE_Profile(k)＞0.3＊PFE_Profile(reset_epoch)
(d)kにおけるローカルエネルギー・プロファイルの値は、ピッチフィルタ後のエネルギー・プロファイルの値と比べて顕著に大きい。
LE_Profile(k)＞0.5＊PFE_Proflle(k)
(e)kの位置は最後のエポックから十分に(例えば＞0.7＊pitch)離れていること。
【０１３６】
前述の条件を満足させるサンプルkが発見されるならば、reset_epochの値はkに変更される。
【０１３７】
最終リセットトラックは、リセットエポックから出発して周期的に配置された一連のエポック位置として決定され、帰納的に求められる。
初期化：
epoch[0] = reset_epoch
繰り返し：
epoch(n] = epoch[n-1]＋Pitch(epoch[n-1])
（epoch[n]がエポックサーチレンジ内にある限り、
n = 1，2..として繰り返す。）
【０１３８】
リセットトラック上のピッチフィルタ後のエネルギー・プロファイルの最高値である「リセットトラックピーク」の位置および大きさが得られる。次の量はフレームをリセットすることを決定するために用いられる。
R_TRACK_MAX_AMP：リセットトラックピークの振幅。
R_TRACK_MAX_POS：リセットトラックピークの位置。
【０１３９】
（ブロックＤ）フレームをリセットすることに関する決定
現行フレームをリセットすることに関する決定は次のとおりに実施される。
もし、｛(J_TRACK_MAX_AMP／R_TRACK_MAX_AMP＜0.8) ｝又は｛前のフレームがUNVOICED｝であり、｛｜J_TRACK_MAX_POS-R_TRACK_MAX_POS｜＞4｝であるならば、
現行フレームはRESET VOICEDフレームとして宣言される。
そうでなければ、
現行フレームはNON-RESET VOICED FRAMEとして宣言される。
【０１４０】
（ブロックＥ）エポック位置の決定
現行サーチ・フレーム内の第1エポックの試験的位置を意味する量FIRST_EPOCHは次のように定義される。
現行フレームがRESETフレームであるならば、
FIRST_EPOCH = R_TRACK_MAX_POS
そうでなければ、
FIRST_EPOCH = J_TRACK_MAX_POS
【０１４１】
第1エポックの試験的位置FIRST_EPOCHが決定している場合には、このエポックに続くエポック位置の一集合は次のように決定される。
初期化：
Epoch[0] = FIRST_EPOCH
繰り返し：
epoch[n] = epoch[n-1]＋Pitch(epoch[n-1])
（epoch[n]がエポックサーチレンジ内にある限り、
n = 1, 2...として繰り返す。）
【０１４２】
前のフレームが有声であって、現行フレームはリセット有声フレームである場合には、エポックは、以下に示す手順を用いて、FIRST_EPOCHの左に導入可能である。
〔手順〕
epoch[-n] = epoch[-n-1]―Pitch(epoch[-n])
（epoch[-n]がエポックサーチレンジ内にある限り、
n = 1，2..として繰り返す。）
条件k＞0.1*pitch(subframe[0])及びk-LastEpoch＞0.5*pitch(subtrame(0)) 
を満足しない全てのエポックを削除する。
左端(最もインデックスの小さい)がepoch[0]であるように
エポックをインデックスし直す。
【０１４３】
現行フレームがリセット有声フレームであるならば、エポックの位置は下記の手順を用いて平滑化される。
〔手順〕
n = 1, 2, ... Kとして繰り返す。
epoch[n] = epoch[n]-(K-n) * [epoch[0]-LastEpoch](K＋1)
ここで、LastEpochは前のサーチ・フレームにおける最後のエポックである。
エポック位置を平滑化する目的は、信号の周期性の突然変動を防止することである。
【０１４４】
前のフレームが有声フレームでなく、現行フレームがリセット有声フレームである場合には、次の手順を用いてエポックをFirst_Epochの左に導入する。
それぞれ現行基礎フレーム内サンプルに関するエネルギー・プロファイルの
平均値およびピーク値であるAV_FRAME、および、PK_FRAMEを決定する。
次に、次のようにして、エポックをSTART_EPOCHの左に導入する。
epoch[-n] = epoch[-n＋1]-Pitch(epoch[-n])
（epoch[-n]がエポックサーチレンジ内にある限り、エポックサーチレンジの
開始に到達するまで、n = 1, 2..として繰り返す。）
【０１４５】
新規に導入された各エポック、epoch[n]（n = 1, 2, ... K）によって定義されるウィンドウ内のサンプルに関して、ローカルエネルギー分布（local energy contour）の最大値としてWIN_MAX[n]を定義する。新規導入された全てのエポックが次の条件：
(WIN_MAX＞0.13 PK_FRAME) 且つ (WIN MAX＞1.5 AV_FRAME)
を満足させることを確認する。
【０１４６】
新規導入されたエポックが前述の条件を満足させないならば、そのエポック及びその左側の全てのエポックを除去する。
【０１４７】
エポックサーチレンジ内の最も初めのエポックがepoch[0]であるように、エポックをインデックスし直す。
【０１４８】
有声フレームに関するウィンドウ境界を決定し、図９の有声用符号器４２ｃを参照して、有声フレーム（図１１、ブロックＢ）に関し、サーチ・サブフレーム境界を決定するための現時点において好ましい技法について述べることとする。
【０１４９】
入力
前のサーチ・フレームの終結点。
現行フレーム内ウィンドウの位置。
出力
現行フレーム内サーチ・サブフレームの位置。
【０１５０】
〔手順〕
各サブフレーム（０，１，２）に関して、次の処理を行う：
現行サーチ・サブフレームの初めが、最後のサーチ・サブフレームの末端部に後続するサンプルと同等になるように設定する。
現行サーチ・サブフレームの最後のサンプルが現行の基礎サブフレームの最後のサンプルと同等になるように設定する。
現行基本サブフレーム内の最後のサンプルがウィンドウ内に所在する場合には、現行サーチ・サブフレームは次のように定義し直される：
・  当該ウィンドウの中心が現行基本サブフレーム内に所在する場合には、現行サーチ・サブフレームをウィンドウの終端部まで拡張する。即ち、流現行サーチ・サブフレームの端部を基本サブフレームの終端部にまたがる（ウィンドウと重複する）ウィンドウの最後のサンプルとして設定する。
・  そうでない場合（ウィンドウの中心がその次の基本サブフレーム内に所在する場合）：
・  現行サブフレーム（最初の２つのサブフレーム）のインデックスが０又は１であるならば、現行サーチ・サブフレームの終端部を、重複するウィンドウの開始に先行するサンプル（現行サーチ・サブフレームからウィンドウを除外する）に設定する。
・  そうでなければ（これが最後のサブフレームである場合には）、現行サーチ・サブフレームの終端部を当該サンプルのインデックスとして設定する。即ち、重複するウィンドウの開始以前に８個のサンプルが所在する（このサーチ・サブフレームから当該ウィンドウを除外し、当該ウィンドウがその次のフレーム内のこのウィンドウ位置の調整を可能にする以前に、追加的な余裕を残しておく）。
残りのサブフレームに関して、この手順を反復する。
【０１５１】
サーチ・サブフレームを決定すると、その次のステップの目的は、各サブフレーム内の固定コードブック（ＦＣＢ）の貢献度を識別することにある（図１１のブロックＣ）。ウィンドウ位置はピッチ間隔に依存するので、（特に男性話者に関しては）幾らかのサーチ・サブフレームはウィンドウを一切所有しないことが可能である。この種サブフレームは、次に示す特殊手順を介して扱われる。ただし、大抵の場合、サブフレームはウィンドウを含み、従って、これらのサブフレームに関するＦＣＢの貢献度は次の手順を介して決定される。
【０１５２】
図１１のブロックＣにおいて、ＦＣＢのベクトル及びウィンドウを有する有声サブフレームに関する利得の決定について次に詳述する。
【０１５３】
〔入力〕
・  現行サーチ・サブフレーム内の修正済み残余。
・  現行サーチ・サブフレーム内におけるウィンドウの位置。
・  現行サブフレーム内における重み付けされた合成フィルタのゼロ入力レスポンス（ＺＩＲ）。
・  現行サーチ・サブフレームにおけるＡＣＢ貢献度。
・  現行サブフレームにおける重み付けされた合成ジッタのインパルスレスポンス。
【０１５４】
〔出力〕
・  ＦＣＢベクトルのインデックス選定。
・  ＦＣＢベクトルに対応する最適利得の選定。
・  合成された音声信号。
・  最適ＦＣＢベクトルに対応する重み付けされたエラーの二乗。
【０１５５】
〔手順〕
有声フレームにおいて、サブフレーム内ウィンドウの中のサンプルに関して固定コードブックから導出された励振信が選定される。同一サーチ・サブフレーム内に多重ウィンドウが発生するならば、当該サブフレーム内の全てのウィンドウには同じ励振が強制される。この拘束条件は情報を効率的に符号化するために望ましい。
【０１５６】
最適ＦＣＢ励振は、合成による分析（ＡｂＳ）手順を介して決定される。最初に、重み付けされた合成ジッタのＺＩＲ（ゼロ入力レスポンス）及びＡＣＢ貢献度を修正済み残余から減算することによってＦＣＢターゲットが求められる。固定したコードブックＦＣＢ＿Ｖはピッチの値によって変化し、次の手順によって求められる。
【０１５７】
ウィンドウ長（Ｌ）が２４に等しいならば、ＦＣＢ＿Ｖにおける２４次元ベクトルは次のようにして求められる。
（Ａ）各コードベクトルは、ウィンドウ内の３個を除く２４個の位置全てにゼロを配置することによって求められる。３個の位置は、次に示す各トラック上の１つの位置を採用することによって選定される。
トラック０：位置 ０ ３ ６ ９ １２ １５ １８ ２１
トラック１：位置 １ ４ ７ １０ １３ １６ １９ ２２
トラック２：位置 ２ ５ ８ １１ １４ １７ ２０ ２３
（Ｂ）選定された位置における各非ゼロパルスは＋１または−１であり、４０９６個のコードベクトルへ導かれる（即ち、５１２個のパルス位置組み合わせに８個の符号組み合わせを乗算する）。
【０１５８】
ウィンドウ長（Ｌ）が１６に等しいならば、１６次元のコードブックが次のようにして求められる。
（Ａ）１６個の位置の４個を除く全てにゼロを配置する。次に示す各トラックに１つずつ非ゼロパルスが配置される。
トラック０：位置  ０  ４  ８  １２
トラック１：位置  １  ５  ９  １３
トラック２：位置  ２  ６  １０  １４
トラック３：位置３７１１１５
（Ｂ）各非ゼロパルスは＋１または−１であり、この場合にも４０９６個の候補ベクトルへ導かれる（即ち、２５６個の位置組み合わせと、１６個の符号組み合わせ）。
【０１５９】
各コードベクトルに対応して、現行サーチ・サブフレーム内において密封されない励振信号が生成される。この励振は、コードベクトルを、現行サブフレーム内の全てのウィンドウへコピーし、他のサンプル位置にはゼロを置くことによって得られる。この励振に関する最適スカラ利得は、合成による分析を用いて、重み付けされた合成コストと共に決定される。４０９６個のコードベクトル全てについてサーチすることは計算的に高価であるので、全コードブックの部分集合についてサーチはが実施される。
【０１６０】
第１サブフレームにおいて、サーチは、サーチ・サブフレームの第１ウィンドウ内の対応する位置において後方濾過されたターゲット信号の符号とマッチする符号の非ゼロパルスを有するコードベクトルに限定される。当該技術分野における当業者であれば、この技法が複素数減算においてＥＶＲＣに用いられる手順に幾分類似することを認識するはずである。
【０１６１】
第２および第３のサブフレームにおいて、全てのトラック上のパルスの符号は、第１サブフレームにおいて対応するトラックに関して選定された符号と同じであるか、又は、全てのトラックにおいて完全に反対であるかのいずれかに限定される。第２および第３のサブフレームの各々においてパルスの符号を識別するためにはただ１つのビットが必要であり、有効コードブックは、Ｌ＝２４であれば１０２４個のベクトルを持ち、Ｌ＝１６であれば５１２個のベクトルを持つ。
【０１６２】
最適候補が決定され、この候補に対応する合成音声が計算される。
【０１６３】
ＦＣＢベクトル及びウィンドウ無し有声サブフレームに関する利得を決定するための現時点において好ましい技法について述べることとする。
【０１６４】
〔入力〕
・  現行サーチ・サブフレームにおける修正された残余。
・  現行サブフレームにおける重み付け合成フィルタのＺＩＲ。
・  現行サーチ・サブフレームにおけるＡＣＢ貢献度。
・  現行サブフレームにおける重み付け合成フィルタのインパルスレスポンス。
【０１６５】
〔出力〕
・  選定されたＦＯＢベクトルのインデックス。
・  選定されたＦＣＢベクトルに対応する最適利得。
・  合成された音声信号。
・  最適ＦＣＢベクトルに対応する重み付け二乗エラー。
【０１６６】
〔手順〕
ウィンドウ無し有声サブフレームにおいて、次に示す手順を用いて、固定励振が導出される。
【０１６７】
ＦＣＢターゲットは、重み付け合成フィルタのＺＩＲおよびＡＣＢ貢献度を修正済み残余から減算することによって得られる。コードブック、ＦＣＢ＿Ｖは、次の手順によって得られる。
【０１６８】
各コードベクトルは、サーチ・サブフレーム内の２つに位置を除く全ての位置にゼロを配置することによって得られる。２つの位置は次に示す各々のトラック上における１つの位置を採用することによって選定される。
トラック０：位置  ０  ２  ４  ６  ８  １０．．（奇数番号インデックス）
トラック１：位置  １  ３  ５  ７  ９．．（偶数番号インデックス）
選定された位置における各非ゼロパルスは＋１または−１である。サーチ・サブフレームの長さは６４個のサンプルに相当するので、コードブックは４０９６個のベクトルを有する。
【０１６９】
各コードベクトルに関する最適スカラ利得は、標準合成による分析技法を用いて重み付けされた合成コストと共に決定され得る。最適候補が決定され、次に、この候補に対応する合成音声が計算される。
【０１７０】
本発明の現時点における好ましい実施形態における図９の遷移符号器４２ｂに関して、遷移フレームの符号化において２つのステップがある。第１ステップは、図８の閉ループ分類器３４によって実施される閉ループ分類プロセスの一部として行われ、遷移に関するターゲットレートは、分類におけるレートバイアスを回避するために４ｋｂ／ｓに維持される（レートが更に高くなれば、分類器は遷移に向かってバイアスされる）。この第１ステップにおいて、固定コードブックはサブフレーム当たりウィンドウ１つを用いる。対応するウィンドウの集合は、今後、ウィンドウの「第１集合」と称する。第２ステップにおいて、余分なウィンドウが各サブフレームに導入され、ウィンドウの「第２集合」を生成する。この手順は、分類器にバイアスをかけることなしに、遷移のみに関してレートを増大することを可能にする。
【０１７１】
遷移フレームに関する符号化手順を要約すると、図１２に示すように、以下に示す一連のステップとなる。
（Ａ）ウィンドウ境界の「第１集合」を決定する。
（Ｂ）サーチ・サブフレーム長を選定する。
（Ｃ）ウィンドウの第２集合に励振を導入するために各サブフレームおよびターゲット信号内第１ウィンドウに関するＦＣＢベクトル利得を決定する。
（Ｄ）ウィンドウ境界の「第２集合」を決定する。
（Ｅ）各サブフレーム内第２ウィンドウに関するＦＣＢベクトルおよび利得を決定する。
【０１７２】
ステップＡ：遷移サブフレームに関するウィンドウ境界第１集合の決定。
【０１７３】
〔入力〕
・  前のサーチ・フレームの終結点。
・  現行基本フレームの開始に対する−１６から１７５までのサンプルインデックスに関する修正済み残余。
〔出力〕
・  現行フレームにおけるウィンドウの位置。
【０１７４】
〔手順〕
各基本サブフレームに１つずつ、最初の３つのエポックが決定される。エポックに中心を置く長さ２４のウィンドウは、既に検討した有声フレームの場合と同様に次のように定義される。エポックの相対位置に関しては一切拘束条件は無いが、次に示す４つの条件（Ｃ１−Ｃ４）が満たされることが望ましい。
（Ｃ１）サーチ・フレームの開始に対してエポックが所定位置＠ｎに在る場合には、ｎは次の方程式を満足させなければならない。ｎ＝８＊ｋ＋４：（ｋは整数）
（Ｃ２）エポックによって定義されるウィンドウは相互に重複してはならない。
（Ｃ３）第１エポックによって定義されるウィンドウは前のサーチ・フレーム内に伸延してはならない。
（Ｃ４）エポック位置は、これらのエポックによって定義されるウィンドウに含まれる修正済み残余のサンプルの平均エネルギーを最大化する。
【０１７５】
ステップＢ：遷移フレームに関するサーチ・サブフレーム境界の決定。
この手順は、有声フレームにおけるサーチ・サブフレーム境界を決定するための既に述べた手順と同じであり得る。
【０１７６】
ステップＣ：ＦＣＢベクトル及び遷移サブフレーム内第１ウィンドウに関する利得の決定。
この手順は、次に示す態様以外は有声フレームにおいて用いられる手順に類似する。
（ｉ）各サーチ・サブフレームにおいてはただ１つのウィンドウがある。
（ｉｉ）ＡｂＳの従来型ステップの実施に加えて、追加ウィンドウ（ウィンドウの第２集合）における励振導入のための新規ターゲットを決定するために、ＦＣＢターゲットから最適ＦＣＢが差し引かれる。
【０１７７】
ここに示すようにウィンドウの第１集合に励振を導入した後で、ターゲット励振におけるエネルギーの他の有意ウィンドウを収容するために各サーチ・サブフレームに１つずつウィンドウの追加集合が導入される。ウィンドウの第２集合に関するパルスが、次に示す手順を介して導入される。
【０１７８】
ステップＤ：遷移サブフレームに関するウィンドウ境界の第集合の決定。
〔入力〕
・  前のサーチ・フレームの終結点。
・  遷移サブフレームにおける追加ウィンドウ導入のためのターゲット信号。
・  現行フレームにおけるサーチ・サブフレームの位置。
〔出力〕
・  現行フレームにおけるウィンドウの第２集合の位置。
【０１７９】
〔手順〕
３つの追加エポックが現行フレーム内に配置され、これらのエポックを中心とする長さ２４のサンプルのウィンドウが定義される。追加エポックは、次の４条件（Ｃ１−Ｃ４）を満足させる。
（Ｃ１）各サーチ・サブフレームにただ１つの追加エポックが導入される。
（Ｃ２）追加エポックによって定義される一切のウィンドウはサーチ・サブフレームの境界を越えて伸延しない。
（Ｃ３）サーチ・フレームの開始に対してエポックが所定位置ｎに在る場合には、ｎは次の方程式を満足させなければならない。ｎ＝＊８ｋ＋４：（Ｋは整数）
（Ｃ４）前述の条件を満足させる全ての可能性のあるエポック位置の中の、選定されたエポックは、これらのエポックによって定義されたウィンドウ内に含まれるターゲット信号の平均エネルギーを最大化する。
【０１８０】
ステップＥ：遷移サブフレームにおける第２ウィンドウに関するＦＣＢベクトル及び利得の決定。
【０１８１】
〔入力〕
・  現行サーチ・サブフレーム内追加ウィンドウを包含するためのターゲット。
・  現行サブフレーム内重み付け合成フィルタのインパルスレスポンス。
〔出力〕
・  選定されたＦＣＢベクトルのインデックス。
・  選定されたＦＣＢベクトルに対応する最適利得。
・  合成された音声信号。
【０１８２】
〔手順〕
長さ２４のウィンドウに関して早期に定義された固定コードブックが用いられる。サーチは、その非ゼロパルスの符号が対応する位置におけるターゲット信号の符号とマッチするコードベクトルに限定される。ＡｂＳ手順は最良のコードベクトル及び対応する利得を決定するために用いられる。最良の励振は合成フィルタを経て濾過され、ウィンドウの第１集合における励振から合成された音声に加えられ、このようにして現行サーチ・サブフレームにおける完全な合成音声が得られる。
【０１８３】
次に、図９の無声用符号器４２ａおよび無声フレームに関する図１３のフローチャートに関して、サーチ・サブフレームにおけるＦＣＢ貢献度は、その構成成分が疑似ランダム３進（−１，０または＋１）数であるベクトルのコードブックから導出される。次に最適コードベクトル及び対応する利得は、合成による分析を用いて各サブフレームにおいて決定される。適応コードブックは使用されない。サーチ・サブフレーム境界は以下に示す手順を用いて決定される。
【０１８４】
ステップＡ：無声フレームに関するサーチ・サブフレーム境界の決定。
【０１８５】
〔入力〕
前のサーチ・フレームの終結点。
〔出力〕
現行フレームにおけるサーチ・サブフレームの位置。
〔手順〕
第１サーチ・サブフレームは、（現行基本フレームの開始に対して）最後のサーチ・フレームの末端部に後続するサンプルからサンプル番号５３まで伸延する。第２および第３サーチ・サブフレームは、それぞれ、５３および５４の長さを持つように選択される。無声サーチ・フレーム及び基本フレームは同一位置において終結する。
【０１８６】
ステップＢ：無声サブフレームに関するＦＣＢベクトルおよび利得の決定。
【０１８７】
〔入力〕
・  現行サーチ・サブフレームにおける修正済み残余ベクトル。
・  現行サブフレームにおける重み付け合成フィルタのＺＩＲ。
・  現行サブフレームにおける重み付け合成フィルタのインパルスレスポンス。
〔出力〕
・  選定されたＦＣＢベクトルのインデックス。
・  選定されたＦＣＢベクトルに対応する利得。
・  合成された音声信号。
【０１８８】
〔手順〕
最適ＦＣＢベクトル及びその利得が合成による分析（analysis-by-synthesis）を介して決定される。励振ベクトルFCB_UV[0]...FCB_UV[511]のコードブックFCB_UVは、３進価値数のシーケンスRAN_SEQ[k], k=0...605から次の方法で得られる。
FCB_UV[i], {RAN_SEQ[i], RAN_SEQ[i+1],... RAN_SEQ[1+L-1]}
ここでＬは現行サーチ・サブフレームの長さである。最適励振に対応する合成音声信号も計算される。
【０１８９】
再度、図９を参照する。閉ループ分類器４２ｄは、フレーム内音声信号（有声、無声、または、遷移）の性質を決定するフレームレベル分類器の第２段階を表す。
【０１９０】
次の式において、量Ｄｌはウィンドウの第集合の導入後における遷移仮説の重み付けされた二乗誤差と定義され、Ｄｖは有声仮説における重み付けされた二乗誤差として定義される。閉ループ分類器４２ｄは出力を生成する。各フレームｍにおけるＣＬＣ（ｍ）を次に示す。
もしＤｌ＜０．８Ｄｖであれば、
ＣＬＣ（ｍ）＝ＴＲＡＮＳＩＴＩＯＮ（遷移）
そうでない場合、もしβ＜０．７、及び、Ｄｌ＜Ｄｖであれば、
ＣＬＣ（ｍ）＝ＴＲＡＮＳＩＴＩＯＮ（遷移）
そうでない場合、
ＣＬＣ（ｍ）＝ＶＯＩＣＥＤ（有声）
【０１９１】
閉ループ分類器４２ｄは、量ＤｌとＤｖを比較することによって有声および遷移仮説を用いる相対的な利点を比較する。Ｄｌは遷移仮説の重み付けされた最終的二乗誤差でなく、ＦＣＢ貢献性がウィンドウの第１集合に導入された後で得られる中間誤差測定値であることに注意されたい。遷移コーダ４２ｂは有声コーダ４２ｃより高いビットレートが使用可能であり、従って、重み付けされた二乗誤差の直接的比較は適切でないので、この方法は好ましい。他方、量ＤｌおよびＤｖは同様のビットレートに対応し、従って、閉ループ分類に際してこれらの比較は適切である。遷移フレームに関するターゲットビットレートが４ｋｂ／ｓであることに注意されたい。
【０１９２】
図９において、ＳＷ１−ＳＷ３は論理スイッチを表す。ＳＷ１及びＳＷ２のスイッチング状態は開ループ分類器３４からのＯＬＣ（ｍ）信号出力の状態によって制御され、ＳＷ３のスイッチング状態は閉ループ分類器４２ｄからのＣＬＣ（ｍ）信号出力によって制御される。ＳＷ１は、修正済み残余を無声用符号器４２ａの入力または遷移符号器４２ｂの入力のどちらか、および、同時に、有声用符号器４２ｃの入力に切り替えるように作動する。ＳＷ２は、ＣＬＣ（ｍ）及びＳＷ３による選択に従って、無声用符号器モデル４２ａに基づいた合成音声、または、遷移符号器４２ｂからの遷移仮説出力に基づいく合成音声の１つ、または、有声用符号器４２ｃからの有声仮説出力に基づく合成音声のいずれかを選定するように作動する。
【０１９３】
図１４は対応する復号器１０の構成図である。スイッチＳＷ１およびＳＷ２は、以前に述べたように、その状態が対応する音声コーダから伝送される分類表示（例えば、２ビット）によって制御される論理スイッチを表す。更に、この点に関して、いずれかの供給源からの入力ビットストリームが、（ＳＷ１及びＳＷ２のスイッチング状態を制御する）クラス復号器１０ａ、および、合成フィルタ１０ｂ及びポストフィルタ１０ｃに結合された出力を備えたＬＳＰ復号器１０ｄに供給される。合成フィルタ１０ｂの入力は、ＳＷ２の出力に結合され、従って、フレームのクラスの関数としての選択に従った複数の励振発生器の１つの出力を表す。更に詳細には、本実施形態において、ＳＷ１とＳＷ２の間には無声励振発生器１０ｅ及び関連利得エレメント１０ｆが配置される。他のスイッチ位置において、関連ピッチ復号器１０ｈおよびウィンドウ発生器１０i、ならびに、適応コードブック１０ｋ、利得エレメント１０j、及び、合計接合部１０ｍと共に、有声励振固定コードブック１０ｇおよび利得エレメント１０ｊが配置される。更なるスイッチ位置において、遷移励振固定コードブック１０ｏおよび利得エレメント１０ｐ、ならびに、関連ウィンドウ復号器１０ｑが配置される。ＳＷ２の出力ノードからの適応コードブックフィードバック経路１０ｎが存在する。
【０１９４】
次に、復号器１０について更に詳細に記述することとし、クラス復号器１０ａは、入力ビットストリームからクラス情報を運ぶビットを検索し、かつ、そこからクラスを復号する。図１４の構成図に示す実施形態において、３つのクラス：無声、有声、および、遷移が存在する。以上の説明から明らかであるように、本発明の他の実施形態は、種々異なる数のクラスを含むはずである。
【０１９５】
クラス復号器は、入力ビットストリームを各クラスに対応する励振発生器へ導くスイッチＳＷ１を作動化する（各クラスは個別の励振発生器を有する）。有声クラスに関しては、ブロック１０ｈにおいて先ず復号され、ブロック１０ｉにおいてウィンドウを生成するために用いられるビットストリームはピッチ情報を含む。ピッチ情報に基づき、利得１０ｊによって乗算され、かつ有声フレームに関する合計励振を与えるために加算器１０ｍによって適応コードブック励振に加えられる励振ベクトルを生成するために、適応コードブックベクトルがコードブック１０ｇから検索される。固定および適応コードブックに関する利得値は、ビットストリーム内の情報に基づき利得コードブックから検索される。
【０１９６】
無声クラスに関しては、コードブック１０ｅからランダムベクトルを検索し、かつ、ベクトルに利得エレメント１０ｆを乗算することにより励振が得られる。
【０１９７】
遷移クラスに関して、ウィンドウ位置はウィンドウ復号器１０ｑにおいて復号される。コードブックベクトルは、ウィンドウ復号器１０ｑからのウィンドウロケーションに関する情報およびビットストリームからの追加情報を用いて遷移励振固定コードブック１０ｃから検索される。選定されたコードブックベクトルは利得エレメント１０ｐによって乗算され、結果として、遷移フレームに関する合計励振が得られる。
【０１９８】
クラス復号器１０ａによって作動化される第２スイッチＳＷ２は、現行クラスに対応する励振を選定する。励振は、ＬＰシンセサイザフィルタ１０ｂに供給される。励振は、接続部１０ｎを介して適応コードブック１０ｋにもフィードバックされる。シンセサイザフィルタの出力は、音声品質を改良するためにポストフィルタ１０ｃをパスされる。合成フィルタ及びポストフィルタパラメータは、ＬＳＰ復号器１０ｄによって入力ビットストリームからの復号されるＬＰＣパラメータに基づく。
【０１９９】
フレーム及びサブフレーム、特定のウィンドウサイズ、特定のパラメータ、及び、比較の対象としてのしきい値、等々に関する特定数の例について説明したが、現時点における本発明の好ましい実施形態が開示されたことを理解されたい。他の値、適宜調節された種々のアルゴリズム、及び、手順も使用可能である。
【０２００】
更に、既に注記したように、本発明の教示は、わずか３つ又は４つのフレーム分類の使用に限定されることなく、フレーム分類の数がこれよりも多くても少なくても使用可能である。
【０２０１】
当該技術分野における当業者であれば、本発明についてのこれら及び他の開示された実施形態の幾つかの修正および改変を導出可能であるはずである。ただし、この種全ての修正および改変は本発明の教示の範囲内に在り、後述する特許請求の範囲内に包含されるものとする。
【０２０２】
本発明の音声符号器は無線電話、または、この種の無線応用での使用に限定されないことに留意することが重要である。例えば、本発明の教示に従って符号化された音声信号は、後で再生するために簡単に記録可能であり、かつ／又は、デジタル信号を運ぶために光ファイバ、及び／又は、電気導体を使用する通信網を介して伝送可能である。
【０２０３】
更に、既に注記したように、本発明の教示は符号分割多元接続（ＣＤＭＡ）技法またはスペクトラム拡散技法との使用にのみ限られることなく、例えば、時分割多元接続（ＴＤＭＡ）技法、または、他の多重ユーザーアクセス技法（または、単一ユーザーアクセス技法等）にも実用可能である。
【０２０４】
本発明は好ましい実施形態について具体的に図示および記述したことを理解されたく、同時に、当該技術分野における当業者であれば、本発明の範囲および趣旨から逸脱することなしに形式および詳細を変更することが可能であることを理解するはずである。
【図１】
2010286853.tif 000011
【図２】
2010286853.tif 000012
【図３】
2010286853.tif 000013
【図４】
2010286853.tif 000014
【図５】
2010286853.tif 000015
【図６】
2010286853.tif 000016
【図７】
2010286853.tif 000017
【図８】
2010286853.tif 000018
【図９】
2010286853.tif 000019
【図１０】
2010286853.tif 000020
【図１１】
2010286853.tif 000021
【図１２】
2010286853.tif 000022
【図１３】
2010286853.tif 000023
【図１４】
2010286853.tif 000024