(57)【特許請求の範囲】
【請求項１】
押離鍵操作に応じて押鍵速度および離鍵速度を取得する取得手段と、
楽音の基音と複数の倍音夫々を発音させる複数の発音手段と、
前記押鍵操作に応じて押鍵クリック音を発音する押鍵クリック音発音手段と、
前記離鍵操作に応じて離鍵クリック音を発音する離鍵クリック音発音手段と、
前記取得手段により取得された押鍵速度に応じて、前記複数の発音手段にて発音される基音および複数の倍音夫々の発音タイミングをばらつかせる発音タイミング変更手段と、
前記取得手段により取得された押鍵速度に応じて、前記押鍵クリック音発音手段にて発音される押鍵クリック音の波形種および音量の少なくともひとつをランダムに変化させる押鍵クリック音変更手段と、
前記発音タイミング変更手段によりばらつかせた発音タイミング夫々に基づき、前記複数の発音手段に対して基音および複数の倍音の発音を指示する発音指示手段と、
前記取得手段により取得された離鍵速度に応じて、前記複数の発音手段により発音されている基音および複数の倍音夫々の消音タイミングをばらつかせる消音タイミング変更手段と、
前記取得手段により取得された離鍵速度に応じて、前記離鍵クリック音発音手段にて発音される離鍵クリック音の波形種および音量の少なくともひとつをランダムに変化させる離鍵クリック音変更手段と、
前記消音タイミング変更手段によりばらつかせた消音タイミング夫々に基づき、前記複数の発音手段に対して、基音および複数の倍音の消音を指示する消音指示手段と、
を具備することを特徴とする楽音発生装置。
【請求項２】
前記発音タイミング変更手段は、前記押鍵速度に応じた第１の待機時間を発生する第１の待機時間発生手段を備え、当該第１の待機時間が経過する毎に、前記基音および複数の倍音夫々の発音を順番に指示することにより、それらの発音タイミングをばらつかせることを特徴とする請求項１記載の楽音発生装置。
【請求項３】
前記第１の待機時間発生手段は、前記押鍵速度の逆数から第１の待機時間を算出することを特徴とする請求項２記載の楽音発生装置。
【請求項４】
前記消音タイミング変更手段は、前記離鍵速度に応じた第２の待機時間を発生する第２の待機時間発生手段を備え、当該第２の待機時間が経過する毎に、発音している前記基音および複数の倍音夫々の消音を順番に指示することにより、それらの消音タイミングをばらつかせることを特徴とする請求項１記載の楽音発生装置。
【請求項５】
前記第２の待機時間発生手段は、前記離鍵速度の逆数から第２の待機時間を算出することを特徴とする請求項４記載の楽音発生装置。
【請求項６】
前記発音タイミング変更手段が前記基音および複数の倍音夫々の発音タイミングをばらつかせる順序と、前記消音タイミング変更手段が前記基音および複数の倍音夫々の消音タイミングをばらつかせる順序とを異ならせることを特徴とする請求項１記載の楽音発生装置。
【請求項７】
前記発音タイミング変更手段は、前記基音および複数の倍音夫々の発音をランダムに指定することにより、それらの発生タイミングをばらつかせることを特徴とする請求項１記載の楽音発生装置。
【請求項８】
押離鍵操作に応じて押鍵速度および離鍵速度を取得する取得手段と、楽音の基音と複数の倍音夫々を発音させる複数の発音手段と、前記押鍵操作に応じて押鍵クリック音を発音する押鍵クリック音発音手段と、前記離鍵操作に応じて離鍵クリック音を発音する離鍵クリック音発音手段と、を有するコンピュータに、
前記取得手段により取得された押鍵速度に応じて、前記複数の発音手段にて発音される基音および複数の倍音夫々の発音タイミングをばらつかせる発音タイミング変更ステップと、
前記取得手段により取得された押鍵速度に応じて、前記押鍵クリック音発音手段にて発音される押鍵クリック音の波形種および音量の少なくともひとつをランダムに変化させる押鍵クリック音変更ステップと、
前記発音タイミング変更ステップによりばらつかせた発音タイミング夫々に基づき、前記複数の発音手段に対して基音および複数の倍音の発音を指示する発音指示ステップと、
前記取得手段により取得された離鍵速度に応じて、前記複数の発音手段により発音されている基音および複数の倍音夫々の消音タイミングをばらつかせる消音タイミング変更ステップと、
前記取得手段により取得された離鍵速度に応じて、前記離鍵クリック音発音手段にて発音される離鍵クリック音の波形種および音量の少なくともひとつをランダムに変化させる離鍵クリック音変更ステップと、
前記消音タイミング変更ステップによりばらつかせた消音タイミング夫々に基づき、前記複数の発音手段に対して、基音および複数の倍音の消音を指示する消音指示ステップと、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ドローバー方式の電気オルガンの発音メカニズムをシミュレートする楽音発生装置およびプログラムに関する。
【背景技術】
【０００２】
ドローバー方式の電気オルガン（以下、ドローバーオルガンと略称）では、フィートの異なる９種類（「１６’（’はフィートの省略記号）」、「５
１／３’」、「８’」、「４’」、「２ ２／３’」、「２’」、「１ ３／５’」、「１ １／３’」、「１’」）のドローバーの操作に応じてピッチの異なる９種類の正弦波を任意に組み合わせて合成することで所望の音色の楽音を形成する。
【０００３】
なお、ドローバーの「１６’」を基音とした場合、「５ １／３’」は基音の１ｏｃｔ＋５ｔｈ上の音、「８’」は基音の１ｏｃｔ上の音（２倍音）、「４’」は基音の２ｏｃｔ上の音（４倍音）、「２
２／３’」は基音の２ｏｃｔ＋５ｔｈ上の音、「２’」は基音の３ｏｃｔ上の音（８倍音）、「１ ３／５’」は基音に対し３ｏｃｔ＋３ｒｄ上の音、「１ １／３’」は基音に対し３ｏｃｔ＋５ｔｈ上の音、「１’」は基音の４ｏｃｔ上の音（１６倍音）となる。
【０００４】
近年では、波形データ読み出し方式の音源を用いた正弦波加算合成アルゴリズムに従ってドローバーオルガンのような音色の楽音を発生する電子楽器も知られており、この種の技術については例えば特許文献１に開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０００−２５９１５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、ドローバーオルガンでは、鍵盤の各鍵にフィート毎の発音・消音を制御するスイッチを配設し、押離鍵操作に応じてオンオフされるフィート毎のスイッチの挙動によって所謂ドローバー音と呼ばれる独特の演奏音を形成しているが、上記特許文献１に開示の技術では、ドローバー操作に応じて生成される基音および複数次の倍音を単に正弦波合成するだけである為、実際のドローバーオルガンの発音メカニズムに即した独特のドローバー音を生成することが出来ない、という問題がある。
【０００７】
本発明は、このような事情に鑑みてなされたもので、実際のドローバーオルガンの発音メカニズムに即した独特のドローバー音を生成することができる楽音発生装置およびプログラムを提供することを目的としている。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明の楽音発生装置は、押離鍵操作に応じて押鍵速度および離鍵速度を取得する取得手段と、楽音の基音と複数の倍音夫々を発音させる複数の発音手段と、前記押鍵操作に応じて押鍵クリック音を発音する押鍵クリック音発音手段と、前記離鍵操作に応じて離鍵クリック音を発音する離鍵クリック音発音手段と、前記取得手段により取得された押鍵速度に応じて、前記複数の発音手段にて発音される基音および複数の倍音夫々の発音タイミングをばらつかせる発音タイミング変更手段と、前記取得手段により取得された押鍵速度に応じて、前記押鍵クリック音発音手段にて発音される押鍵クリック音の波形種および音量の少なくともひとつをランダムに変化させる押鍵クリック音変更手段と、前記発音タイミング変更手段によりばらつかせた発音タイミング夫々に基づき、前記複数の発音手段に対して基音および複数の倍音の発音を指示する発音指示手段と、前記取得手段により取得された離鍵速度に応じて、前記複数の発音手段により発音されている基音および複数の倍音夫々の消音タイミングをばらつかせる消音タイミング変更手段と、前記取得手段により取得された離鍵速度に応じて、前記離鍵クリック音発音手段にて発音される離鍵クリック音の波形種および音量の少なくともひとつをランダムに変化させる離鍵クリック音変更手段と、前記消音タイミング変更手段によりばらつかせた消音タイミング夫々に基づき、前記複数の発音手段に対して、基音および複数の倍音の消音を指示する消音指示手段と、を具備することを特徴とする。
【発明の効果】
【０００９】
本発明では、実際のドローバーオルガンの発音メカニズムに即した独特のドローバー音を生成することが出来る。
【図面の簡単な説明】
【００１０】
【図１】実施の一形態による楽音発生装置１００の全体構成を示すブロック図である。
【図２】ドローバー１１の構成を示すブロック図である。
【図３】音源１５の構成を示すブロック図である。
【図４】メインルーチンの動作を示すフローチャートである。
【図５】押鍵処理の動作を示すフローチャートである。
【図６】ＷＡＩＴ処理の動作を示すフローチャートである。
【図７】離鍵処理の動作を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、図面を参照して本発明の実施形態について説明する。
Ａ．発明の概要
ドローバーオルガンでは、鍵盤の各鍵にフィート毎の発音・消音を制御するスイッチを備える。フィート毎のスイッチは、押鍵に応じて全てが同時にオンされるものではなく、オンされるタイミングがばらつく。言い換えれば、加算合成される基音および各倍音成分の発生タイミングが不揃いになる結果、発音当初の微妙な音色の変化が生じる。押鍵時に生じる音色変化は押鍵ベロシティ（押鍵速度）に依存する。つまり押鍵速度が速ければ基音および各倍音成分の発生タイミングのばらつきは減って音色変化が小さくなり、一方、押鍵速度が遅ければ基音および各倍音成分の発生タイミングのばらつきは増えて音色変化が大きくなる。
【００１２】
このような音色変化は離鍵時においても同様に存在する。つまり、離鍵に応じてフィート毎のスイッチがオフされるタイミングがばらつくことで加算合成される基音および各倍音成分の停止タイミングが不揃いになり、これが消音当初の微妙な音色の変化を招致する。この音色変化は離鍵ベロシティ（離鍵速度）に応じて異なる。すなわち素早く離鍵すれば各倍音成分の停止タイミングのばらつきは減って音色変化が小さくなり、逆にゆっくり離鍵すれば各倍音成分の発生タイミングのばらつきは増えて音色変化が大きくなる。
【００１３】
また、実際のドローバーオルガンでは、鍵盤の各鍵に設けられるフィート毎のスイッチが多列接点を構成している為、押鍵時に各フィート毎のスイッチがオンされる順番と、離鍵時に各フィート毎のスイッチがオフされる順番とは異なる。この為、押鍵時と離鍵時とでは音色変化が相違する。加えて、押離鍵操作に応じてフィート毎のスイッチがオンオフされることでチャタリングノイズが生じ、これがクリック音（キークリック）として発生楽音に混合される。本発明では、以上に述べた一連の知見に基づくドローバーオルガンの発音メカニズムをＣＰＵ動作（後述の押鍵処理および離鍵処理）でシミュレートすることにより実際のドローバーオルガンの発音メカニズムに即した独特のドローバー音を生成可能にする。
【００１４】
Ｂ．構成
次に、図１〜図３を参照して本発明の実施の一形態による楽音発生装置１００の構成を説明する。図１は、楽音発生装置１００の全体構成を示すブロック図、図２はドローバー１１の構成を示すブロック図、図３は音源１５の構成を示すブロック図である。先ず図１において、鍵盤１０は、演奏操作（押離鍵操作）に応じたキーオン／キーオフイベント、鍵番号およびベロシティ（押鍵ベロシティ又は離鍵ベロシティ）を含む演奏情報を発生する。
【００１５】
ドローバー１１は、図２に図示する一例ように、基音および各倍音成分毎の音量を調整するスライドボリューム１１ａ−１〜１１ａ−９と、これらスライドボリューム１１ａ−１〜１１ａ−９によってそれぞれレベル制御された音量信号を入力チャンネルｃｈ１〜ｃｈ９に取り込み、ＣＰＵ１２の制御の下に、各入力チャンネルｃｈ１〜ｃｈ９に供給される音量信号をＡ／Ｄ変換してドローバー出力Ｄｄｒ（ｃｈ１）〜Ｄｄｒ（ｃｈ９）として出力するＡ／Ｄ変換器１１ｂとから構成される。ドローバー出力Ｄｄｒ（ｃｈ１）〜Ｄｄｒ（ｃｈ９）は、ＣＰＵ１２の制御の下に、ＲＡＭ１４のワークエリアに一時記憶される。
【００１６】
なお、スライドボリューム１１ａ−１〜１１ａ−９には、基音の「１６’（’はフィートの省略記号）」、基音の１ｏｃｔ＋５ｔｈ上の「５
１／３’」、基音の１ｏｃｔ上（２倍音）の「８’」、基音の２ｏｃｔ上（４倍音）の「４’」、基音の２ｏｃｔ＋５ｔｈ上の「２ ２／３’」、基音の３ｏｃｔ上（８倍音）の「２’」、基音の３ｏｃｔ＋３ｒｄ上の「１
３／５’」、基音の３ｏｃｔ＋５ｔｈ上の「１ １／３’」および基音の４ｏｃｔ上（１６倍音）の「１’」がそれぞれアサインされる。
【００１７】
ＣＰＵ１２は、ＲＯＭ１３に記憶される各種プログラムを実行し、鍵盤１０の押離鍵操作（演奏操作）に応じて発生する演奏情報に基づき音源１５を制御して楽音形成する。本発明の要旨に係わるＣＰＵ１２の特徴的な処理動作については追って述べる。ＲＯＭ１３には、ＣＰＵ１２にロードされる各種プログラムが記憶される。各種プログラムとは、後述するメインルーチン、押鍵処理および離鍵処理を含む。ＲＡＭ１４は、ワークエリアおよびデータエリアを備える。
【００１８】
ＲＡＭ１４のワークエリアには、ＣＰＵ１２の処理に用いられる各種レジスタ・フラグデータが一時記憶される。具体的には、ＣＰＵ１２の制御の下に、ドローバー１１が発生するドローバー出力Ｄｄｒ（ｃｈ１）〜Ｄｄｒ（ｃｈ９）を一時記憶する。ＲＡＭ１４のデータエリアには、例えば各種ベロシティに対応付けられた複数種のクリック音量Ｃｖが記憶される。これら複数種のクリック音量Ｃｖの内、押鍵時（又は離鍵時）のベロシティＶＥＬに対応するクリック音量ＣｖがＣＰＵ１２により読み出される。
【００１９】
音源１５は、図３に図示するように、発振器１５ａ−１〜１５ａ−１０、係数乗算器１５ｂ−１〜１５ｂ−１０、加算器１５ｃおよびロータリーエフェクタ１５ｄから構成される。音源１５では、これら構成要素を時分割動作させることでポリフォニック発音を可能にする。発振器１５ａ−１〜１５ａ−９には、それぞれドローバー１１の各フィートに対応した基音および複数の倍音の正弦波形データを記憶しておき、押鍵された鍵の鍵番号（音高）に応じた読み出し速度で読み出す公知の波形データ読み出し方式で構成される。なお、発振器１５ａ−１〜１５ａ−９に各々記憶される基音および複数の倍音の正弦波形データは、実際のドローバーオルガンの音に似せる為に若干歪ませている。
【００２０】
発振器１５ａ−１０は、押離鍵操作で生じるチャタリングノイズに相当するクリック波形データを発生する。具体的には、各種ベロシティに対応付けられた複数種のクリック波形データを記憶しておき、その中から押鍵時（又は離鍵時）のベロシティに応じてＣＰＵ１２が選択する波形種のクリック波形データを再生出力する。なお、こうした波形データ読み出し方式の他、雑音波形やパルス波形をフィルタリングしてクリック波形データを生成する方式を用いることも可能である。
【００２１】
係数乗算器１５ｂ−１〜１５ｂ−９は、発振器１５ａ−１〜１５ａ−９から出力される正弦波データに、それぞれ対応するドローバー出力Ｄｄｒ（ｃｈ１）〜Ｄｄｒ（ｃｈ９）を乗算してレベル制御された基音および複数の倍音の正弦波データを各々出力する。乗算係数となるドローバー出力Ｄｄｒ（ｃｈ１）〜Ｄｄｒ（ｃｈ９）は、ＣＰＵ１２によってＲＡＭ１４のワークエリアから読み出される。係数乗算器１５ｂ−１０は、発振器１５ａ−１０の出力にクリック音量Ｃｖを乗算してレベル制御されたクリック波形データを出力する。乗算係数となるクリック音量Ｃｖは、押鍵時（又は離鍵時）のベロシティに応じてＣＰＵ１２がＲＡＭ１４のデータエリアから選択して読み出すようになっている。
【００２２】
加算器１５ｃは、係数乗算器１５ｂ−１〜１５ｂ−９から出力される基音および複数の倍音の正弦波データを加算合成すると共に、係数乗算器１５ｂ−１０から出力されるレベル制御されたクリック波形データを加算し、これによりクリック音が混合された正弦波合成波形データを発生する。ロータリーエフェクタ１５ｄは、実際のドローバーオルガンの音に似せるロータリー効果、すなわち回転するローターとホーンの２つのスピーカが生み出す独特のモジュレーション効果を、クリック音が混合された正弦波合成波形データに付加して楽音波形データｗａｖｅを発生する。サウンドシステム１６は、音源１６から出力される楽音波形データｗａｖｅをアナログ信号形式に変換した後、不要ノイズ除去やレベル増幅を施してからスピーカから発音させる。
【００２３】
Ｂ．動作  
次に、図４〜図７参照して、上記構成による実施形態の動作について説明する。以下では、ＣＰＵ１２が実行するメインルーチン、押鍵処理および離鍵処理の各動作について述べる。
【００２４】
（１）メインルーチンの動作
楽音発生装置１００がパワーオンされると、ＣＰＵ１２は図４に図示するステップＳＡ１に進み、装置各部を初期化するイニシャライズを実行した後、ステップＳＡ２に進む。ステップＳＡ２では、スライドボリューム１１ａ−１〜１１ａ−９の操作に応じて生成されるドローバー出力Ｄｄｒ（ｃｈ１）〜Ｄｄｒ（ｃｈ９）をＲＡＭ１４のデータエリアにストアするドローバ処理を実行する。
【００２５】
次いで、ステップＳＡ３では、押鍵処理を実行する。後述するように、押鍵処理では、各フィートに対応した基音および各倍音成分の発生タイミングを、押鍵速度に応じて変化する待ち時間ＴＩＭＥに従ってばらつかせ、加算合成すべき基音および各倍音成分の正弦波データを不揃いにする。この結果、押鍵速度が速ければ基音および各倍音成分の発生タイミングのばらつきは減って音色変化が小さくなり、一方、押鍵速度が遅ければ基音および各倍音成分の発生タイミングのばらつきは増えて音色変化が大きくなるという実際のドローバーオルガンにおける発音当初の微妙な音色変化をシミュレートする。さらに、押鍵ベロシティＶＥＬに対応した波形種および音量のクリック音を生成し、発音時の微妙な音色変化を有するドローバー音に混合する。
【００２６】
続いて、ステップＳＡ４では、離鍵処理を実行する。後述するように、離鍵処理では、各フィートに対応した基音および倍音成分の停止タイミングを、離鍵速度に応じて変化する待ち時間ＴＩＭＥ１に従ってばらつかせ、消音すべき基音および各倍音成分の正弦波データを不揃いにする。この結果、離鍵速度が速ければ各倍音成分の停止タイミングのばらつきは減って音色変化が小さくなり、一方、離鍵速度が遅ければ各倍音成分の停止タイミングのばらつきは増えて音色変化が大きくなるという実際のドローバーオルガンにおける消音当初の微妙な音色変化をシミュレートする。さらに、離鍵ベロシティＶＥＬ１に対応した波形種および音量のクリック音を生成し、消音時の微妙な音色変化を有するドローバー音に混合する。
【００２７】
そして、ステップＳＡ４の離鍵処理が完了すると、上記ステップＳＡ２に処理を戻し、以後、パワーオフされるまでの間、上述のステップＳＡ２〜ＳＡ４を繰り返して実際のドローバーオルガンの発音メカニズムに即した独特のドローバーサウンドを生成する。
【００２８】
（２）押鍵処理の動作
次に、図５〜図６を参照して押鍵処理の動作を説明する。上述したメインルーチンのステップＳＡ３（図４参照）を介して本処理が実行されると、ＣＰＵ１２は図５に図示するステップＳＢ１に進み、キーオンイベントの有無、すなわち鍵盤１０のいずれかの鍵が押鍵されたか否かを判断する。押鍵された鍵が無ければ判断結果は「ＮＯ」となり、本処理を終えるが、押鍵された鍵が有ると、判断結果は「ＹＥＳ」になり、ステップＳＢ２に進み、押鍵操作に応じて鍵盤１０から出力される演奏情報中のベロシティをレジスタＶＥＬにストアする。以下、レジスタＶＥＬの内容を押鍵ベロシティＶＥＬと称す。
【００２９】
続いて、ステップＳＢ３では、押鍵ベロシティＶＥＬに応じた種類のクリック波形データを再生するよう音源１５の発振器１５ａ−１０に指示すると共に、押鍵ベロシティＶＥＬに応じてＲＡＭ１４のデータエリアから読み出したクリック音量Ｃｖを乗算係数として係数乗算器１５ｂ−１０に供給する。これにより、押鍵ベロシティＶＥＬに対応した種類および音量のクリック音が生成される。
【００３０】
そして、ステップＳＢ４に進むと、１フィートに対応した倍音成分（１６倍音）の正弦波形データの発音を音源１５に指示する。これにより、押鍵された鍵の鍵番号（音高）に応じた読み出し速度で発振器１５ａ−９から読み出される正弦波形データに、ドローバー出力Ｄｄｒ（ｃｈ９）を乗算した１フィートに対応した倍音成分（１６倍音）の正弦波データが生成される。
【００３１】
次いで、ステップＳＢ５を介して図６に図示するＷＡＩＴ処理を実行する。ＷＡＩＴ処理が実行されると、ＣＰＵ１２はステップＳＣ１に進み、押鍵ベロシティＶＥＬの逆数を待ち時間ＴＩＭＥ（単位：ｍｓｅｃ）として算出し、続くステップＳＣ２では、算出した待ち時間ＴＩＭＥが経過するまで待機する。従って、素早い押鍵であれば待ち時間ＴＩＭＥは短く、ゆっくりとした押鍵ならば待ち時間ＴＩＭＥが長くなる。
【００３２】
そして、待ち時間ＴＩＭＥが経過すると、ステップＳＢ６に進み、１  １／３フィートに対応した倍音成分の正弦波形データの発音を音源１５に指示する。これにより、押鍵された鍵の鍵番号（音高）に応じた読み出し速度で発振器１５ａ−８から読み出される正弦波形データに、ドローバー出力Ｄｄｒ（ｃｈ８）を乗算した１  １／３フィートに対応した倍音成分の正弦波データが生成される。この後、ステップＳＢ７のＷＡＩＴ処理を実行し、押鍵ベロシティＶＥＬの逆数から算出される待ち時間ＴＩＭＥが経過するまで待機する。
【００３３】
以後、上記と同様に、ステップＳＢ８〜ＳＢ９では、ドローバー出力Ｄｄｒ（ｃｈ７）に応じてレベル制御された１  ３／５フィートに対応した倍音成分の正弦波データを生成した後、押鍵ベロシティＶＥＬの逆数から算出される待ち時間ＴＩＭＥが経過するまで待機し、ステップＳＢ１０〜ＳＢ１１では、ドローバー出力Ｄｄｒ（ｃｈ６）に応じてレベル制御された２フィートに対応した倍音成分（８倍音）の正弦波データを生成した後、押鍵ベロシティＶＥＬの逆数から算出される待ち時間ＴＩＭＥが経過するまで待機する。
【００３４】
続いて、ステップＳＢ１２〜ＳＢ１３では、ドローバー出力Ｄｄｒ（ｃｈ５）に応じてレベル制御された２  ２／３フィートに対応した倍音成分の正弦波データを生成した後、押鍵ベロシティＶＥＬの逆数から算出される待ち時間ＴＩＭＥが経過するまで待機する。続いて、ステップＳＢ１４〜ＳＢ１５では、ドローバー出力Ｄｄｒ（ｃｈ４）を乗算してレベル制御された４フィートに対応した倍音成分（４倍音）の正弦波データを生成した後、押鍵ベロシティＶＥＬの逆数から算出される待ち時間ＴＩＭＥが経過するまで待機する。
【００３５】
そして、ステップＳＢ１６〜ＳＢ１７では、ドローバー出力Ｄｄｒ（ｃｈ３）に応じてレベル制御された８フィートに対応した倍音成分（２倍音）の正弦波データを生成した後、押鍵ベロシティＶＥＬの逆数から算出される待ち時間ＴＩＭＥが経過するまで待機する。次いで、ステップＳＢ１８〜ＳＢ１９では、ドローバー出力Ｄｄｒ（ｃｈ２）に応じてレベル制御された５  １／３フィートに対応した倍音成分の正弦波データを生成した後、押鍵ベロシティＶＥＬの逆数から算出される待ち時間ＴＩＭＥが経過するまで待機する。そして、ステップＳＢ２０に進み、ドローバー出力Ｄｄｒ（ｃｈ１）に応じてレベル制御された１６フィートに対応した基音の正弦波データを生成して本処理を終える。
【００３６】
このように、押鍵処理では、各フィートに対応した基音および各倍音成分の発生タイミングを、押鍵速度に応じて変化する待ち時間ＴＩＭＥに従ってばらつかせ、加算合成すべき基音および各倍音成分の正弦波データが不揃いなる為、押鍵速度が速ければ基音および各倍音成分の発生タイミングのばらつきは減って音色変化が小さくなり、一方、押鍵速度が遅ければ基音および各倍音成分の発生タイミングのばらつきは増えて音色変化が大きくなるという実際のドローバーオルガンにおける発音当初の微妙な音色変化をシミュレートすることができる。さらに、押鍵ベロシティＶＥＬに対応した波形種および音量のクリック音を生成し、発音当初の微妙な音色変化を有するドローバー音に混合するので、より一層実際のドローバーオルガンに近い演奏表現力を具現し得るようになる。
【００３７】
（３）離鍵処理の動作
次に、図７を参照して離鍵処理の動作を説明する。上述したメインルーチンのステップＳＡ４（図４参照）を介して本処理が実行されると、ＣＰＵ１２は図７に図示するステップＳＤ１に進み、キーオフイベントの有無、すなわち鍵盤１０のいずれかの鍵が離鍵されたか否かを判断する。離鍵された鍵が無ければ判断結果は「ＮＯ」となり、本処理を終えるが、離鍵された鍵が有ると、判断結果は「ＹＥＳ」になり、ステップＳＤ２に進み、離鍵操作に応じて鍵盤１０から出力される演奏情報中のベロシティをレジスタＶＥＬ１にストアする。以下、レジスタＶＥＬ１の内容を離鍵ベロシティＶＥＬ１と称す。
【００３８】
続いて、ステップＳＤ３では、離鍵ベロシティＶＥＬ１に応じた種類のクリック波形データを再生するよう音源１５の発振器１５ａ−１０に指示すると共に、離鍵ベロシティＶＥＬ１に応じてＲＡＭ１４のデータエリアから読み出したクリック音量Ｃｖを乗算係数として係数乗算器１５ｂ−１０に供給する。これにより、離鍵ベロシティＶＥＬ１に対応した種類および音量のクリック音が生成される。
【００３９】
そして、ステップＳＤ４に進むと、１６フィートに対応した基音の正弦波形データの消音を音源１５に指示して発振器１５ａ−１の波形出力を停止させる。  次いで、ステップＳＤ５を介して図６に図示するＷＡＩＴ処理を実行する。ＷＡＩＴ処理が実行されると、ＣＰＵ１２はステップＳＣ１に進み、押鍵ベロシティＶＥＬ１の逆数を待ち時間ＴＩＭＥ１（単位：ｍｓｅｃ）として算出し、続くステップＳＣ２では、算出した待ち時間ＴＩＭＥ１が経過するまで待機する。従って、素早い離鍵であれば待ち時間ＴＩＭＥ１は短く、ゆっくりとした離鍵ならば待ち時間ＴＩＭＥ１が長くなる。
【００４０】
そして、待ち時間ＴＩＭＥ１が経過すると、ステップＳＤ６に進み、５  １／３フィートに対応した倍音成分の正弦波形データの発音を音源１５に指示して発振器１５ａ−２の波形出力を停止させ、続くステップＳＤ７では、ＷＡＩＴ処理を実行し、離鍵ベロシティＶＥＬ１の逆数から算出される待ち時間ＴＩＭＥ１が経過するまで待機する。
【００４１】
以後、上記と同様に、ステップＳＤ８〜ＳＤ９では、８フィートに対応した２倍音の正弦波データの波形出力を停止させ、離鍵ベロシティＶＥＬ１の逆数から算出される待ち時間ＴＩＭＥ１が経過するまで待機する。続いて、ステップＳＤ１０〜ＳＤ１１では、４フィートに対応した４倍音の正弦波データの波形出力を停止させ、離鍵ベロシティＶＥＬ１の逆数から算出される待ち時間ＴＩＭＥ１が経過するまで待機する。次いで、ステップＳＤ１２〜ＳＤ１３では、２  ２／３フィートに対応した倍音成分の正弦波データの波形出力を停止させ、離鍵ベロシティＶＥＬ１の逆数から算出される待ち時間ＴＩＭＥ１が経過するまで待機する。
【００４２】
そして、ステップＳＤ１４〜ＳＤ１５では、２フィートに対応した８倍音の正弦波データの波形出力を停止させ、離鍵ベロシティＶＥＬ１の逆数から算出される待ち時間ＴＩＭＥ１が経過するまで待機する。続いて、ステップＳＤ１６〜ＳＤ１７では、１  ３／５フィートに対応した倍音成分の正弦波データの波形出力を停止させ、離鍵ベロシティＶＥＬ１の逆数から算出される待ち時間ＴＩＭＥ１が経過するまで待機する。次いで、ステップＳＤ１８〜ＳＤ１９では、１  １／３フィートに対応した倍音成分の正弦波データの波形出力を停止させ、離鍵ベロシティＶＥＬ１の逆数から算出される待ち時間ＴＩＭＥ１が経過するまで待機する。そして、ステップＳＤ２０に進み、１フィートに対応した１６倍音の正弦波データの波形出力を停止させて本処理を終える。
【００４３】
このように、離鍵処理では、各フィートに対応した基音および各倍音成分の停止タイミングを、離鍵速度に応じて変化する待ち時間ＴＩＭＥ１に従ってばらつかせ、消音すべき基音および各倍音成分の正弦波データが不揃いなる為、離鍵速度が速ければ基音および各倍音成分の停止タイミングのばらつきは減って音色変化が小さくなり、一方、離鍵速度が遅ければ基音および各倍音成分の停止タイミングのばらつきは増えて音色変化が大きくなるという実際のドローバーオルガンにおける消音当初の微妙な音色変化をシミュレートする。さらに、離鍵ベロシティＶＥＬ１に対応した波形種および音量のクリック音を生成し、消音当初の微妙な音色変化を有するドローバー音に混合するので、より一層実際のドローバーオルガンに近い演奏表現力を具現し得るようになる。
【００４４】
以上のように、本実施形態では、押鍵操作に応じた押鍵速度を検出し、検出した押鍵速度に対応した波形種および音量のクリック音を発生させると共に、各フィートに対応した基音および各倍音成分の発生タイミングを、押鍵速度に応じて変化する待ち時間ＴＩＭＥに従ってばらつかせ、加算合成すべき基音および各倍音成分の正弦波データを不揃いにし、一方、離鍵操作に応じた離鍵速度を検出し、検出した離鍵速度に対応した波形種および音量のクリック音を発生させると共に、各フィートに対応した基音および倍音成分の停止タイミングを、離鍵速度に応じて変化する待ち時間ＴＩＭＥ１に従ってばらつかせ、消音すべき基音および各倍音成分の正弦波データを不揃いにするので、発音当初（又は消音当初）の微妙な音色変化を有するドローバー音にクリック音が混合されて実際のドローバーオルガンと同等の演奏表現力の有るドローバー音が発音される。すなわち、実際のドローバーオルガンの発音メカニズムに即した独特のドローバー音を生成することが出来る。
【００４５】
なお、上述した実施形態では、各フィートに対応した基音および各倍音成分の発生タイミング（又は停止タイミング）を、押鍵速度の逆数１／ＶＥＬ（又は１／ＶＥＬ１）として算出される一定の待ち時間ＴＩＭＥに従って順番にばらつかせるようにしたが、これに限らず、ランダムに変化する待ち時間が経過する毎に、基音および複数の倍音の発生をランダムに指定してそれらの発生タイミングをばらつかせることも可能であり、こうすることで押離鍵操作する毎に生じる押鍵時（又は離鍵時）の微妙な音色変化を、押離鍵操作の都度、異ならせることが可能になる。
【００４６】
また、本実施形態では、押鍵速度（又は離鍵速度）に対応した波形種および音量のクリック音を発生させるようにしたが、これに替えて、押鍵速度（又は離鍵速度）に応じてランダムにクリック音の波形種および音量を異ならせる態様としても構わない。このようにすれば、より一層ドローバー音らしさを醸し出すことが可能になる。
【００４７】
以上、本発明の実施の一形態について説明したが、本発明はそれに限定されるものではなく、本願出願の特許請求の範囲に記載された発明とその均等の範囲に含まれる。以下では、本願出願当初の特許請求の範囲に記載された各発明について付記する。
【００４８】
（付記）
［請求項１］
押離鍵操作に応じて押鍵速度および離鍵速度を取得する取得手段と、
楽音の基音と複数の倍音夫々を発音させる複数の発音手段と、
前記取得手段により取得された押鍵速度に応じて、前記複数の発音手段にて発音される基音および複数の倍音夫々の発音タイミングをばらつかせる発音タイミング変更手段と、
前記発音タイミング変更手段によりばらつかせた発音タイミング夫々に基づき、前記複数の発音手段に対して基音および複数の倍音の発音を指示する発音指示手段と、
前記取得手段により取得された離鍵速度に応じて、前記複数の発音手段により発音されている基音および複数の倍音夫々の消音タイミングをばらつかせる消音タイミング変更手段と、
前記消音タイミング変更手段によりばらつかせた消音タイミング夫々に基づき、前記複数の発音手段に対して、基音および複数の倍音の消音を指示する消音指示手段と、
を具備することを特徴とする楽音発生装置。
【００４９】
［請求項２］
前記発音タイミング変更手段は、前記押鍵速度に応じた第１の待機時間を発生する第１の待機時間発生手段を備え、当該第１の待機時間が経過する毎に、前記基音および複数の倍音夫々の発音を順番に指示することにより、それらの発音タイミングをばらつかせることを特徴とする請求項１記載の楽音発生装置。
【００５０】
［請求項３］
前記第１の待機時間発生手段は、前記押鍵速度の逆数から第１の待機時間を算出することを特徴とする請求項２記載の楽音発生装置。
【００５１】
［請求項４］
前記消音タイミング変更手段は、前記離鍵速度に応じた第２の待機時間を発生する第２の待機時間発生手段を備え、当該第２の待機時間が経過する毎に、発音している前記基音および複数の倍音夫々の消音を順番に指示することにより、それらの消音タイミングをばらつかせることを特徴とする請求項１記載の楽音発生装置。
【００５２】
［請求項５］
前記第２の待機時間発生手段は、前記離鍵速度の逆数から第２の待機時間を算出することを特徴とする請求項４記載の楽音発生装置。
【００５３】
［請求項６］
前記発音タイミング変更手段が前記基音および複数の倍音夫々の発音タイミングをばらつかせる順序と、前記消音タイミング変更手段が前記基音および複数の倍音夫々の消音タイミングをばらつかせる順序とを異ならせることを特徴とする請求項１記載の楽音発生装置。
【００５４】
［請求項７］
前記発音タイミング変更手段は、前記基音および複数の倍音夫々の発音をランダムに指定することにより、それらの発生タイミングをばらつかせることを特徴とする請求項１記載の楽音発生装置。
【００５５】
［請求項８］
前記楽音発生装置はさらに、前記押鍵操作に応じて押鍵クリック音を発音する押鍵クリック音発音手段を有することを特徴とする請求項１記載の楽音発生装置。
【００５６】
［請求項９］
前記押鍵クリック音は、前記押鍵速度に応じて波形種および音量の少なくともひとつがランダムに変化することを特徴とする請求項８記載の楽音発生装置。
【００５７】
［請求項１０］
前記楽音発生装置はさらに、前記離鍵操作に応じて離鍵クリック音を発音する離鍵クリック音発音手段を有することを特徴とする請求項１記載の楽音発生装置。
【００５８】
［請求項１１］
前記離鍵クリック音は、前記離鍵速度に応じて波形種および音量の少なくともひとつがランダムに変化することを特徴とする請求項１０記載の楽音発生装置。
【００５９】
［請求項１２］
押離鍵操作に応じて押鍵速度および離鍵速度を取得する取得手段と、楽音の基音と複数の倍音夫々を発音させる複数の発音手段と、を有するコンピュータに、
前記取得手段により取得された押鍵速度に応じて、前記複数の発音手段にて発音される基音および複数の倍音夫々の発音タイミングをばらつかせる発音タイミング変更ステップと、
前記発音タイミング変更ステップによりばらつかせた発音タイミング夫々に基づき、前記複数の発音手段に対して基音および複数の倍音の発音を指示する発音指示ステップと、
前記取得手段により取得された離鍵速度に応じて、前記複数の発音手段により発音されている基音および複数の倍音夫々の消音タイミングをばらつかせる消音タイミング変更ステップと、
前記消音タイミング変更ステップによりばらつかせた消音タイミング夫々に基づき、前記複数の発音手段に対して、基音および複数の倍音の消音を指示する消音指示ステップと、
を実行させることを特徴とするプログラム。
【符号の説明】
【００６０】
１０  鍵盤
１１  ドローバー
１２  ＣＰＵ
１３  ＲＯＭ
１４  ＲＡＭ
１５  音源
１６  サウンドシステム
１００  楽音発生装置
【図１】
0005532446.tif 000002
【図２】
0005532446.tif 000003
【図３】
0005532446.tif 000004
【図４】
0005532446.tif 000005
【図５】
0005532446.tif 000006
【図６】
0005532446.tif 000007
【図７】
0005532446.tif 000008