説明

楽音制御信号生成装置

【課題】チャタリングの発生を楽音制御に利用して演奏表現力を高める。
【解決手段】同一の動作センサ21から、イベントデータevがBオン→Cオンの順に発生した場合にオンベロシティVonを算出し、これと最新イベント(Cオン)中のノートデータNoteとを対応付けて準備データとして記憶する。Cオン後、所定時間tmが経過している準備データについてはそのノートデータNote及びオンベロシティVonにてノートオンの演奏信号を生成する。最新イベント(Cオフ)が発生した場合は、それとノートデータNoteを同じくする準備データが存在すればチャタリング発生と判定する。そして、準備データ中のVon値が閾値Vx以上であればそれに加算値Vαを加算して更新し、新たなVon値及びノートデータNoteにてノートオンの演奏信号を生成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、演奏操作子の操作を検出して楽音制御信号を生成する楽音制御信号生成装置に関する。
【背景技術】
【0002】
従来、演奏操作子のオン動作を検出し、ノートオン信号等の楽音制御信号を生成する楽音制御信号生成装置が知られている。その際、演奏操作に応じて楽音制御信号における音量等のパラメータを制御することも行われている。例えば、鍵盤楽器においては、接点時間差のセンサを設けてオンベロシティを検出し、音量に反映させる。
【0003】
ところが、通常、時間差を図るパルス間隔は一定であるため、ある程度の押鍵強さを超えると、検出されるオンベロシティの値があまり変化しなくなる(検出値の飽和)。そのため、表現力に制約がある。
【0004】
また、下記特許文献1に示されるように、鍵盤楽器の鍵の奏法として、上方に離れた位置から指を打ち降ろして押鍵する「標準奏法」と、鍵に指をタッチした状態から押鍵を開始する「押し弾き奏法」とが知られている。奏法が異なれば奏者の意思としては異なるものであるが、検出されるオンベロシティとして同じ値であると、その違いが、発生する楽音の特性に反映されない。そこで、下記特許文献1は、奏法を判定して奏法に応じた楽音制御を行うようにしている。
【0005】
ところで、一般に、メカ式のスイッチにおいて、極めて短い時間でオンオフが繰り返されるメカ的なチャタリングが発生するほか、検出回路の側の要因でチャタリングが発生することもある。
【0006】
そこで、楽音制御上のチャタリングによる影響を回避するようにした楽音制御信号生成装置が検討され、そのような装置も既に知られている。例えば、下記特許文献2の装置では、スイッチのオンが検出されると、チャタリング閾値の範囲内にそのスイッチがオフになったとしてもそれを無視する。また、下記特許文献3の装置では、キースイッチ要素の作動が作動してから一定の時間(チャタリングマスク時間)、キースイッチ要素の作動状態に基づき発生する鍵状態信号の変化を禁止する。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特許3561947号公報
【特許文献2】特開2002−244662号公報
【特許文献3】特許2674264号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、上記特許文献1の装置では、奏法の判定のために、オンベロシティとアフタタッチセンサの検出値を用いることから、制御が複雑である。また、センサのチャタリングの除去については考慮されていない。
【0009】
ところで、チャタリングが生じるような演奏操作は、検出される最大のベロシティを超えるような強い操作の意思であると把握することもできる。あるいは、発音タイミングを異ならせる意思と把握することも可能である。奏者の意思は、楽音統制の制御に極力反映されることが望ましい。ところで、チャタリングは、鍵盤楽器に限られず、電子打楽器等の他の楽器においても発生し得る。
【0010】
本発明は上記従来技術の問題を解決するためになされたものであり、その目的は、チャタリングの発生を楽音制御に利用して演奏表現力を高めることができる楽音制御信号生成装置を提供することにある。
【課題を解決するための手段】
【0011】
上記目的を達成するために本発明の請求項1の楽音制御信号生成装置は、演奏操作される演奏操作子(1)と、前記演奏操作子のオン動作及びオフ動作を検出する動作センサ(21)と、前記動作センサにおけるオン動作時のチャタリングの発生の有無を判定するチャタリング判定手段(5)と、前記動作センサによりオン動作が検出されたことを条件に、楽音制御信号を生成する信号生成手段(5)とを有し、前記信号生成手段は、前記チャタリング判定手段によりチャタリング有りと判定された場合は、チャタリング有りと判定されない場合に対して、生成する楽音制御信号における楽音パラメータ(Von)を変更することを特徴とする。
【0012】
好ましくは、前記チャタリング判定手段は、前記動作センサにより前記演奏操作子のオン動作が検出された後、所定時間(tm)内にオフ動作が検出された場合にのみチャタリング有りと判定する(請求項2)。
【0013】
好ましくは、前記信号生成手段は、前記動作センサにより前記演奏操作子のオン動作が検出された後、前記チャタリング判定手段によりチャタリング有りと判定されることなく前記所定時間が経過した場合に前記楽音制御信号を生成する(請求項3)。
【0014】
好ましくは、前記信号生成手段は、前記チャタリング判定手段によりチャタリング有りと判定された場合は、前記所定時間の経過に拘わらず前記楽音制御信号を生成する(請求項4)。
【0015】
好ましくは、前記信号生成手段は、前記チャタリング判定手段によりチャタリング有りと判定された場合であっても、前記所定時間の経過を待って前記楽音制御信号を生成する(請求項5)。
【0016】
好ましくは、前記信号生成手段は、前記チャタリング判定手段によりチャタリング有りと判定された場合は、チャタリング有りと判定されない場合に対して、生成する楽音制御信号における楽音パラメータとしてのオンベロシティの値を大きくする(請求項6)。
【0017】
好ましくは、前記動作センサは、前記演奏操作子のオン動作の検出に際し、そのオンベロシティも検出し、前記信号生成手段は、チャタリング有りと判定されない場合は、前記動作センサにより検出されたオンベロシティを、前記生成する楽音制御信号におけるオンベロシティとして適用する一方、チャタリング有りと判定された場合は、前記動作センサにより検出されたオンベロシティの値に所定値(Vα)を加算した値を、前記生成する楽音制御信号におけるオンベロシティとして適用する(請求項7)。
【0018】
好ましくは、前記信号生成手段は、チャタリング有りと判定され且つ前記動作センサにより検出されたオンベロシティの値が閾値(Vx)以上である場合に限り、前記動作センサにより検出されたオンベロシティの値に前記所定値を加算した値を、前記生成する楽音制御信号におけるオンベロシティとして適用する(請求項8)。
【0019】
上記目的を達成するために本発明の請求項9の楽音制御信号生成装置は、演奏操作される演奏操作子(1)と、前記演奏操作子のオン動作及びオフ動作を検出する動作センサ(21)と、前記動作センサにおけるオン動作時のチャタリングの発生の有無を判定するチャタリング判定手段(5)と、前記動作センサによりオン動作が検出されたことを条件に、楽音発生を指示する発音指示信号を生成する信号生成手段(5)とを有し、前記信号生成手段は、前記チャタリング判定手段によりチャタリング有りと判定された場合は、チャタリング有りと判定されない場合に対して、前記発音指示信号の生成タイミングを早くすることを特徴とする。
【0020】
なお、上記括弧内の符号は例示である。
【発明の効果】
【0021】
本発明の請求項1によれば、チャタリングの有無によって楽音パラメータを変えて、チャタリングの発生を楽音制御に利用して演奏表現力を高めることができる。
【0022】
請求項2によれば、チャタリングの判定処理が簡単である。
【0023】
請求項3によれば、チャタリングの非発生時において楽音制御が遅延し過ぎないようにすることができる。
【0024】
請求項4によれば、強い操作ほど発音が速くなり、奏法によって発音タイミングを変えることが可能となり、演奏表現力が高まる。
【0025】
請求項5によれば、操作の強弱による発音タイミングの差をなくすことができる。
【0026】
請求項6、7によれば、強い操作よりもさらに強い操作に応じた音量増大制御を可能にして演奏表現力を高めることができる。例えば、鍵盤楽器では、標準奏法と押し弾き奏法との音量差を大きくすることができる。
【0027】
請求項8によれば、音量増大制御を、真に強い操作時にだけ確実に行うことができる。
【0028】
本発明の請求項9によれば、チャタリングの有無によって発音タイミングを変えて、チャタリングの発生を楽音制御に利用して演奏表現力を高めることができる。
【図面の簡単な説明】
【0029】
【図1】本発明の第1の実施の形態に係る楽音制御信号生成装置が適用される電子鍵盤楽器の全体構成を示すブロック図である。
【図2】演奏操作子の操作状態と動作センサとの関係を示す模式図、動作センサの構成を示す断面図である。
【図3】1つの演奏操作子に関する押離操作とスイッチの動作を示す図、イベントシーケンスレジスタに記憶されるイベント履歴の一例を示す概念図である。
【図4】メインルーチンのフローチャートを示す図である。
【図5】図4のステップS103で実行される演奏信号生成処理のフローチャートである。
【図6】変形例の動作センサの構成を示す縦断面図である。
【図7】楽音制御信号生成装置が適用される電子打楽器の外観図、部分断面図である。
【図8】本発明の第2の実施の形態に係る楽音制御信号生成装置が適用される電子鍵盤楽器において、図4のステップS103で実行される演奏信号生成処理のフローチャートである。
【図9】図8の続きのフローチャートである。
【発明を実施するための形態】
【0030】
以下、本発明の実施の形態を図面を参照して説明する。
【0031】
(第1の実施の形態)
図1は、本発明の第1の実施の形態に係る楽音制御信号生成装置が適用される電子鍵盤楽器の全体構成を示すブロック図である。
【0032】
本鍵盤楽器は、鍵インターフェイス3、検出回路4、ROM6、RAM7、タイマ8、表示装置9、外部記憶装置10、インターフェイス(I/F)11、音源回路13及び効果回路14が、バス16を介してCPU5にそれぞれ接続されて構成される。
【0033】
また、センサ部20が、鍵インターフェイス3に接続されている。センサ部20は、鍵盤KBの操作を検出する。鍵盤KBには、複数の演奏操作子1(白鍵1W、黒鍵1B)が含まれ、センサ部20には、各演奏操作子1に対応する複数の動作センサ21が含まれる。
【0034】
検出回路4には、各種情報を入力するための設定操作子2が接続されている。表示装置9は楽譜や文字等の各種情報を表示する。CPU5にはタイマ8が接続される。I/F11には、MIDII/F、通信I/Fが含まれ、他のMIDI機器やサーバコンピュータ等との通信を可能にする。音源回路13には効果回路14を介してサウンドシステム15が接続されている。
【0035】
センサ部20の検出結果は、鍵インターフェイス3を介してCPU5に供給される。検出回路4は設定操作子2の操作状態を検出する。CPU5は、本装置全体の制御を司る。ROM6は、CPU5が実行する制御プログラムや各種テーブルデータ等を記憶する。RAM7は、演奏データ、テキストデータ等の各種入力情報、各種フラグやバッファデータ及び演算結果等を一時的に記憶する。タイマ8は、タイマ割り込み処理における割り込み時間や各種時間を計時する。外部記憶装置10は、上記制御プログラムを含む各種アプリケーションプログラムや各種楽曲データ、各種データ等を記憶する。
【0036】
音源回路13は、演奏操作子1から入力された演奏データや設定された演奏データ等を楽音信号に変換する。効果回路14は、音源回路13から入力される楽音信号に各種効果を付与し、DAC(Digital-to-Analog Converter)やアンプ、スピーカ等のサウンドシステム15は、効果回路14から入力される楽音信号等を音響に変換する。
【0037】
図2(a)は、演奏操作子1の操作状態と動作センサ21との関係を示す模式図である。図2(b)は、動作センサ21の構成を示す断面図である。演奏操作子1には、鍵盤における白鍵1Wまたは黒鍵1Bが相当するが、以降、白鍵1W及び黒鍵1Bを区別しないときは、「演奏操作子1」の呼称を用いる。
【0038】
演奏操作子1は、各々、押離操作によって上下に揺動するように配設され、担当する音高順に並列的に配列される。動作センサ21は、各演奏操作子1に対応して設けられ、対応する演奏操作子1の下方に配置される。動作センサ21は、演奏操作子1の変位ストロークにおける互いに異なる検出位置での検出用に設けられた3つのスイッチswを有する3メイク式スイッチである。スイッチswには、固定接点23及び可動接点22でなる第1スイッチswA、固定接点25及び可動接点24でなる第2スイッチswB、並びに、固定接点27及び可動接点26でなる第3スイッチswCが含まれる。それぞれ対向する固定接点と可動接点とが当接することでオン(メイク)する。
【0039】
対応する演奏操作子1が押下操作されると、図2(b)に示す初期状態から当該演奏操作子1のアクチュエータ部(あるいは演奏操作子1の下面1a)によって動作センサ21の上面21aが押下駆動され、第1スイッチswA、第2スイッチswB、第3スイッチswCの順にオンする。演奏操作子1が離操作されると、動作センサ21自身の弾性によって第3スイッチswC、第2スイッチswB、第1スイッチswAの順にオフし、初期状態に復帰する。
【0040】
図3(a)は、1つの演奏操作子1に関する押離操作とスイッチswの動作を示す図である。各演奏操作子1とそれに対応するスイッチswの動作は共通である。
【0041】
演奏操作子1は、浅い側の初期位置から深い側の押し切り位置までの変位ストロークを有する。往行程は、押下操作により初期位置から押し切り位置まで往方向に変位する行程で、復行程は、離操作により押し切り位置から初期位置まで復方向に変位する行程である。図示はしないが、演奏操作子1は、バネ等によって復方向に常に付勢されており、初期位置及び押し切り位置は、それぞれ鍵ストッパによって規制される。
【0042】
なお、上記した演奏操作子1を復方向に付勢するバネを設ける代わりに、動作センサ21の外側弾性膨出部21b(図2(b))の反発力で演奏操作子1が付勢されるようにしてもよい。また、上記鍵ストッパを設けることなく、外側弾性膨出部21b及び内側膨出部21c(図2(b))が共に最下位置に変位したことによって演奏操作子1の押鍵終了位置が規制されるようにしてもよい。
【0043】
各スイッチswは、オフ状態からオン状態に遷移するとオンイベント(往操作イベント)を発生させ、オン状態からオフ状態に遷移するとオフイベント(復操作イベント)を発生させる。押鍵の往行程においては、浅い側のスイッチswから順に、演奏操作子1の往方向への動作を検出するので、イベントとしてAオン、Bオン、Cオンが発生する。復行程においては、深い側のスイッチswから順に、演奏操作子1の復方向への動作を検出するので、イベントとしてCオフ、Bオフ、Aオフが発生する。
【0044】
このように、演奏操作子1が、初期位置から押し切り位置に一旦変位してから初期位置に復帰するよう操作された場合における往復行程においては、イベント発生順序が、Aオン→Bオン→Cオン→Cオフ→Bオフ→Aオフと定まっている。しかしながら、実際の往離操作において、様々な理由によりチャタリングが生じ得る。例えば、Cオフの直後に再びCオンが発生することがある。本実施の形態では、Cオンが発音の条件となりAオフが消音の条件となるが、実際上のチャタリングが生じたとしても楽音制御上においてはそれが影響しないようにして、実質的にチャタリングが生じなかったかのように処理する(チャタリングの除去)。また、上記したようなバネや鍵ストッパがない構成においては、それらがある構成に比べてチャタリングが生じやすいが、この構成においても同様に、チャタリングの発生が適切な発音の支障とならないように制御することができる。
【0045】
図3(b)は、イベントシーケンスレジスタに記憶されるイベント履歴の一例を示す概念図である。イベントシーケンスレジスタ(以下、「evレジスタ」という)は、RAM7に構築され、イベントデータevが発生順に時系列に記憶されたものがイベント履歴である。イベントデータevは、定められた記憶容量の範囲で保持され、記憶容量が一杯になると古いものから順に消去される。図3(b)の左側が最新のイベントデータevである。
【0046】
イベントデータevには、イベント種K、ノートデータNote、時刻データTが含まれる。ノートデータNoteは、複数の演奏操作子1の各々を特定する情報であり、本実施の形態では演奏操作子1は鍵であるので、音高を特定する情報にもなる。イベント種Kは、どのスイッチswからイベントが発生し、それがオンイベント、オフイベントのいずれであるかを示す情報である。時刻データTは各イベントの発生時刻を示す時間情報であり、例えば、T1はT8よりも古い。時刻データTは、タイマ8の計時によって把握されるので、実際には、イベントデータevは、動作センサ21、CPU5及びタイマ8の協働によって発生する。
【0047】
なお、各イベントの発生時刻を実質的に把握できればよいので、時刻データTは、必ずしも現在の絶対時刻でなくてもよく、押鍵開始等の特定の時点からの相対的な経過時間から把握される時間情報でもよい。あるいは、隣接するイベントの時間間隔から把握される時間情報でもよい。
【0048】
一例として、音高(音名)がE♭4である演奏操作子1が押離鍵操作され、第3スイッチswCでチャタリングが発生した場合を考える。図3(b)に示すように、Cオフであるイベントデータev3の直後に、Cオンであるイベントデータev4が発生している。しかし、本実施の形態では、後述する処理によって、Bオンであるイベントデータev1の直後に発生したCオンであるイベントデータev2によってノートオンの演奏信号を生成し、発音させるように制御する。イベントデータev4による発音はなされない。
【0049】
ところで、2以上の演奏操作子1が同時期に操作状態となる場合があるが、その場合は、それぞれの動作センサ21で発生したイベントデータevがイベント履歴内に時系列に混在することになる。どの演奏操作子1に係るイベントデータevであるかは、上記したようにノートデータNoteによって区別される。
【0050】
CPU5は、Cオンのイベントデータevが発生したとき、当該イベントデータevとノートデータNoteを同じくするイベントデータevのうち、その時点の直前に記憶されたものが、Bオンのイベントデータevである場合に限り、ノートオンの演奏信号を生成する。さらに、これら、ノートデータNoteが同じで時間的に隣接するBオンのイベントデータevとCオンのイベントデータevとの発生時間差からオンベロシティを決定する。
【0051】
また、Aオフのイベントデータevが発生したとき、当該イベントデータevとノートデータNoteを同じくするイベントデータevのうち、その時点の直前に記憶されたものが、Bオフのイベントデータevである場合に限り、ノートオフの演奏信号を生成する。さらに、これら、ノートデータNoteが同じで時間的に隣接するBオフイベントデータevとAオフのイベントデータevとの発生時間差からオフベロシティを決定する。
【0052】
以下、これらの処理をフローチャートにより説明する。図4は、メインルーチンのフローチャートを示す図である。本ルーチンはCPU5によって実行され、本楽器の電源のオン時に開始される。
【0053】
まず、初期化を実行、すなわち所定プログラムの実行を開始し、RAM7等の各種レジスタに初期値を設定して初期設定を行う(ステップS101)。次いで、パネル処理を実行、すなわち設定操作子2の操作を受け付け、音色や効果等の機器の設定の指示を実行する(ステップS102)。次に、演奏信号生成処理(図5)を実行する(ステップS103)。そして、楽音処理を実行する(ステップS104)。すなわち、ステップS103で生成された演奏信号に、設定された効果処理を付加し、増幅して出力する。その後、前記ステップS102に戻る。
【0054】
図5は、図4のステップS103で実行される演奏信号生成処理のフローチャートである。まず、センサ部20における全ての動作センサ21をスキャンする(ステップS201)。次に、スキャンの結果、いずれかの動作センサ21のいずれかのスイッチswによりオンまたはオフの動作が検出されたか否かを判別する(ステップS202)。そして、動作が検出された動作センサ21のスイッチsw、検出された動作の方向、及び検出された時刻から定まるイベントデータevを、evレジスタに取り込む(ステップS203)(図3(b)参照)。
【0055】
次に、最新イベント(evレジスタに最も新しく記憶されたイベントデータev)のイベント種Kが、「Cオン」であるか否かを判別し(ステップS204)、Cオンでなければ、最新イベントのイベント種Kが「Aオフ」であるか否かを判別する(ステップS209)。
【0056】
ステップS204の判別の結果、最新イベントのイベント種KがCオンである場合は、ノートデータNoteが最新イベントのものと同一であるイベントデータevをevレジスタからサーチする(ステップS205)。そして、サーチされたイベントデータevが存在する場合には、それらのうち最も新しいもの、すなわち、上記最新イベント(Cオン)の直前のイベントデータevを時刻データTから特定する。そして、特定したイベントデータevのイベント種Kが「Bオン」であるか否かを判別する(ステップS206)。
【0057】
その判別の結果、直前のイベントデータevのイベント種KがBオンでない場合は本ルーチンを終了する。この場合、ノートオンの演奏信号の生成はなされない。一方、Bオンであれば、当該Bオンの時刻データT(図3(b)ではT3)と上記最新イベント(Cオン)の時刻データT(図3(b)ではT4)との差から、オンベロシティVonを算出する(ステップS207)。オンベロシティVonは時間差の逆数に比例する。
【0058】
次に、上記最新イベント(Cオン)に対応するノートオンの演奏信号を生成し(ステップS208)、本ルーチンを終了する。このノートオンの演奏信号において、音高(ピッチ)は、最新イベント(Cオン)中のノートデータNoteによって規定され、オンベロシティVonはステップS207で算出した値である。ここで生成された演奏信号に従って、図4のステップS104で発音処理がなされる。
【0059】
前記ステップS209の判別の結果、最新イベントのイベント種Kが「Aオフ」である場合は、ノートデータNoteが最新イベントとのものと同一であるイベントデータevをevレジスタからサーチする(ステップS210)。そして、サーチされたイベントデータevのうち最も新しいもの、すなわち、上記最新イベント(Aオフ)の直前のイベントデータevのイベント種Kが「Bオフ」であるか否かを判別する(ステップS211)。
【0060】
その判別の結果、直前のイベントデータevのイベント種KがBオフでない場合は本ルーチンを終了する。この場合、ノートオフの演奏信号の生成はなされない。一方、Bオフであれば、当該Bオフと上記最新イベント(Aオフ)との時刻データTの差から、オフベロシティVoffを算出する(ステップS212)。オフベロシティVoffは時間差の逆数に比例する。 次に、上記最新イベント(Aオフ)に対応するノートオフの演奏信号を生成し(ステップS213)、本ルーチンを終了する。このノートオフの演奏信号において、音高(ピッチ)は、最新イベント(Aオフ)中のノートデータNoteによって規定され、オフベロシティVoffはステップS212で算出した値である。ここで生成された演奏信号に従って、図4のステップS104で消音処理がなされる。
【0061】
なお、同一の動作センサ21において、Bオフの後に、AオフとならずにBオン、Cオンとなる場合は、既に発音処理がなされている音の再発音となる。この場合、前記ステップS208では、既に発音処理がなされている音の消音処理(ノートオフの演奏信号生成)を行ってから、改めて発音処理(ノートオンの演奏信号を生成)を行うようにしてもよい。
【0062】
本実施の形態によれば、同一の動作センサ21から、イベントデータevがBオン→Cオンの順に発生した場合にだけノートオンの演奏信号が生成され、それ以外、例えば、Cオフ→Cオンの順に発生した場合は演奏信号が生成されない。これにより、Cオン及びCオフの繰り返しが起こったとしても、極めて短い時間間隔で発音が繰り返されるようなことは発生しない。従って、Cオン時のチャタリングによる影響が実質的に回避される。また、チャタリングマスク期間等の待ち時間を設けなくてもよいので、楽音発生の遅延が生じない。しかも、Cオンがあったとき、直前がBオンであるかどうかを判断すれば足りるので、チャタリング除去のための制御処理が複雑にならない。また、ノートオフについても同様の処理を適用してAオフ時のチャタリングによる影響が実質的に回避される。よって、簡単な処理にて、楽音制御の遅延を抑制しながらチャタリングの影響を回避することができる。なお、本実施の形態では、接点時間差をベロシティ検出の基本としているので、チャタリングがあったとしても、極端に短いBオン→Cオンはあり得ず、従来にあったような、チャタリング発生時に大音量が発生するような不具合も発生しない。
【0063】
また、ベロシティの算出においても、Bオン→Cオンの順、Bオフ→Aオフの順にイベントデータevが発生した場合にだけ、それぞれの発生時間差からオンベロシティ、オフベロシティが算出されるので、ベロシティを正確に決定することができる。
【0064】
ところで、本実施の形態では、動作センサ21として3メイク式を例示したが、チャタリングの影響回避の観点からは、最低限2メイク式(第1スイッチswA、第2スイッチswBのみ)でもよい。その場合は、Aオン→Bオンの順、Bオフ→Aオフの順にイベントデータevが発生した場合にだけ、ノートオン、ノートオフの演奏信号を生成する。従って、例えば、Bオフ→Bオンの順で発生したBオンのイベントデータevによっては、ノートオンの演奏信号を生成しない。また、Aオン→Aオフの順で発生したAオフのイベントデータevによっては、ノートオフの演奏信号を生成しない。
【0065】
また、動作センサ21としては、4メイク式以上の構成であってもよい。その場合でも、オンイベントに関してチャタリングを除去したいスイッチswを最も深い側のスイッチswとみなし、それより深い側に存在するスイッチswから発生するイベントを無視するように制御すればよい。オフイベントについては、チャタリングを除去したいスイッチswを最も浅い側のスイッチswとみなし、それより浅い側に存在するスイッチswから発生するイベントを無視するように制御すればよい。このように、機種によってスイッチswの数が増えても、制御処理によって、所望の箇所でのチャタリングを実質的に除去できるので、動作センサ21の自由度が高い。
【0066】
結局、同一の演奏操作子1に対応する動作センサ21から発生したイベント同士を対象として判断し、「所定の検出位置」で「所定のイベント」が発生した時点の直前に記憶されたイベントがイベント発生順序における1つ前のイベントである場合に限り、演奏信号を生成するようにすればよい。例えば、チャタリングを除去したいスイッチswの位置を「所定の検出位置」とすると共に、チャタリングに関わるイベント(オンまたはオフ)を「所定のイベント」とすればよい。
【0067】
加えて、プログラムの変更によって、必ずしもノートオン、ノートオフの2箇所のチャタリング除去だけでなく、3箇所以上でのチャタリング除去にも適用でき、拡張が容易である。逆に、ノートオフのチャタリング除去の処理を廃止して簡素化することも可能である。従って、ソフトウェアの観点からも設計の自由度が高い。
【0068】
また、チャタリング除去の効果を用いるものは、ノートオン、ノートオフ、ベロシティに限られない。すなわち、チャタリング除去の適用を受けて生成される信号はノートオンやノートオフの演奏信号に限られず、各種の楽音制御信号に応用が可能である。例えば、アフタ制御への適用も考えられ、音色乃至楽音特性を制御するパラメータであってもよい。
【0069】
また、本実施の形態では、動作センサ21として接点型の構成を採用したが、これに限られず、演奏操作子1の変位ストロークにおける異なる複数箇所(検出位置)で動作及びその方向を検出するものであればよく、光学的な検出手段(フォトセンサ等)のような、全行程センシングできる構成の検出手段であってもよい。
【0070】
この場合、例えば、演奏操作子1やそれに連動するハンマ等の変位部材にグレースケールを有するシャッタ部材を固定し、発光部から発した光がシャッタ部材を通過(または反射)して受光部に受光された光量の変化を検出する構成とする。そして、複数の検出位置の各々において、検出される光量の変化から、変位部材の動作を検出し、それに応じたイベントを発生させる。光量変化をリニアに検出し、テーブルを参照してイベントを発生させる構成であってもよい。
【0071】
また、動作センサ21における各スイッチswに相当するものは、必ずしもオンによって往動作、オフによって復動作を検出する構成に限られず、例えば、次に図6で示すようなトランスファ型のスイッチ体も動作センサ21として採用可能である。
【0072】
結局、動作センサとしては、演奏操作子1の往復の変位行程において、往行程では浅い側の検出位置から順にオンイベント(往操作イベント)が発生し、復行程では深い側の検出位置から順にオフイベント(復操作イベント)が発生するように、イベント発生順序が定まっている検出手段であればよい。従って、各種の構成のセンサを採用可能である。
【0073】
図6は、変形例の動作センサ21の構成を示す縦断面図である。この動作センサ21は、リーフホルダ30に、一対の固定リーフ31、32が片持ち状態で保持され、固定リーフ31、32間において可動リーフ34がリーフホルダ30に保持されて構成される。固定リーフ31、32が、それぞれ浅い側、深い側に対応する。固定リーフ31、32の自由端部側はスペーサ35によって適切な間隔が規制されている。リーフ31、32、34はいずれも弾性バネで形成される。
【0074】
可動リーフ34は、初期状態では当接部34aが固定リーフ31の先端部31aに当接している。このとき、スペーサ35の上端部35xと固定リーフ31の当接点31xとは離間してもよい。可動リーフ34の先端部が被駆動部34bとなり、対応する演奏操作子1によって被駆動部34bが押下駆動される。被駆動部34bが押下駆動されると、当接部34aが先端部31aから離間し、やがて当接部34aが固定リーフ32の先端部32aに当接する。このとき、スペーサ35の下端部35yと固定リーフ32の当接点32yとは離間してもよい。
【0075】
この動作センサ21は、2メイク式として機能し、CPU5及びタイマ8の協働によってイベントデータevを発生させる。すなわち、演奏操作子1の変位の往行程において、当接部34aが固定リーフ31の先端部31aから離間するとAオンのイベントデータev、当接部34aが固定リーフ32の先端部32aに当接するとBオンのイベントデータevが、それぞれ発生する。一方、演奏操作子1の変位の復行程において、当接部34aが固定リーフ32の先端部32aから離間するとBオフのイベントデータev、当接部34aが固定リーフ31の先端部31aに当接するとAオフのイベントデータevが、それぞれ発生する。なお、上端部35xと当接点31x、下端部35yと当接点32yとの離間または当接は、イベントデータevの生成タイミングには直接関与しない。
【0076】
ところで、上記実施の形態では、本楽音制御信号生成装置を電子鍵盤楽器に適用した例を示したが、これに限られず、楽音制御信号を用いる各種の楽器に適用可能である。例えば、図7に示すように、電子打楽器にも適用可能である。
【0077】
図7(a)は、楽音制御信号生成装置が適用される電子打楽器の外観図である。この電子打楽器は、上面に、複数のドラムパッド40や各種の操作子を備える。各ドラムパッド40にはサイズが異なるものがあるが、構成は基本的に同じであるので、1つのドラムパッド40について構成を説明する。図7(b)に示すように、円盤状のパッド体41が上ケース48の対応箇所に組み付けられる。上ケース48には、ドラムパッド40ごとに環状リブ49aが上方に突設される。環状リブ49aの内側下部には凹溝49aが形成されている。
【0078】
図7(c)は、図7(b)のA−A線に沿う部分断面図である。パッド体41は、円盤状のパッド部42と、パッド部42の周縁に連接したリム部43とを有し、弾性材で一体に形成される。パッド部42が、ドラムのパッド打撃に用いられ、リム部43が、リム打撃に用いられる。リム部43は、パッド体41の最も外側部分である取り付け部47とパッド部42の外縁とにスカート部で連結されていて、押下により上下に揺動自在になっている。
【0079】
図7(d)は、パッド体41が上ケース48に装着固定された状態におけるリム部43の部分断面図である。パッド体41を上ケース48に組み付ける際には、パッド体41の取り付け部47が、上ケース48の凹溝49aに嵌合される。リム部43の下部には、上記した可動接点22、24(図2(b))に相当する可動接点44、45が設けられる。一方、上ケース48における可動接点44、45に対応する位置には、固定接点23、25(図2(b))に相当する固定接点50、51が設けられる。これらにより、上記した第1スイッチswA、swBに相当するスイッチを有する2メイク式の動作センサが構成される。
【0080】
かかる構成において、被打撃部であるリム部43が演奏操作子1に相当する。リム部43が打撃されると、リム部43が下方に変位する。そして、2つの可動接点44のうち少なくとも1つが、対応する固定接点50に当接することで1目がメイクし、可動接点45が固定接点51に当接すると2つ目がメイクする。この2段階でのメイクによるイベントデータevの発生と楽音制御の態様は、図6で例示したセンサが採用される場合と同様に考えることができる。
【0081】
演奏操作子1に相当するリム部43は複数あるが、上記したのと同様に並行して処理される。ところで、演奏操作子1の各々を特定する情報であるノートデータNoteは、上記した実施の形態では、鍵盤楽器であったので音高を特定する情報でもあった。しかし、楽器が図7に示すような電子打楽器である場合は、リム部43を特定し、打撃音色を規定するものともなる。このように、電子打楽器の打撃検出にも本発明を適用できる。なお、本楽器は電子打楽器であり、楽音が速やかに減衰するので、消音処理のための検出や制御は廃止してもよい。
【0082】
なお、電子打楽器の例では、リム打撃に関して本発明を適用する構成を例示したが、パッド打撃について適用してもよい。
【0083】
なお、上記鍵盤楽器(図2)において、動作センサ21は、演奏操作子1の動作を直接または間接に検出するものであればよく、演奏操作子1自身または該演奏操作子1に連動する変位部材の動作を検出するものであればよい。例えば、慣性を付与するために設けられる、鍵に連動して揺動するハンマを変位部材とし、これの動作を検出してもよい。電子打楽器(図7)においても、リム部43に連動して動作する変位部材を設け、この変位部材に可動接点を設けて動作センサとして構成してもよい。
【0084】
ところで、上記の説明では、鍵盤楽器、電子打楽器に、それぞれ演奏操作子1が複数存在する例を示したが、演奏操作子1が1個であっても、楽音制御の遅延を抑制しながらチャタリングの影響を回避する効果は得られる。また、演奏操作子1が1つである場合は、チャタリング除去の観点に限れば、evレジスタに記憶可能なイベントデータevは最低限1個であってもよい。
【0085】
(第2の実施の形態)
本発明の第2の実施の形態では、チャタリングの発生を楽音制御に利用する。すなわち、チャタリングが発生するような操作態様は、通常の強押鍵よりもさらに強く操作(例えば、押し弾き奏法)する意思であると解釈し、検出したベロシティが一定以上である場合に所定値を加えて音量を増大させる。第1の実施の形態とは、演奏信号生成処理が異なり、図5に代えて図8、図9を用いる。その他の構成は第1の実施の形態と同様である。
【0086】
図8、図9は、本発明の第2の実施の形態に係る楽音制御信号生成装置が適用される電子鍵盤楽器において、図4のステップS103で実行される演奏信号生成処理のフローチャートである。
【0087】
まず、本実施の形態で用いる「準備データ」を説明するため、ステップS307から説明する。本実施の形態では、第1の実施の形態と同様に、同一の動作センサ21から、イベントデータevがBオン→Cオンの順に発生した場合にオンベロシティVonを算出する(ステップS204〜S207)。
【0088】
ステップS207の処理後は、ステップS307に進む。本実施の形態では、Cオンのイベントデータevが発生しても直ちに発音指示(ノートオンの演奏信号生成)がなされるわけではない。発音指示は、ステップS303またはS312でなされる。まずステップS307では、最新イベント(Cオン)中のノートデータNoteと上記算出したオンベロシティVonとを対応付けたものを「準備データ」として記憶しておく。準備データは、イベント履歴とは別個にRAM7に記憶される。
【0089】
次に、上記記憶した準備データに、ウェイトタイマを対応付け、該ウェイトタイマの計時をスタートさせる(ステップS308)。この計時は、図4、図8、図9の処理とは別個に、CPU5の制御に基づきタイマ8によってなされる。その後、本処理を終了する。ウェイトタイマは準備データごとに設定され、各々、所定時間tmだけ計時すると停止されリセットされる。所定時間tmは、通常の(チャタリングでない)操作時におけるCオン(オン動作)とCオフ(オフ動作)とのほぼ最小の時間間隔に設定され、例えば、1〜10msの間の値とされる。
【0090】
ステップS301では、準備データが存在するか否かを判別する。その判別の結果、準備データが存在しない場合は、ステップS201〜S203の処理に移行する。一方、準備データが存在する場合は、当該準備データのウェイトタイマが、上記した所定時間tmを経過しているか否かを判別し(ステップS302)、経過していなければステップS201〜S203の処理に移行する。
【0091】
前記ステップS302の判別の結果、当該準備データのウェイトタイマが所定時間tmを経過している場合は、当該準備データ中のノートデータNote及びオンベロシティVonにて、ノートオンの演奏信号(発音指示信号)を生成する(ステップS303)。このノートオンの演奏信号におけるオンベロシティVonは、ステップS207で算出された値のままである。次に、当該準備データ及びそれに対応するウェイトタイマをクリアして(ステップS304)、ステップS201〜S203の処理に移行する。
【0092】
ステップS203の処理後は、ステップS305に進み、最新イベントのイベント種Kが「Cオフ」であるか否かを判別する。その判別の結果、最新イベントのイベント種Kが「Cオフ」でない場合はステップS204に進む一方、「Cオフ」である場合は、ステップS309に進む。
【0093】
ステップS309では、上記最新イベント(Cオフ)とノートデータNoteを同じくする準備データが存在するか否かを判別する。ここで、最新イベント(Cオフ)とノートデータNoteを同じくする準備データが存在するということは、ノートデータNoteに対応する動作センサ21の第3スイッチswCにおいて、Cオンの後、所定時間tm経過前(ステップS304でクリアされる前)にCオフがあったことを意味する。これは、極めて短い時間でのオンオフであることから、第3スイッチswCでチャタリングが生じたと判定することができる。
【0094】
ステップS309で、チャタリング有りと判定されない場合は本処理を終了する。一方、チャタリング有りと判定された場合は、ステップS310に進み、当該準備データ中のオンベロシティVonが閾値Vx以上であるか否かを判別する。ここで、閾値Vxは、標準押鍵で最も強く押鍵された場合に検出されるオンベロシティ値を想定している。ただし、閾値Vxは、オンベロシティを規定するMIDI値としては上限値ではなく、さらなる値の増加を可能にするべく上限値までに少し余裕を持たせた値に設定されている。
【0095】
その判別の結果、Von≧Vxである場合は、押し弾き奏法のような真に強い押鍵を意思としている解釈されるため、上記準備データにおいて、オンベロシティVonに所定値Vαを加算したものを、新たなオンベロシティVonとして設定する(ステップS311)。これにより、当該準備データ中のオンベロシティVonの値が更新され、大きくなる。一方、Von<Vxである場合は、真に強い押鍵の意思ではないと解釈されるので、所定値Vαの加算は行わず、すなわち、準備データの更新を行わずに本処理を終了する。
【0096】
次に、ステップS312では、当該準備データ中のノートデータNote及びオンベロシティVonにて、ノートオンの演奏信号(発音指示信号)を生成する。このオンベロシティVonは、ステップS311で加算がなされた値である。次に、当該準備データ及びそれに対応するウェイトタイマをクリアして(ステップS313)、本処理を終了する。
【0097】
図8、図9の処理によれば、チャタリング有りでオンベロシティVonが閾値Vxの押鍵がされた場合にのみ、ステップS312で、音量が増大された発音指示がなされる。それ以外では、音量が増大されることなくステップS303で発音指示がなされる。
【0098】
本実施の形態によれば、簡単な処理にて、楽音制御の遅延を抑制しながらチャタリングの影響を回避することに関し、第1の実施の形態と同様の効果を奏することができる。それだけでなく、Von≧Vxが成立したチャタリング発生時には音量が増大されるので、強い操作よりもさらに強い操作に応じた音量増大制御が可能になる。これにより、チャタリングの有無によって楽音パラメータが変化する。よって、チャタリングの発生を楽音制御に利用して演奏表現力を高めることができる。例えば、鍵盤楽器においては、標準奏法と押し弾き奏法との音量差を明確に大きくすることができる。特に、チャタリングが複数回発音を生じさせないことを担保した上で、チャタリングを楽音パラメータの制御に積極的に利用するので、チャタリングの発生自体を極力回避するような工夫をしなくてもよい。また、従来のような専用のアフタセンサ等を設ける必要もない。従って、一般な鍵盤楽器に広く本発明を適用できる。
【0099】
また、Cオンの後、所定時間tm内にチャタリング有りと判定されなければ所定時間tmの経過時点で演奏信号が生成されるので(ステップS303)、チャタリングの非発生時において楽音制御が遅延し過ぎないようにすることができる。一方、所定時間tm内にチャタリング有りと判定されればその判定時点で直ちに演奏信号が生成されるので(ステップS312)、チャタリングが生じるような強い操作の場合は、チャタリング非発生時に比べ発音タイミングが速くなる。すなわち、チャタリングの有無によって発音タイミングを微妙に変化させる演奏表現が可能となる。この点でも、チャタリングの発生を楽音制御に利用して演奏表現力を高めている。
【0100】
本実施の形態のように、チャタリングの発生を楽音制御に利用して演奏表現力を高めるという観点に限っていえば、チャタリングが発生しやすいような構成をあえて採用するという考え方もできる。上記した動作センサ21(図2(b))は、弾性体でなるため、演奏操作子1のアクチュエータ部乃至下面1aと動作センサ21の上面21aとが擦れたりねじれたりした状態でオンする。そのため、チャタリングが発生しやすい。また、演奏操作子1に連動するハンマを変位部材とした場合もチャタリングが発生しやすい。しかし、本実施の形態によると、安定した態様でチャタリングを起こすような構成であれば、むしろ好都合となる。
【0101】
なお、図9のステップS310で、Von<Vxである場合に、オンベロシティVonに閾値Vxの値を設定して更新するようにしてもよい。そうすれば、チャタリング発生時には、最低限、オンベロシティVonが、閾値Vxと同じ値かそれ以上の値に更新されるので、チャタリング発生時と非発生時とに音量差を設けることが可能となる。
【0102】
ところで、チャタリング有りの場合は、検出したオンベロシティVonの値に拘わらず、該オンベロシティVonに所定値Vαを加算する処理を一律に行うようにしてもよい。そのようにするには、図9のステップS310の処理ステップを廃止すればよい。
【0103】
なお、本実施の形態において、チャタリング有りと判定された場合であっても、所定時間tmの経過を待って演奏信号を生成するようにしてもよい。そのようにするには、ステップS312、S313の処理を廃止すればよい。そのようにした場合、チャタリングの有無に拘わらず、発音指示はステップS303でなされることになる。ただし、一旦チャタリング有りと判定された後にステップS303を実行する際、オンベロシティVonは、所定値Vαが加算され更新されたものとなっている。これにより、操作の強弱による発音タイミングの差をなくすことができる。
【0104】
なお、本実施の形態では、チャタリング発生時に変更する楽音パラメータとして音量(オンベロシティ)を例示したが、これに限られない。ピッチ、音色、エンベロープ等の効果乃至楽音特性に関わる各種の楽音パラメータに適用可能である。
【0105】
ところで、本実施の形態では、Cオンの直後(所定時間tm内)にCオフがあったことをチャタリング発生と定義してチャタリング有りと判定するので、判定処理が簡単であった。しかしながら、チャタリングの発生を楽音制御に利用する観点に限れば、チャタリングの定義は上記したものに限定されない。例えば、Cオン→Cオフ→Cオンとなったときチャタリング有りと判定してもよい。また、チャタリングの判定手法も例示したものに限定されず、公知の各種手法を採用することができる。また、動作センサ21についても、発音を指示するためのノートオン動作を検出するスイッチにおいてチャタリングが生じるような構成であればよく、メイク数も限定されず、図6で示したタイプのほか、各種構成のセンサを採用可能である。
【0106】
ところで、本実施の形態についても、楽音制御信号を用いる各種の楽器に適用可能で、図7に示すような電子打楽器にも適用可能である。また、演奏操作子1は1個であってもよい。
【0107】
本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。上述の実施の形態の一部を適宜組み合わせてもよい。
【符号の説明】
【0108】
1 演奏操作子、 5 CPU(チャタリング判定手段、信号生成手段)、 21 動作センサ、 Von オンベロシティ(楽音パラメータ)、 tm 所定時間、 Vα 所定値、 Vx 閾値

【特許請求の範囲】
【請求項1】
演奏操作される演奏操作子と、
前記演奏操作子のオン動作及びオフ動作を検出する動作センサと、
前記動作センサにおけるオン動作時のチャタリングの発生の有無を判定するチャタリング判定手段と、
前記動作センサによりオン動作が検出されたことを条件に、楽音制御信号を生成する信号生成手段とを有し、
前記信号生成手段は、前記チャタリング判定手段によりチャタリング有りと判定された場合は、チャタリング有りと判定されない場合に対して、生成する楽音制御信号における楽音パラメータを変更することを特徴とする楽音制御信号生成装置。
【請求項2】
前記チャタリング判定手段は、前記動作センサにより前記演奏操作子のオン動作が検出された後、所定時間内にオフ動作が検出された場合にのみチャタリング有りと判定することを特徴とする請求項1記載の楽音制御信号生成装置。
【請求項3】
前記信号生成手段は、前記動作センサにより前記演奏操作子のオン動作が検出された後、前記チャタリング判定手段によりチャタリング有りと判定されることなく前記所定時間が経過した場合に前記楽音制御信号を生成することを特徴とする請求項2記載の楽音制御信号生成装置。
【請求項4】
前記信号生成手段は、前記チャタリング判定手段によりチャタリング有りと判定された場合は、前記所定時間の経過に拘わらず前記楽音制御信号を生成することを特徴とする請求項2または3記載の楽音制御信号生成装置。
【請求項5】
前記信号生成手段は、前記チャタリング判定手段によりチャタリング有りと判定された場合であっても、前記所定時間の経過を待って前記楽音制御信号を生成することを特徴とする請求項2または3記載の楽音制御信号生成装置。
【請求項6】
前記信号生成手段は、前記チャタリング判定手段によりチャタリング有りと判定された場合は、チャタリング有りと判定されない場合に対して、生成する楽音制御信号における楽音パラメータとしてのオンベロシティの値を大きくすることを特徴とする請求項1〜5のいずれか1項に記載の楽音制御信号生成装置。
【請求項7】
前記動作センサは、前記演奏操作子のオン動作の検出に際し、そのオンベロシティも検出し、前記信号生成手段は、チャタリング有りと判定されない場合は、前記動作センサにより検出されたオンベロシティを、前記生成する楽音制御信号におけるオンベロシティとして適用する一方、チャタリング有りと判定された場合は、前記動作センサにより検出されたオンベロシティの値に所定値を加算した値を、前記生成する楽音制御信号におけるオンベロシティとして適用することを特徴とする請求項6記載の楽音制御信号生成装置。
【請求項8】
前記信号生成手段は、チャタリング有りと判定され且つ前記動作センサにより検出されたオンベロシティの値が閾値以上である場合に限り、前記動作センサにより検出されたオンベロシティの値に前記所定値を加算した値を、前記生成する楽音制御信号におけるオンベロシティとして適用することを特徴とする請求項7記載の楽音制御信号生成装置。
【請求項9】
演奏操作される演奏操作子と、
前記演奏操作子のオン動作及びオフ動作を検出する動作センサと、
前記動作センサにおけるオン動作時のチャタリングの発生の有無を判定するチャタリング判定手段と、
前記動作センサによりオン動作が検出されたことを条件に、楽音発生を指示する発音指示信号を生成する信号生成手段とを有し、
前記信号生成手段は、前記チャタリング判定手段によりチャタリング有りと判定された場合は、チャタリング有りと判定されない場合に対して、前記発音指示信号の生成タイミングを早くすることを特徴とする楽音制御信号生成装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate