(57)【要約】【課題】  曲のテンポを大きくずらすことなくユーザ所望の時間長にあった曲長さを持つ自然な聴感の曲を容易に生成する。【解決手段】  曲進行テンプレートを読み出した後に、取得した所定の標準テンポ及び標準拍子と設定された時間長とに応じて曲進行プレートの調整を行い、該調整された曲進行テンプレートに基づき曲を自動生成する。曲進行テンプレートの調整は、曲進行テンプレート内の一部の小節を標準拍子から変拍子に変更する。このように曲進行テンプレートの一部の小節を標準拍子から変拍子に変更して曲進行テンプレート自体を変更すると、小節単位よりも細かく拍単位での曲生成を行うことができることから、曲のテンポを大きくずらすことなく指定時間長の曲を容易に生成することができるようになる。【選択図】        図３
2005165119.tif 000002
【特許請求の範囲】
【請求項１】
曲進行テンプレートを読み出す読み出し手段と、
所定の標準テンポ及び標準拍子を取得する取得手段と、
生成すべき曲の時間長を設定する時間設定手段と、
前記取得した所定の標準テンポ及び標準拍子と前記設定された時間長とに応じて前記読み出した曲進行テンプレートを調整する曲進行テンプレート調整手段と、
前記調整された曲進行テンプレートに基づき曲を自動生成する生成手段と
を具えた自動作曲装置。
【請求項２】
前記曲進行テンプレート調整手段は、曲進行テンプレート内の一部の小節を標準拍子から変拍子に変更して曲進行テンプレートを調整することを特徴とする請求項１に記載の自動作曲装置。
【請求項３】
前記取得した所定の標準テンポを補正する補正手段を具えてなり、前記補正したテンポに従って曲進行テンプレートに基づき自動生成された曲を再生できるようにしたことを特徴とする請求項１又は２に記載の自動作曲装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、自動作曲用の曲進行テンプレートに基づき自動的に曲を生成する自動作曲装置に関する。特に、指定時間長に応じてその有する情報の一部を変更した曲進行テンプレートに基づいて自動作曲を行うことにより、容易にユーザ所望の時間長にあった曲長さを持つ自然な聴感の曲を生成することのできるようにした自動作曲装置に関する。
【背景技術】
【０００２】
従来から、予め用意されている自動作曲用の曲進行テンプレート（以下、単に作曲用テンプレートと呼ぶ）を用いて曲（例えばメロディ）を自動的に生成する自動作曲装置が知られている。例えば、本発明人が既に出願済みの以下に示す特許文献１又は特許文献２に記載の自動作曲装置においては、ユーザが指定した時間長やテンポあるいは拍子などの作曲条件に一致又は類似する作曲用テンプレートをユーザに対して１乃至複数提示し、ユーザが提示されたこれらの作曲用テンプレートの中から所望の作曲用テンプレートを選択することによって、該選択した作曲用テンプレートに基づきメロディの自動作曲が行われるようになっている。なお、本明細書において「作曲用テンプレート」とは、１曲分のメロディ構成やピッチパターン及びリズムパターンなどのメロディを生成するために必要な各種情報を定義したメロディの雛型となるデータであり、例えば曲構成情報、各小節情報、コード進行情報などの各種情報を、上位から楽曲全体（ブロック）、楽節、小節などという順序で階層化された構造により有しているものである（後述の図３参照）。
【特許文献１】特開平11-119774号公報
【特許文献２】特開2003-029749号公報
【０００３】
ところで、予め用意されている作曲用テンプレートは生成可能な曲長さがそれぞれ決まっているものであって、ユーザは指定した時間長に一致する曲長さを持つ曲を自動生成する作曲用テンプレートを選択しなければならないが、ユーザが必要とするそうした作曲用テンプレートが必ずしも常に十分に用意されているとは限らない。そこで、指定した時間長に一致する曲長さを持つ曲を自動生成する作曲用テンプレートがない場合には、ユーザは提示された候補の中から指定した時間長に近い曲長さを持つ曲を自動生成する作曲用テンプレートを選択することができるようになっている。ただし、そうした場合、該選択した作曲用テンプレートに基づき生成される曲はそのままではユーザが指定した時間長と一致しない異なる曲長さを持つ曲であることから、指定した時間長に適合するよう生成した曲のテンポを微調整する必要がある。したがって、選択した作曲用テンプレートによってはテンポを大幅にずらさないとユーザが指定した時間長と一致する曲長さを持つ曲を生成することができないが、あまりに大きくテンポをずらしてしまうと不自然な聴感の曲が生成されてしまい都合が悪い、という問題点があった。また、自動生成できる曲の長さがどうしても限定されてしまうので、多様な時間長の曲を容易に生成することができなかった。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は上述の点に鑑みてなされたもので、指定した時間長に対応していない作曲用テンプレートが選択された場合に、一部の小節を変拍子にするなど指定時間長に応じて該作曲用テンプレートを適宜に自動調整することによって、曲のテンポを大きくずらすことなく指定時間長の曲を容易に生成することのできるようにした自動作曲装置を提供しようとするものである。
【課題を解決するための手段】
【０００５】
本発明に係る自動作曲装置は、曲進行テンプレートを読み出す読み出し手段と、所定の標準テンポ及び標準拍子を取得する取得手段と、生成すべき曲の時間長を設定する時間設定手段と、前記取得した所定の標準テンポ及び標準拍子と前記設定された時間長とに応じて前記読み出した曲進行テンプレートを調整する曲進行テンプレート調整手段と、前記調整された曲進行テンプレートに基づき曲を自動生成する生成手段とを具える。
本発明の好ましい実施例として、前記曲進行テンプレート調整手段は、曲進行テンプレート内の一部の小節を標準拍子から変拍子に変更して曲進行テンプレートを調整することを特徴とする。
【０００６】
本発明によると、曲進行テンプレートを読み出した後に、取得した所定の標準テンポ及び標準拍子と設定された時間長とに応じて曲進行テンプレートの調整を行い、該調整された曲進行テンプレートに基づき曲を自動生成する。曲進行テンプレートの調整は、曲進行テンプレート内の一部の小節を標準拍子から変拍子に変更する。このように曲進行テンプレートの一部の小節を標準拍子から変拍子に変更して曲進行テンプレート自体を変更すると、小節単位よりも細かく拍単位での曲生成を行うことができることから、曲のテンポを大きくずらすことなく指定時間長の曲を容易に生成することができるようになる。
【０００７】
本発明は、装置の発明として構成し実施することができるのみならず、方法の発明として構成し実施することができる。また、本発明は、コンピュータまたはＤＳＰ等のプロセッサのプログラムの形態で実施することができるし、そのようなプログラムを記憶した記憶媒体の形態で実施することもできる。
【発明の効果】
【０００８】
この発明によれば、指定した時間長に対応していない曲進行テンプレート（作曲用テンプレート）が選択された場合であっても、該作曲用テンプレート内の一部の小節を変拍子にするなど指定時間に応じて該作曲用テンプレートを適宜に調整して自動作曲を行うことから、曲のテンポを大きくずらすことなくユーザ所望の時間長にあった曲長さを持つ自然な聴感の曲を容易に生成することができるようになる、という効果を得る。
【発明を実施するための最良の形態】
【０００９】
以下、この発明の実施の形態を添付図面に従って詳細に説明する。
【００１０】
図１は、この発明に係る自動作曲装置の実施の形態を示すハード構成ブロック図である。本実施例に示す自動作曲装置は、マイクロプロセッサユニット（ＣＰＵ）１、リードオンリメモリ（ＲＯＭ）２、ランダムアクセスメモリ（ＲＡＭ）３からなるマイクロコンピュータによって制御されるようになっている。ＣＰＵ１は、この自動作曲装置全体の動作を制御する。このＣＰＵ１に対して、通信バス１Ｄ（例えばデータ及びアドレスバス）を介してＲＯＭ２、ＲＡＭ３、通信インタフェース（Ｉ／Ｆ）４、入力操作部５、表示部６、外部記憶装置７、音源８がそれぞれ接続されている。更に、ＣＰＵ１には図示しないタイマが接続されており、このタイマは自動作曲した曲を伴奏などと共に自動演奏する際に用いるテンポを設定するのに必要なクロックパルスを発生する。また、タイマからのクロックパルスはＣＰＵ１に対して処理タイミング命令やインタラプト命令として与えられ、ＣＰＵ１ではこれらの命令に従って各種処理を実行する。
【００１１】
ＲＯＭ２は、ＣＰＵ１により実行あるいは参照される各種制御プログラムや各種データ等を格納するものである。ＲＡＭ３は、作曲した曲を自動演奏する際に用いる自動演奏情報やＣＰＵ１が所定の制御プログラムを実行する際に発生する各種データなどを一時的に記憶するワーキングメモリとして、あるいは現在実行中の制御プログラムやそれに関連するデータを記憶するメモリ等として使用される。ＲＡＭ３の所定のアドレス領域がそれぞれの機能に割り当てられ、レジスタやフラグ、テーブル、メモリなどとして利用される。外部インターフェース（Ｉ／Ｆ）４は当該自動作曲装置と外部機器４Ａなどとの間で各種制御プログラムや各種データ等を送受信するための、例えば通信インターフェースなどである。すなわち、通信インターフェースは例えばＬＡＮやインターネット、電話回線等の有線あるいは無線の通信ネットワークに接続されており、該通信ネットワークを介してパーソナルコンピュータやサーバコンピュータ等の外部機器４Ａと接続され、当該外部機器４Ａで生成した各種制御プログラムや各種データ等を自動作曲装置側に取り込むためのものである。
【００１２】
入力操作部５は、自動作曲の際に用いる各種作曲条件を入力するためのスイッチ又は操作子類である。勿論、入力操作部５はこれら以外にも数値データ入力用のテンキーや文字データ入力用のキーボード、ディスプレイ６Ａに表示される所定のポインタを操作するために用いるポインティングデバイス（例えばマウス）などの各種操作子を含んでいてもよい。表示部６は例えば液晶表示パネル（ＬＣＤ）やＣＲＴ等から構成されるディスプレイ６Ａに、ユーザが入力した作曲条件、ユーザに対して提示される作曲用テンプレートや伴奏スタイルデータ等の自動作曲に関する各種情報を表示したりするのは勿論のこと、自動演奏に関する自動演奏情報やＣＰＵ１の制御状態などを表示したりもする。
【００１３】
外部記憶装置７はＣＰＵ１が実行する各種制御プログラム（例えば、後述する自動作曲処理など）や各種データ（例えば作曲用テンプレートや伴奏スタイルデータ、あるいは生成したメロディデータや伴奏データ）などを記憶する。前記ＲＯＭ２に制御プログラムが記憶されていない場合、この外部記憶装置７（例えばハードディスク）に制御プログラムを記憶させておき、それを前記ＲＡＭ３に読み込むことにより、ＲＯＭ２に制御プログラムを記憶している場合と同様の動作をＣＰＵ１にさせることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。なお、外部記憶装置７はハードディスク（ＨＤ）に限られず、フレキシブルディスク（ＦＤ）、コンパクトディスク（ＣＤ−ＲＯＭ・ＣＤ−ＲＡＭ）、光磁気ディスク（ＭＯ）、あるいはＤＶＤ（Digital Versatile Disk）等の着脱自在な様々な形態の外部記録媒体を利用する記憶装置であってもよい。あるいは、半導体メモリなどであってもよい。
【００１４】
音源８は複数のチャンネルで楽音信号の同時発生が可能であり、通信バス１Ｄを経由して与えられたメロディデータや伴奏データ等の各種演奏情報を入力し、これらの演奏情報に基づいて楽音信号を発生する。音源８から発生された楽音信号は、アンプやスピーカなどを含むサウンドシステム８Ａから発音される。この音源８から発生された楽音信号に対して、効果回路など（図示せず）を用いて所定の効果を付与するようにしてもよい。前記メロディデータや伴奏データの形式はＭＩＤＩ形式のようなディジタル符号化されたものであってもよいし、ＰＣＭ、ＤＰＣＭ、ＡＤＰＣＭのような波形サンプルデータ方式からなるものであってもよい。この音源８とサウンドシステム８Ａの構成には、従来のいかなる構成を用いてもよい。例えば、音源８はＦＭ、ＰＣＭ、物理モデル、フォルマント合成等の各種楽音合成方式のいずれを採用してもよく、また専用のハードウェアで構成してもよいし、ＣＰＵ１によるソフトウェア処理で構成してもよい。
【００１５】
なお、上述した自動作曲装置は入力操作部５やディスプレイ６Ａあるいは音源８などを１つの装置本体に内蔵したものに限らず、それぞれが別々に構成され、各種インタフェースや各種ネットワーク等の通信手段を用いて各装置を接続するように構成されたものであってもよいことは言うまでもない。さらに、本発明に係る自動作曲装置を適用する装置は、電子楽器、パーソナルコンピュータ、ＰＤＡや携帯電話等の携帯型通信端末、あるいはカラオケ装置やゲーム装置など、どのような形態の装置・機器に適用してもよい。
【００１６】
次に、ユーザが設定した作曲条件に応じて曲を自動作曲する「自動作曲処理」について、図２及び図３を用いて説明する。図２は、「自動作曲処理」の一実施例を示すフローチャートである。図３は、上記「自動作曲処理」に基づき一部が変更される前後の作曲用テンプレートのデータ構造を示す概念図である。図３上段に変更前の作曲用テンプレートのデータ構造を、図３下段に変更後の作曲用テンプレートのデータ構造をそれぞれ概念的に示している。図３下段に示す変更後の作曲用テンプレートにおいて、変更した箇所は斜線を施してある。なお、ここでは説明を理解し易くするために、標準テンポが４分音符＝１１８、標準拍子が４分の４（4/4）拍子である場合に、図３上段に示す６小節２４拍からなる作曲用テンプレートを用いて時間長１１秒の曲を生成する動作を具体例として説明する。
【００１７】
ステップＳ１では、曲生成のための各種パラメータ設定を行う。すなわち、ユーザによる入力操作部５からの設定入力に応じて、作曲用テンプレートを用いた自動作曲に必要とされる作曲条件を設定する。ユーザにより設定入力される作曲条件としては、例えばジャンル（８ビートやクラシックなど）、調（長調／短調）、メロディック（流れるようなメロディ）／リズミック（刻むようなメロディ）の別、生成する曲の長さ（時間長）などがある。また、作曲条件として、自動作曲した曲に付する伴奏を生成するための伴奏スタイルの設定も行う。ステップＳ２では、上記設定した伴奏スタイルに従い外部記憶装置７（スタイルデータベース）から該当する伴奏スタイルデータを取得し、該取得した伴奏スタイルデータ中に定義されている標準テンポ（例えば、４分音符＝１１８）と作曲条件として設定された時間長（例えば、１１秒）とを用いて生成すべき曲全体の拍数を算出する。この曲全体の拍数は、以下に示す数１により算出される。ただし、曲にあっては拍数は整数でなければならないことから、この実施例においては算出した必要拍数が小数である場合に小数部を四捨五入して必要拍数を整数とする。
（数１）
必要拍数＝指定時間／（６０／標準テンポ）
したがって、標準テンポが４分音符＝１１８である場合に１１秒の時間長の曲全体に必要な拍数は２２拍となる（11/（60/118）＝21.63、四捨五入して２２）。
【００１８】
ステップＳ３では、上記ステップＳ２で読み出された伴奏スタイルデータ中に定義されている標準拍子と上記数１に従って算出された必要拍数とにより、標準拍子の小節数と変拍子の小節数とを求める。すなわち、曲全体の拍数（必要拍数）を標準拍子で構成する小節と変拍子で構成する小節とに分けた場合に、それぞれ必要とされる小節の数を求める。例えば、標準拍子が４分の４拍子である場合に必要拍数２２拍からなる曲を生成するのに必要な標準拍子の小節数と変拍子の小節数を求める場合には、４の倍数であって且つ必要拍数の２２拍を超えて最も近い拍数は２４拍であり、これは標準拍子の４分の４拍子で構成される小節の６小節分に該当する。したがって、この場合には標準拍子で構成される小節として５小節分（２０拍）、２拍の変拍子で構成される小節として１小節分（２拍）が必要とされる。なお、この標準拍子の小節数と変拍子の小節数とを求める際には、標準拍子で構成される小節として４小節分（１６拍）、２拍の変拍子で構成される小節として３小節分（６拍）などのように適宜に分けるようにしてもよいが、標準拍子で構成される小節をなるべく多く使用して、変拍子の多用による音楽的な聴感の喪失を招くことのないようにするのがよい。
【００１９】
ステップＳ４では、上記ステップＳ３において求めた標準拍子の小節数と変拍子の小節数とを加算し、外部記憶装置７などから該当する小節数に対応している作曲用テンプレートを選択してＲＡＭ３などに読み込む。この際に、標準拍子の小節数と変拍子の小節数とを加算して求めた曲全体の小節数に対応している作曲用テンプレートが複数ある場合には、該当する作曲用テンプレートを候補としてユーザに対して提示し、ユーザが提示された候補の中から適宜に選択するようにしてよい。このようにして、自動作曲に用いる作曲用テンプレートとして、図３上段に示す６小節に対応している作曲用テンプレートが読み出される。
【００２０】
ステップＳ５では、変拍子の小節を曲中のどの位置に割り当てるかを自動判断する。例えば、作曲用テンプレートにおいて曲の先頭と最後及びブロックの先頭と最後の小節を避け、その他の小節の中からランダムに変拍子にする小節を決定する。こうした自動判断は、例えばアルゴリズムにより実行する。図３の例では、２小節目に変拍子を割り当てている。ステップＳ６では、変拍子が入ることにより影響を受ける楽節情報（楽節種類）を修正する。すなわち、変拍子に変更された小節を含む楽節の楽節種類が曲中に他に存在する場合、拍子が変更されるとメロディも異なるものとなることから影響を受ける楽節の楽節種類を変更する。ただし、変拍子を同一種類楽節の同一箇所に割り当てたような場合には、こうした楽節種類の変更を行わなくてもよいことは言うまでもない。図３の例においては第１楽節「ａ」に含まれる２小節目が変拍子に変更されることから、変更前に同一の楽節種類「ａ」が付されていた後出の第３楽節を楽節種類「ａ」と異なる楽節種類「ｃ」に修正する。なお、変拍子に変更された小節を含む楽節の楽節種類が当該楽節よりも前に存在していた場合には、変拍子に変更された小節を含む楽節の楽節種類を修正する。
【００２１】
ステップＳ７では、変拍子の小節のコード進行情報を調整する。このコード進行情報を調整するためのルールの一例としては、例えばコード数が同じ場合には各コードの長さのみを変更する、コード数が多い場合には元のコードの２、３、１、４拍にあるコードから削除していく、コード数が少ない場合には元のコードの４、１、２、３拍にあるコードから追加していく、などの数々のルールがある。図３の例では、コード数が「Ｇ７」と「Ｃ」の２つで変更前と同じ数であることから、各コードの長さをそれぞれ２拍分から１拍分へと変更することによって変拍子の小節のコード進行情報を調整している。
【００２２】
上記処理に従うと、図３上段に示す６小節２４拍からなる作曲用テンプレートを用いて時間長１１秒の曲を生成する場合には、図３下段に示す作曲用テンプレートが新たに生成される。すなわち、標準拍子で構成される小節として５小節分（２０拍）、２拍の変拍子で構成される小節として１小節分（２拍）の６小節計２２拍で全体が構成されており、２小節目に２拍子からなる変拍子で構成される小節を有した作曲用テンプレートが生成される。ステップＳ８では、上記新たに生成された作曲用テンプレートに基づきメロディデータを作成する。すなわち、新たに生成された作曲用テンプレートを用いて曲（メロディ）を自動的に生成する。ステップＳ９では、上記ステップＳ２で取得した伴奏スタイルデータとコード進行情報とに基づき伴奏データを作成する。
【００２３】
ステップＳ１０では、必要に応じてテンポ調整を行う。ステップＳ１１では、該調整されたテンポなどに従い生成したメロディデータおよび伴奏データを再生することによって、メロディ及び伴奏の自動演奏を実行する。ここで、上記テンポ調整について簡単に説明する。現在のテンポでの曲の再生時間（曲の長さ）が指定時間と異なる場合には、次の方法にてテンポを調整することにより曲の再生時間を指定時間にあわせることが考えられる。例えば、ユーザ自身の手入力による方法、指定時間に最も近くなるテンポを自動検出する方法などがある。自動検出する方法の一例としては、以下に示す数２を用いて補正テンポを決定する。
（数２）
補正テンポ＝（必要拍数＊６０）／生成時間
なお、上記した各方法のいずれかにより調整された補正テンポが標準テンポから大きく外れてしまい音楽的に不自然な聴感となるような場合には、曲の最後のテンポを加工するとよい。例えば、現在のテンポでは長くかかる場合には、曲の最後にリタルダンド的な処理を加えたり、あるいはフェルマータやフェードアウトなどを適用して時間内に収めるようにしてよい。
【００２４】
上述の実施例に示したように、作曲用テンプレートの一部を変拍子に替えてテンポ調整を行う場合には、従来に比べて標準テンポからのずれを小さくすることができる。すなわち、この実施例の場合には補正テンポは１２０（（22*60）/11）となる。一方、従来においてテンポを補正した場合には補正テンポは１３１（（24*60）/11）となる。これから理解できるように、この実施例における補正テンポ１２０は従来の補正テンポ１３１に比べて標準テンポ１１８からのずれが小さい。したがって、本発明に係る自動作曲装置においては標準テンポに近いテンポで指定時間にあった曲長さを持つ曲を容易に生成することができる。
【００２５】
なお、作曲用テンプレートは、図３に示すように曲構成情報、各小節情報、コード進行情報などの各種情報を含むものであるがこれに限らず、例えばコード進行情報を別のファイルに記憶しておき、作曲用テンプレートから当該ファイルを参照することによってコード進行情報を得ることができるようにしてあってもよい。
なお、基準とする標準テンポは作曲用テンプレート内に含まれているものを用いてもよいし、選択した伴奏スタイルデータの標準テンポを読み出して用いるようにしてもよい。あるいは、ユーザが指定したものを用いてもよい。
【００２６】
なお、求めた曲全体の小節数に対応している作曲用テンプレートがない場合には、必要拍数よりも多くて最も近い小節数に対応している作曲用テンプレートを選択して読み出し、一部小節の拍を削除することによって（当該小節は変拍子で構成される小節になる）必要な拍数を得るようにしてもよい。あるいは、必要拍数よりも少なくて最も近い小節数に対応している作曲用テンプレートを選択して読み出し、一部小節に拍数を付加することによって必要な拍数を得るようにしてもよい。さらに、変拍子で構成される小節のテンプレートを予め用意しておき、変拍子を割り当てるべき小節に前記変拍子小節テンプレートを置き換えしてもよい。
なお、作曲終了時には新たに生成された変更後の作曲用テンプレートに対して新たなテンプレート名を付して外部記憶装置７などに記憶するようにしてよい。あるいは、作曲終了時には新たに生成された変更後の作曲用テンプレートを自動的に削除するようにしてもよい。
【図面の簡単な説明】
【００２７】
【図１】この発明に係る自動作曲装置の実施の形態を示すハード構成ブロック図である。
【図２】自動作曲処理の一実施例を示すフローチャートである。
【図３】自動作曲処理に基づき一部が変更される前後の作曲用テンプレートのデータ構造を示す概念図である。
【符号の説明】
【００２８】
１…ＣＰＵ、２…ＲＯＭ、３…ＲＡＭ、４…通信インタフェース、４Ａ…外部機器、５…入力操作部、６…表示部、６Ａ…ディスプレイ、７…外部記憶装置、８…音源、８Ａ…サウンドシステム、１Ｄ…通信バス
【図１】
2005165119.tif 000003
【図２】
2005165119.tif 000004
【図３】
2005165119.tif 000005