JP3823723B2 - Available note scale determination device and storage medium - Google Patents

Available note scale determination device and storage medium Download PDF

Info

Publication number
JP3823723B2
JP3823723B2 JP2000377454A JP2000377454A JP3823723B2 JP 3823723 B2 JP3823723 B2 JP 3823723B2 JP 2000377454 A JP2000377454 A JP 2000377454A JP 2000377454 A JP2000377454 A JP 2000377454A JP 3823723 B2 JP3823723 B2 JP 3823723B2
Authority
JP
Japan
Prior art keywords
code
chord
scale
diatonic
avns
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2000377454A
Other languages
Japanese (ja)
Other versions
JP2002182645A (en
Inventor
栄一郎 青木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2000377454A priority Critical patent/JP3823723B2/en
Publication of JP2002182645A publication Critical patent/JP2002182645A/en
Application granted granted Critical
Publication of JP3823723B2 publication Critical patent/JP3823723B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、入力されたコード進行を構成する各コードに適合したアベイラブル・ノート・スケールを決定するアベイラブル・ノート・スケール決定装置および記憶媒体に関する。
【0002】
【従来の技術】
従来、メロディ生成装置としては、所望の調情報および所望のコード情報を入力するとともに、これらの調情報およびコード情報に基づいてアベイラブル・ノート・スケールを検出し、検出に係るAVNS内の音をメロディ音として選択することによりメロディを生成するようにしたものが、この出願と同一の出願人により提案されている(特願平10−166302号)。このようなメロディ生成装置によれば、ノンダイアトニックなコードに相応しい自然なメロディを生成可能である。
【0003】
【発明が解決しようとする課題】
一般に、アベイラブル・ノート・スケールは、1つの調と1つのコードとに対応して1つとは限らず、複数存在することもある。上記した従来技術では、アベイラブル・ノート・スケール検出処理において各調毎に1つのコードが与えられるたびに1つのアベイラブル・ノート・スケールを検出していたので、1つの調と1つのコードとに対応して複数のアベイラブル・ノート・スケールが存在するような場合には、複数のAVNSのうちメロディ生成にとって好ましくないアベイラブル・ノート・スケールが検出されることがあった。このため、検出に係るAVNSに基づいてメロディを生成すると、コード進行に対するメロディの適合性が良好でないことがあった。
【0004】
また、調とコードに基づいてアベイラブル・ノート・スケールを検出することは可能であるが、コード進行から調を自動検出するのは困難であった。すなわち、典型的なコード進行であれば比較的容易に調を自動検出することができるが、コード進行の途中で転調している場合は、転調を自動検出するのが容易ではなく、特に典型的なコード進行ではない場合には転調の検出は困難であった。このため、コードに適合したアベイラブル・ノート・スケールを決定するのが困難であった。
【0005】
本発明は、この点に着目してなされたものであり、転調を検出せずにコードに適合したアベイラブル・ノート・スケールを決定することができるアベイラブル・ノート・スケール決定装置および記憶媒体を提供することを目的とする。
【0006】
【課題を解決するための手段】
【0010】
上記目的を達成するため、請求項に記載のアベイラブル・ノート・スケール決定装置は、コード進行データおよび調データを入力する入力手段と、前記入力されたコード進行データおよび調データに基づいて、該コード進行データを構成するコードがダイアトニック・コードであるか、ノンダイアトニック・コードであるかを判別する判別手段と、前記入力されたコード進行データ中、アベイラブル・ノート・スケールを決定する対象となる対象コードのアベイラブル・ノート・スケールを決定する決定手段であって、前記判別手段によって、前記対象コードがダイアトニック・コードと判別された場合、前記判別手段によって、前記対象コードの直前に位置する直前コードがダイアトニック・コードと判別されたときには、当該対象コードのアベイラブル・ノート・スケールをダイアトニック・ノート・スケールに決定する第1の決定方法により、当該対象コードのアベイラブル・ノート・スケールを決定し、前記判別手段によって、前記直前コードがノンダイアトニック・コードと判別され、前記対象コードの直後に位置する直後コードがダイアトニック・コードと判別されたときには、当該対象コードのアベイラブル・ノート・スケールをダイアトニック・ノート・スケールに決定する前記第1の決定方法と、当該対象コードのアベイラブル・ノート・スケールを前記直前コードおよび前記直後コードの各構成音に基づいて決定する第2の決定方法とをランダムに選択し、該選択された決定方法を用いて当該対象コードのアベイラブル・ノート・スケールを決定し、前記判別手段によって、前記直前コードおよび前記直後コードの双方がノンダイアトニック・コードと判別されたときには、当該対象コードのアベイラブル・ノート・スケールを前記第2の決定方法により決定し、前記判別手段によって、前記対象コードがノンダイアトニック・コードと判別された場合、当該対象コードのアベイラブル・ノート・スケールを前記第2の決定方法により決定するものとを有することを特徴とする。
ここで、直前コードまたは直後コードが存在しない場合があるが、この場合には、たとえば、入力されたコード進行に調が付随しているとして、この調のトニックコードをその代理コードにすればよい(以下、請求項が変わっても同様である)。
【0014】
請求項に記載の記憶媒体は、力されたコード進行データおよび調データに基づいて、該コード進行データを構成するコードがダイアトニック・コードであるか、ノンダイアトニック・コードであるかを判別する判別モジュールと、前記入力されたコード進行データ中、アベイラブル・ノート・スケールを決定する対象となる対象コードのアベイラブル・ノート・スケールを決定する決定モジュールであって、前記判別モジュールによって、前記対象コードがダイアトニック・コードと判別された場合、前記判別モジュールによって、前記対象コードの直前に位置する直前コードがダイアトニック・コードと判別されたときには、当該対象コードのアベイラブル・ノート・スケールをダイアトニック・ノート・スケールに決定する第1の決定方法により、当該対象コードのアベイラブル・ノート・スケールを決定し、前記判別モジュールによって、前記直前コードがノンダイアトニック・コードと判別され、前記対象コードの直後に位置する直後コードがダイアトニック・コードと判別されたときには、当該対象コードのアベイラブル・ノート・スケールをダイアトニック・ノート・スケールに決定する前記第1の決定方法と、当該対象コードのアベイラブル・ノート・スケールを前記直前コードおよび前記直後コードの各構成音に基づいて決定する第2の決定方法とをランダムに選択し、該選択された決定方法を用いて当該対象コードのアベイラブル・ノート・スケールを決定し、前記判別モジュールによって、前記直前コードおよび前記直後コードの双方がノンダイアトニック・コードと判別されたときには、当該対象コードのアベイラブル・ノート・スケールを前記第2の決定方法により決定し、前記判別モジュールによって、前記対象コードがノンダイアトニック・コードと判別された場合、当該対象コードのアベイラブル・ノート・スケールを前記第2の決定方法により決定するものとを含む、コンピュータが実現できるプログラムを格納したことを特徴とする。
【0015】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。
【0016】
図1は、本発明の一実施の形態に係るアベイラブル・ノート・スケール(以下、「AVNS」という)決定装置の概略構成を示すブロック図である。
【0017】
同図に示すように、本実施の形態のAVNS決定装置は、音高情報を入力するための鍵盤装置1と、各種情報を入力するための複数のスイッチを備えたパネルスイッチ2と、鍵盤装置1の各鍵の押鍵状態を検出する押鍵検出回路3と、パネルスイッチ2の各スイッチの押下状態を検出するスイッチ検出回路4と、装置全体の制御を司るCPU5と、該CPU5が実行する制御プログラムや、各種テーブルデータ等を記憶するROM6と、演奏データ、各種入力情報および演算結果等を一時的に記憶するRAM7と、タイマ割込み処理における割込み時間や各種時間を計時するタイマ8と、各種情報等を表示する、たとえば大型液晶ディスプレイ(LCD)若しくはCRT(Cathode Ray Tube)ディスプレイおよび発光ダイオード(LED)等を備えた表示装置9と、記憶媒体であるフロッピディスク(FD)20をドライブするフロッピディスクドライブ(FDD)10と、前記制御プログラムを含む各種アプリケーションプログラムや各種データ等を記憶するハードディスク(図示せず)をドライブするハードディスクドライブ(HDD)11と、前記制御プログラムを含む各種アプリケーションプログラムや各種データ等を記憶するコンパクトディスク−リード・オンリ・メモリ(CD−ROM)21をドライブするCD−ROMドライブ(CD−ROMD)12と、外部からのMIDI(Musical Instrument Digital Interface)信号を入力したり、MIDI信号を外部に出力したりするMIDIインターフェース(I/F)13と、通信ネットワーク101を介して、たとえばサーバコンピュータ102とデータの送受信を行う通信インターフェース(I/F)14と、鍵盤装置1から入力された演奏データや予め設定された演奏データ等を楽音信号に変換する音源回路15と、該音源回路15からの楽音信号に各種効果を付与するための効果回路16と、該効果回路16からの楽音信号を音響に変換する、たとえば、DAC(Digital-to-Analog Converter)やアンプ、スピーカ等のサウンドシステム17とにより構成されている。
【0018】
上記構成要素3〜16は、バス18を介して相互に接続され、CPU5にはタイマ8が接続され、MIDII/F13には他のMIDI機器100が接続され、通信I/F14には通信ネットワーク101が接続され、音源回路15には効果回路16が接続され、効果回路16にはサウンドシステム17が接続されている。
【0019】
HDD11のハードディスクには、前述のように、CPU5が実行する制御プログラムも記憶でき、ROM6に制御プログラムが記憶されていない場合には、このハードディスクに制御プログラムを記憶させておき、それをRAM7に読み込むことにより、ROM6に制御プログラムを記憶している場合と同様の動作をCPU5にさせることができる。このようにすると、制御プログラムの追加やバージョンアップ等が容易に行える。
【0020】
CD−ROMドライブ12のCD−ROM21から読み出された制御プログラムや各種データは、HDD11内のハードディスクにストアされる。これにより、制御プログラムの新規インストールやバージョンアップ等が容易に行える。なお、このCD−ROMドライブ12以外にも、外部記憶装置として、光磁気ディスク(MO)装置等、様々な形態のメディアを利用するための装置を設けるようにしてもよい。
【0021】
MIDII/F13は、専用のものに限らず、RS−232CやUSB(ユニバーサル・シリアル・バス)、IEEE1394(アイトリプルイー1394)等の汎用のインターフェースより構成してもよい。この場合、MIDIメッセージ以外のデータをも同時に送受信してもよい。
【0022】
通信I/F14は、上述のように、たとえばLAN(Local Area Network)やインターネット、電話回線等の有線または無線の通信ネットワーク101に接続されており、該通信ネットワーク101を介して、サーバコンピュータ102に接続される。HDD11内のハードディスクに上記各プログラムや各種パラメータが記憶されていない場合には、通信I/F14は、サーバコンピュータ102からプログラムやパラメータをダウンロードするために用いられる。クライアントとなるコンピュータ(本実施の形態では、AVNS決定装置)は、通信I/F14および通信ネットワーク101を介してサーバコンピュータ102へとプログラムやパラメータのダウンロードを要求するコマンドを送信する。サーバコンピュータ102は、このコマンドを受け、要求されたプログラムやパラメータを、通信ネットワーク101を介してコンピュータへと配信し、コンピュータが通信I/F14を介して、これらプログラムやパラメータを受信してHDD11内のハードディスクに蓄積することにより、ダウンロードが完了する。
【0023】
この他、外部コンピュータ等との間で直接データのやりとりを行うためのインターフェースを備えてもよい。
【0024】
なお、本実施の形態のAVNS決定装置は、上述の構成から分かるように、汎用的なパーソナルコンピュータ上に構築されたものであるが、これに限らず、本発明を実施できる最小限要素のみから構成した専用装置や電子楽器、携帯通信端末上に構築してもよい。
【0025】
以上のように構成されたAVNS決定装置が実行する制御処理を、まずその概要を説明し、次に図2〜図6を参照して詳細に説明する。
【0026】
本実施の形態のAVNS決定装置は、入力されたコード進行を構成する各コードのAVNSを、次のようにして決定する。すなわち、AVNSを決定すべき対象となるコード(以下、「対象コード」という)を“Y”とし、その直前および直後のコードをそれぞれ“X”,“Z”とすると、
(1)Y:ノンダイアトニック・コードの場合には、YのAVNSをその前後コード、すなわちXおよびに基づいて決定する
(2)Y:ダイアトニック・コードの場合には、さらに場合分けして、
(a)X:ダイアトニック・コード;Z:ダイアトニック・コードの場合には、YのAVNSをダイアトニック・ノート・スケールに決定する
(b)X:ダイアトニック・コード;Z:ノンダイアトニック・コードの場合には、YのAVNSをダイアトニック・ノート・スケールに決定する
(c)X:ノンダイアトニック・コード;Z:ダイアトニック・コードの場合には、YのAVNSをダイアトニック・ノート・スケールに決定するか、または上記(1)と同様の方法で決定する
(d)X:ノンダイアトニック・コード;Z:ノンダイアトニック・コードの場合には、YのAVNSを上記(1)と同様の方法で決定する。
【0027】
ここで、ダイアトニック・ノート・スケールとは、調の音階音、すなわちダイアトニック・ノートのみから構成されるスケールをいう。
【0028】
次に、この制御処理を詳細に説明する。
【0029】
図2は、本実施の形態のAVNS決定装置、特にCPU5が実行するAVNS決定処理の手順を示すフローチャートである。同図に示されるAVNS決定処理は、上記概要で説明した各処理をそのままフローチャートの形式に書き直したものである。
【0030】
すなわち、ステップS2の処理が上記(1)の処理に相当し、ステップS4の処理が上記(2)(a)および(b)の処理に相当し、ステップS6の処理が上記(2)(c)の処理に相当し、ステップS7の処理が上記(2)(d)の処理に相当する。
【0031】
なお、ステップS6の処理は、上記(2)(c)の処理の具体的な一例を示しているに過ぎない。すなわち、ステップS6では、AVNSを、前後コードに基づいたAVNS決定処理を用いて決定するか、ダイアトニック・ノート・スケールにするかをランダムに決め、決まった方の処理を行うようにしているが、これに限らず、いずれか一方を固定的に決め、決まった方の処理を行うようにしてもよい。
【0032】
次に、ステップS2およびS7(およびステップS6の一部)の処理、すなわち、対象コードのAVNSをその直前および直後に位置するコードに基づいて決定する処理(前後コードに基づいたAVNS決定処理)を説明する。
【0033】
まず、図3を参照して、前後コードに基づいたAVNS決定処理の概要を説明する。記憶部7P,7Q,7R,7S,7Tは、いずれも図1のRAM7に属するもので、それぞれコード進行データ、対象コードデータ、前コードデータ、後コードデータ、調データを記憶する。コード進行データは、たとえば1曲分のコード進行を構成する複数のコードをそれぞれ指示する複数のコードデータを含むもので、曲の調を指示する調データとともに取得される。
【0034】
調データおよびコード進行データを取得する方法としては、たとえばROM6またはHDD11に設けたコード進行データベースからユーザが所望の調データ付きのコード進行データを選択する方法、ユーザが鍵盤1やパネルスイッチ2等により所望の調データおよびコード進行データを入力する方法、ユーザの指示に応じて調データ付きのコード進行データを自動生成する方法等を利用可能である。いずれかの方法で取得された調データおよびコード進行データのうち、調データは記憶部7Tに記憶されるとともに、コード進行データは記憶部7Pに記憶される。記憶部7Pには、コード進行データを構成する各コードデータに対応してAVNSを指示するスケールデータを記憶可能になっている。
【0035】
前後コードに基づいたAVNS決定処理120では、記憶部7Pに記憶されたコード進行データを構成する各コードデータ毎に該コードデータが示すコードに対するAVNSを決定し、各コードデータ毎に決定に係るAVNSを指示するスケールデータASDを対応付けて記憶部7Pに記憶させる。AVNS決定の際には、AVNSを決定すべきコードデータを記憶部7Pから読み出し、対象コードデータとして記憶部7Qに記憶させる。また、対象コードデータの直前のコードデータおよび直後のコードデータを記憶部7Pから読み出し、それぞれ前コードデータおよび後コードデータとして記憶部7Rおよび7Sに記憶させる。ただし、コード進行の先頭のコードについてAVNSを決定するときは、前コードデータが存在しないので、記憶部7Tの調データが指示する調のトニックコードを表わすトニックコードデータを記憶部7Rに記憶させ、コード進行の最後のコードについてAVNSを決定するときは、後コードデータが存在しないので、前コードデータの場合と同様に調のトニックコードを表わすトニックコードデータを記憶部7Sに記憶させる。
【0036】
AVNSテーブル61は、図4に一例を示すように1または複数のコードタイプ毎に1または複数のAVNSを表わすもので、たとえばROM6またはHDD11に記憶される。図4には、コードおよびAVNSについて使用する調(メジャーまたはマイナー)を示した。図4の例では、ダイアトニックコードにおけるスケールのみを示した。1つのコードタイプが複数のスケールに対応することがあるが、これは1つのコードタイプであってもコード機能が違えばスケールも違うことを意味している。たとえばCメジャー調において、メジャー(M)はトニック(C)とサブドミナント(F)で使用され、このときのスケールはトニックに対応してアイオニアン・スケールとなり、サブドミナントに対応してリディアン・スケールとなる。
【0037】
AVNS決定の際には、記憶部7Qの対象コードデータが指示する対象コード毎にAVNSテーブル61を参照して該対象コードに対応するAVNS候補を抽出する。そして、抽出に係るAVNS候補が「m7♭5」の場合の「ロクリアン・スケール」のように1つだけあればその1つのAVNS候補を対象コードに対するAVNSとして決定し、「M」の場合の「アイオニアン・スケール,リディアン・スケール」のように複数であれば記憶部7Rの前コードデータおよび記憶部7Sの後コードデータを参照して前コードおよび後コードのうち少なくとも一方のコードの構成音を含む1つのAVNS候補を抽出に係る複数のAVNS候補のうちから検出し、この検出に係る1つのAVNS候補を対象コードに対するAVNSとして決定する。また、前コードおよび後コードのうちの少なくとも一方のコードの構成音を含む複数のAVNS候補を抽出に係る複数のAVNS候補のうちから検出するとともにこの検出に係る複数のAVNS候補のうちから1つのAVNS候補を選択し、この選択に係る1つのAVNS候補を対象コードに対するAVNSとして決定する。
【0038】
図5および図6は、前後コードに基づいたAVNS決定処理の手順を示すフローチャートである。
【0039】
図5において、まず、ステップS11では、調データとともにコード進行を取得する。すなわち、前述したいずれかの取得方法により調データおよびコード進行データを取得し、調データは記憶部7Tに、コード進行データは記憶部7Pにそれぞれ記憶させる。
【0040】
次に、ステップS12では、コード進行から対象コード、前コードおよび後コードを取得する。すなわち、記憶部7Pから対象コードデータを読み出して記憶部7Qに書き込むとともに記憶部7R,7Sにそれぞれ前コードデータおよび後コードデータを書き込む。コード進行の先頭のコードを対象コードとするときは、前コードデータとして調のトニックコードを表わすトニックコードデータを記憶部7Rに書込み、対象コードの次のコードデータを記憶部7Pから読み出して後コードデータとして記憶部7Sに書き込む。この後、ステップS13に移る。
【0041】
ステップS13では、対象コードに対応するAVNS候補をAVNSテーブル61から抽出する。すなわち、記憶部7Qの対象コードデータが指示する対象コードに対応するAVNS候補をAVNSテーブル61から読み出してRAM7内の候補レジスタ(図示せず)にセットする。このときセットされるAVNS候補は、1つのときもあれば、複数のときもある。
【0042】
次に、ステップS14では、候補レジスタ内のAVNS候補が複数あるか否かを判定する。この判定の結果が否定的(N)であれば、AVNS候補が1つであったことになり、図6のステップS15に移る。
【0043】
ステップS15では、候補レジスタ内の1つのAVNS候補を対象コードに対するAVNSとして決定する。そして、決定に係るAVNSを指示するスケールデータASDを対象コードデータに対応して記憶部7Pに書き込む。
【0044】
一方、ステップS14の判定結果が肯定的(Y)であったときは、ステップS16に移り、前コードの構成音と後コードの構成音とに共通する共通音を検出する。すなわち、記憶部7Rの前コードデータが指示するコードの構成音と、記憶部7Sの後コードデータが指示するコードの構成音とのうちから両者に共通する音を検出する。たとえば、前コードの構成音がB♭,D,Fであり、後コードの構成音がE♭,G,B♭であれば、共通音はB♭となる。
【0045】
次に、ステップS17では、共通音があるか否かを判定する。この判定の結果が肯定的(Y)であればステップS18に移り、ステップS13での抽出に係る複数のAVNS候補のうちに、共通音を含むAVNS候補があるか否かを判定する。この判定の結果が肯定的(Y)であればステップS19に移り、ステップS13での抽出に係る複数のAVNS候補のうちに、共通音を最も多く含むAVNS候補が複数あるか否かを判定する。この判定の結果が否定的(N)であったときには、共通音を最も多く含むAVNS候補が1つであったことになり、ステップS15に移る。
【0046】
ステップS15では、共通音を最も多く含む1つのAVNS候補を対象コードに対するAVNSとして決定するとともに、決定に係るAVNSを指示するスケールデータASDを前述したと同様にして記憶部7Pに書き込む。
【0047】
ステップS17またはS18の判定結果が否定的(N)であった(共通音がないか、あってもそれを含むAVNS候補がなかった)とき、あるいはステップS19の判定結果が肯定的(Y)であった(共通音を最も多く含むAVNS候補が複数あった)ときは、図6のステップS20に移る。
【0048】
ステップS20では、ステップS13での抽出に係る複数のAVNS候補のうちの各AVNS候補毎に該AVNS候補に含まれる前コードの構成音の数と該AVNS候補に含まれる後コードの構成音の数とを検出する。このとき、前コードおよび後コードは、それぞれ記憶部7Rの前コードデータおよび記憶部7Sの後コードデータによって指示される。
【0049】
次に、ステップS21では、ステップS13での抽出に係る複数のAVNS候補のうちに、前コードまたは後コードのいずれかのコードの構成音を含むAVNS候補があるか否かを、ステップS20の検出結果に基づいて判定する。この判定の結果が肯定的(Y)であればステップS22に移り、ステップS13での抽出に係る複数のAVNS候補のうちに、コード構成音を最も多く含むAVNS候補が複数あるか否かを、ステップS20の検出結果に基づいて判定する。
【0050】
1つのAVNS候補がコード構成音を含む態様としては、(a)前コードの構成音のみを含むもの、(b)後コードの構成音のみを含むもの、(c)前コードおよび後コードの双方の構成音を含むものがありうる。1つのAVNS候補に含まれるコード構成音数としては、態様(a)では前コードについて含まれる構成音数を採用し、態様(b)では後コードについて含まれる構成音数を採用し、態様(c)では前後のコードについて含まれる構成音数が等しければその等しい数を採用し、等しくなければ多い方の数(たとえば2音と3音ならば3音)を採用する。このようにして各AVNS候補毎に含まれるコード構成音数を求めた上で、求めたコード構成音数が最も多いAVNS候補が複数あるか否かを、ステップS22で判定する。この判定の結果が否定的(N)であったときは、コード構成音を最も多く含むAVNS候補が1つであったことになり、ステップS15に移る。
【0051】
ステップS15では、コード構成音を最も多く含む1つのAVNS候補を対象コードに対するAVNSとして決定し、決定に係るAVNSを指示するスケールデータASDを前述したと同様にして記憶部7Pに書き込む。
【0052】
ステップS21の判定結果が否定的(N)であった(前コードまたは後コードのいずれかのコードの構成音を含むAVNS候補がなかった)とき、あるいはステップS22の判定結果が否定的(N)であった(コード構成音を最も多く含むAVNS候補が複数あった)ときは、ステップS23に移る。
【0053】
ステップS21からステップS23に移行した場合には、ステップS23において、ステップS13での抽出に係る複数のAVNS候補のうちから、調の音階音を最も多く含む1つのAVNS候補を選択する。また、ステップS22からステップS23に移行した場合には、ステップS23において、ステップS22での判定に係る複数のAVNS候補のうちから、調の音階音を最も多く含む1つのAVNS候補を選択する。いずれの場合にも、調は、記憶部7Tの調データによって指示される。AVNS候補の選択の後、ステップS23では、選択に係る1つのAVNS候補を対象コードに対するAVNSとして決定するとともに、決定に係るAVNSを指示するスケールデータASDを対象コードデータに対応して記憶部7Pに書き込む。
【0054】
ステップS23において、AVNS候補を選択する際には、調の音階音以外の要素を考慮して選択を行うようにしてもよい。たとえば、すでにコード進行に対応するメロディが存在する場合には、対象コードの区間における該メロディの構成音をより多く含むAVNS候補を選択してもよい。また、前コードおよび後コードのうち発音時間が長い方のコードの構成音を含むAVNS候補を選択してもよい。さらに、ユーザの音楽的好みを反映できるようにするため、ユーザが前コードの構成音を含むAVNS候補または後コードの構成音を含むAVNS候補のいずれを選択するか指定できるようにしてもよい。
【0055】
ステップS15またはS23の処理が終わったときは、ステップS24に移り、記憶部7PにAVNSを決定すべき次のコードがあるか否かを判定する。たとえば、ステップS12でコード進行の先頭のコードを対象コードとした後、初めてステップS24に移行したときは、次のコードがあるので、ステップS24の判定結果が肯定的(Y)となり、ステップS25に移る。
【0056】
ステップS25では、対象コードを次のコードに設定する。そして、ステップS12に戻り、前述したと同様にしてコード進行から対象コード、前コードおよび後コードを取得する。たとえば、対象コードが2番目のコード(先頭コードの次のコード)であったときは、記憶部7Q,7R,7Sにはそれぞれ先頭コード、2番目のコード、3番目のコードがセットされる。ステップS12の後は、前述したと同様にしてステップS13以降の処理を行う。
【0057】
上記のようにしてコード進行を構成するコードについて順次にAVNSを決定して行くと、やがてステップS25ではコード進行の最後のコードを対象コードとする。そして、ステップS12に戻り、記憶部7Q,7R,7Sにはそれぞれ最後のコード、最後のコードの直前のコード、調のトニックコードをセットする。次に、ステップS13以降の処理を行ない、ステップS15またはS23において、最後のコードに対するAVNSを決定するとともに、決定に係るAVNSを指示するスケールデータASDを前述したと同様にして記憶部7Pに書き込む。この後、ステップS24で次のコードがあるか否かを判定すると、判定結果が否定的(N)となり、本処理を終了する。
【0058】
このように、本前後コードに基づいたAVNS決定処理によれば、コード進行を構成する各コード毎に該コードに適合したAVNSを自動的に決定することができる。このようなAVNS決定の具体例として例1〜3を順次に説明する。
【0059】
〔例1〕コード進行がCメジャー調のB♭,F,E♭であり、対象コードがFである場合、AVNS候補は、
アイオニアン・スケール:F,G,A,B♭,C,D,E
リディアン・スケール:F,G,A,B,C,D,E
となり、前後コードの構成音は、
前コードB♭:B♭,D,F
後コードE♭:E♭,G,B♭
となる。ここで、共通音はB♭となり、共通音B♭を含むAVNS候補はアイオニアン・スケール1つとなる。したがって、アイオニアン・スケールが対象コードFに対するAVNSとして決定される。
【0060】
〔例2〕コード進行がCメジャー調のB♭,F,Cであり、対象コードがFである場合、AVNS候補は、
アイオニアン・スケール:F,G,A,B♭,C,D,E
リディアン・スケール:F,G,A,B,C,D,E
となり、前後コードの構成音は、
前コードB♭:B♭,D,F
後コードC:C,E,G
となる。ここで、共通音はない。アイオニアン・スケールに含まれる前コードB♭の構成音は、B♭,D,Fの3音であり、アイオニアン・スケールに含まれる後コードCの構成音は、C,E,Gの3音である。また、リディアン・スケールに含まれる前コードB♭の構成音は、D,Fの2音であり、リディアン・スケールに含まれる後コードCの構成音は、C,E,Gの3音である。したがって、コード構成音を最も多く含むAVNS候補は、アイオニアン・スケールおよびリディアン・スケールの2つとなり、これらのスケール候補のうち調の音階音を最も多く含むAVNS候補は、Cメジャー調の音階音C,D,E,F,G,A,Bをすべて含むリディアン・スケールとなる。この結果、リディアン・スケールが対象コードFに対するAVNSとして決定される。
【0061】
〔例3〕コード進行がCメジャー調のB♭,F,Dであり、対象コードがFである場合、AVNS候補は、
アイオニアン・スケール:F,G,A,B♭,C,D,E
リディアン・スケール:F,G,A,B,C,D,E
となり、前後コードの構成音は、
前コードB♭:B♭,D,F
後コードD:D,F♯,A
となる。ここで、共通音はDとなり、共通音Dを含むAVNS候補は、アイオニアン・スケールおよびリディアン・スケールとなる。アイオニアン・スケールに含まれる前コードB♭の構成音は、B♭,D,Fの3音であり、アイオニアン・スケールに含まれる後コードDの構成音は、D,Aの2音である。また、リディアン・スケールに含まれる前コードB♭の構成音は、D,Fの2音であり、リディアン・スケールに含まれる後コードDの構成音は、D,Aの2音となる。したがって、コード構成音を最も多く含むAVNS候補は、アイオニアン・スケール1つとなり、アイオニアン・スケールが対象コードFに対するAVNSとして決定される。
【0062】
本前後コードに基づいたAVNS決定処理は、次の(イ)〜(ト)のような変更を加えて実施してもよい。
【0063】
(イ)調データとともにコード進行データを取得するようにしたが、調データを取得せず、コード進行データのみを取得し、この後コード進行データに基づいて調を自動検出してもよい。この場合、部分的な転調を検出する必要はなく、コード進行全体を支配する調を検出すればよい。このコード進行全体の調検出は公知の技術であり、部分的な転調検出に比べて容易である。また、取得するコード進行を所定調(たとえばCメジャー調)のみに限定したり、あるいは「調の音階音を最も多く含むAVNS候補を対象コードに対するAVNSとする」というステップを省略したりすれば、調データを与えなくてよい。
【0064】
(ロ)図4に示したAVNSテーブルにおいて、ダイアトニックコードにおけるスケールのみを記憶するようにしたが、ノンダイアトニックコードにおけるスケールをも記憶するようにしてもよい。また、AVNSテーブルの記憶データ形式は、図4に示したものに限らない。
【0065】
(ハ)前後コードに共通の構成音を含む1または複数のAVNS候補を検出する処理(ステップS16〜S19の処理)の後、前後コードのうちの少なくとも一方のコードの構成音を最も多く含む1または複数のAVNS候補を検出する処理(ステップS20〜S22の処理)を行う例を示したが、これらの処理の順序を逆にしてもよく、あるいはいずれか一方の処理のみを行うようにしてもよい。また、必ず両方の処理を行ない、異なる結果が出た場合は、いずれか一方の処理の結果を優先的に採用してもよいし、ランダムに採用してもよい。
【0066】
(ニ)対象コードに関しては、1つ前のコードおよび1つ後のコードを参照するのみならず、2つ前のコードおよび2つ後のコードをも参照してAVNSの決定を行うようにしてもよい。たとえば、前後コードのみの参照では複数のAVNS候補が残ってしまう場合に、2つ前のコードおよび2つ後のコードをも参照し、これらのコード構成音をも含むAVNSを採用するようにすればよい。さらには、3つ以上前のコードおよび3つ以上後のコードをも参照してもよい。
【0067】
(ホ)コード進行の先頭および最後のコードについては、調のトニックコードをそれぞれ仮の前コードおよび仮の後コードとして用いてAVNS決定を行なったが、仮の前コードおよび仮の後コードを設定せず、前コードおよび後コードを用いない例外的なAVNS決定処理を行うようにしてもよい。
【0068】
(ヘ)各AVNS候補毎に該AVNS候補に含まれるコード構成音の数を求める際に、含まれるコード構成音数が前コードと後コードとで等しければその等しい数を採用し、等しくなければ多い方の数を採用したが、前コードおよび後コードの双方について含まれるコード構成音数を考慮した値(たとえば単純加算値、重み付け加算値等)を採用してもよい。たとえば、あるAVNS候補に含まれる前コードおよび後コード構成音数がそれぞれ2音および3音であれば含まれるコード構成音数を5とすることができ、他のAVNS候補についても同様にしてコード構成音数を求めることができる。そして、コード構成音数が多い方のAVNS候補を対象コードに対するAVNSとして決定すればよい。
【0069】
(ト)AVNS決定処理において、対象コードに対して提示された複数のAVNS候補のいずれにも前コードおよび後コードの構成音が含まれている場合、前コードまたは後コードのいずれか一方のコードについて含まれるコード構成音数が等しいときは、他方のコードについて含まれるコード構成音数が多い方のAVNS候補を対象コードに対するAVNSとして決定してもよい。このようにすると、前後コードとのつながりがより良いAVNS候補を対象コードに対するAVNSとして決定することができる。
【0070】
このように、本実施の形態では、対象コードのAVNSを、前後コードに基づいて決定することを基本としながら、所定の条件の下で、これを修正して、より自然なAVNSが得られるようにしている。このような修正を施したのは、対象コードのAVNSを、いかなる条件の下でも、その前後コードに基づいて決定するようにすると、得られたAVNSが前後コードに依存し過ぎる場合があるからである。たとえば、F,Dm,A7というコード進行の場合に、前記前後コードに基づいたAVNS決定処理(図5および図6)によってAVNSを決定すると、C,D,E,F,G,A,B,C#というスケールが得られ、“C”に“#”が付いてしまう。しかし、上記コード進行では、前コードがダイアトニック・コードであるので、元調になっていると判断し、対象コード(Dm)のAVNSは、ダイアトニック・ノート・スケールに決定する方が好ましい。この場合、すなわち対象コードがダイアトニック・コードの場合、本実施の形態では、前コードに基づいて、対象コードのAVNSをダイアトニック・ノート・スケールに決定している。
【0071】
なお、上述した実施の形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムまたは装置に供給し、そのシステムまたは装置のコンピュータ(またはCPU5やMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【0072】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0073】
プログラムコードを供給するための記憶媒体としては、たとえば、前記フロッピディスク20、ハードディスク、光ディスク、光磁気ディスク、CD−ROM21、CD−R、磁気テープ、不揮発性のメモリカード、ROM6などを用いることができる。また、他のMIDI機器100や通信ネットワーク101を介してサーバコンピュータ102からプログラムコードが供給されるようにしてもよい。
【0074】
また、コンピュータが読み出したプログラムコードを実行することにより、上述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOSなどが実際の処理の一部または全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【0075】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU5などが実際の処理の一部または全部を行い、その処理によって上述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【0076】
【発明の効果】
以上説明したように、本発明によれば、対象コードのアベイラブル・ノート・スケールを、前後コードに基づいて決定することを基本としながら、所定の条件の下で、これを修正するようにしたので、より自然なアベイラブル・ノート・スケールを得ることができる。
【図面の簡単な説明】
【図1】 本発明の一実施の形態に係るAVNS決定装置の概略構成を示すブロック図である。
【図2】 図1のAVNS決定装置、特にCPUが実行するAVNS決定処理の手順を示すフローチャートである。
【図3】 前後コードに基づいたAVNS決定処理の概要を説明するための図である。
【図4】 AVNSテーブルの一例を示す図である。
【図5】 図2の前後コードに基づいたAVNS決定処理の手順を示すフローチャートである。
【図6】 図5の前後コードに基づいたAVNS決定処理の続きの手順を示すフローチャートである。
【符号の説明】
5 CPU(入力手段、判別手段、決定手段)
7 RAM(入力手段)
11 HDD(入力手段)
13 MIDII/F(入力手段)
14 通信I/F(入力手段)
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an available note scale determining apparatus and a storage medium for determining an available note scale suitable for each chord constituting an input chord progression.
[0002]
[Prior art]
Conventionally, as a melody generating device, desired key information and desired chord information are input, an available note scale is detected based on the key information and chord information, and a sound in the AVNS related to the detection is melodies. The same applicant as this application has proposed that a melody is generated by selecting it as a sound (Japanese Patent Application No. 10-166302). According to such a melody generating device, a natural melody suitable for non-diatonic chords can be generated.
[0003]
[Problems to be solved by the invention]
In general, the available note scale is not limited to one corresponding to one key and one chord, and there may be a plurality of available note scales. In the above-described prior art, one available note scale is detected each time one chord is given for each key in the available note scale detection process, so one key and one chord are supported. When there are a plurality of available note scales, an available note scale that is not preferable for melody generation may be detected among the plurality of AVNS. For this reason, when a melody is generated based on AVNS related to detection, the suitability of the melody with respect to chord progression may not be good.
[0004]
Although it is possible to detect the available note scale based on the key and the chord, it is difficult to automatically detect the key from the chord progression. In other words, if the chord progression is typical, the key can be automatically detected relatively easily. However, if the key is transposed in the middle of the chord progression, it is not easy to automatically detect the key modulation. If the chord progression is not correct, it is difficult to detect the modulation. For this reason, it is difficult to determine an available note scale suitable for the chord.
[0005]
The present invention has been made paying attention to this point, and provides an available note scale determining device and a storage medium capable of determining an available note scale suitable for a chord without detecting modulation. For the purpose.
[0006]
[Means for Solving the Problems]
[0010]
  To achieve the above objective,Claim1The available note scale determination device described inData and key dataInput means for inputting, and the input chord progressionThe chord progression data based on the data and the key dataDiscriminating means for discriminating whether the code constituting the code is a diatonic code or a non-diatonic codeAnd saidInput chord progressiondataThe available note scale of the target code for which the available note scale is determinedDecideDetermination methodBecauseThe determination unit determines that the target code is a diatonic code.If it is, the discrimination means is located immediately before the target code.When the immediately preceding chord is identified as a diatonic chord, the available note scale of that chord is determined as the diatonic note scale.The available note scale of the target code is determined by the first determination methodAndBy the discrimination means,The immediately preceding code is identified as a non-diatonic codeLocated immediately after the target codeImmediately after codeIs daDetermined as Iatonic codeWhenThe available note scale of the target code is determined to be a diatonic note scale.SaidA first determination method and an available note scale of the target code as the immediately preceding code and the immediately following code;Each component soundA second determination method that is determined based on the code is randomly selected, and the available note scale of the target code is determined using the selected determination methodWhen both the immediately preceding chord and the immediately following chord are determined to be non-diatonic chords by the discriminating unit, the available note scale of the target chord is determined by the second determining method, and the discrimination is performed. When the object code is determined to be a non-diatonic code by means, the available note scale of the object code is determined by the second determination method.It is characterized by that.
  Here, there is a case where the immediately preceding chord or the immediately following chord does not exist. In this case, for example, if a key is attached to the input chord progression, the tonic chord of this key may be used as the substitute chord. (Hereinafter, the same applies even if the claims change.)
[0014]
  Claim2The storage medium described inEnterForced chord progressionThe chord progression data based on the data and the key dataDiscriminating module that discriminates whether the code that constitutes a diatonic code or non-diatonic codeAnd saidInput chord progressiondataThe available note scale of the target code for which the available note scale is determinedDecideDecision module to be determinedBecauseThe target code is determined as a diatonic code by the determination module.The identification code is located immediately before the target code.When the immediately preceding chord is identified as a diatonic chord, the available note scale of that chord is determined as the diatonic note scale.The available note scale of the target code is determined by the first determination methodAndBy the discrimination module,The immediately preceding code is identified as a non-diatonic codeLocated immediately after the target codeImmediately after codeIs daDetermined as Iatonic codeWhenThe available note scale of the target code is determined to be a diatonic note scale.SaidA first determination method and an available note scale of the target code as the immediately preceding code and the immediately following code;Each component soundA second determination method that is determined based on the code is randomly selected, and the available note scale of the target code is determined using the selected determination methodWhen both the immediately preceding chord and the immediately following chord are determined to be non-diatonic chords by the discriminating module, the available note scale of the target chord is determined by the second determining method, and the discrimination is performed. When the module determines that the target code is a non-diatonic code, a program that can be realized by a computer is stored, including determining the available note scale of the target code by the second determination method.It is characterized by that.
[0015]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
[0016]
FIG. 1 is a block diagram showing a schematic configuration of an available note scale (hereinafter referred to as “AVNS”) determination apparatus according to an embodiment of the present invention.
[0017]
As shown in the figure, the AVNS determination device of this embodiment includes a keyboard device 1 for inputting pitch information, a panel switch 2 having a plurality of switches for inputting various information, and a keyboard device. The key pressing detection circuit 3 that detects the key pressing state of each key 1, the switch detection circuit 4 that detects the pressing state of each switch of the panel switch 2, the CPU 5 that controls the entire apparatus, and the CPU 5 execute ROM 6 for storing control programs and various table data, RAM 7 for temporarily storing performance data, various input information, calculation results, etc., timer 8 for measuring interrupt times and various times in timer interrupt processing, For displaying information etc., for example, equipped with large liquid crystal display (LCD) or CRT (Cathode Ray Tube) display and light emitting diode (LED) A display device 9, a floppy disk drive (FDD) 10 that drives a floppy disk (FD) 20 as a storage medium, and a hard disk (not shown) that stores various application programs including the control program and various data. A hard disk drive (HDD) 11 for driving and a CD-ROM drive (CD-ROMD) for driving a compact disk-read only memory (CD-ROM) 21 for storing various application programs including the control program and various data. ) 12, a MIDI interface (I / F) 13 for inputting an external MIDI (Musical Instrument Digital Interface) signal and outputting a MIDI signal to the outside, and the communication network 101, for example, a server computer. A communication interface (I / F) 14 for transmitting / receiving data to / from the computer 102, a tone generator circuit 15 for converting performance data input from the keyboard device 1, preset performance data, and the like into musical tone signals, and the tone generator circuit 15 Effect circuit 16 for imparting various effects to the music signal from the sound, and a sound system such as a DAC (Digital-to-Analog Converter), amplifier, speaker, etc. for converting the sound signal from the effect circuit 16 into sound 17.
[0018]
The above components 3 to 16 are connected to each other 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, and a communication network 101 is connected to the communication I / F 14. Are connected to the sound source circuit 15, and a sound system 17 is connected to the effect circuit 16.
[0019]
As described above, the hard disk of the HDD 11 can also store the control program executed by the CPU 5. When the control program is not stored in the ROM 6, the control program is stored in the hard disk and is read into the RAM 7. Thus, the CPU 5 can be caused to perform the same operation as when the control program is stored in the ROM 6. In this way, control programs can be easily added and upgraded.
[0020]
The control program and various data read from the CD-ROM 21 of the CD-ROM drive 12 are stored in the hard disk in the HDD 11. As a result, a new installation or version upgrade of the control program can be easily performed. In addition to the CD-ROM drive 12, a device for using various types of media such as a magneto-optical disk (MO) device may be provided as an external storage device.
[0021]
The MIDII / F 13 is not limited to a dedicated one, and may be configured by a general-purpose interface such as RS-232C, USB (Universal Serial Bus), IEEE 1394 (I Triple 1394), or the like. In this case, data other than MIDI messages may be transmitted and received simultaneously.
[0022]
As described above, the communication I / F 14 is connected to a wired or wireless communication network 101 such as a LAN (Local Area Network), the Internet, or a telephone line, and is connected to the server computer 102 via the communication network 101. Connected. When the above programs and various parameters are not stored in the hard disk in the HDD 11, the communication I / F 14 is used to download programs and parameters from the server computer 102. A computer serving as a client (in this embodiment, an AVNS determination device) transmits a command requesting download of a program and parameters to the server computer 102 via the communication I / F 14 and the communication network 101. Upon receiving this command, the server computer 102 distributes the requested program and parameters to the computer via the communication network 101, and the computer receives these programs and parameters via the communication I / F 14 and receives them in the HDD 11. Downloading is completed by accumulating on the hard disk.
[0023]
In addition, an interface for directly exchanging data with an external computer or the like may be provided.
[0024]
The AVNS determination apparatus according to the present embodiment is constructed on a general-purpose personal computer as can be seen from the above-described configuration, but is not limited to this, and only from the minimum elements that can implement the present invention. You may construct | assemble on the comprised dedicated apparatus, an electronic musical instrument, and a portable communication terminal.
[0025]
The control process executed by the AVNS determination apparatus configured as described above will be first described in outline, and then described in detail with reference to FIGS.
[0026]
  The AVNS determination apparatus according to the present embodiment determines the AVNS of each chord constituting the input chord progression as follows. That is, if a code for which AVNS is to be determined (hereinafter referred to as “target code”) is “Y”, and the code immediately before and after that is “X” and “Z”, respectively,
(1) Y: In the case of a non-diatonic code, Y's AVNS is replaced by its front and rear codes, that is, X andZDetermine based on
(2) Y: In the case of diatonic chords,
  (A) In the case of X: diatonic chord; Z: diatonic chord, AVNS of Y is determined as diatonic note scale
  (B) In the case of X: diatonic chord; Z: non-diatonic chord, the AVNS of Y is determined as the diatonic note scale.
  (C) In the case of X: non-diatonic chord; Z: diatonic chord, AVNS of Y is determined to be a diatonic note scale, or determined in the same manner as in (1) above.
  (D) In the case of X: non-diatonic code; Z: non-diatonic code, Y AVNS is determined by the same method as in (1) above.
[0027]
Here, the diatonic note scale is a scale composed only of a scale tone, that is, a diatonic note.
[0028]
Next, this control process will be described in detail.
[0029]
FIG. 2 is a flowchart showing the procedure of the AVNS determination process executed by the AVNS determination apparatus according to the present embodiment, particularly the CPU 5. The AVNS determination process shown in the figure is a rewrite of each process described in the above outline into a flowchart format.
[0030]
That is, the process of step S2 corresponds to the process of (1), the process of step S4 corresponds to the processes of (2) (a) and (b), and the process of step S6 is the above (2) (c ), And the process in step S7 corresponds to the processes (2) and (d).
[0031]
Note that the process of step S6 is merely a specific example of the processes (2) and (c). That is, in step S6, it is determined at random whether AVNS is determined using the AVNS determination process based on the preceding and following codes or the diatonic note scale, and the determined process is performed. However, the present invention is not limited to this, and either one may be fixedly determined and the determined process may be performed.
[0032]
Next, the processes of steps S2 and S7 (and a part of step S6), that is, the process of determining the AVNS of the target code based on the code located immediately before and immediately after it (AVNS determination process based on the preceding and following codes) explain.
[0033]
First, an overview of AVNS determination processing based on the preceding and following codes will be described with reference to FIG. The storage units 7P, 7Q, 7R, 7S, and 7T all belong to the RAM 7 of FIG. 1, and store chord progression data, target code data, pre-code data, post-code data, and key data, respectively. The chord progression data includes, for example, a plurality of chord data that respectively designate a plurality of chords constituting the chord progression for one song, and is acquired together with the tone data that designates the tone of the song.
[0034]
The key data and chord progression data can be obtained by, for example, a method in which the user selects chord progression data with desired tone data from a chord progression database provided in the ROM 6 or the HDD 11, and the user uses the keyboard 1, the panel switch 2, or the like. A method of inputting desired tone data and chord progression data, a method of automatically generating chord progression data with tone data in accordance with a user instruction, and the like can be used. Of the key data and chord progression data acquired by any method, the key data is stored in the storage unit 7T, and the chord progression data is stored in the storage unit 7P. The storage unit 7P can store scale data indicating AVNS corresponding to each piece of code data constituting the chord progression data.
[0035]
In the AVNS determination processing 120 based on the preceding and following codes, an AVNS for the code indicated by the code data is determined for each code data constituting the chord progression data stored in the storage unit 7P, and the AVNS related to the determination is determined for each code data Is stored in the storage unit 7P in association with the scale data ASD. In determining AVNS, code data for which AVNS is to be determined is read from the storage unit 7P and stored as target code data in the storage unit 7Q. Further, the code data immediately before and immediately after the target code data are read from the storage unit 7P and stored in the storage units 7R and 7S as the previous code data and the subsequent code data, respectively. However, when AVNS is determined for the first chord of the chord progression, there is no previous chord data, so tonic code data representing the tonic code of the key indicated by the key data of the memory unit 7T is stored in the memory unit 7R. When the AVNS is determined for the last chord of the chord progression, there is no subsequent chord data, so that the tonic code data representing the key tonic chord is stored in the storage unit 7S as in the case of the previous chord data.
[0036]
The AVNS table 61 represents one or a plurality of AVNS for each one or a plurality of code types as shown in FIG. 4 as an example, and is stored in the ROM 6 or the HDD 11, for example. FIG. 4 shows the key (major or minor) used for chords and AVNS. In the example of FIG. 4, only the scale in the diatonic code is shown. One code type may correspond to a plurality of scales. This means that even if one code type is used, the scale is different if the code function is different. For example, in C major tone, major (M) is used for tonic (C) and subdominant (F), and the scale at this time becomes an ionian scale corresponding to tonic, and a redian scale corresponding to subdominant. Become.
[0037]
In determining AVNS, AVNS candidates corresponding to the target code are extracted with reference to the AVNS table 61 for each target code indicated by the target code data in the storage unit 7Q. Then, if there is only one AVNS candidate for extraction, such as “Locrian scale” when “m7 ♭ 5”, that one AVNS candidate is determined as an AVNS for the target code, and “M” If there are a plurality of codes such as “Ionian scale, Ridian scale”, reference is made to the previous chord data of the storage unit 7R and the rear chord data of the storage unit 7S, and the constituent sound of at least one of the front chord and the rear chord is included One AVNS candidate is detected from among a plurality of AVNS candidates related to extraction, and one AVNS candidate related to this detection is determined as an AVNS for the target code. Further, a plurality of AVNS candidates including a constituent sound of at least one of the preceding code and the following code are detected from the plurality of AVNS candidates related to extraction, and one of the plurality of AVNS candidates related to the detection is detected. An AVNS candidate is selected, and one AVNS candidate related to this selection is determined as an AVNS for the target code.
[0038]
5 and 6 are flowcharts showing the procedure of AVNS determination processing based on the preceding and following codes.
[0039]
In FIG. 5, first, in step S11, the chord progression is acquired together with the key data. That is, key data and chord progression data are acquired by any of the acquisition methods described above, and key data is stored in the storage unit 7T and chord progression data is stored in the storage unit 7P.
[0040]
Next, in step S12, the target chord, the previous chord, and the rear chord are acquired from the chord progression. That is, the target code data is read from the storage unit 7P and written to the storage unit 7Q, and the previous code data and the subsequent code data are written to the storage units 7R and 7S, respectively. When the first chord of the chord progression is the target chord, the tonic code data representing the key tonic code is written as the previous chord data in the storage unit 7R, the next chord data of the target chord is read from the storage unit 7P, and the post code Data is written in the storage unit 7S. Thereafter, the process proceeds to step S13.
[0041]
In step S13, AVNS candidates corresponding to the target code are extracted from the AVNS table 61. That is, the AVNS candidate corresponding to the target code indicated by the target code data in the storage unit 7Q is read from the AVNS table 61 and set in a candidate register (not shown) in the RAM 7. There may be one AVNS candidate or a plurality of AVNS candidates set at this time.
[0042]
Next, in step S14, it is determined whether there are a plurality of AVNS candidates in the candidate register. If the result of this determination is negative (N), it means that there is one AVNS candidate, and the routine goes to Step S15 in FIG.
[0043]
In step S15, one AVNS candidate in the candidate register is determined as an AVNS for the target code. Then, the scale data ASD instructing the AVNS related to the determination is written in the storage unit 7P corresponding to the target code data.
[0044]
On the other hand, when the determination result of step S14 is affirmative (Y), the process proceeds to step S16, and a common sound common to the constituent sound of the previous chord and the constituent sound of the rear chord is detected. That is, a common sound is detected from the constituent sound of the chord indicated by the previous chord data in the storage unit 7R and the constituent sound of the chord instructed by the post chord data of the storage unit 7S. For example, if the constituent sounds of the previous chord are B ♭, D, F and the constituent sounds of the rear chord are E ♭, G, B ♭, the common sound is B ♭.
[0045]
Next, in step S17, it is determined whether there is a common sound. If the result of this determination is affirmative (Y), the process moves to step S18, and it is determined whether or not there is an AVNS candidate including a common sound among the plurality of AVNS candidates related to extraction in step S13. If the result of this determination is affirmative (Y), the process moves to step S19, and it is determined whether or not there are a plurality of AVNS candidates including the most common sound among the plurality of AVNS candidates related to extraction in step S13. . If the result of this determination is negative (N), it means that there is one AVNS candidate that contains the most common sounds, and the routine goes to Step S15.
[0046]
In step S15, one AVNS candidate that contains the most common sound is determined as the AVNS for the target code, and the scale data ASD that indicates the AVNS related to the determination is written in the storage unit 7P in the same manner as described above.
[0047]
When the determination result of step S17 or S18 is negative (N) (there is no common sound or there is no AVNS candidate including it), or the determination result of step S19 is positive (Y) If there is (a plurality of AVNS candidates including the most common sounds), the process proceeds to step S20 in FIG.
[0048]
In step S20, for each AVNS candidate among the plurality of AVNS candidates related to the extraction in step S13, the number of constituent sounds of the previous code included in the AVNS candidate and the number of constituent sounds of the subsequent code included in the AVNS candidate And detect. At this time, the front code and the back code are indicated by the front code data of the storage unit 7R and the back code data of the storage unit 7S, respectively.
[0049]
Next, in step S21, it is detected in step S20 whether or not there is an AVNS candidate including a constituent sound of either the previous code or the subsequent code among the plurality of AVNS candidates related to the extraction in step S13. Determine based on the results. If the result of this determination is affirmative (Y), the process moves to step S22, and among the plurality of AVNS candidates related to extraction in step S13, whether there are a plurality of AVNS candidates that contain the most chord constituent sounds, The determination is made based on the detection result of step S20.
[0050]
As an aspect in which one AVNS candidate includes a chord constituent sound, (a) only the constituent sound of the previous chord, (b) only the constituent sound of the rear chord, (c) both the front chord and the rear chord There may be one that includes the following sounds. As the number of chord constituent sounds included in one AVNS candidate, the number of constituent sounds included in the preceding chord is adopted in the aspect (a), the number of constituent sounds included in the subsequent chord is adopted in the aspect (b), and the aspect ( In c), if the number of constituent sounds included in the preceding and following chords is equal, the same number is adopted, and if it is not equal, the larger number (for example, three sounds if two and three sounds) is adopted. In this way, after determining the number of chord constituent sounds included for each AVNS candidate, it is determined in step S22 whether or not there are a plurality of AVNS candidates having the largest number of obtained chord constituent sounds. If the result of this determination is negative (N), it means that there is one AVNS candidate that contains the most chord constituent sounds, and the routine goes to Step S15.
[0051]
In step S15, one AVNS candidate that contains the most chord constituent sounds is determined as the AVNS for the target code, and the scale data ASD that indicates the AVNS related to the determination is written in the storage unit 7P in the same manner as described above.
[0052]
The determination result in step S21 is negative (N) (no AVNS candidate including the constituent sound of either the previous chord or the rear chord) or the determination result in step S22 is negative (N) If there is a plurality of AVNS candidates that contain the most chord constituent sounds, the process proceeds to step S23.
[0053]
When the process proceeds from step S21 to step S23, in step S23, one AVNS candidate that includes the largest scale tone is selected from the plurality of AVNS candidates related to the extraction in step S13. When the process proceeds from step S22 to step S23, in step S23, one AVNS candidate that includes the largest scale tone is selected from the plurality of AVNS candidates related to the determination in step S22. In either case, the key is indicated by the key data in the storage unit 7T. After selection of the AVNS candidate, in step S23, one AVNS candidate related to the selection is determined as an AVNS for the target code, and scale data ASD indicating the AVNS related to the determination is stored in the storage unit 7P corresponding to the target code data. Write.
[0054]
In step S23, when selecting an AVNS candidate, the selection may be performed in consideration of elements other than the key scale. For example, if a melody corresponding to chord progression already exists, an AVNS candidate that includes more constituent sounds of the melody in the target chord section may be selected. In addition, an AVNS candidate including a constituent sound of a chord having a longer pronunciation time among the previous chord and the rear chord may be selected. Furthermore, in order to reflect the user's musical preference, the user may be able to specify whether to select an AVNS candidate that includes a constituent sound of the preceding chord or an AVNS candidate that includes the constituent sound of the subsequent chord.
[0055]
When the process of step S15 or S23 is completed, the process proceeds to step S24, and it is determined whether or not there is a next code for determining AVNS in the storage unit 7P. For example, when the first chord of the chord progression is set as the target chord in step S12 and the process proceeds to step S24 for the first time, the next chord is present, so the determination result in step S24 is affirmative (Y), and the process proceeds to step S25. Move.
[0056]
In step S25, the target code is set to the next code. Then, the process returns to step S12, and the target code, the previous code, and the subsequent code are acquired from the chord progression in the same manner as described above. For example, when the target code is the second code (the code next to the top code), the top code, the second code, and the third code are set in the storage units 7Q, 7R, and 7S, respectively. After step S12, the processing after step S13 is performed in the same manner as described above.
[0057]
When the AVNS is sequentially determined for the chords constituting the chord progression as described above, the last chord of the chord progression is finally set as the target chord in step S25. Then, returning to step S12, the last chord, the chord immediately before the last chord, and the key tonic chord are set in the storage units 7Q, 7R, and 7S, respectively. Next, the processing after step S13 is performed. In step S15 or S23, the AVNS for the last code is determined, and the scale data ASD indicating the AVNS related to the determination is written in the storage unit 7P in the same manner as described above. Thereafter, when it is determined in step S24 whether or not there is the next code, the determination result is negative (N), and the process is terminated.
[0058]
As described above, according to the AVNS determination process based on the preceding and following chords, it is possible to automatically determine an AVNS suitable for each chord constituting each chord progression. Examples 1 to 3 will be sequentially described as specific examples of such AVNS determination.
[0059]
[Example 1] When the chord progression is B ♭, F, E ♭ in C major, and the target chord is F, the AVNS candidate is
Ionian scale: F, G, A, B ♭, C, D, E
Lydian scale: F, G, A, B, C, D, E
And the front and rear chords are
Previous code B ♭: B ♭, D, F
Rear code E ♭: E ♭, G, B ♭
It becomes. Here, the common sound is B ♭, and the AVNS candidate including the common sound B ♭ is one ionian scale. Therefore, the ionian scale is determined as AVNS for the target code F.
[0060]
[Example 2] When the chord progression is B ♭, F, C in C major tone and the target chord is F, the AVNS candidate is
Ionian scale: F, G, A, B ♭, C, D, E
Lydian scale: F, G, A, B, C, D, E
And the front and rear chords are
Previous code B ♭: B ♭, D, F
Rear code C: C, E, G
It becomes. Here, there is no common sound. The constituent sound of the front chord B ♭ included in the ionian scale is three sounds of B ♭, D, and F, and the constituent sound of the post chord C included in the ionian scale is three sounds of C, E, and G. is there. In addition, the constituent sound of the previous chord B ♭ included in the Lydian scale is two sounds of D and F, and the constituent sound of the rear chord C included in the Lydian scale is three sounds of C, E, and G. . Therefore, there are two AVNS candidates that contain the most chord constituent sounds: the ionian scale and the redian scale, and among these scale candidates, the AVNS candidate that contains the most key scales is the C major scale C , D, E, F, G, A, B. As a result, the redian scale is determined as AVNS for the target code F.
[0061]
[Example 3] When the chord progression is C major B ♭, F, D and the target chord is F, the AVNS candidate is
Ionian scale: F, G, A, B ♭, C, D, E
Lydian scale: F, G, A, B, C, D, E
And the front and rear chords are
Previous code B ♭: B ♭, D, F
Rear code D: D, F #, A
It becomes. Here, the common sound is D, and AVNS candidates including the common sound D are the ionian scale and the redian scale. The constituent sounds of the front chord B ♭ included in the ionian scale are the three sounds B ♭, D, and F, and the constituent sounds of the post chord D included in the ionian scale are the two sounds D and A. In addition, the constituent sounds of the front chord B 含 ま included in the Lydian scale are two sounds of D and F, and the constituent sounds of the post chord D included in the Lydian scale are two sounds of D and A. Therefore, the AVNS candidate including the most chord constituent sounds is one ionian scale, and the ionian scale is determined as the AVNS for the target code F.
[0062]
The AVNS determination process based on the preceding and following codes may be performed with the following changes (a) to (g).
[0063]
(B) Although chord progression data is obtained together with tone data, only chord progression data may be obtained without obtaining tone data, and thereafter the tone may be automatically detected based on the chord progression data. In this case, it is not necessary to detect a partial modulation, and a key that dominates the entire chord progression may be detected. The key detection of the entire chord progression is a known technique, and is easier than the partial key detection. Further, if the chord progression to be acquired is limited to only a predetermined key (for example, C major key), or the step of “making an AVNS candidate including the most key scale tone an AVNS for the target chord” is omitted, It is not necessary to give key data.
[0064]
(B) In the AVNS table shown in FIG. 4, only the scale in the diatonic code is stored, but the scale in the non-diatonic code may also be stored. Also, the storage data format of the AVNS table is not limited to that shown in FIG.
[0065]
(C) After the process of detecting one or a plurality of AVNS candidates including common constituent sounds in the preceding and following chords (the process of steps S16 to S19), 1 that contains the most constituent sounds of at least one chord of the preceding and following chords Alternatively, the example of performing the process of detecting a plurality of AVNS candidates (the process of steps S20 to S22) has been shown, but the order of these processes may be reversed, or only one of the processes may be performed. Good. If both processes are always performed and different results are obtained, the result of one of the processes may be preferentially employed or may be employed randomly.
[0066]
(D) Regarding the target code, the AVNS is determined by referring not only to the previous code and the next code but also to the previous code and the next code. Also good. For example, when a plurality of AVNS candidates remain by referring to only the preceding and following chords, the AVNS including the chord constituent sounds should be adopted by referring to the two preceding chords and the second chord. That's fine. Furthermore, three or more previous codes and three or more subsequent codes may be referred to.
[0067]
(E) For the first and last chords in the chord progression, the AVNS decision was made using the key tonic chord as the temporary pre-chord and temporary post-chord, respectively. Alternatively, an exceptional AVNS determination process that does not use the preceding code and the following code may be performed.
[0068]
(F) When determining the number of chord constituent sounds included in each AVNS candidate for each AVNS candidate, if the number of chord constituent sounds included is equal between the preceding chord and the succeeding chord, the same number is adopted. Although the larger number is adopted, a value (for example, a simple addition value, a weighted addition value, etc.) in consideration of the number of chord constituent sounds included in both the front chord and the rear chord may be adopted. For example, if the number of front and rear chords included in one AVNS candidate is 2 and 3, respectively, the number of chords included can be set to 5, and other AVNS candidates can be similarly chorded. The number of constituent sounds can be obtained. Then, the AVNS candidate having the larger number of chord constituent sounds may be determined as the AVNS for the target chord.
[0069]
(G) In the AVNS determination process, when any of a plurality of AVNS candidates presented for the target code includes a constituent sound of the preceding code and the following code, either the preceding code or the following code May be determined as the AVNS for the target chord with the larger number of chord constituent sounds included for the other chord. In this way, an AVNS candidate having a better connection with the preceding and following codes can be determined as an AVNS for the target code.
[0070]
As described above, in the present embodiment, the AVNS of the target code is basically determined based on the preceding and following codes, and is corrected under a predetermined condition so that a more natural AVNS can be obtained. I have to. The reason for this modification is that if the AVNS of the target code is determined based on the code before and after it under any condition, the obtained AVNS may be too dependent on the code before and after. is there. For example, in the case of a chord progression of F, Dm, A7, if AVNS is determined by the AVNS determination process (FIGS. 5 and 6) based on the preceding and following chords, C, D, E, F, G, A, B, A scale of C # is obtained, and “#” is appended to “C”. However, in the above chord progression, since the previous chord is a diatonic chord, it is determined that the chord is in tone, and the AVNS of the target chord (Dm) is preferably determined to be a diatonic note scale. In this case, that is, when the target chord is a diatonic chord, in the present embodiment, the AVNS of the target chord is determined as a diatonic note scale based on the previous chord.
[0071]
A program in which a storage medium storing software program codes for realizing the functions of the above-described embodiments is supplied to a system or apparatus, and a computer (or CPU 5 or MPU) of the system or apparatus is stored in the storage medium. It goes without saying that the object of the present invention can also be achieved by reading and executing the code.
[0072]
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.
[0073]
As the storage medium for supplying the program code, for example, the floppy disk 20, hard disk, optical disk, magneto-optical disk, CD-ROM 21, CD-R, magnetic tape, nonvolatile memory card, ROM 6 or the like may be used. it can. Further, the program code may be supplied from the server computer 102 via another MIDI device 100 or the communication network 101.
[0074]
Further, by executing the program code read out by the computer, not only the functions of the above-described embodiments are realized, but also the OS running on the computer based on the instruction of the program code performs the actual processing. It goes without saying that a case where the functions of the above-described embodiment are realized by performing part or all of the above and the processing thereof is included.
[0075]
Further, after the program code read from the storage medium is written to a memory provided in a function expansion board inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. It goes without saying that the case where the CPU 5 or the like provided in the board or the function expansion unit performs part or all of the actual processing and the functions of the above-described embodiments are realized by the processing.
[0076]
【The invention's effect】
As described above, according to the present invention, the available note scale of the target chord is determined based on the preceding and following chords, and this is corrected under predetermined conditions. , You can get a more natural available note scale.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a schematic configuration of an AVNS determination apparatus according to an embodiment of the present invention.
FIG. 2 is a flowchart showing a procedure of AVNS determination processing executed by the AVNS determination apparatus of FIG. 1, particularly a CPU;
FIG. 3 is a diagram for explaining an overview of AVNS determination processing based on preceding and following codes.
FIG. 4 is a diagram illustrating an example of an AVNS table.
5 is a flowchart showing a procedure of AVNS determination processing based on the front and rear codes of FIG.
6 is a flowchart showing a continuation procedure of AVNS determination processing based on the front and rear codes of FIG. 5. FIG.
[Explanation of symbols]
5 CPU (input means, discrimination means, determination means)
7 RAM (input means)
11 HDD (input means)
13 MIDII / F (input means)
14 Communication I / F (input means)

Claims (2)

コード進行データおよび調データを入力する入力手段と、
前記入力されたコード進行データおよび調データに基づいて、該コード進行データを構成するコードがダイアトニック・コードであるか、ノンダイアトニック・コードであるかを判別する判別手段と、
前記入力されたコード進行データ中、アベイラブル・ノート・スケールを決定する対象となる対象コードのアベイラブル・ノート・スケールを決定する決定手段であって、
前記判別手段によって、前記対象コードがダイアトニック・コードと判別された場合、
前記判別手段によって、前記対象コードの直前に位置する直前コードがダイアトニック・コードと判別されたときには、当該対象コードのアベイラブル・ノート・スケールをダイアトニック・ノート・スケールに決定する第1の決定方法により、当該対象コードのアベイラブル・ノート・スケールを決定し、
前記判別手段によって、前記直前コードがノンダイアトニック・コードと判別され、前記対象コードの直後に位置する直後コードがダイアトニック・コードと判別されたときには、当該対象コードのアベイラブル・ノート・スケールをダイアトニック・ノート・スケールに決定する前記第1の決定方法と、当該対象コードのアベイラブル・ノート・スケールを前記直前コードおよび前記直後コードの各構成音に基づいて決定する第2の決定方法とをランダムに選択し、該選択された決定方法を用いて当該対象コードのアベイラブル・ノート・スケールを決定し、
前記判別手段によって、前記直前コードおよび前記直後コードの双方がノンダイアトニック・コードと判別されたときには、当該対象コードのアベイラブル・ノート・スケールを前記第2の決定方法により決定し、
前記判別手段によって、前記対象コードがノンダイアトニック・コードと判別された場合、当該対象コードのアベイラブル・ノート・スケールを前記第2の決定方法により決定するものと
を有することを特徴とするアベイラブル・ノート・スケール決定装置。
Input means for inputting chord progression data and key data ;
A discriminating means for discriminating whether the chord constituting the chord progression data is a diatonic code or a non-diatonic chord based on the inputted chord progression data and key data ;
Wherein the input code progression data, a determination means for determine the Abeiraburu Notes scale object code for which you want to determine the Abeiraburu notes scale
When the target code is determined as a diatonic code by the determination means ,
By said determining means, when the immediately preceding code located immediately before the object code is determined to diatonic code first determining method of determining a Abeiraburu note scale of the target code diatonic note scale To determine the available note scale for the subject code ,
By said discriminating means, the immediately preceding code is judged non diatonic code, when it is judged immediately after the code Hurghada Iatonikku code located immediately after the target code, Abeiraburu Notes of the subject code It said first and determination method, a second method of determining of determining based on the Abeiraburu note scale of the target code in the immediately preceding code and each component notes immediately after the code that determines the scale diatonic note scale And randomly determining the available note scale of the target code using the selected determination method ,
When both the immediately preceding chord and the immediately following chord are determined to be non-diatonic chords by the discriminating means, the available note scale of the target chord is determined by the second determining method,
When the determination means determines that the target code is a non-diatonic code, the available note scale of the target code is determined by the second determination method;
An available note scale determining apparatus comprising:
力されたコード進行データおよび調データに基づいて、該コード進行データを構成するコードがダイアトニック・コードであるか、ノンダイアトニック・コードであるかを判別する判別モジュールと、
前記入力されたコード進行データ中、アベイラブル・ノート・スケールを決定する対象となる対象コードのアベイラブル・ノート・スケールを決定する決定モジュールであって、
前記判別モジュールによって、前記対象コードがダイアトニック・コードと判別された場合、
前記判別モジュールによって、前記対象コードの直前に位置する直前コードがダイアトニック・コードと判別されたときには、当該対象コードのアベイラブル・ノート・スケールをダイアトニック・ノート・スケールに決定する第1の決定方法により、当該対象コードのアベイラブル・ノート・スケールを決定し、
前記判別モジュールによって、前記直前コードがノンダイアトニック・コードと判別され、前記対象コードの直後に位置する直後コードがダイアトニック・コードと判別されたときには、当該対象コードのアベイラブル・ノート・スケールをダイアトニック・ノート・スケールに決定する前記第1の決定方法と、当該対象コードのアベイラブル・ノート・スケールを前記直前コードおよび前記直後コードの各構成音に基づいて決定する第2の決定方法とをランダムに選択し、該選択された決定方法を用いて当該対象コードのアベイラブル・ノート・スケールを決定し、
前記判別モジュールによって、前記直前コードおよび前記直後コードの双方がノンダイアトニック・コードと判別されたときには、当該対象コードのアベイラブル・ノート・スケールを前記第2の決定方法により決定し、
前記判別モジュールによって、前記対象コードがノンダイアトニック・コードと判別された場合、当該対象コードのアベイラブル・ノート・スケールを前記第2の決定方法によ り決定するものと
を含む、コンピュータが実現できるプログラムを格納した記憶媒体。
Based on the entered chord progression data and tone data, or code constituting the chord progression data are diatonic code, a determination module for determining whether a non diatonic code,
Wherein the input code progression data, a determination module that determines the Abeiraburu Notes scale object code for which you want to determine the Abeiraburu notes scale
When the target code is determined as a diatonic code by the determination module ,
A first determination method for determining an available note scale of a target code as a diatonic note scale when the determination module determines that the immediately preceding code located immediately before the target code is a diatonic code To determine the available note scale for the subject code ,
By the determination module, the immediately preceding code is judged non diatonic code, when it is judged immediately after the code Hurghada Iatonikku code located immediately after the target code, Abeiraburu Notes of the subject code It said first and determination method, a second method of determining of determining based on the Abeiraburu note scale of the target code in the immediately preceding code and each component notes immediately after the code that determines the scale diatonic note scale And randomly determining the available note scale of the target code using the selected determination method ,
When both the immediately preceding code and the immediately following code are determined to be non-diatonic chords by the discriminating module, the available note scale of the target chord is determined by the second determining method,
By the determination module, when the target code is determined as non diatonic code, and what determines Ri by the Abeiraburu note scale of the target code to the second determination method
A storage medium that stores a program that can be realized by a computer .
JP2000377454A 2000-12-12 2000-12-12 Available note scale determination device and storage medium Expired - Lifetime JP3823723B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000377454A JP3823723B2 (en) 2000-12-12 2000-12-12 Available note scale determination device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000377454A JP3823723B2 (en) 2000-12-12 2000-12-12 Available note scale determination device and storage medium

Publications (2)

Publication Number Publication Date
JP2002182645A JP2002182645A (en) 2002-06-26
JP3823723B2 true JP3823723B2 (en) 2006-09-20

Family

ID=18846175

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000377454A Expired - Lifetime JP3823723B2 (en) 2000-12-12 2000-12-12 Available note scale determination device and storage medium

Country Status (1)

Country Link
JP (1) JP3823723B2 (en)

Also Published As

Publication number Publication date
JP2002182645A (en) 2002-06-26

Similar Documents

Publication Publication Date Title
US5939654A (en) Harmony generating apparatus and method of use for karaoke
EP1302927B1 (en) Chord presenting apparatus and method
JP3684892B2 (en) Chord presentation device and storage medium
JP3637775B2 (en) Melody generator and recording medium
KR100583371B1 (en) Musical tone synthesizing apparatus, musical tone synthesizing method and storage medium
JP2002023747A (en) Automatic musical composition method and device therefor and recording medium
JP4483304B2 (en) Music score display program and music score display device
JP3835443B2 (en) Music generator
JP3823723B2 (en) Available note scale determination device and storage medium
JP4670686B2 (en) Code display device and program
JP3087811B2 (en) Automatic accompaniment device for electronic musical instruments
JP3818298B2 (en) Available note scale determining apparatus and recording medium
JP7425558B2 (en) Code detection device and code detection program
JP3565107B2 (en) Melody generation device, chord progression data generation device, and recording medium
JP2760301B2 (en) Electronic musical instrument
JP3903864B2 (en) Program for realizing automatic composition device and automatic composition method
JP3832463B2 (en) Chord display device
JP2018072444A (en) Chord detection device, chord detection program and chord detection method
JP2760346B2 (en) Electronic musical instrument system
JP3775039B2 (en) Melody generator and recording medium
JP3738634B2 (en) Automatic accompaniment device and recording medium
JP4760348B2 (en) Music selection apparatus and computer program for music selection
JP2006195045A (en) Pitch name determination device and computer-readable pitch name determination program
JP2000066665A (en) Automatic music composing device and recording medium
JP4129797B2 (en) Program for realizing performance control device and performance control method

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060314

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20060424

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060515

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060619

R150 Certificate of patent 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 (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090707

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100707

Year of fee payment: 4