(57)【特許請求の範囲】
【請求項１】
楽曲生成のために参照される演奏データから分割された複数のフレーズデータを記憶するフレーズ記憶手段と、
元楽曲データについて楽曲生成対象区間を指定する対象区間指定手段と、
対象区間指定手段により指定された楽曲生成対象区間に含まれる演奏情報を参照して該楽曲生成対象区間を複数のフレーズ区間に分割するフレーズ分割手段と、
フレーズ分割手段により分割されたフレーズ区間毎に、打点が適合するフレーズデータをフレーズ記憶手段から検索するフレーズ検索手段と、
フレーズ検索手段による検索の結果、当該フレーズ区間に適合したフレーズデータが検索された場合に、検索されたフレーズデータに基づき生成された演奏情報を当該フレーズ区間に書き込む第１演奏情報変換手段と、
フレーズ検索手段による検索の結果、当該フレーズ区間の途中までに適合したフレーズデータが検索された場合に、検索されたフレーズデータに基づき生成された演奏情報を当該フレーズ区間の途中までの部分に書き込むと共に、当該フレーズ区間の残り部分について、打点が適合するフレーズデータをフレーズ記憶手段から検索し、その検索結果に応じて、対応する演奏情報を生成し当該残り部分に書き込む第２演奏情報変換手段と
を具備することを特徴とする楽曲生成装置。
【請求項２】
フレーズ分割手段により分割された複数のフレーズ区間の夫々には、打点毎に音符の状態を示す音符状態情報が記録され、
フレーズ記憶手段に記憶された複数のフレーズデータの夫々には、打点毎に音符の状態を示す音符状態情報が記録され、
フレーズ検索手段及び第２演奏情報生成手段は、打点の適合に加えて音符状態情報の適合をチェックする
ことを特徴とする請求項１に記載の楽曲生成装置。
【請求項３】
楽曲生成のために参照される演奏データから分割された複数のフレーズデータを記憶するフレーズ記憶手段を具備し、楽曲生成装置として機能するコンピュータに、
元楽曲データについて楽曲生成対象区間を指定する対象区間指定ステップと、
対象区間指定ステップで指定された楽曲生成対象区間に含まれる演奏情報を参照して該楽曲生成対象区間を複数のフレーズ区間に分割するフレーズ分割ステップと、
フレーズ分割ステップで分割されたフレーズ区間毎に、打点が適合するフレーズデータをフレーズ記憶手段から検索するフレーズ検索ステップと、
フレーズ検索ステップにおける検索の結果、当該フレーズ区間に適合したフレーズデータが検索された場合に、検索されたフレーズデータに基づき生成された演奏情報を当該フレーズ区間に書き込む第１演奏情報変換ステップと、
フレーズ検索ステップにおける検索の結果、当該フレーズ区間の途中までに適合したフレーズデータが検索された場合に、検索されたフレーズデータに基づき生成された演奏情報を当該フレーズ区間の途中までの部分に書き込むと共に、当該フレーズ区間の残り部分について、打点が適合するフレーズデータをフレーズ記憶手段から検索し、その検索結果に応じて、対応する演奏情報を生成し当該残り部分に書き込む第２演奏情報変換ステップと
から成る手順を実行させる楽音生成プログラム。
【請求項４】
フレーズ分割ステップで分割された複数のフレーズ区間の夫々には、打点毎に音符の状態を示す音符状態情報が記録され、
フレーズ記憶手段に記憶された複数のフレーズデータの夫々には、打点毎に音符の状態を示す音符状態情報が記録され、
フレーズ検索ステップ及び第２演奏情報生成ステップでは、打点の適合に加えて音符状態情報の適合をチェックする
請求項３に記載の楽音生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、表情付けがなされバリエーションに富んだ楽曲データを自動的に生成することができる楽曲生成システムに関する。
【背景技術】
【０００２】
従来より、楽曲データを自動的に生成する楽曲生成装置が種々提案されている。例えば、特許文献１に開示された自動作曲装置では、全体作曲条件テンプレートが選択され、全体作曲条件に適したメロディテンプレートが検索される。メロディテンプレートには、メロディ骨格、コード進行、メロディピッチ及びメロディ打点（打点は、メロディの発音タイミングであり、１小節中の打点数は１小節中の音符数に相当する）などのデータが記憶されており、これらのデータはユーザ設定に応じて変形される。メロディテンプレート中の打点データ（リズムパターン）については、ユーザ設定に基づいて１小節毎のリズムパターン特徴連結データが１小節毎に読み出され、リズムパターンデータベースが検索されて１小節分のリズムパターンが選択される。そして、各小節のリズムパターンを曲全体にわたってつなぎ合わせることにより、曲全体のリズムパターンデータが生成される。特許文献２の電子楽器では、メロディパターンに対して、コード進行とキーを指定することによって、コードに対応するスケールが選択され、メロディパターンの各音に対してコードに対応した移調が行われ、スケールに合うようにピッチの補正が行われる。
【０００３】
特許文献３の楽曲生成装置では、複数個のフレーズを既存の楽曲から抽出してデータベース化し、これを利用してフレーズを並べ変えて簡便に楽曲を作成することができる。ここで、フレーズを既存の楽曲から抽出する際は、キーやコード、最初の音、最後の音などを抽出した各フレーズに固有の属性を付与してデータベース化する。さらに、特許文献４の旋律生成方式では、楽曲生成のためのフレーズデータベースを作成しておき、楽譜情報からフレーズデータを切出す。フレーズデータの切出しには固定長の切出し方式と可変長の切出し方式があり、固定長の場合は、１から４小節の長さで切出し位置を１小節ずつずらしながらフレーズデータを切り出し、可変長の場合は、楽譜情報を休符と休符の間で切り出し、切り出したフレーズデータが１小節未満の場合は、切り出したフレーズデータの前或いは後ろのフレーズデータのうち短い方と結合させたり、切り出したフレーズデータが４小節以上の場合は、小節内で最長の音価の後で分割させる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−９９０１５号公報
【特許文献２】特開平６−２２２７６４号公報
【特許文献３】特開２００６−１７８１０４号公報
【特許文献４】特開２００７−２１９１３９号公報
【０００５】
しかしながら、特許文献１のように作曲条件を多く指定する自動作曲装置には、手軽さがなく、基本的に、小節単位での設定及び編集操作を行うことになって煩雑である。特許文献２の電子楽器は、打点、音高及び音長の決定が目標であり、表情付けなどの高品質な演奏データの生成を期待することはできない。また、特許文献３の楽曲生成装置では、既存の楽曲から抽出したフレーズをつなぎ合わせた場合、出来上がりにオリジナリティが欠けてしまう可能性がある。特許文献４に開示されたフレーズの抽出方法では、何れも１小節以上となり、やはり、出来上がりにオリジナリティが欠けてしまう可能性がある。さらに、これらの従来技術を組み合わせたとしても、手軽な操作でオリジナリティのある高品質な楽曲データを生成することは難しい。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
この発明は、このような事情に鑑み、元楽曲データ中のアレンジ指定区間について、分解したフレーズ区間毎にフレーズデータベースを参照して最適なフレーズデータを選択し順次合成することにより、表情付けがなされバリエーションに富んだ高品質な楽曲データを自動的に生成することができる楽曲生成システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
この発明の主たる特徴に従うと、楽曲生成のために参照される演奏データ（リファレンス区間データＲｔ：Ｒｔｊ；Ｒｔｋ）から分割された複数のフレーズデータ（リファレンスパーツＲｐ：…，Ｒｐｂ，…；…，Ｒｐａ，…）を記憶するフレーズ記憶手段（ＲＢ）と、元楽曲データ（ターゲットソングＳｏ）について楽曲生成対象区間（ターゲット区間Ｓｔ）を指定する対象区間指定手段（ＴＳ）と、対象区間指定手段（ＴＳ）により指定された楽曲生成対象区間（Ｓｔ）に含まれる演奏情報を参照して該楽曲生成対象区間（Ｓｔ）を複数のフレーズ区間（ターゲットパーツＴｐ：Ｔｐａ，Ｔｐｂ，…）に分割するフレーズ分割手段（ＰＤ；Ｐ１〜Ｐ５）と、フレーズ分割手段（ＰＤ；Ｐ１〜Ｐ５）により分割されたフレーズ区間（Ｔｐ）毎に、打点が適合するフレーズデータ（Ｒｐ）をフレーズ記憶手段（ＲＢ）から検索するフレーズ検索手段（ＰＳ；Ｐ６）と、フレーズ検索手段（ＰＳ；Ｐ６）による検索の結果、当該フレーズ区間（Ｔｐ）に適合したフレーズデータ（Ｒｐ）が検索された場合に（Ｐ７＝ＹＥＳ）、検索されたフレーズデータ（Ｒｐ）に基づき生成された演奏情報を当該フレーズ区間（Ｔｐ）に書き込む第１演奏情報変換手段（ＰＲ；Ｐ８）と、フレーズ検索手段（ＰＳ；Ｐ６）による検索の結果、当該フレーズ区間（Ｔｐ）の途中までに適合したフレーズデータ（Ｒｐ）が検索された場合に（Ｐ７＝ＮＯ，Ｐ９＝ＹＥＳ）、検索されたフレーズデータ（Ｒｐ）に基づき生成された演奏情報を当該フレーズ区間（Ｔｐ）の途中までの部分に書き込むと共に（Ｐ１０）、当該フレーズ区間（Ｔｐ）の残り部分について、打点が適合するフレーズデータ（Ｒｐ）をフレーズ記憶手段（ＲＢ）から検索し（Ｐ１３）、その検索結果に応じて、対応する演奏情報を生成し当該残り部分に書き込む（Ｐ１０）第２演奏情報変換手段（ＰＳ，ＰＲ；Ｐ９〜Ｐ１３）とを具備する楽曲生成装置〔請求項１〕が提供され、楽曲生成のために参照される演奏データ（リファレンス区間データＲｔ：Ｒｔｊ；Ｒｔｋ）から分割された複数のフレーズデータ（リファレンスパーツＲｐ：…，Ｒｐｂ，…；…，Ｒｐａ，…）を記憶するフレーズ記憶手段（ＲＢ）を具備し、楽曲生成装置として機能するコンピュータに、元楽曲データ（ターゲットソングＳｏ）について楽曲生成対象区間（ターゲット区間Ｓｔ）を指定する対象区間指定ステップ（ＴＳ）と、対象区間指定ステップ（ＴＳ）で指定された楽曲生成対象区間（Ｓｔ）に含まれる演奏情報を参照して該楽曲生成対象区間（Ｓｔ）を複数のフレーズ区間（ターゲットパーツＴｐ：Ｔｐａ，Ｔｐｂ，…）に分割するフレーズ分割ステップ（ＰＤ；Ｐ１〜Ｐ５）と、フレーズ分割ステップ（ＰＤ；Ｐ１〜Ｐ５）で分割されたフレーズ区間（Ｔｐ）毎に、打点が適合するフレーズデータ（Ｒｐ）をフレーズ記憶手段（ＲＢ）から検索するフレーズ検索ステップ（ＰＳ；Ｐ６）と、フレーズ検索ステップ（ＰＳ；Ｐ６）における検索の結果、当該フレーズ区間（Ｔｐ）に適合したフレーズデータ（Ｒｐ）が検索された場合に（Ｐ７＝ＹＥＳ）、検索されたフレーズデータ（Ｒｐ）に基づき生成された演奏情報を当該フレーズ区間（Ｔｐ）に書き込む第１演奏情報変換ステップ（ＰＲ；Ｐ８）と、フレーズ検索ステップ（ＰＳ；Ｐ６）における検索の結果、当該フレーズ区間（Ｔｐ）の途中までに適合したフレーズデータ（Ｒｐ）が検索された場合に（Ｐ７＝ＮＯ，Ｐ９＝ＹＥＳ）、検索されたフレーズデータ（Ｒｐ）に基づき生成された演奏情報を当該フレーズ区間（Ｔｐ）の途中までの部分に書き込むと共に（Ｐ１０）、当該フレーズ区間（Ｔｐ）の残り部分について、打点が適合するフレーズデータ（Ｒｐ）をフレーズ記憶手段（ＲＢ）から検索し（Ｐ１３）、その検索結果に応じて、対応する演奏情報を生成し当該残り部分に書き込む（Ｐ１０）第２演奏情報変換ステップ（ＰＳ，ＰＲ；Ｐ９〜Ｐ１３）とから成る手順を実行させる楽音生成プログラム〔請求項３〕が提供される。なお、括弧書きは、理解の便のために付記した実施例の参照記号や用語等を表わし、以下においても同様である。
【０００８】
この発明による楽曲生成装置については、フレーズ分割手段（ＰＤ；Ｐ１〜Ｐ５）により分割された複数のフレーズ区間（Ｔｐ）の夫々には、打点毎に音符の状態を示す音符状態情報（和音ステート）が記録され（Ｐ４）、フレーズ記憶手段（ＲＢ）に記憶された複数のフレーズデータ（Ｒｐ）の夫々には、打点毎に音符の状態を示す音符状態情報（和音ステート）が記録され（Ｒ４）、フレーズ検索手段（ＰＳ；Ｐ６）及び第２演奏情報生成手段（ＰＳ，ＰＲ；Ｐ９〜Ｐ１３）は、打点の適合に加えて音符状態情報（和音ステート）の適合をチェックする〔請求項２〕ように構成することができ、この発明による楽曲生成プログラムについては、フレーズ分割ステップ（ＰＤ；Ｐ１〜Ｐ５）で分割された複数のフレーズ区間（Ｔｐ）の夫々には、打点毎に音符の状態を示す音符状態情報（和音ステート）が記録され（Ｐ４）、フレーズ記憶手段（ＲＢ）に記憶された複数のフレーズデータ（Ｒｐ）の夫々には、打点毎に音符の状態を示す音符状態情報（和音ステート）が記録され（Ｒ４）、フレーズ検索ステップ（ＰＳ；Ｐ６）及び第２演奏情報生成ステップ（ＰＳ，ＰＲ；Ｐ９〜Ｐ１３）では、打点の適合に加えて音符状態情報（和音ステート）の適合をチェックする〔請求項４〕ように構成することができる。
【発明の効果】
【０００９】
この発明の主たる特徴による楽曲生成システムでは（請求項１，３）、楽曲生成のために参照される高品質の演奏データ（リファレンス区間データＲｔ：Ｒｔｊ；Ｒｔｋ）から分割（分解）された複数のフレーズデータ（リファレンスパーツＲｐ：…，Ｒｐｂ，…；…，Ｒｐａ，…）がフレーズ記憶手段（ＲＢ）に用意されている。元楽曲データ（ターゲットソングＳｏ）について、ユーザ操作により、楽曲生成対象区間（ターゲット区間Ｓｔ）即ちアレンジしたい区間を指定すると（ＴＳ）、指定された楽曲生成対象区間（Ｓｔ）に含まれる演奏情報を参照して該楽曲生成対象区間（Ｓｔ）が複数のフレーズ区間（ターゲットパーツＴｐ：Ｔｐａ，Ｔｐｂ，…）に分割（分解）される（ＰＤ；Ｐ１〜Ｐ５）。次いで、分割されたフレーズ区間（Ｔｐ）毎に、打点（リズム位置）が適合（一致）する〔ここで、「一致」とは、少なくとも、全リズム位置を含んでいる（＝「完全に含んでいる」という）ことをいう〕フレーズデータ（Ｒｐ）をフレーズ記憶手段（ＲＢ）から検索（探索）するフレーズ検索（ＰＳ；Ｐ６）が行われ、フレーズ検索（ＰＳ；Ｐ６）の結果、当該フレーズ区間（Ｔｐ）に適合したフレーズデータ（Ｒｐ）が検索された場合は（Ｐ７＝ＹＥＳ）、検索されたフレーズデータ（Ｒｐ）に基づき生成された演奏情報を当該フレーズ区間（Ｔｐ）に書き込んで（上書きして）、フレーズ区間（Ｔｐ）の演奏情報を書き換える（ＰＲ；Ｐ８）。一方、フレーズ検索（ＰＳ；Ｐ６）の結果、当該フレーズ区間（Ｔｐ）の途中までに適合したフレーズデータ（Ｒｐ）しか検索されなかった場合には（Ｐ７＝ＮＯ，Ｐ９＝ＹＥＳ）、検索されたフレーズデータ（Ｒｐ）に基づき生成された演奏情報を当該フレーズ区間（Ｔｐ）の途中までの部分に書き込む（上書きする）と共に（Ｐ１０）、当該フレーズ区間（Ｔｐ）の残り部分について、打点が適合するフレーズデータ（Ｒｐ）をフレーズ記憶手段（ＲＢ）から再検索（再探索）し（Ｐ１３）、再検索の結果に応じて、対応する演奏情報を生成し当該残り部分に書き込む（Ｐ１０）。
【００１０】
つまり、この発明では、例えば、表情付け等がなされた高品位の演奏データ（Ｒｔ）を予め複数のフレーズデータ（Ｒｐ）に分割してフレーズデータベース（ＲＢ）に用意しておき、元楽曲データ（Ｓｏ）の指定区間（Ｓｔ）を複数のフレーズ区間（Ｔｐ）に分解し、フレーズ区間（Ｔｐ）毎に、フレーズデータベース（ＲＢ）を参照し、リズム位置が一致するか否かを適合条件としてフレーズデータ（Ｒｐ）を検索し、各フレーズ区間（Ｔｐ）においてリズム位置が一致する（少なくとも全リズム位置を含んでいる）フレーズデータ（Ｒｐ）を検索した場合は（Ｐ７＝ＹＥＳ）、検索したフレーズデータ（Ｒｐ）を当該フレーズ区間（Ｔｐ）に採用し、フレーズ区間（Ｔｐ）全体に対してリズム位置が完全には一致しない場合には（Ｐ７＝ＮＯ，Ｐ９＝ＹＥＳ）、フレーズ区間（Ｔｐ）の途中までは、リズム位置が一致するフレーズ部分を採用し、途中以降の残り部分については再検索（再探索）を行う（Ｐ１３）、というようにして、元楽曲データ（Ｓｏ）の指定区間（Ｓｔ）につき、フレーズデータベース（ＲＢ）を参照して自動的にアレンジする（ＡＲ）。
【００１１】
従って、この発明によれば、元楽曲データの指定された区間についてフレーズ区間に分割し、フレーズデータベースに用意された複数のフレーズデータから、各フレーズ区間毎に、そのリズム位置に合う最適なフレーズデータを選択し順次合成してゆくことにより、新規なフレーズを生成し、表情付けがなされた高品質な演奏データを簡単に自動生成することができる。ここで、新たに生成されるフレーズは、予め用意されたフレーズデータを単純にコード対応化するものではないので、バリエーションに富んだ作曲が可能となる。また、フレーズデータは、数小節にわたるものから１小節未満の短いものまで、多種の多様のものが数多く用意されるので、組合せが多様でオリジナリティのある曲を生成することができる。さらに、フレーズの長さに関わらず、フレーズの途中までを採用するということも可能になるので、用意されたフレーズデータを無駄なく活用することができる。
【００１２】
この発明による楽曲生成システムにおいては（請求項２，４）、分割された複数のフレーズ区間（Ｔｐ）の夫々には、打点毎に音符の状態を示す音符状態情報（和音ステート）が記録され（Ｐ４）、フレーズ記憶手段（ＲＢ）に記憶された複数のフレーズデータ（Ｒｐ）の夫々にも、打点毎に音符の状態を示す音符状態情報（和音ステート）が記録され（Ｒ４）、フレーズ検索（Ｐ６）或いは残り部分の再検索（Ｐ１３）の際には（ＰＳ）、適合条件として、打点（リズム位置）の適合（一致）に加えて音符状態情報（和音ステート）の適合（一致）をチェックするようにしている。従って、この発明によれば、元楽曲データの指定された区間における各フレーズ区間の音楽的特徴に対応した最適なフレーズデータをフレーズデータベースから選択することができる。
【図面の簡単な説明】
【００１３】
【図１】この発明の一実施例による楽曲生成システムの構成例を示す。
【図２】この発明の一実施例による楽曲生成の原理を説明するための図である。
【図３】この発明の一実施例による和音ステートの例を説明するための図である。
【図４】この発明の一実施例によるリファレンス登録処理フロー例である。
【図５】この発明の一実施例によるフレーズ変換処理フロー例の一部である。
【図６】この発明の一実施例によるフレーズ変換処理フロー例の他部である。
【図７】この発明の一実施例によるリファレンス採用処理フロー例である。
【発明を実施するための形態】
【００１４】
〔システム構成の概要〕
図１は、この発明の一実施例による楽曲生成システムの構成例を示し、図１（１）は、この発明の一実施例による楽曲生成装置のハードウエア構成例を示す。この発明の一実施例による楽曲生成装置は、電子的な音楽情報処理機能を有する一種のコンピュータであり、例えば、電子楽器のような電子音楽装置が用いられ、楽曲生成モード時に楽曲生成装置として機能し、楽曲生成システムが構築される。この楽曲生成装置は、図１（１）のように、中央処理装置（ＣＰＵ）１、ランダムアクセスメモリ（ＲＡＭ）２、読出専用メモリ（ＲＯＭ）３、外部記憶装置４、入力操作部５、表示部６、音源７、通信インターフェース（Ｉ／Ｆ）８などを備え、これらの要素１〜８はバス９を介して互いに接続される。
【００１５】
ＣＰＵ１は、ＲＡＭ２及びＲＯＭ３と共にデータ処理部を構成し、「フレーズ変換処理」と呼ばれる楽曲生成処理プログラムを含む所定の制御プログラムに従って、楽曲生成処理を含む種々の音楽情報処理を実行する。ＲＡＭ２は、これらの処理に際して必要な各種データを一時記憶するためのワーク領域として用いられ、例えば、楽曲生成モード時には、外部記憶装置４に設けられたフレーズデータ記憶部（フレーズデータベース）ＲＢから設定に応じて選択的に読み出されたフレーズデータ群（Ｒｐ）を保持するためのフレーズデータ保持領域が設けられる。また、ＲＯＭ３には、これらの処理を実行するために、各種制御プログラムや必要な各種制御データが予め記憶される。
【００１６】
外部記憶装置４は、ＨＤ（ハードディスク）、ＦＤ（フレキシブルディスク）、ＣＤ（コンパクトディスク）、ＤＶＤ（デジタル多目的ディスク）、フラッシュメモリ等の半導体メモリなどの記憶媒体と、その駆動装置を含む。制御プログラムや、種々の自動演奏データ等、任意の情報を任意の記憶媒体に記憶することができ、所定の記憶媒体には、種々のフレーズデータ（Ｒｐ）を記憶し管理するためのフレーズデータベースＲＢが構築される。また、記憶媒体は、着脱可能であってもよいし、この楽曲生成装置に内蔵されていてもよく、着脱可能な記録媒体にはＵＳＢメモリが含まれる。
【００１７】
入力操作部５は、鍵盤などの演奏操作子やキースイッチなどの設定操作子と、これらの操作子の操作を検出して検出内容に対応する操作情報をデータ処理部（１〜３）に導入する操作検出回路とにより構成される。データ処理部は、これら操作情報に基づき楽曲生成装置各部を制御し、例えば、演奏操作子の操作に応じて演奏操作入力に対応する演奏情報を音源７に送ったり、設定操作子中のモード設定ボタンの操作により楽曲生成モードで動作させたりすることができる。表示部６は、演奏や設定に必要な各種情報を表示するＬＣＤ等のディスプレイや、入力操作部５中のスイッチ類に併設した内蔵ランプ等を備え、これらの表示・点灯内容をデータ処理部からの指令で制御し、演奏操作や設定操作などに関する表示援助を行う。
【００１８】
音源７は、音源部やＤＳＰを有し、入力操作部５からの演奏操作情報から得られる実演奏情報に基づく楽音信号を生成したり、記憶装置４又は通信Ｉ／Ｆ８からの自動演奏データに基づく楽音信号を生成すると共に、生成される楽音信号に所定の効果を付与する。音源７に接続されるサウンドシステム１０は、Ｄ／Ａ変換部やアンプ、スピーカ等を備え、音源７から出力される楽音信号に基づく楽音を発生する。
【００１９】
通信Ｉ／Ｆ８は、ＭＩＤＩ等の音楽用有線Ｉ／Ｆ、ＵＳＢ等の汎用ネットワークＩ／Ｆ或いは無線Ｌａｎ等の汎用近距離無線Ｉ／Ｆ等を含み、外部電子音楽装置ＭＭと交信することができ、例えば、外部電子音楽装置ＭＭの外部記憶装置にには、ＭＩＤＩ演奏データやフレーズデータ（Ｒｐ）等の音楽情報が記憶され、この楽曲生成装置からこれらの音楽情報源にアクセスし、所望の音楽情報をこの楽曲生成装置で利用することができる。
【００２０】
〔楽曲生成システムの概要〕
図１（２）は、この発明の一実施例による楽曲生成システムの機能ブロック図である。この楽曲生成装置（電子音楽装置）のＣＰＵ１を含むデータ処理部（１〜３）は、楽曲生成モードでは、図１（２）に示すように、ターゲット区間指定部ＴＳ、アレンジ部ＡＲ及びリファレンスフレーズ分割部ＲＤとして機能し、楽曲生成装置（電子音楽装置）の外部記憶装置４に設けられたフレーズデータ記憶部ＲＢには、「リファレンスパーツ」と呼ばれる多種多様なフレーズデータＲｐが記憶され、リファレンスフレーズデータベースが構築される。なお、リファレンスフレーズデータベースは、単にフレーズデータベースとも呼ばれ、フレーズデータ記憶部と同じ参照記号「ＲＢ」を付記して説明される。
【００２１】
フレーズデータＲｐは、「ターゲットソング」又は「ターゲットソングデータ」と呼ばれ楽曲生成の元になる元楽曲データＳｏから新楽曲データＳｏａを生成する際に参照される高品質の参照楽曲データＲｓから作成することができる。参照楽曲データＲｓは、リファレンスソング又はリファレンスソングデータとも呼ばれ、フレーズデータ作成時には、まず、リファレンス区間切出し部（図示せず）により、参照楽曲データＲｓのうち楽曲生成の際に参照したい区間のデータ（リファレンス区間データと呼ばれる）Ｒｔが参照演奏データとして切り出される。次いで、リファレンスフレーズ分割部ＲＤにより、リファレンス区間データ（参照演奏データ）Ｒｔに含まれる音符や休符などの演奏情報の内容に従ってリファレンス区間データＲｔが複数のリファレンスフレーズ区間Ｒｐに分割（分解）され、分割された各リファレンスフレーズ区間Ｒｐのデータがフレーズデータ（リファレンスパーツ）としてフレーズデータベースＲＢに記憶され（リファレンスフレーズ区間には、フレーズデータと同じ参照記号「Ｒｐ」が付記される）、フレーズデータベースＲＢは、多数のフレーズデータＲｐを、例えば、参照楽曲データＲｓ別に整理して記憶する。
【００２２】
さて、ターゲットソング（元楽曲データ）Ｓｏについては、まず、ターゲット区間指定部ＴＳにより、ユーザによる対象区間指定操作に応じて楽曲生成対象区間即ちアレンジしたい区間（ターゲット区間）が指定され、指定された楽曲生成対象区間のデータ（ターゲット区間データと呼ばれる）Ｓｔはアレンジ部ＡＲに導入される。
【００２３】
アレンジ部ＡＲは、主として、ターゲットフレーズ分割部ＰＤ、フレーズ検索部ＰＳ及びデータ変換部ＰＲで構成され、各機能部ＰＤ，ＰＳ，ＰＲは、予め設定（指定）された分解能（クォンタイズ長或いはクォンタイズ値とも呼ばれる）、休符長（休符区間の長さ）、最大小節長、調、拍子、テンポ、コードなどのパラメータＰｒに従って対応する機能を実行する。ターゲットフレーズ分割部ＰＤは、入力されたターゲット区間データＳｔに含まれる音符や休符などの演奏情報の内容に従って、当該ターゲット区間データＳｔを複数のターゲットフレーズ区間（単にフレーズ区間ともいう）Ｔｐに分割（分解）すると共に、分割されたターゲットフレーズ区間Ｔｐ毎に、リズム位置（打点）と、各リズム位置における音符（音高指定情報）の状態を示す「和音ステート」とを求め、求められたリズム位置及び和音ステートの情報を付加した各ターゲットフレーズ区間Ｔｐのデータを「ターゲットパーツ」としてフレーズ検索部ＰＳに出力する。なお、ターゲットパーツには、ターゲットフレーズ区間と同じ参照記号「Ｔｐ」が付記される。
【００２４】
フレーズ検索部ＰＳは、ユーザによる検索対象指定操作に応じて指定されたフレーズデータベースＲＢ内の所定のフレーズデータ群（リファレンスパーツ群）に対して、分割されたターゲットフレーズ区間即ちターゲットパーツＴｐ毎に所定の条件に適合するフレーズデータ即ちリファレンスパーツＲｐを検索（探索）し、検索されたリファレンスパーツＲｐのデータをターゲットパーツＴｐのデータと共にデータ変換部ＰＲに送る。なお、この検索処理では、適合条件（検索条件）としてリズム位置（打点）及び和音ステートの情報が利用され、各ターゲットパーツＴｐのリズム位置が一致する、つまり、少なくとも、ターゲットパーツＴｐの全リズム位置がリファレンスパーツＲｐのリズム位置に含まれる（「完全にリズム位置が含まれる」という）だけでなく、一致するリズム位置（即ち、含まれるリズム位置）の和音ステートが一致するリファレンスパーツＲｐが、フレーズデータベースＲＢから順次探索される。
【００２５】
データ変換部ＰＲは、ノート調整部とも呼ばれ、検索されたリファレンスパーツＲｐの各音高について、ターゲットパーツＴｐのコードや調に合うように、また、ターゲットパーツＴｐの元々の音域に合うように変更する等の、ノート調整を行い、これにより、検索されたリファレンスパーツＲｐに基づいてターゲットパーツＴｐに合う演奏情報を生成し、生成された演奏情報で各ターゲットパーツＴｐの演奏情報を順次書き換えていく。同時に、検索されたリファレンスパーツＲｐに含まれる表情付けデータ（コントロールデータ）などをターゲットパーツＴｐに書き込む。そして、全ターゲット区間データＳｔ内のターゲットパーツＴｐを書き換えることにより、アレンジされたターゲット区間データＳｔａが生成され、さらに、アレンジされたターゲット区間データＳｔａを元楽曲データＳｏのターゲット区間Ｓｔに組み込むことによって、アドリブ付きの新たなソングデータ（新楽曲データ）Ｓｏａが生成される。
【００２６】
図２は、この発明の一実施例による楽曲生成の仕組みを原理的に説明するための図であり、ターゲットソングＳｏ中のターゲット区間データＳｔは、図２（１）に示すように、ターゲットフレーズ分割部ＰＤにより所定長の休符区間（△印）で複数のターゲットパーツＴｐ：…，Ｔｐａ，Ｔｐｂ，…に分割される。これに対して、フレーズ検索部ＰＳは、ユーザによる参照データ選択操作に応じて所望のリファレンスソングＲｓを選択し、図２（２）に示すように、フレーズデータベースＲＢから、選択されたリファレンスソングＲｓに対応して記憶された２つのリファレンス区間データＲｔｊ，Ｒｔｋに含まれるリファレンスパーツ（群）ＲｐをＲＡＭ２のフレーズデータ保持領域にロードする。フレーズ検索部ＰＳは、ユーザによる検索開始操作に応じてフレーズ検索の開始が指示されると、フレーズ区間指定手段ＰＳｓによりターゲット区間データＳｔ内のターゲットパーツＴｐを先頭（図示せず）から順に指定し、指定されたターゲットパーツＴｐに適合するリファレンスパーツＲｐをリファレンス区間データＲｔｊ，Ｒｔｋから、順次、探索する。
【００２７】
例えば、或るターゲットパーツＴｐａについて、その適合条件に従いリファレンス区間データＲｔｊ，Ｒｔｋ内をサーチし、その結果、図２（２）下段のように、リファレンス区間データＲｔｋ内からターゲットパーツＴｐａに対応するリファレンスパーツＲｐａが見つかると、このターゲットパーツＴｐａを対応するリファレンスパーツＲｐａで置換する。次のターゲットパーツＴｐｂについても同様にサーチし、その結果、図２（２）上段のように、リファレンス区間データＲｔｊ内からリファレンスパーツＲｐｂが見つかると、このターゲットパーツＴｐｂを対応するリファレンスパーツＲｐｂで置換する。このようにして、順次、各ターゲットパーツＴｐ：…，Ｔｐａ，Ｔｐｂ，…に対応するリファレンスパーツ（フレーズデータ）Ｒｐ：…，Ｒｐａ，Ｒｐｂ，…を参照してフレーズを合成してゆくことで、新たなターゲット区間データＳｔａを生成することができる。
【００２８】
ターゲットフレーズ分割では、ターゲット区間データＳｔを休符情報などに基づき複数のターゲットパーツ（フレーズ区間）Ｔｐに分割する。すなわち、図２（１）に“△”で示すように、ターゲット区間データＳｔ中の所定長の休符区間がある位置或いは所定の最大小節長になる位置（△）でターゲットパーツ（例えば、Ｔｐａ，Ｔｐｂ）を分ける。分割後は、ユーザ設定で指定された所定の分解能（例えば、４分音符長）で各ターゲットパーツＴｐをクォンタイズして分析し、リズム位置及び和音ステート情報を求めておく。
【００２９】
和音ステートは、各打点（リズム位置）における音符（音高指定情報）の状態を表わす情報であり、図３は、この発明の一実施例による和音ステートの例を示す。この例では、ステート値が「１」〜「５」である５種類の和音ステートがあり、ステート値＝「１」の和音ステートは、「単音」と呼ばれ、リズム位置にノートオンが１つだけ存在する状態を表わし、ステート値＝「２」の和音ステートは、「速弾き」と呼ばれ、リズム位置にノートオンが２つ以上存在し、そのうち少なくとも１つがクォンタイズ長（分解能）の１／２未満の音長である状態を表わす。また、ステート値＝「３」の和音ステートは、「コード演奏」と呼ばれ、リズム位置にノートオンが２つ以上存在し、その全てがクォンタイズ長の１／２以上の音長である状態を表わす。さらに、ステート値＝「４」の和音ステートは、「ＰＢによる音程変更（Ｓｉｎｇｌｅ）」と呼ばれ、リズム位置にピッチベンド（ＰＢ）による音程変更が１つだけ存在し、その他に通常のノートオンは存在しない状態を表わし、ステート値＝「５」の和音ステートは、「ＰＢによる音程変更（Ｍｕｌｔｉ）」と呼ばれ、リズム位置にピッチベンド（ＰＢ）による音程変更が少なくとも１つ存在し、加えて、通常のノートオン又はピッチベンド（ＰＢ）による音程変更が１つ以上存在する場合を表わしている。なお、例えば、ステート値＝「３」のケースを、ノートオンが２つの場合、３つの場合など、更に細かくステート値を設定してもよい。
【００３０】
フレーズ検索（ＰＳ）においては、リズム位置及び和音ステートがターゲットパーツＴｐと一致することを適合条件にしてリファレンスパーツＲｐが検索される。その際、和音ステートの一致による対応リファレンスパーツＲｐの検索は、和音ステートのステート値が同じ値であることを条件として行われる。
【００３１】
各ターゲットパーツＴｐのフレーズ検索（ＰＳ）において、当該ターゲットパーツＴｐに完全に適合したリファレンスパーツＲｐは検索されず、当該ターゲットパーツＴｐの途中まで適合したリファレンスパーツＲｐが検索された場合は、データ変換部ＰＲにより、検索されたリファレンスパーツＲｐに基づいて、当該ターゲットパーツＴｐの途中までに合う演奏情報を生成し、この演奏情報で当該ターゲットパーツＴｐの途中までを書き換える。また、書き換え途中以降の当該ターゲットパーツＴｐの残り部分については、リズム位置及び和音ステートが適合するリファレンスパーツＲｐを、フレーズ保持領域に保持されているリファレンスパーツ群から再検索（再探索）し、再検索の結果に応じて、対応する演奏情報を生成し当該残り部分を書き換える。なお、再検索でも、当該ターゲットパーツＴｐの残り部分の途中までしか適合リファレンスパーツＲｐが検索されなかった場合は、適合リファレンスパーツＲｐに対応する演奏情報で当該ターゲットパーツＴｐの残り部分の途中までを書き換え、それ以降について、同様の処理を繰り返す。
【００３２】
また、各ターゲットパーツＴｐのフレーズ検索（ＰＳ）において、当該ターゲットパーツＴｐに適合したリファレンスパーツＲｐも当該ターゲットパーツＴｐの途中までに適合したリファレンスパーツＲｐも検索されない場合、当該ターゲットパーツＴｐの先頭音（ノートオン）位置の演奏情報を「未対応」とし、第２音（ノートオン）位置以降について再検索（再探索）を行う。さらに、再検索でも、何ら適合したリファレンスパーツＲｐが検索されない場合は、再検索した先頭音（ノートオン）の演奏情報を「未対応」とし、更に次の音（ノートオン）以降について同様の処理を繰り返す。ここで、「未対応」としたターゲットパーツＴｐ内の演奏情報については、別途、例えば、そのままの音符情報で残すようにする等、何らかの演奏情報を生成する処理が行われる。
【００３３】
以上のように、この発明の一実施例による楽曲生成システムでは、楽曲生成のために参照される高品質のリファレンス区間データ（演奏データ）Ｒｔから複数のリファレンスパーツ（フレーズデータ）Ｒｐに分割され（ＲＤ）フレーズデータベース（フレーズデータ記憶部）ＲＢに用意される。ターゲットソング（元楽曲データ）Ｓｏのアレンジしたいターゲット区間（楽曲生成対象区間）Ｓｔは、該区間Ｓｔに含まれる演奏情報を参照することにより複数のターゲットパーツ（フレーズ区間）Ｔｐに分割され（ＰＤ）、各ターゲットパーツＴｐ毎に所定の適合条件を満足するリファレンスパーツＲｐをフレーズデータベースＲＢから検索（探索）するフレーズ検索ＰＳが行われる。フレーズ検索ＰＳにおける適合条件としては、少なくとも打点（リズム位置）が一致することが必要であり、さらに、「和音ステート」と呼ばれる各打点における音符の状態が一致することが好ましい。フレーズ検索ＰＳの結果、当該ターゲットパーツＴｐに適合したリファレンスパーツＲｐが検索された場合、検索されたリファレンスパーツＲｐに基づき生成される演奏情報で当該ターゲットパーツＴｐが書き換えられる（ＰＲ）。一方、フレーズ検索ＰＳの結果、当該ターゲットパーツＴｐの途中までに適合するリファレンスパーツＲｐしか検索されなかった場合は、当該ターゲットパーツＴｐの途中までの部分は、検索されたリファレンスパーツＲｐに基づき生成された演奏情報で書き換えられ、途中以降の残り部分については、所定の適合条件を満足するリファレンスパーツＲｐがフレーズデータベースＲＢから再検索（再探索）される。従って、このシステムによれば、ターゲットソングＳｏのアレンジしたい部分Ｓｔが、ターゲットパーツＴｐ毎にリズムや音節などが近似し品質の良いリファレンスパーツＲｐで変換され、所望のアドリブ部分を作成することができる。
【００３４】
〔処理フロー例〕
図４は、この発明の一実施例によるリファレンス登録処理の動作例を表わすフローチャートである。この楽曲生成装置では、待機モードや実演奏モード、自動演奏モード等の任意の動作モードで動作しているときに、モード設定ボタンを操作してリファレンス登録モードの動作状態にすることができる。リファレンス登録モードでは、図４に示されるリファレンス登録処理によって、楽曲生成処理（フレーズ変換処理）に先立ち、リファレンスソング（参照楽曲データ）Ｒｓ中のリファレンス区間データ（参照演奏データ）ＲｔをＲＡＭ２内の所定記憶領域にロードして分析し、分析結果をフレーズデータベースＲＢにリファレンスパーツＲｐとして蓄積しておくことができる。
【００３５】
図４において、ＣＰＵ１は、まず、ステップＲ１で、基になるリファレンス区間データＲｔに含まれる演奏情報を先頭ノート（少なくともタイミング及び音高情報を持つ）から順に評価（分析）することができるように読み込み、ユーザ操作により分解能を指定（決定）する。続くステップＲ２では、リファレンス区間データＲｔについて、ユーザ操作により指定された長さ（指定休符長）以上の休符区間〔図２（２）の“△”〕を検出する度に、その位置でリファレンスパーツＲｐに分割してゆく。休符長についても、予め定められた複数の指定長で分析しておくことが好ましい。また、分割するリファレンスパーツＲｐの区間幅について、上限を例えば２小節などの最大小節長に予め指定しておき、上限（最大小節長）を超えないように休符区間を検出して分割していくのがよい。つまり、リファレンス区間データＲｔ内に含まれる休符情報に基づき、指定長以上の休符区間が検出されたときにリファレンスパーツＲｐに分割し、分割されるリファレンスパーツＲｐの長さを、指定された最大小節長で、長くても最大小節長（例えば、２小節長）に制限する。
【００３６】
ステップＲ２のリファレンスパーツ分割の後は、分割された複数のリファレンスパーツＲｐに含まれる演奏情報について、先頭のリファレンスパーツＲｐから順に、ステップＲ３，Ｒ４の処理を順次行う。つまり、ステップＲ３では、各リファレンスパーツＲｐ毎に、指定された分解能（指定分解能という。例えば、４分、４分３連、８分、８分３連、１６分、１６分３連など。）でそれぞれクォンタイズしてリズム位置を求め（クォンタイズは、複数種類、前もって行ってもよい）、求められた各音符のリズム位置を表わすリズム位置情報をＲＡＭ２内の所定記憶領域に元のリファレンスパーツＲｐと対応付けて保持する。ステップＲ４では、求められた各リズム位置における和音ステートを求め、求められた和音ステートをステート値で表わした和音ステート情報をＲＡＭ２内の所定記憶領域にリズム位置情報と対応付けて保持する。次のステップＲ５では、リファレンス区間データＲｔ内の全てのリファレンスパーツＲｐについてリズム位置情報及び和音ステート情報を求める処理が終了したか否かを判定し、全リファレンスパーツＲｐの処理が終了していないときは（Ｒ５＝ＮＯ）、ステップＲ３に戻り、次のリファレンスパーツＲｐにつきステップＲ３，Ｒ４の処理を繰り返す。
【００３７】
そして、全てのリファレンスパーツＲｐについて処理が終了すると（Ｒ５＝ＹＥＳ）、ステップＲ６に進み、各リファレンスパーツＲｐ毎に、ステップＲ３，Ｒ４で得られＲＡＭ２内に保持されたリズム位置情報及び和音ステート情報を各リファレンスパーツＲｐの演奏情報と対応付けたものを、リファレンスソングＲｓ別かつリファレンス区間データＲｔ別のリファレンスパーツＲｐとして、フレーズデータベースＲＢに記憶し登録する。そして、このリファレンス登録処理を終了し、元の動作モードに戻る。なお、フレーズデータベースＲＢへの登録に際し、各リファレンスパーツＲｐは、分析に用いたクォンタイズ長別及び休符長別に複数種類分登録しておくことが好ましい。
【００３８】
図５〜図７は、この発明の一実施例によるフレーズ変換処理（楽曲生成処理）の動作例を表わすフローチャートである。モード設定ボタンを操作してフレーズ変換モードの動作状態にすると、図５〜図７に示されるフレーズ変換処理によって、ターゲットソング（元楽曲データ）Ｓｏ中のターゲット区間データＳｔをＲＡＭ２内の所定記憶領域にロードし、フレーズデータベースＲＢのリファレンスパーツＲｐを参照しつつ新たなターゲット区間データＳｔａを生成することができる。
【００３９】
図５〜図６において、ＣＰＵ１は、まず、ステップＰ１〜Ｐ５の分析処理により、前述したリファレンス登録処理（図４）のステップＲ１〜Ｒ５と同様の手順で、ターゲット区間データＳｔを分析し、分析結果をターゲットパーツＴｐとしてステップＰ６〜Ｐ１５の検索及び変換処理に利用することができる。つまり、ステップＰ１では、ターゲット区間データＳｔの演奏情報を先頭ノート（少なくともタイミング及び音高情報を持つ）から順に評価（分析）することができるように読み込み、ユーザ操作により分解能を指定（決定）する。次のステップＰ２では、ターゲット区間データＳｔに含まれる休符情報に基づき指定長以上の休符区間〔図２（１）の“△”〕を検出し、最大小節長以下のターゲットパーツＴｐに分割してゆく。つまり、ステップＲ２と同様に、指定長以上の休符区間が検出されたとき、或いは、このような休符区間が検出されなくても、予め指定された最大小節長（例えば、２小節長）になったときに、ターゲットパーツＴｐに分割する。次いで、ステップＰ３にて、各ターゲットパーツＴｐ毎に指定分解能でクォンタイズしてリズム位置情報を求め（クォンタイズは、前もって実施しておいてもよい）、続くステップＰ４で、ターゲットパーツＴｐ内の各リズム位置における和音ステート（ステート値）を求め、リズム位置情報に対応付けてＲＡＭ２の所定領域に記憶する。そして、ステップＰ５で、全てのリファレンスパーツＲｐについて分析処理が終了しないと判定している間は（Ｐ５＝ＮＯ）、ステップＰ３，Ｐ４の処理を繰り返す。なお、ターゲット区間データＳｔを分析する場合には、複数種類の分解能のうちユーザ操作で指定された何れか１種類の指定分解能でクォンタイズされ（Ｐ３）、休符区間の長さについても、予め定められた複数の休符長からユーザ操作で指定された何れか１種類の休符長でフレーズ分割される（Ｐ４）。また、休符区間が最大小節長を超える毎に、休符のみの区間として分割しておいてもよい。
【００４０】
ステップＰ１〜Ｐ５のターゲット区間データ分析処理の後は（Ｐ５＝ＹＥＳ）、ステップＰ６の検索処理を行い、フレーズ区間指定手段ＰＳｓにより指定されるターゲットパーツＴｐ毎に、リズム位置及び和音ステートが一致するリファレンスパーツ、即ち、リズム位置を完全に含み、含まれているリズム位置に対応する和音ステートが同じであるリファレンスパーツＲｐを探す。この場合、指定されたターゲットソングＳｏと、ターゲット区間データ分析処理で用いた分解能及び休符長と同一の分解能及び休符長とに対応するリファレンスパーツ群を検索対象の範囲とし、当該リファレンスパーツ群をフレーズデータベースＲＢから読み出しＲＡＭ２のフレーズデータ保持領域にロードする。従って、例えば、ステップＰ２で基準となる指定休符長を変更した場合、検索対象の範囲は、変更後の休符長に対応するリファレンスパーツ群が選択される。なお、ターゲットパーツＴｐが休符のみの場合は、設定に応じて何れかのリファレンスパーツを採用するようにすればよい。
【００４１】
次のステップＰ７では、検索処理の結果、完全に一致するリファレンスパーツＲｐ、即ち、「それぞれのターゲットパーツＴｐについて、全フレーズ区間にわたり、少なくとも完全にリズム位置情報を含み（当該ターゲットパーツの全てのリズム位置情報を含み）、含まれている各リズム位置に対応する和音ステートが同じである（一致する）リファレンスパーツＲｐ」が見つかったか否かを判定し、完全に一致するリファレンスパーツＲｐが見つかったときは（Ｐ７＝ＹＥＳ）、ステップＰ８でリファレンス採用処理を行い、見つかったリファレンスパーツＲｐを当該ターゲットパーツＴｐの変換用データに採用する。
【００４２】
一方、完全に（＝全フレーズ区間にわたって）一致するリファレンスパーツＲｐが見つからないときは（Ｐ７＝ＮＯ）、ステップＰ９（図６）に進み、和音ステートを含めリズム位置がフレーズ区間の途中まで一致するリファレンスパーツＲｐ、即ち、リズム位置が途中まで一致し、一致しているリズム位置に対応する和音ステートがそれぞれ一致するリファレンスパーツＲｐが見つかったか否かを判定し、見つかったときは（Ｓ９＝ＹＥＳ）、ステップＰ１０に進み、途中までのリファレンス採用処理を行い、見つかったリファレンスパーツＲｐを当該ターゲットパーツＴｐの一致区間（先頭から途中まで）の変換用データに採用する。なお、リファレンスパーツＲｐが複数見つかった場合は、長い区間で（より後方の位置まで）一致するものを採用する。これに対して、途中まで一致するリファレンスパーツさえ見つからないときは（Ｐ９＝ＮＯ）、ステップＰ１１に進んで、現在、一致判定の対象となっているターゲットパーツＴｐ或いは「残り区間」に決定されているターゲットパーツ部分について、先頭の１音を「未対応」に決定し、先頭から２音目以降を新たに「残り区間」に決定し、２音目以降がない場合は「残り区間なし」に決定する。
【００４３】
ステップＰ１０或いはステップＰ１１の処理の後は、ステップＰ１２で、「残り区間」があるか否かを判定し、「残り区間」があるときは（Ｓ１２＝ＹＥＳ）、ステップＰ１３に進み、「残り区間」について、対応するリファレンスパーツを探す処理を行う。ステップＰ１３の残り区間検索処理の後は、ステップＰ９に戻り、和音ステートを含めリズム位置が全部或いは途中まで一致するリファレンスパーツ、即ち、リズム位置が全部或いは途中まで一致し、一致しているリズム位置に対応する和音ステートにそれぞれ一致するリファレンスパーツＲｐが見つかったか否かを判定し、判定結果に応じてステップＰ１０或いはステップＰ１１の処理を行い、残り区間がある間は（Ｓ１２＝ＹＥＳ）、ステップＰ１３，Ｐ９〜Ｐ１２の処理を繰り返す。なお、ステップＰ１１で「未対応」に決定された音については、例えば、前述したように、元の音符情報をそのまま残すようにしてもよいし、また、「未対応」がある期間連続するようであれば、「休符のみの区間」と同様に処理するようにしてもよい。
【００４４】
ステップＰ８（図５）のリファレンス採用処理の後或いはステップＰ１２（図６）で「残り区間」がないと判定した後は（Ｓ１２＝ＮＯ）、ステップＰ１４（図５）で、当該ターゲットパーツＴｐの検索及び変換処理を終了したと判断し、次のステップＰ１５に進む。ステップＰ１５では、全てのターゲットパーツＴｐについて検索及び変換処理が終了したか否かを判定し、検索及び変換処理が終了していないときは（Ｓ１５＝ＮＯ）、ステップＰ６に戻り、フレーズ区間指定手段ＰＳｓにより指定される次のターゲットパーツＴｐについて、ステップＰ６〜Ｐ１５の処理を繰り返す。そして、全てのターゲットパーツＴｐについて検索及び変換処理が終了すると（Ｓ１５＝ＹＥＳ）、このフレーズ変換処理（楽曲生成処理）を終了し、元の動作モードに戻る。
【００４５】
図７は、この発明の一実施例によるリファレンス採用処理の例を示すフローチャートであり、リファレンス採用処理は、フレーズ変換処理（楽曲生成処理）のステップＰ８（図５）或いはステップＰ１０（図６）で実行される。リファレンス採用処理の最初のステップＳ１では、フレーズ区間指定手段ＰＳｓにより現在処理対象に指定されているターゲットパーツＴｐについて、見つかったリファレンスパーツＲｐにリズム位置が完全に含まれ、含まれているリズム位置に対応する和音ステートがそれぞれ一致する区間のイベントリスト（演奏情報）を作成する。次のステップＳ２では、当該リファレンスパーツＲｐの全部或いは途中までの一致区間について、イベントリスト（演奏情報）を作成する。このとき、区間外であっても、区間内のノート情報に有効なコントロールデータなどの有効情報がある場合は、一緒にイベントリスト内に追加しておく。
【００４６】
続くステップＳ３では、当該ターゲットパーツＴｐから作成したイベントリストに基づいて、当該リファレンスパーツＲｐから作成したイベントリストにおけるノート情報を調整する。例えば、ターゲットパーツＴｐのコード情報や調情報に合うように、また、該ターゲットパーツＴｐの元々の音域に合うように、リファレンスパーツＲｐのノート音高を変更する。また、次のステップＳ４では、当該ターゲットパーツＴｐの一致区間について、その演奏情報を消去した上、ノート情報が調整されたリファレンスパーツＲｐのイベントリストより、演奏情報をコピーし、必要に応じて、更にノートイベントデータ以外のコントロールデータ（例えば、メインボリュームやアフタータッチなど）もコピーする。そして、このコピー処理の後はリファレンス採用処理を終了し、フレーズ変換処理（楽曲生成処理）のステップＰ１４（図５）或いはステップＰ１２（図６）にリターンする。
【００４７】
〔種々の実施態様〕
以上、図面を参照しつつこの発明の好適な実施の一形態について説明したが、これは単なる一例であり、この発明は、発明の精神を逸脱しない範囲で種々の変更が可能である。例えば、実施例では、予めリファレンスパーツ（Ｒｐ）をフレーズデータベースに登録しておき、指定された区間のターゲットソング（Ｓｔ）を楽曲生成の都度解析してターゲットパーツ（Ｔｐ）としたが、指定された区間のリファレンスソング（Ｒｐ）についても、その都度解析してリファレンスパーツを作成してもよい。また、楽曲生成の際に参照される参照楽曲データ（Ｒｓ）については、実施例では１曲としたが、複数曲でもよい。
【符号の説明】
【００４８】
Ｒｓ  リファレンスソング［データ］（参照楽曲データ）、
Ｒｔ：Ｒｔｊ，Ｒｔｋ  リファレンス区間データ（参照演奏データ）、
ＲＢ  ［リファレンス］フレーズデータベース又はフレーズデータ記憶部、
Ｒｐ：Ｒｐａ，Ｒｐｂ  リファレンスパーツ（フレーズデータ）、
Ｓｏ  ターゲットソング［データ］（元楽曲データ）、
Ｓｔ  ターゲット区間［データ］（楽曲生成対象区間又はアレンジ区間［データ］）、
Ｔｐ：Ｔｐａ，Ｔｐｂ  ターゲットパーツ（フレーズ区間［データ］）。
【図１】
0005504857.tif 000002
【図２】
0005504857.tif 000003
【図３】
0005504857.tif 000004
【図４】
0005504857.tif 000005
【図５】
0005504857.tif 000006
【図６】
0005504857.tif 000007
【図７】
0005504857.tif 000008