JPH0262877B2 - - Google Patents

Info

Publication number
JPH0262877B2
JPH0262877B2 JP60147974A JP14797485A JPH0262877B2 JP H0262877 B2 JPH0262877 B2 JP H0262877B2 JP 60147974 A JP60147974 A JP 60147974A JP 14797485 A JP14797485 A JP 14797485A JP H0262877 B2 JPH0262877 B2 JP H0262877B2
Authority
JP
Japan
Prior art keywords
memory
data
period
parameters
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
Application number
JP60147974A
Other languages
Japanese (ja)
Other versions
JPS628198A (en
Inventor
Tomofumi Shikakubo
Koji Niimi
Juji Ikegaya
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.)
Yamaha Corp
Original Assignee
Yamaha 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 Yamaha Corp filed Critical Yamaha Corp
Priority to JP60147974A priority Critical patent/JPS628198A/en
Publication of JPS628198A publication Critical patent/JPS628198A/en
Publication of JPH0262877B2 publication Critical patent/JPH0262877B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Reverberation, Karaoke And Other Acoustics (AREA)

Description

【発明の詳細な説明】[Detailed description of the invention]

〔産業上の利用分野〕 この考案は、インパルス応答を係数パラメータ
として用いて作成した入力信号(音楽信号等)の
複数の遅延信号を重ね合せて、入力信号の残響音
を作成する装置に関し、残響音の周波数特性を制
御して帯域制限すると同時に、残響音の1つのサ
ンプルを作成するための周期を長くして演算点数
を増加させ、より理想的な残響音を作成するよう
にしたものである。 〔従来の技術〕 音楽信号等に人工的に残響を付加する場合、電
子的な方法として最も直接的なものは、仮想する
ホール等の音響空間におけるインパルス応答に対
応して、直接音から種々の時間遅れをもつ信号の
重ね合せとして表現する方法である。すなわち、
仮想する音響空間のインパルス応答が、第2図に
示すように、直接音に対して遅延時間τiとレベル
gi(i=1〜n)で構成される複数の反射音の列
であるとすると、この遅延時間τiとレベルgiを係
数パラメータ(反射音パラメータ)として、入力
信号の各サンプルについて反射音列をそれぞれ作
成し、各サンプルの反射音を同時刻ごとに重ね合
せていくことにより(このように遅延信号に、ゲ
インをかけて加算する演算をたたみ込み演算とい
う。)残響音が作成される。 このたたみ込み演算は、概念的には第3図に示
すように、マルチタツプを持つシフトレジスタ1
に入力信号の各サンプル値をサンプリング周期τ0
ごとに順次シフトしながら入力し、1サンプリン
グ周期τ0内において遅延時間τ1〜τoに対応する各
タツプから各サンプルの遅延信号X1〜Xoをそれ
ぞれ出力し、これらを乗算器2−1,2−nをそ
れぞれ係数(ゲイン)g1〜goを付与し、加算器3
で加算するもので、 Xout=oi=1 xi・gi なる残響信号の1つのサンプルが得られる。 具体的には、第4図に示すように、入力信号の
各サンプルをデータメモリ10に記憶し、パラメ
ータメモリ12から遅延時間データτ1〜τoを順次
読み出し、これらをアドレスとして、各遅延時間
τ1〜τoに対応する遅延信号X1〜Xoをデータメモ
リ12から順次読み出し、乗算器14でこれら遅
延信号X1〜Xoに係数g1〜goをそれぞれ付与して、
個々の反射音信号X1・g1〜Xo・goを順次作成し、
これらを加算器18とレジスタ20で構成される
アキユームレータ16で順次累算することによ
り、残響信号の1つのサンプルが作成される。そ
して、データメモリ10に新たな入力信号サンプ
ルが書き込まれるごとに、この一連の動作を繰り
返せば、一連の残響信号が作成される。 前記の直列逐次処理によるたたみ込み演算は、
入力信号の1サンプリング周期τ0中に前記一連の
動作を行なつて、1つの残響信号のサンプルを作
成しなければならないが、演算速度の制約から、
周期τ0中にたたみ込み演算できる点数アキユーム
レータ16で周期τ0中にデータ係数を付して累算
する回数)は制限されていた。しかし、より多く
のたたみ込みが行なえば、より自然な残響信号を
再現できることはあきらかである。 そこで、従来、周期τ0中で反射音パラメータの
領域を選択使用して、実質的にたたみ込み点数を
増加させるものがあつた。第5図はこの様子を示
したもので、入力信号の各時点a〜kにおいて使
用される反射音パラメータの領域を示したもので
ある。これによれば、入力信号が持続している場
合(a〜d)は、残響音の後半部分(小レベル)
は入力信号にマスキングされて聴こえなくなる性
質があるので、初期部分の反射音パラメータのみ
を使用(以下これを固定形動作という。)し、入
力信号が途絶した場合(e〜)には、使用する反
射音パラメータの領域を順次下位に移行させ、自
然でかつ長い残響音を確保している(以下これを
適応形動作という。)。 ところで、自然界における残響は、時間ととも
に変化し、高域成分ほど早く減衰する性質があ
る。そこで、前記の人工的な残響付加において
も、例えば第6図に示すように、残響付加回路2
2の出力側に周波数特性制御回路24を設けて、
前記適応形動作時に周波数特性制御回路24のフ
イルタ特性(ローパスフイルタ)を第7図に示す
ようにf1〜fo(第8図)と順次カツトオフ周波数
の低い特性に切替えていけば、この現象をシミユ
レートできる。 〔発明が解決しようとする問題点〕 この発明は、前記周波数特性制御を伴う残響付
加装置において、より自然に近い残響音を得よう
とするものである。 〔問題点を解決するための手段〕 この発明は、周波数特性制御による帯域制限に
合せて、残響付加回路において残響信号を作成す
るためのサンプリング周期を長くして、たたみ込
み点数を増やしたものである。 〔作用〕 この発明の前記解決手段によれば、残響信号の
1つのサンプルを作るためのたたみ込み点数が増
えるので、残響信号を構成する情報量が増え、よ
り自然に近い残響音を得ることができる。 〔発明の原理〕 標本化定理によれば、信号の最高周波数の2倍
以上のサンプリング周波数でサンプリングを行な
えば、元の波形は完全に再現できる。したがつ
て、前記周波数特性制御回路24により帯域制限
を行なう場合、帯域が狭くなるのに合せて残響付
加回路22から出力する残響信号のサンプリング
周波数を低くしても、その帯域内の残響信号を再
現できる。そして、サンプリング周期を低くすれ
ば、1サンプリング周期は長くなり、この周期内
にたたみ込み可能な点数が増え、これにより残響
音の情報情が増え、より自然に近い残響音を得る
ことができる。 すなわち、周波数帯域が前記第8図のように変
化する際、帯域変化に合せてサンプリング周期を
第9図のように変化させれば、これに応じてたた
み込み点数を変化させることができる。すなわ
ち、 たたみ込み点数≒サンプリング周期/1回の動
作(係数付および加算に要する時間) となる。 第10図は、この発明によりサンプリング周期
を変化させた場合にたたみ込み点数が変化する様
子を示したものである。また、第11図は、入力
が途絶して適応形動作に移行した時に、フイルタ
特性の変化とともにたたみ込みに使用する反射音
パラメータの領域および個数が変化する様子を示
したものである。残響信号の減衰とともにフイル
タ特性の帯域を狭めていくので(第7図,第8
図)、使用する反射音パラメータの個数がしだい
に増加していき、たたみ込み点数が増えていく。 〔実施例〕 この発明の一実施例を第1図に示す。この残響
付加装置は、入力信号の残響信号を作成する残響
付加回路22と、作成された残響信号にフイルタ
特性を付与する周波数特性制御回路24とを具え
ている。残響付加回路22は、入力が途絶した場
合に、使用する反射音パラメータの領域を下位に
順次ずらしていく適応形動作をするように構成さ
れている。 ところで、適応形の残響付加装置では、入力信
号がゼロレベルになつたことを検出して、固定形
動作すなわちパラメータの使用区間を上位に固定
して残響音を作成する動作から適応形動作すなわ
ちパラメータの使用区間を順次下位にずらしてい
く動作に切替えるが、検出されるゼロレベルが単
に信号波形のゼロクロスによるものか、あるい
は、本当に入力信号が途絶えたことによるものか
を判断するため、数10ミリ秒程度の長い時間にわ
たつて入力信号のレベルを検出する必要がある。
また、入力信号途絶と判断した場合、その検出区
間の最初の入力信号部分にさかのぼつて適応形動
作を実行していかなければならない。このため従
来の適応形においては、入力信号を一時蓄えてお
くためのメモリ(プリメモリ)を用いてその検出
時間分入力信号を常に遅延させており、このた
め、入出力間に遅延時間が生じる欠点があつた。 そこで、第1図の実施例の残響付加回路22で
は、これを改善して、プリメモリ32のデータに
ついて反射音パラメータの初期部分を適用して固
定形のたたみ込み演算を行ない、プリメモリから
の遅延データが入力されるデータメモリ34につ
いては反射音パラメータの残りの部分を適用して
適応形のたたみ込み演算を行ない、最終的にこれ
ら出力を加算するようにして、入出力間の遅延を
なくしている。 なお、この実施例においては、全部でn個のパ
ラメータ(τ1,g1)〜(τo,go)を使用するもの
とし、そのうち固定形たたみ込みに上位h個のパ
ラメータ(τ1〜g1)〜(τh,gh)を使用し、適応
形たたみ込みに残りのパラメータ(τh+1,gh+1
〜(τo,go)のうちの適宜の領域を使用する場合
について説明する。 第1図において、入力信号サンプルはゼロ検出
部25のゼロ検出用のプリメモリ32に一旦蓄え
られ、ゼロ検出を行なう数10ミリ秒遅延されて順
次適応形たたみ込み演算部36のデータメモリ3
4に転送されていく。 固定形たたみ込み演算部27は、プリメモリ3
2のデータから初期部分の残響信号を作成する。
すなわち、インパルスレスポンスデイレイメモリ
40は、遅延時間のパラメータτi(i=1,2…
n)のうちプリメモリ32に保持される遅延デー
タ分のパラメータ(すなわち数10ミリ秒までのパ
ラメータ)τ1〜τhを記憶している。また、インパ
ルスレスポンスレベルメモリ42は、これらに対
応するレベルパラメータg1〜ghを記憶している。 カウンタ44は、メモリ40,42から入力信
号の1サンプリング周期ごとに全パラメータ
(τ1,g1)〜(τh,gh)を読出走査するとともに、
プリメモリ32に書込アドレスと読出アドレスを
与えるためのものである。読出アドレスは書込ア
ドレスを基準としてτ1〜τh遅延した位置にあるの
で、加算器46で書込アドレスに遅延時間パラメ
ータτ1〜τhを加算した形で与えられる。 プリメモリ32から読み出された各遅延時間τ1
〜τhに対応した入力サンプル値X1〜Xhは、たた
み込み演算回路48において、メモリ42からの
対応レベルパラメータg1〜ghとそれぞれ掛け合さ
れて累算され、たたみ込み演算が行なわれる。こ
のようにして、入力信号のサンプリング周期ごと
に一連のたたみ込み演算が行なわれて、固定形た
たみ込み演算部27からは、初期部分の残響信号
が出力される。 適応形たたみ込み演算部36において、データ
メモリ34はプリメモリ32か出力される遅延デ
ータを最古サンプルが書き込まれているアドレス
から順に書き込込んで、順次更新していく。 インパルスレスポンスデイレイメモリ50は、
前記固定形たたみ込み演算部27で用いられる初
期反射音部分の遅延時間パラメータτ1〜τhより後
の遅延時間パラメータτh+1〜τoを記憶し、インパ
ルスレスポンスレベルメモリ52は、これらの対
応ゲインパラメータgh+1〜goを記憶している。こ
れらパラメータ(τh+1,gh+1)〜(τo,go)の内
容については後に述べる。 カウンタ48は、メモリ50,52から入力信
号1のサンプリング周期ごとに全パラメータ
(τh+1,gh+1)〜(τo,gh)のうち所定領域のパラ
メータを読出走査するためのものである。 順列コントロール54は、カウンタ48が読み
出すべき前記所定領域を決めるものである。すな
わち、入力信号が連続しているときは、先頭から
所定数のパラメータ(τh+1,gh+1),(τh+2,gh+2
…、カウンタ48のカウントに従つて順次読み出
し、ゼロ検出部25がゼロ検出すると、それ以後
の時間tを計測し、これとプリメモリ32での遅
延時間t0(τh≦t0≦τh+1)を足して、t+t0≦τi
関係にあるパラメータを上位から使用する。例え
ば、はじめはt=0なので(τh+1,gh+1)からt
+t0>τh+1となると(τh+2,gh+2)から更にt+t0
>τh+2となると(τh+3,gh+3)から所定数のパラ
メータが利用される。この場合、帯域制御回路5
5の指令により、使用されるパラメータの個数は
順次増加してくる。 アドレスコントローラ56は、データメモリ3
4の書込および読出アドレスを指令するものであ
る。書込アドレスは、前述のように、最古サンプ
ルが入つているアドレスが順次指定され、新しい
サンプルに更新されていく。読出アドレスは、書
込アドレスを基準として、インパルスレスポンス
デイレイメモリ50から読み出された遅延時間パ
ラメータτiに対応すべきデータアドレスが指令さ
れ、その遅延時間データXiを読み出す。なお、デ
ータメモリ34からのデータ読出しに関する具体
的内容は後に述べる。 なお、ゼロ検出がなされたとき、データメモリ
34は書込停止となり、、ゼロ検出が解除された
とき(信号入力が再開されたとき)、その停止し
たアドレスから書込を再開させるようになつてい
る。 たたみ込み演算回路38は、データメモリ34
から読み出された遅延信号データXiにインパルス
レスポンスレベルメモリ52からの対応レベルパ
ラメータgiを順次掛け合せて累算し、1つの残響
信号サンプルを出力する。このようにして、所定
の周期(入力信号が持続して固定形動作をしてい
るときは入力信号のサンプリング周期の入力信号
が途絶して適応形動作をしているときはそれより
も順次長くなつていく周期)ごとに初期部分以後
の残響信号のサンプルが作成されていく。 適応形たたみ込み演算部36の出力は周波数特
性制御回路24に入力されてフイルタ特性が付与
される。この回路24は、デジタルフイルタで構
成され、入力信号をフイルタ演算回路70内に設
けられたメモリで順次遅延するとともに、係数メ
モリ66に記憶されているフイルタ係数を専用カ
ウンタ68で読出走査して、遅延データに乗算し
て累算(すなわちこのフイルタ演算もたたみ込み
演算。)し、フイルタ特性を付与する。 係数メモリ66には様々なフイルタ特性を示す
係数が記憶されており、ゼロ検出部25でゼロ検
出されると、順次カツトオフ周波数が低くなるロ
ーパスフイルタの特性が選択される。このとき、
適応形たたみ込み演算部36の帯域制御回路55
は、選択されたフイルタ特性に応じて残響信号を
作成するためのサンプリング周期を順次長くすべ
く、順列コントローラ54,アドレスコントロー
ラ56,カウンタ68に指令を出す。 固定形たたみ込み演算部27で作成された初期
部分の残響信号と、適応形たたみ込み演算部36
で作成されたサンプリング周期が元に戻され、さ
らに周波数特性制御回路24でフイルタ特性が付
与された初期以後の残響信号は、加算器60で加
算されて一体化されて出力される。 〔残響付加回路22の具体例〕 第1図の実施例における残響付加回路22の具
体例を第12図に示す。 具体例を説明する前に、サンプリング周期の可
変状況と、周期を可変した場合のたたみ込み演算
内容およびそのためのパラメータ記憶について簡
単に述べる。 サンプリング周期の変化比は、原理的には、出
力側での帯域制限内容と合致していさえすれば、
任意の比とすることが可能であるが、ここでは、
動作簡略化のため、サンプリング周期を2倍づつ
長くさせていく(すなわち、周波数特性制御回路
の帯域制限を1/2倍づつ変化させていくものとな
る。 また、サンプリング周期が変ると、当然出力サ
ンプルが得られる間隔も変わる。ここで、たたみ
込み演算の原理を再び思いおこしてみるに、ある
出力サンプル列を得るために用いるデータ列は、
必ず同じタイミングで得られたものでなければな
らない。すなわちサンプリング周期が2倍になつ
たら、用いるデータ間隔も2倍、つまり同じデー
タ列を用いるならば1個おきのデータを用いなけ
ればならない。サンプリング周期が4倍になつた
ら用いるデータ間隔も4倍、つまり3個おきのデ
ータを用いなければならない。さらに前述した適
応形演算の場合には順次シフトされていく先頭デ
ータ位置についても正確に把握しておかなければ
ならない。 上述した内容を実現するには、データ読出アド
レス回路にてハード的にそのような動作となるよ
うに制御する方法も考えられるが、ここでは、よ
り簡単かつ効果的な方法として、たたみ込み演算
に用いるパラメータの付与方法に工夫をこらした
ものとしている。 第12図で示す具体例のパラメータメモリの記
憶内容について、第13図a,bを参照しつつ説
明する。同図aは一般的なインパルスレスポンス
を、横軸を実時間として、模式的に表わしたもの
である。これを係数パラメータとしてメモリに記
憶する際、メモリアドレスと時間とを1対1に対
応させていけば、最も直接的であるが、その場合
膨大なメモリを要することになつてしまう。そこ
で従来はレスポンスが存在し、かつ初期部分のも
ののみのデータを、遅延時間およびゲインの形で
メモリに記憶していたわけであるが、ここでは、
時間経過につれて、サンプリング周期が長くなり
同時に前述したように適用データ間隔も間引きさ
れることに鑑みて、第13図bに示すように、必
要なレスポンスのパラメータ以外は記憶しないよ
うにしている。その結果、記憶されるパラメータ
は、該当する時間におけるたたみ込み動作形態お
よびサンプリング周期に応じ、概略、後期部分ほ
ど間引かれたものとなり、総数としては間引きな
しの場合に比べ相当に少なくなつている。ところ
で、具体的にパラメータの記憶内容を決定するに
は、さらに帯域制限の変化条件等を決めておく必
要がある。ここでは、固定形動作による初期遅延
をt0とし、適応形に移行した後、t0,4t0,16t0
とに帯域制限値(フイルタのカツトオフ周波数値
が該当)が1/2づつ小さくなつていくものとして、
第13図aから同図bへのパラメータ選択がなさ
れている。すなわち、これによれば、同一のハー
ドによつても、帯域制限が1/2小さくなるごとに、
たたみ込み点数は2倍になり、また、第13図a
の横軸に相当する実時間で言えば4倍の時間分の
残響が得られることになる。 実際の回路では第13図bにおける部分aのパ
ラメータが固定形動作用パラメータ(τ1,g1)〜
(τh,gh)として、部分bのパラメータが適応形
動作用パラメータ(τh+1,gh+1)〜(τo,go)と
して、パラメータメモリ72に記憶されている。
これにより、サンプリング周期可変かつ適応形動
作で必要とされるところの、周期変化に伴なうデ
ータの所定数飛ばし読みについても、単にパラメ
ータメモリ72アドレスを順次変化させていくだ
けで極めて簡単に実現させることができる。 第12図において、タイミングコントローラ1
24からは各部を動作させるための制御クロツク
C1,C1′,C2′,C3,C3′,C4′,C
5,C6が出力される(第14図参照)。クロツ
クC1は入力信号のサンプリング周期τ0に同期し
た信号である。クロツクC1′は入力信号が持続
して固定動作をしているときは入力信号のサンプ
リング周期τ0に同期し、入力信号が途絶して適応
形動作に移行すると周期が2倍、4倍、8倍…と
しだいに長くなつていく信号である。(以下、こ
のクロツクC1′の周期をクロツクC1の周期τ0
と一致しているときも含めてサンプリング周期
τ0′という。)。クロツクC2′,C3′,C4′は

ロツクC1′と同じ周期τ0′の信号で、クロツクC
1′とともに周期を可変する。クロツクC5はク
ロツクC1よりも周期の短い信号で周期は固定で
あり、クロツクC3,C6はクロツクC1と同じ
周期τ0の信号である。 なお、クロツクC1′,C2′,C3′,C4′
は、前記周波数特性制御回路24のフイルタ特性
に応じて可変制御される。 カウンタ80は、プリメモリ32に書込アドレ
スを与えるもので、周期τ0ごとにクロツクC1に
よつてインクリメントされていく。 カウンタ81は、パラメータメモリ72の固定
形動作用パラメータの読出アドレスを与えるもの
で、周期τ0の始めにリセツトされ、以後クロツク
C5をカウントする引算器82はカウンタ80か
らの書込アドレスと、パラメータメモリ72から
の遅延時間パラメータτ1〜τhをそれぞれ引算し
て、現在の書込アドレスに対する遅延時間τ1〜τh
のアドレスを求め、これをプリメモリ32に読出
アドレスとして与える。プリメモリ32は、クロ
ツクC6によつて周期τ0に1度書込モードに切替
えられる。このとき、パラメータメモリ72への
カウンタ81のアドレス指令は0であるので、同
メモリ72からは遅延時間パラメータとして0が
読み出され、引算器82からはカウンタ80の値
がそのまま出力され、その値が示すプリメモリ3
2のアドレスに入力信号のサンプルが出き込まれ
る。クロツクC6以外のタイミングでは、プリメ
モリ32は読出モードにあり、カウンタ81から
のアドレス指令によりパラメータメモリ72から
周期τ0内に順次出力される遅延時間パラメータτ1
〜τhにより書込アドレスを基準としてτ1〜τhの遅
延時間にある入力サンプルが順次読み出される。 カウンタ74は、データメモリ34に書込アド
レス(もしくは書込禁止時には基準アドレス)を
与えるもので、周期τ0′ごとにクロツクC1′によ
つて別途入力されるサンプリング周期τ0′/τ0
応じた数づつインクリメントされていく(すなわ
ち適応形動作を行なつていない時には通常の1づ
つカウントするカウンタとなる。)。引算器76は
カウンタ74からの書込アドレスと、後述するカ
ウンタ116からのアドレス指令によりパラメー
タメモリ72からの遅延時間パラメータτi(τi
τh+1〜τoから選択された可変数のパラメータ)と
をそれぞれ引算して、現在の書込アドレスに対す
る遅延時間τiの各アドレスを求め、これをデータ
メモリ34に読出アドレスとして与える。データ
メモリ34は、クロツクC2′によつて周期τ0′に
1度書込モードに切替えられる。このとき、パラ
メータメモリ72からは遅延時間パラメータとし
て0が読み出されるので、引算器46からはカウ
ンタ74の値がそのまま出力され、その値が示す
データメモリ34のアドレスにプリメモリ32の
出力が書き込まれる。このとき、プリメモリ32
はカウンタ80によつて次に書込が行なわれるア
ドレス(すなわち最古データが入つているアドレ
ス)が指定されているので、データメモリ34に
書込まれるデータはプリメモリ32の容量分遅延
されたデータとなる。 クロツクC2′以外のタイミングでは、データ
メモリ34は読出モードにあり、パラメータメモ
リ72から周期τ0′内に順次出力される遅延時間
パラメータτiにより、書込アドレスを基準として
τiの遅延時間にあるデータが順次読み出される。 プリメモリ32から順次読み出されるデータ
X1〜Xhは、乗算器84において、パラメータメ
モリ72から順次出力されるレベルパラメータg1
〜ghがそれぞれ乗算されて、g1・X1〜gh・Xh
順次出力される。 アミユームレータ87は、乗算器84からの乗
算値を、加算器89とレジスタ91とで加算して
いくもので、これにより、最終的に周期τ0内の全
乗算値の累算値、すなわち、固定形動作での残響
信号の1サンプルが得られる。したがつて、順次
繰返すことによつて得られるサンプル列の周期
は、固定周期τ0となる。なお、アンド回路93
は、前記サンプルが得られた後、次なる周期τ0
の累算に備えてクロツクC3のタイミングでレジ
スタ91をゼロクリアするものである。 データメモリ34から順次読み出されるデータ
Xiは乗算器86において、パラメータメモリ72
から順次出力されるレベルパラメータgiがそれぞ
れ乗算されてgi・xi(iはh+1〜nから選択さ
れる可変の所定数)が順次出力される。 アキユームレータ88は、乗算器86からの乗
算値を加算値90とレジスタ92とで加算してい
くもので、これにより、最終的に周期τ0′内の全
乗算値の累算値、すなわち、適応形動作での残響
信号の1サンプルが得られる。したがつて、順次
繰返すことによつて得られるサンプル列の周期
は、可変周期τ0′である。 サンプリング周期変換回路95は、適応形動作
で得られる可変周期τ0′の残響信号のサンプル列
を、クロツクC1,C1′に基づき、周期τ0のサ
ンプル列に戻すものである。 加算器60は、サンプリング周期変換回路95
で、周期τ0に戻された適応形残響サンプル列を周
波数特性制御回路24を介して帯域制限した形の
サンプル列と、アキユームレータ87からの固定
形残響サンプル列とを加算して、最終的な残響信
号サンプル列を出力するためのものである。 ゼロ検出回路37は、プリメモリ32の出力
X1〜Xhを乗算器96でそれぞれ自乗してX1 2
Xh 2を求め、これらをクロツクC5ごとに加算器
90とレジスタ100で累算して、周期τ0内の累
算値をクロツクC1でレジスタ102に転送す
る。またレジスタ100はクロツクC1によつて
周期τ0ごとにリセツトされる。 適応形たたみ込みで使用されるパラメータデー
タのアドレスの一例を下記第1表に示す。これは
前述した第13図bの部分bのパラメータ内容に
加え、入力データの書込動作のためにアドレス0
として0データが付加されたものとなつている。
[Industrial Application Field] This invention relates to a device that creates reverberant sound of an input signal by superimposing multiple delayed signals of an input signal (music signal, etc.) created using impulse responses as coefficient parameters. This method controls the frequency characteristics of the sound to limit the band, and at the same time increases the number of calculation points by lengthening the period for creating one sample of reverberant sound, creating a more ideal reverberant sound. . [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 the virtual acoustic space is expressed by the delay time τ i and the level relative to the direct sound.
Assuming that it is a string of multiple reflected sounds consisting of g i (i = 1 to n), the delay time τ i and level g i are used as coefficient parameters (reflected sound parameters) to reflect the reflected sound for each sample of the input signal. By creating each sound sequence and superimposing the reflected sounds of each sample at the same time (the operation of multiplying and adding the delayed signal by a gain is called convolution operation), reverberant sound is created. Ru. Conceptually, this convolution operation is performed using a multi-tap shift register 1, as shown in Figure 3.
Each sample value of the input signal is measured at the sampling period τ 0
The delayed signals X 1 to X o of each sample are outputted from each tap corresponding to the delay time τ 1 to τ o within one sampling period τ 0 , and these are sent to the multiplier 2- 1, 2-n are given coefficients (gains) g 1 to g o respectively, and the adder 3
One sample of the reverberant signal, Xout= oi=1 x i・g i , is obtained. 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. The delayed signals X 1 to X o corresponding to τ 1 to τ o are sequentially read out from the data memory 12, 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 ,
By sequentially accumulating these in an accumulator 16 comprising an adder 18 and a register 20, one sample of the reverberant signal is created. Then, 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. The convolution operation using the above serial sequential processing is
The above series of operations must be performed during one sampling period τ 0 of the input signal to create one sample of the reverberant signal, but due to constraints on calculation speed,
In the point accumulator 16 that can perform convolution operations during period τ 0 , the number of times data coefficients are added and accumulated during period τ 0 is limited. However, it is clear that a more natural reverberant signal can be reproduced if more convolutions are performed. Therefore, conventionally, there has been a method that selectively uses a region of the reflected sound parameter within the period τ 0 to substantially increase the number of convolution points. FIG. 5 shows this situation, and shows the range of reflected sound parameters used at each time point a to k of the input signal. According to this, when the input signal continues (a to d), the second half of the reverberant sound (low level)
has the property of being masked by the input signal and becoming inaudible, so only the reflected sound parameters of the initial part are used (hereinafter referred to as fixed type operation), and when the input signal is interrupted (e~), the reflected sound parameters are used. The area of reflected sound parameters is sequentially shifted to lower levels to ensure natural and long reverberant sound (hereinafter referred to as adaptive operation). Incidentally, reverberation in the natural world changes over time, and has the property that higher frequency components attenuate faster. Therefore, even in the above-mentioned artificial reverberation addition, as shown in FIG. 6, for example, the reverberation addition circuit 2
A frequency characteristic control circuit 24 is provided on the output side of 2,
If the filter characteristic (low-pass filter) of the frequency characteristic control circuit 24 is sequentially switched from f 1 to fo (FIG. 8) as shown in FIG. 7 during the adaptive operation, this phenomenon can be avoided. can be simulated. [Problems to be Solved by the Invention] The present invention aims to obtain more natural reverberant sound in the reverberation adding device that involves frequency characteristic control. [Means for solving the problem] This invention increases the number of convolution points by lengthening the sampling period for creating a reverberation signal in the reverberation adding circuit in accordance with the band limitation by frequency characteristic control. be. [Operation] According to the solution of the present invention, the number of convolution points for creating one sample of the reverberant signal increases, so the amount of information constituting the reverberant signal increases, making it possible to obtain a more natural reverberant sound. can. [Principle of the Invention] According to the sampling theorem, the original waveform can be perfectly reproduced if sampling is performed at a sampling frequency that is twice or more the highest frequency of the signal. Therefore, when band limiting is performed by the frequency characteristic control circuit 24, even if the sampling frequency of the reverberation signal output from the reverberation addition circuit 22 is lowered as the band becomes narrower, the reverberation signal within the band becomes narrower. Can be reproduced. If the sampling period is lowered, one sampling period becomes longer and the number of points that can be convolved within this period increases, thereby increasing the information content of the reverberant sound and making it possible to obtain a reverberant sound that is more natural. That is, when the frequency band changes as shown in FIG. 8, by changing the sampling period as shown in FIG. 9 in accordance with the band change, the number of convolution points can be changed accordingly. That is, the number of convolution points≒sampling period/one operation (time required for adding coefficients and adding). FIG. 10 shows how the number of convolution points changes when the sampling period is changed according to the present invention. Furthermore, FIG. 11 shows how the area and number of reflected sound parameters used for convolution change as well as the filter characteristics change when the input is interrupted and the adaptive operation is started. As the reverberant signal attenuates, the band of the filter characteristic narrows (see Figures 7 and 8).
(Figure), the number of reflected sound parameters used gradually increases, and the number of convolution points increases. [Embodiment] An embodiment of the present invention is shown in FIG. This reverberation addition device includes a reverberation addition circuit 22 that creates a reverberation signal of an input signal, and a frequency characteristic control circuit 24 that gives filter characteristics to the created reverberation signal. The reverberation adding circuit 22 is configured to perform an adaptive operation of sequentially shifting the area of the reflected sound parameter to be used to a lower level when the input is interrupted. By the way, an adaptive reverberation adding device detects that the input signal has reached zero level, and changes from a fixed operation, that is, an operation that creates reverberant sound by fixing the parameter usage interval to an upper level, to an adaptive operation, that is, an operation that creates reverberation sound using parameters. However, in order to determine whether the detected zero level is simply due to a zero crossing of the signal waveform, or whether it is actually due to the input signal being interrupted, it is necessary to wait several tens of millimeters. It is necessary to detect the level of the input signal over a long period of time, on the order of seconds.
Furthermore, when it is determined that the input signal has been interrupted, the adaptive operation must be executed going back to the first input signal portion of the detection section. For this reason, in the conventional adaptive type, the input signal is always delayed by the detection time using a memory (pre-memory) to temporarily store the input signal, which has the disadvantage of causing a delay time between input and output. It was hot. Therefore, the reverberation addition circuit 22 of the embodiment shown in FIG. 1 improves this and performs a fixed convolution operation by applying the initial part of the reflected sound parameters to the data in the pre-memory 32, and converts the delayed data from the pre-memory into For the data memory 34 into which the reflected sound parameters are input, an adaptive convolution operation is performed by applying the remaining reflected sound parameters, and these outputs are finally added to eliminate the delay between input and output. . Note that in this example, a total of n parameters (τ 1 , g 1 ) to (τ o , go ) are used, among which the top h parameters (τ 1 to g 1 ) ~ (τ h , g h ) and the remaining parameters (τ h+1 , g h+1 ) in adaptive convolution
A case will be described in which an appropriate region of ~(τ o , go ) is used. In FIG. 1, the input signal samples are temporarily stored in the pre-memory 32 for zero detection of the zero detection section 25, and are delayed for several tens of milliseconds before zero detection is performed.
It will be transferred to 4. The fixed convolution calculation unit 27 is connected to the pre-memory 3
A reverberation signal of the initial part is created from the data of 2.
That is, the impulse response delay memory 40 stores delay time parameters τ i (i=1, 2...
n), parameters corresponding to the delay data held in the pre-memory 32 (that is, parameters up to several tens of milliseconds) τ 1 to τ h are stored. The impulse response level memory 42 also stores level parameters g 1 to gh corresponding to these. The counter 44 reads and scans all parameters (τ 1 , g 1 ) to (τ h , g h ) from the memories 40 and 42 every sampling period of the input signal, and
This is for providing a write address and a read address to the pre-memory 32. Since the read address is at a position delayed by τ 1 to τ h with respect to the write address, the adder 46 provides the write address in the form of adding the delay time parameters τ 1 to τ h . Each delay time τ 1 read from the pre-memory 32
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 memory 42, respectively, in the convolution calculation circuit 48, and a convolution calculation is performed. It will be done. In this way, a series of convolution operations are performed every sampling period of the input signal, and the fixed convolution operation section 27 outputs an initial portion of the reverberation signal. In the adaptive convolution calculation unit 36, the data memory 34 writes the delayed data outputted from the pre-memory 32 in order from the address where the oldest sample is written, and updates the data memory 34 sequentially. The impulse response delay memory 50 is
Delay time parameters τ h+1 to τ o subsequent to delay time parameters τ 1 to τ h of the early reflected sound portion used in the fixed convolution calculation section 27 are stored, and the impulse response level memory 52 stores these delay time parameters τ h+1 to τ o . Corresponding gain parameters g h+1 to g o are stored. The contents of these parameters (τ h+1 , g h+1 ) to (τ o , go ) will be described later. The counter 48 reads out and scans parameters in a predetermined area among all the parameters (τ h+1 , g h+1 ) to (τ o , g h ) from the memories 50 and 52 every sampling period of the input signal 1. It is something. The permutation control 54 determines the predetermined area from which the counter 48 should read. In other words, when the input signal is continuous, a predetermined number of parameters (τ h+1 , g h+1 ), (τ h+2 , g h+2 ) from the beginning are
..., are read out sequentially according to the count of the counter 48, and when the zero detection unit 25 detects zero, the subsequent time t is measured, and this and the delay time t 0 in the pre-memory 32 (τ h ≦t 0 ≦τ h+ 1 ) and use parameters having the relationship t+t 0 ≦τ i from the top. For example, since t = 0 at the beginning, (τ h+1 , g h+1 ), t
When +t 0 > τ h+1 , further t+t 0 from (τ h+2 , g h+2 )
h+2 , a predetermined number of parameters are used from (τ h+3 , g h+3 ). In this case, the band control circuit 5
According to the command No. 5, the number of parameters used increases sequentially. The address controller 56 controls the data memory 3
This command specifies the write and read addresses of 4. As described above, as the write address, the address containing the oldest sample is sequentially designated and updated to a new sample. As the read address, a data address corresponding to the delay time parameter τ i read from the impulse response delay memory 50 is designated based on the write address, and the delay time data X i is read out. Note that specific details regarding reading data from the data memory 34 will be described later. Note that when zero detection is performed, writing to the data memory 34 is stopped, and when zero detection is canceled (when signal input is resumed), writing is restarted from the address where it stopped. There is. The convolution calculation circuit 38 is connected to the data memory 34
The delayed signal data X i read from the impulse response level memory 52 is sequentially multiplied by the corresponding level parameter g i from the impulse response level memory 52 and accumulated, and one reverberation signal sample is output. In this way, the predetermined period (when the input signal is sustained and the fixed type operation is performed, the sampling period of the input signal is sequentially longer than when the input signal is interrupted and the adaptive type operation is performed) Samples of the reverberant signal after the initial part are created for each period (with increasing frequency). The output of the adaptive convolution calculation unit 36 is input to the frequency characteristic control circuit 24 and is given a filter characteristic. This circuit 24 is composed of a digital filter, and sequentially delays the input signal in a memory provided in the filter calculation circuit 70, reads and scans the filter coefficients stored in the coefficient memory 66 with a dedicated counter 68, and The delayed data is multiplied and accumulated (that is, this filter operation is also a convolution operation) to give filter characteristics. Coefficients representing various filter characteristics are stored in the coefficient memory 66, and when a zero is detected by the zero detection section 25, low-pass filter characteristics whose cutoff frequency is successively lowered are selected. At this time,
Bandwidth control circuit 55 of adaptive convolution calculation unit 36
issues a command to the permutation controller 54, address controller 56, and counter 68 in order to sequentially lengthen the sampling period for creating a reverberation signal according to the selected filter characteristics. The initial part of the reverberation signal created by the fixed convolution calculation unit 27 and the adaptive convolution calculation unit 36
The sampling period created in is returned to the original value, and the reverberation signals after the initial stage, which are further given filter characteristics by the frequency characteristic control circuit 24, are added together by the adder 60 and output as a single unit. [Specific Example of Reverberation Addition Circuit 22] A specific example of the reverberation addition circuit 22 in the embodiment of FIG. 1 is shown in FIG. Before explaining a specific example, a brief description will be given of how the sampling period is varied, the contents of the convolution operation when the period is varied, and the storage of parameters therefor. In principle, as long as the sampling period change ratio matches the band limit content on the output side,
Any ratio is possible, but here:
To simplify the operation, the sampling period is increased by 2 times at a time (in other words, the band limit of the frequency characteristic control circuit is changed by 1/2 times at a time. Also, as the sampling period changes, the output The interval at which samples are obtained also changes.Recalling the principle of the convolution operation again, the data sequence used to obtain a certain output sample sequence is
They must be obtained at the same time. That is, when the sampling period doubles, the data interval used also doubles, that is, if the same data string is used, every other data must be used. If the sampling period quadruples, the data interval used must also quadruple, that is, every third data must be used. Furthermore, in the case of the above-mentioned adaptive calculation, it is necessary to accurately grasp the position of the leading data that is sequentially shifted. In order to achieve the above-mentioned contents, it is possible to control the data read address circuit to perform such an operation using hardware, but here, as a simpler and more effective method, we will use the convolution operation. The method of assigning the parameters used has been devised. The stored contents of the parameter memory of the specific example shown in FIG. 12 will be explained with reference to FIGS. 13a and 13b. Figure a schematically represents a general impulse response, with the horizontal axis representing real time. When storing this in memory as a coefficient parameter, it would be most direct if the memory address and time corresponded one to one, but in that case a huge amount of memory would be required. Therefore, in the past, there was a response and data only for the initial part was stored in memory in the form of delay time and gain, but here,
Considering that as time passes, the sampling period becomes longer and the applied data interval is also thinned out as described above, as shown in FIG. 13b, only necessary response parameters are stored. As a result, the parameters to be stored are generally thinned out in the latter part, depending on the convolution operation mode and sampling period at the relevant time, and the total number is considerably smaller than in the case without thinning. . By the way, in order to specifically determine the stored contents of the parameters, it is necessary to further determine the conditions for changing the band limit, etc. Here, the initial delay due to fixed type operation is t 0 , and after shifting to adaptive type, the band limit value (corresponding to the cutoff frequency value of the filter) decreases by 1/2 at every t 0 , 4t 0 , and 16t 0 . As something to go on,
Parameter selection is made from FIG. 13a to FIG. 13b. In other words, according to this, even with the same hardware, each time the bandwidth limit is reduced by 1/2,
The number of convolution points is doubled, and Fig. 13a
In terms of real time, which corresponds to the horizontal axis of , reverberation for four times as long can be obtained. In an actual circuit, the parameters of part a in Fig. 13b are the fixed operating parameters (τ 1 , g 1 ) ~
As (τ h , g h ), the parameters of part b are stored in the parameter memory 72 as adaptive operation parameters (τ h+1 , g h+1 ) to (τ o , go ).
As a result, skip reading of a predetermined number of data due to a change in the sampling period, which is required in adaptive operation with a variable sampling period, can be achieved extremely easily by simply changing the addresses of the parameter memory 72 in sequence. be able to. In FIG. 12, timing controller 1
From 24, control clocks C1, C1', C2', C3, C3', C4', C for operating each part are provided.
5 and C6 are output (see FIG. 14). Clock C1 is a signal synchronized with the sampling period τ 0 of the input signal. Clock C1' synchronizes with the sampling period τ 0 of the input signal when the input signal continues and is in fixed operation, and when the input signal is interrupted and shifts to adaptive operation, the period doubles, quadruples, and 8 times. It is a signal that gradually becomes longer. (Hereinafter, the period of this clock C1' will be referred to as the period of clock C1 τ 0
The sampling period is called τ 0 ′, including when it coincides with . ). Clock C2', C3', and C4' are signals with the same period τ 0 ' as clock C1'.
The period is varied together with 1'. Clock C5 is a signal with a shorter period than clock C1 and has a fixed period, and clocks C3 and C6 are signals with the same period τ 0 as clock C1. In addition, clocks C1', C2', C3', C4'
is variably controlled according to the filter characteristics of the frequency characteristic control circuit 24. The counter 80 provides a write address to the pre-memory 32, and is incremented by the clock C1 every cycle τ0 . The counter 81 provides a read address for the fixed operating parameters in the parameter memory 72 and is reset at the beginning of the period τ 0 .The subtracter 82 that counts the clock C5 thereafter uses the write address from the counter 80 and By subtracting the delay time parameters τ 1 to τ h from the parameter memory 72, the delay time τ 1 to τ h for the current write address is determined.
The address is determined and given to the pre-memory 32 as a read address. The prememory 32 is switched to the write mode once every period τ 0 by the clock C6. At this time, since the address command of the counter 81 to the parameter memory 72 is 0, 0 is read out from the memory 72 as the delay time parameter, and the value of the counter 80 is output as is from the subtracter 82, and the value of the counter 80 is output as is. Pre-memory 3 indicated by the value
Samples of the input signal are input to and output from address 2. At timings other than clock C6, the prememory 32 is in the read mode, and the delay time parameter τ 1 is sequentially output from the parameter memory 72 within the period τ 0 according to the address command from the counter 81.
.about..tau.h , input samples at a delay time of .tau.1 to .tau.h with respect to the write address are sequentially read out. The counter 74 provides a write address (or a reference address when writing is prohibited) to the data memory 34, and is configured to input a sampling period τ 0 '/τ 0 separately by the clock C1' every period τ 0 '. The counter is incremented by a corresponding number (that is, when no adaptive operation is performed, the counter becomes a normal counter that counts by 1). The subtracter 76 uses the write address from the counter 74 and the delay time parameter τ ii is a variable number selected from τ h+1 to τ o (parameters)) to obtain each address of delay time τ i with respect to the current write address, and provide this to the data memory 34 as a read address. Data memory 34 is switched to write mode once every period τ 0 ' by clock C2'. At this time, since 0 is read as the delay time parameter from the parameter memory 72, the value of the counter 74 is output as is from the subtracter 46, and the output of the prememory 32 is written to the address of the data memory 34 indicated by that value. . At this time, the pre-memory 32
Since the address to be written next (that is, the address containing the oldest data) is specified by the counter 80, the data written to the data memory 34 is data delayed by the capacity of the prememory 32. becomes. At timings other than clock C2', the data memory 34 is in the read mode, and the delay time parameter τ i sequentially output from the parameter memory 72 within the period τ 0 ' causes a delay time of τ i with the write address as the reference. Certain data is read out sequentially. Data read out sequentially from pre-memory 32
X 1 to X h are level parameters g 1 sequentially output from the parameter memory 72 in the multiplier 84
~g h are multiplied, respectively, and g 1 · X 1 ~ g h ·X h are output in sequence. The amiumulator 87 adds the multiplied values from the multiplier 84 using the adder 89 and the register 91, so that the final value is the accumulated value of all the multiplied values within the period τ 0 , that is, , one sample of the reverberant signal in fixed form operation is obtained. Therefore, the period of the sample sequence obtained by sequentially repeating is the fixed period τ 0 . In addition, the AND circuit 93
After the sample is obtained, the register 91 is cleared to zero at the timing of clock C3 in preparation for accumulation within the next period τ 0 . Data read out sequentially from data memory 34
In the multiplier 86, X i is
are multiplied by the level parameters g i sequentially output from , respectively, and g i ·x i (i is a variable predetermined number selected from h+1 to n) are sequentially output. The accumulator 88 adds the multiplication value from the multiplier 86 to the addition value 90 and the register 92, so that the final value is the accumulated value of all the multiplication values within the period τ 0 ', i.e. , one sample of the reverberant signal in adaptive operation is obtained. Therefore, the period of the sample sequence obtained by sequentially repeating is a variable period τ 0 '. The sampling period conversion circuit 95 converts a sample string of the reverberant signal with a variable period τ 0 ' obtained by the adaptive operation into a sample string with a period τ 0 based on the clocks C1 and C1'. The adder 60 includes a sampling period conversion circuit 95
Then, the adaptive reverberation sample string whose period has been returned to τ 0 is band-limited via the frequency characteristic control circuit 24, and the fixed reverberation sample string from the accumulator 87 are added to obtain the final result. This is for outputting a series of reverberant signal samples. The zero detection circuit 37 outputs the output of the pre-memory 32.
X 1 to X h are each squared by the multiplier 96 to obtain X 1 2 to
X h 2 is determined and accumulated by the adder 90 and the register 100 every clock C5, and the accumulated value within the period τ 0 is transferred to the register 102 by the clock C1. The register 100 is also reset every period τ 0 by the clock C1. An example of addresses of parameter data used in adaptive convolution is shown in Table 1 below. In addition to the parameter contents in part b of FIG.
0 data is added as .

【表】 なお、ここで、遅延時間パラメータについて
は、入力信号の1サンプリング周期τ0を基準とし
ており、この周期τ0の何個分に相当するかという
形で記憶されている。 次に固定形たたみ込みで使用されるパラメータ
データのアドレスの一例を下記第2表に示す。こ
れは、第13図bの部分aのパラメータ内容に加
え、入力データの書込動作のためにアドレス0.1
として0データが付加されたものとなつている。
[Table] Here, the delay time parameters are based on one sampling period τ 0 of the input signal, and are stored in the form of how many of this period τ 0 they correspond to. Next, an example of addresses of parameter data used in fixed-form convolution is shown in Table 2 below. In addition to the parameter contents in part a of FIG.
0 data is added as .

〔周波数特性制御回路24の具体例〕[Specific example of frequency characteristic control circuit 24]

次に、第1図の周波数特性制御回路24の具体
例を第15図に示す。 これは、FIR(finite impulse response:非巡
回形フイルタ)で構成したもので、概念的には例
えば第16図に示すように、入力信号x0を遅延素
子130で1サンプリング周期τ0ずつ遅延させ
て、各段(ここでは20個のサンプル点でフイルタ
特性を表わす例を示している。)の遅延出力に乗
算器132で係数a1〜a20を付与し、各出力a1x0
〜a20x0を加算器134で累算して(すなわちた
たみ込み演算して)入力信号X0にローパスフイ
ルタの特性を付与するようにしたものである。係
数a1〜a20の値によりフイルタ特性が設定される。
そして、第15図の回路では特にRAMを用いた
プログラム制御でこれを実現している。なお、第
15図の回路で用いられている各制御信号を第1
7図に示す。 第17図において、クロツクC1は前記第13
図のクロツクC1と同じ信号、クロツクC7はク
ロツクC1の1周期τ0にm+1個発生する信号、
クロツクC8,C9はクロツクC1と同じ周期τ0
を有する信号である。 第15図において、フイルタ特性パラメータメ
モリ146は、設定しようとする各フイルタ特性
(例えば第18図のa,b,…,iの特性)ごと
に、その周波数特性を決定する係数a1〜an,b1
,…,i1〜in(各々m個のサンプル点でフイルタ
特性を表わす場合)の値を下記第3表に示すよう
に各アドレスに記憶している。
Next, a specific example of the frequency characteristic control circuit 24 shown in FIG. 1 is shown in FIG. 15. This is composed of an FIR (finite impulse response: acyclic filter), and conceptually, for example, as shown in FIG. 16, the input signal x 0 is delayed by one sampling period τ 0 by a delay element 130. Then, the multiplier 132 assigns coefficients a 1 to a 20 to the delayed output of each stage (here, an example is shown in which filter characteristics are expressed using 20 sample points), and each output a 1 x 0
~a 20 x 0 is accumulated in the adder 134 (that is, by performing a convolution operation) to give the input signal X 0 the characteristics of a low-pass filter. Filter characteristics are set by the values of coefficients a 1 to a 20 .
In the circuit shown in FIG. 15, this is achieved through program control using RAM in particular. Note that each control signal used in the circuit of FIG.
It is shown in Figure 7. In FIG. 17, the clock C1 is connected to the thirteenth clock.
The same signal as clock C1 in the figure, clock C7 is a signal that is generated m+1 times in one period τ 0 of clock C1,
Clocks C8 and C9 have the same period as clock C1 τ 0
It is a signal with In FIG. 15, the filter characteristic parameter memory 146 stores coefficients a 1 to a n that determine the frequency characteristics for each filter characteristic to be set (for example, the characteristics a, b, ..., i in FIG. 18). , b 1 ~
The values of n , .

【表】 フイルタ特性選択回路148は、フイルタ特性
パラメータメモリ146に記憶されているフイル
タ特性(a〜i)のうち2つのフイルタ特性を選
択する。 データメモリ150はm+1個のアドレスを有
し、入力信号のサンプルを古いサンプルが記憶さ
れているアドレスから順に更新して新しいサンプ
ルを書込んでいく。これにより、データメモリ1
50には、常に現時点から過去m+1個のサンプ
ルが記憶された状態となる。 カウンタ152はデータメモリ150の書込ア
ドレスを指令するもので、入力信号のサンプリン
グ周期τ0ごとに発生するクロツクC1によつてカ
ウントアツプされ、mカウントまで達したら再び
0からカウントを繰り返す。 カウンタ154は、フイルタ特性パラメータメ
モリ146およびデータメモリ150の読出アド
レスを指令するもので、入力信号のサンプリング
周期τ0の間にm+1個発生するクロツクC7によ
つて0〜mまでカウントアツプする。カウンタ1
54の値は引算器156においてカウンタ152
の値と引算され、データメモリ150にアドレス
指令として加わる。 データメモリ150は、カウンタ154の値が
0のときに発生するクロツクC8によつて書込モ
ードに切替られ、それ以外の値のとき読出モード
にある。したがつて、書込モードのときはカウン
タ152の値がそのままデータメモリ150に書
込アドレスとして加わり、そのアドレスに入力サ
ンプルが書込まれる。書込が終わるとデータメモ
リ150は読出モードに戻り、カウンタ154は
クロツクC7によつて1,2,…,mと順次カウ
ントアツプされていく。そして、引算器156に
おいてカウンタ152の値(最新データのアドレ
ス)と引算され、現時点よりも1つ前のサンプ
ル、2つ前のサンプル、……、m個前のサンプル
が周期τ0内に順次読み出されていく。 また、フイルタ特性パラメータメモリ146
は、カウンタ154の値をアドレスとして、前記
第3表に示すフイルタ特性a〜iのうちフイルタ
特性選択回路148で選択された2つのフイルタ
特性(例えばaとbの特性)の係数(a1〜an,b1
〜bn)を並行して順次出力する。 データメモリ150の出力データは2つの系統
A,Bに導かれ、乗算器158,160でフイル
タ特性パラメータメモリ146から順次出力され
るフイルタ特性の係数が付与される。データメモ
リ150からの遅延データの読出とフイルタ特性
パラメータメモリ146からのフイルタ特性の係
数の読出はカウンタ154により同期が取られて
いるので、乗算器158,160では読出されて
いる遅延データに対応した係数が付与される。 乗算器158の出力データは、加算器162と
レジスタ164からなるアキユームレータで順次
累算され、周期τ0内に得られるm個のデータの総
累算値はクロツクC1によつてレジスタ166に
ラツチされる。累算値がレジスタ166にラツチ
されると、レジスタ164はクロツクC1の反転
信号によつてリセツトされ、次に周期におおける
累算に備える。 乗算器160′の出力データについても同様に
処理される。 以上より、レジスタ166,172からは、入
力信号にフイルタ特性選択回路148で選択され
たフイルタ特性を付与したデータが出力され、こ
れらは乗算器174,176においてクロスフエ
ード用の係数x,yがそれぞれ付与される。 クロスフエード用パラメータメモリ178は、
係数x,yとして例えば下記第4表に示す値を各
アドレスに記憶している。
[Table] The filter characteristic selection circuit 148 selects two filter characteristics from among the filter characteristics (a to i) stored in the filter characteristic parameter memory 146. The data memory 150 has m+1 addresses, and updates the samples of the input signal in order from the address where the oldest samples are stored, and writes new samples. As a result, data memory 1
50 always stores m+1 past samples from the current time. The counter 152 instructs the write address of the data memory 150, and is counted up by the clock C1 generated every sampling period τ 0 of the input signal, and when the count reaches m, the count is repeated from 0 again. The counter 154 instructs the read address of the filter characteristic parameter memory 146 and the data memory 150, and counts up from 0 to m in response to m+1 clocks C7 generated during the sampling period τ 0 of the input signal. counter 1
The value of 54 is stored in the counter 152 in the subtracter 156.
is subtracted from the value of and added to the data memory 150 as an address command. The data memory 150 is switched to the write mode by the clock C8, which is generated when the value of the counter 154 is 0, and is in the read mode when the value is other than that. Therefore, in the write mode, the value of the counter 152 is directly added to the data memory 150 as a write address, and the input sample is written to that address. When the writing is completed, the data memory 150 returns to the read mode, and the counter 154 is sequentially incremented to 1, 2, . . . , m by the clock C7. Then, in the subtracter 156, the value of the counter 152 (address of the latest data) is subtracted, and one sample, two samples, ..., m samples before the current time are found within the period τ 0 . are read out sequentially. In addition, the filter characteristic parameter memory 146
uses the value of the counter 154 as an address to calculate the coefficients (a 1 to a n , b 1
~b n ) are output sequentially in parallel. The output data of the data memory 150 is led to two systems A and B, and multipliers 158 and 160 add coefficients of the filter characteristics sequentially output from the filter characteristic parameter memory 146. Since the reading of the delay data from the data memory 150 and the reading of the coefficient of the filter characteristic from the filter characteristic parameter memory 146 are synchronized by the counter 154, the multipliers 158 and 160 have a function corresponding to the delayed data being read. A coefficient is given. The output data of the multiplier 158 is sequentially accumulated in an accumulator consisting of an adder 162 and a register 164, and the total accumulated value of m data obtained within a period τ 0 is stored in the register 166 by the clock C1. Latched. Once the accumulated value is latched into register 166, register 164 is reset by the inverted signal of clock C1 to prepare for accumulation in the next period. The output data of multiplier 160' is similarly processed. As described above, the registers 166 and 172 output data in which the filter characteristics selected by the filter characteristic selection circuit 148 are added to the input signals, and these data are provided with crossfade coefficients x and y in the multipliers 174 and 176, respectively. be done. The crossfade parameter memory 178 is
For example, values shown in Table 4 below are stored as coefficients x and y at each address.

〔発明の効果〕〔Effect of the invention〕

以上説明したように、この発明によれば、残響
信号の帯域制限に合せて残響信号を作成するサン
プリング周期を長くするようにしたので、残響信
号を作成するためのたたみ込み点数を増やすこと
ができ、より自然な残響音を作成することができ
る。
As explained above, according to the present invention, the sampling period for creating the reverberant signal is lengthened in accordance with the band limit of the reverberant signal, so the number of convolution points for creating the reverberant signal can be increased. , can create a more natural reverberant sound.

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

第1図は、この発明の一実施例を示すブロツク
図である。第2図は、ある音響空間におけるイン
パルス応答を示す図である。第3図は、第2図の
インパルス応答をパラメータとした残響付加装置
の概念図である。第4図は、第3図の装置の具体
例を示すブロツク図である。第5図は、従来の適
応形のたたみ込みで選択されるパラメータの領域
を示す図である。第6図は、残響信号にフイルタ
特性を付与する構成を示すブロツク図である。第
7図は、第6図の回路により残響信号のフイルタ
特性を順次変えていく様子を示すタイムチヤート
である。第8図は、第7図の各フイルタ特性を示
す図である。第9図は、この発明によるフイルタ
特性の周波数帯域と残響信号作成のサンプリング
周期の関係の一例を示す図である。第10図は、
この発明によりサンプリング周期の変化とともに
たたみ込み点数が変化する様子の一例を示す図で
ある。第11図は、この発明により選択されるパ
ラメータの領域の一例を示す図である。第12図
は、第1図の残響付加回路22の具体例を示すブ
ロツク図である。第13図a,bは、それぞれパ
ラメータメモリの記憶方法を説明するための図で
ある。第14図は、第12図の回路の動作を示す
タイムチヤートである。第15図は、非巡回形フ
イルタを用いて構成した第1図の周波数特性制御
回路24の構成例を示すブロツク図である。第1
6図は、非巡回形フイルタの原理を示す図であ
る。第17図は、第15図の回路の動作を示すタ
イムチヤートである。第18図は、第19図の動
作において使用される各フイルタ特性を示す図で
ある。第19図は、第15図の周波数特性制御回
路24を用いて、減衰する残響信号に対して順次
フイルタ特性を変化させていく状態を示すタイム
チヤートである。 22…残響付加回路、24…周波数特性調整回
路。
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 diagram showing a region of parameters selected in conventional adaptive convolution. FIG. 6 is a block diagram showing a configuration for imparting filter characteristics to a reverberation signal. FIG. 7 is a time chart showing how the filter characteristics of the reverberation signal are sequentially changed by the circuit shown in FIG. FIG. 8 is a diagram showing the characteristics of each filter in FIG. 7. FIG. 9 is a diagram showing an example of the relationship between the frequency band of filter characteristics and the sampling period for creating a reverberation signal according to the present invention. Figure 10 shows
FIG. 3 is a diagram illustrating an example of how the number of convolution points changes as the sampling period changes according to the present invention. FIG. 11 is a diagram showing an example of a region of parameters selected according to the present invention. FIG. 12 is a block diagram showing a specific example of the reverberation adding circuit 22 shown in FIG. FIGS. 13a and 13b are diagrams for explaining the storage method of the parameter memory, respectively. FIG. 14 is a time chart showing the operation of the circuit of FIG. 12. FIG. 15 is a block diagram showing an example of the structure of the frequency characteristic control circuit 24 of FIG. 1, which is constructed using an acyclic filter. 1st
FIG. 6 is a diagram showing the principle of an acyclic filter. FIG. 17 is a time chart showing the operation of the circuit of FIG. 15. FIG. 18 is a diagram showing characteristics of each filter used in the operation of FIG. 19. FIG. 19 is a time chart showing a state in which the frequency characteristic control circuit 24 of FIG. 15 is used to sequentially change the filter characteristics with respect to the attenuating reverberant signal. 22... Reverberation addition circuit, 24... Frequency characteristic adjustment circuit.

Claims (1)

【特許請求の範囲】 1 インパルス応答を係数パラメータとして、そ
の一部を利用してたたみ込み演算を行ない入力信
号の残響信号を作成する手段と、 前記残響信号を帯域制限する手段と、 前記帯域制限に合せて、前記残響信号の1つの
サンプルを作成するための周期を長くしてたたみ
込み演算点数を増加する手段と を具備する残響付加装置。
[Claims] 1. Means for creating a reverberation signal of an input signal by performing a convolution operation using a part of the impulse response as a coefficient parameter, means for band-limiting the reverberation signal, and the band-limiting. and means for increasing the number of convolution calculation points by lengthening the cycle for creating one sample of the reverberation signal.
JP60147974A 1985-07-05 1985-07-05 Echo adder Granted JPS628198A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60147974A JPS628198A (en) 1985-07-05 1985-07-05 Echo adder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60147974A JPS628198A (en) 1985-07-05 1985-07-05 Echo adder

Publications (2)

Publication Number Publication Date
JPS628198A JPS628198A (en) 1987-01-16
JPH0262877B2 true JPH0262877B2 (en) 1990-12-26

Family

ID=15442308

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60147974A Granted JPS628198A (en) 1985-07-05 1985-07-05 Echo adder

Country Status (1)

Country Link
JP (1) JPS628198A (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
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
JPS628198A (en) 1987-01-16

Similar Documents

Publication Publication Date Title
US4706291A (en) Reverberation imparting device
US4803731A (en) Reverbation imparting device
US5081604A (en) Finite impulse response (fir) filter using a plurality of cascaded digital signal processors (dsps)
US20030169887A1 (en) Reverberation generating apparatus with bi-stage convolution of impulse response waveform
EP0979463B1 (en) System and method for generating fractional length delay lines in a digital signal processing system
JP2959361B2 (en) Reverberation device
JP4290783B2 (en) Device to reduce data rate
US5386529A (en) Digital signal processor for use in sound quality treatment by filtering
GB2261985A (en) Pitch control system
JP2001500278A (en) Digital processing system and method for generating music legato using a multi-tap delay line using a crossfade device
JPH0262877B2 (en)
US5703956A (en) External memory control circuit for sound field processing digital signal processor
JP2003263178A (en) Reverberator, method of reverberation, program, and recording medium
JPH0262876B2 (en)
JP2634561B2 (en) Variable delay circuit
JPH0547840B2 (en)
JPH0410078B2 (en)
JPH0410079B2 (en)
JPH08292764A (en) Signal changeover device
JPH053000B2 (en)
JPS583238B2 (en) electronic musical instruments
JP2008065232A (en) Digital signal processing apparatus
JP4263869B2 (en) Reverberation imparting device, reverberation imparting method, program, and recording medium
JP2631662B2 (en) Ultrasonic wave receiving phasing circuit
JP3154759B2 (en) Method and apparatus for delaying operation data of digital filter

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees