JP4009781B2 - Speech processing apparatus and speech coding method - Google Patents
Speech processing apparatus and speech coding method Download PDFInfo
- Publication number
- JP4009781B2 JP4009781B2 JP2003365983A JP2003365983A JP4009781B2 JP 4009781 B2 JP4009781 B2 JP 4009781B2 JP 2003365983 A JP2003365983 A JP 2003365983A JP 2003365983 A JP2003365983 A JP 2003365983A JP 4009781 B2 JP4009781 B2 JP 4009781B2
- Authority
- JP
- Japan
- Prior art keywords
- unit
- audio signal
- signal
- frequency
- entropy 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.)
- Expired - Lifetime
Links
- 238000012545 processing Methods 0.000 title claims description 36
- 238000000034 method Methods 0.000 title claims description 25
- 239000013598 vector Substances 0.000 claims description 83
- 230000005236 sound signal Effects 0.000 claims description 51
- 238000013139 quantization Methods 0.000 claims description 40
- 238000006243 chemical reaction Methods 0.000 claims description 28
- 238000012217 deletion Methods 0.000 claims description 9
- 230000037430 deletion Effects 0.000 claims description 9
- 238000009432 framing Methods 0.000 claims description 9
- 238000007906 compression Methods 0.000 description 18
- 230000006835 compression Effects 0.000 description 16
- 230000008569 process Effects 0.000 description 13
- 230000008707 rearrangement Effects 0.000 description 10
- 238000005070 sampling Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 3
- 230000001629 suppression Effects 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
Images
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
Description
本発明は、音声処理装置及び音声符号化方法に関する。 The present invention relates to a speech processing apparatus and speech coding method.
従来より、音声信号の圧縮方式として、μ−law、ADPCM(Adaptive Differential Pulse Code Modulation)、音楽で利用されるMP3(MPEG Audio Layer-3)、携帯電話等で利用されるVSELP(Vector Sum Excited Linear Prediction)、G.729等のCELP(Code-Excited Linear Prediction)系の圧縮方式が実用化されている。特許文献1には、音声圧縮技術として、ベクトル量子化を用いた技術が開示されている。
語学学習において会話等の録音を行う場合、16kHz程度のサンプリング周波数が、各言語の特徴を保ちつつ、多くのデータ量を必要としない適度な周波数であると考えられている。しかしながら、CELP系の圧縮方式に現れる圧縮ノイズは、語学学習用には適切ではないという問題があった。また、μ−law、ADPCMは、十分な音質であるが、符号化レートが高いため、携帯機器でこれらの圧縮方式を利用する場合、録音時間が短くなってしまうという問題があった。また、MP3は、主に高品質の音声の圧縮を対象としており、16kHz程度のサンプリング周波数では、効果的に圧縮を行うことができないという問題があった。 When recording conversation or the like in language learning, a sampling frequency of about 16 kHz is considered to be an appropriate frequency that does not require a large amount of data while maintaining the characteristics of each language. However, there is a problem that the compression noise that appears in the CELP compression method is not appropriate for language learning. In addition, although μ-law and ADPCM have sufficient sound quality, since the encoding rate is high, there is a problem that recording time is shortened when these compression methods are used in a portable device. MP3 is mainly intended for compression of high-quality audio, and there is a problem that compression cannot be performed effectively at a sampling frequency of about 16 kHz.
本発明の課題は、語学学習用会話等の録音に適切なサンプリング周波数で、符号化レートを低減させる音声圧縮を可能にすることである。 It is an object of the present invention to enable audio compression that reduces the coding rate at a sampling frequency suitable for recording a language learning conversation or the like.
本発明に係る音声処理装置は、入力された音声信号をフレームに分割するフレーム化部と、前記フレーム化部により得られたフレーム毎に、フレームに含まれる音声信号の振幅の最大値に基づいて音声信号のレベルを調整するレベル調整部と、前記レベル調整部によりレベルが調整された音声信号に対し、1フレームの信号について複数のブロックに分けて周波数変換を施す周波数変換部と、前記周波数変換により各ブロックから得られた1フレーム分の周波数変換係数について、同一周波数帯域の係数をまとめてベクトル化して、ベクトル量子化を施すベクトル量子化部と、前記ベクトル量子化により得られた音声信号に対し、エントロピー符号化を施すエントロピー符号化部と、前記エントロピー符号化により得られた音声信号のデータ量が、予め設定された目標データ量より大きいか否かを判定する判定部と、前記判定部により、前記エントロピー符号化により得られた音声信号のデータ量が前記目標データ量より大きいと判定された場合、前記ベクトル量子化により得られた音声信号のうち、エネルギーが所定値以下の周波数帯域の音声信号を削除するデータ削除部と、を備え、前記エントロピー符号化部は前記データ削除部で削除されなかった音声信号を再度符号化することを特徴とする。 An audio processing device according to the present invention is based on a framing unit that divides an input audio signal into frames, and for each frame obtained by the framing unit, based on the maximum value of the amplitude of the audio signal included in the frame. A level adjusting unit that adjusts the level of the audio signal; a frequency converting unit that performs frequency conversion on the audio signal whose level is adjusted by the level adjusting unit in a plurality of blocks for a signal of one frame; and the frequency converting unit As for the frequency transform coefficients for one frame obtained from each block, a vector quantizing unit that performs vector quantization by collectively vectorizing coefficients in the same frequency band, and an audio signal obtained by the vector quantization against, an entropy coding section that performs entropy coding, data of the audio signal obtained by the entropy encoding Is determined to be greater than a preset target data amount, and the determination unit determines that the data amount of the audio signal obtained by the entropy encoding is greater than the target data amount. A data deletion unit that deletes a voice signal in a frequency band whose energy is equal to or lower than a predetermined value from the voice signal obtained by the vector quantization, and the entropy coding unit is deleted by the data deletion unit. It is characterized in that the missing audio signal is encoded again .
また、前記周波数変換部は、周波数変換として変形離散コサイン変換を用いるのが好ましい。 The frequency converter preferably uses a modified discrete cosine transform as a frequency transform.
また、高域周波数用の音声パターンを示すベクトルを格納した第1のテーブルと、低域周波数用の音声パターンを示すベクトルを格納した第2のテーブルと、を備え、前記ベクトル量子化部は、前記第1のテーブルと前記第2のテーブルを用いてベクトル量子化を行うのが好ましい。 The vector quantization unit includes: a first table storing a vector indicating a high-frequency audio pattern; and a second table storing a vector indicating a low-frequency audio pattern; It is preferable to perform vector quantization using the first table and the second table.
また、周波数帯域別に、音声パターンを示すベクトルを格納したテーブルを備え、前記ベクトル量子化部は、前記テーブルを用いてベクトル量子化を行うようにしてもよい。 Further, a table storing a vector indicating a voice pattern may be provided for each frequency band, and the vector quantization unit may perform vector quantization using the table.
また、前記エントロピー符号化部は、エントロピー符号化としてハフマン符号化を用いるのが好ましい。 The entropy coding unit preferably uses Huffman coding as entropy coding.
また、前記エントロピー符号化部は、エントロピー符号化としてレンジコーダによる符号化を用いるのが好ましい。 The entropy encoding unit preferably uses range coder encoding as entropy encoding.
また、レンジコーダによる符号化を行うエントロピー符号化部は、入力信号を示す各記号の出現確率を格納した生起確率テーブルを有し、記号の入力に伴って前記生起確率テーブルを更新するのが好ましい。 Further, the entropy encoding unit that performs encoding by the range coder preferably has an occurrence probability table that stores the appearance probability of each symbol indicating the input signal, and updates the occurrence probability table with the input of the symbol. .
また、前記エントロピー符号化により得られた音声信号のデータ量が、予め設定された目標データ量より大きいか否かを判定する判定部と、前記判定部により、前記エントロピー符号化により得られた音声信号のデータ量が前記目標データ量より大きいと判定された場合、前記周波数変換により得られた各周波数帯域の音声信号のうち、エネルギーが所定値以下の帯域の音声信号を削除するデータ削除部と、を備えるようにしてもよい。 In addition, a determination unit that determines whether the data amount of the audio signal obtained by the entropy encoding is larger than a preset target data amount, and the audio obtained by the entropy encoding by the determination unit A data deleting unit that deletes an audio signal in a band whose energy is equal to or less than a predetermined value among audio signals in each frequency band obtained by the frequency conversion when it is determined that the data amount of the signal is larger than the target data amount; May be provided.
本発明に係る音声符号化方法は、入力された音声信号をフレームに分割し、フレーム毎に、フレームに含まれる音声信号の振幅の最大値に基づいて音声信号のレベルを調整し、レベルが調整された音声信号に対し、1フレームの信号について複数のブロックに分けて周波数変換を施し、前記周波数変換により各ブロックから得られた1フレーム分の周波数変換係数について、同一周波数帯域の係数をまとめてベクトル化して、ベクトル量子化を施し、前記ベクトル量子化により得られた音声信号に対し、エントロピー符号化を施し、
前記エントロピー符号化により得られた音声信号のデータ量が、予め設定された目標データ量より大きいか否かを判定し、前記エントロピー符号化により得られた音声信号のデータ量が前記目標データ量より大きいと判定された場合、前記ベクトル量子化により得られた音声信号のうち、エネルギーが所定値以下の周波数帯域の音声信号を削除して、削除されなかった音声信号を再度符号化することを特徴とする。
The speech coding method according to the present invention divides an input speech signal into frames, and adjusts the level of the speech signal for each frame based on the maximum value of the amplitude of the speech signal included in the frame. The frequency conversion is performed on the audio signal thus divided into a plurality of blocks for the signal of one frame, and the frequency conversion coefficients for one frame obtained from each block by the frequency conversion are combined into the coefficients of the same frequency band. and vectorization, subjected to vector quantization with respect to the audio signal obtained by the vector quantization, and facilities entropy coding,
It is determined whether the data amount of the audio signal obtained by the entropy encoding is larger than a preset target data amount, and the data amount of the audio signal obtained by the entropy encoding is larger than the target data amount. If it is determined that the signal is large, the audio signal in the frequency band whose energy is equal to or lower than a predetermined value is deleted from the audio signal obtained by the vector quantization, and the audio signal that has not been deleted is encoded again. And
本発明によれば、語学学習用会話等の録音に適切なサンプリング周波数で、符号化レートを低減させることができる。 According to the present invention, it is possible to reduce the encoding rate at a sampling frequency suitable for recording a language learning conversation or the like.
以下、図面を参照して、本発明の実施形態について詳細に説明する。
まず、本実施形態における構成について説明する。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
First, the configuration in the present embodiment will be described.
図1は、本発明の実施形態の音声処理装置100の構成を示すブロック図である。音声処理装置100は、図1に示すように、A/D変換部1、DC(Direct Current)除去部2、フレーム化部3、レベル調整部4、周波数変換部5、周波数並べ替え部6、ベクトル量子化部7、エントロピー符号化部8、レートコントローラ9、データ削除部10により構成される。
FIG. 1 is a block diagram showing a configuration of a
A/D変換部1は、入力された音声アナログ信号をデジタル信号に変換し、DC除去部2に出力する。サンプリング周波数は、16kHz程度が望ましいが、11.025kHz、22.05kHz等でもかまわない。
The A /
DC除去部2は、A/D変換部1から入力された音声信号の直流成分を除去し、フレーム化部3に出力する。音声信号の直流成分を除去するのは、直流成分が音質にほとんど無関係であることによる。直流成分の除去は、例えば、高域通過フィルタによって実現することができる。高域通過フィルタには、例えば、式(1)で表されるものがある。
フレーム化部3は、DC除去部2から入力された信号を、圧縮の処理単位であるフレームに分割し、レベル調整部4に出力する。ここで、1つのフレームには、1つ以上、好ましくは4つ以上のブロックが含まれる長さにする。1ブロックは、1回のMDCT(Modified Discrete Cosine Transform:変形離散コサイン変換)を行う単位であり、MDCTの次数分の長さを有する。以下、1フレームを構成する各ブロックをMDCTブロックと呼ぶことにする。図2に、入力信号と各フレームとの関係を示し、図3に、1フレームと各MDCTブロックとの関係を示す。図3に示すように、各MDCTブロックは直前のMDCTブロックと、MDCTブロックの半分の長さの重複部分を有する。また、図2に示すように、各フレームは、直前のフレームと、MDCTブロックの半分の長さの重複部分を有する。
The
レベル調整部4は、フレーム毎に、入力された音声信号のレベル調整を行い、レベル調整された信号を周波数変換部5に出力する。レベル調整とは、1フレーム中に含まれる信号の振幅の最大値を、指定されたビット(以下、制圧目標ビット)数に収まるようにすることである。レベル調整は、例えば、1フレーム中の信号の最大振幅をnbit、制圧目標ビット数をNとすると、フレーム中の信号を全て、式(2)を満たすshift_bit数分LSB(Least Significant Bit:最下位ビット)側にシフトすることによって実現できる。
周波数変換部5は、レベル調整部4から入力された信号に対し周波数変換を施し、周波数並べ替え部6に出力する。本実施形態では、周波数変換としてMDCT(Modified Discrete Cosine Transform:変形離散コサイン変換)を用いる場合を示す。MDCTブロックの長さをM、入力信号を{xn|n=0,…,M-1}とすると、MDCT係数{Xk|n=0,…,M/2-1}は式(3)で表される。
周波数並べ替え部6は、周波数変換部5から入力されたMDCT係数を周波数毎に並べ替え、同一周波数帯域の係数をまとめてベクトル化し、ベクトル量子化部7に出力する。このように、同一周波数帯域の信号をまとめてベクトル化すると、例えば、定常信号を多く含む場合、後のベクトル量子化の精度が向上する。1フレームにMDCTブロックがm個あり、各MDCTでMDCT係数がM/2個算出された場合、i番目のMDCTブロックのj番目のMDCT係数をXijとすると、j番目の周波数帯域をまとめたベクトルFjは、Fj={Xij|i=0,…,m-1},j=0,…,M/2-1となる。
The
ベクトル量子化部7は、複数の音声パターンを示す代表ベクトルを格納したVQ(Vector Quantization)テーブルを有し、周波数並べ替え部6で作成されたベクトルFjと、VQテーブルに格納された各代表ベクトルを比較し、最も類似した代表ベクトルが示すインデックスを符号としてエントロピー符号化部8に出力する。
The vector quantization unit 7 has a VQ (Vector Quantization) table in which representative vectors representing a plurality of sound patterns are stored. The vector F j created by the
例えば、ベクトル長Nの符号化対象のベクトルを{sj|j=1,…,N}、VQテーブルに格納されたk個の代表ベクトルを{Vi|i=1,…,k}、Vi={vij|j=1,…,N}とすると、符号化対象のベクトルと、VQテーブルに格納されたi番目の代表ベクトルの各要素vijの誤差eiが最小となるようなi(インデックス)を、出力する符号とする。誤差eiの算出式を式(5)に示す。
音声は、高域周波数部分と低域周波数部分で異なる特性がある場合が多いため、本実施形態では、高域と低域で異なるVQテーブルを用いることにする。高域用の代表ベクトルが格納されたVQテーブルを高域用VQテーブル7a、低域用の代表ベクトルが格納されたVQテーブルを低域用VQテーブル7bとする。周波数並べ替え部6で作成されたベクトルFj={Xij|i=0,…,m-1},j=0,…,M/2-1において、高域と低域の境界は、周波数帯域を示すjを単純に半分に分ければよい。即ち、F0,F1,…,FM/4-1を低域、FM/4,FM/4+1,…,FM/2-1を高域とすればよい。従って、低域のベクトルF0,F1,…,FM/4-1は、低域用VQテーブル7bに格納された各代表ベクトルと比較され、最も類似した代表ベクトルが示すインデックスが符号として出力される。同様に、高域のベクトルFM/4,FM/4+1,…,FM/2-1は、高域用VQテーブル7aに格納された各代表ベクトルと比較され、最も類似した代表ベクトルが示すインデックスが符号として出力される。
Since audio often has different characteristics in the high frequency part and the low frequency part, in this embodiment, different VQ tables are used in the high frequency and the low frequency. The VQ table in which the high-frequency representative vector is stored is referred to as a high-frequency VQ table 7a, and the VQ table in which the low-frequency representative vector is stored is referred to as a low-frequency VQ table 7b. In the vector F j = {X ij | i = 0,..., M−1}, j = 0,..., M / 2-1 created by the
エントロピー符号化部8は、ベクトル量子化部7から入力された信号に対してエントロピー符号化を施し、レートコントローラ9に出力する。エントロピー符号化とは、信号の統計的性質を利用して、符号をより短い符号へと変換する符号化方式であり、ハフマン(Huffman)符号化、算術符号化、レンジコーダ(Range Coder)による符号化等がある。エントロピー符号化の詳細については、後に図4〜図8を参照して説明する。
The
レートコントローラ9は、エントロピー符号化で得られた符号のデータ量が、予め設定された目標データ量より大きいか否かを判定し、エントロピー符号化で得られた符号のデータ量が目標データ量より大きいと判定した場合、データ削除部10に対し、j番目の周波数帯域Fjのエネルギーを|Fj|2としたとき、|Fj|2が所定値以下の帯域の信号の削除を要求する。エントロピー符号化で得られた符号のデータ量が目標データ量以下であると判定した場合は、レートコントローラ9は、エントロピー符号化で得られた符号を音声圧縮信号として出力する。レートコントローラ9から出力された音声圧縮信号は、記録媒体に記録されたり、通信ネットワークを介して外部装置に伝送されたりする。
The
データ削除部10は、エネルギー|Fj|2が所定値以下の帯域の信号を削除する処理を行い、処理後の信号をエントロピー符号化8に出力し、再度、エントロピー符号化を要求する。エネルギー|Fj|2が所定値以下の帯域の信号を削除する処理は、例えば、式(6)に示すように、エネルギー|Fj|2が閾値t未満の係数を0になるようにする。
Fj={0,0,…,0}; |Fj|2<t (6)
The
F j = {0,0, ..., 0}; | F j | 2 <t (6)
〈エントロピー符号化〉
以下では、本実施形態で適用されるエントロピー符号化の例として、ハフマン符号化、レンジコーダによる符号化について説明する。
<Entropy coding>
Hereinafter, Huffman coding and coding by a range coder will be described as examples of entropy coding applied in the present embodiment.
(ハフマン符号化)
ハフマン符号化とは、出現頻度の高い記号には短い符号を割り当て、出現頻度の低い記号には長い符号を割り当てることで、全体のデータ量を圧縮する方式である。例えば、4つの記号{a、b、c、d}からなる100文字のデータがあったとする。全ての記号に同じ長さの2進数の符号(固定長符号)を割り当てる場合、4つの記号を表すには2ビットが必要であるため、100文字のデータ量は、2[bit]×100=200[bit]となる。
(Huffman coding)
Huffman coding is a method of compressing the entire data amount by assigning short codes to symbols with high appearance frequency and assigning long codes to symbols with low appearance frequency. For example, assume that there is 100 characters of data consisting of four symbols {a, b, c, d}. When a binary code (fixed length code) having the same length is assigned to all symbols, 2 bits are required to represent the four symbols, so the data amount of 100 characters is 2 [bit] × 100 = 200 [bit].
ハフマン符号化では、各記号の出現頻度に応じて2進数の符号が割り当てられる。図4に、100文字のデータ中の各記号a、b、c、dの出現頻度が、それぞれ、10、70、1、19である場合に各記号に割り当てられた2進数の符号の例を示す。図4に示すように、記号a、b、c、dに、それぞれ、符号100、0、101、11が割り当てられた場合、100文字のデータ量は、3[bit]×10+1[bit]×70+3[bit]×1+2[bit]×19=141[bit]となり、データ量は、固定長符号のデータ量の70%に圧縮される。
In Huffman coding, a binary code is assigned according to the appearance frequency of each symbol. FIG. 4 shows an example of a binary code assigned to each symbol when the appearance frequency of each symbol a, b, c, d in 100-character data is 10, 70, 1, 19 respectively. Show. As shown in FIG. 4, when
(レンジコーダによる符号化)
符号化前の元信号に含まれる記号の集合をS={si|i=1,…,n}とし、各記号siの出現確率をpiとする。また、元信号に含まれる各記号siを予め決められた順番に並べ替えた記号列{s1、s2、…、sn}において、記号sk(k≧2)より前に並んでいる各記号の出現確率の合計をFkとする。即ち、Fkは、式(7)のように表される。
Assume that a set of symbols included in the original signal before encoding is S = {s i | i = 1,..., N}, and the appearance probability of each symbol s i is p i . Furthermore, symbol strings sorted in a predetermined order each symbol s i in the original signal {s 1, s 2, ... , s n} in, lined before the symbol s k (k ≧ 2) Let F k be the total appearance probability of each symbol. That is, F k is expressed as in Expression (7).
レンジコーダによる符号化では、記号毎に出現確率piとFiを対応付けて格納したテーブル(以下、生起確率テーブルという。)に基づいて、入力済みの信号が示す記号列に、数値で示す範囲(下限、幅)を設定する処理を行う。入力済みの信号に設定される範囲(下限、幅)は、直前に入力された信号に設定された範囲と生起確率テーブルに基づいて決定される。 In the encoding by the range coder, a symbol string indicated by an input signal is indicated by a numerical value based on a table (hereinafter referred to as an occurrence probability table) in which appearance probabilities p i and F i are stored in association with each symbol. Process to set the range (lower limit, width). The range (lower limit, width) set for the input signal is determined based on the range set for the signal input immediately before and the occurrence probability table.
符号化対象の信号skが入力されたときに設定される幅をrange'、下限をlow'とし、その信号skの1つ前の信号が入力されたときに設定された幅をrange、下限をlowとすると、幅range'、下限low'は、それぞれ、式(8)、式(9)のように表される。
range'=range×pk (8)
low'=low+range×Fk (9)
式(8)及び式(9)で算出されたrange'、low'が、次の信号が入力されたときのrange、lowとなる。
The range set when the signal s k to be encoded is input is range ', the lower limit is low', and the range set when the signal before the signal s k is input is range, Assuming that the lower limit is low, the width range ′ and the lower limit low ′ are expressed as in Expression (8) and Expression (9), respectively.
range '= range × pk (8)
low '= low + range × F k (9)
The range ′ and low ′ calculated by the equations (8) and (9) are the range and low when the next signal is input.
式(8)及び式(9)で示す算出処理は、入力信号がなくなるまで行われ、最後の信号が入力されたときに算出されたrange、lowに基づいて決定される範囲low〜low+rangeの間の値が符号値として出力される。 The calculation processing shown in the equations (8) and (9) is performed until there is no input signal, and the range calculated when the last signal is input, the range determined based on the low, between low to low + range Is output as a code value.
図5に、レンジコーダ符号化の例を示す。図5(a)に、元信号に含まれる記号の集合がS={s1=a、s2=b、s3=c、s4=d}であるときの生起確率テーブルの一例を示す。また、図5(b)に、記号列{baca}に対する符号化の一例を示す。図5(b)では、記号列を示す符号を10進数とし、lowの初期値を0、rangeの初期値を106とした場合を示している。図5(b)において、「入力信号」項目は、入力された記号を示し、「記号列」項目は、これまでに入力された記号列を示し、「low」項目は、式(9)により算出されるlow'を示し、「range」項目は、式(8)により算出されるrange'を示す。また、「範囲」項目は、low及びrangeから決定される符号値の範囲を示す。図5(b)において、[x、y)という表記は、符号値Zがx≦Z<yを満たすことを意味する。図5(b)によると、593750≦Z<603125を満たす符号値Zのうちの1つ(例えば、600000)が、記号列{baca}を符号化した結果として出力されることになる。 FIG. 5 shows an example of range coder encoding. FIG. 5A shows an example of the occurrence probability table when the set of symbols included in the original signal is S = {s 1 = a, s 2 = b, s 3 = c, s 4 = d}. . FIG. 5B shows an example of encoding for the symbol string {baca}. FIG. 5B shows a case where the code indicating the symbol string is a decimal number, the initial value of low is 0, and the initial value of range is 10 6 . In FIG. 5B, the “input signal” item indicates the input symbol, the “symbol string” item indicates the symbol string input so far, and the “low” item is expressed by the equation (9). “Low ′” is calculated, and the “range” item indicates “range ′” calculated by Expression (8). The “range” item indicates a range of code values determined from low and range. In FIG. 5B, the notation [x, y) means that the code value Z satisfies x ≦ Z <y. According to FIG. 5B, one of the code values Z satisfying 593750 ≦ Z <603125 (for example, 600000) is output as a result of encoding the symbol string {baca}.
このように、レンジコーダによる符号化では、予め決められた出現確率を利用して入力される各記号を符号化しているため、元信号に含まれる各記号の出現確率が固定された情報源からの発生であれば非常に有効である。しかしながら、符号化対象となる信号が、出現確率が一定の情報源から発生されていることは極めてまれである。よって、上述のレンジコーダによる符号化では、各記号の出現確率が符号化対象となる信号に適応していない。そこで、本実施形態では、レンジコーダ符号化において、信号が入力される度に出現確率を更新させるようにすることによって、実際の信号に適応可能にした。以下、本実施形態のレンジコーダによる符号化について説明する。 As described above, in encoding by the range coder, each symbol input is encoded using a predetermined appearance probability, and therefore, from an information source in which the appearance probability of each symbol included in the original signal is fixed. This is very effective. However, it is extremely rare that a signal to be encoded is generated from an information source having a constant appearance probability. Therefore, in the encoding by the above range coder, the appearance probability of each symbol is not adapted to the signal to be encoded. Therefore, in the present embodiment, in the range coder encoding, the appearance probability is updated every time a signal is input, so that it can be adapted to an actual signal. Hereinafter, encoding by the range coder of this embodiment will be described.
上述と同様に、符号化前の元信号に含まれる記号の集合をS={si|i=1,…,n}とする。元信号に含まれる記号siの出現頻度をfi、出現頻度fiの合計をcum、各記号siの出現確率をpiとすると、cum、piは、それぞれ、式(10)、式(11)のように表される。
エントロピー符号化部8は、入力された信号に幅range及び下限lowを設定するためのテーブルとして、図6に示すような生起確率テーブル81を有する。生起確率テーブル81は、図6に示すように、各記号毎に、出現頻度fi、出現確率pi、Fiの各項目を対応付けて格納している。Fiの定義は、式(7)で示したとおりである。
The
エントロピー符号化部8に符号化対象の信号skが入力されたときに設定される幅をrange'、下限をlow'とし、その信号skの1つ前の信号が入力されたときに設定された幅をrange、下限をlowとすると、幅range'、下限low'は、それぞれ、式(12)、式(13)のように表される。
信号skの入力によりrange、lowが算出されると、エントロピー符号化部8は、式(14)に示すように、出現頻度fkに1を加算し、算出された出現頻度fk’を新たなfkとする。
fk’=fk+1 (14)
エントロピー符号化部8は、出現頻度fkの加算に伴い、cum、出現確率pi、Fiを再計算し、生起確率テーブル81を更新する。エントロピー符号化部8は、これらの処理を、入力信号がなくなるまで行い、最後の信号が入力されたときに算出されたrange、lowに基づいて決定される範囲low〜low+rangeの間の値を符号値として出力する。
When range and low are calculated by the input of the signal s k , the
f k ′ = f k +1 (14)
The
図7及び図8に、本実施形態のレンジコーダ符号化の例を示す。図7(a)に、元信号に含まれる記号の集合がS={s1=a、s2=b、s3=c、s4=d}であるときのデフォルトの生起確率テーブル81の一例を示す。図7(a)に示すデフォルトの生起確率テーブル81のpi及びFiは、図5(a)に示す生起確率テーブルと同一であるものとする。また、図7(b)には、図5(b)に示した記号列と同一の記号列{baca}に対する符号化の一例を示す。図7(b)においても、記号列を示す符号を10進数とし、lowの初期値を0、rangeの初期値を106とする。図7(b)において、「入力信号」項目は、入力された記号を示し、「記号列」項目は、これまでに入力された記号列を示し、「low」項目は、式(13)により算出されるlow'を示し、「range」項目は、式(12)により算出されるrange'を示す。また、「範囲」項目は、low及びrangeから決定される符号値の範囲を示す。また、「生起確率テーブル」項目は、記号の入力毎に更新された生起確率テーブルを示す。図8に、記号の入力毎に更新された生起確率テーブルを示す。図7(b)によると、記号の入力毎に生起確率テーブルを更新することで、記号列{baca}が示す「範囲」は、図5(b)に示した生起確率テーブルが固定された場合と異なり、591992≦Z<599757を満たす符号値Zのうちの1つが、記号列{baca}を符号化した結果として出力されることになる。 7 and 8 show examples of range coder encoding according to this embodiment. FIG. 7A shows a default occurrence probability table 81 when the set of symbols included in the original signal is S = {s 1 = a, s 2 = b, s 3 = c, s 4 = d}. An example is shown. It is assumed that p i and F i of the default occurrence probability table 81 shown in FIG. 7A are the same as the occurrence probability table shown in FIG. FIG. 7B shows an example of encoding for the same symbol string {baca} as the symbol string shown in FIG. Also in FIG. 7B, the symbol indicating the symbol string is a decimal number, the initial value of low is 0, and the initial value of range is 10 6 . In FIG. 7B, the “input signal” item indicates the input symbol, the “symbol string” item indicates the symbol string input so far, and the “low” item is expressed by the equation (13). “Low ′” is calculated, and the “range” item indicates “range ′” calculated by Expression (12). The “range” item indicates a range of code values determined from low and range. The “occurrence probability table” item indicates an occurrence probability table updated every time a symbol is input. FIG. 8 shows an occurrence probability table updated every time a symbol is input. According to FIG. 7B, by updating the occurrence probability table for each input of the symbol, the “range” indicated by the symbol string {baca} is the case where the occurrence probability table shown in FIG. 5B is fixed. Unlike the above, one of the code values Z satisfying 591992 ≦ Z <599757 is output as a result of encoding the symbol string {baca}.
図9に、音声処理装置100により圧縮された音声信号を復号する復号装置200の構成を示す。復号装置200は、図9に示すように、エントロピー復号部11、逆ベクトル量子化部12、時間順並べ替え部13、周波数逆変換部14、レベル再現部15、フレーム合成部16、D/A変換部17により構成される。なお、音声処理装置100と復号装置200を、一つの筐体に一体的に備えるような構造としてもよいし、各々を別体として設けるようにしてもよい。
FIG. 9 shows a configuration of a
エントロピー復号部11は、エントロピー符号化により符号化された信号を復号し、逆ベクトル量子化部12に出力する。逆ベクトル量子化部12は、複数の音声パターンを示す代表ベクトルを格納したテーブルとして、高域用VQテーブル12a、低域用VQテーブル12bを有し、エントロピー復号部11から入力された信号(インデックス)に対応する代表ベクトルを抽出し、時間順並べ替え部13に出力する。
The
時間順並べ替え部13は、逆ベクトル量子化部12から入力されたベクトルを時間順に並べ替え、周波数逆変換部14に出力する。周波数逆変換部14は、時間順並べ替え部13から入力された信号(ベクトル)に対し、逆MDCTを施し、レベル再現部15に出力する。レベル再現部15は、周波数逆変換部14から入力された信号のレベル調節を行って、元のレベルに戻し、フレーム合成部16に出力する。フレーム合成部16は、符号化及び復号化の処理単位であったフレームを合成し、合成後の信号をD/A変換部17に出力する。D/A変換部17は、フレーム合成部16から入力されたデジタル信号をアナログ信号に変換し、音声再生信号として出力する。
The time
次に、本実施形態における動作について説明する。
まず、図10のフローチャートを参照して、音声処理装置100において実行される音声圧縮処理について説明する。以下のフローチャートでは、エントロピー符号化として、レンジコーダによる符号化が用いられる場合を示す。
Next, the operation in this embodiment will be described.
First, the audio compression process executed in the
まず、音声アナログ信号が入力されると、A/D変換部1において、入力された音声アナログ信号が音声デジタル信号に変換される(ステップS1)。以下、符号化対象の音声デジタル信号を単に音声信号を呼ぶことにする。次いで、DC除去部2において、音声信号の直流成分が削除され(ステップS2)、フレーム化部3において、直流成分削除後の音声信号がフレームに分割される(ステップS3)。
First, when an audio analog signal is input, the input audio analog signal is converted into an audio digital signal in the A / D converter 1 (step S1). Hereinafter, the audio digital signal to be encoded is simply referred to as an audio signal. Next, the
次いで、レベル調整部4において、フレーム毎に、入力された音声信号のレベルが調整され(ステップS4)、周波数変換部5において、レベル調整後の音声信号に対し、MDCTが施される(ステップS5)。次いで、周波数並べ替え部6において、MDCT係数が周波数毎に並べ替えられ(ステップS6)、同一周波数帯域の係数がまとめてベクトル化される。
Next, the
次いで、ベクトル量子化部7において、高域のMDCT係数のベクトルと高域用VQテーブル7aに格納された代表ベクトルが比較されるとともに、低域のMDCT係数のベクトルと低域用VQテーブル7bに格納された代表ベクトルが比較され、最も類似した代表ベクトルが示すインデックスが符号として出力される(ステップS7)。 Next, the vector quantization unit 7 compares the high-frequency MDCT coefficient vector with the representative vector stored in the high-frequency VQ table 7a, and stores the low-frequency MDCT coefficient vector in the low-frequency VQ table 7b. The stored representative vectors are compared, and the index indicated by the most similar representative vector is output as a code (step S7).
次いで、生起確率テーブル81が初期化され(ステップS8)、レンジコーダの現在の生起確率テーブル81の内容が一旦保存される(ステップS9)。そして、エントロピー符号化部8において、ベクトル量子化後の音声信号に対し、フレーム毎にレンジコーダ符号化が施され(ステップS10)、レンジコーダ符号化後の音声圧縮信号がレートコントローラ9に出力される。レンジコーダ符号化については、後に図11を参照して詳細に説明する。
Next, the occurrence probability table 81 is initialized (step S8), and the contents of the current occurrence probability table 81 of the range coder are temporarily saved (step S9). Then, the
次いで、レートコントローラ9において、エントロピー符号化部8から入力された1フレーム分の音声圧縮信号が予め決められた目標データ量以下であるか否かが判定される(ステップS11)。ステップS11において、入力された音声圧縮信号が目標データ量より大きいと判定された場合(ステップS11;NO)、データ削除部10において、エネルギーが小さい帯域、即ち、エネルギー|Fj|2が所定値以下の帯域の信号が削除され(ステップS12)、生起確率テーブル81が、ステップS9で保存していた値に戻され(ステップS13)、レンジコーダの現在の生起確率テーブル81の値が保存され(ステップS9)、再度、該当するフレームのレンジコーダ符号化処理が行われる(ステップS10)。
Next, the
ステップS11において、入力された音声圧縮信号が目標データ量以下であると判定された場合(ステップS11;YES)、エントロピー符号化部8に次のフレームの音声信号が入力されたか否かが判定される(ステップS14)。ステップS14において、エントロピー符号化部8に次のフレームの音声信号が入力されたと判定された場合(ステップS14;YES)、レンジコーダの現在の生起確率テーブル81の内容が一旦保存され(ステップS9)、再度、そのフレームに対するレンジコーダ符号化処理が行われる(ステップS10)。ステップS14において、エントロピー符号化部8に入力された全てのフレームに対するレンジコーダ符号化が終了したと判定された場合(ステップS14;YES)、本音声圧縮処理が終了する。
If it is determined in step S11 that the input audio compression signal is less than or equal to the target data amount (step S11; YES), it is determined whether or not an audio signal of the next frame has been input to the
次に、図11のフローチャートを参照して、エントロピー符号化部8において実行されるレンジコーダ符号化(図10のステップS10)の詳細について説明する。
Next, details of the range coder encoding (step S10 in FIG. 10) executed in the
まず、low及びrangeが初期化され(ステップS20)、式(10)により、各記号の出現確率の合計cumが算出される(ステップS21)。音声信号を示す記号skが入力されると(ステップS22)、式(12)によりrange'が算出され、式(13)によりlow'が算出され、算出されたrange'及びlow'が、それぞれ、次の記号が入力されたときrange、lowのとなる(ステップS23)。 First, low and range are initialized (step S20), and the sum cum of the appearance probabilities of each symbol is calculated by equation (10) (step S21). When a symbol s k indicating an audio signal is input (step S22), range ′ is calculated by equation (12), low ′ is calculated by equation (13), and the calculated range ′ and low ′ are respectively calculated. When the next symbol is input, the range becomes low (step S23).
次いで、記号skの出現頻度fkがインクリメントされる(ステップS24)。出現頻度fkがインクリメントされたことにより、各記号の出現確率piとFiが再計算され、生起確率テーブル81が更新される。次いで、1フレーム分の記号列に対して、ステップS21〜S24までの処理が終了したか否かが判定される(ステップS25)。 Then, frequency f k of symbol s k is incremented (step S24). As the appearance frequency f k is incremented, the appearance probabilities p i and F i of each symbol are recalculated, and the occurrence probability table 81 is updated. Next, it is determined whether or not the processing from steps S21 to S24 has been completed for the symbol string for one frame (step S25).
ステップS25において、1フレーム分の記号列に対する処理が終了していないと判定された場合(ステップS25;NO)、ステップS21に戻り、次に入力される記号に関して、ステップS21〜S24までの処理が繰り返される。ステップS25において、1フレーム分の記号列に対する処理が終了したと判定された場合(ステップS25;YES)、low〜low+rangeの範囲の一つの数値が出力され(ステップS26)、本レンジコーダ符号化処理が終了する。 If it is determined in step S25 that the processing for the symbol string for one frame has not been completed (step S25; NO), the process returns to step S21, and the processing from steps S21 to S24 is performed for the next input symbol. Repeated. If it is determined in step S25 that the processing for the symbol string for one frame has been completed (step S25; YES), one numerical value in the range of low to low + range is output (step S26), and this range coder code Processing ends.
図11に示すレンジコーダ符号化では、生起確率テーブルの初期化後に入力された全ての記号に基づいて生起確率テーブルが更新される例を示したが、出現確率の変動が局所的に大きい場合や、出現確率が過去の入力にほとんど依存しない場合(例えば、2つの異なる内容の音声ファイルが連結されて一つのファイルになっている場合)は、過去の入力に影響されない。従って、このような場合、一定期間以上過去に処理した記号の出現頻度の影響を生起確率テーブルから取り除くようにすれば、符号化効率のよい生起確率テーブルを生成することが可能になる。 In the range coder encoding shown in FIG. 11, an example in which the occurrence probability table is updated based on all symbols input after the occurrence probability table is initialized has been described. When the appearance probability hardly depends on the past input (for example, when two audio files having different contents are concatenated into one file), it is not affected by the past input. Therefore, in such a case, if the influence of the appearance frequency of symbols processed in the past for a certain period of time is removed from the occurrence probability table, it is possible to generate an occurrence probability table with good coding efficiency.
以下、図12のフローチャートを参照して、図11のレンジコーダ符号化の変形例として、一定期間以上過去に処理した記号の出現頻度の影響を生起確率テーブルから取り除く場合のレンジコーダ符号化処理(レンジコーダ符号化処理2と呼ぶ。)について説明する。以下では、エントロピー符号化部8に、入力信号を記録するためのFIFO(First-In First-Out)が備えられているものとする。
In the following, referring to the flowchart of FIG. 12, as a variation of the range coder encoding of FIG. 11, the range coder encoding process in the case where the influence of the appearance frequency of symbols processed in the past for a certain period or more is removed from the occurrence probability table ( The range
まず、low及びrangeが初期化され(ステップS30)、式(10)により、各記号の出現確率の合計cumが算出される(ステップS31)。音声信号を示す記号skが入力されると(ステップS32)、式(12)によりrange'が算出され、式(13)によりlow'が算出され、算出されたrange'及びlow'が、それぞれ、次の記号が入力されたときrange、lowのとなる(ステップS33)。 First, low and range are initialized (step S30), and the total cum of the appearance probabilities of each symbol is calculated by equation (10) (step S31). When a symbol s k indicating an audio signal is input (step S32), range ′ is calculated by equation (12), low ′ is calculated by equation (13), and the calculated range ′ and low ′ are respectively calculated. When the next symbol is input, it becomes range and low (step S33).
次いで、記号skの出現頻度fkがインクリメントされ(ステップS34)、FIFOに記号skが入力され、x個前にFIFOに入力された記号syがFIFOから取り出される(ステップS35)。ここで、xは、2以上の整数である。記号syがFIFOから取り出されると、記号syの出現頻度fyがデクリメントされる(ステップS36)。 Then, frequency f k of symbol s k is incremented (step S34), the symbol s k is input to the FIFO, the symbol s y input to the FIFO in the x th previous is taken out from the FIFO (step S35). Here, x is an integer of 2 or more. If the symbol s y is taken from the FIFO, frequency f y symbol s y is decremented (step S36).
出現頻度fkがインクリメントされ、出現頻度fyがデクリメントされたことにより、各記号の出現確率piとFiが再計算され、生起確率テーブル81が更新される。次いで、1フレーム分の記号列に対して、ステップS31〜S36までの処理が終了したか否かが判定される(ステップS37)。 When the appearance frequency f k is incremented and the appearance frequency f y is decremented, the appearance probabilities p i and F i of each symbol are recalculated, and the occurrence probability table 81 is updated. Next, it is determined whether or not the processing of steps S31 to S36 has been completed for the symbol string for one frame (step S37).
ステップS37において、1フレーム分の記号列に対する処理が終了していないと判定された場合(ステップS37;NO)、ステップS31に戻り、次に入力される記号に関して、ステップS31〜S36までの処理が繰り返される。ステップS37において、1フレーム分の記号列に対する処理が終了したと判定された場合(ステップS37;YES)、low〜low+rangeの範囲の一つの数値が出力され(ステップS38)、本レンジコーダ符号化処理2が終了する。
If it is determined in step S37 that the processing for the symbol string for one frame has not been completed (step S37; NO), the process returns to step S31, and the processing from steps S31 to S36 is performed for the next input symbol. Repeated. If it is determined in step S37 that the processing for the symbol string for one frame has been completed (step S37; YES), one numerical value in the range of low to low + range is output (step S38), and this range
以上のように、本実施形態の音声処理装置100によれば、入力された音声信号をフレームに分割し、フレーム毎にレベル調整し、レベル調整された音声信号にMDCTを施し、MDCT係数を周波数毎に並べ替えたベクトルにベクトル量子化を施し、ベクトル量子化により得られた音声信号にエントロピー符号化を施すことにより、語学学習用会話等の録音に適切なサンプリング周波数で、符号化レートを低減させることができる。例えば、本実施形態の音声処理装置100により、16kHz程度のサンプリング周波数の音声信号を16kbps程度のレートに圧縮することが可能になる。
As described above, according to the
また、エントロピー符号化としてレンジコーダ符号化を用いることにより、ビット操作が不要になり、処理負荷を軽減させることができる。特に、1記号が入力される度に生起確率テーブルを更新するようにしたことにより、話者の変更等による音声信号の変化に適応することができる。 In addition, by using range coder encoding as entropy encoding, bit manipulation becomes unnecessary, and the processing load can be reduced. In particular, by updating the occurrence probability table every time one symbol is input, it is possible to adapt to changes in the speech signal due to speaker changes or the like.
更に、エントロピー符号化で得られた符号のデータ量と目標データ量を比較し、エントロピー符号化で得られた符号のデータ量が目標データ量より大きい場合、エネルギーが小さい帯域の信号を削除するようにしたため、再度、ベクトル量子化を行う必要がなく、符号化処理を高速に行うことが可能になる。 Further, the data amount of the code obtained by entropy coding is compared with the target data amount. If the data amount of the code obtained by entropy coding is larger than the target data amount, a signal in a band with a small energy is deleted. Therefore, it is not necessary to perform vector quantization again, and the encoding process can be performed at high speed.
なお、本実施形態における記述内容は、本発明の趣旨を逸脱しない範囲で適宜変更可能である。 Note that the description in the present embodiment can be changed as appropriate without departing from the spirit of the present invention.
例えば、上述の実施形態では、周波数毎にまとめられたMDCT係数のうち、エネルギーが小さい(エネルギーが所定値以下)帯域のMDCT係数を削除することで、データ量を削減するようにしたが、周波数毎にまとめられたMDCT係数のうち、存在するデータ数が少ない、即ち、存在するデータ数が所定値以下の帯域のMDCT係数を削除するようにしてもよい。 For example, in the above-described embodiment, the amount of data is reduced by deleting the MDCT coefficient in the band where the energy is small (energy is equal to or less than a predetermined value) out of the MDCT coefficients collected for each frequency. Of the MDCT coefficients collected every time, the number of existing data may be small, that is, the MDCT coefficients in a band where the number of existing data is a predetermined value or less may be deleted.
また、上述の実施形態では、ベクトル量子化の際、高域周波数と低域周波数で異なるVQテーブルを用いるようにしたが、音声の全ての周波数帯域で同一のVQテーブルを用いるようにしてもよい。また、周波数帯域を更に細かく分け、周波数帯域毎に異なるVQテーブルを用いるようにしてもよい。 In the above-described embodiment, different VQ tables are used for high frequency and low frequency in vector quantization. However, the same VQ table may be used for all frequency bands of speech. . Further, the frequency band may be further divided and a different VQ table may be used for each frequency band.
1 A/D変換部
2 DC除去部
3 フレーム化部
4 レベル調整部
5 周波数変化部
6 周波数並べ替え部
7 ベクトル量子化部
7a 高域用VQテーブル(第1のテーブル)
7b 低域用VQテーブル(第2のテーブル)
8 エントロピー符号化部
81 生起確率テーブル
9 レートコントローラ(判定部)
10 データ削除部
100 音声処理装置
DESCRIPTION OF SYMBOLS 1 A /
7b Low frequency VQ table (second table)
8 Entropy encoding unit 81 Occurrence probability table 9 Rate controller (determination unit)
10
Claims (8)
前記フレーム化部により得られたフレーム毎に、フレームに含まれる音声信号の振幅の最大値に基づいて音声信号のレベルを調整するレベル調整部と、
前記レベル調整部によりレベルが調整された音声信号に対し、1フレームの信号について複数のブロックに分けて周波数変換を施す周波数変換部と、
前記周波数変換により各ブロックから得られた1フレーム分の周波数変換係数について、同一周波数帯域の係数をまとめてベクトル化して、ベクトル量子化を施すベクトル量子化部と、
前記ベクトル量子化により得られた音声信号に対し、エントロピー符号化を施すエントロピー符号化部と、
前記エントロピー符号化により得られた音声信号のデータ量が、予め設定された目標データ量より大きいか否かを判定する判定部と、
前記判定部により、前記エントロピー符号化により得られた音声信号のデータ量が前記目標データ量より大きいと判定された場合、前記ベクトル量子化により得られた音声信号のうち、エネルギーが所定値以下の周波数帯域の音声信号を削除するデータ削除部と、
を備え、
前記エントロピー符号化部は前記データ削除部で削除されなかった音声信号を再度符号化することを特徴とする音声処理装置。 A framing unit that divides the input audio signal into frames;
For each frame obtained by the framing unit, a level adjusting unit that adjusts the level of the audio signal based on the maximum value of the amplitude of the audio signal included in the frame;
A frequency conversion unit that performs frequency conversion on the audio signal whose level is adjusted by the level adjustment unit by dividing the signal of one frame into a plurality of blocks;
A vector quantization unit that performs vector quantization by collectively vectorizing the coefficients of the same frequency band for the frequency conversion coefficients for one frame obtained from each block by the frequency conversion,
An entropy encoding unit that performs entropy encoding on the speech signal obtained by the vector quantization;
A determination unit that determines whether or not a data amount of the audio signal obtained by the entropy encoding is larger than a preset target data amount;
When the determination unit determines that the data amount of the speech signal obtained by the entropy encoding is larger than the target data amount, the energy of the speech signal obtained by the vector quantization is equal to or less than a predetermined value. A data deletion unit for deleting frequency band audio signals;
With
The speech processing apparatus, wherein the entropy encoding unit re-encodes a speech signal that has not been deleted by the data deletion unit .
低域周波数用の音声パターンを示すベクトルを格納した第2のテーブルと、を備え、
前記ベクトル量子化部は、前記第1のテーブルと前記第2のテーブルを用いてベクトル量子化を行うことを特徴とする請求項1又は2に記載の音声処理装置。 A first table storing vectors indicating sound patterns for high-frequency,
A second table storing vectors indicating voice patterns for low frequency,
The speech processing apparatus according to claim 1, wherein the vector quantization unit performs vector quantization using the first table and the second table.
前記ベクトル量子化部は、前記テーブルを用いてベクトル量子化を行うことを特徴とする請求項1又は2に記載の音声処理装置。 For each frequency band, it has a table that stores a vector indicating the voice pattern,
The speech processing apparatus according to claim 1, wherein the vector quantization unit performs vector quantization using the table.
フレーム毎に、フレームに含まれる音声信号の振幅の最大値に基づいて音声信号のレベルを調整し、
レベルが調整された音声信号に対し、1フレームの信号について複数のブロックに分けて周波数変換を施し、
前記周波数変換により各ブロックから得られた1フレーム分の周波数変換係数について、同一周波数帯域の係数をまとめてベクトル化して、ベクトル量子化を施し、
前記ベクトル量子化により得られた音声信号に対し、エントロピー符号化を施し、
前記エントロピー符号化により得られた音声信号のデータ量が、予め設定された目標データ量より大きいか否かを判定し、前記エントロピー符号化により得られた音声信号のデータ量が前記目標データ量より大きいと判定された場合、前記ベクトル量子化により得られた音声信号のうち、エネルギーが所定値以下の周波数帯域の音声信号を削除して、削除されなかった音声信号を再度符号化することを特徴とする音声符号化方法。 Divide the input audio signal into frames,
For each frame, adjust the level of the audio signal based on the maximum amplitude of the audio signal included in the frame,
The audio signal whose level is adjusted is divided into a plurality of blocks for one frame signal, and frequency conversion is performed.
For the frequency conversion coefficients for one frame obtained from each block by the frequency conversion, the coefficients of the same frequency band are vectorized together and subjected to vector quantization,
To the audio signal obtained by the vector quantization, and facilities entropy coding,
It is determined whether the data amount of the audio signal obtained by the entropy encoding is larger than a preset target data amount, and the data amount of the audio signal obtained by the entropy encoding is larger than the target data amount. If it is determined that the signal is large, the audio signal in the frequency band whose energy is equal to or lower than a predetermined value is deleted from the audio signal obtained by the vector quantization, and the audio signal that has not been deleted is encoded again. A speech encoding method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003365983A JP4009781B2 (en) | 2003-10-27 | 2003-10-27 | Speech processing apparatus and speech coding method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003365983A JP4009781B2 (en) | 2003-10-27 | 2003-10-27 | Speech processing apparatus and speech coding method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005128404A JP2005128404A (en) | 2005-05-19 |
JP4009781B2 true JP4009781B2 (en) | 2007-11-21 |
Family
ID=34644473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003365983A Expired - Lifetime JP4009781B2 (en) | 2003-10-27 | 2003-10-27 | Speech processing apparatus and speech coding method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4009781B2 (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7240001B2 (en) | 2001-12-14 | 2007-07-03 | Microsoft Corporation | Quality improvement techniques in an audio encoder |
US7562021B2 (en) * | 2005-07-15 | 2009-07-14 | Microsoft Corporation | Modification of codewords in dictionary used for efficient coding of digital media spectral data |
JP4548348B2 (en) * | 2006-01-18 | 2010-09-22 | カシオ計算機株式会社 | Speech coding apparatus and speech coding method |
JP5098458B2 (en) * | 2007-06-20 | 2012-12-12 | カシオ計算機株式会社 | Speech coding apparatus, speech coding method, and program |
US7885819B2 (en) | 2007-06-29 | 2011-02-08 | Microsoft Corporation | Bitstream syntax for multi-process audio decoding |
JP4978539B2 (en) * | 2008-04-07 | 2012-07-18 | カシオ計算機株式会社 | Encoding apparatus, encoding method, and program. |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2914974B2 (en) * | 1987-02-27 | 1999-07-05 | 株式会社日立製作所 | Variable rate audio signal transmission method and transmission system |
JPH0365822A (en) * | 1989-08-04 | 1991-03-20 | Fujitsu Ltd | Vector quantization coder and vector quantization decoder |
JP2811810B2 (en) * | 1989-10-05 | 1998-10-15 | ソニー株式会社 | Signal encoding device |
JP3193515B2 (en) * | 1993-03-11 | 2001-07-30 | 株式会社日立国際電気 | Voice coded communication system and apparatus therefor |
JP3131542B2 (en) * | 1993-11-25 | 2001-02-05 | シャープ株式会社 | Encoding / decoding device |
JPH07183854A (en) * | 1993-12-24 | 1995-07-21 | Matsushita Electric Ind Co Ltd | Sound compressed data editing device |
JP3159012B2 (en) * | 1995-10-26 | 2001-04-23 | 日本ビクター株式会社 | Audio signal encoding device and decoding device |
JP3132456B2 (en) * | 1998-03-05 | 2001-02-05 | 日本電気株式会社 | Hierarchical image coding method and hierarchical image decoding method |
JP4618823B2 (en) * | 1998-10-22 | 2011-01-26 | ソニー株式会社 | Signal encoding apparatus and method |
JP3557164B2 (en) * | 2000-09-18 | 2004-08-25 | 日本電信電話株式会社 | Audio signal encoding method and program storage medium for executing the method |
JP2002202799A (en) * | 2000-10-30 | 2002-07-19 | Fujitsu Ltd | Voice code conversion apparatus |
-
2003
- 2003-10-27 JP JP2003365983A patent/JP4009781B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2005128404A (en) | 2005-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5048697B2 (en) | Encoding device, decoding device, encoding method, decoding method, program, and recording medium | |
CN1905010B (en) | Apparatus and method for encoding audio data, and apparatus and method for decoding audio data | |
US7599833B2 (en) | Apparatus and method for coding residual signals of audio signals into a frequency domain and apparatus and method for decoding the same | |
KR100840439B1 (en) | Audio coding apparatus and audio decoding apparatus | |
KR100904605B1 (en) | Audio coding apparatus, audio decoding apparatus, audio coding method and audio decoding method | |
JP3636094B2 (en) | Signal encoding apparatus and method, and signal decoding apparatus and method | |
JP4978539B2 (en) | Encoding apparatus, encoding method, and program. | |
JP2004252462A (en) | Block-constrained trellis coded quantization method and quantization method and system for line spectrum frequency modulus employing the trellis coded quatization method in speech encoding system | |
JP4009781B2 (en) | Speech processing apparatus and speech coding method | |
JP3344944B2 (en) | Audio signal encoding device, audio signal decoding device, audio signal encoding method, and audio signal decoding method | |
JP4259401B2 (en) | Speech processing apparatus and speech coding method | |
JP2006293400A (en) | Encoding device and decoding device | |
JP5539992B2 (en) | RATE CONTROL DEVICE, RATE CONTROL METHOD, AND RATE CONTROL PROGRAM | |
JP4626261B2 (en) | Speech coding apparatus and speech coding method | |
JP4054919B2 (en) | Speech processing apparatus and speech coding method | |
JP2005128401A (en) | Speech processor and speech encoding method | |
JP5451603B2 (en) | Digital audio signal encoding | |
JP4373693B2 (en) | Hierarchical encoding method and hierarchical decoding method for acoustic signals | |
JPH05265487A (en) | High-efficiency encoding method | |
JP2002091497A (en) | Audio signal encoding method and decoding methods, and storage medium stored with program to execute these methods | |
JP2712925B2 (en) | Audio processing device | |
JP3453116B2 (en) | Audio encoding method and apparatus | |
JP4024185B2 (en) | Digital data encoding device | |
JP2006126592A (en) | Voice coding device and method, and voice decoding device and method | |
JP3496618B2 (en) | Apparatus and method for speech encoding / decoding including speechless encoding operating at multiple rates |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050526 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070313 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070419 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070522 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070705 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070807 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070820 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4009781 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100914 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100914 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110914 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120914 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130914 Year of fee payment: 6 |
|
EXPY | Cancellation because of completion of term |