(57)【特許請求の範囲】
【請求項１】
所定の主旋律を構成する複数のメロディ音の情報を供給する供給手段と、
前記供給手段によって供給された情報に基づく各メロディ音を、強拍音、強拍近くの音、長音の少なくともいずれか１つを基準にして、特定音と該特定音以外の音とに分類する分類手段と、
前記供給された情報に基づき前記主旋律の調を検出する手段と、
前記主旋律に付加されるべき副旋律を構成する付加音の情報を生成するものであって、前記分類された特定音に対しては所定の第１のルールに従って付加音を決定し、前記分類された特定音以外の音に対しては前記第１のルールとは異なる第２のルールに従って付加音を決定する生成手段と
を具え、前記第１のルールは、前記検出された調において前記特定音に対して所定の複数の音程度数の関係にある音のいずれかから付加音を決定するものであり、前記第２のルールは、生成済みの直前の付加音に対して順次進行、同音進行又は跳躍進行のいずれかの関係にある当該調の音階音を付加音として決定するものであることを特徴とする副旋律生成装置。
【請求項２】
前記生成手段は、曲頭と曲最後と段落音のメロディ音の少なくとも一方に対し、前記検出された主旋律の調の主音と同じ音程を持つ付加音を付加することを特徴とする請求項１に記載の副旋律生成装置。
【請求項３】
複数の音程からいずれかの音程を選択する手段を具えてなり、
前記生成手段は、選択された音程に従う付加音を特定音あるいは特定音以外の音に付加することを特徴とする請求項１又は２に記載の副旋律生成装置。
【請求項４】
前記生成手段は、特定音あるいは特定音以外の音に対して付加した付加音に基づいて禁則音の有無を判定し、該判定に従って新たに付加音を付加することを特徴とする請求項１乃至３のいずれかに記載の副旋律生成装置。
【請求項５】
前記生成手段は、所定長以上の音長を持つメロディ音又は所定長以上の無音なメロディ区間の有無を判定し、該判定に従ってピックアップを形成する付加音を付加することを特徴とする請求項１乃至４のいずれかに記載の副旋律生成装置。
【請求項６】
所定の主旋律を構成する複数のメロディ音の情報を供給するステップと、
前記供給された情報に基づく各メロディ音を、強拍音、強拍近くの音、長音の少なくともいずれか１つを基準にして、特定音と該特定音以外の音とに分類するステップと、
前記供給された情報に基づき前記主旋律の調を検出するステップと、
前記主旋律に付加されるべき副旋律を構成する付加音の情報を生成するステップであって、前記分類された特定音に対しては所定の第１のルールに従って付加音を決定し、前記分類された特定音以外の音に対しては前記第１のルールとは異なる第２のルールに従って付加音を決定するステップと
を具え、前記第１のルールは、前記検出された調において前記特定音に対して所定の複数の音程度数の関係にある音のいずれかから付加音を決定するものであり、前記第２のルールは、生成済みの直前の付加音に対して順次進行、同音進行又は跳躍進行のいずれかの関係にある当該調の音階音を付加音として決定するものであることを特徴とする副旋律生成方法。
【請求項７】
プログラムを記憶したコンピュータ読取り可能な記憶媒体であって、前記プログラムは下記ステップからなる副旋律生成方法をコンピュータに実行させるものであり、該副旋律生成方法は、
所定の主旋律を構成する複数のメロディ音の情報を供給するステップと、
前記供給された情報に基づく各メロディ音を、強拍音、強拍近くの音、長音の少なくともいずれか１つを基準にして、特定音と該特定音以外の音とに分類するステップと、
前記供給された情報に基づき前記主旋律の調を検出するステップと、
前記主旋律に付加されるべき副旋律を構成する付加音の情報を生成するステップであって、前記分類された特定音に対しては所定の第１のルールに従って付加音を決定し、前記分類された特定音以外の音に対しては前記第１のルールとは異なる第２のルールに従って付加音を決定するステップと
を具え、前記第１のルールは、前記検出された調において前記特定音に対して所定の複数の音程度数の関係にある音のいずれかから付加音を決定するものであり、前記第２のルールは、生成済みの直前の付加音に対して順次進行、同音進行又は跳躍進行のいずれかの関係にある当該調の音階音を付加音として決定するものであることを特徴とする。
【請求項８】
クライアント装置において、所定の主旋律を構成する複数のメロディ音の情報をサーバ装置へと供給するステップと、
サーバ装置において、前記クライアント装置から供給された情報に基づく各メロディ音を、強拍音、強拍近くの音、長音の少なくともいずれか１つを基準にして、特定音と該特定音以外の音とに分類するステップと、
前記供給された情報に基づき前記主旋律の調を検出するステップと、    サーバ装置において、前記主旋律に付加されるべき副旋律を構成する付加音の情報を生成するステップであって、前記分類された特定音に対しては所定の第１のルールに従って付加音を決定し、前記分類された特定音以外の音に対しては前記第１のルールとは異なる第２のルールに従って付加音を決定するステップと、
サーバ装置において、前記決定された付加音を前記クライアント装置へと供給するステップと
を具え、前記第１のルールは、前記検出された調において前記特定音に対して所定の複数の音程度数の関係にある音のいずれかから付加音を決定するものであり、前記第２のルールは、生成済みの直前の付加音に対して順次進行、同音進行又は跳躍進行のいずれかの関係にある当該調の音階音を付加音として決定するものであることを特徴とする副旋律生成方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、主旋律に応じて自動的に副旋律（付加音）を生成する副旋律生成装置および方法並びに記憶媒体に関し、特にコード進行が付与されていない場合であっても主旋律に対して副旋律（付加音）を自動的に生成し付加する副旋律生成装置及び方法並びに記憶媒体に関する。
【０００２】
【従来の技術】
近年、パーソナルコンピュータの普及に伴い、コンピュータを用いて楽器を演奏したり、作曲したり、編曲したり、音色を合成したりするコンピュータミュージックを用いて、誰でも音楽を自由に楽しめるようになってきた。特に、コンピュータを用いた自動演奏の分野において、ユーザが選択した所望の主旋律に基づいて自動演奏を行う際に、主旋律に応じた副旋律（付加音）を自動的に生成する副旋律生成装置が従来から知られている。該副旋律生成装置を用いて主旋律に応じた副旋律（付加音）を自動的に生成することで、主旋律に対して１つの副旋律（付加音）を付与するデュエット、あるいは主旋律に対して２つの副旋律（付加音）を付与するトリオなどのハーモニー演奏を簡略に行うことが可能となっている。
【０００３】
【発明が解決しようとする課題】
ところで、従来の副旋律生成装置は、選択された主旋律を構成する個々のメロディ音と主旋律に対応するコードとに基づいて付加音を自動的に生成し、副旋律として主旋律に対し付与していた。そのため、副旋律を付与するためには主旋律に加えてコードを与える必要があり、コードが与えられていない場合には主旋律に対して副旋律を付与することができない、という問題点があった。この問題点を解決する方法の１つとして、随時に主旋律からコードを検出し、該コードに基づいて副旋律を自動的に生成する方法がある。しかし、この方法を用いると、副旋律を自動生成するためのプログラムが複雑となる、該プログラムを記憶するために大きな記憶容量が必要となる、といった不都合が新たに生じることとなり問題である。
また、従来では、副旋律を自動生成する際に、主旋律に対応したコードに整合するようにメロディ音に対して付加音を付与するだけであったことから、付与された付加音の音の流れが良くない場合が多く、副旋律（付加音）だけを聴くと音楽的に不自然で違和感がある、という問題点があった。
【０００４】
本発明は上述の点に鑑みてなされたもので、コードを必要とせずに主旋律に応じた副旋律（付加音）を自動的に生成する副旋律生成装置及び方法並びに記憶媒体を提供しようとするものである。
また、音のつながりが自然な音楽的に完成度の高い副旋律（付加音）を生成する副旋律生成装置及び方法並びに記憶媒体を提供しようとするものである。
【０００５】
【課題を解決するための手段】
本発明に係る副旋律生成装置は、所定の主旋律を構成する複数のメロディ音の情報を供給する供給手段と、前記供給手段によって供給された情報に基づく各メロディ音を、強拍音、強拍近くの音、長音の少なくともいずれか１つを基準にして、特定音と該特定音以外の音とに分類する分類手段と、前記供給された情報に基づき前記主旋律の調を検出する手段と、前記主旋律に付加されるべき副旋律を構成する付加音の情報を生成するものであって、前記分類された特定音に対しては所定の第１のルールに従って付加音を決定し、前記分類された特定音以外の音に対しては前記第１のルールとは異なる第２のルールに従って付加音を決定する生成手段とを具え、前記第１のルールは、前記検出された調において前記特定音に対して所定の複数の音程度数の関係にある音のいずれかから付加音を決定するものであり、前記第２のルールは、生成済みの直前の付加音に対して順次進行、同音進行又は跳躍進行のいずれかの関係にある当該調の音階音を付加音として決定するものであることを特徴とする。
【０００６】
主旋律は複数のメロディ音から構成され、こうした主旋律を構成する複数のメロディ音に基づいて付加音を順次に生成していくことで、主旋律に応じた副旋律を付与する。供給手段は、所定の主旋律を構成する複数のメロディ音の情報を供給する。分類手段は、前記供給手段によって供給された情報に基づく各メロディ音を、強拍音、強拍近くの音、長音の少なくともいずれか１つを基準にして、特定音と該特定音以外の音とに分類する。生成手段は、前記主旋律に付加されるべき副旋律を構成する付加音の情報を生成するものである。この生成手段は、分類された特定音に対しては所定の第１のルールに従って付加音を決定する。他方、分類された特定音以外の音に対しては前記第１のルールとは異なる第２のルールに従って付加音を決定する。すなわち、生成手段は個々のメロディ音が特定音であるか否かに応じて付加音の付加の仕方を異ならせている。付加音を付加する対象のメロディ音が特定音である場合には、第１のルールに従って、検出された調において該特定音に対して所定の複数の音程度数の関係にある音のいずれかから付加音を決定することで、該特定音と所定の音程を持つように付加音を決定することが行なわれ、特定音との音の響きを重視した付加音を付加することができる。他方、付加音を付加する対象のメロディ音が特定音以外の音である場合には、第２のルールに従って、生成済みの直前の付加音に対して順次進行、同音進行又は跳躍進行のいずれかの関係にある当該調の音階音を付加音として決定することで、生成される副旋律の音のつながりを重視した付加音を付加することができる。こうすることで、コードが与えられていなくても主旋律を構成する個々のメロディ音から付加音を生成することができる。また、音楽的に自然な副旋律を付与することができる。
【０００７】
本発明の好ましい実施例として、前記生成手段は、曲頭と曲最後と段落音のメロディ音の少なくとも一方に対し、検出した主旋律の調の主音と同じ音程を持つ付加音を付加する。複数の音程からいずれかの音程を選択する手段を具えてなり、前記生成手段は、選択された音程に従う付加音を特定音あるいは特定音以外の音に付加する。前記生成手段は、特定音あるいは特定音以外の音に対して付加した付加音に基づいて禁則音の有無を判定し、該判定に従って新たに付加音を付加する。前記生成手段は、所定長以上の音長を持つメロディ音又は所定長以上の無音なメロディ区間の有無を判定し、該判定に従ってピックアップを形成する付加音を付加する。以上のようにすることで、主旋律に応じて音楽的に自然な音のつながりを持つ副旋律を生成することができるようになる。
【０００８】
本発明は、装置の発明として構成し、実施することができるのみならず、方法の発明として構成し実施することができる。また、本発明は、コンピュータまたはＤＳＰ等のプロセッサのプログラムの形態で実施することができるし、そのようなプログラムを記憶した記録媒体の形態で実施することもできる。
【０００９】
【発明の実施の形態】
以下、この発明の実施の形態を添付図面に従って詳細に説明する。
【００１０】
図１は、この発明に係る副旋律生成装置の全体構成の一実施例を示したハード構成ブロック図である。
本実施例に示す副旋律生成装置は、マイクロプロセッサユニット（ＣＰＵ）１、リードオンリメモリ（ＲＯＭ）２、ランダムアクセスメモリ（ＲＡＭ）３からなるマイクロコンピュータによって制御されるようになっている。ＣＰＵ１は、この副旋律生成装置全体の動作を制御するものである。このＣＰＵ１に対して、データ及びアドレスバス１Ｄを介してリードオンリメモリ（ＲＯＭ）２、ランダムアクセスメモリ（ＲＡＭ）３、検出回路４、表示回路５、音源回路６、効果回路７、外部記憶装置９、ＭＩＤＩインタフェース１０、通信インタフェース１１がそれぞれ接続されている。更に、ＣＰＵ１には、タイマ割込み処理（インタラプト処理）における割込み時間や各種時間を計時するタイマ１Ａが接続されている。すなわち、タイマ１Ａは時間間隔を計数したり、あるいは楽曲（主旋律や副旋律を含んで構成される楽曲であるのは勿論のこと、さらに伴奏などを含んで構成される楽曲であってもよい）を自動演奏する際の演奏テンポを設定したりするためのテンポクロックパルスを発生する。このテンポクロックパルスの周波数は、各種スイッチ等からなるパネル操作子４Ａによって調整される。このようなタイマ１ＡからのテンポクロックパルスはＣＰＵ１に対して処理タイミング命令として与えられたり、あるいはＣＰＵ１に対してインタラプト命令として与えられる。ＣＰＵ１は、これらの命令に従って各種処理を実行する。各種処理には、例えば画面表示に関する処理や楽曲の自動演奏に関する処理等がある。
【００１１】
ＲＯＭ２は、ＣＰＵ１により実行あるいは参照される各種プログラムや各種データ（例えば、主旋律メロディデータや副旋律メロディデータ等の演奏データ）などを格納するものである。ＲＡＭ３は、各種楽音情報や楽曲を自動演奏する際に用いられる自動演奏情報、ＣＰＵ１が所定のプログラムを実行する際に発生する各種データなどを一時的に記憶するワーキングメモリとして、あるいは現在実行中のプログラムやそれに関連するデータを記憶するメモリ等として使用される。ＲＡＭ３の所定のアドレス領域がそれぞれの機能に割り当てられ、レジスタやフラグ、テーブル、メモリなどとして利用される。
パネル操作子４Ａは各種のパラメータを指定したり、あるいは楽曲を自動演奏する際の各種音楽条件パラメータなどを入力するために用いる各種のスイッチ等を含んで構成される操作子である。例えば、数値データ入力用のテンキーや文字データ入力用のキーボード、あるいはパネルスイッチ等である。勿論、この他にも音高、音色、効果等を選択・設定・制御するための各種操作子を含んでいてよい。検出回路４は、パネル操作子４Ａの各操作子の操作状態を検出し、その操作状態に応じたスイッチ情報をデータ及びアドレスバス１Ｄを介してＣＰＵ１に出力する。表示回路５は各種音楽条件パラメータの内容等の各種情報を、例えば液晶表示パネル（ＬＣＤ）やＣＲＴ等から構成されるディスプレイ５Ａに表示するのは勿論のこと、自動演奏中の楽曲に関する各種情報あるいはＣＰＵ１の制御状態などをディスプレイ５Ａに表示する。
【００１２】
音源回路６は、複数のチャンネルで楽音信号の同時発生が可能であり、データ及びアドレスバス１Ｄを経由して与えられた楽音情報（例えば、演奏データや音楽条件パラメータなど）を入力し、この楽音情報に基づいて楽音信号を発生する。音源回路６から発生された楽音信号は、サウンドシステム８を介して発音される。また、前記音源回路６から発生された楽音信号に対して、効果回路７は各種効果を与える。前記音源回路６における楽音信号発生方式は、いかなるものを用いてもよい。例えば、発生すべき楽音の音高に対応して変化するアドレスデータに応じて波形メモリに記憶した楽音波形サンプル値データを順次読み出す波形メモリ読み出し方式、又は上記アドレスデータを位相角パラメータデータとして所定の周波数変調演算を実行して楽音波形サンプル値データを求めるＦＭ方式、あるいは上記アドレスデータを位相角パラメータデータとして所定の振幅変調演算を実行して楽音波形サンプル値データを求めるＡＭ方式等の公知の方式を適宜採用してもよい。すなわち、音源回路６の方式は、波形メモリ方式、ＦＭ方式、物理モデル方式、高調波合成方式、フォルマント合成方式、ＶＣＯ＋ＶＣＦ＋ＶＣＡのアナログシンセサイザ方式、アナログシミュレーション方式等、どのような方式であってもよい。また、専用のハードウェアを用いて音源回路６を構成するものに限らず、ＤＳＰとマイクロプログラム、あるいはＣＰＵとソフトウェアを用いて音源回路６を構成するようにしてもよい。さらに、１つの回路を時分割で使用することによって複数の発音チャンネルを形成するようなものでもよいし、１つの発音チャンネルが１つの回路で形成されるようなものであってもよい。
【００１３】
外部記憶装置９は、楽曲の自動演奏時に用いる音楽条件パラメータや演奏データ（主旋律メロディデータや副旋律メロディデータなど）、ＣＰＵ１が実行する各種プログラムの制御に関するデータ等を記憶するものである。前記ＲＯＭ２に制御プログラムが記憶されていない場合、この外部記憶装置９（例えばハードディスク）に制御プログラムを記憶させておき、それを前記ＲＡＭ３に読み込むことにより、ＲＯＭ２に制御プログラムを記憶している場合と同様の動作をＣＰＵ１にさせることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。なお、外部記憶装置９はハードディスク（ＨＤ）に限られず、フロッピィーディスク（ＦＤ）、コンパクトディスク（ＣＤ−ＲＯＭ・ＣＤ−ＲＡＭ）、光磁気ディスク（ＭＯ）、あるいはＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋの略）、半導体メモリカード等の着脱自在な様々な形態の外部記録媒体を利用する記憶装置であってもよい。
【００１４】
ＭＩＤＩインタフェース（Ｉ／Ｆ）１０は、他のＭＩＤＩ機器１０Ａ等からＭＩＤＩ規格の楽音情報（ＭＩＤＩデータ）を当該副旋律生成装置へ入力したり、あるいは当該副旋律生成装置からＭＩＤＩ規格の楽音情報（ＭＩＤＩデータ）を他のＭＩＤＩ機器１０Ａ等へ出力するためのインタフェースである。他のＭＩＤＩ機器１０Ａはユーザによる操作に応じてＭＩＤＩデータを発生する機器であればよく、鍵盤型、ギター型、管楽器型、打楽器型、ミブリ型等どのようなタイプの操作子を具えた（若しくは、操作形態からなる）機器であってもよい。通信インタフェース１１は、例えばＬＡＮやインターネット、電話回線等の通信ネットワーク１１Ｂに接続されており、該通信ネットワーク１１Ｂを介して、サーバコンピュータ１１Ａと接続され、当該サーバコンピュータ１１Ａから制御プログラムや各種データを当該副旋律生成装置側に取り込むためのインタフェースである。すなわち、ＲＯＭ２や外部記憶装置９（ハードディスク）等に制御プログラムや各種データが記憶されていない場合に、サーバコンピュータ１１Ａから制御プログラムや各種データをダウンロードするために用いられる。クライアントとなる副旋律生成装置は、通信インターフェース１０及び通信ネットワーク１１Ｂを介してサーバコンピュータ１１Ａへと制御プログラムや各種データのダウンロードを要求するコマンドを送信する。サーバコンピュータ１１Ａは、このコマンドを受け、要求された制御プログラムやデータを、通信ネットワーク１１Ｂを介して本装置へと配信し、本装置が通信インタフェース１１を介して、これら制御プログラムや各種データを受信して外部記憶装置９（ハードディスク）等に蓄積することにより、ダウンロードが完了する。
【００１５】
なお、ＭＩＤＩインタフェース１０は専用のＭＩＤＩインタフェースを用いるものに限らず、ＲＳ２３２−Ｃ、ＵＳＢ（ユニバーサル・シリアル・バス）、ＩＥＥＥ１３９４（アイトリプルイー１３９４）等の汎用のインタフェースを用いてＭＩＤＩインタフェース１０を構成するようにしてもよい。この場合、ＭＩＤＩイベントデータ以外のデータをも同時に送受信するようにしてもよい。ＭＩＤＩインタフェース１０として上記したような汎用のインタフェースを用いる場合には、他のＭＩＤＩ機器１０ＡはＭＩＤＩイベントデータ以外のデータも送受信できるようにしてよい。勿論、音楽情報に関するデータフォーマットはＭＩＤＩ形式のデータに限らず、他の形式であってもよく、その場合はＭＩＤＩインタフェース１０と他のＭＩＤＩ機器１０Ａはそれにあった構成とする。
【００１６】
なお、上述した副旋律生成装置は専用の装置に限られず、例えばパソコンなどの汎用装置あるいはマルチメディア機器、携帯電話等の通信端末であってもよく、本発明に従う所定のソフトウエア又はハードウエアを用いることによって副旋律を自動生成することができるように構成した装置であればどのようなものであってもよい。また、携帯通信端末の場合、外部記憶装置９が無くてもよく、フラッシュメモリやバッテリバックアップされたＲＡＭ等、データの保持が可能な書き換え可能メモリを有していればよい。さらに、ＭＩＤＩインタフェース１０も無くてもよい。
【００１７】
本発明に係る副旋律生成装置は、入力された主旋律（主旋律メロディデータ）を基にして副旋律（副旋律メロディデータ）を生成する。そこで、この主旋律（主旋律メロディデータ）に基づいて副旋律（副旋律メロディデータ）を生成する処理について、図２を用いて説明する。図２は、主旋律に基づいて副旋律を生成する処理の一実施例を示したフローチャートである。
以下、図２のフローチャートに従って、複旋律生成処理について説明する。
【００１８】
ステップＳ１では、主旋律メロディデータを供給する。該主旋律メロディデータは、所定のデータベースから既存の曲をロードして主旋律メロディデータを取得するようにしてもよいし、通信ネットワーク１１Ｂ上のＷＥＢサーバＷＳから既存の主旋律メロディデータをダウンロードして取得したり、電子メールに添付された主旋律メロディデータを受信して取得するようにしてもよい。あるいは、所望のメロディをユーザがパネル操作子４Ａ等を用いて適宜入力することにより生成した主旋律メロディデータを取得するようにしてもよいし、自動作曲を行うことにより生成した主旋律メロディデータを取得するようにしてもよい。
ステップＳ２では、ステップＳ１で取得された主旋律メロディデータに対して所定の処理を行い、該主旋律メロディデータの「調（キー）」を検出する。この「調」を検出する処理方法は既知であることからここでの詳しい説明を省略するが、一例を挙げると、主旋律を構成する個々の構成音と各「調」の音階音とを順次に比較し、各音の出現頻度が最も多い音階音を具えた「調」を当該主旋律における「調」として決定する方法などが従来から知られている。後続する処理で主旋律を構成する個々の構成音に対して付加する付加音（すなわち、副旋律を構成する個々の構成音）のピッチは、すべてこのステップＳ２の処理で検出した該主旋律の「調」の音階音を基本とする。ただし、ある区間（例えば、２拍区間や１小節区間など）において、主旋律に「＃」（シャープ）や「♭」（フラット）などの所定の音楽記号が付された音符で表現することが可能な音が存在する場合に、該区間の主旋律の各音に対して該音符で表現可能な音と同じ音符の付加音を生成するときは、主旋律の該音符に付された「＃」や「♭」を生成した付加音に同じように付けるものとする。例えば、Ｃメジャ調において、該区間内の主旋律に「Ｆ＃」があり、同区間内の主旋律「Ａ」に対して３度下の付加音をつける場合、「Ｆ」ではなく「Ｆ＃」をつける。
ステップＳ３では、主旋律メロディデータを小節毎に区切る。こうすると、後続のステップＳ４において、各小節毎に重要音のみを検出しやすくなる。ステップＳ４では、小節毎に区切られた主旋律メロディデータを基に、各小節内にある主旋律を構成する個々の構成音の中から重要音を検出する。例えば、各小節内において強拍の位置にある音、強拍の位置に音がない場合には該強拍位置の近くにある音、あるいは該小節内にある音の中で音長が所定の音長（例えば２分音符）よりも長い音のうちの少なくとも１つを重要音として検出する。これら以外の音を重要音としてもよい。例えば、あるフレーズ中の最高音、アクセントのある音、調が変わった時の最初の音などでもよい。これらの場合、重要音検出の際に小節毎に区切る必要がなくなる。
なお、上記ステップＳ２〜ステップＳ４までの各処理で検出する主旋律の「調」、「小節区切り」、「重要音」などのデータを、主旋律メロディデータ中に予め与えておいてもよい。こうした場合には、上記ステップＳ２〜ステップＳ４までの各処理を省略して当該副旋律の生成処理を簡略化することができることから、付加音の生成をより短い処理時間で行うことができるようになるとともに、処理プログラムの記憶容量を減らすことができる。
【００１９】
ステップＳ５では、ステップＳ４で算出した重要音に３度下あるいは６度下のいずれかの音を付加音として割り当てる。付加音の割り当てはランダムであってもよいし、あるいは所定のルールに従うようにしてもよい。例えば、重要音のピッチ（音域）に従って、３度下あるいは６度下のいずれの音を付加音として割り当てるかを決定するようにしてもよい。こうして、まず各小節毎の重要音に対して付加音を割り当てる。全ての重要音に対して付加音を付加すると、次に曲の先頭（曲頭）や曲の最後の音に対して特別の音を付与する（ステップＳ６）。曲頭や曲の最後に付加音として、例えば、主旋律の「調」の主音（キー・ノート）を付加すると、曲に段落感、すなわち、曲にまとまりを生じさせることができる。また、曲頭や曲の最後だけでなく、曲途中の段落感が出ている音（例えば、全音符等の長い音や、フレーズの区切りの先頭や最後の音など：以下、段落音）についても同様に特別の音を付与してもよい。ただし、ステップＳ６の処理は必ず実行しなければならないわけではなく、当該処理を省略してもよい。
このようにして、まず主旋律の特定の音（重要音、曲頭及び曲の最後の音）のみに対して付加音を決定する。
【００２０】
次に、主旋律における重要音と重要音との間にある重要音以外の個々の音に対して付加音を生成する（ステップＳ７）。例えば、重要音間の主旋律を構成する個々の構成音１つに対して、以下のような所定の音楽ルールに従って１つの付加音を順次に生成する。
音楽ルールの一例として、以下のルールを設定し、ルール１から順に適用していく。
音楽ルール１：付加音は主旋律の３度又は６度下、且つ順次進行（ある音が音階上で隣りあっている上又は下の音へ進行すること）で連続させて次の重要音へと進行するように生成する。
音楽ルール２：順次進行で連続させることが不可能である場合、主旋律の３度又は４度又は６度下、且つ同音進行で連続させて次の重要音へと進行するように生成する。
音楽ルール３：同音進行で連続させることも不可能である場合、付加音が跳躍するように主旋律の３度又は６度下に生成してもよい。ただし、跳躍進行後は、主旋律に対して３度下あるいは６度下のいずれかの音へ順次進行するように付加音を生成する。なお、跳躍させた後に順次進行させるものに限らず、順次進行させた後に跳躍させるようにしてもよい。
こうした音楽ルールを適宜に適用して順次に主旋律の個々の構成音に対し付加音を生成することで、音のつながりが音楽的に自然な副旋律を生成することができる。
【００２１】
ステップＳ８では、生成された付加音において、音楽的に禁止又は好ましくないとされる禁則音が存在するか存在しないかのチェックを行い、禁則音が存在する場合には副旋律を生成しなおす（つまり、主旋律を構成する全ての構成音に対して付した付加音を生成しなおす）。さらに、付加音を生成する対象の主旋律の構成音が所定の音長（例えば２分音符）以上の音あるいは所定の休符長（例えば２分休符）以上の休符である場合に、アウフタクトなどのピックアップ（メロディ・ラインの冒頭や、フレーズの切れ目などに使われる装飾的なパッセージ）を形成するように付加音を１乃至複数個生成する（ステップＳ９）。例えば、主旋律の構成音として２分音符以上の音符や休符があった場合には、次の小節の頭に順次進行で音がつながるように１乃至複数の付加音を主旋律の当該音に対して付する。なお、上記ステップＳ８及びステップＳ９の各処理は省略してもよい。このように、主旋律を構成する個々の構成音に対して順次に付加音を生成し付することで、全体として主旋律に対する副旋律を生成することができるようになっている。
【００２２】
なお、上述の例では、主旋律を構成する個々の構成音に対し、１対１に付加音を付することで副旋律を生成するようにしたがこれに限られない。例えば、主旋律の複数の音に対し、１つの付加音を付するようにしてもよい。あるいは、主旋律の１つの音に対し、複数の付加音を付してもよい。例えば、４分音符の主旋律に対し８分音符２つの副旋律を付したり、８分音符２つの主旋律に対し４分音符１つの副旋律を付してもよい。また、同音進行の付加音については、タイで結んで音長の長い１音符に変更してもよい。また、主旋律に対して複数パートの副旋律を付加するようにしてもよい。例えば、生成する付加パートが主メロディを含めて３声の場合には、図２に示したフローチャートにおいて３度下又は６度下の音を割り当てる処理において（ステップＳ５参照）、そのどちらかの音のみを付加音として割り当てるのではなく、同時に複数の音を付加音として割り当てる。例えば、重要音に対する付加音として３度及び５度、４度及び６度、４度及び８度などの複数音を割り当てる。ただし、こうした場合に、３度下及び６度下の複数音を付加音として割り当てないほうが好ましい。３度下及び６度下の音をそれぞれ割り当てると、下の２声（３度下の音と６度下の音）の間が４度となって音の響が非常に悪くなることから、付加音として適切であるとは言えずあまりよくない。また、生成する付加パートが主メロディを含めて４声の場合には、更に１声加える。このように付加音を複数生成する場合において、重要音間の個々の音に対して付する複数の付加音は、まず複数生成した付加音の最高音について同音又は順次進行するように優先的に決定し、次に下位の付加音について順次に同様にして決定していく。この場合、付加する音は３度下、６度下に限らない。
【００２３】
なお、付加音を生成する際の音楽ルールは例示したルールに限らず、例示した音楽ルール以外のルールを更に適用してもよいし、適用する音楽ルールを変えて付加音を生成するようにしてもよい。例えば、付加音を同音進行又は順次進行するように生成する場合に、主旋律の音の３度下又は６度下のいずれかの音（同音の場合はさらに４度下も可）をとるように構成したが、４度下又は５度下の音をとるなどのようにしてもよいし、あえてテンションとして２度下又は４度下又は６度下の音をとるようにしてもよい。あるいは、これらの取り得る付加音をコントロールするパラメータを設け、該パラメータに従っていずれかの音を選択するようにしてもよい。例えば、小節等の所定の区間別にコントロールパラメータを設定して、該パラメータに基づいて付加音を所定の区間毎にコントロールするようにすると、１曲としての変化のある起伏に富んだ副旋律を生成することができる。また、付加音の条件を、ジャンル（例えば「ジャズ」を指定した場合は付加音として７度、９度等のテンション音まで含める）や、感覚的用語（例えば「素朴」を指定した場合は付加音として３度のみとする）などで指定できるようにしてもよい。
また、上述の副旋律生成処理では音の流れを滑らかにする点に重点をおいて付加音を生成するようにしたが、主旋律と副旋律の音色を同じ音色あるいは類似音色にすると副旋律の時間的な音の流れが聞き取りにくくなるので、このような場合には主旋律と副旋律との音の響きを重点において付加音を生成するようにしてもよい。例えば、付加音の音程を３度と６度のみに限定する。逆に、主旋律と副旋律の音色が極端に異なる場合は副旋律の時間的な音の流れが聞き取りやすくなるので、このような場合には副旋律の音の流れにより重点をおいて付加音を生成するようにしてもよい。例えば、取り得る付加音の音程を１、３、４、５、６、８度のように、広い範囲の中から選択できるようにしてもよい。また、響き優先／流れ優先を主旋律と副旋律とで音色が同じか否かに応じて自動選択してもよいし、ユーザが何れかを選択できるようにしてもよい。あるいは、音楽ジャンルによって選択してもよく、例えば、クラシック的な曲では響きよりも流れを優先させるようにし、ジャズ的な曲では流れよりも響きを優先させるようにしてもよい。
付加音の決定の際に付加音をランダム決定するだけでなく、複数の付加音候補をディスプレイ５Ａ等に表示したり発音させたりしてユーザに提示し、ユーザがそれらの候補の中からいずれかの付加音を選択操作により決定できるようにしてもよい。
【００２４】
ここで、上述した副旋律生成処理について具体例を用いて簡単に説明する。図３は、副旋律生成処理による主旋律に対する付加音の付与方法を説明するための概念図であり、主旋律を構成する個々の構成音に対して副旋律を付与する様子を該処理の進行別に図示したものである。図３（Ａ）は、該処理を実行することによって副旋律が付与される対象の主旋律のみを楽譜上に示した図である。図３（Ｂ）は、主旋律と共に、主旋律を構成する個々の構成音のうち重要音と曲頭の音のみに付与した副旋律を楽譜上に示した図である。図３（Ｃ）は、主旋律と共に、主旋律を構成する全ての構成音に付与した副旋律を楽譜上に示した図である。以下、図３を用いて、図２に従う副旋律の生成処理について具体的に説明する。ただし、ここでは、説明を簡略化するために、主旋律を曲の先頭から２小節分だだけ示し、該区間における主旋律の個々の音に対して副旋律を付与する場合について説明する。また、図３（Ａ）に示すような主旋律（メロディデータ）が既に供給済みであり（図２のステップＳ１参照）、また該主旋律の「調」としてＦメジャー調（すなわち、調の主音は「Ｆ」）が検出され（図２のステップＳ２参照）、更に小節毎に重要音が検出された（図２のステップＳ３及びステップＳ４参照）状態から副旋律生成処理の説明を始めるものとする（すなわち、図２のステップＳ５以降の処理について説明する）。この例では、重要音として３つの音（音４、音６、音９）が検出されている。なお、図３（Ａ）に示す楽譜の下段に付された数字は、主旋律を構成する個々の構成音を説明上区別するために、主旋律を構成する個々の構成音に対応するよう便宜的に付した番号である。
【００２５】
上述した副旋律生成処理では、まず検出した重要音に対して３度下あるいは６度下の音をランダムに付加音として割り当てる（図２のステップＳ５参照）。図４（Ｂ）に示すように、重要音４及び重要音６に対して３度下、重要音９に対して６度下の音が各々付加されている。さらに、曲頭の音１に対して特別な音、すなわち、当該主旋律の調（Ｆメジャー調）の主音（「Ｆ」）を付加音として付与している（図２のステップＳ６参照）。こうして、主旋律の特定音に対する付加音が個々の特定音毎に決定される。
次に、特定メロディ音以外の主旋律の音に対して付加音を付与する。すなわち、曲頭の音１、重要音４、重要音６、重要音９以外の音（音２、音３、音５、音７、音８）に対して付加音を生成して付与する。図３（Ｃ）では、各音に対して１対１に付加音を付与した例を示した。まず、曲頭の音１と重要音４との間の音２に対して、順次進行となる音を考えると、主旋律の２度下又は４度下となり、音楽ルール１は適用できない。同音進行となる音は３度下となり、音楽ルール２を適用することができる。よって、ここでは同音進行となる３度下の音を採用する。次に、音３に対しては、順次進行となる音は４度下又は６度下となり、６度下の音が採用できそうだが、重要音４の付加音に対して跳躍してしまうので、音楽ルール１は適用できない。同音進行も同様に重要音４の付加音に対して跳躍してしまうので、音楽ルール２も採用できない。そこで、音楽ルール３を適用し跳躍を許可する。この場合、主旋律の３度下を取ると重要音４の付加音に対して順次進行となるが、６度下を取ると跳躍になってしまう。よって３度下を採用する。このようにして、音１から重要音４に対する付加音は、同音進行、跳躍進行、順次進行となるように決定される。同様に音楽ルール１から３を適用することで、音５、音７、音８に対する付加音が、それぞれ同音進行の３度下、順次進行の３度下、同音進行の４度下に決定される。こうして、主旋律を構成する個々の構成音のうち曲頭及び重要音以外の各音に対する付加音が決定されることによって、先に決定した曲頭及び重要音に対する付加音とあわせて主旋律全体に対する副旋律が生成されることになる。このようにして生成された副旋律は主旋律と共にリアルタイムで発音するようにしてもよいし、また、主旋律の演奏データと副旋律の演奏データとを組合せて、あるいはそれぞれの演奏データを独立した状態で外部記憶装置９などに記憶するようにしてもよい。
【００２６】
なお、自動演奏を行う場合、生成された副旋律を自動演奏する際に用いる音色は、主旋律を自動演奏する際に用いる音色と同じ音色であってもよいし、異なる音色であってもよい。また、副旋律を自動演奏する際の音量（ベロシティ）は、主旋律を自動演奏する際に用いる音量と同じ音量でもよいし、異なる音量であってもよい。できれば主旋律を自動演奏する際に用いる音量よりも低い音量の方が好ましい。また、主旋律を自動演奏する際に用いる音量に基づき、副旋律を自動演奏する際に用いる音量を決定するようにしてもよい（例えば、主旋律を自動演奏する際に用いる音量の８０％を副旋律を自動演奏する際に用いる音量とするなど）。また、ゲートタイムも同様に主副で同じでもよいし、異なる（例えば副を短く）ようにしてもよい。
【００２７】
パソコンなどの汎用装置（以下、このような構成の装置をクライアントＰＣと呼ぶ）や携帯通信端末を用いて副旋律生成装置を構成した場合、所定のサーバ側で生成した副旋律を通信ネットワーク１１Ｂ等を介してクライアントＰＣや携帯通信端末側へと配信し、該クライアントＰＣや携帯通信端末側では取り込んだ副旋律を用いて自動演奏を行うシステム形態であってもよい。すなわち、サーバ側に副旋律を生成させることによって、該クライアントＰＣや携帯通信端末側では副旋律を生成することなく自動演奏を行うことができる形態であってもよい。そこで、このようなシステムについて図４を用いて簡単に説明する。図４は、サーバ側で生成した副旋律を用いて自動演奏を行うシステムの概略を示すシステムブロック図である。
【００２８】
該システムは、ＷＥＢサーバＷＳと、中継サーバＴＳと、通信ネットワーク１１Ｂと、クライアントＰＣと、携帯通信端末ＭＴとにより構成される。該システムを構成する各々の装置（ＷＥＢサーバＷＳ、中継サーバＴＳ、クライアントＰＣ、携帯通信端末ＭＴ）は、ＣＰＵ１、ＲＯＭ２、ＲＡＭ３、通信インタフェース１１等（図１参照）を含む独立したコンピュータにより構成されてなり、これらの各装置は通信ネットワーク１１Ｂや専用線等を介した有線通信、あるいは中継サーバＴＳ等を介した無線通信により各種データ（例えば、主旋律メロディデータや副旋律メロディデータ等の演奏データ）を送出したりあるいは受信したりすることができるようになっている。ただし、ＷＥＢサーバＷＳ、中継サーバＴＳの各装置には図１に示すような音源回路６、効果回路７、サウンドシステム８が無くてもよいし、携帯通信端末ＭＴには図１に示すような外部記憶装置９が無くてもよい。
なお、上記システムはＷＥＢサーバＷＳ、中継サーバＴＳ、通信ネットワーク１１Ｂ、クライアントＰＣ、携帯通信端末ＭＴ以外のハードウェアを有する場合もあるが、ここでは必要最小限の資源を用いた場合について説明する。
【００２９】
本実施例において、ＷＥＢサーバＷＳはサーバコンピュータであって、副旋律を生成するソフトウエア・プログラムをインストールしたものである。該ＷＥＢサーバＷＳとクライアントＰＣとはＬＡＮ（ローカルエリアネットワーク）やインターネット、電話回線などの種々の通信ネットワーク１１Ｂを介して接続されていることから、ユーザはクライアントＰＣを通信ネットワーク１１Ｂ上に接続してアクセス（例えば、ＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）の指定など）することで、ＷＥＢサーバＷＳとの間で各種データの送受信を行うことができる。すなわち、クライアントＰＣとＷＥＢサーバＷＳとの間で双方向通信を行うことができる。また、クライアントＰＣは、ＷＥＢサーバＷＳから配信された各種データを受信し、各種データの内容をディスプレイ５Ａに表示すると共に、配信された副旋律メロディデータを主旋律メロディデータとともに再生して自動演奏を行う等の各種処理を行うことができる。勿論、クライアントＰＣはパーソナルコンピュータの形態に限らない。また、この実施例ではクライアントＰＣやＷＥＢサーバＷＳを各々１台のみ記載したが、クライアントＰＣやＷＥＢサーバＷＳが通信ネットワーク１１Ｂに複数台接続されていてもよいことは言うまでもない。携帯通信端末ＭＴは、携帯電話やＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄａｔａ（Ｄｉｇｉｔａｌ）  Ａｓｓｉｓｔａｎｔｓ）等の無線通信が可能な小型端末であり、本来の通信機能のほかに着信音の再生、アラーム音の再生、通話時のＢＧＭの再生等の自動演奏機能も併せ持つものである。したがって、該携帯通信端末ＭＴも上記クライアントＰＣと同様にＷＥＢサーバＷＳ側で生成された副旋律メロディデータと主旋律メロディデータの再生をして自動演奏を行うことができる。ただし、携帯通信端末ＭＴをＷＥＢサーバＷＳに接続して双方向通信を行う場合には、中継サーバＴＳを介する。すなわち、中継サーバＴＳが携帯通信端末ＭＴとＷＥＢサーバＷＳとの間で信号の送受信を中継することにより、携帯通信端末ＭＴはＷＥＢサーバＷＳとの間で各種データの送受信を行うことができる。
【００３０】
該システムにおいて、クライアントＰＣ又は携帯通信端末ＭＴで主旋律を手入力又は自動作曲等により作成（又は既存曲の主旋律を外部記憶装置９等からロードしたり、電子メールに添付された主旋律を受信してもよい）し、該主旋律をＷＥＢサーバＷＳにアップロードする。ＷＥＢサーバＷＳでは、クライアントＰＣ又は携帯通信端末ＭＴからアップロードされた主旋律に基づいて副旋律を生成し、クライアントＰＣ又は携帯通信端末ＭＴへ副旋律を配信する。この際、ＷＥＢサーバＷＳ側で生成した副旋律生成に対して支払われるべき対価を課金処理するようにしてもよい。このようにして、クライアントＰＣ又は携帯通信端末ＭＴでは、作成（又はロード）した主旋律と受信した副旋律とを用いて自動演奏を行うことができる。こうすると、クライアントＰＣや携帯通信端末ＭＴ側に副旋律を生成するソフトウエア・プログラムをインストールしておく必要がないために、クライアントＰＣや携帯通信端末ＭＴ側の記憶メモリ等の容量を減らすことができる。したがって、クライアントＰＣや携帯通信端末ＭＴを小型化及び軽量化することができる、という利点がある。
【００３１】
なお、上述した副旋律生成装置を電子楽器に適用する場合、電子楽器は鍵盤楽器の形態に限らず、弦楽器や管楽器、あるいは打楽器等どのようなタイプの形態でもよい。また、音源装置や自動演奏装置等を１つの電子楽器本体に内臓したものに限らず、それぞれが別々に構成され、ＭＩＤＩインタフェースや各種ネットワーク等の通信手段を用いて各装置を接続するように構成されたものにも同様に適用できることはいうまでもない。また、パソコンとアプリケーションソフトウェアという構成であってもよく、この場合処理プログラムを磁気ディスク、光ディスクあるいは半導体メモリ等の記憶メディアから供給したり、ネットワークを介して供給するものであってもよい。さらに、カラオケ装置や自動演奏ピアノ、あるいはゲーム装置、携帯電話等の携帯通信端末に適用してもよい。携帯通信端末の場合、着信音やアラーム音、ＢＧＭとして再生するだけでなく、生成したあるいはサーバから配信された副旋律メロディデータを主旋律メロディデータとともにメールに添付して他の端末へと送信できるようにしてもよい。
【００３２】
また、生成される副旋律メロディデータや主旋律メロディデータ等の演奏データのフォーマットは、イベントの発生時刻を曲や小節内における絶対時間で表した『イベント＋絶対時間』形式のもの、イベントの発生時刻を１つ前のイベントからの時間で表した『イベント＋相対時間』形式のもの、音符の音高と符長あるいは休符と休符長で演奏データを表した『音高（休符）＋符長』形式のもの、演奏の最小分解能毎にメモリの領域を確保し、演奏イベントの発生する時刻に対応するメモリ領域にイベントを記憶した『ベタ方式』形式のものなど、どのような形式のものでもよい。
また、複数チャンネル分の演奏データが存在する場合は、複数のチャンネルのデータが混在した形式であってもよいし、各チャンネルのデータがトラック毎に別れているような形式であってもよい。
【００３３】
【発明の効果】
本発明によれば、主旋律を構成する個々の構成音に対する付加音をコード進行が与えられなくても生成できるようにしたことから、簡単な処理で主旋律に対する副旋律を生成することができる、という効果が得られる。
また、主旋律の個々の音のうち特定音に対しては所定の音程を持った音、それ以外の主旋律の音に対しては音のつながりのよい音程を持った音を付与するようにしたことから、全体にわたって音楽的に自然な完成度の高い副旋律を生成することができる、という効果が得られる。
【図面の簡単な説明】
【図１】この発明に係る副旋律生成装置の全体構成の一実施例を示したハード構成ブロック図である。
【図２】主旋律に基づいて副旋律を生成する処理の一実施例を示したフローチャートである。
【図３】副旋律生成処理による主旋律に対する付加音の付与方法を説明するための概念図である。図３（Ａ）は、副旋律が付与される対象の主旋律のみを楽譜上に示した図である。図３（Ｂ）は、主旋律と主旋律を構成する個々の構成音のうち重要音と曲頭の音のみに付与した副旋律とを楽譜上に示した図である。図３（Ｃ）は、主旋律と主旋律を構成する全ての構成音に付与した副旋律とを楽譜上に示した図である。
【図４】サーバ側で生成した副旋律を用いて自動演奏を行うシステムの概略を示すシステムブロック図である
【符号の説明】
１…ＣＰＵ、１Ａ…タイマ、２…ＲＯＭ、３…ＲＡＭ、４…検出回路、４Ａ…パネル操作子、５…表示回路、５Ａ…ディスプレイ、６…音源回路、７…効果回路、８…サウンドシステム、９…外部記憶装置、１０…ＭＩＤＩインタフェース、１０Ａ…ＭＩＤＩ機器、１１…通信インタフェース、１１Ａ…サーバコンピュータ、１１Ｂ…通信ネットワーク、１Ｄ…データ及びアドレスバス、ＰＣ…クライアント、ＷＳ…ＷＥＢサーバ、ＴＳ…中継サーバ、ＭＴ…携帯通信端末
【図１】
0003630075.tif 000002
【図２】
0003630075.tif 000003
【図３】
0003630075.tif 000004
【図４】
0003630075.tif 000005