JP4230324B2 - 電子楽器のコード検出装置、コード検出方法及びプログラム - Google Patents

電子楽器のコード検出装置、コード検出方法及びプログラム Download PDF

Info

Publication number
JP4230324B2
JP4230324B2 JP2003335135A JP2003335135A JP4230324B2 JP 4230324 B2 JP4230324 B2 JP 4230324B2 JP 2003335135 A JP2003335135 A JP 2003335135A JP 2003335135 A JP2003335135 A JP 2003335135A JP 4230324 B2 JP4230324 B2 JP 4230324B2
Authority
JP
Japan
Prior art keywords
key
detected
chord
pressed
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 - Fee Related
Application number
JP2003335135A
Other languages
English (en)
Other versions
JP2005099579A (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.)
Kawai Musical Instrument Manufacturing Co Ltd
Original Assignee
Kawai Musical Instrument Manufacturing 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 Kawai Musical Instrument Manufacturing Co Ltd filed Critical Kawai Musical Instrument Manufacturing Co Ltd
Priority to JP2003335135A priority Critical patent/JP4230324B2/ja
Publication of JP2005099579A publication Critical patent/JP2005099579A/ja
Application granted granted Critical
Publication of JP4230324B2 publication Critical patent/JP4230324B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

本発明は、電子楽器のコード検出技術に関し、特にベースルートを検出する技術に関する。
電子楽器には、鍵盤の入力によりコードを検出し、検出されたコードに沿って内蔵された自動伴奏パターンを変換して演奏させる自動伴奏装置を備えているものがある。
コード検出方法には、1鍵押さえた時点から何らかのコードを決定するモード、3鍵押さえた時点でコードが確定するモード等を選択できるものがある。
また、分数コード検出スイッチを備え、分数コード検出可とした場合は、押鍵された鍵の最低鍵をベースとして検出するものがある。分数コードは、例えば「C/B」等であり、分子のコードが楽譜の上パート(コードパート)のコードであり、分母のコードが楽譜の下パート(ベースパート)のコードである。
3鍵からコードが確定するモードでは、2鍵以下の押鍵ではコードの分母(以下、ベースルートという)のみ変更されるようにし、分子のコードを固定したまま、自由にベースルートを指定できるものがある。
まず、図2(A)に示すように、ベースルート(ベースライン)が順次下がる場合を説明する。時刻t1〜t2において、3鍵の「ドミソ」を押鍵すると、コード「C/C」が検出される。次に、時刻t3〜t4に1鍵の「ド」を押鍵すると、「C/C」が検出される。次に、時刻t5〜t6に1鍵の「シ」を押鍵すると、「C/B」が検出される。次に、時刻t7〜t8に1鍵の「ラ」を押鍵すると、「C/A」が検出される。
次に、図2(B)に示すように、ベースルートが順次上がる場合を説明する。時刻t1〜t2において、3鍵の「ドミソ」を押鍵すると、コード「C/C」が検出される。次に、時刻t3〜t4に1鍵の「ソ」を押鍵すると、「C/G」が検出される。次に、時刻t5〜t6に1鍵の「ラ」を押鍵すると、「C/A」が検出される。次に、時刻t7〜t8に1鍵の「シ」を押鍵すると、「C/B」が検出される。
次に、図2(C)に示すように、レガート奏法でベースルートが下がる場合を説明する。時刻t1〜t2において3鍵の「ドミソ」を押鍵し、時刻t3〜t5において「ド」を押鍵し、時刻t4〜t7において「シ」を押鍵し、時刻t6〜t8において「ラ」を押鍵する場合を説明する。時刻t1において、3鍵の「ドミソ」が押鍵されるので、コード「C/C」が検出される。次に、時刻t3において、1鍵の「ド」が押鍵されるので、コード「C/C」が検出される。次に、時刻t4において、2鍵の「シド」が押鍵されているので、そのうちの最低鍵の「シ」をベースルートとし、コード「C/B」が検出される。次に、時刻t6において、2鍵の「ラシ」が押鍵されているので、そのうちの最低鍵の「ラ」をベースルートとし、コード「C/A」が検出される。この場合は、図2(A)の場合と同様に、適切なコードを検出することができる。
次に、図2(D)に示すように、レガート奏法でベースルートが上がる場合を説明する。この場合のコード検出に問題が生じる。時刻t1〜t2において3鍵の「ドミソ」を押鍵し、時刻t3〜t5において「ソ」を押鍵し、時刻t4〜t7において「ラ」を押鍵し、時刻t6〜t8において「シ」を押鍵する場合を説明する。時刻t1において、3鍵の「ドミソ」が押鍵されるので、コード「C/C」が検出される。次に、時刻t3において、1鍵の「ソ」が押鍵されるので、コード「C/G」が検出される。次に、時刻t4において、2鍵の「ソラ」が押鍵されているので、そのうちの最低鍵の「ソ」をベースルートとし、不適切なコード「C/G」が検出される。しかし、時刻t4では、新たに「ラ」を押鍵しているのだから、本来はコード「C/A」が検出されるべきである。次に、時刻t6において、2鍵の「ラシ」が押鍵されているので、そのうちの最低鍵の「ラ」をベースルートとし、コード「C/A」が検出される。しかし、時刻t6では、新たに「シ」を押鍵しているのだから、本来はコード「C/B」が検出されるべきである。以上のように、図2(D)の場合は、図2(B)の場合と異なり、不適切なコードが検出されてしまう。
また、下記の特許文献1には、鍵盤の3以上の鍵が押されたときの押鍵情報から最低音を求め、その最低音を基準として、押された鍵に対応する音名同士の各音程を求めることが開示されている。
また、下記の特許文献2には、多数の鍵が同時に押鍵された場合、押鍵された鍵の中の最低音を根音とするとともに、標準和音の中から1つを選択して和音を構成する鍵データを形成することが開示されている。
特開平10−55181号公報 特開平6−130957号公報
本発明の目的は、レガート奏法でベースラインを演奏した際に適切なコード検出を行うことができる電子楽器のコード検出技術を提供することである。
本発明の一観点によれば、同時に3個以上の鍵の押下状態があると、その3個以上の鍵の押下状態の音高を基にベースルートを含む分数コードを検出することができ、前記3個以上の鍵の押下状態の音高のうちの最低音の音名をベースルートとして検出する第1のコード検出手段と、前記第1のコード検出手段によりコードが検出された後のベースラインのレガート奏法時に於いて、同時に2個の鍵の押下状態があるとそのうちの最後の発音開始指示の音高をベースルートとして検出し、1個の鍵の押下状態があるとその音高をベースルートとして検出し、前記第1のコード検出手段により検出された分数コードのうちベースルートのみを変更する第2のコード検出手段とを有する電子楽器のコード検出装置が提供される。
本発明の他の観点によれば、同時に3個以上の鍵の押下状態があると、その3個以上の鍵の押下状態の音高を基にベースルートを含む分数コードを検出することができ、前記3個以上の鍵の押下状態の音高のうちの最低音の音名をベースルートとして検出する第1のコード検出ステップと、前記第1のコード検出ステップによりコードが検出された後のベースラインのレガート奏法時に於いて、同時に2個の鍵の押下状態があるとそのうちの最後の発音開始指示の音高をベースルートとして検出し、1個の鍵の押下状態があるとその音高をベースルートとして検出し、前記第1のコード検出ステップにより検出された分数コードのうちベースルートのみを変更する第2のコード検出ステップとを有する電子楽器のコード検出方法が提供される。
本発明のさらに他の観点によれば、同時に3個以上の鍵の押下状態があると、その3個以上の鍵の押下状態の音高を基にベースルートを含む分数コードを検出することができ、前記3個以上の鍵の押下状態の音高のうちの最低音の音名をベースルートとして検出する第1のコード検出ステップと、前記第1のコード検出ステップによりコードが検出された後のベースラインのレガート奏法時に於いて、同時に2個の鍵の押下状態があるとそのうちの最後の発音開始指示の音高をベースルートとして検出し、1個の鍵の押下状態があるとその音高をベースルートとして検出し、前記第1のコード検出ステップにより検出された分数コードのうちベースルートのみを変更する第2のコード検出ステップとをコンピュータに実行させるためのプログラムが提供される。
ガート奏法でベースラインを演奏した際にも適切なコードを検出することができる。
図1は、本発明の実施形態による電子楽器のコード検出装置の構成例を示す。鍵盤101は、演奏操作するための複数の鍵を含み、押鍵するとキーオン(音高を含む)を発生し、離鍵するとキーオフ(音高を含む)を発生する。鍵盤101の代わりに、その他の演奏操作子を用いてもよい。コード検出手段103は、3鍵以上コード検出手段104及び2鍵以下コード検出手段105を有し、鍵盤101の押鍵に応じてコード検出を行う。分数コード検出スイッチを押すことにより、コード検出手段103は分数コードを検出することができる。
3鍵以上コード検出手段104は、鍵盤101から同時に3個以上のキーオンの入力があると、その3個以上のキーオンの音高を基に分数コード(ベースルートを含む)を検出することができる。その際、3鍵以上コード検出手段104は、3個以上のキーオンのうちの最低音の音名をベースルートとして検出する。分数コードの分子はコードルート及びコードタイプで表され、分数コードの分母はベースルートで表される。例えば、「ドレミ」を押鍵すると、コードルートが「C」、コードタイプが「メジャー」、ベースルートが最低音の「C」として、コード「C/C」が検出される。
2鍵以下コード検出手段105は、3鍵以上コード検出手段104により分数コードが検出された後、同時に2個以下のキーオンがあると、そのうちの最後(最新)のキーオンの音名をベースルートとして検出し、上記の分数コードのうちベースルートのみを変更する。
スタイル番号選択手段102は、ユーザの操作に応じて、例えばロックやジャズ等の自動伴奏のスタイルを選択し、スタイル番号を出力する。
自動伴奏手段106は、上記のスタイル番号に応じた自動伴奏パターンを読み出し、コード検出手段103により検出される分数コードに応じて自動伴奏を行う。自動伴奏は、例えばコードパート及び/又はベースパートの所定パターンを繰り返し発音することにより行う。コードパートはコードルート及びコードタイプに応じて発音され、ベースパートはベースルートに応じて発音される。
まず、図2(A)に示すように、ベースルート(ベースライン)が順次下がる場合を説明する。時刻t1〜t2において、3鍵の「ドミソ」を押鍵すると、コード「C/C」が検出される。次に、時刻t3〜t4に1鍵の「ド」を押鍵すると、「C/C」が検出される。次に、時刻t5〜t6に1鍵の「シ」を押鍵すると、「C/B」が検出される。次に、時刻t7〜t8に1鍵の「ラ」を押鍵すると、「C/A」が検出される。
次に、図2(B)に示すように、ベースルートが順次上がる場合を説明する。時刻t1〜t2において、3鍵の「ドミソ」を押鍵すると、コード「C/C」が検出される。次に、時刻t3〜t4に1鍵の「ソ」を押鍵すると、「C/G」が検出される。次に、時刻t5〜t6に1鍵の「ラ」を押鍵すると、「C/A」が検出される。次に、時刻t7〜t8に1鍵の「シ」を押鍵すると、「C/B」が検出される。
次に、図2(C)に示すように、レガート奏法でベースルートが下がる場合を説明する。時刻t1〜t2において3鍵の「ドミソ」を押鍵し、時刻t3〜t5において「ド」を押鍵し、時刻t4〜t7において「シ」を押鍵し、時刻t6〜t8において「ラ」を押鍵する場合を説明する。時刻t1において、3鍵の「ドミソ」が押鍵されるので、コード「C/C」が検出される。次に、時刻t3において、1鍵の「ド」が押鍵されるので、コード「C/C」が検出される。次に、時刻t4において、2鍵の「シド」が押鍵されているので、そのうちの最終(最後)鍵の「シ」をベースルートとし、コード「C/B」が検出される。次に、時刻t6において、2鍵の「ラシ」が押鍵されているので、そのうちの最終鍵の「ラ」をベースルートとし、コード「C/A」が検出される。この場合は、図2(A)の場合と同様に、適切なコードを検出することができる。
次に、図2(D)に示すように、レガート奏法でベースルートが上がる場合を説明する。この場合、2鍵以下の押鍵のうちの最低鍵をベースルートとして検出してしまうと、前述のように、不適切なコードを検出してしまう。本実施形態のように、2鍵以下コード検出手段105が、2鍵以下の押鍵のうちの最終鍵をベースルートとして検出することにより、適切なコードを検出することができる。
時刻t1〜t2において3鍵の「ドミソ」を押鍵し、時刻t3〜t5において「ソ」を押鍵し、時刻t4〜t7において「ラ」を押鍵し、時刻t6〜t8において「シ」を押鍵する場合を説明する。時刻t1において、3鍵の「ドミソ」が押鍵されるので、コード「C/C」が検出される。次に、時刻t3において、1鍵の「ソ」が押鍵されるので、コード「C/G」が検出される。次に、時刻t4において、2鍵の「ソラ」が押鍵されているので、そのうちの最終鍵の「ラ」をベースルートとし、適切なコード「C/A」が検出される。次に、時刻t6において、2鍵の「ラシ」が押鍵されているので、そのうちの最終鍵の「シ」をベースルートとし、適切なコード「C/B」が検出される。以上のように、図2(D)の場合も、図2(B)の場合と同様に、適切なコードを検出することができる。
図3は、本実施形態による電子楽器のハードウエア構成例を示すブロック図である。バス301には、音源(TG)302、CPU303、パネル304、鍵盤305、ROM306、RAM307、D/A変換器308、及びMIDIインタフェース311が接続されている。
CPU303は、種々の演算又は処理を行い、ROM306に記憶されているコンピュータプログラムに応じて、後述する図4〜図7の処理等を実行する。タイマー312は、時間情報をCPU303に供給する。CPU303は、その時間情報に応じて、後述する図6のタイマー処理を行うことができる。ROM306は、コンピュータプログラムの他、自動伴奏データ等を記憶する。RAM307は、CPU303のワーキングエリアとして使用される。パネル304は、スイッチ及び表示装置(例えば液晶表示器)を含み、スタイル番号選択スイッチ及び分数コード検出スイッチ等を有する。
鍵盤305は、押鍵及び離鍵が可能な複数の鍵を有する。鍵盤305が押鍵されるとベロシティ(押鍵速度)及びキーナンバ(音高)を含むキーオンイベントをCPU303に伝え、鍵盤305が離鍵されるとキーオフイベントをCPU303に伝える。鍵盤101のコード検出用鍵域で押鍵されると、その押鍵を基にコードが検出される。CPU303は、選択されたスタイル番号を基にROM306内の自動伴奏データを読み出し、検出されたコードを基に所定パターンの自動伴奏データを変換して繰り返し発音処理する。また、MIDIインタフェース311は、演奏データ等をMIDIデータとして外部に対して入出力することができる。
音源302は、鍵盤305の操作による演奏データ又は自動伴奏データを基に、楽音信号を生成する。D/A変換器308は、音源302で生成されたデジタル形式の楽音信号をアナログ形式に変換し、アンプ309に出力する。アンプ309は、楽音信号の増幅を行い、スピーカ310にて楽音が発音される。
CPU303は、図4の鍵盤処理及び図7のコード検出処理等をメインルーチンにて繰り返し処理し、図6のタイマー処理を所定時間間隔で割り込み処理する。
図4は、鍵盤操作があったときに行う鍵盤処理を示すフローチャートである。ステップS401では、コード検出マップ作成処理を行う。この処理の詳細は、後に図5を参照しながら説明する。次に、ステップS402では、鍵盤操作に応じた発音処理又は消音処理を行う。すなわち、鍵盤の押鍵によりキーオンが発生すると発音処理を行い、鍵盤の離鍵によりキーオフが発生すると消音処理を行う。次に、ステップS403では、録音スイッチが押されていれば、鍵盤操作に基づく演奏データ等の録音処理を行う。次に、ステップS404では、MIDI(musical instrument digital interface)送信指示に応じてMIDI送信処理を行う。すなわち、鍵盤の操作に応じたMIDIデータをMIDIインタフェース311を介して外部に送信する。次に、ステップS405では、その他の処理を行う。その後、鍵盤処理を終了する。
図5は、図4のステップS401のコード検出マップ作成処理の詳細を示すフローチャートである。まず、ステップS501では、鍵盤操作により発生したキーイベントがキーオン又はキーオフのいずれであるかをチェックする。キーオンであればステップS511へ進み、キーオフであればステップS502へ進む。
ステップS511では、オン検出要求用カウンタに所定時間をセットする。オン検出要求用カウンタの所定時間は、演奏者が複数鍵の構成音からなるコードを押鍵する際に多少の時間ずれを伴いながら構成音を押鍵するので、押鍵後にすぐにコード検出せず、所定時間待機してからコード検出するために必要な時間である。オン検出要求用カウンタは、後述する図6のタイマー処理にてデクリメントされる。
次に、ステップS512では、発生したキーオンの音高をコード検出用キーマップにセットする。コード検出用キーマップは、鍵盤305の鍵数の音高分のフラグを有し、キーオンの音高のフラグのみがセットされる。
次に、ステップS513では、分数コード検出スイッチがオン又はオフのいずれであるかをチェックする。オンであればステップS514へ進み、オフであればステップS518へ進む。ステップS518では、分数コードの検出は行わないので、ベース鍵(ベースルート)をオフに設定し、ステップS519へ進む。
ステップS514では、分数コードの検出を行うため、押鍵が2鍵以下か否かをチェックする。押鍵が2鍵以下であればステップS515へ進み、3鍵以上であればステップS516へ進む。
ステップS516では、上記のコード検出用キーマップを基に、前回に比べてキーオンの最低鍵の音高に変更があるか否かをチェックする。変更があればステップS517へ進み、変更がなければステップS519へ進む。
ステップS517は、押鍵が3鍵以上のときの処理であり、ベース鍵(ベースルート)をキーオン中の最低鍵の音高に設定する。その後、ステップS519へ進む。ステップS515は、押鍵が2鍵以下のときの処理であり、ベース鍵(ベースルート)をキーオン中の最終(最後)鍵の音高に設定する。その後、ステップS519へ進む。
ステップS519では、ベース検出要求フラグをセットし、コード検出マップ作成処理を終了する。ベース検出要求フラグをセットすることにより、図7のステップS703にてコード検出処理を行うとの判断がされる。
ステップS502では、コード検出用キーマップにおいて今回キーオフされた音高のフラグをクリアする。次に、ステップS503では、コード検出用キーマップを基に、現在押鍵によるキーオンが残存するか否かをチェックする。キーオンが残存すればステップS504へ進み、残存しなければステップS505へ進む。
ステップS504では、オフ検出要求用カウンタに所定時間をセットする。オフ検出要求用カウンタの所定時間は、演奏者が複数鍵の構成音からなるコードを離鍵する際に多少の時間ずれを伴いながら構成音を離鍵するので、離鍵後にすぐにコード検出せず、所定時間待機してから新たなコードを検出するために必要な時間である。オフ検出要求用カウンタは、後述する図6のタイマー処理にてデクリメントされる。その後、ステップS505へ進む。
ステップS505では、分数コード検出スイッチがオン又はオフのいずれであるかをチェックする。オンであればステップS506へ進み、オフであればコード検出マップ作成処理を終了する。
ステップS506では、上記のコード検出用キーマップを基に、前回に比べてキーオンの最低鍵の音高に変更があるか否かをチェックする。変更があればステップS507へ進み、変更がなければステップS508へ進む。
ステップS507では、ベース鍵(ベースルート)をキーオン中の最低鍵の音高に設定する。その後、ステップS510へ進む。
ステップS508では、全鍵がキーオフであるか否かをチェックする。全鍵がキーオフであればステップS509へ進み、そうでなければコード検出マップ作成処理を終了する。ステップS509では、ベース鍵(ベースルート)をオフに設定し、ステップS510へ進む。
ステップS510では、ベース検出要求フラグをセットし、コード検出マップ作成処理を終了する。ベース検出要求フラグをセットすることにより、図7のステップS703にてコード検出処理を行うとの判断がされる。
図6は、タイマー処理を示すフローチャートである。ステップS601では、オン検出要求用カウンタがカウント中か否かをチェックする。具体的には、オン検出要求用カウンタが0でなければカウント中であると判断する。カウント中であればステップS602へ進み、カウント中でなければステップS605へ進む。
ステップS602では、オン検出要求用カウンタをデクリメントする。次に、ステップS603では、オン検出要求用カウンタのカウントが終了したか否かをチェックする。カウントが終了すればステップS604へ進み、終了していなければステップS605へ進む。ステップS604では、オン検出要求フラグをセットする。オン検出要求フラグをセットすることにより、図7のステップS701にてコード検出処理を行うとの判断がされる。その後、ステップS605へ進む。
ステップS605では、オフ検出要求用カウンタがカウント中か否かをチェックする。具体的には、オフ検出要求用カウンタが0でなければカウント中であると判断する。カウント中であればステップS606へ進み、カウント中でなければタイマー処理を終了する。
ステップS606では、オフ検出要求用カウンタをデクリメントする。次に、ステップS607では、オフ検出要求用カウンタのカウントが終了したか否かをチェックする。カウントが終了すればステップS608へ進み、終了していなければタイマー処理を終了する。ステップS608では、オフ検出要求フラグをセットする。オフ検出要求フラグをセットすることにより、図7のステップS702にてコード検出処理を行うとの判断がされる。その後、タイマー処理を終了する。
図7は、コード検出処理を示すフローチャートである。まず、ステップS701では、オン検出要求フラグがセットされているか否かをチェックする。セットされていればステップS704へ進み、セットされていなければステップS702へ進む。ステップS702では、オフ検出要求フラグがセットされているか否かをチェックする。セットされていればステップS704へ進み、セットされていなければステップS703へ進む。ステップS703では、ベース検出要求フラグがセットされているか否かをチェックする。セットされていればステップS704へ進み、セットされていなければコード検出処理を終了する。
ステップS704では、上記のコード検出用キーマップを基にオクターブキーマップを作成する。オクターブキーマップは、1オクターブ(12鍵)の音名のフラグを有し、コード検出用キーマップ上の音高を1オクターブの音名に変換したものである。
次に、ステップS705では、コード検出テーブルを参照してコードを決定する。すなわち、オクターブキーマップ上のキーオンの構成音を基にコードルート及びコードタイプを決定する。コード検出テーブルは、構成音とコードとの関係を示すテーブルである。コード検出テーブルにその構成音がなければ、コード不確定になる。例えば、構成音が2音以下の場合には、コード不確定になる。
次に、ステップS706では、コードが確定したか否かをチェックする。コードが確定していればステップS707へ進み、確定していなければステップS720へ進む。ステップS707では、コード更新処理を行う。具体的には、ステップS707において、確定したコードと前回のコードとを比較し、ステップS708において、今回のコードが更新されているか否かをチェックする。更新されていればステップS709へ進み、更新されていなければステップS720へ進む。
ステップS709では、オフ検出要求フラグがセットされているか否かをチェックする。セットされていればステップS711へ進み、セットされていなければステップS710へ進む。
ステップS710では、リトリガーありの情報及び確定したコードを記録する。その際、ベースルートが設定されていればベースルートを含む分数コードが記録され、ベースルートがオフとして設定されていればベースルートは記録されない。リトリガーの処理は、後述するステップS718及びS719で行われる。その後、ステップS712へ進む。
ステップS711では、ステップS710と同様に、リトリガーなしの情報及び確定したコードを記録する。その後、ステップS712へ進む。
ステップS712では、液晶表示器(LCD)に確定したコードを表示する。次に、ステップS713では、ユーザのスイッチ操作により自動伴奏モードが設定されているか否かをチェックする。自動伴奏モードであればステップS714へ進み、そうでなければステップS725へ進む。
ステップS714では、オフ検出要求フラグがセットされているか否かをチェックする。セットされていればステップS715へ進み、セットされていなければステップS717へ進む。
ステップS717では、ベースルートが変更されたか否かをチェックする。ベースルートが変更されていればステップS718へ進み、変更されていなければステップS719へ進む。ステップS718では、ベースパートのリトリガー要求処理を行う。すなわち、現在自動伴奏しているベースパートを消音し、新たなベースルートに応じたペースパートの自動伴奏を行う。その後、ステップS719へ進む。ステップS719では、コードパートのリトリガー要求処理を行う。すなわち、現在自動伴奏しているコードパートを消音し、新たなコードルート及びコードタイプに応じたコードパートの自動伴奏を行う。その後、ステップS725へ進む。
ステップS715では、現在自動伴奏中のベースパートをベンダ処理によりピッチ変更し、それに続き、新たなベースルートに応じたペースパートの自動伴奏を行う。次に、ステップS716では、現在自動伴奏中のコードパートからキーオンの構成音以外の音を消音してコードパートの自動伴奏を行う。すなわち、キーオフがあった音を消音するようにコードパートの自動伴奏を続行する。その後、ステップS725へ進む。
ステップS720では、ベース検出要求フラグがセットされているか否かをチェックする。セットされていればステップS721へ進み、セットされていなければステップS725へ進む。
ステップS721では、リトリガーありの情報及びコード(例えばベースルート)を記録する。次に、ステップS722では、液晶表示器にコードを表示する。次に、ステップS723では、ユーザのスイッチ操作により自動伴奏モードが設定されているか否かをチェックする。自動伴奏モードであればステップS724へ進み、そうでなければステップS725へ進む。
ステップS724では、ベースパートのリトリガー要求処理を行う。すなわち、現在自動伴奏しているベースパートを消音し、新たなベースルートに応じたペースパートの自動伴奏を行う。その後、ステップS725へ進む。
ステップS725では、オン検出要求フラグをクリアする。次に、ステップS726では、オフ検出要求フラグをクリアする。次に、ステップS727では、ベース検出要求フラグをクリアする。以上で、コード検出処理を終了する。
以上のように、3個以上のキーオンの音高を基にコードを検出した後、同時に2個以下のキーオンがあると、そのうちの最後のキーオンをベースルートとして検出することにより、図2(C)及び(D)に示すようにレガート奏法でベースラインを演奏した際にも適切なコードを検出することができる。
本実施形態は、図3の電子楽器のコンピュータがプログラムを実行することによって実現することができる。また、プログラムをコンピュータに供給するための手段、例えばかかるプログラムを記録したCD−ROM等のコンピュータ読み取り可能な記録媒体又はかかるプログラムを伝送するインターネット等の伝送媒体も本発明の実施形態として適用することができる。また、上記のプログラムを記録したコンピュータ読み取り可能な記録媒体等のコンピュータプログラムプロダクトも本発明の実施形態として適用することができる。上記のプログラム、記録媒体、伝送媒体及びコンピュータプログラムプロダクトは、本発明の範疇に含まれる。記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
上記実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
本発明の実施形態による電子楽器のコード検出装置の構成例を示す図である。 図2(A)〜(D)は押鍵に応じたコード検出方法を説明するための図である。 本実施形態による電子楽器のハードウエア構成例を示すブロック図である。 鍵盤操作があったときに行う鍵盤処理を示すフローチャートである。 コード検出マップ作成処理の詳細を示すフローチャートである。 タイマー処理を示すフローチャートである。 コード検出処理を示すフローチャートである。
符号の説明
101 鍵盤
102 スタイル番号選択手段
103 コード検出手段
104 3鍵以上コード検出手段
105 2鍵以下コード検出手段
106 自動伴奏手段
301 バス
302 音源
303 CPU
304 パネル
305 鍵盤
306 ROM
307 RAM
308 D/A変換器
309 アンプ
310 スピーカ
311 MIDIインタフェース
312 タイマー

Claims (6)

  1. 同時に3個以上の鍵の押下状態があると、その3個以上の鍵の押下状態の音高を基にベースルートを含む分数コードを検出することができ、前記3個以上の鍵の押下状態の音高のうちの最低音の音名をベースルートとして検出する第1のコード検出手段と、
    前記第1のコード検出手段によりコードが検出された後のベースラインのレガート奏法時に於いて、同時に2個の鍵の押下状態があるとそのうちの最後の発音開始指示の音高をベースルートとして検出し、1個の鍵の押下状態があるとその音高をベースルートとして検出し、前記第1のコード検出手段により検出された分数コードのうちベースルートのみを変更する第2のコード検出手段と
    を有する電子楽器のコード検出装置。
  2. さらに、複数の鍵を含み、押鍵するとキーオンを発生する鍵盤を有し、
    前記第1及び第2のコード検出手段は、前記鍵盤の押鍵に応じて検出を行う請求項1記載の電子楽器のコード検出装置。
  3. さらに、前記第1のコード検出手段により検出されるコード及び/又は前記第2のコード検出手段により検出されるベースルートに応じて自動伴奏を行う自動伴奏手段を有する請求項1又は2記載の電子楽器のコード検出装置。
  4. 前記自動伴奏手段は、コードパート及び/又はベースパートの自動伴奏を行う請求項3記載の電子楽器のコード検出装置。
  5. 同時に3個以上の鍵の押下状態があると、その3個以上の鍵の押下状態の音高を基にベースルートを含む分数コードを検出することができ、前記3個以上の鍵の押下状態の音高のうちの最低音の音名をベースルートとして検出する第1のコード検出ステップと、
    前記第1のコード検出ステップによりコードが検出された後のベースラインのレガート奏法時に於いて、同時に2個の鍵の押下状態があるとそのうちの最後の発音開始指示の音高をベースルートとして検出し、1個の鍵の押下状態があるとその音高をベースルートとして検出し、前記第1のコード検出ステップにより検出された分数コードのうちベースルートのみを変更する第2のコード検出ステップと
    を有する電子楽器のコード検出方法。
  6. 同時に3個以上の鍵の押下状態があると、その3個以上の鍵の押下状態の音高を基にベースルートを含む分数コードを検出することができ、前記3個以上の鍵の押下状態の音高のうちの最低音の音名をベースルートとして検出する第1のコード検出ステップと、
    前記第1のコード検出ステップによりコードが検出された後のベースラインのレガート奏法時に於いて、同時に2個の鍵の押下状態があるとそのうちの最後の発音開始指示の音高をベースルートとして検出し、1個の鍵の押下状態があるとその音高をベースルートとして検出し、前記第1のコード検出ステップにより検出された分数コードのうちベースルートのみを変更する第2のコード検出ステップと
    をコンピュータに実行させるためのプログラム。
JP2003335135A 2003-09-26 2003-09-26 電子楽器のコード検出装置、コード検出方法及びプログラム Expired - Fee Related JP4230324B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003335135A JP4230324B2 (ja) 2003-09-26 2003-09-26 電子楽器のコード検出装置、コード検出方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003335135A JP4230324B2 (ja) 2003-09-26 2003-09-26 電子楽器のコード検出装置、コード検出方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2005099579A JP2005099579A (ja) 2005-04-14
JP4230324B2 true JP4230324B2 (ja) 2009-02-25

Family

ID=34462600

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003335135A Expired - Fee Related JP4230324B2 (ja) 2003-09-26 2003-09-26 電子楽器のコード検出装置、コード検出方法及びプログラム

Country Status (1)

Country Link
JP (1) JP4230324B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013007910B4 (de) 2012-05-10 2021-12-02 Kabushiki Kaisha Kawai Gakki Seisakusho Automatische Begleitungsvorrichtung für elektronisches Tastenmusikinstrument und in dieser verwendete Slash-Akkord-Bestimmungsvorrichtung
JP5917284B2 (ja) * 2012-05-10 2016-05-11 株式会社河合楽器製作所 分数コード決定装置
JP7192830B2 (ja) * 2020-06-24 2022-12-20 カシオ計算機株式会社 電子楽器、伴奏音指示方法、プログラム、及び伴奏音自動生成装置

Also Published As

Publication number Publication date
JP2005099579A (ja) 2005-04-14

Similar Documents

Publication Publication Date Title
JP4265551B2 (ja) 演奏補助装置及び演奏補助プログラム
JP2009156914A (ja) 自動伴奏装置及びプログラム
JP4230324B2 (ja) 電子楽器のコード検出装置、コード検出方法及びプログラム
JP4379291B2 (ja) 電子音楽装置及びプログラム
US20080060501A1 (en) Music data processing apparatus and method
JPWO2019049383A1 (ja) 楽音データ再生装置および楽音データ再生方法
JP4483304B2 (ja) 楽譜表示プログラム及び楽譜表示装置
JP3747758B2 (ja) 自動演奏装置
JP4670686B2 (ja) コード表示装置及びプログラム
JP3844286B2 (ja) 電子楽器の自動伴奏装置
JP4853054B2 (ja) 演奏データ編集装置及びプログラム
JP3873880B2 (ja) 演奏補助装置および演奏補助用プログラム
JP3654227B2 (ja) 楽曲データ編集装置及びプログラム
JP6127549B2 (ja) 音楽データ編集方法、当該音楽データ編集方法を実現するためのプログラムおよび音楽データ編集装置
JP2002304175A (ja) 波形生成方法、演奏データ処理方法および波形選択装置
JP5532653B2 (ja) 楽音信号作成装置
JP3752956B2 (ja) 演奏ガイド装置および演奏ガイド方法並びに演奏ガイドプログラムを記録したコンピュータ読み取り可能な記録媒体
JP3818296B2 (ja) 和音検出装置
JP2010237236A (ja) 楽音信号作成装置及びプログラム
JP4144488B2 (ja) 伴奏データ生成装置及びプログラム
JP3476863B2 (ja) 電子楽器の自動伴奏装置
JP4186802B2 (ja) 自動伴奏生成装置及びプログラム
JP2004246069A (ja) 電子音楽装置及びトランスポーズ設定プログラム
JP4595851B2 (ja) 演奏データ編集装置及びプログラム
JP3580259B2 (ja) 演奏データ編集装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060831

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080310

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080318

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080516

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080812

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080911

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20081022

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081203

R150 Certificate of patent or registration of utility model

Ref document number: 4230324

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20121212

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20131212

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees