(57)【要約】【課題】所望に応じた自然なエンベロープ波形を発生させることができるエンベロープ発生装置を提供すること。【解決手段】本発明のエンベロープ発生装置によれば、エンベロープ波形を発生させるために目標値設定手段により設定される各段の目標値のうち、少なくとも１の段に対する目標値が、発生されるエンベロープ波形における所定時期の値に基づいて決まる値に設定される。このように、目標値を、エンベロープ波形における所定時期の値に基づいて決めることができるので、例えば、リリース部が多段化されている音量のエンベロープ波形を発生する場合に、消音指示の入力タイミングに応じて音量が一時的に増加することを防止することができ、その際には、データの読み飛ばし等を伴わないので、所望に応じた自然なエンベロープ波形を生成できる。【選択図】図３
2011191551.tif 000002
【特許請求の範囲】
【請求項１】
楽音が発音されてから消音されるまでの間の、音量、ピッチ、又はカットオフ周波数の時間変化を表す複数段からなるエンベロープ波形を発生するエンベロープ発生装置であって、
前記エンベロープ波形における各段の開始からその段の目標値に到達するまでの期間を記憶する期間記憶手段と、
前記エンベロープ波形における各段の目標値を設定する目標値設定手段と、
発音指示が入力された場合に、前記期間記憶手段に記憶された各段の期間と前記目標値設定手段により設定された各段の目標値とに基づき、前記エンベロープ波形を時系列に発生するエンベロープ発生手段とを備え、
前記目標値設定手段は、前記各段の目標値のうち、少なくとも１の段に対する目標値を、前記エンベロープ発生手段により発生されたエンベロープ波形における所定時期の値に基づいて決まる値に設定することを特徴とするエンベロープ発生装置。
【請求項２】
前記目標値設定手段は、前記各段の目標値のうち、少なくとも１の段に対する目標値を、前記エンベロープ発生手段により発生されたエンベロープ波形における所定時期の値に対する相対値に設定することを特徴とする請求項１記載のエンベロープ発生装置。
【請求項３】
前記目標値設定手段は、前記各段の目標値のうち、少なくとも１の段に対する目標値を、当該目標値に対応する段が開始されたときの前記エンベロープ波形の値に対する相対値に設定することを特徴とする請求項２に記載のエンベロープ発生装置。
【請求項４】
前記目標値設定手段は、前記各段の目標値のうち、少なくとも１の段に対する目標値を、前記エンベロープ発生手段により発生されたエンベロープ波形における所定時期の値に所定値を加えた値に設定することを特徴とする請求項１記載のエンベロープ発生装置。
【請求項５】
前記目標値設定手段は、前記各段の目標値のうち、少なくとも１の段に対する目標値を、当該目標値に対応する段が開始されたときの前記エンベロープ波形の値に所定値を加えた値に設定することを特徴とする請求項４に記載のエンベロープ発生装置。
【請求項６】
前記目標値設定手段は、消音指示が入力された場合に、該消音指示が入力されたことにより開始される段の目標値を、前記エンベロープ発生手段により発生されたエンベロープ波形における該消音指示の入力タイミングに応じた値に基づいて決まる値に設定することを特徴とする請求項１記載のエンベロープ発生装置。
【請求項７】
前記目標値設定手段は、消音指示が入力された場合に、該消音指示が入力されたことにより開始される段の目標値を、前記エンベロープ発生手段により発生されたエンベロープ波形における該消音指示の入力タイミングに応じた値に対する相対値に設定することを特徴とする請求項６記載のエンベロープ発生装置。
【請求項８】
前記目標値設定手段は、消音指示が入力された場合に、該消音指示が入力されたことにより開始される段の目標値を、前記エンベロープ発生手段により発生されたエンベロープ波形における該消音指示の入力タイミングに応じた値に所定値を加えた値に設定することを特徴とする請求項６記載のエンベロープ発生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はエンベロープ発生装置に関し、特に、所望に応じた自然なエンベロープ波形を発生させることができるエンベロープ発生装置に関する。
【背景技術】
【０００２】
図６（ａ）は、従来のエンベロープ発生装置により発生される楽音のエンベロープ波形の一例を示す波形図である。なお、図６（ａ）〜（ｃ）において、縦軸は音量のレベルであり、０（ゼロ）を原点とし、上方へ向かう程、音量が大きくなることを示す。一方、横軸は、時間を示す。
【０００３】
図６（ａ）に示すエンベロープ波形は、音量（楽音の振幅）の時間変化を表すエンベロープ波形である。このエンベロープ波形は、４段、即ち、発音指示としてのノートオンの入力から音量が最大値となるまでの立ち上がりを規定するアタック部Ａｔと、音量の最大値から持続音（サスティン）のレベルまでの減衰を規定するディケイ部Ｄｅと、ディケイ部Ｄｅに続く減衰を規定するサスティン部Ｓｕと、消音指示としてのノートオフが入力された場合に該ノートオフの入力から消音される（即ち、音量がゼロになる）までの減衰を規定するリリース部Ｒｅとから構成されるものである。
【０００４】
従来のエンベロープ発生装置は、各段（アタック部Ａｔ、ディケイ部Ｄｅ、サスティン部Ｓｕ、リリース部Ｒｅ）で目標とするレベル（目標値）と、各段の開始から目標値に到達するまでの期間とに基づいて、エンベロープ波形の発生を制御する。具体的に、ノートオンが入力された場合に、アタック期間Ｔ１の間に、ゼロである初期値レベルＬ０から、目標値として規定されているレベルＬ１まで立ち上がるアタック部Ａｔを時系列に発生し、次いで、ディケイ期間Ｔ２の間に、レベルＬ１から、目標値として規定されているレベルＬ２まで減衰するディケイ部Ｄｅを時系列に発生し、次いで、サスティン期間Ｔ３の間に、レベルＬ２から、目標値として規定されているレベルＬ３（図６（ａ）に示す例ではゼロ）まで減衰するサスティン部Ｓｕを時系列に発生する。そして、ノートオフが入力されると、サスティン部Ｓｕにおけるノートオフの入力に応じたタイミングからリリース部Ｒｅを発生し、リリース期間Ｔ４の間に、目標値として規定されているレベルＬ４（即ち、ゼロ）まで減衰するエンベロープ波形を発生する。
【０００５】
図６（ｂ）は、従来のエンベロープ発生装置により発生される楽音のエンベロープ波形の別例を示す波形図である。図６（ｂ）に示すエンベロープ波形もまた、上述した図６（ａ）に示したものと同様、音量の時間変化を表すエンベロープ波形であるが、ノートオフの入力に伴って発生するリリース部のエンベロープ波形が、第１リリース部Ｒｅ１と第２リリース部Ｒｅ２との２段に多段化されている。このように、リリースエンベロープ波形（リリース部のエンベロープ波形）を多段化することにより、複雑な減衰特性を有する楽音を発生できる。
【０００６】
このように、リリースエンベロープ波形が多段化されている場合の制御もまた、各段（第１リリース部Ｒｅ１、第２リリース部Ｒｅ２）の目標値と、各段の開始から目標値に到達するまでの期間とに基づいて行われる。具体的に、ノートオフが入力されると、サスティン部Ｓｕにおけるノートオフの入力に応じたタイミングから第１リリース部Ｒｅ１を発生し、第１リリース部Ｒｅ１に対して規定されている期間Ｔ４（１）の間に、第１リリース部Ｒｅ１の目標値として規定されているレベルＬ４（１）までの減衰を行い、次いで、第２リリース部Ｒｅ２に対して規定されている期間Ｔ４（２）の間に、第２リリース部Ｒｅ２の目標値として規定されているレベルＬ４（２）、即ち、ゼロまでの減衰を行う。
【０００７】
しかし、従来のエンベロープ発生装置により、リリース部が多段化されたエンベロープ波形を発生させる場合には、次のような問題を生じ得る。図６（ｃ）は、従来の一般的なエンベロープ発生装置によりリリース部が多段化されたエンベロープ波形を発生させる際に生じ得る問題点を説明する波形図である。図６（ｃ）に示すように、ノートオフを入力するタイミングが遅くなり、そのときの音量レベルが第１リリース部Ｒｅ１の目標値であるレベルＬ４（１）よりも小さくなったとき、第１リリース部Ｒｅ１が、レベルＬ４（１）へ向かって音量が増大するエンベロープ波形となる。かかる状況が生じると、アタック部Ａｔによって到達した最大の音量から、次第に音量が減衰していく途中で不自然に音量が増大するため、不自然な聴感を与える。また、ピッチやカットオフ周波数のエンベロープ波形を発生する場合も、各段の目標値が何にも基づかない絶対的な値に設定されるので、上述した音量のエンベロープ波形の場合と同様の問題が生じる。
【０００８】
上述した問題に対し、特許文献１は、操作終了（即ち、ノートオフされた）時点におけるエンベロープ波形の出力値と、リリース部の各段のレベルデータとを順次比較し、レベルデータが、操作終了時点におけるエンベロープ波形の出力値より大きいステップを省略して、減衰途中の音量を増大させるレベルデータの読み飛ばしを行うことによって上記問題の解決を図っている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特許第３１２３１３２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、特許文献１に記載される手法は、レベルデータを意図的に読み飛ばすものであるので、本来意図していた（即ち、所望の）リリース部のエンベロープ波形を得られないという問題点があった。
【００１１】
本発明は、上述した問題点を解決するためになされたものであり、所望に応じた自然なエンベロープ波形を発生させることができるエンベロープ発生装置を提供することを目的としている。
【課題を解決するための手段および発明の効果】
【００１２】
この目的を達成するために、請求項１記載のエンベロープ発生装置によれば、各段の開始からその段の目標値に到達するまでの期間と、目標値設定手段により設定される各段の目標値とに基づいて、楽音が発音されてから消音されるまでの間のエンベロープ波形が、エンベロープ発生手段により時系列に発生される。ここで、目標値設定手段により設定される各段の目標値のうち、少なくとも１の段に対する目標値が、該エンベロープ発生手段により発生されるエンベロープ波形における所定時期の値に基づいて決まる値に設定される。
【００１３】
よって、エンベロープ波形における所定時期の値に基づいて目標値を決めることができる。これにより、例えば、リリース部が多段化されている音量のエンベロープ波形を発生する場合に、消音指示（ノートオフ）の入力タイミングに応じて音量が一時的に増加することを防止したり、ピッチのエンベロープ波形においてどのタイミングで消音指示が入力されても最終的に至るピッチが同じピッチになってしまうことを防止したり、ある段の目標レベルを基準として他の段の目標レベルを適切に設定したりすることができる。そして、その際には、データの読み飛ばし等を伴わないので、所望に応じた（即ち、意図通りの）自然なエンベロープ波形を生成できるという効果がある。
【００１４】
請求項２記載のエンベロープ発生装置によれば、請求項１記載のエンベロープ発生装置の奏する効果に加えて、次の効果を奏する。エンベロープ波形における各段の目標値のうち、少なくとも１の段に対する目標値が、目標値設定手段により、エンベロープ発生手段により発生されたエンベロープ波形における所定時期の値に対する相対値に設定されるので、容易な制御によって所望に応じた自然なエンベロープ波形を生成できるという効果がある。
【００１５】
請求項３記載のエンベロープ発生装置によれば、請求項２記載のエンベロープ発生装置の奏する効果に加えて、次の効果を奏する。エンベロープ波形における各段の目標値のうち、少なくとも１の段に対する目標値が、目標値設定手段により、当該目標値（即ち、設定対象の目標値）に対応する段が開始されたときのエンベロープ波形の値に対する相対値に設定されるので、生成対象となる段を所望に応じたエンベロープ波形とすることができるという効果がある。
【００１６】
請求項４記載のエンベロープ発生装置によれば、請求項１記載のエンベロープ発生装置の奏する効果に加えて、次の効果を奏する。エンベロープ波形における各段の目標値のうち、少なくとも１の段に対する目標値が、目標値設定手段により、エンベロープ発生手段により発生されたエンベロープ波形における所定時期の値に所定値を加えた値に設定されるので、容易な制御によって所望に応じた自然なエンベロープ波形を生成できるという効果がある。
【００１７】
請求項５記載のエンベロープ発生装置によれば、請求項４記載のエンベロープ発生装置の奏する効果に加えて、次の効果を奏する。多段化されたエンベロープ波形における各段の目標値のうち、少なくとも１の段に対する目標値が、目標値設定手段により、当該目標値（即ち、設定対象の目標値）に対応する段が開始されたときのエンベロープ波形の値に所定値を加えた値に設定されるので、生成対象となる段を所望に応じたエンベロープ波形とすることができるという効果がある。
【００１８】
請求項６記載のエンベロープ発生装置によれば、請求項１記載のエンベロープ発生装置の奏する効果に加えて、次の効果を奏する。消音指示が入力された場合には、該消音指示が入力されたことにより開始される段の目標値が、目標値設定手段により、該消音指示の入力タイミングに応じたエンベロープ波形の値に基づいて決まる値に設定されるので、消音指示の入力タイミングに応じたエンベロープ波形の値から、自然なリリースエンベロープ波形を生成することができるという効果がある。
【００１９】
請求項７記載のエンベロープ発生装置によれば、請求項６記載のエンベロープ発生装置の奏する効果に加えて、次の効果を奏する。消音指示が入力されたことにより開始される段の目標値が、目標値設定手段により、該消音指示の入力タイミングに応じたエンベロープ波形の値に対する相対値に設定されるので、自然なリリースエンベロープ波形を容易な制御により生成することができるという効果がある。
【００２０】
請求項８記載のエンベロープ発生装置によれば、請求項６記載のエンベロープ発生装置の奏する効果に加えて、次の効果を奏する。消音指示が入力されたことにより開始される段の目標値が、目標値設定手段により、該消音指示の入力タイミングに応じたエンベロープ波形の値に所定値を加えた値に設定されるので、自然なリリースエンベロープ波形を容易な制御により生成することができるという効果がある。
【図面の簡単な説明】
【００２１】
【図１】（ａ）は、本発明の一実施形態であるエンベロープ発生装置を搭載する電子楽器の構成を示すブロック図であり、（ｂ）は、電子楽器で行われる発音処理を機能的に示すブロック図である。
【図２】エンベロープ発生処理を示すフローチャートである。
【図３】（ａ）は、第１リリース部の目標レベルを絶対エンベロープ形式により設定した場合に生じ得る音量のエンベロープ波形を示す波形図であり、（ｂ）は、第１リリース部の目標レベルを相対エンベロープ形式により設定した場合に発生する音量のエンベロープ波形の一例を示す波形図であり、（ｃ）は、第１リリース部の目標レベルを差分エンベロープ形式により設定した場合に発生する音量のエンベロープ波形の一例を示す波形図である。
【図４】（ａ）は、リリース部の目標レベルを絶対エンベロープ形式により設定した場合に発生するピッチのエンベロープ波形の一例を示す波形図であり、（ｂ）は、リリース部の目標レベルを相対エンベロープ形式により設定した場合に発生するピッチのエンベロープ波形の一例を示す波形図であり、（ｃ）は、リリース部の目標レベルを差分エンベロープ形式により設定した場合に発生するピッチのエンベロープ波形の一例を示す波形図である。
【図５】（ａ）は、アタック部の目標レベルを絶対エンベロープ形式により設定し、以降の各段の目標レベルを、それぞれ、前段の目標レベルに基づく相対エンベロープ形式により設定した場合に発生する音量のエンベロープ波形の一例を示す波形図であり、（ｂ）は、（ａ）に示したエンベロープ波形におけるアタック部の目標レベルを調整することにより得られるエンベロープ波形を示す波形図である。
【図６】（ａ）は、従来のエンベロープ発生装置により発生される楽音のエンベロープ波形の一例を示す波形図であり、（ｂ）は、従来のエンベロープ発生装置により発生される楽音のエンベロープ波形の別例を示す波形図であり、（ｃ）は、従来のエンベロープ発生装置によりリリース部が多段化されたエンベロープ波形を発生させる際に生じ得る問題点を説明する波形図である。
【発明を実施するための形態】
【００２２】
以下、本発明の好ましい実施例について、添付図面を参照して説明する。図１（ａ）は、本発明の一実施形態であるエンベロープ発生装置を搭載する電子楽器１の構成を示すブロック図である。電子楽器１は、ユーザが鍵盤２１などを用いて行う演奏操作に合った楽音を発生することができるものである。
【００２３】
図１（ａ）に示すように、電子楽器１は、ＣＰＵ１１と、ＲＯＭ１２と、ＲＡＭ１３と、フラッシュメモリ１４と、操作パネル１５と、鍵盤２１を接続するためのインターフェース１６と、音源１７と、デジタルアナログコンバータ（Ｄ／Ａ）１８と、波形メモリ１９とを有しており、波形メモリ１９を除く各部１１〜１８は、バスライン２０を介して接続されている。波形メモリ１９は、音源１８に接続されている。
【００２４】
ＣＰＵ１１は、ＲＯＭ１２やＲＡＭ１３に記憶される固定値データや制御プログラムに従って、電子楽器１の各部を制御する中央制御装置である。ＣＰＵ１１は、タイマ１１ａを内蔵している。タイマ１１ａは、クロック信号を計数することにより、時刻を計時する。後述するエンベロープ発生処理（図２参照）において各段のエンベロープ波形が発生してからの経過時間は、このタイマ１１ａにより計時される。
【００２５】
ＲＯＭ１２は、書き替え不能なメモリであって、ＣＰＵ１１に実行させる制御プログラム１２ａや、この制御プログラム１２ａが実行される際にＣＰＵ１１により参照される固定値データ（図示せず）などが記憶される。なお、後述するエンベロープ発生処理（図２参照）は、制御プログラム１２ａにより実行される。また、ＲＯＭ１２には、各エンベロープ波形（ピッチ、カットオフ周波数、音量）における各段の目標レベル（目標値）を設定するための値のデフォルト値と、各段における開始から目標レベルに到達するまでの期間のデフォルト値とが記憶されている。
【００２６】
ＲＡＭ１３は、書き替え可能なメモリであり、ＣＰＵ１１が制御プログラム１２ａを実行するにあたり、各種のデータを一時的に記憶するためのワークエリア（図示せず）を有している。
【００２７】
フラッシュメモリ１４は、書き換え可能な不揮発性のメモリであり、設定値メモリ１４ａを有している。設定値メモリ１４ａは、ユーザが操作パネル１５を用いて設定した各ユーザ設定値を記憶する領域である。この設定値メモリ１４に記憶されるユーザ設定値には、各エンベロープ波形（ピッチ、カットオフ周波数、音量）における各段の目標レベルを設定するための値のユーザ設定値と、各段における開始から目標レベルに到達するまでの期間のユーザ設定値とが含まれる。
【００２８】
操作パネル１５は、演奏者によって操作される複数の操作子（図示せず）と、その操作子によって設定されたパラメータや演奏に応じた状態などが表示されるディスプレイ（図示せず）とを有している。主な操作子としては、例えば、発生される楽音の音色を選択するスイッチや、音量を設定するボリュームや、ディスプレイに表示される各種設定画面の切り替え指示や各設定画面において設定値などを入力するための各種スイッチ、等が挙げられる。
【００２９】
インターフェース１６は、鍵盤２１を接続するためのＭＩＤＩインターフェースである。なお、ＵＳＢインターフェースをインターフェース１６としてもよい。インターフェース１６には、ＭＩＤＩ規格に適合する通信機能を有する鍵盤２１が接続される。鍵盤２１は、複数の白鍵、黒鍵を設け、いずれかの鍵が操作された（押鍵された）場合にノートオン情報、押鍵された鍵の音高情報などを出力し、鍵が離された（離鍵された）場合は、ノートオフ情報を出力する。
【００３０】
音源１７は、鍵盤２１が押鍵されたことに基づきＣＰＵ１１から供給される楽音の発生の開始を指示する情報に応じて、波形メモリ１９に記憶されている楽音波形を読み出し、指示に応じた音高、音量、音色の楽音を発生し、その後、鍵盤２１が離鍵されたことに基づきＣＰＵ１１から供給される楽音の発生の停止を指示する情報に応じて、対応する楽音の発生を停止する。なお、波形メモリ１９は、種々の音色（例えば、ピアノやギターなど）の楽音波形を記憶するものであり、各音色の楽音波形を音高に応じて記憶している。
【００３１】
また、音源１７は、発生した楽音に対し、本実施形態のエンベロープ発生装置により発生されたエンベロープ波形を付与して出力する。音源１７から出力されたデジタル信号である楽音は、Ｄ／Ａ１８に入力され、Ｄ／Ａ１８によりアナログ信号に変換されて出力される。Ｄ／Ａ１８には、アンプ３１が接続されており、Ｄ／Ａ１８により変換されたアナログ信号の楽音はアンプ３１により増幅され、アンプ３１に接続されたスピーカ３２から放音される。
【００３２】
図１（ｂ）は、電子楽器１で行われる発音処理を機能的に示すブロック図である。鍵盤２１が押鍵された場合には、鍵盤２１から、ノートオン情報、押鍵された鍵の音高情報などがＣＰＵ１１の機能の一つである演奏情報処理部１１１へ供給される。一方、鍵盤２１が離鍵されると、鍵盤２１から、ノートオフ情報が演奏情報処理部１１１へ供給される。
【００３３】
演奏情報処理部１１１は、鍵盤２１から供給された情報に基づき、楽音の発生の開始を指示する情報（鍵盤２１が押鍵された場合）、又は、楽音の発生の停止を指示する情報（鍵盤２１が離鍵された場合）を、音源１７の一部であるウェーブジェネレータ（ＷＧ）１７１に供給する。
【００３４】
一方、ＣＰＵ１１の機能の一つであるＰＥＰ設定部１１２は、ピッチのエンベロープ波形の生成に必要な各パラメータ、即ち、ピッチのエンベロープ波形における各段の開始から目標レベルに到達するまでの期間と、各段の目標レベルを設定するための値とを、ＣＰＵ１１の機能の一つであるＰＥ発生部１１５に供給する。
【００３５】
ＰＥ発生部１１５は、ＰＥＰ設定部１１２から供給されたパラメータに基づき、ピッチのエンベロープ波形を時分割で制御することによって時系列に発生させ、ウェーブジェネレータ（ＷＧ）１７１に供給する。
【００３６】
また、ＣＰＵ１１の機能の一つであるＴＶＦＥＰ設定部１１３は、カットオフ周波数のエンベロープ波形の生成に必要な各パラメータ、即ち、カットオフ周波数のエンベロープ波形における各段の開始から目標レベルに到達するまでの期間と、各段の目標レベルを設定するための値とを、ＣＰＵ１１の機能の一つであるＴＶＦＥ発生部１１６に供給する。
【００３７】
ＴＶＦＥ発生部１１６は、ＴＶＦＥＰ設定部１１３から供給されたパラメータに基づき、カットオフ周波数のエンベロープ波形を時分割で制御することによって時系列に発生させ、音源１７の一部であるタイムバリアントフィルタ（ＴＶＦ）１７２に供給する。
【００３８】
また、ＣＰＵ１１の機能の一つであるＴＶＡＥＰ設定部１１４は、音量のエンベロープ波形の生成に必要な各パラメータ、即ち、音量のエンベロープ波形における各段の開始から目標レベルに到達するまでの期間と、各段の目標レベルを設定するための値とを、ＣＰＵ１１の機能の一つであるＴＶＡＥ発生部１１７に供給する。
【００３９】
ＴＶＡＥ発生部１１７は、ＴＶＡＥＰ設定部１１４から供給されたパラメータに基づき、音量のエンベロープ波形を時分割で制御することによって時系列に発生させ、音源１７の一部であるタイムバリアントアンプ（ＴＶＡ）１７３に供給する。
【００４０】
ＷＧ１７１は、演奏情報処理部１１１から供給された情報に応じた楽音波形を波形メモリ１９から読み出し、読み出した楽音波形に対し、ＰＥ発生部１１５から供給されたピッチのエンベロープ波形に基づいてピッチの時間変化を制御し、制御後の楽音波形をＴＶＦ１７２に供給する。
【００４１】
ＴＶＦ１７２は、ＷＧ１７１から供給された楽音波形に対し、ＴＶＦＥ発生部１１６から供給されたカットオフ周波数のエンベロープ波形に基づいてカットオフ周波数の時間変化を制御し、制御後の楽音波形をＴＶＡ１７３に供給する。
【００４２】
ＴＶＡ１７３は、ＴＶＦ１７２から供給された楽音波形に対し、ＴＶＡＥ発生部１１７から供給された音量のエンベロープ波形に基づいて音量の時間変化を制御し、制御後の楽音波形をＤ／Ａ１８に供給する。
【００４３】
Ｄ／Ａ１８は、ＴＶＡ１７３から供給された楽音波形（デジタル信号）をアナログの楽音波形（アナログ信号）に変換して、アンプ３１へ供給する。アンプ３１は、Ｄ／Ａ１８から供給されたアナログの楽音波形を増幅し、スピーカ３２から放音する。
【００４４】
次に、図２を参照して、上記構成を有する電子楽器１に搭載されるエンベロープ発生装置が実行する処理について説明する。なお、本実施形態のエンベロープ発生装置は、ＣＰＵ１１と、ＲＯＭ１２と、ＲＡＭ１３と、フラッシュメモリ１４とから構成される。
【００４５】
図２は、ＣＰＵ１１が実行するエンベロープ発生処理を示すフローチャートである。このエンベロープ発生処理は、ＰＥＰ設定部１１２及びＰＥ発生部１１５において実行され、ピッチのエンベロープ波形を発生する処理であると共に、ＴＶＦＥＰ設定部１１３及びＴＶＦＥ発生部１１６において実行され、カットオフ周波数のエンベロープ波形を発生する処理でもある。さらに、エンベロープ発生処理は、ＴＶＡＥＰ設定部１１４及びＴＶＡＥ発生部１１７において実行され、音量のエンベロープ波形を発生する処理でもある。
【００４６】
エンベロープ発生処理は、鍵盤２１が押鍵されてノートオン情報が入力されると起動し、まず、変数ＥＰをゼロに初期化する（Ｓ１）。なお、変数ＥＰは、楽音が発生してから消音するまでのエンベロープ波形（ピッチ、カットオフ周波数、音量）における、何段目のエンベロープ波形であるかを示す変数である。
【００４７】
例えば、本実施形態のエンベロープ発生装置から発生されるエンベロープ波形が、アタック部、ディケイ部、サスティン部、及びリリース部の４段から構成される場合には、変数ＥＰは０〜３の範囲の値を取り得る。かかる場合には、変数ＥＰの値が０（ゼロ）であれば、アタック部に対する制御を行い、変数ＥＰの値が１であれば、ディケイ部に対する制御を行い、変数ＥＰの値が２であれば、サスティン部に対する制御を行い、変数ＥＰの値が３であれば、リリース部に対する制御を行う。
【００４８】
一方、本実施形態のエンベロープ発生装置から発生されるエンベロープ波形が、アタック部、ディケイ部、サスティン部、及び２段のリリース部（第１リリース部、第２リリース部）の５段から構成される場合には、変数ＥＰは０〜４の範囲の値を取り得る。かかる場合には、変数ＥＰの値が０（ゼロ）であれば、アタック部に対する制御を行い、変数ＥＰの値が１であれば、ディケイ部に対する制御を行い、変数ＥＰの値が２であれば、サスティン部に対する制御を行い、変数ＥＰの値が３であれば、第１リリース部に対する制御を行い、変数ＥＰの値が４であれば、第２リリース部に対する制御を行う。
【００４９】
Ｓ１の処理後、変数ＣＬを初期値のレベルに設定する（Ｓ２）。なお、変数ＣＬは、エンベロープ波形における現在のエンベロープレベル（即ち、エンベロープ波形の出力値）を示す変数である。各エンベロープ波形（ピッチ、カットオフ周波数、音量）の初期値のレベルは、ユーザ設定値が設定値メモリ１４ａに記憶されている場合には、そのユーザ設定値が、Ｓ２において初期値のレベルとして設定される。一方、ユーザ設定値が設定値メモリ１４ａに記憶されていない場合には、ＲＯＭ１２に記憶されているデフォルト値が、Ｓ２において初期値のレベルとして設定される。
【００５０】
Ｓ２の処理後、ＥＬ＿ＳＴＡＴＥ［ＥＰ］＝Ａｂｓであるか否かを判定する（Ｓ３）。なお、ＥＬ＿ＳＴＡＴＥ［ＥＰ］は、変数ＥＰの値が示す段においてエンベロープ波形がどの形式で処理されるかを示す値である。
【００５１】
本実施形態では、ＥＬ＿ＳＴＡＴＥ［ＥＰ］の値として、目標レベル（目標値）を絶対レベルで設定する形式（この形式を「絶対エンベロープ形式」と称す）で処理することを示す「Ａｂｓ」、目標レベルをある値に対する相対レベルとして設定する形式（この形式を「相対エンベロープ形式」と称す）で処理することを示す「Ｒｅｌ」、及び、目標レベルをある値に対する差分レベルとして設定する形式（この形式を「差分エンベロープ形式」と称す）で処理することを示す「Ｄｅｆ」とが設けられており、段毎にこれらの値のうちのいずれかの値が設定されている。ＥＬ＿ＳＴＡＴＥ［ＥＰ］の値は、各段に対して予め規定されていてもよいし、ユーザ設定により適宜設定するように構成してもよい。
【００５２】
つまり、Ｓ３では、変数ＥＰの値が示す段においてエンベロープ波形の処理を絶対エンベロープ形式により行うか否かを判定する。Ｓ３の判定が肯定される場合には（Ｓ３：Ｙｅｓ）、変数ＥＬに、ＢＰＡ［ＥＰ］の値を設定し（Ｓ４）、Ｓ５の処理へ移行する。なお、変数ＥＬは、処理すべき段（即ち、変数ＥＰの値が示す段）が向かうレベル、即ち、目標レベル（目標値）を示す変数である。
【００５３】
また、ＢＰＡ［ＥＰ］は、変数ＥＰの値が示す段において絶対レベルで設定されている目標レベルである。なお、変数ＥＰの値が示す段においてエンベロープ波形の処理を絶対エンベロープ形式で行う場合に、ユーザにより設定された絶対レベルの値が設定値メモリ１４ａに記憶されていれば、そのユーザ設定値がＳ４において使用され、ユーザ設定がされていなければ、ＲＯＭ１２にデフォルト値として記憶されている値がＳ４において使用される。
【００５４】
一方、Ｓ３の判定が否定される場合には（Ｓ３：Ｎｏ）、ＥＬ＿ＳＴＡＴＥ［ＥＰ］＝Ｒｅｌであるか否かを判定する（Ｓ１１）。つまり、Ｓ１１では、変数ＥＰの値が示す段においてエンベロープ波形の処理を相対エンベロープ形式により行うか否かを判定する。Ｓ１１の判定が肯定される場合には（Ｓ１１：Ｙｅｓ）、変数ＥＬに、ＣＬ×ＢＰＲ［ＥＰ］の値を設定し（Ｓ１２）、Ｓ５の処理へ移行する。
【００５５】
なお、ＢＰＲ［ＥＰ］は、変数ＥＰの値が示す段において目標レベル（目標値）を得るために、エンベロープレベルに乗算すべき設定割合である。Ｓ１２の処理は、変数ＥＰの値が示す段に対する処理を開始する毎に実行される処理であるので、このＳ１２では、これから処理を開始する段の開始時点におけるエンベロープレベルに、ＢＰＲ［ＥＰ］を乗算することにより、変数ＥＰの値が示す段における目標レベルの設定を行っている。
【００５６】
変数ＥＰの値が示す段においてエンベロープ波形の処理を相対エンベロープ形式で行う場合に、ユーザにより設定されたエンベロープレベルに乗算すべき設定割合の値が設定値メモリ１４ａに記憶されていれば、そのユーザ設定値がＳ１２において使用され、ユーザ設定がされていなければ、ＲＯＭ１２にデフォルト値として記憶されている値がＳ１２において使用される。
【００５７】
また、Ｓ１１の判定が否定される場合には（Ｓ１１：Ｎｏ）、ＥＬ＿ＳＴＡＴＥ［ＥＰ］＝Ｄｅｆ、即ち、変数ＥＰの値が示す段におけるエンベロープ波形の処理は、差分エンベロープ形式により行われるので、変数ＥＬに、ＣＬ＋ＢＰＤ［ＥＰ］の値を設定し（Ｓ１３）、Ｓ５の処理へ移行する。
【００５８】
なお、ＢＰＤ［ＥＰ］は、変数ＥＰの値が示す段において目標レベル（目標値）を得るために、エンベロープレベルに加算すべき差分値である。Ｓ１３の処理は、変数ＥＰの値が示す段に対する処理を開始する毎に実行される処理であるので、このＳ１３では、これから処理を開始する段の開始時点におけるエンベロープレベルに、ＢＰＤ［ＥＰ］を加算する（つまり、開始時点のエンベロープレベルから差分を取る）ことにより、変数ＥＰの値が示す段における目標レベルの設定を行っている。なお、ＢＰＤ［ＥＰ］は、正の値であっても、ゼロであっても、負の値であってもよい。
【００５９】
変数ＥＰの値が示す段においてエンベロープ波形の処理を差分エンベロープ形式で行う場合に、ユーザにより設定されたエンベロープレベルに対する差分の値が設定値メモリ１４ａに記憶されていれば、そのユーザ設定値がＳ１３において使用され、ユーザ設定されていなければ、ＲＯＭ１２にデフォルト値として記憶されている値がＳ１３において使用される。
【００６０】
このように、本実施形態のエンベロープ発生処理によれば、変数ＥＰの値が示す段に対する処理を開始する毎に、その段におけるエンベロープ波形の処理をどの形式で行うかに応じてＳ４、Ｓ１２、又はＳ１３のいずれかの処理が行われ、それによって、変数ＥＬの値として、各エンベロープ波形（ピッチ、カットオフ周波数、音量）における各段の目標レベルが適宜設定される。
【００６１】
Ｓ５では、変数ＣＴをゼロに初期化する（Ｓ５）。変数ＣＴは、変数ＥＰの値が示す段に対する処理が開始されてからの経過時間を示す変数である。なお、変数ＣＴを、エンベロープ発生処理が開始されてからの経過時間とすることもできる。その際には、変数ＣＴをゼロに初期化する処理は、エンベロープ発生処理が起動されたタイミングで初期化すればよい。
【００６２】
Ｓ５の処理後、タイマ１１ａによる計時を開始する（Ｓ６）。Ｓ６の処理によって計時が開始されると、図示されない定期的な割り込み処理により、タイマ１１ａにより計時された値に基づき変数ＣＴの値が更新される。
【００６３】
Ｓ６の処理後、時分割エンベロープ処理を実行する（Ｓ７）。時分割エンベロープ処理（Ｓ７）では、Ｓ４、Ｓ１２、又はＳ１３のいずれかの処理により設定された目標レベル（即ち、変数ＥＬの値）と、変数ＥＰの値が示す段の開始から目標レベルに到達するまでの期間であるＢＴ［ＥＰ］の値とに基づき、変数ＥＰの値が示す段に対する処理が開始されてからの経過時間（即ち、変数ＣＴの値）におけるエンベロープ波形（ピッチ、カットオフ周波数、音量）を発生する。この時分割エンベロープ処理（Ｓ７）により発生されたエンベロープ波形は、音源１７（ＷＧ１７１，ＴＶＦ１７２，ＴＶＡ１７３）に供給される。
【００６４】
Ｓ７の処理後、鍵盤２１が離鍵されてノートオフ情報が入力されたか否かを判定する（Ｓ８）。Ｓ８の判定が否定される場合には（Ｓ８：Ｎｏ）、即ち、押鍵中である場合には、変数ＣＴが、ＢＴ［ＥＰ］に等しい又はそれ以上の値であるかを判定する（Ｓ９）。
【００６５】
ＢＴ［ＥＰ］は、上述した通り、変数ＥＰの値が示す段の開始から目標レベルに到達するまでの期間である。この期間は、対応する期間のユーザ設定値が設定値メモリ１４ａに記憶されている場合には、そのユーザ設定値であり、ユーザ設定値が設定値メモリ１４ａに記憶されていない場合には、ＲＯＭ１２に記憶されているデフォルト値である。なお、変数ＣＴを、エンベロープ発生処理が開始されてからの経過時間とした場合には、ＢＴ［ＥＰ］を、エンベロープ発生処理が開始されてから変数ＥＰの値が示す段の目標レベルに到達するまでの期間とすればよい。
【００６６】
Ｓ９の判定が否定される場合には（Ｓ９：Ｎｏ）、Ｓ７の処理へ戻る。一方で、Ｓ９の判定が肯定される場合には（Ｓ９：Ｙｅｓ）、変数ＥＰが、ＥＰＲＭＡＸの値に到達したか否かを判定する（Ｓ１０）。なお、ＥＰＲＭＡＸは、変数ＥＰが取り得る最大値、即ち、楽音が発生してから消音するまでのエンベロープ波形に規定されている全ての段数である。
【００６７】
例えば、本実施形態のエンベロープ発生装置から発生されるエンベロープ波形が、アタック部、ディケイ部、サスティン部、及びリリース部の４段から構成される場合には、ＥＰＲＭＡＸの値は４である。一方、本実施形態のエンベロープ発生装置から発生されるエンベロープ波形が、アタック部、ディケイ部、サスティン部、及び２段のリリース部（第１リリース部、第２リリース部）の５段から構成される場合には、ＥＰＲＭＡＸの値は５である。
【００６８】
Ｓ１０の判定が否定される場合には（Ｓ１０：Ｎｏ）、エンベロープ波形（ピッチ、カットオフ周波数、音量）の発生が全ての段について完了したので、エンベロープ発生処理を終了する。一方、Ｓ１０の判定が肯定される場合には（Ｓ１０：Ｙｅｓ）、次の段へ進むために、変数ＥＰに１を加算し（Ｓ１５）、Ｓ３の処理へ戻る。なお、この時点における現在のエンベロープレベル（即ち、変数ＣＬの値）は、現在の段における目標レベル（即ち、変数ＥＬの値）に等しい。
【００６９】
また、Ｓ８の判定が肯定される場合、即ち、鍵盤２１が離鍵されてノートオフ情報が入力された場合には（Ｓ８；Ｙｅｓ）、変数ＥＰの値を、ＥＰＭＡＸ＋１の値に設定し（Ｓ１４）、Ｓ３の処理へ戻る。ＥＰＭＡＸは、リリース部以前に規定される最大段数であり、リリース部以前に３段（アタック部、ディレイ部、サスティン部）が規定されている場合、ＥＰＭＡＸの値は３である。なお、この時点における現在のエンベロープレベル（即ち、変数ＣＬの値）は、ノートオフ情報の入力タイミングに対応するエンベロープレベルである。
【００７０】
Ｓ１４又はＳ１５の処理後に、処理がＳ３に戻ると、Ｓ１４又はＳ１５により設定された変数ＥＰの値が示す段について、その段に対する処理形式の設定に応じて、Ｓ４、Ｓ１２、又はＳ１３のいずれかの処理が行われることになる。即ち、本実施形態のエンベロープ発生処理によれば、エンベロープ波形の各段における目標レベルを、その時点におけるエンベロープレベルとは無関係に絶対レベルとして設定する絶対エンベロープ形式か、その時点におけるエンベロープレベルに対する相対レベルに設定する相対エンベロープ形式か、その時点におけるエンベロープレベルに対する差分レベルとして設定する差分エンベロープ形式か、のいずれかの形式により設定することができる。
【００７１】
次に、図３を参照して、本実施形態のエンベロープ発生装置が奏する効果について説明する。この例では、アタック部Ａｔ、ディケイ部Ｄｅ、サスティン部Ｓｕ、及び２段のリリース部（第１リリース部Ｒｅ１、第２リリース部Ｒｅ２）から構成される音量のエンベロープ波形を発生する場合について説明する。
【００７２】
図３（ａ）は、第１リリース部の目標レベルを絶対エンベロープ形式により設定した場合に生じ得る音量のエンベロープ波形を示す波形図である。なお、図３（ａ）〜（ｃ）において、縦軸は音量のレベルであり、０（ゼロ）を原点とし、上方へ向かう程、音量が大きくなることを示す。一方、横軸は、時間を示す。
【００７３】
ノートオンが入力された場合に、本実施形態のエンベロープ発生装置は、まず、アタック期間Ｔａ１の間に、音量の初期値レベルＬａ０（即ち、ゼロ）から目標レベルＬａ１まで、レベルが立ち上がるアタック部Ａｔのエンベロープ波形を発生する。続いて、ディケイ期間Ｔａ２の間に、開始レベルであるレベルＬａ１から目標レベルＬａ２まで、レベルが減衰するディケイ部Ｄｅのエンベロープ波形を発生し、その後、サスティン期間Ｔａ３の間に、開始レベルであるレベルＬａ２から目標レベルＬａ３（この例では、ゼロ）まで、レベルが減衰するようにサスティンＳｕのエンベロープ波形を発生する。
【００７４】
鍵盤２１が離鍵されたことによりノートオフが入力されると、本実施形態のエンベロープ発生装置は、その入力タイミングから２段のリリース部（第１リリース部Ｒｅ１、第２リリース部Ｒｅ２）を発生する。具体的に、ノートオフが入力されると、該ノートオフの入力タイミングから第１リリース期間Ｔａ４（１）の経過後に、レベルが目標レベルＬａ４（１）になるような第１リリース部Ｒｅ１のエンベロープ波形を発生し、続いて、第２リリース期間Ｔａ４（２）の間に、レベルＬａ４（１）から、ゼロである目標レベルＬａ４（２）まで、レベルが減衰する第２リリース部Ｒｅ２のエンベロープ波形を発生する。
【００７５】
ここで、レベルＬａ４（１）が絶対レベルにより設定される場合には、図３（ａ）に示すように、エンベロープレベルがレベルＬａ４（１）より小さくなったタイミングでノートオフが入力されたときには、第１リリース部Ｒｅ１のエンベロープ波形が、時間経過に伴ってレベルが次第に増加する波形となる。かかる場合には、減衰しつつある楽音の音量が離鍵により大きくなるため、聴感上、不自然な楽音が放音される。
【００７６】
図３（ｂ）は、第１リリース部の目標レベルを相対エンベロープ形式により設定した場合に発生する音量のエンベロープ波形の一例を示す波形図である。この例では、第１リリース部Ｒｅ１の目標レベルＬａ４（１）が、ノートオフの入力タイミングにおけるエンベロープレベルＬｖの１／３、即ち、（１／３）Ｌｖに設定される。その結果、ノートオフの入力タイミングから期間Ｔａ４（１）の間に、エンベロープレベルＬｖから、目標レベルＬａ４（１）へ向かってレベルが減衰する第１リリース部Ｒｅ１を発生することができる。
【００７７】
このように、第１リリース部Ｒｅ１の目標レベルＬａ４（１）を、ノートオフの入力タイミングにおけるエンベロープレベルＬｖに対する相対値として設定することにより、レベルＬａ４（１）を、ノートオフの入力タイミングに依ることなく、エンベロープレベルＬｖより小さい値に設定できる。よって、第１リリース部Ｒｅ１を時間経過に伴ってレベルが減衰する自然なエンベロープ波形にすることができる。
【００７８】
図３（ｃ）は、第１リリース部の目標レベルを差分エンベロープ形式により設定した場合に発生する音量のエンベロープ波形の一例を示す波形図である。この例では、第１リリース部Ｒｅ１の目標レベルＬａ４（１）が、ノートオフの入力タイミングにおけるエンベロープレベルＬｖに対し、レベルを下げる方向に絶対値Ｄの差分を取った値（即ち、−Ｄを加算した値）、即ち、Ｌｖ＋（−Ｄ）に設定される。その結果、ノートオフの入力タイミングから期間Ｔａ４（１）の間に、エンベロープレベルＬｖから、目標レベルＬａ４（１）へ向かって減衰する第１リリース部Ｒｅ１を発生することができる。
【００７９】
このように、第１リリース部Ｒｅ１の目標レベルＬａ４（１）を、ノートオフの入力タイミングにおけるエンベロープレベルＬｖに対し所定の差分を取った値に設定することにより、レベルＬａ４（１）を、ノートオフの入力タイミングに依ることなく、エンベロープレベルＬｖより小さい値に設定できる。よって、第１リリース部Ｒｅ１を時間経過に伴ってレベルが減衰する自然なエンベロープ波形にすることができる。
【００８０】
従って、本実施形態のエンベロープ発生装置によれば、エンベロープ波形の各段における目標レベルを、絶対エンベロープ形式だけでなく、相対エンベロープ形式や差分エンベロープ形式により設定することができるので、音量のエンベロープ波形におけるリリース部が多段化されている場合に、ノートオフの入力タイミング後における最初のリリース部（即ち、第１リリース部）にてレベルが増大する不自然なエンベロープ波形の発生を防止できる。即ち、聴感上違和感のない自然な楽音が放音されるエンベロープ波形を発生させることができる。
【００８１】
次に、図４を参照して、本実施形態のエンベロープ発生装置が奏する別の効果について説明する。この例では、アタック部Ａｔ、ディケイ部Ｄｅ、サスティン部Ｓｕ、及び１段のリリース部（リリース部Ｒｅａ又はリリース部Ｒｅｂ）から構成されるピッチのエンベロープ波形を発生する場合について説明する。
【００８２】
図４（ａ）は、リリース部の目標レベルを絶対エンベロープ形式により設定した場合に発生するピッチのエンベロープ波形の一例を示す波形図である。なお、図４（ａ）〜（ｃ）において、縦軸はピッチのレベルであり、基準ピッチを原点として、上方へ向かう程、ピッチが高くなり、下方へ向かう程、ピッチが低くなることを示す。一方、横軸は、時間を示す。
【００８３】
ノートオン（ＯＮ）が入力された場合に、本実施形態のエンベロープ発生装置は、まず、アタック期間Ｔｐ１の間に、レベルが、ピッチの初期値レベルＬｐ０から目標レベルＬｐ１（この例では、基準ピッチ）まで変化するアタック部Ａｔのエンベロープ波形を発生する。続いて、ディケイ期間Ｔｐ２の間に、開始レベルであるレベルＬｐ１から目標レベルＬｐ２まで、レベルが変化するディケイ部Ｄｅのエンベロープ波形を発生する。なお、図４（ａ）に示す例では、レベルＬｐ１とレベルＬｐ２とが等しいので、期間Ｔｐ２の間、レベルが基準ピッチを維持するエンベロープ波形を発生する。その後、サスティン期間Ｔｐ３の間に、開始レベルであるレベルＬｐ２（この例では、基準ピッチ）から目標レベルＬｐ３まで、レベルが変化するサスティン部Ｓｕのエンベロープ波形を発生する。
【００８４】
鍵盤２１が離鍵されたことによりノートオフが入力されると、本実施形態のエンベロープ発生装置は、ノートオフの入力タイミングからリリース期間Ｔｐ４の経過後に、エンベロープレベルが目標レベルＬｐ４になるようなリリースエンベロープ波形を発生する。
【００８５】
ここで、レベルＬｐ４が絶対レベルにより設定される場合には、図４（ａ）に示すように、ノートオフがどのタイミングで入力されても、最終的に到達するピッチのレベルは一律にレベルＬｐ４になる。よって、ＯＦＦａのタイミングでノートオフが入力された場合には、リリース部Ｒｅａのエンベロープ波形は、ノートオフの入力タイミングにおけるエンベロープレベルＬｖａから、ピッチのレベルが徐々に低くなって最終的にレベルＬｐ４に到達する波形となる。一方で、ＯＦＦｂのタイミングでノートオフが入力された場合には、リリース部Ｒｅｂのエンベロープ波形は、ノートオフの入力タイミングにおけるエンベロープレベルＬｖｂから、ピッチのレベルが徐々に高くなって最終的にレベルＬｐ４に到達する波形となる。
【００８６】
このように、リリースエンベロープ波形を絶対エンベロープ形式により発生させた場合、同じ鍵の押鍵に基づく発生楽音であっても、ノートオフの入力タイミングに依っては、そこからピッチが上がる場合もあれば、そこからピッチが下がる場合もあるため、不自然な感じを与える。
【００８７】
図４（ｂ）は、リリース部の目標レベルを相対エンベロープ形式により設定した場合に発生するピッチのエンベロープ波形の一例を示す波形図である。この例では、リリース部（リリース部Ｒｅａ又はリリース部Ｒｅｂ）の目標レベルＬｐ４が、ノートオフの入力タイミングにおけるエンベロープレベルの１／２に設定される。
【００８８】
よって、ＯＦＦａのタイミングでノートオフが入力された場合には、リリース部Ｒｅａの目標レベルＬｐ４が、ノートオフの入力タイミングにおけるエンベロープレベルＬｖａの１／２、即ち、（１／２）Ｌｖａに設定される。また、ＯＦＦｂのタイミングでノートオフが入力された場合には、リリース部Ｒｅｂの目標レベルＬｐ４が、ノートオフの入力タイミングにおけるエンベロープレベルＬｖｂの１／２、即ち、（１／２）Ｌｖｂに設定される。
【００８９】
このように、リリース部の目標レベルＬｐ４を、ノートオフの入力タイミングにおけるエンベロープレベルに対する相対値として設定することにより、ノートオフの入力タイミングに依ることなく、リリースエンベロープ波形の挙動を同様にすることができ、離鍵後のピッチ変化を自然な感じにすることができる。
【００９０】
図４（ｃ）は、リリース部の目標レベルを差分エンベロープ形式により設定した場合に発生するピッチのエンベロープ波形の一例を示す波形図である。この例では、リリース部（リリース部Ｒｅａ又はリリース部Ｒｅｂ）の目標レベルＬｐ４が、ノートオフの入力タイミングにおけるエンベロープレベルに対し、レベルを上げる方向に絶対値Ｄの差分を取った値（即ち、＋Ｄを加算した値）、即ち、Ｌｖ＋Ｄに設定される。よって、ＯＦＦａのタイミングでノートオフが入力された場合には、リリース部Ｒｅａの目標レベルＬｐ４がＬｖａ＋Ｄに設定される。また、ＯＦＦｂのタイミングでノートオフが入力された場合には、リリース部Ｒｅｂの目標レベルＬｐ４がＬｖｂ＋Ｄに設定される。
【００９１】
このように、リリース部の目標レベルＬｐ４を、ノートオフの入力タイミングにおけるエンベロープレベルに対し所定の差分を取った値に設定することにより、ノートオフの入力タイミングに依ることなく、リリースエンベロープ波形の挙動を同様にすることができ、離鍵後のピッチ変化を自然な感じにすることができる。
【００９２】
従って、本実施形態のエンベロープ発生装置によれば、エンベロープ波形の各段における目標レベルを、絶対エンベロープ形式だけでなく、相対エンベロープ形式や差分エンベロープ形式により設定することができるので、ピッチのエンベロープ波形におけるリリース部のピッチ変化を自然な感じにすることができる。これにより、自然な楽音を放音させることができる。
【００９３】
次に、図５を参照して、本実施形態のエンベロープ発生装置が奏する他の効果について説明する。この例では、アタック部Ａｔ、ディケイ部Ｄｅ、サスティン部Ｓｕ、及び１段のリリース部Ｒｅから構成される音量のエンベロープ波形を発生する場合について説明する。
【００９４】
図５（ａ）は、アタック部の目標レベルを絶対エンベロープ形式により設定し、以降の各段の目標レベルを、それぞれ、前段の目標レベルに基づく相対エンベロープ形式により設定した場合に発生する音量のエンベロープ波形の一例を示す波形図である。なお、図５（ａ）及び図５（ｂ）において、縦軸は音量のレベルであり、０（ゼロ）を原点とし、上方へ向かう程、音量が大きくなることを示す。一方、横軸は、時間を示す。
【００９５】
図５（ａ）に示すように、本実施形態のエンベロープ発生装置は、ノートオンが入力されると、まず、アタック期間Ｔａ１の間に、レベルが、音量の初期値レベルＬａ０から絶対レベルで設定されている目標レベルＬａ１まで立ち上がるアタック部Ａｔのエンベロープ波形を発生する。
【００９６】
続いて、ディケイ部Ｄｅの目標レベルＬａ２を、アタック部Ａｔの目標レベルであったＬａ１の３／４の値（即ち、（３／４）Ｌａ１）に設定し、ディケイ期間Ｔａ２の間に、レベルＬａ１からレベルＬａ２までレベルが減衰するディケイ部Ｄｅのエンベロープ波形を発生する。
【００９７】
次いで、サスティン部Ｓｕの目標レベルＬａ３を、ディケイ部Ｄｅの目標レベルであったＬａ２の１／２の値（即ち、（１／２）Ｌａ２）に設定し、サスティン期間Ｔａ３の間に、レベルＬａ２からレベルＬａ３までレベルが減衰するサスティン部Ｓｕのエンベロープ波形を発生する。
【００９８】
その後、鍵盤２１が離鍵されたことによりノートオフが入力されると、リリース期間Ｔａ４の間に、レベルが目標レベルＬａ４（ゼロ）まで減衰するリリース部Ｒｅのエンベロープ波形が発生し、それにより、楽音が発生してから消音するまでにおける全ての段のエンベロープ波形の発生が完了する。
【００９９】
図５（ｂ）は、図５（ａ）に示したエンベロープ波形におけるアタック部の目標レベルを調整することにより得られるエンベロープ波形を示す波形図である。上述した通り、図５（ａ）に示したエンベロープ波形は、アタック部以降の各段の目標レベルが、それぞれ、前段の目標レベルに基づく相対エンベロープ形式により設定されているので、図５（ｂ）に示すように、図５（ａ）に示したエンベロープ波形のアタック部Ａｔの目標レベルＬａ１をＬａ１´に変更した場合には、その変更に伴い、ディケイ部Ｄｅの目標レベルＬａ２´、サスティン部Ｓｕの目標レベルＬａ３´も、Ｌａ１´／Ｌａ１の割合で自動的に変更されることになる。
【０１００】
従って、本実施形態のエンベロープ発生装置によれば、エンベロープ波形の各段における目標レベルを、絶対エンベロープ形式だけでなく、相対エンベロープ形式により設定することができるので、エンベロープ波形が所望の形状となるような編集を容易かつ迅速に行うことができる。なお、図示はしないが、アタック部の目標レベルを絶対エンベロープ形式により設定し、以降の各段の目標レベルを、それぞれ、前段の目標レベルに基づく差分エンベロープ形式により設定した場合もまた、同様の効果を得ることができる。
【０１０１】
以上説明した通り、本実施形態のエンベロープ発生装置によれば、エンベロープ波形の各段における目標レベルを、絶対エンベロープ形式だけでなく、相対エンベロープ形式や差分エンベロープ形式により設定することができるように構成されているので、データの読み飛ばし等を伴うことなく、所望に応じたエンベロープ波形を発生させることができる。よって、発生されたエンベロープ波形は、聴感上、自然な楽音を発生させることができる。
【０１０２】
なお、上記実施形態では、カットオフ周波数のエンベロープについての図示は行わなかったが、カットオフ周波数のエンベロープについても同様に、エンベロープ上のある時点（ノートオフの入力タイミングや、前段の終了時点又はこれからエンベロープ波形を発生する段の開始時点、等）でのエンベロープレベルに基づく相対エンベロープ形式による制御又は差分エンベロープ形式による制御を行うことにより、所望に応じた自然なエンベロープを得ることができる。
【０１０３】
以上、実施形態に基づき本発明を説明したが、本発明は上記形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の変形改良が可能であることは容易に推察できるものである。
【０１０４】
例えば、上記実施形態では、音量のエンベロープ波形におけるリリース部が２段に構成されている場合について例示したが、リリース部が３段以上から構成されている場合においても適用できる。リリース部が３段以上に構成される場合には、２段目以降を絶対エンベロープ形式で行うように構成してもよいが、２段目以降も１段目（第１リリース）と同様に相対エンベロープ形式又は差分エンベロープ形式によるエンベロープ制御を行うことが好ましい。
【０１０５】
また、上記実施形態では、アタック部と、ディケイ部と、サスティン部と、リリース部との４段から構成されるエンベロープ波形、又は、アタック部と、ディケイ部と、サスティン部と、第１リリース部と、第２リリース部との５段から構成されるエンベロープ波形を発生する場合について例示したが、上記実施形態のエンベロープ発生装置を、上記例示した段数に限らず、種々の段数のエンベロープ波形に対して適用してもよい。
【０１０６】
また、上記実施形態では、アタック部の目標レベルを絶対エンベロープ形式により設定し、以降の各段の目標レベルを、それぞれ、前段の目標レベルに基づく相対エンベロープ形式により設定する場合を例示したが、アタック部の目標レベルを絶対エンベロープ形式により設定し、以降の各段の目標レベルを、それぞれ、前段の目標レベルに基づく差分エンベロープ形式により設定するようにしてもよいし、アタック部の目標レベルを絶対エンベロープ形式により設定し、以降の各段の目標レベルを、それぞれ、アタック部の目標レベルに基づく相対エンベロープ形式又は差分エンベロープ形式により設定するようにしてもよい。また、アタック部以外の段（例えば、ディケイ部）の目標レベルを絶対エンベロープ形式により設定し、それ以外の段に対する目標レベルを、絶対エンベロープ形式により設定した目標レベルに基づく相対エンベロープ形式又は差分エンベロープ形式により設定するようにしてもよい。
【符号の説明】
【０１０７】
１１      ＣＰＵ（エンベロープ発生装置の一部）
１２      ＲＯＭ（エンベロープ発生装置の一部、期間記憶手段の一部）
１３      ＲＡＭ（エンベロープ発生装置の一部）
１４      フラッシュメモリ（エンベロープ発生装置の一部、期間記憶手段の一部）
Ｓ４      目標値設定手段
Ｓ１２    目標値設定手段
Ｓ１３    目標値設定手段
Ｓ７      エンベロープ発生手段
【図１】
2011191551.tif 000003
【図２】
2011191551.tif 000004
【図３】
2011191551.tif 000005
【図４】
2011191551.tif 000006
【図５】
2011191551.tif 000007
【図６】
2011191551.tif 000008