JP3389609B2 - 電子楽器 - Google Patents
電子楽器Info
- Publication number
- JP3389609B2 JP3389609B2 JP02571992A JP2571992A JP3389609B2 JP 3389609 B2 JP3389609 B2 JP 3389609B2 JP 02571992 A JP02571992 A JP 02571992A JP 2571992 A JP2571992 A JP 2571992A JP 3389609 B2 JP3389609 B2 JP 3389609B2
- Authority
- JP
- Japan
- Prior art keywords
- channel
- tone
- data
- sound
- gate 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
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【0001】
【産業上の利用分野】この発明は、打楽器系の楽音のよ
うにキーオントリガパルスに応じて所定のエンベロープ
を持つ楽音を発生する電子楽器に関し、特に、そのため
の発音管理に関する。
うにキーオントリガパルスに応じて所定のエンベロープ
を持つ楽音を発生する電子楽器に関し、特に、そのため
の発音管理に関する。
【0002】
【従来の技術】例えばリズムシーケンサのような自動リ
ズム音発生機能を持つ電子楽器においては、打楽器音発
音イベント信号が与えられると、複数の楽音発生チャン
ネルのいずれかに該イベントに関わる打楽器音の発音を
割り当てる処理を行い、割り当てたチャンネルで該打楽
器音信号を発生するようになっている。割り当て処理に
おいては、普通、発音に利用されていない空きチャンネ
ルを探し、空きチャンネルがあればそこに割り当てる
が、空きチャンネルがない場合は、最も古く割り当てが
なされたチャンネルを検出し、そのチャンネルの古い割
り当てをクリアして新しい音をそこに割り当てる「トラ
ンケート処理」が行われる。
ズム音発生機能を持つ電子楽器においては、打楽器音発
音イベント信号が与えられると、複数の楽音発生チャン
ネルのいずれかに該イベントに関わる打楽器音の発音を
割り当てる処理を行い、割り当てたチャンネルで該打楽
器音信号を発生するようになっている。割り当て処理に
おいては、普通、発音に利用されていない空きチャンネ
ルを探し、空きチャンネルがあればそこに割り当てる
が、空きチャンネルがない場合は、最も古く割り当てが
なされたチャンネルを検出し、そのチャンネルの古い割
り当てをクリアして新しい音をそこに割り当てる「トラ
ンケート処理」が行われる。
【0003】そのチャンネルが空きチャンネルかどうか
を判断するには、電子楽器一般においては種々の基準が
考えられている。例えば、減衰エンベロープが終了した
ことを実際に検出し、音量レベルが実際にほぼ0となっ
たチャンネルを空きチャンネルと判定することが行われ
ている。しかし、それでは、エンベロープ発生回路から
のフィードバック信号を必要とするので、発音割り当て
処理を簡便にするには不向きである。そこで、リズムシ
ーケンサその他簡便な発音割り当て処理タイプの装置に
おいては、発音イベント信号発生時から一定のゲートタ
イムが経過するまではそのチャンネルが発音に利用され
ているとみなし、それ以後は空きチャンネルとみなすこ
とが行われている。その場合、リズムシーケンサ等、従
来の装置では、どのような音色の打楽器音であっても、
一定のゲートタイムを持つものと擬制して発音割り当て
処理を行っていた。
を判断するには、電子楽器一般においては種々の基準が
考えられている。例えば、減衰エンベロープが終了した
ことを実際に検出し、音量レベルが実際にほぼ0となっ
たチャンネルを空きチャンネルと判定することが行われ
ている。しかし、それでは、エンベロープ発生回路から
のフィードバック信号を必要とするので、発音割り当て
処理を簡便にするには不向きである。そこで、リズムシ
ーケンサその他簡便な発音割り当て処理タイプの装置に
おいては、発音イベント信号発生時から一定のゲートタ
イムが経過するまではそのチャンネルが発音に利用され
ているとみなし、それ以後は空きチャンネルとみなすこ
とが行われている。その場合、リズムシーケンサ等、従
来の装置では、どのような音色の打楽器音であっても、
一定のゲートタイムを持つものと擬制して発音割り当て
処理を行っていた。
【0004】
【発明が解決しようとする課題】しかし、実際に発生さ
れる打楽器音の発音期間は、その音色(打楽器種類)に
応じて様々に異なっている。例えば、ドラム系の音は比
較的減衰時間が短いが、シンバル系の音は比較的減衰時
間が長い。そのため、一定のゲートタイムを持つものと
擬制して発音状態の管理を行うと、不都合が生じること
がある。例えば、設定されたゲートタイムよりも実際の
発音期間の方が長い音に関しては、発音が終了していな
いのに空きチャンネルとして扱われてしまうことにな
り、新たな割り当てによって減衰発音途中の当該音が消
されてしまう事態も起こりうる。あるいは、反対に、設
定されたゲートタイムよりも実際の発音期間の方が短い
音に関しては、発音が既に終了しているのに空きチャン
ネルとして扱われず、無駄にチャンネルを占有してしま
う。そのため、ほかに空きチャンネルがなかった場合、
発音が既に終了している当該音は消されずに、前述のト
ランケート処理によって発音途中の別の音が消されてし
まう事態も起こりうる。この発明は上述の点に鑑みてな
されたもので、フィードバック等の複雑な構成を用いる
ことなく、簡便な構成により、発音状態の適正な管理を
行うことができるようにした電子楽器を提供しようとす
るものである。
れる打楽器音の発音期間は、その音色(打楽器種類)に
応じて様々に異なっている。例えば、ドラム系の音は比
較的減衰時間が短いが、シンバル系の音は比較的減衰時
間が長い。そのため、一定のゲートタイムを持つものと
擬制して発音状態の管理を行うと、不都合が生じること
がある。例えば、設定されたゲートタイムよりも実際の
発音期間の方が長い音に関しては、発音が終了していな
いのに空きチャンネルとして扱われてしまうことにな
り、新たな割り当てによって減衰発音途中の当該音が消
されてしまう事態も起こりうる。あるいは、反対に、設
定されたゲートタイムよりも実際の発音期間の方が短い
音に関しては、発音が既に終了しているのに空きチャン
ネルとして扱われず、無駄にチャンネルを占有してしま
う。そのため、ほかに空きチャンネルがなかった場合、
発音が既に終了している当該音は消されずに、前述のト
ランケート処理によって発音途中の別の音が消されてし
まう事態も起こりうる。この発明は上述の点に鑑みてな
されたもので、フィードバック等の複雑な構成を用いる
ことなく、簡便な構成により、発音状態の適正な管理を
行うことができるようにした電子楽器を提供しようとす
るものである。
【0005】
【課題を解決するための手段】 第1の観点に従えば、
この発明に係る電子楽器は、各音色ごとに、発音時間長
に対応するゲートタイムデータを記憶する記憶手段と、
発生する楽音の音色に対応して前記記憶手段から前記ゲ
ートタイムデータを読み出す読み出し手段と、各チャン
ネル毎に、当該チャンネルに割り当てられた楽音の発音
開始に応答して、前記読み出されたゲートタイムデータ
に対応する時間のカウントを行うカウント手段と、前記
カウント手段のカウント出力に基づき、各チャンネル毎
の前記ゲートタイムデータに対応する時間の経過に応じ
て当該チャンネルを発音終了した空きチャンネルとする
発音管理手段と、発音開始の古いチャンネル順にトラン
ケートチャンネルを指定し、新たな楽音をいずれかのチ
ャンネルに割り当てるべきとき、空きチャンネルがない
ならば、指定されたトランケートチャンネルに新たな楽
音を割り当てる発音割当手段とを具えたものである。
この発明に係る電子楽器は、各音色ごとに、発音時間長
に対応するゲートタイムデータを記憶する記憶手段と、
発生する楽音の音色に対応して前記記憶手段から前記ゲ
ートタイムデータを読み出す読み出し手段と、各チャン
ネル毎に、当該チャンネルに割り当てられた楽音の発音
開始に応答して、前記読み出されたゲートタイムデータ
に対応する時間のカウントを行うカウント手段と、前記
カウント手段のカウント出力に基づき、各チャンネル毎
の前記ゲートタイムデータに対応する時間の経過に応じ
て当該チャンネルを発音終了した空きチャンネルとする
発音管理手段と、発音開始の古いチャンネル順にトラン
ケートチャンネルを指定し、新たな楽音をいずれかのチ
ャンネルに割り当てるべきとき、空きチャンネルがない
ならば、指定されたトランケートチャンネルに新たな楽
音を割り当てる発音割当手段とを具えたものである。
【0006】 第2の観点に従えば、この発明に係る電
子楽器は、楽音の音色に対応して、ゲートタイムデータ
と、このゲートタイムデータに対応する発音時間長を少
なくとも設定するためのエンベロープパラメータデータ
とを発生するデータ発生手段と、前記発生されたエンベ
ロープパラメータデータに基づき前記発音時間長に対応
する発音時間を少なくとも設定するエンベロープ信号を
発生し、これにより発生楽音のエンベロープを設定する
エンベロープ設定手段と、各チャンネル毎に、当該チャ
ンネルに割り当てられた楽音の発音開始に応答して、前
記発生されたゲートタイムデータに対応する時間のカウ
ントを行うカウント手段と、前記カウント手段のカウン
ト出力に基づき、各チャンネル毎の前記ゲートタイムデ
ータに対応する時間の経過に応じて当該チャンネルを発
音終了した空きチャンネルとする発音管理手段と、発音
開始の古いチャンネル順にトランケートチャンネルを指
定し、新たな楽音をいずれかのチャンネルに割り当てる
べきとき、空きチャンネルがないならば、指定されたト
ランケートチャンネルに新たな楽音を割り当てる発音割
当手段とを具えたものである。
子楽器は、楽音の音色に対応して、ゲートタイムデータ
と、このゲートタイムデータに対応する発音時間長を少
なくとも設定するためのエンベロープパラメータデータ
とを発生するデータ発生手段と、前記発生されたエンベ
ロープパラメータデータに基づき前記発音時間長に対応
する発音時間を少なくとも設定するエンベロープ信号を
発生し、これにより発生楽音のエンベロープを設定する
エンベロープ設定手段と、各チャンネル毎に、当該チャ
ンネルに割り当てられた楽音の発音開始に応答して、前
記発生されたゲートタイムデータに対応する時間のカウ
ントを行うカウント手段と、前記カウント手段のカウン
ト出力に基づき、各チャンネル毎の前記ゲートタイムデ
ータに対応する時間の経過に応じて当該チャンネルを発
音終了した空きチャンネルとする発音管理手段と、発音
開始の古いチャンネル順にトランケートチャンネルを指
定し、新たな楽音をいずれかのチャンネルに割り当てる
べきとき、空きチャンネルがないならば、指定されたト
ランケートチャンネルに新たな楽音を割り当てる発音割
当手段とを具えたものである。
【0007】
【作用】 第1の観点に従えば、各音色ごとに、発音時
間長に対応するゲートタイムデータが記憶手段に記憶さ
れている。従って、このゲートタイムデータは、各音色
ごとの発音時間長に対応して適宜異なっているものであ
る。発生する楽音の音色に対応して、その発音時間長に
対応するゲートタイムデータが、記憶手段から読み出さ
れる。そして、各チャンネル毎に、当該チャンネルに割
り当てられた楽音の発音開始に応答して、読み出された
ゲートタイムデータに対応する時間のカウントが行われ
る。このカウント手段のカウント出力は、ゲートタイム
データに応じた時間長つまり発生楽音の発音時間長に対
応している。従って、このカウント出力に基づき、各チ
ャンネル毎の前記ゲートタイムデータに対応する時間の
経過に応じて当該チャンネルを発音終了した空きチャン
ネルとすることで、実際の発音時間に適正に対応してチ
ャンネルが占有され、かつ空きチャンネルが適正に判定
されることになり、簡便な構成によって適正な発音割り
当て処理を行うことができるようになる。加えて、発音
開始の古いチャンネル順にトランケートチャンネルを指
定し、新たな楽音をいずれかのチャンネルに割り当てる
べきとき、空きチャンネルがないならば、指定されたト
ランケートチャンネルに新たな楽音を割り当てることが
できる。しかも、エンベロープ発生回路からのフィード
バック信号等を必要としていないので、簡便な構成であ
る。
間長に対応するゲートタイムデータが記憶手段に記憶さ
れている。従って、このゲートタイムデータは、各音色
ごとの発音時間長に対応して適宜異なっているものであ
る。発生する楽音の音色に対応して、その発音時間長に
対応するゲートタイムデータが、記憶手段から読み出さ
れる。そして、各チャンネル毎に、当該チャンネルに割
り当てられた楽音の発音開始に応答して、読み出された
ゲートタイムデータに対応する時間のカウントが行われ
る。このカウント手段のカウント出力は、ゲートタイム
データに応じた時間長つまり発生楽音の発音時間長に対
応している。従って、このカウント出力に基づき、各チ
ャンネル毎の前記ゲートタイムデータに対応する時間の
経過に応じて当該チャンネルを発音終了した空きチャン
ネルとすることで、実際の発音時間に適正に対応してチ
ャンネルが占有され、かつ空きチャンネルが適正に判定
されることになり、簡便な構成によって適正な発音割り
当て処理を行うことができるようになる。加えて、発音
開始の古いチャンネル順にトランケートチャンネルを指
定し、新たな楽音をいずれかのチャンネルに割り当てる
べきとき、空きチャンネルがないならば、指定されたト
ランケートチャンネルに新たな楽音を割り当てることが
できる。しかも、エンベロープ発生回路からのフィード
バック信号等を必要としていないので、簡便な構成であ
る。
【0008】第2の観点に従えば、楽音の音色に対応し
て、ゲートタイムデータと、このゲートタイムデータに
対応する発音時間長を少なくとも設定するためのエンベ
ロープパラメータデータとが発生される。そして、発生
されたエンベロープパラメータデータに基づき前記発音
時間長に対応する発音時間を少なくとも設定するエンベ
ロープ信号を発生し、これにより発生楽音のエンベロー
プが設定される。これによっても上述と同様の作用・効
果を奏する。一実施態様として、データ発生手段は、記
憶手段と読み出し手段とを有していてもよい。別の一実
施態様として、データ発生手段は、適宜のデータ設定手
段であってもよい。別の一実施態様として、各音色ごと
の前記ゲートタイムデータとエンベロープパラメータデ
ータとを可変設定する手段を更に具えてよい。
て、ゲートタイムデータと、このゲートタイムデータに
対応する発音時間長を少なくとも設定するためのエンベ
ロープパラメータデータとが発生される。そして、発生
されたエンベロープパラメータデータに基づき前記発音
時間長に対応する発音時間を少なくとも設定するエンベ
ロープ信号を発生し、これにより発生楽音のエンベロー
プが設定される。これによっても上述と同様の作用・効
果を奏する。一実施態様として、データ発生手段は、記
憶手段と読み出し手段とを有していてもよい。別の一実
施態様として、データ発生手段は、適宜のデータ設定手
段であってもよい。別の一実施態様として、各音色ごと
の前記ゲートタイムデータとエンベロープパラメータデ
ータとを可変設定する手段を更に具えてよい。
【0009】
【実施例】以下、添付図面を参照してこの発明の一実施
例を詳細に説明しよう。図1において、リズム音イベン
ト発生部10は、打楽器音発音イベント信号を発生する
ためのものであり、打楽器音の発音指示操作を行うため
のドラムパッド又はキーボードなどの演奏操作子、ある
いは予め記憶した複数の打楽器音発音イベント信号を所
定の時間順序で読み出して発生するリズムシーケンサ、
あるいは外部からMIDIフォーマットで与えられる打
楽器音発音イベント信号を受け取るMIDIインタフェ
ースなど、何らかの打楽器音発音イベント信号を発生す
るものであればどのような構成のものを用いてもよい。
このリズム音イベント発生部10から発生される打楽器
音発音イベント信号には、一例として、発生すべき楽音
の音色を指示するボイスナンバVNと、その音の発音開
始を指示するキーオンイベントデータKONと、その音
の音量をコントロールするベロシティデータVELとを
含んでいる。
例を詳細に説明しよう。図1において、リズム音イベン
ト発生部10は、打楽器音発音イベント信号を発生する
ためのものであり、打楽器音の発音指示操作を行うため
のドラムパッド又はキーボードなどの演奏操作子、ある
いは予め記憶した複数の打楽器音発音イベント信号を所
定の時間順序で読み出して発生するリズムシーケンサ、
あるいは外部からMIDIフォーマットで与えられる打
楽器音発音イベント信号を受け取るMIDIインタフェ
ースなど、何らかの打楽器音発音イベント信号を発生す
るものであればどのような構成のものを用いてもよい。
このリズム音イベント発生部10から発生される打楽器
音発音イベント信号には、一例として、発生すべき楽音
の音色を指示するボイスナンバVNと、その音の発音開
始を指示するキーオンイベントデータKONと、その音
の音量をコントロールするベロシティデータVELとを
含んでいる。
【0010】制御部11は、リズム音イベント発生部1
0から与えられる発音イベント信号VN,KON,VE
Lに応じて、該イベントに係る楽音の発音を複数の楽音
発生チャンネルのいずれかに割り当てるための発音割り
当て処理や、メモリ読み出し処理その他各種の処理を行
うものであり、例えばマイクロコンピュータを含んでお
り、コンピュータの制御によってこれらの処理を行う。
音源部12は、複数の楽音発生チャンネルで独立に任意
の音色の楽音信号を発生することができるもので、その
ための楽音形成方式はどのようなものを採用してもよ
い。この実施例では、波形メモリ13に記憶した様々な
音色の楽音波形データのうち、個々のチャンネルに割り
当てられた楽音の音色に対応する楽音波形データをそれ
ぞれ読み出し、これに基づき楽音信号を発生するものと
している。発生された楽音信号はサウンドシステム14
にて発音される。
0から与えられる発音イベント信号VN,KON,VE
Lに応じて、該イベントに係る楽音の発音を複数の楽音
発生チャンネルのいずれかに割り当てるための発音割り
当て処理や、メモリ読み出し処理その他各種の処理を行
うものであり、例えばマイクロコンピュータを含んでお
り、コンピュータの制御によってこれらの処理を行う。
音源部12は、複数の楽音発生チャンネルで独立に任意
の音色の楽音信号を発生することができるもので、その
ための楽音形成方式はどのようなものを採用してもよ
い。この実施例では、波形メモリ13に記憶した様々な
音色の楽音波形データのうち、個々のチャンネルに割り
当てられた楽音の音色に対応する楽音波形データをそれ
ぞれ読み出し、これに基づき楽音信号を発生するものと
している。発生された楽音信号はサウンドシステム14
にて発音される。
【0011】波形メモリ13に記憶した1つの音色の楽
音波形データについてその記憶例を説明すると、アタッ
ク部の複数周期波形についてはアタックエンベロープ付
きの波形データを記憶しており、それに続く繰り返し部
の1乃至複数周期波形については一定レベルに正規化さ
れた波形データを記憶している。音源部12では、発音
開始指示に応じてアタック部の波形データを読み出し、
その後、繰り返し部の波形データを繰り返し読み出す。
そして、音源部12では、各チャンネルに対応して与え
られるエンベロープパラメータデータに基づき減衰エン
ベロープ信号を形成し、繰り返し読み出しされた繰り返
し部の楽音信号に対して、この減衰エンベロープ信号に
よってエンベロープ付与する。
音波形データについてその記憶例を説明すると、アタッ
ク部の複数周期波形についてはアタックエンベロープ付
きの波形データを記憶しており、それに続く繰り返し部
の1乃至複数周期波形については一定レベルに正規化さ
れた波形データを記憶している。音源部12では、発音
開始指示に応じてアタック部の波形データを読み出し、
その後、繰り返し部の波形データを繰り返し読み出す。
そして、音源部12では、各チャンネルに対応して与え
られるエンベロープパラメータデータに基づき減衰エン
ベロープ信号を形成し、繰り返し読み出しされた繰り返
し部の楽音信号に対して、この減衰エンベロープ信号に
よってエンベロープ付与する。
【0012】音色データメモリ15は、複数の音色に関
して、その音色を形成するために使用する波形データを
指示するウェーブナンバWNと、その発音時間長に対応
するゲートタイムを特定するためのゲートタイムナンバ
GTNとをそれぞれ記憶している。この音色データメモ
リ15におけるメモリフォーマットの一例は図1のブロ
ック15中に図示したようである。すなわち、ボイスナ
ンバVNの各値1,2,3,…に対応して(ボイスナン
バVNをアドレスとして)、それぞれ独自の値からなる
ウェーブナンバWNとゲートタイムナンバGTNとをそ
れぞれ記憶している。
して、その音色を形成するために使用する波形データを
指示するウェーブナンバWNと、その発音時間長に対応
するゲートタイムを特定するためのゲートタイムナンバ
GTNとをそれぞれ記憶している。この音色データメモ
リ15におけるメモリフォーマットの一例は図1のブロ
ック15中に図示したようである。すなわち、ボイスナ
ンバVNの各値1,2,3,…に対応して(ボイスナン
バVNをアドレスとして)、それぞれ独自の値からなる
ウェーブナンバWNとゲートタイムナンバGTNとをそ
れぞれ記憶している。
【0013】エンベロープパラメータメモリ16は、ゲ
ートタイムナンバGTNの各値1,2,3,…に対応し
て(ゲートタイムナンバGTNをアドレスとして)、発
音時間長に対応するゲートタイムデータGTDと、この
ゲートタイムデータに対応する発音時間長を少なくとも
設定するためのエンベロープパラメータデータEGPと
をそれぞれ記憶している。このエンベロープパラメータ
メモリ16のメモリフォーマットの一例は図1のブロッ
ク16中に図示したようである。例えば、ゲートタイム
ナンバGTNの各値1,2,3,…は、それぞれ所定の
ゲートタイム(発音時間長)t1,t2,t3,…に対
応しており、ゲートタイムデータGTDとしてはこのゲ
ートタイム(発音時間長)t1,t2,t3,…を指示
するデータが記憶されている。また、エンベロープパラ
メータデータEGPの一例は、そのゲートタイム(発音
時間長)t1,t2,t3,…を設定するゲートタイム
設定パラメータデータと、発音開始時から減衰開始時ま
での時間t1x,t2x,t3x,…を設定する減衰開
始時間設定パラメータデータとを含んでいる。音源部1
2では、このエンベロープパラメータデータEGP(減
衰開始時間t1x,t2x,t3x,…とゲートタイム
t1,t2,t3,…を設定するパラメータ)に基づ
き、発音開始時から減衰開始時間t1x,t2x,t3
x,…までは一定レベルを維持し、その後減衰を開始し
てゲートタイムt1,t2,t3,…が終了したとき減
衰を終了する特性のエンベロープ信号を発生する。
ートタイムナンバGTNの各値1,2,3,…に対応し
て(ゲートタイムナンバGTNをアドレスとして)、発
音時間長に対応するゲートタイムデータGTDと、この
ゲートタイムデータに対応する発音時間長を少なくとも
設定するためのエンベロープパラメータデータEGPと
をそれぞれ記憶している。このエンベロープパラメータ
メモリ16のメモリフォーマットの一例は図1のブロッ
ク16中に図示したようである。例えば、ゲートタイム
ナンバGTNの各値1,2,3,…は、それぞれ所定の
ゲートタイム(発音時間長)t1,t2,t3,…に対
応しており、ゲートタイムデータGTDとしてはこのゲ
ートタイム(発音時間長)t1,t2,t3,…を指示
するデータが記憶されている。また、エンベロープパラ
メータデータEGPの一例は、そのゲートタイム(発音
時間長)t1,t2,t3,…を設定するゲートタイム
設定パラメータデータと、発音開始時から減衰開始時ま
での時間t1x,t2x,t3x,…を設定する減衰開
始時間設定パラメータデータとを含んでいる。音源部1
2では、このエンベロープパラメータデータEGP(減
衰開始時間t1x,t2x,t3x,…とゲートタイム
t1,t2,t3,…を設定するパラメータ)に基づ
き、発音開始時から減衰開始時間t1x,t2x,t3
x,…までは一定レベルを維持し、その後減衰を開始し
てゲートタイムt1,t2,t3,…が終了したとき減
衰を終了する特性のエンベロープ信号を発生する。
【0014】波形アドレスメモリ17は、ウェーブナン
バWNの各値1,2,3,…に対応して(ウェーブナン
バWNをアドレスとして)、波形メモリ13における各
種打楽器音色の波形データの先頭アドレスWAD1,W
AD2,WAD3…を指示するアドレスデータを記憶し
ている。そのメモリフォーマットの一例は図1のブロッ
ク17中に図示したようである。波形メモリ13のメモ
リフォーマットの一例は図1のブロック13中に図示し
たようであり、ウェーブナンバWNの各値1,2,3,
…に対応する各種打楽器音色の波形データをそれぞれ記
憶しており、各波形の先頭アドレスは、上述の波形アド
レスメモリ17からウェーブナンバWNに応じて読み出
した先頭アドレスデータWAD1,WAD2,WAD3
…によって指示される。操作パネル部18は、様々な選
択・設定機能に対応する操作子と表示器を含むものであ
る。例えば、各音色ごとのゲートタイムデータとエンベ
ロープパラメータデータとを可変設定するための手段が
操作パネル部18に含まれている。
バWNの各値1,2,3,…に対応して(ウェーブナン
バWNをアドレスとして)、波形メモリ13における各
種打楽器音色の波形データの先頭アドレスWAD1,W
AD2,WAD3…を指示するアドレスデータを記憶し
ている。そのメモリフォーマットの一例は図1のブロッ
ク17中に図示したようである。波形メモリ13のメモ
リフォーマットの一例は図1のブロック13中に図示し
たようであり、ウェーブナンバWNの各値1,2,3,
…に対応する各種打楽器音色の波形データをそれぞれ記
憶しており、各波形の先頭アドレスは、上述の波形アド
レスメモリ17からウェーブナンバWNに応じて読み出
した先頭アドレスデータWAD1,WAD2,WAD3
…によって指示される。操作パネル部18は、様々な選
択・設定機能に対応する操作子と表示器を含むものであ
る。例えば、各音色ごとのゲートタイムデータとエンベ
ロープパラメータデータとを可変設定するための手段が
操作パネル部18に含まれている。
【0015】次に、制御部11による処理の一例につい
て説明する。図2はメインルーチンを略示しており、所
定の初期化処理を行った後、リズム処理とパネル処理の
ルーチンを繰り返す。リズム処理では、リズム音イベン
ト発生部10から発音イベント信号VN,KON,VE
Lが与えられたかどうかを検出し、イベントがあった場
合は、該イベントに対応する音色の楽音信号を或るチャ
ンネルに発音割り当てし、その発音を開始する処理を行
う。パネル処理は、操作パネル部18におけるスイッチ
操作等を検出し、これに応じた処理を行う。
て説明する。図2はメインルーチンを略示しており、所
定の初期化処理を行った後、リズム処理とパネル処理の
ルーチンを繰り返す。リズム処理では、リズム音イベン
ト発生部10から発音イベント信号VN,KON,VE
Lが与えられたかどうかを検出し、イベントがあった場
合は、該イベントに対応する音色の楽音信号を或るチャ
ンネルに発音割り当てし、その発音を開始する処理を行
う。パネル処理は、操作パネル部18におけるスイッチ
操作等を検出し、これに応じた処理を行う。
【0016】リズム処理の一例を図3によって説明す
る。ステップ20では、発音イベント信号が与えられた
かをチェックする。イベントがなければ、このリズム処
理をすぐに終了し、メインルーチンにリターンする。イ
ベントがあったならば、ステップ21に行き、各チャン
ネルの割り当てフラグCH(0)〜CH(15)を調
べ、“0”のチャンネルを探す。各フラグCH(0)〜
CH(15)は合計16個の各チャンネルにそれぞれ対
応しており、発音割り当て中のチャンネルでは“1”が
立ち、割り当てされていない空きチャンネルでは“0”
である。空きチャンネルが有る場合は、ステップ22で
YESに分岐し、次のステップ23で、1つの空きチャ
ンネルを示すデータを割り当てチャンネルレジスタAC
Hにストアする。これにより、レジスタACHにストア
されたチャンネルデータによって示されたチャンネルに
対して、今回のイベントに関わる楽音が割り当てること
が決定される。
る。ステップ20では、発音イベント信号が与えられた
かをチェックする。イベントがなければ、このリズム処
理をすぐに終了し、メインルーチンにリターンする。イ
ベントがあったならば、ステップ21に行き、各チャン
ネルの割り当てフラグCH(0)〜CH(15)を調
べ、“0”のチャンネルを探す。各フラグCH(0)〜
CH(15)は合計16個の各チャンネルにそれぞれ対
応しており、発音割り当て中のチャンネルでは“1”が
立ち、割り当てされていない空きチャンネルでは“0”
である。空きチャンネルが有る場合は、ステップ22で
YESに分岐し、次のステップ23で、1つの空きチャ
ンネルを示すデータを割り当てチャンネルレジスタAC
Hにストアする。これにより、レジスタACHにストア
されたチャンネルデータによって示されたチャンネルに
対して、今回のイベントに関わる楽音が割り当てること
が決定される。
【0017】空きチャンネルがない場合は、ステップ2
2でNOに分岐し、次のステップ24で、各チャンネル
に対応するトランケートカウンタCNT(0)〜CNT
(15)のカウント値をチェックし、このカウント値が
最大値のチャンネルを検出し、このチャンネルを示すデ
ータを割り当てチャンネルレジスタACHにストアす
る。トランケートカウンタCNT(0)〜CNT(1
5)は、当該チャンネルに楽音の割り当てがなされたと
き、つまり発音開始時に“0”にリセットされ、以後、
タイマインタラプトがかけられる毎にインクリメントさ
れる。従って、最も古く発音イベントが発生したチャン
ネルに関するカウント値が最も大きい。この最も古く発
音イベントが発生したチャンネルをトランケートチャン
ネルと指定して該チャンネルでの古い発音を解消し、新
たな発音イベントに関わる音を該チャンネルに割り当て
るための「トランケート処理」をこのステップ24で行
う。
2でNOに分岐し、次のステップ24で、各チャンネル
に対応するトランケートカウンタCNT(0)〜CNT
(15)のカウント値をチェックし、このカウント値が
最大値のチャンネルを検出し、このチャンネルを示すデ
ータを割り当てチャンネルレジスタACHにストアす
る。トランケートカウンタCNT(0)〜CNT(1
5)は、当該チャンネルに楽音の割り当てがなされたと
き、つまり発音開始時に“0”にリセットされ、以後、
タイマインタラプトがかけられる毎にインクリメントさ
れる。従って、最も古く発音イベントが発生したチャン
ネルに関するカウント値が最も大きい。この最も古く発
音イベントが発生したチャンネルをトランケートチャン
ネルと指定して該チャンネルでの古い発音を解消し、新
たな発音イベントに関わる音を該チャンネルに割り当て
るための「トランケート処理」をこのステップ24で行
う。
【0018】次のステップ25では、割り当てチャンネ
ルレジスタACHにストアされたチャンネル番号に係る
チャンネル、すなわち今回のイベントに関わる楽音が割
り当てることが決定されたチャンネル、に対してその古
い割り当て音の発音を解消するためのダンプ処理を行う
ことを指示する。音源部12では、この指示に応じてA
CHのチャンネルで発音ダンプ処理を行う。なお、ステ
ップ23のルートを通るときはこのステップ25をジャ
ンプしてもよい。次のステップ26では、今回の発音イ
ベント信号に含まれるボイスナンバVNに応じて、音色
データメモリ15からウェーブナンバWNとゲートタイ
ムナンバGTNを読み出す。
ルレジスタACHにストアされたチャンネル番号に係る
チャンネル、すなわち今回のイベントに関わる楽音が割
り当てることが決定されたチャンネル、に対してその古
い割り当て音の発音を解消するためのダンプ処理を行う
ことを指示する。音源部12では、この指示に応じてA
CHのチャンネルで発音ダンプ処理を行う。なお、ステ
ップ23のルートを通るときはこのステップ25をジャ
ンプしてもよい。次のステップ26では、今回の発音イ
ベント信号に含まれるボイスナンバVNに応じて、音色
データメモリ15からウェーブナンバWNとゲートタイ
ムナンバGTNを読み出す。
【0019】次のステップ27では、音色データメモリ
15から読み出されたウェーブナンバWNに応じて、波
形アドレスメモリ17から今回の発音イベントに係る音
色の先頭アドレスデータWADを読み出す。次のステッ
プ28では、音色データメモリ15から読み出されたゲ
ートタイムナンバGTNに応じて、エンベロープパラメ
ータメモリ16から今回の発音イベントに係る音色に対
応するゲートタイムデータGTD及びエンベロープパラ
メータデータEGP(減衰開始時間設定パラメータとゲ
ートタイム設定パラメータ)を読み出す。
15から読み出されたウェーブナンバWNに応じて、波
形アドレスメモリ17から今回の発音イベントに係る音
色の先頭アドレスデータWADを読み出す。次のステッ
プ28では、音色データメモリ15から読み出されたゲ
ートタイムナンバGTNに応じて、エンベロープパラメ
ータメモリ16から今回の発音イベントに係る音色に対
応するゲートタイムデータGTD及びエンベロープパラ
メータデータEGP(減衰開始時間設定パラメータとゲ
ートタイム設定パラメータ)を読み出す。
【0020】次のステップ29では、上記各ステップで
読み出した先頭アドレスデータWAD及びエンベロープ
パラメータデータEGPと、今回の発音イベント信号に
含まれるベロシティデータVELとキーオンイベントデ
ータKONとを、割り当てチャンネルレジスタACHに
ストアされたチャンネルに割り当てることを指定して、
音源部12に送出する。これに基づき、音源部12で
は、当該割り当てチャンネルにおいて、波形メモリ13
における上記送出された先頭アドレスデータWADに対
応するアドレスから波形データを読み出すことを開始
し、かつ、上記送出されたエンベロープパラメータデー
タEGPに対応するエンベロープ信号を形成し、これに
応じて該波形データに対応する楽音信号の音量エンベロ
ープを設定すると共に、上記送出されたベロシティデー
タVELに応じて楽音信号の音量を制御する。こうし
て、割り当てたチャンネルでの楽音発生が開始される。
なお、新たな音の発生処理は、当該割り当てチャンネル
における前記ステップ25によるダンプ処理が終了した
後に行われるのは言うまでもない。
読み出した先頭アドレスデータWAD及びエンベロープ
パラメータデータEGPと、今回の発音イベント信号に
含まれるベロシティデータVELとキーオンイベントデ
ータKONとを、割り当てチャンネルレジスタACHに
ストアされたチャンネルに割り当てることを指定して、
音源部12に送出する。これに基づき、音源部12で
は、当該割り当てチャンネルにおいて、波形メモリ13
における上記送出された先頭アドレスデータWADに対
応するアドレスから波形データを読み出すことを開始
し、かつ、上記送出されたエンベロープパラメータデー
タEGPに対応するエンベロープ信号を形成し、これに
応じて該波形データに対応する楽音信号の音量エンベロ
ープを設定すると共に、上記送出されたベロシティデー
タVELに応じて楽音信号の音量を制御する。こうし
て、割り当てたチャンネルでの楽音発生が開始される。
なお、新たな音の発生処理は、当該割り当てチャンネル
における前記ステップ25によるダンプ処理が終了した
後に行われるのは言うまでもない。
【0021】次のステップ30では、前記ステップ28
で読み出したゲートタイムデータGTDを、レジスタA
CHにストアされたチャンネル番号によって指示される
今回割り当てチャンネルに対応するゲートタイムカウン
タGT(ACH)にセットする。このゲートタイムカウ
ンタGT( )は、各チャンネル毎に設けられており、
当該チャンネルに割り当てられた楽音の発音イベント発
生時においてこのステップ30において該楽音の音色に
対応するゲートタイムデータがそれぞれセットされるこ
とになる。次のステップ31では、レジスタACHにス
トアされたチャンネル番号によって指示される今回割り
当てチャンネルに対応するフラグCH(ACH)を
“1”にセットし、該チャンネルが割り当て済みとなっ
たことを示す。また、今回割り当てチャンネルに対応す
るトランケートカウンタCNT(ACH)のカウント値
を0にリセットする。その後、メインルーチンにリター
ンする。
で読み出したゲートタイムデータGTDを、レジスタA
CHにストアされたチャンネル番号によって指示される
今回割り当てチャンネルに対応するゲートタイムカウン
タGT(ACH)にセットする。このゲートタイムカウ
ンタGT( )は、各チャンネル毎に設けられており、
当該チャンネルに割り当てられた楽音の発音イベント発
生時においてこのステップ30において該楽音の音色に
対応するゲートタイムデータがそれぞれセットされるこ
とになる。次のステップ31では、レジスタACHにス
トアされたチャンネル番号によって指示される今回割り
当てチャンネルに対応するフラグCH(ACH)を
“1”にセットし、該チャンネルが割り当て済みとなっ
たことを示す。また、今回割り当てチャンネルに対応す
るトランケートカウンタCNT(ACH)のカウント値
を0にリセットする。その後、メインルーチンにリター
ンする。
【0022】メインルーチンの実行中に、所定のタイマ
クロックに従って規則的にインタラプトがかけられ、図
4に示すようなタイマ割込み処理が実行される。まず、
ステップ40では、各チャンネルのトランケートカウン
タCNT(0)〜CNT(15)のカウント値をインク
リメントする。次に、ステップ41では、チャンネル変
数iを「0」にセットする。次のステップ42では、チ
ャンネル変数iが「16」より小さいかをチェックす
る。YESであればステップ43に行き、チャンネルi
のフラグCH(i)が“1”かを調べる。YESであれ
ばステップ44に行き、チャンネルiのゲートタイムカ
ウンタGT(i)のカウント値を1減少する。次のステ
ップ45では該ゲートタイムカウンタGT(i)のカウ
ント値が0に達したかを調べる。YESであれば、ステ
ップ46に行き、該チャンネルiのフラグCH(i)を
“0”にリセットする。その後、ステップ47に行き、
チャンネル変数iを1増加してステップ42〜47の処
理を繰り返す。ステップ43又は45がNOの場合は、
直ちにステップ47に行き、チャンネル変数iを1増加
してステップ42〜47の処理を繰り返す。全チャンネ
ルについて処理を終えると、ステップ42がNOとな
り、タイマ割込み処理を終了し、メインルーチンに復帰
する。
クロックに従って規則的にインタラプトがかけられ、図
4に示すようなタイマ割込み処理が実行される。まず、
ステップ40では、各チャンネルのトランケートカウン
タCNT(0)〜CNT(15)のカウント値をインク
リメントする。次に、ステップ41では、チャンネル変
数iを「0」にセットする。次のステップ42では、チ
ャンネル変数iが「16」より小さいかをチェックす
る。YESであればステップ43に行き、チャンネルi
のフラグCH(i)が“1”かを調べる。YESであれ
ばステップ44に行き、チャンネルiのゲートタイムカ
ウンタGT(i)のカウント値を1減少する。次のステ
ップ45では該ゲートタイムカウンタGT(i)のカウ
ント値が0に達したかを調べる。YESであれば、ステ
ップ46に行き、該チャンネルiのフラグCH(i)を
“0”にリセットする。その後、ステップ47に行き、
チャンネル変数iを1増加してステップ42〜47の処
理を繰り返す。ステップ43又は45がNOの場合は、
直ちにステップ47に行き、チャンネル変数iを1増加
してステップ42〜47の処理を繰り返す。全チャンネ
ルについて処理を終えると、ステップ42がNOとな
り、タイマ割込み処理を終了し、メインルーチンに復帰
する。
【0023】従って、イベント発生時に図3のステップ
30の処理によりゲートタイムカウンタGT(i)に初
期セットされたゲートタイムデータが順次減少され、発
音開始時から当該ゲートタイムに対応する発音時間が経
過したとき、該ゲートタイムカウンタGT(i)の値が
0になり、対応するチャンネル割り当てフラグCH
(i)が“0”にリセットされることになる。楽音の発
音時間長は、前述のようにエンベロープパラメータデー
タEGPによって設定され、従って、各音色に対応して
それぞれ異なる長さからなるものである。この各音色に
対応してそれぞれ異なる長さからなる発音時間長が、ゲ
ートタイムカウンタGT(i)においてシミュレートさ
れる。従って、各チャンネルiに割り当てた楽音を発音
している最中は、対応するチャンネル割り当てフラグC
H(i)は“1”を保持し、その発音が終了したことが
シミュレートされると、対応するチャンネル割り当てフ
ラグCH(i)は“0”にリセットされることになる。
30の処理によりゲートタイムカウンタGT(i)に初
期セットされたゲートタイムデータが順次減少され、発
音開始時から当該ゲートタイムに対応する発音時間が経
過したとき、該ゲートタイムカウンタGT(i)の値が
0になり、対応するチャンネル割り当てフラグCH
(i)が“0”にリセットされることになる。楽音の発
音時間長は、前述のようにエンベロープパラメータデー
タEGPによって設定され、従って、各音色に対応して
それぞれ異なる長さからなるものである。この各音色に
対応してそれぞれ異なる長さからなる発音時間長が、ゲ
ートタイムカウンタGT(i)においてシミュレートさ
れる。従って、各チャンネルiに割り当てた楽音を発音
している最中は、対応するチャンネル割り当てフラグC
H(i)は“1”を保持し、その発音が終了したことが
シミュレートされると、対応するチャンネル割り当てフ
ラグCH(i)は“0”にリセットされることになる。
【0024】これにより、減衰発音時間が比較的長い音
色であっても、該音色の楽音が発音中であればそのチャ
ンネル割り当てフラグCH(i)が“1”を保持するよ
う管理されることになり、図3のステップ21における
空きチャンネル検索処理において、該音色の楽音が発音
中であればその割り当てチャンネルが空きチャンネルと
誤検出されることがなくなる。また、減衰発音時間が比
較的短い音色にあっては、該音色の楽音の発音終了に対
応して速やかにそのチャンネル割り当てフラグCH
(i)が“0”となるよう管理されることになり、図3
のステップ21における空きチャンネル検索処理におい
て、適正に空きチャンネルとして検出され、発音してい
ないチャンネルを無駄に占有し続けることがなくなる。
色であっても、該音色の楽音が発音中であればそのチャ
ンネル割り当てフラグCH(i)が“1”を保持するよ
う管理されることになり、図3のステップ21における
空きチャンネル検索処理において、該音色の楽音が発音
中であればその割り当てチャンネルが空きチャンネルと
誤検出されることがなくなる。また、減衰発音時間が比
較的短い音色にあっては、該音色の楽音の発音終了に対
応して速やかにそのチャンネル割り当てフラグCH
(i)が“0”となるよう管理されることになり、図3
のステップ21における空きチャンネル検索処理におい
て、適正に空きチャンネルとして検出され、発音してい
ないチャンネルを無駄に占有し続けることがなくなる。
【0025】次に、各音色ごとのゲートタイムデータG
TDとエンベロープパラメータデータEGPとを可変設
定する処理について説明する。この処理は、メインルー
チンにおけるパネル処理において実行される。パネル処
理におけるゲートタイムデータGTDとエンベロープパ
ラメータデータEGPの可変設定に関連する処理を抜き
出して示すと図5のようである。図6は操作パネル部1
8の一例を示しており、ディスプレイ50と、アップ/
ダウンスイッチからなる各種の入力キー51,52,5
3を有している。ゲートタイムデータGTDとエンベロ
ープパラメータデータEGPを可変設定するモードで
は、図6に示すように、ボイスナンバVNに対応する設
定画面をディスプレイ50で表示する。この画面におい
て、ボイスナンバVNの値と、それに対応して設定され
ているウェーブナンバWNに対応するウェーブネーム
(「バスドラム」等の打楽器音色名)と、それに対応し
て設定されているゲートタイムナンバGTNに対応する
ゲートタイムの値(「t1」等の時間長を示すデータ)
が表示される。
TDとエンベロープパラメータデータEGPとを可変設
定する処理について説明する。この処理は、メインルー
チンにおけるパネル処理において実行される。パネル処
理におけるゲートタイムデータGTDとエンベロープパ
ラメータデータEGPの可変設定に関連する処理を抜き
出して示すと図5のようである。図6は操作パネル部1
8の一例を示しており、ディスプレイ50と、アップ/
ダウンスイッチからなる各種の入力キー51,52,5
3を有している。ゲートタイムデータGTDとエンベロ
ープパラメータデータEGPを可変設定するモードで
は、図6に示すように、ボイスナンバVNに対応する設
定画面をディスプレイ50で表示する。この画面におい
て、ボイスナンバVNの値と、それに対応して設定され
ているウェーブナンバWNに対応するウェーブネーム
(「バスドラム」等の打楽器音色名)と、それに対応し
て設定されているゲートタイムナンバGTNに対応する
ゲートタイムの値(「t1」等の時間長を示すデータ)
が表示される。
【0026】そして、ページキー51を操作することに
より、ボイスナンバVNの値を変更し、これにより画面
を切り換えることができるようになっている。これは図
5のステップ54の処理によって行われる。また、キー
52を操作することにより、ウェーブナンバWNの値を
変更し、これにより該ボイスナンバVNに対して割り当
てる音色名を変更することができるようになっている。
これは図5のステップ55の処理によって行われる。す
なわち、キー52の操作により、ウェーブナンバWNの
値が変更されると、ディスプレイ50で表示しているウ
ェーブネームを、変更後のウェーブナンバWNの値に対
応する打楽器音色名に変えると共に、ディスプレイ50
で現在表示しているボイスナンバVNに対応する音色デ
ータメモリ15のウェーブナンバWNの記憶値を書き換
える。
より、ボイスナンバVNの値を変更し、これにより画面
を切り換えることができるようになっている。これは図
5のステップ54の処理によって行われる。また、キー
52を操作することにより、ウェーブナンバWNの値を
変更し、これにより該ボイスナンバVNに対して割り当
てる音色名を変更することができるようになっている。
これは図5のステップ55の処理によって行われる。す
なわち、キー52の操作により、ウェーブナンバWNの
値が変更されると、ディスプレイ50で表示しているウ
ェーブネームを、変更後のウェーブナンバWNの値に対
応する打楽器音色名に変えると共に、ディスプレイ50
で現在表示しているボイスナンバVNに対応する音色デ
ータメモリ15のウェーブナンバWNの記憶値を書き換
える。
【0027】また、キー53を操作することにより、ゲ
ートタイムナンバGTNの値を変更し、これにより該ボ
イスナンバVNに対して割り当てた音色の発音時間長を
可変設定することができるようになっている。これは図
5のステップ56の処理によって行われる。すなわち、
キー53の操作により、ゲートタイムナンバGTNの値
が変更されると、ディスプレイ50で表示しているゲー
トタイムを、変更後のゲートタイムナンバGTNの値に
対応する発音時間長に変えると共に、ディスプレイ50
で現在表示しているボイスナンバVNに対応する音色デ
ータメモリ15のゲートタイムナンバGTNの記憶値を
書き換える。
ートタイムナンバGTNの値を変更し、これにより該ボ
イスナンバVNに対して割り当てた音色の発音時間長を
可変設定することができるようになっている。これは図
5のステップ56の処理によって行われる。すなわち、
キー53の操作により、ゲートタイムナンバGTNの値
が変更されると、ディスプレイ50で表示しているゲー
トタイムを、変更後のゲートタイムナンバGTNの値に
対応する発音時間長に変えると共に、ディスプレイ50
で現在表示しているボイスナンバVNに対応する音色デ
ータメモリ15のゲートタイムナンバGTNの記憶値を
書き換える。
【0028】上記では、音色データメモリ15における
記憶を書き換えるようにしているが、該音色データメモ
リ15における記憶は変更せずに、制御部11内での処
理によってゲートタイムナンバGTN等の設定変更を行
うようにしてもよい。また、ゲートタイムナンバGTN
の設定変更によらずに、エンベロープパラメータメモリ
16に記憶するゲートタイムデータGTDの値(t1,
t2,t3,…等)そのものを可変設定するようにして
もよいのは勿論である。また、上記実施例では、楽音の
音色に対応して、ゲートタイムデータと、このゲートタ
イムデータに対応する発音時間長を少なくとも設定する
ためのエンベロープパラメータデータとを発生するデー
タ発生手段として、記憶手段(エンベロープパラメータ
メモリ16)を使用しているが、これに限らず、データ
設定スイッチ等その他のデータ発生手段であってもよ
い。例えば、ユーザがエンベロープを自由に設定する場
合は、ユーザによって設定されたエンベロープに従って
発音時間長を計算し、ゲートタイムデータを算出するよ
うにしてもよい。
記憶を書き換えるようにしているが、該音色データメモ
リ15における記憶は変更せずに、制御部11内での処
理によってゲートタイムナンバGTN等の設定変更を行
うようにしてもよい。また、ゲートタイムナンバGTN
の設定変更によらずに、エンベロープパラメータメモリ
16に記憶するゲートタイムデータGTDの値(t1,
t2,t3,…等)そのものを可変設定するようにして
もよいのは勿論である。また、上記実施例では、楽音の
音色に対応して、ゲートタイムデータと、このゲートタ
イムデータに対応する発音時間長を少なくとも設定する
ためのエンベロープパラメータデータとを発生するデー
タ発生手段として、記憶手段(エンベロープパラメータ
メモリ16)を使用しているが、これに限らず、データ
設定スイッチ等その他のデータ発生手段であってもよ
い。例えば、ユーザがエンベロープを自由に設定する場
合は、ユーザによって設定されたエンベロープに従って
発音時間長を計算し、ゲートタイムデータを算出するよ
うにしてもよい。
【0029】また、上記実施例では、ゲートタイムデー
タGTDをエンベロープパラメータデータEGPと共に
記憶/発生しているが、ゲートタイムデータGTDのみ
を記憶/発生するようにしてもよい。例えば、波形メモ
リ13において、パーカッシブ系の減衰エンベロープを
付与済みの波形データを記憶している場合は、ゲートタ
イムデータGTDのみを記憶/発生するようにしてもよ
いのである。また、上記実施例では、ゲートタイムナン
バGTNに応じて、ゲートタイムのみならずエンベロー
プの特性まで決まってしまうが、これに限らないのは勿
論である。例えば、発音時間長が同じであってもエンベ
ロープ形状を異ならせる場合もあり、そのような場合
は、ゲートタイムナンバGTNに応じてゲートタイムの
みを指示し、エンベロープ特性は別途に指示するように
してよい。
タGTDをエンベロープパラメータデータEGPと共に
記憶/発生しているが、ゲートタイムデータGTDのみ
を記憶/発生するようにしてもよい。例えば、波形メモ
リ13において、パーカッシブ系の減衰エンベロープを
付与済みの波形データを記憶している場合は、ゲートタ
イムデータGTDのみを記憶/発生するようにしてもよ
いのである。また、上記実施例では、ゲートタイムナン
バGTNに応じて、ゲートタイムのみならずエンベロー
プの特性まで決まってしまうが、これに限らないのは勿
論である。例えば、発音時間長が同じであってもエンベ
ロープ形状を異ならせる場合もあり、そのような場合
は、ゲートタイムナンバGTNに応じてゲートタイムの
みを指示し、エンベロープ特性は別途に指示するように
してよい。
【0030】なお、上記実施例では、ベロシティデータ
VELによって設定される全体音量レベルによって、エ
ンベロープレベルが全体的に上下にシフトされ、これに
よってベロシティデータVELが小さい場合ほど実際の
減衰発音時間が幾分に短くなることを考慮にいれていな
い。そこで、この点を考慮にいれて、ゲートタイムデー
タを、ベロシティデータVEL等の音量制御データによ
って適宜スケーリングするようにしてもよい。この発明
に従って発音状態管理のために使用するゲートタイムデ
ータは、実際の発音時間長に正確に対応している必要は
なく、概ね対応関係にあればその目的を達成することが
できるものである。また、トランケート処理の仕方は上
記実施例に示したものに限らず、どのようなやり方でも
よい。この発明は、リズム音すなわち打楽器音に限ら
ず、他の音を発生する場合においても適用することがで
きる。
VELによって設定される全体音量レベルによって、エ
ンベロープレベルが全体的に上下にシフトされ、これに
よってベロシティデータVELが小さい場合ほど実際の
減衰発音時間が幾分に短くなることを考慮にいれていな
い。そこで、この点を考慮にいれて、ゲートタイムデー
タを、ベロシティデータVEL等の音量制御データによ
って適宜スケーリングするようにしてもよい。この発明
に従って発音状態管理のために使用するゲートタイムデ
ータは、実際の発音時間長に正確に対応している必要は
なく、概ね対応関係にあればその目的を達成することが
できるものである。また、トランケート処理の仕方は上
記実施例に示したものに限らず、どのようなやり方でも
よい。この発明は、リズム音すなわち打楽器音に限ら
ず、他の音を発生する場合においても適用することがで
きる。
【0031】
【発明の効果】 以上説明したように、この発明によれ
ば、発生する楽音の音色に対応して、その発音時間長に
対応するゲートタイムデータを発生し、楽音の発音開始
に応答して、このゲートタイムデータに対応する時間の
カウントを行い、このカウント出力に基づき、各チャン
ネル毎の前記ゲートタイムデータに対応する時間の経過
に応じて当該チャンネルを発音終了した空きチャンネル
とするようにしたので、実際の発音時間に適正に対応し
てチャンネルが占有され、かつ空きチャンネルが適正に
判定されることになり、簡便な構成によって適正な発音
割り当て処理を行うことができるようになる。加えて、
発音開始の古いチャンネル順にトランケートチャンネル
を指定し、新たな楽音をいずれかのチャンネルに割り当
てるべきとき、空きチャンネルがないならば、指定され
たトランケートチャンネルに新たな楽音を割り当てるこ
とができる。従って、発音割り当て処理に際して、空き
チャンネルを無駄に占有することや、発音中のチャンネ
ルを誤って割り当て消去する等の不都合が起こらないよ
うにすることができるようになる。
ば、発生する楽音の音色に対応して、その発音時間長に
対応するゲートタイムデータを発生し、楽音の発音開始
に応答して、このゲートタイムデータに対応する時間の
カウントを行い、このカウント出力に基づき、各チャン
ネル毎の前記ゲートタイムデータに対応する時間の経過
に応じて当該チャンネルを発音終了した空きチャンネル
とするようにしたので、実際の発音時間に適正に対応し
てチャンネルが占有され、かつ空きチャンネルが適正に
判定されることになり、簡便な構成によって適正な発音
割り当て処理を行うことができるようになる。加えて、
発音開始の古いチャンネル順にトランケートチャンネル
を指定し、新たな楽音をいずれかのチャンネルに割り当
てるべきとき、空きチャンネルがないならば、指定され
たトランケートチャンネルに新たな楽音を割り当てるこ
とができる。従って、発音割り当て処理に際して、空き
チャンネルを無駄に占有することや、発音中のチャンネ
ルを誤って割り当て消去する等の不都合が起こらないよ
うにすることができるようになる。
【図1】この発明に係る電子楽器の一実施例を示すブロ
ック図。
ック図。
【図2】図1の制御部において実行する処理のメインル
ーチンを略示するフロー図。
ーチンを略示するフロー図。
【図3】図2におけるリズム処理の一例を略示するフロ
ー図。
ー図。
【図4】タイマ割込み処理の一例を略示するフロー図。
【図5】図2におけるパネル処理の一例を略示するフロ
ー図。
ー図。
【図6】図1における操作パネル部の一例を略示する
図。
図。
10…リズム音イベント発生部、11…制御部、12…
音源部、13…波形メモリ、15…音色データメモリ、
16…エンベロープパラメータメモリ。
音源部、13…波形メモリ、15…音色データメモリ、
16…エンベロープパラメータメモリ。
Claims (2)
- 【請求項1】 各音色ごとに、発音時間長に対応するゲ
ートタイムデータを記憶する記憶手段と、 発生する楽音の音色に対応して前記記憶手段から前記ゲ
ートタイムデータを読み出す読み出し手段と、各チャンネル毎に、当該チャンネルに割り当てられた 楽
音の発音開始に応答して、前記読み出されたゲートタイ
ムデータに対応する時間のカウントを行うカウント手段
と、 前記カウント手段のカウント出力に基づき、各チャンネ
ル毎の前記ゲートタイムデータに対応する時間の経過に
応じて当該チャンネルを発音終了した空きチャンネルと
する発音管理手段と、 発音開始の古いチャンネル順にトランケートチャンネル
を指定し、新たな楽音をいずれかのチャンネルに割り当
てるべきとき、空きチャンネルがないならば、指定され
たトランケートチャンネルに新たな楽音を割り当てる発
音割当手段と を具えた電子楽器。 - 【請求項2】 楽音の音色に対応して、ゲートタイムデ
ータと、このゲートタイムデータに対応する発音時間長
を少なくとも設定するためのエンベロープパラメータデ
ータとを発生するデータ発生手段と、 前記発生されたエンベロープパラメータデータに基づき
前記発音時間長に対応する発音時間を少なくとも設定す
るエンベロープ信号を発生し、これにより発生楽音のエ
ンベロープを設定するエンベロープ設定手段と、各チャンネル毎に、当該チャンネルに割り当てられた 楽
音の発音開始に応答して、前記発生されたゲートタイム
データに対応する時間のカウントを行うカウント手段
と、 前記カウント手段のカウント出力に基づき、各チャンネ
ル毎の前記ゲートタイムデータに対応する時間の経過に
応じて当該チャンネルを発音終了した空きチャンネルと
する発音管理手段と、 発音開始の古いチャンネル順にトランケートチャンネル
を指定し、新たな楽音をいずれかのチャンネルに割り当
てるべきとき、空きチャンネルがないならば、 指定され
たトランケートチャンネルに新たな楽音を割り当てる発
音割当手段と を具えた電子楽器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP02571992A JP3389609B2 (ja) | 1992-01-16 | 1992-01-16 | 電子楽器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP02571992A JP3389609B2 (ja) | 1992-01-16 | 1992-01-16 | 電子楽器 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05188939A JPH05188939A (ja) | 1993-07-30 |
JP3389609B2 true JP3389609B2 (ja) | 2003-03-24 |
Family
ID=12173605
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP02571992A Expired - Fee Related JP3389609B2 (ja) | 1992-01-16 | 1992-01-16 | 電子楽器 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3389609B2 (ja) |
-
1992
- 1992-01-16 JP JP02571992A patent/JP3389609B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH05188939A (ja) | 1993-07-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS6157640B2 (ja) | ||
EP2405421B1 (en) | Editing of drum tone color in drum kit | |
JP3372124B2 (ja) | 電子楽器 | |
JP3389609B2 (ja) | 電子楽器 | |
JPH07319466A (ja) | 電子楽器 | |
JPH09179559A (ja) | 自動伴奏装置及び自動伴奏方法 | |
JP2900405B2 (ja) | 電子楽器 | |
JPH0644192B2 (ja) | 自動リズム演秦装置 | |
US6274798B1 (en) | Apparatus for and method of setting correspondence between performance parts and tracks | |
JP4318194B2 (ja) | 電子楽器の自動伴奏装置及び自動伴奏方法 | |
JPH06259064A (ja) | 電子楽器 | |
JP2555569B2 (ja) | 電子楽器 | |
JP3609045B2 (ja) | 自動演奏装置 | |
JP2715795B2 (ja) | 発音割当手段を有する楽音合成装置 | |
JP3275341B2 (ja) | 楽音発生装置 | |
JP3013836B2 (ja) | リズム楽音制御装置 | |
JP3104702B2 (ja) | リズム演奏装置 | |
JPH0515279B2 (ja) | ||
JP3539480B2 (ja) | 楽音信号発生装置、楽音信号発生方法及び楽音信号を発生させるプログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP2630268B2 (ja) | リズム音発生装置 | |
JP4000986B2 (ja) | 表示制御装置及びプログラム | |
JP3013796B2 (ja) | リズム演奏装置 | |
JP3630266B2 (ja) | 自動伴奏装置 | |
JP3067145B2 (ja) | エンベロープ発生制御装置、放音形態制御装置、エンベロープ発生制御方法及び放音形態制御方法 | |
JP2600741B2 (ja) | リズムパターンプログラム装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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 (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090117 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |