JPH10502191A - 代数的符号励振線形予測音声符号化方法 - Google Patents

代数的符号励振線形予測音声符号化方法

Info

Publication number
JPH10502191A
JPH10502191A JP8520788A JP52078896A JPH10502191A JP H10502191 A JPH10502191 A JP H10502191A JP 8520788 A JP8520788 A JP 8520788A JP 52078896 A JP52078896 A JP 52078896A JP H10502191 A JPH10502191 A JP H10502191A
Authority
JP
Japan
Prior art keywords
code
codebook
integer
pos
matrix
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.)
Granted
Application number
JP8520788A
Other languages
English (en)
Other versions
JP3481251B2 (ja
Inventor
ランブラン,クロード
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Original Assignee
France Telecom SA
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by France Telecom SA filed Critical France Telecom SA
Publication of JPH10502191A publication Critical patent/JPH10502191A/ja
Application granted granted Critical
Publication of JP3481251B2 publication Critical patent/JP3481251B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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/04Speech 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/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
    • G10L19/107Sparse pulse excitation, e.g. by using algebraic codebook
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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
    • G10L2019/0001Codebooks
    • G10L2019/0007Codebook element generation
    • G10L2019/0008Algebraic codebooks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech 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
    • G10L2019/0001Codebooks
    • G10L2019/0013Codebook search algorithms
    • G10L2019/0014Selection criteria for distances

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Human Computer Interaction (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Mathematical Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Optimization (AREA)
  • General Physics & Mathematics (AREA)
  • Algebra (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)

Abstract

(57)【要約】 本方法は代数的コードブックを用いるCELPコーディングの技術を使用する。Hが合成フィルタおよび知覚の重みを加えるフィルタから構成された複合フィルタのインパルス応答に基づいて形成された低位の三角テプリッツ行列を表わす場合、CELP励振の探索は分散行列U=HT・Hのある成分の計算を含んでいる。分散行列のメモリに格納された成分は形式U(posi,p,posi,p)および形式U(posi,p,posj,q)のものだけである。ここでposi,pおよびposj,pは、それぞれ代数的コードブックのコードにおけるパルスpおよびパルスqに対する位置iおよび位置jを表わす。

Description

【発明の詳細な説明】 代数的符号励振線形予測音声符号化方法 本発明は、ディジタルコーディングの方法に係り、特に音声信号のディジタルコ ーディング方法に関する。 ビットレートを低減するために信号を圧縮する最良の現在の方法の1つは、符号 −励振線形予測CELPの技術であるが、これは依然としてよい品質を維持して いる。この種のコーディングは広く使用されており、地上の送信システムあるい は衛星システムの送信システム、あるいは記憶用途において本質的に使用されて いる。しかしながら、確率的コードブックを使用したCELPコーダの第1世代 は実行するのに非常に複雑であり、大規模なメモリ容量を必要とした。その後、 CELPコーダの第2世代(代数的コードブックCELPコーダ)が現われた。そ れらは実行するのにより複雑でなく、よりメモリを必要としない。しかし、その 節減はなお不適当である。 代数的コードブックCELPコーディングの技術は、ACELP(代数的符号励 振線形予測)コーダの導入によってさらに改善された。ACELPコーダは、計 算の複雑性が調節されることを可能にする適応性のあるしきい値を用いる集束( 集中)探索に関連する代数的コードブックを使用する、しかしながら、必要とさ れるランダムアクセスメモリの量はなお多大である。 CELPコーダは、合成による分析コーダ(合成分析符号器)(そこでは合成モデ ルがコーダで使用される)の系統に属している。コード化される信号は、電話周 波数(Fe=8kHz)あるいはより高い周波数、例えば広帯域コーディング用の 16kHz(0から7kHzまでの通過帯域)でサンプリングすることができる。 アプリケーションおよび所要の品質によって、圧縮係数は1〜16で変化し、C ELPコーダは、電話帯域における2〜16kbits/sのビットレートで、 および広帯域における16〜32kbits/sのビットレートで作動する。 CELPタイプのディジタルコーダでは、音声信号がサンプリングされ、L個の サンプルのフレーム列へ変換される。各フレームは、コードブック(これは辞書 とも呼ばれる)から抽出された波形をフィルタリングすることによって合成され 、そして、時間で変化する2つのフィルタを通って利得が掛けられる。励振コー ドブックはKコードの集合あるいはL個のサンプルの波形である。各波形には整 数インデックスkによって番号が付けられる。ここでkは0からK−1で変化し 、Kはコードブックの大きさである。第1のフィルタは長期的な予測フィルタで ある。LTP(長期予測)分析は、この長期予測のパラメータの評価を許し、それ ゆえ有声音(例えば:母音がそうである)の周期性の探索を可能にする;この長期 的な相関性は声帯の振動による。第2のフィルタは短期的な予測フィルタである 。線形予測“LPC”(線形予測符号化)による分析の方法は、声道の伝達関数お よび信号のスペクトルの特性を表すこれらの短期予測パラメータを得ることを可 能にする。イノベーションシーケンスを決めるために使われる方法が合成による 分析の方法であり、コーダでは励振コードブックのイノベーションシーケンスが ずべて2つのフィルタLTPおよびLPCによってフィルタにかけられ、そして 、選択される波形は、知覚で重み付けされる基準に従って、オリジナルの音声信 号に最も近い合成信号を生成するものとなる。 CELPコーダでは、したがって、合成モデルの励振が、コードブックから抽出 された波形から成っている。このコードブックの種類によって、2種類のCEL Pコーダが区別される。第1のCELPコーダのコードブックは確率的波形から 構成された。これらのコードブックは、学習あるいは任意の生成のいずれかによ って得られる。それらの主な欠点は、それらの格納を必要にし、実行の高度な複 雑さを生じさせてしまう“構造を欠いていること”である。第1のCELPコー ダの励振コードブックは、40のガウスサンプルの1024の波形の集合から構 成された確率的辞書であった。このCELPコーダはその時代の最も強力なコン ピューター上でリアル・タイムで作動しなかった。必要なメモリおよび計算時間 の縮小を可能にする他の確率的辞書が導入されたが、複雑さおよび必要とされる メモリ容量の両方は多大なままだった。 この欠点を改善するために、別のカテゴリーのコードブックが提案された。それ は、格納される必要がなく、その構造がそれらの実行のための高速のアルゴリズ ムの開発を可能にする高度に組み立てられた代数的コードブックである。ガーシ ョ(A.Gersho)は、彼の記事“音声およびオーディオ圧縮の進歩(Advance s in Speech and Audio Compression)”、Proc.IEEE,Vol.82,No.6,199 4年6月、900〜918ページの中で、CELPコーディングにおける研究の 良好な概観を示し、そして文献中で提案された多様なコードブックの目録を記し た。代数的コードブックを使用するCELPコーダの1つはACELPコーダで ある。 ACELPコーダ(WO 91/13432を参照)は、いくつかの標準化(8k bits/s ITU(国際電気通信連合)標準化、6.8kbits/s−5. 4 kbits/s PSTNビューホン(viewphone)のためのITU標準化)に 対する候補として提案された。短期予測、LTP分析および知覚の重みを加える モジュールは、従来のCELPコーダの中で使用されるものに似ている。ACE LPコーダの最初の特徴は励振信号探索モジュール中にある。ACELPコーダ には、ビットレートに関する高度な柔軟性および調整可能な実行の複雑性という 2つの主要な利点がある。ビット−レートの柔軟性はコードブックを生成する方 法から生じる。複雑さを調節する可能性は適応性のあるしきい値を備えた集束探 索を使用する波形選択手順による。 ACELPコーダでは、励振コードブックが代数的に生成された仮想集合(ある 意味ではそれは格納されないもの)である。インデックスkに応じて(kは0から K−1まで変化する)、代数的符号ジェネレーターは0でない成分をほとんど有 していないL個のサンプルのコードベクトルを生成する。Nを0でない成分の個 数とする。あるアプリケーションでは、コードワードの長さがL+Nまで拡張さ れる。また、最後のN個の成分は0である。ここで(計算の一般性への影響なし で)、LがNの倍数であると仮定する。コードワードckは、したがってN個のパ ルスから構成される。パルスの振幅は固定されている(例えば±1)。パルスpに 対して可能な位置は次式で示される。 posi,p=Ni+p (1) ここでL'=L/Nである場合、iは0からL'−1である。L'=(L+N)/N の場合、位置はL以上となり、そして、対応するパルスは単にゼロになる。波形 ckのインデックスは、以下の関係によって直接得られる。 また、コードブックのサイズはK=(L')Nである。 CELPコードブックからの波形の選択は、重みが加えられたオリジナルの信号 と重みが加えられた合成信号の間の二次のエラーを最小限にする一つを探索する ことによって行われる。これは数crk=pk 2/αk 2を最大限にすることになる 。ここで、Pk=(D・ck T)、そしてαk 2=|ck・HT2=(ck・U・ck T)、 また(・)Tは行列の転置を表す。Dは、入力信号、過去の合成信号、および合成 および知覚の重みを加えるフィルタから構成される複合フィルタに依存する目標 ベクトルである。hをこの複合フィルタのインパルス応答のベクトルとする: h=(h(0),h(1),…,h(L−1)) Hは、このインパルス応答から形成されたL×L下位三角テプリッツ(Toeplitz) 行列である。U=HT・Hはhの分散行列である。i行j列(0≦i,j<L)の行 列Uの要素をU(i,j)によって表すと、要素U(i,j)は次のものと等しい: ACELPコーダにおいて、波形ckが位置posi(q.k),qおよび振幅Sq(0≦ q<N)を持つN個のパルスから構成される場合、目標ベクトルDと波形ckとの スカラー積Pk、およびフィルタにかけられた波形ckのエネルギーαk 2は次のよ うに表される: および ACELPコードブックの利点の1つは、それが最良の波形を選択する有効な部 分最適方法を生じさせることである。この探索は、パルスを探索するためのルー プを入れ子にすることによって実行される。次数qのループについては、位置を コード化するインデックスiq=(posi,q−q)/Nが、集合[0,…,L'−1 ]の範囲で変化する。探索は、探索手続に入る前に、各ループ用の適応性のある しきい値を計算することによって早められる。より高位なループ中で以前に決定 されたパルス0からq−1までから計算された部分的な数量Crk(q−1)がル ープq−1に対して計算されたしきい値を越える場合にのみ、パルスqの探索ル ープに入る。部分的な数量は次のように表される: Crk(q−1)=Pk 2(q−1)/αk 2(q−1)あるいは Crk(q−1)=Pk 2(q−1) ここでαk 2(q−1)は、フィルタにかけられたckのパルス0からq−1までの 複合波形のエネルギーであり、そしてPk(q−1)は、ckのパルス0からq−1 までの複合波形と目標ベクトルDとのスカラー積である。 部分的な基準の計算は、Pk(q)およびαk 2(q)の再帰的な特性によって単純化 される。実際に数列{Pk(q)}q=0, …,N-1および{αk 2(q)}q=0, …,N-1は以 下のように再帰的に計算される。 Pk(0)=S0・D(posi(0,k),0)およびPk(q)=Pk(q-1)+Sq・D(posi(q,k),q) αk 2(0)=S2 0・U(posi(0,k),0,posi(0,k),0)および ここで、posi(p,k),pはckのp番目のパルスの位置であり、Spはその振幅で ある。フィルタにかけられた波形ckのエネルギーαk 2およびckと目標ベクトル Dとのスカラー積Pkは、反復の完了(q=N−1)で得られる。 kが0からK−1まで変わるのに対するK数列{αk 2(q)}q=0, …,N-1の計算は 、複合フィルタのインパルス応答hの分散行列Uの要素についての情報を必要と する。初期のACELPコーダでは、行列Uのすべての要素U(i,j)が計算さ れ、格納される。行列UはそのL2個の要素を計算する場合に使用される次の特 性を持っている: − 対称性質: 0≦i,j<Lに対して、U(i,j)=U(j,i) − 対角線上の反復性質: 0<i,j<Lに対して、U(i-1,j-1)=U(i,j)+h(L-i)・h(L-j) および0≦i<Lに対して、U(i,L-1)=U(L-1,i)=h(0)・h(L-1-i) しかしながら、これらの2つの特性を探索する行列Uの計算は依然として最大で 次のものを必要とする: ・L(L+1)/2回の乗算、およびL(L−1)/2回の加算、 ・L2回のメモリのロード。 結論として、ACELP技術は多くのメモリロードおよび多大な大きさのメモリ を必要とする。次のものを格納することが実際に必要である: − 入力信号(典型的に16ビットの80〜360のワード) − 分散行列(16ビットの402〜602のワード) − 中間の信号、およびそれらのメモリ(典型的に16ビットの2〜3kのワー ド) − 出力信号(典型的に80〜200のワードあるいはバイト) 分散行列のサイズが最も大きく占めることは明らかに明白である。任意のアプリ ケーションに対して中間の信号のために必要とされるメモリスペースを圧縮する ことができないことに注意する必要がある。したがって、全メモリサイズを縮小 することが望まれる場合、分散行列のために必要とされるメモリのサイズを変更 することだけが可能であると思われる。しかしながら、従来、専門家はこの行列 が主対角線に関して対称的であり、ある項が有用でないことを知っていたが、彼 らは後者が決められた次数のない行列中で整列されると考えていた。 分散行列のために必要にされるメモリ空間を減少させるための最初の考えは、こ の行列の対称特性の探索によるものであった。しかしながら、経験は、ACEL P励振(既に非常に複雑なモジュール(典型的にCPUタイプの50%))である) を探索する場合、行列の半分の格納がより複雑なアドレス計算を要することを示 した。メモリを節減することは、複雑さが生じることに直面し、利益のすべてを 失った。 本発明の主要な目的はコーダによって必要とされるメモリのサイズを本質的に縮 小するACELPタイプのコーディング方法を提案することである。 本発明は次のステップからなる符号励振線形予測(CELP)音声符号化方法を提 案する:L個のサンプルの連続フレームとして音声信号をディジタル化すること ; 一方では合成フィルタを定義する合成パラメータを適応して決定しかつ、他方で は予め定義された代数的コードブックに属するL個のサンプルの励振コードにお けるパルス位置と関連する励振利得を各フレームに対して含んでいる励振パラメ ータを適応して決定し;そして、決定したパラメータを表示する量子化値を伝送 する。代数的コードブックは、少なくともL個のサンプルのコードの中で可能な N個の集合のパルス位置の少なくとも1つの群に基づいて定義される。ここでコ ードブックからのコードは、N個の集合の群にそれぞれ属するN個のパルス位置 によって表わされる。フレームに関係のある励振パラメータの決定は数Pk 2/αk 2 を最大にするコードブックからコードを選ぶことからなる。ここで、Pk=D ・ck Tは、コードブックからのコードckとフレームの音声信号および合成パラ メータに依存する目標ベクトルDとのスカラー積を表わし、また、αk 2は、合成 フィルタおよび知覚の重みを加えるフィルタから構成される複合フィルタによっ てフィルタにかけられたコードckのフレーム中のエネルギーを表わす。エネル ギーαk 2の計算は分散行列U=HT・Hの成分の計算およびメモリ記憶からなる 。ここでHは、前記複合フィルタのインパルス応答h(0),h(1),…,h(L−1 )から形成されたL行L列のより低位の三角テプリッツ行列を表わす。分散行列 のメモリに格納される成分は、N個の集合の少なくとも1つの群に対して、次の 形式のものだけである: 0≦p<Nのとき そして、0≦p<q<Nのとき、次の形式のものである: ここで、posi,pおよびposj,qは、それぞれ、コードブックからのコードの パルスpおよびqに対する可能な位置を含んでいる前記群の集合における次数i およびjの位置を表わす。 この方法では、ACELP励振を探索する場合に現実に使用される項だけが格納 される。したがって、必要なメモリが相当に縮小されることを可能にする。例え ば、代数的コードブックがN個の集合の単一の群で上記で定義された構造(1)を 持っている場合、格納される行列Uにおける要素の数は初期のACELPコーダ のときのL2の代わりにL+L2(N−1)/2Nとなる。これによれば、メモリ空 間の縮小はランダムアクセスメモリの[L2(N+1)/2N]−Lワードである 。すなわちLとNの通常の値に対して数キロバイトである。 好ましくは、分散行列のメモリに格納される成分は、1つの群に対してN個の相 関ベクトルおよびN(N−1)/2個の相関行列の形態で構成される。各相関ベク トルRp,pは、コードブック(0≦p<N)からのコードにおけるパルス数pに関 連していて、形式Rp,p(i)−U(posi,p,posi,p)の成分i(0≦i<Lp' )において、パルスpに対して可能な位置を含んでいる前記群からの集合のカー ディナル(濃度)に等しい次元Lp'を有している。各相関行列Rp,qは、コード ブック(0≦p<q<N)からのコードにおける異なる2つのパルス数p,qに関 連していて、行iおよび列j(0≦i<Lp'かつ0≦j<Lp')における形式Rp, q (i,j)=U(posi,p,posj,q)の成分に対して、Lp'行およびLq'列を有 している。分散行列の成分を整理するこの方法は、ACELP励振を探索する場 合、それにアクセスすることを容易にし、モジュールの複雑さを低減するか、あ るいは少なくともこのモジュールの複雑さを増加させないようにする。 この発明による方法は多様な種類の代数符号に適用可能である。すなわち、それ は、コードブックからのコードの多様なパルスに対して可能な位置の集合の構造 に関係ないと言うことである。次の場合、相関ベクトルおよび相関行列を計算す るための手順は比較的単純かつ有効に作ることができる。その場合とは、N個の 集合の群においてコードブックからのコードのパルスに対して可能な位置の集合 がすべて同じカーディナルL'を有していて、かつパルスp(0≦i<L',0≦p <N)に対して可能な位置の集合における次数iの位置が次式によって与えられ る場合である。 ただし、δおよびεは、δ>0およびε≧0である2つの整数である。 本発明の、他の特徴および利点は、添付図面を参照した、好適であるがしかしそ れに制限されることのない実施例についての以下の記述から明らかになるだろう 。 − 図1および2は本発明による代数的コードブックを使用するCELPデコー ダおよびCELPコーダの概要のレイアウトであり; − 図3および4は本発明の第1の実施例中の相関ベクトルおよび相関行列の計 算を図示するフローチャートであり; − 図5Aおよび5Bは、他方の上に一方を置く場合、第1の実施例中の励振探 索手順のフローチャートを示し; − 図6〜図8は、本発明の第2の実施例において相関ベクトルおよび相関行列 の計算を図示するフローチャートであり;そして、 − 図9は第2の実施例中の部分最適励振探索手順を図示するフローチャートで ある。 CELPコーダおよびCELPデコーダ中で実行される音声合成プロセスは、図 1の中で図示されている。励振ジェネレーター10はインデックスkに応じて予 め定義したコードブックに属する励振コードckを伝える。増幅器12はこの励 振コードに励振利得βを掛け、そして、生じた信号は長期の合成フィルタ14に かけられる。フィルタ14からの出力信号uは今度は短期の合成フィルタ16 形成する。もちろん、音声符号化の分野で周知のように、他のフィルタはさらに デコーダレベル(例えばポストフィルタ)で実行されてもよい。 前述の信号は、例えば8kHzに等しいサンプリングレートFeで、例えば16 ビットワードによって表わされたディジタル信号である。合成フィルタ14,1 6は一般に純粋に再帰的なフィルタである。長期の合成フィルタ14は、典型的 にはB(z)=1−Gz-Tとする形式1/B(z)の伝達関数を有している。遅延T および利得Gはコーダによって適応して決定される長期の予測(LTP)パラメー タを構成する。短期の合成フィルタ16のLPCパラメータは音声信号の線形予 測によってコーダで決定される。フィルタ16の伝達関数はこのように、次数P ここでaiはi次の線形予測係数を表わす。 図2はCELPコーダのレイアウトを示す。音声信号s(n)はディジタル信号で あり、例えば増幅されてフィルタにかけられたマイクロフォン22の出力信号を 処理するアナログ/ディジタル変換器20によって供給される。信号s(n)は、 Λサンプルの連続のフレームとしてディジタル化される。そのΛサンプルはL個 のサンプルのサブフレーム(あるいは励振フレーム)に分割される(例えばΛ=2 40、L=40)。 LPC、LTP、およびEXCパラメータ(インデックスkおよび励振利得β)は 、それぞれの3つの分析モジュール24、26,28によってコーダレベルで得 られる。これらのパラメータは、有効なディジタル伝送の目的で既知の手法で次 に量子化され、その後、コーダから出力信号を形成するマルチプレクサー30に かけられる。これらのパラメータは、さらに、コーダのいくつかのフィルタの初 期状態を計算するため、モジュール32に供給される。このモジュール32は図 1の中で表わされたようなデコーディングチェーンを本質的に含んでいる。モジ ュール32は、デコーダレベルで、検討中のサブフレームに先立つ合成および励 振パラメータに基づいて決定されるものである、デコーダの合成フィルタ14, 16の初期状態の情報を供給する。 コーディングプロセスの最初のステップで、短期の分析モジュール24は、音声 信号s(n)の短期の相関性の分析により、LPCパラメータ(短期合成フィルタ の係数ai)を決定する。この決定は、例えば、音声信号のスペクトルの内容の変 化に適合するような方法で、Λサンプルの1フレーム当たりで一回実行される。 LPC分析方法は当該技術において周知であり、したがってここでは詳述しない 。参考文献には、例えば、“音声信号のディジタル処理(Digital Processing of Speech Signals)”,L.R.RabinerおよびR.W.Shafer,Prentice-Hall Int., 1978年、がある。 コーディングの次のステップは長期の予測LTPパラメータを決定することにあ る。これらは、例えば、L個のサンプルの1サブフレーム当たり、一回決定され る。減算器34は音声信号s(n)からゼロ入力信号に対する短期の合成フィルタ 16の応答を減じる。この応答は、伝達関数1/A(z)有するフィルタ36、モ ジュール24によって決定されるLPCパラメータによって与えられる係数、そ して、合成信号の最後のPサンプルに対応するような方法でモジュール32によ 覚の重みを加えるフィルタ38にかけられる。この知覚の重みを加えるフィルタ の伝達関数W(z)はLPCパラメータから決定される。1つの可能性は、γが0 .8程度の係数である場合に、W(z)=A(z)/A(z/γ)をとることである。 知覚の重みを加えるフィルタ38の役割はエラーが最も知覚可能なスペクトルの 部分を強調することである。 モジュール26によって実行される閉ループLTP分析は、従来のやり方では、 各サブフレームに対して、標準化された次式の相関性を最大にする遅延Tを選ぶ ことにある: ここで、x'(n)は当該サブフレーム中のフィルタ38からの出力信号を表わし 、yT(n)は、たたみこみ積u(n−T)*h'(n)を表わす。上記の表現中で、h ’(0),h'(1),…,h'(L−1)は、伝達関数W(z)/A(z)を持ち、重み付けさ れた合成フィルタのインパルス応答を表わす。このインパルス応答h'はサブフ レームに対して決定されたLPCパラメータに基づいて、インパルス応答を計算 ずるためのモジュール40によって得られる。サンプルu(n−T)は、モジュー ル32によって供給されるような長期の合成フィルタ14の初期状態である。サ ブフレームの長さ未満である遅延Tに関して、欠けているサンプルu(n−T)は 、初期のサンプルに基づく補間によってか、あるいは音声信号から得られる。遅 延Tは、整数あるいは分数であり、例えば20から143までのサンプルに及ぶ 指定されたウィンドーから選ばれる。閉ループ探索範囲を縮小しかつそれによっ て計算されるたたみこみYT(n)の数を縮小するのには、まず第1に、例えば、 1つのフレーム当たりで開ループ遅延T1を一回決定し、次に、T1のまわりの縮 小された区間中の各サブフレームに対する閉ループ遅延を選ぶことができる。開 ループ探索は、より単純に、できれば伝達関数A(z)を持った逆フィルタによっ て、フィルタにかけられた音声信号s(n)の自己相関を最大限にする遅延T1を 決定することにある。一度遅延Tが決定されたならば、長期の予測利得Gは次式 によって得られる: サブフレームに関係のあるCELP励振を探索するために、最適の遅延Tに関す るモジュール26によって計算される信号のGyT(n)は、減算器42によって 信号x'(n)からまず第一に減じられる。結果の信号x(n)は、次式によって与 えられる信号D(n)を供給するバックワードフィルタ44にかけられる: ここで、h(0),h(1),…,h(L−1)は合成フィルタおよび知覚の重みを加え るフィルタから構成される複合フィルタのインパルス応答を表し、またこの応答 はモジュール40によって計算される。すなわち、複合フィルタは伝達関数W( z)/[A(z)・B(z)]を有している。 行列表記法では、以下のようになる: D=(D(0),D(1),…,D(L−1))=x・H ここで、x=(x(0),x(1),…,x(L−1)) および ベクトルDは励振探索モジュール28に対する目標ベクトルを構成する。このモ ジュール28は標準化された相関性Pk 2/αk 2を最大限にするコードブックから のコードワードを決定する。ここで、 Pk=D・Ck T αk 2=ck・HT・H・ck T=ck・U・ck T である。 最適のインデックスkが決定された場合、励振利得βはβ=Pk/αk 2と等しく とられる。 可能な励振コードの代数的コードブックは、次数0,1,…,N−1のパルスに対 する可能な位置および少なくともL個のサンプルのコード中の振幅S0,S1,…, SN-1のN個の集合E0,E1,…,EN-1の少なくとも1つの群に基づいて定義され る。コードブックからのコードは、N個の集合と全く同一の群の集合E0,E1,… ,EN-1にそれぞれ属するN個のパルス位置によって表わされる。一般的な場合、 集合E0,E1,…,EN-1のカーディナルL'0,L'1,…,L'N-1は等しいかあるいは 異なってもよいし、また、これらの集合は互いに素であっても、なくてもよい。 下記第1の実施例では、そのN個の集合E0,E1,…,EN-1のすべてが同一のカー ディナルL'を持っている単一の群が存在すること、およびパルスp(0≦i<L ',0≦p<N)に対する可能な位置の集合Epの中の次数iの位置が次式によって 与えられることが仮定される。 posi,p=δ・(iN+p)+ε (2) ここで、δおよびεは0≦ε<δのような2つの整数である。 分散行列Uの所定の項を計算してそしてメモリに格納した後、モジュール28は 現在のサブフレームに関する励振コードを探索する。分散行列のメモリに格納さ れた成分は一方では次の形式でものあり: これはL'個の成分を持つ、N個の相関ベクトルRp,p(0≦p<N)の形式で組み 立てられたものである。そして他方では次の形式のものである。: これは、L'行およびM'列を持つN(N−1)/2個の相関行列Rp,q(0≦p<q <N)の形式で組み立てられたものである。 N個の相関ベクトルRp,pの計算は図3に示された方法でモジュール28によっ て実行される。この計算はL'−1から0まで減少する整数iによってインデッ クスが付けられたループを含む。このループの初期化50で、整数変数kはL− δL'N−εと等しくとられ(ここでは、L−δL'N−ε≦0と仮定する)、また 、累積変数corは0に等しくとられる。ループの繰り返しiにおいて、成分Rp,p (i)は、N−1から0まで減少するpに対して連続的に計算される。変数p はまず第1にN−1と等しくとられる(ステップ52)。命令cor=cor+h (k)・h(k)、およびk=k+1がδ回実行される(ステップ54)(L−δL'N −ε<0の場合、k<0なる項h(k)は0に等しくとられる)。次に、成分Rp,p (i)は累積変数corと等しく得られ、そして整数pは1単位分減分される(ス テップ56)。その後、テスト58は整数変数pについて実行される。p≧0の 場合、対応する命令をδ回の実行するためにステップ54へ戻る。テスト58が p<0を示す場合、整数変数iは1単位分減分され(ステップ60)、その後テス ト62で0と比較される。i≧0の場合、ループ中の次の繰り返しを実行するた めにステップ52の前へ戻る。テスト62がi<0を示す場合、N個の相関ベク トルの計算は終了する。 N個の相関ベクトルのこの計算は、約δL'N回程度の加算、δL'N回の乗算お よびL'N回のメモリローディングを必要とする。計算の初期化50を異ならせ ることができることについて述べる。例えば、ステップ50で整数kはL−δL 'Nに等しく初期化することができ、N−1から0まで減少するpによってイン デックスが付けられたループ中の各繰り返しは、ステップ54のδ−ε回の実行 、それに続くステップ56、後続するステップ54のε回の実行から成る。合計 でδ回のステップ54が項Rp,p(i)の2つの連続するメモリ格納間で実行され るので、計算は正確に維持される。 N(N−1)/2個の相関行列Rp,q計算は、図4に示される方法でモジュール2 8によって実行され得る。1とN−1の間に位置する整数t、および0とL'− 1の間に位置する整数d'の各値に対して、この計算はL'−1−dから0まで減 少する整数iによってインデックスが付けられたループBt,d'を含む。計算の初 期化70で、整数tは1と等しくとられる。次に整数d'はステップ72で0に 等しくとられる。ステップ74は、整数iによってインデックスが付けられたル ープの初期化に対応する。整数iはL'−1−d'に、整数jはL'−1に、整数d はδ・(t+d'N)に、整数kはL−δL'N−εに、そして累積変数corは0 に初期化される。ループBt,d'の繰り返しiの中で、成分Rp,p+1(i,i+d') が、N−1−tから0まで減少するpに対して連続的に計算される。そしてその 後、i>0場合、成分Rq,q+N-t(i+d',i−1)がt−1から0まで減少する qに対して連続的に計算される。繰り返しiは、整数変数qおよびpをそれぞれ N−1およびN−1−tへ初期化(76)することによって始まる。その後、ステ ップ78はδ回実行されるが、それは項h(k)・h(k+d)を累積変数corへ 加えること、および変数kを1単位分増分することにある。ステップ80では、 成分Rp,q(i,j)が累積変数corと等しくとられ、そして整数pおよびqは各 々、1単位分減分される。テスト82は、次に、整数pについて実行される。p ≧0の場合、再びδ回実行されるステップ78の前に戻る。テスト82がp<0 を示す場合、テスト84は整数iについて実行される。i>0の場合、整数p' がN−1に初期化されるステップ86へ進み、整数qがt−1に等しく維持され る。ステップ86の後にステップ78と同様にh(k)・h(k+d)が蓄積変数c orへ加算され、そして1単位分整数変数kが増分されるステップ88が連続δ 回、実行される。次に、ステップ90で、成分Rq,p'(j,i−1)は累積変数c orと等しくとられ、また、整数p'およびqは各々1単位分減分される。テス ト92は、次に整数qの値について実行される。q≧0の場合、再びδ回実行さ れるステップ88の前に戻る。テスト92がq<0を示す場合、整数iおよびj は各々、ステップ94で1単位分減分される。また、その後、ループBt,d'中で の次の繰り返しの実行のためにステップ76の前に戻る。テスト84がi≦0を 示す場合、このループは終了する。整数d'は1単位分増分され(ステップ96) 、その後、数L'と比較される(テスト98)。d'<L'の場合、整数iによって インデックスが付けられた別のループBt,d'を実行するためにステップ74の前 に戻る。テスト98がd'=L'を示す場合、整数tは1単位分増分され(ステッ プ100)、そして数Nと比較される(テスト102)。t<Nの場合、tの新し い値に対して行列Rp,p+1およびRq,q+N-tの成分を計算するために、ステップ7 2の前に戻る。テスト102がt=Nを示す場合、N(N−1)/2個の相関行列 の計算は終了する。 N(N−1)/2個の相関行列のこの計算は、約δL'2N(N−1)/2回程度の加 算、δL'2N(N−1)/2回のの乗算およびL'2N(N−1)/2回のメモリロー ディングのみを必要とする。 励振コードの探索は、図5Aおよび5Bの中で表わされたフローチャートに従っ てモジュール28により実行され得る。ステップ120では、N−1個の部分的 なしきい値T(0),…,T(N−2)をまず第1に計算し、また、しきい値T(N− 1)は負の値、例えば−1、に初期化される。部分的なしきい値T(0),…,T(N −2)は、正であり、そして、入力ベクトルDおよび励振の探索の効率とこの探 索の単純性の間に向けられる妥協に基づいて計算される。部分的なしきい値の高 い値は励振の探索中で必要とされる計算の量を減少させる傾向があり、一方、部 分的なしきい値の低い値はACELPコードブックにおけるより徹底的な探索に 通じる。 励振コードの探索は、互いに内部で入れ子にしたN回のループB0,B1,…,BN-1 を含む。ループB0の初期化(1220)において、インデックスiは0に等しくと られる。ループB0の中のインデックスi0の繰り返しは次式に従って2つの項P (0)およびα2(0)を計算するステップ1240を含む。 P(0)=S0・D(δi0N+ε) α2(0)=S0・R0,0(i0) その後、P2(0)の値とT(0)・α2(0)の値が比較される(1260)。P2(0)< T(0)・α2(0)の場合、インデックスi0を増分するためのステップ1300に 進み、それからインデックスi0が数L'と比較されるテスト1320へ進む。i0 がL'と等しくなるとき、励振の探索は終了する。そうでなければ、ループB0 の中の次の繰り返しを続けるために、ステップ1240の前に戻る。比較1260 がP2(0)≧T(0)・α2(0)を示す場合、ループB1が実行される。ループBq は、0<q<N−1に対して、同一の命令から構成される: − iq=0とする初期化122q; − インデックスiqの繰り返しに対して、次式による2つの数P(q)およびα2 (q)の計算124q P(q)=P(q−1)+Sq・D[δ(iqN+q)+ε] − インデックスiqの繰り返しに対して、数P2(q)およびT(q)・α2(q)の 間の比較126q; − 比較126qがP2(q)≧T(q)・α2(q)を示す場合、ループBq+1へ進む; − 比較126qがP2(q)<T(q)・α2(q)を示す場合、インデックスiqを増 分し(130q)、その後、インデックスiqと数L'を比較する(132q); − 比較132qがiq<L'を示す場合、次の繰り返しのためにステップ124q の前に戻る;そして、 − 比較132qがiq=L'を示す場合、より高位のループのインデックスiq-1 を増分するためのステップ130へq-1進む。 ループBN-1は、前のループと同じ命令から構成される。しかしながら、比較1 26N-1がP2(N−1)≧T(N−1)・α2(N−1)を示す場合、ステップ128 は、インデックスiN-1を増分するためのステップ130N-1へ行く前に実行され る。このステップ128では、一方ではT(N−1)=P2(N−1)/α2(N−1) によってしきい値T(N−1)が更新され、そして他方では、ちょうどテストされ たコードに関係のあるパラメータがメモリに格納される。これらのパラメータは P(N−1)/α2(N−1)と等しくとられる励振利得βと、そしてコードのN個 のパルスの位置を見つけることを可能にするN個のインデックスi0,i1,… ,iN-1から構成される。N個のインデックスi0,i1,…,iN-1はともに次式によ って与えられるグローバルインデックスkへ入れることができる。 ここで、このインデックスkはN・log2(L')ビットにわたってコード化され る。 相関行列として成分を配置することは、初期のACELPコーダの場合でのよう に複雑なアドレス計算を実行しなければならない代わりに、入れ子にされたルー プ探索中に1単位分ポインタiqを単純に増分することによってループに関する 行列Uの必要な成分をアドレスすることを可能にすることが認められる。 コードブックのコードの1つ以上のパルスの振幅に対していくつかの値を割り当 てることは可能である。この場合、できるなら最後のシリアル番号が該当するパ ルスに割り当てられる。パルスqに対してnq個の可能な振幅値がある場合、図 5Aおよび5BのフローチャートのループBqはnq回、各回ごとに振幅Sqの異 なる値を用いて実行される。そして更にP2(N−1)/α2(N−1)より大きな値 に遭遇する前にループBqが実行された回数がメモリに格納される。この数は、 また、励振コードの対応するパルスに適用されるべき振幅Sqを回復することが できるデコーダへ送られる。 図1に関して、ACELPデコーダはコーダから2値のデータストリームを受信 するデマルチプレクサ8を含む。EXC励振パラメータの量子化された値、なら するために、ジェネレーター10、増幅器12およびフィルタ14,16に供給 され、それは、例えば増幅される前に変換器18によってアナログに変換され、 そしてその後、オリジナルの音声を復元するためにスピーカー19にかけられる 。 本発明の第2の実施例では、コードのパルス0,1,…,N−1に対して可能な位 置のN個の集合{E0 (m),E1(m),…,EN-1 (m)}(0≦m<M)のM個の群から構 築された代数的コードブックについて考慮が与えられる。MN個の集合はすべて 同じカーディナルL'を持っており、また、パルスp(0≦i<L',0≦p<N, 0≦m<M)に対して可能な位置を含んでいる群mの集合Ep (m)の中の次数iの 位置は、次式によって与えられる: δおよびε(0),…,ε(m-1)は、0≦ε(0)<…<ε(M-1)<δのような整数である 。そして、コードブックからのコードは、群インデックスm、およびN個の位置 インデックスiによって特徴づけられる。 以前に記述されたものに匹敵する最適のコーディング手順は、N個の相関ベクト ルRp,p (m)(0≦m<M,0≦p<N)のM群の計算に導かれ: およびN(N−1)/2個の相関行列Rp,p (m)(0≦m<M,0≦p<q<N)のM 群の計算に導かれる: 相関ベクトルのM群の成分を計算するのに次の修正を伴った図3のフローチャー トに従って進むことは可能である: − 計算ループの初期化50で、整数変数kをL−δL'Nに初期化する; そして、 − ステップ54およびステップ56の実行は図6の中で表わされたシーケンス と取り替えられる:ステップ54は、ステップ55M-1でRp,p (M-1)(i)=co rをとる前に、まずδ−ε(M-1)回実行される;次に、M−2から0まで減少す るmに対してステップ54はε(m+1)−ε(m)回実行され、それから、ステップ5 5mでPp,p (m)(i)=corをとる;最後に、ステップ54は、ステップ57で 整数pをディクリメントする前にさらにε(0)回実行される。 M個の相関行列群の成分を計算するのに次の修正を伴った図4のフローチャート に従って進むことは可能である: − 整数変数kは、ループBt,d'の初期化74でL−δL'Nに初期化される; − ステップ78およびステップ80のδ回の実行は図7の中で表わされたシー ケンスと取り替えられる:ステップ78は、ステップ79M-1でRp,q (M-1)(i, j)=corをとる前に、まずδ−ε(M-1)回実行される;次に、M−2から0ま で減少するmに対してステップ78はε(m+1)−ε(m)回実行され、また、その後 、ステップ79mでRp,q (m)(i,j)=corをとる;最後に、ステップ78は、 ステップ81で整数pおよびqをディクリメントする前にさらにε(0)回実行さ れる;そして、 − ステップ88およびステップ90のδ回の実行は図8の中で表わされたシー ケンスと取り替えられる:ステップ88はまずステップ89M-1でRq,p' (M-1)( j,i−1)=corをとる前にδ−ε(M-1)回実行される;次に、M−2から0 まで減少するmに対してステップ88はε(m+1)−ε(m)回実行され、また、その 後、ステップ89mでRq,p' (m)(j,i−1)=corをとる;最後に、ステップ 88は、ステップ91で整数p'およびqをディクリメントする前にさらにε(0) 回実行される。 一度相関ベクトルおよび相関行列が計算されたならば、励振の探索は、単に、M 群の各々に対して一度、図5Aおよび5Bで示される入れ子にされたループ探索 を実行することによって行うことができる。選択される励振コードを復元させる 群のインデックスmを得るのには、ステップ128で現在の探索の前に完全に実 行された入れ子にされたループ探索の回数をメモリに格納することで十分である 。 第2の実施例が、特別のケースM=1に相当する第1の実施例を一般化すること がこれにより理解される。 M>1における第2の実施例は、しかしながら、メモリ空間中のさらに大きな節 減を達成する部分最適探索手順を実行することを可能にする。この手順では、群 インデックスmのμ(1≦μ<M)に対してのみ、相関ベクトルRp,p (m)および相 関行列Rp,q (m)がメモリに格納される。そして、メモリ空間中の特別の節減は要 j−1)を伴うサブブロックへ分散行列Uを細分することに等しい。パルスNの 数が多い場合、コーディングの品質をあまり落とさないためには、比率μ/Mの あまりにも小さな値をとらないことが有益であろう。数μおよびMの調節は、コ ーディングの品質と必要なメモリ空間の間の妥協点を決定することを可能にする 。 この部分最適手順が実行される場合、ステップ55m、79mおよび89m(図6〜 8)は、メモリに格納されない相関ベクトルRp,p (m)および相関行列Rp,q (m)に 対するそれらのインデックスmに関して迂回される。 一般性に影響せずに計算を単純化するためベクトルRp,p (0)および行列Rp,q (0) の成分だけがメモリに格納されるケース{M=2,μ=1}を考える場合、励振 の探索は、図9の中で示された方法においてループBq(0≦q<N)を修正する ことによって、図5Aおよび5Bのフローチャートに従って実行することができ る。ステップ124qでは、群m=0に関して、図5Aおよび5Bの場合のよう に、項P(q)およびα2(q)が計算される。テスト126qがp2(q)/α2(q)が しきい値T(q)より大きいことを示す場合、低位のループが実行される。それは 、Bq+1で開始され、あるいはq=N−1の場合にしきい値および励振パラメー タの更新128が実行され、更にインデックスmは0に等しくされる。次に、ス テップ125qに進むが、それはテスト126qがP2(q)<T(q)・α2(q) を示す場合、直接実行される。ステップ125qでは、項P(q)が群m=1に関 して計算される。使用される近似でm=0に対して以前に計算された項α(2)(q )と同等のものと見なされるならば、対応する項α2(q)は再計算されない。それ から、テスト127qではp2(q)およびT(q)・α2(q)が比較される。p2(q) /α2(q)がしきい値T(q)より大きい場合、低位のループは実行される。それ は、Bq+1で始まり、あるいはq=N−1の場合、更新128はしきい値に、お よび励振パラメータに実行され、インデックスmは1に等しくとられる。次にテ スト127qがP2(q)<T(q)・α2(q)を示す場合に直接実行される整数iqの 増分130qに進む。例1 上記の第1の実施例を実行するこの第1の例において、30msのフレーム(す なわち8kHzでΛ=240サンプル)は、5msのサブフレーム(L=40)へ 細分され、使用される。ACELPコードブックは、δ=1およびε=0におい て関係式(2)によって与えられるL'=11個の可能な位置を各々有しているN =4個のパルスのコードを含んでいる。L=40に等しいかそれ以上のパルスが 最後の位置を占める場合、その振幅はデコーダによってゼロに合わせられる。励 振コードは、コードブック(サンプル0からL−1=39だけ)からの切り捨てら れたコードに相当し、したがって0、1、2、3あるいは4個のパルスを含むこ とができる。サブフレーム中のパルスの分配は表Iに示される。1フレーム当た りのビットレートの割付けは表IIの中で示される。1フレーム当たり204ビッ トとは、6.8kbits/sのビットレートに相当する。 既知のやり方で、LPC係数はベクトルで量子化された線スペクトルパラメータ (LSP)の形式に変換される。LTP遅延(それらは256の整数あるいは19 1/3と143の間の分数の値をとることができる)は、8ビットにわたって量 子化される。これらの8ビットはサブフレーム1および4で送信される。また、 他のサブフレームに対して、差の値は5ビットのみでコード化される。コードブ ックはK=(L')N=14641コードワードを含んでいる。したがってパルスP =3の符号を与える1ビットを足して、位置をコード化するのに14ビット必要 である。 この例1において、この発明によれば、初期のACELPコーダで得ることがで きたものと同一の出力信号を得ると同時に、分散行列の成分を格納するのにコー ダによって必要とされるメモリのサイズを2.5で割ることができる。 コーダに用いられるデータおよび変数および分散行列の成分を格納するのに必要 なランダムアクセスメモリは、16ビットの2264+1936=4200ワー ドから16ビットの2264+770=3034ワードにしたがって減らされる 。よって、スタティックRAMメモリおよびディジタル信号プロセッサ(DSP) と互換性をもつ12ビットでアドレシングをさせることが可能になる。例2 上記の第1の実施例を実行するこの第2の例では、6msのサブフレーム(L= 48)へ細分された30msのフレーム(Λ=240)が使用される。ACELP コードブックは、δ=1およびε=0において関係式(2)によって与えられるL '=16個の可能な位置を各々有するN=3個のパルスのコードを含む。δL'N =Lなので、コードワードは、N=3個のパルスを常に含んでいる励振を得るた めに切り捨てられない。 LPCおよびLTPパラメータは例1に似ている手法で決定される。コードブッ クはK=(L')N=4096コードワードを含んでいる。したがって、12ビット は位置をコード化するために要求される。それからビットレートはフレーム当た り158ビットである。つまり、5.3kbits/sである。 この例2において、この発明によれば、同一の出力信号を得るのと同時に、分散 行列の成分を格納するのにコーダによって必要とされるメモリを2.8で割るこ とを可能にする(16ビットの1488のワードの節減はランダムアクセスメモ リにおいて12ビットでアドレシングをさせることを可能にする)。例3 部分最適探索手順(μ=1)にて第2の実施例を実行するこの第3の例では、7. 5msのサブフレーム(L=60)へ細分された30msのフレーム(Λ=240) が活用される。ACELPコードブックは、カーディナルL'=8を持つ位置の N=4個の集合のM=2個の群から構築される。位置は、δ=2、ε(0)=0、 およびε(1)=1における関係式(2m)によって与えられる。コードブックのコ ードワードは、1つのサブフレームの長さLより長い長さδL'N=64を持っ ている。それらは、2、3、あるいは4個のパルスを含んでいる励振を得るため 、したがって切り捨てられなければならない(サンプル0からL−1=59まで のみ)。サブフレーム中のパルスの分布は、群m=0に対する表IIIおよび群m= 1に対する表IVの中で示される。 コードブックはK=M・(L')N=8192のコードワードを含んでいる。したが って、位置とパルスの符号を与える4ビットを加えたものをコード化するために 13ビットが必要である。例1および例2の場合のように、合成パラメータを コード化するに当たって、コーダはフレーム当たり153ビットを生成する。こ れは5.1kbits/sのビットレートを表わす。 この例において、この発明によれば、分散行列の成分を格納するのにコーダによ って必要とされるメモリのサイズを9.8で割ることを可能にする。これは、1 6ビットの3680ワード((δL'N)2=4096の代わりとして行列Uの41 6個の有効な成分)の必要とされたランダムアクセスメモリの縮減を意味する。 この発明の第2の実施例は、部分最適手順なしで適用された場合、行列Uの83 2個の成分の格納を必要とするだろう。

Claims (1)

  1. 【特許請求の範囲】 1.L個のサンプルの連続フレームとして音声信号をディジタル化するステップ と、 一方では合成フィルタを定義する合成パラメータを、他方では予め定義した代 数的コードブックに属するL個のサンプルの励振コードにおけるパルス位置およ び関連する励振利得を含む励振パラメータを、各フレームに対して適応して決定 するステップと、 代数的コードブックが少なくともL個のサンプルのコードにおける可能なパル ス位置のN個の集合(E0,E1,…,EN-1)の少なくとも1つの群に基づいて定義さ れ、該コードブックからのコードが一つの群の位置のN個の集合にそれぞれ属す るN個のパルス位置によって表わされ、そして、1つのフレームに関係する前記 励振パラメータの決定が数量Pk 2/αk 2を最大にする該コードブックからコード を選ぷことを含み、Pk=D・ck Tが該コードブックからのコードckと、該フレ ームの音声信号と該合成パラメータとに依存する目標ベクトルDとのスカラー積 を表わし、また、αk 2が合成フィルタおよび知覚の重みを加えるフィルタから構 成される複合フィルタによってフィルタにかけられたコードckのフレームにお けるエネルギーを表わし、エネルギーαk 2の計算が分散行列U=HT・Hの各成 分の計算およびメモリ記憶を含み、Hが、L行L列の低位の三角テプリッツ行列 を表わし、前記複合フィルタのインパルス応答h(0),h(1),…,h(L−1)か ら形成される場合において、該決定したパラメータを表す量子化した値を伝送す るステップと、 からなる符号励振線形予測(CELP)音声符号化方法において、 posi,pおよびposj,qが、前記コードブックからのコードのパルスpおよ びqに対する可能な位置を含んでいる前記群の集合(Ep,Eq)における次数iお よびjの位置をそれぞれ表わす場合に、 分散行列のメモリに格納される成分が、N集合の少なくとも1つの群に対して 、 0≦p<Nのとき: 0≦p<q<Nのとき: の形式のものだけであることを特徴とする符号励振線形予測音声符号化方法。 2.N集合の1つの群に対して前記分散行列のメモリに格納された成分が、N個 の相関ベクトルおよびN(N−1)/2個の相関行列の形式で構成されており、 各相関ベクトルRp,pが、前記コードブックからのコードにおけるパルス数p( 0≦p<N)に関連し、また、形式Rp,p(i)=U(posi,p,posi,p)の成分 i(0≦i<Lp')を持ち、パルスpに対する可能な位置を含む前記群からの集合 (Ep)のカーディナルと等しい次元Lp'を有し、そして各相関行列Rp,pが、該コ ードブックからのコードにおける異なる2つのパルス数p,q(0≦p<q<N) に関連し、また、行iおよび列j(0≦i<Lp'および0≦j<Lq')における形 式Rp,q(i,j)=U(posi,p,posj,q)の成分を持ち、Lp'行およびLq'列 を有している ことを特徴とする請求項1記載の方法。 3.前記コードブックからのコードの1つのパルスに対する可能な位置を含んで いる前記群の集合(E0,E1,…,EN-1)が、すべて同一のカーディナルL'を有し ており、パルスp(0≦i<L',0≦p<N)に対する可能な位置の集合(Ep)に おける次数iの位置が、δおよびεがδ>0およびε≧0のような2つの整数で ある場合に: によって与えられることを特徴する請求項2記載の方法。 4.前記代数的コードブックが、前記コードブックからのコードのパルスに対す るL'個の可能な位置のN個の集合のM個の群に基づいて定義され、M>1にお いて、パルスp(0≦i<L',0≦m<M,0≦p<N)に対して可能な位置を含 んでいる群mの集合(Ep (m))における次数iの位置が、δ,ε(0),…,ε(M-1)が 0≦ε(0)<…<ε(M-1)<δのような整数である場合に: によって与えられることを特徴する請求項2記載の方法。 5.μが1≦μ<Mのような整数である場合に、前記群のμに対してのみ、前記 相関ベクトル(Rp,p (m))および前記相関行列(Rp,q (m))がメモリに蓄えられる ことを特徴する請求項4記載の方法。 6.1つの群に関係するN個の相関ベクトルの計算が、整数変数kおよび累積変 数corの初期化、およびL'−1から0まで減少する整数iによってインデッ クスが付けられたループを含んでおり、前記ループ中の繰り返しiがN−1から 0まで減少するpに対する前記ベクトルの成分Rp,p(i)の連続する計算を含み 、整数変数kのδ回の増分および対応するδ回の累積変数corへの項h(k)・ h(k)の加算の後、1つの成分Rp,p(i)が累積変数corと等しくとられる ことを特徴する請求項3,4又は5のいずれか1項に記載の方法。 7.1つの群に関係するN(N−1)/2個の相関行列の計算が、区間[1,N− 1]中のすべての整数tおよび区間[0,L'−1]中のすべての整数d'に対し て、整数変数kおよび蓄積変数corの初期化、およびL'−1−d'から0まで 減少する整数iによってインデックスが付けられたループ(Bt,d')を含んでおり 、前記ループにおける繰り返しiがN−1−tから0まで減少するpに対する前 記行列の成分Rp、p+t(i,i+d')の連続の計算、およびi>0の場合にt−1 から0まで減少するqに対する前記行列の成分Rq,q+N-t(i+d',i−1)の連 続の計算を含み、d=δ・(t+d'N)において、整数変数kのδ回の増分およ び蓄積変数corへの項h(k)・h(k+d)の加算の後、1つの成分Rp,p+t(i ,i+d')またはRq,q+N-t(i+d',i−1)が累積変数corと等しくとられる ことを特徴する請求項3,4又は5のいずれか1項に記載の方法。
JP52078896A 1995-01-06 1996-01-04 代数的符号励振線形予測音声符号化方法 Expired - Lifetime JP3481251B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR9500133A FR2729245B1 (fr) 1995-01-06 1995-01-06 Procede de codage de parole a prediction lineaire et excitation par codes algebriques
FR95/00133 1995-01-06
PCT/FR1996/000017 WO1996021221A1 (fr) 1995-01-06 1996-01-04 Procede de codage de parole a prediction lineaire et excitation par codes algebriques

Publications (2)

Publication Number Publication Date
JPH10502191A true JPH10502191A (ja) 1998-02-24
JP3481251B2 JP3481251B2 (ja) 2003-12-22

Family

ID=9474930

Family Applications (1)

Application Number Title Priority Date Filing Date
JP52078896A Expired - Lifetime JP3481251B2 (ja) 1995-01-06 1996-01-04 代数的符号励振線形予測音声符号化方法

Country Status (8)

Country Link
US (1) US5717825A (ja)
EP (1) EP0749626B1 (ja)
JP (1) JP3481251B2 (ja)
KR (1) KR100389693B1 (ja)
CA (1) CA2182386C (ja)
DE (1) DE69604729T2 (ja)
FR (1) FR2729245B1 (ja)
WO (1) WO1996021221A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002525666A (ja) * 1998-09-16 2002-08-13 テレフオンアクチーボラゲツト エル エム エリクソン Celp符号化/復号方法と装置
WO2007105587A1 (ja) * 2006-03-10 2007-09-20 Matsushita Electric Industrial Co., Ltd. 固定符号帳探索装置および固定符号帳探索方法
JP2010530079A (ja) * 2007-06-11 2010-09-02 フラウンホッファー−ゲゼルシャフト ツァー フェーデルング デア アンゲバンテン フォルシュング エー ファー インパルス状の部分と定常部分とを有するオーディオ信号を符号化するオーディオ符号器、符号化方法、復号器、復号化方法、および符号化されたオーディオ信号
JP2015532456A (ja) * 2012-10-05 2015-11-09 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン 自己相関ドメインにおけるacelpを用いたスピーチ信号の符号化装置
US12002481B2 (en) 2022-01-14 2024-06-04 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus for encoding a speech signal employing ACELP in the autocorrelation domain

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2729247A1 (fr) * 1995-01-06 1996-07-12 Matra Communication Procede de codage de parole a analyse par synthese
FR2729246A1 (fr) * 1995-01-06 1996-07-12 Matra Communication Procede de codage de parole a analyse par synthese
US5646867A (en) * 1995-07-24 1997-07-08 Motorola Inc. Method and system for improved motion compensation
JP3094908B2 (ja) * 1996-04-17 2000-10-03 日本電気株式会社 音声符号化装置
JP3707154B2 (ja) * 1996-09-24 2005-10-19 ソニー株式会社 音声符号化方法及び装置
DE19641619C1 (de) * 1996-10-09 1997-06-26 Nokia Mobile Phones Ltd Verfahren zur Synthese eines Rahmens eines Sprachsignals
US5970444A (en) * 1997-03-13 1999-10-19 Nippon Telegraph And Telephone Corporation Speech coding method
US5924062A (en) * 1997-07-01 1999-07-13 Nokia Mobile Phones ACLEP codec with modified autocorrelation matrix storage and search
CA2254620A1 (en) * 1998-01-13 1999-07-13 Lucent Technologies Inc. Vocoder with efficient, fault tolerant excitation vector encoding
US6266412B1 (en) * 1998-06-15 2001-07-24 Lucent Technologies Inc. Encrypting speech coder
US6556966B1 (en) 1998-08-24 2003-04-29 Conexant Systems, Inc. Codebook structure for changeable pulse multimode speech coding
US6714907B2 (en) 1998-08-24 2004-03-30 Mindspeed Technologies, Inc. Codebook structure and search for speech coding
EP1221694B1 (en) * 1999-09-14 2006-07-19 Fujitsu Limited Voice encoder/decoder
WO2001024166A1 (en) * 1999-09-30 2001-04-05 Stmicroelectronics Asia Pacific Pte Ltd G.723.1 audio encoder
JP3449339B2 (ja) * 2000-06-08 2003-09-22 日本電気株式会社 復号化装置および復号化方法
US7363219B2 (en) * 2000-09-22 2008-04-22 Texas Instruments Incorporated Hybrid speech coding and system
JP3449348B2 (ja) * 2000-09-29 2003-09-22 日本電気株式会社 相関行列学習方法および装置ならびに記憶媒体
JP3536921B2 (ja) * 2001-04-18 2004-06-14 日本電気株式会社 相関行列学習方法、装置及びプログラム
DE10140507A1 (de) * 2001-08-17 2003-02-27 Philips Corp Intellectual Pty Verfahren für die algebraische Codebook-Suche eines Sprachsignalkodierers
US7383283B2 (en) * 2001-10-16 2008-06-03 Joseph Carrabis Programable method and apparatus for real-time adaptation of presentations to individuals
US8655804B2 (en) 2002-02-07 2014-02-18 Next Stage Evolution, Llc System and method for determining a characteristic of an individual
US8195597B2 (en) * 2002-02-07 2012-06-05 Joseph Carrabis System and method for obtaining subtextual information regarding an interaction between an individual and a programmable device
JP4290917B2 (ja) * 2002-02-08 2009-07-08 株式会社エヌ・ティ・ティ・ドコモ 復号装置、符号化装置、復号方法、及び、符号化方法
US7003461B2 (en) * 2002-07-09 2006-02-21 Renesas Technology Corporation Method and apparatus for an adaptive codebook search in a speech processing system
EP1383109A1 (fr) * 2002-07-17 2004-01-21 STMicroelectronics N.V. Procédé et dispositif d'encodage de la parole à bande élargie
US7249014B2 (en) 2003-03-13 2007-07-24 Intel Corporation Apparatus, methods and articles incorporating a fast algebraic codebook search technique
GB0307752D0 (en) * 2003-04-03 2003-05-07 Seiko Epson Corp Apparatus for algebraic codebook search
FI118835B (fi) * 2004-02-23 2008-03-31 Nokia Corp Koodausmallin valinta
KR100668299B1 (ko) * 2004-05-12 2007-01-12 삼성전자주식회사 구간별 선형양자화를 이용한 디지털 신호 부호화/복호화방법 및 장치
SG123639A1 (en) 2004-12-31 2006-07-26 St Microelectronics Asia A system and method for supporting dual speech codecs
KR101542069B1 (ko) * 2006-05-25 2015-08-06 삼성전자주식회사 고정 코드북 검색 방법 및 장치와 그를 이용한 음성 신호의부호화/복호화 방법 및 장치
US8566106B2 (en) * 2007-09-11 2013-10-22 Voiceage Corporation Method and device for fast algebraic codebook search in speech and audio coding
EP2077550B8 (en) 2008-01-04 2012-03-14 Dolby International AB Audio encoder and decoder
CN101615394B (zh) 2008-12-31 2011-02-16 华为技术有限公司 分配子帧的方法和装置
EP2665060B1 (en) * 2011-01-14 2017-03-08 Panasonic Intellectual Property Corporation of America Apparatus for coding a speech/sound signal
CN102623012B (zh) * 2011-01-26 2014-08-20 华为技术有限公司 矢量联合编解码方法及编解码器
EP2919232A1 (en) * 2014-03-14 2015-09-16 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Encoder, decoder and method for encoding and decoding

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1229681A (en) * 1984-03-06 1987-11-24 Kazunori Ozawa Method and apparatus for speech-band signal coding
CA1255802A (en) * 1984-07-05 1989-06-13 Kazunori Ozawa Low bit-rate pattern encoding and decoding with a reduced number of excitation pulses
US4868867A (en) * 1987-04-06 1989-09-19 Voicecraft Inc. Vector excitation speech or audio coder for transmission or storage
US4910781A (en) * 1987-06-26 1990-03-20 At&T Bell Laboratories Code excited linear predictive vocoder using virtual searching
US4899385A (en) * 1987-06-26 1990-02-06 American Telephone And Telegraph Company Code excited linear predictive vocoder
CA2005115C (en) * 1989-01-17 1997-04-22 Juin-Hwey Chen Low-delay code-excited linear predictive coder for speech or audio
WO1990013112A1 (en) * 1989-04-25 1990-11-01 Kabushiki Kaisha Toshiba Voice encoder
CA2027705C (en) * 1989-10-17 1994-02-15 Masami Akamine Speech coding system utilizing a recursive computation technique for improvement in processing speed
CA2010830C (en) * 1990-02-23 1996-06-25 Jean-Pierre Adoul Dynamic codebook for efficient speech coding based on algebraic codes
US5195137A (en) * 1991-01-28 1993-03-16 At&T Bell Laboratories Method of and apparatus for generating auxiliary information for expediting sparse codebook search
US5495555A (en) * 1992-06-01 1996-02-27 Hughes Aircraft Company High quality low bit rate celp-based speech codec
FR2700632B1 (fr) * 1993-01-21 1995-03-24 France Telecom Système de codage-décodage prédictif d'un signal numérique de parole par transformée adaptative à codes imbriqués.

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4651195B2 (ja) * 1998-09-16 2011-03-16 テレフオンアクチーボラゲット エル エム エリクソン(パブル) Celp符号化/復号方法と装置
JP2002525666A (ja) * 1998-09-16 2002-08-13 テレフオンアクチーボラゲツト エル エム エリクソン Celp符号化/復号方法と装置
KR101359147B1 (ko) * 2006-03-10 2014-02-05 파나소닉 주식회사 고정 코드북 탐색 장치 및 고정 코드북 탐색 방법
KR101359203B1 (ko) * 2006-03-10 2014-02-05 파나소닉 주식회사 고정 코드북 탐색 장치
US7519533B2 (en) 2006-03-10 2009-04-14 Panasonic Corporation Fixed codebook searching apparatus and fixed codebook searching method
US7949521B2 (en) 2006-03-10 2011-05-24 Panasonic Corporation Fixed codebook searching apparatus and fixed codebook searching method
US7957962B2 (en) 2006-03-10 2011-06-07 Panasonic Corporation Fixed codebook searching apparatus and fixed codebook searching method
US8452590B2 (en) 2006-03-10 2013-05-28 Panasonic Corporation Fixed codebook searching apparatus and fixed codebook searching method
WO2007105587A1 (ja) * 2006-03-10 2007-09-20 Matsushita Electric Industrial Co., Ltd. 固定符号帳探索装置および固定符号帳探索方法
KR101359167B1 (ko) * 2006-03-10 2014-02-06 파나소닉 주식회사 고정 코드북 탐색 장치
JP2010530079A (ja) * 2007-06-11 2010-09-02 フラウンホッファー−ゲゼルシャフト ツァー フェーデルング デア アンゲバンテン フォルシュング エー ファー インパルス状の部分と定常部分とを有するオーディオ信号を符号化するオーディオ符号器、符号化方法、復号器、復号化方法、および符号化されたオーディオ信号
US8706480B2 (en) 2007-06-11 2014-04-22 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio encoder for encoding an audio signal having an impulse-like portion and stationary portion, encoding methods, decoder, decoding method, and encoding audio signal
JP2015532456A (ja) * 2012-10-05 2015-11-09 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン 自己相関ドメインにおけるacelpを用いたスピーチ信号の符号化装置
US10170129B2 (en) 2012-10-05 2019-01-01 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus for encoding a speech signal employing ACELP in the autocorrelation domain
US11264043B2 (en) 2012-10-05 2022-03-01 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschunq e.V. Apparatus for encoding a speech signal employing ACELP in the autocorrelation domain
US12002481B2 (en) 2022-01-14 2024-06-04 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus for encoding a speech signal employing ACELP in the autocorrelation domain

Also Published As

Publication number Publication date
EP0749626B1 (fr) 1999-10-20
FR2729245B1 (fr) 1997-04-11
JP3481251B2 (ja) 2003-12-22
DE69604729T2 (de) 2002-07-25
US5717825A (en) 1998-02-10
EP0749626A1 (fr) 1996-12-27
FR2729245A1 (fr) 1996-07-12
CA2182386A1 (fr) 1996-07-11
CA2182386C (fr) 2003-09-09
DE69604729D1 (de) 1999-11-25
KR100389693B1 (ko) 2003-12-01
WO1996021221A1 (fr) 1996-07-11
KR970701901A (ko) 1997-04-12

Similar Documents

Publication Publication Date Title
JPH10502191A (ja) 代数的符号励振線形予測音声符号化方法
Kleijn et al. Improved speech quality and efficient vector quantization in SELP
JP3151874B2 (ja) 音声パラメータ符号化方式および装置
EP1755227B1 (en) Multistage vector quantization for speech encoding
JP3707153B2 (ja) ベクトル量子化方法、音声符号化方法及び装置
US5826224A (en) Method of storing reflection coeffients in a vector quantizer for a speech coder to provide reduced storage requirements
US6510407B1 (en) Method and apparatus for variable rate coding of speech
US6453288B1 (en) Method and apparatus for producing component of excitation vector
US7359855B2 (en) LPAS speech coder using vector quantized, multi-codebook, multi-tap pitch predictor
JP3707154B2 (ja) 音声符号化方法及び装置
EP0514912A2 (en) Speech coding and decoding methods
US20040172402A1 (en) Method and apparatus for fast CELP parameter mapping
JPH0990995A (ja) 音声符号化装置
JPH05216500A (ja) 音声符号化装置
JPH09258795A (ja) ディジタルフィルタおよび音響符号化/復号化装置
JP3095133B2 (ja) 音響信号符号化方法
US7337110B2 (en) Structured VSELP codebook for low complexity search
KR100465316B1 (ko) 음성 부호화기 및 이를 이용한 음성 부호화 방법
US5978758A (en) Vector quantizer with first quantization using input and base vectors and second quantization using input vector and first quantization output
JP2002221998A (ja) 音響パラメータ符号化、復号化方法、装置及びプログラム、音声符号化、復号化方法、装置及びプログラム
KR100576024B1 (ko) 에이켈프 음성 압축기의 코드북 검색 장치 및 방법
JP3192999B2 (ja) 音声符号化方法および音声符号化方法
JP3675054B2 (ja) ベクトル量子化方法、音声符号化方法及び装置、並びに音声復号化方法
JPH03243999A (ja) 音声符号化装置
Patel Low complexity VQ for multi-tap pitch predictor coding

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071010

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081010

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091010

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101010

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111010

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111010

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121010

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121010

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131010

Year of fee payment: 10

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

EXPY Cancellation because of completion of term