JP3271332B2 - Chording device - Google Patents

Chording device

Info

Publication number
JP3271332B2
JP3271332B2 JP29926892A JP29926892A JP3271332B2 JP 3271332 B2 JP3271332 B2 JP 3271332B2 JP 29926892 A JP29926892 A JP 29926892A JP 29926892 A JP29926892 A JP 29926892A JP 3271332 B2 JP3271332 B2 JP 3271332B2
Authority
JP
Japan
Prior art keywords
melody
note
chord progression
chord
passage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP29926892A
Other languages
Japanese (ja)
Other versions
JPH06124089A (en
Inventor
林  哲也
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 JP29926892A priority Critical patent/JP3271332B2/en
Priority to US08/134,797 priority patent/US5510572A/en
Publication of JPH06124089A publication Critical patent/JPH06124089A/en
Application granted granted Critical
Publication of JP3271332B2 publication Critical patent/JP3271332B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【産業上の利用分野】この発明は音楽装置に関し、特に
与えられたメロディに和音を付ける和音付装置に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a music apparatus, and more particularly, to a chording apparatus for adding a chord to a given melody.

【0002】[0002]

【従来の技術】メロディに和音を付ける和音付装置は既
に知られている、従来の和音付装置は、与えられたメロ
ディの各部に割り当てるコードの長さを1小節あるいは
1/2小節のように、すべて等しくすることを前提にし
て、メロディを等しい長さの区間に分割する、そして、
各々の区間に対し、1つのコードを決定し、割り当て
る。コードの決定は、区間のメロディのピッチ内容や、
前区間に割り当てたコード等を考慮したコード決定アル
ゴリズムに基づいて行う。
2. Description of the Related Art A chording device for adding a chord to a melody is already known. In a conventional chording device, a chord length assigned to each part of a given melody is set to one bar or half a bar. , Splitting the melody into equal length intervals, assuming that they are all equal, and
One code is determined and assigned to each section. The chord is determined by the pitch content of the melody of the section,
This is performed based on a code determination algorithm that takes into account the code and the like assigned to the previous section.

【0003】[0003]

【発明が解決しようとする課題】このため、生成される
コードの列(コード進行)にコード決定アルゴリズムに
特有のくせが出て、不自然さが生じる。また、伴奏の際
に、一定時間ごとにコード(ハーモニー)が変わるの
で、単調な感じになる。したがってこの発明の目的は、
与えられたメロディに対し、自然でリアルなコード進行
を付けることができる和音付装置を提供することであ
る。更に、この発明の目的は、メロディに対し、1つず
つコードを付けるのではなく、コードパターンを単位と
して和音付けが可能な和音付装置を提供することであ
る。
As a result, the sequence of generated codes (chord progression) has a peculiar habit peculiar to the code determination algorithm, and causes unnaturalness. Also, when the accompaniment is performed, the chord (harmony) changes at regular intervals, which makes the sound monotonous. Therefore, the purpose of this invention is
An object of the present invention is to provide a chording device capable of giving a natural and realistic chord progression to a given melody. It is a further object of the present invention to provide a chord adding device capable of assigning chords to chords in units of chord patterns instead of chords to melody one by one.

【0004】[0004]

【課題を解決するための手段】この発明によれば、一連
の音符列からなるメロデイを付与するメロデイ付与手段
と、(B)前記メロデイを構成する各音符を検査し、特
定の音符が存在するか否かを検出する特定音符検出手段
と、(C)前記特定音符検出手段により検出された特定
音符のメロデイ上の位置に基づいて、前記メロデイを
数の楽節に分割するメロデイ分割手段と、(D)コード
進行のデータベースを記憶するコード進行データベース
と、(E)分割された各楽節に対し、前記コード進行デ
ータベース手段を検索して適合するコード進行を割り当
てるコード進行割当手段と、を有することを特徴とする
和音付装置が提供される。この構成によれば、特定音符
検出手段及びメロデイ分割手段の作用により、メロデイ
が音楽的にひとまとまりの構成単位とされる楽節に分割
される。一方コード進行データベース手段には、コード
進行(コードパターン)のデータベースが置かれる。そ
して、コード進行割当手段により、各楽節に適したコー
ド進行をコード進行データベースから検索して割り当て
る。したがって、自然でリアルなコード進行をメロデイ
に付けることができる。上記特定音符検出手段は、特定
の音符として、前記メロデイを構成する一連の音符列の
中から楽節終了音符が存在するか否かを検出する手段を
含み得る。更に、前記特定音符検出手段は、特定の音符
として、前記メロデイの先頭に1小節の半分以上の長さ
の休符が存在するか否かを検出する手段を含み得る。
記コード進行割当手段は、(A)メロデイパターンのル
ールベースを記憶するメロデイパターンルールベース記
憶手段と、(B)前記コード進行データベース手段から
コード進行を検索するコード進行検索手段と、(C)検
索したコード進行に基づいて楽節を分析する楽節分析手
段と、(D)楽節の分析結果を前記メロデイパターンデ
ータのルールベースによって検索して検索したコード進
行の、楽節に対する適合度を評価する適合度評価手段を
含み得る。また、コード進行割当手段は、各楽節に対
し、複数のコード進行の候補を生成する手段を含み得
る。これはメロデイに対する種々のアレンジを提供する
ものである。例えば、自動アレンジ演奏(メロデイにコ
ード進行を用いた伴奏が付く演奏)の都度、異なる候補
を楽節のコード進行として選択して演奏を行うことによ
り、ユーザーは種々のアレンジ演奏を楽しめる。また、
コード進行割当手段は前記コード進行データベース手段
に記憶される複数のコード進行を合成して楽節のコード
進行を生成する手段を含み得る。この手段は、コード進
行データベースをみかけ上拡大するデータベース拡大機
能を提供するものである。
According to the present invention, a series of
Melody adding means for adding a melody consisting of a series of notes , and (B) inspecting each note constituting the melody,
Specific note detection means for detecting whether a fixed note exists
And (C) the identification detected by the specific note detection means.
Based on the note's position on the melody, the melody is duplicated.
And Merodei dividing means for dividing the number of passages, (D) and the chord progression database for storing a database of chord progression for each passage divided (E), matching the chord progression by searching the chord progression database means And a chord progression allocating means for allocating a chord. According to this configuration, the specific note
By the action of the detecting means and the melody dividing means, the melody is divided into musical passages which are musically a unit. On the other hand, the chord progression database means stores a chord progression (code pattern) database. Then, a chord progression suitable for each passage is retrieved from the chord progression database and assigned by the chord progression assigning means. Therefore, a natural and realistic chord progression can be added to the melody. The specific note detecting means is for
Of a series of note strings constituting the melody
A means to detect whether there is a passage end note from inside
May be included. Further, the specific note detecting means includes a specific note
At the beginning of the melody, a length of at least half a bar
For detecting whether or not there is a rest. The chord progression allocating means includes: (A) a melody pattern rule base storage means for storing a melody pattern rule base; (B) a chord progression search means for searching a chord progression from the chord progression database means; A phrase analyzing means for analyzing a phrase based on the chord progression obtained, and (D) a fitness evaluation for evaluating the relevance of the chord progression obtained by retrieving the analysis result of the phrase by the rule base of the melody pattern data to the phrase. Means may be included. Further, the chord progression assigning means may include means for generating a plurality of chord progression candidates for each passage. This offers various arrangements for the melody. For example, each time an automatic arrangement is performed (a melody accompanied by an accompaniment using chord progression), the user can enjoy various arrangement performances by selecting different candidates as chord progressions of a section and performing the performance. Also,
The chord progression assigning means may include means for combining a plurality of chord progressions stored in the chord progression database means to generate a chord progression of a passage. This means provides a database expansion function for apparently expanding the chord progression database.

【0005】[0005]

【実施例】以下、図面を参照してこの発明を更に詳細に
説明する。図1はこの発明による音楽装置(和音付装
置)の機能ブロック図である。2は与えられたメロディ
を表わす。メロディ分割部4は、この与えられたメロデ
ィ2を参照番号6で示す楽節1〜楽節nのように、複数
の分割メロディ(楽節)に分割する。調性分析部8は各
楽節の調を判定する。要素4〜8によりメロディ分析装
置が提供される。図1に示す音楽装置の全体の目的は、
与えられたメロディに対し、和音(コード進行)付けを
行うことである。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, the present invention will be described in more detail with reference to the drawings. FIG. 1 is a functional block diagram of a music device (device with chords) according to the present invention. 2 represents a given melody. The melody dividing section 4 divides the given melody 2 into a plurality of divided melodies (sections), such as passages 1 to n indicated by reference numeral 6. The tonality analyzer 8 determines the key of each passage. Elements 4 to 8 provide a melody analyzer. The overall purpose of the music device shown in FIG.
To give chords (chord progression) to a given melody.

【0006】この実施例の特徴に従い、音楽装置は、与
えられたメロディ2の各部分に対して1つずつコードを
付けるのでなく、楽節を単位として、各楽節に適したコ
ード進行を割り当て、決定する。このために、コード進
行データベース(CPDB)12が設けられる。コード
進行データベースは種々の音楽スタイルのコード進行の
データベースを記憶する。10は指定された音楽スタイ
ル(リズムスタイル)を表わす。属性テスト部14は、
指定リズムスタイルと、楽節の長さに適合するコード進
行(CP)をCPDB12のなかから検索する。CPD
B12に記憶されるコード進行はいずれも基準の調で書
かれている。そこで、移調部16は検索されたコード進
行を調性分析部8から与えられる楽節の調に移調する
According to the features of this embodiment, the music apparatus assigns and determines a chord progression suitable for each passage in units of passages, instead of attaching a chord to each part of the given melody 2 one by one. I do. For this, a chord progression database (CPDB) 12 is provided. The chord progression database stores a database of chord progressions for various music styles. Reference numeral 10 denotes a designated music style (rhythm style). The attribute test unit 14
A chord progression (CP) matching the designated rhythm style and the length of the passage is searched from the CPDB 12. CPD
All chord progressions stored in B12 are written in a standard key. Then, the transposition unit 16 transposes the searched chord progression to the key of the passage given from the tonality analysis unit 8.

【0007】モーション分類部18と音種分類部20は
分割メロディ(楽節)の各音符の意味付けを行う。モー
ション分類部18は、隣り合う音符の音高差(音程)の
大きさに従って、音符間のモーションを分類する。音種
分類部20は調性分析部8から与えられる楽節の調とC
PDB12から検索されたコード進行(楽節のコード進
行の候補)の情報を基にして楽節の各音符の音種を分類
する。
The motion classification unit 18 and the sound type classification unit 20 assign meaning to each note of the divided melody (section). The motion classifying unit 18 classifies motion between notes according to the magnitude of a pitch difference (pitch) between adjacent notes. The tone type classification unit 20 calculates the tone of the phrase given from the tonality analysis unit 8 and the C
Based on information on chord progressions (candidates for chord progressions in a passage) retrieved from the PDB 12, the sound types of each note in the passage are classified.

【0008】メロディパターンルールベース(MPR
B)22は、個々の音楽スタイルで使用されるメロディ
パターンのルールベースを記憶する。マッチング部24
は、モーション分類部18と音種分類部20から与えら
れる各音符の分類データを受け、その分類データが、指
定されたスタイル10のメロディパターンに従うかどう
かを検査する。このために、マッチング部24はMPR
B22から指定されたリズムスタイル10のメロディパ
ターンを検索し、それを分類データと照合する。マッチ
ングの結果、メロディパターンのルールに従う楽節の音
符にはパターン適合のラベルが付けられる。
[0008] Melody pattern rule base (MPR
B) 22 stores a rule base of a melody pattern used in each music style. Matching unit 24
Receives the classification data of each note given from the motion classification unit 18 and the sound type classification unit 20, and checks whether the classification data follows the melody pattern of the designated style 10. For this purpose, the matching unit 24
The melody pattern of the designated rhythm style 10 is searched from B22, and the melody pattern is compared with the classification data. As a result of the matching, the notes of the passage according to the rules of the melody pattern are labeled with pattern matching.

【0009】音種分類部20による音種の分類は検索し
たコード進行に依存する。したがって、検索したコード
進行が楽節に合わない場合には、メロディパターンのル
ールに従わない音符が多くなる。いいかえると、パター
ン適合のラベルが付いた音符の割合は、検索したコード
進行が楽節に対しどの程度、適合するかを表わすCP適
合度の尺度である。同様に、音種分類部20の結果は調
性分析部8で判定した楽節の調にも依存する。つまり、
調性分析部8が判定した調が誤っている場合には、パタ
ーン適合のラベルが付いた音符の割合は少なくなる。
The classification of sound types by the sound type classification unit 20 depends on the chord progression searched. Therefore, if the chord progression does not match the passage, many notes do not follow the rules of the melody pattern. In other words, the percentage of notes labeled as pattern-matched is a measure of CP suitability that indicates how well the retrieved chord progression matches a passage. Similarly, the result of the tone classification unit 20 also depends on the key of the passage determined by the tonality analysis unit 8. That is,
If the key determined by the tonality analysis unit 8 is incorrect, the proportion of notes labeled with a pattern match decreases.

【0010】したがって、調性分析部8としては、楽節
がとり得る複数の調の可能性を考慮して、複数の調を楽
節の調の候補として判定できることがのぞましい。適合
度評価部26は、マッチング部24の結果を受けて楽節
の音符のなかでパターン適合のラベルが付いた音符の割
合を算出してコード進行の適合度を評価する。
Therefore, it is preferable that the tonality analysis unit 8 can determine a plurality of keys as candidates for a passage key in consideration of a plurality of possible keys that the passage can take. Based on the result of the matching unit 24, the fitness evaluation unit 26 calculates the ratio of notes with a pattern matching label in the notes of the passage to evaluate the fitness of the chord progression.

【0011】決定部28はCPDB12から検索したコ
ード進行のなかで最も適合度の高いコード進行を楽節の
コード進行として決定する。決定したコード進行を参照
番号30に示す。「決定CP1」は「楽節1」のコード
進行、……「決定CPn」は「楽節n」に対するコード
進行を表わしている。以上の説明からわかるように、メ
ロディ分割部4は、楽節の調性分析部8と組み合わせに
よって、メロディに含まれる転調の検出を可能とするも
のである。
The deciding section 28 decides the chord progression having the highest matching degree among the chord progressions retrieved from the CPDB 12 as the chord progression of the phrase. Reference numeral 30 indicates the determined chord progression. “Determined CP1” indicates the chord progression of “Phrase 1”,..., “Decision CPn” indicates the chord progression of “Phrase n”. As can be seen from the above description, the melody dividing section 4 enables detection of modulation included in the melody in combination with the tonality analysis section 8 of the passage.

【0012】また、メロディ分割部4の結果である各楽
節にCPDB12からのコード進行(意味的にまとまっ
たコードのパターン)を割り当てることにより、従来の
ように1つずつコードをメロディの各部に割り当てる方
式では得られない、和音付けが可能である。
Further, by allocating the chord progression (semantically grouped chord patterns) from the CPDB 12 to each passage which is the result of the melody dividing section 4, one chord is allocated to each section of the melody as in the prior art. It is possible to add chords that cannot be obtained by the system.

【0013】図2は実施例に係る音楽装置(ここでは電
子鍵盤楽器を構成している)のハード構成のブロック図
である。CPU40はプログラムROM50に記憶され
るプログラムに従って動作してシステム全体を制御す
る。鍵盤60は通常の電子鍵盤楽器に使用される鍵盤と
同様の構成であり、音楽の演奏に使用される。操作パネ
ル70には、リズム(伴奏)スタイルを指定するための
リズム選択キー71、演奏速度を指定するテンポボリウ
ム72、メロディの分割位置を指示入力するためのフィ
ルインキー73、鍵盤60で演奏するメロディを音楽装
置に記録することを要求するメロディ記録キー74、記
録の終了を指示するストップキー75、記録したメロデ
ィのアレンジ(和音付、伴奏付)を要求するためのアレ
ンジキー76、アレンジしたものの演奏を指示するプレ
イキー77、演奏の停止を指示するストップキー78、
その他、音楽装置の操作に必要なキー、スイッチ類が設
けられる。
FIG. 2 is a block diagram of a hardware configuration of a music apparatus (here, constituting an electronic keyboard instrument) according to the embodiment. The CPU 40 operates according to the program stored in the program ROM 50 to control the entire system. The keyboard 60 has a configuration similar to that of a keyboard used for a normal electronic keyboard instrument, and is used for playing music. The operation panel 70 includes a rhythm selection key 71 for specifying a rhythm (accompaniment) style, a tempo volume 72 for specifying a performance speed, a fill-in key 73 for specifying and inputting a melody division position, and a melody to be played on the keyboard 60. Record key 74 for requesting that the recorded melody be recorded on the music device, a stop key 75 for instructing the end of the recording, an arrangement key 76 for requesting the arrangement (with chords and accompaniment) of the recorded melody, and playing the arranged melody. Play key 77 for instructing stop, stop key 78 for instructing stop of performance,
In addition, keys and switches necessary for operating the music device are provided.

【0014】データROM80は調性判定に使用される
音の結合度テーブル81、和音付けにおいて使用される
コード進行データベース(CPDB)82、コードとテ
ンションの標準ピッチクラスセット(PCS)メモリ8
3、メロディパターンルールベース(MPRB)84、
各種のスタイルのリズムパターンを記憶するリズムデー
タメモリ85、各種スタイルの伴奏パターンを記憶する
伴奏パターンデータメモリ86、その他、所要の固定デ
ータを記憶する。
The data ROM 80 includes a tone coupling degree table 81 used for tonality determination, a chord progression database (CPDB) 82 used for chording, and a standard pitch class set (PCS) memory 8 for chords and tensions.
3. Melody pattern rule base (MPRB) 84,
A rhythm data memory 85 for storing rhythm patterns of various styles, an accompaniment pattern data memory 86 for storing accompaniment patterns of various styles, and other required fixed data are stored.

【0015】RAM90は鍵盤60で演奏されたメロデ
ィ(入力メロディ)を記憶する入力メロディメモリ9
1、入力メロディを量子化(音符化)した量子化メロデ
ィを記憶する量子化メロディメモリ92、分割メロディ
(楽節)の音符の結合ヒストグラムメモリ93、各楽節
の主音の候補を記憶するためのキーエントリテーブル9
4、楽節の分類データを記憶する分類データメモリ9
5、コード進行の適合度を記憶するCP適合度メモリ9
6、各楽節のコード進行の候補を記憶するCPエントリ
テーブル97を含む。
The RAM 90 stores an input melody memory 9 for storing a melody played on the keyboard 60 (input melody).
1. A quantized melody memory 92 for storing a quantized melody obtained by quantizing (note-converting) an input melody, a combined histogram memory 93 of musical notes of a divided melody (section), and a key entry for storing a main tone candidate of each section. Table 9
4. Classification data memory 9 for storing phrase classification data
5. CP conformity memory 9 for storing the conformity of chord progression
6. Includes a CP entry table 97 that stores chord progression candidates for each passage.

【0016】表示装置100は操作パネル上に配置され
るLED群、液晶パネルを含む。音源110はCPU4
0の制御の下に楽音信号を発生する。サウンドシステム
120は、アンプ、スピーカを含み、楽音信号を外部に
出力する。
The display device 100 includes a group of LEDs arranged on an operation panel and a liquid crystal panel. Sound source 110 is CPU4
A tone signal is generated under the control of 0. The sound system 120 includes an amplifier and a speaker, and outputs a tone signal to the outside.

【0017】図3は鍵盤60から実時間で演奏されるメ
ロディをRAM90の入力メロディメモリ91に記録す
るルーチンのフローチャートである。メロディデータの
記録フォーマットを図4に示す。図示のように1つのメ
ロディデータは時間バイトTとコマンドバイトCDの2
バイトで構成される。時間バイトTはイベント間の時間
差を記憶する。コマンドバイトCDはイベントを記憶す
る。イベントには、鍵盤操作による押鍵(ノートオン)
イベントと離鍵(ノートオフ)イベント、フィルインキ
ー73操作によるフィルインイベント(CD=F0)、
タイムオーバーによるタイムオーバーイベント(F
E)、ストップキー75操作によるエンドイベント(F
F)がある。ノートオンとオフのイベントバイトのう
ち、下位5ビットはノートナンバー(音高)を表わす。
ビット6は“0”で、MSBはオンイベントなら
“0”、オフイベントなら“1”となる。
FIG. 3 is a flowchart of a routine for recording a melody played from the keyboard 60 in real time in the input melody memory 91 of the RAM 90. FIG. 4 shows the recording format of the melody data. As shown in the figure, one melody data is composed of a time byte T and a command byte CD.
Consists of bytes. The time byte T stores the time difference between events. The command byte CD stores the event. Events include key presses (note on) by keyboard operation
Event, key release (note off) event, fill-in event by operating the fill-in key 73 (CD = F0),
Time over event due to time over (F
E), end event (F
F). Of the note-on and off event bytes, the lower 5 bits represent a note number (pitch).
Bit 6 is "0", and the MSB is "0" for an ON event and "1" for an OFF event.

【0018】フィルインキー73はメロディの分割位置
を演奏者が指示入力するのに用いられる(なお、アレン
ジ演奏においては、フィルイン演奏を行うのに使用され
る)。メロディ記録キー74が押されると、CPU40
は図3に示す実時間メロディの記録ルーチンを実行す
る。初期化R1で入力メロディメモリ91の領域をRA
M90上に割り当て、長さカウンタLENGTHをクリ
アする。次にR2でリズムをスタートさせる。この結
果、図示しないリズム演奏ルーチンにより、リズムパタ
ーンデータメモリ84、音源110を介して指定スタイ
ルのリズムが演奏される。メロディ演奏者は、このよう
なリズムに合わせてメロディを演奏することになる。
The fill-in key 73 is used by a player to input an instruction on a melody division position (in an arrangement performance, a fill-in performance is used). When the melody recording key 74 is pressed, the CPU 40
Executes a real-time melody recording routine shown in FIG. In the initialization R1, the area of the input melody memory 91 is changed to RA
Allocated on M90 and clears the length counter LENGTH. Next, the rhythm is started at R2. As a result, the rhythm of the designated style is played through the rhythm pattern data memory 84 and the sound source 110 by a rhythm performance routine (not shown). The melody player plays the melody in accordance with such a rhythm.

【0019】キー走査R3で鍵盤60、フィルインキー
73、ストップキー75の状態を読み込む。計測単位時
間(テンポに依存する音楽分解能時間)の経過後(R
5)、R20でフィルインキー73が押されたかどうか
を調べ、押されていればR21〜R23に示すフィルイ
ンデータの書込処理(時間バイトTへの長さLENGT
Hの書込、コマンドバイトCDへのフィルインフラグの
書込、長さカウンタLENGTHのクリア)を行う。
The states of the keyboard 60, the fill-in key 73, and the stop key 75 are read by the key scanning R3. After the measurement unit time (music resolution time that depends on the tempo) has elapsed (R
5) Check whether the fill-in key 73 has been pressed in R20, and if pressed, write the fill-in data indicated by R21 to R23 (length LENGT to time byte T)
H, writing a fill-in flag in the command byte CD, and clearing the length counter LENGTH).

【0020】続いて、R6で鍵状態の変化の有無を調べ
る。鍵状態が変化していれば、時間バイトTに長さLE
NGTHを書き込み(R7)、押鍵か離鍵かをチェック
する(R8)。押鍵なら、コマンドバイトCD中にノー
トオンフラグを書き込み(R10)、離鍵ならコマンド
バイトCD中にノートオフフラグを書き込み(R9)。
そして、コマンドバイトCD中に押鍵または離鍵にかか
るノートナンバーを書き込み(R11)、長さカウンタ
LENGTHをクリアする(R12)。その後、計測単
位時間の経過待ちループR3〜R5のエントリであるキ
ー走査R3に戻る。
Subsequently, the presence or absence of a change in the key state is checked at R6. If the key state has changed, the time byte T has the length LE
NGTH is written (R7), and it is checked whether the key is pressed or released (R8). If the key is pressed, a note-on flag is written in the command byte CD (R10). If the key is released, a note-off flag is written in the command byte CD (R9).
Then, a note number relating to key press or key release is written in the command byte CD (R11), and the length counter LENGTH is cleared (R12). After that, the process returns to the key scan R3 which is an entry of the elapse waiting loop R3 to R5 of the measurement unit time.

【0021】鍵状態に変化がなければ、LENGTHが
255(FF)に達しているかどうかを調べ、255に
達してなければ、長さカウンタLENGTHをインクリ
メントして(R14)キー走査R3に戻る。達していれ
ば、時間バイトTに255を書き込み(R15)、コマ
ンドバイトCDにタイムオーバーフラグを書き込み(R
16)、LENGTHをクリアして(R17)、キー走
査R3に戻る。
If there is no change in the key state, it is checked whether LENGTH has reached 255 (FF). If it has not reached 255, the length counter LENGTH is incremented (R14) and the process returns to the key scan R3. If it has reached, write 255 to the time byte T (R15) and write the time-over flag to the command byte CD (R15).
16) Clear LENGTH (R17) and return to key scan R3.

【0022】メロディ演奏が終ったら演奏者はストップ
キー75を押す。これは、R4で検出される。これに対
し、時間バイトTにLENGTHを書き込み(R1
8)、コマンドバイトCDにエンドフラグを書き込んで
(R19)、実時間メロディの記録処理を終える。この
ようにして鍵盤60で演奏したメロディが入力メロディ
メモリ91に記録される。
When the melody performance is completed, the player presses the stop key 75. This is detected at R4. On the other hand, LENGTH is written in the time byte T (R1
8) The end flag is written in the command byte CD (R19), and the recording process of the real-time melody is completed. Thus, the melody played on the keyboard 60 is recorded in the input melody memory 91.

【0023】次に、アレンジキー76を操作すると、入
力メロディメモリ91に記憶されたメロディに対するア
レンジ処理が実行される。アレンジ処理の前処理とし
て、入力メロディは量子化(音符化)され、量子化メロ
ディとして量子化メロディメモリ92に移される。
Next, when the arrange key 76 is operated, an arrangement process for the melody stored in the input melody memory 91 is executed. As preprocessing of the arrangement processing, the input melody is quantized (note-converted) and transferred to the quantization melody memory 92 as a quantization melody.

【0024】量子化メロディメモリ92のフォーマット
を図5に示す。図示のように、量子化メロディメモリ9
2において1つの音符レコードはピッチクラスバイト、
長さバイト、音高バイト、フラグバイトの4バイトで構
成される。ピッチクラスバイトは通常、音符(ノート)
のピッチクラス(C〜Bのいずれかを00〜CBで表わ
す)を表わす。値0Fのピッチクラスバイトは休符を表
わす。値0Eのピッチクラスバイトはタイを表わす。長
さバイトは音符の長さ(量子化した音符長)を表わす。
音高バイトは音符のピッチを表わす。フラグバイトは、
フィルインや楽節終了を示すフラグとして用いられる。
フィルインのみのときは80、楽節終了のみのときは0
1、両方あるときは81、いずれもないときは80の値
をとる。量子化処理を完了した段階では、楽節終了フラ
グを除く情報が量子化メロディメモリ92に記憶され
る。楽節終了フラグは後述するメロディ分割処理におい
て書き込まれる。楽節終了フラグから次の楽節終了フラ
グまでが分割メロディ(楽節)を表わす。
FIG. 5 shows the format of the quantization melody memory 92. As shown, the quantization melody memory 9
In one, one note record is a pitch class byte,
It consists of 4 bytes: length byte, pitch byte, and flag byte. Pitch class bytes are usually notes
(Any one of C to B is represented by 00 to CB). A pitch class byte of value 0F represents a rest. A pitch class byte of value 0E represents a tie. The length byte indicates the length of a note (quantized note length).
The pitch byte indicates the pitch of the note. The flag byte is
This is used as a flag indicating fill-in or the end of a passage.
80 for fill-in only, 0 for end of passage
The value is 1, when there is both, 81, and when there is neither, the value is 80. When the quantization process is completed, information excluding the phrase end flag is stored in the quantization melody memory 92. The phrase end flag is written in a melody division process described later. A section melody (section) from a section end flag to the next section end flag represents a melody.

【0025】量子化処理の次に、メロディ全体に対する
調性判定処理が行われる。図6〜図8に調性判定処理ル
ーチンのフローを示す。調性判定処理ではメロディの各
音符についてそのまわりの音符との間で形成されるモー
ションを分析し、その分析結果に基づいて複数の主音候
補を生成する。モーションの分析のために図9に示すよ
うな結合度テーブル81が利用される。結合度テーブル
81は隣り合う2音間の結合度を2音間に形成される音
高差(音程)の関数として記憶している。
After the quantization process, a tonality determination process is performed on the entire melody. 6 to 8 show the flow of the tonality determination processing routine. In the tonality determination processing, a motion formed between each note of the melody and the surrounding notes is analyzed, and a plurality of tonic candidates are generated based on the analysis result. For the analysis of the motion, a coupling degree table 81 as shown in FIG. 9 is used. The coupling degree table 81 stores the coupling degree between two adjacent sounds as a function of a pitch difference (pitch) formed between the two sounds.

【0026】調性判定処理ルーチンの初期化D1で量子
化メロデイの先頭(最初の音符レコード)をロケート
し、キーエントリ94をクリアする。D2で現音符と前
後の音符の音高を読み、D3で現音符の音長LENを読
み、D4で現音符のピッチクラスPCを読む。そして、
D5で前音符と現音符との音高差(前音程)fを算出
し、D6で現音符次音符との音高差(後音程)tを算
出する。つづいて、D7で前音程fと後音程tにより結
合度テーブル81をルックアップして前結合度JOIN
T(f)と、後結合度1/JOINT(t)を得、これ
に、音長データLENを用いて、現音符の結合度CPL
を、 CPL=LEN×JOINT(f)/JOINT(t) 算出する。そしてこの結合度E、ヒストラムメモリ
93における現音符のピッチクラスに対する要素W(P
C)に加える。以上の処理を、メロデイのすべての音符
について繰り返し実行する(D8、D9)。この結果、
結合ヒストラムメモリ93には、メロデイの各ピッチ
クラスについて結合度の累算値が記憶される。
In the initialization D1 of the tonality determination processing routine, the head (first note record) of the quantization melody is located, and the key entry 94 is cleared. The pitch of the current note and the preceding and following notes are read at D2, the pitch LEN of the current note is read at D3, and the pitch class PC of the current note is read at D4. And
At D5, the pitch difference (previous pitch) f between the previous note and the current note is calculated, and at D6, the pitch difference (post-pitch) t between the current note and the next note is calculated. Then, at D7, the coupling degree table 81 is looked up based on the front pitch f and the rear pitch t, and the front coupling JOIN is performed.
T (f) and the post-coupling degree 1 / JOINT (t) are obtained, and using the duration data LEN, the coupling degree CPL of the current note is obtained.
The calculated at CPL = LEN × JOINT (f) / JOINT (t). And this binding of E, elements W (P for pitch class of the current note in histo gram memory 93
Add to C). The above processing is repeatedly executed for all the notes of the melody (D8, D9). As a result,
The binding histoplasmosis grayed Ramumemori 93, accumulated value of the connection degree for each pitch class Merodei are stored.

【0027】次に、結合ヒストラムメモリ93を利用
して、メロデイの第1の主音候補を決定する(D10〜
D15)。まず、D10でトニックのピッチクラスカウ
ンタiと最大値maxを“0”に初期化する。D11で
トニック(主音)をピッチクラスiとしたときのダイア
トニックスケールの評価値pointを次式に示すよう
に結合ヒストラムメモリ93を用いて算出する。 この評価値の算出はすべてのピッチクラスiのトニック
について行なわれる(D15、D16)。最も高い評価
値を与えたピッチクラスiをメロデイの第1の主音候補
keyとしてキーエントリ94内にストアする(D1
2、D13)。また、最大の評価値maxもストアする
(D14)。
Next, utilizing conjugation histoplasmosis grayed Ramumemori 93, determines the first tonic candidate Merodei (D10~
D15). First, in D10, the tonic pitch class counter i and the maximum value max are initialized to "0". The evaluation value point diatonic scale when the tonic (the tonic) and pitch class i in D11 is calculated by using the binding histo grayed Ramumemori 93 as shown in the following equation. This evaluation value is calculated for all tonics of pitch class i (D15, D16). The pitch class i giving the highest evaluation value is stored in the key entry 94 as the first key note key of the melody (D1
2, D13). The maximum evaluation value max is also stored (D14).

【0028】次にD17〜D24において、最大の評価
値maxの90%以上の評価値を与えたピッチクラスに
ついても第2、第3……の主音候補cand key
[j]としてキーエントリ94内にストアする。メロデ
ィの全体に対する調性判定処理の結果は、後述する楽節
の調性判定処理において、最初と最後の楽節の調性判定
に利用される。なお、メロディの全体に対する調性判定
処理は、楽節の調性判定処理の前処理であり、所望であ
れば、省略することができる。メロディ全体の調性判定
処理の終了後、メロディを楽節に分割するメロディ分割
処理が行なわれる。
Next, in D17 to D24, the second, third,... Principal note candidate key keys are also assigned to the pitch classes for which the evaluation value of 90% or more of the maximum evaluation value max is given.
[J] is stored in the key entry 94. The result of the tonality determination process for the entire melody is used for the tonality determination of the first and last phrases in the later-described phrase tonality determination process. Note that the tonality determination processing for the entire melody is a pre-process of the tonality determination processing for the passage, and can be omitted if desired. After the tonality determination processing for the entire melody is completed, a melody division processing for dividing the melody into phrases is performed.

【0029】メロディ分割処理のフローを図10に示
す。このメロディ分割処理ルーチンは、(A)メロディ
がアウフタクト(auftact)で始まるかどうかを
検査する機能、(B)4小節のメロディ部分を楽節とし
て検出する機能、(C)メロディのなかから楽節終了音
符(ケーデンスノート)を検出する機能、(D)フィル
インフラグを楽節の分割ポイントとして解釈する機能、
を備えている。
FIG. 10 shows the flow of the melody dividing process. This melody division processing routine includes (A) a function for checking whether a melody starts with an autoact, (B) a function for detecting a melody portion of four measures as a phrase, and (C) a phrase end note from a melody. (D) A function to detect (cadence notes), (D) a function to interpret a fill-in flag as a division point of a passage,
It has.

【0030】例えば、図11の譜例(A)のメロディに
おける矢印151で示されるGの音符はアウフタクト音
符として検出される。その結果Gの音符の次の小節線1
52が第1楽節と第2楽節との分割点となる。また、譜
例(B)において、矢印153で示される音符C、矢印
155で示される音符Aはそれぞれケーデンスノートと
して検出される。その結果、ケーデンスノートCの次の
小節線154が第1と第2楽節との分割点となり、ケー
デンスノートAの次の小節線156が第2と第3楽節と
の分割点となる。いいかえると、第1小節が第1楽節、
第2と第3小節が第2楽節、第4小節以降が第3楽節と
なる。譜例(C)の場合、4小節の長さのメロディ部分
が検出され、小節線157が第1楽節と第2楽節との分
割ポイントとなる。
For example, a G note indicated by an arrow 151 in the melody of the musical example (A) in FIG. 11 is detected as an aftertact note. As a result, the bar 1 next to the note of G
52 is a division point between the first passage and the second passage. Further, in the musical example (B), a note C indicated by an arrow 153 and a note A indicated by an arrow 155 are respectively detected as cadence notes. As a result, the next bar line 154 of the cadence note C becomes a dividing point between the first and second passages, and the next bar line 156 of the cadence note A becomes a dividing point between the second and third passages. In other words, the first bar is the first bar,
The second and third measures are the second measure, and the fourth and subsequent measures are the third measure. In the case of the musical example (C), a melody part having a length of four measures is detected, and the measure line 157 is a division point between the first and second measures.

【0031】メロディ分割処理ルーチンの詳細を述べる
と、先ず初期化E1で量子化メロディの先頭をロケート
する。次にE2でメロディがアウフタクトで始まるかど
うかを判定する。これは、メロディの先頭の休符の長さ
で判定する。即ち、先頭の休符が1小節の半分以上あれ
ばアウフタクト開始メロディとして第1小節を第1楽節
として分割する(E9、E10)。
The details of the melody dividing processing routine will be described. First, the head of the quantized melody is located at initialization E1. Next, it is determined at E2 whether the melody starts with an afteract. This is determined by the length of the rest at the beginning of the melody. That is, if the leading rest is more than half of one measure, the first measure is divided as the first phrase as an afteract melody (E9, E10).

【0032】E3で楽節の長さカウンタall−len
を“0”に初期化し、ループE4〜E8のエントリE4
で音符長を読み、E5でそれをall−lenに足し込
む。音符が最初の音符でなければ(E6)、E7でal
l−lenが4小節を超えたかどうかを判定する。4小
節を超えていれば、E21で、p−len=4により、
楽節の長さとして4小節を設定する。E8ではケーデン
スノートかどうかを判定する。音符の長さ(ここでは、
音符から次の音符までの長さである。したがって音符の
次に休符がくる場合には休符の長さも加えたものにな
る。)が1小節の3/4以上であれば、ケーデンスノー
トと判定する。ケーデンスノートの検出に続く、E10
〜E13では、分割点を求めている。即ち、ケーデンス
ノートが終了する位置last−lenが小節内の半分
以上なら、その小節の終りをメロディの分割点として楽
節長p−lenを決め(E10、E13)、小節内の半
分以下で終っていればその小節より1つ前の小節の終り
をメロディ分割点として楽節長p−lenを定める(E
10)。
At E3, the phrase length counter all-len
Is initialized to “0”, and entries E4 of loops E4 to E8 are initialized.
The note length is read with, and it is added to all-len at E5. If the note is not the first note (E6), at E7 al
It is determined whether l-len has exceeded four measures. If it exceeds 4 measures, at E21, p-len = 4,
Set 4 bars as the length of the passage. In E8, it is determined whether or not it is a cadence note. Note length (here,
The length from one note to the next. Therefore, when a rest comes after a note, the rest length is also added. ) Is 3/4 or more of one measure, it is determined to be a cadence note. E10 following cadence note detection
In E13, a dividing point is obtained. That is, if the position last-len at which the cadence note ends is more than half of the measure, the end of the measure is determined as a melody dividing point to determine the passage length p-len (E10, E13), and ends at less than half of the measure. If this is the case, the end of the bar one bar before that bar is used as the melody division point to determine the passage length p-len (E
10).

【0033】E14では、p−lenで示されるメロデ
イ部分内にフィルインがあるかどうかチェックする。フ
ィルインがあれば、フィルインフラグの位置に応じてメ
ロデイ分割点を決める。即ち、フィルインフラグが小節
の3/4以前に立っておれば、その小節より1つ前の小
節の小節の終りをメロデイの分割点として楽節長p−l
enを定め、小節の3/4以降に立っておれば、その小
節の終りをメロデイの分割点として楽節長p−lenを
定める。以上、フィルイン、ケーデンスノート、アウフ
タクト、または4小節の経過の検出に応じてメロデイ分
割点が決められる。そこで、E16ではメロデイ分割点
に相当する量子化メロデイメモリ92の位置に楽節終了
フラグを書込むことにより、その位置で楽節が終了する
ことを示す。
In E14 , it is checked whether or not there is a fill-in in the melody part indicated by p-len. If there is a fill-in, a melody division point is determined according to the position of the fill-in flag. In other words, if the fill-in flag stands before 以前 of the measure, the end of the measure one measure before the measure is set as the melody dividing point, and the section length p−1
If "en" is determined and the bar is standing after 3/4 of the measure, the end of the measure is defined as a melody division point, and the phrase length p-len is determined. As described above, the melody division point is determined in accordance with the detection of the fill-in, cadence note, outhact, or progress of four measures. Therefore, at E16, a phrase end flag is written at the position of the quantization melody memory 92 corresponding to the melody division point, thereby indicating that the phrase ends at that position.

【0034】E17とE18は楽節の調性判定処理であ
る。E16までで現楽節が決まったので、E17では、
前楽節(ただし、現楽節が最初の楽節のときはメロディ
全体)の調性判定結果を参照して、現楽節の調がそれと
同一になるかどうかを調べる。これは、現楽節のピッチ
内容が前楽節(またはメロディ全体)の主音から始まる
ダイアトニックスケールのPCSに含まれるかどうかを
みることで行う。含まれていれば、現楽節に対するキー
エントリ(第1、第2……の主音候補のテーブル)を前
楽節(またはメロディ全体)のものと同一にする。含ま
れていなければ、E18で現楽節に対して調性判定を行
う。これは、メロディ全体について述べた調性判定処理
(図6〜図8)と同じ処理を現楽節に対して行うことに
より達せられる。E20でメロディが終ったかどうかを
調べ、終ってなければ、E2に戻って、次の楽節の決
定、及び調性分析を繰り返す。以上の処理により、メロ
ディは、複数の楽節に分割され、量子化メロディメモリ
92(図5)において各楽節の終了位置には楽節終了フ
ラグが立てられる。また、キーエントリテーブル94に
は各楽節の主音候補がエントリされる。
Steps E17 and E18 are processing for determining the tonality of a passage. The current passage was decided by E16.
By referring to the tonality determination result of the previous phrase (however, when the current phrase is the first phrase, the entire melody), it is checked whether the key of the current phrase is the same as that. This is done by checking whether the pitch content of the current phrase is included in the PCS of the diatonic scale starting from the main tone of the previous phrase (or the entire melody). If it is included, the key entry (table of the first, second,..., Principal tone candidates) for the current phrase is made the same as that of the previous phrase (or the entire melody). If not included, the tonality determination is performed on the current passage at E18. This can be achieved by performing the same processing as the tonality determination processing (FIGS. 6 to 8) described for the entire melody on the current passage. At E20, it is checked whether the melody is over. If it is not over, the process returns to E2 to repeat the determination of the next phrase and the tonality analysis. By the above processing, the melody is divided into a plurality of passages, and a passage end flag is set at the end position of each passage in the quantization melody memory 92 (FIG. 5). In the key entry table 94, main tone candidates of each passage are entered.

【0035】次にアレンジ処理は和音付(Melody Harm
onization)処理に進む。図12に和音付処理の概略フ
ローを示す。この処理の目的は各楽節に所望のコード進
行を割り当てることである。まず、初期化1(M1)で
量子化メロディ(既に楽節に分割されている)の最初の
楽節をロケートする。初期化2(M2)でCPDB82
の最初のコード進行をロケートし、キーエントリテーブ
ル94から最初の楽節の第1の主音(キー)候補を読み
込む。属性テストM3ではCPDB82から検索したコ
ード進行の属性(リズムスタイルと長さ)を検査する。
不合格(NG)ならCPDB82の次のコード進行(C
P)をロケートして(M8)、属性テストM3に戻る。
合格(OK)なら、モーション、音種分類M4に進む。
Next, the arrangement processing is performed with a chord (Melody Harm
onization) processing. FIG. 12 shows a schematic flow of the chord adding process. The purpose of this process is to assign the desired chord progression to each passage. First, in the initialization 1 (M1), the first phrase of the quantization melody (already divided into phrases) is located. CPDB 82 in initialization 2 (M2)
Of the first chord of the first phrase is read from the key entry table 94. In the attribute test M3, the attributes (rhythm style and length) of the chord progress retrieved from the CPDB 82 are inspected.
If unsuccessful (NG), the next chord progression of CPDB 82 (C
P) is located (M8), and the process returns to the attribute test M3.
If it passes (OK), the process proceeds to motion and sound type classification M4.

【0036】モーション、音種分類M4では現楽節の各
音符のモーションと音種を現主音候補と検索したコード
進行とに基づいて分類し、分類データ95を作成する。
マッチングM5では分類データ95をMPRB84に記
憶されるメロディパターンのルールによって検査し、メ
ロディパターンに適合する楽節の音符にパターン適合の
ラベルを付ける。判定M6では楽節の音符のなかでパタ
ーン適合のラベルが付いた音符の割合をCP適合度とし
て評価し、比較的高い適合度を与えたコード進行を楽節
のコード進行候補としてCPエントリテーブル97にス
トアする。
In the motion and tone type classification M4, the motion and tone type of each note in the current passage are classified based on the current principal note candidate and the searched chord progression, and classification data 95 is created.
In the matching M5, the classification data 95 is inspected according to the rules of the melody pattern stored in the MPRB 84, and a musical note of a phrase that matches the melody pattern is labeled with a pattern. In the judgment M6, the ratio of notes with a pattern match label in the notes of the passage is evaluated as the CP match, and the chord progression given a relatively high match is stored in the CP entry table 97 as a chord progress candidate of the passage. I do.

【0037】M7でCPDB82の終りでなければ、C
PDB中の次のコード進行をロケートし(M8)、M3
に戻る。ループM3〜M8は、キーエントリテーブル9
4内の主音候補を主音としたときの楽節について、CP
DB82の全てのコード進行を検査するまで繰り返され
る。次にM9でキーエントリテーブル94に現楽節の主
音候補が残っているかどうかを調べ、残っていれば、テ
ーブル94から次の主音候補を選び(M10)、再びC
PDB82の先頭をロケートし、ループ処理M3〜M8
に戻る。このようにして、現楽節のすべての主音候補に
ついて、CPDB82のすべてのコード進行を検査す
る。
If M7 is not the end of CPDB 82, C
Locate next chord progression in PDB (M8), M3
Return to The loops M3 to M8 correspond to the key entry table 9
Regarding the passage when the tonic candidate in No. 4 is the tonic, CP
This is repeated until all the chord progressions in the DB 82 are checked. Next, at M9, it is checked whether or not the main note candidate of the current passage remains in the key entry table 94, and if so, the next main note candidate is selected from the table 94 (M10), and C
Locate the beginning of PDB 82 and loop processing M3 to M8
Return to In this way, all chord progressions in the CPDB 82 are checked for all tonic candidates of the current passage.

【0038】M11で現楽節のコード進行を決定する。
これは、例えば、CPエントリテーブル97にエントリ
した現楽節のコード進行候補のなかで最も高いCP適合
度をもつコード進行を選択することで行える。なお、コ
ード進行の決定ないし選択は、後述するようにアレンジ
の演奏要求の都度、行うようにしてもよい。M12でコ
ード進行を割り当てるべき楽節が残っているかどうか調
べ、残っていれば、次楽節をロケートし(M13)、初
期化2(M2)に戻って処理を続ける。このようにして
和音付処理ルーチンは、量子化メロディメモリ92にあ
るすべての楽節に対して所望のコード進行を割り当て
る。
At M11, the chord progression of the current passage is determined.
This can be performed, for example, by selecting the chord progression having the highest CP suitability among the chord progression candidates of the current passage entered in the CP entry table 97. The determination or selection of the chord progression may be performed every time an arrangement performance request is made as described later. At M12, it is checked whether or not a phrase to which a chord progression is to be allocated remains. If there is, a next phrase is located (M13), and the process returns to initialization 2 (M2) to continue. In this way, the chord-added processing routine assigns a desired chord progression to all passages in the quantization melody memory 92.

【0039】図13にコード進行データベース(CPD
B)82のフォーマットを示す。CPDB82におい
て、各コード進行のレコードは、属性としてのリズム属
性とコード進行の長さ、本体としてのコードデータの
列、及び終了マークから成る。各コードデータは、ルー
ト、タイプ及び長さの情報をもっている。図14にメロ
ディパターンルールベース(MPRB)84のフォーマ
ットを示す。MDRB84において各メロディパターン
のコードは、リズム属性、メロディパターンデータの
列、及び終了マークから成る。メロディパターンデータ
は音符の機能を表わしたものであり、音種とモーション
タイプから成る。
FIG. 13 shows a chord progress database (CPD).
B) shows the format of 82. In the CPDB 82, each chord progression record includes a rhythm attribute as an attribute and a chord progression length, a sequence of chord data as a main body, and an end mark. Each code data has route, type and length information. FIG. 14 shows the format of the melody pattern rule base (MPRB) 84. In the MDRB 84, the code of each melody pattern includes a rhythm attribute, a sequence of melody pattern data, and an end mark. The melody pattern data represents the function of a note, and includes a sound type and a motion type.

【0040】図15に属性テストM3(図12)のフロ
ーを示す。F1で指定リズムスタイルを読む。ここに指
定リズムスタイルとは実時間メロディの記録(図3)に
おいて鍵盤60でのメロディ演奏を助けるために自動演
奏されたリズムのスタイルである。F2でCPDB82
からコード進行(CP)を読み、F3でコード進行のリ
ズム属性を指定リズムと比較する。一致すれば、F4で
楽節の長さを読み、F5で楽節の長さをコード進行の長
さと比較する、一致すれば、属性テストルーチンM3は
OKを返す。そうでなければ属性テストルーチンM3に
NGを返す。このようにして属性テストルーチンM3
は、CPDB82から楽節の長さと指定リズムのスタイ
ルに合うコード進行を検索する。
FIG. 15 shows a flow of the attribute test M3 (FIG. 12). Read the specified rhythm style in F1. Here, the designated rhythm style is a rhythm style that is automatically played to assist the melody playing on the keyboard 60 in recording a real-time melody (FIG. 3). CPDB82 in F2
, The rhythm attribute of the chord progression is compared with the designated rhythm at F3. If they match, the length of the passage is read at F4, and the length of the passage is compared with the length of the chord progression at F5. If they match, the attribute test routine M3 returns OK. Otherwise, NG is returned to the attribute test routine M3. Thus, the attribute test routine M3
Searches the CPDB 82 for chord progressions that match the length of the passage and the style of the specified rhythm.

【0041】モーション、音種分類ルーチンM4(図
4)のフローを図16と図17に示す。このルーチンの
目的は楽節の各音符の音種とモーションを分類すること
である。分類結果は、分類データメモリ95にストアさ
れる。分類データメモリ95において各音符のレコード
は、音種バイト、モーションタイプバイト、及びパター
ンマッチング用のフラグバイトの計3バイトで構成され
る。このうち、フラグバイトへのフラグ書込は後のマッ
チングルーチンM5で実行される。音種は背景である調
とコードとによって意味づけられる音符の種類を表わ
し、コードトーン、スケールノート、テンションノー
ト、アヴェイラブルノート、アボイドノートのなかから
選択される。モーションタイプは次音符への音高の変化
の仕方によって分類され、終了モーション、同音進行、
上行跳躍進行、下行跳躍進行、上行順次進行、下行順次
進行のなかから選択される。
FIGS. 16 and 17 show the flow of the motion and sound type classification routine M4 (FIG. 4). The purpose of this routine is to classify the note type and motion for each note in the passage. The classification result is stored in the classification data memory 95. The record of each note in the classification data memory 95 is composed of a total of 3 bytes of a tone type byte, a motion type byte, and a flag byte for pattern matching. Of these, the writing of the flag to the flag byte is executed in a later matching routine M5. The tone type represents the type of note that is defined by the key and chord as the background, and is selected from among chord tones, scale notes, tension notes, available notes, and void notes. Motion types are categorized according to how the pitch changes to the next note.
It is selected from among ascending leap progress, descending leap progress, ascending sequential progress, and descending sequential progress.

【0042】詳細に述べると、まず、初期化G1で分類
データメモリ95のクリア、先頭のロケート、検索した
コード進行の先頭ロケート、量子化メロディメモリ92
における現楽節の最初の音符のロケート、コードとメロ
ディの長さアキュームレータのクリアを行う。G2でコ
ード進行から次コードを読み出すべきかどうかをチェッ
クする。これは、分類対象の現音符と時間的に対応する
コード進行内のコードを決めるためのチェックであり、
具体的にはコード進行の先頭からの長さのアキュームレ
ータ(コード長)と楽節の先頭からの長さのアキューム
レータ(メロディ長)とを比較することで行われる。コ
ード長>メロディ長でなくなったらG6に進む前に、コ
ード進行から次のコードを読み、そのコードを用いて、
標準PCSメモリ83から、コードトーンPCSとテン
ションノートPCSを読み、そのコードの長さをコード
長のアキュームレータに加える(G3〜G5)。
More specifically, first, in the initialization G 1, the classification data memory 95 is cleared, the leading locate, the leading locate of the searched chord progression, and the quantization melody memory 92 are performed.
Locate the first note of the current passage in, and clear the accumulator for the length of the chord and melody. In G2, it is checked whether the next code should be read from the code progress. This is a check to determine the chord in the chord progression that temporally corresponds to the current note to be classified,
Specifically, it is performed by comparing an accumulator (chord length) having a length from the beginning of the chord progression with an accumulator (melody length) having a length from the beginning of the passage. If the code length is no longer longer than the melody length, before proceeding to G6, read the next code from the chord progression and use that code to
The code tone PCS and the tension note PCS are read from the standard PCS memory 83, and the length of the code is added to the accumulator of the code length (G3 to G5).

【0043】次にG6で現音符のピッチクラスPCを読
み、G7で現音符の長さを読み、G8でその長さをメロ
ディ長のアキュームレータに加える。次にPCが休符か
どうかを調べる(G9)。休符に対しては、分類処理は
行わないので、G35、G36を介して次音符をロケー
トし、G2に戻る。休符でなければ(音符なら)、現音
符のピッチクラスPC、現コードのルートROOT、現
主音候補KEYを用いて、 DROOT=(PC+24−KEY−ROOT)mod
12 DKEY=(PC+12−KEY)mod12 を求める(G10、G11)。
Next, the pitch class PC of the current note is read at G6, the length of the current note is read at G7, and the length is added to the melody length accumulator at G8. Next, it is checked whether or not the PC is a rest (G9). Since the classification process is not performed on the rest, the next note is located via G35 and G36, and the process returns to G2. If it is not a rest (if it is a note), using the pitch class PC of the current note, the root ROOT of the current chord, and the current key candidate KEY, DROOT = (PC + 24−KEY−ROOT) mod
12 DKEY = (PC + 12−KEY) mod12 is obtained (G10, G11).

【0044】DROOTがコードトーンPCSの要素で
あれば現音符の音種(ノートタイプ)をコードトーンと
決定する(G12、G13)。DKEYがスケールノー
トPCS(主音Cのダイアトニックスケール)の要素で
あり(G14)、かつDROOTがテンションノートP
CSの要素であれば(G15)、音種をアヴェイラブル
ノートを決定する(G17)。DKEYがスケールノー
トPCSの要素であるがDROOTがテンションノート
PCSの要素でないなら、音種をスケールノートと決定
する(G19)。DKEYがスケールノートPCSには
含まれないがDROOTがテンションノートPCSの要
素であるなら(G16)、音種をテンションノートと決
定する(G18)。DKEYがスケールノートPCSの
要素でなく、またDROOTがテンションノートPCS
の要素でもないときは音種をアヴォイドノートと決定す
る(G20)。このようにして決定した音種を、分類デ
ータメモリ95の現音符レコードの音種バイトに書き込
む(G21)。
If the DROOT is an element of the chord tone PCS, the tone type (note type) of the current note is determined to be a chord tone (G12, G13). DKEY is an element of the scale note PCS (diatonic scale of the main tone C) (G14), and DROOT is the tension note P
If it is a CS element (G15), an available note is determined for the sound type (G17). If DKEY is an element of the scale note PCS but DROOT is not an element of the tension note PCS, the tone type is determined to be a scale note (G19). If DKEY is not included in the scale note PCS but DROOT is an element of the tension note PCS (G16), the tone type is determined as a tension note (G18). DKEY is not an element of Scale Note PCS, and DROOT is Tension Note PCS
If it is not an element, the tone type is determined to be an avoid note (G20). The tone type determined in this way is written to the tone type byte of the current note record in the classification data memory 95 (G21).

【0045】以上で現音符の音種分類処理が終了する。
次に現音符のモーションを分類する。即ち、現音符が楽
節の最終音符ならモーションタイプを終了モーションと
決定する(G22、G23)。最終音符でないなら、次
音符の音高NPと現音符の音高PPを読み現音符から次
音符への音高の変化幅(音程)NP−PPを算出する
(G24〜G26)。音程が“0”(同じ高さ)なら現
音符のモーションタイプを同音進行と決定する(G2
7)。音程が“1”か“2”(半音または全音の音高の
上昇)なら、モーションタイプを上行順次進行と決定す
る(G26、G28、G30)。音程が“2”より大き
いならモーションタイプを上行跳躍進行と決定する(G
26、G28、G29)。音程が“−1”か“−2”
(半音または全音の音高の下降)なら、モーションタイ
プを下行順次進行と決定する(G26、G31、G3
2)。音程が“−2”より小さい場合にはモーションタ
イプを下行跳躍進行と決定する(G26、G31、G3
3)。
Thus, the note type classification processing of the current note is completed.
Next, the motion of the current note is classified. That is, if the current note is the last note of the passage, the motion type is determined to be the end motion (G22, G23). If it is not the last note, the pitch NP of the next note and the pitch PP of the current note are read, and a pitch change range (pitch) NP-PP from the current note to the next note is calculated (G24 to G26). If the pitch is "0" (same pitch), the motion type of the current note is determined to be the same-tone progression (G2
7). If the pitch is "1" or "2" (semitone or whole tone pitch rise), the motion type is determined to be ascending sequentially (G26, G28, G30). If the pitch is greater than "2", the motion type is determined to be ascending leap (G
26, G28, G29). The pitch is "-1" or "-2"
If (the pitch of a semitone or a whole tone falls), the motion type is determined to be descending sequential (G26, G31, G3)
2). If the pitch is smaller than “−2”, the motion type is determined to be a downward jump (G26, G31, G3).
3).

【0046】このようにして決定したモーションタイプ
を、分類データメモリ95の現音符のモーションバイト
に書き込む(G34)。そして、G35で楽節の終りに
達したかどうかをチェックし、達してなければ、次音符
をロケートし(G36)、G2に戻って分類処理を続け
る。このようにして、分類データメモリ95には、楽節
のすべての音符について、音種とモーションの分類結果
が記録されることになる。図18と図19にマッチング
処理ルーチンM5のフローを示す。このルーチンでは、
分類データメモリ95に書き込まれた楽節の音符分類デ
ータがMPRB84にあるメロディパターンに合うかど
うかを調べ、メロディパターンに一致した音符のフラグ
バイトにパターン適合フラグを立てる。
The motion type determined in this way is written to the motion byte of the current note in the classification data memory 95 (G34). Then, it is checked at G35 whether the end of the phrase has been reached. If not, the next note is located (G36), and the process returns to G2 to continue the classification process. In this way, the classification data memory 95 records the classification result of the sound type and the motion for all the notes of the passage. FIGS. 18 and 19 show the flow of the matching processing routine M5. In this routine,
It is checked whether or not the note classification data of the passage written in the classification data memory 95 matches the melody pattern in the MPRB 84, and a pattern matching flag is set in the flag byte of the note that matches the melody pattern.

【0047】初期化B1で分類データメモリ95の最初
の音符レコードをロケートする(ロケーション=LOC
1)。B2でMPRB84から指定リズムスタイルに属
する最初のメロディパターンをロケートする。B3でL
OC1が指す音符レコードの分類データを読む。楽節の
終り(B3で読んだデータ=終了マーク)でなく(B
4)、MPRB84の終りに達していなければ(B
5)、B6でLOC2にLOC1をセットする。これ
は、LOC1が指す分類データメモリ95上の音符をマ
ッチングのための先頭音符にすることを意味する。即
ち、以下ではこの先頭音符から始まる分類音符のパター
ンとMPRB84の各メロディパターンとの間で比較を
行う。即ち、B7でMPデータ(メロディパターンの音
符の音種とモーションタイプ)を読み、B8で分類デー
タ(分類音符の音種とモーションタイプ)を読む。音種
とモーションタイプの両方とも一致するなら(B9、B
11)、LOC2をインクリメントして次の分類音符を
ロケートし、検査しているメロディパターンの次の要素
をロケートし(B12)、B7に戻って両者の比較を続
ける。メロディパターンとの比較の途中で、音種、モー
ションタイプのどちらかでも不一致が検出されると、そ
のパターンは不適合とみて、MPRB84から指定リズ
ムに合う次のメロディパターンを検索し(B13)、B
5に戻る。
In the initialization B1, the first note record in the classification data memory 95 is located (location = LOC).
1). In B2, the first melody pattern belonging to the designated rhythm style is located from the MPRB 84. L at B3
The classification data of the note record indicated by OC1 is read. Not at the end of the passage (data read at B3 = end mark)
4) If the end of MPRB 84 has not been reached (B
5) Set LOC1 to LOC2 in B6. This means that the note on the classification data memory 95 indicated by LOC1 is used as the first note for matching. That is, hereinafter, a comparison is made between the pattern of the classified note starting from the first note and each melody pattern of the MPRB 84. That is, MP data (note type and motion type of note of melody pattern) is read at B7, and classification data (note type and motion type of classified note) is read at B8. If both the sound type and the motion type match (B9, B
11), LOC2 is incremented to locate the next classified note, the next element of the melody pattern being inspected is located (B12), and the process returns to B7 to continue the comparison between the two. If a mismatch is detected in either the sound type or the motion type during the comparison with the melody pattern, the pattern is regarded as incompatible, and the MPRB 84 searches for the next melody pattern that matches the specified rhythm (B13).
Return to 5.

【0048】分類音符のパターンが検査したメロディパ
ターンに一致するときはB10でメロディパターンから
終了モーションが検出される。この場合、B14〜B1
6でLOC1〜LOC2までの分類音符のフラグバイト
にパターン適合フラグを立て、マッチングのための先頭
音符を次に進めて(B17)、B2に戻る。分類音符の
パターンがMPRB84のどのパターンとも一致しない
ときはB5でMPRBの終りが検出される。そこで、マ
ッチングのための先頭音符を次に進めて(B17)、B
2に戻る。このようにして、楽節のすべての音符をそれ
ぞれ先頭音符とみてMPRB84の各メロディパターン
とマッチングを行い、一致した音符群はパターン適合フ
ラグでラベル付けする。
If the pattern of the classified note matches the melody pattern that has been inspected, an end motion is detected from the melody pattern in B10. In this case, B14 to B1
In step 6, a pattern matching flag is set in the flag bytes of the classified notes from LOC1 to LOC2, the first note for matching is advanced to the next (B17), and the process returns to B2. If the pattern of the classified note does not match any pattern of the MPRB 84, the end of the MPRB is detected at B5. Therefore, the first note for matching is advanced to the next (B17), and B
Return to 2. In this way, all the notes of the passage are regarded as the first notes and are matched with the respective melody patterns of the MPRB 84, and the matched note groups are labeled with the pattern matching flag.

【0049】判定ルーチンM8のフローを図20と図2
1に示す。このルーチンはマッチング処理ルーチンによ
りパターン適合のラベルが付いた音符の割合を求めて楽
節に対するコード進行の適合度を評価する。そして、比
較的高い適合度を示したコード進行をCPエントリテー
ブル97に楽節のコード進行候補として記録する。J1
で初期化(量子化メロディメモリ92の現楽節の先頭ロ
ケート、分類データメモリ95の先頭ロケート、CP適
合度J−POINTのクリア)を行い、J2で休符のた
めのJ−FLAGを立てる。J3で音符のピッチクラス
PCを読み、J4で音符の長さLENを読む。休符(P
C=“休符”)でなければ、即ち音符なら、その音符の
パターン適合フラグを分類データメモリ95から読み込
む(J5、J6)。そして、パターン適合フラグが立っ
ていれば(J7)、CP評価値J−POINTに音長L
ENを加え(J8)、J−FLAGを立てる(J9)。
パターン適合フラグが立ってなければJ−FLAGを下
げる(J10)。このJ−FLAGの立て、下げは、パ
ターン適合ラベルが付いた音符の次に休符がくる場合に
は、その休符を適合とみなし、パターン不適合のラベル
が付いた音符の次にくる休符は不適合とみなすためであ
る。即ち、休符を検出したときは(J5)、J−FLA
Gが立っている場合に限り、その休符の長さLENをC
P適合度J−POINTに加える(J11、J12)。
FIGS. 20 and 2 show the flow of the judgment routine M8.
It is shown in FIG. This routine evaluates the degree of conformity of the chord progression to the passage by calculating the ratio of notes labeled with pattern matching by the matching processing routine. Then, the chord progression indicating a relatively high degree of conformity is recorded in the CP entry table 97 as a chord progression candidate of a passage. J1
To initialize (locate the head of the current passage in the quantization melody memory 92, locate the head of the classification data memory 95, and clear the CP conformity J-POINT), and set J-FLAG for rest in J2. The pitch class PC of the note is read at J3, and the length LEN of the note is read at J4. Rest (P
If C = “rest”, that is, if it is a note, the pattern matching flag of the note is read from the classification data memory 95 (J5, J6). If the pattern matching flag is set (J7), the CP evaluation value J-POINT contains the note length L.
EN is added (J8), and J-FLAG is set up (J9).
If the pattern matching flag is not set, J-FLAG is lowered (J10). When the J-FLAG is raised or lowered, if a rest comes after a note with a pattern conforming label, the rest is regarded as conforming, and a rest following a note with a pattern non-conforming label. Is to be regarded as non-conforming. That is, when a rest is detected (J5), J-FLA
Only when G is standing, the rest length LEN is C
It is added to the P conformity J-POINT (J11, J12).

【0050】楽節の最後の音符に達してなければ(J1
3)、量子化メロディメモリ92にある楽節の次の音符
をロケートして(J14)、J3に戻る。楽節の最後の
音符にパターン適合フラグが付いていないときは(J1
3、J15)、その長さLENをCP適合度J−POI
NTから引く(J16)。これは、最後の音符が調性・
和音上、重要な音符であることを考慮したものである。
このようにして、CPDB82から検索したコード進行
のCP適合度が評価される。続いて、図21のフローに
従い、検査したコード進行を楽節のコード進行候補とし
てエントリするかどうかを決める。ここにCPエントリ
テーブル97は楽節別に用意される。図13では各楽節
のCPエントリ数を4としている(J17)。各エント
リのデータレコードはCP適合度ENTRY[i]、コ
ード進行のポインタCP[i]、及び主音KEY[i]
の3項目から成る。J18〜J23のループで現楽節の
CPエントリテーブルの要素を、検査したコード進行の
CP適合度が何番目になるかに従って、並びかえてい
る。J18においてJ−POINT>ENTRY[i]
が成立するときの(i+1)番目が、コード進行のCP
適合度の順位である。
If the last note of the passage has not been reached (J1
3), locate the next note of the phrase in the quantization melody memory 92 (J14), and return to J3. If the last note of the passage does not have a pattern matching flag (J1
3, J15), and the length LEN is determined by the CP conformity J-POI.
Subtract from NT (J16). This is because the last note
This is because it is an important note in the chord.
In this way, the CP suitability of the chord progression retrieved from the CPDB 82 is evaluated. Subsequently, according to the flow of FIG. 21, it is determined whether or not the checked chord progression is to be entered as a chord progression candidate of a passage. Here, the CP entry table 97 is prepared for each passage. In FIG. 13, the number of CP entries in each passage is four (J17). The data record of each entry is a CP conformity ENTRY [i], a chord progression pointer CP [i], and a key tone KEY [i].
It consists of three items. In the loop from J18 to J23, the elements of the CP entry table of the current passage are rearranged in accordance with the order of the CP conformity of the checked chord progression. In J18, J-POINT> ENTRY [i]
Is the (i + 1) -th chord progression CP when
This is the rank of the degree of conformity.

【0051】そこで、J24〜J27において、その順
位のCPエントリレコードに、今回のコード進行のCP
適合度J−POINT、CPDB82における今回のコ
ード進行のロケーション、現在の主音候補を記録してい
る。和音付処理(図12)の完了によりアレンジキー7
6に対するメロディアレンジ処理が終了する。その後、
プレイキー77が押されると、音楽装置(図2)はアレ
ンジの内容を自動演奏する。即ち、量子化メロディメモ
リ92にあるメロディデータの再生によるメロディ演
奏、決定したコード進行と指定スタイルの伴奏パターン
データとに基づく伴奏パートの作成と演奏、及び指定ス
タイルのリズム演奏を行う。
Therefore, in J24 to J27, the CP entry record of that order contains the CP of the current chord progression.
The fitness J-POINT, the location of the current chord progression in the CPDB 82, and the current principal note candidate are recorded. Arrange key 7 upon completion of chorded processing (FIG. 12)
The melody range processing for No. 6 is completed. afterwards,
When the play key 77 is pressed, the music device (FIG. 2) automatically plays the contents of the arrangement. That is, a melody performance by playing the melody data in the quantization melody memory 92, creation and performance of an accompaniment part based on the determined chord progression and accompaniment pattern data of the specified style, and rhythm performance of the specified style are performed.

【0052】プレイキー77によるアレンジ演奏の都
度、和音付(メロディに対するコード進行)に変化を付
けるようにすれば、聞き手であるユーザーは種々のアレ
ンジ演奏を楽しむことができ、望ましい。これは、例え
ば、プレイキー77の操作に応答して、CPエントリテ
ーブル97から各楽節のコード進行を乱数で、あるい
は、エントリ順に選ぶことで実現できる(この場合、図
12のM11は省略される)。別の例を図22にフロー
で示す。この例では、各楽節について、前回の伴奏に使
用したコード進行のCP適合度が100%(J−POI
NT/楽節長=1)なら、CPエントリテーブル97か
ら次のCPエントリを選択し、それを今回の伴奏で使用
し、前回選択したコード進行のCP適合度が100%に
満たないときは順位1位のCPエントリを選択する。な
お、最初のアレンジ演奏のときは各楽節とも順位1位の
CPエントリを用いる。
It is desirable that the arrangement of the chords (chord progression for the melody) be changed each time the arrangement is performed by the play key 77, so that the user as the listener can enjoy various arrangements. This can be realized, for example, by selecting the chord progression of each passage from the CP entry table 97 by random numbers or in the order of entry in response to the operation of the play key 77 (in this case, M11 in FIG. 12 is omitted). ). Another example is shown by a flow in FIG. In this example, for each passage, the CP conformity of the chord progression used for the previous accompaniment is 100% (J-POI
If NT / section length = 1), the next CP entry is selected from the CP entry table 97 and used for the current accompaniment. If the CP suitability of the previously selected chord progression is less than 100%, the first rank is selected. Select the next CP entry. At the time of the first arrangement performance, the first CP entry is used for each passage.

【0053】詳細に述べると、C1で演奏回数Mをイン
クリメントし、C2で最初の楽節をロケートする。C3
で現楽節のCPエントリテーブルから、適合度100%
のコード進行の候補数Aをカウントする。Aがエントリ
数(図21では4つ)ならそのまま、エントリ数より少
なければ、Aをプラス1する(C4、C5)。そして、
C6で、現楽節のCPエントリテーブルのMmodA番
目のCPエントリを選択し、そのコード進行と主音を演
奏用バッファ(図示せず)に書き込む。次に、次楽節を
ロケートし(CS)、以上のコード進行選択処理を、メ
ロディの全ての楽節について実行する(C7)。その
後、演奏用バッファに書かれた、各楽節のコード進行と
主音を用いて伴奏が行われる(図示せず)。常に満足の
いくアレンジ演奏を保証するために、CP適合度が10
0%に満たないコード進行をより高い適合度をもつよう
に修正する機能があると望ましい。
More specifically, the number of performances M is incremented at C1, and the first passage is located at C2. C3
From the CP entry table of the current passage, 100% fitness
Is counted. If A is the number of entries (four in FIG. 21), A is incremented by one if it is less than the number of entries (C4, C5). And
At C6, the MmodA-th CP entry in the CP entry table of the current passage is selected, and its chord progression and principal note are written to a performance buffer (not shown). Next, the next passage is located (CS), and the above-mentioned chord progression selection processing is executed for all the passages of the melody (C7). Thereafter, accompaniment is performed using the chord progression and tonality of each passage written in the performance buffer (not shown). In order to guarantee always satisfactory arrangement performance, CP conformity should be 10
It is desirable to have a function that corrects a chord progression of less than 0% so as to have higher fitness.

【0054】これは、例えば、図23に示すようなCP
合成ルーチンを設けることで実現できる。CP合成ルー
チンはS1でメロディの最初の楽節を現楽節としてロケ
ートする。S2で現楽節のCPエントリテーブルから適
当な方法(例えば、乱数、あるいは図21で述べた方
法)で1つのCPエントリを選ぶ。そのエントリのCP
適合度が100%なら(S3)、コード進行の修正なし
に処理を次楽節に進める(S16)。選んだCPエント
リの適合度が100%に満たなければ(S3)、S4に
進み、エントリのコード進行CP(i)の最初の小節を
K小節としてロケートする。S5でコード進行CP
(i)のK小節の適合度を評価し、100%なら(S
6)K小節を次小節に進める(S14)。
This corresponds to, for example, the CP shown in FIG.
This can be realized by providing a synthesis routine. The CP synthesis routine locates the first phrase of the melody as the current phrase in S1. In S2, one CP entry is selected from the CP entry table of the current passage by an appropriate method (for example, a random number or the method described with reference to FIG. 21). CP of the entry
If the degree of conformity is 100% (S3), the process proceeds to the next passage without correcting the chord progression (S16). If the fitness of the selected CP entry is less than 100% (S3), the process proceeds to S4, and the first measure of the chord progression CP (i) of the entry is located as K measure. Chord progression CP in S5
The fitness of the K measure in (i) is evaluated, and if it is 100%, (S
6) Advance K bar to the next bar (S14).

【0055】コード進行CP(i)のK小節の適合度が
100%に満たないときは、CPDB82にある、現楽
節長の長さで指定スタイルのコード進行DBのなかか
ら、K小節の適合度が100%となるコード進行CPを
捜し出し、そのLPのK小節の内容にコード進行CP
(i)のK小節を書きかえる(S6〜S12)。即ち、
CPDB12から現楽節長と長さが一致し、指定リズム
スタイルの属性のもつ最初のCPをロケート(S7)
し、そのK小節の適合度を評価し(S8)、100%な
らCP(i)のK小節=CPのK小節によりコード進行
CP(i)を修正する(S9、S12)。CPのK小節
の適合度が100%に満たなければ(S9)、CPDB
82から指定スタイル、現楽節の条件を満たす次のCP
をロケートし(S10)、S11を介してS5に戻る。
CPDB中に、K小節の適合度が100%のCPがなけ
れば(S11)、コード進行CP(i)のK小節は変更
せずに、次小節に進む(S14)。
If the fitness of the K measure of the chord progression CP (i) is less than 100%, the fitness of the K measure is selected from the chord progression DB of the designated style having the length of the current passage in the CPDB 82. Is searched for a chord progression CP that is 100%, and the chord progression CP is added to the contents of the K bar of that LP.
The K bar of (i) is rewritten (S6 to S12). That is,
Locates the first CP whose length matches the current passage length from the CPDB 12 and has the attribute of the designated rhythm style (S7)
Then, the fitness of the K measure is evaluated (S8), and if it is 100%, the chord progression CP (i) is corrected by the K measure of CP (i) = K measure of CP (S9, S12). If the fitness of the K measure of the CP is less than 100% (S9), the CPDB
The next CP that satisfies the conditions of the specified style and current passage from 82
Is located (S10), and the process returns to S5 via S11.
If there is no CP in the CPDB with a K bar fitness of 100% (S11), the K bar of the chord progression CP (i) is not changed and the process proceeds to the next bar (S14).

【0056】この代りに、CP(i)のK小節を指定条
件(指定スタイル、楽節長)のCPDBのなかでK小節
の適合度が最も高いCPのK小節に差し替えるようにし
てもよい。以上の処理をコード進行CP(i)のすべて
の小節について行う(S13)。S15ですべての楽節
のコード進行の修正ないし合成処理が完了したかどうか
調べ、終ってなければ、現楽節を次楽節に進めて(S1
6)、処理を繰り返す。このようなCP合成処理は結果
として、CPDB82の仮想空間を拡大するものであ
る。また、従来の再和音付け技術のように、単にコード
を格別の音楽的な根拠なしに代理コードのような別のコ
ードに変更するのではなく、CPDB82に置かれ、ス
タイル属性と長さが同じコード進行同士を、適合度を合
成基準とし、かつ音楽的な時間対応をとって合成してい
る。したがって合成後のコード進行の自然さを保つもの
である。以上で実施例の説明を終えるがこの発明の範囲
内で種々の変更が可能である。
Instead of this, the K measure of CP (i) may be replaced with the K measure of the CP having the highest degree of fitness of the K measure in the CPDB of the designated condition (designated style, section length). The above processing is performed for all measures of the chord progression CP (i) (S13). In S15, it is checked whether or not the correction of the chord progression of all the passages or the synthesizing process is completed. If not, the current passage is advanced to the next passage (S1).
6) Repeat the process. As a result, such a CP synthesis process enlarges the virtual space of the CPDB 82. Also, instead of simply changing a chord to another chord, such as a surrogate chord without special musical grounds, as in the conventional re-chording technique, the chord is placed in the CPDB 82 and has the same style attribute and length. The chord progressions are synthesized using the degree of conformity as a synthesis criterion and with a musical time correspondence. Therefore, the naturalness of chord progression after synthesis is maintained. The description of the embodiment is finished above, but various changes can be made within the scope of the present invention.

【0057】[0057]

【発明の効果】以上、詳細に述べたように、この発明の
和音付装置は、メロディを音楽的な意味単位である楽節
に分割し、分割した各楽節に対し、コード進行(コード
パターン)のデータベースを検索して適合するコード進
行を割り当てる。したがって、従来の和音付装置にみら
れるようなコード決定アルゴリズムに特有のくせがな
く、自然でリアルなコード進行をメロディに付けること
ができる。
As described above in detail, the chord adding device of the present invention divides a melody into musical segments, which are musical meaning units, and assigns a chord progression (chord pattern) to each of the divided musical segments. Search the database and assign a matching chord progression. Therefore, there is no habit peculiar to the chord determination algorithm found in the conventional chording device, and a natural and realistic chord progression can be added to the melody.

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

【図1】この発明に基づく和音付装置の機能ブロック
図。
FIG. 1 is a functional block diagram of a chord adding device based on the present invention.

【図2】実施例の音楽装置のハードウェア構成のブロッ
ク図。
FIG. 2 is a block diagram of a hardware configuration of the music apparatus according to the embodiment.

【図3】実時間入力メロディの記録処理のフローチャー
ト。
FIG. 3 is a flowchart of a real-time input melody recording process.

【図4】入力メロディデータの記録フォーマットを示す
図。
FIG. 4 is a diagram showing a recording format of input melody data.

【図5】量子化メロディデータのデータフォーマットを
示す図。
FIG. 5 is a diagram showing a data format of quantized melody data.

【図6】調性判定処理の一部のフローチャート。FIG. 6 is a flowchart of a part of a tonality determination process.

【図7】調性判定処理の一部のフローチャート。FIG. 7 is a flowchart of a part of a tonality determination process.

【図8】調性判定処理の一部のフローチャート。FIG. 8 is a flowchart of a part of a tonality determination process.

【図9】結合度テーブルのデータを示す図。FIG. 9 is a diagram showing data of a coupling degree table.

【図10】メロディ分割処理のフローチャート。FIG. 10 is a flowchart of a melody division process.

【図11】メロディ分割の譜例を示す図。FIG. 11 is a diagram showing a musical example of melody division.

【図12】和音付処理のフローチャート。FIG. 12 is a flowchart of a chord adding process.

【図13】コード進行データベースのフォーマットを示
す図。
FIG. 13 is a diagram showing a format of a chord progression database.

【図14】メロディパターンルールベースのフォーマッ
トを示す図。
FIG. 14 is a diagram showing a melody pattern rule-based format.

【図15】属性テストのフローチャート。FIG. 15 is a flowchart of an attribute test.

【図16】モーション、音種分類処理の一部を示すフロ
ーチャート。
FIG. 16 is a flowchart showing a part of a motion and sound type classification process.

【図17】モーション、音種分類処理の一部を示すフロ
ーチャート。
FIG. 17 is a flowchart showing a part of a motion and sound type classification process.

【図18】マッチング処理の一部を示すフローチャー
ト。
FIG. 18 is a flowchart showing a part of a matching process.

【図19】マッチング処理の一部を示すフローチャー
ト。
FIG. 19 is a flowchart showing a part of a matching process.

【図20】判定処理の一部を示すフローチャート。FIG. 20 is a flowchart illustrating a part of a determination process.

【図21】判定処理の一部を示すフローチャート。FIG. 21 is a flowchart illustrating a part of a determination process.

【図22】コード進行選択処理のフローチャート。FIG. 22 is a flowchart of a chord progression selection process.

【図23】コード進行合成処理のフローチャート。FIG. 23 is a flowchart of a chord progression synthesis process.

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

2 メロディ 4 メロディ分割 6 楽節 12 コード進行データベース(CPD) 22 メロディパターンルールベース(MPRB) 26 適合度評価 28 決定 30 決定コード進行 2 melody 4 melody division 6 passages 12 chord progress database (CPD) 22 melody pattern rule base (MPRB) 26 fitness evaluation 28 decision 30 decision chord progression

Claims (6)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】(A)一連の音符列からなるメロデイを付
与するメロデイ付与手段と、 (B)前記メロデイを構成する各音符を検査し、特定の
音符が存在するか否かを検出する特定音符検出手段と、 (C)前記特定音符検出手段により検出された特定音符
のメロデイ上の位置に基づいて、前記 メロデイを複数の
楽節に分割するメロデイ分割手段と、(D) コード進行のデータベースを記憶するコード進行
データベースと、(E) 分割された各楽節に対し、前記コード進行データ
ベース手段を検索して適合するコード進行を割り当てる
コード進行割当手段と、 を有することを特徴とする和音付装置。
(A) a melody providing means for providing a melody composed of a series of note strings ; and (B) each note constituting the melody is inspected and specified.
A specific note detecting means for detecting whether or not a note exists; and (C) a specific note detected by the specific note detecting means.
Melody dividing means for dividing the melody into a plurality of passages based on the position on the melody , (D) a chord progression database storing a chord progression database, and (E) each divided passage. A chord progression allocating means for searching the chord progression database means and allocating a suitable chord progression.
【請求項2】請求項1記載の和音付装置において、前記
特定音符検出手段は、特定の音符として、前記メロデイ
を構成する一連の音符列の中から楽節終了音符が存在す
るか否かを検出することを特徴とする和音付装置。
2. The chording device according to claim 1, wherein
The specific note detecting means detects the melody as a specific note.
The end-of-phrase note exists in the sequence of notes
A chord-equipped device characterized by detecting whether or not the chord is present.
【請求項3】請求項1の和音付装置において、前記特定
音符検出手段は、特定の音符として、前記メロデイの先
頭に1小節の半分以上の長さの休符が存在するか否かを
検出することを特徴とする和音付装置。
3. The chording device according to claim 1, wherein
The note detecting means detects a specific note as the end of the melody.
Check if there is a rest longer than half a bar at the beginning
A chording device characterized by detecting .
【請求項4】請求項1記載の和音付装置において、前記
コード進行割当手段は、 (A)メロデイパターンのルールベースを記憶するメロ
デイパターンルールベース記憶手段と、 (B)前記コード進行データベース手段からコード進行
を検索するコード進行検索手段と、 (C)検索したコード進行に基づいて楽節を分析する楽
節分析手段と、 (D)楽節の分析結果を前記メロデイパターンのルール
ベースによって検索して、検索したコード進行の、楽節
に対する適合度を評価する適合度評価手段と、 を有する ことを特徴とする和音付装置。
4. The chording device according to claim 1, wherein
The chord progression allocating means comprises: (A) a melody storing a rule base of the melody pattern;
And Day pattern rule base memory means, chord progression from (B) said chord progression database means
And (C) a music passage analyzing section based on the searched chord progression.
Clause analysis means; and (D) a rule of the melody pattern,
Search by base, search for chord progression, passage
Chord with apparatus characterized by having a fit evaluation means for evaluating the degree of conformity.
【請求項5】請求項1記載の和音付装置において、前記
コード進行割当手段は、各楽節に対し複数のコード進行
の候補を生成する手段を含むことを特徴とする和音付装
置。
5. The chording device according to claim 1, wherein
The chord progression allocating means includes a plurality of chord progressions for each passage.
Characterized in that it includes means for generating a candidate .
【請求項6】請求項1記載の和音付装置において、前記
コード進行割当手段は、前記コード進行データベース手
段に記憶される複数のコード進行を合成して楽節のコー
ド進行を生成する手段を含むことを特徴とする和音付装
置。
6. The chord progression apparatus according to claim 1, wherein said chord progression allocating means comprises a chord progression database.
By combining multiple chord progressions stored in a column,
A chording device, characterized in that it comprises means for generating a chord progression .
JP29926892A 1992-01-12 1992-10-12 Chording device Expired - Fee Related JP3271332B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP29926892A JP3271332B2 (en) 1992-10-12 1992-10-12 Chording device
US08/134,797 US5510572A (en) 1992-01-12 1993-10-08 Apparatus for analyzing and harmonizing melody using results of melody analysis

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP29926892A JP3271332B2 (en) 1992-10-12 1992-10-12 Chording device

Publications (2)

Publication Number Publication Date
JPH06124089A JPH06124089A (en) 1994-05-06
JP3271332B2 true JP3271332B2 (en) 2002-04-02

Family

ID=17870347

Family Applications (1)

Application Number Title Priority Date Filing Date
JP29926892A Expired - Fee Related JP3271332B2 (en) 1992-01-12 1992-10-12 Chording device

Country Status (1)

Country Link
JP (1) JP3271332B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3307156B2 (en) * 1995-04-24 2002-07-24 ヤマハ株式会社 Music information analyzer

Also Published As

Publication number Publication date
JPH06124089A (en) 1994-05-06

Similar Documents

Publication Publication Date Title
US5510572A (en) Apparatus for analyzing and harmonizing melody using results of melody analysis
JP3704980B2 (en) Automatic composer and recording medium
US8097801B2 (en) Systems and methods for composing music
JPH01173099A (en) Automatic accompanying device
JP2000514571A (en) Automatic improvisation system and method
EP0715295A1 (en) Automatic playing apparatus substituting available pattern for absent pattern
JP3698057B2 (en) Automatic arrangement apparatus and method
JP3152123B2 (en) Automatic composer
JP3196604B2 (en) Chord analyzer
JP3271332B2 (en) Chording device
JP3271331B2 (en) Melody analyzer
JP3364941B2 (en) Automatic composer
JP2003186466A (en) Musical score generation processor and program
JP3531507B2 (en) Music generating apparatus and computer-readable recording medium storing music generating program
JP3807333B2 (en) Melody search device and melody search program
JP3216529B2 (en) Performance data analyzer and performance data analysis method
JP3316547B2 (en) Chording device
JPH05346781A (en) Key detecting device and automatic music arranging device
JP3163654B2 (en) Automatic accompaniment device
JP2581370B2 (en) Automatic accompaniment device
JP2623175B2 (en) Automatic performance device
JP2572317B2 (en) Automatic performance device
JP3818298B2 (en) Available note scale determining apparatus and recording medium
JPH02157799A (en) Melody analyzing system
JP2526830B2 (en) Automatic chord adding device

Legal Events

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

Free format text: PAYMENT UNTIL: 20090125

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20090125

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20100125

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110125

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20110125

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20120125

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees