JP4471819B2 - 自動演奏装置 - Google Patents

自動演奏装置 Download PDF

Info

Publication number
JP4471819B2
JP4471819B2 JP2004334085A JP2004334085A JP4471819B2 JP 4471819 B2 JP4471819 B2 JP 4471819B2 JP 2004334085 A JP2004334085 A JP 2004334085A JP 2004334085 A JP2004334085 A JP 2004334085A JP 4471819 B2 JP4471819 B2 JP 4471819B2
Authority
JP
Japan
Prior art keywords
performance
tempo
tap
setting means
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004334085A
Other languages
English (en)
Other versions
JP2006145721A (ja
Inventor
昌之 中山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Roland Corp
Original Assignee
Roland Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Roland Corp filed Critical Roland Corp
Priority to JP2004334085A priority Critical patent/JP4471819B2/ja
Publication of JP2006145721A publication Critical patent/JP2006145721A/ja
Application granted granted Critical
Publication of JP4471819B2 publication Critical patent/JP4471819B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

本発明は、自動演奏装置に関し、特にタップ操作子を操作することにより任意のテンポを設定することができる自動演奏装置に関する。
従来、自動演奏装置(シーケンサ、自動リズム演奏装置や自動伴奏装置を含む)において、タップ操作子を所望の時間間隔で叩くタップ操作により自動演奏のテンポを設定するとともに自動演奏の拍頭位置をタップ操作が行なわれたタイミングに同期させることが行われている。
特開2003−91279号公報には、自動演奏中にタップ操作が行われた場合、そのタイミングにおいて、演奏位置が演奏情報の区切り位置である拍に到達していない場合は、演奏位置をその拍の位置まで進め、次の区間の演奏をタップ操作の時間間隔により定められるテンポで演奏を開始し、タップ操作が行われる前に演奏位置が拍に到達した場合には、自動演奏を停止してタップ操作が行われるまで待機し、タップ操作が行われると、次の区間の演奏をタップ操作の時間間隔により定められるテンポで再開する自動演奏装置が開示されている。
特開2003−91279号公報
しかしながら、上記した自動演奏装置では、タップ操作によりテンポの設定を完了し、タップ操作を中止して継続して自動演奏を行わせようとする場合には、タップ操作子とは別のスイッチを備え、そのスイッチを操作することにより、タップ操作の終了を入力する必要があった。従って、操作が煩雑であるとともに、スイッチの数が多くなり自動演奏装置の製造コストが高くなるという問題点があった。
本発明は、上述した問題点を解決するためになされたものであり、タップ操作が容易であり、製品の製造コストを安くすることができる自動演奏装置を提供することを目的としている。
上記課題を解決するために、請求項1記載の自動演奏装置は、演奏情報を記憶する記憶手段と、タップ操作を行うためのタップ操作子と、そのタップ操作子による今回の操作と前回の操作との時間間隔を計測する計測手段と、その計測手段により計測された時間間隔に基づいて自動演奏のテンポを設定するテンポ設定手段と、そのテンポ設定手段により設定されたテンポに応じて前記記憶手段に記憶されている演奏情報における演奏位置を歩進させる演奏位置設定手段と、その演奏位置設定手段により設定された演奏位置に応じて前記記憶手段に記憶された演奏情報を読出して自動演奏を行う自動演奏手段とを備えたものであって、所定間隔で設けられている演奏情報の区切り位置に対応して行われる前記タップ操作子の操作タイミングに基づいて前記演奏位置設定手段による演奏位置の歩進を制御する制御手段を備え、前記制御手段は、前記演奏位置設定手段により設定される演奏位置が、前記演奏情報の区切り位置のうち、前記タップ操作子による今回の操作に対応する区切り位置に到達する前に、前記タップ操作子による今回の操作が行われた場合には、演奏位置をその区切り位置に移動し、前記計測手段により計測された時間間隔に基づいて前記テンポ設定手段により設定されるテンポに応じて演奏位置を歩進、前記演奏位置設定手段により設定される演奏位置が、前記演奏情報の区切り位置のうち、前記タップ操作子による今回の操作に対応する区切り位置に到達する前に、前記タップ操作子による今回の操作が行われなかった場合には、引き続き演奏位置を歩進し、前記演奏位置設定手段により設定される演奏位置が前記区切り位置に到達した後に、前記タップ操作子による今回の操作が行われときに、前記計測手段により計測された該今回の操作と前記前回の操作との時間間隔に基づいて前記テンポ設定手段により設定されるテンポで前記区切り位置と前記今回の操作が行われたときの演奏位置との差だけ歩進するのに要する遅延時間の後、前記今回の操作が行われたときの演奏位置に引き続く演奏位置からの演奏が自動演奏手段によって行われるように、前記計測手段により計測された時間間隔に基づいて前記テンポ設定手段により設定されるテンポに応じて演奏位置を歩進するものである
請求項2記載の自動演奏装置は、請求項1記載の自動演奏装置において、前記制御手段は、前記演奏位置設定手段により設定される演奏位置が、前記演奏情報の区切り位置のうち、前記タップ操作子による今回の操作に対応する区切り位置に到達した後に、前記タップ操作子による今回の操作が行われた場合には、前記演奏位置設定手段による演奏位置の歩進を停止し、前記遅延時間が経過した後に、前記今回の操作が行われたときの演奏位置に引き続く演奏位置から、前記計測手段により計測された時間間隔に基づいて前記テンポ設定手段により設定されるテンポに応じて演奏位置を歩進するものである。
請求項1記載の自動演奏装置によれば、所定間隔で設けられている演奏情報の区切り位置に対応して行われるタップ操作子の操作タイミングに基づいて演奏位置設定手段による演奏位置の歩進が制御手段により制御される。ここで、演奏位置設定手段により設定される演奏位置が、演奏情報の区切り位置のうち、タップ操作子による今回の操作に対応する区切り位置に到達する前に、タップ操作子による今回の操作が行われた場合には、制御手段による制御によって、演奏位置がその区切り位置に移動されると共に、計測手段により計測された時間間隔に基づいてテンポ設定手段により設定されるテンポに応じて演奏位置が歩進される。一方で、演奏位置設定手段により設定される演奏位置が、演奏情報の区切り位置のうち、タップ操作子による今回の操作に対応する区切り位置に到達する前に、タップ操作子による今回の操作が行われなかった場合には、制御手段による制御によって引き続き演奏位置を歩進し、演奏位置設定手段により設定される演奏位置が区切り位置に到達した後に、タップ操作子による今回の操作が行われたときに、計測手段により計測された該今回の操作と前記前回の操作との時間間隔に基づいてテンポ設定手段により設定されるテンポで、区切り位置と今回の操作が行われたときの演奏位置との差だけ歩進するのに要する遅延時間の後に、今回の操作が行われたときの演奏位置に引き続く演奏位置からの演奏が自動演奏手段によって行われるように、制御手段による制御によって、計測手段により計測された時間間隔に基づいてテンポ設定手段により設定されるテンポに応じて演奏位置が歩進される。よって、タップ操作子を操作する時間間隔によりテンポを設定し、タップ操作子による操作を停止することにより設定されたテンポで演奏を継続させることができる。従って、タップ操作子を操作する時間間隔によりテンポを設定し、タップ操作子によるテンポの設定を終了したことを入力する操作子を別途備える場合に比べ、操作が容易であるとともに、自動演奏装置の製造コストを低くすることができるという効果がある。
請求項2記載の自動演奏装置によれば、請求項1記載の自動演奏装置の奏する効果に加え、次の効果を奏する。演奏位置設定手段により設定される演奏位置が、演奏情報の区切り位置のうち、タップ操作子による今回の操作に対応する区切り位置に到達した後に、タップ操作子による今回の操作が行われた場合には、制御手段による制御によって、演奏位置設定手段による演奏位置の歩進が停止され、当該停止から遅延時間が経過した後に、今回の操作が行われたときの演奏位置に引き続く演奏位置から、計測手段により計測された時間間隔に基づいてテンポ設定手段により設定されるテンポに応じて演奏位置が歩進される。よって、タップ操作子が操作されたときの演奏位置までの演奏情報が、再度読み出されることを防止することができる。よって、同じ部分が繰り返し演奏されることがないので、音楽的に好ましい演奏を行うことができるという効果がある。
以下、本発明の好ましい実施形態について、添付図面を参照して説明する。図1は、本発明の一実施形態である自動演奏装置1の電気的構成を示したブロック図である。自動演奏装置1は、CPU2(中央処理装置)と、そのCPU2により実行される制御プログラムを記憶したROM3(リード・オンリ・メモリ)と、CPU2が制御プログラムを実行する際の作業用のメモリエリアを提供するRAM4(ランダム・アクセス・メモリ)と、自動演奏装置1に指示を行う操作子6と、その操作子6により設定されたパラメータなどを表示する表示器7と、CPU2により送信された演奏情報に対応した楽音信号を生成する音源8と、その音源8により形成された楽音を増幅する増幅器9と、その増幅器9により増幅された楽音を放音するスピーカ10とにより構成されている。
ROM3には、図5,図6および図7に示すフローチャートの処理を行う制御プログラムや、自動演奏が行われる複数の演奏曲の演奏データなどが記憶されている。演奏曲としては、リズム演奏などのように繰り返し演奏されるパターンが複数記憶されているものとする。
次に、図2を参照して操作子6および表示器7が備えられた操作パネル10について説明する。図2には、操作子6を構成する各種の操作子ならびに表示器7を配置した操作パネル10の概略構成図である。
操作子6としては、パターンを選択するためのパターン選択ボタン6aと、自動演奏のテンポ値を設定するテンポ設定ボタン6bと、タップ操作を行うためのタップ操作ボタン6cと、選択された演奏データの自動演奏の開始または停止を指示するスタート/ストップボタン6dとが備えられている。
パターン選択ボタン6aは、上方に尖った正三角形の第1のボタンと下方に尖った正三角形の第2のボタンとにより構成され、第1のボタンを操作する毎に、ROM3に順に記憶されているパターンを昇順に順次に選択することができ、第2のボタンを操作することによりパターンを降順に順次に選択することができる。
テンポ設定ボタン6bは、パターン選択ボタン6aと同様に、上方に尖った正三角形の第1のボタンと下方に尖った正三角形の第2のボタンとにより構成され、第1のボタンを操作する毎に、テンポ値を増加することができ、第2のボタンを操作する毎に、テンポ値を減少することができる。
タップ操作ボタン6cは、長方形のボタンであって、このタップ操作ボタン6cを操作する間隔によりテンポ値を設定することができる。したがって、テンポ設定ボタン6bを操作することにより、テンポを表す数値を直接変更することによりテンポを設定することができ、タップ操作ボタン6cを操作することにより、その操作の時間間隔により感覚的にテンポを設定することができる。
スタート/ストップボタン6dは、タップ操作ボタン6cと同様に長方形のボタンであり、自動演奏が停止されているときに操作された場合には、自動演奏が開始され、自動演奏が行われているときに操作された場合は、自動演奏が停止される。
表示器7は、液晶ディスプレイ(LCD)により構成される表示画面7aと、4つのLED7bとにより構成されている。
表示画面7aには、パターン選択ボタン6aにより選択されたパターンとテンポ設定ボタン6bまたはタップ操作ボタン6cにより設定されたテンポの値が表示される。
4つのLED7bは、自動演奏の拍のタイミングを表示するもので、最も左端のLEDから順に、第1拍、第2拍、第3拍、第4拍に対応している。選択された曲が4拍子の場合には、自動演奏の進行に応じて第1拍を演奏するタイミングで第1拍に対応するLEDが点灯し、点灯の直後に消灯される。以降、第2拍、第3拍、第4拍それぞれの演奏タイミングで、それぞれの拍に対応するLEDが点灯および消灯される。
選択された曲が3拍子の場合には、第1拍、第2拍、第3拍のタイミングで、それぞれの拍に対応するLEDが点灯および消灯される。この表示により、使用者は、視覚によりいずれの拍が演奏されているのかを確認することができる。
次に、図3を参照して本発明による自動演奏装置1の構成を説明する。図3は、自動演奏装置1の主要な構成を機能的に示したブロック構成図である。操作パネル10に設けられた操作子6は、各操作子に対応した操作情報を発生し、当該操作情報に応じたイベントをCPU2により処理される自動演奏メイン処理部へ入力する。操作情報としては、自動演奏の開始を示すスタート情報、自動演奏の停止を示すストップ情報、自動演奏させるために選択されたパターンを示すパターン選択情報、タップボタン6cの操作を示すタップ情報がある。また、操作パネル10は、自動演奏メイン処理部から、所定の情報を表示器7の表示画面7aおよびLED7bへ表示するための表示指示を受け取る。
RAM4の演奏データ記憶領域には、図示しない外部メモリ(フレキシブルディスクやメモリカード)から演奏データをロードして格納することができ、また、RAM4の演奏データ記憶領域に格納された演奏データは外部メモリにセーブすることができる。
自動演奏メイン処理部は、パターン選択情報によるパターン選択指示に従って、外部メモリから選択されたパターンの演奏データをロードしてRAM4の演奏データ記憶領域に格納し、その演奏データをアドレス情報に従って読み出して音源8に出力する。音源8は、その演奏データを入力すると、演奏データに応じた音高と大きさの楽音を形成する。
CPU2に内蔵されるクロックタイマ2aは、自動演奏メイン処理部により所定の周期を設定され、自動演奏メイン処理部に対して設定された一定周期でクロックイベントを発行する。また、自動演奏メイン処理部は、クロックタイマ2aに対し、自動演奏の開始を示すスタート情報が入力されるとクロックイベントの発行を許可し、自動演奏の停止を示すストップ情報が入力されるとクロックイベントの発行を禁止する。
CPU2に内蔵されるタップ間隔計測タイマ2bは、タップ操作の時間間隔の計測を行うタイマであり、自動演奏メイン処理部によりタップ間隔の計測を指示されると、タップボタン6cが操作される時間間隔を計測して、その時間間隔を変数tとして自動演奏メイン処理部に与える。
次に図4を参照して、演奏データについて説明する。図4は、演奏データを構成するデータの一例を示している。演奏データは、演奏が行われる順に、時間に対応してイベントであるMIDIメッセージが記憶されている。時間は、MIDIメッセージが音源に送られる時刻を表し、この時間の単位は、ティックである。このティックとは、テンポ値に対応する時間間隔であり、テンポ値により特定される1拍の時間長さを所定の値(例えば、24)で除算した時間である。テンポ値は、1分当たりの拍数(beat per minuteを略してbpmという)で表される。例えば、テンポ値が120bpmであれば、1拍の長さは、500msecであり、これを24で除算すると1ティックは、20.83msecとなる。
MIDIメッセージは、MIDI規格により定められた情報で、音色などを設定するプログラムチェンジや、音量などを設定するコントロールチェンジや、発音の開始を指示するノートオンなどが規定されている。MIDIメッセージは、チャネル番号により、複数の演奏パートをそれぞれ制御することができる。
図4に示された例では、第1番目のデータは、時間が0に設定され、MIDIメッセージとしてプログラムチェンジが記憶されている。従って、演奏の開始と同時に、このプログラムチェンジが音源8に送られる。音源8は、このプログラムチェンジを受信すると、プログラムチェンジにより指定されるパートの音色をプログラムチェンジにより指定される音色に設定する。
第2番目のデータは、時間0に設定され、MIDIメッセージとして、コントロールチェンジが記憶されている。第1番目のデータの時間が0に設定されているので、このコントロールチェンジも演奏の開始と同時に音源8に送られる。音源8は、このコントロールチェンジを受信すると、コントロールチェンジにより指定されるパートの音量などを設定する。
第3番目のデータは、時間0に設定され、MIDIメッセージとして、ノートオンが記憶されている。このノートオンも演奏の開始と同時に音源8に送られる。音源8は、このノートオンを受信すると、ノートオンにより指定されるパートにおいて、ノートオンにより指定される音高の楽音をノートオンにより指定されるベロシティ(押鍵速度)に応じた音量で発音する。
第4番目のデータは、時間24に設定され、MIDIメッセージとして、ノートオンが記憶されている。従って時刻が24のタイミングで、この第4番目のノートオンが音源8に送られる。
次に、図5〜図7に示すフローチャートを参照してCPU2が実行する処理について説明する。まず、これらのフローチャートで使用される定数および変数について説明する。
TPQNは、1拍当たりのティック数(例えば24)を示す定数である。Cは、クロックイベントの発生時間間隔(例えば、1msec)を示す定数である。クロックタイマ2aは、この時間間隔Cで、クロックイベントを発生する。
TMAXは、設定可能な最も遅いテンポの1拍の時間を示す定数である。例えば、設定可能な最も遅いテンポを40bpmとすると、TMAXは、1.5secである。
tickは、現在のティック数を示す変数である。また、tempoは、テンポを表す変数であって、その単位を1秒当たりのティック数(tick/sec)とする。テンポは、一般には1分当たりの拍数(bpm)であるからテンポをN、1拍当たりのティック数(TPQN)を24とすると、tempo=N×24/60である。
また、delayは、タップ操作子が操作された場合に、その時のティック数から直近の拍のタイミングのティック数までの差を示す変数である。タップ操作ボタン6cが拍のタイミングの前に操作された場合には、このdelayの値は、正の値に設定され、タップ操作ボタン6cが拍のタイミングの後に操作された場合には、このdelayの値は、負の値に設定される。なお、この実施形態では、タップ操作ボタン6cが操作されるタイミングは、1拍(4分音符)の先頭のタイミングに対応するものとする。なお、タップ操作ボタン6cが操作されるタイミングを、例えば、半拍(8分音符)や2拍(2分音符)などに対応するようにしてもよい。
図5は、メイン処理を示すフローチャートであって、自動演奏装置1の電源が投入されてから遮断されるまで実行される処理である。まず、初期化処理を行う(S1)。この初期化処理としては、演奏位置である変数tickを0に、変数delayの値を0にそれぞれ設定し。表示器7に所定の初期画面を表示する処理などを行う。
次に、いずれかの操作子6が操作されたか否かを判断する(S2)。いずれの操作子6も操作されていない場合は(S2:No)、S11の処理へ進み、いずれかの操作子6が操作された場合は(S2:Yes)、タップボタン6cが操作されるタップイベントが発生したか否かを判断する(S3)。
タップイベントが発生した場合には、後述するタップイベント処理を行う(S4)。タップイベント処理を終了した場合、またはS3の処理においてタップイベントが発生していない場合(S3:No)は、テンポ設定ボタン6bが操作されてテンポ値が変更されたか否かを判断する(S5)。テンポ値が変更された場合は(S5:Yes)、表示画面7aに表示されたテンポ値を変更し、そのテンポ値に応じて変数tempoの値を算出する(S6:テンポ変更処理)。
テンポ変更処理を終了した場合、またはS5の処理においてテンポ設定ボタン6bが操作されていない場合は、次に、パターン選択ボタン6aが操作されたか否かを判断する(S7)。パターン選択ボタン6aが操作された場合は(S7:Yes)、その操作に応じ表示画面7aに表示されたパターン名を変更し、パターンを読み出す読み出しアドレスを選択されたパターンのアドレスに変更する(S8:パターン変更処理)。このアドレス変更は、自動演奏が行われているときに行ってもよいし、自動演奏が停止しているときに行ってもよい。
パターン変更処理を終了した場合、またはS7の処理においてパターン選択ボタン6aが操作されていない場合は、次に、スタート/ストップボタン6dが操作されたか否かを判断する(S9)。スタート/ストップボタン6dが操作された場合は(S9:Yes)、自動演奏が停止中であれば、自動演奏を開始する処理を行い、自動演奏が行われていれば、自動演奏を停止する処理を行う(S10:スタート/ストップ処理)。
自動演奏を開始する処理は、時間間隔Cでクロックイベントを発生するようにクロックタイマ2aを設定し、自動演奏を停止する処理は、クロックイベントの発生を停止するようにクロックタイマ2aを設定する処理である。
スタートストップ処理を終了した場合、またはS9の処理においてスタート/ストップボタン6dが操作されていない場合は、次に、クロックイベントが発生したか否かを判断する(S11)。このクロックイベントは、クロックタイマ2aがCPU2に指示するイベントである。このクロックイベントが発生した場合は(S11:Yes)、後述するクロックイベント処理を実行する(S12)。クロックイベントが発生していない場合(S11:No)およびクロックイベント処理を終了した場合は、S2の処理へ戻る。
次に、図6を参照してタップイベント処理について説明する。図6は、タップイベント処理を示すフローチャートである。タップ操作ボタン6cが操作されると、まず、変数delayの値を演算する(S21)。delayの値は、定常状態では、0に設定され、タップ操作ボタン6cが操作された場合に、演奏位置を調整するために設定される。
この演算は、タップ操作ボタン6cが操作された時の演奏位置であるティック数とタップ操作ボタン6cにより指示される拍のタイミングに対応する演奏位置との差である。この実施形態では、タップ操作ボタン6cが操作されたタイミングは、拍のタイミングであるものとする。
この演算を式で表すと、−((tick+TPQN/2)%TPQNーTPQN/2)となる。ここで、「%」は、正の剰余を表す演算子である。例えばA%Bは、AをBで割った余りであり、5%3は、2である。
この演算から分かるように、現在のテンポより速い時間間隔でタップ操作ボタン6cが操作された場合は、このdelayの値は、正の値に設定される。一方、現在のテンポより遅い時間間隔でタップ操作ボタン6cが操作された場合は、このdelayの値は負の値に設定される。
次に、タップ間隔計測タイマ2bから計測値tを取得する(S22)。次に、タップ間隔計測タイマ2bの計測値をクリアし、次にタップ操作ボタン6cが操作されるまでの時間の計測を開始するようにタップ間隔計測タイマ2bを設定する(S23)。
次に、タップ間隔計測タイマ2bから取得した時間tが設定することができる最も遅いテンポの周期TMAXに等しいまたは小さいか否かを判断する(S24)。時間tが、TMAXに等しいかまたは小さい場合は(S24:Yes)、変数tempoの値を、TPQN/tとする(S25)。変数tempoの値をTPQN/tとした場合、またはS25の処理において時間tが、TMAXより大きい場合は、(S24:No)このタップイベント処理を終了し、メイン処理へ戻る。
なお、時間tがTMAXに等しいまたは小さいか否かを判断する理由は、時間tが、TMAXより大きい場合は、タップ操作ボタン6cが、しばらく操作されていない状態から、操作された場合であると判断し、その時間tは無視し、その次に時間tがTMAXに等しいかまたは小さい場合に、その時間間隔tに基づいてtempo値を変更するためである。
次に図7を参照して、クロックイベント処理について説明する。図7は、クロックイベント処理を示すフローチャートである。クロックタイマ2aにより所定の時間間隔で、クロックイベントが発生した場合は、まず、テンポ値に対するその時間間隔のティック数であるdtを演算する(S31)。この演算式は、C×tempoである。
次に、変数delayの値をdtだけ進める(S32)。次に、現在のdelayの値が正の値か否かを判断する(S33)。delayの値が正の値である場合は、現在のティックtickからtick+delayまでの演奏データを音源8へ出力する(S34)。次に、tickの値をdelayの値だけ進め(S35)、delayの値を0に設定する(S36)。S33の処理でdelayの値が正の値ではない場合(S33:No)、またはS36の処理を終了した場合は、メイン処理へ戻る。
このクロックイベント処理では、タップ操作ボタン6cが操作されない定常状態では、S36の処理においてdelayの値が0に設定され、次にクロックが発生した場合には、S32の処理でdtの値がdelayの値に加算されるので、delayの値はdtの値となりS33の判断は、常にYesとなって、演奏位置を表すtick値が歩進される。
一方、タップ操作ボタン6cが操作され、そのタイミングが拍(直近の拍)の前であれば、delayの値は正の値に設定されるので、S33の判断は、Yesとなって、tickの値が、拍のタイミングの演奏位置に設定される。また、タップ操作ボタン6cが操作され、そのタイミングが拍の後であれば、delayの値が負の値に設定され、S33の判断は、Noとなりdelayの値が正の値になるまで、tickの値は、歩進されない。
次に、図8に示すグラフを参照して、具体的なテンポが変化する様子について説明する。図8(a)は、現在のテンポより遅い時間間隔でタップ操作ボタン6cが操作された場合を、図8(b)は、現在のテンポより速い時間間隔でタップ操作ボタン6cが操作された場合を、それぞれ、時間の経過に従って読み出し位置を示すティックの値が変化する様子を示すグラフである。図8(a),(b)は、ともに横軸に時間(sec)を、縦軸にティック数を表し、いずれも現在のテンポ値を120とし、現在のテンポによる時間に対するティック値を一点鎖線で表している。この一点鎖線は、時刻0.5のとき、tickの値24、時刻1.0のとき、tickの値48をとる。
図8(a)において、時刻A(0.625sec)に最初のタップ操作ボタン6cが操作されたものとする。すなわち、タップ操作が行われた時刻Aと、それ以前に操作された時刻との間隔が十分く、時刻Aにおけるtickの値が30であったものとする。
この場合は、図6に示すフローチャートのS21の処理で、tickが30、TPQNが24、であるからdelayは、−6tickとなる。次にS23の処理によりタップ間隔計測タイマ2bによる計測値tが取得されるが、S25の処理において、この値tはTMAXに比べ十分大きな値であるので、変数tempoは、変更されない。
このタップイベント処理が行われた後、図7に示すフローチャートの処理において、クロックイベントが発生するとS32の処理で、delayの値にdtの値が加算される。 delayの値が負である間は、S34の処理は行われないので、新たな演奏データがメモリから読み出されず、音源8から新たな楽音は発生されない。
delayの値にdtが加算され、delayの値が正になると、tickの値に応じて演奏データが読み出され、音源8へ出力される(S34)。
したがって、図8(a)に示すように、次にタップ操作ボタン6cが操作される時刻Bまでは、現在のテンポで演奏が行われるので、グラフの傾きは、現在のテンポの傾きと同一である。
次に、時刻B(1.25sec)において、タップ操作ボタン6cが操作されたものとする。このとき、tickの値は、54である。この場合もdelayの値は、S21の処理で−6となる。次ぎにS23の処理によりタップ間隔計測タイマ2bの計測値tは、1.25−0.625=0.625となる。この値は、TMAXの値より小さいので、新たなtempoの値が24/0.625として設定される(S25)。
図7に示すフローチャートの処理では、この新たなtempo値に基づいてdt値が設定され、delay値は、クロックイベントが発生する度に変更される。delayの値が負の値である間は、tickの値は、変更されず、delayの値が、正の値になると、クロックイベントが発生する度にtickの値が変更される。従って、図8(a)の時刻BからCの間に示すように、tick値は、タップ操作ボタン6cが操作された時間間隔により設定された新たなテンポでtickが歩進される。時刻Bから、時刻Aと時刻Bとの時間間隔と同じ時間間隔である時刻C(1.875sec)において、タップ操作ボタン6cが操作された場合は、タップ操作により指示される演奏位置であるtickの値が72であって一致し、delayの値は、0となる。このように設定された後、タップ操作を中止してもそれまでにタップ操作により設定されたテンポで演奏が継続される。
図8(b)は、図8(a)の場合とは逆に、テンポを速くするようにタップ操作ボタン6cが操作された場合を示し、時刻D(0.375sec)において、最初の操作が行われたものとする。この場合は、tick値が18であり、TPQNの値である24に到達していない。図6に示すフローチャートのS21の処理で、tickが18、TPQNが24、であるからdelayは、+6tickとなる。次にS22の処理により、tickの値が18+6=24に変更される。次にS23の処理によりタップ間隔計測タイマ2bによる計測値tが取得されるが、S25の処理において、この値はTMAXに比べ十分大きな値であるので、変数tempoは、変更されない。
このタップイベント処理が行われた後、図7に示すフローチャートのクロックイベント処理において、クロックイベントが発生すると、S32の処理で、delayの値が正であるので、tickの値に対応する演奏位置より以前の演奏データで、まだ音源8に出力されていない演奏データは、全て音源8に出力される。その後、時刻Eまで、同じテンポで演奏が行われる。したがって、図8(b)に示すように、次にタップ操作ボタン6cが操作される時刻Eまでは、現在のテンポで演奏が行われるので、グラフの傾きは、現在のテンポの傾きと同じである。
次に、時刻E(0.75sec)において、タップ操作ボタン6cが操作されたものとする。このとき、tickの値は、42である。この場合にも、delayの値はS21の処理で+6となり、tickの値は、42+6=48に変更される。
S23の処理で、タップ間隔計測タイマ2bの計測値tは、0.75−0.375=
0.375となる。この値はTMAXの値より小さいので、新たなtempoの値が、24/0.375として設定される。
以上説明したように、本発明による自動演奏装置は、タップ操作が行われたとき、演奏位置がタップ操作に対応する演奏の区切り位置に到達していない場合は、演奏位置を区切り位置に移動し、タップ操作により設定された新たなテンポに変更して演奏を行い、演奏位置がタップ操作に対応する区切り位置に到達するまでにタップ操作が行われない場合は、引き続き演奏を行うとともに、その後タップ操作が行われた場合は、演奏位置を、タップ操作に対応する演奏の区切り位置に移動し、タップ操作により設定される新たなテンポで演奏を行うように制御している。したがって、タップ操作により適切なテンポを設定することができた場合に、タップ操作を中止するだけで、その設定されたテンポで演奏を続けることができるので、操作が簡単であるとともに、タップ操作によるテンポの設定を終了したことを入力するための操作子が不要であり、自動演奏装置の製造コストを安くすることができる。
なお、請求項1でいう、テンポ設定手段は、図7に示すフローチャートのS31の処理が該当し、演奏位置設定手段は、図7に示すフローチャートのS35の処理が該当し、自動演奏手段は、図7に示すフローチャートのS34の処理が該当し、制御手段は、図6に示すフローチャートの処理と、図7に示すフローチャートの処理とが該当する。
以上、実施形態に基づき本発明を説明したが、本発明は上記実施形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の改良変形が可能であることは容易に推察できるものである。
例えば、上記実施形態では、タップ操作ボタン6cが操作された場合に、演奏の区切り位置として、演奏の拍(4分音符)のタイミングを対応付けたが、半拍(8分音符)あるいは2分音符などに対応付けるようにしてもよい。また、その場合に、タップタイミングにいずれの音符を対応付けるかを、任意に設定できるようにしてもよい。
また、上記実施形態ではタップ操作が行われたとき、演奏位置がタップ操作に対応する演奏の区切り位置をすでに通過している場合は、演奏の区切り位置とタップ操作が行なわれたときの演奏位置との差に対応する遅延時間の間演奏位置の歩進を停止するように制御したが、演奏位置を演奏の区切り位置に戻し、すでに読出した区切り位置からタップ操作が行われた時の演奏位置までの演奏データを再度読み出して発音するようにしてもよい。
本発明の実施形態による自動演奏装置の電気的構成を示すブロック図である。 自動演奏装置の操作パネルを示す平面図である。 自動演奏装置の主要な構成を機能的に示したブロック構成図である。 演奏データを示す図である。 メイン処理を示すフローチャートである。 タップイベント処理を示すフローチャートである。 クロックイベント処理を示すフローチャートである。 時間の進行に対し、演奏データを読み出す読み出し位置の変化を示すグラフであり、(a)は、テンポが遅くなる場合を、(b)は、テンポが速くなる場合をそれぞれ示す図である。
1 自動演奏装置
2 CPU
2b タップ間隔計測タイマ(計測手段)
3 ROM(記憶手段)
6 操作子
6c タップ操作ボタン(タップ操作子)
7 表示器
8 音源

Claims (2)

  1. 演奏情報を記憶する記憶手段と、タップ操作を行うためのタップ操作子と、そのタップ操作子による今回の操作と前回の操作との時間間隔を計測する計測手段と、その計測手段により計測された時間間隔に基づいて自動演奏のテンポを設定するテンポ設定手段と、そのテンポ設定手段により設定されたテンポに応じて前記記憶手段に記憶されている演奏情報における演奏位置を歩進させる演奏位置設定手段と、その演奏位置設定手段により設定された演奏位置に応じて前記記憶手段に記憶された演奏情報を読出して自動演奏を行う自動演奏手段とを備えた自動演奏装置において、
    所定間隔で設けられている演奏情報の区切り位置に対応して行われる前記タップ操作子の操作タイミングに基づいて前記演奏位置設定手段による演奏位置の歩進を制御する制御手段を備え、
    前記制御手段は、
    前記演奏位置設定手段により設定される演奏位置が、前記演奏情報の区切り位置のうち、前記タップ操作子による今回の操作に対応する区切り位置に到達する前に、前記タップ操作子による今回の操作が行われた場合には、演奏位置をその区切り位置に移動し、前記計測手段により計測された時間間隔に基づいて前記テンポ設定手段により設定されるテンポに応じて演奏位置を歩進
    前記演奏位置設定手段により設定される演奏位置が、前記演奏情報の区切り位置のうち、前記タップ操作子による今回の操作に対応する区切り位置に到達する前に、前記タップ操作子による今回の操作が行われなかった場合には、引き続き演奏位置を歩進し、前記演奏位置設定手段により設定される演奏位置が前記区切り位置に到達した後に、前記タップ操作子による今回の操作が行われときに、前記計測手段により計測された該今回の操作と前記前回の操作との時間間隔に基づいて前記テンポ設定手段により設定されるテンポで前記区切り位置と前記今回の操作が行われたときの演奏位置との差だけ歩進するのに要する遅延時間の後、前記今回の操作が行われたときの演奏位置に引き続く演奏位置からの演奏が自動演奏手段によって行われるように、前記計測手段により計測された時間間隔に基づいて前記テンポ設定手段により設定されるテンポに応じて演奏位置を歩進するものであることを特徴とする自動演奏装置。
  2. 前記制御手段は、前記演奏位置設定手段により設定される演奏位置が、前記演奏情報の区切り位置のうち、前記タップ操作子による今回の操作に対応する区切り位置に到達した後に、前記タップ操作子による今回の操作が行われた場合には、前記演奏位置設定手段による演奏位置の歩進を停止し、前記遅延時間が経過した後に、前記今回の操作が行われたときの演奏位置に引き続く演奏位置から、前記計測手段により計測された時間間隔に基づいて前記テンポ設定手段により設定されるテンポに応じて演奏位置を歩進するものであることを特徴とする請求項1記載の自動演奏装置。
JP2004334085A 2004-11-18 2004-11-18 自動演奏装置 Expired - Fee Related JP4471819B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004334085A JP4471819B2 (ja) 2004-11-18 2004-11-18 自動演奏装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004334085A JP4471819B2 (ja) 2004-11-18 2004-11-18 自動演奏装置

Publications (2)

Publication Number Publication Date
JP2006145721A JP2006145721A (ja) 2006-06-08
JP4471819B2 true JP4471819B2 (ja) 2010-06-02

Family

ID=36625523

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004334085A Expired - Fee Related JP4471819B2 (ja) 2004-11-18 2004-11-18 自動演奏装置

Country Status (1)

Country Link
JP (1) JP4471819B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5179905B2 (ja) * 2008-03-11 2013-04-10 ローランド株式会社 演奏装置

Also Published As

Publication number Publication date
JP2006145721A (ja) 2006-06-08

Similar Documents

Publication Publication Date Title
JPH09292878A (ja) 演奏支援装置
JP3922224B2 (ja) 自動演奏装置及びプログラム
JP4471819B2 (ja) 自動演奏装置
JP4628298B2 (ja) ピアノロール表示装置およびピアノロール表示プログラム
JP2631722B2 (ja) 自動演奏装置
JP2004317819A (ja) 自動演奏装置
JP5165961B2 (ja) 電子楽器
JP2006126697A (ja) 自動伴奏装置
JP5011033B2 (ja) 電子楽器
WO2022201945A1 (ja) 自動演奏装置、電子楽器、演奏システム、自動演奏方法、及びプログラム
JP5855837B2 (ja) 電子メトロノーム
JP5419171B2 (ja) 電子楽器
JP4241833B2 (ja) 自動演奏装置及びプログラム
JP5164401B2 (ja) 自動演奏装置および自動演奏プログラム
JP4572980B2 (ja) 自動演奏装置及びプログラム
JPH10293579A (ja) 自動演奏装置のマーカー操作装置
JP4684168B2 (ja) 鍵盤表示装置および鍵盤表示プログラム
JP4942938B2 (ja) 自動伴奏装置
JP2017015957A (ja) 演奏記録装置およびプログラム
JP3649117B2 (ja) 楽音再生装置及び方法並びに記憶媒体
JP5652356B2 (ja) 音源制御装置及び音源制御プログラム
JP2001296859A (ja) 楽譜表示装置
JPH1124659A (ja) 楽譜表示装置
JP2024053765A (ja) 電子機器、電子楽器システム、再生制御方法及びプログラム
JP2537963B2 (ja) 自動演奏装置

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20061109

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071029

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081209

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090206

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100302

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

Free format text: PAYMENT UNTIL: 20130312

Year of fee payment: 3

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140312

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees