(57)【要約】【課題】自動伴奏中に発音する伴奏音が連続的に変更されてもアタック音が頻繁に発生することを可及的に防止し、滑らかな演奏を行えるようにする。【解決手段】伴奏音として発音しているコードの構成音をバッファ２３に記憶しておき、上記コードが変更された場合、上記発音しているコードと上記変更されたコードに共通する構成音があるか否かを検索し、ある場合には、上記発音しているコードの構成音をそのまま発音するようにし、ない場合には、上記変更されたコードの構成音に最も近いピッチの音のピッチを、上記変更されたコードのピッチに変更して発音することにより、発音中のコードを消音しなくても変更後のコードを再発音できるようにして、自動伴奏における再発音時にアタック音が煩雑に発生するのを防止し、滑らかな演奏を行うことができるようにする。【選択図】　　　図２
2004045528.tif 000002
【特許請求の範囲】
【請求項１】
鍵盤の押鍵と離鍵とに基づく演奏音を伴奏するための伴奏音を発音して自動伴奏を行うことが可能な電子楽器であって、
上記発音している伴奏音が変更された場合には、上記発音している伴奏音を用いて上記変更された新たな伴奏音を発音させるようにしたことを特徴とする電子楽器。
【請求項２】
鍵盤の押鍵と離鍵とに基づく演奏音を伴奏する伴奏音の発音を指示する伴奏音発音指示手段と、
上記伴奏音発音指示手段による指示内容に基づいた伴奏音を発音させる伴奏音発音手段と、
上記伴奏音発音手段により発音されている伴奏音を記憶媒体に記憶する記憶手段とを有し、
上記伴奏音発音手段は、上記伴奏音発音指示手段により伴奏音を変更することが指示された場合には、上記記憶媒体に記憶されている発音中の伴奏音を用いて新たな伴奏音を発音させるようにしたことを特徴とする電子楽器。
【請求項３】
上記伴奏音発音手段は、上記記憶媒体に記憶されている発音中の伴奏音のピッチと、上記変更することが指示された新たな伴奏音のピッチとの差分を計算し、上記計算した結果を用いて上記発音中の伴奏音のピッチを上記新たな伴奏音のピッチに変更し、上記ピッチを変更した伴奏音を上記新たな伴奏音として発音させるようにしたことを特徴とする請求項２に記載の電子楽器。
【請求項４】
上記伴奏音発音手段により伴奏音が発音されてからの時間を計測する計測手段を有し、
上記伴奏音発音手段は、上記伴奏音を発音させてから所定の時間が経過したことが上記計測手段により計測された後に、上記伴奏音を変更することが指示された場合には、上記発音中の伴奏音を消音して新たな伴奏音を発音させるようにしたことを特徴とする請求項２または３に記載の電子楽器。
【請求項５】
上記伴奏音は和音であり、
上記伴奏音発音手段は、上記伴奏音発音指示手段により和音を変更することが指示された場合、上記変更することが指示された新たな和音の構成音のうち、上記記憶媒体に記憶されている発音中の和音の構成音と異なる構成音のみを変更して新たに発音させるようにし、同じ構成音についてはそのまま発音を続行させるようにしたことを特徴とする請求項２〜４の何れか１項に記載の電子楽器。
【請求項６】
上記伴奏音発音手段は、上記記憶媒体に記憶されている発音中の和音の構成音のうち、上記変更することが指示された新たな和音の構成音とピッチが最も近い構成音を用いて、上記新たな和音の構成音を生成して発音させるようにしたことを特徴とする請求項５に記載の電子楽器。
【請求項７】
上記伴奏音発音指示手段は、所定の鍵盤が押鍵されたときに上記伴奏音の発音を指示することを特徴とする請求項２〜６の何れか１項に記載の電子楽器。
【請求項８】
鍵盤の押鍵と離鍵とに基づく演奏音を伴奏するための伴奏音を発音して自動伴奏を行う自動伴奏方法であって、
上記発音している伴奏音が変更された場合には、上記発音している伴奏音を用いて上記変更された新たな伴奏音を発音させるようにしたことを特徴とする自動伴奏方法。
【請求項９】
鍵盤の押鍵と離鍵とに基づく演奏音を伴奏する伴奏音の発音を指示する伴奏音発音指示処理と、
上記伴奏音発音指示処理による指示内容に基づいた伴奏音を発音させる伴奏音発音処理と、
上記伴奏音発音処理により発音されている伴奏音を記憶媒体に記憶する記憶処理とを行い、
上記伴奏音発音処理は、上記伴奏音発音指示処理により伴奏音を変更することが指示された場合には、上記記憶媒体に記憶されている発音中の伴奏音を用いて新たな伴奏音を発音させるようにしたことを特徴とする自動伴奏方法。
【請求項１０】
上記伴奏音発音処理は、上記記憶媒体に記憶されている発音中の伴奏音のピッチと、上記変更することが指示された新たな伴奏音のピッチとの差分を計算し、上記計算した結果を用いて上記発音中の伴奏音のピッチを上記新たな伴奏音のピッチに変更し、上記ピッチを変更した伴奏音を上記新たな伴奏音として発音させるようにしたことを特徴とする請求項９に記載の自動伴奏方法。
【請求項１１】
上記伴奏音発音処理により伴奏音が発音されてからの時間を計測する計測処理を行い、
上記伴奏音発音処理は、上記伴奏音を発音させてから所定の時間が経過したことが上記計測処理により計測された後に、上記伴奏音を変更することが指示された場合には、上記発音中の伴奏音を消音して新たな伴奏音を発音させるようにしたことを特徴とする請求項９または１０に記載の自動伴奏方法。
【請求項１２】
上記伴奏音発音処理は、上記伴奏音発音指示処理により和音を変更することが指示された場合、上記変更することが指示された新たな和音の構成音のうち、上記記憶媒体に記憶されている発音中の和音の構成音と異なる構成音のみを変更して新たに発音させるようにし、同じ構成音についてはそのまま発音を続行させるようにしたことを特徴とする請求項９〜１１の何れか１項に記載の自動伴奏方法。
【請求項１３】
上記伴奏音発音処理は、上記記憶媒体に記憶されている発音中の和音の構成音のうち、上記変更することが指示された新たな和音の構成音とピッチが最も近い構成音を用いて、上記新たな和音の構成音を生成して発音させるようにしたことを特徴とする請求項１２に記載の自動伴奏方法。
【請求項１４】
上記伴奏音発音指示処理は、所定の鍵盤が押鍵されたときに上記伴奏音の発音を指示することを特徴とする請求項９〜１３の何れか１項に記載の自動伴奏方法。
【請求項１５】
鍵盤の押鍵と離鍵とに基づく演奏音を伴奏するための伴奏音を発音して自動伴奏を行うに際して、上記発音している伴奏音が変更された場合には、上記発音している伴奏音を用いて上記変更された新たな伴奏音を発音させることをコンピュータに実行させることを特徴とするコンピュータプログラム。
【請求項１６】
鍵盤の押鍵と離鍵とに基づく演奏音を伴奏する伴奏音の発音を指示する伴奏音発音指示処理と、
上記伴奏音発音指示処理による指示内容に基づいた伴奏音を発音させる伴奏音発音処理と、
上記伴奏音発音処理により発音されている伴奏音を記憶媒体に記憶する記憶処理とを行い、
上記伴奏音発音処理は、上記伴奏音発音指示処理により伴奏音を変更することが指示された場合には、上記記憶媒体に記憶されている発音中の伴奏音を用いて新たな伴奏音を発音させることをコンピュータに実行させることを特徴とするコンピュータプログラム。
【請求項１７】
上記請求項１５または１６に記載のコンピュータプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、電子楽器、自動伴奏方法、コンピュータプログラム及びコンピュータ読み取り可能な記録媒体に関し、特に、伴奏音を再発音するために用いて好適なものである。
【０００２】
【従来の技術】
従来から、コードを変更しながら自動伴奏することが可能な電子楽器が提案されている。具体的に説明すると、例えば、鍵盤の押鍵内容に基づいて伴奏音である和音（以下、コードと称する）を検出し、コードが変更された場合には、現在発音しているコードの構成音を消音し、新たなコードの構成音で再発音処理を行うようにして自動伴奏を行う電子楽器が提案されている。
【０００３】
【発明が解決しようとする課題】
しかしながら、従来の電子楽器で自動伴奏を行う場合、発音する伴奏音が変更されるたびにそれまで発音していた伴奏音を消音して再発音するようにしていたので、伴奏音を連続的に変更するとアタック音が頻繁に発生して演奏の妨げになってしまうという問題点があった。
【０００４】
特に、自動演奏パターンに従ってコードが発音された直後にコードが変更されると、アタック音が続けて２回発音してしまい、演奏の流れが著しく不自然になってしまっていた。
【０００５】
本発明は上述の問題点にかんがみ、自動伴奏中に発音する伴奏音が連続的に変更されてもアタック音が頻繁に発生することを可及的に防止し、滑らかな演奏を行えるようにすることを第１の目的とする。
【０００６】
また、自動伴奏中にコードが連続的に変更されてもアタック音が煩雑に発生することを可及的に防止しながら、上記自動伴奏におけるコードの変更を検出した時には新たなコード演奏を速やかに行えるようにすることを第２の目的とする。
【０００７】
【課題を解決するための手段】
本発明の電子楽器は、鍵盤の押鍵と離鍵とに基づく演奏音を伴奏するための伴奏音を発音して自動伴奏を行うことが可能な電子楽器であって、上記発音している伴奏音が変更された場合には、上記発音している伴奏音を用いて上記変更された新たな伴奏音を発音させるようにしたことを特徴としている。
また、本発明の他の特徴とするところは、鍵盤の押鍵と離鍵とに基づく演奏音を伴奏する伴奏音の発音を指示する伴奏音発音指示手段と、上記伴奏音発音指示手段による指示内容に基づいた伴奏音を発音させる伴奏音発音手段と、上記伴奏音発音手段により発音されている伴奏音を記憶媒体に記憶する記憶手段とを有し、上記伴奏音発音手段は、上記伴奏音発音指示手段により伴奏音を変更することが指示された場合には、上記記憶媒体に記憶されている発音中の伴奏音を用いて新たな伴奏音を発音させるようにしたことを特徴としている。
【０００８】
本発明の自動伴奏方法は、鍵盤の押鍵と離鍵とに基づく演奏音を伴奏するための伴奏音を発音して自動伴奏を行う自動伴奏方法であって、上記発音している伴奏音が変更された場合には、上記発音している伴奏音を用いて上記変更された新たな伴奏音を発音させるようにしたことを特徴としている。
また、本発明の他の特徴とするところは、鍵盤の押鍵と離鍵とに基づく演奏音を伴奏する伴奏音の発音を指示する伴奏音発音指示処理と、上記伴奏音発音指示処理による指示内容に基づいた伴奏音を発音させる伴奏音発音処理と、上記伴奏音発音処理により発音されている伴奏音を記憶媒体に記憶する記憶処理とを行い、上記伴奏音発音処理は、上記伴奏音発音指示処理により伴奏音を変更することが指示された場合には、上記記憶媒体に記憶されている発音中の伴奏音を用いて新たな伴奏音を発音させるようにしたことを特徴としている。
【０００９】
本発明のコンピュータプログラムは、鍵盤の押鍵と離鍵とに基づく演奏音を伴奏するための伴奏音を発音して自動伴奏を行うに際して、上記発音している伴奏音が変更された場合には、上記発音している伴奏音を用いて上記変更された新たな伴奏音を発音させることをコンピュータに実行させることを特徴としている。また、本発明の他の特徴とするところは、鍵盤の押鍵と離鍵とに基づく演奏音を伴奏する伴奏音の発音を指示する伴奏音発音指示処理と、上記伴奏音発音指示処理による指示内容に基づいた伴奏音を発音させる伴奏音発音処理と、上記伴奏音発音処理により発音されている伴奏音を記憶媒体に記憶する記憶処理とを行い、上記伴奏音発音処理は、上記伴奏音発音指示処理により伴奏音を変更することが指示された場合には、上記記憶媒体に記憶されている発音中の伴奏音を用いて新たな伴奏音を発音させることをコンピュータに実行させることを特徴としている。
【００１０】
本発明のコンピュータ読み取り可能な記録媒体は、上記何れかに記載のコンピュータプログラムを記録したことを特徴としている。
【００１１】
【発明の実施の形態】
（第１の実施の形態）
次に、添付の図面を参照しながら、電子楽器、自動伴奏方法、コンピュータプログラム及びコンピュータ読み取り可能な記録媒体の第１の実施の形態を説明する。
【００１２】
図１は、本実施の形態の電子楽器の概略構成の一例を示すブロック図である。
図１において、電子楽器１は、中央処理装置（以下、ＣＰＵと称する）２と、リードオンリメモリ（以下、ＲＯＭと称する）３と、ランダムアクセスメモリ（以下、ＲＡＭと称する）４と、信号バス５と、キーボード部６と、操作パネル部７と、楽音発生部８と、デジタル／アナログ変換部（以下、Ｄ／Ａ変換部と称する）９と、アナログ信号処理部１０と、パワーアンプ１１と、スピーカ部１２とを有している。
【００１３】
図１に示すように、ＣＰＵ２、ＲＯＭ３、ＲＡＭ４、キーボード部６、操作パネル部７、及び楽音発生部８は、それぞれ信号バス５に接続され、相互に通信することが可能である。
【００１４】
キーボード部６は、演奏を行うための複数の鍵とその鍵の各々に対応して設けられた鍵スイッチとを含む複数の鍵盤を有している。上記鍵スイッチは、上記鍵盤の押鍵や離鍵を検出するとともに、各鍵の動作スピードに関するＫｅｙタッチレスポンス信号を検出するように構成されている。
【００１５】
操作パネル部７は、音色や音量などを選択及び設定するための各種操作子と、これらの選択および設定状態を表示するためのＬＣＤ（液晶表示装置）またはＬＥＤ（発光ダイオード）から成る表示装置とを有している。
【００１６】
なお、上記音色や音量などを選択および設定するための各種操作子は、例えば、音色設定スイッチ、音量設定ボリューム、及び自動伴奏設定スイッチなどである。
【００１７】
上記音色設定スイッチと上記音量設定ボリュームは、出力する楽音の音色と音量を設定するためのものであり、これら音色設定スイッチと音量設定ボリュームにより所望の音色と音量が設定されると、設定内容に応じた音色と音量を有する楽音が出力される。
【００１８】
上記自動伴奏設定スイッチは、上記鍵盤の押鍵及び離鍵に応じたメロディー（演奏音）を発音させて行うマニュアル演奏を補助する伴奏機能を実行するときに設定されるスイッチである。この自動伴奏設定スイッチにおける具体的な設定内容としては、例えば、自動伴奏を行う楽音（音符）、音色、及びリズムなどである。
【００１９】
ＣＰＵ２は、本実施の形態の電子楽器１の全体を統括制御するためのものであり、ＲＯＭ３に格納されている制御プログラムに従って、ＲＡＭ４をワークメモリとして利用しながら、例えば次のような処理を行う。
【００２０】
すなわち、ＣＰＵ２は、キーボード部６の各鍵スイッチのスキャン処理を行って、各鍵の押鍵または離鍵に伴う鍵情報を楽音発生部８に割り当てる処理を行う。なお、上記各鍵の押鍵または離鍵に伴う鍵情報の具体例としては、Ｋｅｙ　ＯＮ／ＯＦＦ信号、Ｋｅｙ識別信号（鍵番号など）、Ｋｅｙタッチレスポンス信号等が挙げられる。
【００２１】
また、ＣＰＵ２は、操作パネル部７に配設されている音色設定スイッチ、音量設定ボリューム、及び自動伴奏設定スイッチのスキャン処理を行い、設定内容に応じた所望のデジタル楽音信号ＤＭＳを楽音発生部８から発生させるための処理を行う。
【００２２】
ＲＯＭ３は、読み出し専用のメモリであり、上述のようなＣＰＵ２の制御プログラムの他、楽音発生部８から所望のデジタル楽音信号ＤＭＳを発生させるために必要なパラメータデータなど、種々のデータを格納する。
【００２３】
本実施の形態のＲＯＭ３は、上記自動伴奏機能を実行するために、例えば、自動伴奏パターン、自動伴奏ヘッダ、及び自動伴奏リズムパターンを格納している。
【００２４】
上記自動伴奏パターンは、音符などの情報で構成される演奏パターンであり、複数の楽器音（音色）及び演奏スタイルごとにテーブルとしてＲＯＭ３内の所定の記憶領域に格納されているものである。
上記自動伴奏ヘッダは、上記テーブルのうち、どのテーブルを自動伴奏に使用するのかを示す情報である。
上記自動伴奏リズムパターンは、自動伴奏における発音タイミングを示すリズムパターンであり、楽器音（音色）及び演奏スタイルごとにＲＯＭ３内の所定の記憶領域に格納されているものである。
【００２５】
これら自動伴奏パターン、自動伴奏ヘッダ、及び上記自動伴奏リズムパターンは、上記自動伴奏設定スイッチにおける設定内容に従って、自動伴奏情報としてＣＰＵ２により読み出され、楽音発生部８に出力される。
すなわち、上記自動伴奏設定スイッチの設定に従って自動伴奏を行う楽音（音符）、音色、及びリズムなどを表す自動伴奏情報が楽音発生部８に出力される。
【００２６】
ＲＡＭ４は読み書きが可能なメモリであり、ＣＰＵ２のプログラム実行過程において各種の必要なデータを一時的に記憶したり、編集可能なパラメータデータを記憶したりする記憶領域を有している。このＲＡＭ４の一部あるいは全部はバッテリーバックアップされており、操作パネル部７により設定された音色に応じた必要なデータを、電子楽器１の電源がオフにされても保持しておくことができるようになされている。
【００２７】
楽音発生部８は、演奏音発生部８ａと伴奏音発生部８ｂとを有する。
演奏音発生部８ａは、上記鍵盤の押鍵操作の内容に応じた鍵情報（Ｋｅｙ　ＯＮ／ＯＦＦ信号、Ｋｅｙ識別信号（鍵番号など）、Ｋｅｙタッチレスポンス信号等）と、操作パネル部７の設定内容とに基づいて、演奏者の鍵盤操作に従った演奏音に対応する所望のデジタル楽音信号ＤＭＳを発生させる。
【００２８】
伴奏音発生部８ｂは、上記鍵盤の押鍵操作の内容に応じた鍵情報（Ｋｅｙ　ＯＮ／ＯＦＦ信号、Ｋｅｙ識別信号（鍵番号など）等）と、上記自動伴奏情報とに基づいて、上記演奏音を伴奏するための伴奏音に対応する所望のデジタル楽音信号ＤＭＳを発生させる。
【００２９】
なお、本実施の形態では、上記伴奏音がコード（和音）の場合について説明を行う。
また、本実施の形態の電子楽器では、上記自動伴奏設定スイッチにより自動伴奏を行うことが設定されているときに所定の鍵盤が押鍵された場合に、上記押鍵された鍵盤に対応する所定のコードを発音するようにしている。
【００３０】
Ｄ／Ａ変換部９は、楽音発生部８で発生されたデジタル楽音信号ＤＭＳをアナログ楽音信号に変換する機能を有する。
アナログ信号処理部１０は、Ｄ／Ａ変換部９でＤ／Ａ変換されたアナログ楽音信号に対し、簡単なフィルタ処理（ノイズ除去処理）を施す機能を有する。
【００３１】
パワーアンプ１１は、アナログ信号処理部１０でノイズ除去処理が施されたアナログ楽音信号に対し、増幅処理を施して適当なレベルに増幅する。
スピーカ部１２は、パワーアンプ１１で増幅されたアナログ楽音信号を可聴信号として放音するためのものであり、１個あるいは複数個で構成されている。
【００３２】
図２は、図１に示した本実施の形態の楽音発生部８（伴奏音発生部８ｂ）の構成をより具体的に示したブロック図である。
図２において、伴奏音発生部８ｂは、伴奏音用波形メモリ２０と、波形読み出し回路２１と、伴奏音信号生成回路２２と、バッファ２３とを有している。
【００３３】
伴奏音用波形メモリ２０は、伴奏用楽音波形データＡＤを、繰り返し波形データとして、あるいは立ち上がり部と繰り返し部とからなる波形データとして所定のエリアに予め記憶するためのメモリである。なお、この伴奏音用波形メモリ２０は、演奏音発生部８ａと共有するメモリであり、鍵盤の押鍵と離鍵とに基づく演奏音に対応する演奏音用楽音波形信号ＤＭＳを発生させる際にも用いられる。
【００３４】
伴奏用楽音波形データＡＤは、音色や音域に応じた種々の楽音波形データであり、上記自動伴奏を行うときに使用される。すなわち、伴奏用楽音波形データＡＤは、上記伴奏音を発音させるためのデータである。
【００３５】
波形読み出し回路２１は、上記鍵盤の操作に応じて与えられるＫｅｙ　ＯＮ／ＯＦＦ信号及びＫｅｙ識別信号と、上記自動伴奏情報とに基づいて、所望の伴奏用楽音波形データＡＤを所望の楽音周波数に応じた速度で伴奏音用波形メモリ２０から読み出す。
【００３６】
なお、伴奏用楽音波形データＡＤの読み出しは、波形読み出し回路２１から伴奏音用波形メモリ２０に時分割で与えられるアドレス情報に従って行われる。
【００３７】
バッファ２３は、現在発音されているコードの各構成音を一時的に記憶するためのメモリである。このバッファ２３への書き込み動作と消去動作は、伴奏音信号生成回路２２により制御される。
【００３８】
伴奏音信号生成回路２２は、伴奏音用波形メモリ２０から読み出された伴奏用楽音波形データＡＤを用いて、所望のコードに対応するデジタル楽音信号ＤＭＳを生成してコードの発音処理を行う。
【００３９】
すなわち、伴奏音信号生成回路２２は、伴奏音用波形メモリ２０から読み出した伴奏用楽音波形データＡＤに対して、フィルタ処理を施したり、エンベロープを付与したりするなどの発音処理を行って上記所望のコードに対応するデジタル楽音信号ＤＭＳを生成して出力する。
【００４０】
ただし、上記発音処理を行うに際し、コードが変更されたことを検出した場合には以下のような処理を行う。
まず、上記変更されたコードの各構成音がバッファ２３に記憶されているか否かを検索する。
【００４１】
そして、記憶されている場合には新たな発音処理を行わず、現在発音している構成音をそのまま発音させ続けるようにする。
一方、記憶されていない場合には、バッファ２３に記憶されている音の中から、上記変更された新たなコードの構成音に最も近いピッチを有する音を検索し、上記変更された新たなコードの構成音と上記検索した音とのピッチの差分を計算する。
【００４２】
そして、上記計算した結果に基づいて、上記検索した音のピッチを、上記変更された新たなコードの構成音のピッチに変更して再発音を行うようにする。そして、変更された新たなコードの構成音をバッファ２３に記憶する。
【００４３】
次に、図３のフローチャートを参照しながら本実施の形態の楽音発生部８（伴奏音発生部８ｂ）の動作の一例を説明する。なお、以下では、自動伴奏機能を実行する場合について説明する。
【００４４】
まず、最初のステップＳ１において、波形読み出し回路２１と伴奏音信号生成回路２２は、所望の鍵情報（Ｋｅｙ　ＯＮ／ＯＦＦ信号、Ｋｅｙ識別信号）と自動伴奏情報とが入力されるまで待機し、これらの情報が入力され伴奏音の発音指令を受けるとステップＳ２に進む。
【００４５】
次に、ステップＳ２において、波形読み出し回路２１は、ステップＳ１で入力された鍵情報と自動伴奏情報とに基づいて、所望の伴奏用楽音波形データＡＤを伴奏音用波形メモリ２０から読み出して伴奏音信号生成回路２２に出力する。
【００４６】
次に、ステップＳ３において、伴奏音信号生成回路２２は、上記伴奏用楽音波形データＡＤに対し、フィルタ処理やエンベロープ付与処理などを施してデジタル楽音信号ＤＭＳを生成して、バッファ２３に記憶する。
【００４７】
次に、ステップＳ４において、伴奏音信号生成回路２２は、鍵情報に基づいて、コードが変更されたか否かを判定する。この判定の結果、コードが変更されていない場合には、ステップＳ５からステップＳ８までの処理を省略して後述するステップＳ９に進む。
【００４８】
一方、ステップＳ４の判定の結果、コードが変更された場合には、ステップＳ５に進み、変更された新たなコードの各構成音のうち、任意の１つの構成音を選択し、上記選択した構成音がバッファ２３に記憶されているか否かを検索する。検索した結果、記憶されていない場合にはステップＳ６に進み、記憶されている場合にはステップＳ６の処理を省略して後述するステップＳ７に進む。
【００４９】
次に、ステップＳ６において、伴奏音信号生成回路２２は、バッファ２３に記憶されている音の中から、上記変更された新たなコードの構成音に最も近いピッチの音を検索し、上記変更された新たなコードの構成音と上記検索した音とのピッチの差分を計算する。そして、上記計算結果に基づいて、上記検索した音のピッチを、上記変更されたコードの構成音に変更する処理を行う。
【００５０】
次に、ステップＳ７において、伴奏音信号生成回路２２は、上記変更された新たなコードの全ての構成音についてステップＳ５における検索処理が完了したか否かを判定する。判定の結果、完了していない場合には、完了するまでステップＳ５からステップＳ７までの処理を繰り返す。そして、完了するとステップＳ８に進み、ステップＳ６でピッチを変更した全ての構成音に対応するデジタル楽音信号ＤＭＳを生成し、ステップＳ３でバッファ２３に記憶したデジタル楽音信号ＤＭＳを上記作成したデジタル楽音信号ＤＭＳに書き換える。
【００５１】
次に、ステップＳ９において、伴奏音信号生成回路２２は、ステップＳ３またはステップＳ８で作成したデジタル楽音信号ＤＭＳをＤ／Ａ変換部９に出力する。なお、ステップＳ６で変更した構成音が複数の場合には、複数の構成音がコードとして発音されるように処理する。
【００５２】
次に、ステップＳ１０において、伴奏音信号生成回路２３は、自動伴奏を行うための上記所定の鍵盤が離鍵されたことを、上記鍵情報に基づいて検出することにより消音指令を受け付けたか否かを判定する。判定の結果、消音指令を受け付けていない場合はステップＳ１に戻る。
【００５３】
一方、ステップＳ１０の判定の結果、消音指令を受け付けた場合は、ステップＳ１１に進み、上記離鍵された鍵盤に対応するコードを消音する処理を行うとともに、上記消音したコードの構成音に関する情報をバッファ２３から消去する。
【００５４】
次に、ステップＳ１２において、自動伴奏演奏が終了したか否かを判定し、演奏が終了していない場合は、ステップＳ２の処理の戻り、演奏が終了するまでステップＳ１からステップＳ１２までの処理を繰り返す。
【００５５】
以上のように本実施の形態では、伴奏音として発音しているコードの構成音をバッファ２３に記憶しておき、上記コードが変更された場合、上記発音しているコードと上記変更されたコードに共通する構成音があるか否かを検索し、共通する構成音がある場合には、上記発音しているコードの構成音をそのまま発音するようにするとともに、ない場合には、上記変更されたコードの構成音に最も近い音のピッチを、上記変更されたコードのピッチに変更して発音するようにしたので、発音中のコードを消音しなくても変更後のコードを再発音することができる。また、発音処理を行う音数を可及的に少なくすることができる。
【００５６】
したがって、コードを変更したときにアタック音が頻繁に発音されてしまうことを防止しながら、自動伴奏におけるコードの変更を検出した場合には変更された新たなコードによる演奏を速やかに行うことができ、自動伴奏を滑らかに行うことができる。
【００５７】
また、コードが変更された場合に、発音しているコードの音色に応じてリトリガー処理（発音している音を消音して再発音する処理）を行うか否かを決定するようにして滑らかな自動伴奏を行う手法も考えられる。しかしながら、この手法では、上記リトリガー処理を行うか否かを決定するためのテーブルが必要になってしまう。
【００５８】
これに対し、本実施の形態の電子楽器１で伴奏音を再発音させる際に記憶する情報は、発音しているコードに関する情報だけである。したがって、少ない情報で自動伴奏を滑らかに行うことができる。これにより、大きな容量を有するメモリを設ける必要がなくなり、コストを低減させることができる。
【００５９】
なお、本実施の形態では、バッファ２３を用いて発音中のコードの構成音を記憶するようにしたが、必ずしもバッファ２３に記憶する必要はなく、例えばＲＡＭ４に記憶するようにしてもよい。
また、本実施の形態では、伴奏音がコードの場合を例に挙げて説明したが、伴奏音が１音であってもよい。この場合は図３のステップＳ５とステップＳ７の処理を省略する。
【００６０】
（第２の実施の形態）
次に、電子楽器、自動伴奏方法、コンピュータプログラム及びコンピュータ読み取り可能な記録媒体の第２の実施の形態を説明する。
【００６１】
本実施の形態では、伴奏音であるコードを発音してから所定の時間が経過する前にコードが変更された場合には、上述した第１の実施の形態と同様の再発音処理を行う一方、上記所定の時間以上経過した後にコードが変更された場合には、発音しているコードの各構成音を消音して上記変更されたコードの構成音を再発音するリトリガー処理を行うようする。
【００６２】
このように、伴奏音であるコードを発音してから所定の時間が経過する前にコードが変更された場合における本実施の形態の電子楽器の処理は、上述した第１の実施の形態と同様であるので、上述した第１の実施の形態と同一部分については図１及び図２に付した符号と同一の符号を付して詳細な説明を省略する。
【００６３】
図４は、本実施の形態の楽音発生部（伴奏音発生部）の構成をより具体的に示したブロック図である。
図４において、伴奏音発生部８ｂ２は、伴奏用メモリ２０と、波形読み出し回路２１と、バッファ２３と、伴奏音信号生成回路３１と、カウンタ３３とを有している。なお、この伴奏音発生部８ｂ２は、図１に示した第１の実施の形態の伴奏音発生部８ｂに対応する。
【００６４】
伴奏音信号生成回路３１は、伴奏用デジタル楽音信号ＤＭＳをＤ／Ａ変換部９に出力してからの時間（コードを発音してからの時間）を、カウンタ３３に計数させるようにする。そして、コードを発音してから新しいコードが検出されるまでの時間が所定の時間以上であるときには、第１の実施の形態で説明した図３のステップＳ５からステップＳ８までの処理と同様の処理を行う。一方、上記所定の時間未満であるときには、上記リトリガー処理を行う。
【００６５】
なお、上記所定の時間は、発音中の音のゲートタイムの残り時間など、発音中の音の大きさに依存したパラメータを基準にして設定するようにする。例えば、コードを発音してから上記コードのゲートタイムの残りがある時間になるまでの時間を上記所定の時間として設定する。
【００６６】
次に、図５のフローチャートを参照しながら本実施の形態の楽音発生部８（伴奏音発生部８ｂ２）の動作の一例を説明する。なお、以下では、自動伴奏機能を実行する場合について説明する。
【００６７】
まず、最初のステップＳ２１において、波形読み出し回路２１と伴奏音信号生成回路３１は、所望の鍵情報と自動伴奏情報が入力されるまで待機し、入力されるとステップＳ２２に進み、波形読み出し回路２１は、所望の伴奏用楽音波形データＡＤを読み出して伴奏音信号生成回路３１に出力する。
【００６８】
次に、ステップＳ２３において、伴奏音信号生成回路３１は、上記伴奏用楽音波形データＡＤに対し、フィルタ処理やエンベロープ付与処理などを施してデジタル楽音信号ＤＭＳを生成して、バッファ２３に記憶する。
【００６９】
次に、ステップＳ２４において、伴奏音信号生成回路３１は、上記鍵情報に基づいて、コードが変更されたか否かを判定する。判定の結果、コードが変更されていない場合には、後述するステップＳ２５からステップＳ２９及びステップ３４の処理を省略してステップＳ３０に進む。
【００７０】
一方、コードが変更された場合には、ステップＳ２５に進み、伴奏音信号生成回路３１は、カウンタ３３の値を参照することにより、前回のコード出力（発音）から新しいコードが検出されるまでの時間が所定の時間以上であるか否かを判定する。
【００７１】
ステップＳ２５の判定の結果、所定の時間未満である場合には、図１に示したステップＳ５からステップＳ８までの処理と同様のステップＳ２６からステップＳ２９までの処理を行う。そして、ステップＳ３０において、伴奏音信号生成回路３１は、図１に示したステップＳ９の処理と同様にしてデジタル楽音信号ＤＭＳをＤ／Ａ変換部９に出力するとともに、カウンタ３３の計数を開始する。
【００７２】
一方、所定の時間以上である場合には、ステップＳ３４に進み、伴奏音信号生成回路３１は、発音中のコードを消音する上記リトリガー処理を行って上記ステップＳ３０に進む。
そして、ステップＳ３１において、伴奏音信号生成回路３１は、図３のステップＳ１０と同様にして消音指令を受け付けたか否かを判定する。この判定の結果、受け付けていない場合はステップＳ２１に戻る。
【００７３】
一方、受け付けた場合は、ステップＳ３２に進み、上記離鍵された鍵盤に対応するコードを消音する処理を行うとともに、上記消音したコードの構成音に関する情報をバッファ２３から消去する。そして、カウンタ３３をリセットする。
【００７４】
次に、ステップＳ３３において、自動伴奏が終了したか否かを判定し、演奏が終了していない場合は、ステップＳ２２の処理の戻り、自動伴奏が終了するまでステップＳ２１からステップＳ３４までの処理を繰り返す。
【００７５】
以上のように、本実施の形態では、伴奏音としてコードを発音してから新しいコードが検出されるまでの時間が所定の時間が経過する前においては、上述した第１の実施の形態と同様の発音処理を行う一方、上記所定の時間が経過した後においてはリトリガー処理を行うようにしたので、リトリガー処理を行って自動伴奏を行っても、アタック音が煩雑に発生してしまうことを防止することができる。
【００７６】
なお、本実施の形態では、伴奏音としてコードを発音してから新しいコードが検出されるまでの時間を、カウンタ３３を用いて計数するようにしたが、ハードウェアを用いずにソフトウェア処理による計測手段により時間を管理するようにしてもよい。
【００７７】
また、本実施の形態においても、伴奏音がコードの場合を例に挙げて説明したが、伴奏音が１音であってもよい。この場合は図５のステップＳ２６とステップＳ２８の処理を省略する。
【００７８】
（本発明の他の実施形態）
上述した実施形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、上記実施形態の機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータ（ＣＰＵあるいはＭＰＵ）に格納されたプログラムに従って上記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
【００７９】
また、この場合、上記ソフトウェアのプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコード自体、およびそのプログラムコードをコンピュータに供給するための手段、例えば、かかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【００８０】
また、コンピュータが供給されたプログラムコードを実行することにより、上述の実施形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているＯＳ（オペレーティングシステム）あるいは他のアプリケーションソフト等と共同して上述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
【００８１】
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって上述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
【００８２】
【発明の効果】
以上説明したように本発明によれば、発音中の伴奏音が変更された場合には、上記発音中の伴奏音を用いて上記変更された新たな伴奏音を発音させるようにしたので、発音している伴奏音を消音することなく変更後の伴奏音を発音することができる。これにより、伴奏音が変更された際に行われる再発音時にアタック音が煩雑に発生するのを可及的に防止し、滑らかな演奏を行うことができる。
【００８３】
また、本発明の他の特徴によれば、発音している和音を記憶媒体に記憶しておき、上記和音を変更することが指示された場合、上記変更が指示された新たな和音を構成する各音のうち、上記記憶媒体に記憶されている和音を構成する音と異なる音のみを生成するようにし、同じ音についてはそのまま発音を続行させるようにしたので、発音している和音を消音せずに変更後の新たな和音を発音することができる。また、発音制御を行う音数を可及的に少なくすることができる。したがって、自動伴奏における和音が連続的に変更されてもアタック音が煩雑に発生することを可及的に防止するとともに、上記自動伴奏における和音の変更を検出した時には変更された新たな和音による演奏を速やかに行うことができる。
【図面の簡単な説明】
【図１】本発明の実施の形態を示し、電子楽器の概略構成の一例を示すブロック図である。
【図２】本発明の第１の実施の形態を示し、楽音発生部の構成をより具体的に示したブロック図である。
【図３】本発明の実施の第１の形態を示し、楽音発生部の動作の一例を説明するフローチャートである。
【図４】本発明の第２の実施の形態を示し、楽音発生部の構成をより具体的に示したブロック図である。
【図５】本発明の実施の第２の形態を示し、楽音発生部の動作の一例を説明するフローチャートである。
【符号の説明】
１　電子楽器
６　キーボード部
７　操作パネル部
８　楽音発生部
２０　伴奏用波形メモリ
２１　波形読み出し回路
２２、３１　伴奏音信号生成回路
２３　バッファ
３３　カウンタ
【図１】
2004045528.tif 000003
【図２】
2004045528.tif 000004
【図３】
2004045528.tif 000005
【図４】
2004045528.tif 000006
【図５】
2004045528.tif 000007