JP3724347B2 - 自動作曲装置及び方法並びに記憶媒体 - Google Patents
自動作曲装置及び方法並びに記憶媒体 Download PDFInfo
- Publication number
- JP3724347B2 JP3724347B2 JP2000217643A JP2000217643A JP3724347B2 JP 3724347 B2 JP3724347 B2 JP 3724347B2 JP 2000217643 A JP2000217643 A JP 2000217643A JP 2000217643 A JP2000217643 A JP 2000217643A JP 3724347 B2 JP3724347 B2 JP 3724347B2
- Authority
- JP
- Japan
- Prior art keywords
- section
- melody
- pitch information
- pitch
- sound
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【発明の属する技術分野】
この発明は、音楽に関する各種の条件に応じて自動的に楽曲を生成する自動作曲装置および方法並びに記憶媒体に関し、特に簡単な処理でモチーフメロディが具える音楽的特徴を曲全体に反映して作曲を行うことで、曲全体にわたり完成度の高い楽曲を生成する自動作曲装置及び方法並びに記憶媒体である。
【0002】
【従来の技術】
近年、パーソナルコンピュータの普及に伴い、コンピュータを用いて楽器を演奏したり、作曲したり、編曲したり、音色を合成したりするコンピュータミュージックを用いて、誰でも音楽を自由に楽しめるようになってきた。特に、コンピュータを用いた作曲の分野では、音楽的な専門知識の少ない初心者であっても簡単に作曲を行うことのできる自動作曲が出現している。このような自動作曲装置としては、既存曲の一部区間のメロディ(例えば、既存曲の冒頭から2小節分のメロディ)をモチーフ区間メロディとして入力する、あるいはユーザが直接短いメロディをモチーフ区間メロディとして入力することにより、入力されたモチーフ区間メロディを基にモチーフ区間以外のメロディを自動的に作成して、1曲全体区間にわたって作曲を行うものが従来から知られている。
【0003】
【発明が解決しようとする課題】
ところで、従来の自動作曲装置は、入力されたモチーフ区間メロディの音楽的特徴(例えば、ピッチ特徴やリズム特徴など)を分析的に検出し、この検出結果を基にモチーフ区間に後続する区間(すなわち、モチーフ区間以外)のメロディを生成していた。このように、従来ではモチーフ区間メロディの音楽的特徴を検出する必要があり、この音楽的特徴を検出する際に用いられる特徴検出アルゴリズムでは非常に複雑な処理を行わなければならないために、そのプログラミングに時間を要するとともに、プログラム容量も増大し、その結果として自動作曲装置の製造コストが高くなる、という問題点があった。
また、従来の自動作曲装置が生成する曲は、楽曲構成上のテーマを提示する1コーラス(ファーストコーラス)区間のメロディのみ、または1コーラス区間のメロディに簡単な伴奏のみのイントロやエンディングを付与するのみにとどまっていたことから、自動的に生成される曲は曲としての完成度が非常に低いものである、という問題点があった。
【0004】
本発明は上述の点に鑑みてなされたもので、従来技術とは異なる手法により、完成度の高い曲を容易に生成することができるようにした自動作曲装置及び方法並びに記憶媒体を提供しようとするものである。
【0005】
【課題を解決するための手段】
【0008】
本発明の請求項1に係る自動作曲装置は、曲の被模倣区間のメロディを供給する供給手段と、前記被模倣区間のメロディからピッチ情報を抽出する手段と、メロディ生成用データを供給する手段と、供給されたメロディ生成用データに基づき模倣区間における所定の音のピッチ及び打点を決定する手段と、前記抽出したピッチ情報を加工する加工手段であって、前記被模倣区間における所定の音のピッチ情報と前記模倣区間における前記所定の音のピッチ情報との差分を算出し、該算出した差分を前記被模倣区間における前記所定の音以外の音のピッチ情報に加算して前記模倣区間における前記所定の音以外の音のピッチ情報を算出するものと、前記加工したピッチ情報に基づいて、前記模倣区間のメロディを生成する生成手段とを具える。こうすると、簡単な処理で被模倣区間の楽音情報を模倣区間に反映してメロディを生成するので、曲の所定区間のメロディを模倣発展させる曲構造を持つ完成度の高い曲を生成することができる。
【0009】
また、本発明の請求項2に係る自動作曲装置は、曲の被模倣区間のメロディを供給する供給手段と、前記被模倣区間のメロディからピッチ情報を抽出する手段と、メロディ生成用データを供給する手段と、供給されたメロディ生成用データに基づき模倣区間における重要音のピッチ及び打点を決定する手段と、前記抽出したピッチ情報を加工する加工手段であって、前記被模倣区間における重要音のピッチ情報と前記模倣区間における前記重要音のピッチ情報との差分を算出し、該算出した差分を前記被模倣区間における非重要音のピッチ情報に加算して前記模倣区間における非重要音のピッチ情報を算出するものと、前記加工したピッチ情報に基づいて、前記模倣区間のメロディを生成する生成手段とを具える。
【0011】
本発明は、装置の発明として構成し、実施することができるのみならず、方法の発明として構成し実施することができる。また、本発明は、コンピュータまたはDSP等のプロセッサのプログラムの形態で実施することができるし、そのようなプログラムを記憶した記録媒体の形態で実施することもできる。
【0012】
【発明の実施の形態】
以下、この発明の実施の形態を添付図面に従って詳細に説明する。
【0013】
図1は、この発明に係る自動作曲装置の全体構成の一実施例を示したハード構成ブロック図である。
本実施例に示す自動作曲装置は、マイクロプロセッサユニット(CPU)1、リードオンリメモリ(ROM)2、ランダムアクセスメモリ(RAM)3からなるマイクロコンピュータによって制御されるようになっている。CPU1は、この自動作曲装置全体の動作を制御するものである。このCPU1に対して、データ及びアドレスバス1Dを介してリードオンリメモリ(ROM)2、ランダムアクセスメモリ(RAM)3、押鍵検出回路4、スイッチ検出回路5、表示回路6、音源回路7、効果回路8、外部記憶装置9、MIDIインタフェース(I/F)10および通信インタフェース11がそれぞれ接続されている。更に、CPU1には、タイマ割込み処理(インタラプト処理)における割込み時間や各種時間を計時するタイマ1Aが接続されている。すなわち、タイマ1Aは時間間隔を計数したり、作曲終了後に作曲した曲を自動演奏する際の演奏テンポを設定したりするためのテンポクロックパルスを発生する。このテンポクロックパルスの周波数は、各種スイッチ5Aの中のテンポ設定スイッチ等によって調整される。このようなタイマ1AからのテンポクロックパルスはCPU1に対して処理タイミング命令として与えられたり、あるいはCPU1に対してインタラプト命令として与えられる。CPU1は、これらの命令に従って各種処理を実行する。各種処理には、例えば自動作曲の際の画面表示処理や自動作曲した曲を演奏するための自動演奏処理等がある。
なお、この自動作曲装置は専用の装置に限られず、例えばパソコンなどの汎用装置あるいはマルチメディア機器等であってもよく、本発明に従う所定のソフトウエア又はハードウエアを用いることによって自動作曲を行うことのできるように構成した装置であればよい。
【0014】
ROM2は、CPU1により実行あるいは参照される各種プログラムや各種データ等を格納するものである。RAM3は、作曲の際に用いられる各種楽音情報(例えば、後述する楽節構成情報や起伏情報、あるいはメロディ生成用情報や伴奏生成用情報等のパラメータ)や作曲した曲を自動演奏する際に用いられる自動演奏情報、CPU1が所定のプログラムを実行する際に発生する各種データなどを一時的に記憶するワーキングメモリとして、あるいは現在実行中のプログラムやそれに関連するデータを記憶するメモリ等として使用される。RAM3の所定のアドレス領域がそれぞれの機能に割り当てられ、レジスタやフラグ、テーブル、メモリなどとして利用される。鍵盤4Aは、楽音の音高を選択するための複数の鍵を備えており、各鍵に対応してキースイッチを有しており、この鍵盤4Aは楽音演奏のために使用できるのは勿論のこと、作曲の際のモチーフ区間メロディ等を入力するための入力手段として使用することもできる。押鍵検出回路4は、鍵盤4Aの各鍵の押圧及び離鍵を検出し、検出出力を生じる。
スイッチ5Aは各種のパラメータを指定したり、あるいは自動演奏時における各種演奏条件等を入力するための各種の操作子を含んで構成される。例えば、数値データ入力用のテンキーや文字データ入力用のキーボード、あるいはパネルスイッチ等である。勿論、この他にも音高、音色、効果等を選択・設定・制御するための各種操作子を含んでいてよい。スイッチ検出回路5は、スイッチ5Aの各操作子の操作状態を検出し、その操作状態に応じたスイッチ情報をデータ及びアドレスバス1Dを介してCPU1に出力する。表示回路6はパラメータの内容等の各種情報を、例えば液晶表示パネル(LCD)やCRT等から構成されるディスプレイ6Aに表示するのは勿論のこと、自動演奏に関する各種情報あるいはCPU1の制御状態などをディスプレイ6Aに表示する。
【0015】
音源回路7は、複数のチャンネルで楽音信号の同時発生が可能であり、データ及びアドレスバス1Dを経由して与えられた演奏情報を入力し、この演奏情報に基づいて楽音信号を発生する。音源回路7から発生された楽音信号は、サウンドシステム8Aを介して発音される。また、効果回路8は前記音源回路7から発生された楽音信号に対して各種効果を与える。前記音源回路7における楽音信号発生方式はいかなるものを用いてもよい。例えば、発生すべき楽音の音高に対応して変化するアドレスデータに応じて波形メモリに記憶した楽音波形サンプル値データを順次読み出す波形メモリ読み出し方式、又は上記アドレスデータを位相角パラメータデータとして所定の周波数変調演算を実行して楽音波形サンプル値データを求めるFM方式、あるいは上記アドレスデータを位相角パラメータデータとして所定の振幅変調演算を実行して楽音波形サンプル値データを求めるAM方式等の公知の方式を適宜採用してもよい。すなわち、音源回路7の方式は、波形メモリ方式、FM方式、物理モデル方式、高調波合成方式、フォルマント合成方式、VCO+VCF+VCAのアナログシンセサイザ方式、アナログシミュレーション方式等、どのような方式であってもよい。また、専用のハードウェアを用いて音源回路7を構成するものに限らず、DSPとマイクロプログラム、あるいはCPUとソフトウェアを用いて音源回路7を構成するようにしてもよい。さらに、1つの回路を時分割で使用することによって複数の発音チャンネルを形成するようなものでもよいし、1つの発音チャンネルが1つの回路で形成されるようなものであってもよい。
【0016】
外部記憶装置9は、自動作曲時に用いるパラメータや既存曲の演奏データ(例えば、メロディデータと伴奏データを組み合わせて1つのデータとしたもの)、CPU1が実行する各種プログラムの制御に関するデータ等を記憶するものである。前記ROM2に制御プログラムが記憶されていない場合、この外部記憶装置9(例えばハードディスク)に制御プログラムを記憶させておき、それを前記RAM3に読み込むことにより、ROM2に制御プログラムを記憶している場合と同様の動作をCPU1にさせることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。なお、外部記憶装置9はハードディスク(HD)に限られず、フロッピィーディスク(FD)、コンパクトディスク(CD−ROM・CD−RAM)、光磁気ディスク(MO)、あるいはDVD(Digital Versatile Diskの略)等の着脱自在な様々な形態の外部記録媒体を利用する記憶装置であってもよい。
【0017】
MIDIインタフェース(I/F)10は、他のMIDI機器10A等からMIDI規格の楽音情報(MIDIデータ)を当該自動作曲装置へ入力したり、あるいは当該自動作曲装置からMIDI規格の楽音情報(MIDIデータ)を他のMIDI機器10A等へ出力するためのインタフェースである。他のMIDI機器10Aはユーザによる操作に応じてMIDIデータを発生する機器であればよく、鍵盤型、ギター型、管楽器型、打楽器型、ミブリ型等どのようなタイプの操作子を具えた(若しくは、操作形態からなる)機器であってもよい。通信インタフェース11は、例えばLANやインターネット、電話回線等の通信ネットワーク11Bに有線又は無線にて接続されており、該通信ネットワーク11Bを介して、サーバコンピュータ11Aと接続され、当該サーバコンピュータ11Aから制御プログラムや各種データを自動作曲装置側に取り込むためのインタフェースである。すなわち、ROM2や外部記憶装置9(ハードディスク)等に制御プログラムや各種データが記憶されていない場合に、サーバコンピュータ11Aから制御プログラムや各種データをダウンロードするために用いられる。クライアントとなる自動作曲装置は、通信インターフェース10及び通信ネットワーク11Bを介してサーバコンピュータ11Aへと制御プログラムや各種データのダウンロードを要求するコマンドを送信する。サーバコンピュータ11Aは、このコマンドを受け、要求された制御プログラムやデータを、通信ネットワーク11Bを介して本装置へと配信し、本装置が通信インタフェース11を介して、これら制御プログラムや各種データを受信して外部記憶装置9(ハードディスク)等に蓄積することにより、ダウンロードが完了する。
【0018】
なお、MIDIインタフェース10は専用のMIDIインタフェースを用いるものに限らず、RS232−C、USB(ユニバーサル・シリアル・バス)、IEEE1394(アイトリプルイー1394)等の汎用のインタフェースを用いてMIDIインタフェース10を構成するようにしてもよい。この場合、MIDIイベントデータ以外のデータをも同時に送受信するようにしてもよい。MIDIインタフェース10として上記したような汎用のインタフェースを用いる場合には、他のMIDI機器10AはMIDIイベントデータ以外のデータも送受信できるようにしてよい。勿論、音楽情報に関するデータフォーマットはMIDI形式のデータに限らず、他の形式であってもよく、その場合はMIDIインタフェース10と他のMIDI機器10Aはそれにあった構成とする。
【0019】
本発明に係る自動作曲装置は、入力されたモチーフ区間メロディ(以下、単にモチーフと呼ぶ)からモチーフが具える音楽的特徴(例えば、ダイナミクスや適用する音楽ルール等のピッチ特徴、あるいはシンコペーションの有無や音符の粗・密等のリズム特徴など)を分析的に抽出することなく、モチーフから単に当該モチーフを構成している1音1音の楽音情報(ピッチやリズムに関する値)を演算により加工して、その加工した楽音情報を利用して1曲全体を構築する(つまり、1曲全体を作曲する)。つまり、モチーフは被模倣区間となり、モチーフの楽音情報を利用して生成された区間は模倣区間となる。このような第1の実施形態によると、モチーフが具える音楽的特徴を1曲全体にわたって反映した曲を簡単な処理で生成することができる。そこで、まず、この第1の実施形態、すなわち、モチーフを構成している1音1音の楽音情報(ピッチやリズムに関する値)を演算加工し、加工した楽音情報(ピッチやリズムに関する値)に基づいてモチーフ区間以外のメロディを生成することによって、1曲を構築する処理について説明する。
【0020】
まず、モチーフを構成している1音1音のピッチを演算加工する場合、その方法には次に示すような2通りの方法がある。そこで、この2通りの方法について各々簡単に説明する。
1つ目の方法として、検出したモチーフ中の重要音に付された各ピッチのみに対して演算加工を行って該重要音毎に新たなピッチを生成し、この生成した新重要音ピッチを用いてモチーフ区間に後続する区間のメロディ(この実施例では、これをモチーフ後続区間メロディと呼ぶ)を生成する方法がある。この方法は、モチーフ後続区間メロディに用いるリズムを新規に生成し(すなわち、モチーフのリズムは使用しない)、該リズムにあわせて配置した重要音毎に新ピッチをアサインする。モチーフ中の重要音とは、モチーフを音楽的に特徴付ける1小節中の重要打点に位置する音符のことで、例えば、各小節の先頭や強拍の位置(打点)に配置された音符のことである。
2つ目の方法として、モチーフ中の全ての音のピッチに対して演算加工を行って全ての音に対応する新たなピッチを生成し、この生成した新ピッチを用いてモチーフ後続区間メロディを生成する方法がある。この方法では、モチーフ後続区間メロディに用いるリズムはモチーフのリズムを利用してよい。例えば、モチーフから楽音情報として抽出したリズムを演算加工することによって新しいリズム(リズムパターン若しくは発音タイミングパターン)を生成し、当該新リズムを用いてモチーフ後続区間メロディを生成する。あるいは、モチーフ中の各音における打点のタイミング(すなわち、リズム)を演算することによって新しい打点のタイミング(すなわち、新リズム)を生成し、当該タイミングを用いてモチーフ後続区間メロディを生成する。このように、モチーフのピッチや打点のタイミング(すなわち、リズム)を利用して、モチーフ後続区間メロディを生成する。
【0021】
そこで、1曲全体にわたってモチーフの雰囲気を反映したメロディを生成する処理について、上述したピッチ演算方法毎に分けて説明する。まず、上述したピッチ演算方法の1つ目の方法、すなわち、モチーフ中の重要音に対して新たに生成されたピッチを用いてモチーフ後続区間メロディを生成することにより、1曲を構築する処理について説明する。図2は、このモチーフ中の重要音のみを利用してモチーフの雰囲気を反映した1曲を構築する処理の一実施例を示したフローチャートである。以下、図2のフローチャートに従って、当該処理における処理動作を説明する。
【0022】
ステップS1では、モチーフを入力する。モチーフの入力は、所望のモチーフをユーザが鍵盤4A等を用いて適宜入力するようにしてもよいし、既存曲をロードし、その一部をモチーフとして使用するようスイッチ5A等を用いて指定するようにしてもよい。モチーフが入力されると、該モチーフを構成する各音の打点(すなわち、メロディの発音タイミング)の中から重要打点を抽出し、さらに該重要打点における各音のピッチ(これを重要音ピッチと呼ぶ)を検出する(ステップS2)。重要音ピッチを検出すると、検出した重要音ピッチに対して所定の演算処理を行う(ステップS3)。この演算処理についての詳しい説明は、後述する。ステップS4では、モチーフ区間に後続する区間のリズムパターンの生成、すなわち、モチーフ後続区間メロディのリズムを生成する。この実施例では、モチーフのリズムを使用しないで、モチーフ後続区間メロディ生成用に新たなリズムを生成する。次に、重要音打点を検出する(ステップS5)。すなわち、上記リズムパターンにあわせて(あるいは所定の重要打点位置検出ルールに従って、又はリズムパターン毎に予め決まっている)、重要音打点位置を検出する。重要音打点を検出すると、この重要音打点位置に所定の順番で上記ステップS3で演算して新たに算出された重要音ピッチを付加する(ステップS6)。つまり、各重要打点位置に演算して算出されたモチーフ中の重要音ピッチの変形値を適宜アサインする。そして、所定の音楽ルールに基づいて重要音打点以外の打点毎にピッチを割り当てることによって、重要音打点間の各音に付すピッチを生成する(ステップS7)。すなわち、重要打点以外におけるノートを適宜に生成する。こうして生成されたモチーフ後続区間メロディ(具体的には、モチーフ後続区間メロディ生成用の演奏データ)と入力されたモチーフメロディ(具体的には、モチーフ区間メロディ生成用の演奏データ)とを結合することによって、1曲全体分のメロディ(具体的には、モチーフ区間メロディ生成用とモチーフ後続区間メロディ生成用とを組み合わせて構成される1曲分の演奏データ)が完成する(ステップS8)。
【0023】
次に、上述したピッチ演算方法の2つ目の方法、すなわち、モチーフ中の全ての音についてピッチ演算し、ピッチ演算された結果算出される新ピッチを用いてモチーフ後続区間メロディを生成する方法について説明する。図3は、このモチーフ中の全ての音についてピッチ演算し、これを利用することによりモチーフの雰囲気を全体に反映した1曲を構築する処理の一実施例を示したフローチャートである。以下、図3のフローチャートに従って、当該処理における処理動作を説明する。
【0024】
ステップS11では、モチーフを入力する。モチーフの入力については、上述した処理(図2のステップS1参照)の場合と同様である。入力されたモチーフ中の各音全てについて、ピッチを検出する(ステップS12)。ピッチを検出すると、各ピッチに対して所定の演算処理を行う(ステップS13)。この演算処理についての詳しい説明は、後述する。そして、モチーフの各音全ての打点位置を検出し(ステップS14)、検出した各打点位置に対して演算処理を行う(ステップS15)。こうして得られたピッチ及び打点位置の演算結果たる楽音情報を利用して、モチーフ後続区間メロディの演奏データを生成する(ステップS16)。
こうして生成されたモチーフ後続区間メロディ(具体的には、モチーフ後続区間メロディ生成用の演奏データ)と入力されたモチーフ区間メロディ(具体的には、モチーフ区間メロディ生成用の演奏データ)とを結合することによって、1曲全体分のメロディ(具体的には、モチーフ区間メロディ生成用とモチーフ後続区間メロディ生成用とを組み合わせて構成される1曲分の演奏データ)が完成する(ステップS17)。
【0025】
ここで、ピッチに対する演算処理(図2のステップS3及び図3のステップS13参照)について具体例を用いて説明する。図4はピッチに対する演算処理を説明するための概念図であり、図4(A)はピッチ演算前におけるピッチを示し、図4(B)はピッチ演算後におけるピッチを示す。ただし、図4では、モチーフにおける3音のピッチ(各音のピッチをそれぞれ○、×、△で表現する)に対して演算処理を行う場合について説明する。なお、図4では、横軸に時間を、縦軸にピッチを示した。すなわち、演奏時には×、△、○で示したピッチの順で発音される。
ピッチに対する演算処理において、モチーフにおけるn番目の音のピッチをPnとし、n番目の音に対する一次演算式の係数をAn、シフト値をBnとした場合、n番目の音の新ピッチPn´は、
Pn´=Pn×An+Bn…(式1−1)
として演算される。すなわち、この実施例では、1番目の音のピッチP1はE3(×で表現したもの)であり、2番目の音のピッチP2はC3(△で表現したもの)であり、3番目の音のピッチP3はG3(○で表現したもの)である。
そうすると、図4に示す3音の各ピッチにおける演算結果たる新ピッチP1´、P2´、P3´は、
P1´=P1×A1+B1…(式1−2)
P2´=P2×A2+B2…(式1−3)
P3´=P3×A3+B3…(式1−4)
のようにして算出される。
【0026】
そこで、具体的にモチーフのピッチが、例えばP1=E3(×で表現したもの:例えば、MIDIノートナンバ=64とする)、P2=C3(△で表現したもの:例えば、MIDIノートナンバ=60とする)、P3=G3(○で表現したもの:例えば、MIDIノートナンバ=67とする)といったピッチであって、上記一次演算式(式1−2〜式1−4参照)における各係数をA1=A2=A3=「1.15」、B1=B2=B3=「−5」とした場合に、算出される新ピッチP1´、P2´、P3´は、
P1´=64×1.15−5=69…(式1−5)
P2´=60×1.15−5=64…(式1−6)
P3´=67×1.15−5=72…(式1−7)
となる。このように、上記一次演算式によって、モチーフにおけるピッチE3、C3、G3(図4(A)参照)の3音はそれぞれA3(MIDIノートナンバ=69)、E3(MIDIノートナンバ=64)、C4(MIDIノートナンバ=72)といったピッチに拡大(あるいは縮小)された状態にシフトされる(図4(B)参照)。
【0027】
また、モチーフにおける各音全ての打点位置を演算して新打点位置を生成する方法(図3のステップS15参照)は、上述したモチーフのピッチ演算方法と同様の方法による。すなわち、モチーフにおけるn番目の音の打点位置(例えば、小節先頭からの絶対時間で打点位置で表わす)をTnとし、n番目の音に対する一次演算式の係数をCn、初期値をDnとした場合、n番目の音の新打点位置Tn´は、
Tn´=Tn×Cn+Dn…(式2−1)
のようにして算出される。
以上のようにして、モチーフのピッチあるいは打点位置を演算してシフトし、当該新ピッチ(つまりピッチに関する値)あるいは新打点位置(つまりリズムに関する値)を用いてモチーフ後続区間メロディを生成することによって、モチーフの雰囲気を曲全体に反映した1曲を構築することができる。すなわち、このような自動作曲装置によれば、モチーフ区間メロディを入力するだけで、入力したモチーフ区間メロディの音楽的特徴(例えば、ピッチ特徴やリズム特徴など)が曲全体に反映された音楽的に完成度の高い曲を生成することができる。
【0028】
なお、上述したピッチ演算処理及び打点位置演算処理において、演算結果に小数点が生じたような場合には、四捨五入等の適宜の処理を行って当該演算結果を整数化する。また、ピッチ演算処理において、演算結果が調の音階音あるいは各コード毎の利用可能音階(アヴェイラブル・ノート・スケール:以下AVNSと略称する)でないような場合には、音階音あるいはAVNSの中で最も近いピッチに演算結果を置き換えるようにするとよい。
なお、上述した一次演算式(式1−1、式2−1参照)の係数及びシフト値等の各演算パラメータAn、Bn、Cn、Dnは固定値でもよいし、可変値であってもよい。可変値とした場合、1曲全体で一様な可変値で可変する(すなわち、各ピッチ(あるいは各打点位置)毎の演算パラメータ全てを共通の可変値で可変する)、あるいは部分毎に異なる可変値で可変する(すなわち、各ピッチ(あるいは各打点位置)毎の演算パラメータを異ならせて可変する)ように構成してよい。部分毎に異なる可変値で可変する場合、各ピッチ(あるいは各打点位置)毎に可変値をユーザが自由に設定できるようにしてよいし、あるいは可変値の変化パターンのテンプレートを予め用意しておき、これを都度参照して可変値を設定するようにしてもよい。また、ピッチ(あるいは打点位置)に対する演算処理は上述したような一次式(式1−1、式2−1参照)のみによる加工演算に限らず、一次演算式(式1−1、式2−1参照)の結果をさらに加工演算するようにしてもよい。
【0029】
次に、上述した第1の実施例(モチーフ中の重要音に対して演算加工を行ってモチーフ後続区間メロディを生成して作曲する方法、モチーフ中の全ての音に対して演算加工を行ってモチーフ後続区間メロディを生成して作曲する方法)の一変形例について説明する。上述した各実施例においてモチーフ後続区間メロディを生成する際に、ユーザの好みに合わせてモチーフにおける各音のピッチ形状(すなわち、所定の区間毎における区間内のピッチ変化の様子を表わしたもの)やモチーフのリズムを反映させる区間と反映しない区間とを自由に選択して組合せできるようにした方が自動作曲装置としては好ましい。すなわち、ユーザの選択に従ってモチーフのピッチ形状やモチーフのリズムをモチーフ後続区間メロディに反映して作曲を行うことができるようにした方がユーザによる作曲の自由度が高まって、ユーザはオリジナルの曲を作曲することが簡単に行えるようになることから非常に好ましい。
【0030】
本発明に係る自動作曲装置では、モチーフ後続区間メロディを生成する際に、モチーフに後続する所定の区間毎に設定された生成条件(例えば、「コピー(同一)/模倣(同類)/新規(対比)」)に従ってモチーフのピッチ形状やモチーフのリズムを反映したモチーフ後続区間メロディを生成する。このモチーフのピッチ形状やリズムを反映したモチーフ後続区間の生成例を簡単に説明すると、モチーフに後続する所定の区間毎に「コピー(同一)/模倣(同類)/新規(対比)」などの生成条件の設定をユーザが行い、該生成条件に従って「コピー(同一)」と設定された区間についてはモチーフと同一のピッチ形状及びリズム(すなわち、打点位置)を利用し、「模倣(同類)」と設定された区間についてはモチーフのピッチ形状及びリズムを演算加工したピッチ形状及びリズムを利用し、「新規(対比)」と設定された区間については入力されたメロディ生成用データを基に生成されたピッチ形状及びリズムを利用する(あるいは、モチーフのピッチ形状及びリズムを演算加工(ただし、「模倣(同類)」で行われる演算加工とは全く異なる別の演算加工)したピッチ及びリズムを利用してもよい)。例えば、楽曲を4楽節・8フレーズ・16小節で構成している場合(すなわち、1楽節は2フレーズ、1フレーズは2小節で構成される楽曲)に第1楽節・第1フレーズをモチーフとして入力したような場合には、残りの第2〜第8フレーズ(すなわち、14小節)に対してフレーズ毎(すなわち、2小節毎)あるいは各楽節毎に「コピー(同一)/模倣(同類)/新規(対比)」等の生成条件をユーザが設定し、この設定に従ってモチーフ後続区間メロディを生成する。
【0031】
そこで、モチーフメロディを基にモチーフ後続区間メロディを生成する際に、ユーザの指定した生成条件に従って、モチーフメロディのピッチ形状及びリズムを所定の区間毎に反映してモチーフ後続区間メロディを生成する処理について図5を用いて説明する。図5は、所定の区間毎に設定された生成条件に従ってモチーフメロディのピッチ形状及びリズムを反映してモチーフ後続区間メロディを生成するメイン処理の一実施例を示したフローチャートである。
ステップS61では、メロディ生成用データを取り込む。該メロディ生成用データは、調、拍子、ピッチの跳躍ダイナミクス、シンコペーション有無、コード進行などの所定の作曲条件情報である。ステップS62では、モチーフメロディの入力が行われる。該モチーフメロディの入力は、ユーザが鍵盤4Aあるいは所定のスイッチ5A等を操作して入力、MIDIインタフェース10を介して他のMIDI機器10A等から入力、あるいは通信インタフェース11を介してサーバコンピュータ11A等から既存曲の一部を入力する場合や、メロディ生成用データに基づいて2小節程度のモチーフメロディを自動生成する場合などがある。このモチーフメロディを入力する区間は、1箇所だけ(例えば、曲の先頭)であってもよいし、複数箇所(例えば、曲の先頭とサビの部分)であってもよい。ステップS63では、モチーフに後続する所定の区間ごとにモチーフメロディの反映処理を行う。すなわち、該反映処理では、ユーザの設定した「コピー(同一)/模倣(同類)/新規(対比)」といった生成条件に基づいて、モチーフに後続する所定区間毎にモチーフメロディのピッチ形状及びリズムの両方を反映したメロディを順次に生成する。コピー(同一)とは、モチーフのピッチ形状及びリズムをコピーして(すなわち、モチーフと同一のピッチ形状及びリズムを用いて)所定区間のメロディを生成する。模倣(同類)とは、モチーフのピッチ形状及びリズムを模倣して(すなわち、演算加工したピッチ形状及びリズム用いて)所定区間のメロディを生成する.。新規(対比)とは、モチーフのピッチ形状及びリズムとは関係なしに(すなわち、新規に生成したピッチ形状及びリズムを用いて)所定区間のメロディを生成する。これらの設定情報は、区間生成指示画面からのユーザ指定に従って生成される情報である。
【0032】
ここで、区間生成指示画面について図6を用いて簡単に説明する。図6は、区間生成指示画面の一実施例を示した概念図である。ただし、図示の例では第3楽節までの区間生成指示画面を示し、選択されている項目を二重丸(◎)で、非選択の項目を丸(○)で図示した。図から理解できるように、この区間生成指示画面は、各楽節毎にリズムとピッチについて、楽節をコピー/模倣/新規生成するか、フレーズをコピー/模倣/新規生成するかをユーザが画面上から設定できるようにディスプレイ6Aに表示される。
この実施例に示すように、第1楽節はコピーや模倣の対象とする楽節が第1楽節以前には存在しないことから、必ず第1楽節における楽節は「新規」に設定される。楽節が「新規」に設定される場合には、フレーズに「コピー」「模倣」「新規」のいずれかを設定することができる。第1楽節の楽節に対して「コピー」と設定した場合には、第1楽節の第1フレーズ(すなわち、モチーフ)を第2フレーズとしてコピーする。「模倣」と設定した場合には、第1楽節の第1フレーズ(すなわち、モチーフ)を演算加工し第2フレーズとする。「新規」と設定した場合には、第2フレーズを新規に生成する。この実施例における第2楽節の設定に示すように、楽節を「コピー」(又は「模倣」)と設定した場合には、フレーズは「コピー」「模倣」「新規」のいずれにも設定されない。すなわち、楽節を「コピー」(又は「模倣」)と設定した場合、フレーズに対する設定は楽節に対する設定にしたがうことになることから、楽節を「コピー」(又は「模倣」)と設定した場合にフレーズに対する設定はない。この場合、第1楽節の第1フレーズ及び第2フレーズを第2楽節の第1フレーズ及び第2フレーズとしてコピー(「コピー」が設定された場合)する、あるいは第1楽節の第1フレーズ及び第2フレーズを演算加工し、第2楽節の第1フレーズ及び第2フレーズとする(「模倣」が設定された場合)。楽節を「新規」と設定した場合には、フレーズを「コピー」するか、「模倣」するか、「新規」するかのいずれかを設定することができる。「コピー」と設定した場合には、第2楽節の第1フレーズを新規生成し、該第1フレーズをコピーし第2フレーズとする。「模倣」と設定した場合には、第2楽節の第1フレーズを新規生成し、該第1フレーズを演算加工し第2フレーズとする。「新規」と設定した場合には、第2楽節内の第1フレーズと第2フレーズをともに新規生成する。また、第2楽節が第1楽節と同じ楽節記号で表わされる場合(例えば、第1楽節と第2楽節がともに「A」で表記される場合)は、第2楽節における楽節に対する設定は「コピー」に自動的に設定される。第2楽節の楽節記号が第1楽節の楽節記号と類似である場合(図示の例にはないが、例えば第1楽節が「A」で、第2楽節が「A´」で表記される場合)は、第2楽節における楽節に対する設定は「模倣」に自動的に設定される。第2楽節の楽節記号が新たな楽節記号である場合(例えば、第1楽節が「A」で、第2楽節が「B」で表記される場合)は、第2楽節における楽節に対する設定は「コピー」「模倣」「新規」のいずれに自動的に設定されてもよい。
なお、上述の説明では楽節のみについて説明したが、リズムにおいても同様であることから説明を省略する。
【0033】
第3楽節の設定として、リズムについて楽節「模倣」あるいは「コピー」と設定した場合は、第1楽節のリズムを模倣(類似リズムとする)あるいはそのままコピーして第3楽節のリズムとする。この場合、フレーズに対する設定がないことは既に説明した。リズムについて楽節「新規」と設定した場合であって、フレーズ「模倣」あるいは「コピー」と設定した場合は新規に生成した第3楽節の第1フレーズのリズムを第2フレーズに模倣あるいはコピーし、フレーズ「新規」と設定した場合は第3楽節の第1フレーズと第2フレーズのリズムをともに新規に生成する。
また、第3楽節の設定として、ピッチについて楽節「模倣」と設定した場合は、第1楽節のピッチを模倣する。すなわち、第3楽節の重要音ピッチについては新規に生成し、第3楽節の非重要音ピッチについては第1楽節の非重要音ピッチを演算加工(詳しくは後述する)して生成する。この場合、フレーズに対する設定がないことは既に説明した。ピッチについて楽節「新規」かつフレーズ「模倣」と設定した場合は、第3楽節の第1フレーズは新規生成(重要音と非重要音ともに)し、第3楽節の第2フレーズは新規生成した第1フレーズを模倣(重要音は新規生成し、非重要音は模倣)する。ピッチについて楽節「新規」かつフレーズ「新規」と設定した場合は、第3楽節の第1フレーズと第2フレーズともに新規生成(重要音と非重要音ともに)する。
【0034】
なお、上記実施例では全ての楽節について第1楽節を「コピー」、「模倣」するようにしたので、コピー元や模倣元の楽節を指定する項目を設けていない。しかし、任意の楽節を「コピー」、「模倣」可能としてもよく、その場合にはコピー元や模倣先の楽節を指定できるようにすることは言うまでもない。さらに、上記実施例では、リズムについて「コピー」と「模倣」と設定できるように項目を分けて構成したが、リズムについては「コピー」のみを設定できるようにしてよい。
【0035】
次に、モチーフに後続する所定の区間のメロディを生成する条件としてピッチ「模倣」が設定された場合に、上述したメイン処理におけるモチーフの反映処理(図5のステップS63参照)で行われるピッチ模倣処理について図7を用いて説明する。図7は、モチーフメロディのピッチを模倣してモチーフに後続する区間のピッチを生成する処理の一実施例を示すフローチャートである。
ステップS71では、モチーフを入力する。すなわち、上述したメイン処理で入力されたモチーフ(図5のステップS62参照)を取り込む。ステップS72では、被模倣区間と模倣区間とを決定する。例えば、第1楽節のフレーズのピッチが「模倣」と設定された場合には(図6における第1楽節の設定参照)、被模倣区間として第1楽節、第1フレーズ、第1小節最初の重要音と次の重要音までの区間に決定する。一方、模倣区間として第1楽節、第2フレーズ、第1小節の最初の重要音と次の重要音までの区間に決定する。すなわち、ピッチ「模倣」は重要音から次の重要音までの区間ごとに模倣する。ステップS75では、メロディ生成用データを入力する。すなわち、上述したメイン処理で入力されたメロディ生成用データ(図5のステップS61参照)を取り込む。ステップS73では、ステップS75で入力されたメロディ生成用データを基に、模倣区間のリズムを生成する。例えば、第1楽節のフレーズのリズムが「模倣」と設定された場合には(図6における第1楽節の設定参照)被模倣区間のリズムを模倣するし、「コピー」と設定された場合には被模倣区間のリズムをコピーするし、「新規」と設定された場合にはメロディ生成用データに基づいて、音符数「多」、シンコペーション「有」などのリズムを新規に生成する。ステップS74では、模倣区間の重要音の打点を検出する。ステップS76では、ステップS75で入力されたメロディ生成用データに基づいて重要音ピッチを生成する。すなわち、メロディ生成用データに含まれるコード進行、ピッチダイナミクスなどを基にして重要音ピッチを生成する。こうして生成された模倣区間の重要音打点(ステップS74参照)に生成された模倣区間の重要音ピッチ(ステップS77)を割り当てる(ステップS77)。こうすることで、まず模倣区間における重要音のピッチを決定する。
【0036】
模倣区間における重要音ピッチが決定すると、重要音以外の非重要音のピッチを決定する処理を行う。そこで、この実施例では、まず重要音間のピッチ差を算出する(ステップS78)。該重要音間のピッチ差は、模倣区間の重要音ピッチから決定した被模倣区間の重要音ピッチ(ステップS77参照)を減算して算出する。次に、該重要音間のピッチ差を用いて、模倣区間の重要音以外のピッチを生成する(ステップS79)。すなわち、被模倣区間のピッチにステップS78で算出した重要音間のピッチ差を加算して模倣区間のピッチを算出する。模倣区間の全ての音符について同様の処理を行い(ステップS80)、最後の模倣区間まで同様の繰り返し処理を行って(ステップS81)、模倣区間の全ての重要音以外の非重要音のピッチを決定する。ステップS82では、生成した模倣区間における重要音及び非重要音のピッチが所定のメロディ生成条件や音楽ルールなどを満たすか否かを判定する。例えば、設定した生成音域を満足するか、生成した模倣区間における最後のピッチは次区間における最初のピッチへ正しくドミナント進行しているか、などのチェックを行う。生成したピッチがメロディ生成条件や音楽ルールなどを満たしている場合(ステップS82のYES)、該ピッチに決定する(ステップS83)。生成したピッチがメロディ生成条件や音楽ルールなどを満たしていない場合(ステップS82のNO)、生成したピッチを破棄して独自にメロディ生成条件と音楽ルールなどを満たすピッチを生成する(ステップS84)。すなわち、模倣せずに被模倣区間のピッチを新たに生成する。このようにして、例えば第1楽節のフレーズが「模倣」と設定された場合(図6における第1楽節の設定参照)における第1楽節、第2フレーズ、第1小節のメロディが生成される。
【0037】
上述したモチーフのピッチをシフトして被模倣区間のピッチを生成する方法について、図8用いて具体的に説明する。図8は、モチーフのピッチをシフトして模倣する方法を説明するための概念図である。図示の例では、第1被模倣区間(重要音AK1と次の重要音AK2間)には重要音AK1(斜線を引いた丸で表示)と非重要音AP1、AP2(単なる丸で表示)とが存在し、第2被模倣区間(重要音AK2と図示しない次の重要音間)には重要音AK2と非重要音AP3、AP4とが存在する場合に、第1被模倣区間のピッチを模倣して第1模倣区間のピッチを生成する処理について説明する。
まず、第1模倣区間の重要音に重要音ピッチを割り当て、検出した重要音打点位置に配置する。例えば、「音符数が被模倣区間と同一生成」である場合(すなわち、模倣区間におけるリズムが被模倣区間の「コピー」である場合)には、第1模倣区間の打点位置は第1被模倣区間の打点位置と相対的に同一位置に決定される(ステップS73及びステップS74参照)。そして、メロディ生成用データを基に生成した重要音のピッチ(ステップS76参照)を割り当てることによって、第1模倣区間の重要音のピッチ及び打点位置が決定される(ステップS77参照)。すなわち、第1模倣区間における重要音はBK1に決定される。次に、第1模倣区間の非重要音のピッチを算出して非重要音に割り当てる。そこで、第1被模倣区間の重要音ピッチと第1模倣区間の重要音ピッチの差(つまり、シフト差)を算出すると(BK1−AK1)となる(ステップS78参照)。第1模倣区間における非重要音のピッチを得るために、第1被模倣区間の非重要音のピッチに算出したシフト差を加算する(ステップS79参照)。すなわち、第1模倣区間の2つの非重要音のピッチは各々BP1=AP1+(BK1−AK)、BP2=AP2+(BK1−AK)のようにして算出される。こうして、第1模倣区間のピッチは生成される。同様に、第2被模倣区間を模倣して第2模倣区間のピッチは生成される。
【0038】
なお、被模倣区間の音符数が模倣区間の音符数よりも多い場合(すなわち、被模倣区間のリズムが模倣区間よりも速いリズムである場合)には、模倣区間の音符は被模倣区間の音符の途中まで模倣する。反対に、模倣区間の音符数が被模倣区間の音符数よりも多い場合(すなわち、被模倣区間のリズムが模倣区間よりも遅いリズムである場合)には、模倣区間の音符は被模倣区間の音符の最後まで模倣し、不足分の音符のみ新たに生成する、あるいは再度被模倣区間の音符をはじめから模倣する。また、生成したピッチが音階音でない場合には、音階音に修正する。あるいはコードと不整合である場合には、コードと整合させる処理を行うようにしてもよい。
なお、上述の実施例では、重要音の差をとって被模倣区間の非重要音のピッチに加算したが、単純な加算による加工でなく、一般的な演算による加工によってもよい。例えば、
非模倣区間の非重要音のピッチ+(重要音の差×定数)+定数…(式3−1)
非模倣区間の非重要音のピッチ+(重要音の差の2乗)+定数…(式3−2)
などの演算によって加工したものであってもよい。また、上述した一次演算式(式1−1参照)によって加工したものであってもよい。すなわち、
定数×被模倣区間の非重要音+定数…(式3−3)
によって加工したものであってもよい。
なお、上記演算式における定数(演算パラメータ)は同じ値でなくてよい。
【0039】
一般的に楽曲は、イントロ(区間)−1コーラス(区間)−間奏(区間)−2コーラス(区間)−エンディング(区間)などのような構造をしている。楽曲中のメイン部である1コーラス区間メロディが生成されると、1コーラス区間メロディに該1コーラス区間メロディをいかした1コーラス区間以外メロディ(上記構成では、イントロ、間奏、2コーラス、エンディング等)が付加されることによって1曲全体分の楽曲が生成される。イントロは、これから1コーラスに入るための気持ちの準備を与え、1コーラスに入った時の効果をあげるものである。間奏は、1コーラスが次の2コーラスに直接結合して曲が単純化しないようにするために、変化を与えたり、一息つかせたりするためのものである。エンディングは、曲が終わるときの終曲感あるいは名残感を与えるものである。いずれにしても、イントロ、間奏、2コーラス、エンディング等は、1コーラス区間メロディと何らかの音楽的関連を持つのが一般的である(まったく無関連の場合もあるが、関連をつけた方が音楽的に完成度が高い楽曲であると言える)。
【0040】
そこで、本発明に係る自動作曲装置の第2の実施形態では、1コーラス区間以外(上記構成では、イントロ、間奏、2コーラス、エンディング等)のメロディを生成する場合に、1コーラス区間以外のメロディを生成するためのパラメータを供給し、該パラメータに基づいて1コーラス区間以外のメロディを生成することによって1曲を構築する。この第2の実施形態によると、従来の自動作曲装置と異なり、1コーラス区間メロディを生成した後に、伴奏だけでなく該1コーラス区間メロディのもつ音楽的特徴を生かしたイントロ区間メロディ、間奏区間メロディ、2コーラス区間メロディ、エンディング区間メロディを生成して、1曲全体を構築する。つまり、1コーラス区間メロディのバリエーションとしての2コーラス区間メロディのみならず、メロディのあるイントロ、間奏、エンディング等を生成する。そこで、この1コーラス区間メロディを生成し、その後で1コーラス区間以外(例えば、イントロ、間奏、2コーラス、エンディング等)のメロディ及び伴奏を供給されたパラメータから生成することによって、1曲を構築する作曲処理について説明する。図9は、該作曲処理における処理フローの一実施例を示した概念図である。
【0041】
まず、ユーザは最初に作りたい曲の音楽ジャンル(ステップS21)及び曲想(ステップS22)を入力する。ジャンルは「ポップス」「ジャズ」「ラテン」「クラシック」などの音楽ジャンルを表わすものであり、曲想は「うきうき」「さびしい」などのキーワードで表わされる該曲から与えられるイメージ的特徴を表わすものである。この入力されたジャンルに従って、モチーフ区間の伴奏が選択される(ステップS23)。モチーフ区間の伴奏選択の際に、該当するモチーフ区間の伴奏が外部記憶装置9等に予め複数記憶されているような場合には、既存の伴奏パターンの中から気に入った伴奏が出現するまで繰り返し伴奏を試聴して選択する。あるいは、外部記憶装置9等に予め複数記憶されている既存の伴奏パターンのいずれかをランダムに選択する。そして、入力されたジャンル及び曲想に従って、モチーフ区間メロディを生成するためのパラメータ(モチーフ区間メロディ生成用情報)を選択または設定する(ステップS24)。例えば、ジャンルとしてビジュアルロックが選択された場合には、メロディピッチがほとんど飛ばないパラメータを選択または設定する。ステップS25では、ステップS23で設定されたモチーフ区間の伴奏を聞きながらユーザが所定のスイッチ5A(例えば、タップスイッチ等)を用いてモチーフ区間メロディの打点(リズム)を打ち込むマニュアル操作によって打点の時間軸移動や打点の増減を行い、その後にステップS24で生成したパラメータ(モチーフ区間メロディ生成用情報)に従い各打点毎のピッチを生成し、これらに基づいてモチーフ区間メロディを生成する。ただし、初めにモチーフ区間メロディを生成することなく、初めから1コーラス区間全体を生成するような場合には、上記ステップS23〜ステップS25までの処理を行う必要がないことから、ステップS21及びステップS22からステップS26の処理へとジャンプする。さらに、モチーフ区間メロディの全てを自動生成する場合には、ユーザが所定のスイッチ5Aを用いて打点(リズム)を打ち込むために伴奏を聞く必要がないために、ステップS23のモチーフ区間の伴奏選択処理は不要となる。
【0042】
モチーフ区間メロディが完成すると、該モチーフ区間メロディを用いて1コーラス区間メロディ全体を生成する。まず、モチーフ区間以外(モチーフ区間は既に生成されているので不要)の1コーラス区間内における楽節構成情報と起伏情報とを選択または設定する(ステップS26)。すなわち、1コーラス区間メロディは複数楽節で構成されており(例えば、4楽節)、楽節情報は所定の楽節記号が付された楽節を1コーラス区間メロディの楽節構成順に並べたものである。このように、該楽節記号の並びによって1コーラス区間メロディにおける楽節構成がどのような構成になっているのかが示される。楽節記号とは、楽節間の類似・非類似を表す記号である。例えば、1コーラス区間メロディの楽節数が4である場合(すなわち、1コーラスは4楽節構成)である場合に、第1楽節の楽節記号として「A」(又は「A」)、第2楽節の楽節記号として「B」(又は「A´」)、第3楽節の楽節記号として「C」(又は「B」)、第4楽節の楽節記号として「C´」(又は「B´」)が付されたとすると、楽節情報は「ABCC´」(又は「AA´BB´」)のように表わされる。この実施例では、「A」の楽節にメロディが類似するものを「A´」のように元の記号に「´」(ダッシュ)記号を付して表わし、「A」の楽節にメロディが類似しない(非類似)のものを別の記号「B」・「C」で表わす。起伏情報は曲全体のピッチ変化の起伏を示す情報であって、これに従って曲全体の抑揚は影響を受ける。すなわち、直線的、波状的、躍動的、和声的などの旋律が水平的、上昇的、下降的に変化する様子を示す情報である。
ステップS27では、入力したジャンル、曲想、及び選択または設定した上記モチーフ区間以外の1コーラス区間メロディにおける楽節構成情報と起伏情報とに基づいて、モチーフ区間以外の1コーラス区間メロディ及び伴奏を生成するためのパラメータを選択または設定する。そして、該パラメータに基づいて、モチーフ区間以外の1コーラス区間におけるメロディ及び伴奏を生成する(ステップS28)。
【0043】
ここで、入力されたジャンルや曲想が1コーラス内楽節構成情報及び起伏情報(ステップS26参照)、あるいは1コーラス区間メロディ生成用及び伴奏生成用情報にどのような影響を及ぼすか(つまり、依存するか)の具体的な例を示す。図10は、入力されたジャンルや曲想に対する上記各情報との依存関係及び上記各情報内容の具体例を示した図である。
図10において、項目「ジャンル」及び「曲想」に示した各記号(○、△、×)は、対応するパラメータへの影響度合いを示す。すなわち、「○」である場合、パラメータはジャンルあるいは曲想に依存する。「×」である場合、パラメータはジャンルあるいは曲想に依存しない。「△」である場合、パラメータは特定のジャンルのみあるいは特定の曲想のみに依存する。パラメータの上から順に具体的に説明すると、「楽節構成」、「楽節内小節数」は特定のジャンルの場合にのみ依存し(例えば、ブルース形式のようなジャンルである場合には、「楽節構成」がABCで各「楽節内小節数」は4小節などのように設定される)、曲想には依存しない。「テンポ」は、特定のジャンルに依存し(例えば、サンバのようなジャンルである場合には、「テンポ」は120などのように速いテンポに設定される)、さらに曲想に依存する。「伴奏スタイル」は、ジャンル及び曲想の両方に依存する。「フィル」は、ジャンルに依存せず曲想のみに依存する。「楽節終止型」、「調、転調」、「同一/類似/対比/独立」は、ジャンル及び曲想のどちらにも依存しない。「使用コード」、「メロディリズム生成」、「メロディピッチ生成」は、ジャンル及び曲想の両方に依存する。「表情パラメータ」、「メロディ楽器」は特定のジャンルに依存し(例えば、テクノのようなジャンルである場合には、「表情パラメータ」は表情少なくなどのように設定され、エスニックのような民族音楽のジャンルである場合には、「メロディ楽器」はガムランなどの民族楽器が設定される)、曲想にも依存する。
【0044】
このようなジャンルあるいは曲想とパラメータの依存関係から、モチーフ区間メロディ生成用情報(図9のステップS24参照)が選択あるいは設定され、さらにモチーフ区間以外の1コーラス区間内楽節構成情報と起伏情報が選択または設定される。ここで、図10に示した各パラメータと図9のフローチャートで示した各情報との対応関係を示すと、「楽節構成」及び「楽節内小節数」は「楽節構成情報」(図9のステップS26参照)に対応し、「起伏」は「起伏情報」(図9のステップS26参照)に対応する。「楽節終止型」、「調・転調」、「同一/類似/対比/独立」、「使用コード」、「メロディリズム生成」、「メロディピッチ生成」、「表情パラメータ」、「メロディ楽器」は「メロディ生成用情報」(図9のステップS27参照)に対応し、「テンポ」、「伴奏スタイル」、「フィル」、「調・転調」、「使用コード」は「伴奏生成用情報」(図9のステップS27参照)に対応する。そうすると、図10のように各パラメータが設定されたような場合には、楽節構成が「AA´BA」であり、各楽節が4小節(すなわち、1コーラス区間が16小節)で構成される1コーラス区間メロディ及び伴奏(図9のステップS28参照)が生成される。
勿論、ジャンルあるいは曲想とパラメータとの依存関係をユーザが適宜に設定できるようにしてよいことは言うまでもない。なお、各パラメータは公知のものであることから、各パラメータ内容についての詳しい説明は省略する。
【0045】
図9に戻り、1コーラス区間メロディが完成すると、次に1コーラス区間以外メロディの生成のために、1コーラス区間以外の曲全体構造情報と起伏情報とを選択または設定する(ステップS29)。次に、この1コーラス区間以外の曲全体構造情報と起伏情報とに基づいて、1コーラス区間以外の曲全体メロディ生成用情報及び伴奏生成用情報を選択または設定する(ステップS30)。選択または設定された1コーラス区間以外の曲全体メロディ生成用情報及び伴奏生成用情報に基づいて、1コーラス区間以外のメロディ及び伴奏を生成する(ステップS31)。最後に、生成されたモチーフ区間伴奏(ステップS23)、モチーフ区間メロディ(ステップS26)、モチーフ区間以外の1コーラス区間のメロディ及び伴奏(ステップS28)、1コーラス区間以外の曲全体メロディ及び伴奏(ステップS31)の各々を結合して(ステップS32)、1曲全体区間の曲が完成する(ステップS33)。
【0046】
ここで、上述した1コーラス区間以外の曲全体構造情報と起伏情報、1コーラス区間以外の曲全体メロディ生成用情報及び伴奏生成用情報について具体例を示す。図11は、1曲全体区間のメロディ及び伴奏を生成するためのパラメータの具体例を示した図である。ただし、この具体例では1曲全体が「イントロ―1コーラス−間奏―2コーラス―エンディング」のように構成された曲を例に示し、さらにジャンルとして「ポップス」、曲想として「しっとり」が入力された場合に設定される各パラメータ内容を具体的に示した。なお、1コーラス区間についての各パラメータは既に生成済みであることから、単に「生成済み」と表示した。
図11に示した各パラメータから生成される1曲の楽節構成は「J・AA´BA・J´・AA´BA・J´´」となり、1曲は44小節(4+16+4+16+4)から構成される。なお、各パラメータは公知のものであることから、各パラメータ内容についての詳しい説明は省略する。イントロ及び間奏及びエンディングにおいて、「1コーラスと同じ」あるいは「1コーラス+10」(間奏におけるテンポ)、「1コーラス+4度」(間奏における調、転調)のようにパラメータが設定される場合、1コーラス区間におけるモチーフ区間のパラメータを用いる。例えば、図11に示した例では、イントロにおける「テンポ」は90と設定されるし、間奏における「テンポ」は100(90+10)と設定される。
【0047】
このように、1コーラス区間及び1コーラス区間以外のメロディ及び伴奏を生成するためのパラメータを供給し、該パラメータに基づいて1コーラス区間及び1コーラス区間以外(すなわち、イントロ、コーラス2、間奏、エンディング等)のメロディ及び伴奏を生成するようにしたことから、1曲全体を通して完成度の高い曲を生成することができる。
また、こうすることにより、実際の楽曲作成時における曲作成手順のように、モチーフ区間メロディの作成から初めて、このモチーフ区間メロディを基にしてコーラスメロディへと発展させ、さらにそれからメロディのあるイントロ、間奏、エンディングを生成していくことで、これらを含む完全な形での楽曲を生成することができる。
【0048】
次に、本発明に係る自動作曲装置の第3の実施形態では、生成された1コーラス区間のメロディや伴奏から抽出した音楽的特徴(例えば、ピッチやリズムなどに関する音楽的特徴)を利用して、1コーラス区間以外のメロディや伴奏を生成して1曲を構築する。この第3の実施形態によると、従来の自動作曲装置と異なり、1コーラス区間の音楽的特徴を反映したイントロ、間奏、2コーラス、エンディングを生成することから、完成度の高い1曲を構築することができる。
そこで、この1コーラス区間のメロディ及び伴奏を生成し、その後で1コーラス区間の音楽的特徴を曲全体に反映して1曲を構築する手順の作曲処理について説明する。図12は、該作曲処理における処理フローの一実施例を示した概念図である。
【0049】
まず、音楽条件である音楽ジャンル(例えば、ポップスなど)、曲想(例えば、さびしいなど)、あるいは調、拍子など、さらにこの条件の元で1コーラス区間のメロディ及び伴奏を生成するための生成用データを選択または設定し(ステップS41)、該データに基づいて1コーラス区間のメロディ及び伴奏を生成する(ステップS42)。次に、1コーラス区間以外のメロディあるいは伴奏を生成するための全体音楽条件を選択または設定する(ステップS43)。これは、楽節構成、小節数、拍子、調などである。次に、1コーラス区間以外のメロディあるいは伴奏を生成するためのタイプを選択または設定する(ステップS44)。この1コーラス区間以外のメロディあるいは伴奏を生成するためのタイプには、伴奏だけ、メロディだけ、メロディと伴奏の両方を生成するなどのタイプがある。他にもドラムだけ、メロディとドラムだけ、ベースとギターだけを生成するなどのいろいろなタイプがあるが、それらについての説明は省略する。
上記ステップS44で選択または設定された1コーラス区間以外のタイプに基づいて、メロディや伴奏のみ、あるいはメロディと伴奏の両方を生成する。すなわち、設定したタイプに基づいて、伴奏だけの演奏では1コーラス区間におけるコード進行と伴奏の特徴を、メロディだけの演奏ではコード進行とメロディの特徴を、メロディと伴奏の演奏ではコード進行とメロディと伴奏の特徴を検出し、これらの特徴から1コーラス区間以外のメロディあるいは伴奏を生成する。そこで、設定したタイプ別に分けて説明する。
【0050】
まず、タイプとして伴奏のみが選択あるいは設定された場合について説明する(ステップS45〜ステップS49)。
1コーラス区間からコード進行の特徴を検出し(ステップS45)、検出した特徴に基づいてまたは無関係に1コーラス区間以外のコード進行を選択または生成する(ステップS46)。このコード進行の特徴を検出してコード進行を選択または生成する方法として、モチーフ部分(例えば、コーラス1冒頭部分など)又はさび部分などの所定数の小節(例えば、4小節など)のコード進行をそのまま(又は、若干修正して)利用する方法、あるいは1コーラス区間における最初のコードを検出して、該コードが「I」(調のトニック・コード)であったならば次のコード進行を付加して自然に1コーラス区間に連結する方法がある(例えば、「I・IIm・IV・V7」、「IV・IIIm・IIm」、「I・♭VII・♭VI・V7」など)。なお、これらのコード進行はいずれかをユーザが選択してもよいし、ランダムに選択されるようにしてもよい。そして、1コーラス区間から伴奏スタイルの特徴を検出し(ステップS47)、検出した特徴に基づいてまたは無関係にコード伴奏スタイルを選択または生成する(ステップS48)。伴奏スタイルについては入力されたジャンルなどの条件により決定されることから、そのスタイルのイントロや間奏あるいはエンディングなどを選択する。こうして選択された伴奏スタイルに上記コード進行を与えることによって、伴奏スタイル演奏をなす(ステップS49)。
【0051】
次に、タイプとしてメロディのみが選択あるいは設定された場合について説明する(ステップS50〜ステップS51)。
1コーラス区間からメロディの特徴を検出し(ステップS50)、検出した1コーラス区間の特徴に基づいてメロディを生成する(ステップS51)。このメロディの特徴を検出してメロディを生成する方法を大きく2つに分けると、1コーラス区間のリズムの特徴を利用する方法と、1コーラス区間のピッチの特徴を利用する方法とがある。この1コーラス区間のリズムの特徴を利用する方法をさらに細かく分類すると、モチーフのリズムをそのまま利用する方法、モチーフにおける一部のリズムをそのまま利用する方法(例えば、前半のみを利用して残りはランダムに生成する)、モチーフのリズムと対比のリズムを利用する方法等がある。一方、1コーラス区間のピッチの特徴を利用する方法をさらに細かく分類すると、骨格(つまり、メロディ中の重要打点列)はモチーフの骨格をそのまま利用する方法、骨格はモチーフ骨格を拡大・縮小・シフトして利用する方法、骨格間メロディはモチーフ骨格間メロディピッチを拡大・縮小・シフトして利用する方法(ただし、この場合にはコードとの整合化を行う必要がある)、あるいは骨格間メロディは自動生成する方法等がある。なお、1コーラス区間からメロディの特徴を検出する他の方法としては、ステップS41で設定した1コーラス生成用データを利用し、1コーラス以外のメロディのリズムやピッチを生成する方法もある。
【0052】
さらに、タイプとしてメロディと伴奏が選択あるいは設定された場合について説明する(ステップS52〜ステップS58)。
1コーラス区間からコード進行の特徴を検出し(ステップS52)、検出した特徴に基づいてまたは無関係にコード進行を選択または生成する(ステップS53)。そして、1コーラス区間から伴奏スタイルの特徴を検出し(ステップS54)、検出した特徴に基づいてまたは無関係にコード伴奏スタイルを選択または生成する(ステップS55)。さらに、1コーラス区間からメロディの特徴を検出し(ステップS56)、検出した特徴に基づいてメロディを生成する(ステップS57)。こうして選択された伴奏スタイルに上記コード進行を与えることによって、伴奏スタイル演奏及びメロディ演奏をなす(ステップS58)。以上の処理については、既にタイプとして伴奏のみ、あるいはメロディのみが選択又は設定された場合の処理において既に説明したことから省略する。
【0053】
ここで、イントロとして4小節を設定した場合におけるイントロのメロディ及び伴奏の具体的な生成例を示す。
例えば、コード進行は、1コーラス区間の冒頭から4小節分のコード進行をそのまま利用する。メロディ生成において、リズムについては1コーラス区間の冒頭から4小節分メロディのリズム対比、ピッチ骨格については1コーラス区間の冒頭から4小節分メロディのピッチ骨格を新コードに整合化、骨格間ピッチは自動生成する。ドラムやベースなどの伴奏は、イントロセクション4小節(またはメイン3小節+フィルイン1小節)を選択する。メロディ音色は、1コーラス区間と同様の音色に変更する。
あるいは、1コーラス区間の冒頭にうまく連結するようにコード進行を生成する。メロディ生成において、リズムについては1コーラス区間の冒頭から4小節分メロディのリズム対比、ピッチ骨格については1コーラス区間の冒頭から4小節分メロディのピッチ骨格を演算変形し、さらに新コードに整合化して、骨格間ピッチは自動生成する。ドラムやベースなどの伴奏は、イントロスタイル(またはメイン3小節+フィルイン1小節)を選択する。メロディ音色は、1コーラス区間と同様の音色に変更する。
【0054】
次に、先にコード進行を必要なだけ生成し、あとから小節数が決まる場合における具体的な生成例を示す。
例えば、コード進行は、1コーラス区間の最初のコード(例えば、調のトニック・コード)が「I」だった場合、「IV・IIIm・IIm」を付加する。この場合、各コードを1小節続けるとするとイントロは3小節になる。メロディ生成において、リズムについては1コーラス区間の冒頭から3小節分メロディのリズム対比、ピッチ骨格については1コーラス区間の冒頭から3小節分メロディのピッチ骨格をそのまま利用し新コードに整合化、骨格間ピッチは自動生成する。ドラムやベースなどの伴奏は、イントロスタイル(またはメイン2小節+フィルイン1小節)を選択する。メロディ音色は、1コーラス区間と同様の音色に変更する。あるいは、メロディ生成において、コーラス特徴とは無関係に、コード進行で決まった小節だけ自動生成する(骨格ピッチ、骨格間ピッチをともに生成する)。
【0055】
なお、メロディ生成の方法はどのようなものでもよく、上述した第1の実施形態においてはモチーフのピッチやリズムを演算により変形させて利用するものであればよい。また、上述した第2の実施の形態においては、供給されたパラメータに基づいて1コーラス区間以外のメロディを生成するものであればどのようなものであってもよい。さらに、上述した第3の実施の形態においては、1コーラス区間から抽出した特徴に基づいて1コーラス区間以外のメロディや伴奏を生成するものであればどのようなものであってもよい。なお、モチーフは曲の冒頭部分に限らず、曲中の任意の区間におけるメロディとしてもよい。例えば、曲途中のサビ部分に関してモチーフメロディを供給してもよい。
【0056】
この自動作曲装置を電子楽器に適用する場合、電子楽器は鍵盤楽器の形態に限らず、弦楽器や管楽器、あるいは打楽器等どのようなタイプの形態でもよい。また、音源装置、自動作曲装置等を1つの電子楽器本体に内蔵したものに限らず、それぞれが別々に構成され、MIDIインタフェースや各種ネットワーク等の通信手段を用いて各装置を接続するように構成されたものにも同様に適用できることはいうまでもない。また、パソコンとアプリケーションソフトウェアという構成であってもよく、この場合処理プログラムを磁気ディスク、光ディスクあるいは半導体メモリ等の記憶メディアから供給したり、ネットワークを介して供給するものであってもよい。さらに、カラオケや自動演奏ピアノのような自動演奏装置に適用してもよい。さらに、携帯電話やPDA(Personal Digital Assistants)のような携帯型通信端末に適用してもよく、その場合、本発明における自動作曲方法の少なくとも一部のステップをサーバ側にて実行するようにしてもよい。例えば、携帯型通信端末からモチーフメロディを入力してサーバに送信し、サーバではこのモチーフメロディを発展させて1曲メロディを生成して、これを携帯型通信端末へと配信するようにしてもよい。あるいは、携帯型通信端末からパラメータを入力してサーバに送信し、サーバではこのパラメータに基づいてコーラス区間やコーラス区間以外のメロディを生成して、これを携帯型通信端末へと配信するようにしてもよい。この際、サーバ側にて課金処理を施してもよい。このようにして生成されたメロディは、携帯型通信端末における着信音、アラーム音、BGM、他の携帯型通信端末へのメールに添付する等の用途に利用できる。
【0057】
自動演奏装置に適用する場合、生成されるメロディデータや伴奏データ、あるいはメロディ及び伴奏データを組み合わせた演奏データのフォーマットは、イベントの発生時刻を曲や小節内における絶対時間で表した『イベント+絶対時間』形式のもの、イベントの発生時刻を1つ前のイベントからの時間で表した『イベント+相対時間』形式のもの、音符の音高と符長あるいは休符と休符長で演奏データを表した『音高(休符)+符長』形式のもの、演奏の最小分解能毎にメモリの領域を確保し、演奏イベントの発生する時刻に対応するメモリ領域にイベントを記憶した『ベタ方式』形式のものなど、どのような形式のものでもよい。
また、複数チャンネル分の演奏データが存在する場合は、複数のチャンネルのデータが混在した形式であってもよいし、各チャンネルのデータがトラック毎に別れているような形式であってもよい。
【0058】
【発明の効果】
本発明によれば、モチーフのピッチやリズムを演算により加工し、加工したピッチやリズムを用いてモチーフに後続する区間の曲を生成するようにしたことから、モチーフの特徴を抽出することなく、簡単な処理でモチーフの雰囲気を曲全体に反映させて曲を生成することができる、という効果が得られる。
また、1コーラス区間以外の区間のメロディを生成するためのパラメータを供給し、該パラメータに基づいて1コーラス区間以外の区間のメロディを生成するようにしたことから、全体にわたって完成度の高い曲を生成することができる、という効果が得られる。
さらに、生成された1コーラス区間メロディや伴奏から抽出した特徴を利用して、1コーラス区間以外の区間のメロディや伴奏を生成するようにしたことから、1コーラス区間の特徴を反映させたイントロや間奏、エンディング等を生成することができる、という効果が得られる。
【図面の簡単な説明】
【図1】 この発明に係る自動作曲装置の全体構成の一実施例を示したハード構成ブロック図である。
【図2】 モチーフ中の重要音のみを利用してモチーフの雰囲気を反映した1曲を構築する処理の一実施例を示したフローチャートである。
【図3】 モチーフ中の全てのピッチを利用してモチーフの雰囲気を反映した1曲を構築する処理の一実施例を示したフローチャートである。
【図4】 ピッチ演算を説明するための概念図であり、図4(A)はピッチ演算前におけるピッチを示し、図4(B)はピッチ演算後におけるピッチを示す。
【図5】 モチーフメロディのピッチ形状及びリズムを反映してモチーフ後続区間メロディを生成するメイン処理の一実施例を示したフローチャートである。
【図6】 区間生成指示画面の一実施例を示した概念図である。
【図7】 モチーフメロディのピッチを模倣してモチーフに後続する区間のピッチを生成する処理の一実施例を示すフローチャートである。
【図8】 モチーフのピッチをシフトして模倣する方法を説明するための概念図である。
【図9】 1コーラス区間を生成し、その後で1コーラス区間以外を生成して1曲を構築する作曲処理の処理フローの一実施例を示した概念図である。
【図10】 入力されたジャンルや曲想に対する上記各情報との依存関係及び上記各情報内容の具体例を示した図である。
【図11】 全曲でのメロディ生成及び伴奏生成パラメータの具体例を示した図である。
【図12】 1コーラス区間を生成し、その後で1コーラス区間の音楽的特徴を曲全体に反映して1曲を構築する作曲処理の処理フローの一実施例を示した概念図である。
【符号の説明】
1…CPU、1A…タイマ、2…ROM、3…RAM、4…押鍵検出回路、4A…鍵盤、5…スイッチ検出回路、5A…スイッチ、6…表示回路、6A…ディスプレイ、7…音源回路、8…効果回路、8A…サウンドシステム、9…外部記憶装置、10…MIDIインタフェース、10A…他のMIDI機器、11…通信インタフェース、11A…サーバコンピュータ、11B…通信ネットワーク、1D…データ及びアドレスバス
Claims (8)
- 曲の被模倣区間のメロディを供給する供給手段と、
前記被模倣区間のメロディからピッチ情報を抽出する手段と、
メロディ生成用データを供給する手段と、
供給されたメロディ生成用データに基づき模倣区間における所定の音のピッチ及び打点を決定する手段と、
前記抽出したピッチ情報を加工する加工手段であって、前記被模倣区間における所定の音のピッチ情報と前記模倣区間における前記所定の音のピッチ情報との差分を算出し、該算出した差分を前記被模倣区間における前記所定の音以外の音のピッチ情報に加算して前記模倣区間における前記所定の音以外の音のピッチ情報を算出するものと、
前記加工したピッチ情報に基づいて、前記模倣区間のメロディを生成する生成手段と
を具えた自動作曲装置。 - 曲の被模倣区間のメロディを供給する供給手段と、
前記被模倣区間のメロディからピッチ情報を抽出する手段と、
メロディ生成用データを供給する手段と、
供給されたメロディ生成用データに基づき模倣区間における重要音のピッチ及び打点を決定する手段と、
前記抽出したピッチ情報を加工する加工手段であって、前記被模倣区間における重要音のピッチ情報と前記模倣区間における前記重要音のピッチ情報との差分を算出し、該算出した差分を前記被模倣区間における非重要音のピッチ情報に加算して前記模倣区間における非重要音のピッチ情報を算出するものと、
前記加工したピッチ情報に基づいて、前記模倣区間のメロディを生成する生成手段と
を具えた自動作曲装置。 - 曲の所定の区間毎に曲の生成条件を指定する手段と、
前記生成条件に従い、被模倣区間と模倣区間とを決定する手段と
を具えたことを特徴とする請求項1又は2に記載の自動作曲装置。 - 前記生成手段は、前記加工手段によって加工されたピッチ情報が所定の音楽条件に従わない場合には該ピッチ情報を修正し、該修正したピッチ情報に基づいて、供給された所定の区間とは異なる区間のメロディを生成することを特徴とする請求項1又は2に記載の自動作曲装置。
- プログラムに従って動作する中央処理装置に、曲の被模倣区間のメロディデータを供給するステップと、
前記中央処理装置に、前記被模倣区間のメロディデータからピッチ情報を抽出する処理を行なわせるステップと、
前記中央処理装置に、メロディ生成用データを供給するステップと、
前記中央処理装置に、供給されたメロディ生成用データに基づき模倣区間における所定の音のピッチ及び打点を決定する処理を行なわせるステップと、
前記中央処理装置に、前記抽出したピッチ情報を加工する処理を行なわせるステップであって、前記被模倣区間における所定の音のピッチ情報と前記模倣区間における前記所定の音のピッチ情報との差分を算出し、該算出した差分を前記被模倣区間における前記所定の音以外の音のピッチ情報に加算して前記模倣区間における前記所定の音以外の音のピッチ情報を算出するものと、
前記中央処理装置に、前記加工したピッチ情報に基づいて、前記模倣区間のメロディを生成する処理を行なわせるステップと
からなる自動作曲方法。 - プログラムに従って動作する中央処理装置に、曲の被模倣区間のメロディデータを供給するステップと、
前記中央処理装置に、前記被模倣区間のメロディデータからピッチ情報を抽出する処理を行なわせるステップと、
前記中央処理装置に、メロディ生成用データを供給するステップと、
前記中央処理装置に、供給されたメロディ生成用データに基づき模倣区間における重要音のピッチ及び打点を決定する処理を行なわせるステップと、
前記中央処理装置に、前記抽出したピッチ情報を加工する処理を行なわせるステップであって、前記被模倣区間における重要音のピッチ情報と前記模倣区間における前記重要音のピッチ情報との差分を算出し、該算出した差分を前記被模倣区間における非重要音のピッチ情報に加算して前記模倣区間における非重要音のピッチ情報を算出するものと、
前記中央処理装置に、前記加工したピッチ情報に基づいて、前記模倣区間のメロディを生成する処理を行なわせるステップと
からなる自動作曲方法。 - コンピュータ読取り可能な記憶媒体であって、コンピュータに、
曲の被模倣区間のメロディデータの入力を受け付ける手順と、
と、
前記被模倣区間のメロディデータからピッチ情報を抽出する手順と、
メロディ生成用データの入力を受け付ける手順と、
受け付けたメロディ生成用データに基づき模倣区間における所定の音のピッチ及び打点を決定する手順と、
前記抽出したピッチ情報を加工する手順であって、前記被模倣区間における所定の音のピッチ情報と前記模倣区間における前記所定の音のピッチ情報との差分を算出し、該算出した差分を前記被模倣区間における前記所定の音以外の音のピッチ情報に加算して前記模倣区間における前記所定の音以外の音のピッチ情報を算出するものと、
前記加工したピッチ情報に基づいて、前記模倣区間のメロディを生成する手順と
を実行させるためのプログラムを記憶してなる記憶媒体。 - コンピュータ読取り可能な記憶媒体であって、コンピュータに、
曲の被模倣区間のメロディデータの入力を受け付ける手順と、
前記被模倣区間のメロディデータからピッチ情報を抽出する手順と、
メロディ生成用データの入力を受け付ける手順と、
供給されたメロディ生成用データに基づき模倣区間における重要音のピッチ及び打点を決定する手順と、
前記抽出したピッチ情報を加工する手順であって、前記被模倣区間における重要音のピッチ情報と前記模倣区間における前記重要音のピッチ情報との差分を算出し、該算出した差分を前記被模倣区間における非重要音のピッチ情報に加算して前記模倣区間における非重要音のピッチ情報を算出するものと、
前記加工したピッチ情報に基づいて、前記模倣区間のメロディを生成する手順と
を実行させるためのプログラムを記憶してなる記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000217643A JP3724347B2 (ja) | 2000-07-18 | 2000-07-18 | 自動作曲装置及び方法並びに記憶媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2000217643A JP3724347B2 (ja) | 2000-07-18 | 2000-07-18 | 自動作曲装置及び方法並びに記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2002032079A JP2002032079A (ja) | 2002-01-31 |
JP3724347B2 true JP3724347B2 (ja) | 2005-12-07 |
Family
ID=18712718
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000217643A Expired - Fee Related JP3724347B2 (ja) | 2000-07-18 | 2000-07-18 | 自動作曲装置及び方法並びに記憶媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3724347B2 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5254813B2 (ja) * | 2009-01-06 | 2013-08-07 | 株式会社河合楽器製作所 | 音符入力装置及び音符入力プログラム |
JP6079753B2 (ja) | 2014-11-20 | 2017-02-15 | カシオ計算機株式会社 | 自動作曲装置、方法、およびプログラム |
JP6160599B2 (ja) | 2014-11-20 | 2017-07-12 | カシオ計算機株式会社 | 自動作曲装置、方法、およびプログラム |
JP6160598B2 (ja) | 2014-11-20 | 2017-07-12 | カシオ計算機株式会社 | 自動作曲装置、方法、およびプログラム |
JP7298115B2 (ja) * | 2018-06-25 | 2023-06-27 | カシオ計算機株式会社 | プログラム、情報処理方法、及び電子機器 |
-
2000
- 2000-07-18 JP JP2000217643A patent/JP3724347B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2002032079A (ja) | 2002-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2001175263A (ja) | 自動伴奏パターン発生装置及び方法 | |
JPH0950278A (ja) | 自動作曲装置 | |
JP3829439B2 (ja) | アルペジオ発音装置およびアルペジオ発音を制御するためのプログラムを記録したコンピュータ読み取り可能な媒体 | |
US6294720B1 (en) | Apparatus and method for creating melody and rhythm by extracting characteristic features from given motif | |
JP3630075B2 (ja) | 副旋律生成装置及び方法並びに記憶媒体 | |
JP2002023747A (ja) | 自動作曲方法と装置及び記録媒体 | |
JPH11344979A (ja) | メロディ生成装置と記録媒体 | |
JP2000315081A (ja) | 自動作曲装置及び方法並びに記憶媒体 | |
JP3724347B2 (ja) | 自動作曲装置及び方法並びに記憶媒体 | |
JP2000221969A (ja) | 楽曲生成装置および楽曲生成プログラムを記録した記録媒体 | |
JP3775249B2 (ja) | 自動作曲装置及び自動作曲プログラム | |
JP3704901B2 (ja) | 自動演奏装置、自動演奏方法及び記録媒体 | |
JP3430895B2 (ja) | 自動伴奏装置及び自動伴奏制御プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP3835131B2 (ja) | 自動作曲装置及び方法並びに記憶媒体 | |
JP2000356987A (ja) | アルペジオ発音装置およびアルペジオ発音を制御するためのプログラムを記録した媒体 | |
JP3641955B2 (ja) | 楽曲データ生成装置及びそのための記録媒体 | |
JP2000112472A (ja) | 自動作曲装置と記録媒体 | |
JP3933070B2 (ja) | アルペジオ生成装置及びプログラム | |
JP4175364B2 (ja) | アルペジオ発音装置およびアルペジオ発音を制御するためのプログラムを記録したコンピュータ読み取り可能な媒体 | |
JP3777976B2 (ja) | 演奏情報解析装置及び記録媒体 | |
JP6525034B2 (ja) | コード進行情報生成装置およびコード進行情報生成方法を実現するためのプログラム | |
JP3800947B2 (ja) | 演奏データ処理装置及び方法並びに記憶媒体 | |
JP3669301B2 (ja) | 自動作曲装置及び方法並びに記憶媒体 | |
JP3738634B2 (ja) | 自動伴奏装置、及び記録媒体 | |
JP3570266B2 (ja) | 自動作曲装置及び方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20041201 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041214 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050214 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050412 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050613 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050830 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050912 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090930 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100930 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100930 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110930 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120930 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130930 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |