(57)【要約】【課題】演奏者が音楽的な間違いを気にせずに演奏表現に気を配り、自然な聴感や変化に富んだ演奏出力を得ると共に、音色に合った演奏を可能にすること。【解決手段】この発明によるシステムでは、演奏補助のために、入力手段（鍵盤）２１からの演奏情報が、ノート変換部２３により、コード進行（２２）に基づいて演奏情報の音域により変換特性を異ならせて変換される。より具体的な入力音変換処理においては、ノート変換部は、各コードタイプに対応して同時発音数に応じて使用可能な音名特定情報が記録された音高変換テーブルにより、入力音情報の音高をコード情報のコードタイプに合う音高に変換する。この音高変換の際には、入力音高の変化方向や奏法に応じて出力音情報の音高を現在発音中の音高と重複しないように制御したり、入力（押鍵）状態に応じて基本音群以外の音群の音高への変換も行ったり、或いは、指定された音色に合うような制御を行う。【選択図】図２
2004206073.tif 000002
【特許請求の範囲】
【請求項１】
修正対象となる演奏情報を入力する入力手段と、
前記入力手段より入力される演奏情報の少なくともコード進行を指定する指定手段と、
前記指定されるコード進行に基づき、前記演奏情報をその音域により変換特性を異ならせて変換する変換手段と
を有する演奏補助装置。
【請求項２】
前記変換手段は、音域により変換アルゴリズムが異なる請求項１に記載の演奏補助装置。
【請求項３】
修正対象となる演奏情報を入力する入力手段と、
前記入力手段より入力される演奏情報の少なくともコード進行を指定する指定手段と、
前記指定されるコード進行に基づき、前記演奏情報を変換する変換手段と、
前記変換手段による変換によって、前記演奏情報に含まれる複数の音高が同一になる場合に、該複数の音高のうちのいずれかを他の音高に再変換する再変換手段と
を有する演奏補助装置。
【請求項４】
修正対象となる演奏情報を入力する入力手段と、
前記入力手段より入力される演奏情報の少なくともコード進行を指定する指定手段と、
前記指定されるコード進行に基づき、前記演奏情報を、該演奏情報に含まれる同時又はほぼ同時に入力される音数と、該同時又はほぼ同時に入力される音の最低音から最高音の幅と、該最高音の前記指定されるコード進行におけるルートからの度数とに応じて変換する変換手段と
を有する演奏補助装置。
【請求項５】
さらに、前記入力される演奏情報の音域を音高変換を行う音域と音高変換を行わない領域とのいずれかに指定する指定手段を有し、
前記変換手段は、前記音高変換を行う音域では音高変換を行い、前記音高変換を行わない音域では音高変換を行わない
請求項１〜４のいずれか１項に記載の演奏補助装置。
【請求項６】
さらに、前記変換手段により変換された演奏情報に基づき、該演奏情報に付加音を付加する付加手段とを有する請求項１〜５のいずれか１項に記載の演奏補助装置。
【請求項７】
指定されるコード進行に基づき、演奏情報を変換するコンピュータにおける演奏補助処理であって、
修正対象となる演奏情報を入力する入力手順と、
前記入力手順より入力される演奏情報の少なくともコード進行を指定する指定手順と、
前記指定されるコード進行に基づき、前記演奏情報を変換する変換手順と
を有する演奏補助処理をコンピュータに実行させるための演奏補助プログラム。
【請求項８】
前記変換手順は、音域により変換アルゴリズムが異なる請求項７に記載の演奏補助処理をコンピュータに実行させるための演奏補助プログラム。
【請求項９】
指定されるコード進行に基づき、演奏情報を変換するコンピュータにおける演奏補助処理であって、
修正対象となる演奏情報を入力する入力手順と、
前記入力手順より入力される演奏情報の少なくともコード進行を指定する指定手順と、
前記指定されるコード進行に基づき、前記演奏情報を変換する変換手順と、
前記変換手順による変換によって、前記演奏情報に含まれる複数の音高が同一になる場合に、該複数の音高のうちのいずれかを他の音高に再変換する再変換手順と
を有する演奏補助処理をコンピュータに実行させるための演奏補助プログラム。
【請求項１０】
指定されるコード進行に基づき、演奏情報を変換するコンピュータにおける演奏補助処理であって、
修正対象となる演奏情報を入力する入力手順と、
前記入力手順より入力される演奏情報の少なくともコード進行を指定する指定手順と、
前記指定されるコード進行に基づき、前記演奏情報を、該演奏情報に含まれる同時又はほぼ同時に入力される音数と、該同時又はほぼ同時に入力される音の最低音から最高音の幅と、該最高音の前記指定されるコード進行におけるルートからの度数とに応じて変換する変換手順と
を有する演奏補助処理をコンピュータに実行させるための演奏補助プログラム。
【請求項１１】
さらに、前記入力される演奏情報の音域を音高変換を行う音域と音高変換を行わない領域とのいずれかに指定する指定手順を有し、
前記変換手順は、前記音高変換を行う音域では音高変換を行い、前記音高変換を行わない音域では音高変換を行わない
請求項７〜１０のいずれか１項に記載の演奏補助処理をコンピュータに実行させるための演奏補助プログラム。
【請求項１２】
さらに、前記変換手順により変換された演奏情報に基づき、該演奏情報に付加音を付加する付加手順とを有する請求項７〜１１のいずれか１項に記載の演奏補助処理をコンピュータに実行させるための演奏補助プログラム。
【請求項１３】
楽音情報入力手段からの入力音情報を取得する入力音情報取得手段と、
コード情報供給手段からコード情報を取得するコード情報取得手段と、
各コードタイプに対応して、同時発音数に応じて使用可能な音名特定情報が記録された音高変換テーブルと、
この音高変換テーブルを用いて、上記入力音情報の音高を、上記コード情報のコードタイプに合う音高に変換する音高変換手段と、
この音高変換手段により変換される音高が現在発音中の音の音高と重複しないように制御する音高制御手段と
を具備することを特徴とする入力音変換装置。
【請求項１４】
楽音情報入力手段からの入力音情報を取得する入力音情報取得手段と、
コード情報供給手段からコード情報を取得するコード情報取得手段と、
上記入力音情報の音高を、上記コード情報に合う音高に変換する音高変換手段と、
変換された音高に基づく音情報を出力候補にすると共に、現在発音中の音情報があるときには、上記入力音情報から奏法を検出し、検出された奏法毎に異なる方法で、該発音中の音情報の音高と重複する音高の音情報を出力させないように制御する制御手段と
を具備することを特徴とする入力音変換装置。
【請求項１５】
楽音情報入力手段からの入力音情報を取得する入力音情報取得手段と、
コード情報供給手段からコード情報を取得するコード情報取得手段と、
上記入力音情報の音高を、上記コード情報に合う音高に変換する音高変換手段と、
現在発音中の音があるときに、現在変換中の入力音情報とこの直前の入力音情報との音高の高低関係に応じて、上記音高変換手段で変換される音高を該発音中の音の音高と重複しないように制御する制御手段と
を具備することを特徴とする入力音変換装置。
【請求項１６】
各コードタイプに対応して、同時発音数に応じて使用可能な音名特定情報が記録された音高変換テーブルを具備する楽音情報処理装置に対して、
楽音情報入力手段からの入力音情報を取得するステップと、
コード情報供給手段からコード情報を取得するステップと、
音高変換テーブルを用いて、上記入力音情報の音高を、上記コード情報のコードタイプに合う音高に変換する音高変換ステップと、
この音高変換ステップで変換される音高が現在発音中の音の音高と重複しないように制御するステップと
から成る手順を実行させる入力音変換プログラム。
【請求項１７】
楽音情報入力手段からの入力音情報を取得するステップと、
コード情報供給手段からコード情報を取得するステップと、
上記入力音情報の音高を、上記コード情報に合う音高に変換するステップと、
変換された音高に基づく音情報を出力候補にすると共に、現在発音中の音情報があるときには、上記入力音情報から奏法を検出し、検出された奏法毎に異なる方法で、該発音中の音情報の音高と重複する音高の音情報を出力させないように制御するステップと
から成る手順を楽音情報処理装置に実行させる入力音変換プログラム。
【請求項１８】
楽音情報入力手段からの入力音情報を取得するステップと、
コード情報供給手段からコード情報を取得するステップと、
上記入力音情報の音高を、上記コード情報に合う音高に変換する音高変換ステップと、
現在発音中の音があるときに、現在変換中の入力音情報とこの直前の入力音情報との音高の高低関係に応じて、上記音高変換ステップで変換される音高を該発音中の音の音高と重複しないように制御するステップと
から成る手順を情報処理装置に実行させる入力音変換プログラム。
【請求項１９】
楽音情報入力手段からの入力音情報の入力状態を判別する判別手段と、
コード情報供給手段からコード情報を取得するコード取得手段と、
上記入力音情報の音高を上記コード情報に合った音高に変換する音高変換手段であって、変換後の音高が、上記判別手段で判別された該入力音情報の入力状態に応じて、当該コード情報に対応する基本音群の音高或いは該基本音群の音高以外の音高になるように制御するものと
を具備することを特徴とする入力音変換装置。
【請求項２０】
楽音情報入力手段からの入力音情報の入力状態を判別する判別手段と、
コード情報供給手段からコードタイプを表わすコード情報を取得するコード取得手段と、
各コードタイプに対応して、変換可能な音名を示す音名特定情報が記録され、入力音情報の音高を基本音群の音高に変換するための第１テーブル、及び、入力音情報の音高を、基本音群以外の音高を含む音高に変換するための第２テーブルから成る音高変換テーブルと、
上記判別手段で判別された入力音情報の入力状態に応じて、当該入力音情報に対して第１及び第２テーブルの何れを使用するかを決定するテーブル決定手段と
を具備することを特徴とする入力音変換装置。
【請求項２１】
楽音情報入力手段からの入力音情報の入力状態を判別する判別ステップと、
コード情報供給手段からコード情報を取得するコード取得ステップと、
上記入力音情報の音高を上記コード情報に合った音高に変換する音高変換ステップであって、変換後の音高が、上記判別ステップで判別された該入力音情報の入力状態に応じて、当該コード情報に対応する基本音群の音高或いは該基本音群の音高以外の音高になるように制御するものと
から成る手順を楽音情報処理装置に実行させる入力音変換プログラム。
【請求項２２】
各コードタイプに対応して、変換可能な音名を示す音名特定情報が記録され、入力音情報の音高を基本音群の音高に変換するための第１テーブル、及び、入力音情報の音高を、基本音群以外の音高を含む音高に変換するための第２テーブルから成る音高変換テーブルを具備する楽音情報処理装置に対して、
楽音情報入力手段からの入力音情報の入力状態を判別する判別ステップと、
コード情報供給手段からコードタイプを表わすコード情報を取得するコード取得ステップと、
上記判別ステップで判別された入力音情報の入力状態に応じて、当該入力音情報に対して第１及び第２テーブルの何れを使用するかを決定するテーブル決定ステップと
から成る手順を実行させる入力音変換プログラム。
【請求項２３】
楽音情報入力手段から入力音情報を取得する入力音取得手段と、
コード情報供給手段からコードタイプを表わすコード情報を取得するコード取得手段と、
音色情報供給手段から音色情報を取得する音色情報取得手段と、
各コードタイプに対応して、変換可能な音名を示す音名特定情報が記録された複数の音高変換テーブルと、
上記音色情報に応じて選択された音高変換テーブルを用いて、上記入力音情報の音高を上記コード情報に合う音高に変換する音高変換制御手段と
を具備することを特徴とする入力音変換装置。
【請求項２４】
楽音情報入力手段から入力音情報を取得する入力音取得手段と、
コード情報供給手段からコード情報を取得するコード取得手段と、
音色情報供給手段から音色情報を取得する音色情報取得手段と、
各音色に対応して音高変換条件付け情報を記憶する音色条件記憶手段と、
上記音色情報で指示される音色に対応する音高変換条件付け情報に基づいて、上記入力音情報の音高を上記コード情報に合う音高に変換する音高変換手段と
を具備することを特徴とする入力音変換装置。
【請求項２５】
各コードタイプに対応して、変換可能な音名を示す音名特定情報が記録された複数の音高変換テーブルを具備する楽音情報処理装置に対して、
楽音情報入力手段から入力音情報を取得するステップと、
コード情報供給手段からコードタイプを表わすコード情報を取得するステップと、
音色情報供給手段から音色情報を取得するステップと、
上記音色情報に応じて選択された音高変換テーブルを用いて、上記入力音情報の音高を上記コード情報に合う音高に変換するステップと
から成る手順を実行させる入力音変換プログラム。
【請求項２６】
各音色に対応して音高変換条件付け情報を記憶する音色条件記憶手段を具備する楽音情報処理装置に対して、
楽音情報入力手段から入力音情報を取得するステップと、
コード情報供給手段からコード情報を取得するステップと、
音色情報供給手段から音色情報を取得するステップと、
上記音色情報で指示される音色に対応する音高変換条件付け情報に基づいて、上記入力音情報の音高を上記コード情報に合う音高に変換するステップと
から成る手順を実行させる入力音変換プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、演奏補助装置、より詳しくは、ユーザの入力する演奏情報を補正する演奏補助システムに関し、さらに、入力音情報をコード（chord ：和音）に合った音高に変換するための入力音変換システム、特に、現在発音中の音高と重複しないように発音を制御したり、基本音群以外の音高にも変換したり、或いは、コードだけでなく音色にも合うように音高を変換することができる入力音変換システムに関する。
【背景技術】
【０００２】
従来、音楽的知識の乏しい演奏者が、音楽理論を気にしないで、自由に演奏を楽しめるように、入力される演奏信号を音楽理論に沿ったものに変換する装置が知られている。（例えば、特許文献１参照。）
【０００３】
【特許文献１】特開平５−２７７５７号公報
【０００４】
従来の演奏補助装置は、入力される演奏信号を、一律にコード構成音や、指定される調のスケールトーンに変換してしまい。演奏者の感性を十分に活かすことが出来ない場合がある。
【０００５】
また、従来より、コード進行に沿った伴奏や何らかの曲データを再生させながら、ユーザが鍵盤などの演奏操作子から演奏を行うことができる装置が、例えば、特許文献２により提案されている。このような装置では、同時に再生させている伴奏などに合わない音がユーザにより演奏されてしまうことがある。
【０００６】
【特許文献２】特開平５−１８８９５６号公報
【０００７】
これに対して、ユーザの演奏音を或るルールに基づいて変換し、予め設定されているコード構成音になるようにする方法が考えられるが、この場合、変換後の音高が既に発音中の音高と一致してしまう可能性がある。また、発音中の音高と一致した音をそのまま発音すると、フランジング（２つの音の音高、音色、音の位相が一致するか、極めて近いときに波形が互いに干渉し合って起る）が生じる可能性があり、場合によっては、原音とはかけ離れた音になってしまう。さらに、同じ音高でなくても特に低い音高では、同時に発音する２音の音高が近いと響きが濁ってしまい、自然な聴感が得られないというおそれもある。
【０００８】
また、上述のように、ユーザの演奏音を、一定のルールに基づいて、予め設定されたコードに合う音高になるように変換する変換方法を採用した場合、ユーザが、意図的に、例えば、黒鍵を押したり或いは１０鍵を同時に押すなどの、いかにもコード構成音以外の音高が出力されそうな押鍵をしても、コード構成音以外の音高は出力されない可能性がある。これは、通常の演奏としては格別問題がないが、常にコード構成音という安定した演奏となって意外性がない。
【０００９】
さらに、上述の変換方法では、音色による変換の違いは無く、音色によっては、本来鳴るはずのない音高に変換されたり、同時発音数がオーバーしてしまう可能性がある。
【発明の開示】
【発明が解決しようとする課題】
【００１０】
この発明の第１の目的は、このような不都合に鑑み、演奏者が音楽的な間違いを気にせずに演奏表現に気を配ること（注力）が可能な演奏補助システムを提供することである。この発明の第２の目的は、ユーザの演奏による入力音をその時点でのコードに合うような音高に変換して発音させる際、音域や奏法に応じて、近い音高に変換しないように或いは同じ音高の音が複数同時に発音状態にならないように制御することにより、自然な聴感が得られるようにした入力音変換システムを提供することである。また、この発明の第３の目的は、ユーザの演奏による入力音をその時点でのコードに合うような音高に変換して発音させる際に、演奏状況に応じて、基本音群以外の音高をも含めた音高に変換できるように制御することにより、演奏のリアリティを付加し変化に富んだ演奏を楽しむことができる入力音変換システムを提供することにある。さらに、この発明の第４の目的は、ユーザの演奏による入力音をその時点でのコードに合うような音高に変換して発音させる際に、楽器の音色によって音高変換の内容を変えることにより、音色に合った演奏を可能にすると共に、ユーザが特に意識することなく楽器固有の発音形態に近い演奏をすることができる入力音変換システムを提供することにある。
【課題を解決するための手段】
【００１１】
この発明の第１の目的に対応する演奏補助システムでは、この発明の一観点に従って、修正対象となる演奏情報（ＳＩ）を入力する入力手段（２１）と、前記入力手段（２１）より入力される演奏情報（ＳＩ）の少なくともコード進行（Ｄｅｇｒｅｅ）を指定する指定手段（２２）と、前記指定されるコード進行（Ｄｅｇｒｅｅ）に基づき、前記演奏情報（ＳＩ）をその音域により変換特性を異ならせて変換する変換手段（２３；ＳＡ３〜ＳＡ８，ＳＢ３〜ＳＢ９）とを有する演奏補助装置（１）が提供される（請求項１参照）。なお、括弧書きは、理解の便のために、後述する実施例における参照記号又は用語を付記したものであり、以下においても同様である。
【００１２】
また、この発明の別の観点に従って、修正対象となる演奏情報（ＳＩ）を入力する入力手段（２１）と、前記入力手段（２１）より入力される演奏情報（ＳＩ）の少なくともコード進行（Ｄｅｇｒｅｅ）を指定する指定手段（２２）と、前記指定されるコード進行（Ｄｅｇｒｅｅ）に基づき、前記演奏情報（ＳＩ）を変換する変換手段（２３；ＳＡ３〜ＳＡ７）と、前記変換手段（ＳＡ３〜ＳＡ７）による変換によって、前記演奏情報（ＳＩ）に含まれる複数の音高が同一になる場合に、該複数の音高のうちのいずれかを他の音高に再変換する再変換手段（ＳＡ８）とを有する演奏補助装置（１）が提供される（請求項３参照）。
【００１３】
さらに、この発明の他の観点に従って、修正対象となる演奏情報（ＳＩ）を入力する入力手段（２１）と、前記入力手段（２１）より入力される演奏情報（ＳＩ）の少なくともコード進行（Ｄｅｇｒｅｅ）を指定する指定手段（２２）と、前記指定されるコード進行（Ｄｅｇｒｅｅ）に基づき、前記演奏情報（ＳＩ）を、該演奏情報（ＳＩ）に含まれる同時又はほぼ同時に入力される音数と、該同時又はほぼ同時に入力される音の最低音から最高音の幅（Ｒａｎｇｅ）と、該最高音の前記指定されるコード進行におけるルートからの度数（ＴＮＤ）とに応じて変換する変換手段（２３；ＳＢ３〜ＳＢ９）とを有する演奏補助装置（１）が提供される（請求項４参照）。
【００１４】
この発明の第２の目的に対応する入力音変換システム（第１の入力音変換処理）では、この発明の１つの特徴に従って、楽音情報入力手段（３５）からの入力音情報（ＮＴｉ）を取得する入力音情報取得手段と、コード情報供給手段（３２，３４）からコード情報を取得するコード情報取得手段（ＳＱ）と、各コードタイプに対応して、同時発音数に応じて使用可能な音名特定情報が記録された音高変換テーブル（ＴＢ）と、この音高変換テーブル（ＴＢ）を用いて、入力音情報（ＮＴｉ）の音高を、コード情報のコードタイプに合う音高（ＮＴｃ）に変換する音高変換手段（Ｓ４）と、この音高変換手段（Ｓ４）により変換される音高（ＮＴｃ）が現在発音中の音の音高と重複しないように制御する音高制御手段（Ｓ５，Ｓ７，Ｓ９，Ｓ１０）とを具備する入力音変換装置〔請求項１３〕、並びに、各コードタイプに対応して、同時発音数に応じて使用可能な音名特定情報が記録された音高変換テーブル（ＴＢ）を具備する楽音情報処理装置に対して、楽音情報入力手段（３５）からの入力音情報（ＮＴｉ）を取得するステップと、コード情報供給手段（３２，３４）からコード情報を取得するステップと、音高変換テーブル（ＴＢ）を用いて、入力音情報（ＮＴｉ）の音高を、コード情報のコードタイプに合う音高（ＮＴｃ）に変換する音高変換ステップ（Ｓ４）と、この音高変換ステップ（Ｓ４）で変換される音高（ＮＴｃ）が現在発音中の音の音高と重複しないように制御するステップ（Ｓ５，Ｓ７，Ｓ９，Ｓ１０）とから成る手順を実行させる入力音変換プログラム〔請求項１６〕が提供される。
【００１５】
また、この発明の別の特徴に従って、楽音情報入力手段（３５）からの入力音情報（ＮＴｉ）を取得する入力音情報取得手段と、コード情報供給手段（３２，３４）からコード情報を取得するコード情報取得手段（ＳＱ）と、入力音情報の音高（ＮＴｉ）を、コード情報に合う音高（ＮＴｃ）に変換する音高変換手段（Ｓ４）と、変換された音高に基づく音情報（ＮＴｏ）を出力候補にすると共に、現在発音中の音情報があるときには、入力音情報（ＮＴｉ）から奏法を検出し、検出された奏法毎に異なる方法で、発音中の音情報の音高と重複する音高の音情報を出力させないように制御する制御手段（Ｓ５〜Ｓ１０）とを具備する入力音変換装置〔請求項１４〕、並びに、楽音情報入力手段（３５）からの入力音情報（ＮＴｉ）を取得するステップと、コード情報供給手段（３２，３４）からコード情報を取得するステップと、入力音情報（ＮＴｉ）の音高を、コード情報のコードタイプに合う音高（ＮＴｃ）に変換するステップ（Ｓ４）と、変換された音高（ＮＴｃ）に基づく音情報（ＮＴｏ）を出力候補にすると共に、現在発音中の音情報があるときには、入力音情報（ＮＴｉ）から奏法を検出し、検出された奏法毎に異なる方法で、発音中の音情報の音高と重複する音高の音情報を出力させないように制御するステップ（Ｓ５〜Ｓ１０）とから成る手順を楽音情報処理装置に実行させる入力音変換プログラム〔請求項１７〕が提供される。
【００１６】
さらに、この発明の他の特徴に従って、楽音情報入力手段（３５）からの入力音情報（ＮＴｉ）を取得する入力音情報取得手段と、コード情報供給手段（３２，３４）からコード情報を取得するコード情報取得手段（ＳＱ）と、入力音情報の音高（ＮＴｉ）を、コード情報に合う音高（ＮＴｃ）に変換する音高変換手段（Ｓ４）と、現在発音中の音があるときに、現在変換中の入力音情報（ＮＴｉ）とこの直前の入力音情報（ＮＴｉｏ）との音高の高低関係に応じて、音高変換手段（Ｓ４）で変換される音高（ＮＴｃ）を発音中の音の音高と重複しないように制御する制御手段（Ｓ５，Ｓ９，Ｓ１０）とを具備する入力音変換装置〔請求項１５〕、並びに、楽音情報入力手段（３５）からの入力音情報（ＮＴｉ）を取得するステップと、コード情報供給手段（３２，３４）からコード情報を取得するステップと、入力音情報（ＮＴｉ）の音高を、コード情報のコードタイプに合う音高（ＮＴｃ）に変換するステップ（Ｓ４）と、現在発音中の音があるときに、現在変換中の入力音情報（ＮＴｉ）とこの直前の入力音情報（ＮＴｉｏ）との音高の高低関係に応じて、音高変換ステップ（Ｓ４）で変換される音高（ＮＴｃ）を発音中の音の音高と重複しないように制御するステップ（Ｓ５，Ｓ９，Ｓ１０）とから成る手順を楽音情報処理装置に実行させる入力音変換プログラム〔請求項１８〕が提供される。
【００１７】
この発明の第３の目的に対応する入力音変換システム（第２の入力音変換処理）では、この発明の１つの特徴に従って、楽音情報入力手段（３５）からの入力音情報（ＮＴｉ）の入力状態を判別する判別手段又はステップ（Ｓ２１）と、コード情報供給手段（３２，３４）からコード情報を取得するコード取得手段又はステップ（ＳＱ）と、入力音情報の音高（ＮＴｉ）をコード情報に合った音高（ＮＴｏ）に変換する音高変換手段又はステップ（Ｓ２２〜Ｓ２９）であって、変換後の音高（ＮＴｏ）が、判別手段又はステップ（Ｓ２１）で判別された入力音情報の入力状態（ＭＣ）に応じて（〔例１〕〜〔例３〕）、コード情報に対応する基本音群の音高或いは該基本音群の音高以外の音高になるように制御するものとを備える入力音変換装置又はプログラム手順が提供される〔請求項１９，２１〕。
【００１８】
また、この発明の別の特徴に従って、各コードタイプに対応して、変換可能な音名を示す音名特定情報が記録され、入力音情報の音高を基本音群の音高に変換するための第１テーブル（ＴＢａ，ＴＢｂ，…）、及び、入力音情報の音高を、基本音群以外の音高を含む音高に変換するための第２テーブル（ＴＢｔ１，…；ＴＢｓ）から成る音高変換テーブルを具備する入力音変換装置において、楽音情報入力手段（３５）からの入力音情報（ＮＴｉ）の入力状態を判別する判別手段又はステップ（Ｓ２１）と、コード情報供給手段（３２，３４）からコードタイプを表わすコード情報を取得するコード取得手段又はステップ（ＳＱ）と、判別手段又はステップ（Ｓ２１）で判別された入力音情報（ＮＴｉ）の入力状態（ＭＣ）に応じて（〔例１〕〜〔例３〕）、当該入力音情報に対して第１及び第２テーブルの何れを使用するかを決定するテーブル決定手段又はステップ（Ｓ２２）とを備える入力音変換装置又はプログラム手順が提供される〔請求項２０，２２〕。
【００１９】
この発明の第４の目的に対応する入力音変換システム（第３の入力音変換処理）では、この発明の１つの特徴に従って、各コードタイプに対応して、変換可能な音名を示す音名特定情報が記録された複数の音高変換テーブル（ＴＢａ，ＴＢｂ，…；ＴＢｔ１，…）を具備する入力音変換装置において、楽音情報入力手段（３５）から入力音情報（ＮＴｉ）を取得する入力音取得手段又はステップ（Ｓ２１）と、コード情報供給手段（３２，３４）からコードタイプを表わすコード情報を取得するコード取得手段又はステップ（ＳＱ）と、音色情報供給手段（３２，３４，３６）から音色情報を取得する音色情報取得手段又はステップ（ＶＳ）と、音色情報に応じて選択された音高変換テーブルを用いて、入力音情報の音高（ＮＴｉ）を上記コード情報に合う音高（ＮＴｏ）に変換する音高変換制御手段又はステップ（Ｓ２２〜Ｓ２９）とを備える入力音変換装置又はプログラム手順が提供される〔請求項２３，２５〕。
【００２０】
また、この発明の別の特徴に従っ各音色に対応して音高変換条件付け情報（ＳＭ〜ＴＴ）を記憶する音色条件記憶手段（３２，３４）を具備する入力音変換装置において、楽音情報入力手段（３５）から入力音情報（ＮＴｉ）を取得する入力音取得手段又はステップ（Ｓ２１）と、コード情報供給手段（３２，３４）からコード情報を取得するコード取得手段又はステップ（ＳＱ）と、音色情報供給手段（３２，３４，３６）から音色情報を取得する音色情報取得手段又はステップと、音色情報で指示される音色に対応する音高変換条件付け情報（ＳＭ〜ＴＴ）に基づいて、入力音情報の音高（ＮＴｉ）を上記コード情報に合う音高（ＮＴｏ）に変換する音高変換手段又はステップ（Ｓ２２〜Ｓ９）とを備える入力音変換装置又はプログラム手順が提供される〔請求項２４，２６〕。
【発明の効果】
【００２１】
この発明による演奏補助システムによると、入力される演奏情報（ＳＩ）を、コード進行に従い、個々に変換するようにしているので、他の和音構成音の入力を待つ必要がなく、処理スピードを早くすることができる。また、音域によって異なる変換を行うようにしているので、コードの響きの破綻を避け、演奏者の意図をより反映させることができる。さらに、一定時間内に入力される演奏情報を和音として処理するので、和音として音楽的に好ましい響きが得られ、入力演奏情報の最高音（トップノート）を基準として、他の和音構成音を生成するので、トップノートを最大限に活かすことができる。従って、演奏者は、音楽的な間違いを気にせずに演奏表現に気を配ること（注力）ができる。
【００２２】
この発明による入力音変換システムにおける第１の入力音変換処理によると、ユーザの実際の演奏による入力音（ＮＴｉ）に対し、音域（鍵域）や種類（黒／白鍵）から変換テーブル（ＴＢ）を決定し、コードに合う音高（ＮＴｃ）に変換することができる。また、変換された音高（ＮＴｃ）が現在発音中の音高と重複する〔現在発音中の音との音程が所定の距離以下の近さにある〕場合には、音域（鍵域）と奏法に合うように、さらには、ユーザ実演奏による音高の高低関係が崩れない（維持される）ように発音を制御する（Ｓ５〜Ｓ１０）。
【００２３】
つまり、この発明によれば、ユーザの演奏入力音（ＮＴｉ）をその時点でのコードに合うような音高（ＮＴｃ）に変換し出力音（ＮＴｏ）として発音させるが、その際、音域（鍵域）や奏法に応じて、現在発音中の音に近い音高に変換しないように或いは同じ音高の音が複数同時に発音状態にならないように、音高の重複を回避する制御を行うようにしているので、自然な聴感を得ることができる。
【００２４】
この発明による入力音変換システムにおける第２の入力音変換処理によると、ユーザの実際の演奏に従って楽音情報（音高）入力手段（３５）から入力される入力音高（ＮＴｉ）を、コード情報供給手段（３２，３４）から供給されるコードに合う音高（ＮＴｏ）に変換する際に、押鍵状態などの音高入力の状態（ＭＣ）に応じて、基本音群（例えば、コード構成音やスケール音）の音高になるように変換するか、或いは、基本音群以外（例えば、テンションや装飾音）の音高を少なくとも含むような音群内の何れかの音高に変換するかを制御する。具体的には、各コードタイプに対して変換可能な音名特定情報を示す音高変換テーブルとして、基本音群の音高に変換するタイプの第１テーブル（ＴＢａ，ＴＢｂ，…）と、基本音群以外の音高を少なくとも含む音高に変換するタイプの第２テーブル（ＴＢｔ１，…；ＴＢｓ）とを用意しておき、音高入力の状態（ＭＣ）に従ってどちらのタイプのテーブルを使用するかを決定することにより、音高入力状態に応じて基本音群以外の音高にも変換できるように制御する。従って、ユーザの望むときに基本音群以外の音高を含んだ音高を出力させて、変化に富んだ演奏を楽しむことができる。
【００２５】
この発明による入力音変換システムにおける第３の入力音変換処理によると、各コードタイプに対して変換可能な音名特定情報を示す音高変換テーブルが複数用意されており、音高変換に考慮される音色を音色情報により指示することができる。ユーザの実際の演奏に従って楽音情報（音高）入力手段（３５）から入力される入力音高（ＮＴｉ）を、コード情報供給手段（３２，３４）から供給されるコードに合う音高（ＮＴｏ）に変換する際には、音色情報により指示される音色（ＶＳ）によって、音高変換テーブルを選択的に切り替えることができる。つまり、音色（ＶＳ）によって音高変換の内容を変更することによって、より音色に合った演奏が可能になる。
【００２６】
また、別の特徴によると、例えば最大同時発音数や音域などの音高変換条件付け情報（ＳＭ〜ＴＴ）が音色毎に記憶されており、同様に音高変換に考慮される音色（ＶＳ）が音色情報により指示される。入力音高（ＮＴｉ）をコードに合う音高（ＮＴｏ）に変換する際は、指示された音色（ＶＳ）に関する音高変換条件付け情報（ＳＭ〜ＴＴ）を元にして、変換後の音高（ＮＴｏ）を当該音色（ＶＳ）に合うよう制御する。従って、演奏者が特に意識することなく、音色情報で指示される音色に応じた楽器固有の発音形態に近い演奏出力を得ることができる。
【発明を実施するための最良の形態】
【００２７】
＜演奏補助システム＞
図１は、この発明の一実施例による演奏補助装置１を含む演奏補助システムのハードウェア構成を示すブロック図である。なお、演奏補助装置１のハードウェア構成は、全ての実施例において共通である。
【００２８】
演奏補助装置１のバス２には、ＲＡＭ３、ＲＯＭ４、ＣＰＵ５、外部記憶装置７、検出回路８、表示回路１０、音源回路１２、効果回路１３、ＭＩＤＩインターフェイス１６、通信インターフェイス１７が接続される。
【００２９】
ユーザは、検出回路８に接続される複数のパネル操作子９を用いて、各種設定をすることができる。パネル操作子９は、例えば、ロータリーエンコーダ、スイッチ、マウス、文字入力用キーボード、ジョイスティック、ジョグシャトル等、ユーザの入力に応じた信号を出力できるものならどのようなものでもよい。
【００３０】
また、パネル操作子９は、マウス等の他の操作子を用いて操作するディスプレイ１１上に表示されるソフトスイッチ等でもよい。
【００３１】
表示回路１０は、ディスプレイ１１に接続され、各種情報をディスプレイ１１に表示することができる。
【００３２】
外部記憶装置７は、外部記憶装置用のインターフェイスを含み、そのインターフェイスを介してバス２に接続される。外部記憶装置７は、例えばフロッピ（登録商標）ディスクドライブ（ＦＤＤ）、ハードディスクドライブ（ＨＤＤ）、光磁気ディスク（ＭＯ）ドライブ、ＣＤ−ＲＯＭ（コンパクトディスク−リードオンリィメモリ）ドライブ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）ドライブ、半導体メモリ等である。
【００３３】
外部記憶装置７には、各種パラメータ、各種データ、及び本実施例を実現するためのプログラム（「演奏補助プログラム」と呼ばれる）及び演奏情報等を記憶することができる。
【００３４】
ＲＡＭ３は、フラグ、レジスタ又はバッファ、各種パラメータ等を記憶するＣＰＵ５のワーキングエリアを有する。ＲＯＭ４には、各種パラメータ及び制御プログラム、又は本実施例を実現するためのプログラム等を記憶することができる。ＣＰＵ５は、ＲＯＭ４又は、外部記憶装置７に記憶されている制御プログラム等に従い、演算又は制御を行う。
【００３５】
タイマ６は、ＣＰＵ５に接続されており、基本クロック信号、割り込み処理タイミング等をＣＰＵ５に供給する。
【００３６】
音源回路１２は、外部記憶装置７等に記録された演奏情報ＭＤ、演奏操作子１５又はＭＩＤＩインターフェイス１６に接続されたＭＩＤＩ機器１８等から供給されるＭＩＤＩ信号等の演奏信号に応じて楽音信号を生成し、効果回路１３を介して、サウンドシステム１４に供給する。
【００３７】
音源回路１２の方式は、波形メモリ方式、ＦＭ方式、物理モデル方式、高調波合成方式、フォルマント合成方式、ＶＣＯ＋ＶＣＦ＋ＶＣＡのアナログシンセサイザ方式、アナログシミュレーション方式等、どのような方式であってもよい。また、専用のハードウェアを用いて音源回路１２を構成してもよいし、ＤＳＰ＋マイクロプログラムを用いて音源回路１２を構成してもよいし、ＣＰＵ＋ソフトウェアのプログラムで音源回路１２を構成してもよい。また、これらの組合せでもよい。さらに、１つの回路を時分割で使用して複数の発音チャンネルを形成してもよいし、１つの発音チャンネルを１つの回路で形成してもよい。
【００３８】
効果回路１３は、音源回路１２から供給されるデジタル形式の楽音信号に各種効果を与える。サウンドシステム１４は、Ｄ／Ａ変換器及びスピーカを含み、供給されるデジタル形式の楽音信号をアナログ形式に変換し、発音する。
【００３９】
演奏操作子１５は、検出回路８に接続され、ユーザの演奏動作に従い、演奏信号を供給する。本実施例では、演奏操作子１５として、演奏用の鍵盤が用いられている。演奏操作子１５は、少なくとも、ＭＩＤＩ信号等の演奏信号を出力可能な操作子であればどのようなものでもよい。
【００４０】
ＭＩＤＩインターフェイス（ＭＩＤＩ  Ｉ／Ｆ）１６は、電子楽器、その他の楽器、音響機器、コンピュータ等に接続できるものであり、少なくともＭＩＤＩ信号を送受信できるものである。ＭＩＤＩインターフェイス１６は、専用のＭＩＤＩインターフェイスに限らず、ＲＳ−２３２Ｃ、ＵＳＢ（ユニバーサル・シリアル・バス）、ＩＥＥＥ１３９４（アイトリプルイー１３９４）等の汎用のインターフェイスを用いて構成してもよい。この場合、ＭＩＤＩメッセージ以外のデータをも同時に送受信するようにしてもよい。
【００４１】
ＭＩＤＩ機器１８は、ＭＩＤＩインターフェイス１６に接続される音響機器、楽器等である。ＭＩＤＩ機器１８の形態は鍵盤楽器に限らず、弦楽器タイプ、管楽器タイプ、打楽器タイプ等の形態でもよい。また、音源装置、自動演奏装置等を１つの電子楽器本体に内蔵したものに限らず、それぞれが別体の装置であり、ＭＩＤＩや各種ネットワーク等の通信手段を用いて各装置を接続するものであってもよい。ユーザは、このＭＩＤＩ機器１８を演奏（操作）することにより演奏信号の入力を行うこともできる。
【００４２】
また、ＭＩＤＩ機器１８は、演奏情報以外の各種データ及び各種設定を入力するための操作子としても用いることが出来る。
【００４３】
通信インターフェイス１７は、ＬＡＮ（ローカルエリアネットワーク）やインターネット、電話回線等の通信ネットワーク１９に接続可能であり、該通信ネットワーク１９を介して、サーバコンピュータ２０と接続し、ＨＤＤ等外部記憶装置７、又はＲＡＭ４等内に、サーバコンピュータ２０から制御プログラムや本実施例を実現するためのプログラム、演奏情報等をダウンロードすることができる。
【００４４】
なお、通信インターフェイス１７及び通信ネットワーク１９は、有線のものに限らず無線でもよい。また双方を備えていてもよい。
【００４５】
図２は、この発明の第１及び第２の実施例による演奏補助装置１の機能を表すブロック図である。
【００４６】
演奏補助装置１は、例えば、演奏信号入力部２１、コード進行供給部２２及びノート変換部２３で構成される。
【００４７】
演奏信号入力部２１は、例えば、図１の演奏操作子１５及び検出回路８、あるいはＭＩＤＩ機器１８等で構成され、ノート変換部２３に演奏信号を供給する。
【００４８】
コード進行供給部２２は、ＲＯＭ４又は外部記憶装置７等で構成され、複数のコード進行データを記憶している。コード進行データは、楽曲のコード進行を、一連のコードネーム又はコードを度数表記したＤｅｇｒｅｅコードにより記録したデータである。コード進行データは、特定の楽曲に対応したものでもよいし、特定の楽曲を想定していないものでもよい。また、コード進行データ以外に、ドラムやその他のパートの演奏データを含んでいてもよい。本実施例では、コードネームを「Ｋｅｙ（調）情報＋度数」で管理することにより、各コードの機能を音楽的に解釈している。よって、コード進行データには、Ｄｅｇｒｅｅコードのみが記録され、ユーザの指定するＫｅｙ情報と併せて、実際のコードネームを特定する。あるいは、Ｋｅｙ情報をコード進行データ中に含ませてもよい。なお、実際のコードネームをコード進行データに記録するようにしても良く、その場合はＫｅｙ情報は無くてもよい。
【００４９】
コード進行供給部２２は、ユーザの指定するコード進行データをノート変換部２３に供給する。
【００５０】
ノート変換部２３は、後述する第１又は第２の実施例による演奏補助処理により、コード進行供給部２２から供給されるコード進行データに基づき、演奏信号入力部２１から供給される演奏信号に含まれるノートナンバーを変更する。
【００５１】
図３は、この発明の第１の実施例による演奏補助処理を説明するためのフローチャート、概念図、及びテーブルである。
【００５２】
この第１の実施例では、各々の音（演奏信号）のノートナンバー（音高情報）を一律に図３（Ｄ）に示すようなコード発音分布テーブルＣＤＴを参照して変換する。つまり、入力される演奏信号を、和音であるか単音であるかにかかわらず、各音ごとにコード発音分布テーブルＣＤＴに記録されているコード発音分布と照らし合わせ、それぞれ変換する。
【００５３】
コード発音分布とは、各Ｄｅｇｒｅｅコードごとに０〜１２７のノートナンバーのどの音を発音させるかを定義したものである。例えば、コード発音分布の一例として、高音域では、テンションとして使用可能な音を最大限に活かし、中音域では、コードトーン（コード構成音）に変換し、中低音域では、ルート又は５度の音に変換し、低音域では、ルートに変換する。この第１の実施例では、上記のように定義されるコード発音分布に従い、全ての入力された演奏信号のノートナンバーを変換することにより、ハーモニーの機能に即したノート変換を行うことが出来る。そして、変換特性の異なる発音分布テーブルを複数用意しておき、ユーザ設定情報ＵＳ内のコード発音分布テーブル特定情報によっていずれかのテーブルを選択する。
【００５４】
図３（Ａ）は、この発明の第１の実施例による演奏補助処理を表すフローチャートである。この演奏補助処理は、ユーザの指示により起動されたあと、所定の割り込みタイミングごとに起動される割り込み処理である。
【００５５】
なお、ユーザは、この演奏補助処理の起動を指示する前に、予め、図３（Ｂ）に示すような、ユーザ設定情報ＵＳを設定する。ユーザ設定情報ＵＳは、ユーザが演奏しようとする楽曲の調を表すＫｅｙ情報、コード進行データを特定する情報（例えば、選曲情報）、後述するコード発音分布テーブルＣＤＴを特定する情報を含んで構成される。
【００５６】
ステップＳＡ１で、演奏補助処理をスタートして、ステップＳＡ２で演奏信号の入力を受け付ける。この例では、例えば、図３（Ｃ）に示すような和音を含む演奏信号ＳＩがユーザの演奏により入力されたものとする。演奏信号ＳＩは、３つのノートイベント（発音指示）からなり、それぞれのノートナンバーは、「７５（Ｄ♯）」、「７１（Ｂ）」、「６９（Ａ）」である。
【００５７】
ステップＳＡ３では、ステップＳＡ２で入力される演奏信号ＳＩのノートナンバーを、「指定されたＫｅｙ」−「Ｃ  Ｍａｊｏｒ」分移調する。すなわち、この例では、ユーザ設定情報ＵＳによって「指定されたＫｅｙ」は、「Ｆ  Ｍａｊｏｒ」であるので、「Ｆ  Ｍａｊｏｒ」−「Ｃ  Ｍａｊｏｒ」＝「７」となり、これを各ノートイベントのノートナンバーに加算することにより移調する。よって、それぞれのノートナンバーは、「７５＋７＝８２（Ａ♯）」、「７１＋７＝７８（Ｆ♯）」、「６９＋７＝７６（Ｅ）」となる。
【００５８】
ステップＳＡ４では、現在の小節のＤｅｇｒｅｅコードをユーザ設定情報ＵＳにより予め指定されているコード進行を参照して取得する。この例では、例えば、現在第２小節目だとすると、Ｄｅｇｒｅｅコードは、「Ｖ」となる。
【００５９】
ステップＳＡ５では、ユーザ設定情報ＵＳにより予め指定されているコード発音分布テーブルＣＤＴを参照して、ステップＳＡ４で取得したＤｅｇｒｅｅコードの変換式を取得する。ステップＳＡ４で取得したＤｅｇｒｅｅコードは、「Ｖ」であるので、図３（Ｄ）のコード発音分布テーブルＣＤＴの「Ｖ」の列を参照して、ステップＳＡ３で移調された演奏信号ＳＩのノートナンバー「８２（Ａ♯）」、「７８（Ｆ♯）」、「７６（Ｅ）」のそれぞれに対応する変換式（オフセット値）「１」、「１」、「−２」を取得する。
【００６０】
なお、図３（Ｄ）に示したコード発音分布テーブルＣＤＴには、各Ｄｅｇｒｅｅコードにおけるノートナンバーの変換式（それぞれのノートナンバーに対するオフセット値）が記憶されているが、変換式の代わりに変換後のノートナンバーを直接記録するようにしてもよい。
【００６１】
ステップＳＡ６では、ステップＳＡ５で取得した変換式に従い、ステップＳＡ３で移調された演奏信号ＳＩのノートナンバーを変更する。例えば、この例では、ステップＳＡ３で移調された演奏信号のノートナンバー「８２（Ａ♯）」、「７８（Ｆ♯）」、「７６（Ｅ）」に、それぞれに対応する変換式（オフセット値）「１」、「１」、「−２」を加算して、ノートナンバー「８３（Ｂ）」、「７９（Ｇ）」、「７４（Ｄ）」に変更する。
【００６２】
ステップＳＡ７では、ステップＳＡ６で変更した演奏信号ＳＩのノートナンバーを「Ｃ  Ｍａｊｏｒ」−「指定されたＫｅｙ（原調）」分移調して原調に戻す。すなわち、この例では、ユーザ設定情報ＵＳによって指定されたＫｅｙは、「Ｆ  Ｍａｊｏｒ」であるので、「Ｃ  Ｍａｊｏｒ」−「Ｆ  Ｍａｊｏｒ」＝「−７」となり、これを各ノートイベントのノートナンバーに加算することにより移調する。よって、それぞれのノートナンバーは、「８３−７＝７６（Ｅ）」、「７９−７＝７２（Ｃ）」、「７４−７＝６７（Ｇ）」となる。なお、「−７」という数値は、ステップＳＡ３で求めた数値「７」の正負を逆転して求めるようにしてもよい。
【００６３】
以上の処理により、ステップＳＡ２で入力された図３（Ｃ）に示すような和音を含む演奏信号ＳＩは、図３（Ｅ）に示すような和音（ノートナンバー「７６（Ｅ）」、「７２（Ｃ）」、「６７（Ｇ）」）を含む演奏信号ＳＯに変換される。
【００６４】
ステップＳＡ８では、演奏信号ＳＯに含まれる和音のノートナンバーの重複（複数のノートナンバーが同一のノートナンバーに変換された状態）を検出する。ノートナンバーの重複が検出された場合は、例えば、後着（又は先着）のノートをコード発音分布テーブルＣＤＴ上の先着（又は後着）のノートが変換された値のさらに下（又は上）にある最も近い「０」の行に当たるノートナンバーに変換して、演奏信号ＳＯとして出力する。例えば、現在のコードがＩＶであり、ステップＳＡ６において変換される元々のノートナンバーが、「７６（Ｅ）」、「７９（Ｇ）」であった場合、ステップＳＡ７の変換の結果、これらはともにノートナンバー「７７（Ｆ）」となる。こういった場合、後着（又は先着）のノートをさらに上にある「０」の行に当たるノートナンバー「８１（Ａ）」に変換する。ノートナンバーの重複が検出されない場合は、ステップＳＡ７で変換された演奏信号ＳＯをそのまま出力する。
【００６５】
ステップＳＡ９では、演奏信号ＳＯに基づき発音処理を行う。この発音処理は、例えば、図１の音源回路１２に演奏信号ＳＯを供給することにより行われる。なお、この発音処理の代わりに、演奏信号ＳＯを図１の外部記憶装置７又はＲＡＭ３内の一時記憶領域等に保存する処理を行ってもよい。さらに、演奏信号ＳＯを図１のＭＩＤＩインターフェイス１６又は通信インターフェイス１７を介して、外部機器に出力するようにしてもよい。また、このステップＳＡ９で、これらの全ての処理を行うようにしてもよいし、ユーザの選択により、１又は複数の処理を行うようにしてもよい。その後、ステップＳＡ１０に進み、第１の実施例による演奏補助処理を終了する。
【００６６】
以上のように、この発明の第１の実施例によれば、入力される演奏信号の全てのノートナンバーを個々に変換するため、基本的には、入力される音数と同数の音を発音することが出来る。よって、演奏者の意図した発音数を保つことが出来る。
【００６７】
また、音域によって、異なる変換を行うコード発音分布を用いることにより、発音の密度を変えることが出来、コードの響きの破綻を避けることが出来る。よって、演奏者の意図をより反映させることが出来る。
【００６８】
さらに、入力される演奏信号のノートナンバーを個々に変換するため、他の和音構成音の入力を待つ必要がなく、処理スピードを早くすることができ、リアルタイムでの変換処理に向いている。
【００６９】
図４は、この発明の第２の実施例による演奏補助処理を説明するためのフローチャート及びテーブルである。
【００７０】
この第２の実施例では、入力される演奏信号ＳＩに含まれる音数（ＮｕｍｂｅｒＯｆＮｏｔｅｓ）、該入力される演奏信号ＳＩ中の最低音のノートナンバーから最高音のノートナンバーまでの幅（Ｒａｎｇｅ）及び最高音のルート音（ユーザ指定情報ＵＳで設定されているＫＥＹ情報に基づく調におけるルート音）からの度数（ＴｏｐＮｏｔｅＤｅｇｒｅｅ）に応じて、音楽的に最も好ましい響きを得られる和音を生成する。
【００７１】
図４（Ａ）は、この発明の第２の実施例による演奏補助処理を表すフローチャートである。この演奏補助処理は、ユーザの指示により起動されたあと、所定の割り込みタイミングごとに起動される割り込み処理である。
【００７２】
図４（Ｂ）は、この発明の第２の実施例による演奏補助処理で参照する発音数テーブルＮＳＴの１例である。発音数テーブルＮＳＴは、音数（ＮｕｍｂｅｒＯｆＮｏｔｅｓ）及び幅（Ｒａｎｇｅ）に基づき、図４（Ｃ）で用いる発音数ＮＯＮを決定するためのテーブルである。
【００７３】
図４（Ｃ）は、この発明の第２の実施例による演奏補助処理で参照するコードトーン選択テーブルＣＳＴの１例である。コードトーン選択テーブルＣＳＴは、発音されるノートの数に応じて、音楽的に最も好ましい響きが得られるようにノートを規定したテーブルである。本実施例では、コードトーン選択テーブルＣＳＴを参照して、度数（ＴｏｐＮｏｔｅＤｅｇｒｅｅ）と、図４（Ｂ）の発音数テーブルＮＳＴにより得られる発音数ＮＯＮにより、ノートナンバーの変換式（最高音に対するオフセット値）を取得する。また、コードトーン選択テーブルＣＳＴは、複数種類（例えば、Ｎｏｒｍａｌ、Ｒｏｃｋ、Ｊａｚｚ等の音楽ジャンルによる分類）が用意され、それぞれの種類について、Ｄｅｇｒｅｅコードに応じて複数種類が用意されている。図４（Ｃ）に示すコードトーン選択テーブルＣＳＴは、ＮｏｒｍａｌのＤｅｇｒｅｅコード＝Ｖに対応するものである。
【００７４】
以下、図４（Ａ）〜（Ｃ）を参照して、第２の実施例の演奏補助処理を説明する。なお、この第２の実施例でも、第１の実施例と同様に、あらかじめユーザ設定情報ＵＳ（図３（Ｂ））が設定されているものとする。なお、コード発音分布テーブル特定情報に変えて、コードトーン選択テーブル特定情報を含んでいる。
【００７５】
ステップＳＢ１では、演奏補助処理をスタートして、ステップＳＢ２で演奏信号ＳＩの入力を受け付ける。この例でも、第１の実施例と同様の図３（Ｃ）に示す演奏信号ＳＩが入力されるものとする。また、一定時間（例えば、０〜４９ｍｓｅｃ）内に入力される演奏信号ＳＩに含まれる複数のノートイベントを和音として判断し、以下の処理は、該一定時間内に入力される演奏信号ＳＩに含まれるノートイベントに対して行われる。
【００７６】
ステップＳＢ３では、ステップＳＢ２で入力される演奏信号ＳＩに含まれるノートイベントの数を検出し、検出した数を音数（ＮｕｍｂｅｒＯｆＮｏｔｅｓ）とする。この例では、ＮｕｍｂｅｒＯｆＮｏｔｅｓ＝３である。
【００７７】
ステップＳＢ４では、ステップＳＢ２で入力されるノートイベントの最高音（ノートナンバーが最も高いノートイベント）と最低音（ノートナンバーが最も低いノートイベント）のノートナンバーの差分値を検出し、検出した値を幅（Ｒａｎｇｅ）とする。この例では、Ｒａｎｇｅ＝７５（最高音）−６９（最低音）＝６である。
【００７８】
ステップＳＢ５では、ステップＳＢ２で入力される演奏信号ＳＩに含まれるノートイベントの最高音のルートからの度数（ＴｏｐＮｏｔｅＤｅｇｒｅｅ）を検出する。この例では、ユーザ設定情報ＵＳによって指定されたＫｅｙは、「Ｆ  Ｍａｊｏｒ」であるので、ルート音は、「６５（Ｆ）」であると考えられる。よって、最高音「７５（Ｄ♯）」−ルート音「６５（Ｆ）」＝ＴｏｐＮｏｔｅＤｅｇｒｅｅ＝１０となる。
【００７９】
ステップＳＢ６では、検出したＮｕｍｂｅｒＯｆＮｏｔｅｓ（３）と、Ｒａｎｇｅ（６）の値に応じた発音数ＮＯＮを発音数テーブルＣＳＴを参照して取得する。この例では、ＮｕｍｂｅｒＯｆＮｏｔｅｓは「３」であり、かつＲａｎｇｅは、「６」である（１オクターブ以内（Ｒａｎｅ＜１２））ので、発音数ＮＯＮは、「１，２，３」となる。
【００８０】
ステップＳＢ７では、ステップＳＢ２で入力されるノートイベントの最高音のノートナンバーを「指定されたＫｅｙ」−「Ｃ  Ｍａｊｏｒ」分移調する。すなわち、この例では、ユーザ設定情報ＵＳによって「指定されたＫｅｙ」は、「Ｆ  Ｍａｊｏｒ」であるので、「Ｆ  Ｍａｊｏｒ」−「Ｃ  Ｍａｊｏｒ」＝「７」となり、これを該ノートイベントのノートナンバーに加算することにより移調する。よって、最高音のノートナンバーは、「７５＋７＝８２（Ａ♯）」となる。
【００８１】
ステップＳＢ８では、ユーザ設定情報ＵＳで指定されたコードトーン選択テーブルＣＳＴの現在のコード（Ｄｅｇｒｅｅコード）のＴｏｐＮｏｔｅＤｅｇｒｅｅ行目を参照して、発音数個分のノートを生成する。この例では、コードトーン選択テーブルＣＳＴ（Ｎｏｒｍａｌ）のコード（Ｖ）のテーブルのＮＯＮ１、２、３列のＴｏｐＮｏｔｅＤｅｇｒｅｅ（１０）行目を参照して、「１、−８、−３」のオフセット値（変換式）を取得する。その後、取得したそれぞれのオフセット値を最高音のノートナンバー「８２（Ａ♯）」に別々に加算して、ノートナンバー「８３（Ｂ）」、「７４（Ｄ）」、「７９（Ｇ）」のノートイベントを生成する。
【００８２】
ステップＳＢ９では、ステップＳＢ８で生成した各ノートイベントのノートナンバーを「Ｃ  Ｍａｊｏｒ」−「指定されたＫｅｙ（原調）」分移調して原調に戻す。すなわち、この例では、ユーザ設定情報ＵＳによって指定されたＫｅｙは、「Ｆ  Ｍａｊｏｒ」であるので、「Ｃ  Ｍａｊｏｒ」−「Ｆ  Ｍａｊｏｒ」＝「−７」となり、これを各ノートイベントのノートナンバーに加算することにより移調する。よって、それぞれのノートナンバーは、「８３−７＝７６（Ｅ）」、「７９−７＝７２（Ｃ）」、「７４−７＝６７（Ｇ）」となる。なお、「−７」という数値は、ステップＳＢ７で求めた数値「７」の正負を逆転して求めるようにしてもよい。これにより、出力される演奏信号は、図３（Ｅ）に示す演奏信号ＳＯと同様になる。
【００８３】
ステップＳＢ１０では、ステップＳＢ９で原調に移調した各ノートイベントを含む演奏信号ＳＯの発音処理を行う。発音処理は、第１の実施例と同様である。その後、ステップＳＢ１１に進み、演奏補助処理を終了する。
【００８４】
以上のように、この発明の第２の実施例によれば、一定時間内に入力された複数のノートイベントを和音として処理するので、和音として音楽的に好ましい響きが得られるように、変換処理を行うことが出来る。
【００８５】
また、入力されたノートイベントのうちの最高音（トップノート）を基準として、他の和音構成音を生成するので、トップノートを最大限に活かすことが出来る。なお、本実施例では、コードトーン選択テーブルＣＳＴにおいて、最高音に対するオフセット値を記録し、最高音に加算することで、コード構成音を生成したが、それに限らず最低音等他の入力された演奏信号を用いて、和音構成音を生成するようにしてもよい。ただし、高音域や、中音域での、変換では、最高音を基準に他の構成音を生成することが望ましい。
【００８６】
また、本実施例では、最終的に発音させるノートの数を、最大４音として上限を設けているが、通常の演奏で発音されるノート数であれば、その他の数に変更することも出来る。
【００８７】
図５は、この発明の第１の変形例を表す概念図及び機能ブロック図である。
【００８８】
図５（Ａ）は、第１の変形例によるノート変換の領域分割を表す概念図である。この第１の変形例では、例えば、鍵盤等の演奏操作子１５（図１）をノートナンバー０〜１２７の特定の値で分割するスプリットポイントＳＰで鍵域分割し、スプリットポイントＳＰ未満の領域（ノート変換領域）に含まれるノートナンバーのノートイベントに対しては変換処理を行い、スプリットポイントＳＰ以上の領域（無変換領域）に含まれるノートナンバーのノートイベントに対しては変換処理を行わないようにする。
【００８９】
図５（Ｂ）は、第１の変形例による演奏補助装置５１の機能ブロック図である。
【００９０】
演奏補助装置５１は、図２の演奏補助装置１と同様に、演奏信号入力部２１、コード進行供給部２２及びノート変換部２３で構成される。コード進行供給部２２及びノート変換部２３は、図２の演奏補助装置１と同様の動作をするが、演奏信号入力部２１（鍵盤等）からの、スプリットポイントＳＰ未満の演奏信号のみが、ノート変換部２３に入力され、変換される。スプリットポイントＳＰ以上のものは、ノート変換部２３に入力されずにそのまま発音される。
【００９１】
このような構成により、一般的に高音域を使用するメロディ（スプリットポイントＳＰ以上）は、自分で全て演奏したいが、一般的に低音域を使用する和音伴奏（スプリットポイントＳＰ未満）は、自信がないという演奏者が、簡単にメロディと和音伴奏の演奏を行うことが出来る。
【００９２】
スプリットポイントＳＰは、任意の位置に設定することができ、また、スプリットポイントＳＰは、複数設けるようにしてもよい。その場合には、スプリットポイントＳＰによって分割される領域のそれぞれをノート変換領域又は無変換領域のいずれかに指定する。無変換領域を、第１の実施例のコード発音分布テーブルＣＤＴ上にノート変換しない（すなわち、オフセット値が全て「０」）の領域を含むことで、実現してもよい。
【００９３】
図６は、この発明の第２の変形例を表す概念図及び機能ブロック図である。
【００９４】
図６（Ａ）は、第２の変形例によるノート変換の領域分割を表す概念図である。この第２の変形例では、例えば、鍵盤等の演奏操作子１５（図１）をノートナンバー０〜１２７の特定の値で分割するスプリットポイントＳＰで鍵域分割し、スプリットポイントＳＰ以上の領域（ノート変換領域（Ｉ））に含まれるノートナンバーのノートイベントに対しては第１の実施例の演奏補助処理による変換処理を行い、スプリットポイントＳＰ未満の領域（ノート変換領域（ＩＩ））に含まれるノートナンバーのノートイベントに対しては第２の実施例の演奏補助処理による変換処理を行うようにする。
【００９５】
図６（Ｂ）は、第２の変形例による演奏補助装置６１の機能ブロック図である。
【００９６】
演奏補助装置６１は、演奏信号入力部２１、コード進行供給部２２、ノート変換部（Ｉ）２３ａ及びノート変換部（ＩＩ）２３ｂで構成される。演奏信号入力部２１からの、スプリットポイントＳＰ以上の演奏信号は、ノート変換部（Ｉ）２３ａに入力され、スプリットポイントＳＰ未満のものは、ノート変換部（ＩＩ）２３ｂに入力される。
【００９７】
ノート変換部（Ｉ）２３ａは、例えば、前述の第１の実施例の演奏補助処理によるノート変換を行い、ノート変換部（ＩＩ）２３ｂは、前述の第２の実施例の演奏補助処理によるノート変換を行う。すなわち、高音域であるノート変換領域（Ｉ）では、単音で演奏されることが多いと考えられ、入力される演奏信号を個々に変換する第１の実施例の演奏補助処理を用いて変換を行う。一方、低音域であるノート変換領域（ＩＩ）は、和音伴奏に用いられることが多いと考えられるので、入力される演奏信号を和音として変換する第２の実施例の演奏補助処理を用いて変換を行う。
【００９８】
以上のように、鍵盤の鍵域ごとに異なる変換方式を用いることにより、それぞれの変換方式の利点を活かしたノート変換を行うことが出来る。なお、スプリットポイントＳＰは、任意の位置に設定することができ、複数のスプリットポイントＳＰを設けることも出来る。その場合には、スプリットポイントＳＰによって分割される領域のそれぞれで行われるノート変換処理を指定するようにする。また、複数のスプリットポイントＳＰを設ける場合は、第１の変形例のように、無変換領域を設けるようにしてもよい。
【００９９】
なお、それぞれのノート変換部の行う処理は、お互いに異なるものであればどのようなものでもよく、例えば、ノート変換部（Ｉ）２３ａが、前述の第２の実施例の演奏補助処理によるノート変換を行い、ノート変換部（ＩＩ）２３ｂが、前述の第１の実施例の演奏補助処理によるノート変換を行うようにしてもよい。
【０１００】
図７は、この発明の第３の変形例を表す機能ブロック図である。
【０１０１】
演奏補助装置７１は、演奏信号入力部２１、コード進行供給部２２、ノート変換部２３及び自動伴奏／付加音発生部２４で構成される。ノート変換部２３は、コード進行供給部２２から入力されるコード進行に基づいて、演奏信号入力部２１から入力される演奏信号を変換する。ノート変換部２３での変換処理は、第１の実施例及び第２の実施例による演奏補助処理のいずれでもよく、第２の変形例のように、スプリットポイントＳＰを設けて、双方を用いるようにしてもよい。また、第１の変形例のように、無変換領域を設けるようにしてもよい。
【０１０２】
自動伴奏／付加音発生部２４は、コード進行供給部２２から入力されるコード進行及びノート変換部２３から供給される変換後の演奏信号に基づいて、自動伴奏及び又は付加音を発生する。自動伴奏／付加音発生部２４及びノート変換部２３には、共通のコード進行が供給されるので、変換された演奏信号に調和する自動伴奏及び付加音（例えば、変換された演奏信号の最高音に対してコードと該最高音に調和する１乃至複数音を付加する）を発生させることが出来る。
【０１０３】
なお、演奏補助処理の修正対象として入力される演奏信号ＳＩは、例えば、ＭＩＤＩ形式の演奏信号であり、少なくとも、ノートナンバーなどの音高情報を含む複数のノートイベント（ノートオン及びノートオフ）により構成される。それぞれのノートイベントは、通常、音高情報のほかに、発音長情報、音量情報等の該ノートイベントの発音態様を制御するための情報を含んでいる。この発明の第１及び第２の実施例では、演奏信号ＳＩ中の音高情報であるノートナンバーのみを変更する。これにより、発音長情報、音量情報等のその他の情報は、演奏者が意図したままで出力されるので、演奏者の感性を活かすことが出来る。
【０１０４】
また、演奏補助処理の修正対象として入力される演奏信号ＳＩは、必ずしも、音楽理論上の誤りを含むものに限らず、特定のジャンルの音楽としては音楽的に正しいものでもよい。その場合には、他の音楽ジャンルに対応する変換テーブルを選択することにより、該特定ジャンルの音楽に基づき演奏された演奏信号を、指定された音楽ジャンルに基づく演奏に変換することが出来る。
【０１０５】
以上、この発明の実施例によれば、音楽的知識に乏しい演奏者であっても、音楽理論等を気にすることなく、音楽理論に沿った演奏を行うことが出来る。
【０１０６】
また、さまざまな音楽ジャンルや楽器に対応した複数種類のコード発音分布テーブル又はコードトーン選択テーブルを用意することにより、幅広い音楽ジャンルへの対応や各楽器ごとの特長を活かした演奏を行うことが出来る。
【０１０７】
なお、この発明の実施例では、入力された演奏信号を一旦Ｃ  Ｍａｊｏｒ調に移調してから、変換したが、それぞれの調に対応するテーブルを用意することで、移調せずに入力された演奏信号をそのまま変換するようにしてもよいし、任意の数の調に対応するテーブルを持ち、指定された調から最も近い調のテーブルに基づいて変換するようにしてもよい。
【０１０８】
なお、本実施例の演奏補助装置１は、電子楽器の形態に限らず、カラオケ装置や、ゲーム装置、携帯電話等の携帯型通信端末、自動演奏ピアノに適用してもよい。携帯型通信端末に適用した場合、端末のみで所定の機能が完結している場合に限らず、機能の一部をサーバ側に持たせ、端末とサーバとからなるシステム全体として所定の機能を実現するようにしてもよい。
【０１０９】
また、電子楽器の形態を取った場合、その形態は実施例で説明したような鍵盤楽器に限らず、弦楽器タイプ、管楽器タイプ、打楽器タイプ等の形態でもよい。また、音源装置、自動演奏装置等を１つの電子楽器本体に内蔵したものに限らず、それぞれが別体の装置であり、ＭＩＤＩや各種ネットワーク等の通信手段を用いて各装置を接続するものであってもよい。
【０１１０】
また、本実施例は、本実施例に対応するコンピュータプログラム等をインストールした市販のコンピュータ等によって、実施させるようにしてもよい。
【０１１１】
その場合には、本実施例に対応するコンピュータプログラム等を、ＣＤ−ＲＯＭやフロッピー（登録商標）ディスク等の、コンピュータが読み込むことが出来る記憶媒体に記憶させた状態で、ユーザに提供してもよい。
【０１１２】
以上実施例に沿ってこの発明を説明したが、この発明はこれらに制限されるものではない。例えば、種々の変更、改良、組合せ等が可能なことは当業者に自明であろう。
【０１１３】
＜入力音変換システム＞
この発明によるシステムは、ユーザ演奏の面からみた場合、上述のように、演奏補助システムを提供しているが、音楽データ処理の面からみた場合には、入力音変換システムということができる。以下においては、上述の演奏補助システムにデータ処理面の改良を加えた入力音変換システムについて説明する。
【０１１４】
図８は、この発明の一実施例による入力音変換システムのハードウエア構成を示すブロック図である。このシステムの例では、入力音変換のための楽音情報処理装置（入力音変換装置）として、図８に示されるような構成を有する自動演奏機能付き電子楽器が用いられる。しかしながら、図８の入力音変換システムは、図１を簡略化して示しただけのものであり、図１の演奏補助システムの構成と何ら変るところはない。以下、図１との説明の重複を許すことにして、図８の構成について簡単に説明しておく。この入力音変換装置は、中央処理装置（ＣＰＵ）３１、読出専用メモリ（ＲＯＭ）３２、ランダムアクセスメモリ（ＲＡＭ）３３、外部記憶装置３４、演奏操作部３５、パネル操作部３６、表示部３７、音源３８、通信インターフェース（通信Ｉ／Ｆ）３９などが備えられ、これらの装置３１〜３９はバス４０を介して互いに接続されている。
【０１１５】
ＣＰＵ３１は、所定のソフトウエア・プログラムに従い、図示しないシステムタイマ（ＳＴ）によるクロックを利用して、入力音変換処理を含む各種楽音情報処理を実行し、入力音変換処理の際はシーケンサモジュールやノート変換モジュールなどの機能を果たす。ＲＯＭ３２には、このために、入力音変換処理などの楽音情報処理を実行するための各種制御プログラムや、コード進行データ、ノート変換テーブルなどが記憶されている。ＲＡＭ３３は、これらの処理に際して必要な各種データやパラメータを一時記憶するためのワーク領域として用いられ、例えば、ユーザの演奏に基づく入力音や発音中の出力音に関する種々の情報を保持することができる。
【０１１６】
外部記憶装置３４は、ハードディスク（ＨＤ）や、コンパクトディスク・リード・オンリィ・メモリ（ＣＤ−ＲＯＭ）、フレキシブルディスク（ＦＤ）、光磁気（ＭＯ）ディスク、ディジタル多目的ディスク（ＤＶＤ）、半導体メモリ等の記憶媒体を含み、このシステムで利用される入力音変換プログラムや、上述したコード進行データ、ノート変換テーブルなどを保存しておくことができる。
【０１１７】
演奏操作部３５は、例えば、演奏操作子と演奏入力検出回路から成り、ユーザによる演奏操作子の演奏操作に基づく入力音信号を演奏入力検出回路で処理して入力音情報（キーノート情報）としてシステムに導入するものである。以下の具体例では、演奏操作子には鍵盤が用いられ、演奏操作部３５は“キーボード部”と呼ばれる。鍵盤の音域については、例えば、下及び上側スプリット点（lower split point, upper split point）で、低音側から高音側へ、ベース（Ｂａｓｓ）鍵域、コード（Ｃｈｏｒｄ）鍵域、メロディ（Ｍｅｌｏｄｙ）鍵域というように、複数の鍵域に分けて使用することができる。なお、演奏操作子には、鍵盤に限らず、ユーザが演奏しようとする楽器のタイプ（弦楽器／管楽器など）に応じて、他の任意のタイプのものを用いることができる。
【０１１８】
パネル操作部３６はパネル操作子及び入力検出回路から成り、パネル操作子による設定／制御操作の内容を入力検出回路で検出してシステム内に導入する。パネル操作子は、各種キーやスイッチなどの操作子を備え、このシステムの動作状態を設定したり入力音変換に必要な各種情報を入力するのに用いられる。
【０１１９】
表示部３７は、これに接続されるディスプレイ（ＣＲＴ、ＬＣＤ等の表示器）４１の表示内容や各種インジケータ（ランプ）の点灯状態をＣＰＵ３１からの指令に従って制御し、操作部３５，３６の操作に対する表示援助を行う。
【０１２０】
音源３８は、モジュール化された音源部（ＴＧ）や効果付与ＤＳＰを含み、コード進行データや、音色情報、入力音を変換して得られるノート情報などに対応する楽音信号を生成する。音源３８に接続されるサウンドシステム４２は、Ｄ／Ａ変換部やアンプ、スピーカを備え、楽音信号に基づく楽音を発生する。つまり、音源３８及びサウンドシステム４２により、この入力音変換システムで処理された出力音情報や音色情報、コード進行データに基づく楽音を発音する楽音生成部が形成される。
【０１２１】
通信Ｉ／Ｆ３９には、音楽情報に関する処理機能をもつ外部の機器（例えば、パーソナルコンピュータなど）４３が接続され、外部機器４３からは、コード進行データを含む各種音楽情報や制御プログラムなどを受信することができる。
【０１２２】
なお、この入力音変換システムは、上述した電子楽器などの楽音情報処理に特化した専用の楽音情報処理装置の形態に限らず、鍵盤などの演奏入力装置や音源を備えたパーソナルコンピュータ（ＰＣ）を用いて“パーソナルコンピュータ＋アプリケーションソフトウェア”の形態で実現することもできる。
【０１２３】
〔１〕第１の入力音変換処理
この発明の一実施例による入力音変換システムにおいては、“キーオン処理”と呼ばれる音高変換処理（第１の入力音変換処理）に従って、演奏による入力音をコード情報や奏法に合う音高に変換することができる。図９は、この発明の一実施例による入力音変換システムにおけるノート変換モジュールとそれに関連するモジュールの関係を極く概略的に表わすモジュール関連図である。
【０１２４】
ここで、図９を用いてこの発明の第１の入力音変換手法の概略を説明しておく。この入力音変換システムでは、シーケンサ部ＳＱ及びキーボード部３５で夫々コード情報及び入力音情報ＮＴｉを取得すると、ノート変換部ＮＣは、各コードタイプに対応して同時発音数に応じて使用可能な音名特定情報が記録された音高変換テーブル（ＴＢ：図１０）により、入力音情報ＮＴｉの音高をコード情報のコードタイプに合う音高に変換し、これを出力音情報ＮＴｏとして音源部ＴＧに出力する。この際、出力音情報ＮＴｏの音高は、現在発音中の音の音高と重複しないように、直前の入力音情報（ＮＴｉｏ）に対する現在の入力音情報ＮＴｉの音高の変化方向に従って制御される。また、入力音情報ＮＴｉから奏法が検出され、検出された奏法毎に異なる方法で、発音中の音情報の音高と重複する音高の音情報が音源部ＴＧに出力されないように制御される。
【０１２５】
キーボード部（演奏操作部）３５は、入力音情報として、鍵盤の鍵（キー）をオン／オフする操作に応じたキーノート情報（キーオンノート番号）ＮＴｉを順次発生し、シーケンサモジュール（シーケンサ部）ＳＱは、ＲＯＭ３２又は外部記憶装置３４から読み出されたコード進行データに基づき、曲の進行に合わせたコード情報を発生する。これら鍵盤からのキーノート情報ＮＴｉ及び曲の進行に合わせたコード情報はノート変換モジュール（ノート変換部）ＮＣに入力される。
【０１２６】
ノート変換モジュールＮＣは、現在のコード情報及び予め決められた変換ルールに基づいて、入力されたキーノート情報ＮＴｉを出力ノート情報ＮＴｏに変換するキーオン処理を行い、このキーオン処理で得られた出力ノート情報ＮＴｏは、音源モジュール（音源部）ＴＧ（音源３８）に出力される。
【０１２７】
また、キーオン処理時には、ノート変換モジュールＮＣは、システムタイマＳＴから時間情報を参照してキーノート情報ＮＴｉのキーオン時の時間（タイミング）を取得する。この時間取得は、例えば、後述するコード鍵域でのブロック／アルペジオ奏法判定のために行われ、今回のキーオン時間（タイミング）が、前回発音されたキーオン時間（タイミング）から所定時間〔例えば、８０ｍｓｅｃ（ミリ秒）〕以内に発生されたときはブロック奏法と判定し、それ以外のときはアルペジオ奏法と判定する。
【０１２８】
〔ノート変換テーブル〕
この発明の一実施例による入力音変換システムでは、キーオン処理において所望の音高変換を実現する１つの方法としてノート変換テーブルが用いられる。図１０は、ノート変換時に使用するノート変換テーブルＴＢの一例を示す。
【０１２９】
このノート変換テーブルＴＢは、各コードタイプに対応して、コードルートに従って音名を特定する音名特定情報の優先度を示すものであり、同時押鍵数によって鳴らす音と鳴らさない音が変化するように設定されている。図１０の例では、音名特定情報として“コードの根音（ルート）からの距離”を用い、最左欄の各コードタイプ（Ｍａｊｏｒ，Ｍ７，Ｍ６，…）毎に、同時発音数に応じた優先度（テーブル内の「１」〜「４」）を“根音からの距離”に対応させて、そのときの同時発音数に応じた使用可能な音名を指示することができるようにしている。
【０１３０】
“根音からの距離”は、図１０右欄上に示すように、半音単位で“０”〜“１１”に設定され、例えば、ルートが“Ｃ”のＣｍａｊコードの場合は、その下に示すように音名“Ｃ”〜“Ｂ”が対応する。テーブル内（図１０右欄下）の数字については、「１」以上であり同時発音数（同じ鍵域内）以下の値のときに、その音をノート変換に使うことができ、「０」は使用不能を表わす。
【０１３１】
つまり、テーブル内の「１」以上の数字（「１」，「２」，…）は、そのときの同時発音数を示す数値以下の範囲内でノート変換に使用可能であるという優先度を表わし、各行で最大の数字（例えば、コードタイプ“Ｍａｊｏｒ”の行では「３」）は最大同時発音数を表わす。例えば、同時発音数が“２”であれば、「１」及び「２」の付いた音をノート変換に使うことができる。また、例えば、キーノート情報ＮＴｉとしてＣｍａｊで“Ｆ♯４”が入力された場合、同時発音数が“１”のときは、直ちに、「１」の付いた音“Ｅ”（距離“４”）が検索されて対応するノート“Ｅ４”に変換されるが、同時発音数が“２”のときは、使用可能な「１」又は「２」のうち、入力音名“Ｆ♯４”（距離“６”）に近い「１」の音“Ｇ”（距離“７”）が検索されて、ノート“Ｇ４”に変換される。
【０１３２】
また、コード情報を入力しなかったりコード情報を無視する設定がなされるなど、コード情報を利用しない場合には、コードタイプ“Ｃａｎｃｅｌ”が指示される。コードタイプ欄の“Ｃａｎｃｅｌ”に対応する最下行のオール「１」は、このように“Ｃａｎｃｅｌ”が指示された場合に、キーノート情報ＮＴｉがそのまま出力ノート情報ＮＴｏとなり、実質的にノート変換しないことを表わす。
【０１３３】
また、鍵域及び鍵の種類（黒鍵／白鍵）によって異なるノート変換テーブルを持つことができる。例えば、鍵域をベース鍵域、コード鍵域及びメロディ鍵域の３鍵域に分けた場合、６つ〔３鍵域×２種類（白鍵、黒鍵）〕のテーブルを用意しておく。このようにテーブルを分けることにより、全く異なる変換ルールを適用することができる。
【０１３４】
〔発音中の音と同一又は近傍音高の発音回避〕
この発明の一実施例によるキーオン処理においては、ノート変換によって発音中の音高と同じ音高或いは近い音高に変換されて音高の重複が生じた場合、１つの重複回避策として、音域〔ベース、コード、メロディ鍵域〕又は奏法〔アルペジオ（Ａｒｐｅｇｇｉｏ）奏法、ブロック（Ｂｌｏｃｋ）奏法〕に応じて異なる方法を採用する。つまり、同じ又は近い音高に変換された場合には、例えば、
「１．鳴らさない」、
「２．次の候補の音高を探す」（ノート変換テーブルの活用）
という回避方法があるが、１，２の何れの方法を採用するかを鍵域又は奏法で分ける。例えば、ベース鍵域については「鳴らさない」。コード鍵域でのアルペジオ奏法であると「次の候補の音高を探す」が、コード鍵域でのブロック奏法では「鳴らさない」。また、メロディ鍵域であれば「次の候補の音高を探す」。
【０１３５】
なお、音高の重複を検出する際、近い音高の判断のための音高重複の検出範囲（インターバルリミット）は低い音高ほど大きくとる方が音楽的であるから、インターバルリミットを音域（ベース、コード、メロディ鍵域）に応じて分けるのが好ましい。この場合、鍵盤の種類（白鍵、黒鍵）でインターバルリミットを分けることで異なる変換結果を得ることもできる。例えば、黒鍵のときはテンションノートを期待しているとみなし、インターバルリミットを常に“０”にする。
【０１３６】
演奏の音域がコード鍵域であるとき、前回のキーオン（「前回キーオン時間」）に対する今回のキーオン時間の差でアルペジオ奏法とブロック奏法の判定を行う。例えば、「前回キーオン時間」とのキーオン時間差が一定時間以内であればブロック奏法とみなし、この時間差が一定時間以上であればアルペジオ奏法とみなしてこれを記憶する。このとき、判定要素となる「前回キーオン時間」は、コード鍵域にて実際に発音している音或いは予定の音のオンタイミングを指す。コード鍵域にて新たに発音（予定）が決まれば、前回キーオン時間を更新する。この一定時間は、演奏者が設定してもよいし、テンポに追従して変化してもよい。
【０１３７】
次の候補の音高を探す場合、次に近い音高を選んだときに、前の押鍵に対して新しい押鍵が上方になるか下方になるかを予想することが困難である。つまり、上行や下降フレーズが変換後も上行したり下降するとは限らないので違和感を感じる。そこで、この発明の一実施例においては、次の候補を探す場合に、変換後の音高より上方に探すか下方に探すかを、前回の押鍵によるキーオンノート番号（ＮＴｉｏ）との比較で決定する。つまり、今回のキーオンノート番号ＮＴｉが前回のキーオンノート番号より低い場合には下方に検索を行い、高い場合には上方に検索を行う。また、同じ場合は、前回の方向を保持してもよいし、どちらかに決めてもよい。このような方法で検索方向を定めることにより、上行フレーズ又は下降フレーズを弾いた時に変換後の音高が逆転することがなくなる。
【０１３８】
〔キーオン処理〕
図１１及び図１２は、この発明の一実施例によるキーオン処理の流れを示す。両図において、ステップ記号Ｓ１〜Ｓ１０の付いた四角又は六角ブロックは処理内容を表わし、実線矢印は処理の進行を表わす。また、丸みのある４隅を有する四角形ブロックは情報を表わし、破線矢印は情報の活用を表わす。なお、この処理フロー例では、ノート変換テーブルＴＢを複数ある中から選択している。
【０１３９】
まず、（今回）入力されたキーオンノート番号ＮＴｉから鍵域と種類（黒鍵／白鍵）を判定する（ステップＳ１）。また、鍵域を判定し（ステップＳ２）、鍵域情報を取得（更新）すると共に、鍵域ごとの同時押鍵数とインターバルリミット値を更新する。インターバルリミットは、例えば、ベース鍵域では“４”半音、コード鍵域では“１”半音、メロディ鍵域では“０”（考慮せず）の値とされる。また、コードタイプがＣａｎｃｅｌのときは常に“０”である。
【０１４０】
次いで、鍵域と種類から、ノート変換に用いるテーブルを決定し（ステップＳ３）、決定されたテーブルＴＢ、コード情報及び同時押鍵数から、変換後のノート番号ＮＴｃを導き（ステップＳ４）、更にインターバルリミット値と発音中ノート情報にてノート番号ＮＴｃの重複ノートチェックを行う（ステップＳ５）。
【０１４１】
重複チェック（Ｓ５）で両ノートが重複していないと判定されると、変換後ノート番号ＮＴｃをそのまま出力ノート番号ＮＴｏとして発音処理を行う（ステップＳ６）。発音処理後は、発音中ノート情報（図１１）を変換後ノート番号ＮＴｃで更新し、前回の押鍵音ＮＴｉｏ（図１２）をキーオンノート番号ＮＴｉで更新し、発音処理されたノート番号ＮＴｃに対応する鍵域がコード鍵域であるときは、更に、前回キーオン時間（図１２）をキーオンノートＮＴｉのキーオンタイミングで更新する。つまり、発音する場合には、発音中ノート情報が更新され、コード鍵域であれば前回キーオン時間も更新される。
【０１４２】
一方、両ノートが重複しているときは、ステップＳ７（図１２）以下の重複ノートの回避処理を行う。重複ノートの回避処理では、まず、「鍵域・奏法」判定処理を行う（Ｓ７）。この「鍵域・奏法」判定処理では、まず、鍵域情報情報を参照して鍵域判定を行い、コード鍵域であると更に（今回）キーオン時間及び前回キーオン時間の時間差から奏法（アルペジオ／ブロック）を求め、求められたコード鍵域時の奏法又は他の鍵域情報（ベース／メロディ）から、前回ノートと重複している当該ノート番号ＮＴｃを発音させないか、或いは、次の候補の音高を探すかを判断する。
【０１４３】
さて、「鍵域・奏法」判定処理（Ｓ７）において、ベース鍵域或いはブロック奏法（コード鍵域）と判定されたときは、当該ノート番号ＮＴｃを発音しない（ステップＳ８）。ここで、ブロック奏法は、複数鍵をまとめて弾いた状態を指す。なお、コードタイプがキャンセルの場合は「重複なし」とみなしてもよい。また、この判定で発音しないと決定された場合も前回の押鍵音ＮＴｉｏを更新する。つまり、発音する場合（Ｓ６）も発音しない場合（Ｓ８）も、前回押鍵音ＮＴｉｏの更新を行う。
【０１４４】
一方、メロディ鍵域或いはアルペジオ奏法（コード鍵域）と判定されたときは、「上方・下方検索」処理（ステップＳ９）に進んで、次の候補の音高を検索する。ここで、アルペジオ奏法は、例えば、８０ミリ秒以上前の発音押鍵から空けて弾いた状態を指す。次の候補を検索する場合、キーオンノート番号ＮＴｉを前回押鍵音ＮＴｉｏと音高比較し、両者音高の大小関係を維持するように、上方に検索するか下方に検索するかを決定する。
【０１４５】
次に、決定された方向に応じてキーオンノート番号ＮＴｉを“＋１”インクリメント又は“−１”デクリメントして更新し（ステップＳ１０）、更新されたキーオンノート番号ＮＴｉ’＝ＮＴｉ±１に対して、再度、ノート変換テーブルＴＢにてノート変換を行い新たな変換後ノート番号ＮＴｃを導く（図１１：Ｓ４）。
【０１４６】
そして、新たな変換後ノート番号ＮＴｃについて重複チェックを行い（図１１：Ｓ５）、重複しないと判断されるノート番号が現れるまで、上方・下方検索、キーオンノート番号更新、ノート番号変換及び重複チェック（Ｓ９→Ｓ１０→Ｓ４→Ｓ５）を繰返し、重複がなくなると発音処理（図１１：Ｓ６）に進む。
【０１４７】
上述したキーオン処理を次の（１），（２）の例に従って具体的に説明する。
（１）「コード“Ｃｍａｊ”」でメロディ鍵域の演奏をした場合
１．まず、初めに、ユーザがメロディ鍵域内の音“Ａ４”を演奏し、このとき、他に同時発音がないものとする。
１ａ．ノート変換テーブルの“Ｍａｊｏｒ”行を参照すると、演奏音“Ａ４”（ＮＴｉ）は、１個目の発音になるので、優先度「１」が付けられている音名“Ｅ”（ミ）に従って音高“Ｅ４”（ＮＴｃ）に変換される。音高“Ｅ４”は、直ちに出力ノート情報ＮＴｏとして発音されて発音中ノート情報となり、演奏音“Ａ４”は前回の押鍵音ＮＴｉｏとなる〔Ｓ４→Ｓ５→Ｓ６〕。
【０１４８】
２．“Ｅ４”の発音中にユーザがメロディ鍵域内の第２音“Ｆ４”を演奏する。
２ａ．２音の発音になるので、テーブルの“Ｍａｊｏｒ”行において、演奏音“Ｆ４”（ＮＴｉ）の“Ｆ”（ファ）に対して、優先度「１」又は「２」の音名“Ｅ”（ミ）又は“Ｇ”（ソ）が選択可能であるが、音程の近い方“Ｅ”（ミ）が採用されて、音高“Ｅ４”が候補（変換後ノート番号ＮＴｃ）になる〔Ｓ４〕。
２ｂ．既に音高“Ｅ４”は発音中であるため、重複チェックで「重複あり」と判断される〔Ｓ５〕。
２ｃ．メロディ鍵域であるため「上方・下方検索」が行われ、前回押鍵音ＮＴｉｏは“Ａ４”であるから（音高Ｆ４＜Ａ４）、キーオンノート番号ＮＴｉを“−１”した更新後キーオンノート番号ＮＴｉ’＝“Ｅ４”にて、ノート変換テーブルＴＢを参照する〔Ｓ７→Ｓ９→Ｓ１０→Ｓ４〕。
２ｄ．ノート変換により“Ｅ”（ミ）から音高“Ｅ４”が候補になり、重複のため、更に、キーオンノート番号ＮＴｉを“−１”して、２ａ〜２ｃと同様の処理を繰り返す〔Ｓ５→Ｓ７→Ｓ９→Ｓ１０→Ｓ４→Ｓ５→…〕。
２ｅ．そして、更新後キーオンノート番号ＮＴｉ’＝“Ｂ３”になったとき、テーブルＴＢで音程の近い方に“Ｇ”（ソ）が得られるので、音高“Ｇ３”が候補になり出力ノート情報ＮＴｏとなって発音される〔Ｓ４→Ｓ５→Ｓ６〕。
【０１４９】
３．第１音“Ａ４”がキーオフされ、第２音“Ｆ４”はキーオンのまま（出音は“Ｇ３”）の状態で、ユーザが第３音“Ｂ４”を演奏する。
３ａ．２音発音中なのでテーブルＴＢ中の選択可能な音名“Ｅ”（ミ）又は“Ｇ”（ソ）のうち、音程の近い方“Ｇ”（ソ）が採用されて、音高“Ｇ４”が候補（変換後ノート番号ＮＴｃ）となる〔Ｓ４〕。
３ｂ．その時点で発音中の音高は“Ｇ３”であるため、音高“Ｇ４”は「重複していない」と判断され出力ノートＮＴｏとなって発音される〔Ｓ５→Ｓ６〕。
【０１５０】
（２）「コード“ＧＭ７”」でコード鍵域の演奏をした場合
１．ユーザがコード鍵域内の音“Ｆ２”（ＮＴｉ）を演奏し、このとき、他に同時発音はなく、また、前回キーオン時間も記録されていない。
１ａ．ノート変換テーブルＴＢの“Ｍ７”行における１音優先のテーブル値「１」の距離“１１”〔Ｃｍａｊの音名“Ｂ”（シ）に相当〕が選択され、距離“０”＝ルート“Ｇ”で換算され、音高“Ｆ♯２”が、変換後ノートＮＴｃ→出力ノートＮＴｏとなって発音され発音中ノート情報となる〔Ｓ４→Ｓ５→Ｓ６〕。
１ｂ．音高“Ｆ♯２”の発音により、前回キーオン時間には演奏音“Ｆ２”のキーオン時間が記録され、前回の押鍵音ＮＴｉｏも“Ｆ２”になる。
【０１５１】
２．音“Ｆ２”のキーオンとほぼ同時に（例えば、８０ミリ秒内に）、ユーザがコード鍵域内の音“Ｅ２”を演奏する。
２ａ．ノート変換テーブルＴＢの“Ｍ７”行より、距離“１１”又は“４”の音名〔Ｃｍａｊの音名“Ｂ”（シ）又は“Ｅ”（ミ）に相当〕が使用可能であるが、演奏音“Ｅ２”（ＮＴｉ）の“Ｅ”は、ＧＭ７ではルート“Ｇ”（距離“０”）に対して長６度（距離“９”）の音になるため、“Ｅ”に近い距離“１１”が選択され、距離“０”＝ルート“Ｇ”で換算されて、音高“Ｆ♯２”が候補（変換後ノートＮＴｃ）となる〔Ｓ４〕。
２ｂ．音高“Ｆ♯２”は現在発音中なので「重複あり」となり、「鍵域・奏法判定」で「ブロック奏法（コード鍵域）」と判定されて、発音されないが、前回の押鍵音ＮＴｉｏは演奏音“Ｅ２”に更新される（前回のキーオン時間は更新されない）〔Ｓ５→Ｓ７→Ｓ８〕。
【０１５２】
３．音“Ｆ２”がキーオンされたまま、少し時間を空けて（例えば、１００ｍｓｅｃ後に）、ユーザがコード鍵域内の音“Ｃ２”を演奏する。
３ａ．演奏音“Ｃ２”（ＮＴｉ）の“Ｃ”は、ルート“Ｇ”に対して完全４度（距離“５”）の音になるため、テーブルＴＢの“Ｍ７”行で使用可能な距離“１１”又は“４”のうち、距離“４”が近くなり、これを距離“０”＝ルート“Ｇ”で換算されて、候補音高（ＮＴｃ）は“Ｂ１”となる〔Ｓ４〕。
３ｂ．音高“Ｂ１”は前の発音と重複していないので発音されて発音中ノート情報に追加されると共に、前回キーオン時間は演奏音“Ｃ２”の押鍵時間に、前回の押鍵音ＮＴｉｏも演奏音“Ｃ２”に更新される〔Ｓ５→Ｓ６〕。
【０１５３】
４．両音“Ｆ２”，“Ｃ２”共にキーオンのまま、更に少し時間を空けて（例えば、更に１００ミリ秒後）、ユーザがコード鍵域内の音“Ｇ２”を演奏する。
４ａ．テーブルＴＢの“Ｍ７”行より、距離“１１”，“４”又は“７”の音名〔Ｃｍａｊの音名“Ｂ”（シ），“Ｅ”（ミ）又は“Ｇ”（ソ）に相当〕が使用可能であるが、演奏音“Ｇ２”（ＮＴｉ）の“Ｇ”は、ＧＭ７ではルート（距離“０”）なので、“Ｇ”に近い距離“１１”の音が選択され、距離“０”＝ルート“Ｇ”で換算されて、音高“Ｆ♯２”が候補（ＮＴｃ）となる〔Ｓ４〕。
４ｂ．音高“Ｆ♯２”は、既に第１音で発音中であるため重複しており、次の「鍵域・奏法判定」では「アルペジオ奏法（コード鍵域）」と判定され、「上方・下方検索」を行う〔Ｓ５→Ｓ７→Ｓ９〕。
４ｃ．今回演奏音“Ｇ２”は、前回押鍵音ＮＴｉｏの“Ｃ２”よりも高い押鍵なので、“Ｇ２”から半音ずつ高い（“＋１”）更新後ノートナンバーＮＴｉ’を想定しテーブルＴＢのＭ７より候補音高（ＮＴｃ）を求めてチェックすることを、「重複なし」になるまで繰り返す〔Ｓ９→Ｓ１０→Ｓ４→Ｓ５（繰返し）〕。
４ｄ．更新後ノートナンバーＮＴｉ’に“Ａ２”を想定したときに距離“４”の音が近くなるので、これをルート“Ｇ”に換算して“Ｂ２”が候補音高（ＮＴｃ）になると、「重複なし」と判定されて“Ｂ２”が出力ノートＮＴｏとなって発音される〔Ｓ４→Ｓ５→Ｓ６〕。
【０１５４】
〔第１の入力音変換処理における種々の実施態様〕
以上、図面を参照しつつ、この発明の入力音変換システムにおける第１の入力音変換処理の好適な実施の形態について説明したが、この発明の精神を逸脱しない範囲で種々の変更が可能であって、この発明は種々の態様で実施することができる。例えば、ノート変換テーブルは、複数で組み合わせ変更可能であってもよいし、編集可能であってもよく、種類を増やしてもよい。実施例では、テーブル参照の際に同時発音数を考慮して候補の音高を探すようにしているが、さらに、同時発音数毎のテーブルを持つようにしてもよい。
【０１５５】
同時発音してはいけない距離（音高重複の検出範囲）については、ユーザにより設定が可能でもよいし、デフォルトで予め設定（固定）しておいてもよく、また、全音域共通にしてもよい。演奏音が、同じ音域でも、黒鍵か白鍵かで距離を変えてもよい。
【０１５６】
同時発音してはいけない距離について、さらに、ローインターバルリミット（low interval limit：二つの音を密集した状態で低音部に移動した場合、倍音成分が干渉しあって音の濁りはじめるポイント）に基づいて決定してもよい。例えば、対象とする２音の間の音程が長２度の場合は“Ｆ２”と“Ｅ♭２”から、短３度の場合には“Ｅ♭２”と“Ｃ２”から、また、長７度の場合には“Ｅ２”と“Ｆ１”から低くなると、ローインターバルリミットに該当するものとする。
【０１５７】
発音中の音高と重なる場合に重なり回避のために採られる奏法毎に異なる方法については、例えば、鳴らさない、オクターブずらす、隣のコード音に行く、或いは、テーブルを活用するなどという方法もある。つまり、実施例では、奏法はコード鍵域のみで、アルベジオ奏法時は「テーブルを活用する」方法を、ブロック奏法時は「鳴らさない」方法を割り当てているが、他の鍵域（メロディ鍵域、ベース鍵域）においても奏法を判別し、それぞれ適切な拳法を割り当てることができる。例えば、メロディ鍵域について、アルベジオ奏法時には「テーブルを活用する」割り当て、一方のブロック奏法時には「オクターブずらす」を割り当てる。また、ベース鍵域について、アルベジオ奏法時には「テーブルを活用する」を割り当て、ブロック奏法時には「隣のコード音に行く」を割り当てる、等々である。なお、奏法とこのような候補音を探す方法との組み合わせは上例に限らない。また、奏法の種類についても上例に限らない（例えば、直前の入力音がまだＯＮ状態であるが、入力のタイミングは直前の入力タイミングからある程度離れていたときには、レガート奏法とする、等々。）。なお、コードタイプが“Ｃａｎｃｅｌ”の場合には、重複などのチェックを行わずそのまま発音する。
【０１５８】
演奏鍵盤の鍵域については、実施例の構成に限らない。例えば、メロディ鍵域とコード鍵域の２つのみなどでもよい。
【０１５９】
奏法を判断する基準になる押鍵の時間差は、ユーザにより設定可能としてもよいし、デフォルトで予め設定（固定）しておいてもよい。また、テンポに応じて、例えば、１６分音符相当などというように、割り出した時間でもよい。
【０１６０】
１つの曲の演奏に適用されるコード情報の個数は、１つに限定されず、任意の数を採用することができる。また、コード情報は、実施例のように予め記憶されているものでもよいし、リアルタイムに入力されるものでもよい。
【０１６１】
コード情報については、そのコードの機能を判別し、機能に応じて音高変換方法（テーブルなど）を変えてもよい。コードの機能に沿った音高に変換することが可能になる。また、変換後の重複回避などの制御においても、コードの機能を考慮してもよい。コードの機能を判別するためには、調情報或いはコード情報毎の度数情報が必要になる。ここで、調情報は、例えば、ユーザが装置上の操作子で設定したり、元になるコード情報の入ったデータに含まれているものを活用する等により取得する。度数情報は、何らかの方法で与えられた調情報を元に算出したり、供給されるコード情報に付加しておく等により取得する。
【０１６２】
例を挙げると、次のとおりである：
〔ａ１〕Ｃｍａｊ調でＡｍコードの場合、ＡｍはＶＩ度のコードでトニック（tonic ：主和音）の機能なので、“Ｃ”に変換する。（例えば、トニックの機能では調の主音に変換する。）
〔ｂ１〕Ｃｍａｊ調でＧ７コードの場合、Ｇ７はＶ度のコードでドミナント（dominant：属和音）の機能なので、“Ｇ”か“Ｂ”に変換する。（例えば、ドミナントの機能では、コードのルート音かＩＩＩ度の音に変換する。）
〔ｃ１〕Ｃｍａｊ調でＤｍコードの場合、ＤｍはＩＩ度のコードでサブドミナント（subdominant ：下属和音）の機能なので、“Ｄ”に変換する。（例えば、サブドミナントの機能では、コードのルート音に変換する。）
【０１６３】
上述したものの変換例で、調が変わったときは、
〔ａ２〕Ａｍｉｎ調でＡｍコードの場合、ＡｍはＩ度のコードでトニックの機能なので、“Ａ”に変換する。
〔ｂ２〕Ｇｍａｊ調でＧ７コードの場合、Ｇ７はＩ度のコードでトニックの機能なので、Ｇに変換する。
〔ｃ２〕Ｆｍａｊ調でＤｍコードの場合、ＤｍはＶＩ度のコードでトニックの機能なので、Ｆに変換する。
【０１６４】
上記の変換例で、ＩＩＩ度のコードをトニックの機能として扱うときには、
〔ａ３〕Ｃｍａｊ調でＥｍａｊコードの場合、ＥｍａｊはＩＩＩ度のコードでトニックの機能なので、“Ｃ”に変換する。
〔ｂ３〕Ａｍａｊ調でＥｍａｊコードの場合、ＥｍａｊはＶ度のコードでドミナントの機能なので、“Ｅ”か“Ｇ”に変換する。
〔ｃ３〕Ｂｍａｊ調でＥｍａｊコードの場合、ＥｍａｊはＩＶ度のコードでサブドミナントの機能なので“Ｅ”に変換する。
【０１６５】
重複回避の制御にコードの機能を使うときは、例えば、Ｇｍａｊ調でＣｍａｊコードで既に“Ｇ３”の音が発音されている上に、変換音高も“Ｇ３”である場合、ＣｍａｊコードはＩＶ度のコードでサブドミナントの機能なので、ルート音“Ｃ”を割り出し、変換音高の“Ｇ３”の代わりに“Ｃ３”を発音する。
【０１６６】
〔２〕第２及び第３の入力音変換処理
この発明の一実施例による入力音変換システムにおいては、“キーオン処理（２）”と呼ばれる音高変換処理（第２及び第３の入力音変換処理）に従って、演奏による入力音をコード情報や音色などに合う音高に変換することができる。図１３は、この発明の一実施例による入力音変換システムにおけるノート変換モジュールとそれに関連するモジュールの関係を極く概略的に表わすモジュール関連図である。
【０１６７】
この入力音変換システムにおける第２の入力音変換処理では、端的にいうと、図１３に示すように、ユーザによる実際の演奏に従って鍵盤３５から入力される入力音高ＮＴｉを、ノート変換部ＮＣにより、シーケンサＳＱからのコード情報に合った出力音高ＮＴｏに変換する際に、ユーザによる鍵盤３５の押鍵状態（音高入力状態）ＭＣに応じて、基本音群の音高への変換或いは基本音群以外の音群の音高への変換が制御される。一具体例では、各コードタイプに対して変換可能な音名特定情報を示す音高変換テーブルとして、基本音群の音高に変換するタイプの第１テーブル（ＴＢａ，ＴＢｂ，…）と、基本音群以外の音高に変換したり或いは基本音群の音高乃至基本音群以外の音高に変換するタイプの第２テーブル（ＴＢｔ１，…；ＴＢｓ）とを用意しておき、音高入力状態に応じてどちらのタイプのテーブルを使用するかを決定して、音高入力状態により基本音群以外の音高にも変換できるように制御する。
【０１６８】
また、この入力音変換システムにおける第３の入力音変換処理では、音色毎に音高変換条件付け情報が記憶され、各コードタイプに対して変換可能な音名特定情報を示す音高変換テーブルが複数用意されている。このシステムの音高変換では、端的にいうと、ノート変換部ＮＣは、音高変換テーブルを用いてユーザの鍵盤３５の演奏による入力音高ＮＴｉをシーケンサＳＱからのコード情報に合う音高ＮＴｏに変換し、この音高変換には音色情報により指示される音色ＶＳを考慮する。例えば、指示された音色ＶＳに対応して音高変換テーブル（ＮＴ，ＴＴ）を選択的に切り替えて音高変換を行い、また、当該音色ＶＳに関する音高変換条件付け情報（ＳＭ〜ＲＣ）を元にして、当該テーブルで変換される音高ＮＴｏを当該音色に合うように制御する。
【０１６９】
以下、詳しく説明する。鍵盤部（演奏操作部）３５は、入力音情報（入力音高情報）として、曲の進行に従い鍵盤上の鍵（キー）を順次オン／オフする操作に応じた入力キーオン／オフノート情報（キーオンノート番号）ＮＴｉを発生する。また、シーケンサ部（シーケンサモジュール）ＳＱは、ＲＯＭ３２又は外部記憶装置３４から読み出されるコード進行データに基づき、曲の進行に合わせたコード情報を発生する。これら鍵盤からのキーノート番号ＮＴｉ及び曲の進行に合わせたコード情報はノート変換部（ノート変換モジュール）ＮＣに入力される。
【０１７０】
ノート変換モジュールＮＣは、コードタイプに対応して使用可能な音名特定情報が記録された音高変換テーブル（ノート変換テーブル：図１５〜図１６）を備えており、シーケンサモジュールＳＱ及び演奏操作部３５から夫々コード情報及びキーオンノート番号ＮＴｉを取得すると、指示された音色ＶＳに応じて選択される所定の音高変換テーブルを利用し、コード情報及び予め決められた変換ルールに基づき、入力されたキーオンノート番号ＮＴｉを出力ノート番号ＮＴｏに変換し、これを出力音情報ＮＴｏの音高として生成する「キーオン処理（２）」を行う。
【０１７１】
このキーオン処理（２）では、出力音情報ＮＴｏとして、入力音情報ＮＴｉの音高が音色ＶＳやコードタイプに合う音高に変換され、その際、押鍵状態ＭＣに応じてコード構成音などの基本音以外の音高にも変換することができるにように制御される。そして、キーオン処理（２）で生成された出力音情報ＮＴｏは、音源モジュール（音源部）３８に出力され、サウンドシステム４２を介して発音される。
【０１７２】
〔音色別変換情報〕
この発明の一実施例による入力音変換システムでは、キーオン処理（２）において指示された音色別に音高変換条件付け情報（以下、単に「変換情報」という。）を用いて、所望の音高変換が行われる。図１４は、音色別変換情報の一例を示す。
【０１７３】
音色別変換情報は、音色毎に音高変換の条件付けを行うための情報であり、この音色ＶＳは、ユーザがパネル操作部３５のボイス選択操作で設定したり、ＲＯＭ３２や外部記憶装置３４などの記憶手段に記憶された音楽データ（プログラムチェンジ）から判別抽出することで取得される音色情報により指示することができる。この音色別変換情報には、例えば、図１４に示すように、同時に発音させることができる楽音の最大数を表わす「可能最大同時発音数ＳＭ」、出力音情報ＮＴｏの音高範囲の上限及び下限値を表わす「上限ノート番号ＮＨ」及び「下限ノート番号ＮＬ」、当該音色に特有の奏法に依存する「奏法条件ＲＣ」、通常のノート変換テーブルＴＢａ，ＴＢｂ，…及びテンション用のノート変換テーブルＴＢｔ１，ＴＢｔ２，…を指定するための「通常テーブル（情報）ＮＴ」及び「テンションテーブル（情報）ＴＴ」などの情報があり、ギター、リコーダー（ソプラノ）、バイオリン、ピアノ、…等々、適用される音色の種別に対応して設定される。
【０１７４】
可能最大同時発音数ＳＭは、演奏しようとする音色の種別に応じて、演奏操作部（鍵盤部）３５の同時押鍵数に対応して楽音生成部３８−４２で同時に発音されるべき楽音の数（同時発音数）をこの値以内に制限するために用いられ、上限及び下限ノート番号ＮＨ，ＮＬは、当該音色種別に応じて、発音される楽音の音高を、両番号で表わされる音高範囲ＮＨ〜ＮＬ内の音域に制限するのに用いられる。
【０１７５】
奏法条件ＲＣは、当該音色に応じた奏法上の条件を表わす情報である。例えば、弦楽器の音色の場合、同時発音される楽音の全てが各弦音色につき１音ずつに割り当てられるか、各指の配置に無理がないか、等々の条件があり、ピアノ音色の場合にも、同時発音や発音移行時の各指の配置に無理がないかなどの条件がある。図示のギター音色の奏法条件ＲＣの例では、実際のギターを想定して「ギター６弦分割」とし、同時発音される全音〔最大６音（ＳＭ＝６）〕の夫々を６弦の何れかの弦に重複しないように割り当てる設定がなされる。
【０１７６】
この発明の一実施例による入力音変換システムでは、キーオン処理（２）において所望の音高変換を実現するのにノート変換テーブルが用いられ、図１４の例では、通常ノート変換テーブル（通常変換テーブル）及びテンション用ノート変換テーブル（テンション変換テーブル）という２種のノート変換テーブルを用いて、演奏操作（押鍵）状態に対応する基本楽音及びテンション付加用楽音の音高を得るようにしている。このために、複数の通常変換テーブルＴＢａ，ＴＢｂ，…及びテンション変換テーブルＴＢｔ１，ＴＢｔ２，…が用意され、演奏出力に指定された音色に応じて、これらのテーブルの中から、それぞれ、特定の通常及びテンションノート変換テーブルが選択的に設定される。通常及びテンションテーブル情報ＮＴ，ＴＴは、音色の種別に応じて設定されるべき通常及びテンション変換テーブルを指定する情報であり、例えば、テーブル番号でテーブルを指示する。
【０１７７】
〔ノート変換テーブル〕
図１５及び図１６は、ノート変換テーブルのいくつかの例を示す。図１４の第１欄に示すギター音色の例では、通常テーブル情報ＮＴにより、基本楽音の音高変換のために、図１５に示される通常変換テーブルＴＢａが指定され、テンション付加用楽音の音高変換のためには、テンションテーブル情報ＴＴで図１６（２）のテンション変換テーブルＴＢｔ１が指定される。また、図１４第２欄のリコーダー（ソプラノ）の音色では、通常テーブル情報ＮＴにて図１６（１）の通常変換テーブルＴＢｂを使用すべき旨が指示され、テンション変換テーブルには図１６（２）のテンション変換テーブルＴＢｔ１を用いるように指示される。
【０１７８】
ノート変換テーブルは、演奏操作（押鍵）に基づく入力音情報の音高ＮＴｉを所望の音高ＮＴｃに変換する際に、利用可能な音名と利用不能の音名を指示する情報をコードタイプ毎にコードルートに従って配列したものである。図１５及び図１６の例では、これらの情報は、コードタイプ毎に“コードルートからの距離”に従って所定数値のパターンで配列され、利用不能の音名を指定する情報は数値「０」で表わされる。これに対して、利用可能な音名を指定する情報は、特に「音名特定情報」と呼ばれ、同時押鍵数に応じた「１」以上の数値で表わされる。
【０１７９】
図１５のノート変換テーブル例で説明すれば、“コードルートからの距離”は、右欄上部に示すように、半音単位で“０”〜“１１”に設定され、例えば、ルート＝“Ｃ”のＣｍａｊコードの場合は、その下に示すように、音名“Ｃ”〜“Ｂ”が対応する（図１６では例示を省略）。右欄下部に「１」以上の数値で表わされる音名特定情報は、最左欄の各コードタイプ（Ｍａｊｏｒ，Ｍ７，Ｍ６，…）毎に、ノート変換に使用可能であることを表わす。ノート変換に当っては、所定のコードタイプ行にて、入力音高（キーオンノート番号）ＮＴｉの音名に最も近い「１」以上の音名特定情報を探索し、探索された音名特定情報によって指示される音名から所望の音高（変換後ノート番号）ＮＴｃを求めることができる。
【０１８０】
なお、コード情報を入力しなかったりコード情報を無視する設定がなされるなど、コード情報を利用しない場合には、各図のコードタイプ欄における最下行のコードタイプ“Ｃａｎｃｅｌ”が指示され、“Ｃａｎｃｅｌ”行に示されるオール「１」のパターンが適用される。“Ｃａｎｃｅｌ”が指示された場合は、キーオンノート番号ＮＴｉがそのまま変換後ノート番号ＮＴｃ（＝出力ノート番号ＮＴｏ）となり、実質的にノート変換がなされない。
【０１８１】
ノート変換テーブルは、上述の原理に従う種々のパターンを多数設けておくことにより、入力音に対して全く異なる音高変換ルールを適用することができる。例えば、通常の演奏操作（押鍵）に基づく入力音情報の音高をコード構成音の音高に変換するのにノート変換テーブルを用いることができる。このようなテーブルは「通常変換テーブル」と呼ばれ図１５及び図１６（１）に例示される。また、特定の演奏操作（押鍵）に基づく入力音情報の音高をコードのテンションノート（単にテンションともいう）に変換するのに、図１６（２）に例示されるような「テンション変換テーブル」と呼ばれるノート変換テーブルを用いることもできる。
【０１８２】
さて、図１５に示す通常変換テーブルＴＢａは、同時押鍵数に応じた優先度があるパターンをもつ通常変換テーブルの一例であり、「０」以外で同時発音数以下の数字が付いている音名特定情報を使用することができる。つまり、音名特定情報の数字（「１」，「２」，…）は、同時発音数（同時に発音させるべき数＝同時押鍵数）に対応しており、そのときの同時発音数以下の数値範囲内でノート変換に使用可能であるという優先度を表わす。また、各コードタイプの行では、最大の数字（例えば“Ｍａｊｏｒ”の行で「３」）は最大の同時発音数を表わし、同時押鍵数に応じて鳴らす音と鳴らさない音が変化するように設定されている。
【０１８３】
例えば、同時発音数が“２”であれば、「１」及び「２」の付いた音をノート変換に使うことができる。また、例えば、キーオンノート番号ＮＴｉとしてＣｍａｊで“Ｆ♯４”が入力された場合、同時発音数が“１”のときは、直ちに、「１」の付いた音“Ｅ”（距離“４”）が検索されて対応するノート“Ｅ４”に変換されるが、同時発音数が“２”のときは、使用可能な「１」又は「２」のうち、入力音名“Ｆ♯４”（距離“６”）に近い「１」の音“Ｇ”（距離“７”）が検索されて、ノート“Ｇ４”に変換される。
【０１８４】
図１６（１）の通常変換テーブルＴＢｂは、通常変換テーブルの他の例であり、同時押鍵数による優先度がないパターンになっており、数字「１」が付いている音名特定情報を使用することができる。このようなパターンの通常変換テーブルは、同時に１音しか鳴らすことができないリコーダのような管楽器タイプの音色のノート変換に適している。
【０１８５】
図１６（２）のテンション変換テーブルＴＢｔ１は、テンション変換テーブルの一例である。テンション変換テーブルは、特定の演奏操作状態での入力音情報から、数字「１」の音名特定情報の指示に基きコードのテンションを求めるのに用いられ、実際の使用に当っては通常変換テーブルと併用される。この場合、例えば、テーブル情報で指定された両テーブルを次の何れかの方法で切り換える：
〔例１〕白鍵操作による入力音情報に対して通常変換テーブルを適用し、黒鍵操作の入力音情報についてはテンション変換テーブルを適用する。
〔例２〕或る押鍵数までは通常変換テーブルを適用し、当該押鍵数を超えるとテンション変換テーブルを適用する。
〔例３〕押鍵タイミングが、直前の押鍵タイミングから所定時間〔例えば、１００ミリ秒（ｍｓｅｃ）〕以上離れていれば、通常変換テーブルを適用し、それより近ければテンション変換テーブルを適用する。
【０１８６】
ここで、〔例２〕のように、同時押鍵数が或る一定数までは入力音情報をコード構成音の中の何れかの音高に変換し、一定数を超えたときに入力音情報をコード構成音以外の音高も含めた音高に変換する場合は、単一のテーブルを利用することができる。図１６（３）の総合変換テーブルＴＢｓは、この場合に使用可能なテーブル例を示す。このテーブルＴＢｓは、図１５の通常変換テーブルＴＢａと同様に、同時発音数「１」〜「６」による優先度がある音名特定情報のパターンをもち、「０」以外で同時発音数以下の数字の音名特定情報が付いている音名を使用することができる。
【０１８７】
この総合変換テーブルＴＢｓにおいては、例えば、“Ｃｍａｊ”コードの場合に、同時発音数が一定数「３」のときは、入力音情報は、通常変換テーブルＴＢａと同様に、コード構成音（基本音群）である“Ｃ”、“Ｅ”、“Ｇ”の中の何れかの音高に変換される。しかしながら、同時発音数が「３」を超える（“３”＜同時発音数＜可能最大同時発音数ＳＭ＝“６”）ときは、コード構成音“Ｃ”、“Ｅ”、“Ｇ”及びコード構成音外の“Ｂ”、“Ｄ”、“Ａ”の何れかの音名をもつ音高に変換される。この場合、条件によっては、基本音群の何れかの音高に変換されるかもしれないし、基本音群以外の音高に変換されるかもしれない。
【０１８８】
〔キーオン処理（２）〕
図１７及び図１８は、この発明の一実施例によるキーオン処理（２）の流れを示す。両図において、ステップ記号“Ｓ２１”〜“Ｓ３５”の付いた四角又は六角ブロックは処理内容を表わし、実線矢印は処理の進行を表わす。また、丸みのある４隅を有する四角形ブロックは情報を表わし、破線矢印は情報の活用を表わす。
【０１８９】
ユーザが演奏操作（押離鍵）を行うと、まず、演奏操作（押離鍵）状態を判定する（ステップＳ２１）。この判定ステップでは、キーオンノート番号ＮＴｉを含む（今回の）押鍵音情報が入力され、同時押鍵数を更新する〔キーオン毎に“＋１”（また、キーオフがあれば“−１”）〕と共に、採用されるテーブル切換え方法（上述の〔例１〕〜〔例３〕）に応じて、鍵種（黒鍵／白鍵）を判定したり或いは押鍵タイミング間隔を計測する（ステップＳ２１）。
【０１９０】
次いで、採用される演奏音の音色と押鍵状態判別結果ＭＣから、ノート変換に用いるテーブルを決定する（ステップＳ２２）。例えば、予めシステムにセットされた演奏音音色の種別ＶＳに対応して、音色別変換情報（図１４）における通常及びテンションテーブルＮＴ，ＴＴのテーブル番号で指定される通常及びテンション変換テーブルが選択される。次に、選択された両テーブルから、セットされたテーブル切換え方法の条件に従い判別された押鍵状態ＭＣに応じて、何れのテーブルを使用するかが決定される。
【０１９１】
続いて、後述する音高範囲チェック（ステップＳ２６）で用いる上方及び下方検索フラグＨ．Ｌを共に“ＴＲＵＥ”にし（ステップＳ２３）、決定されたテーブルを用いてコード情報及び同時押鍵数からキーオンノート番号ＮＴｉをノート番号ＮＴｃに変換する（ステップＳ２４）。以後、変換されたノート番号ＮＴｃに関して、同時発音数チェック（ステップＳ２５）、音高範囲チェック（ステップＴＳ２６）、重複ノートチェック（ステップＳ２７）及び奏法チェック（ステップＳ２８）を行う。
【０１９２】
そして、全てのチェック（Ｓ２５〜Ｓ２８）で条件が満足されると、当該変換後ノート番号ＮＴｃについて発音処理を行い、出力ノート番号ＮＴｏとして音源部３８に出力する（ステップＳ２９）。発音処理が行われた場合には、「発音中ノート情報」を更新すると共に「前回の押鍵音ＮＴｉｏ」を今回のキーオンノート番号ＮＴｉで更新して（図１８：ステップＳ３０）、次の演奏操作を待つ。
【０１９３】
まず、同時発音数チェック（Ｓ２５）においては、音色別変換情報（図１４）から、セットされた音色（種類）に対応する可能最大同時発音数ＳＭを取得し、発音中ノート情報と今回のキーオン情報に基づく現在の同時発音数が、可能最大同時発音数ＳＭにより示される同時発音数範囲内であるか否かを調べる。この判定の結果、制限内であれば音高範囲チェック（Ｓ２６）に進むが、この制限範囲をオーバーした場合には“今回の押鍵については発音しない”ものと決定する（図１８：ステップＳ３１）。発音しない決定が行われた場合も、前回の押鍵音ＮＴｉｏを今回キーオンノート番号ＮＴｉで更新して（Ｓ３０）次の演奏操作を待つ。
【０１９４】
音高範囲チェック（Ｓ２６）では、音色別変換情報（図１４）から、セットされた音色（種類）に対応する上限及び下限ノート番号ＮＨ，ＮＬを取得し、変換後ノート番号ＮＴｃが、両番号ＮＨ，ＮＬにより示される音高範囲（音域）内であるか否かを調べる。この範囲チェックでは、変換後ノート番号Ｎｔｃ＜下限ノート番号ＮＬの場合は、下方検索フラグＬを“ＦＡＬＳＥ”にして下方への検索を禁止し、変換後ノート番号Ｎｔｃ＞上限ノート番号ＮＨの場合には、上方検索フラグＨを“ＦＡＬＳＥ”にして上方への検索を禁止する。
【０１９５】
この音高範囲チェックで所定の音域内であれば重複ノートチェック（Ｓ２７）に進むが、音域内でないときは、検索フラグＨ．Ｌの内容を調べて変換後音高の限界を判定する音高限界チェック（図１８：ステップＳ３２）を行う。すなわち、何れかの検索フラグＨ．Ｌが“ＴＲＵＥ”であれば、上下何れかの方向での検索が可能であると判定し、例えば、下方検索フラグＬ＝“ＴＲＵＥ”なら下方検索を設定し、上方検索フラグＨ＝“ＴＲＵＥ”なら上方検索を設定する（ステップＳ３３）。この場合、設定された検索方向に応じてテーブル参照用ノート番号ＮＴｉ’（当該押鍵当初はＮＴｉ’＝ＮＴｉ）を“±１”し（ステップＳ３４）、ノート変換テーブルによりこのノート番号ＮＴｉを変換し（図１７：Ｓ２４）、新たに変換されたノート番号ＮＴｃにつき、再度、音高範囲チェック（Ｓ２６）を行う。
【０１９６】
一方、この限界チェック（Ｓ３２）で両検索フラグＨ．Ｌ共に“ＦＡＬＳＥ”（Ｈ＝Ｌ＝“ＦＡＬＳＥ”）であれば、限界であると判断して“今回の押鍵については発音しない”ものと決定し（Ｓ３１）、前回の押鍵音ＮＴｉｏを今回キーオンノート番号ＮＴｉで更新して（Ｓ３０）次の演奏操作を待つ。
【０１９７】
重複ノートチェック（Ｓ２７）では、変換後ノート番号ＮＴｃが発音中ノート情報と重複しているか否かを判定する。なお、この重複チェックにおいて、同時発音数が“１”の場合は「重複なし」とみなす判断がなされる。また、コードタイプがＣａｎｃｅｌの場合は「重複なし」とみなしてもよい。この重複チェックにより両ノートが重複していないと判定されたときは、奏法チェック（Ｓ２８）に進むが、両ノートが重複する場合は、ユーザの押鍵した方向に次の候補を検索する上方／下方検索（図１８：ステップＳ３５）に進む。
【０１９８】
この上方／下方検索（Ｓ３５）では、前回押鍵音情報ＮＴｉｏとキーオンノート番号ＮＴｉを比較して前回に対する今回の押鍵方向を判断し、この押鍵方向に応じて上方／下方検索を設定する。そして、この押鍵方向に応じてテーブル参照用ノート番号ＮＴｉ’を“±１”し（Ｓ３４）、このノート番号ＮＴｉ’をノート変換テーブルで変換し（図１７：Ｓ２４）、新たに変換されたノート番号ＮＴｃについて、再度、重複ノートチェック（Ｓ２７）を行う。
【０１９９】
奏法チェック（Ｓ２８）では、音色別変換条件情報（図１４）から、変換後ノート番号ＮＴｃが、セットされた音色（種類）に対応する奏法条件ＲＣに適合しているか否かを調べる。この奏法チェックには、例えば、ギター音色の場合、同時発音の全音が各弦につき１音ずつに割り当てられるか、各指の配置に無理がないか、などがある。なお、音色によっては奏法チェック自体がない場合があり（リコーダー）、また、「〔１〕第１の入力音変換処理」のように、奏法チェックにおいて、前回の押鍵音ＮＴｉｏとのタイミングにより発音の妥当性をチェックする手法などを採用してもよい。そして、奏法条件ＲＣに適合しているときは（ＯＫ）前述した発音処理（Ｓ２９）を行うが、適合していないときには（ＮＧ）今回の押鍵は発音しないものとし（図１８：Ｓ３１）、前回押鍵音情報ＮＴｉｏを今回キーオンノート番号ＮＴｉで更新して（Ｓ３０）次の演奏操作を待つ。
【０２００】
〔テーブル活用例〕
ここで、図１４の音色別変換情報のうち「ギター」音色を設定し〔例１〕に従って、白鍵操作に対応して図１５の通常変換テーブルＴＢａを使用し、黒鍵操作に対して図１６（２）のテーブルＴＢｔ１を使用する場合について、次の（１），（２）の例に従い、上述したキーオン処理（２）におけるノート変換テーブルの活用の仕方を具体的に説明する。
【０２０１】
（１）「コード“Ｃｍａｊ”」で可能最大同時発音数ＳＭ＝“６”の場合
１．まず、他に同時発音がない状態で、ユーザが演奏操作部（鍵盤）３５で第１音“Ａ４”を演奏する。
１ａ．演奏音“Ａ４”（ＮＴｉ）は白鍵であり１個目の発音になるので、通常変換テーブルＴＢａの“Ｍａｊｏｒ”行を参照し〔Ｓ２２〕、優先度「１」の音名特定情報が付いた音名“Ｅ”（ミ）に従って、音高“Ｅ４”（ＮＴｃ）に変換される。音高“Ｅ４”は直ちに出力ノート番号ＮＴｏとして発音されて発音中ノート情報となり、演奏音“Ａ４”は前回の押鍵音ＮＴｉｏとなる〔Ｓ２４→Ｓ２９〕。
【０２０２】
２．“Ｅ４”の発音中にユーザが第２音“Ｆ４”を演奏する。
２ａ．演奏音“Ｆ４”は白鍵で２音（可能最大同時発音数ＳＭ＝“６音”以下）の発音になるので、同テーブルＴＢａの“Ｍａｊｏｒ”行において、音“Ｆ４”（ＮＴｉ）の“Ｆ”（ファ）に対し優先度「１」又は「２」の音名“Ｅ”（ミ）又は“Ｇ”（ソ）が選択可能であるが、音程の近い方“Ｅ”（ミ）が採用され、音高“Ｅ４”が候補（変換後ノート番号ＮＴｃ）になる〔Ｓ２４，Ｓ２５〕。
２ｂ．音高“Ｅ４”は、既に発音中であるため、重複チェックで「重複あり」と判断される〔Ｓ２７〕。
２ｃ．そのため「上方／下方検索」〔Ｓ３５〕が行われ、前回押鍵音ＮＴｉｏは“Ａ４”であるから（音高Ｆ４＜Ａ４）、キーオンノート番号ＮＴｉを“−１”したテーブル参照用ノート番号ＮＴｉ’＝“Ｅ４”にて、テーブルＴＢａを参照する〔Ｓ３４→Ｓ２４〕。
２ｄ．ノート変換により音名“Ｅ”（ミ）から音高“Ｅ４”が候補になるが、重複のため、更に、ノート番号ＮＴｉ’を“−１”して、２ａ〜２ｃと同様の処理を繰り返す〔Ｓ２７→Ｓ３５→Ｓ３４→Ｓ２４→Ｓ２７→…〕。
２ｅ．そして、ノート番号ＮＴｉ’＝“Ｂ３”になったとき、テーブルＴＢａで音程の近い方に“Ｇ”（ソ）が得られるので〔Ｓ２４〕、音高“Ｇ３”が候補になり出力ノート番号ＮＴｏとなって発音される〔Ｓ２７→Ｓ２９〕。
【０２０３】
３．第１音“Ａ４”がキーオフされ、第２音“Ｆ４”はキーオンのまま（出音は“Ｇ３”）の状態で、ユーザが第３音“Ｂ４”を演奏する。
３ａ．演奏音“Ｆ４”も白鍵で２音発音中なので、同テーブルＴＢａ中の選択可能な音名“Ｅ”（ミ）又は“Ｇ”（ソ）のうち音程の近い方“Ｇ”（ソ）が採用され、音高“Ｇ４”が候補（変換後ノート番号ＮＴｃ）となる〔Ｓ２４，Ｓ２５〕。
３ｂ．その時点で発音中の音高は“Ｇ３”であるため、音高“Ｇ４”は「重複していない」と判断され出力ノートＮＴｏとなって発音される〔Ｓ２７→Ｓ２９〕。
【０２０４】
４．ユーザが、第２，３音“Ｆ４”，“Ｂ４”を押鍵したままで、第４音“Ｃ♯４”を演奏する。
４ａ．演奏音“Ｃ♯４”は黒鍵なので、テンション変換テーブルＴＢｔ１の“Ｍａｊｏｒ”行を参照し〔Ｓ２２〕、音名特定情報「１」が付いた音名“Ｄ”（レ），“Ａ”（ラ），“Ｂ”（シ）のうち、“Ｃ♯”に一番近い音名“Ｄ”が選択され、これに対応する音高“Ｄ４”（ＮＴｃ）が出力音高候補となる〔Ｓ２４〕。
４ｂ．この時点で発音中のノートは音高“Ｇ３”，“Ｇ４”であるため、音高“Ｄ４”は、これらに重複せず、発音される〔Ｓ２４→Ｓ２９〕。
【０２０５】
（２）「コード“ＧＭ７”」で可能最大同時発音数ＳＭ＝“６”の場合
１．他に同時発音がない状態で、第１音“Ｆ２”（ＮＴｉ）を演奏する。
１ａ．演奏音“Ｆ２”は白鍵であるため、通常変換テーブルＴＢａの“Ｍ７”行が適用される〔Ｓ２２〕。テーブルＴＢａの“Ｍ７”行では、１音優先テーブル値「１」の音名特定情報が付いた音名は、ルート（根音）“Ｇ”（＝距離“０”）からの距離が“１１”半音上〔Ｃｍａｊの音名“Ｂ”（シ）に相当〕、つまり、ルート“Ｇ”で換算して音名“Ｆ♯”となるから、演奏音“Ｆ２”と同じオクターブで、音高“Ｆ♯２”が変換後ノートＮＴｃ→出力ノートＮＴｏとなって発音され発音中ノート情報となる〔Ｓ２４→Ｓ２９〕。
【０２０６】
２．第１音“Ｆ２”を押鍵したまま第２音“Ｅ♭２”を演奏する。
２ａ．演奏音“Ｅ♭２”は黒鍵であるため、テンション変換テーブルＴＢｔ１の“Ｍ７”行が適用される〔Ｓ２２〕。テーブルＴＢｔ１の“Ｍ７”行において、音名特定情報「１」が付いたルート“Ｇ”からの距離が“２”，“６”，“８”半音上〔ＣＭ７の音名“Ｄ”，“Ｆ♯”，“Ａ♭”に相当〕、つまり、ルート“Ｇ”で換算して、それぞれ、音名“Ａ”，“Ｃ♯”，“Ｅ♭”がノート変換に使用可能であるが、ユーザの演奏音（ＮＴｉ）は“Ｅ♭２”なので、音名“Ｅ♭”に対応する音高“Ｅ♭２”が候補（変換後ノートＮＴｃ）となる〔Ｓ２４〕。
２ｂ．音高“Ｅ♭２”は、発音中ノート情報“Ｆ♯２”と共に、可能最大同時発音数ＳＭ＝“６音”以下の２音発音中となり〔Ｓ２５〕、出力ノートＮＴｏとして発音される〔Ｓ２６→Ｓ２９〕。
【０２０７】
〔第２及び第３の入力音変換処理における種々の実施態様〕
以上、図面を参照しつつ、この発明の入力音変換システムにおける第２及び第３の入力音変換処理の好適な実施の形態について説明したが、この発明の精神を逸脱しない範囲で種々の変更が可能であって、この発明は種々の態様で実施することができる。
【０２０８】
特に、第２の入力音変換処理については、例えば、基本音群は、実施例のようにコード構成音だけではなく、基本音群とその他の音群などの分け方もできる。例えば、スケール音とノンスケール音で分ける、コードルートとそれ以外の音に分けるなどの方法がある。また、基本音群をコード構成音とした場合、コード構成音以外の音高は、実施例のようにコードのテンションであってもよいし、装飾音に使われやすいかもしれない音（例えばコード構成音の短２度下の音）でもよい。或いは、入力される演奏音そのままでもよい。
【０２０９】
実施例の押鍵状態判別ステップ（Ｓ２１）で基本音群以外も含めた音高に変換する押鍵状態かどうかを判定するのに、上述の活用例では〔例１〕のように「黒鍵か白鍵か」という違いで判定するようにしたが、これだけでなく、他の押鍵状態の違いでも判定することができる。すなわち、〔例２〕のように、演奏者の同時押鍵数を検出して押鍵数が或る一定値（例えば８音）を超えた場合や、〔例３〕の場合、或いは、押鍵ベロシティが或る一定値（例えば３０）より弱い場合、鍵盤内の特定のキーや操作子を操作した場合、等々によって、基本音群以外を含めた音高に変換するようにしてもよい。なお、〔例２〕の場合には、図１６（３）のような総合変換テーブルＴＢｓの使用が可能であることはいうまでもない。
【０２１０】
実施例では、コード構成音以外の音高に変換するためにテンション変換テーブルＴＢｔ１，ＴＢｔ２，…を使用するようにしたが、計算などのアルゴリズムによって算出するようにしてもよい。例えば、入力（演奏）音高に一番近いコード構成音以外の音高にしたり、或いは、そのときのコードの９ｔｈで入力（演奏）音高に一番近い音高にするなどの方法を採用してもよい。また、例えば、基本音群をコード構成音とする場合、一旦、通常変換テーブルを用いてコード構成音に変換しておき、そこからテンションノートに加工するというように、“通常変換テーブル＋計算アルゴリズム”という方法も採用することができる。
【０２１１】
また、ノート変換テーブルは、複数で組み合わせは変更可能であってもよいし、編集可能であってもよい。さらに、変換テーブルの種類を増やしてもよい。例えば、基本音群をコード構成音とした場合、コード構成音以外の音高への変換であっても、ユーザの押鍵の仕方によって使用テーブルを変えてもよい。また、実施例では、変換テーブルを参照する際に同時発音数を考慮して候補の音高を探すようにしているが、さらに、同時発音数毎のテーブルを持つようにしてもよい。
【０２１２】
実施例のキーオン処理（２）においては、ノート番号変換ステップ（Ｓ２４）以降のステップでノート変換後情報（ＮＴｃ）について各種チェックを行う例を挙げているが、こうしたチェックの種類はこれに限らない。また、「発音しない」（Ｓ３１）場合の判定〔Ｓ２５（制限オーバー），Ｓ２８（奏法条件ＮＧ），Ｓ３２（音高限界）〕も、これに限らない。なお、コードタイプがＣａｎｃｅｌの場合は、重複などのチェックを行わずそのまま発音してもよい。
【０２１３】
音高変換に適用されるコード情報の個数は限定されない。また、コード情報は予め記憶されているものでもよいし、リアルタイムに入力されるものでもよい。
【０２１４】
特に、第３の入力音変換処理については、例えば、音色別変換情報（図１４）の内容は、ユーザ設定ができるようにしてもよい。
【０２１５】
また、ノート変換テーブルは、複数で組み合わせは変更可能であってもよいし、編集可能であってもよい。さらに、変換テーブルの種類を増やしてもよい。また、実施例では、音色別変換情報（図１４）を参照して変換テーブルを決めているが、音色毎に変換テーブルを用意しておいてもよい。これは、同時発音数チェック（Ｓ２５）や範囲チェック（Ｓ２６）、奏法チェック（Ｓ２８）についても同様であり、各チェック処理の中で、音色を基にして必要な条件値を割り出してもよい。
【０２１６】
同時押鍵数に対応するタイプのノート変換テーブル（ＴＢａ，ＴＢｓ）について、実施例では、テーブルを参照する際に同時発音数を考慮して候補の音程を探すようにしているが、同時発音数毎のテーブルを持つようにしてもよい。
【０２１７】
同時発音数チェック（Ｓ２５）については、特に同時発音数を問わない音色であればスルー（“制限内”）にしてもよい。また、コードタイプがＣａｎｃｅｌの場合は、重複などのチェックを行わずそのまま発音してもよい。
【０２１８】
音高範囲チェック（Ｓ２６）において、音色別変換情報（ＮＨ，ＨＬ）で指定される音高範囲に変換後の音高（ＮＴｃ）が収まらなかった（“範囲内でない”）場合の処理については、実施例では、限界チェック以下の処理（Ｓ３２〜Ｓ３４，Ｓ３０）を行っているが、例えば、直ちに「発音しない」とする方法や、「１オクターブずらしてもう一度範囲チェック（Ｓ２６）を行う」方法など、他の方法を採用することができる。
【０２１９】
音高変換に適用されるコード情報の個数は限定されない。また、コード情報は予め記憶されているものでもよいし、リアルタイムに入力されるものでもよい。
【０２２０】
〔まとめ〕
以上説明したように、この発明の演奏補助システムによれば、演奏者が音楽的な間違いを気にせずに演奏表現に気を配ること（注力）が可能な演奏補助装置を提供することができる。
【０２２１】
この発明の入力音変換システムにおける第１の入力音変換処理によれば、ユーザ実演奏による入力音をコード対応の変換テーブルによりコードに合う音高に変換すると共に、変換された音高が現在発音中の音高と重複するときは、音域及び奏法に合わせて更には実演奏音の高低関係を維持するように発音を制御し、同じ音高の音が複数同時に発音状態にならないようにしているので、自然な聴感を得ることができる。
【０２２２】
また、この発明の入力音変換システムにおける第２の入力音変換処理によれば、ユーザの実際の演奏による入力音をコードに合った音高に変換する際に、押鍵状態などの音高入力状態に基づき、基本音群（例えば、コード構成音やスケール音）或いは基本音群以外の音群（例えば、テンションや装飾音）の音高に変換されるように制御し、音高入力状態に応じて基本音群以外の音高にも変換できるようにしているので、ユーザの望むときに基本音群以外の音高も含んだ変化に富んだ演奏出力を得ることができる。
【０２２３】
さらに、この発明の入力音変換システムにおける第３の入力音変換処理によれば、ユーザの実際の演奏による入力音をコードに合った音高に変換する際に、音色情報により指示される楽器音色によって、音高変換テーブルを選択的に切り替えたり、当該音色に対応する音高変換条件付け情報を元にして変換後の音高を当該音色に合うように制御するようにしているので、音色によって音高変換の内容を変更することで、より音色に合った演奏が可能になり、また、演奏者が特に意識することなく、指示された音色の楽器に固有の発音形態に近い演奏出力が得られる。
【図面の簡単な説明】
【０２２４】
【図１】図１は、この発明の一実施例による演奏補助システムのハードウェア構成を示すブロック図である。
【図２】図２は、この発明の一実施例による演奏補助装置１の機能を表すブロック図である。
【図３】図３は、この発明の第１の実施例による演奏補助処理を説明するためのフローチャート、概念図、及びテーブルである。
【図４】図４は、この発明の第２の実施例による演奏補助処理を説明するためのフローチャート及びテーブルである。
【図５】図５は、この発明の第１の変形例を表す概念図及び機能ブロック図である。
【図６】図６は、この発明の第２の変形例を表す概念図及び機能ブロック図である。
【図７】図７は、この発明の第３の変形例を表す概念図及び機能ブロック図である。
【図８】図８は、この発明の一実施例による入力音変換システムのハードウエア構成ブロック図である。
【図９】図９は、この発明の一実施例による入力音変換システムの第１の音変換機能を極く概略的に説明するモジュール関連図である。
【図１０】図１０は、この発明の一実施例によるノート変換テーブルの一例である。
【図１１】図１１は、この発明の一実施例による音高変換処理〔“キーオン処理”〕の流れの一部を表わす図である。
【図１２】図１２は、この発明の一実施例による音高変換処理〔“キーオン処理”〕の流れの他部を表わす図である。
【図１３】図１３は、この発明の一実施例による入力音変換システムの第２及び第３の音変換機能を極く概略的に説明するモジュール関連図である。
【図１４】図１４は、ノート変換時に使用される音色別変換情報の一例である。
【図１５】図１５は、ノート変換時に使用されるノート変換テーブルの一例である。
【図１６】図１６は、ノート変換時に使用されるノート変換テーブルの他の例である。
【図１７】図１７は、この発明の一実施例による別の音高変換処理〔“キーオン処理（２）”〕の流れの一部を表わす図である。
【図１８】図１８は、この発明の一実施例による別の音高変換処理〔“キーオン処理（２）”〕の流れの他部を表わす図である。
【符号の説明】
【０２２５】
１；５１，６１，７１  演奏補助装置、
２１  演奏信号入力部、
２２  コード進行供給部、
２３  ノート変換部、
２４  自動伴奏／付加音発生部、
ＳＱ  コード情報ＣＨを出力するシーケンサモジュール、
ＮＣ  入力音情報（キーオンノート番号）ＮＴｉを出力音情報（出力ノート番号）ＮＴｏに変換するノート変換モジュール。
【図１】
2004206073.tif 000003
【図２】
2004206073.tif 000004
【図３】
2004206073.tif 000005
【図４】
2004206073.tif 000006
【図５】
2004206073.tif 000007
【図６】
2004206073.tif 000008
【図７】
2004206073.tif 000009
【図８】
2004206073.tif 000010
【図９】
2004206073.tif 000011
【図１０】
2004206073.tif 000012
【図１１】
2004206073.tif 000013
【図１２】
2004206073.tif 000014
【図１３】
2004206073.tif 000015
【図１４】
2004206073.tif 000016
【図１５】
2004206073.tif 000017
【図１６】
2004206073.tif 000018
【図１７】
2004206073.tif 000019
【図１８】
2004206073.tif 000020