JP3954716B2 - Excitation signal encoding apparatus, excitation signal decoding apparatus and method thereof, and recording medium - Google Patents
Excitation signal encoding apparatus, excitation signal decoding apparatus and method thereof, and recording medium Download PDFInfo
- Publication number
- JP3954716B2 JP3954716B2 JP05618098A JP5618098A JP3954716B2 JP 3954716 B2 JP3954716 B2 JP 3954716B2 JP 05618098 A JP05618098 A JP 05618098A JP 5618098 A JP5618098 A JP 5618098A JP 3954716 B2 JP3954716 B2 JP 3954716B2
- Authority
- JP
- Japan
- Prior art keywords
- codebook
- gain
- pulse
- output
- channel
- 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 - Lifetime
Links
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、音声信号を符号化して伝送する移動通信システム等におけるCELP(Code Excited Linear Prediction)型音源信号符号化装置、音源信号復号化装置及びそれらの方法、並びに記録媒体に関するものである。
【0002】
【従来の技術】
ディジタル移動通信や音声蓄積の分野においては、電波や記憶媒体の有効利用を図るために、音声情報を圧縮して高能率で符号化する音声符号化装置が用いられている。そのなかでも、CELP(Code Excited Linear Prediction:符号励振線形予測符号化)方式をベースにした方式が、中・低ビットレートにおいて広く実用化されている。CELP技術については、M.R.Schroeder and B.S.Atal:"Code-Excited Linear Prediction (CELP):High-quality Speech at Very Low Bit Rates",Proc.ICASSP-85, 25.1.1, pp.937-940, 1985"に示されている。
【0003】
CELP型音声符号化方式は、音声をある一定のフレーム長(5ms〜50ms程度)に区切り、各フレーム毎に音声の線形予測を行い、フレーム毎の線形予測による予測残差(励振信号)を既知の波形からなる適応符号ベクトルと雑音符号ベクトルを用いて符号化するものである。適応符号ベクトルは、過去に生成した駆動音源ベクトルを格納している適応符号帳から、雑音符号ベクトルは予め用意された定められた数の定められた形状を有するベクトルを格納している雑音符号帳から、それぞれ選択されて使用される。
【0004】
雑音符号帳に格納される雑音符号ベクトルには、ランダムな雑音系列のベクトルや何本かのパルスを異なる位置に配置することによって生成されるベクトルなどが用いられる。
【0005】
特に後者の代表的な例として1996年にITU−Tで国際標準として勧告されたCS−ACELP(Conjugate Structure and Algebraic CELP)が挙げられる。CS−ACELPの技術については "Recommendation G.729:Coding of Speech at 8 kbit/s using Conjugate-Structure Algebraic-Code-Excited Linear-Prediction (CS-ACELP)", March 1996に示されている。
【0006】
CS−ACELPでは雑音符号帳として代数的符号帳(Algebraic Codebook)を用いている。CS−ACELPの代数的符号帳から生成される雑音符号ベクトルは、40サンプル(5ms)のサブフレーム中に振幅が−1か+1である4本のインパルスが立てられたベクトル(4本のパルスが立てられた位置以外は基本的に全て零)である。振幅の絶対値は1に固定されているので、音源ベクトルを表現するためには、各パルスの位置と極性(正負)のみを表現すれば良い。このため、40(サブフレーム長)次元のベクトルとして符号帳に格納する必要がなく、符号帳格納用のメモリが不要である。また、振幅が1であるパルスが4本しかベクトル中に存在しないため、符号帳探索のための演算量を大幅に削減できるなどの利点を有している。
【0007】
CS−ACELP型符号化装置の従来例を図37を参照して以下に具体的に説明する。
【0008】
図37はCS−ACELP型音声符号化装置の基本的なブロック図を示している。同図において、1は加算器6から出力される過去に生成された駆動音源ベクトルを入力として、歪み最小化器12からの制御信号を受けて乗算器3に適応符号ベクトルを出力する適応符号帳、2は歪み最小化器12からの制御信号を受けて乗算器4に雑音符号ベクトルを出力する代数的符号帳、3はゲイン符号帳8から出力される適応符号利得と適応符号帳1から出力される適応符号ベクトルを入力として乗算を行い、乗算結果を加算器6に出力する乗算器、4はゲイン予測器7から出力される予測ゲインと代数的符号帳2から出力された雑音符号ベクトルとを入力とし、乗算結果を乗算器5に出力する乗算器、5は乗算器4から出力された予測ゲインを乗じた後の雑音符号ベクトルとゲイン符号帳8から出力される雑音符号利得とを入力として乗算を行い、乗算結果を加算器6およびゲイン予測器7にそれぞれ出力する乗算器、6は乗算器3から出力された利得乗算後の適応符号ベクトルと乗算器5から出力された利得乗算後の雑音符号ベクトルとを入力としてベクトル加算を行い、結果を合成フィルタ10と適応符号帳1に出力する加算器、7は乗算器5から出力された利得乗算後の雑音符号ベクトルを入力とし、予測ゲインを乗算器4に出力するゲイン予測器、8は歪み最小化器12からの制御信号によって適応符号利得を乗算器3に、雑音符号利得を乗算器5にそれぞれ出力するゲイン符号帳、9は音声信号を入力として線形予測分析を行い合成フィルタに線形予測係数を出力する線形予測分析器、10は加算器6から出力された駆動音源ベクトルと線形予測分析器9から出力された線形予測係数とを入力として、合成音声信号を加算器11に出力する合成フィルタ、11は入力音声信号と合成フィルタ10から出力される合成音声信号とを入力としてその差を算出する加算器、12は加算器11から出力された誤差信号を入力として符号化歪みを算出し、符号化歪みが最小となるように適応符号帳1と代数的符号帳2とゲイン符号帳8に制御信号を送る符号化歪み最小化器である。なお、歪み最小化器12によって決定された歪みを最小とする適応符号ベクトルのインデックスAと雑音符号ベクトルのインデックスSとゲインベクトルのインデックスGはそれぞれ復号装置に伝送される。また、線形予測分析器によって得られた線形予測係数は量子化された後、量子化線形予測係数Lとして復号装置に伝送される。
【0009】
以下に前記構成のCS−ACELP型音声符号化装置の動作を図37〜44を参照して説明する。
【0010】
まず、図37において、音声信号は線形予測分析器9に入力される。線形予測分析器9は入力音声信号の線形予測分析を行い、合成フィルタ10で必要となる線形予測係数を算出する。算出された線形予測係数は量子化された後、合成フィルタ10に出力される。また、ここで出力される線形予測係数を表す符号Lが復号装置に伝送される。
【0011】
次に、線形予測分析器9から出力された量子化線形予測係数を用いて合成フィルタ10が構成される。歪み最小化器12は適応符号帳1のみを用いて合成フィル10駆動し、最も歪みが小さくなる適応符号ベクトルを適応符号帳1の中から選択する。以後、適応符号帳1から出力される適応符号ベクトルはここで決定された適応符号ベクトルに固定される。
【0012】
続いて、適応符号帳1と代数的符号帳2の両方を用いて合成フィルタ10を駆動する。このとき、適応符号帳1から出力される適応符号ベクトルは既に決定されているので、代数的符号帳2から出力される雑音符号ベクトルを換えていき、歪み最小化器12によって歪みが最小と判定される雑音符号ベクトルを選択する。
【0013】
ここまでの処理で、適応符号帳1から出力される適応符号ベクトルと代数的符号帳2から出力される雑音符号ベクトルとが決定される。
【0014】
最後に適応符号ベクトルに乗ずべき適応符号利得と雑音符号ベクトルに乗ずべき雑音符号利得とが歪み最小化器12によって決定される。ゲイン符号帳8には適応符号利得と雑音符号利得をそれぞれ要素とする2次元ベクトル(ゲインベクトル)が格納されており、歪みを最小とする適応符号利得と雑音符号利得の組合わせを有するゲインベクトルが選択され、適応符号利得の要素が乗算器3へ、雑音符号利得の要素が乗算器5へ出力される。また、選択されたゲインベクトルを表すインデックスGが復号化装置に伝送される。
【0015】
なお、CS−ACELP型音声符号化装置では、雑音符号利得のダイナミックレンジを狭くするために対数領域のパワーをゲイン予測器7によって予測し、その予測残差分をゲイン符号帳8を用いて量子化している。ゲイン予測器7は過去に生成された雑音符号ベクトルのパワーを用いて現在の雑音符号ベクトルのパワーを予測し、予測結果を予測ゲインとして乗算器4へ出力する。
【0016】
代数的符号帳2から出力される雑音符号ベクトルは乗算器4と乗算器5でそれぞれ予測ゲインと雑音符号利得を乗ぜれる。歪み最小化器12は、ゲイン符号帳8の中から最適なゲインベクトルを選択する以前までに決定されている適応符号ベクトルと雑音符号ベクトルと予測ゲインを用いて、合成音声信号の符号化歪みが最小となる適応符号利得と雑音符号利得の組合わせを決定する。
【0017】
以下に、CS−ACELPの特徴の一つである代数的符号帳の構成について図38と図39を参照して説明を加える。
CS−ACELPの代数的符号帳は4チャンネルから構成される。各チャンネルからは振幅が+1か−1である1本のパルスが出力される。各チャンネルから出力されるパルスの位置には制限が加えられていて予め定められた範囲の位置にしかパルスが立てられる事はない。CS−ACELPでは40サンプル(5ms)のサブフレーム単位で励振信号の符号化が行われる。この1サブフレーム内の各サンプル点を表したのが図38(a)である。この40サンプルの点を図38(b)〜(e)の4つのグループに分割する。すなわち、図38(b)は先頭のサンプル点の番号を0として以下順番に1、2、3、…、39としたときにサンプル点の番号が5で割り切れるもの、即ち0、5、10、…、35のサンプル点からなるグループを示している。図38(c)は同様にサンプル点の番号を5で割った場合に1余るもの、即ち1、6、11、…、36のサンプル点から成るグループを示している。図38(d)も同様にサンプル点の番号を5で割った場合に2余るもの、即ち2、7、12、…、27のサンプル点から成るグループを示している。図38(e)も同様にサンプル点の番号を5で割った場合に3または4余るもの、即ち3、8、13、…、38および4、9、14、…、39のサンプル点から成るグループを示している。
これら各グループに含まれるサンプル点の中から1箇所を選んで振幅が+1か−1のパルスを図38(g)〜(j)のように立てる。このようにして立てられた4本のパルスを合わせたものが代数的符号帳から出力される雑音符号ベクトルとなる(図38(f))。
【0018】
このように、代数的符号帳2ではパルスの振幅と位置のみが雑音ベクトルを表現する上で必要となる情報であり、代数的符号帳は図39のように、パルスの振幅情報と位置情報で表される。
次に、各グループの中からパルスの振幅と位置を決める方法を以下に説明する。パルスの振幅は、探索の演算量を大幅に削減するために、位置の探索を行う前に決定される。これは、歪み最小化に用いられる評価関数の各項が全て正になるように決定される。
次に、パルスの位置の探索方法を図40および図41を参照して説明する。
図40はパルスの位置探索に用いられるネスト構造のループをフローチャートで示したものである。図40ではパルス数が3の場合を示している。パルスはチャンネル1から3まで順番に決定されていき、チャンネル1のパルス(パルス1)の位置が決定されるとパルス1のみから計算される歪み最小化に用いられる誤差評価関数が求められ、続いてチャンネル2のパルス(パルス2)の位置が決定されるとパルス1およびパルス2から計算される誤差評価関数が求められる。このようにして、新たなチャンネルのパルスが加わるたびに、新たに加えられたパルスに関係する誤差評価関数の項が付け加えられていくようなネストループ構造で誤差評価関数が求められる。図41は図40をプログラム的に表したものである。
【0019】
前述のようなパルス探索法を実現するパルス探索装置の一例を図42に示す。ここでは、代数的符号帳は3チャンネルであり、パルス数は3本である。図42において、13はパルス1の位置を表すインデックスを出力するパルス1インデックス生成器、14はパルス2の位置を表すインデックスを出力するパルス2インデックス生成器、15はパルス3の位置を表すインデックスrを出力するパルス3インデックス生成器、16はパルス1インデックス生成器13から出力されたパルス1のインデックスを入力としてパルス1のインデックスをパルス1の実際の位置に変換し、歪み評価関数生成器19に出力する第1のインデックス/パルス位置変換器、17は同様にパルス2インデックス生成器14から出力されたパルス2のインデックスを入力としてパルス2のインデックスをパルス2の実際の位置に変換して歪み評価関数生成器19に出力する第2のインデックス/パルス位置変換器2、18は同様にパルス3インデックス生成器15から出力されたパルス3のインデックスを入力としてパルス3のインデックスをパルス3の実際の位置に変換して歪み評価関数生成器19に出力する第3のインデックス/パルス位置変換器3、19は第1のインデックス/パルス位置変換器16と第2のインデックス/パルス位置変換器17と第3のインデックス/パルス位置変換器18とから出力された各パルスの位置を入力として歪み評価関数を計算して歪み評価関数の値とそのときの各パルス位置とを歪み最小化器20に出力する歪み評価関数計算器、20は歪み評価関数計算器19から出力された歪み評価関数値と各パルスの位置を入力として歪みを最小とするパルスの組み合わせを出力する歪み最小化器である。
【0020】
さらに、より長いフレーム(サブフレーム)長に対応するための従来の代数的符号帳の構成例について、図43および図44を参照して説明する。
【0021】
ここでも代数的符号帳のチャンネル数は3で音源パルス数は3である。図43において、まず最初に全探索範囲である1サブフレーム(a)を偶数サンプル点のグループ(b)と奇数サンプル点のグループ(c)の2つに分類する。そして、それぞれのグループ内のサンプル点をさらに3つのグループに分け、それぞれを各チャンネルとしてパルス1〜パルス3の探索位置とする。この3つに分ける方法は、先に示したCS−ACELPの図38に示したものと同様である。
【0022】
このように、各チャンネル毎に探索範囲を限定することに加えて、偶数サンプル点か奇数サンプル点かというモード分けを行うことによって、より少ないビット数で長いサブフレーム内の全てのサンプル点を探索できるようにしている。
【0023】
この場合、代数的符号帳は図44に示されるようになり、パルス振幅とパルス位置情報の他にモード情報が1ビット加わる。このような技術は"Recommendation G.723.1:Dual Rate Speech Coder for Multimedia Communications Transmitting at 5.3 & 6.3 kbit/s", March 1996に示されている。
【0024】
【発明が解決しようとする課題】
しかしながら、上記従来の代数的符号帳を用いた音声符号化装置の更なる低ビットレート化を図るためにフレーム長を長くした場合、パルス探索を行うべきサンプル点の数が増えてしまうため代数的符号帳の各音源パルスの位置を表現するために必要なビット数の確保が難しくなるという問題点があった。
【0025】
本発明は、以上のような実情に鑑みてなされたもので、ビットレートが4kbs程度の低ビットレートの場合において音声品質を向上させることのできる代数的符号帳を用いた音源信号符号化装置、音源信号復号化装置及びそれらの方法、並びに記録媒体を提供することを目的とする。
【0026】
【課題を解決するための手段】
上記目的を達成するために、本発明は代数的符号帳の1つのパルスの位置を表すためにそのパルスに割り当てられたビットの他に少なくとももう一つの別のパルスに割り当てられたビット情報を用いることによって、ビット数の増加なしに、音源パルスの探索範囲を2倍以上の長さに拡大できるようにしたものである。
【0027】
また本発明は、複数種類の代数的符号帳を有する構成とすることにより、ビット数の不十分なパルス数の多い代数的符号帳を有効的に利用してピッチ周期の短い音声の品質を向上するとともに、ビット数の十分なパルス数の少ない代数的符号帳を用いて有声立ち上がり部分等の品質を向上することが出来るようにしたものである。
【0028】
また本発明は、代数的符号帳とランダム雑音符号帳とを併用することによって、音声品質の向上を図ることが出来るようにしたものである。
【0029】
また本発明は、複数種類の代数的符号帳を有する構成において、ビット数の不十分なパルス数の少ないモードでは代数的符号帳の一部を適応符号ベクトルから求められるピッチピーク位置を用いて適応的に変化させることによって音声品質の向上を図ることが出来るようにしたものである。
【0030】
また本発明は、2チャンネル以上から成る雑音符号帳において、各チャンネルの組合わせによって使用する符号帳を切り替えることによって、独立したモード情報無しにモードの切換が行うことが出来るようにしたものであり、各チャンネルの一部を代数的符号帳とすることによって演算量・メモリ量の削減をも図るようにしたものである。
【0031】
また本発明は、2チャンネルから構成される雑音符号帳において、一方のチャンネルに代数的符号帳を他方のチャンネルにランダム雑音符号帳を使用して用いる場合に、ランダム雑音符号帳に格納されている雑音符号ベクトルの基準点を代数的符号帳から出力されているパルスの位置に合わせて使用することによって、ランダム雑音符号帳の利用効率の向上と音声品質の向上を図ることが出来るようにしたものである。
【0032】
【発明の実施の形態】
以下、本発明の実施の形態となる音声符号化装置及び音声復号化装置について、図面を用いて説明する。
【0063】
(実施の形態1)
図1は本発明の実施の形態1にかかる励振信号符号化装置の雑音符号ベクトル生成器を示している。同図に示す雑音符号ベクトル生成器は、ある特定のチャンネルから出力されたインデックスと少なくとももう一つの別のチャンネルから出力されたインデックスとを用いて前記特定のチャンネルから出力される駆動音源ベクトルを決定する機能を有するランダム符号帳を備える。
【0064】
図1において、101はランダム符号帳のチャンネル1から出力される音源パルス(パルス1)の位置を表すインデックスを第1のインデックス/パルス位置変換器104と、第3のインデックス/パルス位置変換器106とに出力するパルス1インデックス生成器、102はランダム符号帳のチャンネル2から出力される音源パルス(パルス2)の位置を表すインデックスを第2のインデックス/パルス位置変換器105と第1のインデックス/パルス位置変換器104とに出力するパルス2インデックス生成器、103はチャンネル3から出力される音源パルス(パルス3)の位置を表すインデックスを第3のインデックス/パルス位置変換器106と第2のインデックス/パルス位置変換器105とに出力するパルス3インデックス生成器、104はパルス1インデックス生成器101とパルス2インデックス生成器102とから出力されたインデックスを入力として、パルス1のパルス位置を歪み評価関数計算器107に出力する第1のインデックス/パルス位置変換器、105はパルス2インデックス生成器102とパルス3インデックス生成器103とから出力されたインデックスを入力として、パルス2のパルス位置を歪み評価関数計算器107に出力する第2のインデックス/パルス位置変換器、106はパルス3インデックス生成器103とパルス1インデックス生成器101とから出力されたインデックスを入力として、パルス3のパルス位置を歪み評価関数計算器107に出力する第3のインデックス/パルス位置変換器、107は第1のインデックス/パルス位置変換器104と第2のインデックス/パルス位置変換器105と第3のインデックス/パルス位置変換器106とから出力された各パルスの位置を入力として歪み評価関数値および各パルスの位置を歪み最小化器108に出力する歪み評価関数計算器、108は歪み評価関数計算器107から出力された歪み評価関数値と各パルスの位置を入力として、歪みが最小となる組合わせを出力する歪み最小化器である。
【0065】
以上のように構成された雑音符号ベクトル生成器の動作について図1〜図5を参照して説明する。
【0066】
図1において、パルス1インデックス生成器101は予め定められたパルス探索位置の中から1個所を選び、その位置を表すインデックスを第1のインデックス/パルス位置変換器104と第3のインデックス/パルス位置変換器106とに出力する。
【0067】
同様にして、パルス2インデックス生成器102は第2のインデックス/パルス位置変換器105と第1のインデックス/パルス位置変換器104に、パルス3インデックス生成器103は第3のインデックス/パルス位置変換器106と第2のインデックス/パルス位置変換器105に、それぞれ各パルスの位置を表すインデックスを出力する。
【0068】
ここで、各パルスが取り得る予め定められた位置は図2に示す様になっている。図2(a)はサブフレーム全体のサンプル点を、図2(b)〜(d)は各チャンネル(パルス1〜3)のパルス探索位置を示している。図2はサブフレーム長が24サンプルの例を示している。
【0069】
例えば、パルス1の探索位置はサブフレーム内のサンプル点に対して先頭から順番に0、1、2、…と番号をつけた場合に、その番号を6で割った余りが0か1であるサンプル点として定められている。パルス2の探索位置は同様にして6で割った余りが2か3、パルス3の探索位置は同様にして6で割った余りが4か5であるサンプル点として定義される。各パルスの位置とインデックスとの対応は図2に示した通りで、例えばパルス1のインデックスが0の場合、パルス1の位置は0または1である。このとき、パルス1が0と1のどちらになるかは、後述するようにパルス2のインデックスによって決定される。
【0070】
続いて、図1において、パルス1インデックス生成器101とパルス2インデックス生成器102とから出力されたパルス1およびパルス2のインデックスは第1のインデックス/パルス位置変換器104に入力され、これら2つのインデックスを用いてパルス1のパルス位置が第1のインデックス/パルス位置変換器104によって決定される。
【0071】
パルス位置の決定方法は以下の通りである。例えば、パルス1インデックス生成器101から出力されたパルス1のインデックスが2であった場合、図2(b)に示したとおり、パルス1の位置は12または13である。ここで、パルス1の位置が12になるか13になるかはパルス2のインデックスによって決定される。パルス2のインデックスが偶数ならばパルス1の位置は12、パルス2のインデックスが奇数ならばパルス1の位置は13になる。同様にしてパルス2の位置は第2のインデックス/パルス位置変換器105によって、パルス3の位置は第3のインデックス/パルス位置変換器106によって、それぞれ決定される。ここで示したような符号帳を表としてまとめたものが図3である。
【0072】
歪み評価関数107は、第1のインデックス/パルス位置変換器104と第2のインデックス/パルス位置変換器105と第3のインデックス/パルス位置変換器106とから出力された各パルスの位置から生成される雑音符号ベクトルを用いた場合に生じる歪みを歪み評価関数を計算することによって定量化する。求められた歪み評価関数は、そのときの各パルスの組合わせとともに歪み最小化器108に出力される。
【0073】
歪み最小化器108は歪みが最小となるパルスの組合わせを出力する。
【0074】
以上の符号帳探索手順をフローチャートで示したものが、図4である。これは従来法のフローチャートである図40と同様のネストループ構造であるが、各パルスの位置が2つのパルスのインデックスが定まらないと決定しないため、最初(パルス1)のループでは誤差評価関数の計算は行わず、2番目(パルス2)のループで最初の誤差評価関数(パルス1成分)が計算され、最後の3番目(パルス3)のループでパルス2成分の誤差評価関数とパルス3成分の誤差評価関数が同時に計算される。図4のフローチャートで表現された符号帳探索手順は図5に示すプログラムで表現することもできる。
【0075】
なお、図1から図5では、雑音符号帳として代数的符号帳を用いた場合を示したが、その他の複数チャンネルを有する雑音符号帳においても各チャンネルの組合わせ情報を利用することが可能である。また、図2ではサブフレーム長(パルスの探索範囲)は24サンプルであるが、より長いサブフレーム長に対して有効である。
【0076】
次に、以上のようなランダム符号帳として隣接チャネル依存型代数的符号帳を備えた音声符号化装置について説明する。
【0077】
図6は隣接チャネル依存型代数的符号帳を備えた音声符号化装置の機能ブロックである。同図において、151は加算器156から出力される過去に生成された駆動音源ベクトルを入力として、歪み最小化器162からの制御信号を受けて乗算器153に適応符号ベクトルを出力する適応符号帳、152は歪み最小化器12からの制御信号を受けて乗算器154に雑音符号ベクトルを出力する本実施の形態に示した図1の動作を行う隣接チャンネル依存型代数的符号帳、153はゲイン符号帳158から出力される適応符号利得と適応符号帳151から出力される適応符号ベクトルを入力として乗算を行い、乗算結果を加算器156に出力する乗算器、154はゲイン予測器157から出力される予測ゲインと隣接チャンネル依存型代数的符号帳152から出力された雑音符号ベクトルとを入力とし、乗算結果を乗算器155に出力する乗算器、155は乗算器154から出力された予測ゲインを乗じた後の雑音符号ベクトルとゲイン符号帳158から出力される雑音符号利得とを入力として乗算を行い、乗算結果を加算器156およびゲイン予測器157にそれぞれ出力する乗算器、156は乗算器153から出力された利得乗算後の適応符号ベクトルと乗算器155から出力された利得乗算後の雑音符号ベクトルとを入力としてベクトル加算を行い、結果を合成フィルタ160と適応符号帳151に出力する加算器、157は乗算器155から出力された利得乗算後の雑音符号ベクトルを入力とし、予測ゲインを乗算器154に出力するゲイン予測器、158は歪み最小化器162からの制御信号によって適応符号利得を乗算器153に、雑音符号利得を乗算器155にそれぞれ出力するゲイン符号帳、159は音声信号を入力として線形予測分析を行い合成フィルタに線形予測係数を出力する線形予測分析器、160は加算器156から出力された駆動音源ベクトルと線形予測分析器159から出力された線形予測係数とを入力として、合成音声信号を加算器161に出力する合成フィルタ、161は入力音声信号と合成フィルタ160から出力される合成音声信号とを入力としてその差を算出する加算器、162は加算器161から出力された誤差信号を入力として符号化歪みを算出し、符号化歪みが最小となるように適応符号帳151と代数的符号帳152とゲイン符号帳158に制御信号を送る符号化歪み最小化器である。
【0078】
なお、歪み最小化器162によって決定された歪みを最小とする適応符号ベクトルのインデックスAと雑音符号ベクトルのインデックスSとゲインベクトルのインデックスGはそれぞれ復号装置に伝送される。また、線形予測分析器によって得られた線形予測係数は量子化された後、量子化線形予測係数Lとして復号装置に伝送される。
【0079】
さらに、本発明の実施の形態における音声復号化装置について、図7を参照してその構成と動作を説明する。
【0080】
図7は本発明の実施の形態における音声復号化装置の機能ブロック図を示している。同図において、171は加算器176から出力される過去に生成された駆動音源ベクトルを入力として、符号化装置から伝送された情報Aで指定される適応符号ベクトルを乗算器173に出力する適応符号帳、172は符号化装置から伝送された情報Sによって指定される雑音符号ベクトルを乗算器174に出力する本実施の形態に示した図2および図3の構成を有する符号化装置と同じ隣接チャンネル依存型代数的符号帳、173はゲイン符号帳178から出力される適応符号利得と適応符号帳171から出力される適応符号ベクトルを入力として乗算を行い、乗算結果を加算器176に出力する乗算器、174はゲイン予測器177から出力される予測ゲインと隣接チャンネル依存型代数的符号帳172から出力された雑音符号ベクトルとを入力とし、乗算結果を乗算器175に出力する乗算器、175は乗算器174から出力された予測ゲインを乗じた後の雑音符号ベクトルとゲイン符号帳178から出力される雑音符号利得とを入力として乗算を行い、乗算結果を加算器176およびゲイン予測器177にそれぞれ出力する乗算器、176は乗算器173から出力された利得乗算後の適応符号ベクトルと乗算器175から出力された利得乗算後の雑音符号ベクトルとを入力としてベクトル加算を行い、結果を合成フィルタ180と適応符号帳171に出力する加算器、177は乗算器175から出力された利得乗算後の雑音符号ベクトルを入力とし、予測ゲインを乗算器174に出力するゲイン予測器、178は符号化装置から伝送された情報Gで指定される適応符号利得を乗算器173に、雑音符号利得を乗算器175にそれぞれ出力するゲイン符号帳、179は符号化装置から伝送される情報Lの復号処理を行い、量子化線形予測係数を求めて合成フィルタ180に出力する線形予測係数復号器、180は加算器176から出力された駆動音源ベクトルと線形予測係数復号器179から出力された量子化線形予測係数とを入力として、合成音声信号を出力する合成フィルタである。なお、合成フィルタから出力された復号音声信号はさらに、聴覚的な品質を高めるためのフィルタ処理等が施されるのが一般的である。
【0081】
以上の様に構成された音声復号化装置の動作を図7を参照して以下に示す。図7において、符号化装置から情報L,A,S,Gが伝送され、それぞれの情報は線形予測係数復号器179、適応符号帳171、隣接チャンネル依存型代数的符号帳172、ゲイン符号帳178に入力される。
【0082】
線形予測係数復号器179は情報Lとして受け取った量子化線形予測係数を復号して、合成フィルタ180に出力する。合成フィルタ180は量子化線形予測係数を用いて構築される。情報Aを受け取った適応符号帳171は情報Aで指定された適応符号ベクトルを適応符号帳から切り出して、乗算器173に出力する。情報Sを受け取った隣接チャンネル依存型代数的符号帳172は情報Sで指定される雑音符号ベクトルを生成し、乗算器174に出力する。乗算器174はゲイン予測器177から出力された予測ゲインを雑音符号ベクトルに乗算して乗算器175に出力する。情報Gを受け取ったゲイン符号帳は、情報Gで指定された量子化ゲインをゲイン符号帳の中から選択して出力する。このとき、適応符号利得を乗算器173に、雑音符号利得を乗算器175に、それぞれ出力する。乗算器173は適応符号帳171から出力された適応符号ベクトルにゲイン符号帳178から出力された適応符号利得を乗じて加算器176に出力する。乗算器175は隣接チャンネル依存型代数的符号帳から出力され乗算器174で予測ゲインを乗ぜられた雑音符号ベクトルにゲイン符号帳178から出力された雑音符号利得を乗じて加算器176に出力する。なお、乗算器175から出力された乗算後の雑音符号ベクトルはゲイン予測器177へも出力される。ゲイン予測器177は過去に乗算器175から出力された雑音符号ベクトルを用いて、現在の雑音符号ベクトルの利得(対数パワー)をMA予測等を用いて予測し、乗算器174に出力する。加算器176は乗算器173から出力された駆動音源信号の適応符号ベクトル成分と、乗算器175から出力された駆動音源信号の雑音符号ベクトル成分との加算を行って駆動音源信号を生成し、合成フィルタ180へ出力する。また、加算器176から出力された駆動信号ベクトルは適応符号帳171へも出力されて、適応符号帳171の更新に用いられる。合成フィルタ180は加算器176から出力される駆動音源から合成信号を合成して出力する。出力音声信号はそのまま復号音声信号として出力しても良いが、一般的には品質が不十分なため、高域強調やピッチ強調やホルマント強調等の後処理を行い、聴感的な品質を向上してから復号音声信号として出力する。
【0083】
このように上記実施の形態によれば、複数チャンネルを有する雑音符号帳において、各チャンネル間の組合わせ情報を用いて雑音符号ベクトルを生成するため、雑音符号帳全体に割り当てられたビットを有効に利用することが出来る。
【0084】
(実施の形態2)
図8は本発明の実施の形態2にかかる、雑音符号帳として2種類の代数的符号帳を備えたCELP型音声信号符号化装置の機能ブロックを示している。図8において、201は過去に生成した駆動音源ベクトルを加算器208から入力して格納し、歪み最小化器214からの制御信号によって適応符号ベクトルを乗算器205に出力する適応符号帳、202は2種類の代数的符号帳から成り、歪み最小化器214からの制御信号によってどちらか一方の代数的符号帳の中から雑音符号ベクトルを出力する雑音符号帳、203は雑音符号帳の一部である第1の代数的符号帳、204は雑音符号帳の一部であり第1の代数的符号帳203とは異なる構造である第2の代数的符号帳、205は適応符号帳201から出力された適応符号ベクトルとゲイン符号帳から出力された適応符号利得とを入力として乗算結果を加算器208に出力する乗算器、206は雑音符号帳202から出力された雑音符号ベクトルとゲイン予測器209から出力された予測ゲインとを入力として乗算結果を乗算器207に出力する乗算器、207は乗算器206から出力された予測ゲイン乗算後の雑音符号ベクトルとゲイン符号帳から出力された雑音符号利得とを入力として乗算結果を加算器208とゲイン予測器209に出力する加算器、208は乗算器205から出力された適応符号利得乗算後の適応符号ベクトルと乗算器207から出力された予測ゲインおよび雑音符号利得乗算後の雑音符号ベクトルとを入力としてベクトル加算結果を合成フィルタ212と適応符号帳201に出力する加算器、209は乗算器207から出力された予測ゲインと雑音符号利得乗算後の雑音符号ベクトルを入力として乗算器206に予測ゲインを出力するゲイン予測器、210は歪み最小化器214からの制御信号によって適応符号利得を乗算器205に、雑音符号利得を乗算器207にそれぞれ出力するゲイン符号帳、211は入力音声信号を入力として線形予測分析および線形予測係数の量子化を行い、量子化線形予測係数を合成フィルタ212に出力する線形予測分析器、212は加算器208から出力される励振ベクトルと線形予測分析器211から出力される量子化線形予測係数とを入力として、合成音声信号を加算器213に出力する合成フィルタ、213は入力音声信号と合成フィルタ212から出力された合成音声信号とを入力としてベクトル減算をおこない結果を歪み最小化器214に出力する加算器、214は加算器213から出力された差分ベクトルから聴覚重みづけ領域等における合成音声信号の入力音声信号に対する歪みを計算し、この歪みが最小となるように適応符号帳201および雑音符号帳202およびゲイン符号帳210の出力を制御する歪み最小化器である。
【0085】
以上のように構成された音声信号符号化装置について、図8〜図10を参照してその動作を説明する。
【0086】
まず、音声信号は線形予測分析器211に入力される。線形予測分析器211は入力音声信号の線形予測分析を行い、合成フィルタ212で必要となる線形予測係数を算出する。算出された線形予測係数は量子化された後、合成フィルタ212に出力される。また、ここで出力される線形予測係数を表す符号Lが復号装置に伝送される。
【0087】
次に、線形予測分析器211から出力された量子化線形予測係数を用いて合成フィルタ212が構成される。この合成フィルタを歪み最小化器214は適応符号帳201のみを用いて駆動し、最も歪みが小さくなる適応符号ベクトルを適応符号帳201の中から選択する。この適応符号帳は音声信号の周期的成分(その周期をピッチ周期と呼ぶ)を表現するものであり、普通1ピッチ周期前の時点から1サブフレーム長のベクトルが切り出される(1ピッチ周期長が1サブフレーム長より短い場合は切り出されたベクトルをピッチ周期で繰り返して1サブフレーム長のベクトルにする)。以後、適応符号帳201から出力される適応符号ベクトルはここで決定された適応符号ベクトルに固定される。
【0088】
続いて、適応符号帳201と雑音符号帳202の両方を用いて合成フィルタ212を駆動する。このとき、適応符号帳201から出力される適応符号ベクトルは既に決定されているので、雑音符号帳202から出力される雑音符号ベクトルを換えていき、歪み最小化器214によって歪みが最小と判定される雑音符号ベクトルを選択する。
【0089】
雑音符号帳202は、第1の代数的符号帳203と第2の代数的符号帳204を備えているので、両代数的符号帳の中から歪みを最小とするものが選択される。ここまでで適応符号帳201から出力される適応符号ベクトルと雑音符号帳202から出力される雑音符号ベクトルとが決定される。
【0090】
最後に適応符号ベクトルに乗ずべき適応符号利得と雑音符号ベクトルに乗ずべき雑音符号利得とが歪み最小化器214によって決定される。ゲイン符号帳210には適応符号利得と雑音符号利得をそれぞれ要素とする2次元ベクトル(ゲインベクトル)が格納されており、歪みを最小とする適応符号利得と雑音符号利得の組合わせを有するゲインベクトルが選択され、適応符号利得の要素が乗算器205へ、雑音符号利得の要素が乗算器207へ出力される。また、選択されたゲインベクトルを表すインデックスGが復号化装置に伝送される。
【0091】
なお、本実施の形態における音声符号化装置では雑音符号利得のダイナミックレンジを狭くするために対数領域のパワーをゲイン予測器209によって予測し、その予測残差分をゲイン符号帳を用いて量子化している。ゲイン予測器209は過去に生成された雑音符号ベクトルのパワーを用いて現在の雑音符号ベクトルのパワーを予測し、予測ゲインとして乗算器206へ出力する。雑音符号帳202から出力される雑音符号ベクトルは乗算器206と乗算器207でそれぞれ予測ゲインと雑音符号利得を乗ぜられる。歪み最小化器214は、ゲイン符号帳210の中から最適なゲインベクトルを選択する以前までに決定されている適応符号ベクトルと雑音符号ベクトルと予測ゲインを用いて、合成音声信号の符号化歪みが最小となる適応符号利得と雑音符号利得の組合わせを決定する。
【0092】
本実施の形態では、代数的符号帳を2種類備えることによって、入力音声の状態に応じてモードを切替えられる構成となっているところに特徴がある。上記雑音符号帳における代数的符号帳の探索方法をフローチャートで示した図が図9である。最初に、3パルスの代数的符号帳の探索を行い、その後2パルスの代数的符号帳の探索をおこなう。また、逆に2パルスの代数的符号帳の探索を先に行ってもよい。代数的符号帳の探索に用いられる誤差評価関数の値は探索前の初期化処理で最小値(0以下の値)に設定されるが、図9においては2パルスの代数的符号帳探索の初期化処理はなく、既に得られている3パルスの代数的符号帳探索において歪み最小化されたときの誤差評価関数が初期値として用いられる。
【0093】
図9において、まず3チャンネルの代数的符号帳で各チャンネルのパルスはチャンネル1から3まで順番に決定されていく。チャンネル1のパルス(パルス1)の位置が決定されるとパルス1のみから計算される歪み最小化に用いられる誤差評価関数が求められ、続いてチャンネル2のパルス(パルス2)の位置が決定されるとパルス1およびパルス2から計算される誤差評価関数が求められる。
このようにして、新たなチャンネルのパルスが加わるたびに、新たに加えられたパルスに関係する誤差評価関数の項が付け加えられていくようなネストループ構造で誤差評価関数が求められ、この誤差を最小とする誤差評価関数値とそのときの各パルスの位置の組合わせが求められる。
実際には(1)式に示されるような誤差評価関数を最大化することによって、誤差の最小化が行われる。
【0094】
【数1】
(1)式において、xはターゲットベクトル、Hは合成フィルタのインパルス応答、ciは雑音符号帳から出力される雑音符号ベクトルをそれぞれ示している。ターゲットベクトルとは、適応符号ベクトルのみで合成フィルタを駆動した場合に合成される信号を入力音声信号から減算し、さらに合成フィルタの零入力応答信号を減算したもので、雑音符号ベクトルで生成されるべき信号のことである。
【0095】
なお、適応符号ベクトルと雑音符号ベクトルの直交化探索を行うなどして、既に決定されている適応符号ベクトルとの組み合わせも考慮した探索を行う場合には、(1)式ではなく適応符号ベクトル成分も評価式に含まれている(2)式を用いることによって、同様の探索を行うことが可能である。
【0096】
【数2】
(2)式において、xはターゲットベクトル(適応符号ベクトルと雑音符号ベクトルを組み合せて作られる駆動音源ベクトルから合成フィルタによって合成されるべきベクトル。(1)式のターゲットベクトルとは異なる。pは適応符号ベクトル、cは雑音符号ベクトル(ciはインデックスiで示される雑音符号ベクトル)、Hは合成フィルタのインパルス応答畳み込み行列である。
【0097】
次に、2チャンネルの代数的符号帳において、各チャンネルのパルス位置が決定される。2チャンネルの代数的符号帳における誤差最小化過程においては、3チャンネルの代数的符号帳探索において最大化された誤差評価関数値を超える誤差評価関数値が得られたときのみ、各パルス位置の更新が行われ、この更新が行われると3チャンネルの代数的符号帳からではなく2チャンネルの代数的符号帳から雑音符号ベクトルが出力されることになる。
【0098】
さらに、2種類の代数的符号帳の構成の一例を図10と図11を用いて以下に説明する。
【0099】
図10および図11はそれぞれ従来例の図43および図44に対応するものであり、図10は各チャンネルのパルス(パルス1〜3またはパルス1、2)のパルス探索位置を示す模式図であり、図11は符号帳を示す表である。これらの図はパルス数が3本と2本のモードを有する場合の例を示している。
【0100】
図43および図44においてはモード情報をパルス位置が偶数サンプル点なのか奇数サンプル点なのかを示すものとして用いていたが、図10および図11ではモード情報を2パルスの代数的符号帳なのか3パルスの代数的符号帳なのかを示すものとして用いている。
【0101】
さらに、図10および図11では代数的符号帳が3パルスである場合には探索位置の範囲をサブフレームの前半部分に集中させている。このことによって、特にピッチ周期化処理を行う(雑音符号ベクトルをピッチ周期で繰り返す処理を行ったり、ピッチ周期を強調するフィルタ処理を雑音符号ベクトルに対して行う)場合においては、1ピッチ周期内のパルス探索の時間的分解能を落とさずに雑音符号ベクトルのパルス数を増やすことができる。
【0102】
また、2パルスの代数的符号帳を備えることによって、位置精度の細かいパルス探索が行えるので有声立ち上がり部等の性能改善が可能となる。
【0103】
本実施の形態の例では説明を簡単にするためサブフレーム長を24としたが、実際にはサブフレーム長が80サンプル程度以上あるような長い場合において上記の有効性を得ることができる。
【0104】
なお、本実施の形態の例においては代数的符号帳の種類は2種類としたが、パルス探索の範囲をもっとサブフレームの先頭部分に集中させてパルス本数を増やした代数的符号帳などを備えるようにして、代数的符号帳の種類を増やす方が有効である場合もある。
【0105】
なお、本実施の形態の例においては、ゲインの量子化においてベクトル量子化と雑音符号ベクトルパワーのバックワード予測を用いているが、スカラ量子化を用いた場合や雑音符号ベクトルパワーのバックワード予測を用いない場合においても本方式は適用できる。
【0106】
また、本実施の形態の例においては、ゲイン符号帳に格納されているベクトルは適応符号利得成分と雑音符号利得成分の2次元ベクトルであるが、音源ベクトルのパワーとそのパワーに占める適応符号ベクトル(または雑音符号ベクトル)の割合とを各要素とするなど他の2要素から成る2次元ベクトルであっても良い。
【0107】
また、本実施の形態における音声復号化装置について図12を参照して説明する。図12は本発明の実施の形態2における音声復号化装置の一例のブロック図を示しており、251は加算器258から出力される過去に生成された駆動音源ベクトルを入力として、符号化装置から伝送された情報Aで指定される適応符号ベクトルを乗算器255に出力する適応符号帳、252は符号化装置から伝送された情報Sによって指定される雑音符号ベクトルを第1の代数的符号帳253または第2の代数的符号帳254の中から取り出して乗算器256に出力する本実施の形態に示した図10および図11の構成を有する符号化装置と同じ雑音符号帳、255はゲイン符号帳260から出力される適応符号利得と適応符号帳251から出力される適応符号ベクトルを入力として乗算を行い、乗算結果を加算器258に出力する乗算器、256はゲイン予測器259から出力される予測ゲインと雑音符号帳252から出力された雑音符号ベクトルとを入力とし、乗算結果を乗算器257に出力する乗算器、257は乗算器256から出力された予測ゲインを乗じた後の雑音符号ベクトルとゲイン符号帳260から出力される雑音符号利得とを入力として乗算を行い、乗算結果を加算器258およびゲイン予測器259にそれぞれ出力する乗算器、258は乗算器255から出力された利得乗算後の適応符号ベクトルと乗算器257から出力された利得乗算後の雑音符号ベクトルとを入力としてベクトル加算を行い、結果を合成フィルタ262と適応符号帳251に出力する加算器、259は乗算器257から出力された利得乗算後の雑音符号ベクトルを入力とし、予測ゲインを乗算器256に出力するゲイン予測器、260は符号化装置から伝送された情報Gで指定される適応符号利得を乗算器255に、雑音符号利得を乗算器257にそれぞれ出力するゲイン符号帳、261は符号化装置から伝送される情報Lの復号処理を行い、量子化線形予測係数を求めて合成フィルタ180に出力する線形予測係数復号器、262は加算器258から出力された駆動音源ベクトルと線形予測係数復号器261から出力された量子化線形予測係数とを入力として、合成音声信号を出力する合成フィルタである。なお、合成フィルタから出力された復号音声信号はさらに、聴覚的な品質を高めるためのフィルタ処理等が施されるのが一般的である。
【0108】
以上の様に構成された音声復号化装置の動作を説明する。符号化装置から情報L,A,S,Gが伝送され、それぞれの情報は線形予測係数復号器261、適応符号帳251、雑音符号帳252、ゲイン符号帳260に入力される。
【0109】
情報Lを受け取った線形予測係数復号器261は量子化線形予測係数を復号して、合成フィルタ262に出力する。合成フィルタ262は量子化線形予測係数を用いて構築される。情報Aを受け取った適応符号帳251はAで指定された適応符号ベクトルを適応符号帳から切り出して、乗算器255に出力する。情報Sを受け取った雑音符号帳252はSで指定される雑音符号ベクトルを第1の代数的符号帳253または第2の代数的符号帳254から生成し、乗算器256に出力する。乗算器256はゲイン予測器259から出力された予測ゲインを雑音符号ベクトルに乗算して乗算器257に出力する。情報Gを受け取ったゲイン符号帳は、Gで指定された量子化ゲインをゲイン符号帳の中から選択して出力する。このとき、適応符号利得を乗算器255に、雑音符号利得を乗算器257に、それぞれ出力する。乗算器255は適応符号帳251から出力された適応符号ベクトルにゲイン符号帳260から出力された適応符号利得を乗じて加算器258に出力する。乗算器257は隣接雑音符号帳252から出力され乗算器256で予測ゲインを乗ぜられた雑音符号ベクトルにゲイン符号帳260から出力された雑音符号利得を乗じて加算器258に出力する。なお、乗算器257から出力された乗算後の雑音符号ベクトルはゲイン予測器259へも出力される。
【0110】
ゲイン予測器259は過去に乗算器257から出力された雑音符号ベクトルを用いて、現在の雑音符号ベクトルの利得(対数パワー)をMA予測等を用いて予測し、乗算器256に出力する。加算器258は乗算器255から出力された駆動音源信号の適応符号ベクトル成分と、乗算器257から出力された駆動音源信号の雑音符号ベクトル成分との加算を行って駆動音源信号を生成し、合成フィルタ262へ出力する。また、加算器258から出力された駆動信号ベクトルは適応符号帳251へも出力されて、適応符号帳251の更新に用いられる。合成フィルタ262は加算器258から出力される駆動音源から合成信号を合成して出力する。出力音声信号はそのまま復号音声信号として出力しても良いが、一般的には品質が不十分なため、高域強調やピッチ強調やホルマント強調等の後処理を行い、聴感的な品質を向上してから復号音声信号として出力する。
【0111】
このように、上記実施の形態2によれば、代数的符号帳を複数種類備え、それぞれの代数的符号帳を入力音声信号の特徴に応じて切替えられるような構成とすることによって、少ないビット数の場合でも音声信号の符号化性能を改善できるものである。
【0112】
(実施の形態3)
図13は本発明の実施の形態3にかかる、雑音符号帳として代数的符号帳とランダム雑音符号帳とを併用する音声信号符号化装置の機能ブロックを示す。
【0113】
図13において、301は過去に生成した駆動音源ベクトルを加算器308から入力して格納し、歪み最小化器314からの制御信号によって適応符号ベクトルを乗算器305に出力する適応符号帳、302は2種類の雑音符号帳から成り、歪み最小化器314からの制御信号によってどちらか一方の雑音符号帳の中から雑音符号ベクトルを出力する雑音符号帳、303は雑音符号帳302の一部である代数的符号帳、304は雑音符号帳302の一部であり代数的符号帳303とは異なる構造の代数的符号帳と代数的符号帳ではないランダム符号帳から成る雑音符号帳、305は適応符号帳301から出力された適応符号ベクトルとゲイン符号帳から出力された適応符号利得とを入力として乗算結果を加算器308に出力する乗算器、306は雑音符号帳302から出力された雑音符号ベクトルとゲイン予測器309から出力された予測ゲインとを入力として乗算結果を乗算器307に出力する乗算器、307は乗算器306から出力された予測ゲイン乗算後の雑音符号ベクトルとゲイン符号帳から出力された雑音符号利得とを入力として乗算結果を加算器308とゲイン予測器309に出力する加算器、308は乗算器305から出力された適応符号利得乗算後の適応符号ベクトルと乗算器307から出力された予測ゲインおよび雑音符号利得乗算後の雑音符号ベクトルとを入力としてベクトル加算結果を合成フィルタ312と適応符号帳301に出力する加算器、309は乗算器307から出力された予測ゲインと雑音符号利得乗算後の雑音符号ベクトルを入力として乗算器306に予測ゲインを出力するゲイン予測器、310は歪み最小化器314からの制御信号によって適応符号利得を乗算器305に、雑音符号利得を乗算器307にそれぞれ出力するゲイン符号帳、311は入力音声信号を入力として線形予測分析および線形予測係数の量子化を行い、量子化線形予測係数を合成フィルタ312に出力する線形予測分析器、312は加算器308から出力される励振ベクトルと線形予測分析器311から出力される量子化線形予測係数とを入力として、合成音声信号を加算器313に出力する合成フィルタ、313は入力音声信号と合成フィルタ312から出力された合成音声信号とを入力としてベクトル減算をおこない結果を歪み最小化器314に出力する加算器、314は加算器313から出力された差分ベクトルから聴覚重みづけ領域等における合成音声信号の入力音声信号に対する歪みを計算し、この歪みが最小となるように適応符号帳301および雑音符号帳302およびゲイン符号帳310の出力を制御する歪み最小化器である。
【0114】
以上のように構成された音声信号符号化装置について、図13〜図19を参照してその動作を説明する。
【0115】
まず、音声信号は線形予測分析器311に入力される。線形予測分析器311は入力音声信号の線形予測分析を行い、合成フィルタ312で必要となる線形予測係数を算出する。算出された線形予測係数は量子化された後、合成フィルタ312に出力される。また、ここで出力される線形予測係数を表す符号Lが復号装置に伝送される。
【0116】
次に、線形予測分析器311から出力された量子化線形予測係数を用いて合成フィルタ312が構成される。この合成フィルタを歪み最小化器314は適応符号帳301のみを用いて駆動し、最も歪みが小さくなる適応符号ベクトルを適応符号帳301の中から選択する。この適応符号帳は音声信号の周期的成分(その周期をピッチ周期と呼ぶ)を表現するものであり、普通1ピッチ周期前の時点から1サブフレーム長のベクトルが切り出される(1ピッチ周期長が1サブフレーム長より短い場合は切り出されたベクトルをピッチ周期で繰り返して1サブフレーム長のベクトルにする)。選択された適応符号ベクトルを表すインデックスAが復号器側へ伝送される。以後、適応符号帳301から出力される適応符号ベクトルはここで決定された適応符号ベクトルに固定される。
【0117】
続いて、適応符号帳301と雑音符号帳302の両方を用いて合成フィルタ312を駆動する。このとき、適応符号帳301から出力される適応符号ベクトルは既に決定されているので、雑音符号帳302から出力される雑音符号ベクトルを換えていき、歪み最小化器314によって歪みが最小と判定される雑音符号ベクトルを選択する。
【0118】
雑音符号帳302は代数的符号帳303と代数的符号帳および代数的符号帳ではないランダム符号帳から成る雑音符号帳304を備えている。両符号帳の中から歪みを最小とするものが選択される。選択された雑音符号ベクトルを表すインデックスSが復号器側へ伝送される。ここまでで適応符号帳301から出力される適応符号ベクトルと雑音符号帳302から出力される雑音符号ベクトルとが決定される。最後に適応符号ベクトルに乗ずるべき適応符号利得と雑音符号ベクトルに乗ずるべき雑音符号利得とが歪み最小化器314によって決定される。ゲイン符号帳310には適応符号利得と雑音符号利得をそれぞれ要素とする2次元ベクトル(ゲインベクトル)が格納されており、歪みを最小とする適応符号利得と雑音符号利得の組合わせを有するゲインベクトルが選択され、適応符号利得の要素が乗算器305へ、雑音符号利得の要素が乗算器307へ出力される。また、選択されたゲインベクトルを表すインデックスGが復号化装置に伝送される。なお、本実施の形態における音声符号化装置では雑音符号利得のダイナミックレンジを狭くするために対数領域のパワーをゲイン予測器309によって予測し、その予測残差分をゲイン符号帳を用いて量子化している。ゲイン予測器309は過去に生成された雑音符号ベクトルのパワーを用いて現在の雑音符号ベクトルのパワーを予測し、予測ゲインとして乗算器306へ出力する。雑音符号帳302から出力される雑音符号ベクトルは乗算器306と乗算器307でそれぞれ予測ゲインと雑音符号利得を乗ぜられる。歪み最小化器314は、ゲイン符号帳310の中から最適なゲインベクトルを選択する以前までに決定されている適応符号ベクトルと雑音符号ベクトルと予測ゲインを用いて、合成音声信号の符号化歪みが最小となる適応符号利得と雑音符号利得の組合わせを決定する。
【0119】
上記動作は、2種類ある雑音符号帳の片方が代数的符号帳と代数的符号帳でないランダム符号帳から構成されている点を除けば、実施の形態2と同じである。代数的符号帳の一部として代数的符号帳でないランダム符号帳を備えることによって、より様々な入力音声の状態に応じたモードを持つことができる構成となっているところに特徴がある。
【0120】
上記雑音符号帳の探索方法をフローチャートで示した図が図14である。図14は実施の形態3のフローチャートである図9の2パルス代数的符号帳の部分を書き換えたものである。最初に、3パルスの代数的符号帳の探索を行い、その後2パルスの代数的符号帳の探索および代数的符号帳の第1チャンネルとランダム符号帳の第2チャンネルとを組合わせた探索および雑音符号帳の第1チャンネルと代数的符号帳の第2チャンネルとを組合わせた探索および雑音符号帳の第1チャンネルと雑音符号帳の第2チャンネルとを組合わせた探索をおこなう。これらの符号帳の探索の順番は他に考えられるいずれの順番でもよい。図14の2パルス代数的符号帳探索315および(代数的符号帳の第1チャンネル+ランダム符号帳の第2チャンネル)探索316および(ランダム符号帳の第1チャンネル+代数的符号帳の第2チャンネル)探索317および(ランダム符号帳の第1チャンネル+ランダム符号帳の第2チャンネル)探索318の内容を表すフローチャートを図15および図16および図17および図18にそれぞれ示す。図15に示した2パルス代数的符号帳の探索は、実施の形態2で示した2パルス代数的符号帳の探索部分と同様である。即ち、各チャンネルのパルスはチャンネル1から2まで順番に決定されていく。チャンネル1のパルス(パルス1)の位置が決定されるとパルス1のみから計算される歪み最小化に用いられる誤差評価関数が求められ、続いてチャンネル2のパルス(パルス2)の位置が決定されるとパルス1およびパルス2から計算される誤差評価関数が求められる。このようにして、新たなチャンネルのパルスが加わるたびに、新たに加えられたパルスに関係する誤差評価関数の項が付け加えられていくようなネストループ構造で誤差評価関数が求められ、誤差を最小とする誤差評価関数値とそのときの各パルスの位置の組合わせが求められる。実際には、(1)式に示されるような誤差評価関数を最大化することによって、誤差の最小化が行われる。
【0121】
ここで得られた2パルス代数的符号帳における最適出力雑音符号ベクトルは図14中319の最適モードの選択において2パルス代数的符号帳から出力された候補として用いられる。
【0122】
図16は(代数的符号帳の第1チャンネル+ランダム符号帳の第2チャンネル)の探索のフローチャートを示している。まず、代数的符号帳の第1チャンネル(2パルス代数的符号帳のうちの1チャンネル)から誤差評価関数の分子項を大きくするもの上位N候補を選択する。Nは許容演算量によって決定される。
【0123】
次に、ランダム符号帳の第2チャンネルの中から誤差評価関数の分子項を大きくするもの上位M候補を選択する。Mは許容演算量によって決定され、Nと等しくても等しくなくても良い。そして、誤差評価関数の分子項のみの評価によって選ばれた1パルス代数的符号帳からのN候補の雑音ベクトルと、ランダム符号帳の第2チャンネルから選ばれたM候補の雑音ベクトルとを組合わせた場合の誤差評価関数の分子および分母項をそれぞれの組合わせについて計算し、誤差評価関数を最大化することによって、合成音声と入力音声との誤差の最小化を行う。誤差が最小になると判断された組合わせによって生成される雑音符号ベクトルは図14中319の最適モードの選択において(代数的符号帳の第1チャンネル+ランダム符号帳の第2チャンネル)モードから出力された候補として用いられる。
図17は図16におけるそれぞれのチャンネルを反対にしたもので、ランダム符号帳の第1チャンネルと代数的符号帳の第2チャンネルとを組合わせるモードにおける、符号帳探索のフローチャートを示した図である。
【0124】
まず、ランダム符号帳の第1チャンネルから誤差評価関数の分子項を大きくする上位M候補を候補1として選択する。つぎに、代数的符号帳の第2チャンネルから誤差評価関数の分子項を大きくする上位N候補を候補2として選択する。その後、候補1と候補2のM×Nの組合わせにおいて、誤差評価関数の分子および分母項をそれぞれ計算し、誤差評価関数の値を最大化して歪みが最小となる組合わせを決定する。決定された組み合わせから得られる雑音符号ベクトルは、図14中319の最適モードの選択において(ランダム符号帳の第1チャンネル+代数的符号帳の第2チャンネル)モードから出力された候補として用いられる。
【0125】
図18は図16または図17に示した代数的符号帳の部分をランダム符号帳の探索ループに置き換えたものである。即ち、ランダム符号帳の第1チャンネルと第2チャンネルから出力される雑音符号ベクトルを組合わせた場合の最適雑音符号ベクトルを選択するフローチャートを示している。
【0126】
最初に、ランダム符号帳の第1チャンネルから誤差評価関数の分子項を大きくするもの上位M候補が候補1として選択される。次に、ランダム符号帳の第2チャンネルから同様にして誤差関数の分子項を大きくする上位M候補の雑音符号ベクトルが候補2として選択される。そして、候補1と候補2のM×M通りの組合わせにおいて、組合わせた結果得られる雑音符号ベクトルを用いた場合の誤差評価関数の分子および分母項をそれぞれ求めて誤差評価関数を計算する。このM×M候補の中から誤差評価関数を最大とする、即ち歪みを最小とする組合わせを選択し、(ランダム符号帳の第1チャンネル+ランダム符号帳の第2チャンネル)モードの最適雑音符号ベクトルとして決定する。この決定された雑音符号ベクトルは、(ランダム符号帳の第1チャンネル+ランダム符号帳の第2チャンネル)モードから出力された候補として、図14中319の最適モードの選択において用いられる。そして、図14の319においては、各モード(2パルス/1パルス+ランダム/ランダム+1パルス/ランダム+ランダム)の中から誤差評価関数が最も大きい、即ち歪みが最も小さくなる雑音符号ベクトルを、2チャンネルモードの最適雑音符号ベクトルとして選び出す。さらに、これを先に決定されている3チャンネルモードの最適雑音符号ベクトルと比較し、誤差評価関数を大きくする、即ち歪みが小さくなる方のモードを選択し、図13における雑音符号帳302からの出力雑音符号ベクトルを決定する。
【0127】
このような雑音符号帳302の具体例を示す表を図19に示す。この例ではサブフレーム長(雑音符号ベクトルのベクトル次元数)を80としている。3チャンネルモードか2チャンネルモードかを示すビットに1ビット、各チャンネルの極性を表すために1ビット/チャンネル、残りのビット数をパルス位置または雑音符号帳を表すインデックス情報に用いて、合計15ビットを用いている。表中のパルス探索位置欄にある数値は、サブフレームの先頭を0としたサンプル点の位置であり、2チャンネルモードのパルス探索位置欄にあるRA01〜RA24およびRB01〜RB24は、各チャンネル内の雑音帳のインデックスを示している。
【0128】
この符号帳の2チャンネル雑音符号帳部(図13における304)の構成を図示したのが図20である。以下に図20を参照して本2チャンネル雑音符号帳部の構成および動作を説明する。図20において、320は雑音符号帳の第1チャンネルであり、代数的符号帳の第1チャンネル322とランダム符号帳の第1チャンネル323から構成されている。代数的符号帳の第1チャンネル322は加算器326と加算器327に雑音符号ベクトルを出力し、ランダム符号帳の第1チャンネル323は加算器328と加算器329に雑音符号ベクトルを出力する。一方、321は雑音符号帳の第2チャンネルであり、代数的符号帳の第2チャンネル324とランダム符号帳の第2チャンネル325から構成されている。代数的符号帳の第2チャンネル324は加算器326と加算器328に雑音符号ベクトルを出力し、ランダム符号帳の第2チャンネル325は加算器327と加算器329に雑音符号ベクトルを出力する。加算器326〜329は入力された2つの雑音符号ベクトルを加算し、スイッチ330に出力する。スイッチ330は加算器326〜329から出力された雑音符号ベクトルの中から最適な雑音符号ベクトルを選択して出力する。ここで、加算器326に入力される代数的符号帳の第1チャンネル322からの雑音符号ベクトルと代数的符号帳の第2チャンネル324からの雑音符号ベクトルはその組合わせにおいて最適であるベクトルであり、加算器327に入力される代数的符号帳の第1チャンネル322からの雑音符号ベクトルとランダム符号帳の第2チャンネル325からの雑音符号ベクトルはその組合わせにおいて最適であるベクトルであり、加算器328に入力されるランダム符号帳の第1チャンネル323からの雑音符号ベクトルと代数的符号帳第2チャンネル324からの雑音符号ベクトルはその組合わせにおいて最適であるベクトルであり、加算器329に入力されるランダム符号帳の第1チャンネル323からの雑音符号ベクトルとランダム符号帳の第2チャンネル325からの雑音符号ベクトルはその組合わせにおいて最適であるベクトルである。また、スイッチ330は専用の切換情報によって切り替わるのではなく、チャンネル1の雑音符号帳320とチャンネル2の雑音符号帳321の組合わせによって切り替わる。
【0129】
なお、上記の代数的符号帳でないランダム符号帳としては、白色雑音的な雑音符号帳や学習によって最適化された符号帳、さらにはこれらのような符号帳をスパース構造としたものなどが使用可能であり、特にスパース構造としたものは演算量の面から有効である。また、学習型の符号帳では学習による性能改善が得られる。さらに、雑音符号帳の一部を学習型の符号帳、残りの部分をランダム雑音符号帳とすると、雑音耐性の向上と学習による性能改善の両方の効果を得ることも可能である。
【0130】
また、本実施の形態における音声復号化装置について図21を参照して説明する。図21は実施の形態3における音声復号化装置の一例のブロック図を示しており、351は加算器358から出力される過去に生成された駆動音源ベクトルを入力として、符号化装置から伝送された情報Aで指定される適応符号ベクトルを乗算器355に出力する適応符号帳、352は符号化装置から伝送された情報Sによって指定される雑音符号ベクトルを代数的符号帳353または代数的符号帳と代数的符号帳ではないランダム符号帳から成る雑音符号帳354の中から取り出して乗算器356に出力する本実施の形態に示した図19および図20の構成を有する符号化装置と同じ雑音符号帳、355はゲイン符号帳360から出力される適応符号利得と適応符号帳351から出力される適応符号ベクトルを入力として乗算を行い、乗算結果を加算器358に出力する乗算器、356はゲイン予測器359から出力される予測ゲインと雑音符号帳352から出力された雑音符号ベクトルとを入力とし、乗算結果を乗算器357に出力する乗算器、357は乗算器356から出力された予測ゲインを乗じた後の雑音符号ベクトルとゲイン符号帳360から出力される雑音符号利得とを入力として乗算を行い、乗算結果を加算器358およびゲイン予測器359にそれぞれ出力する乗算器、358は乗算器355から出力された利得乗算後の適応符号ベクトルと乗算器357から出力された利得乗算後の雑音符号ベクトルとを入力としてベクトル加算を行い、結果を合成フィルタ362と適応符号帳351に出力する加算器、359は乗算器357から出力された利得乗算後の雑音符号ベクトルを入力とし、予測ゲインを乗算器356に出力するゲイン予測器、360は符号化装置から伝送された情報Gで指定される適応符号利得を乗算器355に、雑音符号利得を乗算器357にそれぞれ出力するゲイン符号帳、361は符号化装置から伝送される情報Lの復号処理を行い、量子化線形予測係数を求めて合成フィルタ380に出力する線形予測係数復号器、362は加算器358から出力された駆動音源ベクトルと線形予測係数復号器361から出力された量子化線形予測係数とを入力として、合成音声信号を出力する合成フィルタである。なお、合成フィルタから出力された復号音声信号はさらに、聴覚的な品質を高めるためのフィルタ処理等が施されるのが一般的である。
【0131】
以上の様に構成された音声復号化装置の動作を図21を参照して以下に示す。図21において、符号化装置から情報L,A,S,Gが伝送され、それぞれの情報は線形予測係数復号器361、適応符号帳351、雑音符号帳352、ゲイン符号帳360に入力される。情報Lを受け取った線形予測係数復号器361は量子化線形予測係数を復号して、合成フィルタ362に出力する。合成フィルタ362は量子化線形予測係数を用いて構築される。情報Aを受け取った適応符号帳351はAで指定された適応符号ベクトルを適応符号帳から切り出して、乗算器355に出力する。情報Sを受け取った雑音符号帳352はSで指定される雑音符号ベクトルを代数的符号帳353または代数的符号帳とランダム符号帳とから成る雑音符号帳354から生成し、乗算器356に出力する。乗算器356はゲイン予測器359から出力された予測ゲインを雑音符号ベクトルに乗算して乗算器357に出力する。情報Gを受け取ったゲイン符号帳は、Gで指定された量子化ゲインをゲイン符号帳の中から選択して出力する。このとき、適応符号利得を乗算器355に、雑音符号利得を乗算器357に、それぞれ出力する。乗算器355は適応符号帳351から出力された適応符号ベクトルにゲイン符号帳360から出力された適応符号利得を乗じて加算器358に出力する。乗算器357は隣接雑音符号帳352から出力され乗算器356で予測ゲインを乗ぜられた雑音符号ベクトルにゲイン符号帳360から出力された雑音符号利得を乗じて加算器358に出力する。なお、乗算器357から出力された乗算後の雑音符号ベクトルはゲイン予測器359へも出力される。ゲイン予測器359は過去に乗算器357から出力された雑音符号ベクトルを用いて、現在の雑音符号ベクトルの利得(対数パワー)をMA予測等を用いて予測し、乗算器356に出力する。加算器358は乗算器355から出力された駆動音源信号の適応符号ベクトル成分と、乗算器357から出力された駆動音源信号の雑音符号ベクトル成分との加算を行って駆動音源信号を生成し、合成フィルタ362へ出力する。また、加算器358から出力された駆動信号ベクトルは適応符号帳へも出力されて、適応符号帳の更新に用いられる。合成フィルタ362は加算器358から出力される駆動音源から合成信号を合成して出力する。出力音声信号はそのまま復号音声信号として出力しても良いが、一般的には品質が不十分なため、高域強調やピッチ強調やホルマント強調等の後処理を行い、聴感的な品質を向上してから復号音声信号として出力する。
【0132】
このように、上記実施の形態3によれば、代数的符号帳の一部に代数的符号帳でない雑音符号帳を備えることにより、代数的符号帳のみでは向上できない音声符号化性能の向上を図ることが可能となる。
【0133】
(実施の形態4)
図22は本発明の実施の形態4にかかる音声符号化装置の機能ブロックを示したものである。実施の形態4にかかる音声符号化装置は、複数種類の代数的符号帳を有する構成において、ビット数の不十分なパルス数の少ないモードでは代数的符号帳の一部を適応符号ベクトルから求められるピッチピーク位置を用いて適応的に変化させることによって音声品質の向上を図ることが出来るようにした。図22において、401は過去に生成した駆動音源ベクトルを加算器408から入力して格納し、歪み最小化器414からの制御信号によって適応符号ベクトルを乗算器405および代数的符号帳+位相適応型代数的符号帳403に出力する適応符号帳、402は2種類の雑音符号帳から成り、歪み最小化器414からの制御信号によってどちらか一方の雑音符号帳の中から雑音符号ベクトルを出力する雑音符号帳、403は雑音符号帳402の一部である位相適応型部分を有する代数的符号帳、404は雑音符号帳402の一部であり代数的符号帳403とは異なる構造の代数的符号帳と代数的符号帳ではないランダム符号帳から成る雑音符号帳、405は適応符号帳401から出力された適応符号ベクトルとゲイン符号帳から出力された適応符号利得とを入力として乗算結果を加算器408に出力する乗算器、406は雑音符号帳402から出力された雑音符号ベクトルとゲイン予測器409から出力された予測ゲインとを入力として乗算結果を乗算器407に出力する乗算器、407は乗算器406から出力された予測ゲイン乗算後の雑音符号ベクトルとゲイン符号帳から出力された雑音符号利得とを入力として乗算結果を加算器408とゲイン予測器409に出力する加算器、408は乗算器405から出力された適応符号利得乗算後の適応符号ベクトルと乗算器407から出力された予測ゲインおよび雑音符号利得乗算後の雑音符号ベクトルとを入力としてベクトル加算結果を合成フィルタ412と適応符号帳401に出力する加算器、409は乗算器407から出力された予測ゲインと雑音符号利得乗算後の雑音符号ベクトルを入力として乗算器406に予測ゲインを出力するゲイン予測器、410は歪み最小化器414からの制御信号によって適応符号利得を乗算器405に、雑音符号利得を乗算器407にそれぞれ出力するゲイン符号帳、411は入力音声信号を入力として線形予測分析および線形予測係数の量子化を行い、量子化線形予測係数を合成フィルタ412に出力する線形予測分析器、412は加算器408から出力される励振ベクトルと線形予測分析器411から出力される量子化線形予測係数とを入力として、合成音声信号を加算器413に出力する合成フィルタ、413は入力音声信号と合成フィルタ412から出力された合成音声信号とを入力としてベクトル減算をおこない結果を歪み最小化器414に出力する加算器、414は加算器413から出力された差分ベクトルから聴覚重みづけ領域等における合成音声信号の入力音声信号に対する歪みを計算し、この歪みが最小となるように適応符号帳401および雑音符号帳402およびゲイン符号帳410の出力を制御する歪み最小化器である。
【0134】
以上のように構成された音声信号符号化装置について、図22〜図25を参照してその動作を説明する。
【0135】
まず、図22において、音声信号は線形予測分析器411に入力される。線形予測分析器411は入力音声信号の線形予測分析を行い、合成フィルタ412で必要となる線形予測係数を算出する。算出された線形予測係数は量子化された後、合成フィルタ412に出力される。また、ここで出力される線形予測係数を表す符号Lが復号装置に伝送される。
【0136】
次に、線形予測分析器411から出力された量子化線形予測係数を用いて合成フィルタ412が構成される。この合成フィルタを歪み最小化器414は適応符号帳401のみを用いて駆動し、最も歪みが小さくなる適応符号ベクトルを適応符号帳401の中から選択する。この適応符号帳は音声信号の周期的成分(その周期をピッチ周期と呼ぶ)を表現するものであり、普通1ピッチ周期前の時点から1サブフレーム長のベクトルが切り出される(1ピッチ周期長が1サブフレーム長より短い場合は切り出されたベクトルをピッチ周期で繰り返して1サブフレーム長のベクトルにする)。選択された適応符号ベクトルを表すインデックスAが復号器側へ伝送される。以後、適応符号帳401から出力される適応符号ベクトルはここで決定された適応符号ベクトルに固定される。続いて、適応符号帳401と雑音符号帳402の両方を用いて合成フィルタ412を駆動する。このとき、適応符号帳401から出力される適応符号ベクトルは既に決定されているので、雑音符号帳402から出力される雑音符号ベクトルを換えていき、歪み最小化器414によって歪みが最小と判定される雑音符号ベクトルを選択する。
【0137】
雑音符号帳402は位相適応型部分を備える代数的符号帳403と代数的符号帳および代数的符号帳ではないランダム符号帳からなる雑音符号帳404を備えているので、両符号帳の中から歪みを最小とするものが選択される。
【0138】
なお、位相適応型部分の代数的符号帳は適応符号帳から出力された適応符号ベクトルおよびピッチ周期を入力として生成される。選択された雑音符号ベクトルを表すインデックスSは復号器側へ伝送される。ここまでで適応符号帳401から出力される適応符号ベクトルと雑音符号帳402から出力される雑音符号ベクトルとが決定される。最後に適応符号ベクトルに乗ずるべき適応符号利得と雑音符号ベクトルに乗ずるべき雑音符号利得とが歪み最小化器414によって決定される。ゲイン符号帳410には適応符号利得と雑音符号利得をそれぞれ要素とする2次元ベクトル(ゲインベクトル)が格納されており、歪みを最小とする適応符号利得と雑音符号利得の組合わせを有するゲインベクトルが選択され、適応符号利得の要素が乗算器405へ、雑音符号利得の要素が乗算器407へ出力される。また、選択されたゲインベクトルを表すインデックスGが復号化装置に伝送される。
【0139】
なお、本実施の形態における音声符号化装置では雑音符号利得のダイナミックレンジを狭くするために対数領域のパワーをゲイン予測器409によって予測し、その予測残差分をゲイン符号帳を用いて量子化している。
【0140】
ゲイン予測器409は過去に生成された雑音符号ベクトルのパワーを用いて現在の雑音符号ベクトルのパワーを予測し、予測ゲインとして乗算器406へ出力する。雑音符号帳402から出力される雑音符号ベクトルは乗算器406と乗算器407でそれぞれ予測ゲインと雑音符号利得を乗ぜられる。歪み最小化器414は、ゲイン符号帳410の中から最適なゲインベクトルを選択する以前までに決定されている適応符号ベクトルと雑音符号ベクトルと予測ゲインを用いて、合成音声信号の符号化歪みが最小となる適応符号利得と雑音符号利得の組合わせを決定する。
【0141】
図23は図22の位相適応型部分を有する代数的符号帳403の構成例を示したものである。図23を用いて以下にその構成と動作を説明する。図において415〜418はパルス1の符号帳A〜D、419〜422はパルス2の符号帳A〜D、423〜426はパルス3の符号帳A〜Dであり、各パルス符号帳の出力はスイッチ429を介して加算器430に入力される。スイッチ429は3つの連動するスイッチであり、位相適応位置判定器428から出力される信号によって、各パルス符号帳のA〜Dのいずれかを選択して加算器430と接続する。即ち、パルス1の符号帳Aが選択される場合は、パルス2および3の符号帳も符号帳Aが選択される。加算器430はスイッチ429から出力される3つの符号帳出力のベクトル加算を行い、雑音符号ベクトルとして出力する。一方、ピッチピーク位置検出器427は、適応符号ベクトルおよびピッチ周期を入力として、サブフレーム内の先頭にあるピッチピーク位置を求め、位相適応位置判定器428に出力する。ピッチピーク位置の求めかたは、ピッチ周期で並べたインパルス列と適応符号ベクトルとの相互相関関数を最大にする位置を求める等の方法がある。その他の求めかたとしては、間野、守谷:“位相適応型PSI−CELP音声符号化の検討”、電子情報通信学会、技術報告SP94−96(1995年2月)に述べられているように、ピッチ周期で並べたインパルス列で合成フィルタを駆動したものと適応符号ベクトルで合成フィルタを駆動したものとの相互相関を最大化する方法がある。ピッチピーク位置が求められると、その位置に応じて切替えて使用すべき符号帳を位相適応位置判定器428が決定し、スイッチ429に対して切り替えるための信号を送出する。
【0142】
なお、図23ではパルス1、2、3の符号帳A〜Dは全く別のブロックとして示しているが、各パルスの符号帳A〜Dの一部は共有された符号帳である。即ち、図22の403に示したとおり、固定の代数的符号帳と位相位置によって適応的に切り替わる代数的符号帳から構成されており、図23では便宜上別々のブロックとしている。この代数的符号帳について、図24を用いて説明する。
【0143】
図24は本実施の形態に用いられる、位相適応型部分を有する代数的符号帳の一例を示している。図24(a)は適応符号帳から出力された適応符号ベクトル(1サブフレーム分)を示しており、(b)は1サブフレームをA〜Dの4領域に分割した様子を示しており、(c)は代数的符号帳の固定部分と位相適応部分を示している。図24(c)において、▲6▼の部分は固定された代数的符号帳の部分であり、この部分はピッチピークの位置に関係なく常に探索される。この例では固定部分の代数的符号帳では偶数サンプル点の探索に用いられている。これに対して、▲5▼の部分は従来法において固定部分であったところを固定部分から外した部分である。この外した部分に割り当てられていた情報を位相適応型部分に割り当てている。即ち、従来▲5▼の部分に探索位置が固定されていたものを、ピッチピークの位置によって▲1▼〜▲4▼のいずれかの部分を探索するように切り替えるようにしている。この部分を位相によって適応的に切り替わる部分、という意味で位相適応型部分と呼ぶ。この例では▲4▼の部分を除いて、位相適応型部分の代数的符号帳では奇数サンプル点の探索に用いられている。▲4▼の部分は位相適応型の部分でのみ探索されるので、偶数サンプル点でも奇数サンプル点でもどちらにしても良いが、図24では偶数サンプル点にしている。なお、固定型代数的符号帳および位相適応型代数的符号帳のどちらに対しても、実施の形態1に示したような複数のチャンネルのインデックスによってパルスの位置が決定されるような代数的符号帳を用いることも出来る。図24(a)のPはピッチピーク位置検出器427で求められたピッチピーク位置である。位相適応位置判定器428では、まず1サブフレームを図24(b)に示すように4分割した場合に、ピッチピーク位置PがA〜Dのどの領域に存在するかを判定する。次に、位相適応部分の代数的符号帳を図24(c)の▲1▼〜▲4▼のどの位置にするかを決定する。図24の例では、Pの位置は(b)の領域Aに存在するので、位相適応型代数的符号帳は▲1▼の部分が選択される。
【0144】
このように段階的に位相適応部分を切り替えるので、算出されたピッチピーク位置が符号器側と復号器側とで異なってしまった場合(伝送路誤りがあった場合など)においても、ある程度の範囲内で影響を抑えることが可能である。なお、図24(c)においては▲1▼〜▲4▼はオーバーラップする部分が無いが、オーバーラップするような位相適応型符号帳を設けることによってピッチピーク位置が位相適応型符号帳の境界付近にある場合に対応することも可能である。さらに、ピッチ周期情報を用いて図24(c)の▲5▼と▲6▼の長さの比を切り替える、即ちピッチ周期が長いときは▲6▼の長さを長くして▲5▼の長さを短くし、逆にピッチ周期が短いときは▲6▼の長さを短くして▲5▼の長さを長くする、というような手法も有効である。このとき、▲6▼の長さはピッチ周期以上の長さとする。
【0145】
図25は本実施の形態における雑音符号帳探索方法のフローチャートを示したものである。本発明の実施の形態3で示した図14と比べて、最初の3ブロック(ピッチピーク位置の算出、位相適応位置の判定、位相適応型符号帳の選択(切換))が3チャンネル代数的符号帳探索の前処理として新たに付け足されている。まず、図23の427に示したように適応符号ベクトルとピッチ周期を用いてピッチピーク位置の算出が行われる。続いて、ピッチピーク位置に応じて位相適応型の代数的符号帳の探索範囲を決定する。そして、その探索範囲である代数的符号帳を選択して各パルスの探索位置を設定する。ここまでで、3パルスの探索前処理が終了する。その後、パルス1〜3の位置を初期化し、前処理で設定されたパルス1〜3の探索位置の組合わせの中から最適な3パルスの位置の組合わせを探し出す。各チャンネルのパルスはチャンネル1から3まで順番に決定されていく。チャンネル1のパルス(パルス1)の位置が決定されるとパルス1のみから計算される歪み最小化に用いられる誤差評価関数が求められ、続いてチャンネル2のパルス(パルス2)の位置が決定されるとパルス1およびパルス2から計算される誤差評価関数が求められる。このようにして、新たなチャンネルのパルスが加わるたびに、新たに加えられたパルスに関係する誤差評価関数の項が付け加えられていくようなネストループ構造で誤差評価関数が求められ、この誤差を最小とする誤差評価関数値とそのときの各パルスの位置の組合わせが求められる。このような探索方法は従来例と同じであるが、探索する位置の一部が探索ループの前処理においてピッチピーク位置によって切替えられる点が異なる。3チャンネルの代数的符号帳の探索が終了すると、2チャンネルの雑音符号帳の探索が行われる。3チャンネルの代数的符号帳によって決定された音源よりも歪みを小さくするような音源ベクトルが見つかった場合には、この2チャンネルの雑音符号帳から最終的な出力である雑音符号ベクトルが出力される。
【0146】
また、本実施の形態における音声復号化装置について図26を参照して説明する。図26は本発明の実施の形態4における音声復号化装置の一例のブロック図を示しており、451は加算器458から出力される過去に生成された駆動音源ベクトルを入力として、符号化装置から伝送された情報Aで指定される適応符号ベクトルを乗算器455および一部分が位相適応型代数的符号帳である代数的符号帳453に出力する適応符号帳、452は符号化装置から伝送された情報Sによって指定される雑音符号ベクトルを一部分が位相適応型代数的符号帳である代数的符号帳453または代数的符号帳と代数的符号帳ではないランダム符号帳から成る雑音符号帳454の中から取り出して乗算器456に出力する本実施の形態に示した図23および図24の構成を有する符号化装置と同じ雑音符号帳、455はゲイン符号帳460から出力される適応符号利得と適応符号帳451から出力される適応符号ベクトルを入力として乗算を行い、乗算結果を加算器458に出力する乗算器、456はゲイン予測器459から出力される予測ゲインと雑音符号帳452から出力された雑音符号ベクトルとを入力とし、乗算結果を乗算器457に出力する乗算器、457は乗算器456から出力された予測ゲインを乗じた後の雑音符号ベクトルとゲイン符号帳460から出力される雑音符号利得とを入力として乗算を行い、乗算結果を加算器458およびゲイン予測器459にそれぞれ出力する乗算器、458は乗算器455から出力された利得乗算後の適応符号ベクトルと乗算器457から出力された利得乗算後の雑音符号ベクトルとを入力としてベクトル加算を行い、結果を合成フィルタ462と適応符号帳451に出力する加算器、459は乗算器457から出力された利得乗算後の雑音符号ベクトルを入力とし、予測ゲインを乗算器456に出力するゲイン予測器、460は符号化装置から伝送された情報Gで指定される適応符号利得を乗算器455に、雑音符号利得を乗算器457にそれぞれ出力するゲイン符号帳、461は符号化装置から伝送される情報Lの復号処理を行い、量子化線形予測係数を求めて合成フィルタ480に出力する線形予測係数復号器、462は加算器458から出力された駆動音源ベクトルと線形予測係数復号器461から出力された量子化線形予測係数とを入力として、合成音声信号を出力する合成フィルタである。なお、合成フィルタから出力された復号音声信号はさらに、聴覚的な品質を高めるためのフィルタ処理等が施されるのが一般的である。
【0147】
以上の様に構成された音声復号化装置の動作を図26を参照して以下に示す。図26において、符号化装置から情報L,A,S,Gが伝送され、それぞれの情報は線形予測係数復号器461、適応符号帳451、雑音符号帳452、ゲイン符号帳460に入力される。情報Lを受け取った線形予測係数復号器461は量子化線形予測係数を復号して、合成フィルタ462に出力する。合成フィルタ462は量子化線形予測係数を用いて構築される。情報Aを受け取った適応符号帳451はAで指定された適応符号ベクトルを適応符号帳から切り出して、乗算器455に出力する。なお、このとき適応符号ベクトルは一部分が位相適応型である代数的符号帳453へも出力される。情報Sを受け取った雑音符号帳452はSで指定される雑音符号ベクトルを一部分が位相適応型である代数的符号帳453または代数的符号帳とランダム符号帳とから成る雑音符号帳454から生成し、乗算器456に出力する。なお、一部分が位相適応型である代数的符号帳453において、位相適応型の部分は適応符号帳451から入力した適応符号ベクトルから求められるピッチピーク位置に基づいて適応的に生成される。乗算器456はゲイン予測器459から出力された予測ゲインを雑音符号ベクトルに乗算して乗算器457に出力する。情報Gを受け取ったゲイン符号帳は、Gで指定された量子化ゲインをゲイン符号帳の中から選択して出力する。このとき、適応符号利得を乗算器455に、雑音符号利得を乗算器457に、それぞれ出力する。乗算器455は適応符号帳451から出力された適応符号ベクトルにゲイン符号帳460から出力された適応符号利得を乗じて加算器458に出力する。乗算器457は隣接雑音符号帳452から出力され乗算器456で予測ゲインを乗ぜられた雑音符号ベクトルにゲイン符号帳460から出力された雑音符号利得を乗じて加算器458に出力する。なお、乗算器457から出力された乗算後の雑音符号ベクトルはゲイン予測器459へも出力される。ゲイン予測器459は過去に乗算器457から出力された雑音符号ベクトルを用いて、現在の雑音符号ベクトルの利得(対数パワー)をMA予測等を用いて予測し、乗算器456に出力する。加算器458は乗算器455から出力された駆動音源信号の適応符号ベクトル成分と、乗算器457から出力された駆動音源信号の雑音符号ベクトル成分との加算を行って駆動音源信号を生成し、合成フィルタ462へ出力する。また、加算器458から出力された駆動信号ベクトルは適応符号帳へも出力されて、適応符号帳の更新に用いられる。合成フィルタ462は加算器458から出力される駆動音源から合成信号を合成して出力する。出力音声信号はそのまま復号音声信号として出力しても良いが、一般的には品質が不十分なため、高域強調やピッチ強調やホルマント強調等の後処理を行い、聴感的な品質を向上してから復号音声信号として出力する。
【0148】
このように、上記実施の形態4によれば、複数種類の代数的符号帳を有する構成において、ビット数の不十分なパルス数の少ないモードでは代数的符号帳の一部を適応符号ベクトルから求められるピッチピーク位置を用いて適応的に変化させるので音声品質の向上を図ることが出来る。
【0149】
(実施の形態5)
図27は本発明の実施の形態5にかかる音声符号化装置のブロック図を示している。実施の形態5にかかる音声符号化装置は、2チャンネル以上から成る雑音符号帳において、各チャンネルの組合わせによって使用する符号帳を切り替えることによって、独立したモード情報無しにモードの切換を行うことが出来るようにしたものである。
【0150】
図27において、501は過去に生成した駆動音源ベクトルを加算器508から入力して格納し、歪み最小化器514からの制御信号によって適応符号ベクトルを乗算器505に出力する適応符号帳、502は2種類の雑音符号帳から成り、歪み最小化器514からの制御信号によってどちらか一方の雑音符号帳の中から雑音符号ベクトルを出力する雑音符号帳、503は雑音符号帳502の一部である代数的符号帳、504は雑音符号帳502の一部であり代数的符号帳503とは異なる構造の代数的符号帳(2チャンネル構成の代数的符号帳)と2種類の代数的符号帳ではないランダム符号帳(2チャンネル構成)から成る雑音符号帳、505は適応符号帳501から出力された適応符号ベクトルとゲイン符号帳から出力された適応符号利得とを入力として乗算結果を加算器508に出力する乗算器、506は雑音符号帳502から出力された雑音符号ベクトルとゲイン予測器509から出力された予測ゲインとを入力として乗算結果を乗算器507に出力する乗算器、507は乗算器506から出力された予測ゲイン乗算後の雑音符号ベクトルとゲイン符号帳から出力された雑音符号利得とを入力として乗算結果を加算器508とゲイン予測器509に出力する加算器、508は乗算器505から出力された適応符号利得乗算後の適応符号ベクトルと乗算器507から出力された予測ゲインおよび雑音符号利得乗算後の雑音符号ベクトルとを入力としてベクトル加算結果を合成フィルタ512と適応符号帳501に出力する加算器、509は乗算器507から出力された予測ゲインと雑音符号利得乗算後の雑音符号ベクトルを入力として乗算器506に予測ゲインを出力するゲイン予測器、510は歪み最小化器514からの制御信号によって適応符号利得を乗算器505に、雑音符号利得を乗算器507にそれぞれ出力するゲイン符号帳、511は入力音声信号を入力として線形予測分析および線形予測係数の量子化を行い、量子化線形予測係数を合成フィルタ512に出力する線形予測分析器、512は加算器508から出力される励振ベクトルと線形予測分析器511から出力される量子化線形予測係数とを入力として、合成音声信号を加算器513に出力する合成フィルタ、513は入力音声信号と合成フィルタ512から出力された合成音声信号とを入力としてベクトル減算をおこない結果を歪み最小化器514に出力する加算器、514は加算器513から出力された差分ベクトルから聴覚重みづけ領域等における合成音声信号の入力音声信号に対する歪みを計算し、この歪みが最小となるように適応符号帳501および雑音符号帳502およびゲイン符号帳510の出力を制御する歪み最小化器である。
【0151】
以上のように構成された音声信号符号化装置について、図27〜図29を参照してその動作を説明する。
【0152】
まず、図27において、音声信号は線形予測分析器511に入力される。線形予測分析器511は入力音声信号の線形予測分析を行い、合成フィルタ512で必要となる線形予測係数を算出する。算出された線形予測係数は量子化された後、合成フィルタ512に出力される。また、ここで出力される線形予測係数を表す符号Lが復号装置に伝送される。次に、線形予測分析器511から出力された量子化線形予測係数を用いて合成フィルタ512が構成される。この合成フィルタを歪み最小化器514は適応符号帳501のみを用いて駆動し、最も歪みが小さくなる適応符号ベクトルを適応符号帳501の中から選択する。この適応符号帳は音声信号の周期的成分(その周期をピッチ周期と呼ぶ)を表現するものであり、普通1ピッチ周期前の時点から1サブフレーム長のベクトルが切り出される(1ピッチ周期長が1サブフレーム長より短い場合は切り出されたベクトルをピッチ周期で繰り返して1サブフレーム長のベクトルにする)。選択された適応符号ベクトルを表すインデックスAが復号器側へ伝送される。以後、適応符号帳501から出力される適応符号ベクトルはここで決定された適応符号ベクトルに固定される。続いて、適応符号帳501と雑音符号帳502の両方を用いて合成フィルタ512を駆動する。このとき、適応符号帳501から出力される適応符号ベクトルは既に決定されているので、雑音符号帳502から出力される雑音符号ベクトルを換えていき、歪み最小化器514によって歪みが最小と判定される雑音符号ベクトルを選択する。雑音符号帳502は代数的符号帳503と代数的符号帳および2種類の代数的符号帳ではないランダム符号帳からなる雑音符号帳504を備えているので、両符号帳の中から歪みを最小とするものが選択される。選択された雑音符号ベクトルを表すインデックスSが復号器側へ伝送される。ここまでで適応符号帳501から出力される適応符号ベクトルと雑音符号帳502から出力される雑音符号ベクトルとが決定される。最後に適応符号ベクトルに乗じるべき適応符号利得と雑音符号ベクトルに乗じるべき雑音符号利得とが歪み最小化器514によって決定される。ゲイン符号帳510には適応符号利得と雑音符号利得をそれぞれ要素とする2次元ベクトル(ゲインベクトル)が格納されており、歪みを最小とする適応符号利得と雑音符号利得の組合わせを有するゲインベクトルが選択され、適応符号利得の要素が乗算器505へ、雑音符号利得の要素が乗算器507へ出力される。また、選択されたゲインベクトルを表すインデックスGが復号化装置に伝送される。なお、本実施の形態における音声符号化装置では雑音符号利得のダイナミックレンジを狭くするために対数領域のパワーをゲイン予測器509によって予測し、その予測残差分をゲイン符号帳を用いて量子化している。ゲイン予測器509は過去に生成された雑音符号ベクトルのパワーを用いて現在の雑音符号ベクトルのパワーを予測し、予測ゲインとして乗算器506へ出力する。雑音符号帳502から出力される雑音符号ベクトルは乗算器506と乗算器507でそれぞれ予測ゲインと雑音符号利得を乗じられる。歪み最小化器514は、ゲイン符号帳510の中から最適なゲインベクトルを選択する以前までに決定されている適応符号ベクトルと雑音符号ベクトルと予測ゲインを用いて、合成音声信号の符号化歪みが最小となる適応符号利得と雑音符号利得の組合わせを決定する。
【0153】
図28は、本実施の形態において特徴的である2チャンネル構成の雑音符号帳504の構成を示している。図28において、515は代数的符号帳の第1チャンネル、516は第1のランダム符号帳の第2チャンネル、517はる第1のランダム符号帳の第1チャンネル、518は代数的符号帳の第2チャンネル、519は第2のランダム符号帳の第1チャンネル、520は第2のランダム符号帳の第2チャンネル、521は代数的符号帳の第1チャンネルからの出力ベクトルと代数的符号帳の第2チャンネルからの出力ベクトルとのベクトル加算を行い、結果をスイッチ525に出力する加算器、522は代数的符号帳の第1チャンネルから出力されるベクトルと第1ののランダム符号帳の第2チャンネルから出力されるベクトルとのベクトル加算を行い、結果をスイッチ525に出力する加算器、523は第1のランダム符号帳の第1チャンネルから出力されるベクトルと代数的符号帳の第2チャンネルから出力されるベクトルとのベクトル加算を行い、結果をスイッチ525に出力する加算器、524は第2のランダム符号帳の第1チャンネルから出力されたベクトルと第2のランダム符号帳の第2チャンネルから出力されたベクトルとのベクトル加算を行い、結果をスイッチ525に出力する加算器、525は加算器521〜524から出力されたベクトルの中から1つのベクトルを選択して出力するスイッチである。図28に示した雑音符号帳の構成は基本的には実施の形態3の図20に示した雑音符号帳の構成と同様であるが、2つのチャンネルとも代数的符号帳ではないランダム符号帳が使用される場合に別のランダム符号帳が用いられる点で異なる。即ち、2チャンネルの内一方のチャンネルが代数的符号帳で他方のチャンネルがランダム符号帳である場合と、両方のチャンネルがランダム符号帳である場合とで使用されるランダム符号帳が異なっている点が、本実施の形態における特徴である。
【0154】
図29に、本実施の形態における雑音符号帳502の探索のフローチャートを示す。まずはじめにパルス1〜3の位置の初期化を行った後、3パルス(チャンネル)の代数的符号帳の探索を行い、初期化した3本のパルス位置の組合わせよりも誤差を小さくするパルス位置の組合わせがあった場合はその位置に各パルスの位置が更新される。続いて2パルス(チャンネル)の代数的符号帳(代数的符号帳の第1チャンネルと第2チャンネルの組合わせ)、代数的符号帳の第1チャンネルと第1のランダム符号帳の第2チャンネルの組合わせ、第1のランダム符号帳の第1チャンネルと代数的符号帳の第2チャンネルの組合わせ、第2のランダム符号帳の第1チャンネルと第2のランダム符号帳の第2チャンネルの組合わせ、のそれぞれにおいて符号帳探索を行い、これら4つの組合わせにおいて誤差を最小とする組合わせをそれぞれ決定する。最後に、前記4つの組合わせと3パルスの代数的符号帳から選択・生成された5種類の雑音符号ベクトルの中から、符号化歪みを最小とするものを1つ選択し、出力する。なお、3パルスの代数的符号帳の探索方法および2チャンネルの雑音符号帳の探索方法は実施の形態3に示したものと同様である。また、図29においては、最初に3パルスの代数的符号帳の探索を行ってから、2チャンネルの雑音符号帳の探索を行っているが、探索の順番はこの順番でなくともよい。
【0155】
また、本実施の形態における音声復号化装置について図30を参照して説明する。図30は本発明の実施の形態5における音声復号化装置の一例のブロック図を示しており、551は加算器558から出力される過去に生成された駆動音源ベクトルを入力として、符号化装置から伝送された情報Aで指定される適応符号ベクトルを乗算器555に出力する適応符号帳、552は符号化装置から伝送された情報Sによって指定される雑音符号ベクトルを代数的符号帳553または代数的符号帳と代数的符号帳ではないランダム符号帳から成る雑音符号帳554の中から取り出して乗算器556に出力する本実施の形態に示した図28の構成を有する、符号化装置と同じ雑音符号帳、555はゲイン符号帳560から出力される適応符号利得と適応符号帳551から出力される適応符号ベクトルを入力として乗算を行い、乗算結果を加算器558に出力する乗算器、556はゲイン予測器559から出力される予測ゲインと雑音符号帳552から出力された雑音符号ベクトルとを入力とし、乗算結果を乗算器557に出力する乗算器、557は乗算器556から出力された予測ゲインを乗じた後の雑音符号ベクトルとゲイン符号帳560から出力される雑音符号利得とを入力として乗算を行い、乗算結果を加算器558およびゲイン予測器559にそれぞれ出力する乗算器、558は乗算器555から出力された利得乗算後の適応符号ベクトルと乗算器557から出力された利得乗算後の雑音符号ベクトルとを入力としてベクトル加算を行い、結果を合成フィルタ562と適応符号帳551に出力する加算器、559は乗算器557から出力された利得乗算後の雑音符号ベクトルを入力とし、予測ゲインを乗算器556に出力するゲイン予測器、560は符号化装置から伝送された情報Gで指定される適応符号利得を乗算器555に、雑音符号利得を乗算器557にそれぞれ出力するゲイン符号帳、561は符号化装置から伝送される情報Lの復号処理を行い、量子化線形予測係数を求めて合成フィルタ580に出力する線形予測係数復号器、562は加算器558から出力された駆動音源ベクトルと線形予測係数復号器561から出力された量子化線形予測係数とを入力として、合成音声信号を出力する合成フィルタである。なお、合成フィルタから出力された復号音声信号はさらに、聴覚的な品質を高めるためのフィルタ処理等が施されるのが一般的である。
【0156】
以上の様に構成された音声復号化装置の動作を図30を参照して以下に示す。図30において、符号化装置から情報L,A,S,Gが伝送され、それぞれの情報は線形予測係数復号器561、適応符号帳551、雑音符号帳552、ゲイン符号帳560に入力される。情報Lを受け取った線形予測係数復号器561は量子化線形予測係数を復号して、合成フィルタ562に出力する。合成フィルタ562は量子化線形予測係数を用いて構築される。情報Aを受け取った適応符号帳551はAで指定された適応符号ベクトルを適応符号帳から切り出して、乗算器555に出力する。情報Sを受け取った雑音符号帳552はSで指定される雑音符号ベクトルを代数的符号帳553または代数的符号帳と2種類のランダム符号帳とから成る雑音符号帳554から生成し、乗算器556に出力する。乗算器556はゲイン予測器559から出力された予測ゲインを雑音符号ベクトルに乗算して乗算器557に出力する。情報Gを受け取ったゲイン符号帳は、Gで指定された量子化ゲインをゲイン符号帳の中から選択して出力する。このとき、適応符号利得を乗算器555に、雑音符号利得を乗算器557に、それぞれ出力する。乗算器555は適応符号帳551から出力された適応符号ベクトルにゲイン符号帳560から出力された適応符号利得を乗じて加算器558に出力する。乗算器557は隣接雑音符号帳552から出力され乗算器556で予測ゲインを乗ぜられた雑音符号ベクトルにゲイン符号帳560から出力された雑音符号利得を乗じて加算器558に出力する。なお、乗算器557から出力された乗算後の雑音符号ベクトルはゲイン予測器559へも出力される。ゲイン予測器559は過去に乗算器557から出力された雑音符号ベクトルを用いて、現在の雑音符号ベクトルの利得(対数パワー)をMA予測等を用いて予測し、乗算器556に出力する。加算器558は乗算器555から出力された駆動音源信号の適応符号ベクトル成分と、乗算器557から出力された駆動音源信号の雑音符号ベクトル成分との加算を行って駆動音源信号を生成し、合成フィルタ562へ出力する。また、加算器558から出力された駆動信号ベクトルは適応符号帳へも出力されて、適応符号帳の更新に用いられる。合成フィルタ562は加算器558から出力される駆動音源から合成信号を合成して出力する。出力音声信号はそのまま復号音声信号として出力しても良いが、一般的には品質が不十分なため、高域強調やピッチ強調やホルマント強調等の後処理を行い、聴感的な品質を向上してから復号音声信号として出力する。
【0157】
このように、上記実施の形態5によれば、格納ベクトルが少ないランダム符号帳をチャンネルの組合わせによって切替えて使用する構成とすることにより雑音符号帳全体の性能を向上できる。
【0158】
(実施の形態6)
図31は本発明の実施の形態6にかかる音声符号化装置のブロック図を示している。実施の形態6にかかる音声符号化装置は、2チャンネルから構成される雑音符号帳において、一方のチャンネルに代数的符号帳を他方のチャンネルにランダム雑音符号帳を使用して用いる場合に、ランダム雑音符号帳に格納されている雑音符号ベクトルの基準点を代数的符号帳から出力されているパルスの位置に合わせて使用することによって、ランダム雑音符号帳の利用効率の向上と音声品質の向上を図ることが出来るようにした 図31において、601は過去に生成した駆動音源ベクトルを加算器608から入力して格納し、歪み最小化器614からの制御信号によって適応符号ベクトルを乗算器605に出力する適応符号帳、602は2種類の雑音符号帳から成り、歪み最小化器614からの制御信号によってどちらか一方の雑音符号帳の中から雑音符号ベクトルを出力する雑音符号帳、603は雑音符号帳602の一部分である代数的符号帳、604は雑音符号帳602の一部分であり代数的符号帳603とは異なる構造の代数的符号帳と代数的符号帳ではないランダム符号帳と他方のチャンネルのパルス位置に応じて適応的に変化する適応型ランダム符号帳とから成る雑音符号帳、605は適応符号帳601から出力された適応符号ベクトルとゲイン符号帳から出力された適応符号利得とを入力として乗算結果を加算器608に出力する乗算器、606は雑音符号帳602から出力された雑音符号ベクトルとゲイン予測器609から出力された予測ゲインとを入力として乗算結果を乗算器607に出力する乗算器、607は乗算器606から出力された予測ゲイン乗算後の雑音符号ベクトルとゲイン符号帳から出力された雑音符号利得とを入力として乗算結果を加算器608とゲイン予測器609に出力する加算器、608は乗算器605から出力された適応符号利得乗算後の適応符号ベクトルと乗算器607から出力された予測ゲインおよび雑音符号利得乗算後の雑音符号ベクトルとを入力としてベクトル加算結果を合成フィルタ612と適応符号帳601に出力する加算器、609は乗算器607から出力された予測ゲインと雑音符号利得乗算後の雑音符号ベクトルを入力として乗算器606に予測ゲインを出力するゲイン予測器、610は歪み最小化器614からの制御信号によって適応符号利得を乗算器605に、雑音符号利得を乗算器607にそれぞれ出力するゲイン符号帳、611は入力音声信号を入力として線形予測分析および線形予測係数の量子化を行い、量子化線形予測係数を合成フィルタ612に出力する線形予測分析器、612は加算器608から出力される励振ベクトルと線形予測分析器611から出力される量子化線形予測係数とを入力として、合成音声信号を加算器613に出力する合成フィルタ、613は入力音声信号と合成フィルタ612から出力された合成音声信号とを入力としてベクトル減算をおこない結果を歪み最小化器614に出力する加算器、614は加算器613から出力された差分ベクトルから聴覚重みづけ領域等における合成音声信号の入力音声信号に対する歪みを計算し、この歪みが最小となるように適応符号帳601および雑音符号帳602およびゲイン符号帳610の出力を制御する歪み最小化器である。
【0159】
以上のように構成された音声信号符号化装置について、図31〜図34を参照してその動作を説明する。
【0160】
まず、図31において、音声信号は線形予測分析器611に入力される。線形予測分析器611は入力音声信号の線形予測分析を行い、合成フィルタ612で必要となる線形予測係数を算出する。算出された線形予測係数は量子化された後、合成フィルタ612に出力される。また、ここで出力される線形予測係数を表す符号Lが復号装置に伝送される。次に、線形予測分析器611から出力された量子化線形予測係数を用いて合成フィルタ612が構成される。この合成フィルタを歪み最小化器614は適応符号帳601のみを用いて駆動し、最も歪みが小さくなる適応符号ベクトルを適応符号帳601の中から選択する。この適応符号帳は音声信号の周期的成分(その周期をピッチ周期と呼ぶ)を表現するものであり、普通1ピッチ周期前の時点から1サブフレーム長のベクトルが切り出される(1ピッチ周期長が1サブフレーム長より短い場合は切り出されたベクトルをピッチ周期で繰り返して1サブフレーム長のベクトルにする)。選択された適応符号ベクトルを表すインデックスAが復号器側へ伝送される。以後、適応符号帳601から出力される適応符号ベクトルはここで決定された適応符号ベクトルに固定される。続いて、適応符号帳601と雑音符号帳602の両方を用いて合成フィルタ612を駆動する。このとき、適応符号帳601から出力される適応符号ベクトルは既に決定されているので、雑音符号帳602から出力される雑音符号ベクトルを換えていき、歪み最小化器614によって歪みが最小と判定される雑音符号ベクトルを選択する。雑音符号帳602は代数的符号帳603と代数的符号帳および2種類の代数的符号帳ではないランダム符号帳からなる雑音符号帳604を備えているので、両符号帳の中から歪みを最小とするものが選択される。選択された雑音符号ベクトルを表すインデックスSが復号器側へ伝送される。ここまでで適応符号帳601から出力される適応符号ベクトルと雑音符号帳602から出力される雑音符号ベクトルとが決定される。最後に適応符号ベクトルに乗ずるべき適応符号利得と雑音符号ベクトルに乗ずるべき雑音符号利得とが歪み最小化器614によって決定される。ゲイン符号帳610には適応符号利得と雑音符号利得をそれぞれ要素とする2次元ベクトル(ゲインベクトル)が格納されており、歪みを最小とする適応符号利得と雑音符号利得の組合わせを有するゲインベクトルが選択され、適応符号利得の要素が乗算器605へ、雑音符号利得の要素が乗算器607へ出力される。また、選択されたゲインベクトルを表すインデックスGが復号化装置に伝送される。
【0161】
なお、本実施の形態における音声符号化装置では雑音符号利得のダイナミックレンジを狭くするために対数領域のパワーをゲイン予測器609によって予測し、その予測残差分をゲイン符号帳を用いて量子化している。ゲイン予測器609は過去に生成された雑音符号ベクトルのパワーを用いて現在の雑音符号ベクトルのパワーを予測し、予測ゲインとして乗算器606へ出力する。雑音符号帳602から出力される雑音符号ベクトルは乗算器606と乗算器607でそれぞれ予測ゲインと雑音符号利得を乗ぜられる。歪み最小化器614は、ゲイン符号帳610の中から最適なゲインベクトルを選択する以前までに決定されている適応符号ベクトルと雑音符号ベクトルと予測ゲインを用いて、合成音声信号の符号化歪みが最小となる適応符号利得と雑音符号利得の組合わせを決定する。
【0162】
図32は、本実施の形態において特徴的である雑音符号帳604の構成を示したブロック図である。図32は、実施の形態5における図28に示した構成と良く似ているが、第1のランダム符号帳が適応型ランダム符号帳であり、これらのランダム符号帳からの出力ベクトルに対して適応器による適応処理が加えられている点が異なる。図32において、615は代数的符号帳の第1チャンネル、616は適応型ランダム符号帳の第2チャンネル、617は適応型ランダム符号帳の第1チャンネル、618は代数的符号帳の第2チャンネル、619はランダム符号帳の第1チャンネル、620はランダム符号帳の第2チャンネル、621は代数的符号帳の第1チャンネル615から出力されたベクトルと適応型ランダム符号帳の第2チャンネル616から出力されたベクトルとを入力として、代数的符号帳の第1チャンネルから出力されたベクトルの音源パルスの位置と適応型ランダム符号帳に格納されているベクトルの基準点を合わせる操作を行って適応型ランダム符号帳の第2チャンネルに格納されているベクトルを加算器624に出力する適応器、622は代数的符号帳の第2チャンネル618から出力されたベクトルと適応型ランダム符号帳の第1チャンネル617から出力されたベクトルとを入力として、代数的符号帳の第2チャンネルから出力されたベクトルの音源パルスの位置と適応型ランダム符号帳の第1チャンネルに格納されているベクトルの基準点を合わせる操作を行って適応型ランダム符号帳の第1チャンネルに格納されているベクトルを加算器625に出力する適応器、623は代数的符号帳の第1チャンネル615と代数的符号帳の第2チャンネル618から出力されたベクトルとを入力としてベクトル加算を行い、結果をスイッチ627に出力する加算器、614は代数的符号帳の第1チャンネル615から出力されたベクトルと適応器621から出力されたベクトルとのベクトル加算を行い、スイッチ627に出力する加算器、625は適応器622から出力されるベクトルと代数的符号帳の第2チャンネル618から出力されるベクトルとのベクトル加算を行い、結果をスイッチ627に出力する加算器、626はランダム符号帳の第1チャンネルとランダム符号帳の第2チャンネルから出力されるベクトルのベクトル加算を行い、結果をスイッチ627に出力する加算器、627は加算器623〜626から出力されたベクトルの中から1つを選んで出力するスイッチである。なお、本実施の形態における代数的符号帳の第1チャンネルおよび第2チャンネルは音源パルスが1本であるベクトルを出力するものである。なお、代数的符号帳に対してピッチ周期化またはピッチ周期化に準ずる処理(ピッチ強調フィルタ処理等)を加える場合は、代数的符号帳の第1チャンネルおよび第2チャンネルから出力されるベクトル中の音源パルスは複数本となるが、この場合は適応器621および622においてはベクトル中の音源パルスのうち最も先頭にあるパルスの位置にランダム符号帳のベクトルの基準点を合わせる処理を行う。図33に、適応器621および622の処理内容を模式的に表した図を示す。図33において、628は代数的符号帳のチャンネル1から出力された第1の雑音符号ベクトル、629は適応型ランダム符号帳のチャンネル2から出力された後、適応器621によって適応処理が行われて出力された第2の雑音符号ベクトル、630は適応型ランダム符号帳のチャンネル2に格納されている雑音符号ベクトル、631は第1の雑音符号ベクトルと第2の雑音符号ベクトルとのベクトル加算を行って最終的な雑音符号ベクトルとして出力する加算器である。図33に示すように、適応型ランダム符号帳に格納されているベクトル630は、適応器によって基準点が第1の雑音符号ベクトルの音源パルスの位置と合うようにシフトされて、第2の雑音符号ベクトルとなる。これは、代数的符号帳の第2チャンネルと適応型ランダム符号帳の第1チャンネルを組合わせて使用する場合も同様である。
【0163】
図29および図34に、本実施の形態における雑音符号帳探索法のフローチャートを示す。図29は実施の形態5において示した図である。実施の形態6においては、第1のランダム符号帳として適応型ランダム符号帳を、第2のランダム符号帳としてランダム符号帳をそれぞれ用いる点が異なり、その処理内容において異なる部分は(代数的符号帳の第1チャンネル+第1のランダム符号帳(適応型ランダム符号帳)の第2チャンネル)探索の部分と(第1のランダム符号帳(適応型ランダム符号帳)の第1チャンネル+代数的符号帳の第2チャンネル)探索の部分である。これらの探索においては、第1のランダム符号帳が適応型ランダム符号帳であり、適応処理が適用されている点が異なる。これをフローチャートに示したのが図34である。
【0164】
図34は(代数的符号帳の第1チャンネル+適応型ランダム符号帳の第2チャンネル)探索の部分について示した図である。(代数的符号帳の第2チャンネル+適応型ランダム符号帳の第1チャンネル)探索においても同様の手順で処理が行われる。図34において、まず、第1の代数的符号帳の探索が行われる。第1の代数的符号帳の探索は(1)式の最大化によって行われる。ここで、(1)式の値を大きくする複数の候補を残しても良いがこの例では演算量を少なくするため(1)式を最大化する候補を1つだけ選択する。これが第1の雑音符号ベクトルとなる。つぎに、選択された代数的符号帳の第1チャンネルから出力された音源パルスの位置に対して適応型ランダム符号帳の第2チャンネルに格納されている全てのベクトルの基準点を合わせるためのシフト処理を行う。つぎに、シフト処理が行われたベクトルを用いて第2のランダム符号帳の探索を行う。ここでは、既に代数的符号帳の第1チャンネルからの出力が決定しているので、代数的符号帳の第1チャンネルと組合わせて符号化歪みが最小となるベクトルを適応型ランダム符号帳の第2チャンネルから選択する。選択された適応型ランダム符号帳の第2チャンネルの(シフトされた)ベクトルは第2の雑音符号ベクトルとして決定される。そして、第1の雑音符号ベクトルと第2の雑音符号ベクトルをベクトル加算したものが最終的な雑音符号ベクトルとして出力される。
【0165】
なお、図35に本発明の実施の形態における音声符号化装置によって送出される情報A(適応符号帳インデックス),S(雑音符号帳インデックス),G(ゲイン符号帳インデックス),L(線形予測係数符号化情報)を受信して復号化処理を行う復号化装置の一例を示す。
【0166】
図35は本発明の実施の形態6における音声復号化装置の一例のブロック図を示しており、651は加算器658から出力される過去に生成された駆動音源ベクトルを入力として、符号化装置から伝送された情報Aで指定される適応符号ベクトルを乗算器655に出力する適応符号帳、652は符号化装置から伝送された情報Sによって指定される雑音符号ベクトルを代数的符号帳653または代数的符号帳と代数的符号帳ではない2種類のランダム符号帳から成る雑音符号帳654の中から取り出して乗算器656に出力する本実施の形態に示した図32および図33の構成を有する符号化装置と同じ雑音符号帳、655はゲイン符号帳660から出力される適応符号利得と適応符号帳651から出力される適応符号ベクトルを入力として乗算を行い、乗算結果を加算器658に出力する乗算器、656はゲイン予測器659から出力される予測ゲインと雑音符号帳652から出力された雑音符号ベクトルとを入力とし、乗算結果を乗算器657に出力する乗算器、657は乗算器656から出力された予測ゲインを乗じた後の雑音符号ベクトルとゲイン符号帳660から出力される雑音符号利得とを入力として乗算を行い、乗算結果を加算器658およびゲイン予測器659にそれぞれ出力する乗算器、658は乗算器655から出力された利得乗算後の適応符号ベクトルと乗算器657から出力された利得乗算後の雑音符号ベクトルとを入力としてベクトル加算を行い、結果を合成フィルタ662と適応符号帳651に出力する加算器、659は乗算器657から出力された利得乗算後の雑音符号ベクトルを入力とし、予測ゲインを乗算器656に出力するゲイン予測器、660は符号化装置から伝送された情報Gで指定される適応符号利得を乗算器655に、雑音符号利得を乗算器657にそれぞれ出力するゲイン符号帳、661は符号化装置から伝送される情報Lの復号処理を行い、量子化線形予測係数を求めて合成フィルタ680に出力する線形予測係数復号器、662は加算器658から出力された駆動音源ベクトルと線形予測係数復号器661から出力された量子化線形予測係数とを入力として、合成音声信号を出力する合成フィルタである。なお、合成フィルタから出力された復号音声信号はさらに、聴覚的な品質を高めるためのフィルタ処理等が施されるのが一般的である。
【0167】
以上の様に構成された音声復号化装置の動作を図35を参照して以下に示す。図35において、符号化装置から情報L,A,S,Gが伝送され、それぞれの情報は線形予測係数復号器661、適応符号帳651、雑音符号帳652、ゲイン符号帳660に入力される。情報Lを受け取った線形予測係数復号器661は量子化線形予測係数を復号して、合成フィルタ662に出力する。合成フィルタ662は量子化線形予測係数を用いて構築される。情報Aを受け取った適応符号帳651はAで指定された適応符号ベクトルを適応符号帳から切り出して、乗算器655に出力する。情報Sを受け取った雑音符号帳652はSで指定される雑音符号ベクトルを代数的符号帳653または代数的符号帳とランダム符号帳と適応型ランダム符号帳とから成る雑音符号帳654から生成し、乗算器656に出力する。乗算器656はゲイン予測器659から出力された予測ゲインを雑音符号ベクトルに乗算して乗算器657に出力する。情報Gを受け取ったゲイン符号帳は、Gで指定された量子化ゲインをゲイン符号帳の中から選択して出力する。このとき、適応符号利得を乗算器655に、雑音符号利得を乗算器657に、それぞれ出力する。乗算器655は適応符号帳651から出力された適応符号ベクトルにゲイン符号帳660から出力された適応符号利得を乗じて加算器658に出力する。乗算器657は隣接雑音符号帳652から出力され乗算器656で予測ゲインを乗ぜられた雑音符号ベクトルにゲイン符号帳660から出力された雑音符号利得を乗じて加算器658に出力する。なお、乗算器657から出力された乗算後の雑音符号ベクトルはゲイン予測器659へも出力される。ゲイン予測器659は過去に乗算器657から出力された雑音符号ベクトルを用いて、現在の雑音符号ベクトルの利得(対数パワー)をMA予測等を用いて予測し、乗算器656に出力する。加算器658は乗算器655から出力された駆動音源信号の適応符号ベクトル成分と、乗算器657から出力された駆動音源信号の雑音符号ベクトル成分との加算を行って駆動音源信号を生成し、合成フィルタ662へ出力する。また、加算器658から出力された駆動信号ベクトルは適応符号帳へも出力されて、適応符号帳の更新に用いられる。合成フィルタ662は加算器658から出力される駆動音源から合成信号を合成して出力する。出力音声信号はそのまま復号音声信号として出力しても良いが、一般的には品質が不十分なため、高域強調やピッチ強調やホルマント強調等の後処理を行い、聴感的な品質を向上してから復号音声信号として出力する。
【0168】
このように、上記実施の形態6によれば、2チャンネルから構成される雑音符号帳において、一方のチャンネルに代数的符号帳を他方のチャンネルにランダム雑音符号帳を使用する場合に、ランダム符号帳に格納されている雑音符号ベクトルの基準点を代数的符号帳から出力されているパルスの位置に合わせる構成とすることにより、ランダム符号帳の利用効率の向上と音声品質の向上を図ることが出来る。
【0169】
(実施の形態7)
図36は本発明の実施の形態1〜実施の形態6のいずれかの音声符号化または復号化装置を備えた音声信号送信機および受信機を示したブロック図である。図36において、701はマイク等音声信号を電気的信号に変換してA/D変換器702に出力する音声信号入力装置、702は音声信号入力装置から出力されたアナログ音声信号をディジタル信号に変換して音声符号化器703に出力するA/D変換器、703は本発明の第1〜実施の形態6のいずれかの音声符号化装置によって音声符号化を行ってRF変調器704に出力する音声符号化器、704は音声符号化器703によって符号化された音声情報を電波等の伝播媒体に載せて送出するための信号に変換し、送信アンテナ705に出力するRF変調器、705はRF変調器704から出力された送出信号を電波として送出する送信アンテナ、706は送信アンテナ705から送出された電波である。また、707はA/D変換器702と音声符号化器703とRF変調器704とを構成要素として備える送信装置である。さらに、708は電波706を受信してRF変調器711に出力する受信アンテナ、711は受信アンテナ708から入力した受信信号を符号化された音声信号に変換して音声復号化器712へ出力するRF復調器、712はRF復調器から出力された符号化された音声信号を入力として本発明の実施の形態6に示される音声復号化装置によって復号処理を行い、復号音声信号をD/A変換器713に出力する音声復号化器、713は音声復号化器712から復号音声信号を入力してアナログ音声信号に変換し、音声出力装置710に出力するD/A変換器、710はD/A変換器からアナログ音声信号を入力して音声を出力するスピーカ等の音声出力装置である。また、709はRF復調器711と音声復号化器712とD/A変換器713とを構成要素として備える受信装置である。
【0170】
以上のように構成された音声信号送信機および受信機について、図36を参照して説明する。まず、音声が音声入力装置701によって電気的アナログ信号に変換され、A/D変換器702に出力される。続いて前記アナログ音声信号がA/D変換器702によってディジタル音声信号に変換され、音声符号化器703に出力される。続いて音声符号化器703は音声符号化処理を行い、符号化した情報をRF変調器704に出力する。続いてRF変調器は符号化された音声信号の情報を変調・増幅・符号拡散等の電波として送出するための操作を行い、送信アンテナ705に出力する。最後に送信アンテナ705から電波706が送出される。一方、受信機においては、電波706を受信アンテナ708で受信し、受信信号はRF復調器711に送られる。RF復調器711は符号逆拡散・復調等電波信号を符号化情報に変換するための処理を行い、符号化情報を音声復号化器712に出力する。音声復号化器712は、符号化情報の復号処理を行ってディジタル復号音声信号をD/A変換器713へ出力する。D/A変換器は音声復号化器712から出力されたディジタル復号音声信号をアナログ復号音声信号に変換する。最後に音声出力装置が電気的アナログ復号音声信号を復号音声に変換して出力する。
【0171】
上記送信装置および受信装置は携帯電話等の移動通信機器の移動機または基地局装置として利用することが可能である。なお、情報を伝送する媒体は本実施の形態に示したような電波に限らず、光信号などを利用することも可能であり、さらには有線の伝送路を使用することも可能である。
【0172】
なお、上記実施の形態1から6に示した音声符号化装置または復号化装置および上記実施の形態7に示した送信装置および受信装置は、磁気ディスク、光磁気ディスク、ROMカートリッジ等の記録媒体にソフトウェアとして記録して実現することも可能であり、その記録媒体を使用することにより、このような記録媒体を使用するパーソナルコンピュータ等により音声符号化装置/復号化装置および送信装置/受信装置を実現するとができる。
【0173】
【発明の効果】
以上詳記したように、本発明によれば、代数的符号帳の1つのパルスの位置を表すためにそのパルスに割り当てられたビットの他に少なくとももう一つの別のパルスに割り当てられたビット情報を用いることによって、ビット数の増加なしに、音源パルスの探索範囲を2倍以上の長さに拡大できる。
【0174】
本発明はまた、複数種類の代数的符号帳を有する構成とすることにより、ビット数の不十分なパルス数の多い代数的符号帳を有効的に利用してピッチ周期の短い音声の品質を向上するとともに、ビット数の十分なパルス数の少ない代数的符号帳を用いて有声立ち上がり部分等の品質を向上することが出来る。
【0175】
本発明はまた、代数的符号帳とランダム雑音符号帳とを併用することによって、音声品質の向上を図ることが出来る。
【0176】
本発明はまた、複数種類の代数的符号帳を有する構成において、ビット数の不十分なパルス数の少ないモードでは代数的符号帳の一部を適応符号ベクトルから求められるピッチピーク位置を用いて適応的に変化させることによって音声品質の向上を図ることが出来る。
【0177】
本発明はまた、2チャンネル以上から成る雑音符号帳において、各チャンネルの組合わせによって使用する符号帳を切り替えることによって、独立したモード情報無しにモードの切換が行うことが出来るようにしたものであり、各チャンネルの一部を代数的符号帳とすることによって演算量・メモリ量の削減をも図ることができる。
【0178】
本発明はまた、2チャンネルから構成される雑音符号帳において、一方のチャンネルに代数的符号帳を他方のチャンネルにランダム雑音符号帳を使用して用いる場合に、ランダム雑音符号帳に格納されている雑音符号ベクトルの基準点を代数的符号帳から出力されているパルスの位置に合わせて使用することによって、ランダム雑音符号帳の利用効率の向上と音声品質の向上を図ることが出来る。
【0179】
本発明はまた、上記音声符号化装置または復号化装置を音声符号化器または復号化器として備えることにより、より高品質な音声品質を提供できる送信装置または受信装置を実現できる。
【図面の簡単な説明】
【図1】本発明の実施の形態1における代数的符号帳の探索器の構成を示すブロック図
【図2】本発明の実施の形態1における代数的符号帳のパルス探索位置を表す模式図
【図3】本発明の実施の形態1における代数的符号帳の内容を示す表
【図4】本発明の実施の形態1における代数的符号帳の探索方法を示す流れ図
【図5】本発明の実施の形態1における代数的符号帳の探索方法を示すプログラム例
【図6】本発明の実施の形態1における音声符号化装置の構成を表すブロック図
【図7】本発明の実施の形態1における音声復号化装置の構成を表すブロック図
【図8】本発明の実施の形態2における音声符号化装置の構成を示すブロック図
【図9】本発明の実施の形態2における雑音符号帳探索方法を示す流れ図
【図10】本発明の実施の形態2における代数的符号帳のパルス探索位置を表す模式図
【図11】本発明の実施の形態2における代数的符号帳の内容を示す表
【図12】本発明の実施の形態2における音声復号化装置の構成を表すブロック図
【図13】本発明の実施の形態3における音声符号化装置の構成を示すブロック図
【図14】本発明の実施の形態3における雑音符号帳探索方法を示す流れ図
【図15】本発明の実施の形態3における2パルス代数的符号帳の探索方法を示す流れ図
【図16】本発明の実施の形態3における代数的符号帳の第1チャンネルとランダム符号帳の第2チャンネルとの組合わせ探索方法を示す流れ図
【図17】本発明の実施の形態3におけるランダム符号帳の第1チャンネルと代数的符号帳の第2チャンネルとの組合わせ探索方法を示す流れ図
【図18】本発明の実施の形態3におけるランダム符号帳の第1チャンネルとランダム符号帳の第2チャンネルとの組合わせ探索方法を示す流れ図
【図19】本発明の実施の形態3における代数的符号帳の内容を示す表
【図20】本発明の実施の形態3における雑音符号帳の構成を示すブロック図
【図21】本発明の実施の形態3における音声復号化装置の構成を示すブロック図
【図22】本発明の実施の形態4における音声符号化装置の構成を示すブロック図
【図23】本発明の実施の形態4における位相適応型代数的符号帳の構成を示すブロック図
【図24】本発明の実施の形態4における位相適応型代数的符号帳のパルス探索位置を表す模式図
【図25】本発明の実施の形態4における雑音符号帳の探索方法を示す流れ図
【図26】本発明の実施の形態4における音声復号化装置の構成を示すブロック図
【図27】本発明の実施の形態5における音声符号化装置の構成を示すブロック図
【図28】本発明の実施の形態5における2チャンネル構成の雑音符号帳の構成を示すブロック図
【図29】本発明の実施の形態5における雑音符号帳の探索方法を示す流れ図
【図30】本発明の実施の形態5における音声復号化装置の構成を示すブロック図
【図31】本発明の実施の形態6における音声符号化装置の構成を示すブロック図
【図32】本発明の実施の形態6における2チャンネル構成の雑音符号帳の構成を示すブロック図
【図33】本発明の実施の形態6における適応型ランダム符号帳の原理を表す模式図
【図34】本発明の実施の形態6における代数的符号帳の第1チャンネルと適応型ランダム符号帳の第2チャンネルとの組合わせ探索の方法を示す流れ図
【図35】本発明の実施の形態6における音声復号化装置の構成を示すブロック図
【図36】本発明の実施の形態7における送信装置および受信装置の構成を示すブロック図
【図37】従来の代数的符号帳を用いたCELP音声符号化装置の構成を示すブロック図
【図38】従来の代数的符号帳のパルス探索位置を表す模式図
【図39】従来の代数的符号帳の内容を示す表
【図40】従来の代数的符号帳の探索方法を示す流れ図
【図41】従来の代数的符号帳の探索方法を示すプログラム
【図42】従来の代数的符号帳の探索器の構成を示すブロック図
【図43】従来の代数的符号帳のパルス探索位置を表す模式図
【図44】従来の代数的符号帳の内容を示す表
【符号の説明】
101 パルス1インデックス生成器
102 パルス2インデックス生成器
103 パルス3インデックス生成器
104 第1のインデックス/パルス位置変換器
105 第2のインデックス/パルス位置変換器
106 第3のインデックス/パルス位置変換器
107 歪み評価関数計算器
108 歪み最小化器
151 適応符号帳
152、172 隣接チャンネル依存型代数的符号帳
153〜155 乗算器
156 加算器
157 ゲイン予測分析器
158 ゲイン符号帳
159 線形予測器
160 合成フィルタ
161 加算器
162 歪み最小化器
203 第1の代数的符号帳
204 第2の代数的符号帳
253 第1の代数的符号帳
254 第2の代数的符号帳
304 代数的符号帳および代数的符号帳でないランダム符号帳から構成される雑音符号帳
354 代数的符号帳とランダム符号帳とから成る雑音符号帳
403 一部が位相適応型である代数的符号帳
404 代数的符号帳および代数的符号帳でないランダム符号帳から構成 される雑音符号帳
453 一部分が位相適応型代数的符号帳である代数的符号帳
454 代数的符号帳とランダム符号帳とから成る雑音符号帳
554 代数的符号帳と2種類のランダム符号帳とから成る雑音符号帳
604 代数的符号帳および代数的符号帳でないランダム符号帳および適応型ランダム符帳から構成される雑音符号帳
654 代数的符号帳と適応型ランダム符号帳とランダム符号帳とから成る雑音符号帳[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a CELP (Code Excited Linear Prediction) type in a mobile communication system that encodes and transmits an audio signal.Excitation signal encoding apparatus, excitation signal decoding apparatus and method thereof, and recording mediumIt is about.
[0002]
[Prior art]
In the field of digital mobile communication and voice storage, a voice encoding device that compresses voice information and encodes it with high efficiency is used in order to effectively use radio waves and storage media. Among them, a method based on the CELP (Code Excited Linear Prediction) method has been widely put into practical use at medium and low bit rates. For CELP technology, see M.R. Schroeder and B.S. Atal: “Code-Excited Linear Prediction (CELP): High-quality Speech at Very Low Bit Rates”, Proc. ICASSP-85, 25.1.1, pp.937-940, 1985 ".
[0003]
The CELP speech coding method divides speech into a certain frame length (about 5 ms to 50 ms), performs speech linear prediction for each frame, and knows the prediction residual (excitation signal) by linear prediction for each frame. The encoding is performed using the adaptive code vector and the noise code vector having the waveform. The adaptive code vector is an adaptive code book that stores drive excitation vectors generated in the past, and the noise code vector is a noise code book that stores vectors having a predetermined number of predetermined shapes prepared in advance. Are selected and used.
[0004]
As the noise code vector stored in the noise code book, a random noise sequence vector, a vector generated by arranging several pulses at different positions, or the like is used.
[0005]
A typical example of the latter is CS-ACELP (Conjugate Structure and Algebraic CELP), which was recommended as an international standard in ITU-T in 1996. The CS-ACELP technology is described in “Recommendation G.729: Coding of Speech at 8 kbit / s using Conjugate-Structure Algebraic-Code-Excited Linear-Prediction (CS-ACELP)”, March 1996.
[0006]
CS-ACELP uses an algebraic codebook as a noise codebook. The noise code vector generated from the CS-ACELP algebraic codebook is a vector in which four impulses having an amplitude of −1 or +1 are set in a subframe of 40 samples (5 ms) (four pulses are All except for the raised position are basically zero). Since the absolute value of the amplitude is fixed at 1, only the position and polarity (positive / negative) of each pulse need be expressed in order to express the sound source vector. For this reason, it is not necessary to store a 40 (subframe length) dimensional vector in the codebook, and a codebook storage memory is not required. Further, since only four pulses having an amplitude of 1 exist in the vector, there is an advantage that the amount of calculation for the codebook search can be greatly reduced.
[0007]
A conventional example of the CS-ACELP type coding apparatus will be specifically described below with reference to FIG.
[0008]
FIG. 37 shows a basic block diagram of a CS-ACELP speech coding apparatus. In the figure,
[0009]
The operation of the CS-ACELP speech coding apparatus having the above configuration will be described below with reference to FIGS.
[0010]
First, in FIG. 37, the speech signal is input to the
[0011]
Next, the
[0012]
Subsequently, the
[0013]
The adaptive code vector output from the
[0014]
Finally, an adaptive code gain to be multiplied by the adaptive code vector and a noise code gain to be multiplied by the noise code vector are determined by the
[0015]
In the CS-ACELP type speech encoding apparatus, the logarithmic domain power is predicted by the
[0016]
The noise code vector output from the
[0017]
The configuration of the algebraic codebook, which is one of the features of CS-ACELP, will be described below with reference to FIGS. 38 and 39.
The CS-ACELP algebraic codebook consists of four channels. Each channel outputs one pulse with an amplitude of +1 or -1. The position of the pulse output from each channel is limited, and the pulse is set only at a position within a predetermined range. In CS-ACELP, excitation signals are encoded in units of 40 samples (5 ms) subframes. FIG. 38A shows each sample point in one subframe. The 40 sample points are divided into four groups shown in FIGS. That is, in FIG. 38B, when the number of the first sample point is 0 and the number is 1, 2, 3,..., 39 in order, the sample point number is divisible by 5, that is, 0, 5, 10, ..., a group of 35 sample points is shown. FIG. 38C similarly shows a group consisting of 1, 6, 11,..., 36 sample points when the number of sample points is divided by 5, that is, one remainder. FIG. 38 (d) also shows a group consisting of two sample points, ie, 2, 7, 12,..., 27, when the sample point number is divided by 5. Similarly, FIG. 38 (e) includes 3 or 4 remainders when the sample point number is divided by 5, ie, 3, 8, 13,..., 38 and 4, 9, 14,. Indicates a group.
One of the sample points included in each group is selected and a pulse having an amplitude of +1 or -1 is set up as shown in FIGS. 38 (g) to (j). A combination of the four pulses set in this way becomes a random code vector output from the algebraic codebook (FIG. 38 (f)).
[0018]
As described above, in the
Next, a method for determining the amplitude and position of the pulse from each group will be described below. The amplitude of the pulse is determined before the position search is performed in order to greatly reduce the calculation amount of the search. This is determined so that all the terms of the evaluation function used for distortion minimization are all positive.
Next, a pulse position search method will be described with reference to FIGS. 40 and 41. FIG.
FIG. 40 is a flowchart showing a loop of a nested structure used for pulse position search. FIG. 40 shows a case where the number of pulses is three. The pulses are sequentially determined from
[0019]
An example of a pulse search apparatus that implements the pulse search method as described above is shown in FIG. Here, the algebraic codebook has 3 channels and the number of pulses is 3. 42, 13 is a
[0020]
Further, a configuration example of a conventional algebraic codebook for dealing with a longer frame (subframe) length will be described with reference to FIGS. 43 and 44. FIG.
[0021]
Again, the algebraic codebook has 3 channels and 3 excitation pulses. In FIG. 43, first, one subframe (a) which is the entire search range is classified into two groups, an even sample point group (b) and an odd sample point group (c). Then, the sample points in each group are further divided into three groups, and each is used as a search position for
[0022]
In this way, in addition to limiting the search range for each channel, by dividing the mode into even sample points or odd sample points, all sample points in a long subframe are searched with a smaller number of bits. I can do it.
[0023]
In this case, the algebraic codebook is as shown in FIG. 44, and one bit of mode information is added in addition to the pulse amplitude and pulse position information. Such a technique is described in "Recommendation G.723.1: Dual Rate Speech Coder for Multimedia Communications Transmitting at 5.3 & 6.3 kbit / s", March 1996.
[0024]
[Problems to be solved by the invention]
However, when the frame length is increased in order to further reduce the bit rate of the speech coding apparatus using the conventional algebraic codebook, the number of sample points to be subjected to pulse search increases. There is a problem that it is difficult to secure the number of bits necessary to represent the position of each excitation pulse in the codebook.
[0025]
The present invention has been made in view of the above circumstances, and uses an algebraic codebook that can improve speech quality when the bit rate is a low bit rate of about 4 kbps.Excitation signal encoding apparatus, excitation signal decoding apparatus and method thereof, and recording mediumThe purpose is to provide.
[0026]
[Means for Solving the Problems]
In order to achieve the above object, the present invention uses bit information assigned to at least another pulse in addition to the bit assigned to the pulse to represent the position of one pulse of the algebraic codebook. As a result, the search range of the sound source pulse can be expanded to twice or more the length without increasing the number of bits.
[0027]
In addition, the present invention has a configuration having a plurality of types of algebraic codebooks, thereby effectively using algebraic codebooks having a large number of pulses with insufficient bits and improving the quality of speech with a short pitch period. In addition, the quality of the voiced rising portion or the like can be improved by using an algebraic codebook with a sufficient number of bits and a small number of pulses.
[0028]
In addition, the present invention is intended to improve speech quality by using an algebraic codebook and a random noise codebook in combination.
[0029]
Further, the present invention adapts a part of the algebraic codebook using a pitch peak position obtained from the adaptive code vector in a mode having a plurality of types of algebraic codebooks and a mode with a small number of pulses and an insufficient number of bits. The sound quality can be improved by changing the sound quality.
[0030]
Further, in the present invention, in a noise codebook composed of two or more channels, the mode can be switched without independent mode information by switching the codebook to be used depending on the combination of each channel. In addition, a part of each channel is made an algebraic codebook so that the amount of calculation and memory can be reduced.
[0031]
Further, the present invention is stored in a random noise codebook when using an algebraic codebook for one channel and a random noise codebook for the other channel in a noise codebook composed of two channels. By using the reference point of the noise code vector according to the position of the pulse output from the algebraic codebook, the use efficiency of the random noise codebook can be improved and the voice quality can be improved. It is.
[0032]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, a speech encoding apparatus and speech decoding apparatus according to embodiments of the present invention will be described with reference to the drawings.
[0063]
(Embodiment 1)
FIG. 1 shows a random code vector generator of an excitation signal encoding apparatus according to
[0064]
In FIG. 1,
[0065]
The operation of the random code vector generator configured as described above will be described with reference to FIGS.
[0066]
In FIG. 1, a
[0067]
Similarly, the
[0068]
Here, the predetermined positions that each pulse can take are as shown in FIG. FIG. 2A shows sample points of the entire subframe, and FIGS. 2B to 2D show pulse search positions of the respective channels (
[0069]
For example, when the search position of
[0070]
Subsequently, in FIG. 1, the indexes of
[0071]
The method for determining the pulse position is as follows. For example, when the index of the
[0072]
The
[0073]
The
[0074]
FIG. 4 is a flowchart showing the above code book search procedure. This is a nested loop structure similar to that of FIG. 40, which is a flowchart of the conventional method, but since the position of each pulse is not determined unless the index of the two pulses is determined, the error evaluation function of the first (pulse 1) loop is No calculation is performed, the first error evaluation function (
[0075]
1 to 5 show the case where an algebraic codebook is used as the noise codebook, but the combination information of each channel can be used also in a noise codebook having other plural channels. is there. In FIG. 2, the subframe length (pulse search range) is 24 samples, but this is effective for a longer subframe length.
[0076]
Next, a speech coding apparatus provided with an adjacent channel dependent algebraic codebook as the random codebook as described above will be described.
[0077]
FIG. 6 is a functional block diagram of a speech coding apparatus having an adjacent channel dependent algebraic codebook. In the figure,
[0078]
The index A of the adaptive code vector, the index S of the noise code vector, and the index G of the gain vector that minimize the distortion determined by the distortion minimizer 162 are transmitted to the decoding device. Further, the linear prediction coefficient obtained by the linear prediction analyzer is quantized and then transmitted to the decoding apparatus as a quantized linear prediction coefficient L.
[0079]
Further, the configuration and operation of the speech decoding apparatus according to the embodiment of the present invention will be described with reference to FIG.
[0080]
FIG. 7 shows a functional block diagram of the speech decoding apparatus according to the embodiment of the present invention. In the figure, reference numeral 171 denotes an adaptive code that inputs a drive excitation vector generated in the past output from the
[0081]
The operation of the speech decoding apparatus configured as described above will be described below with reference to FIG. In FIG. 7, information L, A, S, and G is transmitted from the encoding device, and each piece of information includes a linear
[0082]
The linear
[0083]
As described above, according to the above-described embodiment, in the noise codebook having a plurality of channels, the noise code vector is generated using the combination information between the channels, so that the bits allocated to the entire noise codebook are effectively used. It can be used.
[0084]
(Embodiment 2)
FIG. 8 shows functional blocks of a CELP type speech signal encoding apparatus having two types of algebraic codebooks as noise codebooks according to the second embodiment of the present invention. In FIG. 8, 201 is an adaptive codebook in which a driving excitation vector generated in the past is input from the
[0085]
The operation of the speech signal encoding apparatus configured as described above will be described with reference to FIGS.
[0086]
First, the speech signal is input to the
[0087]
Next, the
[0088]
Subsequently, the
[0089]
Since the
[0090]
Finally, an adaptive code gain to be multiplied by the adaptive code vector and a noise code gain to be multiplied by the noise code vector are determined by the
[0091]
In the speech coding apparatus according to the present embodiment, in order to narrow the dynamic range of the noise code gain, the logarithmic domain power is predicted by the
[0092]
The present embodiment is characterized in that the mode can be switched according to the state of the input speech by providing two types of algebraic codebooks. FIG. 9 is a flowchart showing the algebraic codebook search method in the noise codebook. First, a 3-pulse algebraic codebook is searched, and then a 2-pulse algebraic codebook is searched. Conversely, a two-pulse algebraic codebook search may be performed first. The value of the error evaluation function used for the search of the algebraic codebook is set to the minimum value (value of 0 or less) in the initialization process before the search. In FIG. 9, the initial value of the 2-pulse algebraic codebook search is set. There is no conversion processing, and the error evaluation function when distortion is minimized in the already obtained 3-pulse algebraic codebook search is used as the initial value.
[0093]
In FIG. 9, first, the pulses of each channel are determined in order from
In this way, each time a pulse of a new channel is added, an error evaluation function is obtained in a nested loop structure in which an error evaluation function term related to the newly added pulse is added. A combination of the error evaluation function value to be minimized and the position of each pulse at that time is obtained.
Actually, the error is minimized by maximizing the error evaluation function as shown in the equation (1).
[0094]
[Expression 1]
In equation (1), x represents a target vector, H represents an impulse response of the synthesis filter, and ci represents a noise code vector output from the noise codebook. A target vector is a signal generated by driving a synthesis filter with only an adaptive code vector, subtracted from the input speech signal, and further subtracted from the zero input response signal of the synthesis filter. It should be a signal.
[0095]
In addition, when performing a search that also considers a combination with an already determined adaptive code vector, such as by performing an orthogonal search of an adaptive code vector and a noise code vector, the adaptive code vector component is used instead of (1). The same search can be performed by using the formula (2) included in the evaluation formula.
[0096]
[Expression 2]
In equation (2), x is a target vector (a vector to be synthesized by a synthesis filter from a driving excitation vector formed by combining an adaptive code vector and a noise code vector. Different from the target vector in equation (1), p is adaptive. A code vector, c is a noise code vector (ci is a noise code vector indicated by an index i), and H is an impulse response convolution matrix of the synthesis filter.
[0097]
Next, in the two-channel algebraic codebook, the pulse position of each channel is determined. In the error minimization process in the 2-channel algebraic codebook, each pulse position is updated only when an error evaluation function value exceeding the error evaluation function value maximized in the 3-channel algebraic codebook search is obtained. When this update is performed, the random code vector is output from the 2-channel algebraic codebook instead of the 3-channel algebraic codebook.
[0098]
Further, an example of the configuration of two types of algebraic codebooks will be described below with reference to FIGS.
[0099]
FIGS. 10 and 11 correspond to FIGS. 43 and 44 of the conventional example, respectively, and FIG. 10 is a schematic diagram showing pulse search positions of pulses (
[0100]
43 and 44, the mode information is used to indicate whether the pulse position is an even sample point or an odd sample point. In FIGS. 10 and 11, whether the mode information is an algebraic codebook of two pulses. It is used to indicate whether it is a 3-pulse algebraic codebook.
[0101]
Further, in FIG. 10 and FIG. 11, when the algebraic codebook has 3 pulses, the range of the search position is concentrated on the first half of the subframe. This makes it possible to perform a pitch periodization process (a process for repeating a noise code vector at a pitch period or a filter process for emphasizing the pitch period for a noise code vector). The number of pulses of the noise code vector can be increased without reducing the temporal resolution of the pulse search.
[0102]
Also, by providing a two-pulse algebraic codebook, it is possible to perform a pulse search with a fine positional accuracy, so that it is possible to improve the performance of a voiced rising portion or the like.
[0103]
In the example of the present embodiment, the subframe length is set to 24 for the sake of simplicity, but the above effectiveness can be obtained when the subframe length is actually as long as about 80 samples or more.
[0104]
In the example of the present embodiment, there are two types of algebraic codebooks, but an algebraic codebook or the like in which the number of pulses is increased by concentrating the pulse search range more in the head part of the subframe is provided. In this way, it may be more effective to increase the types of algebraic codebooks.
[0105]
In the example of the present embodiment, vector quantization and backward prediction of noise code vector power are used in gain quantization. However, when scalar quantization is used or backward prediction of noise code vector power is used. This method can be applied even when not used.
[0106]
In the example of the present embodiment, the vector stored in the gain codebook is a two-dimensional vector of an adaptive code gain component and a noise code gain component, but the power of the excitation vector and the adaptive code vector occupying that power It may be a two-dimensional vector composed of other two elements such as a ratio of (or a noise code vector).
[0107]
Also, the speech decoding apparatus in the present embodiment will be described with reference to FIG. FIG. 12 is a block diagram showing an example of a speech decoding apparatus according to
[0108]
The operation of the speech decoding apparatus configured as described above will be described. Information L, A, S, and G is transmitted from the encoding device, and each information is input to the linear
[0109]
The linear
[0110]
The
[0111]
As described above, according to the second embodiment, by providing a plurality of types of algebraic codebooks and switching each algebraic codebook according to the characteristics of the input speech signal, the number of bits can be reduced. Even in this case, the encoding performance of the audio signal can be improved.
[0112]
(Embodiment 3)
FIG. 13 shows functional blocks of a speech signal coding apparatus according to a third embodiment of the present invention that uses both an algebraic codebook and a random noise codebook as a noise codebook.
[0113]
In FIG. 13,
[0114]
The operation of the speech signal encoding apparatus configured as described above will be described with reference to FIGS.
[0115]
First, the speech signal is input to the linear prediction analyzer 311. The linear prediction analyzer 311 performs linear prediction analysis of the input speech signal and calculates a linear prediction coefficient required by the
[0116]
Next, the
[0117]
Subsequently, the
[0118]
The
[0119]
The above operation is the same as that of
[0120]
FIG. 14 is a flowchart showing the noise codebook search method. FIG. 14 is a rewrite of the two-pulse algebraic codebook portion of FIG. 9 which is a flowchart of the third embodiment. First, a 3-pulse algebraic codebook search is performed, followed by a 2-pulse algebraic codebook search and a search and noise combining the first channel of the algebraic codebook and the second channel of the random codebook. A search combining the first channel of the codebook and the second channel of the algebraic codebook and a search combining the first channel of the noise codebook and the second channel of the noise codebook are performed. The search order of these code books may be any other possible order. FIG. 14 two-pulse
[0121]
The optimum output noise code vector in the two-pulse algebraic codebook obtained here is used as a candidate output from the two-pulse algebraic codebook in the selection of the
[0122]
FIG. 16 shows a flowchart for searching for (first channel of algebraic codebook + second channel of random codebook). First, the top N candidates that increase the numerator of the error evaluation function are selected from the first channel of the algebraic codebook (one channel of the two-pulse algebraic codebook). N is determined by the allowable calculation amount.
[0123]
Next, the top M candidate that increases the numerator term of the error evaluation function is selected from the second channel of the random codebook. M is determined by the allowable calculation amount and may or may not be equal to N. Then, the N candidate noise vectors from the one-pulse algebraic codebook selected by evaluating only the numerator term of the error evaluation function and the M candidate noise vectors selected from the second channel of the random codebook are combined. In this case, the numerator and denominator of the error evaluation function are calculated for each combination, and the error evaluation function is maximized to minimize the error between the synthesized speech and the input speech. The noise code vector generated by the combination determined to have the smallest error is output from the mode in the selection of the
FIG. 17 is a diagram showing a codebook search flowchart in a mode in which the first channel of the random codebook and the second channel of the algebraic codebook are combined with each channel in FIG. 16 reversed. .
[0124]
First, the top M candidate that increases the numerator term of the error evaluation function is selected as
[0125]
FIG. 18 is obtained by replacing the algebraic codebook portion shown in FIG. 16 or 17 with a random codebook search loop. That is, it shows a flowchart for selecting the optimum noise code vector when the noise code vectors output from the first channel and the second channel of the random codebook are combined.
[0126]
First, the top M candidate that increases the numerator of the error evaluation function is selected as
[0127]
A table showing a specific example of such a
[0128]
FIG. 20 shows the configuration of the two-channel noise codebook section (304 in FIG. 13) of this codebook. The configuration and operation of this 2-channel noise codebook section will be described below with reference to FIG. In FIG. 20,
[0129]
In addition, as a random codebook that is not an algebraic codebook, a white noise-like noise codebook, a codebook optimized by learning, or a codebook having such a sparse structure can be used. In particular, the sparse structure is effective in terms of the amount of calculation. In addition, learning-type codebooks can improve performance by learning. Further, if a part of the noise codebook is a learning-type codebook and the remaining part is a random noise codebook, it is possible to obtain both effects of improving noise resistance and improving performance by learning.
[0130]
Moreover, the speech decoding apparatus in the present embodiment will be described with reference to FIG. FIG. 21 is a block diagram showing an example of a speech decoding apparatus according to
[0131]
The operation of the speech decoding apparatus configured as described above will be described below with reference to FIG. In FIG. 21, information L, A, S, and G is transmitted from the encoding device, and each information is input to the linear
[0132]
As described above, according to the third embodiment, by providing a noise codebook that is not an algebraic codebook as a part of the algebraic codebook, speech coding performance that cannot be improved only by the algebraic codebook is improved. It becomes possible.
[0133]
(Embodiment 4)
FIG. 22 shows functional blocks of a speech coding apparatus according to
[0134]
The operation of the speech signal encoding apparatus configured as described above will be described with reference to FIGS.
[0135]
First, in FIG. 22, the speech signal is input to the linear prediction analyzer 411. The linear prediction analyzer 411 performs linear prediction analysis of the input speech signal and calculates a linear prediction coefficient required by the synthesis filter 412. The calculated linear prediction coefficient is quantized and then output to the synthesis filter 412. Also, a code L representing the linear prediction coefficient output here is transmitted to the decoding device.
[0136]
Next, the synthesis filter 412 is configured using the quantized linear prediction coefficient output from the linear prediction analyzer 411. The distortion minimizer 414 drives this synthesis filter using only the adaptive codebook 401, and selects an adaptive code vector having the smallest distortion from the adaptive codebook 401. This adaptive codebook expresses a periodic component of a speech signal (this period is called a pitch period), and a vector of 1 subframe length is usually cut out from a point before one pitch period (one pitch period length is If it is shorter than one subframe length, the extracted vector is repeated at a pitch period to make a vector of one subframe length). An index A representing the selected adaptive code vector is transmitted to the decoder side. Thereafter, the adaptive code vector output from the adaptive codebook 401 is fixed to the adaptive code vector determined here. Subsequently, the synthesis filter 412 is driven using both the adaptive codebook 401 and the
[0137]
Since the
[0138]
Note that the algebraic codebook of the phase adaptive type part is generated with the adaptive code vector and pitch period output from the adaptive codebook as inputs. The index S representing the selected random code vector is transmitted to the decoder side. Up to this point, the adaptive code vector output from the adaptive code book 401 and the noise code vector output from the
[0139]
In the speech coding apparatus according to the present embodiment, the power of the logarithmic region is predicted by the
[0140]
The
[0141]
FIG. 23 shows an example of the configuration of the
[0142]
In FIG. 23, the code books A to D of the
[0143]
FIG. 24 shows an example of an algebraic codebook having a phase adaptive part used in the present embodiment. FIG. 24A shows an adaptive code vector (for one subframe) output from the adaptive codebook, and FIG. 24B shows a state in which one subframe is divided into four regions A to D. (C) shows the fixed part and the phase adaptive part of the algebraic codebook. In FIG. 24C, the part (6) is a fixed algebraic codebook part, and this part is always searched regardless of the position of the pitch peak. In this example, the fixed part algebraic codebook is used to search for even sample points. On the other hand, the portion (5) is a portion obtained by removing the fixed portion from the fixed portion in the conventional method. The information assigned to the removed part is assigned to the phase adaptive part. That is, the conventional search position is fixed to the portion {circle around (5)} so that any one of the portions {circle around (1)} to {circle around (4)} is searched according to the position of the pitch peak. This part is called a phase adaptive part in the sense that it is a part that is adaptively switched according to the phase. In this example, except for the portion {circle around (4)}, the phase adaptive type algebraic codebook is used to search for odd sample points. Since the portion {circle around (4)} is searched only in the phase adaptive type portion, it may be either an even sample point or an odd sample point, but in FIG. 24 it is an even sample point. For both the fixed algebraic codebook and the phase adaptive algebraic codebook, the algebraic code in which the position of the pulse is determined by the indexes of a plurality of channels as shown in the first embodiment. You can also use a book. P in FIG. 24A is the pitch peak position obtained by the pitch
[0144]
Since the phase adaptive portion is switched step by step in this way, even if the calculated pitch peak position differs between the encoder side and the decoder side (such as when there is a transmission path error), a certain range It is possible to suppress the influence within. In FIG. 24C, (1) to (4) have no overlapping portion, but by providing a phase adaptive codebook that overlaps, the pitch peak position is the boundary of the phase adaptive codebook. It is also possible to deal with the case of being in the vicinity. Further, the ratio of the lengths (5) and (6) in FIG. 24 (c) is switched using the pitch period information, that is, when the pitch period is long, the length of (6) is increased and the length of (5) is changed. A technique of shortening the length and conversely shortening the length of (6) and increasing the length of (5) when the pitch period is short is also effective. At this time, the length of (6) is a length equal to or longer than the pitch period.
[0145]
FIG. 25 shows a flowchart of the noise codebook search method in the present embodiment. Compared to FIG. 14 shown in
[0146]
Also, the speech decoding apparatus according to the present embodiment will be described with reference to FIG. FIG. 26 is a block diagram showing an example of a speech decoding apparatus according to
[0147]
The operation of the speech decoding apparatus configured as described above will be described below with reference to FIG. In FIG. 26, information L, A, S, and G is transmitted from the encoding device, and each information is input to the linear
[0148]
As described above, according to
[0149]
(Embodiment 5)
FIG. 27 shows a block diagram of a speech coding apparatus according to
[0150]
In FIG. 27,
[0151]
The operation of the speech signal encoding apparatus configured as described above will be described with reference to FIGS.
[0152]
First, in FIG. 27, the speech signal is input to the linear prediction analyzer 511. The linear prediction analyzer 511 performs linear prediction analysis of the input speech signal and calculates a linear prediction coefficient required by the
[0153]
FIG. 28 shows the configuration of a
[0154]
FIG. 29 shows a flowchart of the search of the
[0155]
Also, the speech decoding apparatus in the present embodiment will be described with reference to FIG. FIG. 30 is a block diagram showing an example of a speech decoding apparatus according to
[0156]
The operation of the speech decoding apparatus configured as described above will be described below with reference to FIG. In FIG. 30, information L, A, S, and G is transmitted from the encoding device, and each piece of information is input to the linear
[0157]
As described above, according to the fifth embodiment, it is possible to improve the performance of the entire noise codebook by adopting a configuration in which a random codebook with a small storage vector is used by switching according to a combination of channels.
[0158]
(Embodiment 6)
FIG. 31 shows a block diagram of a speech coding apparatus according to
[0159]
The operation of the speech signal encoding apparatus configured as described above will be described with reference to FIGS.
[0160]
First, in FIG. 31, the speech signal is input to the linear prediction analyzer 611. The linear prediction analyzer 611 performs linear prediction analysis of the input speech signal and calculates a linear prediction coefficient necessary for the synthesis filter 612. The calculated linear prediction coefficient is quantized and then output to the synthesis filter 612. Also, a code L representing the linear prediction coefficient output here is transmitted to the decoding device. Next, the synthesis filter 612 is configured using the quantized linear prediction coefficient output from the linear prediction analyzer 611. The distortion minimizer 614 drives this synthesis filter using only the
[0161]
In the speech coding apparatus according to the present embodiment, in order to narrow the dynamic range of the noise code gain, the logarithmic domain power is predicted by the
[0162]
FIG. 32 is a block diagram showing a configuration of
[0163]
FIG. 29 and FIG. 34 show flowcharts of the noise codebook search method in the present embodiment. FIG. 29 is a diagram shown in the fifth embodiment. The sixth embodiment is different in that an adaptive random codebook is used as the first random codebook and a random codebook is used as the second random codebook. The different parts in the processing contents are (algebraic codebook). First channel + second channel of first random codebook (adaptive random codebook) search portion and (first channel of first random codebook (adaptive random codebook) + algebraic codebook The second channel) of the search. In these searches, the first random codebook is an adaptive random codebook, and an adaptive process is applied. This is shown in the flowchart in FIG.
[0164]
FIG. 34 is a diagram showing a search portion (first channel of algebraic codebook + second channel of adaptive random codebook). The same procedure is performed in the search (the second channel of the algebraic codebook + the first channel of the adaptive random codebook). In FIG. 34, first, a search for the first algebraic codebook is performed. The search for the first algebraic codebook is performed by maximizing equation (1). Here, a plurality of candidates for increasing the value of equation (1) may be left, but in this example, only one candidate for maximizing equation (1) is selected to reduce the amount of calculation. This is the first random code vector. Next, a shift for matching the reference points of all the vectors stored in the second channel of the adaptive random codebook to the position of the excitation pulse output from the first channel of the selected algebraic codebook. Process. Next, the second random codebook is searched using the vector subjected to the shift process. Here, since the output from the first channel of the algebraic codebook has already been determined, a vector that minimizes the coding distortion in combination with the first channel of the algebraic codebook is assigned to the first of the adaptive random codebook. Select from 2 channels. The (shifted) vector of the second channel of the selected adaptive random codebook is determined as the second random code vector. Then, a vector obtained by adding the first noise code vector and the second noise code vector is output as a final noise code vector.
[0165]
FIG. 35 shows information A (adaptive codebook index), S (noise codebook index), G (gain codebook index), L (linear prediction coefficient) transmitted by the speech coding apparatus according to the embodiment of the present invention. An example of the decoding apparatus which receives (encoding information) and performs a decoding process is shown.
[0166]
FIG. 35 is a block diagram showing an example of a speech decoding apparatus according to
[0167]
The operation of the speech decoding apparatus configured as described above will be described below with reference to FIG. In FIG. 35, information L, A, S, and G is transmitted from the encoding device, and each piece of information is input to the linear
[0168]
As described above, according to the sixth embodiment, in the noise codebook composed of two channels, when the algebraic codebook is used for one channel and the random noise codebook is used for the other channel, the random codebook is used. It is possible to improve the use efficiency of random codebooks and improve speech quality by adjusting the reference point of the noise code vector stored in the code to the position of the pulse output from the algebraic codebook. .
[0169]
(Embodiment 7)
FIG. 36 is a block diagram showing an audio signal transmitter and receiver including the audio encoding / decoding device according to any of
[0170]
The audio signal transmitter and receiver configured as described above will be described with reference to FIG. First, the voice is converted into an electrical analog signal by the
[0171]
The transmission device and the reception device can be used as a mobile device or a base station device of a mobile communication device such as a mobile phone. Note that the medium for transmitting information is not limited to the radio wave as shown in this embodiment mode, and an optical signal or the like can be used, and a wired transmission path can also be used.
[0172]
Note that the speech encoding apparatus or decoding apparatus shown in the first to sixth embodiments and the transmitting apparatus and the receiving apparatus shown in the seventh embodiment are applied to a recording medium such as a magnetic disk, a magneto-optical disk, or a ROM cartridge. It can also be realized by recording as software, and by using the recording medium, a speech encoding device / decoding device and a transmitting device / receiving device are realized by a personal computer or the like using such a recording medium. Then you can.
[0173]
【The invention's effect】
As described above in detail, according to the present invention, in order to represent the position of one pulse of the algebraic codebook, in addition to the bit assigned to the pulse, bit information assigned to at least another other pulse. By using, the search range of the sound source pulse can be expanded to twice or more without increasing the number of bits.
[0174]
The present invention is also configured to have a plurality of types of algebraic codebooks, thereby effectively using algebraic codebooks having a large number of pulses with insufficient bits and improving the quality of speech with a short pitch period. In addition, the quality of the voiced rising portion or the like can be improved by using an algebraic codebook having a sufficient number of bits and a small number of pulses.
[0175]
The present invention can also improve speech quality by using both an algebraic codebook and a random noise codebook.
[0176]
The present invention also adapts a part of the algebraic codebook using a pitch peak position obtained from an adaptive code vector in a mode having a plurality of types of algebraic codebooks in a mode with a small number of pulses and an insufficient number of bits. The voice quality can be improved by changing the sound quality.
[0177]
The present invention also enables switching of modes without independent mode information by switching the codebook to be used according to the combination of each channel in a noise codebook composed of two or more channels. By making a part of each channel an algebraic codebook, it is possible to reduce the calculation amount and the memory amount.
[0178]
The present invention is also stored in a random noise codebook when a noise codebook composed of two channels is used by using an algebraic codebook for one channel and a random noise codebook for the other channel. By using the reference point of the noise code vector according to the position of the pulse output from the algebraic codebook, it is possible to improve the use efficiency of the random noise codebook and improve the speech quality.
[0179]
The present invention can also realize a transmitting apparatus or receiving apparatus that can provide higher-quality audio quality by providing the above-described audio encoding device or decoding device as an audio encoder or decoder.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of an algebraic codebook searcher according to
FIG. 2 is a schematic diagram showing a pulse search position of an algebraic codebook according to
FIG. 3 is a table showing the contents of an algebraic codebook in
FIG. 4 is a flowchart showing an algebraic codebook search method according to
FIG. 5 is a program example showing an algebraic codebook search method according to
FIG. 6 is a block diagram showing the configuration of a speech encoding apparatus according to
FIG. 7 is a block diagram showing the configuration of the speech decoding apparatus according to
FIG. 8 is a block diagram showing a configuration of a speech encoding apparatus according to
FIG. 9 is a flowchart showing a noise codebook search method according to
FIG. 10 is a schematic diagram showing a pulse search position of an algebraic codebook according to
FIG. 11 is a table showing the contents of an algebraic codebook in
FIG. 12 is a block diagram showing the configuration of a speech decoding apparatus according to
FIG. 13 is a block diagram showing a configuration of a speech encoding apparatus according to
FIG. 14 is a flowchart showing a noise codebook search method according to
FIG. 15 is a flowchart showing a 2-pulse algebraic codebook search method according to
FIG. 16 is a flowchart showing a combination search method for the first channel of the algebraic codebook and the second channel of the random codebook in
FIG. 17 is a flowchart showing a combination search method for the first channel of the random codebook and the second channel of the algebraic codebook in
FIG. 18 is a flowchart showing a combination search method for the first channel of the random codebook and the second channel of the random codebook in
FIG. 19 is a table showing the contents of an algebraic codebook in
FIG. 20 is a block diagram showing a configuration of a noise codebook according to the third embodiment of the present invention.
FIG. 21 is a block diagram showing a configuration of a speech decoding apparatus according to
FIG. 22 is a block diagram showing a configuration of a speech encoding apparatus according to
FIG. 23 is a block diagram showing a configuration of a phase adaptive algebraic codebook in
FIG. 24 is a schematic diagram showing a pulse search position of a phase adaptive algebraic codebook according to
FIG. 25 is a flowchart showing a noise codebook search method in
FIG. 26 is a block diagram showing a configuration of a speech decoding apparatus according to
FIG. 27 is a block diagram showing a configuration of a speech coding apparatus according to
FIG. 28 is a block diagram showing a configuration of a two-channel noise codebook according to
FIG. 29 is a flowchart showing a noise codebook search method according to the fifth embodiment of the present invention.
FIG. 30 is a block diagram showing a configuration of a speech decoding apparatus according to
FIG. 31 is a block diagram showing a configuration of a speech coding apparatus according to
FIG. 32 is a block diagram showing a configuration of a two-channel noise codebook according to
FIG. 33 is a schematic diagram illustrating the principle of an adaptive random codebook according to the sixth embodiment of the present invention.
FIG. 34 is a flowchart showing a method for searching for a combination of the first channel of the algebraic codebook and the second channel of the adaptive random codebook in
FIG. 35 is a block diagram showing a configuration of a speech decoding apparatus according to
FIG. 36 is a block diagram showing a configuration of a transmission apparatus and a reception apparatus in
FIG. 37 is a block diagram showing a configuration of a CELP speech encoding apparatus using a conventional algebraic codebook.
FIG. 38 is a schematic diagram showing a pulse search position of a conventional algebraic codebook.
FIG. 39 is a table showing the contents of a conventional algebraic codebook.
FIG. 40 is a flowchart showing a conventional algebraic codebook search method.
FIG. 41 is a program showing a conventional algebraic codebook search method
FIG. 42 is a block diagram showing a configuration of a conventional algebraic codebook searcher;
FIG. 43 is a schematic diagram showing a pulse search position of a conventional algebraic codebook.
FIG. 44 is a table showing the contents of a conventional algebraic codebook.
[Explanation of symbols]
101
102
103
104 First index / pulse position converter
105 Second index / pulse position converter
106 Third index / pulse position converter
107 Distortion evaluation function calculator
108 Distortion minimizer
151 Adaptive codebook
152, 172 Adjacent channel dependent algebraic codebook
153-155 multiplier
156 Adder
157 Gain prediction analyzer
158 Gain codebook
159 linear predictor
160 Synthesis filter
161 adder
162 Distortion Minimizer
203 first algebraic codebook
204 Second algebraic codebook
253 First algebraic codebook
254 Second algebraic codebook
304 A noise codebook composed of an algebraic codebook and a random codebook that is not an algebraic codebook
354 Noise codebook consisting of algebraic codebook and random codebook
403 Algebraic codebook, part of which is phase adaptive
404 A noise codebook composed of an algebraic codebook and a random codebook that is not an algebraic codebook
453 Algebraic codebook, part of which is a phase adaptive algebraic codebook
454 Noise codebook consisting of algebraic codebook and random codebook
554 Noise codebook consisting of algebraic codebook and two kinds of random codebook
604 Noise codebook composed of an algebraic codebook and a random codebook that is not an algebraic codebook and an adaptive random codebook
654 A noise codebook comprising an algebraic codebook, an adaptive random codebook, and a random codebook
Claims (5)
チャンネル毎に予め定められているパルス探索位置の中から1箇所を選び、選んだパルス探索位置を示すインデックスを生成するインデックス生成手段と、
チャンネル毎に、対象チャンネルに対するインデックスで示されるパルス探索位置に対応する複数のパルス候補の中から、対象チャンネルとは異なるチャンネルのインデックスに基づいて1本のパルスを特定する特定手段と、
を具備する音源信号符号化装置。An excitation signal encoding device that identifies one pulse for each channel from an algebraic codebook composed of a plurality of channels and generates a noise code vector by combining the identified pulses,
Index generation means for selecting one of the pulse search positions predetermined for each channel and generating an index indicating the selected pulse search position;
A specifying means for specifying one pulse based on an index of a channel different from the target channel from among a plurality of pulse candidates corresponding to a pulse search position indicated by an index for the target channel for each channel ;
A sound source signal encoding device comprising:
チャンネル毎に予め定められているパルス探索位置の中から1箇所を選び、選んだパルス探索位置を示すインデックスを生成する工程と、
チャンネル毎に、対象チャンネルに対するインデックスで示されるパルス探索位置に対応する複数のパルス候補の中から、対象チャンネルとは異なるチャンネルのインデックスに基づいて1本のパルスを特定する工程と、
を具備する音源信号符号化方法。An excitation signal encoding method for identifying one pulse for each channel from an algebraic codebook composed of a plurality of channels and generating a noise code vector by combining the identified pulses,
Selecting one place from pulse search positions predetermined for each channel, and generating an index indicating the selected pulse search position;
Identifying one pulse based on an index of a channel different from the target channel from among a plurality of pulse candidates corresponding to a pulse search position indicated by an index for the target channel for each channel ;
A sound source signal encoding method comprising:
チャンネル毎に、対象チャンネルに対するインデックスで示されるパルス探索位置に対応する複数のパルス候補の中から、対象チャンネルとは異なるチャンネルのインデックスに基づいて1本のパルスを特定する特定手段を具備する音源信号復号化装置。An excitation signal decoding device comprising the same algebraic codebook as the excitation signal encoding device according to claim 1 and generating a noise code vector using an index output from the excitation signal encoding device,
A sound source signal provided with a specifying means for specifying one pulse based on an index of a channel different from the target channel from among a plurality of pulse candidates corresponding to the pulse search position indicated by the index for the target channel for each channel Decryption device.
チャンネル毎に、対象チャンネルに対するインデックスで示されるパルス探索位置に対応する複数のパルス候補の中から、対象チャンネルとは異なるチャンネルのインデックスに基づいて1本のパルスを特定する工程を具備する音源信号復号化方法。A sound source signal decoding method for generating a noise code vector from an algebraic codebook used in the sound source signal encoding method according to claim 2, using an index generated by the sound source signal encoding method. And
Sound source signal decoding comprising a step of identifying one pulse based on an index of a channel different from the target channel from among a plurality of pulse candidates corresponding to pulse search positions indicated by the index for the target channel for each channel Method.
チャンネル毎に予め定められているパルス探索位置の中から1箇所を選び、選んだパルス探索位置を示すインデックスを生成する手順と、
チャンネル毎に、対象チャンネルに対するインデックスで示されるパルス探索位置に対応する複数のパルス候補の中から、対象チャンネルとは異なるチャンネルのインデックスに基づいて1本のパルスを特定する手順と、
を具備するプログラムを記録したコンピュータ読み取り可能な記録媒体。A computer recorded program for executing a sound source signal encoding method for identifying one pulse for each channel from an algebraic codebook composed of a plurality of channels and generating a noise code vector by combining the identified pulses. A computer- readable recording medium,
A procedure for selecting one place from pulse search positions determined in advance for each channel and generating an index indicating the selected pulse search position;
A procedure for identifying one pulse based on an index of a channel different from the target channel from among a plurality of pulse candidates corresponding to the pulse search position indicated by the index for the target channel for each channel ;
A computer- readable recording medium having recorded thereon a program comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP05618098A JP3954716B2 (en) | 1998-02-19 | 1998-02-19 | Excitation signal encoding apparatus, excitation signal decoding apparatus and method thereof, and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP05618098A JP3954716B2 (en) | 1998-02-19 | 1998-02-19 | Excitation signal encoding apparatus, excitation signal decoding apparatus and method thereof, and recording medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11237899A JPH11237899A (en) | 1999-08-31 |
JP3954716B2 true JP3954716B2 (en) | 2007-08-08 |
Family
ID=13019919
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP05618098A Expired - Lifetime JP3954716B2 (en) | 1998-02-19 | 1998-02-19 | Excitation signal encoding apparatus, excitation signal decoding apparatus and method thereof, and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3954716B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008001866A1 (en) * | 2006-06-29 | 2008-01-03 | Panasonic Corporation | Voice encoding device and voice encoding method |
RU2463674C2 (en) * | 2007-03-02 | 2012-10-10 | Панасоник Корпорэйшн | Encoding device and encoding method |
-
1998
- 1998-02-19 JP JP05618098A patent/JP3954716B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH11237899A (en) | 1999-08-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3346765B2 (en) | Audio decoding method and audio decoding device | |
US6594626B2 (en) | Voice encoding and voice decoding using an adaptive codebook and an algebraic codebook | |
KR100350340B1 (en) | Voice encoder, voice decoder, voice encoder/decoder, voice encoding method, voice decoding method and voice encoding/decoding method | |
WO1998006091A1 (en) | Voice encoder, voice decoder, recording medium on which program for realizing voice encoding/decoding is recorded and mobile communication apparatus | |
JP4173940B2 (en) | Speech coding apparatus and speech coding method | |
WO2001052241A1 (en) | Multi-mode voice encoding device and decoding device | |
JPH11327597A (en) | Voice coding device and voice decoding device | |
JP3343082B2 (en) | CELP speech encoder | |
KR100561018B1 (en) | Sound encoding apparatus and method, and sound decoding apparatus and method | |
JPH09160596A (en) | Voice coding device | |
JP3888097B2 (en) | Pitch cycle search range setting device, pitch cycle search device, decoding adaptive excitation vector generation device, speech coding device, speech decoding device, speech signal transmission device, speech signal reception device, mobile station device, and base station device | |
JP3954716B2 (en) | Excitation signal encoding apparatus, excitation signal decoding apparatus and method thereof, and recording medium | |
JP3579276B2 (en) | Audio encoding / decoding method | |
JP2538450B2 (en) | Speech excitation signal encoding / decoding method | |
JP3299099B2 (en) | Audio coding device | |
JP3319396B2 (en) | Speech encoder and speech encoder / decoder | |
JPH113098A (en) | Method and device of encoding speech | |
JP3552201B2 (en) | Voice encoding method and apparatus | |
JP3292227B2 (en) | Code-excited linear predictive speech coding method and decoding method thereof | |
JPH08185199A (en) | Voice coding device | |
JP3984048B2 (en) | Speech / acoustic signal encoding method and electronic apparatus | |
JP3410931B2 (en) | Audio encoding method and apparatus | |
JPH11296195A (en) | Method for encoding and decoding acoustic signal, program recording medium therefor and code book to be used for the same | |
JP4469400B2 (en) | Speech coding apparatus, speech decoding apparatus, speech coding method, and speech decoding method | |
JP2001134298A (en) | Speech encoding device and speech decoding device, and speech encoding/decoding system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041214 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20061016 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061031 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070130 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070315 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070410 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070427 |
|
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: 20110511 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110511 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120511 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120511 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130511 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130511 Year of fee payment: 6 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
EXPY | Cancellation because of completion of term |