JP2900753B2 - 自動伴奏装置 - Google Patents

自動伴奏装置

Info

Publication number
JP2900753B2
JP2900753B2 JP5137392A JP13739293A JP2900753B2 JP 2900753 B2 JP2900753 B2 JP 2900753B2 JP 5137392 A JP5137392 A JP 5137392A JP 13739293 A JP13739293 A JP 13739293A JP 2900753 B2 JP2900753 B2 JP 2900753B2
Authority
JP
Japan
Prior art keywords
chord
pitch
pattern
note
sound
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
JP5137392A
Other languages
English (en)
Other versions
JPH06348271A (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 JP5137392A priority Critical patent/JP2900753B2/ja
Priority to US08/252,095 priority patent/US5563361A/en
Publication of JPH06348271A publication Critical patent/JPH06348271A/ja
Application granted granted Critical
Publication of JP2900753B2 publication Critical patent/JP2900753B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、電子楽器等に備えら
れ、予め記憶された伴奏パターンや演奏者が入力した伴
奏パターンに基づいて演奏者の演奏に合わせて自動伴奏
を行う自動伴奏装置に関する。
【0002】
【従来の技術】従来、自動伴奏装置は、例えばロックや
カントリーなど楽曲の各種スタイル(ジャンル等)に応
じた多種類の伴奏パターンを記憶しており、自動伴奏時
には、演奏者の選択した伴奏パターンに基づいて、鍵盤
等から検出した入力和音に合わせて自動伴奏を行う。
【0003】ここで、伴奏パターンは、個々の伴奏音の
音高に応じた音高データを発音タイミングを示すタイミ
ングデータとセットにしたものであるが、この音高デー
タとしては例えばCMajなど所定和音に基づくキーコー
ドが用いられ、入力和音の種類と根音に応じた音高変換
を考慮したソースパターンとして作成される。
【0004】すなわち、自動伴奏時には、鍵盤等から入
力される入力和音の種類に応じてソースパターンのキー
コードを音高変換するとともに、全音高を入力和音の根
音に応じてシフトし、和音に合った音高の伴奏音を生成
している。
【0005】なお、所定和音で作成したソースパターン
を入力和音の種類に合ったように音高変換するために、
ソースパターンのキーコードについてのシフトデータを
和音の種類に対応付けてノート変換テーブルとして記憶
しておき、入力される和音の種類に応じたシフトデータ
をノート変換テーブルから読み出し、この読み出したシ
フトデータをソースパターンのキーコードと演算するこ
とにより和音の種類に応じた伴奏パターンを得るように
している。
【0006】
【発明が解決しようとする課題】しかし、多くの伴奏パ
ターンは装飾的な音など和音構成音以外の音を含んでお
り、最適な伴奏パターンを得るためには、これらの和音
構成音以外の音に対して伴奏パターンの種類に応じた音
高変換を行う必要がある。このため、パターン制作者
は、音高変換を行うためのノート変換テーブルをソース
パターン毎(伴奏パターンの種類毎)に作成する必要が
あった。
【0007】本発明は、各ソースパターン毎にノート変
換テーブルを作成する必要がなく、調性に応じたノート
変換テーブルにより、演奏される調性に合った伴奏音を
発生することができる自動伴奏装置を得ることを課題と
する。
【0008】
【課題を解決するための手段】上記の課題を解決するた
めになした本発明の自動伴奏装置は、伴奏パターンの各
構成音の音高を、指定された和音に応じて変換し自動伴
奏を行う自動伴奏装置であって、調性情報を入力する調
性情報入力手段と、調性情報と前記伴奏パターンの和音
に対応して設けられ、12音名それぞれに対する属性と
して少なくとも、コード音か、コード音以外のスケール
音か、ノンスケール音かを定義した属性記憶手段と、前
記調性情報入力手段で入力された調性情報と前記伴奏パ
ターンの和音とに基づき、12音名それぞれに対応する
音高シフト情報を前記各属性毎に生成する変換情報生成
手段と、上記変換情報生成手段で生成された12音名そ
れぞれに対応する音高シフト情報を各属性毎に記憶する
変換情報記憶手段と、前記属性記憶手段を参照すること
により、前記伴奏パターンの各構成音の音名がいずれの
属性であるかを判定する属性判定手段と、前記属性判定
手段により判定された伴奏パターンの各構成音の属性
よび音名に基づいて、前記伴奏パターンの各構成音に対
応する音高シフト情報を変換情報記憶手段から読み出
し、該読み出された音高シフト情報に基づいて伴奏パタ
ーンの各構成音の音高をシフトするとともに、前記指定
された和音の根音に応じて音高をシフトさせる音高変換
手段と、を備えたことを特徴とする。なお、調性情報入
力手段は、伴奏パターンとともにその伴奏パターンの調
性を入力するような手段でもよく、また、鍵盤演奏操作
等に基づいて演奏される調性を自動検出するような手段
でもよい。
【0009】
【作用】本発明の自動伴奏装置において、属性記憶手段
には、調性情報と前記伴奏パターンの和音に対応して設
けられ、12音名それぞれに対する属性として少なくと
も、コード音か、コード音以外のスケール音か、ノンス
ケール音かが定義されている。変換情報生成手段は、前
記調性情報入力手段で入力された調性情報と前記伴奏パ
ターンの和音とに基づき、12音名それぞれに対応する
音高シフト情報を前記各属性毎に生成する。
【0010】また、属性判定手段により、前記属性記憶
手段を参照することにより、前記伴奏パターンの各構成
音の音名がいずれの属性であるかが判定される。そし
て、音高変換手段により、この属性判定手段により判定
された伴奏パターンの各構成音の属性および音名に基づ
いて、前記伴奏パターンの各構成音に対応する音高シフ
ト情報を変換情報記憶手段から読み出され、該読み出さ
れた音高シフト情報に基づいて伴奏パターンの各構成音
の音高をシフトされるとともに、前記指定された和音の
根音に応じて音高がシフトされる。
【0011】なお、調性情報と前記伴奏パターンの和音
に対応して設けられ、12音名それぞれに対する属性
は、音楽的に決められ、入力された調性情報とソースパ
ターン(伴奏パターン)の和音および属性に応じた音高
シフト情報は自動生成される。また、この音高シフト情
はソースパターン(伴奏パターン)の種類に係わらず
音楽的に最適なものとして決められる。したがって、ソ
ースパターンの構成音はそのソースパターンの種類に係
わらず、音楽的に最適なものに変換できる。
【0012】
【実施例】図1は本発明実施例の自動伴奏装置を適用し
た電子楽器のブロック図であり、CPU1はプログラム
メモリ2に格納されている制御プログラムに基づいてワ
ーキングメモリ3のワーキングエリアを使用して電子楽
器全体の制御を行い、鍵盤4の操作による鍵盤演奏、パ
ネルスイッチ等の操作子5の操作によるモードの切換え
やデータの入力処理、リズムパターンメモリ6および伴
奏パターンメモリ7に記憶されている伴奏パターンに基
づく自動伴奏を行う。
【0013】具体的には、CPU1は鍵盤4のキーイベ
ントを検出し、キーイベントのあった鍵に対応するキー
コードをキーオン信号またはキーオフ信号とともに取り
込み、音源8にキーコードとノートオンまたはノートオ
フを出力して鍵盤演奏に対応する発音処理と消音処理を
行う。なお、音源8は入力されるキーコードおよびリズ
ムパターンの伴奏音を発音するための打楽器番号に応じ
た楽音を発生し、この楽音信号はサウンドシステム9に
出力され、サウンドシステム9はD/A変換、増幅等を
行って楽音を発生する。
【0014】また、CPU1は操作子5の操作によって
指定されたテンポの情報をタイマ10に設定し、タイマ
10はCPU1から設定されたテンポに応じて8分音符
1個毎に12回(96分長に1回)の割込み信号を発生
し、CPU1はこの割込み信号により割込み処理を行っ
て自動伴奏の処理を行う。
【0015】さらに、鍵盤4は低音側の左鍵域と高音側
の右鍵域とに仮想的に分割されており、自動伴奏時に
は、CPU1は、右鍵域のキーイベントに対して発音処
理と消音処理を行い、左鍵域のキーイベントに対しては
検出されたキーコードに基づいて和音を検出する。
【0016】操作子5は、自動伴奏の伴奏パターンおよ
びリズムパターンを選択するパターン選択スイッチ、自
動伴奏のスタートとストップを指示するためのスタート
/ストップスイッチ、ユーザーによる伴奏パターンおよ
びリズムパターンの入力モードを指定するパターン入力
スイッチ、調性を入力する調設定スイッチ、調性を鍵盤
4から自動検出するモードを指定する調自動検出モード
スイッチ、およびその他のスイッチを備えており、CP
U1は、操作子5の各スイッチの操作イベントを検出し
て操作イベントのあったスイッチに対応する処理を行
う。
【0017】また、リズムパターンメモリ6と伴奏パタ
ーンメモリ7には、図示しないメモリにプリセットされ
ている多種類のリズムパターンと伴奏パターン(ソース
パターン)が記憶され、さらに、伴奏パターン入力モー
ドにより入力されるリズムパターンと伴奏パターンが記
憶される。なお、これらのリズムパターンと伴奏パター
ンはパターン選択スイッチで選択され、パターン番号
(PTN)として記憶される。
【0018】この実施例における伴奏パターンは、アル
ペジオ等の各種のコード音に対応するコードバッキング
1〜3の3つのパートからなるコードパターンと、ベー
ス音に対応する1つのベースパターンとで構成され、こ
れらのコードバッキング1〜3およびベースパターン
は、それぞれパート番号(PRT=0〜3)によって指
定される。
【0019】なお、各伴奏パターンは、各パート毎にキ
ーコード、タイミング、キーオンまたはキーオフのデー
タをセットにして順次記憶したものであり、リズムパタ
ーンは打楽器番号とタイミングのデータをセットにして
順次記憶したものである。
【0020】ところで、次表1に示したように、和音の
種類に対して取り得るスケール(音階)はそれぞれ決ま
っており、これらのスケールの各々について、和音構成
音はコード音(c)、和音構成音以外でスケール上の音
はスケール音(s)、スケールから外れた音はノンスケ
ール音(n)として、音名(C,C♯,D,D♯,…)
に対して属性(c,s,n)が音楽的に決まっている。
なお、この和音の種類に対して取り得るスケールを、以
後、AVスケール(アヴェイラブルスケール)という。
【表1】
【0021】また、上記のAVスケールは、調性と和音
に対してそれぞれ決まっている。すなわち、調性のモー
ド(長調/短調)、和音の種類、調性の主音と和音の根
音との関係に対して、AVスケールが決まっている。
【0022】そこで、自動伴奏のソースパターンの和音
情報と例えば入力される調性情報とに基づいてAVスケ
ールテーブルから対応するAVスケールを求め、このA
Vスケールについての音名の属性に応じたノート変換テ
ーブルを作成する。そして、自動伴奏のソースパターン
のキーコードを、ソースパターンの和音情報と上記調性
情報から求めたAVスケールについての属性で分類し、
各属性に応じたノート変換テーブルにより検出和音に対
応する音高変換を行う。このようにすると、伴奏パター
ンの種類に係わりなく音楽的に最適な音高変換を行うこ
とができる。
【0023】図2は実施例におけるAVスケールテーブ
ルを示す図であり、このAVスケールテーブルは、和音
情報と調性情報からAVスケールを求めるために、調性
のモードMD、和音の種類TP、調性の主音を
基準としたときの和音の根音の度数に対応する度数デー
DGをそれぞれ引数とする配列レジスタに、対応
するAVスケールの番号SCHLを記憶したものであ
る。なお、このAVスケールテーブルは分類テーブルメ
モリ11に記憶されている。
【0024】図3は実施例におけるAVスケールについ
ての音名の属性を示す分類テーブルの一例を示す図であ
り、この分類テーブルは、各スケール番号SCHLに対
して各音名(C,C#,D,D#,…:ノートコード
=0〜11)がコード音(c)、スケール音(s)お
よびノンスケール音(n)の何れの属性を有するかを分
類したものである。なお、各属性(c,s,n)は、A
Vスケールのスケール番号SCHLとノートコードN
(音名に対応するコード)を引数とする配列レジスタに
より分類テーブルAVSCHL(SCHL,N)とし
て分類テーブルメモリ11に記憶されている。
【0025】図4は実施例において作成されるノート変
換テーブルの一例を示す図である。このノート変換テー
ブルは、属性に応じたインデックス(AT)(図4では
AT=0)とノートコード(NT)を引数とする配列レ
ジスタにキーコードのシフトデータ(0,−1,…)を
記憶したもので、ノート変換テーブルNTT(AT,N
T)としてノート変換テーブルメモリ12に記憶され
る。なお、図4は属性がコード音でコードバッキングの
音高変換に用いるノート変換テーブルの一例を示してお
り、このノート変換テーブルは音を下にシフトする場合
は最大で半音つで、音を上にシフトする場は最大で半
つとなっている。
【0026】そして、CPU1は、調性情報の設定や自
調検出等によって調性情報が入力されると、NTT自
動生成処理を行い、調性のモードMD、ソースパターン
の和音の種類STP、調性の主音を基準とする和音の根
音との度数データDGから、AVスケールテーブルSC
TBL(MD,STP,DG)を参照してスケール番号
SCHLを求め、このスケール番号SCHLで分類テー
ブルAVSCHL(SCHL,NT)を参照しながら属
性に応じたノート変換テーブルNTT(AT,NT)を
自動生成する。また、演奏時に調性の自動検出を行うあ
るいは、調性情報の設定を行うことにより、NTT自動
生成処理を行い、検出された調性のモードMD、検出和
音の種類TP、調性の主音を基準とする和音の根音RT
との度数データDGから、AVスケールテーブルSCT
BL(MD,TP,DG)を参照してスケール番号SC
HLを求め、このスケール番号SCHLで分類テーブル
AVSCHL(SCHL,NT)を参照しながら属性に
応じたノート変換テーブルNTT(AT,NT)を自動
生成する。これにより、演奏に応じてノート変換テーブ
ルが更新される。
【0027】また、自動伴奏時には、現在選択されてい
る伴奏パターンのキーコードを伴奏パターンメモリ7か
ら読み出し、ソースパターンの調性情報とソースパター
ンの和音情報に基づいてAVスケールのスケール番号S
CHLを求め、このスケール番号SCHLと伴奏パター
ンのキーコードに対応するノートコードNTにより分類
テーブルAVSCHL(SCHL,N)を参照してこ
のキーコードをコード音、スケール音および非スケール
音の何れかの属性に分類する。そして、この属性に対応
するノート変換テーブルNTTからノートコードNTに
対応するシフトデータを求め、読み出した伴奏パターン
のキーコードを音高変換する。
【0028】なお、この実施例では、調性の自動検出等
で調性情報が得られなかった場合やAVスケールが不定
であった場合などは、ソースパターンの和音の種類に対
応させて音名の属性に応じたノート変換テーブルを作成
し、調性情報を用いない方法でノート変換テーブルの音
高変換を行うようにしている。
【0029】すなわち、表1からわかるように、同じ和
音の種類で同一音名でもスケールの違いによって属性が
異なるものがあるので、各音名に対して、同じ和音の種
類の中の全てのスケールで同一の属性となる場合はその
属性とし、同じ和音の種類の中の全てのスケールで複数
の属性となる場合は、1つでもノンスケール音(n)と
なるものがある場合はノンスケール音とする。なお、コ
ード音とスケール音の混在はありえない。
【0030】そこで、上記の条件で属性を決定すると、
各和音の種類に対する各音名の属性は表1の「resu
lt」の欄のようになり、和音の種類と音名に対して1
つの属性を対応させた分類テーブルが得られる。図5は
上記の条件に従って作成した実施例における和音に応じ
た分類テーブルの一例を示す図であり、各属性(c,
s,n)は、和音の種類(TとノートコードNTを
引数とする配列レジスタにより分類テーブルRSSCH
(TP,NT)として分類テーブルメモリ11に記憶
されている。
【0031】そして、自動伴奏時に、CPU1は現在選
択されている伴奏パターンのキーコードを伴奏パターン
メモリ7から読み出し、このキーコードに対応するノー
トコードNTとソースパターンの和音の種類STPによ
り分類テーブルRSSCHL(STP,NT)を参照
し、この伴奏パターンのキーコードをコード音、スケー
ル音およびノンスケール音の何れかに分類する。そし
て、この分類に対応してそれぞれノート変換テーブルN
TTからノートコードNTに対応するシフトデータを求
め、読み出した伴奏パターンのキーコードを音高変換す
る。
【0032】なお、この実施例では、ユーザが所望の伴
奏パターンおよびリズムパターンをソースパターンとし
て入力できるようになっており、この入力操作を次のよ
うに行う。先ず、入力するパターンに付与するパターン
番号(プリセットパターンのパターン番号以外の番号)
を操作子5のパターン選択スイッチで入力する。そし
て、伴奏パターンのパートの指定と鍵盤4による演奏等
により伴奏パターンおよびリズムパターンを入力する。
次に、入力した伴奏パターンの和音の根音と種類を入
力し、さらに、入力した伴奏パターンの調性を入力す
る。
【0033】このようにして入力された伴奏パターンお
よびリズムパターンはパターン番号に対応付けられて伴
奏パターンメモリ7およびリズムパターンメモリ6にそ
れぞれ記憶され、プリセットパターンと同様にパターン
番号の指定により自動伴奏される。
【0034】図6および図7は実施例における制御プロ
グラムのメインルーチン、図8〜図14はサブルーチン
および割込み処理ルーチンのフローチャートであり、各
フローチャートに基づいて実施例の動作を説明する。な
お、以下の説明およびフローチャートにおいて、制御に
用いられるレジスタおよびフラグを下記のラベルで表記
し、各レジスタおよびフラグとそれらの内容は特に断ら
ない限り同一のラベルで表す。
【0035】TN:入力調性の主音 MD:入力調性のモード RT:検出和音の根音 TP:検出和音の種類 SS(i,0):パターン番号iのソースパターンの調
性の主音 SS(i,1):パターン番号iのソースパターンの調
性のモード SRT(i):パターン番号iのソースパターンの和音
の根音 STP(i):パターン番号iのソースパターンの和音
の種類 TNMD:自動調検出モードを示すフラグ RUN:自動伴奏のスタート/ストップを示すフラグ PTN:伴奏パターンおよびリズムパターンのパターン
番号 PRT:伴奏パターンのパートを示すパート番号 KC:キーコード NT:ノートコード DG:調性の主音を基準としたときの和音の根音の度数
データ SCTBL(i,j,k):AVスケールテーブル SCHL:AVスケールのスケール番号 AVSCHL(i,j):分類テーブル ATBL(i,j):分類テーブル ATRB:分類された属性 NTT(i,j):ノート変換テーブル AT:属性とノート変換テーブルを対応させるインデッ
クス D:ノート変換テーブルのシフトデータ
【0036】先ず、電源の投入等によってCPU1が図
6のメインルーチンの処理を開始すると、ステップS1
で各フラグおよびレジスタのリセット等の初期設定を行
い、ステップS2で図8のキーイベント処理を行ってス
テップS3に進む。
【0037】ステップS3では、操作子5におけるパタ
ーン入力スイッチのオンイベントの有無を判定し、オン
イベントが無ければステップS6に進み、オンイベント
有ればステップS4で、前述のようなユーザによるパ
ターン番号の入力と伴奏パターンおよびリズムパターン
の入力処理を行い、それぞれ入力パターン番号iとして
リズムパターンメモリおよび伴奏パターンメモリ
記憶する。
【0038】そして、ステップS5でユーザによる伴奏
パターンの和音と調性の入力処理を行い、和音の根音を
SRT(i)に、和音の種類をSTP(i)にそれぞれ
格納するとともに、調性の主音をSS(i,0)に、調
性のモードをSS(i,1)にそれぞれ格納してステッ
プS6に進む。
【0039】ステップS6では、操作子5における調設
定スイッチのオンイベントの有無を判定し、オンイベン
トが無ければステップS9に進み、オンイベントが有れ
ばステップS7で、前述のようなユーザによって入力さ
れた調性の主音をTNに格納するとともに調性のモード
をMDに格納し、ステップS8で図9のNTT自動生成
の処理を行ってステップS9に進む。
【0040】ステップS9では、操作子5における調自
動検出モードスイッチのオンイベントの有無を判定し、
オンイベントが無ければ図7のステップS11に進み、
オンイベントが有ればステップS10でフラグTNMD
を反転して図7のステップS11に進む。
【0041】図7のステップS11では、操作子5にお
けるパターン選択スイッチのオンイベントの有無を判定
し、オンイベントば無ければステップS13に進み、オ
ンイベントが有れば、ステップS12でパターン選択ス
イッチで選択されたパターン番号をレジスタPTNに格
納してステップS13に進む。
【0042】ステップS13では、操作子5におけるス
タート/ストップスイッチのオンイベントの有無を判定
し、オンイベントが無ければステップS17に進み、オ
ンイベントが有れば、ステップS14でフラグRUNを
反転してステップS15でRUN=1となったか否かを
判定する。
【0043】RUN=1となっていなければ(RUN=
0)、自動伴奏状態でストップが指示されたことになる
のでステップS17に進み、RUN=1となっていれば
自動伴奏のスタートが指示されたことになるので、ステ
ップS16でタイミングクロックをクリアしてステップ
S17に進む。そして、ステップS17では音色の選択
などその他の処理を行い、図6のステップS2以降の処
理を繰り返す。
【0044】図8のキーイベント処理では、先ず、ステ
ップS21で鍵盤4におけるキーイベントの有無を判定
し、キーイベントが無ければメインルーチンに復帰し、
キーイベントが有ればステップS22で、「イベントキ
ーが左鍵域でかつRUN=1」であるか否かを判定し、
「イベントキーが左鍵域でかつRUN=1」でなければ
ステップS23でイベントキーについての発音または消
音処理を行ってステップS25に進む。「イベントキー
が左鍵域でかつRUN=1」であれば、ステップS24
でイベントキーのキーコードに基づいて和音を検出し、
検出和音の根音をRTに格納するとともに検出和音の種
類をTPに格納してステップS25に進む。
【0045】ステップS25では、TNMD=1である
か否かを判定し、TNMD=1でなければメインルーチ
ンに復帰し、TNMD=1であれば、ステップS26で
自動調検出処理を行い、ステップS27で検出調の主音
をTNに格納するとともに検出調のモードをMDに格納
する。そして、ステップS28で図9のNTT自動生成
処理を行って、メインルーチンに復帰する。すなわち、
調自動検出モードが選択されていれば(TNMD=
1)、キーイベントが発生する毎にステップS26〜ス
テップS28の処理が行われるので、自動伴奏時に転調
がなされると、その調性が自動検出され、この検出され
た調性に基づいてNTT自動生成処理が行われる。
【0046】図9のNTT自動生成処理では、先ず、ス
テップS31で調の主音TNが検出されているか否かを
判定し、検出されていなければステップS34に進み、
検出されていれば、ステップS32で検出調の主音TN
を基準とする検出和音の根音RTの度数データを演算し
てレジスタDGに格納し、ステップS33で、S7で設
定された調または検出調(調自動検出時)のモードMD
検出和音の種類TPおよびS32で求めた度数データ
DGに対応するAVスケールテーブルのスケール番号S
CTBL(MD,TP,DG)をレジスタSCHLに格
納して、ステップS34に進む。
【0047】次に、ステップS34で、コード音、スケ
ール音およびノンスケール音の各属性毎のノート変換テ
ーブルを指定するインデックスATを“0”にセット
し、ステップS305でのATのインクリメントとステ
ップS306の判定処理により、コード音、スケール音
およびノンスケール音の各属性についてのノート変換テ
ーブルNTTの生成を行うために、ステップS35以降
の処理を繰り返す。
【0048】また、ステップS35で12の音名を指定
するノートコードNOTEを“0”にセットし、ステッ
プS303でのNOTEのインクリメントとステップS
304の判定処理により、ステップS36以降の処理を
各音名について繰り返す。
【0049】ステップS36では、ノート変換テーブル
のシフトデータを作成するためのシフトのステップ数を
示す変数iを“0”にセットし、ステップS37でAT
=0であるか否かを判定する。AT=0であればステッ
プS38で図10のコード音NTT作成処理を行ってス
テップS303に進み、AT=0でなかったらステップ
S39でAT=1であるか否かを判定する。AT=1で
あればステップS301で図11のスケール音NTT作
成処理を行ってステップS303に進み、AT=1でな
ければステップS302で図12のノンスケール音NT
T作成処理を行ってステップS303に進む。
【0050】そして、ステップS303でノートコード
NOTEを更新して、ステップS304の判定でNOT
E=12になると、1つの属性についての処理を終えて
ステップS305に進み、ステップS305でATを更
新して、ステップS306の判定でAT=3になると、
全ての属性についての処理を終えて元のルーチンに復帰
する。
【0051】図10のコード音NTT作成処理では、先
ずステップS41で、「調の主音TNが検出されていな
いかまたはAVスケールのスケール番号SCHLが不定
である」とういう条件を満足するか否かを判定し、条件
を満足しなければステップS42以降で調性に基づいて
ノート変換テーブルの作成を行い、条件を満足すればス
テップS48以降で和音に基づいてノート変換テーブル
の作成を行う。
【0052】先ず、ステップS42で、ノートコードN
OTEにiを加算してmod12の演算を行うことで、
ノート変換テーブルの現在注目している音名からi番だ
け高音側の音名のノートコードを演算し、それをN1に
格納する。また、ノートコードNOTEからiを減算す
るとともに12を加算してmod12の演算を行うこと
で、ノート変換テーブルの現在注目している音名からi
番だけ低音側の音名のノートコードを演算し、それをN
2に格納する。
【0053】このステップS42の処理では、iが増加
する毎に現在注目している音名(ノートコードNOT
E)から順に上下の音名の各ノートコードが1つずつ変
化してN1およびN2に格納される。なお、簡単のため
に、以後、この処理を「シフト数処理」という。
【0054】ステップS42のシフト数処理が終了する
と、ステップS43でAVSCHL(SCHL,N1)
=cであるか否か、すなわち、調性と和音に応じてAV
スケールテーブルから選択したスケール番号SCHLの
AVスケールにおいて、ノートコードN1の音名の属性
がコード音(c)であるか否かを判定する。
【0055】現在の処理はコード音NTT作成処理であ
るので、ステップS43の判定でコード音であれば、現
在注目している音名(ノートコードNOTE)に対する
シフト先がこのノートコードN1(コード音)の位置で
よいので、ステップS44でNTT(AT,NOTE)
にi(シフトデータ)を格納して元のルーチンに復帰す
る。
【0056】ステップS43でコード音でなければ、ス
テップS45でAVSCHL(SCHL,N2)=cで
あるか否かを判定し、下のノートコード(N2)につい
て同様の処理を行う。そして、ノートコードN2の音名
の属性がコード音であれば、ステップS46でNTT
(AT,NOTE)に−iを格納して元のルーチンに復
帰し、コード音でなければステップS47でiをインク
リメントしてステップS42以降の処理を行う。
【0057】以上の処理により、あるノートコードNO
TEについて、調性に基づくシフトデータが求められ
る。
【0058】一方、和音に基づくノート変換テーブルの
作成では、ステップS48でシフト数処理を行い、ステ
ップS49でRSSCHL(TP,N1)=cであるか
否か、すなわち、和音の種類で選択したスケールにおい
てノートコードN1の音名の属性がコード音(c)であ
るか否かを判定し、コード音であれば、ステップS40
1でNTT(AT,NOTE)にiを格納して元のルー
チンに復帰する。
【0059】また、ステップS49でコード音でなけれ
ば、ステップS402でRSSCHL(TP,N2)=
cであるか否かを判定し、ノートコードN2の音名の属
性がコード音であれば、ステップS403でNTT(A
T,NOTE)に−iを格納して元のルーチンに復帰
し、コード音でなければステップS405でiをインク
リメントしてステップS48以降の処理を行う。
【0060】以上の処理により、あるノートコードNO
TEについて、和音に基づくシフトデータが求められ
る。
【0061】図11のスケール音NTT作成処理のステ
ップS51〜ステップS505および図12のノンスケ
ール音NTT作成処理のステップS61〜ステップS6
05は、図10のコード音NTT作成処理と同様な処理
であるので、詳細な説明は省略する。
【0062】ただし、図11のスケール音NTT作成処
理では、ステップS53の「AVSCHL(SCHL,
N2)=c or sであるか否か」の判定により、先に下
の音名の属性がコード音またはスケール音であった場合
に−iをシフトデータとし、下の音名の属性がコード音
またはスケール音の何れでもなければ、ステップS55
以降で上の音名の属性がコード音またはスケール音であ
った場合にiをシフトデータとしている。
【0063】また、ステップS59およびステップS5
02でも同様に、和音の種類で選択したスケールにおい
て下の音名(ノートコードN2)の属性がコード音また
はスケール音の何れかであれば−iをシフトデータと
し、下の音名の属性がコード音またはスケール音の何れ
でもなければ、上の音名(ノートコードN1)の属性が
コード音またはスケール音であった場合にiをシフトデ
ータとしている。
【0064】すなわち、このスケール音NTT作成処理
では、音高変換において下行シフトを優先にしてコード
音またはスケール音の属性に音高変換されるようにシフ
トデータを作成している。
【0065】また、図12のノンスケール音NTT作成
処理では、ステップS63、ステップS65、ステップ
S69およびステップS602の判定により、調性と和
音に応じて選択したAVスケールの場合と、和音の種類
で選択したスケールの場合との各々において、下の音名
(ノートコードN2)の属性がノンスケール音(n)ま
たはスケール音(s)の何れかであれば−iをシフトデ
ータとし、下の音名の属性がノンスケール音またはスケ
ール音の何れでもなければ、上の音名(ノートコードN
1)の属性がノンスケール音またはスケール音であった
場合にiをシフトデータとしている。
【0066】すなわち、このノンスケール音NTT作成
処理では、音高変換において下行シフトを優先にしてノ
ンスケール音またはスケール音の属性に音高変換される
ようにシフトデータを作成している。
【0067】以上の処理により、入力された調性と伴奏
データ(ソースパターン)に適したノート変換テーブル
が作成され、次に説明する自動伴奏の音高変換処理でこ
のノート変換テーブルが用いられる。
【0068】図13の割込み処理は、タイマ10からの
割込み信号により96分長毎に起動され、先ずステップ
S71でRUN=1であるか否かを判定する。RUN=
1でなければ元のルーチンに復帰し、RUN=1であれ
ば、ステップS72で、パターン番号PTNのリズムパ
ターン中の現在のタイミングクロックに対応するデータ
(楽器番号)を読み出し、音源8に出力して再生する。
【0069】次に、ステップS73で、伴奏パターンに
ついて再生するパートのパート番号PRTを“0”にセ
ットし、ステップS702でのPRTのインクリメント
とステップS703の判定処理により、コードバッキン
グ1〜3およびベースパターンの各パートについてステ
ップS74以降の処理を繰り返す。
【0070】ステップS74では、伴奏パターンメモリ
12から、パターン番号PTNの伴奏パターンのパート
PRT中で現在のタイミングクロックに対応するデータ
を読み出し、ステップS75で再生データがあるか否か
を判定し、再生データがなければステップS701に進
み、再生データがあればステップS76に進む。
【0071】ステップS76では、再生データがキーオ
ンデータであるか否かを判定し、キーオンデータでなけ
れば、ステップS77でキーオフ信号をPRTに対応す
るチャンネル番号と共に音源8に出力して消音処理を行
い、キーオンデータであれば、ステップS78で伴奏パ
ターンの読出しデータであるキーコードをレジスタKC
に格納し、ステップS79で図14の音高変換処理を行
う。この音高変換処理が終了すると、ステップS701
で、キーオン信号および音高変換されたキーコードKC
を、PRTに対応するチャンネル番号と共に音源8に出
力し、発音処理を行う。
【0072】そして、ステップS702でPRTをイン
クリメントしてステップS703でPRT=4であるか
否かを判定し、PRT=4でなければ伴奏パターンの再
生パートが残っているのでステップS74以降の処理を
行い、PRT=4であれば全てのパートを再生したので
ステップS704でタイミングカウンタでカウントを行
って元のルーチンに復帰する。
【0073】図14の音高変換処理では、先ず、ステッ
プS81で、ソースパターンからの読出しデータのキー
コードKCをパターン番号PTNの伴奏パターンの和音
の根音SRT(PTN)で音高シフトして、そのノート
コードをレジスタNTに格納し、ステップS82で、パ
ターン番号PTNの伴奏パターンのソースパターンの調
性の主音SS(PTN,0)をSTNに格納するととも
に、その調性のモードSS(PTN,1)をSMDに格
納してステップS83に進む。
【0074】次に、ステップS83で、ソースパターン
の調の主音STNを基準とするソースパターンの和音の
根音SRT(PTN)の度数データを演算してレジスタ
DGに格納し、ステップS84でソースパターンの調の
モードSMDとソースパターンの和音の種類STP(P
TN)および度数データDGに対応するAVスケールテ
ーブルのスケール番号SCTBL(SMD,STP(P
TN),DG)をレジスタSCHLに格納して、ステッ
プS85に進む。
【0075】次に、ステップS85で、スケール番号S
CHLと伴奏パターンのキーコードに対応するノートコ
ードNTにより、分類テーブルから属性AVSCHL
(SCHL,N)を求めてレジスタATRBに格納し、
ステップS86で、ATRB=c(コード音)のときA
Tに“0”をセットし、ATRB=s(スケール音)の
ときATに“1”をセットし、ATRB=n(ノンスケ
ール音)のときATに“2”をセットし、ATRBに応
じてノート変換テーブルを選択する。
【0076】次に、ステップS87で、ATに応じて選
択したノート変換テーブルNTT(AT,)から、伴奏
パターンの発音ノートコードNTに対応するシフトデー
タNTT(AT,NT)を読み出し、これをレジスタD
に格納する。そして、ステップS88で、ソースパター
ンからの読出しデータのキーコードKCに対してシフト
データDおよび検出和音の根音RTを加算するととも
に、現在の伴奏パターンの和音の根音SRT(PTN)
を減算して、キーコードKCを音高変換し、元のルーチ
ンに復帰する。
【0077】以上の音高変換処理により、ソースパター
ンのキーコードが指定された調性と鍵盤4から入力され
る和音に対応する音高に変換され、演奏者の演奏に合っ
た音で自動伴奏が行われる。
【0078】以上のように、指定された調性に応じたノ
ート変換テーブルが自動生成され、伴奏パターンの読出
しデータのキーコードは、指定された調性に基づいてコ
ード音、スケール音またはノンスケール音の何れかに分
類され、さらに、この分類結果に応じたノート変換テー
ブルに基づいて音高変換される。
【0079】このように、指定された調性に応じたスケ
ールに対して、音名をコード音、スケール音およびノン
スケール音の属性に応じて分類して、それぞれの属性に
応じたノート変換テーブルを自動生成し、伴奏パターン
のキーコードを、そのノートコードの属性に応じたノー
ト変換テーブルで音高変換するようにしているので、異
なる伴奏パターンでも、指定された調性に合った音楽的
にそれぞれの伴奏パターンに適した音高に変換される。
【0080】このため、パターン制作者や演奏者が伴奏
パターンのソースパターンを作成するとき、ソースパタ
ーン毎にノート変換テーブルを作成する必要がなくな
る。また、調性に応じたノート変換テーブルを使用する
ので、演奏している調性に適した自動伴奏が可能とな
る。
【0081】なお、実施例では、属性はコード音、スケ
ール音、ノンスケール音の3種類としたが、これに限ら
ず、コード音を更に細かく根音とそれ以外に分類するな
どしてもよい。
【0082】
【発明の効果】以上説明したように本発明によれば、伴
奏パターンの各構成音の音高を、指定された和音に応じ
て変換し自動伴奏を行う自動伴奏装置において、調性情
報と前記伴奏パターンの和音に対応して設けられ、12
音名それぞれに対する属性として少なくとも、コード音
か、コード音以外のスケール音か、ノンスケール音かを
定着して記憶しておき、入力された調性情報と伴奉パタ
ーンの和音とに基づき、12音名それぞれに対応する音
高シフト情報を前記各属性毎に生成し、自動伴奏時に、
伴奏パターンの各構成音を上記各属性で分類し、この属
および音名に基づいて、伴奏パターンの各構成音に対
応する音高シフト情報を変換情報記憶手段から読み出
し、この音高シフト情報に基づいて伴奏パターンの各構
成音を音高変換するようにしたので、演奏される調性に
応じたノート変換テーブル等で音高変換され、ソースパ
ターンの種類に係わらず音楽的に最適なものに変換で
き、各ソースパターン毎にノート変換テーブルを作成す
る必要がなく、調性に応じたノート変換テーブルによ
り、演奏される調性に合った伴奏音を発生することがで
きる。
【図面の簡単な説明】
【図1】本発明実施例の自動伴奏装置を適用した電子楽
器のブロック図である。
【図2】実施例におけるAVスケールテーブルの一例を
示す図である。
【図3】実施例におけるAVスケールに応じた分類テー
ブルの一例を示す図である。
【図4】実施例におけるノート変換テーブルの一例を示
す図である。
【図5】実施例における和音の種類に応じた分類テーブ
ルの一例を示す図である。
【図6】実施例におけるメインルーチンのフローチャー
トの一部である。
【図7】実施例におけるメインルーチンのフローチャー
トの他の一部である。
【図8】実施例におけるキーイベント処理のフローチャ
ートである。
【図9】実施例におけるNTT自動生成処理のフローチ
ャートである。
【図10】実施例におけるコード音NTT作成処理のフ
ローチャートである。
【図11】実施例におけるスケール音NTT作成処理の
フローチャートである。
【図12】実施例におけるノンスケール音NTT作成処
理のフローチャートである。
【図13】実施例における割込み処理のフローチャート
である。
【図14】実施例における音高変換処理のフローチャー
トである。
【符号の説明】
1…CPU、2…プログラムメモリ、3…ワーキングメ
モリ、7…伴奏パターンメモリ、11…分類テーブルメ
モリ、12…ノート変換テーブルメモリ。
フロントページの続き (58)調査した分野(Int.Cl.6,DB名) G10H 1/36 - 1/40 G10H 1/00 101 - 102

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 伴奏パターンの各構成音の音高を、指定
    された和音に応じて変換し自動伴奏を行う自動伴奏装置
    であって、 調性情報を入力する調性情報入力手段と、 調性情報と前記伴奏パターンの和音に対応して設けら
    れ、12音名それぞれに対する属性として少なくとも、
    コード音か、コード音以外のスケール音か、ノンスケー
    ル音かを定義した属性記憶手段と、 前記調性情報入力手段で入力された調性情報と前記伴奏
    パターンの和音とに基づき、12音名それぞれに対応す
    る音高シフト情報を前記各属性毎に生成する変換情報生
    成手段と、 上記変換情報生成手段で生成された12音名それぞれに
    対応する音高シフト情報を各属性毎に記憶する変換情報
    記憶手段と、 前記属性記憶手段を参照することにより、前記伴奏パタ
    ーンの各構成音の音名がいずれの属性であるかを判定す
    る属性判定手段と、 前記属性判定手段により判定された伴奏パターンの各構
    成音の属性および音名に基づいて、前記伴奏パターンの
    各構成音に対応する音高シフト情報を変換情報記憶手段
    から読み出し、該読み出された音高シフト情報に基づい
    て伴奏パターンの各構成音の音高をシフトするととも
    に、前記指定された和音の根音に応じて音高をシフトさ
    せる音高変換手段と、 を備えたことを特徴とする自動伴奏装置。
JP5137392A 1993-05-31 1993-06-08 自動伴奏装置 Expired - Lifetime JP2900753B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP5137392A JP2900753B2 (ja) 1993-06-08 1993-06-08 自動伴奏装置
US08/252,095 US5563361A (en) 1993-05-31 1994-05-31 Automatic accompaniment apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5137392A JP2900753B2 (ja) 1993-06-08 1993-06-08 自動伴奏装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP15168898A Division JP3319390B2 (ja) 1998-06-01 1998-06-01 自動伴奏装置

Publications (2)

Publication Number Publication Date
JPH06348271A JPH06348271A (ja) 1994-12-22
JP2900753B2 true JP2900753B2 (ja) 1999-06-02

Family

ID=15197609

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5137392A Expired - Lifetime JP2900753B2 (ja) 1993-05-31 1993-06-08 自動伴奏装置

Country Status (1)

Country Link
JP (1) JP2900753B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012132901A1 (ja) 2011-03-25 2012-10-04 ヤマハ株式会社 伴奏データ生成装置
WO2012132856A1 (ja) 2011-03-25 2012-10-04 ヤマハ株式会社 伴奏データ生成装置
JP2012203216A (ja) * 2011-03-25 2012-10-22 Yamaha Corp 伴奏データ生成装置及びプログラム
JP2012203217A (ja) * 2011-03-25 2012-10-22 Yamaha Corp 伴奏データ生成装置及びプログラム
JP2012203218A (ja) * 2011-03-25 2012-10-22 Yamaha Corp 伴奏データ生成装置及びプログラム
EP2565870A1 (en) 2011-08-31 2013-03-06 Yamaha Corporation Accompaniment data generating apparatus

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100634572B1 (ko) * 2005-04-25 2006-10-13 (주)가온다 오디오 데이터 자동 생성 방법 및 이를 이용한 사용자단말기 및 기록매체
CN107301857A (zh) * 2016-04-15 2017-10-27 青岛海青科创科技发展有限公司 一种给旋律自动配伴奏的方法及系统

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8946534B2 (en) 2011-03-25 2015-02-03 Yamaha Corporation Accompaniment data generating apparatus
CN103443848A (zh) * 2011-03-25 2013-12-11 雅马哈株式会社 伴奏数据产生设备
JP2012203216A (ja) * 2011-03-25 2012-10-22 Yamaha Corp 伴奏データ生成装置及びプログラム
JP2012203219A (ja) * 2011-03-25 2012-10-22 Yamaha Corp 伴奏データ生成装置及びプログラム
JP2012203217A (ja) * 2011-03-25 2012-10-22 Yamaha Corp 伴奏データ生成装置及びプログラム
JP2012203218A (ja) * 2011-03-25 2012-10-22 Yamaha Corp 伴奏データ生成装置及びプログラム
WO2012132856A1 (ja) 2011-03-25 2012-10-04 ヤマハ株式会社 伴奏データ生成装置
CN103443849A (zh) * 2011-03-25 2013-12-11 雅马哈株式会社 伴奏数据产生设备
EP3206202A1 (en) 2011-03-25 2017-08-16 Yamaha Corporation Accompaniment data generating apparatus and method
WO2012132901A1 (ja) 2011-03-25 2012-10-04 ヤマハ株式会社 伴奏データ生成装置
US9040802B2 (en) 2011-03-25 2015-05-26 Yamaha Corporation Accompaniment data generating apparatus
CN103443849B (zh) * 2011-03-25 2015-07-15 雅马哈株式会社 伴奏数据产生设备
CN103443848B (zh) * 2011-03-25 2015-10-21 雅马哈株式会社 伴奏数据产生设备
US9536508B2 (en) 2011-03-25 2017-01-03 Yamaha Corporation Accompaniment data generating apparatus
EP2565870A1 (en) 2011-08-31 2013-03-06 Yamaha Corporation Accompaniment data generating apparatus

Also Published As

Publication number Publication date
JPH06348271A (ja) 1994-12-22

Similar Documents

Publication Publication Date Title
US6504090B2 (en) Apparatus and method for practice and evaluation of musical performance of chords
US5612501A (en) Automatic accompaniment information producing apparatus
JP2900753B2 (ja) 自動伴奏装置
JPH07219536A (ja) 自動編曲装置
US4232581A (en) Automatic accompaniment apparatus
JP2705334B2 (ja) 自動伴奏装置
US5319152A (en) Chord information output apparatus and automatic accompaniment apparatus
JP3319390B2 (ja) 自動伴奏装置
JPH06167975A (ja) 電子楽器システムの伴奏和音自動発生方法
JP3266007B2 (ja) 演奏データ変換装置
JP2856025B2 (ja) 自動伴奏装置
JP2640992B2 (ja) 電子楽器の発音指示装置及び発音指示方法
JP3807333B2 (ja) メロディ検索装置およびメロディ検索プログラム
JP3158918B2 (ja) 自動伴奏装置
JP2636477B2 (ja) 電子楽器
JP3413842B2 (ja) 自動伴奏装置
JP3147363B2 (ja) 楽音信号形成装置
JP3334809B2 (ja) 自動伴奏装置
JP2001051681A (ja) 自動伴奏情報発生装置
JP3099388B2 (ja) 自動伴奏装置
JP3360956B2 (ja) ピッチシフタ
JP3738634B2 (ja) 自動伴奏装置、及び記録媒体
JPH0139592B2 (ja)
JP3434403B2 (ja) 電子楽器の自動伴奏装置
JP3134417B2 (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: 19990216

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

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20090319

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20100319

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20110319

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20110319

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20120319

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20130319

Year of fee payment: 14