(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024086022
(43)【公開日】2024-06-27
(54)【発明の名称】電子鍵盤楽器、電子楽器システム、プログラム及び発音制御方法
(51)【国際特許分類】
G10H 1/053 20060101AFI20240620BHJP
G10H 1/26 20060101ALI20240620BHJP
【FI】
G10H1/053 C
G10H1/26
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022200871
(22)【出願日】2022-12-16
(71)【出願人】
【識別番号】000001443
【氏名又は名称】カシオ計算機株式会社
(74)【代理人】
【識別番号】110001254
【氏名又は名称】弁理士法人光陽国際特許事務所
(72)【発明者】
【氏名】段城 真
(72)【発明者】
【氏名】太田 文章
(72)【発明者】
【氏名】中村 厚士
【テーマコード(参考)】
5D478
【Fターム(参考)】
5D478BA02
5D478DA13
(57)【要約】
【課題】電子鍵盤楽器において、素早く半音ずつ音を変化させる演奏を可能とすることである。
【解決手段】電子鍵盤楽器の制御部は、半音ずつ異なる音高が割り当てられた複数の鍵が配列された鍵盤における複数の鍵の上に指をスライドさせるスライド操作を検出した場合、スライド操作によって押鍵された複数の鍵及び押鍵された複数の鍵の間の未押鍵の鍵に対応する楽音を発音部16に発音させるように制御する。
【選択図】
図6
【特許請求の範囲】
【請求項1】
複数の鍵が配列された鍵盤と、
前記鍵盤における複数の鍵上をスライドさせるスライド操作を検出した場合、前記スライド操作によって押鍵された複数の第1鍵及び前記複数の第1鍵の間に配置されている未押鍵の第2鍵に対応する楽音を発音部に発音させるように制御する制御部と、
を備える電子鍵盤楽器。
【請求項2】
前記制御部は、
前記複数の第1鍵に含まれる鍵に対応する第1ベロシティ値に少なくとも基づいて、前記第2鍵に対応する第2ベロシティ値を決定し、
決定された前記第2ベロシティ値に基づいて、前記第2鍵に対応する楽音を前記発音部に発音させる、
請求項1に記載の電子鍵盤楽器。
【請求項3】
前記制御部は、
前記スライド操作中に連続して押鍵された2つの第1鍵の押鍵の時間差と、前記2つの第1鍵の間に配置される前記未押鍵の第2鍵の数とに基づいて、前記第2鍵を発音する長さを決定し、
決定した長さで前記第2鍵に対応する楽音を前記発音部に発音させる、
請求項1に記載の電子鍵盤楽器。
【請求項4】
前記鍵盤は、複数の白鍵及び複数の黒鍵が配列されており、
前記制御部は、
前記複数の白鍵上をスライドさせる白鍵スライド操作を検出した場合、前記白鍵スライド操作によって押鍵された複数の第1白鍵及び前記複数の第1白鍵間の未押鍵の黒鍵に対応する楽音を発音部に発音させるように制御する、
請求項1に記載の電子鍵盤楽器。
【請求項5】
前記鍵盤は、複数の白鍵及び複数の黒鍵が配列されており、
前記制御部は、
前記鍵盤の複数の黒鍵上をスライドさせる黒鍵スライド操作を検出した場合、前記黒鍵スライド操作によって押鍵された複数の第1黒鍵及び前記複数の第1黒鍵間の未押鍵の白鍵に対応する楽音を前記発音部に発音させるように制御する、
請求項1に記載の電子鍵盤楽器。
【請求項6】
前記制御部は、
前記スライド操作中に連続して押鍵された2つの鍵の位置関係に基づいて、次に押鍵される鍵を予測し、
次に押鍵された鍵が前記予測された鍵であった場合に、前記スライド操作を検出したと判断する、
請求項1に記載の電子鍵盤楽器。
【請求項7】
鍵盤と、制御部と、を備える電子鍵盤楽器と、
発音部を備える電子機器と、
を備え、
前記制御部は、
前記鍵盤における複数の鍵の上をスライドさせるスライド操作を検出した場合、前記スライド操作によって押鍵された複数の第1鍵及び前記複数の第1鍵の間の未押鍵の第2鍵に対応する楽音を発音部に発音させるように制御する、
電子楽器システム。
【請求項8】
コンピュータが、
鍵盤における複数の鍵の上をスライドさせるスライド操作を検出した場合に、前記スライド操作によって押鍵された複数の第1鍵及び前記複数の第1鍵の間の未押鍵の第2鍵に対応する楽音を発音部に発音させるように制御する、
処理を実行するプログラム。
【請求項9】
コンピュータが、
鍵盤における複数の鍵の上をスライドさせるスライド操作を検出した場合に、前記スライド操作によって押鍵された複数の第1鍵及び前記複数の第1鍵の間の未押鍵の第2鍵に対応する楽音を発音部に発音させるように制御する、
発音制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子鍵盤楽器、電子楽器システム、プログラム及び発音制御方法に関する。
【背景技術】
【0002】
従来、電子ピアノやキーボード等の電子鍵盤楽器では、複数の白鍵上に指をスライドさせるスライド操作(白鍵グリッサンド)又は複数の黒鍵上に指をスライドさせるスライド操作(黒鍵グリッサンド)を行うと、隣の鍵に指が移るにつれて全音ずつ音が変化する。例えば、
図8に矢印で示すように、Fの鍵からBの鍵まで指をスライドさせると、F→G→A→Bと全音ずつ上昇する。
【0003】
一方、ギターでは、押弦しながら指を滑らせるスライド奏法を行うと、隣のフレットに指が移るにつれて半音ずつ音が変化する。例えば、
図8に矢印で示すように、1弦の1フレットから7フレットまで押弦しながら指をスライドさせると、F→F♯→G→G♯→A→A♯→Bのように半音ずつ上昇する。
【0004】
電子鍵盤楽器においてギターのように半音ごとの変化を可能とする技術として、例えば、特許文献1には、押鍵された鍵が発音されている間にピッチベンダーを操作すると、半音ごとの変化を可能とする技術が記載されている。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
電子鍵盤楽器において、ピッチベンダーを用いずに、鍵盤の演奏により半音ずつ音を変化させるには、並んでいる白鍵と黒鍵を順次押鍵する必要があるが、白鍵及び黒鍵の両方を素早く押鍵するグリッサンド奏法を行うことは難しい。そのため、従来の電子鍵盤楽器において、ギターのスライド奏法のように素早く半音ずつ音を変化させる演奏をすることは困難である。
【0007】
本発明は、上記の問題に鑑みてなされたものであり、電子鍵盤楽器において、素早く半音ずつ音を変化させる演奏を可能とすることである。
【課題を解決するための手段】
【0008】
上記課題を解決するため、本発明の一態様の電子鍵盤楽器は、
複数の鍵が配列された鍵盤と、
前記鍵盤における複数の鍵上をスライドさせるスライド操作を検出した場合、前記スライド操作によって押鍵された複数の第1鍵及び前記複数の第1鍵の間に配置されている未押鍵の第2鍵に対応する楽音を発音部に発音させるように制御する制御部と、
を備える。
【発明の効果】
【0009】
本発明によれば、電子鍵盤楽器において、素早く半音ずつ音を変化させる演奏が可能となる。
【図面の簡単な説明】
【0010】
【
図1】電子鍵盤楽器の機能的構成を示すブロック図である。
【
図2】
図1の制御部により実行される発音制御処理の流れを示すフローチャートである。
【
図3】
図2のステップS3において実行される押鍵イベント処理の流れを示すフローチャートである。
【
図4】スライド演奏データテーブルのデータ格納例を示す図である。
【
図5】
図1の制御部により実行されるスライド演奏処理の流れを示すフローチャートである。
【
図8】従来の電子鍵盤楽器による白鍵グリッサンドで発音される音とギターのスライド奏法で発音される音との違いを説明するための図である。
【発明を実施するための形態】
【0011】
以下に、本発明の実施形態について、図面を用いて説明する。但し、以下に述べる実施形態には、本発明を実施するために技術的に好ましい種々の限定が付されている。そのため、本発明の技術的範囲を以下の実施形態及び図示例に限定するものではない。
【0012】
[電子鍵盤楽器100の構成]
図1は、本発明の実施形態における電子鍵盤楽器100の機能的構成を示すブロック図である。電子鍵盤楽器100は、例えば、電子ピアノ、電子キーボード等の、複数の白鍵及び複数の黒鍵が配列された鍵盤12を有する電子楽器である。
【0013】
電子鍵盤楽器100は、
図1に示すように、制御部11と、鍵盤12と、操作部13と、表示部14と、記憶部15と、発音部16と、通信部17と、を備えて構成されており、各部はバス18により接続されている。
【0014】
制御部11は、少なくとも1つのCPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等を備えて構成されたコンピュータである。制御部11のCPUは、ROMに格納されたプログラム及びデータを読み出し、RAMをワークエリアとして用いて各種処理を実行することにより、電子鍵盤楽器100の各部を集中制御する。
【0015】
鍵盤12は、半音ずつ異なる音高が割り当てられた複数の鍵(演奏操作子)、及び押鍵/離鍵された鍵を検出する検出部等を備え、押鍵/離鍵された鍵の音高(ノートナンバー)、ベロシティ値等の情報を制御部11に出力する。
制御部11は、押鍵/離鍵された鍵の音高(ノートナンバー)、ベロシティ値、押鍵/離鍵が検出されたタイミングの情報をRAMに一時的に記憶する。
【0016】
操作部13は、曲選択スイッチ、再生スイッチ、カーソルスイッチ等の各種スイッチや操作ボタンを有し、ユーザによる各種スイッチや操作ボタンの操作情報を制御部11に出力する。
【0017】
表示部14は、LCD(Liquid Crystal Display)等により構成され、制御部11から入力される表示信号の指示に従って、表示を行う。
【0018】
記憶部15は、不揮発性の半導体メモリやハードディスク等により構成され、各種データを記憶する。記憶部15は、電子鍵盤楽器100に内蔵されたものに限られず、電子鍵盤楽器100に対して着脱可能な外部記録媒体を含んでもよい。また、記憶部15には、電子鍵盤楽器100を動作させるためのプログラムやプログラムの実行に必要なパラメータが記憶されていることとしてもよい。
【0019】
発音部16は、音源部、D/Aコンバータ、増幅器、スピーカ等を備える。発音部16は、制御部11からの指示に従って、音源部により、音源部に備えられた波形ROMに予め記憶された波形データを読み出すか又は波形データを生成して、波形データに基づく音をD/Aコンバータ及び増幅器を介してスピーカから出力する。
【0020】
通信部17は、外部機器と通信を行うための無線ユニットまたは有線ユニットを備える。通信部17は、制御部11の制御に基づいて、外部機器とデータ通信を行う。
【0021】
[電子鍵盤楽器100の動作]
次に、電子鍵盤楽器100の動作について説明する。
一般的に、電子鍵盤楽器において鍵盤の演奏操作により半音ずつ音を変化させるには、並んでいる白鍵と黒鍵を順次押鍵する必要があるが、白鍵及び黒鍵の両方を素早く押鍵するグリッサンド奏法は難しい。そのため、従来の電子鍵盤楽器において、ギターのスライド奏法のように素早く半音ずつ音を変化させる演奏を実現することは困難であった。
【0022】
そこで、本実施形態における電子鍵盤楽器100では、予め定められた設定値(閾値)よりも大きいベロシティ値での押鍵から、白鍵又は黒鍵のグリッサンドが実施された場合、すなわち、予め定められた設定値よりも大きいベロシティ値での押鍵から、複数の白鍵上に指をスライドさせるスライド操作(白鍵スライド操作)又は複数の黒鍵上に指をスライドさせるスライド操作(黒鍵スライド操作)が実施された場合に、スライド操作により押鍵された複数の第1鍵の間の未押鍵の第2鍵に対応する楽音についても発音するよう制御する。これにより、白鍵又は黒鍵のグリッサンドでギターのスライド奏法のように素早く半音ずつ音を変化させることを可能とする。
【0023】
図2は、電子鍵盤楽器100の制御部11により実行される発音制御処理の流れを示すフローチャートである。発音制御処理は、例えば、電子鍵盤楽器100の電源がオンとなった際に、制御部11のCPUとROMに記憶されているプログラムとの協働により実行される。
【0024】
まず、制御部11は、初期設定を行う(ステップS1)。
ステップS1において、制御部11は、後述する押鍵イベント処理やスライド演奏処理で使用されるRAM上の変数やテーブルを初期化する。例えば、制御部11は、後述する押鍵イベント処理で使用される変数であるスライド演奏モードをオフに初期設定する。スライド演奏モードは、白鍵又は黒鍵のスライド操作(スライド演奏、グリッサンド)が検出された場合にオンが設定される変数である。また、制御部11は、白鍵スライド演奏待ちフラグ及び黒鍵スライド演奏待ちフラグに0を設定する。白鍵スライド演奏待ちフラグは、スライド演奏モードがオフの場合に設定値より大きいベロシティ値で白鍵が押鍵された場合に1が設定される。黒鍵スライド演奏待ちフラグは、スライド演奏モードがオフの場合に設定値より大きいベロシティ値で黒鍵が押鍵された場合に1が設定される。また、制御部11は、スライド演奏データテーブルT1(
図4参照)を初期化する。
【0025】
次いで、制御部11は、鍵盤12により押鍵が検出されたか否かを判断する(ステップS2)。
押鍵が検出されたと判断した場合(ステップS2;YES)、制御部11は、押鍵イベント処理を実行する(ステップS3)。
図3は、ステップS3において実行される押鍵イベント処理の流れを示すフローチャートである。押鍵イベント処理は、制御部11のCPUとROMに記憶されているプログラムとの協働により実行される。
【0026】
まず、制御部11は、スライド演奏モードがオンに設定されているか否かを判断する(ステップS301)。
スライド演奏モードがオンに設定されていないと判断した場合(ステップS301;NO)、制御部11は、白鍵スライド演奏待ちフラグが1であるか否かを判断する(ステップS302)。
白鍵スライド演奏待ちフラグが1ではないと判断した場合(ステップS302;NO)、制御部11は、黒鍵スライド演奏待ちフラグが1であるか否かを判断する(ステップS303)。
黒鍵スライド演奏待ちフラグが1ではないと判断した場合(ステップS303;NO)、制御部11は、押鍵された鍵のベロシティ値を取得する(ステップS304)。
【0027】
次いで、制御部11は、取得したベロシティ値が予め定められた設定値(閾値)を超えているか否かを判断する(ステップS305)。
取得したベロシティ値が予め定められた設定値を超えていないと判断した場合(ステップS305;NO)、制御部11は、発音処理を実施する(ステップS317)。すなわち、制御部11は、押鍵された鍵(押鍵キー)に応じた音高及びベロシティ値の楽音を発音部16により発音させ、
図2のステップS7に移行する。
【0028】
取得したベロシティ値が予め定められた設定値を超えていると判断した場合(ステップS305;YES)、制御部11は、押鍵キーが白鍵であるか否かを判断する(ステップS306)。
押鍵キーが白鍵であると判断した場合(ステップS306;YES)、制御部11は、白鍵スライド演奏待ちフラグに1を設定し(ステップS307)、押鍵キーに応じた音高及びベロシティ値の楽音を発音部16により発音させ(ステップS317)、
図2のステップS7に移行する。
押鍵キーが黒鍵であると判断した場合(ステップS306;NO)、制御部11は、黒鍵スライド演奏待ちフラグに1を設定し(ステップS308)、押鍵キーに応じた音高及びベロシティ値の楽音を発音部16により発音させ(ステップS317)、
図2のステップS7に移行する。
【0029】
一方、ステップS302において、白鍵スライド演奏待ちフラグが1であると判断した場合(ステップS302;YES)、制御部11は、押鍵キーが白鍵、かつ前回の押鍵キーと今回の押鍵キーとの差分(位置の差分)が±2以下であるか否かを判断する(ステップS309)。
前回の押鍵キーと今回の押鍵キーとの差分は、例えば、今回の押鍵キーのノートナンバーから前回の押鍵キーのノートナンバーを引くことにより求めることができる。
【0030】
押鍵キーが白鍵ではないか、又は前回の押鍵キーと今回の押鍵キーとの差分が±2以下ではないと判断した場合(ステップS309;NO)、制御部11は、押鍵キーに応じた音高及びベロシティ値の楽音を発音部16により発音させ(ステップS317)、
図2のステップS7に移行する。
【0031】
押鍵キーが白鍵、かつ前回の押鍵キーと今回の押鍵キーとの差分が±2以下であると判断した場合(ステップS309;YES)、制御部11は、スライド操作を検出したと判断してスライド演奏モードをオンに設定し、前回押鍵キーと今回の押鍵キーとの差分よりスライド方向を決定し(ステップS311)、ステップS313に移行する。前回押鍵キーと今回の押鍵キーとの差分がプラスである場合は、左方向へのスライド、マイナスである場合は右方向へのスライドと決定する。
【0032】
一方、ステップS303において、黒鍵スライド演奏待ちフラグが1であると判断した場合(ステップS302;YES)、制御部11は、押鍵キーが黒鍵、かつ前回の押鍵キーと今回の押鍵キーとの差分(位置の差分)が±3以下であるかを判断する(ステップS310)。
前回の押鍵キーと今回の押鍵キーとの差分は、例えば、今回の押鍵キーのノートナンバーから前回の押鍵キーのノートナンバーを引くことにより求めることができる。
【0033】
押鍵キーが黒鍵ではないか、又は前回の押鍵キーと今回の押鍵キーとの差分が±3以下ではないと判断した場合(ステップS310;NO)、制御部11は、押鍵キーに応じた音高及びベロシティ値の楽音を発音部16により発音させ(ステップS317)、
図2のステップS7に移行する。
【0034】
押鍵キーが黒鍵、かつ前回の押鍵キーと今回の押鍵キーとの差分が±3以下であると判断した場合(ステップS310;YES)、制御部11は、スライド操作を検出したと判断してスライド演奏モードをオンに設定し、前回押鍵キーと今回の押鍵キーとの差分よりスライド方向を決定し(ステップS311)、ステップS313に移行する。前回押鍵キーと今回の押鍵キーとの差分がプラスである場合は、左方向へのスライド、マイナスである場合は右方向へのスライドと決定する。
【0035】
ここで、隣接する白鍵同士のノートナンバーの差分は、±2以下である。すなわち、白鍵スライド演奏待ちフラグが1で今回の押鍵キーが白鍵であり、かつ、前回押鍵キーと今回の押鍵キーとの差分が±2以下である場合、白鍵のスライド操作(白鍵グリッサンド)が検出されたと判断することができる。また、隣接する黒鍵同士のノートナンバーの差分は、±3以下である。すなわち、黒鍵スライド演奏待ちフラグが1で今回の押鍵キーが黒鍵であり、かつ、前回押鍵キーと今回の押鍵キーとの差分が±3以下である場合、黒鍵のスライド操作(黒鍵グリッサンド)が検出されたと判断することができる。
【0036】
ステップS313において、制御部11は、未押鍵発音キー、ベロシティ値、スライド発音長をスライド演奏データテーブルT1に登録する(ステップS313)。
隣接する白鍵同士の間には、0又は1の黒鍵が存在する。白鍵スライド操作では、押鍵された複数の第1白鍵間に存在する第2黒鍵は押鍵されず、未押鍵となる。また、隣接する黒鍵の間には、1又は2の白鍵が存在する。黒鍵スライド操作では、押鍵された複数の第1黒鍵間に存在する第2白鍵は押鍵されず、未押鍵となる。本実施形態では、制御部11は、この未押鍵のキーを前回の押鍵キーの発音と今回の押鍵キーの発音の間で発音するように制御する。ステップS313では、前回押鍵された鍵と今回押鍵された鍵の間の、押鍵されていない鍵を未押鍵発音キーとして、そのノートナンバーをスライド演奏データテーブルT1に登録する。また、その未押鍵発音キーを発音するときのベロシティ値とスライド発音長(発音する長さ)を算出(決定)し、併せてスライド演奏データテーブルT1に登録する。
【0037】
未押鍵発音キーのベロシティ値は、前回の押鍵キーのベロシティ値と今回の押鍵キーのベロシティ値とに基づいて算出される。例えば、(式1)に示すように、前回の押鍵キーのベロシティ値(第1ベロシティ値)と今回の押鍵キーのベロシティ値(第1ベロシティ値)の平均を、それらのキーの間の未押鍵発音キーのベロシティ値(第2ベロシティ値)として算出することができる。
未押鍵発音キーのベロシティ値=(前回の押鍵キーのベロシティ値+今回の押鍵キーのベロシティ値)/2 …(式1)
【0038】
未押鍵発音キーのスライド発音長は、前回の押鍵と今回の押鍵との時間差と、未押鍵発音キーの数とに基づいて算出することができる。例えば、(式2)から求めることができる。
未押鍵発音キーのスライド発音長=(今回の押鍵のノートオンタイミング-前回の押鍵のノートタイミング)/(未押鍵発音キー数+1)…(式2)
例えば、黒鍵のA♯からG♯にスライド操作した場合、A♯の押鍵キーとG♯の押鍵キーの間の未押鍵発音キーであるAのスライド発音長は、以下のとおりとなる。
Aのスライド発音長=(G♯のノートオンタイミング-A♯のノートオンタイミング)/(1+1)
【0039】
次いで、制御部11は、押鍵キー、ベロシティ値、スライド発音長をスライド演奏データテーブルT1に登録する(ステップS314)。
ステップS314において、制御部11は、今回の押鍵キーのノートナンバー及びベロシティ値をスライド演奏データテーブルT1に登録する。また、押鍵キーのスライド発音長を算出し、スライド発音長を押鍵キーのノートナンバーとベロシティ値とに対応付けてスライド演奏データテーブルT1に登録する。押鍵キーのスライド発音長は、上述の未押鍵発音キーのスライド発音長と同じである。
【0040】
図4は、スライド演奏データテーブルT1のデータ格納例を示す図である。スライド演奏データテーブルT1には、未押鍵発音キー又は押鍵キーのノートナンバーと、ベロシティ値と、スライド発音長と、が対応付けてスライド演奏データとして記憶される。スライド演奏データテーブルT1は、FIFO(First In First Out)で格納及び読出しが行われる。
図4に示すスライド演奏データは、A♯から左方向への黒鍵のスライド操作中にG♯を押鍵したとき(
図6(b)参照)に登録されるスライド演奏データテーブルT1のデータ格納例を示している。
【0041】
次いで、制御部11は、次押鍵予想キーをスライド方向に基づき算出し(ステップS315)、
図2のステップS7に移行する。算出された次押鍵予想キーは、RAMに一時記憶される。
【0042】
ここで、スライド演奏データテーブルT1に登録された押鍵キー又は未押鍵発音キーは、後述するスライド演奏処理(
図5参照)で発音される。
【0043】
一方、ステップS301において、スライド演奏モードがオンであると判断した場合(ステップS301;YES)、制御部11は、押鍵キーが次押鍵予想キーと同じであるか否かを判断する(ステップS312)。
押鍵キーが次押鍵予想キー(予想鍵)と同じであると判断した場合(ステップS312;YES)、制御部11は、上述のステップS313~S315の処理を実行し(ステップS313~S315)、
図2のステップS7に移行する。
すなわち、スライド演奏データテーブルT1に未押鍵発音キー及び押鍵キーのノートナンバー、ベロシティ値、スライド発音長を登録する。
【0044】
押鍵キーが次押鍵予想キーと同じではないと判断した場合(ステップS312;NO)、制御部11は、スライド発音モードをオフに設定するとともに、白鍵スライド演奏待ちフラグ及び黒鍵スライド演奏待ちフラグを0に設定し(ステップS316)、押鍵キーに応じた音高及びベロシティ値の楽音を発音部16により発音させ(ステップS317)、
図2のステップS7に移行する。
【0045】
図2に戻り、ステップS2において、押鍵が検出されていないと判断した場合(ステップS2;NO)、制御部11は、鍵盤12から離鍵が検出されたか否かを判断する(ステップS4)。
離鍵が検出されたと判断した場合(ステップS4;YES)、制御部11は、離鍵が検出された鍵(離鍵検出キー)がスライド演奏データテーブルT1に登録されているキーであるか否かを判断する(ステップS5)。
離鍵検出キーがスライド演奏データテーブルT1に登録されているキーではないと判断した場合(ステップS5;NO)、制御部11は、発音部16に、離鍵検出キーに対する消音処理を行わせ(ステップS6)、ステップS7に移行する。
離鍵検出キーがスライド演奏データテーブルT1に登録されているキーであると判断した場合(ステップS5;YES)、制御部11は、ステップS7に移行する。
【0046】
ステップS7において、制御部11は、発音制御処理を終了するか否かを判断する(ステップS7)。例えば、制御部11は、電源がオフされた場合に、発音制御処理を終了すると判断する。
発音制御処理を終了しないと判断した場合(ステップS7;NO)、制御部11は、ステップS2に戻る。
発音制御処理を終了すると判断した場合(ステップS7;YES)、制御部11は、発音制御処理を終了する。
【0047】
制御部11は、発音制御処理の実行中、所定時間ごとにスライド演奏処理を実行し、スライド演奏データテーブルT1に登録されている未押鍵発音キー及び押鍵キーを発音部16により発音させる。
【0048】
図5は、スライド演奏処理の流れを示すフローチャートである。スライド演奏処理は、制御部11のCPUとROMに記憶されているプログラムとの協働により実行される。
【0049】
スライド演奏処理において、制御部11は、まず、スライド演奏データテーブルT1に記憶されている押鍵キー又は未押鍵発音キーがあるか否かを判断する(ステップS11)。
スライド演奏データテーブルT1に記憶されている押鍵キー又は未押鍵発音キーがないと判断した場合(ステップS11;NO)、制御部11は、スライド演奏処理を終了する。
【0050】
スライド演奏データテーブルT1に記憶されている押鍵キー又は未押鍵発音キーがあると判断した場合(ステップS11;YES)、制御部11は、スライド演奏データテーブルT1からスライド演奏データを一つ読み出し、読み出したスライド演奏データのベロシティ値に基づいて、発音部16に押鍵キー又は未押鍵発音キーに対応する音高の楽音を発音させ(ステップS12)、スライド発音長のカウントをスタートする(ステップS13)。制御部11は、一定時間間隔でスライド発音長のカウントを行う。
【0051】
制御部11は、スライド発音長が経過するのを待機する(ステップS14)。
スライド発音長が経過したと判断した場合(ステップS14;YES)、制御部11は、発音部16に対し、発音中の押鍵キー又は未押鍵発音キーの消音処理を行わせる(ステップS15)。
【0052】
次いで、制御部11は、スライド発音長のカウントをリセットする(ステップS16)。そして、制御部11は、発音済みの押鍵キー又は未押鍵発音キーのスライド発音データをスライド演奏データテーブルT1から消去し(ステップS17)、スライド演奏処理を終了する。
【0053】
図6(a)、(b)は、電子鍵盤楽器100において白鍵スライド操作と黒鍵スライド操作を行った場合に発音される押鍵キー及び未押鍵発音キーの例を示す図である。電子鍵盤楽器100によれば、例えば、
図6(a)に示すように白鍵スライド操作を行った場合、押鍵された白鍵と白鍵の間の未押鍵の黒鍵についても発音される。また、
図6(b)に示すように、黒鍵スライド操作を行った場合、押鍵された黒鍵と黒鍵の間の未押鍵の白鍵についても発音される。よって、電子鍵盤楽器100では、ギターのスライド奏法のように、素早く半音ずつ音を変化させる演奏を実現することが可能となる。
図6(b)の図を用いて例示的に説明すると、スライド演奏モードがオフの状態(ステップS301;NO)で、設定値以上のベロシティ値でのA#の押鍵が検出された場合、黒鍵スライド演奏待ちフラグに1がセットされ(ステップS308)て、A#の音高の楽音が発音処理(ステップS317)される。次にG#の押鍵が検出された場合に、押鍵キーが黒鍵かつ、前回の押鍵キーとの差分が±3以下と判定され(ステップS310;YES)、スライド演奏モードにオンが設定される(ステップS311)。その後、未押鍵発音キーとしてAがスライド演奏データテーブルT1に登録される(ステップ313)。なおスライド演奏データテーブルT1には、A#とG#の各第1ベロシティ値に基づいて決定される第2ベロシティ値がベロシティ値として登録される。その後、押鍵キーとしてG#がスライド演奏データテーブルT1に登録される(ステップS314)。その後、次押鍵予想キーとしてF#が算出される(ステップS315)。次にF#の押鍵が検出された場合、スライド演奏モード=オン(ステップS301;YES)、押鍵キーが次押鍵予想キーと同じ(ステップS312;YES)となり、スライド演奏データテーブルT1に未押鍵発音キーとしてGが登録される(ステップS313)。
スライド演奏データテーブルT1に登録されるデータは、別タスクで処理が実行されて発音処理される。これにより押鍵された第1鍵(例えば、A#やG#)に対応する楽音だけでなく、未押鍵の第2鍵(例えば、AやG)に対応する楽音も発音処理される。
【0054】
以上説明したように、電子鍵盤楽器100の制御部11は、複数の鍵が配列された鍵盤12における複数の鍵上をスライドさせるスライド操作を検出した場合、スライド操作によって押鍵された複数の第1鍵及び複数の第1鍵の間に配置されている未押鍵の第2鍵に対応する楽音を発音部16に発音させるように制御する。
例えば、鍵盤12の複数の白鍵上をスライドさせる白鍵スライド操作を検出した場合、白鍵スライド操作によって押鍵された複数の第1白鍵及び複数の第1白鍵間の未押鍵の黒鍵に対応する楽音を発音部16に発音させるように制御する。また、例えば、鍵盤12の複数の黒鍵上をスライドさせる黒鍵スライド操作を検出した場合、黒鍵スライド操作によって押鍵された複数の第1黒鍵及び複数の第1黒鍵間の未押鍵の白鍵に対応する楽音を発音部16に発音させるように制御する。
したがって、ギターのスライド奏法のように、素早く半音ずつ音を変化させる演奏を実現することが可能となる。
【0055】
また、制御部11は、予め定められた閾値を超えたベロシティ値での押鍵でスライド操作が開始された場合に、スライド操作によって押鍵された複数の第1鍵及び押鍵された複数の第1鍵の間の未押鍵の第2鍵に対応する楽音を発音部16に発音させるように制御する。
したがって、スライド操作を開始するときのベロシティ値の強弱で、スライド操作中の未押鍵の鍵に対応する楽音を発音部16に発音させる制御を行うか否かを切り替えることが可能となる。
【0056】
また、制御部11は、スライド操作中に連続して押鍵された2つの第1鍵の押鍵の時間差と、2つの第1鍵の間に配置される未押鍵の第2鍵の数とに基づいて、第2鍵を発音する長さを決定し、決定した長さで第2鍵に対応する楽音を発音部16に発音させる。
したがって、未押鍵の鍵に対応する楽音を、スライド操作における押鍵の速さに応じて適切な長さで発音することができる。
【0057】
また、制御部11は、複数の第1鍵に含まれる鍵に対応する第1ベロシティ値に少なくとも基づいて、2つの第1鍵の間に配置される未押鍵の第2鍵に対応する第2ベロシティ値を決定し、決定された第2ベロシティ値に基づいて、第2鍵に対応する楽音を発音部16に発音させる。
したがって、未押鍵の鍵に対応する楽音を、スライド操作における押鍵のベロシティ値に応じた強さで発音することができる。
【0058】
また、制御部11は、連続して押鍵された2つの白鍵の位置の差分が±2以下である場合に、白鍵スライド操作を検出したと判断して、発音部16に対する前記制御を行う。
したがって、白鍵スライド操作を適切に検出して、白鍵のスライド操作に応じて素早く半音ずつ音を変化させる演奏を実現することが可能となる。
【0059】
また、制御部11は、連続して押鍵された2つの黒鍵の位置の差分が±3以下である場合に、黒鍵スライド操作を検出したと判断して、発音部16に対する前記制御を行う。
したがって、黒鍵スライド操作を適切に検出して、黒鍵のスライド操作に応じて素早く半音ずつ音を変化させる演奏を実現することが可能となる。
【0060】
また、制御部11は、スライド操作中に連続して押鍵された2つの鍵の位置関係に基づいて、次に押鍵される鍵を予測し、次に押鍵された鍵が前記予測された鍵であった場合に、前記スライド操作を検出したと判断する。
したがって、スライド操作をその方向も加味して適切に検出して、スライド操作に応じて素早く半音ずつ音を変化させる演奏を実現することが可能となる。
【0061】
なお、上記記述内容は、本発明の実施形態の好適な一例であり、これに限定されるものではない。
【0062】
例えば、
図7に示すように、電子鍵盤楽器100は、通信部17を介して、例えばタブレット端末やノートPC(Personal Computer)等の電子機器200と接続されて電子楽器システム300を構成していることとしてもよい。そして、制御部11は、電子鍵盤楽器100で押鍵された鍵に対応する楽音を、通信部17を介して接続された電子機器200の発音部201に発音させることとしてもよい。また、制御部11は、鍵盤12における複数の鍵の上に指をスライドさせるスライド操作を検出した場合、スライド操作によって押鍵された複数の鍵及び押鍵された複数の鍵の間の未押鍵の鍵に対応する楽音を発音部201に発音させるように制御してもよい。
【0063】
また、上記実施形態では、本発明に係るプログラムのコンピュータ読み取り可能な媒体として半導体メモリやハードディスクを使用した例を開示したが、この例に限定されない。その他のコンピュータ読み取り可能な媒体として、SSDや、CD-ROM等の可搬型記録媒体を適用することが可能である。また、本発明に係るプログラムのデータを通信回線を介して提供する媒体として、キャリアウエーブ(搬送波)も適用される。
【0064】
その他、電子鍵盤楽器の細部構成及び細部動作に関しても、発明の趣旨を逸脱することのない範囲で適宜変更可能である。
【0065】
以上、本発明の実施形態を説明したが、本発明の技術的範囲は上述の実施の形態に限定するものではなく、特許請求の範囲に記載に基づいて定められる。更に、特許請求の範囲の記載から本発明の本質とは関係のない変更を加えた均等な範囲も本発明の技術的範囲に含む。
【符号の説明】
【0066】
100 電子鍵盤楽器
11 制御部
12 鍵盤
13 操作部
14 表示部
15 記憶部
16 発音部
17 通信部
200 電子機器
201 発音部
300 電子楽器システム