(57)【特許請求の範囲】
【請求項１】
送信側の符号化装置で符号化された音声ベクトルを受信側の復号化装置で復号化する音声通信システムであって、
前記符号化装置が、
外部から入力された入力音声ベクトルの特性に最も適合するコードを送信用量子化テーブルから選択することにより、有音時の符号化処理を行う送信用符号帳と、
前記送信用符号帳によって選択された前記コードと前記入力音声ベクトルとの相関値を求めるとともに前記コードごとに前記相関値の積算値を順次計算し、前記入力音声ベクトルが有音時のものから無音時のものに切り換わる度に前回の更新処理の後に行われた前記符号化処理で最も多く選択された前記コードを当該符号化処理のうち前記有音時の当該符号化処理のみを用いて判定し、この判定で得られた当該コードについての前記積算値を用いて更新用コードを生成し、この更新用コードを前記送信用符号帳の所望のコードと入れ替えることにより更新処理を行う符号帳更新回路と、
有音時には前記送信用符号帳で選択された最適コードの情報を送信情報に格納し、且つ、無音時には前記符号帳更新回路で生成された前記更新用コードを送信情報の剰余ビットに格納して送信する送信回路と、
を有し、且つ、
前記復号化装置が、
前記符号化装置から受信した情報から前記最適コードの情報または更新用コードを取り出す受信回路と、
前記最適コードの情報が取り出されたときは当該情報に対応するコードを受信用量子化テーブルから選択することによって入力音声ベクトルの有音時の復号化処理を行い、前記更新用コードが取り出されたときは当該更新用コードを所望の前記コードと入れ替えることにより更新処理を行う受信用符号帳と、
を有することを特徴とする音声通信システム。
【請求項２】
前記符号帳更新回路および前記受信用符号帳が、前記コードのうち、前回入れ替えられてからの経過時間が最も長いコードを前記更新用コードと入れ替えることを特徴とする請求項１に記載の音声通信システム。
【請求項３】
前記符号帳更新回路が前記更新用コードを生成したときに送信情報の更新フラグをセットし、且つ、前記受信用符号帳が受信情報の前記更新フラグがセットされているときに更新処理を行うことを特徴とする請求項１または２に記載の音声通信システム。
【請求項４】
前記送信回路が多重化回路であり、且つ、前記受信回路が多重分離回路であることを特徴とする請求項１〜３のいずれかに記載の音声通信システム。
【請求項５】
前記送信用量子化テーブルおよび前記受信用量子化テーブルが、前記符号帳更新回路によって更新することができない固定コードと前記符号帳更新回路によって更新することができる可変コードとを格納するテーブルであることを特徴とする請求項１〜４のいずれかに記載の音声通信システム。
【請求項６】
前記送信用量子化テーブルおよび前記受信用量子化テーブルが、雑音を表わすベクトル量である雑音コードベクトルを格納するテーブルであることを特徴とする請求項１〜５のいずれかに記載の音声通信システム。
【請求項７】
前記送信用量子化テーブルおよび前記受信用量子化テーブルが、雑音のゲインを表すスカラ量である雑音ゲインコードを格納するテーブルであることを特徴とする請求項１〜５のいずれかに記載の音声通信システム。
【請求項８】
前記送信用量子化テーブルおよび前記受信用量子化テーブルが、音声のピッチ周期を表すスカラ量であるピッチラグコードを格納するテーブルであることを特徴とする請求項１〜５のいずれかに記載の音声通信システム。
【請求項９】
前記送信用量子化テーブルおよび前記受信用量子化テーブルが、ピッチ周期の度合いを表すスカラ量であるピッチゲインコードを格納するテーブルであることを特徴とする請求項１〜５のいずれかに記載の音声通信システム。
【請求項１０】
送信処理で符号化された音声ベクトルを受信処理で復号化する音声通信方法であって、
前記送信処理が、
外部から入力された入力音声ベクトルの特性に最も適合するコードを送信用量子化テーブルから選択することにより、有音時の符号化処理を行う符号化過程と、
前記符号化過程によって選択された前記コードと前記入力音声ベクトルとの相関値を求めるとともに前記コードごとに前記相関値の積算値を順次計算し、前記入力音声ベクトルが有音時のものから無音時のものに切り換わる度に前回の更新処理の後に行われた前記符号化処理で最も多く選択された前記コードを当該符号化処理のうち前記有音時の当該符号化処理のみを用いて判定し、この判定で得られた当該コードについての前記積算値を用いて更新用コードを生成し、この更新用コードを前記送信用量子化テーブルの所望のコードと入れ替えることにより更新処理を行う送信側更新過程と、
有音時には前記符号化過程で選択された最適コードの情報を送信情報に格納し、且つ、無音時には前記送信側更新過程で生成された前記更新用コードを送信情報の剰余ビットに格納して送信する送信過程と、
を有し、且つ、
前記受信処理が、
前記符号化装置から受信した情報から前記最適コードの情報または更新用コードを取り出す受信過程と、
前記最適コードの情報が取り出されたときに、当該情報に対応するコードを受信用量子化テーブルから選択することによって入力音声ベクトルの有音時の復号化を行う復合化過程と、
前記更新用コードが取り出されたときは当該更新用コードを所望の前記コードと入れ替える受信側更新過程と、
を有することを特徴とする音声通信方法。
【請求項１１】
前記送信側更新過程および前記受信側更新過程が、前記コードのうち、前回入れ替えられてからの経過時間が最も長いコードを前記更新用コードと入れ替えることを特徴とする請求項１０に記載の音声通信方法。
【請求項１２】
前記送信側更新過程が前記更新用コードを生成したときに送信情報の更新フラグをセットし、且つ、前記受信側更新過程が受信情報の前記更新フラグがセットされているときに更新を行うことを特徴とする請求項１０または１１に記載の音声通信方法。
【請求項１３】
前記送信過程が多重化処理を含み、且つ、前記受信過程が多重分離処理を含むことを特徴とする請求項１０〜１２のいずれかに記載の音声通信方法。
【請求項１４】
前記送信用量子化テーブルおよび前記受信用量子化テーブルが、前記符号帳更新回路によって更新することができない固定コードと前記符号帳更新回路によって更新することができる可変コードとを格納するテーブルであることを特徴とする請求項１０〜１３のいずれかに記載の音声通信方法。
【請求項１５】
前記送信用量子化テーブルおよび前記受信用量子化テーブルが、雑音を表わすベクトル量である雑音コードベクトルを格納するテーブルであることを特徴とする請求項１０〜１３のいずれかに記載の音声通信方法。
【請求項１６】
前記送信用量子化テーブルおよび前記受信用量子化テーブルが、雑音のゲインを表すスカラ量である雑音ゲインコードを格納するテーブルであることを特徴とする請求項１０〜１３のいずれかに記載の音声通信方法。
【請求項１７】
前記送信用量子化テーブルおよび前記受信用量子化テーブルが、音声のピッチ周期を表すスカラ量であるピッチラグコードを格納するテーブルであることを特徴とする請求項１０〜１３のいずれかに記載の音声通信方法。
【請求項１８】
前記送信用量子化テーブルおよび前記受信用量子化テーブルが、ピッチ周期の度合いを表すスカラ量であるピッチゲインコードを格納するテーブルであることを特徴とする請求項１０〜１３のいずれかに記載の音声通信方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、例えば移動体通信システム等の通信システムにおいて、音声信号を符号化・復号化する技術に関するものである。
【０００２】
【従来の技術】
電話での会話においては、通常は、通話者が自分で話している時間と通話相手の話を聞いている時間とが交互に存在する。ここで、通話相手の話しを聞いている時は、相手側に送る情報は「無音」の情報となる（すなわち自分は話していない）ので、それ程多くの情報量を必要としない。この様なことから、有音時（話している時）は伝送レートを高くし、無音時（聞いている時）は伝送レートを低くするような可変レート型音声符号化・復号化方式が提案されている（下記文献１参照）。この可変レート型音声符号化・復号化方式によれば、音声品質を保ったまま平均伝送レートを下げることができるという効果を得ることができる。
【０００３】
参考文献１：ＤｅＪａｃｏ  Ａ．，  Ｇａｒｄｎｅｒ  Ｗ．，  ＪａｃｏｂｓＰ．，  Ｌｅｅ  Ｃ．  ”ＱＣＥＬＰ”：Ｔｈｅ  Ｎｏｒｔｈ  Ａｍｅｒｉｃａｎ  ＣＤＭＡ  Ｄｉｇｉｔａｌ  Ｃｅｌｌｕｌａｒ  Ｖａｒｉａｂｌｅ  Ｒａｔｅ  Ｓｐｅｅｃｈ  Ｃｏｄｉｎｇ  Ｓｔａｎｄａｒｄ”，  ＩＥＥＥ  Ｗｏｒｋｓｈｏｐ  ｏｎ  Ｓｐｅｅｃｈ  Ｃｏｄｉｎｇ  ｆｏｒ  Ｔｅｌｅｃｏｍｍｕｎ．，  ｐｐ．５−６（１９９３）
【０００４】
【発明が解決しようとする課題】
上述のような可変レート型音声符号化・復号化方式は、伝送容量を可変とすることができる伝送路を用いる場合には、大きい効果を得ることができる。しかし、伝送容量が固定である伝送路を用いる場合には、十分な効果を得ることができない。つまり、音声情報を伝送する伝送路の伝送容量が固定であった場合には、その伝送路を伝送する情報量が伝送容量よりも小さい場合であっても常に一定量の伝送路を占有してしまうこととなるため、伝送レートを可変とする意味がない。
【０００５】
また、音声符号化・復号化方式では、符号化に用いる量子化コードと音声情報との相関性が良い場合には良好な音声品質を得ることができるが、この相関性が悪い場合には十分な音声品質を得ることができない。
【０００６】
【課題を解決するための手段】
（１）第１の発明は、送信側の符号化装置で符号化された音声ベクトルを受信側の復号化装置で復号化する音声通信システムに関する。
そして、符号化装置が、外部から入力された入力音声ベクトルの特性に最も適合するコードを送信用量子化テーブルから選択することにより、有音時の符号化処理を行う送信用符号帳と、送信用符号帳によって選択されたコードと入力音声ベクトルとの相関値を求めるとともにコードごとに相関値の積算値を順次計算し、入力音声ベクトルが有音時のものから無音時のものに切り換わる度に前回の更新処理の後に行われた符号化処理で最も多く選択されたコードを当該符号化処理のうち有音時の当該符号化処理のみを用いて判定し、この判定で得られた当該コードについての積算値を用いて更新用コードを生成し、この更新用コードを送信用符号帳の所望のコードと入れ替えることにより更新処理を行う符号帳更新回路と、有音時には送信用符号帳で選択された最適コードの情報を送信情報に格納し、且つ、無音時には符号帳更新回路で生成された更新用コードを送信情報の剰余ビットに格納して送信する送信回路とを有し、且つ、
復号化装置が、符号化装置から受信した情報から最適コードの情報または更新用コードを取り出す受信回路と、最適コードの情報が取り出されたときは当該情報に対応するコードを受信用量子化テーブルから選択することによって入力音声ベクトルの有音時の復号化処理を行い、更新用コードが取り出されたときは当該更新用コードを所望のコードと入れ替えることにより更新処理を行う受信用符号帳とを有する。
【０００７】
（２）第２の発明は、送信処理で符号化された音声ベクトルを受信処理で復号化する音声通信方法に関する。
そして、送信処理が、外部から入力された入力音声ベクトルの特性に最も適合するコードを送信用量子化テーブルから選択することにより、有音時の符号化処理を行う符号化過程と、符号化過程によって選択されたコードと入力音声ベクトルとの相関値を求めるとともにコードごとに相関値の積算値を順次計算し、入力音声ベクトルが有音時のものから無音時のものに切り換わる度に前回の更新処理の後に行われた符号化処理で最も多く選択されたコードを当該符号化処理のうち有音時の当該符号化処理のみを用いて判定し、この判定で得られた当該コードについての積算値を用いて更新用コードを生成し、この更新用コードを送信用量子化テーブルの所望のコードと入れ替えることにより更新処理を行う送信側更新過程と、有音時には符号化過程で選択された最適コードの情報を送信情報に格納し、且つ、無音時には送信側更新過程で生成された更新用コードを送信情報の剰余ビットに格納して送信する送信過程とを有し、且つ、
受信処理が、符号化装置から受信した情報から最適コードの情報または更新用コードを取り出す受信過程と、最適コードの情報が取り出されたときに、当該情報に対応するコードを受信用量子化テーブルから選択することによって入力音声ベクトルの有音時の復号化を行う復合化過程と、更新用コードが取り出されたときは当該更新用コードを所望のコードと入れ替える受信側更新過程とを有する。
【０００８】
第１、第２の発明によれば、入力音声ベクトルが有音時のものから無音時のものに切り換わる度に送信用量子化テーブルおよび受信用量子化テーブルの両方を更新することができ、したがって、雑音感を向上させてノイズの低減を図ることができる。
また、無音時送信情報の剰余ビットを用いるので、入力音声ベクトルが有音時のものから無音時のものに切り換わる度に更新コードを送信しても、伝送速度に影響を与えない。
加えて、符号化処理で最も多く選択されたコードを判定する際に、有音時の符号化処理での選択結果のみを考慮することとし、無音時の符号化処理での選択結果を考慮しないので、有音時の周波数特性を非常に有効に向上させることができる。
【００１１】
【発明の実施の形態】
一般に、音声合成では、ピッチやパワーなどの情報をもつ音源部と、音韻を表わすスペクトル情報をもつフィルタ部（人間の声道に相当）とを独立に制御して合成音を得る。母音などの有声音に対してはパルス発生器により周期的音源を、無声音に対しては雑音発生器より非周期性音源を生成し、声道の伝達特性と等価な合成フィルタを駆動して音声を合成する。
【００１２】
第１の実施の形態
この発明の第１の実施の形態に係る音声信号の符号化・復号化装置および符号化・復号化方法について、図面を用いて説明する。
【００１３】
まず、この実施の形態に係る符号器について説明する。
【００１４】
図１に示したように、符号器は、有音・無音判定器１０１、ＬＰＣ（Ｌｉｎｅａｒ  Ｐｒｅｄｉｃｔｉｖｅ  Ｃｏｄｉｎｇ：線形予測符号化）分析・量子化部１０２、合成フィルタ１０３、加算器１０４、重み付き誤差計算回路１０５、多重化回路１０６、送信端子１０７、ランダム雑音発生器１０８、積算器１０９、ランダム雑音用ゲイン符号帳１１０、雑音符号帳１１１、積算器１１２、ピッチ合成フィルタ１１３、スイッチ１１４、雑音ゲイン符号帳１１５、ピッチラグ符号帳１１６、ピッチゲイン符号帳１１７および雑音符号帳更新回路１１８の各ブロックから構成される。
【００１５】
以下に各ブロックの機能を説明する。
【００１６】
有音・無音判定器１０１には、入力音声ベクトルｓ１０１がフレーム単位で入力される。この入力音声ベクトルｓ１０１は、音声波形を示すデータであり、各フレームはｎ個の標本値｛ｙｉ  ｝，ｉ＝１，２，・・・，ｎによって構成されている。有音・無音判定器１０１は、この入力音声ベクトルｓ１０１が示す音声信号パワー（すなわち音声波形の振幅）をしきい値と比較する。そして、この入力音声パワーがしきい値よりも大きいときは、そのフレームを有音であると判定し、入力音声パワーがしきい値よりも小さいときはそのフレームを無音であると判定する。さらに、この有音・無音判定器１０１は、この鑑定結果に基づいて、有音・無音フラグｓ１０２をセットまたはリセットする。
【００１７】
ＬＰＣ分析・量子化部１０２としては、例えばＣＥＬＰ（Ｃｏｄｅ  Ｅｘｃｉｔｅｄ  Ｌｉｎｅａｒ  Ｐｒｅｄｉｃｔｉｖｅ：コード励振線形予測）型のものが使用される。このＬＰＣ分析・量子化部にも、入力音声ベクトルｓ１０１がフレーム単位で入力される。そして、この入力音声ベクトルｓ１０１が示す入力音声の声道分析（ＬＰＣ分析）と量子化とを行い、この量子化の結果を示すデータであるＬＰＣインデックスｓ１０３を多重化回路１０６に対して出力するとともに、ＬＰＣ分析の結果を示すデータであるＬＰＣ係数量子化値（すなわち、後述の線形予測係数｛αｉ｝，ｉ＝１，２，・・・，ｐ）ｓ１０４を合成フィルタ１０３に対して出力する。
【００１８】
ここで、ＬＰＣ分析は、以下のようにして行われる。
【００１９】
式（Ａ）において、ｙｎ  は音声波形（入力音声ベクトルｓ１０１によって得られる）の任意の標本値であり、ｙｎ−１  ，・・・，ｙｎ−ｐ  は標本値ｙｎ  より前（過去）のｐ個の標本値である（同じフレーム内の前の標本数がｐ個に満たない場合は前のフレーム内の標本値を使用する）。また、α１  ，α２  ，・・・，αｐ  は係数である。この式（Ａ）は、任意の標本値ｙｎ  が、それ以前の標本値ｙｎ−１  ，・・・，ｙｎ−ｐ  と係数α１  ，α２  ，・・・，αｐ  とを掛け合わせたもの（加重平均すなわち線形一次結合）で近似できることを意味している。すなわち、式（Ａ）によれば、それ以前の標本値ｙｎ−１  ，・・・，ｙｎ−ｐ  を用いて、標本値ｙｎ  を予測することが可能である。ここで、ｙｎ  の予測値と実際の測定値との誤差は、上述の係数α１  ，α２  ，・・・，αｐ  に応じて異なる値となる。そして、この誤差の自乗平均が最小の値（これを最小自乗誤差と称する）をとるときのα１  ，α２  ，・・・，αｐ  を線形予測係数と称し、この線形予測係数｛αｉ｝，ｉ＝１，２，・・・，ｐを求めることをＬＰＣ分析（線形予測分析）という。
【００２０】
ｙｎ  ≒α１  ｙｎ−１  ＋α２  ｙｎ−２  ＋・・・＋αｐ  ｙｎ−ｐ          −（Ａ）
最小自乗誤差は、以下のようにして求めることができる。まず、標本値ｙｎ  の予測値をｙ´ｎ  とすると、
ｙ´ｎ  ＝α１  ｙｎ−１  ＋α２  ｙｎ−２  ＋・・・＋αｐ  ｙｎ−ｐ        −（Ｂ）
となる。従って、予測値ｙ´ｎ  と実際の測定値ｙｎ  との誤差（予測誤差）をεｎ  とすると、このεｎ  は下式（Ｃ）で表される。
【００２１】
【数１】
0003575967.tif 000002
【００２２】
ここで、上式Ｃの−αｉ  をαｉ  に置き換えると、この予測誤差は、下式（Ｄ）で表される。
【００２３】
【数２】
0003575967.tif 000003
【００２４】
したがって、予測誤差の自乗平均は下式（Ｅ）で表される。
【００２５】
εｎ２＝（ｙｎ  ＋α１  ｙｎー１  ＋α２  ｙｎー２  ＋・・・＋αｐ  ｙｎ−ｐ  ）２  −（Ｅ）
これは正もしくは０の量であり、極値が一つしかなければ、それが最小値である。よって、予測誤差の自乗平均を最小にするような係数｛αｉ｝は、式（Ｅ）の各αｉについての偏微分係数を０とおく連立ｐ元一次方程式の解として求められる。
【００２６】
合成フィルタ１０３は、音韻を表わすスペクトル情報をもつフィルタ部（人間の声道に相当する）である。有音時には、この声道による調整は、全極型（ａｌｌ  ｐｏｌｅ  ｔｙｐｅ）  もしくは極零型（ｚｅｒｏ  ｐｏｌｅ  ｔｙｐｅ）のフィルタ特性で近似される。このフィルタの特性には、音源のマクロな周波数特性（スペクトルエンベロープ特性）も織り込まれており、更に放射特性も含まれる。また、無音時には、ベクトルｓ１１１にゲインｓ１１２を乗じた後で合成フィルタ１０３に通すことにより、合成音ベクトルｓ１０５を得る。
【００２７】
上述したように、この合成フィルタ１０３は、線形予測係数｛αｉ｝，ｉ＝１，２，・・・，ｐをＬＰＣ係数量子化値ｓ１０４として入力する。そして、かかる線形予測係数を用いて所定の演算処理を行い、さらに演算結果をｚ変換することにより、下式（Ｆ）に示したような声道特性Ｈ（ｚ）を得る。
【００２８】
Ｈ（ｚ）＝ε（ｚ）−１ｙ（ｚ）      −（Ｆ）
そして、スイッチ１１４を介して入力したデータにこの声道特性Ｈ（ｚ）を乗じることにより、後述の合成音ベクトルｓ１１５またはｓ１１６を生成し、出力する。
【００２９】
重み付き誤差計算回路１０５は、外部から入力した誤差ベクトルｓ１０７を用いて重み付き誤差Ｅｗｒ［ｉ］を計算する。そして、この重み付き誤差計算回路１０５は、重み付き誤差Ｅｗｒ［ｉ］が最小となるときのｉを判断し、このｉを最適ゲインインデックスｓ１１９として多重化回路１０６に出力する。
【００３０】
多重化回路１０６は、有音・無音フラグｓ１０２により、現在処理している入力音声ベクトルｓ１０１のフレームが無音フレームであるのか或いは有音フレームであるのかを判断する。そして、無音フレームの場合には、有音・無音フラグ値ｓ１０２、ＬＰＣインデックスｓ１０３および最適ゲインインデックスｓ１１９を多重化し、トータルコードｓ１０９として、後述のようにして伝送路へ出力する。一方、有音フレームの場合には、有音・無音フラグ値ｓ１０２、ＬＰＣインデックスｓ１０３、最適ゲインインデックスｓ１１９、最適雑音コードインデックスｓ１１８、最適ピッチラグｓ１２１および最適ピッチゲインｓ１２２を多重化し、トータルコードｓ１１０として、後述のようにして伝送路へ出力する。図９に、有音フレームおよび無音フレームの伝送方法の例を概念的に示す。同図に示したように、多重化回路１０６は、トータルコードｓ１０９をＴｓ  ビットの無音フレームとして伝送し、また、トータルコードｓ１１０をＴｓ  ビットの有音フレームとして伝送する。
【００３１】
また、図１８に、有音フレームの各パラメータのビット割り当てを示す。同図において、ＬＰＣインデックスｓ１０３は例えば３９ビットの声道パラメータとして、最適ピッチラグｓ１２１および最適ピッチゲインｓ１２２はピッチフィルタパラメータとして、最適雑音コードインデックスｓ１１８および最適ゲインインデックスｓ１１９はコードブックパラメータとして、伝送される。
【００３２】
ランダム雑音発生器１０８は、無声部分用の音源である。このランダム雑音発生器１０８が出力するランダム雑音コードベクトルｓ１１１は、無音状態を、空気の乱流に相当する白色ランダム雑音で近似することによって生成される。また、このランダム雑音コードベクトルｓ１１１の平均エネルギーは、人間の声の強さに対応している。
【００３３】
ランダム雑音用ゲイン符号帳１１０には、ランダム雑音のゲインを示すスカラ量のデータである、ランダム雑音ゲインｓ１１２（Ｇｒ［ｉ］（ｉ＝１〜Ｎ））が格納される。
【００３４】
雑音符号帳１１１は、有声部分用の音源である。この雑音符号帳１１１には、雑音を表わすベクトル量である、雑音コードベクトルｓ１１３（Ｃｓ［ｊ］（ｊ＝１〜Ｍ））が格納される。この雑音コードベクトルｓ１１３は、後述するようにして、更新されるとともに復号器側へ伝送される。図１０は、雑音符号帳１１１の量子化テーブルを示す概念図である。同図に示したように、Ｍ（＝Ｍｆ  ＋Ｍａ  ）個あるコードベクトルＣｓ［１］〜Ｃｓ［Ｍｆ  ＋Ｍａ  ］のうち、Ｍｆ  個のコードベクトルＣｓ［１］〜Ｃｓ［Ｍｆ  ］は固定のベクトルであり、Ｍａ  個のコードベクトルＣｓ［Ｍｆ  ＋１］〜Ｃｓ［Ｍｆ  ＋Ｍａ  ］は可変のベクトルである。可変のベクトルＣｓ［Ｍｆ  ＋１］〜Ｃｓ［Ｍｆ  ＋Ｍａ  ］は、ある初期値、例えばランダム雑音を持つ。
【００３５】
ピッチ合成フィルタ１１３は、人間の声帯に相当し、雑音（すなわち雑音コードベクトルｓ１１３）に周期性を与える。この繰り返し周期が声の高さ（ピッチ周期）に対応し、波形のピーク値が声の強さに対応する。
【００３６】
スイッチ１１４は、有音・無音判定器１０１が現在処理している入力音声ベクトルのフレームが無音フレームであると判定した場合には、ランダム雑音発生器１０８側へ倒され、かかるフレームが有音フレームと判定された場合には雑音符号帳１１１側へ倒される。
【００３７】
雑音ゲイン符号帳１１５は、雑音のゲインを表わすスカラ量のデータである、ゲインｓ１１４（Ｇｓ［ｋ］（ｋ＝１〜Ｘ））を格納する。
【００３８】
ピッチラグ符号帳１１６はピッチ周期を表わすスカラ量のデータである、ピッチラグｓ１１５（Ｌ［ｍ］（ｍ＝１〜Ｙ））を格納し、ピッチ合成フィルタ１１３へ出力する。
【００３９】
ピッチゲイン符号帳１１７は、相関の度合を表わすスカラ量のデータである、ピッチゲインｓ１１６（ｂ［ｎ］（ｎ＝１〜Ｚ））を格納し、ピッチ合成フィルタ１１３へ出力する。
【００４０】
雑音符号帳更新回路１１８は、雑音符号帳１１１の可変領域に格納されたコードベクトルＣｓ［Ｍｆ  ＋１］〜Ｃｓ［Ｍｆ  ＋Ｍａ  ］（図１０参照）のうち、前回までの有音フレームで一番選択回数の多かったコードベクトルを用いて、以下のような演算を行うことにより、更新用の雑音ベクトルを生成する。
【００４１】
まず、有音時の処理において、有音フレームで選択されたコードベクトルに対する相関値を計算する。そして、有音フレームが連続する場合には、各コードベクトルごとに、相関値を積算していく。
【００４２】
相関の演算としては、例えばＬＰＣ分析・量子化部１０２と同様に最小自乗誤差を求める方法がある。この方法では、入力音声ベクトルｓ１０１に対する相関値ｓは、各音声フレーム（１〜ｎ）の入力信号ｓ１、ｓ２、・・・、ｓｎを用いて、（ｓ１＋ｓ２＋・・・＋ｓｎ）／ｎより求められ、また、インパルス応答マトリクスの相関値Ｈは、各フレーム（１〜ｎ）のインパルス応答マトリクスＨ１  、Ｈ２  、・・・、Ｈｎ  を用いて、（Ｈ１  ＋Ｈ２  ＋・・・＋Ｈｎ  ）／ｎより求められる。ここで、インパルス応答マトリクスＨ１  、Ｈ２  、・・・、Ｈｎ  は、合成フィルタ１０３のフィルタ特性を表すインパルス応答マトリクスである。
【００４３】
ここで、更新用の雑音コードベクトルをＣ´ｉ  とすると、
ｓ＝Ｈ・ｃ´ｉ          −（Ｇ）
となればよいので、式（Ｇ）より、
ｃ´ｉ  ＝Ｈー１・ｓ      −（Ｈ）
となり、式（Ｈ）より最適な更新用コードベクトルｃ´ｉ  が求められる。
【００４４】
このコードベクトルｃ´ｉ  は、可変ベクトル中で最も古いベクトルと置き換えられる。
【００４５】
以下に、コードベクトルを更新する際の動作例を、図１４〜図１８を用いて説明する。なお、ここでは、説明を簡単にするために、固定コードベクトルを４組とし、可変コードベクトル１組とする。また、これらの５組のコードベクトルは、二次元であるものとする。
【００４６】
図１４は、ある時点における符号器および復号器（図２を用いて後述する）の雑音符号帳１１１，１２６の状態を示す図である。図１４に示したように、雑音符号帳１１１内の量子化テーブルには、固定コードベクトル０，１，２，３として（ｘ，ｙ）＝（１，１），（１，２），（２，１），（２，２）が格納され、また、可変コードベクトル（ｘ，ｙ）＝（−１，−１）が格納されている。
【００４７】
図１６は、図１４に示した雑音符号帳１１１，１２６にそれぞれ格納された２次元コードベクトルの分布状態を示す図である。図１６において、固定コードベクトル０〜３について入力信号に対して良好な相関を有しているものとすると、一般的には、可変コードベクトル４については良好な相関を有しているとはいえない。このため、この実施の形態では、上述のようにして、雑音符号帳更新回路１１８（図１参照）が、雑音符号帳１１１，１２６にそれぞれ格納された可変コードベクトル４を、より量子化誤差の少ないコードベクトルに更新する。ここでは、図１７に示したように、この可変コードベクトル４を（−１，−１）から（ａ１  ，ａ２  ）に更新したとする。更新後の可変コードベクトル４は、図１４に示したように、雑音符号帳１１１に伝送されるとともに、多重化回路１０６および多重分離回路１２１を介して雑音符号帳１２６へも送られる。これにより、図１５に示したように、復号器の雑音符号帳１１１，１２６内の可変コードベクトル４が、それぞれ、（−１，−１）から（ａ１  ，ａ２  ）に更新される。
【００４８】
このように、この実施の形態では、可変コードベクトル４を入力音声ベクトルｓ１０１に応じてリアルタイムに適切なベクトルに置き換え、さらに、更新後の可変コードベクトル４を復号器側に伝送し（後述するように変更フラグｓ１２３とともに伝送される）、復号器の雑音符号帳１２６も同様に更新することにより、予測誤差の少ない、より精度の高い符号化・復号化を行うことができる。
【００４９】
さらに、この実施の形態では、更新されたコードベクトルを、無音フレームの剰余ビットを用いて伝送する。上述したように、伝送路の伝送容量が固定であった場合には、その伝送路を伝送する情報量が伝送容量よりも小さい場合であっても常に一定量の伝送路を占有してしまうこととなる。そして、伝送する情報が無音フレームであるときは、有音フレームを伝送する場合よりも情報量が少ないため、剰余ビットが生じる。この実施の形態では、この無音フレーム伝送時の剰余ビットを利用して、更新されたコードベクトルを符号器から復号器に伝送する。
【００５０】
上述の図９に示したように、有音フレームを伝送するときの伝送容量と無音フレームを伝送するときの伝送容量とは同一であり、ともにＴｓ  ビットである。また、上述の図１８に示したように、有音フレームを伝送する場合には、伝送容量と同じビット数の情報が伝送される（図１８はＴｓ  ＝１６０の例を示している）。これに対して、無音フレームを伝送するときに必要な伝送容量はＴｒ  ビットであり（図９参照）、伝送容量Ｔｓ  ビットよりも小さいため、Ｔｓ  −Ｔｒ  ビットの剰余ビット（空き容量）が生じる。この実施の形態では、このＴｓ  −Ｔｒ  ビットの領域を用いて、各コードベクトル０，１，２，３，４を符号器から復号器に伝送するのである。
【００５１】
次に、この実施の形態に係る復号器について説明する。
【００５２】
図２に示したように、復号器は、入力端子１２２、多重分離回路１２１、ランダム雑音発生器１２３、ランダム雑音用ゲイン符号帳１２５、乗算器１２４、雑音符号帳１２６、雑音ゲイン符号帳１３０、乗算器１２７、ピッチ合成フィルタ１２８、ピッチラグ符号帳１３１、ピッチゲイン符号帳１３２、スイッチ１２９、ＬＰＣ逆量子化部１１９、および合成フィルタ１２０から構成される。
【００５３】
以下、図２に示した各ブロックの機能について説明する。
【００５４】
多重分離回路１２１は、入力端子１２２を介して符号器から音声フレームを入力する。そして、このフレームの情報の一部である有音・無音フラグｓ１０２により、入力されたフレームが無音フレームであるのか或いは有音フレームであるのかを判断する。そして、このフレームが無音フレームである場合（すなわち、このフレーム内の情報がトータルコードｓ１０９である場合）には、このフレーム内の情報を有音・無音フラグ値ｓ１０２、ＬＰＣインデックスｓ１０３、最適ゲインインデックスｓ１１９等に多重分離する。一方、入力されたフレームが有音フレームである場合（すなわち、このフレーム内の情報がトータルコードｓ１１０である場合）には、このフレーム内の情報を有音・無音フラグ値ｓ１０２、ＬＰＣインデックスｓ１０３、最適ゲインインデックスｓ１１９、最適雑音コードインデックスｓ１１８、最適ピッチラグｓ１２１、最適ピッチゲインｓ１２２等に多重分離する。
【００５５】
ＬＰＣ逆量子化部１１９は、ＬＰＣインデックスｓ１０３を用いてＬＰＣ係数量子化値ｓ１０４を計算する。
【００５６】
スイッチ１２９は、多重分離回路１２１から入力した有音・無音フラグｓ１０２が有音フレームである場合は雑音符号帳１２６側へ倒され、無音フレームである場合はランダム雑音発生器１２３側へ倒される。
【００５７】
雑音符号帳１２６は、雑音を表わすベクトル量のデータである雑音コードベクトルが格納される。また、更新用の雑音コードベクトルｓ１１７と更新フラグｓ１２３とを多重分離回路１２１から入力し、これらの情報ｓ１１７，ｓ１２３に基づいて、内部の量子化テーブルに格納された雑音コードベクトルを更新する。
【００５８】
雑音ゲイン符号帳１３０は、雑音のゲインを表すスカラ量である、雑音ゲインを格納する。
【００５９】
ピッチ合成フィルタ１２８は、人間の声帯に相当し、雑音（すなわち雑音コードベクトルｓ１１３）に周期性を与える。この繰り返し周期が声の高さ（ピッチ周期）に対応し、波形のピーク値が声の強さに対応する。
【００６０】
ピッチラグ符号帳１３１は、ピッチ周期を表わすスカラ量のデータである、ピッチラグを格納する。
【００６１】
ピッチゲイン符号帳１３２は、長期相関の度合を表わすスカラ量データである、ピッチゲインを格納する。
【００６２】
ランダム雑音発生器１２３は、無声音源であり、ランダム雑音コードベクトルを格納する。
【００６３】
ランダム雑音用ゲイン符号帳１２５は、ランダム雑音のゲインを表わすスカラ量のデータである、ランダム雑音ゲインｓ１２４を格納する。
【００６４】
合成フィルタ１２０は、合成音ベクトルを生成する。この合成音ベクトルは、音韻を表わすスペクトル情報であり、この合成フィルタ１２０は人間の声道に相当する。
【００６５】
次に、符号器および復号器の全体動作について説明する。
【００６６】
最初に、符号器の全体動作について説明する。
【００６７】
まず、上述のように、符号器のＬＰＣ分析・量子化部１０２が、フレーム単位で入力した入力音声ベクトルｓ１０１を用いてＬＰＣ係数量子化値ｓ１０４およびＬＰＣインデックスｓ１０３を算出し、合成フィルタ１０３および多重化回路１０６へ出力する。
【００６８】
これと平行して、上述のように、有音・無音判定器１０１が、入力音声ベクトルｓ１０１をフレーム単位で入力して、かかるフレームが有音フレームであるのか或いは無音フレームであるのかを判定する。
【００６９】
そして、かかるフレームを無音フレームと判定した場合には、この有音・無音判定器１０１は、有音・無音フラグを「無音」にセットして、このフラグ値ｓ１０２を多重化回路１０６へ出力するとともに、スイッチ１１４をランダム雑音発生器１０８側へ倒す。続いて、ランダム雑音発生器１０８が、ランダム雑音コードベクトルｓ１１１を出力する。これと同時に、ランダム雑音用ゲイン符号帳１１０が、ランダム雑音ゲインｓ１１２（Ｃｒ〔ｉ〕（ｉ＝１〜Ｎ））を出力する。積算器１０９は、ランダム雑音コードベクトルｓ１１１にランダム雑音ゲインｓ１１２を積算した結果を、スイッチ１１４を介して合成フィルタ１０３に送る。そして、この合成フィルタ１０３が、上述したような合成音ベクトルｓ１０５を生成する。加算器１０４は、入力音声ベクトルｓ１０１から合成音ベクトルｓ１０５を減算することにより、誤差ベクトルｓ１０７を算出する。重み付き誤差計算回路１０５は、この誤差ベクトルｓ１０７を用いて重み付き誤差Ｅｗｒ〔ｉ〕を算出した後、この重み付き誤差Ｅｗｒ〔ｉ〕を最小とするｉを判定し、さらに、この判定結果を最適ゲインインデックスｓ１１９として多重化回路１０６に送る。そして、多重化回路１０６が、上述の有音・無音フラグｓ１０２、ＬＰＣインデックスｓ１０３および最適ゲインインデックスｓ１１９を多重化する。また、このとき、多重化回路１０６は、雑音符号帳更新回路１１８が生成した雑音コードベクトルｓ１１７および更新フラグｓ１２３も、併せて多重化する。そして、多重化されたデータは、トータルコードｓ１０９として伝送路へ出力される。なお、雑音符号帳更新回路１１８が雑音コードベクトルｓ１１７および更新フラグｓ１２３を生成する動作については、後述する。
【００７０】
一方、有音・無音判定器１０１が入力音声ベクトルｓ１０１のフレームを有音フレームであると判定した場合には、この有音・無音判定器１０１は有音・無音フラグを「有音」にセットして、このフラグ値ｓ１０２を多重化回路１０６へ出力するとともに、スイッチ１１４を雑音符号帳１１１側へ倒す。続いて、雑音符号帳１１１が、雑音コードベクトルｓ１１３（Ｃｓ〔ｊ〕（ｊ＝１〜Ｍ））を出力する。雑音ゲイン符号帳１１５は、ゲインｓ１１４（Ｇｓ〔ｋ〕（ｋ＝１〜Ｘ））を出力する。そして、積算器１１２が、雑音コードベクトルｓ１１３にゲインｓ１１４を積算した結果を、ピッチ合成フィルタ１１３に送る。また、ピッチラグ符号帳１１６は、ピッチラグｓ１１５（Ｌ〔ｍ〕（ｍ＝１〜Ｙ））をピッチ合成フィルタ１１３へ出力する。さらに、ピッチゲイン符号帳１１７は、ピッチゲインｓ１１６（ｂ〔ｎ〕（ｎ＝１〜Ｚ））をピッチ合成フィルタ１１３へ出力する。そして、ピッチ合成フィルタ１１３が、上述のようにして雑音コードベクトルｓ１１３に周期性を与え、合成フィルタ１０３に送る。合成フィルタ１０３は、上述のようにして、合成音ベクトルｓ１０６（Ｓｓ〔ｊ，ｋ，ｍ，ｎ〕）を生成する。続いて、加算器１０４が、入力音声ベクトルｓ１０１から合成音ベクトルｓ１０６を減じることによって誤差ベクトルｓ１０８（Ｅｓ〔ｊ，ｋ，ｍ，ｎ〕）を生成する。次に、重み付き誤差計算回路１０５が、重み付き誤差Ｅｗｓ〔ｊ，ｋ，ｍ，ｎ〕を算出した後で、この重み付き誤差Ｅｗｓ〔ｊ，ｋ，ｍ，ｎ〕が最小となるｊ，ｋ，ｍ，ｎの組合わせを判定する。そして、この判定の結果として得られた値ｊを最適雑音コードインデックスｓ１１８として雑音符号帳１１１に送り、判定結果として得られた値ｋを最適ゲインインデックスｓ１１９として雑音ゲイン符号帳１１５に送り、判定結果として得られた値ｍを最適ピッチラグｓ１２１としてピッチラグ符号帳１１６へ送り、さらに、判定結果として得られた値ｎを最適ピッチゲインｓ１２２としてピッチゲイン符号帳１１７に送る。また、これらのデータｓ１１８，ｓ１１９，ｓ１２１，ｓ１２２は、多重化回路１０６へも送られる。その後、多重化回路１０６が、有音・無音フラグｓ１０２、ＬＰＣインデックスｓ１０３、最適雑音コードインデックスｓ１１８、最適ゲインインデックスｓ１１９、最適ピッチラグｓ１２１および最適ピッチゲインｓ１２２を多重化し、トータルコードｓ１１０として伝送路へ出力する。
【００７１】
次に、雑音符号帳更新回路１１８を用いて雑音符号帳１１１の雑音コードベクトルを更新する動作について、図２１のフローチャートを用いて説明する。
【００７２】
まず、有音・無音判定器１０１により入力音声ベクトルｓ１０１のフレームが有音フレームであると判定された場合には（ステップｓ２１０１、ｓ２１０２）、雑音符号帳更新回路１１８は、選択されたコードベクトルと入力音声ベクトルｓ１０１との相関を計算する（ステップｓ２１０３）。そして、この計算結果を、前回までの計算結果の積算値に、さらに積算する（ステップｓ２１０４）。これにより、入力音声ベクトルｓ１０１のフレームとして有音フレームが連続している場合には、各コードベクトルについての相関値を順次積算していくこととなる。
【００７３】
一方、ステップｓ２１０１，ｓ２１０２で入力音声ベクトルｓ１０１が無音フレームであると判定された場合には、続いて、前回の判定結果が有音フレームであったのか或いは無音フレームであったのか（すなわち更新用コードベクトルｓ１１７を搭載すべき無音フレームであるのか或いは搭載しないフレームであるのか）を判断する（ｓ２１０５）。
【００７４】
そして、更新用コードベクトルｓ１１７を搭載すべき無音フレームであると判断された場合は、前回の更新用コードベクトルｓ１１７の搭載から今回の無音フレームまでの間の各有音フレームにおいて選択回数が一番多かったコードベクトルを判定し、さらに、上述のステップｓ２１０４で得られた積算結果を用いて、更新用雑音コードベクトルｓ１１７を算出する（ステップｓ２１０６）。そして、更新フラグｓ１２３を、「更新」にセットする（ステップｓ２１０７）。続いて、更新用コードベクトルｓ１１７を、Ｍａ  個の可変ベクトル中で最も古いベクトルと置き換えることにより、雑音符号帳１１１の雑音コードベクトルを更新する（ステップｓ２１０８）。また、これと同時に、更新用コードベクトルｓ１１７と更新フラグｓ１２３とは、多重化回路１０６に送られる。多重化回路１０６は、上述したように、無音フラグの剰余ビットを利用して、これらのデータｓ１１７，ｓ１２３を、復号器側へ伝送する（スッテップｓ２１０９）。
【００７５】
一方、ステップｓ２１０５で、更新用コードベクトルｓ１１７を搭載しない無音フレームであると判断された場合は、更新フラグを「無変更」にセットした後（ｓ２２１０）、この更新フラグ値ｓ１２３を多重化回路１０６に送る。この場合には、多重化回路１０６は、無音フラグの剰余ビットを利用して、この更新フラグ値ｓ１２３を送る（ステップｓ２１１１）。
【００７６】
図１９は、更新用コードベクトルｓ１１７をフレームに搭載する場合と搭載しない場合の区分を説明するための概念図である。同図において、○印は更新用コードベクトルｓ１１７を搭載するフレームを示しており、×印は更新用コードベクトルｓ１１７を搭載しないフレームを示している。このように、無音フレームが連続する場合には、最初の無音フレームで更新コードベクトルｓ１１７と更新フラグ値ｓ１２３とを伝送し、２番目以降の無音フレームでは更新フラグ値ｓ１２３のみを伝送する。
【００７７】
次に、復号器の全体動作について説明する。
【００７８】
上述したようなトータルコードｓ１０９またはｓ１１０が入力端子１２２から入力されると、このトータルコードｓ１０９またはｓ１１０を多重分離回路１２１が多重分離する。
【００７９】
そして、符号器から入力された有音・無音フラグｓ１０２が「有音」であった場合には、復号器は、以下のような動作を行う。
【００８０】
まず、ＬＰＣ逆量子化部１１９は、上述したように、多重分離回路１２１から入力されたＬＰＣインデックスｓ１０３を用いて、ＬＰＣ係数量子化値ｓ１０４を計算する。また、スイッチ１２９は、有音・無音フラグｓ１０２によって雑音符号帳１２６側に倒される。次に、雑音符号帳１２６が、多重分離回路１２１から最適雑音コードインデックスｓ１１８を入力して、これに対応する雑音コードベクトルｓ１２６を出力する。また、雑音ゲイン符号帳１３０は、多重分離回路１２１から最適ゲインインデックスｓ１１９を入力し、これに対応する雑音ゲインｓ１２７を出力する。さらに、ピッチラグ符号帳１３１は、多重分離回路１２１から入力した最適ピッチラグｓ１２１に対応するピッチラグｓ１２８を、ピッチ合成フィルタ１２８へ出力する。同様に、ピッチゲイン符号帳１３２は、多重分離回路１２１から入力した最適ピッチゲインｓ１２２に対応するピッチゲインｓ１２９をピッチ合成フィルタ１２８へ出力する。雑音符号帳１２６が出力した雑音コードベクトルｓ１２６は、積算器１２７で雑音ゲインｓ１２７を積算された後、ピッチ合成フィルタ１２８で周期性を与えられ、スイッチ１２９を介して合成フィルタ１２０に入力される。そして、合成フィルタ１２０が、ＬＰＣ逆量子化部１１９から入力したＬＰＣ係数量子化値ｓ１０４とピッチ合成フィルタ１２８から入力した雑音コードベクトルｓ１２６とを用いて、合成音ベクトルを生成する。
【００８１】
一方、符号器から入力された有音・無音フラグｓ１０２が「無音」であった場合には、復号器は、以下のような動作を行う。
【００８２】
まず、ＬＰＣ逆量子化部１１９は、上述したように、多重分離回路１２１から入力されたＬＰＣインデックスｓ１０３を用いて、ＬＰＣ係数量子化値ｓ１０４を計算する。また、スイッチ１２９が、有音・無音フラグｓ１０２によって、ランダム雑音発生器１２３側へ倒される。ランダム雑音発生器１２３は、ランダム雑音コードベクトルｓ１１１を出力する。そして、ランダム雑音用ゲイン符号帳１２５が、多重分離回路１２１から最適ゲインインデックスｓ１１９を入力し、これに対応するランダム雑音ゲインｓ１２４を出力する。これにより、ランダム雑音コードベクトルｓ１１１は、積算器１２４で最適ゲインインデックスｓ１１９を積算された後、スイッチ１２９を介して合成フィルタ１２０に入力される。そして、合成フィルタ１２０が、ＬＰＣ係数量子化値ｓ１０４とランダム雑音コードベクトルｓ１１１とを用いて、合成音ベクトルを生成する。
【００８３】
また、有音・無音フラグｓ１０２が「無音」である場合には、雑音符号帳１２６は、多重分離回路１２１から更新フラグ値ｓ１２３を入力する。そして、この更新フラグ値ｓ１２３が「更新」を示している場合には、続いて雑音コードベクトルｓ１１７を入力し、符号器の場合と同様にして雑音符号帳１２６の雑音コードベクトルを更新する。一方、更新フラグ値ｓ１２３が「無変更」を示している場合は、雑音符号帳１２６は、雑音コードベクトルを更新しない。
【００８４】
以上説明したように、この実施の形態によれば、雑音符号帳更新回路１１８を用いて符号器の雑音符号帳１１１および復号器の雑音符号帳１２６に格納された雑音コードベクトルを随時更新することとしたので、有音時の周波数特性をサンプル単位で向上させることができ、従って雑音感を向上させてノイズの低減をはかることができる。
【００８５】
また、更新のための雑音コードベクトルｓ１１７を、無音フレームの剰余ビットを用いて符号器から復号器に送ることとしたので、伝送路を有効に利用することができ、全体としての伝送速度に影響を与えることがない。
【００８６】
第２の実施の形態
次に、この発明の第２の実施の形態について説明する。この実施の形態は、雑音ゲイン符号帳に格納されたゲインコード（スカラ量）を更新する例である。
【００８７】
図３は、この実施の形態にかかる符号器の構成を概念的に示している。
【００８８】
同図に示したように、この符号器は、有音・無音判定器１０１、ＬＰＣ分析・量子化部１０２、合成フィルタ１０３、加算器１０４、重み付き誤差計算回路１０５、多重化回路１０６、送信端子１０７、ランダム雑音発生器１０８、積算器１０９、ランダム雑音用ゲイン符号帳１１０、雑音符号帳２１１、積算器１１２、ピッチ合成フィルタ１１３、スイッチ１１４、雑音ゲイン符号帳２１５、ピッチラグ符号帳１１６、ピッチゲイン符号帳１１７および雑音ゲイン符号帳更新回路２１８の各ブロックから構成される。
【００８９】
図３において、図１と同じ符号を付したブロックの機能は、図１の場合とほぼ同様であるので、説明を省略する。
【００９０】
雑音符号帳２１１は、固定コードベクトルのみを格納しており、可変コードベクトルは格納されていない点で、図１の雑音符号帳１１１の場合（図１０参照）と異なる。これは、この実施の形態では雑音符号帳２１１に格納されたコードベクトルの更新を行わないからである。
【００９１】
雑音ゲイン符号帳２１５は、第１の実施の形態の場合と異なり、Ｘｆ  個の固定コードに加えて、Ｘａ  個の可変コード（これらのコードはともにスカラ量である）も格納している。図１１は、この雑音ゲイン符号帳２１５の量子化テーブルを示す概念図である。同図に示したように、Ｘ（＝Ｘｆ  ＋Ｘａ  ）個あるコードベクトルＧｓ［１］〜Ｇｓ［Ｘｆ  ＋Ｘａ  ］のうち、Ｘｆ  個のコードベクトルＧｓ［１］〜Ｇｓ［Ｘｆ  ］は固定のベクトルであり、Ｘａ  個のコードベクトルＧｓ［Ｘｆ  ＋１］〜Ｇｓ［Ｘｆ  ＋Ｘａ  ］は可変のベクトルである。可変のベクトルＧｓ［Ｘｆ  ＋１］〜Ｇｓ［Ｘｆ  ＋Ｘａ  ］は、ある初期値を有している。
【００９２】
また、この実施の形態に係る符号器は、雑音ゲイン符号帳更新回路２１８を備えている。この雑音ゲイン符号帳更新回路２１８は、雑音ゲイン符号帳２１５の可変コードの更新を行う。更新用の新しいゲインコードｓ２１７を生成するための原理は、図１に示した雑音符号帳更新回路１１８の場合と同様である。すなわち、入力音声ベクトルｓ１０１の有音フレームの相関値を順次算出し、これらの相関値の積算値を用いて、新しいゲインコードｓ２１７を生成することができる。
【００９３】
更新用ゲインコードｓ２１７を復号器に伝送する方法は、上述の第１の実施の形態の場合と同様である。すなわち、無音フレームをトータルコードｓ１０９として伝送する際に生じる（Ｔｓ−Ｔｒ）ビットの剰余ビットを利用して、更新用ゲインコード２１７および更新フラグ値ｓ２２５を復号器に伝送する。
【００９４】
以下、雑音ゲイン符号帳更新回路２１８を用いて雑音ゲイン符号帳２１５のゲインコードを更新する動作について、図２２のフローチャートを用いて説明する。
【００９５】
まず、有音・無音判定器１０１により入力音声ベクトルｓ１０１のフレームが有音フレームであると判定された場合には（ステップｓ２２０１、ｓ２２０２）、雑音ゲイン符号帳更新回路２１８は、選択されたゲインコードと入力音声ベクトルｓ１０１との相関を計算する（ステップｓ２２０３）。そして、この計算結果を、前回までの計算結果の積算値に、さらに積算する（ステップｓ２２０４）。これにより、入力音声ベクトルｓ１０１のフレームとして有音フレームが連続している場合には、各ゲインコードについての相関値を順次積算していくこととなる。
【００９６】
一方、ステップｓ２２０１，ｓ２２０２で入力音声ベクトルｓ１０１が無音フレームであると判定された場合には、続いて、前回の判定結果が有音フレームであったのか或いは無音フレームであったのか（すなわち更新用ゲインコードｓ２１７を搭載すべき無音フレームであるのか或いは搭載しないフレームであるのか）を判断する（ｓ２２０５）。そして、更新用ゲインコードｓ２１７を搭載すべき無音フレームであると判断された場合は、前回の更新用ゲインコードｓ２１７の搭載から今回の無音フレームまでの間の各有音フレームにおいて選択回数が一番多かったゲインコードを判定し、さらに、上述のステップｓ２２０４で得られた積算結果を用いて、更新用ゲインコードｓ２１７を算出する（ステップｓ２２０６）。そして、更新フラグｓ２２３を、「更新」にセットする（ステップｓ２２０７）。続いて、更新用ゲインコードｓ２１７を、Ｍａ  個の可変ベクトル中で最も古いゲインコードと置き換えることにより、雑音ゲイン符号帳２１５のゲインコードを更新する（ステップｓ２２０８）。また、これと同時に、更新用の新しいゲインコードｓ２１７と更新フラグｓ２２３とは、多重化回路１０６に送られる。多重化回路１０６は、上述したように、無音フラグの剰余ビットを利用して、これらのデータｓ２１７，ｓ２２３を、復号器側へ伝送する（スッテップｓ２２０９）。
【００９７】
一方、ステップｓ２２０５で、更新用ゲインコードｓ２１７を搭載しない無音フレームであると判断された場合は、更新フラグを「無変更」にセットした後（ステップｓ２２１０）、この更新フラグ値ｓ２２３を多重化回路１０６に送る。この場合には、多重化回路１０６は、無音フラグの剰余ビットを利用して、この更新フラグ値ｓ２２３を送る（ステップｓ２２１１）。
【００９８】
なお、他の構成要素の動作については、第１の実施の形態の場合とほぼ同様であるので、説明を省略する。但し、雑音符号帳２１１に格納されたコードベクトルの更新を行わない点で第１の実施の形態の場合と異なるのは、上述したとおりである。
【００９９】
図４は、この実施の形態に係る復号器の構成を概念的に示している。同図に示したように、この復号器は、入力端子１２２、多重分離回路１２１、ランダム雑音発生器１２３、ランダム雑音用ゲイン符号帳１２５、乗算器１２４、雑音符号帳２２６、雑音ゲイン符号帳２３０、乗算器１２７、ピッチ合成フィルタ１２８、ピッチラグ符号帳１３１、ピッチゲイン符号帳１３２、スイッチ１２９、ＬＰＣ逆量子化部１１９および合成フィルタ１２０から構成される。
【０１００】
図４において、図２と同じ符号を付したブロックの機能は、図２の場合とほぼ同様であるので、説明を省略する。
【０１０１】
雑音符号帳２２６は、固定コードベクトルのみを格納しており、可変コードベクトルは格納されていない点で、図２の雑音符号帳１２６の場合と異なる。これは、この実施の形態では雑音符号帳２２６に格納されたコードベクトルの更新を行わないからである。
【０１０２】
雑音ゲイン符号帳２３０は、第１の実施の形態の場合と異なり、Ｘｆ  個の固定コードに加えて、Ｘａ  個の可変コード（これらのコードはともにスカラ量である）も格納している。
【０１０３】
以下、復号器の動作について説明する。
【０１０４】
まず、多重分離回路１２１が、入力端子１２２からトータルコードｓ１０９またはｓ１１０を入力し、このトータルコードｓ１０９またはｓ１１０を多重分離する。
【０１０５】
そして、有音・無音フラグｓ１０２が「無音」である場合には、雑音ゲイン符号帳２３０が、多重分離回路１２１から更新フラグ値ｓ２２３を入力する。そして、この更新フラグ値ｓ２２３が「更新」を示している場合には、続いて雑音ゲインコードｓ２１７を入力し、符号器の場合と同様にして雑音ゲイン符号帳２３０のゲインコードを更新する。一方、更新フラグ値ｓ２２３が「無変更」を示している場合には、雑音ゲイン符号帳２３０は、ゲインコードを更新しない。
【０１０６】
なお、他の構成要素の動作については、第１の実施の形態の場合とほぼ同様であるので、説明を省略する。但し、雑音符号帳２２６に格納されたコードベクトルの更新を行わない点で第１の実施の形態の場合と異なるのは、上述したとおりである。
【０１０７】
以上説明したように、この実施の形態によれば、雑音ゲイン符号帳更新回路２１８を用いて符号器の雑音ゲイン符号帳２１５および復号器の雑音ゲイン符号帳２３０に格納されたゲインコードを随時更新することとしたので、有音時の周波数特性をサンプル単位で向上させることができ、従って雑音感を向上させてノイズの低減をはかることができる。
【０１０８】
また、更新用ゲインコードｓ２１７を、無音フレームの剰余ビットを用いて符号器から復号器に送ることとしたので、伝送路を有効に利用することができ、全体としての伝送速度に影響を与えることがない。
【０１０９】
第３の実施の形態
次に、この発明の第３の実施の形態について説明する。この実施の形態は、ピッチラグ符号帳に格納されたピッチラグコード（スカラ量）を更新する例である。
【０１１０】
図５は、この実施の形態にかかる符号器の構成を概念的に示している。
【０１１１】
同図に示したように、この符号器は、有音・無音判定器１０１、ＬＰＣ分析・量子化部１０２、合成フィルタ１０３、加算器１０４、重み付き誤差計算回路１０５、多重化回路１０６、送信端子１０７、ランダム雑音発生器１０８、積算器１０９、ランダム雑音用ゲイン符号帳１１０、雑音符号帳２１１、積算器１１２、ピッチ合成フィルタ１１３、スイッチ１１４、雑音ゲイン符号帳１１５、ピッチラグ符号帳３１６、ピッチゲイン符号帳１１７およびピッチラグ符号帳更新回路３１８の各ブロックから構成される。
【０１１２】
図５において、図１と同じ符号を付したブロックの機能は、図１の場合とほぼ同様であるので、説明を省略する。
【０１１３】
また、雑音符号帳２１１は、図３の場合と同様、固定コードベクトルのみを格納し、コードベクトルの更新は行われない。
【０１１４】
ピッチラグ符号帳３１６は、第１、第２の実施の形態の場合と異なり、Ｙｆ  個の固定コードに加えて、Ｙａ  個の可変コード（これらのコードはともにスカラ量である）も格納している。図１２は、このピッチラグ符号帳３１６の量子化テーブルを示す概念図である。同図に示したように、Ｙ（＝Ｙｆ  ＋Ｙａ  ）個あるコードベクトルＬ［１］〜Ｌ［Ｙｆ  ＋Ｙａ  ］のうち、Ｙｆ  個のコードベクトルＬ［１］〜Ｌ［Ｙｆ  ］は固定のベクトルであり、Ｙａ  個のコードベクトルＬ［Ｙｆ  ＋１］〜Ｌ［Ｙｆ  ＋Ｙａ  ］は可変のベクトルである。可変のベクトルＬ［Ｙｆ  ＋１］〜Ｌ［Ｙｆ  ＋Ｙａ  ］は、ある初期値を有している。
【０１１５】
また、この実施の形態に係る符号器は、ピッチラグ符号帳更新回路３１８を備えている。このピッチラグ符号帳更新回路３１８は、ピッチラグ符号帳３１６の可変コードの更新を行う。更新用の新しいピッチラグコードｓ３１７を生成するための原理は、図１に示した雑音符号帳更新回路１１８の場合と同様である。すなわち、入力音声ベクトルｓ１０１の有音フレームの相関値を順次算出し、これらの相関値の積算値を用いて、新しいピッチラグコードｓ３１７を生成することができる。
【０１１６】
更新用ピッチラグコードｓ３１７を復号器に伝送する方法は、上述の第１の実施の形態の場合と同様である。すなわち、無音フレームをトータルコードｓ１０９として伝送する際に生じる（Ｔｓ−Ｔｒ）ビットの剰余ビットを利用して、更新用ピッチラグコードｓ３１７および更新フラグ値ｓ２２３を復号器に伝送する。
【０１１７】
以下、ピッチラグ符号帳更新回路３１８を用いてピッチラグ符号帳３１６のピッチラグコードを更新する動作について、図２３のフローチャートを用いて説明する。
【０１１８】
まず、有音・無音判定器１０１により入力音声ベクトルｓ１０１のフレームが有音フレームであると判定された場合には（ステップｓ２３０１、ｓ２３０２）、ピッチラグ符号帳更新回路３１８は、選択されたピッチラグコードと入力音声ベクトルｓ１０１との長期的相関を計算する（ステップｓ２３０３）。そして、この計算結果を、前回までの計算結果の積算値に、さらに積算する（ステップｓ２３０４）。これにより、入力音声ベクトルｓ１０１のフレームとして有音フレームが連続している場合には、各ピッチラグコードについての相関値を順次積算していくこととなる。
【０１１９】
一方、ステップｓ２３０１，ｓ２３０２で入力音声ベクトルｓ１０１が無音フレームであると判定された場合には、続いて、前回の判定結果が有音フレームであったのか或いは無音フレームであったのか（すなわち更新用ピッチラグコードｓ３１７を搭載すべき無音フレームであるのか或いは搭載しないフレームであるのか）を判断する（ｓ２３０５）。そして、更新用ピッチラグコードｓ３１７を搭載すべき無音フレームであると判断された場合は、前回の更新用ピッチラグコードｓ３１７の搭載から今回の無音フレームまでの間の各有音フレームにおいて選択回数が一番多かったピッチラグコードを判定し、さらに、上述のステップｓ２３０４で得られた積算結果を用いて、更新用ピッチラグコードｓ３１７を算出する（ステップｓ２３０６）。そして、更新フラグｓ３３３を、「更新」にセットする（ステップｓ２３０７）。続いて、更新用ピッチラグコードｓ３１７を、Ｍａ  個の可変ベクトル中で最も古いピッチラグコードと置き換えることにより、ピッチラグ符号帳３１６のピッチラグコードを更新する（ステップｓ２３０８）。また、これと同時に、更新用の新しいピッチラグコードｓ３１７と更新フラグｓ３２３とは、多重化回路１０６に送られる。多重化回路１０６は、上述したように、無音フラグの剰余ビットを利用して、これらのデータｓ３１７，ｓ３２３を、復号器側へ伝送する（スッテップｓ２３０９）。
【０１２０】
一方、ステップｓ２３０５で、更新用ピッチラグコードｓ３１７を搭載しない無音フレームであると判断された場合は、更新フラグを「無変更」にセットした後（ステップｓ２３１０）、この更新フラグ値ｓ３２３を多重化回路１０６に送る。この場合には、多重化回路１０６は、無音フラグの剰余ビットを利用して、この更新フラグ値ｓ３２３を送る（ステップｓ２３１１）。
【０１２１】
なお、他の構成要素の動作については、第１，第２の実施の形態の場合とほぼ同様であるので、説明を省略する。但し、雑音符号帳２１１に格納されたコードベクトルおよび雑音ゲイン符号帳１１５に格納されたコードの更新は、行われない。
【０１２２】
図６は、この実施の形態に係る復号器の構成を概念的に示している。同図に示したように、この復号器は、入力端子１２２、多重分離回路１２１、ランダム雑音発生器１２３、ランダム雑音用ゲイン符号帳１２５、乗算器１２４、雑音符号帳２２６、雑音ゲイン符号帳１３０、乗算器１２７、ピッチ合成フィルタ１２８、ピッチラグ符号帳３３１、ピッチゲイン符号帳１３２、スイッチ１２９、ＬＰＣ逆量子化部１１９および合成フィルタ１２０から構成される。
【０１２３】
図６において、図２と同じ符号を付したブロックの機能は、図２の場合とほぼ同様であるので、説明を省略する。
【０１２４】
雑音符号帳２２６は、固定コードベクトルのみを格納しており、可変コードベクトルは格納されていない点で、図２の雑音符号帳１２６の場合と異なる。これは、この実施の形態では雑音符号帳２２６に格納されたコードベクトルの更新を行わないからである。
【０１２５】
ピッチラグ符号帳３３１は、第１の実施の形態の場合と異なり、Ｙｆ  個の固定コードに加えて、Ｙａ  個の可変コード（これらのコードはともにスカラ量である）も格納している。
【０１２６】
以下、復号器の動作について説明する。
【０１２７】
まず、多重分離回路１２１が、入力端子１２２からトータルコードｓ１０９またはｓ１１０を入力し、このトータルコードｓ１０９またはｓ１１０を多重分離する。
【０１２８】
そして、有音・無音フラグｓ１０２が「無音」である場合には、ピッチラグ符号帳３３１が、多重分離回路１２１から更新フラグ値ｓ３２３を入力する。そして、この更新フラグ値ｓ３２３が「更新」を示している場合には、続いてピッチラグコードｓ３１７を入力し、符号器の場合と同様にしてピッチラグ符号帳３３１のピッチラグコードを更新する。一方、更新フラグ値ｓ３２３が「無変更」を示している場合は、ピッチラグ符号帳３３１は、ピッチラグコードを更新しない。
【０１２９】
なお、他の構成要素の動作については、第１の実施の形態の場合とほぼ同様であるので、説明を省略する。但し、雑音符号帳２２６に格納されたコードベクトルおよび雑音ゲイン符号帳１３０に格納されたゲインコードの更新は、行われない。
【０１３０】
以上説明したように、この実施の形態によれば、ピッチラグ符号帳更新回路３１８を用いて符号器のピッチラグ符号帳３１６および復号器のピッチラグ符号帳３３１に格納されたピッチラグコードｓ３１７を随時更新することとしたので、有音時の周波数特性をサンプル単位で向上させることができ、従って雑音感を向上させてノイズの低減をはかることができる。
【０１３１】
また、更新のためのピッチラグコードｓ３１７を、無音フレームの剰余ビットを用いて符号器から復号器に送ることとしたので、伝送路を有効に利用することができ、全体としての伝送速度に影響を与えることがない。
【０１３２】
第４の実施の形態
次に、この発明の第４の実施の形態について説明する。この実施の形態は、ピッチゲイン符号帳に格納されたピッチゲインコード（スカラ量）を更新する例である。
【０１３３】
図７は、この実施の形態にかかる符号器の構成を概念的に示している。
【０１３４】
同図に示したように、この符号器は、有音・無音判定器１０１、ＬＰＣ分析・量子化部１０２、合成フィルタ１０３、加算器１０４、重み付き誤差計算回路１０５、多重化回路１０６、送信端子１０７、ランダム雑音発生器１０８、積算器１０９、ランダム雑音用ゲイン符号帳１１０、雑音符号帳２１１、積算器１１２、ピッチ合成フィルタ１１３、スイッチ１１４、雑音ゲイン符号帳１１５、ピッチラグ符号帳１１６、ピッチゲイン符号帳４１７およびピッチゲイン符号帳更新回路４１８の各ブロックから構成される。
【０１３５】
図７において、図１と同じ符号を付したブロックの機能は、図１の場合とほぼ同様であるので、説明を省略する。
【０１３６】
また、雑音符号帳２１１は、図３、図５の場合と同様、固定コードベクトルのみを格納し、コードベクトルの更新は行われない。
【０１３７】
ピッチゲイン符号帳４１７は、上述の各実施の形態の場合と異なり、Ｙｆ  個の固定コードに加えて、Ｙａ  個の可変コード（これらのコードはともにスカラ量である）も格納している。図１３は、このピッチゲイン符号帳４１７の量子化テーブルを示す概念図である。同図に示したように、Ｚ（＝Ｚｆ  ＋Ｚａ  ）個あるコードベクトルｂ［１］〜ｂ［Ｚｆ  ＋Ｚａ  ］のうち、Ｚｆ  個のコードベクトルｂ［１］〜ｂ［Ｚｆ  ］は固定のベクトルであり、Ｚａ  個のコードベクトルｂ［Ｚｆ  ＋１］〜ｂ［Ｚｆ  ＋Ｚａ  ］は可変のベクトルである。可変のベクトルｂ［Ｚｆ  ＋１］〜ｂ［Ｚｆ  ＋Ｚａ  ］は、ある初期値を有している。
【０１３８】
また、この実施の形態に係る符号器は、ピッチゲイン符号帳更新回路４１８を備えている。このピッチゲイン符号帳更新回路４１８は、ピッチゲイン符号帳４１７の可変コードの更新を行う。更新用の新しいピッチゲインコードｓ４１７を生成するための原理は、図１に示した雑音符号帳更新回路１１８の場合と同様である。すなわち、入力音声ベクトルｓ１０１の有音フレームの相関値を順次算出し、これらの相関値の積算値を用いて、新しいピッチゲインコードｓ４１７を生成することができる。
【０１３９】
更新用の新しいピッチゲインコードｓ４１７を復号器に伝送する方法は、上述の第１の実施の形態の場合と同様である。すなわち、無音フレームをトータルコードｓ１０９として伝送する際に生じる（Ｔｓ−Ｔｒ）ビットの剰余ビットを利用して、ピッチゲインコードｓ４１７および更新フラグ値ｓ４２３を復号器に伝送する。
【０１４０】
以下、ピッチゲイン符号帳更新回路４１８を用いてピッチゲイン符号帳４１７のピッチゲインコードを更新する動作について、図２４のフローチャートを用いて説明する。
【０１４１】
まず、有音・無音判定器１０１により入力音声ベクトルｓ１０１のフレームが有音フレームであると判定された場合には（ステップｓ２４０１、ｓ２４０２）、ピッチゲイン符号帳更新回路４１８は、選択されたピッチゲインコードと入力音声ベクトルｓ１０１との長期的相関を計算する（ステップｓ２４０３）。そして、この計算結果を、前回までの計算結果の積算値に、さらに積算する（ステップｓ２４０４）。これにより、入力音声ベクトルｓ１０１のフレームとして有音フレームが連続している場合には、各ピッチゲインコードについての相関値を順次積算していくこととなる。
【０１４２】
一方、ステップｓ２４０１，ｓ２４０２で入力音声ベクトルｓ１０１が無音フレームであると判定された場合には、続いて、前回の判定結果が有音フレームであったのか或いは無音フレームであったのか（すなわち更新用ピッチゲインコードｓ４１７を搭載すべき無音フレームであるのか或いは更新用ピッチゲインコードｓ４１７を搭載しないフレームであるのか）を判断する（ｓ２４０５）。そして、更新用ピッチゲインコードｓ４１７を搭載すべき無音フレームであると判断された場合は、前回の更新用ピッチゲインコードｓ４１７の搭載から今回の無音フレームまでの間の各有音フレームにおいて選択回数が一番多かったピッチゲインコードを判定し、さらに、上述のステップｓ２４０４で得られた積算結果を用いて、更新用の新しいピッチゲインコードｓ４１７を算出する（ステップｓ２４０６）。そして、更新フラグｓ４３３を、「更新」にセットする（ステップｓ２４０７）。続いて、更新用ピッチゲインコードｓ４１７を、Ｍａ  個の可変ベクトル中で最も古いピッチゲインコードと置き換えることにより、雑音ゲイン符号帳１１５のピッチゲインコードを更新する（ステップｓ２４０８）。また、これと同時に、更新用ピッチゲインコードｓ４１７と更新フラグｓ４２３とは、多重化回路１０６に送られる。多重化回路１０６は、上述したように、無音フラグの剰余ビットを利用して、これらのデータｓ４１７，ｓ４２３を、復号器側へ伝送する（スッテップｓ２４０９）。
【０１４３】
一方、ステップｓ２４０５で、更新用ピッチゲインコードｓ４１７を搭載しない無音フレームであると判断された場合は、更新フラグを「無変更」にセットした後（ステップｓ２４１０）、この更新フラグ値ｓ４２３を多重化回路１０６に送る。この場合には、多重化回路１０６は、無音フラグの剰余ビットを利用して、この更新フラグ値ｓ４２３のみを送る（ステップｓ２４１１）。
【０１４４】
なお、他の構成要素の動作については、第１，第２の実施の形態の場合とほぼ同様であるので、説明を省略する。但し、雑音符号帳２１１に格納されたコードベクトルおよび雑音ゲイン符号帳１１５に格納されたコードの更新は、行われない。
【０１４５】
図８は、この実施の形態に係る復号器の構成を概念的に示している。同図に示したように、この復号器は、入力端子１２２、多重分離回路１２１、ランダム雑音発生器１２３、ランダム雑音用ゲイン符号帳１２５、乗算器１２４、雑音符号帳２２６、雑音ゲイン符号帳１３０、乗算器１２７、ピッチ合成フィルタ１２８、ピッチラグ符号帳１３１、ピッチゲイン符号帳４３２、スイッチ１２９、ＬＰＣ逆量子化部１１９および合成フィルタ１２０から構成される。
【０１４６】
図８において、図２と同じ符号を付したブロックの機能は、図２の場合とほぼ同様であるので、説明を省略する。
【０１４７】
雑音符号帳２２６は、固定コードベクトルのみを格納しており、可変コードベクトルは格納されていない点で、図２の雑音符号帳１２６の場合と異なる。これは、この実施の形態では雑音符号帳２２６に格納されたコードベクトルの更新を行わないからである。
【０１４８】
ピッチゲイン符号帳４３２は、第１の実施の形態の場合と異なり、Ｚｆ  個の固定コードに加えて、Ｚａ  個の可変コード（これらのコードはともにスカラ量である）も格納している。
【０１４９】
以下、復号器の動作について説明する。
【０１５０】
まず、多重分離回路１２１が、入力端子１２２からトータルコードｓ１０９またはｓ１１０を入力し、このトータルコードｓ１０９またはｓ１１０を多重分離する。
【０１５１】
そして、有音・無音フラグｓ１０２が「無音」である場合には、ピッチゲイン符号帳４３２が、多重分離回路１２１から更新フラグ値ｓ４２３を入力する。そして、この更新フラグ値ｓ４２３が「更新」を示している場合には、続いてピッチゲインコードｓ４１７を入力し、符号器の場合と同様にしてピッチゲイン符号帳４３２のピッチゲインコードを更新する。一方、更新フラグ値ｓ４２３が「無変更」を示している場合は、ピッチゲイン符号帳４３２は、ピッチゲインコードを更新しない。
【０１５２】
なお、他の構成要素の動作については、第１の実施の形態の場合とほぼ同様であるので、説明を省略する。但し、雑音符号帳２２６に格納されたコードベクトル、雑音ゲイン符号帳１３０に格納されたゲインコードおよびピッチラグ符号帳１３１に格納されたピッチラグコードの更新は、行われない。
【０１５３】
以上説明したように、この実施の形態によれば、ピッチゲイン符号帳更新回路４１８を用いて符号器のピッチゲイン符号帳４１７および復号器のピッチゲイン符号帳４３２に格納されたピッチゲインコードを随時更新することとしたので、有音時の周波数特性をサンプル単位で向上させることができ、従って雑音感を向上させてノイズの低減をはかることができる。
【０１５４】
また、更新のためのピッチゲインコードｓ４１７を、無音フレームの剰余ビットを用いて符号器から復号器に送ることとしたので、伝送路を有効に利用することができ、全体としての伝送速度に影響を与えることがない。
【０１５５】
なお、以上説明した各実施の形態において、更新用コード（雑音コードベクトルｓ１１７、ゲインコードｓ２１７、ピッチラグコードｓ３１７、ピッチゲインコードｓ４１７）の情報量が無音フレームの剰余ビットの容量よりも大きい場合には、複数の無音フレームに分けて伝送することとしてもよい。また、更新用コードを複数の無音フレームに分けて伝送する場合には、連続する２個以上の無音フレームに分けて伝送してもよいし、不連続の無音フレームに分けて伝送してもよい。さらに、更新用コードの伝送に使用する無音フレームを伝送路の特性や伝送情報の特性に応じて選択することとしてもよい。
【０１５６】
図２０は、更新用コードの情報量が無音フレームの剰余ビットの容量よりも大きい場合に、かかる更新用コードを連続する２個の無音フレームに分けて伝送する方法の一例を示す図である。同図において、○印は更新用コードを搭載するフレームを示しており、×印は更新用コードを搭載しないフレームを示している。同図に示したように、無音フレームが連続しない場合には、この無音フレームで伝送できる更新用コードのみを伝送する。また、無音フレームが２個以上連続する場合には、最初の２個の無音フレームを用いて更新用コードを伝送する。更新用コードの伝送に使用しない無音フレームでは、図９の（Ｔｓ  −Ｔｒ  ）ビットの領域で送られるのは、更新フラグｓ１２３，ｓ２２３，ｓ３２３，ｓ４２３のみである。
【０１５７】
また、上述の各実施の形態で示したように、更新用コードはベクトル量であってもよいし、スカラ量であってもよい。
【０１５８】
この発明では、伝送路の種類は特に限定されることはなく、無線の伝送路であってもよいし、有線の伝送路であってよい。
【０１５９】
上述した各実施の形態では、更新用コードを無音フレームの剰余ビットを利用して伝送することとしたが、剰余ビットを用いずに更新用コードを送ることも可能である。
【０１６０】
また、上述した各実施の形態では、ＬＰＣ分析・量子化部１０２としてＣＥＬＰ型のものを使用したが、他のタイプのもの、例えばパルス駆動型のもの、残差駆動型のもの、量子化テーブルを使用するもの等を使用することも可能である。
【０１６１】
【発明の効果】
このように、この発明によれば、有音情報の量子化に使用する量子化テーブルのコードを随時更新することとしたので、有音時の周波数特性をサンプル単位で向上させることができ、従って雑音感を向上させてノイズの低減を図ることができる。
【０１６２】
また、量子化テーブルのコードを更新するのための情報を、無音フレームの剰余ビットを用いて符号器から復号器に送ることとしたので、伝送路を有効に利用することができ、全体としての伝送速度に影響を与えることがない。
【図面の簡単な説明】
【図１】この発明の第１の実施の形態における音声信号の符号化装置のブロック図である。
【図２】この発明の第１の実施の形態における音声信号の復号化装置のブロック図である。
【図３】この発明の第２の実施の形態における音声信号の符号化装置のブロック図である。
【図４】この発明の第２の実施の形態における音声信号の復号化装置のブロック図である。
【図５】この発明の第３の実施の形態における音声信号の符号化装置のブロック図である。
【図６】この発明の第３の実施の形態における音声信号の復号化装置のブロック図である。
【図７】この発明の第４の実施の形態における音声信号の符号化装置のブロック図である。
【図８】この発明の第４の実施の形態における音声信号の復号化装置のブロック図である。
【図９】この発明の第１の実施の形態における有音・無音フレームの伝送方法の例を示す概念図である。
【図１０】この発明の第１の実施の形態における雑音符号帳の量子化テーブルの構造を示す概念図である。
【図１１】この発明の第２の実施の形態における雑音ゲイン符号帳の量子化テーブルの構造を示す概念図である。
【図１２】この発明の第３の実施の形態におけるピッチラグ符号帳の量子化テーブルの構造を示す概念図である。
【図１３】この発明の第４の実施の形態におけるピッチゲイン符号帳の量子化テーブルの構造を示す概念図である。
【図１４】この発明の第１の実施の形態における伝送の原理を説明するための概念図である。
【図１５】この発明の第１の実施の形態における伝送の原理を説明するための概念図である。
【図１６】この発明の第１の実施の形態における雑音コードベクトルの更新の原理を説明するための分布図である。
【図１７】この発明の第１の実施の形態における雑音コードベクトルの更新の原理を説明するための分布図である。
【図１８】有音フレームの各パラメータのビット割り当て例を示す表である。
【図１９】この発明の第１の実施の形態において、更新用のフレームを符号化装置から復号化装置に伝送する方法の一例を説明するための概念図である。
【図２０】この発明において、更新用のフレームを符号化装置から復号化装置に伝送する方法の他の例を説明するための概念図である。
【図２１】本発明の第１の実施の形態におけるコードベクトル更新方法を示すフローチャートである。
【図２２】本発明の第２の実施の形態におけるコード更新方法を示すフローチャートである。
【図２３】本発明の第３の実施の形態におけるコード更新方法を示すフローチャートである。
【図２４】本発明の第４の実施の形態におけるコード更新方法を示すフローチャートである。
【符号の説明】
１０１・・・有音・無音判定器
１０２・・・ＬＰＣ分析・量子化部
１０３・・・合成フィルタ
１０５・・・重み付き誤差計算回路
１０６・・・多重化回路
１０８・・・ランダム雑音発生器
１１０・・・ランダム雑音用ゲイン符号帳
１１３・・・ピッチ合成フィルタ
１１４・・・スイッチ
１１５・・・雑音ゲイン符号帳
１１６・・・ピッチラグ符号帳
１１７・・・ピッチゲイン符号帳
１１８・・・雑音符号帳更新回路
【図１】
0003575967.tif 000004
【図２】
0003575967.tif 000005
【図３】
0003575967.tif 000006
【図４】
0003575967.tif 000007
【図５】
0003575967.tif 000008
【図６】
0003575967.tif 000009
【図７】
0003575967.tif 000010
【図８】
0003575967.tif 000011
【図９】
0003575967.tif 000012
【図１０】
0003575967.tif 000013
【図１１】
0003575967.tif 000014
【図１２】
0003575967.tif 000015
【図１３】
0003575967.tif 000016
【図１４】
0003575967.tif 000017
【図１５】
0003575967.tif 000018
【図１６】
0003575967.tif 000019
【図１７】
0003575967.tif 000020
【図１８】
0003575967.tif 000021
【図１９】
0003575967.tif 000022
【図２０】
0003575967.tif 000023
【図２１】
0003575967.tif 000024
【図２２】
0003575967.tif 000025
【図２３】
0003575967.tif 000026
【図２４】
0003575967.tif 000027