JP5560574B2 - 電子楽器および自動演奏プログラム - Google Patents

電子楽器および自動演奏プログラム Download PDF

Info

Publication number
JP5560574B2
JP5560574B2 JP2009060617A JP2009060617A JP5560574B2 JP 5560574 B2 JP5560574 B2 JP 5560574B2 JP 2009060617 A JP2009060617 A JP 2009060617A JP 2009060617 A JP2009060617 A JP 2009060617A JP 5560574 B2 JP5560574 B2 JP 5560574B2
Authority
JP
Japan
Prior art keywords
data
event
key
note
pitch
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.)
Active
Application number
JP2009060617A
Other languages
English (en)
Other versions
JP2010217230A (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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2009060617A priority Critical patent/JP5560574B2/ja
Publication of JP2010217230A publication Critical patent/JP2010217230A/ja
Application granted granted Critical
Publication of JP5560574B2 publication Critical patent/JP5560574B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

本発明は、楽音を発生する電子楽器および自動演奏プログラムに関する。
ピアノなどの鍵盤楽器の初心者のために、単一の鍵を押鍵するのみで自動演奏において所定のパートの楽音を発生させて、楽曲の演奏を進行させることができる、いわゆるワンキープレイの機能を有する電子楽器、或いは、任意の鍵を押鍵することで、自動演奏において所定の楽音の楽音を発生させて、楽曲の演奏を進行させることができる、いわゆるエニイキープレイの機能を有する電子楽器が知られている。また、ワンキープレイにおいては、鍵以外の操作子を、楽曲の演奏を進行させるために用いる場合もある。一般的に、ワンキープレイにおいては、進行中の楽曲においてメロディの発音タイミングとほぼ同じタイミングで押鍵させることで、対応するメロディの楽音を発生する。さらに、操作を容易にするために種々の提案がなされている。
たとえば、特許文献1には、操作子の操作途中で操作タイミング(つまり、楽曲におけるメロディの発音タイミング)がわからなくなった場合に、連続して操作子を操作することで、自動伴奏の進行に伴ってメロディが自動的に発音して、現在進行中の楽曲の部分を演奏者が把握できるようにした電子楽器が提案されている。
また、特許文献2には、楽曲の特定パート(ワンキープレイを行うパート)については、発音時間を長くしておき、その発音時間中に操作子をオンしやすくすることで、操作子の操作タイミングを容易にした電子楽器が提案されている。
特開平7−152372号公報 特開2003−280652号公報 特許第3940999号公報
上記特許文献1、2に記載された電子楽器においては、より容易に演奏するための機能が提供されているが、演奏者の意図により楽曲の雰囲気を制御し、或いは、演奏者と楽曲との一体感を高めることは難しかった。特許文献3には、楽曲において所定のタイミングで意図的に操作子をオンせずに発音を控えた後に、次の発音タイミングで操作子をオンすることで、発音されなかった前イベントの音高に対して和声的に連係する音高の楽音が再生される電子楽器が提案されている。この電子楽器では、ワンキープレイによる操作であっても和声を損ねることなく原曲をアレンジした演奏が可能となる。特許文献3に開示された機能を用いるためには楽曲の発音タイミングおよび和声の知識が必要となる。そこで、そのような知識がなくとも、演奏者が、楽曲の演奏に参加しているという感覚(参加感)や楽曲との一体感を感じされるのが望ましい。
本発明は、初心者においても操作子の操作による演奏を楽しむことができ、かつ、操作によって演奏への参加感や楽曲との一体感を感じることが可能な電子楽器および自動演奏プログラムを提供することを目的とする。
本発明の目的は、楽曲を構成する複数のパートの各々について、当該パート中の音符の発音時刻および音高を少なくとも含む音符データから構成される曲データを格納した曲データ記憶手段と、
所定のパートの前記音符データに関して、演奏操作子の押鍵操作に基づき、かつ、現在時刻が発音時刻に達した音符データについて、当該音符データに示される音高の楽音データを発音させるためのイベントを生成するとともに、前記所定のパート以外の前記音符データに関して、現在時刻が発音時刻に達した音符データについて、当該音符データに示される音高の楽音データを発音させるためのイベントを生成する制御手段と、
前記制御手段により生成されたイベントに基づいて、当該イベントにしたがった音高の楽音データを生成する楽音データ生成手段と、を備え、
前記制御手段が、前々回の演奏操作子の操作タイミングと前回の押鍵操作子の操作タイミングとの間の、前回の時間間隔と、前回の演奏操作子の操作タイミングと今回の演奏操作子の操作タイミングとの間の、今回の時間間隔との比較に基づいて、前記演奏操作子の押鍵操作に基づき生成される楽音データを構成する何れかの音楽要素を強調させる強調制御手段を有することを特徴とする電子楽器により達成される。
また、好ましい実施態様においては、前記強調制御手段が、前記イベントにおける音量制御パラメータを増大させる。
別の好ましい実施態様においては、前記演奏操作子が鍵盤の鍵であり、
前記制御手段が、押鍵操作された鍵が所定の音高より高い場合に、前記鍵の押鍵操作に基づくイベントにおいて、前記音符データに示される音高より高い音高となるように前記イベントを修正し、押鍵操作された鍵が他の所定の音高より低い場合に、前記鍵の押鍵操作に基づくイベントにおいて、前記音符データに示される音高より低い音高となるように前記イベントを修正するイベント修正手段を有する。
また、別の好ましい実施態様においては、前記制御手段が、前回の演奏操作子の押鍵操作から、第2の所定期間に演奏操作子の押鍵操作が無かった場合に、前記演奏操作子の押鍵操作に基づく楽音データについてのイベントの生成を停止する。
また、本発明の目的は、楽曲を構成する複数のパートの各々について、当該パート中の音符の発音時刻および音高を少なくとも含む音符データから構成される曲データを格納した曲データ記憶手段を有するコンピュータに、
所定のパートの前記音符データに関して、演奏操作子の押鍵操作に基づき、かつ、現在時刻が発音時刻に達した音符データについて、当該音符データに示される音高の楽音データを発音させるためのイベントを生成するとともに、前記所定のパート以外の前記音符データに関して、現在時刻が発音時刻に達した音符データについて、当該音符データに示される音高の楽音データを発音させるためのイベントを生成する制御ステップと、
前記制御手段により生成されたイベントに基づいて、当該イベントにしたがった音高の楽音データを生成する楽音データ生成手段と、を実行させ、
前記制御ステップが、前々回の演奏操作子の操作タイミングと前回の押鍵操作子の操作タイミングとの間の、前回の時間間隔と、前回の演奏操作子の操作タイミングと今回の演奏操作子の操作タイミングとの間の、今回の時間間隔との比較に基づいて、前記演奏操作子の押鍵操作に基づき生成される楽音データを構成する何れかの音楽要素を強調させる強調制御ステップを有することを特徴とする自動演奏プログラムにより達成される。
本発明によれば、初心者においても操作子の操作による演奏を楽しむことができ、かつ、操作によって演奏への参加感や楽曲との一体感を感じることが可能な電子楽器および自動演奏プログラムを提供することが可能となる。
図1は、本発明の第1の実施の形態にかかる電子楽器の構成を示すブロックダイヤグラムである。 図2は、本実施の形態にかかる電子楽器にて実行される処理を示すフローチャートである。 図3は、本実施の形態にかかるスイッチ処理の例を示すフローチャートである。 図4は、本実施の形態にかかる鍵盤処理の例を示すフローチャートである。 図5は、本実施の形態にかかるノーマル鍵盤処理の例を示すフローチャートである。 図6は、本実施の形態にかかるポンピング処理の例を示すフローチャートである。 図7は、本実施の形態にかかるポンピング処理の例を示すフローチャートである。 図8は、本実施の形態にかかるビートシンクロ処理の例を示すフローチャートである。 図9は、本実施の形態にかかる曲データのデータ構造例を示す図である。 図10は、本実施の形態にかかる自己パート認識処理の例を示すフローチャートである。 図11は、本実施の形態にかかるオクターブシフト処理の例を示すフローチャートである。 図12は、本実施の形態にかかる伴奏処理の例を示すフローチャートである。 図13は、本実施の形態にかかる発音処理の例を示すフローチャートである。 図14(a)は、ポンピング処理における押鍵間隔と強調処理の有無を説明する図、図14(b)は、ビートシンクロ処理における押鍵間隔と強調処理の有無を説明する図である。 図15は、本発明の他の実施の形態にかかるポンピング処理の例を示すフローチャートである。
以下、添付図面を参照して、本発明の実施の形態について説明する。図1は、本発明の第1の実施の形態にかかる電子楽器の構成を示すブロックダイヤグラムである。図1に示すように、本実施の形態にかかる電子楽器10は、CPU11、ROM12、RAM13、サウンドシステム14、表示部15、鍵盤16および操作部18を備える。
CPU11は、電子楽器10全体の制御、操作部18を構成するスイッチ(図示せず)の操作の検出、鍵盤16の鍵のオン・オフ(押鍵・離鍵)の検出および押鍵・離鍵に応じた処理、曲データに応じた自動演奏や伴奏の演奏処理、押鍵・離鍵に応じた処理や演奏処理にしたがった楽音波形データの生成など、種々の処理を実行する。
ROM12は、電子楽器10全体の制御、操作部18を構成するスイッチ(図示せず)の操作の検出、鍵盤16の鍵のオン・オフ(押鍵・離鍵)の検出および押鍵・離鍵に応じた処理、曲データに応じた自動演奏や伴奏の演奏処理、押鍵・離鍵に応じた処理や演奏処理にしたがった楽音波形データの生成などの処理プログラムを格納する。また、ROM12は、ピアノ、ギターなどの楽音を生成するためのプリセット波形データを格納するプリセット波形データエリア、楽曲の自動演奏をするためのパートごとの曲データを格納する曲データエリアを有している。
RAM13は、ROM12から読み出されたプログラムや、処理の過程で生じたデータを記憶する。
サウンドシステム14は、音源部21、オーディオ回路22およびスピーカ23を備える。音源部21は、たとえば、鍵盤16の押鍵された鍵に関するノートオンイベントをCPU11から受信すると、ROM12のプリセット波形データエリアから所定のプリセット波形データを読み出して、所定の音高の楽音波形データを生成して出力する。また、音源部21は、プリセット波形データ、特に、スネアドラム、バスドラム、シンバルなど打楽器の音色の波形データを、そのまま楽音波形データとして出力することもできる。オーディオ回路22は、楽音波形データをD/A変換して増幅する。これによりスピーカ23から音響信号が出力される。
図2は、本実施の形態にかかる電子楽器にて実行される処理を示すフローチャートである。電子楽器10のCPU11は、たとえば、RAM13に一時的に記憶されたデータなどのクリアを含むイニシャライズ処理を行う(ステップ201)。イニシャライズ処理(ステップ201)が終了すると、CPU11は、操作部18のスイッチの操作を検出し、検出された操作にしたがった処理を実行するスイッチ処理を実行する(ステップ202)。
図3は、本実施の形態にかかるスイッチ処理の例を示すフローチャートである。図3に示すように、CPU11は、操作部18において伴奏スタートスイッチがオンされたかを判断する(ステップ301)。ステップ301でNoと判断された場合には、CPU11は、操作部18において伴奏ストップスイッチがオンされたかを判断する(ステップ302)。ステップ302でYesと判断された場合には、RAM13中の伴奏フラグSTFを「0」にリセットして(ステップ303)、処理を終了する。
ステップ301でYesと判断された場合には、RAM13中の伴奏フラグSTFを「1」にセットする(ステップ304)。なお、伴奏フラグSTFが「1」にセットされると、図示しないタイマインタラプト処理において、タイマ値がインクリメントされる。
次いで、CPU11はモード設定処理を実行する(ステップ305)。モード設定処理においては、CPU11は、何れのモード設定スイッチがオンされたかを判断する。本実施の形態においては、ノーマル鍵盤モード(鍵盤モード=1)、ポンピングモード(鍵盤モード=2)、および、ビートシンクロモード(鍵盤モード=3)の何れかの鍵盤モードが設定され、設定された鍵盤モードがRAM13中に格納される。
次いで、CPU11は、操作部18中の曲選択スイッチがオンされたかを判断する(ステップ306)。ステップ306でYesと判断された場合には、CPU11は、操作部18中、曲を選択するテンキー(図示せず)の操作を受理して、演奏すべき楽曲の曲データを指定する曲番号をRAM13に格納する(ステップ307)。また、CPU11は、操作部18中のパートを選択するテンキー(図示せず)の操作を受理して、鍵操作により再生すべきパートの情報(パート番号)をRAM13に格納する(ステップ308)。
その後、CPU11は、他のスイッチ処理を実行する(ステップ309)。たとえば、他のスイッチ処理においては、音色指定スイッチの操作にしたがって、ROM12のプリセット波形データエリアに格納されたプリセット波形データの種別(音色)を指定する情報がRAM13に格納される。
スイッチ処理(ステップ202)の後、CPU11は、鍵盤処理を実行する(ステップ203)。図4は、本実施の形態にかかる鍵盤処理の例を示すフローチャートである。図4に示すように、鍵盤処理においては、CPU11は、RAM13に格納された鍵盤モードを参照して、鍵盤モードが何れであるかを判断する(ステップ401)。ステップ401において、鍵盤モード=1、つまり、ノーマル鍵盤モードと判断された場合には、CPU11は、ノーマル鍵盤処理を実行する(ステップ402)。ステップ401において、鍵盤モード=2、つまり、ポンピングモードであると判断された場合には、CPU11は、ポンピング処理を実行する(ステップ403)。また、ステップ401において、鍵盤モード=3、つまり、ビートシンクロモードと判断された場合には、CPU11は、ビートシンクロ処理を実行する(ステップ404)。ポンピング処理(ステップ403)或いはビートシンクロ処理(ステップ404)の後には、CPU11は、オクターブシフト処理(ステップ405)を実行する。
図5は、本実施の形態にかかるノーマル鍵盤処理の例を示すフローチャートである。図5に示すように、CPU11は、鍵盤16の鍵を所定の順で(たとえば、音高の低い鍵から)走査して(ステップ501)、処理対象となる鍵の状態に変化があったか否かを判断する(ステップ502)。ステップ502で鍵がオン状態となった場合には、CPU11は、当該鍵の押鍵に基づき、鍵に対応する音高の楽音を、指定された音色で発音することを示すノートオンイベントを生成する(ステップ503)。また、処理対象となる鍵がオフ状態となった場合には、CPU11は、離鍵された鍵に対応する音高の楽音を消音することを示すノートオフイベントを生成する(ステップ504)。ノートオンイベントおよびノートオフイベントは、RAM13のイベントエリアに格納される。
ステップ503、504が実行された後、或いは、ステップ502で鍵の状態に変化がないと判断された場合には、CPU1は、すべての鍵について処理が終了したかを判断する(ステップ505)。ステップ505でNoと判断された場合には、ステップ501に戻る。その一方、ステップ505でYesと判断された場合には処理を終了する。
次に、ポンピング処理(ステップ403)、ビートシンクロ処理(ステップ404)について説明する。図6および図7は、本実施の形態にかかるポンピング処理の例を示すフローチャート、図8は、本実施の形態にかかるビートシンクロ処理の例を示すフローチャートである。図6に示すように、CPU11は、伴奏フラグSTF=1であるかを判断する(ステップ601)。つまり、自動伴奏の演奏中であるか否かが判断される。ステップ601でYes、つまり自動伴奏の演奏中である場合には、鍵盤16の鍵の何れかの鍵の押鍵があったかが判断される(ステップ602)。何れかの鍵が押鍵された場合(ステップ602でYes)には、CPU11は、RAM13中、選択された楽曲の曲データを参照して、鍵操作により再生すべきパート(以下、「自己パート」と称する)が発音中であるか否かを判断する(ステップ603)。
図9は、本実施の形態にかかる曲データのデータ構造例を示す図である。RAM13の曲データエリアには、楽曲ごとの曲データが格納されている。図9に示すように曲データは、パートごとの曲データ(たとえば、パート1曲データ901、パート2曲データ902)を含む。パートごとの曲データは、それぞれ複数の音符データ(たとえば、音符データ(0)910、音符データ(1)911、・・・)を含む。各音符データは、発音時刻921、音高情報或いは休符情報922、発音時間923およびベロシティ924を含む。なお、パートごとの曲データには、ヘッダとして音色を示す情報なども含まれる。
ステップ603においては、CPU11は、タイマインタラプト処理(図示せず)においてインクリメントされるタイマ値を参照して、自己パートの音符データが発音されているかを判断すればよい。ステップ603でNoと判断された場合には、CPU11は、自己パートの音符データを参照して、現在時刻が発音時刻に達した音符について、発音すべき楽音の音色、音高およびベロシティを含むノートオンイベントを生成し、RAM13のイベントエリアに格納する(ステップ604)。ステップ603でNoと判断された場合には、CPU11は、自己パートの音符データを参照して、発音時間が経過した音符について、ノートオフイベントを生成し、RAM13のイベントエリアに格納する(ステップ605)。なお、発音時間の経過は、音符データにおける発音時刻に発音時間を加算した時刻と、現在時刻を比較し、現在時刻が、上記加算した時刻に達しているか否かを判断すれば良い。
次いで、CPU11は、押鍵ごとにRAM13に、押鍵された鍵を示す情報および押鍵時刻が格納される押鍵履歴を参照して、今回の押鍵以前に、所定ビート時間以内に押鍵があったかを判断する(ステップ606)。ここで、所定ビート時間とは、設定された拍数に相当する時間であり、たとえば、4/4拍子における2分音符(いわゆる4ビートにおける2ビート分)に相当する時間である。無論、この時間は、4分音符に相当する時間に限定されるものではなく、4/4拍子における符点2分音符(いわゆる4ビートにおける3ビート分)や符点4分音符(4ビートにおける1.5ビート分)に相当する時間であっても良い。
ステップ606でYesと判断された場合には、CPU11は、押鍵履歴を参照し、前回の押鍵時刻と今回の押鍵時刻との間の押鍵間隔を参照して、所定間隔より短いか否かを判断する(ステップ607)。たとえば、上記所定間隔は、4/4拍子における4分音符(いわゆる4ビートにおける1ビート分)とすれば良い。ステップ607でYesと判断された場合には、CPU11は、強調処理を実行する(ステップ608)。強調処理においては、ステップ604で生成されたノートオンイベントのベロシティを、所定の割合(たとえば20パーセント)だけ増大させる。ステップ607でNoと判断された場合には、CPU11は、強調停止処理を実行する(ステップ609)。強調停止処理では、ステップ608によるベロシティの増大を解除する。
ポンピング処理においては、押鍵間隔が所定間隔(上記例では4ビートにおける1ビート分の間隔)より短いときに、ベロシティを所定の割合だけ増大させた楽音を発音させることができる。これにより、演奏者の高揚による押鍵に応じてベロシティを増大させて演奏者における演奏への参加感を増すことが可能となる。
図14(a)は、ポンピング処理における押鍵間隔と強調処理の有無を説明する図である。図14(a)の例で、楽曲は4/4拍子であり、太字の縦線1401、1405は小節線、他の縦線1402、1403、1404は、拍の先頭位置を示す。また、所定間隔は1ビート時間(4分音符1つ分)である。押鍵1411と押鍵1412との間隔は、上記所定間隔以上であるため、押鍵1412では強調処理は行なわれない。これに対して、押鍵1412と押鍵1413との間隔、押鍵1413と押鍵1414との間隔は上記所定間隔より短いため、押鍵1413、1414ではそれぞれ強調処理が行なわれる。その後の押鍵1414と押鍵1415との間隔は、上記所定間隔以上であるため、押鍵1415では強調処理は行なわれない。
ステップ602でNoと判断された場合には、CPU11は、鍵盤16の鍵の何れかの鍵の離鍵があったかを判断する(ステップ610)。ステップ610でYesと判断された場合には、CPU11は,自己パートの発音中の音符データについて、ノートオフイベントを生成して、RAM13のイベントエリアに格納する(ステップ611)。ステップ606でNoと判断された場合にも、CPU11は,自己パートの発音中の音符データについて、ノートオフイベントを生成して、RAM13のイベントエリアに格納する(ステップ611)。
ステップ601でNoと判断された場合には、CPU11は、鍵盤16の鍵の何れかの押鍵があったかを判断する(ステップ701)。ステップ701でYesと判断された場合には、CPU11は、自己パート認識処理を実行する(ステップ702)。自己パート認識処理については以下に詳述する。ステップ701でNoと判断された場合、或いは、自己パート認識処理(ステップ702)が実行された後、CPU11は、鍵盤16の鍵の何れかの離鍵があったかを判断する(ステップ703)。ステップ703でYesと判断された場合には、CPU11は,自己パートの発音中の音符データについて、ノートオフイベントを生成して、RAM13のイベントエリアに格納する(ステップ704)。
次に、自己パート認識処理(ステップ702)についてより詳細に説明する。図10は、本実施の形態にかかる自己パート認識処理の例を示すフローチャートである。図10に示すように、CPU11は、鍵がオフ状態からオン状態になったかを判断する(ステップ1001)。ステップ1001において、CPU11は、既に鍵がオン中であればNoと判断することになる。ステップ1001でYesと判断された場合には、CPU11は、自己パート認識処理用の第2のタイマを起動する(ステップ1002)。この第2のタイマのタイマ値も、図示しないタイマインタラプト処理においてインクリメントされる。
CPU11は、自己パートの曲データを参照して(ステップ1003)、第2のタイマによる現在時刻から所定の期間に、当該曲データにおいて発音時刻が到来する音符データが存在するかを判断する(ステップ1004)。本実施の形態において、上記所定の期間は、たとえば、1小節に相当する期間(4/4拍子における4分音符4つ分)である。ステップ1004でNoと判断された場合には、CPU11は、第2のタイマのタイマ値を、「3/4×(所定の期間)」に対応する時間だけ進める(ステップ1005)。たとえば、上記所定の期間が1小節(4/4拍子)であれば、CPU11は、4分音符3つ(符点2分音符)に相当する時間だけ第2のタイマのタイマ値を進める。ステップ1004〜1005によって、自己パートにおいて休符が所定の期間以上あれば、その休符を短縮して自己パートの音符の再生を行うことが可能となる。
ステップ1004でYesと判断された場合、或いは、ステップ1005が終了した後、CPU11は、自己パートの曲データ中、音符データを参照して、第2のタイマによる現在時刻が発音時刻に達した音符について、発音すべき楽音の音色、音高およびベロシティを含むノートオンイベントを生成し、RAM13のイベントエリアに格納する(ステップ1006)。また、CPU11は、自己パートの音符データを参照して、発音時間が経過した音符について、ノートオフイベントを生成し、RAM13のイベントエリアに格納する(ステップ1007)。
次に、ビートシンクロ処理(図4のステップ404)について説明する。図8は、本実施の形態にかかるビートシンクロ処理の例を示すフローチャートである。図8において、ステップ801〜806は、図6のステップ606〜606と同様である。また、ステップ808〜811も、図6のステップ608〜611と同様である。さらに、ポンピング処理と同様に、ステップ801でNoと判断された場合には、図7のステップ701〜704が実行される。
ビートシンクロ処理においては、ステップ806でYesと判断された場合に、CPU11は、押鍵タイミングが、時間軸上の所定の基準位置から所定時間の範囲内であったか否かを判断する。本実施の形態の形態では、基準位置は、拍の先頭位置であり、所定時間の範囲は、基準位置から4分音符の±(プラスマイナス)10%の範囲としている。ステップ806でYesと判断された場合には、CPU11は、強調処理を実行する(ステップ808)。強調処理においては、ステップ604で生成されたノートオンイベントのベロシティを、所定の割合(たとえば20パーセント)だけ増大させる。ステップ807でNoと判断された場合には、CPU11は、強調停止処理を実行する(ステップ809)。強調停止処理では、ステップ808によるベロシティの増大を解除する。
ビートシンクロ処理においては、演奏者による押鍵タイミングが、時間軸上の基準位置とほぼ一致する場合(基準位置から所定範囲内であった場合)に、ベロシティを所定の割合だけ増大させた楽音を発音させることができる。これにより、演奏者による楽曲のビートに合致した押鍵に応じてベロシティを増大させて演奏者における演奏への参加感を増すことが可能となる。
図14(b)は、ビートシンクロ処理における押鍵間隔と強調処理の有無を説明する図である。図14(b)の例でも図14(a)の例と同様に、楽曲は4/4拍子であり、太字の縦線1421、1425は小節線(小節の先頭位置)、他の縦線1422、1423、1424は、拍の先頭位置を示す。また、基準位置は、小節線の位置を含む拍の先頭位置である。また所定範囲は、拍の先頭位置にある横方向の矢印(たとえば、符号1426参照)で示している。押鍵1431、1432は、基準位置の所定範囲に含まれるため、それぞれの押鍵について強調処理が行なわれる。また、押鍵1433、1434は、基準位置の所定範囲に含まれないため強調処理は行なわれない。その一方、押鍵1435は、基準位置の所定範囲に含まれるため強調処理が行なわれる。
次に、ポンピング処理(図4のステップ403)、或いは、ビートシンクロ処理(ステップ404)の後に実行されるオクターブシフト処理(ステップ405)について説明する。図11は、本実施の形態にかかるオクターブシフト処理の例を示すフローチャートである。図11に示すように、CPU11は、押鍵された鍵がC2より低音側の鍵であるかを判断する(ステップ1101)。ステップ1101でYesと判断された場合には、ポンピング処理或いはビートシンクロ処理においてノートオンイベントが生成され、RAM13に格納されているかを判断する(ステップ1102)。ステップ1102でYesと判断された場合には、CPU11は、RAM13に格納されたノートオンイベントの音高情報を1オクターブ下げる(ステップ1103)。
また、CPU11は、押鍵された鍵がC4以上の音高の鍵であるかを判断する(ステップ1104)。ステップ1104でYesと判断された場合には、ポンピング処理或いはビートシンクロ処理においてノートオンイベントが生成され、RAM13に格納されているかを判断する(ステップ1105)。ステップ1105でYesと判断された場合には、CPU11は、RAM13に格納されたノートオンイベントの音高情報を1オクターブ上げる(ステップ1106)。
鍵盤処理(図2のステップ203)が終了すると、CPU11は伴奏処理を実行する(ステップ204)。図12は、本実施の形態にかかる伴奏処理の例を示すフローチャートである。図12に示すように、CPU12は、伴奏フラグSTFが「1」であるかを判断する(ステップ1201)。ステップ1201でYesと判断された場合には、CPU11は、自己パート以外のパートの音符データを参照して、現在時刻が発音時刻に達した音符について、発音すべき楽音の音色、音高およびベロシティを含むノートオンイベントを生成し、RAM13のイベントエリアに格納する(ステップ1202)。また、CPU11は、自己パート以外のパートの音符データを参照して、発音時間が経過した音符について、ノートオフイベントを生成し、RAM13のイベントエリアに格納する(ステップ1203)。
伴奏処理(ステップ204)が終了すると、CPU11は発音処理を実行する(ステップ205)。図13は、本実施の形態にかかる発音処理の例を示すフローチャートである。図13に示すように、CPU11は、RAM13のイベントエリアを参照して(ステップ1301)、未処理のイベントが存在するかを判断する(ステップ1302)。ステップ1302でNoと判断された場合には処理を終了する。ステップ1302でYesと判断された場合には、CPU11は、イベントがノートオンイベントであるかを判断する(ステップ1303)。ステップ1303でYesと判断された場合には、CPU11は、音源部21に対して、ノートオンイベントが示す音高の楽音を、所定の音色で発音するように指示を与える(ステップ1304)。音源部21は、指示に応答して、ROM12から指定された音色のプリセット波形データを、指定された音高に基づいて読み出して、かつ、読み出された波形データに、エンベロープに基づく乗算値を乗算して楽音波形データを生成し、オーディオ回路22に出力する。
ステップ1303でNoと判断された場合、つまり、イベントがノートオフイベントであった場合には、CPU11は、ノートオフイベントが示す音高の楽音を消音するように音源部21に指示を与える(ステップ1305)。音源部21は、指示に応答して、読み出された波形データに、徐々に減少するリリースのエンベロープを乗算して楽音波形データを生成してオーディオ回路22に出力する。
発音処理(ステップ205)が終了した後、CPU11は、他の必要な処理を実行する(ステップ206)。ステップ206における処理には、たとえば、表示部15への画像表示や、操作部18のスイッチに隣接して配置されたLED(図示せず)の点灯などが含まれる。
本実施の形態によれば、前回の鍵の押鍵タイミングと、今回の鍵の押鍵タイミングとの時間間隔(押鍵間隔)が、所定の時間間隔より短い場合に、当該押鍵操作に基づき生成される楽音データに関する音楽要素を強調する。これにより、演奏者の押鍵操作にしたがって再生される楽音にける所定の要素が強調され、演奏者の演奏への参加感を楽曲との一体感を高めることが可能となる。
本実施の形態において、所定の時間間隔は、楽曲における拍(たとえば、4/4拍子の4ビートにおける1ビート分)に対応する。これにより、ビートより早い押鍵という、演奏者の高揚感を反映した押鍵に応じて、楽音における所定の要素を強調することができる。
また、本実施の形態においては、押鍵タイミングが、時間軸上の基準位置の前後所定の範囲内であった場合に、当該押鍵操作に基づき生成される楽音データに関する音楽要素を強調する。これにより、演奏者の押鍵操作にしたがって再生される楽音にける所定の要素が強調され、演奏者の演奏への参加感を楽曲との一体感を高めることが可能となる。
本実施の形態において、前記基準位置は、拍の先頭位置であり、楽曲のビートと合致した押鍵に応じて、楽音における所定の要素を強調することができる。
本実施の形態においては、上記強調させる楽音の要素は、音量制御パラメータの一種であるベロシティである。ベロシティを増大させることで、楽曲の高揚感を高め、演奏者の演奏への参加感を楽曲との一体感をよりいっそう高めることが可能となる。
さらに、本実施の形態においては、押鍵操作された鍵が所定の音高(たとえばC4)より高い場合に、音符データに示される音高より、たとえば1オクターブ高い音高とし、押鍵操作された鍵が他の所定の音高(たとえばC2)より低い場合に、音符データに示される音高より、たとえば1オクターブ低い音高とする。このように構成することにより、音楽的な知識があまりない演奏者であっても直感的な操作によって、所望のように発音される楽音の音高を変更することが可能となる。
また、本実施の形態によれば、前回の鍵の押鍵操作から、第2の所定期間に鍵の押鍵操作が無かった場合に、自己パートの楽音の発音を停止する。これにより、演奏者が押鍵操作をしなかった場合、自己パート以外のパートの演奏のみを継続させることができる。
また、本実施の形態によれば、自動伴奏フラグSTFが「0」である場合に、鍵の押鍵操作があると、CPU11は、自己パートの音符データに関して、音符データ中の発音時刻にしたがって、当該音符データに示される音高の楽音データを発音させる。ここでは、STFが「1」のときに作動する現在時刻を示すためのタイマ以外の第2のタイマを作動させることで、自己のパートの音符データについての発音時刻の到来を判断することができる。これにより、自動演奏を開始しない状態、つまり、演奏前に、演奏者は、自己パートの楽曲がどのようなものであるかを知ることが可能となる。
本発明は、以上の実施の形態に限定されることなく、特許請求の範囲に記載された発明の範囲内で、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
たとえば、本実施の形態にかかるポンピング処理において、前回の押鍵時刻と今回の押鍵時刻との間の押鍵間隔を参照して、所定間隔より短いか否かを判断している。しかしながら、これに限定されるものではなく、以下のような判断を行っても良い。図15は、他の実施の形態にかかるポンピング処理の例を示すフローチャートである。図15において、ステップ1501〜1506、1508〜1511は、図6のステップ601〜606、608〜611と同様である。
この実施の形態においては、ステップ1506でYesと判断された場合に、CPU11は、押鍵履歴を参照して、前々回の押鍵時刻と前回の押鍵時刻との間の押鍵間隔(前回の押鍵間隔)と、前回の押鍵時刻と今回の押鍵時刻との間の押鍵間隔(今回の押鍵間隔)とを比較して、前回の押鍵間隔より今回の押鍵間隔の方が小さい、つまり、押鍵間隔が短縮されているかを判断する(ステップ1507)。ステップ1507でYesと判断された場合には、CPU11は、強調処理を実行する(ステップ1508)。ステップ1507でNoと判断された場合には、CPU11は、強調停止処理を実行する(ステップ1509)。
上記実施の形態によれば、前々回の押鍵タイミングと前回の押鍵タイミングとの間の、前回の時間間隔と、前回の押鍵タイミングと今回の演奏タイミングとの間の、今回の時間間隔との比較に基づいて、今回の時間間隔の方が小さい場合に、当該押鍵操作に基づき生成される楽音データに関する音楽要素、たとえば、ベロシティを強調する。これにより、演奏者の高揚感による押鍵の加速に応じて、楽音における所定の要素を強調することができる。
また、前記実施の形態においては、強調処理において、ノートオンイベントのベロシティを、所定の割合(たとえば20パーセント)だけ増大させている。強調処理は上記ベロシティの増大に限定されるものではない。たとえば、
(1)電子楽器の音源部21とオーディオ回路11との間に、イコライザ回路(図示せず)が設けられていれば、強調処理において、イコライザ回路のパラメータ(所定の周波数におけるゲイン)を増大させれば良い。たとえば、このパラメータとして、周波数f=1KHz、QファクタQ=1で、ゲインG=+5dBなどとすれば良い。
(2)また、音源部21とオーディオ回路11との間に、エキサイタが設けられていれば、エキサイタにおける倍音成分のミックス比を所定の割合(たとえば20%)増大させれば良い。
(3)さらに、音源部21において、ステレオ出力が可能な場合に、強調処理において、パンポットによって所定周波数で、自己パートの楽音波形データを左右に振り分けて出力しても良い。
(4)また、強調処理において、電子楽器のLED(図示せず)を点灯させ、或いは、表示部15に所定の画像表示をしても良い。
(5)さらに、強調処理において自己パートの発音タイミングを変更しても良い。この場合には、CPU11は、強調処理において、CPU11は、自己パートにかかる音符データを読み出して、その発音時刻を、所定時間だけ(たとえば、数十ミリ秒という絶対時間、或いは、32分音符など所定の音符長)早くして、新たな音符データを、RAM13に格納し、RAM13の音符データを参照して、ノートオンイベントを生成するように構成しても良い。このような構成により、強調処理において、いわゆる前ノリで自己パートを発音させることができ、強いアタック感を実現することが可能となる。
或いは、発音時刻を早めた新たな発音時刻を生成するのではなく、自己パートのノートオンイベントおよびノートオフイベント生成のための第3のタイマを起動し、第3のタイマによる時刻が、他のパートのノートオンイベント等の生成のためのタイマの時刻より、所定時間だけ早められていても良い。
10 電子楽器
11 CPU
12 ROM
13 RAM
14 サウンドシステム
15 表示部
16 鍵盤
18 操作部
21 音源部
22 オーディオ回路
23 スピーカ

Claims (5)

  1. 楽曲を構成する複数のパートの各々について、当該パート中の音符の発音時刻および音高を少なくとも含む音符データから構成される曲データを格納した曲データ記憶手段と、
    所定のパートの前記音符データに関して、演奏操作子の押鍵操作に基づき、かつ、現在時刻が発音時刻に達した音符データについて、当該音符データに示される音高の楽音データを発音させるためのイベントを生成するとともに、前記所定のパート以外の前記音符データに関して、現在時刻が発音時刻に達した音符データについて、当該音符データに示される音高の楽音データを発音させるためのイベントを生成する制御手段と、
    前記制御手段により生成されたイベントに基づいて、当該イベントにしたがった音高の楽音データを生成する楽音データ生成手段と、を備え、
    前記制御手段が、前々回の演奏操作子の操作タイミングと前回の押鍵操作子の操作タイミングとの間の、前回の時間間隔と、前回の演奏操作子の操作タイミングと今回の演奏操作子の操作タイミングとの間の、今回の時間間隔との比較に基づいて、前記演奏操作子の押鍵操作に基づき生成される楽音データを構成する何れかの音楽要素を強調させる強調制御手段を有することを特徴とする電子楽器。
  2. 前記強調制御手段が、前記イベントにおける音量制御パラメータを増大させることを特徴とする請求項に記載の電子楽器。
  3. 前記演奏操作子が鍵盤の鍵であり、
    前記制御手段が、押鍵操作された鍵が所定の音高より高い場合に、前記鍵の押鍵操作に基づくイベントにおいて、前記音符データに示される音高より高い音高となるように前記イベントを修正し、押鍵操作された鍵が他の所定の音高より低い場合に、前記鍵の押鍵操作に基づくイベントにおいて、前記音符データに示される音高より低い音高となるように前記イベントを修正するイベント修正手段を有することを特徴とする請求項1または2に記載の電子楽器。
  4. 前記制御手段が、前回の演奏操作子の押鍵操作から、第2の所定期間に演奏操作子の押鍵操作が無かった場合に、前記演奏操作子の押鍵操作に基づく楽音データについてのイベントの生成を停止するように構成されたことを特徴とする請求項1ないしの何れか一項に記載の電子楽器。
  5. 楽曲を構成する複数のパートの各々について、当該パート中の音符の発音時刻および音高を少なくとも含む音符データから構成される曲データを格納した曲データ記憶手段を有するコンピュータに、
    所定のパートの前記音符データに関して、演奏操作子の押鍵操作に基づき、かつ、現在時刻が発音時刻に達した音符データについて、当該音符データに示される音高の楽音データを発音させるためのイベントを生成するとともに、前記所定のパート以外の前記音符データに関して、現在時刻が発音時刻に達した音符データについて、当該音符データに示される音高の楽音データを発音させるためのイベントを生成する制御ステップと、
    前記制御ステップにより生成されたイベントに基づいて、当該イベントにしたがった音高の楽音データを生成する楽音データ生成ステップと、を実行させ、
    前記制御ステップが、前々回の演奏操作子の操作タイミングと前回の押鍵操作子の操作タイミングとの間の、前回の時間間隔と、前回の演奏操作子の操作タイミングと今回の演奏操作子の操作タイミングとの間の、今回の時間間隔との比較に基づいて、前記演奏操作子の押鍵操作に基づき生成される楽音データを構成する何れかの音楽要素を強調させる強調制御ステップを有することを特徴とする自動演奏プログラム。
JP2009060617A 2009-03-13 2009-03-13 電子楽器および自動演奏プログラム Active JP5560574B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009060617A JP5560574B2 (ja) 2009-03-13 2009-03-13 電子楽器および自動演奏プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009060617A JP5560574B2 (ja) 2009-03-13 2009-03-13 電子楽器および自動演奏プログラム

Publications (2)

Publication Number Publication Date
JP2010217230A JP2010217230A (ja) 2010-09-30
JP5560574B2 true JP5560574B2 (ja) 2014-07-30

Family

ID=42976202

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009060617A Active JP5560574B2 (ja) 2009-03-13 2009-03-13 電子楽器および自動演奏プログラム

Country Status (1)

Country Link
JP (1) JP5560574B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7251050B2 (ja) * 2018-03-23 2023-04-04 カシオ計算機株式会社 電子楽器、電子楽器の制御方法及びプログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0746273B2 (ja) * 1984-12-05 1995-05-17 カシオ計算機株式会社 自動伴奏装置
JP3018821B2 (ja) * 1993-03-19 2000-03-13 ヤマハ株式会社 自動演奏装置
JPH0997063A (ja) * 1995-09-29 1997-04-08 Kawai Musical Instr Mfg Co Ltd 電子楽器
JP3303713B2 (ja) * 1997-02-21 2002-07-22 ヤマハ株式会社 自動演奏装置
JP2001022353A (ja) * 1999-07-08 2001-01-26 Yamaha Corp 楽音信号処理装置及び媒体
JP2001125568A (ja) * 1999-10-28 2001-05-11 Roland Corp 電子楽器
JP3743364B2 (ja) * 2001-12-13 2006-02-08 ヤマハ株式会社 演奏練習装置
JP3819916B2 (ja) * 2004-03-31 2006-09-13 株式会社コナミデジタルエンタテインメント ゲーム装置及びプログラム
JP4320782B2 (ja) * 2006-03-23 2009-08-26 ヤマハ株式会社 演奏制御装置、およびプログラム
JP2007264059A (ja) * 2006-03-27 2007-10-11 Yamaha Corp 電子楽器
JP2009025503A (ja) * 2007-07-19 2009-02-05 Kawai Musical Instr Mfg Co Ltd 電子楽器
JP5029258B2 (ja) * 2007-09-28 2012-09-19 カシオ計算機株式会社 演奏練習支援装置および演奏練習支援処理のプログラム

Also Published As

Publication number Publication date
JP2010217230A (ja) 2010-09-30

Similar Documents

Publication Publication Date Title
JP5168297B2 (ja) 自動伴奏装置および自動伴奏プログラム
JP5041015B2 (ja) 電子楽器および楽音生成プログラム
JP2008076721A (ja) 電子鍵盤楽器
WO2014025041A1 (ja) 発音割り当てのための装置及び方法
JP5897805B2 (ja) 楽音制御装置
JP2008089975A (ja) 電子楽器
JP6930144B2 (ja) 電子楽器、楽音発生方法およびプログラム
JP5560574B2 (ja) 電子楽器および自動演奏プログラム
CN113140201B (zh) 伴奏音生成装置、电子乐器、伴奏音生成方法及伴奏音生成程序
JP2010117419A (ja) 電子楽器
JP4670686B2 (ja) コード表示装置及びプログラム
JP2022006247A (ja) 電子楽器、伴奏音指示方法、プログラム、及び伴奏音自動生成装置
JP5692275B2 (ja) 電子楽器
JP6410345B2 (ja) サウンドプレビュー装置及びプログラム
JP5564921B2 (ja) 電子楽器
JP5412766B2 (ja) 電子楽器及びプログラム
US20230035440A1 (en) Electronic device, electronic musical instrument, and method therefor
JPH0566776A (ja) 自動伴奏装置
JP5742592B2 (ja) 楽音生成装置、楽音生成プログラム及び電子楽器
JP7263998B2 (ja) 電子楽器、制御方法およびプログラム
JP5600968B2 (ja) 自動演奏装置および自動演奏プログラム
JP6305275B2 (ja) 電子楽器における音声アシスト装置及びプログラム
JP6102975B2 (ja) 楽音生成装置、楽音生成プログラム及び電子楽器
JP5983624B6 (ja) 発音割り当てのための装置及び方法
JP4900233B2 (ja) 自動演奏装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120227

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130829

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131001

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131126

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140526

R150 Certificate of patent (=grant) or registration of utility model

Ref document number: 5560574

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150