(57)【特許請求の範囲】
【請求項１】
ソングの再生に応じて、該ソングを演奏するのに操作すべき演奏操作子を指示する指示手段と、
前記ソングの再生テンポを、ユーザーが前記演奏操作子を操作したタイミングに基づいて制御するテンポ制御手段と、
前記指示手段がユーザーに指示を出すタイミングを制御する指示タイミング制御手段と、
前記テンポ制御手段を無効化する無効化手段と、
を備え
前記無効化手段により前記テンポ制御手段が無効化された際には、前記指示タイミング制御手段により設定される指示タイミングが、前記テンポ制御手段が有効である場合と比較して遅くなることを特徴とする電子楽器。
【請求項２】
前記テンポ制御手段は、ユーザーによる前記演奏操作子の操作タイミングと、ソング中のノートオンタイミングとを比較することによって、再生テンポを決定することを特徴とする請求項１に記載の電子楽器。
【請求項３】
前記指示手段により指示された前記演奏操作子がユーザーによって操作されなかった時に前記ソングの再生を一時停止して、ユーザーにより前記演奏操作子が操作された時に前記ソングの再生を再開することを特徴とする請求項１または２に記載の電子楽器。
【請求項４】
ソングの再生に応じて、該ソングを演奏するのに操作すべき演奏操作子を指示する指示手段と、
前記ソングの再生テンポを、ユーザーが前記演奏操作子を操作したタイミングに基づいて制御するテンポ制御手段と、
前記指示手段がユーザーに指示を出すタイミングを制御する指示タイミング制御手段と、
前記テンポ制御手段を無効化する無効化手段と、
を備え
前記ソングにおける発音中の楽音を、ユーザーによる前記演奏操作子の操作終了に応じて発音終了し、前記ソング中のノートオフデータを無視すると共に、前記無効化手段により前記テンポ制御手段が無効化された際には、前記ソングにおける発音中の楽音を、前記ソング中のノートオフデータで発音終了することを特徴とする電子楽器。
【請求項５】
前記テンポ制御手段は、ユーザーによる前記演奏操作子の操作タイミングと、ソング中のノートオンタイミングとを比較することによって、再生テンポを決定することを特徴とする請求項４に記載の電子楽器。
【請求項６】
前記指示手段により指示された前記演奏操作子がユーザーによって操作されなかった時に前記ソングの再生を一時停止して、ユーザーにより前記演奏操作子が操作された時に前記ソングの再生を再開することを特徴とする請求項４または５に記載の電子楽器。
【請求項７】
コンピューターに、
ソングの再生に応じて、該ソングを演奏するのに操作すべき演奏操作子を指示する指示機能と、
前記ソングの再生テンポを、ユーザーが前記演奏操作子を操作したタイミングに基づいて制御するテンポ制御機能と、
前記指示機能がユーザーに指示を出すタイミングを制御する指示タイミング制御機能と、
前記テンポ制御機能を無効化する無効化機能と、
を実現させて、
前記無効化機能により前記テンポ制御機能が無効化された際には、前記指示タイミング制御機能により設定される指示タイミングが、テンポ制御機能が有効である場合と比較して遅くなることを特徴とするプログラム。
【請求項８】
コンピューターに、
ソングの再生に応じて、該ソングを演奏するのに操作すべき演奏操作子を指示する指示機能と、
前記ソングの再生テンポを、ユーザーが前記演奏操作子を操作したタイミングに基づいて制御するテンポ制御機能と、
前記指示機能がユーザーに指示を出すタイミングを制御する指示タイミング制御機能と、
前記テンポ制御機能を無効化する無効化機能と、
を実現させて、
前記ソングにおける発音中の楽音を、ユーザーによる前記演奏操作子の操作終了に応じて発音終了し、前記ソング中のノートオフデータを無視すると共に、前記無効化機能により前記テンポ制御機能が無効化された際には、前記ソングにおける発音中の楽音を、前記ソング中のノートオフデータで発音終了することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、演奏データを用いて演奏すべき演奏操作子を指示することによって演奏をガイドする電子楽器に関する。
【背景技術】
【０００２】
ある曲を楽器で弾きたいと思っても、初心者にとっては、いつ、どの音を、どのくらいの長さで弾けばいいのかがわからないことから、弾きたいソングの演奏データを再生し、弾くべきタイミングがきたら、どの音を弾くかをディスプレイ上やガイドランプなどで提示してくれるレッスン用の演奏ガイドを有する電子楽器が従来から知られている。この電子楽器の演奏ガイドでは、練習したい曲を再生してユーザーが弾くべきタイミングに到達した際に、弾くべき音に対応する鍵をユーザーに指示するようにしているので、どの音をいつ演奏すればよいかを学習できるようになる。また、指示された鍵が所定のタイミングで演奏操作されなかったときに、指示された鍵が演奏されるまで待つウェイティング状態となる演奏ガイドも従来から知られている。このウェイティング状態では、ソングの進行に従った演奏データの読出しを中断して指示された鍵をユーザーが押すまで待つようにし、指示された鍵がユーザーにより押された時に、当該押鍵に対応する音を発音すると共に、続きの演奏データの読み出しを開始してソングの再生を再開するようにしている。
【０００３】
従来の演奏ガイドの動作を鍵盤楽器を例に挙げて図８を参照して説明する。
図８の一番上の段には、ユーザーが演奏しようとするソングの自動演奏データを音符を時系列的に並べて表しており、この各音符の音符長がその下の段に細長い長方形で示されている。また、その下の段には上記の各音符に対応する鍵盤をユーザーが押鍵してから離鍵するまでの押鍵期間が細長い長方形で示されている。ただし、各音符のノートナンバは図示されていない。このような図８において、ｔ１，ｔ２，ｔ３，ｔ４，ｔ５，・・・の時刻は各拍の開始時刻であり、各拍の開始時刻間の長さが１拍に相当している。自動演奏データを表す最初の四分音符ｎ１の発音タイミングは時刻ｔ１とされており、次の四分音符ｎ２の発音タイミングは時刻ｔ２とされており、さらに次の２分音符ｎ３の発音タイミングは時刻ｔ３とされている。
【０００４】
演奏ガイドはオン／オフすることができ、演奏をする際に演奏ガイドがオンされると、自動演奏データが順次読み出され、まず四分音符ｎ１の発音タイミングの時刻ｔ１の所定期間Ｔだけ前の時刻ｔ０１において当該四分音符ｎ１の音高に対応する鍵を指示するガイドランプが点灯される。時刻ｔ０１でガイドランプが点灯されたものの、ユーザーは発音タイミングｔ１までにガイドランプで指示された鍵を押鍵しなかったとする。これにより、ウェイティング状態となって演奏データの読出しを中断して指示された鍵をユーザーが押すまで待つようになる。ここで、ガイドランプで指示された鍵をユーザーが時刻ｔ１より遅れた時刻ｔ１’で押鍵したとする。これにより、ガイドランプが消灯され時刻ｔ１’から押鍵された鍵の音高で発音開始されて、離鍵されるまでの期間発音されると共に、ウェイティング状態が解除されて次の演奏データが読み出され、次の四分音符ｎ２に対するガイドの準備が行われるようになる。なお、時刻ｔ０１から時刻ｔ１までは所定期間Ｔとされ、所定期間Ｔは、例えば３２分音符長に相当する短い期間が設定されている。また、ガイドランプにより指示された鍵とは異なる鍵が押鍵された場合はミスタッチと判定されるため、時刻ｔ１までに正解押鍵がなかったとみなされてウェイティング状態となり、指示された鍵が押鍵される正解押鍵まで待つようになる。
【０００５】
上記したように、ガイドランプで指示された四分音符ｎ１の音高に対応する鍵が押鍵された場合は、次の自動演奏データが読み出され、四分音符ｎ１の押鍵ｔ１’の１拍後であるｔ２０が四分音符ｎ２の発音タイミングとされるため、時刻ｔ２０の所定期間Ｔだけ前の時刻において当該四分音符ｎ２の音高に対応する鍵を指示するガイドランプが点灯されて、四分音符ｎ２の演奏ガイドが行われる。このように、四分音符ｎ２、二分音符ｎ３の演奏データについても同様に、それぞれの発音タイミングの時刻の所定期間Ｔだけ前の時刻において、それぞれの音符ｎ２，ｎ３の音高に対応する鍵を指示するガイドランプが点灯されて、各音符に対する演奏ガイドが行われる。このような演奏ガイドが行われたものの、図８に示す場合はユーザーが各音符ｎ２，ｎ３のそれぞれの発音タイミングまでにガイドランプで指示された鍵を押鍵していない。これにより、各音符ｎ２，ｎ３のそれぞれの発音タイミングにおいてウェイティング状態となる。そして、ユーザーは発音タイミングｔ２０より遅れた時刻ｔ２’において四分音符ｎ２に対応する鍵を押鍵し、ウェイティング状態が解除される。また、ユーザーは発音タイミングｔ３０より遅れた時刻ｔ３’において二分音符ｎ３に対応する鍵を押鍵し、ウェイティング状態が解除される。正解押鍵されてウェイティング状態が解除される際には、演奏ガイドされている音符の音高、すなわち押鍵された鍵の音高で発音開始されて、離鍵されるまでの期間発音されると共に、次の演奏データが読み出されて、次の音符に対するガイドの準備が行われるようになる。
【０００６】
上記したガイド機能では、練習したい曲を再生してユーザーが押鍵すべきタイミングに到達する直前に、押鍵すべき鍵がユーザーにガイド指示される。そして、ガイド指示された鍵を本来の発音タイミングまでにユーザーが押鍵しないとウェイティング状態となり、ユーザーがガイド指示された鍵を押鍵すると続きの再生が再開されるようになる。また、各音の発音期間はユーザーが鍵を押鍵してから離鍵するまでの期間とされる。このガイド機能では、押鍵タイミングと押鍵すべきノートが示されるのみで離鍵タイミングは示されない。このため、ユーザーの離鍵が早すぎるとその音の発音期間が短くなって演奏が途切れ途切れになってしまうようになる。
そこで、これを解決するために、離鍵すべきタイミングも学習できるようにした演奏ガイドも従来知られている。この従来の演奏ガイドでは、ユーザーの離鍵タイミングに関わらず、曲データに記録された音符長が経過するまでは発音し、経過した時点で自動的に発音停止するようにしている。これにより、ユーザーが正しいタイミングで離鍵できなくてもうまく聞こえ、また練習を繰り返すうちにどこで離鍵するかを習得できるようになる。
【０００７】
このような従来の演奏ガイドの動作を図９を参照して説明する。ここでも、鍵盤楽器を例に挙げて説明する。
図９の一番上の段には、ユーザーが演奏しようとするソングの自動演奏データを音符を時系列的に並べて表しており、この各音符の音符長がその下の段に細長い長方形で示されている。また、その下の段にはユーザーが鍵を押鍵した際の各音の押鍵から離鍵までの期間が細長い長方形で示されている。このような図９において、ｔ１，ｔ２，ｔ３，ｔ４，・・・の時刻は各拍の開始時刻であり、各拍の開始時刻間の長さが１拍に相当している。自動演奏データを表す最初の四分音符ｎ１０の発音タイミングは時刻ｔ１とされており、次の四分音符ｎ１１の発音タイミングは時刻ｔ２とされており、次の四分音符ｎ１２の発音タイミングは時刻ｔ３とされており、さらに次の四分音符ｎ１３の発音タイミングは時刻ｔ４とされている。四分音符ｎ１０の音符長はｔａ１、四分音符ｎ１１の音符長はｔａ２、四分音符ｎ１２の音符長はｔａ３、四分音符ｎ１３の音符長はｔａ４とされているが、音符ｎ１０ないし音符ｎ１３は同じ四分音符なので音符長ｔａ１ないし音符長ｔａ４は同じ長さとなる。
【０００８】
演奏をする際に演奏ガイドがオンされると、自動演奏データが順次読み出され、図示されていないが四分音符ｎ１０の発音タイミングの時刻ｔ１の所定期間だけ前において当該四分音符ｎ１０の音高に対応する鍵を指示するガイドランプが点灯される。ユーザーは点灯されたガイドランプを見て、ガイドランプで指示された鍵を時刻ｔ１で押鍵し期間ｔｂ１の間押鍵し続けたとする。この場合、期間ｔｂ１は四分音符ｎ１０の音符長ｔａ１より短いが、実際に発音される音の長さは音符長ｔａ１まで伸ばされる。また、ガイドランプで指示された四分音符ｎ１０の音高に対応する鍵が押鍵された場合は、次の自動演奏データが読み出され四分音符ｎ１１の発音タイミングの時刻ｔ２の所定期間だけ前において当該四分音符ｎ１１の音高に対応する鍵を指示するガイドランプが点灯され、ユーザーは同様にしてガイドランプで指示された鍵を時刻ｔ２で押鍵し期間ｔｂ２の間押鍵し続けたとする。この場合、期間ｔｂ２は四分音符ｎ１１の音符長ｔａ２より短いが、実際に発音される音の長さは音符長ｔａ２まで伸ばされる。さらに、ガイドランプで指示された四分音符ｎ１１の音高に対応する鍵が演奏操作された場合は、次の自動演奏データが読み出され四分音符ｎ１２の発音タイミングの時刻ｔ３の所定期間だけ前において当該四分音符ｎ１２の音高に対応する鍵を指示するガイドランプが点灯され、ユーザーは同様にしてガイドランプで指示された鍵を時刻ｔ３で押鍵し期間ｔｂ３の間押鍵し続けたとする。この場合、期間ｔｂ３は四分音符ｎ１２の音符長ｔａ３より長いが、実際に発音される音の長さは音符長ｔａ３まで縮められる。
これにより、ユーザーの離鍵タイミングに関わらず、曲データに記録された音符長が経過するまでは発音されるようになる。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特許第２７０７８５３号公報
【特許文献２】特開２００４−１０１９７９号公報
【非特許文献】
【００１０】
【非特許文献１】ヤマハ株式会社  ポータトーンEZJ-210取扱説明書，P.32，［online］, ［平成２２年１２月  ８日検索］，インターネット<http://www2.yamaha.co.jp/manual/pdf/emi/japan/port/ezj210_ja_om_a0.pdf>
【発明の概要】
【発明が解決しようとする課題】
【００１１】
従来の図８に示す演奏ガイドでは、演奏ガイドされている音符の発音タイミングの時刻を超えても指示された鍵をユーザーが押鍵しない場合はウェイティング状態となり、指示された鍵をユーザーが押鍵するまで待つようになる。そして、演奏ガイドにより指示された演奏すべき鍵が押鍵された場合は、当該鍵に対応する音が発音開始される。このような演奏ガイドでは、練習したい曲を再生してユーザーが弾くべきタイミングの所定期間Ｔだけ前に到達すると、弾くべき音がユーザーにガイド指示され、ガイド指示された鍵をユーザーが押鍵するようになる。この場合、所定期間Ｔは、例えば３２分音符長と短い期間に設定されている。このように、所定期間Ｔが短く設定されているため、指示されたタイミングで押鍵するだけで的確な演奏ができるが、次に押鍵すべき音が指示されるまでは待っていなければならない。そのため、次に押鍵すべき音をすでに理解しているユーザーが、図８の最下段に示すように指示されるべき鍵を所定期間Ｔより前に押鍵した場合は、ミスタッチとみなされてしまう。このため、ユーザーが楽譜どおりに弾いているつもりでも、演奏ガイドで許容される以上に早く弾いてしまうと発音されないことになる。
【００１２】
また、図９に示すようにユーザーがガイドランプで指示された四分音符ｎ１２に対応する鍵を時刻ｔ３で押鍵して１拍を超える期間ｔｂ３の間押鍵し続けた場合は、期間ｔｂ３の終了時刻が次の四分音符ｎ１３の発音タイミングの時刻ｔ４を越えるようになる。四分音符ｎ１３のガイドはｔ４よりも所定期間Ｔだけ前において開始されるが、ユーザーはｔｂ３が終了したあとでｎ１３を押鍵することになる。ｎ１２の発音は音符長ｔａ３で自動的に消音され、時刻ｔ４で演奏はウェイティングされており、ｔ４より時間Ｄｔだけ遅れた時刻ｔ４’でユーザーがｎ１３を押鍵するとそこから演奏が再開される。ユーザーがガイドランプで指示された鍵を時刻ｔ４’で押鍵し期間ｔｂ４の間押鍵し続けた場合、期間ｔｂ４は四分音符ｎ１３の音符長ｔａ４より短いが、実際に発音される音の長さは音符長ｔａ４まで伸ばされる。なお、拍の開始時刻ｔ４’が遅れても１拍の長さであるテンポは一定とされることから、時刻ｔ４’以降の拍の開始時刻ｔ４’，ｔ５’，ｔ６’・・・の時刻間の長さは変化しない。
このように、従来の図９に示す演奏ガイドでは、ユーザーが離鍵するタイミングに関わらずテンポが一定であることから、ユーザーが軽快に弾きたいとの意思をこめて早く離鍵しても次の拍のガイドが早く開始されることはないので、長い間待たねばならない。また、ユーザーがゆったりと弾きたいとの意思をこめて遅く離鍵しても次の拍のガイドが遅れて始まることはないので、ユーザーの離鍵の前に次の拍のガイドが始まってしまう。このため、ユーザーにとって演奏ガイドが使いにくいと感じてしまう。
【００１３】
このように、従来のガイド機能を有する電子楽器では、指示されたとおりに弾くだけでなく軽快に速く弾いたり感情をこめてゆっくり弾いたりする要求に応えられないという問題点があった。
そこで、本発明は軽快に速く弾いたり感情をこめてゆっくり弾いたりする要求に応えられる演奏ガイドを有する電子楽器を提供することを目的としている。
【課題を解決するための手段】
【００１４】
上記目的を達成するために、本発明の電子楽器は、ソングの再生に応じて、該ソングを演奏するのに操作すべき演奏操作子を指示する指示手段と、前記ソングの再生テンポを、ユーザーが前記演奏操作子を操作したタイミングに基づいて制御するテンポ制御手段と、前記指示手段がユーザーに指示を出すタイミングを制御する指示タイミング制御手段と、前記テンポ制御手段を無効化する無効化手段とを備え、前記無効化手段により前記テンポ制御手段が無効化された際には、前記指示タイミング制御手段により設定される指示タイミングが、前記テンポ制御手段が有効である場合と比較して遅くなることを最も主要な特徴としている。
【発明の効果】
【００１５】
本発明によれば、発音タイミングより前の一定期間を発音開始許容期間として設定することとテンポ追従機能を組み合わせることで、発音タイミングよりも早くユーザーが押鍵しても正解押鍵とみなされ、ユーザーの演奏操作タイミングに追従したテンポに変更できるようになる。
つまり、ユーザーの押鍵が発音タイミングより早くても遅くても正解押鍵とみなされて、その正解押鍵に基づいてテンポが調整される。このため、指示されたとおりに弾くだけでなく軽快に速く弾いたり感情をこめてゆっくり弾いたりする要求に応えられるようになる。
【００１６】
また、本発明においては、テンポ追従手段のオン／オフに応じて発音開始許容期間の長さを変えることで、より効果的な演奏練習を実現できる。テンポ追従がオフの時には発音許容期間の長さを短く設定すれば、一定のテンポで弾くべきタイミングが正確にガイドされる状態となるため、習熟度が低いユーザーが弾くタイミングを習得したいときの要求にも同時に応えられる。テンポ追従がオンの時には発音許容期間の長さを長く設定すれば、その長さが長いほどユーザーが早く押鍵することができるようになり、より自由な速さで演奏できるようになる。
【図面の簡単な説明】
【００１７】
【図１】本発明の実施例にかかる電子楽器の構成を示すブロック図である。
【図２】本発明の電子楽器における演奏ガイドの動作を示す図である。
【図３】本発明の電子楽器における演奏ガイドの他の動作を示す図である。
【図４】本発明の電子楽器における演奏データのデータ構造を示す図である。
【図５】本発明の電子楽器において実行されるメイン処理のフローチャートである。
【図６】本発明の電子楽器において実行されるメイン処理におけるウェイティング再生中の処理のフローチャートである。
【図７】本発明の電子楽器において実行される割込処理のフローチャートである。
【図８】従来の電子楽器における演奏ガイドの動作を示す図である。
【図９】従来の電子楽器における演奏ガイドの他の動作を示す図である。
【発明を実施するための形態】
【００１８】
本発明の実施例にかかる電子楽器の構成を示すブロック図を図１に示す。
図１に示す電子楽器１は演奏ガイドを行うことができる鍵盤楽器とされており、図示していないが各音名にそれぞれ対応した複数オクターブにわたる演奏操作子１７としての複数の白鍵及び黒鍵からなる鍵盤が横方向に配列されている。また、複数の白鍵及び黒鍵の近傍あるいは内部に、演奏ガイドを行う際に各鍵に演奏指示を行うガイドランプ１９が各鍵毎に配置されている。これらの演奏操作子１７及びガイドランプ１９の上方には操作パネルが設けられている。操作パネル上には、液晶ディスプレイで構成したパネル表示器２２が配置され、その両側にサウンドシステム１６におけるスピーカが配置され、パネル表示器２２と各スピーカの間の位置に設定操作子２１が配置されている。設定操作子２１は、それらの操作により発生楽音の音色、音量などを指定したり、パネル表示器２２の表示内容の指示などの電子楽器１の設定を行うことができる。また、設定操作子２１においては、自動演奏させるソングの選択手段や、演奏ガイドにおけるモードを設定するための操作子、選択されたソングの再生開始スイッチが少なくとも設けられている。さらに、電子楽器１の演奏ガイドとはウェイティング再生のことであり、ウェイティングモードには「テンポ追従あり」あるいは「テンポ追従なし」のいずれかの設定が可能であると共に、演奏ガイドをオフにしてガイドランプの点灯やウェイティングを行なわない通常再生とすることもできる。
【００１９】
図１に示す電子楽器１において、ＣＰＵ１０は電子楽器１における各部の動作を制御する中央処理装置（Central Processing Unit）であり、動作時の経過時間を示したり、特定の間隔でタイマ割込を発生するタイマー１３を備えている。ＲＯＭ（Read Only Memory）１１はＣＰＵ１０が実行する演奏ガイドプログラム、楽音発生プログラム等のプログラムや、演奏データ等の各種データが格納されている不揮発性のメモリであり、ＲＡＭ（Random Access Memory）１２は演奏データや各種データ等の格納エリアや、ＣＰＵ１０のワークエリア等が設定されている揮発性のメモリである。また、音源１４はＣＰＵ１０が楽音発生プログラムを実行することにより生成した楽音制御データを受け取って音源レジスタに格納し、この楽音制御データに基づいて楽音を発生して、ＤＳＰ（Digital Signal Processor）１５へ出力している。ＤＳＰ１５は、ＣＰＵ１０から受け取ったエフェクトパラメータに基づきリバーブ、コーラス、バリエーション、ディストーション等のエフェクトを、音源１４により発生された楽音信号に付与することができる。ＤＳＰ１５でエフェクトが付与された楽音信号は、サウンドシステム１６に供給され、アナログ信号に変換されたアナログ楽音信号が増幅されてスピーカから放音される。演奏操作子インタフェース１８は、複数の白鍵及び黒鍵からなる演奏操作子１７をスキャンして押鍵や離鍵の演奏操作がされた演奏操作子１７を検出し、検出された演奏操作子１７のノートオン情報やノートオフ情報をバス２４を介してＣＰＵ１０に送っている。ガイドランプインタフェース２０は、ＣＰＵ１０から特定の演奏操作子のガイドランプ１９を点灯／消灯させる情報を受け取り、この情報に基づいて当該ガイドランプ１９を点灯／消灯させる。記憶装置２３は、電子楽器１に予め組み込まれているハードディスクＨＤやコンパクトディスクＣＤ、フレキシブルディスクＦＤなどの種々の記録媒体を備えるドライブ装置とされ、大量の演奏データやプログラムが記憶されている。
【００２０】
次に、ＲＯＭ１１や記憶装置２３に記憶されているソングの演奏データのデータ構造を図４に示す。演奏データは図４に示すように、曲名、テンポ、調などを表すヘッダＨと、データＤ１のメロディパートと、データＤ２の伴奏パートＡないしデータＤＸの伴奏パートＸの複数の伴奏パートとから構成されている。データＤ１ないしデータＤＸの各パートの演奏データは、イベントデータとそれに対応するタイミングデータを１組とする、ソングの進行に従った楽器の複数組のデータと、ソングの終了を示すエンドデータとからなる。データＤ１とデータＤ２ないしデータＤＸのタイミングデータは、演奏時にメロディパートと複数の伴奏パートとが同時に進行するように設定されている。イベントデータは、ノートオン、ノートナンバー、ノートオフ、ベロシティなどのデータから構成されている。以下に説明するガイド演奏においては、メロディパートがガイド対象パートになると共に、伴奏パートＡないし伴奏パートＸがまとめられて「伴奏パート」とされる。
【００２１】
本発明の電子楽器１において演奏ガイドが「ウェイティングあり」のモードで「テンポ追従設定あり」に設定されている場合の動作を図２を参照して説明する。
図２の一番上の段には、ユーザーが演奏しようとするソングの自動演奏データにおけるガイド対象パートであるメロディパートの演奏データを表す音符が時系列的に並べられて示されており、その下の段に各音符の音符長が細長い長方形で示されている。また、その下の段にはユーザーが各音符に対応する鍵盤を押鍵してから離鍵するまでの押鍵期間が細長い長方形で示されている。ただし、各音符のノートナンバは図示されていない。このような図２において、ｔ１，ｔ２，ｔ３，ｔ４，ｔ５，・・・の時刻は各拍の開始時刻であり、各開始時刻間の長さが１拍に相当している。メロディパートの演奏データの最初の四分音符ｎ１の発音タイミングは時刻ｔ１とされており、次の四分音符ｎ２の発音タイミングは時刻ｔ２とされており、次の２分音符ｎ３の発音タイミングは時刻ｔ３とされている。四分音符ｎ１ないし２分音符ｎ３を発音する音の長さは各音符長に相当する長さとされている。
【００２２】
演奏ガイドが「ウェイティングあり」のモードで「テンポ追従設定あり」に設定されている場合は、図２に示すように各音符の発音タイミングより前に、テンポ追従設定なしのときに設定される発音開始許容期間Ｔａ’より数倍長い発音開始許容期間Ｔａが設定される。この発音開始許容期間Ｔａは、演奏ガイドを行うための期間とされており、発音開始許容期間Ｔａは、例えば四分音符長に相当する期間とされている。ここで、選択されたソングの再生開始がユーザーにより指示されると、ソングの進行に従ってメロディパートのデータＤ１が先頭から順次読み出される。ここでは、先頭のメロディ音である四分音符ｎ１のタイミングデータとイベントデータが読み出され、タイマー１３の絶対時間とタイミングデータから設定された発音タイミングの時刻ｔ１より発音開始許容期間Ｔａだけ前の時刻ｔ０１において当該四分音符ｎ１の音高に対応する鍵を指示するガイドランプ１９が点灯される。ここで、ユーザーが発音タイミングｔ１に達する前の時刻ｔ１’においてガイドランプ１９で指示された鍵を押鍵したとする。これにより、ガイドランプ１９が消灯され時刻ｔ１’から四分音符ｎ１のイベントデータに基づいてその音高のメロディ音が音源１４から発音開始されて、当該鍵が離鍵されるまでの期間発音されると共に、次のメロディ音の四分音符ｎ２のタイミングデータとイベントデータが読み出されて、この四分音符ｎ２の演奏ガイドの準備が行われるようになる。同時に、今回のメロディ音に対応する伴奏パート部分（詳細には、今回のメロディ音の演奏開始タイミングから次のメロディ音の演奏開始タイミングまでの間にある、伴奏パートＡないし伴奏パートＸに含まれるイベントデータ）の読み出しが順に行なわれて、その伴奏音が音源１４から発音されるようになる。
【００２３】
そして、ｎ１の押鍵ｔ１’の１拍後であるｔ２０が四分音符ｎ２の発音タイミングとされるため、時刻ｔ２０の発音開始許容期間Ｔａだけ前の時刻ｔ０２において、当該四分音符ｎ２の音高に対応する鍵を指示するガイドランプ１９が点灯されて、四分音符ｎ２の演奏ガイドが行われる。そして、ユーザーが発音タイミングｔ２０に達する前の時刻ｔ２’においてガイドランプ１９で指示された鍵を押鍵したとする。これにより、上記と同様にしてガイドランプ１９が消灯され時刻ｔ２’から四分音符ｎ２のイベントデータに基づく音高のメロディ音が音源１４から発音開始されて、当該鍵が離鍵されるまでの期間発音されると共に、次のメロディ音の二分音符ｎ３のタイミングデータとイベントデータが読み出されて、この二分音符ｎ３の演奏ガイドの準備が行われるようになる。このように、自動演奏データの進行に伴い、それぞれのタイミングデータに基づいて発音タイミングの時刻の発音開始許容期間Ｔａだけ前の時刻においてそれぞれの音符の音高に対応する鍵を指示するガイドランプ１９が点灯されて、各音符に対する演奏ガイドが行われる。
【００２４】
ここで、ユーザーが二分音符ｎ３に対する演奏ガイドに応じて発音タイミングｔ３０に達する前の時刻ｔ３’においてガイドランプ１９で指示された二分音符ｎ３に対応する鍵を押鍵したとする。これにより、上記と同様にしてガイドランプ１９が消灯され時刻ｔ３’から二分音符ｎ３のイベントデータに基づく音高のメロディ音が音源１４から発音開始されて、当該鍵が離鍵されるまでの期間発音されると共に、次のメロディ音のタイミングデータとイベントデータが読み出されて、そのメロディ音の演奏ガイドの準備が行われるようになる。なお、メロディ音が発音される際には、同時に、そのメロディ音に対応する伴奏パート部分の読出しが行われて、その伴奏音が音源１４から発音されるようになる。
以降は、自動演奏データの進行に従ってメロディパートのデータＤ１が順次読み出されて同様の動作が行われ、エンドデータが読み出された時にガイド演奏が終了するようになる。また、「テンポ追従設定あり」に設定されていることから、ユーザーが鍵盤を演奏する速さに自動演奏のテンポが追従するようになるが、図２に示す場合はユーザーの演奏の速さがほぼテンポ通りの速さとされていることからテンポはほぼ変更されていない。
【００２５】
次に、本発明の電子楽器１において演奏ガイドが「ウェイティングあり」のモードで「テンポ追従設定あり」に設定されている場合のテンポ追従の動作を図３を参照して説明する。
図３に示す場合は、ユーザーが演奏しようとするソングとして異なるソングが選択され、このソングの自動演奏データにおけるガイド対象パートであるメロディパートの演奏データを表す音符が、図３の一番上の段に時系列的に並べて示されている。その下の段には、各音符の音符長が細長い長方形で示されている。また、その下の段にはユーザーが鍵を押鍵した際の各音の押鍵から離鍵までの期間が細長い長方形で示されている。ただし、各音符のノートナンバは図示されていない。このような図３において、ｔ１，ｔ２，ｔ３，ｔ４，・・・の時刻は各拍の開始時刻であり、各拍の開始時刻間の長さが１拍に相当している。自動演奏データにおける最初の四分音符ｎ１０の発音タイミングは時刻ｔ１とされており、次の四分音符ｎ１１の発音タイミングは時刻ｔ２とされており、次の四分音符ｎ１２の発音タイミングは時刻ｔ３の時刻とされており、さらに次の四分音符ｎ１３の発音タイミングは時刻ｔ４とされている。四分音符ｎ１０の音符長はｔａ１、四分音符ｎ１１の音符長はｔａ２、四分音符ｎ１２の音符長はｔａ３、四分音符ｎ１３の音符長はｔａ４とされているが、音符ｎ１０ないし音符ｎ１３は同じ四分音符なので音符長ｔａ１ないし音符長ｔａ４は同じ長さとなる。
【００２６】
図２において説明したように、演奏ガイドが「ウェイティングあり」のモードで「テンポ追従設定あり」に設定されている場合は、各音符の発音タイミングより前に発音開始許容期間Ｔａが設定されるが図３では省略して示している。ここで、選択されたソングの再生開始がユーザーにより指示されると、ソングの進行に従ってメロディパートのデータＤ１が先頭から順次読み出される。ここでは、先頭のメロディ音である四分音符ｎ１０のタイミングデータとイベントデータが読み出され、タイマー１３の絶対時間とタイミングデータから設定された発音タイミングの時刻ｔ１の発音開始許容期間Ｔａだけ前の時刻において当該四分音符ｎ１０の音高に対応する鍵を指示するガイドランプ１９が点灯される。ユーザーは点灯されたガイドランプを見て、ガイドランプで指示された鍵を時刻ｔ１で押鍵し音符長ｔａ１より短い期間ｔｂ１の間押鍵し続けたとする。ここで、時刻ｔ１はガイドランプ点灯より後なので、ユーザーの押鍵は正解押鍵と判定される。これにより、ガイドランプ１９が消灯され時刻ｔ１から四分音符ｎ１０のイベントデータに基づく音高のメロディ音が音源１４から発音開始されて、当該鍵が離鍵されるまでの期間ｔｂ１の間発音されると共に、次のメロディ音の四分音符ｎ１１のタイミングデータとイベントデータが読み出されて、この四分音符ｎ１１の演奏ガイドの準備が行われるようになる。同時に、今回のメロディ音に対応する伴奏パート部分の読出しが行われて、その伴奏音が音源１４から発音されるようになる。この場合、発音される期間ｔｂ１は四分音符ｎ１０の音符長ｔａ１より短くなる。
【００２７】
そして、次のメロディ音の四分音符ｎ１１の音高に対応する鍵を指示するガイドランプ１９は、ユーザーがｎ１０に対して押鍵したタイミングｔ１の１拍後より発音開始許容期間Ｔａだけ前の時刻に点灯され、ユーザーはガイドランプ１９で指示された四分音符ｎ１１に対応する鍵を時刻ｔ１２で押鍵し四分音符ｎ１１の音符長ｔａ２より短い期間ｔｂ２の間押鍵し続けたとする。これにより、ガイドランプ１９が消灯され時刻ｔ１２から四分音符ｎ１１のイベントデータに基づく音高のメロディ音が音源１４から発音開始されて、当該鍵が離鍵されるまでの期間ｔｂ２の間発音されると共に、今回のメロディ音に対応する伴奏パート部分の読出しが行われて、その伴奏音が音源１４から発音されるようになる。この場合、発音される期間ｔｂ２は四分音符ｎ１１の音符長ｔａ２より短くなる。また、テンポ追従を行うために四分音符ｎ１０に対応する鍵を押鍵した時刻ｔ１と四分音符ｎ１１に対応する鍵を押鍵した時刻ｔ１２との時間間隔を検出して、それをもとに後述の方法でテンポを算出し、算出されたテンポで次の演奏データが読み出される。すなわち、テンポが正解押鍵される毎の時間間隔に応じて変更されるようになる。このようにして、ユーザの演奏の速さに応じたテンポ追従が行われると同時に、次のメロディ音の四分音符ｎ１２のタイミングデータとイベントデータが読み出されて、この四分音符ｎ１２の演奏ガイドの準備が行われるようになる。
【００２８】
さらに、ユーザーはガイドランプ１９で指示された四分音符ｎ１２に対応する鍵を時刻ｔ１３で押鍵し四分音符ｎ１２の音符長ｔａ３より長い期間ｔｂ３の間押鍵し続けたとする。これにより、ガイドランプ１９が消灯され時刻ｔ１３から四分音符ｎ１２のイベントデータに基づくメロディ音が音源１４から発音開始されて、当該鍵が離鍵されるまでの期間ｔｂ３の間発音されると共に、今回のメロディ音に対応する伴奏パート部分の読出しが行われて、その伴奏音が音源１４から発音されるようになる。この場合、発音される期間ｔｂ３は四分音符ｎ１２の音符長ｔａ３より長くなる。また、テンポ追従を行うために四分音符ｎ１１に対応する鍵を押鍵した時刻ｔ１２と四分音符ｎ１２に対応する鍵を押鍵した時刻ｔ１３との時間間隔を検出して、それをもとに後述の方法でテンポを算出し、算出されたテンポで次の演奏データが読み出される。このように、ユーザーが正解押鍵する毎の時間間隔に応じてテンポが変更されるようになる。そして、次のメロディ音の四分音符ｎ１３のタイミングデータとイベントデータが読み出されて、この四分音符ｎ１３の演奏ガイドの準備が行われるようになる。
【００２９】
さらにまた、ユーザーはガイドランプ１９で指示された四分音符ｎ１３に対応する鍵を時刻ｔ１４で押鍵し四分音符ｎ１３の音符長ｔａ４より短い期間ｔｂ４の間押鍵し続けたとする。これにより、ガイドランプ１９が消灯され時刻ｔ１４から四分音符ｎ１３のイベントデータに基づくメロディ音が音源１４から発音開始されて、当該鍵が離鍵されるまでの期間ｔｂ４の間発音されると共に、今回のメロディ音に対応する伴奏パート部分の読出しが行われて、その伴奏音が音源１４から発音されるようになる。この場合、発音される期間ｔｂ４は四分音符ｎ１３の音符長ｔａ４より短くなる。また、テンポ追従を行うために四分音符ｎ１２に対応する鍵を押鍵した時刻ｔ１３と四分音符ｎ１３に対応する鍵を押鍵した時刻ｔ１４との時間間隔を検出して、それをもとに後述の方法でテンポを算出し、算出されたテンポで次の演奏データが読み出される。
上記説明したように、本発明にかかる電子楽器１の演奏ガイドでは「テンポ追従設定あり」に設定されている場合は、正解押鍵される毎の時間間隔に応じてテンポが毎回変更されるようになる。すなわち、ソングの自動演奏の１拍の長さであるテンポが、ユーザーが演奏する速さに応じて変更されていくようになる。
【００３０】
上記したように、本発明の電子楽器１において演奏ガイドが「ウェイティングあり」のモードで「テンポ追従設定あり」に設定されている場合は、図２に示すように、ユーザーが演奏しようとするソングの演奏データを表す音符のそれぞれの発音タイミングの前に、テンポ追従設定なしの時に設定される発音開始許容期間Ｔａ’より数倍長い発音開始許容期間Ｔａが設定される。また、図３に示すようにソングの自動演奏のテンポに相当する１拍の長さが、ユーザーが演奏する速さに応じて変更されていくようになる。このことから、本発明の電子楽器１においては、演奏ガイドで指示されたとおりに弾くだけでなく軽快に速く弾いたり感情をこめてゆっくり弾いたりする要求に応えられるようになる。この場合、ユーザーが軽快に速く弾いてもミスタッチと見なされることなく発音されるようになる。従って、ユーザーの演奏が自然に聞こえるようになるだけでなく、ユーザーにとってはソングの演奏を自由にコントロールしている満足感が得られるようになる。
なお、本発明の電子楽器１における演奏ガイドでは、ガイドランプ１９で指示された鍵が発音タイミングに達しても押鍵されない時は上述したウェイティング状態となり、次の演奏データの読出しが中断されてガイドランプ１９で指示された鍵をユーザーが押鍵するまで待つようになる。
【００３１】
ところで、演奏ガイドが「ウェイティングあり」のモードで「テンポ追従設定なし」に設定されている場合は、ユーザーが演奏しようとするソングの演奏データを表す音符のそれぞれの発音タイミングの前に、発音開始許容期間Ｔａ’が設定されるが、「テンポ追従設定なし」の場合における発音開始許容期間Ｔａ’の長さは十分に短い期間、例えば３２分音符長とされる。また、ソングの自動演奏の１拍の長さを決めるテンポは、ユーザーが演奏する速さに応じて変更されないようになる。これは、「テンポ追従設定なし」に設定される場合は、主にユーザーが正確な押鍵タイミングを習得したい場合とされるからである。
【００３２】
次に、本発明にかかる電子楽器１におけるＣＰＵ１０が実行するメイン処理のフローチャートを図５に示し、メイン処理におけるウェイティング再生中の処理のフローチャートを図６に示し、ＣＰＵ１０が実行する割込処理のフローチャートを図７に示す。
図５ないし図７のフローチャートを参照して本発明にかかる電子楽器１の動作を次に説明する。
本発明にかかる電子楽器１の電源スイッチが投入されると、図５に示すメイン処理が起動されステップＳ１０にて電子楽器１を初期状態とする初期化が行われる。この初期化では、音源１４への初期の音色の設定や、ＲＡＭ１２における各種レジスタのクリア等が行われる。また、演奏ガイドの設定が初期状態に設定される。この初期状態は、例えば演奏ガイドが「ウェイティングあり」で「テンポ追従なし」とされるが、パネル表示器２２に設定画面を表示させて設定操作子２１により選択操作することにより、演奏ガイドの初期状態をユーザーが任意に設定することができる。
【００３３】
メイン処理におけるステップＳ１１ないしステップＳ２７の処理では、演奏操作子１７あるいは設定操作子２１等により電子楽器１において演奏に関する何らかの操作が行われた際に、その操作に応じた処理が行われる。そして、ステップＳ１１ないしステップＳ２７の処理は、電子楽器１の電源スイッチがオンとされている間繰り返し実行されている。ここで、演奏操作子１７のいずれかを押鍵すると、演奏操作子インタフェース１８が演奏操作子１７をスキャンして押鍵のイベントが検出される。これにより、ステップＳ１１にて押鍵操作されたと判断されてステップＳ１２へ分岐し、ステップＳ１２において、押鍵された鍵に対応する音高の音の発音を開始する処理が行われる。また、演奏操作子１７のいずれかを離鍵すると、演奏操作子インタフェース１８が演奏操作子１７をスキャンして離鍵のイベントが検出される。これにより、ステップＳ１３にて離鍵操作されたと判断されてステップＳ１４へ分岐し、ステップＳ１４において、離鍵された鍵に対応する音高の音の発音を停止する処理が行われる。
【００３４】
また、設定操作子２１の内のウェイティングモードスイッチが操作されると、ステップＳ１５においてウェイティングモードスイッチが操作されたと判断されてステップＳ１６の処理が行われる。このステップＳ１６の処理では、ウェイティングモードのオン／オフの現在の設定状態を反転させる処理が行われて、ウェイティングモードフラグの値が書き換えられる。この場合、ウェイティングモードスイッチを操作する前がウェイティングモードがオンであれば新たにオフを設定し、操作する前がウェイティングモードがオフであれば新たにオンを設定するトグル動作が行われる。さらに、設定操作子２１においてソング選択の操作が行われると、ステップＳ１７においてソング選択の操作が行われたと判断されてステップＳ１８の処理が行われる。このステップＳ１８の処理では、選択されたソングが再生用ソングとして準備され、当該ソングのデータがＲＡＭ１２における再生用ソングレジスタに格納される。なお、ソング再生中にソング選択の操作を行っても、この操作は無効とされて、ソング再生中はソング選択の操作を行えないようにされている。
【００３５】
さらにまた、設定操作子２１の内のテンポ追従設定スイッチが操作されると、ステップＳ１９においてテンポ追従設定スイッチが操作されたと判断されてステップＳ２０の処理が行われる。このステップＳ２０の処理では、テンポ追従設定のオン／オフの現在の設定状態を反転させる処理が行われ、テンポ追従設定フラグの値が書き換えられる。この場合、テンポ追従設定スイッチを操作する前のテンポ追従設定フラグがオンであれば新たにオフを設定し、操作する前のテンポ追従設定フラグがオフであれば新たにオンを設定する。ステップＳ２０の処理が終了するとステップＳ２１に進み、発音開始許容期間Ｔａの期間が変更される。次いで、ステップＳ２２にて発音停止処理の方法が切り替えられる。このステップＳ２１，Ｓ２２の処理では、ステップＳ２０において新たにテンポ追従設定フラグがオンとされて「テンポ追従設定あり」と設定された場合は、ステップＳ２１にて後述するウェイティング再生の発音開始許容期間が予め決められたテンポ追従設定オン用の発音開始許容期間（＃２許容時間）に変更される。この＃２許容時間は、例えば四分音符長に相当する長い発音開始許容期間Ｔａとされる。さらに、ステップＳ２２にて該当する演奏データのノートオフのタイミングではなく離鍵操作されたタイミングで発音停止されるように切り替えられる。また、ステップＳ２０において新たにテンポ追従設定フラグがオフとされて「テンポ追従設定なし」と設定された場合は、ステップＳ２１にて発音開始許容期間は予め決められたテンポ追従設定オフ用の発音開始許容期間（＃１許容時間）に変更される。この＃１許容時間は＃２許容時間より短くされ、例えば３２分音符長に相当する短い発音開始許容期間Ｔａ’とされる。さらに、ステップＳ２２にて離鍵操作のタイミングではなく離鍵操作された鍵に対応する演奏データのノートオフのタイミングで発音停止されるように切り替えられる。
【００３６】
さらにまた、ソング再生開始の操作が行われると、ステップＳ２３においてソング再生開始の操作が行われたと判断されてステップＳ２４の処理が行われる。このステップＳ２４の処理では、ウェイティングモード中か否かが判断され、現在のウェイティングモードフラグの状態がオンに設定されて「ウェイティングあり」のモードに設定されている場合はステップＳ２６の処理に進み、現在のウェイティングモードフラグの状態がオフに設定されて「ウェイティングなし」のモードに現在設定されている場合はステップＳ２５の処理に進む。ステップＳ２５では、再生用ソングの通常再生を開始する処理が行われる。この通常再生の開始処理では、再生用ソングレジスタに格納されている再生用ソングの再生カウンタがリセットされ、図７に示す割込処理がスタートされて、割込処理において通常再生中と判断されるよう再生フラグが設定される。さらに、再生用ソングが割込処理における処理対象として設定され、再生用ソングに記録されているテンポが再生テンポとして設定される。なお、ソング再生中にソング再生開始の操作を行っても、ステップＳ２３ではその操作が無視されてソング再生開始の操作を行えないようにされている。なお、再生カウンタは設定されているテンポに応じた速さでカウントを行うものであり、演奏データの自動演奏は再生カウンタのカウントに応じて進行するため、設定されているテンポに応じて自動演奏の速さが変わる。
【００３７】
また、ステップＳ２６では再生用ソングのウェイティング再生を開始する処理が行われる。このウェイティング再生の開始処理では、再生カウンタがリセットされ、図７に示す割込処理がスタートされて、割込処理においてウェイティング再生中と判断されるよう再生フラグが設定される。さらに、再生用ソングが割込処理における処理対象として設定され、再生用ソングに記録されているテンポが再生テンポとして設定されて、メロディパートにおける最初の演奏データ（ノートオン）のガイド開始タイミングが設定される。ガイド開始タイミングは、現在設定されているテンポ追従オン／オフに対応して設定されている発音開始許容期間（＃１許容時間Ｔａ’あるいは＃２許容時間Ｔａ）に基づいて設定される。ステップＳ２６の処理が終了すると図６に示すウェイティング再生中の処理が行われる。このウェイティング再生中の処理は、ウェイティング再生の終了が指示されるまで、図５のメイン処理に戻ることなく実行され続ける。そして、ウェイティング再生の終了が指示されたときに図５のメイン処理に戻り、ステップＳ２７の処理へ進む。このステップＳ２７では、パネル表示器２２の表示処理等のパネル処理やその他の処理が行われる。
上記したように、ステップＳ１１ないしステップＳ２７のメイン処理は、電子楽器１の電源スイッチがオンとされている間繰り返し実行されて、電子楽器１において何らかの操作が行われた際に、その操作に応じた処理が行われる。
【００３８】
図６に示すウェイティング再生中の処理は、図５に示すメイン処理に示されているように、ウェイティングモードがオンに設定されているときにソング再生開始スイッチが操作され、再生用ソングの再生が開始されたときに実行される。
ウェイティング再生中の処理では、ステップＳ３０にてテンポ追従設定フラグがオンされているかオフされているかが判断される。ここで、テンポ追従設定フラグがオフされていると判断された場合、つまりテンポ追従なしの場合は、ステップＳ３１ないしステップＳ４０のウェイティング再生処理が繰り返し実行され、テンポ追従設定フラグがオンされていると判断された場合、つまりテンポ追従ありの場合は、ステップＳ４３ないしステップＳ５７のウェイティング再生処理が繰り返し実行される。
【００３９】
ここで、テンポ追従設定フラグがオフされている場合に演奏操作子１７を押鍵すると、演奏操作子インタフェース１８において押鍵のイベントが検出される。これにより、ステップＳ３１にて押鍵操作されたと判断されて、ステップＳ３２の処理が行われるようになる。このステップＳ３２の処理では、現在が発音開始許容期間中か否かが判断される。発音開始許容期間中とは、ガイド中、すなわち今回のメロディ音の正しい演奏タイミングよりも発音開始許容期間Ｔａ’（＃１許容時間）だけ前のタイミングでガイドランプが点灯された以降であることを意味しており、ガイド中であれば発音開始許容期間中と判断されてステップＳ３３の処理に進む。また、ガイド中でなければ発音開始許容期間中ではないと判断されて、ステップＳ３３ないしステップＳ３９の処理がスキップされる。これは、ガイド中でない時の押鍵はミスタッチとみなされて、押鍵に対応する処理が行われないからである。
【００４０】
ステップＳ３３の処理では、ユーザーにより押鍵された鍵の音高と、演奏ガイドで指示された今回のメロディ音の音高とが一致するか否かが判断される。ここで、ユーザーが演奏ガイドで指示された音高の鍵を押鍵した場合は正解押鍵と判断されてステップＳ３４に進み、今回のメロディ音の発音が開始される。また、ユーザーが演奏ガイドで指示された鍵とは異なる鍵を押鍵した場合はミスタッチと判断され、ステップＳ３４ないしステップＳ３９の処理がスキップされて押鍵に対応する発音処理等は行われない。なお、ステップＳ３４の発音開始処理では、ＣＰＵ１０が今回のメロディ音の楽音制御データを音源１４に送り、音源１４において今回のメロディ音の発音が楽音制御データに基づいて開始されるようになる。ステップＳ３４の処理が終了すると、正解押鍵されたことからステップＳ３５にて今回のメロディ音に対応する鍵のガイドランプを消灯して、今回のメロディ音のガイドを終了する。
【００４１】
さらに、ステップＳ３６にて今回のメロディ音に対応する伴奏パート部分の読み出しをセットして、今回のメロディ音に対応する伴奏パート部分の先頭を、今回のメロディ音の発音開始タイミングまでずらす。次いで、ステップＳ３７にて再生カウンタの値を今回のメロディ音の発音開始タイミングに相当する値へ変更する。この処理は、ステップＳ３６においてずらした後の位置から正常に伴奏パートが再生されるように、図７に示す割込処理で使う再生カウンタの値を今回のメロディ音の発音開始タイミングから１クロック前の値へ変更する処理である。ステップＳ３７の処理が終了すると、ステップＳ３８にて次のメロディ音の発音開始タイミングを再生の一時停止用に読み出す処理が行われる。この処理は、自動演奏データの進行を一時停止するタイミングを、新しい値とされる次のメロディ音の発音開始タイミングへ更新する処理であり、次のメロディ音が弾かれなかった場合に、次のメロディ音の発音タイミングで現在のメロディ音に対応する伴奏を一時停止するための処理とされる。次いで、ステップＳ３９にて次のメロディ音の発音開始タイミングよりも発音開始許容期間Ｔａ’だけ前のタイミングが、ガイド開始タイングとして設定される。ここでは、テンポ追従設定フラグがオフとされていることから発音開始許容期間Ｔａ’は期間の短い＃１許容時間とされる。
【００４２】
さらにまた、テンポ追従設定フラグがオフされている場合にウェイティング再生停止スイッチを操作したことが検出されたとき、あるいは、再生用ソングの再生が最後まで進行して終了位置（エンド）まで到達したことが検出されたときは、ステップＳ４０にてウェイティング再生の終了指示があると判断され、ステップＳ４１のウェイティング再生を終了する処理が行われる。このウェイティング再生の終了処理が終わると、メイン処理のステップＳ２７にリターンされる。
なお、テンポ追従設定フラグがオフされている場合に演奏操作子１７が離鍵されても、離鍵された鍵に対応するメロディ音の発音停止処理は行わない。テンポ追従設定フラグがオフされている場合は、発音中のメロディ音は、そのメロディ音の発音開始を指示した鍵が離鍵されたときではなく、自動演奏が進行してそのメロディ音に対するノートオフデータが再生用ソングから読み出されたときに、発音停止する。
【００４３】
また、テンポ追従設定フラグがオンされている場合に演奏操作子１７を押鍵すると、演奏操作子インタフェース１８により押鍵のイベントが検出される。これにより、ステップＳ４３にて押鍵操作されたと判断されて、ステップＳ４４の処理が行われるようになる。このステップＳ４４の処理では、現在が発音開始許容期間中か否かが判断される。発音開始許容期間中とは、ガイド中、すなわち今回のメロディ音の正しい演奏タイミングよりも発音開始許容期間Ｔａ（＃２許容時間）だけ前のタイミングでガイドランプが点灯された以降であることを意味しており、ここで、ガイド中であれば発音開始許容期間中と判断されてステップＳ４５の処理に進む。また、ガイド中でなければ発音開始許容期間ではないと判断されて、ステップＳ４５ないしステップＳ５３の処理がスキップされる。これは、ガイド中でない時の押鍵はミスタッチとみなされて、押鍵に対応する処理が行われないからである。
【００４４】
ステップＳ４５の処理では、ユーザーにより押鍵された鍵の音高と、演奏ガイドで指示された今回のメロディ音の音高とが一致するか否かが判断される。ここで、ユーザーが演奏ガイドで指示された音高の鍵を押鍵した場合は正解押鍵と判断されてステップＳ４６に進み、今回のメロディ音の発音が開始される。また、ユーザーが演奏ガイドで指示された鍵とは異なる鍵を押鍵した場合はミスタッチと判断され、ステップＳ４６ないしステップＳ５３の処理がスキップされて押鍵に対応する発音処理等は行われない。なお、ステップＳ４６の発音開始処理では、ＣＰＵ１０が今回のメロディ音の楽音制御データを音源１４に送り、音源１４において今回のメロディ音の発音が楽音制御データに基づいて開始されるようになる。ステップＳ４６の処理が終了すると、正解押鍵されたことからステップＳ４７にて今回のメロディ音に対応する鍵のガイドランプを消灯して、今回のメロディ音のガイドを終了する。
【００４５】
さらに、ステップＳ４８にてテンポが算出される。テンポ算出の一例を挙げると、正解押鍵された押鍵間の時間間隔を検出し、この検出された時間を対応する演奏データの音符長で割り算することで１拍あたりの時間長を求める。本来のノートオンタイミングよりも早く押鍵した場合には、押鍵間の時間間隔は演奏データの音符長よりも短いため、テンポは現在の再生テンポよりも速くなる。逆に、本来のノートオンタイミングよりも遅く押鍵した場合には、押鍵間の時間間隔は演奏データの音符長よりも長いため、テンポは現在の再生テンポよりも遅くなる。直前の２音符分についてそれぞれ同様の計算をして１拍あたりの時間長を求め、それを平均したものを次の演奏データの読み出しテンポとする。こうして算出されたテンポにステップＳ４９にて変更される。次いで、ステップＳ５０にて今回のメロディ音に対応する伴奏パート部分の読み出しをセットして、今回のメロディ音に対応する伴奏パート部分の先頭を、今回のメロディ音の発音開始タイミングまでずらす。次いで、ステップＳ５１にて再生カウンタの値を今回のメロディ音の発音開始タイミングに相当する値へ変更する。この処理は、ステップＳ５０においてずらした後の位置から正常に伴奏パートが再生されるように、図７に示す割込処理で使う再生カウンタの値を今回のメロディ音の発音開始タイミングから１クロック前の値へ変更する処理である。ステップＳ５１の処理が終了すると、ステップＳ５２にて次のメロディ音の発音開始タイミングを再生の一時停止用に読み出す処理が行われる。この処理は、自動演奏進行を一時停止するタイミングを、新しい値とされる次のメロディ音の発音開始タイミングへ更新する処理であり、次のメロディ音が弾かれなかった場合に、次のメロディ音の発音タイミングで現在のメロディ音に対応する伴奏を一時停止するための処理である。次いで、ステップＳ５３にて次のメロディ音のガイド開始タイミングをセットする処理が行われる。この処理では、次のメロディ音の発音開始タイミングよりも、設定中の発音開始許容期間Ｔａだけ前のタイミングがガイド開始タイミングとして設定される。ここでは、テンポ追従設定フラグがオンとされていることから発音開始許容期間Ｔａは期間の長い＃２許容時間とされる。
【００４６】
また、テンポ追従設定フラグがオンされている場合に演奏操作子１７を離鍵すると、演奏操作子インタフェース１８により離鍵のイベントが検出される。これにより、ステップＳ５４にて離鍵操作されたと判断されて、ステップＳ５５の処理が行われるようになる。このステップＳ５５の処理では、ユーザーにより離鍵された鍵の音高と一致するメロディ音が発音中か否かが判断される。ここで、一致するメロディ音が発音中であればステップＳ５６において、当該メロディ音の発音を停止する処理が行われる。
【００４７】
さらに、テンポ追従設定フラグがオンされている場合にウェイティング再生停止スイッチが操作されたことが検出されたとき、あるいは、再生用ソングの再生が最後まで進行して終了位置（エンド）まで到達したことが検出されたときは、ステップＳ５７にてウェイティング再生の終了指示があると判断され、ステップＳ５８のウェイティング再生を終了する処理が行われる。このウェイティング再生の終了処理が終わると、メイン処理のステップＳ２７にリターンされる。
【００４８】
次に、演奏データのタイミングクロック毎に起動される図７に示す割込処理を説明する。なお、ソングを再生するテンポにあわせて１タイミングクロックに対する時間長は変更され、ウェイティング再生中の処理のステップＳ４９においてテンポが変更されると、割込処理の起動の時間間隔もそれにあわせて変更される。
図７に示す割込処理が起動されたときに通常再生中の再生フラグとなっている場合は、ステップＳ６０にて通常再生中と判断されてステップＳ６１にて再生カウンタの値が更新される。この更新では、再生カウンタの値が１だけカウントアップされる。演奏データのタイミングクロック数をカウントする再生カウンタの値が更新される処理が終了し、更新された再生カウンタの値と一致するタイミングで処理すべき演奏データが再生用ソング中にある場合は、ステップＳ６２にてメロディパートあるいは伴奏パートのいずれかのパートに処理すべき演奏データがあると判断される。そして、ステップＳ６３にてメロディパートと伴奏パートとを区別することなく、すべてのパートについて、今回のタイミングで処理すべき演奏データが処理される。この演奏データの処理では、該当するメロディパートや伴奏パートの演奏データに応じて、発音や発音停止の処理や、音量や音色の変更などの処理が行なわれる。ステップＳ６３の処理が終了するとステップＳ６４に進むが、通常再生中なのでＳ６４ではｎｏと判断されて割込処理は終了する。
【００４９】
また、割込処理が起動された際にウェイティング再生中の再生フラグとなっている場合は、ステップＳ６０でｎｏと判断されてステップＳ６４に進み、ステップＳ６４にてウェイティング再生中と判断され、ステップＳ６５においてユーザーが正解押鍵できないまま、演奏ガイドで指示された押鍵すべきメロディ音の正規の発音タイミングをすぎたかが確認される。具体的には、再生カウンタの値が、上記メロディ音の正規の発音タイミングの１クロック前に到達するとyes、それ以前はnoと判断される。ここで、到達したと判断された場合は割込処理は終了して、再生カウンタのカウントは正規の発音タイミングの１クロック前で停止したままの状態となり、正解押鍵がなされたときにカウントが再開される。すなわち、正解押鍵がなされると押鍵すべきメロディ音が次のメロディ音へ更新されて、比較対象である正規の発音タイミングが次のメロディ音の発音開始タイミングに更新されるため、再生カウンタの値が、新たな発音タイミングに到達していないとみなされることになる。
【００５０】
ステップＳ６５で押鍵タイミングを過ぎていないと判断された場合は、ステップＳ６６において再生カウンタの値が１だけカウントアップされて更新される。ここで、テンポ追従設定フラグがオフされている場合は、ステップＳ６７においてテンポ追従設定フラグがオフと判断されてステップＳ６８の処理が行われる。このステップＳ６８の処理では、再生カウンタの値が現在設定中のガイド開始タイミングに到達したかが判断され、到達していると判断された場合はステップＳ６９にてユーザーが次に押鍵すべき音高とされる次のメロディ音の音高に該当する鍵のガイドランプが点灯されると共に、ステップＳ７０にて当該ガイド開始タイミングがクリアされる。また、再生カウンタの値が現在設定中のガイド開始タイミングに到達していないとステップＳ６８で判断された場合は、ステップＳ６９，Ｓ７０の処理はスキップされる。さらに、テンポ追従設定フラグがオフされていて、メロディパートに今回のタイミングで処理すべきノートオフがあるとステップＳ７１において判断された場合は、ステップＳ７２において該当するメロディ音の発音を停止する処理が行われる。また、メロディパートに今回のタイミングで処理すべきノートオフはないとステップＳ７１において判断された場合は、ステップＳ７２の処理はスキップされる。
【００５１】
さらにまた、テンポ追従設定フラグがオフされていて、伴奏パートに今回のタイミングで処理すべきノートオンやノートオフなどの演奏データがあるとステップＳ７３において判断された場合は、ステップＳ７４において該当する伴奏パートの演奏データに応じた発音や発音停止の処理が行われる。このように、伴奏パートの自動演奏は通常再生と同様に順次に処理される。また、伴奏パートに今回のタイミングで処理すべき演奏データはないとステップＳ７３において判断された場合は、ステップＳ７４の処理はスキップされる。
【００５２】
また、テンポ追従設定フラグがオンされている場合は、ステップＳ６７においてテンポ追従設定フラグがオンと判断されてステップＳ７６の処理が行われる。このステップＳ７６の処理では、再生カウンタの値が現在設定中のガイド開始タイミングに到達したかが判断され、到達していると判断された場合はステップＳ７７にてユーザーが次に押鍵すべき音高とされる次のメロディ音の音高に該当する鍵のガイドランプが点灯されると共に、ステップＳ７８にて当該ガイド開始タイミングがクリアされる。また、再生カウンタの値が現在設定中のガイド開始タイミングに到達していないとステップＳ７６で判断された場合は、ステップＳ７７，Ｓ７８の処理はスキップされる。さらに、テンポ追従設定フラグがオンされていて、伴奏パートに今回のタイミングで処理すべきノートオンやノートオフなどの演奏データがあるとステップＳ７９において判断された場合は、ステップＳ８０において該当する伴奏パートの演奏データに応じた発音や発音停止の処理が行われる。このように、伴奏パートの自動演奏は通常再生と同様に順次に処理される。また、伴奏パートに今回のタイミングで処理すべき演奏データはないとステップＳ７９において判断された場合は、ステップＳ８０の処理はスキップされる。
なお、テンポ追従設定フラグがオンされている場合にメロディパートに今回のタイミングに一致するノートオフがあっても該当するメロディ音の発音停止処理は行わない。テンポ追従設定フラグがオンの場合は、前述したウェイティング再生中の処理において、離鍵された際に離鍵操作された鍵に対応するメロディ音の発音停止処理が行われるようになる。
ステップＳ６４でウェイティング再生中でないと判断された場合、ステップＳ６５で押鍵タイミングを過ぎていると判断された場合、ステップＳ７４あるいはステップＳ８０の処理が終了した場合は割込処理が終了して、割込前の処理にリターンされる。
【００５３】
以上説明したように、本発明にかかる電子楽器１においては、ウェイティングモードではない場合にユーザーが押鍵すると、当該鍵に割り当てられている音高の音が発音開始（メイン処理ステップＳ１２）され、離鍵すると当該鍵に割り当てられている音高の発音中の音が発音停止（メイン処理ステップＳ１４）される。また再生用ソングを再生させると、再生用ソングの通常再生が割込処理のステップＳ６１〜Ｓ６３で行われる。
【００５４】
さらに、ウェイティングモードの「テンポ追従設定なし」に設定されている場合は、割込処理のステップＳ６８〜Ｓ７０で再生用ソングのメロディ音の各ノートオンのタイミングの発音開始許容期間（＃１許容時間）だけ前にガイドランプが点灯される。ここで、ユーザーが押鍵して、この押鍵が発音開始許容期間内であって正解押鍵の場合はガイドランプが消灯されると共に、現在ガイドしているメロディ音の音が発音開始される（ウェイティング再生中の処理のステップＳ３２〜Ｓ３９）。また、離鍵されても当該鍵に割り当てられている音高の音は発音停止されず、当該メロディ音のノートオフのタイミングにおいて発音停止（割込処理ステップＳ７１，Ｓ７２）される。なお、正解押鍵されない場合は、ウェイティング再生中の処理のステップＳ３１〜Ｓ４０の処理が繰り返し行われることにより正解押鍵されるまでウェイティングされるようになる。ウェイティング中は再生カウンタのカウントは１クロック前の値のままで停止した状態となる（割込処理ステップＳ６５）ことから、ウェイティング中にユーザーが押鍵すると許容期間中の押鍵（ウェイティング再生中の処理のステップＳ３２）とされて正解押鍵の場合はガイドランプが消灯されると共に、現在ガイドしているメロディ音の音が発音開始される（ウェイティング再生中の処理のステップＳ３３〜Ｓ３９）。上記した演奏ガイドのモードに設定されている場合、正解押鍵されるまでウェイティングされると共に、発音開始許容期間は＃２許容時間より短い＃１許容時間とされるため、習熟度が低いユーザーが弾くタイミングを習得したいときに、弾くべきタイミングが正確にわかるようになる。
【００５５】
さらにまた、ウェイティングモードの「テンポ追従設定あり」に設定されている場合は、割込処理のステップＳ７６〜Ｓ７８で再生用ソングのメロディ音の各ノートオンのタイミングの発音開始許容期間（＃２許容時間）だけ前にガイドランプが点灯される。ここで、ユーザーが押鍵して、この押鍵が発音開始許容期間内であって正解押鍵の場合はガイドランプが消灯されると共に、現在ガイドしているメロディ音の音が発音開始される（ウェイティング再生中の処理のステップＳ４４〜Ｓ４７）。また、正解押鍵された押鍵間の時間間隔と、その際の演奏データの音符長とに基づいてテンポが算出されて、算出されたテンポに変更（ウェイティング再生中の処理のステップＳ４８〜Ｓ４９）される。さらに、離鍵されると当該鍵に割り当てられている音高の音が発音停止（ウェイティング再生中の処理のステップＳ５４〜Ｓ５６）される。なお、正解押鍵されない場合は、ウェイティング再生中の処理のステップＳ４３〜Ｓ５７の処理が繰り返し行われることにより正解押鍵されるまでウェイティングされるようになる。ウェイティング中は再生カウンタのカウントは１クロック前の値のままで停止した状態となる（割込処理ステップＳ６５）ことから、ウェイティング中にユーザーが押鍵すると許容期間中の押鍵（ウェイティング再生中の処理のステップＳ４４）とされて正解押鍵の場合はガイドランプが消灯されると共に、現在ガイドしているメロディ音の音が発音開始される（ウェイティング再生中の処理のステップＳ４５〜Ｓ５３）。上記した演奏ガイドのモードに設定されている場合、、正解押鍵されるまでウェイティングされると共に、発音開始許容期間は＃１許容時間より長い＃２許容時間とされるため、弾くべきタイミングが来なくてもユーザーが弾いた鍵がミスタッチと見なされることなく弾けるようになる。
【産業上の利用可能性】
【００５６】
以上説明した本発明の電子楽器においては、テンポ追従がある場合およびテンポ追従しない場合のそれぞれの設定を持つとしたが、これに限ることはなく、テンポの追従がある場合のみで構成しても良い。また、発音開始許容期間の変更をテンポ追従設定のオン／オフと連動するようにしたが、これに限ることはなく、独立して発音開始許容期間のみを変更する構成としてもよい。例えば、発音開始許容期間設定スイッチを設け、このスイッチが押される毎に、＃１許容時間と＃２許容時間とを切り替えるようにしてもよい。
また、本発明の演奏ガイドを行う電子楽器は鍵盤楽器としたが、これに限ることはなく演奏操作子を備える種々の電子楽器に適用することができる。
さらに本発明では、ガイドランプを鍵盤の近傍あるいは内部に設けることによりガイド機能を実現するようにしたが、これに限ることはなく、ディスプレイに表示された鍵盤イラストや楽譜などにガイドを表示するようにして、ソフトウェアでガイド機能を実現してもよい。また、外部接続したパソコンにガイドを表示したり、外部接続したガイドランプ付き楽器でガイドを表示したりして、外部機器でガイド機能を実現してもよい。
さらにまた、本発明において上記説明した＃１許容時間の設定方法としては、正しいタイミングを習得するにはジャストタイミングでガイドを行なえば良いことから、＃１許容時間（Ｔａ’）をゼロとしても良い。しかし、実際はユーザーがガイドランプを認識してからその音を押鍵するまでに若干のタイムラグが生じるため、そのタイムラグ分を＃１許容時間とするのが好適とされる。また、＃２許容時間の設定方法としては、ユーザーが自由な演奏を行なうには＃２許容時間は長い方がいいが、あまりに長すぎると（たとえば１小節以上も前にガイドするなど）前のメロディ音を越えてガイドしなくてはいけなくなりガイドの意味をなさなくなる。そのため、それを考慮して適度に長い時間を＃２許容時間とする。なお、例えば１６分音符がたくさんあるような速い曲では＃２許容時間を１６分音符相当の長さに設定し、２分音符や全音符がたくさん出てくるゆったりした曲のときは＃２許容時間を２分音符相当の長さに設定するなど、柔軟な設定方法としても良い。
【００５７】
さらにまた、本発明におけるテンポ算出方法としては、上記説明したテンポ算出方法に限るものではなく、直前の１音分についてのみ、押鍵間隔を音符長で割って１拍あたりの時間長を割り出し、それを次のデータの読み出しテンポとするようにしても良い。このように、１音ごとに計算すると、急激なテンポ変化を起こりやすくすることができる。また、数音分の演奏時間の和からテンポを算出するようにしても良い。例えば、直前の１小節分のデータを演奏した時間を４で割ると、１拍あたりの長さが求められるので、それを次の小節のテンポとする。さらに、１音ごとに、正規のタイミングよりも押鍵が早ければテンポを予め定めた割合だけ速め、押鍵が遅ければテンポを予め定めた割合だけ遅くするようにしても良い。このようにすると、徐々に速めたり遅めたりしていくうちに自然とユーザーにとってちょうどいいテンポに調整されるようになる。
【符号の説明】
【００５８】
１  電子楽器、１０  ＣＰＵ、１１  ＲＯＭ、１２  ＲＡＭ、１３  タイマー、１４  音源、１５  ＤＳＰ、１６  サウンドシステム、１７  演奏操作子、１８  演奏操作子インタフェース、１９  ガイドランプ、２０  ガイドランプインタフェース、２１  設定操作子、２２  パネル表示器、２３  記憶装置、２４  バス
【図１】
0005906716.tif 000002
【図２】
0005906716.tif 000003
【図３】
0005906716.tif 000004
【図４】
0005906716.tif 000005
【図５】
0005906716.tif 000006
【図６】
0005906716.tif 000007
【図７】
0005906716.tif 000008
【図８】
0005906716.tif 000009
【図９】
0005906716.tif 000010