JP3543158B2 - Automatic accompaniment device - Google Patents

Automatic accompaniment device Download PDF

Info

Publication number
JP3543158B2
JP3543158B2 JP33620194A JP33620194A JP3543158B2 JP 3543158 B2 JP3543158 B2 JP 3543158B2 JP 33620194 A JP33620194 A JP 33620194A JP 33620194 A JP33620194 A JP 33620194A JP 3543158 B2 JP3543158 B2 JP 3543158B2
Authority
JP
Japan
Prior art keywords
pitch
name
difference
lowest
code
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
JP33620194A
Other languages
Japanese (ja)
Other versions
JPH08179772A (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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP33620194A priority Critical patent/JP3543158B2/en
Publication of JPH08179772A publication Critical patent/JPH08179772A/en
Application granted granted Critical
Publication of JP3543158B2 publication Critical patent/JP3543158B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Description

【0001】
【産業上の利用分野】
本発明は、分数コードと非分数コードとを意識することなく容易にコード演奏し得る自動伴奏装置に関する。
【0002】
【従来の技術】
周知のように、近年の電子楽器にあっては、コード演奏やベース演奏を補助するため、演奏されたコード(和音)のルート(根音)およびコードタイプ(和音種類)を検出し、この検出結果に基づきコード音およびベース音を所定のタイミングで自動的に発音する自動伴奏装置を備えている。この種の装置の内には、分数コードを検出し、検出した分数コードに基づいて自動伴奏するものも知られている。なお、分数コードとは、通常のコード音とベース音とからなる和音であり、オンベースコードで表記されるものである。
【0003】
【発明が解決しようとする課題】
さて、演奏されたコードから分数コードを検出する態様としては、所謂、分離検出方式が知られている。この分離検出方式とは、押鍵操作された鍵を表わす押鍵パターン中の最低音と第2低音との音高差が一定以上離間している時、その最低音をベース音とし、残りの押鍵パターンからタイプを検出する方式である。
ところで、分離検出方式に基づいて分数コード検出する従来の自動伴奏装置では、押鍵パターン中の最低音が常にベース音と見做されるから、転回形コードを演奏した時、例えばドミナント・セブンスの転回形で7度音が最低音となった場合にはメジャ・オン・フラット・セブンスという分数コードに見做される等、常に分数コードとして判断されてしまう。このため、演奏者は転回形コードを演奏するには、これに替える代理コードや転回形でない基本コードを演奏しなければならなくなり、結果的に演奏し難くなるという問題がある。
【0004】
本発明は、上述した事情に鑑みてなされたもので、分数コードと非分数コードとを意識することなく容易にコード演奏することができる自動伴奏装置を提供することを目的としている。
【0005】
【課題を解決するための手段】
上記目的を達成するため、請求項1に記載の発明では、第1および第2の音域に分割された音高指定領域にてなされる演奏操作により指定される複数音高の内、最も低い音高の最低音と、当該最低音の次に低い第2低音と、当該第2低音の次に低い第3低音とを抽出する音高抽出手段と、この音高抽出手段が抽出した最低音の音名を第1の音名とし、前記第2低音の音名と前記第3低音の音名とを当該第1の音名を基点として上昇方向に並べたときに、前記第1の音名に近い一方の音名を第2の音名とし、他方を第3の音名とした場合の、前記第2の音名と前記第3の音名との音高差を表わす第1の音高差と、前記第1の音名と前記第2の音名との音高差を表わす第2の音高差とを発生する音高差発生手段と、前記最低音が前記第1の音域内に含まれる場合には、前記第1の音高差と前記第2の音高差と前記最低音とに応じて分数コードのコード種類および根音を生成し、一方、前記最低音が前記第2の音域内に含まれる場合には、前記第1の音高差と前記第2の音高差と前記最低音とに応じて非分数コードのコード種類および根音を生成するコード判別手段と、このコード判別手段が生成するコード種類および根音に応じた伴奏音の発生を指示する伴奏音発生指示手段とを具備することを特徴としている。
【0006】
また、請求項2に記載の発明では、演奏操作に応じて音高指定される複数音高の内、最も低い音高の最低音と、当該最低音の次に低い第2低音と、当該第2低音の次に低い第3低音とを抽出する音高抽出手段と、この音高抽出手段が抽出した最低音の音名を第1の音名とし、前記第2低音の音名と前記第3低音の音名とを当該第1の音名を基点として上昇方向に並べたときに、前記第1の音名に近い一方の音名を第2の音名とし、他方を第3の音名とした場合の、前記第2の音名と前記第3の音名との音高差を表わす第1の音高差と、前記第1の音名と前記第2の音名との音高差を表わす第2の音高差とを発生する音高差発生手段と、前記第2の音高差が所定度数以下である場合には、前記第1の音高差と前記第2の音高差と前記最低音とに応じて分数コードのコード種類および根音を生成し、一方、前記第2の音高差が所定度数以上である場合には、前記第1の音高差と前記第2の音高差と前記最低音とに応じて分数コードのコード種類および根音を生成するコード判別手段と、このコード判別手段が生成するコード種類および根音に応じた伴奏音の発生を指示する伴奏音発生指示手段とを具備することを特徴とする。
【0007】
上記請求項1または請求項2のいずれかに従属する請求項3に記載の発明によれば、前記コード判別手段は、予め前記第1および第2の音高差に対応して複数の分数コード種類が登録された第1の判別テーブルと、予め前記第1および第2の音高差に対応して複数の非分数コード種類およびルート変化値が登録された第2の判別テーブルとを備えることを特徴とする。
さらに、請求項2に従属する請求項3の発明では、前記コード判別手段は、前記第2の音高差が完全4度以下である場合に非分数コードと見做し、当該第2の音高差が完全5度以上である場合に分数コードと見做すことを特徴とする。
【0008】
【作用】
本発明では、音高抽出手段が第1および第2の音域に分割された音高指定領域にてなされる演奏操作により指定される複数音高の内、最も低い音高の最低音と、当該最低音の次に低い第2最低音と、当該第2低音の次に低い第3低音とを抽出し、音高差発生手段がこの最低音、第2低音および第3低音をそれぞれ音名に変換し、その内の最も低い音名の第1の音名と、この第1の音名の次に低い第2の音名と、この第2の音名の次に低い第3の音名とを求める一方、前記第2の音名と前記第3の音名との音高差を表わす第1の音高差と、前記第1の音名と前記第2の音名との音高差を表わす第2の音高差とを発生する。そして、コード判別手段は、最低音が前記第1の音域内に含まれる場合、第1および第2の音高差に応じて分数コードのコード種類および根音を生成し、一方、最低音が前記第2の音域内に含まれる場合には、第1および第2の音高差に応じて非分数コードのコード種類および根音を生成し、伴奏音発生指示手段がこのコード判別手段により生成されるコード種類および根音に応じた伴奏音の発生を指示する。
この結果、分数コードと非分数コードとを意識せずに容易にコード演奏することが可能になる。
【0009】
【実施例】
以下、図面を参照して本発明の実施例について説明する。
A.第1実施例の構成
図1は、本発明の第1実施例による自動伴奏装置を具備した電子楽器の外観を示す外観図である。この図に示す電子楽器は、楽器本体1と鍵盤2とが一体化されたものであって、鍵盤2ではその鍵域が分数コード判別鍵域2Aと非分数コード判別鍵域2Bとに2分割されている。本実施例では、分数コード判別鍵域2Aとして音名C1〜B2が割り当てられ、非分数コード判別鍵域2Bとして音名C3より高い音域が割り当てられており、こうした鍵域分割が意図するところについては後述する。楽器本体2は、コンソール上にパネルスイッチ3が配設されると共に、コンソール両側にはスピーカSPが設けられている。
【0010】
次に、図2を参照して本実施例の構成について説明する。なお、この図において、図1に示す部分と共通する要素には同一の番号を付している。図2において、鍵盤2は、各鍵毎の押離鍵操作および押離鍵速度を検出してキーオン信号、キーナンバ、キーオフ信号、あるいは押離タッチを表すベロシティ等の演奏情報を出力する。コンソール上に配設されるパネルスイッチ3の内には、例えば、音色を指定する音色スイッチや、伴奏パターンを選択するパターン選択スイッチなどの他、図3に示すモードスイッチ3aおよび自動伴奏の開始/停止を指示するスタート/ストップスイッチ3b等がある。モードスイッチ3aは、電子楽器の動作モードを選択するスイッチであり、駆動電源をオフ状態に設定する「OFFモード」、通常の演奏操作に応じて楽音を発生する「通常モード」およびこの通常モード時に自動伴奏する「伴奏モード」のいずれかを選択する。スタート/ストップスイッチ3bは、押下操作に応じてスタート指示/ストップ指示が交互に変化するスイッチである。
【0011】
4は楽器各部を制御するCPUであり、その動作については後述する。5はCPU4にロードされる各種制御プログラムや、これらプログラムで用いられる各種データなどが記憶されるROMである。6はCPU4のワークエリアとして使用されるRAMであり、各種レジスタ/フラグデータが一時記憶される。7は自動伴奏時の演奏テンポを指定するテンポクロックを発生し、これをCPU4に供給するテンポクロック発生回路である。ここで言う自動伴奏とは、演奏者が演奏の進行に従ってコード(和音)を順次指定した時に、指定されたコードに基づいた伴奏パターンを構成するコード音およびベース音を上記テンポクロックに同期して自動的に伴奏する動作を指す。
【0012】
8はコード判別テーブルメモリであり、複数押鍵された鍵に基づき、そのコードタイプ(あるいはコード変化値)を判別するための判別テーブルが記憶されており、その詳細については後述する。9は伴奏パターンメモリであり、上述したテンポクロックに対応してコード音およびベース音の発音タイミングを制御する所定小節分の伴奏パターンデータをリズム種類別に記憶している。この伴奏パターンデータは、図示されていないリズム選択スイッチの操作に応じて選択され、選択されたパターンがこの伴奏パターンメモリ9から順次読み出されるようになっている。
【0013】
10は周知の波形メモリ読み出し方式で構成される音源であり、通常のメロディ演奏に応じた楽音を発生するノーマル音源の他、伴奏音源を備えている。伴奏音源は、テンポクロックに同期して伴奏パターンメモリ9から順次読み出される伴奏パターンデータを、後述するコード判別処理によって生成されるコードタイプCTおよびルートRTに応じて音高変換してなる伴奏音を生成する。11は音源10から出力される楽音信号をD/A変換した後に増幅してスピーカSPより楽音として発音させるサウンドシステムである。
【0014】
B.コード判別テーブルメモリ8の構成
コード判別テーブルメモリ8は、複数押鍵された鍵を表わす押鍵パターンに基づいてコード判別する情報が記憶されており、この押鍵パターン中で最低音が前述した分数コード判別鍵域2Aに存在する場合には、図4に示す分数コード判別テーブルCT1を用いて分数コードのコードタイプが判別される。一方、押鍵パターン中で最低音が前述した非分数コード判別鍵域2Bに存在する場合には、図5に示す非分数コード判別テーブルCT2に基づきルート変化値RHとコードタイプCTとが判別される。これらテーブルCT1,CT2は、それぞれ後述する動作によって得られる音高差CG1,CG2に応じてテーブル読み出しされる。音高差CG1,CG2は、次式(1),(2)によって与えられる値である。
CG1=|(KC2−KC1)%12−(KC3−KC1)%12| …(1)
CG2=min{(KC2−KC1)%12,(KC3−KC1)%12} …(2)
【0015】
上記(1),(2)式において、KC1,KC2およびKC3は、それぞれ少なくとも3音以上押鍵された時の押鍵パターンにおける最低音、次に低い第2低音、この第2低音の次に低い第3低音を指すものであり、その値はMIDIノートナンバで与えられる。また、上記(1),(2)式における「%12」とはモジュロ12(12の剰余値)を表わす演算子、min{A,B}はA,Bのうち小さい方の値を解とする演算子である。
したがって、上記(1),(2)式は、押鍵パターン中の最低音KC1、第2低音KC2および第3低音KC3を、それぞれ1オクターブ12音(C,C#,D,・・・,A#,B)中の音名に変換し、その内の最も低い音名の第1の音名(KC1の音名を固定)と、この第1の音名の次に低い第2の音名(KC2もしくはKC3の音名)と、この第2の音名の次に低い第3の音名(KC3もしくはKC2の音名)に基づき、第2の音名と第3の音名との音高差を表わす音高差CG1と、第1の音名と第2の音名との音高差を表わす音高差CGとを算出する。
【0016】
C.第1実施例の動作
次に、上記構成による第1実施例の動作について図6〜図9を参照して説明する。ここでは、概略動作としてメインルーチンの動作について説明した後、同メインルーチンにおいてコールされる各種処理ルーチンの動作について順次説明する。
(1)メインルーチンの動作
まず、本実施例による電子楽器に電源が投入されると、CPU4はROM5から所定の制御プログラムをロードし、図6に示すメインルーチンを実行してステップSA2に処理を進める。ステップSA2では、RAM6に設けられる各種レジスタやフラグ類をリセットすると共に、音源10に対して発音チャンネルレジスタをゼロクリアするよう指示する。発音チャンネルレジスタとは、音源10内部に設けられるレジスタであって、CPU4の指示の下に各発音チャンネル毎に割り当てられる楽音パラメータを一時記憶する。
【0017】
各種レジスタ類を初期化するイニシャライズが完了すると、CPU4は次のステップSA4に処理を進め、コンソール上に配設される各種パネルスイッチ3の操作に応じたスイッチ処理、例えば、前述したモードスイッチ3aや、自動伴奏の開始/停止を指示するスタート/ストップスイッチ3bの操作に応じた設定を行い、続いて、ステップSA6に進むと、通常モードの場合には、演奏操作に応じた楽音発生がなされ、自動伴奏モードでは後述する動作に基づき、複数押鍵された鍵に対応する押鍵パターンに基づいてコード判別し、判別したコードのルートおよびタイプに従って伴奏音の発音を指示する鍵盤処理を行う。そして、この後、ステップSA8に処理を進め、例えば、コンソール上に配設される各種パネルスイッチ3の操作を検出するためのスイッチ走査や、このスイッチ走査により検出されたスイッチ設定状況に応じて液晶パネル表示する等、その他の処理を行う。次いで、CPU4はステップSA4に処理を戻し、以後ステップSA4〜SA8を繰り返して押離鍵操作やスイッチ操作の内容に従って音源10に楽音発生を指示する。
【0018】
(2)スイッチ処理ルーチンの動作
いま、例えば、演奏者がパネルスイッチ3を操作すると、CPU4は上述したステップSA4を介して図7に示すスイッチ処理ルーチンを実行してステップSB2に処理を進める。ステップSB2に進むと、モードスイッチ3aが操作されたか否かを判断する。ここで、「通常モード」に設定操作された場合には、後述するステップSB8に進み、一方、「自動伴奏モード」に設定操作された場合には、次のステップSB4へ処理を進める。ステップSB4では、スタート/ストップスイッチ3bが操作されたかどうかを判断する。
ここで、当該スイッチ3bが操作されていない時には、後述するステップSB8に進み、一方、操作された時には、次のステップSB6に進み、自動伴奏の開始/停止を表わす自動伴奏フラグを反転する。このフラグは「1」の時に自動伴奏開始を表わし、「0」の時に停止を表わす。そして、この後、CPU4は、その他のスイッチ操作に応じた設定を行った後、本ルーチンを終了して上述したメインルーチンへ復帰する。
【0019】
(3)鍵盤処理ルーチンの動作
上記スイッチ処理ルーチンを完了してメインルーチンに復帰したCPU4は、前述したステップSA6を介して図8に示す鍵盤処理ルーチンを実行してステップSC2に処理を進める。ステップSC2では、自動伴奏フラグが「1」、つまり、自動伴奏開始状態であるか否かを判断する。ここで、前述したモードスイッチ3aが「通常モード」に設定されている時には、判断結果が「NO」となってステップSC4に進み、押離鍵操作に応じて生成される演奏情報に従って所定音色の楽音発生を指示する通常演奏処理を行ってメインルーチンへ復帰する。
【0020】
これに対し、モードスイッチ3aが「自動伴奏モード」に設定され、かつ、スタート/ストップスイッチ3bの操作に応じて自動伴奏フラグが「1」に設定されていると、判断結果が「YES」となり、ステップSC6に処理を進め、押離鍵操作に応じて生成される演奏情報に基づき鍵状態を識別する。ここで、キーオン/キーオフイベントが無い場合には鍵変化無しとして本ルーチンを終了する。一方、押鍵操作によりキーオンイベントが発生し、鍵状態がオフからオンに変化すると、CPU4はステップSC8に処理を進める。ステップSC8では、所定時間内の複数押鍵であるか否か、すなわち、コード演奏であるか否かを判断する。
【0021】
コード演奏であれば、ここでの判断結果は「YES」となり、ステップSC10に処理を進める。ステップSC10では、複数押鍵された鍵を表わす押鍵パターンに基づいてコード判別し、判別したコードタイプCT/ルートRTに基づき自動伴奏を指示するコード判別処理(後述する)を行う。
これに対し、コード演奏でない時には上記ステップSC8の判断結果は「NO」となり、ステップSC4に進み、押鍵された鍵に対応した楽音発音を指示する通常演奏処理を行う。
【0022】
次に、上述したステップSC6において、離鍵操作により鍵状態がオンからオフになると、CPU4はステップSC12に処理を進める。ステップSC12では、その離鍵された鍵がコード指定音であるか否かを判断する。ここで、コード指定音でなければ、通常の離鍵と見做して判断結果が「NO」となり、上述したステップSC4に進んで離鍵された鍵に対応する楽音の消音を指示する。
一方、コード指定音である時には、判断結果が「YES」となり、この場合、テンポクロックに同期して自動伴奏が進行するので、何もせずにこのルーチンを完了する。
【0023】
(4)コード判別処理ルーチンの動作
次に、本発明の要旨に係わるコード判別処理ルーチンについて説明する。前述したように、鍵盤処理ルーチン(図8参照)において、所定時間内の複数押鍵、つまり、コード演奏がなされると、CPU4はステップSC10を介して図9に示すコード判別処理ルーチンを実行してステップSD2に処理を進める。ステップSD2では、この複数押鍵された鍵のうちから、前述した最低音KC1、第2低音KC2および第3低音KC3を選択する。
【0024】
そして、次のステップSD4では、選択した最低音KC1、第2低音KC2および第3低音KC3を、前述した(1)式および(2)式に代入し、音高差CG1,CG2を算出する。次いで、ステップSD6に進むと、最低音KC1が分数コード鍵域2A、つまり、この実施例ではC1音〜B2音の鍵域に最低音KC1が存在するか否かを判断する。
以下、分数コード鍵域2Aに最低音KC1が存在する場合の動作と、非分数コード鍵域2Bに最低音KC1が存在する場合の動作とに分けて説明する。
【0025】
分数コード鍵域2Aに最低音KC1が存在する場合の動作
この場合、ステップSD6の判断結果が「YES」となり、ステップSD8に進む。ステップSD8では、上記ステップSD4において算出した音高差CG1,CG2に基づいて図4に示す分数コード判別テーブルCT1をテーブル読み出しする。
ここで、例えば、コード演奏に応じて複数押鍵された鍵の内、最低音KC1、第2低音KC2および第3低音KC3がそれぞれ「E2音(40)」、「G3音(55)」および「C4音(60)」だとすると(なお、音名に付随する値はMIDIキーコード値)、上述したステップSD4の演算により、音高差CG1は「」、音高差CG2は「」となる。そして、これら値に基づき分数コード判別テーブルCT1(図4参照)をテーブル読み出しすると、コードタイプ「Ab/C」が読み出される。なお、このテーブルCTで定義されるコードタイプはルートが「C」の場合のものである。
【0026】
こうして分数コード判別テーブルCT1からコードタイプCTが読み出されると、CPU4は次のステップSD10に進み、次式(3)に基づきルートRTを求めてレジスタRTにストアすると共に、分数コード判別テーブルCT1から読み出したコードタイプCTをレジスタCTにストアする。
RT=KC1%12 …(3)
したがって、上述した一例の場合、最低音KC1は「E2音(40)」であるから、これのモジュロ12を求めると、ルートRTは「4」、音名ではE音となる。
【0027】
そして、次のステップSD12に進むと、CPU4はレジスタCTに格納されるコードタイプCTとレジスタRTに格納されるルートRTとを読み出し、音源10に送出して伴奏音を発音するよう指示する。
結局、この一例の場合、ルートが「E音」で、コードタイプが「Ab/C」なのだから、「C/E」なる分数コードが音源10に与えられる。これにより、音源10では伴奏パターンメモリ9から順次読み出される伴奏パターンデータを、コードタイプCTおよびルートRTに応じて音高変換して伴奏音を生成する。
【0028】
非分数コード鍵域2Bに最低音KC1が存在する場合の動作
この場合、前述したステップSD6の判断結果が「NO」となり、ステップSD14に進む。ステップSD14では、ステップSD4において算出した音高差CG1,CG2に基づいて図5に示す非分数コード判別テーブルCTをテーブル読み出しする。
ここで、例えば、コード演奏に応じて複数押鍵された鍵の内、最低音KC1、第2低音KC2および第3低音KC3がそれぞれ「E3音(52)」、「G3音(55)」および「C4音(60)」だとすると、ステップSD4の演算により、音高差CG1は「5」、音高差CG2は「3」となる。そして、これら値に基づき非分数コード判別テーブルCT2(図5参照)をテーブル読み出しすると、コードタイプCTが「major」で、ルート変化値RHが「−4」として読み出される。なお、テーブルCT2において定義されるコードタイプも、ルートが「C」の場合のものである。
【0029】
こうして非分数コード判別テーブルCT2からコードタイプCTおよびルート変化値RHが読み出されると、CPU4は次のステップSD16に進み、次式(4)に基づきルートRTを求めてレジスタRTにストアすると共に、非分数コード判別テーブルCT2から読み出したコードタイプCTをレジスタCTにストアする。
RT=KC1%12+RH …(4)
したがって、上述した一例の場合、最低音KC1は「E3音(52)」であるから、これのモジュロ12にルート変化値RH「−4」を加算すると、ルートRTは「0」、音名ではC音となる。そして、ステップSD12に進み、CPU4はレジスタCTに格納されるコードタイプCTとレジスタRTに格納されるルートRTとを読み出し、音源10に送出して伴奏音を発音するよう指示する。したがって、この一例の場合には、コードCが音源10に与えられる。
【0030】
このように、上述した第1実施例によれば、鍵盤2を分数コード鍵域2Aと非分数コード鍵域2Bとに鍵域分割しておき、コード演奏に応じて複数押鍵された鍵の内、最低音KC1が分数コード鍵域2Aにある場合は、分数コードと見做して分数コード判別テーブルCT1を参照してコードタイプを求め、これを最低音KC1をルートとした分数コードにするので、分数コードと非分数コードとを意識することなく容易にコード演奏することが可能になる。
【0031】
D.第2実施例
次に、本発明の第2実施例について説明する。第2実施例では、その構成が第1実施例と同一であり、動作においてもコード判別処理のみが相違する。すなわち、第1実施例では、コード演奏に応じて複数押鍵された鍵の内、最低音KC1が分数コード鍵域2Aにある場合に分数コード判別し、最低音KC1が非分数コード鍵域2Bにある場合には非分数コード判別するようにしているが、第2実施例によるコード判別処理ルーチンでは、コード演奏に応じて複数押鍵された鍵の内、最低音KC1と第2低音KC2との音高差を求め、求めた音高差に応じて分数コードか、非分数コードかを判別するようにしている。
以下では、こうした第2実施例のコード判別処理ルーチンの動作について、最低音KC1と第2低音KC2との音高差が「増4度の時」、「完全4度以下の時」および「完全5度以上の時」に場合分けして説明する。
【0032】
▲1▼音高差が増4度の時
前述した第1実施例と同様に、鍵盤処理ルーチン(図8参照)において所定時間内の複数押鍵、つまり、コード演奏がなされると、CPU4はステップSC10を介して図10に示すコード判別処理ルーチンを実行してステップSE2に処理を進める。ステップSE2では、この複数押鍵された鍵の内、最低音KC1とその次に低い第2低音KC2との音高差が「増4度」であるか否かを判断する。この場合、「増4度」のケースであるから、判断結果は「YES」となり、ステップSE4に進む。
【0033】
最低音KC1と第2低音KC2との音高差が「増4度」であると、そのコードタイプは一意的に「セブンス(7th)」となるので、ステップSE4では、ルートRTを次式(5)に基づいて算出してレジスタRTにストアすると共に、レジスタCTに「セブンス(7th)」に対応するデータをセットする。
RT=KC1%12− ・・・(5)
なお、上記(5)式における「KC1%12」は、最低音KC1のMIDIキーコード値のモジュロ12を表わしている。
【0034】
ここで、一例を挙げて説明する。例えば、コード演奏による複数押鍵の内、最低音KC1が「B2音(47)」、第2低音KC2が「F3音(53)」であったとする。そうすると、この場合、両音の音高差は「増4度」であり、ステップSE4において(5)式よりルートRTが「7」、つまり、「G音」になり、そのコードタイプCTは「セブンス(7th)」となる。こうしてルートとコードタイプとが定まると、CPU4はステップSE6に処理を進め、レジスタCTに格納されるコードタイプCTとレジスタRTに格納されるルートRTとを読み出し、音源10に送出して伴奏音を発音するよう指示する。これにより、音源10では伴奏パターンメモリ9から順次読み出される伴奏パターンデータを、コードタイプCTおよびルートRTに応じて音高変換して伴奏音を生成する。
【0035】
▲2▼音高差が完全4度以下の時
上述したステップSE2において、音高差が「増4度」以外の場合には判断結果は「NO」となり、ステップSE8に進む。ステップSE8では、複数押鍵された鍵のうちから、最低音KC1、第2低音KC2および第3低音KC3を選択する。次いで、ステップSE10に進むと、CPU4は選択した最低音KC1、第2低音KC2および第3低音KC3を、前述した(1)式および(2)式に代入し、音高差CG1,CG2を算出する。そして、次のステップSE12に進むと、最低音KC1と第2低音KC2との音高差が「完全4度以下」であるか、「完全5度以上」であるかを判断する。
【0036】
ここで、音高差が「完全4度以下」の時には、非分数コードとなり、ステップSE14に進む。ステップSE14では、ステップSE10において算出した音高差CG1,CG2に基づいて図5に示す非分数コード判別テーブルCT2をテーブル読み出しする。
ここで、例えば、複数押鍵された鍵の内、最低音KC1、第2低音KC2および第3低音KC3がそれぞれ「E2音(40)」、「G2音(43)」および「C3音(48)」だとすると、ステップSE10の演算により、音高差CG1は「5」、音高差CG2は「3」となる。そして、これら値に基づき非分数コード判別テーブルCT2(図5参照)をテーブル読み出しすると、コードタイプCTが「major」で、ルート変化値RHが「−4」として読み出される。
【0037】
こうして非分数コード判別テーブルCT2からコードタイプCTおよびルート変化値RHが読み出されると、CPU4は次のステップSE16に進み、前述した(4)式に基づきルートRTを求めてレジスタRTにストアすると共に、非分数コード判別テーブルCT2から読み出したコードタイプCTをレジスタCTにストアする。
したがって、この一例の場合、最低音KC1は「E2音(40)」であるから、これのモジュロ12にルート変化値RH「−4」を加算すると、ルートRTは「0」、音名ではC音となる。そして、この後、ステップSE6に進み、求めたコードタイプCTとルートRTとを音源10に送出して伴奏音を発音するよう指示する。
【0038】
▲3▼音高差が完全5度以上の時
この場合、分数コードとなり、ステップSE12を介してステップSE18に進む。ステップSE18では、上記ステップSE10において算出した音高差CG1,CG2に基づいて図4に示す分数コード判別テーブルCT1をテーブル読み出しする。
ここで、例えば、コード演奏に応じて複数押鍵された鍵の内、最低音KC1、第2低音KC2および第3低音KC3がそれぞれ「E2音(40)」、「C3音(48)」および「G3音(55)」だとすると、音高差CG1は「5」、音高差CG2は「3」となる。そして、これら値に基づき分数コード判別テーブルCT1(図4参照)をテーブル読み出しすると、コードタイプ「Ab/C」が読み出される。
【0039】
こうして分数コード判別テーブルCT1からコードタイプが読み出されると、CPU4は次のステップSE20に進み、前述した(3)式に基づきルートRTを求めてレジスタRTにストアすると共に、分数コード判別テーブルCT1から読み出したコードタイプをレジスタCTにストアする。
したがって、上述した一例の場合、最低音KC1は「E2音(40)」であるから、これのモジュロ12を求めると、ルートRTは「4」、音名ではE音となる。
【0040】
そして、次のステップSE6に進むと、CPU4はレジスタCTに格納されるコードタイプCTとレジスタRTに格納されるルートRTとを読み出し、音源10に送出して伴奏音を発音するよう指示する。
結局、この一例の場合、ルートが「E音」で、コードタイプが「Ab/C」なのだから、「C/E」なる分数コードが音源10に与えられる。これにより、音源10では伴奏パターンメモリ9から順次読み出される伴奏パターンデータを、コードタイプCTおよびルートRTに応じて音高変換して伴奏音を生成する。
【0041】
以上のように、第2実施例によれば、コード演奏に応じて複数押鍵された鍵の内、最低音KC1と第2低音KC2との音高差に応じて分数コードであるか、非分数コードであるかを区別し、分数コードである場合には分数コード判別テーブルCT1を、非分数コードである場合には非分数コード判別テーブルCT2を参照してコード判別するので、演奏に際して分数コードと非分数コードとを意識することなく容易にコード演奏することが可能になる。
なお、上述した第1および第2実施例では、音高差CG1、CG2が共に5半音差までテーブルCT1、CT2を用いているが、これに限定されず、6半音以上のテーブルを定義しても良い。
【0042】
【発明の効果】
本発明によれば、音高抽出手段が第1および第2の音域に分割された音高指定領域にてなされる演奏操作により指定される複数音高の内、最も低い音高の最低音と、当該最低音の次に低い第2最低音と、当該第2低音の次に低い第3低音とを抽出し、音高差発生手段がこの最低音、第2低音および第3低音それぞれ音名を所定の順序に並べ、その内の最も低い音名の第1の音名と、この第1の音名の次に低い第2の音名と、この第2の音名の次に低い第3の音名とを求める一方、前記第2の音名と前記第3の音名との音高差を表わす第1の音高差と、前記第1の音名と前記第2の音名との音高差を表わす第2の音高差とを発生する。そして、コード判別手段は、最低音が前記第1の音域内に含まれる場合、前記第1および第2の音高差と前記最低音に応じて分数コードのコード種類および根音を生成し、一方、最低音が前記第2の音域内に含まれる場合には、前記第1および第2の音高差と前記最低音に応じて非分数コードのコード種類および根音を生成し、伴奏音発生指示手段がこのコード判別手段により生成されるコード種類および根音に応じた伴奏音の発生を指示するので、分数コードと非分数コードとを意識せずに容易にコード演奏することができる。
【図面の簡単な説明】
【図1】本発明の第1実施例による電子楽器の外観を示す外観図である。
【図2】第1実施例の構成を示すブロック図である。
【図3】同実施例におけるパネルスイッチ3を説明するための図である。
【図4】同実施例における分数コード判別テーブルCT1の内容を示す図である。
【図5】同実施例における非分数コード判別テーブルCT2の内容を示す図である。
【図6】同実施例におけるメインルーチンの動作を説明するためのフローチャートである。
【図7】同実施例におけるスイッチ処理ルーチンの動作を説明するためのフローチャートである。
【図8】同実施例における鍵盤処理ルーチンの動作を説明するためのフローチャートである。
【図9】同実施例におけるコード判別処理ルーチンの動作を説明するためのフローチャートである。
【図10】第2実施例によるコード判別処理ルーチンの動作を説明するためのフローチャートである。
【符号の説明】
2 鍵盤
2A 分数コード判別鍵域(第1の音域)
2B 非分数コード判別鍵域(第2の音域)
4 CPU(音高抽出手段、音高差発生手段、コード判別手段)
5 ROM
6 RAM
8 コード判別テーブルメモリ(コード判別手段)
[0001]
[Industrial applications]
The present invention relates to an automatic accompaniment apparatus that can easily play chords without being aware of fractional chords and non-fractional chords.
[0002]
[Prior art]
As is well known, in recent electronic musical instruments, the root (root note) and chord type (chord type) of a played chord (chord) are detected in order to assist chord and bass performances. An automatic accompaniment device is provided for automatically producing a chord sound and a base sound at a predetermined timing based on the result. Among devices of this type, a device that detects a fraction code and performs automatic accompaniment based on the detected fraction code is known. The fraction code isNormalChord sound and bass soundFromThis is a chord that is represented by an on-base chord.
[0003]
[Problems to be solved by the invention]
A so-called separation detection method is known as a mode for detecting a fractional code from a played chord. This separation detection method is such that when the pitch difference between the lowest note in the keypress pattern representing a key that has been pressed and the second bass is more than a certain distance apart, the lowest note is used as the base sound, This is a method of detecting the type from a key press pattern.
By the way, in a conventional automatic accompaniment device that detects a fraction code based on a separation detection method, the lowest note in a key press pattern is always regarded as a bass sound. When the seventh tone becomes the lowest note in the inverted form, it is always regarded as a fractional code, such as being regarded as a fractional code called "Measure on Flat Seventh". For this reason, in order to perform the inverted chord, the player must play a substitute chord or a basic chord that is not inverted, which results in a problem that it is difficult to perform.
[0004]
The present invention has been made in view of the above circumstances, and has as its object to provide an automatic accompaniment apparatus that can easily play chords without being conscious of fractional codes and non-fractional chords.
[0005]
[Means for Solving the Problems]
In order to achieve the above object, according to the first aspect of the present invention, the lowest pitch of a plurality of pitches designated by a performance operation performed in a pitch designation area divided into a first and a second tone range. Pitch extracting means for extracting the lowest pitch of the high pitch, the second low pitch next to the lowest pitch, and the third low pitch next to the second low pitch, and the lowest pitch extracted by the pitch extracting meansWhen the pitch name of the second pitch and the pitch name of the third pitch are arranged in the ascending direction based on the first pitch, the first pitch is defined as the first pitch. When one note name close to the name is the second note name and the other is the third note nameA first pitch difference indicating a pitch difference between the second pitch name and the third pitch name, and a first pitch difference indicating a pitch difference between the first pitch name and the second pitch name. A pitch difference generating means for generating a pitch difference between the first pitch and the second pitch;Pitch difference and theSecond pitch differenceAnd the lowest noteGenerates a chord type and a root note of a fractional chord in accordance with the above formula. On the other hand, when the lowest note is included in the second range, the first chord is generated.Pitch difference and theSecond pitch differenceAnd the lowest noteA chord type for generating a chord type and a root note of a non-fractional chord according to the chord, and an accompaniment sound generation instructing means for instructing generation of an accompaniment sound in accordance with the chord type and the root note generated by the chord determination means. It is characterized by doing.
[0006]
According to the second aspect of the present invention, of the plurality of pitches designated according to the performance operation, the lowest pitch of the lowest pitch, the second lowest pitch next to the lowest pitch, and the second pitch Pitch extracting means for extracting a third bass which is the second lowest, and a lowest tone extracted by the pitch extracting means.When the pitch name of the second pitch and the pitch name of the third pitch are arranged in the ascending direction based on the first pitch, the first pitch is defined as the first pitch. When one pitch name close to the name is the second pitch name and the other is the third pitch name,A first pitch difference representing a pitch difference between the second pitch name and the third pitch name, and a second pitch difference representing a pitch difference between the first pitch name and the second pitch name. A pitch difference generating means for generating a pitch difference between the first pitch difference and the first pitch difference when the second pitch difference is equal to or less than a predetermined frequency.Pitch difference and theSecond pitch differenceAnd the lowest noteIn response to theNonA chord type and a root note of a fractional chord are generated. On the other hand, when the second pitch difference is equal to or greater than a predetermined frequency, the first pitch difference is generated.Pitch difference and theSecond pitch differenceAnd the lowest noteAccording toMinuteA code discriminating means for generating a chord type and a root note of several codes, and an accompaniment sound generation instructing means for instructing generation of an accompaniment sound according to the chord type and the root note generated by the chord discriminating means. And
[0007]
According to the third aspect of the present invention, the code discriminating means includes a plurality of fractional codes corresponding to the first and second pitch differences in advance. A first discrimination table in which types are registered, and a second discrimination table in which a plurality of non-fractional code types and route change values are registered in advance corresponding to the first and second pitch differences. It is characterized.
Further, in the invention according to claim 3, which is dependent on claim 2, the code discriminating means regards the second pitch difference as a non-fractional code when the second pitch difference is less than or equal to a perfect fourth degree, and When the height difference is completely 5 degrees or more, it is regarded as a fraction code.
[0008]
[Action]
In the present invention, the pitch extracting means determines the lowest one of the lowest pitches among a plurality of pitches specified by the performance operation performed in the pitch specification area divided into the first and second pitches. A second lowest tone next to the lowest tone and a third lowest tone next to the second low tone are extracted, and the pitch difference generating means uses the lowest tone, the second low tone, and the third low tone as tone names, respectively. Converting, the first pitch of the lowest pitch, the second pitch next to the first pitch, and the third pitch next to the second pitch And a first pitch difference representing a pitch difference between the second pitch name and the third pitch name, and a pitch between the first pitch name and the second pitch name. And a second pitch difference representing the difference. Then, when the lowest note is included in the first range, the chord determining means generates a chord type and a root note of a fractional code according to the first and second pitch differences. When included in the second range, a chord type and a root note of a non-fractional chord are generated in accordance with the first and second pitch differences, and the accompaniment sound generation instructing means is generated by the chord discriminating means. Of the accompaniment sound according to the chord type and the root note to be played.
As a result, it is possible to easily play chords without being aware of fractional chords and non-fractional chords.
[0009]
【Example】
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
A. Configuration of the first embodiment
FIG. 1 is an external view showing an external appearance of an electronic musical instrument provided with an automatic accompaniment device according to a first embodiment of the present invention. The electronic musical instrument shown in FIG. 1 has a musical instrument body 1 and a keyboard 2 integrated with each other. In the keyboard 2, the key range is divided into a fraction code discrimination key area 2A and a non-fraction code discrimination key area 2B. Have been. In this embodiment, the pitch name C is used as the fraction code discrimination key area 2A.1~ BTwoIs assigned, and as the non-fractional code discrimination key area 2B, the pitch name CThreeA higher range is assigned, and the intention of such key range division will be described later. The musical instrument main body 2 has a panel switch 3 disposed on a console, and speakers SP on both sides of the console.
[0010]
Next, the configuration of the present embodiment will be described with reference to FIG. In this figure, the same elements as those shown in FIG. 1 are denoted by the same reference numerals. In FIG. 2, the keyboard 2 detects a key press / release key operation and a key press / release speed for each key, and outputs performance information such as a key-on signal, a key number, a key-off signal, or a velocity representing a touch / release touch. Among the panel switches 3 arranged on the console, for example, a tone switch for designating a tone, a pattern selection switch for selecting an accompaniment pattern, a mode switch 3a shown in FIG. There is a start / stop switch 3b for giving an instruction to stop. The mode switch 3a is a switch for selecting an operation mode of the electronic musical instrument. The mode switch 3a sets the drive power supply to an off state, an "OFF mode" for generating a musical tone in accordance with a normal performance operation, and a "normal mode". Select one of the "accompaniment modes" for automatic accompaniment. The start / stop switch 3b is a switch that alternately changes a start instruction / stop instruction according to a pressing operation.
[0011]
Reference numeral 4 denotes a CPU for controlling each section of the musical instrument, the operation of which will be described later. Reference numeral 5 denotes a ROM that stores various control programs loaded into the CPU 4 and various data used in these programs. Reference numeral 6 denotes a RAM used as a work area of the CPU 4, and temporarily stores various register / flag data. Reference numeral 7 denotes a tempo clock generation circuit for generating a tempo clock for designating a performance tempo during automatic accompaniment and supplying the generated tempo clock to the CPU 4. The term "automatic accompaniment" used herein means that when a player successively designates chords (chords) in accordance with the progress of the performance, the chord sound and the base sound that constitute the accompaniment pattern based on the designated chord are synchronized with the tempo clock. Refers to actions that accompany you automatically.
[0012]
Reference numeral 8 denotes a code discrimination table memory, which stores a discrimination table for discriminating a code type (or a code change value) based on a plurality of pressed keys, the details of which will be described later. Reference numeral 9 denotes an accompaniment pattern memory, which stores, for each rhythm type, accompaniment pattern data for a predetermined measure for controlling the sounding timing of the chord sound and the bass sound in accordance with the above-mentioned tempo clock. The accompaniment pattern data is selected according to the operation of a rhythm selection switch (not shown), and the selected patterns are sequentially read from the accompaniment pattern memory 9.
[0013]
Reference numeral 10 denotes a sound source configured by a well-known waveform memory reading method, which includes an accompaniment sound source in addition to a normal sound source that generates a tone according to a normal melody performance. The accompaniment sound source converts accompaniment sounds obtained by performing pitch conversion on accompaniment pattern data sequentially read from the accompaniment pattern memory 9 in synchronization with the tempo clock in accordance with a chord type CT and a root RT generated by chord discrimination processing described later. Generate. Reference numeral 11 denotes a sound system which performs D / A conversion of a tone signal output from the sound source 10, amplifies the signal, and causes the speaker SP to generate a tone as a tone.
[0014]
B. Configuration of code discrimination table memory 8
The chord discrimination table memory 8 stores information for discriminating a chord based on a key depression pattern representing a plurality of depressed keys. In this key depression pattern, the lowest note exists in the fraction code discrimination key area 2A described above. In this case, the code type of the fraction code is determined using the fraction code determination table CT1 shown in FIG. On the other hand, when the lowest note in the key pressing pattern exists in the above-described non-fractional code determination key area 2B, the root change value RH and the chord type CT are determined based on the non-fractional code determination table CT2 shown in FIG. You. These tables CT1 and CT2 are read out according to pitch differences CG1 and CG2 obtained by operations described later. The pitch differences CG1 and CG2 are values given by the following equations (1) and (2).
CG1 = | (KC2-KC1)% 12− (KC3-KC1)% 12 | (1)
CG2 = min {(KC2-KC1)% 12, (KC3-KC1)% 12} (2)
[0015]
In the above formulas (1) and (2), KC1, KC2 and KC3 are the lowest tone in the key pressing pattern when at least three or more keys are pressed, the second lowest tone, and the second lowest tone, respectively. It refers to the low third bass, and its value is given by MIDI note number. In the above equations (1) and (2), “% 12” is an operator representing modulo 12 (remainder value of 12), and min {A, B} is a solution of the smaller value of A and B. Operator.
Therefore, in the above equations (1) and (2), the lowest tone KC1, the second low tone KC2, and the third low tone KC3 in the key press pattern are respectively converted into 12 octaves (C, C #, D,. A #, B) is converted to the pitch name in the first pitch name of the lowest pitch name(KC1 note name is fixed)And a second note name that is lower than the first note name(KC2 or KC3 note name)And a third note name that is next to the second note name(KC3 or KC2 note name), A pitch difference CG1 representing a pitch difference between the second pitch name and the third pitch name, and a pitch difference CG representing a pitch difference between the first pitch name and the second pitch name.2Is calculated.
[0016]
C. Operation of the first embodiment
Next, the operation of the first embodiment having the above configuration will be described with reference to FIGS. Here, the operation of the main routine will be described as a schematic operation, and then the operations of various processing routines called in the main routine will be sequentially described.
(1) Main routine operation
First, when power is turned on to the electronic musical instrument according to the present embodiment, the CPU 4 loads a predetermined control program from the ROM 5, executes a main routine shown in FIG. 6, and proceeds to step SA2. In step SA2, various registers and flags provided in the RAM 6 are reset, and the sound source 10 is instructed to clear the tone generation channel register to zero. The tone channel register is a register provided inside the sound source 10 and temporarily stores tone parameters assigned to each tone channel under the instruction of the CPU 4.
[0017]
When the initialization for initializing the various registers is completed, the CPU 4 advances the processing to the next step SA4, and performs the switch processing according to the operation of the various panel switches 3 arranged on the console, for example, the mode switch 3a and the above-described mode switch 3a. Then, setting is performed in accordance with the operation of the start / stop switch 3b for instructing start / stop of the automatic accompaniment, and subsequently, in step SA6, in the case of the normal mode, a tone is generated in accordance with the performance operation. In the automatic accompaniment mode, based on an operation to be described later, a chord is discriminated based on a key depression pattern corresponding to a plurality of depressed keys, and keyboard processing for instructing generation of an accompaniment tone is performed according to the determined chord route and type. Then, the process proceeds to step SA8. For example, a switch scan for detecting the operation of various panel switches 3 provided on the console, and a liquid crystal display according to the switch setting status detected by the switch scan. Other processing such as panel display is performed. Next, the CPU 4 returns the process to step SA4, and thereafter repeats steps SA4 to SA8 to instruct the sound source 10 to generate a musical tone in accordance with the contents of the key press / release operation or the switch operation.
[0018]
(2) Operation of switch processing routine
Now, for example, when the player operates the panel switch 3, the CPU 4 executes the switch processing routine shown in FIG. 7 through the above-described step SA4, and proceeds to step SB2. In step SB2, it is determined whether or not the mode switch 3a has been operated. Here, if the setting operation is performed in the “normal mode”, the process proceeds to step SB8 described later, while if the operation is performed in the “automatic accompaniment mode”, the process proceeds to the next step SB4. At Step SB4, it is determined whether or not the start / stop switch 3b has been operated.
Here, when the switch 3b is not operated, the process proceeds to step SB8 to be described later, while when the switch 3b is operated, the process proceeds to the next step SB6, and the automatic accompaniment flag indicating start / stop of the automatic accompaniment is inverted. When this flag is "1", it indicates the start of automatic accompaniment, and when it is "0", it indicates that it is stopped. Then, after that, the CPU 4 makes settings in accordance with other switch operations, then ends this routine and returns to the above-described main routine.
[0019]
(3) Keyboard processing routine operation
After completing the switch processing routine and returning to the main routine, the CPU 4 executes the keyboard processing routine shown in FIG. 8 via the above-described step SA6, and proceeds to step SC2. In step SC2, it is determined whether or not the automatic accompaniment flag is “1”, that is, whether or not the automatic accompaniment is in a start state. Here, when the mode switch 3a is set to the "normal mode", the determination result is "NO" and the process proceeds to step SC4, where the predetermined tone color is determined according to the performance information generated in response to the key press / release operation. A normal performance process for instructing generation of a musical tone is performed, and the process returns to the main routine.
[0020]
On the other hand, if the mode switch 3a is set to the "automatic accompaniment mode" and the automatic accompaniment flag is set to "1" in response to the operation of the start / stop switch 3b, the determination result is "YES". Then, the process proceeds to Step SC6, and the key state is identified based on the performance information generated in response to the key press / release operation. Here, if there is no key-on / key-off event, this routine is terminated assuming that there is no key change. On the other hand, when a key-on event occurs due to a key pressing operation and the key state changes from off to on, the CPU 4 advances the process to step SC8. In step SC8, it is determined whether or not a plurality of keys are pressed within a predetermined time, that is, whether or not a chord is played.
[0021]
If it is a chord performance, the result of this determination is “YES”, and the process proceeds to step SC10. In step SC10, a chord discrimination process (described later) for instructing an automatic accompaniment based on the discriminated chord type CT / root RT is performed based on a key depression pattern representing a plurality of depressed keys.
On the other hand, if it is not a chord performance, the result of the determination in step SC8 is "NO", and the flow advances to step SC4 to perform a normal performance process for instructing a musical tone generation corresponding to a depressed key.
[0022]
Next, when the key state is changed from on to off by the key release operation in step SC6 described above, the CPU 4 advances the process to step SC12. In step SC12, it is determined whether or not the released key is a chord designation sound. Here, if it is not a chord designation sound, it is regarded as a normal key release, and the determination result is "NO". The process proceeds to step SC4 to instruct the mute of the musical tone corresponding to the released key.
On the other hand, when the sound is the chord designation sound, the judgment result is "YES". In this case, the automatic accompaniment proceeds in synchronization with the tempo clock, so that this routine is completed without doing anything.
[0023]
(4) Operation of code discrimination processing routine
Next, a code determination processing routine according to the gist of the present invention will be described. As described above, in the keyboard processing routine (see FIG. 8), when a plurality of keys are pressed within a predetermined time, that is, when a chord is played, the CPU 4 executes the chord determination processing routine shown in FIG. To step SD2. In step SD2, the lowest tone KC1, the second tone KC2, and the third tone KC3 are selected from the keys depressed.
[0024]
In the next step SD4, the selected lowest pitch KC1, second low pitch KC2, and third low pitch KC3 are substituted into the above-described equations (1) and (2) to calculate pitch differences CG1, CG2. Next, at step SD6, the lowest note KC1 is set to the fractional code key area 2A, that is,1Sound ~ BTwoIt is determined whether or not the lowest note KC1 exists in the key range of the note.
Hereinafter, the operation when the lowest note KC1 exists in the fractional chord key area 2A and the operation when the lowest note KC1 exists in the non-fractional chord key area 2B will be described separately.
[0025]
<Operation when the lowest tone KC1 exists in the fractional chord key area 2A>
In this case, the result of the determination in step SD6 is “YES”, and the flow proceeds to step SD8. In step SD8, the fraction code discrimination table CT1 shown in FIG. 4 is read out based on the pitch differences CG1 and CG2 calculated in step SD4.
Here, for example, among the keys depressed in accordance with the chord performance, the lowest tone KC1, the second bass KC2, and the third bass KC3 are "E2 (40)", "G3 (55)" and If it is “C4 note (60)” (the value accompanying the note name is the MIDI key code value), the pitch difference CG1 becomes “5", The pitch difference CG2 is"3". When the fraction code discrimination table CT1 (see FIG. 4) is read based on these values, the code type “Ab / C” is read. The code type defined in the table CT is for the case where the root is “C”.
[0026]
When the code type CT is read from the fraction code discrimination table CT1 in this way, the CPU 4 proceeds to the next step SD10, finds a route RT based on the following equation (3), stores it in the register RT, and reads it from the fraction code discrimination table CT1. The stored code type CT is stored in the register CT.
RT = KC1% 12 (3)
Therefore, in the case of the above example, the lowest tone KC1 is “ETwoSince the sound is the sound (40), when the modulo 12 of the sound is obtained, the root RT is "4" and the sound name is the E sound.
[0027]
Then, when proceeding to the next step SD12, the CPU 4 reads out the code type CT stored in the register CT and the route RT stored in the register RT, and sends it to the sound source 10 to instruct the sound source 10 to generate an accompaniment sound.
After all, in the case of this example, since the root is “E sound” and the chord type is “Ab / C”, the fraction code “C / E” is given to the sound source 10. Thereby, the tone generator 10 generates the accompaniment sound by converting the accompaniment pattern data sequentially read from the accompaniment pattern memory 9 according to the chord type CT and the root RT.
[0028]
<Operation when lowest tone KC1 exists in non-fractional chord key range 2B>
In this case, the result of the determination in step SD6 is "NO", and the flow proceeds to step SD14. In step SD14, based on the pitch differences CG1 and CG2 calculated in step SD4, the non-fractional code discrimination table CT shown in FIG.2Is read out from the table.
Here, for example, among the keys depressed in accordance with the chord performance, the lowest tone KC1, the second bass KC2, and the third bass KC3 are "E3 tone (52)", "G3 tone (55)" and If it is “C4 sound (60)”, the pitch difference CG1 becomes “5” and the pitch difference CG2 becomes “3” by the calculation in step SD4. When the non-fractional code discrimination table CT2 (see FIG. 5) is read based on these values, the code type CT is read as "major" and the root change value RH is read as "-4". Note that the code type defined in the table CT2 is also a case where the root is “C”.
[0029]
When the code type CT and the route change value RH are read from the non-fractional code determination table CT2 in this way, the CPU 4 proceeds to the next step SD16, finds the route RT based on the following equation (4), stores the route RT in the register RT, and stores the route RT in the register RT. The code type CT read from the fraction code determination table CT2 is stored in the register CT.
RT = KC1% 12 + RH (4)
Therefore, in the case of the above example, the lowest tone KC1 is “EThreeSince the root change value RH “−4” is added to the modulo 12 of the note (52) ”, the root RT becomes“ 0 ”and the note name is the C note. Then, the process proceeds to step SD12, where the CPU 4 reads out the chord type CT stored in the register CT and the route RT stored in the register RT, and sends it to the sound source 10 to instruct the sound source 10 to generate an accompaniment sound. Therefore, in the case of this example, the code C is given to the sound source 10.
[0030]
As described above, according to the above-described first embodiment, the keyboard 2 is divided into the fractional code key area 2A and the non-fractional code key area 2B in the key range. If the lowest note KC1 is in the fraction code key area 2A, the code is regarded as a fraction code and the chord type is determined by referring to the fraction code discrimination table CT1, and this is converted into a fraction code with the lowest note KC1 as the root. Therefore, it is possible to easily play chords without being aware of fractional chords and non-fractional chords.
[0031]
D. Second embodiment
Next, a second embodiment of the present invention will be described. In the second embodiment, the configuration is the same as that of the first embodiment, and only the code discrimination processing is different in the operation. That is, in the first embodiment, when the lowest note KC1 is in the fractional chord key area 2A among the keys depressed in accordance with the chord performance, the fractional chord is determined, and the lowest note KC1 is determined in the non-fractional chord key area 2B. , The non-fractional chord is determined. However, in the chord determination processing routine according to the second embodiment, the lowest tone KC1 and the second low tone KC2 among the keys depressed in accordance with the chord performance are selected. Is determined, and whether the code is a fractional code or a non-fractional code is determined according to the determined pitch difference.
Hereinafter, regarding the operation of the chord determination processing routine of the second embodiment, the pitch difference between the lowest pitch KC1 and the second low pitch KC2 is “when the pitch is increased 4 degrees”, “when the pitch is not more than 4 degrees”, and “when the pitch is not more than 4 degrees”. The case will be described separately for the case of “5 degrees or more”.
[0032]
(1) When the pitch difference is 4 degrees
As in the first embodiment described above, when a plurality of keys are pressed within a predetermined time, that is, when a chord is played in the keyboard processing routine (see FIG. 8), the CPU 4 executes the chord determination processing shown in FIG. The routine is executed, and the process proceeds to step SE2. In step SE2, it is determined whether or not the pitch difference between the lowest tone KC1 and the second lower tone KC2, which is the next lower tone, is “increased fourth degree” among the keys depressed. In this case, since the case is “increased by 4 degrees”, the determination result is “YES” and the process proceeds to step SE4.
[0033]
If the pitch difference between the lowest pitch KC1 and the second low pitch KC2 is "increased 4th degree", the chord type is uniquely "7th (7th)". 5), the data is stored in the register RT, and the data corresponding to “Seventh (7th)” is set in the register CT.
RT = KC1% 12−4 ... (5)
Note that “KC1% 12” in the above equation (5) represents the modulo 12 of the MIDI key code value of the lowest tone KC1.
[0034]
Here, an example will be described. For example, among a plurality of keys pressed by a chord playing, the lowest note KC1 is "BTwoSound (47) ”and the second bass KC2 are“ FThreeSound (53) ". Then, in this case, the pitch difference between the two sounds is “increased 4 degrees”, and in step SE4, the root RT is set to “7”, that is, “G sound” from equation (5), and the chord type CT is set to “ Seventh (7th) ". When the root and the chord type are determined in this way, the CPU 4 advances the processing to step SE6, reads out the chord type CT stored in the register CT and the root RT stored in the register RT, and sends out the accompaniment sound to the sound source 10. Instruct them to pronounce. Thereby, the tone generator 10 generates the accompaniment sound by converting the accompaniment pattern data sequentially read from the accompaniment pattern memory 9 according to the chord type CT and the root RT.
[0035]
(2) When the pitch difference is less than 4 degrees
In step SE2 described above, if the pitch difference is other than “increased fourth”, the determination result is “NO”, and the flow proceeds to step SE8. In step SE8, the lowest tone KC1, the second tone KC2, and the third tone KC3 are selected from the keys depressed. Next, when the process proceeds to step SE10, the CPU 4 substitutes the selected lowest tone KC1, second low tone KC2, and third low tone KC3 into the above-described equations (1) and (2) to calculate the pitch differences CG1, CG2. I do. Then, when the process proceeds to the next step SE12, it is determined whether the pitch difference between the lowest tone KC1 and the second low tone KC2 is "less than perfect fourth" or "more than perfect fifth".
[0036]
Here, when the pitch difference is “fourth degree or less”, the code becomes a non-fractional code, and the process proceeds to step SE14. In step SE14, the non-fractional code discrimination table CT2 shown in FIG. 5 is read out based on the pitch differences CG1 and CG2 calculated in step SE10.
Here, for example, among the keys depressed, the lowest tone KC1, the second bass KC2, and the third bass KC3 are each "E."TwoSound (40) "," GTwoAssuming that the sound is the sound (43) and the sound C3 (48), the pitch difference CG1 becomes “5” and the pitch difference CG2 becomes “3” by the calculation in step SE10. When the non-fractional code discrimination table CT2 (see FIG. 5) is read based on these values, the code type CT is read as "major" and the root change value RH is read as "-4".
[0037]
When the code type CT and the route change value RH are read from the non-fractional code discrimination table CT2 in this manner, the CPU 4 proceeds to the next step SE16, finds the route RT based on the above-described equation (4), stores it in the register RT, and The code type CT read from the non-fractional code determination table CT2 is stored in the register CT.
Therefore, in this example, the lowest note KC1 is “ETwoSince the root change value RH “−4” is added to the modulo 12 of the sound (40), the root RT becomes “0” and the pitch name becomes the C sound. Then, the process proceeds to step SE6, in which the obtained chord type CT and root RT are transmitted to the sound source 10 to instruct the sound source 10 to generate an accompaniment sound.
[0038]
(3) When the pitch difference is more than 5 degrees
In this case, the code is a fraction code, and the flow advances to step SE18 via step SE12. In step SE18, the fraction code discrimination table CT1 shown in FIG. 4 is read out based on the pitch differences CG1 and CG2 calculated in step SE10.
Here, for example, among the keys depressed in accordance with the chord performance, the lowest tone KC1, the second bass KC2, and the third bass KC3 are each "E."TwoSound (40) "," CThreeSound (48) ”and“ GThreeIf it is "sound (55)", the pitch difference CG1 is "5" and the pitch difference CG2 is "3". When the fraction code discrimination table CT1 (see FIG. 4) is read based on these values, the code type “Ab / C” is read.
[0039]
When the code type is read from the fraction code discrimination table CT1 in this way, the CPU 4 proceeds to the next step SE20, finds the root RT based on the above-mentioned equation (3), stores it in the register RT, and reads it from the fraction code discrimination table CT1. The stored code type is stored in the register CT.
Therefore, in the case of the above example, the lowest tone KC1 is “ETwoSince the sound is the sound (40), when the modulo 12 of the sound is obtained, the root RT is "4" and the sound name is the E sound.
[0040]
Then, when proceeding to the next step SE6, the CPU 4 reads out the code type CT stored in the register CT and the route RT stored in the register RT, and sends it to the sound source 10 to instruct the sound source 10 to generate an accompaniment sound.
After all, in the case of this example, since the root is “E sound” and the chord type is “Ab / C”, the fraction code “C / E” is given to the sound source 10. Thereby, the tone generator 10 generates the accompaniment sound by converting the accompaniment pattern data sequentially read from the accompaniment pattern memory 9 according to the chord type CT and the root RT.
[0041]
As described above, according to the second embodiment, among the keys depressed according to the chord performance, whether the key is a fractional code or a non-fraction code according to the pitch difference between the lowest tone KC1 and the second bass KC2. It is discriminated whether the code is a fraction code, and if the code is a fraction code, the code is determined by referring to the fraction code discrimination table CT1. If the code is a non-fraction code, the code is discriminated by referring to the non-fraction code discrimination table CT2. It is possible to easily play a chord without being aware of a non-fractional chord.
In the first and second embodiments described above, the pitch differences CG1 and CG2 are both 5 semitones.DifferenceUses the tables CT1 and CT2, but is not limited to this, and may use six semitones.differenceThe above table may be defined.
[0042]
【The invention's effect】
According to the present invention, the pitch extracting means selects the lowest pitch of the lowest pitch among a plurality of pitches specified by the performance operation performed in the pitch specification area divided into the first and second pitches. Extracting the second lowest tone next to the lowest tone and the third lowest tone next to the second low tone, and generating the pitch difference by the lowest pitch, the second low tone, and the third low tone.ofEach note nameIn a predetermined order, The first pitch of the lowest pitch, the second pitch next to the first pitch, and the third pitch next to the second pitch. On the other hand, a first pitch difference representing a pitch difference between the second pitch name and the third pitch name, and a pitch difference between the first pitch name and the second pitch name are calculated. And a second pitch difference representing the second pitch difference. Then, when the lowest note is included in the first range,SaidFirst and second pitch differenceAnd the lowest soundThe chord type and the root note of the fractional chord are generated according to the following formula. On the other hand, when the lowest note is included in the second range,SaidFirst and second pitch differenceAnd the lowest soundThe chord type and root tone of the non-fractional chord are generated according to, and the accompaniment sound generation instructing means instructs the generation of the accompaniment tone according to the chord type and root chord generated by the chord discriminating means. A chord can be easily played without being aware of non-fractional chords.
[Brief description of the drawings]
FIG. 1 is an external view showing an external appearance of an electronic musical instrument according to a first embodiment of the present invention.
FIG. 2 is a block diagram illustrating a configuration of a first embodiment.
FIG. 3 is a diagram for explaining a panel switch 3 in the embodiment.
FIG. 4 is a diagram showing contents of a fraction code discrimination table CT1 in the embodiment.
FIG. 5 is a diagram showing contents of a non-fractional code discrimination table CT2 in the embodiment.
FIG. 6 is a flowchart for explaining the operation of a main routine in the embodiment.
FIG. 7 is a flowchart for explaining the operation of a switch processing routine in the embodiment.
FIG. 8 is a flowchart for explaining the operation of a keyboard processing routine in the embodiment.
FIG. 9 is a flowchart for explaining the operation of a code determination processing routine in the embodiment.
FIG. 10 is a flowchart for explaining the operation of a code determination processing routine according to the second embodiment.
[Explanation of symbols]
2 keys
2A Fractional code discrimination key range (first range)
2B Non-fractional chord discrimination key range (second range)
4 CPU (pitch extraction means, pitch difference generation means, code discrimination means)
5 ROM
6 RAM
8. Code discrimination table memory (code discrimination means)

Claims (4)

第1および第2の音域に分割された音高指定領域にてなされる演奏操作により指定される複数音高の内、最も低い音高の最低音と、当該最低音の次に低い第2低音と、当該第2低音の次に低い第3低音とを抽出する音高抽出手段と、
この音高抽出手段が抽出した最低音の音名を第1の音名とし、前記第2低音の音名と前記第3低音の音名とを当該第1の音名を基点として上昇方向に並べたときに、前記第1の音名に近い一方の音名を第2の音名とし、他方を第3の音名とした場合の、前記第2の音名と前記第3の音名との音高差を表わす第1の音高差と、前記第1の音名と前記第2の音名との音高差を表わす第2の音高差とを発生する音高差発生手段と、
前記最低音が前記第1の音域内に含まれる場合には、前記第1の音高差と前記第2の音高差と前記最低音とに応じて分数コードのコード種類および根音を生成し、一方、前記最低音が前記第2の音域内に含まれる場合には、前記第1の音高差と前記第2の音高差と前記最低音とに応じて非分数コードのコード種類および根音を生成するコード判別手段と、
このコード判別手段が生成するコード種類および根音に応じた伴奏音の発生を指示する伴奏音発生指示手段と
を具備することを特徴とする自動伴奏装置。
Among the plurality of pitches specified by the performance operation performed in the pitch specification area divided into the first and second pitches, the lowest pitch of the lowest pitch and the second low pitch next to the lowest pitch And a pitch extracting means for extracting a third bass which is next to the second bass,
The pitch name of the lowest tone extracted by the pitch extracting means is defined as a first pitch name, and the pitch name of the second low pitch and the third low pitch is determined in an ascending direction with the first pitch as a base point. When arranged, one pitch name close to the first pitch name is set as a second pitch name, and the other is set as a third pitch name , the second pitch name and the third pitch name. Means for generating a first pitch difference representing a pitch difference between the first pitch name and a second pitch difference representing a pitch difference between the first pitch name and the second pitch name. When,
When the lowest note is included in the first range, a chord type and a root note of a fractional code are generated according to the first pitch difference, the second pitch difference, and the lowest note. On the other hand, if the lowest note is included in the second range, the code type of the non-fractional code is determined according to the first pitch difference, the second pitch difference, and the lowest note. And chord determining means for generating a root sound
An automatic accompaniment apparatus comprising: an accompaniment sound generation instructing means for instructing generation of an accompaniment sound in accordance with a chord type and a root sound generated by the chord identification means.
演奏操作に応じて音高指定される複数音高の内、最も低い音高の最低音と、当該最低音の次に低い第2低音と、当該第2低音の次に低い第3低音とを抽出する音高抽出手段と、
この音高抽出手段が抽出した最低音の音名を第1の音名とし、前記第2低音の音名と前記第3低音の音名とを当該第1の音名を基点として上昇方向に並べたときに、前記第1の音名に近い一方の音名を第2の音名とし、他方を第3の音名とした場合の、前記第2の音名と前記第3の音名との音高差を表わす第1の音高差と、前記第1の音名と前記第2の音名との音高差を表わす第2の音高差とを発生する音高差発生手段と、
前記第2の音高差が所定度数以下である場合には、前記第1の音高差と前記第2の音高差と前記最低音とに応じて分数コードのコード種類および根音を生成し、一方、前記第2の音高差が所定度数以上である場合には、前記第1の音高差と前記第2の音高差と前記最低音とに応じて分数コードのコード種類および根音を生成するコード判別手段と、
このコード判別手段が生成するコード種類および根音に応じた伴奏音の発生を指示する伴奏音発生指示手段と
を具備することを特徴とする自動伴奏装置。
Among the plurality of pitches designated according to the performance operation, the lowest pitch of the lowest pitch, the second low pitch next to the lowest pitch, and the third low pitch next to the second low pitch Pitch extracting means for extracting,
The pitch name of the lowest tone extracted by the pitch extracting means is defined as a first pitch name, and the pitch name of the second low pitch and the third low pitch is determined in an ascending direction with the first pitch as a base point. When arranged, one pitch name close to the first pitch name is set as a second pitch name, and the other is set as a third pitch name, the second pitch name and the third pitch name. Means for generating a first pitch difference representing a pitch difference between the first pitch name and a second pitch difference representing a pitch difference between the first pitch name and the second pitch name. When,
When the second pitch difference is equal to or less than a predetermined frequency, a chord type and a root note of a non- fractional code are changed according to the first pitch difference, the second pitch difference, and the lowest note. produced, whereas, wherein when the second pitch difference is equal to or more than a predetermined degree, the code of the partial number of codes in response to said first pitch difference between said second pitch difference between the lowest tone Chord discriminating means for generating a type and a root note;
An automatic accompaniment apparatus comprising: an accompaniment sound generation instructing means for instructing generation of an accompaniment sound in accordance with a chord type and a root sound generated by the chord identification means.
前記コード判別手段は、予め前記第1の音高差および前記第2の音高差に対応して複数の分数コード種類が登録された第1の判別テーブルと、
予め前記第1の音高差および前記第2の音高差に対応して複数の非分数コード種類およびルート変化値が登録された第2の判別テーブルと、
を備えることを特徴とする請求項1または請求項2のいずれかに記載の自動伴奏装置。
Said code determination means, a first determination table in which a plurality of fraction code type is registered in correspondence to advance the first pitch difference and the second pitch difference,
A second determination table in which a plurality of non fraction code type and route change value is registered in correspondence to advance the first pitch difference and the second pitch difference,
The automatic accompaniment device according to claim 1, further comprising:
前記コード判別手段は、前記第2の音高差が完全4度以下である場合に非分数コードと見做し、当該第2の音高差が完全5度以上である場合に分数コードと見做すことを特徴とする請求項2記載の自動伴奏装置。The code discriminating means regards the second pitch difference as a non-fractional code when the second pitch difference is equal to or less than a perfect fourth, and regards the code as a fraction code when the second pitch difference is a perfect fifth or more. 3. The automatic accompaniment device according to claim 2, wherein
JP33620194A 1994-12-24 1994-12-24 Automatic accompaniment device Expired - Lifetime JP3543158B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33620194A JP3543158B2 (en) 1994-12-24 1994-12-24 Automatic accompaniment device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33620194A JP3543158B2 (en) 1994-12-24 1994-12-24 Automatic accompaniment device

Publications (2)

Publication Number Publication Date
JPH08179772A JPH08179772A (en) 1996-07-12
JP3543158B2 true JP3543158B2 (en) 2004-07-14

Family

ID=18296688

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33620194A Expired - Lifetime JP3543158B2 (en) 1994-12-24 1994-12-24 Automatic accompaniment device

Country Status (1)

Country Link
JP (1) JP3543158B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5917284B2 (en) * 2012-05-10 2016-05-11 株式会社河合楽器製作所 Fraction code determination device

Also Published As

Publication number Publication date
JPH08179772A (en) 1996-07-12

Similar Documents

Publication Publication Date Title
US7288711B2 (en) Chord presenting apparatus and storage device storing a chord presenting computer program
JP3906997B2 (en) Performance assist device, input sound conversion device and program thereof
JP2008089975A (en) Electronic musical instrument
JP3543158B2 (en) Automatic accompaniment device
JP4670686B2 (en) Code display device and program
JPH0744162A (en) Accompaniment device
JP3667387B2 (en) Electronic musical instruments
JP3567294B2 (en) Sound generator
JP2002182642A (en) Playing guide device and playing guide method
JP3743993B2 (en) Code determination apparatus, code determination method, and medium recording code determination method
JP3399068B2 (en) Electronic musical instrument
JPH05204297A (en) Syllable name generator
JP3543159B2 (en) Automatic accompaniment device
JP4032208B2 (en) Key information processing apparatus and key information processing method
JP4470895B2 (en) Code display device and program
JP2827953B2 (en) Electronic musical instrument
JP2879742B2 (en) Automatic accompaniment device
JP3543161B2 (en) Code data output device
JPH087436Y2 (en) Bass sound generator
JP3767665B2 (en) Performance guidance device and performance guidance method
JP2004198574A (en) Performance support device and performance support program
JPH08146959A (en) Automatic accompaniment device
JP2007240556A (en) Musical score display device and program
JPH07121162A (en) Electronic musical instrument
JPH05158471A (en) Musical score display device

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20031216

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040322

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20090416

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090416

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100416

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110416

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120416

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120416

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130416

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130416

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20140416

Year of fee payment: 10

EXPY Cancellation because of completion of term