JP3379110B2 - 和音検出装置および和音検出方法 - Google Patents
和音検出装置および和音検出方法Info
- Publication number
- JP3379110B2 JP3379110B2 JP05800392A JP5800392A JP3379110B2 JP 3379110 B2 JP3379110 B2 JP 3379110B2 JP 05800392 A JP05800392 A JP 05800392A JP 5800392 A JP5800392 A JP 5800392A JP 3379110 B2 JP3379110 B2 JP 3379110B2
- Authority
- JP
- Japan
- Prior art keywords
- chord
- paragraph
- music
- predetermined position
- section
- 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
Links
- 238000001514 detection method Methods 0.000 title claims description 32
- 101100310633 Xenopus laevis sojo gene Proteins 0.000 claims description 3
- 238000000034 method Methods 0.000 description 25
- 230000015654 memory Effects 0.000 description 11
- 230000001256 tonic effect Effects 0.000 description 10
- 239000000470 constituent Substances 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 2
- 230000003936 working memory Effects 0.000 description 2
- 230000000994 depressogenic effect Effects 0.000 description 1
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【0001】
【産業上の利用分野】本発明は、楽曲などの演奏データ
に含まれている音名情報に基づいて演奏データの和音を
検出する和音検出装置に関する。
に含まれている音名情報に基づいて演奏データの和音を
検出する和音検出装置に関する。
【0002】
【従来の技術】従来、この種の装置として、例えば鍵盤
等から入力される演奏データに対して、押鍵された鍵に
対応する音名情報に応じた和音の候補を抽出し、この候
補の中から前回検出された和音との間に所定の進行関係
にある和音を求めて演奏データの和音を順次検出するよ
うにしたものがある(例えば、特開平2−29793号
参照)。
等から入力される演奏データに対して、押鍵された鍵に
対応する音名情報に応じた和音の候補を抽出し、この候
補の中から前回検出された和音との間に所定の進行関係
にある和音を求めて演奏データの和音を順次検出するよ
うにしたものがある(例えば、特開平2−29793号
参照)。
【0003】この装置によれば、音名情報に応じた複数
の候補から和音の進行関係に応じた和音が検出されるの
で、メロディに合った和音進行の和音が検出できる。
の候補から和音の進行関係に応じた和音が検出されるの
で、メロディに合った和音進行の和音が検出できる。
【0004】
【発明が解決しようとする課題】しかしながら、上記の
ような従来の和音検出方向によれば、演奏データの先頭
から和音の進行関係に応じて順次和音を検出するように
しているので、楽曲の段落感(曲の途中で区切られる感
じ)や曲の終了時点で終止感のない和音が付加されるこ
とが多い。
ような従来の和音検出方向によれば、演奏データの先頭
から和音の進行関係に応じて順次和音を検出するように
しているので、楽曲の段落感(曲の途中で区切られる感
じ)や曲の終了時点で終止感のない和音が付加されるこ
とが多い。
【0005】本発明は、メロディに合った和音進行の和
音を検出しながら、曲の段落や終止で段落感や終止感の
ある和音付けを行うことを課題とする。
音を検出しながら、曲の段落や終止で段落感や終止感の
ある和音付けを行うことを課題とする。
【0006】なお、通常、楽曲は曲の終了時点の終止
や、曲中の特定位置の段落や一時終止できちんと止まる
ことを目的として進行している。したがって、どこで終
止を迎え、どこで段落を迎えるかがわかっていなけれ
ば、正しい和音を付与することは非常に困難である。
や、曲中の特定位置の段落や一時終止できちんと止まる
ことを目的として進行している。したがって、どこで終
止を迎え、どこで段落を迎えるかがわかっていなけれ
ば、正しい和音を付与することは非常に困難である。
【0007】
【課題を解決するための手段】上記の課題を解決するた
めになした本発明の第1の和音検出装置は、楽曲の演奏
情報から該楽曲に和音を付与する和音検出装置におい
て、該楽曲の特定部に対応する演奏情報から該特定部に
付与すべき和音を検出する第1の和音検出手段と、該楽
曲の特定部の直前に位置する所定位置に和音を付与する
にあたり、前記第1の和音検出手段によって該特定部に
付与されている和音と該所定位置に対応する演奏情報と
に基づいて該所定位置に付与すべき和音を検出する第2
の和音検出手段と、を備えたことを特徴とする。
めになした本発明の第1の和音検出装置は、楽曲の演奏
情報から該楽曲に和音を付与する和音検出装置におい
て、該楽曲の特定部に対応する演奏情報から該特定部に
付与すべき和音を検出する第1の和音検出手段と、該楽
曲の特定部の直前に位置する所定位置に和音を付与する
にあたり、前記第1の和音検出手段によって該特定部に
付与されている和音と該所定位置に対応する演奏情報と
に基づいて該所定位置に付与すべき和音を検出する第2
の和音検出手段と、を備えたことを特徴とする。
【0008】また、本発明の第2の和音検出装置は、楽
曲の演奏情報から該楽曲に和音を付与する和音検出装置
において、該楽曲の特定部に対応する演奏情報から該特
定部に付与すべき和音を検出する第1の和音検出手段
と、該楽曲の特定部の直前に位置する第1の所定位置に
付与すべき和音を前記第1の和音検出手段によって該特
定部に付与されている和音と該第1の所定位置に対応す
る演奏情報とに基づいて検出するとともに、演奏上前記
第1の所定位置の直前に位置する第2の所定位置に付与
すべき和音を前記第1の所定位置に付与された和音と該
第2の所定位置に対応する演奏情報とに基づいて検出す
る第2の和音検出手段と、を備えたことを特徴とする。
曲の演奏情報から該楽曲に和音を付与する和音検出装置
において、該楽曲の特定部に対応する演奏情報から該特
定部に付与すべき和音を検出する第1の和音検出手段
と、該楽曲の特定部の直前に位置する第1の所定位置に
付与すべき和音を前記第1の和音検出手段によって該特
定部に付与されている和音と該第1の所定位置に対応す
る演奏情報とに基づいて検出するとともに、演奏上前記
第1の所定位置の直前に位置する第2の所定位置に付与
すべき和音を前記第1の所定位置に付与された和音と該
第2の所定位置に対応する演奏情報とに基づいて検出す
る第2の和音検出手段と、を備えたことを特徴とする。
【0009】また、本発明の和音検出方法は、楽曲の演
奏情報から該楽曲に自動的に和音を付与する和音検出方
法において、該楽曲の特定部の直前に位置する所定位置
に和音を付与するにあたり、該特定部に付与されている
和音と該所定位置に対応する演奏情報とに基づいて該所
定位置に付与すべき和音を検出するようにしたことを特
徴とする。
奏情報から該楽曲に自動的に和音を付与する和音検出方
法において、該楽曲の特定部の直前に位置する所定位置
に和音を付与するにあたり、該特定部に付与されている
和音と該所定位置に対応する演奏情報とに基づいて該所
定位置に付与すべき和音を検出するようにしたことを特
徴とする。
【0010】
【作用】本発明の前記第1の和音検出装置によれば、楽
曲の演奏情報から該楽曲に和音を付与する和音検出装置
において、第1の和音検出手段は、該楽曲の終端部など
の特定部に対応する演奏情報から該特定部に付与すべき
和音を検出する。そして第2の和音検出手段は、該楽曲
の特定部の直前に位置する所定位置に和音を付与するに
あたり、前記第1の和音検出手段によって該特定部に付
与されている和音と該所定位置に対応する演奏情報とに
基づいて該所定位置に付与すべき和音を検出する。これ
により、順次演奏の前側へ遡って和音が付与されてい
く。
曲の演奏情報から該楽曲に和音を付与する和音検出装置
において、第1の和音検出手段は、該楽曲の終端部など
の特定部に対応する演奏情報から該特定部に付与すべき
和音を検出する。そして第2の和音検出手段は、該楽曲
の特定部の直前に位置する所定位置に和音を付与するに
あたり、前記第1の和音検出手段によって該特定部に付
与されている和音と該所定位置に対応する演奏情報とに
基づいて該所定位置に付与すべき和音を検出する。これ
により、順次演奏の前側へ遡って和音が付与されてい
く。
【0011】本発明の前記第2の和音検出装置によれ
ば、楽曲の演奏情報から該楽曲に和音を付与する和音検
出装置において、第1の和音検出手段は、該楽曲の特定
部に対応する演奏情報から該特定部に付与すべき和音を
検出する。また、第2の和音検出手段は、該楽曲の特定
部の直前に位置する第1の所定位置に付与すべき和音を
前記第1の和音検出手段によって該特定部に付与されて
いる和音と該第1の所定位置に対応する演奏情報とに基
づいて検出するとともに、演奏上前記第1の所定位置の
直前に位置する第2の所定位置に付与すべき和音を前記
第1の所定位置に付与された和音と該第2の所定位置に
対応する演奏情報とに基づいて検出する。これにより、
楽曲中の段落感のある部分から遡って和音が付与され
る。
ば、楽曲の演奏情報から該楽曲に和音を付与する和音検
出装置において、第1の和音検出手段は、該楽曲の特定
部に対応する演奏情報から該特定部に付与すべき和音を
検出する。また、第2の和音検出手段は、該楽曲の特定
部の直前に位置する第1の所定位置に付与すべき和音を
前記第1の和音検出手段によって該特定部に付与されて
いる和音と該第1の所定位置に対応する演奏情報とに基
づいて検出するとともに、演奏上前記第1の所定位置の
直前に位置する第2の所定位置に付与すべき和音を前記
第1の所定位置に付与された和音と該第2の所定位置に
対応する演奏情報とに基づいて検出する。これにより、
楽曲中の段落感のある部分から遡って和音が付与され
る。
【0012】本発明の前記和音検出方法によれば、楽曲
の演奏情報から該楽曲に自動的に和音を付与する和音検
出方法において、該楽曲の特定部の直前に位置する所定
位置に和音を付与するにあたり、該特定部に付与されて
いる和音と該所定位置に対応する演奏情報とに基づいて
該所定位置に付与すべき和音が検出され、これに従っ
て、楽曲の前側へ遡って和音が付与される。
の演奏情報から該楽曲に自動的に和音を付与する和音検
出方法において、該楽曲の特定部の直前に位置する所定
位置に和音を付与するにあたり、該特定部に付与されて
いる和音と該所定位置に対応する演奏情報とに基づいて
該所定位置に付与すべき和音が検出され、これに従っ
て、楽曲の前側へ遡って和音が付与される。
【0013】
【実施例】図1は本発明実施例の和音検出装置のブロッ
ク図、図2はその操作パネルの一部を示す図であり、C
PU1は、プログラムメモリ2に記憶されている制御プ
ログラムおよび各種テーブルに基づいてワーキングメモ
リ3の各種レジスタやフラグを使用しながら制御を行な
う。
ク図、図2はその操作パネルの一部を示す図であり、C
PU1は、プログラムメモリ2に記憶されている制御プ
ログラムおよび各種テーブルに基づいてワーキングメモ
リ3の各種レジスタやフラグを使用しながら制御を行な
う。
【0014】メロディメモリ4とコードメモリ5はRA
Mで構成されており、例えばMIDI情報により外部か
らインターフェース6を介して入力される演奏データが
メロディメモリ4に記憶され、この演奏データから検出
された和音がコードメモリ5に記憶される。
Mで構成されており、例えばMIDI情報により外部か
らインターフェース6を介して入力される演奏データが
メロディメモリ4に記憶され、この演奏データから検出
された和音がコードメモリ5に記憶される。
【0015】なお、このコードメモリ5に記憶された和
音は、例えば、その演奏データのメロディに合った副旋
律や伴奏を自動編曲するときや、自動伴奏装置を使って
自動演奏を行うときの和音情報として用いられる。
音は、例えば、その演奏データのメロディに合った副旋
律や伴奏を自動編曲するときや、自動伴奏装置を使って
自動演奏を行うときの和音情報として用いられる。
【0016】この実施例では演奏データを2分の1小節
毎のコード区間(和音検出区間)に区切り、各コード区
間毎に和音を検出する。また、楽曲は所定小節数毎に段
落となることが多いので、この実施例では、段落となる
までの小節数すなわち段落長を入力することにより演奏
データの段落位置を指定するようにしている。
毎のコード区間(和音検出区間)に区切り、各コード区
間毎に和音を検出する。また、楽曲は所定小節数毎に段
落となることが多いので、この実施例では、段落となる
までの小節数すなわち段落長を入力することにより演奏
データの段落位置を指定するようにしている。
【0017】図2に示したように、操作パネル7は、表
示器71、テンキー72、データの入力を確定するエン
ターキー73、演奏データの調の主音または和音の根音
を指定するルートキー74、演奏データの調性すなわち
長調(メジャー)か短調(マイナー)の何れかのモード
を指定するモード指定キー75、和音の種類を指定する
和音タイプキー76およびカーソルキー77を備えてい
る。
示器71、テンキー72、データの入力を確定するエン
ターキー73、演奏データの調の主音または和音の根音
を指定するルートキー74、演奏データの調性すなわち
長調(メジャー)か短調(マイナー)の何れかのモード
を指定するモード指定キー75、和音の種類を指定する
和音タイプキー76およびカーソルキー77を備えてい
る。
【0018】図3は演奏データのフォーマットを示す図
である。この実施例の演奏データは、メロディ音の音高
を示すノートナンバ、その発音タイミングを示すタイミ
ングデータおよびメロディの終了を示すエンドデータで
構成されており、タイミングデータを検索することによ
り、任意のコード区間内におけるメロディ音のノートナ
ンバが検出される。
である。この実施例の演奏データは、メロディ音の音高
を示すノートナンバ、その発音タイミングを示すタイミ
ングデータおよびメロディの終了を示すエンドデータで
構成されており、タイミングデータを検索することによ
り、任意のコード区間内におけるメロディ音のノートナ
ンバが検出される。
【0019】ここで、図4を参照して実施例におけるコ
ード区間と段落長の関係および制御に用いられるレジス
タの機能について説明する。なお、同図は段落長を4小
節に指定した場合を示している。
ード区間と段落長の関係および制御に用いられるレジス
タの機能について説明する。なお、同図は段落長を4小
節に指定した場合を示している。
【0020】この場合、一つの段落は4小節で構成さ
れ、レジスタCDPRは段落長(この例では“4”)を
示し、レジスタNは1から始まる段落の番号1,2,…
により各段落を指す。また、各小節は2分の1小節毎の
コード区間に区切られ、レジスタCENは0から始まる
曲の先頭からのコード区間の番号0,1,2,…により
各コード区間を指す。さらに、レジスタCBNはコード
区間の番号0,8,16,…により各段落における先頭
のコード区間を指す。なお、各段落の最後のコード区間
は曲の段落位置であるので、段落コード区間として設定
して他のコード区間と異なる制御を行う。
れ、レジスタCDPRは段落長(この例では“4”)を
示し、レジスタNは1から始まる段落の番号1,2,…
により各段落を指す。また、各小節は2分の1小節毎の
コード区間に区切られ、レジスタCENは0から始まる
曲の先頭からのコード区間の番号0,1,2,…により
各コード区間を指す。さらに、レジスタCBNはコード
区間の番号0,8,16,…により各段落における先頭
のコード区間を指す。なお、各段落の最後のコード区間
は曲の段落位置であるので、段落コード区間として設定
して他のコード区間と異なる制御を行う。
【0021】前記のようにメロディメモリ4には演奏デ
ータが記憶されるが、この演奏データの入力処理につい
ては公知の技術を用いることができるので詳細な説明を
省略し、以下の説明ではメロディメモリ4に演奏データ
がすでに記憶されているものとする。
ータが記憶されるが、この演奏データの入力処理につい
ては公知の技術を用いることができるので詳細な説明を
省略し、以下の説明ではメロディメモリ4に演奏データ
がすでに記憶されているものとする。
【0022】図5は制御プログラムにおける和音を検出
する処理のメインルーチン、図6および図7はサブルー
チンでり、各フローチャートに基づいて動作を説明す
る。なお、以下の説明および各フローチャートにおい
て、制御に用いられる各レジスタおよびフラグを下記の
ラベルで表記し、各レジスタおよびフラグとそれらの内
容は特に断らない限り同一のラベルで表す。
する処理のメインルーチン、図6および図7はサブルー
チンでり、各フローチャートに基づいて動作を説明す
る。なお、以下の説明および各フローチャートにおい
て、制御に用いられる各レジスタおよびフラグを下記の
ラベルで表記し、各レジスタおよびフラグとそれらの内
容は特に断らない限り同一のラベルで表す。
【0023】TN:決定された調の主音符号を記憶する
レジスタ MD:決定された調のモード符号を記憶するレジスタ CDPR:段落長を記憶するレジスタ N:段落を指すポインタレジスタ CEN:コード区間を指すポインタレジスタ CEN′:ポインタCENの退避用レジスタ CBN:段落の先頭のコード区間を指すポインタレジス
タ RT(i):番号iのコード区間で検出した和音の根音
符号を記憶するレジスタ TP(i):番号iのコード区間で検出した和音の種類
符号を記憶するレジスタ MLD(k):現在のコード区間における全てのメロデ
ィ音のノートナンバを記憶する配列レジスタ
レジスタ MD:決定された調のモード符号を記憶するレジスタ CDPR:段落長を記憶するレジスタ N:段落を指すポインタレジスタ CEN:コード区間を指すポインタレジスタ CEN′:ポインタCENの退避用レジスタ CBN:段落の先頭のコード区間を指すポインタレジス
タ RT(i):番号iのコード区間で検出した和音の根音
符号を記憶するレジスタ TP(i):番号iのコード区間で検出した和音の種類
符号を記憶するレジスタ MLD(k):現在のコード区間における全てのメロデ
ィ音のノートナンバを記憶する配列レジスタ
【0024】図示しない操作子等の操作により図5のメ
インルーチンの処理を開始すると、ステップS1で各フ
ラグおよびレジスタのリセット等の初期設定を行い、ス
テップS2で調を決定して決定した調の主音符号をTN
に格納するとともにモード符号をMDに格納してステッ
プS3に進む。なお、この実施例では、音名C,C♯,
D,D♯,…Bに対して0,1,2,3,…,11の符
号を設定しており、例えばハ調の場合には主音符号は0
となる。また、モード符号は、和音の種類符号のメジャ
ー、マイナーとそれぞれ同一の符号である。
インルーチンの処理を開始すると、ステップS1で各フ
ラグおよびレジスタのリセット等の初期設定を行い、ス
テップS2で調を決定して決定した調の主音符号をTN
に格納するとともにモード符号をMDに格納してステッ
プS3に進む。なお、この実施例では、音名C,C♯,
D,D♯,…Bに対して0,1,2,3,…,11の符
号を設定しており、例えばハ調の場合には主音符号は0
となる。また、モード符号は、和音の種類符号のメジャ
ー、マイナーとそれぞれ同一の符号である。
【0025】このステップS2の処理としては、例えば
表示器71を用いたメニュー表示およびカーソルキー7
7の操作検出などによってユーザー入力と自動決定とを
選択できるようにし、ユーザー入力では、ルートキー7
4、モード指定キー75およびエンターキー73で入力
された主音符号とモード符号とによって調を決定し、自
動決定では、演奏データと所定の規則に基づいて主音符
号とモード符号とを求めて調を自動決定するなど、各種
の処理を行うことができる。
表示器71を用いたメニュー表示およびカーソルキー7
7の操作検出などによってユーザー入力と自動決定とを
選択できるようにし、ユーザー入力では、ルートキー7
4、モード指定キー75およびエンターキー73で入力
された主音符号とモード符号とによって調を決定し、自
動決定では、演奏データと所定の規則に基づいて主音符
号とモード符号とを求めて調を自動決定するなど、各種
の処理を行うことができる。
【0026】ステップS3では、表示器71に所定の表
示を行って段落長の入力待機状態にし、テンキー72お
よびエンターキー73で段落長が入力されると、この入
力された段落調をCDPRに格納してステップS4に進
む。
示を行って段落長の入力待機状態にし、テンキー72お
よびエンターキー73で段落長が入力されると、この入
力された段落調をCDPRに格納してステップS4に進
む。
【0027】ステップS4では、段落を指すポインタN
を初期値“1”にセットするとともに、段落の先頭のコ
ード区間を指すポインタCBNを初期値“0”にセット
し、ステップS5に進む。
を初期値“1”にセットするとともに、段落の先頭のコ
ード区間を指すポインタCBNを初期値“0”にセット
し、ステップS5に進む。
【0028】ここで、ステップS5以降の処理では、ス
テップS8において現在のコード区間が最終段落の最終
コード区間であるか否かを判定し、ステップS9でポイ
ンタNを更新することにより、全てのコード区間につい
てステップS5、ステップS6およびステップS7の処
理を繰り返す。
テップS8において現在のコード区間が最終段落の最終
コード区間であるか否かを判定し、ステップS9でポイ
ンタNを更新することにより、全てのコード区間につい
てステップS5、ステップS6およびステップS7の処
理を繰り返す。
【0029】ステップS5では、CBNにCDPRの2
倍を加算して1を減算し、その値をコード区間を指すポ
インタCENに格納する。これにより、ポインタCBN
が指す先頭のコード区間が含まれている段落における最
後のコード区間(段落コード区間)の番号がポインタC
ENに格納される。すなわち、このステップS5の処理
は、段落が変わる毎にポインタCENが段落コード区間
を指すように設定する。
倍を加算して1を減算し、その値をコード区間を指すポ
インタCENに格納する。これにより、ポインタCBN
が指す先頭のコード区間が含まれている段落における最
後のコード区間(段落コード区間)の番号がポインタC
ENに格納される。すなわち、このステップS5の処理
は、段落が変わる毎にポインタCENが段落コード区間
を指すように設定する。
【0030】ステップS5の処理が終了すると、ステッ
プS6において段落コード区間の和音を決定する段落コ
ード決定処理(図6)を行い、この段落コード区間の和
音(段落コードという。)に基づいて、ステップS7で
段落コード区間より前のコード区間についての和音を決
定する段落中コード決定処理(図7)を行う。
プS6において段落コード区間の和音を決定する段落コ
ード決定処理(図6)を行い、この段落コード区間の和
音(段落コードという。)に基づいて、ステップS7で
段落コード区間より前のコード区間についての和音を決
定する段落中コード決定処理(図7)を行う。
【0031】そして、ステップS8の判定に応じてステ
ップS5〜ステップS9を繰り返し、ステップS8でコ
ード区間が演奏データの最後のコード区間になると処理
を終了する。
ップS5〜ステップS9を繰り返し、ステップS8でコ
ード区間が演奏データの最後のコード区間になると処理
を終了する。
【0032】図6の段落コード決定処理では、先ず、ス
テップS21で、表示器71に所定の表示を行って段落
コードの入力待機状態にしてカーソルキー77の操作検
出などによってユーザー入力と自動決定とを選択できる
ようにし、いずれかが選択されると、ステップS22で
ユーザー入力によって和音が入力されたか否かを判定
し、ユーザー入力があれば、ステップS23で入力され
た和音の根音符号をレジスタRT(CEN)に格納する
とともに種類符号をレジスタTP(CEN)に格納し、
メインルーチンに復帰する。
テップS21で、表示器71に所定の表示を行って段落
コードの入力待機状態にしてカーソルキー77の操作検
出などによってユーザー入力と自動決定とを選択できる
ようにし、いずれかが選択されると、ステップS22で
ユーザー入力によって和音が入力されたか否かを判定
し、ユーザー入力があれば、ステップS23で入力され
た和音の根音符号をレジスタRT(CEN)に格納する
とともに種類符号をレジスタTP(CEN)に格納し、
メインルーチンに復帰する。
【0033】ステップS22の判定でユーザー入力がな
い場合は、ステップS24でCDPR×N小節内の3拍
目以降のコード区間すなわち段落Nの段落コード区間を
設定し、ステップS25で段落コード区間のメロディに
決定した調の主音または属7和音の構成音が有るか否か
を判定し、これらの構成音がなければステップS26に
進み、あればステップS28に進む。
い場合は、ステップS24でCDPR×N小節内の3拍
目以降のコード区間すなわち段落Nの段落コード区間を
設定し、ステップS25で段落コード区間のメロディに
決定した調の主音または属7和音の構成音が有るか否か
を判定し、これらの構成音がなければステップS26に
進み、あればステップS28に進む。
【0034】ステップS26では、現在の段落コード区
間が演奏データの最終のコード区間であるか否かを判定
し、最終区間でなければ、ステップS27で、和音が検
出されなかったことを示すデフォルト値“FH ”をレジ
スタRT(CEN)にセットし、メインルーチンに復帰
する。
間が演奏データの最終のコード区間であるか否かを判定
し、最終区間でなければ、ステップS27で、和音が検
出されなかったことを示すデフォルト値“FH ”をレジ
スタRT(CEN)にセットし、メインルーチンに復帰
する。
【0035】一方、ステップS26で現在の段落コード
区間が最終区間であれば、ステップS203で決定され
ている調の主音符号TNをレジスタRT(CEN)に格
納するとともにモード符号MDをレジスタTP(CE
N)に格納し、メインルーチンに復帰する。これは、最
終小節は主和音であることが多いのに対する処理であ
り、属和音が検出されないときは、主和音となるように
している。
区間が最終区間であれば、ステップS203で決定され
ている調の主音符号TNをレジスタRT(CEN)に格
納するとともにモード符号MDをレジスタTP(CE
N)に格納し、メインルーチンに復帰する。これは、最
終小節は主和音であることが多いのに対する処理であ
り、属和音が検出されないときは、主和音となるように
している。
【0036】これにより、演奏データの途中の段落コー
ド区間で和音が検出されなかったときは、デフォルト値
“FH ”により和音の指定をなくし、最終の段落コード
区間すなわち演奏データの最後で和音が検出できなかっ
たときは、その和音として調の主和音を設定する。
ド区間で和音が検出されなかったときは、デフォルト値
“FH ”により和音の指定をなくし、最終の段落コード
区間すなわち演奏データの最後で和音が検出できなかっ
たときは、その和音として調の主和音を設定する。
【0037】ステップS28では、主和音と属7和音の
構成音のうち段落コード区間中のメロディ音と等しい構
成音の数を比較し、ステップS29でその数が同数であ
るか否かを判定し、同数でなければステップS201で
主和音と属7和音の何れの構成音の数が多いかを判定す
る。
構成音のうち段落コード区間中のメロディ音と等しい構
成音の数を比較し、ステップS29でその数が同数であ
るか否かを判定し、同数でなければステップS201で
主和音と属7和音の何れの構成音の数が多いかを判定す
る。
【0038】ステップS201の判定で、主和音の方が
多ければ、ステップS203で調の主音符号TNとモー
ド符号MDをレジスタRT(CEN)とレジスタTP
(CEN)にそれぞれ格納してメインルーチンに復帰
し、属7和音の方が多ければステップS204に進む。
多ければ、ステップS203で調の主音符号TNとモー
ド符号MDをレジスタRT(CEN)とレジスタTP
(CEN)にそれぞれ格納してメインルーチンに復帰
し、属7和音の方が多ければステップS204に進む。
【0039】一方、ステップS29の判定で主和音と属
7和音の構成音の数が同数であれば、ステップS202
で、「次のコード区間に主和音構成音と等しいメロディ
音があり、かつ、そのコード区間に存在するメロディ音
のいずれかと等しい構成音の数が主和音のほうが属7和
音より多い」という条件を満足するか否かを判定する。
7和音の構成音の数が同数であれば、ステップS202
で、「次のコード区間に主和音構成音と等しいメロディ
音があり、かつ、そのコード区間に存在するメロディ音
のいずれかと等しい構成音の数が主和音のほうが属7和
音より多い」という条件を満足するか否かを判定する。
【0040】ステップS202の判定で条件を満足しな
ければ、ステップS203で調の主音符号TNとモード
符号MDをレジスタRT(CEN)とレジスタTP(C
EN)にそれぞれ格納してメインルーチンに復帰する。
ければ、ステップS203で調の主音符号TNとモード
符号MDをレジスタRT(CEN)とレジスタTP(C
EN)にそれぞれ格納してメインルーチンに復帰する。
【0041】また、ステップS202の判定で条件を満
足すれば、ステップS204で、(TN+7) mod
12をレジスタRT(CEN)に格納するとともに7
th和音の種類符号をレジスタTP(CEN)に格納し
てメインルーチンに復帰する。なお、(TN+7) m
od 12は、調の主音符号TNに対する属音符号であ
り、このステップS204では、属7和音が設定され
る。ここで、mod 12は、12で割った余りを示す
演算子であり、和音の根音の音高が所定範囲になるよう
にこの処理を行う。
足すれば、ステップS204で、(TN+7) mod
12をレジスタRT(CEN)に格納するとともに7
th和音の種類符号をレジスタTP(CEN)に格納し
てメインルーチンに復帰する。なお、(TN+7) m
od 12は、調の主音符号TNに対する属音符号であ
り、このステップS204では、属7和音が設定され
る。ここで、mod 12は、12で割った余りを示す
演算子であり、和音の根音の音高が所定範囲になるよう
にこの処理を行う。
【0042】以上の段落コード決定処理により、曲の最
終の段落コード区間の場合は調の主和音と決定される。
また、曲の途中の段落コード区間の場合は、主和音と属
和音の構成音のうちメロディが多く含んでいる方の和音
に決定され、同数の場合は、次のコード区間のメロディ
から主和音が検出されれば属和音とされ、主和音が検出
されなければ主和音と決定される。なお、曲の途中の段
落コード区間で、主和音と属和音の構成音が検出されな
ければデフォルト値になり、特定の和音が決定されな
い。
終の段落コード区間の場合は調の主和音と決定される。
また、曲の途中の段落コード区間の場合は、主和音と属
和音の構成音のうちメロディが多く含んでいる方の和音
に決定され、同数の場合は、次のコード区間のメロディ
から主和音が検出されれば属和音とされ、主和音が検出
されなければ主和音と決定される。なお、曲の途中の段
落コード区間で、主和音と属和音の構成音が検出されな
ければデフォルト値になり、特定の和音が決定されな
い。
【0043】上記のように段落コード区間の和音が決定
されると、図7の段落中コード決定処理により、この段
落コード区間より前のコード区間についての和音検出が
行われる。
されると、図7の段落中コード決定処理により、この段
落コード区間より前のコード区間についての和音検出が
行われる。
【0044】図7の段落中コード決定処理では、例えば
図8および図9に示したような候補コードテーブルと優
先順位テーブルを用いてコードを決定する。
図8および図9に示したような候補コードテーブルと優
先順位テーブルを用いてコードを決定する。
【0045】図8の候補コードテーブルは、ハ調音階
で、メロディの音名とその音名に対して候補となる和音
との関係をテーブルにしたもので、メジャー(長調)と
マイナー(短調)の各モードのテーブルを備えている。
で、メロディの音名とその音名に対して候補となる和音
との関係をテーブルにしたもので、メジャー(長調)と
マイナー(短調)の各モードのテーブルを備えている。
【0046】また、図9の優先順位テーブルは、任意の
コード区間に対してその直後のコード区間における和音
に応じてどの和音が適しているかを優先順位によって表
したもので、図8と同様にハ調についてメジャーとマイ
ナーの各モードのテーブルを備えている。これらテーブ
ルを全ての調性別に持っておいてもよいが、本実施例で
は、後述するように全調を一旦ハ調に変換してから参照
するようにしているので、メジャー用とマイナー用の2
種類あれば足りる。なお、数字の小さなものほど優先順
位が高い。そして、候補コードテーブルで検出された和
音の候補と、直後のコード区間の和音とにより優先順位
テーブルから優先順位の最も高い和音を検出する。
コード区間に対してその直後のコード区間における和音
に応じてどの和音が適しているかを優先順位によって表
したもので、図8と同様にハ調についてメジャーとマイ
ナーの各モードのテーブルを備えている。これらテーブ
ルを全ての調性別に持っておいてもよいが、本実施例で
は、後述するように全調を一旦ハ調に変換してから参照
するようにしているので、メジャー用とマイナー用の2
種類あれば足りる。なお、数字の小さなものほど優先順
位が高い。そして、候補コードテーブルで検出された和
音の候補と、直後のコード区間の和音とにより優先順位
テーブルから優先順位の最も高い和音を検出する。
【0047】図7の段落中コード決定処理が開始される
と、ステップS31で、現在のコード区間を指すポイン
タCENをレジスタCEN′に退避し、ステップS32
でRT(CEN)=FH であるか否かを判定する。すな
わち、この時点でCENは段落コード区間を指してお
り、段落コード区間で和音が決定されているかいないか
を判定する。
と、ステップS31で、現在のコード区間を指すポイン
タCENをレジスタCEN′に退避し、ステップS32
でRT(CEN)=FH であるか否かを判定する。すな
わち、この時点でCENは段落コード区間を指してお
り、段落コード区間で和音が決定されているかいないか
を判定する。
【0048】ステップS32で、RT(CEN)=FH
でなければ和音が決定されているのでステップS33以
降の処理を行い、RT(CEN)=FH であれば和音が
決定されていないのでメインルーチンに復帰し、さらに
次の段落コード区間についての処理を行ってからその段
落コード区間から前に遡って、この段落中コード決定処
理を行うようにする。
でなければ和音が決定されているのでステップS33以
降の処理を行い、RT(CEN)=FH であれば和音が
決定されていないのでメインルーチンに復帰し、さらに
次の段落コード区間についての処理を行ってからその段
落コード区間から前に遡って、この段落中コード決定処
理を行うようにする。
【0049】ステップS33ではポインタCENをデク
リメントし、ステップS34でこのポインタCENが指
すコード区間(それまでより一つ前のコード区間)を現
在のコード区間とし、ステップS35で、{(現在のコ
ード区間のメロディのノートナンバ)+12− TN}
mod 12をレジスタMLD′(k)にそれぞれ格
納し、C調でのメロディに変換する。
リメントし、ステップS34でこのポインタCENが指
すコード区間(それまでより一つ前のコード区間)を現
在のコード区間とし、ステップS35で、{(現在のコ
ード区間のメロディのノートナンバ)+12− TN}
mod 12をレジスタMLD′(k)にそれぞれ格
納し、C調でのメロディに変換する。
【0050】次に、ステップS36で、候補コードテー
ブルのモードMD(メジャーまたはマイナー)に対応す
るテーブルより、MLD′(k)に応じた候補和音を読
み出し、候補和音がなければ全ての和音を候補和音とし
てステップS37に進む。
ブルのモードMD(メジャーまたはマイナー)に対応す
るテーブルより、MLD′(k)に応じた候補和音を読
み出し、候補和音がなければ全ての和音を候補和音とし
てステップS37に進む。
【0051】ステップS37では、すでに決定されてい
る一つ後のコード区間の和音の根音を{RT(CEN+
1)+12−TN mod 12}によってC調に変換
し、これとその和音の種類TP(CEN+1)と前述の
候補和音とに基づいて優先順位テーブルのモードMDに
対応するテーブルより、優先順位が最小値となった和音
の根音符号を読み出し、{(根音符号+TN) mod
12}によってもとの調に逆変換してレジスタRT
(CEN)に格納するとともに、種類符号も読み出して
レジスタTP(CEN)に格納する。
る一つ後のコード区間の和音の根音を{RT(CEN+
1)+12−TN mod 12}によってC調に変換
し、これとその和音の種類TP(CEN+1)と前述の
候補和音とに基づいて優先順位テーブルのモードMDに
対応するテーブルより、優先順位が最小値となった和音
の根音符号を読み出し、{(根音符号+TN) mod
12}によってもとの調に逆変換してレジスタRT
(CEN)に格納するとともに、種類符号も読み出して
レジスタTP(CEN)に格納する。
【0052】そして、ステップS38でCEN=CBN
であるか否かを判定し、CEN=CBNでなければ現在
の段落の和音を検出し終っていないので、ステップS3
3以降の処理を繰り返し、CEN=CBNであれば段落
中の全区間の和音検出が終了したので、ステップS39
でそれまでの段落の次の段落の最初のコード区間の区間
番号をレジスタCBNに格納し、メインルーチンに復帰
する。
であるか否かを判定し、CEN=CBNでなければ現在
の段落の和音を検出し終っていないので、ステップS3
3以降の処理を繰り返し、CEN=CBNであれば段落
中の全区間の和音検出が終了したので、ステップS39
でそれまでの段落の次の段落の最初のコード区間の区間
番号をレジスタCBNに格納し、メインルーチンに復帰
する。
【0053】このように、段落コード決定処理により段
落コード区間の和音を主和音または属7和音の判定によ
り検出し、段落中コード決定処理により段落コード区間
の和音とメロディ、または直後のコード区間の和音とメ
ロディに基づいて順次曲の先頭側に遡って和音が検出さ
れる。このため、メロディに合った和音進行の和音を検
出しながら、曲の段落や終止で段落感や終止感のある和
音を設定することができる。
落コード区間の和音を主和音または属7和音の判定によ
り検出し、段落中コード決定処理により段落コード区間
の和音とメロディ、または直後のコード区間の和音とメ
ロディに基づいて順次曲の先頭側に遡って和音が検出さ
れる。このため、メロディに合った和音進行の和音を検
出しながら、曲の段落や終止で段落感や終止感のある和
音を設定することができる。
【0054】なお、上記の実施例の候補コードテーブル
や優先順位テーブルは、音楽ジャンルに合わせて選択で
きるようにしてもよい。また、和音検出区間のメロディ
と直後の和音検出区間における和音とから和音を決定す
る方法としては、上記のようなテーブルを用いるものに
限らず、他の音楽理論などに応じた他の方法でもよい。
や優先順位テーブルは、音楽ジャンルに合わせて選択で
きるようにしてもよい。また、和音検出区間のメロディ
と直後の和音検出区間における和音とから和音を決定す
る方法としては、上記のようなテーブルを用いるものに
限らず、他の音楽理論などに応じた他の方法でもよい。
【0055】さらに、上記の実施例では段落長により段
落位置を指定するようになっているが、小節位置を指定
するなど直接指定するようなものでもよい。
落位置を指定するようになっているが、小節位置を指定
するなど直接指定するようなものでもよい。
【0056】
【発明の効果】以上説明したように本発明の和音検出装
置および和音検出方法によれば、現在の和音検出区間の
和音を演奏上後となる和音検出区間の検出和音に基づい
て順次検出するようにしたので、メロディに合った和音
進行の和音を検出しながら、曲の段落や終止で段落感や
終止感のある和音付けを行うことができる。
置および和音検出方法によれば、現在の和音検出区間の
和音を演奏上後となる和音検出区間の検出和音に基づい
て順次検出するようにしたので、メロディに合った和音
進行の和音を検出しながら、曲の段落や終止で段落感や
終止感のある和音付けを行うことができる。
【図1】本発明実施例の和音検出装置のブロック図であ
る。
る。
【図2】実施例における操作パネルの一部を示す図であ
る。
る。
【図3】実施例における演奏データのフォーマットを示
す図である。
す図である。
【図4】実施例におけるコード区間と段落長の関係およ
び制御に用いられるレジスタの機能を説明する図であ
る。
び制御に用いられるレジスタの機能を説明する図であ
る。
【図5】実施例における和音を検出する処理のメインル
ーチンのフローチャートである。
ーチンのフローチャートである。
【図6】実施例における段落コード検出処理のフローチ
ャートである。
ャートである。
【図7】実施例における段落中コード検出処理のフロー
チャートである。
チャートである。
【図8】実施例における候補コードテーブルの一例を示
す図である。
す図である。
【図9】実施例における優先順位テーブルの一例を示す
図である。
図である。
1…CPU、2…プログラムメモリ、3…ワーキングメ
モリ、4…メロディメモリ、5…コードメモリ、6…イ
ンターフェース、7…操作パネル、72…テンキー、7
4…ルートキー、75…モード指定キー。
モリ、4…メロディメモリ、5…コードメモリ、6…イ
ンターフェース、7…操作パネル、72…テンキー、7
4…ルートキー、75…モード指定キー。
Claims (3)
- 【請求項1】 楽曲の演奏情報から該楽曲に和音を付与
する和音検出装置において、 該楽曲の特定部に対応する演奏情報から該特定部に付与
すべき和音を検出する第1の和音検出手段と、 該楽曲の特定部の直前に位置する所定位置に和音を付与
するにあたり、前記第1の和音検出手段によって該特定
部に付与されている和音と該所定位置に対応する演奏情
報とに基づいて該所定位置に付与すべき和音を検出する
第2の和音検出手段と、 を備えたことを特徴とする和音検出装置。 - 【請求項2】 楽曲の演奏情報から該楽曲に和音を付与
する和音検出装置において、該楽曲の特定部に対応する演奏情報から該特定部に付与
すべき和音を 検出する第1の和音検出手段と、該楽曲の特定部の直前に位置する 第1の所定位置に付与
すべき和音を前記第1の和音検出手段によって該特定部
に付与されている和音と該第1の所定位置に対応する演
奏情報とに基づいて検出するとともに、演奏上前記第1
の所定位置の直前に位置する第2の所定位置に付与すべ
き和音を前記第1の所定位置に付与された和音と該第2
の所定位置に対応する演奏情報とに基づいて検出する第
2の和音検出手段と、 を備えたことを特徴とする和音検出装置。 - 【請求項3】 楽曲の演奏情報から該楽曲に自動的に和
音を付与する和音検出方法において、 該楽曲の特定部の直前に位置する所定位置に和音を付与
するにあたり、該特定部に付与されている和音と該所定
位置に対応する演奏情報とに基づいて該所定位置に付与
すべき和音を検出するようにしたことを特徴とする和音
検出方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP05800392A JP3379110B2 (ja) | 1992-03-16 | 1992-03-16 | 和音検出装置および和音検出方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP05800392A JP3379110B2 (ja) | 1992-03-16 | 1992-03-16 | 和音検出装置および和音検出方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH05257477A JPH05257477A (ja) | 1993-10-08 |
| JP3379110B2 true JP3379110B2 (ja) | 2003-02-17 |
Family
ID=13071811
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP05800392A Expired - Fee Related JP3379110B2 (ja) | 1992-03-16 | 1992-03-16 | 和音検出装置および和音検出方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3379110B2 (ja) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5196550B2 (ja) * | 2008-05-26 | 2013-05-15 | 株式会社河合楽器製作所 | コード検出装置およびコード検出プログラム |
-
1992
- 1992-03-16 JP JP05800392A patent/JP3379110B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPH05257477A (ja) | 1993-10-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3704980B2 (ja) | 自動作曲装置と記録媒体 | |
| US5393927A (en) | Automatic accompaniment apparatus with indexed pattern searching | |
| JP2002032077A (ja) | コード進行修正装置、コード進行修正方法及び同装置に適用されるプログラムを記録したコンピュータ読取り可能な記録媒体、並びに自動作曲装置、自動作曲方法及び同装置に適用されるコンピュータ読取り可能な記録媒体 | |
| US5525749A (en) | Music composition and music arrangement generation apparatus | |
| JP3528654B2 (ja) | メロディ生成装置及びリズム生成装置と記録媒体 | |
| US5852252A (en) | Chord progression input/modification device | |
| US6192372B1 (en) | Data selecting apparatus with merging and sorting of internal and external data | |
| US4448104A (en) | Electronic apparatus having a tone generating function | |
| JPH02189572A (ja) | 自動押鍵指示装置 | |
| JPH06274158A (ja) | 演奏分析装置 | |
| JPH0651761A (ja) | 自動演奏装置 | |
| US4472992A (en) | Electronic musical instrument | |
| JP3379110B2 (ja) | 和音検出装置および和音検出方法 | |
| JPH0990952A (ja) | 和音分析装置 | |
| JP2002268632A (ja) | フレーズ分析装置及びフレーズ分析プログラムを記録した記録媒体 | |
| JP2768233B2 (ja) | 電子楽器 | |
| JP2694278B2 (ja) | 和音検出装置 | |
| US5670731A (en) | Automatic performance device capable of making custom performance data by combining parts of plural automatic performance data | |
| US5283388A (en) | Auto-play musical instrument with an octave shifter for editing phrase tones | |
| JPH0229792A (ja) | 和音検出装置 | |
| JPH05249974A (ja) | 調検出装置 | |
| JPH05273976A (ja) | 演奏データの調検出装置 | |
| JPH05346781A (ja) | 調検出装置および自動編曲装置 | |
| JP3413842B2 (ja) | 自動伴奏装置 | |
| JP3141448B2 (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: 20021112 |
|
| 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: 20081213 Year of fee payment: 6 |
|
| LAPS | Cancellation because of no payment of annual fees |