JP3799843B2 - 楽曲生成装置および楽曲生成プログラムを記録したコンピュータ読み取り可能な記録媒体 - Google Patents
楽曲生成装置および楽曲生成プログラムを記録したコンピュータ読み取り可能な記録媒体 Download PDFInfo
- Publication number
- JP3799843B2 JP3799843B2 JP33456498A JP33456498A JP3799843B2 JP 3799843 B2 JP3799843 B2 JP 3799843B2 JP 33456498 A JP33456498 A JP 33456498A JP 33456498 A JP33456498 A JP 33456498A JP 3799843 B2 JP3799843 B2 JP 3799843B2
- Authority
- JP
- Japan
- Prior art keywords
- parameter
- generation
- music
- parameters
- generating
- 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】
【従来の技術】
従来、コンピュータミュージック等の分野において、次のような自動作曲の処理が行われている。まず、作曲する楽曲のコード進行や楽節構成等の基本的な情報を設定しておき、これに加えて、ユーザーは、小節内の音符数や音の跳躍部分の数などを示す各種パラメータの値をそれぞれ設定する。そして、自動生成を指示すると、上記パラメータの値と予め決められている音楽的なルールに即してメロディが生成される。
【0003】
【発明が解決しようとする課題】
しかし、上記のようなパラメータには多くの種類があり、このパラメータを設定するのは大変面倒であった。
本発明は、パラメータ設定の手間を省いて簡単に自動作曲を行えるようにすることを課題とする。
【0004】
【課題を解決するための手段】
本発明の請求項1の楽曲生成装置は、楽曲の特徴を略規定するパラメータを生成するように指示するパラメータ生成指示手段と、該パラメータ生成指示手段の指示に応じて、複数種類のパラメータについて該パラメータの値をランダムに生成するパラメータ生成手段と、該パラメータ生成手段で生成された複数種類のパラメータに基づいて楽曲を生成する楽曲生成手段と、曲の躍動感を選択する躍動感選択手段と、を備え、前記躍動感選択手段で選択された躍動感に基づいて、跳躍の回数を規定する跳躍回数パラメータと、シンコペーションの回数を規定するシンコペーション回数パラメータとのランダム生成の有無を制御するようにしたことを特徴とする。
【0005】
上記のように構成された請求項1の楽曲生成装置によれば、パラメータ生成指示手段でパラメータの生成を指示するだけで生成する楽曲の特徴を略規定する複数種類のパラメータを一括して生成できる。したがって、パラメータの設定の手間を省くことができ、簡単に自動作曲を行える。
【0006】
本発明の請求項2の楽曲生成装置は、楽曲の特徴を略規定するパラメータを生成するように指示する複数タイプのパラメータ生成指示手段と、該パラメータ生成指示手段の指示に応じて、複数種類のパラメータについて該パラメータの値をランダムに生成するパラメータ生成手段であって、該パラメータ生成指示手段のタイプに応じて異なるランダム特性でパラメータの値をランダムに生成するパラメータ生成手段と、該パラメータ生成手段で生成された複数種類のパラメータに基づいて楽曲を生成する楽曲生成手段と、曲の躍動感を選択する躍動感選択手段と、を備え、前記躍動感選択手段で選択された躍動感に基づいて、跳躍の回数を規定する跳躍回数パラメータと、シンコペーションの回数を規定するシンコペーション回数パラメータとのランダム生成の有無を制御するようにしたことを特徴とする。
【0007】
上記のように構成された請求項2の楽曲生成装置によれば、請求項1と同様な作用効果が得られるとともに、パラメータ生成指示手段として例えば複数種類のスイッチなど複数タイプのスイッチを用いてそのタイプを選択するだけでそのタイプに応じた楽曲を自動作曲することができ、大幅な変更や若干の変更等のメロディ生成時の特性をユーザーが選択できる。
【0008】
本発明の請求項3の楽曲生成装置は、楽曲の特徴を略規定するパラメータを生成するように指示する複数タイプのパラメータ生成指示手段と、パラメータの種類を選択するパラメータ種類選択手段と、前記パラメータ生成指示手段の指示に応じて、複数種類のパラメータについて該パラメータの値をランダムに生成するパラメータ生成手段であって、パラメータ種類選択手段で選択された種類のパラメータについてのみパラメータの値をランダムに生成するパラメータ生成手段と、該パラメータ生成手段で生成された複数種類のパラメータに基づいて楽曲を生成する楽曲生成手段と、曲の躍動感を選択する躍動感選択手段と、を備え、前記躍動感選択手段で選択された躍動感に基づいて、跳躍の回数を規定する跳躍回数パラメータと、シンコペーションの回数を規定するシンコペーション回数パラメータとのランダム生成の有無を制御するようにしたことを特徴とする。
【0009】
上記のように構成された請求項3の楽曲生成装置によれば、請求項1と同様な作用効果が得られるとともに、ランダム生成するパラメータの種類を選択できるので、より細かなメロディ生成特性をユーザーが選択することもできる。
【0010】
本発明の請求項4の記録媒体は、コンピュータで楽曲を生成するための楽曲生成プログラムを記録したコンピュータ読み取り可能な記録媒体であって、楽曲の特徴を略規定するパラメータを生成するように指示する入力処理を行うステップと、曲の躍動感を選択する処理を行うステップと、選択された躍動感に基づいて、跳躍の回数を規定する跳躍回数パラメータと、シンコペーションの回数を規定するシンコペーション回数パラメータとのランダム生成の有無を制御するとともに、前記入力処理の指示に応じて、複数種類のパラメータについて該パラメータの値をランダムに生成するステップと、該生成された複数種類のパラメータに基づいて楽曲を生成するステップと、をコンピュータで実行する楽曲生成プログラムを記録したものであり、この請求項4のコンピュータ読み取り可能な記録媒体に記録された楽曲生成プログラムの実行によれば、請求項1と同様な作用効果が得られる。
【0011】
【発明の実施の形態】
以下、図面を参照して本発明の一実施の形態について説明する。図3は本発明の楽曲生成装置をパーソナルコンピュータとソフトウエアで構成した実施形態のブロック図である。パーソナルコンピュータは、CPU1、ROM2、RAM3、タイマ4、キーボード5、マウス6、ディスプレイ7、音源回路8、効果回路9、サウンドシステム10、外部記憶装置11、MIDIインターフェース12、通信インターフェース13およびバス14を備えている。なお、音源回路8、効果回路9およびMIDIインターフェース12はサウンドカード等により実装されている。
【0012】
CPU1は例えば外部記憶装置11のハードディスク装置(HDD)にインストールされたOS(オペレーティングシステム)によりRAM3のワーキングエリアを使用して通常の制御を行う。具体的には、例えばディスプレイ7の表示の制御を行い、キーボード5やマウス6の操作に応じたデータを入力し、ディスプレイ7上のマウスポインタ(カーソル)の表示位置の制御やマウス6のクリック操作の検出等を行う。また、音源回路8はCPU1から入力されるデータ(例えば演奏情報)に応じた楽音信号を発生し、効果回路9で各種効果が付与されてアンプやスピーカ等のサウンドシステム10で楽音が発生される。
【0013】
外部記憶装置11はハードディスク装置(HDD)、フロッピィディスク装置(FDD)、CD−ROM装置、光磁気ディスク(MO)装置、デジタル多目的ディスク(DVD)装置等であり、例えばこの外部記憶装置11から本発明の楽曲生成プログラムを供給する。また、外部記憶装置11は、生成した楽曲の情報を保存するために用いたり、メロディ生成時の基本的な情報となるメロディ生成用データのデータベースとして利用する。また、MIDIインターフェース12は他のMIDI機器Aとの間で各種データの授受を行うものであり、例えば生成したメロディのMIDIデータを出力して、MIDI機器Aで演奏することもできる。
【0014】
さらに、通信インターフェース13を介して通信ネットワークBに接続し、サーバコンピュータCから本発明の楽曲生成プログラムやメロディ生成用データなどの各種データの配信を受けるようにすることもできる。なお、この実施形態では、楽曲生成プログラムおよびメロディ生成用データは外部記憶装置11のハードディスク装置(HDD)に記憶されており、CPU1は、このハードディスク装置(HDD)の楽曲生成プログラムをRAM3に展開し、このRAM3のプログラムに基づいて楽曲の自動生成の動作を制御する。
【0015】
図1は実施形態における楽曲生成の流れを説明する概念図である。「メロディ生成用データ」とは、コード進行の情報、楽節構成を示す情報、各楽節における開始音と終了音の情報等で構成されており、これらの情報は曲のスタイル(ロック、ポップス、ジャズ等)などに応じてテンプレートとしてデータベース外部記憶装置11に記憶されている。そして、このメロディ生成用データがユーザーが選択したスタイルに応じてデータベースから読み出されてRAM3にロードされる。なお、メロディ生成用データは設定したテンポや調あるいは拍子などに応じて読み出すようにしてもよい。
【0016】
また、「メロディ生成の音楽ルール」とは、例えば“非和声音を和声音に解決させる”とか“旋律的音程(メロディック・インターバル)が増音程あるいは減音程となる跳躍は禁止する”など、音楽的に自然な感じになるようにメロディを規制するための各種のルールであり、これらのルールの情報は外部記憶装置11から楽曲生成プログラムとともに供給され、RAM3に記憶される。なお、このメロディ生成の音楽ルールは、常時すべてのルールを採用するとは限らず、どのようなルールを採用するかは曲のスタイル等に応じて適宜選択的に決められる。
【0017】
この実施形態では楽曲の特徴を略規定するパラメータとして、1小節内の音符の数を規定する「音符数パラメータ」、跳躍部分(連続する2つの音の音程が3度以上の部分)の音程の最大値を規定する「度数パラメータ」、1小節内での跳躍の回数を規定する「跳躍回数パラメータ」、および、1小節内でのシンコペーションの回数を規定する「シンコペーション回数パラメータ」を用いている。ただし、「跳躍回数パラメータ」と「シンコペーション回数パラメータ」で示される回数だけ跳躍やシンコペーションが含まれるメロディが必ずしも生成されるわけではない。なぜなら、「音符数パラメータ」で規定される音符数以上の跳躍やシンコペーションはありえないからである。したがって、「跳躍回数パラメータ」と「シンコペーション回数パラメータ」は、跳躍回数とシンコペーション回数の最大値とも言える。
【0018】
音符数パラメータは音符数条件で決まるランダム特性に応じて生成され、度数パラメータと跳躍回数パラメータは跳躍条件で決まるランダム特性に応じて生成される。また、シンコペーション回数パラメータはシンコペーション条件で決まるランダム特性で生成される。
【0019】
なお、この実施形態では、音符数条件、跳躍条件、シンコペーション条件に対応するランダム特性とは、その条件に対応する各パラメータをランダムに生成するとき、パラメータ値としてランダム生成した数値が取り得る値域を規定することにより決められた特性である。
【0020】
そして、メロディ生成用データ、音符数条件で生成された音符数パラメータ、跳躍条件で生成された度数パラメータと跳躍回数パラメータ、シンコペーション条件で生成されたシンコペーション回数パラメータ、および、音楽ルールに基づいてメロディが生成される。
【0021】
メロディ生成用データ、音符数パラメータ、度数パラメータ、跳躍回数パラメータ、および、シンコペーション回数パラメータは、それぞれ個別に設定することもできるが、後述説明する操作スイッチ(マウスで操作する画面スイッチ)の操作に応じて、音符数条件、跳躍条件およびシンコペーション条件のランダム特性(ランダム選択するときの値域)を一括コントロールすることができる。これにより、音符数パラメータ、度数パラメータ、跳躍回数パラメータおよびシンコペーション回数パラメータが、操作スイッチの操作(一括コントロール)に応じたランダム特性に従ってそれぞれ生成される。なお、メロディ生成用データも、操作スイッチの操作に応じて新たなメロディ生成用データを使用するか否かがコントロールされる。
【0022】
図2はパラメータを一括コントロールする時の一括操作ウインドウの一例を示す図であり、この一括操作ウインドウには、マウス6の操作で移動するマウスポインタPおよびマウスのクリックにより操作される各種画面スイッチが表示される。すなわち、パラメータ生成指示手段としてのメロディ生成スイッチの変化幅小スイッチSW1および変化幅大スイッチSW2、生成する曲のスタイルを指示するスタイルスイッチSW3、曲のテンポを設定するテンポスイッチSW4、曲の躍動感を選択する躍動感1スイッチSW5、躍動感2スイッチSW6、躍動感3スイッチSW7が表示される。
【0023】
また、生成した曲のデータを保存するときに操作する保存スイッチSW8、パラメータを個別に設定する個別操作ウインドウに切り替えるときに操作する個別スイッチSW9、および、処理を終了するときに操作する終了スイッチSW10が表示される。各スイッチSW1、SW2、SW3、SW5、SW6、SW7、SW8、SW9およびSW10は、その上にマウスポインタPを移動してマウス6をクリックすることでスイッチがオンとなる。また、テンポ設定スイッチSW4はマウスポインタPで上下にドラッグすることによりテンポが設定される。
【0024】
図8は個別操作ウインドウの一例を示す図である。個別操作ウインドウには、メロディ生成用データをテンプレートから選択するスイッチ、選択したメロディ生成用データの楽節構成と楽節における開始音と終了音で決まる「ピッチカーブ」を変形するスイッチ、選択したメロディ生成用データのコード進行を変形するスイッチ等のスイッチ群SG1が表示され、メロディ生成用データを作成するためにピッチカーブを生成するスイッチやコード進行を生成するスイッチ、曲の調性を指定するスイッチやスタイルを指定するスイッチを含むスイッチ群SG2が表示される。また、この例では、第1楽節〜第4楽節毎に、音符数、跳躍の度数、跳躍の回数、シンコペーションの回数、およびその他のパラメータを小節毎に設定するためのスイッチからなるスイッチ群SG3、SG4、SG5、SG6が表示される。そして、この個別操作ウインドウ上でのスイッチの操作により各種パラメータを個別に設定することができる。また、この個別操作ウインドウを閉じるときに操作する閉じるスイッチSW11が表示され、この閉じるスイッチSW11の操作で一括操作ウインドウに戻る。
【0025】
次に、実施形態における一括コントロール時のスイッチ操作と、このスイッチ操作に対応する音符数条件、跳躍条件およびシンコペーション条件の例を次表1に示す。
【0026】
【表1】
【0027】
メロディ生成スイッチの変化幅小スイッチSW1および変化幅大スイッチSW2は、パラメータの生成を指示する役割の他に、新たに生成するメロディが、前回生成したメロディからどの程度変化するかを示す生成の変化幅の大小を決める役割もしており、変化幅小スイッチSW1を操作したときは変化幅が小さくなる傾向になり、変化幅大スイッチSW2を操作したときは変化幅が大きくなる傾向となる。
【0028】
すなわち、表の1段目に示したように、変化幅小スイッチSW1の操作で「生成の変化幅」の「小」が指定された時には、音符数条件は2〜4で、この2〜4の範囲内でランダムに生成した値(個数)が音符数パラメータとる。また、跳躍条件(度数)は3〜4で、この3〜4の範囲内でランダムに生成した値(度数)が度数パラメータとなり、跳躍条件(回数)は0〜2で、この0〜2の範囲内でランダムに生成した値(回数)が跳躍回数パラメータとなる。また、シンコペーション条件は0〜1で、この0〜1の範囲内でランダムに生成した値(回数)がシンコペーション回数パラメータとなる。なお、メロディ生成用データについては新たなデータのロードは無し(「無」)とする。すなわち、今回使用するメロディ生成用データは、前回使用したメロディ生成用データと同じであるため、生成の変化幅は比較的小さなものとなる。
【0029】
一方、表の2段目に示したように、変化幅大スイッチSW2の操作で「生成の変化幅」の「大」が指定された時には、音符数条件は2〜8、跳躍条件(度数)は3〜8、跳躍条件(回数)は0〜4、シンコペーション条件は0〜4で、これらの範囲内で、音符数パラメータ、度数パラメータ、跳躍回数パラメータおよびシンコペーション回数パラメータがそれぞれ生成される。また、メロディ生成用データについては新たなデータのロードを有り(「有」)とし、各種パラメータの生成と同時にメロディ生成用データも選択されているスタイルの中からランダムにロードされる。すなわち、今回使用するメロディ生成用データは、前回使用したメロディ生成用データとは異なるものとなるので、生成の変化幅は大きくなる。
【0030】
躍動感は生成するメロディの変化の頻度等に係わるもので、躍動感1スイッチSW5が操作されると小さな躍動感(表の3段目の「1」)が、躍動感2スイッチSW6が操作されると中程度の躍動感(表の4段目の「2」)が、躍動感3スイッチSW7が操作されると大きな躍動感(表の5段目の「3」)がそれぞれ選択される。「躍動感」の「1」では跳躍条件とシンコペーション条件はいずれも無しで、音符数パラメータだけが生成され、「躍動感」の「2」ではシンコペーション条件は無しで、音符数パラメータ、度数パラメータおよび跳躍回数パラメータが生成される。また、「躍動感」の「3」では跳躍条件もシンコペーション条件も有りで、前記のように音符数パラメータ、度数パラメータ、跳躍回数パラメータおよびシンコペーション回数パラメータがそれぞれ生成される。
【0031】
図4〜図7はCPU1が実行する楽曲生成プログラムのフローチャートであり、各フローチャートに基づいてCPU1の制御動作について説明する。図4のメインフローの処理は図示しないメイン画面で一括コントロールの処理が指定されたときに起動され、ステップS1で、図2に示した一括操作ウィンドウを開く処理、躍動感、スタイル、テンポ、選択されているスタイルのメロディ生成用データ、前記各種パラメータ等のデフォルト値の設定など、初期設定を行う。
【0032】
次に、ステップS2で、変化幅大スイッチSW2がオンであるか否かを判定し、オンでなければステップS3に進み、オンであれば、ステップS4で、選択されているスタイルのメロディ生成用データのうちの何れかをランダムにロードし、ステップS5に進む。ステップS3では、変化幅小スイッチSW1がオンであるか否かを判定し、オンでなければステップS12に進み、オンであればステップS5に進む。
【0033】
ステップS5では図5の1小節内音符数処理を行い、次に、ステップS6で「躍動感」は“2”(躍動感2スイッチSW6がオン)または“3”(躍動感3スイッチSW7がオン)であるか否かを判定し、いずれでもなければステップS10に進み、「躍動感」が“2”または“3”であれば、ステップS7で図6の音の跳躍処理を行ってステップS8に進む。ステップS8では「躍動感」は“3”であるか否かを判定し、「躍動感」が“3”でなければステップS10に進み、「躍動感」が“3”であればステップS9で図7のシンコペーション処理を行ってステップS10に進む。
【0034】
ステップS10では、メロディ生成用データと、後述の1小節内音符数処理(ステップS5)、音の跳躍処理(ステップS7)およびシンコペーション処理(ステップS9)で生成した各パラメータに基づいてメロディを生成する。なお、変更のないパラメータは前回のパラメータを用いる。そして、ステップS11で設定されているテンポにてメロディを再生してステップS2に戻る。
【0035】
以上の処理により、変化幅大スイッチSW2がオンまたは変化幅小スイッチSW1がオンとなることによりパラメータが生成される。また、変化幅小スイッチSW1がオンの場合はステップS4を通らないことにより、それまでに設定されているメロディ生成用データ(デフォルトも含む)に基づいてメロディが生成され、変化幅大スイッチSW2がオンの場合はステップS4で新たにメロディ生成用データをロードして、この新たなメロディ生成用データに基づいてメロディが生成される。さらに、「躍動感」の値に応じてステップS7およびステップS8が選択的に処理されるので、「躍動感」に応じたパラメータが生成される。
【0036】
ステップS3で、変化幅小スイッチSW1がオンでない場合(変化幅大スイッチSW2もオンでない場合)は、ステップS12で個別スイッチSW9がオンであるか否かを判定し、オンでなければステップS14に進み、オンであれば、ステップS13で個別操作ウインドウを開いてステップS14に進む。ステップS14では、閉じるスイッチSW11がオンであるか否かを判定し、オンでなければステップS16に進み、オンであれば、ステップS15で個別操作ウインドウを閉じてステップS16に進む。ステップS16では、その他のスイッチがオンであるか否かを判定し、オンでなければステップS18に進み、オンであれば、ステップS17で、操作されたスイッチに応じた処理を行う。そして、ステップS18で終了スイッチSW10がオンであるか否かを判定し、オンでなければステップS2に戻り、オンであれば処理を終了する。
【0037】
なお、ステップS17のその他のスイッチの処理としては、躍動感1スイッチSW5、躍動感2スイッチSW6、躍動感3スイッチSW7のオンにより「躍動感」の「1」または「2」または「3」として記憶する処理、スタイルスイッチSW3の操作に応じたスタイルを選択する処理、テンポスイッチSW4の操作に応じてテンポを変更する処理、個別操作ウインドウにおける個別操作の設定処理、保存スイッチSW8の操作に応じたデータのセーブ処理などがある。
【0038】
次に、図5〜図7の処理でパラメータを生成する処理について説明する。図5の1小節内音符数処理では、ステップS21で小節数をカウントするレジスタMの値に“1”をセットするとともに、ステップS27での判定処理とステップS28でのレジスタMの内容のインクリメントにより、ステップS22〜S26の処理を小節毎に繰り返す。ステップS22では、0〜10の整数の中から整数のランダム数値(以下、同様とする。)を発生し、ステップS23で「生成の変化幅」が「小」に指定されているか否かを判定し、「小」であればステップS24に進み、「小」でなければ(「大」に指定されている場合。以下同様。)ステップS25に進む。
【0039】
ステップS24ではランダム数値が2〜4の何れかの値であるか否かを判定し、2〜4のいずれの値でもなければステップS22に戻る。2〜4のいずれかの値であれば、ステップS26でランダム数値を現在の小節(第M小節(MはレジスタMの内容も示す。)の1小節内音符数として採用する。すなわちそのランダム数値がその小節の音符数パラメータとなる。また、ステップS25では、ランダム数値が2〜8の何れかの値であるか否かを判定し、2〜8のいずれの値でもなければステップS22に戻り、2〜8のいずれかの値であれば、上記同様にステップS26でランダム数値を現在の小節の1小節内音符数(音符数パラメータ)として採用し、ステップS27に進む。
【0040】
ステップS27ではレジスタMの内容は最終小節を示しているか否かを判定し、最終小節でなければ、ステップS28でレジスタMの内容をインクリメントしてステップS22に戻り、最終小節であれば元のルーチンに復帰する。
【0041】
以上の1小節内音符数処理により、「生成変化幅」が「小」に指定されているか「大」に指定されているかに応じて、「ランダム数値が2〜4の範囲に有るか」または「ランダム数値が2〜8の範囲に有るか」という異なるランダム特性に基づいて、音符数パラメータが各小節毎に生成される。
【0042】
図6の音の跳躍処理では、ステップS31でのレジスタMへの“1”のセット、ステップS303での判定処理およびステップS304でのインクリメントによりステップS32〜S302の処理を小節毎に繰り返す。ステップS32ではランダム数値を発生し、ステップS33で「生成の変化幅」が「小」に指定されているか否かを判定し、「小」であればステップS34に進み、「小」でなければステップS35に進む。
【0043】
ステップS34ではランダム数値が3〜4の何れかの値であるか否かを判定し、3〜4のいずれの値でもなければステップS32に戻る。3〜4のいずれかの値であれば、ステップS36でランダム数値を現在の小節(第M小節)の跳躍度数として採用する。すなわちそのランダム数値がその小節の度数パラメータとなる。また、ステップS35では、ランダム数値が3〜8の何れかの値であるか否かを判定し、3〜8のいずれの値でもなければステップS32に戻り、3〜8のいずれかの値であれば、上記同様にステップS36でランダム数値を現在の小節の跳躍度数(度数パラメータ)として採用し、ステップS37に進む。
【0044】
ステップS37ではランダム数値を発生し、ステップS38で「生成の変化幅」が「小」に指定されているか否かを判定し、「小」であればステップS39に進み、「小」でなければステップS301に進む。ステップS39ではランダム数値が0〜2の何れかの値であるか否かを判定し、0〜2のいずれの値でもなければステップS37に戻る。0〜2のいずれかの値であれば、ステップS302でランダム数値を現在の小節(第M小節)の1小節内の跳躍回数として採用する。すなわちそのランダム数値がその小節の跳躍回数パラメータとなる。また、ステップS301では、ランダム数値が0〜4の何れかの値であるか否かを判定し、0〜4のいずれの値でもなければステップS37に戻り、0〜4のいずれかの値であれば、上記同様にステップS302でランダム数値を現在の小節の跳躍回数(跳躍回数パラメータ)として採用し、ステップS303に進む。
【0045】
ステップS303ではレジスタMの内容が最終小節を示しているか否かを判定し、最終小節でなければ、ステップS304でレジスタMの内容をインクリメントしてステップS32に戻り、最終小節であれば元のルーチンに復帰する。
【0046】
以上の音の跳躍処理により、「生成変化幅」が「小」に指定されているか「大」に指定されているかに応じて、「ランダム数値が3〜8の範囲に有るか」または「ランダム数値が3〜8の範囲に有るか」という異なるランダム特性に基づいて度数パラメータが各小節毎に生成される。また、「ランダム数値が0〜2の範囲に有るか」または「ランダム数値が0〜4の範囲に有るか」という異なるランダム特性に基づいて跳躍回数パラメータが各小節毎に生成される。
【0047】
図7のシンコペーション処理では、ステップS41でのレジスタMへの“1”のセット、ステップS47での判定処理およびステップS48でのインクリメントによりステップS42〜S46の処理を小節毎に繰り返す。ステップS42ではランダム数値を発生し、ステップS43で「生成の変化幅」が「小」に指定されているか否かを判定し、「小」であればステップS44に進み、「小」でなければステップS45に進む。
【0048】
ステップS44ではランダム数値が0〜1の何れかの値であるか否かを判定し、0〜1のいずれの値でもなければステップS42に戻る。0〜1のいずれかの値であれば、ステップS46でランダム数値を現在の小節(第M小節)の1小節内でのシンコペーションの回数として採用する。すなわちそのランダム数値がその小節のシンコペーション回数パラメータとなる。また、ステップS45では、ランダム数値が0〜4の何れかの値であるか否かを判定し、0〜4のいずれの値でもなければステップS42に戻り、0〜4のいずれかの値であれば、上記同様にステップS46でランダム数値を現在の小節の1小節内のシンコペーションの回数(シンコペーション回数パラメータ)として採用し、ステップS47に進む。
【0049】
ステップS47ではレジスタMの内容は最終小節を示しているか否かを判定し、最終小節でなければ、ステップS48でレジスタMの内容をインクリメントしてステップS42に戻り、最終小節であれば元のルーチンに復帰する。
【0050】
以上のシンコペーション処理により、「生成変化幅」が「小」に指定されているか「大」に指定されているかに応じて、「ランダム数値が0〜1の範囲に有るか」または「ランダム数値が0〜4の範囲に有るか」という異なるランダム特性に基づいて、シンコペーション回数パラメータが各小節毎に生成される。
【0051】
以上のように、メロディ生成スイッチの変化幅小スイッチSW1と変化幅大スイッチSW2のような2つのタイプのスイッチなど、複数タイプのパラメータ生成指示手段のタイプに応じて異なるランダム特性(パラメータ値の取り得る値域)により、パラメータ値がランダム生成されるので、タイプを選択するだけでそのタイプに応じた楽曲を自動作曲することができる。
【0052】
また、実施形態では躍動感1スイッチSW5、躍動感2スイッチSW6、躍動感3スイッチSW7の3つのスイッチにより、跳躍の度数パラメータ、跳躍回数パラメータおよびシンコペーション回数パラメータのうち、ランダム生成するパラメータの種類(実施形態では組合せ)を選択できる(表1参照)。また、図4のステップS10の処理では、変更のないパラメータは前回のパラメータを用いてメロディ生成するようにしている。したがって、選択しなかった種類のパラメータを既存のパラメータとするとともにこれと共にランダム生成したパラメータに応じた楽曲の自動作曲を行うことができ、自動作曲の自由度も増す。なお、実施形態では躍動感(1、2、3)を指定することでパラメータの種類を間接的に選択するようにしているが、一括コントロールでパラメータを生成するとき、パラメータの種類を選択して、ランダム生成するパラメータと生成しないパラメータを選択できるようにしてもよい。
【0053】
生成したメロディの演奏データのフォーマットは、演奏イベントの発生時刻を1つ前のイベントからの時間(クロック数で示すタイミング)で表した「イベント+相対時間」という形式、演奏イベントの発生時刻を曲や小節内における絶対時間で表した「イベント+絶対時間」という形式、音符の音高と符長あるいは休符と休符長で演奏データを表した「音高(休符)+符長」という形式、あるいは演奏の最小分解能毎(実施形態のクロック)にメモリの領域を確保し、演奏イベントの発生する時刻に対応するメモリ領域の演奏イベントを記憶したいわゆる「ベタ方式」の形式など、どのような形式でもよい。
【0054】
実施形態では、メロディ生成スイッチ(変化幅小スイッチ、変化幅大スイッチ)の操作によって、一括パラメータ生成を行うとともに生成したパラメータでメロディ生成を行うようにしているが、例えば、「変化幅大」、「変化幅小」のスイッチで一括パラメータ生成を行い、別途設けた「メロディ生成」のスイッチでメロディ生成を実行するなど、一括パラメータ生成とメロディ生成を別の操作で指示するようにしてもよい。
【0055】
また、実施形態ではメロディ生成の変化幅を「大」、「小」の2段階にしたが、3段以上の多くの段数を指定するものでもよく、さらに、スライダスイッチ等の指定に応じた実質的に無段階(連続的)なものでもよい。
【0056】
モチーフメロディあるいはモチーフリズムを入力して、これを発展させてメロディ生成用データを生成したり、分析して特徴を抽出してその特徴を基にメロディ生成用データを選択するようなメロディ生成方式にも適用できる。この場合、モチーフの反映度などのオプションを設定し、反映度をユーザーが変更できるようにしてもよい。そして、本発明によって生成したパラメータと入力されたモチーフメロディやそれを用いたメロディ生成用データからメロディを生成すればよい。
【0057】
実施形態のようにメロディ生成用データをデーターベースに予め記憶しておくものに限らず、メロディ生成用データを演算によって生成する方式にも適用できる。この場合、メロディ生成用データを生成するときの演算パラメータの生成に本発明のようにランダム生成を行うこともできる。
【0058】
パラメータ値をランダム生成した後、個別操作画面にて一部のパラメータ値を修正するようにしてもよい。また一括操作画面にて生成したパラメータ値を個別操作画面に表示するようにし、実際にどのようなパラメータ値が生成されたのかをユーザーが確認できるようにしてもよい。
【0059】
実施形態では、メロディを生成する場合について説明したが、本発明はメロディに限らずリズムや伴奏などの楽曲を生成する場合にも適用できる。
【0060】
また、ランダム生成するパラメータは実施形態のものに限らず、他のパラメータでもよい。
【0061】
また、以上の実施形態はパーソナルコンピュータとソフトウエアで構成したものであるが、本発明を電子楽器に適用することもできる。また、音源装置、シーケンサ、エフェクタなどそれぞれが別体の装置であって、MIDIあるいは各種ネットワーク等の通信手段を用いて各装置を接続するようなものであってもよい。
【0062】
【発明の効果】
以上説明したように、本発明の請求項1の楽曲生成装置または請求項4のコンピュータ読み取り可能な記録媒体に記録された楽曲生成プログラムの実行によれば、パラメータの生成を指示するだけで略規定するパラメータを一括して生成できるので、パラメータの設定の手間を省くことができ、簡単に自動作曲を行える。
【0063】
本発明の請求項2の楽曲生成装置によれば、請求項1と同様な作用効果が得られるとともに、パラメータ生成指示手段として例えば複数種類のスイッチなど複数タイプのスイッチを用いてそのタイプを選択するだけでそのタイプに応じた楽曲を自動作曲することができ、大幅な変更や若干の変更等のメロディ生成時の特性をユーザーが選択できる。
【0064】
本発明の請求項3の楽曲生成装置によれば、請求項1と同様な作用効果が得られるとともに、ランダム生成するパラメータの種類を選択できるので、より細かなメロディ生成特性をユーザーが選択することもできる。
【図面の簡単な説明】
【図1】本発明の実施形態における楽曲生成の流れを説明する概念図である。
【図2】実施形態における一括操作ウインドウの一例を示す図である。
【図3】実施形態のブロック図である。
【図4】実施形態におけるメインルーチンのフローチャートである。
【図5】実施形態における1小節内音符数処理のフローチャートである。
【図6】実施形態における音の跳躍処理のフローチャートである。
【図7】実施形態におけるシンコペーション処理のフローチャートである。
【図8】実施形態における個別操作ウインドウの一例を示す図である。
【符号の説明】
1…CPU、2…ROM、3…RAM、6…マウス、7…ディスプレイ、11…外部記憶装置、12…MIDIインターフェース、13…通信インターフェース、SW1…変化幅小スイッチ、SW2…変化幅大スイッチ。
Claims (4)
- 楽曲の特徴を略規定するパラメータを生成するように指示するパラメータ生成指示手段と、
該パラメータ生成指示手段の指示に応じて、複数種類のパラメータについて該パラメータの値をランダムに生成するパラメータ生成手段と、
該パラメータ生成手段で生成された複数種類のパラメータに基づいて楽曲を生成する楽曲生成手段と、
曲の躍動感を選択する躍動感選択手段と、
を備え、
前記躍動感選択手段で選択された躍動感に基づいて、跳躍の回数を規定する跳躍回数パラメータと、シンコペーションの回数を規定するシンコペーション回数パラメータとのランダム生成の有無を制御するようにした
ことを特徴とする楽曲生成装置。 - 楽曲の特徴を略規定するパラメータを生成するように指示する複数タイプのパラメータ生成指示手段と、
該パラメータ生成指示手段の指示に応じて、複数種類のパラメータについて該パラメータの値をランダムに生成するパラメータ生成手段であって、該パラメータ生成指示手段のタイプに応じて異なるランダム特性でパラメータの値をランダムに生成するパラメータ生成手段と、
該パラメータ生成手段で生成された複数種類のパラメータに基づいて楽曲を生成する楽曲生成手段と、
曲の躍動感を選択する躍動感選択手段と、
を備え、
前記躍動感選択手段で選択された躍動感に基づいて、跳躍の回数を規定する跳躍回数パラメータと、シンコペーションの回数を規定するシンコペーション回数パラメータとのランダム生成の有無を制御するようにした
ことを特徴とする楽曲生成装置。 - 楽曲の特徴を略規定するパラメータを生成するように指示する複数タイプのパラメータ生成指示手段と、
パラメータの種類を選択するパラメータ種類選択手段と、
前記パラメータ生成指示手段の指示に応じて、複数種類のパラメータについて該パラメータの値をランダムに生成するパラメータ生成手段であって、パラメータ種類選択手段で選択された種類のパラメータについてのみパラメータの値をランダムに生成するパラメータ生成手段と、
該パラメータ生成手段で生成された複数種類のパラメータに基づいて楽曲を生成する楽曲生成手段と、
曲の躍動感を選択する躍動感選択手段と、
を備え、
前記躍動感選択手段で選択された躍動感に基づいて、跳躍の回数を規定する跳躍回数パラメータと、シンコペーションの回数を規定するシンコペーション回数パラメータとのランダム生成の有無を制御するようにした
たことを特徴とする楽曲生成装置。 - コンピュータで楽曲を生成するための楽曲生成プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
楽曲の特徴を略規定するパラメータを生成するように指示する入力処理を行うステップと、
曲の躍動感を選択する処理を行うステップと、
選択された躍動感に基づいて、跳躍の回数を規定する跳躍回数パラメータと、シンコペーションの回数を規定するシンコペーション回数パラメータとのランダム生成の有無を制御するとともに、前記入力処理の指示に応じて、複数種類のパラメータについて該パラメータの値をランダムに生成するステップと、
該生成された複数種類のパラメータに基づいて楽曲を生成するステップと、
をコンピュータで実行する楽曲生成プログラムを記録したコンピュータ読み取り可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33456498A JP3799843B2 (ja) | 1998-11-25 | 1998-11-25 | 楽曲生成装置および楽曲生成プログラムを記録したコンピュータ読み取り可能な記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33456498A JP3799843B2 (ja) | 1998-11-25 | 1998-11-25 | 楽曲生成装置および楽曲生成プログラムを記録したコンピュータ読み取り可能な記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000163052A JP2000163052A (ja) | 2000-06-16 |
JP3799843B2 true JP3799843B2 (ja) | 2006-07-19 |
Family
ID=18278821
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP33456498A Expired - Fee Related JP3799843B2 (ja) | 1998-11-25 | 1998-11-25 | 楽曲生成装置および楽曲生成プログラムを記録したコンピュータ読み取り可能な記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3799843B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4506998B2 (ja) * | 2007-07-12 | 2010-07-21 | Necソフト株式会社 | 自動作曲装置および自動作曲方法ならびにプログラム |
JP6160598B2 (ja) | 2014-11-20 | 2017-07-12 | カシオ計算機株式会社 | 自動作曲装置、方法、およびプログラム |
JP6160599B2 (ja) | 2014-11-20 | 2017-07-12 | カシオ計算機株式会社 | 自動作曲装置、方法、およびプログラム |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07111622B2 (ja) * | 1987-06-15 | 1995-11-29 | カシオ計算機株式会社 | 自動作曲機 |
JP2666319B2 (ja) * | 1988-01-25 | 1997-10-22 | カシオ計算機株式会社 | 自動作曲機 |
JP2759110B2 (ja) * | 1996-11-05 | 1998-05-28 | カシオ計算機株式会社 | 自動作曲機 |
JP2743919B2 (ja) * | 1997-01-22 | 1998-04-28 | ヤマハ株式会社 | リズムパターン生成装置 |
-
1998
- 1998-11-25 JP JP33456498A patent/JP3799843B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2000163052A (ja) | 2000-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6175072B1 (en) | Automatic music composing apparatus and method | |
US6166313A (en) | Musical performance data editing apparatus and method | |
JP3637775B2 (ja) | メロディ生成装置と記録媒体 | |
JPH10124049A (ja) | 演奏情報作成装置及び演奏情報作成方法並びに演奏情報作成制御プログラムを記録した媒体 | |
JP2000231381A (ja) | メロディ生成装置及びリズム生成装置と記録媒体 | |
JP2000056769A (ja) | 演奏情報変換装置および演奏情報変換制御プログラムを記録した媒体 | |
JP3821103B2 (ja) | 情報表示方法および情報表示装置、並びに、情報表示プログラムを記録した記録媒体 | |
JPH11352963A (ja) | 情報表示方法および情報表示プログラムが記録された記録媒体 | |
JP3799843B2 (ja) | 楽曲生成装置および楽曲生成プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP3567701B2 (ja) | 楽音データから和音を検出する和音検出方法および和音検出装置、ならびに、和音検出用プログラムを記録した記録媒体 | |
JP3407623B2 (ja) | 和音進行作成支援装置及び和音進行作成支援プログラムを記録した記録媒体 | |
JP3719151B2 (ja) | 演奏パターン処理装置、処理プログラム記録媒体及びデータ記録媒体 | |
JP3487176B2 (ja) | 演奏情報作成表示装置及びそのための記録媒体 | |
JP3843688B2 (ja) | 楽曲データ編集装置 | |
JP3775249B2 (ja) | 自動作曲装置及び自動作曲プログラム | |
JP3823951B2 (ja) | 演奏情報作成表示装置及びそのための記録媒体 | |
JP3267226B2 (ja) | 自動伴奏装置及び自動伴奏制御プログラムを記録した媒体 | |
JP3632487B2 (ja) | 電子楽器等における和音検出装置 | |
JP3709821B2 (ja) | 楽曲情報編集装置及び楽曲情報編集プログラム | |
JP2000112472A (ja) | 自動作曲装置と記録媒体 | |
JP3752940B2 (ja) | 自動作曲方法、自動作曲装置及び記録媒体 | |
JP3956961B2 (ja) | 演奏データ処理装置及び方法 | |
JP3972942B2 (ja) | 演奏パターン処理装置及び処理プログラム記録媒体 | |
JP3797180B2 (ja) | 楽譜表示装置及び楽譜表示プログラム | |
JP2000163064A (ja) | 楽曲生成装置および楽曲生成プログラムを記録した記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20051226 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060110 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060310 |
|
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: 20060404 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060417 |
|
R150 | Certificate of patent (=grant) 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 (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100512 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110512 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130512 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140512 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |