(57)【要約】      （修正有）【課題】楽音信号等のオーディオ信号を加工して様々な音響効果を付加する効果付加装置、方法、プログラム及び電子楽器を提供する。【解決手段】電子鍵盤楽器の制御システム２００において、プロセッサ２０１は、第１ユーザ操作に基づいて、複数のエフェクトのなかから第１エフェクト及び第２エフェクトを含む２つ以上のエフェクトを決定する。プロセッサ２０１は、第１エフェクトに対応付けられているＲＯＭ２０２に記憶されている複数の第１パラメータそれぞれの重要度を示すデータ及び第２エフェクトに対応付けられているＲＯＭ２０２に記憶されている複数の第２パラメータそれぞれの重要度を示すデータに基づいて、複数の第２操作子それぞれに対応付ける複数のパラメータを決定する。【選択図】図２
2020160139.tif 000002
【特許請求の範囲】
【請求項１】
第１ユーザ操作に基づいて、各エフェクトにはそれぞれ複数のパラメータが対応付けられている複数のエフェクトのなかからいずれかのエフェクトを決定するための複数の第１操作子と、
第２ユーザ操作に基づいて、パラメータにパラメータ値を付与するための複数の第２操作子と、
少なくとも１つのプロセッサと、
を備え、前記少なくとも１つのプロセッサは、
前記第１ユーザ操作に基づいて、前記複数のエフェクトのなかから第１エフェクト及び第２エフェクトを含む２つ以上のエフェクトを決定し、
決定された前記第１エフェクトに対応付けられている複数の第１パラメータそれぞれの重要度を示すデータ及び、決定された前記第２エフェクトに対応付けられている複数の第２パラメータそれぞれの重要度を示すデータに基づいて、前記複数の第２操作子それぞれに対応付ける複数のパラメータを決定する、
効果付加装置。
【請求項２】
請求項１に記載の効果付加装置において、
前記複数の第２操作子それぞれに対応付ける複数のパラメータは、前記重要度が高いパラメータから順に決定することにより、前記複数の第２操作子には、前記第１ユーザ操作に基づいて決定されたエフェクトに対応するいずれのパラメータも対応付けられない場合を含む、効果付加装置。
【請求項３】
請求項１または２に記載の効果付加装置において、
前記重要度を示すデータは、１つのエフェクト内だけでしかパラメータの重要度を比較できないデータとは異なり、複数のエフェクトにおいて一律にパラメータの重要度を比較できるデータである、効果付加装置。
【請求項４】
請求項１から３のいずれかに記載の効果付加装置において、
前記少なくとも１つのプロセッサは、デジタルシグナルプロセッサを含み、
前記デジタルシグナルプロセッサは、前記第１ユーザ操作に基づいて、前記いずれか２つ以上のエフェクトに対応するエフェクトプログラムを読み込む、効果付加装置。
【請求項５】
請求項１から４のいずれかに記載の効果付加装置において、
前記少なくとも１つのプロセッサは、
前記複数の第２操作子のなかの或る第２操作子に対応付けるパラメータが決定された場合に、パラメータ同士のペアを規定するペアリングパラメータ情報に基づいて、前記或る第２操作子とは別の第２操作子に対応付けるパラメータを決定する、効果付加装置。
【請求項６】
請求項１から５のいずれかに記載の効果付加装置と、
第３ユーザ操作に基づいて、音高を指定するための演奏操作子と、
前記第３ユーザ操作に基づいて指定された音高に応じた楽音に対して、前記第１ユーザ操作に応じたエフェクトを、前記第２ユーザ操作に応じたパラメータで付与する、電子楽器。
【請求項７】
第１ユーザ操作に基づいて、各エフェクトにはそれぞれ複数のパラメータが対応付けられている複数のエフェクトのなかからいずれかのエフェクトを決定するための複数の第１操作子と、第２ユーザ操作に基づいて、パラメータにパラメータ値を付与するための複数の第２操作子と、を含む効果付加装置のコンピュータに、
前記第１ユーザ操作に基づいて、前記複数のエフェクトのなかから第１エフェクト及び第２エフェクトを含む２つ以上のエフェクトを決定させ、
決定された前記第１エフェクトに対応付けられている複数の第１パラメータそれぞれの重要度を示すデータ及び、決定された前記第２エフェクトに対応付けられている複数の第２パラメータそれぞれの重要度を示すデータに基づいて、前記複数の第２操作子それぞれに対応付ける複数のパラメータを決定させる、
方法。
【請求項８】
第１ユーザ操作に基づいて、各エフェクトにはそれぞれ複数のパラメータが対応付けられている複数のエフェクトのなかからいずれかのエフェクトを決定するための複数の第１操作子と、第２ユーザ操作に基づいて、パラメータにパラメータ値を付与するための複数の第２操作子と、を含む効果付加装置のコンピュータに、
前記第１ユーザ操作に基づいて、前記複数のエフェクトのなかから第１エフェクト及び第２エフェクトを含む２つ以上のエフェクトを決定させ、
決定された前記第１エフェクトに対応付けられている複数の第１パラメータそれぞれの重要度を示すデータ及び、決定された前記第２エフェクトに対応付けられている複数の第２パラメータそれぞれの重要度を示すデータに基づいて、前記複数の第２操作子それぞれに対応付ける複数のパラメータを決定させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、楽音信号等のオーディオ信号を加工して様々な音響効果を付加する効果付加装置、方法、プログラム、及びそのような効果付加装置を搭載した電子楽器に関する。
【背景技術】
【０００２】
入力した楽音信号等のオーディオ信号に効果を付加して出力する効果付加装置、いわゆるエフェクタの中で、従来、複数種類の効果を任意に組み合わせて付加することのできる、いわゆるマルチエフェクタと呼ばれる技術が知られている（例えば特許文献１に記載の技術）。このようなマルチエフェクタを操作する場合、ユーザはまず、予め使用可能なエフェクトのうち任意のエフェクトが任意の順番で実行されるように選択操作を行う。その後に、ユーザは、選択したエフェクト毎に、設定可能な１つ以上のパラメータ（例えばディレイエフェクトの場合の遅延時間、フィードバック量等）の値を設定する。
【０００３】
ここで、複数のエフェクトモジュールを搭載するキーボードや、単体のマルチエフェクタにおいては、通常エフェクトのパラメータ数より少ないノブやペダルなどのコントローラ操作子に任意のエフェクトパラメータを割り当てて、ユーザが演奏中にパラメータを変更する機能がある。例えばキーボードに6つのスライダボリュームが装備され、それぞれに任意のエフェクトモジュールの任意のパラメータを割り当ててコントロールするといったものである。従来は、これらのエフェクトのパラメータの操作子に対する割当はすべてユーザが1つ1つ設定していた。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平６−１９５０７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、エフェクトのパラメータの操作子に対する割当をユーザが1つ1つ設定する方法では、所望の効果を得ることができる一方、操作子に割り当てるのにどのエフェクトモジュールの、どのパラメータを選択すべきかということをエフェクトの組合せ毎に検討して設定する必要があり、ユーザの負担となってしまうという課題がある。
【０００６】
そこで、本発明は、ユーザがエフェクトモジュールを選択すると、複数のコントローラそれぞれに良好にパラメータを割り当てることを目的とする。
【課題を解決するための手段】
【０００７】
態様の一例では、第１ユーザ操作に基づいて、各エフェクトにはそれぞれ複数のパラメータが対応付けられている複数のエフェクトのなかからいずれかのエフェクトを決定するための複数の第１操作子と、第２ユーザ操作に基づいて、パラメータにパラメータ値を付与するための複数の第２操作子と、少なくとも１つのプロセッサと、を備え、少なくとも１つのプロセッサは、第１ユーザ操作に基づいて、複数のエフェクトのなかから第１エフェクト及び第２エフェクトを含む２つ以上のエフェクトを決定し、決定された第１エフェクトに対応付けられている複数の第１パラメータそれぞれの重要度を示すデータ及び、決定された第２エフェクトに対応付けられている複数の第２パラメータそれぞれの重要度を示すデータに基づいて、複数の第２操作子それぞれに対応付ける複数のパラメータを決定する。
【発明の効果】
【０００８】
本発明によれば、ユーザがエフェクトモジュールを選択すると、複数のコントローラそれぞれに良好にパラメータを割り当てることが可能となる。
【図面の簡単な説明】
【０００９】
【図１】電子鍵盤楽器の一実施形態の外観例である。
【図２】電子鍵盤楽器の制御システムの一実施形態のハードウェア構成例を示すブロック図である。
【図３】エフェクト用ＤＳＰの機能ブロック図である。
【図４】エフェクトパラメータ表のデータ構成例を示す図である。
【図５】エフェクトパラメータ表のデータ構成例を示す図である。
【図６】エフェクトパラメータ表のデータ構成例を示す図である。
【図７】エフェクトパラメータ表のデータ構成例を示す図である。
【図８】エフェクトパラメータ表のデータ構成例を示す図である。
【図９】エフェクトパラメータ表のデータ構成例を示す図である。
【図１０】エフェクトモジュール選択パネルでのエフェクトの選択例と、その場合におけるエフェクトパラメータコントローラパネルのスライダコントローラへのパラメータのアサイン例を示す図である。
【図１１】エフェクトモジュール選択パネルでのエフェクトの別の選択例と、その場合におけるエフェクトパラメータコントローラパネルのスライダコントローラへのパラメータのアサイン例を示す図である。
【図１２】エフェクトモジュール−エフェクトタイプ表及びコントローラ−パラメータ割当変数表のデータ構成例を示す図である。
【図１３】本実施形態における電子楽器の制御処理例を示すメインフローチャートである。
【図１４】パラメータ自動割当処理、コントローラ−パラメータ割当変数表初期化処理の詳細例、及びエフェクトモジュール−エフェクトタイプ表初期化処理の詳細例を示すフローチャートである。
【図１５】重要度による選別処理の詳細例を示すフローチャートである。
【図１６】ペアリング処理の詳細例を示すフローチャートである。
【図１７】重複調査処理の詳細例を示すフローチャートである。
【図１８】パラメータデータ挿入処理の詳細例を示すフローチャートである。
【発明を実施するための形態】
【００１０】
以下、本発明を実施するための形態について図面を参照しながら詳細に説明する。図１は、いわゆるマルチエフェクト機能を搭載した電子鍵盤楽器の一実施形態１００の外観例を示す図である。電子鍵盤楽器１００は、演奏操作子としての複数の鍵からなる鍵盤１０１（第３ユーザ操作によって操作される演奏操作子）と、電子鍵盤楽器１００の楽音出力の音色の指定等の各種設定を指示するスイッチパネル１０２と、マルチエフェクタの選択を行うエフェクトモジュール選択パネル１０３（第１ユーザ操作によって操作される複数の第１操作子）と、マルチエフェクタのパラメータを制御するエフェクトパラメータコントローラパネル１０５（第２ユーザ操作によって操作される複数の第２操作子）と、各種設定情報を表示するＬＣＤ１０４（Ｌｉｑｕｉｄ  Ｃｒｙｓｔａｌ  Ｄｉｓｐｌａｙ：液晶ディスプレイ）等を備える。また、電子鍵盤楽器１００は、左横に電源スイッチ兼音量調整用のボリュームと、特には図示しないが、演奏により生成された楽音を放音するスピーカを裏面部、側面部、又は背面部等に備える。
【００１１】
図２は、図１の電子鍵盤楽器１００の制御システム２００の一実施形態のハードウェア構成例を示す図である。図２において、制御システム２００は、ＣＰＵ（中央演算処理装置）２０１、ＲＯＭ（リードオンリーメモリ）２０２、ＲＡＭ（ランダムアクセスメモリ）２０３、音源ＬＳＩ（大規模集積回路）２０４、図１の鍵盤１０１が接続されるキースキャナ２０６、図１のスイッチパネル１０２及びエフェクトセレクタ１０３が接続されるＩ／Ｏインタフェース２０７、図１のエフェクトパラメータコントローラパネル１０５上の６個のコントロールスライダの各操作位置を取り込むＡ／Ｄコンバータ２０５、ネットワークインタフェース２１９、及び図１のＬＣＤ１０４が接続されるＬＣＤコントローラ２０８が、それぞれシステムバス２０９に接続されている。また、音源ＬＳＩ２０４の出力側には、ＤＳＰ用ＲＡＭ２１０が接続されたエフェクト用ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ：デジタル信号処理プロセッサ）２０９、Ｄ／Ａコンバータ２１１、アンプ２１４が順次接続される。
【００１２】
ＣＰＵ２０１は、ＲＡＭ２０３をワークメモリとして使用しながらＲＯＭ２０２に記憶された制御プログラムを実行することにより、図１の電子鍵盤楽器１００の制御動作を実行する。また、ＲＯＭ２０２は、上記制御プログラム及び各種固定データのほか、歌詞データ及び伴奏データを含む曲データを記憶する。
【００１３】
音源ＬＳＩ２０４は、ＣＰＵ２０１からの発音制御指示に従って、例えば特には図示しない波形ＲＯＭから楽音波形データを読み出し、Ｄ／Ａコンバータ２１１に出力する。音源ＬＳＩ２０４は、同時に最大２５６ボイスを発振させる能力を有する。
【００１４】
キースキャナ２０６は、図１の鍵盤１０１の押鍵／離鍵状態を定常的に走査し、ＣＰＵ２０１に割込みを掛けて状態変化を伝える。
【００１５】
Ｉ／Ｏインタフェース２０７は、図１のスイッチパネル１０２、及び図１のエフェクトモジュール選択パネル１０３のスイッチ操作状態を定常的に走査し、ＣＰＵ２０１に割り込みを掛けて状態変化を伝える。
【００１６】
ＬＣＤコントローラ６０９は、ＬＣＤ５０５の表示状態を制御するＩＣ（集積回路）である。
【００１７】
図１のエフェクトパラメータコントローラパネル１０５に設置された６個のコントロールスライダの各操作位置は、それぞれに接続されたＡ／Ｄコンバータ２０５によってデジタル値に変換され、ＣＰＵ２０１に通知される。
【００１８】
ネットワークインタフェース２１９は、例えばインターネットやローカルエリアネットワークに接続され、本実施形態で使用される制御プログラムや、各種楽曲データ、自動演奏データなどを取得し、ＲＡＭ２０３等に記憶させることができる。
【００１９】
図３は、図２のエフェクト用ＤＳＰ２０９の機能ブロック図である。エフェクト用ＤＳＰ２０９は、音源ＬＳＩ２０４が出力する楽音出力データを入力として、最大でエフェクトモジュール０、エフェクトモジュール１、エフェクトモジュール２、及びエフェクトモジュール３の４個のエフェクトモジュールを用いて、入力する楽音出力データに対して最大で４種類の音響効果を直列に付加し、その結果出力される音響効果が付加された楽音出力データを、図２のＤ／Ａコンバータ２１１に出力する。Ｄ／Ａコンバータ２１１は、エフェクト用ＤＳＰ２０９から入力した音響効果が付加された楽音出力データをアナログ楽音出力信号に変換する。このアナログ楽音出力信号はアンプ２１４で増幅された後に、特には図示しないスピーカ又は出力端子から出力される。
【００２０】
４つのエフェクトモジュールは、図３（ａ）の下側に示すような１２種類のエフェクトアルゴリズムのいずれも選択可能である。ここで、エフェクトアルゴリズムとは、エフェクト用ＤＳＰ２０９が内部の信号処理回路である各エフェクトモジュールにおいて所望の音響効果付加処理を実行するためのプログラムデータ（又はファームウェアデータ）である。各エフェクトモジュールにおいて、同時に同じエフェクトアルゴリズムを複数用いることも可能である。また、或るエフェクトモジュールにおいて、エフェクト処理を実行しない場合は、そのエフェクトモジュールに入力した楽音出力データがそのまま通過して、そのエフェクトモジュールから出力される。
【００２１】
＜エフェクトの選択操作＞
次に、本実施例の動作の概要について説明する。図１の電子鍵盤楽器１００の右端に配置されているのが、エフェクトモジュール選択パネル１０３である。図３（ｂ）に示されるように、エフェクトモジュール選択パネル１０３は、ＦＸ１、ＦＸ２、ＦＸ３、及びＦＸ４の４個のスライダスイッチを備える。ユーザが、スライダスイッチＦＸ１、ＦＸ２、ＦＸ３、及びＦＸ４のそれぞれを、パネル上の左側に記載された複数のエフェクト名のうちの任意の１つに対応する位置に設定すると、図２において、ＣＰＵ２０１が、それぞれの設定位置をＩ／Ｏインタフェース２０７を介して読み取り、上記各設定位置に対応する各エフェクトアルゴリズム（図３（ａ）の１２種類のうちのいずれか）を、ＲＯＭ２０２から、エフェクト用ＤＳＰ２０９内のエフェクトモジュール０〜３のそれぞれに対応するＤＳＰ用ＲＡＭ２１０上の各プログラム領域にロードする。
【００２２】
図３（ｂ）の例は、エフェクトモジュール選択パネル１０３上のスライダスイッチＦＸ１（エフェクトモジュール０）、ＦＸ２（エフェクトモジュール１）、ＦＸ３（エフェクトモジュール２）、及びＦＸ４（エフェクトモジュール３）に対して、下記のエフェクト名のエフェクトアルゴリズムが割り当てられていることが示されている。
ＦＸ１（エフェクトモジュール０）：ＷＡＨ（ワウ）
ＦＸ２（エフェクトモジュール１）：ＣＯＭＰＲＥＳＳＯＲ（コンプレッサ）
ＦＸ３（エフェクトモジュール２）：ＤＩＳＴＯＲＴＩＯＮ（ディストーション）
ＦＸ４（エフェクトモジュール３）：ＤＥＬＡＹ（ディレイ）
【００２３】
エフェクトモジュールに対してエフェクトを割り当てない場合には、対応するスライダスイッチにおいて、「ＢＹＰＡＳＳ」を選択すればよい。
【００２４】
＜エフェクトパラメータのコントロール＞
図１の電子鍵盤楽器１００の左端に配置されているのが、エフェクトパラメータコントローラパネル１０５である。図３（ｃ）に示されるように、エフェクトパラメータコントローラパネル１０５は、Ｃ１、Ｃ２、・・・、Ｃ６の６個のコントロールスライダを備える。ユーザは、６つのパラメータについて、それぞれコントロールスライダＣ１、Ｃ２、・・・、Ｃ６の夫々の位置に応じた値（手前が最小値、奥が最大値)に変更することができる。
【００２５】
＜エフェクトパラメータテーブル＞
本実施例では、「発明が解決しようとする課題」で前述した課題を解決するために、全エフェクトモジュールのパラメータごとにいくつかの属性情報を持っている。その属性情報は、図２のＲＯＭ２０２内に「エフェクトパラメータ表」のデータとして保持される。このエフェクトパラメータ表には、図３（ａ）で前述した１２種類のエフェクトの各アルゴリズムタイプ０〜１１のそれぞれについて、パラメータ群の情報がまとめて記憶されている。１２種類の各エフェクトアルゴリズムには「エフェクトタイプ番号」が割り当てられている。エフェクトパラメータ表には、各エフェクトタイプ番号のエフェクトアルゴリズム毎に、「エフェクト名」と「パラメータ数」が記憶されている。また、エフェクトパラメータ表には、エフェクトタイプ番号で識別される各エフェクトアルゴリズムにおいて、複数のパラメータの夫々について、「パラメータ番号」、「パラメータ名」、「機能」、「値域」、「重要度」、及び「ペアリングパラメータ番号（パラメータ同士のペアを規定するペアリングパラメータ情報）」の各情報が記憶される。図４〜図９は、１２種類のエフェクトアルゴリズムに対応するエフェクトパラメータ表のデータ構成例を示す図である。
【００２６】
重要度は、或る時点で選択されている全エフェクトの中から、エフェクトパラメータコントローラパネル１０５のスライダコントローラに割り当てるパラメータを選別するための基本情報である。ここで重要度は、１つのエフェクト内だけでしかパラメータの重要度を比較できないものとは異なり、複数のエフェクトにおいて一律にパラメータの重要度を比較できるものである。エフェクトとパラメータは１対多の関係である。例えば、或る時点で４つのエフェクトが選択されている場合について説明する。選択されている４つのエフェクトは、第１エフェクト（パラメータ数は３個）、第２エフェクト（パラメータ数は９個）、第３エフェクト（パラメータ数は７個）、第４エフェクト（パラメータ数は５個）である。この４つのエフェクトのパラメータ数は、計２４個である。ここでエフェクトパラメータコントローラパネル１０５のスライダコントローラは６個あるとする。この重要度は、６個のスライダコントローラに、２４個のパラメータのなかからどのパラメータを割り当てるのかを決定するための基本情報として用いられる。
【００２７】
ペアリングパラメータ番号は、それが含まれるパラメータをエフェクトパラメータコントローラパネル１０５のスライダコントローラに割り当てる場合には、対として割り当てる別のパラメータのパラメータ番号を指定するものである。本実施例では、2つ以上のパラメータをペアリングする必要があるケースを想定しないため、ペアリングパラメータ番号としては1つのパラメータ番号のみが記憶される。１つのパラメータについてペアリングが必要ない場合は、「−１」という値が記憶される。なお、図４〜図９のエフェクトパラメータ表のデータ構成例では、「ペアリング背景」という項目にペアリングパラメータ番号のパラメータがペアリングされる理由が示されているが、これは本実施形態の説明のためであり、実際のエフェクトパラメータ表にはこの項目は存在しない。或いは、この項目はエフェクトパラメータ表に存在してもよく、ＬＣＤ１０４にエフェクトパラメータコントローラパネル１０５に設定されているパラメータの情報を表示するために、エフェクト名、パラメータ名、機能などの項目を表示すると共に、この項目が一緒に表示されてもよい。
【００２８】
＜パラメータアサインの変更＞
エフェクトパラメータコントローラパネル１０５の各スライダコントローラへのパラメータの割当てが発生するのは、エフェクトモジュール選択パネル１０３においてエフェクトモジュールの入替えが発生したケースである。この際、各スライダコントローラにどのパラメータが割り当てられたかは、図１のＬＣＤ１０４に表示される。
【００２９】
本実施形態におけるパラメータの割当ては、以下のルールに従って自動的に行われる。
【００３０】
ルール１：重要度による選別
まず、ルール１の基本ルールとして、エフェクトモジュール選択パネル１０３上で現在選択されているエフェクトの全パラメータの重要度の値が比較され、その値が大きなものから順番に７つが選択される。７つ目は後述するケースで繰上げが発生する場合の補欠である。
同点のパラメータが複数見つかった場合は、以下のルールで優先度が決定される。
ルール１−１：より後ろに配置されるエフェクトモジュールのパラメータが優先される。
ルール１−２：同じエフェクト内で同点のパラメータが複数見つかった場合は、パラメータ番号が大きいものが優先される。
エフェクトモジュールが1つも選択されていない、もしくは何らかのエフェクトモジュールが選択されている場合でも、全パラメータの合計数が5に満たない場合は、番号の大きいスライダコントローラ にはパラメータの割当てが行われない。
【００３１】
ルール２：ペアリングによる選別
上記ルール１により選択された優先度が上位6つのパラメータについて、優先度の高い順番にペアリングパラメータ番号が設定されているか否かが調べられる。言うまでもなく、ペアリングパラメータ番号として設定されているペアリングすべきパラメータは、そのペアリングパラメータ番号が設定されているパラメータが属するエフェクトモジュールと同じエフェクトモジュール内のパラメータである。
Ｎ番目（１≦Ｎ≦６）のパラメータにペアリングパラメータ番号が設定されている場合には、以下の処理が実行される。
ルール２−１：ペアリングパラメータ番号のパラメータがすでに何れかの位置（Ｘ番目（０≦Ｘ≦５））に含まれている場合には、何もしない。
ルール２−２：Ｎ＝６の場合は、ペアリングパラメータ番号のパラメータを加える余地がないので、そのペアリングパラメータ番号が設定されているパラメータが落選させられ、7番目の優先度のパラメータが昇格させられる。７番目もペアリングパラメータ番号がある場合にはそれも落選させられ、結局、６番目のスライダコントローラＣ６は空きとなる。
ルール２−３：上記ルール２−１又はルール２−２以外の場合は、ペアリングパラメータ番号のパラメータがＮ＋１番目の優先度に挿入され、優先度が6番目のパラメータが7番目の補欠に降格させられ、7番目の補欠パラメータは落選させられる。
【００３２】
ルール３：エフェクトモジュール順にソート
最後に残った優先度が上位6つのパラメータについて、先頭からエフェクトモジュールの順番、パラメータ番号の順番に並べ直される。
【００３３】
以上のルール１から３に従って最終的に決定された６つのパラメータが、図１のエフェクトパラメータコントローラパネル１０５のスライダコントローラＣ１〜Ｃ６に割り当てられる。
【００３４】
図１０は、エフェクトモジュール選択パネル１０３でのエフェクトの選択例と、その場合における上記ルール１〜３に基づいて決定されるエフェクトパラメータコントローラパネル１０５のスライダコントローラＣ１〜Ｃ６へのパラメータのアサイン例を示す図である。
【００３５】
この例において、まず、エフェクトモジュール選択パネル１０３で、ＷＡＨ（エフェクトタイプ番号＝０）、ＣＯＭＰＲＥＳＳＯＲ（エフェクトタイプ番号＝２）、ＤＩＳＴＯＲＴＩＯＮ（エフェクトタイプ番号＝１０）、ＤＥＬＡＹ（エフェクトタイプ番号＝１０）のエフェクトが選択される。次に、図４、図６、及び図９のエフェクトパラメータ表上で、上記選択されたエフェクトタイプ番号中から、ルール１に従って、重要度の値が大きい順に、以下の７つが選択される。
優先度１：エフェクトタイプ番号＝０（ＷＡＨ）のパラメータ番号＝１（Ｍａｎｕａｌ）
優先度２：エフェクトタイプ番号＝１０（ＤＥＬＡＹ）のパラメータ番号＝０（Ｄｅｌａｙ  Ｔｉｍｅ）
優先度３：エフェクトタイプ番号＝４（ＤＩＳＴＯＲＴＩＯＮ）のパラメータ番号＝０（Ｇａｉｎ）
優先度４：エフェクトタイプ番号＝１０（ＤＥＬＡＹ）のパラメータ番号＝３（Ｌｅｖｅｌ）
優先度５：エフェクトタイプ番号＝１０（ＤＥＬＡＹ）のパラメータ番号＝１（Ｄｅｌａｙ  Ｌｅｖｅｌ）
優先度６：エフェクトタイプ番号＝１０（ＤＥＬＡＹ）のパラメータ番号＝２（Ｆｅｅｄｂａｃｋ）
優先度７：エフェクトタイプ番号＝４（ＤＩＳＴＯＲＴＩＯＮ）のパラメータ番号＝３（Ｌｅｖｅｌ）
【００３６】
次に、上記ルール１の適用の結果に、ルール２に従って、優先度が高いパラメータから順に、図４、図６、及び図９のエフェクトパラメータ表上で、ペアリングパラメータ番号が設定されているものが検索される。この結果、優先度３のエフェクトタイプ番号＝４（ＤＩＳＴＯＲＴＩＯＮ）のパラメータ番号＝０（Ｇａｉｎ）に対してペアリングパラメータ番号＝３が設定されていることが検出される。この結果、エフェクトタイプ番号＝４（ＤＩＳＴＯＲＴＩＯＮ）のパラメータ番号＝３のパラメータ「Ｌｅｖｅｌ」が、優先度４に設定される。続いて、今まで優先度４〜５であったパラメータの優先度が５〜６に繰り下げられ、今まで優先度６であったパラメータは優先度が７に繰り下げられ、いままで優先度７であったパラメータは落選する。
【００３７】
以上のルール１とルール２が適用され、更にルール３により、最終的な優先度１〜６のパラメータがエフェクトモジュール選択パネル１０３で選択されているエフェクトモジュールに対応するエフェクトタイプ番号の順にソートされた結果、エフェクトパラメータコントローラパネル１０５のスライダコントローラＣ１〜Ｃ６に、図１０（ｂ）の下側に示されるように、以下の６個のパラメータがアサインされる。また、値域として図４、図６、及び図９のエフェクトパラメータ表に設定されている各パラメータ番号に対応する値域が設定される。
Ｃ１：ＷＡＨのＭａｎｕａｌ、値域：０〜１２７
Ｃ２：ＤＩＳＴＯＲＴＩＯＮのＧａｉｎ、値域：０〜１２７
Ｃ３：ＤＩＳＴＯＲＴＩＯＮのＬｅｖｅｌ、値域：０〜１２７
Ｃ４：ＤＥＬＡＹのＤｅｌａｙ  Ｔｉｍｅ、値域：０〜１２７
Ｃ５：ＤＥＬＡＹのＬｅｖｅｌ、値域：０〜１２７
Ｃ６：ＤＥＬＡＹのＤｅｌａｙ  Ｌｅｖｅｌ、値域：０〜１２７
【００３８】
図１１は、エフェクトモジュール選択パネル１０３でのエフェクトの別の選択例と、その場合における前述のルール１〜３に基づいて決定されるエフェクトパラメータコントローラパネル１０５のスライダコントローラＣ１〜Ｃ６へのパラメータのアサイン例を示す図である。
【００３９】
この例において、まず、エフェクトモジュール選択パネル１０３で、ＯＶＥＲＤＲＩＶＥ（エフェクトタイプ番号＝３）、ＲＯＴＡＬＹ  ＳＰＥＡＫＥＲ（エフェクトタイプ番号＝６）、ＥＱＵＡＬＩＺＥＲ（エフェクトタイプ番号＝１）、ＲＥＶＥＲＢ（エフェクトタイプ番号＝１１）のエフェクトが選択される。次に、図５、図６、図７、及び図９のエフェクトパラメータ表上で、上記選択されたエフェクトタイプ番号中から、ルール１に従って、重要度の値が大きい順に、以下の７つが選択される。
優先度１：エフェクトタイプ番号＝６（ＲＯＴＡＬＹ  ＳＰＥＡＫＥＲ）のパラメータ番号＝１（Ｓｐｅｅｄ）
優先度２：エフェクトタイプ番号＝１１（ＲＥＶＥＲＢ）のパラメータ番号＝１（Ｒｅｖｅｒｂ  Ｔｉｍｅ）
優先度３：エフェクトタイプ番号＝６（ＲＯＴＡＬＹ  ＳＰＥＡＫＥＲ）のパラメータ番号＝２（Ｂｒａｋｅ）
優先度４：エフェクトタイプ番号＝３（ＯＶＥＲＤＩＲＶＥ）のパラメータ番号＝０（Ｇａｉｎ）
優先度５：エフェクトタイプ番号＝１（ＥＱＵＡＬＩＺＥＲ）のパラメータ番号＝０（ＥＱ１  Ｆｒｅｑｕｅｎｃｙ）
優先度６：エフェクトタイプ番号＝１１（Ｒｅｖｅｒｂ）のパラメータ番号＝０（Ｒｅｖｅｒｂ  Ｔｙｐｅ）
優先度７：エフェクトタイプ番号＝３（ＯＶＥＲＤＲＩＶＥ）のパラメータ番号＝０（Ｇａｉｎ）
【００４０】
次に、上記ルール１の適用の結果に、ルール２に従って、優先度が高いパラメータから順に、図５、図６、図７、及び図９のエフェクトパラメータ表上で、ペアリングパラメータ番号が設定されているものが検索される。この結果、優先度４のエフェクトタイプ番号＝３（ＯＶＥＲＤＩＲＶＥ）のパラメータ番号＝０（Ｇａｉｎ）に対してペアリングパラメータ番号＝２が設定されていることが検出される。この結果、エフェクトタイプ番号＝３（ＯＶＥＲＤＩＲＶＥ）のパラメータ番号＝２のパラメータ「Ｌｅｖｅｌ」が、優先度５に設定される。続いて、今まで優先度５であったパラメータの優先度が６に繰り下げられ、今まで優先度６であったパラメータは優先度が７に繰り下げられ、いままで優先度７であったパラメータは落選する。更に、新たに優先度６になったパラメータにもペアリングパラメータ番号が設定されているが、前述したルール２−２により、このパラメータが落選させられ、優先度７のパラメータが昇格するが、これもルール２−２により落選する。この結果、優先度６は空きとなる。
【００４１】
以上のルール１とルール２が適用され、更にルール３により、最終的な優先度１〜６のパラメータがエフェクトモジュール選択パネル１０３で選択されているエフェクトモジュールに対応するエフェクトモジュール番号の順にソートされた結果、エフェクトパラメータコントローラパネル１０５のスライダコントローラＣ１〜Ｃ６に、図１１（ｂ）の下側に示されるように、以下の６個のパラメータがアサインされる。また、値域として図５、図６、図７、及び図９のエフェクトパラメータ表に設定されている各パラメータ番号に対応する値域が設定される。
Ｃ１：ＯＶＥＲＤＲＩＶＥのＧａｉｎ、値域：０〜１２７
Ｃ２：ＯＶＥＲＤＲＩＶＥのＬｅｖｅｌ、値域：０〜１２７
Ｃ３：Ｒｏｔａｒｙ  ＳｐｅａｋｅｒのＳｐｅａｄ、値域：０、１
Ｃ４：Ｒｏｔａｒｙ  ＳｐｅａｋｅｒのＢｒａｋｅ、値域：０、１
Ｃ５：ＲｅｖｅｒｂのＲｅｖｅｒｂ  Ｔｉｍｅ、値域：０〜１２７
Ｃ６：なし
【００４２】
＜ソフトウェア処理＞
以下に、ソフトウェア制御で必要となるパラメータと、フローチャートに基く詳細なソフトウェア動作について説明する。
【００４３】
＜変数＞
図１２（ａ）は、ユーザによる図１のエフェクトモジュール選択パネル１０３の操作に基づいて、エフェクト用ＤＳＰ２０９内のエフェクトモジュール０〜３（図３（ａ）参照）の夫々に選択されているエフェクトタイプ番号を記憶する「エフェクトモジュール−エフェクトタイプ表」のデータ構成例を示す図である。また、図１２（ｂ）は、ユーザによる図１のエフェクトパラメータコントローラパネル１０５のＣ１〜Ｃ６の各スライダコントローラへのパラメータのアサイン状態を記憶する「コントローラ−パラメータ割当変数表」のデータ構成例を示す図である。エフェクトモジュール−エフェクトタイプ表及びコントローラ−パラメータ割当変数表の各データは、例えば図２のＲＡＭ２０３に記憶される。
【００４４】
図１２（ａ）のエフェクトモジュール−エフェクトタイプ表は、ＲＡＭ２０３上では、配列データＭｏｄＴｙｐｅ［ｉ］（０≦ｉ≦３）として記憶されている。すなわち、ＭｏｄＴｙｐｅ［ｉ］には、エフェクトモジュールの番号０〜３（図３（ａ）参照）を示すＲＡＭ２０３に記憶される変数ｉ（０≦ｉ≦３）に対応するエフェクトタイプ番号の値が配列値として記憶される。エフェクトモジュールｉに対してエフェクトタイプ番号が割り当てられていない場合には、ＭｏｄＴｙｐｅ［ｉ］＝−１となる。
【００４５】
図１２（ｂ）のコントローラ−パラメータ割当変数表は、ＲＡＭ２０３上では、配列データ群ＣｔｒｌＶａｌｉｄ［ｊ］、ＣｔｒｌＭｏｄ［ｊ］、ＣｔｒｌＴｙｐｅ［ｊ］、ＣｔｒｌＰａｒｍ［ｊ］、ＣｔｒｌＳｉｇ［ｊ］、及びＣｔｒｌＰａｉｒ［ｊ］（いずれも、０≦ｊ≦６）として記憶されている。このとき、コントロールスライダを示すＲＡＭ２０３に記憶される変数ｊは、ｊ＝０〜５がコントロールスライダＣ１〜Ｃ６（図３（ｂ）参照）に対応し、ｊ＝６は前述したルール１における補欠のコントロールスライダ用の記憶領域として扱われる。配列データＣｔｒｌＶａｌｉｄ［ｊ］は、変数ｊが示すスライダコントローラが有効（＝１）か無効（＝０）かを記憶する。配列データＣｔｒｌＭｏｄ［ｊ］は、変数ｊが示すスライダコントローラが制御するパラメータが、エフェクト用ＤＳＰ２０９内のエフェクトモジュール０〜３（図３（ａ）参照）のうちのどれを制御するかを０〜３のいずれかの値で記憶する。配列データＣｔｒｌＴｙｐｅ［ｊ］は、変数ｊが示すスライダコントローラに割り当てられているパラメータが属するエフェクトタイプ番号を示しており、パラメータのアサイン時に図４〜図９に例示されるエフェクトパラメータ表のそのパラメータに対して設定されているエフェクトタイプ番号が記憶される。配列データＣｔｒｌＰａｒｍ［ｊ］は、変数ｊが示すスライダコントローラに割り当てられているパラメータに対応するエフェクトパラメータ番号を示しており、パラメータのアサイン時に図４〜図９に例示されるエフェクトパラメータ表のそのパラメータに対して設定されているパラメータ番号が記憶される。配列データＣｔｒｌＳｉｇ［ｊ］は、変数ｊが示すスライダコントローラに割り当てられているパラメータの重要度を示しており、パラメータのアサイン時に図４〜図９に例示されるエフェクトパラメータ表のそのパラメータに対して設定されている重要度が記憶される。配列データＣｔｒｌＰａｉｒ［ｊ］は、変数ｊが示すスライダコントローラに割り当てられているパラメータのペアリングパラメータ番号を示しており、パラメータのアサイン時に図４〜図９に例示されるエフェクトパラメータ表のそのパラメータに対して設定されているペアリングパラメータ番号が記憶される。上記各配列データＣｔｒｌＭｏｄ［ｊ］、ＣｔｒｌＴｙｐｅ［ｊ］、ＣｔｒｌＰａｒｍ［ｊ］、ＣｔｒｌＳｉｇ［ｊ］、又はＣｔｒｌＰａｉｒ［ｊ］には、未使用時には無効値「−１」が記憶される。
【００４６】
図１３は、本実施形態における電子楽器１００の制御処理例を示すメインフローチャートである。この制御処理は例えば、図２のＣＰＵ２０１が、ＲＯＭ２０２からＲＡＭ２０３にロードされた制御処理プログラムを実行する動作である。
【００４７】
電子鍵盤楽器１００の本体の電源が投入されると、ＲＡＭ２０３の内容等の初期化処理を実行した後（ステップＳ１３０１）、ステップＳ１３０２からＳ１３１０の一連の処理を繰り返し実行する無限ループに入る。この無限ループの処理では、以下の4つに分類される各処理が実行される。
【００４８】
＜エフェクト選択処理：ステップＳ１３０２〜Ｓ１３０４＞
ＣＰＵ２０１は、図２のＩ／Ｏインタフェース２０７を介して図１のエフェクトモジュール選択パネル１０３上のスライダスイッチＦＸ１、ＦＸ２、ＦＸ３、又はＦＸ４のいずれかのスライダの位置に変化があったか否かを判定する（ステップＳ１３０２）。この判定がＮＯならば、ＣＰＵ２０１は、ステップＳ１３０５の制御に移行する。
【００４９】
ステップＳ１３０２の判定がＹＥＳになると、ＣＰＵ２０１はまず、エフェクト選択処理を実行する（ステップＳ１３０３）。ここではＣＰＵ２０１は、変化があったスライダスイッチの新たな装置位置に対応するエフェクトタイプ番号と、変化があったスライダスイッチに対応するエフェクトモジュールの番号との対応関係は、図１２（ａ）で説明したＲＡＭ２０３飢えのエフェクトモジュール−エフェクトタイプ表に反映される。
【００５０】
ステップＳ１３０３の処理の後、ＣＰＵ２０１は、パラメータ自動割当処理を実行する（ステップＳ１３０４）。この処理は、ユーザによるエフェクトモジュール選択パネル１０３上のスライダスイッチの操作によるエフェクトの変更に応じて、エフェクトパラメータコントローラパネル１０５上の各スライダコントローラへのパラメータの割当を自動的に行う処理である。この処理の詳細については、図１４のフローチャートを用いて後述する。
【００５１】
＜スライダコントローラ処理＞
上記ステップＳ１３０２〜Ｓ１３０４の処理の後、ＣＰＵ２０１は、図２のＡ／Ｄコンバータ２０５を介して、図１のエフェクトパラメータコントローラパネル１０５上の６個のスライダコントローラＣ１〜Ｃ６のいずれかのスライダ位置に変化があったか否かを判定する（ステップＳ１３０５）。この判定がＮＯならば、ＣＰＵ２０１は、ステップＳ１３０７の制御に移行する。
【００５２】
ステップＳ１３０５の判定がＹＥＳになると、ＣＰＵ２０１は、エフェクトパラメータ変更処理を実行する（ステップＳ１３０６）。この処理において、ＣＰＵ２０１は、図１２（ｂ）のＲＡＭ２０３に記憶されているコントローラ−パラメータ割当変数表を参照することにより、変化があったスライダコントローラに対応するエフェクトモジュールの番号及びエフェクトパラメータ番号を取得する。そして、ＣＰＵ２０１は、エフェクト用ＤＳＰ２０９内の該当するエフェクトモジュールに対して、該当するパラメータの値をステップＳ１３０５で検出したスライダコントローラの値に変更する指示を出す。これにより、該当するエフェクトモジュールにおいて、音響効果の付加状態が変更される。
【００５３】
＜その他ユーザインタフェース処理＞
上記ステップＳ１３０５及びＳ１３０６の処理の後、ＣＰＵ２０１は、Ｉ／Ｏインタフェース２０７を介した図１のスイッチパネル１０２の操作状態の読込み処理や、ＬＣＤコントローラ２０８を介したＬＣＤ１０４への表示処理等の、その他ユーザーインターフェース処理を実行する（ステップＳ１３０７）。
【００５４】
＜音源処理＞
上記ステップＳ１３０７の処理の後、ＣＰＵ２０１は、鍵盤１０１のいずれかの鍵において押鍵又は離鍵が行われたか否かをキースキャナ２０６を介して読み取る（ステップＳ１３０８）。
【００５５】
押鍵も離鍵もされていないと判定された場合には、ＣＰＵ２０１は、ステップＳ１３１０の制御に移行する。押鍵又は離鍵が行われたと判定された場合には、ＣＰＵ２０１は、音源ＬＳＩ２０４に対して、楽音の発音開始の指示又は発音中の楽音の消音の指示を行う（ステップＳ１３０９）。
【００５６】
上記ステップＳ１３０８又はＳ１３０９の処理の後、ＣＰＵ２０１は、音源定常処理を実行する（ステップＳ１３１０）。この処理ではＣＰＵ２０１は、発音中の楽音のエンベロープ変化などの持続的な制御を、音源ＬＳＩ２０４に対して行う。
【００５７】
＜パラメータ自動割当処理＞
図１４（ａ）は、図１３のステップＳ１３０４のパラメータ自動割当処理の詳細例を示すフローチャートである。ここでは、前述した＜パラメータアサインの変更＞の処理を、ＲＡＭ２０３に記憶されている図１２（ｂ）で説明したコントローラ−パラメータ割当変数表を用いて実行する処理について、詳細に説明する。
【００５８】
ＣＰＵ２０１はまず、ＲＡＭ２０３に記憶されているコントローラ−パラメータ割当変数表の内容を初期化する（ステップＳ１４０１）。図１４（ｂ）は、ステップＳ１４０１の詳細例を示すフローチャートである。このフローチャートにおいて、ＣＰＵ２０１は、変数ｉの値を０に初期設定した後（ステップＳ１４１０）、その変数ｉの値を０から５まで＋１ずつ変化させながら（ステップＳ１４１７、Ｓ１４１８）、変数ｉの値に対応する全てのスライダコントローラＣ１〜Ｃ６及び補欠のスライダコントローラに対応するコントローラ内部番号（図１２（ｂ）参照）について、ステップＳ１４１１からステップＳ１４１６の一連の処理を繰り返し実行する。即ち、ＣＰＵ２０１は、ステップＳ１４１１で、変数ｉが示すスライダコントローラに対応する配列データＣｔｒｌＶａｌｉｄ［ｉ］に、無効値「０」を記憶させる。また、ＣＰＵ２０１は、ステップＳ１４１２〜Ｓ１４１６で、変数ｉが示すスライダコントローラに対応する各配列データＣｔｒｌＭｏｄ［ｉ］、ＣｔｒｌＴｙｐｅ［ｉ］、ＣｔｒｌＰａｒｍ［ｉ］、ＣｔｒｌＳｉｇ［ｉ］、及びＣｔｒｌＰａｉｒ［ｉ］に、無効値「−１」を記憶させる。
【００５９】
次にＣＰＵ２０１は、ＲＡＭ２０３に記憶されているエフェクトモジュール−エフェクトタイプ表の内容を初期化する（ステップＳ１４０２）。図１４（ｃ）は、ステップＳ１４０２の詳細例を示すフローチャートである。このフローチャートにおいて、ＣＰＵ２０１は、変数ｉの値を０に初期設定した後（ステップＳ１４２０）、その変数ｉの値を０から３まで＋１ずつ変化させながら（ステップＳ１４２２、Ｓ１４２３）、変数ｉの値に対応する全てのエフェクトモジュールについて、ステップＳ１４２１の処理を繰り返し実行する。即ち、ＣＰＵ２０１は、ステップＳ１４２１で、変数ｉが示すエフェクトモジュールに対応する配列データＭｏｄＴｙｐｅ［ｉ］に、無効値「−１」を記憶させる。
【００６０】
上記ステップＳ１４０１及びＳ１４０２の初期化処理の後、ＣＰＵ２０１は、重要度による選別処理を実行する（ステップＳ１４０３）。図１５は、ステップＳ１４０３の重要度による選別処理の詳細例を示すフローチャートである。このフローチャートは、前述した「ルール１：重要度による選別」の具体的な処理に対応する。
【００６１】
図１５のフローチャートにおいて、ＣＰＵ２０１はまず、各エフェクトモジュールを指示するためのＲＡＭ２０３上の変数ｍの値を、ステップＳ１５０１で０に初期設定した後、ステップＳ１５１９で最後のモジュールに対応する値３を超えたと判定するまで、ステップＳ１５１８で＋１ずつ順次インクリメントする動作を繰り返し実行する。このようにして変数ｍの各値によって指定されるエフェクトモジュール（以下、エフェクトモジュールｍとして参照する）毎に、ＣＰＵ２０１は、以下のステップＳ１５０２からステップＳ１５１７までの一連の処理を実行する。これにより、エフェクトモジュールｍとしては、図３（ａ）で前述したように、エフェクトモジュール０からエフェクトモジュール３までの３つが順次指定される。
【００６２】
ステップＳ１５０２からステップＳ１５１７までの一連の処理において、ＣＰＵ２０１はまず、変数ｍの値によってＲＡＭ２０３に記憶されているエフェクトモジュール−エフェクトタイプ表（図１２（ｂ）参照）である配列データＭｏｄＴｙｐｅ［ｍ］を参照することにより、エフェクトモジュールｍに対応するエフェクトタイプ番号を取得し、ＲＡＭ２０３上の変数ｔに設定する（ステップＳ１５０２）。以下、このエフェクトタイプ番号をエフェクトタイプ番号ｔとして参照する。
【００６３】
次に、ＣＰＵ２０１は、エフェクトタイプ番号ｔの値が無効値「−１」であるか否かを判定する（ステップＳ１５０２）。ステップＳ１５０２の判定がＹＥＳならば、ＣＰＵ２０１は、現在のエフェクトモジュールｍに対するステップＳ１５０４以降の処理は実行せずに、ステップＳ１５１８に移行して変数ｍの値をインクリメントさせることにより、変数ｍのインクリメントされた値によって参照される次のエフェクトモジュールｍに対応する処理に移行する。
【００６４】
ステップＳ１５０２の判定がＮＯ（エフェクトタイプ番号ｔの値が無効値でない）ならば、ＣＰＵ２０１は、ＲＡＭ２０３に記憶されているエフェクトパラメータ表（図４〜図９参照）のエフェクトタイプ番号ｔに対応するエントリからパラメータ数を取得し、ＲＡＭ２０３上の変数ｐｎに設定する（ステップＳ１５０４）。以下、このパラメータ数をパラメータ数ｐｎとして参照する。
【００６５】
次に、ＣＰＵ２０１は、エフェクトモジュールｍ及びエフェクトタイプ番号ｔのエフェクト毎に、そのエフェクトに対応する各パラメータを指示するためのＲＡＭ２０３上の変数ｐの値を、ステップＳ１５０５で０に初期設定した後、ステップＳ１５１７で最後のパラメータに対応する値＝パラメータ数ｐｎ−１を超えたと判定するまで、ステップＳ１５１６で＋１ずつ順次インクリメントする動作を繰り返し実行する。このようにして変数ｐの各値によって指定されるパラメータ（以下、パラメータｐとして参照する）毎に、ＣＰＵ２０１は、以下のステップＳ１５０６からステップＳ１５１５までの一連の処理を実行する。パラメータｐとしては、図４〜図９に例示されるように、エフェクトタイプ番号ｔに対応してステップＳ１５０４で抽出されているパラメータ数ｐｎにより、パラメータ０からパラメータｐｎまでのｐｎ個が順次指定される。
【００６６】
ステップＳ１５０６からステップＳ１５１５までの一連の処理において、ＣＰＵ２０１は、エフェクトモジュールｍ及びエフェクトタイプ番号ｔのエフェクト毎及びそのエフェクト内のパラメータｐ毎に、比較対象となるエフェクトパラメータコントローラパネル１０５上の各スライダコントローラを指示するためのＲＡＭ２０３上の変数ｃの値を、ステップＳ１５０６で０に初期設定した後、ステップＳ１５１５で最後のスライダコントローラに対応する値６（図１２（ａ）のコントローラ内部番号を参照）を超えたと判定するまで、ステップＳ１５１４で＋１ずつ順次インクリメントする動作を繰り返し実行する。このようにして変数ｃの各値によって指定されるスライダコントローラ（以下、スライダコントローラｃとして参照する）毎に、ＣＰＵ２０１は、以下のステップＳ１５０７からステップＳ１５１３までの一連の処理を実行する。スライダコントローラｃとしては、図１２（ａ）に例示されるように、スライダコントローラ０（＝Ｃ１）からスライダコントローラ５（＝Ｃ６）、及びスライダコントローラ６（＝補欠）までの７個が順次指定される。
【００６７】
ステップＳ１５０７からステップＳ１５１３までの一連の処理では、ＣＰＵ２０１は、エフェクトモジュールｍ及びエフェクトタイプ番号ｔのエフェクト毎及びそのエフェクト内のパラメータｐ毎に、スライダコントローラ０〜５（＝Ｃ１〜Ｃ６）及びスライダコントローラ６（＝補欠）との間で、前述したルール１を判定する。
【００６８】
このルール１の判定において、ＣＰＵ２０１はまず、エフェクトパラメータ表（図４〜図９参照）から、エフェクトタイプ番号＝t、パラメータ番号＝ｐに対応する情報を取得し、取得した重要度の値をＲＡＭ２０３上の変数ｓに、ペアリングパラメータ番号の値をＲＡＭ２０３上の変数ｐｐに格納する（ステップＳ１５０７）。
【００６９】
次に、ＣＰＵ２０１は、コントローラ−パラメータ割当変数表（図１２（ａ）参照）を参照することにより、各配列データＣｔｒｌＶａｌｉｄ［ｃ］、ＣｔｒｌＳｉｇ［ｃ］、ＣｔｒｌＭｏｄ［ｃ］、及びＣｔｒｌＰａｒａｍ［ｃ］の各値を取得し、以下のステップＳ１５０８からＳ１５１２の判定処理を実行する。
【００７０】
まずＣＰＵ２０１は、有効フラグである配列データ値ＣｔｒｌＶａｌｉｄ［ｃ］が０、即ちスライダコントローラｃが無効（図１２（ａ）参照）であるか否かを判定する（ステップＳ１５０８）。このステップＳ１５０８の判定がＹＥＳ（スライダコントローラｃが無効）ならば、スライダコントローラｃに直ちに、エフェクトモジュールｍに設定されているエフェクトタイプ番号ｔに対応するエフェクタのパラメータｐの情報を設定できるため、ＣＰＵ２０１は、その設定を行うステップＳ１５１３のパラメータデータ挿入処理に移行する。このパラメータデータ挿入処理の処理の詳細は、図１９のフローチャートを用いて後述する。
【００７１】
ステップＳ１５０８の判定がＮＯ（スライダコントローラｃが有効）ならば、ＣＰＵ２０１は、スライダコントローラｃに既に設定されているパラメータの重要度を示す配列データ値ＣｔｒｌＳｉｇ［ｃ］よりも、エフェクトモジュールｍに設定されているエフェクトタイプ番号ｔに対応するエフェクタのパラメータｐの重要度ｓのほうが大きいか否かを判定する（ステップＳ１５０９）。
【００７２】
ステップＳ１５０９の判定がＹＥＳ（パラメータｐの重要度ｓのほうが大きい）ならば、ＣＰＵ２０１は、スライダコントローラｃに、エフェクトモジュールｍに設定されているエフェクトタイプ番号ｔに対応するエフェクタのパラメータｐの情報を挿入するために、後述するステップＳ１５１３の処理に移行する。これは、前述したルール１の基本ルールに対応する。
【００７３】
ステップＳ１５０９の判定がＮＯ（パラメータｐの重要度ｓのほうが大きくはない）ならば、ＣＰＵ２０１は、スライダコントローラｃに既に設定されているパラメータの重要度を示す配列データ値ＣｔｒｌＳｉｇ［ｃ］と、エフェクトモジュールｍに設定されているエフェクトタイプ番号ｔに対応するエフェクタのパラメータｐの重要度ｓの値とが等しいか否かを判定する（ステップＳ１５１０）。
【００７４】
ステップＳ１５１０の判定がＮＯならば、即ち重要度ｓが重要度ＣｔｒｌＳｉｇ［ｃ］以下であれば、エフェクトモジュールｍに設定されているエフェクトタイプ番号ｔに対応するエフェクタのパラメータｐは、スライダコントローラｃには設定せずに、ステップＳ１５１４に移行して変数ｃをインクリメントさせて次のスライダコントローラｃとの比較判定に移る。
【００７５】
ステップＳ１５１０の判定がＹＥＳならば、ＣＰＵ２０１は更に、エフェクトモジュールｍの番号がスライダコントローラｃに既に設定されているエフェクタモジュール番号を示す配列データ値ＣｔｒｌＭｏｄ［ｃ］よりも大きいか、即ちエフェクトモジュールｍがスライダコントローラｃに設定されているエフェクトモジュールよりも後段にあるか否かを判定する（ステップＳ１５１１）。
【００７６】
ステップＳ１５１１の判定がＹＥＳ（エフェクトモジュールｍのほうが後段にある）ならば、ＣＰＵ２０１は、スライダコントローラｃにエフェクトモジュールｍに設定されているエフェクトタイプ番号ｔに対応するエフェクタのパラメータｐの情報を挿入するために、後述するステップＳ１５１３の処理に移行する。これは、前述したルール１−１に対応する。
【００７７】
ステップＳ１５１１の判定がＮＯ（エフェクトモジュールｍのほうが後段にはない）ならば、ＣＰＵ２０１は更に、エフェクトモジュールｍの番号がスライダコントローラｃに既に設定されているエフェクタモジュール番号を示す配列データ値ＣｔｒｌＭｏｄ［ｃ］と等しく、かつ、エフェクトタイプ番号ｔに対応するエフェクタのパラメータ番号ｐが、スライダコントローラｃに既に設定されているパラメータ番号を示す配列データ値ＣｔｒｌＰａｒａｍ［ｃ］よりも大きいか否かを判定する（ステップＳ１５１２）。
【００７８】
ステップＳ１５１２の判定がＹＥＳ（パラメータ番号ｐのほうが大きい）ならば、ＣＰＵ２０１は、スライダコントローラｃに、エフェクトモジュールｍに設定されているエフェクトタイプ番号ｔに対応するエフェクタのパラメータｐの情報を挿入するために、後述するステップＳ１５１３の処理に移行する。これは、前述したルール１−２に対応する。
【００７９】
ステップＳ１５１２の判定がＮＯ（パラメータ番号ｐのほうが大きくはない）ならば、エフェクトモジュールｍに設定されているエフェクトタイプ番号ｔに対応するエフェクタのパラメータｐは、スライダコントローラｃには設定せずに、ステップＳ１５１４に移行して変数ｃをインクリメントさせて次のスライダコントローラｃとの比較判定に移る。
【００８０】
以上のようにして、図１５のフローチャートの処理が終了し、図１３のステップＳ１３０４のパラメータ自動割当処理における図１４（ａ）のフローチャートのステップＳ１４０３の重要度による選別処理の後、ＣＰＵ２０１は、ペアリング処理を実行する（ステップＳ１４０４）。図１６は、ステップＳ１４０４のペアリング処理の詳細例を示すフローチャートである。このフローチャートは、前述した「ルール２：ペアリングによる選別」の具体的な処理に対応する。
【００８１】
図１６のフローチャートにおいて、ＣＰＵ２０１はまず、エフェクトパラメータコントローラパネル１０５上の各スライダコントローラを指示するためのＲＡＭ２０３上の変数ｉの値を、ステップＳ１６０１で０に初期設定した後、ステップＳ１６１０で補欠を除く最後のスライダコントローラに対応する値５（図１２（ａ）のコントローラ内部番号を参照）を超えたと判定するまで、ステップＳ１６０９で＋１ずつ順次インクリメントする動作を繰り返し実行する。このようにして変数ｉの各値によって指定されるスライダコントローラ（以下、スライダコントローラｉとして参照する）毎に、ＣＰＵ２０１は、以下のステップＳ１６０２からステップＳ１６０８までの一連の処理を実行する。スライダコントローラｉとしては、図１２（ａ）に例示されるように、スライダコントローラ０（＝Ｃ１）からスライダコントローラ５（＝Ｃ６）までの６個が順次指定される。
【００８２】
前述した図１５のフローチャートによって示される図１４のステップＳ１４０３の重要度による選別処理（前述したルール１）によって、スライダコントローラ０には最も優先度の高いパラメータがアサインされており、以下スライダコントローラ１から５まで、優先度が順次低くなる。従って、図１６のフローチャートでは、優先度の高い順番に各スライダコントローラ毎に、そのスライダコントローラにアサインされているパラメータにペアリングパラメータ番号が設定されているか否かが調べられることになる。
【００８３】
ステップＳ１６０２からステップＳ１６０８までの一連の処理において、ＣＰＵ２０１はまず、図１２（ａ）に例示したＲＡＭ２０３上のコントローラ−パラメータ割当変数表のデータを参照することにより、スライダコントローラｉにアサインされているパラメータに対応するペアリングパラメータ番号を示す配列データ値ＣｔｒｌＰａｉｒ［ｉ］が無効値「−１」であるか否かを判定する（ステップＳ１６０２）。
【００８４】
ステップＳ１６０２の判定がＹＥＳ（ペアリングパラメータ番号が無効値）ならば、ＣＰＵ２０１は、ステップＳ１６０９に移行して変数ｉの値をインクリメントし、次のスライダコントローラｉに対する処理に移行する。
【００８５】
ステップＳ１６０２の判定がＮＯ（ペアリングパラメータ番号が有効値）ならば、ＣＰＵ２０１は、スライダコントローラを示す変数ｉの値が、補欠を除く最後のスライダコントローラに対応する値５であるか否かを判定する（ステップＳ１６０３）。
【００８６】
ステップＳ１６０３の判定がＮＯ（最後のスライダコントローラではない）ならば、ＣＰＵ２０１は、図１２（ａ）に例示したＲＡＭ２０３上のコントローラ−パラメータ割当変数表のデータを参照することにより、スライダコントローラｉにアサインされているパラメータに対応する各配列データ値ＣｔｒｌＭｏｄ［ｉ］、ＣｔｒｌＴｙｐｅ［ｉ］、ＣｔｒｌＰａｒａｍ［ｉ］、及びＣｔｒｌＰａｉｒ［ｉ］を取得する。ＣＰＵ２０１は、スライダコントローラｉにアサインされているパラメータに対応するエフェクトモジュールを示す配列データ値ＣｔｒｌＭｏｄ［ｉ］を、ＲＡＭ２０３上の変数ｍに格納する。以降、このエフェクトモジュールを、エフェクトモジュールｍとして参照する。また、ＣＰＵ２０１は、スライダコントローラｉにアサインされているパラメータが属するエフェクトタイプ番号を示す配列データ値ＣｔｒｌＴｙｐｅ［ｉ］を、ＲＡＭ２０３上の変数ｔに格納する。以降、このエフェクトタイプ番号をエフェクトタイプ番号ｔとして参照する。更に、ＣＰＵ２０１は、スライダコントローラｉにアサインされているパラメータのパラメータ番号を示す配列データ値ＣｔｒｌＰａｒａｍ［ｉ］を、ＲＡＭ２０３上の変数ｐに格納する。以降、このパラメータをパラメータｐとして参照する。そして、ＣＰＵ２０１は、スライダコントローラｉにアサインされているパラメータとペアのパラメータのペアリングパラメータ番号を示す配列データ値ＣｔｒｌＰａｉｒ［ｉ］お、ＲＡＭ２０３上の変数ｐｐに格納する。以降、このペアリングパラメータ番号を、ペアリングパラメータ番号ｐｐとして参照する（以上、ステップＳ１６０４）。
【００８７】
次に、ＣＰＵ２０１は、スライダコントローラｉにアサインされているパラメータｐに対応するペアリングパラメータ番号ｐｐのパラメータが、スライダコントローラｉよりも手前又は後方のスライダコントローラにアサインされているか否かを調べる重複調査処理を実行する（ステップＳ１６０５）。
【００８８】
図１７は、図１６のステップＳ１６０５の重複調査処理の詳細例を示すフローチャートである。図１７のフローチャートにおいて、ＣＰＵ２０１はまず、エフェクトパラメータコントローラパネル１０５上の各スライダコントローラを指示するためのＲＡＭ２０３上の変数ｊの値を、ステップＳ１７０１で０に初期設定した後、ステップＳ１７０８で補欠を除く最後のスライダコントローラに対応する値５（図１２（ａ）のコントローラ内部番号を参照）を超えたと判定するまで、ステップＳ１７０７で＋１ずつ順次インクリメントする動作を繰り返し実行する。このようにして変数ｊの各値によって指定されるスライダコントローラ（以下、重複調査先スライダコントローラｊとして参照する）毎に、ＣＰＵ２０１は、以下のステップＳ１７０２からステップＳ１７０８までの一連の処理を実行する。重複調査先スライダコントローラｊとしては、図１２（ａ）に例示されるように、スライダコントローラ０（＝Ｃ１）からスライダコントローラ５（＝Ｃ６）までの６個が順次指定される。
【００８９】
Ｓ１７０２からステップＳ１７０８までの一連の処理において、ＣＰＵ２０１は、図１２（ａ）に例示されるＲＡＭ２０３上のコントローラ−パラメータ割当変数表を参照することにより、重複調査対象のペアリング先のパラメータの情報であるエフェクトモジュールｍ、エフェクトタイプ番号ｔ、及びペアリングパラメータ番号ｐｐの値がそれぞれ、重複調査先スライダコントローラｊにアサインされているエフェクトモジュール番号ＣｔｒｌＭｏｄ［ｊ］、エフェクトタイプ番号ＣｔｒｌＴｙｐｅ［ｊ］、及びエフェクトパラメータ番号ＣｔｒｌＰａｒａｍ［ｊ］と一致するか否かを判定する（ステップＳ１７０２、Ｓ１７０３、Ｓ１７０４）。
【００９０】
ステップＳ１７０２、Ｓ１７０３、又はＳ１７０４のいずれかの判定がＮＯ（不一致）となった場合には、ＣＰＵ２０１は、ステップＳ１７０７の処理に移行して変数ｊの値をインクリメントし、次の重複調査先スライダコントローラｊに対する処理に移行する。
【００９１】
ステップＳ１７０２、Ｓ１７０３、又はＳ１７０４の全ての判定がＹＥＳ（全部一致）となった、即ち重複調査先スライダコントローラｊにアサインされているパラメータが、重複調査対象のペアリング先のパラメータと一致した場合には、ＣＰＵ２０１は、図１７の重複調査処理の戻り値を示すＲＡＭ２０３上の変数ｒの値を１にセットする（ステップＳ１７０６）。
【００９２】
ステップＳ１７０６の処理の後、ＣＰＵ２０１は、図１７のフローチャートで示される図１６のステップＳ１６０５の重複調査処理を終了する。
【００９３】
一方、ステップＳ１７０２、Ｓ１７０３、又はＳ１７０４のいずれかの判定がＮＯ（不一致）となる状態が続いたまま、補欠を除く最後のスライダコントローラ５（＝Ｃ６）までの重複調査が終了し、ステップＳ１７０８の判定がＹＥＳとなった場合には、ＣＰＵ２０１は、図１７の重複調査処理の戻り値を示すＲＡＭ２０３上の変数ｒの値を０にセットｐする（ステップＳ１７０９）。その後、ＣＰＵ２０１は、図１７のフローチャートで示される図１６のステップＳ１６０５の重複調査処理を終了する。
【００９４】
図１６のフローチャートの説明に戻り、図１７のフローチャートで示されるステップＳ１６０５の重複調査処理が終了した後、ＣＰＵ２０１は、重複調査処理の戻り値ｒが１であるか否かを判定する（ステップＳ１６０６）。
【００９５】
ステップＳ１６０６の判定がＹＥＳ（ｒ＝１）である場合は、パラメータｐがアサインされているスライダコントローラの番号ｉに対して、パラメータｐに対応するペアリングパラメータｐｐが既にアサインされている重複調査先スライダコントローラの番号ｊの値が小さい（手前である）場合である。この場合には、前述したルール２−１が適用されることになり、ＣＰＵ２０１は、ペアリングパラメータ番号に対応するパラメータに対しては何もせずに、ステップＳ１６０９の処理に移行し、変数ｉの値をインクリメントして次のスライダコントローラｉに対する処理に移行する。
【００９６】
ステップＳ１６０６の判定がＮＯである（ｒ＝１ではない）場合、即ち、パラメータｐがアサインされているスライダコントローラの番号ｉに対して、パラメータｐに対応するペアリングパラメータｐｐが既にアサインされている重複調査先スライダコントローラの番号ｊの値が大きい（後方にある）場合、又はペアリングパラメータｐｐはまだスライダコントローラにはアサインされていないである。この場合には、前述した２−３又は２−３が適用されることになる。
【００９７】
この場合、ＣＰＵ２０１はまず、図４〜図９に例示されるＲＯＭ２０２に記憶されているエフェクトパラメータ表から、エフェクトタイプ番号ｔのペアリングパラメータ番号ｐｐに対応する重要度の値を取得し、その値をＲＡＭ２０３上の変数ｓに格納する（ステップＳ１６０７）。
【００９８】
そして、ＣＰＵ２０１は、ペアリングパラメータに対応する変数ｍ（エフェクトモジュールの番号）、変数ｔ（エフェクトタイプ番号）、変数ｐｐの値を格納した変数ｐ（ペアリングパラメータ番号）、変数ｓ（ペアリングパラメータの重要度）、無効値「−１」が格納された変数ｐｐ（ペアリングパラメータ番号に対するペアリングパラメータ番号）の各値、変数ｃ（挿入が行われるスライダコントローラの番号）の値＝ｉ＋１、及びＣｔｒｌＶａｌｉｄ［ｃ］の値＝１を引数として、後述するパラメータ挿入処理を実行する（ステップＳ１６０８）。この結果、スライダコントローラｉにアサインされているパラメータと共に、図４〜図９として例示されるエフェクトパラメータ表上でそのパラメータに対して設定されているペアリングパラメータがスライダコントローラｉ＋１に格納されることになる。
【００９９】
ステップＳ１６０８の後、ＣＰＵ２０１は、ステップＳ１６０９の処理に移行し、変数ｉの値をインクリメントして、次のスライダコントローラｉに対する処理に移行する。
【０１００】
前述したステップＳ１６０２においてペアリングパラメータ番号が有効値であると判定されて、ステップＳ１６０３において、変数ｉの値が５、即ち補欠を除く最後のスライダコントローラ５（＝Ｃ６）に等しくなると、その判定がＹＥＳになる。この場合、前述したルール２−２により、パラメータがアサインされている補欠以外の最後のスライダコントローラ５に対して、更にペアリングパラメータをアサインする余地がないので、そのペアリングパラメータ番号が設定されているパラメータが落選させられ、補欠の7番目の優先度のパラメータが昇格させられる。７番目もペアリングパラメータ番号がある場合にはそれも落選させられ、結局、最後のスライダコントローラ５は空きとなる。
【０１０１】
以上のルール２−２の制御を実現するために、ＣＰＵ２０１は、補欠のスライダコントローラ６にアサインされているパラメータのペアリングパラメータ番号を示す配列値ＣｔｒｌＰａｉｒ［６］が無効値を示しているか否かを判定する（ステップＳ１６１１）。
【０１０２】
ステップＳ１６１１の判定がＹＥＳであれば、ＣＰＵ２０１は、ステップＳ１６１２で、補欠の配列データＣｔｒｌＶａｌｉｄ［６］（有効データ）、ＣｔｒｌＭｏｄ［６］（エフェクトモジュール番号）、ＣｔｒｌＴｙｐｅ［６］（エフェクトタイプ番号）、ＣｔｒｌＰａｒａｍ［６］（エフェクトパラメータ番号）、ＣｔｒｌＳｉｇ［６］（重要度）、及びＣｔｒｌＰａｉｒ［６］（ペアリングパラメータ番号）の各配列データ値を、最終のスライダコントローラ５の各配列データＣｔｒｌＶａｌｉｄ［５］、ＣｔｒｌＭｏｄ［５］、ＣｔｒｌＴｙｐｅ［５］、ＣｔｒｌＰａｒａｍ［５］、ＣｔｒｌＳｉｇ［５］、及びＣｔｒｌＰａｉｒ［５］に昇格させ、ＲＡＭ２０３上のコントローラ−パラメータ割当変数表（図１２（ａ）参照）として記憶させる。
【０１０３】
一方、ステップＳ１６１１の判定がＮＯならば、ＣＰＵ２０１は、ステップＳ１６１３で、最後のスライダコントローラ５の配列データＣｔｒｌＶａｌｉｄ［５］に無効値を設定する。
【０１０４】
上記ステップＳ１６１２又はＳ１６１３の処理の後、又はステップＳ１６１０の判定がＹＥＳとなった後、ＣＰＵ２０１は、図１６のフローチャートの処理を終了し、図１３のステップＳ１３０４のパラメータ自動割当処理における図１４（ａ）のフローチャートのステップＳ１４０４のペアリング処理を終了する。
【０１０５】
図１８は、図１５のステップＳ１５１３又は図１６のステップＳ１６０８として実行されるパラメータデータ挿入処理の詳細を示すフローチャートである。このパラメータデータ挿入処理には、図１５のフローチャートの処理又は図１６のフローチャートの処理から、変数ｍ（エフェクトモジュールの番号）、変数ｔ（エフェクトタイプ番号）、変数ｐ（パラメータ番号）、変数ｓ（重要度）、変数ｐｐ（ペアリングパラメータ番号）の各値、変数ｃ（挿入が行われるスライダコントローラの番号）の値＝ｉ＋１、及びＣｔｒｌＶａｌｉｄ［ｃ］の値が引数として引き渡される。
【０１０６】
図１８のフローチャートにおいて、ＣＰＵ２０１はまず、ＣｔｒｌＶａｌｉｄ［ｃ］の値が無効値０であるか否かを判定する（ステップＳ１８０１）。
【０１０７】
図１５のステップＳ１５０８の判定がＹＥＳとなることにより図１５のステップＳ１５１３として図１８のフローチャートが実行される場合には、ステップＳ１８０１の判定がＹＥＳとなる。この場合には、対象となるスライダコントローラｃが無効になっているため、ステップＳ１８０２〜Ｓ１８０５のスライダコントローラへのアサインのシフト処理を行う必要はなく、無効になっているスライダコントローラｃに直接パラメータを設定すればよい。そこで、ＣＰＵ２０１は、スライダコントローラｃによって指定されるＲＡＭ２０３上のコントローラ−パラメータ割当変数表の領域の各配列データに、新たにアサインされるべきパラメータの情報を格納する（ステップＳ１８０６）。即ち、有効フラグを示す配列データＣｔｒｌＶａｌｉｄ［ｃ］として、有効値１が格納される。また、エフェクトモジュール番号を示す配列データＣｔｒｌＭｏｄ［ｃ］として、引数として引き渡されてきた変数ｍの値が格納される。また、エフェクトタイプ番号を示す配列データＣｔｒｌＴｙｐｅ［ｃ］として、引数として引き渡されてきた変数ｔの値が格納される。また、エフェクトパラメータ番号を示す配列データとして、引数として引き渡されてきた変数ｐの値が格納される。更に、重要度を示す配列データＣｔｒｌＳｉｇ［ｃ］として、引数として引き渡されてきた変数ｓの値が格納される。そして、ペアリングパラメータ番号を示す配列データＣｔｒｌＰａｉｒ［ｃ］として、引数として引き渡されてきた変数ｐｐの値が格納される。その後、ＣＰＵ２０１は、図１８のフローチャートで示される図１５のステップＳ１５１３のパラメータデータ挿入処理を終了する。
【０１０８】
ステップＳ１８０１の判定がＮＯの場合には、ＣＰＵ２０１は、ＲＡＭ２０３上の変数ｉを５に設定した後（ステップＳ１８０２）、ステップＳ１８０５で変数ｉの値を＋１ずつデクリメントしながら、ステップＳ１８０３で変数ｉの値が引数として引き渡されてきた対象となるスライダコントローラの番号を示す変数ｃの値に一致したと判定するまで、ステップＳ１８０４の処理を繰り返し実行する。この結果、補欠を除く最後のスライダコントローラ５（＝Ｃ６）からスライダコントローラｃ＋１まで順次、１つ後ろのスライダコントローラ（スライダコントローラ６からスライダコントローラｃ＋２）にアサインされているパラメータの情報がシフトされる。図１６の場合には、この処理は、前述したルール２−３に対応する。
【０１０９】
具体的には、ＣＰＵ２０１は、ステップＳ１８０４で、スライダコントローラｉにアサインされていたＣｔｒｌＶａｌｉｄ［ｉ］（有効データ）、ＣｔｒｌＭｏｄ［ｉ］（エフェクトモジュール番号）、ＣｔｒｌＴｙｐｅ［ｉ］（エフェクトタイプ番号）、ＣｔｒｌＰａｒａｍ［ｉ］（エフェクトパラメータ番号）、ＣｔｒｌＳｉｇ［ｉ］（重要度）、及びＣｔｒｌＰａｉｒ［ｉ］（ペアリングパラメータ番号）の各配列データ値を、スライダコントローラｉ＋１の各配列データＣｔｒｌＶａｌｉｄ［ｉ＋１］、ＣｔｒｌＭｏｄ［ｉ＋１］、ＣｔｒｌＴｙｐｅ［ｉ＋１］、ＣｔｒｌＰａｒａｍ［ｉ＋１］、ＣｔｒｌＳｉｇ［ｉ＋１］、及びＣｔｒｌＰａｉｒ［ｉ＋１］に移し替え、ＲＡＭ２０３上のコントローラ−パラメータ割当変数表（図１２（ａ）参照）として記憶させる。
【０１１０】
上記ステップＳ１８０３〜Ｓ１８０５の処理が、変数ｉの値がｉ＝５からｉ＝ｃ＋１まで順次繰り返し実行されることにより、スライダコントローラｃ＋１からスライダコントローラ５までのパラメータの情報がスライダコントローラｃ＋２からスライダコントローラ６までシフトされて、スライダコントローラｃ＋１が空くことになる。そして、変数ｉの値が変数ｃの値に等しくなってステップＳ１８０３の判定がＹＥＳになると、ＣＰＵ２０１は、ステップＳ１８０６の処理に移行し、ここでスライダコントローラｃの配列データに、引数として引き渡されたパラメータの情報が記憶させられることになる。
【０１１１】
図１４のパラメータ自動割当処理のフローチャートにおいて、ステップＳ１４０４のペアリング処理の後、ＣＰＵ２０１は、ソート処理を実行する（ステップＳ１４０５）。この処理は、前述した「ルール３：エフェクトモジュール順にソート」の処理に対応する。ここでは、ＣＰＵ２０１は、エフェクトパラメータコントローラパネル１０５の各スライダコントローラにアサインされているパラメータの情報を、エフェクトモジュール選択パネル１０３で各スライダスイッチＦＸ１、ＦＸ２、ＦＸ３、及びＦＸ４のエフェクトモジュールの順になるように、また同一モジュール内ではパラメータ番号の順にパラメータが並ぶように、ソート処理を実行し、ＲＡＭ２０３に記憶されている図１２（ａ）に例示されるコントローラ−パラメータ割当変数表の行方向を並び替える処理を実行する。
【０１１２】
以上の動作の後、ＣＰＵ２０１は、図１４（ａ）のフローチャートで示される図１３のステップＳ１３０４のパラメータ自動割当処理を終了する。
【０１１３】
以上説明した実施形態により、エフェクトモジュールを選択すると同時に、ユーザに対して推奨のコントローラ割当の組合せを自動的に生成でき、大幅な労力の削減につながるような自動エフェクトパラメータの割当装置を実現することが可能となる。
【０１１４】
その他、本発明は上述した実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、上述した実施形態で実行される機能は可能な限り適宜組み合わせて実施しても良い。上述した実施形態には種々の段階が含まれており、開示される複数の構成要件による適宜の組み合せにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、効果が得られるのであれば、この構成要件が削除された構成が発明として抽出され得る。
【０１１５】
以上の実施形態に関して、更に以下の付記を開示する。
（付記１）
第１ユーザ操作に基づいて、各エフェクトにはそれぞれ複数のパラメータが対応付けられている複数のエフェクトのなかからいずれかのエフェクトを決定するための複数の第１操作子と、
第２ユーザ操作に基づいて、パラメータにパラメータ値を付与するための複数の第２操作子と、
少なくとも１つのプロセッサと、
を備え、前記少なくとも１つのプロセッサは、
前記第１ユーザ操作に基づいて、前記複数のエフェクトのなかから第１エフェクト及び第２エフェクトを含む２つ以上のエフェクトを決定し、
決定された前記第１エフェクトに対応付けられている複数の第１パラメータそれぞれの重要度を示すデータ及び、決定された前記第２エフェクトに対応付けられている複数の第２パラメータそれぞれの重要度を示すデータに基づいて、前記複数の第２操作子それぞれに対応付ける複数のパラメータを決定する、
効果付加装置。
（付記２）
付記１に記載の効果付加装置において、
前記複数の第２操作子それぞれに対応付ける複数のパラメータは、前記重要度が高いパラメータから順に決定することにより、前記複数の第２操作子には、前記第１ユーザ操作に基づいて決定されたエフェクトに対応するいずれのパラメータも対応付けられない場合を含む、効果付加装置。
（付記３）
付記１または２に記載の効果付加装置において、
前記重要度を示すデータは、１つのエフェクト内だけでしかパラメータの重要度を比較できないデータとは異なり、複数のエフェクトにおいて一律にパラメータの重要度を比較できるデータである、効果付加装置。
（付記４）
付記１から３のいずれかに記載の効果付加装置において、
前記少なくとも１つのプロセッサは、デジタルシグナルプロセッサを含み、
前記デジタルシグナルプロセッサは、前記第１ユーザ操作に基づいて、前記いずれか２つ以上のエフェクトに対応するエフェクトプログラムを読み込む、効果付加装置。
（付記５）
付記１から４のいずれかに記載の効果付加装置において、
前記少なくとも１つのプロセッサは、
前記複数の第２操作子のなかの或る第２操作子に対応付けるパラメータが決定された場合に、パラメータ同士のペアを規定するペアリングパラメータ情報に基づいて、前記或る第２操作子とは別の第２操作子に対応付けるパラメータを決定する、効果付加装置。
（付記６）
付記１から５のいずれかに記載の効果付加装置と、
第３ユーザ操作に基づいて、音高を指定するための演奏操作子と、
前記第３ユーザ操作に基づいて指定された音高に応じた楽音に対して、前記第１ユーザ操作に応じたエフェクトを、前記第２ユーザ操作に応じたパラメータで付与する、電子楽器。
（付記７）
第１ユーザ操作に基づいて、各エフェクトにはそれぞれ複数のパラメータが対応付けられている複数のエフェクトのなかからいずれかのエフェクトを決定するための複数の第１操作子と、第２ユーザ操作に基づいて、パラメータにパラメータ値を付与するための複数の第２操作子と、を含む効果付加装置のコンピュータに、
前記第１ユーザ操作に基づいて、前記複数のエフェクトのなかから第１エフェクト及び第２エフェクトを含む２つ以上のエフェクトを決定させ、
決定された前記第１エフェクトに対応付けられている複数の第１パラメータそれぞれの重要度を示すデータ及び、決定された前記第２エフェクトに対応付けられている複数の第２パラメータそれぞれの重要度を示すデータに基づいて、前記複数の第２操作子それぞれに対応付ける複数のパラメータを決定させる、
方法。
（付記８）
第１ユーザ操作に基づいて、各エフェクトにはそれぞれ複数のパラメータが対応付けられている複数のエフェクトのなかからいずれかのエフェクトを決定するための複数の第１操作子と、第２ユーザ操作に基づいて、パラメータにパラメータ値を付与するための複数の第２操作子と、を含む効果付加装置のコンピュータに、
前記第１ユーザ操作に基づいて、前記複数のエフェクトのなかから第１エフェクト及び第２エフェクトを含む２つ以上のエフェクトを決定させ、
決定された前記第１エフェクトに対応付けられている複数の第１パラメータそれぞれの重要度を示すデータ及び、決定された前記第２エフェクトに対応付けられている複数の第２パラメータそれぞれの重要度を示すデータに基づいて、前記複数の第２操作子それぞれに対応付ける複数のパラメータを決定させる、
プログラム。
【符号の説明】
【０１１６】
１００  電子鍵盤楽器
１０１  鍵盤
１０２  スイッチパネル
１０３  エフェクトモジュール選択パネル
１０４  ＬＣＤ
１０５  エフェクトパラメータコントローラパネル
２００  制御システム
２０１  ＣＰＵ
２０２  ＲＯＭ
２０３  ＲＡＭ
２０４  音源ＬＳＩ
２０５  Ａ／Ｄコンバータ
２０６  キースキャナ
２０７  Ｉ／Ｏインタフェース
２０８  ＬＣＤコントローラ
２０９  システムバス
２１０  ＤＳＰ用ＲＡＭ
２１１  Ｄ／Ａコンバータ
２１４  アンプ
２１５  歌声データ
２１６  発音制御データ
２１７、３２１  歌声音声出力データ
２１８  楽音出力データ
２１９  ネットワークインタフェース
【図１】
2020160139.tif 000003
【図２】
2020160139.tif 000004
【図３】
2020160139.tif 000005
【図４】
2020160139.tif 000006
【図５】
2020160139.tif 000007
【図６】
2020160139.tif 000008
【図７】
2020160139.tif 000009
【図８】
2020160139.tif 000010
【図９】
2020160139.tif 000011
【図１０】
2020160139.tif 000012
【図１１】
2020160139.tif 000013
【図１２】
2020160139.tif 000014
【図１３】
2020160139.tif 000015
【図１４】
2020160139.tif 000016
【図１５】
2020160139.tif 000017
【図１６】
2020160139.tif 000018
【図１７】
2020160139.tif 000019
【図１８】
2020160139.tif 000020