JPH0511763A - Note property judging deivce and automatic accompaniment device - Google Patents

Note property judging deivce and automatic accompaniment device

Info

Publication number
JPH0511763A
JPH0511763A JP3185410A JP18541091A JPH0511763A JP H0511763 A JPH0511763 A JP H0511763A JP 3185410 A JP3185410 A JP 3185410A JP 18541091 A JP18541091 A JP 18541091A JP H0511763 A JPH0511763 A JP H0511763A
Authority
JP
Japan
Prior art keywords
chord
keynote
tonality
code
new
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.)
Pending
Application number
JP3185410A
Other languages
Japanese (ja)
Inventor
Hiroko Okuda
広子 奥田
寛 ▲よし▼村
Hiroshi Yoshimura
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 JP3185410A priority Critical patent/JPH0511763A/en
Priority to US07/906,275 priority patent/US5302777A/en
Publication of JPH0511763A publication Critical patent/JPH0511763A/en
Pending legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

PURPOSE:To judge a note property by a method suitable for the musical condition of every part in code progression in a device judging a note property from the code progression. CONSTITUTION:A note property judging device 10 has a first judging part 30, judging a key note in a new code section of code progression with a present key note as grounds, and a second judging part 40, judging a key note in a new code section without making a present key note grounds. The first judging part is effectively applied to a musical condition, in which the function of a code is specifiable from a key note before the code. The second judging part is effectively applied to a musical condition, in which the function of a code is difficult to be specified from a key note preceding the code, (including a condition having no preceding key note and an unknown condition). A note property judging device 10 can be applied to an automatic accompaniment device.

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 tonality determining apparatus for determining the tonality of chord progressions and an automatic accompaniment apparatus for performing automatic accompaniment.

【0002】[0002]

【従来の技術】自動伴奏機能を有する電子楽器は既に知
られている。この種の電子楽器では鍵盤のような演奏入
力装置からキーコード(ノートナンバー)の組み合わせ
としてコードを順次指定してコード進行を入力する。電
子楽器内部には、コードセットの各コードの構成音をル
ート(コード根音)からの音程を示すようにして記憶す
るコード構成音メモリが設けられている。コードルート
/タイプ判別機能により、入力された複数のキーコード
(ノートナンバー)の1つをコードのルートと仮定して
残りのキーコードのルートからの音程を求め、コード構
成音メモリと比較可能な指定コード構成音データを生成
する。コードルート/タイプ判別機能は生成した指定コ
ード構成音データについてコード構成音メモリを検索す
る。指定コード構成音データとコード構成音メモリにお
けるあるコードタイプに対するコード構成音データとの
間での一致が発見されることによりコードのタイプとル
ートが識別される。このようにして、各コードをルート
とタイプで表現したコード進行が得られる。更に、電子
楽器内部には伴奏パターンを記憶する伴奏パターンメモ
リが設けられている。伴奏パターンは伴奏ラインの水平
(時間)情報と垂直(音高)情報とから成る。伴奏解読
機能により、識別したコードのタイプとルートに従っ
て、記憶された伴奏パターンの垂直情報(各伴奏音の垂
直データ)が具体的な音高(ピッチ)を示すデータに変
換される。
2. Description of the Related Art Electronic musical instruments having an automatic accompaniment function are already known. In this type of electronic musical instrument, chord progressions are input by sequentially specifying chords as a combination of key codes (note numbers) from a performance input device such as a keyboard. Inside the electronic musical instrument, there is provided a chord constituent note memory for storing the constituent notes of each chord of the chord set so as to indicate the pitch from the root (chord root note). By the chord root / type discrimination function, one of the input multiple key chords (note numbers) is assumed to be the chord root, and the pitch from the rest of the chord roots is obtained and can be compared with the chord constituent note memory. Generate the specified chord component sound data. The chord root / type discrimination function searches the chord constituent sound memory for the generated designated chord constituent sound data. The type and root of the chord are identified by finding a match between the designated chord constituent note data and the chord constituent note data for a given chord type in the chord constituent note memory. In this way, a chord progression in which each chord is represented by a root and a type is obtained. Further, an accompaniment pattern memory for storing accompaniment patterns is provided inside the electronic musical instrument. The accompaniment pattern is composed of horizontal (time) information and vertical (pitch) information of the accompaniment line. By the accompaniment decoding function, the stored vertical information of the accompaniment pattern (vertical data of each accompaniment sound) is converted into data indicating a specific pitch (pitch) according to the identified chord type and route.

【0003】この種の装置はコード進行における各コー
ドの機能を評価する能力を欠いている。一般に、音楽に
おいてコードのタイプとルートの情報のみから、そのコ
ードの区間で使用可能な音のピッチクラス(音高の種
類)のセットである調性を特定することはできない。例
えば、コードC MAJOR(コード構成音C、E、
G)について述べると、もし、このコードがI(トニッ
ク)の機能を有するのであれば、適合するピッチクラス
のセットとして、C、D、E、F、G、A、B(キーC
のイオニアンスケール)が望ましい。このコードC M
AJORが
This type of device lacks the ability to evaluate the function of each chord in chord progression. In general, it is not possible to specify the tonality, which is a set of pitch classes (pitch types) of sounds that can be used in the chord section, only from the chord type and root information in music. For example, chord C MAJOR (chord constituent notes C, E,
Speaking of G), if this chord has the function of I (tonic), as a set of suitable pitch classes, C, D, E, F, G, A, B (key C
Ionian scale) is desirable. This code C M
AJOR

【外字1】 (ドミナント)の機能を有するのであれば、適合するピ
ッチクラスセットはC、D、E、F、G、A、B♭(キ
ーFのミクソリディアンスケール)である。コードC
MAJORが
[External character 1] If it has the function of (dominant), a suitable pitch class set is C, D, E, F, G, A, B ♭ (key F's mixolydian scale). Code C
MAJOR

【外字2】 (サブドミナント)の機能を有するのであれば、C、
D、E、F♯、G、A、B(キーGのリディアンスケー
ル)がピッチクラスセットとして好ましい。即ち、音楽
的には、コードのタイプとルート及び機能が特定されな
い限り、好ましいピッチクラスセット(調性)を決定し
得ない。にもかかわらず、上述した装置はコード構成音
メモリのルートとタイプのみを使用して、伴奏パターン
を解読して伴奏音のピッチを決定する。したがって、自
動伴奏に好ましくないピッチ(高さ)の音が混ざって不
自然になる可能性がある。これを避けるには記憶される
伴奏パターンの垂直情報を例えばコード構成音のみを含
むように制限すればよいが、そうすると伴奏が単純なも
のになってしまう。
[External character 2] If it has the function of (subdominant), C,
D, E, F #, G, A and B (key G's Lydian scale) are preferred as pitch class sets. That is, in terms of music, a preferable pitch class set (tonality) cannot be determined unless the type, route and function of the chord are specified. Nevertheless, the apparatus described above uses only the root and type of chord constituent note memory to decode the accompaniment pattern to determine the pitch of the accompaniment note. Therefore, there is a possibility that sounds with a pitch (pitch) unfavorable to automatic accompaniment may be mixed and become unnatural. In order to avoid this, the vertical information of the accompaniment pattern to be stored may be limited so as to include only the chord-constituting sounds, but this makes the accompaniment simple.

【0004】本件出願人に係る特願昭62−33359
5号にはコード進行の調性を判定する調性判定装置と調
性判定装置の結果を利用して伴奏を行う自動伴奏装置が
示されている。この調性判定装置はコード進行のコード
間の調性距離を評価アルゴリズムに従って評価すること
によって各コードの調性を判定している。原理上、この
調性判定装置は比較的信頼性の低い調性判定しかできな
い。
Japanese Patent Application No. Sho 62-33359 relating to the present applicant
No. 5 shows a tonality determination device that determines the tonality of chord progression and an automatic accompaniment device that uses the result of the tonality determination device to perform accompaniment. This tonality judging device judges the tonality of each chord by evaluating the tonality distance between chords in chord progression according to an evaluation algorithm. In principle, this tonality determination device can only make relatively low reliability tonality determination.

【0005】調性判定装置と自動伴奏装置の別の例が特
開平2−29787号に示される。この調性判定装置は
与えられたコード進行の中から、特定のコードタイプパ
ターンと特定のルート差パターンをもつ部分を検索して
調を判定する。しかし、この調性判定装置ではコード進
行の先行する部分に対して既に判定した調を後続するコ
ードに対する調判定に利用したり参照したりすることは
決してない。すなわち、この調性判定装置は先行する調
を手掛りとして後続するコードの調を予測する機能を欠
いている。したがって、転調(キーの変化)の検出が遅
れがちになる。このような遅れのために、コード進行の
一部では調が誤って判定されてしまう。このような調性
判定装置の応用である自動伴奏装置は既に述べた理由か
ら十分に満足のゆく伴奏を行い得ない。
Another example of the tonality determining device and the automatic accompaniment device is shown in Japanese Patent Laid-Open No. 2-29787. This tonality judging device searches a given chord progression for a part having a particular chord type pattern and a particular root difference pattern to judge a tonality. However, in this tonality judging device, the key already judged for the preceding part of the chord progression is never used or referred to for the key judgment for the following chord. That is, this tonality determination device lacks the function of predicting the tonality of the following chord using the leading key as a clue. Therefore, the detection of modulation (key change) tends to be delayed. Due to such a delay, the key is erroneously determined in a part of the chord progression. An automatic accompaniment apparatus, which is an application of such a tonality determination apparatus, cannot perform a sufficiently satisfactory accompaniment for the reasons already described.

【0006】最近、本件出願人は先行する調を手掛りに
して後続するコードの調を判定する調性判定装置を提案
している(特願平3−68922号、平成3年3月8日
出願)。この調性判定装置は後続するコードが先行する
調を維持するかどうかを確認する同一調維持確認機能
と、後続するコードの調が先行する調に関係する調かど
うかを判定する転調検出機能を有している。したがっ
て、この調性判定装置はかなり正確にコード進行の各コ
ードの調性を判定することができ、特に近親調への転調
は遅れなしに検出できる。しかし、現実の音楽における
様々な状況のすべてに対応できるものではない。例えば
現実の音楽では、後続する調が先行する調にとは無関係
な調となる場合がある。また、曲の最初の部分のように
先行する調が存在しない場合や、先行する調自体がはっ
きりしない場合もある。これらの音楽的現象の領域に対
して、上記調性判定装置の調性分析能力は十分でなく改
良すべき余地を残している。
Recently, the applicant of the present application has proposed a tonality determination device for determining the key of the following code by using the key of the preceding key as a clue (Japanese Patent Application No. 3-68922, filed March 8, 1991). ). This tonality determination device has an identical key maintenance confirmation function that confirms whether the succeeding chord maintains the preceding key, and a transposition detection function that determines whether the succeeding chord is a key related to the preceding key. Have Therefore, this tonality determination device can fairly accurately determine the tonality of each chord in the chord progression, and in particular can detect the transposition to the intimate key without delay. However, it cannot handle all the various situations in real music. For example, in real music, a succeeding key may be a key unrelated to the preceding key. In some cases, there is no preceding key such as in the first part of the song, or the preceding key itself is not clear. In these areas of musical phenomenon, the tonality analysis ability of the tonality determination device is not sufficient, and there is room for improvement.

【0007】[0007]

【発明が解決しようとする課題】したがって、この発明
の目的は、コード進行におけるいろいろな音楽的状況
(先行するコード区間での調が後続するコード区間での
調の手掛りとなる状況、先行する区間での調が後続する
区間での調の手掛りとならない状況、先行する区間が存
在しない状況、調が不明な状況等)に対応できるように
してコード進行の調性判定能力を改善した調性判定装置
を提供することである。更に、この発明の目的はこのよ
うな調性判定装置を利用して望ましい調性をもつ伴奏を
行う自動伴奏装置を提供することである。
SUMMARY OF THE INVENTION Therefore, an object of the present invention is to provide various musical situations in chord progression (a situation in which a key in a preceding chord section is a clue of a key in a following chord section, a preceding section). Tonality judgment with improved tonality judgment ability of chord progression by dealing with situations in which the key does not become a clue in the section to follow, situations in which there is no preceding section, situations in which the key is unknown, etc.) It is to provide a device. A further object of the present invention is to provide an automatic accompaniment apparatus which utilizes such a tonality judgment apparatus to perform an accompaniment having a desired tonality.

【0008】[0008]

【課題を解決するための手段、作用】この発明によれ
ば、各コードをルートとタイプで表現したコード進行を
付与するコード進行付与手段と、現在の調性に係る現キ
ーノートを表わすデータを記憶する現キーノート記憶手
段と、上記コード進行からの新たなコードの調性を、上
記現キーノートに基づいて判定する第1調性判定手段
と、上記コード進行からの新たなコードの調性を、上記
現キーノートに基づくことなく、新たなコードと新たな
コードに先行するコードとの間に形成されるコードパタ
ーンを分析することによって判定する第2調性判定手段
と、を有することを特徴とする調性判定装置が提供され
る。
According to the present invention, chord progression assigning means for imparting chord progression in which each chord is represented by root and type, and data representing the current keynote relating to the current tonality are provided. Current keynote storage means for storing, first tonality determining means for determining the tonality of a new chord from the chord progression based on the current keynote, and tonality of a new chord from the chord progression And a second tonality determining means for determining by analyzing the chord pattern formed between the new chord and the chord preceding the new chord without being based on the current keynote. A characteristic tonality determination device is provided.

【0009】この構成の場合、第1調性判定手段は現キ
ーノート(新たなコードによって先行するキーノート)
を手掛りにして新たなコードの調性を判定する。一方、
第2調性判定手段は現キーノートを手掛りとすることな
く新たなコードと新たなコードに先行するコードとによ
って形成されるコードパターンを分析することによって
新たなコードの調性を判定する。したがって、この調性
判定装置は先行するキーノートないし調が後続するコー
ド区間での調性の手掛りになり得る音楽的状況だけでな
くそれ以外の音楽的状況、例えば先行するキーノートが
後続するコード区間での調性の手掛りになり得ないよう
な音楽的状況に対処することができ、それによって調性
判定能力が改善される。
In the case of this configuration, the first tonality determining means is the current keynote (keynote preceded by a new code).
To determine the tonality of a new chord. on the other hand,
The second tonality determining means determines the tonality of the new chord by analyzing the chord pattern formed by the new chord and the chord preceding the new chord without using the current keynote as a clue. Therefore, this tonality determination device is not limited to a musical situation that can be a clue of the tonality in the preceding keynote or the chord section in which the key follows, but also in other musical situations such as a chord followed by the preceding keynote. It is possible to cope with a musical situation that cannot be a clue of tonality in a section, thereby improving tonality judgment ability.

【0010】一態様において、第1調性判定手段は現キ
ーノートが特定されているときに動作可能であり、一
方、第2調性判定手段は現キーノートが特定されていな
いとき(現キーノートが存在しない場合も含み得る)
や、第1調性判定手段が新たなコードの調性を特定でき
なかったときに(現キーノートが手掛りにならない音楽
的状況のために)動作可能である。
In one aspect, the first tonality determining means is operable when the current keynote is specified, while the second tonality determining means is operable when the current keynote is not specified (current keynote). This may include the case where there is no note)
Alternatively, it can be operated when the first tonality judgment means cannot specify the tonality of the new chord (because of the musical situation in which the current keynote is not a clue).

【0011】好ましい構成例において、上記第1調性判
定手段は、キーノートを同一に維持するコードのセット
を記憶する同一キーノート維持コードテーブル記憶手段
と、あるキーノートから別のキーノートへの転調を示す
転調コードシーケンスのセットを記憶する転調コードシ
ーケンステーブル記憶手段と、上記現キーノート、上記
同一キーノート維持コードテーブル記憶手段、及び上記
転調コードシーケンステーブル記憶手段を用いて上記コ
ード進行を分析して上記新たなコードの機能名とキーノ
ートを判定する第1機能名・キーノート判定手段と、上
記第1機能名・キーノート判定手段により判定された機
能名とキーノートとに基づき、上記新たなコードの区間
で使用可能なピッチクラスセットを規定する調性データ
を生成する第1調性データ生成手段と、を有し、上記第
2調性判定手段は、キーノートを確立する調確立コード
シーケンスのセットを記憶する調確立コードシーケンス
テーブル記憶手段と、上記調確立コードシーケンステー
ブル記憶手段を用いて上記コード進行を分析して上記新
たなコードの機能名とキーノートを判定する第2機能名
・キーノート判定手段と、上記第2機能名・キーノート
判定手段により判定された機能名とキーノートとに基づ
き、上記新たなコードの区間で使用可能なピッチクラス
セットを規定する調性データを生成する第2調性データ
生成手段と、を有する。
In a preferred configuration example, the first tonality determining means stores the same keynote keeping code table storing means for storing a set of chords for keeping the keynote the same, and from one keynote to another keynote. Analyzing the chord progression using a transposition code sequence table storage means for storing a set of transposition code sequences indicating transposition, the current keynote, the same keynote maintenance code table storage means, and the transposition code sequence table storage means. Based on the first function name / keynote determination means for determining the function name and keynote of the new code, and the function name and keynote determined by the first function name / keynote determination means. The first key that generates tonality data that defines the pitch class set that can be used in the new chord section Data generating means, and the second tonality determining means includes key establishment code sequence table storage means for storing a set of key establishment code sequences for establishing a keynote, and the key establishment code sequence table storage means. A second function name / keynote determination means for determining the function name and keynote of the new chord by analyzing the chord progression, and a function name determined by the second function name / keynote determination means. Second tonality data generating means for generating tonality data defining a pitch class set usable in the new chord section based on the key note.

【0012】好ましくは、上記第1機能名・キーノート
判定手段は、上記新たなコードが上記現キーノートを維
持する機能を有するかどうかを判定するために上記同一
キーノート維持コードテーブル記憶手段を検索する調維
持検索手段と、上記新たなコードとそれに先行するコー
ドとによって形成されるコードパターンが上記現キーノ
ートからそれに関連する関係キーノートへの転調を示唆
する機能を有するかどうかを判定するために、上記転調
コードシーケンステーブル記憶手段を検索する転調検索
手段と、を含み、上記第2機能名・キーノート判定手段
は、上記新たなコードとそれに先行するコードとによっ
て形成されるコードパターンが特定のキーノートを確立
する機能を有するかどうかを判定するために、上記調確
立コードシーケンステーブル記憶手段を検索する調確立
検索手段と、含み、更に調性判定装置は、上記第1調性
判定手段により上記関係キーノートが判定された場合
に、判定された関係キーノートによって上記現キーノー
ト記憶手段を更新する第1キーノート更新手段は、上記
第2調性判定手段により上記特定のキーノートが判定さ
れた場合に、判定された特定のキーノートによって上記
現キーノート記憶手段を更新する第2キーノート更新手
段と、を有する。
[0012] Preferably, the first function name / keynote determination means stores the same keynote maintenance code table storage means to determine whether the new code has a function of maintaining the current keynote. It is determined whether the key-maintaining search means for searching and the chord pattern formed by the new chord and the chord preceding it have the function of suggesting transposition from the current keynote to the related keynote related thereto. Therefore, the second function name / keynote determination means includes a modulation search means for searching the modulation code sequence table storage means, and the second function name / keynote determination means determines a code pattern formed by the new code and a code preceding it. In order to determine whether or not it has the function of establishing a particular keynote, the above key establishment code sequence A key establishment determination means for searching the table storage means, and the tonality determination device further includes the current key according to the determined relationship keynote when the relationship keynote is determined by the first tonality determination means. The first keynote updating means for updating the note storage means updates the current keynote storage means by the determined specific keynote when the specific keynote is determined by the second tonality determination means. Second key note updating means.

【0013】更に、この発明によれば、この発明の調性
判定装置を利用して望ましい調性をもつ伴奏を行う自動
伴奏装置が提供される。すなわち、この発明の自動伴奏
装置は、各コードをルートとタイプで表現したコード進
行を付与するコード進行付与手段と、現在の調性に係る
現キーノートを表わすデータを記憶する現キーノート記
憶手段と、上記コード進行からの新たなコードの調性
を、上記現キーノートに基づいて判定する第1調性判定
手段と、上記コード進行からの新たなコードの調性を、
上記現キーノートに基づくことなく、新たなコードと新
たなコードに先行するコードとの間に形成されるコード
パターンを分析することによって判定する第2調性判定
手段と、上記第1調性判定手段により上記新たなコード
の調性が特定された場合に動作し、上記新たなコードの
区間においてこの特定された調性に従う伴奏を形成する
第1伴奏形成手段と、上記第2調性判定手段により上記
新たなコードの調性が特定された場合に動作し、上記新
たなコードの区間においてこの特定された調性に従う伴
奏を形成する第2伴奏形成手段と、を有することを特徴
とする。
Further, according to the present invention, there is provided an automatic accompaniment apparatus which utilizes the tonality determining apparatus of the present invention to perform an accompaniment having a desired tonality. That is, the automatic accompaniment apparatus of the present invention has a chord progression giving means for giving a chord progression in which each chord is represented by a root and a type, and a current keynote storage means for storing data representing a current keynote relating to the current tonality. A first tonality determining means for determining the tonality of a new chord from the chord progression based on the current keynote, and a tonality of a new chord from the chord progression,
Second tonality determining means for determining by analyzing a chord pattern formed between a new chord and a chord preceding the new chord, not based on the current keynote, and the first tonality determination First accompaniment forming means, which operates when the tonality of the new chord is specified by the means, and forms an accompaniment according to the specified tonality in the section of the new chord, and the second tonality determination means And a second accompaniment forming means that operates when the tonality of the new chord is specified, and that forms an accompaniment according to the specified tonality in the section of the new chord.

【0014】一構成例において、上記第1調性判定手段
と第2調性判定手段の各々は、判定結果である調性の情
報として上記新たなコードの機能名とキーノートを、上
記第1伴奏形成手段と第2伴奏形成手段にそれぞれ与え
る手段を有し、上記第1伴奏形成手段と第2伴奏形成手
段の各々は、与えられた機能名に従う伴奏パターンを発
生する伴奏パターン発生手段と、この伴奏パターン発生
手段からの伴奏パターンの各音高を与えられたキーノー
トに従って移調して伴奏音高を生成する伴奏音高生成手
段とを有することを特徴とする。
In one configuration example, each of the first tonality determining means and the second tonality determining means uses the function name and keynote of the new chord as the tonality information which is the determination result, and the first tonality determining means. An accompaniment pattern generating means for generating an accompaniment pattern in accordance with the given function name, and means for providing the accompaniment forming means and the second accompaniment forming means respectively. And an accompaniment pitch generation means for transposing each pitch of the accompaniment pattern from the accompaniment pattern generation means in accordance with a given key note to generate an accompaniment pitch.

【0015】[0015]

【実施例】以下、図面を参照してこの発明を更に詳細に
説明する。図1(A)〜(E)にこの発明の特徴を組み
込んだ自動伴奏装置を示す。本自動伴奏装置は、大きく
分けて調性判定装置と伴奏形成装置とから成る。図1
(A)に10として調性判定装置を機能ブロック図で示
している。
DESCRIPTION OF THE PREFERRED EMBODIMENTS The present invention will be described in more detail below with reference to the drawings. 1 (A) to 1 (E) show an automatic accompaniment apparatus incorporating the features of the present invention. The automatic accompaniment device is roughly divided into a tonality determination device and an accompaniment forming device. Figure 1
A tonality determination device is shown in FIG.

【0016】調性判定装置10の目的はルートとタイプ
で各コードを表現したコード進行に基づき、各コードの
区間(音楽時間)において使用可能なピッチクラス(音
高の種類)のセット(集合)を定める調性データ(TO
NALITYデータ)を生成することである。調性判定
装置10は、主な要素として、コード進行入力装置2
0、キー/機能進行抽出部(30、40、50〜52か
ら成る)、コード進行知識データベース60、及び調性
データ生成部70を含む。コード進行入力装置20は、
各コードをルートとタイプとで規定したコード進行を付
与する。キー/機能進行抽出部はコード進行入力装置2
0からのコード進行における各コードが示唆するキーノ
ートとコードの機能をコード進行知識データベース60
に記憶される音楽知識に基づいて判定してコード進行に
適合するキーノート進行と機能進行を抽出する。調性デ
ータ生成部70はキー/機能進行抽出部からのキーノー
ト進行と機能進行に応答し、コード進行の各コードの区
間で使用可能なピッチクラスセットを表わす調性データ
を生成する。
The purpose of the tonality determination device 10 is to set (set) a pitch class (pitch type) that can be used in each chord section (music time) based on the chord progression in which each chord is represented by a route and a type. Tonality data (TO
NALITY data). The tonality determination device 10 has a chord progression input device 2 as a main element.
0, a key / function progress extraction unit (consisting of 30, 40, 50 to 52), a chord progress knowledge database 60, and a tonality data generation unit 70. The chord progression input device 20
Each chord is given a chord progression defined by a root and a type. The key / function progress extraction unit is a chord progress input device 2
The chord progression knowledge database 60 shows keynotes and chord functions suggested by each chord in the chord progression from 0.
The keynote progression and the function progression that match the chord progression are extracted based on the music knowledge stored in. The tonality data generation unit 70 responds to the keynote progress and the function progress from the key / function progress extraction unit and generates tonality data representing a pitch class set usable in each chord section of the chord progression.

【0017】この実施例の特徴に従い、キー/機能進行
抽出部は、先行する区間のキーノートを手掛りとして後
続するコードのキーノートと機能を判定する第1判定部
30と、先行するキーノートを手掛りとすることなく後
続するコードと先行するコードとが形成するコードパタ
ーンを分析して後続するコードの機能とキーノートを判
定する第2判定部40を含む。図1(A)では、先行す
るキーノートを「現キーノート」と呼び、後続するコー
ドをコード進行からの「新コード」と呼んでいる。以
下、これらの用語を用いて説明する。
According to the features of this embodiment, the key / function progress extraction unit uses the keynote of the preceding section as a clue to determine the keynote and function of the following chord and the first judgment unit 30 and the preceding keynote. It includes a second determination unit 40 that analyzes a chord pattern formed by a succeeding chord and a preceding chord without using a clue to determine the function and keynote of the succeeding chord. In FIG. 1A, the preceding keynote is called a "current keynote" and the following chord is called a "new chord" from the chord progression. Hereinafter, description will be made using these terms.

【0018】現キーノートを表わすデータは現キーノー
トメモリ51に記憶される。現キーノートメモリ51の
内容は、第1判定部30または第3判定部41により新
たなキーノートが検出される都度、キーノート更新部5
2を介して更新される。
Data representing the current keynote is stored in the current keynote memory 51. The contents of the current keynote memory 51 are stored in the keynote updating unit 5 every time a new keynote is detected by the first judging unit 30 or the third judging unit 41.
Updated via 2.

【0019】第1判定部30は、現キーノートが判明
(確定)している場合に動作し、現キーノートメモリ5
1からのキーノートとコード進行知識データベース60
からの音楽知識とに基づき、コード進行入力装置20か
らの新コードのキーノートと機能を判定する。
The first determination unit 30 operates when the current keynote is known (determined), and the current keynote memory 5
Keynote from 1 and chord progression knowledge database 60
The keynote and function of the new chord from the chord progression input device 20 are determined based on the music knowledge from.

【0020】一方、第2判定部40は、現キーノートが
不明な場合(存在しない場合を含む)や、第1判定部3
0の判定が失敗した場合(特定のキーノート、機能を判
定できなかった場合)に動作し、コード進行入力装置2
0からの新コードとそれに先行するコードとによって形
成されるコードパターンをコード進行知識データベース
60の音楽知識に従って分析して新コードのキーノート
と機能を判定する。
On the other hand, the second judging unit 40 determines whether the current keynote is unknown (including the case where it does not exist) or the first judging unit 3
It operates when the judgment of 0 fails (when a particular keynote or function cannot be judged), and the chord progression input device 2
The chord pattern formed by the new chord from 0 and the chord preceding it is analyzed according to the musical knowledge of the chord progression knowledge database 60 to determine the key note and function of the new chord.

【0021】現キーノートが確定しているか未確定(保
留)であるかの情報を記憶するために、キー保留フラグ
50を設けている。キー保留フラグ50はコード進行の
分析開始時にリセット状態(現キーノートがないことを
表わす)に初期化され、第2判定部40により特定のキ
ーノートが検出されるとセットされて現キーノートが確
定したことを表わす。いったんセット状態(キー確定状
態)になった後も、第1判定部30と第2判定部40の
いずれも、コード進行の後続コードである新コードのキ
ーノートを特定できなかったときは再びキー保留状態に
リセットされて現キーノートが不明であることを表わ
す。
A key hold flag 50 is provided to store information as to whether the current keynote is fixed or unfixed (hold). The key hold flag 50 is initialized to a reset state (indicating that there is no current keynote) at the start of analysis of chord progression, and is set when the specific keynote is detected by the second determination unit 40, and the current keynote is set. Indicates that it has been confirmed. Even after the setting state (key confirmation state) is once entered, when neither the first determination unit 30 nor the second determination unit 40 can identify the keynote of the new chord that is the subsequent chord in the chord progression, the key is pressed again. It indicates that the current keynote is unknown because it is reset to the hold state.

【0022】第1判定部30は、コード進行知識データ
ベース60の同一キーノート維持コードテーブル61に
記憶される音楽知識に従いコード進行入力装置20から
の新コードが現キーノートを維持するかどうかを判定す
る調維持判定能力を有する。ここに、同一キーノート維
持コードテーブル61はキーノートを同一に維持するコ
ードのセットを記憶する。記憶容量を節約するため、同
一キーノート維持コードテーブル61の各コードエント
リは、キーノートとコードルートとコードタイプとの組
合せによる表現形式ではなく、機能名の形式、即ち、コ
ード機能とコードタイプとの組合せによる形式をとるの
が好ましい。この場合、第1判定部30内の調維持判定
手段は、図示のように、機能生成部31と調維持検索部
32とで構成できる。機能生成部31は、コード進行入
力装置からの新コードを現キーノートメモリ51にある
現キーノートによって評価して新コードの機能を生成す
る。調維持検索部32は、生成された機能と(コード進
行入力装置20から与えられた)新コードのタイプとか
らなる新コードの機能名をもつコードエントリを同一キ
ーノート維持コードテーブル61から検索する。検索に
より、新コードの機能名と一致するコードエントリが見
つかった場合(33)は、機能生成部31での仮定、す
なわち、現キーノートを新コード区間におけるキーノー
トとみなした仮定が正しかったことになる。これが成立
する場合は、新コードの機能名(タイプと機能)とキー
ノートが調性データ生成部70に渡され、ここで新コー
ドの区間で使用可能なピッチクラスセットを表わす調性
データが生成される。
The first judging unit 30 judges whether the new chord from the chord progression input device 20 maintains the current keynote according to the musical knowledge stored in the same keynote keeping chord table 61 of the chord progression knowledge database 60. It has the ability to judge the key maintenance. Here, the same keynote keeping code table 61 stores a set of chords for keeping the same keynote. In order to save the storage capacity, each code entry of the same keynote maintenance code table 61 is not the expression form by the combination of the keynote, the chord root and the chord type, but the form of the function name, that is, the chord function and chord type It is preferable to take the form of a combination of In this case, the key maintenance determination means in the first determination unit 30 can be configured by the function generation unit 31 and the key maintenance search unit 32 as illustrated. The function generator 31 evaluates the new chord from the chord progression input device using the current keynote in the current keynote memory 51 to generate the function of the new chord. The key keeping search unit 32 searches the same keynote keeping chord table 61 for a chord entry having a new chord function name consisting of the generated function and the new chord type (given from the chord progression input device 20). . If the search finds a code entry that matches the function name of the new chord (33), the assumption in the function generator 31, that is, the assumption that the current keynote is regarded as the keynote in the new chord section was correct. become. If this is the case, the function name (type and function) of the new chord and the keynote are passed to the tonality data generator 70, where tonality data representing the pitch class set that can be used in the new chord section is generated. To be done.

【0023】更に、第1判定部30は、同一キーノート
維持コードテーブルに、現キーノートで評価した機能を
有する新コードに相当するコードが含まれない場合に、
転調の可能性を調べる転調判別手段を備えている。転調
判別手段は、コード進行知識データベース60の転調コ
ードシーケンステーブルに記憶される音楽知識に従っ
て、新コードとそれに先行するコードとによって形成さ
れるコードパターンが現キーノートからそれに関係する
キーノートへの転調を示唆するかどうかを判別する。こ
の目的のため、転調コードシーケンステーブル62は関
係キーノートへの転調を示唆するコードシーケンスのセ
ットを記憶する。テーブル62の各転調コードシーケン
スエントリは種々の形式で表現できる。一形式におい
て、各転調コードシーケンスエントリは、ピボットコー
ドとピボットコードに後続する転調後のコードを含み、
ピボットコードは転調前の機能名と関係キーノートへの
転調後の機能名とによって表現され、転調後のコードは
転調後の機能名によって表現される。この場合、転調判
定手段は図1(A)に示す関係キーノート生成部34、
機能生成部35、転調検索部36によって構成できる。
関係キーノート生成部34は現キーノートメモリ51に
ある現キーノートに関係するキーノート(関係キーノー
ト)を生成する。好ましくは、関係キーノート生成部3
4は複数の関係キーノートを生成する。機能生成部35
は関係キーノートと新コードとを受け、各々の関係キー
ノートで評価した新コードの機能を生成する。更に機能
生成部35は新コードに先行するコード(直前コード)
を現キーノートで評価した機能と、直前コードを各関係
キーノートで評価した機能を生成する。機能生成部35
で生成されたこれらの機能は新コードのタイプと直前コ
ードのタイプ、各関係キーノートのデータとともに転調
検索部36に入力される。転調検索部36は、関係キー
ノート別の入力データ(現キーノートでそれぞれ評価し
た直前コードの機能名及び現キーノートで評価した新コ
ードの機能名)と一致する転調コードシーケンスエント
リを転調コードシーケンステーブル62から検索する。
ある関係キーノートについて、転調コードシーケンステ
ーブル62がそのような転調コードシーケンスを含むな
ら、(37)、直前コードと新コードとから成るコード
パターンによって、現キーノートから上記関係キーノー
トへの転調が示唆されていることになり、機能生成部3
5で生成した新コードの関係キーノートから見た機能
は、新コードの正しい機能を表わしていることになる。
これが成立する場合、関係キーノート、新コードのタイ
プ及び関係キーノートで評価した新コードの機能が調性
データ生成部70に渡され、ここで、新コードの区間に
おいて使用可能なピッチクラスセットを表わす調性デー
タが生成される。また、関係キーノートはキーノート更
新部52にも渡され、キーノート更新部52により、現
キーノートメモリ51は関係キーノートに更新される。
Further, when the same keynote keeping code table does not include the code corresponding to the new code having the function evaluated by the current keynote, the first judging section 30 determines that
A modulation determination means for checking the possibility of modulation is provided. The transposition determining means transposes the chord pattern formed by the new chord and the chord preceding it from the current keynote to the related keynote according to the musical knowledge stored in the transposition chord sequence table of the chord progression knowledge database 60. Determine whether to suggest. For this purpose, the transposed chord sequence table 62 stores a set of chord sequences that suggest transposition to the relevant keynote. Each transposed code sequence entry in table 62 can be represented in various formats. In one form, each transposed chord sequence entry includes a pivot chord and a post transposed chord that follows the pivot chord,
The pivot code is represented by the function name before modulation and the function name after modulation on the related keynote, and the code after modulation is represented by the function name after modulation. In this case, the modulation determination means is the related keynote generation unit 34 shown in FIG.
It can be configured by the function generation unit 35 and the modulation search unit 36.
The related keynote generation unit 34 generates a keynote (related keynote) related to the current keynote in the current keynote memory 51. Preferably, the related keynote generator 3
4 generates a plurality of related keynotes. Function generator 35
Receives the related keynote and the new code, and generates the function of the new code evaluated in each related keynote. Furthermore, the function generator 35 is a code preceding the new code (previous code).
Generates the function evaluated by the current keynote and the function evaluated by the previous code with each related keynote. Function generator 35
These functions generated in step (4) are input to the transposition search unit 36 together with the type of the new chord, the type of the immediately preceding chord, and the data of each related keynote. The transposition search unit 36 creates a transposition code sequence entry that corresponds to the input data for each related keynote (the function name of the immediately preceding code evaluated by the current keynote and the function name of the new code evaluated by the current keynote). The table 62 is searched.
If the transposing code sequence table 62 includes such a transposing code sequence for a certain related keynote, (37) the transposition from the current keynote to the related keynote is performed by the code pattern consisting of the immediately preceding code and the new code. It has been suggested that the function generator 3
The function viewed from the relational keynote of the new chord generated in step 5 represents the correct function of the new chord.
If this is the case, the related keynote, the type of the new chord, and the function of the new chord evaluated by the related keynote are passed to the tonality data generation unit 70, where the pitch class set that can be used in the new chord section is set. The tonality data that it represents is generated. The related keynote is also passed to the keynote updating unit 52, and the keynote updating unit 52 updates the current keynote memory 51 to the related keynote.

【0024】第1判定部30において新コードに対する
キーノートと機能の判定が失敗に終った場合(調維持検
索部32と転調検索部37の検索により各々の入力デー
タと一致するエントリが同一キーノート維持コードテー
ブル61、転調コードシーケンステーブルにないことが
判明した場合)、新コードに対するキー/機能判定のタ
スクは第2判定部40に引き継がれる。さらに、第2判
定部40は現キーノートが不明なときにも新コードに対
するキー/機能判定のタスクを受けもつ。
When the keynote and the function for the new chord have failed in the first judging section 30 (the key matching is the same keynote for the entries that match the respective input data as searched by the key keeping and searching section 32 and the transposing and searching section 37). When it is determined that the code is not in the maintenance code table 61 or the modulation code sequence table), the task of key / function determination for the new code is handed over to the second determination unit 40. Further, the second determination unit 40 takes charge of the task of key / function determination for the new code even when the current keynote is unknown.

【0025】第2判定部40は現キーノートの情報にた
よることなく、コード進行知識データベース60の調確
立コードシーケンステーブル63に記憶される音楽知識
に従って、新コードとそれに先行するコードとによって
形成されるコードパターンが特定のキーノートの確立を
示唆するかどうかを判定する。この目的のため、調確立
コードシーケンステーブル63は、キーノートないし調
を確立するコードシーケンス(調確立コードシーケン
ス)のセットを記憶する。テーブル63にエントリされ
る各調確立コードシーケンスは、例えば次のような表現
形式をもつ。コードシーケンスの最後のコードはコード
シーケンスが確立するキーノートで評価した機能名(機
能とタイプ)で表現され、最後のコードに先行するコー
ドはそのコードのタイプとそのコードのルートの直後の
コードのルートからの音程(ルート差)とによって表現
される。この表現形式の調確立コードシーケンステーブ
ル63わ採用した場合、第2判定部40はルート差算出
部41と調確立検索部42とで構成できる。ルート差算
出部41はコード進行入力装置20からの分析すべきコ
ードパターン、即ち新コードとそれに先行する1以上の
コードとから成るコードパターンにおける隣り合うコー
ド間のルート差を算出する。この結果、新コードをパタ
ーンの最後のコードとする分析コードパターンは、タイ
プのパターンとルート差のパターンとによって表現しな
おされたことになる。調確立検索部42は、このような
分析コードパターンをもつ調確立コードシーケンスを調
確立コードシーケンステーブル63から検索する。その
ような調確立コードシーケンスのエントリがテーブル6
3にあれば(43)、新コードを末尾とする分析コード
パターンはキーノートを確立するものであり、確立され
るキーノートの種類は、見つけ出した調確立コードシー
ケンスから与えられる最後のコードの機能とコード進行
入力装置20から与えられる新コードのルートとから特
定される。即ち、キーノートからのルートの音程を機能
の値とするキーノートが分析コードパターンによって確
立されるキーノートである。
The second judging section 40 forms the new chord and the preceding chord according to the musical knowledge stored in the key establishment chord sequence table 63 of the chord progression knowledge database 60 without depending on the information of the current keynote. Determine whether the chord pattern played suggests the establishment of a particular keynote. For this purpose, the key establishment code sequence table 63 stores a set of code sequences (key establishment code sequences) that establish keynotes or keys. Each key establishment code sequence entered in the table 63 has the following expression format, for example. The last code in the code sequence is expressed by the function name (function and type) evaluated in the keynote established by the code sequence, and the code preceding the last code is the type of the code and the code immediately after the root of the code. It is expressed by the pitch from the route (route difference). When the key establishment code sequence table 63 of this expression format is adopted, the second determination unit 40 can be configured by the route difference calculation unit 41 and the key establishment search unit 42. The root difference calculation unit 41 calculates a root difference between adjacent chords in a chord pattern to be analyzed from the chord progression input device 20, that is, a chord pattern consisting of a new chord and one or more chords preceding it. As a result, the analysis code pattern in which the new code is the last code of the pattern is re-expressed by the type pattern and the route difference pattern. The key establishment search unit 42 searches the key establishment code sequence table 63 for a key establishment code sequence having such an analysis code pattern. An entry for such a key establishment code sequence is shown in Table 6.
3 (43), the analysis code pattern ending with the new chord establishes the keynote, and the type of keynote established is the function of the last chord given from the key establishment chord sequence found. And the route of the new chord given from the chord progression input device 20. That is, the keynote whose function value is the pitch of the route from the keynote is the keynote established by the analysis code pattern.

【0026】調確立検索部42の検索の成功により、新
コードの機能とキーノートを特定できた場合、第2判定
部40は、キーが確立したことを示すためキー保留フラ
グ50をセットする。更に、第2判定部40はキーノー
ト更新部52を介して弦キーノートメモリ51を新たに
確定したキーノートに更新する。更に、第2判定部40
の判定された新コードの機能とキーノートは新コードの
タイプの情報とともに調性データ生成部70に渡され、
ここで新コードの区間で使用可能なピッチクラスセット
が決定される。
When the function of the new chord and the keynote can be specified by the successful search of the key establishment search section 42, the second determination section 40 sets the key hold flag 50 to indicate that the key has been established. Further, the second determination unit 40 updates the string keynote memory 51 to the newly confirmed keynote via the keynote updating unit 52. Furthermore, the second determination unit 40
The determined new chord function and keynote are passed to the tonality data generation unit 70 together with the new chord type information.
Here, the pitch class set that can be used in the new chord section is determined.

【0027】一方、調確立検索部42の検索の失敗によ
り新コードの機能とキーノートを特定できなかった場
合、第2判定部40はキーが不明になったことを示すた
め、キー保留フラグ50をリセットする。この場合、調
性データ生成部70は以下に述べる方法により新コード
の区間で使用可能なピッチクラスセットを規定する調性
データを生成する。
On the other hand, when the function of the new chord and the key note cannot be specified due to the failure of the key establishment search section 42, the second determination section 40 indicates that the key has become unknown, and therefore the key hold flag 50 is set. To reset. In this case, the tonality data generation unit 70 generates tonality data that defines the pitch class set that can be used in the new chord section by the method described below.

【0028】この実施例の特徴に従い、調性データ生成
部70は、(第1判定部30と第2判定部40を含む)
キー/機能判定手段により新コードの機能とキーノート
が特定できた場合は第1の方法で(狭い調性解釈によ
り)新コードの区間で使用可能なピッチクラスセットを
規定する調性データを生成し、新コードの機能とキーノ
ートが特定できなかった場合には第1の方法とは異なる
第2の方法で(広い調性解釈により)新コードの区間で
使用可能なピッチクラスセットを規定するデータを生成
する。
In accordance with the features of this embodiment, the tonality data generating section 70 (including the first determining section 30 and the second determining section 40).
When the function / keynote of the new chord can be identified by the key / function determination means, the first method (by narrow tonality interpretation) generates tonality data that defines the pitch class set that can be used in the new chord section. However, if the function and keynote of the new chord cannot be specified, the pitch class set that can be used in the section of the new chord is defined by the second method different from the first method (by wide tonality interpretation). Generate data.

【0029】キー/機能判定手段の判定により新コード
の機能とキーノートが特定できたかどうかを知るため
に、調性データ生成部70はキー保留フラグ50の状態
を読む。セット状態(キー保留解除状態)であれば、機
能とキーノートは特定されており、リセット状態(キー
保留状態)であれば特定されていない。“キー保留解除
状態”のとき、調性データ生成部70は第1判定部30
または第2判定部40で特定された新コード機能とキー
ノート、及びコード進行入力装置20から与えられる新
コードのタイプとに基づいて新コードの区間で使用可能
なピッチクラスセットを決定する。なお、新コードの機
能とキーノートとタイプとの組み合わせの代りにこれと
等価な組み合わせに基づいて使用可能なピッチクラスセ
ットを決定してもよい。一般化すると、調性データ生成
部70は新コードの機能とルートとキーノートのうち少
なくとも2つ(例えば新コードの機能とルート)と、新
コードのタイプとの組み合わせから使用可能なピッチク
ラスセットを決定することができる。このようなピッチ
クラスセットは上記の組み合わせに適したものであり、
それを用いた旋律は調性を明確にするように働く。この
ようなピッチクラスセットを得るため、調性データ生成
部70に機能名/スケール変換テーブル71を設け、新
コードの機能名(機能とタイプの組み合わせ)をスケー
ルに変換するのが好ましい。使用可能なピッチクラスセ
ットは機能名を変換したスケールとキーノートとの組み
合わせにより規定される(テーブル71内のスケールの
開始音である基音がキーノートから所定音程をもつとし
て定義されている場合)。あるいは変換されたスケール
と新コードのルートとの組み合わせによって使用可能な
ピッチクラスセットが規定される(スケールの基音=コ
ードルートとした場合)。
The tonality data generator 70 reads the state of the key hold flag 50 in order to know whether or not the function of the new code and the keynote can be specified by the judgment of the key / function judging means. In the set state (key hold release state), the function and the key note are specified, and in the reset state (key hold state), they are not specified. In the “key hold release state”, the tonality data generation unit 70 causes the first determination unit 30 to
Alternatively, the pitch class set that can be used in the new chord section is determined based on the new chord function specified by the second determination unit 40, the keynote, and the type of the new chord given from the chord progression input device 20. Instead of the combination of the function of the new chord, the keynote and the type, the usable pitch class set may be determined based on the equivalent combination. As a generalization, the tonality data generator 70 uses a pitch class set that can be used by combining at least two of the new chord function, the root and the keynote (for example, the new chord function and the root) and the new chord type. Can be determined. Such a pitch class set is suitable for the above combinations,
The melody using it works to clarify the tonality. In order to obtain such a pitch class set, it is preferable to provide a function name / scale conversion table 71 in the tonality data generation unit 70 and convert the function name (combination of function and type) of the new chord into a scale. The usable pitch class set is defined by the combination of the scale converted from the function name and the keynote (when the fundamental note which is the starting note of the scale in the table 71 is defined as having a predetermined pitch from the keynote). . Alternatively, the usable pitch class set is defined by the combination of the converted scale and the root of the new chord (when the fundamental of the scale = the chord root).

【0030】一方、キー保留フラグ50が“キー保留状
態”のとき、即ち、いずれの判定部30、40も新コー
ドの機能とキーノートを特定できなかったときは、調性
データ生成部70は(特定されない新コードの機能ある
いは新コードがとり得る複数の機能の可能性と)新コー
ドのタイプとルートに基づく広い調性解釈により新コー
ドの区間で使用可能なピッチクラスセットを規定する。
このピッチクラスセットは旋律に使用された場合に複数
の調性の可能性を許容するように働く。通常、このピッ
チクラスセットは機能を特定した場合に新コードの区間
で使用可能となるピッチクラスセットの一部である。好
ましくは、機能を特定できない場合に使用可能なピッチ
クラスセットは、新コードがとる可能性のある複数の機
能のすべてに対して共通して使用可能なピッチクラスセ
ットによって定めるのがよい。
On the other hand, when the key hold flag 50 is in the "key hold state", that is, when neither of the judgment units 30 and 40 can specify the function of the new chord and the key note, the tonality data generation unit 70 A wide tonality interpretation based on the type and route of the new chord (with the possibility of unspecified new chord functions or possible multiple functions of the new chord) defines the pitch class set that can be used in the new chord section.
This pitch class set serves to allow multiple tonality possibilities when used in a melody. Usually, this pitch class set is a part of the pitch class set that can be used in the section of the new chord when the function is specified. Preferably, the pitch class set that can be used when the function cannot be specified is defined by the pitch class set that can be commonly used for all of the plurality of functions that the new chord may take.

【0031】この方式による使用可能なピッチクラスセ
ットの決定法を図1(F)に例示する。図1(F)の方
式(共通PC方式)によれば、コードタイプから、可能
性のある複数の機能を想定し、コードタイプが各々の機
能をもつときに使用可能スケール(ピッチクラスセッ
ト)を定め、これらのスケールに共通のピッチクラスを
求め、これを機能が特定できない場合に使用可能なピッ
チクラスセットとしている。例えば、新コードのルート
がC、タイプがメジャー(Major)だとすると、タ
イプ“Major”から、新コードの取り得る機能は
A method of determining a pitch class set that can be used by this method is illustrated in FIG. 1 (F). According to the method of FIG. 1 (F) (common PC method), a plurality of possible functions are assumed from the chord type, and the usable scale (pitch class set) is set when the chord type has each function. The pitch class common to these scales is determined, and this is used as the pitch class set that can be used when the function cannot be specified. For example, if the root of the new chord is C and the type is Major, the functions that the new chord can take from the type "Major"

【外字3】 [External character 3] Or

【外字2】か[External character 2]

【外字1】である。コードC Majorの機能が[External character 1]. The function of the code C Major

【外字3】のとき使用可能なピッチクラスセット(PC
S)は C、D、E、F、G、A、B であり、機能
Pitch class set (PC
S) is C, D, E, F, G, A, B, and functions

【外字2】に対してはPCSは C、D、E、F#、G、A、B であり、機能PCS for [gaiji 2] C, D, E, F #, G, A, B And features

【外字1】に対してPCSは C、D、E、F、G、A、B♭ である。したがって、これらのPCSに共通なピッチク
ラスは、 C、D、E、G、A であり、これが、機能とキーノートを特定できなかった
ときの新コードC Majorの区間において使用可能
なピッチクラスセットを規定する。このピッチクラスセ
ット(C、D、E、G、A)は3つの機能
PCS is C, D, E, F, G, A, B ♭ for [External character 1]. Therefore, the pitch classes common to these PCSs are C, D, E, G, and A, which are the pitch class sets that can be used in the section of the new chord C Major when the function and the keynote cannot be specified. Stipulate. This pitch class set (C, D, E, G, A) has three functions

【外字4】 の可能性に対するピッチクラスセット(各々が特定の調
性を明確にする性格をもつ)に共通なピッチクラスで構
成されるので、広い調性(3つの個々の調C、G、Fの
可能性)を示す。換言すると機能とキーノートを特定で
きなかったコードC Majorの区間でこのピッチク
ラスセット(C、D、E、G、A)による旋律を使用す
れば、この区間の前後の調がC、G、Fのいずれであっ
ても(調Cを明確にするピッチクラスセット(C、D、
E、F、G、A、B)による旋律、調Gを明確にするピ
ッチクラスセット(C、D、E、F#、G、A、B)に
よる旋律、調Fを明確にするピッチクラスセット(C、
D、E、F、G、A、B♭)の旋律、のいずれが使用さ
れても)、この前後の調の性格を損わないように作用す
る。例えば、後続する区間でピッチクラスセット(C、
D、E、F、G、A、B)による旋律が演奏されたとす
ると、聴者はその時点で調がCであることを明確に知
る。また、それに先立って演奏されたコードC Maj
or区間での旋律と調Cを明確にした後続の旋律との間
に転調感を経験しないので、先行する旋律の調をCであ
ることに気付く。
[External character 4] Pitch class set for each possibility (each of which has a character that defines a particular tonality) is composed of a common pitch class, so a wide tonality (possibility of three individual keys C, G, F) ) Is shown. In other words, if the melody based on this pitch class set (C, D, E, G, A) is used in the section of the chord C Major whose function and keynote could not be specified, the key before and after this section is C, G, Any of F (Pitch class set (C, D,
E, F, G, A, B) melody, pitch class set to clarify key G (C, D, E, F #, G, A, B) melody, pitch class set to clarify key F (C,
(D, E, F, G, A, B ♭), whichever is used), acts so as not to impair the character of the key before and after this. For example, the pitch class set (C,
If a melody of D, E, F, G, A, B) is played, then the listener clearly knows that the key is C. Also, the chord C Maj played prior to that
Since the transposing feeling is not experienced between the melody in the or section and the subsequent melody in which the key C is clarified, it is noticed that the key of the preceding melody is C.

【0032】このようにして、本調性判定装置では、機
能とキーノートを特定できないコードの区間に対するピ
ッチクラスセットをそのコードのタイプとルートによる
広い調性解釈に従って決定することにより、調性の流れ
に欠陥(誤った転調)をもちこまない調性データ(ピッ
チクラスセット)の列を得ることができる。これに対
し、従来の調性判定装置ではコードの機能の特定が困難
な場合でも、無理やり、音楽的根拠なしに、そのコード
の機能を特定し(そのコードがとり得る複数の機能の可
能性のなかから勝手に1つの機能を選択し)、根拠のな
いこのコード機能に対応するピッチクラスセットを転調
として決定する。その結果、コード進行から得られる調
性の進行が欠陥や誤った転調を含むおそれがある。
In this manner, the tonality determining apparatus determines the tonality of the tonality by determining the pitch class set for the chord section whose function and keynote cannot be specified according to a wide tonality interpretation according to the chord type and route. It is possible to obtain a sequence of tonality data (pitch class set) that does not introduce flow defects (wrong transpositions). On the other hand, even if it is difficult to specify the function of the chord with the conventional tonality determination device, the function of the chord is specified without force (without the musical basis) (the possibility of a plurality of functions that the chord can have is Among them, one function is arbitrarily selected), and the pitch class set corresponding to this unfounded chord function is determined as the transposition. As a result, the progression of tonality obtained from chord progression may include defects and erroneous transpositions.

【0033】図1(A)に戻り、調性データ生成部70
は、機能を特定できないコードの区間で使用可能なピッ
チクラスセットを生成するために、コードのタイプをス
ケールに変換するタイプ/スケール変換テーブル72を
含む。変換されたスケールとコードのルートとの組み合
わせにより使用可能なピッチクラスセットが定められ
る。所望であれば、ルート・タイプ/ピッチクラスセッ
ト変換テーブルメモリを用いて、ルートとタイプとの組
み合わせから直接的に使用可能なピッチクラスセットを
得てもよいが、記憶容量面では不利である。例えば、ル
ート・タイプ/ピッチクラスセット変換テーブルは各ル
ート・タイプ組合せ入力に対して図1(F)に例示する
ような共通PCを返すルックアップテーブルメモリによ
って実現できる。また、タイプ/スケール変換テーブル
72は、各コードタイプ入力に対し、スケール開始音を
コードルートとする、音程構造表現のスケールを返すル
ックアップテーブルによって実現できる。例えば、タイ
プ“Major”に対するスケールの音程構造表現デー
タは(0、2、4、7、9)で表現できる(ここに、
“0”がコードルートと同じピッチクラスをもつスケー
ルの基音を表わし、“2”はスケールの基音から半音
(数値“1”)の2倍の音程をもつスケールの第2音を
表わし、以下、同様である)。ピッチクラスC〜Bをそ
れぞれ“0”から“11”で表現してみる。コードのル
ートのピッチクラスが“C”即ちデータ“0”だとする
と、このコードルートデータ“0”をスケールの各音の
データに加えることにより、機能を特定できないコード
C Majorの区間において使用可能なピッチクラス
セットデータ(0、2、4、7、9)即ちピッチクラス
セット(C、D、E、G、A)が得られる。
Returning to FIG. 1A, the tonality data generator 70
Includes a type / scale conversion table 72 for converting a chord type into a scale in order to generate a pitch class set usable in a chord section whose function cannot be specified. The combination of the converted scale and the root of the chord defines the usable pitch class set. If desired, a route type / pitch class set conversion table memory may be used to obtain a usable pitch class set directly from the combination of route and type, but this is disadvantageous in terms of storage capacity. For example, the route type / pitch class set conversion table can be implemented by a lookup table memory that returns a common PC as illustrated in FIG. 1F for each route type combination input. Further, the type / scale conversion table 72 can be realized by a look-up table that returns the scale of the pitch structure expression with the scale start sound as the chord root for each chord type input. For example, the pitch structure expression data of the scale for the type “Major” can be expressed by (0, 2, 4, 7, 9) (here,
"0" represents the fundamental note of the scale having the same pitch class as the chord root, and "2" represents the second note of the scale having a pitch of twice the semitone (numerical value "1") from the fundamental note of the scale. The same). Pitch classes CB will be expressed as "0" to "11", respectively. If the pitch class of the chord root is "C", that is, data "0", the pitch that can be used in the section of the chord C Major whose function cannot be specified by adding the chord root data "0" to the data of each note of the scale. Class set data (0, 2, 4, 7, 9), that is, pitch class set (C, D, E, G, A) is obtained.

【0034】まとめると、図1(A)の調性判定装置1
0の主な特徴、利点は以下の通りである。 (A)従来の調性判定装置と異なり、先行する調を手掛
りにして後続するコードの区間における調性を判定する
第1調性判定機能(30、61、62、70)と、先行
する調を手掛りとすることなくコードの区間の調性を判
定する第2調性判定機能(40、63、70)の両方を
備えている。 (B)両調性判定機能は互いの弱点を補完し合う。すな
わち先行する区間の調を手掛りにすると後続区間の調を
容易に決定できるような音楽的状況に対する調性判定能
力は第1調性判定機能が高い。第2調性判定機能はこの
ような音楽的状況では後続する区間の正しい調の判定や
転調の検出が遅れがちになる。一方、先行する区間の調
を手掛りにするのが困難な音楽的状況に対する問題解決
能力(調性判定能力)は第2調性判定機能が優れてい
る。したがって、第1調性判定機能と第2調性判定機能
を組み合わせることにより、従来の調性判定装置では達
成できないような調性判定能力をもつ調性判定装置を提
供できる。 (C)調を特定できる音楽的状況(従来の調性判定装置
が前提としている状況)だけでなく調を特定できないよ
うな音楽的状況をも考慮している(50)。すなわち、
機能を特定できないコードがコード進行に含まれる状況
をも考慮している。 (D)(キー・機能判定手段30、40により)機能を
特定できたコードに対しては、そのコード区間における
調性を狭く解釈し(71)、一方、機能を特定できなか
ったコードに対してはそのコード区間における調性を広
く解釈している(72)。これにより、流れが自然な調
性進行が得られる。 (F)すなわち、機能を特定できたコードに対しては、
そのコードとタイプとルートと特定した機能、の組み合
わせ(またはこれと等価な組み合わせ)に従ってそのコ
ード区間で使用可能なピッチクラスセットを決定し、一
方、機能を特定できなかったコードに対しては、そのコ
ードのとり得る複数の機能の可能性を考慮してそのコー
ドのタイプとルートとからそのコード区間で使用可能な
ピッチクラスセットを決定している。
In summary, the tonality determination device 1 shown in FIG.
The main features and advantages of 0 are as follows. (A) Unlike the conventional tonality determination device, the first tonality determination function (30, 61, 62, 70) that determines the tonality in the following chord section by using the leading key as a clue and the leading key It has both of the second tonality judgment functions (40, 63, 70) for judging the tonality of the chord section without using as a clue. (B) The tonality determination function complements each other's weak points. That is, the first tonality determining function has a high tonality determining ability with respect to a musical situation in which a key in the preceding section can be easily used to determine the key in the subsequent section. In such a musical situation, the second tonality determination function tends to delay the determination of the correct key and the detection of the transposition in the subsequent section. On the other hand, the problem solving ability (tonality determination ability) for the musical situation in which it is difficult to use the key of the preceding section as a clue is excellent in the second tonality determination function. Therefore, by combining the first tonality determination function and the second tonality determination function, it is possible to provide a tonality determination device having a tonality determination capability that cannot be achieved by the conventional tonality determination device. (C) Consideration is given not only to a musical situation in which a key can be specified (a situation presumed by a conventional tonality determination device) but also in a musical situation in which a key cannot be specified (50). That is,
We also take into account situations where chord progressions include chords whose function cannot be specified. (D) For a chord whose function can be specified (by the key / function judging means 30 and 40), the tonality in the chord section is narrowly interpreted (71), while for a code whose function cannot be specified. Widely interprets the tonality in that chord section (72). This gives a tonality progression with a natural flow. (F) That is, for the code whose function can be specified,
The pitch class set that can be used in the chord section is determined according to the combination of the chord, the type, the root and the specified function (or a combination equivalent thereto), while for the chord whose function cannot be specified, The pitch class set that can be used in the chord section is determined from the chord type and route in consideration of the possibility of multiple functions that the chord can take.

【0035】以上述べたような調性判定装置を伴奏形成
装置と組み合わせれば、調性感が豊かで調性の流れが自
然な伴奏をコード進行の入力に合わせて演奏する自動伴
奏装置を提供できる。
By combining the tonality determining device as described above with the accompaniment forming device, it is possible to provide an automatic accompaniment device which plays an accompaniment having a rich tonality and a natural tonality flow in accordance with the input of chord progression. .

【0036】図1(A)に示すような調性判定装置を利
用して伴奏を形成する伴奏形成装置は種々の態様で実現
できる。その基本構成を図1(B)に機能ブロック図で
示す。
The accompaniment forming apparatus for forming an accompaniment by using the tonality determining apparatus as shown in FIG. 1A can be realized in various modes. The basic configuration is shown in a functional block diagram in FIG.

【0037】図1(B)において、伴奏形成装置90は
コード進行の中で機能を特定できたコード区間における
伴奏を形成する第1伴奏形成装置190と、機能を特定
できなかったコード区間における伴奏を形成する第2伴
奏形成装置290とから成る。この目的のため、第1伴
奏形成装置190はキー保留フラグ50(図1(A)の
調性判定装置10に含まれるものであるがわかりやすく
するため図1(B)にも示した)が“キー保留解除”状
態のときに動作し、コードの機能とタイプとキーノート
との組み合わせに基づいて伴奏を形成する。ここに、コ
ードの機能とキーノートは図1(A)の第1判定部30
または第2判定部40から与えられるものであり(各判
定部30、40においてそのコードの機能とキーノート
を特定できた場合に)、コードのタイプはコード進行入
力装置20から与えられる。第1伴奏形成装置190
は、コードの機能とタイプとキーノートとの組み合わせ
の代りに、その組み合わせと等価な情報をもつ組み合わ
せ(例えば、コードの機能とタイプとルート)を受ける
ような構成でもよい。あるいは、調性データ生成部70
からの(そのコード、即ち機能が特定されたコードの区
間において)使用可能なピッチクラスセットの情報を受
けるようにしてもよい。いずれの場合も、第1伴奏形成
装置は機能が特定されたコードの音楽時間において使用
可能なピッチクラスセットに含まれるピッチクラスの音
高をもつ伴奏を結果として形成する。したがってコード
の機能、タイプ、キーノートの組み合わせあるいはこれ
と等価な組み合わせを受ける構成の第1伴奏形成装置1
90は、明示的であれ暗示的であれ、内部になんらかの
かたちで、調性データ生成部70の一部に相当するも
の、即ち上記のような組み合わせから機能が特定された
コードの区間で使用可能なピッチクラスセットを決定な
いし定義する調性ピッチクラスセット手段を含むことに
なる。例えば、コード機能、タイプ、キーノートのある
組み合わせに対して使用可能なピッチクラスセットから
選んだピッチクラスで伴奏音を構成した伴奏データを記
憶するメモリがあるとし、外部からその組み合わせの情
報が与えられた場合に上記メモリを選択して伴奏データ
を出力するように第1伴奏形成装置を構成したとする。
この構成の場合、調性ピッチクラスセット手段はメモリ
と、組合せ情報に従ってメモリを選択する手段とで実現
されていることになる。また、上記のメモリを音楽スタ
イル別に構成した場合には、上記の組合せ以外に音楽ス
タイルをも考慮して調性ピッチクラスセットを規定する
手段が実現されることになる。
In FIG. 1B, the accompaniment forming device 90 forms a first accompaniment forming device 190 for forming an accompaniment in a chord section in which a function can be specified during chord progression, and an accompaniment in a chord section for which a function cannot be specified. And a second accompaniment forming device 290 for forming the. For this purpose, the first accompaniment forming device 190 has a key hold flag 50 (which is included in the tonality determination device 10 of FIG. 1A but also shown in FIG. 1B for clarity). It operates in the "release key hold" state, and forms an accompaniment based on the combination of chord function and type and key note. Here, the function of the chord and the keynote are the first determination unit 30 of FIG.
Alternatively, it is given from the second judging unit 40 (when the function and keynote of the chord can be specified in each judging unit 30, 40), and the chord type is given from the chord progression input device 20. First accompaniment forming device 190
Instead of the combination of the chord's function, type, and keynote, it may be configured to receive a combination having information equivalent to the combination (for example, the chord's function, type, and root). Alternatively, the tonality data generator 70
(In the section of the chord, that is, the chord in which the function is specified), the information of the available pitch class sets may be received. In any case, the first accompaniment forming device results in the formation of an accompaniment having a pitch of a pitch class included in the pitch class set usable in the musical time of the chord having the specified function. Therefore, the first accompaniment forming apparatus 1 configured to receive a combination of chord functions, types, and keynotes, or a combination equivalent thereto.
Numeral 90, whether explicit or implicit, can be used in some way inside, corresponding to a part of the tonality data generator 70, that is, in the section of the code whose function is specified by the above combination. Tonal pitch class setting means for determining or defining a specific pitch class set. For example, if there is a memory that stores accompaniment data that composes accompaniment sounds in a pitch class selected from a set of pitch classes that can be used for a certain combination of chord function, type, and keynote, information about that combination is given externally. It is assumed that the first accompaniment forming apparatus is configured to select the memory and output the accompaniment data in such a case.
In the case of this configuration, the tonality pitch class setting means is realized by the memory and the means for selecting the memory according to the combination information. Further, when the above memory is configured for each music style, means for defining the tonal pitch class set is realized by considering the music style in addition to the above combinations.

【0038】図1(B)では、第1伴奏形成装置190
をコードの機能とタイプから、その組み合わせに適した
伴奏パターンを発生する第1伴奏パターン発生部192
と、この発生部192から出力される伴奏パターンのピ
ッチデータをキーノートまたはコードルートのデータと
加算して実際に演奏される伴奏音ピッチを発生する加算
器196(音高発生手段)とで構成している。第1伴奏
パターン発生部192のピッチデータをキーノートから
の音程で表現した場合にはそれにキーノートを加えるこ
とで実伴奏ピッチが得られる。この代りに第1伴奏パタ
ーン発生部192のピッチデータをコードルートからの
音程で表現した場合はそれにコードルートを加えること
で実伴奏ピッチが得られる。
In FIG. 1B, the first accompaniment forming device 190.
A first accompaniment pattern generator 192 for generating an accompaniment pattern suitable for the combination of the chord functions and types.
And an adder 196 (pitch generating means) that adds the pitch data of the accompaniment pattern output from the generation unit 192 to the data of the keynote or chord root to generate the accompaniment tone pitch to be actually played. is doing. When the pitch data of the first accompaniment pattern generation unit 192 is expressed by the pitch from the key note, the actual accompaniment pitch can be obtained by adding the key note to it. Alternatively, when the pitch data of the first accompaniment pattern generator 192 is represented by the pitch from the chord root, the chord root is added to the pitch data to obtain the actual accompaniment pitch.

【0039】一方、第2伴奏形成装置290は、キー保
留フラグ50が“キー保留”状態のとき(コードの機能
を特定できなかったことを表わす)動作し、機能を特定
できなかったコードのタイプとルートに基づいて伴奏を
形成する。タイプのルートの組み合わせの代りに、調性
データ生成部70で生成される、そのコード区間で使用
可能なピッチクラスセットの情報を受けるように第2伴
奏形成装置290を構成してもよい。いずれにしても、
第2伴奏形成装置はそのようなピッチクラスセットに含
まれるピッチクラスの音高をもつ伴奏を形成する。した
がって、タイプとルートの組み合わせを受ける構成の第
2伴奏形成装置は内部になんらかのかたちで調性データ
生成部70の一部に相当するもの、即ち、機能を特定で
きないコードの区間において使用可能なピッチクラスセ
ットを広い調性解釈に従ってそのコードのタイプとルー
トから決定、定義する手段を含むことになる。
On the other hand, the second accompaniment forming apparatus 290 operates when the key hold flag 50 is in the "key hold" state (indicating that the function of the chord cannot be specified), and the type of chord whose function cannot be specified. And form an accompaniment based on the route. The second accompaniment forming apparatus 290 may be configured to receive the information of the pitch class set that can be used in the chord section, which is generated by the tonality data generation unit 70, instead of the combination of types of routes. In any case,
The second accompaniment forming device forms an accompaniment having a pitch of a pitch class included in such a pitch class set. Therefore, the second accompaniment forming device configured to receive the combination of the type and the route corresponds to a part of the tonality data generating unit 70 in some way inside, that is, the pitch usable in the chord section whose function cannot be specified. It will include means for determining and defining a class set from its chord type and root according to a broad tonality interpretation.

【0040】図1(B)では第2伴奏形成装置290を
コードのタイプに従って伴奏パターンを発生する第2伴
奏パターン発生部292と、発生した伴奏パターンのピ
ッチデータ(ルートからの音程を表現する)にコードル
ートのデータを加算して、実伴奏音ピッチを発生する加
算器276とで構成している。
In FIG. 1B, the second accompaniment forming device 290 generates a second accompaniment pattern generating section 292 for generating an accompaniment pattern according to the chord type, and pitch data of the generated accompaniment pattern (representing the pitch from the root). And the data of the chord root are added to generate an actual accompaniment note pitch.

【0041】図1(C)は第1伴奏パターン発生部19
2の構成例を明らかにした第1伴奏形成装置190Mで
あり、図1(D)は第2伴奏パターン発生部292の構
成例を明らかにした第2伴奏形成装置290Mである。
図1(C)に示す第1伴奏形成装置190Mはコードの
機能・タイプ(またはスケール)別に用意された複数の
伴奏パターンメモリ193−1〜193−n(全体を9
1で示す)を有する。各伴奏パターンメモリは、特定の
機能・タイプ組合せ(または特定のスケール)に適合す
るピッチ内容(ピッチライン)をもつ伴奏パターンを記
憶する。例えば第1の伴奏パターンメモリ193−1は
機能が
FIG. 1C shows the first accompaniment pattern generator 19.
2 is a first accompaniment forming apparatus 190M in which the configuration example of FIG. 2 is clarified, and FIG.
The first accompaniment forming apparatus 190M shown in FIG. 1C includes a plurality of accompaniment pattern memories 193-1 to 193-n (9 in total) prepared for each chord function / type (or scale).
1). Each accompaniment pattern memory stores an accompaniment pattern having a pitch content (pitch line) that matches a specific function / type combination (or a specific scale). For example, the first accompaniment pattern memory 193-1 has a function

【外字3】(トニック)でタイプがメジャーのコードあ
るいはイオニアンスケールに適合するピッチ内容の伴奏
パターンを記憶する。更に、伴奏形成装置190Mは選
択部194を有する。この選択部194は調性判定装置
10からのコードの機能・タイプ(またはスケール)に
従って、複数の伴奏パターンメモリ193−1〜193
−nのなかから同一のコード機能・タイプ(または同一
のスケール)に関する伴奏パターンを選択する。複数の
伴奏パターンメモリ193−1〜193−nの伴奏音ピ
ッチデータP1〜Pnのなかで選択部194により選択
された伴奏音ピッチデータをPsで示してある。選択さ
れたピッチデータPsは加算器196により調性判定装
置10からのキーノートまたはコードルートを表わすデ
ータと加算される。加算器196の出力データが最終的
な伴奏音のピッチを表わす。複数の伴奏パターンメモリ
193と選択部194が図1(B)の第1伴奏パターン
発生部192の構成例であることがわかる。
[External character 3] (tonic) is used to store an accompaniment pattern having a pitch content that conforms to a major chord or an Ionian scale. Further, the accompaniment forming device 190M has a selection unit 194. The selection unit 194 determines a plurality of accompaniment pattern memories 193-1 to 193 according to the function / type (or scale) of the chord from the tonality determination device 10.
Select an accompaniment pattern for the same chord function / type (or the same scale) from -n. The accompaniment sound pitch data selected by the selection unit 194 among the accompaniment sound pitch data P1 to Pn of the plurality of accompaniment pattern memories 193-1 to 193-n is indicated by Ps. The selected pitch data Ps is added by the adder 196 to the data representing the keynote or chord root from the tonality determination device 10. The output data of the adder 196 represents the final pitch of the accompaniment sound. It can be seen that the plurality of accompaniment pattern memories 193 and the selection unit 194 are an example of the configuration of the first accompaniment pattern generation unit 192 of FIG.

【0042】図1(C)の第1伴奏形成装置190Mで
は、複数の伴奏パターンメモリ193−1〜193−n
における複数の伴奏パターンが有するリズム成分(伴奏
音の長さのシーケンス)を互に独立にできる。換言すれ
ば、図1(C)の第1伴奏形成装置190Mは調性判定
装置10からのスケール(またはコードの機能とタイプ
の組合せ)に依存したリズムを有する伴奏ラインを形成
可能である。したがって、コード進行におけるコードの
変化に伴ってリズムが変化する伴奏を行うことができ
る。
In the first accompaniment forming apparatus 190M of FIG. 1C, a plurality of accompaniment pattern memories 193-1 to 193-n are provided.
The rhythm components (sequences of accompaniment sound lengths) included in the plurality of accompaniment patterns in can be mutually independent. In other words, the first accompaniment forming device 190M in FIG. 1C can form an accompaniment line having a rhythm depending on the scale (or the combination of the function and type of chord) from the tonality determination device 10. Therefore, it is possible to perform an accompaniment in which the rhythm changes as the chord changes during chord progression.

【0043】図1(D)の第2伴奏形成装置290Mで
も同様の手法により、複数の伴奏パターンメモリ293
−1〜293−m(全体を293で示す)と選択部29
4とを用いて図1(B)の第2伴奏パターン発生部29
2を実現している。ただし、各伴奏パターンメモリ29
3−1〜293−mの伴奏パターンは個々のコードタイ
プ(またはスケール)に適合するピッチ内容をもつ。選
択部294はコード進行入力装置20から与えられるコ
ードタイプ(またはタイプ/スケール変換テーブル72
から与えられるスケール)に従って伴奏パターンを選択
する。図1(E)に伴奏形成装置のもう1つの構成例を
90Mとして示す。
In the second accompaniment forming device 290M shown in FIG. 1D, a plurality of accompaniment pattern memories 293 are formed by the same method.
-1 to 293-m (the whole is shown by 293) and the selection unit 29
4 and the second accompaniment pattern generator 29 of FIG.
2 has been achieved. However, each accompaniment pattern memory 29
The accompaniment patterns 3-1 to 293-m have pitch contents adapted to individual chord types (or scales). The selection unit 294 selects the chord type (or the type / scale conversion table 72) given from the chord progression input device 20.
The accompaniment pattern is selected according to the scale given by. FIG. 1E shows another configuration example of the accompaniment forming apparatus as 90M.

【0044】図1(E)において伴奏形成装置90Mは
伴奏スタイル別に基準の伴奏パターンを記憶する伴奏パ
ターンメモリ91を備える。記憶される伴奏パターンは
(図示しない)読出部によって繰り返し読み出される。
伴奏パターンメモリ91から読み出した伴奏音の基準ピ
ッチをPで図示してある。伴奏形成装置90は更に、ピ
ッチ変更データテーブルメモリ94を含む。ピッチ変更
データテーブルメモリ94内の各テーブル要素には伴奏
パターンメモリ91からのピッチデータPを変更するた
め差分ピッチデータ△Pが記憶される。ピッチ変更デー
タテーブルメモリ94のテーブル要素は、スケールと変
更すべき伴奏音のピッチとの組み合わせによって特定
(アドレス指定)される。調性データ生成部70からの
スケールを表わすデータと伴奏パターンメモリ91から
の伴奏音基準ピッチデータがアドレス部95に入力さ
れ、ここでピッチ変更データテーブルメモリ94のテー
ブル要素を指すアドレスが生成される。ここにアドレス
部93に入力されるスケールは、機能を特定できたコー
ドの場合には、機能名/スケール変換テーブル71から
与えられる機能名対応スケールであるのに対し、機能を
特定できなかったコードの場合にはタイプ/スケール変
換テーブル72から与えられるタイプ対応スケールであ
る。したがって、このようなスケールを受ける代りに、
キー保留解除時(コード機能確定時)には機能とタイプ
を受け、キー保留時(コード機能不確定時)にはタイプ
を受けるようにアドレス部93を変形してもよい。アド
レス指定されたテーブル要素にあるピッチ変更データ△
Pは加算器95により伴奏パターンメモリ91からの基
準ピッチデータPに加算される。加算器95から出力さ
れるピッチデータは、キー保留解除時には、機能名対応
スケールに適合するピッチ内容(例えばキーノートから
の音程で表現される)をもち、キー保留時にはタイプ対
応スケールに適合するピッチ内容(コードルートからの
音程で表現される)をもつ。このピッチデータは、更に
第2の加算器96により選択部97からのデータと加算
されて実際の伴奏音のピッチとなる。選択部97はキー
保留解除時(キー確定時)には現キーノートメモリ52
からのキーノートを選択し、キー保留時にはコード進行
入力装置20からのコードルートを選択する。なお、キ
ー保留解除の場合もキー保留時と同様に加算器95から
出力されるデータがコードルートからの音程を表わすよ
うに、ピッチ変更テーブルメモリ94の内容を設定して
おけば、選択器97は不要であり、キーの保留、解除に
かかわらずコードルートを加算器95の出力に加算すれ
ば実伴奏音ピッチが得られる。
In FIG. 1E, the accompaniment forming apparatus 90M includes an accompaniment pattern memory 91 for storing a standard accompaniment pattern for each accompaniment style. The accompaniment pattern stored is repeatedly read by a reading unit (not shown).
The reference pitch of the accompaniment sound read from the accompaniment pattern memory 91 is indicated by P. The accompaniment forming apparatus 90 further includes a pitch change data table memory 94. The difference pitch data ΔP for changing the pitch data P from the accompaniment pattern memory 91 is stored in each table element in the pitch change data table memory 94. The table element of the pitch change data table memory 94 is specified (addressed) by the combination of the scale and the pitch of the accompaniment note to be changed. The data representing the scale from the tonality data generation unit 70 and the accompaniment tone reference pitch data from the accompaniment pattern memory 91 are input to the address unit 95, where an address indicating a table element of the pitch change data table memory 94 is generated. . In the case where the scale input to the address section 93 is a code that can specify the function, the scale that corresponds to the function name is given from the function name / scale conversion table 71, whereas the code that cannot specify the function In the case of, it is the type corresponding scale given from the type / scale conversion table 72. So instead of undergoing such a scale,
The address section 93 may be modified so that it receives the function and type when the key is released (when the code function is fixed) and receives the type when the key is held (when the code function is undefined). Pitch change data in the addressed table element △
P is added to the reference pitch data P from the accompaniment pattern memory 91 by the adder 95. The pitch data output from the adder 95 has a pitch content (for example, represented by a pitch from a keynote) that conforms to the function name corresponding scale when the key hold is released, and a pitch that conforms to the type corresponding scale when the key is held. Has content (expressed by the pitch from the chord root). This pitch data is further added by the second adder 96 to the data from the selection unit 97 to become the pitch of the actual accompaniment sound. The selection unit 97 displays the current keynote memory 52 when releasing the key hold (when confirming the key).
From the chord progression input device 20 is selected when the key is held. In the case of releasing the key hold, as in the case of the key hold, if the contents of the pitch change table memory 94 are set so that the data output from the adder 95 represents the pitch from the chord root, the selector 97 can be used. Is unnecessary, and the actual accompaniment tone pitch can be obtained by adding the chord root to the output of the adder 95 regardless of whether the key is held or released.

【0045】以上の説明からわかるように図1(E)の
伴奏形成装置90Mも、図1(B)に示す第1伴奏形成
装置190と第2伴奏形成装置290に相当する機能を
有するものである。図1(E)の構成の場合、伴奏形成
に必要な記憶容量を最小化できる利点がある。
As can be seen from the above description, the accompaniment forming device 90M of FIG. 1E also has a function corresponding to that of the first accompaniment forming device 190 and the second accompaniment forming device 290 shown in FIG. 1B. is there. The configuration of FIG. 1E has an advantage that the storage capacity required for accompaniment formation can be minimized.

【0046】以下、図2から図33を参照して具体的な
実施例を詳細に説明する。図2は、具体的な実施例に係
る自動伴奏装置のハードウェアのブロック図である。C
PU100は自動伴奏装置全体の制御を行う。ROM1
02には、CPU100の実行するプログラムと固定デ
ータ(コード進行知識データベースを含む)が記憶され
る。RAM104はCPU100の制御の下にワークメ
モリとして使用される。入力装置106はメロディとコ
ードを入力するための鍵盤を含む。楽音生成装置108
はCPU100の制御の下に楽音信号を生成する。サウ
ンドシステム110は楽音信号を受け、外部に放音す
る。タイマー112は所定の時間の経過を計時し、CP
U100に対し、タイマーインターラプトルーチン(図
4)を起動するためのタイマー割込信号を与える。表示
装置114はコード進行、コード進行に対応する機能進
行、キーノート進行、調性(ピッチクラスセット)の進
行を表示可能である。
Specific examples will be described in detail below with reference to FIGS. 2 to 33. FIG. 2 is a block diagram of hardware of an automatic accompaniment apparatus according to a specific embodiment. C
The PU 100 controls the entire automatic accompaniment apparatus. ROM1
In 02, a program executed by the CPU 100 and fixed data (including a chord progression knowledge database) are stored. The RAM 104 is used as a work memory under the control of the CPU 100. The input device 106 includes a keyboard for inputting a melody and a chord. Musical sound generator 108
Generates a tone signal under the control of the CPU 100. The sound system 110 receives a musical tone signal and outputs it to the outside. The timer 112 measures the elapse of a predetermined time, and the CP
A timer interrupt signal for activating the timer interrupt routine (FIG. 4) is given to U100. The display device 114 can display the chord progression, the function progression corresponding to the chord progression, the keynote progression, and the tonality (pitch class set) progression.

【0047】図3は図1(A)のCPU100の動作の
メインフローを示す。パワーオン時に、CPU100は
調性判定システムを初期化する(3−1)。この初期設
定処理3−1には、後述する一時変数(図6(A)、
(B)、(C))を所定の値に設定する処理が含まれ
る。3−2でCPU100は入力装置106を通常の仕
方でキースキャンする。3−3でCPU100は鍵盤の
メロディ入力領域から入力されたメロディ鍵情報に基づ
いて楽音生成装置108を制御して、メロディ音を発生
させる。3−4でCPU100は表示装置114を制御
して入力されたコード進行の評価結果(例えば、ピッチ
クラスセットの進行)を表示する。例えば、使用可能な
ピッチクラスセットを鍵盤の鍵に対応してナビゲータ表
示することにより、使用者によるアドリブ演奏が容易に
なる。
FIG. 3 shows the main flow of the operation of the CPU 100 shown in FIG. At power-on, the CPU 100 initializes the tonality determination system (3-1). This initialization process 3-1 includes temporary variables (FIG. 6 (A),
A process of setting (B) and (C) to a predetermined value is included. In 3-2, the CPU 100 key-scans the input device 106 in a normal manner. In 3-3, the CPU 100 controls the musical sound generating device 108 based on the melody key information input from the melody input area of the keyboard to generate a melody sound. In 3-4, the CPU 100 controls the display device 114 to display the input chord progression evaluation result (for example, the progress of the pitch class set). For example, the available pitch class set is displayed in the navigator corresponding to the keys of the keyboard, which facilitates the ad lib performance by the user.

【0048】図4にタイマー112のタイムアウトによ
って周期的に起動され、CPU100により実行される
タイマーインターラプトルーチンを示す。4−1でCP
U100は伴奏鍵情報(キースキャン4−2で取り込ま
れている)を調べ、指定されたコードのタイプとルート
を周知の仕方で判別する。新たなコードが検出されると
(4−2)、CPU100はその新コードの機能とキー
ノートを判定する(4−3)。次に、CPU100は新
コードの区間で使用可能なピッチクラスセットを表わす
調性データを生成する(4−4)。最後にCPU100
は調性データに基づいて伴奏データを形成し、楽音生成
装置108を制御して伴奏音信号を生成させる。
FIG. 4 shows a timer interrupt routine which is periodically activated by the time-out of the timer 112 and executed by the CPU 100. 4-1 CP
The U100 examines the accompaniment key information (acquired by the key scan 4-2) and determines the type and route of the designated chord in a known manner. When a new code is detected (4-2), the CPU 100 determines the function and keynote of the new code (4-3). Next, the CPU 100 generates tonality data representing a pitch class set usable in the new chord section (4-4). Finally CPU100
Forms accompaniment data based on the tonality data, and controls the musical sound generator 108 to generate an accompaniment sound signal.

【0049】図5はROM102に置かれるコード構成
音テーブルCKTである。コード構成音テーブルCKT
には各コードタイプに対するコード構成音のセットが記
憶される。“0”の構成音データが根音を表わす。他の
構成音は根音との間の音程によって表わされる。“1”
が半音(短2度)の音程を表わし、“2”は全音(長2
度)の音程を表わし、以下、同様にして“11”が長7
度の音程を表わす。“15”のデータはダミーであり、
コード構成音テーブルCKTにおける各コードに対する
記憶場所の数を4に統一するために、3つの構成音から
成るトライアドコードに対して使用される。コード構成
音テーブルCKTはコード判別4−1において、コード
タイプを特定するときにも使用することができる。
FIG. 5 shows a chord component sound table CKT stored in the ROM 102. Chord composition sound table CKT
Stores a set of chord constituent tones for each chord type. The constituent sound data of "0" represents the root sound. The other constituent tones are represented by the pitch between them. "1"
Represents the pitch of a semitone (2nd minor), and "2" is the whole tone (2nd major).
Degree), and in the same way, "11" is a long 7
Indicates the pitch of a degree. The data of "15" is a dummy,
Used for triad chords consisting of three constituent notes to unify the number of storage locations for each chord in the chord constituent note table CKT to four. The chord component sound table CKT can also be used when the chord type is specified in the chord discrimination 4-1.

【0050】図6(A)、(B)、(C)は後述するフ
ローチャートで使用、参照される一時変数(RAM10
4に置かれる)のリストである。変数(レジスタ)CD
Nはコード判別4−1で得られた新コードを表わす。C
DNは新コードのルート(のピッチクラス)を表わす部
分CDNrと新コードのタイプを表わす部分CDNtと
から成っている。例えば、C MAJORの新コードは
CDNr=0、CDNt=0で表現される。変数(レジ
スタ)CDBは新コードの1つ前のコード(直前コー
ド)を表わす。CDBは直前コードのルートを表わす部
分CDBrと直前コードのタイプを表わす部分CDBt
とから成る。変数(レジスタ)FDNは新コードの機能
名を表わす。FDNは新コードを現在のキーノートで評
価したスケール度数(機能)を表わす部分FDNdと新
コードのタイプを表わす部分FDNt(CDNtと同じ
データ)とから成る。例えば、
FIGS. 6A, 6B, and 6C are temporary variables (RAM 10) used and referred to in the flowcharts described later.
4)). Variable (register) CD
N represents the new code obtained in code discrimination 4-1. C
The DN is composed of a part CDNr representing the root of the new chord and a part CDNt representing the type of the new chord. For example, the new code of C MAJOR is expressed by CDNr = 0 and CDNt = 0. The variable (register) CDB represents the code immediately before the new code (previous code). CDB is a portion CDBr representing the root of the immediately preceding code and a portion CDBt representing the type of the immediately preceding code.
It consists of and. The variable (register) FDN represents the function name of the new code. The FDN is composed of a part FDNd representing the scale frequency (function) in which the new chord is evaluated with the current keynote, and a part FDNt (the same data as CDNt) representing the type of the new chord. For example,

【外字5】 の機能名はFDNd=2、FDNt=0で示される。変
数(レジスタ)FDBは直前のコードの機能名を表わ
し、直前のコードを現キーノートで評価したスケール度
数(機能)を表わす部分FDBdと直前コードのタイプ
を表わす部分FDBt(CDBtと同じデータ)とから
成る。変数(レジスタ)TDNはキーノートが特定され
ている状況の下で現在の調性を表わし、現在のキーノー
トを表わす部分TDNkと現在のスケールを表わす部分
TDNsとから成る。TDNkとTDNsとにより、機
能を特定できたコード区間において使用可能なピッチク
ラスセットが規定される。例えば、C、D、E、F、
G、A、Bのピッチクラスから成るC Ionianの
調性はTDNk=0、TDNs=0で表現される。一
方、機能を特定できなかったコード区間において使用可
能なピッチクラスセットはCDNrとTDNsとにより
規定される。変数(テーブル)TDKは複数(ここでは
4種類の)関係調性を記憶する。テーブルTDKの各調
性データTDK[i]はキーノートを表わす部分TDK
k[i]とスケールを表わす部分TDKs[i]とから
成る。テーブルTDKの最初のアドレスにある最初の調
性データTDK[0]のキーノート部は現キーノートの
ドミナント(属調)である関係キーノートを表わす。同
様にしてTDK[1]、TDK[2]、TDK[3]の
各キーノート部には現キーノートのサブドミナント(下
属調)、ドミナントのドミナント、サブドミナントのサ
ブドミナントを表わすキーノートデータが記憶される。
変数(テーブル)FDKは各関係キーノートTDKk
[i]で評価した新コードCDNと直前コードCDBの
機能名を記憶する。各機能名FDK[i]はコードのス
ケール度数を表わす部分FDKd[i]とコードタイプ
を表わす部分FDKt[i]から成る。テーブルFDK
の偶数アドレスには各関係キーノートで評価した新コー
ドの機能名が記憶され、奇数アドレスには各関係キーノ
ートで評価した直前コードの機能名が記憶される。詳細
には、テーブルFDKのアドレス0にあるデータFDK
[0]は新コードを現キーノートのドミナントで評価し
たスケール度数と新コードのタイプとから成る。アドレ
ス1にあるデータFDK[1]は直前コードのドミナン
トキーにおける機能名を表わす。同様にして、FDK
[2]、FDK[3]はサブドミナントキーにおける新
コードの機能名、直前コードの機能名をそれぞれ表わ
し、FDK[4]、FDK[5]はドミナントのドミナ
ントキーで評価した新コードと直前コードの機能名を表
わし、FDK[6]、FDK[7]はサブドミナントの
サブドミナントキーで評価した新コードと直前コードの
各機能名を表わす。関係キーノートについて、関係調性
テーブルTDKのアドレスiは、テーブルFDKのアド
レス2i(新コードに対して)とアドレス(2i+1)
(直前コードに対して)に対応している。変数iは各種
テーブル上の要素に対するポインタとして使用される。
変数(レジスタ)CDFはCDNより2つ前のコードを
表わし、ルートCDFrとタイプCDFtから成る。変
数(レジスタ)CDGはCDNより3つ前のコードを表
わし、ルートCDGrとタイプCDGtから成る。主音
保留フラグCAOSはキーが確定しているか(分析した
コードの機能が特定されているか)どうかを示す。コー
ド進行の入力を開始する際に主音保留フラグCAOSは
“キー保留状態”(CAOS=1)に初期設定される。
コード進行の入力中、主音保留フラグCAOSはキーノ
ート・機能判定ルーチン4−3で新コードの機能を特定
できたときに“キー確定状態”となり、ルーチン4−3
でコードの機能を特定できなかったときに“キー保留状
態”となる。変数RDTbは新コードと1つ前のコード
とのルート差を表わす。同様に変数RDTfは1つ前の
コードと2つ前のコードとのルート差を表わし、変数R
DTgは2つ前のコードと3つ前のコードとのルート差
を表わす。変数ANTは実際に演奏される伴奏音のピッ
チを表わす。
[External character 5] The function name of is indicated by FDNd = 2 and FDNt = 0. The variable (register) FDB represents the function name of the immediately preceding chord, and a part FDBd indicating the scale frequency (function) obtained by evaluating the immediately preceding chord with the current keynote and a part FDBt (the same data as CDBt) indicating the type of the immediately preceding chord. Consists of. The variable (register) TDN represents the current tonality under the situation where the keynote is specified, and consists of a part TDNk representing the current keynote and a part TDNs representing the current scale. TDNk and TDNs define the pitch class set that can be used in the code section in which the function can be specified. For example, C, D, E, F,
The tonality of C Ionian consisting of G, A, and B pitch classes is expressed by TDNk = 0 and TDNs = 0. On the other hand, the pitch class set that can be used in the chord section whose function cannot be specified is defined by CDNr and TDNs. The variable (table) TDK stores a plurality (here, four types) of relational tonality. Each tonality data TDK [i] of the table TDK is a part TDK representing a keynote.
It consists of k [i] and a portion TDKs [i] representing the scale. The keynote part of the first tonality data TDK [0] at the first address of the table TDK represents the related keynote which is the dominant (general key) of the current keynote. Similarly, in each keynote portion of TDK [1], TDK [2], and TDK [3], keynote data representing the subdominant (lower key) of the current keynote, the dominant of the dominant, and the subdominant of the subdominant are stored. Remembered.
Variable (table) FDK is related keynote TDKk
The function names of the new code CDN and the immediately preceding code CDB evaluated in [i] are stored. Each function name FDK [i] is composed of a part FDKd [i] representing the scale frequency of the code and a part FDKt [i] representing the code type. Table FDK
In the even addresses, the function name of the new code evaluated by each related keynote is stored, and in the odd address, the function name of the immediately preceding code evaluated by each related keynote is stored. Specifically, the data FDK at address 0 of the table FDK
[0] consists of the scale frequency of the new chord evaluated by the dominant of the current keynote and the new chord type. The data FDK [1] at address 1 represents the function name in the dominant key of the immediately preceding code. Similarly, FDK
[2] and FDK [3] represent the function name of the new code in the subdominant key and the function name of the immediately preceding code, respectively, and FDK [4] and FDK [5] represent the new code and the immediately preceding code evaluated by the dominant key of the dominant. FDK [6] and FDK [7] represent the function names of the new code and the immediately preceding code evaluated by the subdominant subdominant key. Regarding the related keynote, the address i of the relationship tonality table TDK is the address 2i (for the new code) and the address (2i + 1) of the table FDK.
It corresponds to (just before the code). The variable i is used as a pointer to elements on various tables.
The variable (register) CDF represents the code two before the CDN, and is composed of a root CDFr and a type CDFt. A variable (register) CDG represents a code three codes before the CDN, and is composed of a root CDGr and a type CDGt. The tonic hold flag CAOS indicates whether the key is fixed (whether the function of the analyzed chord is specified). When inputting the chord progression, the tonic hold flag CAOS is initialized to the "key hold state" (CAOS = 1).
While the chord progression is being input, the tonic hold flag CAOS is in the "key fixed state" when the function of the new chord can be specified in the key note / function determination routine 4-3, and the routine 4-3 is executed.
When the function of the code cannot be specified by, the status is "key hold status". The variable RDTb represents the root difference between the new code and the code immediately before. Similarly, the variable RDTf represents the root difference between the code one before and the code two before, and the variable RDTf
DTg represents the root difference between the code two before and the code three before. The variable ANT represents the pitch of the accompaniment sound actually played.

【0051】図7にインターラプトルーチン(図4)に
おけるキーノート機能判定4−3の詳細を示す。まず7
−1でCPU100はキーが保留かどうか、即ち現キー
ノートが確定しているかどうかを検査する。詳細には、
図8に示すように、主音保留フラグCAOSが“1”の
とき現キーノートは不確定であり、CAOS=0なら現
キーノートは確定している。現キーノートが確定してい
る場合、CPU100は新コードを現キーノートで評価
した機能名に変更する(7−2)。詳細には、図9に示
すように、新コードのタイプCDNtをFDNtにセッ
トし(9−1)、新コードのルート(のピッチクラス)
CDNrを現キーノートTDNkからのスケール度数F
DNdに変換する(9−2)。
FIG. 7 shows details of the keynote function judgment 4-3 in the interrupt routine (FIG. 4). First 7
At -1, the CPU 100 checks whether the key is on hold, that is, whether the current keynote is fixed. In detail,
As shown in FIG. 8, when the tonic hold flag CAOS is "1", the current keynote is indefinite, and when CAOS = 0, the current keynote is indefinite. When the current keynote is confirmed, the CPU 100 changes the new code to the function name evaluated by the current keynote (7-2). Specifically, as shown in FIG. 9, the type CDNt of the new chord is set to FDNt (9-1), and the root of the new chord (pitch class)
CDNr is the scale frequency F from the current keynote TDNk
Convert to DNd (9-2).

【0052】次のルーチン7−3でCPU100は、新
コードの機能名(機能表現)FDNについて、同一キー
ノート維持コードテーブルを検索する。同一キーノート
維持コードテーブルはROM102に置かれ、その一例
がOFTとして図10に示される。同一キーノート維持
コードテーブルOFTは、キーノートを維持するコード
のセットを記憶する。記憶される各コードデータは機能
名の形式であり、スケール度数(機能)を表わす部分と
コードタイプを表わす部分とから成る。例えば、同一キ
ーノート維持コードテーブルOFTのアドレス14にあ
るデータ(7、9)はコード機能名
In the next routine 7-3, the CPU 100 searches the same keynote keeping code table for the function name (function expression) FDN of the new chord. The same keynote keeping code table is placed in the ROM 102, an example of which is shown in FIG. 10 as OFT. The same keynote keeping code table OFT stores a set of chords for keeping keynotes. Each of the stored code data is in the form of a function name, and is composed of a part indicating scale frequency (function) and a part indicating code type. For example, the data (7, 9) at the address 14 of the same keynote keeping code table OFT is the chord function name.

【外字6】 を表わす。なお、テーブルOFTの最終アドレス(ここ
では28)にはテーブルの終りを示すデータ“15”が
記憶される。
[External character 6] Represents Data "15" indicating the end of the table is stored at the final address (here, 28) of the table OFT.

【0053】同一キーノート維持コードテーブルOFT
が新コードの機能名FDNに一致するコードを含むなら
ば、7−2での仮定、即ち、新コードに対するキーノー
トを現キーノートとした仮定は正しかったことになり、
新コードは現キーノートを維持する(機能を有する)コ
ードであるということができる。検索ルーチン7−3の
詳細は図11に示される。最初に(11−1)同一キー
ノート維持コードテーブルOFTに対するポインタiを
先頭位置“0”に初期化する。ポインタiで示される同
一キーノート維持コードテーブルOFTの要素OFT
[i]を現キーノートで評価した新コードの機能名FD
Nと比較する(11−3)。一致するならば、検索ルー
チン7−3は成功で終了し、その確認(7−4)後、キ
ーノート機能判定フロー(図7)も終了する。このと
き、新コード区間におけるキーノートは現キーノートと
同一であり、TDNkによって示される。また新コード
の正しい機能がFDNによって示される。不一致の場合
は、次のテーブル要素OFT[i]と機能名を比較する
ために、ポインタiをインクリメントする。同一キーノ
ート維持コードテーブルOFT[i]に新コードの機能
名FDNと一致する要素が含まれないときは、11−2
で、テーブル終了条件OFT[i]=15が成立し、処
理は図7の7−4を通って7−5に進む。
Same keynote maintenance code table OFT
If contains a code that matches the function name FDN of the new chord, the assumption in 7-2, that is, the assumption that the keynote for the new chord is the current keynote, was correct,
It can be said that the new code is a code (having a function) that maintains the current keynote. Details of the search routine 7-3 are shown in FIG. First, (11-1) the pointer i to the same keynote keeping code table OFT is initialized to the head position "0". Element OFT of the same keynote keeping code table OFT indicated by pointer i
Function name FD of the new code that evaluated [i] with the current keynote
Compare with N (11-3). If they match, the search routine 7-3 ends with success, and after confirmation (7-4), the keynote function determination flow (FIG. 7) also ends. At this time, the keynote in the new chord section is the same as the current keynote, and is indicated by TDNk. The correct function of the new code is also indicated by the FDN. If they do not match, the pointer i is incremented to compare the function name with the next table element OFT [i]. If the same keynote maintenance code table OFT [i] does not include an element that matches the function name FDN of the new code, 11-2
Then, the table end condition OFT [i] = 15 is satisfied, and the process proceeds to 7-5 through 7-4 in FIG.

【0054】7−5でCPU100は直前コードの機能
名FDBを現キーノートTDNkに従って生成する。詳
細には、CPU100はタイプ変数FDNtを直前コー
ドのタイプCDBtにセットし、直前コードのスケール
度数の変数FDNdを(CDBr+12−TDNk)m
od12に従って求める。
In 7-5, the CPU 100 generates the function name FDB of the immediately preceding code according to the current keynote TDNk. Specifically, the CPU 100 sets the type variable FDNt to the type CDBt of the immediately preceding code and sets the scale frequency variable FDNd of the immediately preceding code to (CDBr + 12-TDNk) m.
Obtain according to od12.

【0055】次に、CPU100は、直前コードの機能
名FDBと新コードの機能名とから成るコードシーケン
ス(機能コードパターン)について、平行調コードシー
ケンステーブルを検索する(7−6)。平行調コードシ
ーケンステーブルはROM102に置かれ、その一例を
MCSTとして図12に示す。平行調コードシーケンス
テーブルMCSTには同一の調号(Key signature)内
における長調から短調への変化(例えば、CからAmへ
の変化)を示唆する機能コードパターンのセットが記憶
される。図12のメモリマップでは(フォーマット参
照)、平行調コードシーケンステーブルの各々2つの連
続するアドレスに平行短調への変化を支持する1つの機
能コード対が記憶され、偶数アドレスには機能コード対
の最初のコードの機能名(スケール度数とコードタイ
プ)が記憶され、奇数アドレスにはコード対の後のコー
ドの機能名が記憶される。また、テーブルMCSTの最
終アドレス(ここでは84)にはテーブル終了を示すデ
ータ“15”が記憶される。
Next, the CPU 100 searches the parallel code sequence table for a code sequence (function code pattern) consisting of the function name FDB of the immediately preceding code and the function name of the new code (7-6). The parallel code sequence table is stored in the ROM 102, and one example thereof is shown as MCST in FIG. The parallel key code sequence table MCST stores a set of function code patterns that suggests a change from a major key to a minor key (for example, C to Am) within the same key signature. In the memory map of FIG. 12 (see the format), one function code pair supporting the change to parallel minor is stored in each two consecutive addresses of the parallel code sequence table, and the even number address is the first of the function code pair. The function name (scale frequency and code type) of the code is stored, and the function name of the code after the code pair is stored at the odd address. Further, data "15" indicating the end of the table is stored at the final address (here 84) of the table MCST.

【0056】平行調コードシーケンステーブルMCST
内に、直前コードの機能名と新コードの機能名とから成
る機能コードパターンと一致する機能コードパターン
(コード対)が含まれるならば、直前コードと新コード
との組み合わせによって同一調号内における長調から短
調への変化が示唆されていると結論できる。
Parallel tone code sequence table MCST
If a function code pattern (chord pair) that matches the function code pattern consisting of the function name of the immediately preceding code and the function name of the new code is included in the same key signature, It can be concluded that a change from major to minor is suggested.

【0057】平行調コードシーケンステーブルMCST
に対する検索ルーチン7−6の詳細を図13に示す。ま
ず13−1で、ポインタiを“0”に初期化する。直前
コードの機能名FDBをポインタiで示されるテーブル
要素MCST[i]と比較し、新コードの機能名FDN
を次のテーブル要素MCST[i+1]と比較して機能
コードパターンの一致/不一致をテストする(14−
3)。一致すれば、検索ルーチン7−7は成功で終了
し、その確認後(7−7)キーノート、機能判定フロー
(図13)も終了する。この結果、新コード区間に対す
るキーノート(ここでは調号)は現キーノートTDNk
で示され、新コードの正しい機能はFDNで示されてい
る。マッチングテスト13−3が不一致のときは、次の
機能コードパターンのマッチングテストを行うためにテ
ーブルアドレスポインタiを2つインクリメントする。
平行調コードシーケンステーブルMCSTに、直前コー
ドの機能名FDBと新コードの機能名FDNから成る機
能コードパターンと同一のものが含まれない場合には、
13−2でテーブル終了(MCST[i]=15)が検
出され、処理は図7の7−7を分岐して7−8に示すピ
ボット転調検査ルーチンに進む。
Parallel tone code sequence table MCST
The details of the search routine 7-6 for the are shown in FIG. First, in 13-1, the pointer i is initialized to "0". The function name FDB of the immediately preceding code is compared with the table element MCST [i] indicated by the pointer i, and the function name FDN of the new code is compared.
Is compared with the next table element MCST [i + 1] to test the match / mismatch of the function code pattern (14-
3). If they match, the search routine 7-7 ends with success, and after confirmation (7-7), the keynote and function determination flow (FIG. 13) also ends. As a result, the keynote (key signature here) for the new chord section is the current keynote TDNk.
, And the correct function of the new code is indicated by FDN. When the matching test 13-3 does not match, the table address pointer i is incremented by 2 to perform the matching test of the next function code pattern.
When the parallel code sequence table MCST does not include the same function code pattern composed of the function name FDB of the immediately preceding code and the function name FDN of the new code,
In 13-2, the end of the table (MCST [i] = 15) is detected, and the process branches 7-7 in FIG. 7 to proceed to the pivot modulation inspection routine shown in 7-8.

【0058】ピボット転調検査では、直前コードと新コ
ードとにより、現キーノートから別のキーノートへの転
調の可能性を調べる。このために、ROM102に転調
コードシーケンステーブルが設けられる。転調コードシ
ーケンステーブルは、図14のピボットコードテーブル
PDBと図15の転調後コードテーブルMDBから成
る。ピボットコードテーブルPDBには転調前のキーノ
ートにおいて使用可能なコードの機能名(度数とタイ
プ)のセットが記憶される。転調後コードテーブルMD
Bには転調後のキーノートにおいて使用可能なコードの
機能名(度数とタイプ)セットが記憶される。
In the pivot modulation inspection, the possibility of modulation from the current keynote to another keynote is checked by using the immediately preceding code and the new code. For this purpose, the ROM 102 is provided with a modulation code sequence table. The modulation code sequence table is composed of the pivot code table PDB shown in FIG. 14 and the post-modulation code table MDB shown in FIG. The pivot chord table PDB stores a set of chord function names (frequency and type) that can be used in the keynote before modulation. Post-modulation chord table MD
In B, a set of function names (frequency and type) of chords that can be used in the keynote after modulation is stored.

【0059】ピボット転調検査ルーチン7−8の詳細を
図16に示す。まず、16−1で、CPU100は、現
在キーノートTDNkに関係する4種類の関係キーノー
ト(ドミナント、サブドミナント、ドミナントのドミナ
ント、サブドミナントのサブドミナント)を生成する。
この結果TDKk[0]がドミナントキーノート、TD
Kk[1]がサブドミナントキーノート、TDKk
[2]がドミナントのドミナントキーノート、TDKk
[3]がサブドミナントのサブドミナントキーノートの
各ピッチクラスを表わす。次に、CPU100は、16
−2〜16−5において、4種の関係キーノートの各々
によって評価した新コードの機能名と直前コードの機能
名を生成する。この結果、FDK[0]が最初の関係キ
ーノート、即ちドミナントキーノートで評価した新コー
ドの機能名(スケール度数FDKk[0]とタイプFD
Kd[0])を表わし、FDK[1]がドミナントキー
ノートで評価した直前コードの機能名を表わし、FDK
[2]とFDK[3]が第2の関係キーノート(サブド
ミナントキーノート)で評価した新コードと直前コード
の各機能名を表わし、FDK[4]とFDK[5]が第
3の関係キーノート(ドミナントのドミナントキーノー
ト)で評価した新コードと直前コードの各機能名を表わ
し、FDK[6]とFDK[7]が第4の関係キーノー
ト(サブドミナントのサブドミナントキーノート)で評
価した新コードと直前コードの各機能名を表わす。第
(i+1)番目の関係キーノートで評価した新コードの
スケール度数FDKd[i×2]は、新コードのルート
CDNrと第(i+1)番目の関係キーノートTDKk
[i]とを用いて(CDNr+12−TDKk[i])
mod12で与えられ、同様に第(i+1)番目の関係
キーノートで評価した直前コードの機能、即ち、直前コ
ードのルートCDBrの、第(i+1)番目の関係キー
ノートTDKk[i]からのスケール度数FDKd[i
×2+1]は、(CDBr+12−TDKk[i])m
od12で与えられる。
The details of the pivot modulation inspection routine 7-8 are shown in FIG. First, in 16-1, the CPU 100 generates four types of relational keynotes (dominant, subdominant, dominant dominant, subdominant subdominant) related to the current keynote TDNk.
As a result, TDKk [0] is the dominant keynote, TD
Kk [1] is the subdominant keynote, TDKk
[2] TDKk, the dominant keynote of the dominant
[3] represents each pitch class of the subdominant subdominant keynote. Next, the CPU 100
In -2-16-5, the function name of the new code and the function name of the immediately preceding code evaluated by each of the four related keynotes are generated. As a result, FDK [0] is the first relational keynote, that is, the function name of the new chord evaluated by the dominant keynote (scale frequency FDKk [0] and type FD
Kd [0]), FDK [1] represents the function name of the immediately preceding code evaluated by the dominant keynote, and FDK [0]
[2] and FDK [3] represent the function names of the new chord and the immediately preceding chord evaluated with the second relation keynote (subdominant keynote), and FDK [4] and FDK [5] have the third relation. The key names (dominant dominant keynotes) of the new chords and the preceding chords are evaluated, and FDK [6] and FDK [7] are the fourth related keynotes (subdominant subdominant keynotes). Each function name of the evaluated new code and the immediately preceding code is shown. The scale frequency FDKd [i × 2] of the new chord evaluated by the (i + 1) th relational keynote is the root CDNr of the new chord and the (i + 1) th relational keynote TDKk.
Using [i] and (CDNr + 12-TDKk [i])
The function of the immediately preceding chord given by mod12 and similarly evaluated at the (i + 1) th related keynote, that is, the scale frequency of the root CDBr of the immediately preceding chord from the (i + 1) th related keynote TDKk [i] FDKd [i
X2 + 1] is (CDBr + 12-TDKk [i]) m
given in od12.

【0060】16−6〜16−9において、CPU10
0は現キーノートから第1〜第4番目(i=0〜3)の
関係キーノートのそれぞれへの転調の可能性を調べてい
る。直前コードCDBと新コードCDNとから成るコー
ドシーケンスが、現キーノートTDNkから第(i+
1)番目の関係キーノートTDKk[i]への転調を示
唆するための条件は次の通りである。第1に現キーノー
トTDKkで評価した直前コードの機能名FDBがピボ
ットコードテーブルPDB[ ]に含まれること、第2
に関係キーノートTDKk[i]で評価した直前コード
の機能名FDK[i×2+1]が転調後コードテーブル
MDB[ ]に含まれること、第3に関係キーノートT
DKk[i]で評価した新コードの機能名FDK[i×
2]が転調後コードテーブルMDB[ ]に含まれるこ
とである(16−7)。これらの条件がすべて成立する
場合、ピボット転調検査ルーチン(図16)は「適合す
る」で終了する。この時点で、新コード区間に対するキ
ーノート(条件を成立させた関係キーノート)はTDK
k[i]に記憶されている。また新コードの正しい機能
はFDK[i×2]に記憶されている。そこで、CPU
100は図7の7−9から7−10に進み、その詳細を
図17に示すように、TDNkにTDKk[i]をセッ
トして現キーノートを更新し(17−1)、FDNにF
DK[i×2]の内容をセットする(17−2)。
In 16-6 to 16-9, the CPU 10
0 examines the possibility of transposing from the current keynote to each of the first to fourth (i = 0 to 3) related keynotes. The code sequence consisting of the immediately preceding code CDB and the new code CDN is the (i +) th key from the current keynote TDNk.
The conditions for suggesting the modulation to the 1) th relational keynote TDKk [i] are as follows. First, the function name FDB of the immediately preceding code evaluated with the current keynote TDKk is included in the pivot code table PDB [],
The function name FDK [i × 2 + 1] of the immediately preceding chord evaluated by the related keynote TDKk [i] is included in the post-modulation chord table MDB [], and thirdly, the related keynote T
Function name FDK [i × of new code evaluated by DKk [i]
2] is included in the post-modulation code table MDB [] (16-7). If all of these conditions are met, the pivot modulation inspection routine (FIG. 16) ends with "fit". At this point, the keynote for the new chord section (the keynote related to the condition) is TDK
It is stored in k [i]. The correct function of the new code is stored in FDK [i × 2]. So CPU
100 proceeds from 7-9 in FIG. 7 to 7-10, and as shown in FIG. 17 for details, sets TDKk [i] in TDNk to update the current keynote (17-1), and FDN in FDN.
The contents of DK [i × 2] are set (17-2).

【0061】いずれの関係キーノートについても転調条
件が成立しないときはピボット転調検査ルーチン(図1
6)は「適合しない」で終了し、処理は7−9から分岐
してキー確立コードシーケンステーブル検索ルーチン7
−11に進む。現キーノートが不確定の場合(7−1)
もこのルーチン7−11が実行される。
If the modulation condition is not satisfied for any of the related keynotes, the pivot modulation inspection routine (see FIG. 1).
6) ends with "not compatible", and the processing branches from 7-9 to the key establishment code sequence table search routine 7
Proceed to -11. If the current keynote is indeterminate (7-1)
This routine 7-11 is also executed.

【0062】検索ルーチン7−11が参照するキー確立
コードシーケンステーブルにはキーを確立ないし示唆す
るコードシーケンスのセットが記憶される。一般にキー
確立コードシーケンスは、そのコードシーケンスを構成
する複数のコードの構成音によって特定の調を示唆する
ようなピッチクラスセットが得られることによって特徴
づけられる。例えば、コードパターンDminor→G
7th→CMAJORにおいて最初のコードDmino
rの構成音はD、F、A、2番目のコードG7thの構
成音はG、B、D、F、3番目のコードC MAJOR
の構成音はC、E、Gであり、これらの構成音を集める
とピッチクラスセット(C、D、E、F、G、A、B)
が得られる。このピッチクラスセットはキーがCである
ハ長調を明確にしている。したがって、このコードパタ
ーンは特定のキーを確立するコードシーケンスである。
ちなみにキーノートCによりこのコードパターンを機能
名パターンに変換すると、
The key establishment code sequence table referenced by the search routine 7-11 stores a set of code sequences that establishes or suggests a key. Key establishment chord sequences are generally characterized by the fact that the constituent notes of the chords that make up the chord sequence provide a set of pitch classes that suggest a particular key. For example, the code pattern Dminor → G
7th-> CMAJOR first code Dmino
The component sound of r is D, F, A, the second chord G7th is the G, B, D, F, the third chord C MAJOR
The constituent tones are C, E and G, and the pitch class set (C, D, E, F, G, A and B) is obtained by collecting these constituent tones.
Is obtained. This pitch class set defines C major in C major. Therefore, this code pattern is a code sequence that establishes a particular key.
By the way, if you convert this chord pattern into a function name pattern with Keynote C,

【外字7】 となる。[External character 7] Becomes

【0063】逆に上記のような(ルート・タイプ表現
の)コードパターンが与えられた場合に、それによって
示唆されるキーノートを判定するために、次のような音
楽ルール(キー確立コードシーケンス知識)を用意して
みる。音楽ルール:{条件部}2つ前のコード→1つ前
のコード→新コードから成るコードパターンにおいて、
(a)新コードのタイプが“MAJOR”であり、
(b)1つ前のコードのタイプが“7th”であり、
(c)1つ前のコードのルートが新コードのルートより
“完全5度上”であり、(d)2つ前のコードのタイプ
が“minor”であり、(e)2つ前のコードのルー
トが1つ前のコードのルートより“完全4度下”である
ならば、{結論部}新コードの機能は
On the contrary, when the above chord pattern (in the root type expression) is given, in order to judge the keynote suggested by the chord pattern, the following music rule (key establishment chord sequence knowledge) is used. ) Is prepared. Music rule: {condition part} In a chord pattern consisting of two chords before → chord before one → new chord,
(A) The type of new code is "MAJOR",
(B) The previous code type is "7th",
(C) The root of the previous chord is “completely 5 degrees above” the root of the new chord, (d) the type of the chord two before is “minor”, and (e) the chord two before If the root of is "completely 4 degrees below" the root of the previous code, the function of the new code is

【外字8】 である。上記コードパターンDminor→G7th→
C MAJORはこのルールの条件部を満たすもので、
新コードC MAJORの機能は
[External character 8] Is. The code pattern Dminor → G7th →
C MAJOR satisfies the conditional part of this rule,
The function of the new code C MAJOR is

【外字8】と結論づけられる。更に、この機能It is concluded that [gaiji 8]. In addition, this feature

【外字8】と新コードのルート“C”とからコードパタ
ーンが示唆するキーノートは“C”であると結論づけら
れる。(以上の説明は、この実施例におけるキー確立コ
ードシーケンステーブル検索によるキーノート・機能判
定の概要を述べたものである。)
It can be concluded that the keynote suggested by the chord pattern is "C" from [External character 8] and the root "C" of the new chord. (The above description is an outline of the keynote / function determination by the key establishment code sequence table search in this embodiment.)

【0064】ドミナント進行やサブドミナント進行のコ
ードシーケンスはキー確立コードシーケンスの代表的な
ものである。表1〜表3にドミナント進行に属するキー
確立コードシーケンスを、表4〜表6にサブドミナント
進行に属するキー確立コードシーケンスを示す。
The code sequences for dominant progression and subdominant progression are typical key establishment code sequences. Tables 1 to 3 show key establishment code sequences belonging to the dominant progress, and Tables 4 to 6 show key establishment code sequences belonging to the sub-dominant progress.

【表1】 [Table 1]

【表2】 [Table 2]

【表3】 [Table 3]

【表4】 [Table 4]

【表5】 [Table 5]

【表6】 [Table 6]

【0065】図18に検索ルーチン7−11で参照され
るキー確立コードシーケンステーブルCPDのメモリフ
ォーマットを示す。キー確立コードシーケンステーブル
CPDは表1〜表6に示すようなコードシーケンスを含
むキー確立コードシーケンスを含むキー確立コードシー
ケンスのセットを記憶する。図示のメモリフォーマット
によれば、各キー確立コードシーケンスエントリの最初
のアドレスCPD[i]はそのタイプ部CPDt[i]
にキー確立コードシーケンスの最後のコード(コード進
行入力装置からの新コードと比較されることになるコー
ド)のタイプを記憶し、次アドレスCPD[i+1]は
そのタイプ部CPDt[i+1]に1つ前のルートのコ
ードのタイプを記憶し、そのルート部CPPr[i+
1]に1つ前のルートの最後のコードのルートとの差を
記憶する。以下同様にして、後続アドレスはキー確立コ
ードシーケンスの最初のコードの条件(そのタイプ及び
そのルートの次のルートとの差)までを記憶し、その次
のアドレスはタイプ部(上位桁)にキー確立コードシー
ケンスのデータ終了マーク“100”を記憶し、ルート
部(下位桁)に結論としてコードシーケンスの最後のコ
ードの機能を記憶する。このキー確立コードシーケンス
テーブルCPDは最も長いキー確立コードシーケンスと
して4つのコードから成るコードシーケンスを含んでい
る(もちろん、これに限定されるものではない)。
FIG. 18 shows the memory format of the key establishment code sequence table CPD referred to in the search routine 7-11. The key establishment code sequence table CPD stores a set of key establishment code sequences including key establishment code sequences including the code sequences as shown in Tables 1-6. According to the illustrated memory format, the first address CPD [i] of each key establishment code sequence entry is its type part CPDt [i].
Store the type of the last code of the key establishment code sequence (the code to be compared with the new code from the chord progression input device), the next address CPD [i + 1] is one in its type part CPDt [i + 1]. The code type of the previous route is stored, and the route part CPPr [i +
1] stores the difference between the route of the last code and the route of the last code. Similarly, the subsequent addresses store up to the condition of the first code of the key establishment code sequence (the type and the difference between the route and the next route), and the next address stores the key in the type part (upper digit). The data end mark "100" of the established code sequence is stored, and the function of the last code of the code sequence is stored as a conclusion in the root part (lower digit). The key establishment code sequence table CPD includes a code sequence consisting of four codes as the longest key establishment code sequence (of course, it is not limited to this).

【0066】図19にキー確立コードシーケンステーブ
ルCPDを検索する検索ルーチン7−11の詳細を示
す。まず、i=0によりキー確立コードシーケンステー
ブルCPDの先頭をロケートし(19−1)、RDTb
=CDNr−CDBrにより、新コードのルートと1つ
前のコードのルートとの差を算出する(19−2)。な
お、図示のフローでは、他のルート差RDTf(1つ前
のコードのルートCDBrと2つ前のコードのルートC
DFrとの差)、RDTg(2つ前のコードのルートC
DFrと3つ前のコードのルートCDGrとの差)の算
出をループ内で行っているが(19−6、19−1
0)、検索速度を上げるため実際のプログラムではこの
段階でいっかつしてルート差RDTb、RDTf、RD
Tgを算出している。続く19−3〜19−16で、新
コードを末尾とする入力コードパターンと一致するキー
確立コードシーケンスを捜している。
FIG. 19 shows the details of the search routine 7-11 for searching the key establishment code sequence table CPD. First, the head of the key establishment code sequence table CPD is located by i = 0 (19-1), and RDTb
= CDNr-CDBr calculates the difference between the root of the new chord and the root of the immediately preceding chord (19-2). In the illustrated flow, another route difference RDTf (the root CDBr of the immediately preceding code and the root C of the immediately preceding code C
Difference from DFr), RDTg (root C of the code two before)
Although the difference between DFr and the root CDGr of the code three codes before is calculated in a loop (19-6, 19-1).
0), in order to increase the search speed, in the actual program, the route differences RDTb, RDTf, RD
Tg is calculated. In the following 19-3 to 19-16, the key establishment code sequence that matches the input code pattern ending with the new code is searched.

【0067】新コードと1つ前のコードから成る(長さ
2の)入力コードパターンがキー確立コードシーケンス
テーブルCPD中の長さ2のキー確立コードシーケンス
の条件を満足する場合、19−3と19−4が成立す
る。即ち、CDNt=CPDt[i]、CDBt=CP
Dt[i+1]、RDTb=CPDr[i+1]、CP
Dt[i+2]=100が成立する。この場合、検索ル
ーチンは19−5へ進んで、i=i+2により、そのキ
ー確立コードシーケンスの結論(特定された新コードの
機能)をロケートし、“適合する”をキーノート・機能
判定ルーチンに返す。
If the input code pattern (of length 2) consisting of the new code and the preceding code satisfies the condition of the key establishment code sequence of length 2 in the key establishment code sequence table CPD, it is 19-3. 19-4 is established. That is, CDNt = CPDt [i], CDBt = CP
Dt [i + 1], RDTb = CPDr [i + 1], CP
Dt [i + 2] = 100 is established. In this case, the search routine proceeds to 19-5, locates the conclusion of the key establishment code sequence (the function of the specified new code) by i = i + 2, and "fits" to the keynote / function determination routine. return.

【0068】新コードと1つ前のコードと2つ前のコー
ドから成る(長さ3の)入力コードパターンがキー確立
コードシーケンステーブルCPD中の(長さが3の)あ
るキー確立コードシーケンスの条件を満足する場合、1
9−3成立、19−4不成立、19−7(CDFt=C
PDt[i+2]、RDTf=CPDr[i+2])と
19−8(CPDt[i+3]=100)成立となる。
この場合、検索ルーチンは19−9へ進み、i=i+3
によりそのキー確立コードシーケンスの結論をロケート
し、“適合する”で終了する。
An input code pattern (of length 3) consisting of a new code, a code one code before and a code two codes before is of a certain key establishment code sequence (of length 3) in the key establishment code sequence table CPD. If the condition is satisfied, 1
9-3 established, 19-4 not established, 19-7 (CDFt = C
PDt [i + 2], RDTf = CPDr [i + 2]) and 19-8 (CPDt [i + 3] = 100).
In this case, the search routine proceeds to 19-9 and i = i + 3.
Locates the conclusion of that key establishment code sequence and ends with "conforming".

【0069】同様に、新コードから3つ前のコードまで
の長さ4の入力コードパターンがテーブルCPD中の
(長さが4の)あるキー確立コードシーケンスの条件を
満足する場合、19−3成立、19−4不成立、19−
7成立、19−8不成立、19−11(CDGt=CP
Dt[i+3]、RDTg=CPDr[i+3])成立
となる。そこで検索ルーチンは19−12でi=i+4
によりそのキー確立コードシーケンスの結論をロケート
し、“適合する”で終了する。
Similarly, when the input code pattern of length 4 from the new code to the code immediately before the third code satisfies the condition of a certain key establishment code sequence (of length 4) in the table CPD, 19-3 Established, 19-4 Not established, 19-
7 established, 19-8 not established, 19-11 (CDGt = CP
Dt [i + 3], RDTg = CPDr [i + 3]) holds. Therefore, the search routine is 19-12 and i = i + 4.
Locates the conclusion of that key establishment code sequence and ends with "conforming".

【0070】入力コードパターンが着目しているキー確
立コードシーケンスの条件を満足しない場合、19−3
か19−7か19−11が不成立となる。この場合、検
索ルーチンは、19−13〜19−16により、次のキ
ー確立コードシーケンスをロケートし、このシーケンス
と入力コードパターンとのマッチングテストのために1
9−3にリターンして検索をつづける。入力コードパタ
ーンがキー確立コードシーケンステーブルCPDにある
どのキー確立コードシーケンスにも適合しない場合、1
9−16でテーブルCPDの検索終了が検出され、検索
ルーチンは“適合しない”をキーノート・機能判定ルー
チンに返す。
If the input code pattern does not satisfy the condition of the key establishment code sequence of interest, 19-3
Either 19-7 or 19-11 is not established. In this case, the search routine locates the next key establishment code sequence according to 19-13 to 19-16 and returns 1 for the matching test of this sequence and the input code pattern.
Return to 9-3 to continue the search. 1 if the input code pattern does not match any key establishment code sequence in the key establishment code sequence table CPD, 1
In 9-16, the end of the search of the table CPD is detected, and the search routine returns "not compatible" to the keynote / function determination routine.

【0071】キーノート・機能判定ルーチン(図7)は
7−12でキー確立コードシーケンステーブル検索ルー
チンが“適合する”で終ったかどうかをチェックし、
“適合する”であれば、キー保留解除7−13と調設定
7−14を実行する。すなわち、図21に示すようにC
AOS=0によりキーの保留状態を解除し、図22に示
すように、新コードのルートと、検索ルーチン7−11
で見つけたキー確立コードシーケンスの結論(最後のコ
ードの機能)とからTDNk=CDNr+12−CPD
r[i]mod12により、キーノートTDNkを求め
(22−1)、FDNd=CPDr[i]により、キー
確立コードシーケンスの結論を新コードの機能FDNd
とする(22−2)。一方、キー確立コードシーケンス
テーブル検索ルーチンが“適合しない”で終った場合
は、キーノート・機能判定ルーチンはCAOS=1によ
り(図20)、キーの保留状態を設定する(7−1
5)。
The keynote / function determination routine (FIG. 7) checks at 7-12 whether or not the key establishment code sequence table search routine ends with "match".
If “matching”, key hold release 7-1 3 and key setting 7-14 are executed. That is, as shown in FIG.
The hold state of the key is released by AOS = 0, and as shown in FIG. 22, the root of the new code and the search routine 7-11.
From the conclusion of the key establishment code sequence found in (the function of the last code), TDNk = CDNr + 12-CPD
The key note TDNk is obtained by r [i] mod12 (22-1), and the conclusion of the key establishment code sequence is determined by FDNd = CPDr [i].
(22-2). On the other hand, when the key establishment code sequence table search routine ends with "not compatible", the keynote / function determination routine sets the key hold state by CAOS = 1 (FIG. 20) (7-1).
5).

【0072】図23にスケール判定ルーチン4−4のフ
ローを示す。スケール判定ルーチン4−4はキーノート
・機能判定ルーチン4−3(図7)の次に実行される。
図7のフローからわかるように、キーノート・機能判定
ルーチン4−3で新コードの機能を特定できた場合に
は、キー保留フラグCAOSはキー保留解除状態“0”
となり、新コードの機能を特定できなかった場合には、
キー保留フラグCAOSはキー保留状態“1”となる。
前者の場合(23−1)、スケール判定ルーチンは調性
を狭く解釈するために機能名/スケール変換テーブルに
よって新コードの区間におけるスケールを決定する(2
3−2)。後者の場合、スケール判定ルーチンは調性を
広く解釈するためにコードタイプ/スケール変換テーブ
ルによって新コードの区間におけるスケールを決定する
(23−3)。
FIG. 23 shows a flow of the scale judgment routine 4-4. The scale determination routine 4-4 is executed after the keynote / function determination routine 4-3 (FIG. 7).
As can be seen from the flow of FIG. 7, when the function of the new code can be specified by the keynote / function determination routine 4-3, the key hold flag CAOS indicates the key hold release state “0”.
If the function of the new code cannot be identified,
The key hold flag CAOS becomes the key hold state "1".
In the former case (23-1), the scale determination routine determines the scale in the section of the new code by the function name / scale conversion table in order to interpret the tonality narrowly (2
3-2). In the latter case, the scale determination routine determines the scale in the section of the new chord by the chord type / scale conversion table in order to widely interpret the tonality (23-3).

【0073】図24に機能名/スケール変換テーブルの
構成例をSCTとして示す。機能名/スケール変換テー
ブルSCTには、コードの機能名(機能とタイプ)とス
ケールとの対応が記憶される。図24のメモリマップの
場合(フォーマット参照)、テーブルSCTの各々、2
つの連続アドレスのなかの偶数アドレスに1つのコード
機能名(スケール度数とタイプ)が記憶され、次アドレ
スである奇数アドレスにその機能名に適合するスケール
名が記憶される。例えば、アドレス6、7には機能名
FIG. 24 shows an example of the structure of the function name / scale conversion table as SCT. The function name / scale conversion table SCT stores the correspondence between the function name (function and type) of the code and the scale. In the case of the memory map of FIG. 24 (see format), each of the table SCT is 2
One code function name (scale frequency and type) is stored in an even-numbered address of one continuous address, and a scale name that matches the function name is stored in an odd-numbered address that is the next address. For example, address 6 and 7 are function names

【外字9】 (データ7、0)に適合するスケールとしてミクソリデ
ィアンMIXOLYDIAN(データ2)が示されてい
る。ただし、アドレス60、62、64に示されるよう
に特殊なコードタイプ(コードタイプAug、dim、
及び
[External character 9] Mixolydian MIXOLYDIAN (data 2) is shown as a scale suitable for (data 7, 0). However, as shown in the addresses 60, 62, 64, special code types (code types Aug, dim,
as well as

【外字6】SUS4以外のSUS4)のコードについて
は、そのコードのルートのキーノートからのスケール度
数とは無関係に適合するスケールが定められる性質があ
る。この性質(機能)を示すため、これらの特殊コード
の度数エリア(機能部)にはデータ“14”が記憶され
る。換言すると、これらのコードに対するスケールはタ
イプ/スケール変換で得ている。またテーブルSCTの
最終アドレス(ここでは66)にはテーブル終了を示す
符号“15”が記憶される。
[External character 6] For a code of SUS4) other than SUS4, there is a property that a suitable scale is determined irrespective of the scale frequency from the keynote of the root of the code. In order to show this property (function), data "14" is stored in the frequency area (function part) of these special codes. In other words, the scales for these codes are obtained by type / scale conversion. Further, the code "15" indicating the end of the table is stored at the final address (here 66) of the table SCT.

【0074】機能名/スケール変換ルーチン23−2の
詳細なフローを図25に示す。このフローに入る時点で
FDNにはキーノート・機能判定処理(図7)の結果と
して、新コードの正しい機能名が記憶されており、FD
Ndが新コードのスケール度数(機能)を表わし、FD
Ntが新コードのタイプを表わしている。まず25−1
でCPU100は機能名/スケール変換テーブルSCT
に対するポインタiを“0”に初期化する。ポインタi
は25−2〜25−5のループにおいて、テーブル先頭
(i=0)からテーブル終了(SCTd[i]=15)
まで、2ずつインクリメントされる。新コードの機能名
FDNをポインタiの指すテーブル要素SCT[i]と
比較し(25−4)、一致すれば、次のテーブル要素S
CT[i+1]に記憶されるスケール識別データを調性
データメモリTDNのスケール部TDNsにセットする
(25−7)。タイプのみによってスケールを特定する
特殊コードが新コードの場合には、新コードのタイプF
DNtと一致するデータSCTt[i]をもち、特殊コ
ードであることを示すデータSCTd[i]=14をも
つテーブル要素SCTd[i]が発見される(25−
3)。その場合、次のテーブル要素SCT[i+1]に
記憶されるスケール識別データを調性データメモリTD
Nのスケール部TDNsにセットする(25−6)。
A detailed flow of the function name / scale conversion routine 23-2 is shown in FIG. At the time of entering this flow, the correct function name of the new code is stored in the FDN as a result of the keynote / function determination process (FIG. 7).
Nd represents the scale frequency (function) of the new code, and FD
Nt represents the type of new code. First 25-1
CPU100 is function name / scale conversion table SCT
The pointer i for is initialized to "0". Pointer i
In the loop of 25-2 to 25-5, from the table top (i = 0) to the table end (SCTd [i] = 15)
Is incremented by 2. The function name FDN of the new code is compared with the table element SCT [i] pointed to by the pointer i (25-4). If they match, the next table element S
The scale identification data stored in CT [i + 1] is set in the scale section TDNs of the tonality data memory TDN (25-7). If the special code that identifies the scale only by type is a new code, type F of the new code
A table element SCTd [i] having data SCTt [i] matching DNt and having data SCTd [i] = 14 indicating a special code is found (25-
3). In that case, the scale identification data stored in the next table element SCT [i + 1] is stored in the tonality data memory TD.
It is set in the scale part TDNs of N (25-6).

【0075】なお、特殊コードについても機能名/スケ
ール変換を行うようにテーブルSCTを変形することが
できる。また、図示のテーブルSCTでは機能名とスケ
ールを1対1対応にしていないが、(スケール表示では
なく)伴奏に利用する場合には1対1対応、即ち、機能
名ごとに固有のスケール名を返すようにテーブルSCT
を構成して機能名ごとに異なる(ピッチラインをもつ)
伴奏が得られるようにすることが望ましい。
The table SCT can be modified to perform the function name / scale conversion for the special code. Further, in the illustrated table SCT, the function name and the scale are not in one-to-one correspondence, but when used for accompaniment (not in scale display), there is a one-to-one correspondence, that is, a unique scale name for each function name. Table SCT to return
Different for each function name (with pitch line)
It is desirable to have accompaniment.

【0076】図26にコードタイプ/スケール変換テー
ブルの構成例をCFDとして示す。コードタイプ/スケ
ール変換テーブルCFDは各コードタイプに対するスケ
ーるを記憶する。そのようなスケールは図1(F)に関
して述べたような共通PC方式に従って定めることがで
きる。したがって、コードタイプ/スケール変換ルーチ
ン23−2では図27に示すように、TDNs=CFD
[CDNt]により、変換テーブルCFDから新コード
のタイプCDNtに対するスケールデータを取り出して
TDNsにセットしている。
FIG. 26 shows an example of the structure of the code type / scale conversion table as CFD. The code type / scale conversion table CFD stores the scale for each code type. Such a scale can be defined according to the common PC scheme as described with respect to FIG. Therefore, in the code type / scale conversion routine 23-2, as shown in FIG. 27, TDNs = CFD
With [CDNt], the scale data for the new code type CDNt is fetched from the conversion table CFD and set in TDNs.

【0077】伴奏処理4−5(図4)の詳細を図28に
示す。このフローで音楽スタイル別に使用される基準伴
奏パターンの例を図29に示す。この伴奏パターンはキ
ーノートとしてC、コード機能名として
FIG. 28 shows the details of the accompaniment process 4-5 (FIG. 4). FIG. 29 shows an example of the standard accompaniment pattern used for each music style in this flow. This accompaniment pattern is C as a keynote and chord function name

【外字10】 を想定している。図30に示す伴奏パターンメモリAM
(ROM102内)に図29の伴奏パターンを表わすデ
ータが記憶される。詳細には、伴奏パターンメモリAM
のアドレスにあるデータはピッチ部(第1部分)AMP
と図31に示すピッチチェンジテーブルPCTのテーブ
ル列番号を表わす部分(第2部分)AMTとから成る。
図28のフローに従って、CPU100は伴奏パターン
メモリAMを繰り返し読み出す。読み出したデータの第
1部分がピッチを表わす場合に、CPU100はそのピ
ッチを調性に適合させるため、ピッチチェンジテーブル
PCTを介して変更し、変更されたピッチのデータを楽
音生成装置108に送って、楽音信号を生成させる。
[External character 10] Is assumed. Accompaniment pattern memory AM shown in FIG.
The data representing the accompaniment pattern of FIG. 29 is stored in (ROM 102). Specifically, accompaniment pattern memory AM
The data at the address is the pitch part (first part) AM P
And comprising a pitch change table PCT portion representing a table column number (second part) AM T shown in FIG. 31.
According to the flow of FIG. 28, the CPU 100 repeatedly reads the accompaniment pattern memory AM. When the first portion of the read data represents a pitch, the CPU 100 modifies the pitch via the pitch change table PCT in order to adapt the pitch to the tonality, and sends the modified pitch data to the musical sound generator 108. , Generate a tone signal.

【0078】図31に示すピッチチェンジテーブルPC
Tは伴奏パターンメモリAMからのピッチを調性に適合
させるための差ピッチデータを記憶する。このテーブル
PCTの各列は基準伴奏パターンの各ピッチを表わし、
動作時に伴奏パターンメモリAMから読み出したピッチ
に関連する列ポインタAMTによって特定の列が指定さ
れる。テーブルPCTの各行は各スケールを表わし、動
作時にスケール判定ルーチン4−4からのスケールデー
タにより特定の行が指定される。列と行の交点に(行と
列が指定されたアドレスに)、その列が表わすピッチを
その行が表わすスケールに従って変更するのに用いる差
ピッチデータが記憶される。ピッチチェンジテーブルP
CTは大きく分けて、機能対応スケール群とタイプ対応
スケール群とに分かれる。機能対応スケール群は機能名
/スケール変換テーブルSCTから得られるスケール群
に対応し、タイプ対応スケール群はタイプ/スケール変
換テーブルCFDから得られるスケール群に対応する。
ただし、両テーブルSCT、CFDとも無判定コードを
含むのでこれらのコードに対応するピッチチェンジテー
ブルPCTの領域は共通化されている。
Pitch change table PC shown in FIG.
T stores difference pitch data for adapting the pitch from the accompaniment pattern memory AM to the tonality. Each column of this table PCT represents each pitch of the reference accompaniment pattern,
Particular column by column pointers AM T related to the pitch read out from the accompaniment pattern memory AM in operation is designated. Each row of the table PCT represents each scale, and a specific row is designated by the scale data from the scale determination routine 4-4 during operation. At the intersection of a column and a row (at a specified address for the row and column), the difference pitch data used to change the pitch represented by that column according to the scale represented by that row is stored. Pitch change table P
CT is roughly divided into a function-compatible scale group and a type-compatible scale group. The function-corresponding scale group corresponds to the scale group obtained from the function name / scale conversion table SCT, and the type-corresponding scale group corresponds to the scale group obtained from the type / scale conversion table CFD.
However, since both tables SCT and CFD include non-judgment codes, the areas of the pitch change table PCT corresponding to these codes are made common.

【0079】図28のフローにおいて、CPU100は
最初に、伴奏パターンポインタjを1つ進め(28−
1)、jが伴奏パターンメモリAMのサイズ(図30の
場合16)に達したら(28−2)、jを伴奏パターン
メモリAMの先頭を指す“0”に戻す(28−3)。次
にCPU100はポインタjの指す伴奏パターンメモリ
AMの第1データ部AMP[j]がピッチを示すデータ
かどうか調べる(28−4)。これが成立しないときは
なにもせずに伴奏処理ルーチンを終了する。AM
P[j]がピッチを表わしている場合には、28−5〜
28−8で伴奏音のピッチデータを生成する。
In the flow of FIG. 28, the CPU 100 first advances the accompaniment pattern pointer j by 1 (28-
1), when j reaches the size of the accompaniment pattern memory AM (16 in the case of FIG. 30) (28-2), j is returned to "0" indicating the beginning of the accompaniment pattern memory AM (28-3). Next, the CPU 100 checks whether or not the first data part AM P [j] of the accompaniment pattern memory AM pointed to by the pointer j is data indicating a pitch (28-4). If this is not the case, the accompaniment processing routine is ended without doing anything. AM
When P [j] represents a pitch, 28-5
At 28-8, pitch data of accompaniment sound is generated.

【0080】詳細には、現キー状態がキー保留状態でな
く(28−5)、新コード(現コード)が無判定コード
でない(28−6)場合には、28−7に示すように、 ANT=AMP[j]+PCT(TDNS)(AMN[j])+TDNK により、実際に演奏される伴奏音のピッチを表わすデー
タANTを生成する。即ち、伴奏パターンメモリAMか
らの基準ピッチデータAMP[j]に、ピッチチェンジ
テーブルPCTの第TDNS行、AMN[j]列にある差
ピッチデータを加え、更にその結果に現キーノートTD
Kを加えて実伴奏ピッチデータANTを得る。ここに
差ピッチデータPCT(TDNS)(AMN[j])はキ
ーノートC、コード機能名
Specifically, when the current key state is not the key hold state (28-5) and the new code (current code) is not the non-judgment code (28-6), as shown in 28-7, Data ANT representing the pitch of the accompaniment tone actually played is generated by ANT = AM P [j] + PCT (TDN S ) (AM N [j]) + TDN K. That is, the reference pitch data AM P [j] from the accompaniment pattern memory AM is added with the difference pitch data in the row TDN S , AM N [j] column of the pitch change table PCT, and the result is added to the current keynote TD.
N K is added to obtain real accompaniment pitch data ANT. Here, the difference pitch data PCT (TDN S ) (AM N [j]) is the keynote C and the chord function name.

【外字10】に適合するように書かれた基準伴奏パター
ンのピッチAMP[j]を、キーノート・機能判定ルー
チン(図7)で特定した現コードの機能名(ないしこの
機能名に対応するスケール)に適合するように変更する
ためのものである。したがって、AMP[j]+PCT
(TDNS)(AMN[j])の項は、キーノートがCで
機能名が現コードの機能名の場合の伴奏ピッチを表わ
す。したがってこの項に現キーノートのデータTDNS
を加えれば、現在の音楽状況に適合する伴奏ピッチ、即
ち現キーノートと現コード機能名に適合する伴奏ピッチ
が得られる。
The pitch AM P [j] of the standard accompaniment pattern written so as to conform to [External character 10] is the function name of the current chord (or the function name corresponding to this function name) specified by the keynote / function determination routine (FIG. 7). It is for changing so as to fit the scale). Therefore, AM P [j] + PCT
The term (TDN S ) (AM N [j]) represents the accompaniment pitch when the keynote is C and the function name is the function name of the current chord. Therefore, the current keynote data TDN S
By adding, the accompaniment pitch that matches the current music situation, that is, the accompaniment pitch that matches the current keynote and the current chord function name can be obtained.

【0081】現キー状態がキー保留状態である場合には
28−8に示すように、 ANT=AMP[j]+PCT(TDNS)(AMN[j])+CDNr により、実伴奏ピッチデータANTを生成する。即ち、
伴奏パターンメモリAMからの基準ピッチデータにピッ
チチェンジテーブルPCTの第TDNS行、AMN[j]
列にある差ピッチデータを加え、更にその結果に現コー
ドルートCDNrを加えて実伴奏ピッチデータANTを
得る。この場合の差ピッチデータはコードルートCと同
じピッチクラスの基音Cで始まるスケール“IONIA
N”、即ち、ピッチクラスセット(C、D、E、F、
G、A、B)に適合するように書かれた基準伴奏パター
ンのピッチAMP[j]を、現コードのタイプを広い調
性で解釈したスケールに適合するように変更するための
ものである。したがって、この式のAMP[j]+PC
T(TDNS)(AMN[j])の項は、基音がC(コー
ドルートがC)で現コードのタイプに対応するスケール
の場合のピッチを表わす。したがって、この項に現コー
ドルートのデータCDNrを加えれば、現在の音楽状況
に適した伴奏音ピッチ、即ち現コードのルートとタイプ
から広い調性解釈に従って定められる使用可能なピッチ
クラスセットに適合する伴奏音ピッチが得られる。
When the current key state is the key hold state, as shown in 28-8, the actual accompaniment pitch data ANT is obtained by ANT = AM P [j] + PCT (TDN S ) (AM N [j]) + CDNr. To generate. That is,
The TDN S row of pitch change table PCT based pitch data from the accompaniment pattern memory AM, AM N [j]
The difference pitch data in the row is added, and the current chord root CDNr is further added to the result to obtain the real accompaniment pitch data ANT. The difference pitch data in this case is a scale "IONIA" starting with the fundamental note C of the same pitch class as the chord root C.
N ", that is, pitch class set (C, D, E, F,
G, A, B) to change the pitch AM P [j] of the reference accompaniment pattern written so as to conform to a scale in which the type of the current chord is interpreted with wide tonality. . Therefore, AM P [j] + PC of this equation
The term T (TDN S ) (AM N [j]) represents the pitch when the fundamental is C (the chord root is C) and the scale corresponds to the type of the current chord. Therefore, if the data CDNr of the current chord root is added to this term, the accompaniment pitch suitable for the current music situation, that is, the usable pitch class set determined according to a wide tonality interpretation from the root and type of the current chord, is applied. Accompaniment tone pitch is obtained.

【0082】なお、現キー状態がキー保留解除状態であ
っても現コードが調無判定コードの場合にはキー保留状
態に準じて実伴奏音ピッチデータANTを得ている(2
8−8)。最後に、CPU100はこのようにして生成
された伴奏音のピッチデータを含むノートオンコマンド
を楽音生成装置108に送って、対応するピッチの楽音
を生成させる(28−7)。
Even if the current key state is the key hold release state, if the current chord is the key non-judgment code, the real accompaniment tone pitch data ANT is obtained according to the key hold state (2
8-8). Finally, the CPU 100 sends a note-on command including the pitch data of the accompaniment sound thus generated to the musical sound generation device 108 to generate a musical sound of the corresponding pitch (28-7).

【0083】図32は本装置による伴奏例を示したもの
である。コード進行として、C Major→F Ma
jor→G Major→C Majorが使用されて
いる。このコード進行から、キーノート・機能判定(図
7)により、キーノートが“C”で、機能名進行が
FIG. 32 shows an accompaniment example by this apparatus. As a chord progression, C Major → F Ma
jor → G Major → C Major is used. From this chord progression, the keynote is "C" and the function name progression is based on the keynote / function judgment (Fig. 7).

【外字11】 の分析結果が得られる(このコード進行に先行する区間
のキーノートとしてCが与えられた場合)。したがっ
て、C Majorの区間の伴奏は、伴奏パターンメモ
リAMのピッチ内容が変更されずに形成される。しか
し、コードF Majorの区間では記憶される基準伴
奏パターンのピッチラインC5→E5→B4→E5→A
4→E5→B4→E5のうち、E5がピッチ変更テーブ
ルPCTのピッチ変更データ“1”に従って半音上げら
れ(コード機能名
[External character 11] Is obtained (when C is given as a keynote of the section preceding this chord progression). Therefore, the accompaniment of the section of C Major is formed without changing the pitch content of the accompaniment pattern memory AM. However, the pitch line C5 → E5 → B4 → E5 → A of the reference accompaniment pattern stored in the section of the chord F Major.
Among 4 → E5 → B4 → E5, E5 is raised by a semitone according to the pitch change data “1” in the pitch change table PCT (chord function name

【外字12】 なので、C5→F5→B4→F5→A4→F5→B4→
F5のピッチラインが形成される。また、コードG M
ajorの区間ではそのコード機能名が
[External character 12] So C5 → F5 → B4 → F5 → A4 → F5 → B4 →
The pitch line of F5 is formed. Also, the code G M
In the ajor section, the code function name is

【外字9】なので、ピッチ変更テーブルPCTに従い基
準伴奏パターンのピッチラインにおけるC5がピッチ変
更データ“1”によりB4に半音下げられE5、B4、
A4がピッチ変更データ“2”により全音下げられてD
5、A4、G4に変更され、その結果、B4→D5→A
4→D5→G4→D5→A4→D5のピッチラインが形
成される。
[External character 9] Therefore, according to the pitch change table PCT, C5 in the pitch line of the reference accompaniment pattern is semitone lowered to B4 by the pitch change data "1" E5, B4,
A4 is lowered by the pitch change data "2" for all notes D
5, A4, G4, resulting in B4 → D5 → A
A pitch line of 4 → D5 → G4 → D5 → A4 → D5 is formed.

【0084】図33に本装置によるキー保留時の伴奏例
を示す。詳細には、図33はキーが保留の状態の下で
(現キーノートが存在しないか不明な音楽状況下で)、
コードC Majorが与えられた場合に、このコード
の区間において演奏される伴奏を示したものである。こ
のような音楽状況の下で与えられるコードCMajor
に対し、キーノート・機能判定ルーチン(図7)はコー
ドC Majorの機能を特定することはできない。し
たがって、コードC Majorの区間で使用可能なピ
ッチクラスセットはC、D、E、G、Aとなる(図1
(F)参照)。この場合、タイプ/スケール変換ルーチ
ンの実行結果としてピッチチェンジテーブルPCTのS
CALE1の行(タイプMajorに対応する行)が基
準伴奏パターンメモリAMからのピッチを変更するため
に選択される。結果として基準伴奏パターンのピッチラ
イン、C5→E5→B4→E5→A4→E5→B4→E
5は、ピッチクラスセットC、D、E、G、Aに適合す
るピッチライン(図33の伴奏のピッチライン)C5→
E5→G4→E5→A4→E5→G4→E5に変更され
る。両ピッチラインを比較してみると、基準伴奏ピッチ
B4がG4に変化していることがわかる(これはテーブ
ルPCTのSCALE1行、2列のデータ“−4”をB
4のピッチデータに加えた結果である)。変更の理由は
ピッチB4のピッチクラスBが使用可能なピッチクラス
セットC、D、E、G、Aに含まれないからである。図
33の伴奏は3つの調C、F、Gの可能性を秘めている
ので後続する伴奏が調C、調F、調Gのいずれを明確に
するようなものであっても、その調性を損わないように
作用する。
FIG. 33 shows an accompaniment example when the key is held by this apparatus. In detail, FIG. 33 shows that when the key is on hold (the current keynote does not exist or the music situation is unknown),
When a chord C Major is given, the accompaniment played in this chord section is shown. The code C Major given under such a music situation
On the other hand, the keynote / function determination routine (FIG. 7) cannot specify the function of the code C Major. Therefore, the pitch class sets that can be used in the section of the chord C Major are C, D, E, G, and A (see FIG. 1).
(See (F)). In this case, as a result of executing the type / scale conversion routine, the pitch change table PCT S
The row of CALE1 (the row corresponding to the type Major) is selected to change the pitch from the reference accompaniment pattern memory AM. As a result, the pitch line of the reference accompaniment pattern, C5 → E5 → B4 → E5 → A4 → E5 → B4 → E
5 is a pitch line (accompaniment pitch line of FIG. 33) C5 which conforms to the pitch class set C, D, E, G, A.
It is changed to E5 → G4 → E5 → A4 → E5 → G4 → E5. Comparing both pitch lines, it can be seen that the standard accompaniment pitch B4 has changed to G4.
4 is the result of adding to the pitch data). The reason for the change is that the pitch class B of the pitch B4 is not included in the usable pitch class sets C, D, E, G and A. Since the accompaniment of FIG. 33 has the possibility of three keys C, F, and G, even if the subsequent accompaniment is to clarify any of key C, key F, and key G, the tonality is the same. Acts so as not to damage.

【0085】このように、本自動伴奏装置では、コード
の機能を特定できないときに、そのコードのタイプとル
ートから広い調性を許容するような伴奏をそのコード区
間で演奏することにより、曲の伴奏全体の調性の流れを
自然なものにすることができる。
As described above, in the present automatic accompaniment apparatus, when the chord function cannot be specified, the accompaniment that allows a wide tonality from the chord type and the root is performed in the chord section, so that the musical piece The tonality flow of the entire accompaniment can be made natural.

【0086】[0086]

【変形例】以上で実施例の説明を終えるが、この発明の
範囲内で種々の変形が可能である。例えば、複数の調性
判定モジュールをコード進行の同一コードの調性判定の
ためにすべて動作させその結果得られる複数の調性判定
結果に基づいて最終的な調性判定を行うようにすること
ができる。例えば、先行区間の調が判明している状況に
おいて、先行調情報を新コードの機能判定に利用する第
1判定部30だけでなく、先行調情報を手掛りとしない
で新コードの機能を判定する第2判定部40も動作させ
る。そして第1判定部30の結果と第2判定部40の結
果とを所定の論理に従って組み合わせて最終的な調性を
決定する。所定の組み合わせ論理として次のようなもの
が使用できる。(a)複数の判定部のうち1つの判定部
(例えば第1判定部)のみが新コードの機能を特定でき
(判定成功で)、他の判定部(第2判定部)は判定失敗
の場合は、判定成功の判定部の結果を最終的な調性の決
定に用い、(b)複数の判定部が判定成功で新コードの
機能として同じ判定結果を出したときはその判定結果を
最終的な調性の決定に用い、(c)複数の判定部が判定
に成功したが新コードの機能として異なる判定結果を出
したときには、下記の(c1)あるいは(c2)の方法
で最終的な調性を決定する。(c1)判定に成功した複
数の判定モジュールの判定結果のなかで、その判定に利
用したコードシーケンスの長さが最長である判定結果を
最終的な調性の決定に用いる。例えば、第1判定部の判
定結果が機能
[Modification] The description of the embodiment has been completed, but various modifications are possible within the scope of the present invention. For example, a plurality of tonality determination modules may all be operated to determine the tonality of the same chord in the chord progression, and the final tonality determination may be performed based on the resulting tonality determination results. it can. For example, in a situation in which the key of the preceding section is known, the function of the new chord is judged not only by the first judging unit 30 which uses the preceding key information for judging the function of the new chord, but also by using the preceding key information as a clue. The second determination unit 40 also operates. Then, the result of the first determination unit 30 and the result of the second determination unit 40 are combined according to a predetermined logic to determine the final tonality. The following can be used as the predetermined combination logic. (A) In the case where only one of the plurality of determining units (for example, the first determining unit) can specify the function of the new code (when the determination is successful) and the other determining units (the second determining units) fail in the determination. Uses the result of the judgment unit of the judgment success in the final tonality determination. (B) When a plurality of judgment units gives the same judgment result as the function of the new chord in the judgment success, the judgment result is finally judged. (C) When multiple judgment sections succeed in judgment but different judgment results are obtained as a function of the new chord, the final adjustment is performed by the method of (c1) or (c2) below. Determine sex. (C1) Among the determination results of the plurality of determination modules that have succeeded in the determination, the determination result in which the length of the code sequence used for the determination is the longest is used for the final tonality determination. For example, the determination result of the first determination unit is functional.

【外字3】であり、その判定のために長さ2(コード数
2)のコードシーケンス知識を用いたとし、第2判定部
の判定結果が機能
It is [external character 3], and it is assumed that the code sequence knowledge of length 2 (code number 2) is used for the determination, and the determination result of the second determination unit functions.

【外字1】であり、その判定のために長さ3のコードシ
ーケンス知識を用いたとすれば、第2判定部の判定結果
“新コードの機能
[External character 1] and if the code sequence knowledge of length 3 is used for the determination, the determination result of the second determination unit is “new code function”.

【外字1】”を最終的な調性の決定に用いる。(c2)
判定に成功した複数の判定モジュールの判定結果である
複数の異なる機能を可能性として許容するような調性を
決定する(なお、(c1)のケースで判定の基礎にした
コードシーケンス長が同じ場合も(c2)の論理を使用
できる)。例えば、コードC Majorに対し第1判
定部がこのコードの機能を
[External character 1] "is used to determine the final tonality (c2).
The tonality that allows a plurality of different functions, which are the determination results of the plurality of determination modules that have been successfully determined, is determined as a possibility. Can also use the logic of (c2)). For example, for the code C Major, the first determination unit determines the function of this code.

【外字3】と判定し、第2判定部がこのコードの機能をIt is judged as [External character 3], and the second judgment unit confirms the function of this code.

【外字1】と判定した場合に、機能Function when it is judged as [External character 1]

【外字3】に対して使用可能なピッチクラスセットC、
D、E、F、G、A、と機能
Pitch class set C that can be used for [gaiji 3],
Function with D, E, F, G, A, B

【外字1】に対して使用可能なピッチクラスセットC、
D、E、F、G、A、B♭の両方に共通なピッチクラス
C、D、E、F、G、AをコードC Majorの区間
で使用可能なピッチクラスセットとして決定する。
Pitch class set C that can be used for [gaiji]
The pitch classes C, D, E, F, G, and A common to both D, E, F, G, A, and B ♭ are determined as the pitch class set usable in the section of the chord C Major.

【0087】コード進行知識ベース60のデータ構造な
いしプログラム構造は種々の形式をとり得る。例えば、
同一キーノート維持コードテーブル61として、タイプ
と機能の組み合わせで指定される各ビットメモリに、そ
の組み合わせが同一キーノートを維持するか(ビット
“1”)しないか(ビット“0”)を示す1ビット情報
を記憶しておく。例えば、タイプの総数E16機能の総
数を12とした場合、1ワードが16ビットのメモリ
(各アドレスに16ビットを記憶するメモリ)であれば
連続する12のアドレスのメモリで同一キーノート維持
テーブル61を実現できる。この場合、同一キーノート
検索ルーチンは入力コードのタイプと機能とから、それ
に対応するアドレスと、そのアドレスのワード中のビッ
ト位置(入力コードのタイプと機能が同一キーノートを
維持するかどうかの情報を記憶している場所)を直接計
算できるので、高速の検索、高速の同一キーノート判定
を達成できる。
The data structure or program structure of the chord progression knowledge base 60 can take various forms. For example,
As the same keynote maintaining code table 61, in each bit memory designated by a combination of type and function, it indicates whether the combination holds the same keynote (bit "1") or not (bit "0"). Store bit information. For example, if the total number of types E16 functions is 12, and if one word is a 16-bit memory (a memory that stores 16 bits at each address), the same keynote maintenance table 61 is used for consecutive 12-address memories. Can be realized. In this case, the same keynote search routine determines from the type and function of the input code, the corresponding address and the bit position in the word at that address (information whether the input code type and function maintain the same keynote. Since it is possible to directly calculate (the place where is stored), high-speed search and high-speed same keynote determination can be achieved.

【0088】あるいは、各テーブルメモリ内のデータを
順序づけ、バイナリサーチ(2分木サーチ)のような高
速検索が行えるようにすれば、調性判定の処理速度を一
段と上げることができ、実時間処理のアプリケーション
にとって望ましい。例えば、調確立コードシーケンステ
ーブル63をバイナリサーチに適合させるため、テーブ
ルエントリする調確立コードシーケンスを、シーケンス
の終端のコードのタイプを示すデータの昇順に並べ、終
端コードのタイプが同じものについては第1ルート差
(1つ前のコードのルートと終端コードのルートとの
差)を表わすデータの昇順に並べ、以下、同様にして調
確立コードシーケンス順序づける。各調確立コードシー
ケンスメモリは、例えば最初のアドレスの第2部に終端
コードのタイプ、次アドレスの第1部に第1ルート差第
2部に1つ前のコードのタイプ、以下同様にして最後の
アドレスの第1部にシーケンス終了マーク、第2部に終
端コードの機能を記憶するようなフォーマットをとる。
シーケンス開始インデクステーブルを設け、これに、調
確立コードシーケンステーブルの各アドレスに対しその
アドレスに一部として記憶しているコードシーケンスが
開始する調確立コードシーケンステーブル上のアドレス
を示すシーケンス開始インデクスを記憶させる。動作に
おいて、調確立検索ルーチンは、(A1)最初に調確立
コードシーケンステーブルの真中にある調確立コードシ
ーケンスを取り出す(テーブルサイズ×1/2をインデ
クステーブルで変換して)。(A2)そのシーケンスの
終端のコードのタイプデータx1と、入力コードパター
ンの新コードのタイプデータy1を比較する。(A3)
x1>y1なら、調確立コードシーケンステーブルの前
半分の中央にある調確立コードシーケンスを取り出し
(現アドレス×1/2をインデクステーブルで変換し
て)、(A4)x1<y1なら調確立コードシーケンス
テーブルの後半分の中央にある調確立コードシーケンス
を取り出す(現アドレス+(テーブルサイズ−現アドレ
ス)×1/2をインデクステーブルで変換して)。x1
=y1なら、シーケンスの第1ルート差データx2と入
力コードパターンの第1ルート差データy2を比較し、
x2>y2なら(A3)を実行、x2<y2なら(A
4)を実行し、x1=y1、x2=y2ならシーケンス
の1つ前のコードのタイプデータx3と入力コードパタ
ーンの1つ前のコードのタイプデータy3を比較しx3
>y3なら(x1、x2、x3>y1、y2、y3と表
記する)、(A3)を実行、x3<y3(x1、x2、
x3<y1、y2、y3)なら(A4)を実行する。同
様にして、x1、x2、x3……>y1、y2、y3…
…なら(A3)をx1、x2、x3……<y1、y2、
y3……なら(A4)を実行する。(A5)次に(A
3)または(A4)で取り出した調確立コードシーケン
スを再び入力コードパターンと比較し、x1……>y1
……なら前方にあるテーブルの1/4エリアの中央の調
確立コードシーケンスを取り出し、x1……<y1……
なら後方にあるテーブルの1/4エリアの中央の調確立
コードシーケンスを取り出す。以上の処理を続けること
により、検索エリアは1、1/2、1/4、 1/8…
…と収束していくことになる。検索終了条件は、(r
1)入力コードパターンと調確立シーケンスの条件部と
の比較が一致したままでそのシーケンスの終了マークを
みたとき、“適合する”であり、(r2)今回の調確立
コードシーケンスのアドレスが前回の検索パスにおける
調確立コードシーケンスのアドレスと同一の場合に“適
合しない”である。このような2分木サーチを行なえ
ば、127のキー確立コードシーケンスをもつテーブル
に対する検索を、高々7回程度の比較(入力コードパタ
ーンと調確立シーケンスとの比較)で終了することがで
きる。
Alternatively, if the data in each table memory is ordered and a high-speed search such as a binary search (binary tree search) can be performed, the processing speed of tonality determination can be further increased, and real-time processing can be performed. Desirable for applications. For example, in order to adapt the key establishment code sequence table 63 to a binary search, key entry code sequences to be entered into the table are arranged in ascending order of data indicating the type of code at the end of the sequence, and those having the same type of end code are The data representing one root difference (difference between the root of the code immediately before and the root of the termination code) are arranged in ascending order, and thereafter, the key establishment code sequence is similarly arranged. Each key establishment code sequence memory is, for example, the end code type in the second part of the first address, the first route difference in the first part of the next address, the previous code type in the second part, and so on. The format is such that the sequence end mark is stored in the first part of the address and the function of the termination code is stored in the second part.
A sequence start index table is provided, and for each address of the key establishment code sequence table, the sequence start index indicating the address on the key establishment code sequence table at which the code sequence stored as part of that address starts is stored. Let In operation, the key establishment search routine (A1) first retrieves the key establishment code sequence in the middle of the key establishment code sequence table (converting table size x 1/2 with the index table). (A2) The type data x1 of the code at the end of the sequence is compared with the type data y1 of the new code of the input code pattern. (A3)
If x1> y1, the key establishment code sequence in the center of the first half of the key establishment code sequence table is extracted (current address × 1/2 is converted by the index table), and if (A4) x1 <y1, the key establishment code sequence is obtained. The key establishment code sequence in the center of the second half of the table is taken out (current address + (table size-current address) x 1/2 is converted by the index table). x1
= Y1, the first root difference data x2 of the sequence and the first root difference data y2 of the input code pattern are compared,
If x2> y2, execute (A3). If x2 <y2, execute (A3).
4) is executed, and if x1 = y1 and x2 = y2, the type data x3 of the code immediately preceding the sequence is compared with the type data y3 of the code immediately preceding the input code pattern to obtain x3.
> Y3 (expressed as x1, x2, x3> y1, y2, y3), execute (A3), x3 <y3 (x1, x2,
If x3 <y1, y2, y3), execute (A4). Similarly, x1, x2, x3 ...> y1, y2, y3 ...
If ... (A3) is x1, x2, x3 ... <y1, y2,
If y3 ... (A4) is executed. (A5) Then (A
3) or (A4), the key establishment code sequence extracted again is compared with the input code pattern, and x1 ...> y1
...... Then, the key establishment code sequence in the center of the 1/4 area of the table in front is taken out, and x1 …… <y1 ……
Then, the key establishment code sequence in the center of the 1/4 area of the rear table is taken out. By continuing the above processing, the search areas are 1, 1/2, 1/4, 1/8 ...
... will converge. The search end condition is (r
1) When the end mark of the sequence is seen while the comparison between the input code pattern and the condition part of the key establishment sequence remains the same, (r2) the address of this key establishment code sequence is It is “not compatible” when it is the same as the address of the key establishment code sequence in the search path. If such a binary tree search is performed, the search for the table having 127 key establishment code sequences can be completed by comparison at most about 7 times (comparison between the input code pattern and the key establishment sequence).

【0089】また、AND.OR形式の音楽ルールでコ
ードシーケンステーブルを構成すれば、その記憶容量を
節約できる。例えば、(a)(終端コードのタイプがt
1で)かつ(第1ルート差がr1かつ1つ前のコードタ
イプがt2)または(第1ルート差がr2かつ1つ前の
コードタイプがt3)ならば終端コードの機能はf1で
ある、といったAND.OR形式の音楽ルールは、デー
タt1、r1、t2、f1とシーケンス終了マーク(ま
たはシーケンスの長さ)とAND/ORの識別マークビ
ットで記憶できる。したがってAND形式の2つの音楽
ルールは(b)(終端コードのタイプがt1で)かつ
(第1ルート差がr1)かつ(1つ前のコードタイプが
t2)ならば終端コードの機能はf1である、と(c)
(終端コードのタイプがt1で)かつ(第1ルート差が
r2)かつ(1つ前のコードタイプがt3)ならば終端
コードの機能はf1である、に比べ終端コードのタイプ
t1と機能f1、終了マークのためのデータの繰り返し
を避けることができる。
In addition, AND. If the chord sequence table is composed of OR-type music rules, the storage capacity can be saved. For example, (a) (the termination code type is t
1) and (the first route difference is r1 and the preceding code type is t2) or (the first route difference is r2 and the preceding code type is t3), the function of the termination code is f1. AND. The OR-type music rule can be stored with data t1, r1, t2, f1, a sequence end mark (or sequence length), and an AND / OR identification mark bit. Therefore, if the two music rules of AND format are (b) (the end chord type is t1) and (the first root difference is r1) and (the preceding chord type is t2), the end chord function is f1. Yes, (c)
If (termination code type is t1), (first route difference is r2), and (previous code type is t3), the function of the termination code is f1, compared with the termination code type t1 and function f1. , It is possible to avoid repetition of data for the end mark.

【0090】[0090]

【発明の効果】以上詳細に述べたように、この発明の調
性判定装置は現キーノートを手掛りにしてコード進行を
分析して個々のコードの区間における調性を判定する第
1調性判定手段と、現キーノートを手掛りとすることな
くコード進行を分析して個々のコードの区間における調
性を判定する第2調性判定手段とを含む。両調性判定手
段は互いの欠点をおぎなうように作用する。したがって
全体として調性判定能力が高められ、正しい調の検出遅
れが小さく、誤った調の判定発生率が低く、転調の検出
ミスが少ない調性判定装置を提供できる。
As described in detail above, the tonality determination device of the present invention uses the current keynote as a clue to analyze the chord progression to determine the tonality in each chord section. Means and second tonality determination means for analyzing the chord progression and determining the tonality in each chord section without using the current keynote as a clue. The bitonality determining means act so as to cover each other's defects. Therefore, it is possible to provide a tonality determination device in which the tonality determination capability is improved as a whole, the correct key detection delay is small, the erroneous key determination occurrence rate is low, and the transposition detection error is small.

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

【図1(A)】この発明による調性判定装置の一態様を
示す機能ブロック図である。
FIG. 1A is a functional block diagram showing an aspect of a tonality determination device according to the present invention.

【図1(B)】(A)に示すような調性判定装置の判定
結果を利用して伴奏を形成する伴奏形成装置の機能ブロ
ック図である。
FIG. 1B is a functional block diagram of an accompaniment forming apparatus that forms an accompaniment by using the determination result of the tonality determination apparatus as shown in FIG.

【図1(C)】(B)に示す第1伴奏形成装置の構成例
を示す機能ブロック図である。
FIG. 1 (C) is a functional block diagram showing a configuration example of a first accompaniment forming device shown in (B).

【図1(D)】(B)に示す第2伴奏形成装置の機能ブ
ロック図である。
FIG. 1D is a functional block diagram of the second accompaniment forming device shown in FIG.

【図1(E)】伴奏形成装置の別の構成例の機能ブロッ
ク図である。
FIG. 1 (E) is a functional block diagram of another configuration example of the accompaniment forming apparatus.

【図1(F)】機能を特定できないコードの区間で使用
可能なピッチクラスセットを得るために共通PC法を適
用したテーブルを示す図である。
FIG. 1 (F) is a diagram showing a table to which a common PC method is applied in order to obtain a pitch class set that can be used in a chord section whose function cannot be specified.

【図2】この発明の具体的な実施例に係る自動伴奏装置
のハードウェアのブロック図である。
FIG. 2 is a hardware block diagram of an automatic accompaniment apparatus according to a specific embodiment of the present invention.

【図3】図2のCPUにより実行されるメインプログラ
ムのフローチャートである。
3 is a flowchart of a main program executed by the CPU of FIG.

【図4】図2のCPUにより実行されるインタラプトル
ーチンのフローチャートである。
FIG. 4 is a flowchart of an interrupt routine executed by the CPU of FIG.

【図5】コード構成音テーブルを示す図である。FIG. 5 is a diagram showing a chord component sound table.

【図6(A)】一時変数のリストの一部を示す図であ
る。
FIG. 6A is a diagram showing a part of a list of temporary variables.

【図6(B)】一時変数のリストの一部を示す図であ
る。
FIG. 6B is a diagram showing a part of a list of temporary variables.

【図6(C)】一時変数のリストの一部を示す図であ
る。
FIG. 6C is a diagram showing a part of a list of temporary variables.

【図7】キーノート・機能判定のフローチャートであ
る。
FIG. 7 is a flowchart of keynote / function determination.

【図8】現キー保留検査のフローチャートである。FIG. 8 is a flowchart of a current key hold inspection.

【図9】新コードの機能生成のフローチャートである。FIG. 9 is a flowchart of function generation of a new code.

【図10】同一キーノート維持コードテーブルを例示す
る図である。
FIG. 10 is a diagram illustrating an example of the same keynote keeping code table.

【図11】新コードについて同一キーノート維持コード
テーブルを検索するフローチャートである。
FIG. 11 is a flowchart for searching the same keynote maintenance code table for a new code.

【図12】平行調コードシーケンステーブルを例示する
図である。
FIG. 12 is a diagram illustrating a parallel code sequence table.

【図13】直前コードと新コードとから成るコード対に
ついて平行調コードシーケンステーブルを検索するフロ
ーチャートである。
FIG. 13 is a flowchart for searching a parallel tone code sequence table for a code pair consisting of an immediately preceding code and a new code.

【図14】ピボットコードテーブルを例示する図であ
る。
FIG. 14 is a diagram illustrating a pivot code table.

【図15】転調後コードテーブルを例示する図である。FIG. 15 is a diagram illustrating a post-modulation code table.

【図16】直前コードと新コードとから成るコード対に
ついてピボットコードテーブルと転調後コードテーブル
の検索を含むピボット転調検査のフローチャートであ
る。
FIG. 16 is a flowchart of a pivot modulation inspection including a search of a pivot code table and a post-modulation code table for a code pair consisting of an immediately preceding code and a new code.

【図17】キーノート更新のフローチャートである。FIG. 17 is a flowchart of keynote updating.

【図18】キー確立コードシーケンステーブルを例示す
る図である。
FIG. 18 is a diagram illustrating a key establishment code sequence table.

【図19】新コードを含む入力コードパターンについて
キー確立コードシーケンステーブルをを検索するフロー
チャートである。
FIG. 19 is a flowchart for searching the key establishment code sequence table for an input code pattern including a new code.

【図20】キー保留設定のフローチャートである。FIG. 20 is a flowchart of key hold setting.

【図21】キー保留解除のフローチャートである。FIG. 21 is a flowchart of key hold release.

【図22】調設定のフローチャートである。FIG. 22 is a flowchart of key setting.

【図23】スケール判定のフローチャートである。FIG. 23 is a flowchart of scale determination.

【図24】機能名/スケール変換テーブルを例示する図
である。
FIG. 24 is a diagram illustrating a function name / scale conversion table.

【図25】機能名/スケール変換ルーチンのフローチャ
ートである。
FIG. 25 is a flowchart of a function name / scale conversion routine.

【図26】コードタイプ/スケール変換テーブルを例示
する図である。
FIG. 26 is a diagram illustrating a code type / scale conversion table.

【図27】コードタイプ/スケール変換ルーチンのフロ
ーチャートである。
FIG. 27 is a flowchart of a chord type / scale conversion routine.

【図28】伴奏処理のフローチャートである。FIG. 28 is a flowchart of an accompaniment process.

【図29】伴奏パターン例の楽譜を示す図である。FIG. 29 is a diagram showing a score of an example of an accompaniment pattern.

【図30】図29の伴奏パターンを記憶する伴奏パター
ンメモリを示す図である。
FIG. 30 is a diagram showing an accompaniment pattern memory for storing the accompaniment pattern of FIG. 29.

【図31】ピッチチェンジテーブルを示す図である。FIG. 31 is a diagram showing a pitch change table.

【図32】伴奏例の楽譜を示す図である。FIG. 32 is a diagram showing a score of an accompaniment example.

【図33】キー保留時の伴奏例の楽譜を示す図である。FIG. 33 is a diagram showing a score of an accompaniment example when keys are held.

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

10 調性判定装置 90、90M 伴奏形成装置 20 コード進行入力装置 30 第1判定部(現キーノートを手掛りにして新コー
ドの機能とキーノートを判定する) 40 第2判定部(現キーノートを手掛りにすることな
く新コードの機能とキーノートを判定する) 60 コード進行知識データベース 50 キー保留フラグ(現キーノートが不明かどうかを
示す) 51 現キーノートメモリ 52 キーノート更新部 70 調性データ生成部(各コードの区間で使用可能な
ピッチクラスセットを決定する) 71 機能名/スケール変換テーブル(機能を特定でき
たコードの区間で使用可能なスケールを返す) 73 タイプ/スケール変換テーブル(機能を特定でき
なかったコードの区間で使用可能なスケールを返す) 190 第1伴奏形成装置(機能を特定できたコードの
区間の伴奏を形成する) 290 第2伴奏形成装置(機能を特定できなかったコ
ードの区間の伴奏を形成する) 100 CPU 102 ROM 104 RAM 106 入力装置
10 Tonality determination device 90, 90M Accompaniment forming device 20 Chord progression input device 30 First determination unit (determines the function and keynote of a new chord using the current keynote as a clue) 40 Second determination unit (current keynote The function of the new chord and the keynote are judged without using a clue. 60 Chord progress knowledge database 50 Key hold flag (indicating whether the current keynote is unknown) 51 Current keynote memory 52 Keynote updating section 70 Tonality data Generator (determines the pitch class set that can be used in each chord section) 71 Function name / scale conversion table (returns the scale that can be used in the chord section where the function can be specified) 73 Type / scale conversion table (function Returns the scale that can be used in the chord section that could not be specified.) 190 1st accompaniment forming device (specified function 290 Second accompaniment forming device (forming accompaniment for chord segment whose function could not be specified) 100 CPU 102 ROM 104 RAM 106 Input device

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 各コードをルートとタイプで表現したコ
ード進行を付与するコード進行付与手段と、 現在の調性に係る現キーノートを表わすデータを記憶す
る現キーノート記憶手段と、 上記コード進行からの新たなコードの調性を、上記現キ
ーノートに基づいて判定する第1調性判定手段と、 上記コード進行からの新たなコードの調性を、上記現キ
ーノートに基づくことなく、新たなコードと新たなコー
ドに先行するコードとの間に形成されるコードパターン
を分析することによって判定する第2調性判定手段と、 を有することを特徴とする調性判定装置。
1. A chord progression giving means for giving a chord progression in which each chord is represented by a root and a type, a current keynote storage means for storing data representing a current keynote relating to a current tonality, and the chord progression. A new tonality determining means for determining the tonality of a new chord based on the current keynote, and a tonality of a new chord from the chord progression, based on the current keynote. Tonality determining device that determines by analyzing a code pattern formed between a new code and a code preceding the new code.
【請求項2】 請求項1記載の調性判定装置において、 上記第1調性判定手段は上記現キーノートが特定されて
いるときに動作可能であり、 上記第2調性判定手段は上記現キーノートが特定されて
いないときに動作可能であることを特徴とする調性判定
装置。
2. The tonality determining apparatus according to claim 1, wherein the first tonality determining unit is operable when the current keynote is specified, and the second tonality determining unit is the current tonality determining unit. A tonality determination device which is operable when a key note is not specified.
【請求項3】 請求項1記載の調性判定装置において、 上記第2調性判定手段は、上記第1調性判定手段により
上記新たなコードの調性が特定されなかった場合に動作
可能であることを特徴とする調性判定装置。
3. The tonality determining apparatus according to claim 1, wherein the second tonality determining unit is operable when the tonality of the new chord is not specified by the first tonality determining unit. A tonality determination device characterized by being present.
【請求項4】 請求項1記載の調性判定装置において、 上記第1調性判定手段は、 キーノートを同一に維持するコードのセットを記憶する
同一キーノート維持コードテーブル記憶手段と、 あるキーノートから別のキーノートへの転調を示す転調
コードシーケンスのセットを記憶する転調コードシーケ
ンステーブル記憶手段と、 上記現キーノート、上記同一キーノート維持コードテー
ブル記憶手段、及び上記転調コードシーケンステーブル
記憶手段を用いて上記コード進行を分析して上記新たな
コードの機能名とキーノートを判定する第1機能名・キ
ーノート判定手段と、 上記第1機能名・キーノート判定手段により判定された
機能名とキーノートとに基づき、上記新たなコードの区
間で使用可能なピッチクラスセットを規定する調性デー
タを生成する第1調性データ生成手段と、 を有し、 上記第2調性判定手段は、 キーノートを確立する調確立コードシーケンスのセット
を記憶する調確立コードシーケンステーブル記憶手段
と、 上記調確立コードシーケンステーブル記憶手段を用いて
上記コード進行を分析して上記新たなコードの機能名と
キーノートを判定する第2機能名・キーノート判定手段
と、 上記第2機能名・キーノート判定手段により判定された
機能名とキーノートとに基づき、上記新たなコードの区
間で使用可能なピッチクラスセットを規定する調性デー
タを生成する第2調性データ生成手段と、 を有することを特徴とする調性判定装置。
4. The tonality determining apparatus according to claim 1, wherein the first tonality determining means stores the same keynote keeping code table storing means for storing a set of codes for keeping the keynotes the same, and a certain key. Modulation code sequence table storage means for storing a set of modulation code sequences indicating a modulation from a note to another keynote, the current keynote, the same keynote maintenance code table storage means, and the modulation code sequence table storage means A first function name / keynote determination means for determining the function name and keynote of the new chord by analyzing the chord progression using, and the function name determined by the first function name / keynote determination means. Tonality data that defines the pitch class set that can be used in the new chord section based on First tonality data generating means for generating, and the second tonality determining means stores key establishment code sequence table storage means for storing a set of key establishment code sequences that establish a keynote, and the key establishment The second function name / keynote determination means for analyzing the chord progression using the chord sequence table storage means to determine the function name and keynote of the new chord, and the second function name / keynote determination means. Second tonality data generating means for generating tonality data defining a pitch class set usable in the new chord section based on the determined function name and keynote. Tonality determination device.
【請求項5】 請求項4記載の調性判定装置において、 上記第1機能名・キーノート判定手段は、 上記新たなコードが上記現キーノートを維持する機能を
有するかどうかを判定するために上記同一キーノート維
持コードテーブル記憶手段を検索する調維持検索手段
と、 上記新たなコードとそれに先行するコードとによって形
成されるコードパターンが上記現キーノートからそれに
関連する関係キーノートへの転調を示唆する機能を有す
るかどうかを判定するために、上記転調コードシーケン
ステーブル記憶手段を検索する転調検索手段と、 を含み、 上記第2機能名・キーノート判定手段は、 上記新たなコードとそれに先行するコードとによって形
成されるコードパターンが特定のキーノートを確立する
機能を有するかどうかを判定するために、上記調確立コ
ードシーケンステーブル記憶手段を検索する調確立検索
手段と、 含み、 更に調性判定装置は、 上記第1調性判定手段により上記関係キーノートが判定
された場合に、判定された関係キーノートによって上記
現キーノート記憶手段を更新する第1キーノート更新手
段は、 上記第2調性判定手段により上記特定のキーノートが判
定された場合に、判定された特定のキーノートによって
上記現キーノート記憶手段を更新する第2キーノート更
新手段と、 を有することを特徴とする調性判定装置。
5. The tonality determining apparatus according to claim 4, wherein the first function name / keynote determining means determines whether or not the new chord has a function of maintaining the current keynote. A key pattern maintained by the key keeping and searching means for searching the same key note keeping code table storing means, and the chord pattern formed by the new chord and the chord preceding it changes the transposition from the current key note to the related key note. A modulation search means for searching the modulation code sequence table storage means to determine whether or not it has a suggested function; and the second function name / keynote determination means includes the new code and the preceding code. To determine whether the chord pattern formed by the chord with which it has the function of establishing a particular keynote And a key establishment determination means for searching the key establishment code sequence table storage means, wherein the tonality determination device is determined when the related keynote is determined by the first tonality determination means. The first keynote updating means for updating the current keynote storage means by the related keynote, if the specific keynote is determined by the second tonality determination means, the first keynote updating means is determined by the determined specific keynote. And a second keynote updating means for updating the current keynote storage means, and a tonality determination device comprising:
【請求項6】 各コードをルートとタイプで表現したコ
ード進行を付与するコード進行付与手段と、 現在の調性に係る現キーノートを表わすデータを記憶す
る現キーノート記憶手段と、 上記コード進行からの新たなコードの調性を、上記現キ
ーノートに基づいて判定する第1調性判定手段と、 上記コード進行からの新たなコードの調性を、上記現キ
ーノートに基づくことなく、新たなコードと新たなコー
ドに先行するコードとの間に形成されるコードパターン
を分析することによって判定する第2調性判定手段と、 上記第1調性判定手段により上記新たなコードの調性が
特定された場合に動作し、上記新たなコードの区間にお
いてこの特定された調性に従う伴奏を形成する第1伴奏
形成手段と、 上記第2調性判定手段により上記新たなコードの調性が
特定された場合に動作し、上記新たなコードの区間にお
いてこの特定された調性に従う伴奏を形成する第2伴奏
形成手段と、 を有することを特徴とする自動伴奏装置。
6. A chord progression giving means for giving a chord progression in which each chord is represented by a root and a type, a current keynote storage means for storing data representing a current keynote relating to the current tonality, and the chord progression. A new tonality determining means for determining the tonality of a new chord based on the current keynote, and a tonality of a new chord from the chord progression, based on the current keynote. Tonality determining means for determining by analyzing a code pattern formed between a new code and a code preceding the new code, and the first tonality determining means determines the tonality of the new code. A first accompaniment forming means that operates when specified, and forms an accompaniment according to the specified tonality in the section of the new chord, and the new chord determination means by the second tonality determination means. Automatic accompaniment apparatus tonality operates when specified, and having a second accompaniment forming means for forming an accompaniment in accordance this specified tonality in the new code section of the.
【請求項7】 請求項6記載の自動伴奏装置において、 上記第1調性判定手段と第2調性判定手段の各々は、判
定結果である調性の情報として上記新たなコードの機能
名とキーノートを、上記第1伴奏形成手段と第2伴奏形
成手段にそれぞれ与える手段を有し、 上記第1伴奏形成手段と第2伴奏形成手段の各々は、与
えられた機能名に従う伴奏パターンを発生する伴奏パタ
ーン発生手段と、この伴奏パターン発生手段からの伴奏
パターンの各音高を与えられたキーノートに従って移調
して伴奏音高を生成する伴奏音高生成手段とを有するこ
とを特徴とする自動伴奏装置。
7. The automatic accompaniment apparatus according to claim 6, wherein each of the first tonality determination means and the second tonality determination means includes a function name of the new chord as tonality information which is a determination result. A keynote is provided to each of the first accompaniment forming means and the second accompaniment forming means, and each of the first accompaniment forming means and the second accompaniment forming means generates an accompaniment pattern according to a given function name. Automatic accompaniment pitch generating means for transposing each pitch of the accompaniment pattern from the accompaniment pattern generating means in accordance with a given key note to generate an accompaniment pitch Accompaniment device.
JP3185410A 1991-06-29 1991-06-29 Note property judging deivce and automatic accompaniment device Pending JPH0511763A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP3185410A JPH0511763A (en) 1991-06-29 1991-06-29 Note property judging deivce and automatic accompaniment device
US07/906,275 US5302777A (en) 1991-06-29 1992-06-26 Music apparatus for determining tonality from chord progression for improved accompaniment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3185410A JPH0511763A (en) 1991-06-29 1991-06-29 Note property judging deivce and automatic accompaniment device

Publications (1)

Publication Number Publication Date
JPH0511763A true JPH0511763A (en) 1993-01-22

Family

ID=16170306

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3185410A Pending JPH0511763A (en) 1991-06-29 1991-06-29 Note property judging deivce and automatic accompaniment device

Country Status (1)

Country Link
JP (1) JPH0511763A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06124087A (en) * 1992-10-13 1994-05-06 Yamaha Corp Automatic accompaniment device
US8648241B2 (en) 2010-09-27 2014-02-11 Casio Computer Co., Ltd. Key determination apparatus and storage medium storing key determination program
JP2017027087A (en) * 2016-11-10 2017-02-02 カシオ計算機株式会社 Code selection device, automatic accompaniment device, automatic accompaniment method and code selection method

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06124087A (en) * 1992-10-13 1994-05-06 Yamaha Corp Automatic accompaniment device
US8648241B2 (en) 2010-09-27 2014-02-11 Casio Computer Co., Ltd. Key determination apparatus and storage medium storing key determination program
JP2017027087A (en) * 2016-11-10 2017-02-02 カシオ計算機株式会社 Code selection device, automatic accompaniment device, automatic accompaniment method and code selection method

Similar Documents

Publication Publication Date Title
JP3704980B2 (en) Automatic composer and recording medium
JP3666577B2 (en) Chord progression correction device, chord progression correction method, and computer-readable recording medium recording a program applied to the device
JP2000514571A (en) Automatic improvisation system and method
JP3637775B2 (en) Melody generator and recording medium
US8648241B2 (en) Key determination apparatus and storage medium storing key determination program
US5302777A (en) Music apparatus for determining tonality from chord progression for improved accompaniment
JPH0511763A (en) Note property judging deivce and automatic accompaniment device
JP3163654B2 (en) Automatic accompaniment device
JP3163653B2 (en) Tonality judgment device
JP3216529B2 (en) Performance data analyzer and performance data analysis method
JPH05181409A (en) Automatic music composing machine
JP2694278B2 (en) Chord detector
JP3591444B2 (en) Performance data analyzer
JP2615722B2 (en) Automatic composer
JP3271331B2 (en) Melody analyzer
JP3548871B2 (en) Music device with musical tone pitch decoding function
JPH05346781A (en) Key detecting device and automatic music arranging device
JPH0561465A (en) Tonality discrimination device and automatic player
JP3807333B2 (en) Melody search device and melody search program
JP3271332B2 (en) Chording device
JP3413842B2 (en) Automatic accompaniment device
JP3818298B2 (en) Available note scale determining apparatus and recording medium
JP2636477B2 (en) Electronic musical instrument
JP3775039B2 (en) Melody generator and recording medium
JP2526830B2 (en) Automatic chord adding device