JP3136797B2 - 音データ処理方法および音データ処理装置 - Google Patents
音データ処理方法および音データ処理装置Info
- Publication number
- JP3136797B2 JP3136797B2 JP04255922A JP25592292A JP3136797B2 JP 3136797 B2 JP3136797 B2 JP 3136797B2 JP 04255922 A JP04255922 A JP 04255922A JP 25592292 A JP25592292 A JP 25592292A JP 3136797 B2 JP3136797 B2 JP 3136797B2
- Authority
- JP
- Japan
- Prior art keywords
- sound data
- data
- difference
- decoding
- sound
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012545 processing Methods 0.000 title claims description 25
- 238000003672 processing method Methods 0.000 title claims description 4
- 238000013139 quantization Methods 0.000 claims description 84
- 238000007493 shaping process Methods 0.000 claims description 41
- 238000000034 method Methods 0.000 claims description 19
- 230000008569 process Effects 0.000 claims description 13
- 230000003044 adaptive effect Effects 0.000 claims description 10
- 238000001228 spectrum Methods 0.000 claims description 9
- 230000008859 change Effects 0.000 claims description 3
- 230000006978 adaptation Effects 0.000 claims 1
- 238000011002 quantification Methods 0.000 claims 1
- 230000006870 function Effects 0.000 description 24
- 238000012546 transfer Methods 0.000 description 18
- 230000010354 integration Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 9
- 238000005070 sampling Methods 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 7
- 238000001914 filtration Methods 0.000 description 5
- 230000003321 amplification Effects 0.000 description 4
- 238000003199 nucleic acid amplification method Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 238000013144 data compression Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000002238 attenuated effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000000737 periodic effect Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 101100162020 Mesorhizobium japonicum (strain LMG 29417 / CECT 9101 / MAFF 303099) adc3 gene Proteins 0.000 description 1
- 101100015484 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) GPA1 gene Proteins 0.000 description 1
- 230000032683 aging Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Landscapes
- Electrophonic Musical Instruments (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Description
【0001】
【産業上の利用分野】この発明は振幅が量子化された音
データを差分符号化・復号化して再生する音データ処理
方法および音データ処理装置に関する。
データを差分符号化・復号化して再生する音データ処理
方法および音データ処理装置に関する。
【0002】
【従来の技術】ADPCMは、振幅方向についてビット
数を低減させる高能率符号化技術の1つである。この方
式はデルタPCM変調に比べ、入力波形に対する追従性
がよく、このため、振幅が大きく変化する音信号の符号
化等への応用(例えば電話電信)が期待されている。
数を低減させる高能率符号化技術の1つである。この方
式はデルタPCM変調に比べ、入力波形に対する追従性
がよく、このため、振幅が大きく変化する音信号の符号
化等への応用(例えば電話電信)が期待されている。
【0003】図13の(A)に従来の代表的なADPC
M方式を示す。入力として与えられる振幅量子化音デー
タの列を微分器21でデジタル微分する。微分器21は
通常、図示のように結合される減算器211と1サンプ
ル遅延器212とから成り、振幅量子化データの差分値
を形成する。微分器2121からの差分音データはAD
PCM変調・復調回路25の減算器251に供給され
る。減算器251はこの差分音データからADPCM変
調回路221で前回発生した量子化誤差(即ち、1サン
プル前の差分値データとその復号値との差)を減算す
る。この減算結果は現入力音データの値と前入力音デー
タの再生値との差を表わす。この差分をADPCM変調
回路221で符号化する。図13の(B)に示すよう
に、ADPCM変調回路221は量子化幅を入力の変化
に応じて適応化する量子化幅適合器を有しており、AD
PCM変調回路221内の差分符号化器は、この適応化
した量子化幅で差分入力を量子化(符号化)して符号化
差分データを出力する。この符号化差分データがADP
CM復調回路222に送られる。ADPCM変調回路2
21の内部において、この符号化差分データは量子化幅
適応器に入力され、次の差分入力サンプルに対する量子
化幅の決定のために用いられる。更に、ADPCM変調
回路221は復調器(差分復号器)を有し、復調器は差
分符号化器からの符号化差分データを量子化幅適応器か
らの量子化幅で復号化し、復号化差分データを出力す
る。この復号化差分データは減算器225に入力され、
ここで復号化差分データの値からADPCM変調回路2
21への入力、即ち符号化前の差分入力値を差し引くこ
とにより、ADPCMの再量子化によって発生した量子
化誤差Qを評価する。この量子化誤差Qを1サンプル遅
延器252で1サンプル分遅らせてから減算器251に
入力する。
M方式を示す。入力として与えられる振幅量子化音デー
タの列を微分器21でデジタル微分する。微分器21は
通常、図示のように結合される減算器211と1サンプ
ル遅延器212とから成り、振幅量子化データの差分値
を形成する。微分器2121からの差分音データはAD
PCM変調・復調回路25の減算器251に供給され
る。減算器251はこの差分音データからADPCM変
調回路221で前回発生した量子化誤差(即ち、1サン
プル前の差分値データとその復号値との差)を減算す
る。この減算結果は現入力音データの値と前入力音デー
タの再生値との差を表わす。この差分をADPCM変調
回路221で符号化する。図13の(B)に示すよう
に、ADPCM変調回路221は量子化幅を入力の変化
に応じて適応化する量子化幅適合器を有しており、AD
PCM変調回路221内の差分符号化器は、この適応化
した量子化幅で差分入力を量子化(符号化)して符号化
差分データを出力する。この符号化差分データがADP
CM復調回路222に送られる。ADPCM変調回路2
21の内部において、この符号化差分データは量子化幅
適応器に入力され、次の差分入力サンプルに対する量子
化幅の決定のために用いられる。更に、ADPCM変調
回路221は復調器(差分復号器)を有し、復調器は差
分符号化器からの符号化差分データを量子化幅適応器か
らの量子化幅で復号化し、復号化差分データを出力す
る。この復号化差分データは減算器225に入力され、
ここで復号化差分データの値からADPCM変調回路2
21への入力、即ち符号化前の差分入力値を差し引くこ
とにより、ADPCMの再量子化によって発生した量子
化誤差Qを評価する。この量子化誤差Qを1サンプル遅
延器252で1サンプル分遅らせてから減算器251に
入力する。
【0004】以上の要素21、251、252、22
1、226がADPCMによる音データの符号化装置を
構成し、その他の要素は、ADPCMによる音データ再
生装置を構成する。音声通信の用途では、ADPCM変
調回路221の出力である符号化差分データは有線ある
いは無線の伝送路を介してADPCM復調回路222に
供給される。音データ再生装置を電子楽器の音源に応用
する場合には、ROMのようなメモリに符号化差分音デ
ータが記録され、この音データメモリからADPCM復
調回路222に符号化差分音データが供給される。
1、226がADPCMによる音データの符号化装置を
構成し、その他の要素は、ADPCMによる音データ再
生装置を構成する。音声通信の用途では、ADPCM変
調回路221の出力である符号化差分データは有線ある
いは無線の伝送路を介してADPCM復調回路222に
供給される。音データ再生装置を電子楽器の音源に応用
する場合には、ROMのようなメモリに符号化差分音デ
ータが記録され、この音データメモリからADPCM復
調回路222に符号化差分音データが供給される。
【0005】ADPCM復調回路222は、内部にAD
PCM変調回路221の量子化適合器と復調器に相当す
る要素を有しており、供給された符号化差分音データを
適応量子化幅によって復号化する。復号化した差分音デ
ータは、加算器231と1サンプル遅延器232を有す
る積分器23でデジタル積分され、それにより振幅量子
化音データが再生される。
PCM変調回路221の量子化適合器と復調器に相当す
る要素を有しており、供給された符号化差分音データを
適応量子化幅によって復号化する。復号化した差分音デ
ータは、加算器231と1サンプル遅延器232を有す
る積分器23でデジタル積分され、それにより振幅量子
化音データが再生される。
【0006】いま、図13に示す従来の構成において微
分器21の入力、即ち、元の振幅量子化音データをX
(z変換)とし、積分器22の出力、即ち、再生した振
幅量子化音データをYとすると、YとXとの間には、 Y=X+Q の関係が成り立つ。
分器21の入力、即ち、元の振幅量子化音データをX
(z変換)とし、積分器22の出力、即ち、再生した振
幅量子化音データをYとすると、YとXとの間には、 Y=X+Q の関係が成り立つ。
【0007】即ち、微分器21の出力は微分器21の伝
達関数が(1−z-1)であるから(1−z-1)X、これ
からz-1Qを引いたものである。減算器251の出力
(ADPCM入力)は(1−z-1)X−z-1Q、ADP
CM復調回路222の出力はADPCM入力より量子化
誤差Qだけ異なるから(1−z-1)X−z-1Q+Q=
(1−z-1)(X+Q)、積分器23の伝達関数は1/
(1−z-1)であるから、出力Y=X+Qとなる。
達関数が(1−z-1)であるから(1−z-1)X、これ
からz-1Qを引いたものである。減算器251の出力
(ADPCM入力)は(1−z-1)X−z-1Q、ADP
CM復調回路222の出力はADPCM入力より量子化
誤差Qだけ異なるから(1−z-1)X−z-1Q+Q=
(1−z-1)(X+Q)、積分器23の伝達関数は1/
(1−z-1)であるから、出力Y=X+Qとなる。
【0008】
【発明が解決しようとする課題】従来のADPCM方式
における再生音データYと元のデータXとの関係Y=X
+Qは、ADPCM変調で発生した量子化誤差ないしノ
イズがそのまま再生音データに伝わることを示してい
る。したがって、最終的な再生音にも相当量のノイズが
含まれることになる。したがって、この発明の目的は、
量子化誤差の影響を少なくして再生音のSN比改善を図
ることができる音データ処理方法および音データ処理装
置を提供することである。
における再生音データYと元のデータXとの関係Y=X
+Qは、ADPCM変調で発生した量子化誤差ないしノ
イズがそのまま再生音データに伝わることを示してい
る。したがって、最終的な再生音にも相当量のノイズが
含まれることになる。したがって、この発明の目的は、
量子化誤差の影響を少なくして再生音のSN比改善を図
ることができる音データ処理方法および音データ処理装
置を提供することである。
【0009】
【課題を解決するための手段、作用】本発明では、差分
入力される音データの変化に応じて適応化された量子化
幅にて当該差分入力される音データを符号化して符号化
差分データを生成し、この符号化差分データに含まれる
量子化誤差の低域パワースペクトルを抑制するノイズシ
ェーピングを施す。そして、このノイズシェーピングに
より量子化誤差の低域パワースペクトルが抑制された符
号化差分データを適応量子化幅で復号化して復号化差分
データを生成した後、オーバーサンプリング再生にて復
号化差分データに含まれる量子化誤差のパワースペクト
ルを広帯域に分散させて再生する。 つまり、ノイズシェ
ーピングにて低域の量子化ノイズを抑制すると、その
分、高域での量子化ノイズが大きくなるが、それは再生
系のローパスフィルタリングで容易に除去でき、さらに
オーバーサンプリング再生にて量子化ノイズを広帯域に
分散させることで、実質的に再生音のSN比が向上す
る。
入力される音データの変化に応じて適応化された量子化
幅にて当該差分入力される音データを符号化して符号化
差分データを生成し、この符号化差分データに含まれる
量子化誤差の低域パワースペクトルを抑制するノイズシ
ェーピングを施す。そして、このノイズシェーピングに
より量子化誤差の低域パワースペクトルが抑制された符
号化差分データを適応量子化幅で復号化して復号化差分
データを生成した後、オーバーサンプリング再生にて復
号化差分データに含まれる量子化誤差のパワースペクト
ルを広帯域に分散させて再生する。 つまり、ノイズシェ
ーピングにて低域の量子化ノイズを抑制すると、その
分、高域での量子化ノイズが大きくなるが、それは再生
系のローパスフィルタリングで容易に除去でき、さらに
オーバーサンプリング再生にて量子化ノイズを広帯域に
分散させることで、実質的に再生音のSN比が向上す
る。
【0010】
【0011】
【0012】
【0013】
【0014】
【0015】
【0016】
【実施例】以下図面を参照してこの発明を更に詳細に説
明する。原理(図1) 図1の(A)に、この発明による音データ符号化・復号
化装置の基本構成を示す。ADPCM変調器3より左側
が符号化装置(記録系)であり、右側が復号化装置(再
生系)である。
明する。原理(図1) 図1の(A)に、この発明による音データ符号化・復号
化装置の基本構成を示す。ADPCM変調器3より左側
が符号化装置(記録系)であり、右側が復号化装置(再
生系)である。
【0017】図1(A)において、再生系のADPCM
復調器6と積分器7は従来と同様であり得、例えば図1
3で述べたADPCM復調回路222と積分器23が使
用できる。記録系の要素のうち、微分器1、ADPCM
変調器3、量子化誤差算出器4も従来と同様であり得、
例えば図13で述べた微分器21、ADPCM変調回路
221、減算器225が使用できる。
復調器6と積分器7は従来と同様であり得、例えば図1
3で述べたADPCM復調回路222と積分器23が使
用できる。記録系の要素のうち、微分器1、ADPCM
変調器3、量子化誤差算出器4も従来と同様であり得、
例えば図13で述べた微分器21、ADPCM変調回路
221、減算器225が使用できる。
【0018】この発明の特徴に従い、量子化誤差算出器
4で算出した量子化誤差Qの列を誤差列記憶部5で一時
記憶する。ここに、誤差列記憶部5は、少なくとも前回
と前々回の音データサンプルについてADPCM変調器
3で発生した量子化誤差の値を記憶する。この発明に従
い、ADPCM変調器3への差分入力を形成する演算器
2が設けられる。演算器2は微分器1からの差分音デー
タと誤差列記憶部5からの誤差列(少なくとも前回の量
子化誤差z-1Qと前々回の量子化誤差z-2Qを含む)と
を演算してADPCM変調器3への差分入力を形成す
る。ここに演算器2は、ADPCM変調器3で発生した
量子化誤差Qが再生音データ中にノイズシェーピングが
付いた形で伝わるように演算を実行する。
4で算出した量子化誤差Qの列を誤差列記憶部5で一時
記憶する。ここに、誤差列記憶部5は、少なくとも前回
と前々回の音データサンプルについてADPCM変調器
3で発生した量子化誤差の値を記憶する。この発明に従
い、ADPCM変調器3への差分入力を形成する演算器
2が設けられる。演算器2は微分器1からの差分音デー
タと誤差列記憶部5からの誤差列(少なくとも前回の量
子化誤差z-1Qと前々回の量子化誤差z-2Qを含む)と
を演算してADPCM変調器3への差分入力を形成す
る。ここに演算器2は、ADPCM変調器3で発生した
量子化誤差Qが再生音データ中にノイズシェーピングが
付いた形で伝わるように演算を実行する。
【0019】図1(B)に伝達関数の面からみたこの発
明のノイズシェーピング付ADPCM音データ符号化・
復号化装置を示す。図1(B)において、ブロック10
は振幅量子化音データXを伝達関数H1(z)に従って
デジタルフィルタリングする音データフィルタである。
ADPCM14の出力は入力をADPCM変調によって
符号化し、さらにADPCM復調によって復号化したも
のである。したがって、ADPCM14出力からADP
CM14入力を減算する減算器16の出力はADPCM
14で発生した量子化誤差Qを表わす。誤差フィルタ1
8はこの量子化誤差Qを伝達関数H2(z)に従ってデ
ジタルフィルタリングする。減算器12は音データフィ
ルタ10の出力(H1(z)Xで示される)から誤差フ
ィルタ18の出力(H2(z)Qで表わされる)を差し
引く。この減算器12の出力H1(z)X−H2(z)
Qを、ADPCM14へ入力として供給する。したがっ
てADPCM14の出力はH1(z)X+(1−H2
(z))Qで表わされる。このADPCM14の出力を
音データフィルタ10の伝達関数の逆関数である伝達関
数1/H1(z)を有する音データフィルタ20に通し
て振幅量子化音データを再生する。したがって音データ
フィルタ20の出力(再生音データ)Yは、
明のノイズシェーピング付ADPCM音データ符号化・
復号化装置を示す。図1(B)において、ブロック10
は振幅量子化音データXを伝達関数H1(z)に従って
デジタルフィルタリングする音データフィルタである。
ADPCM14の出力は入力をADPCM変調によって
符号化し、さらにADPCM復調によって復号化したも
のである。したがって、ADPCM14出力からADP
CM14入力を減算する減算器16の出力はADPCM
14で発生した量子化誤差Qを表わす。誤差フィルタ1
8はこの量子化誤差Qを伝達関数H2(z)に従ってデ
ジタルフィルタリングする。減算器12は音データフィ
ルタ10の出力(H1(z)Xで示される)から誤差フ
ィルタ18の出力(H2(z)Qで表わされる)を差し
引く。この減算器12の出力H1(z)X−H2(z)
Qを、ADPCM14へ入力として供給する。したがっ
てADPCM14の出力はH1(z)X+(1−H2
(z))Qで表わされる。このADPCM14の出力を
音データフィルタ10の伝達関数の逆関数である伝達関
数1/H1(z)を有する音データフィルタ20に通し
て振幅量子化音データを再生する。したがって音データ
フィルタ20の出力(再生音データ)Yは、
【数1】 となる。
【0020】この関係式は、信号成分Xはそのまま出力
Yに伝わるが、ADPCM14で発生した量子化誤差Q
はノイズ伝達関数(1−H2(z))/H1(z)を通
して伝わることを示している。
Yに伝わるが、ADPCM14で発生した量子化誤差Q
はノイズ伝達関数(1−H2(z))/H1(z)を通
して伝わることを示している。
【0021】したがって、ノイズ伝達関数(1−H2
(z))/H1(z)にノイズシェーピング特性、即
ち、低域で周波数応答が小さくなる特性をもたせること
により、この発明による構成が得られる。いいかえる
と、音データフィルタ10の伝達関数H1(z)と誤差
フィルタ18の伝達関数H2(z)を適当に設定すれ
ば、ノイズ伝達関数H(z)にノイズシェーピング特性
をもたせることができる。
(z))/H1(z)にノイズシェーピング特性、即
ち、低域で周波数応答が小さくなる特性をもたせること
により、この発明による構成が得られる。いいかえる
と、音データフィルタ10の伝達関数H1(z)と誤差
フィルタ18の伝達関数H2(z)を適当に設定すれ
ば、ノイズ伝達関数H(z)にノイズシェーピング特性
をもたせることができる。
【0022】1次、2次ノイズシェーピング(図2、図
3) いま、図1(B)において、音データフィルタ10を伝
達関数が(1−z-1)で示される一次微分器で構成した
とする。ここでノイズシェーピング関数H(z)として
1次ノイズシェーピング関数(1−z-1)を選定するの
であれば、1−H2(z)=(1−z-1)2となる。し
たがって誤差フィルタ18の伝達関数H2(z)はH2
(z)=2z-1−z-2となる。
3) いま、図1(B)において、音データフィルタ10を伝
達関数が(1−z-1)で示される一次微分器で構成した
とする。ここでノイズシェーピング関数H(z)として
1次ノイズシェーピング関数(1−z-1)を選定するの
であれば、1−H2(z)=(1−z-1)2となる。し
たがって誤差フィルタ18の伝達関数H2(z)はH2
(z)=2z-1−z-2となる。
【0023】このためには、図2に示すように、ADP
CM変調・復調回路21内に、図示のように結合した加
算器223、減算器224、1サンプル遅延器226、
1サンプル遅延器22、増幅率2の増幅器228を設け
ればよい。即ち、加算器223で1次微分器21からの
差分音データ(1−z-1)Xに遅延器226からの前々
回の量子化誤差z-2Qを加え、減算器224で、加算器
223の出力から増幅器226の出力である前回の量子
化誤差の2倍(2z-1Q)を差し引き、その結果をAD
PCM変調回路221に入力すればよい(その他の構成
は図13の(A)と同じなので説明を省略する)。
CM変調・復調回路21内に、図示のように結合した加
算器223、減算器224、1サンプル遅延器226、
1サンプル遅延器22、増幅率2の増幅器228を設け
ればよい。即ち、加算器223で1次微分器21からの
差分音データ(1−z-1)Xに遅延器226からの前々
回の量子化誤差z-2Qを加え、減算器224で、加算器
223の出力から増幅器226の出力である前回の量子
化誤差の2倍(2z-1Q)を差し引き、その結果をAD
PCM変調回路221に入力すればよい(その他の構成
は図13の(A)と同じなので説明を省略する)。
【0024】再び、図1(B)において、音データフィ
ルタ10を伝達関数(1−z-1)の1次微分器21で構
成した場合において、ノイズ伝達関数H(z)を2次ノ
イズシェーピング関数(1−z-1)2にしたいのであれ
ば、1−H2(z)=(1−z-1)3となる。したがっ
て、誤差フィルタ18に H2(z)=3z-1−3z-2+z-3 なる伝達関数をもたせればよい。
ルタ10を伝達関数(1−z-1)の1次微分器21で構
成した場合において、ノイズ伝達関数H(z)を2次ノ
イズシェーピング関数(1−z-1)2にしたいのであれ
ば、1−H2(z)=(1−z-1)3となる。したがっ
て、誤差フィルタ18に H2(z)=3z-1−3z-2+z-3 なる伝達関数をもたせればよい。
【0025】このためには、図3に示すように、1次微
分器21の出力とADPCM変調・復調回路24のAD
PCM変調回路221の入力の間に、減算器241、加
算器242、減算器243を設け、ADPCM変調回路
221で発生する量子化誤差Qを算出する減算器225
の出力ライン上に、3つの1サンプル遅延器244、2
45、246を設け、遅延器244からの3サンプル前
の量子化誤差z-3Qを減算器241に減算出力し、遅延
器245からの2サンプル前の量子化誤差z-2Qを増幅
器247で3倍した加算器242に入力し、遅延器24
6からの1サンプル前の量子化誤差z-1Qを増幅器24
8で3倍して減算器243に減算入力すればよい。
分器21の出力とADPCM変調・復調回路24のAD
PCM変調回路221の入力の間に、減算器241、加
算器242、減算器243を設け、ADPCM変調回路
221で発生する量子化誤差Qを算出する減算器225
の出力ライン上に、3つの1サンプル遅延器244、2
45、246を設け、遅延器244からの3サンプル前
の量子化誤差z-3Qを減算器241に減算出力し、遅延
器245からの2サンプル前の量子化誤差z-2Qを増幅
器247で3倍した加算器242に入力し、遅延器24
6からの1サンプル前の量子化誤差z-1Qを増幅器24
8で3倍して減算器243に減算入力すればよい。
【0026】以上、1次と2次のノイズシェーピング付
ADPCM変調について述べたが、3次以上のノイズシ
ェーピングも同様の手法で実現できる。
ADPCM変調について述べたが、3次以上のノイズシ
ェーピングも同様の手法で実現できる。
【0027】音データ記録装置(図3〜図7) 図1〜図3で述べた、この発明の特徴を組み込んだ音デ
ータ記録装置と、その記録内容から音を再生する音デー
タ再生装置の具体例について以下説明する。図4に音デ
ータ記録装置の全体構成を示す。図4の音データ記録装
置において、アナログ原音信号はLPF30に通した
後、サンプルホールド(S/H)回路32にて可聴信号
に対して十分なレートのサンプリング周波数fs、例え
ば、fs=42432Hzで標本化される。S/Hの出
力をS/Hのfsに等しい変換速度をもち、比較的振幅
分解能の高い(例えば16ビット分解能)AD変換器
(ADC)34で量子化(デジタル化)する。ADC3
4の出力はいったん適当なメモリ(図示せず)記録さ
れ、その後、原音データ生成部36で波形加工が施され
る。その結果(原音データと呼ぶ)に、以下、述べる音
データ圧縮処理を施し、結果(圧縮音データ)を波形メ
モリ46(圧縮音データマスター)に記録する。
ータ記録装置と、その記録内容から音を再生する音デー
タ再生装置の具体例について以下説明する。図4に音デ
ータ記録装置の全体構成を示す。図4の音データ記録装
置において、アナログ原音信号はLPF30に通した
後、サンプルホールド(S/H)回路32にて可聴信号
に対して十分なレートのサンプリング周波数fs、例え
ば、fs=42432Hzで標本化される。S/Hの出
力をS/Hのfsに等しい変換速度をもち、比較的振幅
分解能の高い(例えば16ビット分解能)AD変換器
(ADC)34で量子化(デジタル化)する。ADC3
4の出力はいったん適当なメモリ(図示せず)記録さ
れ、その後、原音データ生成部36で波形加工が施され
る。その結果(原音データと呼ぶ)に、以下、述べる音
データ圧縮処理を施し、結果(圧縮音データ)を波形メ
モリ46(圧縮音データマスター)に記録する。
【0028】音データの圧縮は、時間と振幅の両方向に
ついて行なわれる。まず、デシメーションフィルタ38
で時間軸方向のデータ圧縮、即ち、アンダーサンプリン
グを行なう。例えば、デシメーションフィルタ38は、
1/8間引き・16点移動平均フィルタで構成される。こ
のフィルタは、フィルタ入力、即ち原音データ生成部2
6からの原音データをorig(n)で表わし、フィル
タ出力をdeci(n)で表わすと、 deci(0)=0 deci(1)=orig(0)+……+orig(7) deci(2)=orig(0)+……+orig(16) deci(3)=orig(8)+……+orig(24) ………… を演算する。この結果、デシメーションフィルタ38の
出力データのサンプリング周波数は、原音データの1/
8、即ち、fs=5304Hzに低減される。なお、1
6点移動平均化の作用により、2.5KHz付近の成分
が減少する。
ついて行なわれる。まず、デシメーションフィルタ38
で時間軸方向のデータ圧縮、即ち、アンダーサンプリン
グを行なう。例えば、デシメーションフィルタ38は、
1/8間引き・16点移動平均フィルタで構成される。こ
のフィルタは、フィルタ入力、即ち原音データ生成部2
6からの原音データをorig(n)で表わし、フィル
タ出力をdeci(n)で表わすと、 deci(0)=0 deci(1)=orig(0)+……+orig(7) deci(2)=orig(0)+……+orig(16) deci(3)=orig(8)+……+orig(24) ………… を演算する。この結果、デシメーションフィルタ38の
出力データのサンプリング周波数は、原音データの1/
8、即ち、fs=5304Hzに低減される。なお、1
6点移動平均化の作用により、2.5KHz付近の成分
が減少する。
【0029】デシメーションフィルタ38からの出力デ
ータに対し、ディザ付加部40で1/2fs、即ち265
2Hzの周期性ディザを付加する。即ち、ディザ付加部
40は、 deci(0)=deci(0)+D deci(1)=deci(1)−D deci(2)=deci(2)+D ………… の演算を実行する(Dはディザ値)。
ータに対し、ディザ付加部40で1/2fs、即ち265
2Hzの周期性ディザを付加する。即ち、ディザ付加部
40は、 deci(0)=deci(0)+D deci(1)=deci(1)−D deci(2)=deci(2)+D ………… の演算を実行する(Dはディザ値)。
【0030】次に、下位ビット切捨部42で、ディザを
付加した16ビット音データの下位ビット、例えば下位
8ビットを切り捨てる。この結果、音データは8ビット
となる。次にこの8ビット音データに対し、ノイズシェ
ーピング付ADPCM変調部44で再量子化を施し、更
に振幅圧縮したデータ、例えば4ビットの音データを形
成する。このノイズシェーピングADPCM付変調部4
4は、この発明の特徴であり、図1(B)に記録系とし
て示した微分器1、演算器、ADPCM変調器3、量子
化誤差算出器4、誤差列記憶部5の機能を含んでいる。
付加した16ビット音データの下位ビット、例えば下位
8ビットを切り捨てる。この結果、音データは8ビット
となる。次にこの8ビット音データに対し、ノイズシェ
ーピング付ADPCM変調部44で再量子化を施し、更
に振幅圧縮したデータ、例えば4ビットの音データを形
成する。このノイズシェーピングADPCM付変調部4
4は、この発明の特徴であり、図1(B)に記録系とし
て示した微分器1、演算器、ADPCM変調器3、量子
化誤差算出器4、誤差列記憶部5の機能を含んでいる。
【0031】図7はノイズシェーピングADPCM付変
調部44の動作(図示しないコンピュータにより実行さ
れるADPCM変調プログラム)を示すフローチャート
である。このプログラムはノイズシェーピングなし(N
S0次)、1次ノイズシェーピング(NS1次)、2次
ノイズシェーピング(NS2次)の3つのモードをもっ
ており、事前に選択したモードでプログラムが実行され
る。また、復号処理のために図5と図6に示すようなA
DPCMデータテーブルを使用する。
調部44の動作(図示しないコンピュータにより実行さ
れるADPCM変調プログラム)を示すフローチャート
である。このプログラムはノイズシェーピングなし(N
S0次)、1次ノイズシェーピング(NS1次)、2次
ノイズシェーピング(NS2次)の3つのモードをもっ
ており、事前に選択したモードでプログラムが実行され
る。また、復号処理のために図5と図6に示すようなA
DPCMデータテーブルを使用する。
【0032】ADPCMデータテーブルは符号化差分デ
ータP(ポインタと呼ばれる)を適応量子化幅の尺度で
あるラインナンバーMを引数として復号化差分データD
(M、P)を返すテーブルである。ラインナンバーMの
行にある復号化差分データの最大値(nを符号化ビット
数とするとP=2n-1−1の列にあるデータ値)をMm
axで表わすと、ラインナンバーMの量子化幅はMma
x/(2n-1−1)である。したがって、量子化幅はラ
インナンバーMを決定することで決まる。量子化幅を適
応化するため、ラインナンバーMは符号化差分データP
に基づいて適宜変更される。
ータP(ポインタと呼ばれる)を適応量子化幅の尺度で
あるラインナンバーMを引数として復号化差分データD
(M、P)を返すテーブルである。ラインナンバーMの
行にある復号化差分データの最大値(nを符号化ビット
数とするとP=2n-1−1の列にあるデータ値)をMm
axで表わすと、ラインナンバーMの量子化幅はMma
x/(2n-1−1)である。したがって、量子化幅はラ
インナンバーMを決定することで決まる。量子化幅を適
応化するため、ラインナンバーMは符号化差分データP
に基づいて適宜変更される。
【0033】ここでは、ADPCMデータテーブルとし
て図5に示す正数用(P≧0)と図6に示す負数用とが
用意されている。列番号00〜07はポインタ(正確に
はPの絶対値)を表わす。列番号が07までなのは、符
号化ビット数を4としているからである。ラインは0〜
22である。各テーブルの行(ライン)と列の交点に示
す8ビットデータ(16進表記)は復号化差分データ
(9ビット)から符号ビットを除いた残り8ビットを表
わしている。量子化幅はラインナンバーに対して増加し
ている。例えばラインナンバー0の量子化幅(即ち、A
DPCM変調器がラインナンバー0で動作しているとき
の量子化幅)は07(16進)/7(10進)即ち1で
ある。ここに、07(16進)はラインナンバー0の行
データの最大値(列番号7にある)であり、7は最大値
が並ぶ列番号07、つまり4ビット符号化データPの最
大値を表わす。また、ラインナンバー1の量子化幅は8
/7である。
て図5に示す正数用(P≧0)と図6に示す負数用とが
用意されている。列番号00〜07はポインタ(正確に
はPの絶対値)を表わす。列番号が07までなのは、符
号化ビット数を4としているからである。ラインは0〜
22である。各テーブルの行(ライン)と列の交点に示
す8ビットデータ(16進表記)は復号化差分データ
(9ビット)から符号ビットを除いた残り8ビットを表
わしている。量子化幅はラインナンバーに対して増加し
ている。例えばラインナンバー0の量子化幅(即ち、A
DPCM変調器がラインナンバー0で動作しているとき
の量子化幅)は07(16進)/7(10進)即ち1で
ある。ここに、07(16進)はラインナンバー0の行
データの最大値(列番号7にある)であり、7は最大値
が並ぶ列番号07、つまり4ビット符号化データPの最
大値を表わす。また、ラインナンバー1の量子化幅は8
/7である。
【0034】次に、図7を参照してノイズシェーピング
ADPCM変調処理を説明する。まず、7−1でPCM
データ(下位8ビットを切り捨てた振幅量子化音デー
タ)からPCM差分値△(9ビットデータ)を計算す
る。
ADPCM変調処理を説明する。まず、7−1でPCM
データ(下位8ビットを切り捨てた振幅量子化音デー
タ)からPCM差分値△(9ビットデータ)を計算す
る。
【0035】次に7−2で符号化される差分入力(図1
(A)のADPCM変調器3の入力に相当するデータ)
を演算する。ここに、ノイズシェーピング(NS)のモ
ードが0次のときは、PCM差分値△から1サンプル前
の量子化誤差△′を引くことにより差分入力が得られる
(△=△−△′)。1次のノイズシェーピングの場合
は、△=△−2△′+△″により、即ちPCM差分値△
から1サンプル前の量子化誤差△′の2倍を引き、2サ
ンプル前の量子化誤差△″を加えることで差分入力が得
られる。2次のノイズシェーピングを実行する場合に
は、
(A)のADPCM変調器3の入力に相当するデータ)
を演算する。ここに、ノイズシェーピング(NS)のモ
ードが0次のときは、PCM差分値△から1サンプル前
の量子化誤差△′を引くことにより差分入力が得られる
(△=△−△′)。1次のノイズシェーピングの場合
は、△=△−2△′+△″により、即ちPCM差分値△
から1サンプル前の量子化誤差△′の2倍を引き、2サ
ンプル前の量子化誤差△″を加えることで差分入力が得
られる。2次のノイズシェーピングを実行する場合に
は、
【数2】 により、即ち、PCM差分値△から1サンプル前の量子
化誤差△′の3倍を引き、2サンプル前の量子化誤差
△″の3倍を足し、3サンプル前の量子化誤差
化誤差△′の3倍を引き、2サンプル前の量子化誤差
△″の3倍を足し、3サンプル前の量子化誤差
【外1】 を引くことにより差分入力値を得る。ただし、計算結果
の△が|△|>255になったときは差分入力値を△=
±255に設定する。
の△が|△|>255になったときは差分入力値を△=
±255に設定する。
【0036】次に7−3で|△|>Mmaxかどうか、
即ち、差分入力の絶対値が現在のラインナンバーMの音
データの最大値Mmaxを超えたかどうかをチェックす
る。超えてなければ、7−4に進む。7−4は差分符号
化器の動作である。即ち、9ビットの差分入力△を4ビ
ットの符号化差分音データP(ポインタ)に変換する。
この符号化は、差分入力△と現ラインMの最大データ値
Mmaxとを用いて、 |P|=INT(((|△|・7−3.5)/Mmax)+0.5) により計算される。ここにINT( )は( )内の小
数点以下を切り捨てることを示す。Pの符号ビットは△
の符号と一致する(ただし、|P|=0のときは△の符
号にかかわらず正の符号ビットがつく)。
即ち、差分入力の絶対値が現在のラインナンバーMの音
データの最大値Mmaxを超えたかどうかをチェックす
る。超えてなければ、7−4に進む。7−4は差分符号
化器の動作である。即ち、9ビットの差分入力△を4ビ
ットの符号化差分音データP(ポインタ)に変換する。
この符号化は、差分入力△と現ラインMの最大データ値
Mmaxとを用いて、 |P|=INT(((|△|・7−3.5)/Mmax)+0.5) により計算される。ここにINT( )は( )内の小
数点以下を切り捨てることを示す。Pの符号ビットは△
の符号と一致する(ただし、|P|=0のときは△の符
号にかかわらず正の符号ビットがつく)。
【0037】次に7−5を実行する。7−5では量子化
誤差列のデータ移動(シフト動作)と今回の差分入力△
についての量子化誤差の評価である。量子化誤差は △′=(△/|△|)・(D(M、|P|)−|△|) により計算される。即ち、ラインナンバーMとポインタ
P(符号化差分値)の絶対値|P|とを用いて、正数用
ADPCMデータテーブルメモリ(図5)から該当する
復号化差分値の絶対値D(M、|P|)を取り出し、そ
れから符号化前(元)の差分入力△の絶対値|△|を引
き、その結果に+1(△の符号ビットが“正”のとき)
か−1(△の符号ビットが“負”のとき)をかけること
により、(復号化差分値−元差分値)である量子化誤差
△′が計算される。
誤差列のデータ移動(シフト動作)と今回の差分入力△
についての量子化誤差の評価である。量子化誤差は △′=(△/|△|)・(D(M、|P|)−|△|) により計算される。即ち、ラインナンバーMとポインタ
P(符号化差分値)の絶対値|P|とを用いて、正数用
ADPCMデータテーブルメモリ(図5)から該当する
復号化差分値の絶対値D(M、|P|)を取り出し、そ
れから符号化前(元)の差分入力△の絶対値|△|を引
き、その結果に+1(△の符号ビットが“正”のとき)
か−1(△の符号ビットが“負”のとき)をかけること
により、(復号化差分値−元差分値)である量子化誤差
△′が計算される。
【0038】ただし、1次か2次のノイズシェーピング
モードのときは、量子化誤差の計算に先立ち、データ移
動を行う。即ち、1次ノイズシェーピングの場合は、
△′の内容を△″に移し、2次ノイズシェーピングの場
合は△″の内容を
モードのときは、量子化誤差の計算に先立ち、データ移
動を行う。即ち、1次ノイズシェーピングの場合は、
△′の内容を△″に移し、2次ノイズシェーピングの場
合は△″の内容を
【外1】に移し、△′の内容を△″に移し、その後で量
子化誤差△′を計算する。
子化誤差△′を計算する。
【0039】次に7−6を実行する。7−6は量子化幅
を増大させるためのライン更新処理であり、ここでは、
ポインタの絶対値|P|が|P|≧5でラインナンバー
MがM<22ならばM=M+1によりラインをインクリ
メントする。ここに、|P|≧5を量子化幅増大の条件
としている点は入力波形に対する追従性をよくする効果
をもたらす。即ち、従来はポインタないし符号化差分デ
ータの値が、ラインの量子化幅(1LSB幅)で表現で
きる最大または最小の数値(4ビット符号化の場合で+
7=0111(2進)か−7=1001(2進)とな
る)にならなければ、ラインのインクリメントないし量
子化幅の増分を行っていなかった。ここに示したよう
に、ポインタが最大または最小の数値に達するより前の
値(7−6でいえば5または−5)でラインをインクリ
メントすることにより、波形追従性が向上する。
を増大させるためのライン更新処理であり、ここでは、
ポインタの絶対値|P|が|P|≧5でラインナンバー
MがM<22ならばM=M+1によりラインをインクリ
メントする。ここに、|P|≧5を量子化幅増大の条件
としている点は入力波形に対する追従性をよくする効果
をもたらす。即ち、従来はポインタないし符号化差分デ
ータの値が、ラインの量子化幅(1LSB幅)で表現で
きる最大または最小の数値(4ビット符号化の場合で+
7=0111(2進)か−7=1001(2進)とな
る)にならなければ、ラインのインクリメントないし量
子化幅の増分を行っていなかった。ここに示したよう
に、ポインタが最大または最小の数値に達するより前の
値(7−6でいえば5または−5)でラインをインクリ
メントすることにより、波形追従性が向上する。
【0040】次に7−7を実行する。7−7は量子化幅
を減少するためのライン更新処理である。P=0かつM
>0ならばM=M−1によってラインをデクリメントし
ている。7−3で|△|>Mmaxのときは、7−6に
進み、ポインタPをP=±7に設定する。次に7−9で
量子化誤差△′の算出と誤差データの移動を行う。D
(M、|P|)の代りに、Mmaxが使用される点を除
き、7−9の処理は7−5の処理と同じである。次に7
−10でM<22を条件としてM=M+1によりライン
のインクリメントを実行する。7−7または7−10の
実行後、7−11を実行する。7−11は差分符号化デ
ータPをRAM(図4の波形メモリ46)に書き込む処
理である。
を減少するためのライン更新処理である。P=0かつM
>0ならばM=M−1によってラインをデクリメントし
ている。7−3で|△|>Mmaxのときは、7−6に
進み、ポインタPをP=±7に設定する。次に7−9で
量子化誤差△′の算出と誤差データの移動を行う。D
(M、|P|)の代りに、Mmaxが使用される点を除
き、7−9の処理は7−5の処理と同じである。次に7
−10でM<22を条件としてM=M+1によりライン
のインクリメントを実行する。7−7または7−10の
実行後、7−11を実行する。7−11は差分符号化デ
ータPをRAM(図4の波形メモリ46)に書き込む処
理である。
【0041】次に7−12でファイルに残りがあれば、
7−1に戻って以上述べた処理を繰り返し、ファイルエ
ンドならノイズシェーピングADPCM変調プログラム
の実行は終了する。
7−1に戻って以上述べた処理を繰り返し、ファイルエ
ンドならノイズシェーピングADPCM変調プログラム
の実行は終了する。
【0042】なお、図4の音データ記録装置において、
下位ビット切捨部42を省略し、代りにノイズシェーピ
ングADPCM変調部44において、16ビットのディ
ザ付加音データ入力を4ビットの符号化音データに量子
化するようにしてもよい。あるいは下位ビットの切捨て
の代りに丸め(四捨五入)を行ってもよい。この場合、
4ビット符号化差分値Pは |P|=INT(((△・7)/Mmax))+0.5) で計算できる。以上のデータ圧縮処理の結果、波形メモ
リ46には、サンプリング周波数fs=5304Hz、
4ビット/サンプルの音データが記録されることにな
る。
下位ビット切捨部42を省略し、代りにノイズシェーピ
ングADPCM変調部44において、16ビットのディ
ザ付加音データ入力を4ビットの符号化音データに量子
化するようにしてもよい。あるいは下位ビットの切捨て
の代りに丸め(四捨五入)を行ってもよい。この場合、
4ビット符号化差分値Pは |P|=INT(((△・7)/Mmax))+0.5) で計算できる。以上のデータ圧縮処理の結果、波形メモ
リ46には、サンプリング周波数fs=5304Hz、
4ビット/サンプルの音データが記録されることにな
る。
【0043】音データ再生装置(図8、9) 図8にADPCMの復調を含む音データ再生装置の構成
例を示す。図8の音データ再生装置において、波形メモ
リ50には、音データ記録装置(図4)の波形メモリ4
6に記録したのと同一のデータ(サンプリング周波数が
5304Hzで4ビット/サンプルの符号化差分音デー
タ)が記録される。この波形メモリ50からの符号化差
分音データはADPCM復調部52により復号化され
る。ADPCM復調部52は音データ記録装置のノイズ
シェーピングADPCM変調部44に含まれる復調部の
復号化差分音データ出力と同じものを出力する。このた
めに、ADPCM復調部52は、ノイズシェーピングA
DPCM変調部44と同様の仕方で量子化幅を適合化す
る。例えば、上述したような変換テーブルを用いるノイ
ズシェーピングADPCM変調部44の場合には波形メ
モリ50からの復号化差分音データと現在のラインナン
バーとによって変換テーブルをルックアップして復号化
差分音データを取り出すとともに、ノイズシェーピング
ADPCM変調部44におけるラインナンバーの更新法
と同じ方法でラインナンバーを適宜更新(デクリメント
またはインクリメント)する。
例を示す。図8の音データ再生装置において、波形メモ
リ50には、音データ記録装置(図4)の波形メモリ4
6に記録したのと同一のデータ(サンプリング周波数が
5304Hzで4ビット/サンプルの符号化差分音デー
タ)が記録される。この波形メモリ50からの符号化差
分音データはADPCM復調部52により復号化され
る。ADPCM復調部52は音データ記録装置のノイズ
シェーピングADPCM変調部44に含まれる復調部の
復号化差分音データ出力と同じものを出力する。このた
めに、ADPCM復調部52は、ノイズシェーピングA
DPCM変調部44と同様の仕方で量子化幅を適合化す
る。例えば、上述したような変換テーブルを用いるノイ
ズシェーピングADPCM変調部44の場合には波形メ
モリ50からの復号化差分音データと現在のラインナン
バーとによって変換テーブルをルックアップして復号化
差分音データを取り出すとともに、ノイズシェーピング
ADPCM変調部44におけるラインナンバーの更新法
と同じ方法でラインナンバーを適宜更新(デクリメント
またはインクリメント)する。
【0044】ADPCM復調部52の符号化動作の詳細
を図9に示す。波形メモリ50から読み出した符号化差
分データPの符号を9−1でチェックする。P≧0な
ら、図5に示す正数用のテーブルを選択し(9−2)、
P<0なら図6に示す負数用のテーブルを選択する。次
に、選択したテーブルから、ラインMとポインタPに対
するデータD(M、P)を取り出し、Dにセットする
(9−3、9−6)。テーブルデータは符号ビット(M
SB)を省略した復号化差分データなので、符号化差分
データPの符号ビットに合わせて、Dに符号ビットを付
ける(9−4、9−7)。続いて、ライン更新90を実
行する。即ち、|P|≧5かつM0<22なら(9−
8)、M=M+1によりラインをインクリメントし(9
−9)、P=0かつM>0なら(9−10)、M=M−
1によりラインをインクリメントする。
を図9に示す。波形メモリ50から読み出した符号化差
分データPの符号を9−1でチェックする。P≧0な
ら、図5に示す正数用のテーブルを選択し(9−2)、
P<0なら図6に示す負数用のテーブルを選択する。次
に、選択したテーブルから、ラインMとポインタPに対
するデータD(M、P)を取り出し、Dにセットする
(9−3、9−6)。テーブルデータは符号ビット(M
SB)を省略した復号化差分データなので、符号化差分
データPの符号ビットに合わせて、Dに符号ビットを付
ける(9−4、9−7)。続いて、ライン更新90を実
行する。即ち、|P|≧5かつM0<22なら(9−
8)、M=M+1によりラインをインクリメントし(9
−9)、P=0かつM>0なら(9−10)、M=M−
1によりラインをインクリメントする。
【0045】ADPCM復調部52から出力される復号
化差分音データの最大有効ビット数は9である。この復
号化差分音データを単純に積分すれば、ノイズシェーピ
ングADPCM変調部44の入力に相当する音データが
復元される。ノイズシェーピングの作用により、積分出
力にはADPCM変調部44の入力である信号成分に、
ADPCM変調部44での量子化誤差がそのまま重畳す
るのでなくノイズシェーピング関数で低域を減衰させた
ものが雑音成分として重畳する。
化差分音データの最大有効ビット数は9である。この復
号化差分音データを単純に積分すれば、ノイズシェーピ
ングADPCM変調部44の入力に相当する音データが
復元される。ノイズシェーピングの作用により、積分出
力にはADPCM変調部44の入力である信号成分に、
ADPCM変調部44での量子化誤差がそのまま重畳す
るのでなくノイズシェーピング関数で低域を減衰させた
ものが雑音成分として重畳する。
【0046】図8の積分・補間フィルタ54ではこのよ
うな積分処理とともに、データの時間軸方向での圧伸、
即ち、オーバーサンプリングのために、補間処理を行っ
ている。例えば、オーバーサンプリング比として、4を
選ぶと波形メモリ50にある音データのサンプリング周
波数は5304Hzであるので、この4倍オーバーサン
プリングにより、フィルタ54出力データのサンプリン
グ周波数は21216Hzとなる。この場合、積分・補
間フィルタ54である積分4倍オーバーサンプリング補
間フィルタは、フィルタ54入力、即ち、ADPCM復
調部52出力をdif(n)、フィルタ54出力をso
und(4n+k)(ここにk=0,1,2,3)とし
て、例えば、 sound(4n)=sound(4n−1)+dif(n) sound(4n+1)=sound(4n)+dif(n) sound(4n+2)=sound(4n+1)+dif(n) sound(4n+3)=sound(4n+2)+dif(n) に示すような、積分・4点直線補間演算を行なうことが
できる。このフィルタの伝達関数H(z)を示すと、 H(z)=(1+z-1+z-2+z-3)2/4 となる。この結果、積分・補間フィルタ54の音データ
出力は、最大10ビット、サンプリング周波数2121
6Hzとなる。なお、sound( )の始めの方のデ
ータは、再生時におけるクリップ音防止のために0に初
期化される。
うな積分処理とともに、データの時間軸方向での圧伸、
即ち、オーバーサンプリングのために、補間処理を行っ
ている。例えば、オーバーサンプリング比として、4を
選ぶと波形メモリ50にある音データのサンプリング周
波数は5304Hzであるので、この4倍オーバーサン
プリングにより、フィルタ54出力データのサンプリン
グ周波数は21216Hzとなる。この場合、積分・補
間フィルタ54である積分4倍オーバーサンプリング補
間フィルタは、フィルタ54入力、即ち、ADPCM復
調部52出力をdif(n)、フィルタ54出力をso
und(4n+k)(ここにk=0,1,2,3)とし
て、例えば、 sound(4n)=sound(4n−1)+dif(n) sound(4n+1)=sound(4n)+dif(n) sound(4n+2)=sound(4n+1)+dif(n) sound(4n+3)=sound(4n+2)+dif(n) に示すような、積分・4点直線補間演算を行なうことが
できる。このフィルタの伝達関数H(z)を示すと、 H(z)=(1+z-1+z-2+z-3)2/4 となる。この結果、積分・補間フィルタ54の音データ
出力は、最大10ビット、サンプリング周波数2121
6Hzとなる。なお、sound( )の始めの方のデ
ータは、再生時におけるクリップ音防止のために0に初
期化される。
【0047】次に、移動平均デジタルフィルタ56で音
データからディザ成分を除去する。これまで述べた数値
例では、周期性ディザ周波数は2652Hzであり、移
動平均デジタルフィルタ56の入力データ、即ち、積分
・補間フィルタ54の出力データのサンプリング周波数
は21216Hz(ディザ周波数の8倍)であるので、
移動平均デジタルフィルタ56として8点移動平均フィ
ルタを使用する。この場合、フィルタ56は、 sound(0)=sound(0)+sound(1)+……sound(7) sound(1)=sound(1)+sound(2)+……sound(8) の処理を行なう。これにより記録系で音データに混入し
たディザ成分を完全に除去できる。また、ADPCM変
調による量子化ノイズや、フイルタ54の補間ノイズの
うち、2652Hz付近の成分を減衰できる。
データからディザ成分を除去する。これまで述べた数値
例では、周期性ディザ周波数は2652Hzであり、移
動平均デジタルフィルタ56の入力データ、即ち、積分
・補間フィルタ54の出力データのサンプリング周波数
は21216Hz(ディザ周波数の8倍)であるので、
移動平均デジタルフィルタ56として8点移動平均フィ
ルタを使用する。この場合、フィルタ56は、 sound(0)=sound(0)+sound(1)+……sound(7) sound(1)=sound(1)+sound(2)+……sound(8) の処理を行なう。これにより記録系で音データに混入し
たディザ成分を完全に除去できる。また、ADPCM変
調による量子化ノイズや、フイルタ54の補間ノイズの
うち、2652Hz付近の成分を減衰できる。
【0048】8点移動平均フィルタ56の出力データは
13ビットとなる。増幅部(乗算部)58では、これを
更に増幅して、DAC60のフルスケールに相当する振
幅、例えば16ビットフル振幅になるようにする。この
ようにして伸長再生したデジタル音データを変換周波数
21216Hz、16ビット分解能のDAC60に入力
してアナログ信号に変換し、更に、LPF62に通すこ
とにより、アナログ音を再生する。
13ビットとなる。増幅部(乗算部)58では、これを
更に増幅して、DAC60のフルスケールに相当する振
幅、例えば16ビットフル振幅になるようにする。この
ようにして伸長再生したデジタル音データを変換周波数
21216Hz、16ビット分解能のDAC60に入力
してアナログ信号に変換し、更に、LPF62に通すこ
とにより、アナログ音を再生する。
【0049】音データ再生装置の応用例(図10、1
1) 図8で述べたような音データ再生装置は電子楽器の音源
に利用できる。この場合、波形メモリ50には音色の豊
富化のために多数の音データが用意されることが望まれ
る。また、ADPCM復調部52、積分・補間フイルタ
54、移動平均フィルタ56、増幅部58等における処
理は、プログラム制御の下にCPUを動作させることに
よって実現できる。音データ再生装置を電子楽器に組み
込んだ場合のハード構成の主要部を図10に参照番号1
00で示す。プログラムROM102にプログラムが記
憶される。波形データROM108には種々の音のデー
タが記憶される。RAM110は、音再生処理のための
作業エリアを含む。割込タイマー106はDAC114
の変換周期に相当する周期、例えば1/20KHzの周期で
CPU104に割込を要求し、CPU104に音再生処
理ルーチン(割込ルーチン)を実行させる。
1) 図8で述べたような音データ再生装置は電子楽器の音源
に利用できる。この場合、波形メモリ50には音色の豊
富化のために多数の音データが用意されることが望まれ
る。また、ADPCM復調部52、積分・補間フイルタ
54、移動平均フィルタ56、増幅部58等における処
理は、プログラム制御の下にCPUを動作させることに
よって実現できる。音データ再生装置を電子楽器に組み
込んだ場合のハード構成の主要部を図10に参照番号1
00で示す。プログラムROM102にプログラムが記
憶される。波形データROM108には種々の音のデー
タが記憶される。RAM110は、音再生処理のための
作業エリアを含む。割込タイマー106はDAC114
の変換周期に相当する周期、例えば1/20KHzの周期で
CPU104に割込を要求し、CPU104に音再生処
理ルーチン(割込ルーチン)を実行させる。
【0050】動作において、鍵盤112で押鍵がある
と、CPU104はそれを検知し、押鍵に対する音発生
のため再生チャンネルを割当て、波形データメモリ10
8における該当する音データの先頭をロケートする。以
降、割込タイマー102につづく音再生処理ルーチン中
の該当チャンネル再生ルーチンにおいて、波形データメ
モリ108から音データを読み出し、ADPCM復調処
理、積分・補間フイルタリング処理、移動平均フイルタ
リング処理、増幅処理を実行してチャンネル再生データ
を生成する。生成したチャンネル再生データは音再生処
理ルーチンの始めにすべての再生チャンネルデータを足
し合わせた形式でDAC114に転送される。DAC1
14はこれをアナログ信号に変換し、サウンドシステム
116に通して音を再生する。
と、CPU104はそれを検知し、押鍵に対する音発生
のため再生チャンネルを割当て、波形データメモリ10
8における該当する音データの先頭をロケートする。以
降、割込タイマー102につづく音再生処理ルーチン中
の該当チャンネル再生ルーチンにおいて、波形データメ
モリ108から音データを読み出し、ADPCM復調処
理、積分・補間フイルタリング処理、移動平均フイルタ
リング処理、増幅処理を実行してチャンネル再生データ
を生成する。生成したチャンネル再生データは音再生処
理ルーチンの始めにすべての再生チャンネルデータを足
し合わせた形式でDAC114に転送される。DAC1
14はこれをアナログ信号に変換し、サウンドシステム
116に通して音を再生する。
【0051】図11にチャンネル再生ルーチンのフロー
を示す。ADPCM復調・積分・補間ルーチン200に
おいて、音データメモリから該当する符号化差分音デー
タを4倍オーバーサンプリングのために、4回のパスに
つき1回の割合で取り出し、それを復号化する。復号化
11−Aの詳細は図9について既に述べた。復号化の結
果Dを毎回、SDに加えて積分を実行する。移動平均増
幅ルーチン300ではルーチン200からの新たな積分
値SD(4倍オーバーサンプリング直線補間積分値)
と、BUF( )にある過去7個の積分値サンプルを足
し合わせて8点移動平均フィルタリングを行ないその結
果AVを増幅率aで増幅(乗算)する。更に、ルーチン
200からの積分値サンプルSDをBUF( )上の格
納場所nに格納し、次回のパスのために格納場所を更新
する。チャンネル再生ルーチンの実行結果(チャンネル
再生音データ)はAVによって示される。
を示す。ADPCM復調・積分・補間ルーチン200に
おいて、音データメモリから該当する符号化差分音デー
タを4倍オーバーサンプリングのために、4回のパスに
つき1回の割合で取り出し、それを復号化する。復号化
11−Aの詳細は図9について既に述べた。復号化の結
果Dを毎回、SDに加えて積分を実行する。移動平均増
幅ルーチン300ではルーチン200からの新たな積分
値SD(4倍オーバーサンプリング直線補間積分値)
と、BUF( )にある過去7個の積分値サンプルを足
し合わせて8点移動平均フィルタリングを行ないその結
果AVを増幅率aで増幅(乗算)する。更に、ルーチン
200からの積分値サンプルSDをBUF( )上の格
納場所nに格納し、次回のパスのために格納場所を更新
する。チャンネル再生ルーチンの実行結果(チャンネル
再生音データ)はAVによって示される。
【0052】変形例 以上で実施例の説明を終えるが、この発明の範囲内で種
々の変形、応用が可能である。例えば、上記実施例では
ADPCMの変調と復調においてラインとポインタ(符
号化差分データ)とを引数(argument)として
復号化差分データを返す変換テーブル(図5、図6)を
用いているが、これに代え、ラインナンバーから量子化
幅あるいは最大値Mmaxを返すテーブルを用いてもよ
い。あるいは、量子化幅または最大値Mmaxをライン
ナンバーMを用いて直接計算できる場合は、直接計算に
よって復号化差分値を求めることができる。例えば、図
5と図6の変換テーブルの場合、MmaxとラインMと
の間に、M=0〜17の範囲で Mmax=7+((M・M+1)/2) M>17に対して、 Mmax=7+((M・M+1)/2)+(17−M) の関係がある。この関係を利用した復号化処理のフロー
を図12に示す。12−1で上記関係式に従って、ライ
ンナンバーMからMmaxを計算する。12−2で、符
号化4ビットの最大値=24-1−1=7を用いて、W=
Mmax/7により量子化幅を計算する。次に(12−
3)D=ROUND(P・W)により、復号化差分値D
を計算する(ここにROUND( )は( )内の値の
小数点以下の丸めを表わす)。最後に(12−4)、ラ
インMを更新する。この更新処理は図9のライン更新9
0と同様である。
々の変形、応用が可能である。例えば、上記実施例では
ADPCMの変調と復調においてラインとポインタ(符
号化差分データ)とを引数(argument)として
復号化差分データを返す変換テーブル(図5、図6)を
用いているが、これに代え、ラインナンバーから量子化
幅あるいは最大値Mmaxを返すテーブルを用いてもよ
い。あるいは、量子化幅または最大値Mmaxをライン
ナンバーMを用いて直接計算できる場合は、直接計算に
よって復号化差分値を求めることができる。例えば、図
5と図6の変換テーブルの場合、MmaxとラインMと
の間に、M=0〜17の範囲で Mmax=7+((M・M+1)/2) M>17に対して、 Mmax=7+((M・M+1)/2)+(17−M) の関係がある。この関係を利用した復号化処理のフロー
を図12に示す。12−1で上記関係式に従って、ライ
ンナンバーMからMmaxを計算する。12−2で、符
号化4ビットの最大値=24-1−1=7を用いて、W=
Mmax/7により量子化幅を計算する。次に(12−
3)D=ROUND(P・W)により、復号化差分値D
を計算する(ここにROUND( )は( )内の値の
小数点以下の丸めを表わす)。最後に(12−4)、ラ
インMを更新する。この更新処理は図9のライン更新9
0と同様である。
【0053】また、上記実施例の音データ再生装置では
オーバーサンプリングのための補間として単純な直線補
間を行っているが、より精度の高い補間を行うことも可
能である。また、オーバーサンプリング比を4として例
示したが、これに限らず、使用する音データ再生装置の
データ処理能力の範囲内で、より高いオーバーサンプリ
ングを実行してもよく、それにより、ノイズシェーピン
グのついた雑音成分を含む再生音信号を後置LPFに通
したときの残留雑音パワーを一層低減でき、SN費を改
善できる。更にこの発明は電子楽器に限らず音声通信に
も応用できる。
オーバーサンプリングのための補間として単純な直線補
間を行っているが、より精度の高い補間を行うことも可
能である。また、オーバーサンプリング比を4として例
示したが、これに限らず、使用する音データ再生装置の
データ処理能力の範囲内で、より高いオーバーサンプリ
ングを実行してもよく、それにより、ノイズシェーピン
グのついた雑音成分を含む再生音信号を後置LPFに通
したときの残留雑音パワーを一層低減でき、SN費を改
善できる。更にこの発明は電子楽器に限らず音声通信に
も応用できる。
【0054】
【発明の効果】本発明によれば、ノイズシェーピングに
て低域の量子化ノイズを抑制する一方で、復号化された
後にオーバーサンプリング再生して量子化ノイズを広帯
域に分散させる為、再生音のSN比改善を図ることがで
きる。
て低域の量子化ノイズを抑制する一方で、復号化された
後にオーバーサンプリング再生して量子化ノイズを広帯
域に分散させる為、再生音のSN比改善を図ることがで
きる。
【図1】この発明による音データ符号化装置の基本構成
を示すブロック図。
を示すブロック図。
【図2】ADPCM変調による再量子化ノイズに1次の
ノイズシェーピングをつける構成を示すブロック図。
ノイズシェーピングをつける構成を示すブロック図。
【図3】ADPCM変調による再量子化ノイズに2次の
ノイズシェーピングをつける構成を示すブロック図。
ノイズシェーピングをつける構成を示すブロック図。
【図4】この発明の特徴を組み込んだ音データ記録装置
の全体構成を示すブロック図。
の全体構成を示すブロック図。
【図5】4ビット符号化のADPCMで使用する正数用
のADPCMデータテーブルを示す図。
のADPCMデータテーブルを示す図。
【図6】負数用のADPCMデータテーブルを示す図。
【図7】ノイズシェーピング付のADPCM変調処理の
フローチャート。
フローチャート。
【図8】音データ再生装置の全体構成を示すブロック
図。
図。
【図9】符号化差分音データをADPCM復調によって
復号化する処理のフローチャート。
復号化する処理のフローチャート。
【図10】音データ再生装置を組み込んだ電子楽器のハ
ード構成を示すブロック図。
ード構成を示すブロック図。
【図11】図10のCPUによって実行されるチャンネ
ル音再生ルーチンのフローチャート。
ル音再生ルーチンのフローチャート。
【図12】復号化処理の変形を示すフローチャート。
【図13】従来のADPCM方式の基本構成を示すブロ
ック図。
ック図。
1 微分器 2 演算器 3 ADPCM変調器 4 量子化誤差算出器 5 誤差列記憶部 X 振幅量子化音データ入力 Y 振幅量子化再生音データ出力 10 音データフィルタ 12 減算器 14 ADPCM 16 減算器 18 誤差フィルタ
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) H03M 7/36
Claims (2)
- 【請求項1】 振幅が量子化された音データを差分符号
化・復号化して再生する音データ処理方法において、 差分入力される音データの変化に応じて適応化された量
子化幅にて当該差分入力される音データを符号化して符
号化差分データを生成する適応符号化過程と、 前記適応符号化過程にて生成される符号化差分データに
含まれる量子化誤差の低域パワースペクトルを抑制する
ノイズシェーピング過程と、 前記ノイズシェーピング過程にて量子化誤差の低域パワ
ースペクトルが抑制された符号化差分データを適応量子
化幅で復号化して復号化差分データを生成する適応復号
化過程と、 前記適応復号化過程にて生成される復号化差分データに
含まれる量子化誤差のパワースペクトルを広帯域に分散
させて再生するオーバーサンプリング再生過程と を具備
することを特徴とする音データ処理方法。 - 【請求項2】 振幅が量子化された音データを差分符号
化・復号化して再生する音データ処理装置において、 差分入力される音データの変化に応じて適応化された量
子化幅にて当該差分入力される音データを符号化して符
号化差分データを出力する適応符号化手段と、 前記適応符号化手段から出力される符号化差分データに
含まれる量子化誤差の低域パワースペクトルを抑制する
ノイズシェーピング手段と、 前記ノイズシェーピング手段によって量子化誤差の低域
パワースペクトルが抑制された符号化差分データを適応
量子化幅で復号化して復号化差分データを出力する適応
復号化手段と、 前記適応復号化手段から出力される復号化差分データに
含まれる量子化誤差のパワースペクトルを広帯域に分散
させて再生するオーバーサンプリング再生手段と を具備
することを特徴とする音データ処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP04255922A JP3136797B2 (ja) | 1992-08-31 | 1992-08-31 | 音データ処理方法および音データ処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP04255922A JP3136797B2 (ja) | 1992-08-31 | 1992-08-31 | 音データ処理方法および音データ処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0685688A JPH0685688A (ja) | 1994-03-25 |
JP3136797B2 true JP3136797B2 (ja) | 2001-02-19 |
Family
ID=17285436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP04255922A Expired - Fee Related JP3136797B2 (ja) | 1992-08-31 | 1992-08-31 | 音データ処理方法および音データ処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3136797B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100316769B1 (ko) * | 1997-03-12 | 2002-01-15 | 윤종용 | 오디오 부호화/복호화 장치 및 방법 |
JP3279304B2 (ja) * | 2000-03-28 | 2002-04-30 | ヤマハ株式会社 | 楽曲再生装置および楽曲再生機能を備える携帯電話装置 |
JP4410128B2 (ja) * | 2004-03-12 | 2010-02-03 | パナソニック株式会社 | 周波数変調装置及びポーラ変調送信装置 |
US7706495B2 (en) | 2004-03-12 | 2010-04-27 | Panasonic Corporation | Two-point frequency modulation apparatus |
JP3909529B2 (ja) * | 2004-08-26 | 2007-04-25 | パイオニア株式会社 | ディジタルフィルタ |
FR2961980A1 (fr) * | 2010-06-24 | 2011-12-30 | France Telecom | Controle d'une boucle de retroaction de mise en forme de bruit dans un codeur de signal audionumerique |
-
1992
- 1992-08-31 JP JP04255922A patent/JP3136797B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH0685688A (ja) | 1994-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH08506952A (ja) | 音声ディジタル化装置および方法 | |
JPH0793582B2 (ja) | シグマ−デルタ変調器 | |
EP0145788B1 (en) | Method and apparatus for transmitting digital signal | |
JP2010020356A (ja) | オーディオ信号帯域拡張装置 | |
CN100514858C (zh) | 字长减少电路 | |
KR100497702B1 (ko) | 디지털데이터변환장치 | |
JP3136797B2 (ja) | 音データ処理方法および音データ処理装置 | |
JPH11239061A (ja) | 音声信号処理装置 | |
JP4339490B2 (ja) | 信号処理装置 | |
JPH07283737A (ja) | ディジタル値列のフィルタ方法および回路装置 | |
JP2744006B2 (ja) | 非線形a/d変換回路及び非線形a/d変換方法 | |
JPH07109991B2 (ja) | ノイズシェーピング型再量子化回路 | |
JPH073953B2 (ja) | コード変換器 | |
JPH11215000A (ja) | 信号処理装置 | |
JPH0715281A (ja) | ノイズシェーピング装置 | |
JP3438018B2 (ja) | A/d変換装置及びd/a変換装置 | |
CN1319277C (zh) | 噪声成形滤波器中抑制限制循环之方法及装置 | |
Hicks | The application of dither and noise-shaping to nyquist-rate digital audio: an introduction | |
JP3232865B2 (ja) | デジタル/アナログ信号変換装置 | |
JPH0732349B2 (ja) | デコーダ装置 | |
JP3593201B2 (ja) | オーディオ復号装置 | |
JPH04331517A (ja) | 信号加算装置および信号加算方法 | |
JPH0683358A (ja) | 音データ記録・再生方法及び装置 | |
JPH0653836A (ja) | アナログデイジタル変換回路 | |
JPH061904B2 (ja) | 信号伝送装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20071208 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081208 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081208 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091208 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |