JP3372908B2 - マルチパルス探索処理方法と音声符号化装置 - Google Patents
マルチパルス探索処理方法と音声符号化装置Info
- Publication number
- JP3372908B2 JP3372908B2 JP26373399A JP26373399A JP3372908B2 JP 3372908 B2 JP3372908 B2 JP 3372908B2 JP 26373399 A JP26373399 A JP 26373399A JP 26373399 A JP26373399 A JP 26373399A JP 3372908 B2 JP3372908 B2 JP 3372908B2
- Authority
- JP
- Japan
- Prior art keywords
- pulse
- distortion
- search
- address
- position candidate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000003672 processing method Methods 0.000 title claims 4
- 238000000034 method Methods 0.000 claims description 36
- 230000015572 biosynthetic process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000003786 synthesis reaction Methods 0.000 description 6
- 230000006835 compression Effects 0.000 description 5
- 238000007906 compression Methods 0.000 description 5
- 230000005284 excitation Effects 0.000 description 5
- 238000013139 quantization Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- VIKNJXKGJWUCNN-XGXHKTLJSA-N norethisterone Chemical compound O=C1CC[C@@H]2[C@H]3CC[C@](C)([C@](CC4)(O)C#C)[C@@H]4[C@@H]3CCC2=C1 VIKNJXKGJWUCNN-XGXHKTLJSA-N 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/04—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
- G10L19/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
- G10L19/10—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
- Analogue/Digital Conversion (AREA)
Description
【0001】
【発明の属する技術分野】本発明は、音声符号化装置に
関し、特に、マルチパルスにより音源をモデル化するこ
とを特徴とした符号励振型線形予測符号化の一方式であ
るMPEG−4/CELP方式を用いて入力音声信号を
符号化する音声符号化装置に関する。
関し、特に、マルチパルスにより音源をモデル化するこ
とを特徴とした符号励振型線形予測符号化の一方式であ
るMPEG−4/CELP方式を用いて入力音声信号を
符号化する音声符号化装置に関する。
【0002】
【従来の技術】MPEG−4/CELP(Moving
Picture Experts GroupPhas
e 4)は、1999年2月に国際標準機関ISO/I
EC(International Organiza
tion for Standardization/I
nternational Electrotechn
ical Commission)により標準化され
た、汎用音声符号化方式であるCELP(Code E
xcited Linear Prediction:符
号励振型線形予測符号化)のうちの一方式であり、音源
コードブックの種類により、MPE(Multi Pu
lse Excitation)とRPE(Regul
ar Pulse Excitation)の2種類の符
号化モードが存在する。MPEモードおよびRPEモー
ドでは、共に音源は複数のインパルスから成るマルチパ
ルスによりモデル化されるが、パルス位置の自由度に差
があり、RPEモードはパルス間隔が一定であるのに対
して、MPEモードはパルス位置に関する自由度が高い
という差がある。この差のため、MPEモードはRPE
モードに比べて高品質な音質を達成することができる
が、所要演算量が増えるという欠点を有している。
Picture Experts GroupPhas
e 4)は、1999年2月に国際標準機関ISO/I
EC(International Organiza
tion for Standardization/I
nternational Electrotechn
ical Commission)により標準化され
た、汎用音声符号化方式であるCELP(Code E
xcited Linear Prediction:符
号励振型線形予測符号化)のうちの一方式であり、音源
コードブックの種類により、MPE(Multi Pu
lse Excitation)とRPE(Regul
ar Pulse Excitation)の2種類の符
号化モードが存在する。MPEモードおよびRPEモー
ドでは、共に音源は複数のインパルスから成るマルチパ
ルスによりモデル化されるが、パルス位置の自由度に差
があり、RPEモードはパルス間隔が一定であるのに対
して、MPEモードはパルス位置に関する自由度が高い
という差がある。この差のため、MPEモードはRPE
モードに比べて高品質な音質を達成することができる
が、所要演算量が増えるという欠点を有している。
【0003】次に、このMPEモードの音声符号化装置
である、MPEG−4/CELP方式を用いた音声符号
化装置の基本動作を図5を参照して説明する。
である、MPEG−4/CELP方式を用いた音声符号
化装置の基本動作を図5を参照して説明する。
【0004】この音声符号化装置は、図5に示されるよ
うに、LPC(Linear Prediction C
odec)分析部401と、量子化部402と、LPC
フィルタ403と、音声合成部404と、減算器412
とから構成されている。
うに、LPC(Linear Prediction C
odec)分析部401と、量子化部402と、LPC
フィルタ403と、音声合成部404と、減算器412
とから構成されている。
【0005】音声符号化では、入力音声を一定時間のフ
レームに区切り、そのフレームを圧縮単位として符号化
が行われる。
レームに区切り、そのフレームを圧縮単位として符号化
が行われる。
【0006】原音である入力音声信号はLPC分析部4
01においてLPC分析され、次に量子化部402にお
いて量子化される。一方、音声合成部404において音
声合成された符号と、量子化部402において量子化さ
れた符号は、LPCフィルタ403にかけられて再生音
となる。そして、減算器412において原音と再生音の
差が求められ誤差信号405となる。誤差信号405
は、音声合成部404へ再入力され、誤差信号405が
最小になる様に音声合成部404のパラメータが選択さ
れる。誤差信号405が最も小さくなる時、音声合成モ
デルと入力音声が近似することになる。この誤差信号4
05を最小とするような、音声合成部404のパラメー
タが、MPEG−4/CELPの符号となる。
01においてLPC分析され、次に量子化部402にお
いて量子化される。一方、音声合成部404において音
声合成された符号と、量子化部402において量子化さ
れた符号は、LPCフィルタ403にかけられて再生音
となる。そして、減算器412において原音と再生音の
差が求められ誤差信号405となる。誤差信号405
は、音声合成部404へ再入力され、誤差信号405が
最小になる様に音声合成部404のパラメータが選択さ
れる。誤差信号405が最も小さくなる時、音声合成モ
デルと入力音声が近似することになる。この誤差信号4
05を最小とするような、音声合成部404のパラメー
タが、MPEG−4/CELPの符号となる。
【0007】音声合成部404は、ACB(Adapt
ive Code Book:適応コードブック)40
6、MP(Multi Pulse:マルチパルス)コ
ードブック407、GCB(Gain Code Boo
k:ゲイン・コードブック)408の3つのパラメータ
と、乗算器409、410と、加算器411を有する。
ACB406は、音源の基本周期を元に、対応する人間
の多数の基本音声モデルから生成されたもので、ピッチ
周期成分を発生させる。MPコードブック407は、音
源のノイズ・誤差を複数のパルス(マルチパルス)の位
置および振幅により表現し、ピッチ周期成分以外のラン
ダムな成分を発生する。GCB408は、ACB406
とMPコードブック407の混合比率を表している。即
ち、ACB406により発生されたピッチ周期成分は、
乗算器409においてGCB408により制御されるA
CB406の混合比率が乗算され、MPコードブック4
07により発生されたランダムな成分は、乗算器410
においてGCB406により制御されるMPコードブッ
ク407の混合比率が乗算される。そして、乗算器40
9、410の出力どうしが加算器411において加算さ
れて、音声合成が行なわれる。
ive Code Book:適応コードブック)40
6、MP(Multi Pulse:マルチパルス)コ
ードブック407、GCB(Gain Code Boo
k:ゲイン・コードブック)408の3つのパラメータ
と、乗算器409、410と、加算器411を有する。
ACB406は、音源の基本周期を元に、対応する人間
の多数の基本音声モデルから生成されたもので、ピッチ
周期成分を発生させる。MPコードブック407は、音
源のノイズ・誤差を複数のパルス(マルチパルス)の位
置および振幅により表現し、ピッチ周期成分以外のラン
ダムな成分を発生する。GCB408は、ACB406
とMPコードブック407の混合比率を表している。即
ち、ACB406により発生されたピッチ周期成分は、
乗算器409においてGCB408により制御されるA
CB406の混合比率が乗算され、MPコードブック4
07により発生されたランダムな成分は、乗算器410
においてGCB406により制御されるMPコードブッ
ク407の混合比率が乗算される。そして、乗算器40
9、410の出力どうしが加算器411において加算さ
れて、音声合成が行なわれる。
【0008】MPコードブック407の中から、誤差信
号405を最小とするようなマルチパルスを選択する処
理をマルチパルス探索処理といい、このMPEモードの
特徴であるマルチパルス探索処理方法については、特開
平7-160298号公報に記載されている。
号405を最小とするようなマルチパルスを選択する処
理をマルチパルス探索処理といい、このMPEモードの
特徴であるマルチパルス探索処理方法については、特開
平7-160298号公報に記載されている。
【0009】マルチパルス探索処理では、それぞれのパ
ルスが配置され得る位置は、そのパルス毎に一意的に決
まっている。そのため、マルチパルス探索処理とは、配
置した各パルス位置候補に対して、パルス番号順に歪み
を計算して加算して行き、最も少ない歪みの組み合わせ
を求める処理である。ここで、歪みとは、隣接するパル
スとの間の相互相関係数のことである。マルチパルス探
索処理では、各パルス番号毎に存在する各パルス位置候
補に対して、この歪みが格納されているマルチパルス探
索テーブルが作成され、このマルチパルス探索テーブル
に基いて各パルスの位置および振幅が決定される。その
ため、このマルチパルス探索テーブルの作成は、音声圧
縮単位である各フレーム毎に行なわなければならない。
ルスが配置され得る位置は、そのパルス毎に一意的に決
まっている。そのため、マルチパルス探索処理とは、配
置した各パルス位置候補に対して、パルス番号順に歪み
を計算して加算して行き、最も少ない歪みの組み合わせ
を求める処理である。ここで、歪みとは、隣接するパル
スとの間の相互相関係数のことである。マルチパルス探
索処理では、各パルス番号毎に存在する各パルス位置候
補に対して、この歪みが格納されているマルチパルス探
索テーブルが作成され、このマルチパルス探索テーブル
に基いて各パルスの位置および振幅が決定される。その
ため、このマルチパルス探索テーブルの作成は、音声圧
縮単位である各フレーム毎に行なわなければならない。
【0010】従来の音声符号化装置においてマルチパル
ス探索処理を行うためのMPコードブック407の構成
を図6に示す。
ス探索処理を行うためのMPコードブック407の構成
を図6に示す。
【0011】探索テーブル作成部508は、パルス間歪
みテーブル301と、パルス位置候補テーブル302に
基いてマルチパルス探索テーブル307を作成してい
る。
みテーブル301と、パルス位置候補テーブル302に
基いてマルチパルス探索テーブル307を作成してい
る。
【0012】パルス位置候補テーブル302の構成を表
1に示す。
1に示す。
【0013】
【表1】
パルス位置候補テーブルは、圧縮ビットレート毎に存在
し、表1はMPEG−4/CELPの圧縮ビットレート
が8300bps時のパルス位置候補テーブルを示した
ものであり、パルス数は5本で最初から順番にパルス番
号1、2、..5迄の数字で表されている。ビットレー
ト8300bpsの場合は、圧縮単位である1フレーム
中のサンプル数は40であるので、±1の振幅を有する
40本のパルスを、5本のパルスで表現する様にモデル
化する。表1のパルス位置候補テーブルは、各パルス番
号に対して、パルス位置候補を有している。各パルス番
号におけるパルス位置候補間隔は、一意的に決まってい
る。
し、表1はMPEG−4/CELPの圧縮ビットレート
が8300bps時のパルス位置候補テーブルを示した
ものであり、パルス数は5本で最初から順番にパルス番
号1、2、..5迄の数字で表されている。ビットレー
ト8300bpsの場合は、圧縮単位である1フレーム
中のサンプル数は40であるので、±1の振幅を有する
40本のパルスを、5本のパルスで表現する様にモデル
化する。表1のパルス位置候補テーブルは、各パルス番
号に対して、パルス位置候補を有している。各パルス番
号におけるパルス位置候補間隔は、一意的に決まってい
る。
【0014】このモデル化の手法として、パルス位置候
補テーブルを図7で示す様な木構造のノードに配置す
る。
補テーブルを図7で示す様な木構造のノードに配置す
る。
【0015】次に、マルチパルス探索テーブル307の
構造を図8に示す。マルチパルス探索テーブル307の
構造は、各パルス番号702毎に存在する各パルス位置
候補703に対して、隣接するパルスとの間の歪み70
4が格納されている。各パルス位置候補と隣接したパル
スの歪みを求める際のパルス間隔は、1から刻みをパル
ス位置候補間隔として1フレームの最大サンプル数まで
であり、パルス間隔毎に歪みが計算され図6に示した様
なパルス間歪みテーブル301として格納される。
構造を図8に示す。マルチパルス探索テーブル307の
構造は、各パルス番号702毎に存在する各パルス位置
候補703に対して、隣接するパルスとの間の歪み70
4が格納されている。各パルス位置候補と隣接したパル
スの歪みを求める際のパルス間隔は、1から刻みをパル
ス位置候補間隔として1フレームの最大サンプル数まで
であり、パルス間隔毎に歪みが計算され図6に示した様
なパルス間歪みテーブル301として格納される。
【0016】次に図9及び図10のフローチャートを用
いて従来の音声符号化装置におけるマルチパルス探索処
理について説明する。
いて従来の音声符号化装置におけるマルチパルス探索処
理について説明する。
【0017】マルチパルス探索処理の手順は、外側のル
ープから順に、歪みを求めるパルス間の距離をインデッ
クスとして初期値1から距離を1刻みとして最大パルス
位置候補間隔までを終了条件(ステップ901)とした
ループと、初期値1からパルス位置候補間隔を1刻みと
して1フレームの最大サンプル数を終了条件(ステップ
902)としたループと、モデル化するパルス数即ちパ
ルス番号分を終了条件(ステップ903)としたループ
と、各パルス番号におけるパルス位置候補数を終了条件
(ステップ904)としたループの4重ループ構造とな
っている。初期値1からパルス位置候補間隔をl刻みと
して1フレームの最大サンプル数が終了したかどうかを
判定した後(ステップ902)、一番外側のループで設
定された距離のパルス間について歪みを求め、パルス間
歪みテーブル301に1フレーム分格納する(ステップ
905)。そして、これらのループの中において、マル
チパルス探索テーブル307の作成が行われる(ステッ
プ906)。
ープから順に、歪みを求めるパルス間の距離をインデッ
クスとして初期値1から距離を1刻みとして最大パルス
位置候補間隔までを終了条件(ステップ901)とした
ループと、初期値1からパルス位置候補間隔を1刻みと
して1フレームの最大サンプル数を終了条件(ステップ
902)としたループと、モデル化するパルス数即ちパ
ルス番号分を終了条件(ステップ903)としたループ
と、各パルス番号におけるパルス位置候補数を終了条件
(ステップ904)としたループの4重ループ構造とな
っている。初期値1からパルス位置候補間隔をl刻みと
して1フレームの最大サンプル数が終了したかどうかを
判定した後(ステップ902)、一番外側のループで設
定された距離のパルス間について歪みを求め、パルス間
歪みテーブル301に1フレーム分格納する(ステップ
905)。そして、これらのループの中において、マル
チパルス探索テーブル307の作成が行われる(ステッ
プ906)。
【0018】図10は、図9中のステップ906におけ
るマルチパルス探索テーブル307を作成する手順を示
したフローチャートである。
るマルチパルス探索テーブル307を作成する手順を示
したフローチャートである。
【0019】先ず、パルス位置候補テーブルの先頭アド
レス、パルス間歪みテーブル301の先頭アドレを、そ
れぞれパルス位置候補テーブル302のカレント・ポイ
ンタ、パルス間歪みテーブル301のカレント・ポイン
タとして設定する(ステップ1001)。尚、パルス候
補位置テーブル302は実際にはパルス番号順に一次元
に配列されている。次にパルス番号分の処理が終了した
かどうか判定し(ステップ1002)、終了した場合は
マルチパルス探索テーブル作成処理を終了する。終了し
ていない場合、マルチパルス探索テーブル307の先頭
アドレスをマルチパルス探索テーブル307のカレント
・アドレスとして設定する(ステップ1003)。
レス、パルス間歪みテーブル301の先頭アドレを、そ
れぞれパルス位置候補テーブル302のカレント・ポイ
ンタ、パルス間歪みテーブル301のカレント・ポイン
タとして設定する(ステップ1001)。尚、パルス候
補位置テーブル302は実際にはパルス番号順に一次元
に配列されている。次にパルス番号分の処理が終了した
かどうか判定し(ステップ1002)、終了した場合は
マルチパルス探索テーブル作成処理を終了する。終了し
ていない場合、マルチパルス探索テーブル307の先頭
アドレスをマルチパルス探索テーブル307のカレント
・アドレスとして設定する(ステップ1003)。
【0020】次にパルス位置候補数分の処理が終了した
かどうか判定し(ステップ1004)、終了した場合
は、パルス番号を1つ加算し(ステップ1005)、パ
ルス番号分終了したかどうかの判定を行う処理のステッ
プ1002へ戻る。ステップ1004で処理が終了しれ
いないと判定された場合は、パルス位置候補テーブル3
02のカレント・ポインタよりパルス位置を読み出し
(ステップ1006)、読み出したパルス位置と、歪み
を求める際のパルス間距離との差を求め(ステップ10
07)、その差が0以上であれば(ステップ100
8)、マルチパルス探索テーブル307のカレント・ポ
インタにその差を加算し(ステップ1009)、パルス
間歪みテーブル301にその差を加算し(ステップ10
10)、ステップ1010において求めたアドレスが示
す位置より歪み値を読み出し、ステップ1009におい
て求めたアドレスが示す位置へ読み出した歪み値を格納
する(ステップ1011)。ステップ1008において
差が0未満の場合は、ステップ1009からステップ1
011の処理は行なわない、次にパルス位置と歪みを求
める際のパルス間の距離の和を求め(ステップ101
2)、その和が1フレームの数未満であれば(ステップ
1013)、マルチパルス探索テーブル307のカレン
ト・ポインタにその和を加算し(ステップ1014)、
パルス間歪みテーブル301にその和を加算し(ステッ
プ1015)、ステップ1014において求めたアドレ
スが示す位置より歪み値を読み出し、ステップ1015
において求めたアドレスが示す位置へ読み出した歪み値
を格納する(ステップ1016)。ステップ1013に
おいて和が1フレームの和以上の場合は、ステップ10
14からステップ1016の処理は行なわれない。最後
に、マルチパルス探索テーブル307のカレント・ポイ
ンタに1フレームのサンプル数が加算され(ステップ1
017)、パルス位置候補分の処理が終了したかどうか
の判定するステップ1004の前へ戻る。
かどうか判定し(ステップ1004)、終了した場合
は、パルス番号を1つ加算し(ステップ1005)、パ
ルス番号分終了したかどうかの判定を行う処理のステッ
プ1002へ戻る。ステップ1004で処理が終了しれ
いないと判定された場合は、パルス位置候補テーブル3
02のカレント・ポインタよりパルス位置を読み出し
(ステップ1006)、読み出したパルス位置と、歪み
を求める際のパルス間距離との差を求め(ステップ10
07)、その差が0以上であれば(ステップ100
8)、マルチパルス探索テーブル307のカレント・ポ
インタにその差を加算し(ステップ1009)、パルス
間歪みテーブル301にその差を加算し(ステップ10
10)、ステップ1010において求めたアドレスが示
す位置より歪み値を読み出し、ステップ1009におい
て求めたアドレスが示す位置へ読み出した歪み値を格納
する(ステップ1011)。ステップ1008において
差が0未満の場合は、ステップ1009からステップ1
011の処理は行なわない、次にパルス位置と歪みを求
める際のパルス間の距離の和を求め(ステップ101
2)、その和が1フレームの数未満であれば(ステップ
1013)、マルチパルス探索テーブル307のカレン
ト・ポインタにその和を加算し(ステップ1014)、
パルス間歪みテーブル301にその和を加算し(ステッ
プ1015)、ステップ1014において求めたアドレ
スが示す位置より歪み値を読み出し、ステップ1015
において求めたアドレスが示す位置へ読み出した歪み値
を格納する(ステップ1016)。ステップ1013に
おいて和が1フレームの和以上の場合は、ステップ10
14からステップ1016の処理は行なわれない。最後
に、マルチパルス探索テーブル307のカレント・ポイ
ンタに1フレームのサンプル数が加算され(ステップ1
017)、パルス位置候補分の処理が終了したかどうか
の判定するステップ1004の前へ戻る。
【0021】このマルチパルス探索テーブル作成処理を
実際のプログラムにより実現するためには、図10中の
ステップ1006〜1017に対応した12ステップの
命令処理が必要となる。
実際のプログラムにより実現するためには、図10中の
ステップ1006〜1017に対応した12ステップの
命令処理が必要となる。
【0022】MPEG−4/CELPでは、携帯端末の
音声コーデックとしてテレビ電話等の音声に利用される
ため、リアルタイム処理が必要である。従来技術では、
マルチパルス探索処理に必要な処理時間が、音声符号化
に必要な時間の50%以上を占め、音声符号化装置をデ
ィジタル信号処理プロセッサ(以降、DSPと称す。)
へソフトウェアとして実装する際に、処理時間の面でマ
ルチパルス探索処理で17.682MIPS(Milli
on Instructions Per Secon
d:1億回の命令実行/秒)、復号全体において30.
64MIPS必要であった為、ボトルネックとなってい
た。
音声コーデックとしてテレビ電話等の音声に利用される
ため、リアルタイム処理が必要である。従来技術では、
マルチパルス探索処理に必要な処理時間が、音声符号化
に必要な時間の50%以上を占め、音声符号化装置をデ
ィジタル信号処理プロセッサ(以降、DSPと称す。)
へソフトウェアとして実装する際に、処理時間の面でマ
ルチパルス探索処理で17.682MIPS(Milli
on Instructions Per Secon
d:1億回の命令実行/秒)、復号全体において30.
64MIPS必要であった為、ボトルネックとなってい
た。
【0023】その理由としてマルチパルス探索処理の際
に参照するマルチパルス探索テーブル作成処理におい
て、4重ループの中で、歪み値をコピーする参照元のテ
ーブルとコピー先のテーブルのアドレス計算を行なって
いた為、命令数を12ステップ必要としていたからであ
る。
に参照するマルチパルス探索テーブル作成処理におい
て、4重ループの中で、歪み値をコピーする参照元のテ
ーブルとコピー先のテーブルのアドレス計算を行なって
いた為、命令数を12ステップ必要としていたからであ
る。
【0024】従来のマルチパルス探索テーブル作成処理
を行うための実際のプログラムソースリストを図11に
示す。このソースリスト中の12の命令処理は、図10
のフローチャート中の12のステップに対応している。
を行うための実際のプログラムソースリストを図11に
示す。このソースリスト中の12の命令処理は、図10
のフローチャート中の12のステップに対応している。
【0025】
【発明が解決しようとする課題】上述した従来の音声符
号化装置では、歪み値をコピーする参照元のテーブルと
コピー先のテーブルのアドレス計算を行なっていたた
め、マルチパルス探索テーブル作成処理に必要となる命
令数が多く、マルチパルス探索処理に時間がかかるとい
う問題点があった。
号化装置では、歪み値をコピーする参照元のテーブルと
コピー先のテーブルのアドレス計算を行なっていたた
め、マルチパルス探索テーブル作成処理に必要となる命
令数が多く、マルチパルス探索処理に時間がかかるとい
う問題点があった。
【0026】本発明の目的は、マルチパルス探索テーブ
ル作成処理に必要とされる命令数を減らすことにより、
MPEG−4/CELPにおけるマルチパルス探索処
理の高速化を図ることができる音声符号化装置を提供す
ることである。
ル作成処理に必要とされる命令数を減らすことにより、
MPEG−4/CELPにおけるマルチパルス探索処
理の高速化を図ることができる音声符号化装置を提供す
ることである。
【0027】
【課題を解決するための手段】上記目的を達成するため
に、本発明の音声符号化装置は、入力音声を複数のパル
スからなるマルチパルスを用いて符号化する際に、前記
マルチパルスのうちの隣接するパルス間の相互相関係数
である歪みが前記各パルスの各パルス位置候補毎に格納
されているマルチパルス探索テーブルを作成し、該マル
チパルス探索テーブルを用いることことにより、前記入
力音声と再生音の際である誤差が最小となるような、前
記マルチパルスの各パルスの位置および振幅を決定する
マルチパルス探索処理を行う音声符号化装置であって、
前記各パルス毎のパルス位置候補を、前記各パルスのパ
ルス番号毎に格納しているパルス位置候補テーブルと、
前記パルス位置候補テーブルのパルス位置に対応するパ
ルス間隔毎に計算された歪みが格納されているパルス間
歪みテーブルと、第1の参照アドレステーブルと、第2
の参照アドレステーブルと、前記パルス間歪みテーブル
の前記パルス位置候補テーブルにより示されるパルス位
置を前記パルス間歪みテーブルの先頭からの相対距離と
みなして、予め前記パルス位置候補テーブルのパルス位
置に対応するパルス間隔毎に歪みを計算することにより
前記パルス間歪みテーブルの絶対アドレスを求めて前記
第1の参照アドレステーブルに格納する第1の参照アド
レステーブル作成手段と、前記パルス間歪みテーブルの
前記パルス位置候補テーブルにより示されるパルス位置
を前記マルチパルス探索テーブルの先頭からの相対距離
とみなして、予め前記パルス位置候補テーブルのパルス
位置に対応するパルス間隔毎に歪みを計算することによ
り前記マルチパルス探索テーブルの絶対アドレスを求め
て前記第2の参照アドレステーブルに格納する第2の参
照アドレステーブル作成手段と、前記マルチパルス探索
テーブルの作成処理の際に、前記パルス間歪みテーブル
のパルス位置候補をインデックスとした絶対アドレスを
前記第1の参照アドレステーブルから読み出し、前記マ
ルチパルス探索テーブルのパルス位置候補をインデック
スとした絶対アドレスを前記第2の参照アドレステーブ
ルから読み出し、読み出した前記マルチパルス探索テー
ブルの絶対アドレスおよび前記パルス間歪みテーブルの
絶対アドレスを用いて前記マルチパルス探索テーブルを
作成する探索テーブル作成手段とを有する。
に、本発明の音声符号化装置は、入力音声を複数のパル
スからなるマルチパルスを用いて符号化する際に、前記
マルチパルスのうちの隣接するパルス間の相互相関係数
である歪みが前記各パルスの各パルス位置候補毎に格納
されているマルチパルス探索テーブルを作成し、該マル
チパルス探索テーブルを用いることことにより、前記入
力音声と再生音の際である誤差が最小となるような、前
記マルチパルスの各パルスの位置および振幅を決定する
マルチパルス探索処理を行う音声符号化装置であって、
前記各パルス毎のパルス位置候補を、前記各パルスのパ
ルス番号毎に格納しているパルス位置候補テーブルと、
前記パルス位置候補テーブルのパルス位置に対応するパ
ルス間隔毎に計算された歪みが格納されているパルス間
歪みテーブルと、第1の参照アドレステーブルと、第2
の参照アドレステーブルと、前記パルス間歪みテーブル
の前記パルス位置候補テーブルにより示されるパルス位
置を前記パルス間歪みテーブルの先頭からの相対距離と
みなして、予め前記パルス位置候補テーブルのパルス位
置に対応するパルス間隔毎に歪みを計算することにより
前記パルス間歪みテーブルの絶対アドレスを求めて前記
第1の参照アドレステーブルに格納する第1の参照アド
レステーブル作成手段と、前記パルス間歪みテーブルの
前記パルス位置候補テーブルにより示されるパルス位置
を前記マルチパルス探索テーブルの先頭からの相対距離
とみなして、予め前記パルス位置候補テーブルのパルス
位置に対応するパルス間隔毎に歪みを計算することによ
り前記マルチパルス探索テーブルの絶対アドレスを求め
て前記第2の参照アドレステーブルに格納する第2の参
照アドレステーブル作成手段と、前記マルチパルス探索
テーブルの作成処理の際に、前記パルス間歪みテーブル
のパルス位置候補をインデックスとした絶対アドレスを
前記第1の参照アドレステーブルから読み出し、前記マ
ルチパルス探索テーブルのパルス位置候補をインデック
スとした絶対アドレスを前記第2の参照アドレステーブ
ルから読み出し、読み出した前記マルチパルス探索テー
ブルの絶対アドレスおよび前記パルス間歪みテーブルの
絶対アドレスを用いて前記マルチパルス探索テーブルを
作成する探索テーブル作成手段とを有する。
【0028】本発明は、上記の構成となっていることに
より、パルス位置候補テーブルの要素がマルチパルス探
索テーブルを作成する間、不変であることを利用して、
予めマルチパルス位置に対する歪み値の参照元とコピー
先の絶対アドレスを予め求める事によって、マルチパル
ス探索テーブル作成処理におけるアドレス計算を行なわ
なずにマルチパルス探索テーブルを作成してマルチパル
ス探索処理を行うことができるので、マルチパルス探索
処理の高速化を図ることができる。
より、パルス位置候補テーブルの要素がマルチパルス探
索テーブルを作成する間、不変であることを利用して、
予めマルチパルス位置に対する歪み値の参照元とコピー
先の絶対アドレスを予め求める事によって、マルチパル
ス探索テーブル作成処理におけるアドレス計算を行なわ
なずにマルチパルス探索テーブルを作成してマルチパル
ス探索処理を行うことができるので、マルチパルス探索
処理の高速化を図ることができる。
【0029】
【発明の実施の形態】次に、本発明の実施の形態につい
て図面を参照して詳細に説明する。
て図面を参照して詳細に説明する。
【0030】図1は本発明の一実施形態の音声符号化装
置の構成を示すブロック図である。図1において、図6
中の構成要素と同一の構成要素には同一の符号を付し、
説明を省略するものとする。
置の構成を示すブロック図である。図1において、図6
中の構成要素と同一の構成要素には同一の符号を付し、
説明を省略するものとする。
【0031】本実施形態の音声符号化装置は、図1に示
す様に、元となったパルス間隔毎に歪みが計算されたパ
ルス間歪みテーブル301と、パルス位置候補テーブル
302と、参照アドレステーブル作成部303、305
と、参照アドレステーブル304、306と、マルチパ
ルス探索テーブル307と、探索テーブル作成部308
とから構成されている。
す様に、元となったパルス間隔毎に歪みが計算されたパ
ルス間歪みテーブル301と、パルス位置候補テーブル
302と、参照アドレステーブル作成部303、305
と、参照アドレステーブル304、306と、マルチパ
ルス探索テーブル307と、探索テーブル作成部308
とから構成されている。
【0032】参照アドレステーブル作成部303は、パ
ルス間隔毎に歪みを計算し、テーブルのパルス位置候補
テーブル302で示されるパルス位置を、パルス間隔毎
に歪みが計算されているパルス間歪みテーブル301の
先頭からの相対距離とみなして、予めパルス位置候補テ
ーブル302のパルス位置に対応するパルス間隔毎に歪
みを計算し、パルス間歪みテーブル301の絶対アドレ
スを求めて参照アドレステーブル304に格納する。
ルス間隔毎に歪みを計算し、テーブルのパルス位置候補
テーブル302で示されるパルス位置を、パルス間隔毎
に歪みが計算されているパルス間歪みテーブル301の
先頭からの相対距離とみなして、予めパルス位置候補テ
ーブル302のパルス位置に対応するパルス間隔毎に歪
みを計算し、パルス間歪みテーブル301の絶対アドレ
スを求めて参照アドレステーブル304に格納する。
【0033】参照アドレステーブル作成部305は、同
様にパルス位置候補テーブル302の各パルス位置に対
応したマルチパルス探索テーブル307の絶対アドレス
を求めて参照アドレステーブル306に格納する。
様にパルス位置候補テーブル302の各パルス位置に対
応したマルチパルス探索テーブル307の絶対アドレス
を求めて参照アドレステーブル306に格納する。
【0034】探索テーブル作成部308は、マルチパル
ス探索テーブル307の作成処理の際に、パルス間歪み
テーブル301のパルス位置候補をインデックスとした
絶対アドレスを参照アドレステーブル304から読み出
し、マルチパルス探索テーブル307のパルス位置候補
をインデックスとした絶対アドレスを参照アドレステー
ブル306から読み出し、読み出したマルチパルス探索
テーブル307の絶対アドレスおよびパルス間歪みテー
ブル301の絶対アドレスを用いてマルチパルス探索テ
ーブル307を作成する。
ス探索テーブル307の作成処理の際に、パルス間歪み
テーブル301のパルス位置候補をインデックスとした
絶対アドレスを参照アドレステーブル304から読み出
し、マルチパルス探索テーブル307のパルス位置候補
をインデックスとした絶対アドレスを参照アドレステー
ブル306から読み出し、読み出したマルチパルス探索
テーブル307の絶対アドレスおよびパルス間歪みテー
ブル301の絶対アドレスを用いてマルチパルス探索テ
ーブル307を作成する。
【0035】本実施形態の音声符号化装置におけるマル
チパルス探索処理を図2のフローチャートを参照して説
明する。
チパルス探索処理を図2のフローチャートを参照して説
明する。
【0036】先ず、図2において、パルス間隔毎に歪み
が計算されているパルス間歪みテーブル301のパルス
位置候補テーブル302で示されるパルス位置を、パル
ス間歪みテーブル301の先頭からの相対距離とみなし
て、予めパルス位置候補テーブル302のパルス位置に
対応するパルス間隔毎に歪みを計算し、パルス間歪みテ
ーブル301の絶対アドレスを求めて参照アドレステー
ブル304に格納する(ステップ101)。次に同様に
パルス位置候補テーブル302の各パルス位置に対応し
たマルチパルス探索テーブル307の絶対アドレスを求
めて参照アドレステーブル306に格納する(ステップ
102)。
が計算されているパルス間歪みテーブル301のパルス
位置候補テーブル302で示されるパルス位置を、パル
ス間歪みテーブル301の先頭からの相対距離とみなし
て、予めパルス位置候補テーブル302のパルス位置に
対応するパルス間隔毎に歪みを計算し、パルス間歪みテ
ーブル301の絶対アドレスを求めて参照アドレステー
ブル304に格納する(ステップ101)。次に同様に
パルス位置候補テーブル302の各パルス位置に対応し
たマルチパルス探索テーブル307の絶対アドレスを求
めて参照アドレステーブル306に格納する(ステップ
102)。
【0037】本実施形態においても、従来と同様に、マ
ルチパルス探索テーブルの作成処理は、外側のループか
ら順に、歪みを求めるパルス間の距離をインデックスと
して初期値1から距離を1刻みとして最大パルス位置候
補間隔までを終了条件ステップ103としたループと、
初期値1からパルス位置候補間隔をl刻みとして1フレ
ームの最大サンプル数を終了条件(ステップ104)と
したループと、モデル化するパルス数即ちパルス番号分
を終了条件(ステップ105)としたループと、各パル
ス番号におけるパルス位置候補数を終了条件(ステップ
106)としたループの4重ループ構造となっている。
ルチパルス探索テーブルの作成処理は、外側のループか
ら順に、歪みを求めるパルス間の距離をインデックスと
して初期値1から距離を1刻みとして最大パルス位置候
補間隔までを終了条件ステップ103としたループと、
初期値1からパルス位置候補間隔をl刻みとして1フレ
ームの最大サンプル数を終了条件(ステップ104)と
したループと、モデル化するパルス数即ちパルス番号分
を終了条件(ステップ105)としたループと、各パル
ス番号におけるパルス位置候補数を終了条件(ステップ
106)としたループの4重ループ構造となっている。
【0038】初期値1からパルス位置候補間隔を1刻み
として1フレームの最大サンプル数を終了条件であるス
テップ105の前、一番外側のループで設定された距離
のパルス間について歪みを求め、パルス間歪みテーブル
301に1フレーム分のデータを格納する(ステップ1
08)。また終了条件であるステップ106の後に、マ
ルチパルス探索テーブル307を作成する(ステップ1
07)。
として1フレームの最大サンプル数を終了条件であるス
テップ105の前、一番外側のループで設定された距離
のパルス間について歪みを求め、パルス間歪みテーブル
301に1フレーム分のデータを格納する(ステップ1
08)。また終了条件であるステップ106の後に、マ
ルチパルス探索テーブル307を作成する(ステップ1
07)。
【0039】図3にマルチパルス探索テーブル307を
作成する手順を示す。先ず、パルス位置候補テーブル3
02の先頭アドレス302aをパルス位置候補テーブル
302のカレント・ポインタとして設定し。またパルス
位置候補テーブル302及びパルス間歪みテーブル30
1を参照して作成されたパルス間歪みテーブル302へ
の絶対アドレスが格納された参照アドレステーブル30
4の先頭アドレスをパルス間歪みテーブル301への絶
対アドレスが格納された参照アドレステーブル303の
カレント・ポインタに設定し。またパルス位置候補テー
ブル302及びマルチパルス探索テーブル307を参照
して作成されたマルチパルス探索テーブル307への絶
対アドレスが格納された参照アドレステーブル306の
先頭アドレスを、マルチパルス探索テーブル307への
絶対アドレスが格納されたテーブル306のカレント・
ポインタとしてそれぞれ設定する(ステップ201)。
尚、パルス候補位置テーブル302は実際にはパルス番
号順に一次元に配列されている。
作成する手順を示す。先ず、パルス位置候補テーブル3
02の先頭アドレス302aをパルス位置候補テーブル
302のカレント・ポインタとして設定し。またパルス
位置候補テーブル302及びパルス間歪みテーブル30
1を参照して作成されたパルス間歪みテーブル302へ
の絶対アドレスが格納された参照アドレステーブル30
4の先頭アドレスをパルス間歪みテーブル301への絶
対アドレスが格納された参照アドレステーブル303の
カレント・ポインタに設定し。またパルス位置候補テー
ブル302及びマルチパルス探索テーブル307を参照
して作成されたマルチパルス探索テーブル307への絶
対アドレスが格納された参照アドレステーブル306の
先頭アドレスを、マルチパルス探索テーブル307への
絶対アドレスが格納されたテーブル306のカレント・
ポインタとしてそれぞれ設定する(ステップ201)。
尚、パルス候補位置テーブル302は実際にはパルス番
号順に一次元に配列されている。
【0040】次にパルス番号分の処理が終了したかどう
か判定し(ステップ202)、終了した場合はマルチパ
ルス探索テーブル作成処理を終了する。終了していない
場合、パルス位置候補数分終了したかどうか判定し(ス
テップ203)、終了した場合は、パルス番号を1つ進
めて(ステップ204)、パルス番号分終了したかどう
かの判定処理を行うステップ202へ戻る。判定処理を
行うステップ203で終了しない場合は、参照アドレス
テーブル303のカレント・ポインタをパルス間歪みテ
ーブル301のテンポラリ・アドレスとして保存し、そ
の後カレント・ポインタを1つ進める(ステップ20
5)、更に参照アドレステーブル306のカレント・ア
ドレスの値に、歪みを求める際のパルス間の距離を加算
し、マルチパルス探索テーブル307のテンポラリ・ア
ドレスとして保存し、カレント・ポインタを1つ進める
(ステップ206)。次にパルス位置候補テーブル30
2のカレント・ポインタよりパルス位置を読み出し(ス
テップ207)、読み出したパルス位置と、歪みを求め
る際のパルス間の距離との和を求め、同時にステップ2
06で求めたマルチパルス探索テーブル307のテンポ
ラリ・アドレスの値が指し示すデータをマルチパルス探
索テーブル307のテンポラリ・データとして保存し、
同時にステップ205で求めたパルス間歪みテーブル3
01のテンポラリ・アドレスの指し示すデータをパルス
間歪みテーブル301のテンポラリ・データとして保存
し、テンポラリ・アドレスより歪みを求める際のパルス
間の距離を減算する(ステップ208)。
か判定し(ステップ202)、終了した場合はマルチパ
ルス探索テーブル作成処理を終了する。終了していない
場合、パルス位置候補数分終了したかどうか判定し(ス
テップ203)、終了した場合は、パルス番号を1つ進
めて(ステップ204)、パルス番号分終了したかどう
かの判定処理を行うステップ202へ戻る。判定処理を
行うステップ203で終了しない場合は、参照アドレス
テーブル303のカレント・ポインタをパルス間歪みテ
ーブル301のテンポラリ・アドレスとして保存し、そ
の後カレント・ポインタを1つ進める(ステップ20
5)、更に参照アドレステーブル306のカレント・ア
ドレスの値に、歪みを求める際のパルス間の距離を加算
し、マルチパルス探索テーブル307のテンポラリ・ア
ドレスとして保存し、カレント・ポインタを1つ進める
(ステップ206)。次にパルス位置候補テーブル30
2のカレント・ポインタよりパルス位置を読み出し(ス
テップ207)、読み出したパルス位置と、歪みを求め
る際のパルス間の距離との和を求め、同時にステップ2
06で求めたマルチパルス探索テーブル307のテンポ
ラリ・アドレスの値が指し示すデータをマルチパルス探
索テーブル307のテンポラリ・データとして保存し、
同時にステップ205で求めたパルス間歪みテーブル3
01のテンポラリ・アドレスの指し示すデータをパルス
間歪みテーブル301のテンポラリ・データとして保存
し、テンポラリ・アドレスより歪みを求める際のパルス
間の距離を減算する(ステップ208)。
【0041】次にステップ208で求めた読み出したパ
ルス位置と、歪みを求める際のパルス間の距離との和が
1フレームの数未満かどうか判定し(ステップ20
9)、和が1フレームの数未満だった場合はマルチパル
ス探索テーブル307のテンポラリ・データとして、パ
ルス間歪みテーブル301のテンポラリ・データを代入
する(ステップ210)。マルチパルス探索テーブル3
07のテンポラリ・データをマルチパルス探索テーブル
307のテンポラリ・アドレスが示すアドレスへ格納
し、テンポラリ・アドレスより、歪みを求める際のパル
ス間の距離の2倍の値を減算し、パルス間歪みテーブル
301のテンポラリ・アドレスの指し示す値を、パルス
間歪みテーブル301のテンポラリ・データとして保存
する(ステップ211)。ここで、ステップ208やス
テップ211は、DSPにおいて、1ステップで実行可
能である。ステップ208を例にとると、レジスタ間の
加算処理と同時に2つのテーブル(メモリ)に対して読
み出し/保存が出来、しかも読み出し/保存操作後にテ
ーブルへのアドレス換算/減算操作が可能であるためで
ある。
ルス位置と、歪みを求める際のパルス間の距離との和が
1フレームの数未満かどうか判定し(ステップ20
9)、和が1フレームの数未満だった場合はマルチパル
ス探索テーブル307のテンポラリ・データとして、パ
ルス間歪みテーブル301のテンポラリ・データを代入
する(ステップ210)。マルチパルス探索テーブル3
07のテンポラリ・データをマルチパルス探索テーブル
307のテンポラリ・アドレスが示すアドレスへ格納
し、テンポラリ・アドレスより、歪みを求める際のパル
ス間の距離の2倍の値を減算し、パルス間歪みテーブル
301のテンポラリ・アドレスの指し示す値を、パルス
間歪みテーブル301のテンポラリ・データとして保存
する(ステップ211)。ここで、ステップ208やス
テップ211は、DSPにおいて、1ステップで実行可
能である。ステップ208を例にとると、レジスタ間の
加算処理と同時に2つのテーブル(メモリ)に対して読
み出し/保存が出来、しかも読み出し/保存操作後にテ
ーブルへのアドレス換算/減算操作が可能であるためで
ある。
【0042】次に、ステップ207において読み出した
パルス位置と歪みを求める際のパルス間の距離との差を
求め、マルチパルス探索テーブル307のテンポラリ・
アドレスの値が指し示すデータをマルチパルス探索テー
ブル307のテンポラリ・データとして格納する(ステ
ップ212)。パルス位置と歪みを求める際のパルス間
の距離との差が0以上かどうかを判定し(ステップ21
3)、0以上である場合は、マルチパルス探索テーブル
307のテンポラリ・データとして、パルス間歪みテー
ブル301のテンポラリ・データを代入する(ステップ
214)。そして、パルス間歪みテーブル301のテン
ポラリ・アドレスの指し示す値を、パルス間歪みテーブ
ル301のテンポラリ・データとして保存し(ステップ
215)、パルス位置候補数分終了したかどうかの判定
処理を行うステップ203の前へ戻る。
パルス位置と歪みを求める際のパルス間の距離との差を
求め、マルチパルス探索テーブル307のテンポラリ・
アドレスの値が指し示すデータをマルチパルス探索テー
ブル307のテンポラリ・データとして格納する(ステ
ップ212)。パルス位置と歪みを求める際のパルス間
の距離との差が0以上かどうかを判定し(ステップ21
3)、0以上である場合は、マルチパルス探索テーブル
307のテンポラリ・データとして、パルス間歪みテー
ブル301のテンポラリ・データを代入する(ステップ
214)。そして、パルス間歪みテーブル301のテン
ポラリ・アドレスの指し示す値を、パルス間歪みテーブ
ル301のテンポラリ・データとして保存し(ステップ
215)、パルス位置候補数分終了したかどうかの判定
処理を行うステップ203の前へ戻る。
【0043】図3に示すように、本実施形態の音声符号
化装置におけるマルチパルス探索処理の命令数は、ステ
ップ205〜208、210〜212、214、215
の9ステップとなり、従来例における12ステップと比
較して必要な命令数が削減されていることがわかる。
化装置におけるマルチパルス探索処理の命令数は、ステ
ップ205〜208、210〜212、214、215
の9ステップとなり、従来例における12ステップと比
較して必要な命令数が削減されていることがわかる。
【0044】本実施形態のマルチパルス探索テーブル作
成処理を行うための実際のプログラムソースリストを図
4に示す。このソースリスト中の9つの命令処理は、図
3のフローチャート中の9つのステップに対応してい
る。
成処理を行うための実際のプログラムソースリストを図
4に示す。このソースリスト中の9つの命令処理は、図
3のフローチャート中の9つのステップに対応してい
る。
【0045】本実施形態の音声符号化装置では、マルチ
パルス探索処理において内側4重ループの命令数を12
ステップから9ステップに少なくすることにより、復号
処理時間全体を削減することができる。これにより、従
来行うことができなかったリアルタイム処理を行うこと
が可能となる。また、高速化によりDSPの空き時間が
でき、その空き時間を利用して音質改善の処理等を行う
ことができるようになる。以下にその効果を示す。本実
施形態および、従来例のMIPS値を下記の表2に示
す。
パルス探索処理において内側4重ループの命令数を12
ステップから9ステップに少なくすることにより、復号
処理時間全体を削減することができる。これにより、従
来行うことができなかったリアルタイム処理を行うこと
が可能となる。また、高速化によりDSPの空き時間が
でき、その空き時間を利用して音質改善の処理等を行う
ことができるようになる。以下にその効果を示す。本実
施形態および、従来例のMIPS値を下記の表2に示
す。
【0046】
【表2】
【0047】
【発明の効果】以上説明したように、本発明は、マルチ
パルス探索処理において内側4重ループの命令数を削減
することにより、マルチパルス探索処理を高速化するこ
とにより復号処理時間を削減することができるという効
果を有する。
パルス探索処理において内側4重ループの命令数を削減
することにより、マルチパルス探索処理を高速化するこ
とにより復号処理時間を削減することができるという効
果を有する。
【図1】本発明の一実施形態の音声符号化装置の構成を
示す図である。
示す図である。
【図2】図1の音声符号化装置によるマルチパルス探索
処理を示すフローチャートである。
処理を示すフローチャートである。
【図3】図2中のマルチパルス探索テーブルの作成処理
(ステップ107)手順を示すフローチャートである。
(ステップ107)手順を示すフローチャートである。
【図4】図3に示した処理を実行するためのプログラム
ソースリストである。
ソースリストである。
【図5】MP−CELPの基本動作を示すブロック図で
ある。
ある。
【図6】従来の音声符号化装置の構成を示す図である。
【図7】木構造を示す図である。
【図8】マルチパルス探索テーブルの構造を示す図であ
る。
る。
【図9】従来の音声符号化装置におけるマルチパルス探
索処理を示すフローチャートである。
索処理を示すフローチャートである。
【図10】図9中のマルチパルス探索テーブルの作成処
理(ステップ906)手順を示すフローチャートであ
る。
理(ステップ906)手順を示すフローチャートであ
る。
【図11】図10に示した処理を実行するためのプログ
ラムソースリストである。
ラムソースリストである。
101〜107 ステップ
201〜215 ステップ
301 パルス間歪みテーブル
302 パルス位置候補テーブル
303 参照アドレステーブル作成部
304 参照アドレステーブル
305 参照アドレステーブル作成部
306 参照アドレステーブル
307 マルチパルス探索テーブル
308 探索テーブル作成部
401 LPC分析部
402 量子化部
403 LPCフィルタ
404 音声合成部
405 誤差信号
406 適応コードブック(ACB)
407 マルチパルスコードブック(MP)
408 ゲインコードブック(GCB)
409、410 乗算器
411 加算器
412 減算器
508 探索テーブル作成部
801 パルス間歪みテーブル
901〜906 ステップ
1001〜1017 ステップ
─────────────────────────────────────────────────────
フロントページの続き
(58)調査した分野(Int.Cl.7,DB名)
G10L 19/10
G10L 19/12
Claims (4)
- 【請求項1】 入力音声を複数のパルスからなるマルチ
パルスを用いて符号化する際に、前記マルチパルスのう
ちの隣接するパルス間の相互相関係数である歪みが前記
各パルスの各パルス位置候補毎に格納されているマルチ
パルス探索テーブルを作成し、該マルチパルス探索テー
ブルを用いることことにより、前記入力音声と再生音の
際である誤差が最小となるような、前記マルチパルスの
各パルスの位置および振幅を決定するマルチパルス探索
処理を行う音声符号化装置であって、 前記各パルス毎のパルス位置候補を、前記各パルスのパ
ルス番号毎に格納しているパルス位置候補テーブルと、 前記パルス位置候補テーブルのパルス位置に対応するパ
ルス間隔毎に計算された歪みが格納されているパルス間
歪みテーブルと、 第1の参照アドレステーブルと、 第2の参照アドレステーブルと、 前記パルス間歪みテーブルの前記パルス位置候補テーブ
ルにより示されるパルス位置を前記パルス間歪みテーブ
ルの先頭からの相対距離とみなして、予め前記パルス位
置候補テーブルのパルス位置に対応するパルス間隔毎に
歪みを計算することにより前記パルス間歪みテーブルの
絶対アドレスを求めて前記第1の参照アドレステーブル
に格納する第1の参照アドレステーブル作成手段と、 前記パルス間歪みテーブルの前記パルス位置候補テーブ
ルにより示されるパルス位置を前記マルチパルス探索テ
ーブルの先頭からの相対距離とみなして、予め前記パル
ス位置候補テーブルのパルス位置に対応するパルス間隔
毎に歪みを計算することにより前記マルチパルス探索テ
ーブルの絶対アドレスを求めて前記第2の参照アドレス
テーブルに格納する第2の参照アドレステーブル作成手
段と、 前記マルチパルス探索テーブルの作成処理の際に、前記
パルス間歪みテーブルのパルス位置候補をインデックス
とした絶対アドレスを前記第1の参照アドレステーブル
から読み出し、前記マルチパルス探索テーブルのパルス
位置候補をインデックスとした絶対アドレスを前記第2
の参照アドレステーブルから読み出し、読み出した前記
マルチパルス探索テーブルの絶対アドレスおよび前記パ
ルス間歪みテーブルの絶対アドレスを用いて前記マルチ
パルス探索テーブルを作成する探索テーブル作成手段と
を有する音声符号化装置。 - 【請求項2】 前記マルチパルスが、5つのパルスから
構成されている請求項1記載の音声符号化装置。 - 【請求項3】 入力音声を複数のパルスからなるマルチ
パルスを用いて符号化する際に、前記マルチパルスのう
ちの隣接するパルス間の相互相関係数である歪みが前記
各パルスの各パルス位置候補毎に格納されているマルチ
パルス探索テーブルを作成し、該マルチパルス探索テー
ブルを用いることことにより、前記入力音声と再生音の
際である誤差が最小となるような、前記マルチパルスの
各パルスの位置および振幅を決定するマルチパルス探索
処理方法であって、 前記パルス位置候補テーブルのパルス位置に対応するパ
ルス間隔毎に計算された歪みが格納されているパルス間
歪みテーブルの、前記各パルス毎のパルス位置候補を前
記各パルスのパルス番号毎に格納しているパルス位置候
補テーブルにより示されるパルス位置を前記パルス間歪
みテーブルの先頭からの相対距離とみなして、予め前記
パルス位置候補テーブルのパルス位置に対応するパルス
間隔毎に歪みを計算することにより前記パルス間歪みテ
ーブルの絶対アドレスを求めて第1の参照アドレステー
ブルに格納し、 前記パルス間歪みテーブルの前記パルス位置候補テーブ
ルにより示されるパルス位置を前記マルチパルス探索テ
ーブルの先頭からの相対距離とみなして、予め前記パル
ス位置候補テーブルのパルス位置に対応するパルス間隔
毎に歪みを計算することにより前記マルチパルス探索テ
ーブルの絶対アドレスを求めて前記第2の参照アドレス
テーブルに格納し、 前記マルチパルス探索テーブルの作成処理の際に、前記
パルス間歪みテーブルのパルス位置候補をインデックス
とした絶対アドレスを前記第1の参照アドレステーブル
から読み出し、前記マルチパルス探索テーブルのパルス
位置候補をインデックスとした絶対アドレスを前記第2
の参照アドレステーブルから読み出し、読み出した前記
マルチパルス探索テーブルの絶対アドレスおよび前記パ
ルス間歪みテーブルの絶対アドレスを用いて前記マルチ
パルス探索テーブルを作成するマルチパルス探索処理方
法。 - 【請求項4】 前記マルチパルスが、5つのパルスから
構成されている請求項3記載のマルチパルス探索処理方
法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP26373399A JP3372908B2 (ja) | 1999-09-17 | 1999-09-17 | マルチパルス探索処理方法と音声符号化装置 |
EP00120096A EP1085503A3 (en) | 1999-09-17 | 2000-09-15 | Addressing of multipulse excitation table for a speech coder |
US09/664,188 US6502068B1 (en) | 1999-09-17 | 2000-09-18 | Multipulse search processing method and speech coding apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP26373399A JP3372908B2 (ja) | 1999-09-17 | 1999-09-17 | マルチパルス探索処理方法と音声符号化装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001092500A JP2001092500A (ja) | 2001-04-06 |
JP3372908B2 true JP3372908B2 (ja) | 2003-02-04 |
Family
ID=17393548
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP26373399A Expired - Fee Related JP3372908B2 (ja) | 1999-09-17 | 1999-09-17 | マルチパルス探索処理方法と音声符号化装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US6502068B1 (ja) |
EP (1) | EP1085503A3 (ja) |
JP (1) | JP3372908B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070150266A1 (en) * | 2005-12-22 | 2007-06-28 | Quanta Computer Inc. | Search system and method thereof for searching code-vector of speech signal in speech encoder |
CA2813898C (en) * | 2010-10-07 | 2017-05-23 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Apparatus and method for level estimation of coded audio frames in a bit stream domain |
WO2013048171A2 (ko) * | 2011-09-28 | 2013-04-04 | 엘지전자 주식회사 | 음성 신호 부호화 방법 및 음성 신호 복호화 방법 그리고 이를 이용하는 장치 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
USRE35057E (en) * | 1987-08-28 | 1995-10-10 | British Telecommunications Public Limited Company | Speech coding using sparse vector codebook and cyclic shift techniques |
CA1337217C (en) * | 1987-08-28 | 1995-10-03 | Daniel Kenneth Freeman | Speech coding |
US4924517A (en) * | 1988-02-04 | 1990-05-08 | Nec Corporation | Encoder of a multi-pulse type capable of controlling the number of excitation pulses |
JP2906968B2 (ja) | 1993-12-10 | 1999-06-21 | 日本電気株式会社 | マルチパルス符号化方法とその装置並びに分析器及び合成器 |
FR2729246A1 (fr) * | 1995-01-06 | 1996-07-12 | Matra Communication | Procede de codage de parole a analyse par synthese |
FR2729244B1 (fr) * | 1995-01-06 | 1997-03-28 | Matra Communication | Procede de codage de parole a analyse par synthese |
FR2729247A1 (fr) * | 1995-01-06 | 1996-07-12 | Matra Communication | Procede de codage de parole a analyse par synthese |
WO1999010719A1 (en) * | 1997-08-29 | 1999-03-04 | The Regents Of The University Of California | Method and apparatus for hybrid coding of speech at 4kbps |
-
1999
- 1999-09-17 JP JP26373399A patent/JP3372908B2/ja not_active Expired - Fee Related
-
2000
- 2000-09-15 EP EP00120096A patent/EP1085503A3/en not_active Withdrawn
- 2000-09-18 US US09/664,188 patent/US6502068B1/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
EP1085503A3 (en) | 2002-07-31 |
EP1085503A2 (en) | 2001-03-21 |
JP2001092500A (ja) | 2001-04-06 |
US6502068B1 (en) | 2002-12-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7260522B2 (en) | Gain quantization for a CELP speech coder | |
AU2001255422A1 (en) | Gains quantization for a celp speech coder | |
US5893056A (en) | Methods and apparatus for generating noise signals from speech signals | |
JPH04134400A (ja) | 音声符号化装置 | |
CA2324898C (en) | Speech signal decoding method and apparatus, speech signal encoding/decoding method and apparatus, and program product therefor | |
JP3064947B2 (ja) | 音声・楽音符号化及び復号化装置 | |
JP2004519741A (ja) | 音声の符号化 | |
JP3372908B2 (ja) | マルチパルス探索処理方法と音声符号化装置 | |
JPH10143199A (ja) | 音声符号化方法および復号化方法 | |
JP4438280B2 (ja) | トランスコーダ及び符号変換方法 | |
JP3559485B2 (ja) | 音声信号の後処理方法および装置並びにプログラムを記録した記録媒体 | |
JPS6238500A (ja) | 高能率音声符号化方式とその装置 | |
JPH0738116B2 (ja) | マルチパルス符号化装置 | |
JPH05165500A (ja) | 音声符号化方法 | |
JP3296411B2 (ja) | 音声符号化方法および復号化方法 | |
JP2000298500A (ja) | 音声符号化方法 | |
JP3071800B2 (ja) | 適応ポストフィルタ | |
JP3229784B2 (ja) | 音声符号化復号化装置及び音声復号化装置 | |
JP3274451B2 (ja) | 適応ポストフィルタ及び適応ポストフィルタリング方法 | |
JP4007730B2 (ja) | 音声符号化装置、音声符号化方法および音声符号化アルゴリズムを記録したコンピュータ読み取り可能な記録媒体 | |
JP3576805B2 (ja) | 音声符号化方法及びシステム並びに音声復号化方法及びシステム | |
JPH08110800A (ja) | A−b−S法による高能率音声符号化方式 | |
JPH0122640B2 (ja) | ||
JPH034300A (ja) | 音声符号化復号化方式 | |
JPS59182499A (ja) | 残差励振形ボコ−ダ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |