JP2005141124A - Accompaniment series generating program and accompaniment series generator - Google Patents

Accompaniment series generating program and accompaniment series generator Download PDF

Info

Publication number
JP2005141124A
JP2005141124A JP2003379480A JP2003379480A JP2005141124A JP 2005141124 A JP2005141124 A JP 2005141124A JP 2003379480 A JP2003379480 A JP 2003379480A JP 2003379480 A JP2003379480 A JP 2003379480A JP 2005141124 A JP2005141124 A JP 2005141124A
Authority
JP
Japan
Prior art keywords
bass
string
sound
accompaniment
series
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2003379480A
Other languages
Japanese (ja)
Other versions
JP4186797B2 (en
Inventor
Tomoyuki Funaki
知之 船木
Kanami Hoshika
佳奈美 星加
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.)
Yamaha Corp
Original Assignee
Yamaha Corp
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 Yamaha Corp filed Critical Yamaha Corp
Priority to JP2003379480A priority Critical patent/JP4186797B2/en
Publication of JP2005141124A publication Critical patent/JP2005141124A/en
Application granted granted Critical
Publication of JP4186797B2 publication Critical patent/JP4186797B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To generate accompaniment series having natural feeling for human auditory sense based on a code data column. <P>SOLUTION: Based on the code data column that represents a series of codes, a reference pitch (a fundamental note or a base note for the case of an on-base code) related to the code for every code data is extracted(S14). A series of reference pitches being extracted is divided into a plurality of code advancing segments in which each reference pitch successively advances with a series stream (S16). Then, base series data representing accompaniment series are generated based on the reference pitch for every divided code advancing segment (S18). During the generation of the base series data, consideration is given if the data include all base sound pitches, which are included in the base series, in a prescribed base pitch extent and if they have compatibility with the melody series corresponding to the code data column or the like. <P>COPYRIGHT: (C)2005,JPO&NCIPI

Description

本発明は、一連のコードを表すコードデータ列に基づいて伴奏音列を生成する伴奏音列生成プログラムおよび伴奏音列生成装置に関する。   The present invention relates to an accompaniment sound string generation program and an accompaniment sound string generation device for generating an accompaniment sound string based on a code data string representing a series of chords.

従来から、例えば下記特許文献1に示されているように、一連のコードを表すコードデータ列と、音高および音符長を表す伴奏パターンとを用いて、伴奏音列を自動的に生成する伴奏音列生成装置は知られている。
特開2002−268638号公報
Conventionally, for example, as shown in Patent Document 1 below, an accompaniment that automatically generates an accompaniment tone sequence using a chord data sequence representing a series of chords and an accompaniment pattern representing pitches and note lengths. A sound string generator is known.
JP 2002-268638 A

コードは、楽曲の流れに対応するとともに、所定のコード進行区間ごとに滑らかな一連の流れをもって進行するものである。しかし、上記従来の装置においては、コード進行の状況が考慮されておらず、すなわちコード進行区間が何ら考慮されておらず、一連のコードデータ列に従って一律に伴奏音列が生成されるので、生成される伴奏音列が聴感上不自然なものとなることがある。   The chords correspond to the flow of music and progress with a smooth series of flows for each predetermined chord progression section. However, in the above-mentioned conventional apparatus, the chord progression situation is not taken into account, that is, the chord progression section is not taken into consideration at all, and the accompaniment tone string is generated uniformly according to a series of chord data strings. The accompaniment sound sequence may be unnatural in terms of hearing.

本発明は、上記問題に対処するためになされたもので、その目的は、一連のコードデータ列に基づいて聴感上自然な流れを有する伴奏音列を生成する伴奏音列生成プログラムおよび伴奏音列生成装置を提供することにある。   The present invention has been made to address the above-described problems, and an object of the present invention is to provide an accompaniment sound sequence generation program and an accompaniment sound sequence for generating an accompaniment sound sequence having a natural flow based on a series of chord data sequences. It is to provide a generation device.

上記目的を達成するために、本発明の特徴は、一連のコードを表すコードデータ列を供給するコードデータ供給ステップと、前記供給されたコードデータごとにコードに関係した所定の基準音高を抽出する基準音高抽出ステップと、前記抽出された一連の基準音高を各基準音高が一連の流れをもって順次進行する複数のコード進行区間に区切って一連のコード進行区間を生成する区間生成ステップと、前記コード進行区間ごとに基準音高に基づいて伴奏音列を表す伴奏音列データを生成する伴奏音列生成ステップとを備えた伴奏音列生成プログラムにある。   In order to achieve the above object, a feature of the present invention is that a code data supplying step for supplying a code data string representing a series of chords and extracting a predetermined reference pitch related to the code for each of the supplied code data A reference pitch extraction step, and a section generation step of generating a series of chord progression sections by dividing the extracted series of reference pitches into a plurality of chord progression sections in which each reference pitch sequentially proceeds in a series of flows. And an accompaniment sound sequence generation program including an accompaniment sound sequence generation step for generating accompaniment sound sequence data representing an accompaniment sound sequence based on a reference pitch for each chord progression section.

この場合、基準音高抽出手段は、例えばコード構成音を基準音高として抽出する。特に、コード構成音のうちで、根音(またはオンベースコードの場合にはベース音)を抽出するようにするとよい。区間生成ステップは、例えば、抽出された複数の基準音高が所定の音程以内で変化している範囲をコード進行区間とすることができる。   In this case, the reference pitch extraction means extracts, for example, a chord constituent sound as a reference pitch. In particular, it is preferable to extract a root tone (or a bass tone in the case of an on-bass chord) from chord constituent sounds. In the section generation step, for example, a range in which a plurality of extracted reference pitches change within a predetermined pitch can be set as a chord progression section.

前記のように構成した本発明の特徴においては、抽出された一連の基準音高は、各基準音高が一連の流れをもって順次進行する複数のコード進行区間に区切られ、同区切られたコード進行区間ごとに基準音高に基づいて伴奏音列が生成される。これにより、コード進行の状況が考慮され、聴感上自然に変化する伴奏音列が生成される。   In the feature of the present invention configured as described above, the extracted series of reference pitches is divided into a plurality of chord progression sections in which each reference pitch sequentially advances in a series of flows, An accompaniment sound string is generated for each section based on the reference pitch. Thereby, the state of chord progression is taken into consideration, and an accompaniment sound string that naturally changes in perception is generated.

また、本発明の他の特徴は、伴奏音列生成ステップが、基準音高列に基づいて生成される伴奏音列の中の所定音域に入らない伴奏音の音高をシフトして所定音域に入るように修正する音高修正ステップを含むようにしたことにある。この場合、所定の音域から外れた伴奏音に関しては、例えば、オクターブシフトして所定の音域に納まるようにするとよい。これによれば、全ての伴奏音が必ず所定音域に入るようになるので、他の演奏音との重なりを簡単に回避できるようになる。   Another feature of the present invention is that the accompaniment sound sequence generating step shifts the pitch of the accompaniment sound that does not fall within the predetermined range in the accompaniment sound sequence generated based on the reference pitch sequence, and puts it in the predetermined range. A pitch correction step for correcting the pitch to enter is included. In this case, for an accompaniment sound that is out of a predetermined range, for example, an octave shift may be performed so as to fall within the predetermined range. According to this, since all the accompaniment sounds always fall within the predetermined range, it is possible to easily avoid overlapping with other performance sounds.

また、本発明の他の特徴は、伴奏音列生成ステップが、複数の伴奏音列候補を生成する伴奏音列候補生成ステップと、複数の伴奏音列候補を構成する伴奏音の音高に応じまたはコードデータ列に対応したメロディ音列に応じて、複数の伴奏音列候補の中から1つの伴奏音列を選択する伴奏音列選択ステップとを含むようにしたことにある。   Another feature of the present invention is that the accompaniment sound sequence generation step is performed according to the accompaniment sound sequence candidate generation step of generating a plurality of accompaniment sound sequence candidates and the pitches of the accompaniment sounds constituting the plurality of accompaniment sound sequence candidates. Alternatively, an accompaniment sound string selection step of selecting one accompaniment sound string from a plurality of accompaniment sound string candidates according to a melody sound string corresponding to the chord data string is included.

この場合、伴奏音列選択ステップは、例えば、伴奏音列候補を構成する複数の伴奏音が所定音域に入る伴奏音列候補を選択したり、所定音域から外れる伴奏音が最も遅く現れる伴奏音列候補または所定の音域から外れる伴奏音が最も少ない伴奏音列候補を選択したりするとよい。また、前記所定音域よりも狭くかつ伴奏音列にとって最適な音域を設定し、この最適な音域に属する伴奏音の頻度が高い伴奏音列候補を選択するようにしてもよい。さらに、コードデータ列に対応したメロディ音列と重ならない伴奏音列候補を選択したり、またメロディ音列に重ならない伴奏音列候補が複数存在する場合にはメロディ音列に近い伴奏音列候補を選択したりするとよい。   In this case, the accompaniment sound sequence selection step includes, for example, selecting an accompaniment sound sequence candidate in which a plurality of accompaniment sounds constituting the accompaniment sound sequence candidate falls within a predetermined range, or an accompaniment sound sequence in which an accompaniment sound outside the predetermined range appears most slowly It is preferable to select a candidate or an accompaniment sound string candidate that has the fewest accompaniment sounds out of a predetermined range. Further, it is also possible to set an optimum range for the accompaniment sound sequence that is narrower than the predetermined range, and to select an accompaniment sequence candidate that has a high frequency of accompaniment sounds that belong to this optimum range. Furthermore, if an accompaniment sound string candidate that does not overlap the melody sound string corresponding to the chord data string is selected, or if there are multiple accompaniment sound string candidates that do not overlap the melody sound string, an accompaniment sound string candidate close to the melody sound string It is good to select.

このような本発明の他の特徴によれば、伴奏音として適した伴奏音列が選択され、またはメロディ音列に適合した伴奏音列が選択されるので、聴感上より自然に変化する伴奏音列が生成される。   According to such another feature of the present invention, an accompaniment sound string suitable as an accompaniment sound is selected, or an accompaniment sound string suitable for a melody sound string is selected. A column is generated.

本発明は、コンピュータプログラムの発明として構成しかつ実施することができるのみならず、装置および方法の発明として構成しかつ実施することもできる。   The present invention can be configured and implemented not only as a computer program invention but also as an apparatus and method invention.

以下、本発明の一実施形態に係る伴奏音列生成プログラムおよび伴奏音列生成装置の適用される電子音楽装置について説明する。図1は、この電子音楽装置を概略的に示すブロック図である。この電子音楽装置としては、鍵盤型電子楽器、非鍵盤型電子楽器(タッチプレート、押しボタン、弦などを演奏操作子として有する電子楽器)、自動演奏装置(シーケンサ装置)、自動演奏機能を有するパーソナルコンピュータなどが考えられる。   Hereinafter, an electronic music apparatus to which an accompaniment sound string generation program and an accompaniment sound string generation device according to an embodiment of the present invention are applied will be described. FIG. 1 is a block diagram schematically showing this electronic music apparatus. The electronic music apparatus includes a keyboard-type electronic musical instrument, a non-keyboard-type electronic musical instrument (an electronic musical instrument having a touch plate, a push button, a string, etc. as a performance operator), an automatic performance apparatus (sequencer apparatus), and a personal having an automatic performance function. A computer can be considered.

この電子音楽装置は、入力操作子群11、表示器12および楽音信号発生回路13を有する。入力操作子群11は、この電子音楽装置の動作を指示するための複数の操作子からなり、これらの複数の操作子の操作はバス20に接続された検出回路14によって検出される。なお、これらの複数の操作子は、スイッチ操作子、ボリューム操作子、マウスなどを含んでおり、鍵盤型電子楽器においては白鍵および黒鍵も含む。表示器12は、液晶ディスプレイ、CRTなどで構成され、文字、数字、図形などを表示する。この表示器12の表示態様は、バス20に接続された表示制御回路15によって制御される。   This electronic music apparatus has an input operator group 11, a display 12, and a musical tone signal generation circuit 13. The input operator group 11 includes a plurality of operators for instructing the operation of the electronic music apparatus, and the operations of the plurality of operators are detected by a detection circuit 14 connected to the bus 20. The plurality of operators include a switch operator, a volume operator, a mouse, and the like. In a keyboard type electronic musical instrument, a white key and a black key are also included. The display 12 includes a liquid crystal display, a CRT, and the like, and displays characters, numbers, figures, and the like. The display mode of the display 12 is controlled by a display control circuit 15 connected to the bus 20.

楽音信号発生回路13は、バス20に接続されていて後述するCPU31の制御のもとに供給される演奏データに基づいて楽音信号を形成するとともに、同形成された楽音信号に効果を付与してサウンドシステム16に出力する。サウンドシステム16は、スピーカ、アンプなどを含んでいて、楽音信号発生回路13からの楽音信号に対応した楽音を発音する。   The musical tone signal generation circuit 13 is connected to the bus 20 and forms a musical tone signal based on performance data supplied under the control of a CPU 31 to be described later, and gives an effect to the musical tone signal thus formed. Output to the sound system 16. The sound system 16 includes a speaker, an amplifier, and the like, and generates a tone corresponding to the tone signal from the tone signal generation circuit 13.

また、この電子音楽装置は、バス20にそれぞれ接続されていてマイクロコンピュータ本体部を構成するCPU31、タイマ32、ROM33、RAM34を備えているとともに、外部記憶装置35および通信インターフェース回路36も備えている。外部記憶装置35は、この電子音楽装置に予め組み込まれているハードディスクHD、同電子音楽装置に装着可能なコンパクトディスクCD、フレキシブルディスクFDなどの種々の記録媒体と、同各記録媒体に対するドライブユニットを含むものであり、大量のデータ及びプログラムを記憶及び読み出し可能にしている。本実施形態の場合、ハードディスクHDには、図2の伴奏データ生成プログラム(図3のコード進行区間処理ルーチンを含む)を含む各種プログラムに加え、複数の曲データが記憶されている。これらのプログラムおよび複数の曲データは、予めハードディスクHDに記憶されていたり、コンパクトディスクCD、フレキシブルディスクFDなどからハードディスクHDに供給されたり、後述する外部機器41又は通信ネットワーク42を介した外部からハードディスクHDに供給されるものである。   The electronic music apparatus includes a CPU 31, a timer 32, a ROM 33, and a RAM 34 that are connected to the bus 20 and constitute a microcomputer main body, and also includes an external storage device 35 and a communication interface circuit 36. . The external storage device 35 includes various recording media such as a hard disk HD preinstalled in the electronic music device, a compact disc CD that can be mounted on the electronic music device, and a flexible disk FD, and a drive unit for each of the recording media. It is possible to store and read a large amount of data and programs. In the present embodiment, the hard disk HD stores a plurality of song data in addition to various programs including the accompaniment data generation program of FIG. 2 (including the chord progression section processing routine of FIG. 3). These programs and a plurality of song data are stored in advance on the hard disk HD, supplied to the hard disk HD from a compact disk CD, flexible disk FD, etc., or externally via an external device 41 or a communication network 42 to be described later. It is supplied to HD.

複数の曲データは、楽曲をそれぞれ自動演奏させることできるものであり、各曲データは、楽曲の曲名と共に、少なくともメロディデータ列およびコードデータ列を含む。メロディデータ列は、メロディ音の音高および符長をそれぞれ表す複数の音符データを楽曲の進行(すなわち、時間経過)に従って配列したものである。コードデータ列は、一連のコードを表すコードデータを楽曲の進行(すなわち、時間経過)に従って、すなわちメロディデータ列に対応させて配列したものである。コードデータ列は、例えばF#,E,F#/Eのようなコード名およびコード長(符長)を表している。なお、F#/Eは、E音をベース音とするオンベースコードを表している。   The plurality of pieces of music data can automatically play music pieces, and each piece of music data includes at least a melody data string and a chord data series together with the music name of the music piece. The melody data string is a sequence of a plurality of note data representing pitches and note lengths of melody sounds according to the progression of music (that is, the passage of time). The chord data string is obtained by arranging chord data representing a series of chords in accordance with the progression of music (that is, the passage of time), that is, corresponding to the melody data string. The code data string represents a code name such as F #, E, F # / E and a code length (a code length). Note that F # / E represents an on-base code having the E sound as a base sound.

次に、上記のように構成した実施形態の動作を説明する。まず、ユーザは、入力操作子群11を操作して図2の伴奏データ生成プログラムをCPU31に実行させる。このプログラムの実行は、図2のステップS10にて開始され、ステップS12にてユーザ設定処理を実行する。ユーザ設定処理においては、曲データをユーザに選択させるとともに、必要に応じてベース音域、ベース音列選択条件などをユーザに設定させる。曲データの選択においては、ユーザは、表示器12に表示される複数の曲名からなる曲名リストを見ながら入力操作子群11を操作して、外部記憶装置35内に記憶されている複数組の曲データの中から1つの曲データを指定する。これにより、指定された1つの曲データは、外部記憶装置35から読み出されて、RAM34に書き込まれる。   Next, the operation of the embodiment configured as described above will be described. First, the user operates the input operator group 11 to cause the CPU 31 to execute the accompaniment data generation program of FIG. The execution of this program is started in step S10 of FIG. 2, and a user setting process is executed in step S12. In the user setting process, the user is allowed to select music data, and the user is allowed to set the bass range, the bass string selection condition, and the like as necessary. In the selection of song data, the user operates the input operator group 11 while looking at a song name list composed of a plurality of song names displayed on the display device 12, and sets a plurality of sets stored in the external storage device 35. One piece of music data is designated from the music data. As a result, one designated piece of music data is read from the external storage device 35 and written to the RAM 34.

また、ユーザが所望とする曲データが外部記憶装置35に記憶されていない場合には、通信インターフェース回路36を介して他の曲データを記憶した外部機器41から所望の曲データを読み込み、または通信インターフェース回路36および通信ネットワーク42を介して外部から所望の曲データを読み込んで、RAM34に書き込んでもよい。また、入力操作子群11または外部機器41から実際の演奏による演奏データを曲データとしてRAM34に書き込むようにしてもよい。   If the song data desired by the user is not stored in the external storage device 35, the desired song data is read from the external device 41 storing other song data or communicated via the communication interface circuit 36. Desired music data may be read from the outside via the interface circuit 36 and the communication network 42 and written to the RAM 34. Further, performance data based on actual performance may be written into the RAM 34 as music data from the input operator group 11 or the external device 41.

また、ベース音域の設定においては、ユーザは、入力操作子群11を用いて最終的に決定されるベース音列の許容音域の下限音高および上限音高を入力する。また、ベース音列選択条件の設定においては、ユーザは、入力操作子群11を用いて詳しくは後述する最適なベース音域の上限音高および下限音高を入力する。この場合、ベース音域としては、例えば、下限音高A#0および上限音高A2により規定される2オクターブの範囲程度が妥当である。また、最適ベース音域としては、下限音高F1および上限音高E2により規定される1オクターブの範囲程度が妥当である。なお、ユーザがこれらのベース音域およびベース音列選択条件を入力しなかった場合には、予め決められたデフォルト値を採用するようにしてもよい。さらに、このベース音域およびベース音列選択条件の入力処理を省略して、予め決められたデフォルト値が常に採用されるようにしてもよい。   In setting the bass range, the user inputs the lower limit pitch and the upper limit pitch of the allowable range of the bass sequence that is finally determined using the input operator group 11. In setting the bass tone string selection condition, the user inputs an upper limit pitch and a lower limit pitch of an optimum bass range, which will be described in detail later, using the input operator group 11. In this case, as the bass range, for example, a range of about 2 octaves defined by the lower limit pitch A # 0 and the upper limit pitch A2 is appropriate. As the optimum bass range, a range of one octave defined by the lower limit pitch F1 and the upper limit pitch E2 is appropriate. If the user does not input these bass range and bass tone string selection conditions, a predetermined default value may be adopted. Further, the input processing of the bass sound range and the bass sound string selection condition may be omitted, and a predetermined default value may be always adopted.

前記ステップS12の処理後、ステップS14にて、前記RAM34に書き込んだ一連のコードを表すコードデータ列を用いて、各コードの根音からそれぞれなる基準音高列を表す基準音高列データを生成する。ただし、オンベース音が指定されているオンベースコード(例えば、F#/E)においては、オンベース音が基準音高(例えば、F#/Eの場合にはE音)となる。具体例をあげて説明すると、コード進行が、例えば、F#6,E,F#/E,D#m7,G#m7,C#m7,D#sus4,D#・・であったとすると、基準音高列は、F#,E,E,D#,G#,C#,D#,D#・・となる。ここでは、簡素化のためにオクターブ情報を省略して示している。   After the process of step S12, in step S14, using the chord data string representing a series of chords written in the RAM 34, reference pitch string data representing the reference pitch string composed of the root sounds of each chord is generated. To do. However, in an on-base code (for example, F # / E) in which an on-base sound is designated, the on-base sound has a reference pitch (for example, an E sound in the case of F # / E). For example, if the chord progression is F # 6, E, F # / E, D # m7, G # m7, C # m7, D # sus4, D # ... The reference pitch columns are F #, E, E, D #, G #, C #, D #, D #,. Here, the octave information is omitted for simplicity.

次に、ステップS16にて、基準音高データ列を用いて基準音高が滑らかに推移している区間をコード進行区間として定義して、コード区間ごとのコードデータ列を生成する。この場合、まず、基準音高列において、前の音符との音高差を半音間隔で表す音高差を計算する。ただし、前の基準音高からの音高差を1オクターブ以内とするとともに、上下2方向のうちで小さい方を採用し、上方向を正で表すとともに下方向を負で表す。ただし、先頭の基準音高に関する音高差は計算しない。この場合、例えば、基準音高列がF#,E,E,D#,G#,C#,D#,D#・・であれば、各基準音に関する音高差を括弧内に表すと、F#,E(−2),E(0),D#(−1),G#(5),C#(−7),D#(2),D#(0)・・となる。次に、滑らかに変化している範囲をコード進行区間とするために、音高差が所定値以内(本実施形態では、絶対値で「2」以下)である基準音高列をコード進行区間とすると、前記例では、次の第1〜3コード進行区間が定義される。第1コード進行区間のコードデータ列は、F#,E(−2),E(0),D#(−1)となり、第2コード進行区間のコードデータ列はG#となり、第3コード進行区間のコードデータ列はC#,D#(2),D#(0)・・となる。ただし、各コード進行区間においては、先頭の基準音高に関しては前の基準音高とは音高差に関して無関係であるので、音高差の表示を無くして示している。   Next, in step S16, a section in which the reference pitch is smoothly transitioned using the reference pitch data string is defined as a chord progression section, and a chord data string for each chord section is generated. In this case, first, in the reference pitch sequence, a pitch difference representing a pitch difference from the previous note by a semitone interval is calculated. However, the pitch difference from the previous reference pitch is within one octave, and the smaller of the two upper and lower directions is adopted, with the upper direction being positive and the lower direction being negative. However, the pitch difference for the first reference pitch is not calculated. In this case, for example, if the reference pitch sequence is F #, E, E, D #, G #, C #, D #, D #,... , F #, E (-2), E (0), D # (-1), G # (5), C # (-7), D # (2), D # (0). . Next, in order to set a smoothly changing range as a chord progression section, a reference pitch string whose pitch difference is within a predetermined value (in this embodiment, an absolute value of “2” or less) is a chord progression section. Then, in the above example, the following first to third chord progression sections are defined. The code data string in the first chord progression section is F #, E (-2), E (0), D # (-1), the code data string in the second chord progression section is G #, and the third code The code data string in the progress section is C #, D # (2), D # (0),. However, in each chord progression section, the leading reference pitch is irrelevant to the previous reference pitch with respect to the pitch difference, so that the pitch difference is not shown.

次に、ベース音列を決定するためのステップS18のコード進行区間処理ルーチンを実行する。このコード進行区間処理ルーチンは各コード進行区間ごとに実行されるもので、図3に詳細に示されているように、その実行がステップS30にて開始される。このコード進行区間処理ルーチンの実行開始後、ステップS32にて、1つのコード進行区間に対し、同コード進行区間に含まれる基準音高データ列を用いて複数のベース音列候補を生成する。このベース音列候補の生成においては、ベース音域(本実施形態では、A#0〜A2)内に属し、かつ前記コード進行区間の基準音高列の先頭の音名音を先頭ベース音として定め、その後に前記ステップS14で生成したコードデータ列中の音高差ずつ変化する音高を順次後続のベース音とすることにより、複数のベース音列候補を生成する。この場合、ベース音域は2オクターブ分であるので、2つの先頭ベース音が定められ、2つのベース音列が生成される。このことを前記第1コード進行区間のコードデータ列F#,E(−2),E(0),D#(−1)を上げて説明すると、第1のベース音列はF#1,E1,E1,D#1となり、第2ベース音列はF#2,E2,E2,D#2となる。   Next, the chord progression section processing routine of step S18 for determining the bass tone string is executed. This chord progression section processing routine is executed for each chord progression section, and its execution is started in step S30 as shown in detail in FIG. After the execution of this chord progression section processing routine is started, a plurality of bass tone string candidates are generated for one chord progression section using the reference pitch data string included in the chord progression section in step S32. In the generation of this bass tone string candidate, the first pitch note belonging to the base pitch range (A # 0 to A2 in this embodiment) and in the reference pitch sequence of the chord progression section is determined as the leading bass note. Then, a plurality of bass tone string candidates are generated by successively setting the pitches that change in pitch differences in the chord data string generated in step S14 as subsequent bass sounds. In this case, since the bass range is for two octaves, two leading bass sounds are determined, and two bass tone strings are generated. This will be explained by increasing the chord data strings F #, E (-2), E (0), D # (-1) in the first chord progression section. The first bass tone string is F # 1, E1, E1, and D # 1, and the second bass sound string is F # 2, E2, E2, and D # 2.

次に、ステップS34にて前記生成された第1および第2ベース音列中の全てのベース音がベース音域(本実施形態では、A#0〜A2)に入るかを調べるとともに、ステップS36にて前記調べた結果に基づいてベース音域に入るベース音列の数を判定する。この場合、全てのベース音がベース音域に入るベース音列が1つのみである場合、全てのベース音がベース音域に入るベース音列が無い場合、および全てのベース音がベース音域に入るベース音列が複数存在する場合の3ケースがある。これらの場合に関する説明に関し、上述したベース音列の例では特徴が現れないので、他のベース音列の例を上げながら説明する。   Next, in step S34, it is checked whether all the bass sounds in the generated first and second bass tone strings are in the bass range (A # 0 to A2 in this embodiment), and the process goes to step S36. Then, based on the result of the examination, the number of bass tone strings that fall within the bass tone range is determined. In this case, there is only one bass tone string in which all the bass sounds fall within the bass range, no bass tone string where all the bass sounds fall within the bass range, and a bass where all the bass sounds fall within the bass range. There are three cases where there are multiple sound strings. Regarding the explanation regarding these cases, since no characteristic appears in the above-described example of the bass sound string, description will be given while giving examples of other bass sound strings.

まず、全てのベース音がベース音域に入るベース音列が1つのみである場合について説明する。この場合、ステップS36の判定処理によってステップS38に進み、ステップS38にて全てのベース音がベース音域に入るベース音列が決定ベース音列とする。具体的には、1つのコード進行区間の基準音列がE,F#(2),G#(2),A#(2),G#(−2)であると、第1ベース音列はE1,F#1,G#1,A#1,G#1となり、第2ベース列はE2,F#2,G#2,A#2,G#2となる。この場合、第1ベース音列の全てのベース音はベース音域に入るが、第2ベース音列中のベース音A#2はベース音域を越える。したがって、ステップS36,S38の処理により、第1のベース音列を最終的なベース音列する。   First, a case where there is only one bass sound string in which all bass sounds fall within the bass range will be described. In this case, the process proceeds to step S38 by the determination process in step S36, and the bass sound string in which all the bass sounds enter the bass sound range is set as the determined bass sound string in step S38. Specifically, if the reference tone string of one chord progression section is E, F # (2), G # (2), A # (2), G # (-2), the first bass string is E1. , F # 1, G # 1, A # 1, and G # 1, and the second base column is E2, F # 2, G # 2, A # 2, and G # 2. In this case, all the bass sounds in the first bass sound string are in the bass sound range, but the bass sound A # 2 in the second bass sound string exceeds the bass sound range. Therefore, the first bass tone string is made the final bass tone string by the processing of steps S36 and S38.

次に、全てのベース音がベース音域に入るベース音列が無い場合について説明する。この場合、ステップS36の判定処理により、ステップS40,S42の処理を実行する。ステップS40においては、ベース音域から外れるベース音が先頭から最も遅く現れるベース音列を選択する。なお、このステップS40の処理に代えて、ベース音域を外れたベース音の数が最も少ないベース音列を選択するようにしてもよい。そして、ステップS42において、ベース音域から外れたベース音をオクターブシフトして、全てのベース音がベース音域に入るようにして、このオクターブシフトしたベース音を含むベース音列を最終的な決定ベース音列とする。   Next, a case where there is no bass tone string in which all bass sounds fall within the bass range will be described. In this case, the processes of steps S40 and S42 are executed by the determination process of step S36. In step S40, the bass sound string in which the bass sound out of the bass sound range appears most slowly from the beginning is selected. Note that instead of the processing in step S40, a bass sound string having the smallest number of bass sounds outside the bass sound range may be selected. Then, in step S42, the bass sound that is out of the bass range is octave shifted so that all bass sounds are in the bass range, and the bass sequence including the octave shifted bass tone is determined as the final determined bass tone. A column.

具体的には、1つのコード進行区間の基準音列がG,A(2),B(2),A(−2),G(−2),F(−2),E(−1),D(−2),C(−2),B(11),A(−2),G(−2)であると、第1ベース音列はG1,A1,B1,A1,G1,F1,E1,D1,C1,B0,A0,G0となり、第2ベース音列は、G2,A2,B2,A2,G2,F2,E2,D2,C2,B1,A1,G1となる。この場合、第1ベース音列中のベース音A0,G0はベース音域を越え、また第2ベース音列中のベース音B2もベース音域を越える。第1ベース音列中のベース音A0は11番目のベース音であり、また第2ベース音列中のベース音B2は3番目のベース音であるので、ステップS40の処理により、第1ベース音列が最終的なベース音列として決定される。そして、ステップS42の処理により、この決定された第1ベース音列中、ベース音域を超えるベース音(前記例では、ベース音A0,G0)がオクターブシフトされて、最終的な決定ベース音列は、G1,A1,B1,A1,G1,F1,E1,D1,C1,B0,A1,G1となる。   Specifically, the reference tone string of one chord progression section is G, A (2), B (2), A (-2), G (-2), F (-2), E (-1). , D (−2), C (−2), B (11), A (−2), and G (−2), the first bass sound string is G1, A1, B1, A1, G1, F1. , E1, D1, C1, B0, A0, G0, and the second bass string is G2, A2, B2, A2, G2, F2, E2, D2, C2, B1, A1, G1. In this case, the bass sounds A0 and G0 in the first bass tone string exceed the bass range, and the bass sound B2 in the second bass tone string also exceeds the bass range. Since the bass sound A0 in the first bass sound string is the eleventh bass sound and the bass sound B2 in the second bass sound string is the third bass sound, the first bass sound is obtained by the process of step S40. The sequence is determined as the final bass sequence. Then, by the processing of step S42, the bass sound exceeding the bass range (basic tone A0, G0 in the above example) is shifted octave in the determined first bass tone string, and the final determined bass tone string is , G1, A1, B1, A1, G1, F1, E1, D1, C1, B0, A1, and G1.

次に、全てのベース音がベース音域に入るベース音列が複数存在する場合について説明する。この場合、ステップS36の判定処理により、ステップS44以降の処理を実行してメロディ音列と適合するベース音列を決定ベース音列とする。具体例を上げて説明すると、1つのコード進行区間の基準音列が、F#,G#(2),A(1),B(2),C#(2),B(−2),A(−2),G#(−1),F#(−2),G#(2),A(1) ,B(2)であると、第1ベース音列はF#1,G#1,A1,B1,C#2,B1,A1,G#1,F#1,G#1,A1 ,B1となり、第2ベース音列はF#2,G#2,A2,B2,C#3,B2,A2,G#2,F#2,G#2,A2 ,B2となる。この場合、両ベース音列の全てのベース音はベース音域に入るので、前記ステップS36の判定処理により、ステップS44以降の処理が実行される。   Next, a case where there are a plurality of bass sound strings in which all bass sounds fall within the bass range will be described. In this case, by the determination process of step S36, the process after step S44 is executed and the bass sound string that matches the melody sound string is set as the determined bass sound string. To explain with a specific example, the reference tone string of one chord progression section is F #, G # (2), A (1), B (2), C # (2), B (-2), If A (-2), G # (-1), F # (-2), G # (2), A (1), and B (2), the first bass tone string is F # 1, G # 1, A1, B1, C # 2, B1, A1, G # 1, F # 1, G # 1, A1, B1, and the second bass sound sequence is F # 2, G # 2, A2, B2, C # 3, B2, A2, G # 2, F # 2, G # 2, A2, and B2. In this case, since all the bass sounds of both bass sound strings are in the bass range, the processing from step S44 onward is executed by the determination processing in step S36.

ステップS44においては、前記RAM34に転送記憶したメロディデータ列を用い、1つのコードの長さ(符長)に対応したメロディ音列中の最低音をコードごとに検出する。次に、ステップS46にて、メロディ音列の最低音を越えるベース音を含むベース音列の数、すなわちメロディ音列と重ならないベース音列の数を調べる。この場合、メロディ音列と重ならないベース音列が1つのみである場合、メロディ音列と重ならないベース音列が無い場合、およびメロディ音列と重ならないベース音列が複数存在する場合の3ケースがある。   In step S44, using the melody data string transferred and stored in the RAM 34, the lowest tone in the melody tone string corresponding to one chord length (note length) is detected for each chord. Next, in step S46, the number of bass sound strings including a bass sound exceeding the lowest sound of the melody sound string, that is, the number of bass sound strings not overlapping the melody sound string is checked. In this case, there are three cases where there is only one bass sound string that does not overlap with the melody sound string, there is no bass sound string that does not overlap with the melody sound string, and there are a plurality of bass sound strings that do not overlap with the melody sound string. There is a case.

まず、メロディ音列と重ならないベース音列が1つのみである場合について説明する。この場合、ステップS48の処理により、ステップS50にてメロディ音列と重ならない前記1つのベース音列を最終的な決定ベース音列とする。   First, a case where there is only one bass tone string that does not overlap with the melody tone string will be described. In this case, by the processing in step S48, the one bass sound string that does not overlap the melody sound string in step S50 is set as a final determined bass sound string.

次に、メロディ音列と重ならないベース音列が無い場合について説明する。この場合、ステップS48の判定処理により、ステップS52,S54の処理を実行する。ステップS52においては、各ベース音列について、ベース音が最適ベース音域に入るベース音の数を調べる。ステップS54においては、最適ベース音域に入るベース音の数が最大であるベース音列を最終的な決定ベース音列とする。この具体例を、最適ベース音域をF1〜E2とした場合を例にして説明する。例えば、1つのコード進行区間の基準音列が、C#,D#(2),E(1),F#(2),G#(2),F#(−2),E(−2),D#(−1),C#(−2),D#(2),E(1) ,F#(2)であると、第1ベース音列はC#1,D#1,E1,F#1,G#1,F#1,E1,D#1,C#1,D#1,E1,F#1となり、第2ベース音列はC#2,D#2,E2,F#2,G#2,F#2,E2,D#2,C#2,D#2,E2,F#2となる。ここで、第1ベース音列中で最適ベース音域に属するベース音はF#1,E1,D#1,F#1の4つであり、また第2ベース音列中で最適ベース音域に属するベース音はC#2,D#2,E2,E2,D#2,C#2,D#2,E2の8つである。したがって、この場合には、第2ベース音列が最終的なベース音列として決定される。   Next, a case where there is no bass tone sequence that does not overlap with the melody tone sequence will be described. In this case, the processes of steps S52 and S54 are executed by the determination process of step S48. In step S52, the number of bass sounds in which the bass sound falls within the optimum bass range is examined for each bass tone string. In step S54, the bass sound string having the maximum number of bass sounds falling within the optimum bass sound range is set as the final determined bass sound string. This specific example will be described with an example in which the optimum bass range is F1 to E2. For example, the reference tone string of one chord progression section is C #, D # (2), E (1), F # (2), G # (2), F # (-2), E (-2 ), D # (-1), C # (-2), D # (2), E (1), F # (2), the first bass sound sequence is C # 1, D # 1, E1, F # 1, G # 1, F # 1, E1, D # 1, C # 1, D # 1, E1, F # 1, and the second bass sound sequence is C # 2, D # 2, E2 , F # 2, G # 2, F # 2, E2, D # 2, C # 2, D # 2, E2, and F # 2. Here, there are four bass sounds F # 1, E1, D # 1, and F # 1 belonging to the optimum bass range in the first bass tone sequence, and belong to the optimum bass range in the second bass tone sequence. There are eight bass sounds, C # 2, D # 2, E2, E2, D # 2, C # 2, D # 2, and E2. Therefore, in this case, the second bass sound string is determined as the final bass sound string.

なお、これに限らず、各ベース音(各コード)の長さ(符長)をも考慮して、最適ベース音域に属するベース音の長さの合計が最大であるベース音列を最終的なベース音列として決定してもよい。1つのコード進行区間に属するベース音の数をも考慮し、同1つのコード進行区間に属する全てのベース音の数または合計長さに対する最適ベース音に属するベース音の数または合計長さの比率が最も大きなベース音列を最終的なベース音列として決定するようにしてもよい。   Not only this, but also taking into account the length (note length) of each bass sound (each chord), the bass sound string having the maximum total length of the bass sounds belonging to the optimum bass range is finalized. It may be determined as a bass sound string. Considering the number of bass sounds belonging to one chord progression section, the ratio of the number or total length of bass sounds belonging to the optimal bass sound to the number or total length of all bass sounds belonging to the same chord progression section May be determined as the final bass tone string.

次に、メロディ音列と重ならないベース音列が複数存在する場合について説明する。この場合、ステップS48の処理により、ステップS56にて高い側のベース音列を決定ベース音列とする。そして、前記ステップS38,S42,S50,S54,S56によるベース音列の決定後、ステップS58にてこのコード進行区間処理ルーチンの実行を終了する。そして、全てのコード進行区間に関する処理が終了して時点で、図2の伴奏データ生成プログラムに実行に移り、ステップS20の処理を実行した後、ステップS22にて伴奏データ生成プログラムの実行を終了する。   Next, a case where there are a plurality of bass sound strings that do not overlap with the melody sound string will be described. In this case, by the process of step S48, the higher bass sound string is set as the determined bass sound string in step S56. Then, after the bass tone string is determined in steps S38, S42, S50, S54, and S56, the chord progression section processing routine is terminated in step S58. Then, when the processing relating to all chord progression sections is completed, the process proceeds to the accompaniment data generation program of FIG. 2, and after executing the process of step S20, the execution of the accompaniment data generation program is terminated in step S22. .

ステップS20においては、前記コード進行区間処理ルーチンの繰り返し実行により生成されたコード進行区間ごとのベース音列を用いて、ベース音の発生タイミングを含むとともに実際に発音されるベース音を表す伴奏音データをコード進行区間ごとに生成する。そして、コード進行区間ごとに生成された伴奏音データを繋げて、1曲分の伴奏音データを生成する。この場合、ベース音列を生成するために用いたコードデータ列を参照することにより、各ベース音に対応したコードの符長を参照して、符長が長い場合には同じベース音を所定のタイミング(例えば、4分音符タイミング)で発生させるための伴奏データを生成する。具体的には、図4(A)に示すように、ベース音に対応したコードの符長が全音符分あれば、同じベース音を4分音符タイミングごとに発音させるための伴奏データが作成される。また、図4(B)に示すように、ベース音に対応したコードの符長が4分音符分あれば、決定されたベース音をそのまま発音させる伴奏データが作成される。   In step S20, accompaniment sound data that includes a base sound generation timing and represents a bass sound that is actually sounded using a bass sound string for each chord progression section generated by repetitive execution of the chord progression section processing routine. Is generated for each chord progression section. And the accompaniment sound data produced | generated for every chord progression area are connected, and the accompaniment sound data for 1 music are produced | generated. In this case, by referring to the chord data string used to generate the bass sound string, the chord length corresponding to each bass sound is referred to. Accompaniment data to be generated at timing (for example, quarter note timing) is generated. Specifically, as shown in FIG. 4A, if the chord length of the chord corresponding to the bass sound is equal to all notes, accompaniment data for generating the same bass sound at every quarter note timing is created. The Further, as shown in FIG. 4B, if the note length of the chord corresponding to the bass sound is a quarter note, accompaniment data for generating the determined bass sound as it is is created.

なお、この伴奏音データの生成においては、ベース音の発音タイミングだけを指定する伴奏パターンデータを選択されている楽曲に対応させて用意しておき、同伴奏パターンデータの発音タイミングに前記決定されたベース音列を適合させて、伴奏データを作成するようにしてもよい。また、基準音高とは異なるコード構成音をベース音または伴奏音として生成するようにしてもよい。この場合、コードタイプごとに発音されるコード構成音と根音との音程と、同コード構成音の発音タイミングとを指定するデータを記憶しておき、指定タイミングに基準音高を前記根音との音程だけ音高変換してベース音または伴奏音を表す伴奏音データを生成するようにしてもよい。この場合、発音タイミングを指定するデータを省略して所定タイミング(例えば、4分音符)ごとに発音されるベース音または伴奏音を表す伴奏音データを生成するようにしてもよい。また、一度に発音される伴奏音の数も1つだけではなく複数のコード構成音を同時に発音させる伴奏音データを生成してもよい。たとえば、ベース音と同時にまたはタイミングを異ならせて、複数のコード構成音(例えば、ベース音とコード音)を発音させるための伴奏音データを生成してもよい。   In the generation of the accompaniment sound data, accompaniment pattern data that specifies only the sound generation timing of the bass sound is prepared corresponding to the selected music piece, and the sound generation timing of the accompaniment pattern data is determined as described above. You may make it produce accompaniment data by adapting a bass sound sequence. Further, a chord constituent sound different from the reference pitch may be generated as a bass sound or an accompaniment sound. In this case, data for specifying the pitch of the chord constituent sound and the root note that are generated for each chord type and the sound generation timing of the chord constituent sound are stored, and the reference pitch is set as the root note at the specified timing. It is also possible to generate accompaniment sound data representing a bass sound or accompaniment sound by converting the pitch of the pitch of the pitch. In this case, the data for designating the sounding timing may be omitted, and accompaniment sound data representing a bass sound or accompaniment sound that is sounded at every predetermined timing (for example, a quarter note) may be generated. In addition, the number of accompaniment sounds generated at one time may be generated as well as accompaniment sound data for simultaneously generating a plurality of chord constituent sounds. For example, accompaniment sound data for generating a plurality of chord constituent sounds (for example, a bass sound and a chord sound) may be generated simultaneously with the bass sound or at different timings.

そして、前記のように生成された伴奏データは、メロディデータと共にまたはメロディデータとは独立して楽曲の進行に従って楽音信号発生回路13に供給されて自動演奏される。また、この伴奏データを用いて、伴奏音列(ベース音列)をメロディ音列と共にまたはメロディ音列とは独立して表示器12にて楽譜の形式で表示したり、別途設けた印刷装置によりメロディ音列と共にまたはメロディ音列とは独立して楽譜の形式で印刷したりするようにしてもよい。さらに、伴奏音に対応して押鍵すべき鍵をランプの点灯によりユーザに対して指示する演奏ガイドのために、前記生成した伴奏データを利用してもよい。   Then, the accompaniment data generated as described above is supplied to the musical tone signal generation circuit 13 along with the melody data or independently of the melody data, and automatically played. Further, using this accompaniment data, the accompaniment sound string (bass sound string) is displayed in the form of a score on the display 12 together with the melody sound string or independently of the melody sound string, or by a printing device provided separately. You may make it print with the form of a score with a melody sound sequence or independently of a melody sound sequence. Further, the generated accompaniment data may be used for a performance guide for instructing the user of a key to be pressed corresponding to the accompaniment sound by lighting a lamp.

上記作動説明から理解できるように、上記実施形態によれば、ステップS14,S16の処理によってコードデータ列に基づいて基準音高列が抽出され、抽出された一連の基準音高は、各基準音高が一連の流れをもって順次進行する複数のコード進行区間に区切られる。そして、ステップS18のコード進行区間処理ルーチンの実行により、コード進行区間ごとに基準音高に基づいてベース音列が決定されて、ステップS20の処理によりこのベース音列に基づいて伴奏音データが生成される。その結果、上記実施形態によれば、コード進行の状況が考慮され、聴感上自然に変化する伴奏音列が生成される。   As can be understood from the above description of operation, according to the above-described embodiment, the reference pitch sequence is extracted based on the chord data sequence by the processing of steps S14 and S16, and the extracted series of reference pitches is obtained from each reference tone. The high is divided into a plurality of chord progression sections that proceed sequentially with a series of flows. Then, by executing the chord progression section processing routine of step S18, a bass tone string is determined based on the reference pitch for each chord progression section, and accompaniment sound data is generated based on this bass tone string by the process of step S20. Is done. As a result, according to the above-described embodiment, an accompaniment sound string that naturally changes in audibility is generated in consideration of the state of chord progression.

また、前記コード進行区間処理ルーチンにおいては、ステップS32の処理によって複数のベース音列候補が生成されるとともに、ステップS34〜S42に処理によって複数のベース音列候補を構成するベース音の音高が考慮されて所定のベース音域に入るベース音列が最終的なベース音列とされる。また、ステップS42の処理により、ベース音域から外れるベース音に関しては、その音高がオクターブシフトされて、ベース音域に納められる。その結果、これによれば、全ての伴奏音が必ずベース音域に入るようになるので、他の演奏音との重なりを簡単に回避できるようになるとともに、伴奏音としても適した伴奏音列が選択されることになる。   Further, in the chord progression section processing routine, a plurality of bass tone string candidates are generated by the process of step S32, and the pitches of the bass sounds constituting the plurality of bass tone string candidates are processed by steps S34 to S42. A bass sound string that is considered and falls within a predetermined bass sound range is set as a final bass sound string. Further, with the processing in step S42, the pitch of the bass sound that is out of the bass range is octave shifted and stored in the bass range. As a result, according to this, since all the accompaniment sounds always enter the bass range, it is possible to easily avoid overlapping with other performance sounds, and an accompaniment sound string suitable as an accompaniment sound can be obtained. Will be selected.

また、ステップS36,S44〜S56の処理により、全てのベース音がベース音域に入るベース音列候補が複数存在する場合には、メロディ音列との適合性が考慮されてベース音列が決定される。特に、メロディ音列と重ならないベース音列が決定され、またメロディ音列に近い伴奏音列候補が選択される。さらに、最適ベース音列に入るベース音の頻度によりベース音列が決定される。これにより、伴奏音として適した伴奏音列が選択され、またはメロディ音列に適合した伴奏音列が選択されるので、聴感上より自然に変化する伴奏音列が生成される。   In addition, when there are a plurality of bass tone string candidates in which all the bass sounds fall within the bass tone range by the processes of steps S36 and S44 to S56, the bass tone string is determined in consideration of the compatibility with the melody tone string. The In particular, a bass sound string that does not overlap with the melody sound string is determined, and an accompaniment sound string candidate close to the melody sound string is selected. Further, the bass sound string is determined by the frequency of the bass sound that enters the optimum bass sound string. As a result, an accompaniment sound string suitable as an accompaniment sound is selected, or an accompaniment sound string suitable for a melody sound string is selected, so that an accompaniment sound string that changes naturally in terms of hearing is generated.

さらに、本発明の実施にあたっては、上記実施形態及びその変形例に限定されるものではなく、本発明の目的を逸脱しない限りにおいて種々の変更が可能である。   Furthermore, in carrying out the present invention, the present invention is not limited to the above embodiment and its modifications, and various modifications can be made without departing from the object of the present invention.

上記実施形態においては、メロディ音列も考慮してベース音列を決定するようにしたが、コードデータ列のみを用いてベース音列を決定するようにしてもよい。この場合、図3のコード進行区間処理ルーチンにおいて、ステップS44〜S54の処理を省略して、全てのベース音がベース音域に入るベース音列が複数存在する場合には、ステップS36の判定処理によりステップS56のベース音決定処理が実行されるようにすればよい。   In the above embodiment, the bass sound string is determined in consideration of the melody sound string, but the bass sound string may be determined using only the chord data string. In this case, in the chord progression section processing routine of FIG. 3, when the processing of steps S44 to S54 is omitted and there are a plurality of bass strings in which all the bass sounds fall within the bass range, the determination processing of step S36 The bass sound determination process in step S56 may be executed.

また、上記実施形態においては、ステップS32の処理により2つのベース音列を生成するようにしたが、1つのベース音列のみを生成するようにしてもよい。この場合、ステップS36にて前記生成した1つのベース音列に属する全てのベース音がベース音域に入るか否かを調べ、全てのベース音がベース音域に入る場合にはステップS38の処理によりベース音列を決定すればよい。また、ベース音域に入らないベース音が存在する場合には、ステップS42の処理によりベース音域に入らないベース音をベース音域に入るように修正して、同修正したベース音列を最終的なベース音列として決定すればよい。また、3つ以上のベース音列を設定するようにしてもよい。この場合、ベース音域を広げるか、根音(またはオンベースコードの場合にはベース音)以外のコード構成音をもベース音列を構成するためのベース音として選択されるようにする。   In the above-described embodiment, two bass sound strings are generated by the process of step S32. However, only one bass sound string may be generated. In this case, it is checked in step S36 whether or not all the bass sounds belonging to the generated one bass sound string are in the bass range, and if all the bass sounds are in the bass range, the bass is processed by the process in step S38. What is necessary is just to determine a sound string. If there is a bass sound that does not fall within the bass range, the bass sound that does not fall within the bass range is corrected to enter the bass range by the processing of step S42, and the revised bass tone string is converted into the final bass range. What is necessary is just to determine as a sound sequence. Also, three or more bass sound strings may be set. In this case, the bass sound range is expanded, or chord constituent sounds other than the root sound (or the bass sound in the case of the on-bass chord) are also selected as the bass sounds for constituting the bass sound string.

また、上記実施形態においては、生成されたベース音列候補中のいずれかのベース音がベース音域から外れている場合には、該当するベース音の音高をオクターブシフトしてベース音域に入るようにした。しかし、これに代えて、所定の音程だけ音高シフトすることにより、該当するベース音がベース音域に入るようにしてもよい。また、ベース音域に入っていないベース音をそのままにしておいてもよい。さらに、これらのベース音の音高シフトおよびベース音の音高をそのままに保つことを、上記実施形態のステップS12にて、ユーザが選択できるようにすればよい。   Further, in the above embodiment, when any bass sound in the generated bass tone string candidate is out of the bass range, the pitch of the corresponding bass tone is shifted by an octave so as to enter the bass range. I made it. However, instead of this, the corresponding bass sound may enter the bass range by shifting the pitch by a predetermined pitch. Also, bass sounds that are not in the bass range may be left as they are. Furthermore, it is only necessary to allow the user to select to keep the pitch shift of the bass sound and the pitch of the bass sound as they are in step S12 of the above embodiment.

さらに、上記実施形態においては、全てのベース音がベース音域に属するベース音列候補が複数存在しているとき、ステップS44〜S56の処理によって1つのベース音列を決定するようにした。しかし、メロディ音列に含まれるメロディ音の音名と一致する音名のベース音を多く含むベース音列を最終的にベース音列として決定したり、他の伴奏音列が存在する場合には同伴奏音列との適合性を考慮してベース音列を決定したりするなど、前記ステップS44〜S56の処理に変わるベース音列の決定方法を採用することもできる。   Furthermore, in the above embodiment, when there are a plurality of bass tone string candidates in which all the bass sounds belong to the bass tone range, one bass tone string is determined by the processing in steps S44 to S56. However, if a bass tone string that contains many bass sounds with the same pitch name as the melody tone names included in the melody tone string is finally determined as the bass tone string, or if other accompaniment tone strings exist It is also possible to adopt a bass sound string determination method that changes to the processing of steps S44 to S56, such as determining a bass sound string in consideration of compatibility with the accompanying musical sound string.

本発明の一実施形態に係る電子音楽装置の全体ブロック図である。1 is an overall block diagram of an electronic music apparatus according to an embodiment of the present invention. 前記電子音楽装置にて実行される伴奏データ生成プログラムを示すフローチャートである。It is a flowchart which shows the accompaniment data generation program performed with the said electronic music apparatus. 図2のコード進行区間処理ルーチンの詳細を示すフローチャートである。It is a flowchart which shows the detail of the chord progression area process routine of FIG. (A)(B)は、生成された伴奏データによるベース音を例を示す図である。(A) (B) is a figure which shows the example of the bass sound by the produced | generated accompaniment data.

符号の説明Explanation of symbols

11…入力操作子群、12…表示器、13…楽音信号発生回路、31…CPU,33…ROM,34…RAM、35…外部記憶装置、36…通信インターフェース回路
DESCRIPTION OF SYMBOLS 11 ... Input operator group, 12 ... Display, 13 ... Musical tone signal generation circuit, 31 ... CPU, 33 ... ROM, 34 ... RAM, 35 ... External storage device, 36 ... Communication interface circuit

Claims (4)

一連のコードを表すコードデータ列を供給するコードデータ供給ステップと、
前記供給されたコードデータごとにコードに関係した所定の基準音高を抽出する基準音高抽出ステップと、
前記抽出された一連の基準音高を各基準音高が一連の流れをもって順次進行する複数のコード進行区間に区切って一連のコード進行区間を生成する区間生成ステップと、
前記コード進行区間ごとに基準音高に基づいて伴奏音列を表す伴奏音列データを生成する伴奏音列生成ステップと
を含むことを特徴とする伴奏音列生成プログラム。
A code data supply step for supplying a code data string representing a series of codes;
A reference pitch extraction step for extracting a predetermined reference pitch related to a chord for each of the supplied chord data;
A section generating step for generating a series of chord progression sections by dividing the extracted series of reference pitches into a plurality of chord progression sections in which each reference pitch sequentially proceeds in a series of flows;
An accompaniment sound sequence generation program comprising: an accompaniment sound sequence generation step for generating accompaniment sound sequence data representing an accompaniment sound sequence based on a reference pitch for each chord progression section.
前記伴奏音列生成ステップは、
前記基準音高列に基づいて生成される伴奏音列の中の所定音域に入らない伴奏音の音高をシフトして同所定音域に入るように修正する音高修正ステップを含むことを特徴とする請求項1に記載した伴奏音列生成プログラム。
The accompaniment sound sequence generation step includes:
A pitch correction step for correcting the pitch of an accompaniment sound that does not fall within a predetermined range in the accompaniment pitch sequence generated based on the reference pitch sequence so as to be within the predetermined range; The accompaniment sound sequence generation program according to claim 1.
前記伴奏音列生成ステップは、
複数の伴奏音列候補を生成する伴奏音列候補生成ステップと、
前記複数の伴奏音列候補を構成する伴奏音の音高に応じまたは前記コードデータ列に対応したメロディ音列に応じて、前記複数の伴奏音列候補の中から1つの伴奏音列を選択する伴奏音列選択ステップとを含むことを特徴とする請求項1に記載した伴奏音列生成プログラム。
The accompaniment sound sequence generation step includes:
An accompaniment sound sequence candidate generating step for generating a plurality of accompaniment sound sequence candidates;
One accompaniment sound string is selected from the plurality of accompaniment sound string candidates according to the pitch of the accompaniment sound constituting the plurality of accompaniment sound string candidates or according to the melody sound string corresponding to the chord data string. An accompaniment sound string generation program according to claim 1, further comprising an accompaniment sound string selection step.
一連のコードを表すコードデータ列を供給するコードデータ供給手段と、
前記供給されたコードデータごとにコードに関係した所定の基準音高を抽出する基準音高抽出手段と、
前記抽出された一連の基準音高を各基準音高が一連の流れをもって順次進行する複数のコード進行区間に区切って一連のコード進行区間を生成する区間生成手段と、
前記コード進行区間ごとに基準音高に基づいて伴奏音列を表す伴奏音列データを生成する伴奏音列生成手段と
を備えたことを特徴とする伴奏音列生成装置。
Code data supply means for supplying a code data string representing a series of codes;
Reference pitch extraction means for extracting a predetermined reference pitch related to a chord for each of the supplied chord data;
Section generating means for generating a series of chord progression sections by dividing the extracted series of reference pitches into a plurality of chord progression sections in which each reference pitch proceeds sequentially with a series of flows;
An accompaniment sound string generation device comprising accompaniment sound string generation means for generating accompaniment sound string data representing an accompaniment sound string based on a reference pitch for each chord progression section.
JP2003379480A 2003-11-10 2003-11-10 Computer program for bass tone string generation and bass tone string generator Expired - Fee Related JP4186797B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003379480A JP4186797B2 (en) 2003-11-10 2003-11-10 Computer program for bass tone string generation and bass tone string generator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003379480A JP4186797B2 (en) 2003-11-10 2003-11-10 Computer program for bass tone string generation and bass tone string generator

Publications (2)

Publication Number Publication Date
JP2005141124A true JP2005141124A (en) 2005-06-02
JP4186797B2 JP4186797B2 (en) 2008-11-26

Family

ID=34689526

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003379480A Expired - Fee Related JP4186797B2 (en) 2003-11-10 2003-11-10 Computer program for bass tone string generation and bass tone string generator

Country Status (1)

Country Link
JP (1) JP4186797B2 (en)

Also Published As

Publication number Publication date
JP4186797B2 (en) 2008-11-26

Similar Documents

Publication Publication Date Title
JP3666577B2 (en) Chord progression correction device, chord progression correction method, and computer-readable recording medium recording a program applied to the device
JP3557917B2 (en) Automatic composer and storage medium
US8324493B2 (en) Electronic musical instrument and recording medium
US6294720B1 (en) Apparatus and method for creating melody and rhythm by extracting characteristic features from given motif
JP3900188B2 (en) Performance data creation device
JP5472261B2 (en) Automatic adjustment determination apparatus, automatic adjustment determination method and program thereof
JP2722141B2 (en) Automatic accompaniment device
JP2006195043A (en) Electronic music device and computer readable program adapted to the same
JP4670686B2 (en) Code display device and program
JP4186797B2 (en) Computer program for bass tone string generation and bass tone string generator
JP4376169B2 (en) Automatic accompaniment device
JP4821505B2 (en) Electronic keyboard instrument and program used there
JP6047867B2 (en) Automatic code correction device, automatic code correction method and program thereof
JP2005084065A (en) Apparatus for practicing code
JP6555231B2 (en) Automatic code correction device, automatic code correction method and program thereof
JP5104414B2 (en) Automatic performance device and program
JP6525034B2 (en) Code progression information generation apparatus and program for realizing code progression information generation method
JP2006258938A (en) Automatic performance apparatus and program
JP2005173631A (en) Performance data generating apparatus
JP4470895B2 (en) Code display device and program
JP3752940B2 (en) Automatic composition method, automatic composition device and recording medium
JP3775039B2 (en) Melody generator and recording medium
JP2572317B2 (en) Automatic performance device
JP3669301B2 (en) Automatic composition apparatus and method, and storage medium
JP4900233B2 (en) Automatic performance device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060623

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080307

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080325

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080513

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: 20080819

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080901

R150 Certificate of patent or registration of utility model

Ref document number: 4186797

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110919

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120919

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130919

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees