(57)【要約】      （修正有）【課題】スキル（コードの知識）が無くても直感的に演奏でき、かつ、押弦されるフレット位置の高低により、音高を変化させることを可能とし、表現力と演奏感覚とを高める。【解決手段】ＣＰＵは、更新したギターのコードに対応する現在のコード（ルート及びコード種）を取得する。そして、ＣＰＵは、取得した該当コード（ルート及びコード種）に基づいて特定した各弦に対応したコードのフレット位置の情報が格納された音階テーブルを取得する。取得した音階テーブルに基づいて、フレット位置及び弦の番号により変換音を取得する。【選択図】図１３
2013064874.tif 000002
【特許請求の範囲】
【請求項１】
押弦された各弦のフレット位置を取得するフレット位置取得手段と、
外部よりコードを順次取得するコード取得手段と、
前記コード取得手段により取得されたコードに対応する音階テーブルを取得する音階テーブル取得手段と、
前記音階テーブル取得手段により取得された前記音階テーブルを参照して、前記フレット位置取得手段により取得された前記各弦のフレット位置に基づく変換音を取得する変換音取得手段と、
前記変換音取得手段により取得された変換音の発音を指示する発音指示手段と、
を備えたことを特徴とする発音指示装置。
【請求項２】
前記音階テーブルは、前記コードに対応する各弦のフレット位置に近似するフレット位置の情報を格納し、
前記変換音取得手段は、前記音階テーブルを参照して、前記音階テーブルに格納された前記各弦のフレット位置の情報に基づき、前記フレット位置取得手段により取得された前記各弦のフレット位置に近似する前記各弦のフレット位置に基づく変換音を取得することを特徴とする請求項１に記載の発音指示装置。
【請求項３】
前記フレット位置取得手段により取得された前記各弦のフレット位置に基づいて、複数のポジションの中から押弦されたポジションを決定するポジション決定手段を更に備え、
前記変換音取得手段は、前記フレット位置取得手段により取得された前記各弦のフレット位置及び前記ポジション決定手段により決定された前記ポジションに基づき前記音階テーブルのコードに対応する変換音を取得することを特徴とする請求項１に記載の発音指示装置。
【請求項４】
前記音階テーブルは、押弦される際の前記ポジションと、前記コードに対応する各弦の情報とを格納し、
前記変換音取得手段は、前記音階テーブルを参照して、前記ポジション決定手段により決定された前記ポジション及び前記各弦の情報に基づく変換音を取得することを特徴とする請求項３に記載の発音指示装置。
【請求項５】
音を発生する制御を実行する発音指示方法において、
押弦された各弦のフレット位置を取得するフレット位置取得ステップと、
外部よりコードを順次取得するコード取得ステップと、
前記コード取得ステップにより取得されたコードに対応する音階テーブルを取得する音階テーブル取得ステップと、
前記音階テーブル取得ステップにより取得された前記音階テーブルを参照して、前記フレット位置取得ステップにより取得された前記各弦のフレット位置に基づき変換音を取得する変換音取得ステップと、
前記変換音取得ステップにより取得された変換音の発音を指示する発音指示ステップと、
を含むことを特徴とする発音指示方法。
【請求項６】
音を発生する制御を実行するコンピュータを、
押弦された各弦のフレット位置を取得するフレット位置取得手段、
外部よりコードを順次取得するコード取得手段、
前記コード取得手段により取得されたコードに対応する音階テーブルを取得する音階テーブル取得手段、
前記音階テーブル取得手段により取得された前記音階テーブルを参照して、前記フレット位置取得手段により取得された前記各弦のフレット位置に基づく変換音を取得する変換音取得手段、
前記変換音取得手段により取得された変換音に基づいて音を発生する音発生手段、
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、発音指示装置、発音指示方法、及びプログラムに関する。
【背景技術】
【０００２】
従来から、ギタータイプの電子楽器において、曲の進行に応じて自動的にコードを割り当てて、右手だけで演奏できる機能が知られている。この機能によれば、スキル（コードの知識）が無くても、右手でかき鳴らすだけで演奏することができ、ストロークやアルペジオ等の演奏表現を加えることもできる（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平８−１１５０８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１を含む従来の技術では、ユーザの意思が全く反映されないため、左手側の操作感が無く、演奏している感覚が薄くなるという問題がある。また、音程の変化が乏しく、演奏が単調になってしまうという問題があった。
【０００５】
本発明は、このような状況に鑑みてなされたものであり、スキル（コードの知識）が無くても直感的に演奏でき、かつ、押弦されるフレット位置の高低により、音高を変化させることを可能とし、表現力と演奏感覚とを高めることを目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明の一態様の発音指示装置は、
押弦された各弦のフレット位置を取得するフレット位置取得手段と、
外部よりコードを順次取得するコード取得手段と、
前記コード取得手段により取得されたコードに対応する音階テーブルを取得する音階テーブル取得手段と、
前記音階テーブル取得手段により取得された前記音階テーブルを参照して、前記フレット位置取得手段により取得された前記各弦のフレット位置に基づく変換音を取得する変換音取得手段と、
前記変換音取得手段により取得された変換音の発音を指示する発音指示手段と、
を備えたことを特徴とする。
【発明の効果】
【０００７】
本発明によれば、スキル（コードの知識）が無くても直感的に演奏でき、かつ、押弦されるフレット位置の高低により、音高を変化させることを可能とし、表現力と演奏感覚とを高めることができる。
【図面の簡単な説明】
【０００８】
【図１】本発明の第１実施形態に係る発音指示装置の外観構成を示す平面図である。
【図２】発音指示装置のハードウェアの構成を示すブロック図である。
【図３】メイン処理の流れを説明するフローチャートである。
【図４】タイマ割込処理の流れを説明するフローチャートである。
【図５】ソング処理の流れを説明するフローチャートである。
【図６】ソング開始処理の流れを説明するフローチャートである。
【図７】ＲＯＭに格納されているソングデータの構造例である。
【図８】ソング再生処理の流れを説明するフローチャートである。
【図９】イベント処理の流れを説明するフローチャートである。
【図１０】フレット処理の流れを説明するフローチャートである。
【図１１】トリガ処理の流れを説明するフローチャートである。
【図１２】各弦毎に振動レベルを取得するトリガ検出回路ピックアップを示す図である。
【図１３】フレット音階変換処理の流れを説明するフローチャートである。
【図１４】ＲＯＭに格納されている音階テーブルの構造例である。
【図１５】ＲＯＭに格納されているＣのコードに対応する音階テーブルの構造例である。
【図１６】第２実施形態に係るフレット音階変換処理の流れを説明するフローチャートである。
【図１７】第２実施形態に係るＲＯＭに格納されるデータのうち、コード及びフレットを格納するための音階テーブルの構造例である。
【図１８】第２実施形態に係るＲＯＭに格納されているＣのコードに対応する音階テーブルの構造例である。
【発明を実施するための形態】
【０００９】
［第１実施形態］
以下、本発明の第１実施形態について、図面を用いて説明する。
【００１０】
図１は、本発明の第１実施形態に係る発音指示装置の外観構成を示す平面図である。
【００１１】
発音指示装置１は、例えばエレクトリック・ギター（Ｅｌｅｃｔｒｉｃ  Ｇｕｉｔａｒ）により構成され、弦振動をピックアップで検出して、その電気信号を増幅して出力することにより、弦自体の振動に基づく楽音を発生することができる。
この場合、ユーザは、曲の進行に応じてかき鳴らすだけで、押弦されるフレット位置の高低により、音高を変化させながら音を出力することができる。
【００１２】
発音指示装置１は、本体部２と、フレット部３と、トリガ部４と、を備えている。
本体部２は、発音指示装置１の筐体を構成する。
フレット部３は、フレットと弦に対応したマトリクス状のスイッチ群で構成される。
トリガ部４は、各弦毎にピックアップを持ち個別に弦振動を検出する。
【００１３】
図２は、後述の図１３を参照して説明するフレット音階変換処理を実行可能な発音指示装置１のハードウェアの構成を示すブロック図である。
【００１４】
発音指示装置１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１３と、バス１４と、入出力インターフェース１５と、スイッチ検出回路１６と、フレット検出回路１７と、ＡＤコンバータ１８と、音源システム１９と、機能スイッチ群２１と、フレットスイッチ群２２と、トリガ検出回路ピックアップ２３と、を備えている。
【００１５】
ＣＰＵ１１は、ＲＯＭ１２に記録されているプログラム、又は、記憶部（図示せず）からＲＡＭ１３にロードされたプログラムに従って各種の処理を実行する。
【００１６】
ＲＡＭ１３には、ＣＰＵ１１が各種の処理を実行する上において必要なデータ等も適宜記憶される。
【００１７】
ＣＰＵ１１、ＲＯＭ１２、及びＲＡＭ１３は、バス１４を介して相互に接続されている。このバス１４にはまた、入出力インターフェース１５も接続されている。入出力インターフェース１５には、スイッチ検出回路１６、フレット検出回路１７、ＡＤコンバータ１８、音源システム１９が接続されている。
【００１８】
ＲＯＭ１２は、ＣＰＵ１１に実行させる種々の処理、例えば、機能スイッチ群２１のオン・オフ、スイッチの操作、弦の振動レベルに応じた楽音の発音、ＭＩＤＩデータに基づく処理等のプログラムを格納する。また、ＲＯＭ１２は、ピアノ、ギター、バスドラム、スネアドラム、シンバル等の楽音を生成するための波形データを格納した波形データエリア、及び、自動伴奏パターン等を構成する楽音のソングデータを格納したソングデータエリアを有する。ＲＡＭ１３は、ＲＯＭ１２から読み出されたプログラムや、処理の過程で生成されたデータを記憶する。従って、ＣＰＵ１１は、ＲＯＭ１２に記憶されているソングデータに基づいて、ギター以外のパートの自動演奏を行う。また、ＣＰＵ１１は、ソングデータ中のコードデータにより、フレットの音階を割り当てて演奏することができる。
【００１９】
スイッチ検出回路１６は、音色等を選択する機能スイッチ群２１の各スイッチの状態を検出してＣＰＵ１１に入力する。機能スイッチ群２１は、演奏モードや演奏の開始を指示する。
【００２０】
フレット検出回路１７は、フレット部３（図１参照）を含むフレットスイッチ群２２の各スイッチの状態を検出してＣＰＵ１１に入力する。フレットスイッチ群２２は、本体部２（図１参照）のネック部に設けられ、６弦×１２フレットの７２個の接点で構成される。フレット検出回路１７は、フレット部３の状態を検出する。
【００２１】
ＡＤコンバータ１８は、ピックアップ、センサーアンプ、波形処理の回路で構成されるトリガ検出回路ピックアップ２３により取得されるアナログ値をＣＰＵ１１からの指示により、弦毎に６Ｃｈサンプリングし、ＣＰＵ１１で処理可能なデジタル値に変換する。
【００２２】
音源システム１９は、例えばＭＩＤＩ（Ｍｕｓｉｃａｌ  Ｉｎｓｔｒｕｍｅｎｔ  Ｄｉｇｉｔａｌ  Ｉｎｔｅｒｆａｃｅ）データで発音が指示された楽音の波形データを生成し、その波形データをＤ／Ａ変換して得られるオーディオ信号を外部音源３０に出力して、発音及び消音の指示を出す。
【００２３】
外部音源３０は、音源システム１９から出力されたオーディオ信号を増幅して出力するアンプ回路４１と、アンプ回路４１から入力したオーディオ信号により楽音を放音するスピーカ４２と、を備える。音源システム１９により発生した波形により、アンプ回路４１、スピーカ４２を介して発音を行う。
【００２４】
次に、図３を参照して、このような図２のハードウェアの構成の発音指示装置１が実行する、メイン処理について説明する。
図３は、メイン処理の流れを説明するフローチャートである。
【００２５】
メイン処理は、本実施形態では、ユーザが電源を投入する操作を機能スイッチ群２１に対して行った場合、その操作を契機として開始される。即ち、次のような処理が実行される。
【００２６】
ステップＳ１１において、ＣＰＵ１１は、イニシャル処理を行う。この処理では、ＣＰＵ１１は、各種レジスタやカウント値等の起動時の初期化を実行する。
ステップＳ１２において、ＣＰＵ１１は、機能スイッチ処理を行う。この処理では、ＣＰＵ１１は、機能スイッチ群２１を構成するそれぞれの操作を検出し、検出された操作に従った処理を実行する。例えば、機能スイッチ処理においては、音色指定スイッチや、自動伴奏パターンの種別の指定スイッチ、自動伴奏パターンのオン・オフの指定スイッチ等、種々のスイッチの操作が検出される。自動伴奏パターンがオンとなったときには、ＣＰＵ１１は、演奏モードを伴奏モードに切り換える。演奏モードを示すデータは、ＲＡＭ１３の所定の領域に指定される。音色や自動伴奏パターンの種別を示すデータも、同様に、ＲＡＭ１３の所定の領域に格納される。
【００２７】
ステップＳ１３において、ＣＰＵ１１は、後述の図５を参照して説明するソング処理を行う。この処理では、ＣＰＵ１１は、ギター以外のパートを自動演奏すると共に、コードの情報を取り込む。ステップＳ１３のソング処理が終了すると、処理は、ステップＳ１４に進む。
【００２８】
ステップＳ１４において、ＣＰＵ１１は、後述の図１０を参照して説明するフレット処理を行う。この処理では、ＣＰＵ１１は、フレットの走査を行い、フレットの状態を取り込む処理を行う。ステップＳ１４のフレット処理が終了すると、処理は、ステップＳ１５に進む。
【００２９】
ステップＳ１５において、ＣＰＵ１１は、後述の図１１を参照して説明するトリガ処理を行う。この処理では、ＣＰＵ１１は、弦のトリガ検出の処理を行う。これによって発音、消音の指示を行う。ステップＳ１５のトリガ処理が終了すると、処理は、ステップＳ１６に進む。
【００３０】
ステップＳ１６において、ＣＰＵ１１は、音源発音処理を行う。この処理では、ＣＰＵ１１は、ステップＳ１１〜ステップＳ１５の処理で行われた発音又は消音の指示に従い、音源の発音の処理を行う。ＣＰＵ１１は、決定された実行された処理に基づいて、音楽やフレットの状態から音色や音高を示すデータを音源システム１９に供給する。音源システム１９は、供給された音色及び音高を示すデータに従って、ＲＯＭ１２の波形データを読み出して、所定の音高の楽音データを生成する。これにより、アンプ回路４１を通じてスピーカ４２から所定の楽音が発生する。この処理が終了すると、処理はステップＳ１２に戻る。即ち、メイン処理では、ユーザが電源をオフにする等、処理を終了する操作が機能スイッチ群２１に対して行われるまでの間、ステップＳ１２乃至Ｓ１６の処理が繰り返し行われる。
【００３１】
以上、図３を参照して、メイン処理の流れについて説明した。
次に、図４を参照して、タイマ割込処理の詳細な流れについて説明する。
【００３２】
次に、図４を参照して、このような図２のハードウェアの構成の発音指示装置１が実行する、タイマ割込処理について説明する。
タイマ割込処理は、図３のメイン処理とは独立して実行される処理（並行して実行される場合あり）であり、ユーザが電源を投入する操作を機能スイッチ群２１に対して行った場合、その操作を契機として開始され、次のような処理が繰り返し実行される。タイマ処理は、主として時間の計測に使用される。
図４は、タイマ割込処理の流れを説明するフローチャートである。
【００３３】
ステップＳ３１において、ＣＰＵ１１は、経過時間をカウントする。
この処理では、ＣＰＵ１１は、内部で発生する所定周期のクロックに同期したタイミングに基づき、経過時間をカウントする。具体的には、ソングでのイベント間のΔｔ時間の計測を行う。このΔｔ時間は、時間経過毎にクリアされる。この処理が終了すると、処理はステップＳ３１に戻る。即ち、タイマ割込処理では、ユーザが電源をオフにする等、処理を終了する操作が機能スイッチ群２１に対して行われるまでの間、ステップＳ３１の処理が繰り返し行われる。
【００３４】
以上、図４を参照して、タイマ割込処理の流れについて説明した。
次に、図５を参照して、図３のメイン処理のうち、ステップＳ１３のソング処理の詳細な流れについて説明する。
【００３５】
図５は、ソング処理の流れを説明するフローチャートである。
上述したように、ＣＰＵ１１により、図３のステップＳ１２の処理で機能スイッチ処理が行われると、処理はステップＳ１３に進み、ソング処理として次のような処理が実行される。
【００３６】
即ち、図５のステップＳ５１において、ＣＰＵ１１は、ソング再生中か否かを判定する。ソングが再生されていない場合には、ステップＳ５１においてＮＯであると判定されて、処理はステップＳ５２に進む。
【００３７】
ステップＳ５２において、ＣＰＵ１１は、ソング再生開始の操作がスイッチ群２１に対して行われたか否かを判定する。ソング再生開始の操作がスイッチ群２１に対して行われない場合には、ステップＳ５２においてＮＯであると判定されてソング処理が終了し、即ち図３のステップＳ１３の処理が終了し、処理はステップＳ１４に進む。これに対して、ソング再生開始の操作がスイッチ群２１に対して行われた場合には、ステップＳ５２においてＹＥＳであると判定されて、処理はステップＳ５３に進む。
【００３８】
ステップＳ５３において、ＣＰＵ１１は、後述の図６を参照して説明するソング開始処理を行う。この処理では、ＣＰＵ１１は、ソングを開始するためのデータを準備をする処理を行う。ステップＳ５３のソング開始処理が終了すると、ソング処理が終了し、即ち図３のステップＳ１３の処理が終了し、処理はステップＳ１４に進む。
【００３９】
これに対して、ソングが再生されている場合には、ステップＳ５１においてＹＥＳであると判定されて、処理はステップＳ５４に進む。
【００４０】
ステップＳ５４において、ＣＰＵ１１は、後述の図８を参照して説明するソング再生処理を行う。この処理では、ＣＰＵ１１は、図６のソング開始処理において設定されたイベント及びΔｔ時間に基づいてイベントの処理を行う。ステップＳ５４のソング再生処理が終了すると、ソング処理が終了し、即ち図３のステップＳ１３の処理が終了し、処理はステップＳ１４に進む。
【００４１】
以上、図５を参照して、ソング処理の流れについて説明した。
次に、図６を参照して、図５のソング処理のうち、ステップＳ５３のソング開始処理の詳細な流れについて説明する。
【００４２】
図６は、ソング開始処理の流れを説明するフローチャートである。
上述したように、ＣＰＵ１１により、図５のステップＳ５２の処理でソング再生開始の操作がスイッチ群２１に対して行われたと判定されると、処理はステップＳ５３に進み、ソング開始処理として次のような処理が実行される。
【００４３】
即ち、図６のステップＳ７１において、ＣＰＵ１１は、ＲＯＭ１２に格納されたソングデータを参照してイベントに開始イベントをセットする。なお、初期状態においては、ＣＰＵ１１は、休符扱いで、イベントが開始イベントにセットされるまで時間経過を待つ処理を行う。
【００４４】
ここで、図７を参照してＲＯＭ１２に格納されているソングデータの構造について説明する。
図７は、ＲＯＭ１２に格納されているソングデータの構造例である。
ソングデータは、イベントデータ及び次のイベントまでのΔｔ時間によって構成される。
ソングデータは、対応するパートのフレーズ区間を構成する各音を表す。１つのソングデータは、イベント及びΔｔ時間が対となって曲進行に対応した時系列のアドレス順に記憶される、いわゆる絶対時間方式と呼ばれるデータ形式で表現される。Δｔ時間は、曲開始時点からの経過時間で現イベントのタイミングを表す。イベントは、発音を表すノートＯＮイベント（又は消音を表すノートＯＦＦイベント）及び発音音高（又は消音音高）を表すノートナンバを含む。それによりソングデータは、イベント（楽音）単位で用意されたソングデータをその処理順に並べた形の構成となっている。ソングを構成する演奏パートにはそれぞれ異なるＣｈが割り当てられる。イベントデータは、Ｃｈ（楽器のパート）によって内容が異なり、ギター以外のＣｈは、メロディ、リズム、ベースのノートＯＮ／ＯＦＦのデータを持ち、ギター以外のパートを自動演奏できるようになっている。また、それ以外のイベントデータとしては、演奏の開始及び終了指示のイベントデータも格納される。これに対し、ギターのＣｈには、対応するコード名が格納されている。
【００４５】
図６のステップＳ７２において、ＣＰＵ１１は、ステップＳ７１においてセットした次のイベント実行までのΔｔ時間をセットする。
【００４６】
ステップＳ７３において、ＣＰＵ１１は、図４のタイマ割込処理のステップＳ３１においてカウントしている時間を参照して、ステップＳ７２においてセットしたイベントの経過時間のカウントを開始する。これによりステップＳ７２においてセットしたΔｔ時間が消化される。
【００４７】
ステップＳ７４において、ＣＰＵ１１は、ソングステータスを再生中にセットする。この処理が終了すると、ソング開始処理が終了し、即ち図５のステップＳ５３の処理が終了し、処理は図３のステップＳ１４に進む。
【００４８】
以上、図６を参照して、ソング開始処理の流れについて説明した。
次に、図８を参照して、図５のソング処理のうち、ステップＳ５４のソング再生処理の詳細な流れについて説明する。
【００４９】
図８は、ソング再生処理の流れを説明するフローチャートである。
上述したように、ＣＰＵ１１により、図５のステップＳ５１の処理でソングが再生中であると判定されると、処理はステップＳ５４に進み、ソング再生処理として次のような処理が実行される。
【００５０】
即ち、図８のステップＳ９１において、ＣＰＵ１１は、図６のステップＳ７３においてカウントを開始してからの経過時間を取得する。
【００５１】
ステップＳ９２において、ＣＰＵ１１は、経過時間が図６のステップＳ７２においてセットしたイベントのΔｔ時間を経過したか否かを判定する。この処理では、次のイベントまでの時間がどれだけ消化されたか否かが判定される。イベントのΔｔ時間を経過していないと判定した場合には、ソング再生処理が終了し、即ち図５のステップＳ５４の処理が終了し、処理は図３のステップＳ１４に進む。この場合は、引き続き継続して時間計測が行われる。これに対し、イベントのΔｔ時間を経過したと判定した場合には、処理はステップＳ９３に進む。
【００５２】
ステップＳ９３において、ＣＰＵ１１は、後述の図９を参照して説明するイベント処理を行う。この処理では、ＣＰＵ１１は、新しいイベントを読み出して処理を行う。ステップＳ９３のイベント処理が終了すると、ソング再生処理が終了し、即ち図３のステップＳ１３の処理が終了し、処理はステップＳ１４に進む。
【００５３】
以上、図８を参照して、ソング再生処理の流れについて説明した。
次に、図９を参照して、図７のソング再生処理のうち、ステップＳ９３のイベント処理の詳細な流れについて説明する。
【００５４】
図９は、イベント処理の流れを説明するフローチャートである。
上述したように、ＣＰＵ１１により、図７のステップＳ９２の処理でΔｔ時間が経過したと判定されると、処理はステップＳ９３に進み、イベント処理として次のような処理が実行される。
【００５５】
即ち、図９のステップＳ１０１において、ＣＰＵ１１は、ＲＯＭ１２に格納されたソングデータを参照して、図６のステップＳ７１においてセットしたイベントのＣｈはギターであるか否かを判定する。セットしたイベントのＣｈはギター以外である場合には、ステップＳ１０１においてＮＯであると判定されて、処理はステップＳ１０２に進む。
【００５６】
ステップＳ１０２において、ＣＰＵ１１は、ＲＯＭ１２に格納されたソングデータを参照して、図６のステップＳ７１においてセットしたイベント種毎に通常再生を行う。この処理では、ギター以外のＣｈについては、自動演奏の対象とするために、メロディ、リズム、ベースのノートＯＮ／ＯＦＦ指示を行い、ギター以外のＣｈのイベントに基づいて発音を指示する処理を行う。
【００５７】
ステップＳ１０３において、ＣＰＵ１１は、図６のステップＳ７２においてセットしたΔｔ時間のセットをクリアする。ステップＳ１０３の処理が終了すると、イベント処理が終了し、即ち図３のステップＳ１３の処理が終了し、処理はステップＳ１４に進む。
【００５８】
これに対し、図６のステップＳ７１においてセットしたイベントのＣｈはギターである場合には、ステップＳ１０１においてＹＥＳであると判定されて、処理はステップＳ１０４に進む。
【００５９】
ステップＳ１０４において、ＣＰＵ１１は、ＲＯＭ１２に格納されたソングデータを参照して、ギターＣｈの現在のコードを更新する。即ちこの処理では、ＣＰＵ１１は、ＲＯＭ１２に格納されたソングデータを参照して、図６のステップＳ７１においてセットしたイベントのギターＣｈのコードネームがある場合には、当該コードネームを取り出す。そして、ＣＰＵ１１は、ソングの再生中に取り出したコードネームを記憶しておく。これにより、ある小節の頭に来たらＣメジャーやＣ＃等のコードネームを設定することができる。そして、このコードネームが設定されている間は、ユーザが適当に演奏した場合であっても、当該コードネームに基づいて演奏することができる。
【００６０】
ステップＳ１０３において、ＣＰＵ１１は、経過時間をクリアし、新たなΔｔ時間をセットする。ステップＳ１０３の処理が終了すると、イベント処理が終了し、即ち図３のステップＳ１３の処理が終了し、処理はステップＳ１４に進む。
【００６１】
以上、図９を参照して、イベント処理の流れについて説明した。
次に、図１０を参照して、図３のメイン処理のうち、ステップＳ１４のフレット処理の詳細な流れについて説明する。
【００６２】
図１０は、フレット処理の流れを説明するフローチャートである。
上述したように、ＣＰＵ１１により、図３のステップＳ１３の処理でソング処理が終了すると、処理はステップＳ１４に進み、フレット処理として次のような処理が実行される。フレット処理では、ＣＰＵ１１は、ユーザがどの様に弦を押弦しているかを検出する。
【００６３】
即ち、図１０のステップＳ１２１において、ＣＰＵ１１は、６本ある弦のうち、１弦目をセットする。
【００６４】
ステップＳ１２２において、ＣＰＵ１１は、セットした弦を走査し、押弦されている箇所があれば高音側から優先してその箇所のフレット位置を取得する。これにより、ＣＰＵ１１は、何れのフレット位置で押弦されているかを検出し、検出したフレット位置をＲＯＭ１２に記憶する。
【００６５】
ステップＳ１２３において、ＣＰＵ１１は、該当する弦のフレット位置を更新する。
【００６６】
ステップＳ１２４において、ＣＰＵ１１は、弦の番号を判定し、６弦目までフレット位置を取得したか否かを判定する。６弦目までフレット位置を取得していない場合、即ち全ての弦のフレット位置を取得していない場合には、ＮＯであると判定されて、処理はステップ１２５に進む。
【００６７】
ステップＳ１２５において、ＣＰＵ１１は、弦の番号をインクリメントし、次の番号の弦をセットする。この処理が終了すると、処理はステップＳ１２２に戻る。即ち、全ての弦のフレット位置を検出するまでの間、ステップＳ１２２乃至Ｓ１２４の処理が繰り返し行われる。
【００６８】
これに対し、６弦目までフレット位置を取得した場合、即ち全ての弦のフレット位置を取得した場合には、ＹＥＳであると判定されて、フレット処理が終了し、即ち図３のステップＳ１４の処理が終了し、処理はステップＳ１５に進む。
【００６９】
以上、図１０を参照して、フレット処理の流れについて説明した。
次に、図１１を参照して、図３のメイン処理のうち、ステップＳ１５のトリガ処理の詳細な流れについて説明する。
【００７０】
図１１は、トリガ処理の流れを説明するフローチャートである。
上述したように、ＣＰＵ１１により、図３のステップＳ１４の処理でフレット処理が終了すると、処理はステップＳ１５に進み、トリガ処理として次のような処理が実行される。
【００７１】
即ち、図１１のステップＳ１４１において、ＣＰＵ１１は、６本ある弦のうち、１弦目をセットする。
【００７２】
ステップＳ１４２において、ＣＰＵ１１は、弦の振動レベルを取得する。
図１２を参照して弦の振動レベルの取得方法について説明する。
図１２は、各弦毎に振動レベルを取得するトリガ検出回路ピックアップ２３を示す図である。トリガ検出回路ピックアップ２３は、ピックアップ（〜センサアンプ）５１と、整流回路５２と、積分回路５３と、を備える。
【００７３】
初めに、各弦に設けられたピックアップ５１は、複数の弦のうち１つの弦の振動の波形Ｓ１を取得する。
次に、整流回路５２は、取得した波形Ｓ１を全波整流して片側のみの整流の波形Ｓ２を生成する。
次に、積分回路５３は、片側のみに整流した波形Ｓ２を積分して、滑らかな包絡線の波形Ｓ３を生成する。包絡線の波形Ｓ３は、弦毎に６本生成され、これを図２のＡＤコンバータ１８で取り込み、生成された包絡線のレベルを検出することで、ＣＰＵ１１は、ＯＦＦ中に所定のレベル（ＯＮ閾値）を超えたら現在のステータスをＯＮにし、ＯＮ中に所定のレベル（ＯＦＦ閾値）を下回ると現在のステータスをＯＦＦにする。具体的には、後述のステップＳ１４３乃至ステップＳ１５３の処理により判断する。
【００７４】
図１１のステップＳ１４３において、ＣＰＵ１１は、現在のステータスはＯＦＦ中であるか否かを判定する。現在のステータスがＯＦＦ中である場合には、処理はステップＳ１４４に進む。
【００７５】
ステップＳ１４４において、ＣＰＵ１１は、弦の振動レベルはＯＮ閾値を超えたか否かを判定する。弦の信号レベルはＯＮ閾値を超えていない場合には、処理はステップＳ１５２に進む。即ち、現在のステータスがＯＦＦ中である場合には、弦の信号レベルがＯＮ閾値を超えるまでの間、現在のステータスはＯＦＦのまま設定される。これに対し、弦の信号レベルはＯＮ閾値を超えた場合には、処理はステップＳ１４５に進む。
【００７６】
ステップＳ１４５において、ＣＰＵ１１は、後述の図１３を参照して説明するフレット音階変換処理を行う。フレット音階変換処理では、ＣＰＵ１１は、現在のコードと、フレット位置、弦の番号とに基づいて変換音を取得する処理を行う。フレット音階変換処理が終了すると、処理はステップＳ１４６に進む。
【００７７】
ステップＳ１４６において、ＣＰＵ１１は、ステップＳ１４５において変換された音階で発音指示を行う。
ステップＳ１４７において、ＣＰＵ１１は、該当する音階の現在のステータスをＯＮ中に変更する。
【００７８】
これに対して、ステップＳ１４３において、ＣＰＵ１１は、現在のステータスはＯＦＦ中ではない、即ち現在のステータスはＯＮ中である場合には、処理はステップＳ１４８に進む。
【００７９】
ステップＳ１４８において、ＣＰＵ１１は、弦の振動レベルはＯＦＦ閾値を超えたか、即ち、ＯＦＦ閾値を下回ったか否かを判定する。弦の信号レベルはＯＦＦ閾値を超えた（下回った）場合には、処理はステップＳ１５２に進む。即ち、現在のステータスがＯＮ中である場合には、弦の信号レベルがＯＦＦ閾値を超える（下回る）までの間、現在のステータスはＯＮのまま設定される。これに対し、弦の信号レベルはＯＦＦ閾値を超えた（下回った）場合には、処理はステップＳ１４９に進む。
【００８０】
ステップＳ１４９において、ＣＰＵ１１は、ＯＦＦ閾値を超えた弦に該当する音階を取得する。
ステップＳ１５０において、ＣＰＵ１１は、ステップＳ１４９において取得した音階の消音指示を行う。
【００８１】
ステップＳ１５１において、ＣＰＵ１１は、該当する音階の現在のステータスをＯＦＦ中に変更する。この処理が終了すると、処理はステップＳ１５２に進む。
【００８２】
ステップＳ１５２において、ＣＰＵ１１は、６弦目がセットされているか否かを判定する。この処理では、ＣＰＵ１１は、全ての弦について処理が行われたか否かを判定する。６弦目がセットされていない場合、即ち、全ての弦について処理が行われていない場合には、処理はステップＳ１５３に進む。
【００８３】
ステップＳ１５３において、ＣＰＵ１１は、弦の番号を１インクリメントしてセットし、処理はステップＳ１４２に戻る。即ち、全ての弦について処理が行われるまでの間、ステップＳ１４２乃至Ｓ１５３の処理が繰り返し行われる。
これに対して、６弦目がセットされている場合には、ステップＳ１５２においてＹＥＳであると判定されてトリガ処理が終了し、即ち図３のステップＳ１５の処理が終了し、処理はステップＳ１６に進む。
【００８４】
以上、図１１を参照して、トリガ処理の流れについて説明した。
次に、図１３を参照して、図１１のトリガ処理のうち、ステップＳ１４５のフレット音階変換処理の詳細な流れについて説明する。
【００８５】
図１３は、フレット音階変換処理の流れを説明するフローチャートである。
上述したように、ＣＰＵ１１により、図１１のステップＳ１４４の処理でＯＮ閾値を超えたと判定されると、処理はステップＳ１４５に進み、フレット音階変換処理として次のような処理が実行される。この処理では、ユーザにより実際にはコードに合致しないコードに対応するフレット位置が押弦されている場合であっても、コードを構成するフレット位置に近似する各弦のフレット位置に基づく変換音を取得する処理を行う。
【００８６】
即ち、図１３のステップＳ１６１において、ＣＰＵ１１は、現在のコードを取得する。具体的には、ＣＰＵ１１は、図９のステップＳ１０４の処理において更新したギターのコードに対応する現在のコード（ルート及びコード種）を取得する。
ここで、図１４を参照してＲＯＭ１２に格納されている音階テーブルの構造について説明する。
【００８７】
図１４は、ＲＯＭ１２に格納されている音階テーブルの構造例である。
コード毎の音階テーブルは、０フレット（開放）〜１２フレットまでの１３個（ｂｙｔｅ）の音階を１〜６弦分持っている。即ち、コードに対応して各弦のフレット位置に近似するフレット位置の情報が格納されている。これを１２種類のルートと、４種類のコード種分持っている。なお、本実施形態においては、コード種は４種類としているがこれに限られるものではない。
ここで、図１５を参照して、ＲＯＭ１２に格納されている図１４の音階テーブルのうち、Ｃのコードに対応する音階テーブルの構造について説明する。
なお、本実施形態においては、Ｃのコードに対応する音階テーブルについてのみ説明するが、その他のコードに対応する音階テーブルについてもそれぞれＲＯＭ１２に格納されている。
【００８８】
図１５は、ＲＯＭ１２に格納されているＣのコードに対応する音階テーブルの構造例である。
図１５は、現在のコードが「Ｃ」である場合に取得される音階テーブルである。
音階テーブルとは、各弦と各フレットとに対応付けられた音階を示すテーブルである。従って、音階テーブルの構造は、このような関係を示すものであれば足り、特に限定されないが、本実施形態では図１５に示すような行列構造となっている。
【００８９】
図１５に示す音階テーブルは行列構造を有しているため、以下、図１５中横方向の項目の集合体を「行」と呼び、同図中縦方向の項目の集合体を「列」と呼ぶ。
図１５に示す音階テーブルでは、１〜６弦までの各弦に対応した各行には、０フレット（開放）〜１２フレットまでの１３個の各フレット毎に対応付けられた音階が各列に対応付けられて配置されている。
音階テーブルには、現在のコードを構成するコード構成音に必要な押弦されるべき各弦のフレット位置の音階と同じ音階が、当該フレット位置に近似するフレット位置、即ち当該フレット位置と距離的に近い位置に配置されている。言い換えると、音階テーブルには、現在のコードを構成するコード構成音のみが配置されており、音階テーブルに配置されている各音階は、押弦されたフレット位置に最も距離の近い、コード構成音の音階に収束させるように配置されている。
従って、ユーザにより誤って現在のコードを構成するコード構成音に必要な押弦されるべき各弦のフレット位置とは異なるフレット位置が押弦された場合であっても、ＣＰＵ１１は、現在のコードを構成する音階を取得することができる。
【００９０】
具体的には、ユーザがＬＯＷポジションで「Ｃ」のコードを演奏する場合には、第１弦（Ｅ４）及び第３弦（Ｇ３）を開放し、第２弦の第１フレット（Ｃ４）、第４弦の第２フレット（Ｅ３）及び、第５弦の第３フレット（Ｃ３）を押弦する必要がある。従って、現在のコード「Ｃ」を構成する音階のうち「Ｅ３」を発音するのに必要な押弦されるべき第４弦のフレット位置は、第２フレットである。音階テーブルには、第４弦の第２フレットと距離的に近い位置である第４弦の第１フレット及び第３フレットにも、第４弦の第２フレットの音階（Ｅ３）と同じ音階（Ｅ３）が配置されている。
このことから、例えば、現在のコードが「Ｃ」である場合にユーザが押弦されるべき第４弦のフレット位置は、第２フレットであるにも関わらず、ユーザが誤って第４弦の第２フレットと距離的に近い位置である第４弦の第１フレット又は第３フレットを押弦してしまった場合であっても、第４弦の第２フレットの音階（Ｅ３）と同じ音階（Ｅ３）が変換音として取得される。
同様に、現在のコード「Ｃ」を構成する音階のうち「Ｃ４」を発音するのに必要な押弦されるべき第２弦のフレット位置は、第１フレットである。音階テーブルには、第２弦の第１フレットと距離的に近い位置である第２弦の第２フレット、第３フレット及び開放弦にも、第２弦の第１フレットの音階（Ｃ４）と同じ音階（Ｃ４）が変換音として配置されている。
同様に、現在のコード「Ｃ」を構成する音階のうち「Ｃ３」を発音するのに必要な押弦されるべき第５弦のフレット位置は、第３フレットである。音階テーブルには、第５弦の第３フレットと距離的に近い位置である第５弦の第１フレット、第２フレット、第４フレット及び第５フレットにも、第５弦の第３フレットの音階（Ｃ３）と同じ音階（Ｃ３）が変換音として配置されている。
同様に、現在のコード「Ｃ」を構成する音階のうち「Ｅ４」を発音するのに必要な押弦されるべき第１弦のフレット位置は、第０フレット（開放弦）である。音階テーブルには、第１弦の第０フレットと距離的に近い位置である第１弦の第１フレットにも、第１弦の第０フレット（開放弦）の音階（Ｅ４）と同じ音階（Ｅ４）が変換音として配置されている。
同様に、現在のコード「Ｃ」を構成する音階のうち「Ｇ３」を発音するのに必要な押弦されるべき第３弦のフレット位置は、第０フレット（開放弦）である。音階テーブルには、第３弦の第０フレットと距離的に近い位置である第３弦の第１フレット及び第２フレットにも、第１弦の第０フレット（開放弦）の音階（Ｇ３）と同じ音階（Ｇ３）が変換音として配置されている。
【００９１】
また、ユーザがＭＩＤポジションで「Ｃ」のコードを演奏する場合には、第１弦の第３フレット（Ｇ４）、第２弦の第５フレット（Ｅ４）、第３弦の第５フレット（Ｃ４）、第４弦の第５フレット（Ｇ３）、第５弦の第３フレット（Ｃ３）、第６弦の第３フレット（Ｇ２）を押弦する必要がある。
従って、ユーザがＭＩＤポジションで現在のコード「Ｃ」を構成する音階のうち「Ｇ４」を発音するのに必要な押弦されるべき第１弦のフレット位置は、第３フレットである。音階テーブルには、第１弦の第３フレットと距離的に近い位置である第１弦の第２フレット、第４フレット及び第５フレットにも、第１弦の第３フレットの音階（Ｇ４）と同じ音階（Ｇ４）が配置されている。このことから、例えば、現在のコードが「Ｃ」である場合にユーザがＬＯＷポジションで押弦されるべきフレット位置から、ＭＩＤポジションで押弦されるべきフレット位置にポジションを変更させることにより、現在のコードを構成する音階の組み合わせをユーザの好みに応じて適宜変更することができる。
【００９２】
図１３のステップＳ１６２において、ＣＰＵ１１は、ステップＳ１６１において取得した該当コード（ルート及びコード種）に基づいて特定した各弦に対応したコードのフレット位置の情報が格納された音階テーブルを取得する。
【００９３】
ステップＳ１６３において、ＣＰＵ１１は、ステップＳ１６２において取得した音階テーブルに基づいて、フレット位置及び弦の番号により変換音を取得する。これにより、現在のコードに対応した音階を得ることができる。この処理が終了すると、フレット音階変換処理が終了し、即ち図１１のステップＳ１４５の処理が終了し、処理はステップＳ１４６に進む。
【００９４】
以上説明したように、本実施形態の発音指示装置１は、
押弦された各弦のフレット位置を取得するフレット位置取得手段と、
外部よりコードを順次取得するコード取得手段と、
前記コード取得手段により取得されたコードに対応する音階テーブルを取得する音階テーブル取得手段と、
前記音階テーブル取得手段により取得された前記音階テーブルを参照して、前記フレット位置取得手段により取得された前記各弦のフレット位置に基づく変換音を取得する変換音取得手段と、
前記変換音取得手段により取得された変換音の発音を指示する発音指示手段と、を備える。
この場合、ユーザは、例えば曲の進行上、コードがＣの区間においては、どのフレット位置が押弦された場合であっても、Ｃの構成音であるＣ，Ｅ，Ｇの３つの音階の何れかが発音され、フレット位置によっては、オクターブが異なる音階で発音される。従って、フレット位置を操作する左手のポジションによって、音程の表現を加えることが可能となる。これにより、スキル（コードの知識）が無くても直感的に演奏でき、かつ、押弦されたフレット位置の高低により、音高を変化させることを可能とし、表現力と演奏感覚とを高めることができる。
【００９５】
更に、本実施形態の発音指示装置１の前記音階テーブルは、前記コードに対応する各弦のフレット位置に近似するフレット位置の情報を格納し、
前記変換音取得手段は、前記音階テーブルを参照して、前記音階テーブルに格納された前記各弦のフレット位置の情報に基づき、前記フレット位置取得手段により取得された前記各弦のフレット位置に近似する前記各弦のフレット位置に基づく変換音を取得してもよい。
この場合、フレット位置を操作する左手のポジションによって、各弦のフレット位置に近似する各弦のフレット位置に基づきコードに対応する変換音が取得されることから、スキル（コードの知識）が無いユーザであっても、適当に左手で弾きならして演奏するだけで、直感的に演奏でき、かつ、押弦されたフレット位置の高低により、音高を変化させることを可能とし、表現力と演奏感覚とを高めることができる。
【００９６】
以上、本発明の第１実施形態に係る発音指示装置１について説明した。
次に、本発明の第２実施形態に係る発音指示装置１について説明する。
【００９７】
［第２実施形態］
本発明の第２実施形態に係る発音指示装置１は、第１実施形態に係る発音指示装置１と基本的に同様のハードウェア構成及び機能的構成を取ることができる。
従って、図２は、第２実施形態に係る発音指示装置１のハードウェアの構成を示すブロック図でもある。
【００９８】
更に、第２実施形態に係る発音指示装置１が実行するメイン処理、タイマ割込処理、ソング処理、ソング開始処理、ソング再生処理、イベント処理、フレット処理、トリガ処理、フレット音階変換処理は、第１実施形態に係る各処理と基本的に同様の流れとなる。従って、図３、図４、図５、図６、図８、図９、図１０、図１１、図１３は、第２実施形態に係るメイン処理、タイマ割込処理、ソング処理、ソング開始処理、ソング再生処理、イベント処理、フレット処理、トリガ処理、フレット音階変換処理の流れを説明するフローチャートでもある。
ただし、第２実施形態では、フレット音階変換処理のうちステップＳ１６３の処理については、第１実施形態で採用された図１３のフローチャートではなく、図１６のフローチャートが採用される。
図１６は、図２の発音指示装置１が実行する、第２実施形態に係るフレット音階変換処理の流れを説明するフローチャートである。
【００９９】
上述した第１実施形態における図５のフレット音階変換処理では、取得した音階テーブルに基づいて、フレット位置及び弦の番号により変換音を取得しているのに対して、第２実施形態における図１６のフレット音階変換処理では、６弦分のフレット位置の平均値によりポジションを決定し、決定したポジション及びフレット位置により変換音を取得している点が差異点である。詳細には、第２実施形態では、第１実施形態に係るステップＳ１６３の処理に代えて、ステップＳ１８３及び１８４の処理が実行される点が差異点である。
そこで、以下、このような差異点について主に説明し、一致点の説明は適宜省略する。
【０１００】
図１７を参照してＲＯＭ１２に格納されている第２実施形態の音階テーブルの構造について説明する。
【０１０１】
図１７は、ＲＯＭ１２に格納されている第２実施形態の音階テーブルの構造例である。
コード毎の音階テーブルは、コード毎にＬＯＷポジション、ＭＩＤポジション、ＨＩＧＨポジションのデータを持つ。１つのポジションは、それぞれ１弦〜６弦までの６弦分の音階を持つ。具体的には、音階テーブルは、ＬＯＷポジションとして、Ｅ４，Ｇ４，Ｇ３，Ｅ３，Ｃ３，Ｅ２の６弦分の音階を格納している。また、音階テーブルは、ＭＩＤポジションとして、Ｇ４，Ｅ４，Ｃ４，Ｇ３，Ｃ３，Ｇ２の６弦分の音階を格納している。また、音階テーブルは、ＨＩＧＨポジションとして、Ｃ５，Ｇ４，Ｅ４，Ｃ４，Ｇ３，Ｃ３の６弦分の音階を格納している。なお、本実施形態においては、各ポジションにおいて６弦分の音階を格納しているがこれに限られるものではない。
ここで、図１８を参照して、ＲＯＭ１２に格納されている図１７の音階テーブルのうち、Ｃのコードに対応する音階テーブルの構造について説明する。
なお、本実施形態においては、Ｃのコードに対応する音階テーブルについてのみ説明するが、その他のコードに対応する音階テーブルについてもそれぞれＲＯＭ１２に格納されている。
【０１０２】
図１８は、ＲＯＭ１２に格納されているＣのコードに対応する音階テーブルの構造例である。
図１８（１）〜（３）は、現在のコードが「Ｃ」である場合に取得される音階テーブルである。
図１８の第２実施形態の音階テーブルは、図１５の第１実施形態の音階テーブルと略同じ構成である。但し、第１実施形態の音階テーブルは、現在のコードを構成するコード構成音を発音するのに必要な押弦されるべき各弦のフレット位置の音階と同じ音階が、当該フレット位置に近似するフレット位置、即ち当該フレット位置と距離的に近い位置に配置されている。これに対し第２実施形態の音階テーブルは、押弦される際のポジションと、コードに対応する各弦の情報が格納されている。
即ち、第２実施形態の音階テーブルは、現在のコードを構成するコード構成音に必要な押弦されるべき各弦のフレット位置の音階が、押弦される際の複数のポジションに対応して配置されている。言い換えると、音階テーブルに配置されている各変換音は、押弦されたフレット位置の平均値に基づいて、その平均値に対応するポジションのコードの音階に収束させるように配置されている。
本実施形態では、押弦されたフレット位置の平均値が「３」未満である場合には、ＬＯＷポジションのコードの変換音が取得される。また、押弦されたフレット位置の平均値が「３」以上「６」未満である場合には、ＭＩＤポジションの変換音が取得される。また、押弦されたフレット位置の平均値が「６」以上である場合には、ＨＩＧＨポジションの変換音が取得される。
例えばユーザが、各弦の２フレット付近を中心に押弦して演奏した場合と、各弦の４フレット付近を中心に押弦して演奏した場合と、では異なるポジションのフレット位置が押弦されていると判断される。そして、判断されたポジションに対応する変換音が取得される。
【０１０３】
具体的には、ユーザが「Ｃ」のコードを演奏する場合には、第２弦の第１フレット（Ｃ４）、第４弦の第２フレット（Ｅ３）及び、第５弦の第３フレット（Ｃ３）を押弦する必要がある。従って、現在のコード「Ｃ」を構成する音階のうち「Ｅ３」を発音するのに必要な押弦されるべき第４弦のフレット位置は、第２フレットである。
ここで、ユーザが例えば、第１弦目を開放し、第２弦目の第１フレットを押弦し、第３弦目を開放し、第４弦目の第１フレットを押弦し、第５弦目の第３フレットを押弦し、第６弦目を開放した場合について説明する。
この場合、現在のコード「Ｃ」を構成する音階のうち「Ｅ３」を発音するのに必要な押弦されるべき第４弦のフレット位置は第２フレットであるにも関わらず、誤って第１フレットが押弦されている。ここで、ＣＰＵ１１は、各弦が押弦されたフレット位置に基づいて、各フレット位置の平均値を算出して押弦されたポジションを決定する。
この場合、各弦が押弦されたフレット位置の平均値は、開放弦を０フレットとすると、（０フレット（第１弦）＋１フレット（第２弦）＋０フレット（第３弦）＋１フレット（第４弦）＋３フレット（第５弦）＋０フレット（第６弦））／６＝「０．８３」フレットである。従って、ＣＰＵ１１は、押弦されたフレット位置の平均値が「３」未満であることから、現在のポジションはＬＯＷポジションであると決定する。
このことから、例えば、現在のコードが「Ｃ」である場合に、ＬＯＷポジション付近のフレット位置を押弦して演奏した場合には、現在のコード「Ｃ」である場合にユーザが押弦されるべき第４弦のフレット位置は、第２フレットであるにも関わらず、ユーザが誤って第４弦の第２フレットと距離的に近い位置である第４弦の第１フレットを押弦してしまった場合であっても、ＣＰＵ１１は、図１８（１）の音階テーブルを参照して第４弦の第２フレットの音階（Ｅ３）と同じ音階（Ｅ３）を変換音として取得する。
同様に、各弦が押弦されたフレット位置の平均値が、「３」以上「６」未満である場合には、ＣＰＵ１１は、現在のポジションはＭＩＤポジションであると決定する。この場合、ユーザが誤って現在のコードの音階を発音するのに必要なフレット位置とは異なるフレット位置を押弦した場合であっても、ＣＰＵ１１は、図１８（２）の音階テーブルを参照して、現在のコードの音階を発音するのに必要なフレット位置の音階と同じ音階を変換音として取得する。
同様に、各弦が押弦されたフレット位置の平均値が、「６」以上である場合には、ＣＰＵ１１は、現在のポジションはＨＩＧＨポジションであると決定する。この場合、ユーザが誤って現在のコードの音階を発音するのに必要なフレット位置とは異なるフレット位置を押弦した場合であっても、ＣＰＵ１１は、図１８（３）の音階テーブルを参照して、現在のコードの音階を発音するのに必要なフレット位置の音階と同じ音階を変換音として取得する。
【０１０４】
図１６のステップＳ１８２において、ＣＰＵ１１は、ステップＳ１８１において取得した該当コード（ルート及びコード種）に基づいて特定した各弦に対応したコードのフレット位置の情報が格納された音階テーブルを取得する。本実施形態において取得されるコードのフレット位置の情報が格納された音階テーブルは、ＬＯＷポジション，ＭＩＤポジション，ＨＩＧＨポジションの３つのポジションに対応する音階データである。
【０１０５】
図１６のステップＳ１８３において、ＣＰＵ１１は、６弦分のフレット位置の平均値よりポジションを決定する。具体的には、ＣＰＵ１１は、現在押弦されているフレット位置の平均値を算出する。そして、算出した平均値に基づいて複数のポジション（本実施形態においては３つのポジション）の中から１つのポジションを決定する。
【０１０６】
ステップＳ１８４において、ＣＰＵ１１は、ステップＳ１８３で決定したポジション及び弦の番号に基づき、変換音を取得する。この処理が終了すると、フレット音階変換処理が終了し、即ち図１１のステップＳ１４５の処理が終了し、処理はステップＳ１４６に進む。
【０１０７】
以上説明したように、本実施形態の発音指示装置１は、前記フレット位置取得手段により取得された前記各弦のフレット位置に基づいて、複数のポジションの中から押弦されたポジションを決定するポジション決定手段を更に備え、
前記変換音取得手段は、前記フレット位置取得手段により取得された前記各弦のフレット位置及び前記ポジション決定手段により決定された前記ポジションに基づき前記音階テーブルのコードに対応する変換音を取得してもよい。
この場合、音階テーブルに格納するデータは、ポジションに対応するコードに対応する各弦の情報のみで足りるため、格納するデータ量を削減することができる。更に、ユーザが適当な押さえ方で押弦した場合であっても、フレット位置を操作する左手のポジションによって、音程の表現を加えることが可能となる。これにより、スキル（コードの知識）が無くても直感的に演奏でき、かつ、押弦されたフレット位置の高低により、音高を変化させることを可能とし、表現力と演奏感覚とを高めることができる。
【０１０８】
更に、本実施形態の発音指示装置１の前記音階テーブルは、押弦される際の前記ポジションと、前記コードに対応する各弦の情報とを格納し、
前記変換音取得手段は、前記音階テーブルを参照して、前記ポジション決定手段により決定された前記ポジション及び前記各弦の情報に基づく変換音を取得してもよい。
この場合、フレット位置を操作する左手のポジション及び弦に基づき変換音が取得されることから、スキル（コードの知識）が無いユーザであっても、適当に左手で弾きならして演奏するだけで、直感的に演奏でき、かつ、押弦されたフレット位置の高低により、音高を変化させることを可能とし、表現力と演奏感覚とを高めることができる。
【０１０９】
なお、本発明は、上述の実施形態に限定されるものではなく、本発明の目的を達成できる範囲での変形、改良等は本発明に含まれるものである。
【０１１０】
上述の実施形態では、本発明が適用される電子機器は、エレクトリック・ギター等の発音指示装置１を例として説明したが、特にこれに限定されない。本発明は、コードを発音できる発音機能を有する電子楽器一般に適用することができる。具体的には、例えば、本発明は、キーボードや、ベース等に適用可能である。
【０１１１】
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。また例えば、上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。換言すると、図３乃至図１３のフローチャートにおいて説明した機能的構成は例示に過ぎず、特に限定されない。即ち、上述した一連の処理を全体として実行できる機能が発音指示装置１に備えられていれば足り、この機能を実現するためにどのような機能的構成を用いるのかは特に図３乃至図１３のフローチャートの例に限定されない。また、１つの機能的構成は、ハードウェア単体で構成してもよいし、ソフトウェア単体で構成してもよいし、それらの組み合わせで構成してもよい。
【０１１２】
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、コンピュータ等にネットワークや記録媒体からインストールされる。コンピュータは、専用のハードウェアに組み込まれているコンピュータであってもよい。また、コンピュータは、各種のプログラムをインストールすることで、各種の機能を実行することが可能なコンピュータ、例えば汎用のパーソナルコンピュータであってもよい。
【０１１３】
このようなプログラムを含む記録媒体は、ユーザにプログラムを提供するために装置本体とは別に配布されるリムーバブルメディア（図示せず）により構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される記録媒体等で構成される。リムーバブルメディアは、例えば、磁気ディスク（フロッピディスクを含む）、光ディスク、又は光磁気ディスク等により構成される。光ディスクは、例えば、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ），ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等により構成される。光磁気ディスクは、ＭＤ（Ｍｉｎｉ−Ｄｉｓｋ）等により構成される。また、装置本体に予め組み込まれた状態でユーザに提供される記録媒体は、例えば、プログラムが記録されている図２のＲＯＭ１２や、図示せぬハードディスク等で構成される。
【０１１４】
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的或いは個別に実行される処理をも含むものである。
【０１１５】
以下に、本願の出願当初の特許請求の範囲に記載された発明を付記する。
［付記１］
押弦された各弦のフレット位置を取得するフレット位置取得手段と、
外部よりコードを順次取得するコード取得手段と、
前記コード取得手段により取得されたコードに対応する音階テーブルを取得する音階テーブル取得手段と、
前記音階テーブル取得手段により取得された前記音階テーブルを参照して、前記フレット位置取得手段により取得された前記各弦のフレット位置に基づく変換音を取得する変換音取得手段と、
前記変換音取得手段により取得された変換音の発音を指示する発音指示手段と、
を備えたことを特徴とする発音指示装置。
［付記２］
前記音階テーブルは、前記コードに対応する各弦のフレット位置に近似するフレット位置の情報を格納し、
前記変換音取得手段は、前記音階テーブルを参照して、前記音階テーブルに格納された前記各弦のフレット位置の情報に基づき、前記フレット位置取得手段により取得された前記各弦のフレット位置に近似する前記各弦のフレット位置に基づく変換音を取得することを特徴とする付記１に記載の発音指示装置。
［付記３］
前記フレット位置取得手段により取得された前記各弦のフレット位置に基づいて、複数のポジションの中から押弦されたポジションを決定するポジション決定手段を更に備え、
前記変換音取得手段は、前記フレット位置取得手段により取得された前記各弦のフレット位置及び前記ポジション決定手段により決定された前記ポジションに基づき前記音階テーブルのコードに対応する変換音を取得することを特徴とする付記１に記載の発音指示装置。
［付記４］
前記音階テーブルは、押弦される際の前記ポジションと、前記コードに対応する各弦の情報とを格納し、
前記変換音取得手段は、前記音階テーブルを参照して、前記ポジション決定手段により決定された前記ポジション及び前記各弦の情報に基づく変換音を取得することを特徴とする付記３に記載の発音指示装置。
［付記５］
音を発生する制御を実行する発音指示方法において、
押弦された各弦のフレット位置を取得するフレット位置取得ステップと、
外部よりコードを順次取得するコード取得ステップと、
前記コード取得ステップにより取得されたコードに対応する音階テーブルを取得する音階テーブル取得ステップと、
前記音階テーブル取得ステップにより取得された前記音階テーブルを参照して、前記フレット位置取得ステップにより取得された前記各弦のフレット位置に基づき変換音を取得する変換音取得ステップと、
前記変換音取得ステップにより取得された変換音の発音を指示する発音指示ステップと、
を含むことを特徴とする発音指示方法。
［付記６］
音を発生する制御を実行するコンピュータを、
押弦された各弦のフレット位置を取得するフレット位置取得手段、
外部よりコードを順次取得するコード取得手段、
前記コード取得手段により取得されたコードに対応する音階テーブルを取得する音階テーブル取得手段、
前記音階テーブル取得手段により取得された前記音階テーブルを参照して、前記フレット位置取得手段により取得された前記各弦のフレット位置に基づく変換音を取得する変換音取得手段、
前記変換音取得手段により取得された変換音に基づいて音を発生する音発生手段、
として機能させることを特徴とするプログラム。
【符号の説明】
【０１１６】
１・・・発音指示装置、１１・・・ＣＰＵ、１２・・・ＲＯＭ、１３・・・ＲＡＭ、１４・・・バス、１５・・・入出力インターフェース１５・・・スイッチ検出回路、１７・・・フレット検出回路、１８・・・ＡＤコンバータ、１９・・・音源システム、２１・・・機能スイッチ群、２２・・・フレットスイッチ群、２３・・・トリガ検出回路ピックアップ、３０・・・外部音源、４１・・・アンプ回路、４２・・・スピーカ
【図１】
2013064874.tif 000003
【図２】
2013064874.tif 000004
【図３】
2013064874.tif 000005
【図４】
2013064874.tif 000006
【図５】
2013064874.tif 000007
【図６】
2013064874.tif 000008
【図７】
2013064874.tif 000009
【図８】
2013064874.tif 000010
【図９】
2013064874.tif 000011
【図１０】
2013064874.tif 000012
【図１１】
2013064874.tif 000013
【図１２】
2013064874.tif 000014
【図１３】
2013064874.tif 000015
【図１４】
2013064874.tif 000016
【図１５】
2013064874.tif 000017
【図１６】
2013064874.tif 000018
【図１７】
2013064874.tif 000019
【図１８】
2013064874.tif 000020