JP3413842B2 - 自動伴奏装置 - Google Patents

自動伴奏装置

Info

Publication number
JP3413842B2
JP3413842B2 JP05800492A JP5800492A JP3413842B2 JP 3413842 B2 JP3413842 B2 JP 3413842B2 JP 05800492 A JP05800492 A JP 05800492A JP 5800492 A JP5800492 A JP 5800492A JP 3413842 B2 JP3413842 B2 JP 3413842B2
Authority
JP
Japan
Prior art keywords
chord
information
performance
data
detected
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 - Fee Related
Application number
JP05800492A
Other languages
English (en)
Other versions
JPH05257473A (ja
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 JP05800492A priority Critical patent/JP3413842B2/ja
Publication of JPH05257473A publication Critical patent/JPH05257473A/ja
Application granted granted Critical
Publication of JP3413842B2 publication Critical patent/JP3413842B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、鍵盤等の演奏用操作子
の操作による楽音を発生するとともにメモリに記憶した
演奏データに基づいて自動演奏を行なう自動伴奏装置
関する。
【0002】
【従来の技術】従来、電子楽器として自動伴奏機能を備
えたものがあり、例えば、所定長のコードやベースある
いはリズム等の伴奏パターンを記憶しておき、演奏クロ
ックに応じて伴奏パターンを繰り返し順次読み出すとと
もに、鍵盤等による演奏情報から実際の演奏の和音を検
出し、伴奏パターンをこの和音に応じた音高に変換して
伴奏音を発生させるものである。
【0003】また、自動演奏は上記のような自動伴奏機
能だけではなくシーケンサでも実現されており、楽譜に
相当する音高等からなる曲全体のシーケンスデータ(演
奏データ)を予めメモリに記憶しておき、このシーケン
スデータを演奏クロックに応じて順次読み出して所定の
楽音を発生して自動演奏を行うものである。また、この
シーケンサによる演奏と鍵盤による演奏とでアンサンブ
ル演奏を行うことができる。
【0004】
【発明が解決しようとする課題】しかしながら、このよ
うにシーケンサと鍵盤とでアンサンブル演奏を行いなが
ら前記のような自動伴奏を行うとき、従来は、伴奏パタ
ーンの音高を変換するための和音を鍵盤等による演奏情
報だけから検出するようにしているので、鍵盤等からの
情報が少なくて正確に和音を特定できない場合に、伴奏
音がシーケンサによる自動演奏の音と合わなくなること
があった(鍵盤等を誤って演奏したりして、すでにシー
ケンサと違和感が生じている場合などは論外であ
る。)。
【0005】また、自動伴奏とは別に、例えばコーラス
等の副旋律や付加音等を発生させる場合にも和音検出が
必要になるが、このような場合にも、鍵盤等による演奏
情報だけから和音を検出するようにすると、副旋律や付
加音等の音がシーケンサによる自動演奏の音と合わなく
なることがあった。
【0006】本発明は、鍵盤等の演奏用操作子によるマ
ニュアル演奏とシーケンスデータによる演奏を行い、か
つ自動生成させた自動演奏とも合わせて行なう際に、該
自動生成される音が、マニュアル演奏とシーケンスデー
タによる演奏と違和感のないものにすることを目的とす
る。
【0007】
【課題を解決するための手段】上記の課題を解決するた
めになした本発明の請求項1の自動伴奏装置は、マニュ
アル演奏情報を入力するための演奏用操作子と、前記演
奏用操作子から入力されるマニュアル演奏情報から和音
情報を検出する和音検出手段と、時間進行に沿った和音
情報を記憶する記憶手段と、前記和音検出手段で和音情
報が検出されたときはその和音情報を自動伴奏手段に出
力し、前記和音検出手段で和音情報が検出されなかった
ときはその検出のタイミングに対応する和音情報を前記
記憶手段から読み出してその和音情報を自動伴奏手段に
出力する出力手段と、自動伴奏データを再生する自動伴
奏手段であって、前記出力手段から出力される和音情報
に基づいて再生される自動伴奏データの発音音高を変換
するものと、を備えたことを特徴とする。
【0008】また、本発明の請求項2の自動伴奏装置
請求項1記載の自動伴奏装置であって、前記記憶手
段の和音情報を自動演奏データと対応させて記憶し、前
記出力手段は、前記和音検出手段で和音情報が検出され
ないとともにその検出のタイミングに対応する和音情報
が前記記憶手段に記憶されていないときには、前記演奏
操作子から入力されたマニュアル演奏情報と前記検出の
タイミングに対応する前記自動演奏データの演奏情報と
から和音情報を検出する再和音検出手段を含み、該再和
音検出手段で和音情報が検出されたときにはその和音情
報を自動伴奏手段に出力することを特徴とする。
【0009】
【作用】本発明の請求項1の自動伴奏装置において
音検出手段は鍵盤等の演奏用操作子で入力されるマニュ
アル演奏情報から和音情報を検出する。記憶手段は、時
間進行に沿った和音情報を記憶している。また、出力手
段は、前記和音検出手段で和音情報が検出されたときは
その和音情報を自動伴奏手段に出力し、前記和音検出手
段で和音情報が検出されなかったときはその検出のタイ
ミングに対応する和音情報を前記記憶手段から読み出し
てその和音情報を自動伴奏手段に出力する。自動伴奏手
段は、自動伴奏データを再生するとともに、前記出力手
段から出力される和音情報に基づいて再生される自動伴
奏データの発音音高を変換する。
【0010】また、本発明の請求項2の自動伴奏装置に
おいて、前記記憶手段は和音情報を自動演奏データと対
応させて記憶している。出力手段は、前記和音検出手段
で和音情報が検出されないとともにその検出のタイミン
グに対応する和音情報が前記記憶手段に記憶されていな
いときには、前記演奏操作子から入力されたマニュアル
演奏情報と前記検出のタイミングに対応する前記自動演
奏データの演奏情報とから和音情報を検出する再和音検
出手段を含み、該再和音検出手段で和音情報が検出され
たときにはその和音情報を自動伴奏手段に出力する
【0011】このように、本発明の請求項1および請求
項2の自動伴奏装置は、鍵盤情報等のマニュアル演奏情
報とシーケンスデータ等の自動演奏データとに応じた和
音で自動伴奏等の他の自動演奏を行う。
【0012】
【実施例】図1は本発明実施例の自動伴奏装置を備えた
電子楽器のブロック図であり、この電子楽器はCPU1
の制御により、鍵盤2の操作による鍵盤演奏、シーケン
スデータメモリ3に記憶されたシーケンスデータに基づ
く演奏(以後、シーケンス演奏という。)および自動伴
奏装置4による自動伴奏が行われる。
【0013】このとき、シーケンスデータメモリ3に記
憶されたシーケンスデータから予め和音を検出してお
き、このシーケンスデータから検出された和音と鍵盤2
から検出した和音とに応じて自動伴奏における和音が決
められ、シーケンス演奏と鍵盤演奏およびこれらの演奏
に相応しい自動伴奏がアンサンブルで演奏される。
【0014】鍵イベント検出回路2aは、鍵盤2におけ
るキーイベントを検出してキーイベントのあった鍵に対
応するキーコードをキーオン信号またはキーオフ信号と
ともに出力し、このキーコード、キーオン信号、キーオ
フ信号はCPU1に取り込まれる。
【0015】シーケンスデータメモリ3はRAMで構成
されており、例えばMIDI情報により外部からインタ
ーフェース5を介して入力されるシーケンスデータがこ
のシーケンスデータメモリ3に記憶される。
【0016】自動伴奏装置4は、例えば複数スタイルの
伴奏パターンが記憶され、選択されたスタイルの伴奏パ
ターンによって自動伴奏を行うものであり、鍵盤演奏や
シーケンス演奏の進行にしたがってCPU1から順次和
音が指定されると、この指定された和音に応じた伴奏の
楽音信号を発生する。なお、このような自動伴奏装置と
しては、例えばCメジャ等の予め設定された調のコード
やベース等の伴奏パターンを記憶しておき、指定された
和音の根音と種類に応じて伴奏パターンの音高を変換
し、指定された和音に応じた伴奏を行うものなどがあ
る。
【0017】音源6は、CPU1から入力されるキーコ
ード、ノートオンおよびノートオフに応じて発音処理と
消音処理を行うもので、鍵盤1による演奏とシーケンス
演奏についての楽音信号を発生する。この音源6からの
楽音信号はミキサ7で自動伴奏装置4からの楽音信号と
合成されてサウンドシステム8に出力され、サウンドシ
ステム8はこの楽音信号のD/A変換、増幅等を行って
楽音を発生する。
【0018】テンポクロック発生回路9は、設定された
テンポ値に応じて1拍当り24クロック(1拍は4分音
符1個)のテンポクロックを発生し、CPU1はこのテ
ンポクロックにより24分の1拍毎に割込み処理を行な
ってシーケンス演奏の発音制御を行なう。
【0019】プログラムメモリ10はROMで構成され
ており、図3〜図8にフローチャートを示した制御プロ
グラムが記憶されている。そして、CPU1は、このプ
ログラムメモリ10の制御プログラムに基づいてワーキ
ングメモリ11に設定した各種レジスタやフラグを使用
しながら制御を行なう。
【0020】図2はシーケンスデータのフォーマットを
示す図であり、この実施例のシーケンスデータは、キー
オンまたはキーオフのタイミングを曲の先頭からのクロ
ック数によって表すタイミングデータ、キーオンまたは
キーオフを示すイベントデータ、キーオンまたはキーオ
フの対象となる音高を示すキーコード、および、曲の終
了を示すエンドデータで構成されている。
【0021】また、これらのデータは、タイミングデー
タ、イベントデータおよびキーコードの順で各イベント
毎にセットにされるとともに曲の最後のキーコードの後
にはエンドデータが記憶され、各データは、シーケンス
データメモリ3において曲の先頭側から順にSQE
(0),SEQ(1),SEQ(2),…のように変数
I(I=0,1,2,…)で識別されるレジスタに記憶
される。
【0022】この実施例では、1曲を2拍(4/4拍子
で1/2小節:48クロック)毎の判定区間に区切り、
この判定区間内でキーオンとなっているキーコードに応
じて各判定区間毎に和音を検出する。なお、シーケンス
データについては、検出された和音または和音が検出さ
れなかったことを示すデフォルト値を各判定区間毎に記
憶しておく。
【0023】また、鍵盤操作から和音が検出された場合
はその和音を検出和音として自動伴奏装置4に指定し、
鍵盤操作から和音が検出されなかった場合はシーケンス
データの対応する判定区間の和音を検出和音として自動
伴奏装置4に指定する。さらに、鍵盤操作でもシーケン
スデータでも和音が検出されなかった判定区間について
は、その判定区間における鍵盤とシーケンスデータの両
方のキーオンのキーコードに基づいて和音を決定し、自
動伴奏装置4に指定する。
【0024】なお、シーケンスデータについては判定区
間内の全てのキーオンのキーコードに基づいて和音を検
出し、鍵盤については最大で3つのキーオンのキーコー
ドに基づいて和音を検出する。
【0025】図3は制御プログラムのメインルーチン、
図4〜図8はサブルーチンおよび割込み処理ルーチンを
示すフローチャートでり、各フローチャートに基づいて
動作を説明する。なお、以下の説明および各フローチャ
ートにおいて、制御に用いられる各レジスタおよびフラ
グを下記のラベルで表記し、各レジスタおよびフラグと
それらの内容は特に断らない限り同一のラベルで表す。
【0026】 SRUN:シーケンサのスタート/ストップを示すフラ
グ ARUN:自動伴奏のスタート/ストップを示すフラグ SEQ(i):シーケンスデータ SQPNT,P:シーケンスデータを指すポインタレジ
スタ SKC(i):シーケンスデータにおける判定区間内で
キーオンになっているキーコード)のリストをとるレジ
スタ M:シーケンスデータにおける判定区間内のキーコード
のリストの個数をカウントするレジスタ SRT(i):シーケンスデータで検出した和音の根音
を記憶するレジスタ STP(i):シーケンスデータで検出した和音の種類
を記憶するレジスタ
【0027】EVKC:キーオンイベントのキーコード
を記憶するレジスタ KC(i):鍵盤操作における判定区間内でキーオンに
なっているキーコードのリストをとるレジスタ N:鍵盤演奏における判定区間内のキーコードのリスト
の個数をカウントするレジスタ
【0028】TIME:シーケンス演奏時のテンポクロ
ックをカウントするタイミングカウンタ FLG:シーケンス演奏時の和音検出のタイミングをと
る内部フラグ CDPNT:シーケンスデータの各判定区間毎の和音を
示すポインタ CHRD:判定区間におけるキーオンの構成音を12の
音名に対応する12ビットで一時記憶する12ビットの
レジスタ I:判定区間を指すポインタレジスタ RT:音源に指定する和音の根音を格納するレジスタ TP:音源に指定する和音の種類を格納するレジスタ
【0029】電源の投入等によって図3のメインルーチ
ンの処理を開始すると、ステップS1で各フラグおよび
レジスタのリセット等の初期設定を行い、ステップS2
でインターフェース5からシーケンスデータを取り込ん
でシーケンスデータメモリ3のレジスタSEQ(I)に
記憶し、ステップS3でこのシーケンスデータに基づい
て図4のシーケンサコード検出処理を行う。
【0030】図4のシーケンサコード検出処理では、先
ず、ステップS21でレジスタI,P,M,CHRDを
クリアし、ステップS22で、和音が検出されていない
ことを示すデフォルト値“FH ”をレジスタSRT
(i)の全てにセットしてステップS23に進む。
【0031】ここで、後述のステップS202の処理に
より、ポインタPは0,3,6,…のように0から始ま
る3の倍数になるので、SEQ(P)はタイミングデー
タまたはエンドデータ、SEQ(P+1)はイベントデ
ータ、SEQ(P+2)はキーコードとなる。
【0032】ステップS23では、SEQ(P)がエン
ドデータであるか否かを判定し、エンドデータであれば
ステップS203に進み、エンドデータでなければSE
Q(P)はタイミングデータであるのでステップS24
に進み、このタイミングデータSEQ(P)がポインタ
Iで示される現在の判定区間内のタイミングであるか否
かを判定する。
【0033】すなわち、Iは0から始まる判定区間のポ
インタで、1つの判定区間は48クロックであるので、
SEQ(P)<(I+1)×48であればタイミングデ
ータSEQ(P)は現在の判定区間内のタイミングであ
り、SEQ(P)<(I+1)×48でなければタイミ
ングデータSEQ(P)は次の判定区間のタイミングで
ある。
【0034】このステップS24の判定により、タイミ
ングデータSEQ(P)が現在の判定区間内である間
は、ステップS25以降でその判定区間内のキーオンの
キーコードを記憶する処理を行い、タイミングデータS
EQ(P)が次の判定区間になると、ステップS203
以降で記憶したキーコードに基づいてそれまでの判定区
間についての和音検出の処理を行う。
【0035】ステップS25では、イベントデータSE
Q(P+1)がオンイベントデータであるか否かを判定
し、オンイベントデータであればステップS26以降の
処理を行い、オンイベントデータでなければオフイベン
トデータであるのでステップS29以降の処理を行う。
【0036】ステップS26ではキーコードSEQ(P
+2)をキーコードのリストSKC(M)に格納し、ス
テップS27でリストの個数Mを1増加させる。そし
て、ステップS28で、キーコードSEQ(P+2)に
対応するCHRDのビットを“1”にセットし、ステッ
プS202でポインタPを3増加してステップS23に
戻る。
【0037】一方、ステップS29では、イベントデー
タSEQ(P+1)がオフイベントデータであるので、
このオフイベントに対応するキーコードSEQ(P+
2)をキーコードのリストSKC(0)〜SKC(M−
1)から削除して、削除データ以降を前にシフトしてリ
ストの配列を詰め、ステップS201でリストの個数M
を1減少させてステップS202に進む。
【0038】上記のステップS25〜ステップS202
の処理により、オンイベントが判定区間の最後まで継続
しているキーコードのリストがSKC(0)〜SKC
(M−1)として得られるとともに、判定区間内で少な
くとも一度はオンイベントとなっていた全てのキーコー
ドがレジスタCHRDの“1”のビットによって表現さ
れる。
【0039】ここで、この実施例では、12ビットの各
ビットを12の音名に対応付けて和音の構成音のビット
を“1”それ以外のビットと“0”にしたデータを和音
の種類毎に和音種類テーブルとして記憶しており、ステ
ップS203において、CHRDを循環シフトしながら
CHRDと和音種類テーブルとのマッチング処理を行
い、マッチングした場合は、和音種類テーブルから和音
の種類を検出するとともに循環シフトのシフト回数を和
音の根音としてレジスタRRTに格納する。なお、この
ような和音検出方法は例えば特公昭57−16359号
公報に開示されている。
【0040】次に、ステップS204では、ステップS
203で和音が検出されたか否かを判定し、和音が検出
されていなければステップS206に進み、和音が検出
されていれば、ステップS205で、検出された和音の
根音RRTをレジスタSRT(I)に格納するとともに
和音の種類をレジスタSTP(I)に格納してステップ
S206に進む。
【0041】ステップS206では、キーコードのリス
トSKC(0)〜SKC(M−1)の各キーコードに対
応するCHRDのビットを“1”にセットして他のビッ
トは“0”にリセットし、ステップS207でSEQ
(P)がエンドデータであるか否かを判定する。
【0042】ステップS207でSEQ(P)がエンド
データでなければ、ステップS208で判定区間のポイ
ンタIを1増加させてステップS24以降を繰り返し、
エンドデータであれば図3のメインルーチンに復帰す
る。
【0043】このように、ステップS203〜ステップ
S206の処理は各判定区間の直後に行われ、和音が検
出された判定区間につては、そのポインタIで示される
レジスタSRT(I)に和音の根音が記憶されるととも
にレジスタSTP(I)に種類が記憶される。また、和
音が検出されなかった区間については、レジスタSRT
(I)にデフォルト値が記憶されることになる。なお、
ステップS206の処理により、判定区間を跨がってキ
ーオンとなっているキーコードも次の判定区間でキーオ
ンのキーコードの候補とされる。
【0044】図3のメインルーチンにおいて、上記のシ
ーケンサコード検出処理が終了すると、ステップS4で
根音のレジスタRTにデフォルト値“FH ”をセットす
るとともにレジスタN,Mを“0”にリセットしてステ
ップS5に進む。
【0045】ステップS5では、鍵盤2におけるキーイ
ベントの有無を判定し、キーイベントが無ければステッ
プS7に進み、キーイベントが有ればステップS6で図
5のキーイベント処理を行なってステップS7に進む。
【0046】ステップS7では、シーケンサのスタート
/ストップスイッチのオンイベントの有無を判定し、オ
ンイベントが無ければステップS14に進み、オンイベ
ントが有れば、ステップS8でシーケンサのスタート/
ストップのフラグSRUNを反転してステップS9でフ
ラグSRUN=1であるか否かを判定する。
【0047】ステップS9でSRUN=1であれば、ス
テップS10でレジスタSQPNT,M,CDPNT,
TIMEをクリアしてステップS12に進み、ステップ
S9でRUN=1でなければ、ステップS11でシーケ
ンサの消音処理を行ってステップS14に進む。
【0048】ステップS12では、シーケンスデータの
最初の和音の根音がSRT(0)≠FH であるか否かを
判定し、SRT(0)≠FH でなければステップS14
に進み、SRT(0)≠FH であれば、ステップS13
で根音SRT(0)と種類STP(0)を自動伴奏装置
4に出力してステップS14に進む。なお、これらの根
音SRT(0)と種類STP(0)はステップS3のシ
ーケンスコード検出処理によって検出されたものであ
る。
【0049】ステップS14では、自動伴奏のスタート
/ストップスイッチのオンイベントの有無を判定し、オ
ンイベントが無ければそのままステップS5以降の処理
を行い、オンイベントが有ればステップS15で自動伴
奏のスタート/ストップのフラグARUNを反転してス
テップS16でフラグARUN=1であるか否かを判定
する。
【0050】そして、ARUN=1であればステップS
17で自動伴奏をスタートさせてステップS5以降の処
理を行い、ARUN=1でなければステップS18で自
動伴奏をストップさせてステップS5以降の処理を行
う。
【0051】図5のキーイベント処理では、ステップS
31でキーイベントのあったキーコードをレジスタEV
KCに格納し、ステップS32でキーオンイベントであ
るか否かを判定する。
【0052】ステップS32でキーオンイベントであれ
ば、ステップS33で発音処理を行ってステップS34
でキーコードEVKCをレジスタKC(N)に格納し、
ステップS35でキーコードのリストの個数Nを1増加
させてステップS36の処理を行う。ステップS36で
は、レジスタKC(0)〜KC(N−1)の順にキーコ
ードが低音から順次高音になるように、リストKC
(0)〜KC(N−1)のデータを昇べき順にソート
し、ステップS301に進む。
【0053】ステップS32でキーオンイベントでなけ
れば、ステップS37で消音処理を行い、ステップS3
8でこのオフイベントに対応するキーコードEVKCを
キーコードのリストKC(0)〜KC(N−1)から削
除して、削除データ以降を前にシフトしてキーコードの
配列を詰め、ステップS39で変数Nを1減少させてス
テップS301に進む。
【0054】上記のステップS32〜ステップS39の
処理により、鍵盤における現在オンイベントとなってい
るキーコードのリストがSKC(0)〜SKC(N−
1)として得られ、このリストに基づいてステップS3
01で図6の和音検出処理を行い、この和音検出処理が
終了するとメインルーチンに復帰する。
【0055】図6の和音検出処理では、先ず、ステップ
S41で、キーコードのリストKC(0)〜KC(N−
1)のうち所定数のキーコードKC(0)〜KC(i)
に対応するCHRDのビットを“1”にセットして他の
ビットは“0”にリセットする。ただし、変数iは鍵盤
における現在のキーコードのリストの個数Nに応じてN
<3のときi=N−1、N≧3のときi=2とする。
【0056】ここで、リストKC(0)〜KC(N−
1)のキーコードは低音側から高音側に昇べき順にソー
トされているので、現在のキーオンの数(リストの個
数)が3未満のときは全てのキーコードを取り出すこと
になるが、3以上のときは低音側から3音だけを取り出
すことになる。
【0057】上記の処理が終了すると、ステップS42
で、前記ステップS203と同様に、CHRDを循環シ
フトしながらCHRDと和音種類テーブルとのマッチン
グ処理を行い、和音の種類およびシフト回数(根音)を
検出する。そして、ステップS43で和音が検出された
か否かの判定を行い、和音が検出された場合は、ステッ
プS49で、検出された和音の種類と根音RRTをそれ
ぞれレジスタTPおよびRTに記憶し、ステップS40
1で自動伴奏装置4に根音RTと種類TPを出力しても
とのルーチンに復帰する。
【0058】一方、ステップS43の判定で、和音が検
出されなければ、ステップS44で現在の判定区間につ
いてシーケンスデータから和音が検出されているか否か
を判定する。すなわち、後述説明する割込み処理(シー
ケンサの動作)により現在の判定区間はポインタCDP
NTで示されるので、このCDPNTに対応するレジス
タSRT(CDPNT)の値がデフォルト値FH である
か否かを判定する。
【0059】そして、SRT(CDPNT)がデフォル
ト値FH でなければ和音は検出されているので、ステッ
プS45で、このSRT(CDPNT)を和音の根音と
してレジスタRTに記憶するとともにSTP(CDPN
T)を和音の種類としてレジスタTPに記憶し、ステッ
プS401で自動伴奏装置4に根音RTと種類TPを出
力してもとのルーチンに復帰する。
【0060】一方、ステップS44の判定で、SRT
(CDPNT)がデフォルト値FH であれば、現在の判
定区間についてシーケンスデータから和音が検出されて
いないことになるので、ステップS46でリストSKC
(0)〜SKC(M−1)の各キーコードに対応するC
HRDのビットを“1”にセットする。
【0061】ここで、レジスタSKC(0)〜SKC
(M−1)には、後述説明する割込み処理により図4の
シーケンスコード検出処理の場合と同様に現在の判定区
間のキーコードが記憶されており、レジスタCHRDに
は鍵盤にるキーオンのキーコードが記憶されている。す
なわち、ステップS46の処理により、シーケンスデー
タにおけるキーオンのキーコードと鍵盤によるキーオン
のキーコードの両方がレジスタCHRDに“1”のビッ
トとして記憶される。
【0062】そこで、ステップS46が終了すると、ス
テップS47で前記同様にCHRDと和音種類テーブル
とのマッチング処理を行って和音の種類およびシフト回
数(根音)を検出し、ステップS48で、マッチングに
より和音が検出されたか否かを判定する。
【0063】和音が検出されなければそのままもとのル
ーチンに復帰し、和音が検出されれば、ステップS49
およびステップS401により、検出された和音の根音
RTと種類TPを自動伴奏装置4に出力してもとのルー
チンに復帰する。なお、和音が検出されなかった場合に
は、自動伴奏の和音は変化しない。
【0064】図7のテンポクロック割込み処理は、テン
ポクロック発生回路9からのテンポクロックにより1/
24拍毎に起動され、先ず、ステップS51で図8のシ
ーケンスデータ再生処理を行い、ステップS52でFL
G=1であるか否かを判定する。
【0065】FLG=1でなければステップS54に進
み、FLG=1であればステップS53で図6の和音検
出処理を行ってステップS54に進む。ここで、フラグ
FLGは、後述説明するようにステップS51のシーケ
ンス再生処理において、シーケンスデータ中に現在のタ
イミングクロックにおけるイベントが検出された場合に
“1”にセットされ、イベントが検出されない間は
“0”にリセットされる。すなわち、前記のように鍵盤
でキーイベントがあったときに和音検出処理が行われる
のと同様に、ステップS52,53により、シーケンス
データのイベントが検出されたときに和音検出処理が行
われる。
【0066】次に、ステップS54でタイミングクロッ
クTIMEを更新し、ステップS55でTIME mo
d 48=0であるか否か、すなわち、現在のタイミン
グが判定区間の先頭であるか否かを判定し、先頭でなけ
ればそのままもとのルーチンに復帰し、先頭であればス
テップS56で判定区間のポインタCDPNTを更新し
てもとのルーチンに復帰する。
【0067】図8のシーケンスデータ再生処理では、先
ずステップS61でフラグFLGを“0”にリセット
し、ステップS62でSRUN=1であるか否かを判定
する。ステップS62の判定で、SRUN=1でなけれ
ばシーケンサストップが指示されているのでそのままメ
インルーチンに復帰し、SRUN=1であればシーケン
サスタートが指示されているのでステップS63に進
む。
【0068】ここで、シーケンサデータポインタSQP
NTはステップS603で0,3,6,…のように0か
ら始まる3の倍数にされるポインタであり、SEQ(S
QPNT)はタイミングデータまたはエンドデータを示
している。そこで、ステップS63で、SEQ(SQP
NT)=TIMEであるか否か、すなわち、現在のタイ
ミングでシーケンスデータにイベントが有るか否かを判
定する。
【0069】そして、現在のタイミングに合ったイベン
トがない場合はそのままメインルーチンに復帰し、現在
のタイミングに合ったイベントがあれば、ステップS6
4でそのイベントのキーコードSEQ(SQPNT+
2)をレジスタEVKCに記憶し、ステップS65でそ
のイベントがオンイベントデータであるか否かを判定す
る。
【0070】ステップS65でオンイベントデータであ
れば、ステップS66でキーコードEVKCについての
発音処理を行ってステップS67でキーコードEVKC
をレジスタSKC(M)に格納し、ステップS68でリ
ストの個数Mを1増加させてステップS603に進む。
【0071】ステップS65でオンイベントデータでな
ければ、ステップS69でキーコードEVKCについて
の消音処理を行い、ステップS601でこのオフイベン
トに対応するキーコードEVKCをキーコードのリスト
SKC(0)〜SKC(M−1)から削除して、削除デ
ータ以降を前にシフトしてキーコードの配列を詰め、ス
テップS602でリストの個数Mを1減少させてステッ
プS603に進む。
【0072】次に、ステップS603でシーケンスデー
タポインタSQPNTを3増加させ、ステップS604
でフラグFLGを“1”にセットする。そして、ステッ
プS605でシーケンスデータSEQ(SQPNT)が
エンドデータであるか否かを判定し、エンドデータでな
ければステップS63以降を繰り返し、エンドデータで
あればフラグSRUNを“0”にリセットしてメインル
ーチンに復帰する。
【0073】以上のように、シーケンサコード検出処理
によって、シーケンスデータから予め和音を検出してお
き、キーイベント処理で鍵盤だけから和音が検出できな
かたときに、シーケンスデータの和音、または、鍵盤操
作によるキーコードとシーケンスデータのキーコードか
ら和音を検出して自動伴奏が行われるので、鍵盤操作で
和音が検出されないときにそれまでの和音で自動伴奏を
続行するように場合に比べて、自動伴奏の和音が鍵盤演
奏とシーケンス演奏に相応しいものとなる。
【0074】なお、鍵盤のキーコード、シーケンスデー
タのキーコードあるいは鍵盤とシーケンスデータのキー
コードから、それぞれ和音を検出する方法は実施例のも
のに限らず他の方法でもよい。また、和音を検出する方
法は実施例のように自動伴奏のために和音を検出する場
合に限らず、付加音などを生成するためにも応用でき
【0075】実施例では、1曲分のシーケンスデータを
用いたが、曲の途中までを繰り返し演奏する自動演奏デ
ータを用いてもよい。また、シーケンスデータから和音
を検出するときに1曲全部を予め分析したが、曲の進行
に合わせて1区間ずつ先読みして検出してもよい。
【0076】
【発明の効果】請求項1記載の発明によれば、鍵盤等の
演奏用操作子で入力されるマニュアル演奏情報から和音
情報を検出し、和音情報が検出されたときはその和音情
報を自動伴奏手段に出力し、和音情報が検出されなかっ
たときはその検出のタイミングに対応する和音情報を記
憶手段から読み出してその和音情報を自動伴奏手段に出
力し、この和音情報に基づいて、再生される自動伴奏デ
ータの発音音高を変換して自動演奏を行うようにしたの
で、自動演奏に対しても違和感のない他の自動演奏デー
タを生成し演奏できる。また、請求項2記載の発明によ
れば、和音情報を自動演奏データと対応させて記憶手段
に記憶しておき、和音情報が検出されないとともにその
検出のタイミングに対応する和音情報が記憶手段に記憶
されていないときには、演奏操作子から入力されたマニ
ュアル演奏情報と前記検出のタイミングに対応する自動
演奏データの演奏情報とから和音情報を検出し、該和音
情報が検出されたときにはその和音情報を自動伴奏手段
に出力し、この和音情報に基づいて、再生される自動伴
奏データの発音音高を変換して自動演奏を行うようにし
たので、自動演奏に対して違和感のない他の自動演奏デ
ータを生成し演奏できる。
【図面の簡単な説明】
【図1】本発明実施例の自動伴奏装置を備えた電子楽器
のブロック図である。
【図2】実施例におけるシーケンスデータのフォーマッ
トを示す図である。
【図3】実施例における制御のメインルーチンのフロー
チャートである。
【図4】実施例におけるシーケンサコード検出処理のフ
ローチャートである。
【図5】実施例におけるキーイベント処理のフローチャ
ートである。
【図6】実施例における和音検出処理のフローチャート
である。
【図7】実施例におけるテンポクロック割込み処理のフ
ローチャートである。
【図8】実施例におけるシーケンスデータ再生処理のフ
ローチャートである。
【符号の説明】
1…CPU、2…鍵盤、3…シーケンスデータメモリ、
4…自動伴奏装置。

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 マニュアル演奏情報を入力するための演
    奏用操作子と、 前記演奏用操作子から入力されるマニュアル演奏情報
    ら和音情報を検出する和音検出手段と、時間進行に沿った和音情報を記憶する記憶手段と、 前記和音検出手段で和音情報が検出されたときはその和
    音情報を自動伴奏手段に出力し、前記和音検出手段で和
    音情報が検出されなかったときはその検出のタイミング
    に対応する和音情報を前記記憶手段から読み出してその
    和音情報を自動伴奏手段に出力する出力手段と、 自動伴奏データを再生する自動伴奏手段であって、前記
    出力手段から出力される和音情報に基づいて再生される
    自動伴奏データの発音音高を変換するものと、 を備えた
    ことを特徴とする自動伴奏装置
  2. 【請求項2】 前記記憶手段の和音情報を自動演奏デー
    タと対応させて記憶し、 前記出力手段は、前記和音検出手段で和音情報が検出さ
    れないとともにその検出のタイミングに対応する和音情
    報が前記記憶手段に記憶されていないときには、前記演
    奏操作子から入力されたマニュアル演奏情報と前記検出
    のタイミングに対応する前記自動演奏データの演奏情報
    とから和音情報を検出する再和音検出手段を含み、 該再和音検出手段で和音情報が検出されたときにはその
    和音情報を自動伴奏手段に出力すること を特徴とする
    求項1記載の自動伴奏装置。
JP05800492A 1992-03-16 1992-03-16 自動伴奏装置 Expired - Fee Related JP3413842B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP05800492A JP3413842B2 (ja) 1992-03-16 1992-03-16 自動伴奏装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP05800492A JP3413842B2 (ja) 1992-03-16 1992-03-16 自動伴奏装置

Publications (2)

Publication Number Publication Date
JPH05257473A JPH05257473A (ja) 1993-10-08
JP3413842B2 true JP3413842B2 (ja) 2003-06-09

Family

ID=13071839

Family Applications (1)

Application Number Title Priority Date Filing Date
JP05800492A Expired - Fee Related JP3413842B2 (ja) 1992-03-16 1992-03-16 自動伴奏装置

Country Status (1)

Country Link
JP (1) JP3413842B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6421811B2 (ja) * 2016-11-10 2018-11-14 カシオ計算機株式会社 コード選択方法およびコード選択装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55109377A (en) * 1979-02-16 1980-08-22 Ngk Spark Plug Co Ltd Honey comb battery
JPS57204664U (ja) * 1981-06-24 1982-12-27
JPS63175270U (ja) * 1987-02-18 1988-11-14
JPS6460971A (en) * 1987-08-31 1989-03-08 Shin Kobe Electric Machinery Cylindrical sealed type lead storage battery
JPH0770310B2 (ja) * 1990-03-27 1995-07-31 富士電気化学株式会社 筒形非水電解液電池の製造方法

Also Published As

Publication number Publication date
JPH05257473A (ja) 1993-10-08

Similar Documents

Publication Publication Date Title
US6504090B2 (en) Apparatus and method for practice and evaluation of musical performance of chords
JP3807275B2 (ja) コード提示装置およびコード提示用コンピュータプログラム
JP2000514571A (ja) 自動即興演奏システム及び方法
JP3528654B2 (ja) メロディ生成装置及びリズム生成装置と記録媒体
JPH07219536A (ja) 自動編曲装置
JP2008089975A (ja) 電子楽器
JP2900753B2 (ja) 自動伴奏装置
JP3413842B2 (ja) 自動伴奏装置
JP4556852B2 (ja) 電子楽器および電子楽器に適用されるコンピュータプログラム
JP4089447B2 (ja) 演奏データ処理装置および演奏データ処理用プログラム
JP2745215B2 (ja) 電子弦楽器
JP2640992B2 (ja) 電子楽器の発音指示装置及び発音指示方法
JP2856025B2 (ja) 自動伴奏装置
JP3807333B2 (ja) メロディ検索装置およびメロディ検索プログラム
JP3661963B2 (ja) 電子楽器
JP3319390B2 (ja) 自動伴奏装置
JP4253997B2 (ja) 楽音情報変換装置、その制御方法、該制御方法を実現するプログラムを格納した記憶媒体
JP3738634B2 (ja) 自動伴奏装置、及び記録媒体
JP3800947B2 (ja) 演奏データ処理装置及び方法並びに記憶媒体
JP2972362B2 (ja) 音楽的制御情報処理装置、音楽的制御情報処理方法、演奏パターン選択装置及び演奏パターン選択方法
JP2859870B2 (ja) 楽音制御データ圧縮装置、楽音制御データ圧縮方法、楽音制御データ伸長装置及び楽音制御データ伸長方法
JP2000029466A (ja) 電子鍵盤楽器
JP3499672B2 (ja) 自動演奏装置
JP2991072B2 (ja) 電子楽器
JPH08185180A (ja) 自動伴奏装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20030304

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

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees