JP2621266B2 - 自動作曲機 - Google Patents
自動作曲機Info
- Publication number
- JP2621266B2 JP2621266B2 JP62325179A JP32517987A JP2621266B2 JP 2621266 B2 JP2621266 B2 JP 2621266B2 JP 62325179 A JP62325179 A JP 62325179A JP 32517987 A JP32517987 A JP 32517987A JP 2621266 B2 JP2621266 B2 JP 2621266B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- melody
- scale
- chord
- harmonic
- 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
Landscapes
- Auxiliary Devices For Music (AREA)
- Electrophonic Musical Instruments (AREA)
Description
【発明の詳細な説明】 [発明の技術分野] この発明は自動作曲機に関し、特に、原曲の変奏曲を
生成する装置に関する。
生成する装置に関する。
[背景] 与えられた曲の変奏曲をつくるには相当の音楽知識と
作曲技術が必要である。したがって、自動的に変奏曲を
生成する装置を実現するには、装置内に音楽知識とその
利用能力を組み込まなければならないと思われる。さら
に、変奏曲は、原曲の基本的な性格を維持することを特
徴とするから、原曲を評価する能力もこの種の自動作曲
機には必要である。
作曲技術が必要である。したがって、自動的に変奏曲を
生成する装置を実現するには、装置内に音楽知識とその
利用能力を組み込まなければならないと思われる。さら
に、変奏曲は、原曲の基本的な性格を維持することを特
徴とするから、原曲を評価する能力もこの種の自動作曲
機には必要である。
[発明の目的] この発明の目的は、与えられた原曲から、その変奏曲
を自動生成可能な自動作曲機を提供することである。
を自動生成可能な自動作曲機を提供することである。
[発明の構成、作用] この発明は、上記の目的を達成するため、原曲のメロ
ディを入力するメロディ入力手段と、コード進行を入力
するコード入力手段と、入力されたメロディとコード進
行とを基に、各区間ごとにメロディを分析して、メロデ
ィに含まれる非和声音を除去してアルペジオパターン
(分散和音のパターン)を抽出するアルペジオパターン
抽出手段と、変奏曲の非和声音の特徴パラメータを設定
する特徴パラメータ設定手段と、この特徴パラメータに
従って上記アルペジオパターンに非和声音を付与する非
和声音付与手段とを有することを特徴とする。
ディを入力するメロディ入力手段と、コード進行を入力
するコード入力手段と、入力されたメロディとコード進
行とを基に、各区間ごとにメロディを分析して、メロデ
ィに含まれる非和声音を除去してアルペジオパターン
(分散和音のパターン)を抽出するアルペジオパターン
抽出手段と、変奏曲の非和声音の特徴パラメータを設定
する特徴パラメータ設定手段と、この特徴パラメータに
従って上記アルペジオパターンに非和声音を付与する非
和声音付与手段とを有することを特徴とする。
本自動作曲機により生成される変奏曲は、原曲のメロ
ディが有するアルペジオパターンと同様なアルペジオパ
ターンを有する。これによって、原曲の性格が変奏曲に
も反映されることになる。
ディが有するアルペジオパターンと同様なアルペジオパ
ターンを有する。これによって、原曲の性格が変奏曲に
も反映されることになる。
また本自動作曲機を使用する上で、格別の音楽知識は
不要であり、一般の人にも容易に使用できる。
不要であり、一般の人にも容易に使用できる。
[実施例] 以下、本発明の実施例について説明する。
〈全体構成〉 第1図は実施例に係る自動作曲機の全体構成を示す。
CPU1は本装置における変奏曲生成機能を実現するための
制御装置である。入力装置2からは、原曲のメロディと
コード進行が入力され、それぞれ原メロディメモリ3と
コード進行メモリ4に記憶される。音階データメモリの
5はさまざまな種類の音階を表わす音階データを記憶す
るメモリであり、変奏曲の生成に先立ち、使用者は変奏
曲で使用する音階の種類をこの音階データメモリ5の音
階セットのなかから選択することができる。プロダクシ
ョンルールデータメモリ6には、非和声音を分類するた
めの音楽知識が記憶される。後述するように、この音楽
知識は、アルペジオに所望の非和声音を付与する際に利
用される。パルススケールメモリ7は各種のパルススケ
ール(パルススケールのセット)を記憶するメモリであ
り、使用者は変奏曲の生成を装置に指示するときに、変
奏曲にもたせるリズムの特徴を考慮して、このパルスス
ケールのセットのなかから所望のパルススケールを選択
することができる。選択されたパルススケールは変奏曲
のリズム(音長列)制御に利用される。生成メロディメ
モリ8には完成した変奏曲のデータが記憶される。外部
記憶装置9はメロディデータメモリ8に記憶した変奏曲
データの写し、別の音楽知識、別の作曲プログラムの資
源として利用される。ワークメモリ10にはCPU1で動作中
に使用する各種のデータ、変数が記憶される。モニター
11はCRT12、五線譜プリンタ13、楽音形成装置14、サウ
ンドシステム15から構成され、生成した変奏曲その他を
これらの装置を通して出力、表示できる。
CPU1は本装置における変奏曲生成機能を実現するための
制御装置である。入力装置2からは、原曲のメロディと
コード進行が入力され、それぞれ原メロディメモリ3と
コード進行メモリ4に記憶される。音階データメモリの
5はさまざまな種類の音階を表わす音階データを記憶す
るメモリであり、変奏曲の生成に先立ち、使用者は変奏
曲で使用する音階の種類をこの音階データメモリ5の音
階セットのなかから選択することができる。プロダクシ
ョンルールデータメモリ6には、非和声音を分類するた
めの音楽知識が記憶される。後述するように、この音楽
知識は、アルペジオに所望の非和声音を付与する際に利
用される。パルススケールメモリ7は各種のパルススケ
ール(パルススケールのセット)を記憶するメモリであ
り、使用者は変奏曲の生成を装置に指示するときに、変
奏曲にもたせるリズムの特徴を考慮して、このパルスス
ケールのセットのなかから所望のパルススケールを選択
することができる。選択されたパルススケールは変奏曲
のリズム(音長列)制御に利用される。生成メロディメ
モリ8には完成した変奏曲のデータが記憶される。外部
記憶装置9はメロディデータメモリ8に記憶した変奏曲
データの写し、別の音楽知識、別の作曲プログラムの資
源として利用される。ワークメモリ10にはCPU1で動作中
に使用する各種のデータ、変数が記憶される。モニター
11はCRT12、五線譜プリンタ13、楽音形成装置14、サウ
ンドシステム15から構成され、生成した変奏曲その他を
これらの装置を通して出力、表示できる。
〈ゼネラルフロー〉 変奏曲生成モードにおける本装置の全体フローを第2
図に示す。
図に示す。
2−1の初期設定において、使用者は自動作曲機に対
し、変奏曲生成のための基本的な情報を入力する。ここ
では、入力情報として、(1)BEAT(2)パルススケー
ルの種類(3)音階の種類が示されている。BEATは基本
単位長の音符(分解能)の数で表わされる1小節の長さ
であり、変奏曲の拍子を定めるものである。例えば、4
拍子系の曲に対しては、音符の基本単位長を16分音符と
すれば、BEAT=16を設定することにより、1小節の長さ
は4拍となる。2−1で設定するパルススケールの種類
は変奏曲のリズムを制御する情報として用いられる。パ
ルススケールは、基本単位長の間隔をもつ各パルス点に
音長の結合のしやすさまたは音長の分割のしやすさを表
わす重みが付けられたスケールである。2−1で選択さ
れる音階の種類は、変奏曲の生成で使用する音階を定め
る。
し、変奏曲生成のための基本的な情報を入力する。ここ
では、入力情報として、(1)BEAT(2)パルススケー
ルの種類(3)音階の種類が示されている。BEATは基本
単位長の音符(分解能)の数で表わされる1小節の長さ
であり、変奏曲の拍子を定めるものである。例えば、4
拍子系の曲に対しては、音符の基本単位長を16分音符と
すれば、BEAT=16を設定することにより、1小節の長さ
は4拍となる。2−1で設定するパルススケールの種類
は変奏曲のリズムを制御する情報として用いられる。パ
ルススケールは、基本単位長の間隔をもつ各パルス点に
音長の結合のしやすさまたは音長の分割のしやすさを表
わす重みが付けられたスケールである。2−1で選択さ
れる音階の種類は、変奏曲の生成で使用する音階を定め
る。
2−2では変奏曲の生成に必要なデータの読み込みが
実行される。必要なデータは、(1)原曲のメロディ
(2)コード進行(3)プロダクションルール(4)パ
ルススケールデータである。
実行される。必要なデータは、(1)原曲のメロディ
(2)コード進行(3)プロダクションルール(4)パ
ルススケールデータである。
2−3では変奏曲にもたせるべき非和声音の特徴が設
定される。
定される。
2−4ではコード進行の評価が行われ、ここで(1)
調性構造が抽出され、特殊なコードに対する(2)スケ
ールが決定される。
調性構造が抽出され、特殊なコードに対する(2)スケ
ールが決定される。
2−5でメロディの変奏が行われる。すなわち、
(1)特徴抽出において、原曲のリズムとアルペジオパ
ターンが区間(小節または小節に類似の区間)ごとに抽
出され、(2)生成において、変奏曲のメロディのアル
ペジオが生成され、生成されたアルペジオに対して非和
声の特徴に従う非和声音がプロダクションルールに基づ
いて付加され、メロディのリズム(音長列)が生成され
る。
(1)特徴抽出において、原曲のリズムとアルペジオパ
ターンが区間(小節または小節に類似の区間)ごとに抽
出され、(2)生成において、変奏曲のメロディのアル
ペジオが生成され、生成されたアルペジオに対して非和
声の特徴に従う非和声音がプロダクションルールに基づ
いて付加され、メロディのリズム(音長列)が生成され
る。
〈変数リスト、データ形式〉 後述するフローで使用される主な変数のリストを第3
図に、データ形式を第4図〜第8図に示す。なおデータ
形式は単なる例示であり、その他の任意の適当なデータ
形式が使用可能である。
図に、データ形式を第4図〜第8図に示す。なおデータ
形式は単なる例示であり、その他の任意の適当なデータ
形式が使用可能である。
〈データ読み込み〉 第2図はゼネラルフローに示すように、初期設定の
後、2−2においてデータ読み込みが実行される。各デ
ータの読み込みについて以下説明する。
後、2−2においてデータ読み込みが実行される。各デ
ータの読み込みについて以下説明する。
第10図はコード進行メモリ4(第1図)に記憶された
コード進行データ例を示す。第11図はコード進行メモリ
4に記憶されたコード進行データをロードするフローチ
ャートである。第11図に示すメモリマップでは、コード
の種類(CDi)は偶数アドレスに置かれ、そのコードの
長さが次のアドレス(奇数アドレス)に置かれている。
例えば、16進表示で507の値をもつCDiは、G7thのコード
を表わし、10の値をもつCRiはコード長が基本時間長
(例えば16分音符)の16倍であることを表わしている。
コード進行データ例を示す。第11図はコード進行メモリ
4に記憶されたコード進行データをロードするフローチ
ャートである。第11図に示すメモリマップでは、コード
の種類(CDi)は偶数アドレスに置かれ、そのコードの
長さが次のアドレス(奇数アドレス)に置かれている。
例えば、16進表示で507の値をもつCDiは、G7thのコード
を表わし、10の値をもつCRiはコード長が基本時間長
(例えば16分音符)の16倍であることを表わしている。
第10図において、レジスタCDiには作曲する曲のi番
目に出現するコードが入り、CRiにはその長さが入る。
またCDNOにはコードの総数が入る。その他の点について
は第10図の記載から明らかであるので説明は省略する。
目に出現するコードが入り、CRiにはその長さが入る。
またCDNOにはコードの総数が入る。その他の点について
は第10図の記載から明らかであるので説明は省略する。
第11図にパルススケールメモリ7(第1図)に記憶さ
れるパルススケールデータ例を示す。第12図はパルスス
ケールメモリ7から初期設定において選択した種類のパ
ルススケールをロードするフローチャートである。この
例の場合、初期設定において作曲する曲のリズムの特徴
を選択するために選択したパルススケールの種類(PUL
S)は、パルススケールメモリ7における特定のアドレ
ス(例えば0)を指しており、そのアドレスには、選択
したパルススケールデータの開始アドレスが入ってい
る。この開始アドレスには、パルススケールを構成する
サブスケール(0と1の重みしかもたないスケール)の
数が記憶され、後続アドレスに各サブスケールのデータ
が記憶されている。例えばノーマルのパルススケール
は、5つのサブスケールFFFF、5555、1111、0101、0001
(16進表現)から成り、対応する2進表現を第7図に示
してある。ノーマルのパルススケールの場合、最初のパ
ルス点(第11図の一番右側の位置)の重みが最大の5と
なっており、このことは、ノーマルのパルススケールを
選択した場合、生成されるリズムの各区間(小節)の最
初の位置に最も音符が存在しやすいことを表わしてい
る。
れるパルススケールデータ例を示す。第12図はパルスス
ケールメモリ7から初期設定において選択した種類のパ
ルススケールをロードするフローチャートである。この
例の場合、初期設定において作曲する曲のリズムの特徴
を選択するために選択したパルススケールの種類(PUL
S)は、パルススケールメモリ7における特定のアドレ
ス(例えば0)を指しており、そのアドレスには、選択
したパルススケールデータの開始アドレスが入ってい
る。この開始アドレスには、パルススケールを構成する
サブスケール(0と1の重みしかもたないスケール)の
数が記憶され、後続アドレスに各サブスケールのデータ
が記憶されている。例えばノーマルのパルススケール
は、5つのサブスケールFFFF、5555、1111、0101、0001
(16進表現)から成り、対応する2進表現を第7図に示
してある。ノーマルのパルススケールの場合、最初のパ
ルス点(第11図の一番右側の位置)の重みが最大の5と
なっており、このことは、ノーマルのパルススケールを
選択した場合、生成されるリズムの各区間(小節)の最
初の位置に最も音符が存在しやすいことを表わしてい
る。
第13図はプロダクションルールデータメモリ6(第1
図)に記憶されるプロダクションルールデータの例を示
している。第14図はこのメモリ6に記憶されたデータを
読み込むフローチャートである。プロダクションルール
の全体は、メロディに含まれる非和声音を分類するため
の音楽知識を表現したものであり、各プロダクションル
ールデータは、ルールの前提部を規定するデータとして
下限データLi、関数の種類を指示する関数指示データX
i、上限データUiを有し、ルールの結論部としてデータY
iとNiを有する。関数は分析するメロディの特徴を数値
表現したもので、その例は後述する第35図に示される。
データXiで示される関数の値FxiがLi以上でかつUi以下
である(Li≦Fxi≦Ui)というのがプロダクションルー
ルの前提部(命題)であり、この前提部が成立するとき
の結論がデータYiで示され、この前提部が不成立のとき
の結論がデータNiで示されている。そして、データYiま
たはNiが正の値をもつときは、その値が前向推論におい
て次に参照すべきプロダクションルールの番号を示し、
負の値をもつときは、その絶対値によって非和声音の種
類が表現される。前向推論は必ず1つのルールから開始
され、このルールのことをルートと呼ぶ。負の値をもつ
結論YiまたはNiをみつけたときに前向推論は終了する。
図)に記憶されるプロダクションルールデータの例を示
している。第14図はこのメモリ6に記憶されたデータを
読み込むフローチャートである。プロダクションルール
の全体は、メロディに含まれる非和声音を分類するため
の音楽知識を表現したものであり、各プロダクションル
ールデータは、ルールの前提部を規定するデータとして
下限データLi、関数の種類を指示する関数指示データX
i、上限データUiを有し、ルールの結論部としてデータY
iとNiを有する。関数は分析するメロディの特徴を数値
表現したもので、その例は後述する第35図に示される。
データXiで示される関数の値FxiがLi以上でかつUi以下
である(Li≦Fxi≦Ui)というのがプロダクションルー
ルの前提部(命題)であり、この前提部が成立するとき
の結論がデータYiで示され、この前提部が不成立のとき
の結論がデータNiで示されている。そして、データYiま
たはNiが正の値をもつときは、その値が前向推論におい
て次に参照すべきプロダクションルールの番号を示し、
負の値をもつときは、その絶対値によって非和声音の種
類が表現される。前向推論は必ず1つのルールから開始
され、このルールのことをルートと呼ぶ。負の値をもつ
結論YiまたはNiをみつけたときに前向推論は終了する。
第13図に示すプロダクションルールデータのアドレス
割当の場合、各プロダクションルールのデータは下限デ
ータLiのアドレスを先頭として5つの連続するアドレス
に、記憶される。詳細には5で割り切れるアドレスにLi
が、5で割った余り1のアドレスXiが、余り2のアドレ
スにUiが、余り3のアドレスにYiが、余り4のアドレス
にNiのデータが記憶される。
割当の場合、各プロダクションルールのデータは下限デ
ータLiのアドレスを先頭として5つの連続するアドレス
に、記憶される。詳細には5で割り切れるアドレスにLi
が、5で割った余り1のアドレスXiが、余り2のアドレ
スにUiが、余り3のアドレスにYiが、余り4のアドレス
にNiのデータが記憶される。
第14図においてRULENOには、プロダクションルールの
総数がセットされる。その他の点については上述の説明
とフローの記載から明らかである。
総数がセットされる。その他の点については上述の説明
とフローの記載から明らかである。
第15図は原メロディメモリ3に記憶されるメロディデ
ータの例を示す。第16図は原メロディのデータを読み込
むフローチャートである。第15図の場合、偶数アドレス
に音符の音高データMDiがその次の奇数アドレスに、そ
の音符の音長データMRiが記憶されている。第16図のMDN
Oにはモチーフの音符数がセットされる。
ータの例を示す。第16図は原メロディのデータを読み込
むフローチャートである。第15図の場合、偶数アドレス
に音符の音高データMDiがその次の奇数アドレスに、そ
の音符の音長データMRiが記憶されている。第16図のMDN
Oにはモチーフの音符数がセットされる。
以上でデータ読み込みの説明を終える。
〈非和声音の特徴設定〉 変奏曲に所望の非和声音が付加されるようにするた
め、ゼネラルフローの2−3では、非和声音の特徴が設
定される。この詳細を第17図に示す。この処理では、モ
ニター(CRT12)により各非和声音の種類aに対応する
キーワードを表示して、使用者の入力を促している(24
-2)。RSiの配列に使用者の入力した非和声音識別子a
の系列が入る(24-3、24-6、24-7)。入力の終りを示す
コードEOIを読んだとき、RSNOに非和声音の数を入れて
フローを抜ける(24-8)。
め、ゼネラルフローの2−3では、非和声音の特徴が設
定される。この詳細を第17図に示す。この処理では、モ
ニター(CRT12)により各非和声音の種類aに対応する
キーワードを表示して、使用者の入力を促している(24
-2)。RSiの配列に使用者の入力した非和声音識別子a
の系列が入る(24-3、24-6、24-7)。入力の終りを示す
コードEOIを読んだとき、RSNOに非和声音の数を入れて
フローを抜ける(24-8)。
ここにおいて、設定される非和声音の特徴{RSI}
は、原曲のメロディがもつ非和声音の特徴とは別のもの
である。
は、原曲のメロディがもつ非和声音の特徴とは別のもの
である。
なお、非和声音の特徴設定を自動的に行ってもよい。
これは、例えば、非和声音の識別子のセットのなかか
ら、乱数発生手段により選択した非和声音識別子を配列
{RSi}のなかに順次、格納することにより実現され
る。
これは、例えば、非和声音の識別子のセットのなかか
ら、乱数発生手段により選択した非和声音識別子を配列
{RSi}のなかに順次、格納することにより実現され
る。
また、いったん変奏曲を生成した後に、使用者にとっ
て望ましくない箇所があるときに、その区間における非
和声音の特徴を設定し直して再度、変奏メロディを生成
するようにしてもよい。
て望ましくない箇所があるときに、その区間における非
和声音の特徴を設定し直して再度、変奏メロディを生成
するようにしてもよい。
〈コード進行評価〉 本実施例の装置は、変奏曲の生成のために、コード進
行を評価する手段を備えている。コード進行評価におい
ては、曲の調性構造が抽出される。調性構造は曲の進行
に伴う調性の変化を表わしており、後述する変奏メロデ
ィ生成において、各区間で使用するスケール(音階)の
キーを選択するのに利用される。これにより、調性感が
確立された変奏曲が生成可能となる。さらに、コード進
行評価では、特殊なコードが使用される区間に対し、初
期設定された音階の種類にかかわらず、特殊なスケール
(調性と関係の少ないスケール)を使用するためのスケ
ール処理を実行している。
行を評価する手段を備えている。コード進行評価におい
ては、曲の調性構造が抽出される。調性構造は曲の進行
に伴う調性の変化を表わしており、後述する変奏メロデ
ィ生成において、各区間で使用するスケール(音階)の
キーを選択するのに利用される。これにより、調性感が
確立された変奏曲が生成可能となる。さらに、コード進
行評価では、特殊なコードが使用される区間に対し、初
期設定された音階の種類にかかわらず、特殊なスケール
(調性と関係の少ないスケール)を使用するためのスケ
ール処理を実行している。
以下、第18図から第21図を参照して調性構造の抽出に
ついて説明する。コード進行から調性構造を抽出するた
め、本実施例では、一般の楽曲が有する調性構造の性質
を考慮している。その性質とは、 (イ)調性は曲の進行において頻繁に変化するより、同
じ調性を保つ傾向をもつ。
ついて説明する。コード進行から調性構造を抽出するた
め、本実施例では、一般の楽曲が有する調性構造の性質
を考慮している。その性質とは、 (イ)調性は曲の進行において頻繁に変化するより、同
じ調性を保つ傾向をもつ。
(ロ)コードの構成音は特定の調性の音階上にある。
(ハ)転調が生じる場合には、無関係な調に転ずるより
属調または下属調等の近親調に転じやすい。
属調または下属調等の近親調に転じやすい。
である。
抽出する調性構造に上記の性質をもたせるため、本実
施例ではコード相互間に調性距離を定義し、現区間のコ
ードが前区間の調性から所定の距離の調性である場合に
は現区間の調性は前区間の調性と同じとみなす。
施例ではコード相互間に調性距離を定義し、現区間のコ
ードが前区間の調性から所定の距離の調性である場合に
は現区間の調性は前区間の調性と同じとみなす。
第21図にコード相互の調性距離を例示する。この図か
らわかるように、平行調の関係にあるコード(例えばAm
とC)間の調性距離はゼロであり、したがって同じ調性
(C)をもつ。また、完全5度下または完全5度上にあ
るコード(関係調のコード)との調性距離を2または−
2としている。いまキーCのダアトニックスケール(ド
レミファソラシド)を考えると、コードCから±2の調
性距離内にあるコードC、Am、G、Em、F、Dmの6つの
コードは、そのコード構成音がすべてキーCのダイアト
ニックスケール上にある。後述するように、本実施例で
は、調性距離±2以内のコード変化に対しては調性を維
持するようにしている。
らわかるように、平行調の関係にあるコード(例えばAm
とC)間の調性距離はゼロであり、したがって同じ調性
(C)をもつ。また、完全5度下または完全5度上にあ
るコード(関係調のコード)との調性距離を2または−
2としている。いまキーCのダアトニックスケール(ド
レミファソラシド)を考えると、コードCから±2の調
性距離内にあるコードC、Am、G、Em、F、Dmの6つの
コードは、そのコード構成音がすべてキーCのダイアト
ニックスケール上にある。後述するように、本実施例で
は、調性距離±2以内のコード変化に対しては調性を維
持するようにしている。
第18図において、48-1から48-5までの処理は、コード
進行における各コードに、第21図に例示する調性距離の
定義に従って調性距離データを割り当てているところで
ある。すなわち、48-1で曲の最初のコードに対する調性
KEY1として“0"を設定し、48-2〜48-5において、後続す
るコードCPiの調性KEYiを最初のコードCD1の調性KEY1と
の距離を計算することで求めている。48-3の調性は第20
図に示されている。
進行における各コードに、第21図に例示する調性距離の
定義に従って調性距離データを割り当てているところで
ある。すなわち、48-1で曲の最初のコードに対する調性
KEY1として“0"を設定し、48-2〜48-5において、後続す
るコードCPiの調性KEYiを最初のコードCD1の調性KEY1と
の距離を計算することで求めている。48-3の調性は第20
図に示されている。
50-1におけるCDi∧ooffはi番目のコードCDiの根音デ
ータの抽出(第4図参照)であり、その結果はa1とa2に
代入される。一方stには最初のコードCD1の根音データ
が入る。50-5に示すように、a1の根音データは50-3〜50
-6のループを一周するたびに5度上に転回され、a2の根
音データは5度下に転回される(第21図に示すリングを
反時計回り、または時計回りすることに相当する)。50
-3において、a1=stが成立するのは、CDiの根音データ
iを回5度上に転回したときであり、50-4においてa2=
stが成立するのはCDiの根音データをiを回5度下に転
回したときである。したがって前者に対してはxに調性
距離としてi×(−2)を入れ(50-7)、後者に対して
はxはi×2を入れる。50-9から50-17は、最初のコー
ドCD1と着目しているコードCDiとが、共にメジャー系か
マイナー系か、そうでないかにより、xを変換している
ところである。例えば、CD1がAmでCDiがGmajだとする
と、50-7によりx=+4になっている(根音AとGとの
比較のため)。これは、第21図によれば、x=−2にな
らなければならない。この場合、第20図において、50-1
0から50-11、50-13と進み、x=x−6によりx=−2
が得られる。また、CD1がCmajでCDiがBminだとすると、
50-8によりx=−10になっている。これは第21図の調性
距離の定義に従えば、x=−4にならなければならな
い。この場合、第20図において、50-14かに50-15、50-1
7と進み、x=x+6により、x=−4が得られる。第2
0図の計算結果xはKEYiに移される。
ータの抽出(第4図参照)であり、その結果はa1とa2に
代入される。一方stには最初のコードCD1の根音データ
が入る。50-5に示すように、a1の根音データは50-3〜50
-6のループを一周するたびに5度上に転回され、a2の根
音データは5度下に転回される(第21図に示すリングを
反時計回り、または時計回りすることに相当する)。50
-3において、a1=stが成立するのは、CDiの根音データ
iを回5度上に転回したときであり、50-4においてa2=
stが成立するのはCDiの根音データをiを回5度下に転
回したときである。したがって前者に対してはxに調性
距離としてi×(−2)を入れ(50-7)、後者に対して
はxはi×2を入れる。50-9から50-17は、最初のコー
ドCD1と着目しているコードCDiとが、共にメジャー系か
マイナー系か、そうでないかにより、xを変換している
ところである。例えば、CD1がAmでCDiがGmajだとする
と、50-7によりx=+4になっている(根音AとGとの
比較のため)。これは、第21図によれば、x=−2にな
らなければならない。この場合、第20図において、50-1
0から50-11、50-13と進み、x=x−6によりx=−2
が得られる。また、CD1がCmajでCDiがBminだとすると、
50-8によりx=−10になっている。これは第21図の調性
距離の定義に従えば、x=−4にならなければならな
い。この場合、第20図において、50-14かに50-15、50-1
7と進み、x=x+6により、x=−4が得られる。第2
0図の計算結果xはKEYiに移される。
48-1から48-5の処理例を第49図の(1)に示す。コー
ド進行C、C、F、G7、Bb、F、G7、cに対し、調性距
離{KEY}として、KEY1=0、KEY2=0、KEY3=+2、K
EY4=−2、KEY5=+4、KEY6=+2、KEY7=−2、KEY
8=0が得られる。
ド進行C、C、F、G7、Bb、F、G7、cに対し、調性距
離{KEY}として、KEY1=0、KEY2=0、KEY3=+2、K
EY4=−2、KEY5=+4、KEY6=+2、KEY7=−2、KEY
8=0が得られる。
このようにして得られた調性距離{KEY}は、続く48-
6から48-14の処理において、上述した調性の性質をもつ
ように変換される。すなわち、直前の調性データがskey
に置かれ、現コードの調性データがこの直前調性データ
skeyから±2以内の距離あるときは、現コードの調性デ
ータを直前の調性データに変換して調性を維持し、±2
を越える距離にあるときにのみ転調とみなして現コード
の調性データを±2した値を最終的な調性データとす
る。
6から48-14の処理において、上述した調性の性質をもつ
ように変換される。すなわち、直前の調性データがskey
に置かれ、現コードの調性データがこの直前調性データ
skeyから±2以内の距離あるときは、現コードの調性デ
ータを直前の調性データに変換して調性を維持し、±2
を越える距離にあるときにのみ転調とみなして現コード
の調性データを±2した値を最終的な調性データとす
る。
48-6から48-14の処理側を第19図の(2)に示す。コ
ード進行C、C、F、G7、Bb、F、G7、Cに対する調性
{KEY}として、0、0、0、0、2、2、0、0が得
られる。
ード進行C、C、F、G7、Bb、F、G7、Cに対する調性
{KEY}として、0、0、0、0、2、2、0、0が得
られる。
このようにして、楽曲として望ましい性質をもつ調性
構造が距離表現のデータ形式で抽出される。
構造が距離表現のデータ形式で抽出される。
第18図の48-15から48-25までは、距離表現の調性構造
データをスケールの根音を表わす音名表現に変換してい
るところである。この音名表現ではCに“0"、C#に
“1"、……Bに“11"の数値が割り当てられる。例えば
曲の最初のコードをCmajとし、i番目のコードをFmajと
し、このFmajの調性が距離表現では“2"であるとしてみ
る。これに対応する音名表現は“5"である。この変換の
ため、処理は48-15より48-16、48-17と進んで、ここでa
1=KEY1−KEYi×7/2が実行され、KEY1=0、KEYi=2で
あるのでa1=−7となり、48-18、48-19の処理によりa1
=5となり、これがKEYiとなる(48-20)。なお、曲の
最初のコードがメジャー系のときは、KEY1=00ff∧CD1
により最初のコード区間のスケールの根音が求まるが、
マイナー系のときは、Am=Cの関係に従って、KEY1=
(00ff∧CD1+3)mod12を実行して最初のコード区間の
スケールの根音を得ている(48-16、48-21〜48-23)。
第19図の(3)に48-15から48-25の処理例を示す。コー
ド進行がC、C、F、G7、Bb、F、G7、Cであるとき、
各コード区間で使用するスケールのキー(主音)は、
C、C、C、C、F、F、C、Cとなる。
データをスケールの根音を表わす音名表現に変換してい
るところである。この音名表現ではCに“0"、C#に
“1"、……Bに“11"の数値が割り当てられる。例えば
曲の最初のコードをCmajとし、i番目のコードをFmajと
し、このFmajの調性が距離表現では“2"であるとしてみ
る。これに対応する音名表現は“5"である。この変換の
ため、処理は48-15より48-16、48-17と進んで、ここでa
1=KEY1−KEYi×7/2が実行され、KEY1=0、KEYi=2で
あるのでa1=−7となり、48-18、48-19の処理によりa1
=5となり、これがKEYiとなる(48-20)。なお、曲の
最初のコードがメジャー系のときは、KEY1=00ff∧CD1
により最初のコード区間のスケールの根音が求まるが、
マイナー系のときは、Am=Cの関係に従って、KEY1=
(00ff∧CD1+3)mod12を実行して最初のコード区間の
スケールの根音を得ている(48-16、48-21〜48-23)。
第19図の(3)に48-15から48-25の処理例を示す。コー
ド進行がC、C、F、G7、Bb、F、G7、Cであるとき、
各コード区間で使用するスケールのキー(主音)は、
C、C、C、C、F、F、C、Cとなる。
後述するように、各コード区間において生成するメロ
ディの各音は以上の処理によって抽出された調性構造デ
ータを主音とするスケール上から選択される。
ディの各音は以上の処理によって抽出された調性構造デ
ータを主音とするスケール上から選択される。
次にスケール評価について第22図を参照して説明す
る。この処理の目的は特殊なコードが使用される区間に
対しては、メロディ生成のためのスケールとして特殊な
スケールを使用することである。第22図において、ISCA
LEは初期設定2−1(第2図)において選択されたスケ
ールである。コードCDiがデミニッシュコード“dim"の
ときにはその区間で使用するスケールSCACEiとしてコン
ビネーションデミニッシュスケールを設定し、コードCD
iがオーギュメントコード“aug"のときにはスケールと
してホールトーンスケールを設定し、コードCDiがセブ
ンスコード“7th"のときにはスケールとしてドミナント
7thスケールを設定している。また、これらのコードの
区間の調としては先の調性構造抽出処理で求めた調性デ
ータの代りに、コードの根音を用いている。したがっ
て、これらの例外的なコード区間以外の区間ではスケー
ルとしては初期設定で選択した種類のスケールが使用さ
れ、その主音は上述の調性構造抽出処理で得た調性デー
タにより定められる。
る。この処理の目的は特殊なコードが使用される区間に
対しては、メロディ生成のためのスケールとして特殊な
スケールを使用することである。第22図において、ISCA
LEは初期設定2−1(第2図)において選択されたスケ
ールである。コードCDiがデミニッシュコード“dim"の
ときにはその区間で使用するスケールSCACEiとしてコン
ビネーションデミニッシュスケールを設定し、コードCD
iがオーギュメントコード“aug"のときにはスケールと
してホールトーンスケールを設定し、コードCDiがセブ
ンスコード“7th"のときにはスケールとしてドミナント
7thスケールを設定している。また、これらのコードの
区間の調としては先の調性構造抽出処理で求めた調性デ
ータの代りに、コードの根音を用いている。したがっ
て、これらの例外的なコード区間以外の区間ではスケー
ルとしては初期設定で選択した種類のスケールが使用さ
れ、その主音は上述の調性構造抽出処理で得た調性デー
タにより定められる。
〈メロディ変奏〉 ゼネラルフロー(第2図)の2−5で実行されるメロ
ディ変奏の詳細を第23図に示す。
ディ変奏の詳細を第23図に示す。
最初、区間番号i(小節番号)が1に初期化された後
(23-1)、ループ(23-2〜23-10)を一巡するごとに、
1つの区間のメロディが生成される。着目している区間
の最初と最後にある原メロディの音符の位置情報が計算
され(23-2)、その区間にある原メロディから、和声音
(コード構成音)のみが抽出されてオクターブ番号とコ
ード構成音番号とで表現されるアルペジオパターンが生
成される(23-3)。さらにその区間にある原メロディの
ノリズムも抽出される(23-4)。抽出されたアルペジオ
パターンはメロディデータの形式(音高列の表現形式)
に変換され(23-5)、このメロディデータに対し、非和
声音が付与されて変奏曲のメロディの音高列が完成する
(23-6)。続いて、メロディの音長列が生成される(23
-7)。ここでは、23-4で抽出した原メロディのリズムパ
ターンが、初期設定2−1において選択されたパルスス
ケールにより変形される。生成された変奏メロディのデ
ータは連続領域に移され(23-8)、次の区間の変奏メロ
ディ生成のため、区間カウンタiがインクリメントされ
る(23-9)、コード進行の終了を検知したとき(23-1
0)、前区間に対する変奏メロディが完成している。
(23-1)、ループ(23-2〜23-10)を一巡するごとに、
1つの区間のメロディが生成される。着目している区間
の最初と最後にある原メロディの音符の位置情報が計算
され(23-2)、その区間にある原メロディから、和声音
(コード構成音)のみが抽出されてオクターブ番号とコ
ード構成音番号とで表現されるアルペジオパターンが生
成される(23-3)。さらにその区間にある原メロディの
ノリズムも抽出される(23-4)。抽出されたアルペジオ
パターンはメロディデータの形式(音高列の表現形式)
に変換され(23-5)、このメロディデータに対し、非和
声音が付与されて変奏曲のメロディの音高列が完成する
(23-6)。続いて、メロディの音長列が生成される(23
-7)。ここでは、23-4で抽出した原メロディのリズムパ
ターンが、初期設定2−1において選択されたパルスス
ケールにより変形される。生成された変奏メロディのデ
ータは連続領域に移され(23-8)、次の区間の変奏メロ
ディ生成のため、区間カウンタiがインクリメントされ
る(23-9)、コード進行の終了を検知したとき(23-1
0)、前区間に対する変奏メロディが完成している。
Ps、Pss、Pe、Peeの算出23-2の詳細は第24図〜第26図
に示される。Psは対象の小節の先頭の音符が原曲の何番
目の音符かを示し、Pssはその音符が前小節にはみ出し
ている長さを表わし、Peは対象の小節の最後の音符の位
置を示し、Peeは、Peの次の音符、すなわち次小節の先
頭の音符が対象の小節に割り込んでいる長さを表わす。
に示される。Psは対象の小節の先頭の音符が原曲の何番
目の音符かを示し、Pssはその音符が前小節にはみ出し
ている長さを表わし、Peは対象の小節の最後の音符の位
置を示し、Peeは、Peの次の音符、すなわち次小節の先
頭の音符が対象の小節に割り込んでいる長さを表わす。
第25図のPs、Pssの算出フローにおいて、beatは1小
節の長さ(基本時間長表現)、barは対象の小節の番号
を表わす。小節の番号が1より小さいか、曲の小節数
(mno)より大きいときは入力ミスである。指定した小
節が1のときは、Ps=1、Pss=0にする(27-4、27-
5)。Ps=1になる理由は、最初の小節の場合、小節の
先頭の音符は原曲の最初の音符にほかならないからであ
り、Pss=0になる理由は、先行小節が存在しないから
である。27-2で求めたa1は曲の頭から対象の小節の前方
小節線までの長さであり、この長さa1を原メロディノー
トの音長データMRiを先頭から累算して得た長さSと比
較する(27-7、27-8、27-10、27-12)。S=a1が成立す
るときは、Sに最後に累算されたi番目の音高データの
次の音符が対象の小節の頭から開始する。したがってPs
=i+1、Pss=0とする(27-9)。一方、S>a1が成
立するときは、Sに最後に加えた音長データをもつ音
符、すなわち、i番目の音符が対象の小節の先頭の音符
である。したがってPs=iとする。またPss=MRi−S+
a1とする(27-9)。
節の長さ(基本時間長表現)、barは対象の小節の番号
を表わす。小節の番号が1より小さいか、曲の小節数
(mno)より大きいときは入力ミスである。指定した小
節が1のときは、Ps=1、Pss=0にする(27-4、27-
5)。Ps=1になる理由は、最初の小節の場合、小節の
先頭の音符は原曲の最初の音符にほかならないからであ
り、Pss=0になる理由は、先行小節が存在しないから
である。27-2で求めたa1は曲の頭から対象の小節の前方
小節線までの長さであり、この長さa1を原メロディノー
トの音長データMRiを先頭から累算して得た長さSと比
較する(27-7、27-8、27-10、27-12)。S=a1が成立す
るときは、Sに最後に累算されたi番目の音高データの
次の音符が対象の小節の頭から開始する。したがってPs
=i+1、Pss=0とする(27-9)。一方、S>a1が成
立するときは、Sに最後に加えた音長データをもつ音
符、すなわち、i番目の音符が対象の小節の先頭の音符
である。したがってPs=iとする。またPss=MRi−S+
a1とする(27-9)。
第26図に示すPe、Peeの算出フローは第25図とよく似
た処理を行う。ただしa1には曲の冒頭から対象の小節の
後方小節線までの長さが入る、その他の点については説
明を省略する。
た処理を行う。ただしa1には曲の冒頭から対象の小節の
後方小節線までの長さが入る、その他の点については説
明を省略する。
23-3に示すアルペジオパターンの抽出の詳細を第27図
に示す。ここでは対象の小節の原メロディからアルペジ
オパターン{LLi}を抽出している。処理の概要を述べ
ると、PsとPeで示される対象の小節に対し、コード進行
情報における対応するコードを使用して、原メロディノ
ートが和声音かどうかを判別し、和声音と判別された音
に対しては、コードのなかから対応するコード構成音を
さがし出し、LLの形式のデータを得る、評細に述べる
と、まず、現小節のコードデータから構成音データを生
成する(29-2、第28図、第29図)。第28図に示すように
コード構成音データメモリは、根音をCとするコードの
種類別に、コード構成音を16ビット中下位12ビットのデ
ータで記憶している。各ビット位置は各音名を表わし、
最下位のビット位置がド(C)である。例えば、cc=00
91(16進)はドとミとソのビット位置に“1"があり、C
のメジャーの構成音を表わす。いま、対象の区間のコー
ドGmajだとすると、CDは0007(16進)である。コード構
成音データメモリより、CDの上位8ビットで指定される
アドレスにあるメジャーのコード構成音データcc(=00
91)を読み出し、第31図に示すようにその下位12ビット
をCDの下位8ビットが示す根音の値だけ左に転回するこ
とにより“1"のビットは、ソとシとレを表わすビット位
置7、11、2に移動し、Gmajのコード構成音が表現され
る。このようにして、対象の区間のコードからコード構
成音データが生成される。次に、音階カウンタiと和声
音カウンタkを初期化する(29-3、29-4)。29-5の処理
はモチーフの音高データMDiをコード構成音データccと
同じデータ形成に変換する処理である。例えば、“ソ”
の音は、ビット位置7に“1"をもつデータmmに変換され
る。
に示す。ここでは対象の小節の原メロディからアルペジ
オパターン{LLi}を抽出している。処理の概要を述べ
ると、PsとPeで示される対象の小節に対し、コード進行
情報における対応するコードを使用して、原メロディノ
ートが和声音かどうかを判別し、和声音と判別された音
に対しては、コードのなかから対応するコード構成音を
さがし出し、LLの形式のデータを得る、評細に述べる
と、まず、現小節のコードデータから構成音データを生
成する(29-2、第28図、第29図)。第28図に示すように
コード構成音データメモリは、根音をCとするコードの
種類別に、コード構成音を16ビット中下位12ビットのデ
ータで記憶している。各ビット位置は各音名を表わし、
最下位のビット位置がド(C)である。例えば、cc=00
91(16進)はドとミとソのビット位置に“1"があり、C
のメジャーの構成音を表わす。いま、対象の区間のコー
ドGmajだとすると、CDは0007(16進)である。コード構
成音データメモリより、CDの上位8ビットで指定される
アドレスにあるメジャーのコード構成音データcc(=00
91)を読み出し、第31図に示すようにその下位12ビット
をCDの下位8ビットが示す根音の値だけ左に転回するこ
とにより“1"のビットは、ソとシとレを表わすビット位
置7、11、2に移動し、Gmajのコード構成音が表現され
る。このようにして、対象の区間のコードからコード構
成音データが生成される。次に、音階カウンタiと和声
音カウンタkを初期化する(29-3、29-4)。29-5の処理
はモチーフの音高データMDiをコード構成音データccと
同じデータ形成に変換する処理である。例えば、“ソ”
の音は、ビット位置7に“1"をもつデータmmに変換され
る。
29-6でこの音高データmmがコード構成音か否かをチェ
ックしている。これは、音高データmmとコード構成音デ
ータccとの論理積(mm∧cc)をとることで判別できる。
29-7〜29-13では、コード構成音データccのビット“1"
の中で、モチーフの音高データmmのビット“1"と一致す
るのは何番目であるかを調べ、その結果cにモチーフの
音のオクターブ番号(MDi∧ffoo)を加えて、アルペジ
オパターンデータLLkとしている。29-15で次の音符にカ
ウンタiを進め、音符番号がPeに達するまで(29-1
6)、LLを求める。29-17のLLNOには対象の区間の和声音
数(アルペジオパターンの長さ)が入る。
ックしている。これは、音高データmmとコード構成音デ
ータccとの論理積(mm∧cc)をとることで判別できる。
29-7〜29-13では、コード構成音データccのビット“1"
の中で、モチーフの音高データmmのビット“1"と一致す
るのは何番目であるかを調べ、その結果cにモチーフの
音のオクターブ番号(MDi∧ffoo)を加えて、アルペジ
オパターンデータLLkとしている。29-15で次の音符にカ
ウンタiを進め、音符番号がPeに達するまで(29-1
6)、LLを求める。29-17のLLNOには対象の区間の和声音
数(アルペジオパターンの長さ)が入る。
リズム評価25-4の詳細を第25図に示す。
第25図のリズム評価において、25-2に示すrrは対象の
小節のリズムパターンを格納する16ビットのレジスタで
あり、1小節の長さを16とすると、レジスタrrの最初の
ビット位置は、小節の最初の基本時間を表わし、同様に
N番目のビット位置は小節の頭からN番目の基本時間を
表わす。25-3〜25-9までの処理は、モチーフの音符Psか
ら音符Peまでにある音符の位置をモチーフ音長データMR
iを使って求め、レジスタrrの対応するビット位置に記
入する処理である。例えば、rrとして、 0001000100010001 の結果が得られたとすると、このパターンrrは対象の小
節の1拍目、2拍目、3拍目、4拍目に音が発生するこ
とを表わしている。
小節のリズムパターンを格納する16ビットのレジスタで
あり、1小節の長さを16とすると、レジスタrrの最初の
ビット位置は、小節の最初の基本時間を表わし、同様に
N番目のビット位置は小節の頭からN番目の基本時間を
表わす。25-3〜25-9までの処理は、モチーフの音符Psか
ら音符Peまでにある音符の位置をモチーフ音長データMR
iを使って求め、レジスタrrの対応するビット位置に記
入する処理である。例えば、rrとして、 0001000100010001 の結果が得られたとすると、このパターンrrは対象の小
節の1拍目、2拍目、3拍目、4拍目に音が発生するこ
とを表わしている。
第31図は第23図の23-5の詳細である。目的は、(オク
ターブ番号+コード構成音番号)で示されるアルペジオ
パターンLLの形式を、コード構成音データccを使って
(オクターブ番号+音名番号)で示されるメロディ音高
データの形式に変換して、MEDiに格納することである。
58-5、58-6の処理は、LLiのコード構成音番号(LLi∧00
ff)が現区間のコードのコード構成音数(CKNO)より大
きいときに、LLiのコード構成音番号を現区間のコード
構成音のうちで一番高いコード構成音番号に変更する処
理である。図中、cはコード構成音のカウンタ、LLi∧f
f00はLLiのオクターブ番号、jは音名のカウンタであ
る。
ターブ番号+コード構成音番号)で示されるアルペジオ
パターンLLの形式を、コード構成音データccを使って
(オクターブ番号+音名番号)で示されるメロディ音高
データの形式に変換して、MEDiに格納することである。
58-5、58-6の処理は、LLiのコード構成音番号(LLi∧00
ff)が現区間のコードのコード構成音数(CKNO)より大
きいときに、LLiのコード構成音番号を現区間のコード
構成音のうちで一番高いコード構成音番号に変更する処
理である。図中、cはコード構成音のカウンタ、LLi∧f
f00はLLiのオクターブ番号、jは音名のカウンタであ
る。
なお、ここで使用するアルペジオパターン{LL}は、
原メロディから抽出したアルペジオパターンと完全には
同一でなくてもよい。例えば抽出したアルペジオパター
ン{LL}の各要素に対し、上または下に転回を行ったも
のを使用できる。例えば{LL}として、(0401、0303、
0302、0301)が抽出された場合に、上に1つ転回するこ
とにより、(0402、0401、0303、0302)のパターンを得
ることができる。あるいは抽出したアルペジオパターン
{LL}の要素の1つのみを他のデータに変更するように
してもよい。
原メロディから抽出したアルペジオパターンと完全には
同一でなくてもよい。例えば抽出したアルペジオパター
ン{LL}の各要素に対し、上または下に転回を行ったも
のを使用できる。例えば{LL}として、(0401、0303、
0302、0301)が抽出された場合に、上に1つ転回するこ
とにより、(0402、0401、0303、0302)のパターンを得
ることができる。あるいは抽出したアルペジオパターン
{LL}の要素の1つのみを他のデータに変更するように
してもよい。
第32図と第33図は第23図の23-6における非和声音の付
与の詳細である。この処理の目的はアルペジオに所望の
非和声音を付与してメロディの音高列を完成することで
ある。非和声音の付加のために、上述した非和声音の特
徴{RSi}、コード進行評価で得た調性構造{KEYi}、
非和声音を分類する知識を表現するプロダクションルー
ルが利用される。付加される非和声音は次の条件を満足
しなければならない。
与の詳細である。この処理の目的はアルペジオに所望の
非和声音を付与してメロディの音高列を完成することで
ある。非和声音の付加のために、上述した非和声音の特
徴{RSi}、コード進行評価で得た調性構造{KEYi}、
非和声音を分類する知識を表現するプロダクションルー
ルが利用される。付加される非和声音は次の条件を満足
しなければならない。
(イ)所定の音域内の音であること (ロ)コード進行評価で得たKEYiを主音とするスケール
上の音であること (ハ)コード構成外音であること (ニ)プロダクションルールで得た結論と計画された非
和声音識別子RSiとが一致すること 第32図において、59-4〜59-18の外側のループは計画
された非和声音識別子RSiの数だけ繰り返すループであ
り、59-5〜59-16のループはアルペジオの音符の数だけ
繰り返す。59-8〜59-14では、非和声音の候補として、
下限loから上限upまでの音域内にある各音高データkが
順次検査される(第34図参照)。音高データkが音階音
であってコード構成外音であるときは(59-8、59-9)、
関数Fを計算して(59-10)、プロダクションルールに
よる前向推論を実行し(59-11)、その結論が計画され
た非和声音識別子RSiと一致するかどうかチェックする
(59-11)。一致するとき、音高データkは上述した非
和声音のとしての条件をすべて満足している。したがっ
て、付加される非和声数を計数するノンコードトーンカ
ウンタnctctをインクリメントし、見つけ出された非和
声音の音高データkをVMnctctに入れ、非和声音の付加
位置jをPOSTnctctにセットし、関連するフラグfljを
“1"にセットする(59-19〜59-22)。本例では、和声音
間に高々1つの非和声音が付加されるようにしており、
flj=0は、和声音MEDjとMEDj+1の間に非和声音がまだ
付加されていないことを示す。
上の音であること (ハ)コード構成外音であること (ニ)プロダクションルールで得た結論と計画された非
和声音識別子RSiとが一致すること 第32図において、59-4〜59-18の外側のループは計画
された非和声音識別子RSiの数だけ繰り返すループであ
り、59-5〜59-16のループはアルペジオの音符の数だけ
繰り返す。59-8〜59-14では、非和声音の候補として、
下限loから上限upまでの音域内にある各音高データkが
順次検査される(第34図参照)。音高データkが音階音
であってコード構成外音であるときは(59-8、59-9)、
関数Fを計算して(59-10)、プロダクションルールに
よる前向推論を実行し(59-11)、その結論が計画され
た非和声音識別子RSiと一致するかどうかチェックする
(59-11)。一致するとき、音高データkは上述した非
和声音のとしての条件をすべて満足している。したがっ
て、付加される非和声数を計数するノンコードトーンカ
ウンタnctctをインクリメントし、見つけ出された非和
声音の音高データkをVMnctctに入れ、非和声音の付加
位置jをPOSTnctctにセットし、関連するフラグfljを
“1"にセットする(59-19〜59-22)。本例では、和声音
間に高々1つの非和声音が付加されるようにしており、
flj=0は、和声音MEDjとMEDj+1の間に非和声音がまだ
付加されていないことを示す。
59-12における結論=RSiの条件が不成立のときは、着
目している音高データkは非和声音としての条件を満た
さないので、音高データkをインクリメントして(59-1
3)、処理を繰り返す。59-14においてk>UPが成立する
ときは、和声音MEDjとMEDj+1の間に非和声音が付加され
なかったことを意味する。したがってjをインクリメン
トして(59-15)、次の和声音間に非和声音が付加でき
るかどうかの検査に進む。
目している音高データkは非和声音としての条件を満た
さないので、音高データkをインクリメントして(59-1
3)、処理を繰り返す。59-14においてk>UPが成立する
ときは、和声音MEDjとMEDj+1の間に非和声音が付加され
なかったことを意味する。したがってjをインクリメン
トして(59-15)、次の和声音間に非和声音が付加でき
るかどうかの検査に進む。
59-6における候補音の設定の詳細は第35図に示され
る。この例では、前後の和声音MEDj、MEDj+1の高い方の
音より5半音上から低い方の音より5半音下までをサー
チする音高の範囲としている(62-5〜62-7)。ただし、
i=0のとき、すなわち、着目している区間の最初の和
声音の手前に非和声音を付加しようとするときには、最
初の和声音の5半音上〜5半音下までを音高範囲とし
(62-1、2)、i=Vmednoのとき、すなわち着目してい
る区間の最後の和声音の後に非和声音を付加しようとす
るときには、最後の和声音の5半音上〜5半音下までを
音高範囲としている(62-3、4)。
る。この例では、前後の和声音MEDj、MEDj+1の高い方の
音より5半音上から低い方の音より5半音下までをサー
チする音高の範囲としている(62-5〜62-7)。ただし、
i=0のとき、すなわち、着目している区間の最初の和
声音の手前に非和声音を付加しようとするときには、最
初の和声音の5半音上〜5半音下までを音高範囲とし
(62-1、2)、i=Vmednoのとき、すなわち着目してい
る区間の最後の和声音の後に非和声音を付加しようとす
るときには、最後の和声音の5半音上〜5半音下までを
音高範囲としている(62-3、4)。
59-8における音高データkが音階音かどうかのチェッ
クの詳細を第38図に示す。図中のSCALEiは、区間iで使
用する音階の種類を表わし、第37図に示すような音階デ
ータメモリ5のアドレスポインタとなっている。このア
ドレスにある12ビット長の音階データ*SCALEiを上述し
たコード進行評価で得たKEYiだけ転回する(65-2)。例
えば、SCALEiが“0"(ダイアトニックスケール)の場
合、そのデータはCを主音とするドレミファソラシドを
表わす。KEYiが“5"(F)のとき、データを5つ転回す
ることにより、Fを主音とする音階データaに変換され
る。65-3は、音高データk(図中、MDで示されている)
を音階データと同じデータ形式に変換する処理であり、
その結果bと音階データaとの論理積が“0"ならば音高
データkは音階音でないと結論され、論理積が“0"でな
いとき、音階音と結論される(64-5〜64-7)。
クの詳細を第38図に示す。図中のSCALEiは、区間iで使
用する音階の種類を表わし、第37図に示すような音階デ
ータメモリ5のアドレスポインタとなっている。このア
ドレスにある12ビット長の音階データ*SCALEiを上述し
たコード進行評価で得たKEYiだけ転回する(65-2)。例
えば、SCALEiが“0"(ダイアトニックスケール)の場
合、そのデータはCを主音とするドレミファソラシドを
表わす。KEYiが“5"(F)のとき、データを5つ転回す
ることにより、Fを主音とする音階データaに変換され
る。65-3は、音高データk(図中、MDで示されている)
を音階データと同じデータ形式に変換する処理であり、
その結果bと音階データaとの論理積が“0"ならば音高
データkは音階音でないと結論され、論理積が“0"でな
いとき、音階音と結論される(64-5〜64-7)。
59-10におけるFの計算の詳細を第36図に示す。本例
では、非和声音は前後の和声音間に1つだけ付加する構
成であるので、いくつかの関数(図中、F1〜F3)につい
ては所定の値にセットしている。
では、非和声音は前後の和声音間に1つだけ付加する構
成であるので、いくつかの関数(図中、F1〜F3)につい
ては所定の値にセットしている。
59-11の前向推論の詳細を第39図に示す。ここでの目
的は、非和声音の候補の音高kがどのような種類の非和
声音であるかをプロダクションルールを用いて推論する
ことである。まず、ルールナンバーポインタPをプロダ
クションルールのなかでルートとなっているルールを指
す“1"にセットする(44-1)。しかる後、ルールナンバ
ーポインタPの指すルールの前提部(Lp≦Fxp≦Up)が
成立するかどうかを、Fの計算で求めた関数値を用いて
チェックし、成立するときはそのルールの肯定結論部の
データYpを次にアクセスするルールへのポインタとして
使用し(44-2、44-3、44-5、44-7)、不成立のときはそ
のルールの否定結論部のデータNpを次に参照するルール
へのポインタとする(44-3、44-4;44-5、44-6;44-7)。
ただし、データYp、Npが負の値のときは、推論を続ける
べきルールはなく、特定の非和声音の種類を表わす最終
結論に達しているので、その絶対値(−Yp、−Np)を結
論レジスタにセットする(44-8、44-9)。上述したよう
に、非和声音の候補(音高k)が非和声音として採用さ
れるためには、この候補に対する前向推論の結論が計画
された非和声音の識別子RSiに一致することが必要であ
る。
的は、非和声音の候補の音高kがどのような種類の非和
声音であるかをプロダクションルールを用いて推論する
ことである。まず、ルールナンバーポインタPをプロダ
クションルールのなかでルートとなっているルールを指
す“1"にセットする(44-1)。しかる後、ルールナンバ
ーポインタPの指すルールの前提部(Lp≦Fxp≦Up)が
成立するかどうかを、Fの計算で求めた関数値を用いて
チェックし、成立するときはそのルールの肯定結論部の
データYpを次にアクセスするルールへのポインタとして
使用し(44-2、44-3、44-5、44-7)、不成立のときはそ
のルールの否定結論部のデータNpを次に参照するルール
へのポインタとする(44-3、44-4;44-5、44-6;44-7)。
ただし、データYp、Npが負の値のときは、推論を続ける
べきルールはなく、特定の非和声音の種類を表わす最終
結論に達しているので、その絶対値(−Yp、−Np)を結
論レジスタにセットする(44-8、44-9)。上述したよう
に、非和声音の候補(音高k)が非和声音として採用さ
れるためには、この候補に対する前向推論の結論が計画
された非和声音の識別子RSiに一致することが必要であ
る。
第32図の処理が完了したとき、nctctには付加された
非和声音の総数が記憶され、配列{Vi}のi番目には、
第32図の処理においてi番目に付加された非和声音の音
高データが記憶され、配列{POSTi}のi番目には第32
図の処理においてi番目に付加された非和声音の位置情
報が記憶されている。
非和声音の総数が記憶され、配列{Vi}のi番目には、
第32図の処理においてi番目に付加された非和声音の音
高データが記憶され、配列{POSTi}のi番目には第32
図の処理においてi番目に付加された非和声音の位置情
報が記憶されている。
これらのデータは、第33図の処理によって、メロディ
の音高列{VMEDi}の形式に変換される。なお配列{VME
Di}は、アルペジオ{MEDi}に初期設定されている。60
-2〜60-9は付加位置の順番に、配列{POSTi}、{VMi}
をソートする処理である。60-10〜60-19において、位置
データPOSTiで示される位置に非和声音の音高データVMi
を挿入している。
の音高列{VMEDi}の形式に変換される。なお配列{VME
Di}は、アルペジオ{MEDi}に初期設定されている。60
-2〜60-9は付加位置の順番に、配列{POSTi}、{VMi}
をソートする処理である。60-10〜60-19において、位置
データPOSTiで示される位置に非和声音の音高データVMi
を挿入している。
なお、本例では和声音の間に非和声音を1つだけ付加
可能にしているが、複数の非和声音が付加できるように
処理を変更してもよい。
可能にしているが、複数の非和声音が付加できるように
処理を変更してもよい。
ここまでで、メロディの音高列は完成する。残る処理
はメロディの音長列の生成である。
はメロディの音長列の生成である。
第40図にメロディの音長列の生成のフローを示す(23
-7の詳細)。まず、原メロディのリズム評価で得た基準
のリズムパターンの音符数を、着目している区間で生成
した音符数Vmedno(メロディの音高列のデータ数)とを
比較して、両者の差aを算出する(66-1)。生成音符数
の方が基準リズムパターンの音符数より少ないとき(a
>0のとき)は、パルススケールによる音符の最適結合
を、差の数だけ繰り返し実行する(66-2〜66-6)。生成
音符数の方が基準リズムパターンの音符数より多いとき
(a>0のとき)は、音符の最適分割を差の分だけ繰り
返し実行する(66-7〜66-11)。本例ではリズムパター
ンのデータ形式として、16ビット長のデータを使用し、
各ビット位置を各タイミングに割り当て、“1"の値をも
つビット位置で音が発生することを表わしているので、
最後にMERデータ形式に変換する(66-12)。
-7の詳細)。まず、原メロディのリズム評価で得た基準
のリズムパターンの音符数を、着目している区間で生成
した音符数Vmedno(メロディの音高列のデータ数)とを
比較して、両者の差aを算出する(66-1)。生成音符数
の方が基準リズムパターンの音符数より少ないとき(a
>0のとき)は、パルススケールによる音符の最適結合
を、差の数だけ繰り返し実行する(66-2〜66-6)。生成
音符数の方が基準リズムパターンの音符数より多いとき
(a>0のとき)は、音符の最適分割を差の分だけ繰り
返し実行する(66-7〜66-11)。本例ではリズムパター
ンのデータ形式として、16ビット長のデータを使用し、
各ビット位置を各タイミングに割り当て、“1"の値をも
つビット位置で音が発生することを表わしているので、
最後にMERデータ形式に変換する(66-12)。
結合処理の詳細は第41図に示す。図中、PSCALEjは使
用するパルススケールのj番目の成分スケールを表わ
し、RRは処理対象のリズムパターンである。RRのビット
が“1"のなかで、パルススケールの重みが最小のポイン
トを“0"にすることで音符を結合する。例えば、基準リ
ズムパターンが であるときに、ノーマルノパルススケール(第7図参
照)を使って、音符を1つ結合した場合、結果は、 となる。
用するパルススケールのj番目の成分スケールを表わ
し、RRは処理対象のリズムパターンである。RRのビット
が“1"のなかで、パルススケールの重みが最小のポイン
トを“0"にすることで音符を結合する。例えば、基準リ
ズムパターンが であるときに、ノーマルノパルススケール(第7図参
照)を使って、音符を1つ結合した場合、結果は、 となる。
これは、次のようにして得られる。
まず、RRは、当初 0001 0001 0101 0001 である。一方、ノーマルのパルススケールは 1213 1214 1213 1215 である。RRのビット“1"のうちでノーマルのパルススケ
ールが最小の重みをもつポイントは、右端から7番目の
位置である。この位置のビットが“0"になる。したがっ
て、結果のRRは、 0001 0001 0001 0001 となり、これは、 を表わしている。
ールが最小の重みをもつポイントは、右端から7番目の
位置である。この位置のビットが“0"になる。したがっ
て、結果のRRは、 0001 0001 0001 0001 となり、これは、 を表わしている。
分割処理の詳細は第68図に示す。分割は、RRのビット
が“0"のなかでパルススケールの重みが最大のポイント
を“1"とすることで実行される。例えば、リズムパター
ン に対し、ノーマルのパルススケールで音符を分割したと
き、結果は、 となる。
が“0"のなかでパルススケールの重みが最大のポイント
を“1"とすることで実行される。例えば、リズムパター
ン に対し、ノーマルのパルススケールで音符を分割したと
き、結果は、 となる。
MERデータ形式への変換66-12の詳細は第69図に示す。
図中、c1は音符のカウンタであり、c2は各音符の音長を
計測するカウンタである。この例で、MERoにはRRから最
初の“1"が現われるまで長さが入るので、区間の境界線
(小節線)をまたぐ音符も処理可能である(シンコペー
ション対策)。
図中、c1は音符のカウンタであり、c2は各音符の音長を
計測するカウンタである。この例で、MERoにはRRから最
初の“1"が現われるまで長さが入るので、区間の境界線
(小節線)をまたぐ音符も処理可能である(シンコペー
ション対策)。
なお、第40図の音長データ生成では、着目している区
間の原メロディの音符数と変奏曲のメロディの音符数と
の差だけ、音符の結合または分割処理を行っているが、
これには限られない。例えば、原メロディの音符数と変
奏曲のメロディの音符数が等しいときでも、原メロディ
のリズムパターンに対し、N回の音符結合処理とN回の
音符分割処理をパルススケールを使って実行し、その結
果を変奏曲のリズムパターンとして使用してもよい。要
するに、変奏曲のメロディの音符数は維持するが、その
音符数に達するような任意の数の分割と結合処理を、原
メロディのリズムから変奏曲のメロディのリズムへの変
換処理とすることができる。
間の原メロディの音符数と変奏曲のメロディの音符数と
の差だけ、音符の結合または分割処理を行っているが、
これには限られない。例えば、原メロディの音符数と変
奏曲のメロディの音符数が等しいときでも、原メロディ
のリズムパターンに対し、N回の音符結合処理とN回の
音符分割処理をパルススケールを使って実行し、その結
果を変奏曲のリズムパターンとして使用してもよい。要
するに、変奏曲のメロディの音符数は維持するが、その
音符数に達するような任意の数の分割と結合処理を、原
メロディのリズムから変奏曲のメロディのリズムへの変
換処理とすることができる。
データ移動23-8の詳細を第44図に示す。まず、MERo
(現在の生成区間の頭の空白部分)を生成済の最後の音
符の音長データMELRmeldnoに加える。ここにmeldnoは既
に生成されている音符の数を表わす。今回生成した音高
列VMED1〜VMEDvmednoをMELDに移動し、今回生成した音
長列MER1〜MERvmednoをMELRに移動する(70-2〜70-
6)。meldnoを更新して終了する(70-7)。
(現在の生成区間の頭の空白部分)を生成済の最後の音
符の音長データMELRmeldnoに加える。ここにmeldnoは既
に生成されている音符の数を表わす。今回生成した音高
列VMED1〜VMEDvmednoをMELDに移動し、今回生成した音
長列MER1〜MERvmednoをMELRに移動する(70-2〜70-
6)。meldnoを更新して終了する(70-7)。
〈まとめ〉 本実施例の自動作曲機は変奏曲の生成のために種々の
特徴を備えている。そのいくつかを下記に示す。
特徴を備えている。そのいくつかを下記に示す。
(A)原曲を評価するために、原曲のメロディから非和
声音をとり除いたアルペジオパターンを区間別に抽出す
るアルペジオパターン抽出手段が設けられている。
声音をとり除いたアルペジオパターンを区間別に抽出す
るアルペジオパターン抽出手段が設けられている。
(B)抽出した各アルペジオパターン(またはそれに類
似するパターン)は、変奏曲の各区間のアルペジオパタ
ーンとして用いられる。
似するパターン)は、変奏曲の各区間のアルペジオパタ
ーンとして用いられる。
(C)変奏曲のために、非和声音の特徴を設定する非和
声音特徴設定手段が設けられている。
声音特徴設定手段が設けられている。
(D)与えられたコード進行から変奏曲の調性構造を抽
出する調性抽出手段が設けられている。
出する調性抽出手段が設けられている。
(E)アルペジオパターンに対し、調性構造と、非和声
音の特徴を考慮しながら、音楽知識(プロダクションル
ール)を用いて非和声音が付加される。したがって、音
楽的に妥当な非和声音が付与されることになる。
音の特徴を考慮しながら、音楽知識(プロダクションル
ール)を用いて非和声音が付加される。したがって、音
楽的に妥当な非和声音が付与されることになる。
(F)原曲を評価するために、原曲のリズムパターンを
区間別に抽出するリズムパターン抽出手段が設けられて
いる。
区間別に抽出するリズムパターン抽出手段が設けられて
いる。
(G)抽出されたリズムパターンはパルススケールによ
りリズム制御手段により、変奏曲のリズムパターンに変
換される。
りリズム制御手段により、変奏曲のリズムパターンに変
換される。
[発明の効果] 以上の説明から明らかなように、本発明の自動作曲機
は、原曲の特徴を評価するために、原曲のメロディの各
区間から、与えられたコード情報を基にアルペジオパタ
ーンを抽出するアルペジオパターン抽出手段と、変奏曲
の非和声音の特徴パラメータを設定する特徴パラメータ
設定手段と、設定された特徴パラメータに従って、アル
ペジオパターンに非和声音を付与する非和声音付与手段
とを備えている。したがって、原曲の特徴をもつ変奏曲
の自動生成が可能である。また、本自動作曲機を使用す
る使用者にとっては、格別の音楽知識は不要であり、負
担が少ない。本自動作曲機は趣味としてだけでなく、音
楽教育のツールとしても非常に有効である。
は、原曲の特徴を評価するために、原曲のメロディの各
区間から、与えられたコード情報を基にアルペジオパタ
ーンを抽出するアルペジオパターン抽出手段と、変奏曲
の非和声音の特徴パラメータを設定する特徴パラメータ
設定手段と、設定された特徴パラメータに従って、アル
ペジオパターンに非和声音を付与する非和声音付与手段
とを備えている。したがって、原曲の特徴をもつ変奏曲
の自動生成が可能である。また、本自動作曲機を使用す
る使用者にとっては、格別の音楽知識は不要であり、負
担が少ない。本自動作曲機は趣味としてだけでなく、音
楽教育のツールとしても非常に有効である。
第1図は本発明の一実施例に係る自動作曲機の全体構成
図、第2図は変奏曲生成モードにおける実施例の全体的
な動作を示すフローチャート、第3図は処理において使
用される主な変数のリストを示す図、第4図、第5図、
第6図、第7図、第8図は使用されるデータの形式を示
す図、第9図はコード進行メモリに記憶されるコード進
行データの例を示す図、第10図はコード進行データの読
み込みのフローチャート、第11図はパルススケールメモ
リに記憶されるパルススケールデータを例示する図、第
12図はパルススケールデータの読み込みのフローチャー
ト、第13図はプロダクションルールデータメモリに記憶
されるプロダクションルールデータを例示する図、第14
図はプロダクションルールデータの読み込みのフローチ
ャート、第15図は原メロディメモリに記憶される原曲の
メロディデータを例示する図、第16図はメロディデータ
の読み込みのフローチャート、第17図は非和声音の特徴
を設定するフローチャート、第18図はコード進行から調
性構造を抽出するフローチャート、第19図は調性構造の
抽出過程を例示する図、第20図は最初のコードCD1とi
番目のコードCDiとの調性距離を算出するフローチャー
ト、第21図はコード間の調性距離の定義を示す図、第22
図はスケール(音階)の処理を示すフローチャート、第
23図はメロディ変奏のフローチャート、第24図はPs、P
e、Pss、Peeの算出のフローチャート、第25図はPs、Pss
の算出のフローチャート、第26図はPe、Peeの算出のフ
ローチャート、第27図は原メロディからアルペジオパタ
ーンを抽出するフローチャート、第28図はコード構成音
メモリに記憶されるコード構成音データを例示する図、
第29図はコードデータから構成音データを生成するフロ
ーチャート、第30図は原メロディのリズムを評価するフ
ローチャート、第31図はアルペジオパターンをメロディ
データ形式に変換するフローチャート、第32図と第33図
はアルペジオに非和声音を付加するフローチャート、第
34図は非和声音付加処理の順序を示す図、第35図は非和
声音の候補とする音高の範囲を設定するフローチャー
ト、第36図は関数Fの計算のフローチャート、第37図は
音階データメモリに記憶されるスケールデータの例を示
す図、第38図は音階音の識別のフローチャート、第39図
はプロダクションルールによる非和声音の推論のフロー
チャート、第40図はメロディの音長データを生成するフ
ローチャート、第41図は音符の最適結合のフローチャー
ト、第42図は音符の最適分割のフローチャート、第43図
は生成したリズムパターンをMERデータ形式に変換する
フローチャート、第44図は生成したメロディデータを連
続領域に移動するフローチャートである。 1……CPU、2……入力装置、3……原メロディメモ
リ、4……コード進行メモリ、6……プロダクションル
ールデータメモリ、RSi……非和声音の特徴、LLi……ア
ルペジオパターン。
図、第2図は変奏曲生成モードにおける実施例の全体的
な動作を示すフローチャート、第3図は処理において使
用される主な変数のリストを示す図、第4図、第5図、
第6図、第7図、第8図は使用されるデータの形式を示
す図、第9図はコード進行メモリに記憶されるコード進
行データの例を示す図、第10図はコード進行データの読
み込みのフローチャート、第11図はパルススケールメモ
リに記憶されるパルススケールデータを例示する図、第
12図はパルススケールデータの読み込みのフローチャー
ト、第13図はプロダクションルールデータメモリに記憶
されるプロダクションルールデータを例示する図、第14
図はプロダクションルールデータの読み込みのフローチ
ャート、第15図は原メロディメモリに記憶される原曲の
メロディデータを例示する図、第16図はメロディデータ
の読み込みのフローチャート、第17図は非和声音の特徴
を設定するフローチャート、第18図はコード進行から調
性構造を抽出するフローチャート、第19図は調性構造の
抽出過程を例示する図、第20図は最初のコードCD1とi
番目のコードCDiとの調性距離を算出するフローチャー
ト、第21図はコード間の調性距離の定義を示す図、第22
図はスケール(音階)の処理を示すフローチャート、第
23図はメロディ変奏のフローチャート、第24図はPs、P
e、Pss、Peeの算出のフローチャート、第25図はPs、Pss
の算出のフローチャート、第26図はPe、Peeの算出のフ
ローチャート、第27図は原メロディからアルペジオパタ
ーンを抽出するフローチャート、第28図はコード構成音
メモリに記憶されるコード構成音データを例示する図、
第29図はコードデータから構成音データを生成するフロ
ーチャート、第30図は原メロディのリズムを評価するフ
ローチャート、第31図はアルペジオパターンをメロディ
データ形式に変換するフローチャート、第32図と第33図
はアルペジオに非和声音を付加するフローチャート、第
34図は非和声音付加処理の順序を示す図、第35図は非和
声音の候補とする音高の範囲を設定するフローチャー
ト、第36図は関数Fの計算のフローチャート、第37図は
音階データメモリに記憶されるスケールデータの例を示
す図、第38図は音階音の識別のフローチャート、第39図
はプロダクションルールによる非和声音の推論のフロー
チャート、第40図はメロディの音長データを生成するフ
ローチャート、第41図は音符の最適結合のフローチャー
ト、第42図は音符の最適分割のフローチャート、第43図
は生成したリズムパターンをMERデータ形式に変換する
フローチャート、第44図は生成したメロディデータを連
続領域に移動するフローチャートである。 1……CPU、2……入力装置、3……原メロディメモ
リ、4……コード進行メモリ、6……プロダクションル
ールデータメモリ、RSi……非和声音の特徴、LLi……ア
ルペジオパターン。
Claims (1)
- 【請求項1】原曲の変奏曲を生成する自動作曲機におい
て、 原曲のメロディを入力するメロディ入力手段と、 コード進行を入力するコード進行入力手段と、 上記メロディと上記コード進行を基に、各区間のメロデ
ィから非和声音をとり除いたアルペジオパターンを抽出
するアルペジオパターン抽出手段と、 変奏曲の非和声音の特徴パラメータを設定する特徴パラ
メータ設定手段と、 設定された上記特徴パラメータに従って、上記アルペジ
オパターンに非和声音を付与する非和声音付与手段と、 を有することを特徴とする自動作曲機。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62325179A JP2621266B2 (ja) | 1987-12-24 | 1987-12-24 | 自動作曲機 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP62325179A JP2621266B2 (ja) | 1987-12-24 | 1987-12-24 | 自動作曲機 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH01167881A JPH01167881A (ja) | 1989-07-03 |
| JP2621266B2 true JP2621266B2 (ja) | 1997-06-18 |
Family
ID=18173892
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP62325179A Expired - Fee Related JP2621266B2 (ja) | 1987-12-24 | 1987-12-24 | 自動作曲機 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2621266B2 (ja) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003029748A (ja) * | 2001-07-17 | 2003-01-31 | Roland Corp | アルペジエータ |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6040027B2 (ja) | 2009-07-15 | 2016-12-07 | コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. | 内部電力伝達装置を持つ装置 |
-
1987
- 1987-12-24 JP JP62325179A patent/JP2621266B2/ja not_active Expired - Fee Related
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6040027B2 (ja) | 2009-07-15 | 2016-12-07 | コーニンクレッカ フィリップス エヌ ヴェKoninklijke Philips N.V. | 内部電力伝達装置を持つ装置 |
Non-Patent Citations (1)
| Title |
|---|
| コンピュートピア1975.12月号Vol.9No.110株式会社コンピュータ・エージ社 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPH01167881A (ja) | 1989-07-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4982643A (en) | Automatic composer | |
| US9607593B2 (en) | Automatic composition apparatus, automatic composition method and storage medium | |
| JP2638021B2 (ja) | 自動伴奏装置 | |
| US9460694B2 (en) | Automatic composition apparatus, automatic composition method and storage medium | |
| US9558726B2 (en) | Automatic composition apparatus, automatic composition method and storage medium | |
| CN115004294B (zh) | 编曲生成方法、编曲生成装置以及计算机程序产品 | |
| US6294720B1 (en) | Apparatus and method for creating melody and rhythm by extracting characteristic features from given motif | |
| US20020007721A1 (en) | Automatic music composing apparatus that composes melody reflecting motif | |
| JP3132099B2 (ja) | スケール判別装置 | |
| JPH0527767A (ja) | 和音検出装置および自動伴奏装置 | |
| US6984781B2 (en) | Music formulation | |
| JP2621266B2 (ja) | 自動作曲機 | |
| US4896576A (en) | Accompaniment line principal tone determination system | |
| Oliwa | Genetic algorithms and the abc music notation language for rock music composition | |
| JP3724347B2 (ja) | 自動作曲装置及び方法並びに記憶媒体 | |
| JP2615722B2 (ja) | 自動作曲機 | |
| JP2615720B2 (ja) | 自動作曲機 | |
| JP2615721B2 (ja) | 自動作曲機 | |
| JP3088919B2 (ja) | 調判定音楽装置 | |
| Eibensteiner et al. | Temporal-scope grammars for polyphonic music generation | |
| JP2004171019A (ja) | 自動作曲装置および記憶媒体 | |
| JP2638905B2 (ja) | 自動作曲機 | |
| JP2623955B2 (ja) | 電子楽器 | |
| JPH05346781A (ja) | 調検出装置および自動編曲装置 | |
| JPH0561465A (ja) | 調性判定装置及び自動伴奏装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |