説明

電子楽器

【課題】演奏者のリアルタイムな演奏操作に基づく弦楽器によるストラム奏法の模擬を容易に実現し得る電子楽器を提供すること。
【解決手段】本発明によれば、所定期間内に入力された複数の発音指示を発音指示群と特定し、その発音指示群を構成する複数の発音指示を所定の音高順にソートする。そして、発音指示群に対応する楽音をソートされた順に発音するように楽音の生成を制御する。よって、演奏者は、例えば、和音を弾くかのような演奏を行うだけで、押鍵されたそれらの複数の鍵に対応する各楽音を、所定の音高順で順次発音させることができ、弦楽器(例えば、ギター)によるストラム奏法の模擬を容易に実現し得る。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子楽器に関し、演奏者のリアルタイムな演奏操作に基づく弦楽器によるストラム奏法の模擬を容易に実現し得る電子楽器に関する。
【背景技術】
【0002】
シンセサイザ等の電子楽器は、多種類の音色の楽音を発音することができる。電子楽器で自然楽器の演奏を模擬する場合には、音色を自然楽器の音色に忠実に似せるだけでなく、演奏者が、その楽器固有の特徴を踏まえた上で、電子楽器のユーザインタフェイス(例えば、鍵盤、ピッチベンドレバー、モジュレーションレバー、HOLDペダル等)を演奏中に操作しながら演奏する必要がある。そのため、演奏者が電子楽器を用いてある楽器の演奏を模擬しようとする場合には、演奏者は、模擬しようとする楽器の特徴をよく理解する必要があるとともに、その特徴に応じてユーザインタフェイスを演奏中に駆使するといった高度な演奏技術が要求される。
【0003】
例えば、ギターの奏法の1つとして、和音の構成音が音高順に発音されるように弦をかき鳴らすストラム奏法がある。このストラム奏法を電子楽器で模擬する場合には、演奏者は、和音の構成音が音高の低い側から高い側に順次発音されるように鍵盤を押鍵したり、その逆に、音高の高い側から低い側に順次発音されるように鍵盤を押鍵する必要がある。しかも、この音高順に押鍵する操作を、演奏者が瞬時に行わなければならないので、ストラム奏法を模擬するには、高度な演奏技術が要求される。
【0004】
特許文献1には、予め準備された演奏データに基づき、アップストローク時やダウンストローク時の発音を制御する技術が記載されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特許3680756号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、上記特許文献1に記載される技術は、上述した通り、予め準備された演奏データに基づくものである。そのため、リアルタイムな演奏によってストラム奏法を模擬する場合には高度な演奏技術が必要であるという、演奏者が抱える問題を解決することはできない。
【0007】
本発明は、上述した事情を鑑みてなされたものであり、演奏者のリアルタイムな演奏操作に基づく弦楽器によるストラム奏法の模擬を容易に実現し得る電子楽器を提供することを目的としている。
【課題を解決するための手段および発明の効果】
【0008】
この目的を達成するために、請求項1記載の電子楽器によれば、所定期間内に入力手段により入力された複数の発音指示が、特定手段によって発音指示群と特定される。すると、特定された発音指示群を構成する複数の発音指示が、ソート手段により所定の音高順にソートされる。そして、発音指示群に対応する楽音が、ソート手段によりソートされた順に発音するように、楽音生成手段による楽音の生成が制御手段によって制御される。
【0009】
よって、演奏者は、発音させたい音高順で瞬時に発音指示を入力することなく、発音指示群を構成する複数の発音指示を所定期間内に入力すれば、それらの複数の発音指示に対応する各楽音を、所定の音高順で順次発音させることができる。従って、例えば、演奏者は、和音を弾くかのように(即ち、同時又はほぼ同時に)複数の鍵を押鍵するだけで、押鍵されたそれらの複数の鍵に対応する各楽音を、所定の音高順で順次発音させることができる。このように、請求項1記載の電子楽器によれば、演奏者のリアルタイムな演奏操作に基づく弦楽器(例えば、ギター)によるストラム奏法の模擬を容易に実現し得るという効果がある。
【0010】
請求項2記載の電子楽器によれば、請求項1が奏する効果に加え、所定の発音指示との時間差に基づき、発音指示群を特定できるという効果がある。なお、請求項2において「所定の発音指示」とは、例えば、前回の発音指示、あるいは発音指示群を構成する複数の発音指示の中の最初の発音指示などである。
【0011】
請求項3記載の電子楽器によれば、請求項2が奏する効果に加え、前回の発音指示との時間差に基づき、発音指示群を特定できるという効果がある。
【0012】
請求項4記載の電子楽器によれば、請求項1が奏する効果に加え、所定の発音指示から所定期間内に前記入力手段により入力された複数の発音指示を、発音指示群と特定できるという効果がある。なお、請求項4において「所定の発音指示」とは、例えば、発音指示群を構成する複数の発音指示の中の最初の発音指示などである。
【0013】
請求項5記載の電子楽器によれば、請求項1が奏する効果に加え、特定手段により発音指示群が特定されたタイミングに基づく開始タイミングから、発音指示群に対応する楽音を順次発音できるという効果がある。
【0014】
請求項6記載の電子楽器によれば、請求項1が奏する効果に加え、次の効果を奏する。発音指示が入力される毎に、それ以前に入力された発音指示に基づき発音中であった楽音を一旦消音してから、発音指示群として特定された発音指示に対応する楽音を、ソート手段によりソート所定の音高順で発音させることができる。よって、発音指示が入力されてから、発音指示群として特定された発音指示に対応する楽音が生成されるまでのレスポンス性に優れるという効果がある。
【0015】
請求項7記載の電子楽器によれば、請求項1が奏する効果に加え、次の効果を奏する。連続する2つの発音指示群に対してそれぞれ規定される基準時刻が第2所定期間内にある場合には、後者の発音指示群を構成する複数の発音指示に対してソートする音高順が、逆順に変更される。よって、演奏者が、和音を弾くかのような演奏を繰り返し、発音指示群を繰り返し入力することにより、音高の低い側から高い側に向かって発音される場合と、音高の高い側から低い側に向かって発音される場合とを交互に繰り返すことができる。つまり、演奏者は、和音を弾くかのような簡単な演奏により、ダウンストロークとアップストロークとを交互に行うストラム奏法を実現できるという効果がある。
【0016】
請求項8記載の電子楽器によれば、請求項1が奏する効果に加え、次の効果を奏する。ベロシティ取得手段により取得されたベロシティが大きいほど短い時間間隔で、発音指示群に対応する楽音が順次発音される。よって、例えば、鍵盤により発音指示を入力する場合には、演奏者が強く押鍵する程、短い間隔で、発音指示群を構成する複数の発音指示に対応する各楽音が発音される。よって、演奏者が、感覚的にベロシティを変化させることによってストロークの速さを模倣でき、容易な演奏操作で効果的なストラム奏法を実現できるという効果がある。
【図面の簡単な説明】
【0017】
【図1】本発明の一実施形態である電子楽器の外観図である。
【図2】電子楽器の電気的構成を示すブロック図である。
【図3】電子楽器のCPUが実行するノートイベント処理を示すフローチャートである。
【図4】電子楽器のCPUが実行するタイマイベント処理を示すフローチャートである。
【図5】演奏者による鍵の押鍵によって入力されたノートの状態と、実際の発音状態とを説明するための説明図である。
【図6】発音順と、ストラム模擬の開始タイミングからの遅延時間との関係の一例を示すグラフである。
【図7】ベロシティと、ストラム時間との関係の一例を示すグラフである。
【発明を実施するための形態】
【0018】
以下、本発明の好ましい実施例について、添付図面を参照して説明する。図1は、本発明の一実施形態である電子楽器1の外観図である。図1に示すように、電子楽器1は、複数の鍵2aから構成される鍵盤2を有する電子鍵盤楽器である。演奏者は、電子楽器1の鍵盤2(鍵2a)を押鍵/離鍵操作することにより所望の演奏をすることができる。
【0019】
鍵盤2は、演奏者により操作されるユーザインタフェイスの1つであり、演奏者による鍵2aに対する押鍵/離鍵操作に応じたMIDI(Musical Instrument Digital Interface)規格の演奏情報としてのノートイベントをCPU11(図2参照)へ出力するものである。具体的に、演奏者により鍵2aが押鍵された場合には、鍵盤2は、鍵2aの押鍵されたことを示す演奏情報であるノートオンイベント(以下「ノートオン」と称する)をCPU11へ出力する。一方で、演奏者により押鍵されていた鍵2aが離鍵された場合には、鍵盤2は、鍵2aが離鍵されたことを示す演奏情報であるノートオフイベント(以下「ノートオフ」と称する)をCPU11へ出力する。
【0020】
詳細は後述するが、本実施形態の電子楽器1は、演奏者が、和音を弾くかのように(即ち、同時又はほぼ同時に)複数の鍵2aを押鍵操作した場合には、その押鍵操作をストラム奏法の模擬であるとみなし、押鍵された鍵2aに対応する各楽音が所定の音高順で順次発音されるように構成されている。かかる構成により、弦楽器(例えば、ギター)によるストラム奏法を容易な演奏操作で模擬可能にしている。
【0021】
図2は、電子楽器1の電気的構成を示すブロック図である。図2に示すように、電子楽器1は、CPU11と、ROM12と、RAM13と、音源14とを有しており、これらの各部11〜14及び鍵盤2は、バスライン16を介して互いに接続されている。電子楽器1はまた、デジタルアナログコンバータ(DAC)15を有している。DAC15は、音源14に接続されると共に、電子楽器1の外部に設けられたアンプ31に接続される。
【0022】
CPU11は、ROM12やRAM13に記憶される固定値データや制御プログラムに従って、電子楽器1の各部を制御する中央制御装置である。CPU11は、クロック信号を計数することにより、時刻を計時するタイマ11aを内蔵している。
【0023】
CPU11は、ノートオン(鍵2aが押鍵されたことを示す演奏情報)を鍵盤2から受信すると、音源14に発音指示を出力することによって、音源14にノートオンに応じた楽音(オーディオ信号)の生成を開始させる。また、CPU11は、ノートオフ(押鍵されていた鍵2aが離鍵されたことを示す演奏情報)を鍵盤2から受信すると、音源14に消音指示を出力することにより消音制御を行う。これにより、音源14で発生中の楽音が停止される。
【0024】
ROM12は、書き替え不能なメモリであって、CPU11に実行させる制御プログラム12aや、この制御プログラム12aが実行される際にCPU11により参照される固定値データ(図示せず)などが記憶される。なお、図3及び図4のフローチャートに示す各処理は、制御プログラム12aにより実行される。
【0025】
RAM13は、書き替え可能なメモリであり、CPU11が制御プログラム12aを実行するにあたり、各種のデータを一時的に記憶するためのテンポラリエリアを有する。RAM13のテンポラリエリアには、発音バッファ13aと、押鍵時刻メモリ13bと、ストラム開始ノートメモリ13cと、発音時刻カウンタ13dと、アップストロークフラグ13eとが設けられている。
【0026】
発音バッファ13aは、発音対象のノートに対応するノートイベント(具体的には、ノートオン)を格納するバッファである。発音バッファ13aは、電子楽器1への電源が投入された場合に初期化(ゼロクリア)される。そして、演奏者により鍵2aが押鍵される毎に、CPU11が鍵盤2から受信したノートオンが発音バッファ13aに順次格納される。CPU11は、発音バッファ13aに格納された押鍵順が最も早い(即ち、押鍵時刻が最も古い)ノートオンから順に、各ノートオンに対応する発音指示を音源14に出力する。一方で、発音バッファ13aに格納されたノートオンは、そのノートオンに対応する鍵2aが離鍵されると削除される。
【0027】
なお、詳細は後述するが、本実施形態では、複数の鍵2aが、演奏者によって同時又はほぼ同時に押鍵された場合には、各鍵が押鍵される毎に、発音バッファ13aに格納されているノートオン(より詳細には、ストラム開始ノート以降のノートオン)が、アップストロークフラグ13eの設定に応じた音高順でソートされるように構成されている。かかる構成により、演奏者が和音を弾くかのように複数の鍵2aを押鍵すると、各鍵の押鍵順序とは無関係に、押鍵された複数の鍵2aのそれぞれに対応する各楽音を、弦楽器のストラム奏法であるかのように、所定の音高順(昇順又は降順)で順次発音させることが可能となる。
【0028】
押鍵時刻メモリ13bは、押鍵時刻を押鍵順に記憶するためのメモリである。押鍵時刻メモリ13bは、電子楽器1への電源が投入された場合に初期化される。そして、CPU11が鍵盤2からノートオンを受信する毎に、タイマ11aにより計時される時刻が、押鍵時刻として、受信したノートオンが示すノート(ノートナンバ)とともに、押鍵時刻メモリ13bに順次記憶される。本実施形態では、押鍵順に最新の所定数(例えば、10)の押鍵時刻を記憶可能な構成とするが、鍵2aが離鍵された場合に、対応するノートの押鍵時刻を消去する構成としてもよい。連続する押鍵の押鍵間隔は、押鍵時刻メモリ13bの記憶内容に基づき、今回の押鍵の押鍵時刻と、前回の押鍵の押鍵時刻との差によって算出する。
【0029】
ストラム開始ノートメモリ13cは、1回のストラム(ストローク)を構成する複数回の連続する押鍵のうち、最初の押鍵となり得る押鍵に対応するノートを、ストラム開始ノートとして記憶するためのメモリである。ストラム開始ノートメモリ13cは、電子楽器1への電源が投入された場合に初期化される。そして、鍵2aが押鍵された場合に、今回ノート(今回の押鍵に対応するノート)と、前回ノート(前回の押鍵に対応するノート)との押鍵間隔が、ストラム判定時間として規定される10msecを超えた場合に、今回ノートがストラム開始ノートとしてストラム開始ノートメモリ13cに記憶される。ストラム開始ノートメモリ13cに記憶された内容は、ストラム開始ノートに対応する鍵2aが離鍵された場合にゼロクリアされる。
【0030】
発音時刻カウンタ13dは、1回のストラムを構成する複数回の連続する押鍵のそれぞれに対応する各楽音を順次発音させる場合に、各楽音の発音タイミングを計時するためのカウンタである。発音時刻カウンタ13dは、今回ノートが、ストラム対象ノートの1つであると判定(特定)されると、その都度、初期値であるゼロにリセットされる。なお、「ストラム対象ノート」とは、1回のストラム(ストローク)を構成する複数回の連続する押鍵のそれぞれに対応するノートの群である。一方で、発音時刻カウンタ13dは、タイマイベント処理(図4参照)が実行される毎に、1ずつカウントアップされる。そして、発音時刻カウンタ13dの値に基づいて、1回のストラムを構成する複数回の連続する押鍵に対応する各楽音(即ち、ストラム対象ノートに対応する各楽音)は、ソートされた音高順で、順次切り替えられて発音される。
【0031】
アップストロークフラグ13eは、ストラム対象ノートを構成する各ノートを音高順にソートする際のソート順を規定するフラグである。アップストロークフラグ13eがオンに設定されている場合には、ソート順は、弦楽器のアップストロークに相当する音高順、即ち、音高が高い側から低い側へ向かう順(降順)に規定される。一方、アップストロークフラグ13eがオフに設定されている場合には、ソート順は、弦楽器のダウンストロークに相当する音高順、即ち、音高が低い側から高い側へ向かう順(昇順)に規定される。
【0032】
アップストロークフラグ13eは、電子楽器1への電源が投入された場合、又は、今回ノートと、ストラム開始ノートメモリ13cに記憶されているストラム開始ノートの押鍵間隔が、オルタネイト判定時間として規定される500msecを超える場合に、初期化(オフに設定)される。一方で、今回ノートとストラム開始ノートとの押鍵間隔が、オルタネイト判定時間以下であり、新たなストラムが開始されると判定される場合には、アップストロークフラグ13eのオンとオフとが切り替えられる。
【0033】
音源14は、CPU11から受信した発音指示又は消音指示に基づいて、演奏者が設定した音色の楽音を押鍵された鍵2aに対応する音高で発生したり、発生中の楽音を停止したりするものである。音源14は、CPU11から発音指示を受信すると、その発音指示に応じた音高、音量、音色の楽音(オーディオ信号)を発生する。音源14により発生された楽音は、DAC15に供給されてアナログ信号に変換されて、アンプ31を介してスピーカ32から発音(放音)される。一方で、音源14は、CPU11から消音指示を受信すると、その消音指示に従って発生中の楽音を停止する。これに伴い、スピーカ32から発音されていた楽音が消音される。
【0034】
次に、図3及び図4を参照して、上記構成を有する本実施形態の電子楽器1のCPU11が実行する処理について説明する。図3は、CPU11が実行するノートイベント処理を示すフローチャートである。このノートイベント処理は、ギターの音色が設定されている場合に、CPU11が、鍵盤2からノートイベント(ノートオン又はノートオフ)を受信する毎に実行される。
【0035】
図3に示すように、ノートイベント処理では、まず、鍵盤2から受信したノートイベントがノートオンであるか否かを判定する(S1)。S1において、受信したノートイベントがノートオンであると判定された場合には(S1:Yes)、受信したノートイベント(ノートオン)を発音バッファ13aに格納する(S2)。次いで、押鍵時刻メモリ13bを参照し、今回ノート(今回押鍵されたノート)と、前回ノート(前回押鍵されたノート)との押鍵間隔が、ストラム判定時間として規定される10msec以下であるか否かを判定する(S3)。
【0036】
S3において、前回ノートとの押鍵間隔がストラム判定時間(10msec)を超えると判定された場合には(S3:No)、処理をS10へ移行する。なお、S3において、押鍵時刻メモリ13bに前回ノートの押鍵時刻が存在しない場合もまた、処理をS10へ移行する。
【0037】
S10では、鍵盤2から受信したノートオンに応じた発音処理を実行する(S10)。即ち、受信したノートオンに応じた発音指示を音源14へ出力することにより、今回ノートに対応する楽音を発生させる。
【0038】
S10の処理後、押鍵時刻メモリ13bを参照し、今回ノートと、ストラム開始ノートメモリ13cに記憶されるストラム開始ノートとの押鍵間隔が、オルタネイト判定時間として規定される500msec以下であるか否かを判定する(S11)。
【0039】
S11において、今回ノートとストラム開始ノートとの押鍵間隔が、オルタネイト判定時間を超えると判定された場合には(S11:No)、演奏者がダウンストロークとアップストロークとを交互に行うストラム奏法を行うことを意図していないとみなし、アップストロークフラグ13eをオフに設定する(S15)。S15の処理によって、アップストロークフラグ13eがオフに設定される(初期化される)ことにより、演奏者がストラムの開始を意図して複数の鍵2aを操作した場合には、音高が低い側から高い側へ向かう順に発音されるダウンストロークのストラムが実行される。S15の処理後、今回ノートをストラム開始ノートメモリ13cに記憶することにより、今回ノートをストラム開始ノートに設定し(S14)、ノートイベント処理を終了する。
【0040】
一方で、S3において、今回ノートと前回ノートとの押鍵間隔がストラム判定時間(10msec)以下であると判定された場合には(S3:Yes)、演奏者が、ストラムを意図して、複数の鍵2aに対して和音を弾くかのような押鍵操作を行ったものとみなし、ストラム奏法を模擬するための各処理を実行する。
【0041】
具体的に、S3においてYesと判定された場合には、ストラム開始ノート以降のノートに対応する消音指示を音源14へ出力することにより、ストラム開始ノート以降の楽音を消音させる(S4)。S4の処理後、発音時刻カウンタ13dをリセットする(S5)。
【0042】
S5の処理後、アップストロークフラグ13eがオンであるか否かを判定し(S6)、アップストロークフラグ13eがオフであると判定された場合には(S6:No)、発音バッファの昇順ソート処理を実行する(S7)。発音バッファの昇順ソート処理(S7)では、音高が昇順(音高が低い側から高い側へ向かう順)に並ぶように、発音バッファ13aに格納されている各ノートオンのソートを行う。
【0043】
一方で、S6において、アップストロークフラグ13eがオンであると判定された場合には(S6:Yes)、発音バッファの降順ソート処理を実行する(S9)。発音バッファの降順ソート処理(S9)では、音高が降順(音高が高い側から低い側へ向かう順)に並ぶように、発音バッファ13aに格納されている各ノートオンのソートを行う。
【0044】
S7又はS9の処理後、ストローク発音処理を実行し(S8)、ノートイベント処理を終了する。ストローク発音処理(S8)では、音高が昇順又は降順となるようにソートされた各ノートオンの発音タイミングを、今回ノートのベロシティに応じて決定すると共に、ソート後の発音バッファ13aにおける最初のノートオンに応じた発音指示を音源14に出力し、対応する楽音を発生させる。なお、今回ノートのベロシティに応じた発音タイミングの決定の仕方については、図6及び図7を参照して後述する。
【0045】
また、S11において、今回ノートとストラム開始ノートとの押鍵間隔が、オルタネイト判定時間(500msec)以下であると判定された場合には(S11:Yes)、演奏者がストローク方向の切り替えを意図して和音の弾き替えを行ったものとみなし、アップストロークフラグ13eのオンとオフとを切り換えるための処理を実行する。
【0046】
具体的に、S11においてYesと判定された場合には、アップストロークフラグ13eがオンであるか否かを判定し(S12)、オフであると判定された場合には(S12:No)、アップストロークフラグ13eをオンに設定する(S13)。一方で、アップストロークフラグ13eがオンであると判定された場合には(S12:Yes)、アップストロークフラグ13eをオフに設定する(S15)。そして、S13又はS15の処理後、今回ノートをストラム開始ノートメモリ13cに記憶することにより、今回ノートをストラム開始ノートに設定し(S14)、ノートイベント処理を終了する。
【0047】
一方で、S1において、鍵盤2から受信したノートイベントがノートオフであると判定された場合には(S1:No)、受信したノートオフが、ストラム開始ノートメモリ13cに記憶されるノート(ストラム開始ノート)に対応するものであるか否かを判定する(S16)。
【0048】
S16において、受信したノートオフがストラム開始ノートに対応するものであると判定された場合には(S16:Yes)、ストラム開始ノートメモリ13cをゼロクリアすることにより、ストラム開始ノートをリセットし(S17)、処理をS18へ移行する。一方で、S16において、受信したノートオフがストラム開始ノートに対応するものでないと判定された場合には(S16:No)、処理をS18へ移行する。
【0049】
S18では、受信したノートオフに対応するノートイベントを発音バッファ13aから削除する(S18)。次いで、受信したノートオフに応じた消音処理を実行する(S19)。即ち、受信したノートオフに応じた消音指示を音源14へ出力することにより、離鍵されたノートに対応する楽音の生成を消音させる。S19の処理後、ノートイベント処理を終了する。
【0050】
図4は、CPU11が実行するタイマイベント処理を示すフローチャートである。このタイマイベント処理は、上述した図3のノートイベント処理が実行される音色が設定されている場合に、10msec毎の割込処理によって起動する処理である。タイマイベント処理では、まず、発音時刻カウンタ13dの値をカウントアップする(S21)。
【0051】
次いで、カウントアップされた発音時刻カウンタ13dの値が、発音タイミングに達したか否かを判定する(S22)。発音タイミングは、上述したノートイベント処理(図3参照)におけるS8のストローク発音処理により決定されたものである。S22において、発音時刻カウンタ13dの値が発音タイミングに達していないと判定された場合には(S22:No)、タイマイベント処理を終了する。
【0052】
一方で、S22において、発音時刻カウンタ13dの値が発音タイミングに達したと判定された場合には(S22:Yes)、発音バッファ13aに格納されている次のノートオンに応じた発音指示を音源14に出力し、対応する楽音を発生させ(S23)、タイマイベント処理を終了する。
【0053】
上述した図3及び図4の各処理によれば、ストラム判定時間(本実施形態では、10msec)以下の押鍵間隔で複数の鍵2aが押鍵された場合には、それらの押鍵をストラム奏法の模擬によるものだとみなし、これらの鍵2aに対応するノートをストラム対象ノートと特定して、CPU11が鍵盤2からノートオンを受信する毎に、前回までのストラム対象ノートに対応する楽音の消音と、今回ノートを含むストラム対象ノートの音高順でのソートと、ソート後のストラム対象ノートの順次発音とを実行する。よって、演奏者が、例えば、和音を弾くかのように複数の鍵2aを同時又はほぼ同時に押鍵することにより、押鍵された複数の鍵2aを所定の音高順(アップストロークフラグ13eの設定に従う音高順)で順次発音させることができる。
【0054】
また、一群のストラム対象ノートと別の群のストラム対象ノートとが、オルタネイト判定時間(本実施形態では、500msec)以下の間隔で押鍵された場合には、ストローク方向の切り替えとみなし、その都度、アップストロークフラグ13eの設定を切り換える。よって、演奏者が、例えば、和音の弾き替えを行うかのように、複数の鍵2aを同時又はほぼ同時に押鍵することを繰り返せば、ダウンストロークとアップストロークとを繰り返すストラム奏法を模擬することができる。
【0055】
そして、一群のストラム対象ノートと別の群のストラム対象ノートとが、オルタネイト判定時間を超える間隔で押鍵された場合には、ダウンストロークとアップストロークとを交互に行うストラム奏法の模擬は行われていないとみなし、アップストロークフラグ13eをオフに設定する。よって、演奏者が鍵2aの押鍵によるストラム奏法の模擬を開始した場合には、最初のストラム対象ノートについては、必ず、ダウンストロークを行っているかのように発音させることができ、弦楽器のストラムにおける一般的な傾向を模擬することができる。
【0056】
次に、図5を参照して、ストラム奏法が、上述したノートイベント処理(図3参照)及びタイマイベント処理(図4参照)によって模擬される様子を具体的に説明する。図5は、演奏者による鍵2aの押鍵によって入力されたノートの状態と、実際の発音状態とを説明するための説明図である。
【0057】
図5において、上段は、演奏者の押鍵操作によって入力されたノート状態の時系列を示すグラフであり、下段は、上段のノート状態に対応する実際の発音状態の時系列を示すグラフである。両グラフは共に、縦軸が音高(ピッチ)を示し、横軸が時間を示す。
【0058】
上段のグラフに示す通り、演奏者により、ノートaと、ノートaより音高の低いノートbと、ノートa,bより音高の高いノートcとが、この順序で入力されたとする。
【0059】
この場合、下段のグラフに示す通り、まず、ノートaの入力に伴ってノートaに対応する楽音が発音される。このとき、ノートaがストラム開始ノートとして設定される。
【0060】
ノートaとノートbとの押鍵間隔(時間t1)が、ストラム判定時間(10msec)以下である場合には、ノートbは、前音ノートであるノートaと共にストラム対象ノートを構成するノートであると判定(特定)される。そのため、発音中のノートaに対応する楽音は一旦消音される。その消音に引き続き、アップストロークフラグ13eの設定に基づき昇順にソートされたノートa,bにおける最初のノート、即ち、これら2つのノートのうち低い方の音高であるノートbが発音される。
【0061】
ノートbとノートcとの押鍵間隔(時間t2)が、ストラム判定時間以下である場合には、ノートcは、ノートa及びノートbと共にストラム対象ノートを構成するノートであると判定される。そのため、発音中のノートbに対応する楽音は一旦消音される。その消音に引き続き、アップストロークフラグ13eの設定に基づき昇順にソートされたノートa,b,cにおける最初のノート、即ち、これら3つのノートのうち、最も低い音高であるノートbが再発音(リトリガ発音)される。
【0062】
ノートbが再発音された後、この再発音のタイミングをストラム模擬の開始タイミングとし、入力された3つのノートa〜cに対応する楽音が、昇順の音高順(即ち、低い音高から高い音高へ向かう順)で順次発音される。即ち、2番目に低い音高であるノートaに対応する楽音は、ノートbが再発音されたタイミングから、遅延時間Aだけ遅延した発音タイミングで発音される。一方、3つのノートa〜cのうち最も音高が高いノートcに対応する楽音は、ノートbが再発音されたタイミングから、遅延時間Aより長い遅延時間Bだけ遅延した発音タイミングで発音される。なお、詳細は後述するが、ストラム模擬の開始タイミングからの遅延時間A及び遅延時間Bは、今回ノートのベロシティに応じて決定される。
【0063】
次に、上段のグラフに示す通り、演奏者により、一群のストラム対象ノートを構成するノートa〜cのうち、最も早くに入力されたノートaの入力タイミング(即ち、押鍵タイミング)から、オルタネイト判定時間(500msec)以内に、ノートdと、ノートdより音高の高いノートeと、ノートdより音高が高く、ノートeより音高の低いノートfとが、この順序で入力されたとする。
【0064】
この場合、下段のグラフに示す通り、まず、ノートdの入力に伴ってノートdに対応する楽音が発音される。このとき、ノートdがストラム開始ノートとして設定されるとともに、アップストロークフラグ13eの設定がオフからオンに切り替えられる。
【0065】
ノートdとノートeとの押鍵間隔(時間t3)が、ストラム判定時間(10msec)以下である場合には、ノートeは、前音ノートであるノートdと共にストラム対象ノートを構成するノートであると判定される。そのため、発音中のノートdに対応する楽音は一旦消音される。その消音に引き続き、アップストロークフラグ13eの設定に基づき降順にソートされたノートd,eにおける最初のノート、即ち、これら2つのノートのうち高い方の音高であるノートeが発音される。
【0066】
ノートeとノートfとの押鍵間隔(時間t4)が、ストラム判定時間以下である場合には、ノートfは、ノートd及びノートeと共にストラム対象ノートを構成するノートであると判定される。そのため、発音中のノートeに対応する楽音は一旦消音される。その消音に引き続き、アップストロークフラグ13eの設定に基づき降順にソートされたノートd,e,fにおける最初のノート、即ち、これら3つのノートのうち、最も高い音高であるノートeが再発音(リトリガ発音)される。
【0067】
ノートeが再発音された後、この再発音のタイミングをストラム模擬の開始タイミングとし、入力された3つのノートd〜fに対応する楽音が、降順の音高順(即ち、高い音高から低い音高へ向かう順)で順次発音される。即ち、2番目に高い音高であるノートfに対応する楽音は、ノートeが再発音されたタイミングから、遅延時間Aだけ遅延した発音タイミングで発音される。一方、3つのノートd〜fのうち最も音高が低いノートdに対応する楽音は、ノートeが再発音されたタイミングから、遅延時間Aより長い遅延時間Bだけ遅延した発音タイミングで発音される。
【0068】
上述の通り、本実施形態の電子楽器1によれば、演奏者が、ストラム判定時間(10msec以下)の押鍵間隔で複数の鍵2aを押鍵すれば、それらの鍵2aが最初に押鍵されてから最後に押鍵されるまでを待ち時間とし、その待ち時間が経過した後に、押鍵された複数の鍵2aに対応する各楽音が、アップストロークフラグ13eの設定に基づく音高順で順次発音される。よって、演奏者は、和音を弾くかのような簡単な押鍵操作をするだけで、ストラム(ストローク)を模擬することができる。
【0069】
待ち時間の間は、押鍵がされる毎に、発音と消音とが瞬間的に繰り返される。よって、この瞬時的な発音との消音との繰り返しがノイズとして聴こえることになるが、ギターによるストラムは、そもそもアタック部分がノイジーな感じであるので、聴感上気にならない。
【0070】
また、演奏者が、オルタネイト判定時間(500msec)以下の間隔で、和音を弾き替えるような押鍵操作を行った場合には、ストラム判定時間の押鍵間隔で押鍵された複数の鍵2aに対応する各楽音の発音順が、昇順の音高順と降順の音高順とに交互に切り換えられるので、ダウンストロークとアップストロークとを交互に行うストラム奏法を模擬できる。
【0071】
次に、図6及び図7を参照して、一群のストラム対象ノートに対応する楽音の発音タイミングについて説明する。図6は、発音順と、ストラム模擬の開始タイミングからの遅延時間との関係の一例を示すグラフである。なお、本実施形態では、図6に示すような、発音順と、ストラム模擬の開始タイミングからの遅延時間との関係は、音色(即ち、楽器)毎に設けている。
【0072】
図6のグラフの横軸は、ノートの発音順を示す。図6に示す例は、音色がギターである例であり、ギターの弦の数(6弦)に基づき、横軸の最大値が6とされている。一方で、図6のグラフの縦軸は、ストラム模擬の開始タイミングからの遅延時間を示す。この遅延時間の最大値を「ストラム時間」と称する。なお、ストラム時間の数値は、図7を参照して後述する通り、今回ノートのベロシティに応じて変化する。
【0073】
図6に示す例では、ノートの発音順が、最小値である1から、最大値である6へと増加するにつれ、遅延時間(msec)が、0から、最大値であるストラム時間へと、直線的に増加する関係が定められている。この直線に基づき、第2番目から第5番目のノートに対してそれぞれ適用される遅延時間A〜Dが決定される。つまり、この場合では、第n番目のノートに対して適用される遅延時間は、{ストラム時間/(発音順の最大値−1)}×(n−1)から算出され、各発音順の発音間隔が等間隔となる。なお、nは、ノートの発音順を示す変数であり、1から、発音順の最大値(図6の例では、6)までの整数である。
【0074】
図6に示す例では、遅延時間が、発音順の増加に対して直線的に増加する関係としたが、発音順と遅延時間との関係は、直線的な増加に限らず、対数的な増加(上に凸な単調増加、又は、下に凸な単調増加)等であってもよい。また、発音順と遅延時間との関係は、ある音色に対しては直線的であるが、別の音色では対数的であるなど、音色に応じて異なるものであってもよい。
【0075】
また、図6に示す例では、ギターの音色である場合に、発音順の最大値が6とされているが、ストラム対象ノートが6を超えた場合には、第7番目以降のノートに対する遅延時間として、第6番目と同じ遅延時間(ストラム時間)を使用するようにすればよい。これにより、遅延によりずらされて発音される楽音の数は、最大でギターの弦の数となるので、設定された音色に対応する楽器(この場合はギター)らしいストラム奏法を実現させることができる。
【0076】
図7は、ベロシティと、上述したストラム時間との関係の一例を示すグラフである。図7のグラフの横軸は、MIDI規格において1〜127の数値により規定されるベロシティを示す。一方で、図7のグラフの縦軸は、ストラム時間(msec)を示す。
【0077】
図7に示すように、ベロシティとストラム時間との間には、ベロシティが大きくなるにつれてストラム時間が次第に短くなるような関係が定められている。図7の例では、ベロシティが、最小値である1から、最大値である127へと増加するにつれ、ストラム時間が、予め規定された最大のストラム時間(以下、「基準ストラム時間」と称する)から、最小のストラム時間(図7の例ではゼロ)へと、直線的に減少する関係が定められている。なお、基準ストラム時間は、例えば、50msec程度の値である。
【0078】
鍵2aが押鍵されると、その押鍵(今回ノート)のベロシティに応じたストラム時間が、図7の関係に基づいて決定され、決定されたストラム時間を上述した図6のグラフにおける縦軸の最大値として、各発音順に適用する遅延時間が決定される。よって、同じ発音順(第n番目)を比較した場合には、今回ノートのベロシティが大きい程、即ち、演奏者が強く押鍵する程、遅延時間がより短い時間に決定される。なお、上述した図5の動作例の中で使用した遅延時間A,Bは、図6及び図7の関係に基づき決定された各発音順に適用する遅延時間のうちの遅延時間A,Bである。
【0079】
演奏者は、ストラム時におけるストロークの速さを、押鍵の強さ(ベロシティ)によって感覚的に表現する傾向がある。つまり、ストロークが速い程、強い押鍵がされる傾向にある。よって、本実施形態の電子楽器1によれば、図7に示すように、ベロシティが大きくなるにつれてストラム時間が次第に短くなるような関係が定められているので、演奏者は、押鍵の強さによって感覚的にストロークの速さを模倣でき、容易な演奏操作で効果的なストラム奏法を実現できる。
【0080】
また、図7に示す例では、最大のベロシティであるときには、ストラム時間がゼロとなるので、発音順に依らず、ストラム対象ノートに対応する全ての楽音が、待ち時間(図5参照)の経過後に、同時に発音されることになる。つまり、最大のベロシティで押鍵された場合には、弦が、ストラムであることを感じさせない程の速いスピードでストロークされた感じを模擬できる。
【0081】
なお、図7に示す例では、ベロシティとストラム時間との関係が、ベロシティが大きくなるにつれてストラム時間が直線的に減少するものとしたが、ストラム時間が、ベロシティの増加に対し単調に減少する関係であれば、図6と同様に、その関係は、直線的な減少に限らず、対数的な減少等であってもよい。また、ベロシティとストラム時間との関係は、音色に応じて異なるものであってもよい。また、ベロシティの最大値である127に対応させる、ストラム時間の最小値はゼロでなくてもよい。
【0082】
以上説明した通り、本実施形態の電子楽器1によれば、ストラム判定時間(10msec)以下の押鍵間隔で複数の鍵2aが押鍵された場合には、それらの複数の鍵2aに対する全てのノートをストラム対象ノートとし、これらのストラム対象ノートに対応する楽音が、所定の音高順(アップストロークフラグ13eの設定に応じた音高順)でソートされ、ソートされた順(即ち、所定の音高順)で順次発音される。即ち、電子楽器1によれば、1回の押鍵に対するストラム判定時間により規定される所定期間内に押鍵された各ノートが、所定の音高順で順次発音される。よって、演奏者が、例えば、和音を弾くかのように複数の鍵2aを押鍵操作するだけで、ストラム奏法における1回のストロークを模擬することができる。
【0083】
また、CPU11がノートオンを受信する毎(即ち、鍵2aが押鍵される毎)に、前音ノートとの押鍵間隔に基づいて、今回ノートがストラム対象ノートを構成するノートの1つであるかを特定し、今回ノートがストラム対象ノートの1つであれば、その都度、発音中の楽音の消音と、ソート順による再発音とを繰り返す。よって、演奏者による鍵の押鍵タイミングと、ストラム(ストローク)の発音とのレスポンス性に優れ、演奏者の演奏感覚に違和感を生じさせることを防ぐことができる。また、鍵2aが押鍵される毎に、発音中の楽音の消音と、ソート順に従う楽音の発音とが瞬時に繰り返されるので、この部分がノイズとして聴こえることになるが、ギターによるストラムは、そもそもアタック部分がノイジーな感じであるので、聴感上気にならない。
【0084】
また、演奏者が、オルタネイト判定時間(500msec)以下の間隔で、和音を弾き替えるような押鍵操作を行った場合には、ストラム判定時間の押鍵間隔で押鍵された複数の鍵2aに対応する各楽音の発音順が、昇順の音高順と降順の音高順とに交互に切り換えられるので、ダウンストロークとアップストロークとを繰り返すストラム奏法を容易に模擬できる。
【0085】
以上、実施形態に基づき本発明を説明したが、本発明は上記形態に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内で種々の変形改良が可能であることは容易に推察できるものである。
【0086】
例えば、上記実施形態では、CPU11が図3及び図4に示す各処理を実行することにより、演奏者が、ギターなどの弦楽器によるストラム奏法を容易に実現できる構成としたが、図3及び図4に示す処理に相当する処理を音源14に実行させる構成としてもよい。
【0087】
また、上記実施形態では、図3及び図4に示す処理は、ギターの音色が設定されている場合に実行される構成としたが、ギターに限定されず、ギターと同様のストラム奏法が実施できる弦楽器の音色であれば同様に適用可能である。
【0088】
また、上記実施形態では、今回ノートと前回ノートとの押鍵間隔がストラム判定時間(10msec)以下であれば、今回ノートがストラム対象ノートの1つであると判定(特定)したが、今回ノートがストラム対象ノートに含まれるか否かの判定方法は、実施形態の方法に限定されるものではない。例えば、今回ノートとストラム開始ノートとの押鍵間隔に基づいて判定する構成であってもよい。例えば、今回ノートがストラム開始ノートから2つ目のノートであった場合に、今回ノートの押鍵時刻とストラム開始ノートとの押鍵時刻との押鍵間隔が、ストラム判定時間×2である20msec以下であれば、今回ノートがストラム対象ノートの1つであると判定する構成としてもよい。また、ストラム対象ノートから所定期間(例えば、50msec)以内に押鍵された1つ又は複数のノートがあった場合に、そのノート(それらのノート)と、ストラム対象ノートとをストラム対象ノートと判定する構成としてもよい。
【0089】
また、上記実施形態では、図6に示すように、発音順が第1番目のノートに対する遅延時間をゼロ、即ち、発音中の楽音の消音後、直ちに第1番目のノートが再発音される構成であった。この構成によって聴感上のノイズが気になる場合には、演奏のレスポンス性は多少犠牲になるが、適切なオフセットを設ける(即ち、第1番目のノートに対する遅延時間を0より大きい値とする)構成としてもよい。
【0090】
また、上記実施形態では、今回ノートがストラム対象ノートである場合に、発音中の楽音を一旦消音して、音高によるソート順における最初のノートに対応する楽音を発音する構成とした。そのため、消音するノートと、音高によるソート順における最初のノートとが一致する場合には、消音されたノートがリトリガ発音されるものであった。これに換えて、消音するノートと、音高によるソート順における最初のノートとが一致する場合には、消音を行わず、引き続いて発音を継続する構成としてもよい。この場合には、適切なタイミング(例えば、ソート後に、消音するノートとソート順における最初のノートとが一致すると判定されたタイミング)を、ストラム模擬の開始タイミングと設定すればよい。
【0091】
また、上記実施形態では、ストラム判定時間を10msecとしたが、10msecに限らず、適切な値を使用できる。例えば、ストラム判定時間を20msec程度の値としてもよい。
【0092】
また、上記実施形態では、オルタネイト判定時間を500msecとしたが、500msecに限らず、適切な値を使用できる。また、曲のパターン(例えば、ロック、ポップスなど)毎にオルタネイト判定時間を設けておくと共に、演奏者が曲のパターンを操作ボタンなどによって選択できるようにし、ユーザが選択した曲のパターンに応じたオルタネイト判定時間を使用する構成としてもよい。
【0093】
また、上記実施形態では、ストラム対象ノートに含まれるノートのうち、最初に押鍵されたノートであるストラム開始ノートの押鍵時刻を基準時刻として、当該基準時刻から、今回ノートの押鍵時刻までの押鍵間隔が、オルタネイト判定時間以下である場合に、今回押鍵ノートを新たなストラム開始ノートとする構成とした。オルタネイト判定時間を測定する場合の基準時刻は、ストラム開始ノートの押鍵時刻に限らず、一群のストラム対象ノートを特定できる時刻であれば、どの時刻を基準時刻としてもよい。例えば、ストラム対象ノートのうち、2番目に押鍵されたノートの押鍵時刻を基準時刻としてもよい。
【0094】
また、上記各実施形態では、鍵盤2が一体化された電子楽器1を用いる構成としたが、本発明の電子楽器は、鍵盤2と同様にノートオン及びノートオフを出力する鍵盤あるいはシーケンサー等を取り外し可能に接続できる音源モジュールの構成であってもよい。
【符号の説明】
【0095】
1 電子楽器
2 鍵盤(入力手段)
2a 鍵
11 CPU(特定手段の一部、ソート手段、制御手段、ベロシティ取得手段)
11a タイマ
12 ROM
12a 制御プログラム
13 RAM
13a 発音バッファ(特定手段の一部)
13b 押鍵時刻メモリ
13c ストラム開始ノートメモリ(特定手段の一部)
13d 発音時刻カウンタ
13e アップストロークフラグ
14 音源(楽音生成手段)
15 DAC
16 バスライン


【特許請求の範囲】
【請求項1】
所定音高の楽音の発音指示を入力する入力手段と、
前記入力手段により入力された発音指示に基づき、所定音高の楽音を発音する楽音生成手段と、
所定期間内に前記入力手段により入力された複数の発音指示を発音指示群と特定する特定手段と、
前記特定手段により特定された発音指示群を構成する複数の発音指示を、所定の音高順にソートするソート手段と、
前記発音指示群に対応する楽音を、前記ソート手段によりソートされた順に発音するように前記楽音生成手段による楽音の生成を制御する制御手段とを備えた電子楽器。
【請求項2】
前記特定手段は、前記入力手段により発音指示が入力される毎に、所定の発音指示との時間差に基づき、発音指示群を特定するものである請求項1記載の電子楽器。
【請求項3】
前記特定手段は、前記入力手段により発音指示が入力される毎に、前回の発音指示との時間差に基づき、発音指示群を特定するものである請求項2記載の電子楽器。
【請求項4】
前記特定手段は、所定の発音指示から所定期間内に前記入力手段により入力された複数の発音指示を、発音指示群と特定するものである請求項1記載の電子楽器。
【請求項5】
前記制御手段は、前記特定手段により発音指示群が特定されたタイミングに基づく開始タイミングから、前記発音指示群に対応する楽音を順次発音するように制御するものである請求項1記載の電子楽器。
【請求項6】
前記制御手段は、前記楽音生成手段により発音中の楽音を消音してから、前記発音指示群に対応する楽音を順次発音するように制御するものである請求項1記載の電子楽器。
【請求項7】
前記ソート手段は、連続する2つの発音指示群に対してそれぞれ規定される基準時刻が第2所定期間内にある場合には、後者の発音指示群を構成する複数の発音指示に対してソートする音高順を逆順に変更するものである請求項1記載の電子楽器。
【請求項8】
前記入力手段により入力された発音指示のベロシティを取得するベロシティ取得手段と、
前記制御手段は、前記ベロシティ取得手段により取得されたベロシティが大きいほど短い時間間隔で、前記発音指示群に対応する楽音を順次発音するように制御するものである請求項1記載の電子楽器。






【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2012−189901(P2012−189901A)
【公開日】平成24年10月4日(2012.10.4)
【国際特許分類】
【出願番号】特願2011−54689(P2011−54689)
【出願日】平成23年3月11日(2011.3.11)
【出願人】(000116068)ローランド株式会社 (175)
【Fターム(参考)】