IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ カシオ計算機株式会社の特許一覧

特開2024-86014プログラム、情報処理装置、電子楽器システム及び発音制御方法
<>
  • 特開-プログラム、情報処理装置、電子楽器システム及び発音制御方法 図1
  • 特開-プログラム、情報処理装置、電子楽器システム及び発音制御方法 図2
  • 特開-プログラム、情報処理装置、電子楽器システム及び発音制御方法 図3
  • 特開-プログラム、情報処理装置、電子楽器システム及び発音制御方法 図4
  • 特開-プログラム、情報処理装置、電子楽器システム及び発音制御方法 図5
  • 特開-プログラム、情報処理装置、電子楽器システム及び発音制御方法 図6
  • 特開-プログラム、情報処理装置、電子楽器システム及び発音制御方法 図7
  • 特開-プログラム、情報処理装置、電子楽器システム及び発音制御方法 図8
  • 特開-プログラム、情報処理装置、電子楽器システム及び発音制御方法 図9
  • 特開-プログラム、情報処理装置、電子楽器システム及び発音制御方法 図10
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024086014
(43)【公開日】2024-06-27
(54)【発明の名称】プログラム、情報処理装置、電子楽器システム及び発音制御方法
(51)【国際特許分類】
   G10H 1/18 20060101AFI20240620BHJP
   G10H 1/053 20060101ALI20240620BHJP
【FI】
G10H1/18 101
G10H1/053 C
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022200861
(22)【出願日】2022-12-16
(71)【出願人】
【識別番号】000001443
【氏名又は名称】カシオ計算機株式会社
(74)【代理人】
【識別番号】110001254
【氏名又は名称】弁理士法人光陽国際特許事務所
(72)【発明者】
【氏名】段城 真
(72)【発明者】
【氏名】太田 文章
(72)【発明者】
【氏名】中村 厚士
【テーマコード(参考)】
5D478
【Fターム(参考)】
5D478BA04
5D478DA13
(57)【要約】
【課題】タッチパネル鍵盤において良好に黒鍵グリッサンド奏法による演奏を行うことを可能とする。
【解決手段】情報処理装置の制御部は、タッチパネル鍵盤アプリとの協働により、タッチパネルを備える表示部の画面上に、複数の黒鍵及び複数の白鍵が配列された鍵盤画像を表示させ、鍵盤画像において連続して配列された複数の鍵の上にスライドさせるスライド操作を検出した場合、スライド操作によってタッチされた白鍵に対応する楽音を発音部に発音させないように制御する。
【選択図】図6
【特許請求の範囲】
【請求項1】
コンピュータに、
タッチパネルを備える表示部の画面上に、複数の黒鍵及び複数の白鍵が配列された鍵盤画像を表示させ、
前記鍵盤画像において連続して配列された複数の鍵の上をスライドさせるスライド操作を検出した場合に、前記スライド操作によってタッチされた白鍵に対応する楽音を発音部に発音させないように制御する、
処理を実行させるプログラム。
【請求項2】
第1鍵への第1タッチを検出した後に、前記第1鍵に隣接する白鍵の第2鍵への第2タッチを検出した場合に、前記第1タッチを検出した第1タイミングから前記第2タッチを検出した第2タイミングまでの時間が設定時間に達しているか否かを判断し、
前記設定時間に達していないと判断する場合に、前記スライド操作を検出したと判断し、前記第2鍵の白鍵に対応する楽音を前記発音部に発音させないように制御し、
前記設定時間に達していると判断する場合に、前記スライド操作を検出しないと判断し、前記第2鍵の白鍵に対応する楽音を前記発音部に発音させるように制御する、
請求項1に記載のプログラム。
【請求項3】
前記第1タッチが検出される前にタッチが検出された第3鍵と前記第1タッチされた前記第1鍵との位置関係に基づいて前記第1鍵の次にタッチが予想される予想鍵を決定し、
前記第2鍵が前記予想鍵である場合に、前記スライド操作を検出したと判断し、
前記第2鍵が前記予想鍵でない場合に、前記スライド操作を検出しないと判断する、
請求項2に記載のプログラム。
【請求項4】
前記鍵盤画像における設定領域内において前記スライド操作を検出した場合に、前記制御を行う、請求項1に記載のプログラム。
【請求項5】
タッチパネルを備える表示部と、
前記表示部の画面上に、複数の黒鍵及び複数の白鍵が配列された鍵盤画像を表示させ、前記鍵盤画像においてタッチされた鍵に対応する楽音を発音部に発音させる制御部と、
を備え、
前記制御部は、前記鍵盤画像において連続して配列された複数の鍵の上をスライドさせるスライド操作を検出した場合は、前記スライド操作によってタッチされた白鍵に対応する楽音を前記発音部に発音させないように制御する、情報処理装置。
【請求項6】
タッチパネルを備える表示部と、
前記表示部の画面上に、複数の黒鍵及び複数の白鍵が配列された鍵盤画像を表示させ、前記鍵盤画像においてタッチされた鍵に対応する楽音を発音部に発音させる制御部と、
を備える情報処理装置と、
発音部を備える電子楽器と、を備え、
前記制御部は、
前記鍵盤画像において連続して配列された複数の鍵の上をスライドさせるスライド操作を検出した場合は、前記スライド操作によってタッチされた白鍵に対応する楽音を前記発音部に発音させないように制御する、
電子楽器システム。
【請求項7】
コンピュータが、
タッチパネルを備える表示部の画面上に、複数の黒鍵及び複数の白鍵が配列された鍵盤画像を表示させる表示工程と、
前記鍵盤画像においてタッチされた鍵に対応する楽音を発音部に発音させる制御工程と、
を含み、
前記制御工程は、前記鍵盤画像において連続して配列された複数の鍵の上をスライドさせるスライド操作を検出した場合は、前記スライド操作によってタッチされた白鍵に対応する楽音を前記発音部に発音させないように制御する、
発音制御方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム、情報処理装置、電子楽器システム及び発音制御方法に関する。
【背景技術】
【0002】
従来、液晶表示画面に表示される鍵盤(白鍵、黒鍵)の各鍵の画像を、当該液晶表示画面上に敷設されるタッチパネルを介して鍵操作すると、操作された鍵に応じた音を発音する所謂タッチパネル鍵盤が知られている(例えば、特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2016-180795号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、タッチパネル鍵盤は、ピアノやキーボード等の鍵盤楽器とは異なり、黒鍵と白鍵の高さが同じである。そのため、タッチパネル鍵盤において、複数の黒鍵に指を滑らせて黒鍵のみを順次発音させる黒鍵グリッサンド奏法による演奏を再現しようとしても、白鍵にも指が触れてしまい、黒鍵グリッサンド奏法による演奏を再現することは困難であった。
【0005】
本発明は、上記の問題に鑑みてなされたものであり、タッチパネル鍵盤において良好に黒鍵グリッサンド奏法による演奏を行うことを可能とすることである。
【課題を解決するための手段】
【0006】
上記課題を解決するため、本発明の一態様のプログラムは、
コンピュータに、
タッチパネルを備える表示部の画面上に、複数の黒鍵及び複数の白鍵が配列された鍵盤画像を表示させ、
前記鍵盤画像において連続して配列された複数の鍵の上をスライドさせるスライド操作を検出した場合に、前記スライド操作によってタッチされた白鍵に対応する楽音を発音部に発音させないように制御する、
処理を実行させる。
【発明の効果】
【0007】
本発明によれば、タッチパネル鍵盤において良好に黒鍵グリッサンド奏法による演奏を行うことが可能となる。
【図面の簡単な説明】
【0008】
図1】本発明の実施形態に係る情報処理装置の機能的構成を示すブロック図である。
図2】タッチパネル鍵盤として機能する情報処理装置を模式的に示す図である。
図3】従来のタッチパネル鍵盤において黒鍵グリッサンド奏法で演奏した場合に発音される鍵を示す図(比較例)である。
図4】第1の実施形態において図1の制御部により実行される発音制御処理Aの流れを示すフローチャートである。
図5図4のステップS3において実行される押鍵イベント処理Aの流れを示すフローチャートである。
図6】第1の実施形態のタッチパネル鍵盤において黒鍵グリッサンド奏法で演奏した場合に発音される鍵を示す図である。
図7】黒鍵グリッサンドエリアの一例を示す図である。
図8】第2の実施形態において図1の制御部により実行される発音制御処理Bの流れを示すフローチャートである。
図9図8のステップS13において実行される押鍵イベント処理Bの流れを示すフローチャートである。
図10】電子楽器システムの構成例を示す図である。
【発明を実施するための形態】
【0009】
以下に、本発明の実施形態について、図面を用いて説明する。但し、以下に述べる実施形態には、本発明を実施するために技術的に好ましい種々の限定が付されている。そのため、本発明の技術的範囲を以下の実施形態及び図示例に限定するものではない。
【0010】
<第1の実施形態>
[情報処理装置1の構成]
図1は、本発明の第1の実施形態における情報処理装置1の機能的構成を示すブロック図である。情報処理装置1としては、例えば、タブレット端末等が適用可能である。
【0011】
情報処理装置1は、図1に示すように、制御部11、記憶部12、操作部13、表示部14、通信部15、発音部16、計時部17等を備えて構成され、各部はバス18により接続されている。
【0012】
制御部11は、少なくとも1つのCPU(Central Processing Unit)、RAM(Random Access Memory)等を備えて構成され、情報処理装置1の各部を制御するコンピュータである。具体的には、制御部11のCPUは、記憶部12に記憶されているシステムプログラムや各種アプリケーションプログラムの中から指定されたプログラムを読み出してRAMに展開し、展開されたプログラムとの協働により各種処理を実行する。
【0013】
記憶部12は、不揮発性の半導体メモリやHDD(Hard Disk Drive)等により構成されている。記憶部12は、情報処理装置1のシステムプログラムや各種アプリケーションプログラム、プログラムの実行に必要なデータ等を記憶する。記憶部12は、情報処理装置1に内蔵されたものに限られず、情報処理装置1に対して着脱可能な外部記録媒体を含んでもよい。
【0014】
本実施形態において、記憶部12は、情報処理装置1をタッチパネル鍵盤TKB(図2参照)として機能させるためのアプリケーションプログラム(タッチパネル鍵盤アプリ121と呼ぶ)を記憶している。
【0015】
操作部13は、押しボタンスイッチや、表示部14の画面上に設けられたタッチパネル131により構成されている。操作部13は、ユーザによる押しボタンスイッチの操作信号やタッチパネル131による検出信号を制御部11に出力する。
【0016】
表示部14は、LCD(Liquid Crystal Display)、EL(Electro Luminescence)ディスプレイ等で構成され、制御部11から指示された表示情報に従い各種表示を行う。表示部14の画面には、タッチパネル131が設けられている。
【0017】
通信部15は、外部機器との間で通信を行うための有線ユニットや無線ユニットを備え、外部機器とデータ送受信を行う。
【0018】
発音部16は、音源部、D/Aコンバータ、増幅器、スピーカ等を備える。発音部16は、制御部11からの指示に従って、音源部により、音源部に備えられた波形ROMに予め記憶された波形データを読み出すか又は波形データを生成して、波形データに基づく楽音を、D/Aコンバータ、増幅器を介してスピーカから出力する。
【0019】
計時部17は、例えば、RTC(Real Time Clock)等により構成され、現在時刻を計時して制御部11に出力する。
【0020】
[情報処理装置1の動作]
次に、第1の実施形態における情報処理装置1の動作について説明する。
情報処理装置1において、タッチパネル鍵盤アプリ121が起動されると、制御部11は、タッチパネル鍵盤アプリ121との協働により、タッチパネル鍵盤TKBとしての機能を実現する。すなわち、制御部11は、図2に示すように、表示部14の画面上に、複数の白鍵と複数の黒鍵が配列された鍵盤画像141と、黒鍵グリッサンドボタンB1を含む操作部画像142とを含む鍵盤楽器画像を表示させ、鍵盤画像141上のタッチされた鍵に対応する楽音を発音部16に発音させる。具体的には、鍵盤画像141の各鍵にはノートナンバーが割り当てられており、タッチされた鍵のノートナンバーに対応する音高の楽音を発音部16に発音させる。黒鍵グリッサンドボタンB1は、黒鍵グリッサンド機能のオンオフの切り替えを指示するためのボタンである。
【0021】
ここで、タッチパネル鍵盤において、例えば、図3の矢印で示す位置及び方向に指を滑らせて鍵盤楽器における黒鍵グリッサンド奏法による演奏を再現しようとしても、黒鍵と白鍵の高さが同じであるため、白鍵にも指が触れてしまう。そのため、従来のタッチパネル鍵盤では、図3に示すように、黒鍵だけでなく白鍵に対応する音も発音されてしまい、鍵盤楽器のような黒鍵グリッサンド奏法による演奏を再現することは困難であった。
そこで、本実施形態において、制御部11は、黒鍵グリッサンド機能がオンに設定された場合に、後述する発音制御処理Aを実行し、連続して配列された黒鍵を含む複数の鍵の上に指をスライドさせるスライド操作が行われた場合に、スライド操作によってタッチされた鍵のうち黒鍵に対応する楽音を発音させるように制御するとともに、白鍵に対応する楽音を発音させないように制御する。これにより、タッチパネル鍵盤TKBにおいて黒鍵グリッサンド奏法による演奏が行えるようにする。
なお、黒鍵グリッサンド機能がオフに設定された場合、制御部11は、押鍵(タッチ)された鍵(白鍵も含む)に対応する楽音を発音部16により発音させ、離鍵された鍵に対応する楽音を消音させる。
【0022】
図4は、制御部11により実行される発音制御処理Aの流れを示すフローチャートである。発音制御処理Aは、黒鍵グリッサンド機能がオンに設定された場合に、制御部11とタッチパネル鍵盤アプリ121との協働により実行される。
【0023】
発音制御処理Aにおいて、まず、制御部11は、初期設定を行う(ステップS1)。
ステップS1において、制御部11は、発音制御処理Aにおいて使用される記憶部12又は制御部11に含まれるRAM上の変数や押鍵キーテーブルを初期化する。押鍵キーテーブルは、押鍵中(タッチ中)の鍵のノートナンバーを格納するテーブルである。
【0024】
次いで、制御部11は、押鍵が検出されたか否かを判断する(ステップS2)。
本実施形態において、制御部11は、押鍵キーテーブルを参照し、タッチパネル131により、鍵盤画像141における、押鍵キーテーブルに登録されていない鍵の領域内でタッチパネル131によりタッチが検出された場合に、押鍵が検出されたと判断する。
【0025】
押鍵が検出されたと判断した場合(ステップS2;YES)、制御部11は、押鍵イベント処理Aを実行する(ステップS3)。
図5は、ステップS3において実行される押鍵イベント処理Aの流れを示すフローチャートである。押鍵イベント処理Aは、制御部11とタッチパネル鍵盤アプリ121との協働により実行される。
【0026】
押鍵イベント処理Aにおいて、まず、制御部11は、T1に、計時部17から取得した現在時刻(time)を格納し、K2に、K1に格納されている値を格納し、K1に、押鍵された鍵のノートナンバーを格納する(ステップS301)。
ここで、T1は、今回検出された押鍵の時刻を格納するための変数である。K2は、前回押鍵された鍵のノートナンバーを格納するための変数である。K1は、今回押鍵された鍵のノートナンバーを格納するための変数である。
【0027】
次いで、制御部11は、K2にデータがあるか否かを判断する(ステップS302)。ここで、発音制御処理Aが始まって初めての押鍵による押鍵イベント処理Aでは、K2にデータはない。
【0028】
K2にデータがないと判断した場合(ステップS302;NO)、制御部11は、ステップS313に移行し、発音部16に、押鍵された鍵に対応する楽音(K1の音高の楽音)を発音させる(ステップS313)。そして、制御部11は、変数T2に、計時部17から取得した現在時刻(time)を格納し(ステップS314)、図4のステップS4に移行する。
ここで、T2は、発音処理された時刻を格納しておくための変数である。
【0029】
K2にデータがあると判断した場合(ステップS302;YES)、制御部11は、K2-K1<=±1であるか否かを判断する(ステップS303)。
すなわち、前回押鍵された鍵と今回押鍵された鍵が隣接しているか(連続しているか)否かを判断する。
K2-K1<=±1ではない(すなわち、前回押鍵された鍵(第3鍵)と今回押鍵された鍵(第1鍵)が隣接していない)と判断した場合(ステップS303;NO)、制御部11は、ステップS308に移行する。
【0030】
K2-K1<=±1である(すなわち、前回押鍵された鍵(第3鍵)と今回押鍵された鍵(第1鍵)が隣接している)と判断した場合(ステップS303;YES)、制御部11は、NEXTKEYにデータが有るか否かを判断する(ステップS304)。
ここで、NEXTKEYは、次に押鍵されると予想される鍵(予想鍵)のノートナンバーを格納するための変数である。
【0031】
NEXTKEYにデータがないと判断した場合(ステップS304;NO)、制御部11は、DIFFにK1-K2を設定する(ステップS305)。
ここで、DIFFは、今回押鍵された鍵と前回押鍵された鍵との差分(位置関係)を格納するための変数である。DIFFがプラスであれば、右方向(ノートナンバーが大きい方向)、DIFFがマイナスであれば左方向(ノートナンバーが小さい方向)に指が移動していることがわかる。
【0032】
次いで、制御部11は、NEXTKEYにK1+DIFFを設定する(ステップS306)。すなわち、K1+DIFFを、次に押鍵されると予想される鍵(予想鍵)のノートナンバーとして決定する。
【0033】
次いで、制御部11は、ステップS313に移行し、発音部16に、押鍵された鍵(第1鍵)に対応する楽音(K1の音高の楽音)を発音させる(ステップS313)。そして、制御部11は、T2に、計時部17から取得した現在時刻(time)を格納し(ステップS314)、図4のステップS4に移行する。
【0034】
一方、ステップS304において、NEXTKEYにデータがあると判断した場合(ステップS304;YES)、制御部11は、K1(第2鍵)=NEXTKEY(予想鍵)であるか否かを判断する(ステップS307)。
すなわち、今回押鍵された鍵のノートナンバー(第2鍵)が、次に押鍵されると予想される鍵(予想鍵)のノートナンバーであるか否かを判断する。
K1=NEXTKEYではないと判断した場合(ステップS307;NO)、すなわち、今回押鍵された鍵のノートナンバーが次に押鍵されると予想される鍵(予想鍵)のノートナンバーではない場合、制御部11は、ステップS308に移行する。
【0035】
ステップS308において、制御部11は、K2とNEXTKEYのデータをクリアする(ステップS308)。そして、制御部11は、発音部16に、押鍵された鍵に対応する楽音(K1の音高の楽音)を発音させ(ステップS313)、変数T2に、計時部17から取得した現在時刻(time)を格納し(ステップS314)、図4のステップS4に移行する。
【0036】
一方、ステップS307において、K1(第2鍵)=NEXTKEY(予想鍵)であると判断した場合(ステップS307;YES)、すなわち、今回押鍵された鍵(第2鍵)のノートナンバーが次に押鍵されると予想された鍵(予想鍵)のノートナンバーである場合、制御部11は、NEXTKEYにK1+DIFFを格納する(ステップS309)。
【0037】
次いで、制御部11は、今回押鍵された鍵が黒鍵であるか否かを判断する(ステップS310)。
今回押鍵された鍵が黒鍵であると判断した場合(ステップS310;YES)、制御部11は、発音部16に、押鍵された鍵に対応する楽音(K1の音高の楽音)を発音させ(ステップS313)、T2に、計時部17から取得した現在時刻(time)を格納し(ステップS314)、図4のステップS4に移行する。
【0038】
今回押鍵された鍵が黒鍵ではないと判断した場合(ステップS310;NO)、すなわち、今回押鍵された鍵が白鍵である場合、制御部11は、T2にデータがあるか否かを判断する(ステップS311)。
T2にデータがないと判断した場合(ステップS311;NO)、制御部11は、発音部16に、押鍵された鍵に対応する楽音(K1の音高の楽音)を発音させ(ステップS313)、変数T2に、計時部17から取得した現在時刻(time)を格納させ(ステップS314)、図4のステップS4に移行する。
【0039】
一方、T2にデータがあると判断した場合(ステップS311;YES)、制御部11は、T1-T2>設定時間であるか否かを判断する(ステップS312)。
T1-T2>設定時間であると判断した場合(ステップS312;YES)、すなわち、前回押鍵された鍵(第1鍵)に対応する楽音が発音されたタイミング(第1タイミング、ここではT2)から今回の鍵(第2鍵)が押鍵された直後のタイミング(第2タイミング、ここではT1)までの経過時間が予め定められた設定時間に達したと判断した場合(ステップS312;YES)、制御部11は、発音部16に、押鍵された鍵(第2鍵)に対応する楽音(K1の音高の楽音)を発音させる(ステップS313)。そして、制御部11は、計時部17から取得した現在時刻(time)をT2に格納させ(ステップS314)、図4のステップS4に移行する。すなわち、前回の押鍵に対応する楽音が発音されてから今回の押鍵までの経過時間が設定時間に達したと判断した場合、制御部11は、スライド操作ではないとみなして、押鍵された白鍵の鍵(第2鍵)に応じた楽音を発音させる。
【0040】
一方、T1-T2>設定時間ではないと判断した場合(ステップS312;NO)、すなわち、前回押鍵された鍵(第1鍵)に対応する楽音が発音されたタイミング(第1タイミング、ここではT2)から今回の鍵(第2鍵)が押鍵された直後のタイミング(第2タイミング、ここではT1)までの経過時間が予め定められた設定時間内であると判断した場合、制御部11は、計時部17から取得した現在時刻(time)をT2に格納させ(ステップS314)、図4のステップS4に移行する。
すなわち、隣接する複数の鍵の押鍵が検出された場合であって、前回の押鍵に対応する楽音が発音されてから今回の押鍵がされるまでの経過時間が設定時間内であると判断した場合、制御部11は、スライド操作が検出された判断して、押鍵された白鍵(第2鍵)に対応する楽音を発音させないように制御する。
【0041】
図4のステップS4において、制御部11は、押鍵キーテーブルに、押鍵が検出された鍵(押鍵検出キー)のノートナンバーを格納し(ステップS4)、ステップS8に移行する。
【0042】
一方、ステップS2において、押鍵が検出されていないと判断した場合(ステップS2;NO)、制御部11は、離鍵が検出されたか否かを判断する(ステップS5)。
ここで、制御部11は、押鍵キーテーブルを参照し、鍵盤画像141における、押鍵キーテーブルに登録されているノートナンバーに対応する鍵の領域内でタッチパネル131によるタッチが検出されていない鍵がある場合、その鍵の離鍵が検出されたと判断する。
【0043】
離鍵が検出されたと判断した場合(ステップS5;YES)、制御部11は、発音部16に対し、離鍵が検出された鍵(離鍵検出キー)に対応する楽音を消音させる(ステップS6)。
そして、制御部11は、押鍵キーテーブルから離鍵が検出された鍵のノートナンバーを削除し(ステップS7)、ステップS8に移行する。
【0044】
一方、ステップS5において、タッチパネル131により離鍵が検出されていないと判断した場合(ステップS5;NO)、制御部11は、ステップS8に移行する。
【0045】
ステップS8において、制御部11は、黒鍵グリッサンド機能の終了が指示されたか否かを判断する(ステップS8)。
例えば、制御部11は、黒鍵グリッサンドボタンB1の押下が検出され、黒鍵グリッサンド機能のオフへの切り替えが指示されたか、または、タッチパネル鍵盤アプリ121の終了が指示された場合、黒鍵グリッサンド機能の終了が指示されたと判断する。
黒鍵グリッサンド機能の終了が指示されていないと判断した場合(ステップS8;NO)、制御部11は、ステップS2に戻る。
黒鍵グリッサンド機能の終了が指示されたと判断した場合(ステップS8;YES)、制御部11は、発音制御処理Aを終了する。
【0046】
図6は、鍵盤画像141において図6の矢印の位置及び方向にスライド操作した場合に、上記発音制御処理Aによって発音される鍵を示す図である。図6に示すように、発音制御処理Aでは、鍵盤楽器の黒鍵グリッサンド奏法と同様に黒鍵が配列された領域でスライド操作が行われると、黒鍵に対応する楽音のみが発音され、白鍵に対応する楽音は発音されない。したがって、タッチパネル鍵盤TKBにおいて、黒鍵グリッサンド奏法による演奏を行うことが可能となる。
【0047】
<第2の実施形態>
次に、本発明の第2の実施形態について説明する。
第2の実施形態では、予め定められた黒鍵グリッサンドエリアA1内(図7参照)において、連続して配列された黒鍵を含む複数の鍵の上に指をスライドさせる操作が検出された場合に、スライド操作によってタッチされた白鍵に対応する楽音は発音しないように制御する例について説明する。
【0048】
第2の実施形態においては、図7に示すように、タッチパネル鍵盤TKBの鍵盤画像141における、黒鍵が配列されている領域には、黒鍵グリッサンドエリアA1が予め設定されている。黒鍵グリッサンドエリアA1は、当該エリア内で、連続して配列された黒鍵を含む複数の鍵の上に指をスライドさせるスライド操作が検出された場合に、スライド操作によってタッチされた白鍵に対応する楽音は発音しないように制御する対象となる領域である。黒鍵グリッサンドエリアA1は、例えば、鍵盤画像141の上部の領域(黒鍵が配列されている領域)であって、鍵盤画像141の上端からの距離が黒鍵の長さの1/2程度の範囲内の領域とするが、これに限定されるものではない。
その他の情報処理装置1の構成は、第1の実施形態で説明したものと同様であるので説明を援用し、以下、第2の実施形態における情報処理装置1の動作について説明する。
【0049】
第2の実施形態においては、グリッサンドボタンB1が押下されて黒鍵グリッサンド機能がオンに設定された場合に、制御部11とタッチパネル鍵盤アプリ121との協働により発音制御処理Bが実行される点が第1の実施形態とは異なる。以下、発音制御処理Bについて説明する。
【0050】
図8は、発音制御処理Bの流れを示すフローチャートである。発音制御処理Bは、制御部11とタッチパネル鍵盤アプリ121との協働により実行される。
【0051】
まず、制御部11は、初期設定を行う(ステップS11)。
ステップS11において、制御部11は、発音制御処理Bの実行において使用されるRAM上の変数や押鍵キーテーブルを初期化する。また、後述する押鍵イベント処理Bで使用される変数である黒鍵グリッサンドモードをオフに初期設定する。
黒鍵グリッサンドモードは、タッチパネル鍵盤TKBにおいて黒鍵グリッサンド奏法に相当する演奏操作が行われている場合にオンが設定される変数である。本実施形態において黒鍵グリッサンド奏法に該当する演奏操作は、黒鍵グリッサンドエリアA1内において連続して配列された黒鍵を含む複数の鍵を指でスライドする操作である。本実施形態では、黒鍵グリッサンドエリアA1内で黒鍵の押鍵(タッチ)が検出された場合に、黒鍵グリッサンド奏法に該当する演奏操作が開始されたとみなされて黒鍵グリッサンドモードにオンが設定される。
【0052】
次いで、制御部11は、押鍵が検出されたか否かを判断する(ステップS12)。
ステップS12の処理は図4のステップS2と同様であるので説明を援用する。
【0053】
押鍵が検出されたと判断した場合(ステップS12;YES)、制御部11は、押鍵イベント処理Bを実行する(ステップS13)。
図9は、ステップS13において実行される押鍵イベント処理Bの流れを示すフローチャートである。押鍵イベント処理Bは、制御部11とタッチパネル鍵盤アプリ121との協働により実行される。
【0054】
押鍵イベント処理Bにおいて、まず、制御部11は、K2にK1の値を格納し、K1に、押鍵された鍵のノートナンバーを格納する(ステップS101)。
ここで、K2は、前回押鍵された鍵のノートナンバーを格納するための変数である。K1は、今回押鍵された鍵のノートナンバーを格納するための変数である。
【0055】
次いで、制御部11は、検出された押鍵(タッチ)が、黒鍵グリッサンドエリアA1内での押鍵(タッチ)であるか否かを判断する(ステップS102)。
検出された押鍵が、黒鍵グリッサンドエリアA1内での押鍵ではないと判断した場合(ステップS102;NO)、制御部11は、発音部16に押鍵された鍵に対応する楽音(K1の音高の楽音)の発音を行わせ(ステップS114)、黒鍵グリッサンドモードをオフに設定し(ステップS115)、図8のステップS14に移行する。
【0056】
ステップS102において、検出された押鍵が、黒鍵グリッサンドエリアA1内での押鍵(タッチ)であると判断した場合(ステップS102;YES)、制御部11は、黒鍵グリッサンドモードがオンに設定されているか否かを判断する(ステップS103)。
【0057】
黒鍵グリッサンドモードがオンに設定されていないと判断した場合(ステップS103;NO)、制御部11は、黒鍵領域内で押鍵(タッチ)が検出されたか否かを判断する(ステップS104)。
黒鍵領域内で押鍵(タッチ)が検出されたと判断した場合(ステップS104;YES)、制御部11は、黒鍵グリッサンドモードをオンに設定する(ステップS105)。そして、押鍵された鍵に応じた楽音(K1の音高の発音)を発音部16に発音させ(ステップS109)、計時部17から現在時刻を取得してT1に格納し(ステップS112)、図8のステップS14に移行する。
ここで、T1は、押鍵に応じた発音がされた時刻を格納する変数である。
【0058】
黒鍵領域内で押鍵(タッチ)が検出されていない(すなわち、白鍵領域内で押鍵が検出された)と判断した場合(ステップS104;NO)、制御部11は、押鍵された鍵に応じた楽音(K1の音高の発音)を発音部16に発音させ(ステップS109)、計時部17から現在時刻を取得して変数T1に格納し(ステップS112)、図8のステップS14に移行する。
【0059】
一方、ステップS103において、黒鍵グリッサンドモードがオンに設定されていると判断した場合(ステップS103;YES)、制御部11は、白鍵領域内で押鍵(タッチ)が検出されたか否かを判断する(ステップS106)。
白鍵領域内で押鍵が検出されたと判断した場合(ステップS106;YES)、制御部11は、K2にデータがあるか否かを判断する(ステップS107)。
【0060】
変数K2にデータがないと判断した場合(ステップS107;NO)、制御部11は、ステップS114に移行し、発音部16に、押鍵された鍵に対応する楽音(K1の音高の楽音)を発音させる(ステップS114)。そして、制御部11は、黒鍵グリッサンドモードをオフに設定し(ステップS115)、図8のステップS14に移行する。
【0061】
変数K2にデータがあると判断した場合(ステップS107;YES)、制御部11は、K2-K1<=±1であるか否かを判断する(ステップS108)。
すなわち、前回押鍵された鍵と今回押鍵された鍵が隣接しているか(連続しているか)否かを判断する。
K2-K1<=±1ではない(すなわち、前回押鍵された鍵と今回押鍵された鍵が隣接(連続)していない)と判断した場合(ステップS108;NO)、制御部11は、ステップS114に移行し、発音部16に、押鍵された鍵に対応する楽音(K1の音高の楽音)を発音させる(ステップS114)。そして、制御部11は、黒鍵グリッサンドモードをオフに設定し(ステップS115)、図8のステップS14に移行する。
【0062】
K2-K1<=±1である(すなわち、前回押鍵された鍵と今回押鍵された鍵が隣接(連続)している)と判断した場合(ステップS108;YES)、制御部11は、計時部17から現在時刻を取得してT2に格納し(ステップS110)、T2-T1>設定時間であるか否かを判断する(ステップS111)。設定時間は、予め設定された時間であり、例えば、0.3secであるが、これに限定されるものではない。
T2-T1>設定時間ではないと判断した場合(ステップS111;NO)、制御部11は、計時部17から現在時刻を取得してT1に格納し(ステップS112)、図8のステップS14に移行する。
【0063】
ここで、本実施形態において、制御部11は、K2-K1<=±1であり(すなわち、前回押鍵された鍵と今回押鍵された鍵が隣接(連続)しており)、かつT2-T1>設定時間ではない(すなわち、前回押鍵された鍵(第1鍵)に対応する楽音が発音されたタイミング(第1タイミング、ここではT1)から今回の鍵(第2鍵)が押鍵された後の所定のタイミング(第2タイミング、ここではT2)までに予め定められた設定時間が経過していない)場合に、スライド操作が継続していると判断し、押鍵された白鍵に対応する楽音を発音しない。
【0064】
一方、T2-T1>設定時間であると判断した場合(ステップS111;YES)、制御部11は、変数T1、T2、K2をリセットし(ステップS113)、発音部16に、押鍵された鍵に対応する楽音(K1の音高の楽音)を発音させる(ステップS114)。そして、制御部11は、黒鍵グリッサンドモードをオフに設定し(ステップS115)、図8のステップS14に移行する。
【0065】
図8のステップS14~17の処理は、図4のステップS4~7の処理と同様であるので説明を援用する。
【0066】
上記発音制御処理Bによれば、ユーザが、タッチパネル鍵盤TKBにおいて、予め定められた黒鍵グリッサンドエリアA1内において、連続して配列された黒鍵を含む複数の鍵の上に指をスライドさせる操作を行った場合に、制御部11は、スライド操作によってタッチされた白鍵に対応する楽音は発音しないように制御する。したがって、タッチパネル鍵盤TKBにおいて、黒鍵グリッサンド奏法による演奏を行うことが可能となる。また、第2の実施形態では、白鍵を発音させない制御をするエリアを黒鍵グリッサンドエリアA1内に限定しているため、黒鍵グリッサンドエリアA1外では、通常の演奏が可能となる。例えば、連続して配列された複数の鍵の上に指をスライドさせる操作に応じて、半音ずつ音を変化させるグリッサンドが可能となる。
【0067】
以上説明したように、情報処理装置1の制御部11は、タッチパネル鍵盤アプリ121との協働により、タッチパネル131を備える表示部14の画面上に、複数の黒鍵及び複数の白鍵が配列された鍵盤画像141を表示させる。鍵盤画像141において連続して配列された黒鍵を含む複数の鍵の上に指をスライドさせるスライド操作を検出した場合、制御部11は、スライド操作によってタッチされた黒鍵に対応する楽音を発音部16に発音させるように制御するとともに、白鍵に対応する楽音を発音部16に発音させないように制御する。
したがって、タッチパネル鍵盤TKBにおいて、黒鍵グリッサンド奏法による演奏を行うことが可能となる。
【0068】
例えば、制御部11は、第1鍵への第1タッチを検出した後に、第1鍵に隣接する白鍵の第2鍵への第2タッチを検出した場合に、第1タッチの検出後の第1タイミングから第2タッチの検出後の第2タイミングまでの時間が設定時間に達しているか否かを判断し、設定時間に達していないと判断する場合に、スライド操作を検出したと判断し、第2鍵の白鍵に対応する楽音を発音部16に発音させないように制御することができる。また、設定時間に達していると判断する場合に、スライド操作を検出しないと判断し、第2鍵の白鍵に対応する楽音を発音部16に発音させるように制御することができる。
【0069】
また、例えば、制御部11は、第1タッチが検出される前にタッチが検出された第3鍵と第1タッチされた第1鍵との位置関係に基づいて第1鍵の次にタッチが予想される予想鍵を決定し、第2鍵が予想鍵である場合に、スライド操作を検出したと判断し、第2鍵が予想鍵でない場合に、スライド操作を検出しないと判断する。したがって、スライド方向を考慮して精度よくスライド操作を検出することが可能となる。
【0070】
また、例えば、制御部11は、鍵盤画像141における、予め定められた黒鍵グリッサンドエリアA1内においてスライド操作を検出した場合に操作された白鍵に対応する楽音を発音部16に発音させないように制御する。したがって、黒鍵グリッサンドエリアA1外では、通常の演奏や、半音ごとに音が変化するグリッサンドの演奏が可能となる。
【0071】
なお、上記実施形態における記述内容は、本発明に係るプログラム、情報処理装置、電子楽器システム及び発音制御方法の好適な一例であり、これに限定されるものではない。
【0072】
例えば、黒鍵グリッサンドは、左右方向に指を滑らせる(スライドさせる)ものである。そこで、制御部11は、タッチされた鍵の座標を記憶しておき、前回タッチされた座標と今回タッチされた座標からスライド方向を特定し、スライド方向が左右方向である場合に、操作された白鍵に対応する楽音を発音部16に発音させないように制御することとしてもよい。例えば、前回タッチされた座標が(x1、y1)、今回タッチされた座標が(x2、y2)である場合、y2-y1の絶対値が予め定められた設定値以下の場合に、操作された白鍵に対応する楽音を発音部16に発音させないように制御し、y2-y1の絶対値が予め定められた設定値を超えている場合は、操作された白鍵に対応する楽音を発音部16に発音させるように制御することとしてもよい。
【0073】
また、上記実施形態では、情報処理装置1が発音部16を備える構成としたが、例えば、図10に示すように、情報処理装置1が通信部15を介して電子ピアノやキーボード等の電子楽器2と接続されて電子楽器システム100を構成していることとしてもよい。そして、制御部11は、情報処理装置1のタッチパネル鍵盤TKBでタッチされた鍵に対応する楽音を、通信部15を介して接続された電子楽器2の発音部21に発音させることとしてもよい。また、制御部11は、鍵盤画像141において連続して配列された黒鍵を含む複数の鍵の上に指をスライドさせるスライド操作を検出した場合、スライド操作によってタッチされた白鍵に対応する楽音を発音部21に発音させないように制御することとしてもよい。
【0074】
また、スライド操作であるか否かを判断するために用いた第1タイミングと第2タイミングは、上述したものに限定されない。例えば、第1タイミングは、第1鍵のタッチが検出された(直後の)タイミング、第2タイミングは、第2鍵のタッチが検出された(直後の)タイミングとしてもよい。
【0075】
また、上記実施形態では、本発明に係るプログラムのコンピュータ読み取り可能な媒体として半導体メモリやハードディスクを使用した例を開示したが、この例に限定されない。その他のコンピュータ読み取り可能な媒体として、SSDや、CD-ROM等の可搬型記録媒体を適用することが可能である。また、本発明に係るプログラムのデータを通信回線を介して提供する媒体として、キャリアウエーブ(搬送波)も適用される。
【0076】
その他、情報処理装置や電子楽器システムを構成する各装置の細部構成及び細部動作に関しても、発明の趣旨を逸脱することのない範囲で適宜変更可能である。
【0077】
以上に本発明の実施形態及び変形例を説明したが、本発明の技術的範囲は上述の実施の形態に限定するものではなく、特許請求の範囲に記載に基づいて定められる。更に、特許請求の範囲の記載から本発明の本質とは関係のない変更を加えた均等な範囲も本発明の技術的範囲に含む。
【符号の説明】
【0078】
1 情報処理装置
11 制御部
12 記憶部
121 タッチパネル鍵盤アプリ
13 操作部
131 タッチパネル
14 表示部
15 通信部
16 発音部
17 計時部
2 電子楽器
100 電子楽器システム
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10