(57)【要約】【課題】別途の操作子を設けることなくノートオンとノートオフだけで、また全音域にわたって、レガート制御するしないを弾き分けることができ、さらに和音演奏の場合にはアタックのある楽音で発音することができる楽音発生装置を提供することを目的とする。【解決手段】前音と次音が重なったとき、前音のノートオンと次音のノートオンの時間差が閾値以上であればレガート制御を行う。前音と次音が重なったとき、次音の発音を所定時間だけ待って、その間にさらにその次のノートオンが来なければレガート制御を行う。前音と次音が重なったとき、次音のベロシティが閾値以上（または以下）の場合にレガート制御を行う。前音と次音が重なったとき、次音の音高が前音の音高より高い（または低い）場合にレガート制御を行う。【選択図】  図４
2005010438.tif 000002
【特許請求の範囲】
【請求項１】
ノートオンの指示に応じて楽音を発生する楽音発生装置であって、
現在ノートオン中の楽音がある状態で、次音のノートオンが検出されたかどうかを判定する手段と、
現在ノートオン中の楽音がある状態で、次音のノートオンが検出されたとき、前記現在ノートオン中の楽音のノートオン発生時点と前記次音のノートオン発生時点との時間差が所定の閾値以上であるか否か判定する手段と、
前記時間差が所定の閾値以上のとき、レガート制御を行って前記次音の楽音を発生する手段と
を備えたことを特徴とする楽音発生装置。
【請求項２】
ノートオンの指示に応じて楽音を発生する楽音発生装置であって、
現在ノートオン中の楽音がある状態で、次音のノートオンが検出されたかどうかを判定する手段と、
現在ノートオン中の楽音がある状態で、次音のノートオンが検出されたとき、該次音のノートオン発生時点から所定時間内にさらに次のノートオンが検出されたかどうかを判定する手段と、
前記所定時間内にノートオンが検出されなかったとき、レガート制御を行って前記次音の楽音を発生する手段と
を備えたことを特徴とする楽音発生装置。
【請求項３】
ノートオンの指示に応じて楽音を発生する楽音発生装置であって、
レガート制御を行うか否かの判定に用いる上限の閾値または下限の閾値を設定する手段と、
現在ノートオン中の楽音がある状態で、次音のノートオンが検出されたかどうかを判定する手段と、
現在ノートオン中の楽音がある状態で、次音のノートオンが検出されたとき、前記次音のノートオン時に検出されたベロシティと前記閾値とを比較しその大小関係を求める手段と、
前記閾値が下限の閾値である場合は、前記ベロシティが前記閾値以上のときレガート制御を行うと判定し、前記閾値が上限の閾値である場合は、前記ベロシティが前記閾値以下のときレガート制御を行うと判定する手段と、
レガート制御を行うと判定されたとき、レガート制御を行って前記次音の楽音を発生する手段と
を備えたことを特徴とする楽音発生装置。
【請求項４】
ノートオンの指示に応じて楽音を発生する楽音発生装置であって、
音高の移行の方向として上方向または下方向を設定する手段と、
現在ノートオン中の楽音がある状態で、次音のノートオンが検出されたかどうかを判定する手段と、
現在ノートオン中の楽音がある状態で、次音のノートオンが検出されたとき、前記ノートオン中の楽音から前記次音の楽音への音高の移行の方向を求める手段と、
前記設定手段で上方向が設定されている場合は、前記音高の移行の方向が上方向のときレガート制御を行うと判定し、前記設定手段で下方向が設定されている場合は、前記音高の移行の方向が下方向のときレガート制御を行うと判定する手段と、
レガート制御を行うと判定されたとき、レガート制御を行って前記次音の楽音を発生する手段と
を備えたことを特徴とする楽音発生装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、レガート演奏を検出し、そのレガート演奏に応じてレガート制御を施して楽音を発生する楽音発生装置に関する。
【０００２】
【従来の技術】
従来より、レガート演奏を検出したら楽音にポルタメントをかけて出力する技術が知られている（特許文献１）。また、レガート演奏を検出したら波形データのアタック部の途中から読み出して楽音を生成する技術が知られている（特許文献２）。さらに、レガート演奏を検出したら、通常の波形データとは別のスラー波形データで楽音を生成する技術が知られている（特許文献３）。
【０００３】
レガート演奏の検出方法としては以下のような方法が知られている。
▲１▼前音のノートオフと次音のノートオンとが時間的に近接している場合に、レガート演奏と判定する。
▲２▼前音のノートオフが来る前に、次音のノートオンが来た場合に、レガート演奏と判定する。
▲３▼前音のノートオフが来る前に、音高差が閾値内の次音のノートオンが来た場合に、レガート演奏と判定する。
【０００４】
また、操作子（ニーレバー）により、上記レガート演奏の検出を行うか否か（オンオフ）を制御するものが知られている（特許文献２）。
【０００５】
【特許文献１】特公平３−１８１９７号
【０００６】
【特許文献２】特許第２７９２３６８号
【０００７】
【特許文献２】特開平１０−３０７５８６号
【０００８】
【発明が解決しようとする課題】
上述した別途の操作子（ニーレバー）によってレガート演奏の検出を行うか否かを制御する方法では、そのための操作子を設ける必要がある。そのような別途の操作子を設けることなく、鍵盤等の演奏操作子で生成されるノートオンとノートオフだけでレガート制御するしないを弾き分けたいという要求がある。
【０００９】
一方、音高差が閾値以内であることをレガート判定の条件にする場合、その閾値以上の音高差のレガート制御はできないという不具合がある。ノートオンとノートオフだけで、全音域にわたってレガート制御するしないを弾き分けたい。
【００１０】
さらに、上述したレガート演奏の検出方法では、和音演奏の際に不具合が起こる。例えば、前音のノートオン中に和音を構成する複数のノートオンが来たとき、それら複数のノートオンの各音に対してレガート制御がかけられ、和音の各音がアタックのない音色で発音される。複数同時に発生したノートオンであれば、それは和音演奏と考えられるので、レガート制御の対象から外して、アタックのある楽音としたい。
【００１１】
この発明は、上述の従来技術における問題点に鑑み、別途の操作子を設けることなくノートオンとノートオフだけで、また全音域にわたって、レガート制御するしないを弾き分けることができ、さらに和音演奏の場合にはアタックのある楽音で発音することができる楽音発生装置を提供することを目的とする。
【００１２】
【課題を解決するための手段】
この目的を達成するため、この発明は、前音と次音が重なったとき、前音のノートオンと次音のノートオンの時間差が閾値以上であれば、レガート制御を行うようにしたことを特徴とする。また、前音と次音が重なったとき、次音の発音を所定時間だけ待って、その間にさらにその次のノートオンが来なければレガート制御を行うようにしたことを特徴とする。さらに、前音と次音が重なったとき、次音のベロシティが閾値以上（または以下）の場合にレガート制御を行うようにしたことを特徴とする。さらに、前音と次音が重なったとき、次音の音高が前音の音高より高い（または低い）場合にレガート制御を行うようにしたことを特徴とする。
【００１３】
【発明の実施の形態】
以下、図面を用いてこの発明の実施の形態を説明する。
【００１４】
図１は、この発明の実施の形態に係る楽音発生装置のブロック構成を示す。この装置は、中央処理装置（ＣＰＵ）１０１、フラッシュメモリ１０２、ランダムアクセスメモリ（ＲＡＭ）１０３、鍵盤１０４、ＭＩＤＩ入出力インターフェース（Ｉ／Ｏ）１０５、パネル操作子１０６、パネル表示器１０７、音源１０８、波形メモリ１０９、およびサウンドシステム１１０を備える。これら各部はバスラインにより相互に接続されている。
【００１５】
ＣＰＵ１０１は、本装置全体の動作を制御する処理装置である。ＣＰＵ１０１は、鍵盤１０４の演奏操作を検出し該演奏操作に応じた発音指示を音源１０８に出力するが、特に鍵盤１０４がレガート演奏されたことを検出したときはレガート制御で楽音を生成するように音源１０８に指示を与える。フラッシュメモリ１０２は、ＣＰＵ１０１が実行する各種制御プログラムやデータを格納する不揮発性メモリである。ＲＡＭ１０３は、プログラムのロード領域や各種バッファ領域として使用する揮発性メモリである。鍵盤１０４は、ユーザが演奏操作するための複数の鍵を備えた鍵盤である。ＭＩＤＩ  Ｉ／Ｏ１０５は、外部のＭＩＤＩ機器と接続するためのインターフェースである。パネル操作子１０６は、この装置の外部パネル上に設けられた各種の操作子である。パネル表示器１０７は、この装置の外部パネル上に設けられたディスプレイである。音源１０８は、ＣＰＵ１０１からの指示に基づき波形メモリ１０９から波形データを読み出して楽音を生成し、サウンドシステム１１０により放音する。
【００１６】
図２は、図１の装置で採用している波形メモリ読み出し方式の音源１０８において生成する楽音のエンベロープ波形２００を示す。エンベロープ波形２００は、ノートナンバＸのノートオン発生タイミング２０１でアタック部が立ち上がり、ディケイ部とサスティン部の後、ノートオフ発生タイミング２０２でリリース部に移行する（いわゆるＡＤＳＲ方式）。ノートオン２０１からノートオフ２０２までが一楽音のノートオン期間２０３となる。このエンベロープ波形２００は、レガート演奏でないときに使用される通常用音色の波形であり、立ち上がり部にアタック感のあるものである。通常用音色では、当該音色に対応する自然楽器をアタックをつけて演奏した音をサンプリングし、そのサンプリングされた波形データを素材（通常用波形データ）として使用する。該波形データは、アタック部とループ部からなる波形データに加工されて波形メモリに記憶される場合が多い。波形読出のためのパラメータは、指定された音高（ノートナンバ）に対応した速度で、該波形データをアタック部の先頭から読み出し、続いてループ部を繰り返し読み出すように設定する。音量ＥＧパラメータは、音量エンベロープ波形がノートオンに応じて開放状態からスタートする、または、レガート用音色より速い速度で立ち上がるように設定するとよい。
【００１７】
上述の通常用音色のほか、本装置の波形メモリ１０９にはレガート用音色の波形データが格納されている。レガート用音色は、レガート演奏されたときに通常音色の代わりに使用される、通常用音色に比べてアタック感の弱い音色である。当該音色に対応する自然楽器をアタックを付けないように演奏した音をサンプリングし、そのサンプリングされた波形データを素材（レガート用波形データ）として使用する。例えば、ギター音色であれば、ギターをハンマリングオン奏法で演奏した音、トランペットやサックスなどの管楽器音色であれば、該管楽器をレガートで演奏した２音目の音を切り出したり、ブレスの調整により単音でなるべくアタックを付けずに吹いた音である。なお、レガート用音色にも通常用音色で使用している波形データと同じ波形データを用いて、アタック感を弱めるため波形読出用のパラメータを、アタック部の途中から読み出し、続いてループ部を繰り返し読み出すように、設定してもよい。音量ＥＧパラメータは、音量エンベロープ波形が通常用音色より遅い速度で立ち上がるように設定するとよい。
【００１８】
図３は、図１の装置のパネル表示器１０７に表示される各音色のレガート制御の設定画面を示す。この画面は、所定の操作で音色を選択し、レガート制御設定画面の呼び出しを行うことにより表示される。図３のタイトル３００の「音色Ｎｏ．１７  レガート制御  設定画面」は、この設定画面が音色ナンバが１７の音色に関するレガート制御設定画面であることを示している。３０１は当該音色Ｎｏ．１７に対するレガート制御を行うか否かを設定するチェックボックスである。チェックボックス３０１がチェックされている状態（ＥＮＡＢＬＥオン）のとき、当該音色の演奏に対しては、後述するような条件判定の基でレガート制御を行う。チェックボックス３０１がチェックされていない状態（ＥＮＡＢＬＥオフ）のとき、当該音色に対するレガート制御を行わない。ＥＮＡＢＬＥオフのときは、当該設定画面内でこれ以降の設定は受け付けない。
【００１９】
ＥＮＡＢＬＥオンのとき、当該音色（ここでは音色Ｎｏ．１７）の音からレガート制御で移行する次音の音色であるレガート用音色Ｎｏ．を入力する領域が３１１である。ここではレガート用音色Ｎｏ．３６が設定されているので、前音（音色Ｎｏ．１７またはＮｏ．３６）の後の次音のノートオンでレガート制御すべきと判定されたとき、当該ノートオンで発音する楽音は音色Ｎｏ．３６である。すなわち、レガート制御で次音の音色Ｎｏ．３６の楽音に移行するように制御される。
【００２０】
ＥＮＡＢＬＥオンのときは、後述するチェックボックス３０２〜３０４のそれぞれの設定状態に応じてレガート制御を行なうか否かを判定するが、その前提として、前音と次音のノートオン期間が重なっていることが必要である。すなわち、前音がノートオフされる前に次音がノートオンされたとき、チェックボックス３０２〜３０４に係るそれぞれの条件を判定し（その判定方法は以下で説明する）、レガート制御を行うと判定された場合にレガート制御を行う。なお、チェックボックス３０２〜３０４がすべてオフされていた場合は、前音がノートオフされる前に次音がノートオンされたときレガート制御を行う。また、チェックボックス３０２〜３０４のオン／オフは独立して設定できるものとする。
【００２１】
３０２は前音と次音とのノートオンの時間差による判定を行うか否かを設定するチェックボックスであり、３１２はその時間幅を設定する入力領域である。チェックボックス３０２がオンされている場合は、前音のノートオンと次音のノートオンとの時間差が領域３１２で設定している値以上のときレガート制御を行い、そうでないときレガート制御を行わない。
【００２２】
３０３は演奏時のベロシティによる判定を行うか否かを設定するチェクボックスであり、３１３はその閾値を設定する入力領域である。ボタン３１４と３１５は、閾値「以上」または「以下」を設定する択一的なラジオボタンである。チェクボックス３０３がオンされており、「以上」を示すラジオボタン３１４がオンされている場合は、次音のノートオンのベロシティが領域３１３に設定された閾値以上のときレガート制御を行い、そうでないときレガート制御を行わない。同様に、チェクボックス３０３がオンされており、「以下」を示すラジオボタン３１５がオンされている場合は、次音のノートオンのベロシティが領域３１３に設定された閾値以下のときレガート制御を行い、そうでないときレガート制御を行わない。上述の「以上」は閾値を下限として用いる意味であり、「以下」は閾値を上限として用いる意味である。
【００２３】
３０４は音高の移行の方向による判定を行うか否かを設定するチェックボックスである。「ＵＰ」ボタン３１６と「ＤＯＷＮ」ボタン３１７は、その方向が音高の高くなる方向か低くなる方向かを択一的に選択するラジオボタンである。チェクボックス３０４がオンされており、「ＵＰ」ボタン３１６がオンされている場合は、前音から次音へ音高が上昇する方向のときレガート制御を行い、そうでないときレガート制御を行わない。同様に、チェクボックス３０４がオンされており、「ＤＯＷＮ」ボタン３１７がオンされている場合は、前音から次音へ音高が下降する方向のときレガート制御を行い、そうでないときレガート制御を行わない。
【００２４】
３２０はこの設定画面を閉じるクローズボタンである。ユーザは、パネル表示器１０７に表示された図３のような設定画面上で、パネル操作子１０６を操作することにより、各音色のレガート制御について上述したような設定を行うことができる。
【００２５】
図４は、ＣＰＵ１０１が鍵盤１０４の何れかの鍵のノートオンイベントを検出したときに実行するノートオンイベント処理のフローチャートであり、特にレガート制御がＥＮＡＢＬＥ（図３のチェックボックス３０１がオン）の場合のノートオンイベント処理を示す。
【００２６】
ステップ４０１で、ノートオンされたノートナンバおよびベロシティをそれぞれレジスタＮＮおよびＶＥＬにセットする。ステップ４０２で、現在ノートオン中の発音ｃｈ（チャンネル）があるか否か判定し、無いときは、レガート演奏でなく通常の演奏の発音ということであるから、ステップ４０５で発音ｃｈを割り当て、ステップ４０６で割り当てたｃｈのレジスタにＮＮおよびＶＥＬに対応した通常発音用音色例えば音色Ｎｏ．１７の音色の楽音制御パラメータを設定し、ステップ４０７で当該ｃｈに発音開始のトリガを送出して、終了する。
【００２７】
ステップ４０２でノートオン中の発音ｃｈがあるときは、ステップ４０３で、設定された条件に従いレガート制御を行うか否か判定する。レガート制御を行うときはステップ４０４からステップ４０８に進み、行わないときはステップ４０４からステップ４０５以降の通常の発音処理に進む。
【００２８】
ここでステップ４０３におけるレガート制御判定について説明する。まず、図３のチェックボックス３０２，３０３，３０４が何れもオフのときは、レガート制御を行う。チェックボックス３０２がオンのときは以下の▲１▼の条件を判定し、チェックボックス３０３がオンのときは以下の▲２▼の条件を判定し、チェックボックス３０４がオンのときは以下の▲３▼の条件を判定する。▲１▼〜▲３▼のうち２つ以上の条件判定を行うときは、何れか１つの条件で「レガート制御を行わない」とされたら後の条件は判定しない。何れか１つの条件で「レガート制御を行う」とされた場合は、残りの条件についても判定するものとする。すなわち、▲１▼〜▲３▼の各条件は「レガート制御を行わない」ことの判定条件としてＯＲで結ばれているものとする。なお、
【００２９】
▲１▼の条件を説明する。前音（ステップ４０２で現在ノートオン中の楽音）と次音（今回発生したノートオンイベントの楽音）とのノートオンの時間差が、領域３１２で設定している値以上かどうか判定する。以上のときレガート制御を行い、そうでないとき行わないとする。
【００３０】
▲２▼の条件を説明する。「以上」ボタン３１４がオンの場合は、今回発生したノートオンイベントのベロシティが領域３１３に設定された閾値以上のときレガート制御を行い、そうでないとき行わないとする。「以下」ボタン３１５がオンの場合は、今回発生したノートオンイベントのベロシティが領域３１３に設定された閾値以下のときレガート制御を行い、そうでないとき行わないとする。
【００３１】
▲３▼の条件を説明する。「ＵＰ」ボタン３１６がオンの場合は、前音から次音へ音高が上昇する方向のときレガート制御を行い、そうでないとき行わないとする。「ＤＯＷＮ」ボタン３１７がオンの場合は、前音から次音へ音高が下降する方向のときレガート制御を行い、そうでないとき行わないとする。
【００３２】
以上の条件判定により、レガート制御を行うと判定されたときステップ４０４から４０８に進み、行わないと判定されたときステップ４０４から４０５に進むものである。
【００３３】
レガート制御を行うときは、ステップ４０８で発音ｃｈを割り当て、ステップ４０９で割り当てたｃｈのレジスタにＮＮおよびＶＥＬに対応したレガート用音色（現在設定されている音色に対し、図３の設定画面の領域３１１で設定されている音色）例えば音色Ｎｏ．３６の音色の楽音制御パラメータを設定し、ステップ４１０で当該ｃｈに発音開始のトリガを送出して、終了する。
【００３４】
なお、上記実施の形態では、図３のチェックボックス３０２〜３０４に係る上記▲１▼〜▲３▼の条件を、（前音のノートオン中に次音のノートオンが来たことを前提として）「レガート制御を行わない」ことの判定条件としてＯＲで結ばれているとして説明したが、各条件の捉え方は任意である。すなわち、各条件を「レガート制御を行う」ケースを抽出する条件として見るか、「レガート制御を行わない」ケースを抽出する条件として見るかは、条件ごとに独立しており任意である。例えば、上記▲１▼〜▲３▼の条件を「レガート制御を行う」ことの判定条件としてＯＲで結ばれているとしてもよい。また、各条件に優先順位を付け、該順位が高い条件から判定していってもよい。さらに、従来より知られているレガート演奏の検出方法と組み合わせてもよい。ただし、通常は１音ごとにアタック感のある楽音で演奏し、時々レガート制御を入れたい場合が多いと考えられ、またその方が弾き分けることがし易いので、「レガート制御を行わない」ことの判定条件としてＯＲで結ばれているとする方が好ましい。
【００３５】
上記実施の形態では、レガート制御の方法として、レガート用音色の楽音を発生するようにしたが、レガート制御の方法は任意である。
【００３６】
【発明の効果】
以上説明したように、この発明によれば、前音と次音が重なった場合に、前音のノートオンと次音のノートオンの時間差が閾値以上のとき、あるいは次音のノートオンから所定時間待ってその間にさらに次のノートオンが来ないとき、レガート制御を行うようにしているので、レガートで１音ずつ弾かれた場合にのみレガート制御がかけられ、同時に複数音がノートオンされた（バッキング演奏や和音演奏の場合）ときには、レガート制御のされないアタックのある音で発音させることができる。同時にノートオンされた音のうちの最初の１音だけはレガート制御されるが、同時にノートオンされた他の音のアタックによりマスキングされて目立たない。
【００３７】
また、前音と次音が重なったとき、次音のベロシティが閾値以上（または以下）の場合にレガート制御を行うので、次音を強く（または弱く）弾いたときにレガート制御をかけることができる。さらに、前音と次音が重なったとき、次音の音高が前音の音高より高い（または低い）場合にレガート制御を行うようにできる。
【図面の簡単な説明】
【図１】この発明の実施の形態に係る楽音発生装置のブロック構成図
【図２】楽音のエンベロープ波形を示す図
【図３】レガート制御の設定画面を示す図
【図４】レガート制御がＥＮＡＢＬＥの場合のノートオンイベント処理のフローチャート図
【符号の説明】
１０１…中央処理装置（ＣＰＵ）、１０２…フラッシュメモリ、１０３…ランダムアクセスメモリ（ＲＡＭ）、１０４…鍵盤、１０５…ＭＩＤＩ入出力インターフェース（Ｉ／Ｏ）、１０６…パネル操作子、１０７…パネル表示器、１０８…音源、１０９…波形メモリ、１１０…サウンドシステム。
【図１】
2005010438.tif 000003
【図２】
2005010438.tif 000004
【図３】
2005010438.tif 000005
【図４】
2005010438.tif 000006