JP3353516B2 - 楽音合成装置 - Google Patents

楽音合成装置

Info

Publication number
JP3353516B2
JP3353516B2 JP00607695A JP607695A JP3353516B2 JP 3353516 B2 JP3353516 B2 JP 3353516B2 JP 00607695 A JP00607695 A JP 00607695A JP 607695 A JP607695 A JP 607695A JP 3353516 B2 JP3353516 B2 JP 3353516B2
Authority
JP
Japan
Prior art keywords
pitch
delay
pass filter
tone
range
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP00607695A
Other languages
English (en)
Other versions
JPH08194485A (ja
Inventor
洋一郎 大貝
岩男 東
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP00607695A priority Critical patent/JP3353516B2/ja
Publication of JPH08194485A publication Critical patent/JPH08194485A/ja
Application granted granted Critical
Publication of JP3353516B2 publication Critical patent/JP3353516B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、例えば、打楽器音等の
減衰音を合成する楽音合成装置に関する。
【0002】
【従来の技術】近年、自然楽器の発音メカニズムをシミ
ュレートしたモデルを動作させ、これにより自然楽器の
楽音を合成する楽音合成装置が各種開発されている。こ
の種の楽音合成装置の内、打楽器音等の減衰音を合成す
るものとして、図9に示すように、加算器1、遅延回路
2およびフィルタ3を閉ループ状に接続した構成が知ら
れている。なお、こうした構成は、「遅延フィードバッ
ク方式」と呼ばれている。
【0003】この図において、遅延回路2は、シフトレ
ジスタによって構成されており、該シフトレジスタは、
加算器1から供給されるディジタル信号のビット数に対
応した段数のフリップフロップを備えている。各フリッ
プフロップには、サンプリング周期τs毎にクロックが
供給されるようになっている。すなわち、遅延回路2に
よる遅延時間τpは、サンプリング周期τsにシフトレ
ジスタ段数Nを乗じた時間Nτsに相当する。フィルタ
3は、閉ループ内を循環する信号に所望の減衰特性を付
与するものである。
【0004】このような楽音合成装置では、例えば、ノ
イズ信号のような多くの周波数成分を含んだアナログ信
号を、サンプリング周期τs毎にPCM符号化し、この
結果得られた時系列ディジタル信号を入力信号とする。
この入力信号は、加算器1に入力された後、遅延回路2
を介してフィルタ3に供給され、再び加算器1にフィー
ドバックされて閉ループ内を循環する。
【0005】ここで、フィルタ3の位相遅れを無視し、
入力信号が閉ループを一巡するのに要する時間は、遅延
時間τpに等しいものとする。この場合、上記閉ループ
の利得周波数特性は、基本周波数f1=1/τpの整数
倍の周波数において極大点を持つ特性となる。閉ループ
のゲインは、「1」より僅かに小さい値とされるため、
該ループを循環する信号は、次第に減衰する。そして、
この減衰過程で加算器1の出力を抽出し、これをD/A
変換すれば、基本波およびこれの整数倍の周波数を持つ
高調波を含む減衰信号となる。つまり、上記構成によれ
ば、実際の打弦時に発生する楽音と同様に、基本波とそ
の高調波とからなる信号が励起され、かつ、その振幅が
時間経過に伴って徐々に減衰する楽音信号となる訳であ
る。
【0006】ところで、図9に示す構成の装置において
は、遅延時間τpを上述したサンプリグ周期τsの整数
倍にしか設定することができない。このため、遅延時間
τpをサンプリング周期τsの整数倍からずれた値する
必要がある場合には、図10に示すように、遅延回路2
とフィルタ3との間にオールパスフィルタ4を介挿す
る。この図に示すオールパスフィルタ4は、1次のディ
ジタルフィルタであり、加算器41,42と、乗算器4
3,44と、遅延回路45とから構成されている。な
お、この遅延回路45は、前述した遅延回路2と同様に
構成されており、サンプリング周期τs毎にクロックが
供給される。
【0007】このオールパスフィルタ4では、加算器4
1によって遅延回路2の出力信号に乗算器44の信号が
加算される。加算器41の出力は、遅延回路45を介し
て加算器42に入力されると共に、乗算器43によって
乗算係数−αが乗算されて加算器42に入力される。ま
た、上記遅延回路45の出力は、乗算器44によって乗
算係数αが乗算されて加算器41に入力される。そし
て、加算器42が遅延回路45の出力と乗算器43の出
力とを加算し、その結果をフィルタ3に供給するように
なっている。なお、上述した乗算器43,44の乗算係
数「α」,「−α」としては、−1〜1の間の値が用い
られる。
【0008】上記構成によるオールパスフィルタ4は、
次式(1)に示す伝達関数H(z)で表現される。すな
わち、 H(z)=α+z-1/1+αz-1 …(1) ここで、上記(1)式で表現されるオールパスフィルタ
4の周波数特性F(ω)を求めると、周知のように、
(1)式における「z」をexp(−jωτs)に置き
換えることで、次式(2)で表わされる。 F(ω)=α+exp(−jωτs)/1+α・exp(−jωτs)…(2)
【0009】次に、オールパスフィルタ4の利得周波数
特性G(ω)は、上記(2)式の絶対値に等しくなるの
で、G(ω)=|F(ω)|=1となる。これにより、
オールパスフィルタ4の利得が、あらゆる周波数におい
て「1」となり、「オールパス」と呼ばれる所以となっ
ている。また、該フィルタ4の位相遅延P(ω)は、角
周波数ωがナイキスト角周波数ωn=2πfs/2(f
s:サンプリング周波数)に比べて十分低く、しかも位
相角ωτsが「0」に近い場合、次式(3)の近似式で
表現される。すなわち、 P(ω)≒(1−α)ωτs/(1+α) …(3)
【0010】そして、このオールパスフィルタ4の等価
的な遅延時間τaは、次式(4)の関係で表わされる。 τa=P(ω)/ω …(4) したがって、この(4)式と上記(3)式とから近似的
な遅延時間τaを求めると、τa≒(1−α)τs/
(1+α)となる。すなわち、オールパスフィルタ4
は、前述した乗算係数αを適宜設定することにより、自
己の遅延時間τaを調整することが可能になっている。
但し、τaがαに対してほぼリニアに変化すると、見做
せるτaの変化範囲は限られており、せいぜい0≦τa
≦2τsである。結局、図10に示す構成要素1〜4か
らなる閉ループにおいては、全遅延時間τ=τp+τa
に応じた共振特性となるので、オールパスフィルタ4の
乗算係数αを変化させると、閉ループの共振周波数が変
化し、該閉ループ内を循環する減衰音の音高が制御され
る。
【0011】
【発明が解決しようとする課題】ところで、上述した従
来の楽音合成装置においては、オールパスフィルタ4の
乗算係数αを変化させて閉ループ内の遅延量を変化させ
て音高を制御することが可能である反面、オールパスフ
ィルタ4の乗算係数αを大きく変化させた場合、閉ルー
プ全体の遅延特性も大きく変化してしまうため、必要以
上に高調波を含んだ非調和な楽音が合成されてしまい、
結果的に楽器として好ましいものでは無くなる虞があ
る。
【0012】すなわち、オールパスフィルタ4の乗算係
数αを制御して遅延量を変化させる限度としては、遅延
段数にしておよそ0〜2段分までの範囲しか直線性良く
制御することができない。また、オールパスフィルタ出
力に不連続が生じないように遅延回路2の段数とオール
パスフィルタ4の係数αとを制御するには複雑な処理が
必要になる。オールパスフィルタ4の乗算係数αを制御
して遅延量を変化させる場合、高音域では、そこそこの
音高変化量を得ることができるものの、低音域では1段
のオールパスフィルタ4だけでは殆ど音高変化を得るこ
とができない。また、遅延回路2の遅延段数を重み付け
補間して遅延時間τpを制御する態様では、広い範囲で
音高制御が可能になる反面、段数補間する構成自体がロ
ーパスフィルタを形成することから、高音域では減衰時
間が一定でなくなる不都合もある。
【0013】結局、オールパスフィルタ4を備えた従来
の楽音合成装置においては、全音域で減衰時間に乱れを
生じさせず滑らかに音高制御することができないという
問題がある。そこで、本発明は上述した事情に鑑みてな
されたもので、全音域で減衰時間に乱れを生じさせずに
滑らかに音高制御することができる楽音合成装置を提供
することを目的としている。
【0014】
【課題を解決するための手段】上記目的を達成するた
め、請求項1に記載の発明では、入力信号をサンプリン
グ周期に応じて整数段遅延して出力する遅延手段と、こ
の遅延手段の出力を小数段遅延して出力するオールパス
フィルタとを備え、該オールパスフィルタの出力を前記
入力信号とする遅延フィードバックループを形成する楽
音合成装置において、前記ループ内に介挿され、当該遅
延手段の出力を補間する補間手段と、発音音域を高域と
低域とに分割する音域分割点を設定し、発音すべき音高
がこの音域分割点を境界に高域側であるか低域側である
かを判別する判別手段と、前記判別手段が高域側と判別
した場合、前記遅延手段と前記オールパスフィルタとの
総遅延量に応じて音高制御する第1の音高制御手段と、
前記判別手段が低域側と判別した場合、前記遅延手段と
前記補間手段との総遅延量に応じて音高制御する第2の
音高制御手段とを具備することを特徴としている。
【0015】また、請求項2に記載の発明では、入力信
号を整数段遅延する遅延手段と、該遅延手段の出力を補
間する補間手段と、入力信号の少数段遅延が可能な第1
のオールパスフィルタと、入力信号の小数段遅延が可能
なオールパスフィルタを複数縦続接続した第2のオール
パスフィルタとを有し、前記遅延手段、前記第1のオー
ルパスフィルタおよび前記第2のオールパスフィルタを
閉ループ接続した閉ループ手段と、楽音の発生と音高の
指定の操作を受ける楽音指定手段と、楽音の発生中に音
高を変更するための操作を受ける音高制御操作子と、前
記閉ループ手段に励振信号を供給する励振信号発生手段
と、発音音域を高域と低域とに分割する音域分割点を設
定し、発音すべき音高がこの音域分割点を境界に高域側
であるか低域側であるかを判別する判別手段と、前記楽
音指定手段の操作に基づき楽音の発生と音高が決定され
ると、該音高に対応する前記閉ループ手段全体の遅延量
と前記第2のオールパスフィルタの遅延量とから、前記
遅延手段の遅延量および前記第1のオールパスフィルタ
の遅延量を定め、かつ前記閉ループ手段に励振信号を供
給し、楽音の発生中に前記音高制御操作子により音高変
更の操作がなされた場合、変更された音高が前記判別手
段により高音域側であると判別されると、前記遅延手段
の遅延量と前記第2のオールパスフィルタを構成する各
オールパスフィルタのそれぞれの係数を制御して得られ
る遅延量とを、前記音高制御操作子により変更された音
高に対応するように制御し、他方、変更された音高が前
記判別手段により低音域側であると判別されると、前記
遅延手段の遅延量と前記補間手段の係数を制御して得ら
れる遅延量とを、前記音高制御操作子により変更された
音高に対応するように制御する音高制御手段とを具備す
ることを特徴としている。
【0016】
【作用】請求項1に記載の発明によれば、発音すべき音
高が音域分割点より高域側にある場合、遅延手段と前記
オールパスフィルタとの総遅延量に応じて音高制御し、
一方、低域側にある場合には、遅延手段と前記補間手段
との総遅延量に応じて音高制御する。また、請求項2に
記載の発明によれば、入力信号を整数段遅延する遅延手
段と、この遅延手段の出力を補間する補間手段と、この
補間手段の出力の小数段遅延が可能な第1および第2の
オールパスフィルタとを有する閉ループ手段に対し、励
振信号を供給する。そして、指定された音高に対応する
閉ループ手段全体の遅延量と第2のオールパスフィルタ
の遅延量とから、遅延手段の遅延量および第1のオール
パスフィルタの遅延量を定めるとともに、閉ループ手段
に励振信号を供給する。さらに、楽音の発生中に音高制
御操作子により音高変更の操作がなされ、このとき変更
された音高が高音域側である場合、遅延手段の遅延量と
第2のオールパスフィルタを構成する各オールパスフィ
ルタのそれぞれの係数を制御して得られる遅延量とを、
音高制御操作子により変更された音高に対応するように
制御し、他方、変更された音高が低音域側である場合、
遅延手段の遅延量と補間手段の係数を制御して得られる
遅延量とを、音高制御操作子により変更された音高に対
応するように制御している。この結果、楽音の発生中に
音高変更の操作がなされても、全音域で減衰時間に乱れ
を生じさせずに滑らかに音高制御することが可能にな
る。
【0017】
【実施例】以下、図面を参照してこの発明の実施例につ
いて説明する。 A.全体構成 図1はこの発明による一実施例の全体構成を示すブロッ
ク図である。この図において、10は装置各部を制御す
るCPUであり、その動作については後述する。11
は、CPU10によって読み出される各種制御プログラ
ム、および後述するDSP15において用いられる各種
マイクロプログラムの他、音色データが記憶されている
ROMである。12はCPU10のワークエリアとして
用いられ、各種レジスタ値や演算結果等が一時記憶され
るRAMである。
【0018】13は、各種パネルスイッチあるいは補助
操作子が配設される操作部である。この操作部13に
は、例えば、後述するオールパスフィルタ係数cあるい
はローパスフィルタ係数等を指定するスイッチや、音色
を指定するスイッチ等の設定スイッチの他、発生楽音の
音高を連続的に可変制御するピッチベンダ等の補助操作
子が設けられている。なお、操作部13は、上記設定ス
イッチあるいは補助操作子の操作に応じた操作情報を生
成し、これをシステムバスを介してCPU10に供給す
る。14は演奏操作に応じてキーオン/キーオフ、キー
コードKCあるいはタッチ等の演奏情報を発生する演奏
操作子である。
【0019】15は楽音合成部として機能するディジタ
ルシグナルプロセッサ(以下、DSPと略す)であり、
構成要素15a〜15fから構成される。15aはマイ
クロプログラムRAMであり、CPU10によってRA
M12から読み出されたマイクロプログラムがストアさ
れる。15bは第1パラメータデータRAMであり、C
PU10によってROM11から読み出される音色デー
タ等の楽音パラメータがストアされる。15cは後述す
るオールパス係数α,γや補間係数β等、楽音合成時に
経時変化するパラメータがCPU10によって書き込ま
れる第2パラメータデータRAMである。なお、これら
係数α,γ,βの意味するところについては追って説明
する。
【0020】15dはデータ補間部であり、第2パラメ
ータデータRAM15cから読み出されるオールパス係
数α,γが急激に変化しないように補間演算して出力す
る。15eは演算処理部である。この演算処理部15e
は、マイクロプログラム15aから読み込んだマイクロ
プログラムに基づき、上述した第1および第2パラメー
タに従って「遅延フィードバック方式」による楽音合成
のための演算処理を行い、楽音出力WDを発生する。1
5fは演算処理部15eにおいてなされる演算処理結果
等を一時記憶するデータレジスタである。16は、DS
P15が実行する楽音合成処理に必要な遅延時間を与え
る遅延RAMである。17はD/A変換器であり、DS
P15から供給される楽音出力WDをアナログ信号に変
換し、これを楽音信号WとしてスピーカSPより発音さ
せる。
【0021】次に、図2は、上述したDSP15の演算
処理によって実現される楽音合成モデルを示すブロック
図であり、図10に示す従来例と共通する部分には、同
一の番号を付し、その説明を省略する。この図に示す構
成が従来例と異なる点は、キーオン時の発音ピッチに対
応した小数段遅延を生成するオールパスフィルタ4−1
とピッチベンド操作に対応した小数段遅延を生成するオ
ールパスフィルタ4−2とを直列接続すると共に、オー
ルパスフィルタ4−1の前段に整数段遅延を平滑化する
補間器21を設け、さらに、係数乗算器21を加算器1
とローパスフィルタ3との間に設けて閉ループゲインを
制御する構成にしたことにある。
【0022】なお、ここで言う整数段遅延とは、サンプ
リングクロックφsに対応した遅延であり、シフトレジ
スタの段数に相当する。一方、小数段遅延とは、サンプ
リングクロックφsより小さい遅延量であり、シフトレ
ジスタ1段分以下の遅延を表わす。なお、以降の説明に
おいて、整数段遅延を「Di」、小数段遅延を「Df」
と表記する。
【0023】図2において、励振波形発生部20は、キ
ーオン信号KONに応じてノイズ信号を発生して閉ルー
プを励振する。なお、この発生部20に入力される信号
φsはシステムクロックである。遅延回路2は、遅延制
御信号Nに対応してN段の整数段遅延Diを設定する。
補間器21は、遅延レジスタ21a、係数乗算器21
b,21cおよび加算器21dから構成され、係数乗算
器21b,21cに付与される係数βおよび(1−β)
の値に応じて前段の遅延変化を平滑化する。オールパス
フィルタ4−1は、キーオン時の発音ピッチに対応して
付与されるオールパス係数αに従った小数段遅延を与え
る。
【0024】オールパスフィルタ4−2は、APF
APF10をカスケード接続したものであり、ピッチベン
ド操作量に対応した小数段遅延を発生するよう各APF
1〜APF10にオールパス係数γが付与される。ローパ
スフィルタ3は、例えば、FIR型のディジタルフィル
タで構成されおり、遅延時間を一定値Dとしたまま、供
給されるフィルタ係数LCに対応するカットオフ周波数
でローパスフィルタリングを施す。係数乗算器22は制
御信号Gに応じて閉ループゲインを調整する。
【0025】上記構成において、励振波形発生部20か
ら出力されるノイズ信号は、遅延回路2で整数段遅延さ
れた後、補間器21にて小数段遅延が施された後、オー
ルパスフィルタ4−1,4−2において順次小数段遅延
される。こうして整数段/小数段遅延された信号は、ロ
ーパスフィルタ3を介して音色が調整され、続いて係数
乗算器21によってループゲインが調整された後、再び
加算器1を経て遅延される。このような閉ループにおい
て、信号が循環すると、ループ全体の遅延量に応じた音
高の減衰音が合成される。
【0026】つまり、閉ループを循環する楽音信号の音
高は、遅延回路2の遅延時間と、補間器の遅延時間と、
オールパスフィルタ4−1,4−2の遅延時間と、ロー
パスフィルタ3の遅延時間との和の逆数となる。このよ
うな基本動作は、前述した従来例と同一であるが、ここ
で本願特有な点は、後述するように、発音音域別にピッ
チ制御させることにある。
【0027】B.実施例の概略動作 次に、上記構成による実施例の概略動作について図3を
参照して説明する。まず、この実施例に電源が投入され
ると、CPU10はROM11から制御プログラムを読
み出し、図3に示すメインルーチンを起動する。メイン
ルーチンが起動されると、CPU10の処理はステップ
Sa1に進む。ステップSa1では、各種レジスタを初
期値にリセットすると共に、DSP15に対して所定の
マイクロプログラムを取込むように指示する。なお、こ
のステップSa1において、前述した係数α、βおよび
γはそれぞれゼロリセットされる。
【0028】こうしてステップSa1において、イニシ
ャライズがなされると、CPU10の処理はステップS
a2に進む。ステップSa2では、操作部13および演
奏操作子14の操作状態を検出するため、各キーや設定
スイッチをスキャンし、それぞれの設定状態に応じたフ
ラグをレジスタにセットする。次いで、ステップSa3
に進むと、ボイス処理と呼ばれる音色選択設定処理がな
される。このボイス処理では、上記ステップSa2にお
いて検出した音色スイッチの設定状態に対応した音色デ
ータを、ROM11から読み出し、これを第1パラメー
タデータRAM15bの所定エリアにストアしたり、R
OM11から読み出したオールパス係数α,γや補間係
数βの初期値を第2パラメータデータRAM15cにス
トアする。これにより、DSP15側では楽音合成のた
めの準備が完了する。
【0029】次に、ステップSa4に進むと、キーオン
イベントが発生した場合、演奏操作に応じて生成される
キーコードKCに対応した楽音の発生を指示する。この
キーオン処理の詳細については後述する。次いで、次の
ステップSa5に進むと、後述するキーオフルーチンに
基づき、キーオフイベントが発生した場合、キーオンと
共に生成した楽音を所定のレートで減衰消音させるキー
オフパラメータを生成し、次のステップSa6に進む。
ステップSa6では、ピッチベンドホイールの操作量m
に応じて発音ピッチを連続的に可変制御するピッチベン
ド処理を実行し、続いて、ステップSa7では、例え
ば、リバーブやディレイ等の効果音を付与する処理が行
われ。この後、CPU10の処理は、再びステップSa
2に戻り、上述した動作を繰り返す。
【0030】C.各種ルーチンの動作 ここでは、上記メインルーチンにおいてコールされる各
種ルーチンの動作と、CPU10の指示の下に減衰音を
楽音合成するDSP15の動作とについて順次説明す
る。 キーオン処理ルーチンの動作 CPU10の処理が前述したステップSa4に進むと、
図4に示すルーチンが起動され、ステップSb1に進
む。まず、ステップSb1では、キーオンイベントが発
生したか否かを判断する。ここで、キーオンイベントが
発生していない場合には、判断結果が「NO」となり、
メインルーチンへ復帰する。一方、演奏者によって押鍵
操作がなされ、これによりキーオンイベントが発生する
と、判断結果が「YES」となり、次のステップSb2
に進む。
【0031】ステップSb2では、押鍵された鍵のキー
コードKCをノート周波数Fに変換し、次のステップS
b3に処理を進める。ステップSb3に進むと、CPU
10は、fs/F(fs:サンプリング周波数、F:周
波数ナンバ)の関係から閉ループ全体の遅延時間Dsを
算出する。そして、この遅延時間Dsの整数部が前述し
た整数段遅延Diとなり、小数部が小数段遅延Dfとな
る。次いで、ステップSb4に進むと、APF1〜AP
10から形成されるオールパスフィルタ4−2の初期遅
延量を整数段遅延Diから減算し、遅延段数Nを算出す
る。これにより、遅延回路2の遅延段数が定まる。
【0032】続いて、ステップSb5に進むと、小数段
遅延Dfに対応するオールパスフィルタ4−1のオール
パス係数αを次式(5)に基づいて算出する。 α=(1−Df)/(1+Df) …(5) この後、CPU10はステップSb6に処理を進め、以
上のようにして求めた遅延段数N、オールパス係数αや
キーオン信号KON等の楽音パラメータをDSP15側
へ送出する。なお、遅延段数Nおよびオールパス係数α
などの経時変化する楽音パラメータは、第2パラメータ
データRAM15c(図1参照)にストアされる。この
結果、DSP15は楽音発生に必要なパラメータが与え
られ、後述する楽音合成動作にしたがって楽音を発生す
ることになる。
【0033】キーオフ処理ルーチンの動作 CPU10の処理が前述したステップSa5に進むと、
図5に示すルーチンが起動され、ステップSc1に進
む。ステップSc1では、キーオフイベントが発生した
か否かを判断する。ここで、キーオフイベントでない場
合には、判断結果が「NO」となり、このルーチンを完
了してメインルーチンへ復帰する。一方、発生したイベ
ントがキーオフイベントであると、ここでの判断結果が
「YES」となり、次のステップSc2に進む。ステッ
プSd2に進むと、CPU10は、エンベロープジェネ
レータを所定のレートでダンプさせるための各種キーオ
フパラメータを生成し、これをDSP15側へ送出す
る。これにより、音源となるDSP15が発音中にあっ
た楽音を所定レートで減衰させた後に消音させる。
【0034】ピッチベンド処理ルーチンの動作 次に、例えば、押鍵された鍵のキーコードKCに対応す
る音高で楽音が発音されている最中に、前述したピッチ
ベンダが操作されたとする。そうすると、図6に示すピ
ッチベンド処理ルーチンが起動し、ステップSd1を実
行する。なお、このピッチベンダとは、発生楽音の音高
を滑らかに変化させる補助操作子である。まず、ステッ
プSd1に進むと、演奏操作としてピッチベンダホイー
ルに加えられる操作量mが前回と同一であるか否か、つ
まり、操作されたか否かを判断する。ここで、操作量m
に変化が無い場合、操作されていないと見做して判断結
果が「YES」となり、このルーチンを完了し、前述し
たメインルーチン(図3参照)へ復帰する。
【0035】一方、操作量mに変化があった場合には、
判断結果が「NO」となり、次のステップSd2に進
む。ステップSd2では、検出した操作量m(−1〜1
の値)と、前述したノート周波数FとからF’=F・e
xp(s・m)で表わされる関係式に基づき、新たなノ
ート周波数F’を算出する。なお、上記式におけるsは
ピッチベンダの感度パラメータである。
【0036】次いで、ステップSd3に進むと、こうし
て求めた新たなノート周波数F’に対応する閉ループ全
体の遅延量Dsを求め、さらに、この遅延量Dsから前
述のステップSb3と同様にして、遅延量Dsの整数部
遅延Diと小数部遅延Dfとを求める。続いて、ステッ
プSd4では、求めた整数部遅延Diからオールパスフ
ィルタ4−2の初期遅延量、すなわち、APF1〜AP
10の総遅延量として「10」段分を減算し、その値を
遅延回路2の遅延段数Nとしてレジスタに格納する。
【0037】次に、ステップSd5に進むと、CPU1
0は、押鍵された鍵のキーコードKCが予め設定された
鍵域分割鍵BPより低い音程関係にあるか否かを判断す
る。ここで、鍵域分割鍵BPより低い音程関係にあれ
ば、判断結果は「YES」となり、ステップSd6に進
み、上記ステップSd3において求めた小数部遅延Df
を補間係数βとする。そして、次のステップSd7に進
むと、この場合の遅延段数Nと補間係数βとをDSP1
5側へ送出する。これにより、鍵域分割鍵BPより低い
音程関係にある鍵が発音中にある場合のピッチベンダ操
作量mに対応した音高制御がなされる。
【0038】一方、押鍵された鍵のキーコードKCが予
め設定された鍵域分割鍵BPより高い音程関係にある場
合には、上記ステップSd5の判断結果が「NO」とな
り、ステップSd8に処理を進める。ステップSd8で
は、ステップSd3において求めた小数部遅延DfをA
PF1〜APF10の個数10で除算して1個当りの遅延
量(1+Df/10)を算出し、これからさらに、前述
した(5)式に基づいて((5)式のDfに(1+Df
/10)を代入すれば良い)APF1〜APF1 0の各オ
ールパス係数γを算出する。続いて、次のステップSd
9に進むと、この場合の遅延段数Nとオールパス係数γ
とをDSP15側へ送出する。これにより、鍵域分割鍵
BPより高い音程関係にある鍵が発音中にある場合のピ
ッチベンダ操作量mに対応した音高制御がなされる。
【0039】DSP15の動作 次に、マイクロプログラムに従って楽音合成するDSP
15の動作について、図7を参照して説明する。まず、
前述したように、イニシャライズ時にCPU10からマ
イクロプログラムの読み込みを指示されると、DSP1
5は該プログラムをマイクロプログラムRAM15aか
らロードして図7に示すルーチンを起動する。これによ
り、DSP15の処理がステップSe1に進む。ステッ
プSe1では、キーオンイベントが発生したか否かを検
出する。ここで、キーオンイベントを検出すると、判断
結果は「YES」となり、ステップSe2に処理を進め
る。
【0040】ステップSe2では、押鍵された鍵のキー
コードKCに対応するピッチで発音すべく発音設定処理
を行う。この発音設定処理とは、前述したキーオン処理
ルーチン、あるいはピッチベンド処理ルーチンにおいて
生成される整数段遅延N、オールパス係数α,γあるい
は補間係数βに応じて楽音合成アルゴリズムを形成する
処理を言う。次いで、この後、ステップSe3に進み、
楽音合成アルゴリズムに基づき楽音出力WDを発生す
る。この楽音合成アルゴリズムとは、次のような動作を
行う。
【0041】すなわち、例えば、パワースペクトル密度
が一定なホワイトノイズ信号による初期励振波形を発生
して閉ループ内に注入すると共に、CPU10側から転
送された整数段遅延Nに基づき遅延回路2の遅延段数を
セットし、該ノイズ信号を整数段遅延させる。そして、
遅延回路2の出力を小数部Df分遅延させるため、CP
U10から与えられるオールパスフィルタ係数αをオー
ルパスフィルタ4−1、あるいはオールパスフィルタ4
−2に係数γを設定すると共に、音高制御態様に応じて
補間器21に補間係数βをセットする。
【0042】次いで、設定されたオールパスフィルタ4
に基づき小数段の遅延を施すフィルタリングや、設定さ
れた音色番号に応じたフィルタ係数LCが付与されるロ
ーパスフィルタ3によるローパスフィルタリングを施
し、この結果に対してループゲインを乗算する。以後、
こうした過程を繰り返し、閉ループ内を循環させること
により所望のピッチによる楽音が形成される。
【0043】なお、CPU10から供給されるイベント
がキーオフイベントであると、ステップSe4を介して
ステップSe5に進み、前述したキーオフ処理ルーチン
において生成される各種キーオフパラメータに応じてエ
ンベロープジェネレータを所定のレートでダンプさせる
等の発音終了処理がなされる。
【0044】このように、上述した実施例によれば、複
数のオールパスフィルタ4−1,4−2と、オールパス
フィルタ4−1と遅延回路2との間に補間器21を設け
ておき、低音域側と高音域側とに音域分割する鍵域分割
鍵BPを境界とし、この鍵域分割鍵BPより高い音高を
ピッチベンダ等により連続して変化させる場合には、遅
延回路2でN段遅延させた後にオールパスフィルタ4−
2を形成するAPF1〜APF10で順次小数段遅延させ
てピッチ制御する。すなわち、APF1〜APF1 0は係
数の変化に対して直線性よく遅延量を制御できる範囲が
限られている(遅延段数換算で「1段」近傍)。そのた
め、整数遅延Diの内、10段をAPF1〜APF10
実現しておいて、小数遅延Dfは10個のAPF1〜A
PF10にDf/nずつ分配するようにしている。一方、
鍵域分割鍵BPより低い音高をピッチベンダ等により連
続して変化させる場合には、補間器21が整数部遅延と
小数部遅延とを滑らかに補間してピッチ制御する。これ
により、全音域で減衰時間に乱れを生じさせず滑らかに
音高制御することが可能になる訳である。
【0045】D.変形例 次に、本発明の変形例について図8を参照して説明す
る。図8は、周波数ナンバに対応して楽音合成するDS
P15の機能モデルを示すブロック図であり、図2に示
す実施例と共通する要素には、同一の番号を付し、その
説明を省略する。この図において、50は周波数ナンバ
アキュームレータであり、位相情報である周波数ナンバ
FNOを累算し、その整数部INTおよび小数部FRA
C、累算値整数部の繰り上がり信号CKを発生する。な
お、この周波数ナンバアキュームレータ50は、キーオ
ン信号KONに同期したキーオンパルスKOPに応じて
累算値がリセットされる。51,52はそれぞれ遅延素
子、乗算器および加算器からなる補間器である。
【0046】上記構成によれば、DSP15のマイクロ
プログラムによって実現される図8の構成自体は周波数
ナンバFNOの整数部累算値の繰り上がり信号CK、す
なわち、音高に対応したクロック信号に従って動作する
から、音高に応じて合成される楽音のサンプリング周波
数が変化することになる。こうした場合、DSP15か
ら出力される楽音データWDは、一定サンプリング周波
数φsで出力されるので、補間器51,52がそれぞれ
閉ループの出力を、周波数ナンバFNO累算値の小数部
FRACに応じて直線補間し、一定サンプリング周波数
φsに対応した滑らかな楽音データWDを出力するよう
になっている。そして、このような演算サンプリングタ
イミング態様のDSPに前述した本発明によるピッチ制
御を適用すれば、周波数ナンバ方式による楽音合成装置
においても全音域で減衰時間に乱れを生じさせず滑らか
に音高制御することが可能になる。
【0047】なお、本実施例ではAPF1〜APF10
遅延変化の直線性が良い領域(遅延量が段数換算で
「1」近傍)に限って使うため、複数段(10段)のA
PF1〜APF10に小数部遅延Dfを分配しているが、
この段数に限定はない。また、この実施例では、APF
1〜APF10に小数部遅延Dfを等配分しているが、等
配分でなくとも良い。さらに、前述した実施例では、遅
延フィードバック方式の音源におけるピッチ制御とした
が、これに限らず、例えば、遅延時間に応じて変調を施
すコーラスやフランジャ等の効果音処理に適用すること
も可能である。この場合においても、波形が不連続にな
らず、滑らかな制御が実現できる。
【0048】また、上記実施例においては、ピッチ(音
高)制御として「ピッチベンド」を例に挙げたが、これ
に替えて「ポルタメント」に用いることも可能である。
さらに、この実施例では、ローパスフィルタ3(図3参
照)を非巡回形(FIR)ディジタルフィルタとした
が、これを周知の巡回形(IIR)ディジタルフィルタ
としても良い。この場合、フィルタ特性をジョイステッ
ク等の各種操作子で変化させる時は、フィルタによる遅
延時間変化を補正する。
【0049】また、前述した実施例では、オールパスフ
ィルタ4−2をAPF1〜APF10で形成したが、これ
に限定されず、複数段をカスケード接続する態様として
も良い。さらに、上記実施例では、整数段遅延N、オー
ルパス係数α,γおよび補間係数βをキーオンイベント
毎に算出しているが、これに替えて、予め各鍵毎にこれ
ら楽音パラメータを算出してなるテーブルを作成してお
き、これをキーオンイベント毎に読み出す方式としても
良く、このようにすることで処理の高速化を図ることが
できる。
【0050】
【発明の効果】請求項1に記載の発明によれば、押鍵さ
れた鍵の音高が音域分割点より高域側にある場合、遅延
手段と前記オールパスフィルタ群との総遅延量に応じて
音高制御し、一方、低域側にある場合には、遅延手段と
前記補間手段との総遅延量に応じて音高制御する。ま
た、請求項2に記載の発明によれば、入力信号を整数段
遅延する遅延手段と、この遅延手段の出力を補間する補
間手段と、この補間手段の出力の小数段遅延が可能な第
1および第2のオールパスフィルタとを有する閉ループ
手段に対し、励振信号を供給する。そして、指定された
音高に対応する閉ループ手段全体の遅延量と第2のオー
ルパスフィルタの遅延量とから、遅延手段の遅延量およ
び第1のオールパスフィルタの遅延量を定めるととも
に、閉ループ手段に励振信号を供給する。さらに、楽音
の発生中に音高制御操作子により音高変更の操作がなさ
、このとき変更された音高が高音域側である場合、遅
延手段の遅延量と第2のオールパスフィルタを構成する
各オールパスフィルタのそれぞれの係数を制御して得ら
れる遅延量とを、音高制御操作子により変更された音高
に対応するように制御し、他方、変更された音高が低音
域側である場合、遅延手段の遅延量と補間手段の係数を
制御して得られる遅延量とを、音高制御操作子により変
更された音高に対応するように制御している。この結
果、楽音の発生中に音高変更の操作がなされても、全音
域で減衰時間に乱れを生じさせずに滑らかに音高制御す
ることができる。
【図面の簡単な説明】
【図1】 この発明による一実施例の全体構成を示すブ
ロック図である。
【図2】 同実施例におけるDSP15の機能モデルを
示すブロック図である。
【図3】 同実施例におけるメインルーチンの動作を説
明するためのフローチャート。
【図4】 同実施例におけるキーオン処理ルーチンの動
作を説明するためのフローチャート。
【図5】 同実施例におけるキーオフ処理ルーチンの動
作を説明するためのフローチャート。
【図6】 同実施例におけるピッチベンド処理ルーチン
の動作を説明するためのフローチャート。
【図7】 同実施例におけるDSP15の動作を説明す
るためのフローチャート。
【図8】 本発明による変形例の構成を示すブロック図
である。
【図9】 従来例を説明するための図。
【図10】 従来例を説明するための図。
【符号の説明】
1…加算器(閉ループ手段)、2…遅延回路(遅延手
段、閉ループ手段)、3…ローパスフィルタ、4−1
オールパスフィルタ(第1のオールパスフィルタ),4
−2…オールパスフィルタ(第2のオールパスフィル
タ)、10…CPU(判別手段、音高制御手段)、11
…ROM、12…RAM、13…操作部(音高制御操作
子を含む)、14…演奏操作子(楽音指定手段)、15
…DSP(第1および第2音高制御手段)、20…励振
波形発生部(励振信号発生手段)、21…補間器(補間
手段)、22…係数乗算器、50…周波数ナンバアキュ
ムレータ、51,52…補間器(出力手段)。
フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G10H 1/00 - 7/12

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 入力信号をサンプリング周期に応じて整
    数段遅延して出力する遅延手段と、この遅延手段の出力
    を小数段遅延して出力するオールパスフィルタとを備
    え、該オールパスフィルタの出力を前記入力信号とする
    遅延フィードバックループを形成する楽音合成装置にお
    いて、 前記ループ内に介挿され、当該遅延手段の出力を補間す
    る補間手段と、 発音音域を高域と低域とに分割する音域分割点を設定
    し、発音すべき音高がこの音域分割点を境界に高域側で
    あるか低域側であるかを判別する判別手段と、 前記判別手段が高域側と判別した場合、前記遅延手段と
    前記オールパスフィルタとの総遅延量に応じて音高制御
    する第1の音高制御手段と、 前記判別手段が低域側と判別した場合、前記遅延手段と
    前記補間手段との総遅延量に応じて音高制御する第2の
    音高制御手段とを具備することを特徴とする楽音合成装
    置。
  2. 【請求項2】 入力信号を整数段遅延する遅延手段と、
    入力信号を補間する補間手段と、入力信号の少数段遅延
    が可能な第1のオールパスフィルタと、入力信号の小数
    段遅延が可能なオールパスフィルタを複数縦続接続した
    第2のオールパスフィルタとを有し、前記遅延手段、
    記補間手段、前記第1のオールパスフィルタおよび前記
    第2のオールパスフィルタを閉ループ接続した閉ループ
    手段と、 楽音の発生と音高の指定の操作を受ける楽音指定手段
    と、 楽音の発生中に音高を変更するための操作を受ける音高
    制御操作子と、 前記閉ループ手段に励振信号を供給する励振信号発生手
    段と、発音音域を高音域と低音域とに分割する音域分割点を設
    定し、発音すべき音高がこの音域分割点を境界に高音域
    側であるか低音域側であるかを判別する判別手段と、 前記楽音指定手段の操作に基づき楽音の発生と音高が決
    定されると、該音高に対応する前記閉ループ手段全体の
    遅延量と前記第2のオールパスフィルタの遅延量とか
    ら、前記遅延手段の遅延量および前記第1のオールパス
    フィルタの遅延量を定め、かつ前記閉ループ手段に励振
    信号を供給し、 楽音の発生中に前記音高制御操作子により音高変更の操
    作がなされた場合、変更された音高が前記判別手段によ
    り高音域側であると判別されると、前記遅延手段の遅延
    量と前記第2のオールパスフィルタを構成する各オール
    パスフィルタのそれぞれの係数を制御して得られる遅延
    量とを、前記音高制御操作子により変更された音高に対
    応するように制御し、他方、変更された音高が前記判別
    手段により低音域側であると判別されると、前記遅延手
    段の遅延量と前記補間手段の係数を制御して得られる遅
    延量とを、前記音高制御操作子により変更された音高に
    対応するように制御する音高制御手段とを具備すること
    を特徴とする楽音合成装置。
JP00607695A 1995-01-18 1995-01-18 楽音合成装置 Expired - Fee Related JP3353516B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP00607695A JP3353516B2 (ja) 1995-01-18 1995-01-18 楽音合成装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP00607695A JP3353516B2 (ja) 1995-01-18 1995-01-18 楽音合成装置

Publications (2)

Publication Number Publication Date
JPH08194485A JPH08194485A (ja) 1996-07-30
JP3353516B2 true JP3353516B2 (ja) 2002-12-03

Family

ID=11628486

Family Applications (1)

Application Number Title Priority Date Filing Date
JP00607695A Expired - Fee Related JP3353516B2 (ja) 1995-01-18 1995-01-18 楽音合成装置

Country Status (1)

Country Link
JP (1) JP3353516B2 (ja)

Also Published As

Publication number Publication date
JPH08194485A (ja) 1996-07-30

Similar Documents

Publication Publication Date Title
US5641931A (en) Digital sound synthesizing device using a closed wave guide network with interpolation
JP2727883B2 (ja) 楽音合成装置
US11562723B2 (en) Electronic musical instrument, method of generating musical sound, and storage medium
JP2722795B2 (ja) 楽音合成装置
JP3358324B2 (ja) 電子楽器
US5428183A (en) Tone signal generating apparatus for performing a timbre change by storing a full frequency band in a wave memory
JP2991037B2 (ja) 楽音合成装置及び楽音合成装置の音高調整装置
JP2576702B2 (ja) 電子楽器
JP3353516B2 (ja) 楽音合成装置
JP2689646B2 (ja) 電子楽器
JP2762890B2 (ja) 楽音合成装置
JP3282438B2 (ja) 楽音信号合成装置
JP3033442B2 (ja) 楽音合成装置
JP3430719B2 (ja) 楽音合成装置のパラメータ設定装置及び方法
JP4432951B2 (ja) 楽音発生装置および電子楽器
JP2643717B2 (ja) 楽音合成装置
JP3371469B2 (ja) 楽音信号合成装置
JPH0320797A (ja) サンプリング装置
JP3085696B2 (ja) 楽音合成装置
JP2876986B2 (ja) 楽音信号合成装置
JP2671775B2 (ja) 電子楽器のパラメータエディット装置
JP3168654B2 (ja) 楽音発生装置
JP3480063B2 (ja) 楽音合成装置
JP2580795B2 (ja) 電子楽器
JPH0643863A (ja) エフェクタ

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20020827

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20070927

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20080927

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090927

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100927

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20100927

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110927

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees