(57)【要約】【課題】簡単な操作で典型的なコード進行の伴奏を繰り返し生成することができ、これにより、ユーザが、特に初心者であったとしても、アドリブ演奏の練習に集中することが可能となる自動伴奏装置および自動伴奏方法を実現するためのプログラムを提供する。【解決手段】カデンツ指定ボタン３ａによってカデンツ種が指定され、鍵盤１ａのコード指定鍵域に対する押鍵によってコードが入力されると、入力されたコードが、指定されたカデンツ種のトニックに設定され、このトニックのルートとタイプに応じて、指定されたカデンツ種を構成する各コード機能がそれぞれコードに変換されてコード進行情報が生成され、このコード進行情報と指定されているスタイル情報を用いて、セクション毎の伴奏演奏情報が生成される。そして、スタイル・オート・ボタン２ａが押下された後、スタート／ストップボタン２ｂが押下されて、自動伴奏が開始すると、生成された伴奏演奏情報が再生される。【選択図】図２
2009229673.tif 000002
【特許請求の範囲】
【請求項１】
カデンツの種類を指定する第１の指定手段と、
コードを指定する第２の指定手段と、
前記第１および第２の指定手段によってそれぞれ指定されたカデンツ種およびコードに応じたコード進行を含む伴奏を繰り返し生成する伴奏生成手段と
を有することを特徴とする自動伴奏装置。
【請求項２】
前記第２の指定手段によって指定されたコードを、前記第１の指定手段によって指定されたカデンツ種のトニックに設定する設定手段をさらに有し、
前記伴奏生成手段は、前記指定されたカデンツ種を、前記設定手段によってトニックに設定されたコードに基づいて変換することで、前記コード進行を生成することを特徴とする請求項１に記載の自動伴奏装置。
【請求項３】
前記伴奏生成手段によって伴奏が繰り返し生成されているときに、前記第２の指定手段によって新たなコードが指定された場合には、当該伴奏に含まれるコード進行を構成する複数のコードのうち、前記新たなコードが指定された時点に生成されている伴奏に対応するコードの機能を検出し、該検出したコードの機能に基づいて、前記新たなコードの、トニックに相当するコードを検出する検出手段と、
該検出手段によって検出されたコードを、前記第１の指定手段によって指定されたカデンツ種のトニックに設定する設定手段と
をさらに有し、
前記伴奏生成手段は、前記指定されたカデンツ種を、前記設定手段によってトニックに設定されたコードに基づいて変換することで、新たなコード進行を生成することを特徴とする請求項１に記載の自動伴奏装置。
【請求項４】
前記伴奏生成手段によって伴奏が繰り返し生成されているときに、前記第１および／または第２の指定手段によって新たなカデンツ種および／または新たなコードが指定された場合には、当該新たなカデンツ種および／または新たなコードに応じた新たなコード進行を含む新たな伴奏を再生成する伴奏再生成手段と、
現在生成中の伴奏が次の繰り返し回に移行するときに、当該伴奏を前記伴奏再生成手段によって生成された新たな伴奏に移行させるように前記伴奏生成手段を制御する制御手段と
をさらに有することを特徴とする請求項１に記載の自動伴奏装置。
【請求項５】
カデンツの長さを指定する第３の指定手段をさらに有し、
前記伴奏生成手段は、前記第３の指定手段によって指定されたカデンツ長に相当するコード進行を生成することを特徴とする請求項１に記載の自動伴奏装置。
【請求項６】
第１および第２の指定手段によってそれぞれ指定されたカデンツ種およびコードに応じたコード進行を含む伴奏を繰り返し生成する伴奏生成手順をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、伴奏を自動的に生成する自動伴奏装置および自動伴奏方法を実現するためのプログラムに関する。
【背景技術】
【０００２】
伴奏を自動的に生成する自動伴奏装置は、従来から知られている。
【０００３】
このような自動伴奏装置として、７つの和音種類を３つの和音グループに分け、複数のリズム種類のそれぞれについて、和音グループ毎に１つの伴奏パターンを記憶し、鍵盤の押鍵により指定された和音名およびリズム選択スイッチにより選択されたリズム種類に応じて和音グループを決定し、その和音グループに対応して記憶された伴奏パターンの各音高を、指定された和音名に基づいて変換して発音するようにしたものがある（たとえば、特許文献１参照）。
【特許文献１】特開平１−１７９０９１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、典型的なコード（和音）進行の伴奏を繰り返し生成しながら、その伴奏に合わせてアドリブ演奏を練習したいという、ユーザの要望がある。典型的なコード進行を生成する方法として、たとえばカデンツ（Kadenz）を用いた方法があるが、カデンツの種類を直接指定し、そのカデンツ種に応じてコード進行を生成し、これを繰り返すことで伴奏を生成するようにした自動伴奏装置は知られていない。したがって、上記ユーザの要望に、指定したカデンツ種に応じて、典型的なコード進行の伴奏を繰り返し生成する手法で応えることはできなかった。
【０００５】
なお、伴奏生成用データを構成するコード進行を、ユーザが入力した音高情報に基づいて他のコード進行に変換することで、伴奏を生成するようにした自動伴奏装置は知られているものの、このような自動伴奏装置では、コードの切り替わり目で一々音高情報を入力しなければならないので、特に初心者のユーザにとっては、アドリブ演奏の練習に集中することができなかった。また、コード進行を変換するための音高情報を、鍵盤を用いて入力する場合には通常、アドリブ演奏は右手で、音高情報の入力は左手で行うが、左手は音高情報の入力に加えて、ピッチベンドやモジュレーションなどの楽音効果を加えるための操作子の操作にも用いられるので、その操作中に音高情報を入力することは困難であった。
【０００６】
本発明は、この点に着目してなされたものであり、簡単な操作で典型的なコード進行の伴奏を繰り返し生成することができ、これにより、ユーザが、特に初心者であったとしても、アドリブ演奏の練習に集中することが可能となる自動伴奏装置および自動伴奏方法を実現するためのプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、請求項１に記載の自動伴奏装置は、カデンツの種類を指定する第１の指定手段と、コードを指定する第２の指定手段と、前記第１および第２の指定手段によってそれぞれ指定されたカデンツ種およびコードに応じたコード進行を含む伴奏を繰り返し生成する伴奏生成手段とを有することを特徴とする。
【０００８】
請求項２に記載の自動伴奏装置は、請求項１の自動伴奏装置において、前記第２の指定手段によって指定されたコードを、前記第１の指定手段によって指定されたカデンツ種のトニックに設定する設定手段をさらに有し、前記伴奏生成手段は、前記指定されたカデンツ種を、前記設定手段によってトニックに設定されたコードに基づいて変換することで、前記コード進行を生成することを特徴とする。
【０００９】
請求項３に記載の自動伴奏装置は、請求項１の自動伴奏装置において、前記伴奏生成手段によって伴奏が繰り返し生成されているときに、前記第２の指定手段によって新たなコードが指定された場合には、当該伴奏に含まれるコード進行を構成する複数のコードのうち、前記新たなコードが指定された時点に生成されている伴奏に対応するコードの機能を検出し、該検出したコードの機能に基づいて、前記新たなコードの、トニックに相当するコードを検出する検出手段と、該検出手段によって検出されたコードを、前記第１の指定手段によって指定されたカデンツ種のトニックに設定する設定手段とをさらに有し、前記伴奏生成手段は、前記指定されたカデンツ種を、前記設定手段によってトニックに設定されたコードに基づいて変換することで、新たなコード進行を生成することを特徴とする。
【００１０】
請求項４に記載の自動伴奏装置は、請求項１の自動伴奏装置において、前記伴奏生成手段によって伴奏が繰り返し生成されているときに、前記第１および／または第２の指定手段によって新たなカデンツ種および／または新たなコードが指定された場合には、当該新たなカデンツ種および／または新たなコードに応じた新たなコード進行を含む新たな伴奏を再生成する伴奏再生成手段と、現在生成中の伴奏が次の繰り返し回に移行するときに、当該伴奏を前記伴奏再生成手段によって生成された新たな伴奏に移行させるように前記伴奏生成手段を制御する制御手段とをさらに有することを特徴とする。
【００１１】
請求項５に記載の自動伴奏装置は、請求項１の自動伴奏装置において、カデンツの長さを指定する第３の指定手段をさらに有し、前記伴奏生成手段は、前記第３の指定手段によって指定されたカデンツ長に相当するコード進行を生成することを特徴とする。
【００１２】
上記目的を達成するため、請求項６に記載のプログラムは、請求項１と同様の技術的思想によって実現できる。
【発明の効果】
【００１３】
請求項１または６に記載の発明によれば、カデンツ種とコードを指定するだけで、当該カデンツ種およびコードに応じたコード進行を含む伴奏が繰り返し生成されるので、簡単な操作で典型的なコード進行の伴奏を繰り返し生成することができ、これにより、ユーザが、特に初心者であったとしても、アドリブ演奏の練習に集中することが可能となる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。
【００１５】
図１は、本発明の第１の実施の形態に係る自動伴奏装置の概略構成を示すブロック図である。
【００１６】
同図に示すように、本実施の形態の自動伴奏装置は、音高情報を含む演奏データやコード（和音）を入力するための鍵盤を含む演奏操作子１と、各種情報を入力するための複数のスイッチやダイアル、ジョイスティックを含むパネル操作子２と、カデンツに関連する情報を含む各種情報の種類や値を入力するとともに、各種情報を表示するためのタッチパネル３と、演奏操作子１の操作状態を検出する検出回路４と、パネル操作子２の操作状態を検出する検出回路５と、ユーザによるタッチパネル３上の操作位置や操作圧力などの押圧操作を検出する検出回路６と、カデンツの種類や長さなどを入力するためのＧＵＩ（graphical user interface）を含む各種情報をタッチパネル３上に表示させる表示回路７と、装置全体の制御を司るＣＰＵ８と、該ＣＰＵ８が実行する制御プログラムや、各種テーブルデータ等を記憶するＲＯＭ９と、楽曲データ、各種入力情報および演算結果等を一時的に記憶するＲＡＭ１０と、タイマ割込み処理における割込み時間や各種時間を計時するタイマ１１と、前記制御プログラムを含む各種アプリケーションプログラムや各種楽曲データ、各種データ等を記憶する外部記憶装置１２と、外部からのＭＩＤＩ（musical instrument digital interface）メッセージを入力したり、ＭＩＤＩメッセージを外部に出力したりするＭＩＤＩインターフェース（Ｉ／Ｆ）１３と、通信ネットワーク１０１を介して、たとえばサーバコンピュータ（以下、「サーバ」と略して言う）１０２とデータの送受信を行う通信インターフェース（Ｉ／Ｆ）１４と、演奏操作子１から入力された演奏データや、前記外部記憶装置１２に記憶されたいずれかの楽曲データを再生して得られた演奏データ等を楽音信号に変換する音源回路１５と、該音源回路１５からの楽音信号に各種効果を付与するための効果回路１６と、該効果回路１６からの楽音信号を音響に変換する、たとえば、ＤＡＣ（Digital-to-Analog Converter）やアンプ、スピーカ等のサウンドシステム１７とにより構成されている。
【００１７】
上記構成要素４〜１６は、バス１８を介して相互に接続され、ＣＰＵ８にはタイマ１１が接続され、ＭＩＤＩＩ／Ｆ１３には他のＭＩＤＩ機器１００が接続され、通信Ｉ／Ｆ１４には通信ネットワーク１０１が接続され、音源回路１５には効果回路１６が接続され、効果回路１６にはサウンドシステム１７が接続されている。ここで、通信Ｉ／Ｆ１４および通信ネットワーク１０１は、有線方式のものに限らず、無線方式のものであってもよい。また、両方式のものを備えていてもよい。
【００１８】
外部記憶装置１２としては、たとえば、フレキシブルディスクドライブ（ＦＤＤ）、ハードディスクドライブ（ＨＤＤ）、ＣＤ−ＲＯＭドライブおよび光磁気ディスク（ＭＯ）ドライブ等を挙げることができる。そして、外部記憶装置１２には、前述のように、ＣＰＵ８が実行する制御プログラムも記憶でき、ＲＯＭ９に制御プログラムが記憶されていない場合には、この外部記憶装置１２に制御プログラムを記憶させておき、それをＲＡＭ１０に読み込むことにより、ＲＯＭ９に制御プログラムを記憶している場合と同様の動作をＣＰＵ８にさせることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。
【００１９】
通信Ｉ／Ｆ１４は、上述のように、たとえばＬＡＮ（local area network）やインターネット、電話回線等の通信ネットワーク１０１に接続されており、該通信ネットワーク１０１を介して、サーバ１０２に接続される。外部記憶装置１２に上記各プログラムや各種パラメータが記憶されていない場合には、通信Ｉ／Ｆ１４は、サーバ１０２からプログラムやパラメータをダウンロードするために用いられる。クライアントとなる自動伴奏装置は、通信Ｉ／Ｆ１４および通信ネットワーク１０１を介してサーバ１０２へとプログラムやパラメータのダウンロードを要求するコマンドを送信する。サーバ１０２は、このコマンドを受け、要求されたプログラムやパラメータを、通信ネットワーク１０１を介して自動伴奏装置へと配信し、自動伴奏装置が通信Ｉ／Ｆ１４を介して、これらプログラムやパラメータを受信して外部記憶装置１２に蓄積することにより、ダウンロードが完了する。
【００２０】
なお、本実施の形態では、自動伴奏装置を電子鍵盤楽器上に構築するようにしたが、これに限らず、鍵盤を外部接続した汎用的なＰＣ上に構築してもよい。また、鍵盤楽器の形態に限らず、弦楽器タイプや管楽器タイプ等の形態でもよい。
【００２１】
以上のように構成された自動伴奏装置が実行する制御処理を、まず図２を参照してその概要を説明し、次に図３〜図７を参照して詳細に説明する。
【００２２】
図２は、本実施の形態の自動伴奏装置の平面図であり、同図に示すように、本実施の形態の自動伴奏装置のフロントパネル面には、前記演奏操作子１、パネル操作子２およびタッチパネル３が配置されている。
【００２３】
動作モードとして、カデンツ選択モードが選択されると、タッチパネル３上には、選択可能な複数のカデンツのそれぞれを指定するための複数のカデンツ指定ボタン３ａと、該カデンツ指定ボタン３ａを用いて指定されたカデンツの長さ（以下、「カデンツ長」という）を縮める指示を行うための短縮指示ボタン３ｂと、当該カデンツ長を伸ばす指示を行うための伸長指示ボタン３ｃとが表示される。
【００２４】
まずユーザが、カデンツ指定ボタン３ａのいずれかを、たとえば自身の指でタッチすると、前記ＣＰＵ８は、その指定されたカデンツ種を設定する。カデンツ種が設定されると、そのカデンツ種に対応するカデンツ指定ボタン３ａがハイライト表示される（図示例では、斜線によってハイライト表示を示している）。カデンツ長のデフォルト値は、本実施の形態では、１小節としているので、そのカデンツ長が短い場合には、ユーザは伸長指示ボタン３ｃをタッチすることで、好みの長さに伸ばすことができる。たとえば、伸長指示ボタン３ｃを１回タッチする毎に、カデンツ長が小節単位で伸びるようにすればよい。もちろん、カデンツ長は、小節より短い単位（たとえば、拍）で伸びるようにしてもよいが、説明の便宜上、小節単位で伸びるとする（縮める場合も同様）。なお、本実施の形態では、カデンツ長を１小節より短くできないようにしているので、カデンツ長がデフォルト値の状態で、ユーザが短縮指示ボタン３ｂをタッチしたとしても、カデンツ長は変化しない。もちろん、カデンツ長を１小節より短くすることは理論的には可能であるので、カデンツ長を１小節より短く設定できるようにしてもよい。カデンツ長の現在の設定値は、タッチパネル３上に表示され、図示例では、「８小節」であることが表示されている。
【００２５】
次にユーザが、鍵盤１ａのコード指定鍵域を押鍵することで、好みのコードを指定すると、ＣＰＵ８は、指定されたコードを、現在設定されているカデンツ種のトニックに設定する。トニックとして設定されたコードは、タッチパネル３上に表示される。図示例では、現在のトニックとして“ＤＭ７”が設定されている。ここで、“Ｄ”は「ルート（根音）の音名」を示し、“Ｍ”は「メジャ」を示し、“７”は「セブンス」を示している。
【００２６】
このようにして、カデンツ種、カデンツ長およびトニックとするコードが設定されると、ＣＰＵ８は、設定されたカデンツ種に対応するカデンツ情報を、設定されたカデンツ長になるように伸長し、トニックとして設定されたコードのルートとタイプ（メジャあるいはマイナ）に応じて、伸長されたカデンツ情報をコード進行情報に変換する。そしてＣＰＵ８は、このコード進行情報と指定されているスタイル情報を用いて、各セクションの伴奏演奏情報を生成する。ここで、カデンツ情報からコード進行情報への変換は、変換テーブル（図６参照）を用いて行われるが、その詳細は後述する。また、「セクション」とは、曲の部位のことであり、本実施の形態では、「イントロ」部、「メイン」部および「エンディング」部のいずれかである。「セクション」の指定は、前記パネル操作子２に含まれるイントロボタン２ｄ、メインボタン２ｅまたはエンディングボタン２ｆを押下することでなされる。
【００２７】
次にユーザが、パネル操作子２に含まれるスタイル・オート・ボタン２ａを押下して、動作モードをスタイル・オート・モード（自動伴奏モード）に移行させ、スタート／ストップボタン２ｂを押下して、自動伴奏を開始させると、ＣＰＵ８は、前記生成された各セクションの伴奏演奏情報のうち、所定のセクションの伴奏演奏情報を順次再生し、伴奏音を発生させる。自動伴奏が進行し、その進行位置を示すカレントポジションが当該伴奏演奏情報の末尾に至ると、ＣＰＵ８は、カレントポジションを当該伴奏演奏情報の先頭に戻し、ユーザがスタート／ストップボタン２ｂを押下して自動伴奏の停止を指示するまで、当該伴奏演奏情報に基づいた自動伴奏を繰り返す。
【００２８】
当該伴奏演奏情報に基づいた自動伴奏が進行中のときにも、ユーザは、次の操作を行うことができる。すなわち、
（ａ）短縮指示ボタン３ｂあるいは伸長指示ボタン３ｃを用いたカデンツ長の変更操作
（ｂ）カデンツ指定ボタン３ａを用いたカデンツ種の変更操作
（ｃ）鍵盤１ａのコード指定鍵域を押鍵することによるコードの変更操作
である。
【００２９】
上記（ａ）〜（ｃ）のいずれかの変更操作がなされると、ＣＰＵ８は、カレントポジションが当該伴奏演奏情報の末尾に至ったときに、現在設定されているカデンツ長、カデンツ種およびコードのうち、変更操作に係るものをその変更操作に応じた値に変更した上で、これらの設定情報に基づいてコード進行情報を新たに生成し、このコード進行情報に基づいて伴奏演奏情報を新たに生成した後、その伴奏演奏情報の先頭にカレントポジションを移行させる。これにより、自動伴奏は、その途中で変更操作がなされたとしても、直ちに新たな伴奏演奏情報に基づいた自動伴奏に切り替わらず、変更操作がなされたときの伴奏演奏情報に基づいた自動伴奏が当該伴奏演奏情報の末尾まで進行してから、新たな伴奏演奏情報に基づいた自動伴奏に切り替わって行く。
【００３０】
このように、本実施の形態では、カデンツ種の選択と、そのカデンツ種のトニックとして設定されるコードの１度のみの指定という簡単な操作で、典型的なコード進行の伴奏を繰り返し生成することができる。このため、ユーザは、伴奏の生成を気遣うことなく、アドリブ演奏の練習に集中することができる。
【００３１】
なお、本実施の形態の自動伴奏装置は、シンクロスタートモードを指定するためのシンクスタートボタン２ｃを備えている。シンクスタートボタン２ｃが押下されて、シンクロスタートモードが選択されると、ユーザの鍵盤１ａのコード指定鍵域に対する押鍵とシンクロして、自動演奏が開始する。つまり、ユーザは、１度の押鍵操作で、コードの入力と自動演奏の開始の指示を行うことができる。
【００３２】
次に、この制御処理を詳細に説明する。
【００３３】
図３は、本実施の形態の自動伴奏装置、特にＣＰＵ８が実行するメインルーチンの手順を示すフローチャートである。
【００３４】
本メインルーチンは、主として
（１）初期化処理（ステップＳ１，Ｓ２）
（２）通常演奏鍵域での押鍵操作に応じた楽音生成処理（ステップＳ３）
（３）伴奏音生成処理（ステップＳ４〜Ｓ１７）
（４）その他処理（ステップＳ１８）
によって構成されている。本メインルーチンは、ユーザによって前記パネル操作子２に含まれる電源スイッチ（図示せず）が操作されて、電源がオンされたときに起動され、電源がオフされるまで継続する。
【００３５】
前記（１）の初期化処理では、ＣＰＵ８は、各種パラメータを初期値に設定した（ステップＳ１）後、伴奏演奏情報生成処理を実行する（ステップＳ２）。ここで、各種パラメータには、前記（２）の楽音生成処理によって生成される楽音の音色を指定する音色パラメータ、カデンツ種を指定するパラメータであるカデンツ指定情報、カデンツ長を指定するパラメータであるカデンツ長情報、カデンツ指定情報によって指定されたカデンツ種のトニックとして設定されるコードを指定するパラメータであるトニック設定コード情報、伴奏スタイルを指定するパラメータであるスタイル指定パラメータ、セクション（本実施の形態では、イントロ、メインおよびエンディングのうちのいずれか）を指定するパラメータであるセクション指定パラメータ、テンポを指定するテンポパラメータおよび音量を指定する音量パラメータが含まれている。
【００３６】
図４は、伴奏演奏情報生成処理の詳細な手順を示すフローチャートである。
【００３７】
本伴奏演奏情報生成処理では、まずＣＰＵ８は、カデンツ指定情報に対応するカデンツ情報を取得する（ステップＳ２１）。図５は、カデンツ情報をカデンツ長情報の設定値に応じて伸長させる様子を示す図であり、同図には、カデンツ指定情報も記載されている。図５中の矢印で示すように、カデンツ指定情報は、実体であるカデンツ情報を特定する情報（本実施の形態では、当該カデンツ情報の記憶位置）であり、カデンツ情報は、たとえば前記ＲＯＭ９あるいは前記外部記憶装置１２の所定の記憶領域等の、他の場所に記憶されている。したがって、ステップＳ２１の処理では、ＣＰＵ８は、カデンツ指定情報によって示される記憶場所から、そこに記憶されているカデンツ情報を読み出して、ＲＡＭ１０の所定位置に確保されたカデンツ情報格納領域（図示せず）に格納する処理を行っている。なお、カデンツ情報は、カデンツ、つまりコードの機能（トニック、ドミナント、サブドミナント）を組み合わせたものの情報であり、本実施の形態では、コード進行情報を生成するときの基礎になるコード進行を度数（Ｉ，…，ＶＩＩ）で表現している。
【００３８】
次にＣＰＵ８は、カデンツ長情報に応じて、前記カデンツ情報格納領域に格納されているカデンツ情報を伸長する（ステップＳ２２）。カデンツ情報の元々の長さは、本実施の形態では、１小節長としているのに対して、カデンツ長は、前述のように、１小節長より短く設定できないとしているので、カデンツ情報を短縮する場合はない。したがって、ステップＳ２２の処理では、「伸長」（ただし、カデンツ長が１小節に設定されている場合には、厳密には「伸長」ではないが、この場合も「伸長」に含まれるものとする）のみを行っている。前記図５には、カデンツ情報として“Ｉ−ＩＩ−Ｖ−Ｉ”のカデンツ種（４／４拍子で、１小節長）が設定され、カデンツ長情報として「８小節」が設定されたときに、このカデンツ長情報に応じて伸長されたカデンツ情報の一部が図示されている。つまり、図示例では、カデンツ情報の各拍位置のコードがそれぞれ８個ずつ並べられて、カデンツ情報の全体の長さが８倍に伸長されている。このようにして伸長されたカデンツ情報は、ＲＡＭ１０の所定位置に確保された伸長カデンツ情報格納領域（図示せず）に格納される。
【００３９】
次にＣＰＵ８は、前記トニック設定コード情報によって指定されているコードのルートとタイプに応じて、伸長されたカデンツ情報をコード進行情報に変換する（ステップＳ２３）。図６は、伸長されたカデンツ情報をコード進行情報に変換する方法を説明するための図であり、同図（ａ）は、コードのタイプに応じた変換テーブルを示し、同図（ｂ）は、コードのルートに応じた変換テーブルを示し、同図（ｃ）は、図５の伸長されたカデンツ情報を変換して生成したコード進行情報の一例を示している。今、トニック設定コード情報が“ＤＭ７”を指定しているとすると、“ＤＭ７”のタイプは「メジャ」であるので、図６（ａ）の変換テーブル中、「メジャ」の列が選択され、“ＤＭ７”のルートは“Ｄ”であるので、図６（ｂ）の変換テーブル中、「ルートがＤ」の列が選択される。そしてＣＰＵ８は、図６（ｃ）に示すように、度数で表現されたコード、つまりカデンツ情報を、上記２種類の変換テーブルによりコードネームで表現されたコードに変換する。このようにして変換されて生成されたコード進行情報は、ＲＡＭ１０の所定位置に確保されたコード進行情報格納領域（図示せず）に格納される。
【００４０】
なお、トニックと呼ばれるコードにはＩ度だけでなくＶＩ度などもあるが、ユーザ操作を簡単にするために、入力されたコードはＩ度のコードであると判断するようにしている。
【００４１】
次にＣＰＵ８は、コード進行情報格納領域内のコード進行情報と、前記スタイル指定パラメータによって指定されている伴奏スタイルに対応するスタイル情報を用いて、各セクションの伴奏演奏情報を生成する（ステップＳ２４）。ここで、伴奏スタイルとは、リズムを含む伴奏であり、本実施の形態では、８ビート、１６ビート、バラード、ダンスなどの各音楽ジャンル毎に複数の伴奏スタイルが予め用意されており、その中から、ユーザは好みの伴奏スタイルを選択することができる。各セクションは、前記「イントロ」、「メイン」および「エンディング」のそれぞれを意味する。たとえば、前記イントロボタン２ｄによって、「イントロ」が指定された状態で、自動伴奏の開始が指示されると、「イントロ」部に相当する伴奏演奏情報が１回再生された後、「メイン」部に相当する伴奏演奏情報に再生が移行し、その「メイン」部の伴奏演奏情報が繰り返し再生される。つまり、「イントロ」のみが選択されたとしても、その自動伴奏には、「イントロ」部の伴奏演奏情報だけでなく、「メイン」部の伴奏演奏情報も使用される。このため、ステップＳ２４では、すべてのセクションの伴奏演奏情報を生成するようにしている。また、ステップＳ２４の処理中、「伴奏演奏情報を生成する」とは、たとえばＳＭＦ（Standard MIDI File）形式の伴奏演奏情報を生成する場合には、主としてデルタタイムとＭＩＤＩイベントの列を生成することを意味する。このようにして生成された各セクションの伴奏演奏情報は、ＲＡＭ１０の所定位置にセクション毎に確保された伴奏演奏情報格納領域（図示せず）に格納される。
【００４２】
図３に戻り、前記（２）の通常演奏鍵域での押鍵操作に応じた楽音生成処理では、ユーザが前記鍵盤１ａの通常演奏鍵域に対して押鍵操作を行うと、ＣＰＵ８は、その押鍵操作に応じた操作状態を前記検出回路４から取得し、取得された操作状態に対応する演奏データ（キーオンイベント）を生成して、前記音源回路１５等に供給する。音源回路１５に供給された演奏データは、音源回路１５、効果回路１６およびサウンドシステム１７によって楽音に変換される。なお、本発明の目的は、アドリブ演奏の練習に集中できるようにすることであるので、通常演奏鍵域に対する押鍵操作は主として、アドリブ演奏のためのものであるが、もちろんアドリブ演奏に限られる訳ではない。
【００４３】
前記（３）の伴奏音生成処理は、主として、
（１１）伴奏演奏情報再生処理（ステップＳ５，Ｓ６）
（１２）コード検出処理（ステップＳ８〜Ｓ１０）
（１３）前記（ｂ）のカデンツ種の変更操作がなされたときに実行されるカデンツ種の変更操作処理（ステップＳ１１）
（１４）前記（ａ）のカデンツ長の変更操作がなされたときに実行されるカデンツ長の変更操作処理（ステップＳ１２）
（１５）上記（１２）〜（１４）の処理によって情報が一時保持されたときに実行される伴奏演奏情報の再生成処理（ステップＳ１５，Ｓ１６）
によって構成されている。なお、この（３）伴奏音生成処理は、動作モードがスタイル・オート・モードであって（スタイル・オート・オン）、伴奏が生成中（前記スタート／ストップボタン２ｂが押下されて、自動伴奏が開始された状態）のときに実行される（ステップＳ４）。
【００４４】
前記（１１）の伴奏演奏情報再生処理では、まずＣＰＵ８は、前記タイマ１１を利用し、現在のテンポ設定に応じて、伴奏演奏情報の読み出し位置を示すカレントポジション（具体的には、ＲＡＭ１０上の所定領域上に構成したソフトウェアポインタ）を進行させる（ステップＳ５）。カレントポジションがクロック単位で進行するものとすると、ＣＰＵ８は、タイマ１１がクロックの周期（＝６０×１０００／テンポ／タイムベース（ｍｓｅｃ））を計時する度に、カレントポジションを“１”ずつ進行させる。なお、タイムベースは、４分音符長のクロック数を示している。
【００４５】
次にＣＰＵ８は、再生対象のセクションに対応する伴奏演奏情報格納領域に格納されている伴奏演奏情報中、カレントポジションが示すイベントを読み出し、そのイベントに応じたパラメータを前記音源回路１５および効果回路１６に設定することで、伴奏音を生成する（ステップＳ６）。カレントポジションの値によっては、指示するイベントがない場合もあるが、この場合には、ＣＰＵ８は何もしないで、処理を次のステップに進めることは言うまでもない。
【００４６】
伴奏音が発生しているときに、ユーザが鍵盤１ａのコード指定鍵域に対して押鍵操作を行うと、ＣＰＵ８は、処理を前記（１２）のコード検出処理に進める（ステップＳ７→Ｓ８）。この（１２）コード検出処理では、まずＣＰＵ８は、前記検出回路４から押鍵状態を取得し、所定のルールに従って、コードを検出する（ステップＳ８）。本実施の形態では、ユーザの押鍵操作は、複数のコードの押さえ方、具体的には、シングルフィンガ（single finger）、マルチフィンガ（multi finger）およびフィンガード（fingered）のうち、選択されたいずれかに対応付けられたルールに従って解析され、コードが検出されるようになっている。つまり、上記ステップＳ８の「所定のルール」とは、選択されたコードの押さえ方に対応付けられたルールを意味する。ここで、シングルフィンガとは、１〜３本の指でコードを指定できる方法であり、フィンガードとは、コードの構成音をそのまま押鍵することでコードを指定する方法であり、マルチフィンガとは、シングルフィンガでのコード指定方法とフィンガードでのコード指定方法の両方に対応した方法である。なお、本発明の特徴は、コードの検出方法にある訳ではなく、コードの検出方法としては、公知に技術を用いればよいので、コードの検出方法についての説明は省略する。
【００４７】
ステップＳ８の処理によってコードが検出されたときには、ＣＰＵ８は、検出されたコードを示す情報（コードの名称やコードと１対１に対応付けられた番号など）を、ＲＡＭ１０の所定位置に確保された検出コード格納領域（図示せず）に一時的に保持する（ステップＳ９→Ｓ１０）。このように、検出されたコードを示す情報を一時的に保持するようにしたのは、後述するように、現在のセクションの伴奏演奏情報をすべて再生し終えた時点で、その再生を、上記検出したコードを含む各種設定情報に基づいて新たに生成した伴奏演奏情報に移行させるようにしているからである。後述するステップＳ１１およびＳ１２でも、ステップＳ１０と同様に、情報を一時保存しているが、その理由は、上記理由と同様である。
【００４８】
ユーザが前記（ｂ）のカデンツ種の変更操作を行うと、ＣＰＵ８は、処理を前記（１３）のカデンツ種の変更操作処理に進める。この（１３）カデンツ種の変更操作処理では、ＣＰＵ８は、変更操作に応じたカデンツ種を示すカデンツ指定情報を、ＲＡＭ１０の所定位置に確保されたカデンツ指定情報格納領域（図示せず）に一時的に保持する（ステップＳ１１）。
【００４９】
ユーザが前記（ａ）のカデンツ長の変更操作を行うと、ＣＰＵ８は、処理を前記（１４）のカデンツ長の変更操作処理に進める。この（１４）カデンツ長の変更操作処理では、ＣＰＵ８は、変更操作に応じたカデンツ長を示すカデンツ長情報を、ＲＡＭ１０の所定位置に確保されたカデンツ長情報格納領域（図示せず）に一時的に保持する（ステップＳ１２）。
【００５０】
前記（１１）〜（１４）の各処理に、前記（２）および（４）の各処理を加えた処理は、カレントポジションが現在のセクションの伴奏演奏情報の終端に達するまで実行され、カレントポジションがその終端に達すると、ＣＰＵ８は、前記検出コード格納領域、カデンツ指定情報格納領域およびカデンツ長情報格納領域のうちの、少なくとも１領域に有効な値が保持されているかどうかチェックする（ステップＳ１４）。このチェックの結果、少なくとも１領域に有効な値が保持されているときには、ＣＰＵ８は、処理を前記（１５）の伴奏演奏情報の再生成処理に進める。この（１５）伴奏演奏情報の再生成処理では、まずＣＰＵ８は、伴奏演奏情報を生成するための基礎となる現在の設定情報（その主なものは、カデンツ指定情報、カデンツ長情報、トニック設定コード情報およびスタイル指定パラメータである）を、上記有効な値によって更新した後、当該有効な値の一時保持をクリア（検出コード格納領域、カデンツ指定情報格納領域およびカデンツ長情報格納領域のうち、有効な値が保持されている領域をクリア）する（ステップＳ１５）。次にＣＰＵ８は、現在の設定情報に基づいて、前記図４で説明した伴奏演奏情報生成処理を実行する（ステップＳ１６）。これにより、更新後の設定情報に基づいて、新たな伴奏演奏情報が生成される。そしてＣＰＵ８は、カレントポジションを所定セクションの先頭に移行させた（ステップＳ１７）後、処理を前記（４）のその他処理に進める。ここで、「所定セクション」とは、現在選択されているセクションに応じて決まるセクションである。このような表現を用いたのは、伴奏演奏情報生成処理では、前述のように、選択可能なすべてのセクションについて伴奏演奏情報が生成されるので、その中の１つのセクションの先頭にカレントポジションが移行することを明示するためである。
【００５１】
図７は、カデンツ長、カデンツ種またはコードを変更したときに、変更に応じて新たに生成された伴奏演奏情報（図示例では、コード進行情報）に切り替わる様子を示す図であり、同図（ａ）は、カデンツ長を変更したときの様子を示し、同図（ｂ）は、カデンツ種を変更したときの様子を示し、同図（ｃ）は、コードを変更したときの様子を示している。ただし、同図（ｄ）および（ｅ）は、後述する第２の実施の形態において、カデンツ種およびコードを変更したときのそれぞれの様子を示している。
【００５２】
カデンツ長として「４小節」が、カデンツ種として“Ｉ−ＩＩ−Ｖ−Ｉ”が、コードとして“ＤＭ７”がそれぞれ指定されて、４小節長の“ＤＭ７−Ｅｍ７−Ａ７−ＤＭ７”のコード進行情報が再生中に、カデンツ長が「８小節」に変更されると、図７（ａ）に示すように、現在再生中の４小節長のコード進行情報が末尾まで再生された時点で、新たに生成された８小節長のコード進行情報（４小節長のコード進行情報と、各コードの長さのみ異なり、その配列は異ならない）に再生が移行する。
【００５３】
図７（ａ）のコード進行情報と同じコード進行情報が再生中に、カデンツ種が“Ｉ−ＩＩ−ＩＩ♭−Ｉ”に変更されると、図７（ｂ）に示すように、現在再生中のコード進行情報が末尾まで再生された時点で、新たに生成された“ＤＭ７−Ｅｍ７−Ｅ♭７−ＤＭ７”のコード進行情報に再生が移行する。
【００５４】
図７（ａ）のコード進行情報と同じコード進行情報が再生中に、コードが“Ａｍ７”に変更されると、図７（ｃ）に示すように、現在再生中のコード進行情報が末尾まで再生された時点で、新たに生成された“Ａｍ７−Ｂｍ７（♭５）−Ｅ７−Ａｍ７”のコード進行情報に再生が移行する。
【００５５】
前記（４）のその他処理では、基本的に、メインルーチンで必要な処理であって、以上説明した処理以外の処理がすべてなされるが、本発明と関係の深いものとして、音色切り替え、スタイル指定の切り替え、セクション切り替え、テンポ設定および音量設定などが挙げられる。なお、これらの情報の切り替え方法や設定方法については、本発明の特徴ではないので、その説明を省略する。
【００５６】
なお、フィンガードが選択されたときに、ユーザがテンションノートを含むコードを指定すると、それに応じて、テンションが多い伴奏が生成されるようにしてもよい。また、コードの指定が不完全な場合（二度音程）や、トニックとしては不的確なコード（ａｕｇ，ｄｉｍ，ｓｕｓ４）が指定された場合には、そのコードの指定を無視してもよいし、指定された音高の最低音を基にトニックの根音のみ更新するようにしてもよい。
【００５７】
また、本実施の形態では、コードの指定は、鍵盤を用いて行うようにしたが、これに限らず、コードのルートとタイプを指定可能な専用のスイッチを設け、それを用いて行うようにしてもよい。
【００５８】
さらに、本実施の形態では、カデンツ種やカデンツ長は、当該自動伴奏装置内で指定するようにしたが、これに限らず、前記他のＭＩＤＩ機器１００からＭＩＤＩメッセージで指定するようにしてもよい。
【００５９】
次に、本発明の第２の実施の形態に係る自動伴奏装置について説明する。
【００６０】
本実施の形態の自動伴奏装置は、上記第１の実施の形態の自動伴奏装置に対して、制御処理の一部が異なるのみであるので、そのハードウェアは、上記第１の実施の形態の自動伴奏装置と同様のハードウェア、すなわち図１に記載のものをそのまま使用することにする。
【００６１】
上記第１の実施の形態の自動伴奏装置が、前記図７（ｂ）および（ｃ）に示したように、自動伴奏の途中で、カデンツ種あるいはコードが変更されると、その自動伴奏が次の繰り返しに移る時点まで待って、当該変更に応じて新たに生成された伴奏演奏情報に基づいた自動伴奏に移行するようにしたのに対して、本実施の形態の自動伴奏装置は、前記図７（ｄ）および（ｅ）に示すように、カデンツ種あるいはコードが変更されると、その直後の適当なタイミング（本実施の形態では、拍位置）で、当該変更に応じて新たに生成された伴奏演奏情報に基づいた自動伴奏に移行するようにした点が異なっている。
【００６２】
図８は、本実施の形態の自動伴奏装置、特にＣＰＵが実行するメインルーチンの一部の手順を示すフローチャートであり、前記図３のメインルーチンのステップＳ７〜Ｓ１７の処理に相当する。図８中、図３中の処理と同じ処理を行うステップには、同一ステップ番号を付与し、その処理についての説明は省略する。
【００６３】
図８のステップＳ９で、コードが検出されたときには、ＣＰＵ８は、伸長カデンツ情報格納領域に格納されている伸長カデンツ情報のうち、カレントポジションの位置するコードの機能（トニック、ドミナント、サブドミナント）を取得し（ステップＳ３１）、検出されたコードが、取得されたコードの機能になるようなトニックを算出し（ステップＳ３２）、算出されたコードでトニックを更新する（ステップＳ３３）。そしてＣＰＵ８は、現在の設定情報に基づいて、前記図４の伴奏演奏情報生成処理を実行する（ステップＳ３４）。これにより、更新後の設定情報に基づいて、新たな伴奏演奏情報が生成される。図７（ｅ）は、“ＤＭ７−Ｅｍ７−Ａ７−ＤＭ７”のコード進行情報が再生中に、矢印の位置（“Ａ７”）するタイミングで、ユーザがコードを“ＤＭ７”から“Ｅ７”に変更したときに、新たに生成された“Ａｍ７−Ｂｍ７（♭５）−Ｅ７−Ａｍ７”のコード進行情報に移行する様子を示している。同図に示すように、コードを変更した時点で再生されている“Ａ７”は、直ぐに“Ｅ７”に移行する。ここで、“Ａ７”を生成したときに基礎とした、伸長カデンツ情報内のコードはＶ度、つまり、そのコードの機能はドミナントであるので、“Ａ７”がドミナントである場合のトニックは“Ａｍ７”と算出される。そして、現在設定されているカデンツ種“Ｉ−ＩＩ−Ｖ−Ｉ”のトニックとして、算出された“Ａｍ７”を設定すると、新たに“Ａｍ７−Ｂｍ７（♭５）−Ｅ７−Ａｍ７”のコード進行情報が生成される。この新たに生成されたコード進行情報中、カレントポジションの位置するコードは“Ｅ７”であるので、再生中のコード進行情報は、上述のように、“Ａ７”から“Ｅ７”に移行し、その後、新たに生成されたコード進行情報が繰り返し再生される。
【００６４】
次に、カデンツ種が変更されると、ＣＰＵ８は、現在の設定情報のうちのカデンツ種を変更されたカデンツ種で更新した後、前記ステップＳ３４の処理と同様の処理、つまり伴奏演奏情報生成処理を実行する（ステップＳ３６）。これにより、更新後の設定情報に基づいて、新たな伴奏演奏情報が生成される。図７（ｄ）は、“Ｉ−ＩＩ−Ｖ−Ｉ”のカデンツ種と“ＤＭ７”のコードが指定されて生成された“ＤＭ７−Ｅｍ７−Ａ７−ＤＭ７”のコード進行情報が再生中に、矢印の位置（“Ａ７”）するタイミングで、ユーザがカデンツ種を“Ｉ−ＩＩ−Ｖ−Ｉ”から“Ｉ−ＩＩ−ＩＩ♭−Ｉ”に変更したときに、新たに生成された“ＤＭ７−Ｅｍ７−Ｅ♭７−ＤＭ７”のコード進行情報に移行する様子を示している。同図に示すように、コードを変更した時点で再生されている“Ａ７”は、直ぐに“Ｅ♭７”に移行する。これは、カレントポジションが、新たに生成されたコード進行情報に直ぐに移行されるようにしているからである。
【００６５】
なお、図８の処理では、コードあるいはカデンツ種が変更されると直ぐに、その変更がコード進行情報に反映されるのに対して、図７（ｄ）および（ｅ）では、直後の拍位置で（変更時点が拍位置でない場合には、次の拍位置まで待って）、その変更がコード進行情報に反映される点が若干異なっている。前者を後者に合わせても、あるいは後者を前者にあわせても、どちらでもよいが、前者を後者に合わせる場合には、図８のフローチャート中の、たとえば、ステップＳ３４およびＳ３６の各奏演奏情報生成処理の前に、「次の拍位置まで待つ」処理を挿入すればよい。
【００６６】
次に、カデンツ長が変更されると、ＣＰＵ８は、前記第１の実施の形態と同様に、変更操作に応じたカデンツ長を示すカデンツ長情報を一時的に保持する（ステップＳ１２）。つまり、本実施の形態でも、カデンツ長の変更の新たなコード進行情報への反映は、現在のセクションの伴奏が終了した時点で行うようにしている。これは、伴奏の途中で、長さの異なる伴奏に移行するとユーザが違和感を覚えるからである。もちろん、これに限らず、カデンツ長の変更の新たなコード進行情報への反映も、変更時点で直ぐに行うようにしてもよい。このように、本実施の形態では、コードおよびカデンツ種が変更されたときの反映タイミングと、カデンツ長が変更されたときの反映タイミングとを異ならせたので、それに合わせて、図３のステップＳ１４およびＳ１５の処理をステップＳ１４′およびＳ１５′の処理に若干変更している。
【００６７】
なお、上述した各実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムまたは装置に供給し、そのシステムまたは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【００６８】
この場合、記憶媒体から読出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードおよび該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【００６９】
プログラムコードを供給するための記憶媒体としては、たとえば、フレキシブルディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭなどを用いることができる。また、通信ネットワークを介してサーバコンピュータからプログラムコードが供給されるようにしてもよい。
【００７０】
また、コンピュータが読出したプログラムコードを実行することにより、上述した各実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳなどが実際の処理の一部または全部を行い、その処理によって上述した各実施の形態の機能が実現される場合も含まれることは言うまでもない。
【００７１】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって上述した各実施の形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【００７２】
【図１】本発明の第１の実施の形態に係る自動伴奏装置の概略構成を示すブロック図である。
【図２】図１の自動伴奏装置の平面図である。
【図３】図１の自動伴奏装置、特にＣＰＵが実行するメインルーチンの手順を示すフローチャートである。
【図４】図３中の伴奏演奏情報生成処理の詳細な手順を示すフローチャートである。
【図５】カデンツ情報をカデンツ長情報の設定値に応じて伸長させる様子を示す図である。
【図６】伸長されたカデンツ情報をコード進行情報に変換する方法を説明するための図である。
【図７】カデンツ長、カデンツ種またはコードを変更したときに、変更に応じて新たに生成された伴奏演奏情報に切り替わる様子を示す図である。
【図８】本発明の第２の実施の形態に係る自動伴奏装置、特にＣＰＵが実行するメインルーチンの一部の手順を示すフローチャートである。
【符号の説明】
【００７３】
１ａ…鍵盤（第２の指定手段），３…タッチパネル（第１の指定手段、第３の指定手段），８…ＣＰＵ（第１の指定手段、第２の指定手段、伴奏生成手段、設定手段、検出手段、伴奏再生成手段、制御手段、第３の指定手段）
【図１】
2009229673.tif 000003
【図２】
2009229673.tif 000004
【図３】
2009229673.tif 000005
【図４】
2009229673.tif 000006
【図５】
2009229673.tif 000007
【図６】
2009229673.tif 000008
【図７】
2009229673.tif 000009
【図８】
2009229673.tif 000010