JP4176349B2 - マルチモードの音声符号器 - Google Patents
マルチモードの音声符号器 Download PDFInfo
- Publication number
- JP4176349B2 JP4176349B2 JP2001525686A JP2001525686A JP4176349B2 JP 4176349 B2 JP4176349 B2 JP 4176349B2 JP 2001525686 A JP2001525686 A JP 2001525686A JP 2001525686 A JP2001525686 A JP 2001525686A JP 4176349 B2 JP4176349 B2 JP 4176349B2
- Authority
- JP
- Japan
- Prior art keywords
- rate
- frame
- type
- gain
- processing module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000006835 compression Effects 0.000 claims abstract description 87
- 238000007906 compression Methods 0.000 claims abstract description 87
- 239000013598 vector Substances 0.000 claims description 291
- 238000012545 processing Methods 0.000 claims description 246
- 230000003044 adaptive effect Effects 0.000 claims description 231
- 238000013139 quantization Methods 0.000 claims description 151
- 230000005236 sound signal Effects 0.000 claims description 107
- 238000012512 characterization method Methods 0.000 claims description 83
- 230000005284 excitation Effects 0.000 claims description 73
- 238000000034 method Methods 0.000 claims description 64
- 238000007781 pre-processing Methods 0.000 claims description 47
- 238000001914 filtration Methods 0.000 claims description 11
- 238000002347 injection Methods 0.000 claims description 3
- 239000007924 injection Substances 0.000 claims description 3
- 230000003111 delayed effect Effects 0.000 claims 1
- 230000007774 longterm Effects 0.000 description 56
- 238000003786 synthesis reaction Methods 0.000 description 50
- 230000015572 biosynthetic process Effects 0.000 description 48
- 238000004891 communication Methods 0.000 description 41
- 230000003595 spectral effect Effects 0.000 description 41
- 238000004458 analytical method Methods 0.000 description 27
- 230000000694 effects Effects 0.000 description 26
- 230000004048 modification Effects 0.000 description 24
- 238000012986 modification Methods 0.000 description 24
- 230000008569 process Effects 0.000 description 23
- 238000013459 approach Methods 0.000 description 22
- 238000012805 post-processing Methods 0.000 description 19
- 238000009499 grossing Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 16
- 230000005540 biological transmission Effects 0.000 description 12
- 230000003068 static effect Effects 0.000 description 10
- 238000012937 correction Methods 0.000 description 9
- 230000004044 response Effects 0.000 description 9
- 238000001514 detection method Methods 0.000 description 8
- 238000010295 mobile communication Methods 0.000 description 8
- 230000003321 amplification Effects 0.000 description 7
- 238000003199 nucleic acid amplification method Methods 0.000 description 7
- 238000001228 spectrum Methods 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 6
- 230000001965 increasing effect Effects 0.000 description 6
- 239000011159 matrix material Substances 0.000 description 6
- 238000013507 mapping Methods 0.000 description 5
- 230000001629 suppression Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000006872 improvement Effects 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 238000005070 sampling Methods 0.000 description 4
- 230000003139 buffering effect Effects 0.000 description 3
- 238000005314 correlation function Methods 0.000 description 3
- 238000009795 derivation Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000002829 reductive effect Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 150000001875 compounds Chemical class 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 241000251468 Actinopterygii Species 0.000 description 1
- 238000012935 Averaging Methods 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 238000013329 compounding Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000036039 immunity Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/18—Vocoders using multiple modes
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/167—Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03G—CONTROL OF AMPLIFICATION
- H03G3/00—Gain control in amplifiers or frequency changers
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/18—Vocoders using multiple modes
- G10L19/24—Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Acoustics & Sound (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
- Lubricants (AREA)
- Ink Jet (AREA)
- Graft Or Block Polymers (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
Description
(発明者)
Yang Gao、Adil Benyassine、Jes Thyssen、Eyal Shlomot、Huan−yu Su
(著作権表示の参照)
本特許文献の開示の一部は、著作権保護の対象となる材料を含む。著作権保持者は、米国特許商標庁の特許ファイルまたは記録に公開されるため、任意の者による特許文献または特許開示のファクシミリによる複製に異議を唱えないが、それ以外では、全ての著作権を保留する。
【0002】
(技術分野)
本発明は、音声通信システムに関し、より詳細には、デジタル音声コード化のシステムに関する。
【0003】
(背景)
人間のコミュニケーションの一般的なモードは、通信システムを使用する方法である。通信システムは、ワイヤラインタイプシステムとワイヤレス無線タイプシステムとの両方を含む。ワイヤレス通信システムは、ワイヤラインタイプシステムに電気的に結合され、無線周波数(RF)通信を用いてモバイル通信デバイスと通信する。現在、例えば、セルラーシステムにおいて通信可能な無線周波数は、中心が約900MHzのセルラー周波数範囲内、および、中心が約1900MHzのパーソナル通信サービス(PCS)周波数範囲内である。ワイヤレスシステム内におけるデータおよび音声の伝達は、無線周波数の一部を消費するバンド幅を有する。携帯電話などのワイヤレス通信デバイスの拡大する人気が原因となって通信量が増加したため、ワイヤレスシステム内の伝達のバンド幅を削減することが望ましい。
【0004】
ワイヤレス無線通信におけるデジタル伝達は、装置のノイズ排除性、信頼性、およびコンパクト性、ならびにデジタル技術を用いて複雑な信号処理機能を実行する能力が原因となり、音声とデータとの両方にますます適用されている。音声信号のデジタル伝達は、以下のステップを含む:A/D変換器を用いるアナログ音声波形のサンプリング、音声圧縮(符号化)、伝達、音声解凍(復号化)、D/A変換、およびイヤホンまたはスピーカへの再生。A/D変換器を用いるアナログ音声波形のサンプリングは、デジタル信号を生成する。しかし、アナログ音声波形を表すためにデジタル信号に使用されるビット数は、比較的大きなバンド幅を生成する。例えば、各サンプルが16ビットによって表される場合、8000Hz(0.125ミリ秒毎に1回)の割合でサンプリングされる音声信号は、毎秒128,000(16x8000)ビットまたは128Kbps(毎秒128キロビット)のビットレートとなる。
【0005】
音声圧縮は、音声信号を表すビット数を減少させ、従って、伝達に必要なバンド幅を減少させるために使用され得る。しかし、音声圧縮は、解凍音声の質が劣化するという結果になり得る。通常、より高いビットレートは、より高い質をもたらし、より低いビットレートは、より低い質をもたらす。しかし、コード化技術などの現代の音声圧縮技術は、比較的低いビットレートにおいて比較的高品質の解凍音声を生成し得る。通常、現代のコード化技術は、実際の音声波形を保存することなく、音声信号の知覚的に(perceptually)重要な機能を表すことを試みる。
【0006】
ビットレートを低くするために使用される1つのコード化技術は、音声信号の圧縮される部分に応じて、音声圧縮の度合いを変化させる(すなわち、ビットレートを変化させる)ことを含む。典タイプ的には、音声信号の適切な知覚的表現がより困難である部分(例えば、有声(voiced)音声、破裂音、または有声オンセット)は、より高いビット数を用いてコード化され伝達される。逆に、音声の適切な知覚的表現がそれほど困難でない部分(例えば、無声、または言葉の間の沈黙)は、より低いビット数を用いてコード化される。結果の音声信号の平均ビットレートは、同等質の解凍音声を提供する固定ビットレートの場合と比べて、比較的低い。
【0007】
音声圧縮システムは、俗にコーデックと呼ばれ、エンコーダおよびデコーダを含み、デジタル音声信号のビットレートを減少させるために使用され得る。高品質の再構築された音声を保持することを試みながら、オリジナル音声をデジタルコード化するために必要なビット数を減少させる音声コーデックのための多数のアルゴリズムが開発されてきた。M.R.SchroederおよびB.S.Atalによる「Code−Excited Linear Prediction:High−Quality Speech at Very Low Rates」(Proc.ICASSP−85、ページ937〜940、1985)という題の記事において説明するように、コード励起線形予測(Code−Excited Linear Predictive)(CELP)のコード化技術は、1つの効果的な音声コード化アルゴリズムを提供する。可変レートのCELPタイプ音声コーダの一例は、CDMA(符号分割多重アクセス)アプリケーションのために立案されたTIA(米国電気通信産業協会)IS−127規格である。CELPのコード化技術は、いくつかの予測(prediction)技術を利用して、音声信号から冗長性を除去する。CELPのコード化アプローチは、サンプリングされた入力音声信号を、フレームと呼ばれるサンプリングのブロック内に格納するという意味で、フレームタイプである。データのフレームは、次いで、デジタル形式の圧縮音声信号を生成するために処理され得る。
【0008】
CELPのコード化アプローチは、短期予測子(predictor)および長期予測子の2種類の予測子を用いる。短期予測子は、典タイプ的には、長期予測子の前に適用される。短期予測子から導き出される予測エラーは、通常、短期残差(residual)と呼ばれ、長期予測子から導き出される予測エラーは、通常、長期残差と呼ばれる。長期残差は、複数の固定コードブックのエントリまたはベクトルを含む固定コードブックを用いてコード化され得る。エントリの1つが選択され、固定コードブックゲインによって乗算されて、長期残差を表し得る。短期予測子はまた、LPC(線形予測コード化(Linear Prediction Coding))またはスペクトル表現と呼ばれ得、通常、10予測パラメータを含む。長期予測子はまた、ピッチ予測子または適応コードブックと呼ばれ得、通常、遅延パラメータおよび長期予測子ゲインパラメータを含む。各遅延パラメータはまた、ピッチ遅延と呼ばれ得、各長期予測子ゲインパラメータはまた、適応コードブックゲインと呼ばれ得る。遅延パラメータは、適応コードブック内のエントリまたはベクトルを定義する。
【0009】
CELPエンコーダは、LPC分析を実行して、短期予測パラメータを決定する。LPC分析に続いて、長期予測パラメータが決定され得る。さらに、長期残差を最適に表現する固定コードブックエントリおよび固定コードブックゲインが決定される。合成分析(ABS)の強力な構想が、CELPコード化において使用される。ABSアプローチにおいて、固定コードブックからの最大の寄与(contribution)、最適固定コードブックゲイン、および最適長期予測パラメータは、逆予測フィルタを用いてこれらを合成し、知覚的重み付け(perceptual weighting)測定を適用することによって見出され得る。短期(LPC)予測係数および固定コードブックゲイン、ならびに遅延パラメータおよび長期ゲインパラメータは、次いで、量子化され得る。量子化インデックスおよび固定コードブックインデックスは、エンコーダからデコーダに送信され得る。
【0010】
CELPデコーダは、固定コードブックインデックスを使用して、固定コードブックからベクトルを抽出する。ベクトルは、固定コードブックゲインによって乗算されて、固定コードブックの寄与としても公知の長期励起(excitation)を生成し得る。長期予測子の寄与は、長期励起に加算されて、通常単に励起と呼ばれる短期励起を生成し得る。長期予測子の寄与は、長期予測子ゲインによって乗算された過去の短期励起を含む。長期予測子の寄与を加算することは、一方では、適応コードブックの寄与または長期(ピッチ)フィルタリングとして見られ得る。短期励起は、合成音声を生成するためにエンコーダによって量子化される短期(LPC)予測係数を用いる短期逆予測フィルタ(LPC)を通過させられ得る。合成音声は、次いで、知覚的音声ノイズを減少させるポストフィルタ(post−filter)を通過させられ得る。
【0011】
これらの音声圧縮技術によって、音声信号を伝達する際に使用するバンド幅の量は削減される。しかし、バンド幅のさらなる削減は、多数のユーザにリソースを割り当てなければならない通信システムにおいて、特に重要である。従って、高品質の解凍音声を提供する一方で、音声表現に必要な平均ビットレートを最小化することが可能な音声コード化のシステムおよび方法が必要である。
【0012】
(発明の開示)
本発明は、音声信号の符号化および復号化のシステムを提供する。実施形態は、波形マッチングおよび知覚に関する技術を用いる信号処理機能を使用するためのフレームワークとして、CELPのコード化技術および予測タイプコード化を使用し得る。これらの技術は、比較的低いビットレートを保持する一方で、知覚的機能を含むことにより、オリジナル音声と詳細まで共通する合成音声の生成を可能にする。実施形態の1つのアプリケーションは、ワイヤレス通信システムである。このアプリケーションにおいて、合成音声を生成するためのオリジナル音声の符号化または復号化は、モバイル通信デバイスにおいて生じ得る。さらに、符号化および復号化は、ワイヤラインタイプシステムにおいてか、またはワイヤラインタイプシステムにインターフェイスを提供するために他のワイヤレス通信システムにおいて生じ得る。
【0013】
音声圧縮システムの一実施形態は、全レートのコーデック、半レートのコーデック、4分の1レートのコーデック、および8分の1レートのコーデックを含み、各々は、音声信号を符号化および復号化することが可能である。全レート、半レート、4分の1レート、および8分の1レートのコーデックは、それぞれ、8.5Kbps、4Kbps、2Kbps、および0.8Kbpsのビットレートにおいて音声信号を符号化する。音声圧縮システムは、コーデックの内の1つを選択するために、音声信号のフレーム上でレート選択を実行する。レート選択は、フレームごとに行われる。フレームは、音声信号を有限時間のセグメントに分割することによって生成される。各フレームは、異なるビットレートによってコード化され得るため、音声圧縮システムは、平均ビットレートにおいて音声をコード化する可変レート音声圧縮システムである。
【0014】
レート選択は、音声信号の特定フレーム内に含まれる部分に基づいて、音声信号の各フレームの特性によって決定される。例えば、フレームは、定常有声、非定常有声、無声、バックグランドノイズ、沈黙などとして特徴づけられ得る。さらに、レート選択は、音声圧縮システムがどのモード(Mode)内で動作するかに基づく。異なるモードは、所望の平均ビットレートを示す。コーデックは、音声信号の異なる特性の中での最適コード化のために設計される。最適コード化は、所望の平均ビットレートを保持する一方で最高の知覚的品質の合成音声を提供したいという所望のバランスを保ち、それによって、利用可能なバンド幅の使用を最大限にする。作動中、音声圧縮システムは、選択的に、モードおよびフレーム特性に基づいてコーデックを活動化させ、合成音声の知覚的品質を最適化しようと試みる。
【0015】
一旦、レート選択によって、全レートまたは半レートのコーデックが選択されると、コード化をさらに最適化するために音声信号のタイプ分類が生じる。タイプ分類は、急に変化しない高調波構造(harmonic structure)およびホルマント構造を含むフレームの第1のタイプ(すなわち、タイプ1)、またはその他の全てのフレームの第2のタイプ(すなわち、タイプ0)であり得る。全レートおよび半レートのコーデックのビット割り当ては、フレームのコード化をさらに最適化するために、タイプ分類に応じて調節され得る。ビット割り当ての調節は、各フレーム内の音声信号の異なる局面を強調することにより、再構築された音声信号の改善された知覚的品質を提供する。
【0016】
従って、音声コーダは、所望の平均ビットレートを保持する一方で再構築された音声信号の全体の品質を最大限にするために、コーデックを選択的に活動化させることが可能である。本発明の他のシステム、方法、機能、および利点は、下記の図面および詳細な説明を吟味することにより、当業者に明らかであるか、または明らかになる。このような全てのさらなるシステム、方法、機能、および利点が、この説明の中に含まれ、本発明の範囲内にあり、添付の請求項の範囲によって保護されることが意図される。
【0017】
図中の構成要素は、必ずしも一律の縮尺に従わず、むしろ、本発明の原理を例示することに重点を置く。さらに、図中、同様の参照番号は、異なる図を通して、類似する部分を示す。
【0018】
(発明を実行するモード)
実施形態は、音声信号に関して説明されるが、任意の他の信号を処理することが可能である。値にわずかな変動を起こし得るが機能性を含まない浮動小数点、固定小数点、少数、または他の同様の数的表現によって、開示される数値が数的に表され得ることも理解される。さらに、モジュールとして識別される機能ブロックは、個別の構造を表すことを意図せず、種々の実施形態において、組み合わせられるか、またはさらに細分され得る。
【0019】
図1は、音声圧縮システム10の一実施形態のブロック図である。音声圧縮システム10は、図示のように結合され得る符号化システム12、通信媒体14、および復号化システム16を含む。音声圧縮システム10は、音声信号18を受信および符号化し、次いで、音声信号18を復号化して、処理後(post−processed)の合成音声20を生成することが可能な任意のシステムであり得る。典タイプ的な通信システムにおいて、ワイヤレス通信システムは、ワイヤラインタイプ通信システム内の公衆交換電話ネットワーク(PSTN)に電気的に結合される。ワイヤレス通信システム内において、携帯電話または携帯トランシーバなどのモバイル通信デバイスとの無線通信を提供するために、複数のベースステーションが典タイプ的に使用される。
【0020】
音声圧縮システム10は、音声信号18を受信するために動作する。センダ(sender)(図示せず)によって放出される音声信号18は、例えば、マイクロホン(図示せず)によって取り込まれ、A/D変換器(図示せず)によってデジタル化され得る。センダは、人間の声、音楽楽器、またはアナログ信号を放出可能な任意の他のデバイスであり得る。音声信号18は、有声音声、無声音声、バックグランドノイズ、沈黙、音楽などの任意の種類の音を表し得る。
【0021】
符号化システム12は、音声信号18を符号化するために動作する。符号化システム12は、モバイル通信デバイス、ベースステーション、またはA/D変換器によってデジタル化された音声信号18の受信および符号化を行うことが可能な任意の他のワイヤレスもしくはワイヤライン通信デバイスの一部であり得る。ワイヤライン通信デバイスは、ボイスオーバーインターネットプロトコル(Voice over Internet Protocol)(VoIP)デバイスおよびシステムを含み得る。符号化システム12は、音声信号18をフレームに分割して、ビットストリームを生成する。音声圧縮システム10の一実施形態は、8000Hzのサンプリングレートにおいて1フレームにつき20ミリ秒に相当する160サンプルを含むフレームを使用する。ビットストリームによって表されるフレームは、通信媒体14に提供され得る。
【0022】
通信媒体14は、通信チャネル、電波、マイクロ波、ワイヤ伝達、光ファイバー伝達、または符号化システム12によって生成されるビットストリームを運ぶことが可能な任意の媒体などの任意の伝達メカニズムであり得る。通信媒体14はまた、ビットストリームの伝達に使用される伝達デバイスおよび受信デバイスを含み得る。通信媒体14の実施形態の例は、通信チャネル、アンテナ、およびワイヤレス通信システムにおける無線通信に関連するトランシーバを含み得る。通信媒体14はまた、メモリデバイス、格納媒体、または符号化システム12によって生成されるビットストリームの格納および検索を行うことが可能な他のデバイスなどの格納メカニズムであり得る。通信媒体14は、符号化システム12によって生成されるビットストリームを、復号化システム16に伝達するために動作する。
【0023】
復号化システム16は、通信媒体14からビットストリームを受信する。復号化システム16は、モバイル通信デバイス、ベースステーション、またはビットストリームを受信可能な他のワイヤレスもしくはワイヤライン通信デバイスの一部であり得る。復号化システム16は、ビットストリームを復号化し、デジタル信号形式の処理後の合成音声20を生成するために動作する。処理後の合成音声20は、次いで、D/A変換器(図示せず)によってアナログ信号に変換され得る。D/A変換器のアナログ出力は、人間の耳、磁気テープレコーダ、またはアナログ信号を受信可能な任意の他のデバイスであり得るレシーバ(図示せず)によって受信され得る。あるいは、デジタル記録デバイス、音声認識デバイス、またはデジタル信号を受信可能な任意の他のデバイスが、処理後の合成音声20を受信し得る。
【0024】
音声圧縮システム10の一実施形態はまた、モードライン21を含む。モードライン21は、ビットストリームの所望の平均ビットレートを示すことにより、音声圧縮システム10を制御するモード信号を運ぶ。モード信号は、例えば、モード信号生成モジュールを使用するワイヤレス通信システムによって、外部において生成され得る。モード信号生成モジュールは、処理後の合成音声20の所望の品質、利用可能なバンド幅、ユーザによって契約が結ばれているサービス、または任意の他の関連要素などの複数の要素に基づいて、モード信号を決定する。モード信号は、音声圧縮システム10が動作する通信システムによって制御および選択される。モード信号は、符号化システム12に提供されて、符号化システム12において、複数のコーデックの内のどれが活動化され得るかを決定する助けとなり得る。
【0025】
コーデックは、符号化システム12および復号化システム16内にそれぞれ配置されるエンコーダ部分およびデコーダ部分を含む。音声圧縮システム10の一実施形態において、4つのコーデック、すなわち、全レートコーデック22、半レートコーデック24、4分の1レートコーデック26、および8分の1レートコーデック28がある。コーデック22、24、26、および28の各々は、ビットストリームを生成するように動作可能である。各コーデック22、24、26、および28によって生成されるビットストリームのサイズ、従って、バンド幅、または通信媒体14を介してビットストリームを伝達するために必要な容量は、異なる。
【0026】
一実施形態において、全レートコーデック22、半レートコーデック24、4分の1レートコーデック26、および8分の1レートコーデック28は、それぞれ、各フレームにつき170ビット、80ビット、40ビット、および16ビットを生成する。各フレームのビットストリームのサイズは、ビットレート、すなわち、全レートコーデック22の8.5Kbps、半レートコーデック24の4.0Kbps、4分の1レートコーデック26の2.0Kbps、および8分の1レートコーデック28の0.8Kbpsに対応する。しかし、別の実施形態において、より少ないまたはより多いコーデック、および他のビットレートも可能である。種々のコーデックを用いて音声信号18のフレームを処理することにより、平均ビットレートが達成される。符号化システム12は、フレームの特性、およびモード信号によって提供される所望の平均ビットレートに基づいて特定のフレームを符号化するために、コーデック22、24、26および28の内のどれが使用され得るかを決定する。フレームの特性は、音声信号18の特定フレーム内に含まれる部分に基づく。例えば、フレームは、定常有声、非定常有声、無声、オンセット、バックグランドノイズ、沈黙などとして特徴づけられ得る。
【0027】
一実施形態におけるモード信号ライン21上のモード信号は、モード0、モード1、およびモード2を識別する。3つのモードの各々は、コーデック22、24、26、および28の各々の使用のパーセンテージを変化し得る異なる所望の平均ビットレートを提供する。モード0は、プレミアムモードと呼ばれ得、このモード0において、ほとんどのフレームが全レートコーデック22によってコード化され得、より少ないフレームが半レートコーデック24によってコード化され得、沈黙およびバックグランドノイズを含むフレームが4分の1レートコーデック26および8分の1レートコーデック28によってコード化され得る。モード1は、標準モードと呼ばれ得、このモード1において、オンセットおよびいくつかの有声フレームなどの大量の情報内容を有するフレームが、全レートコーデック22によってコード化され得る。さらに、他の有声および無声のフレームは、半レートコーデック24によってコード化され得、いくつかの無声フレームは、4分の1レートコーデック26によってコード化され得、沈黙および定常バックグランドノイズのフレームは、8分の1レートコーデック28によってコード化され得る。
【0028】
モード2は、節約モードと呼ばれ得、このモード2において、大量の情報内容を有するフレームの少数のみが、全レートコーデック22によってコード化され得る。モード2内のほとんどのフレームは、4分の1レートコーデック26によってコード化され得るいくつかの無声フレームの例外を除いて、半レートコーデック24によってコード化され得る。沈黙および定常バックグランドノイズのフレームは、モード2において、8分の1レートコーデック28によってコード化され得る。従って、コーデック22、24、26、および28の選択を変化させることにより、音声圧縮システム10は、可能な範囲における最高の品質を保持することを試みる一方で、所望の平均ビットレートにおいて、再構築された音声を配信し得る。超節約モード、または活動化される最大コーデックが半レートコーデック24である半レート最大モードにおいて動作するモード3などのさらなるモードが、別の実施形態において利用可能である。
【0029】
音声圧縮システム10のさらなる制御はまた、半レート信号ライン30によって提供され得る。半レート信号ライン30は、半レート信号フラグ(signaling flag)を提供する。半レート信号フラグは、ワイヤレス通信システムなどの外部ソースによって提供され得る。活動化されると、半レート信号フラグは、音声圧縮システム10に命令して、最大レートとして半レートコーデック24を使用させる。半レート信号フラグをいつ活動化させるかについての決定は、音声圧縮システム10が動作する通信システムによって行われる。モード信号の決定と同様に、半レート信号モジュールは、通信システムによって決定される複数の要素に基づいて、半レート信号フラグの活動化を制御する。別の実施形態において、半レート信号フラグは、音声圧縮システム10に命令して、別のコーデックの代わりにコーデック22、24、26、および28の1つを使用させるか、またはコーデック22、24、26、および28の1つ以上を最大または最低レートとして識別させる。
【0030】
音声圧縮システム10の一実施形態において、全レートおよび半レートのコーデック22および24は、eX−CELP(拡張CELP)アプローチに基づき得、4分の1レートおよび8分の1レートのコーデック26および28は、知覚マッチング(perceptual matching)アプローチに基づき得る。eX−CELPアプローチは、従来のCELPの知覚マッチングと波形マッチング(waveform matching)との間の従来のバランスを拡張する。詳細には、eX−CELPアプローチは、以下で説明されるレート選択およびタイプ分類を使用して、フレームを分類する。フレームの異なるカテゴリ内において、異なる知覚マッチング、異なる波形マッチング、および異なるビット割り当てを有する異なる符号化アプローチが利用され得る。4分の1レートコーデック26および8分の1レートコーデック28の知覚マッチングアプローチは、フレームを符号化する際、波形マッチングを使用せず、むしろ、知覚的局面に専念する。
【0031】
eX−CELPアプローチまたは知覚マッチングアプローチのいずれかによる各フレームのコード化は、フレームを複数のサブフレームにさらに分割することに基づき得る。サブフレームは、各コーデック22、24、26、および28のサイズおよび数が異なり得る。さらに、eX−CELPアプローチに関して、サブフレームは、各カテゴリによって異なり得る。サブフレーム内において、音声のパラメータおよび波形は、いくつかの予測および非予測のスカラおよびベクトルの量子化技術によって、コード化され得る。スカラの量子化において、音声のパラメータまたは要素は、スカラの代表的な表の中で最も類似するエントリのインデックスロケーションによって表され得る。ベクトルの量子化において、いくつかの音声パラメータは、ベクトルを形成するためにグループ化され得る。ベクトルは、ベクトルの代表的な表の中で最も類似するエントリのインデックスロケーションによって表され得る。
【0032】
予測コード化において、要素は、過去に基づいて予測され得る。要素は、スカラまたはベクトルであり得る。予測エラーは、次いで、スカラの表(スカラ量子化)またはベクトルの表(ベクトル量子化)を用いて量子化され得る。eX−CELPコード化アプローチは、従来のCELPと同様に、強力な合成分析(ABS)方式を使用して、いくつかのパラメータの最適表現を選択する。詳細には、パラメータは、適応コードブック、固定コードブック、およびそれらに対応するゲインであり得る。ABS方式は、逆予測フィルタおよび知覚的重み付け計測を用いて、最適コードブックエントリを選択する。
【0033】
音声圧縮システム10の一実施形態の1つのインプリメンテーションは、デジタル信号処理(DSP)チップ、モバイル通信デバイス、または無線伝達ベースステーションなどの信号処理デバイスにおいて行われ得る。信号処理デバイスは、ソースコードによってプログラムされ得る。ソースコードは、最初に固定小数点に変換され、次いで、信号処理デバイスに特有のプログラミング言語に変換され得る。変換されたソースコードは、次いで、ダウンロードされ、信号処理デバイス内で実行され得る。ソースコードの一例は、音声圧縮システム10の一実施形態によって利用されるC言語コンピュータプログラムであり、C言語コンピュータプログラムは、添付のマイクロフィッシュAPPENDIX内にAPPENDIXAおよびBとして含まれる。
【0034】
図2は、図1に示される符号化システム12のさらに詳細なブロック図である。符号化システム12の一実施形態は、図示のように結合され得る処理前(pre−processing)モジュール34、全レートエンコーダ36、半レートエンコーダ38、4分の1レートエンコーダ40、および8分の1レートエンコーダ42を含む。レートエンコーダ36、38、40、および42は、初期フレーム処理モジュール44および励起処理モジュール54を含む。
【0035】
符号化システム12によって受信される音声信号18は、処理前モジュール34によって、フレームレベルで処理される。処理前モジュール34は、音声信号18の初期処理を提供するように動作可能である。初期処理は、フィルタリング、信号拡張、ノイズ除去、増幅、および次の符号化のために音声信号18を最適化することが可能な他の同等技術を含み得る。
【0036】
全レート、半レート、4分の1レート、および8分の1レートエンコーダ36、38、40、および42は、それぞれ、全レート、半レート、4分の1レート、および8分の1レートコーデック22、24、26、および28の符号化部分である。初期フレーム処理モジュール44は、初期フレーム処理、音声パラメータの抽出、およびレートエンコーダ36、38、40、および42の内のどれが特定のフレームを符号化するかについての決定を実行する。初期フレームモジュール44は、例示的に、複数の初期フレーム処理モジュール、すなわち、初期全フレーム処理モジュール46、初期半フレーム処理モジュール48、初期4分の1フレーム処理モジュール50、および初期8分の1フレーム処理モジュール52に細分され得る。しかし、初期フレーム処理モジュール44が、全てのレートエンコーダ36、38、40、および42に共通の処理、ならびに各レートエンコーダ36、38、40、および42に特有の特定処理を実行するということは、留意されるべきである。初期フレーム処理モジュール44の、初期フレーム処理モジュール46、48、50、および52の各々への細分は、レートエンコーダ36、38、40、および42の各々に対応する。
【0037】
初期フレーム処理モジュール44は、共通処理を実行して、レートエンコーダ36、38、40、および42の内の1つを活動化させるレート選択を決定する。一実施形態において、レート選択は、音声信号18のフレームの特性、および音声圧縮システム10の動作モードに基づく。レートエンコーダ36、38、40、および42の内の1つを活動化させることは、それに対応して、初期フレーム処理モジュール46、48、50、および52の内の1つを活動化させる。
【0038】
特定の初期フレーム処理モジュール46、48、50、および52が活動化されて、フレーム全体に共通する音声信号18の局面を符号化する。初期フレーム処理モジュール44による符号化は、フレーム内に含まれる音声信号18のパラメータを量子化する。量子化されたパラメータは、結果として、ビットストリームの一部を生成することになる。通常、ビットストリームは、レートエンコーダ36、38、40、および42の内の1つを介して符号化システム12によって処理された音声信号18のフレームの圧縮された表現である。
【0039】
レート選択に加えて、初期フレーム処理モジュール44はまた、全レートおよび半レートエンコーダ36および38によって処理される各フレームのタイプ分類を決定するために処理を実行する。一実施形態のタイプ分類は、フレームによって第1のタイプ(すなわち、タイプ1)、または第2のタイプ(すなわち、タイプ0)として表される音声信号18を分類する。一実施形態のタイプ分類は、音声信号18の本質および特性による。別の実施形態において、さらなるタイプ分類および支持処理が提供され得る。
【0040】
タイプ1の分類は、定常動作(stationary behavior)を示す音声信号18のフレームを含む。定常動作を示すフレームは、急に変化しない高調波構造およびホルマント構造を含む。他の全てのフレームは、タイプ0の分類を用いて分類され得る。別の実施形態において、さらなるタイプ分類は、時間領域および周波数領域などに基づいて、さらなる分類にフレームを分類し得る。タイプ分類は、以下で説明されるように、初期全レートフレーム処理モジュール46および初期半レートフレーム処理モジュール48によって、符号化を最適化する。さらに、タイプ分類とレート選択との両方は、全レートおよび半レートエンコーダ36および38に対応する励起処理モジュール54の一部による符号化を最適化するために使用され得る。
【0041】
励起処理モジュール54の一実施形態は、全レートモジュール56、半レートモジュール58、4分の1レートモジュール60、および8分の1レートモジュール62に細分され得る。レートモジュール56、58、60、および62は、図2に示されるように、レートエンコーダ36、38、40、および42に対応する。一実施形態の全レートおよび半レートのモジュール56および58は、両方とも、説明されるように、実質的に異なる符号化を提供する複数のフレーム処理モジュールおよび複数のサブフレーム処理モジュールを含む。
【0042】
全レートおよび半レートエンコーダ36および38の両方のための励起処理モジュール54の部分は、タイプセレクタモジュール、第1のサブフレーム処理モジュール、第2のサブフレーム処理モジュール、第1のフレーム処理モジュール、および第2のサブフレーム処理モジュールを含む。さらに詳細には、全レートモジュール56は、Fタイプセレクタモジュール68、F0の第1のサブフレーム処理モジュール70、F1の第1のフレーム処理モジュール72、F1の第2のサブフレーム処理モジュール74、およびF1の第2のフレーム処理モジュール76を含む。用語「F」は全レートを示し、「0」および「1」は、タイプ0およびタイプ1をそれぞれ示す。同様に、半レートモジュール58は、Hタイプセレクタモジュール78、H0の第1のサブフレーム処理モジュール80、H1の第1のフレーム処理モジュール82、H1の第2のサブフレーム処理モジュール84、およびH1の第2のフレーム処理モジュール86を含む。
【0043】
FおよびHタイプのセレクタモジュール68および78は、音声信号18の処理に命令して、タイプ分類に基づく符号化処理をさらに最適化する。タイプ1に分類されることは、フレームが、定常有声音声などの急に変化しない高調波構造およびホルマント構造を含むことを示す。従って、フレームを表す際にこれらの局面を利用する符号化を容易にするために、タイプ1に分類されるフレームを表すために用いられるビットは割り当てられ得る。タイプ0に分類されることは、フレームが、例えば、急に変化する高調波構造およびホルマント構造などの非定常動作を示し得ることか、フレームが、定常無声特性またはノイズのような特性を示し得ることを示す。タイプ0に分類されるフレームのビット割り当ては、従って、この動作をより良く表現し、説明するために調整され得る。
【0044】
F0の第1のサブフレーム処理モジュール70は、処理されるフレームがタイプ0に分類されると、全レートモジュール56のためにビットストリームの一部を生成する。フレームがタイプ0に分類されると、F0の第1のサブフレーム処理モジュール70が活動化されて、サブフレームごとにフレームを処理する。F1の第1のフレーム処理モジュール72、F1の第2のサブフレーム処理モジュール74、およびF1の第2のフレーム処理モジュール76は、処理されるフレームがタイプ1に分類されると、ビットストリームの一部を生成するために結合する。タイプ1の分類は、全レートモジュール56内におけるサブフレームとフレームとの両方の処理を含む。
【0045】
同様に、半レートモジュール58において、H0の第1のサブフレーム処理モジュール80は、処理されるフレームがタイプ0に分類されると、サブフレームごとにビットストリームの一部を生成する。さらに、H1の第1のフレーム処理モジュール82、H1の第2のサブフレーム処理モジュール84、およびH1の第2のフレーム処理モジュール86は、処理されるフレームがタイプ1に分類されると、ビットストリームの一部を生成するために結合する。全レートモジュール56の場合と同様に、タイプ1の分類は、サブフレームとフレームとの両方の処理を含む。
【0046】
4分の1レートおよび8分の1レートモジュール60および62は、それぞれ、4分の1レートおよび8分の1レートエンコーダ40および42の一部であり、タイプ分類を含まない。タイプ分類が含まれないのは、処理されるフレームの本質が原因である。4分の1レートおよび8分の1レートモジュール60および62は、活動化されると、サブフレームおよびフレームごとに、それぞれ、ビットストリームの一部を生成する。
【0047】
レートモジュール56、58、60、および62は、フレームのデジタル表現を生成するために、初期フレーム処理モジュール46、48、50、および52によって生成されるビットストリームのそれぞれの部分と共にアセンブルされて、ビットストリームの一部を生成する。例えば、初期全レートフレーム処理モジュール46および全レートモジュール56によって生成されるビットストリームの部分は、アセンブルされて、全レートエンコーダ36が活動化される際に生成されるビットストリームを形成して、フレームを符号化し得る。エンコーダ36、38、40、および42の各々からのビットストリームは、さらにアセンブルされて、音声信号18の複数のフレームを表すビットストリームを形成し得る。エンコーダ36、38、40、および42によって生成されるビットストリームは、復号化システム16によって復号化される。
【0048】
図3は、図1に示される復号化システム16の拡大されたブロック図である。復号化システム16の一実施形態は、全レートデコーダ90、半レートデコーダ92、4分の1レートデコーダ94、8分の1レートデコーダ96、合成フィルタモジュール98、および処理後モジュール100を含む。全レート、半レート、4分の1レート、8分の1レートデコーダ90、92、94、および96、合成フィルタモジュール98、ならびに処理後モジュール100は、全レート、半レート、4分の1レート、および8分の1レートコーデック22、24、26、および28の復号部分である。
【0049】
デコーダ90、92、94、および96は、ビットストリームを受信し、デジタル信号を復号化して、音声信号18の異なるパラメータを再構築する。デコーダ90、92、94、および96は、レート選択に基づいて各フレームを復号化するために活動化され得る。レート選択は、ワイヤレス通信システムにおける制御チャネルなどの別個の情報伝達メカニズムによって、符号化システム12から復号化システム16に提供され得る。この実施形態の例において、レート選択は、ワイヤレス通信システム内のベースステーションによって生成される放送ビーコン信号(broadcast beacon signal)の一部として、モバイル通信デバイスに提供され得る。通常、放送ビーコン信号は、ベースステーションとモバイル通信デバイスとの間で通信を行うために使用される識別情報を提供するために生成される。
【0050】
合成フィルタ98および処理後モジュール100は、各デコーダ90、92、94、および96の復号化処理の一部である。合成フィルタ98を使用して、デコーダ90、92、94、および96によって復号化される音声信号18のパラメータをアセンブルすることにより、合成音声が生成される。合成音声は、処理後モジュール100を通過して、処理後の合成音声20を生成する。
【0051】
全レートデコーダ90の一実施形態は、Fタイプセレクタ102および複数の励起再構築モジュールを含む。励起再構築モジュールは、F0の励起再構築モジュール104およびF1の励起再構築モジュール106を含む。さらに、全レートデコーダ90は、線形予測係数(LPC)の再構築モジュール107を含む。LPC再構築モジュール107は、F0のLPC再構築モジュール108およびF1のLPC再構築モジュール110を含む。
【0052】
同様に、半レートデコーダ92の一実施形態は、Hタイプセレクタ112および複数の励起再構築モジュールを含む。励起再構築モジュールは、H0の励起再構築モジュール114およびH1の励起再構築モジュール116を含む。さらに、半レートデコーダ92は、HのLPC再構築モジュール118である線形予測係数(LPC)の再構築モジュールを含む。概念は類似するが、全レートおよび半レートのデコーダ90および92は、それぞれ、対応する全レートおよび半レートエンコーダ36および38からのビットストリームを復号化するように指定されている。
【0053】
FおよびHタイプセレクタ102および112は、選択的に、タイプ分類に応じて、全レートおよび半レートデコーダ90および92のそれぞれの部分を活動化させる。タイプ分類がタイプ0の場合、F0またはH0の励起再構築モジュール104または114が活動化される。逆に言えば、タイプ分類がタイプ1の場合、F1またはH1の励起再構築モジュール106または116が活動化される。F0またはF1のLPC再構築モジュール108または110は、それぞれ、タイプ0およびタイプ1のタイプ分類によって活動化される。HのLPC再構築モジュール118は、単にレート選択にのみ基づいて活動化される。
【0054】
4分の1レート復号器94は、Q励起再構築モジュール120およびQ LPC再構築モジュール122を含む。同様に、8分の1レート復号器96は、E励起再構築モジュール124およびE LPC再構築モジュール126を含む。Q励起再構築モジュール120またはE励起再構築モジュール124のそれぞれ、あるいはQ再構築モジュール122またはE LPC再構築モジュール126の両方は、それぞれ単独でレートセクション上において活性化される。
【0055】
それぞれの励起再構築モジュールは、活性化されると、短期励起線128上で短期励起を提供するために動作し得る。同様に、それぞれのLPC再構築モジュールは、短期予測係数線130上で短期予測係数を生成するために動作する。短期励起および短期予測係数は、合成フィルタ98に提供される。さらに、1実施形態において、短期予測係数は、図3において示されるように、処理後モジュール100に提供される。
【0056】
処理後モジュール100は、フィルタリング、信号エンハンスメント、ノイズ改変、増幅、ティルト訂正、および合成音声の知覚的質を高めることができる他の類似の技術を含む。処理後モジュール100は、合成音声の質を低下させることなく、可聴ノイズを低減するために動作し得る。可聴ノイズを低減することは、合成音声のホルマント構造を強調することによってか、または知覚的に合成音声に適切でない周波数領域におけるノイズのみを抑制することによって達成され得る。可聴ノイズは、より低いビットレートにおいてより目立つので、処理後モジュール100の1実施形態は、レート選択に別々に依存する合成音声の事後処理を提供するために活性化され得る。処理後モジュール100の別の実施形態は、レート選択に基づく復号器90、92、94および96の異なったグループに異なった事後処理を提供するために動作し得る。
【0057】
動作中、図2において示される、初期フレーム処理モジュール44は、レート選択を決定し、かつコード22、24、26および28のうちの1つを活性化するために音声信号18を分析する。例えば、全レートコード22が、レート選択に基づいてフレームを処理するために活性化される場合、初期全レートフレーム処理モジュール46は、フレームのタイプ分類を決定し、ビットストリームの部分を生成する。全レートモジュール56は、タイプ分類に基づき、フレームのビットストリームの残りを生成する。
【0058】
ビットストリームは、レート選択に基づいて全レート復号器90によって受信され、復号され得る。全レートデコーダ90は、エンコーディングの間に決定されたタイプ分類を利用してビットストリームを復号する。合成フィルタ98および処理後モジュール100は、事後処理された合成音声20を生成するためにビットストリームからの復号されたパラメータを用いる。ビットストリームは、それぞれのコード22、24、26および28によって生成され、フレームにおける音声信号18の異なったパラメータおよび/または特性を強調するために、非常に様々なビット割付けを含む。
【0059】
(1.0 ビット割付け)
図4、図5、図6および図7は、全レートコード22、半レートコード24、4分の1レートコード26および8分の1レートコード28のそれぞれのビット割付けの1実施形態を示す表である。ビット割付けは、初期フレーム処理モジュール44によって生成されるビットストリームの部分、およびそれぞれの符号器36、38、40および42における励起処理モジュール54によって生成されるビットストリームの部分を割り当てる。さらに、ビット割付けは、フレームを表すビットストリームにおける複数のビットを割り当てる。従って、活性化されたビットレートはコード22、24、26および28に依存して変化する。ビットストリームは、代表的ビットが符号化システム12によって、それぞれフレームごとに生成されるか、またはサブフレームごとに生成されるかに依存する第1の部分と第2の部分に分類され得る。後述されるように、ビットストリームの第1の部分および第2の部分は、音声信号18のフレームを符号化し、かつ復号するために選択されるコード22、24、26および28に依存して変化する。
【0060】
(1.1 全レートコーデックのビット割付け)
図2、図3および図4を参照して、全レートビットストリームコーデックの全レートビットストリーム22が説明される。次に図4を参照して、全レートコーデック22のビット割付けは、ラインスペクトル振動数(LSF)コンポーネント140、タイプコンポーネント142、適応コードブックコンポーネント144、固定コードブックコンポーネント146およびゲインコンポーネント147を含む。ゲインコンポーネント147は、適応コードブックゲインコンポーネント148および固定コードブックゲインコンポーネント150を含む。ビットストリーム割付けは、さらに、タイプ0カラム152およびタイプ1カラム154によって規定される。タイプ0カラム152およびタイプ1カラム154は、上述のように音声信号18のタイプ分類に基づいてビットストリームにおけるビットの割付けを割り当てる。1実施形態において、タイプ0カラム152およびタイプ1カラム154の両方は、音声信号18を処理するためにそれぞれ5ミリ秒の4つのサブフレームを用いる。
【0061】
図2において示される、初期全レートフレーム処理モジュール46は、LSFコンポーネント140を生成する。LSFコンポーネント140は、短期予測パラメータごとに生成される。短期予測パラメータは、複数のラインスペクトル振動数(LSF)に変換される。LSFは、フレームのスペクトルエンベロープを表す。さらに、前フレームのLSFからの複数の予測LSFが決定される。予測LSFは、LSF予測エラーを生成するためにLSFから減算される。1実施形態において、LSF予測エラーは、10個のパラメータのベクトルを含む。LSF予測エラーは、複数の量子化されたLSFを生成するために予測LSFと組み合わされる。量子化されたLSFは、詳細に後述されるように、それぞれのサブフレームの量子化された複数のLPC係数Aq(z)を形成するために、補間され、かつ変換される。さらに、LSF予測エラーは、復号システム16に伝送されるLSFコンポーネント140を生成するために量子化される。
【0062】
ビットストリームが復号システム16において受信されると、LSFコンポーネント140は、量子化されたLSF予測エラーを表す量子化されたベクトルを見つけるために用いられる。量子化されたLSF予測エラーは量子化されたLSFを生成するようい予測されたLSFに追加される。量子化されたLSFは、符号化システム12と同様に、復号システム16における前フレームのLSFから決定される。結果として生じた量子化されたLSFは、所定の重み付けを用いて、それぞれのサブフレームのために補間され得る。所定の重み付けは、固定されているか、または可変であり得る補間経路を規定する。補間経路は、前フレームの量子化されたLSFと現在のフレームの量子化されたLSFとの間に存在する。補間経路は、現在のフレームにおけるそれぞれのサブフレームのためのスペクトルエンベロープを提供するために用いられ得る。
【0063】
タイプ0として分類されたフレームのために、図4において示されるように、複数のステージ156および補間構成要素158を利用してLSFコンポーネント140の1実施形態が符号化される。ステージ156は、フレームのLSFコンポーネント140を符号化するために使用されるLSF予測エラーを表す。補間構成要素158は、前フレームの量子化されたLSFと、現在処理中のフレームの量子化されたLSFとの間に複数の補間経路を提供するために用いられ得る。通常、補間構成要素158は、復号中のラインスペクトル振動数(LSF)のコンター(contour)における選択可能調整を表す。選択可能調整は、タイプ0として分類されるフレームのスペクトルの性質が静的でないことが原因で用いられ得る。タイプ1として分類されるフレームのために、そのようなフレームのスペクトルの静的な性質が原因で、LSFコンポーネント140は、ステージ156および所定の線補間経路のみを用いて符号化され得る。
【0064】
LSFコンポーネント140の1実施形態は、タイプ0として分類されるフレームのための補間構成コンポーネント158を符号化するために2ビットを含む。ビットは、特定の補間経路を識別する。それぞれの補間経路は、それぞれのサブフレームのための現在の量子化されたLSFのそれぞれのサブフレームおよび重み付けのために、前の量子化されたLSFの重み付けを調整する。補間経路の選択は、次に続くサブフレーム間のスペクトルエンベロープにおける変化の度合いに基づいて決定され得る。例えば、フレームの中心のスペクトルエンベロープにおいて相当な変化がある場合、補間構成要素158は、前フレームからの量子化されたLSFの影響を低減する補間経路を選択する。補間構成要素158の1実施形態は、それぞれのサブフレームのために4個の異なった補間経路の任意の1つを表し得る。
【0065】
予測LSFは、複数の移動平均予測係数を用いて生成され得る。予測係数は、前フレームのLSFが現在のフレームのLSFを予測するためにどれだけ用いられるかを決定する。全レートコーデック22における予測係数は、LSF予測係数表を用いる。表は、通常、以下のマトリクスによって示され得る:
【0066】
【表1】
1実施形態において、mは2に等しく、nは10に等しい。したがって、予測オーダーは2であり、予測係数の2個のベクトルが存在し、それぞれが10個の要素を含む。LSF予測係数表の1実施形態は、「Float 64B_85k」と称され、添付のマイクロフィッシュのAPPENDIXのAPPENDIXBにおいて含まれる。
【0067】
予測LSFが決定されると、LSF予測エラーは現在のLSFを用いて計算され得る。LSF予測エラーは、全次元マルチステージ量子化器を用いて量子化され得る。複数の量子化ベクトルを含むLSF予測エラー量子化表は、マルチステージ量子化器を用いて使用され得るそれぞれのステージ156を表す。マルチステージ量子化器は、それぞれのステージ156のためのコンポーネント140の部分を決定する。LSFコンポーネント140の部分の決定は、剪定された(pruned)検索アプローチに基づく。剪定された検索アプローチは、それぞれのステージから見込まれる量子化ベクトルの候補を決定する。すべてのステージの候補の決定の終結において、それぞれのステージのための最良の量子化ベクトルを選択する決定が同時に行なわれる。
【0068】
第1のステージにおいて、マルチステージ量子化器は、複数の第1ステージの量子化エラー候補を決定する。第1ステージ量子化エラー候補は、第1ステージに位置付けられるLSF予測エラーと、最も適合する量子化ベクトルとの間の差異である。マルチステージ量子化器は、その後、第1ステージ量子化エラー候補と最も適合する第2ステージに位置付けられる量子化ベクトルを識別することによって、複数の第2ステージ量子化エラー候補を決定する。この双方向プロセスは、それぞれのステージについて完了され、それぞれのステージから有力候補が出される。それぞれのステージの最も代表的な量子化ベクトルの最終選択は、すべてのステージの候補が決定されたとき、同時に行なわれる。LSFコンポーネント140は、それぞれのステージからの最も適合する量子化ベクトルのインデックスロケーションを含む。LSFコンポーネント140の1実施形態は、ステージ156におけるインデックスロケーションを符号化するための25ビットを含む。量子化アプローチのためのLSF予測エラー量子化テーブルは、通常、以下のマトリクスによって示され得る:
【0069】
【表2】
タイプ0およびタイプ1の両方の分類の量子化テーブルの1実施形態は、4つのステージ(j=4)を用い、このステージにおいて、それぞれの量子化ベクトルは10個の構成要素(n=10)によって表される。この実施形態のステージ156は、ステージ156のうちの1つに対して128個の量子化ベクトル(r=128)および、残りのステージ156において64個の量子化ベクトル(s=64)を含む。したがって、ステージ156における量子化ベクトルのインデックスロケーションは、128個の量子化ベクトルを含むステージ156のうちの1つのために7ビットを用いて符号化され得る。さらに、64個の量子化ベクトルを含むそれぞれのステージ156のインデックスロケーションは、6ビットを用いて符号化され得る。タイプ0およびタイプ1の両方の分類のために用いられるLSF予測エラー量子化テーブルの1実施形態は、「Float64CBes_85K」と称され、添付のマイクロフィッシュのAPPENDIXのAPPENDIXBにおいて含まれる。
【0070】
復号システム16において、全レート復号器90におけるF0またはF1 LPC再構築モジュール108、110は、図3において示されるように、ビットストリームからLSFコンポーネント140を受け取る。LSFコンポーネント140は、上述のように、量子化されたLSFを再構築するために用いられ得る。量子化されたLSFは、現在のフレームのそれぞれのサブフレームのための線形予測符号化係数を形成するために補間され、かつ変換され得る。
【0071】
タイプ0分類のために、再構築はF0 LPC再構築モジュール108によって果たされる。再構築は、予測LSFを決定すること、量子化LSF予測エラーを復号すること、かつ量子化LSFを再構築することを含む。さらに、量子化LSFは、識別された補間経路を用いて補間され得る。上述のように、4個の補間経路のうちの1つは、LSFコンポーネント140を形成する補間構成要素158によってF0 LPC再構築モジュール108に知らせられる。タイプ1分類の再構築は、F1 LPC再構築モジュール110による予測線形補間経路およびLSF予測エラー量子化テーブルの使用を含む。LSFコンポーネント140は、タイプ0およびタイプ1分類の両方においてフレームごとに符号化されるので、LSFコンポーネント140は、ビットストリームの第1の部分の1部を形成する。
【0072】
タイプコンポーネント142も、ビットストリームの第1の部分の1部を形成する。図2において示されるように、タイプFのセレクタモジュール68は、特定のフレームのタイプ分類を表すために、タイプコンポーネント142を生成する。次に、図3を参照して、全レート復号器90におけるタイプFのセレクタモジュール102は、ビットストリームからタイプコンポーネント142を受信する。
【0073】
適応コードブックコンポーネント144の1実施形態は、開ループの適応コードブックコンポーネント144aまたは閉ループの適応コードブックコンポーネント144bであり得る。図2において示されるように、開ループの適応コードブックコンポーネント144aまたは閉ループの適応コードブックコンポーネント144bは、初期全フレーム処理モジュール46または、F0第1サブフレーム処理モジュール70によって、それぞれ生成される。開ループの適応コードブックコンポーネント144a、144bは、フレームがタイプ0として分類されると、ビットストリームにおける閉ループの適応コードブックコンポーネント144bに取って代わられ得る。通常、開ループの指示は、合成による分析(analysis−by−synthesis)(ABS)を含まないフレームごとの処理を参考にする。閉ループの処理は、サブフレームごとに果たされ、合成による分析(ABS)を含む。
【0074】
ピッチラグの符号化は、音声信号18の周期性に基づいており、適応コードブックコンポーネント144を生成する。開ループの適応コードブックコンポーネント144aはフレームのために生成され、これに対して閉ループの適応コードブックコンポーネント144bは、サブフレームごとに生成される。したがって、開ループの適応コードブックコンポーネント144aは、ビットストリームの第1の部分の1部であり、閉ループの適応コードブックコンポーネント144bは、ビットストリームの第2の部分の1部である。図4において示されるように、1実施形態において、開ループの適応コードブックコンポーネント144aは8ビットを含み、閉ループの適応コードブック144bは26ビットを含む。開ループの適応コードブックコンポーネント144aおよび、閉ループの適応コードブックコンポーネント144bは、後述される適応コードブックベクトルを用いて生成され得る。次に図3を参照して、復号システム16は、開ループの適応コードブックコンポーネント144aまたは、閉ループの適応コードブックコンポーネント144bを受信する。開ループの適応コードブックコンポーネント144aまたは、閉ループの適応コードブックコンポーネント144bはF0励起再構築モジュール104またはF1励起再構築モジュール106によってそれぞれ復号される。
【0075】
固定コードブックコンポーネント146の1実施形態は、タイプ0固定コードブックコンポーネント146aまたはタイプ1固定コードブックコンポーネント146bであり得る。図2において示されるように、タイプ0固定コードブックコンポーネント146aは、F0第1サブフレーム処理モジュール70によって生成される。F1サブフレーム処理モジュール72は、タイプ1固定コードブックコンポーネント146bを生成する。タイプ0固定コードブックコンポーネント146aまたはタイプ1固定コードブックコンポーネント146bは、後述されるサブフレームごとの固定コードブックベクトルおよび分析による合成(synthesis−by−analysis)を用いて生成される。固定コードブックコンポーネント146は、nパルスのコードブックを用いるサブフレームの長期残差を表し、その際、nはコードブックにおけるパルスの数であり得る。
【0076】
次に図4を参照して、1実施形態のタイプ0固定コードブックコンポーネント146aは、サブフレームごとに22ビットを含む。タイプ0固定コードブックコンポーネント146aは、複数のnパルスコードブックのうちの1つ、コードブックにおけるパルスロケーション、およびパルスロケーションに対応する代表的パルスの符号(量「n」)の識別を含む。例示的実施形態において、2個までのビットは、3個のnパルスのうちのどれが符号化されているかを指示する。具体的には、2ビットのうちの第1のビットは、3個のnパルスコードブックの第1のnパルスコードブックが用いられることを指示するために「1」に設定される。第1のビットが「0」に設定される場合、2ビットのうちの第2のビットは、3個のnパルスコードブックのうちの第2のnパルスコードブックと第3のnパルスコードブックのどちらが用いられるかを指示する。したがって、例示的実施形態において、3個のnパルスコードブックのうちの第1のnパルスコードブックは、パルスロケーションおよびパルス符号を表すために、21ビットを利用でき、3個のnパルスコードブックのうちの第2および第3のnパルスコードブックは、20ビットを利用できる。
【0077】
nパルスコードブックのうちの1つにおけるそれぞれの代表的パルスは、対応するトラックを含む。トラックは、サブフレームにおけるサンプルロケーションのリストであり、その際、リストにおけるそれぞれのサンプルロケーションがパルスロケーションのうちの1つである。符号化されているサブフレームは、それぞれのサンプルロケーションがサンプル値を含む複数のサンプルロケーションに分割され得る。対応する代表的パルスのトラックは、サブフレームからのサンプルロケーションの部分のみをリスト化する。nパルスコードブックの1におけるそれぞれの代表的パルスは、対応するトラックにおけるパルスロケーションの1つによって表され得る。
【0078】
動作中、それぞれの代表的パルスは、対応するトラックにおけるそれぞれのパルスロケーションにおいて順番に配置される。代表的パルスは、ABSを用いるサブフレームのサンプルロケーションにおけるサンプル値と比較され得る信号に変換される。代表的パルスは、パルスロケーションのサンプルロケーションより後のサンプルロケーションにおけるサンプル値と比較される。代表的パルスと、より後のサンプル値との間の差異を最小限にするパルスロケーションは、タイプ0固定コードブックコンポーネント146aの部分を形成する。選択されたnパルスコードブックにおけるそれぞれの代表的パルスは、タイプ0固定コードブックコンポーネント146aの部分を形成する対応するパルスロケーションによって表され得る。トラックは、通常、以下のマトリクスによって表され得るトラックテーブルの中に含まれる:
【0079】
【表3】
トラックテーブルの1実施形態は、「track.tab」と称されるライブラリにおける「static short track__5__4__0」、「static short track __5__3__2」および「static short track __5__3__1」と称されるテーブルであり、添付のマイクロフィッシュのAPPENDIXBに含まれる。
【0080】
図4において示される例示的実施形態において、nパルスコードブックは第1の3個の5パルスコードブック160が5個の代表的パルス(したがってn=5)を含む場合、3個の5パルスコードブック160である。第1の代表的パルスは、サブフレームにおける40個のサンプルロケーションのうちの16個(f=16)を含むトラックを有する。3個の5パルスコードブック160のうちの第1の5パルスコードブックからの第1の代表的パルスは、サンプルロケーションにおけるサンプル値と比較される。第1の代表的パルスと関連するトラックにおいて存在するサンプルロケーションのうちの1つは、4ビットを用いるパルスロケーションとして識別される。トラックにおいて識別されるサンプルロケーションは、第1の代表的パルスと、上述のより後のサンプル値との間の差異を最小限にするサブフレームにおけるサンプルロケーションである。トラックにおけるパルスロケーションの識別は、タイプ0固定コードブックコンポーネント146aの部分を形成する。
【0081】
この例示的実施形態において、第2の代表的パルスおよび第4の代表的パルスは、16個のサンプルロケーション(gおよびi=16)を用いる対応するトラックを有し、第3および第4の代表的パルスは、8個のサンプルロケーション(hおよびj=8)を備える対応するトラックを有する。したがって、第2の代表的パルスおよび第4の代表的パルスのパルスロケーションは、4ビットを用いて識別され、第3の代表的パルスのパルスロケーションおよび第5の代表的パルスのパルスロケーションは、3ビットを用いて識別される。その結果、3個の5パルスコードブック160の第1の5パルスコードブックのためのタイプ0固定コードブックコンポーネント146aは、パルスロケーションを識別するための18ビットを含む。
【0082】
識別されたパルスロケーションにおける代表的パルスの符号も、タイプ0固定コードブックコンポーネント146aにおいて識別され得る。例示的実施形態において、1つのビットは第1の代表的パルスの符号を表し、1つのビットは第2の代表的パルスおよび第4の代表的パルスの両方の組み合わされた符号を表し、かつ1つのビットは第3の代表的パルスおよび第5の代表的パルスの組み合わされた符号を表す。組み合わされた符号は、単一ビットを備える2つの別個の符号を伝送するためのパルスロケーションにおける情報の冗長度を用いる。したがって、3個の5パルスコードブック160の第1の5パルスコードブックのためのタイプ0固定コードブックコンポーネント146aは、合計21ビットの符号指示のための3ビットを含む。
【0083】
例示的実施形態において、3個の5パルスコードブック160の第2の5パルスコードブックおよび第3の5パルスコードブックは、さらに、5個の代表的パルス(n=5)を含み、トラックテーブルにおけるトラックは、8個のロケーション(f、g、h、j=8)をそれぞれ含む。したがって、3個の5パルスコードブック160の第2の5パルスコードブックおよび第3の5パルスコードブックにおけるそれぞれの代表的パルスのパルスロケーションは、3ビットを用いて識別される。さらに、この例示的実施形態において、それぞれのパルスロケーションの符号は1ビットを用いて識別される。
【0084】
1実施形態において、タイプ1として分類されるフレームのnパルスコードブックは、8パルスコードブック162(n=8)である。8パルスコードブック162は、タイプ1固定コードブックコンポーネント146bの1実施形態を作製するためにサブフレームごとに30ビットを用いて符号化される。30ビットは、タイプ0分類におけるようなトラックを用いるパルスロケーションを識別する26ビット、および符号を識別する4ビットを含む。トラックテーブルの1実施形態は、「track.tab」と称されるライブラリにおける「static INT16track__8__4__0」と称されるテーブルであり、添付のマイクロフィッシュのAPPENDIXのAPPENDIXBにおいて含まれる。
【0085】
例示的実施形態において、第1の代表的パルスおよび第5の代表的パルスと関連するトラックは、4ビットを用いて符号化される16個のサンプルロケーションを含む。残りの代表的パルスと関連するトラックは、3ビットを用いて符号化される8個のサンプルロケーションを含む。第1の代表的パルスと第5の代表的パルス、第2の代表的パルスと第6の代表的パルス、第3の代表的パルスと第7の代表的パルス、および第4の代表的パルスと第8の代表的パルスは、両方の代表的パルスのために組み合わされた符号を用いる。図3において例示されるように、ビットストリームが復号システム16によって受信されると、F0励起再構築モジュール104またはF1励起再構築モジュール106は、トラックのパルスロケーションを復号する。トラックのパルスロケーションは、3個の5パルスコードブック160のうちの1つか、または8パルスコードブック162のうちの1つに対してF0励起再構築モジュール164またはF1励起再構築モジュール106によってそれぞれ復号される。ビットストリームはサブフレームごとに生成されるので、固定コードブックコンポーネント146は、ビットストリームの第2の部分の1部である。
【0086】
再び図4を参照して、ゲインコンポーネント147は、通常、適応コードブックゲインおよび固定コードブックゲインを表す。タイプ0分類のために、ゲインコンポーネント147は、タイプ0適応コードブックゲインコンポーネント148aおよび固定コードブックゲインコンポーネント150aであり、両方とも適応コードブックゲインおよび固定コードブックゲインを表す。ビットストリームはサブフレームごとに符号化されるので、タイプ0適応コードブックゲインコンポーネント148aおよびタイプ0固定ゲインコンポーネント150aは、ビットストリームの第2の部分の1部である。図2において示されるように、タイプ0適応コードブックゲインコンポーネント148aおよびタイプ0固定コードブックゲインコンポーネント150aは、F0第1サブフレーム処理モジュール70によって生成される。
【0087】
タイプ0として分類されるフレームのそれぞれのサブフレームのために、適応コードブックゲインは、タイプ0適応コードブックゲインコンポーネント148aおよび固定コードブックゲイン150aを生成するために、2次元ベクトル量子化器(2D VQ)164によって共同で符号化される。1実施形態において、量子化は、デシベルユニット(dB)単位で固定コードブックゲインを固定コードブックエネルギーに変換することを含む。さらに、予測固定コードブックエネルギーは、前フレームの量子化された固定コードブックエネルギー値から生成され得る。予測固定コードブックエネルギーは、複数の固定コードブック予測係数を用いて導出される。
【0088】
LSF予測係数と同様に、固定コードブック予測係数は、現在の固定コードブックエネルギーを予測するために、前フレームの固定コードブックがどれだけ使用され得るかを決定する。予測固定コードブックエネルギーは、予測固定コードブックエネルギーエラーを生成するために、固定コードブックエネルギーから減算される。それぞれのサブフレームのための前フレームおよび現在のフレームの重み付けを調整することによって、予測固定コードブックエネルギーは、予測固定コードブックエラーを最小限にするために計算され得る。
【0089】
予測固定コードブックエネルギーエラーは、2次元ベクトルを形成するために、適応コードブックゲインから群化される。予測固定コードブックエネルギーエラーおよび適応コードブックゲインの量子化に続いて、後述されるように、2次元ベクトルは、量子化されたゲインベクトル(\gac)(本明細書中、以下\は^を表す。すなわち、\gacは
【0090】
【数1】
を表す)と呼ばれ得る。2次元ベクトルは、2Dゲイン量子化テーブルにおける複数の所定のベクトルと比較される。インデックスロケーションは、2次元ベクトルを最もよく表す所定のベクトルの2Dゲイン量子化テーブルにおけるロケーションであることを識別する。インデックスロケーションは、サブフレームのための適応コードブックゲインコンポーネント148aおよび固定コードブックゲインコンポーネント150aである。フレームのための適応コードブックゲインコンポーネント148aおよび固定コードブックゲインコンポーネント150aは、それぞれのサブフレームのために識別された指数を表す。
【0091】
所定のベクトルは、2個の構成要素を含み、1つは適応コードブックゲインを表し、1つは予測固定コードブックエネルギーエラーを表す。2Dゲイン量子化テーブルは、通常、以下のテーブルによって表される:
【0092】
【表4】
1実施形態の2次元ベクトル量子化器(2D VQ)164は、128個の量子化ベクトル(n=128)のうちの1つのインデックスロケーションを識別するために、サブフレームごとに7ビットを利用する。2Dゲイン量子化テーブルの1実施形態は、「Float64gainVQ__2__128__8__5」と称され、添付のマイクロフィッシュのAPPENDIXのAPPENDIXBに含まれる。
【0093】
図2において示されるように、タイプ1として分類されるフレームのために、F1第1フレーム処理モジュール72によってタイプ1適応コードブックゲインコンポーネント148bが生成される。同様に、F1第2フレーム処理モジュール76は、タイプ1固定コードブックゲインコンポーネント150bを生成する。タイプ1適応コードブックゲインコンポーネント148bおよびタイプ1固定コードブックゲインコンポーネント150bは、ビットストリームの第1の部分の1部を形成するために、フレームごとに生成される。
【0094】
再び図4を参照して、タイプ1適応コードブックゲインコンポーネント148bは、1実施形態において4次元プレベクトル量子化器(4DプレVQ)166である多次元ベクトル量子化器を用いて生成される。「プレ」という用語は、1実施形態において、フレームにおけるすべてのサブフレームのための適応コードブックゲインが、任意のサブフレームのための固定コードブックにおける検索の前に量子化されることを強調するために用いられる。代替的な実施形態において、多次元量子化器は、n個のサブフレームのためのベクトルを量子化するn次元ベクトル量子化器であり、その際、nはサブフレームの任意の数であり得る。
【0095】
4次元プレベクトル量子化器(4DプレVQ)166によって量子化されたベクトルは、それぞれのサブフレームからのそれぞれの適応コードブックを表す構成要素を有する適応コードブックゲインベクトルである。後述されるように、量子化に続いて、適応コードブックゲインベクトルは、量子化されたピッチゲイン(\gk a)とも呼ばれ得る。適応コードブックゲインコンポーネント148bを生成するための適応コードブックゲインベクトルの量子化は、プレゲイン量子化テーブルにおける検索によって果たされる。プレゲイン量子化テーブルは、適応コードブックゲインベクトルを最もよく表す所定のベクトルを識別するために検索され得る複数の所定のベクトルを含む。プレゲイン量子化テーブルにおける識別された所定のベクトルのインデックスロケーションは、タイプ1適応コードブックコンポーネント148bである。1実施形態の適応コードブックゲインコンポーネント148bは6ビットを含む。
【0096】
1実施形態において、所定のベクトルは4個の構成要素、すなわちそれぞれのサブフレームにつき1個の構成要素を含む。したがって、プレゲイン量子化テーブルは、通常、以下のように表される:
【0097】
【表5】
プレゲイン量子化テーブルの1実施形態は、64個の所定のベクトル(n=64)を含む。プレゲイン量子化テーブルの実施形態は、「Float64gp4__タブ」と称され、添付のマイクロフィッシュのAPPENDIXのAPPENDIXBにおいて含まれる。
【0098】
タイプ1固定コードブックゲインコンポーネント150bは、n個のサブフレームのための多次元ベクトル量子化器を用いて同様に符号化され得る。1実施形態において、多次元ベクトル量子化器は、4次元遅延ベクトル量子化器(4D遅延VQ)168である。「遅延」という用語は、サブフレームのための固定コードブックゲインの量子化は、すべてのサブフレームのための固定コードブックにおける検索の後にのみ行なわれることを強調する。再び図2を参照して、F1第2フレーム処理モジュール76は、それぞれのサブフレームのための固定コードブックゲインを決定する。固定コードブックゲインは、全部のフレームが処理されるまでサブフレームごとに生成される第1の緩衝パラメータによって決定され得る。フレームが処理されると、すべてのサブフレームのための固定コードブックゲインは、タイプ1固定コードブックゲインコンポーネント150bを生成するための緩衝パラメータを用いて量子化される。1実施形態において、タイプ1固定コードブックゲインコンポーネント150bは、図4において示されるように、10ビットを含む。
【0099】
タイプ1固定コードブックゲインコンポーネント150bは、デシベル(dB)単位で複数の固定コードブックエネルギーを有する固定コードブックゲインを表すことによって生成される。固定コードブックエネルギーは、複数の量子化された固定コードブックエネルギーを生成するために量子化され、その後、複数の量子化された固定コードブックゲインを生成するために変換される。さらに、固定コードブックエネルギーは、複数の予測固定コードブックエネルギーを生成するための前フレームの量子化された固定コードブックエネルギーエラーから予測される。予測固定コードブックエネルギーと、固定コードブックエネルギーとの間の差異は、複数の予測固定コードブックエネルギーエラーである。1実施形態において、予測固定コードブックエネルギーを生成するために、それぞれの4個のサブフレームに対して異なった予測係数が用いられ得る。この例示的実施形態において、第1、第2、第3および第4のサブフレームの予測固定コードブックエネルギーが、前フレームの4個の量子化された固定コードブックエネルギーエラーから予測される。この例示的実施形態の第1、第2、第3および第4のサブフレームの予測係数は、それぞれ{0.7,0.6,0.4,0.2}、{0.4,0.2,0.1,0.05}、{0.3,0.2,0.075,0.025}および{0.2,0.075,0.025,0.0}であり得る。
【0100】
予測固定コードブックエネルギーエラーは、固定コードブックゲインベクトルを形成するために群化され得、これは量子化されると、量子化された固定コードブックゲイン(\gke)と呼ばれ得る。1実施形態において、それぞれのサブフレームの予測固定コードブックエネルギーエラーは、ベクトルにおける構成要素を表す。予測固定コードブックエネルギーエラーは、遅延ゲイン量子化テーブルにおける複数の所定のベクトルを用いて量子化される。量子化中、知覚重み付け測定は量子化エラーを最小限化するために組み入れられ得る。遅延ゲイン量子化テーブルにおける所定のベクトルを識別するインデックスロケーションは、フレームの固定コードブックゲインコンポーネント150bである。
【0101】
1実施形態の遅延ゲイン量子化テーブルにおける所定のベクトルは、4個の構成要素を含む。したがって、遅延ゲイン量子化テーブルは、前述のテーブル5によって表され得る。遅延ゲイン量子化テーブルの1実施形態は、1024個の所定のベクトル(n=1024)を含む。遅延ゲイン量子化テーブルの実施形態は、「Float64gainVQ__4__1024」と称され、添付のマイクロフィッシュAPPENDIXのAPPENDIXBにおいて含まれる。
【0102】
再び図3を参照して、固定コードブックゲインコンポーネント148および適応コードブックゲインコンポーネント150は、タイプ分類に基づく復号システム16における全レート復号器90によって復号され得る。F0励起再構築モジュール104は、タイプ0適応コードブックゲインコンポーネント148aおよびタイプ0固定コードブックゲインコンポーネント150aを復号する。同様に、タイプ1適応コードブックゲインコンポーネント148bおよびタイプ1固定ゲインコンポーネント150bは、F1励起再構築モジュール106によって復号される。
【0103】
固定コードブックゲインコンポーネント158および適応コードブックゲインコンポーネント160の復号は、前述のように、全レート復号器90によってそれぞれの予測ゲインの世代を含む。それぞれの量子化テーブルからのそれぞれの量子化ベクトルは、その後、それぞれのインデックスロケーションを用いて位置付けされる。それぞれの量子化ベクトルは、その後、それぞれの量子化コードブックゲインを生成するために、それぞれの予測ゲインを用いてアセンブルされる。タイプ0固定ゲインコンポーネント148aおよびタイプ0適応ゲインコンポーネント150aから生成された量子化コードブックゲインは、サブフレームのための固定コードブックゲインおよび適応コードブックゲインの両方の値を表す。タイプ1適応コードブックゲインコンポーネント148bおよびタイプ1固定コードブックゲインコンポーネント150bから生成された量子化コードブックゲインは、フレームにおけるそれぞれのサブフレームの固定コードブックゲインおよび適応コードブックゲインをそれぞれ表す。
【0104】
(1.2 半レートコーデックのためのビット割付け)
次に、図2、図3および図5を参照して、半レートコーデック24の半レートビットストリームが説明される。半レートコーデック24は、多くの点に関して、全レートコーデック22と同じであるが、異なったビット割付けを有する。簡略化目的で、そのような説明は差異に焦点が合わせられる。次に、図5を参照して、半レートコーデック24の1実施形態のビットストリーム割付けは、ラインスペクトル振動数(LSF)コンポーネント172、タイプコンポーネント174、適応コードブックコンポーネント176、固定コードブックコンポーネント178およびゲインコンポーネント179を含む。ゲインコンポーネント179は、さらに、適応コードブックゲインコンポーネント180および固定コードブックゲインコンポーネント182を含む。半レートコーデック24のビットストリームも、タイプ0カラム184およびタイプ1カラム186によってさらに規定される。1実施形態において、タイプ0カラム184は、それぞれ80個のサンプルを含む10ミリ秒の2個のサブフレームを用いる。1実施形態のタイプ1カラム186は、3個のサブフレームを用い、その際、第1のサブフレームおよび第2のサブフレームは53個のサンプルを含み、第3のサブフレームは54個のサンプルを含む。
【0105】
全レートコーデック22と同様に生成されたにもかかわらず、LSFコンポーネント172は、タイプ0分類およびタイプ1分類の両方のための複数のステージ188および予測子スイッチ190を含む。さらに、LSFコンポーネント172の1実施形態は、ビットストリームの第1の部分の1部を形成する21ビットを含む。図2において示される、初期半レートフレーム処理モジュール48は、全レートコーデック22と同様に、LSFコンポーネント172を生成する。再び図5を参照して、1実施形態の半レートコーデック24は、3個のステージ188、128個のベクトルを有する2個のステージ、および64個のベクトルを有する1個のステージを含む。半レートコーデック24の3個のステージ188は、後述されるように、予測子係数のセットの選択を例外とするタイプ1として分類されるフレームのための全レートコーデック22と同様に動作する。それぞれの128個のベクトルのインデックスロケーションは、7ビットを用いて識別され、それぞれの64個のベクトルのインデックスロケーションは6ビットを用いて識別される。半レートコーデック24のLSF予測エラー量子化テーブルの1実施形態は、「Float64CBes__40k」と称され、添付のマイクロフィッシュのAPPENDIXのAPPENDIXBにおいて含まれる。
【0106】
半レートコーデック24も、予測子係数のセット間の選択における全レートコーデック22とは異なる。1実施形態の予測子スイッチ190は、1ビットを用いる予測子係数の2個の考えられ得るセットのうちの1つを識別する。予測子係数の選択されたセットは、全レートコーデック22と同様に、予測ラインスペクトル振動数(LSF)を決定するために用いられ得る。予測子スイッチ190は、予測子係数のセットのうちのどれが量子化エラーを最小限にするかを決定し、かつ識別する。予測子係数のセットは、LSF予測子係数テーブルにおいて含まれ得、通常、以下のマトリクスによって示され得る:
【0107】
【表6】
1実施形態において、それぞれ10個の構成要素(n=10)を含む2個のセット(j=2)のそれぞれにおいて4個の予測子係数(m=4)が存在する。1実施形態における半レートコード24のLSF予測子係数テーブルは、「Float64B__40k」と称され、添付のマイクロフィッシュのAPPENDIXのAPPENDIXBにおいて含まれる。再び図3を参照して、LSF予測エラー量子化テーブルおよびLSF予測子係数テーブルは、復号システム16におけるH LPC再構築モジュール118によって用いられる。H LPC再構築モジュール118は、量子化フレームLSFを再構築するために、ビットストリームからLSFコンポーネント172を受信し、かつ再構築する。全レートコ−デック22と同様に、タイプ1として分類されるフレームのために、半レートコーデック24は、所定の線形補間経路を用いる。しかしながら、半レートコーデック24は、タイプ0として分類されるフレームおよびタイプ1として分類されるフレームの両方のための所定の線形補間経路を用いる。
【0108】
半レートコーデック24における適応コードブックコンポーネント176は、音声信号18の周期性に基づいたピッチラグをモデリングする。適応コードブックコンポーネント176は、タイプ0分類のためにサブフレームごとに符号化され、タイプ1分類のためにフレームごとに符号化される。図2において示されるように、初期半レートフレーム処理モジュール48は、タイプ1分類を有するフレームの開ループの適応コードブックコンポーネント176aを符号化する。タイプ0分類を有するフレームのために、H0第1サブフレーム処理モジュール80は、閉ループの適応コードブックコンポーネント176bを符号化する。
【0109】
再び図5を参照して、開ループの適応コードブックコンポーネント176aの1実施形態は、フレームごとに7ビットによって符号化され、閉ループの適応コードブックコンポーネント176bは、サブフレームごとに7ビットによって符号化される。したがって、タイプ0適応コードブックコンポーネント176aは、ビットストリームの第1の部分の1部であり、タイプ1適応コードブックコンポーネント176bは、ビットストリームの第2の部分の1部である。図3において示されるように、復号システム16は、閉ループの適応コードブックコンポーネント176bを受信する。閉ループの適応コードブックコンポーネント176bは、H0励起再構築モジュール114を用いて半レート復号器92によって復号される。同様に、H1励起再構築モジュール116は、開ループの適応コードブックコンポーネント176aを復号する。
【0110】
半レートコーデック24用の固定コードブックコンポーネント178の一実施形態は、全レートコーデック22にあるような、長期残差をエンコードする、タイプの分類に依存する。図2を再度参照すると、タイプ0の固定コードブックコンポーネント178aまたはタイプ1の固定コードブックコンポーネント178bは、H0の第1のサブフレーム処理モジュール80またはH1の第2のサブフレーム処理モジュール84によって、それぞれ生成される。したがって、タイプ0の固定コードブックコンポーネント178aおよびタイプ1の固定コードブックコンポーネント178bは、ビットストリームの第2の部分の一部を形成する。
【0111】
図5を再度参照すると、例示の実施形態のタイプ0の固定コードブックコンポーネント178aは、サブフレーム(2ビットまでが、全レートコーデック22において用いられるべきコードブックを識別する)あたり15ビットを用いてエンコードされる。例示の実施形態において、タイプ0の固定コードブックコンポーネント178aのエンコーディングは、2パルスコードブック192および3パルスコードブック194である複数のnパルスのコードブックの使用を含む。さらに、この例示の実施形態において、ランダムな励起であるエントリーを含むガウスコードブック195を用いる。nパルスのコードブックに関して、半レートコーデック24は、全レートコーデック22に類似したトラック表を用いる。一実施形態において、マイクロフィッシュのAPPENDIXのAPPENDIXBの「tracks.tab」という名称のライブラリ内に含まれる、「static INT16 track_2_7_1」、「static INT16 track_1_3_0」および「static INT16 track_3_2_0)」という名称のトラック表を用いる。
【0112】
2パルスコードブック192の例示の実施形態において、トラック表の各トラックは、各代表的なパルスの80個のサンプルロケーションを含む。第1および第2の代表的なパルス両方のパルスロケーションは、13ビットを用いてエンコードされる。80個の可能なパルスロケーションの1個のエンコーディングは、第1の代表的なパルスのパルスロケーションを識別し、このパルスロケーションに80を乗算し、第2の代表的なパルスのパルスロケーションをこの結果に加算することによって、13ビットで達成される。最後に得られる結果は、全レートコーデック22にあるような、両方の代表的なパルスの符号を表すために用いられるビットを追加することによって、13ビットでエンコードされ得る値である。
【0113】
3パルスコードブック194の例示の実施形態において、パルスロケーションは、4ビットによって規定される16個のサンプルロケーションのうちの一つであり得る一般的なロケーションと、そこからの相対的な移動との組み合わせによって生成される。相対的な移動は、3パルスコードブック194内の3個の代表的なパルスのそれぞれを表す3個の値であり得る。これらの値は、一般的なロケーションから離れたロケーションの差を表し、各代表的なパルスに対して2ビットによって規定され得る。3個の代表的なパルスの符号は、パルスロケーションおよび符号の全ビットが13ビットとなるように、それぞれ1ビットによって規定され得る。
【0114】
ガウスコードブック195は概して、2個の直交ベースのランダムなベクトルを用いて、エンコードされ得るノイズタイプの音声信号を表す。タイプ0の固定コードブックコンポーネント178aは、ガウスコードブック195から生成された2個の直交ベースのランダムなベクトルを表す。タイプ0の固定コードブックコンポーネント178aは、格納要件を増加させることなく、直交ベースのランダムなベクトルの数を増加するために、ガウス表の複数の直交ベースのランダムなベクトルをいかに摂動させるかを表す。例示的な実施形態において、直交ベースのランダムなベクトルの数は、32個のベクトルから45個のベクトルに増加する。各ベクトルが40個の要素を含む、32個のベクトルを含むガウス表は、例示の実施形態のガウスコードブックを表す。この例示の実施形態において、エンコーディング用に用いられる2個の直交ベースのランダムなベクトルは、相互配置されて、各サブフレーム内の80個のサンプルを表す。ガウスコードブックは概して、以下のマトリックスによって表され得る。
【0115】
【表7】
ガウスコードブック195の一実施形態は、「double bv」という名称であり、添付のマイクロフィッシュのAPPENDIXのAPPENDIXBに含まれる。ガウスコードブック195の例示の実施形態に関して、11ビットが、エンコーディングに用いられる2個の直交ベースのランダムなベクトルの両方の組み合わされた指数(ロケーションおよび摂動)を識別し、2ビットが、直交ベースのランダムなベクトルの符号を規定する。
【0116】
タイプ1の固定コードブックコンポーネント178bのエンコーディングは、例示の実施形態における2パルスコードブック196および3パルスコードブック197である複数のnパルスコードブックの使用を含む。2パルスコードブック196および3パルスコードブック197は、タイプ0に分類された、2パルスコードブック192および3パルスコードブック194と同様の機能を有するが、構造は異なる。例示の実施形態のタイプ1の固定コードブックコンポーネント178bは、サブフレームあたり13ビットを用いてエンコードされる。13ビットのうち、1ビットは、2パルスコードブック196または3パルスコードブック197を識別し、12ビットは、それぞれのパルスロケーションおよび代表的なパルスの符号を表す。例示の実施形態の2パルスコードブック196において、トラックは、5ビットを用いてエンコードされ、残りの2ビットが各代表的なパルスの符号用に用いられる、各代表的なパルスの32個のサンプルロケーションを含む。3パルスコードブック197において、一般的なロケーションは、4ビットを用いてエンコードされる8個のサンプルロケーションを含む。相対的移動は、2ビットによってエンコードされ、代表的なパルス用の符号は、タイプ0として分類されるフレームと同様に、3ビットでエンコードされる。
【0117】
図3を再度参照すると、デコーディングシステム16は、タイプ0またはタイプ1の固定コードブックコンポーネント178aおよび178bを受信する。タイプ0またはタイプ1の固定コードブックコンポーネント178aおよび178bは、H0励起再構築モジュール114またはH1再構築モジュール116それぞれによってデコードされる。タイプ0の固定コードブックコンポーネント178aのデコーディングは、2パルスコードブック192、3パルスコードブック194またはガウスコードブック195の一実施形態を用いて生じる。タイプ1の固定コードブックコンポーネント178bは、2パルスコードブック196または3パルスコードブック197を用いてデコードされる。
【0118】
図5を再度参照すると、ゲインコンポーネント179の一実施形態は、タイプ0の適応固定コードブックゲインコンポーネント180aおよび182aを含む。タイプ0の適応固定コードブックゲインコンポーネント180aおよび182aは、全レートコーデック22に用いられる、二次元ベクトル量子化器(2D VQ)164および2Dゲイン量子化表(表4)を用いて、量子化され得る。一実施形態において、2Dゲイン量子化表は、「Float64 gainVQ_3_128」という名称であり、添付されたマイクロフィッシュのAPPENDIXのAPPENDIXBに含まれる。
【0119】
タイプ1の適応コードブックゲインコンポーネント180bおよび固定コードブックゲインコンポーネント182bもまた、多次元のベクトル量子化器を用いて、全レートコーデック22と同様に生成し得る。一実施形態において、三次元のプリベクトル量子化器(3D プリVQ(3D preVQ))198および三次元の遅延タイプベクトル量子化器(3D 遅延タイプVQ(3D delayed VQ))200は、適応コードブックゲインコンポーネント180bおよび固定ゲインコンポーネント182bそれぞれのために用いられる。ベクトル量子化器198および200は、各ゲイン量子化表を用いて量子化を実行する。一実施形態において、ゲイン量子化表は、適応固定ゲインコンポーネントおよび固定コードブックゲインのためのプリゲイン量子化表および遅延タイプゲイン量子化表のそれぞれである。多次元のゲイン表は、同様に構築され得、複数の所定のベクトルを含む。一実施形態における各多次元のゲイン表はそれぞれ、タイプ1として分類されるフレームの各サブフレーム用に3個の要素を含む。
【0120】
全レートコーデック22と同様、適応ゲインコンポーネント180b用の三次元のプリベクトル量子化(3D プリVQ)198は、適応ゲインを直接量子化し得る。さらに、固定ゲインコンポーネント182b用の三次元の遅延タイプベクトル量子化器(3D 遅延タイプ VQ)200は、固定コードブックエネルギーの予測エラーを量子化し得る。異なる予測係数が、各サブフレーム用の固定コードブックエネルギーを予測するために、用いられ得る。好適な実施形態において、第1、第2および第3のサブフレーム用の予測される固定コードブックエネルギーは、以前のフレームの3個の量子化および固定コードブックエネルギーエラーから予測される。この例示の実施形態において、第1、第2および第3のサブフレームの予測される固定コードブックエネルギーは、係数の組{0.6、0.3、0.1}、{0.4、0.25、0.1}および{0.3、0.15、0.075}それぞれを用いて予測される。
【0121】
半レートコーデック24用のゲイン量子化表は概して、以下のように表され得る。
【0122】
【表8】
三次元のプリベクトル量子化器(3D プリVQ)198によって用いられるプリゲイン量子化表の一実施形態は、16個のベクトル(n=16)を含む。三次元の遅延タイプベクトル量子化器(3D遅延タイプVQ)200は、256個のベクトル(n=256)を含む遅延タイプゲイン量子化表の一実施形態を用いる。一実施形態のプリベクトル量子化器(3D プリVQ)198および遅延タイプベクトル量子化器(3D遅延タイプVQ)200用のゲイン量子化表は、それぞれ「Float64 gp3_tab」および「Float64 gainVQ_3_256」という名称であり、添付のマイクロフィッシュのAPPENDIXのAPPENDIXBに含まれる。
【0123】
図2を再度参照すると、タイプ0の適応ゲインコンポーネント180aおよび固定コードブックゲインコンポーネントおよび182aは、H0の第1のサブフレーム処理モジュール80によって生成される。H1の第1のフレーム処理モジュール82は、タイプ1の適応コードブックゲインコンポーネント180bを生成する。同様に、タイプ1の固定コードブックゲインコンポーネント182bは、H1の第2のフレーム処理モジュール86によって生成される。図3を再度参照すると、デコーディングシステム16は、タイプ0の適応ゲインコンポーネント180aおよび固定コードブックゲインコンポーネント182aを受信する。タイプ0の適応コードブックゲインコンポーネント180aおよび固定ゲインコンポーネント182aは、タイプ分類に基づいて、H0の励起再構築モジュール114によってデコードされる。同様に、H1の励起再構築モジュール116は、タイプ1の適応ゲインコンポーネント180bおよびタイプ1の固定コードブックゲインコンポーネント182bをデコードする。
(1.3 4分の1レートコーデック用のビット割り当て)
ここで、図2、図3および図6を参照すると、4分の1レートコーデック26の4分の1レートビットストリームを説明する。4分の1レートコーデック26の例示の実施形態は、フレームベースおよびサブフレームベースの両方で動作するが、全レートコーデック22および半レートコーデック24にあるようなエンコーディングプロセスの一部としてのタイプ分類は含まない。ここで図6を参照すると、4分の1レートコーデック26によって生成されたビットストリームは、LSFコンポーネント202およびエネルギーコンポーネント204を含む。4分の1レートコーデック26の一実施形態は、それぞれがフレームあたり39ビットを用いてフレームを処理する、10ミリ秒の2個のサブフレームを用いて動作する。
【0124】
LSFコンポーネント202は、フレームがタイプ0として分類された場合に、全レートコーデック22と同様のLSF量子化方式を用いて、フレームベースで、エンコードされる。4分の1レートコーデック26は、補間要素206および複数のステージ208を用いて、LSFをエンコードし、フレームのスペクトルエンベロープを表す。LSFコンポーネント202の一実施形態は、27ビットを用いてエンコードされる。27ビットは、2ビットでエンコードされた補間要素206、および25ビットでエンコードされたステージ208のうちの4個を表す。ステージ208は、7ビットを用いてエンコードされた1個のステージ、および6ビットを用いてエンコードされた3個のステージを含む。一実施形態において、4分の1レートコーデック26は、全レートコーデック22によって用いられる正確な量子化表および予測係数表を用いる。一実施形態の量子化表および予測係数表はそれぞれ、「Float64 CBes_85k」および「Float64 B_85k」という名称であり、添付のマイクロフィッシュのAPPENDIXのAPPENDIXBに含まれる。
【0125】
エネルギーコンポーネント204は、エンコーディングシステム12およびデコーディングシステム16の両方によって生成され得る、同様であるが乱数のベクトルによって乗算され得るエネルギーゲインを表す。一実施形態において、エネルギーコンポーネント204は、サブフレームあたり6ビットを用いてエンコードされる。エネルギーコンポーネント204は、乱数に基づいて、サブフレーム用のエネルギーゲインをまず判定することによって生成される。さらに、予測されたエネルギーゲインは、過去のフレームのエネルギーゲインに基づいて、サブフレーム用に判定される。
【0126】
予測されたエネルギーゲインは、エネルギーゲインから減算されて、エネルギーゲイン予測エラーを判定する。エネルギーゲイン予測エラーは、エネルギーゲイン量子化器およびエネルギーゲイン量子化表の複数の所定のスカラを用いて、量子化される。各サブフレーム用の所定のスカラの指数ロケーションは、フレーム用のエネルギーコンポーネント204によって表され得る。
【0127】
エネルギーゲイン量子化表は概して、以下のマトリックスによって表され得る。
【表9】
一実施形態において、エネルギーゲイン量子化表は、64個(n=64)の所定のスカラを含む。エネルギーゲイン量子化表の一実施形態は、「Float64 gainSQ_1_64」という名称であり、添付のマイクロフィッシュのAPPENDIXのAPPENDIXBに含まれる。
【0128】
図2において、LSFコンポーネント202は、最初の4分の1フレーム処理モジュール50によって、フレームベースでエンコードされる。同様に、エネルギーコンポーネント204は、4分の1レートモジュール60によって、サブフレームベースでエンコードされる。ここで図3を参照すると、デコーディングシステム16は、LSFコンポーネント202を受信する。LSFコンポーネント202は、Q LPC再構築モジュール122によってデコードされ、エネルギーコンポーネント204は、Q励起再構築モジュール120によってデコードされる。LSFコンポーネント202のデコーディングは、タイプ1として分類されたフレーム用の全レートコーデック22のデコーディング方法と同様である。エネルギーコンポーネント204は、デコードされて、エネルギーゲインを判定する。デコーディングシステム16内で生成された、同様であるが乱数のベクトルは、エネルギーゲインによって乗算されて、短期励起を生成し得る。
(1.4 8分の1レートコーデック用のビット割り当て)
図2、図3および図7において、8分の1レートコーデック28の8分の1レートビットストリームは、エンコーディングプロセスの一部としてタイプ分類を含まず、フレームベースのみで動作し得る。ここで図7を参照すると、4分の1レートコーデック26と同様、8分の1レートコーデック28のビットストリームは、LSFコンポーネント240およびエネルギーコンポーネント242を含む。LSFコンポーネント240は、フレームがタイプ1として分類された場合、全レートコーデック22と同様のLSF量子化方式を用いて、エンコードされ得る。8分の1レートコーデック28は、複数のステージ244を用いて、短期予測子またはフレームのスペクトル表示をエンコードする。LSFコンポーネント240の一実施形態は、3個のステージ244において、フレームあたり11ビットを用いてエンコードされる。3個のステージ244のうちの2個は、4ビットでエンコードされ、3個のステージ244のうちの最後の1個は、3ビットでエンコードされる。
【0129】
8分の1レートコーデック28用にLSFコンポーネント240を生成する量子化アプローチは、全レートコーデック22に類似したLSF予測エラー量子化表および予測係数表を含む。LSF予測エラー量子化表およびLSF予測係数表は概して、上述の表1および2によって表され得る。例示の実施形態において、8分の1レートコーデック28用のLSF量子化表は、2個のステージに16個の量子化ベクトル(r=16)、1個のステージに8個の量子化ベクトル(s=8)を有し、各ベクトルが10個の要素(n=10)を有する、3個のステージ(j=3)を含む。一実施形態の予測係数表は、各ベクトルが10個の要素(n=10)を有する4個のベクトル(m=4)を含む。一実施形態の量子化表および予測係数表はそれぞれ、「Float64 CBes_08k」および「Float64 B_08k」という名称であり、添付のマイクロフィッシュのAPPENDIXのAPPENDIXBに含まれる。
【0130】
図2において、LSFコンポーネント240は、最初の8分の1フレーム処理モジュール52によって、フレームベースでエンコードされる。エネルギーコンポーネント242も、8分の1レートモジュール62によって、フレームベースでエンコードされる。エネルギーコンポーネント242は、4分の1レートコーデック26と同様に判定およびコード化され得るエネルギーゲインを表す。エネルギーコンポーネント242の一実施形態は、図7に示すように、フレームあたり5ビットによって表される。
【0131】
4分の1レートコーデック26と同様に、エネルギーゲインおよび予測されたエネルギーゲインは、エネルギー予測エラーを判定するために用いられ得る。エネルギー予測エラーは、エネルギーゲイン量子化器およびエネルギーエラー量子化表の複数の所定のスカラを用いて量子化される。エネルギーゲイン量子化表は概して、上述したような表9によって表され得る。一実施形態のエネルギーゲイン量子化器は、「Float64 gainSQ_1_32」という名称であり、添付のマイクロフィッシュのAPPENDIXのAPPENDIXBに含まれる、32個のベクトル(n=32)を含むエネルギーゲイン量子化表を用いる。
【0132】
図3において、LSFコンポーネント240およびエネルギーコンポーネント242は、受信後に、デコーディングシステム16によってデコードされ得る。LSFコンポーネント240およびエネルギーコンポーネント242は、E LPC再構築モジュール126およびE励起再構築モジュール124のそれぞれによってデコードされる。LSFコンポーネント240のデコーディングは、タイプ1として分類されるフレーム用の全レートコーデック22と同様である。エネルギーコンポーネント242は、4分の1レートコーデック26にあるような同様であるが乱数のベクトルに、デコードされたエネルギーゲインを付与することによってデコードされ得る。
【0133】
音声圧縮システム10の一実施形態は、4個のコーデック22、24、26および28のうちの1個を用いて、ビットストリームを作成して、デコードすることが可能である。レート選択およびタイプ分類に依存して、フレーム内の音声信号18の異なるパラメータに重点を置く、特定のコーデック22、24、26および28によって生成されるビットストリームが、エンコードされ得る。したがって、ビットストリームからデコードされて、後処理され、統合された音声20の知覚される質が、最適化され得、一方所望の平均ビットレートが維持される。
【0134】
図2および図3の実施形態に例示された音声圧縮システムモジュールの構成および動作の詳細な記載を以下に提供する。読者は、理解をさらに深めるために、以下の説明とともに、添付のマイクロフィッシュのAPPENDIXのAPPENDIXAに含まれるソースコードを吟味することが奨励される。
(2.0 前処理モジュール)
ここで図8を参照すると、図2に示す前処理モジュール34のブロック図を拡張したものを提供する。前処理モジュール34の一実施形態は、サイレンスエンハンスメントモジュール302、ハイパスフィルタモジュール304およびノイズ抑圧モジュール306を含む。前処理モジュール34は、音声信号18を受信し、前処理音声信号308を提供する。
【0135】
サイレンスエンハンスメントモジュール302は、音声信号18を受信し、最小のノイズの分解能を追跡する機能を行う。サイレンスエンハンスメント機能は、適宜、およびほぼ0の音声信号18の最小の分解能およびレベルを追跡して、その時点のフレームが「サイレンスノイズ」であるか否かを検出する。「サイレンスノイズ」のフレームが検出されると、音声信号18は、0レベルに減少され得る。そうでない場合には、音声信号18は変更されなくともよい。例えば、A法則によるコーディング方式は、このような聞き取れない「サイレンスノイズ」を明瞭に聞き取れるノイズに変換し得る。前処理モジュール34の前の、音声信号18のA法則によるエンコーディングおよびデコーディングは、ほぼ0のサンプル値を約+8または−8の値に増幅し得、これにより、ほとんど聞き取れないノイズが聞き取れるノイズに変換する。サイレンスエンハンスメントモジュール302による処理後、音声信号18は、ハイパスフィルタモジュール304に提供され得る。
【0136】
ハイパスフィルタモジュール304は、2次のポールゼロフィルタであり得、以下の転送関数H(z)によって与えられ得る。
【0137】
【数2】
入力は、分子の係数を2で除算することによって、ハイパスフィルタリングの間、2の因数によって縮小し得る。
【0138】
ハイパスフィルタによる処理に続いて、音声信号18は、ノイズ抑圧モジュール306に伝えられ得る。ノイズ抑圧モジュール306は、周波数領域においてノイズ控除を採用し、これは、ノイズを抑圧するための多くの周知の技術のうちの一つであり得る。ノイズ抑圧モジュール306は、「Enhanced Variable Rate Codec, Speech Service Option 3 for Wideband Spread Spectrum Digital Systems」という名称のTIA/EIA IS−127規格のセクション4.1.2に記載されるようなノイズ抑圧アルゴリズムによって用いられるフーリエ変換プログラムを含み得る。
【0139】
一実施形態のノイズ抑圧モジュール306は、音声信号18の各フレームを、スペクトル増幅がスペクトル相から分離され得る周波数領域に変換する。スペクトル増幅は、人間の聴覚チャネルバンドに従うバンドにグループ化され得る。減衰ゲインは、バンドごとに計算され得る。減衰ゲインは、高調波構造を有しそうなスペクトル領域にあまり重点を置かずに、計算され得る。このような領域において、暗騒音は、強い音声によってマスキングされ得る。したがって、音声が減衰すると、元の音声の質がゆがめられ得るが、ノイズの減少は知覚できるほどには改良されない。
【0140】
減衰ゲインの計算に続いて、各バンドのスペクトル増幅は、減衰ゲインによって乗算され得る。次いで、スペクトル増幅は、元のスペクトル相と組み合わされ得、音声信号18は、時間領域に変換され得る。時間領域信号は、重複かつ追加され得、前処理音声信号308を生成する。前処理音声信号308は、フレーム処理モジュール44を開始するために提供され得る。
(3.0 最初のフレーム処理モジュール)
図9は、図2に示す最初のフレーム処理モジュール44のブロック図である。最初のフレーム処理モジュール44の一実施形態は、LSF生成セクション312、知覚可能な重み付けフィルタモジュール314、開ループピッチ推定モジュール316、特徴付けセクション318、レート選択モジュール320、ピッチ前処理モジュール322、およびタイプ分類モジュール324を含む。特徴付けセクション318は、音声活動検出(VAD)モジュール326および特徴付けモジュール328をさらに含む。LSF生成セクション312は、LPC分析モジュール330、LSF平滑化モジュール332、およびLSF量子化モジュール334を含む。さらに、全レートエンコーダー36内において、LSF生成セクション312は、補間モジュール338を含み、半レートエンコーダー38内において、LSF生成セクションは、予測スイッチモジュール336を含む。
【0141】
図2を参照すると、最初のフレーム処理モジュール44は、LSFコンポーネント140、172、202および240を生成し、レート選択およびタイプ分類を判定するために動作する。レート選択およびタイプ分類は、励起処理モジュール54による処理を制御する。図9に示される最初のフレーム処理モジュール44は、最初の全フレーム処理モジュール46および最初の半フレーム処理モジュール48の一実施形態を示す。最初の4分の1フレーム処理モジュール50および最初の8分の1フレーム処理モジュール52の実施形態は、いくらか異なる。
【0142】
上述したように、一実施形態において、タイプ分類は、最初の4分の1レートフレーム処理モジュール50および最初の8分の1レートフレーム処理モジュール52に関しては生じない。さらに、長期予測子および長期予測子残差は、別々に処理されず、図6および図7に示すエネルギーコンポーネント204および242を表す。したがって、図9に示すLSFセクション312、特徴付けセクション318およびレート選択モジュール320のみが、最初の4分の1レートフレーム処理モジュール50および最初の8分の1レートフレーム処理モジュール52内で動作可能である。
【0143】
最初のフレーム処理モジュール44の理解を容易にするため、まず動作の概略を説明し、次いで詳細な説明を行う。ここで図9を参照すると、前処理された音声信号308がまず、LSF生成セクション312、知覚可能な重み付けフィルタモジュール314および特徴付けセクション318に提供される。しかし、特徴付けセクション318内の処理のいくつかは、開ループピッチ推定モジュール316内で起こる処理に依存する。LSF生成セクション312は、前処理音声信号308のスペクトル表示を推定かつエンコードする。知覚可能な重み付けフィルタモジュール314は、人間の聴覚システムによる処理の間に生じる自然なマスキングによる、前処理された音声信号308のコーディングの間に知覚可能な重み付けを提供するように動作する。開ループピッチ推定モジュール316は、各フレームの開ループピッチラグを判定する。特徴付けセクション318は、前処理された音声信号308のフレームを分析および特徴付けして、引き続く処理を最適化する。
【0144】
特徴付けセクション318による処理の間、および処理の後、結果として生じたフレームの特徴付けは、ピッチ前処理モジュール322によって用いられ得、閉ループのピッチラグの生成において用いられるパラメータを生成する。さらに、フレームの特徴付けは、レート選択モジュール320によって用いられて、レート選択を判定する。ピッチ前処理モジュール322および特徴付けによって判定されたピッチラグのパラメータに基づいて、タイプ分類は、タイプ分類モジュール324によって判定される。
(3.1 LPC分析モジュール)
前処理音声信号308は、LSF生成セクション312内のLPC分析モジュール330によって受信される。LPC分析モジュール330は、LSFコンポーネント312を生成するために用いられる短期予測パラメータを判定する。LPC分析モジュール330の一実施形態内に、前処理音声信号308のフレーム用に実行される3個の10次のLPC分析がある。これらのLPC分析は、フレームの第2の4分の1、フレームの第4の4分の1およびルックアヘッド内の中心に集められる。ルックアヘッドは、次のフレーム内にかぶさる音声セグメントであり、移行効果が減少する。ルックヘッド内の分析は、その時点のフレームからのサンプル、および前処理された音声信号308の次のフレームからのサンプルを含む。
【0145】
異なるウィンドウが、フレーム内の各LPC分析用に用いられ得、線形予測係数を計算する。一実施形態におけるLPC分析は、自己相関方法を用いて実行されて、自己相関係数を計算する。自己相関係数は、各ウィンドウ内の複数のデータサンプルから計算され得る。LPC分析の間、60Hzに拡大されたバンド幅および1.0001のホワイトノイズ訂正因数が、自己相関係数に適用され得る。バンド幅を拡大すると、引き続くエンコーディングの間の、信号およびラウンドオフエラーに対するロブスト性がさらに提供される。ホワイトノイズ訂正因数は効果的に、−40dBのノイズフロアを追加して、スペクトルダイナミックレンジを減少し、引き続くエンコーディングの間のエラーをさらに軽減する。
【0146】
複数の反射係数は、ルルー−グエグエン(Leroux−Gueguen)アルゴリズムを用いて、自己相関係数から計算され得る。次いで、反射係数は、線形予測係数に変換され得る。上述したように、線形予測係数は、LSF(ラインスペクトル周波数)にさらに変換され得る。第4の4分の1内で計算されたLSFは、量子化されて、LSFコンポーネント140、172、202、240としてデコーディングシステム16に送信され得る。第2の4分の1内で計算されたLSFは、タイプ0として分類されたフレームの全レートエンコーダー36の補間パスを判定するために用いられ得る。補間パスは選択可能であり、補間要素158で識別され得る。さらに、第2の4分の1およびルックアヘッド内で計算されるLSFは、エンコーディングシステム12内で用いられ得、後述する短期残差および重み付けされた音声を生成する。
(3.2 LSF平滑化モジュール)
定常暗騒音の間、フレームの第4の4分の1内で計算されたLSFは、LSFを量子化する前に、LSF平滑化モジュール332によって平滑化され得る。LSFは、暗騒音の知覚可能な特徴をよりよく保持するために平滑化される。平滑化は、後述するVADモジュール326およびフレームのスペクトル表示の発展の分析によって提供される音声活動判定によって制御される。LSF平滑化因数をβlsfと示す。例示の実施形態において:
1.暗騒音セグメントの「平滑化」の開始時に、平滑化因数は、5個のフレーム上で、0から0.9に二次的に上がり得る。
2.暗騒音セグメントの「平滑化」の間、平滑化因数を0.9にしてもよい。
3.暗騒音セグメントの「平滑化」の終了時に、平滑化因数を即0に減少させてもよい。
4.暗騒音セグメントの非「平滑化」の間、平滑化因数を0にしてもよい。LSF平滑化因数にしたがって、量子化用LSFを以下のように計算し得る。
lsfn(k)=βlsf・lsfn-1(k)+(1−βlsf)・lsf2(k), k=1,2,・・・,10 (式2)
ここで、lsfn(k)およびlsfn-1(k)はそれぞれ、その時点および以前のフレームの平滑化されたLSFを表し、lsf2(k)は、その時点のフレームの最後の4分の1の中心に集められるLPC分析のLSFを表す。
(3.3 LSF量子化モジュ−ル)
平滑化されたLSF(式2)によって与えられた10次のLPCモデルは、LSF量子化モジュール334によってLSF領域内で量子化され得る。量子化された値は、複数の量子化されたLPC係数Aq(z)342である。量子化方式は、n次の移動平均予測子を用いる。一実施形態において、量子化方式は、全レートコーデック22および4分の1レートコーデック26用の、2次の移動平均予測子を用いる。半レートコーデック24に関して、4次の移動平均切替予測子(average switched predictor)が用いられ得る。8分の1レートコーデック28に関して、4次の移動平均予測子が用いられ得る。上述したように、LSF予測子エラーの量子化は、各コーデック内で、複数ステージコードブックによって実行され得る。
【0147】
LSF量子化のエラー基準は、重み付け平均2乗エラー指標(weighted mean squared error measure)である。重み付け平均2乗エラーの重み付けは、LPC大きさスペクトル(magnitude spectrum)の関数である。したがって、量子化の客観性は、以下によって与えられ得る。
【0148】
【数3】
ここで、重み付けは、
wi=|P(lsfn(i))|0.4 (式4)
であり得、|P(f)|は、周波数fにおけるLPCパワースペクトルである(指数nは、フレーム数を示す)。例示の実施形において、10個の係数がある。
【0149】
一実施形態において、量子化されたLPCの係数Aq(z)342のオーダー化特性(ordering property)がチェックされる。1個のLSFの対がフリップされると、量子化されたLPCの係数が再度オーダー化され得る。2個以上のLSFの対がフリップされると、量子化されたLPCの係数Aq(z)342は、消去されたと宣言され得、後述するデコーディングシステム16のフレームの消去隠匿(concealment)を用いて再構築され得る。一実施形態において、量子化されたLPCの係数Aq(z)342の隣接する係数間の最小の間隔を50Hzにすることが実施され得る。
(3.4 予測子スイッチモジュール)
予測子スイッチモジュール336は、半レートコーデック24内で動作可能である。上述したように、予測されたLSFは、移動平均予測子係数を用いて生成され得る。予測子係数は、その時点のフレームのLSFを予測するために、過去のフレームのLSFのいくつが用いられるかを判定する。上述したように、予測子スイッチモジュール336は、LSF量子化モジュール334と結合されて、量子化エラーを最小限にとどめる予測子係数を提供する。
(3.5 LSF補間モジュール)
量子化されたLSFおよび量子化されてないLSFはまた、全レートコーデック22内の各サブフレーム用に補間され得る。量子化されたLSFおよび量子化されてないLSFは、補間されて、各サブフレーム用に量子化された線形予測パラメータおよび量子化されてない線形予測パラメータを提供する。上述したように、LSF補間モジュール338は、タイプ0に分類される全レートコーデック22のフレーム用に補間パスを選択する。他のすべてのフレームに関しては、所定の線形補間パスが用いられ得る。
【0150】
LSF補間モジュール338は、以前のフレームのLSFおよびフレームの第2の4分の1において計算されたLSFに関して、その時点のフレームのLSFを分析する。補間パスは、サブフレーム間のスペクトルエンベロープ内の変種の程度に基づいて選択され得る。上述したように、異なる補間パスは、以前のフレームのLSFの重み付け、およびその時点のサブフレーム用のその時点のフレームのLSFの重み付けを調節する。LSF補間モジュール338による調節に続いて、補間されたLSFは、各サブフレーム用の予測子係数に変換され得る。
【0151】
全レートコーデック22、半レートコーデック24、4分の1レートコーデック26および8分の1レートコーデック28内のタイプ1の分類に関して、所定の線形補間パスが、重み付けを調節するために用いられ得る。補間されたLSFも同様に、補間に続く予測子係数に変換され得る。さらに、予測子係数をさらに重み付けして、知覚可能な重み付けフィルタモジュール314によって用いられる係数を作成し得る。
(3.6 知覚可能な重み付けフィルタモジュール)
知覚可能な重み付けフィルタモジュール314は、前処理された音声信号308を受信およびフィルタリングするために動作される。知覚可能な重み付けフィルタモジュール314によるフィルタリングは、前処理された音声信号308の谷区域には重点を置き、ピーク面積には重点を置かないことによって、実行され得る。知覚可能な重み付けフィルタモジュール314の一実施形態には2個の部分がある。第1の部分は、従来のポールゼロフィルタであり得、
【0152】
【数4】
によって与えられる。ここで、A(z/γ1)および1/A(z/γ2)は、それぞれゼロフィルタおよびポールフィルタである。ゼロフィルタおよびポールフィルタ用の予測係数は、各サブフレーム用に補間されたLSFから取得され得、γ1およびγ2それぞれによって、重み付けされる。知覚可能な重み付けフィルタモジュール314の例示的な実施形態において、重み付けは、γ1=0.9、γ2=0.5である。知覚可能な重み付けフィルタモジュール314の第2の部分は、
【0153】
【数5】
によって与えられる、適応ローパスフィルタであり得る。
ここで、ηは、後述する定常長期スペクトル特性の関数である。一実施形態において、定常長期スペクトル特徴が、公衆交換電話ネットワーク(PSTN)と関連した通常のチルトを有する場合、η=0.2であり、有さない場合には、η=0.0である。通常のチルトは通常、改変されたIRS特徴またはスペクトルチルトと呼ばれる。知覚可能な重み付けフィルタモジュール314による処理の後、前処理された音声信号308は、重み付けされた音声344として記載され得る。重み付けされた音声344は、開ループピッチ推定モジュール316に提供される。
(3.7 開ループピッチ推定モジュール)
開ループピッチ推定モジュール316は、フレーム用に開ループピッチラグを生成する。一実施形態において、開ループピッチラグは実際、3個の開ループピッチラグ、すなわち、フレームの前半用の第1のピッチラグ、フレームの後半用の第2のピッチラグおよびフレームのルックアヘッド部分用の第3のピッチラグを含む。
【0154】
各フレーム用に、第2および第3のピッチラグは、その時点のフレームに基づいて、開ループピッチ推定モジュール316によって推定される。第1の開ループピッチラグは、さらに調節され得る以前のフレームからの第3の開ループのピッチラグ(ルックアヘッド)である。3個の開ループピッチラグは、平滑化されて、連続したピッチの等高線を提供する。開ループピッチラグの平滑化は、一組の発見的および特定の決定ルールを採用し、フレームの最適ピッチ制御を保持する。開ループピッチ推定は、sw(n)が示す重み付けされた音声344に基づく。一実施形態において、開ループピッチ推定モジュール316によって推定された値は、17〜148の範囲のラグである。
【0155】
第1、第2および第3の開ループピッチラグは、以下の式にしたがって計算され得る正規化相関、R(k)を用いて判定され得る。その式とは、
【0156】
【数6】
であり、例示の実施形態においてn=79であり、これは、サブフレーム内のサンプル数を表す。複数の領域それぞれの最大正規化相関R(k)が判定される。この領域は、可能なラグの範囲内で4個の下位範囲を表す4個の領域であり得る。例えば、17〜33ラグからの第1の領域、34〜67ラグからの第2の領域、68〜137ラグからの第3の領域、および138〜148ラグからの第4の領域である。各領域から正規化相関値R(k)を最大にするラグに対応した1個の開ループピッチラグが、最初のピッチラグ候補である。最初のピッチラグ候補の最適な候補は、正規化相関、特徴付け情報および開ループピッチラグの履歴に基づいて選択される。この手順は、第2のピッチラグおよび第3のピッチラグ用に実行され得る。
【0157】
最後に、第1、第2および第3の開ループピッチラグは、全体的なピッチの等高線に最適に合うように調節され、フレーム用の開ループピッチラグを形成し得る。開ループピッチラグは、後述するさらなる処理用のピッチ前処理モジュール322に提供される。開ループピッチ推定モジュール316は、ピッチラグおよびピッチラグにおける正規化相関値も提供する。ピッチラグにおける正規化相関値は、ピッチ相関と呼ばれ、Rpとして記される。ピッチ相関Rpは、特徴付けセクション318内のフレームを特徴付けする際に用いられる。
(3.8 特徴付けセクション)
特徴付けセクション318は、前処理された音声信号308の各フレームを分析および特徴付けするために動作される。特徴付け情報は、最初のフレーム処理モジュール44内の複数のモジュールによって、および励起処理モジュール54によって、利用される。特に、特徴付け情報は、レート選択モジュール320およびタイプ分類モジュール324内で用いられる。さらに、特徴付け情報は、量子化およびコーディングの間に用いられ得、特には、後述するクラス依存タイプ重み付けアプローチを用いた音声の知覚的に重要な特徴に重点を置いた情報が用いられ得る。
【0158】
特徴付けセクション318による、前処理された音声信号308の特徴付けは、各フレームに起こる。特徴付けセクション318の一実施形態の動作は概して、前処理された音声信号308の分析の6個のカテゴリーとして記載され得る。これらの6個のカテゴリーとは、音声活動判定、無音声のノイズのような音声の識別、6クラスの信号の特徴付け、信号対騒音比の導出、4ステージ特徴付け、および定常長期スペクトル特徴の特徴付けである。
(3.9 音声活動検出(VAD)モジュール)
音声活動検出(VAD)モジュール326は、特徴付けにおける第1の工程として、音声活動判定を実行する。VADモジュール326は、前処理された音声信号308が何らかの形態の音声であるか否か、あるいは、前処理された音声信号308が単なるサイレンスであるかまたは暗騒音であるかを判定するように動作する。VADモジュール326の一実施形態は、暗騒音の挙動を追跡することによって、音声活動を検出する。VADモジュール326は、その時点のフレームのパラメータと暗騒音を表すパラメータとの間の差をモニタリングする。一組の所定の閾値を用いると、フレームは、音声フレームまたは暗騒音フレームとして分類され得る。
【0159】
VADモジュール326は、例えば、フレーム内のサンプルの最大の絶対値、反射係数、予測エラー、LSF、およびLPC分析モジュール330によって提供される10次の自己相関係数などの、複数のパラメータのモニタリングに基づいて、音声活動を判定するように動作する。さらに、VADモジュール326の例示の実施形態は、最近のフレームのピッチラグおよび適応コードブックゲインのパラメータを用いる。VADモジュールによって用いられるピッチラグおよび適応コードブックゲインは、その時点のフレームのピッチラグおよび適応コードブックゲインがまだ利用可能でないため、以前のフレームのものである。VADモジュール326によって実行される音声活動判定は、エンコーディングシステム12のいくつかの局面、および特徴付けモジュール328による最終クラスの特徴付け判定の一部の形成を制御するために用いられ得る。
(3.10 特徴付けモジュール)
VADモジュール326による音声活動判定に続いて、特徴付けモジュール328が作動される。上述したように、特徴付けモジュール328は、前処理された音声信号308を分析する、第2、第3、第4および第5のカテゴリーを実行する。第2のカテゴリーは、無音声のノイズのような音声フレームである。
(3.10.1 無音声のノイズのような音声検出)
概して、無音声のノイズのような音声フレームは、高調波構造を含まないのに対し、音声フレームは、高調波構造を含む。一実施形態において、無音声のノイズのような音声フレームの検出は、前処理された音声信号308および重み付け残差信号Rw(z)に基づく。重み付け残差信号Rw(z)は、
Rw(Z)=A(z/γ1)・S(z) (式8)
によって与えられ、ここで、A(z/γ1)は、重み付けγ1によって重み付けされた0フィルタを表し、S(z)は、前処理された音声信号308である。複数のパラメータ、例えば、以下の6個のパラメータが、その時点のフレームが無音声のノイズのような音声であるか否かを判定するために用いられ得る。これらの6個のパラメータを以下に記す。:
1.フレームの最初の3/4上で前処理された音声信号308のエネルギー。
2.所定の閾値下にあるフレーム内の音声サンプルの計数。
3.重み付けされた残差信号およびフレームサイズを用いて判定される残差シャープネス。シャープネスは、サンプルの平均絶対値と、サンプルの最大絶対値との比率によって与えられる。重み付けされた残差信号は、式8から判定され得る。
4.前処理された音声信号308の大きさスペクトルのチルトを表す第1の反射係数。
5.前処理された音声信号308の0交差レート。
6.前処理された音声信号308と重み付けされた残差信号との間の予測測定。
【0160】
一実施形態において、一組の所定の閾値は、フレームが無音声のノイズのような音声であるか否かを判定する際、上にリストしたパラメータと比較される。この結果の判定は、ピッチ前処理モジュール322を制御する際、および固定コードブック検索の際に用いられ得、これら両方は後述する。さらに、無音声のノイズのような音声判定は、前処理された音声信号308の6クラスの信号の特徴付けを判定する際に用いられる。
(3.10.2 6クラスの信号の特徴付け)
特徴付けモジュール328はまた、6クラスの信号の特徴付けである分析の第3のカテゴリーを実行し得る。6クラスの信号の特徴付けは、フレームの優性な特徴によって、6クラスのうちの1個にフレームを特徴付けることによって、実行される。一実施形態において、6クラスを、以下のように記載し得る。
0.サイレンス/暗騒音
1.定常のノイズのような無音声
2.非定常無音声
3.オンセット
4.非定常音声
5.定常音声
別の実施形態において、破裂音として特徴付けされるフレームなど、他のクラスも含まれる。初めに、特徴付けモジュール328は、サイレンス/暗騒音フレーム(クラス0)、非定常無音声フレーム(クラス2)、オンセットフレーム(クラス3)、クラス4および5によって表される音声フレームを区別する。非定常(クラス4)および定常(クラス5)としての音声フレームの特徴付けは、ピッチ前処理モジュール322の活動の間に、実行され得る。さらに、特徴付けモジュール328は初め、定常のノイズのような無音声フレーム(クラス1)と非定常の無音声フレーム(クラス2)とを区別し得ない。この特徴付けクラスはまた、上述した、無音声のノイズのような音声アルゴリズムによる判定を用いて、ピッチ前処理モジュール322による処理の間に識別され得る。
【0161】
特徴付けモジュール328は、例えば、前処理音声信号308およびVADモジュール326による音声活動検出を用いて、特徴付けを実行する。さらに、特徴付けモジュール328は、フレーム用に開ループピッチラグ、および第2の開ループピッチラグに対応した正規化相関Rpを利用し得る。
【0162】
複数のスペクトルチルトおよび複数の最大絶対値は、特徴付けモジュール328によって、前処理された音声信号308から得られ得る。例示の実施形態において、それぞれが80個のサンプルを含む4個の重複したセグメントのスペクトルチルトが計算される。4個の重複されたセグメントは、80個のサンプルのハミングウィンドウによって重み付けされ得る。例示の実施形態の最大絶対値は、前処理された音声信号308の8個の重複されたセグメントから得られる。概して、8個の重複されたセグメントのそれぞれの長さは、開ループピッチラグの期間の約1.5倍である。最大絶対値は、増幅エンベロープの平滑化された等高線を作成するために用いられ得る。
【0163】
スペクトルチルト、最大絶対値、およびピッチ相関Rpパラメータは、フレームごとに複数回更新してもよいし、または補間してもよい。これらのパラメータの平均値はまた、VADモジュール326によって暗騒音として特徴付けされるフレーム用に数回計算され得る。例示の実施形態において、8個の更新かつ推定されたパラメータはそれぞれ、それぞれが20個のサンプルを有する、8個のセグメントを用いて取得される。暗騒音用のパラメータの推定は、一組の「騒音消去」パラメータを作成するための暗騒音としては特徴付けられない、続きのフレーム用のパラメータの推定から除算され得る。
【0164】
一組の定常ベースの判定パラメータは、「騒音消去」パラメータおよび開ループピッチラグから計算され得る。統計ベースの判定パラメータはそれぞれ、平均化、導出、発展、最大または最小などの、元のパラメータの統計的特性を表す。一組の所定の閾値パラメータを用いると、統計的判定パラメータに基づいたその時点のフレーム用に、最初の特徴付けが判定され得る。最初の特徴付けの判定、過去の特徴付けの判定、およびVADモジュール326の音声活動判定に基づいて、最初のクラス判定が、そのフレーム用になされ得る。最初のクラス判定は、クラス0、2、3、またはクラス4および5が表す音声フレームとして、フレームを特徴付けする。
(3.10.3 信号対騒音比の導出)
フレームの特徴付けに加え、一実施形態の特徴付けモジュール328はまた、信号対騒音比(NSR)を導出することによって、分析の第4のカテゴリーも実行する。NSRは、暗騒音エネルギーの推定とフレームのフレームエネルギーとの比率として計算され得る、従来の歪曲基準である。NSR計算の一実施形態は、真実の暗騒音のみが、改変された音声活動判定を用いて、その比率に含まれることを保証する。改変された音声活動判定は、VADモジュール326による最初の音声活動判定、前処理された音声信号308のフレームのエネルギー、およびルックアヘッド部分用に計算されたLSFを用いて導出される。改変された音声活動判定は、フレームが暗騒音であり、暗騒音のエネルギーが更新されることを示す。
【0165】
暗騒音は、例えば、移動平均を用いて、フレームエネルギーから更新される。暗騒音のエネルギーレベルがフレームエネルギーのエネルギーレベルより大きい場合、暗騒音のエネルギーレベルは、フレームエネルギーと置換される。フレームエネルギーによる置換は、暗騒音のエネルギーレベルを低いレベルへと移動させ、この結果生じる端数を切り捨てることを含み得る。この結果は、NSRを計算する際に用いられ得る暗騒音エネルギーの推定を表す。
【0166】
NSRの計算に続いて、特徴付けモジュール328は、最初のクラス判定を改変されたクラス判定に訂正する。この訂正は、最初のクラス判定、音声活動判定、および無音声のノイズのような音声の判定を用いて実行され得る。さらに、例えば、反射係数によって表されるスペクトル、ピッチ係数Rp、NSR、フレームのエネルギー、以前のフレームのエネルギー、残差シャープネス、および重み付けされた音声のシャープネスを表す、以前に計算されたパラメータも用いてもよい。最初のクラス判定の訂正は、特徴付け同調(characterization tuning)と呼ばれる。これらの状態が識別された場合、特徴付け同調は、最初のクラスの判定を変化させ、オンセット状態フラグおよびノイズのある音声フラグを設定し得る。さらに、同調はまた、VADモジュール326による音声活動判定における変化をトリガーし得る。
(3.10.4 4ステージ特徴付け)
特徴付けモジュール328はまた、特徴付けの第5のカテゴリー、すなわち、4ステージ特徴付けも生成し得る。4ステージ特徴付けは、ピッチ前処理モジュール322を制御するパラメータである。4ステージ特徴付けの一実施形態は、4つのカテゴリーを区別する。これらのカテゴリーは、1〜4の数字でラベル付けされ得る。1とラベル付けされたカテゴリーは、ピッチ前処理モジュール322をリセットして、遅延が蓄積し、これがピッチ前処理の間の予定の遅延を超えることを防ぐために用いられる。概して、残りのカテゴリーは、増加する音声強度を示す。増加する音声強度とは、音声の周期性の測定である。別の実施形態において、音声強度のレベルを示すために、多少のカテゴリーを含んでもよい。
(3.10.5 定常長期スペクトル特徴)
特徴付けモジュール328はまた、前処理された音声信号308の定常長期スペクトル特徴を判定することによって、分析の第6のカテゴリーを実行する。定常長期スペクトルの特徴は、例えば、LSF、6クラス信号の特徴付けおよび開ループピッチゲインなどのスペクトル情報を用いて、複数のフレーム上で判定される。判定は、これらのパラメータの長期平均に基づく。
(3.11 レート選択モジュール)
特徴付けモジュール328による改変されたクラス判定に続いて、レート選択モジュール320は、開ループレート選択と呼ばれる最初のレート選択を行い得る。レート選択モジュール320は、例えば、改変されたクラス判定、NSR、オンセットフラグ、残差エネルギー、シャープネス、ピッチ相関Rp、および開ループレート選択を判定する際の反射係数などのスペクトルパラメータを用い得る。開ループレート選択はまた、音声圧縮システム10が動作するモードに基づいても選択され得る。このレート選択モジュール320は、モードのそれぞれによって示されるような所望の平均ビットレートを提供するように同調される。最初のレート選択は、後述するピッチ前処理モジュール322によって処理後に改変され得る。
(3.12 ピッチ前処理モジュール)
ピッチ前処理モジュール322は、フレームベースで動作して、重み付けされた音声344の分析および改変を実行する。ピッチ前処理モジュール322は、例えば、重み付けされた音声344のピッチサイクル上に圧縮技術または拡張技術を用い、エンコーディングプロセスを向上させる。図2、図4および図5に関して上述したように、開ループピッチラグは、ピッチ前処理モジュール322によって量子化されて、開ループの適応コードブックコンポーネント144aまたは176aを生成する。フレームの最終タイプの分類がタイプ1である場合、この量子化は、フレーム用のピッチラグを表す。しかし、図2、図4および図5に関して上述したように、タイプ分類がピッチ前処理モジュール322によって処理後に変更された場合、ピッチラグ量子化もまた変更されて、閉ループの適応コードブックコンポーネント144bまたは176bを表す。
【0167】
開ループピッチ推定モジュール316によって生成されたフレーム用の開ループピッチラグは、量子化および補間されて、ピッチトラック348を作成する。概して、ピッチ前処理モジュール322は、ピッチトラック348に合うように、重み付けされた音声344を改変しようとする。この改変が成功した場合、フレームの最終のタイプ分類はタイプ1である。この改変が不成功の場合、フレームの最終のタイプ分類はタイプ0である。
【0168】
後にさらに詳述するように、ピッチ前処理の改変手順は、重み付けされた音声344の連続した時間歪曲を実行し得る。歪曲は、可変遅延を導入する。例示的な実施形態において、エンコーディングシステム12内の最大可変遅延は、20個のサンプル(2.5ms)である。再構築/改変されたセグメント間の不連続性を回避するために、隣接するピッチサイクル間に特定の重複を有する、重み付けされた音声344は、ピッチサイクルベースで改変し得る。重み付けされた音声344は、ピッチトラック348にしたがって改変され得、改変された重み付けされた音声350を生成する。さらに、複数の量子化されていないピッチゲイン352が、ピッチ前処理モジュール322によって生成される。フレームのタイプ分類がタイプ1である場合、量子化されていないピッチゲイン352は、タイプ1の適応コードブックゲインコンポーネント148b(全レートコーデック22用)または180b(半レートコーデック24用)を生成するために用いられる。ピッチトラック348、改変され、重み付けされた音声350および量子化されていないピッチゲイン352は、励起処理モジュール54に提供される。
【0169】
上述したように、特徴付けモジュール328による4ステージ特徴付けは、ピッチ前処理を制御する。一実施形態において、フレームが主に、カテゴリー1などの暗騒音または低ピッチ相関を備えた無音声である場合、フレームは不変のままであり、ピッチ前処理の蓄積された遅延が0にリセットされる。フレームが主に、カテゴリー2などのパルスのような無音声である場合、簡単な時間移動を除いては、信号を何ら歪曲させることなしに、蓄積された遅延が保持され得る。この時間移動は、入力音声信号18の蓄積された遅延によって判定され得る。残りの4ステージ特徴付けを有するフレームに関して、ピッチ前処理アルゴリズムのコアが実行されて、信号を最適に歪曲させ得る。
【0170】
概して、一実施形態においてピッチ前処理モジュール322のコアは、3個の主なタスクを実行する。第1に、重み付けされた音声344は、ピッチトラック348と整合させようとして改変される。第2に、信号用のピッチゲインおよびピッチ相関が推定される。最後に、音声信号18の特徴付けおよびレート選択が、ピッチ前処理分析の間に取得されるさらなる信号情報に基づいて改善される。別の実施形態において、波形補間などのさらなるピッチ前処理が含まれ得る。概して、波形補間は、前方−後方波形補間技術を用いて、特定の不規則移行セグメントを改変するために用いられ得、規則性を高め、重み付けされた音声344の不規則性を抑制する。
(3.12.1 改変)
重み付けされた音声344の改変は、緩和コード励起線形予測(RCELP)音声コーディングアプローチに類似したピッチコーディングモデルに、重み付けされた音声344をより正確に適合させる。RCELP音声コーディングの実施例は、TIA(通信産業協会)IS−127規格に提供される。知覚できるような質の損失をまったく生じさせずに改変を実行することには、微細ピッチの検出、セグメントサイズの推定、目標の信号歪曲、および信号歪曲が含まれ得る。微細ピッチの検出は、フレームレベルベースで実行され得、一方、セグメントサイズ、目標の信号歪曲および信号の歪曲の推定が、ピッチサイクルごとに実行され得る。
(3.12.1.1 微細ピッチの検索)
微細ピッチの検索は、以前に判定された第2および第3のピッチラグ、レート選択および蓄積されたピッチ前処理遅延に基づいて、重み付けされた音声344上に実行され得る。微細ピッチの検索は、分数ピッチラグを検索する。分数ピッチラグは、ラグの量子化と組み合う非整数ピッチラグである。この組み合わせは、開ループピッチラグおよび重み付けされた音声344のピッチ相関を最大にする発見ラグを量子化するために用いられる、ラグの量子化表を検索することによって導出される。一実施形態において、検索は、異なるレート選択と関連した異なる量子化技術に起因して、各コーデックごとに異なって実行される。検索は、開ループピッチラグによって識別される検索エリアにおいて実行されて、蓄積された遅延によって制御される。
(3.12.1.2 セグメントサイズの推定)
セグメントサイズは、多少の調節は行なわれるが、ピッチ期間に従う。概して、ピッチサイクルのピッチ複合(complex)(主なパルス)は、セグメントの終端に向かって設けられ、これにより、知覚可能で最も重要な部分、ピッチ複合上の歪曲が最大に正確になる。所定のセグメントに関して、開始点は固定され、終点は移動されて、適合する最適モデルが得られ得る。終点の移動は効果的に、時間スケールを延ばしたりまたは圧縮する。この結果、セグメントの開始時におけるサンプルは、ほとんど移動せず、最大の移動は、セグメントの終端に向かって起こる。
(3.12.1.3 歪曲用の目標信号)
時間歪曲用の目標信号の一実施形態は、S’w(n)によって表される、改変され、重み付けされた音声350から導出されたその時点のセグメントと、Lp(n)によって表されるピッチトラック348との合成である。ピッチトラック348によって、目標信号S’w(n),n=0,...,Ns−1の各サンプル値、Lp(n)は、21次のハミング重み付けされたシンク(Sinc)ウィンドウを用いて、改変され、重み付けされた音声350の補間によって取得され得る。
【0171】
【数7】
ここで、i(Lp(n))およびf(Lp(n))はそれぞれ、ピッチラグの整数および分数の部分である。ws(f,i)は、ハミング重み付けされたシンクウィンドウであり、Nsはセグメントの長さである。重み付けされた目標、
Swt w(n)は、Swt w(n)=We(n)・Sl w(n)によって与えられる。重み付けされた関数、we(n)は、2個の一次関数であり得、これは、ピッチ複合に重点を置き、ピッチ複合間の「ノイズ」に重点を置かない。4ステージの分類にしたがって、より高い周期性のセグメント用のピッチ複合への重点を強化することによって、重み付けを適用してもよい。
【0172】
重み付けされた目標のSwt w(n)と重み付けされた音声344との間の正規化された交差相関を最大にする整数の移動は、sw(n+τacc)であり、sw(n+τacc)は、蓄積された遅延にしたがって移動した、重み付けされた音声344であり、τaccは、
【0173】
【数8】
を最大にすることによって得られ得る。
微細(分数の)移動は、τshiftの近隣で、R(τshift)のアップサンプル(upsample)されたバージョンを検索することによって判定され得る。これにより、最終の最適移動τoptと、対応し、正規化された交差相関Rn(τopt)が生じる。
【0174】
3.12.1.4 信号歪曲
セグメント用に改変され、重み付けされた音声350は、以下の式によって与えられるマッピングにしたがって再構築され得る。これらの式とは、
[sw(n+τacc),sw(n+τacc+τc+τopt)]→[s’w(n),s’w(n+τc−1)]
(式11)
かつ、
[sw(n+τacc+τc+τopt),sw(n+τacc+τopt+Ns−1)]→[s’w(n+τc),s’w(n+Ns−1)] (式12)
であり、τcは、歪曲関数を規定するパラメータである。概して、τcは、ピッチ複合の開始を指定する。式11によって与えられるマッピングは、時間歪曲を指定し、式12によって与えられるマッピングは、時間移動(歪曲なし)を指定する。両方は、ハミング重み付けされたシンクウィンドウ関数を用いて実行される。
(3.12.2 ピッチゲインおよびピッチ相関推定)
ピッチゲインおよびピッチ相関は、ピッチサイクルベースで推定され得、式11および12によってそれぞれ規定される。ピッチゲインは、式9によって規定される目標s’w(n)と、式11および12によって規定される、最終の改変された信号s’w(n)との間の平均2乗エラーを最小限にとどめ、これは、
【0175】
【数9】
によって与えられ得る。ピッチゲインは、量子化されていないピッチゲイン352として、励起処理モジュール54に提供される。ピッチ相関は、
【0176】
【数10】
によって与えられ得る。両方のパラメータは、ピッチサイクルベースで利用可能であり、線形的に補間され得る。
(3.12.3.微細な分類および微細なレート選択)
ピッチ前処理モジュール322によるピッチ前処理の後、特徴付けモジュール328およびレート選択モジュール320に平均ピッチ相関およびピッチゲインを提供する。特徴付けモジュール328およびレート選択モジュール320は、ピッチ相関およびピッチゲインを用いて、最終特徴付けクラスおよび最終レート選択をそれぞれ生成する。6クラスの信号特徴付けとフレームの開ループレートの選択とを微細化することにより、最終特徴付けクラスおよび最終レート選択を決定することが可能である。
【0177】
具体的には、特徴付けモジュール328は、特徴付けとして有声フレームを有するフレームをクラス4(すなわち、「非静止有声」)として特徴付けるべきか、それともクラス5(すなわち、「静止有声」)として特徴付けるかを決定する。加えて、特定のフレームが無声のノイズ状の音声の改変物であるという以前の決定に基づいて、特定のフレームが静止ノイズ状の無声音声であるという最終決定が行われ得る。ノイズ状の無声音声であると確認されたフレームは、クラス1(すなわち、「静止ノイズ状の無声音声」)として特徴付けられ得る。
【0178】
この最終特徴付けクラスと、レート選択モジュール320による開ループレート選択と、半レート信号ライン30(図1)上の半レート信号送信フラグとに基づいて、最終レート選択を決定することが可能である。この最終レートの選択結果は、レート選択インジケータ354として、励起処理モジュール54に提供される。加えて、フレームの最終特徴付けクラスは、制御情報356として、励起処理モジュール54に提供される。
【0179】
(3.13 タイプ分類モジュール)
タイプ分類モジュール324は、全レートコーデック22および半レートコーデック24について、最終特徴付けクラスを用いることもできる。クラス0〜4の最終特徴付けクラスを有するフレームは、タイプ0フレームであると決定され、クラス5のフレームは、タイプ1フレームであると決定される。このタイプ分類は、タイプインジケータ358として励起処理モジュール54に提供される。
【0180】
(4.0 励起処理モジュール)
図2に示すように、タイプ分類モジュール324からのタイプインジケータ358は、レート選択結果に応じて、全レートモジュール54または半レートモジュール56のいずれかを選択的に活性化させる。図10は、図2に示すF0またはH0第1のサブフレーム処理モジュール70またはH0第1のサブフレーム処理モジュール80を示すブロック図である。この第1のサブフレーム処理モジュール70または80は、タイプ0分類の場合に活性化される。同様に、図11は、F1第1のフレーム処理モジュール72またはH1第1のフレーム処理モジュール82と、F1第2のサブフレーム処理モジュール74またはH1第2のサブフレーム処理モジュール84と、F1第2のフレーム処理モジュール76またはH1第2のフレーム処理モジュール86を示すブロック図である。これらのフレーム処理モジュールは、タイプ1分類の場合に活性化される。上述したように、「F」および「H」は、全レートコーデック22および半レートコーデック24をそれぞれ表す。
【0181】
図2に示す4分の1レートモジュール60および8分の1レートモジュール62の活性化は、レート選択に基づき得る。一実施形態において、擬似乱数シーケンスを生成およびスケーリングして、短期間の励起を表す。エネルギー成分204および242(図2)は、上述したような擬似乱数シーケンスのスケーリングを表す。一実施形態において、擬似乱数シーケンスを生成する際に用いられる「シード」をビットストリームから抽出し、これにより、符号化システム12と復号化システム16との間に同時性を提供する。
【0182】
上述したように、励起処理モジュール54は、重み付けされた音声350の改変物、逆量子化ピッチゲイン352、レートインジケータ354および制御情報356も受信する。4分の1レートコーデック26および8分の1レートコーデック28は、処理中、これらの信号を用いない。しかし、これらのパラメータを用いて、全レートコーデック22および半レートコーデック24内の音声信号18のフレームをさらに処理することが可能である。後述するように、全レートコーデック22および半レートコーデック24によるこれらのパラメータの利用は、フレームのタイプ分類がタイプ0であるのかそれともタイプ1であるのかに依存する。
【0183】
(4.1 全レートコーデックおよび半レートコーデックのタイプ0フレームのための励起処理モジュール)
ここで図10を参照して、F0またはH0の第1のサブフレーム処理モジュール70、80の一実施形態は、適応コードブックセクション362と、固定コードブックセクション364と、ゲイン量子化セクション366とを含む。タイプ0のフレームの処理およびコード化は、従来のCELP符号化(例えば、TIA(通信産業協会)規格IS−127によるCELP符号化)に幾分類似する。上述したように、全レートコーデック22の場合、フレームを4つのサブフレームに分割することが可能であり、半レートコーデック24の場合、フレームを2つのサブフレームに分割することが可能である。図10中に示した機能は、サブフレーム単位で実行される。
【0184】
F0またはH0の第1のサブフレーム処理モジュール70および80(図2)は、閉ループのピッチラグと、適応コードブックの対応する適応コードブックゲインとを決定するように動作する。加えて、固定コードブックを用いて長期残差を量子化し、対応する固定コードブックゲインも決定する。閉ループのピッチラグの量子化ならびに適応コードブックゲインおよび固定コードブックゲインの共量子化も行う。
【0185】
(4.1.1 適応コードブックセクション)
適応コードブックセクション362は、適応コードブック368と、第1の乗算器370と、第1の合成フィルタ372と、第1の知覚重み付けフィルタ374と、第1の減算器376と、第1の最小化モジュール378とを含む。適応コードブックセクション362は、合成解析(ADS)アプローチを用いて、適応コードブック368から最良の閉ループのピッチラグをサーチする。
【0186】
閉ループのピッチラグに対応する適応コードブック368からのセグメントを、適応コードブックベクトル(va)382と呼ぶ場合がある。図9のピッチ前処理モジュール322からのピッチトラック348を用いて適応コードブック368中の領域を識別し、適応コードブックベクトル(va)382のベクトルをサーチすることが可能である。第1の乗算器370は、選択された適応コードブックベクトル(va)382をゲイン(ga)384で乗算する。ゲイン(ga)384を逆量子化すると、これは、後述するような計算が為される初期適応コードブックゲインを表すようになる。その結果得られた信号を、第1の合成フィルタ372に送る。この第1の合成フィルタ372は、上述したLPC解析と逆の機能を行う。第1の合成フィルタ372は、LSF量子化モジュール334からの量子化LPC係数Aq(z)342を受信し、第1の知覚重み付けフィルタモジュール374と共に、第1の再合成音声信号386を生成する。第1の減算器376は、重み付けされた音声350の改変物から第1の再合成音声信号386を減算して、長期エラー信号388を生成する。重み付けされた音声350の改変物は、適応コードブック368中のサーチのためのターゲット信号である。
【0187】
第1の最小化モジュール378は、長期エラー信号388を受信する。この長期エラー信号388は、閉ループのピッチラグの量子化におけるエラーを表すベクトルである。第1の最小化モジュール378は、ベクトルエネルギーの計算を行い、対応する重み付けされた2乗平均エラーを決定する。加えて、第1の最小化モジュール378は、長期エラー信号388のエネルギーを低減するために、適応コードブックベクトル(va)382について、適応コードブック368からのベクトルのサーチおよび選択を制御する。
【0188】
第1の最小化モジュール378が、各サブフレームについて適応コードブック368からの適応コードブックベクトル(va)382の最良のベクトルを選択し終えるまで、このサーチプロセスを繰り返す。適応コードブック368内の適応コードブックベクトル(va)382の最良のベクトルのインデックスロケーションは、閉ループ適応コードブック成分144b、l76b(図2)の一部を形成する。このサーチプロセスを用いると、長期エラー信号388のエネルギーが有効に最小化される。適応コードブック368から最良の適応コードブックベクトル(va)382を選択することにより、最良の閉ループのピッチラグを選択する。その結果得られた長期エラー信号388は、重み付けされた音声信号350の改変物であり、適応コードブックベクトル(va)382のフィルタリングされた最良のベクトルよりも低い。
【0189】
(4.1.1.1 全レートコーデックに関する、閉ループの適応コードブックサーチ)
閉ループの適応コードブック成分144bを用いて、全レートコーデック22に関する閉ループのピッチラグを、ビットストリームとして表す。全レートコーデック22の一実施形態において、上述したように、第1のサブフレームおよび第3のサブフレームに関する閉ループのピッチラグを8ビットで表し、第2のサブフレームおよび第4のサブフレームに関する閉ループのピッチラグを5ビットで表す。一実施形態において、このラグは、17ラグ〜148ラグである。これらの8ビットおよび5ビットの数値は、同じピッチ分解能を表すことができるが、8ビットは、1つのサブフレームの閉ループのピッチラグの全範囲を示し、5ビットは、以前のサブフレームの閉ループのピッチラグの近隣にある閉ループのピッチラグの限界値も示すことができる。例示的実施形態において、閉ループのピッチラグの分解能は一様に0.2であり、ラグ17とラグ33との間である。この例示的実施形態のラグ33からラグ91において、分解能は、0.2から0.5に除々に増加し、ラグ91〜ラグ148からの分解能は、一様に1.0である。
【0190】
適応コードブックセクション362は、閉ループの整数ピッチラグについて、整数ラグサーチを行う。第1のサブフレームおよび第3のサブフレーム(すなわち、8ビットで表されるサブフレーム)について、[Lp−3、...、Lp+3]の範囲において、整数ラグサーチを行うことができる。ここで、Lpは、サブフレームのピッチラグである。サブフレームのピッチラグは、ピッチトラック348から入手される。このピッチトラック348は、適応コードブック368中のベクトルを識別する際に用いられる。整数ラグのサーチ範囲において、相互相関関数R(l)を以下のように計算することが可能である。
【0191】
【数11】
ここで、t(n)は、重み付けされた音声350の改変物であるターゲット信号であり、e(n)は、適応コードブックによる寄与(これは、適応コードブックベクトル(va)382によって表される)であり、h(n)は、第1の合成フィルタ372および知覚重み付けフィルタ374の応答の組み合わせである。例示的実施形態において、1つのサブフレーム中に40個のサンプルがあるが、これよりも多いかまたは少ない数のサンプルを用いることも可能である。
【0192】
R(l)を最大化させる閉ループの整数ピッチラグを、微細な整数ラグとして選択することが可能である。9次オーダの調和重み付けされたSincを用いて相互相関関数R(l)をアップサンプリングすることにより、適応コードブックベクトル(va)382に関する適応コードブック368からの最良のベクトルを決定することが可能である。アップサンプリングの後、適応コードブック368内のベクトルのうち、1サンプルの微細な整数ラグ内にある閉ループのピッチラグに対応するものをサーチする。各サブフレーム用の適応コードブックベクトル(va)382に関する最良のベクトルの適応コードブック368内のインデックスロケーションを、ビットストリーム中の閉ループの適応コードブック成分l44bによって示す。
【0193】
初期適応コードブックゲインを、以下のように概算することが可能である。
【0194】
【数12】
ここで、Lp optは、適応コードブックベクトル(va)382に関する最良のベクトルのラグを表し、e(n−Lp opt)は、適応コードブックベクトル(va)382に関する最良のベクトルを表す。加えて、この例示的実施形態において、概算を、0.0≦g≦1.2に限定し、nは、1つのサブフレーム中の40個のサンプルを表す。1=Lp optである場合、R(l)を用いて、正規化された適応コードブック相関が得られる。正規化された適応コードブック相関と、初期クラスの決定と、適応コードブックの寄与のシャープネスとに従って、初期適応コードブックゲインをさらに正規化することが可能である。この正規化を行った結果、ゲイン(ga)384が得られる。ゲイン(ga)384を逆量子化すると、これは、閉ループのピッチラグに関する初期適応コードブックゲインを表す。
【0195】
(4.1.1.2 半レートコード化に関する、閉ループの適応コードブックサーチ)
半レートコーデック24に関する閉ループのピッチラグを、閉ループ適応コードブック成分176b(図2)によって表す。一実施形態の半レートコーデック24について、2つのサブフレームそれぞれについての閉ループのピッチラグを、それぞれ7ビットで符号化し、これにより、各サブフレームは、17ラグ〜127ラグの範囲のラグを表す。全レートコーデック22において行われる分数サーチの場合と対照的に、整数ラグサーチを、[Lp−3、...、Lp+3]の範囲内において行うことが可能である。式15のように相互相関関数R(l)を計算することが可能であり、ここで、例示的実施形態の80個のサンプルのサブフレームサイズについて、加算を行う。R(l)を最大化させる閉ループのピッチラグを、微細な整数ラグとして選択する。各サブフレーム用の適応コードブックベクトル(va)382に関する最良のベクトルの適応コードブック368内のインデックスロケーションを、ビットストリーム中の閉ループの適応コードブック成分176bによって示す。
【0196】
適応コードブックゲインの初期値を、式16に従って計算することが可能である。ここで、例示的実施形態の80個のサンプルのサブフレームサイズに加算を行う。次いで、上述したような正規化プロシージャを適用して、その結果、ゲイン(ga)384が得られ、このゲイン(ga)384は逆量子化される。
【0197】
サーチ中、全レートコーデック22または半レートコーデック24のいずれかによって生成された長期エラー信号388が、固定コードブックセクション364によって用いられる。固定コードブックサーチを行う前に、フレームに適用することが可能な図9のVADモジュール326から、有声活動の決定を得る。フレームについてのこの有声活動の決定を、各サブフレームについてのサブフレームの有声活動の決定に細分化することが可能である。このサブフレームの有声活動の決定を用いて、固定コードブックによる寄与による知覚選択を向上させる。
【0198】
(4.1.2 固定コードブックセクション)
固定コードブックセクション364は、固定コードブック390と、第2の乗算器392と、第2の合成フィルタ394と、第2の知覚重み付けフィルタ396と、第2の減算器398と、第2の最小化モジュール400とを含む。固定コードブックセクション364による、固定コードブックに対するサーチへの寄与は、適応コードブックセクション362内のサーチと類似する。
【0199】
サブフレームの長期残差を表す固定コードブックベクトル(vc)402を、固定コードブック390から提供する。第2の乗算器392は、固定コードブックベクトル(vc)402をゲイン(gc)404で乗算する。ゲイン(gc)404を逆量子化すると、これは、固定コードブックゲインの初期値を表し、この初期値は、後述のように計算することが可能である。その結果得られた信号を、第2の合成フィルタ394に提供する。第2の合成フィルタ394は、量子化されたLPC係数sAq(z)342をLSF量子化モジュール334から受信し、第2の知覚重み付けフィルタ396と共に、第2の再合成音声信号406を生成する。第2の減算器398は、この再合成音声信号406を長期エラー信号388から減算して、固定コードブックエラー信号408であるベクトルを生成する。
【0200】
第2の最小化モジュール400は、固定コードブック390による量子化における長期残差のエラーを表す固定コードブックエラー信号408を受信する。第2の最小化モジュール400は、固定コードブックエラー信号408のエネルギーを低減させるために、固定コードブックエラー信号408のエネルギーを用いて、固定コードブック292からの固定コードブックベクトル(vc)402のベクトル選択を制御する。第2の最小化モジュール400はまた、図9の特徴付けモジュール328から制御情報356も受信する。
【0201】
制御情報356中に含まれる最終特徴付けクラスは、第2の最小化モジュール400によって固定コードブックベクトル(vc)402のベクトルが固定コードブック390から選択される様式を制御する。第2の最小化モジュール400によるサーチによって各サブフレームに関する固定コードブック390から固定コードブックベクトル(vc)402の最良のベクトルが選択されるまで、このプロセスを反復する。固定コードブックベクトル(vc)402の最良のベクトルは、長期エラー信号388について、第2の再合成音声信号406内のエラーを最小化する。これらのインデックスは、固定コードブックベクトル(vc)402の最良のベクトルを識別し、上述したように、固定コードブック成分l46aおよび178aを形成するために用いることが可能である。
【0202】
(4.1.2.1 全レートコーデックに関する固定コードブックサーチ)
上述したように、図2および図4を参照して、タイプ0分類のフレームの固定コードブック成分l46aは、3つの5パルスコードブック160を用いて、全レートコーデック22の4つのサブフレームそれぞれを表すことができる。サーチが開始すると、固定コードブック390内の固定コードブックベクトル(vc)402のベクトルを、長期エラー信号388を用いて決定することが可能である。この長期エラー信号388は、以下のように表すことができる:
【0203】
【数13】
サーチ中、ピッチ向上を、固定コードブック390内の3つの5パルスコードブック160(図4に示す)に順方向に適用することが可能である。サーチは反復性で、制御を受ける、固定コードブックベクトル(vc)402の最良のベクトルについての複雑性サーチである。固定コードブックゲインの初期値はゲイン(gc)404で表すことができ、固定コードブックベクトル(vc)402の最良のベクトルに関するサーチと同時に発見することが可能である。
【0204】
例示的実施形態において、3つの5パルスコードブック160それぞれにおいて、固定コードブックベクトル(vc)402の最良のベクトルに関するサーチが終了する。3つの5パルスコードブック160それぞれにおけるサーチプロセスが終了する際、固定コードブックベクトル(vc)402に関する最良のベクトルの候補は識別されている。最良のベクトル候補のそれぞれの対応する固定コードブックエラー信号408を用いて、3つの5パルスコードブック160の選択結果と、対応する候補最良のベクトルのうち用いられるベクトルとを、決定することが可能である。対応する固定コードブックエラー信号408それぞれに関する重み付けされた2乗平均エラー(WMSE)の決定は、第2の最小化モジュール400によって最初に行われる。これについて説明するために、3つの5パルスコードブック160それぞれからの最良のベクトル候補それぞれについての重み付けされた2乗平均エラー(WMSE5)を、第1の固定コードブックWMSE、第2の固定コードブックWMSEおよび第3の固定コードブックWMSEと呼ぶ。
【0205】
第1の固定コードブックWMSE、第2の固定コードブックWMSEおよび第3の固定コードブックWMSEは、まず重み付けされ得る。全レートコーデック22内において、サブフレームの有声活動の決定により、タイプ0として分類されたフレームについて、第1の固定コードブックWMSE、第2の固定コードブックWMSEおよび第3の固定コードブックWMSEを重み付けすることが可能である。加えて、第1の固定コードブックWMSE、第2の固定コードブックWMSEおよび第3の固定コードブックWMSEのそれぞれと、図9の特徴付けモジュール328からのNSRとのシャープネスを測定することにより、重み付けを行うことも可能である。この重み付け結果に基づいて、3つの5パルス固定コードブック160のうち1つと、当該コードブック中の最良のベクトルの候補とを選択することができる。
【0206】
その後、選択された5パルスコードブック160に細密(fine)サーチを行って、固定コードブックベクトル(vc)402について、最良のベクトルを最終決定することが可能である。この細密サーチは、選択された最良の候補ベクトルの近隣にある3つの5パルスコードブック160のうち選択されたもののベクトルについて行われる。3つの5パルスコードブック160のうち選択された1つの中の固定コードブックベクトル(vc)402の最良のベクトルを識別するインデックスは、ビットストリーム中の固定コードブック成分178aの一部である。
【0207】
(4.1.2.2 半レートコーデックに関する固定コードブックのサーチ) タイプ0の分類のフレームの場合、固定コードブック成分178aは、半レートコーデック24の2つのサブフレームそれぞれを表す。上述したように、図5を参照して、この表現は、パルスコードブック192、194と、ガウスコードブック195とに基づいて行うことが可能である。全レートコーデック22の場合と同様に、ゲイン(gc)404によって表される固定コードブックゲインの初期ターゲットを決定することが可能である。加えて、全レートコーデック22の場合と同様に、固定コードブック390内の固定コードブックベクトル(vc)402に関するサーチを重み付けすることが可能である。半レートコーデック24において、パルスコードブック192および194それぞれと、ガウスコードブック195とからの最良の候補ベクトルに重み付けを適用することが可能である。重み付けを適用して、知覚の観点から見て最も適切な固定コードブックベクトル(vc)402を決定する。加えて、半レートコーデック24中の重み付けされた2乗平均エラー(WMSE)の重み付けをさらに向上させて、知覚の観点から強調を行うことも可能である。重み付けにさらなるパラメータを設けることにより、さらなる向上を達成することが可能である。これらのさらなる要素は、閉ループのピッチラグおよび正規化された適応コードブック相関となり得る。
【0208】
重み付けの向上に加えて、最良の候補ベクトルについてコードブック192、194、195をサーチする前に、いくつかの特性を、パルスコードブック192、194中のエントリに組み込むことが可能である.これらの特性を用いると、知覚品質をさらに向上させることができる。一実施形態において、3つの向上を用いて第2の合成フィルタ394のフィルタ応答を改変することにより、サーチの間の知覚品質の向上を達成することが可能である。第1の向上は、高周波ノイズを固定コードブックに注入して高周波帯域を改変することにより、達成され得る。高周波ノイズの注入は、高周波ノイズのインパルス応答を第2の合成フィルタ394のインパルス応答に巻き込むことにより、第2の合成フィルタ394の応答に組み込むことが可能である。
【0209】
第2の向上を用いて、以前に量子化されたサブフレーム間の高い相関によって決定することが可能なロケーションに、さらなるパルスを組み込むことができる。これらのさらなるパルスの振幅を相関強度に従って調節することにより、符号化システム12からさらなる情報を入手しなくても復号化システム16が同じ動作を行うことが可能になる。これらのさらなるパルスからの寄与を、第2の合成フィルタ394のインパルス応答に組み込むことも可能である。第3の向上では、微弱な短期間のスペクトルフィルタを用いて固定コードブック390をフィルタリングして、帯域幅の拡大およびLSFの量子化によって生じたホルマントのシャープネスの低減を補償する。
【0210】
固定コードブックベクトル(vc)402の最良のベクトルに関するサーチは、上述したように、固定コードブックエラー信号408のエネルギーの最小化に基づく。サーチはまず最初に2パルスコードブック192に行われ得る。次いで、3パルスコードブック194を2つの工程においてサーチする。第1の工程では、第2の工程(この工程は、フォーカスサーチと呼ばれ得る)の中心を決定することが可能である。逆方向および順方向に重み付けされたピッチ向上を、パルスコードブック192および194の両方におけるサーチについて適用することが可能である。最後に、上述したような符号化の際の2つの直交する基礎ベクトルを決定するために用いられる高速サーチルーチンを用いて、ガウスコードブック195がサーチされ得る。
【0211】
コードブック192、194および195の1つと、固定コードブックベクトル(vc)402の最良のベクトルとの選択を、全レートコーデック22の場合と同様に行うことができる。選択されたコードブック内の固定コードブックベクトル(vc)402の最良のベクトルを識別するインデックスは、ビットストリーム中の固定コードブック成分178aの一部である。
【0212】
この時点において、適応コードブックベクトル(va)382および固定コードブックベクトル(vc)402の最良のベクトルは、適応コードブック368および固定コードブック390内においてそれぞれ発見されている。ここで、ゲイン(ga)384およびゲイン(gc)404の逆量子化初期値を、最良のゲイン値と取り代えることが可能になる。最良のゲイン値は、適応コードブックベクトル(va)382と、以前に決定された固定コードブックベクトル(vc)402との最良のベクトルに基づいて決定され得る。最良のゲインを決定した後、これらの最良のゲインを共量子化する。ゲインの決定および量子化は、ゲイン量子化セクション366において発生する。
【0213】
(4.1.3 ゲイン量子化セクション)
一実施形態のゲイン量子化セクション366は、2D VQゲインコードブック412と、第3の乗算器414と、第4の乗算器416と、加算器418と、第3の合成フィルタ420と、第3の知覚重み付けフィルタ422と、第3の減算器424と、第3の最小化モジュール426と、エネルギー改変セクション428とを含む。一実施形態のエネルギー改変セクション428は、エネルギー解析モジュール430と、エネルギー調節モジュール432とを含む。固定コードブックゲインおよび適応コードブックゲインの決定および量子化は、ゲイン量子化セクション366内において行われ得る。加えて、重み付けされた音声350の改変物に対するさらなる改変が、後述するようにエネルギー改変セクション428において発生し、これにより、量子化の際に用いることが可能なターゲット信号434の改変物が形成される。
【0214】
決定および量子化では、適応コードブックゲインおよび固定コードブックゲインの共量子化を表す、量子化されたゲインベクトル(\gac)433を決定するためのサーチが行われる。適応コードブックゲインおよび固定コードブックゲインは、サーチの際、以下の式に従って重み付けされた2乗平均エラーを最小化することにより得ることができる。
【0215】
【数14】
ここで、上述したように、va(n)は、適応コードブックベクトル(va)382の最良のベクトルであり、vc(n)は、固定コードブックベクトル(vc)402の最良のベクトルである。この例示的実施形態において、加算は、80個のサンプルを含むフレーム(例えば、半レートコーデック24の一実施形態におけるフレーム)に基づく。最小化は、正規化された適応コードブックの相関の閾値に応じて、共に(gaおよびgcを同時に入手するか)または逐次的に(gaを入手した後にgcを入手)することにより、得ることができる。次いで、これらのゲインを部分的に改変して、音背景が有る場合の再構築された音声の変動を平滑にすることができる。改変が為されたゲインをdg’aおよびg’cと呼ぶ。この改変が為されたゲインを用いて、以下の式を用いてターゲット信号434の改変物を生成することができる。
【0216】
【数15】
量子化されたゲインベクトル(\gac)433の最良のベクトルに関するサーチを、2D VQのゲインコードブック412内において行う。2D VQゲインコードブック412は、テーブル4として示した上述した2Dゲイン量子化テーブルであり得る。2D VQのゲインコードブック412をサーチして、量子化されたゲインベクトル(\gac)433のベクトルのうち、2乗平均エラーを最小化するものを探す。すなわち、以下の式を最小化する。
【0217】
【数16】
ここで、量子化された固定コードブックゲイン(\ga)435および量子化された適応コードブックゲイン(\gc)436を、2D VQゲインコードブック412から導出することが可能である。例示的実施形態において、加算は、80個のサンプルを含むフレーム(例えば、半レートコーデック24の一実施形態におけるフレーム)に基づく。2D VQゲインコードブック412中の量子化されたベクトルは実際、上述したような固定コードブックゲインの適応コードブックゲインおよび訂正要素を表す。
【0218】
ターゲット信号434の改変物を決定した後、量子化されたゲインベクトル(\gac)433を乗算器414、416に送る。第3の乗算器414は、適応コードブック368からの適応コードブックベクトル(va)382の最良のベクトルを、量子化された適応コードブックゲイン(\ga)435と乗算する。第3の乗算器414からの出力は、加算器418に提供される。同様に、第4の乗算器416は、量子化された固定コードブックゲイン(\gc)436を、固定コードブック390からの固定コードブックベクトル(vc)402の最良のベクトルで乗算する。第4の乗算器416からの出力も、加算器418に提供される。加算器418は、乗算器414、416からの出力を加算し、その結果得られた信号を第3の合成フィルタ420に提供する。
【0219】
第3の合成フィルタ420および知覚重み付けフィルタ422の組み合わせは、第3の再合成音声信号438を生成する。第1の合成フィルタ372および第2の合成フィルタ394の場合と同様に、第3の合成フィルタ420は、量子化されたLPC係数Aq(z)342を受信する。第3の減算器424は、第3の再合成音声信号438をターゲット信号434の改変物から減算して、第3のエラー信号442を生成する。第3の最小化モジュール426は、2D VQゲインコードブック412による固定コードブックゲインおよび適応コードブックゲインの共量子化から得られたエラーを表す第3のエラー信号442を受信する。第3の最小化モジュール426は、第3のエラー信号442のエネルギーを低減するために、第3のエラー信号442のエネルギーを用いて、2D VQゲインコードブック412からのベクトルのサーチおよび選択を制御する。
【0220】
第3のエラー信号442のエネルギーを最小化させる各サブフレームの2D VQゲインコードブック412からの最良のベクトルを第3の最小化モジュール426が選択し終えるまで、このプロセスを繰り返す。第3のエラー信号442のエネルギーが各サブフレームについて最小化された後、共量子化されたゲイン(\ga)435および(\gc)436のインデックスロケーションを用いて、当該フレームのゲイン成分147、179を生成する。全レートコーデック22の場合、ゲイン成分147は、固定されかつ適応するゲイン成分148a、150aであり、半レートコーデック24の場合、ゲイン成分179は、適応しかつ固定されたゲイン成分180aおよび182aである。
【0221】
合成フィルタ372、394および420と、知覚重み付けフィルタ374、396および422と、最小化モジュールs378、400および426と、乗算器370、392、414および416と、加算器418と、減算器376、398および424と(ならびに本願に記載の他の任意のフィルタ、最小化モジュール、乗算器、加算器、および減算器と)を、当業者に公知の特定の用途に適した様式で、他の任意のデバイスまたは改変物と取り換えることが可能である。
【0222】
(4.2 全レートコーデックおよび半レートコーデックのタイプ1フレームのための励起処理モジュール)
図11において、F1第1のフレーム処理モジュール72およびH1第1のフレーム処理モジュール82は、3D/4D開ループVQモジュール454を含む。一実施形態のF1第2のサブフレーム処理モジュール74およびH1第2のサブフレーム処理モジュール84は適応コードブック368と、固定コードブック390と、第1の乗算器456と、第2の乗算器458と、第1の合成フィルタ460と、第2の合成フィルタ462とを含む。加えて、F1第2のサブフレーム処理モジュール74およびH1第2のサブフレーム処理モジュール84は、第1の知覚重み付けフィルタ464と、第2の知覚重み付けフィルタ466と、第1の減算器468と、第2の減算器470と、第1の最小化モジュール472と、エネルギー調節モジュール474とを含む。これらのF1第2のフレーム処理モジュール76およびH1第2のフレーム処理モジュール86は、第3の乗算器476と、第4の乗算器478と、加算器480と、第3の合成フィルタ482と、第3の知覚重み付けフィルタ484と、第3の減算器486と、バッファリングモジュール488と、第2の最小化モジュール490と、3D/4D VQゲインコードブック492とを含む。
【0223】
励起処理モジュール54においてタイプ1として分類されたフレームの処理において、上述したようなフレーム基礎およびサブフレーム基礎両方に対する処理を行う。簡潔にするために、以下の記載において、全レートコーデック22内のモジュールについて言及する。他に明記無き限り、半レートコーデック24内のモジュールは、同様のものであるとみなすことができる。F1第1のフレーム処理モジュール72による適応コードブックゲインの量子化によって、適応ゲイン成分148bが生成される。F1の第2のサブフレーム処理モジュール74およびF1の第2のフレーム処理モジュール76は、それぞれ上述したような固定コードブックベクトルおよび対応する固定コードブックゲインを決定するように動作する。F1第2のサブフレーム処理モジュール74は、上述したようなトラックテーブルを用いて、図2に示すような固定コードブック成分146bを生成する。
【0224】
F1第2のフレーム処理モジュール76は、固定コードブックゲインを量子化して、固定ゲイン成分150bを生成する。一実施形態において、全レートコーデック22は、4つの固定コードブックゲインの量子化において10ビットを用い、半レートコーデック24は、3つの固定コードブックゲインの量子化において8ビットを用いる。量子化は、平均予測を移動させることにより行うことができる。一般的には、予測および量子化が行われる前に、予測状態を適切な寸法に変換する。
【0225】
(4.2.1 第1のフレーム処理モジュール)
3D/4D開ループVQモジュール454の一実施形態は、上述した、全レートコーデック22のための4次元プレベクトル量子化器(4D pre VQ)166および関連するゲイン前量子化テーブルであり得る。3D/4D開ループVQモジュール454の別の実施形態は、上述した、3次元プレベクトル量子化器(3D pre VQ)198と、半レートコーデック24に関する関連するゲイン前量子化テーブルとであり得る。3D/4D開ループVQモジュール454は、逆量子化ピッチゲイン352をピッチ前処理モジュール322から受信する。逆量子化ピッチゲイン352は、上述したような開ループピッチラグの適応コードブックゲインを表す。
【0226】
3D/4D開ループVQモジュール454は、逆量子化ピッチゲイン352を量子化して、各サブフレームの最良の量子化されたピッチゲインを表す量子化されたピッチゲイン(\kga)496を生成する(kはサブフレーム数である)。一実施形態において、全レートコーデック22について4つのサブフレームがあり、半レートコーデック24について3つのサブフレームがある。これらのサブフレームはそれぞれ、各サブフレームの4つの量子化されたゲイン(\1ga、\2ga、\3ga、\4ga)および3つの量子化されたゲイン(\1ga、\2ga、\3ga)に対応する。ゲイン前量子化テーブル内の量子化されたピッチゲイン(\kga)496のインデックスロケーションは、全レートコーデック22の適応ゲイン成分148bまたは半レートコーデック24の適応ゲイン成分180bを表す。量子化されたピッチゲイン(\kga)496は、F1第2のサブフレーム処理モジュール74またはH1第2のサブフレーム処理モジュール84に提供される。
【0227】
(4.2.2 第2のサブフレーム処理モジュール)
F1第2のサブフレーム処理モジュール74またはH1第2のサブフレーム処理モジュール84は、ピッチ処理前モジュール322によって提供されるピッチトラック348を用いて、適応コードブックベクトル(vk a)498を識別する。適応コードブックベクトル(vk a)498は、各サブフレームについての適応コードブックの寄与を表す(kは、サブフレームの数に等しい)。一実施形態において、全レートコーデック22について4つのサブフレームがあり、半レートコーデック24について3つのサブフレームがある。これらのサブフレームはそれぞれ、各サブフレームの適応コードブックの寄与のための4つのベクトル(v1 a、v2 a、v3 a、v4 a)および3つのベクトル(v1 a、v2 a、v3 a)に対応する。
【0228】
適応コードブックベクトル(vk a)498について選択されたベクトルを、適応コードブック368およびピッチトラック348内に配置された過去ベクトルから導出することが可能である。ここで、ピッチトラック348を補間して、Lp(n)で表すことができる。従って、サーチを行う必要は無い。適応コードブックベクトル(vk a)498は、適応コードブック中の過去適応コードブックベクトル(vk a)498を第21次のオーダの調和重み付けされたSincウィンドウによって補間することにより得ることができる。これを式として表すと、以下のようになる。
【0229】
【数17】
ここで、e(n)は過去の励起であり、i(Lp(n))およびf(Lp(n))はそれぞれ、ピッチラグの整数部分および分数部分であり、ws(f、i)は、調和重み付けされたSincウィンドウである。
【0230】
適応コードブックベクトル(vk a)498および量子化されたピッチゲイン(\kga)496を、第1の乗算器456によって乗算する。第1の乗算器456は、第1の合成フィルタ460および第1の知覚重み付けフィルタモジュール464によって処理される信号を生成して、第1の再合成音声信号500を提供する。第1の合成フィルタ460は、処理の一部として、量子化されたLPC係数Aq(z)342をLSF量子化モジュール334から受信する。第1の減算器468は、ピッチ前処理モジュール322によって提供される重み付けされた音声350の改変物から第1の再合成音声信号500を減算して、長期エラー信号502を生成する。
【0231】
F1第2のサブフレーム処理モジュール74またはH1第2のサブフレーム処理モジュール84はまた、上述したF0第1のサブフレーム処理モジュール70またはH0第1のサブフレーム処理モジュール80によって行われる固定コードブックの寄与に類似する固定コードブックの寄与のサーチも行う。サーチ中、サブフレームに関する長期残差を表す固定コードブックベクトル(vk c)504のベクトルを、固定コードブック390から選択する。第2の乗算器458は、固定コードブックベクトル(vk c)504をゲイン(gk c)506で乗算する(kは、サブフレームの数である)。ゲイン(gk c)506を逆量子化すると、これは、各サブフレームの固定コードブックゲインを表す。その結果得られた信号を第2の合成フィルタ462および第2の知覚重み付けフィルタ466を用いて処理し、第2の再合成音声信号508を生成する。第2の減算器470を用いて、この第2の再合成音声信号508を長期エラー信号502から減算し、固定コードブックエラー信号510を生成する。
【0232】
固定コードブックエラー信号510は、制御情報356と共に第1の最小化モジュール472によって受信される。第1の最小化モジュール472は、図10に示す上述した第2の最小化モジュール400と同様に動作する。各サブフレームの固定コードブック390から固定コードブックベクトル(vk c)504に関する最良のベクトルを第1の最小化モジュール472が選択し終えるまで、サーチプロセスを繰り返す。固定コードブックベクトル(vk c)504の最良のベクトルは、固定コードブックエラー信号510のエネルギーを最小化する。これらのインデックスは、上述したような固定コードブックベクトル(vk c)504の最良のベクトルを識別し、固定コードブック成分146および固定コードブック成分178bを形成する。
【0233】
(4.2.2.1 全レートコーデックに関する固定コードブックサーチ)
一実施形態において、タイプIのフレームの4つのサブフレームそれぞれについて、図4に示す8パルスコードブック162が、上述したような全レートコーデック22によって用いられる。固定コードブックベクトル(vk c)504のターゲットは、上述したような長期エラー信号502である。この長期エラー信号502は、t'(n)によって表され、重み付けされた音声350の改変物(t(n)で示す)に基づき決定される。初期フレーム処理モジュール44からの適応コードブックの寄与を、以下の式にしたがって除去する。
【0234】
【数18】
固定コードブックベクトル(vk c)504の最良のベクトルのサーチの間、ピッチ向上を順方向に適用することが可能である。加えて、サーチプロシージャは、複雑性の制御を伴う反復性サーチプロシージャを用いて固定コードブック残差508を最小化して、固定コードブックベクトル(vk c)504の最良のベクトルを決定する。サーチ中、ゲイン(gk c)506によって表される初期固定コードブックゲインを決定する。これらのインデックスは、固定コードブックベクトル(vk c)504の最良のベクトルを識別し、上述したような固定コードブック成分146bを形成する。
【0235】
(4.2.2.2 半レートコーデックに関する固定コードブックサーチ)
一実施形態において、上述したように、半レートコーデック24の場合にタイプ1として分類されたフレームの3つのサブフレームそれぞれについて、長期残差を13ビットで表す。この長期残差は、全レートコーデック22における固定コードブックサーチに類似する様式でも決定することが可能である。タイプ0のフレームの半レートコーデック24に関する固定コードブックサーチの場合と同様に、高周波ノイズ注入と、以前のサブフレームにおける高相関によって決定されるさらなるパルスと、微弱な短期間のスペクトルフィルタとを、第2の合成フィルタ462のインパルス応答に導入することが可能である。加えて、順方ピッチ向上も、第2の合成フィルタ462のインパルス応答に導入可能である。
【0236】
一実施形態において、図5に示す2パルスのコードブック196と、3パルスのコードブック197についてフルサーチを行う。パルスコードブック196、197と、固定コードブックエラー信号510を最小化させる固定コードブックベクトル(vk c)504の最良のベクトルを、各サブフレームの長期残差の表現について選択する。加えて、全レートのコーデック22の場合と同様のサーチの間、ゲイン(gk c)506によって表される初期固定コードブックゲインを決定することが可能である。これらのインデックスは、固定コードブックベクトル(vk c)504の最良のベクトルを識別し、固定コードブック成分178bを形成する。
【0237】
上述したように、F1第2のサブフレーム処理モジュール74またはH1第2のサブフレーム処理モジュール84は、サブフレーム基礎上で動作する。しかし、F1第2のフレーム処理モジュール76またはH1第2のフレーム処理モジュール86は、フレーム基礎上で動作する。従って、F1第2のサブフレーム処理モジュール74またはH1第2のサブフレーム処理モジュール84によって決定されるパラメータは、フレーム後で基礎上で用いることができるように、バッファリングモジュール488中に格納され得る。一実施形態において、これらの格納されたパラメータは、適応コードブックベクトル(vk a)498の最良のベクトルであり、固定コードブックベクトル(vk c)504の最良のベクトルである。加えて、ターゲット信号512の改変物と、初期適応を表すゲイン(\kga)496およびゲイン(gk c)506と、固定コードブックゲインとを、格納することが可能である。ターゲット信号512の改変物の生成については後述する。
【0238】
この時点において、適応コードブックベクトル(vk a)498の最良のベクトルと、固定コードブックベクトル(vk c)504の最良のベクトルと、量子化されたピッチゲイン(\kga)496の最良のピッチゲインとが識別されている。これらの最良のベクトルおよび最良のピッチゲインを用いて、ゲイン(gk c)506の最良の固定コードブックゲインを決定する。ゲイン(gk c)506の最良の固定コードブックゲインを、ゲイン(gk c)506について以前に決定された逆量子化初期固定コードブックゲインと取り換える。最良の固定コードブックゲインを決定するために、第2のフレーム処理モジュール76および第2のフレーム処理モジュール86を用いて、各サブフレームの固定コードブックゲインの共ラグ量子化を行う。
【0239】
(4.2.3 第2のフレーム処理モジュール)
第2のフレーム処理モジュール76および第2のフレーム処理モジュール86は、固定ゲイン成分150および182bによって表される固定コードブックゲインを生成するように、フレーム基礎上で動作することができる。先ず、ゲイン決定およびタイプ0として分類されたフレームの量子化と同様の様式で、ターゲット512の改変物を決定する。各サブフレームについてターゲット512の改変物を決定し、t”(n)によって表す。ターゲットの改変物は、適応コードブックベクトル(vk a)498および固定コードブックベクトル(vk c)504と、以下の式18によって得られる、適応コードブックゲインおよび固定コードブックゲイン初期値とについての最良のベクトルを用いて導出することが可能である。
t”(n)=gava(n)*h(n)+gcvc(n)*h(n) (式23)
以下の最小化によって、サーチにおいて用いられる各サブフレームの固定コードブックゲインの初期値を得ることができる。
【0240】
【数19】
ここで、va(n)は、特定のサブフレームの適応コードブックの寄与であり、vc(n)は、特定のサブフレームの固定コードブックの寄与である。加えて、\gaは、量子化された固定コードブックゲイン(\gk c)513のエレメントの1つである特定のサブフレームの、量子化および正規化が為された適応コードブックゲインである。計算された固定コードブックゲインgcにさらに正規化および訂正を行って、第3の再合成音声信号と、バッファリングされたターゲット信号512の改変物との間の最良のエネルギー整合を提供する。以前のサブフレームからの逆量子化固定コードブックゲインを用いて、式21に従って次のサブフレームを処理するための適応コードブックベクトル(vk a)498を生成することが可能である。
【0241】
3D/4D VQゲインコードブック492内において、量子化された固定コードブックゲイン(\gk c)513のベクトルに関するサーチを行う。3D/4D VQゲインコードブック492は、上述した多次元ゲイン量子化器および関連するゲイン量子化テーブルであり得る。一実施形態において、3D/4D VQゲインコードブック492は、上述した全レートコーデック22のための4DラグVQゲイン量子化器168であり得る。上述したように、4DラグVQゲイン量子化器168は、テーブル5として示される関連する遅延ゲイン量子化テーブルを用いて、動作することが可能である。別の実施形態において、3D/4D VQゲインコードブック492は、上述した半レートコーデック24のための3DラグVQゲイン量子化器200であり得る。3DラグVQゲイン量子化器200は、上述したテーブル8として示される遅延ゲイン量子化テーブルを用いて動作することが可能である。
【0242】
3D/4D VQゲインコードブック492を、上述した図10の2D VQゲインコードブック412に類似するエネルギーを最小化する、量子化された固定コードブックゲイン(\gk c)513のベクトルについて、サーチすることができる。3D/4D VQゲインコードブック492中の量子化されたベクトルは実際、上述したような予測される固定コードブックゲインの訂正要素を表す。サーチ中、第3の乗算器476は、適応コードブックベクトル(vk a)498を、量子化されたピッチゲイン(\kga)496で乗算し、その後、ターゲット512の改変物の決定が行われる。加えて、第4の乗算器478は、固定コードブックベクトル(vk c)504を、量子化された固定コードブックゲイン(\gk c)513で乗算する。加算器480は、乗算器476および478から得られた信号を加算する。
【0243】
加算器480から得られた信号を、第3の合成フィルタ482および知覚重み付けフィルタモジュール484中を通過させて、第3の再合成音声信号514を生成する。第1の第2の合成フィルタ460および第2の合成フィルタ462の場合と同様に、第3の合成フィルタ482は、LSF量子化モジュール334から、量子化されたLPC係数sAq(z)342を処理の一部として受信する。第3の減算器486は、バッファリングモジュール488中に以前に格納されたターゲット信号512の改変物から、第3の再合成音声信号514を減算する。その結果得られた信号は、重み付けされた2乗平均エラーであり、これを第3のエラー信号516と呼ぶ。
【0244】
第3の最小化モジュール490は、3D/4D VQゲインコードブック492による固定コードブックゲインの量子化から生じたエラーを表す第3のエラー信号516を受信する。第3の最小化モジュール490は、第3のエラー信号516のエネルギーを低減するために、この第3のエラー信号516を用いて、3D/4D VQゲインコードブック492からのベクトルのサーチおよび選択を制御する。第3のエラー信号516中のエラーを最小化する各サブフレームについての3D/4D VQゲインコードブック492から最良のベクトルを第3の最小化モジュール490が選択し終えるまで、サーチプロセスを繰り返す。第3のエラー信号516のエネルギーが最小化された後、3D/4D VQゲインコードブック492中の量子化された固定コードブックゲイン(\gk c)513のインデックスロケーションを用いて、全レートコーデック22に関する固定コードブックゲイン成分150bと、半レートコーデック24に関する固定コードブックゲイン成分182bとを生成する。
【0245】
(4.2.3.1 3D/4D VQゲインコードブック)
一実施形態において、3D/4D VQゲインコードブック492が4次元コードブックである場合、以下を最小化するために、3D/4D VQゲインコードブック492をサーチすることができる。
【0246】
【数20】
ここで、上述したように、サブフレーム処理中、初期フレーム処理モジュール44と、{t1(n)、t2(n)、t3(n)、t4(n)}、{v1 a(n)、v2 a (n)、v3 a (n)、v4 a (n)}および{v1 c(n)、v2 c (n)、v3 c (n)、v4 c (n)}とから発生する、量子化されたピッチゲイン{g1 a(n)、g2 a (n)、g3 a (n)、g4 a (n)}をバッファリングすることが可能である。例示的実施形態において、コードブックのエントリが、上述したような予測される固定コードブックゲインの4次元訂正要素を含む場合、固定コードブックゲイン{g1 c(n)、g2 c (n)、g3 c (n)、g4 c (n)}を、10ビットのコードブックから導出する。加えて、フレームあたりに40個のサンプルを表す場合、n=40である。
【0247】
別の実施形態において、3D/4D VQゲインコードブック492が3次元コードブックである場合、以下を最小化するために、3D/4D VQゲインコードブック492をサーチすることができる。
【0248】
【数21】
ここで、上述したように、サブフレーム処理の間、初期フレーム処理モジュール44と、{t1(n)、t2(n)、t3(n) }、{v1 a(n)、v2 a (n)、v3 a (n) }および{v1 c(n)、v2 c (n)、v3 c (n))}とから発生する量子化されたピッチゲイン{g1 a(n)、g2 a (n)、g3 a (n)}をバッファリングすることができる。例示的実施形態において、コードブックのエントリが予測される固定コードブックゲインについて3次元訂正要素を含む場合、8ビットのコードブックから、固定コードブックゲイン{g1 c(n)、g2 c (n)、g3 c (n)}を導出する。固定コードブックゲインの予測は、ログドメイン中の固定コードブックエネルギーの平均予測の移動に基づき得る。
【0249】
(5.0 復号化システム)
ここで図12を参照して、図3の全レート復号器90および半レート復号器92を示す拡大ブロック図が図示されている。全レート復号器90または半レート復号器92は、励起再構築モジュール104、106、114および116と、線形予測係数(LPC)再構築モジュール107および118とを含む。励起再構築モジュール104、106、114および116のそれぞれの一実施形態は、適応コードブック368と、固定コードブック390と、2D VQゲインコードブック412と、3D/4D開ループVQコードブック454と、3D/4D VQゲインコードブック492とを含む。励起再構築モジュール104、106、114および116はまた、第1の乗算器530と、第2の乗算器532と、加算器534とも含む。一実施形態において、LPC再構築モジュールs107、118は、LSF復号化モジュール536およびLSF変換モジュール538を含む。加えて、半レートコーデック24は予測子スイッチモジュール336を含み、全レートコーデック22は補間モジュール338を含む。
【0250】
図12中には、合成フィルタモジュール98および処理後モジュール100も図示されている。一実施形態において、処理後モジュール100は、短期間のフィルタ後モジュール540と、長期フィルタモジュール542と、チルト補償フィルタモジュール544と、適応ゲイン制御モジュール546とを含む。レート選択に応じてビットストリームを復号して、処理後の合成音声20を生成することが可能である。復号器90および92は、アルゴリズムパラメータに対し、ビットストリームの成分の逆マッピングを行う。この逆マッピングの後、全レートコーデック22および半レートコーデック24内の合成に応じて、タイプ分類を行う。
【0251】
4分の1レートコーデック26および8分の1レートコーデック28の復号化は、全レートコーデック22および半レートコーデック24に類似する。しかし、4分の1レートコーデック26および8分の1レートコーデック28は、上述したように、ゲインに関連する適応コードブック368および固定コードブック390の代わりに、類似するが乱数およびエネルギーゲインのベクトルを用いる。これらの乱数およびエネルギーゲインを用いて、フレームの短期間の励起を表す励起エネルギーを再構築することが可能である。LPC再構築モジュール122および126も、予測子スイッチモジュール336および補間モジュール338以外は、全レートコーデック22および半レートコーデック24と同様である。
【0252】
(5.1 励起の再構築)
全レート復号器90および半レート復号器92内において、励起再構築モジュール104、106、114および116の動作は、タイプ成分142および174によって提供されるタイプ分類に大きく依存する。適応コードブック368は、ピッチトラック348を受信する。ピッチトラック348は、符号化システム12によってビットストリーム中に提供される適応コードブック成分144および176からの復号化システム16によって再構築される。タイプ成分142および174によって提供されるタイプ分類に応じて、適応コードブック368は、量子化された適応コードブックベクトル(vk a)550を乗算器530に提供する。乗算器530は、量子化された適応コードブックベクトル(vk a)550を、適応コードブックゲインベクトル(gk a)552で乗算する。適応コードブックゲインベクトル(gk a)552の選択も、タイプ成分142および174によってて提供されるタイプ分類に依存する。
【0253】
例示的実施形態において、フレームが、全レートコーデック22中のタイプ0として分類された場合、2D VQゲインコードブック412は、適応コードブックゲインベクトル(gk a)552を乗算器530に提供する。適応コードブックゲインベクトル(gk a)552を、適応コードブックゲイン成分148aおよび固定コードブックゲイン成分150aから決定する。適応コードブックゲインベクトル(gk a)552は、(上述したようなF0第1のサブフレーム処理モジュール70のゲインおよび量子化セクション366によって決定された)量子化されたゲインベクトル(\gac)433の最良のベクトルの一部と同じである。量子化された適応コードブックベクトル(vk a)550を、閉ループの適応コードブック成分144bから決定する。同様に、量子化された適応コードブックベクトル(vk a)550は、F0第1のサブフレーム処理モジュール70によって決定された適応コードブックベクトル(va)382の最良のベクトルと同じである。
【0254】
2D VQゲインコードブック412は2次元であり、適応コードブックゲインベクトル(gk a)552を乗算器530に提供し、固定コードブックゲインベクトル(gk c)554を乗算器532に提供する。同様に、適応コードブックゲイン成分148aおよび固定コードブックゲイン成分150aから決定される固定コードブックゲインベクトル(gk c)554は、量子化されたゲインベクトル(\gac)433の最良のベクトルの一部である。ここでもタイプ分類に基づいて、固定コードブック390は、量子化された固定コードブックベクトル(vk a)556を乗算器532に提供する。コードブック識別情報と、パルスロケーション(または半レートコーデック24のガウスコードブック195)と、固定コードブック成分146aによって提供されるパルスサインとから、量子化された固定コードブックベクトル(vk a)556を再構築する。量子化された固定コードブックベクトル(vk a)556は、上述したようなF0第1のサブフレーム処理モジュール70によって決定された固定コードブックベクトル(vc)402の最良のベクトルと同じである。乗算器532は、量子化された固定コードブックベクトル(vk a)556を、固定コードブックゲインベクトル(gk c)554で乗算する。
【0255】
フレームのタイプ分類がタイプ1である場合、多次元ベクトル量子化器は、適応コードブックゲインベクトル(gk a)552を乗算器530に提供する。ここで、多次元ベクトル量子化器中の次元数は、サブフレーム数に依存する。一実施形態において、多次元ベクトル量子化器は、3D/4D開ループVQ454であり得る。同様に、多次元ベクトル量子化器は、固定コードブックゲインベクトル(gk c)554を乗算器532に提供する。適応コードブックゲインベクトル(gk a)552および固定コードブックゲインベクトル(gk c)554は、ゲイン成分147および179によって提供され、量子化されたピッチゲイン(\kga)496および量子化された固定コードブックゲイン(\gk c)513とそれぞれ同じである。
【0256】
フレームがタイプ0またはタイプ1として分類された場合、第1の乗算器530からの出力は、加算器534によって受信され、第2の乗算器532からの出力に加算される。加算器534からの出力は、短期間の励起である。短期間の励起を、短期間の励起ライン128上の合成フィルタモジュール98に提供する。
【0257】
(5.2 LPC再構築)
復号器90および92中の短期間の(LPC)予測係数の生成は、符号化システム12における処理に類似する。LSF復号化モジュール536は、LSF成分140および172から、量子化されたLSFを再構築する。LSF復号化モジュール536は、符号化システム12によって用いられる、同じLSF予測エラー量子化テーブルおよびLSF予測子係数テーブルを用いる。半レートコーデック24の場合、予測子スイッチモジュール336は、一連の予測子係数から1つを選択して、LSF成分140、172によって指定されるような、予測されるLSFを計算する。量子化されたLSFの補間は、符号化システム12において用いられる同じ線形補間経路を用いて行われる。タイプ0として分類されたフレーム用の全レートコーデック22の場合、補間モジュール338は、LSF成分140および172によって指定されるような、符号化システム12において用いられる同じ補間経路のうちの1つを選択する。量子化されたLSFに重み付けを行った後、LSF変換モジュール538内の量子化されたLPC係数Aq(z)342に対して変換を行う。量子化されたLPC係数sAq(z)342は短期間の予測係数であり、短期間の予測係数ライン130上の合成フィルタ98に供給される。
【0258】
(5.3 合成フィルタ)
合成フィルタ98は、量子化されたLPC係数sAq(z)342を用いて、短期間の予測係数をフィルタリングすることができる。合成フィルタ98は、処理が終了する前に合成音声を生成する、短期間の逆予測フィルタであり得る。その後、合成音声を、処理後モジュール100を通過させることができる。短期間の予測係数を処理後モジュール100に提供することも可能である。
【0259】
(5.4 処理後)
処理後モジュール100は、レート選択および短期間の予測係数に基づいて、合成音声を処理する。先ず、短期間のフィルタ後モジュール540が、合成音声を処理し得る。短期間のフィルタ後モジュール540内におけるパラメータのフィルタリングは、図9を参照して上述したように、特徴付けモジュール328によって決定されたレート選択および長期スペクトル特性に従って適合させることが可能である。短期間のフィルタ後工程を、以下のように表すことができる。
【0260】
【数22】
例示的実施形態において、γ1 、 n=0.75・γ1 、 n-1+0.25・γ0およびγ2=0.75であり、γ0は、レート選択および長期スペクトル特性に基づいて決定される。長期フィルタモジュール542において、処理を継続する。
【0261】
長期フィルタモジュール542は、合成音声中のピッチ期間について、細密チューニングサーチを行う。一実施形態において、ピッチ相関と、レートから独立したゲイン制御による調和フィルタリングとを用いて、細密チューニングサーチを行う。4分の1レートコーデック26および8分の1レートコーデック28について、この調和フィルタリングをディセーブルする。一実施形態において、チルト補償フィルタモジュール544は、第1のオーダの有限インパルス応答(FIR)フィルタである。図9を参照して上述した知覚重み付けフィルタモジュール314のスペクトルチルトに従って、FIRフィルタをチューニングすることが可能である。このフィルタは、やはり図9を参照して上述した特徴付けモジュール328によって決定された長期スペクトル特性に従ってチューニングすることも可能である。
【0262】
フィルタ後工程は、適応ゲイン制御モジュール546を用いて終了され得る。適応ゲイン制御モジュール546は、処理後モジュール100内において処理された合成音声のエネルギーレベルを、処理が終了する前の合成音声のレベルにまで移動させる。レベルの平滑化および適合化も、適応ゲイン制御モジュール546内において行うことが可能である。処理後モジュール100による処理の結果、処理後の合成音声20が得られる。
【0263】
復号化システム16の一実施形態において、復号化システム16によって受信されたフレームのうち、(例えば、無線伝送の間に発生する信号損失などにより)消失したフレームを、復号化システム16によって識別する。その後、復号化システム16は、フレーム消失を隠蔽する動作を行うことができるようになる。この動作では、消失したフレームについて、以前のフレームから音声パラメータを補間する工程が行われる。補外音声パラメータを用いて、消失したフレームを合成することが可能である。加えて、パラメータ平滑化を行って、消失フレームの後続フレームの音声部分の連続性を補償することも可能である。別の実施形態において、復号化システム16は、不良レートを決定する能力も含む。復号化システム16によって受信されたフレームについて、不良レートの選択を識別する工程は、ビットストリーム中の不法シーケンスビを識別し、特定のフレームが消失していることを宣言することにより、達成される。
【0264】
上述した音声圧縮システム10の実施形態では、全レートコーデック22と、半レートコーデック24と、4分の1レートコーデック26と、8分の1レートコーデック28とを用いて、可変レートの音声圧縮を行う。コーデック22、24、26および28は、異なるビット割り当てと、異なる符号化アプローチを用いたビットレートと共に動作して、音声信号18のフレームを符号化する。全レートコーデック22および半レートコーデック24の符号化アプローチは、フレームのタイプ分類に応じて、異なる知覚整合と、異なる波形整合と、異なるビット割り当てとを有する。4分の1レートコーデック26および8分の1レートコーデック28は、パラメータを含む知覚表現のみを用いて、フレームを符号化する。モード信号は、音声圧縮システム10について、所望の平均ビットレートを識別する。音声圧縮システム10は、コーデック22、24、26および28を選択的に活性化して、処理後の合成音声20の知覚品質の最適化により、所望の平均ビットレートのバランスをとる。
【0265】
本発明の様々な実施形態について説明してきたが、当業者にとって、他の多くの実施形態およびインプレメンテーションが、本発明の範囲内において可能であることは明らかである。従って、本発明は、本明細書中の特許請求の範囲およびその均等物以外のものによって限定されることはない。
マイクロフィッシュ
【図面の簡単な説明】
【図1】 図1は、音声圧縮システムの一実施形態のブロック図である。
【図2】 図2は、図1に示される符号化システムの一実施形態の拡大された(expanded)ブロック図である。
【図3】 図3は、図1に示される復号化システムの一実施形態の拡大されたブロック図である。
【図4】 図4は、全レートコーデックの一実施形態のビット割り当てを示す表である。
【図5】 図5は、半レートコーデックの一実施形態のビット割り当てを示す表である。
【図6】 図6は、4分の1レートコーデックの一実施形態のビット割り当てを示す表である。
【図7】 図7は、8分の1レートコーデックの一実施形態のビット割り当てを示す表である。
【図8】 図8は、図2に示される処理前モジュールの一実施形態の拡大されたブロック図である。
【図9】 図9は、全レートおよび半レートコーデックのための、図2に示される初期フレーム処理モジュールの一実施形態の拡大されたブロック図である。
【図10】 図10は、全レートおよび半レートコーデックのための、図2に示される第1のサブフレーム処理モジュールの一実施形態の拡大されたブロック図である。
【図11】 図11は、全レートおよび半レートコーデックのための、図2に示される第1のフレーム処理モジュール、第2のサブフレーム処理モジュール、および第2のフレーム処理モジュールの一実施形態の拡大されたブロック図である。
【図12】 図12は、全レートおよび半レートコーデックのための、図3に示される復号化システムの一実施形態の拡大されたブロック図である。
Claims (52)
- 音声信号(18)を処理する可変レートの音声圧縮システム(10)であって、
該可変レートの音声圧縮システムは、
該音声信号のフレームのパラメータを抽出し、符号化するように動作可能な符号化システム(12)を備え、
該符号化システムは、
第1のレートおよび第2のレートのうちの一方を含むレート選択と、第1のタイプ(152、184)および第2のタイプ(154、186)のうちの一方を含むタイプ分類との関数として、該フレームを表すパラメータを符号化するように動作可能なフレーム処理モジュール(44、72、76、82、86)であって、該音声信号を改変して符号化を向上させるように動作可能なピッチ前処理モジュール(322)を含むフレーム処理モジュール(44、72、76、82、86)と、
該レート選択および該タイプ分類の関数として、該フレームのサブフレームを表すパラメータを符号化するように動作可能なサブフレーム処理モジュール(70、74、80、84)と
を含み、
ピッチ前処理モジュールは、該音声信号の複数のカテゴリの関数として、該音声信号を改変するように動作可能であり、該複数のカテゴリのうちの1つは、蓄積された遅延をピッチ前処理中にリセットすることにより、該蓄積された遅延が該ピッチ前処理中に予定の遅延を超えることを防ぐために用いられ、
該第1のタイプは、サイレンス/バックグランド・ノイズ、定常のノイズのような無声、非定常の無声、オンセット音声および非定常の有声うちの少なくとも1つとして特徴付けられるフレームであり、該第2のタイプは、定常の有声として特徴付けられるフレームであり、
該タイプ分類が該第2のタイプを示す場合には、該フレーム処理モジュールは、開ループピッチラグ処理を用いて該フレームを表すパラメータを符号化することにより、適応コードブックコンポーネントを生成するために用いられ、該タイプ分類が該第1のタイプを示す場合には、該サブフレーム処理モジュールは、閉ループピッチラグ処理を用いて該サブフレームを表すパラメータを符号化することにより、該適応コードブックコンポーネントを生成するために用いられる、可変レートの音声圧縮システム。 - 前記ピッチ前処理モジュールは、前記音声信号の連続的な時間歪曲を行うように動作可能である、請求項1に記載の可変レートの音声圧縮システム。
- 前記ピッチ前処理モジュールは、前記音声信号の波形補間を行うように動作可能である、請求項1または2に記載の可変レートの音声圧縮システム。
- 前記フレーム処理モジュールは、補間モジュール(338)を備え、該補間モジュール(338)は、前記タイプ分類が前記第1のタイプであり、前記レート選択が前記第1のレートである場合、補間経路を選択するように動作可能であり、かつ、該補間経路の関数として短期間の予測パラメータを符号化するように動作可能である、請求項1に記載の可変レートの音声圧縮システム。
- 前記フレーム処理モジュールは、前記レート選択が前記第2のレートである場合に予測子係数を選択するように動作可能である予測子スイッチモジュール(336)を備え、該予測子係数の関数として短期間の予測パラメータを符号化するように動作可能である、請求項1に記載の可変レートの音声圧縮システム。
- 前記フレーム処理モジュールは、前記タイプ分類が前記第2のタイプである場合、短期間の予測パラメータと、開ループのピッチ遅れと、適応コードブックゲインと、固定コードブックゲインとを符号化するように動作可能である、請求項1に記載の可変レートの音声圧縮システム。
- 前記フレーム処理モジュールは、3D/4D開ループVQモジュール(454)を備え、該3D/4D開ループVQモジュール(454)は、前記タイプ分類が前記第2のタイプである場合、ゲイン前量子化テーブルによって適応コードブックゲインを符号化するように動作可能である、請求項1または6に記載の可変レートの音声圧縮システム。
- 前記フレーム処理モジュールは、3D/4DVQゲインコードブック(492)を備え、該3D/4D VQゲインコードブック(492)は、前記タイプ分類が前記第2のタイプである場合、遅延ゲイン量子化テーブルによって固定コードブックゲインを符号化するように動作可能である、請求項1、6または7に記載の可変レートの音声圧縮システム。
- 前記サブフレーム処理モジュールは、前記タイプ分類が前記第1のタイプである場合、閉ループのピッチ遅れと、固定コードブックの寄与と、適応コードブックゲインと、固定コードブックゲインとを符号化するように動作可能である、請求項1に記載の可変レートの音声圧縮システム。
- 前記サブフレーム処理モジュールは、固定コードブック(390)をサーチして、前記サブフレームについて固定コードブックの寄与を決定するように動作可能であり、前記レート選択が前記第1のレートであり、前記タイプ分類が前記第1のタイプである場合、該固定コードブックは、3つの5パルスコードブック(160)を備える、請求項1に記載の可変レートの音声圧縮システム。
- 前記サブフレーム処理モジュールは、固定コードブック(390)をサーチして、前記サブフレームについて固定コードブックの寄与を決定するように動作可能であり、前記レート選択が前記第1のレートであり、前記タイプ分類が前記第2のタイプである場合、該固定コードブックは、8パルスコードブック(162)を備える、請求項1または10に記載の可変レートの音声圧縮システム。
- 前記サブフレーム処理モジュールは、固定コードブック(390)をサーチして、前記サブフレームについて固定コードブックの寄与を決定するように動作可能であり、前記レート選択が前記第2のレートであり、前記タイプ分類が前記第1のタイプである場合、該固定コードブックは、2パルスコードブック(192)と、3パルスコードブック(194)と、ガウスコードブック(195)とを備える、請求項1に記載の可変レートの音声圧縮システム。
- 前記サブフレーム処理モジュールは、固定コードブック(390)をサーチして、前記サブフレームについて固定コードブックの寄与を決定するように動作可能であり、前記レート選択が前記第2のレートであり、前記タイプ分類が前記第2のタイプである場合、該固定コードブックは、2パルスコードブック(196)および3パルスコードブック(197)を備える、請求項1または12に記載の可変レートの音声圧縮システム。
- 前記サブフレーム処理モジュールは、前記固定コードブックに対して向上を行うように動作可能であり、該向上は、高周波ノイズの注入、さらなるパルスの補間およびフィルタリングのうち少なくとも1つを含む、請求項12または13に記載の可変レートの音声圧縮システム。
- 前記レート選択が前記第1のレートおよび前記第2のレートのうちの一方であり、前記タイプ分類が前記第1のタイプである場合、前記サブフレーム処理モジュールは、前記サブフレームに関して量子化ゲインベクトルを決定するように動作可能であり、該量子化ゲインベクトルは、適応コードブックゲインおよび固定コードブックゲインの共符号化を表す、請求項1に記載の可変レートの音声圧縮システム。
- 前記第1のレートは、1秒あたり8.5キロビットであり、前記第2のレートは、1秒あたり4.0キロビットである、請求項1に記載の可変レートの音声圧縮システム。
- 可変レートの音声圧縮システム(10)を用いて音声信号(18)を処理する方法であって、
a)該音声信号のフレームからパラメータを抽出することと、
b)該抽出されたパラメータの関数としてレートを選択することと、
c)該抽出されたパラメータの関数として第1のタイプ(152、184)および第2のタイプ(154、186)のうち一方を選択することと、
d)該タイプ分類が該第1のタイプである場合、サブフレームのそれぞれについて適応コードブックゲインおよび固定コードブックゲインを共符号化することと、
e)該タイプ分類が該第2のタイプである場合、該フレームについて、該適応コードブックゲインおよび該固定コードブックゲインを排他的に符号化することと
を包含し、
該第1のタイプは、サイレンス/バックグランド・ノイズ、定常のノイズのような無声、非定常の無声、オンセット音声および非定常の有声うちの少なくとも1つとして特徴付けられるフレームであり、該第2のタイプは、定常の有声として特徴付けられるフレームである、方法。 - f)前記タイプ分類が前記第1のタイプである場合、前記フレームの複数のサブフレームのそれぞれについて、閉ループピッチ遅れを符号化することと、
g)該タイプ分類が前記第2のタイプである場合、該フレームを表す開ループピッチ遅れを符号化することと
をさらに包含する、請求項17に記載の方法。 - 前記a)は、ピッチ前処理を行って前記音声信号を改変することを包含する、請求項17または18に記載の方法。
- 前記b)は、モード信号の関数として前記レートを選択することを包含する、請求項17に記載の方法。
- 前記b)は、
開ループレート選択を行うことと、
前記開ループのレート選択と前記フレームの特徴付けと半レート信号フラグとの関数として、最終レート選択を行うことと
を包含する、請求項17に記載の方法。 - f)前記タイプ分類が前記第1のタイプであり、前記選択されたレートが全レートである場合、短期間の予測パラメータを符号化するように補間経路を選択すること
をさらに包含する、請求項17に記載の方法。 - f)前記選択されたレートが半レートである場合、1組の予測子係数を選択することと、
g)該選択された1組の予測子係数の関数として、短期間の予測パラメータを符号化することと
をさらに包含する、請求項17に記載の方法。 - 前記e)は、前記適応コードブックゲインをゲイン前量子化テーブルを用いて符号化することを包含する、請求項17に記載の方法。
- 前記c)は、前記固定コードブックゲインを遅延ゲイン量子化テーブルを用いて符号化することを包含する、請求項17または24に記載の方法。
- f)前記レートを半レートとして選択することと、
g)高周波ノイズを固定コードブックに注入することと、
h)該固定コードブックにさらなるパルスを組み込むことと、
i)固定コードブックの寄与を符号化することと
をさらに包含する、請求項17に記載の方法。 - 前記b)は、1秒あたり8.5キロビットおよび1秒あたり4キロビットのうちの一方を選択することを包含する、請求項17に記載の方法。
- 音声信号を処理する音声圧縮システムであって、
該音声圧縮システムは、
該音声信号の特徴付けの関数として、該音声信号を符号化するためのレートを選択するように動作可能な符号化システム
を備え、
該符号化システムは、第1のタイプおよび第2のタイプのうちの一方を含むタイプ分類を選択するように動作可能であり、
該符号化システムは、第1のレートが選択された場合には、該レートおよび該タイプ分類の関数として、該音声信号を符号化するように動作可能であり、
該符号化システムは、第2のレートが選択された場合には、該タイプ分類にかかわらず該レートの関数として、該音声信号を符号化するように動作可能であり、
該符号化システムは、該第1のレートが選択され、かつ、該タイプ分類が該第2のタイプである場合には、適応コードブックゲインおよび固定コードブックゲインを符号化するように動作可能であり、該適応コードブックゲインは、該固定コードブックゲインとは排他的に符号化され、
該第1のタイプは、サイレンス/バックグランド・ノイズ、定常のノイズのような無声、非定常の無声、オンセット音声および非定常の有声うちの少なくとも1つとして特徴付けられるフレームであり、該第2のタイプは、定常の有声として特徴付けられるフレームである、音声圧縮システム。 - 前記符号化システムは、前記第1のレートが選択され、かつ、前記タイプ分類が前記第1のタイプである場合には、前記適応コードブックゲインおよび前記固定コードブックゲインを共符号化するように動作可能である、請求項28に記載の音声圧縮システム。
- 前記共符号化された適応コードブックゲインおよび固定コードブックゲインは、前記音声信号の複数のサブフレームのそれぞれについて符号化されている、請求項29に記載の音声圧縮システム。
- 前記適応コードブックゲインおよび前記固定コードブックゲインは、前記音声信号のフレームを表す、請求項30に記載の音声圧縮システム。
- 前記符号化された音声信号は、前記第1のレートが選択された場合には第1の部分と第2の部分とを含み、該第1の部分はフレーム単位での該音声信号のパラメータを表し、該第2の部分はサブフレーム単位での該音声信号のパラメータを表す、請求項28に記載の音声圧縮システム。
- 前記符号化システムは、初期フレーム処理モジュールと励起処理モジュールとを含み、前記フレームの前記タイプ分類が前記第1のタイプである場合には、該初期フレーム処理モジュールは、前記符号化された音声信号の前記第1の部分を生成するように動作可能であり、前記励起処理モジュールは、前記符号化された音声信号の前記第2の部分を生成するように動作可能である、請求項32に記載の音声圧縮システム。
- 前記符号化システムは、初期フレーム処理モジュールと励起処理モジュールとを含み、前記フレームの前記タイプ分類が前記第2のタイプである場合には、該初期フレーム処理モジュールは、前記符号化された音声信号の前記第1の部分の一部を生成するように動作可能であり、前記励起処理モジュールは、前記符号化された音声信号の前記第1の部分の一部と前記符号化された音声信号の前記第2の部分とを生成するように動作可能である、請求項32に記載の音声圧縮システム。
- 前記第1のレートは、1秒あたり8.5キロビットおよび1秒あたり4.0キロビットのうちの一方である、請求項28に記載の音声圧縮システム。
- 前記第2のレートは、1秒あたり2.0キロビットおよび1秒あたり0.8キロビットのうちの一方である、請求項28に記載の音声圧縮システム。
- 音声信号を処理する可変レートの音声圧縮システムであって、
該可変レートの音声圧縮システムは、
該音声信号の第1のフレームを符号化し復号化するように動作可能な第1のコーデックであって、選択されたビットレートの関数として活性化され、第1のタイプおよび第2のタイプのうちの一方を含むタイプ分類の関数として符号化し復号化するように動作可能な第1のコーデックと、
該音声信号の第2のフレームを符号化し復号化する動作可能な第2のコーデックであって、該タイプ分類にかかわらず該第2のフレームを符号化し復号化するように、選択されたビットレートの関数として活性化される第2のコーデックと
を備え、
該第1のコーデックは、該第1のレートが選択され、かつ、該タイプ分類が該第2のタイプである場合に、適応コードブックゲインおよび固定コードブックゲインを符号化するように動作可能であり、該適応コードブックゲインは、該固定コードブックゲインとは排他的に符号化され、
該第1のタイプは、サイレンス/バックグランド・ノイズ、定常のノイズのような無声、非定常の無声、オンセット音声および非定常の有声うちの少なくとも1つとして特徴付けられるフレームであり、該第2のタイプは、定常の有声として特徴付けられるフレームである、可変レートの音声圧縮システム。 - 前記第1のフレームおよび前記第2のフレームを特徴付けるように動作可能な初期フレーム処理モジュールをさらに備えており、該初期フレーム処理モジュールは、該特徴付けの関数として各フレームに対して該ビットレートを選択するようにさらに動作可能である、請求項37に記載の可変レートの音声圧縮システム。
- 前記第1のフレームおよび前記第2のフレームのぞれぞれは、複数のクラスのうちの1つとして特徴付けられ、該複数のクラスは、サイレンス/バックグランド・ノイズ、定常のノイズのような無声、非定常の無声、オンセット音声、非定常の有声および定常の有声を含む、請求項38に記載の可変レート音声圧縮システム。
- 前記初期フレーム処理モジュールは、モード信号の関数として前記ビットレートを選択するように動作可能であり、該モード信号は、プレミアムモード、標準モードおよび節約モードを含む、請求項38に記載の可変レート音声圧縮システム。
- 複数のクラスのうちの1つとして前記第1のフレームを特徴付け、該特徴付けの関数として前記タイプ分類を実行するように動作可能な初期フレーム処理モジュールをさらに備えている、請求項37に記載の可変レート音声圧縮システム。
- 前記第1のコーデックは、前記タイプ分類が前記第1のタイプである場合には、前記第1のフレームの複数のサブフレームのそれぞれを表す適応コードブックの寄与を符号化するように動作可能である、請求項37に記載の可変レート音声圧縮システム。
- 前記第1のコーデックは、前記タイプ分類が前記第2のタイプである場合には、前記第1のフレームを表す適応コードブックの寄与を符号化するように動作可能である、請求項37に記載の可変レート音声圧縮システム。
- 前記第1のコーデックは、全レートコーデックおよび半レートコーデックのうちの一方を含む、請求項37に記載の可変レート音声圧縮システム。
- 前記第2のコーデックは、4分の1レートのコーデックおよび8分の1レートのコーデックうちの一方を含む、請求項37に記載の可変レート音声圧縮システム。
- 音声信号のフレームを処理するシステムであって、
該システムは、
該フレームに対して選択されるレートの関数として選択的に活性化される第1のコーデックと、
該フレームに対して選択される該レートの関数として選択的に活性化される第2のコーデックと
を備え、
該第1のコーデックは、
該フレームのタイプ分類の関数として符号化された音声信号の第1の部分を形成するように動作可能な複数のフレーム処理モジュールであって、該第1の部分は、該フレームのパラメータを表す、複数のフレーム処理モジュールと、
該タイプ分類の関数として該符号化された第2の部分を形成するように動作可能な複数のサブフレーム処理モジュールであって、該第2の部分は、該フレームの複数のサブフレームのパラメータを表す、複数のサブフレーム処理モジュールと
を含み、
該第2のコーデックは、
該タイプ分類にかかわらず該フレームを表すパラメータを符号化するように動作可能な初期フレーム処理モジュールと、
該タイプ分類にかかわらず該フレームのパラメータを符号化するように動作可能なレートモジュールと
を含み、
該第1のコーデックは、該レートおよび該タイプ分類の関数として、適応コードブックゲインおよび固定コードブックゲインを符号化するように動作可能であり、該適応コードブックゲインは、該固定コードブックゲインとは排他的に符号化され、
該タイプ分類は、第1のタイプおよび第2のタイプのうちの一方を含み、該第1のタイプは、サイレンス/バックグランド・ノイズ、定常のノイズのような無声、非定常の無声、オンセット音声および非定常の有声うちの少なくとも1つとして特徴付けられるフレームであり、該第2のタイプは、定常の有声として特徴付けられるフレームである、システム。 - 前記第1のコーデックは、全レートコーデックおよび半レートコーデックのうちの一方を含む、請求項46に記載のシステム。
- 前記第2のコーデックは、4分の1レートコーデックおよび8分の1レートコーデックのうちの一方を含む、請求項46に記載のシステム。
- 前記第1のコーデックに対して選択される前記レートは、1秒あたり8.5キロビットおよび1秒あたり4.0キロビットのうちの一方を含む、請求項46に記載のシステム。
- 前記第2のコーデックに対して選択される前記レートは、1秒あたり2.0キロビットおよび1秒あたり0.8キロビットのうちの一方を含む、請求項46に記載のシステム。
- 前記第2のタイプは、定常の有声のふるまいを示すフレームを表し、前記第1のタイプは、その他のすべてのタイプのふるまいを表す、請求項46に記載のシステム。
- 前記第2のコーデックの前記レートモジュールは、前記選択されたレートが8分の1レートである場合に、該フレームを表す予測されたエネルギーゲインを符号化するように動作可能である、請求項46に記載のシステム。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15532199P | 1999-09-22 | 1999-09-22 | |
US60/155,321 | 1999-09-22 | ||
US09/574,396 US6782360B1 (en) | 1999-09-22 | 2000-05-19 | Gain quantization for a CELP speech coder |
US09/574,396 | 2000-05-19 | ||
PCT/US2000/025182 WO2001022402A1 (en) | 1999-09-22 | 2000-09-15 | Multimode speech encoder |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005202337A Division JP2005338872A (ja) | 1999-09-22 | 2005-07-11 | マルチモードの音声符号器 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003513296A JP2003513296A (ja) | 2003-04-08 |
JP4176349B2 true JP4176349B2 (ja) | 2008-11-05 |
Family
ID=26852220
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001525686A Expired - Fee Related JP4176349B2 (ja) | 1999-09-22 | 2000-09-15 | マルチモードの音声符号器 |
JP2005202337A Pending JP2005338872A (ja) | 1999-09-22 | 2005-07-11 | マルチモードの音声符号器 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005202337A Pending JP2005338872A (ja) | 1999-09-22 | 2005-07-11 | マルチモードの音声符号器 |
Country Status (8)
Country | Link |
---|---|
EP (1) | EP1214706B9 (ja) |
JP (2) | JP4176349B2 (ja) |
KR (1) | KR100488080B1 (ja) |
CN (1) | CN1245706C (ja) |
AT (1) | ATE272885T1 (ja) |
AU (1) | AU7486200A (ja) |
BR (1) | BRPI0014212B1 (ja) |
DE (1) | DE60012760T2 (ja) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100463418B1 (ko) * | 2002-11-11 | 2004-12-23 | 한국전자통신연구원 | Celp 음성 부호화기에서 사용되는 가변적인 고정코드북 검색방법 및 장치 |
FR2867649A1 (fr) * | 2003-12-10 | 2005-09-16 | France Telecom | Procede de codage multiple optimise |
WO2006098274A1 (ja) * | 2005-03-14 | 2006-09-21 | Matsushita Electric Industrial Co., Ltd. | スケーラブル復号化装置およびスケーラブル復号化方法 |
US7177804B2 (en) * | 2005-05-31 | 2007-02-13 | Microsoft Corporation | Sub-band voice codec with multi-stage codebooks and redundant coding |
CN101371296B (zh) * | 2006-01-18 | 2012-08-29 | Lg电子株式会社 | 用于编码和解码信号的设备和方法 |
US8451915B2 (en) | 2007-03-21 | 2013-05-28 | Samsung Electronics Co., Ltd. | Efficient uplink feedback in a wireless communication system |
KR20100006492A (ko) * | 2008-07-09 | 2010-01-19 | 삼성전자주식회사 | 부호화 방식 결정 방법 및 장치 |
CA2729751C (en) | 2008-07-10 | 2017-10-24 | Voiceage Corporation | Device and method for quantizing and inverse quantizing lpc filters in a super-frame |
KR101170466B1 (ko) | 2008-07-29 | 2012-08-03 | 한국전자통신연구원 | Mdct 영역에서의 후처리 방법, 및 장치 |
JP2010122617A (ja) * | 2008-11-21 | 2010-06-03 | Yamaha Corp | ノイズゲート、及び収音装置 |
JP2010160496A (ja) * | 2010-02-15 | 2010-07-22 | Toshiba Corp | 信号処理装置および信号処理方法 |
US9047875B2 (en) * | 2010-07-19 | 2015-06-02 | Futurewei Technologies, Inc. | Spectrum flatness control for bandwidth extension |
MX2013009295A (es) * | 2011-02-15 | 2013-10-08 | Voiceage Corp | Dispositivo y método para cuantificar ganancias de contribuciones adaptativas y fijas de una excitación en un codec celp. |
US9626982B2 (en) | 2011-02-15 | 2017-04-18 | Voiceage Corporation | Device and method for quantizing the gains of the adaptive and fixed contributions of the excitation in a CELP codec |
US9026434B2 (en) * | 2011-04-11 | 2015-05-05 | Samsung Electronic Co., Ltd. | Frame erasure concealment for a multi rate speech and audio codec |
US9336789B2 (en) * | 2013-02-21 | 2016-05-10 | Qualcomm Incorporated | Systems and methods for determining an interpolation factor set for synthesizing a speech signal |
CN104517612B (zh) * | 2013-09-30 | 2018-10-12 | 上海爱聊信息科技有限公司 | 基于amr-nb语音信号的可变码率编码器和解码器及其编码和解码方法 |
JP5981408B2 (ja) * | 2013-10-29 | 2016-08-31 | 株式会社Nttドコモ | 音声信号処理装置、音声信号処理方法、及び音声信号処理プログラム |
KR20240010550A (ko) | 2014-03-28 | 2024-01-23 | 삼성전자주식회사 | 선형예측계수 양자화방법 및 장치와 역양자화 방법 및 장치 |
US10504532B2 (en) * | 2014-05-07 | 2019-12-10 | Samsung Electronics Co., Ltd. | Method and device for quantizing linear predictive coefficient, and method and device for dequantizing same |
KR102034419B1 (ko) * | 2014-07-28 | 2019-10-18 | 텔레폰악티에볼라겟엘엠에릭슨(펍) | 피라미드 벡터 양자화기의 형상 검색 |
US10109284B2 (en) * | 2016-02-12 | 2018-10-23 | Qualcomm Incorporated | Inter-channel encoding and decoding of multiple high-band audio signals |
US10373630B2 (en) * | 2017-03-31 | 2019-08-06 | Intel Corporation | Systems and methods for energy efficient and low power distributed automatic speech recognition on wearable devices |
WO2019068915A1 (en) * | 2017-10-06 | 2019-04-11 | Sony Europe Limited | AUDIO FILE ENVELOPE BASED ON RMS POWER IN SUB-WINDOW SEQUENCES |
CN108122552B (zh) * | 2017-12-15 | 2021-10-15 | 上海智臻智能网络科技股份有限公司 | 语音情绪识别方法和装置 |
CN113593521B (zh) * | 2021-07-29 | 2022-09-20 | 北京三快在线科技有限公司 | 语音合成方法、装置、设备及可读存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3353852B2 (ja) * | 1994-02-15 | 2002-12-03 | 日本電信電話株式会社 | 音声の符号化方法 |
US5701390A (en) * | 1995-02-22 | 1997-12-23 | Digital Voice Systems, Inc. | Synthesis of MBE-based coded speech using regenerated phase information |
-
2000
- 2000-09-12 AU AU74862/00A patent/AU7486200A/en not_active Abandoned
- 2000-09-15 KR KR10-2002-7003768A patent/KR100488080B1/ko active IP Right Grant
- 2000-09-15 JP JP2001525686A patent/JP4176349B2/ja not_active Expired - Fee Related
- 2000-09-15 CN CNB008159408A patent/CN1245706C/zh not_active Expired - Fee Related
- 2000-09-15 DE DE60012760T patent/DE60012760T2/de not_active Expired - Lifetime
- 2000-09-15 AT AT00963447T patent/ATE272885T1/de not_active IP Right Cessation
- 2000-09-15 EP EP00963447A patent/EP1214706B9/en not_active Expired - Lifetime
- 2000-09-15 BR BRPI0014212A patent/BRPI0014212B1/pt not_active IP Right Cessation
-
2005
- 2005-07-11 JP JP2005202337A patent/JP2005338872A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
KR20020033819A (ko) | 2002-05-07 |
BRPI0014212B1 (pt) | 2016-07-26 |
JP2005338872A (ja) | 2005-12-08 |
EP1214706A1 (en) | 2002-06-19 |
DE60012760T2 (de) | 2005-08-04 |
CN1451155A (zh) | 2003-10-22 |
ATE272885T1 (de) | 2004-08-15 |
EP1214706B9 (en) | 2005-01-05 |
KR100488080B1 (ko) | 2005-05-06 |
EP1214706B1 (en) | 2004-08-04 |
BR0014212A (pt) | 2003-06-10 |
DE60012760D1 (de) | 2004-09-09 |
AU7486200A (en) | 2001-04-24 |
CN1245706C (zh) | 2006-03-15 |
JP2003513296A (ja) | 2003-04-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4176349B2 (ja) | マルチモードの音声符号器 | |
US6735567B2 (en) | Encoding and decoding speech signals variably based on signal classification | |
US6757649B1 (en) | Codebook tables for multi-rate encoding and decoding with pre-gain and delayed-gain quantization tables | |
US6581032B1 (en) | Bitstream protocol for transmission of encoded voice signals | |
RU2262748C2 (ru) | Многорежимное устройство кодирования | |
US7020605B2 (en) | Speech coding system with time-domain noise attenuation | |
EP1317753B1 (en) | Codebook structure and search method for speech coding | |
US6714907B2 (en) | Codebook structure and search for speech coding | |
CA2483791C (en) | Method and device for efficient frame erasure concealment in linear predictive based speech codecs | |
US6334105B1 (en) | Multimode speech encoder and decoder apparatuses | |
EP0732686B1 (en) | Low-delay code-excited linear-predictive coding of wideband speech at 32kbits/sec | |
US6081776A (en) | Speech coding system and method including adaptive finite impulse response filter | |
NZ562185A (en) | Method and apparatus for vector quantizing of a spectral envelope representation | |
AU2001255422A1 (en) | Gains quantization for a celp speech coder | |
US6205423B1 (en) | Method for coding speech containing noise-like speech periods and/or having background noise | |
AU766830B2 (en) | Multimode speech encoder | |
AU2003262451B2 (en) | Multimode speech encoder |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040602 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20040827 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20040903 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041202 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050412 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050711 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20050914 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20051021 |
|
A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20060331 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20080226 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20080229 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20080326 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20080331 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080428 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080820 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110829 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110829 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120829 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120829 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130829 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |