JPH05181408A - Automatic music composing machine - Google Patents

Automatic music composing machine

Info

Publication number
JPH05181408A
JPH05181408A JP3360545A JP36054591A JPH05181408A JP H05181408 A JPH05181408 A JP H05181408A JP 3360545 A JP3360545 A JP 3360545A JP 36054591 A JP36054591 A JP 36054591A JP H05181408 A JPH05181408 A JP H05181408A
Authority
JP
Japan
Prior art keywords
melody
pitch
pattern
tone
melody pattern
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.)
Granted
Application number
JP3360545A
Other languages
Japanese (ja)
Other versions
JP3364940B2 (en
Inventor
Jiyunichi Minamitaka
純一 南高
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP36054591A priority Critical patent/JP3364940B2/en
Priority to US07/998,561 priority patent/US5451709A/en
Publication of JPH05181408A publication Critical patent/JPH05181408A/en
Application granted granted Critical
Publication of JP3364940B2 publication Critical patent/JP3364940B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Auxiliary Devices For Music (AREA)
  • Electrophonic Musical Instruments (AREA)

Abstract

PURPOSE:To obtain the automatic music composing machine that makes a quick system response and generates a melody which matches the progress of music (chord progress) and is based upon musical knowledge. CONSTITUTION:A 1st current pitch candidate is generated according to a last pitch 202 and a random number 204. A sound kind and interval series generation block 208 classifies the kind of sound of the current pitch candidate and the interval from the last melody sound according to the music progress (current tonality 210 and current chord 212) in process and evaluates a melody pattern consisting of the current pitch candidate and a precedent melody which is generated yet. A matching module 214 retrieves the evaluated melody pattern in a melody pattern rule base 216. In case of a failure in retrieval, generation and retrieval are repeated through a next candidate generation module 220. A current pitch is decided on retrieval success.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】この発明は音楽装置に関し、特に
メロディを自動的に生成(compose)する自動作
曲機に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a music apparatus, and more particularly to an automatic composer that automatically composes a melody.

【0002】[0002]

【従来の技術】従来において、メロディを自動生成する
いくつかの自動作曲機が知られている(USP4,399,73
1、USP4,664,010、WO NO.86/05619、特開昭62-187
876号)。USP4,399,731の自動作曲機はメロディ音高
列の生成に乱数を用いた試行錯誤方式をメロディ生成原
理としている。したがってメロディ生成空間は無限であ
るが、作曲知識を欠くため、好ましいメロディを得るた
めの効率があまりにも低い。USP4,664,010とWO N
O.86/05619の作曲機は与えられたメロディを変換するタ
イプのメロディ生成装置であり、変換のために数学的手
法(音高列の鏡象変換、音高・音長列の2次元空間に対
する線形的変換)を使用する。したがって変換空間は限
定されており、固定的で数学的な(音楽的とはいえな
い)作曲能力しかもたない。特開昭62-187876号の作曲
機は音高列の生成にマルコフモデルを利用したメロディ
生成装置である。音高列のマルコフ過程を表わす音高の
遷移表から作成されるメロディは、遷移表に内在する音
楽スタイルに束縛される。したがってこのメロディ生成
装置は、比較的よい効率で音楽的なメロディを生成でき
るものの、限られたスタイルのメロディしか生成でき
ず、提供できる作曲空間は狭い。以上の従来技術に共通
していることは、(1)作曲機にメロディの分析、評価
能力が欠けていること、(2)メロディの分析、評価能
力をメロディの生成に利用していないこと、(3)した
がって、音楽的なメロディを生成する能力が低いこと、
である。
2. Description of the Related Art Conventionally, some automatic composers that automatically generate a melody are known (USP 4,399,73).
1, USP 4,664,010, WO NO.86 / 05619, JP-A-62-187
No. 876). The automatic composer of USP 4,399,731 uses a trial-and-error method in which random numbers are used to generate a melody pitch sequence as a melody generation principle. Therefore, although the melody generation space is infinite, the efficiency for obtaining a desirable melody is too low due to lack of composition knowledge. USP 4,664,010 and WO N
The composer of O.86 / 05619 is a melody generator of the type that transforms a given melody, and a mathematical method (conversion of pitch sequence, two-dimensional space of pitch / length sequence) is used for conversion. (A linear transformation for) is used. Therefore, the conversion space is limited and has only fixed and mathematical (not musical) composition ability. The composer disclosed in Japanese Patent Laid-Open No. 62-187876 is a melody generator that uses a Markov model to generate pitch sequences. The melody created from the pitch transition table representing the Markov process of the pitch sequence is bound by the musical style inherent in the transition table. Therefore, although this melody generation device can generate a musical melody with relatively good efficiency, it can generate only a limited style of melody, and the composition space that can be provided is narrow. What is common to the above prior arts is that (1) the composer lacks melody analysis and evaluation capabilities, (2) the melody analysis and evaluation capabilities are not used for melody generation, (3) Therefore, the ability to generate musical melody is low,
Is.

【0003】このような点に鑑み、本件発明者は特開昭
63-250696号、63-286883号において、メロディの分析、
評価能力を利用した自動作曲機を提案している。この自
動作曲機はメロディの音楽知識として、メロディを和声
音と非和声音の混合列としてとらえ、非和声音が和声音
との間に形成される関係を分析して非和声音を分類する
非和声音分類知識を有している。この非和声音分類知識
はユーザーからの入力メロディ(モチーフ)の分析に利
用される。更に、非和声音分類知識はメロディの生成に
も利用される。この作曲機はメロディを2段階で生成す
る。第1段階で和声音列(アルペジオ)を生成する(和
声音列はモチーフを基に展開して生成したアルペジオ特
徴パターンを音楽進行(進行中のコード)に適合化させ
ることにより得られる。)。第2段階で非和声音を生成
し、それらを和声音列間に挿入する(非和声音はモチー
フを基に展開して生成した非和声音特徴パターンを音楽
進行(進行中のスケール)に適合させながら、非和声音
分類知識に通すことにより得られる。)。この作曲機は
モチーフの特徴を反映した音楽的なメロディを生成する
ことができるが、次のような欠点をもっている。 (a)メロディ生成の前処理としてモチーフの分析、及
びモチーフからの生成メロディのアイデア(アルペジオ
と非和声音の特徴パターン)の作成に相当量のデータ処
理を要する。 (b)メロディを2段階で生成する方式は人間の通常の
メロディ作成プロセスとは異なる。したがって作曲の忠
実な人工知能化を実現できない。 (c)前処理と2段階メロディ生成のために、リアルタ
イムのメロディ生成が困難である。事実、この作曲機は
非実時間で1小節を単位として作曲を行っており、いっ
たん作曲を完了した後、作曲したものを音源を通して演
奏する構成になっている。この作曲の方式によれば、あ
らかじめメロディアイデア(アルペジオと非和声音の特
徴パターン)が与えられる場合においても、そのアイデ
アの具体化(メロディ生成)をリアルタイムで実行する
のが困難である。というのは、アイデアの具体化処理
(メロディの2段階生成処理)を小節線タイムのような
特定の時点で集中的に行うことになるからであり、作曲
機を演奏系と組み合わせた場合に、(コンピュータ)処
理が集中するところで演奏の時間遅れ(例えばメロディ
音の発音の遅れ)が発生してしまうからである。したが
って、(A)音楽的なメロディを1段階で生成でき、
(B)リアルタイムのメロディ生成、演奏が可能な自動
作曲機が望まれる。
In view of such a point, the inventor of the present invention discloses
63-250696, 63-286883, melody analysis,
We propose an automatic composer that uses the evaluation ability. This automatic composer, as the musical knowledge of the melody, considers the melody as a mixed sequence of harmony and non-harmonic sounds, analyzes the relationship between the non-harmonic sounds and the harmony sounds, and classifies the non-harmonic sounds. Has harmony classification knowledge. This non-harmonic classification knowledge is used to analyze the melody (motif) input by the user. Furthermore, the non-harmonic sound classification knowledge is also used for melody generation. This composer produces a melody in two stages. In the first stage, a harmony tone sequence (arpeggios) is generated (a harmony tone sequence is obtained by adapting an arpeggio characteristic pattern generated by developing a motif based on a motif to music progression (chord in progress)). Non-harmonic sounds are generated in the second stage, and they are inserted between the harmony sound strings (The non-harmonic sounds are developed based on the motif and the non-harmonic sound characteristic patterns are adapted to the music progress (scale in progress). It is obtained by passing through the non-harmonic classification knowledge. This composer can generate musical melody that reflects the characteristics of the motif, but has the following drawbacks. (A) A considerable amount of data processing is required for analysis of motifs as pre-processing for melody generation, and creation of ideas of melody generated from motifs (feature patterns of arpeggios and non-harmonic tones). (B) The method of generating a melody in two stages is different from the normal human melody creation process. Therefore, it is impossible to realize a faithful artificial intelligence in composition. (C) Real-time melody generation is difficult because of preprocessing and two-step melody generation. In fact, this composer composes in units of one bar in a non-real time, and is composed so that once the composition is completed, the composition is played through the sound source. According to this composition method, even if a melody idea (characteristic pattern of arpeggio and non-harmonic sound) is given in advance, it is difficult to carry out the realization of the idea (melody generation) in real time. This is because the idea realization process (two-stage melody generation process) is intensively performed at a specific point in time, such as bar time, and when a composer is combined with a performance system, This is because a performance delay (for example, a delay in sounding a melody sound) occurs when (computer) processing is concentrated. Therefore, (A) musical melody can be generated in one stage,
(B) An automatic composer capable of real-time melody generation and performance is desired.

【0004】[0004]

【発明が解決しようとする課題】したがってこの発明の
目的は音楽分析、評価能力のサポートの下に音楽的なメ
ロディを1段階で生成できる自動作曲機を提供すること
である。更にこの発明の目的は実時間ベースでメロディ
を生成、演奏可能な自動作曲機を提供することである。
SUMMARY OF THE INVENTION Therefore, an object of the present invention is to provide an automatic composer capable of generating a musical melody in one stage with the support of music analysis and evaluation capabilities. Another object of the present invention is to provide an automatic composer capable of generating and playing a melody on a real time basis.

【0005】[0005]

【課題を解決するための手段、作用】この発明によれ
ば、音楽進行を与える音楽進行付与手段と、メロディの
音列を音種列と音程列とでパターン化したメロディパタ
ーンのルールベースを記憶するメロディパターンルール
ベース手段と、上記音楽進行手段からの音楽進行に適合
し、かつ上記メロディパターンルールベース手段内のメ
ロディパターンルールを満たすメロディを生成するメロ
ディ生成手段と、を有することを特徴とする自動作曲機
が提供される。この構成によればメロディの生成を和声
音列の生成と非和声音列の加入とに分けずに行うことが
できる。また、生成されるメロディはそのメロディをそ
のメロディの音楽的背景である音楽進行に適合し、かつ
メロディパターンルールベース手段に置かれるルール
(メロディパターンルール)に適合するものなので、本
構成は音楽的に好ましいメロディを比較的効率よく提供
できる。即ち、生成されるメロディをそのメロディの音
楽的背景(文脈)である音楽進行(例えば進行中のコー
ド、キー、スケールのような調性和声背景で評価した場
合の特徴(音種列と音程列)がメロディパターンルール
を満足する。換言するとメロディパターンルールを作曲
すべきメロディの音楽的文脈に応じて具体化(適用)し
たものがメロディとなる。更にこの構成は、従来の技術
で述べた特開昭63-250696号、特開昭63-286883号の自動
作曲機に比べ、はるかに少ないデータ処理量でメロディ
を生成することを可能にする。したがって、実時間ベー
スでのメロディ生成、演奏の実現を容易にするものであ
る。
According to the present invention, a music progression giving means for giving a music progression, and a rule base of a melody pattern in which a tone sequence of a melody is patterned by a tone type sequence and a tone sequence are stored. Melody pattern rule base means for producing a melody that composes a melody pattern rule in the melody pattern rule base means and that conforms to the music progression from the music progression means. An automatic composer is provided. According to this configuration, the melody can be generated without dividing into the generation of the harmony tone sequence and the addition of the non-harmonic tone sequence. In addition, since the generated melody matches the melody with the music progression that is the musical background of the melody and also with the rule (melody pattern rule) placed in the melody pattern rule base means, this configuration is musical. It is possible to provide a preferable melody relatively efficiently. That is, the characteristics of the generated melody evaluated by a musical progression (context) of the melody (for example, a tonal harmony background such as an ongoing chord, key, or scale (tone sequence and pitch). Sequence) satisfies the melody pattern rule.In other words, the melody is the one that is embodied (applied) according to the musical context of the melody for which the melody pattern rule is to be composed. Compared to the automatic composers disclosed in JP-A-63-250696 and JP-A-63-286883, it is possible to generate a melody with a much smaller amount of data processing. To facilitate the realization of.

【0006】リアルタイム作曲機の一態様は、上記構成
に加え、演奏テンポを指定するテンポ指定手段を有し、
上記メロディ生成手段は上記演奏テンポに従うリアルタ
イムのベースでメロディを生成するリアルタイムメロデ
ィ生成手段から成る。更に、リアルタイム作曲機は上記
リアルタイムメロディ生成手段が生成したメロディをサ
ウンドとしてリアルタイム演奏するアルタイムメロディ
演奏手段を有する。リアルタイム演奏が可能なリアルタ
イム作曲機は(a)ユーザーの作曲開始指示からメロデ
ィの演奏開始までの待ち時間(オーバーヘッドタイム)
が短いこと、及び(b)メロディの演奏が意図された演
奏テンポをキープすることが要求される。このために
は、作曲機が作曲の処理を時間軸に対して“分散”して
行うことが望まれる。即ち、一時的なデータ処理の極端
な集中を避けるようにする。これは一時に生成するメロ
ディ音数を制限する(例えば1つに制限する)ことで行
える。したがって、順次、メロディ音を決定(生成)す
る方式はリアルタイム向きである(発音時刻ごとに一音
生成しては演奏する方式であることは必ずしも必要でな
いが)。メロディ音を順次生成する自動作曲機の一態様
において、上記メロディ生成手段は、メロディ音を順次
生成するため、音程列と音種列とにより、前メロディ音
までのメロディのパターンを記憶するメロディパターン
記憶手段と、新たに生成すべき現メロディ音の第1の音
高候補を生成する音高候補生成手段と、上記第1の音高
候補の音程と音種を上記前メロディ音の音高と上記音楽
進行の現状況とに基づいて分類する音程・音種分類手段
と、分類された上記第1の音高候補の音程と音種を用い
て上記メロディパターン記憶手段を更新して、現メロデ
ィ音候補までのメロディのパターンを評価対象として形
成する評価対象メロディパターン形成手段と、評価対象
として形成されたメロディのパターンについて上記メロ
ディパターンルールベース手段を検索するルールベース
検索手段と、検索に失敗したときに、現メロディ音のた
めに別の音高候補を生成する別候補生成手段と、上記別
の音高候補について、上記音程・音種分類手段、上記評
価対象メロディパターン形成手段、上記ルールベース検
索手段の動作を繰り返す繰返手段と、検索に成功したと
きに、その検索にかかる音高候補を現メロディ音の音高
として決定する音高決定手段と、を有する。音楽進行付
与手段はコード進行を生成するコード進行生成手段と、
調性(キー、スケール)を指示する調性指示手段とで構
成することができる。更に、この発明によれば、ユーザ
ーからのメロディによって上記メロディパターンルール
ベースを拡張する機能をもつ自動作曲機が提供される。
One mode of the real-time composer has, in addition to the above configuration, a tempo designating means for designating a performance tempo,
The melody generating means comprises real-time melody generating means for generating a melody on a real-time basis according to the performance tempo. Further, the real-time composer has real-time melody playing means for playing the melody generated by the real-time melody generating means as sound in real time. A real-time composer capable of real-time performance is (a) waiting time from the user's composition start instruction to the start of melody performance (overhead time)
Is short, and (b) it is required to keep the performance tempo at which the melody is played. For this purpose, it is desirable that the composer perform the composition process "distributed" with respect to the time axis. That is, avoid an extreme concentration of temporary data processing. This can be done by limiting the number of melody sounds generated at one time (for example, by limiting to one). Therefore, the method of sequentially determining (generating) the melody sounds is suitable for real time (although it is not always necessary to generate and play one sound at each sounding time). In one aspect of an automatic composer for sequentially generating melody sounds, the melody generating means stores the melody patterns up to the preceding melody sound by the pitch sequence and the tone type sequence in order to sequentially generate the melody sounds. Storage means, pitch candidate generating means for generating a first pitch candidate of the current melody sound to be newly generated, pitch and pitch of the first pitch candidate as the pitch of the previous melody sound The melody pattern storage means is updated by using the pitch / tone type classifying means for categorizing based on the current situation of the music progression, and the tune and tone type of the classified first pitch candidate, and the current melody is updated. Evaluation target melody pattern forming means for forming a melody pattern up to a sound candidate as an evaluation target, and the melody pattern rule base for the melody pattern formed as an evaluation target Rule-based search means for searching a stage, another candidate generation means for generating another pitch candidate for the current melody sound when the search is unsuccessful, and the pitch / tone type for the another pitch candidate. A repeating unit that repeats the operations of the classifying unit, the evaluation target melody pattern forming unit, and the rule-based search unit, and a sound that determines the pitch candidate for the search as the pitch of the current melody sound when the search is successful. And a high determination means. The music progression giving means is a chord progression creating means for producing a chord progression,
It can be configured with a tonality instructing means for instructing tonality (key, scale). Furthermore, according to the present invention, an automatic composer having a function of expanding the melody pattern rule base by a melody from a user is provided.

【0007】ルールベース拡張機能をもつ作曲機の一態
様は、ユーザからのメロディを入力するユーザーメロデ
ィ入力手段と、上記ユーザーメロディ入力手段から入力
されたメロディを上記音楽進行に従ってパターン認識し
て音種列と音程列とで表現されるメロディパターンを形
成するメロディパターン認識手段と、上記メロディパタ
ーン認識手段からのメロディパターンを追加ルールとし
て上記メロディパターンルールベース手段に追加してメ
ロディパターンルールベースを拡張するメロディパター
ンルールベース拡張手段と、を有する。この構成によれ
ば、ユーザーの好みに合うメロディ生成の能力を高める
ことができる。また、ユーザーの作曲への積極的な参加
を可能にする。メロディパターンルールベースは音楽ス
タイル別に用意してもよい。その場合、記憶量を節約す
るため、メロディパターンルールグループごとに適合す
る音楽スタイルのグループをリンクさせて、記憶の共通
化を図るのが望ましい。更に、この発明によれば、音楽
進行を与える音楽進行付与手段と、メロディの音列を音
種列と音程列とでパターン化したメロディパターンのル
ールベースを記憶するメロディパターンルールベース手
段と、生成すべきメロディの音列候補を生成する音列候
補生成手段と、上記音列候補生成手段からの音列候補を
上記音楽進行に基づいてパターン認識して、音種列と音
程列とで表現されるメロディパターンを形成するメロデ
ィパターン形成手段と、上記メロディパターン形成手段
からのメロディパターンを検索対象として上記メロディ
パターンルールベース手段を検索するルールベース検索
手段と、上記検索が成功するまで、即ち上記メロディパ
ターンルールベース手段に検索対象と一致するメロディ
パターンのルールが見つかるまで、上記音列候補生成手
段、上記メロディパターン形成手段、上記ルールベース
検索手段の動作を、音列候補を変化させながら繰り返す
繰返手段と、上記検索が成功したときに、成功に係る音
列候補を生成メロディの音列として決定する決定手段
と、を有することを特徴とする自動作曲機が提供され
る。この構成によれば、作曲機は一度に2以上のメロデ
ィ音を決定、生成可能である。
One aspect of a composer having a rule-based extension function is a user melody input means for inputting a melody from a user, and a pattern type recognition of the melody input by the user melody input means in accordance with the music progression. A melody pattern recognition means for forming a melody pattern represented by a sequence and a pitch sequence, and a melody pattern from the melody pattern recognition means is added as an additional rule to the melody pattern rule base means to extend the melody pattern rule base. And a melody pattern rule base expanding means. With this configuration, it is possible to enhance the ability to generate a melody that suits the taste of the user. It also allows users to actively participate in the composition. The melody pattern rule base may be prepared for each music style. In that case, in order to save the storage amount, it is desirable to link the music style groups suitable for each melody pattern rule group so as to make the storage common. Further, according to the present invention, a music progress giving means for giving a music progress, a melody pattern rule base means for storing a rule base of a melody pattern obtained by patternizing a melody sound string with a tone type string and a pitch string, and The tone sequence candidate generating means for generating the tone sequence candidates of the melody to be played, and the tone sequence candidates from the tone sequence candidate generating means are pattern-recognized based on the music progression, and are expressed by the tone type sequence and the tone sequence. Melody pattern forming means for forming a melody pattern, a rule base searching means for searching the melody pattern rule base means for the melody pattern from the melody pattern forming means, and the melody until the search is successful. The pattern rule base means is used until the rule of the melody pattern that matches the search target is found. Repeating means for repeating the operations of the candidate generating means, the melody pattern forming means, and the rule-based searching means while changing the sound string candidates, and generating a sound string candidate for success when the search is successful. An automatic composer is provided, which comprises: a determining unit that determines a sound string. With this configuration, the composer can determine and generate two or more melody sounds at one time.

【0008】[0008]

【実施例】以下、図面を参照してこの発明の実施例を説
明する。特徴 本実施例にかかる自動作曲機(自動メロディ生成装置)
の主な特徴は作曲の条件付機能、メロディの音高列生成
機能、及びメロディパターンルールの拡張機能である。
以下、それぞれの特徴について述べる。作曲条件付装置(図1A) 実施例に組み込まれる作曲条件付装置100の機能ブロ
ック図を図1Aに示す。作曲条件付装置100は音楽構
造データベース110とコード進行データベース(CP
DB)に基づいて選択コード進行(CP)160を生成
する。更に作曲条件付装置100は音楽構造データ11
0、曲風入力130及びリズムパターンデータベース1
50とに基づき選択リズムパターン170を生成する。
選択コード進行160の列は作曲される曲のコード進行
を表わす。選択リズムパターン170の列は作曲される
メロディのリズム(音長列)を表わす。選択コード進行
160はコード進行データベース140の中から選択音
楽構造120に適したコード進行を取ることによって得
られる。選択リズムパターン170はリズムパターンデ
ータベース150から選択音楽構造120と曲風入力1
30とに合うリズムパターンを取り出すことによって得
られる。図1Aにおいて、音楽構造データベース110
は、上位構造データベース111と下位構造データベー
ス112とからなる。上位構造データベース111は音
楽の上位構造(例えば楽節)のデータベースを記憶す
る。下位構造データベース112は音楽の下位構造(例
えば楽節内部構造)のデータベースを記憶する。例えば
下位構造データベース112の各階構造エントリーは上
位構造を8小節の楽節とみたときの8小節構造を表わす
情報をもっている。選択モジュール116は上位構造デ
ータベース111から上位構造データを取りそれを選択
上位構造121として選択音楽構造120に記憶する。
適正モジュール145は選択上位構造121に合うコー
ド進行をコード進行データベース140から取り出しそ
れを選択コード進行160として生成する。適性モジュ
ール117は下位構造データベース112の中から選択
上位構造121に合う属性をもつ下位構造列(例えば8
小節構造)を取り出しそれを選択下位構造122として
選択音楽構造120に設定する。選択下位構造122は
適性モジュール155に属性テストのために与えられ
る。曲風入力130は指定リズム131と指定ビート
(又はテンポ)132とからなる。指定リズム131と
指定ビート(又はテンポ)132は共に適性モジュール
155に属性テストのために与えられる。適性モジュー
ル155はリズムパターンデータベース150の中から
選択下位構造122に適合し、かつ指定リズム131と
指定ビート(又はテンポ)132に適合する属性をもつ
リズムパターンを探し出しそれを選択リズムパターン1
70として生成する。このようにして生成される選択リ
ズムパターン170は自動メロディの音長列(各メロデ
ィ音の発音、消音タイミング)を定める。このようにし
て作曲条件付装置100は知識の資源である各種データ
ベースとユーザーからの曲風入力に基づき適正な条件付
がなされた音楽情報(選択コード進行、選択リズムパタ
ーン)を作曲の一部として生成するものである。メロデ
ィの音長列は選択リズムパターン170から得られるの
で、後はメロディの音高列を生成することでメロディが
出来上がる。なお、図1Aの音楽構造データ110では
構造の階層レベルを上位と下位の2レベルとしているが
階層レベル数が1或いは3以上であってもよい。したが
って、選択音楽構造の階層レベル数も1以上任意の数で
あり得る。また、曲風入力を図1Aでは指定リズム13
1と指定ビート(テンポ)132とによって与えている
が他の曲風パラメータを用いてもよい。
Embodiments of the present invention will be described below with reference to the drawings. Features Automatic composer (automatic melody generator) according to the present embodiment
The main features of are the music composition condition function, the melody pitch sequence generation function, and the melody pattern rule expansion function.
The features of each are described below. Composition Conditioning Device (FIG. 1A) FIG. 1A is a functional block diagram of the composition condition device 100 incorporated in the embodiment. The music composition device 100 includes a music structure database 110 and a chord progression database (CP
The selected chord progression (CP) 160 is generated based on DB). Furthermore, the composition device with composition condition 100 uses the music structure data 11
0, song style input 130 and rhythm pattern database 1
A selection rhythm pattern 170 is generated based on 50.
The column of selected chord progressions 160 represents the chord progression of the song being composed. The row of the selected rhythm pattern 170 represents the rhythm (sound length row) of the composed melody. The selected chord progression 160 is obtained by taking a chord progression suitable for the selected music structure 120 from the chord progression database 140. The selected rhythm pattern 170 is selected from the rhythm pattern database 150. The selected music structure 120 and the musical style input 1
It is obtained by extracting the rhythm pattern that matches 30. In FIG. 1A, the music structure database 110
Consists of an upper structure database 111 and a lower structure database 112. The superstructure database 111 stores a database of superstructures (for example, passages) of music. The substructure database 112 stores a database of a substructure of music (for example, a passage internal structure). For example, each floor structure entry of the lower structure database 112 has information indicating an 8-bar structure when the upper structure is regarded as a 8-bar passage. The selection module 116 takes upper structure data from the upper structure database 111 and stores it in the selected music structure 120 as a selected upper structure 121.
The adequacy module 145 takes the chord progression that matches the selected superstructure 121 from the chord progression database 140 and generates it as the selected chord progression 160. The aptitude module 117 selects from the lower structure database 112 a lower structure column having an attribute that matches the selected upper structure 121 (for example, 8
A bar structure) is taken out and set in the selected music structure 120 as a selected substructure 122. The selection substructure 122 is provided to the suitability module 155 for attribute testing. The musical style input 130 includes a designated rhythm 131 and a designated beat (or tempo) 132. Both the designated rhythm 131 and the designated beat (or tempo) 132 are provided to the fitness module 155 for attribute testing. The suitability module 155 searches the rhythm pattern database 150 for a rhythm pattern that matches the selected substructure 122 and has an attribute that matches the specified rhythm 131 and the specified beat (or tempo) 132, and selects it.
70 is generated. The selected rhythm pattern 170 generated in this way defines the tone length sequence of the automatic melody (pronunciation and muffling timing of each melody tone). In this way, the music composition condition device 100 uses various databases which are knowledge resources and music information (selection chord progression, selection rhythm pattern) appropriately conditionalized based on the music style input from the user as a part of composition. To generate. Since the tone length sequence of the melody is obtained from the selected rhythm pattern 170, the melody is completed by generating the tone sequence of the melody. In the music structure data 110 of FIG. 1A, the hierarchical levels of the structure are upper and lower two levels, but the number of hierarchical levels may be one or three or more. Therefore, the number of hierarchical levels of the selected music structure may be any number of 1 or more. In addition, the musical style input is designated rhythm 13 in FIG. 1A.
Although it is given by 1 and the designated beat (tempo) 132, other musical style parameters may be used.

【0009】音高列生成装置(図1B) 本自動作曲機に組み込まれるメロディの音高列生成装置
200を図1Bに機能ブロックで示す。音高列生成装置
200の目的はメロディの音高列を生成することであ
る。音高列生成装置200は図1Aに示すような作曲条
件付装置100と組み合わせることが出来る(必ずしも
これには限定されないが)。その場合音高列生成装置2
00は選択リズムパターン170がメロディ音の発音タ
イミングを指示する都度、決定現ピッチ224を生成す
る。決定現ピッチ224の列がメロディの音高列を定め
る。図1Bにおいて決定現ピッチ224を生成する際、
音高列生成装置200は加算器206において前ピッチ
202を乱数発生モジュール204からの乱数とを加算
して最初の現ピッチ候補をマルコフ生成する。現ピッチ
候補が入力される音種・音程列生成モジュール208は
生成音高列に現ピッチ候補を加えた音高列の音種と音程
を生成する。音種・音程列生成モジュール208は現ピ
ッチ候補の音種と音程を分類するため現調性210(キ
ー、スケール)と現コード212の情報を利用する。音
種・音程列生成モジュール208の出力は現ピッチ候補
までのメロディ音列のパターンを表わし、その情報がマ
ッチングモジュール214に与えられる。マッチングモ
ジュール214は与えられるメロディパターンについて
メロディパターンルールベース216を検索する。検索
の結果、メロディパターンルールベース216にモジュ
ール208の出力が定めるメロディパターンに相当する
エントリーが含まれない場合、検索結果判定モジュール
218でNOとなり、次候補生成モジュール220で次
の現ピッチ候補が生成される。次候補生成モジュール2
20は222に示す現ピッチ+乱数の情報を用いて次の
現ピッチ候補を生成する。再び音種・音程列生成モジュ
ール208とマッチングモジュール214の動作が繰り
返され、この新たな現ピッチ候補についてその妥当性が
評価される。メロディパターンルールベース216に音
種・音程列生成モジュール208の出力が相当するメロ
ディパターンがエントリーされていれば検索結果判定モ
ジュール218でYESが成立し、その時の現ピッチ候
補が決定現ピッチ224として生成される。次のメロデ
ィ音の生成時に226に示すように決定現ピッチ224
は前ピッチ202となり上述した動作が繰り返されて新
たな現ピッチが決定される。このようにして音高列生成
装置200はメロディパターンルールベース216を利
用することにより、メロディの音高をリアルタイムで順
次生成することが出来る。したがって音高列生成装置2
00の出力(決定ピッチ224)を実時間演奏系228
(電子音源を含む)に与えることにより作曲と演奏とを
同時にリアルタイムで実行することが出来る。すなわち
音高列生成装置200はリアルタイムの作曲能力を有す
るものである。
Pitch Sequence Generating Device (FIG. 1B) A melody pitch sequence generating device 200 incorporated in the automatic composer is shown in a functional block of FIG. 1B. The purpose of the pitch string generation device 200 is to generate a pitch string of a melody. The pitch string generation device 200 can be combined with (but not necessarily limited to) the composition / conditional device 100 as shown in FIG. 1A. In that case, the pitch train generation device 2
00 generates the determined current pitch 224 each time the selected rhythm pattern 170 indicates the sounding timing of the melody sound. The row of the determined current pitch 224 defines the pitch row of the melody. In generating the determined current pitch 224 in FIG. 1B,
The pitch train generation device 200 adds the previous pitch 202 and the random number from the random number generation module 204 in the adder 206 to generate the first current pitch candidate Markov. The pitch type / pitch string generation module 208 to which the current pitch candidate is input generates a pitch type and pitch of the pitch string in which the current pitch candidate is added to the generated pitch string. The tone type / tone sequence generation module 208 uses the information of the current tonality 210 (key, scale) and the current chord 212 to classify the tone type and tone of the current pitch candidate. The output of the tone type / tone string generation module 208 represents the pattern of the melody tone string up to the current pitch candidate, and the information is given to the matching module 214. The matching module 214 searches the melody pattern rule base 216 for the given melody pattern. As a result of the search, when the melody pattern rule base 216 does not include an entry corresponding to the melody pattern defined by the output of the module 208, the search result determination module 218 is NO, and the next candidate generation module 220 generates the next current pitch candidate. To be done. Next candidate generation module 2
20 uses the current pitch + random number information indicated by 222 to generate the next current pitch candidate. The operations of the tone type / tone string generation module 208 and the matching module 214 are repeated again, and the validity of this new current pitch candidate is evaluated. If the melody pattern corresponding to the output of the tone type / pitch sequence generation module 208 is entered in the melody pattern rule base 216, YES is satisfied in the search result determination module 218, and the current pitch candidate at that time is generated as the determined current pitch 224. To be done. When the next melody sound is generated, the current pitch 224 is determined as indicated by 226.
Becomes the previous pitch 202 and the above-described operation is repeated to determine a new current pitch. In this way, the pitch string generation device 200 can sequentially generate the pitches of the melody in real time by using the melody pattern rule base 216. Therefore, the pitch train generation device 2
00 output (determined pitch 224) to real-time performance system 228
By giving to (including electronic sound source), composition and performance can be executed simultaneously in real time. That is, the pitch string generation device 200 has a real-time composition capability.

【0010】メロディパターンルール拡張装置(図1
C) 図1Cにメロディパターンルール拡張装置300の機能
ブロック図を示す。メロディパターンルール拡張装置3
00は図1Bに示すような音高列生成装置(自動メロデ
ィ生成装置)が参照するメロディパターンルールベース
を拡張する機能を実現するものである。メロディパター
ンルールベース330のうち330Fは自動作曲機に固
定的に組み込まれた固定メロディパターンルールベース
であり、330Eの部分がメロディパターンルールベー
スの拡張部である。メロディパターンルール拡張装置3
00によれば、この拡張部330Eのメロディパターン
ルールをユーザー入力メロディ302に基づいて作成す
ることが出来る。このルール作成を行う部分がメロディ
パターン(音種・音程列)生成ブロック310である。
ユーザー入力メロディ302はメロディパターン生成ブ
ロック310の音程分類モジュール312と音種分類モ
ジュール316に入力される。音程分類モジュール31
2はユーザー入力メロディ302の隣り合う音の間に形
成される音程を評価して音程列を形成する。例えば31
4に示すように音程分類モジュールは音種が同音(モー
ションなし)か上行順次進行か下行順次進行か上行跳躍
進行か下行跳躍進行かと言ったように音程を分類する。
316はユーザー入力メロディ302の各音の音種を分
類して音種列を形成する。音種分類モジュール316は
メロディ音の音種を分類するためにキー・スケール・コ
ード318の情報と各音種の標準ピッチクラスセット
(PCS)メモリ320の情報を利用する。例えば32
2に示すように音種分類モジュール316はメロディ音
の音種がコードトーンかスケールノートかアブェイラブ
ルノートかテンションノートかアヴォイドノートかと言
ったようにして音種を分類する。音程分類モジュール3
12の音程列出力と音種分類モジュール316の音種列
出力はユーザー入力メロディ302のパターン即ちユー
ザー入力メロディから導かれるメロディパターンのルー
ルを表わす。このルールはメロディパターンルールベー
スの拡張部330Eに記憶される。メロディ生成の際、
自動メロディ生成モジュール340(例えば図1Bの音
高列生成装置200)は拡張部330Eを含むメロディ
パターンルールベース330の全体を利用してメロディ
を生成する。このようなメロディパターンルール拡張装
置300を設けることによりユーザーが希望するメロデ
ィを生成する能力が高い自動作曲機を提供することが出
来る。
Melody pattern rule expansion device (see FIG. 1)
C) FIG. 1C shows a functional block diagram of the melody pattern rule expansion device 300. Melody pattern rule expansion device 3
00 realizes the function of expanding the melody pattern rule base referred to by the pitch sequence generating device (automatic melody generating device) as shown in FIG. 1B. Of the melody pattern rule base 330, 330F is a fixed melody pattern rule base fixedly incorporated in the automatic composer, and 330E is an extension of the melody pattern rule base. Melody pattern rule expansion device 3
00, the melody pattern rule of the extension section 330E can be created based on the user input melody 302. The part that creates this rule is the melody pattern (tone type / tone string) generation block 310.
The user input melody 302 is input to the pitch classification module 312 and the tone type classification module 316 of the melody pattern generation block 310. Pitch classification module 31
2 forms a pitch sequence by evaluating the pitch formed between the adjacent sounds of the user input melody 302. For example, 31
As shown in FIG. 4, the pitch classification module classifies the pitches such as whether the note type is the same sound (no motion), ascending sequential progress, descending sequential progress, ascending jumping progress or descending jumping progress.
316 classifies the sound type of each sound of the user input melody 302 to form a sound type sequence. The note type classification module 316 uses the information of the key scale code 318 and the information of the standard pitch class set (PCS) memory 320 of each note type to classify the note type of the melody note. For example 32
As shown in FIG. 2, the tone type classification module 316 classifies the tone type of the melody sound as if it were a chord tone, a scale note, an adjustable note, a tension note or an a void note. Pitch classification module 3
The 12 note sequence outputs and the note type classification module 316 note type output represent the pattern of the user input melody 302, that is, the rule of the melody pattern derived from the user input melody. This rule is stored in the expansion section 330E of the melody pattern rule base. When creating a melody,
The automatic melody generation module 340 (for example, the pitch string generation device 200 in FIG. 1B) generates a melody by using the entire melody pattern rule base 330 including the extension section 330E. By providing such a melody pattern rule expansion device 300, it is possible to provide an automatic composer having a high ability to generate a melody desired by the user.

【0011】ハードウェア構成(図2) 図1A、図1B、図1Cで述べたような機能を実現する
代表的なハードウェア構成を図2に示す。CPU2はR
OM4に記憶されるプログラムに従ってシステム全体を
制御する。ROM4にはプログラムの他、各種固定デー
タ(上述したデータベース等)を記憶する。RAM6は
種々の変数、一時データを記憶するものでCPU2のワ
ーキングメモリとして使用される。鍵盤8は通常の電子
鍵盤楽器の鍵盤で構成できユーザーのメロディ入力に使
用される。入力装置10には曲風入力装置や自動メロデ
ィ生成の開始、停止入力装置等を含む。鍵盤8と入力装
置10の状態は適宜CPU2に読み取られ対応する処理
が行われる。音源12はCPU2の制御のもとに楽音信
号を発生する。サウンドシステム14は音源12からの
楽音信号を受けそのサウンドを再生する。表示装置16
はCPU2の制御のもとにシステムの機能やメッセージ
等を表示する。表示装置16にはLEDや液晶ディスプ
レイ等が含まれる。クロック発振器18は音楽分解能時
間が経過するごとにパルスを発生してCPU2に割込み
をかけ、割込みプログラム(後述するインターラプトル
ーチン)を実行させる。
Hardware Configuration (FIG. 2) FIG . 2 shows a typical hardware configuration that realizes the functions described in FIGS. 1A, 1B and 1C. CPU2 is R
The entire system is controlled according to the program stored in the OM4. The ROM 4 stores various fixed data (such as the above-mentioned database) in addition to the program. The RAM 6 stores various variables and temporary data and is used as a working memory of the CPU 2. The keyboard 8 can be composed of a keyboard of an ordinary electronic keyboard instrument and is used for the user's melody input. The input device 10 includes a musical style input device, an input device for starting and stopping automatic melody generation, and the like. The states of the keyboard 8 and the input device 10 are appropriately read by the CPU 2 and the corresponding processing is performed. The sound source 12 generates a musical tone signal under the control of the CPU 2. The sound system 14 receives the tone signal from the sound source 12 and reproduces the sound. Display device 16
Displays system functions and messages under the control of the CPU 2. The display device 16 includes an LED and a liquid crystal display. The clock oscillator 18 generates a pulse each time the music resolution time elapses, interrupts the CPU 2, and executes an interrupt program (interrupt routine described later).

【0012】自動メロディ生成機能(図3) 図2の構成に組み込まれる自動メロディ生成機能のブロ
ック図を図3に示す。自動メロディ生成機能はメロディ
生成に必要な情報を入力する入力手段20、手動の音楽
データを生成する手段30、メロディの分析評価を行う
分析評価手段40、クロック発振器60、リズムカウン
タ70、メロディメモリ80、音源50を含む。入力手
段20には指定リズム種RHYを入力するリズムセレク
タ21、キーコードKCを入力する鍵盤装置22、指定
テンポTMPを入力するテンポ設定手段23を含む。な
お、入力手段20にはこの他に自動メロディ生成停止を
指示する手段とを含むが図示は省略してある。生成手段
30において構造生成手段32は音楽構造データベース
31から音楽構造データを取り出す。取り出された音楽
構造データは上位構造データとそれに合う下位構造デー
タからなる。コード生成手段34はコード進行データベ
ース33から音楽構造にあうコード進行を取り出しリズ
ムカウンタ70からの現時刻TにおけるコードCHOを
出力する。リズムパターン生成手段36はリズムパター
ンデータベース35からコード進行と曲風(指定リズム
種RHYと指定テンポTMP)に合うリズムパターンP
ATを取り出す。詳細には指定テンポTMPはテンポビ
ート対応マップ48によりビート種BEAT変換され、
これがリズムパターン生成手段36におけるリズムパタ
ーン生成の条件付の1つとしてリズムパターン生成手段
36に与えられる。このようにコード生成手段34、構
造生成手段32、リズムパターン生成手段36は図1A
で述べたような適性モジュールの機能を有している。乱
数発生手段38は乱数メモリ手段37からの乱数データ
をRANとして音高データ生成手段39に与える。音高
データ生成手段39は乱数データRANと前ピッチとか
ら現音高候補を生成する。分析評価手段40において音
種分類手段42はキーと指定リズム種RHYと音高デー
タ(音高データ生成手段39の出力或いは鍵盤装置22
の出力)を受けてその音種を標準ピッチクラスセット4
1を参照して分類する。音程分類手段43は前音高と現
音高(候補)の間に形成される音程をNTとして分類す
る。音種分類手段42と音程分類手段43の分類結果は
音種、音程列メモリ47に記憶される。固定メロディパ
ターンデータベース45は図2のROM4におかれる。
拡張メロディパターンデータベースメモリ46はメロデ
ィパターンデータベースの拡張用としてRAM6におか
れる。評価手段44は音種、音程列メモリ47からの音
種、音程列(メロディパターン)について固定メロディ
パターンデータベース45と拡張メロディパターンデー
タベースメモリ46を検索し、検索の結果、該当するル
ールがあればOKとの評価結果JDGを出力する。これ
により現音高が確定する。リズムカウンタ70はクロッ
ク発振器60から音楽分解能時間毎に与えられクロック
パルスをカウントして現時刻データTを出力するメロデ
ィメモリ80にはピットとTの列であるメロディ音列の
データが記憶される。音源50はメロディ音の発音タイ
ミングの都度、その音高データPITを受け対応する楽
音信号を発生する。
Automatic Melody Generation Function (FIG. 3) FIG. 3 shows a block diagram of the automatic melody generation function incorporated in the configuration of FIG. The automatic melody generation function has an input unit 20 for inputting information necessary for melody generation, a unit 30 for manually generating music data, an analysis and evaluation unit 40 for analyzing and evaluating a melody, a clock oscillator 60, a rhythm counter 70, and a melody memory 80. , Sound source 50. The input means 20 includes a rhythm selector 21 for inputting a designated rhythm type RHY, a keyboard device 22 for inputting a key code KC, and a tempo setting means 23 for inputting a designated tempo TMP. The input means 20 includes means for instructing to stop the automatic melody generation in addition to this, but it is not shown. In the generating means 30, the structure generating means 32 extracts music structure data from the music structure database 31. The extracted music structure data is composed of upper structure data and lower structure data matching it. The chord generation means 34 takes out chord progressions matching the music structure from the chord progression database 33 and outputs the chord CHO at the current time T from the rhythm counter 70. The rhythm pattern generating means 36 uses the rhythm pattern database 35 to select a rhythm pattern P that matches the chord progression and the musical style (designated rhythm type RHY and designated tempo TMP).
Take out the AT. Specifically, the designated tempo TMP is converted into a beat type BEAT by the tempo beat correspondence map 48,
This is given to the rhythm pattern generation means 36 as one of the conditions for the rhythm pattern generation in the rhythm pattern generation means 36. As described above, the chord generation means 34, the structure generation means 32, and the rhythm pattern generation means 36 are shown in FIG.
It has the function of the aptitude module as described in. The random number generation means 38 gives the pitch data generation means 39 the random number data from the random number memory means 37 as RAN. The pitch data generation means 39 generates a current pitch candidate from the random number data RAN and the previous pitch. In the analysis / evaluation means 40, the tone type classification means 42 uses a key, a designated rhythm type RHY, and pitch data (output of the pitch data generation means 39 or keyboard device 22
Output of the standard pitch class set 4
Classify with reference to 1. The pitch classifying unit 43 classifies the pitch formed between the previous pitch and the current pitch (candidate) as NT. The classification results of the pitch type classifying unit 42 and the pitch classifying unit 43 are stored in the pitch type and pitch string memory 47. The fixed melody pattern database 45 is stored in the ROM 4 of FIG.
The expanded melody pattern database memory 46 is stored in the RAM 6 for expanding the melody pattern database. The evaluation means 44 searches the fixed melody pattern database 45 and the extended melody pattern database memory 46 for the tone type, tone type and tone sequence (melody pattern) from the tone sequence memory 47, and if there is a corresponding rule as a result of the search, it is OK. The evaluation result JDG is output. This determines the current pitch. The rhythm counter 70 counts a clock pulse given from the clock oscillator 60 at each music resolution time and outputs the current time data T, and the melody memory 80 stores the data of the melody sound train which is a train of pits and T. The sound source 50 receives the pitch data PIT at each sounding timing of the melody sound and generates a corresponding tone signal.

【0013】各種音楽要素の表現形式(図4〜図6) 以下の実施例の説明(特にフローの説明)において各種
音楽要素は主として文字表現(記号表現)を使用し、必
要に応じて数値表現を使用してある。以下に各種音楽要
素の文字表現と数値表現(マシンレベルの表現)との対
応関係を図4〜図6に参照して説明する。コードタイプ
の文字表現はCHO(TYPE)である。コードタイプ
MAJは数値0、MINは数値1、7THは数値2、M
IN7は数値7、MAJ7は数値4でそれぞれ数値表現
される。マシンにおけるコードタイプのデータ長は例え
ば6ビットであり、これにより最大64種類のコードタ
イプを表現可能である。コードルートとキーの文字表現
はそれぞれCHO(ROOT)とKEYである。コード
ルート又はキーはそのピッチクラスによって特定され
る。ピッチクラスCは数値0、C#は1、Dは2以下同
様にしてBは11で数値表現される。従って、コードル
ートとキーの有効データ調は4ビットである。音楽構造
(上位/下位)における上位音楽構造はSTR1Dで文
字表現され、下位音楽構造はSTR2Dで文字表現され
る。AAの上位音楽構造は1H、BBは2H、CCは4
H……によって数値表現される。下位構造aaは1H、
bbは2H、ccは4H……により数値表現される。実
施例の装置では構造データの有効長を4ビット(ニブ
ル)で表現している。リズム種はRHYで文字表現す
る、リズム種ROCK(ロック)は1H、DISC(デ
ィスコ)は2H、16BE(16ビート)は4H、SW
IN(スウィング)は8H、WALT(ワルツ)は10
Hでそれぞれ数値表現される。音高データとキーコード
はそれぞれPITとKCによって表現される。音高デー
タとキーコードはピッチクラスとオクターブとによって
特定される。実施例では数値0がC2(ピッチクラスが
Cでオクターブが第2オクターブ)のピッチを表わしピ
ッチが半音上がるごとに+1する数値でピッチを表現し
ている。音種はNTで文字表現される音種コードトーン
(CHOT)は数値0、アブェイラブルノート(AVA
I)は数値1、スケールノート(SCAL)は数値2、
テンションノート(TENS)は数値3、アヴォイドノ
ート(AVOI)は数値4で表現され、エンドマーク
(END)はFHで表現される、音程の記号表現はMT
である、同音(SAME)は数値0、上行順次進行(+
STEP)は数値1、下行順次進行(−STEP)は数
値2、上行跳躍進行(+JUNP)は数値3、下行跳躍
進行(−JUNP)は数値4で表現され区切りマーク
(SEP)はFHで表現される。評価結果はJDG(フ
ラグJDG)で文字表現され、NGの評価結果は数値
0、GOODの評価結果は数値1で表現される。USE
MELはNOを数値0、YESを数値1で表現す
る。ピッチクラスセットの要素(ピッチクラス)は次の
ように表現される。ピッチクラスCが1H、C#が2
H、Dが4H以下同様にしてBが800Hで表現され
る。即ちピッチクラスは12ビット中のビット位置(例
えば最下位即ち第0ビット位置がC)におけるビット値
“1”によって表わされる。ピッチクラスの集合である
ピッチクラスセットはこのような12ビットデータ表現
間のビットごとの論理和で表現される。例えばCとDか
らなるピッチクラスセットは1Hと4Hとの論理和即ち
5Hによって表現される。ピッチクラスセットの各文字
表現はコードトーンのピッチクラスセットはPCS(C
T)であり、CTの代りにPN、SN、AN、AVを用
いればそれぞれテンションノート、スケールノート、ア
ブェイラブルノート、アヴォイドノートのピッチクラス
セットを文字表現する。リズムパターンの文字表現はP
ATである。リズムパターンの要素は16ビットデータ
で表現され、各ビット位置が1小節を16分割したとき
の各タイミングを表わす。リズムパターンはキーオンパ
ターン(発音タイミングのパターン)とキーオフパター
ン(消音タイミングのパターン)とからなる。小節線に
おける発音タイミング或いは消音タイミングは1Hで数
値表現される。小節線から1/16小節後における発音
・消音タイミングは2Hで表現される。以下同様であ
る。リズムパターンの要素の集合であるキーオンパター
ン或いはキーオフパターンは16ビットデータ要素間の
ビットごとの論理和によって表現される。例えば1小節
が4拍の拍子において1拍目と2拍目が発音タイミング
となるキーオンパターンは1Hと10Hの論理和11H
によって表現される。
Expression Format of Various Music Elements (FIGS. 4 to 6) In the following description of the embodiments (especially, the description of the flow), various music elements mainly use a character expression (symbol expression), and if necessary, a numerical expression. Is used. Correspondence between the character representation and the numerical representation (machine level representation) of various music elements will be described below with reference to FIGS. The character representation of the code type is CHO (TYPE). Code type MAJ is number 0, MIN is number 1, 7TH is number 2, M
IN7 is numerically expressed as 7 and MAJ7 is numerically expressed as 4. The data length of the code type in the machine is, for example, 6 bits, and it is possible to represent a maximum of 64 code types. The character representations of the chord root and the key are CHO (ROOT) and KEY, respectively. A chord root or key is specified by its pitch class. The pitch class C is represented by a numerical value 0, C # is 1, D is 2 and so on, and B is represented numerically by 11. Therefore, the effective data tone of the chord root and the key is 4 bits. The upper music structure in the music structure (upper / lower) is character-represented by STR1D, and the lower music structure is character-represented by STR2D. Upper music structure of AA is 1H, BB is 2H, CC is 4
It is expressed numerically by H ... Substructure aa is 1H,
bb is expressed numerically by 2H, cc is expressed by 4H ... In the apparatus of the embodiment, the effective length of the structure data is represented by 4 bits (nibbles). Rhythm type is expressed by RHY. Rhythm type ROCK (rock) is 1H, DISC (disco) is 2H, 16BE (16 beats) is 4H, SW.
IN (swing) is 8H, WALT (waltz) is 10
Each is represented numerically by H. The pitch data and the key code are represented by PIT and KC, respectively. The pitch data and the key code are specified by the pitch class and octave. In the embodiment, the numerical value 0 represents the pitch of C2 (the pitch class is C and the octave is the second octave), and the pitch is expressed by the numerical value which is incremented by 1 every time the pitch increases by one semitone. The tone type is expressed in NT characters. The tone type chord tone (CHOT) is 0, and the adjustable note (AVA).
I) is number 1, scale note (SCAL) is number 2,
Tension note (TENS) is expressed by numerical value 3, a void note (AVOI) is expressed by numerical value 4, end mark (END) is expressed by FH, pitch symbolic expression is MT.
The same sound (SAME) has a numerical value of 0 and progresses upward (+)
STEP) is a numerical value 1, descending sequential progress (-STEP) is a numerical value 2, ascending jump progress (+ JUNP) is a numerical value 3, descending jump progress (-JUNP) is a numerical value 4 and a delimiter mark (SEP) is FH. It The evaluation result is represented by JDG (flag JDG) in characters, the evaluation result of NG is represented by the numerical value 0, and the evaluation result of GOOD is represented by the numerical value 1. USE
R MEL expresses NO by the numerical value 0 and YES by the numerical value 1. The elements of the pitch class set (pitch class) are expressed as follows. Pitch class C is 1H, C # is 2
H and D are 4H or less, and B is similarly expressed by 800H. That is, the pitch class is represented by the bit value "1" at the bit position in 12 bits (for example, the least significant or 0th bit position is C). A pitch class set, which is a set of pitch classes, is expressed by a bitwise logical sum between such 12-bit data expressions. For example, a pitch class set consisting of C and D is expressed by a logical sum of 1H and 4H, that is, 5H. Each character representation of the pitch class set is PCS (C
T), and if PN, SN, AN, and AV are used instead of CT, the pitch class set of tension note, scale note, ablatable note, and a void note is expressed in characters, respectively. The character representation of the rhythm pattern is P
It is AT. The elements of the rhythm pattern are represented by 16-bit data, and each bit position represents each timing when one bar is divided into 16 parts. The rhythm pattern is composed of a key-on pattern (sound generation timing pattern) and a key-off pattern (silence timing pattern). The sound generation timing or the mute timing on the bar line is numerically expressed by 1H. The sounding / silence timing at 1/16 bar after the bar line is represented by 2H. The same applies hereinafter. A key-on pattern or a key-off pattern, which is a set of elements of a rhythm pattern, is expressed by a bitwise logical sum of 16-bit data elements. For example, in the case where one measure is 4 beats, the key-on pattern in which the first and second beats are the sounding timing is a logical sum 11H of 1H and 10H.
Represented by

【0014】各種データの記憶形式(図7〜図14) 次に各種データの例を図7〜図14を参照して説明す
る。データ長(1ワード)は16ビットである。データ
メモリの呼び名とデータメモリの先頭アドレス(先頭記
号番地)は同じ呼び名で呼ぶ。例えばコード進行データ
メモリはCPMで呼ばれ、コード進行データメモリの先
頭アドレスも同じくCPMで呼ばれる。図7に標準ピッ
チクラスセットデータベースメモリを示す。標準ピッチ
クラスセットデータベースメモリはコードトーンメモリ
CT、テンションメモリPN、オービースケールノート
SNとからなる。コードトーンメモリCTはコードタイ
プを受けてそのコードタイプの標準ピッチクラスセット
をかえすテーブルである。例えばコードトーンメモリC
Tの記号番地MAJにあるデータ91Hはコードタイプ
MAJの標準ピッチクラスセットがC、E、Gであるこ
とを示している。ここに標準ピッチクラスセットとはコ
ードルートをCとした時のピッチクラスセットのことで
ある。換言すると、標準ピッチクラスセットデータベー
スメモリは各音種のピッチクラスセットを相対的な音程
(音程構造)で表現したものである。テンションノート
メモリPNはコードタイプに対してテンションノートの
標準ピッチクラスセットをかえすテーブルである。例え
ばコードタイプMAJに対してテンションノートメモリ
PNはB、F#、A、Bが標準ピッチクラスセットであ
ることを示すデータ44Hをかえす。スケールノートメ
モリSNはリズム種(又はスケールの種類)に対してス
ケールノートの標準ピッチクラスセットデータベースメ
モリをかえすテーブルである。例えばリズム種ロック
(ROCK)に対してスケールノートメモリSNはデー
タAB5Hをかえしてスケールノートの標準ピッチクラ
スセットデータベースメモリがC、B、E、F、G、
A、Bであることを知らせる。図8に固定メロディパタ
ーンデータベースメモリMPM1と、音種、音程データ
メモリNTM、MTMを示す固定メロディパターンデー
タベースメモリMPM1は図2のROM4におかれる。
メモリMPM1はメロディパターンのルールベースを実
現するものであり、各ルールは2ワード(32ビット)
で表現される。各ルールは音種列と音程列からなる。例
えばメモリMPM1の最初のルールはコードトーン(C
HOT)から上方向順次進行(+STEP)によりアヴ
ェイラブルノート(AVAI)に進み、アヴェイラブル
ノートから上方向順次進行(+STEP)によりコード
トーン(CHOT)に進むパターンを表わしている。2
ワードのルールデータにおいて各音種、各音程は4ビッ
ト(1ニブル)で表現される。従ってこの記憶形式の場
合ルールで表現されるメロディパターンの音の数は最大
で4つである。ルールの第2ワードである音程列ワード
のSEPニブルはルールの終了マーク(ルールエントリ
ー間の区切りマーク)である。メモリMPM1の最終ア
ドレスには固定メロディパターンルールベースの終端を
示すコードENDが書かれている。MPM1と同様の記
憶形式をもつメモリMPM2はRAM6にメロディパタ
ーンルールベースの拡張用として設けられる。
Storage Format of Various Data (FIGS. 7 to 14) Next, examples of various data will be described with reference to FIGS. 7 to 14. The data length (1 word) is 16 bits. The name of the data memory and the head address (head symbol address) of the data memory are called with the same name. For example, the chord progression data memory is called CPM, and the head address of the chord progression data memory is also called CPM. FIG. 7 shows a standard pitch class set database memory. The standard pitch class set database memory comprises a chord tone memory CT, a tension memory PN, and an orby scale note SN. The chord tone memory CT is a table that receives chord types and returns the standard pitch class set of the chord types. For example, code tone memory C
The data 91H at the symbol address MAJ of T indicates that the standard pitch class set of the chord type MAJ is C, E, and G. Here, the standard pitch class set is a pitch class set where C is the chord root. In other words, the standard pitch class set database memory expresses the pitch class set of each note type with a relative pitch (pitch structure). The tension note memory PN is a table for changing the standard pitch class set of tension notes for chord types. For example, for the chord type MAJ, the tension note memory PN returns data 44H indicating that B, F #, A and B are standard pitch class sets. The scale note memory SN is a table for changing the standard pitch class set database memory of the scale note for the rhythm type (or scale type). For example, for a rhythm type rock (ROCK), the scale note memory SN replaces the data AB5H, and the standard pitch class set database memory for scale notes is C, B, E, F, G,
Notify A and B. The fixed melody pattern database memory MPM1 shown in FIG. 8 and the fixed melody pattern database memory MPM1 indicating the tone type, pitch data memory NTM, MTM are arranged in the ROM 4 of FIG.
The memory MPM1 realizes a melody pattern rule base, and each rule has 2 words (32 bits).
It is expressed by. Each rule consists of a tone type string and a pitch string. For example, the first rule of the memory MPM1 is the code tone (C
It shows a pattern in which an upward sequence (+ STEP) from HOT) progresses to an available note (AVAI), and an upward sequence from an available note (+ STEP) progresses to a chord tone (CHOT). Two
In the word rule data, each tone type and pitch is represented by 4 bits (1 nibble). Therefore, in the case of this storage format, the maximum number of sounds of the melody pattern expressed by the rule is four. The SEP nibble of the pitch sequence word which is the second word of the rule is the end mark (separation mark between rule entries) of the rule. At the final address of the memory MPM1, a code END indicating the end of the fixed melody pattern rule base is written. The memory MPM2 having the same storage format as the MPM1 is provided in the RAM 6 for expanding the melody pattern rule base.

【0015】音種列メモリNPMと音程列メモリMPM
は入力メロディパターン(鍵盤8からのユーザー入力メ
ロディから導かれるメロディパターン、又は自動生成メ
ロディから導かれるメロディパターン)を表現するもの
である。NPMとMPMは共にRAM6に形成される1
ワード(16ビット)音種列メモリNPMにおいて、各
音種は1ニブル(4ビット)で表わされ同様に1ワード
(16ビット)の音程列メモリMPMにおいて、各音程
データ項目は1ニブル(4ビット)で表現される。従っ
てNPM、MPMにより最大4音分の入力メロディパタ
ーンが表現される。後述するように新たなメロディ音の
生成(自動生成或いは鍵盤8からの新しいメロディ音の
入力)に対してNPMとMPMはニブルを単位とする右
シフトレジスタとして操作される。生成開始の際或いは
小節線のタイミングでNTMとMTMの内容は右端のニ
ブルがENDニブルとなるように初期化される。従って
図8に示すNTMとMTMは初期化の後3音までのパタ
ーンが入った状態を示している。メロディパターンルー
ルベースの拡張処理においてNTMとMTMの内容は追
加ルールとしてRAM6内の拡張メロディパターンルー
ルベースに追加される。メロディの自動生成処理におい
てNTMとMTMの内容はメロディパターンルールベー
スから対応するルールエントリーの有無を検索するため
に用いられる。図9にテンポ・ビット変換マップTBT
Mと乱数メモリRANMを示す。TBTMとRANMは
共にROM4におかれる。テンポ・ビット変換マップT
BTMは入力装置10からの指定テンポに対してビート
種(例えば16ビット)をかえすテーブルである。テン
ポ・ビット変換マップTBTMの出力は図1Aで述べた
ようにリズムパターンの条件付に使用される。乱数メモ
リRANMは乱数データを記憶する。乱数メモリRAN
Mはメロディの自動生成モードにおいて新たなメロディ
音の音高候補を得る際に利用される。乱数メモリRAN
Mの最終アドレスには乱数データの終端を示すエンドマ
ーク(ffffH)が記憶される。図10にコード進行
データベースメモリCPMを示す。このメモリCPMは
図2のROM4におかれる。メモリCPMはコード進行
のデータベースを実現するものである。データベースC
PMの各コード進行エントリーは次のデータ項目からな
る。第1ワードがリズム種の属性を表わす。例えば00
111の属性データはそのコード進行がリズム種ロック
(ROCK)、ディスコ(DISC)、16ビート(1
6BE)に合う属性を有することを示している。コード
進行エントリーのリズム種属性データ項目は図1Aで述
べたように指定リズム種との間の属性テストに用いられ
る。コード進行エントリーの第2ワードには上位に長
さ、下位に音楽構造属性が記憶される。例えば音楽構造
属性データ項目が101ならばそのコード進行が上位構
造AA、又はCCには合う属性をもつが上位構造BBに
は適さない属性をもつことを表わす。音楽構造属性デー
タ項目は図1Aで述べたように選択上位構造に関するコ
ード進行の適正テストで用いられる。コード進行エント
リーの第3ワード以降にはコード進行のデータ本体が記
憶される。各ワードは上位ワード(1ニブル)にコード
のルート、中位(2ニブル)にコードタイプ、下位(1
ニブル)にコード調を記憶する。各コード進行エントリ
ーの終端にはエントリー間のセパレータ(区切りマー
ク)としてワード0000Hが記憶される。コード進行
データベースメモリCPMの終端にはデータベースの終
端マークを表わすワードffffHが記憶される。
Tone string memory NPM and tone string memory MPM
Represents an input melody pattern (a melody pattern derived from a user input melody from the keyboard 8 or a melody pattern derived from an automatically generated melody). NPM and MPM are both formed in RAM6 1
In the word (16-bit) tone sequence memory NPM, each tone type is represented by 1 nibble (4 bits). Similarly, in the 1-word (16-bit) tone sequence memory MPM, each tone data item is 1 nibble (4 bits). Bit). Therefore, an input melody pattern for a maximum of four tones is expressed by NPM and MPM. As will be described later, NPM and MPM are operated as right shift registers in units of nibbles for generation of new melody sounds (automatic generation or input of new melody sounds from keyboard 8). At the start of generation or at the timing of bar lines, the contents of NTM and MTM are initialized so that the nibble at the right end becomes the END nibble. Therefore, NTM and MTM shown in FIG. 8 show a state in which patterns of up to three sounds are included after initialization. In the expansion processing of the melody pattern rule base, the contents of NTM and MTM are added to the expansion melody pattern rule base in the RAM 6 as additional rules. In the automatic melody generation process, the contents of NTM and MTM are used to search the melody pattern rule base for the presence or absence of the corresponding rule entry. Figure 9 shows the tempo / bit conversion map TBT
M and random number memory RANM are shown. Both TBTM and RANM are stored in ROM4. Tempo / bit conversion map T
The BTM is a table for returning the beat type (for example, 16 bits) with respect to the designated tempo from the input device 10. The output of the tempo / bit conversion map TBTM is used to condition the rhythm pattern as described in FIG. 1A. The random number memory RANM stores random number data. Random number memory RAN
M is used when obtaining a new pitch candidate of a melody tone in the melody automatic generation mode. Random number memory RAN
At the final address of M, an end mark (ffffH) indicating the end of random number data is stored. FIG. 10 shows the chord progression database memory CPM. This memory CPM is stored in the ROM 4 of FIG. The memory CPM realizes a database of chord progressions. Database C
Each PM chord progression entry consists of the following data items: The first word represents the attribute of the rhythm type. For example 00
In the 111 attribute data, the chord progression is rhythm type rock (ROCK), disco (DISC), 16 beats (1
6 BE) is shown. The rhythm type attribute data item of the chord progression entry is used for the attribute test with the designated rhythm type as described in FIG. 1A. In the second word of the chord progression entry, the length is stored in the upper part and the music structure attribute is stored in the lower part. For example, if the music structure attribute data item is 101, it indicates that the chord progression has an attribute suitable for the superstructure AA or CC but not suitable for the superstructure BB. The music structure attribute data item is used in the chord progression adequacy test for the selected superstructure as described in FIG. 1A. The data body of the chord progression is stored in the third and subsequent words of the chord progression entry. Each word is the root of the code in the upper word (1 nibble), the code type in the middle (2 nibbles), and the lower (1 nibble).
(Nibble) memorize the chord tone. At the end of each chord progression entry, the word 0000H is stored as a separator (separation mark) between the entries. At the end of the chord progression database memory CPM is stored the word ffffH representing the end mark of the database.

【0016】図11に音楽構造データベースメモリを示
す。音楽構造データベースメモリは図2のROM4にお
かれる。音楽構造データベースメモリは上位構造データ
ベースメモリSTR1と下位構造データベースメモリS
TR2とからなる。上位構造データベースメモリSTR
1は曲の構造を楽節構造列として表現した上位構造列の
データベースを記憶する。従って各ワードに最大4楽節
の上位構造列データが記憶される例えば第1ニブルがA
A、第2ニブルがBB、第3ニブルがAA、第4ニブル
がENDの曲構造ワードは第1楽節がAA、第2楽節が
BB、第3楽節(最終楽節)がAAであることを示す。
上位構造データベースメモリSTR1の終端にはデータ
ベースの終端を示すワードffffHが記憶される。下
位構造データベースメモリSTR2は楽節内部構造(8
小節構造)のデータベースを記憶する。下位構造データ
ベースメモリSTR2の各下位構造エントリーは3ワー
ドからなり第1ワードが属性に割り当てられ、第2と第
3ワードが8小節の構造表現に割り当てられる。属性ワ
ード(第1ワード)はそのエントリーの楽節内部構造
(8小節の構造列)が適合する上位構造を示す情報をも
つ。例えば1100の属性データ項目はその楽節内部構
造がCCかDDの楽節には適合するがAAやBBの楽節
には適合しないものであることを表わす。下位構造デー
タベースメモリにおける属性データは図1Aで述べたよ
うに上位構造に適合する下位構造を選択するための属性
テストで用いられる。下位構造エントリーの第2と第3
ワードにおいて各小節の構造は1ニブル(4ビット)で
表現される。詳細には第2ワードの第1ニブル(最上位
4ビット)が第1小節の構造、第2ニブルは第2小節の
構造、以下同様にして第3ワードの第1ニブルは第5小
節の構造、第3ワードの第4ニブル(最下位4ビット)
が第8小節の構造を表わす。下位構造データベースメモ
リSTR2の最終アドレスにはエンドマークを示すワー
ドffffHが記憶される。
FIG. 11 shows a music structure database memory. The music structure database memory is located in ROM 4 of FIG. The music structure database memory includes a higher structure database memory STR1 and a lower structure database memory S.
It consists of TR2. High-level structure database memory STR
Reference numeral 1 stores a database of higher-order structure sequences that represent the structure of a song as a passage structure sequence. Therefore, for example, the first nibble in which the upper structure sequence data of a maximum of four movements is stored in each word is A
A, the second nibble is BB, the third nibble is AA, and the fourth nibble is END, the musical composition word is AA for the first movement, BB for the second movement, and AA for the third movement (final movement). ..
A word ffffH indicating the end of the database is stored at the end of the upper structure database memory STR1. The substructure database memory STR2 has a passage internal structure (8
Store a database of bar structure). Each substructure entry of the substructure database memory STR2 consists of 3 words, the first word is assigned to the attribute, and the second and third words are assigned to the structural representation of 8 bars. The attribute word (first word) has information indicating a higher-level structure to which the entry internal structure (structure sequence of 8 measures) conforms. For example, the attribute data item 1100 indicates that the internal structure of the phrase is compatible with the CC or DD phrase but not with the AA or BB phrase. The attribute data in the substructure database memory is used in the attribute test for selecting the substructure that matches the superstructure as described in FIG. 1A. Substructure entry 2nd and 3rd
The structure of each bar in a word is represented by 1 nibble (4 bits). Specifically, the first nibble (most significant 4 bits) of the second word is the structure of the first bar, the second nibble is the structure of the second bar, and so on. Similarly, the first nibble of the third word is the structure of the fifth bar. , 4th nibble of 3rd word (least 4 bits)
Indicates the structure of the eighth measure. The word ffffH indicating the end mark is stored at the final address of the lower structure database memory STR2.

【0017】図12にリズムパターンデータベースメモ
リRPMを示す。リズムパターンデータベースメモリR
PMは図2のROM4におかれる。リズムパターンデー
タベースメモリRPMは自動生成されるメロディのリズ
ムパターン(音調列)のデータベースを実現するもので
ある。リズムパターンデータベースメモリRPMの各エ
ントリーは4ワードからなり第1ワードがリズム種に関
する属性を表わし、第2ワードが上位にビート種の属
性、下位に音楽の下位構造に関する属性を記憶し、第3
ワードがキーオンパターンを表わし、第4ワードがキー
オフパターンを表わす。エントリーの第1ワードにおか
れるリズム種属性データ項目が00111ならばそのエ
ントリーのリズムパターンがリズム種ロック(ROC
K)、ディスコ(DISC)、16ビート(16BE)
には適するが、スウィング(SWIN)ゃワルツ(WA
LT)には適さないことを表わす。又、リズムパターン
エントリーの第2ワード下位におかれる構造属性データ
項目が101であればそのエントリーのリズムパターン
がaa又はccの小節構造には適するがbbの小節構造
には適さないことを表わす。エントリーの第3ワードに
記憶されるキーオンパターンは1小節における各音の発
音タイミングを記述する。第4ワードにおかれるキーオ
フパターンは1小節内の各音の消音タイミングを記述す
る。リズムパターンデータベースメモリRPMの最終ア
ドレスには終端マークを表わすワードffffHが記憶
される、各リズムパターンエントリーの第1と第2ワー
ドにある属性データは図1Aで述べたようにリズムパタ
ーンデータベースから選択下位構造、指定リズム、指定
ビート(テンポ)に合うリズムパターンを検索する際の
適性テストで使用される。実施例で使用されるその他の
定数、変数について図13と図14を参照して説明す
る。MPM2はユーザー演奏による拡張メロディパター
ンデータベースないしその先頭アドレスを表わす。拡張
メロディパターンデータベースMPM2は図2のRAM
6に作成される、MPM2SIZEは拡張メロディパタ
ーンデータベースのメモリサイズを表わす。MEASは
1小節の長さを表わすCP Cはコード進行の長さのカ
ウンタ(コード長のアキュムレータ)である、Tは現時
刻を表わすリズムカウンタである、BARは小節カウン
タである、小節カウンタBARの値はT/MEASの整
数部で定められる、PMPは指定テンポを表わす、BE
ATは指定ビート種を表わすもので指定テンポPMPを
テンポ・ビート変換マップにとおすことによって得られ
る。STRD1は上位構造データベースメモリSTR1
から選択された上位構造(例えばAAの楽節構造)を表
わすSTRD2は下位構造データベースメモリSTR2
から選択した下位構造(小節構造例えばaa)を表わ
す。PTIは現在の音高を表わしPREV PITは前
音高を表わす。
FIG. 12 shows the rhythm pattern database memory RPM. Rhythm pattern database memory R
PM is stored in the ROM 4 of FIG. The rhythm pattern database memory RPM realizes a database of automatically generated melody rhythm patterns (tone sequences). Each entry of the rhythm pattern database memory RPM is made up of 4 words, the first word stores the attribute of the rhythm type, the second word stores the attribute of the beat type in the upper and the attribute of the lower structure of the music in the lower.
The word represents the key-on pattern and the fourth word represents the key-off pattern. If the rhythm type attribute data item in the first word of the entry is 00111, the rhythm pattern of the entry is the rhythm type lock (ROC
K), disco (DISC), 16 beats (16BE)
Suitable for, but swing (SWIN) and waltz (WA
It is not suitable for LT). Further, if the structure attribute data item placed in the lower second word of the rhythm pattern entry is 101, it means that the rhythm pattern of the entry is suitable for the bar structure of aa or cc but not for the bar structure of bb. The key-on pattern stored in the third word of the entry describes the sounding timing of each note in one bar. The key-off pattern in the 4th word describes the mute timing of each note within one bar. The word ffffH representing the end mark is stored at the final address of the rhythm pattern database memory RPM. The attribute data in the first and second words of each rhythm pattern entry is selected from the rhythm pattern database as described in FIG. 1A. Used in aptitude tests when searching for rhythm patterns that match the structure, specified rhythm, and specified beat (tempo). Other constants and variables used in the embodiment will be described with reference to FIGS. 13 and 14. MPM2 represents an extended melody pattern database played by the user or its start address. The extended melody pattern database MPM2 is the RAM of FIG.
MPM2SIZE created in 6 represents the memory size of the extended melody pattern database. MEAS is a CP that represents the length of one bar C is a chord progression length counter (chord length accumulator), T is a rhythm counter representing the current time, BAR is a bar counter, and the bar counter BAR value is determined by the integer part of T / MEAS. , PMP represents a designated tempo, BE
AT represents a designated beat type and is obtained by passing a designated tempo PMP to a tempo / beat conversion map. STR1 is a high-level structure database memory STR1
STRD2 representing the upper structure (eg, AA passage structure) selected from the lower structure database memory STR2
Represents a substructure (bar structure, for example, aa) selected from. PTI represents the current pitch and PREV PIT represents the front pitch.

【0018】STR1 Pは上位構造データベースのワ
ードポインタである、STR2 Pは下位構造データベ
ースのワード(アドレス)ポインタである。STR1
Pは上位構造要素のカウンタ(上位構造データベースメ
モリにおける曲構造を表わすワード内の楽節カウンタ)
である、STR2 Pは下位構造要素のカウンタ(下位
構造データベースメモリのエントリーにおける第2、第
3ワードにしめる8小節構造への小節カウンタ)であ
る。カウンタSTR1D PはデータベースSTR1か
ら選択した曲構造ワードの中から現在の時刻における楽
節構造を取り出す際に使用される。カウンタSTR2D
PはデータベースSTR2の中から選択したエントリ
ーに対し現在の時刻における小節構造を取り出す際に用
いられる。RPM Pはリズムパターンデータベースメ
モリRPMへのワード(アドレス)ポインタである。C
PM Pはコード進行データベースCPMへのワード
(アドレス)ポインタである。RANM Pは乱数デー
タメモリRANMへのワード(アドレス)ポインタであ
る。MODEは自動作曲機のモードを表わす。メロディ
を自動生成しない通常のモードはNORMALで示さ
れ、メロディが自動生成されるモードはRMELODY
で示される、KEYONは押鍵状態のフラグである、こ
のフラグKEYONは押鍵状態をYES、離鍵状態をN
Oで示す、PKEYONは直前のタイミングでの押鍵状
態を示すフラグであり押鍵状態をYES、離鍵状態をN
Oで示す。USER MELはユーザーの演奏が小節内
にあったかどうかを示すフラグである。このフラグUS
ER MELは自動生成モードRMELODYにおいて
ユーザーのメロディ演奏によるメロディパターンをメロ
ディパターンデータベースに追加するためのメロディパ
ターンルール拡張モード(その間メロディの自動生成は
禁止される)を設定するためのフラグとして用いられ
る。
STR1 P is STR2, which is a word pointer of the upper structure database P is a word (address) pointer of the lower structure database. STR1
P is a counter of the upper structure element (a passage counter in a word representing a music structure in the upper structure database memory)
Is STR2 P is a counter of a substructure element (a bar counter for an 8-bar structure which is the second and third words in the entry of the substructure database memory). Counter STR1D P is used when retrieving the phrase structure at the current time from the music structure word selected from the database STR1. Counter STR2D
P is used to retrieve the bar structure at the current time for the entry selected from the database STR2. RPM P is a word (address) pointer to the rhythm pattern database memory RPM. C
PM P is a word (address) pointer to the chord progression database CPM. RANM P is a word (address) pointer to the random number data memory RANM. MODE represents the mode of the automatic composer. The normal mode in which no melody is automatically generated is indicated by NORMAL, and the mode in which a melody is automatically generated is RMELODY.
, KEYON is a key-depression state flag. This flag KEYON indicates that the key-depression state is YES and the key-release state is N.
PKEYON, which is indicated by O, is a flag indicating the key pressing state at the immediately preceding timing, and the key pressing state is YES and the key releasing state is N.
Shown as O. USER MEL is a flag indicating whether or not the user's performance is within the bar. This flag US
ER MEL is used as a flag for setting a melody pattern rule expansion mode for adding a melody pattern by a user's melody performance to the melody pattern database in the automatic generation mode RMELODY (while automatic generation of melody is prohibited).

【0019】実施例の動作概要 実施例の自動作曲機はリアルタイムで作曲を行い作曲作
業と平行して作曲したものをリアルタイム演奏する。入
力装置からの生成開始指示に対し自動作曲機の動作モー
ドは自動メロディ生成モードに移行する生成開始指示に
応答して自動作曲機は作曲にかかる曲の構造を決定す
る。この決定は音楽構造データベースから曲構造ワード
を取り出すことによって始められる。更に曲構造ワード
に含まれる最初の楽節の構造を生成開始時の構造として
選択して、選択楽節構造に適した楽節内部構造(小節構
造、下位構造)を下位構造データベースから取り出しそ
の最初の小節構造を曲の最初の小節構造として選択す
る。更に自動作曲機はコード進行データベースから楽節
の構造(上位構造)に適したコード進行を取り出し、そ
のコード進行の最初のコードを曲の最初のコードとして
決定する。更に自動作曲機は小節構造(下位構造)に合
い、かつ、入力装置からの指定リズムと指定ビートに合
うリズムパターンをリズムパターンデータベースから取
り出す。取り出したリズムパターンは1小節の長さをも
っており、その1小節における自動メロディ音の発音タ
イミング情報と消音タイミング情報がそれぞれキーオン
パターン、キーオフパターンとして書かれている。指定
テンポに従う音楽時間の進行に伴い取り出したリズムパ
ターンから各音楽時点における情報が読み出される。読
み出した情報が自動メロディ音の発音タイミングを示す
時に自動作曲機はメロディ音の音高を決定する。自動メ
ロディ音の決定は次のようにして行われる。自動作曲機
は乱数データメモリから乱数データを取り出しそれに前
メロディ音を加えて新たに生成すべきメロディ音の音高
候補を作る。次に自動作曲機は音高候補までのメロディ
パターン(音種列NTMと音程列MTMとで定められ
る)を作成し、そのメロディパターンについてメロディ
パターンルールベースMPN1、MPN2を検索する。
検索が失敗すれば別の音高候補を生成して検索を繰り返
す。検索が成功すればその時の候補が新たなメロディ音
の音高となる、このようにして新たに生成されたメロデ
ィ音の音高データは音源を通してサウンドとして再生さ
れる(演奏される)。現在の時刻におけるリズムパター
ンのタイミング情報がメロディ音の消音タイミングを示
している場合には発音中のメロディ音を音源を介して消
音する。リズムパターンデータベースから取り出したリ
ズムパターンは1小節の長さなので作曲機は1小節の音
楽時間が経過する毎に再度リズムパターンデータベース
から音楽の進行に合う適当なリズムパターンを取り出
す。即ちリズムパターンデータベースから指定リズム、
指定ビートに合い、かつ新たな小節の構造に合うリズム
パターンを取り出す。作曲機は、コード進行データベー
スから取り出したコード進行をリズムカウンタからの現
時刻に従って走査する。本実施例ではコード進行の長さ
は上位構造(楽節)の長さと同じである。選択中のコー
ド進行が終了すると(1つの楽節が終了すると)、自動
作曲機は曲構造ワードの中から次の楽節構造(上位構
造)を取り出しその楽節構造に合うコード進行をコード
進行データベースから取り出す。以上の様にしてメロデ
ィの自動生成が行われる。なお、コード進行データベー
スから取り出したコード進行に基づいて自動伴奏を行う
ことは容易である。本実施例の自動作曲機は自動メロデ
ィ生成モードにおいて鍵盤からユーザーのメロディ入力
が行われた場合にそのメロディをパターン化(ルール
化)し、それを追加ルールとしてメロディパターンルー
ルベースに追加することが出来る。これをメロディパタ
ーンルール拡張機能と呼ぶ。即ち1小節中に鍵盤で最初
の押鍵が発生すると自動作曲機のモードはメロディルー
ルベース拡張モード(USER MEL=YESで示さ
れる)に移行する。自動作曲機は鍵盤からのユーザーメ
ロディ音に対しその音種と音程を評価する。評価した音
種と音程はそれぞれ音程列メモリMTMと音種列メモリ
NTMに右シフト方式でロードされる。次の小節線のタ
イミングでNTMとMTMには1小節の間に入力したユ
ーザーのメロディをルール化したメロディパターン情報
が記憶される。そこで自動作曲機はNTMとMTMにあ
るメロディパターン情報を拡張メロディパターンルール
ベースMPM2に書き込んでメロディパターンルールベ
ースの拡張を実現する。小節線タイミングでメロディパ
ターンルールベース拡張モードは自動的に解除され、メ
ロディの自動生成が行われる自動生成モードに復帰す
る。
Outline of Operation of the Embodiment The automatic composer of the embodiment composes in real time, and performs the composition in parallel with the composition work in real time. In response to the generation start instruction from the input device, the operation mode of the automatic composer shifts to the automatic melody generation mode. In response to the generation start instruction, the automatic composer determines the structure of the music composition. This decision is initiated by retrieving the song structure word from the music structure database. Furthermore, the structure of the first phrase contained in the song structure word is selected as the structure at the start of generation, and the internal structure of the phrase (bar structure, substructure) suitable for the selected structure is retrieved from the substructure database and the first bar structure is extracted. Is selected as the first bar structure of the song. Furthermore, the automatic composer retrieves a chord progression suitable for the structure of the passage (upper structure) from the chord progression database and determines the first chord of the chord progression as the first chord of the song. Furthermore, the automatic composer retrieves from the rhythm pattern database a rhythm pattern that matches the bar structure (substructure) and that matches the specified rhythm from the input device and the specified beat. The extracted rhythm pattern has a length of one bar, and the sounding timing information and the mute timing information of the automatic melody sound in the one bar are written as a key-on pattern and a key-off pattern, respectively. The information at each music point is read from the rhythm pattern extracted as the music time progresses according to the specified tempo. The automatic composer determines the pitch of the melody tone when the read information indicates the sounding timing of the automatic melody tone. The automatic melody tone is determined as follows. The automatic composer takes random number data from the random number data memory and adds a previous melody tone to it to create pitch candidates for a new melody tone to be generated. Next, the automatic composer creates a melody pattern (defined by the tone type sequence NTM and the tone sequence MTM) up to the pitch candidate, and searches the melody pattern rule bases MPN1 and MPN2 for the melody pattern.
If the search fails, another pitch candidate is generated and the search is repeated. If the search is successful, the candidate at that time becomes the pitch of the new melody tone. The pitch data of the melody tone newly generated in this way is reproduced (played) as a sound through the sound source. When the timing information of the rhythm pattern at the present time indicates the silencing timing of the melody sound, the sounding melody sound is muted via the sound source. Since the rhythm pattern retrieved from the rhythm pattern database is one bar long, the composer retrieves an appropriate rhythm pattern suitable for the progress of music again from the rhythm pattern database every time one bar of music time elapses. That is, the specified rhythm from the rhythm pattern database,
The rhythm pattern that matches the specified beat and the new measure structure is extracted. The composer scans the chord progression retrieved from the chord progression database according to the current time from the rhythm counter. In this embodiment, the length of chord progression is the same as the length of the upper structure (sentence). When the chord progression being selected ends (when one passage ends), the automatic composer retrieves the next passage structure (superstructure) from the music structure word and retrieves the chord progression that matches the passage structure from the chord progression database. . The melody is automatically generated as described above. Note that it is easy to perform automatic accompaniment based on the chord progression extracted from the chord progression database. In the automatic composer of the present embodiment, when the user inputs a melody from the keyboard in the automatic melody generation mode, the melody can be patterned (ruled) and added to the melody pattern rule base as an additional rule. I can. This is called a melody pattern rule extension function. That is, when the first key depression occurs on the keyboard within one bar, the mode of the automatic composer is the melody rule extension mode (USER MEL = YES). The automatic composer evaluates the pitch and pitch of the user melody sound from the keyboard. The evaluated tone types and pitches are loaded into the tone sequence memory MTM and the tone sequence memory NTM by the right shift method, respectively. At the timing of the next bar line, the NTM and MTM store melody pattern information which is a rule of the melody of the user input during one bar. Therefore, the automatic composer writes the melody pattern information in NTM and MTM into the extended melody pattern rule base MPM2 to realize the extension of the melody pattern rule base. At the bar line timing, the melody pattern rule base expansion mode is automatically canceled and the melody is automatically generated, and the automatic generation mode is resumed.

【0020】フローの説明 以下、図15〜図36を参照して実施例を更に詳細に説
明する。メインフロー(図15) 図2のCPUが実行するメインルーチンのフローを図1
5に示す。先ず、メインルーチンはステップ15−1で
システムを初期化する。メインループ15−2〜15−
16のエントリー15−2でキースキャンを実行して鍵
盤8と入力装置10の状態を読み込む。続いて操作され
た各キーに対応して所要の処理を実行する即ち、生成開
始指示があった場合には(ステップ15−3)、生成開
始処理15−4(図18)を実行し、停止指示があった
時には(ステップ15−5)、停止処理15−6(図2
4)を実行し、鍵盤で押鍵があった時には(ステップ1
5−7)、押鍵処理15−8(図25)を実行し、鍵盤
で離鍵があった時には(ステップ15−9)、離鍵処理
15−10(図26)を実行し、入力装置10からリズ
ム切換が指示された時には(ステップ15−11)、リ
ズム切換15−12を実行してリズム種レジスタRHY
に指定されたリズム種を設定し、入力装置10からテン
ポ設定が入力された時には(15−13)、テンポ設定
15−14を実行してテンポレジスタテンポに指定され
たテンポを設定しその他の入力に対しては(ステップ1
5−15)、その他の処理15−16を実行する。インタラプトルーチン(図16) 図16にインターラプトルーチンのフローを示す。イン
ターラプトルーチンは図2のロック発振器18から音楽
分解能時間の経過を表わす信号が発生する都度起動され
る。先ず16−1でMODE=NORMALかどうか即
ちモードがノーマルかどうかを判定する。モードがノー
マルならばそのままリターンしノーマルでないならば
(自動メロディモードならば)、以下の処理を行う。即
ち、ステップ16−2で押鍵中かどうかを調べ押鍵中な
ら押鍵中の処理16−3(図27)を実行してからステ
ップ16−9に進む。押鍵中でなければステップ16−
4でUSER MEL=YESかどうか即ち現在の小節
でユーザーからのメロディ入力があったかどうか(メロ
ディパターンルールベース拡張モードかどうか)を判定
しUSER MEL=YESがそのままステップ16−
9に進み、USER MEL=YESが成立するなら、
ステップ16−5に進んでGetB(*(RPM P+
1),TmodMEAS,1)=1かどうか即ち自動メ
ロディ音の発音時刻かどうかを判定する自動メロディ音
の発音時刻であれば発音時刻の処理16−6(図33)
を実行してからステップ16−9に進む発音時刻でなけ
ればステップ16−7に進みGetB(*(RPM
+2),TmodMEAS,1)=1かどうか即ち自動
メロディ音の消音時刻かどうかを判定する自動メロディ
音の消音時刻であれば消音時刻の処理16−8(図3
5)を実行してからステップ16−9に進み消音時刻で
なければ直ちにステップ16−9に進む。ステップ16
−9ではInc CP C,T PKEYON=KEY
ONを実行してコード進行のカウンタ、リズムカウン
タ、を更新し現在の鍵状態レジスタの内容を直前の鍵状
態レジスタに写し取る。次にステップ16−10でコー
ド進行の中間かどうかを調べコード進行達しておれば実
行して処理(図19)、コード進行生成処理(図21)
を行うステップ16−12で小説かどうかをTmodM
EAS=0から判定し小節線タイムであればステップ1
6−13を実行して下位構造生成処理(図20)リズム
パターン生成処理(図23)メロディパターンDB拡張
(図36)を実行する。
Description of Flow Hereinafter, the embodiment will be described in more detail with reference to FIGS. Main Flow (FIG. 15) FIG. 1 shows the flow of the main routine executed by the CPU of FIG.
5 shows. First, the main routine initializes the system in step 15-1. Main loop 15-2 to 15-
A key scan is executed at entry 15-2 of 16 to read the states of the keyboard 8 and the input device 10. Subsequently, the required processing is executed corresponding to each operated key. That is, when the generation start instruction is given (step 15-3), the generation start processing 15-4 (FIG. 18) is executed and stopped. When there is an instruction (step 15-5), the stop processing 15-6 (see FIG. 2).
4) is executed, and when there is a key depression on the keyboard (step 1
5-7), the key depression process 15-8 (FIG. 25) is executed, and when the keyboard is released (step 15-9), the key release process 15-10 (FIG. 26) is executed and the input device is operated. When the rhythm switching is instructed from 10 (step 15-11), the rhythm switching 15-12 is executed to execute the rhythm type register RHY.
When the tempo setting is input from the input device 10 (15-13), the tempo setting 15-14 is executed to set the specified tempo in the tempo register tempo and other inputs are set. For (step 1
5-15) and other processing 15-16 is executed. Interrupt Routine (FIG. 16) FIG. 16 shows the flow of the interrupt routine. The interrupt routine is activated each time the lock oscillator 18 of FIG. 2 generates a signal indicating the passage of the music resolution time. First, in 16-1, it is determined whether MODE = NORMAL, that is, whether the mode is normal. If the mode is normal, it returns as it is, and if it is not normal (in the automatic melody mode), the following processing is performed. That is, in step 16-2, it is checked whether or not the key is being pressed, and if the key is being pressed, the key pressing process 16-3 (FIG. 27) is executed and then the process proceeds to step 16-9. If the key is not being pressed, step 16-
USER in 4 It is determined whether or not MEL = YES, that is, whether or not there is a melody input from the user at the current bar (whether the melody pattern rule base expansion mode is set) or not. If MEL = YES, step 16-
Go to 9, USER If MEL = YES holds,
Proceed to Step 16-5, and get B (* (RPM P +
1), Tmod MEAS, 1) = 1, that is, whether it is the sounding time of the automatic melody sound. If it is the sounding time of the automatic melody sound, processing 16-6 (FIG. 33)
Is executed and then the process proceeds to step 16-9. If it is not the pronunciation time, the process proceeds to step 16-7 and GetB (* (RPM P
+2), TmodMEAS, 1) = 1, that is, whether or not the silent time of the automatic melody sound is determined.
After executing 5), the process proceeds to step 16-9, and if it is not the mute time, the process immediately proceeds to step 16-9. Step 16
-9 Inc CP C, T PKEYON = KEY
When ON is executed, the chord progression counter and rhythm counter are updated, and the contents of the current key status register are copied to the immediately preceding key status register. Next, in step 16-10, it is checked whether the chord progression is in the middle, and if the chord progression is reached, the chord progression is executed (FIG. 19) and the chord progression generation processing (FIG. 21).
Step 16-12 to perform TmodM
Judging from EAS = 0, if it is the bar line time, step 1
6-13 to execute the substructure generation process (FIG. 20), the rhythm pattern generation process (FIG. 23), and the melody pattern DB extension (FIG. 36).

【0021】初期化(図17) メインルーチンの初期化15−11の詳細を図17に示
す。17−1でSTR1 P=STR1、STR2
=STR2、RPM P=RPM、CPM P=CP
M、STR1D P=0、STR2D P=0、CPM
P=0、RANM P=RANMを実行して各種ポ
インタを初期化し、17−2でRHY=ROCK、ME
AS=16、TMP=120、BEAT=*(TBTM
+TMP)、*MPM2=f000H、KEY=C、P
REV PIT=24を実行し17−3でMODE=N
OMAL、KEYON=NOを実行してセットし、最後
に17−4でNTM=f000H、MTM=f000H
を実行して音種と音程データメモリを初期化する。生成開始処理(図18) 生成開始処理ルーチンの詳細を18に示す。このルーチ
ンは入力装置生成開始指示があった時に行われるルーチ
ンである。先ず(18−1)音楽構造を選択するために
音楽の上位構造生成(図19)と下位構造生成(図2
0)を実行する。次にコード進行生成処理18−2(図
22)を実行してコード進行データベースから上位構造
にあうコード進行を選択する。次にリズムパターン生成
処理18−3(図23)を実行してリズムパターンデー
タベースから音楽の下位構造にあい、指定リズムにあ
い、かつ指定ビートにあうリズムパターンを選択する。
次にステップ18−4でT=0によりリズムカウンタを
初期化し18−5で*NTM=f000Hにより音種メ
モリを初期化しステップ18−6で*MTM=f000
Hにより音程メモリを初期化しステップ18−7でMO
DE=RMELODYにより状態フラグを生成モードに
設定する。上位構造生成(図19) 図19に上位構造生成ルーチンの詳細なフローを示す。
このルーチンは入力装置10から生成開始指示があった
場合、或いはコード進行の終端に達したときに実行され
る。上位構造生成ルーチンの目的は、楽曲の上位構造を
生成し且つ上位構造にあう下位構造を設定することであ
る。上位構造の生成は上位構造データベースSTR1か
ら上位構造データを取り出すことで行われる。詳細に述
べると、ステップ19−1でpost=STR1D
×4+3、STRD1=GetB(*STR1 P,p
ost,4)を実行して上位構造データベースSTR1
から上位構造(楽節構造)データSTRD1を取り出
す。続いて19−2から19−5(19A)で次回の上
位構造生成ルーチンのために次の上位構造をロケートす
る。即ち19−2でSTR1D Pをインクリメント
し、STR1D P=4(ステップ19−3)、或いは
*STR1D P=END(ステップ19−4)であれ
ばSTR1D P=0、Increment STR1
P(ステップ19−5)を実行する。次に19−6〜
19−10(19B)において、19−1で取り出した
上位構造にあう下位構造列をロケートする。ここでロケ
ートされた下位構造列の中から個々の下位構造が取り出
される(図20参照)。詳細に述べると、ステップ19
−6でSTR2 P=STR2 P+3を実行し、その
結果*STR2 P=ffffH(ステップ19−7)
が成立するならSTR2 P=STR2(ステップ19
−8)を実行し、属性テスト19−9でGetB(*S
TR2 P,STRD1,1)=1が成立するかどうか
を調べる。GetB(*STR2 P,STRD1,
1)=1が成立するならばSTR2D P=0(ステッ
プ19−10)を実行する。図11に示すように、下位
構造データベースSTR2にエントリーされる8個の下
位構造列(8小節構造)が選択上位構造にあうかどうか
はその下位構造エントリーの属性データを選択上位構造
データSTRD1(例えばAA)と比較することで判定
される。
Initialization (FIG. 17) FIG. 17 shows the details of the initialization 15-11 of the main routine. 17-1 STR1 P = STR1, STR2 P
= STR2, RPM P = RPM, CPM P = CP
M, STR1D P = 0, STR2D P = 0, CPM
D P = 0, RANM P = RANM is executed to initialize various pointers, and RHY = ROCK, ME in 17-2.
AS = 16, TMP = 120, BEAT = * (TBTM
+ TMP), * MPM2 = f000H, KEY = C, P
REV Execute PIT = 24, and in 17-3 MODE = N
OMAL and KEYON = NO are executed and set, and finally, at 17-4, NTM = f000H, MTM = f000H.
To initialize the tone type and pitch data memory. Generation Start Processing (FIG. 18) 18 shows the details of the generation start processing routine. This routine is a routine performed when an input device generation start instruction is given. First, (18-1) generation of upper structure of music (FIG. 19) and generation of lower structure (FIG. 2) in order to select music structure.
0) is executed. Next, the chord progression generation process 18-2 (FIG. 22) is executed to select a chord progression that matches the upper structure from the chord progression database. Next, the rhythm pattern generation process 18-3 (FIG. 23) is executed to select from the rhythm pattern database a rhythm pattern that matches the substructure of the music, matches the specified rhythm, and matches the specified beat.
Next, at step 18-4, the rhythm counter is initialized by T = 0, at 18-5 the tone type memory is initialized by * NTM = f000H, and at step 18-6, * MTM = f000.
Initialize the pitch memory by H and MO at step 18-7.
The state flag is set to the generation mode by DE = RMELODY. Generation of Upper Structure (FIG. 19) FIG. 19 shows a detailed flow of the upper structure generation routine.
This routine is executed when there is a generation start instruction from the input device 10 or when the end of chord progression is reached. The purpose of the superstructure generation routine is to generate the superstructure of the music and set the substructure that matches the superstructure. The superstructure is generated by extracting the superstructure data from the superstructure database STR1. More specifically, in step 19-1, post = STR1D P
× 4 + 3, STR1 = GetB (* STR1 P, p
ost, 4) to execute superstructure database STR1
The upper structure (sentence structure) data STRD1 is extracted from. Subsequently, in 19-2 to 19-5 (19A), the next superstructure is located for the next superstructure generation routine. That is, STR1D at 19-2 Increment P, STR1D P = 4 (step 19-3) or * STR1D If P = END (step 19-4), STR1D P = 0, Increment STR1
P (step 19-5) is executed. Next from 19-6
In 19-10 (19B), the lower structure sequence that matches the upper structure extracted in 19-1 is located. Here, individual substructures are extracted from the located substructure sequence (see FIG. 20). In detail, step 19
-6 at STR2 P = STR2 Execute P + 3, and as a result * STR2 P = ffffH (step 19-7)
If is satisfied, STR2 P = STR2 (step 19
-8) is executed, and GetB (* S
TR2 Check whether P, STRD1,1) = 1 holds. GetB (* STR2 P, STRD1,
If 1) = 1 holds, STR2D Execute P = 0 (step 19-10). As shown in FIG. 11, whether or not the eight lower structure columns (8-bar structure) entered in the lower structure database STR2 are in the selected upper structure, the attribute data of the lower structure entry is selected and the upper structure data STRD1 (for example, It is determined by comparing with AA).

【0022】下位構造生成(図20) 図20に下位構造生成ルーチンの詳細フローを示す。こ
のルーチンは生成開始処理の最初のステップ18−1の
中で上位構造の生成ルーチンに続いて呼び出される。
又、現時刻が小節線タイムのときインターラプトルーチ
ン(図16)のステップ16−12の中で呼び出され
る。下位構造生成ルーチンの目的は新しい下位構造デー
タ(新しい小節構造データ)をうることである。詳細に
述べると、ステップ20−1でpost=(STR2D
P×4+3)mod16、STRD2=GetB(*
(STR2 P+STR2 P/4+1),post,
4)を実行して下位構造を得ている。20−2〜20−
4(20A)において下位構造生成ルーチンの次回の実
行のために次の下位構造をロケートしている。即ちステ
ップ20−2で下位構造要素カウンタSTR2D
(8小節楽節内の小節構造へのポインタ)をインクリメ
ントしSTR2D P=8(ステップ20−3)が成立
すればSTR2D P=0(ステップ20−4)を実行
している。GetB(図21) 図21は関数命令GetBの詳細なフローである。関数
命令GetB(data、post、nbit)は1ワ
ード中の所望の部分データ項目をうる関数である。即
ち、GetB(data、post、nbit)は16
ビットの1ワードdataのpostビット目から右に
nビットのデータをとる関数命令であり、既に述べた上
位構造生成ルーチンのステップ19−1など各種ルーチ
ンにおいて適宜呼び出されて実行される。先ず、ステッ
プ21−1でx1=dataを実行し、ステップ21−
2でX1を右に(post+1−nbit)シフトし、
ステップ21−3でx2=ffffhを実行し、21−
4でX2を左にnbitシフトし、ステップ21−5で
X2を反転し、ステップ21−6でX1とX2のビット
ごとの論理積をとる。図21の動作例では16ビットの
1ワードデータからその第8ビットから右に2ビット分
(01)を取り出している。GetB関数命令の実行の
結果、この01の2ビットは16ビットワードの第1ビ
ットと第0(最下位)ビット位置に取り出される。コード進行生成ルーチン(図22) コード進行生成ルーチンの詳細を図22に示す。このル
ーチンは生成開始処理のステップ18−2、或いは1つ
のコード進行が終了する都度ステップ16−10中で呼
び出される。コード進行生成ルーチンではコード進行デ
ータベースメモリCPMの中から指定リズム種にあい且
つ上位構造にあうコード進行を取り出している。詳細に
述べると、ステップ22−1でGetB(*CPM
P,RHY,1)をチェックしてアクセスしたコード進
行が指定リズム種にあうかどうかの属性テストを行ない
この属性テストにあえばステップ22−2でGetB
((*(CPM P+1),STRD1,1)=1をチ
ェックしてそのコード進行が上位構造にあうかどうかを
判定している。22−1、22−2のいずれかの属性テ
ストに失敗した場合には、22−3〜22−6において
コード進行データベースメモリCPMから次のコード進
行をロケートしている。即ち、22−3でコード進行デ
ータメモリのワードポインタCPM Pをインクリメン
トし22−4で*CPM P=ffffH(コード進行デ
ータベースの終端)かどうかをチェックし、ステップ2
2−6で*(CPM P−1)=0H(コード進行エン
トリーの初め)かどうかをチェックし、*(CPM
−1)=0Hが不成立なら22−3に戻り、22−4で
*CPM P=ffffHが成立するならポインタCP
Pをコード進行データメモリの先頭CPMに戻して
ステップ22−1に戻り、ステップ22−6で*(CP
P−1)=0Hが成立すれば同じくステップ22−
1に戻る。ステップ22−1と22−2の両方の属性テ
ストに合格した時はポインタCPM Pは適正なコード
進行をロケートしている。そこで、ステップ22−7で
CP C=0(コードポインタがコード進行の最初のコ
ードを指すように設定)を実行している。
[0022]Substructure generation (Fig. 20) FIG. 20 shows a detailed flow of the lower structure generation routine. This
Is the first step 18-1 of the generation start process.
It is called in the following structure generation routine.
Also, when the current time is the bar line time, the interrupt routine
Called in step 16-12 of
It The purpose of the substructure generation routine is to create new substructure data.
Data (new bar structure data). In detail
To be more specific, in step 20-1, post = (STR2D
P × 4 + 3) mod16, STRD2 = GetB (*
(STR2 P + STR2 P / 4 + 1), post,
4) is executed to obtain the substructure. 20-2 to 20-
4 (20A), the next implementation of the substructure generation routine
Locates the following substructure for the row. That is,
20-2 Lower structure element counter STR2D P
Increment (pointer to the bar structure within the 8 bar section)
STR2D P = 8 (step 20-3) is established
STR2D Execute P = 0 (step 20-4)
is doing.GetB (Fig. 21)  FIG. 21 is a detailed flow of the function instruction GetB. function
The instruction GetB (data, post, nbit) is 1
Function that obtains the desired partial data item in the code. Immediately
GetB (data, post, nbit) is 16
1 word of bit To the right from the post bit of data
It is a function instruction that takes n-bit data.
Various routines such as step 19-1 of the position structure generation routine
It is called and executed as appropriate. First of all,
In step 21-1, x1 = data is executed, and step 21-
2 shifts X1 to the right (post + 1-nbit),
In step 21-3, x2 = ffffh is executed, and 21−
In step 4, shift X2 to the left by nbit, and in step 21-5
Invert X2, and set bits X1 and X2 in step 21-6.
Take the logical product of each. In the operation example of FIG.
2 bits to the right of the 8th bit of 1 word data
Taking out (01). GetB function instruction execution
As a result, the 2 bits of this 01 are the first bits of the 16-bit word.
And the 0th (least significant) bit position.Chord progression generation routine (Fig. 22) The details of the chord progression generation routine are shown in FIG. This le
Routine is step 18-2 of the generation start processing, or one
Each time the chord progression of
Be extruded. The chord progression generation routine
The specified rhythm type from the database bass memory CPM
The chord progression that matches the higher-level structure is extracted. In detail
In other words, in Step 22-1, GetB (* CPM
Check the P, RHY, 1) and access the code
Performs an attribute test whether the line is in the specified rhythm type
In this attribute test, GetB in step 22-2
((* (CPM P + 1), STR D1,1) = 1
To check if the chord progression is in a higher level structure.
Making a decision. The attribute text of either 22-1 or 22-2
If the strike fails, in 22-3 to 22-6
Chord progression database memory CPM to next chord progression
You are locating a row. That is, the chord progression data is set at 22-3.
Data memory word pointer CPM Increment P
22-4 * CPM P = ffffH (Cord progression data
Database end), step 2
2-6 in * (CPM P-1) = 0H (chord progression en
Check if it is the beginning of the tree), * (CPM P
If -1) = 0H is not established, the process returns to 22-3, and at 22-4
* CPM Pointer CP if P = ffffH holds
M Return P to the top CPM of the chord progression data memory
Return to step 22-1, and at step 22-6, * (CP
M If P-1) = 0H holds, the same step 22-
Return to 1. Attribute text for both steps 22-1 and 22-2
Pointer CPM when passing strike P is a proper code
It is locating the progress. Therefore, in step 22-7
CP C = 0 (The code pointer is the first code in the chord progression.
Set to point to the card).

【0023】リズムパターン生成ルーチン(図23) リズムパターン生成ルーチンの詳細フローを図23に示
す。リズムパターン生成ルーチンは生成開始処理のステ
ップ18−3、小節線タイムに対するステップ16−1
3の中で呼びだされる。リズムパータン生成ルーチンの
目的はリズムパターンデータベースメモリRPMの中か
ら指定リズム種に合い、下位構造に合い、且つテンポ乃
至ビート種に合うリズムパターン(1小節リズムパター
ン)を取り出すことである。取り出されたリズムパター
ンは自動生成される1小節メロディのリズムパターン
(音長列)を定めるものである。詳細に述べると、ステ
ップ23−1でGetB(*RPM P,RHY,1)
が成立するかどうかを見ることでアクセスしたリズムパ
ターンが指定リズム種にあうかどうかを調べている。ス
テップ23−2ではGetB(*(RPM P+1),
STRD2,1)をチェックすることにより、リズムパ
ターンが下位構造に合うかどうかを調べている。23−
3と23−4(23A)ではリズムパターンがテンポに
対応するリズム種にあうかどうかを調べている。即ち、
23−3でdata=*(RPM P+1)、post
=*(TBTM+TMP)を実行し、23−4でGet
B(data,15,4)=postが成立するかどう
かをチェックする。23−1、23−2、23Aのいず
れかの属性テストに失敗した場合は23B(23−5〜
23−7)においてリズムパターンデータベースの次の
リズムパターンをロケートしている。即ち、23−5で
RPM P=RPM P+4を実行し23−6で*RPM
P=ffffHが成立してリズムパターンデータベー
スの終端が検出された時は23−7でRPM P=RP
Mを実行してリズムパターンポインタRPM Pをリズ
ムパターンデータベースの先頭RPMに戻している。全
ての属性テスト(23−1、23−2、23A)に合格
した時にはステップ23−8に進みUSER MEL=
NOを実行してメロディパターンルールデータベース拡
張モードを解除する。停止処理ルーチン(図24) 図24は停止指示15−5に応答して行なわれる停止処
理15−6の詳細である。24−1に示すようにMOD
E=NORMALを実行してシステムの状態を通常のモ
ード(メロディの自動生成が行なわれない通常の状態)
に戻している。 押鍵処理ルーチン(図25) 押鍵15−7に応答して実行される押鍵処理15−8の
詳細を図25に示す。25−1でKEYON=YESを
実行して押鍵フラグを設定し25−2でKEYBUF=
KC、PIT=KCを実行し25−3でPITを発音す
る。このように鍵盤8の押鍵に対する音源12の発音処
理はメインルーチン(図15)内の押鍵処理ステップ1
5−8内で行なわれる。
[0023]Rhythm pattern generation routine (Fig. 23) The detailed flow of the rhythm pattern generation routine is shown in FIG.
You The rhythm pattern generation routine is
Step 18-3, Step 16-1 for bar line time
Called in 3. Rhythm pattern generation routine
Is the purpose in the rhythm pattern database memory RPM?
Match the specified rhythm type, match the lower structure, and tempo
Rhythm pattern (1 bar rhythm pattern)
It is to take out. The extracted rhythm pattern
Is a rhythm pattern of a one-measure melody that is automatically generated
(Sound length sequence) is defined. In detail,
Get B (* RPM P, RHY, 1)
Rhythm pattern accessed by seeing whether
We are investigating whether the turn is in the specified rhythm type. Su
In Step 23-2, GetB (* (RPM P + 1),
By checking STR D2,1)
I am investigating whether the turn fits the substructure. 23-
In 3 and 23-4 (23A), the rhythm pattern becomes tempo
I am investigating whether or not it corresponds to the corresponding rhythm type. That is,
23-3 with data = * (RPM P + 1), post
= * (TBTM + TMP) and execute Get at 23-4
Whether B (data, 15,4) = post holds
I will check. 23-1, 23-2, 23A
If any attribute test fails, 23B (23-5
23-7), the following rhythm pattern database
The rhythm pattern is located. That is, in 23-5
RPM P = RPM Execute P + 4 and 23RPM * RPM
P = ffffH is established and the rhythm pattern database
When the end of the space is detected, the RPM is 23-7. P = RP
Execute M to perform rhythm pattern pointer RPM Liz P
It is returned to the first RPM of the pattern database. all
Passed all attribute tests (23-1, 23-2, 23A)
If you do, go to step 23-8 MEL =
Execute NO to expand the melody pattern rule database
Release the tension mode.Stop processing routine (Fig. 24) FIG. 24 shows the stop processing performed in response to the stop instruction 15-5.
It is the details of reason 15-6. MOD as shown in 24-1
Execute E = NORMAL to change the system status to normal mode.
Mode (normal state where melody is not automatically generated)
Have returned to. Key depression processing routine (FIG. 25) Of the key depression processing 15-8 executed in response to the key depression 15-7.
Details are shown in FIG. 25-1 with KEYON = YES
Execute to set the key depression flag, and at 25-2, KEYBUF =
Execute KC, PIT = KC and pronounce PIT at 25-3
It In this way, the pronunciation process of the sound source 12 for the key depression of the keyboard 8
The reason is step 1 in the main routine (FIG. 15).
Performed within 5-8.

【0024】離鍵処理ルーチン(図26) 鍵盤8での離鍵15−9に対して行なわれる離鍵処理ス
テップ15−10の詳細を図26に示す。26−1でK
EYON=NOを実行して押鍵フラグを離鍵状態に設定
し26−2でPITを消音する。押鍵中の処理ルーチン(図27) 図27に押鍵中の処理ルーチンの詳細を示す。このルー
チンはインターラプトルーチン(図16)の中で押鍵中
16−2(KEYON=YES)が検出されたときに呼
びだされるルーチンである。押鍵中の処理ルーチンでは
小節内の最初の押鍵を合図とするメロディパターンルー
ルベース拡張モードの設定及び拡張モードにおけるユー
ザー入力メロディのパターン化(音種列、音程列の作成
作業)を行なう。詳細に述べると、27−1でMODE
=NORMALが成立すれば直ちに27−12にジャン
プしてPREV PIT=PITを実行する。MODE
=NORMAL(ステップ27−1)が不成立の場合、
即ちモードが生成モード(RMELODY)の場合ステ
ップ27−2に進みPKEYON=OFFかどうか即ち
鍵盤8で新たに押鍵が発生したかどうかを見る。押鍵が
続いている場合はステップ27−12にジャンプする。
新たな押鍵の発生時にはステップ27−3に進みUSE
MEL=YESかどうか即ち既に拡張モードになっ
ているかどうかを調べる。既に拡張モードならばステッ
プ27−7にジャンプする。拡張モードになってなけれ
ばステップ27−4に進みUSER MEL=YESを
実行して小節中にユーザーからのメロディ入力があった
ことを記録する。次に27−5で*NTM=f000
H、*MTM=f000Hを実行して音種と音程列のメ
モリを初期化する。続いて27−6で消音命令を実行
し、発音中の自動生成メロディ音を消音する。27−3
〜27−6が拡張モード設定処理27Aを定める。27
−7でコード情報作成(図28)により現在のコード情
報を求め、27−8で音種分類(図29)を行なって押
鍵されたメロディ音の音種を分類する。27−9で分類
された結果をストアーする(図30の音種ストアー)。
27−10で音程分類(図31)を実行して(押鍵にか
かるメロディ音の前音からの音程を分類しその結果を2
7−11で音程メモリMTMにストアーする(図32の
音程ストアー)。しかる後、27−12に進みPREV
PIT=PITを実行して現ピッチレジスタの内容を
前回ピッチレジスタに移す。
Key Release Processing Routine (FIG. 26) FIG. 26 shows the details of the key release processing step 15-10 performed for the key release 15-9 on the keyboard 8. 26-1 K
EYON = NO is executed to set the key depression flag to the key release state, and the PIT is muted at 26-2. Processing routine during key depression (FIG. 27) FIG. 27 shows the details of the processing routine during key depression. This routine is a routine that is called when 16-2 during key depression (KEYON = YES) is detected in the interrupt routine (FIG. 16). In the processing routine during key depression, the melody pattern rule-based extension mode is set by the first key depression in the measure as a signal and the user input melody is patterned in the extension mode (work of creating a tone sequence and a tone sequence). More specifically, in 27-1 MODE
= NORMAL is established, immediately jump to 27-12 and PREV Perform PIT = PIT. MODE
= NORMAL (step 27-1) is not established,
That is, when the mode is the generation mode (RMELODY), the routine proceeds to step 27-2, where it is determined whether PKEYON = OFF, that is, whether a new key depression has occurred on the keyboard 8. If the key is continuously pressed, the process jumps to step 27-12.
When a new key depression occurs, the process proceeds to step 27-3 and USE
R It is checked whether or not MEL = YES, that is, whether or not it is already in the extension mode. If it is already in the extended mode, jump to step 27-7. If it is not in the extended mode, proceed to step 27-4 and USER MEL = YES is executed and the fact that there is a melody input from the user during the measure is recorded. Next, at 27-5, * NTM = f000
H, * MTM = f000H is executed to initialize the memory of the tone type and the pitch sequence. Subsequently, a mute command is executed at 27-6 to mute the automatically generated melody sound being sounded. 27-3
27-6 define the extended mode setting process 27A. 27
At -7, the current chord information is obtained by creating chord information (FIG. 28), and at 27-8, the sound type is classified (FIG. 29) to classify the sound type of the melody sound that is pressed. The results classified in 27-9 are stored (sound type store in FIG. 30).
27-10 executes the pitch classification (FIG. 31) (classifies the pitch from the preceding note of the melody sound applied to the key depression, and the result is 2
In step 7-11, it is stored in the pitch memory MTM (pitch store in FIG. 32). After that, proceed to 27-12 and PREV
Execute PIT = PIT to move the contents of the current pitch register to the previous pitch register.

【0025】コード情報作成ルーチン(図28) 図28にコード情報作成ルーチンの詳細フローを示す。
このルーチンはユーザーの入力メロディをパターン化す
るために押鍵中の処理ルーチン(図27)のステップ2
7−7で呼びだされると共に、自動メロディ生成のため
に後述する発音時刻の処理ルーチン(図33)のステッ
プ33−6で呼びだされる。コード情報作成ルーチンの
目的はコード進行データベースから選択しているコード
進行の中から現在の時刻におけるコード情報を取り出す
ことである。詳細に述べると、28−1でi=0により
コード長のアキュムレータを初期化し、28−2でj=
CPM P+2により選択コード進行データの先頭コー
ドをロケートする。次に28A(28−3〜28−5)
において現コード(現在時刻におけるコード)をロケー
トする。即ち、28−3でi=i+GetB(*j,
5,6)を実行し28−4でi>CP Cかどうかをチ
ェックし、不成立なら28−5でJをインクリメントす
る。現コードをロケートしたらステップ28−6に進み
CHO=*jにより現コードのデータをCHOレジスタ
に取り込む。続いて28−7でCHO(ROOT)=
(GetB(CHO,15,4)+KEY)mod1
2、CHO(TYPE)=GetB(CHO,11,
6)を実行して現コードのルートとタイプの情報をう
る。音種分類ルーチン(図29) 音種分類ルーチンの詳細を図29に示す。このルーチン
はユーザ入力メロディのパターン化のためにステップ2
7−8で呼びだされると共に、自動メロディの生成のた
めに後述する発音時刻の処理ルーチン(図33)のステ
ップ33−7の中で呼びだされる。音種分類ルーチンの
目的は着目しているメロディ音(押鍵にかかるメロディ
音或いは自動メロディ音のための音候補)の音種を分類
することである。このような音種分類のためのコード情
報作成ルーチン(図28)からのコード情報、キー情報
KEY指定リズム種情報RHY及びコードトーンスケー
ルノート、テンションノートの標準ピッチクラスセット
が使用される。詳細に述べると、ステップ29−1でp
os1=(12+PIT−CHO(ROOT))mod
12、pos2=(12+PIT−KEY)mod12
を実行する。ここにPOS1は音高PITのコードルー
トからの音程を表わしPOS2は音高PITのキーから
の音程を表わす。次に29−2でx1=*(CT+CH
O(TYPE))、x2=*(TN+CHO(TYP
E))、x3=*(SN+RHY)によりコード、テン
ション、スケールの各ピッチクラスセット(PCS)を
うる。次に29−3でGetB(x1,pos1,1)
=1(コードトーン)かどうかを調べ、成立するなら2
9−4でNT=CHOTを実行するNT=CHOTは音
高PITを有するメロディ音がコードトーンであること
を宣言したものである。ステップ29−5ではGetB
(x2,pos1,1)=1andGetB(x3,p
os2,1)=1が成立するかどうか即ちアヴェイラブ
ルノートかどうかを調べ成立するならば29−6でNT
=AVAIを実行する。NT=AVAIは着目している
メロディ音がアヴェイラブルノートであることを宣言し
たものである。ステップ29−7でGetB(x3,p
os2,1)=1により着目している音がスケールノー
トかどうかをチェックし、成立すればその旨を宣言する
ため29−8でNT=SCALを実行する。ステップ2
9−9ではGetB(x2,pos1,1)=1により
メロディ音がテンションノートかどうかをチェックし、
成立すればその旨を宣言するために29−10でNT=
TENSを実行する。29−3、29−5、29−7、
29−9がいずれも不成立であれば29−11でNT=
AVOIによりメロディ音がアヴォイドノートであるこ
とを宣言する。参照番号290の動作例ではコードがD
MAJORの時PITがF#3の音がコードトーンと
して分類される様子を示している。ベン図291に示す
ように円X1はコードトーンのPCS、円X2はテンシ
ョンノートのPCS、円X3はスケールノートのPCS
である。X1の要素と判定されるメロディ音はコードト
ーンである。集合X2とX3とが重なる部分はアヴェイ
ラブルノートとして判定される。集合X3のうち集合X
1と重ならず且つテンションノートと重ならない部分が
スケールノートと判定される領域である。集合X2のう
ち集合X3と重ならない部分がテンションノートと判定
される領域である。集合円X1、X2、X3の外部がア
ヴォイドノートとして判定される領域である。
Code Information Creation Routine (FIG. 28) FIG. 28 shows a detailed flow of the code information creation routine.
This routine is step 2 of the processing routine (FIG. 27) during key depression in order to pattern the melody input by the user.
In addition to being called in step 7-7, it is called in step 33-6 of the processing routine (FIG. 33) of the later-described sounding time for automatic melody generation. The purpose of the chord information creation routine is to retrieve the chord information at the current time from the chord progression selected from the chord progression database. More specifically, the code length accumulator is initialized by i = 0 at 28-1 and j = at 28-2.
CPM The start code of the selected code progress data is located by P + 2. Next, 28A (28-3 to 28-5)
At, the current code (code at the current time) is located. That is, in 28-3, i = i + GetB (* j,
5 and 6) is executed, and i> CP at 28-4 It is checked whether C or not, and if not satisfied, J is incremented at 28-5. After locating the current code, the process proceeds to step 28-6 and the data of the current code is fetched into the CHO register by CHO = * j. Then at 28-7, CHO (ROOT) =
(GetB (CHO, 15,4) + KEY) mod1
2, CHO (TYPE) = GetB (CHO, 11,
6) Obtain the root and type information of the current code by executing 6). Sound Type Classification Routine (FIG. 29) FIG. 29 shows details of the sound type classification routine. This routine is step 2 for patterning the user-entered melody.
It is called in step 7-8 and is called in step 33-7 of the processing routine of the sounding time (FIG. 33) which will be described later in order to generate an automatic melody. The purpose of the note type classification routine is to classify the note type of the melody sound of interest (a melody sound on a key depression or a sound candidate for an automatic melody sound). The chord information from the chord information creation routine (FIG. 28) for classifying the tone type, the key information KEY designated rhythm type information RHY, the chord tone scale note, and the standard pitch class set of the tension note are used. More specifically, in step 29-1, p
os1 = (12 + PIT-CHO (ROOT)) mod
12, pos2 = (12 + PIT-KEY) mod12
To execute. Here, POS1 represents the pitch from the chord root of the pitch PIT, and POS2 represents the pitch from the key of the pitch PIT. Next, at 29-2, x1 = * (CT + CH
O (TYPE)), x2 = * (TN + CHO (TYPE)
E)), x3 = * (SN + RHY) to obtain each pitch class set (PCS) of chord, tension and scale. Next, at 29-3, GetB (x1, pos1,1)
Check if = 1 (chord tone), and 2 if true
9-4 executes NT = CHOT NT = CHOT declares that the melody sound having the pitch PIT is a chord tone. GetB in step 29-5
(X2, pos1,1) = 1 andGetB (x3, p
os2,1) = 1 is established, that is, whether it is an available note or not, and if it is established, 29-6 is NT.
= Perform AVAI. NT = AVAI declares that the melody sound of interest is an available note. In Step 29-7, GetB (x3, p
It is checked if the note of interest is a scale note by os2,1) = 1, and if satisfied, NT = SCAL is executed at 29-8 to declare that. Step two
In 9-9, GetB (x2, pos1,1) = 1 is used to check whether the melody sound is a tension note,
If yes, 29 = NT to declare that
Run TENS. 29-3, 29-5, 29-7,
If none of 29-9 is satisfied, NT = 29-11
AVOI declares that the melody sound is an avoid note. In the operation example of reference numeral 290, the code is D
In MAJOR, the PIT sound of F # 3 is classified as a chord tone. Ben As shown in FIG. 291, circle X1 is a code tone PCS, circle X2 is a tension note PCS, and circle X3 is a scale note PCS.
Is. The melody sound determined to be an element of X1 is a chord tone. The portion where the sets X2 and X3 overlap is determined as an available note. Set X of set X3
A region that does not overlap with 1 and does not overlap with the tension note is an area determined as a scale note. A portion of the set X2 that does not overlap the set X3 is an area determined as a tension note. The area outside the gathering circles X1, X2, and X3 is an area determined as an void note.

【0026】音種ストアルーチン(図30) 図30に音種ストアルーチンの詳細を示す。このルーチ
ンはユーザー入力メロディのパターン化(ステップ27
−8)と自動メロディ音の評価のための処理(ステップ
33−8内)において呼びだされる。音種ストアルーチ
ンでは音種メモリNTMを右シフトレジスタとして音種
分類NTをNTMにストアしている即ち30−1でNT
Mを4ビット右シフトし30−2でNTを12ビット左
シフトし30−3でNTとNTMの論理和をNTMに代
入している。音程分類ルーチン(図31) 図31に音程分類ルーチンの詳細を示す。音程分類ルー
チンはステップ27−1と33−7内で呼びだされる。
音程分類ルーチンでは現ピッチPITを前ピッチPRE
PITと比較して両音の間に形成される音程(モー
ション)を分類している。即ちPIT=PREV PI
T(ステップ31−1)ならMT=SAME(ステップ
31−2)としてモーションなしを宣言しPIT−PR
EV PIT>2(ステップ31−3)ならMT=+J
UMP(ステップ31−4)により上方向の跳躍進行を
宣言しPREV PIT−PIT>2(ステップ31−
5)ならMT=−JUMP(ステップ31−6)により
下方向の跳躍進行を宣言しPIT−PREV PIT>
0(ステップ31−7)ならMT=+STEP(ステッ
プ31−8)により上方向の順次進行と宣言しPREV
PIT−PIT>0(ステップ31−9)ならMT=
−STEP(ステップ31−10)により下方向の順次
進行と宣言する。音程ストアルーチン(図32) 図32に音程ストアルーチンの詳細を示す。このルーチ
ンはステップ27−10(メロディパターンルールベー
ス拡張系)とステップ33−8(自動メロディ音生成
系)の中で呼びだされる。音程ストアルーチンは音程列
メモリMTMを右シフトレジスタとして操作し、分類結
果である音程データNTをNTMにストアする。即ち3
1−1でNTMを4ビット右シフトし31−2でNTを
12ビット左シフトし31−3でNTとNTMの論理和
をNTMに代入する。
Sound Type Store Routine (FIG. 30) FIG. 30 shows the details of the sound type store routine. This routine patternizes the user-entered melody (step 27).
-8) and the process for evaluating the automatic melody sound (in step 33-8). In the sound type store routine, the sound type memory NTM is used as the right shift register to store the sound type classification NT in the NTM, that is, 30-1 is NT.
M is right-shifted by 4 bits, NT is left-shifted by 12 bits at 30-2, and the logical sum of NT and NTM is assigned to NTM at 30-3. Pitch Classification Routine (FIG. 31) FIG. 31 shows the details of the pitch classification routine. The pitch classification routine is called in steps 27-1 and 33-7.
In the pitch classification routine, the current pitch PIT is changed to the previous pitch PRE.
V The pitch (motion) formed between both tones is classified as compared with PIT. That is, PIT = PREV PI
If T (step 31-1), MT = SAME (step 31-2) is declared and no motion is declared, and PIT-PR
EV If PIT> 2 (step 31-3), MT = + J
The UMP (step 31-4) is used to declare the upward jump and PREV PIT-PIT> 2 (Step 31-
If 5), MT = -JUMP (step 31-6) is used to declare the downward jumping progress, and PIT-PREV is declared. PIT>
If 0 (step 31-7), MT = + STEP (step 31-8) is declared as upward sequential progress, and PREV
If PIT-PIT> 0 (step 31-9), MT =
-STEP (step 31-10) declares downward sequential operation. Pitch Store Routine (FIG. 32) FIG. 32 shows the details of the pitch store routine. This routine is called in step 27-10 (melody pattern rule base expansion system) and step 33-8 (automatic melody tone generation system). The pitch store routine operates the pitch string memory MTM as a right shift register to store the pitch data NT which is the classification result in the NTM. Ie 3
At 1-1, the NTM is shifted to the right by 4 bits, at 31-2, the NT is shifted to the left by 12 bits, and at 31-3, the logical sum of NT and NTM is assigned to NTM.

【0027】発音時刻の処理ルーチン(図33) 図33に発音時刻の処理ルーチンの詳細を示す。このル
ーチンは自動メロディ音の発音時刻(16−5)の時に
実行されるルーチンである。即ち、現時刻がリズムパタ
ーンのキーオンパターン中のビット“1”のタイミング
の時に呼びだされるルーチンである。発音時刻の処理ル
ーチンの目的はメロディ音の音高を決定し発音すること
である。このために発音時刻の処理ルーチンでは乱数メ
モリRANMからの乱数を前メロディ音のピッチに加え
て現メロディ音の音高候補を作りその候補までのメロデ
ィパターンをメロディパターンルールベースによって検
査する。現音高候補までのパターンに一致するエントリ
ーをルールベースがもてばその現音候補は現音のピッチ
として決定される。メロディパターンルールベースに該
当するエントリーがない場合は別の音高候補を作りルー
ルベースにより検査を繰り返される。詳細に述べると、
33−1で音種音程メモリNTM、MTNを4ビット右
シフトする。33−2により音高候補の乱数マルコフ生
成を行なう。即ち、乱数メモリからの乱数*RANM
Pに前音のピッチPREV PITを加えて現音候補を
生成する。次に、33A(33−3〜33−5)におい
て次回のルーチン実行のために次の乱数をロケートす
る。即ち、33−3で乱数ポインタRANM Pをイン
クリメントし、33−4で*RANM P=fffHに
より乱数メモリの終端が検出された時はRANM P=
RANM(ステップ33−5)により乱数ポインタを乱
数メモリの先頭に戻す。33−6でコード情報作成ルー
チンを呼びだす。ループ33−7〜33−12の入口3
3−7で音種分類ルーチン(図29)と音程分類ルーチ
ン(図31)を呼び出して音高候補ピットについてその
音種と音程を分類する。33−8で音種ストアルーチン
(図30)と音程ストアルーチン(図32)を呼び出し
て音種と音程の分類結果をそれぞれ音種別メモリNT
M、音程列メモリMTMにその右端のニブルとしてロー
ドする。ステップ33−9で評価ルーチン(図34)を
呼び出してNTMとMTMによって定められる現音高候
補PITまでのメロディパターンがメロディパターンル
ールベースにあるかどうかを検査する。ルールベースに
エントーされてなければNGとなり33B(33−10
〜33−12)において次の音高候補を生成する。即
ち、33−10でNをインクリメントし33−12でZ
=−1×Zを実行する。そして、ステップ33−7に戻
り、33Bで生成された音高候補について処理を繰り返
す。33Bは実行の都度33−2で得た最初の音高候補
±1、±2、±3……というように順次音高候補を生成
していく(ここに+1は半音上、−1は半音下、+2は
2半音上、−2は2半音下……を表わす)。評価ルーチ
ン33−9で音高候補までのメロディパータンに一致す
るエントリーがルールベースから見つかった場合にはG
OODと成り、PREV PIT=PIT(ステップ3
3−13)を実行し、33−14でKEYON=YES
によりキーオンフラグをオンに設定し決定した音高ピッ
トを発音する。このように自動メロディ生成モードにお
いてキーオンパターンからキーオンの合図があるとメロ
ディパターンルールベースノのルールに従うメロディ音
が決定され、発音される。
Sound Generation Time Processing Routine (FIG. 33) FIG. 33 shows the details of the sound generation time processing routine. This routine is a routine that is executed at the time when the automatic melody tone is generated (16-5). That is, this routine is called when the current time is the timing of bit "1" in the key-on pattern of the rhythm pattern. The purpose of the processing routine for the pronunciation time is to determine the pitch of the melody tone and generate it. For this reason, in the processing routine of the pronunciation time, the random number from the random number memory RANM is added to the pitch of the previous melody tone to create a pitch candidate of the current melody tone, and the melody pattern up to the candidate is checked by the melody pattern rule base. If the rule base has an entry that matches the pattern up to the current pitch candidate, the current pitch candidate is determined as the pitch of the current pitch. If there is no corresponding entry in the melody pattern rule base, another pitch candidate is created and the inspection is repeated by the rule base. In detail,
In step 33-1, the pitch type memories NTM and MTN are right-shifted by 4 bits. 33-2 generates a pitch candidate random Markov. That is, the random number from the random number memory * RANM
P is the pitch of the previous sound PREV The PIT is added to generate a current sound candidate. Next, in 33A (33-3 to 33-5), the next random number is located for the next routine execution. That is, in 33-3, the random number pointer RANM Increment P and * RANM at 33-4 RANM when the end of the random number memory is detected by P = fffH P =
The random number pointer is returned to the head of the random number memory by RANM (step 33-5). In 33-6, the code information creation routine is called. Inlet 3 of loops 33-7 to 33-12
In 3-7, the note type classification routine (FIG. 29) and the note interval classification routine (FIG. 31) are called to classify the note type and note interval of the pitch candidate pit. 33-8, the tone type store routine (FIG. 30) and the tone pitch store routine (FIG. 32) are called, and the tone type and the tone classification result are respectively recorded in the tone type memory NT.
M, the pitch sequence memory MTM is loaded as the nibble at the right end. In step 33-9, the evaluation routine (FIG. 34) is called to check whether the melody pattern up to the current pitch candidate PIT defined by NTM and MTM is in the melody pattern rule base. If it is not entered in the rule base, it becomes NG and 33B (33-10).
33-12), the next pitch candidate is generated. That is, N is incremented at 33-10 and Z is incremented at 33-12.
= -1 × Z is executed. Then, the process returns to step 33-7, and the process is repeated for the pitch candidate generated in 33B. 33B sequentially generates pitch candidates such as the first pitch candidate ± 1, ± 2, ± 3 obtained in 33-2 each time (here, +1 is a semitone, -1 is a semitone). Lower, +2 is 2 semitones up, -2 is 2 semitones down ...). If the evaluation routine 33-9 finds an entry matching the melody pattern up to the pitch candidate in the rule base, G
Become OOD, PREV PIT = PIT (step 3
3-13) is executed and KEYON = YES in 33-14.
The key-on flag is set to ON and the determined pitch pit is sounded. In this way, when there is a key-on signal from the key-on pattern in the automatic melody generation mode, a melody sound that complies with the rule of the melody pattern rule bass is determined and sounded.

【0028】評価ルーチン(図34) 図33のステップ33−9で呼び出される評価ルーチン
の詳細を図34に示す。評価ルーチンの目的は音種列N
TMと音程列MTMとによって定められるメロディパタ
ーンがメロディパターンルールに従うかどうかを判定す
る(メロディパターンルールベースにエントリーされた
ルールに一致するかどうかを判定する)ことである。こ
こにメロディパターンルールベースはROM4に置かれ
る固定メロディパターンルールベースMPM1とRAM
6に形成される拡張メロディパターンルールベースMP
M2とがある。評価ルーチンではこの両方のルーチンを
検索してNTMとMTMのパターンに合うルールを探し
ている。34A(34−1〜34−4)は固定メロディ
パターンルールベースの検索であり、34B(34−5
〜34−8)は拡張メロディパターンルールベースの検
索である、34−1でi=MPM1により固定メロディ
パターンルールベースの先頭をロケートし、ループ34
−2〜34−4の入口で*i=NTMand*(i+
1)=MTM(ステップ34−2)によりアクセスした
ルールの音種列と音程列がそれぞれNPMとMPMに一
致するかどうかをチェックしている。一致しなければi
=i+2(ステップ34−3)により次のルールをロケ
ートしステップ34−4で固定メロディパターンルール
ベースの終端(GetB(*i,15,4)=END)
が検出されないうちは34−2以下の処理を繰り返す。
ステップ34−2の(*i=NTMand*(i+1)
=MTM)が成立すればGOODを返す、34−3で固
定メロディパターンルールベースの終端が検出されたら
34−5でi=MPM2により拡張メロディパターンル
ールベースの先頭をロケートしループ34−6〜34−
8の入口(34−6)でアクセスしたルールの音種列と
音程列がそれぞれNTMとMTMに一致するかどうかを
調べる。一致しなければi=i+2(ステップ34−
7)により次のルールをロケートし、ステップ34−8
で拡張メロディパターンルールベースの終端(GetB
(*i,15,4)=END)が検出されなければ34
−6に戻る、34−6の条件が成立すればGOODを返
す、34−8で拡張メロディパターンルールベースの終
端に達したらNGをかえす。消音時刻の処理ルーチン(図35) 自動メロディ音の消音時刻(キーオフパターンからキー
オフを表わすビット“1”が与えられる時刻)の時にス
テップ16−8で呼びだされる消音時刻の処理ルーチン
の詳細を図35に示す。KEYON=YES(ステップ
35−1)ならば発音中なのでその音PITを消音しキ
ーオンフラグをKEYON=NOに設定する(35−
2)。メロディパターンDB拡張ルーチン(図36) 小節線タイムでステップ16−13の中で呼び出される
メロディパターンデータベース拡張メロディパターンデ
ータベース拡張ルーチンの詳細を図36に示す。このル
ーチンの目的はユーザーから入力されたメロディのパタ
ーン(1小節の間に入力されたメロディのパターン)を
RAM6のメロディパターンルールベースMPM2に追
加することである。詳しく述べると、USER MEL
=YES(ステップ36−1)が不成立であれば1小節
の間にユーザーからのメロディ入力はないのでそのまま
リターンする、USER MEL=YES(36−1)
が成立する時は36A(36−2〜36−7)において
拡張メロディパターンルールベースMPM2の終端を検
出する。即ちi=MPM2(36−2)によりポインタ
ーを拡張メロディパターンルールベースの先頭にロケー
トし、ループの入口で*i=ffffH(36−3)が
不成立ならiをインクリメントし(36−6)、36−
7でメモリーオーバー(i>MPM2+MPM2SIZ
E)かどうかをチェックする、*i=ffffH(36
−3)が成立すれば*i=*NTM、*(i+1)=*
MTM、*(i+2)=ffffH(ステップ36−
4)を実行してユーザーメロディパターンをメロディパ
ターンデータベースMPM2に書き込み*NTM=f0
00H、*MTM=f000H(ステップ36−5)に
より音種と音程列メモリを再初期化する。
Evaluation Routine (FIG. 34) FIG. 34 shows the details of the evaluation routine called in step 33-9 of FIG. The purpose of the evaluation routine is the tone sequence N
It is to determine whether the melody pattern defined by TM and the pitch sequence MTM follows the melody pattern rule (determines whether the melody pattern matches the rule entered in the melody pattern rule base). Here, the melody pattern rule base is a fixed melody pattern rule base MPM1 and RAM placed in the ROM4.
Extended melody pattern rule base MP formed in 6
There is M2. The evaluation routine searches both routines for a rule that matches the NTM and MTM patterns. 34A (34-1 to 34-4) is a fixed melody pattern rule-based search, and 34B (34-5).
34-8) is a search for the extended melody pattern rule base. In 34-1, the head of the fixed melody pattern rule base is located by i = MPM1 and the loop 34
At the entrance of -2 to 34-4, * i = NTMand * (i +
1) = MTM (step 34-2), it is checked whether the tone type sequence and the tone sequence of the rule accessed correspond to NPM and MPM, respectively. I if they do not match
= I + 2 (step 34-3) to locate the next rule, and in step 34-4 the end of the fixed melody pattern rule base (GetB (* i, 15,4) = END)
The process from 34-2 onward is repeated until is detected.
In step 34-2, (* i = NTMand * (i + 1)
= MTM) is satisfied, GOOD is returned. When the end of the fixed melody pattern rule base is detected at 34-3, the start of the extended melody pattern rule base is located by i = MPM2 at 34-5 and loops 34-6 to 34-34 are executed. −
It is checked whether or not the tone type sequence and the tone sequence of the rule accessed at the entrance (34-6) of 8 correspond to NTM and MTM, respectively. If they do not match, i = i + 2 (step 34-
Locating the next rule according to 7), step 34-8
End of extended melody pattern rule base (GetB
If (* i, 15,4) = END) is not detected, 34
Return to -6. If the condition of 34-6 is satisfied, GOOD is returned. At 34-8, NG is returned when the end of the extended melody pattern rule base is reached. Mute time processing routine (FIG. 35) The details of the mute time processing routine called in step 16-8 at the time of mute of the automatic melody sound (the time when the bit "1" representing the key-off is given from the key-off pattern) is described. It shows in FIG. If KEYON = YES (step 35-1), the sound PIT is muted because the sound is being generated and the key-on flag is set to KEYON = NO (35-
2). 36. Melody pattern DB expansion routine (FIG. 36) FIG. 36 shows details of the melody pattern database expansion routine called in step 16-13 at the bar line time. The purpose of this routine is to add the melody pattern input by the user (the melody pattern input during one bar) to the melody pattern rule base MPM2 of the RAM 6. In detail, USER MEL
= YES (step 36-1) is not satisfied, there is no melody input from the user during one bar, so the process returns as it is. USER MEL = YES (36-1)
When is satisfied, the end of the extended melody pattern rule base MPM2 is detected at 36A (36-2 to 36-7). That is, the pointer is located at the beginning of the extended melody pattern rule base by i = MPM2 (36-2), and if * i = ffffH (36-3) is not established at the entrance of the loop, i is incremented (36-6) and 36 −
Memory over at 7 (i> MPM2 + MPM2SIZ
E), check * i = ffffH (36
-3) holds, * i = * NTM, * (i + 1) = *
MTM, * (i + 2) = ffffH (step 36-
4) is executed to write the user melody pattern in the melody pattern database MPM2 * NTM = f0
00H, * MTM = f000H (step 36-5) to re-initialize the tone type and pitch sequence memory.

【0029】パターンのデータフォーマット調整(図3
7〜図39) 図37〜図39のフローはNTM、MTMとメロディパ
ターンルールベースMPM1、MPM2との間のフォー
マット調整に関する処理である。図37のルーチンは評
価ルーチン(図34)の最初のステップ(図34の34
−1)及びメロディパターンルールベース拡張ルーチン
(図36)のステップ36−4のなかで呼び出される
(ステップ36−4の詳細なフローである図39参
照)。図37のルーチンはNTMとMTMによる入力な
いし評価対象のメロディパターンのフォーマットをルー
ルベースMPM1、MPM2のルールのフォーマットに
合わせるためのものである。実施例の場合、評価ルーチ
ンの入力ないしメロディパターンルールベース拡張ルー
チンの入力でMTMにはNTM上で捨てられた過去のメ
ロディ音種からの音程データ項目が1つだけ余分に入っ
ている。これをルールベースのルールの音程列のフォー
マットに合わせるには、この余分な音程データ項目(ニ
ブル)をENDニブルに変換する必要がある。この処理
を図37のルーチンは行っている。図中、記号“∨”は
ビット毎の論理和、“∧”はビット毎の論理積を表わし
ている。図38のルーチンは評価ルーチン(図34)の
ステップ34−2、34−6の評価である。このルーチ
ン(図38)では、ルールベースMPM1、MPM2か
らのルールが示すメロディパターンの全体でなくても、
その部分パターンが評価対象のメロディパターン(NT
MとMTMとで定められる)に一致すれば、評価対象の
メロディパターンはルールに従うものとする(YESを
返す)処理を行っている(これはルールベース内のルー
ル数を節約するのに有効である)。図39はメロディパ
ターンデータベース拡張ルーチンのステップ36−4の
詳細である。以上の説明、図37〜図39自体の記載、
その他の図面の記載と明細書での説明から図37〜図3
9のルーチンの詳細は明らかであるので、これ以上の説
明は省略する。
Pattern data format adjustment (see FIG. 3)
7 to 39) The flow of FIGS. 37 to 39 relates to the format adjustment between the NTM and MTM and the melody pattern rule bases MPM1 and MPM2. The routine of FIG. 37 is the first step (34 of FIG. 34) of the evaluation routine (FIG. 34).
-1) and the melody pattern rule base extension routine (FIG. 36) are called in step 36-4 (see FIG. 39 which is a detailed flow of step 36-4). The routine of FIG. 37 is for matching the format of the melody pattern input or evaluated by NTM and MTM with the format of the rules of the rule bases MPM1 and MPM2. In the case of the embodiment, the MTM has only one extra pitch data item from the past melody tone type discarded on the NTM by the input of the evaluation routine or the input of the melody pattern rule base extension routine. In order to match this with the pitch sequence format of the rule-based rule, it is necessary to convert this extra pitch data item (nibble) into an END nibble. The routine of FIG. 37 performs this processing. In the figure, the symbol "∨" represents the bitwise logical sum, and "∧" represents the bitwise logical product. The routine of FIG. 38 is the evaluation of steps 34-2 and 34-6 of the evaluation routine (FIG. 34). In this routine (FIG. 38), even if not the entire melody pattern indicated by the rules from the rule bases MPM1 and MPM2,
The partial pattern is the melody pattern (NT
If it agrees with M and MTM), the melody pattern to be evaluated is processed according to the rule (returns YES) (this is effective in saving the number of rules in the rule base). is there). FIG. 39 shows details of step 36-4 of the melody pattern database expansion routine. The above description, the description of FIGS. 37 to 39 itself,
37 to 3 from the description of other drawings and the description in the specification.
Since the details of the routine of No. 9 are clear, further description will be omitted.

【0030】[0030]

【変形例】以上で実施例の説明を終えるが、この発明の
範囲内で種々の変形、変更が可能である。例えば、メロ
ディパターンルールベース216は音楽スタイル別にメ
ロディパターン(MP)ルールベースをもつものであっ
てもよい。図40に音楽スタイル別のメロディパターン
ルールベースとその関連構成を示す。メロディパターン
ルールベースは複数(図40では3つ)の音楽スタイル
の各々に対するルールベースを有する。図40におい
て、216AはスタイルNo.1〜No.3に共通の
(いずれのスタイルでも使用できる)MPルールグルー
プを表わし、216BはスタイルNo.1とNo.2に
共通のMPルールグループを表わし、216Cはスタイ
ルNo.1に固有のMPルールグループを表わし、21
6DはスタイルNo.2に固有のMPルールグループを
表わしている。スタイルNo.3に固有のMPルールグ
ループはない。したがって、スタイルNo.1のメロデ
ィパターンルールベースは216Aと216Bと216
Cの組合せで定められ、スタイルNo.2のメロディパ
ターンルールベースは216Aと216Bと216Dと
で定められ、スタイルNo.3のメロディパターンルー
ルベースは216Aによって定められる。自動作曲機の
動作において、選択モジュール230は曲風入力(例え
ば図1の指定リズム131)に従い、指定された音楽ス
タイルに対する選択MPルールベース232を作成する
(ルールベース216から選択する)。選択MPルール
ベース232は図1Bのメロディ音高列生成装置200
のマッチング214のような評価モジュールによってア
クセスされる。図40のような構成を用いることによ
り、自動作曲機は曲風に合うメロディを更に効率よく生
成することが容易となる。また、作曲の完全なリアルタ
イム応答を支援するために、データベースからのデータ
検索を高速化することは容易である。例を図41と図4
2に示す。図41に音楽素材データベースとその検索方
式の変形例400を示す。図41において、音楽素材
(例えばリズムパターン、コード進行)のデータベース
は、インデクステーブル403と素材データベース本体
405から成る。作曲条件として401に示すように第
1属性(例えば音楽構造)が“α”、第2属性(例えば
曲風)が“β”が与えられたとする(なお属性項目数は
2に限られないが図示の便宜上、属性項目数を2として
いる)。第1属性はM種類、第2属性はN種類あるもの
とする。インデクステーブル403は素材データベース
本体405へのインデクス情報を与えるもので、各作曲
条件(属性の組み合わせ)に対して、素材データベース
本体405に置かれる、その作曲条件に合う素材の記憶
場所(の先頭アドレス)と、その素材のエントリ数を記
憶する。動作において、作曲条件4−1からブロック4
02に示すように、INDEX+(N×α+β)×2を
計算して、インデクステーブル403をアドレッシング
し、それに書かれている素材データベース本体405へ
のアドレスX(例えば第1属性が“1”で第2属性が
“1”の素材エントリ群の先頭アドレスX1)と、次ア
ドレスに書かれているエントリ数S(例えばS1)を読
む。次に検索モジュール410の411で示すように0
〜1の乱数RANを生成し、アドレスXとエントリ数S
とデータベース本体405におけるワード数/エント
リ、例えば3を用いて、412〜414により、(RA
N×S)×3+Xを計算して検索すべき音楽素材エント
リのアドレスADDRを生成する。このアドレスADD
R(及びワードル数/エントリ分の連続後続アドレス)
で音楽素材データベース本体405をアクセスすること
により所望の音楽素材、即ち作曲条件401に合う音楽
素材をデータベースから検索出来、それを作曲の一部と
して生成できる。
[Modification] Although the description of the embodiment is completed above, various modifications and changes can be made within the scope of the present invention. For example, the melody pattern rule base 216 may have a melody pattern (MP) rule base for each music style. FIG. 40 shows a melody pattern rule base for each music style and its related configuration. The melody pattern rule base has a rule base for each of a plurality (three in FIG. 40) of music styles. In FIG. 40, 216A is a style number. 1-No. 3 represents a MP rule group common to all styles (which can be used in any style), and 216B is a style number. 1 and No. 2 represents a common MP rule group, and 216C is a style number. 1 represents the MP rule group unique to 1
6D is style No. 2 represents the MP rule group unique to the item 2. Style No. There is no MP rule group specific to 3). Therefore, the style No. The melody pattern rule base of 1 is 216A, 216B, and 216
Style No. The melody pattern rule base of No. 2 is defined by 216A, 216B, and 216D, and the style No. The melody pattern rule base of 3 is defined by 216A. In the operation of the automatic composer, the selection module 230 creates a selection MP rule base 232 for the designated music style (selects from the rule base 216) in accordance with the musical style input (for example, the designated rhythm 131 in FIG. 1). The selection MP rule base 232 is the melody pitch string generation device 200 of FIG. 1B.
Is accessed by an evaluation module, such as Matching 214. By using the configuration as shown in FIG. 40, the automatic composer can more efficiently generate a melody that matches the musical style. It is also easy to speed up data retrieval from the database to support full real-time response of composition. 41 and 4 for an example.
2 shows. FIG. 41 shows a modified example 400 of the music material database and its search method. In FIG. 41, the database of music materials (for example, rhythm pattern, chord progression) includes an index table 403 and a material database body 405. As a composition condition, as shown by 401, it is assumed that the first attribute (for example, music structure) is “α” and the second attribute (for example, musical style) is “β” (the number of attribute items is not limited to two. For convenience of illustration, the number of attribute items is 2.) It is assumed that there are M types of first attributes and N types of second attributes. The index table 403 gives index information to the material database main body 405, and for each composition condition (combination of attributes), the storage location of the material that is placed in the material database main body 405 and matches the composition condition (start address ) And the number of entries for that material. In operation, from composition condition 4-1 to block 4
02, INDEX + (N × α + β) × 2 is calculated, the index table 403 is addressed, and the address X to the material database body 405 written in the index table 403 (for example, the first attribute is “1” 2 The head address X1) of the material entry group having the attribute of "1" and the number of entries S (for example, S1) written at the next address are read. Next, as shown at 411 in the search module 410, 0
Generate a random number RAN of ~ 1, and generate address X and number of entries S
And the number of words / entry in the database main body 405, for example, 3 is used, 412 to 414, (RA
N * S) * 3 + X is calculated to generate the address ADDR of the music material entry to be searched. This address ADD
R (and word / number of entries / continuous subsequent addresses)
By accessing the music material database main body 405 with, it is possible to search the database for a desired music material, that is, a music material satisfying the composition condition 401, and generate it as a part of composition.

【0031】図41の構成によれば、音楽素材データベ
ース405に対する所望のデータ検索を非常に高速に行
える。ただし、データベース本体405は重複したデー
タを含むことになり、メモリ効率はよくない。図42に
音楽素材データベースとその検索方式のもう1つの変形
例500を示す。この変形例500では音楽素材データ
ベースは第1と第2のインデクステーブル503、50
4とデータベース本体505から成る。この場合、デー
タベース本体405上でデータは重複しない。第1イン
デクステーブル503には第2インデクステーブル50
4へのインデクス(アドレス)情報が書き込まれる。第
1インデクステーブル503へのアクセスは、作曲条件
(第1属性=α、第2属性=β)からただちに行える。
即ち502に示すようにINDEX=1(第1インデク
ステーブル503の先頭アドレス)+(N×α+β)の
計算でただちにテーブル503をアドレッシングでき
る。511に示すように第1インデクステーブル503
から読んだデータXで第2インデクステーブル504を
アクセスする。第2インデクステーブル504には作曲
別条件にデータベース本体505における素材エントリ
数S(例えば条件1、1に対してS1)と各素材エント
リのアドレスリストが書かれている。したがって、51
2に示すようにアドレスリストの(RAN×S)番目
(ここにRANは0〜1の乱数)の項目を読み、それで
素材データベース本体505をアクセスすることにより
所望の作曲条件401に合う素材をただちに取り出すこ
とができる。図42の構成によればデータベース本体5
05におけるデータ重複を回避しつつ、設定した作曲条
件に合う音楽素材(例えばメロディのリズム、コード進
行)を高速に生成することができる。その他、種々の変
形、応用が可能である。
According to the configuration shown in FIG. 41, desired data retrieval with respect to the music material database 405 can be performed very quickly. However, the database body 405 contains duplicated data, and the memory efficiency is not good. FIG. 42 shows another modification 500 of the music material database and its search method. In this modified example 500, the music material database has first and second index tables 503, 50.
4 and a database body 505. In this case, the data does not overlap on the database body 405. The second index table 50 is stored in the first index table 503.
The index (address) information for No. 4 is written. The first index table 503 can be accessed immediately from the composition condition (first attribute = α, second attribute = β).
That is, as shown by 502, the table 503 can be immediately addressed by the calculation of INDEX = 1 (start address of the first index table 503) + (N × α + β). As indicated by 511, the first index table 503.
The second index table 504 is accessed with the data X read from. In the second index table 504, the number of material entries S in the database main body 505 (for example, S1 for conditions 1 and 1) and the address list of each material entry are written as composition conditions. Therefore, 51
As shown in FIG. 2, the (RAN × S) th item (where RAN is a random number from 0 to 1) in the address list is read, and by accessing the material database body 505, the material that meets the desired composition condition 401 is immediately displayed. You can take it out. According to the configuration of FIG. 42, the database main body 5
It is possible to quickly generate a music material (for example, melody rhythm, chord progression) that meets the set composition condition while avoiding data duplication in 05. In addition, various modifications and applications are possible.

【0032】[0032]

【発明の効果】以上、詳細に述べたように、この発明に
よれば音楽知識表現の工夫(メロディパターンルールベ
ースの使用)、音楽進行の利用、メロディの生成方式等
を通して、音楽進行に合い、かつ音楽知識に支えられた
良好なメロディをリアルタイムあるいはリアルタイムに
近い環境で作曲することができる。
As described above in detail, according to the present invention, it is possible to adapt to music progress through devising musical knowledge expression (use of melody pattern rule base), utilizing music progress, melody generation method, etc. Moreover, a good melody supported by music knowledge can be composed in real time or in an environment close to real time.

【図面の簡単な説明】[Brief description of drawings]

【図1A】この発明による自動作曲機に組み込まれる作
曲条件付け装置の機能ブロック図。
FIG. 1A is a functional block diagram of a composition conditioner incorporated in an automatic composer according to the present invention.

【図1B】自動作曲機に組み込まれるリアルタイムメロ
ディ音高列生成装置の機能ブロック図。
FIG. 1B is a functional block diagram of a real-time melody pitch string generation device incorporated in an automatic composer.

【図1C】自動作曲機に組み込まれるメロディパターン
ルールベース拡張装置の機能ブロック図。
FIG. 1C is a functional block diagram of a melody pattern rule-based expansion device incorporated in an automatic composer.

【図2】自動作曲機を実現する代表的なハードウェアの
ブロック図。
FIG. 2 is a block diagram of typical hardware that realizes an automatic composer.

【図3】図2の自動作曲機に組み込まれる自動メロディ
生成装置の機能ブロック図。
3 is a functional block diagram of an automatic melody generator incorporated in the automatic composer of FIG.

【図4】実施例で使用する音楽要素の文字(記号)表現
と数値表現を示す図。
FIG. 4 is a diagram showing a character (symbol) expression and a numerical expression of a music element used in the embodiment.

【図5】さらに別の音楽要素の文字及び数値表現を示す
図。
FIG. 5 is a diagram showing character and numerical expressions of still another music element.

【図6】さらに別の音楽要素の文字及び数値表現を示す
図。
FIG. 6 is a diagram showing character and numerical expressions of still another music element.

【図7】標準ピッチクラスセットメモリを示す図。FIG. 7 is a diagram showing a standard pitch class set memory.

【図8】固定メロディパターンデータベースメモリと音
種・音程データメモリを示す図。
FIG. 8 is a diagram showing a fixed melody pattern database memory and a tone type / pitch data memory.

【図9】テンポ・ビット変換マップと乱数メモリを示す
図。
FIG. 9 is a diagram showing a tempo / bit conversion map and a random number memory.

【図10】コード進行データベースメモリを示す図。FIG. 10 shows a chord progression database memory.

【図11】音楽構造データベースメモリを示す図。FIG. 11 is a diagram showing a music structure database memory.

【図12】リズムパターンデータベースメモリを示す
図。
FIG. 12 is a view showing a rhythm pattern database memory.

【図13】その他の定数及び変数を説明する図。FIG. 13 is a diagram illustrating other constants and variables.

【図14】さらにその他の変数を説明する図。FIG. 14 is a diagram illustrating still another variable.

【図15】図2のCPUが実行するメインルーチンのフ
ローチャート。
15 is a flowchart of a main routine executed by the CPU of FIG.

【図16】図2のCPUが実行するインターラプトルー
チンのフローチャート。
16 is a flowchart of an interrupt routine executed by the CPU of FIG.

【図17】初期化の詳細なフローチャート。FIG. 17 is a detailed flowchart of initialization.

【図18】生成開始処理ルーチンのフローチャート。FIG. 18 is a flowchart of a generation start processing routine.

【図19】上位構造生成ルーチンの詳細なフローチャー
ト。
FIG. 19 is a detailed flowchart of an upper structure generation routine.

【図20】下位構造生成ルーチンの詳細なフローチャー
ト。
FIG. 20 is a detailed flowchart of a lower structure generation routine.

【図21】GetBの詳細なフローチャートと動作例を
示す図。
FIG. 21 is a diagram showing a detailed flowchart of GetB and an operation example.

【図22】コード進行生成ルーチンの詳細なフローチャ
ート。
FIG. 22 is a detailed flowchart of a chord progression generation routine.

【図23】リズムパターン生成ルーチンの詳細なフロー
チャート。
FIG. 23 is a detailed flowchart of a rhythm pattern generation routine.

【図24】停止処理のフローチャート。FIG. 24 is a flowchart of stop processing.

【図25】押鍵処理のフローチャート。FIG. 25 is a flowchart of key depression processing.

【図26】離鍵処理のフローチャート。FIG. 26 is a flowchart of key release processing.

【図27】押鍵中の処理のフローチャート。FIG. 27 is a flowchart of processing during key depression.

【図28】コード情報作成ルーチンの詳細なフローチャ
ート。
FIG. 28 is a detailed flowchart of a code information creation routine.

【図29】音種分類の詳細なフローチャート。FIG. 29 is a detailed flowchart of sound type classification.

【図30】音種ストアの詳細なフローチャート。FIG. 30 is a detailed flowchart of the sound type store.

【図31】音程分類の詳細なフローチャート。FIG. 31 is a detailed flowchart of pitch classification.

【図32】音程ストアの詳細なフローチャート。FIG. 32 is a detailed flowchart of pitch store.

【図33】発音時刻の処理の詳細なフローチャート。FIG. 33 is a detailed flowchart of processing of pronunciation time.

【図34】評価ルーチンの詳細なフローチャート。FIG. 34 is a detailed flowchart of an evaluation routine.

【図35】消音時刻の処理のフローチャート。FIG. 35 is a flowchart of processing of a muffling time.

【図36】メロディパターンデータベース拡張ルーチン
の詳細なフローチャート。
FIG. 36 is a detailed flowchart of a melody pattern database expansion routine.

【図37】MTMフォーマット変更の詳細なフローチャ
ート。
FIG. 37 is a detailed flowchart of MTM format change.

【図38】ステップ34−2、34−6の詳細なフロー
チャート。
FIG. 38 is a detailed flowchart of steps 34-2 and 34-6.

【図39】ステップ36−4の詳細なフローチャート。FIG. 39 is a detailed flowchart of step 36-4.

【図40】音楽スタイル別メロディパターンルールベー
スをそれに関連する構成を示す図。
FIG. 40 is a view showing a configuration related to a melody pattern rule base for each music style.

【図41】音楽素材データベースとその検索方式の変形
例を示す図。
FIG. 41 is a diagram showing a modified example of the music material database and its search method.

【図42】音楽素材データベースとその検索方式のさら
に別の変形例を示す図。
FIG. 42 is a diagram showing still another modification of the music material database and its search method.

【符号の説明】[Explanation of symbols]

200 メロディ音高列生成装置 216 メロディパターンルールベース(メロディパタ
ーンルールベース手段) 132 指定ビート又はテンポ(テンポ指定手段) 228 実時間演奏系(リアルタイムメロディ演奏手
段) 302 ユーザー入力メロディ(ユーザーメロディ入力
手段) 310 メロディパターン(音種・音程列)生成ブロッ
ク(メロディパターン認識手段) 330E メロディパターンルールベース拡張部 208 音種・音程列生成モジュール(メロディパター
ン記憶手段、音程・音種分類手段、評価対象メロディパ
ターン形成手段) 214 マッチングモジュール(ルールベース検索手
段) 220 次候補生成モジュール(別候補生成手段) 208、214、218、220 (繰り返し手段) 224 決定現ピッチ(音高決定手段) 110、116、117、120、140、145、1
60 (コード進行生成手段) 210 現調性(調性指示手段)
200 Melody Pitch Sequence Generator 216 Melody Pattern Rule Base (Melody Pattern Rule Base Means) 132 Specified Beat or Tempo (Tempo Designating Means) 228 Real Time Performance System (Real Time Melody Performance Means) 302 User Input Melody (User Melody Input Means) 310 melody pattern (tone type / tone sequence) generation block (melody pattern recognition means) 330E melody pattern rule base extension unit 208 tone type / tone sequence generation module (melody pattern storage means, tone / tone type classification means, evaluation target melody pattern) Forming means) 214 Matching module (rule-based search means) 220 Next candidate generation module (another candidate generation means) 208, 214, 218, 220 (repeating means) 224 Determined current pitch (pitch determiner) ) 110,116,117,120,140,145,1
60 (chord progression generation means) 210 current tonality (tonality indication means)

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】 音楽進行を与える音楽進行付与手段と、 メロディの音列を音種列と音程列とでパターン化したメ
ロディパターンのルールベースを記憶するメロディパタ
ーンルールベース手段と、 上記音楽進行手段からの音楽進行に適合し、かつ上記メ
ロディパターンルールベース手段内のメロディパターン
ルールを満たすメロディを生成するメロディ生成手段
と、 を有することを特徴とする自動作曲機。
1. A music progression giving means for giving a music progression, a melody pattern rule base means for storing a rule base of a melody pattern in which a tone series of a melody is patterned by a tone series and a tone series, and the music progression means. And a melody generating means adapted to generate a melody that conforms to the progress of music from and which satisfies the melody pattern rule in the melody pattern rule base means.
【請求項2】 請求項1記載の自動作曲機において、 自動作曲機は演奏テンポを指定するテンポ指定手段を更
に有し、 上記メロディ生成手段は、上記テンポ指定手段からの演
奏テンポに従うリアルタイムでメロディを生成するリア
ルタイムメロディ生成手段から成り、 更に自動作曲機は、上記リアルタイムメロディ生成手段
が生成したメロディをサウンドとしてリアルタイム演奏
するリアルタイムメロディ演奏手段を有する、 ことを特徴とする自動作曲機。
2. The automatic composer according to claim 1, wherein the automatic composer further comprises tempo designating means for designating a performance tempo, and the melody creating means follows the performance tempo from the tempo designating means in real time. The automatic composer further comprises real-time melody playing means for playing the melody created by the real-time melody creating means as a sound in real time.
【請求項3】 請求項1記載の自動作曲機において、 ユーザからのメロディを入力するユーザーメロディ入力
手段と、 上記ユーザーメロディ入力手段から入力されたメロディ
を上記音楽進行に従ってパターン認識して音種列と音程
列とで表現されるメロディパターンを形成するメロディ
パターン認識手段と、 上記メロディパターン認識手段からのメロディパターン
を追加ルールとして上記メロディパターンルールベース
手段に追加してメロディパターンルールベースを拡張す
るメロディパターンルールベース拡張手段と、 を更に有することを特徴とする自動作曲機。
3. The automatic composer according to claim 1, wherein a user melody input means for inputting a melody from a user and a melody inputted by the user melody input means are subjected to pattern recognition in accordance with the progress of the music, and a tone type sequence is provided. A melody pattern recognition means for forming a melody pattern represented by a pitch sequence and a melody pattern for extending the melody pattern rule base by adding the melody pattern from the melody pattern recognition means as an additional rule to the melody pattern rule base means. An automatic composer, further comprising: a pattern rule base expanding unit.
【請求項4】 請求項1記載の自動作曲機において、上
記メロディ生成手段は、メロディ音を順次生成するた
め、 音程列と音種列とにより、前メロディ音までのメロディ
のパターンを記憶するメロディパターン記憶手段と、 新たに生成すべき現メロディ音の第1の音高候補を生成
する音高候補生成手段と、 上記第1の音高候補の音程と音種を上記前メロディ音の
音高と上記音楽進行の現状況とに基づいて分類する音程
・音種分類手段と、 分類された上記第1の音高候補の音程と音種を用いて上
記メロディパターン記憶手段を更新して、現メロディ音
候補までのメロディのパターンを検索対象として形成す
る評価対象メロディパターン形成手段と、 検索対象として形成されたメロディのパターンについて
上記メロディパターンルールベース手段を検索するルー
ルベース検索手段と、 検索に失敗したときに、現メロディ音のために別の音高
候補を生成する別候補生成手段と、 上記別の音高候補について、上記音程・音種分類手段、
上記評価対象メロディパターン形成手段、上記ルールベ
ース検索手段の動作を繰り返す繰返手段と、 検索に成功したときに、その検索にかかる音高候補を現
メロディ音の音高として決定する音高決定手段と、 を有することを特徴とする自動作曲機。
4. The automatic composer according to claim 1, wherein the melody generating means sequentially generates melody tones, so that a melody pattern up to the preceding melody is stored by a tone sequence and a tone type sequence. Pattern storage means, pitch candidate generation means for newly generating a first pitch candidate of the current melody tone to be generated, pitch and pitch of the first pitch candidate, and pitch of the previous melody tone. And the current situation of the music progression, a pitch / tone type classifying means, and the melody pattern storage means is updated by using the pitch and tone type of the classified first pitch candidate, The evaluation target melody pattern forming means for forming a melody pattern up to a melody sound candidate as a search target, and the melody pattern rule base procedure described above for the melody pattern formed as a search target. A rule-based search means for searching, another candidate generation means for generating another pitch candidate for the current melody sound when the search fails, and the pitch / tone classification for the other pitch candidate. means,
Repeating means for repeating the operations of the evaluation target melody pattern forming means and the rule-based searching means, and a pitch determining means for determining a pitch candidate involved in the search as the pitch of the current melody sound when the search is successful. An automatic composer characterized by having:
【請求項5】 請求項1記載の自動作曲機において、上
記音楽進行付与手段は、 コード進行を生成するコード進行生成手段と、 調性を指示する調性指示手段と、 を有することを特徴とする自動作曲機。
5. The automatic musical composition apparatus according to claim 1, wherein the music progression imparting means includes chord progression generating means for producing chord progressions, and tonality instructing means for instructing tonality. Automatic composer that does.
【請求項6】 音楽進行を与える音楽進行付与手段と、 メロディの音列を音種列と音程列とでパターン化したメ
ロディパターンのルールベースを記憶するメロディパタ
ーンルールベース手段と、 生成すべきメロディの音列候補を生成する音列候補生成
手段と、 上記音列候補生成手段からの音列候補を上記音楽進行に
基づいてパターン認識して、音種列と音程列とで表現さ
れるメロディパターンを形成するメロディパターン形成
手段と、 上記メロディパターン形成手段からのメロディパターン
を検索対象として上記メロディパターンルールベース手
段を検索するルールベース検索手段と、 上記検索が成功するまで、即ち上記メロディパターンル
ールベース手段に検索対象と一致するメロディパターン
のルールが見つかるまで、上記音列候補生成手段、上記
メロディパターン形成手段、上記ルールベース検索手段
の動作を、音列候補を変化させながら繰り返す繰返手段
と、 上記検索が成功したときに、成功に係る音列候補を生成
メロディの音列として決定する決定手段と、 を有することを特徴とする自動作曲機。
6. A music progression giving means for giving a music progression, a melody pattern rule base means for storing a rule base of a melody pattern obtained by patternizing a tone series of a melody with a tone type sequence and a tone sequence, and a melody to be generated. Sound string candidate generating means for generating the sound string candidates and pattern recognition of the sound string candidates from the sound string candidate generating means based on the music progression, and a melody pattern expressed by a sound type string and a pitch string. A melody pattern forming means for forming a melody pattern, a rule base searching means for searching the melody pattern rule base means for the melody pattern from the melody pattern forming means, and a melody pattern rule base until the search is successful. Until the rule of the melody pattern that matches the search target is found in the means, Repeat means for repeating the operations of the means, the melody pattern forming means, and the rule-based search means while changing the sound string candidates, and generating a sound string candidate relating to success when the search is successful, the sound string of the melody An automatic composer comprising: a determining unit that determines as.
JP36054591A 1991-12-30 1991-12-30 Automatic composer Expired - Fee Related JP3364940B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP36054591A JP3364940B2 (en) 1991-12-30 1991-12-30 Automatic composer
US07/998,561 US5451709A (en) 1991-12-30 1992-12-29 Automatic composer for composing a melody in real time

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP36054591A JP3364940B2 (en) 1991-12-30 1991-12-30 Automatic composer

Publications (2)

Publication Number Publication Date
JPH05181408A true JPH05181408A (en) 1993-07-23
JP3364940B2 JP3364940B2 (en) 2003-01-08

Family

ID=18469862

Family Applications (1)

Application Number Title Priority Date Filing Date
JP36054591A Expired - Fee Related JP3364940B2 (en) 1991-12-30 1991-12-30 Automatic composer

Country Status (1)

Country Link
JP (1) JP3364940B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003228369A (en) * 2002-02-01 2003-08-15 Yamaha Corp Audio melody music generator and portable terminal device using the generator
WO2007091938A1 (en) * 2006-02-06 2007-08-16 Mats Hillborg Melody generator

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003228369A (en) * 2002-02-01 2003-08-15 Yamaha Corp Audio melody music generator and portable terminal device using the generator
WO2007091938A1 (en) * 2006-02-06 2007-08-16 Mats Hillborg Melody generator
US7671267B2 (en) 2006-02-06 2010-03-02 Mats Hillborg Melody generator

Also Published As

Publication number Publication date
JP3364940B2 (en) 2003-01-08

Similar Documents

Publication Publication Date Title
US5451709A (en) Automatic composer for composing a melody in real time
USRE40543E1 (en) Method and device for automatic music composition employing music template information
JP3704980B2 (en) Automatic composer and recording medium
JP2638021B2 (en) Automatic accompaniment device
US5052267A (en) Apparatus for producing a chord progression by connecting chord patterns
JPH05181473A (en) Automatic melody generation device
US6294720B1 (en) Apparatus and method for creating melody and rhythm by extracting characteristic features from given motif
JP2562370B2 (en) Automatic accompaniment device
US6100462A (en) Apparatus and method for generating melody
JPH07219536A (en) Automatic arrangement device
JP3364941B2 (en) Automatic composer
JP2000315081A (en) Device and method for automatically composing music and storage medium therefor
JPH0990952A (en) Chord analyzing device
JP3364940B2 (en) Automatic composer
Levitt A representation for musical dialects
JP3664126B2 (en) Automatic composer
JP3531507B2 (en) Music generating apparatus and computer-readable recording medium storing music generating program
JP3163654B2 (en) Automatic accompaniment device
JP2666063B2 (en) Automatic composer
JP2002032079A (en) Device and method for automatic music composition and recording medium
JP2638816B2 (en) Accompaniment line fundamental tone determination device
JP2958794B2 (en) Melody analyzer
JP3271332B2 (en) Chording device
JP3316547B2 (en) Chording device
JP2615721B2 (en) Automatic composer

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081101

Year of fee payment: 6

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091101

Year of fee payment: 7

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101101

Year of fee payment: 8

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111101

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees