JP2833485B2 - 楽音発生装置 - Google Patents

楽音発生装置

Info

Publication number
JP2833485B2
JP2833485B2 JP6178922A JP17892294A JP2833485B2 JP 2833485 B2 JP2833485 B2 JP 2833485B2 JP 6178922 A JP6178922 A JP 6178922A JP 17892294 A JP17892294 A JP 17892294A JP 2833485 B2 JP2833485 B2 JP 2833485B2
Authority
JP
Japan
Prior art keywords
waveform
attack
reading
tone
time
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
JP6178922A
Other languages
English (en)
Other versions
JPH0844362A (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 JP6178922A priority Critical patent/JP2833485B2/ja
Publication of JPH0844362A publication Critical patent/JPH0844362A/ja
Application granted granted Critical
Publication of JP2833485B2 publication Critical patent/JP2833485B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、波形メモリに記憶され
ている波形データに基づいて楽音を生成する波形メモリ
音源を搭載した電子楽器に関する。
【0002】
【従来の技術】波形メモリ音源は、楽音波形の各位相角
点における波形振幅値を波形メモリに記憶しておき、位
相データに従い波形メモリから波形振幅値を順次読み出
す。波形振幅値を読み出す速度を変化させることによ
り、音高を変えることができる。例えば、読み出し速度
を遅くすれば、低い音を生成することができ、読み出し
速度を速くすれば高い音を生成することができる。
【0003】しかし、波形メモリには、所定のサンプリ
ング周波数で波形振幅値が録音されているために、読み
出し速度をあまり遅くしすぎると、サンプル間隔が広く
なりすぎて音質が低下してしまう。一方、読み出し速度
をあまり速くしすぎると、折り返し成分が生じてしま
い、ノイズの原因となる。折り返し成分は、サンプリン
グ周波数が低すぎて波形メモリに必要なサンプル数以上
の波形データが記憶されていないときに生じるノイズで
ある。
【0004】そこで、演奏が行われる全音域を複数の音
域に分割し、分割した音域毎に適切な波形振幅値を波形
メモリに記憶する方法が採られている。これにより、読
み出し速度を一定範囲に制限することができるので、上
記の問題は気にならなくなる。
【0005】図11は、従来の波形読み出しの例を示
す。図11(A)は、波形メモリに録音された原波形を
示す概念図である。楽音波形は、一般に楽音が開始して
から一定の状態のレベルまで変化する立ち上がり部(以
下、アタック部と呼ぶ)と、その後の一定の状態を表す
繰り返し部(以下、ループ部と呼ぶ)を有する。
【0006】波形31は、アタック部に相当し、波形3
2はループ部に相当する。アタック波形31について
は、高品質の楽音を生成するために、楽音発生開始直後
の全波形が波形メモリに記憶されている。ループ波形3
2については、繰り返し部であるために、1ないし複数
周期の波形が波形メモリに記憶されている。
【0007】そして、例えば鍵盤上の押鍵操作により、
楽音の発生が指示されると、まずアタック波形31が一
通り読み出され、その後ループ波形32が必要回数だけ
繰り返し読み出される。これら読み出された波形データ
に基づいて、楽音が生成される。
【0008】押鍵される鍵等により音高が決定される
が、波形メモリに録音された原波形と同じ音高で発音指
示された場合には、原波形をそのまま読み出せばよく、
録音速度と同じ速度で読み出す。
【0009】例えば、アタック波形31は、波形メモリ
の0番地から2000番地に記憶されている。発音指示
された音高が原波形と同じ場合には、アタック波形31
が例えば40〔ms〕の時間内で読み出される。発音指
示された音高が原波形よりも低ければ、読み出し時間は
それより長くなり、原波形よりも高ければ読み出し時間
は短くなる。
【0010】図11(B)は、原波形よりも1オクター
ブ下の楽音を生成する際の読み出し波形を示す。読み出
し波形は、アタック波形33とループ波形34を有す
る。アタック波形33は、前述のように波形メモリの0
番地から2000番地に記憶されている。しかし、発音
すべき楽音が原波形よりも1オクターブ下であるため
に、読み出し速度は1/2になり、読み出し時間は2倍
(40×2=80〔ms〕)となる。
【0011】
【発明が解決しようとする課題】アタック波形の再生時
間は、波形メモリに記憶されている波形データの読み出
し速度により決まる。波形データの読み出し速度は、発
音指示された音高によって異なる。発音する楽音が例え
ば原波形よりも1オクターブ下であれば、アタック波形
再生時間は2倍になり、2オクターブ下であれば4倍に
なる。音高が低くなるにつれて、楽音波形の立ち上がり
(アタック)が鈍くなり、押鍵等による発音指示からの
レスポンスが悪くなり、聴感上の悪影響を与える。
【0012】また、全音域を複数の音域に分割し、分割
した音域毎に原波形を記憶しているため、各音域の境界
における原音波形の切り換えに伴い、楽音波形の立ち上
がり時間に不連続が生じてしまう。より詳しく説明する
と、音高の変化に従ってある音域における原波形の読み
出し速度を変えて行き、所定の音域の境界の音高に達す
ると、次は隣の音域の原波形の用いることになる。この
ため、引き伸ばされた立ち上がりから短縮された立ち上
がりへ、または逆の変化が生じ、音域の境界における両
隣の音高の楽音波形は、それぞれ立ち上がり時間が大き
く異なってしまう。
【0013】本発明の目的は、発音する楽音の音高に左
右されずに、自然な立ち上がりを行う楽音を生成するこ
とができる楽音発生装置を提供することである。
【0014】
【課題を解決するための手段】本発明の楽音発生装置
は、複数の音高の楽音に対し共通であり、かつ楽音の立
ち上がり部を含む波形データを記憶するための記憶手段
と、楽音の音高および発生を指示するための発音指示手
段と、前記発音指示手段により指示される音高に応じ
て、前記記憶手段に記憶されている波形データの読み出
し速度を指定する速度指定手段と、前記発音指示手段に
より指示される音高に応じて、前記記憶手段に記憶され
ている波形データの読み出し開始位置を指定する位置指
定手段と、前記発音指示手段による楽音発生の指示に応
じて、前記速度指定手段により指定される読み出し速度
で前記位置指定手段により指定される読み出し開始位置
から前記記憶手段に記憶されている波形データを読み出
す読み出し手段とを有し、前記読み出し手段は、前記読
み出し速度及び前記読み出し開始位置に基づいて波形デ
ータを読み出すことにより、楽音の音高及び立ち上がり
時間を制御することを特徴とする。
【0015】
【作用】発音指示される音高に応じて、波形データの読
み出し速度および読み出し開始位置を指定することによ
り、各音高に適した波形データを読み出すことが可能で
ある。読み出し速度及び読み出し開始位置により、楽音
の音高及び立ち上がり時間を制御できる。どの様な音高
が指示されても、常に楽音の立ち上がり時間を同じにし
て、楽音の立ち上がりを自然にすることができる。
【0016】
【実施例】図1は、本発明の実施例による電子楽器の構
成を説明するための概念図である。
【0017】演奏手段1は、例えば鍵盤であり、演奏者
が鍵操作を行うことにより、発音指示を示すノートオン
NON、消音指示を示すノートオフNOFF、音高を指
示するノートナンバNN、押鍵速度を示すタッチ情報I
T等を出力する。
【0018】立ち上がり時間制御部4は、演奏手段1か
ら演奏情報NON/OFF,NN,IT等を受けて、ア
タック時間ATを算出する。読み出し手段2は、演奏手
段1で生成される演奏情報NON/OFF,NN,IT
等に応じて、波形メモリ3から波形データの読み出しを
行う。その際に、立ち上がり時間制御部4で算出された
アタック時間ATに応じたアタックスタートアドレスA
Sから読み出しを開始し、ノートナンバ(音高)NNに
応じた読み出し速度で読み出しが行われる。
【0019】エンベロープ発生器5は、演奏手段1で生
成される演奏情報NON/OFF,NN,IT等に応じ
たエンベロープ波形を生成する。その際、立ち上がり時
間制御部4で算出されたアタック時間ATに応じたアタ
ックレート等でエンベロープ波形が生成される。また、
ノートナンバ(音高)NNにより、さらに楽音の立ち上
がりを微妙に変化させることもできる。
【0020】読み出し手段2により、波形メモリ3から
読み出された波形データは、乗算器6において、エンベ
ロープ発生器5で生成されたエンベロープ波形と乗算さ
れる。これにより、エンベロープが付与された楽音信号
が生成される。
【0021】生成された楽音信号は、D/A変換器(D
AC)7において、ディジタル信号からアナログ信号に
変換される。アナログ楽音信号は、サウンドシステム8
において発音される。
【0022】なお、波形メモリ3には、全音域を分割し
た複数の音域毎の波形データが記憶されている。読み出
し手段2は、演奏手段1から供給されるノートナンバN
Nに応じた音域の波形データを波形メモリ3から読み出
す。
【0023】図2は、本実施例による波形読み出しの例
を示す。図2(A)は、波形メモリに録音されている原
波形を示す。前述と同様に、原波形は、アタック波形3
1とループ波形32を有する。アタック波形31につい
ては、高品質の楽音を生成するために、楽音発生開始直
後の全波形が波形メモリに記憶されており、ループ波形
32については繰り返し部であるので、1ないし複数周
期の波形が波形メモリに記憶されている。そして、楽音
の発生が指示されると、まずアタック波形31が一通り
読み出され、その後ループ波形32が所定回数だけ繰り
返し読み出される。
【0024】アタック波形31は、例えば波形メモリの
0番地から2000番地に記憶されており、その中の所
定のアドレスを境にして前半部を波形A、後半部を波形
Bとする。原波形と同じ音高の楽音の発生が指示される
と、波形メモリの0番地から2000番地に記憶されて
いるアタック波形31が40〔ms〕で読み出される。
【0025】図2(B)は、単純に読み出し速度を変え
て生成される、原波形に対して1オクターブ下の音高の
波形を示す。原波形よりも1オクターブ下の読み出し波
形は、アタック波形33とループ波形34を有する。ア
タック波形33は、やはり0番地から開始し2000番
地で終了するが、読み出し速度が遅いために原波形の音
高に比べ2倍の時間(40×2=80〔ms〕)で読み
出される。
【0026】波形Bは、開始アドレスが波形メモリにお
けるアタック波形のメモリ領域の内所定のアドレス(7
50番地)で、最終アドレスが2000番地であり、例
えば約50〔ms〕の時間内で読み出される。アタック
波形33から波形Aを取り除いて、波形Bのみをアタッ
ク部に用いれば、楽音波形の立ち上がり(アタック部)
時間を短くして、原波形(40〔ms〕)と同程度にす
ることができる。
【0027】楽音波形の立ち上がり時間は、全ての音高
について同じである必要はなく、違和感がない範囲内で
同程度であればよい。図2(C)は、本実施例により生
成される、原波形の1オクターブ下の音高の読み出し波
形を示す。原波形の1オクターブ下の読み出し波形は、
アタック波形35とループ波形36を有する。アタック
波形35は、波形メモリの750番地から開始する波形
Bに相当する。この際の波形Bの読み出し時間は、50
〔ms〕である。
【0028】波形メモリから1オクターブ下の音高の波
形データを読み出す際には、アタックの先頭である0番
地からではなく、750番地から読み出しを開始するこ
とにより、波形Bをアタック波形35とすることができ
る。そして、アタック波形の最終番地である2000番
地に達した後は、滑らかにループ波形36に接続する。
【0029】以上のように、適切な波形Bの開始アドレ
ス(例えば750番地)さえ算出することができれば、
アタック波形の読み出し時間を任意に設定することがで
きるので、楽音の立ち上がり時間を調整することが可能
である。
【0030】図3は、原波形の波形データが格納される
波形メモリのメモリマップである。格納される波形デー
タは、アタック波形41とループ波形42からなる。前
述では、0番地から順番にアタック部の波形データが波
形メモリに格納される場合について述べたが、必ずしも
0番地から波形データを格納する必要はない。
【0031】ここでは、0番地を基準点としてループ波
形42のスタートアドレスを決定する。波形アドレスW
Aは、ループ波形42のスタートアドレスであり、0番
地を基準にした絶対アドレスである。ループエンドアド
レスLEは、ループ波形42のエンドアドレスを示し、
波形アドレスWAを基準にした相対アドレスである。し
たがって、LEは、波形メモリに格納されているループ
波形42のサンプル数に相当する。
【0032】アタックスタートアドレスASは、アタッ
ク波形41のスタートアドレスに相当し、波形アドレス
WAを基準にした相対アドレスである。波形アドレスW
Aは、アタック波形41のエンドアドレスに相当するの
で、アタックスタートアドレスASは負値となる。この
アタックスタートアドレスASを変化させることによ
り、アタック波形41の長さ(楽音波形の立ち上がり時
間)を変えることができる。
【0033】アタックスタートアドレスASから開始す
るアタック波形41は、アタック区間AAと接続区間C
Aからなる。接続区間CAは、アタック波形41とルー
プ波形42を滑らかに接続するための区間である。した
がって、アタックスタートアドレスASを変化させるこ
とができる範囲は、接続区間CAを除いたアタック区間
AAの範囲である。
【0034】以上は、波形メモリに格納されている波形
データの読み出し制御について述べた。次は、読み出し
た波形データに付与するエンベロープの制御方法を示
す。図4は、楽音波形の立ち上がり時間を制御するため
のエンベロープ制御の方法を示す。楽音波形においてエ
ンベロープの種類は、大別して2種類ある。その2種類
のエンベロープについて、それぞれ楽音波形の立ち上が
り時間の制御方法を示す。
【0035】図4(A)は、タイプ1のエンベロープ波
形を示す。タイプ1のエンベロープ波形は、鍵盤上の押
鍵操作等により発音が指示されると、ポイント51にお
いて、レベルが0から徐々に大きくなり、ポイント52
において、所定のレベルまで達する。その後、レベルが
小さくなり、ポイント53で一定のレベルに落ち着く。
押鍵中の鍵を離すと、ポイント54において、徐々に減
衰を始める。
【0036】エンベロープ制御により、アタック時間A
Tを変化させることにより、楽音波形の立ち上がりを制
御することができる。このタイプにおけるアタック時間
ATは、ポイント51から52まで達する時間とする。
つまり、エンベロープ制御によりアタックレート(ポイ
ント51から52への変化速度)を変化させて、アタッ
ク時間ATを制御する。
【0037】図4(B)は、タイプ2のエンベロープ波
形を示す。タイプ2のエンベロープ波形は、鍵盤上の押
鍵操作等により発音が指示されると、ポイント55にお
いて、レベルが0から所定のレベル(ポイント56)に
まで瞬時に達する。その後、同レベルを維持し続ける。
つまり、押鍵操作により徐々に音量が大きくなるのでは
なく、押鍵直後から所定の音量の楽音を発する。所定の
レベルを維持した後に、ポイント57において減衰を始
め、ポイント58において所定のレベルに落ち着く。そ
の後、押鍵中の鍵が離されると、ポイント59において
減衰が始まりやがて0になる。
【0038】このタイプにおけるアタック時間ATは、
ポイント55から57までの時間とする。ポイント55
から56にまでは瞬時に達してしまうために、前述のタ
イプ1と同様にアタックレートを変化させるとなると、
不都合が生じる。アタックレートを速くしすぎると、ク
リックが生じてしまう。また、アタックレートを遅くし
すぎると、押鍵操作と同時に音が出始めるという楽音特
性を失わせることになってしまう。
【0039】そこで、ポイント55から56に達するま
でのアタックレートは変化させずに、ポイント56から
ポイント57に至るまでの時間、言い換えるとポイント
57の時刻を変化させる。ポイント57は、最初の目標
値(アタックレベル)に達した後の減衰開始時刻に相当
する。この減衰開始時刻を制御することにより、アタッ
ク時間ATを変化させる。
【0040】以上のエンベロープ制御では、エンベロー
プの種類にかかわらず、波形メモリのアタック区間の読
み出しの終了と、エンベロープのアタック時間ATの終
了時刻を同期させて制御する。これにより、不自然さを
なくすことができる。
【0041】次は、以上述べた波形データの読み出し制
御およびエンベロープ制御を行う電子楽器の構成を示
す。図5は、以上示した電子楽器を実現するためのシス
テムの構成例を示す。
【0042】鍵盤11は、演奏を行うための複数の鍵を
有し、押鍵や離鍵等の操作を行うことにより、発音/消
音指示情報NON/OFF、ノートナンバNN、タッチ
情報IT等を出力する。
【0043】パネルスイッチ16は、音色選択、音量調
整または種々の効果付与等を行うことを指示するための
スイッチを含む。CPU12は、鍵盤11における鍵操
作またはパネルスイッチ16におけるスイッチ操作に応
じた、各種情報をパネル表示器15に表示する。パネル
表示器15には、例えばパネルスイッチ16により選択
された音色の種類等を表示する。
【0044】また、CPU12は、鍵盤11またはパネ
ルスイッチ16の操作に応じて音源17に楽音パラメー
タを出力する。ここで、楽音パラメータは、ノートナン
バNN、タッチ情報IT、ノートオン/オフのイベント
種類等の他に、アタック時間ATに応じたアタックスタ
ートアドレスASとエンベロープのアタックレート等を
含む。アタック時間ATは、鍵盤11から供給されるノ
ートナンバNNに応じてCPU12により演算される。
【0045】ROM13は、演算プログラムを記憶して
いる。CPU12は、この演算プログラムに従って、R
AM14に備えられたレジスタやバッファメモリ等のワ
ーキングメモリを用いて各種演算処理を行う。
【0046】音源17は、CPU12から供給される楽
音パラメータに基づき、楽音信号を形成し出力する。そ
の際、音源17は、アタック時間ATに応じたアタック
スタートアドレスASから波形メモリ18における波形
データの読み出しを行う。そして、アタック時間ATに
応じたアタックレート等により構成されるエンベロープ
波形を生成し、波形メモリ18から読み出した波形デー
タにエンベロープを付与することにより楽音信号の形成
を行う。
【0047】音源17により形成された楽音信号は、D
/A変換器(DAC)19において、ディジタル信号か
らアナログ信号に変換される。変換されたアナログ楽音
信号は、サウンドシステム20において発音される。
【0048】なお、CPU12は、マイコンバス21を
介して、鍵盤11、パネルスイッチ16、パネル表示器
15、音源17、ROM13、RAM14の制御を行
う。図6は、以上説明した音源17の詳細な内部構成を
示すブロック図である。
【0049】時分割複数チャンネル制御レジスタ25
は、例えば16チャンネル分の各種レジスタを有する。
制御レジスタ25には、CPU12からマイコンバス2
1を通じて、ノートオンNON、ノートオフNOFF、
波形アドレスWA、アタックスタートアドレスAS、ル
ープエンドアドレスLEおよびエンベロープデータ等が
供給され、記憶される。
【0050】制御レジスタ25にノートオンNONが格
納されると、アドレス発生器26は、時分割チャンネル
で、制御レジスタ25に記憶されている各チャンネルの
波形アドレスWAおよびアタックスタートアドレスAS
に応じたアドレス(WA+AS)からアドレスの生成を
開始する。そして、アドレスが制御レジスタ25に記憶
されているループエンドアドレスLEに達したら、再び
ループスタートアドレス(=波形アドレスWA)に戻
り、アドレスの生成を繰り返す。
【0051】アドレス発生器26において生成されるア
ドレスは、波形メモリ18に供給される。波形メモリ1
8は、供給されたアドレスの波形データを補間器27に
出力する。補間器27は、供給された波形データに対し
て、アドレス発生器26で生成されるアドレスに応じた
補間を行う。
【0052】エンベロープ発生器28は、制御レジスタ
25に記憶されている各チャンネルのエンベロープのア
タックレート等のデータに応じたエンベロープ波形を生
成する。
【0053】補間器27において補間された波形データ
は、エンベロープ発生器28で生成されたエンベロープ
波形と乗算器29において乗算される。乗算された楽音
信号は、時分割チャンネルの信号であるので、チャンネ
ル累算器30において、累算合成される。累算された楽
音信号は、DAC19に供給され、その後サウンドシス
テム20で発音される。
【0054】図7は、CPUが行うメインルーチンの処
理を示すフローチャートである。電子楽器の電源が投入
されると、CPUは以下の処理を開始する。ステップS
1では、レジスタ類の初期化等の初期設定を行う。ステ
ップS2では、鍵盤における鍵操作に応じた鍵処理を行
う。例えば、押鍵されたことを示すキーオンイベントや
離鍵されたことを示すキーオフイベントの検出を行う。
イベントが検出されると、選択された音色情報や鍵盤上
の鍵操作による音高情報(NN)、タッチ情報(IT)
等に応じた発音処理または消音処理を行う。アタック時
間ATを算出する処理等は、キーオンイベントが検出さ
れた後に行われる。詳細は、後にフローチャートを参照
しながら説明する。
【0055】ステップS3では、パネルスイッチ上にお
けるスイッチ操作に応じたパネルスイッチ処理を行う。
例えば、スイッチにより選択された音色の設定や音量調
整の処理等を行う。
【0056】図8は、図7のステップS2の鍵処理にお
いてキーオンイベントが検出された後に行われる処理の
フローチャートである。鍵盤上における押鍵操作により
キーオンイベントが検出されると、以下の処理が開始さ
れる。
【0057】ステップS11では、押鍵により生じたキ
ーオンイベントのノートナンバをレジスタNNに格納す
る。レジスタNNに格納されたノートナンバは、後にア
タック時間ATを算出する際等に用いられる。
【0058】ステップS12では、検出されたキーオン
イベントに対応する発音チャンネル割り当てを行う。発
音チャンネルは、例えば全部で16チャンネルあり、そ
の中の1つのチャンネルに割り当てが行われる。割り当
てられた発音チャンネルは、割当チャンネル番号レジス
タiに格納される。
【0059】ステップS13では、ノートナンバNNに
基づいてアタック時間AT(NN)を求める。ROMに
は、各ノートナンバNN毎に対応したアタック時間を記
憶するテーブルが用意されている。レジスタNNに格納
されているノートナンバに基づいて、そのテーブルを参
照することにより、アタック時間ATを求めることがで
きる。テーブルを用いれば、各音高に対応させて任意の
変化特性を持たせた細かな制御を行うことができる。
【0060】また、アタック時間ATを求める方法とし
て、前述のようにテーブルを用いる方法の他に所定の演
算式を用いる方法もある。レジスタNNに格納されてい
るノートナンバに基づいて、以下の演算式によりアタッ
ク時間AT(NN)を求めることができる。
【0061】AT(NN)=a×NN+b ここで、aおよびbは定数であり、正値に限らず負値で
もよい。アタック時間ATは、この場合ノートナンバN
Nに比例して変化することになる。
【0062】なお、演算式は、上式のように1次式であ
る必要はなく、もっと高次の式やlog関数を用いた演
算式によりアタック時間AT(NN)を求めてもよい。
演算式によりアタック時間を求めることにより、ROM
等に記憶させるデータ容量を削減することができ、タッ
チ等の演奏データに応じてアタック時間の特性をリアル
タイムまたはノンリアルタイムで容易に変更制御するこ
ともできる。
【0063】ステップS14では、以上求めたアタック
時間ATに対応するアタックスタートアドレスAS(A
T)を求める。アタックスタートアドレスASは、波形
メモリ中において、アタックエンドアドレスを示す波形
アドレスWAを基準とした相対アドレスであり、負値で
表される。アタックスタートアドレスAS(AT)は、
アタック時間ATに基づいて、以下の演算式により求め
られる。
【0064】 AS(AT)=−{(FN(NN)×Fs)×AT+CA} ・・・(1) ここで、FN(NN)は、ノートナンバNNに応じて決
まる読み出し速度(Fナンバ)であり、選択された音域
によっても決まる。換言すれば、波形データは、FN
(NN)のステップで読み出しが行われる。Fsは、音
源の再生側のサンプリング周波数であり、Fsのクロッ
クタイミングで図5のDAC19の変換が行われる。C
Aは、波形メモリに格納されている接続区間のサンプル
数である。
【0065】したがって、読み出しのために1秒間に進
むアドレス幅は(FN(NN)×Fs)となり、アタッ
ク時間AT内に読み出されるアドレス幅は(FN(N
N)×Fs)×ATとなる。それに、接続区間のサンプ
ル数CAを加えたものの負値がアタックスタートアドレ
スAS(AT)となる。
【0066】なお、アタック時間ATが大きくなりすぎ
ると、アタックスタートアドレスAS(AT)の絶対値
が大きくなり、波形メモリに元々記憶されているサンプ
ル数以上のサンプルを読み出すことになってしまう。こ
の問題を解決するために、リミッタ等を用いてアタック
スタートアドレスAS(AT)の絶対値の最大値を制限
する必要がある。
【0067】アタックスタートアドレスASは、負値で
あるが、正値(−AS)は、図3におけるアタック区間
AAと接続区間CAを含めたアタック波形のサンプル数
に相当する。そのアタック波形サンプル数(−AS)と
アタック時間ATの関係を式(1)を参照しながら、2
つのグラフ(図9、図10)を用いて説明する。
【0068】図9は、ノートナンバ(周波数)とアタッ
ク波形サンプル数(−AS)の関係例を示すグラフであ
る。横軸は、ノートナンバに対応する音高周波数〔H
z〕であり、縦軸はアタック波形サンプル数(−AS)
である。特性P1,P2,P3は、ノートナンバ(周波
数)の変化に対応する3種類のアタック波形サンプル数
(−AS)の変化特性を示す。
【0069】図10は、ノートナンバ(周波数)とアタ
ック時間ATの関係例を示すグラフである。横軸は、ノ
ートナンバに対応する音高周波数〔Hz〕であり、縦軸
はアタック時間ATである。特性Q1,Q2,Q3は、
それぞれ図9の特性P1,P2,P3に対応するアタッ
ク時間ATの変化特性を示す。
【0070】サンプル数特性P1は、アタック波形サン
プル数(−AS)がノートナンバ(周波数)の変化に対
して常に一定値を示す特性である。その際のアタック時
間特性Q1は、アタック時間ATがノートナンバ(周波
数)に反比例する。
【0071】サンプル数特性P2は、アタック波形サン
プル数(−AS)がノートナンバ(周波数)に比例する
特性である。その際のアタック時間特性Q2は、アタッ
ク時間ATがノートナンバ(周波数)の変化にかかわら
ずに常に一定である。
【0072】サンプル数特性P3は、アタック波形サン
プル数(−AS)がノートナンバ(周波数)に対しある
傾きを持って比例する特性である。その際のアタック時
間特性Q3は、図のような曲線を示す。
【0073】図8において、処理の続きを説明する。ス
テップS15では、前ステップで求められたアタック時
間ATに対応するアタックレートAR(AT)を求め
る。図4(A)に示したタイプ1のエンベロープ波形に
対しては、アタック時間ATに応じたアタックレートA
R(AT)の制御を行う。エンベロープ波形のアタック
レートAR(AT)は、アタック時間ATを用いて、以
下の演算式により求められる。
【0074】AR(AT)=AL/AT ここで、ALは、図4(A)のポイント52に対応する
立ち上がりの最初の目標値となるアタックレベルであ
る。
【0075】なお、図4(B)に示したタイプ2のエン
ベロープ波形の場合には、アタックレートを変化させる
代わりに、ポイント57に対応する減衰開始までの時間
(=AT)を制御する。このような制御は、波形メモリ
にアタック波形の波形データとしてエンベロープの付与
された波形を記憶させた場合に効果的である。
【0076】ステップS16では、上述以外のその他の
パラメータを得る。例えば、ROMに記憶されている波
形メモリWA、ループエンドアドレスLEまたはエンベ
ロープの波形を決める各種レベルまたレートデータを得
る。その他、アタックピッチ、トレモロ、ビブラート等
の効果を制御するデータも獲得する。これらのデータ
は、後に音源等へ送られる。
【0077】ステップS17では、ノートナンバNNお
よび全ての音色パラメータを音源の制御レジスタ(2
5)のiチャンネルに送出する。送出された各種パラメ
ータは、iチャネルの発音チャンネルに対応するレジス
タにそれぞれ記憶される。
【0078】ステップS18では、音源のiチャンネル
にノートオンを送出する。その後、音源は、受け取った
パラメータに応じた楽音信号を生成し、サウンドシステ
ムにおいて楽音が発せられる。以上で、キーオンイベン
ト検出による処理は終了する。
【0079】なお、以上は、一旦ノートナンバNNに基
づいてアタック時間ATを求め(ステップS13)、そ
の後アタックスタートアドレスASおよびエンベロープ
波形のアタックレートARを求める場合について説明し
たが、それぞれノートナンバNNから直接アタックスタ
ートアドレスASおよびアタックレートARをテーブル
または演算式より求めるようにしてもよい。
【0080】また、ノートナンバNNに基づいて、まず
アタックスタートアドレスASとアタックレートARの
いずれか一方を求め、その後に求められたデータから他
方のデータを求めるようにしてもよい。
【0081】以上のように、本実施例によれば、発音指
示された楽音のノートナンバに応じて、適切な楽音のア
タック時間ATを算出することが可能である。算出され
たアタック時間ATに応じて、アタック波形の波形デー
タの長さ(AS)およびエンベロープ波形の制御(A
R)を行うことにより、ノートナンバに適したアタック
時間を有する楽音を生成することができる。
【0082】以上実施例に沿って本発明を説明したが、
本発明はこれらに制限されるものではない。例えば、種
々の変更、改良、組み合わせ等が可能なことは当業者に
自明であろう。
【0083】
【発明の効果】以上説明したように、本発明によれば、
発音指示される音高に応じて、波形データの読み出し速
度および読み出し開始位置を指定し、各音高に適した波
形データを読み出すことができるので、自然な楽音を生
成することができる。読み出し速度および読み出し開始
位置を制御すれば、どの様な音高が指示されても常に楽
音の立ち上がり時間を同じにして、楽音の立ち上がりを
自然にすることができる。
【図面の簡単な説明】
【図1】 本発明の実施例による電子楽器の構成を示す
概念図である。
【図2】 本実施例による波形読み出しの例を示す。図
2(A)は、波形メモリに録音されている原波形を示す
概念図であり、図2(B)は、単純に読み出し速度を変
えて生成される波形を示す概念図であり、図2(C)
は、原波形の1オクターブ下の音高の読み出し波形を示
す概念図である。
【図3】 原波形の波形データが格納される波形メモリ
のメモリマップである。
【図4】 楽音波形の立ち上がり時間を制御するための
エンベロープ制御の方法を示す。 図4(A)は、タイ
プ1のエンベロープ波形を示す概念図であり、図4
(B)は、タイプ2のエンベロープ波形を示す概念図で
ある。
【図5】 本実施例による電子楽器を実現するシステム
の構成例を示すブロック図である。
【図6】 音源の詳細な内部構成を示すブロック図であ
る。
【図7】 CPUが行うメインルーチンの処理を示すフ
ローチャートである。
【図8】 図7のステップS2の鍵処理においてキーオ
ンイベントが検出された後に行われる処理のフローチャ
ートである。
【図9】 ノートナンバ(周波数)とアタック波形サン
プル数(−AS)の関係を示すグラフである。
【図10】 ノートナンバ(周波数)とアタック時間A
Tの関係を示すグラフである。
【図11】 従来の波形読み出しの例を示す。図11
(A)は、波形メモリに録音された原波形を示す概念図
であり、図11(B)は、原波形よりも1オクターブ下
の楽音を生成する際の読み出し波形を示す概念図であ
る。
【符号の説明】
1 演奏手段、 2 読み出し手段、 3 波形メ
モリ、 4 立ち上がり時間制御部、 5 エンベ
ロープ発生器、 6 乗算器、 7 D/A変換器
(DAC)、 8 サウンドシステム、 11 鍵
盤、 12CPU、 13 ROM、 14 R
AM、 15 パネル表示器、16 パネルスイッ
チ、 17 音源、 18 波形メモリ、 19
D/A変換器(DAC)、 20 サウンドシステ
ム、 21 マイコンバス、 25 制御レジス
タ、 26 アドレス発生器、 27 補間器、2
8 エンベロープ発生器、 29 乗算器、 30
チャンネル累算器、 31,33,35 アタック
波形、 32,34,36 ループ波形、41 アタ
ック波形、 42 ループ波形

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 複数の音高の楽音に対し共通であり、か
    つ楽音の立ち上がり部を含む波形データを記憶するため
    の記憶手段(3)と、 楽音の音高および発生を指示するための発音指示手段
    (1)と、 前記発音指示手段により指示される音高に応じて、前記
    記憶手段に記憶されている波形データの読み出し速度を
    指定する速度指定手段と、 前記発音指示手段により指示される音高に応じて、前記
    記憶手段に記憶されている波形データの読み出し開始位
    置を指定する位置指定手段と、 前記発音指示手段による楽音発生の指示に応じて、前記
    速度指定手段により指定される読み出し速度で前記位置
    指定手段により指定される読み出し開始位置から前記記
    憶手段に記憶されている波形データを読み出す読み出し
    手段(2)とを有し、 前記読み出し手段は、前記読み出し速度及び前記読み出
    し開始位置に基づいて波形データを読み出すことによ
    り、楽音の音高及び立ち上がり時間を制御することを特
    徴とする楽音発生装置。
  2. 【請求項2】 さらに、前記読み出し手段が立ち上がり
    部の波形データの読み出しを終了するタイミングに同期
    して、所定の音量エンベロープレベルに達するように、
    該立ち上がり部の音量エンベロープの生成を行うエンベ
    ロープ生成手段(5)と、 前記読み出し手段により読み出される波形データに前記
    エンベロープ生成手段により生成される音量エンベロー
    プを付与して楽音を生成する楽音生成手段(6)とを有
    する請求項1記載の楽音発生装置。
JP6178922A 1994-07-29 1994-07-29 楽音発生装置 Expired - Fee Related JP2833485B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6178922A JP2833485B2 (ja) 1994-07-29 1994-07-29 楽音発生装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6178922A JP2833485B2 (ja) 1994-07-29 1994-07-29 楽音発生装置

Publications (2)

Publication Number Publication Date
JPH0844362A JPH0844362A (ja) 1996-02-16
JP2833485B2 true JP2833485B2 (ja) 1998-12-09

Family

ID=16056997

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6178922A Expired - Fee Related JP2833485B2 (ja) 1994-07-29 1994-07-29 楽音発生装置

Country Status (1)

Country Link
JP (1) JP2833485B2 (ja)

Also Published As

Publication number Publication date
JPH0844362A (ja) 1996-02-16

Similar Documents

Publication Publication Date Title
US5744739A (en) Wavetable synthesizer and operating method using a variable sampling rate approximation
US6687674B2 (en) Waveform forming device and method
US7396992B2 (en) Tone synthesis apparatus and method
US4638709A (en) Electronic musical instrument with temporal variation data generating circuit and interpolation circuit
JP3482685B2 (ja) 電子楽器の音源装置
US4638706A (en) Electronical musical instrument with note frequency data setting circuit and interpolation circuit
JP2833485B2 (ja) 楽音発生装置
US5886278A (en) Apparatus for reducing change in timbre at each point where tone ranges are switched
JPH07121181A (ja) 音声情報処理装置
JPH08160961A (ja) 音源装置
JP3530601B2 (ja) 楽音信号の周波数特性制御装置及び周波数特性制御方法
US5559298A (en) Waveform read-out system for an electronic musical instrument
WO1996004642A1 (en) Timbral apparatus and method for musical sounds
JP3129119B2 (ja) エンベロープ波形発生装置
JP2722482B2 (ja) 楽音発生装置
JP3660125B2 (ja) 電子楽器の音像定位感制御装置
JP3552265B2 (ja) 音源装置および音声信号形成方法
JP3394626B2 (ja) 電子楽器
JP4132268B2 (ja) 波形再生装置
JP3652504B2 (ja) 電子楽器の残響効果付加装置
JPH08137469A (ja) 楽音信号の周波数特性制御装置
JPS61204697A (ja) 楽音信号発生装置
JP2003255951A (ja) 波形処理方法および装置
JP3486938B2 (ja) レガート演奏可能な電子楽器
JP3706372B2 (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: 19980901

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: 20071002

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20081002

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20091002

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees