JP2000163065A - Code advance generating device and storage medium - Google Patents
Code advance generating device and storage mediumInfo
- Publication number
- JP2000163065A JP2000163065A JP10333781A JP33378198A JP2000163065A JP 2000163065 A JP2000163065 A JP 2000163065A JP 10333781 A JP10333781 A JP 10333781A JP 33378198 A JP33378198 A JP 33378198A JP 2000163065 A JP2000163065 A JP 2000163065A
- Authority
- JP
- Japan
- Prior art keywords
- code
- basic
- progression
- chord
- chord progression
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、多種類のコード
(和音)からなるコード進行を簡単に生成することが可
能なコード進行生成装置および記憶媒体に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a chord progression generating apparatus and a storage medium capable of easily generating a chord progression composed of various types of chords (chords).
【0002】[0002]
【従来の技術】従来、多種類のコードからなるコード進
行を生成する主な生成手法として、次の2種類が知られ
ている。すなわち、 1)各種コードからなるすべてのコード進行をデータベ
ースに記憶させ、このデータベースから所定の条件に合
致したコード進行を読み出すことによって、目的のコー
ド進行を生成する手法 2)所定の演算アルゴリズムを用いた演算により目的の
コード進行を生成する手法2. Description of the Related Art Conventionally, the following two types are known as main methods for generating a chord progression composed of various types of codes. That is, 1) a method of generating a target chord progression by storing all chord progressions composed of various codes in a database and reading out a chord progression that meets predetermined conditions from the database 2) using a predetermined arithmetic algorithm Method to generate the desired chord progression by using the calculation
【0003】[0003]
【発明が解決しようとする課題】しかし、上記従来のコ
ード進行生成手法のうち1)の手法では、生成すべきコ
ード進行がすべて含まれるようにデータベースを構築す
る必要があるため、データベースの容量が膨大なものと
なっていた。したがって、このようなデータベースを記
憶する記憶媒体はそれに見合った容量のものを使用しな
ければならないので、製造コストが増大するとともに、
データベースの構築作業も大変な労力が必要であった。However, in the method 1) of the above-mentioned conventional chord progression generation methods, it is necessary to construct a database so as to include all the chord progressions to be generated. It was huge. Therefore, the storage medium for storing such a database must have a capacity corresponding to the storage medium.
The construction of the database also required a great deal of effort.
【0004】また、上記従来のコード進行生成手法のう
ち2)の手法では、上記1)の手法の問題点、すなわち
データベースの容量が膨大なものとなる問題点は解決さ
れるものの、音楽的に意味のあるコード進行を演算のみ
によって生成することは非常に困難であり、その演算ア
ルゴリズムも見出されていなかった。さらに、このよう
な演算アルゴリズムがたとえ見出されたとしても、非常
に複雑であり、現在の標準的なCPU能力を以てして
も、その処理を持て余してしまうため、さらに高性能の
CPUが必要となり、製造コストが増大する。[0004] In the conventional chord progression generation method 2), the problem of the method 1), that is, the problem that the database capacity becomes enormous, is solved, but the method is musically difficult. It is very difficult to generate a meaningful chord progression only by operation, and no operation algorithm has been found. Furthermore, even if such an arithmetic algorithm is found, it is very complicated, and even with the current standard CPU power, it will not be able to handle the processing. , Increasing the manufacturing cost.
【0005】本発明は、この点に着目してなされたもの
であり、多種類からなるコード進行を簡単に生成するこ
とが可能なコード進行生成装置および記憶媒体を提供す
ることを目的とする。The present invention has been made in view of this point, and it is an object of the present invention to provide a chord progression generating apparatus and a storage medium which can easily generate various types of chord progressions.
【0006】[0006]
【課題を解決するための手段】上記目的を達成するた
め、請求項1に記載のコード進行生成装置は、少数の基
本コードのみからなるコード進行を供給する供給手段
と、該供給されたコード進行の少なくとも一部の基本コ
ードを基本コード以外のコードに変更することにより、
前記供給されたコード進行を基に他のコード進行を生成
する他コード生成手段とを有することを特徴とする。In order to achieve the above object, a chord progression generating apparatus according to claim 1 comprises: a supply means for supplying a chord progression consisting of only a small number of basic codes; By changing at least some of the base code to a non-base code,
And another code generation means for generating another chord progression based on the supplied chord progression.
【0007】ここで、少数の基本コードとは、典型的に
は、主要和音(I,IV,V7)であるが、これに限ら
ず、主要和音に副和音(IIm,IIIm,VIm,VII7(♭
5))を加えた7コード(同一調内のすべてのダイアト
ニックコード)としてもよく、これら以外の複数種類の
コードを基本コードとしてもよい。Here, the small number of basic chords are typically the main chords (I, IV, V7), but are not limited thereto, and the main chords may be sub-chords (IIm, IIIm, VIm, VII7 ( ♭
5)) may be added to the seven codes (all diatonic codes in the same key), and a plurality of other types of codes may be used as the basic code.
【0008】基本コードのみからなるコード進行を供給
する方法としては、たとえば、1)予め作成された各種
コード進行によってデータベースを構築し、その中から
目的の(すなわち、条件に合致する)コード進行を選択
して供給する方法、2)所定の簡単な演算アルゴリズム
に基づいて演算によって目的のコード進行を生成し供給
する方法、3)ユーザが直接入力することによって目的
のコード進行を供給する方法、4)既存のコード進行デ
ータを所定の場所(所定の記憶媒体やサーバ等)からロ
ードすることによって目的のコード進行を供給する方法
等が考えられる。As a method of supplying a chord progression consisting of only the basic chords, for example, 1) a database is constructed by various chord progressions created in advance, and a desired chord progression (that is, a chord progression that satisfies a condition) is selected from the database. 2) A method of generating and supplying a target chord progression by operation based on a predetermined simple operation algorithm, 3) A method of supplying a target chord progression by direct input by a user, 4 A method of supplying a desired chord progression by loading existing chord progression data from a predetermined location (predetermined storage medium, server, or the like) can be considered.
【0009】データベースの容量に関して、1)の方法
では、データベースは基本コードのみからなるコード進
行を記憶するだけであるため、上記従来のデータベース
の容量に比較してはるかに少容量ですみ、また、2)の
方法では、データベースそのものが必要とされないた
め、データベースを記憶する記憶媒体を省略することが
できる。With respect to the capacity of the database, in the method 1), since the database only stores the chord progression consisting of only the basic code, the capacity is much smaller than the capacity of the conventional database described above. In the method 2), since the database itself is not required, a storage medium for storing the database can be omitted.
【0010】また、基本コードのみからなるコード進行
を供給する第1の段階と、このコード進行を変形するこ
とによって他の新たなコード進行を生成する第2の段階
の2段階で多種類のコードからなるコード進行を生成す
るようにしているので、このようにして生成されたコー
ド進行を使用して、たとえばメロディを生成するとき
に、そのメロディを少しだけ変更したい場合には、第2
段階内で再度変形するようにし、そのメロディを大幅に
変更したい場合には、第1段階内で他のコード進行を生
成するようにすればよく、したがって、ユーザの意図通
りに再変形することができる。[0010] In addition, a first stage for supplying a chord progression consisting only of a basic chord, and a second stage for generating another new chord progression by modifying the chord progression, provide various types of chords. Since the chord progression is generated by using the chord progression generated in this way, for example, when generating a melody and wishing to slightly change the melody, the second
If the melody is to be transformed again in the stage and the melody is to be changed drastically, another chord progression may be generated in the first stage. it can.
【0011】基本コードを基本コード以外のコードに変
更する方法としては、たとえば、1)基本コードを代理
コードで置き換える方法、2)基本コードをセカンダリ
・ドミナント・コードで置き換える方法、3)基本コー
ドをそのコード進行が循環コード進行となるように変更
する方法、4)基本コードをそのコード進行が連続ドミ
ナント進行となるように変更する方法、5)基本コード
をそのコード進行が順次コード進行となるように変更す
る方法等が考えられるが、これに限るものではなく、少
数の基本コードを他の多種類の基本コード以外のコード
に変更できる方法であれば、どのような方法を採用して
もよい。As a method of changing the basic code to a code other than the basic code, for example, 1) a method of replacing the basic code with a substitute code, 2) a method of replacing the basic code with a secondary dominant code, and 3) a method of replacing the basic code A method of changing the chord progression so as to be a cyclic chord progression, 4) a method of changing a basic chord such that the chord progression is a continuous dominant progression, and 5) a change of the basic chord so that the chord progression becomes a sequential chord progression. Can be changed, but the method is not limited to this, and any method may be adopted as long as it can change a small number of basic codes to codes other than other various kinds of basic codes. .
【0012】また、変更対象の基本コードは、そのコー
ド進行に含まれるすべてであってもよいし、その中の一
部であってもよい。後者の場合には、変形対象となる一
部の基本コードの選択方法が問題となるが、たとえば、
曲全体の基本コード総数に対する変形対象となる基本コ
ード数の比を設定し、この比に応じた数を曲全体に割り
当てることによって選択する方法が考えられる。そし
て、この割り当ては、たとえば、1)完全なランダムで
行う方法、2)条件(曲の先頭または最後の所定数のコ
ードは変形の対象としない等)付きランダムで行う方
法、3)所定条件に従って行う方法、4)予め設定され
た割り当て規則に従って行う方法等が考えられる。The basic code to be changed may be all or part of the basic code included in the chord progression. In the latter case, the problem is how to select some basic codes to be transformed. For example,
A method is conceivable in which a ratio of the number of basic chords to be transformed to the total number of basic chords of the entire music piece is set, and a number corresponding to this ratio is assigned to the entire music piece for selection. This allocation is performed, for example, by 1) a completely random method, 2) a random method with conditions (eg, a predetermined number of codes at the beginning or end of a song is not subjected to transformation), and 3) a predetermined condition. 4) A method of performing according to a preset assignment rule, or the like.
【0013】請求項1に関する以上の点は、請求項が変
わっても同様である。The above points regarding claim 1 are the same even if the claims are changed.
【0014】請求項2に記載のコード進行生成装置は、
所定の演算アルゴリズムに基づいて、少数の基本コード
のみからなるコード進行を演算生成する演算生成手段
と、該演算生成されたコード進行の少なくとも一部の基
本コードを基本コード以外のコードに変更することによ
り、前記演算生成されたコード進行を基に他のコード進
行を生成する他コード進行生成手段とを有することを特
徴とする。According to a second aspect of the present invention, there is provided a chord progression generating apparatus.
An operation generating means for performing operation generation of a code progression consisting of only a small number of basic codes based on a predetermined operation algorithm, and changing at least a part of the basic code of the operation generated code progression to a code other than the basic code And another code progression generating means for generating another chord progression based on the chord progression generated by the calculation.
【0015】請求項3に記載のコード進行生成装置は、
前記他コード進行生成手段は、前記基本コードのみから
なるコード進行のうちの所定区間を除く区間に存在する
コードを、前記基本コード以外のコードに変更すること
を特徴とする。According to a third aspect of the present invention, there is provided the chord progression generating apparatus,
The other chord progression generation means changes a code existing in a section excluding a predetermined section in a chord progression consisting of only the basic code to a code other than the basic chord.
【0016】請求項4に記載のコード進行生成装置は、
前記他コード進行生成手段は、前記基本コードのみから
なるコード進行に含まれる総コード数の所定割合のコー
ドを、前記基本コード以外のコードに変更することを特
徴とする。[0016] The chord progression generating device according to claim 4 is
The other chord progression generation means changes a code having a predetermined ratio of the total number of chords included in a chord progression consisting of only the basic chord to a code other than the basic chord.
【0017】請求項5に記載のコード進行生成装置は、
前記基本コードを基本コード以外のコードに変更する変
更方法を複数種類備え、該複数種類の変更方法のうちの
いずれかを選択する選択手段を有し、前記他コード進行
生成手段は、前記選択された変更方法に従って前記基本
コードを基本コード以外のコードに変更することを特徴
とする。The chord progression generating device according to claim 5 is
A plurality of types of change methods for changing the basic code to codes other than the basic code are provided, and a selection unit for selecting any one of the plurality of types of change methods is provided. The basic code is changed to a code other than the basic code according to the changing method.
【0018】請求項6に記載のコード進行生成装置は、
複数の区間からなる曲の各区間間の結合タイプを、それ
ぞれ異なる複数の結合タイプの中から選択して決定する
結合タイプ決定手段と、該決定された結合タイプに基づ
いて、当該各区間の結合部におけるコードを決定するコ
ード決定手段と、前記各区間における前記決定された結
合部のコード以外の部分のコード進行を生成するコード
進行生成手段とを有することを特徴とする。A chord progression generating device according to claim 6 is
A connection type determining means for selecting and determining a connection type between each section of the music piece composed of a plurality of sections from a plurality of different connection types, and connecting the respective sections based on the determined connection type; And a code progression generating means for generating a chord progression of a portion other than the code of the determined combination portion in each section.
【0019】請求項7に記載のコード進行生成装置は、
複数の区間からなる曲の各区間間の結合タイプを、それ
ぞれ異なる複数の結合タイプの中から選択して決定する
結合タイプ決定手段と、該決定された結合タイプに基づ
いて、当該各区間の結合部におけるコードを少数の基本
コードの中から選択して決定するコード決定手段と、前
記各区間における前記決定された結合部のコード以外の
部分のコード進行を少数の基本コードを用いて生成する
コード進行生成手段と該生成されたコード進行の少なく
とも一部の基本コードを基本コード以外のコードに変更
することにより、前記生成されたコード進行を基に他の
コード進行を生成する他コード進行生成手段とを有する
ことを特徴とする。A chord progression generating device according to claim 7 is
A connection type determining means for selecting and determining a connection type between each section of the music piece composed of a plurality of sections from a plurality of different connection types, and connecting the respective sections based on the determined connection type; Code determining means for selecting and determining a code in a section from a small number of basic codes, and a code for generating a code progression of a part other than the code of the determined connecting section in each section using a small number of basic codes. Progress code generating means and other code code generating means for generating another code code based on the generated code code by changing at least a part of the basic code of the generated code code to a code other than the basic code code And characterized in that:
【0020】前記目的を達成するため、請求項8に記載
の記憶媒体は、少数の基本コードのみからなるコード進
行を供給する供給モジュールと、該供給されたコード進
行の少なくとも一部の基本コードを基本コード以外のコ
ードに変更することにより、前記供給されたコード進行
を基に他のコード進行を生成する他コード生成モジュー
ルとを含むことを特徴とする。In order to achieve the above object, a storage medium according to claim 8 comprises a supply module for supplying a code sequence consisting of only a small number of basic codes, and a supply module for supplying at least a part of the supplied code sequence. And a code generation module for generating another code progression based on the supplied code progression by changing the code to a code other than the basic code.
【0021】請求項9に記載の記憶媒体は、所定の演算
アルゴリズムに基づいて、少数の基本コードのみからな
るコード進行を演算生成する演算生成モジュールと、該
演算生成されたコード進行の少なくとも一部の基本コー
ドを基本コード以外のコードに変更することにより、前
記演算生成されたコード進行を基に他のコード進行を生
成する他コード進行生成モジュールとを含むことを特徴
とする。According to a ninth aspect of the present invention, there is provided a storage medium, comprising: an operation generating module for generating and generating a code progression consisting of only a small number of basic codes based on a predetermined arithmetic algorithm; and at least a part of the operation generated code progression And an other code progression generation module for generating another code progression based on the calculated and generated code progression by changing the basic code to a code other than the basic code.
【0022】請求項10に記載の記憶媒体は、複数の区
間からなる曲の各区間間の結合タイプを、それぞれ異な
る複数の結合タイプの中から選択して決定する結合タイ
プ決定モジュールと、該決定された結合タイプに基づい
て、当該各区間の結合部におけるコードを決定するコー
ド決定モジュールと、前記各区間における前記決定され
た結合部のコード以外の部分のコード進行を生成するコ
ード進行生成モジュールとを含むことを特徴とする。According to a tenth aspect of the present invention, in the storage medium, a connection type determination module for selecting and determining a connection type between each section of a song composed of a plurality of sections from a plurality of different connection types, and A code determination module that determines a code in a connection portion of each section based on the obtained connection type, and a code progress generation module that generates a code progression of a portion other than the code of the determined connection portion in each section. It is characterized by including.
【0023】請求項11に記載の記憶媒体は、複数の区
間からなる曲の各区間間の結合タイプを、それぞれ異な
る複数の結合タイプの中から選択して決定する結合タイ
プ決定モジュールと、該決定された結合タイプに基づい
て、当該各区間の結合部におけるコードを少数の基本コ
ードの中から選択して決定するコード決定モジュール
と、 前記各区間における前記決定された結合部のコー
ド以外の部分のコード進行を少数の基本コードを用いて
生成するコード進行生成モジュールと該生成されたコー
ド進行の少なくとも一部の基本コードを基本コード以外
のコードに変更することにより、前記生成されたコード
進行を基に他のコード進行を生成する他コード進行生成
モジュールとを含むことを特徴とする。A storage medium according to claim 11, wherein a connection type between each section of a song composed of a plurality of sections is selected from a plurality of different connection types to determine the connection type; A code determining module for selecting and determining a code in the connection part of each section from a small number of basic codes based on the connection type, and a part other than the code of the determined connection part in each section. A chord progression generation module for generating a chord progression using a small number of basic chords, and at least a part of the generated chord progression is changed to a code other than the basic chord, so that the chord progression is generated based on the generated chord progression. And an other chord progression generation module for generating another chord progression.
【0024】[0024]
【発明の実施の形態】以下、本発明の実施の形態を図面
に基づいて詳細に説明する。Embodiments of the present invention will be described below in detail with reference to the drawings.
【0025】図1は、本発明の一実施の形態に係るコー
ド進行生成装置の概略構成を示すブロック図である。FIG. 1 is a block diagram showing a schematic configuration of a chord progression generating apparatus according to one embodiment of the present invention.
【0026】同図に示すように、本実施の形態のコード
進行生成装置は、音高情報を入力するための鍵盤1と、
各種情報を入力するための複数のスイッチを備えたパネ
ルスイッチ2と、鍵盤1の各鍵の押鍵状態を検出する押
鍵検出回路3と、パネルスイッチ2の各スイッチの押下
状態を検出するスイッチ検出回路4と、装置全体の制御
を司るCPU5と、該CPU5が実行する制御プログラ
ムやテーブルデータ等を記憶するROM6と、演奏デー
タ、各種入力情報および演算結果等を一時的に記憶する
RAM7と、タイマ割込み処理における割込み時間や各
種時間を計時するタイマ8と、各種情報等を表示する、
たとえば大型液晶ディスプレイ(LCD)若しくはCR
T(Cathode Ray Tube)ディスプレイおよび発光ダイオ
ード(LED)等を備えた表示装置9と、記憶媒体であ
るフロッピディスク(FD)20をドライブするフロッ
ピディスクドライブ(FDD)10と、前記制御プログ
ラムを含む各種アプリケーションプログラムや各種デー
タ等を記憶するハードディスク(図示せず)をドライブ
するハードディスクドライブ(HDD)11と、前記制
御プログラムを含む各種アプリケーションプログラムや
各種データ等を記憶するコンパクトディスク−リード・
オンリ・メモリ(CD−ROM)21をドライブするC
D−ROMドライブ(CD−ROMD)12と、外部か
らのMIDI(Musical Instrument Digital Interfac
e)信号を入力したり、MIDI信号を外部に出力した
りするMIDIインターフェース(I/F)13と、通
信ネットワーク101を介して、たとえばサーバコンピ
ュータ102とデータの送受信を行う通信インターフェ
ース(I/F)14と、鍵盤1から入力された演奏デー
タや予め設定された演奏データ等を楽音信号に変換する
音源回路15と、該音源回路15からの楽音信号に各種
効果を付与するための効果回路16と、該効果回路16
からの楽音信号を音響に変換する、たとえば、DAC
(Digital-to-AnalogConverter)やアンプ、スピーカ等
のサウンドシステム17とにより構成されている。As shown in FIG. 1, the chord progression generating apparatus according to the present embodiment includes a keyboard 1 for inputting pitch information,
A panel switch 2 including a plurality of switches for inputting various information; a key press detection circuit 3 for detecting a key press state of each key of the keyboard 1; and a switch for detecting a press state of each switch of the panel switch 2 A detection circuit 4, a CPU 5 for controlling the entire apparatus, a ROM 6 for storing a control program executed by the CPU 5, table data, and the like, and a RAM 7 for temporarily storing performance data, various input information, calculation results, and the like. A timer 8 for measuring the interrupt time and various times in the timer interrupt processing, and displaying various information and the like;
For example, large liquid crystal display (LCD) or CR
A display device 9 including a T (Cathode Ray Tube) display and a light emitting diode (LED), a floppy disk drive (FDD) 10 for driving a floppy disk (FD) 20 as a storage medium, and various types including the control program. A hard disk drive (HDD) 11 for driving a hard disk (not shown) for storing application programs, various data, etc., and a compact disk for reading various application programs including the control program, various data, etc.
C that drives only memory (CD-ROM) 21
A D-ROM drive (CD-ROMD) 12 and an external MIDI (Musical Instrument Digital Interface)
e) A MIDI interface (I / F) 13 for inputting a signal or outputting a MIDI signal to the outside, and a communication interface (I / F) for transmitting / receiving data to / from a server computer 102 via the communication network 101, for example. ) 14, a tone generator circuit 15 for converting performance data input from the keyboard 1 or preset performance data and the like into a tone signal, and an effect circuit 16 for imparting various effects to the tone signal from the tone circuit 15. And the effect circuit 16
To convert the sound signal from the sound into a sound, for example, DAC
(Digital-to-AnalogConverter), an amplifier, and a sound system 17 such as a speaker.
【0027】上記構成要素3〜16は、バス18を介し
て相互に接続され、CPU5にはタイマ8が接続され、
MIDII/F13には他のMIDI機器100が接続
され、通信I/F14には通信ネットワーク101が接
続され、音源回路15には効果回路16が接続され、効
果回路16にはサウンドシステム17が接続されてい
る。The above components 3 to 16 are mutually connected via a bus 18, a timer 8 is connected to the CPU 5,
Another MIDI device 100 is connected to the MID II / F 13, a communication network 101 is connected to the communication I / F 14, an effect circuit 16 is connected to the sound source circuit 15, and a sound system 17 is connected to the effect circuit 16. ing.
【0028】HDD11のハードディスクには、前述の
ように、CPU5が実行する制御プログラムも記憶で
き、ROM6に制御プログラムが記憶されていない場合
には、このハードディスクに制御プログラムを記憶させ
ておき、それをRAM7に読み込むことにより、ROM
6に制御プログラムを記憶している場合と同様の動作を
CPU5にさせることができる。このようにすると、制
御プログラムの追加やバージョンアップ等が容易に行え
る。As described above, the control program executed by the CPU 5 can be stored in the hard disk of the HDD 11, and when the control program is not stored in the ROM 6, the control program is stored in the hard disk. By reading into RAM7, ROM
6 can cause the CPU 5 to perform the same operation as when the control program is stored. This makes it easy to add a control program, upgrade a version, and the like.
【0029】CD−ROMドライブ12のCD−ROM
21から読み出された制御プログラムや各種データは、
HDD11内のハードディスクにストアされる。これに
より、制御プログラムの新規インストールやバージョン
アップ等が容易に行える。なお、このCD−ROMドラ
イブ12以外にも、外部記憶装置として、光磁気ディス
ク(MO)装置等、様々な形態のメディアを利用するた
めの装置を設けるようにしてもよい。CD-ROM of CD-ROM drive 12
The control program and various data read from 21 are
The data is stored on the hard disk in the HDD 11. This makes it possible to easily perform new installation, version upgrade, and the like of the control program. In addition to the CD-ROM drive 12, a device for utilizing various forms of media, such as a magneto-optical disk (MO) device, may be provided as an external storage device.
【0030】MIDII/F13は、専用のものに限ら
ず、RS−232CやUSB(ユニバーサル・シリアル
・バス)、IEEE1394(アイトリプルイー139
4)等の汎用のインターフェースより構成してもよい。
この場合、MIDIメッセージ以外のデータをも同時に
送受信してもよい。The MIDII / F13 is not limited to a dedicated one, but may be RS-232C, USB (Universal Serial Bus), IEEE1394 (I Triple E 139).
It may be constituted by a general-purpose interface such as 4).
In this case, data other than the MIDI message may be transmitted and received at the same time.
【0031】通信I/F14は、上述のように、たとえ
ばLAN(Local Area Network)やインターネット、電
話回線等の通信ネットワーク101に接続されており、
該通信ネットワーク101を介して、サーバコンピュー
タ102に接続される。HDD11内のハードディスク
に上記各プログラムや各種パラメータが記憶されていな
い場合には、通信I/F14は、サーバコンピュータ1
02からプログラムやパラメータをダウンロードするた
めに用いられる。クライアントとなるコンピュータ(本
実施の形態では、コード進行生成装置)は、通信I/F
14および通信ネットワーク101を介してサーバコン
ピュータ102へとプログラムやパラメータのダウンロ
ードを要求するコマンドを送信する。サーバコンピュー
タ102は、このコマンドを受け、要求されたプログラ
ムやパラメータを、通信ネットワーク101を介してコ
ンピュータへと配信し、コンピュータが通信I/F14
を介して、これらプログラムやパラメータを受信してH
DD11内のハードディスクに蓄積することにより、ダ
ウンロードが完了する。As described above, the communication I / F 14 is connected to a communication network 101 such as a LAN (Local Area Network), the Internet, or a telephone line.
It is connected to the server computer 102 via the communication network 101. If the above-mentioned programs and various parameters are not stored in the hard disk in the HDD 11, the communication I / F 14
02 to download programs and parameters. The computer serving as a client (in the present embodiment, the chord progression generating device) is a communication I / F.
14 and a command for requesting download of a program or parameter to the server computer 102 via the communication network 101. The server computer 102 receives the command, distributes the requested program and parameters to the computer via the communication network 101, and the computer
Receive these programs and parameters via H
By accumulating the data on the hard disk in the DD 11, the download is completed.
【0032】この他、外部コンピュータ等との間で直接
データのやりとりを行うためのインターフェースを備え
てもよい。In addition, an interface for directly exchanging data with an external computer or the like may be provided.
【0033】なお、本実施の形態のコード進行生成装置
は、上述のように、標準的なハードウェア構成の汎用パ
ーソナルコンピュータ(PC)上に実現するようにした
が、これに限らず、たとえばFDD10やCD−ROM
D12を省略したモバイルPC上に実現するようにして
もよい。さらに、汎用PC上にではなく、専用機器とし
て構成するようにしてもよい。Although the chord progression generating apparatus according to the present embodiment is realized on a general-purpose personal computer (PC) having a standard hardware configuration as described above, the present invention is not limited to this. And CD-ROM
It may be realized on a mobile PC in which D12 is omitted. Furthermore, it may be configured not as a general-purpose PC but as a dedicated device.
【0034】以上のように構成されたコード進行生成装
置が実行する制御処理を、以下、その概要を説明した後
に、図2〜図6に基づいて詳細に説明する。The control processing executed by the chord progression generating apparatus configured as described above will be described in detail below with reference to FIGS.
【0035】本実施の形態のコード進行生成装置は、ま
ず、1)基本的なコード進行(所定の複数の基本コード
からなるコード進行)を生成し、次に、2)この基本的
なコード進行を該基本コードに含まれないコードを用い
て変形(リハーモナイズ)することによって、目的のコ
ード進行、すなわち多種類のコードからなるコード進行
を生成する。ここで、基本コードとは、本実施の形態に
おいては“I”,“IV”,“V7”の主要和音を指す
(長調の場合)。The chord progression generating apparatus according to the present embodiment firstly generates 1) a basic chord progression (a chord progression composed of a plurality of predetermined basic codes), and then 2) this basic chord progression. Is transformed (re-harmonized) using a code not included in the basic code, thereby generating a target chord progression, that is, a chord progression composed of various types of codes. Here, the basic chord refers to the main chords of “I”, “IV”, and “V7” in the present embodiment (in the case of a major key).
【0036】上記1)の生成方法として、本実施の形態
では、a)自動生成による2種類の方法、b)マニュア
ル入力による方法、および、c)既存データをロードす
る方法の全4種類の方法を採用している。そして、上記
a)の2種類の方法とは、具体的には、i)予め基本的な
コード進行データを要素とするデータベースを構築して
おき、このデータベースを検索することにより目的のコ
ード進行データを生成する方法、および、ii )所定の演
算アルゴリズムに従って、演算により目的のコード進行
データを生成する方法である。In the present embodiment, there are four methods of generating the above 1): a) two methods by automatic generation, b) a method by manual input, and c) a method of loading existing data. Is adopted. The two types of a) are, specifically, i) constructing a database having basic chord progression data in advance, and searching the database to find the desired chord progression data. And ii) a method of generating target chord progression data by calculation according to a predetermined calculation algorithm.
【0037】また、上記2)のリハーモナイズ方法とし
て、本実施の形態では、a)所定条件に合致する位置の
基本コードを代理コードで置き換える方法、および、
b)所定条件に合致する位置の基本コードをセカンダリ
・ドミナント・コードで置き換える方法の2種類を採用
している。As the re-harmonizing method of the above 2), in the present embodiment, a) a method of replacing a basic code at a position matching a predetermined condition with a substitute code, and
b) The method adopts two methods of replacing a basic code at a position that meets a predetermined condition with a secondary dominant code.
【0038】図2は、本実施の形態のコード進行生成装
置、特にCPU5が実行するメインルーチンの手順を示
すフローチャートである。FIG. 2 is a flowchart showing the procedure of the main routine executed by the chord progression generating apparatus of the present embodiment, particularly, the CPU 5.
【0039】同図において、まず、ユーザに対してコー
ド進行生成方法を問い合わせる(ステップS1)。本実
施の形態では、コード進行生成方法は、上記1)a)〜
c)の3種類あり、その中から、ユーザは、たとえば前
記パネルスイッチ2の所定のスイッチを操作することに
より、いずれか1種類を選択する。In the figure, first, the user is inquired about a chord progression generation method (step S1). In the present embodiment, the chord progression generation method includes the above 1) a) to
c) There are three types, and the user selects one of them by operating a predetermined switch of the panel switch 2, for example.
【0040】ステップS1で、ユーザが「自動生成方
法」を選択すると、図3(または図4および図5)を用
いて後述する自動生成処理サブルーチンを実行し(ステ
ップS2)、ユーザが「マニュアル入力方法」を選択す
ると、ユーザが鍵盤1やスイッチ(たとえばパネルスイ
ッチ2の所定のスイッチ)を操作することによって入力
したコード進行を、たとえば前記RAM7の所定位置に
確保されたコード進行入力バッファに記憶し(ステップ
S3)、ユーザが「既存データロード方法」を選択する
と、たとえば、工場設定やユーザ設定等によって所定の
記憶媒体に予め記憶されているコード進行データであっ
て、ユーザが選択したものを、上記コード進行入力バッ
ファにロードする(ステップS4)。When the user selects the "automatic generation method" in step S1, an automatic generation processing subroutine, which will be described later with reference to FIG. 3 (or FIGS. 4 and 5), is executed (step S2). When the "method" is selected, the chord progression input by the user operating the keyboard 1 or a switch (for example, a predetermined switch of the panel switch 2) is stored in a chord progression input buffer secured at a predetermined position of the RAM 7, for example. (Step S3) When the user selects the “existing data loading method”, for example, the chord progression data previously stored in a predetermined storage medium according to factory settings or user settings, and selected by the user, The data is loaded into the chord progression input buffer (step S4).
【0041】続くステップS5では、ユーザが、たとえ
ばパネルスイッチ2の所定のスイッチを操作することに
よってコード進行の変形方法(リハーモナイズ方法)、
すなわち前記2)a)またはb)のいずれかの方法を指
定すると、その指定された変形方法を、たとえばRAM
7のワークエリアに入力する。In the subsequent step S5, the user operates a predetermined switch of the panel switch 2, for example, to change the chord progression (re-harmonizing method),
That is, if any one of the above 2) a) and b) is designated, the designated transformation method is used, for example, in the RAM.
7 is input to the work area.
【0042】そして、ステップS6では、図6を用いて
後述するコード進行変形処理サブルーチンを実行し、す
なわち前記入力された変形方法に応じたコード進行変形
処理を実行し、ステップS7では、その変形結果(変形
されたコード進行)をユーザに提示する。この提示方法
には、たとえば、変形されたコード進行を前記表示装置
9に表示したり、変形されたコード進行を構成するコー
ドの構成音を順次発音したりする方法が考えられる。も
ちろん、これに限られるものではなく、ユーザがその変
形結果を明確に把握できる方法であればどのような方法
であってもよい。In step S6, a chord progression transformation processing subroutine described later with reference to FIG. 6 is executed, that is, a chord progression transformation processing according to the inputted transformation method is executed. In step S7, the transformation result is obtained. (Modified chord progression) is presented to the user. As the presenting method, for example, a method of displaying the transformed chord progression on the display device 9 or sequentially generating the constituent sounds of the chords constituting the transformed chord progression can be considered. Of course, the present invention is not limited to this, and any method may be used as long as the user can clearly grasp the deformation result.
【0043】続くステップS8では、提示された変形結
果が満足の行くものであるか否かをユーザに問い合わ
せ、ユーザが、たとえばパネルスイッチ2の所定のスイ
ッチを操作することにより、変形結果が不満である旨を
回答したときにはステップS9に進み、コード進行の変
形方法を再指定するか否かをユーザに問い合わせる。In the following step S8, the user is asked whether or not the presented deformation result is satisfactory. The user operates a predetermined switch of the panel switch 2, for example, and is dissatisfied with the result. When the answer is yes, the process proceeds to step S9, and the user is inquired whether or not to re-designate the chord progression transformation method.
【0044】ステップS9で、ユーザが変形方法を再指
定する旨を回答したときには前記ステップS5に戻っ
て、コード進行の変形方法の選択指定から変形結果の提
示に至る一連の処理(ステップS5〜S7)を再度行
い、ユーザが現在指定されているコード進行の変形方法
でよい旨を回答したときには前記ステップS6に戻っ
て、コード進行変形処理からその変形結果の提示に至る
処理(ステップS6およびS7)を再度行う。In step S9, if the user responds that the transformation method is to be re-designated, the process returns to step S5, and a series of processes from selection designation of the transformation method of the chord progression to presentation of the transformation result (steps S5 to S7) ) Is performed again, and when the user replies that the currently designated chord progression transformation method is acceptable, the process returns to step S6, and processing from the chord progression transformation processing to the presentation of the transformation result (steps S6 and S7) Again.
【0045】一方、ステップS8で、ユーザが提示され
た変形結果に満足である旨を回答したときにはステップ
S10に進み、生成されたコード進行の用途がどのよう
なものであるかをユーザに問い合わせる。本実施の形態
のコード進行の用途には、1)自動作曲、2)自動伴
奏、および、3)コード表示の3種類があり、ユーザ
は、たとえばパネルスイッチ2の所定のスイッチを操作
することにより、この中からいずれかを選択することが
できるように構成されている。On the other hand, in step S8, when the user answers that he is satisfied with the presented transformation result, the process proceeds to step S10, and asks the user what the purpose of the generated chord progression is. There are three types of uses of the chord progression of the present embodiment: 1) automatic music, 2) automatic accompaniment, and 3) chord display. The user operates a predetermined switch of the panel switch 2, for example. , One of which can be selected.
【0046】ステップS10で、ユーザが「自動作曲」
を選択すると、生成されたコード進行に基づいて、周知
の技術により自動作曲を行い(ステップS11)、ユー
ザが「自動伴奏」を選択すると、生成されたコード進行
に基づいて、周知の技術により自動伴奏を行い(ステッ
プS12)、ユーザが「コード表示」を選択すると、生
成され提示されたコード進行を表示装置9に表示する
(ステップS13)。ここで、ステップS13の表示態
様としては、たとえば、楽譜形式や歌本形式での表示、
または、鍵盤を表示し、その表示鍵盤に対する押鍵指示
等が考えられる。また、鍵盤1の各鍵に対応してLED
が設けられているときには、そのLEDを用いた押鍵指
示、具体的にはLEDの点灯による押鍵指示であっても
よい。In step S10, the user selects "automatic music".
Is selected, an automatic song is performed based on the generated chord progression by a known technique (step S11). When the user selects "automatic accompaniment", an automatic tune is generated based on the generated chord progression by a known technique. The accompaniment is performed (step S12), and when the user selects "chord display", the generated and presented chord progress is displayed on the display device 9 (step S13). Here, as a display mode of step S13, for example, display in a musical score format or a songbook format,
Alternatively, a keyboard may be displayed, and a key pressing instruction for the displayed keyboard may be considered. LED corresponding to each key of the keyboard 1
Is provided, a key press instruction using the LED, specifically, a key press instruction by turning on the LED may be used.
【0047】続くステップS14では、ユーザが指定し
た用途に応じて生成されたデータ、すなわち、ステップ
S11では作曲されたメロディデータ、ステップS12
では伴奏された伴奏データ、ステップS13では表示さ
れた表示データが満足の行くものであるか否かをユーザ
に問い合わせる。その結果、ユーザが不満足である旨を
回答したときにはステップS15に進み、大幅に変更し
たいか否かをユーザに問い合わせる。In the following step S14, data generated according to the use specified by the user, that is, in step S11, the melody data composed, and in step S12
In step S13, the user is asked whether or not the displayed accompaniment data is satisfactory. As a result, when the user replies that the user is unsatisfied, the process proceeds to step S15, and the user is inquired as to whether or not the user wants to make a significant change.
【0048】ステップS15で、ユーザが大幅に変更し
たい旨を回答したときには前記ステップS1に戻って、
コード進行の生成方法の入力指示からの処理を再度行
い、ユーザがそれほど大幅に変更したくない旨を回答し
たときには前記ステップS9に戻って、変形方法の再指
定の問い合わせからの処理を再度行う。When the user responds in step S15 that he or she wants to make a significant change, the process returns to step S1 and
The process from the input instruction of the generation method of the chord progression is performed again, and when the user replies that he does not want to change so much, the process returns to the step S9, and the process from the inquiry of the re-designation of the deformation method is performed again.
【0049】一方、ステップS14で、ユーザが生成さ
れたデータに対して満足である旨を回答したときには、
必要に応じてデータ、すなわち生成されたコード進行デ
ータおよびユーザが指定した用途に応じて生成されたデ
ータ(作曲されたメロディデータ、伴奏された伴奏デー
タまたは表示された表示データのいずれか)を所定の記
憶媒体にセーブした(ステップS16)後に、本メイン
ルーチンを終了する。On the other hand, in step S14, when the user answers that the generated data is satisfactory,
Predetermined data as required, that is, generated chord progression data and data generated according to the use specified by the user (either composed melody data, accompaniment accompaniment data, or displayed data). (Step S16), the main routine ends.
【0050】図3は、前記ステップS2の自動生成処理
サブルーチンの一例である自動生成処理1の詳細な手順
を示すフローチャートであり、本自動生成処理1は、前
記1)a)i)の自動生成方法を実現したものである。FIG. 3 is a flowchart showing a detailed procedure of the automatic generation processing 1 which is an example of the automatic generation processing subroutine of the step S2. The automatic generation processing 1 is the automatic generation processing of 1) a) i). It is an implementation of the method.
【0051】同図において、まず、ユーザがコード進行
生成条件を入力すると、この入力された条件を、たとえ
ばRAM7のワークエリアに記憶する(ステップS2
1)。ここで、コード進行生成条件は、たとえば音節数
や楽節構成等である。楽節構成とは、各楽節間の同一・
類似関係によって各楽節がどのような構成であるかを示
すものであり、たとえば、ある楽節を記号“A”で表し
た場合に、この楽節と楽節構成が異なる(すなわち同一
・類似関係にない)楽節は記号“B”で表し、この楽節
と楽節構成が同一の楽節は記号“A”で表し、この楽節
と楽節構成が類似の楽節は記号“A′”または“A″”
で表す(“A′”と“A″”とは、類似の程度が異な
り、前者の方が後者より“A”により類似していること
を意味する)。ステップS21では、ユーザは、音節数
として、整数値を入力し、楽節構成として、たとえば前
記“A”,“B”等の記号を入力する。In the figure, first, when a user inputs a chord progression generation condition, the input condition is stored in, for example, a work area of the RAM 7 (step S2).
1). Here, the chord progression generation condition is, for example, the number of syllables, the phrase configuration, and the like. The phrase composition is the same
The similarity relationship indicates the configuration of each phrase. For example, when a phrase is represented by the symbol "A", the phrase configuration differs from the phrase configuration (that is, there is no identical / similar relationship). A phrase is represented by a symbol "B", a phrase having the same phrase configuration as this phrase is represented by a symbol "A", and a phrase having a similar phrase configuration to this phrase is represented by a symbol "A '" or "A"".
(“A ′” and “A ″” have different degrees of similarity, meaning that the former is more similar to “A” than the latter.) In step S21, the user sets the number of syllables , The symbol such as "A" or "B" is input as a phrase configuration.
【0052】次に、入力された生成条件を満たすコード
進行データをデータベースから検索し、抽出する(ステ
ップS22)。データベースには、たとえば、各種楽節
数および楽節構成に対して作成された1曲分の基本的な
コード進行パターン(たとえば“I”,“IV”,“V
7”(たとえば、C長調でいうと“C”,“F”,“G
7”)の主要和音のみで構成されているようなコード進
行パターン)が多数、楽節数および楽節構成毎に分類さ
れて予め記憶されている。したがって、ユーザが楽節数
と楽節構成を入力すれば、これに対応するコード進行デ
ータの候補をデータベースから容易に検索し抽出するこ
とができる。また、このデータベースに登録されるコー
ド進行パターンは基本的なもの、すなわち単純なもので
あるため、そのデータ容量は、前記従来のデータベー
ス、すなわち多種類のコードからなるコード進行パター
ンによって構築されるデータベースに比較して、はるか
に少容量ですむ。Next, chord progression data that satisfies the input generation condition is searched from the database and extracted (step S22). The database includes, for example, basic chord progression patterns (eg, “I”, “IV”, “V”) for one song created for various numbers of passages and passage configurations.
7 "(for example, in C major," C "," F "," G
A number of chord progression patterns composed only of the main chords of 7 ”) are classified and stored in advance according to the number of passages and the passage configuration. Therefore, if the user inputs the number of passages and the passage configuration, The corresponding chord progression data can be easily retrieved and extracted from the database, and the chord progression pattern registered in this database is a basic one, that is, a simple one. The capacity is much smaller than that of the conventional database, that is, the database constructed by a chord progression pattern composed of various kinds of codes.
【0053】このようにして抽出されたコード進行デー
タの候補から、ユーザがいずれかを選択すると、その選
択されたコード進行データを前記コード進行入力バッフ
ァに記憶した(ステップS23)後に、本自動生成処理
1を終了する。When the user selects any of the chord progression data candidates extracted in this way, the selected chord progression data is stored in the chord progression input buffer (step S23), and then the automatically generated chord progression data is generated. Processing 1 ends.
【0054】図4は、前記ステップS2の自動生成処理
サブルーチンの他の一例である自動生成処理2の詳細な
手順を示すフローチャートであり、本自動生成処理2
は、前記1)a)ii )の自動生成方法を実現したもので
ある。FIG. 4 is a flowchart showing a detailed procedure of the automatic generation processing 2 which is another example of the automatic generation processing subroutine of the step S2.
Implements the automatic generation method of 1) a) ii).
【0055】同図において、まず、ユーザが、楽節数を
含むコード進行生成条件を入力すると、この入力された
生成条件を、たとえばRAM7のワークエリアに記憶す
る(ステップS31)。ここで、上記自動生成処理1の
ステップS21で入力するコード進行生成条件と異な
り、楽節数を必須の入力要素としたのは、以後の処理中
で楽節数を使用するからである。In the figure, first, when the user inputs chord progression generation conditions including the number of passages, the input generation conditions are stored in, for example, a work area of the RAM 7 (step S31). Here, unlike the chord progression generation condition input in step S21 of the automatic generation processing 1, the number of passages is set as an essential input element because the number of passages is used in the subsequent processing.
【0056】次に、入力された生成条件を満たす楽節構
成を決定する(ステップS32)。決定方法としては、
たとえば、1)各楽節数毎に予め作成された楽節構成テ
ンプレートを要素とする楽節構成データベースを構築
し、この楽節構成データベースから入力された生成条件
に応じた楽節構成テンプレートを検索し、この中に記載
されている楽節構成を用いて目的の楽節構成を決定する
方法、2)所定の演算アルゴリズムに従って演算により
目的の楽節構成を決定する方法(たとえば、各楽節に対
してランダムにまたは条件付きランダムに楽節記号を決
定する)等が考えられる。なお、上記1)または2)の
いずれか一方の方法のみが固定的に設定されていてもよ
いし、いずれか一方の方法をユーザが選択できるように
してもよい。Next, a phrase configuration that satisfies the input generation condition is determined (step S32). As a decision method,
For example, 1) a phrase configuration database having elements of a phrase configuration template created in advance for each number of phrases is constructed, and a phrase configuration template corresponding to the generation condition input from the phrase configuration database is searched. A method of determining a target phrase configuration using the described phrase configuration, 2) A method of determining a target phrase configuration by calculation according to a predetermined calculation algorithm (for example, randomly or conditionally random for each phrase) To determine a passage symbol). Note that only one of the above methods 1) and 2) may be fixedly set, or the user may be able to select either one of the methods.
【0057】次に、各楽節間の結合タイプを決定して1
曲分の結合パターンを生成し、この生成された結合パタ
ーンをRAM7に確保された結合パターンバッファに記
憶する(ステップS33)。本実施の形態では、結合タ
イプとして、次に説明するタイプ1〜3の3種類の結合
タイプが用意されており、このステップS33では、各
楽節に対していずれかの結合タイプを決定することによ
り、曲全体の結合パターンを生成する。Next, the connection type between each passage is determined and
A connection pattern for the music is generated, and the generated connection pattern is stored in the connection pattern buffer secured in the RAM 7 (step S33). In this embodiment, three types of connection types, types 1 to 3 described below, are prepared as connection types. In this step S33, one of the connection types is determined for each passage. To generate a combined pattern of the entire song.
【0058】タイプ1は、前楽節が完全終止(不完全終
止を含む)となって完結している(V7→Iの進行)た
め、次楽節(対象楽節)へのコード進行の自由度が高い
(しかし、出現頻度の優先順位が4度、1度、5度の順
で進行するのが自然である)結合タイプを示し、タイプ
2は、前楽節の最後のコードがドミナントで半終止とな
っている(V7)ため、次コード(対象楽節の最初のコ
ード)へ向けて強い終止感が要求され、次コードへドミ
ナント進行(4度進行)する結合タイプを示し、タイプ
3は、前楽節の最後のコードがタイプ1および2のいず
れにも該当せず(たとえばIV)、特に次楽節(対象楽
節)へのコード進行に対する要求はない(しかし、出現
頻度の優先順位が5度、1度、2度の順で進行するのが
自然である)結合タイプを示している。In the type 1, since the preceding passage is completed (including the incomplete termination) and completed (V7 → I progress), the degree of freedom of chord progression to the next passage (target passage) is high. (However, it is natural that the priority of the appearance frequency progresses in the order of 4 times, 1 time, and 5 times.) Indicates the join type, and type 2 is the dominant last code of the previous clause and semi-end. (V7), a strong sense of ending is required for the next chord (the first chord in the target passage), and a dominant progression (fourth progress) to the next chord indicates a connection type. The last chord does not fall into any of types 1 and 2 (for example, IV), and there is no request for chord progression to the next passage (target passage) (but the priority of appearance frequency is 5, 1; It is natural to proceed in the order of twice) Ip is shown.
【0059】これらタイプ1〜3を各楽節に振り分ける
のであるが、具体的には、たとえば、楽節がA,B,A
(最初のAで「問いかけ」、次のBで「解決」、そして
再度Aに戻ってAを強調という典型的な楽節構成)の3
楽節で構成されている場合に、第1楽節(A)から第2
楽節(B)への結合はタイプ2とし、第2楽節から第3
楽節への結合はタイプ1とする結合パターンがよく取ら
れる。もちろん、これに限らず、多彩な曲を生成するた
めに、上記例とは別のタイプを各楽節に積極的に割り振
るようにしてもよい。The types 1 to 3 are assigned to each phrase. Specifically, for example, the phrases are A, B, A
(Typical passage composition of "question" in the first A, "resolution" in the next B, and return to A again to emphasize A)
When composed of passages, the first passage (A) and the second passage
The connection to the phrase (B) is of type 2 and the second to third
For the connection to the passage, a connection pattern of type 1 is often used. Of course, the present invention is not limited to this, and a different type from the above example may be positively assigned to each passage in order to generate a variety of songs.
【0060】以上の点を考慮し、本実施の形態では、結
合パターンの生成方法として、1)各楽節数毎に予め作
成された典型的な結合パターンを要素とする結合パター
ンデータベースを構築し、この結合パターンデータベー
スからランダムにまたはユーザの指示に従って検索する
ことによって生成する方法、2)所定の演算アルゴリズ
ムに従って演算により生成する方法(たとえば、各楽節
に対してランダムに結合タイプを決定する)のうちいず
れかを採用している。もちろん、これに限る必要はな
く、前記楽節構成テンプレート内に結合パターンの情報
を記載しておくようにしてもよい。また、上記1)また
は2)のいずれか一方の方法をユーザが選択できるよう
にしてもよい。In consideration of the above points, in the present embodiment, as a method of generating a connection pattern, 1) a connection pattern database having elements of a typical connection pattern created in advance for each passage number is constructed. 2) a method of generating by performing a search from the connection pattern database at random or in accordance with a user's instruction; 2) a method of generating by a calculation according to a predetermined calculation algorithm (for example, a connection type is randomly determined for each passage) Either is adopted. Needless to say, the present invention is not limited to this, and information on the combination pattern may be described in the phrase configuration template. Further, the user may be able to select either one of the above methods 1) and 2).
【0061】続くステップS34では、ステップS33
で生成された結合パターン、すなわち各楽節間の結合タ
イプに基づいて結合部のコードを決定する結合部コード
決定処理サブルーチン(図5を用いて後述)を実行し、
ステップS35では、各楽節内の結合部以外の部分のコ
ード進行を、次の方法によって生成した後に、本自動生
成処理2を終了する。すなわち、 1)1各楽節分を単位として予め作成された基本的なコ
ード進行パターンを要素とするコード進行パターンデー
タベースを構築し、このコード進行パターンデータベー
スに記憶されているコード進行パターンのうち、各楽節
の先頭コードおよび最終コード(該各コードは、ステッ
プS34の処理によって決定される)に合致するものを
ランダムに選択し生成する方法 2)所定の演算アルゴリズムに従って演算により生成す
る方法(たとえば、コード変更可能タイミング(1拍、
2拍、1小節等)毎にランダムに基本コードのいずれか
を決定する) なお、上記1)または2)のいずれか一方の方法が固定
的に設定されていてもよいし、いずれか一方の方法をユ
ーザが選択できるようにしてもよい。また、1)の方法
において、コード進行パターンデータベースに登録され
るコード進行パターンは、楽節を単位としているが、こ
れに限らず、より細かい単位としてもよい。また、2)
の方法を採用するときには、a)同一コードの連続は所
定回数(たとえば2回)まで、b)1つの楽節中に完全
4度上行する進行を1つ以上含む、c)コードの出現頻
度をI,V7,IVの順とする等の条件を設け、これに
合致するように、コード進行を生成するようにしてもよ
い。さらに、1)および2)のいずれの方法を採用する
ときでも、対象楽節の楽節構成がそれより前の楽節(既
にコード進行が生成されている楽節)の楽節構成と同一
関係にあるときには、対象楽節は、その同一楽節と同様
のコード進行にする方が好ましい。In the following step S34, step S33
Executes a connection code determination subroutine (described later with reference to FIG. 5) for determining the code of the connection based on the connection pattern generated in the above, ie, the connection type between the phrases.
In step S35, after the chord progression of a portion other than the joint portion in each passage is generated by the following method, the automatic generation processing 2 ends. 1) Construct a chord progression pattern database having a basic chord progression pattern created in advance for each passage as an element, and among the chord progression patterns stored in the chord progression pattern database, A method of randomly selecting and generating a phrase that matches a head code and a final code of the phrase (the respective codes are determined by the processing of step S34) 2) A method of generating by calculation according to a predetermined calculation algorithm (for example, a code Changeable timing (1 beat,
One of the basic chords is randomly determined for each of two beats, one bar, etc.) One of the above methods 1) and 2) may be fixedly set, or one of the two methods may be fixed. The method may be selectable by the user. Further, in the method 1), the chord progression pattern registered in the chord progression pattern database is based on a phrase, but is not limited thereto, and may be a finer unit. 2)
When the method of (1) is adopted, a) the same chord is continued up to a predetermined number of times (for example, twice), b) one or more progresses that go up four full times in one passage, and c) the frequency of occurrence of the chord is I , V7, and IV in order, and the chord progression may be generated so as to meet this condition. Further, in any of the methods 1) and 2), if the phrase configuration of the target phrase has the same relationship as the phrase configuration of the earlier phrase (the phrase whose chord progression has already been generated), It is preferable that the passage has the same chord progression as the same passage.
【0062】図5は、前記ステップS34の結合部コー
ド決定処理サブルーチンの詳細な手順を示すフローチャ
ートであり、本処理は、前記生成された結合タイプに応
じて、対象楽節Kの最後のコードと次楽節K+1の先頭
のコードとを決定するものである。FIG. 5 is a flow chart showing a detailed procedure of the subroutine code determination processing subroutine in step S34. This processing is performed in accordance with the generated connection type. This determines the head code of the passage K + 1.
【0063】同図において、まず、先頭楽節の先頭コー
ドを“I”に決定する(ステップS41)。In the figure, first, the head code of the head passage is determined to be "I" (step S41).
【0064】次に、処理の対象となる楽節を指示するた
めに、RAM7のワークエリアに設けられたソフトウェ
アカウンタKを初期設定(K←1)する(ステップS4
2)。Next, a software counter K provided in the work area of the RAM 7 is initialized (K ← 1) in order to designate a passage to be processed (step S4).
2).
【0065】そして、結合パターン中K番目の結合タイ
プ(K楽節からK+1楽節への結合タイプ)を、前記結
合パターンバッファから読み出して所定の一時記憶バッ
ファにロードし(ステップS43)、この結合タイプ
が、前記タイプ1〜3中いずれのタイプであるかを判別
する(ステップS44)。Then, the K-th connection type in the connection pattern (the connection type from the K section to the K + 1 section) is read from the connection pattern buffer and loaded into a predetermined temporary storage buffer (step S43). Then, it is determined which of the types 1 to 3 is the type (step S44).
【0066】ステップS44で、結合タイプがタイプ1
のときには、K楽節の最後の2つのコードを“V7”か
ら“I”への進行とし(ステップS45)、K+1楽節
の先頭のコードをランダムに決定する(ステップS4
6)。なお、ステップS46では、そのコードを完全に
ランダムに決定するのではなく、前記出現頻度の優先順
位(たとえば4度進行、1度進行、5度進行の順)に基
づいて条件付きランダムに決定する方が好ましい。In step S44, the connection type is type 1
In the case of, the last two chords of the K section are made to progress from "V7" to "I" (step S45), and the top code of the K + 1 section is determined at random (step S4).
6). In step S46, the code is not determined completely at random, but is determined conditionally randomly based on the priority of the appearance frequency (for example, progression of 4 times, progress of 1 time, progress of 5 times). Is more preferred.
【0067】ステップS44で、結合タイプがタイプ2
のときには、K楽節の最後のコードを“V7”とし(ス
テップS47)、K+1楽節の先頭のコードを“I”と
する(ステップS48)。In step S44, the connection type is type 2
In this case, the last code of the K section is set to "V7" (step S47), and the first code of the K + 1 section is set to "I" (step S48).
【0068】ステップS44で、結合タイプがタイプ3
のときには、K楽節の最後のコードをランダムに決定し
(ステップS49)、K+1楽節の先頭のコードをラン
ダムに決定する(ステップS50)。なお、ステップS
50では、そのコードを完全にランダムに決定するので
はなく、前記出現頻度の優先順位(たとえば5度進行、
1度進行、2度進行の順)に基づいて条件付きランダム
に決定する方が好ましい。In step S44, the connection type is type 3
In the case of (1), the last code of the K section is determined at random (step S49), and the first code of the K + 1 section is determined at random (step S50). Step S
At 50, instead of completely randomly determining the code, the occurrence frequency is prioritized (eg, progression 5 degrees,
It is more preferable to determine the condition randomly based on the first progress and the second progress).
【0069】続くステップS51では、Kが最後の楽節
より1楽節前の楽節を示しているか否かを判別し、Kが
最後の楽節より1楽節前の楽節を示していないとき、す
なわち処理すべき楽節が残っているときには、Kの値を
“1”だけインクリメントした(ステップS52)後
に、前記ステップS43に戻って上述の処理を繰り返
し、Kが最後の楽節より1楽節前の楽節を示していると
き、すなわち処理すべき楽節がないときには、K+1楽
節の最後の2つのコードを“V7”から“I”への進行
とした(ステップS53)後に、本結合部コード決定処
理を終了する。In a succeeding step S51, it is determined whether or not K indicates a passage one passage before the last passage. If K does not indicate a passage one passage before the last passage, that is, if processing is not performed, If there is a phrase to be left, the value of K is incremented by "1" (step S52), and the process returns to step S43 to repeat the above-described processing. When it is shown, that is, when there is no phrase to be processed, the last two codes of the K + 1 phrase are changed from "V7" to "I" (step S53), and then the final connection part code determination processing is ended. .
【0070】図6は、前記ステップS6のコード進行変
形処理サブルーチンの詳細な手順を示すフローチャート
であり、本処理は、前記2種類のリハーモナイズ方法
2)a)およびb)を実現したものである。FIG. 6 is a flowchart showing a detailed procedure of the chord progression transformation processing subroutine of the step S6. This processing realizes the two types of reharmonization methods 2) a) and b).
【0071】コード進行変形処理をフローチャートに基
づいて詳細に説明する前に、その概要を説明する。本実
施の形態のコード進行変形処理は、次の技術的思想に基
づいて構成されている。すなわち、 1)曲の最初および最後の2コードは変形しない(これ
は、曲の最初と最後は、その曲の調性を明確にする部分
だからである) 2)曲全体の所定割合だけ変形する 2′)楽節記号が“A”の楽節では、セカンダリ・ドミ
ナント・コードへの置き換えは行わない 3)曲全体の所定割合だけ完全終止が出現するようにす
る 図6において、まず、曲の先頭と最後の各2コードを除
いた曲全体のコード数を算出し(ステップS61)、こ
のコード数を、たとえばRAM7のワークエリアに確保
された領域X(以下、この内容を「コード数X」とい
う)に記憶する(ステップS62)。Before describing the chord progression transformation processing in detail based on a flowchart, its outline will be described. The chord progression transformation processing of the present embodiment is configured based on the following technical idea. That is, 1) the first and last two chords of the music are not deformed (this is because the beginning and the end of the music are parts that clarify the tonality of the music). 2) The music is deformed by a predetermined ratio of the whole music. 2 ') In the phrase whose phrase symbol is "A", replacement with the secondary dominant code is not performed. 3) Complete stop appears for a predetermined ratio of the entire song. The number of chords of the whole music excluding the last two chords is calculated (step S61), and this chord number is determined, for example, in an area X secured in a work area of the RAM 7 (hereinafter, this content is referred to as "chord number X"). (Step S62).
【0072】次に、コード数Xに所定の係数(前記変形
すべき曲全体の割合に相当する)a(1以下の正数;た
とえば0.5)を乗算し、その結果をXaとする(ステ
ップS63)。このXaは、変形(置き換え)すべきコ
ード総数を示すため、以下、変形コード総数Xaとい
う。Next, the number of chords X is multiplied by a predetermined coefficient (corresponding to the ratio of the whole music to be transformed) a (a positive number equal to or less than 1; for example, 0.5), and the result is defined as Xa ( Step S63). Since Xa indicates the total number of codes to be transformed (replaced), it is hereinafter referred to as the modified code total Xa.
【0073】次に、ユーザに対して変形方法、すなわ
ち、a)代理コードで変形する方法、または、b)セカ
ンダリ・ドミナント・コードで変形する方法のいずれの
方法で変形するかを問い合わせ(ステップS64)、ユ
ーザが、a)の方法で変形する旨を回答したときには、
ステップS65〜S67の処理を実行する一方、b)の
方法で変形する旨を回答したときには、ステップS68
〜S70の処理を実行する。Next, the user is inquired about which transformation method, ie, a) a transformation method using a substitute code, or b) a transformation method using a secondary dominant code (step S64). ), When the user responds that it is deformed by the method of a),
While executing the processing of steps S65 to S67, if the answer to the effect of the deformation in the method b) is answered, the processing proceeds to step S68.
To S70.
【0074】ステップS65では、各楽節に変形コード
総数Xaを割り振る。割り振り方法は、たとえば、1)
ランダムに割り振る方法、2)条件付きランダムに割り
振る方法、3)各楽節(または、それより細かい所定単
位(たとえば小節))毎に割り振るコード数の比率を設
定し、この比率に応じて割り振る方法等が考えられる。
なお、この比率は、前記楽節構成テンプレートを使用す
る場合には、各楽節構成テンプレート内に記載するよう
にすればよいし、また、ユーザが自由に設定できるよう
にしてもよい。さらに、同一楽節には、同一割合で割り
振るようにした方が好ましい。In step S65, the total number of transformed codes Xa is assigned to each passage. The allocation method is, for example, 1)
A method of randomly allocating, 2) a conditionally random allocating method, 3) a method of setting a ratio of the number of chords to be allocated to each passage (or a finer predetermined unit (eg, bar)), and a method of allocating according to the ratio. Can be considered.
When using the phrase configuration template, this ratio may be described in each phrase configuration template, or may be set freely by the user. Further, it is preferable that the same passage is allocated at the same ratio.
【0075】ステップS66では、各楽節に割り振られ
た変形コード数に基づいてランダムに置き換えるべきコ
ード(位置)を決定(ただし、曲の先頭と最後の各2コ
ードを除く)し、そのコードを代理コードで置き換え
る。In step S66, a code (position) to be replaced at random is determined based on the number of deformed chords allocated to each passage (however, except for the first and last two chords of the music), and the chord is substituted. Replace with code.
【0076】ステップS67では、完全終止の出現頻度
が所定の割合(たとえば約30%)以上であるか否かを
判別し、出現頻度<所定の割合のときには、ステップS
66に戻って、再度代理コードへの置き換え処理を行
い、出現頻度≧所定の割合のときには、本コード進行変
形処理を終了する。In step S67, it is determined whether or not the appearance frequency of complete termination is equal to or higher than a predetermined ratio (for example, about 30%).
Returning to 66, the replacement process with the substitute code is performed again, and when the appearance frequency ≧ the predetermined ratio, the present code progression / deformation process ends.
【0077】ステップS68では、ステップS65と同
様にして、各楽節に変形コード総数Xaを割り振る。た
だし、楽節記号として“A”が設定されている楽節に対
しては、割り振りは行わない。In step S68, as in step S65, the total number of transformed codes Xa is assigned to each passage. However, no assignment is made to a phrase for which "A" is set as a phrase symbol.
【0078】ステップS69では、各楽節(ただし、
“A”が設定されている楽節は除く)に割り振られた変
形コード数に基づいてランダムに置き換えるべきコード
(位置)を決定(ただし、曲の最後のコードを除く)
し、そのコードをセカンダリ・ドミナント・コードで置
き換える。ここで、曲の最初のコードを除くと記載され
ていないが、これは、“A”が設定されている楽節は必
ず先頭楽節を含み、この楽節は変形の対象とされていな
いため、曲の最後のコードを除くとのみ記載すれば、自
動的に曲の先頭および最後の各コードを除くことを意味
するようになるからである。In step S69, each passage (however,
Determines the chord (position) to be replaced randomly based on the number of transformed chords allocated to the section where "A" is set (excluding the last chord of the song)
And replace that code with the secondary dominant code. Here, it is not described except that the first chord of the song is excluded. However, this is because the phrase to which "A" is set always includes the leading phrase, and since this phrase is not subject to transformation, This is because if it is described only that the last chord is removed, it means that the first and last chords of the music are automatically removed.
【0079】ステップS70では、ステップS67と同
様にして、完全終止の出現頻度が所定の割合(たとえば
約30%)以上であるか否かを判別し、出現頻度<所定
の割合のときには、ステップS69に戻って、再度セカ
ンダリ・ドミナント・コードへの置き換え処理を行い、
出現頻度≧所定の割合のときには、本コード進行変形処
理を終了する。In step S70, similarly to step S67, it is determined whether or not the appearance frequency of complete termination is equal to or higher than a predetermined ratio (for example, about 30%). And perform the replacement process with the secondary dominant code again,
When the appearance frequency ≧ the predetermined ratio, the present chord progression / deformation processing ends.
【0080】なお、本実施の形態ではステップS67
で、出現頻度<所定の割合のときには、ステップS66
に戻るようにしたが、これに限らず、ステップS63に
戻るようにしてもよい(ステップS70も同様)。In this embodiment, step S67 is performed.
If the frequency of appearance <the predetermined ratio, step S66
However, the present invention is not limited to this, and may return to step S63 (the same applies to step S70).
【0081】また、本実施の形態ではステップS66
で、決定されたコード位置のコードをその対応する代理
コードで置き換えるようにしたが、対応する代理コード
が複数存在する場合には、そのうちいずれかをランダ
ム、ユーザの指示または所定の優先順位により選択して
決定するようにすればよい。In the present embodiment, step S66
In the above, the code at the determined code position is replaced with the corresponding proxy code, but if there are a plurality of corresponding proxy codes, one of them is selected by random, user's instruction or predetermined priority. It is sufficient to determine it.
【0082】さらに、本実施の形態では、a)代理コー
ドで変形する方法、または、b)セカンダリ・ドミナン
ト・コードで変形する方法のいずれか一方の方法を選択
して変形するようにしたが、これに限らず、a)の方法
で変形した後に、続いてb)の方法で変形する2段階の
変形によって行うようにしてもよい。Further, in the present embodiment, either one of a method of transforming with a substitute code and b) a method of transforming with a secondary dominant code is selected and transformed. The present invention is not limited to this, and may be performed by a two-stage deformation in which the image is deformed by the method a) and then deformed by the method b).
【0083】このように、本実施の形態では、少数の基
本コードのみからなるコード進行が生成され、この生成
されたコード進行に含まれる基本コードが他のコードに
変形されるので、多種類のコードからなるコード進行を
生成するためのデータベースの容量を大幅に削減(また
はデータベースそのものを省略)することができる。そ
して、コード進行に含まれる少数の基本コードを他のコ
ードに変形するだけで新たなコード進行が生成されるの
で、多種類のコードからなるコード進行であって、音楽
的に意味のあるものを簡単に生成することができる。ま
た、少数の基本コードのみからなるコード進行を生成す
る方法として、演算による方法を採用したときには、演
算生成するのは少数の基本コードのみであるため、その
演算アルゴリズムは簡単なものとなり、したがって、演
算に費やすCPU能力を削減することができる。As described above, in the present embodiment, a chord progression composed of only a small number of basic codes is generated, and the basic code included in the generated chord progression is transformed into another code. The capacity of a database for generating a chord progression of codes can be significantly reduced (or the database itself can be omitted). Then, a new chord progression is generated simply by transforming a small number of basic chords contained in the chord progression into other chords. It can be easily generated. Also, when a method based on arithmetic is adopted as a method of generating a code progression consisting of only a small number of basic codes, the arithmetic algorithm is simple because only a small number of basic codes are generated, and therefore, the arithmetic algorithm is simplified. It is possible to reduce the CPU capacity used for calculation.
【0084】なお、本実施の形態では、基本コードとし
て、主要和音(I,IV,V7)を使用したが、これに
限る必要はなく、この主要和音に副和音(IIm,III
m,VIm,VII7(♭5))を加えた7コード(同一調
内のすべてのダイアトニックコード)を使用するように
してもよい。なお、曲の調が長調の場合と短調の場合と
で、あるいは調の主音に応じて、主要和音は異なるの
で、基本和音も曲の調に応じて異なるようにしてもよ
い。また、一般的に主要和音や副和音と呼ばれている和
音に限らず、所望の複数和音をグループとし、これを基
本和音としてもよい。たとえば、ある一曲の中にもとも
と含まれている複数の和音を基本とし、曲に応じて基本
和音が異なるようにしてもよい。In the present embodiment, the main chords (I, IV, V7) are used as the basic chords. However, the present invention is not limited to this, and the main chords may be replaced with sub-chords (IIm, III).
m, VIm, and VII 7 (# 5)) to add 7 codes (all diatonic codes in the same key). Note that the main chord differs depending on whether the key of the music is a major key or a minor key, or depending on the tonality of the key, so that the basic chord may be different depending on the key of the music. Further, the present invention is not limited to chords generally called main chords and sub-chords, and a plurality of desired chords may be grouped and used as a basic chord. For example, a plurality of chords originally included in a certain song may be used as the basis, and the basic chords may differ depending on the song.
【0085】また、ある音楽スタイル、たとえば唱歌の
ような比較的単純な曲では、基本コードとして主要和音
を使用し、これを変形することによって副和音を加える
ようにし、他の音楽スタイル、たとえばポピュラー音楽
のような複雑な曲では、1)基本コードとして主要和音
を使用し、これを変形することによっていきなり複雑な
(副和音より複雑な)コード進行を生成したり、また
は、2)基本コードとして主要和音を使用し、次のステ
ップで副和音を加え、さらに次のステップで複雑なコー
ド進行を生成したりしてもよい。他の音楽スタイルにお
ける後者2)の2ステップ変形処理は、前者1)のよう
に主要和音からいきなり複雑なコード進行を生成したと
きの不都合、すなわち主要和音とこれ以外の複雑なコー
ドとが入り交じることによる不自然感を解消することが
できる。Further, in a certain music style, for example, a relatively simple song such as a song, a main chord is used as a basic chord, and a sub chord is added by transforming the main chord, and another music style, for example, a popular chord is used. For complex songs such as music, 1) use the main chord as the basic chord and transform it to suddenly generate a complex (more complex than sub-chord) chord progression, or 2) use the main chord as the basic chord. The main chords may be used, the next step adding subchords, and the next step generating a complex chord progression. The latter two-step transformation process in other music styles is disadvantageous when a complicated chord progression is suddenly generated from the main chord as in the former 1), that is, the main chord mixes with other complicated chords. The unnatural feeling due to the above can be eliminated.
【0086】さらに、本実施の形態では、リハーモナイ
ズ方法として前記2)a)およびb)の2種類の方法を
採用したが、これに限らず、たとえば、循環コード進行
となるように基本的なコード進行を変形する方法、連続
ドミナント進行となるように基本的なコード進行を変形
する方法、順次コード進行となるように基本的なコード
進行を変形する方法等どのような方法を採用してもよ
い。Further, in the present embodiment, the two types of 2) a) and b) are adopted as the re-harmonizing method, but the present invention is not limited to this. Any method such as a method of changing the progress, a method of changing the basic chord progression to be a continuous dominant progression, and a method of changing the basic chord progression to become a sequential chord progression may be adopted. .
【0087】また、本実施の形態では、変形対象となる
基本コードは、その数のみが問題にされているが、これ
に限らず、その種類を問題にしてもよい。すなわち、変
形対象となる基本コードの種類の比を設定し(たとえ
ば、I:IV:V7=2:3:4)、この比で置き換え
るべきコードを決定する。Further, in the present embodiment, only the number of basic codes to be transformed is considered as a problem, but the present invention is not limited to this, and the type may be considered as a problem. That is, the ratio of the type of the basic code to be transformed is set (for example, I: IV: V7 = 2: 3: 4), and the code to be replaced is determined by this ratio.
【0088】さらに、本実施の形態では、変形されたコ
ード進行を提示するときに(ステップS7)、1つのみ
を提示したが、これに限らず、複数の候補を提示するよ
うにしてもよい。具体的には、その前段のコード進行変
形処理(ステップS6)で、選択された変形方法に基づ
いて複数回変形処理を繰り返したり、または、変形方法
を選択せずに、両変形方法をそれぞれ複数回繰り返した
りして、複数の変形結果を生成し、これを提示する。Furthermore, in the present embodiment, when presenting the transformed chord progression (step S7), only one is presented. However, the present invention is not limited to this, and a plurality of candidates may be presented. . Specifically, in the preceding chord progression transformation process (step S6), the transformation process is repeated a plurality of times based on the selected transformation method, or both transformation methods are selected without selecting the transformation method. By repeating the process a number of times, a plurality of transformation results are generated and presented.
【0089】なお、上述した実施の形態の機能を実現す
るソフトウェアのプログラムコードを記録した記憶媒体
を、システムまたは装置に供給し、そのシステムまたは
装置のコンピュータ(またはCPU5やMPU)が記憶
媒体に格納されたプログラムコードを読出し実行するこ
とによっても、本発明の目的が達成されることは云うま
でもない。The storage medium storing the program codes of the software for realizing the functions of the above-described embodiments is supplied to a system or an apparatus, and the computer (or CPU 5 or MPU) of the system or the apparatus stores the storage medium in the storage medium. Needless to say, the object of the present invention can be achieved by reading and executing the program code.
【0090】この場合、記憶媒体から読出されたプログ
ラムコード自体が本発明の新規な機能を実現することに
なり、そのプログラムコードを記憶した記憶媒体は本発
明を構成することになる。In this case, the program code itself read from the storage medium realizes the novel function of the present invention, and the storage medium storing the program code constitutes the present invention.
【0091】プログラムコードを供給するための記憶媒
体としては、たとえば、前記フロッピーディスク20、
ハードディスク、光ディスク、光磁気ディスク、CD−
ROM21、CD−R、磁気テープ、不揮発性のメモリ
カード、ROM6などを用いることができる。また、他
のMIDI機器100や通信ネットワーク101を介し
てサーバコンピュータ102からプログラムコードが供
給されるようにしてもよい。The storage medium for supplying the program code includes, for example, the floppy disk 20,
Hard disk, optical disk, magneto-optical disk, CD-
A ROM 21, a CD-R, a magnetic tape, a nonvolatile memory card, a ROM 6, and the like can be used. Further, the program code may be supplied from the server computer 102 via another MIDI device 100 or the communication network 101.
【0092】また、コンピュータが読出したプログラム
コードを実行することにより、上述した実施の形態の機
能が実現されるだけでなく、そのプログラムコードの指
示に基づき、コンピュータ上で稼働しているOSなどが
実際の処理の一部または全部を行い、その処理によって
上述した実施の形態の機能が実現される場合も含まれる
ことは云うまでもない。Further, when the computer executes the readout program code, not only the functions of the above-described embodiment are realized, but also the OS or the like running on the computer operates based on the instruction of the program code. It goes without saying that a case where a part or all of the actual processing is performed and the functions of the above-described embodiments are realized by the processing is also included.
【0093】さらに、記憶媒体から読出されたプログラ
ムコードが、コンピュータに挿入された機能拡張ボード
やコンピュータに接続された機能拡張ユニットに備わる
メモリに書込まれた後、そのプログラムコードの指示に
基づき、その機能拡張ボードや機能拡張ユニットに備わ
るCPU5などが実際の処理の一部または全部を行い、
その処理によって上述した実施の形態の機能が実現され
る場合も含まれることは云うまでもない。Further, after the program code read from the storage medium is written into a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, based on the instruction of the program code, The CPU 5 provided in the function expansion board or function expansion unit performs part or all of the actual processing,
It goes without saying that a case where the functions of the above-described embodiment are realized by the processing is also included.
【0094】[0094]
【発明の効果】以上説明したように、請求項1または8
に記載の発明によれば、少数の基本コードのみからなる
コード進行が供給され、この供給されたコード進行の少
なくとも一部の基本コードが基本コード以外のコードに
変更されて、前記供給されたコード進行を基に他のコー
ド進行が生成されるので、多種類のコードからなるコー
ド進行を生成するためのデータベースの容量を大幅に削
減することができる。そして、コード進行に含まれる少
数の基本コードを基本コード以外のコードに変更するだ
けで新たなコード進行が生成されるので、多種類のコー
ドからなるコード進行であって、音楽的に意味のあるも
のを簡単に生成することができる。As described above, claims 1 and 8
According to the invention described in the above, a code progression consisting of only a small number of basic codes is supplied, and at least a part of the supplied basic code is changed to a code other than the basic code, and the supplied code is provided. Since another chord progression is generated based on the progression, the capacity of a database for generating a chord progression composed of various types of codes can be significantly reduced. Then, a new chord progression is generated simply by changing a small number of basic chords included in the chord progression to chords other than the basic chord, so that the chord progression is composed of various types of chords and is musically meaningful. Things can be easily generated.
【0095】請求項2または9に記載の発明によれば、
所定の演算アルゴリズムに基づいて、少数の基本コード
のみからなるコード進行が演算生成され、この演算生成
されたコード進行の少なくとも一部の基本コードが基本
コード以外のコードに変更されて、前記演算生成された
コード進行を基に他のコード進行が生成されるので、多
種類のコードからなるコード進行を生成するためのデー
タベースの容量を大幅に削減することができる。そし
て、少数の基本コードのみからなるコード進行を演算生
成するだけなので、その演算アルゴリズムは簡単なもの
となり、したがって、演算に費やす能力を削減すること
ができる。According to the second or ninth aspect of the present invention,
A code progression consisting of only a small number of basic codes is arithmetically generated based on a predetermined arithmetic algorithm, and at least a part of the basic code of the arithmetically generated code progresses is changed to a code other than the basic code. Since another chord progression is generated based on the chord progression, the capacity of a database for generating a chord progression composed of various types of codes can be significantly reduced. Then, since only a code progression consisting of a small number of basic codes is calculated and generated, the calculation algorithm is simple, and therefore, the ability to spend on calculation can be reduced.
【0096】請求項3に記載の発明によれば、前記基本
コードのみからなるコード進行のうちの所定区間を除く
区間に存在するコードが、前記基本コード以外のコード
に変更されるので、所定区間として、たとえば、基本コ
ードを基本コード以外に変更した場合に当該曲の曲想が
変わってしまうような区間を設定すれば、曲想を変えず
に、多種類のコードからなるコード進行であって、音楽
的に意味のあるものを生成することができる。According to the third aspect of the present invention, a code existing in a section excluding a predetermined section in a chord progression consisting of only the basic code is changed to a code other than the basic code, so that a predetermined section is changed. For example, if a section where the tune of the song changes when the basic chord is changed to a code other than the basic chord is set, the chord progression composed of various kinds of chords without changing the tune It can generate something meaningful.
【0097】請求項4に記載の発明によれば、前記基本
コードのみからなるコード進行に含まれる総コード数の
所定割合のコードが、前記基本コード以外のコードに変
更されるので、前記所定割合以外の割合コードが基本コ
ードとして残り、このため、請求項3に記載の発明と同
様に、曲想を変えずに、多種類のコードからなるコード
進行であって、音楽的に意味のあるものを生成すること
ができる。According to the fourth aspect of the present invention, a predetermined percentage of the total number of codes included in the chord progression consisting of only the basic code is changed to a code other than the basic code. Other ratio codes remain as basic codes. Therefore, similar to the invention described in claim 3, a chord progression composed of various kinds of chords and having musically significant Can be generated.
【0098】請求項5に記載の発明によれば、複数種類
の変更方法のうち選択されたいずれかの方法に従って基
本コードが基本コード以外のコードに変更されるので、
ユーザが最も意図する他のコード進行を生成することが
できる。According to the fifth aspect of the present invention, the basic code is changed to a code other than the basic code according to any one of a plurality of types of changing methods.
Other chord progressions that the user is most interested in can be generated.
【0099】請求項6または10に記載の発明によれ
ば、複数の区間からなる曲の各区間間の結合タイプが、
それぞれ異なる複数の結合タイプの中から選択されて決
定され、この決定された結合タイプに基づいて当該各区
間の結合部におけるコードが決定されるとともに、その
結合部のコード以外の部分のコード進行が生成されるの
で、各区間間のつながりがよいコード進行を生成するこ
とができる。According to the sixth or tenth aspect of the present invention, the type of connection between the sections of the song composed of a plurality of sections is
It is selected from a plurality of different connection types and determined, and based on the determined connection type, the code at the connection portion of each section is determined, and the code progression of the portion other than the code of the connection portion is performed. Since the chord progression is generated, a chord progression with good connection between the sections can be generated.
【0100】請求項7または11に記載の発明によれ
ば、複数の区間からなる曲の各区間間の結合タイプが、
それぞれ異なる複数の結合タイプの中から選択されて決
定され、この決定された結合タイプに基づいて当該各区
間の結合部におけるコードが少数の基本コードの中から
選択して決定されるとともに、その結合部のコード以外
の部分のコード進行が少数の基本コードを用いて生成さ
れ、このようにして生成されたコード進行の少なくとも
一部の基本コードが基本コード以外のコードに変更され
て、前記生成されたコード進行を基に他のコード進行が
生成されるので、各区間間のつながりがよいコード進行
を生成することができるとともに、多種類のコードから
なるコード進行であって、音楽的に意味のあるものを生
成することができる。According to the seventh or eleventh aspect of the present invention, the type of connection between the sections of the music composed of a plurality of sections is
The code is selected and determined from a plurality of different connection types, and based on the determined connection type, the code at the connection portion of each section is selected from a small number of basic codes and determined. The code progression of the part other than the code of the part is generated using a small number of basic codes, and at least a part of the basic code of the code progression thus generated is changed to a code other than the basic code, and the generated code progression is generated. Since other chord progressions are generated based on the chord progressions that have been generated, it is possible to generate chord progressions with good connections between sections, and to have chord progressions composed of various types of chords, which are musically significant. Something can be created.
【図1】本発明の一実施の形態に係るコード進行生成装
置の概略構成を示すブロック図である。FIG. 1 is a block diagram showing a schematic configuration of a chord progression generation device according to an embodiment of the present invention.
【図2】図1のコード進行生成装置、特にCPUが実行
するメインルーチンの手順を示すフローチャートであ
る。FIG. 2 is a flowchart showing a procedure of a main routine executed by the chord progression generation device of FIG. 1, in particular, a CPU;
【図3】図2の自動生成処理サブルーチンの一例である
自動生成処理1の詳細な手順を示すフローチャートであ
る。FIG. 3 is a flowchart illustrating a detailed procedure of an automatic generation process 1 which is an example of an automatic generation process subroutine of FIG. 2;
【図4】図2の自動生成処理サブルーチンの他の一例で
ある自動生成処理2の詳細な手順を示すフローチャート
である。FIG. 4 is a flowchart showing a detailed procedure of an automatic generation process 2 which is another example of the automatic generation process subroutine of FIG. 2;
【図5】図4の結合部コード決定処理サブルーチンの詳
細な手順を示すフローチャートである。FIG. 5 is a flowchart showing a detailed procedure of a subroutine code determination processing subroutine of FIG. 4;
【図6】図2のコード進行変形処理サブルーチンの詳細
な手順を示すフローチャートである。FIG. 6 is a flowchart showing a detailed procedure of a chord progression transformation processing subroutine of FIG. 2;
1 鍵盤(供給手段) 2 パネルスイッチ(供給手段、選択手段、結合タイプ
決定手段) 5 CPU(演算生成手段、他コード進行生成手段、供
給手段、変形手段、選択手段、結合タイプ決定手段、コ
ード進行生成手段、コード決定手段) 6 ROM(供給手段) 7 RAM(供給手段) 10 FDD(供給手段) 11 HDD(供給手段) 12 CD−ROMD(供給手段) 14 通信I/F(供給手段)1 keyboard (supply means) 2 panel switch (supply means, selection means, connection type determination means) 5 CPU (operation generation means, other chord progression generation means, supply means, transformation means, selection means, connection type determination means, chord progression 6 ROM (supply unit) 7 RAM (supply unit) 10 FDD (supply unit) 11 HDD (supply unit) 12 CD-ROMD (supply unit) 14 Communication I / F (supply unit)
Claims (11)
行を供給する供給手段と、 該供給されたコード進行の少なくとも一部の基本コード
を基本コード以外のコードに変更することにより、前記
供給されたコード進行を基に他のコード進行を生成する
他コード生成手段とを有することを特徴とするコード進
行生成装置。1. A supply means for supplying a chord progression consisting of only a small number of basic codes, and said supplied chord progression is changed by changing at least a part of the basic chords to codes other than the basic chords. A chord progression generating device for generating another chord progression based on the chord progression.
数の基本コードのみからなるコード進行を演算生成する
演算生成手段と、 該演算生成されたコード進行の少なくとも一部の基本コ
ードを基本コード以外のコードに変更することにより、
前記演算生成されたコード進行を基に他のコード進行を
生成する他コード進行生成手段とを有することを特徴と
するコード進行生成装置。2. An operation generating means for operationally generating a code progression consisting of only a small number of basic codes based on a predetermined operation algorithm, and converting at least a part of the operation-generated code progresses into basic codes other than the basic code. By changing to code,
A chord progression generating device for generating another chord progression based on the chord progression generated by the operation.
コードのみからなるコード進行のうちの所定区間を除く
区間に存在するコードを、前記基本コード以外のコード
に変更することを特徴とする請求項1または2のいずれ
かに記載のコード進行生成装置。3. The code other than the basic code, wherein the other code progress generating means changes a code existing in a section other than a predetermined section of the code progression including only the basic code. Item 3. The chord progression generation device according to any one of Items 1 and 2.
コードのみからなるコード進行に含まれる総コード数の
所定割合のコードを、前記基本コード以外のコードに変
更することを特徴とする請求項1または2のいずれかに
記載のコード進行生成装置。4. The apparatus according to claim 1, wherein the other chord progression generation means changes a code of a predetermined ratio of the total number of chords included in the chord progression consisting of only the basic chord to a code other than the basic chord. The chord progression generation device according to any one of 1 and 2.
ドに変更する変更方法を複数種類備え、該複数種類の変
更方法のうちのいずれかを選択する選択手段を有し、 前記他コード進行生成手段は、前記選択された変更方法
に従って前記基本コードを基本コード以外のコードに変
更することを特徴とする請求項1〜4のいずれかに記載
のコード進行生成装置。5. A method for changing the basic code to a code other than the basic code, comprising a plurality of types of changing methods, a selecting means for selecting one of the plurality of types of changing methods, and the other code progress generating means. 5. The chord progression generating device according to claim 1, wherein the basic code is changed to a code other than the basic code according to the selected change method.
タイプを、それぞれ異なる複数の結合タイプの中から選
択して決定する結合タイプ決定手段と、 該決定された結合タイプに基づいて、当該各区間の結合
部におけるコードを決定するコード決定手段と、 前記各区間における前記決定された結合部のコード以外
の部分のコード進行を生成するコード進行生成手段とを
有することを特徴とするコード進行生成装置。6. A combination type determining means for selecting and determining a connection type between each section of a song composed of a plurality of sections from among a plurality of different connection types, based on the determined connection type. A code comprising: code determining means for determining a code in a connecting portion of each section; and code progress generating means for generating a code progression of a portion other than the code of the determined connecting portion in each section. Progress generator.
タイプを、それぞれ異なる複数の結合タイプの中から選
択して決定する結合タイプ決定手段と、 該決定された結合タイプに基づいて、当該各区間の結合
部におけるコードを少数の基本コードの中から選択して
決定するコード決定手段と、 前記各区間における前記決定された結合部のコード以外
の部分のコード進行を少数の基本コードを用いて生成す
るコード進行生成手段と該生成されたコード進行の少な
くとも一部の基本コードを基本コード以外のコードに変
更することにより、前記生成されたコード進行を基に他
のコード進行を生成する他コード進行生成手段とを有す
ることを特徴とするコード進行生成装置。7. A combination type determining means for selecting and determining a connection type between each section of a song composed of a plurality of sections from among a plurality of different connection types, based on the determined connection type, Code determining means for selecting and determining a code in the connection portion of each section from a small number of basic codes, and a code progression of a portion other than the code of the determined connection portion in each section by a small number of basic codes. Using the chord progression generating means to generate the chord progression and changing at least a part of the basic chord of the generated chord progression to a code other than the basic chord to generate another chord progression based on the generated chord progression A chord progression generation device, comprising: another chord progression generation means.
行を供給する供給モジュールと、 該供給されたコード進行の少なくとも一部の基本コード
を基本コード以外のコードに変更することにより、前記
供給されたコード進行を基に他のコード進行を生成する
他コード生成モジュールとを含む、コンピュータが実現
できるプログラムを格納した記憶媒体。8. A supply module for providing a chord progression consisting of only a small number of basic chords, wherein the supplied chord progression is changed by changing at least a part of the basic chords to codes other than the basic chords. A storage medium storing a computer-implementable program including a code generation module for generating another code progression based on the code progression.
数の基本コードのみからなるコード進行を演算生成する
演算生成モジュールと、 該演算生成されたコード進行の少なくとも一部の基本コ
ードを基本コード以外のコードに変更することにより、
前記演算生成されたコード進行を基に他のコード進行を
生成する他コード進行生成モジュールとを含む、コンピ
ュータが実現できるプログラムを格納した記憶媒体。9. An operation generation module for operationally generating a code progression consisting of only a small number of basic codes based on a predetermined operation algorithm, and converting at least a part of the operation-generated code progressions to basic codes other than the basic code. By changing to code,
A storage medium storing a computer-implementable program, the program including a code progression generation module configured to generate another code progression based on the calculated and generated code progression.
合タイプを、それぞれ異なる複数の結合タイプの中から
選択して決定する結合タイプ決定モジュールと、 該決定された結合タイプに基づいて、当該各区間の結合
部におけるコードを決定するコード決定モジュールと、 前記各区間における前記決定された結合部のコード以外
の部分のコード進行を生成するコード進行生成モジュー
ルとを含む、コンピュータが実現できるプログラムを格
納した記憶媒体。10. A connection type determination module for selecting and determining a connection type between each section of a song composed of a plurality of sections from a plurality of different connection types, based on the determined connection type. A computer-implementable program including: a code determination module that determines a code in a connection portion of each section; and a code progress generation module that generates a code progression of a portion other than the code of the determined connection portion in each section. Storage medium storing.
合タイプを、それぞれ異なる複数の結合タイプの中から
選択して決定する結合タイプ決定モジュールと、 該決定された結合タイプに基づいて、当該各区間の結合
部におけるコードを少数の基本コードの中から選択して
決定するコード決定モジュールと、 前記各区間における前記決定された結合部のコード以外
の部分のコード進行を少数の基本コードを用いて生成す
るコード進行生成モジュールと該生成されたコード進行
の少なくとも一部の基本コードを基本コード以外のコー
ドに変更することにより、前記生成されたコード進行を
基に他のコード進行を生成する他コード進行生成モジュ
ールとを含む、コンピュータが実現できるプログラムを
格納した記憶媒体。11. A connection type determination module for selecting and determining a connection type between each section of a song composed of a plurality of sections from a plurality of different connection types, based on the determined connection type. A code determination module for selecting and determining a code in the connection portion of each section from a small number of basic codes, and a code progression of a portion other than the code of the determined connection portion in each section by a small number of basic codes. Using the chord progression generation module to be used and changing at least a part of the basic chord of the generated chord progression to a code other than the basic chord, generating another chord progression based on the generated chord progression A storage medium storing a computer-implementable program including an other code progress generation module.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33378198A JP3632467B2 (en) | 1998-11-25 | 1998-11-25 | Chord progression generator and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33378198A JP3632467B2 (en) | 1998-11-25 | 1998-11-25 | Chord progression generator and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2000163065A true JP2000163065A (en) | 2000-06-16 |
JP3632467B2 JP3632467B2 (en) | 2005-03-23 |
Family
ID=18269897
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP33378198A Expired - Fee Related JP3632467B2 (en) | 1998-11-25 | 1998-11-25 | Chord progression generator and storage medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3632467B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013073112A (en) * | 2011-09-28 | 2013-04-22 | Casio Comput Co Ltd | Automatic chord correction apparatus and program thereof |
CN113767430A (en) * | 2019-03-26 | 2021-12-07 | 雅马哈株式会社 | Chord processing method and chord processing device |
JP2022149038A (en) * | 2021-03-25 | 2022-10-06 | 喜春 青木 | Massage stick |
-
1998
- 1998-11-25 JP JP33378198A patent/JP3632467B2/en not_active Expired - Fee Related
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013073112A (en) * | 2011-09-28 | 2013-04-22 | Casio Comput Co Ltd | Automatic chord correction apparatus and program thereof |
CN113767430A (en) * | 2019-03-26 | 2021-12-07 | 雅马哈株式会社 | Chord processing method and chord processing device |
CN113767430B (en) * | 2019-03-26 | 2024-02-23 | 雅马哈株式会社 | Chord processing method and chord processing device |
JP2022149038A (en) * | 2021-03-25 | 2022-10-06 | 喜春 青木 | Massage stick |
Also Published As
Publication number | Publication date |
---|---|
JP3632467B2 (en) | 2005-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3484986B2 (en) | Automatic composition device, automatic composition method, and storage medium | |
US6576828B2 (en) | Automatic composition apparatus and method using rhythm pattern characteristics database and setting composition conditions section by section | |
US5052267A (en) | Apparatus for producing a chord progression by connecting chord patterns | |
US6395970B2 (en) | Automatic music composing apparatus that composes melody reflecting motif | |
JP3541706B2 (en) | Automatic composer and storage medium | |
JP3533975B2 (en) | Automatic composer and storage medium | |
JP3684892B2 (en) | Chord presentation device and storage medium | |
KR100583371B1 (en) | Musical tone synthesizing apparatus, musical tone synthesizing method and storage medium | |
JPH11344979A (en) | Melody generator and record medium | |
JP2000163065A (en) | Code advance generating device and storage medium | |
JP3637952B2 (en) | Chord progression search device and storage medium | |
JP3835456B2 (en) | Automatic composer and storage medium | |
JP3266007B2 (en) | Performance data converter | |
JP3722035B2 (en) | Performance signal processing apparatus, method and program, and storage medium | |
JPH10105173A (en) | Performance data converter | |
JP4123242B2 (en) | Performance signal processing apparatus and program | |
JP2000221969A (en) | Musical composition generating device and recording medium for recording musical composition generating program | |
JPH11161267A (en) | Automatic music composing device, and recording medium | |
JP3225935B2 (en) | Automatic fingering device and storage medium | |
JPH0627958A (en) | Electronic musical instrument | |
JP2004013170A (en) | Automatic composition system, automatic composition method, and storage medium | |
JP3800947B2 (en) | Performance data processing apparatus and method, and storage medium | |
Bel | A flexible environment for music composition in non-European contexts Journées d'Informatique Musicale 1996 Caen (France) | |
JPH0954579A (en) | Melody conversion device and its method | |
JP3823723B2 (en) | Available note scale determination device and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040730 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040817 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041018 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20041130 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041213 |
|
R150 | Certificate of patent (=grant) or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313532 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090107 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100107 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (prs date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110107 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |