JP3134335B2 - Digital signal encoding method and digital signal decoding device - Google Patents

Digital signal encoding method and digital signal decoding device

Info

Publication number
JP3134335B2
JP3134335B2 JP03091548A JP9154891A JP3134335B2 JP 3134335 B2 JP3134335 B2 JP 3134335B2 JP 03091548 A JP03091548 A JP 03091548A JP 9154891 A JP9154891 A JP 9154891A JP 3134335 B2 JP3134335 B2 JP 3134335B2
Authority
JP
Japan
Prior art keywords
block
floating
digital signal
band
circuit
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
Application number
JP03091548A
Other languages
Japanese (ja)
Other versions
JPH04302540A (en
Inventor
健三 赤桐
京弥 筒井
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP03091548A priority Critical patent/JP3134335B2/en
Priority to EP92302616A priority patent/EP0506394A2/en
Priority to KR1019920005038A priority patent/KR100313977B1/en
Publication of JPH04302540A publication Critical patent/JPH04302540A/en
Priority to US08/159,122 priority patent/US5490170A/en
Application granted granted Critical
Publication of JP3134335B2 publication Critical patent/JP3134335B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (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)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】本発明は、入力ディジタル信号に
対していわゆるブロックフローティング処理を行うよう
なディジタル信号符号化方法及びディジタル信号復号化
装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a digital signal encoding method and a digital signal decoding apparatus for performing so-called block floating processing on an input digital signal.

【0002】[0002]

【従来の技術】オーディオ信号等をビット圧縮して符号
化する技術の一つとして、入力データを所定ワード数毎
にブロック化し、このブロック単位でフローティング処
理を行うような、いわゆるブロックフローティング技術
が知られている。このブロックフローティング技術は、
ブロック内の各ワードの絶対値の内で最も大きいもの
(最大絶対値)を探し出し、この最大絶対値を当該ブロ
ック内の全ワードに対して共通のフローティング係数と
してフローティング処理を行うものである。
2. Description of the Related Art A so-called block floating technique is known as one of techniques for bit-compressing and encoding an audio signal or the like, in which input data is divided into blocks of a predetermined number of words and floating processing is performed in units of blocks. Have been. This block floating technology,
The largest value (maximum absolute value) among the absolute values of the words in the block is searched for, and the maximum absolute value is subjected to floating processing as a common floating coefficient for all the words in the block.

【0003】また、時間軸上の信号を周波数軸上の信号
に変換(いわゆる直交変換)して符号化する直交変換符
号化も知られている。この直交変換としては、例えばオ
ーディオPCMデータを所定ワード単位でブロック化
し、各ブロック毎に高速フーリエ変換(FFT)処理を
行うようなものがある。
[0003] Also, orthogonal transform coding for converting a signal on a time axis into a signal on a frequency axis (so-called orthogonal transform) and coding the signal is known. As the orthogonal transform, for example, there is a method in which audio PCM data is divided into blocks in a predetermined word unit, and a fast Fourier transform (FFT) process is performed for each block.

【0004】[0004]

【発明が解決しようとする課題】ところで、このような
直交変換のための演算処理は、多タップのFIR(有限
インパルス応答)フィルタにより実行されることが多
く、このとき、係数乗算処理や総和をとる演算等があり
桁数が増大することから、オーバーフローを防止するた
めに入力データの桁数よりも例えば数桁程度大きい演算
桁数を見込んでおくことが必要とされる。このような多
桁の演算には、高機能のDSP(ディジタル信号処理ユ
ニット)等を要し、時間もかかることから、より簡単な
直交変換が望まれている。
The arithmetic processing for such an orthogonal transformation is often performed by a multi-tap FIR (finite impulse response) filter. Since the number of digits increases due to the calculation to be performed, it is necessary to allow for an arithmetic digit number that is, for example, several digits larger than the digit number of the input data in order to prevent overflow. Such a multi-digit operation requires a high-performance DSP (digital signal processing unit) and the like, and takes a long time. Therefore, simpler orthogonal transformation is desired.

【0005】そこで、直交変換前に入力データに対して
上記ブロックフローティング処理を施してビット圧縮す
ることにより、直交変換演算データの桁数を予め減らし
ておくことが考えられている。
[0005] Therefore, it has been considered that the number of digits of the orthogonal transform operation data is reduced in advance by performing the above-mentioned block floating process on the input data before the orthogonal transform and performing bit compression.

【0006】また、上記直交変換のためのブロックの長
さを、入力信号に応じて適応的に変化させることが考え
られている。これは、特に入力信号を予めいくつか(例
えば3つ程度)の帯域に分割し、各帯域毎に直交変換を
行うような場合に、分割された各帯域の信号の時間的変
動の大小やパターン等に応じてブロック長を変化させる
方がより効率的な符号化が行えるからである。
Further, it has been considered that the length of the block for the orthogonal transform is adaptively changed according to an input signal. This is especially true when the input signal is divided into several (for example, about three) bands in advance, and orthogonal transform is performed for each band. This is because, if the block length is changed according to, for example, more efficient encoding can be performed.

【0007】ここで、上述したような直交変換前にブロ
ックフローティングを施す技術と、入力信号に応じて適
応的にブロック長を変化させる技術とを組合せて符号化
を行う場合には、それぞれの処理が独立に必要とされる
ことから、処理量が増大するという欠点がある。
Here, when encoding is performed by combining the above-described technique of performing block floating before the orthogonal transformation and the technique of adaptively changing the block length in accordance with an input signal, the respective processing is performed. Are required independently of each other, so that there is a disadvantage that the processing amount increases.

【0008】具体的には、例えば図11に示すように、
大きめのブロックBLを予めいくつかに分割(例えば4
分割)して小ブロックBLS1、BLS2、BLS3、BLS4
を準備しておく。次に、図12のステップS1に示すよ
うに、これらの小ブロックBLS1、BLS2、BLS3、B
S4の各エネルギを、可変長のブロックサイズ(ブロッ
ク長)決定のために求め、次のステップS2でこれらの
各ブロックのエネルギに応じてブロックサイズを決定す
る。次に、ステップS3で決定されたブロック内での最
大絶対値を求め、この最大絶対値に基づいてブロックフ
ローティング処理を施す。そして、次のステップS4
で、このブロックに対する上記FFT等の直交変換を行
う。
Specifically, for example, as shown in FIG.
A large block BL is divided into several parts in advance (for example, 4
(Divided) into small blocks BL S1 , BL S2 , BL S3 , BL S4
Be prepared. Next, as shown in step S1 of FIG. 12, these small blocks BL S1 , BL S2 , BL S3 , B
The energies of L S4 are obtained for determining a variable-length block size (block length), and the block size is determined in the next step S2 according to the energy of each of these blocks. Next, a maximum absolute value in the block determined in step S3 is obtained, and a block floating process is performed based on the maximum absolute value. Then, the next step S4
Then, the orthogonal transform such as the FFT is performed on this block.

【0009】このような処理手順においては、ブロック
サイズ(ブロック長)決定のための各小ブロックB
S1、BLS2、BLS3、BLS4毎のエネルギ算出と、ブ
ロックフローティング処理のための各ブロックの最大絶
対値算出が必要とされ、処理量やいわゆるマイクロプロ
グラムで処理する際のステップ数が増大する。
In such a processing procedure, each small block B for determining the block size (block length) is used.
An energy calculation every L S1, BL S2, BL S3 , BL S4, the maximum absolute value calculation of each block for block floating processing is required, increase the number of steps in processing in the processing amount and the so-called microprogram I do.

【0010】本発明は、このような実情に鑑みて提案さ
れたものであり、直交変換前にブロックフローティング
を施すと共に該ブロック長を入力信号に応じて適応的に
可変するような場合に、処理量を低減可能なディジタル
信号符号化方法及びディジタル信号復号化装置を提供す
ることを目的とする。
[0010] The present invention has been proposed in view of the above circumstances, and is intended to be applied to a case where block floating is performed before orthogonal transformation and the block length is adaptively varied according to an input signal. It is an object of the present invention to provide a digital signal encoding method and a digital signal decoding device capable of reducing the amount.

【0011】[0011]

【課題を解決するための手段】本発明に係るディジタル
信号符号化方法は、入力ディジタル信号をブロック化し
てフローティング処理した後に直交変換を施すようなデ
ィジタル信号符号化方法であって、上記ブロックの長さ
を可変とすると共に、上記ブロックを分割した小ブロッ
ク毎に各小ブロック内のワードを演算して得られた値に
基づく指標を求め、上記可変ブロックの長さ及びブロッ
クフローティングのフローティング係数を同じ上記指標
に基づいて決定することにより、上述の課題を解決す
る。また、本発明に係るディジタル信号復号化装置は、
入力ディジタル信号をブロック化してフローティング処
理された後に直交変換が施されたディジタル信号を復号
化する装置であって、上記ブロックの長さを可変とさ
れ、上記ブロックを分割した小ブロック毎に各小ブロッ
ク内のワードを演算して得られた値に基づく指標が求め
られ、上記可変ブロックの長さ及びブロックフローティ
ングのフローティング係数が同じ上記指標に基づいて決
定され、復号化の際に、上記同一指標に基づいて可変ブ
ロックの長さ及びブロックフローティング係数を決定す
ることにより、上述の課題を解決する。
A digital signal encoding method according to the present invention is a digital signal encoding method in which an input digital signal is divided into blocks, subjected to floating processing, and then subjected to orthogonal transformation. In addition to making the variable variable, an index based on a value obtained by calculating a word in each small block is obtained for each small block obtained by dividing the block, and the length of the variable block and the floating coefficient of block floating are the same. The above-described problem is solved by determining based on the index. Further, the digital signal decoding device according to the present invention,
An apparatus for decoding a digital signal that has been subjected to an orthogonal transformation after an input digital signal is divided into blocks and subjected to floating processing, wherein the length of the block is variable, and each block is divided into small blocks. An index based on a value obtained by calculating a word in the block is obtained, and the length of the variable block and the floating coefficient of block floating are determined based on the same index. The above-described problem is solved by determining the length of the variable block and the block floating coefficient based on the following equation.

【0012】ここで、上記指標の一例としては、ブロッ
ク内の最大絶対値を挙げることができる。この場合、予
め最短長の小ブロックに仮分割しておき、各小ブロック
毎に最大絶対値を求め、これらの最大絶対値に基づい
て、最適ブロック長及び該最適長さのブロック内での最
大絶対値を決定する。
Here, as an example of the index, a maximum absolute value in a block can be cited. In this case, the block is provisionally divided in advance into the shortest small blocks, the maximum absolute value is obtained for each small block, and based on these maximum absolute values, the optimum block length and the maximum length within the block of the optimum length are determined. Determine the absolute value.

【0013】[0013]

【作用】ブロック長決定とフローティング係数の決定が
同じ指標に基づいて行われるため、処理量あるいはステ
ップ数を少なくできる。
Since the determination of the block length and the determination of the floating coefficient are performed based on the same index, the processing amount or the number of steps can be reduced.

【0014】[0014]

【実施例】以下、本発明の一実施例について図面を参照
しながら説明する。本発明を適用可能なディジタル信号
符号化装置は、オーディオPCM信号等の入力ディジタ
ル信号を、帯域分割符号化(SBC)、適応変換符号化
(ATC)及び適応ビット割当て(APC−AB)の各
技術を用いて高能率符号化するものである。具体的に、
図1に示す本実施例装置では、入力ディジタル信号を複
数の周波数帯域に分割すると共に、高い周波数帯域ほど
バンド幅を広く選定し、各周波数帯域毎に直交変換を行
って、得られた周波数軸のスペクトルデータを、後述す
る人間の聴覚特性を考慮したいわゆる臨界帯域幅(クリ
ティカルバンド)毎に適応的にビット割当して符号化し
ている。さらに、本発明実施例においては、直交変換の
前に入力信号に応じて適応的にブロックサイズ(ブロッ
ク長)を変化させると共に、該ブロック単位でフローテ
ィング処理を行っている。
An embodiment of the present invention will be described below with reference to the drawings. A digital signal coding apparatus to which the present invention can be applied converts an input digital signal such as an audio PCM signal into band division coding (SBC), adaptive conversion coding (ATC), and adaptive bit allocation (APC-AB). To perform high-efficiency coding. Specifically,
In the apparatus of the present embodiment shown in FIG. 1, the input digital signal is divided into a plurality of frequency bands, the higher the frequency band, the wider the bandwidth is selected, and the orthogonal transform is performed for each frequency band. Are adaptively assigned bits for each so-called critical bandwidth (critical band) in consideration of human auditory characteristics described later and are encoded. Further, in the embodiment of the present invention, before the orthogonal transform, the block size (block length) is adaptively changed according to the input signal, and the floating process is performed in units of the block.

【0015】すなわち、図1において、入力端子10に
は例えば0〜20kHzのオーディオPCM信号が供給さ
れている。この入力信号は、例えばいわゆるQMFフィ
ルタ等の帯域分割フィルタ11により0〜10kHz帯域
と10k〜20kHz帯域とに分割され、0〜10kHz帯
域の信号は同じくいわゆるQMFフィルタ等の帯域分割
フィルタ12により0〜5kHz帯域と5k〜10kHz帯
域とに分割される。帯域分割フィルタ11からの10k
〜20kHz帯域の信号は直交変換回路である高速フーリ
エ変換(DFT)回路13に送られ、帯域分割フィルタ
12からの5k〜10kHz帯域の信号はDFT回路14
に送られ、帯域分割フィルタ12からの0〜5kHz帯域
の信号はDFT回路15に送られることにより、それぞ
れDFT処理される。
That is, in FIG. 1, an input terminal 10 is supplied with an audio PCM signal of, for example, 0 to 20 kHz. This input signal is divided into a band of 0 to 10 kHz and a band of 10 to 20 kHz by a band division filter 11 such as a so-called QMF filter, and a signal of the band 0 to 10 kHz is similarly divided by a band division filter 12 such as a so-called QMF filter. It is divided into a 5 kHz band and a 5 kHz to 10 kHz band. 10k from band division filter 11
The signal in the band of 2020 kHz is sent to a fast Fourier transform (DFT) circuit 13 which is an orthogonal transform circuit, and the signal in the band of 5 kHz to 10 kHz from the band division filter 12 is
, And the signals in the band of 0 to 5 kHz from the band division filter 12 are sent to the DFT circuit 15 to be subjected to DFT processing.

【0016】ところで、本発明実施例においては、上記
直交変換の際の演算量を低減するために、直交変換前の
時間軸上の入力データをブロックフローティング処理し
てビット圧縮し、直交変換後に上記ブロックフローティ
ングを解除している。
By the way, in the embodiment of the present invention, in order to reduce the amount of calculation at the time of the orthogonal transformation, input data on the time axis before the orthogonal transformation is subjected to block floating processing and bit compression, and after the orthogonal transformation, Block floating is released.

【0017】すなわち、図1において、帯域分割フィル
タ11、12から得られた各帯域の時間軸上のデータ
を、ブロックフローティング処理回路16に供給して、
前記図11に示したような各ブロックBLを単位として
ブロックフローティング処理を行わせており、各直交変
換回路(図1の例ではDFT、すなわち離散フーリエ変
換回路)13、14、15にてこのようなブロックフロ
ーティング処理されたデータに対して直交変換処理の演
算を施した後、フローティング解除回路17により上記
ブロックフローティングを解除している。このフローテ
ィング解除の際には、ブロックフローティング処理回路
16からのフローティング情報が用いられている。この
ようなブロックフローティング処理の際のフローティン
グ係数を求める場合にも、前述したようなブロック内の
各ワードの絶対値の論理和をとることができる。
That is, in FIG. 1, the data on the time axis of each band obtained from the band division filters 11 and 12 is supplied to the block floating processing circuit 16.
Block floating processing is performed for each block BL as shown in FIG. 11 as a unit, and each orthogonal transform circuit (DFT in the example of FIG. 1, that is, a discrete Fourier transform circuit) 13, 14, 15 performs such a process. After performing an orthogonal transformation operation on the data subjected to the block floating processing, the floating block is released by the floating releasing circuit 17. In releasing the floating, the floating information from the block floating processing circuit 16 is used. Also when calculating the floating coefficient in such a block floating process, the logical sum of the absolute value of each word in the block as described above can be obtained.

【0018】ここで、各DFT回路13、14、15に
供給する各帯域毎のブロックについての標準的な入力信
号に対する具体例を図2に示す。この図2の具体例にお
いては、高域側ほど周波数帯域を広げると共に時間分解
能を高め(ブロック長を短くし)ている。すなわち、低
域側の0〜5kHz帯域の信号に対しては1ブロックBL
L を例えば1024サンプルとし、また中域の5k〜1
0kHz帯域の信号に対しては、上記低域側の長さTBL
ブロックBLL のそれぞれ半分の長さTBL/2のブロッ
クBLM1、BLM2でブロック化し、高域側の10k〜2
0kHz帯域の信号に対しては、上記低域側のブロックB
L のそれぞれ1/4の長さTBL/4のブロックB
H1、BLH2、BLH3及びBLH4でブロック化してい
る。なお、入力信号として0〜22kHzの帯域を考慮す
る場合には、低域が0〜5.5kHz、中域が5.5k〜
11kHz、高域が11k〜22kHzとなる。
FIG. 2 shows a specific example of a standard input signal for a block for each band supplied to each of the DFT circuits 13, 14, and 15. In the specific example of FIG. 2, the frequency band is widened and the time resolution is increased (the block length is shortened) toward the higher frequency side. That is, one block BL is applied to a signal in the 0 to 5 kHz band on the low frequency side.
Let L be 1024 samples, for example, and 5k-1
The signal in the 0 kHz band is divided into blocks BL M1 and BL M2 each having half the length T BL / 2 of the block BL L having the length T BL on the low frequency side, and the blocks 10 M to 2 M on the high frequency side.
For signals in the 0 kHz band, the block B on the lower side
Block B of length TBL / 4 each of 1/4 of L L
It is blocked by L H1 , BL H2 , BL H3 and BL H4 . When a band of 0 to 22 kHz is considered as an input signal, the low band is 0 to 5.5 kHz and the middle band is 5.5 kHz to 5.5 kHz.
11 kHz and the high frequency range is 11 to 22 kHz.

【0019】ただし、本発明実施例においては、後述す
るように、入力信号に応じてブロックサイズ(ブロック
長)を可変としており、このブロックサイズの決定は、
ブロックフローティングのフローティング係数を決定す
るためにも用いられる最大絶対値に基づいて行うように
している。
However, in the embodiment of the present invention, as will be described later, the block size (block length) is made variable in accordance with the input signal.
This is performed based on the maximum absolute value that is also used to determine the floating coefficient of block floating.

【0020】再び図1において、各DFT回路13、1
4、15にてDFT処理されて得られた周波数軸上のス
ペクトルデータあるいはDFT係数データは、上記フロ
ーティング解除回路17にて上記ブロックフローティン
グ処理が解除された後、いわゆる臨界帯域(クリティカ
ルバンド)毎にまとめられて適応ビット割当符号化回路
18に送られている。このクリティカルバンドとは、人
間の聴覚特性を考慮して分割された周波数帯域であり、
ある純音の周波数近傍の同じ強さの狭帯域バンドノイズ
によって当該純音がマスクされるときのそのノイズの持
つ帯域のことである。このクリティカルバンドは、高域
ほど帯域幅が広くなっており、上記0〜20kHzの全周
波数帯域は例えば25のクリティカルバンドに分割され
ている。
Referring again to FIG. 1, each DFT circuit 13, 1
The spectrum data or the DFT coefficient data on the frequency axis obtained by the DFT processing at 4 and 15 are released for each so-called critical band after the floating processing is released by the floating release circuit 17. The sum is sent to the adaptive bit allocation coding circuit 18. This critical band is a frequency band divided in consideration of human hearing characteristics,
This is a band of a certain pure tone when the pure tone is masked by a narrow band noise having the same strength near the frequency of the pure tone. The bandwidth of this critical band increases as the frequency increases, and the entire frequency band of 0 to 20 kHz is divided into, for example, 25 critical bands.

【0021】許容雑音算出回路20は、上記クリティカ
ルバンド毎に分割されたスペクトルデータに基づき、い
わゆるマスキング効果等を考慮した各クリティカルバン
ド毎の許容ノイズ量を求め、この許容ノイズ量と各クリ
ティカルバンド毎のエネルギあるいはピーク値等に基づ
いて、各クリティカルバンド毎に割当ビット数を求め
て、適応ビット割当符号化回路18により各クリティカ
ルバンド毎に割り当てられたビット数に応じて各スペク
トルデータ(あるいはDFT係数データ)を再量子化す
るようにしている。このようにして符号化されたデータ
は、出力端子19を介して取り出される。
The allowable noise calculating circuit 20 calculates an allowable noise amount for each critical band in consideration of a so-called masking effect or the like based on the spectrum data divided for each critical band. The number of bits assigned to each critical band is determined based on the energy or peak value of the spectrum data, and each spectrum data (or DFT coefficient) is determined according to the number of bits assigned to each critical band by the adaptive bit assignment coding circuit 18. Data) is requantized. The data thus encoded is taken out via the output terminal 19.

【0022】ところで、上記帯域分割フィルタ11、1
2により分割された各周波数帯域毎にそれぞれ時間軸方
向でブロック化してフローティング処理した後直交変換
する際の各ブロックの長さ(ブロックサイズ)は、入力
信号に応じて適応的に切り換えている。
Incidentally, the band division filters 11, 1
The length (block size) of each block at the time of orthogonal transform after blocking and floating processing in the time axis direction for each frequency band divided by 2 is adaptively switched according to the input signal.

【0023】すなわち、図3に示すように、時間幅TBL
の大ブロックBLと、ブロック長を半分のTBL/2にし
たブロックBLR1、BLR2との間でブロックサイズ切換
を行う場合について説明すると、先ず、小さい方のブロ
ックBLR1、BLR2についての各ブロック内最大絶対値
MXR1、MXR2を求める。次に、これらの最大絶対値M
R1、MXR2を比較し、 MXR2/MXR1≧20 ・・・・(1) となるときは、小さい方のブロックBLR1、BLR2のサ
イズに切り換える。それ以外のときは、大きい方のブロ
ックBLのサイズを選択する。
[0023] That is, as shown in FIG. 3, the time width T BL
The case where the block size is switched between the large block BL and the block BL R1 and BL R2 whose block length is halved to T BL / 2 will be described. First, the smaller block BL R1 and BL R2 will be described. The maximum absolute values MX R1 and MX R2 in each block are obtained. Next, these maximum absolute values M
X R1 , MX R2 are compared, and when MX R2 / MX R1 ≧ 20 (1), the size of the smaller block BL R1 , BL R2 is switched. Otherwise, the size of the larger block BL is selected.

【0024】次に、図4に示すように、時間幅TBLの大
ブロックBLと、ブロック長を半分のTBL/2にした中
程度のブロックBLR1、BLR2と、ブロック長をさらに
半分のTBL/4にした小ブロックBLS1、BLS2、BL
S3、BLS4との間でブロックサイズ切換を行う場合につ
いて説明する。先ず、各小ブロックBLS1、BLS2、B
S3、BLS4の各ブロック内最大絶対値MXS1、M
S2、MXS3、MXS4を求める。これらの4つの最大絶
対値MXS1、MXS2、MXS3、MXS4について、 MXSn+1/MXSn≧20 ・・・・(2) ただし、n=1,2,3 となるときは、長さTBL/4の小ブロックBLS1、BL
S2、BLS3、BLS4のブロックサイズを選択する。この
(2)式が満足されないときには、上記中程度のブロッ
クBLR1、BLR2の各ブロック内最大絶対値MXR1、M
R2を求め、 MXR2/MXR1≧10 ・・・・(3) が満足されるか否かを判別する。この(3)式が満足さ
れるときには、長さTBL/2の中程度のブロックB
R1、BLR2のブロックサイズを選択する。これら以外
のとき、すなわち、 MXR2/MXR1<10 ・・・・(4) となるときには、長さTBLの大ブロックBLのブロック
サイズを選択する。
Next, as shown in FIG. 4, a large block BL having a time width TBL , medium blocks BL R1 and BL R2 whose block lengths are reduced to half T BL / 2, and a block length further reduced by half. Small blocks BL S1 , BL S2 , BL made T BL / 4
The case where the block size is switched between S3 and BL S4 will be described. First, each small block BL S1 , BL S2 , B
Maximum absolute values MX S1 and M in each block of L S3 and BL S4
X S2 , MX S3 , and MX S4 are obtained. For these four maximum absolute values MX S1 , MX S2 , MX S3 , and MX S4 , MX Sn + 1 / MX Sn ≧ 20 (2) where n = 1, 2, 3 Small blocks BL S1 , BL of length T BL / 4
The block size of S2 , BL S3 and BL S4 is selected. When the expression (2) is not satisfied, the maximum absolute values MX R1 , M in each block of the above-mentioned medium blocks BL R1 , BL R2
X R2 is obtained, and it is determined whether or not MX R2 / MX R1 ≧ 10 (3) is satisfied. When this equation (3) is satisfied, a medium block B of length T BL / 2
The block size of L R1 and BL R2 is selected. In other cases, that is, when MX R2 / MX R1 <10 (4), the block size of the large block BL having the length T BL is selected.

【0025】ここで図5は、入力ディジタル信号の各ワ
ードのデータ入力から直交変換までの処理をソフトウェ
ア的に実現する際の手順を示している。この図5におい
て、先ずステップS11では、各ワードの絶対値を算出
している。次のステップS12では、最大絶対値を検出
する。この最大絶対値を検出する代わりに、論理和演算
を行ってもよい。次のステップS13では、1ブロック
内の全ワードに対しての最大絶対値検出又は論理和演算
が終了したか否かを判別している。このブロックは、選
択可能な各ブロックサイズのブロックである。ステップ
S13の判別により、全ワードの論理和演算が終了して
いない(NO)ときはステップS11に戻り、全ワード
の論理和演算が終了した(YES)ときは次のステップ
S14に進んでいる。
FIG. 5 shows a procedure for realizing the processing from data input of each word of the input digital signal to orthogonal transformation by software. In FIG. 5, first, in step S11, the absolute value of each word is calculated. In the next step S12, the maximum absolute value is detected. Instead of detecting the maximum absolute value, a logical sum operation may be performed. In the next step S13, it is determined whether or not the detection of the maximum absolute value or the OR operation has been completed for all the words in one block. This block is a block of each selectable block size. If it is determined in step S13 that the OR operation of all words has not been completed (NO), the process returns to step S11. If the OR operation of all words has been completed (YES), the process proceeds to the next step S14.

【0026】ここで、上記ステップS12でブロック内
の絶対値の論理和をとる場合には、ブロック内の最大絶
対値を検出する処理が不要となり、論理和演算だけの単
純な処理によりフローティング係数(シフト量)を求め
ることができる。
Here, when the logical sum of the absolute values in the block is calculated in step S12, the process of detecting the maximum absolute value in the block becomes unnecessary, and the floating coefficient ( Shift amount).

【0027】ステップS14及びステップS15は、フ
ローティング係数としてのシフト量の検出動作に相当す
るものであり、ステップS14で左シフトし、ステップ
S15でシフト結果の最上位ビット(MSB)が“1”
となることを検出したか否かを判別している。このステ
ップS15でMSBに“1”が検出されない(NO)と
きはステップS14に戻り、“1”が検出された(YE
S)ときは次のステップS16に進む。
Steps S14 and S15 correspond to the operation of detecting the shift amount as a floating coefficient. In step S14, the left shift is performed. In step S15, the most significant bit (MSB) of the shift result is "1".
Is determined. If "1" is not detected in the MSB in step S15 (NO), the process returns to step S14, and "1" is detected (YE).
At S), the process proceeds to the next step S16.

【0028】ステップS16では、上記各ブロックサイ
ズの全ブロックについての最大絶対値(又はシフト量)
を得たか否かを判別し、NOのときには上記ステップS
11に戻り、YESのとき次のステップS17に進む。
ステップS17においては、上記(1)式、あるいは上
記(2)〜(4)に基づいてブロックサイズを決定し
て、次のステップS18でこの決定されたブロックの最
大絶対値を求める。次のステップS19で各ワードを正
規化(フローティング処理)し、ステップS20で上記
決定された1ブロック内の全ワードを正規化したか否か
を判別しており、NOのときはステップS19に戻り、
YESのときは次のステップS21に進んでいる。ステ
ップS21では、例えば上記中程度のブロックBLR1
BLR2や、上記小ブロックBLS1、BLS2、BLS3、B
S4等のブロックサイズが選択されたとき、大ブロック
BLの範囲内の全てのブロックについての処理が終了し
たか否かを判別しており、NOのときはステップS11
に戻り、YESのときは次のステップS22に進んでい
る。このステップS22で直交変換を行った後、処理を
終了している。
In step S16, the maximum absolute value (or shift amount) for all blocks of each block size described above.
Is determined, and if NO, the above-described step S
Returning to step S11, if YES, the process proceeds to the next step S17.
In step S17, the block size is determined based on the above equation (1) or (2) to (4), and in the next step S18, the maximum absolute value of the determined block is obtained. In the next step S19, each word is normalized (floating process), and in step S20, it is determined whether or not all the words in the determined one block have been normalized. If NO, the process returns to step S19. ,
If YES, the process proceeds to the next step S21. In step S21, for example, the middle block BL R1 ,
BL R2 and the above-mentioned small blocks BL S1 , BL S2 , BL S3 , B
When the block size, such as L S4 is selected, and determines whether processing for all the blocks has been completed within the large block BL, and if NO step S11
And returns to step S22 if YES. After performing the orthogonal transformation in this step S22, the process ends.

【0029】このような実施例によれば、各ブロック毎
に求められた最大絶対値(あるいは論理和出力)を、ブ
ロックフローティング係数及びブロックサイズ決定に共
通して用いることにより、処理量が低減でき、例えばい
わゆるマイクロプログラムにて処理を行わせる場合のス
テップ数を減らすことができる。
According to this embodiment, the processing amount can be reduced by using the maximum absolute value (or OR output) obtained for each block commonly for determining the block floating coefficient and the block size. For example, the number of steps when processing is performed by a so-called microprogram can be reduced.

【0030】次に、図6は上記許容雑音算出回路20の
一具体例の概略構成を示すブロック回路図である。この
図6において、入力端子21には、上記各DFT回路1
3、14、15からの周波数軸上のスペクトルデータが
供給されている。このデータとしては、DFT演算をし
て得られるDFT係数データの実数成分と虚数成分とに
基づいて算出された振幅値と位相値との内の振幅値を用
いるようにしている。これは、一般に人間の聴覚は周波
数軸上の振幅(レベル、強度)には敏感であるが位相に
ついてはかなり鈍感であることを考慮したものである。
FIG. 6 is a block circuit diagram showing a schematic configuration of a specific example of the allowable noise calculating circuit 20. In FIG. 6, an input terminal 21 is connected to each of the DFT circuits 1 described above.
The spectrum data on the frequency axis from 3, 14, and 15 is supplied. As this data, the amplitude value of the amplitude value and the phase value calculated based on the real component and the imaginary component of the DFT coefficient data obtained by performing the DFT operation is used. This takes into account that human hearing is generally sensitive to the amplitude (level, intensity) on the frequency axis, but relatively insensitive to the phase.

【0031】この周波数軸上の入力データは、帯域毎の
エネルギ算出回路22に送られて、上記クリティカルバ
ンド(臨界帯域)毎のエネルギが、例えば当該バンド内
での各振幅値の総和を計算すること等により求められ
る。この各バンド毎のエネルギの代わりに、振幅値のピ
ーク値、平均値等が用いられることもある。この帯域毎
のエネルギ算出回路22からの出力として、例えば各バ
ンドの総和値のスペクトルは、一般にバークスペクトル
と称されている。図7はこのような各クリティカルバン
ド毎のバークスペクトルSBを示している。ただし、こ
の図7では、図示を簡略化するため、上記クリティカル
バンドのバンド数を12バンド(B1 〜B12)で表現し
ている。
The input data on the frequency axis is sent to the energy calculation circuit 22 for each band, and the energy for each critical band (critical band) is calculated, for example, the sum of the amplitude values in the band. It is required by things. Instead of the energy for each band, a peak value or an average value of the amplitude value may be used. As an output from the energy calculation circuit 22 for each band, for example, the spectrum of the sum value of each band is generally called a bark spectrum. FIG. 7 shows such a bark spectrum SB for each critical band. However, in FIG. 7, the number of the critical bands is represented by 12 bands (B 1 to B 12 ) to simplify the illustration.

【0032】ここで、上記バークスペクトルSBのいわ
ゆるマスキングに於ける影響を考慮するために、該バー
クスペクトルSBに所定の重み付け関数を掛けて加算す
るような畳込み(コンボリューション)処理を施す。こ
のため、上記帯域毎のエネルギ算出回路22の出力すな
わち該バークスペクトルSBの各値は、畳込みフィルタ
回路23に送られる。該畳込みフィルタ回路23は、例
えば、入力データを順次遅延させる複数の遅延素子と、
これら遅延素子からの出力にフィルタ係数(重み付け関
数)を乗算する複数の乗算器(例えば各バンドに対応す
る25個の乗算器)と、各乗算器出力の総和をとる総和
加算器とから構成されるものである。この畳込み処理に
より、図7中点線で示す部分の総和がとられる。なお、
上記マスキングとは、人間の聴覚上の特性により、ある
信号によって他の信号がマスクされて聞こえなくなる現
象をいうものであり、このマスキング効果には、時間軸
上のオーディオ信号による時間軸マスキング効果と、周
波数軸上の信号による同時刻マスキング効果とがある。
これらのマスキング効果により、マスキングされる部分
にノイズがあったとしても、このノイズは聞こえないこ
とになる。このため、実際のオーディオ信号では、この
マスキングされる範囲内のノイズは許容可能なノイズと
される。
Here, in order to consider the influence of the bark spectrum SB on so-called masking, a convolution process is performed such that the bark spectrum SB is multiplied by a predetermined weighting function and added. Therefore, the output of the energy calculation circuit 22 for each band, that is, each value of the bark spectrum SB is sent to the convolution filter circuit 23. The convolution filter circuit 23 includes, for example, a plurality of delay elements for sequentially delaying input data,
It is composed of a plurality of multipliers (for example, 25 multipliers corresponding to each band) for multiplying the output from these delay elements by a filter coefficient (weighting function) and a sum adder for summing the outputs of the multipliers. Things. By this convolution processing, the sum of the parts indicated by the dotted lines in FIG. 7 is obtained. In addition,
The masking refers to a phenomenon in which a certain signal masks another signal and makes it inaudible due to human auditory characteristics.The masking effect includes a time-axis masking effect by an audio signal on a time axis. At the same time by the signal on the frequency axis.
Due to these masking effects, even if noise is present in the masked portion, this noise will not be heard. For this reason, in an actual audio signal, the noise within the masked range is regarded as acceptable noise.

【0033】ここで、上記畳込みフィルタ回路23の各
乗算器の乗算係数(フィルタ係数)の一具体例を示す
と、任意のバンドに対応する乗算器Mの係数を1とする
とき、乗算器M−1で係数0.15を、乗算器M−2で
係数0.0019を、乗算器M−3で係数0.0000
086を、乗算器M+1で係数0.4を、乗算器M+2
で係数0.06を、乗算器M+3で係数0.007を各
遅延素子の出力に乗算することにより、上記バークスペ
クトルSBの畳込み処理が行われる。ただし、Mは1〜
25の任意の整数である。
Here, a specific example of the multiplication coefficient (filter coefficient) of each multiplier of the convolution filter circuit 23 will be described. When the coefficient of the multiplier M corresponding to an arbitrary band is 1, the multiplier M-1 is a coefficient of 0.15, multiplier M-2 is a coefficient of 0.0019, and multiplier M-3 is a coefficient of 0.00000.
086, a coefficient 0.4 by a multiplier M + 1, and a multiplier M + 2
By multiplying the output of each delay element by the coefficient 0.06 by the multiplier M + 3 and the coefficient 0.007 by the multiplier M + 3, the convolution process of the bark spectrum SB is performed. However, M is 1
It is an arbitrary integer of 25.

【0034】次に、上記畳込みフィルタ回路23の出力
は引算器24に送られる。該引算器24は、上記畳込ん
だ領域での後述する許容可能なノイズレベルに対応する
レベルαを求めるものである。なお、当該許容可能なノ
イズレベル(許容ノイズレベル)に対応するレベルα
は、後述するように、逆コンボリューション処理を行う
ことによって、クリティカルバンドの各バンド毎の許容
ノイズレベルとなるようなレベルである。ここで、上記
引算器24には、上記レベルαを求めるための許容関数
(マスキングレベルを表現する関数)が供給される。こ
の許容関数を増減させることで上記レベルαの制御を行
っている。当該許容関数は、次に説明するような(n−
ai)関数発生回路25から供給されているものであ
る。
Next, the output of the convolution filter circuit 23 is sent to a subtractor 24. The subtracter 24 calculates a level α corresponding to an allowable noise level described later in the convolved area. The level α corresponding to the permissible noise level (permissible noise level)
Is a level which becomes an allowable noise level for each of the critical bands by performing the inverse convolution processing as described later. Here, the subtractor 24 is supplied with an allowance function (a function expressing a masking level) for obtaining the level α. The level α is controlled by increasing or decreasing the allowable function. The permissible function is (n−
ai) It is supplied from the function generation circuit 25.

【0035】すなわち、許容ノイズレベルに対応するレ
ベルαは、クリティカルバンドのバンドの低域から順に
与えられる番号をiとすると、次の(5)式で求めるこ
とができる。 α=S−(n−ai) ・・・(5) この(5)式において、n,aは定数でa>0、Sは畳
込み処理されたバークスペクトルの強度であり、(5)
式中(n-ai)が許容関数となる。本実施例ではn=38,
a=1としており、この時の音質劣化はなく、良好な符
号化が行えた。
That is, the level α corresponding to the allowable noise level can be obtained by the following equation (5), where i is a number sequentially given from the lower band of the critical band. α = S− (n−ai) (5) In the equation (5), n and a are constants, a> 0, S is the intensity of the convolution-processed bark spectrum, and (5)
In the equation, (n-ai) is an allowable function. In this embodiment, n = 38,
Since a = 1, there was no deterioration in sound quality at this time, and good encoding was performed.

【0036】このようにして、上記レベルαが求めら
れ、このデータは、割算器26に伝送される。当該割算
器26では、上記畳込みされた領域での上記レベルαを
逆コンボリューションするためのものである。したがっ
て、この逆コンボリューション処理を行うことにより、
上記レベルαからマスキングスペクトルが得られるよう
になる。すなわち、このマスキングスペクトルが許容ノ
イズスペクトルとなる。なお、上記逆コンボリューショ
ン処理は、複雑な演算を必要とするが、本実施例では簡
略化した上記割算器26を用いて逆コンボリューション
を行っている。
Thus, the level α is obtained, and this data is transmitted to the divider 26. The divider 26 is for inversely convolving the level α in the convolved region. Therefore, by performing this inverse convolution processing,
A masking spectrum can be obtained from the level α. That is, this masking spectrum becomes an allowable noise spectrum. Note that the inverse convolution process requires a complicated operation, but in the present embodiment, the inverse convolution is performed using the simplified divider 26.

【0037】次に、上記マスキングスペクトルは、合成
回路27を介して減算器28に伝送される。ここで、当
該減算器28には、上記帯域毎のエネルギ検出回路22
からの出力、すなわち前述したバークスペクトルSB
が、遅延回路29を介して供給されている。したがっ
て、この減算器28で上記マスキングスペクトルとバー
クスペクトルSBとの減算演算が行われることで、図8
に示すように、上記バークスペクトルSBは、該マスキ
ングスペクトルMSのレベルで示すレベル以下がマスキ
ングされることになる。
Next, the masking spectrum is transmitted to a subtractor 28 via a synthesis circuit 27. Here, the subtractor 28 includes the energy detection circuit 22 for each band.
, Ie, the above-described bark spectrum SB
Are supplied via a delay circuit 29. Accordingly, the subtraction operation of the masking spectrum and the bark spectrum SB is performed by the subtracter 28, so that the subtraction operation shown in FIG.
As shown in (1), the bark spectrum SB is masked below the level indicated by the level of the masking spectrum MS.

【0038】当該減算器28からの出力は、許容雑音補
正回路30を介し、出力端子31を介して取り出され、
例えば割当てビット数情報が予め記憶されたROM等
(図示せず)に送られる。このROM等は、上記減算回
路28から許容雑音補正回路30を介して得られた出力
(上記各バンドのエネルギと上記ノイズレベル設定手段
の出力との差分のレベル)に応じ、各バンド毎の割当ビ
ット数情報を出力する。この割当ビット数情報が上記適
応ビット割当符号化回路18に送られることで、FFT
回路13、14、15からの周波数軸上の各スペクトル
データがそれぞれのバンド毎に割り当てられたビット数
で量子化されるわけである。
The output from the subtracter 28 is taken out through an allowable noise correction circuit 30 and an output terminal 31.
For example, the assigned bit number information is sent to a ROM or the like (not shown) in which the information is stored in advance. The ROM or the like assigns each band in accordance with the output (the level of the difference between the energy of each band and the output of the noise level setting means) obtained from the subtraction circuit 28 via the allowable noise correction circuit 30. Output bit number information. By transmitting the allocated bit number information to the adaptive bit allocation encoding circuit 18, the FFT
Each spectrum data on the frequency axis from the circuits 13, 14, and 15 is quantized by the number of bits assigned to each band.

【0039】すなわち要約すれば、適応ビット割当符号
化回路18では、上記クリティカルバンドの各バンドの
エネルギと上記ノイズレベル設定手段の出力との差分の
レベルに応じて割当てられたビット数で上記各バンド毎
のスペクトルデータを量子化することになる。なお、遅
延回路29は上記合成回路27以前の各回路での遅延量
を考慮して帯域毎のエネルギ検出回路22からのバーク
スペクトルSBを遅延させるために設けられている。
In other words, in summary, the adaptive bit allocation encoding circuit 18 uses the number of bits allocated according to the level of the difference between the energy of each band of the critical band and the output of the noise level setting means. Each spectrum data is quantized. Note that the delay circuit 29 is provided to delay the bark spectrum SB from the energy detection circuit 22 for each band in consideration of the amount of delay in each circuit before the synthesis circuit 27.

【0040】ところで、上述した合成回路27での合成
の際には、最小可聴カーブ発生回路32から供給される
図9に示すような人間の聴覚特性であるいわゆる最小可
聴カーブRCを示すデータと、上記マスキングスペクト
ルMSとを合成することができる。この最小可聴カーブ
において、雑音絶対レベルがこの最小可聴カーブ以下な
らば該雑音は聞こえないことになる。この最小可聴カー
ブは、コーディングが同じであっても例えば再生時の再
生ボリュームの違いで異なるものとなが、現実的なディ
ジタルシステムでは、例えば16ビットダイナミックレ
ンジへの音楽のはいり方にはさほど違いがないので、例
えば4kHz付近の最も耳に聞こえやすい周波数帯域の量
子化雑音が聞こえないとすれば、他の周波数帯域ではこ
の最小可聴カーブのレベル以下の量子化雑音は聞こえな
いと考えられる。したがって、このように例えばシステ
ムの持つワードレングスの4kHz付近の雑音が聞こえな
い使い方をすると仮定し、この最小可聴カーブRCとマ
スキングスペクトルMSとを共に合成することで許容ノ
イズレベルを得るようにすると、この場合の許容ノイズ
レベルは、図9中の斜線で示す部分までとすることがで
きるようになる。なお、本実施例では、上記最小可聴カ
ーブの4kHzのレベルを、例えば20ビット相当の最低
レベルに合わせている。また、この図8は、信号スペク
トルSSも同時に示している。
By the way, at the time of synthesizing by the synthesizing circuit 27 described above, data indicating a so-called minimum audible curve RC which is a human auditory characteristic as shown in FIG. The masking spectrum MS can be synthesized. At this minimum audible curve, if the absolute noise level is below this minimum audible curve, the noise will not be heard. This minimum audible curve may differ, for example, due to differences in playback volume during playback, even if the coding is the same, but in a realistic digital system, the way in which music enters the 16-bit dynamic range, for example, varies significantly. If there is no quantization noise in the most audible frequency band around 4 kHz, for example, it is considered that quantization noise below the level of the minimum audible curve will not be heard in other frequency bands. Therefore, assuming that the system is used so that noise around 4 kHz of the word length of the system is not audible, an allowable noise level is obtained by synthesizing the minimum audible curve RC and the masking spectrum MS together. In this case, the allowable noise level can be up to the shaded portion in FIG. In this embodiment, the 4 kHz level of the minimum audible curve is adjusted to the lowest level corresponding to, for example, 20 bits. FIG. 8 also shows the signal spectrum SS.

【0041】また、上記許容雑音補正回路30では、補
正情報出力回路33から送られてくる例えば等ラウドネ
スカーブの情報に基づいて、上記減算器28からの出力
における許容雑音レベルを補正している。ここで、等ラ
ウドネスカーブとは、人間の聴覚特性に関する特性曲線
であり、例えば1kHzの純音と同じ大きさに聞こえる各
周波数での音の音圧を求めて曲線で結んだもので、ラウ
ドネスの等感度曲線とも呼ばれる。またこの等ラウドネ
ス曲線は、図9に示した最小可聴カーブRCと略同じ曲
線を描くものである。この等ラウドネス曲線において
は、例えば4kHz付近では1kHzのところより音圧が8
〜10dB下がっても1kHzと同じ大きさに聞こえ、逆
に、50kHz付近では1kHzでの音圧よりも約15dB
高くないと同じ大きさに聞こえない。このため、上記最
小可聴カーブのレベルを越えた雑音(許容ノイズレベ
ル)は、該等ラウドネス曲線に応じたカーブで与えられ
る周波数特性を持つようにするのが良いことがわかる。
このようなことから、上記等ラウドネス曲線を考慮して
上記許容ノイズレベルを補正することは、人間の聴覚特
性に適合していることがわかる。
The allowable noise correction circuit 30 corrects the allowable noise level in the output from the subtracter 28 based on, for example, information on an equal loudness curve sent from the correction information output circuit 33. Here, the equal loudness curve is a characteristic curve relating to human auditory characteristics. For example, the loudness curve is obtained by calculating the sound pressure of sound at each frequency that sounds as loud as a pure tone of 1 kHz, and is connected by a curve. Also called a sensitivity curve. Further, this equal loudness curve draws substantially the same curve as the minimum audible curve RC shown in FIG. In this equal loudness curve, for example, the sound pressure near 8 kHz is 8
Even if it drops by 10 dB, it sounds the same as 1 kHz. Conversely, the sound pressure around 50 kHz is about 15 dB lower than the sound pressure at 1 kHz.
If it is not high, it will not sound the same size. For this reason, it can be seen that noise exceeding the level of the minimum audible curve (allowable noise level) preferably has a frequency characteristic given by a curve corresponding to the equal loudness curve.
From this, it can be seen that correcting the allowable noise level in consideration of the equal loudness curve is suitable for human auditory characteristics.

【0042】ここで、補正情報出力回路33として、上
記適応ビット符号化回路18での量子化の際の出力情報
量(データ量)の検出出力と、最終符号化データのビッ
トレート目標値との間の誤差の情報に基づいて、上記許
容ノイズレベルを補正するようにしてもよい。これは、
全てのビット割当単位ブロックに対して予め一時的な適
応ビット割当を行って得られた総ビット数が、最終的な
符号化出力データのビットレートによって定まる一定の
ビット数(目標値)に対して誤差を持つことがあり、そ
の誤差分を0とするように再度ビット割当をするもので
ある。すなわち、目標値よりも総割当ビット数が少ない
ときには、差のビット数を各単位ブロックに割り振って
付加するようにし、目標値よりも総割当ビット数が多い
ときには、差のビット数を各単位ブロックに割り振って
削るようにするわけである。
Here, as the correction information output circuit 33, the detection output of the output information amount (data amount) at the time of quantization in the adaptive bit encoding circuit 18 and the bit rate target value of the final encoded data are used. The allowable noise level may be corrected based on information on the error between the two. this is,
The total number of bits obtained by previously performing temporary adaptive bit allocation for all the bit allocation unit blocks is a fixed number of bits (target value) determined by the bit rate of the final encoded output data. There is an error, and the bit is allocated again so that the error is set to 0. That is, when the total number of allocated bits is smaller than the target value, the difference bit number is allocated to each unit block and added. When the total allocated bit number is larger than the target value, the difference bit number is set to each unit block. It is to be allocated and cut.

【0043】このようなことを行うため、上記総割当ビ
ット数の上記目標値からの誤差を検出し、この誤差デー
タに応じて補正情報出力回路33が各割当ビット数を補
正するための補正データを出力する。ここで、上記誤差
データがビット数不足を示す場合は、上記単位ブロック
当たり多くのビット数が使われることで上記データ量が
上記目標値よりも多くなっている場合を考えることがで
きる。また、上記誤差データが、ビット数余りを示すデ
ータとなる場合は、上記単位ブロック当たり少ないビッ
ト数で済み、上記データ量が上記目標値よりも少なくな
っている場合を考えることができる。したがって、上記
補正情報出力回路33からは、この誤差データに応じ
て、上記減算器28からの出力における許容ノイズレベ
ルを、例えば上記等ラウドネス曲線の情報データに基づ
いて補正させるための上記補正値のデータが出力される
ようになる。上述のような補正値が、上記許容雑音補正
回路30に伝送されることで、上記減算器28からの許
容ノイズレベルが補正されるようになる。
In order to perform such a process, an error of the total allocated bit number from the target value is detected, and the correction information output circuit 33 corrects each of the allocated bit numbers according to the error data. Is output. Here, when the error data indicates that the number of bits is insufficient, it is possible to consider a case where the data amount is larger than the target value by using a large number of bits per unit block. Further, when the error data is data indicating the remainder of the number of bits, the case where the number of bits per unit block is small and the amount of data is smaller than the target value can be considered. Therefore, from the correction information output circuit 33, the allowable noise level in the output from the subtracter 28 is corrected based on the information data of the equal loudness curve, for example, according to the error data. Data will be output. By transmitting the correction value as described above to the allowable noise correction circuit 30, the allowable noise level from the subtractor 28 is corrected.

【0044】なお、上述した最小可聴カーブの合成処理
を行わない構成としてもよい。すなわちこの場合には、
最小可聴カーブ発生回路32、合成回路27が不要とな
り、上記引算器24からの出力は、割算器26で逆コン
ボリューションされた後、直ちに減算器28に伝送され
ることになる。
It is also possible to adopt a configuration in which the above-described minimum audible curve synthesizing process is not performed. That is, in this case,
The minimum audible curve generating circuit 32 and the synthesizing circuit 27 become unnecessary, and the output from the subtracter 24 is deconvolved by the divider 26 and immediately transmitted to the subtracter 28.

【0045】また、図10に示すように、デコーダ側で
の逆直交変換(図10の例ではIDFT、すなわち逆離
散フーリエ変換)の前後でブロックフローティング処理
及びフローティング解除処理を行わせる場合に、ブロッ
ク内の各ワードの絶対値の論理和をとることによりフロ
ーティング係数を求めるようにすることもできる。
As shown in FIG. 10, when the block floating processing and the floating release processing are performed before and after the inverse orthogonal transform (IDFT, ie, the inverse discrete Fourier transform in the example of FIG. 10) on the decoder side, the block Alternatively, the floating coefficient can be obtained by taking the logical sum of the absolute values of the respective words.

【0046】図10において、入力端子51には、図1
の出力端子19から得られるような周波数軸上の符号化
データが供給されており、この符号化データは、適応ビ
ット割当の復号化回路52に送られて復号処理される。
これらの適応ビット割当復号化処理された周波数軸上の
データは、ブロックフローティング処理回路56に送ら
れてブロック単位のフローティング処理が施された後、
逆直交変換(図10の例ではIDFT、すなわち逆離散
フーリエ変換)回路53、54、55にて上記図1の各
直交変換回路13、14、15での処理に対するそれぞ
れ逆の処理が施される。これらの逆直交変換回路53、
54、55からの出力はフローティング解除回路57に
送られ、上記ブロックフローティング処理回路56から
のフローティング情報に基づいてブロック単位のフロー
ティング解除が行われる。フローティング解除回路57
からの各帯域の出力は、合成フィルタ58、59によ
り、図1の帯域分割フィルタ11、12の逆の処理が施
されて各帯域が合成され、出力端子60より取り出され
る。
In FIG. 10, an input terminal 51 is
Coded data on the frequency axis as obtained from the output terminal 19 of the coded data is sent to the decoding circuit 52 for adaptive bit allocation and decoded.
The data on the frequency axis subjected to the adaptive bit allocation decoding processing is sent to the block floating processing circuit 56 and subjected to floating processing in units of blocks.
In the inverse orthogonal transform (IDFT in the example of FIG. 10, that is, the inverse discrete Fourier transform) circuits 53, 54, and 55, processes reverse to the processes in the orthogonal transform circuits 13, 14, and 15 in FIG. . These inverse orthogonal transform circuits 53,
The outputs from 54 and 55 are sent to the floating release circuit 57, and the floating is released for each block based on the floating information from the block floating processing circuit 56. Floating release circuit 57
The output of each band from is subjected to the reverse processing of the band division filters 11 and 12 in FIG. 1 by the synthesis filters 58 and 59 to synthesize each band, and is taken out from the output terminal 60.

【0047】なお、本発明は上記実施例のみに限定され
るものではなく、例えば、オーディオPCM信号のみな
らず、ディジタル音声(スピーチ)信号やディジタル映
像信号等の信号処理装置にも適用可能である。
The present invention is not limited to the above-described embodiment. For example, the present invention is applicable not only to audio PCM signals but also to signal processing devices for digital audio (speech) signals and digital video signals. .

【0048】[0048]

【発明の効果】本発明によれば、符号化の際に、入力デ
ィジタル信号を可変長のブロックにてブロックフローテ
ィング処理をした後に直交変換をするものであって、可
変ブロックの長さ及びブロックフローティングのフロー
ティング係数を同じ指標に基づいて決定することによ
り、処理量やプログラムのステップ数を低減できる。ま
た、復号化の際に、同一指標に基づいて可変ブロックの
長さ及びブロックフローティング係数を決定することに
より、処理量やプログラムのステップ数を低減できる。
According to the present invention, upon encoding, an input digital signal is subjected to block floating processing in variable-length blocks and then orthogonally transformed. Is determined based on the same index, the processing amount and the number of program steps can be reduced. Also, at the time of decoding, by determining the length of the variable block and the block floating coefficient based on the same index, the processing amount and the number of steps of the program can be reduced.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明が適用可能なエンコーダの具体例を示す
ブロック図である。
FIG. 1 is a block diagram showing a specific example of an encoder to which the present invention can be applied.

【図2】図1の装置における分割帯域及び各帯域での時
間軸方向のブロック化の具体例を示す図である。
FIG. 2 is a diagram showing a specific example of divided bands and blocking in the time axis direction in each band in the apparatus of FIG. 1;

【図3】図1の装置における各帯域での時間軸方向での
ブロックサイズを2つのサイズ間で切り換える例を示す
図である。
FIG. 3 is a diagram showing an example in which the block size in the time axis direction in each band in the apparatus of FIG. 1 is switched between two sizes.

【図4】図1の装置における各帯域での時間軸方向での
ブロックサイズを3つのサイズのサイズ間で切り換える
例を示す。
FIG. 4 shows an example in which the block size in the time axis direction in each band in the apparatus of FIG. 1 is switched between three sizes.

【図5】該実施例の動作を説明するためのフローチャー
トである。
FIG. 5 is a flowchart for explaining the operation of the embodiment.

【図6】図1の装置の許容雑音算出回路20の具体例を
示すブロック回路図である。
FIG. 6 is a block circuit diagram showing a specific example of an allowable noise calculation circuit 20 of the device of FIG.

【図7】バークスペクトルを示す図である。FIG. 7 is a diagram showing a bark spectrum.

【図8】マスキングスペクトルを示す図である。FIG. 8 is a diagram showing a masking spectrum.

【図9】最小可聴カーブ、マスキングスペクトルを合成
した図である。
FIG. 9 is a diagram in which a minimum audible curve and a masking spectrum are combined.

【図10】本発明実施例が適用可能なデコーダの具体例
を示すブロック図である。
FIG. 10 is a block diagram showing a specific example of a decoder to which the embodiment of the present invention can be applied.

【図11】従来の技術での処理手順によるブロックの長
さの例を示す図である。
FIG. 11 is a diagram illustrating an example of a block length according to a processing procedure according to the related art.

【図12】従来のブロックフローティング処理の手順の
例を示すフローチャートである。
FIG. 12 is a flowchart illustrating an example of a procedure of a conventional block floating process.

【符号の説明】[Explanation of symbols]

11、12・・・・帯域分割フィルタ 13、14、15・・・・直交変換回路 16、56・・・・ブロックフローティング回路 17、57・・・・フローティング解除回路 18、52・・・・適応ビット割り当て符号可回路 20・・・・許容雑音算出回路 22・・・・帯域毎のエネルギ検出回路 23・・・・畳込みフィルタ回路 24・・・・引算器 25・・・・n−ai関数発生回路 26・・・・割算器 27・・・・合成回路 28・・・・減算器 30・・・・許容雑音補正回路 32・・・・最小可聴カーブ発生回路 33・・・・補正情報出力回路 53、54、55・・・・直交変換回路 58、59・・・・合成フィルタ 11, 12 ... band division filter 13, 14, 15 ... orthogonal transform circuit 16, 56 ... block floating circuit 17, 57 ... floating release circuit 18, 52 ... adaptation Bit allocation signable circuit 20... Allowable noise calculation circuit 22... Energy detection circuit for each band 23... Convolution filter circuit 24... Subtracter 25... N-ai Function generation circuit 26 ··· Divider 27 ··· Synthesis circuit 28 ··· Subtractor 30 ··· Permissible noise correction circuit 32 ··· Minimum audible curve generation circuit 33 ··· Correction Information output circuits 53, 54, 55 ... orthogonal transform circuits 58, 59 ... synthesis filters

フロントページの続き (56)参考文献 特開 平3−35298(JP,A) 特開 昭63−136826(JP,A) 特開 平3−109824(JP,A) 特開 平3−132217(JP,A) 特開 平3−145823(JP,A) (58)調査した分野(Int.Cl.7,DB名) H03M 7/30 Continuation of the front page (56) References JP-A-3-35298 (JP, A) JP-A-63-136826 (JP, A) JP-A-3-109824 (JP, A) JP-A-3-132217 (JP) , A) JP-A-3-145823 (JP, A) (58) Fields investigated (Int. Cl. 7 , DB name) H03M 7/30

Claims (4)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 入力ディジタル信号をブロック化してフ
ローティング処理した後に直交変換を施すようなディジ
タル信号符号化方法であって、 上記ブロックの長さを可変とすると共に、上記ブロックを分割した小ブロック毎に各小ブロック内
のワードを演算して得られた値に基づく指標を求め、 上記可変ブロックの長さ及びブロックフローティングの
フローティング係数を同じ上記指標に基づいて決定する
ことを特徴とするディジタル信号符号化方法。
1. A digital signal encoding method in which an input digital signal is divided into blocks, subjected to floating processing, and then subjected to orthogonal transformation, wherein the length of the blocks is variable and each of the small blocks obtained by dividing the blocks is In each small block
Digital signal encoding method characterized in that the word to calculate the seek index based on the value obtained, determined on the basis of the floating coefficient length and block floating of the variable block in the same the index.
【請求項2】 上記指標は、上記ブロックを分割した小
ブロック毎に求めた最大絶対値に基づく指標であること
を特徴とする請求項1記載のディジタル信号符号化方
法。
2. The method according to claim 1, wherein the index is a small value obtained by dividing the block.
An index based on the maximum absolute value obtained for each block
2. The digital signal encoding method according to claim 1, wherein
Law.
【請求項3】 入力ディジタル信号をブロック化してフ
ローティング処理された後に直交変換が施されたディジ
タル信号を復号化する装置であって、 上記ブロックの長さを可変とされ、上記ブロックを分割した小ブロック毎に各小ブロック内
のワードを演算して得られた値に基づく指標が求めら
れ、 上記可変ブロックの長さ及びブロックフローティングの
フローティング係数が同じ上記指標に基づいて決定さ
れ、復号化の際に、上記同一指標に基づいて可変ブロッ
クの長さ及びブロックフローティング係数を決定するこ
とを特徴とするディジタル信号復号化装置。
3. A device for decoding a digital signal which orthogonal transformation is applied after an input digital signal which is floating processed blocks are variable length of the block, the small obtained by dividing the above block Within each small block for each block
Index based on the value obtained by calculating the word
Is, floating coefficient length and block floating of the variable block is determined based on the same the index, the time of decoding, to determine the length and block floating coefficients of the variable block based on the same index Digital signal decoding device characterized by the above-mentioned.
【請求項4】 上記指標は、上記ブロックを分割した小
ブロック毎に求められた最大絶対値に基づく指標である
ことを特徴とする請求項3記載のディジタル信号復号化
装置。
4. The small index obtained by dividing the block.
Index based on the maximum absolute value obtained for each block
4. The digital signal decoding method according to claim 3, wherein:
apparatus.
JP03091548A 1991-03-29 1991-03-29 Digital signal encoding method and digital signal decoding device Expired - Lifetime JP3134335B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP03091548A JP3134335B2 (en) 1991-03-29 1991-03-29 Digital signal encoding method and digital signal decoding device
EP92302616A EP0506394A2 (en) 1991-03-29 1992-03-26 Coding apparatus for digital signals
KR1019920005038A KR100313977B1 (en) 1991-03-29 1992-03-27 Digital Input Signal Compressors and Methods, Compressed Digital Signal Expansion Devices and Methods
US08/159,122 US5490170A (en) 1991-03-29 1993-11-30 Coding apparatus for digital signal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP03091548A JP3134335B2 (en) 1991-03-29 1991-03-29 Digital signal encoding method and digital signal decoding device

Publications (2)

Publication Number Publication Date
JPH04302540A JPH04302540A (en) 1992-10-26
JP3134335B2 true JP3134335B2 (en) 2001-02-13

Family

ID=14029545

Family Applications (1)

Application Number Title Priority Date Filing Date
JP03091548A Expired - Lifetime JP3134335B2 (en) 1991-03-29 1991-03-29 Digital signal encoding method and digital signal decoding device

Country Status (2)

Country Link
JP (1) JP3134335B2 (en)
KR (1) KR100313977B1 (en)

Also Published As

Publication number Publication date
KR920019110A (en) 1992-10-22
JPH04302540A (en) 1992-10-26
KR100313977B1 (en) 2001-12-28

Similar Documents

Publication Publication Date Title
JP3134338B2 (en) Digital audio signal encoding method
JP3178026B2 (en) Digital signal encoding device and decoding device
JP3127600B2 (en) Digital signal decoding apparatus and method
JP3508146B2 (en) Digital signal encoding / decoding device, digital signal encoding device, and digital signal decoding device
JP3185413B2 (en) Orthogonal transform operation and inverse orthogonal transform operation method and apparatus, digital signal encoding and / or decoding apparatus
JP3134337B2 (en) Digital signal encoding method
US5490170A (en) Coding apparatus for digital signal
WO1992017942A1 (en) Method of encoding digital signals
JPH0435123A (en) Digital signal encoder
JP3765622B2 (en) Audio encoding / decoding system
JP3041967B2 (en) Digital signal coding device
JP3134335B2 (en) Digital signal encoding method and digital signal decoding device
JP3070123B2 (en) Digital signal encoding apparatus and method
JP3089691B2 (en) Highly efficient digital data encoding method.
JP3089692B2 (en) Highly efficient digital data encoding method.
JP3060578B2 (en) Digital signal encoding method
JP3010663B2 (en) Noise shaping circuit
JP3060577B2 (en) Digital signal encoding method
JPH04302538A (en) Digital signal encoding device
JP3060576B2 (en) Digital signal encoding method
JP2913695B2 (en) Digital signal encoding method
JP3132031B2 (en) High-efficiency coding of digital signals.
JP3033158B2 (en) Digital signal encoder
JP2913696B2 (en) Digital signal encoding method
JP3200886B2 (en) Audio signal processing method

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20001031

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071201

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081201

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091201

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091201

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101201

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111201

Year of fee payment: 11

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111201

Year of fee payment: 11