(57)【特許請求の範囲】
【請求項１】
コードタイプとコードルートを特定するコード情報を取得するコード情報取得手段と、
自動伴奏データは複数の伴奏パートを含み、各伴奏パートにそれぞれ一つのコードタイプに対応した複数のフレーズ波形データが対応付けられている自動伴奏データを記憶する記憶手段であって、前記フレーズ波形データは、コードタイプとコードルートの組み合わせで特定可能なコードを基準とした伴奏に対応する楽音を記録したものであって、前記基準としたコードのコードタイプを特定するコードタイプ情報とコードルートを特定するコードルート情報とを識別する識別子を付与されたものである記憶手段と、
現在コードに設定されているコード情報を直前コードにセットしたのち、前記コード情報取得手段により取得された前記コード情報を現在コードにセットし、
前記現在コードに設定されているコード情報がセットされた直前コードと、前記コード情報取得手段により取得された前記コード情報がセットされた現在コードとを比較したのち、
前記直前コードと前記現在コードとが同一でない場合、各伴奏パートについて、前記コード情報取得手段により取得された前記コード情報がセットされた現在コードに設定されている前記コード情報の前記コードタイプに適合する前記フレーズ波形データを前記記憶手段から読み出して、現在の伴奏パターンデータにセットし更新したのち、該現在の伴奏パターンデータにセットされた該フレーズ波形データを読み出す一方、
前記直前コードと前記現在コードとが同一である場合、各伴奏パートについて、前記現在の伴奏パターンデータの更新を行わず、前記現在の伴奏パターンデータに既にセットされているフレーズ波形データを読み出す読み出し手段と、
前記読み出したフレーズ波形データを伴奏データとして出力する出力手段と
を有する伴奏データ生成装置。
【請求項２】
さらに、各伴奏パートについて、前記読み出したフレーズ波形データのコードルート情報と前記取得したコード情報で特定されるコードルートとを比較する比較手段と、
前記比較手段による比較の結果に基づき前記読み出したフレーズ波形データの音高を調整する音高調整手段とを有し、
前記出力手段は、前記音高調整手段により音高が調整されたフレーズ波形データを演奏データとして出力する請求項１記載の伴奏データ生成装置。
【請求項３】
コードタイプとコードルートを特定するコード情報を取得するコード情報取得手段と、  自動演奏データは複数の伴奏パートからなり、少なくとも一つの伴奏パートに対応してフレーズ波形データを記憶し、その他の伴奏パートでは伴奏フレーズデータを記憶する記憶手段と、
前記フレーズ波形データは、コードタイプとコードルートの組み合わせで特定可能なコードを基準とした伴奏に対応する楽音を記録したものであって、前記基準としたコードのコードタイプを特定するコードタイプ情報とコードルートを特定するコードルート情報とを識別する識別子を付与されたものであり、
前記伴奏フレーズデータは、コードタイプとコードルートの組み合わせで特定可能なコードを基準とした伴奏に対応する演奏データを記録したものであって、前記基準としたコードのコードタイプを特定するコードタイプ情報とコードルートを特定するコードルート情報とを識別する識別子を付与されたものであり、
各伴奏パートについて、前記取得したコード情報により特定されるコードタイプに対応するコードタイプ情報を含む前記フレーズ波形データまたは前記伴奏フレーズデータを前記記憶手段から読み出す読み出し手段と、
前記読み出した伴奏パターンデータを伴奏データとして出力する出力手段と
を有する伴奏データ生成装置。
【請求項４】
自動伴奏データは複数の伴奏パートからなり、各伴奏パートに対応してフレーズ波形データが対応付けられている自動伴奏データを記憶する記憶手段を有するコンピュータに実行させるための伴奏データ生成プログラムであって、
前記フレーズ波形データは、それぞれがコードタイプとコードルートの組み合わせで特定可能なコードを基準とした伴奏に対応する楽音を記録したものであって、前記基準としたコードのコードタイプを特定するコードタイプ情報とコードルートを特定するコードルート情報とを識別する識別子を付与されたものであり、
コードタイプとコードルートを特定するコード情報を取得するコード情報取得手順と、
現在コードに設定されているコード情報を直前コードにセットしたのち、前記コード情報取得手順により取得された前記コード情報を現在コードにセットする手順と、
前記現在コードに設定されているコード情報がセットされた直前コードと、前記コード情報取得手順により取得された前記コード情報がセットされた現在コードとを比較する手順と、
前記比較する手順によって、前記直前コードと前記現在コードとが同一でないとされた場合は、各伴奏パートについて、前記コード情報取得手順により取得された前記コード情報がセットされた現在コードにより特定されるコードタイプに対応するコードタイプ情報を含む前記フレーズ波形データを前記記憶手段から読み出し、現在の伴奏パターンデータにセットし更新したのち、該伴奏パターンデータにセットされた該フレーズ波形データを読み出す一方、
前記比較する手順によって、前記直前コードと前記現在コードとが同一であるとされた場合は、各伴奏パートについて、前記現在の伴奏パターンデータの更新を行わず、前記現在の伴奏パターンデータに既にセットされたフレーズ波形データを読み出す読み出し手順と、
前記読み出したフレーズ波形データを伴奏データとして出力する出力手順と
を前記コンピュータに実行させるための伴奏データ生成プログラム。
【請求項５】
さらに、各伴奏パートについて、前記読み出したフレーズ波形データのコードルート情報と前記取得したコード情報で特定されるコードルートとを比較する比較手順と、
前記比較手順による比較の結果に基づき前記読み出したフレーズ波形データの音高を調整する音高調整手順とを有し、
前記出力手順は、前記音高調整手順により音高が調整されたフレーズ波形データを演奏データとして出力する請求項４記載の伴奏データ生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、伴奏データ生成装置に関する。
【背景技術】
【０００２】
従来、音楽の各種スタイル（ジャンル）に対応したＭＩＤＩ形式等の自動演奏データによる複数の伴奏スタイルデータを記憶し、ユーザ（演奏者）の選択した伴奏スタイルデータに基づいて、ユーザの演奏に伴奏を付与する自動伴奏装置が知られている（例えば、特許文献１参照）。
【０００３】
従来の自動演奏データを利用した自動伴奏装置では、例えば、ＣＭａｊなどの所定のコード（和音）に基づく伴奏スタイルデータを、ユーザの演奏から検出したコード（和音）情報に適合するように、音高変換することが行われている。
【０００４】
また、アルペジオパターンデータをフレーズ波形データとして記憶し、ユーザの演奏入力に適合するように音高やテンポの調整を行い、自動伴奏データを生成するアルペジオ演奏装置が知られている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特許第２９００７５３号公報
【特許文献２】特許第４２７４２７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述の自動演奏データを利用した自動伴奏装置では、ＭＩＤＩ音源等を利用して楽音を生成するため、民族楽器や特殊な音階を用いる楽器などの楽音を用いた自動伴奏は困難であった。また、自動演奏データによる演奏のため、人間の生演奏による臨場感等を出すことが困難であった。
【０００７】
また、上述のアルペジオ演奏装置等の従来のフレーズ波形データを利用した自動伴奏装置では、単音の伴奏フレーズのみが自動演奏可能であった。
【０００８】
本発明の目的は、和音を含むフレーズ波形データを用いた自動伴奏データを生成可能な伴奏データ生成装置を提供することである。
【課題を解決するための手段】
【０００９】
本発明の一観点によれば、伴奏データ生成装置は、コードタイプとコードルートを特定するコード情報を取得するコード情報取得手段と、自動伴奏データは複数の伴奏パートを含み、各伴奏パートにそれぞれ一つのコードタイプに対応した複数のフレーズ波形データが対応付けられている自動伴奏データを記憶する記憶手段であって、前記フレーズ波形データは、コードタイプとコードルートの組み合わせで特定可能なコードを基準とした伴奏に対応する楽音を記録したものであって、前記基準としたコードのコードタイプを特定するコードタイプ情報とコードルートを特定するコードルート情報とを識別する識別子を付与されたものである記憶手段と、現在コードに設定されているコード情報を直前コードにセットしたのち、前記コード情報取得手段により取得された前記コード情報を現在コードにセットし、前記現在コードに設定されているコード情報がセットされた直前コードと、前記コード情報取得手段により取得された前記コード情報がセットされた現在コードとを比較したのち、前記直前コードと前記現在コードとが同一でない場合、各伴奏パートについて、前記コード情報取得手段により取得された前記コード情報がセットされた現在コードに設定されている前記コード情報の前記コードタイプに適合する前記フレーズ波形データを前記記憶手段から読み出して、現在の伴奏パターンデータにセットし更新したのち、該現在の伴奏パターンデータにセットされた該フレーズ波形データを読み出す一方、前記直前コードと前記現在コードとが同一である場合、各伴奏パートについて、前記現在の伴奏パターンデータの更新を行わず、前記現在の伴奏パターンデータに既にセットされているフレーズ波形データを読み出す読み出し手段と、前記読み出したフレーズ波形データを伴奏データとして出力する出力手段とを有する。
【発明の効果】
【００１０】
本発明によれば、和音を含むフレーズ波形データを用いた自動伴奏データを生成可能な伴奏データ生成装置を提供することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施例による伴奏データ生成装置１００のハードウェア構成の一例を表すブロック図である。
【図２】本発明の実施例による自動伴奏データの構成の一例を表す概念図である。
【図３】本発明の実施例によるコードタイプテーブルの一例を表す概念図である。
【図４】本発明の実施例によるフレーズ波形データの構成の他の例を表す概念図である。
【図５】本発明の実施例によるメイン処理を表すフローチャートである。
【発明を実施するための形態】
【００１２】
図１は、本発明の実施例による伴奏データ生成装置１００のハードウェア構成の一例を表すブロック図である。
【００１３】
伴奏データ生成装置１００のバス６には、ＲＡＭ７、ＲＯＭ８、ＣＰＵ９、検出回路１１、表示回路１３、記憶装置１５、波形メモリ音源１８、通信インターフェイス（Ｉ／Ｆ）２１が接続される。
【００１４】
ＲＡＭ７は、再生バッファ等のバッファ領域、フラグ、レジスタ、各種パラメータ等を記憶するＣＰＵ９のワーキングエリアを有する。例えば、後述する自動伴奏データは、このＲＡＭ７内の所定領域にロードされる。
【００１５】
ＲＯＭ８には、各種データファイル（例えば、後述する自動伴奏データＡＡ）、各種パラメータ及び制御プログラム、又は本実施例を実現するためのプログラム等を記憶することができる。この場合、プログラム等を重ねて、記憶装置１５に記憶する必要は無い。
【００１６】
ＣＰＵ９は、ＲＯＭ８又は、記憶装置１５に記憶されている制御プログラム又は本実施例を実現するためのプログラム等に従い、演算又は装置の制御を行う。タイマ１０が、ＣＰＵ９に接続されており、基本クロック信号、割り込み処理タイミング等がＣＰＵ９に供給される。
【００１７】
ユーザは、検出回路１１に接続される設定操作子１２を用いて、各種入力及び設定、選択をすることができる。設定操作子１２は、例えば、スイッチ、パッド、フェーダ、スライダ、ロータリーエンコーダ、ジョイスティック、ジョグシャトル、文字入力用キーボード、マウス等、ユーザの入力に応じた信号を出力できるものならどのようなものでもよい。また、設定操作子１２は、カーソルスイッチ等の他の操作子を用いて操作する表示装置１４上に表示されるソフトスイッチ等でもよい。
【００１８】
本実施例では、ユーザは、設定操作子１２を操作することにより、記憶装置１５又はＲＯＭ８等に記録された又は通信Ｉ／Ｆ２１を介して外部機器から取得（ダウンロード）する自動伴奏データＡＡの選択、自動伴奏の開始および停止指示及びその他の設定操作を行う。
【００１９】
表示回路１３は、ディスプレイ１４に接続され、各種情報をディスプレイ１４に表示することができる。ディスプレイ１４は、伴奏データ生成装置１００の設定のための各種情報等を表示することができる。
【００２０】
記憶装置１５は、ハードディスク、ＦＤ（フレキシブルディスク又はフロッピーディスク（登録商標））、ＣＤ（コンパクトディスク）、ＤＶＤ（デジタル多目的ディスク）、フラッシュメモリ等の半導体メモリ等の記憶媒体とその駆動装置の組み合わせの少なくとも１つで構成される。記憶媒体は、着脱可能であってもよいし、内蔵されていてもよい。記憶装置１５及び（または）ＲＯＭ８には、好ましくは複数の自動伴奏データＡＡ及び、本発明の各実施例を実現するためのプログラムや、その他の制御プログラムを記憶することができる。なお、本発明の各実施例を実現するためのプログラムや、その他の制御プログラムを記憶装置１５に記憶する場合は、これらをＲＯＭ８に合わせて記憶する必要はない。また、一部のプログラムのみを記憶装置１５に記憶し、その他のプログラムをＲＯＭ８に記憶するようにしてもよい。
【００２１】
音源１８は、例えば、波形メモリ音源であり、少なくとも波形データ（フレーズ波形データ）から楽音信号を生成可能なハードウェアもしくはソフトウェア音源であり、記憶装置１５、ＲＯＭ８又はＲＡＭ７等に記録された自動伴奏データ、自動演奏データ又は演奏操作子（鍵盤）２２あるいは通信インターフェイス２１に接続された外部機器等から供給される演奏信号、ＭＩＤＩ信号、フレーズ波形データ等に応じて楽音信号を生成し、各種音楽的効果を付与して、ＤＡＣ２０を介して、サウンドシステム１９に供給する。ＤＡＣ２０は、供給されるデジタル形式の楽音信号をアナログ形式に変換し、サウンドシステム１９は、アンプ、スピーカを含み、ＤＡ変換された楽音信号を発音する。
【００２２】
通信インターフェイス２１は、ＵＳＢやＩＥＥＥ１３９４等の汎用近距離有線Ｉ／Ｆ、Ｅｔｈｅｒｎｅｔ（登録商標）等の汎用ネットワークＩ／Ｆ等の通信インターフェイス、ＭＩＤＩ  Ｉ／Ｆなどの汎用Ｉ／Ｆ、無線ＬＡＮやＢｌｕｅｔｏｏｔｈ（登録商標）等の汎用近距離無線Ｉ／Ｆ等の通信インターフェイス及び音楽専用無線通信インターフェイスのうち少なくとも１つで構成され、外部機器、サーバ等との通信が可能である。
【００２３】
演奏操作子(鍵盤等)２２は、検出回路１１に接続され、ユーザの演奏動作に従い、演奏情報（演奏データ）を供給する。演奏操作子２２は、ユーザの演奏を入力するための操作子であり、ユーザが操作した操作子に対応する音高で、該ユーザの操作子に対する操作開始タイミング及び終了タイミングをそれぞれキーオン及びキーオフ信号として入力する。また、ユーザの演奏操作に応じてベロシティ値等の各種パラメータを入力することが可能である。
【００２４】
なお、演奏操作子(鍵盤等)２２により入力される演奏情報には、後述するコード情報もしくはコード情報を生成するための情報が含まれる。なお、コード情報の入力には、演奏操作子(鍵盤等)２２以外にも、設定操作子１２や通信インターフェイス２１に接続される外部機器を用いることもできる。
【００２５】
図２は、本発明の実施例による自動伴奏データＡＡの構成の一例を表す概念図である。
【００２６】
本発明の実施例による自動伴奏データＡＡは、例えば、ユーザが図１の演奏操作子２２を用いてメロディラインを演奏する場合に、それに合わせて、少なくとも一つのパート（トラック）の自動伴奏を行うためのデータである。
【００２７】
自動伴奏データＡＡは、ジャズ、ロック、クラッシック等の音楽ジャンルに対応するとともに各ジャンルごとに複数種類のものが用意されており、識別番号（ＩＤ番号）や、伴奏スタイル名等で識別される。本実施例では、複数の自動伴奏データＡＡが、例えば、図１の記憶装置１５又はＲＯＭ８等に記憶されており、各自動伴奏データＡＡには、ＩＤ番号が付されている（「０００１」、「０００２」等）。
【００２８】
各自動伴奏データＡＡは、通常、複数のリズム種類、音楽ジャンル、テンポ等の伴奏スタイル毎に用意される。また、それぞれの自動伴奏データＡＡには、イントロ、メイン、フィルイン、エンディング等の楽曲の場面に合わせた複数のセクションが用意される。さらに、それぞれのセクションは、コードトラック、ベーストラック、ドラム（リズム）トラックなどの複数のトラックで構成される。本実施例では、説明の便宜上、自動伴奏データＡＡは、任意の１つのセクションで構成され、当該セクションが少なくとも和音を用いた伴奏を行うコードトラックを含む複数のパート（パート１（トラック１）〜パートｎ（トラックｎ））を含んでいるものとする。
【００２９】
自動伴奏データＡＡの各パート１〜ｎ（トラック１〜ｎ）には、複数の伴奏パターンデータＡＰが対応付けられている。各伴奏パターンデータＡＰは、それぞれ一つのコードタイプに対応しており、少なくとも一つのフレーズ波形データＰＷが対応付けられている。本実施例では、図３のテーブルに示すように、メジャーコード（Ｍａｊ）、マイナーコード（ｍ）、セブンスコード（７）等の３７種類のコードタイプに対応しており、自動伴奏データＡＡの各パート１〜ｎ（トラック１〜ｎ）は、３７種類の伴奏パターンデータＡＰを記憶している。なお、対応可能なコードタイプは図３に示す３７種類に限らず、適宜増減可能である。また、対応可能なコードタイプをユーザが設定できるようにしても良い。
【００３０】
なお、自動伴奏データＡＡが複数のパート（トラック）を含む場合は、少なくとも一つのパートについては、フレーズ波形データＰＷが対応付けられた伴奏パターンデータＡＰが対応づけられている必要があるが、その他のパートについては、ＭＩＤＩ形式等の自動演奏データによる伴奏フレーズデータが対応付けられていても良い。例えば、図２に示す例におけるＩＤ番号「０００２」が付与された自動伴奏データＡＡのように、パート１の伴奏パターンデータＡＰの一部をフレーズ波形データＰＷとしてその他をＭＩＤＩデータＭＤとしても良いし、パートｎの伴奏パターンデータＡＰの全てをＭＩＤＩデータＭＤとしても良い。
【００３１】
フレーズ波形データＰＷは、対応付けられた伴奏パターンデータＡＰが対応しているコードタイプ及びコードルート（根音）を基準とした伴奏フレーズの演奏に対応する楽音を記録したフレーズ波形データであり、１〜複数小節の長さである。例えば、ＣＭａｊ基準のフレーズ波形データＰＷには、Ｃｍａｊのコード構成音である音高Ｃ、Ｅ、Ｇを主に用いた演奏（和音伴奏以外の伴奏も含む）による楽音をデジタルサンプリングして記憶した波形データである。なお、フレーズ波形データＰＷには、基準となるコード（コードタイプ及びコードルートの組み合わせで特定されるコード）の構成音以外の音高（非和声音）も含まれる場合がある。各フレーズ波形データＰＷには、当該フレーズ波形データＰＷを特定することが可能な識別子が付与されている。
【００３２】
なお、本実施例では、「自動伴奏データＡＡのＩＤ（スタイル番号）−パート（トラック）番号−コードルート（根音）を表す番号−コードタイプ番号（図３参照）」の形式で、各フレーズ波形データＰＷに識別子が付与されている。本実施例では、この識別子をフレーズ波形データＰＷのコードタイプを特定するコードタイプ情報及び根音（コードルート）を特定するコードルート情報として利用する。これにより、各フレーズ波形データＰＷの識別子を参照して、当該フレーズ波形データＰＷが基準とするコードタイプやコードルート（根音）を取得することができる。なお、上記のような識別子を用いる以外の方法で、コードタイプやコードルートについての情報を各フレーズ波形データＰＷに付与するようにしても良い。
【００３３】
なお、本実施例では、各フレーズ波形データＰＷはコードルート（根音）を「Ｃ」として用意されているが、コードルート（根音）は「Ｃ」以外でも良く、さらに、一つのコードタイプについて複数（２〜１２）のコードルート（根音）のフレーズ波形データＰＷを用意するようにしても良い。図４に示すように、全てのコードルート（１２音）のフレーズ波形データＰＷを用意する場合には、後述するピッチシフトの処理は必要がなくなる。
【００３４】
自動伴奏データＡＡは、上記以外にも、当該自動伴奏データの伴奏スタイル名、拍子情報、テンポ情報（フレーズ波形データＰＷの録音（再生）テンポ）、各パートの情報等を含む当該自動伴奏データ全体の設定情報を含んでいる。また、複数のセクションで構成される場合は、各セクションのセクション名（イントロ、メイン、エンディング等）、小節数（例えば、１小節、４小節、８小節等）を含んで構成される。
【００３５】
なお、本実施例では、各パートが複数のコードタイプのそれぞれに対応した伴奏パターンデータＡＰ（フレーズ波形データＰＷ）を含むようにしたが、各コードタイプが複数のパートに対応した伴奏パターンデータＡＰ（フレーズ波形データＰＷ）を含むようにしても良い。
【００３６】
また、フレーズ波形データＰＷは、自動伴奏データＡＡ内に記憶されていても良いし、自動伴奏データＡＡとは別に記憶して、自動伴奏データＡＡ内には、フレーズ波形データＰＷへのリンク情報のみを記憶するようにしても良い。
【００３７】
図５は、本発明の実施例によるメイン処理を表すフローチャートである。このメイン処理は、本発明の実施例による伴奏データ生成装置１００の電源投入と同時に起動する。
【００３８】
ステップＳＡ１で、メイン処理を開始し、ステップＳＡ２で初期設定を行う。ここでの初期設定は、自動伴奏データＡＡの選択、コード取得方法（ユーザ演奏による入力、ユーザの直接指定による入力、コード進行情報による自動入力等）の設定、演奏テンポの設定、調設定等であり、例えば、図１の設定操作子１２を用いて行う。また、自動伴奏処理開始フラグＲＵＮを初期化（ＲＵＮ＝０）するとともに、タイマ、その他のフラグ、レジスタ等を初期化する。
【００３９】
ステップＳＡ３では、ユーザによる設定変更操作を検出したか否かを判断する。ここでの設定変更操作は、自動伴奏データＡＡの再選択等、現在の設定を初期化する必要のある設定であり、例えば、演奏テンポの設定変更等は含まれない。設定変更操作を検出した場合は、ＹＥＳの矢印で示すステップＳＡ４に進む。設定変更操作を検出しない場合は、ＮＯの矢印で示すステップＳＡ５に進む。
【００４０】
ステップＳＡ４では、自動伴奏停止処理を行う。自動伴奏停止処理は、例えば、タイマを停止し、フラグＲＵＮを０に設定（ＲＵＮ＝０）し、発音中の自動伴奏による楽音の消音処理を行う。その後、ＳＡ２に戻り、検出した変更操作に従い再度初期設定を行う。なお、自動伴奏中でない場合には、そのままステップＳＡ２に戻る。
【００４１】
ステップＳＡ５では、メイン処理の終了操作（伴奏データ生成装置１００の電源切断等）を検出したか否かを判断する。終了操作を検出した場合は、ＹＥＳの矢印で示すステップＳＡ２４に進みメイン処理を終了する。検出しない場合はＮＯの矢印で示すステップＳＡ６に進む。
【００４２】
ステップＳＡ６では、ユーザによる演奏操作を検出したか否かを判断する。ユーザによる演奏動作の検出は、例えば、図１の演奏操作子２２の操作による演奏信号の入力または、通信Ｉ／Ｆ２１を介した演奏信号の入力の有無を検出することにより行う。演奏操作を検出した場合は、ＹＥＳの矢印で示すステップＳＡ７に進む、検出した演奏動作に基づく発音又は消音処理を行い、ステップＳＡ８に進む。演奏操作を検出しない場合はＮＯの矢印で示すステップＳＡ８に進む。
【００４３】
ステップＳＡ８では、自動伴奏の開始指示を検出したか否かを判断する。自動伴奏の開始指示は、例えば、ユーザが図１の設定操作子１２を操作することにより行う。自動伴奏開始指示を検出した場合は、ＹＥＳの矢印で示すステップＳＡ９に進む。開始指示を検出しない場合は、ＮＯの矢印で示すステップＳＡ１３に進む。
【００４４】
ステップＳＡ９では、フラグＲＵＮを１に設定（ＲＵＮ＝１）に設定し、ステップＳＡ１０では、ステップＳＡ２又はステップＳＡ３で選択された自動伴奏データＡＡを、例えば、図１の記憶装置１５等からＲＡＭ７の所定領域内等にロードする。その後、ステップＳＡ１１で、直前コードと現在コードをクリアし、ステップＳＡ１２でタイマを起動して、ステップＳＡ１３に進む。
【００４５】
ステップＳＡ１３では、自動伴奏の停止指示を検出したか否かを判断する。自動伴奏の停止指示は、例えば、ユーザが図１の設定操作子１２を操作することにより行う。自動伴奏停止指示を検出した場合は、ＹＥＳの矢印で示すステップＳＡ１４に進む。停止指示を検出しない場合は、ＮＯの矢印で示すステップＳＡ１７に進む。
【００４６】
ステップＳＡ１４では、タイマを停止し、ステップＳＡ１５では、フラグＲＵＮを０に設定（ＲＵＮ＝０）に設定する。その後、ステップＳＡ１６で、自動伴奏データの生成処理を停止し、ステップＳＡ１７に進む。
【００４７】
ステップＳＡ１７では、フラグＲＵＮが１に設定されているか否かを判断する。ＲＵＮが１の場合（ＲＵＮ＝１）の場合は、ＹＥＳの矢印で示すステップＳＡ１８に進む。ＲＵＮが０の場合（ＲＵＮ＝０）の場合は、ＮＯの矢印で示すステップＳＡ３に戻る。
【００４８】
ステップＳＡ１８では、コード情報の入力を検出（コード情報を取得）したか否かを判断する。コード情報の入力を検出した場合には、ＹＥＳの矢印で示すステップＳＡ１９に進み、検出しない場合には、ＮＯの矢印で示すステップＳＡ２２に進む。
【００４９】
コード情報の入力を検出しない場合には、すでに何らかのコード情報に基づき自動伴奏生成中の場合と、有効なコード情報がない場合が含まれる。有効なコード情報がない場合には、コード情報を必要としない、例えば、リズムパートのみ伴奏データを生成するようにしても良い。あるいは、有効なコード情報が入力されるまで、ステップＳＡ２２に進まずに、ステップＳＡ１８の処理を繰り返すようにして、有効なコード情報が入力されるまで伴奏データの生成を待つようにしてもよい。
【００５０】
なお、コード情報の入力は、ユーザの図１の演奏操作子２２等を用いた演奏操作により入力される。ユーザの演奏からのコード情報の取得は、例えば、鍵盤等の演奏操作子２２の一部の領域であるコード鍵域の押鍵組み合わせから検出（この場合は押鍵に対応する発音は行わない）してもよく、鍵盤の全鍵域における所定タイミング幅での押鍵状態から検出するようにしてもよい。その他、周知のコード検出技術を利用可能である。
【００５１】
入力されるコード情報は、コードタイプを特定するコードタイプ情報及び根音（コードルート）を特定するコードルート情報とを含んで構成されることが好ましいが、ユーザ演奏等により入力される演奏信号の音高の組み合わせからコードタイプ及びコードルートを特定するためのコードタイプ情報及びコードルート情報を取得するようにしても良い。
【００５２】
また、コード情報の入力は、演奏操作子２２を利用したものに限らず、設定操作子１２を利用して行ってもよい。その場合、例えば、コード情報をコードルート（根音）を表す情報（文字や数字）とコードタイプを表す情報（文字や数字）の組み合わせで入力するようにしてもよく、使用可能なコード情報を記号や番号（例えば、図３のテーブル参照）で入力するようにしてもよい。
【００５３】
さらに、コード情報をユーザの入力によらずに、あらかじめ記憶しておいたコードシーケンス（コード進行情報）を所定のテンポで読みだして取得するようにしてもよく、再生中の曲データ等からコード検出を行い取得してもよい。
【００５４】
ステップＳＡ１９では、「現在コード」に設定されているコード情報を「直前コード」にセットし、ステップＳＡ１８で検出（取得）したコード情報を「現在コード」にセットする。
【００５５】
ステップＳＡ２０では、「現在コード」に設定されているコード情報と「直前コード」に設定されているコード情報とが同一であるか否かを判断する。同一である場合はＹＥＳの矢印で示すステップＳＡ２２に進み、同一でない場合は、ＮＯの矢印で示すステップＳＡ２１に進む。なお、初回コード情報検出時もステップＳＡ２１に進む。
【００５６】
ステップＳＡ２１では、ステップＳＡ１０でロードされた自動伴奏データＡＡに含まれる各伴奏パート（トラック）について、「現在コード」に設定されているコード情報のコードタイプに適合する伴奏パターンデータＡＰ（内のフレーズ波形データＰＷを含む）を「現在の伴奏パターンデータ」にセットする。
【００５７】
ステップＳＡ２２では、ステップＳＡ１０でロードされた自動伴奏データＡＡに含まれる各伴奏パート（トラック）について、ステップＳＡ２１で「現在の伴奏パターンデータ」にセットされた伴奏パターンデータＡＰ（内のフレーズ波形データＰＷを含む）からタイマに適合する位置のデータをユーザの演奏テンポに合わせて読み出す。
【００５８】
ステップＳＡ２３では、ステップＳＡ１０でロードされた自動伴奏データＡＡに含まれる各伴奏パート（トラック）について、ステップＳＡ２１で「現在の伴奏パターンデータ」にセットされた伴奏パターンデータＡＰ（内のフレーズ波形データＰＷを含む）の基準となるコード(和音)のコードルート情報（根音情報）を抽出し、「現在コード」に設定されているコード情報のコードルート（根音）との音高差を算出して、該算出した値に基づ
いて、ステップＳＡ２２で読みだしたデータを、「現在コード」に設定されているコード情報のコードルート（根音）に適合するようにピッチシフトして「伴奏データ」として出力する。ピッチシフトは周知の技術による。なお、音高差が０の場合はピッチシフトを行わずに、「伴奏データ」として出力する。その後、ステップＳＡ３に戻り、以降の処理を繰り返す。
【００５９】
なお、図４に示すように、全てのコードルート（１２音）のフレーズ波形データＰＷを用意する場合には、ステップＳＡ２３におけるピッチシフトの処理は省略する。また、一部のコードルートに対応したフレーズ波形データＰＷのみを用意する場合には、「現在コード」に設定されているコード情報とコードタイプが同一で音高差が最も少ないコードルートに対応したフレーズ波形データＰＷを読み出して、当該音高差の分だけピッチシフトするようにすれば良い。
【００６０】
なお、自動伴奏データＡＡは、ステップＳＡ２においてユーザが自動伴奏開始前に選択するかもしくはステップＳＡ３において自動伴奏中に選択するようにしたが、予め記憶しておいたコードシーケンスデータ等を再生する場合などは、コードシーケンスデータ等に自動伴奏データＡＡの指定情報を含ませるようにして、それを読み出して自動的に選択するようにしても良い。また、デフォルトとして予め自動伴奏データＡＡが選択されるようにしても良い。
【００６１】
なお、選択した自動伴奏データＡＡの再生の開始及び停止指示は、ステップＳＡ８及びステップＳＡ１３においてユーザの操作を検出して行ったが、ユーザによる演奏操作子２２を用いた演奏の開始及び終了を検出して、選択した自動伴奏データＡＡの再生の開始及び停止を自動的に行うようにしても良い。
【００６２】
また、ステップＳＡ１３において自動伴奏の停止指示を検出した際に、直ちに自動伴奏を停止するようにしても良いが、再生中のフレーズ波形データＰＷの最後もしくは区切れ目（音の切れるところなど）まで自動伴奏を継続してから停止するようにしても良い。
【００６３】
以上、本発明の実施例によれば、伴奏パターンデータＡＰに対応付けて、コードタイプごとに楽音波形を記録したフレーズ波形データＰＷを用意するため、入力されるコードにあわせた自動伴奏が可能となる。
【００６４】
また、テンション音を単純にピッチシフトするとアヴォイドノートになる場合があるが、本実施例では、コードタイプごとに楽音波形を記録したフレーズ波形データＰＷを用意するため、テンション音を含むコードが入力されても対応が可能である。また、コードチェンジに伴うコードタイプの変化にも追従可能である。
【００６５】
さらに、コードタイプごとに楽音波形を記録したフレーズ波形データＰＷを用意するため、伴奏データ生成時の音質の劣化を防ぐことが可能となる。また、全てのコードルート音についてコードタイプごとにフレーズ波形データＰＷを用意すれば、ピッチシフトによる音質の劣化を防ぐこともできる。
【００６６】
さらに、伴奏パターンをフレーズ波形データで用意するため、高音質での自動伴奏が可能となる。また、ＭＩＤＩ音源では発音が困難な特殊な楽器や特殊な音階を利用した伴奏も自動で行うことが可能となる。
【００６７】
なお、上述の実施例では、フレーズ波形データＰＷの録音テンポを自動伴奏データＡＡの属性情報として記憶したが、フレーズ波形データＰＷごとにここに記憶するようにしても良い。また、実施例では、１つの録音テンポについてのみフレーズ波形データＰＷを用意したが、複数種類のテンポについてフレーズ波形データＰＷを用意してもよい。
【００６８】
なお、本発明の実施例は、電子楽器の形態に限らず実施例に対応するコンピュータプログラム等をインストールした市販のコンピュータ等によって、実施させるようにしてもよい。
【００６９】
その場合には、各実施例に対応するコンピュータプログラム等を、ＣＤ−ＲＯＭ等のコンピュータが読み込むことが出来る記憶媒体に記憶させた状態で、ユーザに提供してもよい。また、そのコンピュータ等が、ＬＡＮ、インターネット、電話回線等の通信ネットワークに接続されている場合には、通信ネットワークを介して、コンピュータプログラムや各種データ等をユーザに提供してもよい。
【００７０】
以上実施例に沿って本発明を説明したが、本発明はこれらに制限されるものではない。例えば、種々の変更、改良、組み合わせ等が可能なことは当業者に自明であろう。以下に、本発明の実施例に変形例を示す。
【符号の説明】
【００７１】
６…バス、７…ＲＡＭ、８…ＲＯＭ、９…ＣＰＵ、１０…タイマ、１１…検出回路、１２…設定操作子、１３…表示回路、１４…ディスプレイ、１５…外部記憶装置、１８…波形メモリ音源、１９…サウンドシステム、２０…ＤＡＣ、２１…通信Ｉ／Ｆ、２２…演奏操作子、１００…伴奏データ生成装置
【図１】
0005821229.tif 000002
【図２】
0005821229.tif 000003
【図３】
0005821229.tif 000004
【図４】
0005821229.tif 000005
【図５】
0005821229.tif 000006