JP3744667B2 - Automatic accompaniment device and automatic accompaniment method - Google Patents
Automatic accompaniment device and automatic accompaniment method Download PDFInfo
- Publication number
- JP3744667B2 JP3744667B2 JP36849997A JP36849997A JP3744667B2 JP 3744667 B2 JP3744667 B2 JP 3744667B2 JP 36849997 A JP36849997 A JP 36849997A JP 36849997 A JP36849997 A JP 36849997A JP 3744667 B2 JP3744667 B2 JP 3744667B2
- Authority
- JP
- Japan
- Prior art keywords
- accompaniment
- pattern
- data format
- input
- automatic
- 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
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、電子楽器等に用いて好適な自動伴奏装置および自動伴奏方法に関する。
【0002】
【従来の技術】
従来より、演奏すべき各音の音高や発音タイミング等を表わすデータから構成される伴奏パターンをメモリに記憶しておき、この内から選択した伴奏パターンをテンポクロックに同期して順次読み出して伴奏音を再生する自動伴奏装置が知られている。
この種の装置では、他機種と伴奏パターンの共用化を図るため、外部メモリ(例えば、ROMカードやディスク等)には汎用のデータ形式で各種の伴奏パターンを記録しておき、この内から選択した伴奏パターンを、装置内部で扱うデータ形式にパターン変換した後、内部メモリ(ワークRAM)にストアする態様としたものが多い。
【0003】
図24は、こうした態様の装置で用いる伴奏パターンのデータ形式の概要を示す図である。同図(イ)は、所謂、相対時間方式と呼ばれる汎用のデータ形式であり、伴奏パターンを形成する各音符について、その音高およびノートオン(発音)・ノートオフ(消音)を区別するイベントEVENTと、その間隔を表わすイベント間隔TDとが曲進行に応じた時系列のアドレス順に記憶される。
一方、同図(ロ)は、この相対時間方式によるデータ形式の伴奏パターンを、内部処理に都合の良いデータ形式にパターン変換したものであり、絶対時間方式と呼ばれる。絶対時間方式によるデータ形式では、基本的に、伴奏パターンを形成する各音符のノートオンのタイミングを楽曲開始時点からの経過時間で表わすイベント時刻IT、ノートオンを表わすイベントEVENTおよび音符長(ノートオン時間)を表わすゲート時間GTとが曲進行に応じた時系列のアドレス順に記憶される。
【0004】
【発明が解決しようとする課題】
ところで、上述した従来の自動伴奏装置では、外部メモリに記録される各種伴奏パターンの内から所望の伴奏パターンを選択すると、その選択された伴奏パターンを絶対時間方式のデータ形式にパターン変換して内部メモリ(ワークRAM)にストアする為、自動伴奏進行中に伴奏パターンを変更させると、このパターン変換を行う為の処理に時間が費やされてしまい、即座に伴奏パターンを変更させることができない、という問題がある。
【0005】
そこで本発明は、このような事情に鑑みてなされたもので、自動伴奏進行中でも即座に所望の伴奏パターンに変更することができる自動伴奏装置および自動伴奏方法を提供することを目的としている。
【0006】
【課題を解決するための手段】
上記目的を達成するため、請求項1に記載の自動伴奏装置では、伴奏番号を操作に応じて前後いずれか側に歩進させて指定する指定操作子を備え、この指定操作子により指定された伴奏番号Nに対応する第1のデータ形式の伴奏パターンを第2のデータ形式にパターン変換し、これに従って自動伴奏を進行させる伴奏手段と、この伴奏手段が進行させる自動伴奏のイベント間隔中に、前記伴奏番号Nの1つ前(N+1)および1つ後(N−1)の伴奏番号にそれぞれ対応する第1のデータ形式の伴奏パターンを第2のデータ形式に予めパターン変換しておく第1の変換手段と、前記伴奏番号Nを前後いずれか側に歩進させるよう前記指定操作子が変更操作された場合、この変更操作に対応して、前記第1の変換手段によって予めパターン変換された1つ前(N+1)および1つ後(N+1)の各伴奏番号に対応する第2のデータ形式の伴奏パターンのいずれかを選択し、選択した伴奏パターンに従った自動伴奏に変更するよう前記伴奏手段に指示する伴奏変更指示手段と、この伴奏変更指示手段により変更された自動伴奏のイベント間隔中に、前記変更操作に応じて指定された伴奏番号の1つ前および1つ後の伴奏番号にそれぞれ対応する第1のデータ形式の伴奏パターンを第2のデータ形式に予めパターン変換する第2の変換手段とを具備することを特徴とする。
【0007】
また、請求項2に記載の自動伴奏方法では、伴奏番号を前後いずれか側に歩進させて指定する指定操作子の操作に応じて指定された伴奏番号Nに対応した第1のデータ形式の伴奏パターンを第2のデータ形式にパターン変換し、これに従って自動伴奏を進行させる第1のステップと、この第1のステップにて進行する自動伴奏のイベント間隔中に、前記伴奏番号Nの1つ前(N+1)および1つ後(N−1)の伴奏番号にそれぞれ対応する第1のデータ形式の伴奏パターンを第2のデータ形式に予めパターン変換しておく第2のステップと、前記伴奏番号Nを前後いずれか側に歩進させるよう前記指定操作子が変更操作された場合、この変更操作に対応して、前記第2のステップにて予めパターン変換された1つ前(N+1)および1つ後(N+1)の各伴奏番号に対応する第2のデータ形式の伴奏パターンのいずれかを選択し、選択した伴奏パターンに従った自動伴奏に変更するよう指示する第3のステップと、この第3のステップにて変更された自動伴奏のイベント間隔中に、前記変更操作に応じて指定された伴奏番号の1つ前および1つ後の伴奏番号にそれぞれ対応する第1のデータ形式の伴奏パターンを第2のデータ形式に予めパターン変換する第4のステップとを具備することを特徴としている。
【0008】
請求項3に記載の自動伴奏装置では、上位桁値および下位桁値を入力して伴奏番号を指定する指定手段と、この指定手段によって指定された伴奏番号に対応する第1のデータ形式の伴奏パターンを第2のデータ形式にパターン変換し、これに従って自動伴奏を進行させる伴奏手段と、この伴奏手段が進行させる自動伴奏中に、上位桁値が入力された場合、この入力された上位桁値と下位桁値として入力され得る値とで指定可能な各伴奏番号にそれぞれ対応した第1のデータ形式の伴奏パターン群を、イベント間隔中にそれぞれ第2のデータ形式の伴奏パターン群に予めパターン変換しておく変換手段と、前記上位桁値の入力に続いて下位桁値が入力された場合、先に入力済みの上位桁値とこの入力された下位桁値とに応じて前記指定手段が指定する伴奏番号に対応した第2のデータ形式の伴奏パターンを、前記変換手段によってパターン変換された第2のデータ形式の伴奏パターン群の内から選択し、選択した第2のデータ形式の伴奏パターンに従った自動伴奏に変更する伴奏変更手段とを具備することを特徴とする。
【0009】
さらに、請求項4に記載の自動伴奏方法では、上位桁値および下位桁値を入力して伴奏番号を指定する第1のステップと、前記第1のステップによって指定された伴奏番号に対応する第1のデータ形式の伴奏パターンを第2のデータ形式にパターン変換し、これに従って自動伴奏を進行させる第2のステップと、この第2のステップにて進行する自動伴奏中に、上位桁値が入力された場合、この入力された上位桁値と下位桁値として入力され得る値とで指定可能な各伴奏番号にそれぞれ対応した第1のデータ形式の伴奏パターン群を、イベント間隔中にそれぞれ第2のデータ形式の伴奏パターン群に予めパターン変換しておく第3のステップと、前記上位桁値の入力に続いて下位桁値が入力された場合、先に入力済みの上位桁値とこの入力された下位桁値とに応じて前記第1のステップが指定する伴奏番号に対応した第2のデータ形式の伴奏パターンを、前記第3のステップにて予めパターン変換しておいた第2のデータ形式の伴奏パターン群の内から選択し、選択した伴奏パターンに従った自動伴奏に変更する第4のステップとを具備することを特徴とする。
【0010】
本発明では、操作に応じて伴奏番号を前後いずれか側に歩進させて指定する指定操作子を備えるものにあっては、指定された伴奏番号の伴奏パターンと共に、1つ先あるいは1つ後の伴奏番号の伴奏パターンも併せて第2のデータ形式に予めパターン変換しておく為、即座に対応する伴奏パターンに変更し得る。
また、上位桁値および下位桁値を入力して伴奏番号を指定する指定手段を備えるものにあっては、上位桁値が入力されると、この上位桁値と下位桁値として入力され得る値(0〜9)とで指定可能な各伴奏番号の伴奏パターン群を変更候補と見做して予め第2のデータ形式にパターン変換しておき、下位桁値が入力されたら、先に入力された上位桁値とこの入力された下位桁値とで指定される伴奏番号の伴奏パターンを、この変更候補の内から選択するので、即座に対応する伴奏パターンに変更し得る。
【0011】
【発明の実施の形態】
本発明による自動伴奏装置は、周知の電子楽器はもとより、パーソナルコンピュータを用いたDTM(デスク・トップ・ミュージック)装置等に適用され得る。以下では、本発明の実施の形態である電子楽器を実施例として図面を参照して説明する。
【0012】
A.第1実施例
(1)構成
図1は、本発明の第1実施例による自動伴奏装置が適用された電子楽器の全体構成を示すブロック図である。この図において、1は押離鍵操作に応じたキーオン/キーオフ信号、キーナンバ、ベロシティ等からなる演奏情報を発生する鍵盤である。
2はコンソールパネル上に配設される表示部2aおよびパネルスイッチ部2bからなるパネル部である。表示部2aはLCDパネル等の表示デバイスから構成され、後述するCPU3から供給される表示制御信号に従い、楽器各部の動作状態や設定状態(例えば、伴奏パターン番号など)を表示する。パネルスイッチ部2bは、例えば、電源をオンオフする電源スイッチや音色を選択する音色スイッチの他、自動伴奏の開始・停止を指示するスタート/ストップスイッチあるいは伴奏パターンを選択するパターン選択スイッチ等を備える。
【0013】
ここで、図2を参照して自動伴奏装置にかかわるパネル部2の一例について説明しておく。この図において、2a−1は伴奏パターン番号表示パネルであり、パターン選択スイッチ2b−1の操作に応じて指定される伴奏パターンの番号が数値表示される。パターン選択スイッチ2b−1は、アップスイッチUPおよびダウンスイッチDNからなり、これらスイッチUP,DNの押下操作に応じて伴奏パターン番号を前後に歩進指定する。
【0014】
CPU3は、鍵盤1が発生する演奏情報やパネルスイッチ部2bが発生する各種スイッチイベント信号に応じて楽器各部を制御する。なお、CPU3が具現する、本発明の要旨にかかわる特徴的な処理動作については追って詳述する。4はCPU3の指示の下に、内部クロック信号を分周して所定のテンポクロックを生成するテンポクロック発生回路である。この回路4が出力するテンポクロックを用いてCPU3は自動伴奏時の演奏テンポを制御する。
5はCPU3にロードされる各種制御プログラムを記憶するROMである。6はCPU3のワークエリアとして用いられるRAMであり、各種レジスタ・フラグデータが一時記憶される他、パターン変換(後述する)された伴奏パターンデータを格納する伴奏パターン記憶エリアも備える。
【0015】
7は周知の波形メモリ読み出し方式により構成され、ポリフォニック発音する音源である。この音源7は、通常音源7aと伴奏音源7bとを備える。通常音源7aではCPU3の制御の下に、波形メモリから読み出される指定音色の波形データを演奏情報に応じて修飾してなる楽音波形を出力する。一方、伴奏音源7bでは、RAM6の伴奏パターン記憶エリアに格納される伴奏パターンデータを、指定テンポに同期して順次読み出して伴奏音を合成する。8は、音源7の出力をアナログ形式の楽音信号にD/A変換した後、それを増幅してスピーカより放音させるサウンドシステムである。
【0016】
9は、例えば、複数種の伴奏パターンを記憶したROMカードを記憶媒体とする外部記憶装置である。このROMカードに記憶される伴奏パターンデータは、図3に示すように、従来と同様、伴奏パターンを構成する各音符について、その音高およびノートオン(発音)・ノートオフ(消音)を区別するイベントEVENTと、その間隔を表わすイベント間隔TDとを曲進行に応じた時系列のアドレス順に記憶した相対時間方式のデータ形式にて形成されている。
そして、前述したパターン選択スイッチ2b−1を構成するアップスイッチUPおよびダウンスイッチDNの押下操作に応じて、CPU3の制御の下に、外部記憶装置9を介してROMカードから指定して読み出される伴奏パターンデータは、図4に示すように、伴奏パターンを形成する各音符のノートオンのタイミングを楽曲開始時点からの経過時間で表わすイベント時刻IT、ノートオンを表わすイベントEVENTおよび音符長(ノートオン時間)を表わすゲート時間GTとを曲進行に応じた時系列のアドレス順に記憶した絶対時間方式にパターン変換された後、前述したRAM6の伴奏パターン記憶エリアに格納されるようになっている。
【0017】
上記構成による第1実施例では、パターン選択スイッチ2b−1を構成するアップスイッチUPおよびダウンスイッチDNの押下操作によって伴奏パターン番号を指定する毎に、その指定された番号の伴奏パターンと共に、1つ先の番号あるいは1つ後の番号の伴奏パターンをも併せてパターン変換してRAM6の伴奏パターン記憶エリアに格納しておくことに特徴がある。
つまり、パターン選択スイッチ2b−1を用いて伴奏パターン番号を選択する場合、アップスイッチUPおよびダウンスイッチDNの押下操作により、高々、前後1つしか歩進し得ない。したがって、ある番号の伴奏パターンを選択したら、イベント間隔中に、その番号の前後の伴奏パターンについても予めパターン変換してRAM6の伴奏パターン記憶エリアに格納しておく。これにより、自動伴奏進行中において、アップスイッチUPおよびダウンスイッチDNの押下操作により伴奏パターンの変更が指示されても、即座にその変更に追従して伴奏パターンを切り替え可能とする。
【0018】
(2)動作
次に、図5〜図12を参照し、上述した特徴を具現する第1実施例の動作について説明する。ここでは、最初に概略としてメインルーチンの動作について述べた後、このメインルーチンからコールされるスイッチ処理ルーチン、伴奏番号変更処理ルーチンおよび伴奏処理ルーチンについて順次説明して行く。
【0019】
▲1▼メインルーチンの動作
まず、本実施例に電源が投入されると、CPU3はROM5から所定の制御プログラムをロードし、図5に示すメインルーチンを実行してステップSA1に処理を進める。ステップSA1では、RAM6に設けられる各種レジスタやフラグ類をリセットしたり、音源7に対して各種レジスタ・フラグを初期化するよう指示するイニシャライズを実行する。
そして、イニシャライズ完了後、CPU3はステップSA2に処理を進め、鍵盤1の押離鍵操作に応じた演奏情報を生成する鍵盤処理を行い、続くステップSA3ではパネルスイッチ部2bのスイッチ操作に対応したスイッチ処理を行う。このスイッチ処理では、例えば、スタート/ストップスイッチの操作に応じて自動伴奏の開始・停止を指示したり、パターン選択スイッチ2b−1の操作に応じて伴奏パターン番号を変更するなどの処理を実行する。
【0020】
次いで、ステップSA4では、上記スイッチ処理にて設定された動作状態あるいは設定状態を表示部2aに表示する表示処理を行い、続くステップSA5では指定された伴奏パターンを順次読み出す自動伴奏処理を行う。次に、ステップSA6では、鍵盤処理にて生成された演奏情報に基づき楽音の発音/消音および自動伴奏処理にて読み出された伴奏パターンデータに基づく伴奏音の発音/消音を音源7に指示する発音処理を行い、続いて、ステップSA7では、発音処理にて生成された楽音や伴奏音に効果付与する等の、その他の処理を実行した後、上記ステップSA2に処理を戻し、以後、装置電源がオフされる迄、ステップSA2〜SA7を繰り返す。
【0021】
▲2▼スイッチ処理ルーチンの動作
次に、図6を参照してスイッチ処理ルーチンの動作について説明する。上述したメインルーチンのステップSA3を介して本ルーチンが実行されると、CPU3は図6に示すステップSB1に処理を進め、スイッチイベントの有無を判別する。ここで、スイッチ操作が行われなければ、スイッチイベントは発生せず、何も処理せずに本ルーチンを完了させるが、スイッチ操作された時にはそのスイッチイベントに対応した処理を判別して実行する。
すなわち、スタート/ストップスイッチの操作により自動伴奏の開始を指示した時には、ステップSB2の判断結果が「YES」となり、ステップSB3に進み、伴奏スタート処理を実行して自動伴奏を開始させ、一方、スタート/ストップスイッチの操作により自動伴奏の停止を指示した時には、ステップSB4の判断結果が「YES」となり、ステップSB5に進み、伴奏ストップ処理を実行して自動伴奏を停止させる。また、前述したパターン選択スイッチ2b−1のアップスイッチUPあるいはダウンスイッチDNのいずれかが押下操作された時には、ステップSB7に処理を進めて後述する伴奏番号変更処理を行う。なお、これ以外のスイッチが操作された時には、ステップSB8に処理を進め、その他のスイッチ処理を実行する。
【0022】
▲3▼伴奏番号変更処理ルーチンの動作
パターン選択スイッチ2b−1の操作に対応して上記スイッチ処理ルーチンのステップSB7を経て本ルーチンが実行されると、CPU3は図7に示すステップSC1に処理を進め、アップスイッチUPあるいはダウンスイッチDNのいずれかが押下操作されたかを判断する。
アップスイッチUPが押下操作された時には、上記ステップSC1の判断結果が「YES」となり、次のステップSC2に処理を進め、レジスタACPNに格納される伴奏パターン番号を1インクリメントし、続くステップSC3ではVALUEUPイベントフラグをセットする。
【0023】
一方、ダウンスイッチDNが押下操作された時には、上記ステップSC1の判断結果が「NO」となり、ステップSC4に処理を進め、レジスタACPNに格納される伴奏パターン番号を1デクリメントし、続くステップSC5ではVALUEDOWNイベントフラグをセットする。
なお、上記VALUEUP/VALUEDOWNイベントフラグとは、アップスイッチUP/ダウンスイッチDNの押下操作が新規になされたことを示すフラグである。
【0024】
アップスイッチUP/ダウンスイッチDNの押下操作に応じてレジスタACPNの値およびVALUEUP/VALUEDOWNイベントフラグが更新されると、CPU3は図8に示すステップSC6に処理を進め、UPPER変換中フラグもしくはLOWER変換中フラグのいずれかがセットされているかどうかを判断する。
このUPPER変換中フラグ(あるいはLOWER変換中フラグ)とは、現在進行中にある伴奏パターン番号に+1(あるいは−1)したパターン番号の伴奏パターンがパターン変換中の時にセットされるフラグである。
そして、パターン変換中であると、ここでの判断結果が「YES」となり、次のステップSC7に処理を進め、最後までパターン変換させた後、RAM6の伴奏パターン記憶エリアにストアし、続くステップSC8ではパターン変換の終了に伴い、UPPER変換中フラグ(あるいはLOWER変換中フラグ)をクリアして次のステップSC9に処理を進める。
一方、上記ステップSC6の判断結果が「NO」の場合、つまり、パターン変換中でない時には、ステップSC9に処理を進める。
【0025】
ステップSC9に進むと、CPU3は対応する伴奏パターンデータに演奏ポインタを移す。すなわち、これについて図9を参照して具体的に説明する。例えば、「パターン17」にて自動伴奏進行している時、イベント間隔中に、この「パターン17」の前後の「パターン16」および「パターン18」の各伴奏パターンがそれぞれパターン変換され、そして、アップスイッチUPが押下操作された時には演奏ポインタを「パターン18」へ、ダウンスイッチDNが押下操作された時には演奏ポインタを「パターン16」へ移す。
こうして、アップスイッチUP/ダウンスイッチDNの押下操作に対応して演奏ポインタを移すと、CPU3は次のステップSC10に処理を進め、今まで演奏していた伴奏パターンのイベント時刻に対応するデータ位置を、新たに変更された伴奏パターン中でサーチし、続くステップSC11では変更された伴奏パターン中でサーチしたデータ位置から自動伴奏をリスタートするよう指示する。
【0026】
▲4▼伴奏処理ルーチンの動作
次に、図10〜図12を参照して伴奏処理ルーチンの動作について説明する。なお、以下では、図12に図示する一例のように、伴奏パターンを変更すべくパターン選択スイッチ2b−1(アップスイッチUPおよびダウンスイッチDN)が押下操作されたものと想定して動作説明して行く。
まず、例えば、自動伴奏をスタートさせる以前に、伴奏パターン「17」を選択すると、CPU3は外部記憶装置9を介してROMカードからこの伴奏パターン「17」とこれに前後する伴奏パターン「16」および「18」の各データを読み出し、それぞれ絶対時間形式にパターン変換してRAM6の伴奏パターン記憶エリアに格納する。そして、自動伴奏をスタートさせ、この後にメインルーチンのステップSA5を介して本ルーチンが実行されると、CPU3は図10に示すステップSD1に処理を進める。
【0027】
(イ)アップスイッチUPを押下操作した場合
ステップSD1では、VALUEUPイベントフラグがセットされているか否か、つまり、伴奏パターン番号を「+1」するようアップスイッチUPが押下操作された状態であるかどうかを判断する。ここで、例えば、図12に図示するように、伴奏パターン「17」による自動伴奏が1小節半進行した時点で、アップスイッチUPが押下操作されたとする。そうすると、このステップSD1の判断結果は「YES」となり、次のステップSD2に処理を進め、UPPER変換中フラグをセットし、続くステップSD3ではVALUEUPイベントフラグをクリアする。
【0028】
そして、この後、図11に示すステップSD7に処理を進め、処理すべき伴奏イベントがあるか否かを判断する。ここで、処理すべきイベントがあれば、判断結果は「YES」となり、次のステップSD8に進み、そのイベントに対応する処理を実行した後、一旦、本ルーチンを完了させるが、処理すべきイベントが無い場合、すなわち、イベント間隔中にあると、上記ステップSD7の判断結果が「NO」となり、ステップSD9に処理を進める。
ステップSD9では、UPPER変換中フラグがセットされているか否か、つまり、アップスイッチUPが押下操作された状態下であるかどうかを判断する。この場合、アップスイッチUPが押下操作されているので、判断結果が「YES」となり、ステップSD10に処理を進める。ステップSD10では、レジスタACPNにストアされる伴奏パターン番号に「+1」した番号、つまり、伴奏パターン「19」の伴奏パターンデータを所定量(一部データ)読み出してパターン変換を施し、伴奏パターン記憶エリアにストアする。
【0029】
そして、ステップSD11では、書き込みポインタを更新し、続くステップSD12では、この伴奏パターン「19」の全データについてパターン変換後の格納が完了したか否かを判断し、未完状態であれば、判断結果が「NO」となり、一旦、本ルーチンを完了させるが、そうでなければ、判断結果が「YES」となり、次のステップSD13に処理を進め、UPPER変換中フラグをクリアする。
このように、伴奏パターン「17」にて自動伴奏が進行している最中に、アップスイッチUPが押下操作されると、この伴奏パターン「17」と共に予めパターン変換しておいた伴奏パターン「18」に即座に変更でき、この変更した伴奏パターン「18」による自動伴奏がイベント間隔のタイミングになった時に、更に次の伴奏パターン「19」のデータを予めパターン変換して伴奏パターン記憶エリアにストアしておき、次のアップスイッチUPの押下操作に対応できるように準備する。
【0030】
(ロ)ダウンスイッチDNを押下操作した場合
さて一方、ダウンスイッチDNが押下操作された場合には、上述したステップSD1の判断結果が「NO」となり、ステップSD4に処理を進める。ステップSD4では、VALUEDOWNイベントフラグがセットされているか否か、つまり、伴奏パターンを変更するようダウンスイッチDNが押下操作された状態であるかどうかを判断する。
ここで、例えば、図12に図示するように、伴奏パターン「18」による自動伴奏が1小節進行した時点で、ダウンスイッチDNが押下操作されると、このステップSD4の判断結果が「YES」となり、ステップSD5に処理を進め、LOWER変換中フラグをセットし、続くステップSD6ではVALUEDOWNイベントフラグをクリアする。
【0031】
そして、この後、CPU3はステップSD7に処理を進め、処理すべき伴奏イベントがあるか否かを判断し、処理すべきイベントがある時には判断結果が「YES」となり、次のステップSD8にてそのイベントに対応する処理を実行させる。
一方、イベント間隔中になり、処理すべきイベントが無くなると、判断結果が「NO」となり、ステップSD9を介してステップSD14に処理を進める。ステップSD14では、LOWER変換中フラグがセットされているか否か、つまり、ダウンスイッチDNが押下操作された状態下であるかどうかを判断する。この場合、ダウンスイッチUPが押下操作されているので、判断結果が「YES」となり、ステップSD15に処理を進め、レジスタACPNにストアされる伴奏パターン番号を「−1」した番号、つまり、伴奏パターン「16」の伴奏パターンデータを所定量(一部データ)読み出してパターン変換を施し、伴奏パターン記憶エリアにストアする。
【0032】
この後、ステップSD11〜SD12を経て、書き込みポインタを更新し、この伴奏パターン「16」の全データについてパターン変換後の格納が完了したか否かを判断し、未完状態であれば、一旦、本ルーチンを完了させるが、そうでなければ、LOWER変換中フラグをクリアする。
このように、ある番号の伴奏パターンにて自動伴奏進行中に、ダウンスイッチDNが押下操作されると、先にパターン変換しておいた一つ下の番号の伴奏パターンに変更する一方、この変更した伴奏パターンによる自動伴奏がイベント間隔のタイミングになった時に、更に一つ下の伴奏パターンのデータを予めパターン変換しておくようになっているので、ダウンスイッチDNの押下操作に応じて即座に1つ下のパターン番号の伴奏に変更し得る訳である。
【0033】
B.第2実施例
(1)第1実施例との相違点
上述した第1実施例では、パターン選択スイッチ2b−1を構成するアップスイッチUPおよびダウンスイッチDNの押下操作によって伴奏パターン番号を前後に歩進指定する毎に、その指定された番号の伴奏パターンと共に、1つ先の番号あるいは1つ後の番号の伴奏パターンをも併せてパターン変換するのに対し、第2実施例では、図13に図示するように、テンキー2b−2にて上位桁が入力された段階で、その上位桁に対応した下位桁(0〜9)の各伴奏パターンを変更候補と見做して順次パターン変換するようにした点で相違する。
【0034】
(2)第2実施例の動作
次に、上述した相違点を具現する動作として、図14〜図17を参照し、第2実施例による伴奏番号変更処理ルーチンおよび伴奏処理ルーチンについて説明する。
▲1▼伴奏番号変更処理ルーチンの動作
テンキー2b−2の入力操作に応じて、上述した第1実施例と同様に、スイッチ処理ルーチンを介して伴奏番号変更処理ルーチンが実行されると、CPU3は図14に示すステップSE1に処理を進め、下位桁入力待ちフラグがセットされているか否かを判断する。
下位桁入力待ちフラグとは、テンキー2b−2によって上位桁の入力が完了し、下位桁入力待ちとなっている状態の時にセットされるものである。したがって、この下位桁入力待ちフラグがセットされていない時には、判断結果が「NO」となり、この場合、テンキー2b−2によって上位桁の入力が行われたと見做してステップSE2に処理を進め、下位桁入力待ちフラグをセットする。続いて、ステップSE3では、下位桁0〜9に対応する全10ビット長の変換指示フラグをセットし、この後、一旦、本ルーチンを完了させる。
【0035】
そして、次のテンキー入力(下位桁の入力)操作に対応して本ルーチンが実行されて再びステップSE1に処理を進めると、この時、上位桁の入力が完了して下位桁入力待ちとなっているので、判断結果は「YES」となり、ステップSE4に処理を進める。ステップSE4では、下位桁入力待ちフラグをクリアし、続くステップSE5では、テンキー入力された上位桁および下位桁からなる伴奏パターン番号を確定してレジスタACPNにセットする。
次いで、ステップSE6では、この確定した伴奏パターン番号の伴奏パターンデータがパターン変換済みであるか否かを、変換指示フラグのセット有無に基づきチェックする。
ここで、変換済みとなっていない時には、判断結果が「NO」となり、ステップSE7に処理を進めて、その伴奏パターンデータを最後までパターン変換してから伴奏パターン記憶エリアにストアした後、ステップSE8に処理を進めるが、変換済みの場合には上記ステップSE6の判断結果は「YES」となり、ステップSE8に処理を進める。
【0036】
ステップSE8では、下位桁(0〜9)に対応した全ての変換指示フラグをクリアし、続くステップSE9では、確定したパターン番号以外のパターン変換後の伴奏パターンデータが不要となったことに対応してそれらを伴奏パターン記憶エリアから破棄(消去)する。そして、ステップSE10に進むと、CPU3はレジスタACPNに格納されるパターン番号に対応する伴奏パターンデータに演奏ポインタを移す。次いで、ステップSE11では、今まで演奏していた伴奏パターンのイベント時刻に対応するデータ位置を、変更した伴奏パターン中でサーチし、続くステップSC11ではサーチした伴奏パターン中のデータから自動伴奏の演奏を再開するよう指示する。
【0037】
▲2▼伴奏処理ルーチンの動作
次に、図15〜図16を参照して第2実施例による伴奏処理ルーチンの動作について説明する。なお、以下では、図16に図示する一例のように、伴奏パターンを変更すべくテンキー2b−2が操作されたものとして動作説明して行く。
まず、図16に示すように、伴奏パターン番号「17」にて自動伴奏が進行している時に、前述した第1実施例と同様、メインルーチンを介して本ルーチンが実行されると、CPU3は図15に示すステップSF1に処理を進める。ステップSF1では、処理すべき伴奏イベントがあるか否かを判断する。ここで、処理すべきイベントがあれば、判断結果は「YES」となり、次のステップSF2に進み、そのイベントに対応する処理を実行した後、一旦、本ルーチンを完了させるが、処理すべきイベントが無い場合、すなわち、次のイベント迄のイベント間隔中であると、上記ステップSF1の判断結果が「NO」となり、ステップSF3に処理を進める。
【0038】
そして、例えば、図16に示すように、伴奏パターン番号「17」にて自動伴奏が進行している最中に、タイミングT1時点でテンキー2b−2にて上位桁「5」が入力されたとする。そうすると、変換指示フラグがセットされる為、この変換指示フラグのクリアの有無を判断するステップSF3の判断結果が「NO」となり、ステップSF4に処理を進める。
ステップSF4では、イベント間隔中に、テンキー入力された上位桁と、クリアされていない変換指示フラグに対応する下位桁とで指定される2桁の番号を持つ伴奏パターン番号の伴奏パターンデータを所定量(一部データ)読み出してパターン変換を施し、伴奏パターン記憶エリアにストアする。つまり、図16に示す一例の場合、タイミングT1時点で上位桁「5」がテンキー入力され、その時点で伴奏パターン番号「50」〜「59」がパターン変更の候補に挙げられ、これらがイベント間隔中に順次パターン変換されて行く。
次いで、ステップSF5では、書き込みポインタを更新し、続くステップSF6では、パターン変換後の格納が完了したか否かを判断し、未完状態であれば、判断結果が「NO」となり、一旦、本ルーチンを完了させるが、そうでなければ、判断結果が「YES」となり、次のステップSF7に処理を進め、下位桁に対応する変換指示フラグをクリアする。
【0039】
したがって、上位桁「5」のテンキー入力に応じてパターン番号「50」〜「59」がイベント間隔中に順次パターン変換されて行く過程で、図16に示すように、タイミングT2時点で下位桁「1」がテンキー入力された場合には、前述した伴奏番号変更処理ルーチン(図14参照)のステップSE6〜SE12を経て即座に、伴奏パターン番号「51」の伴奏パターンデータに変更して自動伴奏を進めることが可能になる。
なお、パターン変更がなされると、前述のステップSE8にて全ての変換指示フラグがクリアされるので、イベント間隔中にステップSF3に処理を進めた場合、ここでの判断結果が「YES」となり、何も処理せずに伴奏処理ルーチンを一旦、完了させる。
【0040】
以上のように、第2実施例によれば、上位桁がテンキー入力されたら、この上位桁と下位桁(0〜9)とに対応する番号の伴奏パターンデータをイベント間隔中に順次所定データ量分をパターン変換して行き、下位桁がテンキー入力されて変更すべき伴奏パターン番号が確定したら、即座にその番号の伴奏パターンに基づいた自動伴奏に変更し得るようになっている。
また、変更すべき伴奏パターン番号が確定した時点で、確定した伴奏パターン番号以外の一部変換済みの伴奏パターンデータを伴奏パターン記憶エリアから消去するようにしたので、当該伴奏パターン記憶エリアの占有容量を少なくすることもできる。
なお、この第2実施例において、伴奏パターン番号「0」〜「9」を選択する際には、上位桁を「0」としてテンキー入力すれば、下位桁に入力し得る数値0〜9に対応する伴奏パターン番号「0」〜「9」が変更候補として順次パターン変換されるようになる。
【0041】
C.第1変形例
(1)第2実施例との相違点
上述した第2実施例では、下位桁のテンキー入力に応じて変更すべき伴奏パターン番号が確定したら、即座にその番号の伴奏パターンに基づいた自動伴奏に変更するのに対し、この第1変形例では下位桁をテンキー入力して変更すべき伴奏パターン番号を確定させたら、その確定した伴奏パターン番号について残りの伴奏パターンデータを全てパターン変換し、その時点で進行している伴奏フレーズの終わり(4小節目)を待って新たな伴奏フレーズからパターン変更する点で相違している。
【0042】
(2)第1変形例の動作
次に、上述した相違点を具現する動作として、第1変形例による伴奏番号変更処理ルーチンおよび伴奏処理ルーチンについて図17〜図20を参照して説明する。
▲1▼伴奏番号変更処理ルーチンの動作
上述の第2実施例と同様に、テンキー2b−2の入力操作がなされると、スイッチ処理ルーチンを介して図17に示す伴奏番号変更処理ルーチンが実行され、CPU3はステップSG1に処理を進め、下位桁入力待ちフラグがセットされているか否かを判断する。
下位桁入力待ちフラグがセットされていない時には、ここでの判断結果が「NO」となり、この場合、テンキー2b−2によって上位桁の入力が行われたと見做してステップSG2に処理を進め、下位桁入力待ちフラグをセットする。続いて、ステップSG3では、下位桁0〜9に対応する全10ビット長の変換指示フラグをセットし、この後、一旦、本ルーチンを完了させる。
【0043】
そして、テンキー入力(下位桁の入力)操作に応じて再び本ルーチンが実行されて、ステップSG1に処理を進めると、この時、既に上位桁の入力が完了して下位桁入力待ちとなっているので、判断結果は「YES」となり、ステップSG4に処理を進める。
ステップSG4では、下位桁入力待ちフラグをクリアし、続くステップSG5では、テンキー入力された上位桁および下位桁からなるパターン番号を確定し、この伴奏パターン番号をレジスタACPNにセットする。次いで、ステップSG6では、この確定したパターン番号の伴奏パターンデータがパターン変換済みであるか否かを、変換指示フラグのセット有無に基づきチェックする。
【0044】
ここで、変換済みとなっていない時には、判断結果が「NO」となり、ステップSG7に処理を進めて、この確定した伴奏パターンデータを最後までパターン変換してから伴奏パターン記憶エリアにストアしてからステップSG8に処理を進めるが、変換済みの場合には上記ステップSG6の判断結果が「YES」となり、ステップSG8に処理を進める。
ステップSG8に進むと、CPU3は、下位桁(0〜9)に対応した全ての変換指示フラグをクリアし、続くステップSG9では、確定したパターン番号以外のパターン変換後の伴奏パターンデータが不要となったことに対応してそれらを伴奏パターン記憶エリアから破棄(消去)する。そして、ステップSG10では、伴奏番号変更フラグをセットして本ルーチンを完了させる。
【0045】
▲2▼伴奏処理ルーチンの動作
次に、図18〜図20を参照して第1変形例による伴奏処理ルーチンの動作について説明する。なお、以下では、図20に図示する一例のように、伴奏パターンを変更すべくテンキー2b−2が操作されたものとして動作説明して行く。
まず、図20に示すように、伴奏パターン番号「17」にて自動伴奏が進行している時に、前述した第2実施例と同様に、メインルーチンを介して本ルーチンが実行されると、CPU3は図18に示すステップSH1に処理を進め、伴奏番号変更フラグがセットされているか否か、つまり、テンキー入力にされた伴奏パターン番号の伴奏パターンに変更し得る状態に設定されているかどうかを判断する。
ここで、テンキー入力が行われていない時には、伴奏番号変更フラグはセットされていないから、判断結果は「NO」となり、図19に示すステップSH2に処理を進め、処理すべき伴奏イベントの有無について判断する。そして、処理すべき伴奏イベントがあれば、判断結果が「YES」となり、次のステップSH3にてそのイベントの処理を実行して一旦、本ルーチンを完了させる。
【0046】
さて、図20に図示するように、伴奏パターン番号「17」に基づいて自動伴奏が進行している時に、タイミングT1時点で伴奏パターン番号の上位桁「5」がテンキー入力され、そして、この時、イベント間隔中であると、上述したステップSH2の判断結果が「NO」となり、ステップSH4に処理を進める。
ステップSH4では、前述した変換指示フラグが全てクリアされているか、つまり、テンキー入力により変更すべき伴奏パターン番号が確定したかどうかを判断する。そして、図20に図示するタイミングT1時点では、上位桁「5」のテンキー入力しか行われていないので、全ての変換指示フラグがセットされており、これ故、判断結果は「NO」となり、ステップSH5に処理を進める。
【0047】
ステップSH5では、イベント間隔中に、テンキー入力された上位桁と、クリアされていない変換指示フラグに対応する下位桁とで指定される2桁の番号を持つ伴奏パターン番号の伴奏パターンデータを所定量(一部データ)読み出してパターン変換を施し、伴奏パターン記憶エリアにストアする。
つまり、図20に示す一例の場合、タイミングT1時点で上位桁「5」がテンキー入力され、その時点でパターン番号「50」〜「59」がパターン変更の候補に挙げられ、これらの一部がイベント間隔中に順次パターン変換されて行く。次いで、ステップSH6では、書き込みポインタを更新し、続くステップSH7では、パターン変換後の格納が完了したか否かを判断し、未完状態であれば、判断結果が「NO」となり、一旦、本ルーチンを完了させるが、そうでなければ、判断結果が「YES」となり、次のステップSH8に処理を進め、下位桁に対応する変換指示フラグをクリアする。
【0048】
そして、図20に示すイミングT2時点で下位桁「1」がテンキー入力されると、前述した伴奏番号変更処理ルーチンのステップSG4〜SG10を経て変換指示フラグがクリアされ、かつ、伴奏番号変更フラグがセットされる為、上記ステップSH4の判断結果が「YES」となり、ステップSH9に処理を進める。ステップSH9では、伴奏番号変更フラグがセットされているか否かを判断し、この場合、伴奏番号変更フラグがセットされているから、判断結果が「YES」となり、次のステップSH10に進む。ステップSH10では、レジスタACPNに格納される伴奏パターン番号の伴奏パターンデータが全てパターン変換されたか否かを判断する。ここで、全てパターン変換し終えていれば、判断結果は「YES」となり、本ルーチンを完了させるが、未完であると、判断結果が「NO」となり、ステップSH11に処理を進める。
【0049】
次いで、ステップSH11では、レジスタACPNに格納される伴奏パターン番号の伴奏パターンデータについて、パターン変換が完了していない残りのデータを全てパターン変換して伴奏パターン記憶エリアにストアし、続くステップSH12ではこれに応じて書き込みポインタを更新させ、この後、一旦、本ルーチンを完了させる。
こうして、テンキー入力された伴奏パターン番号の伴奏パターンデータが全てパターン変換されて伴奏パターン記憶エリアにストアし終えた状況下において、再び本ルーチンが実行されてステップSH1(図18)に処理が進むと、伴奏番号変更フラグがセットされているので、このステップSH1の判断結果は「YES」となり、ステップSH13に進む。
【0050】
ステップSH13では、下位桁がテンキー入力された時点で進行中の伴奏パターンが4小節経過したか否かを判断し、経過しているならば、判断結果が「YES」となり、次のステップSH14に処理を進め、伴奏番号変更フラグをクリアする。
次に、ステップSH15では、レジスタACPNに格納される伴奏パターン番号の伴奏パターンデータの先頭に演奏ポインタをセットし、続くステップSH16では、この伴奏パターンデータの先頭から演奏再開を指示する。この結果、下位桁がテンキー入力された時点で進行中の伴奏フレーズの終わり(4小節目)を待って、新たな伴奏フレーズからテンキー入力された伴奏パターン番号の伴奏パターンに変更される。
このように、第1変形例では、上位桁がテンキー入力されたら、この上位桁と下位桁(0〜9)とに対応する番号の伴奏パターンデータをイベント間隔中に順次所定データ量分をパターン変換して行き、下位桁をテンキー入力して変更すべき伴奏パターン番号を確定させたら、その確定した伴奏パターン番号について残りの伴奏パターンデータを全てパターン変換するので、伴奏パターン記憶エリアの占有容量を節約することが可能になる。
【0051】
D.第2変形例
次に、図21〜図23を参照して第2変形例について説明する。上述した第1変形例では、図20に図示したように、下位桁をテンキー入力して変更すべき伴奏パターン番号を確定させたら、その確定した伴奏パターン番号について残りの伴奏パターンデータを全てパターン変換し、その時点で進行している伴奏フレーズの終わり(4小節目)を待って新たな伴奏フレーズからパターン変更する。
これに対し、第2変形例では下位桁をテンキー入力して変更すべき伴奏パターン番号が確定したら、その時点で進行している伴奏フレーズの終わり(4小節目)を待って新たな伴奏フレーズからパターン変更すると共に、その確定した伴奏パターン番号についてパターン変換されていない残りの伴奏パターンデータをパターン変換するようにしている。
以下、こうした第2変形例を具現する伴奏処理ルーチンの動作について図21〜図23を参照して説明する。なお、次に述べる動作説明では、図23に図示する一例のように、伴奏パターンを変更すべくテンキー2b−2が操作されたものと想定している。
【0052】
さて、図23に示すように、伴奏パターン番号「17」にて自動伴奏が進行している時に、メインルーチンを介して本ルーチンが実行されると、CPU3は図21に示すステップSJ1に処理を進め、伴奏番号変更フラグがセットされているか否か、つまり、テンキー入力にされた伴奏パターン番号の伴奏パターンに変更し得る状態に設定されているかどうかを判断する。
ここで、テンキー入力が行われていない時には、伴奏番号変更フラグはセットされていないから、判断結果は「NO」となり、図22に示すステップSJ2に処理を進め、処理すべき伴奏イベントの有無について判断する。そして、処理すべき伴奏イベントがあれば、判断結果が「YES」となり、次のステップSJ3にてそのイベントの処理を実行して一旦、本ルーチンを完了させる。
【0053】
こうして、図23に図示するように、伴奏パターン番号「17」の自動伴奏が進行している最中に、タイミングT1時点で伴奏パターン番号の上位桁「5」がテンキー入力され、そして、イベント間隔中になると、上述したステップSJ2の判断結果が「NO」となり、ステップSJ4に処理を進める。
ステップSJ4では、変換指示フラグが全てクリアされているか、つまり、テンキー入力により変更すべき伴奏パターン番号が確定したかどうかを判断する。そして、図23に図示するタイミングT1時点では、上位桁「5」のテンキー入力しか行われていないので、全ての変換指示フラグがセットされており、これ故、判断結果は「NO」となり、ステップSJ5に処理を進める。
【0054】
ステップSJ5では、イベント間隔中に、テンキー入力された上位桁と、クリアされていない変換指示フラグに対応する下位桁とで指定される2桁の番号を持つ伴奏パターン番号の各伴奏パターンデータを順次所定量(一部データ)読み出してパターン変換を施し、伴奏パターン記憶エリアにストアする。つまり、図23に示す一例の場合、タイミングT1時点で上位桁「5」がテンキー入力され、その時点でパターン番号「50」〜「59」がパターン変更の候補に挙げられ、これらの一部がイベント間隔中に順次パターン変換されて行く。
次いで、ステップSJ6では、書き込みポインタを更新し、続くステップSJ7では、パターン変換された伴奏パターンデータの格納が完了したか否かを判断し、未完状態であれば、判断結果が「NO」となり、一旦、本ルーチンを完了させるが、そうでなければ、判断結果が「YES」となり、次のステップSJ8に処理を進め、下位桁に対応する変換指示フラグをクリアする。
【0055】
そして、図23に示すタイミングT2時点において、下位桁「1」がテンキー入力されると、前述した第3実施例と同様に、変換指示フラグがクリアされると共に、伴奏番号変更フラグがセットされる。
この状態で再び本ルーチンが実行され、かつ、その時に自動伴奏が4小節経過したタイミングになると、上述したステップSJ1を介して進むステップSJ14の判断結果が「YES」となり、ステップSJ15に進み、伴奏番号変更フラグをクリアする。
次いで、ステップSJ16では、レジスタACPNに格納される伴奏パターン番号の伴奏パターンデータの先頭に演奏ポインタをセットし、続くステップSJ17では、この伴奏パターンデータの先頭から演奏再開を指示する。これにより、下位桁がテンキー入力された時点で進行中の伴奏フレーズの終わり(4小節目)を待って、新たな伴奏フレーズからテンキー入力された伴奏パターン番号の伴奏パターンに変更される。この後、ステップSJ18に進み、小節頭変換フラグをセットする。
【0056】
4小節経過時点で伴奏パターンが変更され、かつ小節頭変換フラグがセットされた状態で、再び本ルーチンが実行されると、伴奏番号変更フラグがクリアされているので、ステップSJ1の判断結果が「NO」となり、図22に示すステップSJ2に処理を進める。そして、この時、処理すべきイベントが無く、イベント間隔中にあると、ステップSJ4を介してステップSJ9に進む。
ステップSJ9では小節頭変更フラグがセットされているか否かを判断するが、当該フラグは4小節経過時点でセットされる為、ここでの判断結果は「YES」となり、次のステップSJ10に進む。ステップSJ10では、レジスタACPNに格納される伴奏パターン番号の伴奏パターンデータについて、パターン変換が完了していない残りのデータを所定量パターン変換して伴奏パターン記憶エリアにストアし、続くステップSJ11ではこれに応じて書き込みポインタを更新する。
【0057】
次いで、ステップSJ12では、レジスタACPNに格納される伴奏パターン番号の伴奏パターンデータが全てパターン変換し終えたか否かを判断する。ここで、パターン変換し終えていれば、判断結果は「YES」となり、次にステップSJ13に進み、上述した小節頭変換フラグをクリアして本ルーチンを完了させるが、パターン変換し終えていない時には、判断結果が「NO」となり、一旦、本ルーチンを完了させる。
このように、第2変形例では、下位桁のテンキー入力により変更すべき伴奏パターン番号が確定したら、その時点で進行している伴奏フレーズの終わり(4小節目)を待って新たな伴奏フレーズからパターン変更すると共に、その確定した伴奏パターン番号について残りの伴奏パターンデータをイベント間隔中にパターン変換して伴奏パターン記憶エリアに格納するので、伴奏パターン記憶エリアの占有容量を節約することが可能になっている。
【0058】
E.その他の例
なお、上述した第1および第2実施例では、変更すべき伴奏パターン番号が確定すると同時に即座に伴奏パターンを変更するようにしたが、これに限らず、拍タイミングに併せて伴奏パターンを切り替える態様としても良く、このようにすることでより音楽的に不自然さなくスムーズに伴奏パターンを変更させ得る。
さらに、上述した第1変形例および第2変形例では、4小節経過時点で伴奏パターンを変更しているが、これに替えて、例えば、伴奏パターンのリズムテンポの種類に応じて最適な切り替えタイミングを設定しておき、現在進行中の伴奏パターンのリズムテンポと変更しようとする伴奏パターンのリズムテンポとを勘案して音楽的に違和感の無いタイミングでパターン変更することも可能である。
【0059】
【発明の効果】
本発明によれば、操作に応じて伴奏番号を前後いずれか側に歩進させて指定する指定操作子を備えるものにあっては、指定された伴奏番号の伴奏パターンと共に、1つ先あるいは1つ後の伴奏番号の伴奏パターンも併せて第2のデータ形式に予めパターン変換しておくので、自動伴奏進行中でも即座に所望の伴奏パターンに変更することができる。
また、上位桁値および下位桁値を入力して伴奏番号を指定する指定手段を備えるものにあっては、上位桁値が入力されると、この上位桁値と下位桁値として入力され得る値(0〜9)とで指定可能な各伴奏番号の伴奏パターン群を変更候補と見做して予め第2のデータ形式にパターン変換しておき、下位桁値が入力されたら、先に入力された上位桁値とこの入力された下位桁値とで指定される伴奏番号の伴奏パターンを、この変更候補の内から選択するので、自動伴奏進行中でも即座に所望の伴奏パターンに変更することができる。
【図面の簡単な説明】
【図1】第1実施例の構成を示すブロック図である。
【図2】第1実施例によるパネル部2の一例を示す図である。
【図3】ROMカードに記憶される伴奏パターンデータの構成を示す図である。
【図4】相対時間方式のデータ形式による伴奏パターンを絶対時間方式のデータ形式にパターン変換する一例を示す図である。
【図5】第1実施例によるメインルーチンの動作を示すフローチャートである。
【図6】第1実施例によるスイッチ処理ルーチンの動作を示すフローチャートである。
【図7】第1実施例による伴奏番号変更処理ルーチンの動作を示すフローチャートである。
【図8】第1実施例による伴奏番号変更処理ルーチンの動作を示すフローチャートである。
【図9】演奏ポインタの遷移状態を示す図である。
【図10】第1実施例による伴奏処理ルーチンの動作を示すフローチャートである。
【図11】第1実施例による伴奏処理ルーチンの動作を示すフローチャートである。
【図12】第1実施例の具体的動作を説明するための図である。
【図13】第2実施例によるパネル部2の一例を示す図である。
【図14】第2実施例による伴奏番号変更処理ルーチンの動作を示すフローチャートである。
【図15】第2実施例による伴奏処理ルーチンの動作を示すフローチャートである。
【図16】第2実施例の具体的動作を説明するための図である。
【図17】第1変形例による伴奏番号変更処理ルーチンの動作を示すフローチャートである。
【図18】第1変形例による伴奏処理ルーチンの動作を示すフローチャートである。
【図19】第1変形例による伴奏処理ルーチンの動作を示すフローチャートである。
【図20】第1変形例の具体的動作を説明するための図である。
【図21】第2変形例による伴奏処理ルーチンの動作を示すフローチャートである。
【図22】第2変形例による伴奏処理ルーチンの動作を示すフローチャートである。
【図23】第2変形例の具体的動作を説明するための図である。
【図24】従来例を説明するための図である。
【符号の説明】
1 鍵盤
2 パネル部
3 CPU
4 テンポクロック発生回路
5 ROM
6 RAM
7 音源
8 サウンドシステム
9 外部記憶装置[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an automatic accompaniment apparatus and an automatic accompaniment method suitable for use in electronic musical instruments and the like.
[0002]
[Prior art]
Conventionally, an accompaniment pattern composed of data representing the pitch of each sound to be played, sounding timing, etc. is stored in a memory, and the accompaniment pattern selected from these is sequentially read out in synchronization with the tempo clock. An automatic accompaniment device that reproduces sound is known.
In this type of device, in order to share accompaniment patterns with other models, various accompaniment patterns are recorded in a general-purpose data format in an external memory (for example, a ROM card or a disk) and selected from these. In many cases, the accompaniment pattern is converted into a data format handled inside the apparatus and then stored in an internal memory (work RAM).
[0003]
FIG. 24 is a diagram showing an outline of the data format of the accompaniment pattern used in such an apparatus. FIG. 6A is a general-purpose data format called a so-called relative time method. For each note forming an accompaniment pattern, an event EVENT that distinguishes the pitch and note-on (sounding) / note-off (silence). And event intervals TD representing the intervals are stored in the order of time-series addresses corresponding to the progression of music.
On the other hand, FIG. 6B shows a pattern conversion of the accompaniment pattern in the data format according to the relative time method into a data format convenient for internal processing, and is called an absolute time method. In the data format based on the absolute time system, basically, the note-on timing of each note forming an accompaniment pattern is represented by an event time IT representing the elapsed time from the beginning of the music, an event EVENT representing note-on, and a note length (note-on). Gate time GT representing time) is stored in the order of time-series addresses corresponding to the progression of music.
[0004]
[Problems to be solved by the invention]
By the way, in the conventional automatic accompaniment apparatus described above, when a desired accompaniment pattern is selected from various accompaniment patterns recorded in the external memory, the selected accompaniment pattern is converted into an absolute time format data format and the internal accompaniment pattern is converted into an internal format. If the accompaniment pattern is changed while the automatic accompaniment is in progress because it is stored in the memory (work RAM), it takes time to perform the pattern conversion, and the accompaniment pattern cannot be changed immediately. There is a problem.
[0005]
Therefore, the present invention has been made in view of such circumstances, and an object thereof is to provide an automatic accompaniment apparatus and an automatic accompaniment method that can immediately change to a desired accompaniment pattern even during automatic accompaniment.
[0006]
[Means for Solving the Problems]
In order to achieve the above object, the automatic accompaniment apparatus according to
[0007]
Further, in the automatic accompaniment method according to
[0008]
4. The automatic accompaniment apparatus according to
[0009]
Furthermore, in the automatic accompaniment method according to
[0010]
In the present invention, in the case of the one provided with a designating operation element that designates the accompaniment number by stepping forward or backward in accordance with the operation, the accompaniment pattern of the designated accompaniment number is one step ahead or one step behind. Since the accompaniment pattern of the accompaniment number is also previously converted into the second data format, it can be immediately changed to the corresponding accompaniment pattern.
In addition, in the case of having a specifying means for specifying an accompaniment number by inputting an upper digit value and a lower digit value, values that can be input as the upper digit value and the lower digit value when the upper digit value is input. The accompaniment pattern group of each accompaniment number that can be specified by (0-9) is regarded as a change candidate, and is converted into the second data format in advance, and when the lower digit value is input, it is input first. Since the accompaniment pattern of the accompaniment number designated by the higher digit value and the input lower digit value is selected from the change candidates, it can be immediately changed to the corresponding accompaniment pattern.
[0011]
DETAILED DESCRIPTION OF THE INVENTION
The automatic accompaniment apparatus according to the present invention can be applied not only to a known electronic musical instrument but also to a DTM (desk top music) apparatus using a personal computer. Hereinafter, an electronic musical instrument according to an embodiment of the present invention will be described as an example with reference to the drawings.
[0012]
A. First embodiment
(1) Configuration
FIG. 1 is a block diagram showing the overall configuration of an electronic musical instrument to which an automatic accompaniment apparatus according to a first embodiment of the present invention is applied. In this figure,
[0013]
Here, an example of the
[0014]
The
A
[0015]
[0016]
Reference numeral 9 denotes an external storage device using, for example, a ROM card storing a plurality of types of accompaniment patterns as a storage medium. As shown in FIG. 3, the accompaniment pattern data stored in the ROM card distinguishes the pitch and note-on (sounding) / note-off (silence) of each note constituting the accompaniment pattern, as in the prior art. The event EVENT and the event interval TD representing the interval are formed in a data format of a relative time method in which the events are stored in the order of time-series addresses corresponding to the progression of music.
Then, the accompaniment that is specified and read from the ROM card via the external storage device 9 under the control of the
[0017]
In the first embodiment having the above-described configuration, each time an accompaniment pattern number is designated by pressing the up switch UP and down switch DN constituting the
That is, when the accompaniment pattern number is selected using the
[0018]
(2) Operation
Next, the operation of the first embodiment embodying the above-described features will be described with reference to FIGS. Here, first, the operation of the main routine will be described as an outline first, and then the switch processing routine, accompaniment number change processing routine, and accompaniment processing routine called from the main routine will be sequentially described.
[0019]
(1) Main routine operation
First, when power is turned on in this embodiment, the
After the initialization is completed, the
[0020]
Next, in step SA4, display processing for displaying the operation state or setting state set by the switch processing on the
[0021]
(2) Switch processing routine operation
Next, the operation of the switch processing routine will be described with reference to FIG. When this routine is executed via step SA3 of the main routine described above, the
In other words, when the start of the automatic accompaniment is instructed by operating the start / stop switch, the determination result in step SB2 is “YES”, the process proceeds to step SB3, the accompaniment start process is executed to start the automatic accompaniment, When the stop of the automatic accompaniment is instructed by operating the / stop switch, the determination result in step SB4 becomes “YES”, the process proceeds to step SB5, and the accompaniment stop process is executed to stop the automatic accompaniment. When either the up switch UP or the down switch DN of the
[0022]
(3) Accompaniment number change processing routine operation
When this routine is executed through step SB7 of the switch processing routine corresponding to the operation of the
When the up switch UP is pressed, the determination result in step SC1 is "YES", the process proceeds to the next step SC2, the accompaniment pattern number stored in the register ACPN is incremented by 1, and the subsequent step SC3 is VALUEUP. Set the event flag.
[0023]
On the other hand, when the down switch DN is pressed, the determination result in step SC1 is “NO”, the process proceeds to step SC4, the accompaniment pattern number stored in the register ACPN is decremented by 1, and the subsequent value is VALUEDOWN in step SC5. Set the event flag.
The VALUEUP / VALUEDOWN event flag is a flag indicating that the up switch UP / down switch DN has been newly pressed.
[0024]
When the value of the register ACPN and the VALUEUP / VALUEDOWN event flag are updated in response to the pressing operation of the up switch UP / down switch DN, the
This UPPER conversion flag (or LOWER conversion flag) is a flag that is set when an accompaniment pattern having a pattern number +1 (or -1) to an accompaniment pattern number currently in progress is being converted.
If the pattern conversion is in progress, the determination result here is “YES”, the process proceeds to the next step SC7, the pattern is converted to the end, and then stored in the accompaniment pattern storage area of the RAM 6, followed by step SC8. At the end of pattern conversion, the UPPER conversion flag (or LOWER conversion flag) is cleared and the process proceeds to the next step SC9.
On the other hand, if the determination result in step SC6 is “NO”, that is, if the pattern conversion is not in progress, the process proceeds to step SC9.
[0025]
In step SC9, the
Thus, when the performance pointer is moved in response to the pressing operation of the up switch UP / down switch DN, the
[0026]
(4) Accompaniment processing routine operation
Next, the operation of the accompaniment processing routine will be described with reference to FIGS. In the following, the operation will be described on the assumption that the
First, for example, when the accompaniment pattern “17” is selected before the automatic accompaniment is started, the
[0027]
(A) When the up switch UP is pressed
In step SD1, it is determined whether or not the VALUEUP event flag is set, that is, whether or not the up switch UP has been pressed to increase the accompaniment pattern number by “+1”. Here, for example, as shown in FIG. 12, it is assumed that the up switch UP is pressed when the automatic accompaniment by the accompaniment pattern “17” progresses by one and a half bars. Then, the determination result in step SD1 is “YES”, the process proceeds to the next step SD2, the UPPER conversion in-progress flag is set, and in the subsequent step SD3, the VALUEUP event flag is cleared.
[0028]
Thereafter, the process proceeds to step SD7 shown in FIG. 11 to determine whether there is an accompaniment event to be processed. If there is an event to be processed, the determination result is “YES”, the process proceeds to the next step SD8, and after executing the process corresponding to the event, this routine is once completed. If there is no error, that is, during the event interval, the determination result in step SD7 is “NO”, and the process proceeds to step SD9.
In step SD9, it is determined whether or not the UPPER conversion flag is set, that is, whether or not the up switch UP has been pressed. In this case, since the up switch UP has been pressed, the determination result is “YES”, and the process proceeds to step SD10. In step SD10, a number obtained by adding “+1” to the accompaniment pattern number stored in the register ACPN, that is, accompaniment pattern data of the accompaniment pattern “19” is read out for a predetermined amount (partial data), pattern conversion is performed, and an accompaniment pattern storage area To store.
[0029]
In step SD11, the writing pointer is updated, and in the subsequent step SD12, it is determined whether or not all the accompaniment pattern “19” has been stored after pattern conversion. Becomes “NO” and this routine is once completed. Otherwise, the determination result is “YES”, the process proceeds to the next step SD13, and the UPPER conversion flag is cleared.
In this way, when the accompaniment pattern “17” is in progress, if the up switch UP is pressed while the accompaniment pattern “17” is in progress, the accompaniment pattern “18” previously converted with the accompaniment pattern “17” is displayed. When the automatic accompaniment by the changed accompaniment pattern “18” comes to the event interval timing, the data of the next accompaniment pattern “19” is further converted in advance and stored in the accompaniment pattern storage area. A preparation is made so as to cope with the pressing operation of the next up switch UP.
[0030]
(B) When the down switch DN is pressed
On the other hand, when the down switch DN is pressed, the determination result in step SD1 is “NO”, and the process proceeds to step SD4. In step SD4, it is determined whether or not the VALUEDOWN event flag is set, that is, whether or not the down switch DN has been pressed to change the accompaniment pattern.
Here, for example, as shown in FIG. 12, when the down switch DN is pressed when the automatic accompaniment by the accompaniment pattern “18” advances by one measure, the determination result in step SD4 becomes “YES”. In step SD5, the LOWER conversion flag is set, and in step SD6, the VALUEDOWN event flag is cleared.
[0031]
Thereafter, the
On the other hand, if the event interval is reached and there is no event to be processed, the determination result is “NO”, and the process proceeds to step SD14 via step SD9. In step SD14, it is determined whether or not the LOWER conversion flag is set, that is, whether or not the down switch DN is being pressed. In this case, since the down switch UP is pressed, the determination result is “YES”, the process proceeds to step SD15, and the accompaniment pattern number stored in the register ACPN is “−1”, that is, the accompaniment pattern. A predetermined amount (partial data) of “16” accompaniment pattern data is read out, subjected to pattern conversion, and stored in an accompaniment pattern storage area.
[0032]
Thereafter, the write pointer is updated through steps SD11 to SD12, and it is determined whether or not the storage after the pattern conversion has been completed for all the accompaniment pattern "16". The routine is completed, but if not, the LOWER conversion in progress flag is cleared.
As described above, when the down switch DN is pressed while the automatic accompaniment is in progress with a certain number of accompaniment patterns, the accompaniment pattern is changed to the one with the lower number that has been previously converted. When the automatic accompaniment by the accompaniment pattern comes to the timing of the event interval, the data of the lower accompaniment pattern is pre-converted in advance, so immediately according to the pressing operation of the down switch DN It can be changed to the accompaniment of the pattern number one level below.
[0033]
B. Second embodiment
(1) Differences from the first embodiment
In the first embodiment described above, every time the accompaniment pattern number is stepped forward and backward by pressing the up switch UP and the down switch DN constituting the
[0034]
(2) Operation of the second embodiment
Next, an accompaniment number changing process routine and an accompaniment process routine according to the second embodiment will be described with reference to FIGS.
(1) Accompaniment number change processing routine operation
When the accompaniment number change processing routine is executed via the switch processing routine in response to the input operation of the
The lower digit input waiting flag is set when the upper digit input by the
[0035]
When this routine is executed in response to the next numeric keypad input (lower digit input) operation and the process proceeds again to step SE1, the upper digit input is completed and the lower digit input is waited. Therefore, the determination result is “YES”, and the process proceeds to step SE4. In step SE4, the lower digit input waiting flag is cleared, and in the subsequent step SE5, the accompaniment pattern number composed of the upper digit and the lower digit inputted by the numeric keypad is determined and set in the register ACPN.
Next, in step SE6, it is checked whether or not the accompaniment pattern data of the confirmed accompaniment pattern number has been subjected to pattern conversion based on whether or not the conversion instruction flag is set.
Here, when it has not been converted, the determination result is “NO”, the process proceeds to step SE7, the accompaniment pattern data is converted to the end, stored in the accompaniment pattern storage area, and then step SE8. In the case where the conversion has been completed, the determination result in step SE6 is “YES”, and the process proceeds to step SE8.
[0036]
In step SE8, all the conversion instruction flags corresponding to the lower digits (0 to 9) are cleared, and in the subsequent step SE9, the accompaniment pattern data after pattern conversion other than the confirmed pattern number is no longer necessary. To discard (erase) them from the accompaniment pattern storage area. In step SE10, the
[0037]
(2) Accompaniment processing routine operation
Next, the operation of the accompaniment processing routine according to the second embodiment will be described with reference to FIGS. In the following, the operation will be described assuming that the
First, as shown in FIG. 16, when the accompaniment pattern number “17” is in progress and the automatic accompaniment is in progress, as in the first embodiment, when this routine is executed via the main routine, the
[0038]
For example, as shown in FIG. 16, it is assumed that the upper digit “5” is input with the
In step SF4, during the event interval, a predetermined amount of accompaniment pattern data having an accompaniment pattern number having a two-digit number specified by the upper digit input by the numeric keypad and the lower digit corresponding to the conversion instruction flag not cleared is obtained. (Partial data) is read out, subjected to pattern conversion, and stored in the accompaniment pattern storage area. In other words, in the example shown in FIG. 16, the upper digit “5” is input by the numeric keypad at the timing T1, and the accompaniment pattern numbers “50” to “59” are listed as pattern change candidates at the time T1, and these are the event intervals. The pattern is converted in order.
Next, in step SF5, the write pointer is updated, and in the subsequent step SF6, it is determined whether or not the storage after pattern conversion is completed. If it is incomplete, the determination result is “NO”, and this routine is temporarily performed. If not, the determination result is “YES”, the process proceeds to the next step SF7, and the conversion instruction flag corresponding to the lower digit is cleared.
[0039]
Therefore, in the process in which pattern numbers “50” to “59” are sequentially subjected to pattern conversion during the event interval in accordance with the numeric keypad input of the upper digit “5”, as shown in FIG. 16, the lower digit “ When “1” is entered through the numeric keypad, the accompaniment pattern data of accompaniment pattern number “51” is immediately changed through steps SE6 to SE12 of the accompaniment number change processing routine (see FIG. 14) described above, and automatic accompaniment is performed. It becomes possible to proceed.
When the pattern is changed, all the conversion instruction flags are cleared in step SE8 described above. Therefore, if the process proceeds to step SF3 during the event interval, the determination result here is “YES”. The accompaniment processing routine is once completed without processing anything.
[0040]
As described above, according to the second embodiment, when a high-order digit is input by a numeric keypad, accompaniment pattern data having numbers corresponding to the high-order digit and the low-order digit (0 to 9) are sequentially given a predetermined amount of data during the event interval. The minutes are converted into patterns, and when the accompaniment pattern number to be changed is determined by inputting the lower digit on the numeric keypad, it can be immediately changed to the automatic accompaniment based on the accompaniment pattern of that number.
In addition, when the accompaniment pattern number to be changed is confirmed, the partially converted accompaniment pattern data other than the confirmed accompaniment pattern number is deleted from the accompaniment pattern storage area. Can also be reduced.
In the second embodiment, when selecting accompaniment pattern numbers “0” to “9”, corresponding to
[0041]
C. First modification
(1) Differences from the second embodiment
In the second embodiment described above, when the accompaniment pattern number to be changed according to the numeric keypad input of the lower digit is determined, the accompaniment pattern is immediately changed to the automatic accompaniment based on the accompaniment pattern of the number. Then, when the accompaniment pattern number to be changed is confirmed by inputting the lower digit with the numeric keypad, all the remaining accompaniment pattern data is converted into the pattern for the confirmed accompaniment pattern number, and the end of the accompaniment phrase currently in progress (4 It is different in that the pattern is changed from a new accompaniment phrase after waiting for the bar.
[0042]
(2) Operation of the first modification
Next, an accompaniment number changing process routine and an accompaniment process routine according to the first modification will be described with reference to FIGS.
(1) Accompaniment number change processing routine operation
Similarly to the second embodiment described above, when the input operation of the
When the lower digit input waiting flag is not set, the determination result here is “NO”. In this case, assuming that the upper digit is input by the
[0043]
Then, this routine is executed again in response to a numeric keypad (lower digit input) operation, and the process proceeds to step SG1. At this time, the upper digit input has already been completed and the lower digit input is awaited. Therefore, the determination result is “YES”, and the process proceeds to step SG4.
In step SG4, the lower digit input waiting flag is cleared, and in the subsequent step SG5, the pattern number composed of the upper digit and the lower digit inputted by the numeric keypad is determined, and this accompaniment pattern number is set in the register ACPN. Next, in step SG6, whether or not the accompaniment pattern data of the determined pattern number has been subjected to pattern conversion is checked based on whether or not the conversion instruction flag is set.
[0044]
Here, when the conversion has not been completed, the determination result is “NO”, the process proceeds to step SG7, and after this final accompaniment pattern data is converted to the end, it is stored in the accompaniment pattern storage area. The process proceeds to step SG8. If the conversion has been completed, the determination result in step SG6 is “YES”, and the process proceeds to step SG8.
In step SG8, the
[0045]
(2) Accompaniment processing routine operation
Next, the operation of the accompaniment processing routine according to the first modification will be described with reference to FIGS. In the following, the operation will be described on the assumption that the
First, as shown in FIG. 20, when the automatic accompaniment is in progress with the accompaniment pattern number “17”, when this routine is executed via the main routine, as in the second embodiment, the
Here, when the numeric keypad input is not performed, the accompaniment number change flag is not set, so the determination result is “NO”, and the process proceeds to step SH2 shown in FIG. to decide. If there is an accompaniment event to be processed, the determination result is “YES”, the processing of the event is executed in the next step SH3, and this routine is once completed.
[0046]
As shown in FIG. 20, when the automatic accompaniment is in progress based on the accompaniment pattern number “17”, the upper digit “5” of the accompaniment pattern number is input by the numeric keypad at the timing T1. If it is during the event interval, the determination result in step SH2 described above is “NO”, and the process proceeds to step SH4.
In step SH4, it is determined whether or not all the conversion instruction flags described above have been cleared, that is, whether or not the accompaniment pattern number to be changed has been determined by ten-key input. At timing T1 shown in FIG. 20, since only the upper digit “5” numeric keypad is input, all the conversion instruction flags are set. Therefore, the determination result is “NO”, and the step The process proceeds to SH5.
[0047]
In step SH5, during the event interval, a predetermined amount of accompaniment pattern data having an accompaniment pattern number having a two-digit number specified by the upper digit input by the numeric keypad and the lower digit corresponding to the conversion instruction flag not cleared is obtained. (Partial data) is read out, subjected to pattern conversion, and stored in the accompaniment pattern storage area.
In other words, in the example shown in FIG. 20, the upper digit “5” is input with the numeric keypad at the timing T1, and the pattern numbers “50” to “59” are listed as pattern change candidates at that time. Pattern conversion is performed sequentially during the event interval. Next, in step SH6, the write pointer is updated, and in the subsequent step SH7, it is determined whether or not the storage after pattern conversion is completed. If it is incomplete, the determination result is “NO”, and this routine is temporarily performed. If not, the determination result is “YES”, the process proceeds to the next step SH8, and the conversion instruction flag corresponding to the lower digit is cleared.
[0048]
Then, when the lower digit “1” is input with the numeric keypad at the time of iming T2 shown in FIG. 20, the conversion instruction flag is cleared through steps SG4 to SG10 of the accompaniment number change processing routine described above, and the accompaniment number change flag is set. Therefore, the determination result in step SH4 is “YES”, and the process proceeds to step SH9. In step SH9, it is determined whether or not the accompaniment number change flag is set. In this case, since the accompaniment number change flag is set, the determination result is “YES”, and the flow proceeds to the next step SH10. In step SH10, it is determined whether or not all the accompaniment pattern data of the accompaniment pattern number stored in the register ACPN has been subjected to pattern conversion. Here, if all the pattern conversion is completed, the determination result is “YES”, and this routine is completed. If it is not completed, the determination result is “NO”, and the process proceeds to step SH11.
[0049]
Next, in step SH11, with respect to the accompaniment pattern data of the accompaniment pattern number stored in the register ACPN, all the remaining data for which pattern conversion has not been completed is subjected to pattern conversion and stored in the accompaniment pattern storage area. The write pointer is updated in response to this, and then this routine is once completed.
In this way, when all the accompaniment pattern data of the accompaniment pattern number input by the numeric keypad has been subjected to pattern conversion and stored in the accompaniment pattern storage area, this routine is executed again and the process proceeds to step SH1 (FIG. 18). Since the accompaniment number change flag is set, the determination result in step SH1 is “YES”, and the flow advances to step SH13.
[0050]
In step SH13, it is determined whether or not the current accompaniment pattern has passed four measures when the lower digit is input from the numeric keypad. If it has elapsed, the determination result is “YES”, and the process proceeds to the next step SH14. The process proceeds and the accompaniment number change flag is cleared.
Next, at step SH15, a performance pointer is set at the head of the accompaniment pattern data of the accompaniment pattern number stored in the register ACPN, and at step SH16, resumption of performance is instructed from the head of the accompaniment pattern data. As a result, when the lower digit is input from the numeric keypad, it waits for the end of the ongoing accompaniment phrase (4th measure), and the accompaniment pattern is changed from the new accompaniment phrase to the accompaniment pattern number input by the numeric keypad.
As described above, in the first modification, when the upper digit is entered by the numeric keypad, the accompaniment pattern data of the numbers corresponding to the upper digit and the lower digit (0 to 9) are sequentially patterned for a predetermined amount of data during the event interval. After converting, and confirming the accompaniment pattern number to be changed by entering the lower digits using the numeric keypad, all the remaining accompaniment pattern data is converted for that confirmed accompaniment pattern number, so the capacity of the accompaniment pattern storage area is reduced. It becomes possible to save.
[0051]
D. Second modification
Next, a second modification will be described with reference to FIGS. In the first modified example described above, as shown in FIG. 20, when the accompaniment pattern number to be changed is confirmed by inputting the lower digit using the numeric keypad, all the remaining accompaniment pattern data is subjected to pattern conversion for the confirmed accompaniment pattern number. Then, the pattern change is made from the new accompaniment phrase after waiting for the end of the accompaniment phrase (fourth measure) which is proceeding at that time.
On the other hand, in the second modified example, when the accompaniment pattern number to be changed is determined by inputting the lower digits using the numeric keypad, the end of the accompaniment phrase (fourth measure) that is proceeding at that time is awaited and a new accompaniment phrase is started. While changing the pattern, pattern conversion is performed on the remaining accompaniment pattern data that has not been subjected to pattern conversion for the confirmed accompaniment pattern number.
Hereinafter, the operation of the accompaniment processing routine embodying the second modification will be described with reference to FIGS. In the following description of the operation, it is assumed that the
[0052]
Now, as shown in FIG. 23, when this accompaniment is executed via the main routine while automatic accompaniment is in progress with accompaniment pattern number “17”, the
Here, when the numeric keypad input is not performed, the accompaniment number change flag is not set, so the determination result is “NO”, and the process proceeds to step SJ2 shown in FIG. to decide. If there is an accompaniment event to be processed, the determination result is “YES”, and the processing of the event is executed in the next step SJ3 to once complete this routine.
[0053]
Thus, as shown in FIG. 23, while the automatic accompaniment of the accompaniment pattern number “17” is in progress, the upper digit “5” of the accompaniment pattern number is input by the numeric keypad at the timing T1, and the event interval When it is in the middle, the determination result in step SJ2 is “NO”, and the process proceeds to step SJ4.
In step SJ4, it is determined whether or not all the conversion instruction flags are cleared, that is, whether or not the accompaniment pattern number to be changed is determined by the numeric keypad input. At timing T1 shown in FIG. 23, only the upper digit “5” numeric keypad is input, so all the conversion instruction flags are set. Therefore, the determination result is “NO”. The process proceeds to SJ5.
[0054]
In step SJ5, the accompaniment pattern data of the accompaniment pattern number having the two-digit number designated by the upper digit inputted by the numeric keypad and the lower digit corresponding to the conversion instruction flag which has not been cleared are sequentially obtained during the event interval. A predetermined amount (partial data) is read out, subjected to pattern conversion, and stored in an accompaniment pattern storage area. That is, in the example shown in FIG. 23, the upper digit “5” is input by the numeric keypad at the timing T1, and the pattern numbers “50” to “59” are listed as pattern change candidates at that time, and some of these are displayed. Pattern conversion is performed sequentially during the event interval.
Next, in step SJ6, the writing pointer is updated, and in the subsequent step SJ7, it is determined whether or not the storage of the pattern conversion accompaniment pattern data is completed. If it is incomplete, the determination result is “NO”. This routine is once completed. If not, the determination result is “YES”, the process proceeds to the next step SJ8, and the conversion instruction flag corresponding to the lower digit is cleared.
[0055]
Then, when the lower digit “1” is input by the numeric keypad at the timing T2 shown in FIG. 23, the conversion instruction flag is cleared and the accompaniment number change flag is set as in the third embodiment. .
In this state, this routine is executed again, and when the automatic accompaniment has reached 4 bars at that time, the determination result in step SJ14, which proceeds through step SJ1 described above, becomes “YES”, and the process proceeds to step SJ15. Clear the number change flag.
Next, in step SJ16, a performance pointer is set at the head of the accompaniment pattern data of the accompaniment pattern number stored in the register ACPN, and in the subsequent step SJ17, the resumption of performance is instructed from the head of the accompaniment pattern data. As a result, when the lower digit is input from the numeric keypad, the end of the ongoing accompaniment phrase (4th measure) is waited for, and the new accompaniment phrase is changed to the accompaniment pattern of the accompaniment pattern number input from the numeric keypad. Thereafter, the process proceeds to step SJ18, and a bar head conversion flag is set.
[0056]
When this routine is executed again when the accompaniment pattern is changed at the time when four measures have passed and the measure head conversion flag is set, the accompaniment number change flag is cleared, so the determination result in step SJ1 is “ NO, and the process proceeds to step SJ2 shown in FIG. At this time, if there is no event to be processed and there is an event interval, the process proceeds to step SJ9 via step SJ4.
In step SJ9, it is determined whether or not a bar change flag is set. Since the flag is set when four bars have elapsed, the determination result here is “YES”, and the flow proceeds to the next step SJ10. In step SJ10, with respect to the accompaniment pattern data of the accompaniment pattern number stored in the register ACPN, the remaining data that has not been subjected to pattern conversion is converted into a predetermined amount and stored in the accompaniment pattern storage area. The write pointer is updated accordingly.
[0057]
Next, in step SJ12, it is determined whether or not all the accompaniment pattern data of the accompaniment pattern number stored in the register ACPN has been subjected to pattern conversion. If the pattern conversion has been completed, the determination result is “YES”, and then the process proceeds to step SJ13 to clear the above-described bar head conversion flag and complete the present routine, but when the pattern conversion has not been completed. The determination result is “NO”, and this routine is once completed.
As described above, in the second modification, when the accompaniment pattern number to be changed is determined by inputting the lower digit numeric keypad, the end of the accompaniment phrase (fourth measure) that is in progress at that time is awaited and a new accompaniment phrase is started. In addition to changing the pattern, the remaining accompaniment pattern data for the confirmed accompaniment pattern number is subjected to pattern conversion during the event interval and stored in the accompaniment pattern storage area, so that the occupied capacity of the accompaniment pattern storage area can be saved. ing.
[0058]
E. Other examples
In the above-described first and second embodiments, the accompaniment pattern number to be changed is fixed and the accompaniment pattern is immediately changed at the same time. However, the present invention is not limited to this. By doing so, it is possible to change the accompaniment pattern smoothly with no musical unnaturalness.
Furthermore, in the first modification and the second modification described above, the accompaniment pattern is changed when four measures have elapsed, but instead, for example, an optimal switching timing according to the type of rhythm tempo of the accompaniment pattern It is also possible to change the pattern at a timing that is not musically uncomfortable, taking into account the rhythm tempo of the accompaniment pattern that is currently in progress and the rhythm tempo of the accompaniment pattern to be changed.
[0059]
【The invention's effect】
According to the present invention, in the case of the one provided with the designating operator that designates the accompaniment number by stepping forward or backward in accordance with the operation, the accompaniment pattern of the designated accompaniment number is one ahead or one. Since the accompaniment pattern of the subsequent accompaniment number is also converted into the second data format in advance, it can be immediately changed to a desired accompaniment pattern even during automatic accompaniment.
In addition, in the case of having a specifying means for specifying an accompaniment number by inputting an upper digit value and a lower digit value, values that can be input as the upper digit value and the lower digit value when the upper digit value is input. The accompaniment pattern group of each accompaniment number that can be specified by (0-9) is regarded as a change candidate, and is converted into the second data format in advance, and when the lower digit value is input, it is input first. Since the accompaniment pattern of the accompaniment number specified by the higher digit value and the input lower digit value is selected from these change candidates, it can be immediately changed to the desired accompaniment pattern even during automatic accompaniment. .
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a first embodiment.
FIG. 2 is a diagram showing an example of a
FIG. 3 is a diagram showing the structure of accompaniment pattern data stored in a ROM card.
FIG. 4 is a diagram illustrating an example of pattern conversion from an accompaniment pattern in a relative time format data format to an absolute time format data format;
FIG. 5 is a flowchart showing an operation of a main routine according to the first embodiment.
FIG. 6 is a flowchart showing an operation of a switch processing routine according to the first embodiment.
FIG. 7 is a flowchart showing the operation of an accompaniment number change processing routine according to the first embodiment.
FIG. 8 is a flowchart showing the operation of an accompaniment number change processing routine according to the first embodiment.
FIG. 9 is a diagram showing transition states of performance pointers.
FIG. 10 is a flowchart showing the operation of an accompaniment processing routine according to the first embodiment.
FIG. 11 is a flowchart showing the operation of an accompaniment processing routine according to the first embodiment.
FIG. 12 is a diagram for explaining a specific operation of the first embodiment;
FIG. 13 is a diagram showing an example of a
FIG. 14 is a flowchart showing the operation of an accompaniment number change processing routine according to the second embodiment.
FIG. 15 is a flowchart showing the operation of an accompaniment processing routine according to the second embodiment.
FIG. 16 is a diagram for explaining a specific operation of the second embodiment;
FIG. 17 is a flowchart showing the operation of an accompaniment number change processing routine according to a first modification.
FIG. 18 is a flowchart showing the operation of an accompaniment processing routine according to a first modification.
FIG. 19 is a flowchart showing the operation of an accompaniment processing routine according to a first modification.
FIG. 20 is a diagram for explaining a specific operation of the first modified example.
FIG. 21 is a flowchart showing the operation of an accompaniment processing routine according to a second modification.
FIG. 22 is a flowchart showing the operation of an accompaniment processing routine according to a second modification.
FIG. 23 is a diagram for explaining a specific operation of the second modified example.
FIG. 24 is a diagram for explaining a conventional example.
[Explanation of symbols]
1 keyboard
2 Panel section
3 CPU
4 Tempo clock generator
5 ROM
6 RAM
7 Sound source
8 Sound system
9 External storage device
Claims (4)
この伴奏手段が進行させる自動伴奏のイベント間隔中に、前記伴奏番号Nの1つ前(N+1)および1つ後(N−1)の伴奏番号にそれぞれ対応する第1のデータ形式の伴奏パターンを第2のデータ形式に予めパターン変換しておく第1の変換手段と、
前記伴奏番号Nを前後いずれか側に歩進させるよう前記指定操作子が変更操作された場合、この変更操作に対応して、前記第1の変換手段によって予めパターン変換された1つ前(N+1)および1つ後(N+1)の各伴奏番号に対応する第2のデータ形式の伴奏パターンのいずれかを選択し、選択した伴奏パターンに従った自動伴奏に変更するよう前記伴奏手段に指示する伴奏変更指示手段と、
この伴奏変更指示手段により変更された自動伴奏のイベント間隔中に、前記変更操作に応じて指定された伴奏番号の1つ前および1つ後の伴奏番号にそれぞれ対応する第1のデータ形式の伴奏パターンを第2のデータ形式に予めパターン変換する第2の変換手段と
を具備することを特徴とする自動伴奏装置。A designating operator is provided for designating the accompaniment number by stepping forward or backward in accordance with the operation, and the accompaniment pattern in the first data format corresponding to the accompaniment number N designated by the designating operator is set to the second An accompaniment means for converting a pattern into a data format and proceeding an automatic accompaniment according to the pattern
The accompaniment patterns of the first data format respectively corresponding to the accompaniment numbers one before (N + 1) and one after (N-1) of the accompaniment number N during the event period of the automatic accompaniment advanced by the accompaniment means. First conversion means for performing pattern conversion in advance into a second data format;
When the designation operator is changed so that the accompaniment number N is stepped forward or backward, corresponding to the change operation, the pattern conversion is previously performed by the first conversion means (N + 1). ) And the next (N + 1) accompaniment pattern of the second data format corresponding to each accompaniment number, and instructing the accompaniment means to change to an automatic accompaniment according to the selected accompaniment pattern Change instruction means;
During the automatic accompaniment event interval changed by the accompaniment change instruction means, the accompaniment of the first data format respectively corresponding to the accompaniment number one before and one after the accompaniment number specified in accordance with the changing operation An automatic accompaniment apparatus comprising: a second conversion unit that converts a pattern into a second data format in advance.
この第1のステップにて進行する自動伴奏のイベント間隔中に、前記伴奏番号Nの1つ前(N+1)および1つ後(N−1)の伴奏番号にそれぞれ対応する第1のデータ形式の伴奏パターンを第2のデータ形式に予めパターン変換しておく第2のステップと、
前記伴奏番号Nを前後いずれか側に歩進させるよう前記指定操作子が変更操作された場合、この変更操作に対応して、前記第2のステップにて予めパターン変換された1つ前(N+1)および1つ後(N+1)の各伴奏番号に対応する第2のデータ形式の伴奏パターンのいずれかを選択し、選択した伴奏パターンに従った自動伴奏に変更するよう指示する第3のステップと、
この第3のステップにて変更された自動伴奏のイベント間隔中に、前記変更操作に応じて指定された伴奏番号の1つ前および1つ後の伴奏番号にそれぞれ対応する第1のデータ形式の伴奏パターンを第2のデータ形式に予めパターン変換する第4のステップと
を具備することを特徴とする自動伴奏方法。Pattern conversion of the accompaniment pattern of the first data format corresponding to the accompaniment number N specified in accordance with the operation of the specifying operator that specifies the accompaniment number by stepping forward or backward, to the second data format; A first step of proceeding with automatic accompaniment according to this,
During the event period of the automatic accompaniment that proceeds in the first step, the first data format corresponding to the accompaniment number one before (N + 1) and one after (N-1) the accompaniment number N A second step of converting the accompaniment pattern into a second data format in advance;
When the designation operator is changed so as to step the accompaniment number N forward or backward, in response to this change operation, the previous pattern converted in advance in the second step (N + 1) ) And the next (N + 1) second accompaniment pattern corresponding to each accompaniment number, and a third step for instructing to change to an automatic accompaniment according to the selected accompaniment pattern; ,
In the event interval of the automatic accompaniment changed in the third step, the first data format corresponding respectively to the accompaniment number one before and one after the accompaniment number specified in accordance with the changing operation An automatic accompaniment method comprising: a fourth step of converting the accompaniment pattern into a second data format in advance.
この指定手段によって指定された伴奏番号に対応する第1のデータ形式の伴奏パターンを第2のデータ形式にパターン変換し、これに従って自動伴奏を進行させる伴奏手段と、
この伴奏手段が進行させる自動伴奏中に、上位桁値が入力された場合、この入力された上位桁値と下位桁値として入力され得る値とで指定可能な各伴奏番号にそれぞれ対応した第1のデータ形式の伴奏パターン群を、イベント間隔中にそれぞれ第2のデータ形式の伴奏パターン群に予めパターン変換しておく変換手段と、
前記上位桁値の入力に続いて下位桁値が入力された場合、先に入力済みの上位桁値とこの入力された下位桁値とに応じて前記指定手段が指定する伴奏番号に対応した第2のデータ形式の伴奏パターンを、前記変換手段によってパターン変換された第2のデータ形式の伴奏パターン群の内から選択し、選択した第2のデータ形式の伴奏パターンに従った自動伴奏に変更する伴奏変更手段と
を具備することを特徴とする自動伴奏装置。A specification means for specifying an accompaniment number by inputting an upper digit value and a lower digit value;
Accompaniment means for pattern-converting the accompaniment pattern of the first data format corresponding to the accompaniment number designated by the designation means into the second data format, and proceeding automatic accompaniment accordingly,
When an upper digit value is input during the automatic accompaniment that is performed by the accompaniment means, a first accompaniment number corresponding to each accompaniment number that can be specified by the input upper digit value and a value that can be input as the lower digit value. Conversion means for pattern-converting the accompaniment pattern group in the data format in advance into the accompaniment pattern group in the second data format during the event interval,
When the lower digit value is input following the input of the upper digit value, the first digit corresponding to the accompaniment number specified by the specifying means according to the previously input upper digit value and the input lower digit value The accompaniment pattern of the second data format is selected from the accompaniment pattern group of the second data format converted by the converting means, and the accompaniment pattern is changed to an automatic accompaniment according to the selected accompaniment pattern of the second data format. An automatic accompaniment apparatus comprising accompaniment changing means.
前記第1のステップによって指定された伴奏番号に対応する第1のデータ形式の伴奏パターンを第2のデータ形式にパターン変換し、これに従って自動伴奏を進行させる第2のステップと、
この第2のステップにて進行する自動伴奏中に、上位桁値が入力された場合、この入力された上位桁値と下位桁値として入力され得る値とで指定可能な各伴奏番号にそれぞれ対応した第1のデータ形式の伴奏パターン群を、イベント間隔中にそれぞれ第2のデータ形式の伴奏パターン群に予めパターン変換しておく第3のステップと、
前記上位桁値の入力に続いて下位桁値が入力された場合、先に入力済みの上位桁値とこの入力された下位桁値とに応じて前記第1のステップが指定する伴奏番号に対応した第2のデータ形式の伴奏パターンを、前記第3のステップにて予めパターン変換しておいた第2のデータ形式の伴奏パターン群の内から選択し、選択した伴奏パターンに従った自動伴奏に変更する第4のステップと
を具備することを特徴とする自動伴奏方法。A first step of entering an upper digit value and a lower digit value and specifying an accompaniment number;
A second step of converting the accompaniment pattern in the first data format corresponding to the accompaniment number specified in the first step into a second data format and proceeding with the automatic accompaniment accordingly,
When an upper digit value is input during the automatic accompaniment that proceeds in the second step, it corresponds to each accompaniment number that can be specified by the input upper digit value and a value that can be input as the lower digit value. A third step of previously converting the accompaniment pattern group in the first data format into an accompaniment pattern group in the second data format during the event interval;
Corresponding to the accompaniment number specified by the first step according to the previously input upper digit value and the input lower digit value when the lower digit value is input subsequent to the input of the upper digit value The accompaniment pattern in the second data format is selected from the accompaniment pattern group in the second data format that has been converted in advance in the third step, and automatic accompaniment according to the selected accompaniment pattern is selected. An automatic accompaniment method comprising: changing a fourth step.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP36849997A JP3744667B2 (en) | 1997-12-29 | 1997-12-29 | Automatic accompaniment device and automatic accompaniment method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP36849997A JP3744667B2 (en) | 1997-12-29 | 1997-12-29 | Automatic accompaniment device and automatic accompaniment method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH11194772A JPH11194772A (en) | 1999-07-21 |
| JP3744667B2 true JP3744667B2 (en) | 2006-02-15 |
Family
ID=18491985
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP36849997A Expired - Fee Related JP3744667B2 (en) | 1997-12-29 | 1997-12-29 | Automatic accompaniment device and automatic accompaniment method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3744667B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6414163B2 (en) * | 2016-09-05 | 2018-10-31 | カシオ計算機株式会社 | Automatic performance device, automatic performance method, program, and electronic musical instrument |
-
1997
- 1997-12-29 JP JP36849997A patent/JP3744667B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPH11194772A (en) | 1999-07-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3744667B2 (en) | Automatic accompaniment device and automatic accompaniment method | |
| JP2002140067A (en) | Electronic musical instrument and registration method of electronic musical instrument | |
| JP2712954B2 (en) | Electronic musical instrument | |
| JP2712851B2 (en) | Electronic musical instrument | |
| JP4117596B2 (en) | Automatic performance device and automatic performance method | |
| JP3554770B2 (en) | Tone generator | |
| JP3809789B2 (en) | Performance guidance device and performance guidance method | |
| JP2596303B2 (en) | Electronic musical instrument | |
| JP3667387B2 (en) | Electronic musical instruments | |
| JPH05204297A (en) | Floor name generator | |
| JPH06259070A (en) | Electronic musical instrument | |
| JPH1185153A (en) | Playing equipment | |
| JP3870964B2 (en) | Music signal generation method, music signal generation device, and medium recording program | |
| JP3885708B2 (en) | Performance information editing apparatus, performance information editing method, and performance information editing program | |
| JP2825030B2 (en) | Electronic musical instrument | |
| JP2008015315A (en) | Musical sound generator and musical sound generation processing program | |
| JP2738217B2 (en) | Electronic musical instrument | |
| JP5181521B2 (en) | Automatic accompaniment device and program | |
| JP2842440B2 (en) | Automatic accompaniment device | |
| JP3543159B2 (en) | Automatic accompaniment device | |
| JP4032208B2 (en) | Key information processing apparatus and key information processing method | |
| JP4645285B2 (en) | Electronic musical instruments | |
| JPH06259075A (en) | Electronic musical instrument | |
| JP2002156974A (en) | Electronic musical instrument and registration method of electronic musical instrument | |
| JPH11119777A (en) | Sampling device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040323 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20051028 |
|
| 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: 20051102 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20051115 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091202 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101202 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111202 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111202 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121202 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121202 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131202 Year of fee payment: 8 |
|
| LAPS | Cancellation because of no payment of annual fees |