JPH10133697A - 音声符号化方法およびその装置 - Google Patents

音声符号化方法およびその装置

Info

Publication number
JPH10133697A
JPH10133697A JP9240924A JP24092497A JPH10133697A JP H10133697 A JPH10133697 A JP H10133697A JP 9240924 A JP9240924 A JP 9240924A JP 24092497 A JP24092497 A JP 24092497A JP H10133697 A JPH10133697 A JP H10133697A
Authority
JP
Japan
Prior art keywords
pulse
reference value
data storage
intensity
encoding
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.)
Withdrawn
Application number
JP9240924A
Other languages
English (en)
Inventor
Mitsuhiro Inazumi
満広 稲積
Sunao Aizawa
直 相澤
Yasunaga Miyazawa
康永 宮沢
Hiroshi Hasegawa
浩 長谷川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP9240924A priority Critical patent/JPH10133697A/ja
Publication of JPH10133697A publication Critical patent/JPH10133697A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Analogue/Digital Conversion (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)

Abstract

(57)【要約】 【課題】 生成された駆動音源パルスに対して、データ
劣化を最小限にとどめながら効率よい符号化を可能とす
る。 【解決手段】 駆動音源信号符号化部5として、パルス
コードとパルスの強度と参照値を1つの組として記憶す
る複数個のパルスキャッシュ521〜524と、入力音
声データとスペクトル包絡パラメータにより生成された
駆動音源信号の強度と前記複数個のパルスキャッシュに
格納された強度との適合度を所定のパラメータにより判
定するパルス適合度判定手段51と、その判定結果に応
じてパルスキャッシュの内容を更新する更新手段54
と、パルス適合度判定手段および更新手段の処理結果を
基に、前記複数個のパルスキャッシュの中からいずれか
のパルスキャッシュを選択する手段53と、選択された
パルスキャッシュのデータを基に、前記駆動音源信号を
符号化する符号化駆動音源データ出力手段55とを有す
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、音声信号を少ない
計算量で効率的に符号化する音声符号化方法および装置
に関し、特に、生成された駆動音源パルス信号を効率的
に符号化する音声符号化方法およびその装置に関する。
【0002】
【従来の技術】音声信号を符号化する方法として、従来
より様々な方法が提案されている。その1つとして、特
開昭59−116973(以下、第1の従来技術とい
う)がある。
【0003】この第1の従来技術は、入力音声データを
短時間毎に分割して短時間音声信号系列を求める手段、
この短時間音声信号系列からスペクトル包絡パラメータ
を抽出するスペクトル包絡パラメータ抽出手段、このス
ペクトル包絡パラメータをもとにインパルス応答系列を
計算するするインパルス応答系列計算手段、このインパ
ルス応答系列を用いて自己相関関数列を計算する手段、
前記インパルス応答系列と短時間音声信号系列を用いて
相互相関関数列を計算する手段、前記自己相関関数列と
相互相関関数列を用いて駆動音源信号系列計算して符号
化する手段、スペクトル包絡符号と駆動音源信号とを組
み合わせて出力する手段とを有し、さらに、前記短時間
音声信号に対して予め定められた補正を加える目標信号
計算手段を有している。
【0004】この第1の従来技術によれば、音声の符号
化を行うに際して、効率的に駆動音源パルスの位置とゲ
インを決定することができ、また、計算量、使用メモリ
量の削減にもある程度の効果は得られる。
【0005】しかし、この第1の従来技術は、女性の声
のような音声信号を符号化したのち、音声合成を行う場
合、高品質な音声合成を得るには、駆動音源パルスをた
くさん抽出する必要があるため、圧縮率が悪くなるとい
う問題点があった。
【0006】すなわち、女性の声は、男性の声に比べる
と複雑で、高精度な合成音を得るには、駆動音源パルス
をたくさん抽出する必要があり、結局は、圧縮率が悪い
ものとなってしまう。
【0007】一方、高い圧縮率を得るための技術とし
て、特開昭63−37399(以下、第2の従来技術と
いう)、特開平3−4300(以下、第3の従来技術と
いう)がある。
【0008】第2の従来技術は、音声信号からピッチ推
定を行い、過去のパルス列からの推定値と実際の信号と
の残差を求め、この残差により駆動音源パルスを計算し
ようとするものである。
【0009】また、第3の従来技術は、ピッチ推定を行
い、その1ピッチ区間分の駆動音源(マルチパルス)を
推定する。そして、そのマルチパルスのゲインと位相を
補正することによって、他のピッチ区間を補正すること
により他のピッチ区間を近似する。さらに、推定された
値と実際の値との残差より、第2のマルチパルスを推定
する。なお、マルチパルス信号の他に雑音コードブック
を用いる場合もある。
【0010】
【発明が解決しようとする課題】しかしながら、従来の
技術は、それぞれにおいて種々の問題点がある。たとえ
ば、第1の従来技術は、駆動音源パルスを求めるための
基本的な技術ではあるが、合成音の品質を上げようとす
ると、多くの駆動音源パルスを立てる必要があり、女性
の声のような音声データに対しては特に圧縮率が悪くな
る問題がある。また、第2、第3の従来技術は、同じ波
形を繰り返す周期を求め、1つ前の周期から次の周期を
推定し、その推定した部分と現実の音声波形との差分を
計算して、その差分により駆動音源を計算するため、高
い圧縮率が実現できるが、ピッチを求めたり差分を求め
たりする必要があるため計算量が多く、また、それらの
データを蓄えるために大きな容量のメモリが必要になる
という問題点がある。
【0011】さらにまた、以上の従来技術は、音質を優
先するか圧縮率を優先するかという相反する課題に対し
て、駆動音源となるパルスの個数を調整するためのパラ
メータしか持っていないのが普通である。
【0012】最近では音声データを扱う携帯用の情報機
器が広い分野で用いられるようになってきている。この
種の携帯用情報機器やコンピュータネットワーク上のリ
アルタイム伝送などにおいては、音質と圧縮率に係わる
パラメータをより細かく調整できることが要求されてい
る。
【0013】そこで、本発明は、生成された駆動音源パ
ルスを効率よく符号化でき、かつ、音質と圧縮率の優先
度合いに応じて両者のバランスを調整することを可能と
し、さらに、計算量および使用メモリ量の削減を図り、
データ欠落に対して大きな影響を受けることなく、比較
的高い圧縮率での音声データ圧縮を可能とする音声符号
化方法およびその装置を実現することを目的とする。
【0014】
【課題を解決するための手段】本発明の音声合成方法
は、請求項1に記載されるように、入力された音声デー
タより、所定長のフレームデータを切り出して、この切
り出されたフレームデータについてスペクトル包絡パラ
メータを抽出し、前記入力音声データと前記スペクトル
包絡パラメータにより駆動音源信号を生成し、この駆動
音源信号を符号化して、その符号化した駆動音源信号と
前記スペクトル包絡パラメータを符号化した信号を基に
符号化データを得る音声符号化方法において、前記駆動
音源信号を符号化する方法は、パルスコードとパルスの
強度と参照値を1つの組として記憶するパルスデータ記
憶手段を複数個有し、前記生成された駆動音源信号の強
度と、前記複数個のパルスデータ記憶手段に格納された
強度との適合度を、所定のパラメータにより判定し、そ
の判定結果に応じてパルスデータ記憶手段の内容を更新
する処理を行い、その結果を基に、前記複数個のパルス
データ記憶手段の中からいずれかのパルスデータ記憶手
段を選択し、この選択されたパルスデータ記憶手段の内
容を基に、前記駆動音源信号を符号化することを特徴と
している。
【0015】また、本発明の音声符号化方法は、請求項
5に記載されるように、入力された音声データより、所
定長のフレームデータを切り出して、この切り出された
フレームデータについてスペクトル包絡パラメータを抽
出し、前記入力音声データと前記スペクトル包絡パラメ
ータにより駆動音源信号を生成し、この駆動音源信号を
符号化して、その符号化した駆動音源信号と前記スペク
トル包絡パラメータを符号化した信号を基に符号化デー
タを得る音声符号化方法において、前記入力音声データ
と前記スペクトル包絡パラメータにより駆動音源信号を
生成する方法は、抽出されたスペクトル包絡パラメータ
から主パルスの位置と強度を推定し、この主パルスに対
して時間的に先行する所定区間において前記主パルスに
対する先行パルスの位置と強度を推定するとともに、前
記主パルスに対して時間的に後続する所定区間において
前記主パルスに対する後続パルスの位置と強度を推定
し、これら主パルス、先行パルス、後続パルスを1つの
組として、この1つの組のパルス群を用いて前記切り出
されたフレーム内の駆動音源信号を作成する。
【0016】この駆動音源信号を符号化する方法は、パ
ルスコードとパルスの強度と参照値を1つの組として記
憶するパルスデータ記憶手段を複数個有し、前記生成さ
れた駆動音源信号の強度と、前記複数個のパルスデータ
記憶手段に格納された強度との適合度を、所定のパラメ
ータにより判定し、その判定結果に応じてパルスデータ
記憶手段の内容を更新する処理を行い、その結果を基
に、前記複数個のパルスデータ記憶手段の中からいずれ
かのパルスデータ記憶手段を選択し、この選択されたパ
ルスデータ記憶手段の内容を基に、前記駆動音源信号を
符号化することを特徴としている。
【0017】以上のような本発明の音声符号化方法にお
いて、前記生成された駆動音源信号の強度と、前記複数
個のパルスデータ記憶手段に格納された強度との適合度
を、所定のパラメータにより判定する処理は、生成され
た駆動音源信号における符号化すべきパルスの強度をパ
ルスデータ記憶手段に格納された強度と比較して、その
適合度から適合の可否を判定し、適合する強度が存在す
る場合は、その強度に対応する参照値を、最新を意味す
る参照値に書き換え、当該強度に対応する参照値よりも
新しい参照値に対してはその参照値を順送りし、適合す
る強度が存在しない場合は、参照されることの最も少な
い参照値に対応する強度を符号化すべき強度に書き換え
るとともに、その参照値を最新を意味する参照値に書き
換え、他の参照値を順送りするようにしている。
【0018】また、前記複数個のパルスデータ記憶手段
の中からいずれかのパルスデータ記憶手段を選択する処
理は、生成された駆動音源信号の強度に対して、前記パ
ラメータにより許容範囲を設定して、その許容範囲内に
おいて前記駆動音源信号とパルスデータ記憶手段内の強
度を示す値とを比較して、その比較結果を基に適合度の
高いパルスデータ記憶手段を選択するようにしている。
【0019】さらに、前記適合度を判定するためのパラ
メータは、その値を調整可能としている。
【0020】また、本発明の音声符号化装置は、請求項
9に記載されるように、入力された音声データより切り
出された所定長のフレームデータを記憶するフレームデ
ータ記憶手段、切り出されたフレームデータについてス
ペクトル包絡パラメータを抽出するスペクトル包絡パラ
メータ抽出手段、抽出されたスペクトル包絡パラメータ
を符号化するスペクトル包絡パラメータ符号化手段、前
記入力音声データと前記スペクトル包絡パラメータによ
り駆動音源信号を生成する駆動音源信号生成手段、駆動
音源信号を符号化する駆動音源信号符号化手段、符号化
された駆動音源信号と前記符号化されたスペクトル包絡
パラメータを基に符号化データを出力する符号化データ
出力手段を少なくとも有する音声符号化装置において、
前記駆動音源信号符号化手段は、パルスコードとパルス
の強度と参照値を1つの組として記憶する複数個のパル
スデータ記憶手段と、前記入力音声データと前記スペク
トル包絡パラメータにより生成された駆動音源信号の強
度と前記複数個のパルスデータ記憶手段に格納された強
度との適合度を所定のパラメータにより判定するパルス
適合度判定手段と、前記判定結果に応じてパルスデータ
記憶手段の内容を更新する更新手段と、これらパルス適
合度判定手段および更新手段の処理結果を基に、前記複
数個のパルスデータ記憶手段の中からいずれかのパルス
データ記憶手段を選択する手段と、選択されたパルスデ
ータ記憶手段の内容を基に、前記駆動音源信号を符号化
する符号化駆動音源データ出力手段とを有することを特
徴としている。
【0021】また、本発明の音声符号化装置は、請求項
13に記載されるように、入力された音声データより切
り出された所定長のフレームデータを記憶するフレーム
データ記憶手段、切り出されたフレームデータについて
スペクトル包絡パラメータを抽出するスペクトル包絡パ
ラメータ抽出手段、抽出されたスペクトル包絡パラメー
タを符号化するスペクトル包絡パラメータ符号化手段、
前記入力音声データと前記スペクトル包絡パラメータに
より駆動音源信号を生成する駆動音源信号生成手段、駆
動音源信号を符号化する駆動音源信号符号化手段、符号
化された駆動音源信号と前記符号化されたスペクトル包
絡パラメータを符号化データとして出力する符号化デー
タ出力手段を少なくとも有する音声符号化装置におい
て、前記入力音声データと前記スペクトル包絡パラメー
タにより駆動音源信号を生成する手段は、前記スペクト
ル包絡パラメータにより、前記切り出されたフレームか
ら主パルスの位置と強度を推定する主パルス推定手段
と、この主パルスに対して時間的に先行する所定区間に
おいて、前記主パルスに対する先行パルスの位置と強度
を推定する先行パルス推定手段と、前記主パルスに対し
て時間的に後続する所定区間において前記主パルスに対
する後続パルスの位置と強度を推定する後続パルス推定
手段と、これら主パルス、先行パルス、後続パルスを1
つの組として、この1つの組のパルス群を用いて前記1
フレーム内の駆動音源信号を生成する駆動音源信号生成
手段とを有する。
【0022】さらに、前記駆動音源信号符号化手段は、
パルスコードとパルスの強度と参照値を1つの組として
記憶する複数個のパルスデータ記憶手段と、前記生成さ
れた駆動音源信号の強度と、前記複数個のパルスデータ
記憶手段内の強度との適合度を所定のパラメータにより
判定するパルス適合度判定手段と、前記判定結果に応じ
てパルスデータ記憶手段の内容を更新する更新手段と、
これらパルス適合度判定手段および更新手段の処理結果
を基に、前記複数個のパルスデータ記憶手段の中からい
ずれかのパルスデータ記憶手段を選択する手段と、選択
されたパルスデータ記憶手段を基に、前記駆動音源信号
を符号化する符号化駆動音源データ出力手段とを有した
ことを特徴としている。
【0023】以上のような本発明の音声符号化装置にお
いて、前記パルス適合度判定手段およびパルスデータ記
憶手段の内容を更新する更新手段が行う処理は、生成さ
れた駆動音源信号における符号化すべきパルスの強度を
パルスデータ記憶手段内の強度と比較して、その適合度
から適合の可否を判定し、適合する強度が存在する場合
は、その強度に対応する参照値を、最新を意味する参照
値に書き換え、当該強度に対応する参照値よりも新しい
参照値に対してはその参照値を順送りし、適合する強度
が存在しない場合は、参照されることの最も少ない参照
値に対応する強度を符号化すべき強度に書き換えるとと
もに、その参照値を最新を意味する参照値に書き換え、
他の参照値を順送りするようにしている。
【0024】また、前記パルスデータ記憶手段を選択す
る手段は、生成された駆動音源信号の強度に対しパラメ
ータにより許容範囲を設定して、その許容範囲内におい
て前記駆動音源信号とパルスデータ記憶手段内の強度を
示す値とを比較して、その比較結果を基に適合度の高い
パルスデータ記憶手段を選択するようにしている。
【0025】さらに、前記適合度を判定するためのパラ
メータは、その値を調整可能としている。
【0026】このように、本発明では、 複数のパルス
キャッシュを持ち、その中から、或るフレームの音声デ
ータを符号化するに最適なパルスキャッシュを選択し、
その選択されたパルスキャッシュのキャッシュヒット、
キャッシュミスの情報、それに応じた内容の更新結果を
用いて駆動音源パルスを符号化しているので、1つ1つ
の駆動音源パルスに対して、データ劣化を最小限にとど
めながら効率よい符号化が可能となる。
【0027】また、パルスゲインの適合度を判定するた
めのパラメータを調整可能とすることにより、圧縮率優
先あるいは音質優先のバランスを調整することができ
る。つまり、許容誤差を大きく取れば、キャッシュミス
が減少し、圧縮率は向上するが音質は劣化する。一方、
許容誤差を小さく取れば、キャッシュミスが増大し、圧
縮率は低下するが音質は向上する。これにより、たとえ
ば、リアルタイム転送時において、回線に余裕がないと
きは、データ転送量を小さくするために、圧縮率を優先
するようにし、逆に、回線に余裕があるときは、音質を
優先するというようなことも可能となる。
【0028】さらに、本発明では、駆動音源パルスを、
主パルスとその先行パルス、後続パルスの3つを1組と
し、その1組のパルス群を基にして駆動音源パルス列を
作るようにしている。したがって、ピッチ周期そのもの
を計算していないので、計算量の削減が図れ、また、1
フレームずつ独立して合成パルス列を作成するので、従
来の差分情報を用いる方法に比べて、データの一部が失
われた場合にもその影響を殆ど受けることがない。
【0029】このように作成された駆動音源パルス信号
に対して、前記したような符号化処理を行うことで、デ
ータ劣化を最小限にとどめながら効率よい符号化が可能
となる。
【0030】
【発明の実施の形態】以下、本発明の実施の形態につい
て図1〜図12を参照しながら説明する。
【0031】(第1の実施の形態)この第1の実施の形
態による音声符号化方法は、駆動音源信号として求めら
れたパルスの強度(以下、パルスゲインという)の劣化
を最小限にとどめ、効率よく符号化し、かつ、音質と圧
縮率の優先度合いに応じて両者のバランスを調整するこ
とを可能とするものである。
【0032】図1は本発明の第1の実施の形態を説明す
る示すブロック図であり、概略的には、フレームデータ
記憶部1、スペクトル包絡パラメータ抽出部2、スペク
トル包絡パラメータ符号化部3、駆動音源信号生成部
4、駆動音源信号符号化部5、符号データ出力部6から
構成されている。
【0033】前記フレームデータ記憶部1は、処理対象
の音声信号から抽出された1フレーム分のデータを記憶
する。スペクトル包絡パラメータ抽出部2は、フレーム
データ記憶部1に記憶されているフレームデータからス
ペクトル包絡パラメータを抽出する。
【0034】駆動音源信号生成部4は、スペクトル包絡
パラメータ抽出部2で抽出されたスペクトル包絡パラメ
ータから駆動音源パルスを生成する。
【0035】音源信号符号化部5は、パルス適合度判定
部51、複数(この実施の形態では4個とする)のパル
スキャッシュ521〜524、パルスキャッシュ選択部
53、パルスキャッシュ更新部54、符号化駆動音源デ
ータ出力部55などから構成されている。なお、パルス
キャッシュ521〜524は、コード番号、パルスゲイ
ン、参照値などのパルスデータを格納する記憶手段であ
り、その詳細については後に説明する。また、駆動音源
信号符号化部5のその他の構成要素におけるそれぞれの
機能や動作についても、後に詳細に説明する。
【0036】このような構成において、その処理につい
て説明する。
【0037】本発明は、前記駆動音源信号符号化部5の
符号化処理にその特徴がある。以下、この符号化処理に
ついて説明する。
【0038】符号化データ出力部6から出力される圧縮
後の符号化データは、図2に示すように、8ビットごと
のデータ構成とする。
【0039】図2において、TYPEはそのフレームの
分類(たとえば、無音、有声音、無声音など)を示し、
ここでは、2ビットが割り当てられている。PARCO
R・0〜PARCOR・9はスペクトル包絡パラメータ
符号化方法(RSR・STD−27など)によるPAR
COR係数を示すもので、このRSR・STD−27に
よるスペクトル包絡パラメータ符号化方法によれば、8
00ビットのデータを36ビットに圧縮することができ
る。
【0040】これらのTYPEとPARCOR・0〜P
ARCOR・9で構成される合計38ビットのデータ
が、スペクトル包絡パラメータ符号化部3から出力され
るが、これらに割り当てられた5バイト分のデータ領域
に対して2ビット分が余ることになる。
【0041】本発明は、この余った2ビット分をキャッ
シュコード(CacheCode)を表す領域として用いる。
なお、このキャッシュコードは、前記複数のパルスキャ
ッシュに対応したコードが記述される部分であり、ここ
では、2ビットが割り当てられているので、4個のキャ
ッシュのいずれかを指示することができる。
【0042】また、図2において、ΔPosition・0、
ΔPosition・1は、駆動音源パルスデータにおける位
置の情報であり、ここでは、前に位置する駆動音源パル
スとの位置の差を示すデータである。GainCode・0、
GainCode・1は、前記複数のパルスキャッシュのうち
選択されたパルスキャッシュに格納されたパルスコード
番号を示すものである。そして、ΔPosition・0に4
ビット、そのGainCode・0に4ビットが割り当てら
れ、同様に、ΔPosition・1に4ビット、そのGainC
ode・1に4ビットが割り当てられている。
【0043】以上が1フレーム分のデータを示してい
る。なお、図2では、図を簡単にするために、1フレー
ムにおける駆動音源パルスは2個のみが示されている。
【0044】ここで、フレーム長128のLSB1ビッ
トを切り捨てて、64分解能とすると、4個以上の駆動
音源パルスが均一に分布するとすれば、図3に示すよう
に、駆動音源パルス間距離は16以下となり、ΔPosit
ion・0〜ΔPosition・3を表すデータ(Δp・0〜Δ
p・3)は、4ビットで表せることになる。
【0045】本発明は、1パルス分のデータを8ビット
で表そうとするものであり、駆動音源の位置を表す情報
(ΔPosition)に4ビット割り当てると、そのパルス
ゲインを表す情報には4ビット割り当てられることにな
る。しかし、パルスゲインを表す情報は幅広い数値とな
るため、そのまま4ビットで表すのは通常では難しいも
のとなる。そこで、パルスゲインを、4ビットのGain
Codeで表す。以下にその方法を説明する。
【0046】本発明は、図1に示すように、複数のパル
スキャッシュを持っている。図4(a)は複数のパルス
キャッシュのうちの或る1つのパルスキャッシュを示し
ている。このように、パルスキャッシュにはコード番
号、パルスゲイン、参照値が格納されている。たとえ
ば、コード番号0番のパルスゲインは「17」でその参
照値は「1」であるということを示している。この参照
値というのは、そのパルスゲインがいつ参照されたかを
表すデータであり、現在参照された場合には、参照値は
「0」であり、1つ前に参照された場合には参照値は
「1」である。このように、参照値の数値が大きくなれ
ばなるほど、しばらくの間、参照されていないパルスゲ
インであることを示している。
【0047】たとえば、今、符号化したい駆動音源パル
スのパルスゲインが「32」であったとすると、パルス
キャッシュの中からそのゲインを探す。このとき、許容
誤差を設定して、誤差を許容した範囲以内において適合
するパルスゲインが有るか否かを判定する。その許容誤
差として、ここでは±5%を設定したとする。この許容
誤差は固定ではなく調整可能とする。
【0048】今、許容誤差を±5%とすると、符号化し
たいパルスゲインが「32」である場合、32×0.05≒
2となり、「30」〜「34」までのパルスゲインをパ
ルスキャッシュから探すことになる。
【0049】図4(a)で示したパルスキャッシュで
は、コード番号5のパルスゲインが「31」であるの
で、該当するパルスゲインが存在することになる。この
ように該当するパルスゲインが存在することをキャッシ
ュヒットという。
【0050】このように、キャッシュヒットすると、キ
ャッシュヒットした参照値を「0」に置き換える。つま
り、コード番号5における参照値は「3」であったが、
キャッシュヒットすることにより、参照値を「0」に置
き換える。そして、そのもともとの参照値「3」より小
さい値の参照値をすべて+1する。つまり、この図4
(a)の場合、コード番号0、1、2の参照値は「3」
より小さいので、これらをそれぞれ+1する。この様子
を図4(b)に示す。
【0051】これに対して、図5(a)に示すように、
符号化したいパルスゲイン32(許容誤差を考慮した値
30〜34)が、パルスキャッシュの中に存在しない場
合には、キャッシュミスとして処理する。
【0052】このキャッシュミスの場合は、最大の参照
値を有するゲインを、現在符号化したいパルスゲイン
「32」に書き換え、その参照値を「0」とするととも
に、その他の参照値をすべて+1する。これを図5
(b)に示す。図5(b)の例では、最大の参照値が
「5」であり、この最大の参照値を有するパルスゲイン
「110」を現在符号化したいパルスゲイン「32」に
書き換えるとともに、その参照値を「0」に更新する。
さらに、その他の参照値をすべて+1する。この最大の
参照値というのは前記したように、しばらく参照されて
いないパルスゲインであるので、しばらくの間は使われ
る可能性が低いので、これを現在符号化しようとするパ
ルスゲインに書き換えるものである。
【0053】以上のパルスキャッシュの動作は、LRU
(Least Recentry Used)と呼ばれるアルゴリズムで
ある。
【0054】ところで、図2に示したように、GainCo
deは4ビットで表されるので、たとえば、0〜14まで
をキャッシュヒットを示すデータとして用い、15(”
1,1,1,1”)をキャッシュミスを表すデータとし
て用いる。したがって、1つのパルスキャッシュは、0
〜14のコード番号に対応した15個のデータを持たせ
ることができる。
【0055】また、本発明は、前記したように余った2
ビットをキャッシュコードに使用しているので、パルス
キャッシュを4個設けて、この4個のパルスキャッシュ
から最も適切な1個のパルスキャッシュを選択するよう
にしている。
【0056】ここで、駆動音源信号生成部4から出力さ
れた1フレーム分のパルスが6個であるとし、それらの
パルスのそれぞれのゲインが「60,58,30,3
0,13,12」であるとする。そして、許容誤差を±
5%に選ぶと、適合するパルスゲインは、「60±3,
58±3,30±2,30±2,13±1,12±1」
となる。
【0057】そして、予め用意された4個のパルスキャ
ッシュのうち、符号化するに最も適当な1つのパルスキ
ャッシュを選ぶ。この処理はパルス適合度判定部51、
パルスキャッシュ更新部54、パルスキャッシュ選択部
53で以下のようにして行う。なお、ここでは、説明を
簡単にするため、3つのパルスキャッシュの中から1つ
を選択する例について説明する。
【0058】図6(a),(b),(c)はそれぞれパ
ルスキャッシュ#1,#2,#3の内容を示すものでで
ある。これらのパルスキャッシュ#1,#2,#3は、
実際には、コード番号として0から14まで持ち、それ
ぞれのコード番号対応に15個のパルスゲインの格納が
可能であるが、ここでは、説明を簡略化するために、0
〜2のコード番号に対応した3個のパルスゲインのみを
示している。
【0059】まず、パルスキャッシュ#1について考え
ると、キャッシュミスは0個であるが、その積算誤差は
3となる。
【0060】つまり、符号化すべきパルスのパルスゲイ
ン「60,58,30,30,13,12」について、
1つ1つをパルスキャッシュ#1の内容と±5%の誤差
を許容して比較すると、パルスゲイン60に対しては、
コード番号0のパルスゲインがヒットし(ただし誤差は
1)、パルスゲイン58に対しては、コード番号0のパ
ルスゲインがヒットし(誤差は1)、パルスゲイン30
に対しては、コード番号1のパルスゲインがヒットし
(誤差は0)、パルスゲイン13に対しては、コード番
号2のパルスゲインがヒットし(誤差は1)、パルスゲ
イン12に対しては、コード番号2のパルスゲインがヒ
ットする(誤差は0)ことになる。したがって、キャッ
シュミスは0個であり、その積算誤差は3となる。
【0061】同様に、パルスキャッシュ#2について考
えると、キャッシュミスは0であるが、その積算誤差は
5となる。また、パルスキャッシュ#3について考える
と、キャッシュミスが2となる。
【0062】このパルスキャッシュ#3の場合は、ま
ず、符号化すべきパルスのパルスゲイン「60」に対し
ては、どれも適合しないので、キャッシュミスとなり、
最大の参照値を有するゲイン「50」が「60」に書き
換えられるとともに、その参照値が「0」に置き換えら
れる。そして、次のパルスのパルスゲイン「58」に対
しては、コード番号0のパルスゲイン(パルスゲインが
「60」に書き換えられている)がヒットし(誤差は
2)、次のパルスのパルスゲイン「30」に対しては、
コード番号1のゲインがヒットし(誤差は0)、次のパ
ルスのパルスゲイン「13」に対しては、どれも適合し
ないので、キャッシュミスとなり、最大の参照値を有す
るゲインが「13」に書き換えられるとともに、その参
照値が「0」に置き換えられる。
【0063】このように、パルスキャッシュ#3は他の
パルスキャッシュ#1、#2に比べてキャッシュミスが
多い。また、パルスキャッシュ#2はパルスキャッシュ
#1に比べて、積算誤差が大きいので、この場合は、パ
ルスキャッシュ#1が選択されることになる。
【0064】以上のようにして、複数個(この場合は4
個)用意されたパルスキャッシュの中から1つのパルス
キャッシュが選択される。
【0065】これにより、選択されたパルスキャッシュ
情報やその選択されたパルスキャッシュにおけるキャッ
シュヒットあるいはキャッシュミスさらにはその更新デ
ータなどのデータを、符号化駆動音源データ出力部55
により統合して、符号化データとして出力する。
【0066】このようにして、符号化駆動音源データ出
力部55から符号化駆動音源データが出力される。その
符号化駆動音源データの一例を図7に示す。なお、この
駆動音源データは、前述したように、本発明では1つの
パルスを8ビット(ΔPositionに4ビット、GainCod
eに4ビット)で表すようにしている。
【0067】図7の例は、1フレーム中に5個のパルス
p0,p1,・・・,p4が生成された場合が示されて
いる。図7によれば、パルスp0におけるΔPosition
(Δp・0)は「7」で、そのGainCode(GC・0)
は「0」、パルスp1におけるΔP1は「11」で、そ
のGainCode(GC・1)は「14」、パルスp2にお
けるΔP2は「2」で、そのGC・2は「15」、パル
スp3におけるΔP3は「3」で、そのGC・3は
「0」、パルスp4におけるΔP4は「14」で、その
GC・4は「13」というように記述されている。な
お、実際には、それぞれ4ビットのコードで表されてい
る。
【0068】そして、GainCode「0」〜「14」はキ
ャッシュヒットした場合におけるパルスキャッシュ内の
コード番号を示している。たとえば、GainCode「0」
というのは、選択されたパルスキャッシュのコード番号
「0」を指し、GainCode「14」というのは、選択さ
れたパルスキャッシュのコード番号「14」を指してい
る。また、GainCode「15」はキャッシュミスを示し
ている。すなわち、符号化すべきパルスのパルスゲイン
がたとえば「128」であったとすると、選択されたパ
ルスキャッシュ中に、±5%の誤差を許容しても「12
8」に該当するパルスゲインが存在しない場合であり、
このような場合には、キャッシュミスとしてGainCode
「15」を書き込むとともに、次の段の8ビットを使っ
て新たなパルスゲインデータとして「128」を記述す
る。
【0069】このように、キャッシュミスがあった場合
には、パルスキャッシュのデータ更新が行われる。つま
り、パルスキャッシュの中の最も参照値の大きいパルス
ゲインをそのとき符号化すべきゲイン値に書き換えると
ともに、その参照値を「0」とし、その他の参照値をす
べて+1する。
【0070】このようなパルスキャッシュの更新および
選択などの処理については前述したが、ここでさらに具
体的に説明する。なお、前述したように、本来は、予め
用意されているすべてのパルスキャッシュ(この場合
は、4個のパルスキャッシュ)についてキャッシュヒッ
ト、キャッシュミスを調べ、それに応じてパルスゲイン
や参照値の更新を行い、キャッシュミスの数や積算誤差
の数値を基に、いずれか1つのパルスキャッシュを選択
するが、ここでは、その処理によって選択されたパルス
キャッシュについて、キャッシュヒット、キャッシュミ
スによってどのようにゲイン値や参照値が更新されて行
くかを、図8を参照しながら説明する。
【0071】図8(a)は選択されたパルスキャッシュ
の初期の内容であり、コード番号0に対するパルスゲイ
ンは「32」でその参照値は「3」、コード番号1に対
するパルスゲインは「64」でその参照値は「6」、コ
ード番号14に対するパルスゲインは「−12」でその
参照値は「7」というように記述されている。
【0072】そして今、符号化すべき駆動音源パルス信
号が「32,4,128,32,128」であったとす
る。図8(b)は符号化すべきパルスのパルスゲイン
「32」に対して、パルスキャッシュのコード番号
「0」がヒットし、その参照値が「0」に更新された様
子を示している。同図(c)は、次に符号化すべきパル
スのパルスゲイン「−12」に対して、パルスキャッシ
ュのコード番号「14」がヒットし、その参照値が
「0」に更新された様子を示すもので、この場合、
「7」よりも小さい参照値は+1される。同図(d)
は、その次に符号化すべきパルスのゲイン「128」に
対して、適合するものがなく、キャッシュミスした場合
を示している。この場合は、そのパルスキャッシュのな
かで、参照値「14」が最大の参照値であるので、その
パルスゲイン「72」を「128」に更新するととも
に、その参照値を「0」とし、その他の参照値をすべて
+1する。
【0073】図9(e)はさらにその次に符号化すべき
パルスのパルスゲイン「32」に対して、パルスキャッ
シュのコード番号「0」がヒットし、その参照値が
「0」に更新された様子を示している。また、同図
(f)は最後に符号化すべきパルスのパルスゲイン「1
28」に対しての処理である。この場合は、パルスキャ
ッシュのコード番号「13」のパルスゲインがすでに
「128」に更新されているので、コード番号「13」
がヒットし、その参照値が「1」から「0」に書き換え
られ、もともとの参照値「1」よりも小さい参照値を持
つコード番号0の参照値が「1」に書き換えられる。
【0074】このようにして、パルスキャッシュの内容
が更新されて行く。このような処理は、予め用意されて
いるすべてのパルスキャッシュ(この場合は、4個のパ
ルスキャッシュ)について行い、前記したように、キャ
ッシュミスの数や積算誤差の数値を基に、いずれか1つ
のパルスキャッシュを選択する。
【0075】そして、符号化駆動音源データ出力部55
から、ある1フレーム分の駆動音源パルスに対する符号
化データとして、図7で示されるような符号化駆動音源
データ形式で出力される。なお、実際には、ΔPsition
およびGainCodeを示すデータはそれぞれ4ビットのデ
ータとして表される。
【0076】これにより、駆動音源パルス列におけるそ
れぞれ1パルス分のデータを8ビットで表すことができ
る。
【0077】そして、このような符号化駆動音源データ
と、スペクトル包絡パラメータ符号化部4からのスペク
トル包絡パラメータが、符号化データ出力部6により統
合されて、図2に示すようなデータ形式にて出力され
る。
【0078】ところで、前記パルスゲインの適合度を判
定するためのパラメータ(許容誤差)を、この実施の形
態では、±5%としたが、このパラメータは調整するこ
とが可能であり、これにより、圧縮率優先あるいは音質
優先のバランスを調整することができる。つまり、許容
誤差を大きく取れば、キャッシュミスが減少し、圧縮率
は向上するが音質は劣化する。一方、許容誤差を小さく
取れば、キャッシュミスが増大し、圧縮率は低下するが
音質は向上する。これにより、たとえば、リアルタイム
転送時において、回線に余裕がないときは、データ転送
量を小さくするために、圧縮率を優先するようにし、逆
に、回線に余裕があるときは、音質を優先するというよ
うなことも可能となる。
【0079】なお、以上説明したような符号化された駆
動音源パルス(符号化駆動音源データ出力部55からの
出力)を復元する処理について以下に簡単に説明する。
【0080】今、符号化された駆動音源パルスデータが
図7であり、選択されたパルスキャッシュが図8(a)
であるとすると、パルスp0のΔP・0は「7」である
から、図9に示すように、7×2=14となり、基準点
(前のパルス位置あるいは始点)から「14」の位置が
パルスp0のパルス位置である。また、そのGainCode
は「0」であるから、そのパルスゲインはパルスキャッ
シュより「32」と求められる。このとき、その参照値
は「0」に更新される(図8(b)参照)。なお、ΔP
ositionを2倍しているのは、前述したように、フレー
ム長のLSB1ビットを切り捨てて、1/2の分解能
(フレーム長を128とすれば、64分解能)としてい
るので、復元するときは2倍する必要があるためであ
る。
【0081】また、パルスp1のΔP・1は「11」で
あるから、図9に示すように、11×2=22となり、
前のパルスp0から「22」の位置がパルスp1のパル
ス位置である。また、そのGainCodeは「14」である
から、そのパルスゲインはパルスキャッシュより「−1
2」と求められる。このとき、その参照値は「0」に更
新されるとともに、参照値「7」よりも小さい参照値は
+1される(図8(c)参照)。
【0082】また、パルスp2のΔP・2は「2」であ
るから、図9に示すように、2×2=4となり、前のパ
ルス位置p1から「4」の位置がパルスp2のパルス位
置である。しかし、そのGainCodeは「15」であり、
キャッシュミスであるので、新データ「128」を最も
大きい参照値を有するコード番号「13」のパルスゲイ
ンが128に更新され、その参照値が「0」に更新され
るとともに、他の参照値はすべて+1される(図8
(d)参照)。これにより、パルスp2は、図9に示す
ように、前のパルス位置p1から「4」の位置がパルス
位置であり、そのパルスゲインは「128」である。
【0083】また、パルスp3のΔP・3は「3」であ
るから、図9に示すように、3×2=6となり、前のパ
ルスp2から「6」の位置がパルスp3のパルス位置で
あり、そのGainCodeは「0」であるから、そのパルス
ゲインはパルスキャッシュより「32」と求められる。
このとき、その参照値は「0」に更新されるとともに、
参照値「2」よりも小さい参照値は+1される(図8
(e)参照)。
【0084】さらにまた、パルスp4のΔP・4は「1
5」であるから、図9に示すように、15×2=30が
前のパルスp3からの距離であり、その位置がパルスp
4の位置であり、そのゲインコードは「13」である。
このとき、GainCode「13」のパルスゲインは「12
8」に更新されているので、パルスp5のゲイン値は1
28となる。なお、その参照値は「0」に更新されると
ともに、参照値「1」よりも小さい参照値は+1される
(図8(f)参照)。
【0085】このようにして圧縮データの復元が行え
る。
【0086】以上説明したように、この実施の形態によ
れば、複数のパルスキャッシュを持ち、それぞれのパル
スキャッシュを、LRUアルゴリズムにより動作させ、
或るフレームの音声データを符号化するに最適なパルス
キャッシュを選択し、その選択されたパルスキャッシュ
のキャッシュヒット、キャッシュミスの情報、それに応
じた内容の更新結果を用いて駆動音源パルスを符号化し
ているので、1つ1つの駆動音源パルスに対して、デー
タ劣化を最小限にとどめながら効率よい符号化が可能と
なる。この実施の形態では、1つのパルスに対し、位置
データに4ビット、パルスゲインデータに4ビットの合
計8ビットで表すことが可能となる。
【0087】また、パルスゲインの適合度を判定するた
めのパラメータを調整可能とすることにより、圧縮率優
先あるいは音質優先のバランスを調整することができ
る。つまり、許容誤差を大きく取れば、キャッシュミス
が減少し、圧縮率は向上するが音質は劣化する。一方、
許容誤差を小さく取れば、キャッシュミスが増大し、圧
縮率は低下するが音質は向上する。これにより、前記し
たように、リアルタイム転送時において、回線に余裕が
ないときは、データ転送量を小さくするために、圧縮率
を優先するようにし、逆に、回線に余裕があるときは、
音質を優先するというようなことも可能となる。
【0088】(第2の実施の形態)以上説明した第1の
実施の形態では、抽出されたフレームデータにおいて、
スペクトル包絡パラメータから駆動音源パルス信号を生
成する方法については特に説明しなかったが、この第2
の実施の形態では、駆動音源パルス信号の生成にも特徴
を持たせて、それにより生成された駆動音源パルスに対
して、音声符号化する方法および装置について説明す
る。
【0089】図10はこの第2の実施の形態における構
成図を示すもので、図1の構成にさらにさらに、主パル
ス推定部7、先行パルス推定部8、後続パルス推定部9
を設けた構成としている。その他の部分は、図1とほぼ
同じであるので、同一符号が付されている。
【0090】この第2の実施の形態における駆動音源パ
ルス生成処理について、図11のフローチャートおよび
図12のパルス推定処理を説明する図を参照しながら説
明する。
【0091】まず、入力された音声から処理対象のフレ
ームを切り出す(ステップs1)。このフレームの切り
出しは、図12(a)のような入力音声信号から同図
(b)のような所定のフレーム区間を切り出す。そし
て、切り出したフレームが最初のフレームであるか否か
を判定し(ステップs2)、最初のフレームであれば、
そのままそのフレームからスペクトル包絡パラメータの
抽出を行う(ステップs3)。
【0092】前記駆動音源信号生成部4は、フレーム次
に、抽出されたスペクトル包絡パラメータにおいて、第
1番目の主パルスを推定する(ステップs4)。この第
1番目の主パルス(第1主パルスという)の推定は、切
り出されたフレームデータ区間におけるスペクトル包絡
パラメータから最も強度の大きいパルスを第1主パルス
として、その位置と強度を推定する。図12(c)はこ
れにより推定された第1主パルスp11を示す。
【0093】このようにして第1主パルスp11が推定
されると、この第1主パルスp11を基準に、第1主パ
ルスp11に対して、時間的に先行する位置に存在する
先行パルスの位置と強度を推定する(ステップs5)。
【0094】この先行パルスの推定は、第1主パルスp
11を基準に、この第1主パルスp11から予め定めら
れた時間だけさかのぼった時間内(指定区間t1とい
う)において最も強度の大きいパルスを先行パルスと
し、その位置と強度を推定する。図12(d)はこれに
より推定された先行パルスp12を示す。
【0095】ところで、前記指定区間t1は一例とし
て、たとえば、スペクトル包絡パラメータの持つ分析次
数程度の幅とする。この分析次数とは、音声のサンプリ
ング周波数を基に経験に基づいて決定される。仮に音声
のサンプリング周波数が8KHzであるとすれば、8K
Hzの8に2をプラスして得られた10を分析次数とす
る。したがって、たとえば、音声のサンプリング周波数
が20KHzであるとすれば、20に2をプラスして得
られた22を分析次数としている。
【0096】そして、この分析次数を表す数値をサンプ
ル数に対応させ、そのサンプル数に相当する時間を指定
区間とする。たとえば今、音声のサンプリング周波数が
8KHzであるとし、切り出した1フレームの長さが1
6msecであるとすれば、1フレーム内には128サ
ンプルが存在することになる。この場合の分析次数は、
8+2=10となり、その分析次数10をサンプル数と
して、10サンプルに相当する時間(1.25msec)を指定
区間として設定する。
【0097】なお、この指定区間の求め方は一例であっ
て、このような方法に限られるものではなく、他の方法
も考えられる。
【0098】以上のようにして、先行パルスp12が決
まると、次に、前記第1主パルスp11を基準に、第1
主パルスp11に対して、時間的に後方の位置に存在す
る後続パルスの位置と強度を推定する(ステップs
6)。
【0099】この後続パルスの推定は、第1主パルスp
11を基準に、第1主パルスp11から予め定められた
時間後の所定の時間内(前記同様、指定区間といい、こ
の指定区間をt2で表す)において最も強度の大きいパ
ルスを後続パルスとし、その位置と強度を推定する。図
12(e)はこれにより推定された後続パルスp13を
示す。なお、ここでは、指定時間t1とt2を等しく設
定している。
【0100】このようにして、まず、第1主パルスp1
1の位置と強度を推定し、この第1主パルスp11を基
準にして、第1主パルスに対する先行パルスp12と後
続パルスp13の位置と強度を推定する。
【0101】そして、次に、パルスの推定終了条件を満
たしたか否かの判断を行う(ステップs7)。このパル
スの推定終了条件というのは、たとえば、前記した3つ
で1組のパルス(主パルス、先行パルス、後続パルス)
を予め設定した組数だけ推定したか否かにより判断す
る。この実施の形態では、前記した3つで1組のパルス
を3組推定するものとする。ここでは、前記した第1主
パルスp11とその先行パルスp12、後続パルスp1
3(この第1主パルスp11とその先行パルスp12、
後続パルスp13の組を、1組目のパルス群A1とい
う)の他に、あと2組の主パルス、先行パルス、後続パ
ルスを推定することになる。
【0102】したがって、この場合、次の主パルス(第
2主パルスという)を推定する処理を行うが、その前
に、推定済みパルス群(第1主パルスp11とその先行
パルスp12、後続パルスp13)の影響を補正(ステ
ップs8)したのち、第2主パルスの推定を行う(ステ
ップs9)。
【0103】この第2主パルスの推定は、既に求められ
た1組目のパルス群A1(第1主パルスp11とその先
行パルスp12、後続パルスp13)を用いて、この1
組目のパルス群A1の位置をずらしながら近似的部分に
合わせ込むことで、第2主パルスp21を推定する。こ
のようにして推定された第2主パルスp21を図12
(f)に示す。
【0104】この第2主パルスp21が推定されると、
自動的に第2主パルスp21に対する先行パルスp22
と後続パルスp23が決定される(ステップs10)。
【0105】以上の処理により、第1主パルスp11と
その先行パルスp12、後続パルスp13と、第2主パ
ルスp21とその先行パルスp22,後続パルスp23
が決まる。これを図12(g)に示す。この第2主パル
スp21とその先行パルスp22、後続パルスp23の
組を、2組目のパルス群A2という。
【0106】そして、再び、ステップs7に処理が戻っ
て、パルス推定条件に達していなければ、今度は第3主
パルスの推定を行う。この第3主パルスも前記同様、既
に推定されたパルス群の影響を補正した後、既に求めら
れた1組目のパルス群A1(第1主パルスp11とその
先行パルスp12、後続パルスp13)を用いて、この
パルス群の位置をずらしながら近似的部分に合わせ込む
ことで、第3主パルスp31を推定する。このようにし
て推定された第3主パルスp31を図2(h)に示す。
【0107】この第3主パルスp31が推定されると、
自動的に第3主パルスp31に対する先行パルスp32
と後続パルスp33が決定される(ステップs10)。
この第3主パルスp31とその先行パルスp32、後続
パルスp33の組を、3組目のパルス群A3という。
【0108】以上のようにして、まず、第1主パルスp
11の位置と強度を推定し、この第1主パルスp11を
基にその先行パルスp12と後続パルスp13のそれぞ
れの位置と強度を推定することで、1組目のパルス群A
1が求められる。そして、この1組目のパルス群A1の
位置をずらして合わせ込むことにより、第2主パルスp
21の位置と強度を推定し、これにより、この第2主パ
ルスp21の先行パルスp22と後続パルスp23で構
成される2組目のパルス群A2を求め、さらに、第3主
パルスp31の位置の位置と強度を推定し、これによ
り、この第3主パルスp31の先行パルスp32と後続
パルスp33で構成される3組目のパルス群A3を求め
るというような処理を行う。
【0109】図12(i)は、1組目のパルス群A1、
2組目のパルス群A2、3組目のパルス群A3を示す。
【0110】なお、図12からもわかるように、主パル
ス(この場合、第1、第2、第3の主パルスp11,p
21,p31)は、処理対象のフレーム内から決定され
るが、それぞれの主パルスに対する先行パルス、後続パ
ルスは、隣接するフレーム内から決定される場合もあ
る。たとえば、図12の例では、先行パルスp12,後
続パルスp23は隣接するフレーム内から決定されてい
る。
【0111】そして、前記図11のフローチャートにお
いて、パルスの推定終了条件を満たしたと判断された場
合は(ステップs7)、ステップs3で抽出されたスペ
クトル包絡パラメータを符号化する(ステップs1
1)。
【0112】さらに、以上の処理によって求められた3
組のパルス群A1,A2,A3のそれぞれのパルスパラ
メータを符号化する(ステップs12)。
【0113】この符号化処理は、前記第1の実施の形態
で説明した駆動音源信号符号化処理である。つまり、図
12(i)で示されるパルスp11〜p13、p21〜
p23,p31〜p33に対して、前記第1の実施の形
態で説明した駆動音源信号符号化処理を行う。なお、こ
の駆動音源信号符号化処理については、第1の実施の形
態にて詳細に説明したので、ここではその説明は省略す
る。
【0114】そして、このステップs12で符号化され
たデータと前記ステップs11で符号化されたデータ
を、その処理対象フレームの符号化データとして出力す
る(ステップs13)。
【0115】そして、すべてのフレームについて処理が
終了したか否かを判断して(ステップs14)、すべて
のフレームについて処理が終了していれば、処理終了と
なり、終了していなければ、ステップs1に処理が戻
り、新たなフレームの切り出しを行い、以下、前記同様
の処理を行う。
【0116】ところで、前記ステップs2において、処
理対象のフレームが最初のフレームでないときは、前フ
レームの影響を補正(ステップs15)した後、ステッ
プs3以降の処理に入る。この前フレームの影響補正と
は、前記したように、前フレームで次フレーム(処理対
象フレーム)内で後続パルスを立てた場合など、そのパ
ルスを除いて、パルス推定を行うことを意味している。
【0117】そして、この前記符号化された駆動音源デ
ータと符号化されたスペクトル包絡パラメータは共に、
符号化データ出力部6に送られ、図2に示すような形式
に統合される。
【0118】なお、以上の説明では、パルスの推定終了
条件としては、予め設定された組数を推定条件とした。
つまり、前記実施の形態ではパルス群が3組得られるこ
とを推定終了条件としたが、この組数は3組に限られる
ものではない。また、推定条件は組数ではなく、たとえ
ば、第1主パルスp11とその先行パルスp12、後続
パルスp13を決めた後、以降の主パルスの強度が第1
主パルスの大きさに対してどのくらいの大きさになった
かを判断するためのしきい値を定め、第2主パルス以降
の主パルスがそのしきい値以下になったときをパルスの
推定条件終了とするようにしてもよい。
【0119】このように、第2の実施の形態では、第1
の実施の形態で得られる本発明の符号化処理による効果
の他に、主パルスとその先行パルス、後続パルスの3つ
を1組とし、その1組のパルス群を基にして合成パルス
列を作るようにしている。したがって、ピッチ周期その
ものを計算していないので、計算量の削減が図れ、ま
た、1フレームずつ独立して合成パルス列を作成するの
で、従来の差分情報を用いる方法に比べて、データの一
部が失われた場合にもその影響を殆ど受けることがな
い。
【0120】たとえば、1フレーム内で、12個のパル
スを立てようとする場合、位置計算を例に取れば、従来
では、12個分の位置計算が必要となるが、本発明で
は、まず、最初に、第1主パルスを求め、その先行パル
スと後続パルスを求め、以降は、この第1主パルス、先
行パルス、後続パルスで構成される1組目のパルス群A
1を用いて、第2主パルス、第3主パルス、第4主パル
スの位置を求めるだけであるので(なお、これら第2主
パルス、第3主パルス、第4主パルスに対するそれぞれ
の先行パルス、後続パルスの位置は自動的に決まる)、
1組目のパルス群の計算が3回であり、この1組目のパ
ルス群を用いて、第2主パルス、第3主パルス、第4主
パルスの位置を求める計算が3回の合計6回の位置計算
で済み、従来の半分の計算量で済むことになる。
【0121】なお、以上説明した本発明の処理を行う処
理プログラムは、フロッピィディスク、光ディスク、ハ
ードディスクなどの記憶媒体に記憶させておくことがで
き、本発明は、それらの記憶媒体をも含むものであり、
また、ネットワークからデータを得る形式でもよい。
【0122】
【発明の効果】本発明によれば、複数のパルスキャッシ
ュを持ち、この複数のパルスキャッシュの中から、或る
フレームの音声データを符号化するに最適なパルスキャ
ッシュを選択し、その選択されたパルスキャッシュのキ
ャッシュヒット、キャッシュミスの情報、それに応じた
内容の更新結果を用いて駆動音源パルスを符号化してい
るので、1つ1つの駆動音源パルスに対して、データ劣
化を最小限にとどめながら効率よい符号化が可能とな
る。
【0123】また、パルスゲインの適合度を判定するた
めのパラメータを調整可能とすることにより、圧縮率優
先あるいは音質優先のバランスを調整することができ
る。つまり、許容誤差を大きく取れば、キャッシュミス
が減少し、圧縮率は向上するが音質は劣化する。一方、
許容誤差を小さく取れば、キャッシュミスが増大し、圧
縮率は低下するが音質は向上する。これにより、前記し
たように、リアルタイム転送時において、回線に余裕が
ないときは、データ転送量を小さくするために、圧縮率
を優先するようにし、逆に、回線に余裕があるときは、
音質を優先するというようなことも可能となる。
【0124】さらに、入力音声データから所定の長さの
フレームデータ区間を切り出して、スペクトル包絡パラ
メータを抽出し、このスペクトル包絡パラメータから、
まず、主パルスの位置と強度を推定し、この主パルスに
対して時間的に先行する所定区間において前記主パルス
に対する先行パルスの位置と強度を推定するとともに、
前記主パルスに対して時間的に後続する所定区間におい
て前記主パルスに対する後続パルスの位置と強度を推定
し、これら主パルス、先行パルス、後続パルスを1つの
組として、この1つの組のパルス群を用いて前記1フレ
ーム内の符号化すべき駆動音源信号を作成し、このよう
に作成された駆動音源信号に対して、前記したような符
号化処理を行うようにしている。
【0125】これにより、駆動音源信号を作成するに際
しては、計算量や使用メモリ量を大幅に削減することが
でき、また、1つのフレーム毎に独立して符号化してい
るので、データの欠落の影響を殆ど受けることがない。
また、その駆動音源信号を符号化するに際しては、デー
タ劣化を最小限にとどめながら効率よい符号化が可能と
なる。また、パルスゲインの適合度を判定するためのパ
ラメータを調整可能とすることにより、圧縮率優先ある
いは音質優先のバランスを調整することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態の構成を説明するブ
ロック図。
【図2】本発明の実施の形態における符号化データの形
式を説明する図。
【図3】本発明の実施の形態におけるΔPositionにつ
いて説明する図。
【図4】本発明の実施の形態におけるパルスキャッシュ
のキャッシュヒット動作の一例を説明する図。
【図5】本発明の実施の形態におけるパルスキャッシュ
のキャッシュミス動作の一例を説明する図。
【図6】本発明の実施の形態におけるパルスキャッシュ
の選択処理を説明する図。
【図7】本発明の実施の形態における符号化駆動音源デ
ータの一例を示す図。
【図8】本発明の実施の形態における或るパルスキャッ
シュのデータ更新動作を説明する図。
【図9】本発明の実施の形態における符号化データの復
元を説明する図。
【図10】本発明の第2の実施の形態の構成を説明する
ブロック図。
【図11】本発明の第2の実施の形態の処理手順を説明
するフローチャート。
【図12】本発明の第2の実施の形態におけるフレーム
切り出しから主パルス、先行パルス、後続パルスを推定
する処理を説明する図。
【符号の説明】
1 フレームデータ記憶部 2 スペクトル包絡パラメータ抽出部 3 スペクトル包絡パラメータ符号化部 4 駆動音源信号生成部 5 駆動音源信号符号化部 6 符号化データ出力部 7 主パルス推定部 8 先行パルス推定部 9 後続パルス推定部 51 パルス適合判定部 53 キャッシュ選択部 54 キャッシュ更新部 55 符号化駆動音源データ出力部 521〜524 パルスキャッシュ A1 1組目のパルス群 A2 2組目のパルス群 A3 3組目のパルス群 p11 第1主パルス p12 第1主パルスに対する先行パルス p13 第1主パルスに対する後続パルス p21 第2主パルス p22 第2主パルスに対する先行パルス p23 第2主パルスに対する後続パルス p31 第3主パルス p32 第3主パルスに対する先行パルス p33 第3主パルスに対する後続パルス
───────────────────────────────────────────────────── フロントページの続き (72)発明者 長谷川 浩 長野県諏訪市大和3丁目3番5号 セイコ ーエプソン株式会社内

Claims (16)

    【特許請求の範囲】
  1. 【請求項1】 入力された音声データより、所定長のフ
    レームデータを切り出して、この切り出されたフレーム
    データについてスペクトル包絡パラメータを抽出し、前
    記入力音声データと前記スペクトル包絡パラメータによ
    り駆動音源信号を生成し、この駆動音源信号を符号化し
    て、その符号化した駆動音源信号と前記スペクトル包絡
    パラメータを符号化した信号を基に符号化データを得る
    音声符号化方法において、 前記駆動音源信号を符号化する方法は、 パルスコードとパルスの強度と参照値を1つの組として
    記憶するパルスデータ記憶手段を複数個有し、前記生成
    された駆動音源信号の強度と、前記複数個のパルスデー
    タ記憶手段に格納された強度との適合度を、所定のパラ
    メータにより判定し、その判定結果に応じてパルスデー
    タ記憶手段の内容を更新する処理を行い、その結果を基
    に、前記複数個のパルスデータ記憶手段の中からいずれ
    かのパルスデータ記憶手段を選択し、この選択されたパ
    ルスデータ記憶手段の内容を基に、前記駆動音源信号を
    符号化することを特徴とする音声符号化方法。
  2. 【請求項2】 前記生成された駆動音源信号の強度と、
    前記複数個のパルスデータ記憶手段に格納された強度と
    の適合度を所定のパラメータにより判定する処理は、前
    記生成された駆動音源信号における符号化すべきパルス
    の強度を、パルスデータ記憶手段に格納された強度と比
    較して、その適合度から適合の可否を判定し、適合する
    強度が存在する場合は、その強度に対応する参照値を、
    最新を意味する参照値に書き換え、当該強度に対応する
    参照値よりも新しい参照値に対してはその参照値を順送
    りし、適合する強度が存在しない場合は、参照されるこ
    との最も少ない参照値に対応する強度を、符号化すべき
    強度に書き換えるとともに、その参照値を最新を意味す
    る参照値に書き換え、他の参照値を順送りすることを特
    徴とる請求項1記載の音声符号化方法。
  3. 【請求項3】 前記複数個のパルスデータ記憶手段の中
    からいずれかのパルスデータ記憶手段を選択する処理
    は、生成された駆動音源信号の強度に対して前記パラメ
    ータにより許容範囲を設定して、その許容範囲内におい
    て前記駆動音源信号とパルスデータ記憶手段内の強度を
    示す値とを比較して、その比較結果を基に適合度の高い
    パルスデータ記憶手段を選択することを特徴とする請求
    項1または2記載の音声符号化方法。
  4. 【請求項4】 前記適合度を判定するためのパラメータ
    は、その値を調整可能としたことを特徴とする請求項1
    から3のいずれか記載の音声符号化方法。
  5. 【請求項5】 入力された音声データより、所定長のフ
    レームデータを切り出して、この切り出されたフレーム
    データについてスペクトル包絡パラメータを抽出し、前
    記入力音声データと前記スペクトル包絡パラメータによ
    り駆動音源信号を生成し、この駆動音源信号を符号化し
    て、その符号化した駆動音源信号と前記スペクトル包絡
    パラメータを符号化した信号を基に符号化データを得る
    音声符号化方法において、 前記入力音声データと前記スペクトル包絡パラメータに
    より駆動音源信号を生成する方法は、 抽出されたスペクトル包絡パラメータから主パルスの位
    置と強度を推定し、この主パルスに対して時間的に先行
    する所定区間において前記主パルスに対する先行パルス
    の位置と強度を推定するとともに、前記主パルスに対し
    て時間的に後続する所定区間において前記主パルスに対
    する後続パルスの位置と強度を推定し、これら主パル
    ス、先行パルス、後続パルスを1つの組として、この1
    つの組のパルス群を用いて前記切り出されたフレーム内
    の駆動音源信号を作成し、 この駆動音源信号を符号化する方法は、 パルスコードとパルスの強度と参照値を1つの組として
    記憶するパルスデータ記憶手段を複数個有し、前記生成
    された駆動音源信号の強度と、前記複数個のパルスデー
    タ記憶手段に格納された強度との適合度を、所定のパラ
    メータにより判定し、その判定結果に応じてパルスデー
    タ記憶手段の内容を更新する処理を行い、その結果を基
    に、前記複数個のパルスデータ記憶手段の中からいずれ
    かのパルスデータ記憶手段を選択し、この選択されたパ
    ルスデータ記憶手段の内容を基に、前記駆動音源信号を
    符号化することを特徴とする音声符号化方法。
  6. 【請求項6】 前記生成された駆動音源信号の強度と、
    前記複数個のパルスデータ記憶手段に格納された強度と
    の適合度を、所定のパラメータにより判定する処理は、
    生成された駆動音源信号における符号化すべきパルスの
    強度をパルスデータ記憶手段に格納された強度と比較し
    て、その適合度から適合の可否を判定し、適合する強度
    が存在する場合は、その強度に対応する参照値を、最新
    を意味する参照値に書き換え、当該強度に対応する参照
    値よりも新しい参照値に対してはその参照値を順送り
    し、適合する強度が存在しない場合は、参照されること
    の最も少ない参照値に対応する強度を符号化すべき強度
    に書き換えるとともに、その参照値を最新を意味する参
    照値に書き換え、他の参照値を順送りすることを特徴と
    る請求項5記載の音声符号化方法。
  7. 【請求項7】 前記複数個のパルスデータ記憶手段の中
    からいずれかのパルスデータ記憶手段を選択する処理
    は、生成された駆動音源信号の強度に対して、前記パラ
    メータにより許容範囲を設定して、その許容範囲内にお
    いて前記駆動音源信号とパルスデータ記憶手段内の強度
    を示す値とを比較して、その比較結果を基に適合度の高
    いパルスデータ記憶手段を選択することを特徴とする請
    求項5または6記載の音声符号化方法。
  8. 【請求項8】 前記適合度を判定するためのパラメータ
    は、その値を調整可能としたことを特徴とする請求項5
    から7のいずれか記載の音声符号化方法。
  9. 【請求項9】 入力された音声データより切り出された
    所定長のフレームデータを記憶するフレームデータ記憶
    手段、切り出されたフレームデータについてスペクトル
    包絡パラメータを抽出するスペクトル包絡パラメータ抽
    出手段、抽出されたスペクトル包絡パラメータを符号化
    するスペクトル包絡パラメータ符号化手段、前記入力音
    声データと前記スペクトル包絡パラメータにより駆動音
    源信号を生成する駆動音源信号生成手段、駆動音源信号
    を符号化する駆動音源信号符号化手段、符号化された駆
    動音源信号と前記符号化されたスペクトル包絡パラメー
    タを基に符号化データを出力する符号化データ出力手段
    を少なくとも有する音声符号化装置において、 前記駆動音源信号符号化手段は、 パルスコードとパルスの強度と参照値を1つの組として
    記憶する複数個のパルスデータ記憶手段と、 前記入力音声データと前記スペクトル包絡パラメータに
    より生成された駆動音源信号の強度と前記複数個のパル
    スデータ記憶手段に格納された強度との適合度を所定の
    パラメータにより判定するパルス適合度判定手段と、 前記判定結果に応じてパルスデータ記憶手段の内容を更
    新する更新手段と、 これらパルス適合度判定手段および更新手段の処理結果
    を基に、前記複数個のパルスデータ記憶手段の中からい
    ずれかのパルスデータ記憶手段を選択する手段と、 選択されたパルスデータ記憶手段の内容を基に、前記駆
    動音源信号を符号化する符号化駆動音源データ出力手段
    と、 を有することを特徴とする音声符号化装置。
  10. 【請求項10】 前記パルス適合度判定手段およびパル
    スデータ記憶手段の内容を更新する更新手段が行う処理
    は、生成された駆動音源信号における符号化すべきパル
    スの強度をパルスデータ記憶手段内の強度と比較して、
    その適合度から適合の可否を判定し、適合する強度が存
    在する場合は、その強度に対応する参照値を、最新を意
    味する参照値に書き換え、当該強度に対応する参照値よ
    りも新しい参照値に対してはその参照値を順送りし、適
    合する強度が存在しない場合は、参照されることの最も
    少ない参照値に対応する強度を符号化すべき強度に書き
    換えるとともに、その参照値を最新を意味する参照値に
    書き換え、他の参照値を順送りすることを特徴とる請求
    項9記載の音声符号化装置。
  11. 【請求項11】 前記パルスデータ記憶手段を選択する
    手段は、生成された駆動音源信号の強度に対しパラメー
    タにより許容範囲を設定して、その許容範囲内において
    前記駆動音源信号とパルスデータ記憶手段内の強度を示
    す値とを比較して、その比較結果を基に適合度の高いパ
    ルスデータ記憶手段を選択することを特徴とする請求項
    9または10記載の音声符号化装置。
  12. 【請求項12】 前記適合度を判定するためのパラメー
    タは、その値を調整可能としたことを特徴とする請求項
    9から11のいずれか記載の音声符号化装置。
  13. 【請求項13】 入力された音声データより切り出され
    た所定長のフレームデータを記憶するフレームデータ記
    憶手段、切り出されたフレームデータについてスペクト
    ル包絡パラメータを抽出するスペクトル包絡パラメータ
    抽出手段、抽出されたスペクトル包絡パラメータを符号
    化するスペクトル包絡パラメータ符号化手段、前記入力
    音声データと前記スペクトル包絡パラメータにより駆動
    音源信号を生成する駆動音源信号生成手段、駆動音源信
    号を符号化する駆動音源信号符号化手段、符号化された
    駆動音源信号と前記符号化されたスペクトル包絡パラメ
    ータを符号化データとして出力する符号化データ出力手
    段を少なくとも有する音声符号化装置において、 前記入力音声データと前記スペクトル包絡パラメータに
    より駆動音源信号を生成する手段は、 前記スペクトル包絡パラメータにより、前記切り出され
    たフレームから主パルスの位置と強度を推定する主パル
    ス推定手段と、 この主パルスに対して時間的に先行する所定区間におい
    て、前記主パルスに対する先行パルスの位置と強度を推
    定する先行パルス推定手段と、 前記主パルスに対して時間的に後続する所定区間におい
    て前記主パルスに対する後続パルスの位置と強度を推定
    する後続パルス推定手段と、 これら主パルス、先行パルス、後続パルスを1つの組と
    して、この1つの組のパルス群を用いて前記1フレーム
    内の駆動音源信号を生成する駆動音源信号生成手段と、 を有し、 前記駆動音源信号符号化手段は、 パルスコードとパルスの強度と参照値を1つの組として
    記憶する複数個のパルスデータ記憶手段と、 前記生成された駆動音源信号の強度と、前記複数個のパ
    ルスデータ記憶手段内の強度との適合度を所定のパラメ
    ータにより判定するパルス適合度判定手段と、 前記判定結果に応じてパルスデータ記憶手段の内容を更
    新する更新手段と、 これらパルス適合度判定手段および更新手段の処理結果
    を基に、前記複数個のパルスデータ記憶手段の中からい
    ずれかのパルスデータ記憶手段を選択する手段と、 選択されたパルスデータ記憶手段を基に、前記駆動音源
    信号を符号化する符号化駆動音源データ出力手段と、 を有したことを特徴とする音声符号化装置。
  14. 【請求項14】 前記パルス適合度判定手段およびパル
    スデータ記憶手段の内容を更新する更新手段が行う処理
    は、生成された駆動音源信号における符号化すべきパル
    スの強度をパルスデータ記憶手段内の強度と比較して、
    その適合度から適合の可否を判定し、適合する強度が存
    在する場合は、その強度に対応する参照値を、最新を意
    味する参照値に書き換え、当該強度に対応する参照値よ
    りも新しい参照値に対してはその参照値を順送りし、適
    合する強度が存在しない場合は、参照されることの最も
    少ない参照値に対応する強度を符号化すべき強度に書き
    換えるとともに、その参照値を最新を意味する参照値に
    書き換え、他の参照値を順送りすることを特徴とる請求
    項13記載の音声符号化装置。
  15. 【請求項15】 前記パルスデータ記憶手段を選択する
    手段は、生成された駆動音源信号の強度に対しパラメー
    タにより許容範囲を設定して、その許容範囲内において
    前記駆動音源信号とパルスデータ記憶手段内の強度を示
    す値とを比較して、その比較結果を基に適合度の高いパ
    ルスデータ記憶手段を選択することを特徴とする請求項
    13または14記載の音声符号化装置。
  16. 【請求項16】 前記適合度を判定するためのパラメー
    タは、その値を調整可能としたことを特徴とする請求項
    13から15のいずれか記載の音声符号化装置。
JP9240924A 1996-09-05 1997-09-05 音声符号化方法およびその装置 Withdrawn JPH10133697A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9240924A JPH10133697A (ja) 1996-09-05 1997-09-05 音声符号化方法およびその装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP23561496 1996-09-05
JP8-235614 1996-09-05
JP9240924A JPH10133697A (ja) 1996-09-05 1997-09-05 音声符号化方法およびその装置

Publications (1)

Publication Number Publication Date
JPH10133697A true JPH10133697A (ja) 1998-05-22

Family

ID=26532233

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9240924A Withdrawn JPH10133697A (ja) 1996-09-05 1997-09-05 音声符号化方法およびその装置

Country Status (1)

Country Link
JP (1) JPH10133697A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009527784A (ja) * 2006-02-22 2009-07-30 フランス テレコム Celp技術における、デジタルオーディオ信号の改善された符号化/復号化

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009527784A (ja) * 2006-02-22 2009-07-30 フランス テレコム Celp技術における、デジタルオーディオ信号の改善された符号化/復号化

Similar Documents

Publication Publication Date Title
JP3241961B2 (ja) 線形予測係数信号生成方法
US6389006B1 (en) Systems and methods for encoding and decoding speech for lossy transmission networks
CN102648493B (zh) 音频信号处理方法和设备
JP4931318B2 (ja) スピーチ符号化における前方向誤り訂正
EP2040251A1 (en) Audio decoding device and audio encoding device
EP2026330A1 (en) Device and method for lost frame concealment
JPH07311597A (ja) 音声信号合成方法
USRE43190E1 (en) Speech coding apparatus and speech decoding apparatus
EP1327242A1 (en) Error concealment in relation to decoding of encoded acoustic signals
KR20010073069A (ko) 음성코딩을 위한 적응성 표준
JPH02231825A (ja) 音声符号化方法、音声復号方法、およびこれらを使用した通信方法
US7542905B2 (en) Method for synthesizing a voice waveform which includes compressing voice-element data in a fixed length scheme and expanding compressed voice-element data of voice data sections
JPH11242498A (ja) 音声のピッチ符号化方法及び音声のピッチ符号化装置並びに音声のピッチ符号化プログラムが記録された記録媒体
JP2004163737A (ja) 確率的符号帳の音源の符号化方法
JP3283152B2 (ja) 音声パラメータ量子化装置およびベクトル量子化装置
JP3754819B2 (ja) 音声通信方法及び音声通信装置
JP4003240B2 (ja) 音声符号化装置及び音声復号化装置
JP3089967B2 (ja) 音声符号化装置
JPH11259098A (ja) 音声符号化/復号化方法
JP3552201B2 (ja) 音声符号化方法および装置
JP2000235399A (ja) 音声信号符号化方法、復号化方法
JP4373667B2 (ja) 適応符号帳の更新方法、適応符号帳更新装置、音声符号化装置及び音声復号化装置
JP4461985B2 (ja) 音声波形伸張装置、波形伸張方法、音声波形縮小装置、波形縮小方法、プログラム、並びに音声処理装置
JP2000242299A (ja) 重み符号帳とその作成方法及び符号帳設計時における学習時のma予測係数の初期値の設定方法並びに音響信号の符号化方法及びその復号方法並びに符号化プログラムが記憶されたコンピュータに読み取り可能な記憶媒体及び復号プログラムが記憶されたコンピュータに読み取り可能な記憶媒体
JPH10135839A (ja) 音声符号化方法およびその装置

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20041207