(57)【特許請求の範囲】
【請求項１】
曲の被模倣区間のメロディを供給する供給手段と、
前記被模倣区間のメロディからピッチ情報を抽出する手段と、
メロディ生成用データを供給する手段と、
供給されたメロディ生成用データに基づき模倣区間における所定の音のピッチ及び打点を決定する手段と、
前記抽出したピッチ情報を加工する加工手段であって、前記被模倣区間における所定の音のピッチ情報と前記模倣区間における前記所定の音のピッチ情報との差分を算出し、該算出した差分を前記被模倣区間における前記所定の音以外の音のピッチ情報に加算して前記模倣区間における前記所定の音以外の音のピッチ情報を算出するものと、
前記加工したピッチ情報に基づいて、前記模倣区間のメロディを生成する生成手段と
を具えた自動作曲装置。
【請求項２】
曲の被模倣区間のメロディを供給する供給手段と、
前記被模倣区間のメロディからピッチ情報を抽出する手段と、
メロディ生成用データを供給する手段と、
供給されたメロディ生成用データに基づき模倣区間における重要音のピッチ及び打点を決定する手段と、
前記抽出したピッチ情報を加工する加工手段であって、前記被模倣区間における重要音のピッチ情報と前記模倣区間における前記重要音のピッチ情報との差分を算出し、該算出した差分を前記被模倣区間における非重要音のピッチ情報に加算して前記模倣区間における非重要音のピッチ情報を算出するものと、
前記加工したピッチ情報に基づいて、前記模倣区間のメロディを生成する生成手段と
を具えた自動作曲装置。
【請求項３】
曲の所定の区間毎に曲の生成条件を指定する手段と、
前記生成条件に従い、被模倣区間と模倣区間とを決定する手段と
を具えたことを特徴とする請求項１又は２に記載の自動作曲装置。
【請求項４】
前記生成手段は、前記加工手段によって加工されたピッチ情報が所定の音楽条件に従わない場合には該ピッチ情報を修正し、該修正したピッチ情報に基づいて、供給された所定の区間とは異なる区間のメロディを生成することを特徴とする請求項１又は２に記載の自動作曲装置。
【請求項５】
プログラムに従って動作する中央処理装置に、曲の被模倣区間のメロディデータを供給するステップと、
前記中央処理装置に、前記被模倣区間のメロディデータからピッチ情報を抽出する処理を行なわせるステップと、
前記中央処理装置に、メロディ生成用データを供給するステップと、
前記中央処理装置に、供給されたメロディ生成用データに基づき模倣区間における所定の音のピッチ及び打点を決定する処理を行なわせるステップと、
前記中央処理装置に、前記抽出したピッチ情報を加工する処理を行なわせるステップであって、前記被模倣区間における所定の音のピッチ情報と前記模倣区間における前記所定の音のピッチ情報との差分を算出し、該算出した差分を前記被模倣区間における前記所定の音以外の音のピッチ情報に加算して前記模倣区間における前記所定の音以外の音のピッチ情報を算出するものと、
前記中央処理装置に、前記加工したピッチ情報に基づいて、前記模倣区間のメロディを生成する処理を行なわせるステップと
からなる自動作曲方法。
【請求項６】
プログラムに従って動作する中央処理装置に、曲の被模倣区間のメロディデータを供給するステップと、
前記中央処理装置に、前記被模倣区間のメロディデータからピッチ情報を抽出する処理を行なわせるステップと、
前記中央処理装置に、メロディ生成用データを供給するステップと、
前記中央処理装置に、供給されたメロディ生成用データに基づき模倣区間における重要音のピッチ及び打点を決定する処理を行なわせるステップと、
前記中央処理装置に、前記抽出したピッチ情報を加工する処理を行なわせるステップであって、前記被模倣区間における重要音のピッチ情報と前記模倣区間における前記重要音のピッチ情報との差分を算出し、該算出した差分を前記被模倣区間における非重要音のピッチ情報に加算して前記模倣区間における非重要音のピッチ情報を算出するものと、
前記中央処理装置に、前記加工したピッチ情報に基づいて、前記模倣区間のメロディを生成する処理を行なわせるステップと
からなる自動作曲方法。
【請求項７】
コンピュータ読取り可能な記憶媒体であって、コンピュータに、
曲の被模倣区間のメロディデータの入力を受け付ける手順と、
と、
前記被模倣区間のメロディデータからピッチ情報を抽出する手順と、
メロディ生成用データの入力を受け付ける手順と、
受け付けたメロディ生成用データに基づき模倣区間における所定の音のピッチ及び打点を決定する手順と、
前記抽出したピッチ情報を加工する手順であって、前記被模倣区間における所定の音のピッチ情報と前記模倣区間における前記所定の音のピッチ情報との差分を算出し、該算出した差分を前記被模倣区間における前記所定の音以外の音のピッチ情報に加算して前記模倣区間における前記所定の音以外の音のピッチ情報を算出するものと、
前記加工したピッチ情報に基づいて、前記模倣区間のメロディを生成する手順と
を実行させるためのプログラムを記憶してなる記憶媒体。
【請求項８】
コンピュータ読取り可能な記憶媒体であって、コンピュータに、
曲の被模倣区間のメロディデータの入力を受け付ける手順と、
前記被模倣区間のメロディデータからピッチ情報を抽出する手順と、
メロディ生成用データの入力を受け付ける手順と、
供給されたメロディ生成用データに基づき模倣区間における重要音のピッチ及び打点を決定する手順と、
前記抽出したピッチ情報を加工する手順であって、前記被模倣区間における重要音のピッチ情報と前記模倣区間における前記重要音のピッチ情報との差分を算出し、該算出した差分を前記被模倣区間における非重要音のピッチ情報に加算して前記模倣区間における非重要音のピッチ情報を算出するものと、
前記加工したピッチ情報に基づいて、前記模倣区間のメロディを生成する手順と
を実行させるためのプログラムを記憶してなる記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、音楽に関する各種の条件に応じて自動的に楽曲を生成する自動作曲装置および方法並びに記憶媒体に関し、特に簡単な処理でモチーフメロディが具える音楽的特徴を曲全体に反映して作曲を行うことで、曲全体にわたり完成度の高い楽曲を生成する自動作曲装置及び方法並びに記憶媒体である。
【０００２】
【従来の技術】
近年、パーソナルコンピュータの普及に伴い、コンピュータを用いて楽器を演奏したり、作曲したり、編曲したり、音色を合成したりするコンピュータミュージックを用いて、誰でも音楽を自由に楽しめるようになってきた。特に、コンピュータを用いた作曲の分野では、音楽的な専門知識の少ない初心者であっても簡単に作曲を行うことのできる自動作曲が出現している。このような自動作曲装置としては、既存曲の一部区間のメロディ（例えば、既存曲の冒頭から２小節分のメロディ）をモチーフ区間メロディとして入力する、あるいはユーザが直接短いメロディをモチーフ区間メロディとして入力することにより、入力されたモチーフ区間メロディを基にモチーフ区間以外のメロディを自動的に作成して、１曲全体区間にわたって作曲を行うものが従来から知られている。
【０００３】
【発明が解決しようとする課題】
ところで、従来の自動作曲装置は、入力されたモチーフ区間メロディの音楽的特徴（例えば、ピッチ特徴やリズム特徴など）を分析的に検出し、この検出結果を基にモチーフ区間に後続する区間（すなわち、モチーフ区間以外）のメロディを生成していた。このように、従来ではモチーフ区間メロディの音楽的特徴を検出する必要があり、この音楽的特徴を検出する際に用いられる特徴検出アルゴリズムでは非常に複雑な処理を行わなければならないために、そのプログラミングに時間を要するとともに、プログラム容量も増大し、その結果として自動作曲装置の製造コストが高くなる、という問題点があった。
また、従来の自動作曲装置が生成する曲は、楽曲構成上のテーマを提示する１コーラス（ファーストコーラス）区間のメロディのみ、または１コーラス区間のメロディに簡単な伴奏のみのイントロやエンディングを付与するのみにとどまっていたことから、自動的に生成される曲は曲としての完成度が非常に低いものである、という問題点があった。
【０００４】
本発明は上述の点に鑑みてなされたもので、従来技術とは異なる手法により、完成度の高い曲を容易に生成することができるようにした自動作曲装置及び方法並びに記憶媒体を提供しようとするものである。
【０００５】
【課題を解決するための手段】
【０００８】
本発明の請求項１に係る自動作曲装置は、曲の被模倣区間のメロディを供給する供給手段と、前記被模倣区間のメロディからピッチ情報を抽出する手段と、メロディ生成用データを供給する手段と、供給されたメロディ生成用データに基づき模倣区間における所定の音のピッチ及び打点を決定する手段と、前記抽出したピッチ情報を加工する加工手段であって、前記被模倣区間における所定の音のピッチ情報と前記模倣区間における前記所定の音のピッチ情報との差分を算出し、該算出した差分を前記被模倣区間における前記所定の音以外の音のピッチ情報に加算して前記模倣区間における前記所定の音以外の音のピッチ情報を算出するものと、前記加工したピッチ情報に基づいて、前記模倣区間のメロディを生成する生成手段とを具える。こうすると、簡単な処理で被模倣区間の楽音情報を模倣区間に反映してメロディを生成するので、曲の所定区間のメロディを模倣発展させる曲構造を持つ完成度の高い曲を生成することができる。
【０００９】
また、本発明の請求項２に係る自動作曲装置は、曲の被模倣区間のメロディを供給する供給手段と、前記被模倣区間のメロディからピッチ情報を抽出する手段と、メロディ生成用データを供給する手段と、供給されたメロディ生成用データに基づき模倣区間における重要音のピッチ及び打点を決定する手段と、前記抽出したピッチ情報を加工する加工手段であって、前記被模倣区間における重要音のピッチ情報と前記模倣区間における前記重要音のピッチ情報との差分を算出し、該算出した差分を前記被模倣区間における非重要音のピッチ情報に加算して前記模倣区間における非重要音のピッチ情報を算出するものと、前記加工したピッチ情報に基づいて、前記模倣区間のメロディを生成する生成手段とを具える。
【００１１】
本発明は、装置の発明として構成し、実施することができるのみならず、方法の発明として構成し実施することができる。また、本発明は、コンピュータまたはＤＳＰ等のプロセッサのプログラムの形態で実施することができるし、そのようなプログラムを記憶した記録媒体の形態で実施することもできる。
【００１２】
【発明の実施の形態】
以下、この発明の実施の形態を添付図面に従って詳細に説明する。
【００１３】
図１は、この発明に係る自動作曲装置の全体構成の一実施例を示したハード構成ブロック図である。
本実施例に示す自動作曲装置は、マイクロプロセッサユニット（ＣＰＵ）１、リードオンリメモリ（ＲＯＭ）２、ランダムアクセスメモリ（ＲＡＭ）３からなるマイクロコンピュータによって制御されるようになっている。ＣＰＵ１は、この自動作曲装置全体の動作を制御するものである。このＣＰＵ１に対して、データ及びアドレスバス１Ｄを介してリードオンリメモリ（ＲＯＭ）２、ランダムアクセスメモリ（ＲＡＭ）３、押鍵検出回路４、スイッチ検出回路５、表示回路６、音源回路７、効果回路８、外部記憶装置９、ＭＩＤＩインタフェース（Ｉ／Ｆ）１０および通信インタフェース１１がそれぞれ接続されている。更に、ＣＰＵ１には、タイマ割込み処理（インタラプト処理）における割込み時間や各種時間を計時するタイマ１Ａが接続されている。すなわち、タイマ１Ａは時間間隔を計数したり、作曲終了後に作曲した曲を自動演奏する際の演奏テンポを設定したりするためのテンポクロックパルスを発生する。このテンポクロックパルスの周波数は、各種スイッチ５Ａの中のテンポ設定スイッチ等によって調整される。このようなタイマ１ＡからのテンポクロックパルスはＣＰＵ１に対して処理タイミング命令として与えられたり、あるいはＣＰＵ１に対してインタラプト命令として与えられる。ＣＰＵ１は、これらの命令に従って各種処理を実行する。各種処理には、例えば自動作曲の際の画面表示処理や自動作曲した曲を演奏するための自動演奏処理等がある。
なお、この自動作曲装置は専用の装置に限られず、例えばパソコンなどの汎用装置あるいはマルチメディア機器等であってもよく、本発明に従う所定のソフトウエア又はハードウエアを用いることによって自動作曲を行うことのできるように構成した装置であればよい。
【００１４】
ＲＯＭ２は、ＣＰＵ１により実行あるいは参照される各種プログラムや各種データ等を格納するものである。ＲＡＭ３は、作曲の際に用いられる各種楽音情報（例えば、後述する楽節構成情報や起伏情報、あるいはメロディ生成用情報や伴奏生成用情報等のパラメータ）や作曲した曲を自動演奏する際に用いられる自動演奏情報、ＣＰＵ１が所定のプログラムを実行する際に発生する各種データなどを一時的に記憶するワーキングメモリとして、あるいは現在実行中のプログラムやそれに関連するデータを記憶するメモリ等として使用される。ＲＡＭ３の所定のアドレス領域がそれぞれの機能に割り当てられ、レジスタやフラグ、テーブル、メモリなどとして利用される。鍵盤４Ａは、楽音の音高を選択するための複数の鍵を備えており、各鍵に対応してキースイッチを有しており、この鍵盤４Ａは楽音演奏のために使用できるのは勿論のこと、作曲の際のモチーフ区間メロディ等を入力するための入力手段として使用することもできる。押鍵検出回路４は、鍵盤４Ａの各鍵の押圧及び離鍵を検出し、検出出力を生じる。
スイッチ５Ａは各種のパラメータを指定したり、あるいは自動演奏時における各種演奏条件等を入力するための各種の操作子を含んで構成される。例えば、数値データ入力用のテンキーや文字データ入力用のキーボード、あるいはパネルスイッチ等である。勿論、この他にも音高、音色、効果等を選択・設定・制御するための各種操作子を含んでいてよい。スイッチ検出回路５は、スイッチ５Ａの各操作子の操作状態を検出し、その操作状態に応じたスイッチ情報をデータ及びアドレスバス１Ｄを介してＣＰＵ１に出力する。表示回路６はパラメータの内容等の各種情報を、例えば液晶表示パネル（ＬＣＤ）やＣＲＴ等から構成されるディスプレイ６Ａに表示するのは勿論のこと、自動演奏に関する各種情報あるいはＣＰＵ１の制御状態などをディスプレイ６Ａに表示する。
【００１５】
音源回路７は、複数のチャンネルで楽音信号の同時発生が可能であり、データ及びアドレスバス１Ｄを経由して与えられた演奏情報を入力し、この演奏情報に基づいて楽音信号を発生する。音源回路７から発生された楽音信号は、サウンドシステム８Ａを介して発音される。また、効果回路８は前記音源回路７から発生された楽音信号に対して各種効果を与える。前記音源回路７における楽音信号発生方式はいかなるものを用いてもよい。例えば、発生すべき楽音の音高に対応して変化するアドレスデータに応じて波形メモリに記憶した楽音波形サンプル値データを順次読み出す波形メモリ読み出し方式、又は上記アドレスデータを位相角パラメータデータとして所定の周波数変調演算を実行して楽音波形サンプル値データを求めるＦＭ方式、あるいは上記アドレスデータを位相角パラメータデータとして所定の振幅変調演算を実行して楽音波形サンプル値データを求めるＡＭ方式等の公知の方式を適宜採用してもよい。すなわち、音源回路７の方式は、波形メモリ方式、ＦＭ方式、物理モデル方式、高調波合成方式、フォルマント合成方式、ＶＣＯ＋ＶＣＦ＋ＶＣＡのアナログシンセサイザ方式、アナログシミュレーション方式等、どのような方式であってもよい。また、専用のハードウェアを用いて音源回路７を構成するものに限らず、ＤＳＰとマイクロプログラム、あるいはＣＰＵとソフトウェアを用いて音源回路７を構成するようにしてもよい。さらに、１つの回路を時分割で使用することによって複数の発音チャンネルを形成するようなものでもよいし、１つの発音チャンネルが１つの回路で形成されるようなものであってもよい。
【００１６】
外部記憶装置９は、自動作曲時に用いるパラメータや既存曲の演奏データ（例えば、メロディデータと伴奏データを組み合わせて１つのデータとしたもの）、ＣＰＵ１が実行する各種プログラムの制御に関するデータ等を記憶するものである。前記ＲＯＭ２に制御プログラムが記憶されていない場合、この外部記憶装置９（例えばハードディスク）に制御プログラムを記憶させておき、それを前記ＲＡＭ３に読み込むことにより、ＲＯＭ２に制御プログラムを記憶している場合と同様の動作をＣＰＵ１にさせることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。なお、外部記憶装置９はハードディスク（ＨＤ）に限られず、フロッピィーディスク（ＦＤ）、コンパクトディスク（ＣＤ−ＲＯＭ・ＣＤ−ＲＡＭ）、光磁気ディスク（ＭＯ）、あるいはＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋの略）等の着脱自在な様々な形態の外部記録媒体を利用する記憶装置であってもよい。
【００１７】
ＭＩＤＩインタフェース（Ｉ／Ｆ）１０は、他のＭＩＤＩ機器１０Ａ等からＭＩＤＩ規格の楽音情報（ＭＩＤＩデータ）を当該自動作曲装置へ入力したり、あるいは当該自動作曲装置からＭＩＤＩ規格の楽音情報（ＭＩＤＩデータ）を他のＭＩＤＩ機器１０Ａ等へ出力するためのインタフェースである。他のＭＩＤＩ機器１０Ａはユーザによる操作に応じてＭＩＤＩデータを発生する機器であればよく、鍵盤型、ギター型、管楽器型、打楽器型、ミブリ型等どのようなタイプの操作子を具えた（若しくは、操作形態からなる）機器であってもよい。通信インタフェース１１は、例えばＬＡＮやインターネット、電話回線等の通信ネットワーク１１Ｂに有線又は無線にて接続されており、該通信ネットワーク１１Ｂを介して、サーバコンピュータ１１Ａと接続され、当該サーバコンピュータ１１Ａから制御プログラムや各種データを自動作曲装置側に取り込むためのインタフェースである。すなわち、ＲＯＭ２や外部記憶装置９（ハードディスク）等に制御プログラムや各種データが記憶されていない場合に、サーバコンピュータ１１Ａから制御プログラムや各種データをダウンロードするために用いられる。クライアントとなる自動作曲装置は、通信インターフェース１０及び通信ネットワーク１１Ｂを介してサーバコンピュータ１１Ａへと制御プログラムや各種データのダウンロードを要求するコマンドを送信する。サーバコンピュータ１１Ａは、このコマンドを受け、要求された制御プログラムやデータを、通信ネットワーク１１Ｂを介して本装置へと配信し、本装置が通信インタフェース１１を介して、これら制御プログラムや各種データを受信して外部記憶装置９（ハードディスク）等に蓄積することにより、ダウンロードが完了する。
【００１８】
なお、ＭＩＤＩインタフェース１０は専用のＭＩＤＩインタフェースを用いるものに限らず、ＲＳ２３２−Ｃ、ＵＳＢ（ユニバーサル・シリアル・バス）、ＩＥＥＥ１３９４（アイトリプルイー１３９４）等の汎用のインタフェースを用いてＭＩＤＩインタフェース１０を構成するようにしてもよい。この場合、ＭＩＤＩイベントデータ以外のデータをも同時に送受信するようにしてもよい。ＭＩＤＩインタフェース１０として上記したような汎用のインタフェースを用いる場合には、他のＭＩＤＩ機器１０ＡはＭＩＤＩイベントデータ以外のデータも送受信できるようにしてよい。勿論、音楽情報に関するデータフォーマットはＭＩＤＩ形式のデータに限らず、他の形式であってもよく、その場合はＭＩＤＩインタフェース１０と他のＭＩＤＩ機器１０Ａはそれにあった構成とする。
【００１９】
本発明に係る自動作曲装置は、入力されたモチーフ区間メロディ（以下、単にモチーフと呼ぶ）からモチーフが具える音楽的特徴（例えば、ダイナミクスや適用する音楽ルール等のピッチ特徴、あるいはシンコペーションの有無や音符の粗・密等のリズム特徴など）を分析的に抽出することなく、モチーフから単に当該モチーフを構成している１音１音の楽音情報（ピッチやリズムに関する値）を演算により加工して、その加工した楽音情報を利用して１曲全体を構築する（つまり、１曲全体を作曲する）。つまり、モチーフは被模倣区間となり、モチーフの楽音情報を利用して生成された区間は模倣区間となる。このような第１の実施形態によると、モチーフが具える音楽的特徴を１曲全体にわたって反映した曲を簡単な処理で生成することができる。そこで、まず、この第１の実施形態、すなわち、モチーフを構成している１音１音の楽音情報（ピッチやリズムに関する値）を演算加工し、加工した楽音情報（ピッチやリズムに関する値）に基づいてモチーフ区間以外のメロディを生成することによって、１曲を構築する処理について説明する。
【００２０】
まず、モチーフを構成している１音１音のピッチを演算加工する場合、その方法には次に示すような２通りの方法がある。そこで、この２通りの方法について各々簡単に説明する。
１つ目の方法として、検出したモチーフ中の重要音に付された各ピッチのみに対して演算加工を行って該重要音毎に新たなピッチを生成し、この生成した新重要音ピッチを用いてモチーフ区間に後続する区間のメロディ（この実施例では、これをモチーフ後続区間メロディと呼ぶ）を生成する方法がある。この方法は、モチーフ後続区間メロディに用いるリズムを新規に生成し（すなわち、モチーフのリズムは使用しない）、該リズムにあわせて配置した重要音毎に新ピッチをアサインする。モチーフ中の重要音とは、モチーフを音楽的に特徴付ける１小節中の重要打点に位置する音符のことで、例えば、各小節の先頭や強拍の位置（打点）に配置された音符のことである。
２つ目の方法として、モチーフ中の全ての音のピッチに対して演算加工を行って全ての音に対応する新たなピッチを生成し、この生成した新ピッチを用いてモチーフ後続区間メロディを生成する方法がある。この方法では、モチーフ後続区間メロディに用いるリズムはモチーフのリズムを利用してよい。例えば、モチーフから楽音情報として抽出したリズムを演算加工することによって新しいリズム（リズムパターン若しくは発音タイミングパターン）を生成し、当該新リズムを用いてモチーフ後続区間メロディを生成する。あるいは、モチーフ中の各音における打点のタイミング（すなわち、リズム）を演算することによって新しい打点のタイミング（すなわち、新リズム）を生成し、当該タイミングを用いてモチーフ後続区間メロディを生成する。このように、モチーフのピッチや打点のタイミング（すなわち、リズム）を利用して、モチーフ後続区間メロディを生成する。
【００２１】
そこで、１曲全体にわたってモチーフの雰囲気を反映したメロディを生成する処理について、上述したピッチ演算方法毎に分けて説明する。まず、上述したピッチ演算方法の１つ目の方法、すなわち、モチーフ中の重要音に対して新たに生成されたピッチを用いてモチーフ後続区間メロディを生成することにより、１曲を構築する処理について説明する。図２は、このモチーフ中の重要音のみを利用してモチーフの雰囲気を反映した１曲を構築する処理の一実施例を示したフローチャートである。以下、図２のフローチャートに従って、当該処理における処理動作を説明する。
【００２２】
ステップＳ１では、モチーフを入力する。モチーフの入力は、所望のモチーフをユーザが鍵盤４Ａ等を用いて適宜入力するようにしてもよいし、既存曲をロードし、その一部をモチーフとして使用するようスイッチ５Ａ等を用いて指定するようにしてもよい。モチーフが入力されると、該モチーフを構成する各音の打点（すなわち、メロディの発音タイミング）の中から重要打点を抽出し、さらに該重要打点における各音のピッチ（これを重要音ピッチと呼ぶ）を検出する（ステップＳ２）。重要音ピッチを検出すると、検出した重要音ピッチに対して所定の演算処理を行う（ステップＳ３）。この演算処理についての詳しい説明は、後述する。ステップＳ４では、モチーフ区間に後続する区間のリズムパターンの生成、すなわち、モチーフ後続区間メロディのリズムを生成する。この実施例では、モチーフのリズムを使用しないで、モチーフ後続区間メロディ生成用に新たなリズムを生成する。次に、重要音打点を検出する（ステップＳ５）。すなわち、上記リズムパターンにあわせて（あるいは所定の重要打点位置検出ルールに従って、又はリズムパターン毎に予め決まっている）、重要音打点位置を検出する。重要音打点を検出すると、この重要音打点位置に所定の順番で上記ステップＳ３で演算して新たに算出された重要音ピッチを付加する（ステップＳ６）。つまり、各重要打点位置に演算して算出されたモチーフ中の重要音ピッチの変形値を適宜アサインする。そして、所定の音楽ルールに基づいて重要音打点以外の打点毎にピッチを割り当てることによって、重要音打点間の各音に付すピッチを生成する（ステップＳ７）。すなわち、重要打点以外におけるノートを適宜に生成する。こうして生成されたモチーフ後続区間メロディ（具体的には、モチーフ後続区間メロディ生成用の演奏データ）と入力されたモチーフメロディ（具体的には、モチーフ区間メロディ生成用の演奏データ）とを結合することによって、１曲全体分のメロディ（具体的には、モチーフ区間メロディ生成用とモチーフ後続区間メロディ生成用とを組み合わせて構成される１曲分の演奏データ）が完成する（ステップＳ８）。
【００２３】
次に、上述したピッチ演算方法の２つ目の方法、すなわち、モチーフ中の全ての音についてピッチ演算し、ピッチ演算された結果算出される新ピッチを用いてモチーフ後続区間メロディを生成する方法について説明する。図３は、このモチーフ中の全ての音についてピッチ演算し、これを利用することによりモチーフの雰囲気を全体に反映した１曲を構築する処理の一実施例を示したフローチャートである。以下、図３のフローチャートに従って、当該処理における処理動作を説明する。
【００２４】
ステップＳ１１では、モチーフを入力する。モチーフの入力については、上述した処理（図２のステップＳ１参照）の場合と同様である。入力されたモチーフ中の各音全てについて、ピッチを検出する（ステップＳ１２）。ピッチを検出すると、各ピッチに対して所定の演算処理を行う（ステップＳ１３）。この演算処理についての詳しい説明は、後述する。そして、モチーフの各音全ての打点位置を検出し（ステップＳ１４）、検出した各打点位置に対して演算処理を行う（ステップＳ１５）。こうして得られたピッチ及び打点位置の演算結果たる楽音情報を利用して、モチーフ後続区間メロディの演奏データを生成する（ステップＳ１６）。
こうして生成されたモチーフ後続区間メロディ（具体的には、モチーフ後続区間メロディ生成用の演奏データ）と入力されたモチーフ区間メロディ（具体的には、モチーフ区間メロディ生成用の演奏データ）とを結合することによって、１曲全体分のメロディ（具体的には、モチーフ区間メロディ生成用とモチーフ後続区間メロディ生成用とを組み合わせて構成される１曲分の演奏データ）が完成する（ステップＳ１７）。
【００２５】
ここで、ピッチに対する演算処理（図２のステップＳ３及び図３のステップＳ１３参照）について具体例を用いて説明する。図４はピッチに対する演算処理を説明するための概念図であり、図４（Ａ）はピッチ演算前におけるピッチを示し、図４（Ｂ）はピッチ演算後におけるピッチを示す。ただし、図４では、モチーフにおける３音のピッチ（各音のピッチをそれぞれ○、×、△で表現する）に対して演算処理を行う場合について説明する。なお、図４では、横軸に時間を、縦軸にピッチを示した。すなわち、演奏時には×、△、○で示したピッチの順で発音される。
ピッチに対する演算処理において、モチーフにおけるｎ番目の音のピッチをＰｎとし、ｎ番目の音に対する一次演算式の係数をＡｎ、シフト値をＢｎとした場合、ｎ番目の音の新ピッチＰｎ´は、
Ｐｎ´＝Ｐｎ×Ａｎ＋Ｂｎ…（式１−１）
として演算される。すなわち、この実施例では、１番目の音のピッチＰ１はＥ３（×で表現したもの）であり、２番目の音のピッチＰ２はＣ３（△で表現したもの）であり、３番目の音のピッチＰ３はＧ３（○で表現したもの）である。
そうすると、図４に示す３音の各ピッチにおける演算結果たる新ピッチＰ１´、Ｐ２´、Ｐ３´は、
Ｐ１´＝Ｐ１×Ａ１＋Ｂ１…（式１−２）
Ｐ２´＝Ｐ２×Ａ２＋Ｂ２…（式１−３）
Ｐ３´＝Ｐ３×Ａ３＋Ｂ３…（式１−４）
のようにして算出される。
【００２６】
そこで、具体的にモチーフのピッチが、例えばＰ１＝Ｅ３（×で表現したもの：例えば、ＭＩＤＩノートナンバ＝６４とする）、Ｐ２＝Ｃ３（△で表現したもの：例えば、ＭＩＤＩノートナンバ＝６０とする）、Ｐ３＝Ｇ３（○で表現したもの：例えば、ＭＩＤＩノートナンバ＝６７とする）といったピッチであって、上記一次演算式（式１−２〜式１−４参照）における各係数をＡ１＝Ａ２＝Ａ３＝「１．１５」、Ｂ１＝Ｂ２＝Ｂ３＝「−５」とした場合に、算出される新ピッチＰ１´、Ｐ２´、Ｐ３´は、
Ｐ１´＝６４×１．１５−５＝６９…（式１−５）
Ｐ２´＝６０×１．１５−５＝６４…（式１−６）
Ｐ３´＝６７×１．１５−５＝７２…（式１−７）
となる。このように、上記一次演算式によって、モチーフにおけるピッチＥ３、Ｃ３、Ｇ３（図４（Ａ）参照）の３音はそれぞれＡ３（ＭＩＤＩノートナンバ＝６９）、Ｅ３（ＭＩＤＩノートナンバ＝６４）、Ｃ４（ＭＩＤＩノートナンバ＝７２）といったピッチに拡大（あるいは縮小）された状態にシフトされる（図４（Ｂ）参照）。
【００２７】
また、モチーフにおける各音全ての打点位置を演算して新打点位置を生成する方法（図３のステップＳ１５参照）は、上述したモチーフのピッチ演算方法と同様の方法による。すなわち、モチーフにおけるｎ番目の音の打点位置（例えば、小節先頭からの絶対時間で打点位置で表わす）をＴｎとし、ｎ番目の音に対する一次演算式の係数をＣｎ、初期値をＤｎとした場合、ｎ番目の音の新打点位置Ｔｎ´は、
Ｔｎ´＝Ｔｎ×Ｃｎ＋Ｄｎ…（式２−１）
のようにして算出される。
以上のようにして、モチーフのピッチあるいは打点位置を演算してシフトし、当該新ピッチ（つまりピッチに関する値）あるいは新打点位置（つまりリズムに関する値）を用いてモチーフ後続区間メロディを生成することによって、モチーフの雰囲気を曲全体に反映した１曲を構築することができる。すなわち、このような自動作曲装置によれば、モチーフ区間メロディを入力するだけで、入力したモチーフ区間メロディの音楽的特徴（例えば、ピッチ特徴やリズム特徴など）が曲全体に反映された音楽的に完成度の高い曲を生成することができる。
【００２８】
なお、上述したピッチ演算処理及び打点位置演算処理において、演算結果に小数点が生じたような場合には、四捨五入等の適宜の処理を行って当該演算結果を整数化する。また、ピッチ演算処理において、演算結果が調の音階音あるいは各コード毎の利用可能音階（アヴェイラブル・ノート・スケール：以下AVNSと略称する）でないような場合には、音階音あるいはAVNSの中で最も近いピッチに演算結果を置き換えるようにするとよい。
なお、上述した一次演算式（式１−１、式２−１参照）の係数及びシフト値等の各演算パラメータＡｎ、Ｂｎ、Ｃｎ、Ｄｎは固定値でもよいし、可変値であってもよい。可変値とした場合、１曲全体で一様な可変値で可変する（すなわち、各ピッチ（あるいは各打点位置）毎の演算パラメータ全てを共通の可変値で可変する）、あるいは部分毎に異なる可変値で可変する（すなわち、各ピッチ（あるいは各打点位置）毎の演算パラメータを異ならせて可変する）ように構成してよい。部分毎に異なる可変値で可変する場合、各ピッチ（あるいは各打点位置）毎に可変値をユーザが自由に設定できるようにしてよいし、あるいは可変値の変化パターンのテンプレートを予め用意しておき、これを都度参照して可変値を設定するようにしてもよい。また、ピッチ（あるいは打点位置）に対する演算処理は上述したような一次式（式１−１、式２−１参照）のみによる加工演算に限らず、一次演算式（式１−１、式２−１参照）の結果をさらに加工演算するようにしてもよい。
【００２９】
次に、上述した第１の実施例（モチーフ中の重要音に対して演算加工を行ってモチーフ後続区間メロディを生成して作曲する方法、モチーフ中の全ての音に対して演算加工を行ってモチーフ後続区間メロディを生成して作曲する方法）の一変形例について説明する。上述した各実施例においてモチーフ後続区間メロディを生成する際に、ユーザの好みに合わせてモチーフにおける各音のピッチ形状（すなわち、所定の区間毎における区間内のピッチ変化の様子を表わしたもの）やモチーフのリズムを反映させる区間と反映しない区間とを自由に選択して組合せできるようにした方が自動作曲装置としては好ましい。すなわち、ユーザの選択に従ってモチーフのピッチ形状やモチーフのリズムをモチーフ後続区間メロディに反映して作曲を行うことができるようにした方がユーザによる作曲の自由度が高まって、ユーザはオリジナルの曲を作曲することが簡単に行えるようになることから非常に好ましい。
【００３０】
本発明に係る自動作曲装置では、モチーフ後続区間メロディを生成する際に、モチーフに後続する所定の区間毎に設定された生成条件（例えば、「コピー（同一）／模倣（同類）／新規（対比）」）に従ってモチーフのピッチ形状やモチーフのリズムを反映したモチーフ後続区間メロディを生成する。このモチーフのピッチ形状やリズムを反映したモチーフ後続区間の生成例を簡単に説明すると、モチーフに後続する所定の区間毎に「コピー（同一）／模倣（同類）／新規（対比）」などの生成条件の設定をユーザが行い、該生成条件に従って「コピー（同一）」と設定された区間についてはモチーフと同一のピッチ形状及びリズム（すなわち、打点位置）を利用し、「模倣（同類）」と設定された区間についてはモチーフのピッチ形状及びリズムを演算加工したピッチ形状及びリズムを利用し、「新規（対比）」と設定された区間については入力されたメロディ生成用データを基に生成されたピッチ形状及びリズムを利用する（あるいは、モチーフのピッチ形状及びリズムを演算加工（ただし、「模倣（同類）」で行われる演算加工とは全く異なる別の演算加工）したピッチ及びリズムを利用してもよい）。例えば、楽曲を４楽節・８フレーズ・１６小節で構成している場合（すなわち、１楽節は２フレーズ、１フレーズは２小節で構成される楽曲）に第１楽節・第１フレーズをモチーフとして入力したような場合には、残りの第２〜第８フレーズ（すなわち、１４小節）に対してフレーズ毎（すなわち、２小節毎）あるいは各楽節毎に「コピー（同一）／模倣（同類）／新規（対比）」等の生成条件をユーザが設定し、この設定に従ってモチーフ後続区間メロディを生成する。
【００３１】
そこで、モチーフメロディを基にモチーフ後続区間メロディを生成する際に、ユーザの指定した生成条件に従って、モチーフメロディのピッチ形状及びリズムを所定の区間毎に反映してモチーフ後続区間メロディを生成する処理について図５を用いて説明する。図５は、所定の区間毎に設定された生成条件に従ってモチーフメロディのピッチ形状及びリズムを反映してモチーフ後続区間メロディを生成するメイン処理の一実施例を示したフローチャートである。
ステップＳ６１では、メロディ生成用データを取り込む。該メロディ生成用データは、調、拍子、ピッチの跳躍ダイナミクス、シンコペーション有無、コード進行などの所定の作曲条件情報である。ステップＳ６２では、モチーフメロディの入力が行われる。該モチーフメロディの入力は、ユーザが鍵盤４Ａあるいは所定のスイッチ５Ａ等を操作して入力、ＭＩＤＩインタフェース１０を介して他のＭＩＤＩ機器１０Ａ等から入力、あるいは通信インタフェース１１を介してサーバコンピュータ１１Ａ等から既存曲の一部を入力する場合や、メロディ生成用データに基づいて２小節程度のモチーフメロディを自動生成する場合などがある。このモチーフメロディを入力する区間は、1箇所だけ（例えば、曲の先頭）であってもよいし、複数箇所（例えば、曲の先頭とサビの部分）であってもよい。ステップＳ６３では、モチーフに後続する所定の区間ごとにモチーフメロディの反映処理を行う。すなわち、該反映処理では、ユーザの設定した「コピー（同一）／模倣（同類）／新規（対比）」といった生成条件に基づいて、モチーフに後続する所定区間毎にモチーフメロディのピッチ形状及びリズムの両方を反映したメロディを順次に生成する。コピー（同一）とは、モチーフのピッチ形状及びリズムをコピーして（すなわち、モチーフと同一のピッチ形状及びリズムを用いて）所定区間のメロディを生成する。模倣（同類）とは、モチーフのピッチ形状及びリズムを模倣して（すなわち、演算加工したピッチ形状及びリズム用いて）所定区間のメロディを生成する.。新規（対比）とは、モチーフのピッチ形状及びリズムとは関係なしに（すなわち、新規に生成したピッチ形状及びリズムを用いて）所定区間のメロディを生成する。これらの設定情報は、区間生成指示画面からのユーザ指定に従って生成される情報である。
【００３２】
ここで、区間生成指示画面について図６を用いて簡単に説明する。図６は、区間生成指示画面の一実施例を示した概念図である。ただし、図示の例では第３楽節までの区間生成指示画面を示し、選択されている項目を二重丸（◎）で、非選択の項目を丸（○）で図示した。図から理解できるように、この区間生成指示画面は、各楽節毎にリズムとピッチについて、楽節をコピー／模倣／新規生成するか、フレーズをコピー／模倣／新規生成するかをユーザが画面上から設定できるようにディスプレイ６Ａに表示される。
この実施例に示すように、第１楽節はコピーや模倣の対象とする楽節が第１楽節以前には存在しないことから、必ず第１楽節における楽節は「新規」に設定される。楽節が「新規」に設定される場合には、フレーズに「コピー」「模倣」「新規」のいずれかを設定することができる。第１楽節の楽節に対して「コピー」と設定した場合には、第１楽節の第１フレーズ（すなわち、モチーフ）を第２フレーズとしてコピーする。「模倣」と設定した場合には、第１楽節の第１フレーズ（すなわち、モチーフ）を演算加工し第２フレーズとする。「新規」と設定した場合には、第２フレーズを新規に生成する。この実施例における第２楽節の設定に示すように、楽節を「コピー」（又は「模倣」）と設定した場合には、フレーズは「コピー」「模倣」「新規」のいずれにも設定されない。すなわち、楽節を「コピー」（又は「模倣」）と設定した場合、フレーズに対する設定は楽節に対する設定にしたがうことになることから、楽節を「コピー」（又は「模倣」）と設定した場合にフレーズに対する設定はない。この場合、第１楽節の第１フレーズ及び第２フレーズを第２楽節の第１フレーズ及び第２フレーズとしてコピー（「コピー」が設定された場合）する、あるいは第１楽節の第１フレーズ及び第２フレーズを演算加工し、第２楽節の第１フレーズ及び第２フレーズとする（「模倣」が設定された場合）。楽節を「新規」と設定した場合には、フレーズを「コピー」するか、「模倣」するか、「新規」するかのいずれかを設定することができる。「コピー」と設定した場合には、第２楽節の第１フレーズを新規生成し、該第１フレーズをコピーし第２フレーズとする。「模倣」と設定した場合には、第２楽節の第１フレーズを新規生成し、該第１フレーズを演算加工し第２フレーズとする。「新規」と設定した場合には、第２楽節内の第１フレーズと第２フレーズをともに新規生成する。また、第２楽節が第１楽節と同じ楽節記号で表わされる場合（例えば、第１楽節と第２楽節がともに「Ａ」で表記される場合）は、第２楽節における楽節に対する設定は「コピー」に自動的に設定される。第２楽節の楽節記号が第１楽節の楽節記号と類似である場合（図示の例にはないが、例えば第１楽節が「Ａ」で、第２楽節が「Ａ´」で表記される場合）は、第２楽節における楽節に対する設定は「模倣」に自動的に設定される。第２楽節の楽節記号が新たな楽節記号である場合（例えば、第１楽節が「Ａ」で、第２楽節が「Ｂ」で表記される場合）は、第２楽節における楽節に対する設定は「コピー」「模倣」「新規」のいずれに自動的に設定されてもよい。
なお、上述の説明では楽節のみについて説明したが、リズムにおいても同様であることから説明を省略する。
【００３３】
第３楽節の設定として、リズムについて楽節「模倣」あるいは「コピー」と設定した場合は、第１楽節のリズムを模倣（類似リズムとする）あるいはそのままコピーして第３楽節のリズムとする。この場合、フレーズに対する設定がないことは既に説明した。リズムについて楽節「新規」と設定した場合であって、フレーズ「模倣」あるいは「コピー」と設定した場合は新規に生成した第３楽節の第１フレーズのリズムを第２フレーズに模倣あるいはコピーし、フレーズ「新規」と設定した場合は第３楽節の第１フレーズと第２フレーズのリズムをともに新規に生成する。
また、第３楽節の設定として、ピッチについて楽節「模倣」と設定した場合は、第１楽節のピッチを模倣する。すなわち、第３楽節の重要音ピッチについては新規に生成し、第３楽節の非重要音ピッチについては第１楽節の非重要音ピッチを演算加工（詳しくは後述する）して生成する。この場合、フレーズに対する設定がないことは既に説明した。ピッチについて楽節「新規」かつフレーズ「模倣」と設定した場合は、第３楽節の第１フレーズは新規生成（重要音と非重要音ともに）し、第３楽節の第２フレーズは新規生成した第１フレーズを模倣（重要音は新規生成し、非重要音は模倣）する。ピッチについて楽節「新規」かつフレーズ「新規」と設定した場合は、第３楽節の第１フレーズと第２フレーズともに新規生成（重要音と非重要音ともに）する。
【００３４】
なお、上記実施例では全ての楽節について第１楽節を「コピー」、「模倣」するようにしたので、コピー元や模倣元の楽節を指定する項目を設けていない。しかし、任意の楽節を「コピー」、「模倣」可能としてもよく、その場合にはコピー元や模倣先の楽節を指定できるようにすることは言うまでもない。さらに、上記実施例では、リズムについて「コピー」と「模倣」と設定できるように項目を分けて構成したが、リズムについては「コピー」のみを設定できるようにしてよい。
【００３５】
次に、モチーフに後続する所定の区間のメロディを生成する条件としてピッチ「模倣」が設定された場合に、上述したメイン処理におけるモチーフの反映処理（図５のステップＳ６３参照）で行われるピッチ模倣処理について図７を用いて説明する。図７は、モチーフメロディのピッチを模倣してモチーフに後続する区間のピッチを生成する処理の一実施例を示すフローチャートである。
ステップＳ７１では、モチーフを入力する。すなわち、上述したメイン処理で入力されたモチーフ（図５のステップＳ６２参照）を取り込む。ステップＳ７２では、被模倣区間と模倣区間とを決定する。例えば、第１楽節のフレーズのピッチが「模倣」と設定された場合には（図６における第１楽節の設定参照）、被模倣区間として第１楽節、第１フレーズ、第１小節最初の重要音と次の重要音までの区間に決定する。一方、模倣区間として第１楽節、第２フレーズ、第１小節の最初の重要音と次の重要音までの区間に決定する。すなわち、ピッチ「模倣」は重要音から次の重要音までの区間ごとに模倣する。ステップＳ７５では、メロディ生成用データを入力する。すなわち、上述したメイン処理で入力されたメロディ生成用データ（図５のステップＳ６１参照）を取り込む。ステップＳ７３では、ステップＳ７５で入力されたメロディ生成用データを基に、模倣区間のリズムを生成する。例えば、第１楽節のフレーズのリズムが「模倣」と設定された場合には（図６における第１楽節の設定参照）被模倣区間のリズムを模倣するし、「コピー」と設定された場合には被模倣区間のリズムをコピーするし、「新規」と設定された場合にはメロディ生成用データに基づいて、音符数「多」、シンコペーション「有」などのリズムを新規に生成する。ステップＳ７４では、模倣区間の重要音の打点を検出する。ステップＳ７６では、ステップＳ７５で入力されたメロディ生成用データに基づいて重要音ピッチを生成する。すなわち、メロディ生成用データに含まれるコード進行、ピッチダイナミクスなどを基にして重要音ピッチを生成する。こうして生成された模倣区間の重要音打点（ステップＳ７４参照）に生成された模倣区間の重要音ピッチ（ステップＳ７７）を割り当てる（ステップＳ７７）。こうすることで、まず模倣区間における重要音のピッチを決定する。
【００３６】
模倣区間における重要音ピッチが決定すると、重要音以外の非重要音のピッチを決定する処理を行う。そこで、この実施例では、まず重要音間のピッチ差を算出する（ステップＳ７８）。該重要音間のピッチ差は、模倣区間の重要音ピッチから決定した被模倣区間の重要音ピッチ（ステップＳ７７参照）を減算して算出する。次に、該重要音間のピッチ差を用いて、模倣区間の重要音以外のピッチを生成する（ステップＳ７９）。すなわち、被模倣区間のピッチにステップＳ７８で算出した重要音間のピッチ差を加算して模倣区間のピッチを算出する。模倣区間の全ての音符について同様の処理を行い（ステップＳ８０）、最後の模倣区間まで同様の繰り返し処理を行って（ステップＳ８１）、模倣区間の全ての重要音以外の非重要音のピッチを決定する。ステップＳ８２では、生成した模倣区間における重要音及び非重要音のピッチが所定のメロディ生成条件や音楽ルールなどを満たすか否かを判定する。例えば、設定した生成音域を満足するか、生成した模倣区間における最後のピッチは次区間における最初のピッチへ正しくドミナント進行しているか、などのチェックを行う。生成したピッチがメロディ生成条件や音楽ルールなどを満たしている場合（ステップＳ８２のＹＥＳ）、該ピッチに決定する（ステップＳ８３）。生成したピッチがメロディ生成条件や音楽ルールなどを満たしていない場合（ステップＳ８２のＮＯ）、生成したピッチを破棄して独自にメロディ生成条件と音楽ルールなどを満たすピッチを生成する（ステップＳ８４）。すなわち、模倣せずに被模倣区間のピッチを新たに生成する。このようにして、例えば第１楽節のフレーズが「模倣」と設定された場合（図６における第１楽節の設定参照）における第１楽節、第２フレーズ、第１小節のメロディが生成される。
【００３７】
上述したモチーフのピッチをシフトして被模倣区間のピッチを生成する方法について、図８用いて具体的に説明する。図８は、モチーフのピッチをシフトして模倣する方法を説明するための概念図である。図示の例では、第１被模倣区間（重要音ＡＫ１と次の重要音ＡＫ２間）には重要音ＡＫ１（斜線を引いた丸で表示）と非重要音ＡＰ１、ＡＰ２（単なる丸で表示）とが存在し、第２被模倣区間（重要音ＡＫ２と図示しない次の重要音間）には重要音ＡＫ２と非重要音ＡＰ３、ＡＰ４とが存在する場合に、第１被模倣区間のピッチを模倣して第１模倣区間のピッチを生成する処理について説明する。
まず、第１模倣区間の重要音に重要音ピッチを割り当て、検出した重要音打点位置に配置する。例えば、「音符数が被模倣区間と同一生成」である場合（すなわち、模倣区間におけるリズムが被模倣区間の「コピー」である場合）には、第１模倣区間の打点位置は第１被模倣区間の打点位置と相対的に同一位置に決定される（ステップＳ７３及びステップＳ７４参照）。そして、メロディ生成用データを基に生成した重要音のピッチ（ステップＳ７６参照）を割り当てることによって、第１模倣区間の重要音のピッチ及び打点位置が決定される（ステップＳ７７参照）。すなわち、第１模倣区間における重要音はＢＫ１に決定される。次に、第１模倣区間の非重要音のピッチを算出して非重要音に割り当てる。そこで、第１被模倣区間の重要音ピッチと第１模倣区間の重要音ピッチの差（つまり、シフト差）を算出すると（ＢＫ１−ＡＫ１）となる（ステップＳ７８参照）。第１模倣区間における非重要音のピッチを得るために、第１被模倣区間の非重要音のピッチに算出したシフト差を加算する（ステップＳ７９参照）。すなわち、第１模倣区間の２つの非重要音のピッチは各々ＢＰ１＝ＡＰ１+（ＢＫ１−ＡＫ）、ＢＰ２＝ＡＰ２+（ＢＫ１−ＡＫ）のようにして算出される。こうして、第１模倣区間のピッチは生成される。同様に、第２被模倣区間を模倣して第２模倣区間のピッチは生成される。
【００３８】
なお、被模倣区間の音符数が模倣区間の音符数よりも多い場合（すなわち、被模倣区間のリズムが模倣区間よりも速いリズムである場合）には、模倣区間の音符は被模倣区間の音符の途中まで模倣する。反対に、模倣区間の音符数が被模倣区間の音符数よりも多い場合（すなわち、被模倣区間のリズムが模倣区間よりも遅いリズムである場合）には、模倣区間の音符は被模倣区間の音符の最後まで模倣し、不足分の音符のみ新たに生成する、あるいは再度被模倣区間の音符をはじめから模倣する。また、生成したピッチが音階音でない場合には、音階音に修正する。あるいはコードと不整合である場合には、コードと整合させる処理を行うようにしてもよい。
なお、上述の実施例では、重要音の差をとって被模倣区間の非重要音のピッチに加算したが、単純な加算による加工でなく、一般的な演算による加工によってもよい。例えば、
非模倣区間の非重要音のピッチ＋（重要音の差×定数）＋定数…（式３−１）
非模倣区間の非重要音のピッチ＋（重要音の差の２乗）＋定数…（式３−２）
などの演算によって加工したものであってもよい。また、上述した一次演算式（式１−１参照）によって加工したものであってもよい。すなわち、
定数×被模倣区間の非重要音＋定数…（式３−３）
によって加工したものであってもよい。
なお、上記演算式における定数（演算パラメータ）は同じ値でなくてよい。
【００３９】
一般的に楽曲は、イントロ（区間）−１コーラス（区間）−間奏（区間）−２コーラス（区間）−エンディング（区間）などのような構造をしている。楽曲中のメイン部である１コーラス区間メロディが生成されると、１コーラス区間メロディに該１コーラス区間メロディをいかした１コーラス区間以外メロディ（上記構成では、イントロ、間奏、２コーラス、エンディング等）が付加されることによって１曲全体分の楽曲が生成される。イントロは、これから１コーラスに入るための気持ちの準備を与え、１コーラスに入った時の効果をあげるものである。間奏は、１コーラスが次の２コーラスに直接結合して曲が単純化しないようにするために、変化を与えたり、一息つかせたりするためのものである。エンディングは、曲が終わるときの終曲感あるいは名残感を与えるものである。いずれにしても、イントロ、間奏、２コーラス、エンディング等は、１コーラス区間メロディと何らかの音楽的関連を持つのが一般的である（まったく無関連の場合もあるが、関連をつけた方が音楽的に完成度が高い楽曲であると言える）。
【００４０】
そこで、本発明に係る自動作曲装置の第２の実施形態では、１コーラス区間以外（上記構成では、イントロ、間奏、２コーラス、エンディング等）のメロディを生成する場合に、１コーラス区間以外のメロディを生成するためのパラメータを供給し、該パラメータに基づいて１コーラス区間以外のメロディを生成することによって１曲を構築する。この第２の実施形態によると、従来の自動作曲装置と異なり、１コーラス区間メロディを生成した後に、伴奏だけでなく該１コーラス区間メロディのもつ音楽的特徴を生かしたイントロ区間メロディ、間奏区間メロディ、２コーラス区間メロディ、エンディング区間メロディを生成して、１曲全体を構築する。つまり、１コーラス区間メロディのバリエーションとしての２コーラス区間メロディのみならず、メロディのあるイントロ、間奏、エンディング等を生成する。そこで、この１コーラス区間メロディを生成し、その後で１コーラス区間以外（例えば、イントロ、間奏、２コーラス、エンディング等）のメロディ及び伴奏を供給されたパラメータから生成することによって、１曲を構築する作曲処理について説明する。図９は、該作曲処理における処理フローの一実施例を示した概念図である。
【００４１】
まず、ユーザは最初に作りたい曲の音楽ジャンル（ステップＳ２１）及び曲想（ステップＳ２２）を入力する。ジャンルは「ポップス」「ジャズ」「ラテン」「クラシック」などの音楽ジャンルを表わすものであり、曲想は「うきうき」「さびしい」などのキーワードで表わされる該曲から与えられるイメージ的特徴を表わすものである。この入力されたジャンルに従って、モチーフ区間の伴奏が選択される（ステップＳ２３）。モチーフ区間の伴奏選択の際に、該当するモチーフ区間の伴奏が外部記憶装置９等に予め複数記憶されているような場合には、既存の伴奏パターンの中から気に入った伴奏が出現するまで繰り返し伴奏を試聴して選択する。あるいは、外部記憶装置９等に予め複数記憶されている既存の伴奏パターンのいずれかをランダムに選択する。そして、入力されたジャンル及び曲想に従って、モチーフ区間メロディを生成するためのパラメータ（モチーフ区間メロディ生成用情報）を選択または設定する（ステップＳ２４）。例えば、ジャンルとしてビジュアルロックが選択された場合には、メロディピッチがほとんど飛ばないパラメータを選択または設定する。ステップＳ２５では、ステップＳ２３で設定されたモチーフ区間の伴奏を聞きながらユーザが所定のスイッチ５Ａ（例えば、タップスイッチ等）を用いてモチーフ区間メロディの打点（リズム）を打ち込むマニュアル操作によって打点の時間軸移動や打点の増減を行い、その後にステップＳ２４で生成したパラメータ（モチーフ区間メロディ生成用情報）に従い各打点毎のピッチを生成し、これらに基づいてモチーフ区間メロディを生成する。ただし、初めにモチーフ区間メロディを生成することなく、初めから１コーラス区間全体を生成するような場合には、上記ステップＳ２３〜ステップＳ２５までの処理を行う必要がないことから、ステップＳ２１及びステップＳ２２からステップＳ２６の処理へとジャンプする。さらに、モチーフ区間メロディの全てを自動生成する場合には、ユーザが所定のスイッチ５Ａを用いて打点（リズム）を打ち込むために伴奏を聞く必要がないために、ステップＳ２３のモチーフ区間の伴奏選択処理は不要となる。
【００４２】
モチーフ区間メロディが完成すると、該モチーフ区間メロディを用いて１コーラス区間メロディ全体を生成する。まず、モチーフ区間以外（モチーフ区間は既に生成されているので不要）の１コーラス区間内における楽節構成情報と起伏情報とを選択または設定する（ステップＳ２６）。すなわち、１コーラス区間メロディは複数楽節で構成されており（例えば、４楽節）、楽節情報は所定の楽節記号が付された楽節を１コーラス区間メロディの楽節構成順に並べたものである。このように、該楽節記号の並びによって１コーラス区間メロディにおける楽節構成がどのような構成になっているのかが示される。楽節記号とは、楽節間の類似・非類似を表す記号である。例えば、１コーラス区間メロディの楽節数が４である場合（すなわち、１コーラスは４楽節構成）である場合に、第１楽節の楽節記号として「Ａ」（又は「Ａ」）、第２楽節の楽節記号として「Ｂ」（又は「Ａ´」）、第３楽節の楽節記号として「Ｃ」（又は「Ｂ」）、第４楽節の楽節記号として「Ｃ´」（又は「Ｂ´」）が付されたとすると、楽節情報は「ＡＢＣＣ´」（又は「ＡＡ´ＢＢ´」）のように表わされる。この実施例では、「Ａ」の楽節にメロディが類似するものを「Ａ´」のように元の記号に「´」（ダッシュ）記号を付して表わし、「Ａ」の楽節にメロディが類似しない（非類似）のものを別の記号「Ｂ」・「Ｃ」で表わす。起伏情報は曲全体のピッチ変化の起伏を示す情報であって、これに従って曲全体の抑揚は影響を受ける。すなわち、直線的、波状的、躍動的、和声的などの旋律が水平的、上昇的、下降的に変化する様子を示す情報である。
ステップＳ２７では、入力したジャンル、曲想、及び選択または設定した上記モチーフ区間以外の１コーラス区間メロディにおける楽節構成情報と起伏情報とに基づいて、モチーフ区間以外の１コーラス区間メロディ及び伴奏を生成するためのパラメータを選択または設定する。そして、該パラメータに基づいて、モチーフ区間以外の１コーラス区間におけるメロディ及び伴奏を生成する（ステップＳ２８）。
【００４３】
ここで、入力されたジャンルや曲想が１コーラス内楽節構成情報及び起伏情報（ステップＳ２６参照）、あるいは１コーラス区間メロディ生成用及び伴奏生成用情報にどのような影響を及ぼすか（つまり、依存するか）の具体的な例を示す。図１０は、入力されたジャンルや曲想に対する上記各情報との依存関係及び上記各情報内容の具体例を示した図である。
図１０において、項目「ジャンル」及び「曲想」に示した各記号（○、△、×）は、対応するパラメータへの影響度合いを示す。すなわち、「○」である場合、パラメータはジャンルあるいは曲想に依存する。「×」である場合、パラメータはジャンルあるいは曲想に依存しない。「△」である場合、パラメータは特定のジャンルのみあるいは特定の曲想のみに依存する。パラメータの上から順に具体的に説明すると、「楽節構成」、「楽節内小節数」は特定のジャンルの場合にのみ依存し（例えば、ブルース形式のようなジャンルである場合には、「楽節構成」がＡＢＣで各「楽節内小節数」は４小節などのように設定される）、曲想には依存しない。「テンポ」は、特定のジャンルに依存し（例えば、サンバのようなジャンルである場合には、「テンポ」は１２０などのように速いテンポに設定される）、さらに曲想に依存する。「伴奏スタイル」は、ジャンル及び曲想の両方に依存する。「フィル」は、ジャンルに依存せず曲想のみに依存する。「楽節終止型」、「調、転調」、「同一／類似／対比／独立」は、ジャンル及び曲想のどちらにも依存しない。「使用コード」、「メロディリズム生成」、「メロディピッチ生成」は、ジャンル及び曲想の両方に依存する。「表情パラメータ」、「メロディ楽器」は特定のジャンルに依存し（例えば、テクノのようなジャンルである場合には、「表情パラメータ」は表情少なくなどのように設定され、エスニックのような民族音楽のジャンルである場合には、「メロディ楽器」はガムランなどの民族楽器が設定される）、曲想にも依存する。
【００４４】
このようなジャンルあるいは曲想とパラメータの依存関係から、モチーフ区間メロディ生成用情報（図９のステップＳ２４参照）が選択あるいは設定され、さらにモチーフ区間以外の１コーラス区間内楽節構成情報と起伏情報が選択または設定される。ここで、図１０に示した各パラメータと図９のフローチャートで示した各情報との対応関係を示すと、「楽節構成」及び「楽節内小節数」は「楽節構成情報」（図９のステップＳ２６参照）に対応し、「起伏」は「起伏情報」（図９のステップＳ２６参照）に対応する。「楽節終止型」、「調・転調」、「同一／類似／対比／独立」、「使用コード」、「メロディリズム生成」、「メロディピッチ生成」、「表情パラメータ」、「メロディ楽器」は「メロディ生成用情報」（図９のステップＳ２７参照）に対応し、「テンポ」、「伴奏スタイル」、「フィル」、「調・転調」、「使用コード」は「伴奏生成用情報」（図９のステップＳ２７参照）に対応する。そうすると、図１０のように各パラメータが設定されたような場合には、楽節構成が「ＡＡ´ＢＡ」であり、各楽節が４小節（すなわち、１コーラス区間が１６小節）で構成される１コーラス区間メロディ及び伴奏（図９のステップＳ２８参照）が生成される。
勿論、ジャンルあるいは曲想とパラメータとの依存関係をユーザが適宜に設定できるようにしてよいことは言うまでもない。なお、各パラメータは公知のものであることから、各パラメータ内容についての詳しい説明は省略する。
【００４５】
図９に戻り、１コーラス区間メロディが完成すると、次に１コーラス区間以外メロディの生成のために、１コーラス区間以外の曲全体構造情報と起伏情報とを選択または設定する（ステップＳ２９）。次に、この１コーラス区間以外の曲全体構造情報と起伏情報とに基づいて、１コーラス区間以外の曲全体メロディ生成用情報及び伴奏生成用情報を選択または設定する（ステップＳ３０）。選択または設定された１コーラス区間以外の曲全体メロディ生成用情報及び伴奏生成用情報に基づいて、１コーラス区間以外のメロディ及び伴奏を生成する（ステップＳ３１）。最後に、生成されたモチーフ区間伴奏（ステップＳ２３）、モチーフ区間メロディ（ステップＳ２６）、モチーフ区間以外の１コーラス区間のメロディ及び伴奏（ステップＳ２８）、１コーラス区間以外の曲全体メロディ及び伴奏（ステップＳ３１）の各々を結合して（ステップＳ３２）、１曲全体区間の曲が完成する（ステップＳ３３）。
【００４６】
ここで、上述した１コーラス区間以外の曲全体構造情報と起伏情報、１コーラス区間以外の曲全体メロディ生成用情報及び伴奏生成用情報について具体例を示す。図１１は、１曲全体区間のメロディ及び伴奏を生成するためのパラメータの具体例を示した図である。ただし、この具体例では１曲全体が「イントロ―１コーラス−間奏―２コーラス―エンディング」のように構成された曲を例に示し、さらにジャンルとして「ポップス」、曲想として「しっとり」が入力された場合に設定される各パラメータ内容を具体的に示した。なお、１コーラス区間についての各パラメータは既に生成済みであることから、単に「生成済み」と表示した。
図１１に示した各パラメータから生成される１曲の楽節構成は「Ｊ・ＡＡ´ＢＡ・Ｊ´・ＡＡ´ＢＡ・Ｊ´´」となり、１曲は４４小節（４＋１６＋４＋１６＋４）から構成される。なお、各パラメータは公知のものであることから、各パラメータ内容についての詳しい説明は省略する。イントロ及び間奏及びエンディングにおいて、「１コーラスと同じ」あるいは「１コーラス＋１０」（間奏におけるテンポ）、「１コーラス＋４度」（間奏における調、転調）のようにパラメータが設定される場合、１コーラス区間におけるモチーフ区間のパラメータを用いる。例えば、図１１に示した例では、イントロにおける「テンポ」は９０と設定されるし、間奏における「テンポ」は１００（９０＋１０）と設定される。
【００４７】
このように、１コーラス区間及び１コーラス区間以外のメロディ及び伴奏を生成するためのパラメータを供給し、該パラメータに基づいて１コーラス区間及び１コーラス区間以外（すなわち、イントロ、コーラス２、間奏、エンディング等）のメロディ及び伴奏を生成するようにしたことから、１曲全体を通して完成度の高い曲を生成することができる。
また、こうすることにより、実際の楽曲作成時における曲作成手順のように、モチーフ区間メロディの作成から初めて、このモチーフ区間メロディを基にしてコーラスメロディへと発展させ、さらにそれからメロディのあるイントロ、間奏、エンディングを生成していくことで、これらを含む完全な形での楽曲を生成することができる。
【００４８】
次に、本発明に係る自動作曲装置の第３の実施形態では、生成された１コーラス区間のメロディや伴奏から抽出した音楽的特徴（例えば、ピッチやリズムなどに関する音楽的特徴）を利用して、１コーラス区間以外のメロディや伴奏を生成して１曲を構築する。この第３の実施形態によると、従来の自動作曲装置と異なり、１コーラス区間の音楽的特徴を反映したイントロ、間奏、２コーラス、エンディングを生成することから、完成度の高い１曲を構築することができる。
そこで、この１コーラス区間のメロディ及び伴奏を生成し、その後で１コーラス区間の音楽的特徴を曲全体に反映して１曲を構築する手順の作曲処理について説明する。図１２は、該作曲処理における処理フローの一実施例を示した概念図である。
【００４９】
まず、音楽条件である音楽ジャンル（例えば、ポップスなど）、曲想（例えば、さびしいなど）、あるいは調、拍子など、さらにこの条件の元で１コーラス区間のメロディ及び伴奏を生成するための生成用データを選択または設定し（ステップＳ４１）、該データに基づいて１コーラス区間のメロディ及び伴奏を生成する（ステップＳ４２）。次に、１コーラス区間以外のメロディあるいは伴奏を生成するための全体音楽条件を選択または設定する（ステップＳ４３）。これは、楽節構成、小節数、拍子、調などである。次に、１コーラス区間以外のメロディあるいは伴奏を生成するためのタイプを選択または設定する（ステップＳ４４）。この１コーラス区間以外のメロディあるいは伴奏を生成するためのタイプには、伴奏だけ、メロディだけ、メロディと伴奏の両方を生成するなどのタイプがある。他にもドラムだけ、メロディとドラムだけ、ベースとギターだけを生成するなどのいろいろなタイプがあるが、それらについての説明は省略する。
上記ステップＳ４４で選択または設定された１コーラス区間以外のタイプに基づいて、メロディや伴奏のみ、あるいはメロディと伴奏の両方を生成する。すなわち、設定したタイプに基づいて、伴奏だけの演奏では１コーラス区間におけるコード進行と伴奏の特徴を、メロディだけの演奏ではコード進行とメロディの特徴を、メロディと伴奏の演奏ではコード進行とメロディと伴奏の特徴を検出し、これらの特徴から１コーラス区間以外のメロディあるいは伴奏を生成する。そこで、設定したタイプ別に分けて説明する。
【００５０】
まず、タイプとして伴奏のみが選択あるいは設定された場合について説明する（ステップＳ４５〜ステップＳ４９）。
１コーラス区間からコード進行の特徴を検出し（ステップＳ４５）、検出した特徴に基づいてまたは無関係に１コーラス区間以外のコード進行を選択または生成する（ステップＳ４６）。このコード進行の特徴を検出してコード進行を選択または生成する方法として、モチーフ部分（例えば、コーラス１冒頭部分など）又はさび部分などの所定数の小節（例えば、４小節など）のコード進行をそのまま（又は、若干修正して）利用する方法、あるいは１コーラス区間における最初のコードを検出して、該コードが「Ｉ」（調のトニック・コード）であったならば次のコード進行を付加して自然に１コーラス区間に連結する方法がある（例えば、「Ｉ・IIｍ・IV・Ｖ７」、「IV・IIIｍ・IIｍ」、「Ｉ・♭VII・♭VI・Ｖ７」など）。なお、これらのコード進行はいずれかをユーザが選択してもよいし、ランダムに選択されるようにしてもよい。そして、１コーラス区間から伴奏スタイルの特徴を検出し（ステップＳ４７）、検出した特徴に基づいてまたは無関係にコード伴奏スタイルを選択または生成する（ステップＳ４８）。伴奏スタイルについては入力されたジャンルなどの条件により決定されることから、そのスタイルのイントロや間奏あるいはエンディングなどを選択する。こうして選択された伴奏スタイルに上記コード進行を与えることによって、伴奏スタイル演奏をなす（ステップＳ４９）。
【００５１】
次に、タイプとしてメロディのみが選択あるいは設定された場合について説明する（ステップＳ５０〜ステップＳ５１）。
１コーラス区間からメロディの特徴を検出し（ステップＳ５０）、検出した１コーラス区間の特徴に基づいてメロディを生成する（ステップＳ５１）。このメロディの特徴を検出してメロディを生成する方法を大きく２つに分けると、１コーラス区間のリズムの特徴を利用する方法と、１コーラス区間のピッチの特徴を利用する方法とがある。この１コーラス区間のリズムの特徴を利用する方法をさらに細かく分類すると、モチーフのリズムをそのまま利用する方法、モチーフにおける一部のリズムをそのまま利用する方法（例えば、前半のみを利用して残りはランダムに生成する）、モチーフのリズムと対比のリズムを利用する方法等がある。一方、１コーラス区間のピッチの特徴を利用する方法をさらに細かく分類すると、骨格（つまり、メロディ中の重要打点列）はモチーフの骨格をそのまま利用する方法、骨格はモチーフ骨格を拡大・縮小・シフトして利用する方法、骨格間メロディはモチーフ骨格間メロディピッチを拡大・縮小・シフトして利用する方法（ただし、この場合にはコードとの整合化を行う必要がある）、あるいは骨格間メロディは自動生成する方法等がある。なお、１コーラス区間からメロディの特徴を検出する他の方法としては、ステップＳ４１で設定した１コーラス生成用データを利用し、１コーラス以外のメロディのリズムやピッチを生成する方法もある。
【００５２】
さらに、タイプとしてメロディと伴奏が選択あるいは設定された場合について説明する（ステップＳ５２〜ステップＳ５８）。
１コーラス区間からコード進行の特徴を検出し（ステップＳ５２）、検出した特徴に基づいてまたは無関係にコード進行を選択または生成する（ステップＳ５３）。そして、１コーラス区間から伴奏スタイルの特徴を検出し（ステップＳ５４）、検出した特徴に基づいてまたは無関係にコード伴奏スタイルを選択または生成する（ステップＳ５５）。さらに、１コーラス区間からメロディの特徴を検出し（ステップＳ５６）、検出した特徴に基づいてメロディを生成する（ステップＳ５７）。こうして選択された伴奏スタイルに上記コード進行を与えることによって、伴奏スタイル演奏及びメロディ演奏をなす（ステップＳ５８）。以上の処理については、既にタイプとして伴奏のみ、あるいはメロディのみが選択又は設定された場合の処理において既に説明したことから省略する。
【００５３】
ここで、イントロとして４小節を設定した場合におけるイントロのメロディ及び伴奏の具体的な生成例を示す。
例えば、コード進行は、１コーラス区間の冒頭から４小節分のコード進行をそのまま利用する。メロディ生成において、リズムについては１コーラス区間の冒頭から４小節分メロディのリズム対比、ピッチ骨格については１コーラス区間の冒頭から４小節分メロディのピッチ骨格を新コードに整合化、骨格間ピッチは自動生成する。ドラムやベースなどの伴奏は、イントロセクション４小節（またはメイン３小節＋フィルイン１小節）を選択する。メロディ音色は、１コーラス区間と同様の音色に変更する。
あるいは、１コーラス区間の冒頭にうまく連結するようにコード進行を生成する。メロディ生成において、リズムについては１コーラス区間の冒頭から４小節分メロディのリズム対比、ピッチ骨格については１コーラス区間の冒頭から４小節分メロディのピッチ骨格を演算変形し、さらに新コードに整合化して、骨格間ピッチは自動生成する。ドラムやベースなどの伴奏は、イントロスタイル（またはメイン３小節＋フィルイン１小節）を選択する。メロディ音色は、１コーラス区間と同様の音色に変更する。
【００５４】
次に、先にコード進行を必要なだけ生成し、あとから小節数が決まる場合における具体的な生成例を示す。
例えば、コード進行は、１コーラス区間の最初のコード（例えば、調のトニック・コード）が「Ｉ」だった場合、「IV・IIIｍ・IIｍ」を付加する。この場合、各コードを１小節続けるとするとイントロは３小節になる。メロディ生成において、リズムについては１コーラス区間の冒頭から３小節分メロディのリズム対比、ピッチ骨格については１コーラス区間の冒頭から３小節分メロディのピッチ骨格をそのまま利用し新コードに整合化、骨格間ピッチは自動生成する。ドラムやベースなどの伴奏は、イントロスタイル（またはメイン２小節＋フィルイン１小節）を選択する。メロディ音色は、１コーラス区間と同様の音色に変更する。あるいは、メロディ生成において、コーラス特徴とは無関係に、コード進行で決まった小節だけ自動生成する（骨格ピッチ、骨格間ピッチをともに生成する）。
【００５５】
なお、メロディ生成の方法はどのようなものでもよく、上述した第１の実施形態においてはモチーフのピッチやリズムを演算により変形させて利用するものであればよい。また、上述した第２の実施の形態においては、供給されたパラメータに基づいて１コーラス区間以外のメロディを生成するものであればどのようなものであってもよい。さらに、上述した第３の実施の形態においては、１コーラス区間から抽出した特徴に基づいて１コーラス区間以外のメロディや伴奏を生成するものであればどのようなものであってもよい。なお、モチーフは曲の冒頭部分に限らず、曲中の任意の区間におけるメロディとしてもよい。例えば、曲途中のサビ部分に関してモチーフメロディを供給してもよい。
【００５６】
この自動作曲装置を電子楽器に適用する場合、電子楽器は鍵盤楽器の形態に限らず、弦楽器や管楽器、あるいは打楽器等どのようなタイプの形態でもよい。また、音源装置、自動作曲装置等を１つの電子楽器本体に内蔵したものに限らず、それぞれが別々に構成され、ＭＩＤＩインタフェースや各種ネットワーク等の通信手段を用いて各装置を接続するように構成されたものにも同様に適用できることはいうまでもない。また、パソコンとアプリケーションソフトウェアという構成であってもよく、この場合処理プログラムを磁気ディスク、光ディスクあるいは半導体メモリ等の記憶メディアから供給したり、ネットワークを介して供給するものであってもよい。さらに、カラオケや自動演奏ピアノのような自動演奏装置に適用してもよい。さらに、携帯電話やＰＤＡ（Personal Digital Assistants）のような携帯型通信端末に適用してもよく、その場合、本発明における自動作曲方法の少なくとも一部のステップをサーバ側にて実行するようにしてもよい。例えば、携帯型通信端末からモチーフメロディを入力してサーバに送信し、サーバではこのモチーフメロディを発展させて１曲メロディを生成して、これを携帯型通信端末へと配信するようにしてもよい。あるいは、携帯型通信端末からパラメータを入力してサーバに送信し、サーバではこのパラメータに基づいてコーラス区間やコーラス区間以外のメロディを生成して、これを携帯型通信端末へと配信するようにしてもよい。この際、サーバ側にて課金処理を施してもよい。このようにして生成されたメロディは、携帯型通信端末における着信音、アラーム音、ＢＧＭ、他の携帯型通信端末へのメールに添付する等の用途に利用できる。
【００５７】
自動演奏装置に適用する場合、生成されるメロディデータや伴奏データ、あるいはメロディ及び伴奏データを組み合わせた演奏データのフォーマットは、イベントの発生時刻を曲や小節内における絶対時間で表した『イベント＋絶対時間』形式のもの、イベントの発生時刻を１つ前のイベントからの時間で表した『イベント＋相対時間』形式のもの、音符の音高と符長あるいは休符と休符長で演奏データを表した『音高（休符）＋符長』形式のもの、演奏の最小分解能毎にメモリの領域を確保し、演奏イベントの発生する時刻に対応するメモリ領域にイベントを記憶した『ベタ方式』形式のものなど、どのような形式のものでもよい。
また、複数チャンネル分の演奏データが存在する場合は、複数のチャンネルのデータが混在した形式であってもよいし、各チャンネルのデータがトラック毎に別れているような形式であってもよい。
【００５８】
【発明の効果】
本発明によれば、モチーフのピッチやリズムを演算により加工し、加工したピッチやリズムを用いてモチーフに後続する区間の曲を生成するようにしたことから、モチーフの特徴を抽出することなく、簡単な処理でモチーフの雰囲気を曲全体に反映させて曲を生成することができる、という効果が得られる。
また、１コーラス区間以外の区間のメロディを生成するためのパラメータを供給し、該パラメータに基づいて１コーラス区間以外の区間のメロディを生成するようにしたことから、全体にわたって完成度の高い曲を生成することができる、という効果が得られる。
さらに、生成された１コーラス区間メロディや伴奏から抽出した特徴を利用して、１コーラス区間以外の区間のメロディや伴奏を生成するようにしたことから、１コーラス区間の特徴を反映させたイントロや間奏、エンディング等を生成することができる、という効果が得られる。
【図面の簡単な説明】
【図１】  この発明に係る自動作曲装置の全体構成の一実施例を示したハード構成ブロック図である。
【図２】  モチーフ中の重要音のみを利用してモチーフの雰囲気を反映した１曲を構築する処理の一実施例を示したフローチャートである。
【図３】  モチーフ中の全てのピッチを利用してモチーフの雰囲気を反映した１曲を構築する処理の一実施例を示したフローチャートである。
【図４】  ピッチ演算を説明するための概念図であり、図４（Ａ）はピッチ演算前におけるピッチを示し、図４（Ｂ）はピッチ演算後におけるピッチを示す。
【図５】  モチーフメロディのピッチ形状及びリズムを反映してモチーフ後続区間メロディを生成するメイン処理の一実施例を示したフローチャートである。
【図６】  区間生成指示画面の一実施例を示した概念図である。
【図７】  モチーフメロディのピッチを模倣してモチーフに後続する区間のピッチを生成する処理の一実施例を示すフローチャートである。
【図８】  モチーフのピッチをシフトして模倣する方法を説明するための概念図である。
【図９】  １コーラス区間を生成し、その後で１コーラス区間以外を生成して１曲を構築する作曲処理の処理フローの一実施例を示した概念図である。
【図１０】  入力されたジャンルや曲想に対する上記各情報との依存関係及び上記各情報内容の具体例を示した図である。
【図１１】  全曲でのメロディ生成及び伴奏生成パラメータの具体例を示した図である。
【図１２】  １コーラス区間を生成し、その後で１コーラス区間の音楽的特徴を曲全体に反映して１曲を構築する作曲処理の処理フローの一実施例を示した概念図である。
【符号の説明】
１…ＣＰＵ、１Ａ…タイマ、２…ＲＯＭ、３…ＲＡＭ、４…押鍵検出回路、４Ａ…鍵盤、５…スイッチ検出回路、５Ａ…スイッチ、６…表示回路、６Ａ…ディスプレイ、７…音源回路、８…効果回路、８Ａ…サウンドシステム、９…外部記憶装置、１０…ＭＩＤＩインタフェース、１０Ａ…他のＭＩＤＩ機器、１１…通信インタフェース、１１Ａ…サーバコンピュータ、１１Ｂ…通信ネットワーク、１Ｄ…データ及びアドレスバス
【図１】
0003724347.tif 000002
【図２】
0003724347.tif 000003
【図３】
0003724347.tif 000004
【図４】
0003724347.tif 000005
【図５】
0003724347.tif 000006
【図６】
0003724347.tif 000007
【図７】
0003724347.tif 000008
【図８】
0003724347.tif 000009
【図９】
0003724347.tif 000010
【図１０】
0003724347.tif 000011
【図１１】
0003724347.tif 000012
【図１２】
0003724347.tif 000013