JPH0262876B2 - - Google Patents
Info
- Publication number
- JPH0262876B2 JPH0262876B2 JP60138397A JP13839785A JPH0262876B2 JP H0262876 B2 JPH0262876 B2 JP H0262876B2 JP 60138397 A JP60138397 A JP 60138397A JP 13839785 A JP13839785 A JP 13839785A JP H0262876 B2 JPH0262876 B2 JP H0262876B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- parameters
- signal
- data
- input signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 230000015654 memory Effects 0.000 claims description 121
- 230000003044 adaptive effect Effects 0.000 claims description 33
- 230000004044 response Effects 0.000 description 18
- 230000003111 delayed effect Effects 0.000 description 16
- 238000001514 detection method Methods 0.000 description 15
- 238000005070 sampling Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 13
- 238000000034 method Methods 0.000 description 7
- 230000001934 delay Effects 0.000 description 3
- 230000001755 vocal effect Effects 0.000 description 3
- 230000007704 transition Effects 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000002459 sustained effect Effects 0.000 description 1
Landscapes
- Reverberation, Karaoke And Other Acoustics (AREA)
Description
〔産業上の利用分野〕
この発明は、インパルス応答に基づき作成した
入力信号(音楽信号等)の複数の遅延信号をたた
み込み演算により重ね合せて、入力信号の残響音
を作成する装置に関し、いわゆる適応形たたみ込
み演算における入出力間の遅延を防止するように
したものである。
〔従来の技術〕
音楽信号等に人工的に残響を付加する場合、電
子的な方法として最も直接的なものは、仮想する
ホール等の音響空間におけるインパルス応答に対
応して、直接音から種々の時間遅れをもつ信号の
重ね合せとして表現する方法である。すなわち、
仮想する音響空間のインパルス応答が、第2図に
示すように、直接音R0に対して遅延時間τiとレベ
ルgi(i=1,2,…,n)で構成される複数の
反射音の列であるとすると、この遅延時間τiとレ
ベルgiをパラメータ(反射温パラメータ)とし
て、入力信号の各サンプルについて反射音をそれ
ぞれ作成し、各サンプルの反射音を同時刻ごとに
重ね合せていくこと(このように遅延信号にゲイ
ンをかけて加算する演算をたたみ込み演算とい
う)により、残響音が作成される。
たたみ込み演算は、概念的には、第3図に示す
ように、マルチタツプをもつシフトレジスタ1に
入力信号の各サンプル値をサンプリング周期ごと
に順次シフトしながら入力し、1サンプリング周
期内において、遅延時間τ1〜τoに対応する各タツ
プから各サンプルの遅延信号X1〜Xoをそれぞれ
出力し、これらを乗算器2−1,2−nでそれぞ
れ係数(ゲイン)g1〜goを付与し、加算器3で加
算するもので、
Xput=o
〓i=1
xi・gi
なる残響信号の1つのサンプルが得られる。
具体的には第4図に示すように、入力信号の各
サンプルをデータメモリ10に記憶し、パラメー
タメモリ12から遅延時間データτ1〜τoを順次読
み出し、これらをアドレスとして、各遅延時間τ1
〜τoに対応する遅延信号X1〜Xoをデータメモリ
10から順次読み出し、乗算器14でこれら遅延
信号X1〜Xoに係数g1〜goをそれぞれ付与して、
個々の反射音信号X1・g1〜Xo・goを順次作成し、
これらを加算器18とレジスタ20で構成される
アミユームレータ16で累算することにより、残
響信号の1つのサンプルが作成される。そして、
データメモリ10に新たな入力信号サンプルが書
き込まれるごとに、この一連の動作を繰り返せ
ば、一連の残響信号が作成される。
前記直列逐次処理によるたたみ込み演算は、入
力信号の1サンプリング周期中に前記一連の動作
を行なつて1つの残響信号のサンプルを作成しな
ければならないが、演算速度の制約上、1サンプ
リング周期中にたたみ込み演算できる点数(アミ
ユームレータ16で1周期内にデータに係数を付
して累算する回数)は制限されてしまう。
より自然な残響音とするには、たたみ込み点数
を多くして情報量を大きくすること、すなわち利
用する反射音パラメータ(τi,gi)の数をできる
だけ多くすることが望ましいが、上述したような
理由から実現困難であつた。そこで、従来は反射
音パラメータを適当に間引くことによりこれを実
現したものがあつた。しかし、これでは反射音の
時間軸上の密度が粗くなり、どうしても不自然な
残響音となつてしまいがちという欠点があつた。
また、別ものとして、入力信号が連続している
場合は、残響音の後半部分(小レベル)は入力信
号にマスキングされて聴こえなくなる性質がある
ことに着目し、反射音パラメータの初期部分のみ
使用し、後期部分については割愛するようにした
ものであつた。しかし、これでは、入力信号が連
続している場合はよいが、入力信号が途絶えた場
合には、残響音も急に途絶えてしまうので、これ
また不自然な感じがあつた。
そこで、これらを改善すべく、適応形と称され
るものが考えられた。これは、入力信号が途絶え
た場合に、使用する反射音パラメータの区間を順
次下位にずらしていくもので、入力信号がある場
合には、反射音パラメータを上位ものから所定数
選択し、入力信号がなくなつたら、順次下位のも
のに移行させるようにしたものである。これによ
り、入力信号が途絶える直前のいくつかのサンプ
ルについては、全反射音パラメータが順次適用さ
れて反射音が作成されることになり、その結果長
くかつ自然な残響音が得られるようになる。
適応形では、入力信号がゼロレベルになつたこ
とを検出して、固定形動作(パラメータの使用区
間を上位に固定して残響音を作成する動作)から
適応形動作(パラメータの使用区間を順次下位に
ずらしていく動作)に切替わるが、検出されるゼ
ロレベルが単に信号波形のゼロクロスによるもの
か、あるいは本当に入力信号が途絶えたことによ
るものかを判断するため、数10ミリ秒程度の長い
時間にわたつて入力信号のレベルを検出する必要
がある。また、入力信号が途絶えたことによるも
のと判断した場合、その検出区間の最初の入力信
号部分にさかのぼつて適応形動作を実行していか
なければならないので、従来の適応形において
は、その検出時間分入力信号を常に遅延させてい
なければならず、このため、入出力間に遅延時間
が生じる欠点があつた。以下、この点について詳
しく説明する。
第5図は、従来の適応形の残響付加装置を示し
たものである。
入力信号サンプルは、ゼロ検出部5のプリメモ
リ22に一旦蓄えられ、ゼロ検出を行なう数10ミ
リ秒遅延されて順次適応形たたみ込み演算部6の
データメモリ24に転送されていく。
ゼロ検出回路26では、プリメモリ22に蓄え
られた過去数10ミリ秒程度のサンプルデータに基
づき、これらを累算して、その累算値がある閾値
より高い場合は入力信号持続と判断し、低い場合
は入力信号途絶と判断する。
プリメモリ22から出力される入力信号サンプ
ルは、データメモリ24に順次入力され、最古サ
ンプルを書き込まれているアドレスから順に書き
込んで、順次更新していく。
インパルスレスポンスデイレイメモリ30は、
遅延時間のパラメータデータτi(i=1〜n)を
記憶している。インパルスレスポンスレベルメモ
リ32は、レベルのパラメータデータgi(i=1
〜n)を記憶している。
カウンタ28は、適応形たたみ込み演算部6の
動作タイミング等を制御するための時間計測用で
ある。
順列コントローラ34は、残響音の1サンプル
を作成するのに利用するk個のパラメータとし
て、デイレイメモリ30およびレベルメモリ32
に記憶されている全部でn個あるパラメータ
(τi,gi)のうちのどれを利用するかを選択するも
のである。すなわち、入力信号持続時は、(τi,
gi),(τk,gk)と先頭からk個のパラメータをカ
ウンタ28のカウントに従つて順次読み出す固定
形動作を行なう。
また、ゼロ検出回路26が入力信号途絶を検出
すると、適応形動作を行なう。適応形動作では、
動作開始からの時間(すなわち入力が途絶えてか
らの経過時間)tを計測して、w=τiの関係にあ
るパラメータを上位からk個利用する。すなわ
ち、はじめはt=0なので(τ1,g1),(τk,gk)
が、そして、t>τ1となると、(τ2,d2),(τk+1
,
gk+1)が、更にt>τ2となると、(τ3,g3)〜
(τk+2,gk+2)が、というように利用されるパラ
メータの区域が順次下位に移行していき、また、
これに伴ないたたみ込み演算による累積値が小さ
くなつて、残響音が順次減衰していき、入力信号
が途絶えてからτo後に残響音は完全に消滅する。
アドレスコントローラ36は、データメモリ2
4の書込アドレスおよび読出アドレスを指定する
ものである。書込アドレスは、前述のように、最
古サンプルのアドレスが順次指定され、新しいサ
ンプルに更新されていく。読出アドレスは、書込
アドレスを基準として、遅延時間パラメータτiに
対応したアドレスを指定して、(書込アドレスが
サンプリング周期ごとに順次移行していくので、
τiに対応した読出アドレスもそれに応じて移行さ
せる必要がある。)遅延信号データXiを読み出す。
また、現在のアドレスに関する情報を順列コント
ローラ34に送る。
なお、ゼロ検出時、データメモリ24への書込
は停止され、再び入力信号が入つてきたとき書込
を再開する。
たたみ込み演算回路38は、データメモリ24
から順次読み出される遅延信号データXiにインパ
ルスレスポンスレベルメモリ32から読み出され
る対応するレベルパラメータgiを順次掛け合せて
累積し、1つの残響信号サンプルを出力する。こ
のようにして、入力信号のサンプリング周期ごと
に残響信号の1つのサンプルが作成されていき、
これを繰返して一連の残響信号が作成される。
第6図は、第5図の残響付加装置の動作をa〜
mと順を追つて示したものである。各状態a〜m
は、それぞれ右端に矢印で示した時点における状
態を示したものでメモリ(プリメモリ22、デー
タメモリ24)を上段に示し、パラメータを下段
に示している。メモリにおいて斜線部分は、その
上方に示した入力信号のサンプルが記憶されてい
る状態を示す。パラメータにおいて縦線は、その
とき選択されるパラメータ(τi,gi)を示す。ま
た、メモリにおいて2重斜線部分は、この選択さ
れたパラメータが適用されてたたみ込まれる入力
信号のサンプルである。
各状態を示す記号a〜mのうち○で囲んだ状態
では、固定形動作、すなわちパラメータの先頭か
らk個のパラメータ(τ1,g1)〜(τk,gk)が選
択されてたたみ込みが行なわれる。また、◎で囲
んだ状態では、適応動作、すなわち、選択するパ
ラメータを順次下位にずらしてたたみ込みが行な
われる。
第6図の下欄に示す入力信号は、各時点におけ
るたたみ込み演算値(累算値)すなわち残響信号
のサンプル値をつなぎ合わせていつた一連の残響
信号である。これによれば、出力信号は入力信号
に対してプリメモリ22での保持時間分遅延が生
じていることがわかる。このため、直接音と残響
音にずれが生じ、不自然な残響音となつてしま
う。レコード等の再生の場合は、直接音をこの分
遅延させれば、問題は一応解消されるが、楽器演
奏やボーカル等の生演奏の場合には、生の音であ
り、これに遅延はかけられないので、問題とな
る。
〔発明が解決しようとする問題点〕
この発明は、適応形たたみ込みによる残響音作
成において、残響音の遅延を防止しようとするも
のである。
〔問題点を解決するための手段〕
この発明は、入力信号の有無を検出するための
プリメモリのデータについて反射音パラメータの
初期部分を適用して固定形のたたみ込み演算を行
ない、プリメモリからの遅延データが入力される
データメモリについては反射音パラメータの残り
の部分を利用して適応形のたたみ込み演算を行な
い、これら2つの演算値を加算するようにしたも
のである。
〔作 用〕
この発明の前記解決手段によれば、入力信号に
遅れのないプリメモリにおいて初期部分の反射音
が作成されるので、最終的に得られる残響音も遅
れのないものとなる。なお、データメモリにはプ
リメモリから遅延された信号が入力されるが、デ
ータメモリでは、初期部分以後(プリメモリでの
遅延時間よりも長い遅延時間)の反射音を作成す
るので、データメモリのデータによる適応形たた
み込み演算においても遅れのない残響音が得られ
る。
〔発明の原理〕
この発明の原理について説明する。ここでは、
反射音パラメータとして、第7図に示すように、
12個のパラメータ(τ1,g1)〜(τ12,g12)があ
る場合を想定し、そのうちの計8個のパラメータ
を用いて、上位3個の初期部分のパラメータにつ
いてはプリメモリのデータに対して固定形たたみ
込みを行ない、下位5個のパラメータについては
データメモリのデータに対して適応形たたみ込み
を行なうものとする。
そして、これを実現するための構成として、第
8図に示すように、プリメモリ22,データメモ
リ24をシフトレジスタで構成し、入力サンプル
をそのサンプリング周期のクロツクで順次シフト
していくものとする。プリメモリ22およびデー
タメモリ24の遅延時間τ1〜τ12に対応するタツ
プから信号をそれぞれ取り出し(データメモリ2
4のタツプの遅延時間は、プリメモリ22の入力
側を基準とした値とする。)、ゲインg1〜g12を有
するアンプ21−1〜21−12に導く。
プリメモリ22のデータについては、各アンプ
21−1〜21−3の出力の全てがたたみ込み演
算回路(加算器)48で加算される。
データメモリ24のデータについては、選択回
路23が各アンプ21−4〜21―12の出力お
よびアンプ21−12よりも下位に設けた5個の
ダミーのアンプ21−D1〜21−D5(遅延時
間はτ12<τD1<……<τD5に設定)の出力を入力
し、いずれか5本を選択して出力する。選択され
た出力は、たたみ込み演算回路(加算器)38で
加算される。
たたみ込み演算回路48,38の出力は、加算
器50で加算され、残響信号の1つのサンプルと
して出力される。この一連の動作をサンプリング
周期ごとに繰返して一連の残響信号が作成され
る。
ゼロ検出回路26は、プリメモリ22の各段出
力を加算器26で加算し、比較器25で所定の閾
値と比較して、入力信号のゼロ(無信号)状態を
検出する。このゼロ検出に基づいて、データメモ
リ24側では適応形動作に移行する。
各動作モードを第8図〜第12図に示す。な
お、これらの各メモリ22,24において、斜線
部分は信号が入つている部分を示し、空白部分は
ゼロ信号部分を示している。また、演算に用いら
れる系路は、アンプを黒く示している。
第8図は、信号連続状態で、プリメモリ22に
は信号が入つており、データメモリ24側は上位
5個のパラメータ(τ4,g4)〜(τ8〜g8)が選択
されている。
第9図は、信号途絶状態で、プリメモリ22の
信号はなくなるので、ゼロ検出され、データメモ
リ24側では適応形動作をし、信号を有する位置
にある上位5個のパラメータが選択される。無信
号部分が下位に移行するに従いパラメータの選択
区域も下位に移行していく。
第10図は、ゼロ信号状態の継続状態で、デー
タメモリ24の信号を有する位置にあるパラメー
タが5個未満になつたら、残りをダミーのパラメ
ータに割当てる。データメモリ24の全部分が無
信号になつたら、5個ともダミーのパラメータが
適用される。ダミーは入力信号がゼロであるか
ら、演算回路38の出力はゼロである。
第11図は、信号が一時中断して、適応形動作
に移行し、その後中断前のデータがまだデータメ
モリ24に残つているときに信号が再び入つてき
たときの状態である。このときは、プリメモリ2
2に信号が入つているのでゼロ検出状態は解除さ
れ、データメモリ24側では固定形動作に移行す
る。すなわち、上位から5個のパラメータを選択
する。しかし、データメモリ24に入つてきた新
データだけでは5個のパラメータを割当てられな
いので、残りのパラメータは中断前のデータに適
用する。
第12図は、第11図の状態から1サンプル周
期進んだ状態で、データメモリ24では新データ
に割当てられるパラメータが1つ増えて3個にな
つたので、中断前のデータに適用するパラメータ
は1つ減つて2個になつている。このようにし
て、新データに5個のパラメータを適用可となる
までは、過渡的に中断前の古いデータに対応パラ
メータを適用し、動作が混在した状態となる。
なお、第11図,第12図は、データメモリ2
4に中断前のデータが残つている場合を示した
が、データメモリ24が全て無信号状態となつた
場合もダミーのパラメータが適用されているの
で、中断が解消した後の過渡期には、新データに
上位のパラメータを適用し、残りはダミーのパラ
メータを適用する。
以上、第8図〜第12図の動作をまとめると、
選択回路23ではデータメモリ24の無信号部分
を除いて上位5個のパラメータを選択するように
動作することになる。
なお、いずれの場合もプリメモリ22側では全
パラメータ(τ1,g1)〜(τ3,g3)が適用されて
演算が行なわれ、その出力がデータメモリ24側
の適用形演算値と何算器50で加算されて、出力
される。
この場合、プリメモリ22側では、入力信号に
対して時間遅れなく初期部分の残響信号が作成さ
れ、データメモリ24側でも、入力される信号自
体はプリメモリ22で遅延された信号であるが、
データメモリ24側で扱うパラメータの遅延時間
はプリメモリ22で生じる遅延時間よりも遅いも
のであり、かつデータメモリ24の各タツプの遅
延時間はプリメモリ22の入力側を基準としたも
のであるから、入力信号に対して時間遅れなく初
期部分以後の残響信号が作成される。
〔実施例〕
この発明の一実施例を第1図に示す。ここで
は、前記第5図の従来装置と対応する部分には同
一の符号を用いる。また、前記発明の原理の説明
では、プリメモリ22,データメモリ24をシフ
トレジスタで構成した場合について示したが、以
下の実施例では、構成的に自由度が大きく、パラ
メータの設定、変更が容易なRAMを用いた場合
について説明する。
なお、この実施例においては、全部でn個のパ
ラメータ(τ1,g1)〜(τo,go)があるものと
し、そのうち1度にk個のパラメータを使用し、
そのうち固定形動作に上位n個のパラメータ
(τ1,g1)〜(τo,go)を適用し、適応形動作に
残りのパラメータ(τh+1,gh+1)〜(τo,go)の
うちk−n個を適用する場合について説明する。
第1図において、ゼロ検出部5および適応形た
たみ込み演算部6は第5図と同様に構成されてい
る。
固定形たたみ込み演算部7は、プリメモリ22
のデータから初期部分の残響信号を作成する。す
なわち、インパルスレスポンスデイレイメモリ4
0は、遅延時間のパラメータτi(i=1,2,…
…,n)のうち、プリメモリ22に保持される遅
延データ分のパラメータ(すなわち数ミリ秒まで
のパラメータ)τ1〜τhを記憶している。また、イ
ンパルスレスポンスレベルメモリ42は、対応す
るレベルパラメータg1〜ghを記憶している。
カウンタ44は、前記デイレイメモリ40およ
びレベルメモリ42に入力信号のサンプルごとに
全パラメータの読出アドレスおよびプリメモリ4
4に書込アドレスと読出アドレスを指令するため
のカウンタである。読出アドレスは書込アドレス
を基準としてτ1〜τh遅延した位置にあるので、加
算器46で書込アドレスに遅延時間パラメータτ1
〜τhを加算して与えている。
プリメモリ22から読み出された各遅延時間τ1
〜τhに対応した入力サンプル値X1〜Xhは、たた
み込み演算回路48において、インパルスレスポ
ンスレベルメモリ42からの対応レベルパラメー
タg1〜ghとそれぞれ掛け合されて累算され、たた
み込み演算が行なわれる。このようにして、入力
信号のサンプリング周期ごとに一連のたたみ込み
演算が行なわれて、固定形たたみ込み演算部7か
らは、初期部分の残響信号が出力される。
適応形たたみ込み演算部6において、データメ
モリ24はプリメモリ22から出力される遅延デ
ータを最古サンプルが書き込まれているアドレス
から順に書き込んで、順次更新していく。
インパルスレスポンスデイレイメモリ30は、
前記固定形たたみ込み演算部7で用いられる初期
反射音部分の遅延時間パラメータτ1〜τh以後の遅
延時間パラメータτh+1〜τoを記憶している。ま
た、インパルスレスポンスレベルメモリ32は、
対応するゲインパラメータgh+1〜goを記憶してい
る。
カウンタ28は、前記デイレイメモリ30およ
びレベルメモリ32から入力信号のサンプリング
周期ごとに全パラメータのうち順列コントローラ
34で選択されたk−h組のパラメータを読み出
すためのタイミング制御する。
順列コントローラ34は、この演算部6で利用
するk−n組のパラメータの中からどれを選択す
るかを決めるものである。すなわち、入力信号が
連続しているときは、先頭からk−n個のパラメ
ータ(τh+1,gh+1)〜(τk,gk)をカウンタ28
のカウントに従つて順次読み出すための動作を行
なう。
また、ゼロ検出回路26がゼロ検出すると、適
応形動作に移行させる。適応形動作では、動作周
始からの時間tを計測し、これとプリメモリ22
での遅延時間t0(τh≦t0≦τh+1)を足して、t+t0
≦τiの関係にあるパラメータを上位からk−n個
使用する。
アドレスコントローラ36は、データメモリ2
4の書込アドレスおよび読出アドレスを指定する
ものである。また、順列コントローラ34に対し
てアドレス情報を送る。
ゼロ検出時には、データメモリ24は書込を停
止し、ゼロ検出解除時(信号入力が再開されたと
き)、その停止したアドレスから書込を再開させ
る。これにより、データメモリ24を小容量化で
きる。すなわち、データメモリ24の容量は全パ
ラメータに対応した分の容量は必要でなく、適用
形たたみ込みに適用されるパラメータ分の容量で
十分となる。
これら各コントローラ34の動作を入力信号の
各状態ごとに示すと次のようになる。
第13図は、入力信号持続状態で、パラメータ
は1番目(τh+1,gh+1)からk−n番目(τk,gk)
までを書込アドレスAwを基準として対応するア
ドレスのデータに適用している。
第14図は、第13図の状態から少し時間が経
過した状態で、パラメータは移動した書込アドレ
スAwを基準として1番目(τh+1,gh+1)からk−
h番目(τk+gk)までを対応するアドレスのデー
タに適用していく。書込アドレスAwは最終アド
レスに達したら先頭アドレスに戻つて古いデータ
を順次更新していく。
第15図は入力信号途絶の状態で、書込アドレ
スAwは停止し、書込は禁止される。このとき、
パラメータはそのままサンプリング周期ごとに順
次下位にずれていき、対応するアドレスのデータ
に適用される。
第16図は、入力信号途絶が長く続いた状態
で、適用されるパラメータ最下位までずれてい
る。更にこのまま進むと適用されるパラメータは
なくなり、残響信号は消滅する。
第17図は、入力信号途絶後再び再開された状
態で、書込アドレスAwは停止していた書込アド
レスAwsからサンプリング周期ごとに移行し始め
る。パラメータは新しい書込アドレスAwを基準
として停止していた書込アドレスAwsまでについ
て第1番目のパラメータから適用していく。この
とき、入力信号停止前のデータついて適用される
パラメータが残つている場合には、それについて
も対応するデータに適応していく。
たたみ込み演算回路38は、データメモリ24
からの遅延信号データX1にインパルスレスポン
スレベルメモリ32からの対応レベルパラメータ
giを順次掛け合せて累積し、1つの残響信号サン
プルを出力する。これを繰り返して初期部分以後
の残響信号のサンプルが作成されていく。
固定形たたみ込み演算部7で作成された初期部
分の残響信号と、適応形たたみ込み演算部6で作
成された初期以後の残響信号は、加算器50で加
算されて一体化されて出力される。
第18図は、第1図の残響付加装置の動作をa
〜mと順を追つて示したものである。表示方法は
前記第6図のものと同様である。
固定形たたみ込み演算部7と適応形たたみ込み
演算部6の各出力を加算して得られる残響信号
は、同図の下欄に示すようになるが、これによれ
ば、入力信号と出力信号との間には遅延が生じて
いないことがわかる。したがつて、直接音に対し
て残響音に不要な遅れは生じなくなり、レコード
等の再生はもとより、楽器演奏やボーカル等の生
演奏においても自然な残響音を得ることができ
る。
第1図の実施例の具体例を第19図に示す。第
19図において、パラメータメモリ52には、固
定形動作パラメータ(τ1,g1)〜(τh,gh)と適
応形動作用パラメータ(τh+1,gh+1)〜(τo,go)
が記憶されている。
カウンタ60は、プリメモリ22に書込アドレ
スを与えるもので、入力信号の1サンプリング周
期τ0ごとにクロツクC1によつてインクリメント
されていく。引算器62は現在の書込アドレスに
対する遅延時間τ1〜τhのアドレスを求め、これを
プリメモリ22に読出アドレスとして与える。プ
リメモリ22は、クロツクC6によつて周期τ0に
1度書込モードに切替えられる。このとき、パラ
メータメモリ52からの遅延時間パラメータは0
であり、引算器62からはカウンタ60の値がそ
のまま出力され、その値が示すプリメモリ22の
アドレスに入力信号のサンプルが書き込まれる。
クロツクC6以外のタイミングでは、プリメモリ
22は読出モードにあり、パラメータメモリ52
から周期τ0内に順次出力される遅延時間パラメー
タτ1〜τhにより、書込アドレスを基準としてτ1〜
τhの遅延時間にある入力サンプルが順次読み出さ
れる。
カウンタ54は、データメモリ24に書込アド
レスを与えもので、周期τ0ごとにクロツクC1に
よつてインクリメントされていく。引算器56は
現在の書込アドレスに対する遅延時間τiの各アド
レスを求め、データメモリ24に読出アドレスと
して与える。データメモリ24は、クロツクC2
によつて周期τ0に1度書込モードに切替えられ
る。このとき、遅延時間パラメータは0であり、
引算器56からは仮ウンタ54の値がそのまま出
力され、その値が示すデータメモリ24のアドレ
スにプリメモリ22の出力が書き込まれる。この
とき、プリメモリ22はカウンタ60によつて次
の書込アドレス(最古データアドレス)が指定さ
れているので、データメモリ24に書き込まれる
データはプリメモリ22の容量分遅延されたデー
タとなる。
クロツクC2以外のタイミングでは、データメ
モリ24は読出モードに切替えられ、パラメータ
メモリ52から周期τ0内に順次出力される遅延時
間パラメータτiにより、書込アドレスを基準とし
てτiの遅延時間にあるデータが順次読み出され
る。
プリメモリ22から順次読み出されるデータ
X1〜Xhは乗算器64で、パラメータメモリ52
から順次出力されるレベルパラメータg1〜ghがそ
れぞれ乗算されて、g1・X1〜gh・Xhが順次出力
される。
データメモリ24から順次読み出されるデータ
Xiは乗算器66において、パラメータメモリ52
から順次出力されるレベルパラメータgiがそれぞ
れ乗算されて、gi・Xiが順次出力される。
アキユームレータ68は、乗算器64,66か
らの乗算器を加算器70、レジスタ72で累算し
ていく。これにより、アキユームレータ68から
は最終的に周期τ0内の全乗算値の総累算値が出力
される。レジスタ72の内容は、全乗算値の累算
後クロツクC3によつてリセツトされる。
ゼロ検出回路26は、プリメモリ22の出力
X1〜Xhを乗算器76でそれぞれ自乗してX1 2〜
Xh 2を求め、これらを加算器78とレジスタ80
で累算して、周期τ0内の累算値をクロツクC1で
レジスタ82に転送する。レジスタ80はクロツ
クC1によつて周期τ0ごとにリセツトされる。
次に、適応形動作用パラメータの書込アドレス
の一例を第1表に示す。
なお、ここで遅延時間パラメータτiは、便宜
上、入力信号の1サンプリング周期τ0の何個分に
相当するかという形で記憶されている。(これを
実時間の形で記憶することも可能であるが、その
場合、回路上でのタイミングとのインターフエー
ス構成が別途必要となる。)
[Industrial Application Field] The present invention relates to a device that creates a reverberant sound of an input signal by superimposing multiple delayed signals of an input signal (music signal, etc.) created based on an impulse response using a convolution operation. This is designed to prevent delays between input and output in adaptive convolution operations. [Prior Art] When artificially adding reverberation to music signals, etc., the most direct electronic method is to extract various types of reverberation from the direct sound in response to the impulse response in an acoustic space such as a virtual hall. This is a method of expressing signals as a superposition of signals with time delays. That is,
As shown in Figure 2, the impulse response of a virtual acoustic space is composed of multiple reflections consisting of a delay time τ i and a level g i (i = 1, 2,..., n) with respect to the direct sound R 0 . Assuming that it is a sequence of sounds, a reflected sound is created for each sample of the input signal using the delay time τ i and the level g i as parameters (reflected temperature parameters), and the reflected sounds of each sample are superimposed at the same time. Reverberation sound is created by combining the delayed signals (this operation of multiplying the delayed signal by a gain and adding it is called a convolution operation). Conceptually, as shown in Fig. 3, the convolution operation involves inputting each sample value of an input signal to a shift register 1 with multi-tap while sequentially shifting it every sampling period, and delaying it within one sampling period. Delayed signals X 1 to X o of each sample are output from each tap corresponding to times τ 1 to τ o , and these are applied to coefficients (gains) g 1 to go by multipliers 2-1 and 2-n, respectively. By adding them and adding them in the adder 3, one sample of the reverberant signal is obtained: X put = o 〓 i = 1 x i · g i . Specifically, as shown in FIG. 4, each sample of the input signal is stored in the data memory 10, the delay time data τ 1 to τ o are sequentially read out from the parameter memory 12, and each delay time τ is set using these as addresses. 1
The delayed signals X 1 to X o corresponding to ~τ o are sequentially read out from the data memory 10, and the multiplier 14 assigns coefficients g 1 to go to these delayed signals X 1 to X o , respectively.
Sequentially create individual reflected sound signals X 1・g 1 ~X o・g o ,
One sample of the reverberant signal is created by accumulating these in the amulator 16, which includes an adder 18 and a register 20. and,
By repeating this series of operations each time a new input signal sample is written to the data memory 10, a series of reverberation signals is created. In the convolution operation using serial sequential processing, the series of operations described above must be performed during one sampling period of the input signal to create one reverberant signal sample. The number of points that can be convolved (the number of times the amulator 16 adds coefficients to data and accumulates them within one cycle) is limited. In order to obtain more natural reverberation, it is desirable to increase the number of convolution points to increase the amount of information, that is, to increase the number of reflected sound parameters (τ i , g i ) used as much as possible. This was difficult to achieve for these reasons. Conventionally, this has been achieved by appropriately thinning out the reflected sound parameters. However, this has the disadvantage that the density of the reflected sound on the time axis becomes coarse, resulting in an unnatural reverberant sound. In addition, we focused on the fact that when the input signal is continuous, the latter part (low level) of the reverberant sound is masked by the input signal and becomes inaudible, so we use only the initial part of the reflected sound parameter. However, the latter part was omitted. However, although this works well when the input signal is continuous, when the input signal is interrupted, the reverberation sound also suddenly discontinues, giving an unnatural feeling. Therefore, in order to improve these problems, a so-called adaptive type was devised. In this method, when the input signal is interrupted, the interval of the reflected sound parameters to be used is sequentially shifted to the lower level.If there is an input signal, a predetermined number of higher-ranking reflected sound parameters are selected, and the interval of the reflected sound parameter to be used is When it runs out, it is moved to a lower level one by one. As a result, total reflection sound parameters are sequentially applied to several samples immediately before the input signal is interrupted to create reflected sounds, resulting in a long and natural reverberant sound. The adaptive type detects that the input signal has reached zero level, and changes from fixed type operation (operation that creates reverberation sound by fixing the parameter usage interval to the upper level) to adaptive type operation (operation that creates reverberant sound by fixing the parameter usage interval to the upper level). However, in order to determine whether the detected zero level is simply due to a zero crossing of the signal waveform or whether the input signal is truly interrupted, it takes a long time of several tens of milliseconds. It is necessary to detect the level of the input signal over time. In addition, if it is determined that the input signal is interrupted, the adaptive operation must be executed going back to the first input signal part of the detection interval, so in the conventional adaptive type, the detection time The input signal must always be delayed, which has the drawback of causing a delay time between input and output. This point will be explained in detail below. FIG. 5 shows a conventional adaptive reverberation adding device. The input signal samples are temporarily stored in the pre-memory 22 of the zero detection unit 5, and are sequentially transferred to the data memory 24 of the adaptive convolution calculation unit 6 with a delay of several tens of milliseconds for zero detection. The zero detection circuit 26 accumulates the sample data of the past several tens of milliseconds stored in the pre-memory 22, and if the accumulated value is higher than a certain threshold, it is determined that the input signal is sustained, and the input signal is low. In this case, it is determined that the input signal has been interrupted. The input signal samples output from the pre-memory 22 are sequentially input to the data memory 24, and are sequentially updated by sequentially writing the oldest sample from the written address. The impulse response delay memory 30 is
Parameter data τ i (i=1 to n) of delay time is stored. The impulse response level memory 32 stores level parameter data g i (i=1
-n) are memorized. The counter 28 is used to measure time to control the operation timing of the adaptive convolution calculation unit 6. The permutation controller 34 selects the delay memory 30 and the level memory 32 as k parameters used to create one sample of reverberant sound.
This is to select which one of the n parameters (τ i , g i ) stored in the image data is to be used. In other words, when the input signal continues, (τ i ,
A fixed type operation is performed in which k parameters from the beginning are sequentially read out according to the count of the counter 28, such as g i ), (τ k , g k ). Additionally, when zero detection circuit 26 detects an input signal discontinuation, adaptive operation is performed. In adaptive motion,
The time t since the start of the operation (that is, the elapsed time since the input was stopped) is measured, and k parameters having the relationship w=τ i are used from the top. That is, since t=0 at the beginning, (τ 1 , g 1 ), (τ k , g k )
Then, when t>τ 1 , (τ 2 , d 2 ), (τ k+1
,
g k+1 ) further becomes t > τ 2 , (τ 3 , g 3 ) ~
(τ k+2 , g k+2 ), and so on, the area of parameters used gradually moves to the lower level, and
Along with this, the cumulative value obtained by the convolution operation becomes smaller, and the reverberant sound gradually attenuates, and the reverberant sound completely disappears τ o after the input signal is interrupted. The address controller 36 controls the data memory 2
This designates the write address and read address of No. 4. As the write address, as described above, the address of the oldest sample is sequentially designated and updated to a new sample. For the read address, specify the address corresponding to the delay time parameter τ i based on the write address (since the write address shifts sequentially in each sampling period,
The read address corresponding to τ i must also be migrated accordingly. ) Read the delayed signal data X i .
It also sends information regarding the current address to the permutation controller 34 . Note that when zero is detected, writing to the data memory 24 is stopped, and writing is resumed when an input signal is received again. The convolution calculation circuit 38 is connected to the data memory 24
The delayed signal data X i sequentially read from the impulse response level memory 32 is sequentially multiplied and accumulated by the corresponding level parameter g i read from the impulse response level memory 32, and one reverberation signal sample is output. In this way, one sample of the reverberant signal is created for each sampling period of the input signal,
This process is repeated to create a series of reverberation signals. FIG. 6 shows the operation of the reverberation adding device in FIG.
The figures are shown in order. Each state a~m
shows the states at the time points indicated by arrows at the right end, with the memories (pre-memory 22, data memory 24) shown in the upper row, and the parameters shown in the lower row. In the memory, the shaded area indicates the state in which samples of the input signal shown above are stored. Vertical lines in the parameters indicate the parameters (τ i , g i ) selected at that time. Moreover, the double hatched portion in the memory is a sample of the input signal to which the selected parameter is applied and convolved. Among the symbols a to m indicating each state, the states circled are fixed-type operations, that is, k parameters (τ 1 , g 1 ) to (τ k , g k ) are selected from the beginning of the parameters and are folded. Insertion is performed. Furthermore, in the state surrounded by ◎, an adaptive operation is performed, that is, convolution is performed by sequentially shifting the selected parameters to the lower order. The input signal shown in the lower column of FIG. 6 is a series of reverberant signals obtained by connecting convolution calculation values (accumulated values) at each time point, that is, sample values of the reverberant signal. According to this, it can be seen that the output signal is delayed by the retention time in the pre-memory 22 with respect to the input signal. As a result, a difference occurs between the direct sound and the reverberant sound, resulting in unnatural reverberant sound. When playing back records, etc., the problem can be resolved by delaying the direct sound by this amount, but when playing live music such as musical instruments or vocals, the sound is raw and no delay is necessary. This is a problem because it cannot be done. [Problems to be Solved by the Invention] This invention aims to prevent delays in reverberant sound when creating reverberant sound by adaptive convolution. [Means for Solving the Problems] The present invention performs a fixed convolution operation by applying an initial part of reflected sound parameters to pre-memory data for detecting the presence or absence of an input signal, and calculates the delay from pre-memory. For the data memory into which data is input, adaptive convolution is performed using the remaining portion of the reflected sound parameters, and these two calculated values are added. [Operation] According to the solving means of the present invention, since the initial part of the reflected sound is created in the pre-memory with no delay in the input signal, the finally obtained reverberant sound also has no delay. Note that the delayed signal from the pre-memory is input to the data memory, but since the data memory creates reflected sound after the initial part (with a delay time longer than the delay time in the pre-memory), Even in adaptive convolution calculation, reverberant sound without delay can be obtained. [Principle of the invention] The principle of this invention will be explained. here,
As the reflected sound parameters, as shown in Figure 7,
Assuming a case where there are 12 parameters (τ 1 , g 1 ) to (τ 12 , g 12 ), a total of 8 parameters are used, and the top 3 initial parameters are stored in pre-memory data. For the lower five parameters, adaptive convolution is performed on the data in the data memory. As a configuration for realizing this, as shown in FIG. 8, the pre-memory 22 and the data memory 24 are configured with shift registers, and input samples are sequentially shifted using the clock of the sampling period. Signals are extracted from the taps corresponding to the delay times τ 1 to τ 12 of the pre-memory 22 and data memory 24 (data memory 24
The delay time of tap No. 4 is a value based on the input side of the pre-memory 22. ) and leads to amplifiers 21-1 to 21-12 having gains g1 to g12 . Regarding the data in the pre-memory 22, all of the outputs of the amplifiers 21-1 to 21-3 are added together by a convolution arithmetic circuit (adder) 48. Regarding the data in the data memory 24, the selection circuit 23 selects the output of each amplifier 21-4 to 21-12 and five dummy amplifiers 21-D1 to 21-D5 (delay time inputs the outputs of τ 12 <τ D1 <...<τ D5 ), and selects and outputs any five of them. The selected outputs are added by a convolution calculation circuit (adder) 38. The outputs of the convolution calculation circuits 48 and 38 are added together by an adder 50 and output as one sample of the reverberation signal. This series of operations is repeated every sampling period to create a series of reverberation signals. The zero detection circuit 26 adds the outputs of each stage of the pre-memory 22 using an adder 26, and compares the sum with a predetermined threshold value using a comparator 25 to detect a zero (no signal) state of the input signal. Based on this zero detection, the data memory 24 shifts to adaptive operation. Each operation mode is shown in FIGS. 8 to 12. In each of these memories 22 and 24, the shaded areas indicate areas containing signals, and the blank areas indicate zero signal areas. Furthermore, in the circuit used for calculation, the amplifier is shown in black. FIG. 8 shows a continuous signal state, where the pre-memory 22 contains the signal, and the data memory 24 has the top five parameters (τ 4 , g 4 ) to (τ 8 to g 8 ) selected. . In FIG. 9, when the signal is interrupted, the signal in the pre-memory 22 disappears, so zero is detected, and the data memory 24 performs an adaptive operation and selects the top five parameters at the position where the signal exists. As the no-signal portion moves to a lower level, the parameter selection area also moves to a lower level. FIG. 10 shows that when the zero signal state continues and the number of parameters in the data memory 24 at a position having a signal becomes less than five, the remaining parameters are assigned to dummy parameters. When all parts of the data memory 24 become non-signal, dummy parameters are applied to all five. Since the input signal of the dummy is zero, the output of the arithmetic circuit 38 is zero. FIG. 11 shows the situation when the signal is temporarily interrupted, transition is made to adaptive operation, and then the signal is re-entered while the data before the interruption still remains in the data memory 24. At this time, pre-memory 2
2, the zero detection state is canceled and the data memory 24 side shifts to fixed type operation. That is, five parameters from the top are selected. However, since it is not possible to allocate five parameters only to the new data that has entered the data memory 24, the remaining parameters are applied to the data before the interruption. FIG. 12 shows a state in which one sample period has advanced from the state in FIG. 11, and the number of parameters assigned to new data in the data memory 24 has increased by one to three, so the parameters to be applied to the data before interruption are One has been reduced to two. In this way, until the five parameters can be applied to the new data, the corresponding parameters are temporarily applied to the old data before the interruption, resulting in a state of mixed operations. Note that FIGS. 11 and 12 show the data memory 2.
4 shows the case where the data before the interruption remains, but even if the data memory 24 is all in a no-signal state, the dummy parameters are applied, so during the transition period after the interruption is resolved, The upper parameters are applied to the new data, and dummy parameters are applied to the rest. To summarize the operations shown in Figures 8 to 12 above,
The selection circuit 23 operates to select the top five parameters excluding the no-signal portion of the data memory 24. In any case, calculation is performed by applying all parameters (τ 1 , g 1 ) to (τ 3 , g 3 ) on the pre-memory 22 side, and the output is different from the applied form calculation value on the data memory 24 side. They are added by a calculator 50 and output. In this case, on the pre-memory 22 side, the initial part of the reverberation signal is created without any time delay with respect to the input signal, and on the data memory 24 side, although the input signal itself is a signal delayed by the pre-memory 22,
The delay time of the parameters handled on the data memory 24 side is slower than the delay time generated in the pre-memory 22, and the delay time of each tap in the data memory 24 is based on the input side of the pre-memory 22. Reverberant signals after the initial portion are created without time delay with respect to the signal. [Embodiment] An embodiment of the present invention is shown in FIG. Here, the same reference numerals are used for parts corresponding to those of the conventional device shown in FIG. Furthermore, in the explanation of the principle of the invention, the case where the pre-memory 22 and the data memory 24 are configured with shift registers has been shown, but in the following embodiments, there is a large degree of freedom in configuration, and parameters can be easily set and changed. The case of using RAM will be explained. In this example, it is assumed that there are a total of n parameters (τ 1 , g 1 ) to (τ o , go ), of which k parameters are used at one time,
Among them, the top n parameters (τ 1 , g 1 ) to (τ o , go ) are applied to the fixed type operation, and the remaining parameters (τ h+1 , g h+1 ) to (τ A case will be described in which k−n of the following (o , go ) are applied. In FIG. 1, the zero detection section 5 and the adaptive convolution calculation section 6 are constructed in the same manner as in FIG. The fixed convolution calculation unit 7 has a pre-memory 22
Create a reverberation signal for the initial part from the data. That is, impulse response delay memory 4
0 is the delay time parameter τ i (i=1, 2,...
. _ Further, the impulse response level memory 42 stores corresponding level parameters g 1 to gh . A counter 44 stores all parameter read addresses and a pre-memory 4 for each sample of the input signal in the delay memory 40 and level memory 42.
4 is a counter for instructing a write address and a read address. Since the read address is at a position delayed by τ 1 to τ h with respect to the write address, the adder 46 adds the delay time parameter τ 1 to the write address.
It is given by adding ~τ h . Each delay time τ 1 read from the pre-memory 22
The input sample values X 1 to X h corresponding to ~τ h are multiplied and accumulated by the corresponding level parameters g 1 to g h from the impulse response level memory 42, respectively, in the convolution calculation circuit 48, and then convolved. An operation is performed. In this way, a series of convolution operations are performed every sampling period of the input signal, and the fixed convolution operation section 7 outputs an initial portion of the reverberation signal. In the adaptive convolution calculation unit 6, the data memory 24 writes the delayed data output from the pre-memory 22 in order from the address where the oldest sample is written, and updates the data memory 24 sequentially. The impulse response delay memory 30 is
Delay time parameters τ h +1 to τ o of the early reflected sound portion used in the fixed convolution calculation unit 7 are stored. In addition, the impulse response level memory 32 is
Corresponding gain parameters g h+1 to g o are stored. The counter 28 controls the timing for reading out the kh set of parameters selected by the permutation controller 34 from among all the parameters from the delay memory 30 and level memory 32 every sampling period of the input signal. The permutation controller 34 determines which of the kn sets of parameters to be used in the arithmetic unit 6 to be selected. That is, when the input signal is continuous, the counter 28 calculates k−n parameters (τ h+1 , g h+1 ) to (τ k , g k ) from the beginning.
The operation for sequential reading is performed according to the count. Furthermore, when the zero detection circuit 26 detects zero, it shifts to adaptive operation. In adaptive operation, the time t from the start of the operation is measured, and this and the pre-memory 22
Add the delay time t 0 (τ h ≦t 0 ≦τ h+1 ) at t + t 0
K−n parameters having the relationship of ≦τ i are used from the top. The address controller 36 controls the data memory 2
This designates the write address and read address of No. 4. It also sends address information to the permutation controller 34. When zero is detected, the data memory 24 stops writing, and when zero detection is canceled (when signal input is restarted), the data memory 24 resumes writing from the address where it stopped. Thereby, the capacity of the data memory 24 can be reduced. That is, the capacity of the data memory 24 does not need to be large enough to accommodate all the parameters, and the capacity for the parameters applied to the adaptive convolution is sufficient. The operation of each of these controllers 34 is shown below for each state of the input signal. In Fig. 13, the input signal is maintained, and the parameters are from the 1st (τ h+1 , g h+1 ) to the k-nth (τ k , g k ).
The steps up to this point are applied to the data at the corresponding address using the write address Aw as a reference. FIG. 14 shows a state where a little time has passed since the state shown in FIG. 13, and the parameters have changed from the first (τ h+1 , g h+1 ) to k− based on the moved write address A w .
The data up to the h-th (τ k +g k ) are applied to the data at the corresponding address. When the write address A w reaches the final address, it returns to the first address and updates old data one by one. FIG. 15 shows a state in which the input signal is interrupted, the write address A w is stopped, and writing is prohibited. At this time,
The parameters are sequentially shifted downward every sampling period and are applied to the data at the corresponding address. FIG. 16 shows a state in which the input signal has been interrupted for a long time, and the applied parameters have shifted to the lowest level. If the process continues as it is, no more parameters will be applied, and the reverberation signal will disappear. In FIG. 17, the write address A w starts to shift from the stopped write address A ws at every sampling period in a state where the input signal is restarted after the interruption of the input signal. The parameters are applied from the first parameter to the stopped write address A ws with the new write address A w as a reference. At this time, if there are remaining parameters that are applied to the data before the input signal is stopped, the corresponding data are also applied. The convolution calculation circuit 38 is connected to the data memory 24
The delayed signal data from X 1 and the corresponding level parameters from the impulse response level memory 32
g i is sequentially multiplied and accumulated to output one reverberant signal sample. By repeating this process, samples of the reverberation signal after the initial part are created. The initial portion of the reverberation signal created by the fixed convolution calculation unit 7 and the subsequent reverberation signal created by the adaptive convolution calculation unit 6 are added together by an adder 50 and output as a single unit. . Figure 18 shows the operation of the reverberation adding device in Figure 1.
-m are shown in order. The display method is the same as that shown in FIG. 6 above. The reverberation signal obtained by adding the respective outputs of the fixed convolution calculation unit 7 and the adaptive convolution calculation unit 6 is shown in the lower column of the same figure, and according to this, the input signal and the output signal are It can be seen that there is no delay between the two. Therefore, there is no unnecessary delay in the reverberant sound relative to the direct sound, and natural reverberant sound can be obtained not only when playing records, but also during live performances such as musical instruments and vocals. A specific example of the embodiment shown in FIG. 1 is shown in FIG. In FIG. 19, the parameter memory 52 stores fixed operating parameters (τ 1 , g 1 ) to (τ h , g h ) and adaptive operating parameters (τ h+1 , g h+1 ) to (τ o , go )
is memorized. The counter 60 provides a write address to the pre-memory 22, and is incremented by the clock C1 every sampling period τ 0 of the input signal. The subtracter 62 obtains the address of the delay time τ 1 to τ h with respect to the current write address, and provides this to the prememory 22 as a read address. The prememory 22 is switched to the write mode once every period τ 0 by the clock C6. At this time, the delay time parameter from the parameter memory 52 is 0.
The value of the counter 60 is output as is from the subtracter 62, and the sample of the input signal is written to the address of the pre-memory 22 indicated by the value.
At timings other than clock C6, the prememory 22 is in the read mode, and the parameter memory 52
With the delay time parameters τ 1 to τ h sequentially output within the period τ 0 from τ 1 to τ with the write address as the reference
Input samples at a delay time of τ h are read out sequentially. The counter 54 provides a write address to the data memory 24, and is incremented by the clock C1 every cycle τ0 . The subtracter 56 obtains each address of delay time τ i with respect to the current write address, and provides it to the data memory 24 as a read address. The data memory 24 is connected to the clock C2.
The write mode is switched once every period τ 0 by . At this time, the delay time parameter is 0,
The value of the temporary counter 54 is output as is from the subtracter 56, and the output of the pre-memory 22 is written to the address of the data memory 24 indicated by the value. At this time, since the next write address (oldest data address) is specified in the pre-memory 22 by the counter 60, the data written to the data memory 24 becomes data delayed by the capacity of the pre-memory 22. At timings other than clock C2, the data memory 24 is switched to the read mode, and is at a delay time of τ i with respect to the write address based on the delay time parameter τ i sequentially output from the parameter memory 52 within the period τ 0 . Data is read sequentially. Data read out sequentially from pre-memory 22
X 1 to X h are multipliers 64 and parameter memory 52
The level parameters g 1 to gh that are sequentially output from are multiplied, respectively, and g 1 ·X 1 to g h ·X h are sequentially output. Data read out sequentially from data memory 24
In the multiplier 66, X i is
The level parameters g i sequentially output from are multiplied, respectively, and g i ·X i are sequentially output. The accumulator 68 accumulates the multipliers from the multipliers 64 and 66 using an adder 70 and a register 72. As a result, the accumulator 68 finally outputs the total accumulated value of all multiplication values within the period τ 0 . The contents of register 72 are reset by clock C3 after all multiplication values have been accumulated. The zero detection circuit 26 outputs the output of the pre-memory 22.
X 1 to X h are each squared by the multiplier 76 to obtain X 1 2 to
Find X h 2 and add these to the adder 78 and register 80.
The accumulated value within the period τ 0 is transferred to the register 82 using the clock C1. Register 80 is reset every period τ 0 by clock C1. Next, Table 1 shows examples of write addresses for adaptive operation parameters. Note that, for convenience, the delay time parameter τ i is stored in the form of how many sampling periods τ 0 of the input signal it corresponds to. (It is also possible to store this in real time form, but in that case a separate interface configuration with the timing on the circuit is required.)
【表】
また、固定形動作用パラメータのアドレスは、
適用形動作用パラメータのアドレスを共通に用い
ることはできないので(適用形では1回のたたみ
込みで全パラメータ(τh+1,gh+1)〜(τo,go)
が読み出されるわけでないので、共通のアドレス
を用いると固定形動作で必要なパラメータが読み
出されない状態が生じる場合がある。)、独自のア
ドレスと読出信号を用いる。この場合
イ) 周期τ0内に全パラメータ(τ1,g1)〜
(τh,gh)を読み出すこと(但し、順不同でよ
い。)
ロ) アキユームレータ68で適応形と一緒にた
たみ込むので、適応形のパラメータと同期して
読出しを行なうこと
ロ) プリメモリ22に入力データの書込を行な
うときの遅延時間パラメータは0であること
(カウンタ60で指示されたプリメモリ22の
アドレスに入力データを書込むため)
等の条件が必要である。
このためには、例えばサンプリング周期τ0開始
以後発生するクロツクC5をカウントし、そのカ
ウント値をアドレスとして固定形動作用パラメー
タを読出すようにすればよい。その一例を第2表
に示す。
なお、ここでも遅延時間パラメータτiはサンプ
リング周期τ0の何個分かという形で記憶されてい
る。[Table] Also, the address of fixed type operation parameters is
Since the addresses of the parameters for adaptive type operation cannot be used in common (in the applied type, all parameters (τ h+1 , g h+1 ) ~ (τ o , go ) can be convolved once.
Therefore, if a common address is used, a situation may arise in which a necessary parameter is not read in fixed type operation. ), with its own address and read signals. In this case a) All parameters (τ 1 , g 1 ) ~ within period τ 0
(τ h , g h ) (however, they may be in any order) b) Since they are convolved together with the adaptive form in the accumulator 68, read them in synchronization with the parameters of the adaptive form b) Pre-memory 22 Conditions such as the delay time parameter being 0 when writing input data to the address (in order to write the input data to the address of the pre-memory 22 designated by the counter 60) are required. For this purpose, for example, the clock C5 generated after the start of the sampling period τ 0 may be counted, and the fixed operation parameters may be read out using the counted value as an address. An example is shown in Table 2. Note that the delay time parameter τ i is also stored here as a number of sampling periods τ 0 .
以上説明したように、この発明によれば、入力
信号の有無検出用のプリメモリに初期部分のパラ
メータを適用して残響音を生成するようにしたも
ので、入出力間に信号遅れがなくなり、楽器演奏
やボーカル等の生演奏においても自然な残響音を
作成することができる。
As explained above, according to the present invention, reverberant sound is generated by applying the parameters of the initial part to the pre-memory for detecting the presence or absence of an input signal, and there is no signal delay between input and output, and the instrument Natural reverberation can be created even during live performances such as performances and vocals.
第1図は、この発明の一実施例を示すブロツク
図である。第2図は、ある音響空間におけるイン
パルス応答を示す図である。第3図は、第2図の
インパルス応答をパラメータとした残響付加装置
の概念図である。第4図は第3図の装置の具体例
を示すブロツク図である。第5図は、従来の残響
付加装置を示すブロツク図である。第6図は、第
5図の装置の動作説明図である。第7図〜第12
図は、この発明の原理説明図で、第7図はインパ
ルス応答、第8図〜第12図は第7図のインパル
ス応答をパラメータとする残響付加装置の各動作
モードにおける概念図である。第13図〜第17
図は、第1図のデータメモリ24の各動作状態
と、適用されるパラメータをそれぞれ示す図であ
る。第18図は、第1図の装置の動作説明図であ
る。第19図は、第1図の装置の具体例を示すブ
ロツク図である。第20図は、第19図の装置の
動作説明図である。第21図は、ゼロ検出回路2
6の他の構成例を示す回路図である。
22…プリメモリ、24…データメモリ、26
…ゼロ検出回路。
FIG. 1 is a block diagram showing one embodiment of the present invention. FIG. 2 is a diagram showing an impulse response in a certain acoustic space. FIG. 3 is a conceptual diagram of a reverberation adding device using the impulse response of FIG. 2 as a parameter. FIG. 4 is a block diagram showing a specific example of the apparatus shown in FIG. 3. FIG. 5 is a block diagram showing a conventional reverberation adding device. FIG. 6 is an explanatory diagram of the operation of the apparatus shown in FIG. 5. Figures 7 to 12
The figures are explanatory diagrams of the principle of the present invention; FIG. 7 is an impulse response, and FIGS. 8 to 12 are conceptual diagrams in each operation mode of the reverberation adding apparatus using the impulse response of FIG. 7 as a parameter. Figures 13 to 17
The figure is a diagram showing each operating state of the data memory 24 in FIG. 1 and applied parameters. FIG. 18 is an explanatory diagram of the operation of the apparatus shown in FIG. 1. FIG. 19 is a block diagram showing a specific example of the apparatus shown in FIG. 1. FIG. 20 is an explanatory diagram of the operation of the apparatus shown in FIG. 19. FIG. 21 shows the zero detection circuit 2
FIG. 6 is a circuit diagram showing another configuration example of No. 6; 22... Pre-memory, 24... Data memory, 26
...Zero detection circuit.
Claims (1)
前記入力信号の有無を検出するレベル検出手段
と、 前記プリメモリから所定時間遅延して出力され
る前記入力信号を順次記憶するメインメモリと、 前記プリメモリに記憶されたデータについて、
反射音パラメータの初期部分を適用して残響信号
を作成する固定形たたみ込み演算部と、 前記データメモリに記憶されたデータについ
て、反射音パラメータの残りの部分のうち前記レ
ベル検出手段で検出された入力信号の無信号部分
の遅延時間に対応するものを除き上位複数のもの
を適用して残響信号を作成する適応形たたみ込み
演算部と、 前記固定形たたみ込み演算部と適応形たたみ込
み演算部の出力を加算して出力する加算手段と を具えたことを特徴とする残響付加装置。[Scope of Claims] 1. A pre-memory for sequentially storing input signals; a level detecting means for detecting the presence or absence of the input signal based on the data stored in the pre-memory; and output from the pre-memory after a predetermined time delay. A main memory that sequentially stores the input signals, and data stored in the pre-memory,
a fixed convolution calculation unit that applies an initial part of the reflected sound parameters to create a reverberation signal; an adaptive convolution calculation unit that creates a reverberation signal by applying a plurality of higher-order items except for those corresponding to the delay time of the no-signal portion of the input signal; and the fixed convolution calculation unit and the adaptive convolution calculation unit. A reverberation adding device characterized by comprising: an adding means for adding and outputting the outputs of the reverberation adding device.
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60138397A JPS61296393A (en) | 1985-06-25 | 1985-06-25 | Echo adder |
| US06/877,442 US4706291A (en) | 1985-06-25 | 1986-06-23 | Reverberation imparting device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP60138397A JPS61296393A (en) | 1985-06-25 | 1985-06-25 | Echo adder |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS61296393A JPS61296393A (en) | 1986-12-27 |
| JPH0262876B2 true JPH0262876B2 (en) | 1990-12-26 |
Family
ID=15220991
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP60138397A Granted JPS61296393A (en) | 1985-06-25 | 1985-06-25 | Echo adder |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS61296393A (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009128559A (en) * | 2007-11-22 | 2009-06-11 | Casio Comput Co Ltd | Reverberation effect adding device |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1805752A4 (en) * | 2004-10-26 | 2012-06-27 | Richard S Burwen | Unnatural reverberation |
-
1985
- 1985-06-25 JP JP60138397A patent/JPS61296393A/en active Granted
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2009128559A (en) * | 2007-11-22 | 2009-06-11 | Casio Comput Co Ltd | Reverberation effect adding device |
Also Published As
| Publication number | Publication date |
|---|---|
| JPS61296393A (en) | 1986-12-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4706291A (en) | Reverberation imparting device | |
| US4803731A (en) | Reverbation imparting device | |
| US5386529A (en) | Digital signal processor for use in sound quality treatment by filtering | |
| JPH02110597A (en) | Address control circuit | |
| JPH0262876B2 (en) | ||
| JP2634561B2 (en) | Variable delay circuit | |
| US5703956A (en) | External memory control circuit for sound field processing digital signal processor | |
| JPH0262877B2 (en) | ||
| JP2950461B2 (en) | Tone generator | |
| JPS6051896A (en) | Reverberation adder | |
| JPH08292764A (en) | Signal switching device | |
| JPH052391A (en) | Signal processor | |
| JPH0410078B2 (en) | ||
| JP2684820B2 (en) | Surround circuit | |
| JPH0444760B2 (en) | ||
| JPH0544040B2 (en) | ||
| JP2712191B2 (en) | Effect adding device | |
| JPH0547840B2 (en) | ||
| JPH0719246B2 (en) | Digital signal processor | |
| JP2853203B2 (en) | Audio signal delay device | |
| JP3154759B2 (en) | Method and apparatus for delaying operation data of digital filter | |
| KR100286351B1 (en) | Horizontal/vertical interpolation apparatus and method for digital zoom apparatus | |
| JPH01321485A (en) | Effects device | |
| JP3755249B2 (en) | Data storage device | |
| JPS61288613A (en) | Digital filter |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |