JP2958794B2 - Melody analyzer - Google Patents

Melody analyzer

Info

Publication number
JP2958794B2
JP2958794B2 JP2110425A JP11042590A JP2958794B2 JP 2958794 B2 JP2958794 B2 JP 2958794B2 JP 2110425 A JP2110425 A JP 2110425A JP 11042590 A JP11042590 A JP 11042590A JP 2958794 B2 JP2958794 B2 JP 2958794B2
Authority
JP
Japan
Prior art keywords
melody
note
pitch
sound
pitch class
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
JP2110425A
Other languages
Japanese (ja)
Other versions
JPH049892A (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.)
KASHIO KEISANKI KK
Original Assignee
KASHIO KEISANKI KK
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 KASHIO KEISANKI KK filed Critical KASHIO KEISANKI KK
Priority to JP2110425A priority Critical patent/JP2958794B2/en
Publication of JPH049892A publication Critical patent/JPH049892A/en
Application granted granted Critical
Publication of JP2958794B2 publication Critical patent/JP2958794B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Description

【発明の詳細な説明】 [発明の技術分野] この発明は音楽装置に関し、特に与えられたメロディ
を自動的に分析するメロディ分析機に関する。
Description: TECHNICAL FIELD [0001] The present invention relates to a music apparatus, and more particularly, to a melody analyzer that automatically analyzes a given melody.

[背景] 本件出願人は特願平1−126705号において、メロディ
を自動的に分析するメロディ分析機を提案している。こ
のメロディ分析機はメロディ以外にトーナリティとコー
ド進行を入力情報として受け、装置に組み込まれた音楽
知識に基づいてメロディの個々の音の機能、性格を識別
することができる。
[Background] The present applicant has proposed a melody analyzer that automatically analyzes a melody in Japanese Patent Application No. 1-126705. This melody analyzer receives tonality and chord progression as input information in addition to the melody, and can identify the function and character of each sound of the melody based on the music knowledge incorporated in the device.

残念ながら、この種のメロディ分析機は基本的に「プ
ログラム駆動型」の構成であり、メロディのの各音を分
類するための音楽知識がプログラムの一部として表現さ
れている。このため、音楽知識の表現化(装置化)が容
易でなく、開発に時間とコストを要し、処理も複雑で、
構成が大きくなるという問題があった。
Unfortunately, this type of melody analyzer is basically a "program driven" configuration, in which musical knowledge for classifying each sound of the melody is expressed as part of the program. For this reason, it is not easy to express music knowledge (device), it takes time and cost for development, processing is complicated,
There was a problem that the configuration became large.

[発明の目的] したがって、この発明の目的は上述したようなメロデ
ィ分析機を改良し、より簡単な構成で効率よくメロディ
分析が可能なメロディ分析機を提供することである。
[Object of the Invention] Accordingly, an object of the present invention is to improve the melody analyzer as described above and to provide a melody analyzer capable of efficiently performing a melody analysis with a simpler configuration.

[発明の構成、作用] この発明の1つの側面によれば、メロディを表わすデ
ータを付与するメロディ付与手段と、コードを表わすデ
ータを付与するコード付与手段と、トーナリティを表わ
すデータを付与するトーナリティ付与手段と、上記コー
ドと上記トーナリティとに基づいて、複数の音種の夫々
に関する複数の異なるピッチクラスセットを生成する音
種別ピッチクラスセット生成手段と、上記メロディの各
音のピッチクラスと上記複数の異なるピッチクラスセッ
トの各々との関係を判別することにより、上記メロディ
の各音の音種を識別して音種の並びを形成するメロディ
音分類手段と、上記メロディの隣り合う音の間に形成さ
れる音程を評価して音程の並びを形成する音程評価手段
と、複数の異なるメロディパターンのそれぞれについ
て、各メロディパターンを構成する少なくとも1つの音
の並びの特徴を定義するメロディパターンルールのセッ
トを記憶するメロディパターンルールデータベース手段
と、上記メロディ音分類手段からの上記音種の並びと上
記音程評価手段からの上記音程の並びとに適合するメロ
ディパターンルールを上記メロディパターンルールデー
タベース手段から検索することにより上記メロディを分
析する分析手段とを有することを特徴とするメロディ分
析機が提供される。
According to one aspect of the present invention, a melody providing means for providing data representing a melody, a code providing means for providing data representing a code, and a tonality providing means for providing data representing a tonality Means, a sound type pitch class set generating means for generating a plurality of different pitch class sets for each of a plurality of sound types based on the chord and the tonality, a pitch class of each sound of the melody and the plurality of A melody sound classifying means for identifying a sound type of each sound of the melody to form a sequence of sound types by determining a relationship with each of the different pitch class sets, and a melody sound classifying means formed between adjacent sounds of the melody. Pitch evaluation means for evaluating pitches to be formed to form a sequence of pitches, and for each of a plurality of different melody patterns. A melody pattern rule database means for storing a set of melody pattern rules defining at least one feature of a sequence of sounds constituting each melody pattern; a sequence of the tone types from the melody sound classification means; Analysis means for analyzing the melody by searching the melody pattern rule database means for a melody pattern rule which matches the arrangement of the pitches from the means.

この構成によれば、メロディの分析に必要な音楽知識
がメロディパターンルールデータベース手段により、デ
ータベース化して構築されるので、「データ駆動型」の
メロディ分析機を実現することができ、メロディ分析機
の構成を簡単なものにすることができる。更に、本構成
によれば、メロディを許容されるメロディパターンの組
み合わせとしてみる観点から分析することができる。
According to this configuration, the music knowledge necessary for the analysis of the melody is constructed as a database by the melody pattern rule database means, so that a "data-driven" melody analyzer can be realized. The configuration can be simplified. Further, according to this configuration, it is possible to analyze the melody from the viewpoint of viewing as a combination of allowable melody patterns.

上記音種別ピッチクラスセット生成手段は、例えば、
与えられたコードからコードトーンピッチクラスセット
を生成するコードトーン生成手段と、上記コードからテ
ンションノートピッチクラスセットを生成するテンショ
ンノート生成手段と、上記トーナリティからスケールノ
ートピッチクラスセットを生成するスケールノート生成
手段と、上記スケールノートピッチクラスセットと上記
テンションノートピッチクラスセットとからアヴェイラ
ブルノートピッチクラスセットを生成するアヴェイラブ
ルノート生成手段とから構成される。この場合、メロデ
ィ音分類手段は、コードトーンピッチクラスセットに含
まれるピッチクラスを有するメロディノートを音種“コ
ードトーン”として分類し、テンションノートピッチク
ラスセットに含まれるピッチクラスをもつメロディノー
トを音種“テンションノート”として分類し、スケール
ノートピッチクラスセットに含まれるピッチクラスをも
つメロディノートを音種“スケールノート”として分類
し、アヴェイラブルノートピッチクラスセットに含まれ
るピッチクラスをもつメロディノートを音種“アヴェイ
ラブルノート”として分類し、いずれのピッチクラスセ
ットにも含まれないピッチクラスをもつメロディノート
をその他の音種として分類する。
The sound type pitch class set generating means includes, for example,
Chord tone generation means for generating a chord tone pitch class set from a given chord, tension note generation means for generating a tension note pitch class set from the chord, and scale note generation for generating a scale note pitch class set from the tonality And an available note generating means for generating an available note pitch class set from the scale note pitch class set and the tension note pitch class set. In this case, the melody note classifying means classifies the melody note having the pitch class included in the chord tone pitch class set as a tone type “chord tone”, and converts the melody note having the pitch class included in the tension note pitch class set into a sound. A melody note with a pitch class included in the scale note pitch class set classified as the kind "tension note" and a melody note with a pitch class included in the available note pitch class set Is classified as a sound type “available note”, and a melody note having a pitch class not included in any pitch class set is classified as another sound type.

また、上記メロディパターンルールデータベース手段
に記憶される各メロディパターンルールは、少なくとも
1つの音種の並びを表わすデータとこの少なくとも1つ
の音種の並びにおける隣り合う音の間の音程の並びを表
わすデータとから成るデータ構造によって表現すること
ができる。
Each melody pattern rule stored in the melody pattern rule database means includes data representing at least one sequence of tone types and data representing a sequence of intervals between adjacent sounds in the sequence of at least one tone type. Can be represented by a data structure consisting of

上記コード付与手段、トーナリティ付与手段、音種別
ピッチクラスセット生成手段の代りに、複数の音種の夫
々に関する複数の異なるピッチクラスセットを付与(入
力)する音種別ピッチクラスセット付与手段を用いても
よい。この構成の場合、ピッチクラスセットを装置内部
で生成する必要がなくなり、メロディ分析機の構成が一
層、簡略化される。
Instead of the chord assignment means, the tonality assignment means, and the tone type pitch class set generation means, a tone type pitch class set assignment means for assigning (inputting) a plurality of different pitch class sets for each of a plurality of tone types may be used. Good. In the case of this configuration, it is not necessary to generate the pitch class set inside the device, and the configuration of the melody analyzer is further simplified.

[実施例] 以下、図面を参照してこの発明の実施例を説明する。Embodiment An embodiment of the present invention will be described below with reference to the drawings.

〈全体構成〉 第1図に実施例に係るメロディ分析機のハードウェア
構成のブロック図を示す。CPU2はメロディを分析するた
めにROM4に記憶されるプログラムに従って動作して装置
全体を制御する。ROM4にはプログラム以外に各種のデー
タベース(コードトーンデータベース、テンションノー
トデータベース、ダイアトニックスケール、メロディパ
ターンルールデータベース)が記憶される。RAM6は動作
中、CPU2のワーキングメモリとして使用され、メロデ
ィ、キー、コード進行、メロディ分析結果その他の変数
データを記憶する。入力装置8はメロディ、コード進
行、キー(トーナリティ)等の入力に使用され、メロデ
ィ付与手段、コード付与手段、トーナリティ付与手段を
構成する。メロディ、コード進行のリアルタイム入力の
ため、入力装置8は鍵盤を含み得る。モニター10はCRT
(またはLCD)のような表示装置、プリンタ及びオーデ
ィオシステムに接続される音源を含み、分析結果の表
示、出力に使用される。
<Overall Configuration> FIG. 1 shows a block diagram of a hardware configuration of a melody analyzer according to the embodiment. The CPU 2 operates according to a program stored in the ROM 4 to analyze the melody and controls the entire apparatus. The ROM 4 stores various databases (code tone database, tension note database, diatonic scale, melody pattern rule database) in addition to the programs. The RAM 6 is used as a working memory of the CPU 2 during operation, and stores melody, key, chord progression, melody analysis result and other variable data. The input device 8 is used for inputting a melody, a chord progression, a key (tonality) and the like, and constitutes a melody adding unit, a code adding unit, and a tonality adding unit. For real-time input of melody, chord progression, the input device 8 may include a keyboard. Monitor 10 is a CRT
(Or LCD), including a sound source connected to a display device, a printer, and an audio system, used for displaying and outputting analysis results.

〈メロディ分析機の機能〉 本メロディ分析機の機能を第2図に示す。メロディメ
モリF1(第1図のRAM6に置かれる)は入力装置8から入
力されたメロディデータ(各音がピッチクラスとオクタ
ーブと長さで表現される)を記憶する。キーメモリF2
(RAM6に置かれる)は入力装置8が入力された特定のピ
ッチクラスを表わすキー(トーナリティ)データを記憶
する。コード進行メモリF3(RAM6に置かれる)は入力装
置8から入力されたコード進行(各コードが特定の根音
ピッチクラスとタイプで表現される)を表わすデータを
記憶する。
<Function of Melody Analyzer> The function of the melody analyzer is shown in FIG. The melody memory F1 (located in the RAM 6 in FIG. 1) stores melody data (each sound is represented by a pitch class, an octave, and a length) input from the input device 8. Key memory F2
(Placed in the RAM 6) stores key (tonality) data representing a specific pitch class input by the input device 8. The chord progression memory F3 (located in the RAM 6) stores data representing the chord progression (each chord is represented by a specific root pitch class and type) input from the input device 8.

音程評価部F4(音程評価手段)はメロディメモリF1か
らのメロディデータを受け、メロディの隣り合う音(ノ
ート)の間に形成される音程をスケール度数の形式で評
価する。スケール生成部F5はキーメモリF2からのキーデ
ータを受け、このキーにおけるスケール(例えばダイア
トニックスケール)のピッチクラスセットを生成する。
The pitch evaluation unit F4 (pitch evaluation means) receives the melody data from the melody memory F1, and evaluates the pitch formed between adjacent sounds (notes) of the melody in the form of scale frequency. The scale generation unit F5 receives the key data from the key memory F2 and generates a pitch class set of a scale (for example, a diatonic scale) of the key.

コードトーン生成部F7はコード進行メモリF3からのコ
ード進行データを受け、基準のピッチクラスの根音を想
定した各コードタイプに対するコードトーンピッチクラ
スセットを記憶するコードトーンデータベースF6を参照
してコード進行における個々のコードに対するコードト
ーン(コード構成音)のピッチクラスセットを生成す
る。テンションノート生成部F9はコード進行メモリF3か
らのコード進行データを受け、基準のピッチクラスの根
音を想定した各コードタイプについてテンションノート
のピッチクラスセットを記憶するテンションノートデー
タベースを参照してコード進行における個々のコードに
対するテンションノートのピッチクラスセットを生成す
る。アヴェイラブルノート生成部F10はスケール生成部F
5からのスケールピッチクラスセットとテンションノー
ト生成部F9からのテンションノートピッチクラスセット
を受け、両ピッチクラスセットに共通なピッチクラス内
容をアヴェイラブルノートピッチクラスセットとして生
成する。要素F5〜F10は音種別ピッチクラス生成手段を
構成する。
The chord tone generation unit F7 receives the chord progression data from the chord progression memory F3, and refers to the chord tone database F6 that stores a chord tone pitch class set for each chord type assuming the root of the reference pitch class, and performs chord progression. , A pitch class set of chord tones (chord constituent sounds) for individual chords is generated. The tension note generation unit F9 receives the chord progression data from the chord progression memory F3, and refers to a tension note database that stores a tension note pitch class set for each chord type assuming a root pitch of a reference pitch class, and performs chord progression. Generate a pitch class set of tension notes for each chord in. Available note generator F10 is scale generator F
It receives the scale pitch class set from 5 and the tension note pitch class set from the tension note generation unit F9, and generates pitch class contents common to both pitch class sets as an available note pitch class set. Elements F5 to F10 constitute a tone type pitch class generating means.

音種分類部F11はスケール生成部F5からのスケールピ
ッチクラスセット、コードトーン生成部F7からのコード
トーンピッチクラスセット、テンションノート生成部F9
からのテンションノートピッチクラスセット、アヴェイ
ラブルノート生成部F10からのアヴェイラブルノートピ
ッチクラスセットに基づいて、メロディメモリF1からの
メロディの各音を分類して各音に対する音種(ノートタ
イプ)を識別する。
The tone type classification unit F11 includes a scale pitch class set from the scale generation unit F5, a chord tone pitch class set from the chord tone generation unit F7, and a tension note generation unit F9.
Based on the tension note pitch class set from the melody memory F1 based on the tension note pitch class set from the available note generation unit F10 and the note type for each sound Identify.

メロディパターンルールデータベースF12には(音楽
的に許容される)複数の異なるメロディパターンのそれ
ぞれを定義するメロディパターンルールのセットが記憶
される。各メロディパターンは少なくとも1つの音の並
びから成る。各メロディパターンルールはメロディパタ
ーンにおける音の並びの特徴を定義する。詳細には、1
つの音から成るメロディパターンは、その音の音種によ
って特徴付けられる(ルール化される)。2つの音の並
びから成るメロディパターンは各音の音種の並びと2つ
の音の間に形成される音種の種類によって特徴付けられ
る。同様に、3つ以上の音の並びから成るメロディパタ
ーンは各音の音種の並びと、音の並びにおける隣り合う
音の間に形成される音程の種類の並びとによって特徴付
けられる。
The melody pattern rule database F12 stores a set of melody pattern rules that define each of a plurality of (musically acceptable) different melody patterns. Each melody pattern consists of at least one sequence of sounds. Each melody pattern rule defines the characteristics of the arrangement of sounds in the melody pattern. Specifically, 1
A melody pattern consisting of two sounds is characterized (ruled) by the type of the sound. A melody pattern composed of a sequence of two sounds is characterized by a sequence of sound types of each sound and a type of a sound type formed between the two sounds. Similarly, a melody pattern composed of a sequence of three or more sounds is characterized by a sequence of sound types of each sound and a sequence of pitch types formed between adjacent sounds in the sequence of sounds.

パターン検査部F13(分析手段)は音程評価部F4から
のメロディに関する音程の並びと音種分類部F11からの
音種の並びとを受け、これらの並びに適合するメロディ
パターンルールをメロディパターンルールデータベース
F12から検索してメロディを分析する。
The pattern inspection unit F13 (analysis means) receives the arrangement of the pitches related to the melody from the interval evaluation unit F4 and the arrangement of the tone types from the tone type classification unit F11, and stores a melody pattern rule and a matching melody pattern rule in the melody pattern rule database.
Search from F12 and analyze the melody.

第2図の構成の場合、メロディ分析に必要な音楽知識
がプログラムの一部として組み込まれるものではなくメ
ロディパターンルールデータベースF12で示すようなデ
ータベースにデータとして記憶されるのでメロディ分析
知識の表現、変更が容易となり、“データ駆動型”のメ
ロディ分析機が実現できる。更に、本構成は与えられた
メロディがどのようなメロディパターンで構成されてい
るかを示す分析結果を提供することができる。
In the case of the configuration of FIG. 2, the music knowledge required for the melody analysis is not incorporated as a part of the program but is stored as data in a database such as the melody pattern rule database F12, so that the expression and modification of the melody analysis knowledge are performed. And a “data-driven” melody analyzer can be realized. Further, the present configuration can provide an analysis result indicating what melody pattern the given melody is composed of.

〈詳細〉 以下、実施例に係るメロディ分析機の詳細を述べる。<Details> Hereinafter, details of the melody analyzer according to the embodiment will be described.

第3図は本メロディ分析機で使用したピッチクラス識
別データのフォーマットを示す。“C"のピッチクラスは
数値データ“0"で表現され、C#のピッチクラスが数値
データ“1"、以下同様にして半音差を数値の差“1"とし
てBのピッチクラスが数値データ“11"で表現される。
メロディにおける各ノートのピッチクラスデータ、コー
ドの根音のピッチクラスデータ、キーのピッチクラスデ
ータが第2図のフォーマットに従って表現される。
FIG. 3 shows a format of pitch class identification data used in the melody analyzer. The pitch class of “C” is represented by numerical data “0”, the pitch class of C # is numerical data “1”, and similarly, the pitch class of B is numerical data “1” with a semitone difference of “1”. Expressed as 11 ".
The pitch class data of each note, the pitch class data of the root of a chord, and the pitch class data of a key in the melody are expressed in accordance with the format shown in FIG.

第4図はピッチクラスセットデータのフォーマットを
示す。CからBまで計12種類のピッチクラスがあるの
で、図示のように12ビットデータの各桁(各ビット位
置)に各々のピッチクラスを、最下位の桁(ビット0)
をピッチクラス“C"、その次の桁をピッチクラス“C
#”、以下同様にして最上位の桁をピッチクラス“B"と
いうように割り当て、値“1"をもつ桁によってその桁に
割り当てたピッチクラスをもつノートの存在を表わすこ
とにより、任意のピッチクラスセットを表現することが
できる。例えば、ピッチクラスセット=(C、D、E、
F、G、A、B)は、 101010110101(2進) で表現される。コードトーンピッチクラスセット、テン
ションノートピッチクラスセット、スケールノートピッ
チクラスセット、アヴェイラブルノートピッチクラスセ
ットの各データが第4図のフォーマットに従う。
FIG. 4 shows the format of the pitch class set data. Since there are a total of 12 pitch classes from C to B, each pitch class is assigned to each digit (each bit position) of the 12-bit data, and the least significant digit (bit 0) as shown in the figure.
Is the pitch class “C”, and the next digit is the pitch class “C”.
# ", And so on, the highest digit is assigned as pitch class" B ", and the digit having the value" 1 "indicates the existence of a note having the pitch class assigned to that digit, thereby giving an arbitrary pitch. A class set can be represented, for example, pitch class set = (C, D, E,
F, G, A, and B) are represented by 101010110101 (binary). Each data of the chord tone pitch class set, the tension note pitch class set, the scale note pitch class set, and the available note pitch class set follows the format shown in FIG.

第5図はコードタイプ識別データのフォーマットを示
す。図示のフォーマットに従うと、メジャーのタイプの
コードは数値“0"で表わされ、マイナーコードは数値
“1"で表わされ、セブンス(7th)コードは数値“2"で
表現される。その他のコードタイプも含まれるようにコ
ードタイプセットを拡張してもよい。
FIG. 5 shows the format of the code type identification data. According to the illustrated format, the major type code is represented by a numerical value “0”, the minor code is represented by a numerical value “1”, and the seventh (7th) code is represented by a numerical value “2”. The code type set may be extended to include other code types.

第6図はメロディメモリ42(第2図のメロディメモリ
F1に相当する)に記憶されるメロディデータの構造を示
す。メロディデータはノートデータの連結リスト(一次
元配列)で表現される。各ノートデータは、ピッチクラ
スとオクターブと長さと次のノートのアドレスのデータ
から成る。ピッチクラスは第3図のフォーマットに従っ
て表現され、オクターブは中央のCから始まるオクター
ブを数値“4"とし、オクターブ順に連続する数値を割り
当てるフォーマットに従って表現され、長さは1小節の
長さを数値“16"とするフォーマットに従って表現され
る。第6図においてMelodyはメロディメモリ42のベース
(先頭)アドレスを表わす。メロディの最終ノートデー
タエリアにおける次ノートアドレス部にはメロディデー
タリストの終端を示すメロディ終了識別マーク“0"が記
憶される。
FIG. 6 shows the melody memory 42 (the melody memory shown in FIG. 2).
2 shows the structure of the melody data stored in F1). Melody data is represented by a linked list (one-dimensional array) of note data. Each note data includes pitch class, octave, length, and address data of the next note. The pitch class is represented according to the format shown in FIG. 3, the octave is represented according to a format in which the octave starting from the center C is set to a numerical value “4”, and consecutive numerical values are assigned in octave order, and the length is set to the numerical value “1 bar length”. It is expressed according to the format of 16 ". In FIG. 6, Melody represents a base (head) address of the melody memory 42. A melody end identification mark "0" indicating the end of the melody data list is stored in the next note address portion in the last note data area of the melody.

第7図はコード進行メモリ44(第2図のコード進行メ
モリF3に相当する)に記憶されるコード進行データの構
造を示す。コード進行データはコードデータの連結リス
ト(一次元配列)で表現される。各コードデータは根音
のピッチクラス、タイプ、長さ及び次のコードのアドレ
スの情報をもつ。根音のピッチクラスデータは第3図の
フォーマットに従い、タイプデータは第5図のフォーマ
ットに従い、長さデータはメロディノートの長さデータ
と同じフォーマットに従う。次コードアドレス部は次の
コードがない場合、コード進行リストの終端を表わすマ
ーク“0"となる。第7図に示すCprocはコード進行メモ
リ44のベース(先頭)アドレスを表わす。
FIG. 7 shows the structure of chord progression data stored in chord progression memory 44 (corresponding to chord progression memory F3 in FIG. 2). The chord progress data is represented by a linked list (one-dimensional array) of chord data. Each chord data has information on the pitch class, type, length of the root note and the address of the next chord. The pitch class data of the root note follows the format of FIG. 3, the type data follows the format of FIG. 5, and the length data follows the same format as the melody note length data. When there is no next code, the next code address portion is a mark “0” indicating the end of the code progress list. Cproc shown in FIG. 7 represents the base (head) address of the chord progression memory 44.

第8図はキーメモリ46(第2図のキーメモリF2に相当
する)の構成を示す。キーメモリ46には入力装置8から
入力されたキー(トーナリティ)のピッチクラスを示す
データが記憶される。キーのピッチクラスデータは第3
図のフォーマットに従う。キーメモリ46のアドレスはKe
yで与えられる。
FIG. 8 shows the configuration of the key memory 46 (corresponding to the key memory F2 in FIG. 2). The key memory 46 stores data indicating the pitch class of the key (tonality) input from the input device 8. Key pitch class data is 3rd
Follow the format shown in the figure. The address of the key memory 46 is Ke
given by y.

第6図、第7図及び第8図に示す各メモリの内容を第
9図に楽譜で示す。
The contents of each memory shown in FIGS. 6, 7 and 8 are shown in musical scores in FIG.

第10図はROM4に置かれるコードトーンデータベースメ
モリ62(第2図のコードトーンデータベースF6に相当す
る)の構成を示す。コードトーンデータベースメモリ62
には根音を基準のピッチクラスCとする各コードのタイ
プに対するコードトーン(コード構成音)のピッチクラ
スセットデータが記憶される。コードトーンデータベー
スメモリ62のベースアドレスはCTdBで与えられる。コー
ドタイプ識別データの値(第5図参照)が、コードトー
ンデータベースメモリ62の相対アドレス(ベースアドレ
スからのアドレス距離)を定める。コードトーンデータ
ベースメモリ62の各アドレスに記憶されるコードトーン
ピッチクラスセットデータは第4図のフォーマットに従
う。
FIG. 10 shows the structure of a code tone database memory 62 (corresponding to the code tone database F6 in FIG. 2) stored in the ROM 4. Code tone database memory 62
Stores pitch class set data of chord tones (chord constituent sounds) for each chord type having a root pitch as a reference pitch class C. The base address of the code tone database memory 62 is given by CTdB. The value of the code type identification data (see FIG. 5) determines the relative address (address distance from the base address) of the code tone database memory 62. The code tone pitch class set data stored at each address of the code tone database memory 62 follows the format shown in FIG.

第11図はROM4に置かれるテンションノートデータベー
スメモリ64(第2図のテンションノートデータベースF8
に相当する)の構成を示す。テンションノートデータベ
ースメモリ64にはコード根音のピッチクラスをCとした
各コードタイプに対するテンションノートピッチクラス
セットデータが記憶される。テンションノートデータベ
ースメモリ64のベースアドレスはTNdBで与えられる。コ
ードタイプ識別データの値がテンションノートデータベ
ースメモリ64の相対アドレスを定める。
FIG. 11 shows the tension note database memory 64 (the tension note database F8 in FIG. 2) stored in the ROM 4.
) Is shown. The tension note database 64 stores tension note pitch class set data for each chord type, where the pitch class of the chord root is C. The base address of the tension note database memory 64 is given in TNdB. The value of the code type identification data determines the relative address of the tension note database memory 64.

第12図にROM4に置かれるダイアトニックスケールメモ
リ66の構成を示す。ダイアトニックスケールメモリ66の
アドレスはDiatonicで与えられ、このアドレスにキーノ
ートのピッチクラスをCとしたダイアトニックメジャー
スケールのピッチクラスセット(C、D、E、F、G、
A、B)を表わすデータが記憶される。
FIG. 12 shows the configuration of the diatonic scale memory 66 stored in the ROM 4. The address of the diatonic scale memory 66 is given by Diatonic, and the pitch class set of the diatonic major scale (C, D, E, F, G,
A, B) are stored.

第13図はROM4に置かれるメロディパターンルールデー
タベースメモリ68(第2図メロディパターンデータベー
スF12に相当する)の構成を示すものである。メロディ
パターンルールデータベースメモリ68は音楽的に許容さ
れるメロディパターンルールのリスト(一次元配列)で
構成される。各メロディパターンルールは抽象化された
ノート(FNOTE)データのリストで表現される。各FNOTE
データはノートの音種識別データ、次のノートに対する
音程の条件を表わすための音程方向識別データと音程距
離識別データ、及び次のノートのアドレス値から成る。
音種識別データは第14図に示すフォーマットに従い、音
種が“スケールノート”のときには“1"、“テンション
ノート”のときには“2"、“アヴェイラブルノート”の
ときには“3"、“アヴォイドノート”のときには“4"、
任意の“ノート”のときには“5"の数値をとる。音程方
向識別データは第15図に示すフォーマットに従い、現ノ
ートからの次ノートへピッチが上昇するとき(“+”)
には数値“0"をとり、ピッチが下降するとき(“−”)
には数値“1"をとり、同じピッチのときは数値“2"をと
り、“任意の方向”でよい場合には数値“3"をとる。音
程距離識別データは第16図のフォーマットに従い現ノー
トと次ノートとの間の音程距離がゼロ(同音)のときに
は数値“0"をとり、音程距離が半音のときは数値“1"を
とり、現ノートから次ノートへ順次進行(半音または全
音)のときは数値“2"をとり、音程距離が全音のときは
数値“3"をとり、現ノートから次ノートへ跳躍進行(全
音より大きな音程距離)のときは数値“4"をとり、任意
の音程距離でよいときには数値“5"をとる。メロディパ
ターンルールデータベースメモリ68のベースアドレスは
PRdBで与えられる。音程方向エリアにおける値“FH"は
1つのパターンの終端を表わす。次パターンルールアド
レスエリアにおける値“0"はメロディパターンルールデ
ータベースの終端を表わす。
FIG. 13 shows the configuration of the melody pattern rule database memory 68 (corresponding to the melody pattern database F12 in FIG. 2) stored in the ROM 4. The melody pattern rule database memory 68 is composed of a list (one-dimensional array) of musically acceptable melody pattern rules. Each melody pattern rule is represented by a list of abstracted note (FNOTE) data. Each FNOTE
The data is composed of note type identification data of a note, pitch direction identification data and pitch distance identification data for indicating a pitch condition for the next note, and an address value of the next note.
The sound type identification data follows the format shown in Fig. 14, and is "1" when the sound type is "scale note", "2" when it is "tension note", "3" when it is "available note", and "avoid note". "4" for ""
In the case of an arbitrary "note", a value of "5" is taken. The pitch direction identification data follows the format shown in Fig. 15 when the pitch increases from the current note to the next note ("+").
Takes a numerical value “0” and when the pitch goes down (“-”)
Takes a numerical value "1", takes the numerical value "2" when the pitch is the same, and takes the numerical value "3" when "any direction" is acceptable. According to the format shown in FIG. 16, the pitch distance identification data takes a numerical value “0” when the pitch distance between the current note and the next note is zero (same tone), and takes a numerical value “1” when the pitch distance is a semitone, Takes a numerical value "2" when progressing sequentially from the current note to the next note (semitone or whole note), takes a numerical value "3" when the pitch distance is a whole note, and jumps from the current note to the next note (a pitch larger than the whole note) In the case of "distance", a numerical value "4" is taken, and when an arbitrary pitch distance is sufficient, a numerical value "5" is taken. The base address of the melody pattern rule database memory 68 is
Given in PRdB. The value “FH” in the pitch direction area indicates the end of one pattern. The value “0” in the next pattern rule address area indicates the end of the melody pattern rule database.

第17図に主な変数のリストを示す。変数DTSは第2図
のスケール生成部F5の出力に相当するものであり、キー
ノートメモリ46に記憶されるピッチクラスをキーとして
もつダイアトニックスケール(のピッチクラスセット)
を表わす。変数DTSはダイアトニックスケールメモリ66
の内容である12ビットのピッチクラスセットデータをキ
ーノートメモリ46のデータの値だけ、左に転回(ローテ
ート)することにより得られる。例として、キーCのダ
イアトニックスケールピッチクラスセットデータとキー
Eのダイアトニックスケールピッチクラスセットデータ
とを示すと、 101010110101(キーC) 101101011010(キーE) となる。キーEのダイアトニックスケールピッチクラス
セット(12ビット)データは、キーCのダイアトニック
スケールピッチクラスセット(12ビット)データをキー
Eのデータの値“4"だけ左に転回することにより得られ
る。変数TENは第2図のテンションノート生成部F9の出
力に相当するものであり、与えられたコードに対するテ
ンションノートのピッチクラスセットを表わす。変数CH
T(第2図のコードトーン生成部F7の出力に相当する)
は与えられたコードに対するコードトーンのピッチクラ
スセットを表わす。変数AVN(第2図のアヴェイラブル
ノート生成部F10の出力に相当する)はアヴェイラブル
ノートのピッチクラスセットを表わす。アヴェイラブル
ノートピッチクラスセットデータAVNは変数TENとDTSの
ビット毎の論理積をとることで得られる。
Figure 17 shows a list of the main variables. The variable DTS is equivalent to the output of the scale generation unit F5 in FIG. 2, and (a pitch class set of) a diatonic scale having the pitch class stored in the key note memory 46 as a key.
Represents Variable DTS is diatonic scale memory 66
Is obtained by inverting (rotating) the 12-bit pitch class set data, which is the content of the data, to the left by the value of the data in the key note memory 46. As an example, the diatonic scale pitch class set data of key C and the diatonic scale pitch class set data of key E are shown as 101010110101 (key C) and 101101011010 (key E). The diatonic scale pitch class set (12 bits) data of the key E is obtained by turning the diatonic scale pitch class set (12 bits) data of the key C to the left by the value “4” of the key E data. The variable TEN corresponds to the output of the tension note generation unit F9 in FIG. 2, and represents the pitch class set of the tension note for a given chord. Variable CH
T (corresponding to the output of the code tone generation unit F7 in FIG. 2)
Represents a pitch class set of chord tones for a given chord. The variable AVN (corresponding to the output of the available note generation unit F10 in FIG. 2) represents the pitch class set of the available note. The available note pitch class set data AVN is obtained by taking the logical product of the variables TEN and DTS for each bit.

変数NOTETYPE(音種分類部F11の出力に相当する)は
与えられたメロディノートの音種を表わす。変数INTERV
ALは(音程評価部F4の出力に相当する)与えられた
(現)メロディノートとその次のメロディノートとの間
の音程のスケール度数を表わす。INTERVALは、次のよう
にして得られる。
The variable NOTETYPE (corresponding to the output of the note type classification unit F11) represents the note type of the given melody note. Variable INTERV
AL represents the scale frequency of the pitch between the given (current) melody note (corresponding to the output of the pitch evaluation unit F4) and the next melody note. INTERVAL is obtained as follows.

INTERVAL=NOTE(Next)(OctNO)×12+NOTE(Nex
t) (PC)−{NOTE(OctNO)×12+NOTE(PC)} ここに、NOTE(Next)(OctNO)は次ノートのオクター
ブを表わし、NOTE(Next)(PC)は次ノートのピッチク
ラスを表わし、NOTE(OctNO)は現ノートのオクターブ
を表わし、NOTE(PC)は現ノートのピッチクラスを表わ
す。
INTERVAL = NOTE (Next) (OctNO) x 12 + NOTE (Nex
t) (PC)-{NOTE (OctNO) x 12 + NOTE (PC)} where NOTE (Next) (OctNO) indicates the octave of the next note, and NOTE (Next) (PC) indicates the pitch class of the next note. , NOTE (OctNO) represents the octave of the current note, and NOTE (PC) represents the pitch class of the current note.

その他の変数は第17図から明らかなのでここでは説明
を省略する。
Other variables are apparent from FIG. 17 and will not be described here.

第18図は実施例の動作のメインフローを示す。18−1
でCPU2は入力装置8からのユーザー入力を待機する。デ
ータ入力(メロディ、キー、コード進行)があった場合
は(18−2)、データ入力処理ルーチン18−3で入力さ
れたデータをRAM6に記憶する。メロディに対する分析指
示がなされた場合は(98−4)、メロディメモリ42に記
憶される各メロディノートを分類して音種を識別する。
音種分類処理18−5はメロディメモリ42における個々の
メロディノートの時間に存在するコード進行メモリ44上
のコードを判別する時間対応サブルーチン(図示せず)
を含む。メロディメモリ42上のあるノートに時間的に対
応するコード進行メモリ44上のコードは次のようにして
得られる。メロディノートの水平位置(メロディの先頭
から直前ノートまでの累算長)を求め、求めたノート位
置を越えるまでコード進行上のコード長を先頭から累算
する。越えたときのコードがメロディノートに対応する
コードCHORDである。更に、音種分類処理18−5はコー
ドトーンのピッチクラスセットCHT、ダイアトニックス
ケールピッチクラスセットDTS、テンションノートピッ
チクラスセットTEN、アヴェイラブルノートピッチクラ
スセットAVNを得る音種別ピッチクラスセット生成サブ
ルーチンを含む。ここに、CHT、DTS、TEN、AVNは、ロー
テート関数ROTATE(a、b)(ピッチクラスセットデー
タaをbだけ左に転回する)を用いて、 CHT=ROTATE(*[CTdB+CHORD(Type)]、 CHORD(RootPC)) DTS=ROTATE(*[Diatonic]、KEY)、 TEN=ROTATE(*[TNdB+CHORD(Type)]、 CHORD(RootPC)) AVN=TENとDTSのビット毎の論理積 で与えられる。ここに*[a]はアドレスaに記憶され
るデータを表わす。更に音種分類処理18−5は4つのピ
ッチクラスセットCHT、DTS、TEN、AVNとノートのピッチ
クラスNOTE(PC)との包含関係を調べてノートの音種を
識別する第19図に示すようなサブルーチンを含む。19−
1で、メロディノートのピッチクラスNOTE(PC)がコー
ドトーンピッチクラスセットCHTに含まれるかどうか調
べる。詳細には、メロディノートのピッチクラスデータ
は、第3図に示すフォーマットから第4図に示すフォー
マットに変換され(12ビットデータのうちNOTE(PC)番
目の桁が“1"となる)、フォーマット変換後のノートピ
ッチクラス12ビットデータとコードトーンピッチクラス
セット12ビットデータCHTとの間で各ビットについて論
理積をとる。結果が“0"でなければ、メロディノートの
ピッチクラスはコードノートのピッチクラスセットに含
まれ、結果が“0"であればメロディノートのピッチクラ
スはコードトーンのピッチクラスセットに含まれない。
前者の場合、変数NOTETYPEにコードトーンの識別値をセ
ットしてノートの音種が“コードトーン”であることを
示す(19−2)。同様にして、メロディノートのピッチ
クラスがアヴェイラブルノートピッチクラスセットAVN
に含まれれば、そのメロディノートは音種“アヴェイラ
ブル”として分類され(19−2、19−3)、メロディノ
ートのピッチクラスがダイアトニックスケールピッチク
ラスセットDTSに含まれれば、そのメロディノートは音
種“スケールノート”として分類され(19−4、19−
5)、メロディノートのピッチクラスセットがテンショ
ンノートピッチクラスセットTENに含まれれば、そのメ
ロディノートは音種“テンションノート”として分類さ
れ(19−6、19−7)、メロディノートのピッチクラス
がCHT、AVN、DTS、TENのいずれのピッチクラスセットに
も含まれない場合はそのメロディノートは音種“アヴォ
イドノート”として分類される(19−8)。音種の識別
フロー(第19図)は、分析しようとするメロディの各ノ
ートについて繰り返し実行され、その結果、分析対象メ
ロディのノートの並びに対応する音種の並び(一次元配
列)が得られる。
FIG. 18 shows a main flow of the operation of the embodiment. 18-1
The CPU 2 waits for a user input from the input device 8. If there is a data input (melody, key, chord progression) (18-2), the data input in the data input processing routine 18-3 is stored in the RAM 6. When an instruction to analyze a melody is given (98-4), each melody note stored in the melody memory 42 is classified to identify a sound type.
The sound type classification processing 18-5 is a time corresponding subroutine (not shown) for determining a chord on the chord progression memory 44 existing at the time of each melody note in the melody memory 42.
including. A chord on the chord progression memory 44 corresponding to a certain note on the melody memory 42 in time is obtained as follows. The horizontal position of the melody note (accumulated length from the beginning of the melody to the immediately preceding note) is determined, and the chord length in the chord progression is accumulated from the beginning until the note position is exceeded. The code at the time of exceeding is CHORD corresponding to the melody note. Further, the tone type classification processing 18-5 includes a tone type pitch class set generation subroutine for obtaining a chord tone pitch class set CHT, a diatonic scale pitch class set DTS, a tension note pitch class set TEN, and an available note pitch class set AVN. including. Here, CHT, DTS, TEN, and AVN are obtained by using a rotation function ROTATE (a, b) (turn the pitch class set data a to the left by b) to obtain CHT = ROTATE (* [CTdB + CHORD (Type)], CHORD (RootPC)) DTS = ROTATE (* [Diatonic], KEY), TEN = ROTATE (* [TNdB + CHORD (Type)], CHORD (RootPC)) AVN = TEN and bit-wise logical AND of DTS. Here, * [a] represents data stored at address a. Further, the tone type classification processing 18-5 examines the inclusion relationship between the four pitch class sets CHT, DTS, TEN, and AVN and the pitch class NOTE (PC) of the note, and identifies the tone type of the note as shown in FIG. Including various subroutines. 19−
At 1, it is checked whether or not the pitch class NOTE (PC) of the melody note is included in the chord tone pitch class set CHT. More specifically, the pitch class data of the melody note is converted from the format shown in FIG. 3 to the format shown in FIG. 4 (note (PC) -th digit of the 12-bit data is "1"), and The logical AND of each bit is calculated between the converted note pitch class 12-bit data and the code tone pitch class set 12-bit data CHT. If the result is not "0", the pitch class of the melody note is included in the pitch class set of the chord note, and if the result is "0", the pitch class of the melody note is not included in the pitch class set of the chord tone.
In the former case, the identification value of the chord tone is set in the variable NOTETYPE to indicate that the note type is "chord tone" (19-2). Similarly, the melody note pitch class is available note pitch class set AVN
, The melody note is classified as a sound type “Available” (19-2, 19-3). If the pitch class of the melody note is included in the diatonic scale pitch class set DTS, the melody note is classified as a sound. Classified as species "scale notes" (19-4, 19-
5) If the pitch class set of the melody note is included in the tension note pitch class set TEN, the melody note is classified as a tone type “tension note” (19-6, 19-7), and the pitch class of the melody note is If the melody note is not included in any of the pitch class sets of CHT, AVN, DTS, and TEN, the melody note is classified as a sound type "avoid note" (19-8). The tone type identification flow (FIG. 19) is repeatedly executed for each note of the melody to be analyzed, and as a result, an arrangement (one-dimensional array) of notes of the melody to be analyzed and corresponding tone types is obtained.

第18図に戻って、音種分類処理18−5の後、音程評価
ルーチン18−6が実行される。このルーチン18−6では
分析対象メロディの隣り合うノート間の音種のスケール
度数を評価して、メロディに関連する音程の並び(一次
元配列)を生成する。
Referring back to FIG. 18, after the tone type classification processing 18-5, a pitch evaluation routine 18-6 is executed. In this routine 18-6, the scale frequency of the tone type between adjacent notes of the analysis target melody is evaluated, and a sequence (one-dimensional array) of intervals related to the melody is generated.

最後にCPU2はパターン検査ルーチン18−7を実行し
て、メロディから得た音種の並びと音程の並びについ
て、メロディパターンルールデータベースメモリ68から
適合するパターンルールを検索する。
Finally, the CPU 2 executes the pattern inspection routine 18-7, and searches the melody pattern rule database memory 68 for a suitable pattern rule for the arrangement of tone types and the arrangement of pitches obtained from the melody.

パターン検査ルーチンの詳細を第20図に示す。20−1
で初期化が行われる。初期化の詳細を第21図に示す。メ
ロディメモリ42のベースアドレスMelodyをノートポイン
タ変数NOTEにセットし(21−1)、パターン検査合否配
列のベースアドレスDECを合否ポインタ変数DECNにセッ
トする(21−2)。次に21−3から21−6のループを実
行してメロディメモリ42におけるノートの数だけパター
ン検査合否配列の各要素DECN(DEC)に不合格(適合す
るメロディパターンなし)を示す“0"をセットする。最
後(21−7)に変数NOTEに再びメロディメモリ42のベー
スアドレスMelodyをセットする。
FIG. 20 shows the details of the pattern inspection routine. 20-1
Is initialized. The details of the initialization are shown in FIG. The base address Melody of the melody memory 42 is set to a note pointer variable NOTE (21-1), and the base address DEC of the pattern inspection pass / fail array is set to a pass / fail pointer variable DECN (21-2). Next, the loop from 21-3 to 21-6 is executed, and "0" indicating rejection (no matching melody pattern) for each element DECN (DEC) of the pattern inspection pass / fail array by the number of notes in the melody memory 42 is obtained. set. Finally (21-7), the base address Melody of the melody memory 42 is set again in the variable NOTE.

第20図に戻って、20−2でルールポインタ変数RULEを
メロディパターンルールデータメモリ68のベースアドレ
スPRdBに初期化する。20−3で着目しているメロディパ
ターンルールの最初の音のアドレスRULE(FNOTE)をパ
ターンノートポインタ変数FNOYEにセットし、20−4で
ノートポインタ変数NOTE0にNOTEをセットする。20−5
で、メロディノートポインタNOTE0が指すメロディノー
トに対する音種NOTETYPEと音程INTERVALを音種配列と音
程配列とからそれぞれとり出し、これらとパターンノー
トポインタFNOTEの指すパターンノートの対応する要素
(音種、音程の方向、音程の距離)との論理関係を調べ
てメロディノートがメロディパターンルールのパターン
ノートの条件を満たすかどうかを判定する。音種条件
は、パターンノートの音種FNOTE(TYPE)が“任意の音
種”の場合、そうでなければメロディノートの音種NOTE
(Type)がパターンノートの音種FNOTE(Type)に等し
いときに成立する。また、アヴェイラブルノートのピッ
チクラスセットはダイアトニックスケールピッチクラス
セットとテンションノートのピッチクラスセットとの共
通部分として定めているのでパターンノートの音種FNOT
E(TYPE)が“スケールノート”または“テンションノ
ート”でメロディノートの音種NOTE(Type)が“アヴェ
イラブルノート”のときにも音種条件を成立させてもよ
い。音程の検査のついては、パターンノートの音程方向
FNOTE(Dir)と音程距離FNOTE(Moti)から、許容され
る音程のスケール度数の範囲を求め、この範囲内にメロ
ディノートの音程INTERVALが入っている場合に音程条件
成立とする。
Returning to FIG. 20, the rule pointer variable RULE is initialized to the base address PRdB of the melody pattern rule data memory 68 at 20-2. At 20-3, the address RULE (FNOTE) of the first sound of the melody pattern rule of interest is set in the pattern note pointer variable FNOYE, and at 20-4, NOTE is set in the note pointer variable NOTE0. 20-5
Then, the note type NOTETYPE and interval INTERVAL for the melody note pointed to by the melody note pointer NOTE0 are extracted from the tone type array and interval array, respectively, and the corresponding elements of the pattern note pointed to by the pattern note pointer FNOTE (note type, pitch By examining the logical relationship between the melody note and the melody note, it is determined whether or not the melody note satisfies the condition of the melody pattern rule. If the note type FNOTE (TYPE) of the pattern note is "arbitrary note type", the note type of the melody note is not.
This holds when (Type) is equal to the note type FNOTE (Type) of the pattern note. In addition, the pitch class set of available notes is defined as a common part between the diatonic scale pitch class set and the pitch class set of tension notes, so the sound type of the pattern note FNOT
The tone type condition may also be satisfied when E (TYPE) is “scale note” or “tension note” and the melody note tone type “NOTE (Type)” is “available note”. For pitch inspection, the pitch direction of the pattern note
From FNOTE (Dir) and the pitch distance FNOTE (Moti), a range of the allowable scale frequency of the pitch is obtained, and if the melody note interval INTERVAL falls within this range, the pitch condition is satisfied.

チェック20−5が不成立の場合はチェックしたメロデ
ィノートが着目しているメロディパターンルールのパタ
ーンノートの条件を満足していないので、次のメロディ
パターンルールを選び(20−11、20−3、20−4)、次
のメロディパターンルールについてメロディノートの並
びを再び検査する。
If the check 20-5 is not satisfied, the checked melody note does not satisfy the condition of the pattern note of the melody pattern rule of interest, so the next melody pattern rule is selected (20-11, 20-3, 20-20). -4), the arrangement of the melody notes is checked again for the next melody pattern rule.

チェック20−5が成立した場合は、メロディパターン
ルールの次の要素とメロディの次の要素とを次のチェッ
ク20−5の実行時での検査対象とするため、FNOTE(NEX
T)をFNOTEにセットし(20−6)、NOTE0(NEXT)をNOT
E0にセットする(20−7)。20−8で*[NOTE0]=0
(1つ前に検査したメロディノートがメロディの終り)
かつ*[FNOTE]≠FH(1つ前に検査したパターンノー
トが着目しているメロディパターンルールの終りでな
い)ときは、着目しているメロディパターンルールは適
合しないとして、次のメロディパターンルールを選択す
る(20−11)。20−9で*[FNOTE]=FHのときは、着
目しているメロディパターンルールが、メロディにおけ
るNOTEの指すノートからNOTE0の1つ前までのノートに
適合したので、これらのメロディノートについて合格処
理20−10を実行する。合格処理の詳細を第22図に示す。
変数NOTE1にメロディメモリ42のベースアドレスMelody
をセットし(22−1)、変数DECNに合否配列のベースア
ドレスDECをセットし(22−2)、ループ22−3から22
−5により、メロディノートポインタNOTEに対応する合
否配列の要素のアドレスDECNを得る。続いて、ループ22
−6から22−7を実行して、メロディノートポインタNO
TEの指すノートからメロディノートポインタNOTE0の指
すノートの1つの前のノートまでに対応する合否配列の
各要素DECN(DEC)に合格(適合パターンルールの存
在)を表わす“1"をセットする。なお、所望であれば、
合格処理ルーチン20−10のなかで、モニター10を通じて
合格したメロディノートを表示してもよい(更に、合格
したメロディノートとともに、該当したメロディパター
ンルールも表示可能である)。
If the check 20-5 is satisfied, the next element of the melody pattern rule and the next element of the melody are to be inspected when the next check 20-5 is executed, so that FNOTE (NEX
T) is set to FNOTE (20-6), and NOTE0 (NEXT) is NOT
Set to E0 (20-7). * [NOTE0] = 0 at 20-8
(The last melody note checked is the end of the melody)
And if * [FNOTE] ≠ FH (the pattern note inspected immediately before is not the end of the melody pattern rule of interest), the melody pattern rule of interest is not matched and the next melody pattern rule is selected. (20-11). If * [FNOTE] = FH in 20-9, the melody pattern rule of interest matches the notes from the note indicated by NOTE to the note immediately before NOTE0 in the melody, so pass processing for these melody notes Perform 20-10. Details of the pass process are shown in FIG.
Base address Melody of melody memory 42 in variable NOTE1
Is set (22-1), the base address DEC of the pass / fail array is set in the variable DECN (22-2), and the loops 22-3 to 22-2 are set.
By -5, the address DECN of the element of the pass / fail array corresponding to the melody note pointer NOTE is obtained. Then loop 22
-6 to 22-7 are executed and the melody note pointer NO
Each element DECN (DEC) of the pass / fail array corresponding to the note pointed by the TE to the note immediately preceding the note pointed by the melody note pointer NOTE0 is set to "1" indicating success (the existence of a matching pattern rule). If desired,
In the pass processing routine 20-10, the passed melody note may be displayed through the monitor 10 (further, the corresponding melody pattern rule can be displayed together with the passed melody note).

合格処理20−10の次に、RULE(NEXT)にRULEをセット
して次のメロディパターンルールを選択する(20−1
1)、メロディパターンルールデータベース68の終端に
達してなければ(20−12で*[RULE]=0が不成立)、
24−3以下の処理を繰り返して新たに選択したメロディ
パターンルールがメロディノートの並びに適合するかど
うかを調べる。メロディパターンルールデータベース68
の終端に達したならばNOTE=NOTE(Next)により次のメ
ロディノートを選択し(20−13)、前のノートがメロデ
ィの終端でなければ(20−14で*[NOTE]=0が不成
立)、20−2以下の処理を行って、新たに選択したメロ
ディノートを最初のノートとするノートの並びに適合す
るメロディパターンルールをメロディパターンルールデ
ータメモリ68から検索する。チェック20−14の成立によ
り、パターン検査ルーチンは終了する。
After the pass processing 20-10, RULE is set in RULE (NEXT) and the next melody pattern rule is selected (20-1).
1) If the end of the melody pattern rule database 68 has not been reached (* [RULE] = 0 is not established in 20-12),
It is checked whether the newly selected melody pattern rule matches the arrangement of the melody notes by repeating the processing of 24-3 and below. Melody pattern rule database 68
If the end of the melody is reached, the next melody note is selected by NOTE = NOTE (Next) (20-13), and if the previous note is not the end of the melody (* [NOTE] = 0 is not established in 20-14) ) And 20-2 and below, the melody pattern rule data memory 68 searches for a melody pattern rule that matches the newly selected melody note as the first note. When the check 20-14 is satisfied, the pattern inspection routine ends.

以上のように本実施例ではメロディパターンルールデ
ータベース68によりメロディ分析に必要な音楽知識をデ
ータとしてプログラムから完全に独立させているので種
々のメロディ分析機の構築が容易であり、また、メロデ
ィを許容されるメロディパターンの組み合わせとしてみ
る観点からメロディの分析を行うことができる。
As described above, in this embodiment, the music knowledge necessary for the melody analysis is completely independent of the program as data by the melody pattern rule database 68, so that various melody analyzers can be easily constructed, and the melody is allowed. The melody can be analyzed from the viewpoint of viewing as a combination of the melody patterns to be performed.

以上で実施例の説明を終えるがこの発明の範囲内で種
々の変形、変更が容易である。
The description of the embodiment is finished above, but various modifications and changes can be easily made within the scope of the present invention.

例えば、実施例ではメロディパターンルールデータベ
ース68をROM4内に永久的なデータ源として確保している
が、メロディパターンルールデータベースをRAMのよう
なリードライトメモリ上で編集可能な構成としてもよ
い。
For example, in the embodiment, the melody pattern rule database 68 is secured as a permanent data source in the ROM 4, but the melody pattern rule database may be configured to be editable on a read / write memory such as a RAM.

また、入力装置8等から各音種に関するピッチクラス
セットを入力するようにして第2図に示すF2、F3、F5〜
F10の要素を不要にしてもよい。
Also, a pitch class set for each sound type is input from the input device 8 or the like so that F2, F3, F5 to F5 to F5 shown in FIG.
The element of F10 may be unnecessary.

[発明の効果] 以上、詳細に述べたように、この発明によれば、メロ
ディの分析に必要な音楽知識をメロディパターンルール
データベース手段にデータベース化してもたせているの
で、データ駆動型のメロディ分析機を実現でき、メロデ
ィ分析機の構成が簡単になる利点がある。更に、この発
明のメロディ分析機によれば、与えられたメロディをメ
ロディパターンの組み合わせとしてみる観点から分析す
ることができる。
[Effects of the Invention] As described above in detail, according to the present invention, the music knowledge necessary for melody analysis is stored in the melody pattern rule database means as a database, so that a data-driven melody analyzer is provided. And the advantage that the configuration of the melody analyzer can be simplified. Furthermore, according to the melody analyzer of the present invention, it is possible to analyze a given melody from the viewpoint of viewing it as a combination of melody patterns.

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

第1図はこの発明の実施例に係るメロディ分析機のシス
テムブロック図、 第2図は第1図のメロディ分析機の機能を示す機能ブロ
ック図、 第3図はピッチクラス識別データのフォーマットを例示
する図、 第4図はピッチクラスセットデータのフォーマットを例
示する図、 第5図はコードタイプ識別データのフォーマットを例示
する図、 第6図はメロディメモリの構成を示す図、 第7図はコード進行メモリの構成を示す図、 第8図はキー(トーナリティ)メモリの構成を示す図、 第9図は第6図〜第8図のメモリに記憶される入力音楽
データ例を楽譜で表現した図、 第10図はコードトーン(構成音)データベースメモリの
構成を示す図、 第11図はテンションノートデータベースメモリの構成を
示す図、 第12図はダイアトニックスケールメモリの構成を示す
図、 第13図はメロディパターンルールデータベースメモリの
構成を示す図、 第14図は音種識別データのフォーマットを示す図、 第15図は音程方向識別データのフォーマットを示す図、 第16図は音程距離識別データのフォーマットを示す図、 第17図は変数のリストを示す図、 第18図は第1図のCPUにより実行されるメインのフロー
チャート、 第19図は音種分類のフローチャート、 第20図はメロディパターン検査のフローチャート、 第21図は初期化のフローチャート、 第22図はメロディパターンルールの合格処理のフローチ
ャートである。 F1、F2……メロディメモリ F3、44……コード進行メモリ F2、46……キーメモリ F6、62……コードトーンデータベース F7……コードトーン生成部 F8、64……テンションノートデータベース 66……ダイアトニックメモリ F5……ダイアトニックスケール生成部 F9……テンションノート生成部 F10……アヴェイラブルノート生成部 F11……音種分類部 F4……音程分類部 F12、68……パターンルールデータベース F13……パターン検査部
FIG. 1 is a system block diagram of a melody analyzer according to an embodiment of the present invention, FIG. 2 is a functional block diagram showing functions of the melody analyzer of FIG. 1, and FIG. 3 exemplifies a format of pitch class identification data. FIG. 4 is a diagram illustrating the format of the pitch class set data, FIG. 5 is a diagram illustrating the format of the code type identification data, FIG. 6 is a diagram illustrating the configuration of the melody memory, and FIG. FIG. 8 shows a configuration of a key (tonality) memory. FIG. 9 shows a musical score of an example of input music data stored in the memories of FIGS. 6 to 8. FIG. 10 is a diagram showing the structure of a chord tone (constituent sound) database memory, FIG. 11 is a diagram showing the structure of a tension note database memory, and FIG. FIG. 13 is a diagram showing a configuration of a melody pattern rule database memory, FIG. 14 is a diagram showing a format of tone type identification data, FIG. 15 is a diagram showing a format of pitch direction identification data, FIG. 16 is a diagram showing a format of pitch distance identification data, FIG. 17 is a diagram showing a list of variables, FIG. 18 is a main flowchart executed by the CPU of FIG. 1, and FIG. 20 is a flowchart of a melody pattern inspection, FIG. 21 is a flowchart of an initialization, and FIG. 22 is a flowchart of a pass process of a melody pattern rule. F1, F2: Melody memory F3, 44: Chord progression memory F2, 46: Key memory F6, 62: Chord tone database F7: Chord tone generator F8, 64: Tension note database 66: Diatonic Memory F5: Diatonic scale generation unit F9: Tension note generation unit F10: Available note generation unit F11: Sound type classification unit F4: Pitch classification unit F12, 68 ... Pattern rule database F13: Pattern Inspection unit

Claims (4)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】メロディを表わすデータを付与するメロデ
ィ付与手段と、 コードを表わすデータを付与するコード付与手段と、 トーナリティを表わすデータを付与するトーナリティ付
与手段と、 上記コードと上記トーナリティとに基づいて、複数の音
種の夫々に関する複数の異なるピッチクラスセットを生
成する音種別ピッチクラスセット生成手段と、 上記メロディの各音のピッチクラスと上記複数の異なる
ピッチクラスセットの各々との関係を判別することによ
り、上記メロディの各音の音種を識別して音種の並びを
形成するメロディ音分類手段と、 上記メロディの隣り合う音の間に形成される音程を評価
して音程の並びを形成する音程評価手段と、 複数の異なるメロディパターンのそれぞれについて、各
メロディパターンを構成する少なくとも1つの音の並び
の特徴を定義するメロディパターンルールのセットを記
憶するメロディパターンルールデータベース手段と、 上記メロディ音分類手段からの上記音種の並びと上記音
程評価手段からの上記音程の並びとに適合するメロディ
パターンルールを上記メロディパターンルールデータベ
ース手段から検索することにより上記メロディを分析す
る分析手段と、 を有することを特徴とするメロディ分析機。
1. A melody providing means for providing data representing a melody, a code providing means for providing data representing a code, a tonality providing means for providing data representing a tonality, and based on the code and the tonality. Sound type pitch class set generating means for generating a plurality of different pitch class sets for each of a plurality of tone types, and determining a relationship between a pitch class of each sound of the melody and each of the plurality of different pitch class sets. By this, a melody sound classification means for identifying a sound type of each sound of the melody and forming a sequence of sound types, and forming a sequence of pitches by evaluating a pitch formed between adjacent sounds of the melody For each of a plurality of different melody patterns. Melody pattern rule database means for storing a set of melody pattern rules defining at least one sound arrangement feature; arrangement of the tone types from the melody sound classification means; and arrangement of the pitches from the pitch evaluation means. Analyzing means for analyzing the melody by searching the melody pattern rule database means for a melody pattern rule suitable for the melody pattern rule.
【請求項2】請求項1記載のメロディ分析機において、
上記音種別ピッチクラスセット生成手段は、 上記コードからコードトーンピッチクラスセットを生成
するコードトーン生成手段と、 上記コードからテンションノートピッチクラスセットを
生成するテンションノート生成手段と、 上記トーナリティからスケールノートピッチクラスセッ
トを生成するスケールノート生成手段と、 上記スケールノートピッチクラスセットと上記テンショ
ンノートピッチクラスセットとからアヴェイラブルノー
トピッチクラスセットを生成するアヴェイラブルノート
生成手段と、 を有することを特徴とするメロディ分析機。
2. The melody analyzer according to claim 1, wherein
The tone type pitch class set generating means includes: a chord tone generating means for generating a chord tone pitch class set from the chord; a tension note generating means for generating a tension note pitch class set from the chord; and a scale note pitch from the tonality. Scale note generating means for generating a class set; and available note generating means for generating an available note pitch class set from the scale note pitch class set and the tension note pitch class set. Melody analyzer.
【請求項3】請求項1記載のメロディ分析機において、
上記メロディパターンルールデータベース手段に記憶さ
れる各メロディパターンルールは、上記音種分類手段か
らの音種の並びと比較すべき少なくとも1つの音種の並
びを表わすデータと、上記音種評価手段からの音種の並
びと比較すべき、上記少なくとも1つの音種の並びにお
ける隣り合う音の間の音程の並びを表わすデータとを有
することを特徴とするメロディ分析機。
3. The melody analyzer according to claim 1, wherein
Each melody pattern rule stored in the melody pattern rule database means includes data representing at least one arrangement of sound types to be compared with the arrangement of sound types from the sound type classification means, and data from the sound type evaluation means. A melody analyzer comprising: data representing a pitch sequence between adjacent sounds in the at least one tone type sequence to be compared with the tone type sequence.
【請求項4】メロディを表わすデータを付与するメロデ
ィ付与手段と、 複数の音種の夫々に関する複数の異なるピッチクラスセ
ットを付与する音種別ピッチクラスセット付与手段と、 上記メロディの各音のピッチクラスと上記複数の異なる
ピッチクラスセットの各々との関係を判別することによ
り、上記メロディの各音の音種を識別して音種の並びを
形成するメロディ音分類手段と、 上記メロディの隣り合う音の間に形成される音程を評価
して音程の並びを形成する音程評価手段と、 複数の異なるメロディパターンのそれぞれについて、各
メロディパターンを構成する少なくとも1つの音の並び
の特徴を定義するメロディパターンルールのセットを記
憶するメロディパターンルールデータベース手段と、 上記メロディ音分類手段からの上記音種の並びと上記音
程評価手段からの上記音程の並びとに適合するメロディ
パターンルールを上記メロディパターンルールデータベ
ース手段から検索することにより上記メロディを分析す
る分析手段と、 を有することを特徴とするメロディ分析機。
4. A melody assigning means for assigning data representing a melody; a tone type pitch class set assigning means for assigning a plurality of different pitch class sets for each of a plurality of tone types; and a pitch class of each sound of the melody. Melody sound classification means for identifying a sound type of each sound of the melody to form a sequence of sound types by determining a relationship between the melody and each of the plurality of different pitch class sets; and adjacent sounds of the melody. Pitch evaluation means for evaluating a pitch formed between the melody patterns to form a row of pitches; and a melody pattern defining at least one feature of a row of sounds constituting each melody pattern for each of a plurality of different melody patterns. A melody pattern rule database means for storing a set of rules; Analysis means for analyzing the melody by searching the melody pattern rule database means for a melody pattern rule that matches the arrangement of the tone types and the arrangement of the pitches from the pitch evaluation means. Melody analyzer.
JP2110425A 1990-04-27 1990-04-27 Melody analyzer Expired - Fee Related JP2958794B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2110425A JP2958794B2 (en) 1990-04-27 1990-04-27 Melody analyzer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2110425A JP2958794B2 (en) 1990-04-27 1990-04-27 Melody analyzer

Publications (2)

Publication Number Publication Date
JPH049892A JPH049892A (en) 1992-01-14
JP2958794B2 true JP2958794B2 (en) 1999-10-06

Family

ID=14535432

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2110425A Expired - Fee Related JP2958794B2 (en) 1990-04-27 1990-04-27 Melody analyzer

Country Status (1)

Country Link
JP (1) JP2958794B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3303617B2 (en) * 1995-08-07 2002-07-22 ヤマハ株式会社 Automatic composer
JP3152123B2 (en) * 1995-09-11 2001-04-03 カシオ計算機株式会社 Automatic composer

Also Published As

Publication number Publication date
JPH049892A (en) 1992-01-14

Similar Documents

Publication Publication Date Title
US6747201B2 (en) Method and system for extracting melodic patterns in a musical piece and computer-readable storage medium having a program for executing the method
Cope An expert system for computer-assisted composition
Roads Research in music and artificial intelligence
USRE40543E1 (en) Method and device for automatic music composition employing music template information
JP2671495B2 (en) Melody analyzer
Simonetta et al. A convolutional approach to melody line identification in symbolic scores
Bergomi et al. Towards a topological fingerprint of music
Cope Recombinant music: using the computer to explore musical style
Ramirez et al. A genetic rule-based model of expressive performance for jazz saxophone
JP2958794B2 (en) Melody analyzer
JP2958795B2 (en) Melody analyzer
Meek et al. Automatic thematic extractor
Ramirez et al. A rule-based evolutionary approach to music performance modeling
De León et al. Musical style identification using self-organising maps
Frieler Computational melody analysis
Vatolkin et al. An evolutionary multi-objective feature selection approach for detecting music segment boundaries of specific types
Camurri et al. An experiment on analysis and synthesis of musical expressivity
Sulyok et al. On the impact of domain-specific knowledge in evolutionary music composition
JP3316547B2 (en) Chording device
Jiang et al. Multi-label automatic indexing of music by cascade classifiers
Schuler Methods of computer-assisted music analysis: history, classification, and evaluation
Židek Controlled music generation with deep learning
Abeßer et al. Bass Playing Style Detection Based on High-level Features and Pattern Similarity.
JP2666063B2 (en) Automatic composer
Maršík Cover Song Identification using Music Harmony Features, Model and Complexity Analysis

Legal Events

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

Free format text: PAYMENT UNTIL: 20070730

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20080730

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20080730

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20090730

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees