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

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

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

特許7501560情報処理装置、電子楽器、方法及びプログラム
<>
  • 特許-情報処理装置、電子楽器、方法及びプログラム 図1
  • 特許-情報処理装置、電子楽器、方法及びプログラム 図2
  • 特許-情報処理装置、電子楽器、方法及びプログラム 図3
  • 特許-情報処理装置、電子楽器、方法及びプログラム 図4
  • 特許-情報処理装置、電子楽器、方法及びプログラム 図5
  • 特許-情報処理装置、電子楽器、方法及びプログラム 図6
  • 特許-情報処理装置、電子楽器、方法及びプログラム 図7
  • 特許-情報処理装置、電子楽器、方法及びプログラム 図8
  • 特許-情報処理装置、電子楽器、方法及びプログラム 図9
  • 特許-情報処理装置、電子楽器、方法及びプログラム 図10
  • 特許-情報処理装置、電子楽器、方法及びプログラム 図11
  • 特許-情報処理装置、電子楽器、方法及びプログラム 図12
  • 特許-情報処理装置、電子楽器、方法及びプログラム 図13
  • 特許-情報処理装置、電子楽器、方法及びプログラム 図14
  • 特許-情報処理装置、電子楽器、方法及びプログラム 図15
  • 特許-情報処理装置、電子楽器、方法及びプログラム 図16
  • 特許-情報処理装置、電子楽器、方法及びプログラム 図17
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-06-10
(45)【発行日】2024-06-18
(54)【発明の名称】情報処理装置、電子楽器、方法及びプログラム
(51)【国際特許分類】
   G10H 1/053 20060101AFI20240611BHJP
   G10H 1/043 20060101ALI20240611BHJP
【FI】
G10H1/053 A
G10H1/043 A
【請求項の数】 16
(21)【出願番号】P 2022046538
(22)【出願日】2022-03-23
(65)【公開番号】P2023140618
(43)【公開日】2023-10-05
【審査請求日】2023-03-23
(73)【特許権者】
【識別番号】000001443
【氏名又は名称】カシオ計算機株式会社
(74)【代理人】
【識別番号】110004185
【氏名又は名称】インフォート弁理士法人
(74)【代理人】
【識別番号】100121083
【弁理士】
【氏名又は名称】青木 宏義
(74)【代理人】
【識別番号】100138391
【弁理士】
【氏名又は名称】天田 昌行
(74)【代理人】
【識別番号】100074099
【弁理士】
【氏名又は名称】大菅 義之
(74)【代理人】
【識別番号】100182936
【弁理士】
【氏名又は名称】矢野 直樹
(72)【発明者】
【氏名】佐藤 博毅
(72)【発明者】
【氏名】川島 肇
【審査官】山下 剛史
(56)【参考文献】
【文献】特開2001-159892(JP,A)
【文献】特開平6-35465(JP,A)
【文献】特開平5-188953(JP,A)
【文献】特開2012-189902(JP,A)
【文献】特開2001-350470(JP,A)
【文献】特開2001-350471(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G10H 1/00-7/12
(57)【特許請求の範囲】
【請求項1】
第1の楽音に対応する第1情報及び、前記第1の楽音よりも後に発音される第2の楽音に対応する第2情報を取得し、
前記第1情報及び前記第2情報に応じて、所定の操作終了時からの経過時間に対する特殊奏法の発生確率である第1発生確率と、前記第1の楽音の発音から前記第2の楽音の発音までの経過時間に対する前記特殊奏法の発生確率である第2発生確率と、を取得し、
前記第1発生確率及び前記第2発生確率に応じて、前記第2の楽音を、通常奏法と前記特殊奏法とのいずれかで発音させるかを決定する、
処理を実行する、制御部を備える、
情報処理装置。
【請求項2】
前記特殊奏法は、前記通常奏法以外の複数種類の奏法を含み、
前記制御部は、
前記第1情報及び前記第2情報に対応する所定のパラメータを取得し、
前記所定のパラメータに応じて、前記第2の楽音を、前記特殊奏法のうちいずれかの奏法で発音させるかを決定する、
請求項1に記載の情報処理装置。
【請求項3】
前記所定のパラメータは、
前記第1の楽音と前記第2の楽音とのベロシティ差と、
前記第1の楽音と前記第2の楽音との音程差と、を含む、
請求項2に記載の情報処理装置。
【請求項4】
前記ベロシティ差が小さいほど、前記特殊奏法の夫々の発生確率が予め高い値に設定される、
請求項3に記載の情報処理装置。
【請求項5】
前記特殊奏法は、グリッサンド奏法を含み、
前記ベロシティ差が小さいほど、前記グリッサンド奏法の発生確率である第3発生確率が予め高い値に設定され、
前記音程差が0である場合を除く所定音程差の範囲内において、前記グリッサンド奏法の発生確率である第4発生確率が予め設定され、
前記制御部は、
前記第3発生確率及び前記第4発生確率に応じて、前記第2の楽音を、前記グリッサンド奏法で発音させるかを決定する、
請求項4に記載の情報処理装置。
【請求項6】
前記第4発生確率は、前記音程差が小さいほど予め高い値に設定される、
請求項5に記載の情報処理装置。
【請求項7】
前記第1の楽音が発音された際の所定時間内の連続発音回数が少ないほど、前記特殊奏法の夫々の発生確率が予め高い値に設定される、
請求項4記載の情報処理装置。
【請求項8】
前記特殊奏法は、ハンマリングオン奏法を含み、
前記ベロシティ差が小さいほど、前記ハンマリングオン奏法の発生確率である第5発生確率が予め高い値に設定され、
前記音程差が0である場合を除く所定音程差の範囲内において、前記ハンマリングオン奏法の発生確率である第6発生確率が予め設定され、
前記連続発音回数が少ないほど、前記ハンマリングオン奏法の発生確率である第7発生確率が予め高い値に設定され、
前記制御部は、
前記第5発生確率、前記第6発生確率、前記第7発生確率に応じて、前記第2の楽音を、前記ハンマリングオン奏法で発音させるかを決定する、
請求項7に記載の情報処理装置。
【請求項9】
前記第6発生確率は、前記第2の楽音が前記第1の楽音よりも音高が大きく、かつ、前記音程差が小さいほど予め高い値に設定される、
請求項8に記載の情報処理装置。
【請求項10】
前記特殊奏法は、プリングオフ奏法を含み、
前記ベロシティ差が小さいほど、前記プリングオフ奏法の発生確率である第8発生確率が予め高い値に設定され、
前記音程差が0である場合を除く所定音程差の範囲内において、前記プリングオフ奏法の発生確率である第9発生確率が予め設定され、
前記連続発音回数が少ないほど、前記プリングオフ奏法の発生確率である第10発生確率が予め設定され、
前記制御部は、
前記第8発生確率、前記第9発生確率、前記第10発生確率に応じて、前記第2の楽音を、前記プリングオフ奏法で発音させるかを決定する、
請求項9に記載の情報処理装置。
【請求項11】
前記第9発生確率は、前記第2の楽音が前記第1の楽音よりも音高が小さく、かつ、前記音程差が小さいほど予め高い値に設定される、
請求項10に記載の情報処理装置。
【請求項12】
前記制御部は、
前記第2の楽音が単音か否かを判定し、
前記第2の楽音が単音でない場合に、前記第2の楽音を、通常奏法で発音させるように決定する、
請求項1から請求項11の何れか一項に記載の情報処理装置。
【請求項13】
前記制御部は、
前記第1発生確率又は前記第2発生確率の値が0と判断された場合に、前記第2の楽音を、前記通常奏法で発音させるように決定する、
請求項1から請求項12の何れか一項に記載の情報処理装置。
【請求項14】
請求項1から請求項13の何れか一項に記載の情報処理装置と、
鍵盤と、
前記鍵盤がユーザの指により押鍵される操作及び離鍵される操作を検出するキースキャナと、を備える電子楽器であって、
前記所定の操作は、前記ユーザの指による押鍵により前記第1の楽音を発音させた後に、前記ユーザの指を前記鍵盤から離鍵させる操作である、
電子楽器。
【請求項15】
第1の楽音に対応する第1情報及び、前記第1の楽音よりも後に発音される第2の楽音に対応する第2情報を取得し、
前記第1情報及び前記第2情報に応じて、所定の操作終了時からの経過時間に対する特殊奏法の発生確率である第1発生確率と、前記第1の楽音の発音から前記第2の楽音の発音までの経過時間に対する前記特殊奏法の発生確率である第2発生確率と、を取得し、
前記第1発生確率及び前記第2発生確率に応じて、前記第2の楽音を、通常奏法と前記特殊奏法とのいずれかで発音させるかを決定する、
処理を、コンピュータに実行させる、
方法。
【請求項16】
第1の楽音に対応する第1情報及び、前記第1の楽音よりも後に発音される第2の楽音に対応する第2情報を取得し、
前記第1情報及び前記第2情報に応じて、所定の操作終了時からの経過時間に対する特殊奏法の発生確率である第1発生確率と、前記第1の楽音の発音から前記第2の楽音の発音までの経過時間に対する前記特殊奏法の発生確率である第2発生確率と、を取得し、
前記第1発生確率及び前記第2発生確率に応じて、前記第2の楽音を、通常奏法と前記特殊奏法とのいずれかで発音させるかを決定する、
処理を、コンピュータに実行させるための、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書の開示は、情報処理装置、電子楽器、方法及びプログラムに関する。
【背景技術】
【0002】
電子鍵盤楽器において撥弦楽器の楽音を再現させる技術が知られている。例えば特許文献1に、グリッサンド奏法やハンマリングオン奏法等の特殊奏法で楽音を発音させることができる電子鍵盤楽器が記載されている。
【0003】
特許文献1に記載の電子鍵盤楽器では、演奏者に奏法を選択させる機能が鍵盤内の一部の鍵(非発音鍵域の鍵)に割り当てられている。演奏者は、非発音鍵域の鍵を操作することにより、楽音を発音させる際の奏法を選択することができる。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2004-264501号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に記載の構成では、非発音鍵域の鍵に対する演奏者の操作に応じて、奏法の種類が選択され、選択された奏法で楽音が発音される。そのため、演奏に適した自然な奏法で楽音を発音させることが難しい。
【0006】
本発明は上記の事情に鑑みてなされたものであり、その目的とするところは、演奏に適した自然な奏法で楽音を発音させることができる情報処理装置、電子楽器、方法及びプログラムを提供することである。
【課題を解決するための手段】
【0007】
本発明の一実施形態に係る情報処理装置は、第1の楽音に対応する第1情報及び、前記第1の楽音よりも後に発音される第2の楽音に対応する第2情報を取得し、前記第1情報及び前記第2情報に応じて、所定の操作終了時からの経過時間に対する特殊奏法の発生確率である第1発生確率と、前記第1の楽音の発音から前記第2の楽音の発音までの経過時間に対する前記特殊奏法の発生確率である第2発生確率と、を取得し、前記第1発生確率及び前記第2発生確率に応じて、前記第2の楽音を、通常奏法と前記特殊奏法とのいずれかで発音させるか決定する、処理を実行する、制御部を備える。
【発明の効果】
【0008】
本発明の一実施形態によれば、演奏に適した自然な奏法で楽音を発音させることができる情報処理装置、電子楽器、方法及びプログラムが提供される。
【図面の簡単な説明】
【0009】
図1】本発明の一実施形態に係る電子楽器の外観を示す図である。
図2】本発明の一実施形態に係る電子楽器の構成を示すブロック図である。
図3】本発明の一実施形態において押鍵操作時に電子楽器のプロセッサにより実行される処理を示すフローチャートである。
図4】本発明の一実施形態において離鍵操作時に電子楽器のプロセッサにより実行される処理を示すフローチャートである。
図5】本発明の一実施形態において楽音が特殊奏法で発音される確率を計算するために用いられる関数を示す図である。
図6】本発明の一実施形態において楽音が特殊奏法で発音される確率を計算するために用いられる関数を示す図である。
図7図3のステップS109のグリッサンド奏法判断処理の詳細を示すサブルーチンである。
図8】本発明の一実施形態において楽音がグリッサンド奏法で発音される確率を計算する際に参照されるテーブルを示す図である。
図9】本発明の一実施形態において楽音がグリッサンド奏法で発音される確率を計算する際に参照されるテーブルを示す図である。
図10図3のステップS111のハンマリングオン奏法判断処理の詳細を示すサブルーチンである。
図11】本発明の一実施形態において楽音がハンマリングオン奏法で発音される確率を計算する際に参照されるテーブルを示す図である。
図12】本発明の一実施形態において楽音がハンマリングオン奏法で発音される確率を計算する際に参照されるテーブルを示す図である。
図13】本発明の一実施形態において楽音がハンマリングオン奏法で発音される確率を計算する際に参照されるテーブルを示す図である。
図14図3のステップS113のプリングオフ奏法判断処理の詳細を示すサブルーチンである。
図15】本発明の一実施形態において楽音がプリングオフ奏法で発音される確率を計算する際に参照されるテーブルを示す図である。
図16】本発明の一実施形態において楽音がプリングオフ奏法で発音される確率を計算する際に参照されるテーブルを示す図である。
図17】本発明の一実施形態において楽音がプリングオフ奏法で発音される確率を計算する際に参照されるテーブルを示す図である。
【発明を実施するための形態】
【0010】
図面を参照して、本発明の一実施形態に係る情報処理装置、電子楽器、コンピュータの一例である情報処理装置により実行される方法及びプログラムについて詳細に説明する。
【0011】
図1は、本発明の一実施形態に係る情報処理装置の一例である電子楽器1の外観を示す図である。図2は、電子楽器1の構成を示すブロック図である。電子楽器1は、例えば電子キーボードである。電子楽器1は、電子キーボード以外の電子鍵盤楽器であってもよい。
【0012】
電子楽器1は、ハードウェア構成として、プロセッサ10、RAM(Random Access Memory)11、フラッシュROM(Read Only Memory)12、回転ボリューム13、A/Dコンバータ14、スイッチパネル15、入出力インタフェース16、鍵盤17、キースキャナ18、LCD(Liquid Crystal Display)19、LCDコントローラ20、シリアルインタフェース21、波形ROM22、音源LSI(Large Scale Integration)23、D/Aコンバータ24、アンプ25及びスピーカ26を備える。電子楽器1の各部は、バス27により接続される。
【0013】
プロセッサ10は、フラッシュROM12に格納されたプログラム及びデータを読み出し、RAM11をワークエリアとして用いることにより、電子楽器1を統括的に制御する。
【0014】
プロセッサ10は、例えばシングルプロセッサ又はマルチプロセッサであり、少なくとも1つのプロセッサを含む。複数のプロセッサを含む構成とした場合、プロセッサ10は、単一の装置としてパッケージ化されたものであってもよく、電子楽器1内で物理的に分離した複数の装置で構成されてもよい。プロセッサ100は、「制御部」と呼ばれてもよい。
【0015】
プロセッサ10は、機能ブロックとして、第1情報取得部100A、第2情報取得部100B、確率決定部100C及び奏法選択部100Dを備える。これらの機能ブロックの動作により、電子楽器1において、演奏に適した自然な奏法で楽音を発音させることができる。
【0016】
RAM11は、データやプログラムを一時的に保持する。RAM11には、フラッシュROM12から読み出されたプログラムやデータ、その他、通信に必要なデータが保持される。
【0017】
フラッシュROM12は、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)等の不揮発性の半導体メモリであり、二次記憶装置又は補助記憶装置としての役割を担う。フラッシュROM12には、プログラム120をはじめとする、プロセッサ10が各種処理を行うために使用するプログラム及びデータが格納されている。
【0018】
本実施形態において、プロセッサ10の各機能ブロックは、ソフトウェアであるプログラム120により実現される。なお、プロセッサ10の各機能ブロックは、一部又は全部が専用の論理回路等のハードウェアにより実現されてもよい。
【0019】
回転ボリューム13は、ボリューム132、134G、134H及び134Pを含む。ボリューム132は、全体の音量を調整するための操作ツマミである。ボリューム134Gは、楽音がグリッサンド奏法で発音される確率を調整するための操作ツマミである。ボリューム134Hは、楽音がハンマリングオン奏法で発音される確率を調整するための操作ツマミである。ボリューム134Pは、楽音がプリングオフ奏法で発音される確率を調整するための操作ツマミである。すなわち、電子楽器1は、演奏者による操作を受け付けて各奏法の発生確率を調整する手段を備える。
【0020】
A/Dコンバータ14は、回転ボリューム13に含まれる各種ボリュームのボリューム位置に対応するアナログ電圧をデジタルデータに変換するデバイスである。演奏者がボリューム132等を操作すると、その操作内容を示す信号がA/Dコンバータ14を介してプロセッサ10に出力される。
【0021】
スイッチパネル15は、電子楽器1の筐体に設けられており、メカニカル方式、静電容量無接点方式、メンブレン方式等のスイッチ、ボタン、ノブ、ロータリエンコーダ、ホイール、タッチパネル等の操作子を含む。演奏者は、スイッチパネル15を操作することにより、例えば音色(ギター、ベース、ピアノ等)を指定することができる。演奏者がスイッチパネル15を操作すると、その操作内容を示す信号が入出力インタフェース16を介してプロセッサ10に出力される。
【0022】
鍵盤17は、複数の演奏操作子として複数の白鍵及び黒鍵を有する鍵盤である。各鍵は、それぞれ異なる音高と対応付けられている。
【0023】
キースキャナ18は、鍵盤17に対する押鍵及び離鍵を監視する。キースキャナ18は、例えば演奏者による押鍵操作を検出すると、押鍵イベント情報をプロセッサ10に出力する。押鍵イベント情報には、押鍵操作に係る鍵の音高の情報(キーナンバ)が含まれる。キーナンバは、鍵番号やMIDIキー、ノートナンバと呼ばれることもある。
【0024】
本実施形態では、鍵の押鍵速度(ベロシティ値)を計測する手段が別途設けられており、この手段により計測されたベロシティ値も押鍵イベント情報に含まれる。例示的には、各鍵について複数の接点スイッチが設けられている。鍵が押される際の各接点スイッチが導通する時間の差により、ベロシティ値が計測される。ベロシティ値は、押鍵操作の強さを示す値ともいえ、また、楽音の大きさ(音量)を示す値ともいえる。
【0025】
LCD19は、LCDコントローラ20により駆動される。プロセッサ10による制御信号に従ってLCDコントローラ20がLCD19を駆動すると、LCD19に、制御信号に応じた画面が表示される。LCD19は、有機EL(Electro Luminescence)、LED(Light Emitting Diode)等の表示装置に置き換えてもよい。LCD19は、タッチパネルであってもよい。
【0026】
シリアルインタフェース21は、プロセッサ10の制御下で、外部のMIDI(Musical Instrument Digital Interface)機器とMIDIデータ(MIDIメッセージ)をシリアル形式で入出力するインタフェースである。
【0027】
波形ROM22は、波形データのセットを音色(ギター、ベース、ピアノ等)毎に記憶する。各音色の波形データのセットは、鍵盤17の各鍵に対応する全てのキーナンバのなかの、一部の(複数の)キーナンバの波形データ(便宜上「波形データ群」と記す。)を含む。本実施形態では、波形データの読み出し速度(言い換えるとピッチ)を変えることにより、波形データ群に含まれないキーナンバの楽音も発音できるようになっている。すなわち、一部のキーナンバしか含まない波形データ群を用いて、鍵盤17の各鍵に対応する全てのキーナンバの楽音を発音できるようになっている。
【0028】
波形ROM22は、更に、各音色に対し、波形データ群を奏法毎に記憶する。奏法は、通常奏法と特殊奏法に大別される。本実施形態では、特殊奏法として、グリッサンド奏法、ハンマリングオン奏法、プリングオフ奏法を想定する。すなわち、波形ROM22は、複数種類(ここでは4つ)の奏法(通常奏法、グリッサンド奏法、ハンマリングオン奏法、プリングオフ奏法)の波形データ群を音色毎に記憶する。
【0029】
なお、ここに挙げた特殊奏法は一例に過ぎない。別の実施形態では、他の特殊奏法を適用してもよい。
【0030】
プロセッサ10は、波形ROM22に記憶された複数の波形データのなかから、対応する波形データの読み出しを音源LSI23に指示する。読み出し対象の波形データは、例えば、演奏者による操作によって選択された音色、押鍵イベント情報及び後述する処理(図3参照)で選択された奏法に応じて決まる。
【0031】
音源LSI23は、プロセッサ10の指示のもと、波形ROM22から読み出した波形データに基づいて楽音を生成する。音源LSI23は、例えば128のジェネレータセクションを備えており、最大で128の楽音を同時に発音することができる。なお、本実施形態では、プロセッサ10と音源LSI23とが別々の装置として構成されるが、別の実施形態では、プロセッサ10と音源LSI23とが1つのプロセッサとして構成されてもよい。
【0032】
音源LSI23により生成された楽音のデジタル音声信号は、D/Aコンバータ24によりアナログ信号に変換された後、アンプ25により増幅されて、スピーカ26に出力される。
【0033】
図3及び図4は、本発明の一実施形態においてプログラム120を実行するプロセッサ10による処理を示すフローチャートである。例えば、演奏者により押鍵操作が行われると、図3に示される処理の実行が開始される。また、例えば、演奏者により離鍵操作が行われると、図4に示される処理の実行が開始される。
【0034】
図3及び図4の処理の実行により、演奏に適した自然な奏法で楽音を発音させることができる。従って、プログラム120を実行可能な、電子楽器1以外の情報処理装置も、本発明の範疇である。電子楽器1以外の情報処理装置としては、例えば、スマートフォン、PC(Personal Computer)、タブレット端末、携帯ゲーム機、フィーチャフォン、PDA(Personal Digital Assistant)等が挙げられる。
【0035】
以下においては、一例として、ギターやベース等の撥弦楽器が音色として設定された場合を想定して説明する。
【0036】
図3に示される処理では、まず、第1情報(後述)及び第2情報(後述)に関する所定のパラメータ(今回の楽音が発音されるまでの経過時間To、Tfであり、詳しくは後述する。)が取得され、これに基づいて、楽音が特殊奏法で発音される可能性があるか否かが判定される。特殊奏法での発音の可能性があると判定されると、所定のパラメータ(楽音の大きさの差、音程差など)に基づいて、楽音がグリッサンド奏法で発音される可能性があるか否かが判定される。グリッサンド奏法での発音の可能性があると判定されると、その発生確率が計算され、計算された発生確率と乱数に基づいて楽音をグリッサンド奏法で発音させるか否かが決定される。この決定の結果、グリッサンド奏法が選択されると、楽音がグリッサンド奏法で発音される。
【0037】
グリッサンド奏法が選択されない場合、所定のパラメータ(楽音の大きさの差、音程差、ハンマリングオン奏法での楽音の連続発音回数など)が取得され、これに基づいて、楽音がハンマリングオン奏法で発音される可能性があるか否かが判定される。ハンマリングオン奏法での発音の可能性があると判定されると、その発生確率が計算され、計算された発生確率と乱数に基づいて楽音をハンマリングオン奏法で発音させるか否かが決定される。この決定の結果、ハンマリングオン奏法が選択されると、楽音がハンマリングオン奏法で発音される。
【0038】
ハンマリングオン奏法が選択されない場合、所定のパラメータ(楽音の大きさの差、音程差、プリングオフ奏法での楽音の連続発音回数など)が取得され、これに基づいて、楽音がプリングオフ奏法で発音される可能性があるか否かが判定される。プリングオフ奏法での発音の可能性があると判定されると、その発生確率が計算され、計算された発生確率と乱数に基づいて楽音をプリングオフ奏法で発音させるか否かが決定される。この決定の結果、プリングオフ奏法が選択されると、楽音がプリングオフ奏法で発音される。
【0039】
上記の何れの特殊奏法も選択されなかった場合、楽音が通常奏法で発音される。
【0040】
このように、プロセッサ10は、所定のパラメータを取得し、取得されたパラメータに基づいて、特殊奏法が選択される確率を決定し、決定された確率に応じて奏法を選択する。附言するに、プロセッサ10は、特殊奏法が選択される確率を決定する確率決定部100Cとして動作する。また、プロセッサ10は、決定された確率に応じて奏法を選択する奏法選択部100Dとして動作する。
【0041】
なお、本実施形態では、グリッサンド奏法、ハンマリングオン奏法、プリングオフ奏法の順に、その発音の可能性が判定されるが、この順序は一例に過ぎない。この順序は適宜変えてもよい。
【0042】
以下の説明では、図3の処理の実行を開始するトリガーとなる押鍵操作に応じた楽音を「第2の楽音」と記し、第2の楽音よりも前に(例えば第2の楽音の1つ前に)演奏された又は発音される楽音を「第1の楽音」と記す。また、本明細書中、第1の楽音を「前回の楽音」と呼ぶこともあり、また、第2の楽音を「今回の楽音」と呼ぶこともある。
【0043】
第1の楽音に関する情報を「第1情報」と記す。第1情報は、例えば、第1の楽音に対応する押鍵イベント情報(キーナンバ、ベロシティ値)、第1の楽音(単音)を発音させた撥弦楽器の弦からの演奏手段(指、ピック等)の接触が解除されてから(すなわち離弦されてから)の経過時間Tf(単位:msec)、第1の楽音(単音)が発音されてからの経過時間To(単位:msec)、発音時の奏法を含む。
【0044】
第2の楽音に関する情報を「第2情報」と記す。第2情報は、例えば、第2の楽音に対応する押鍵イベント情報(キーナンバ、ベロシティ値)を含む。
【0045】
プロセッサ10は、第1情報及び第2情報を、例えばRAM11のワークエリアに保持する。すなわち、プロセッサ10は、第1の楽音に関する第1情報を取得する第1情報取得部100Aとして動作するとともに、第1の楽音よりも後に発音された第2の楽音に関する第2情報を取得する第2情報取得部100Bとして動作する。
【0046】
図3に示される処理において、プロセッサ10は、まず、今回の楽音が単音であるか否かを判定する(ステップS101)。
【0047】
具体的には、ステップS101において、プロセッサ10は、変数Gn(Gnは自然数)がゼロか否かを判定する。変数Gnは、現在発音されている楽音の数を示す。変数Gnがゼロである場合、今回の楽音だけが発音されることになる。そのため、ステップS101において、単音であると判定される。変数Gnがゼロでない場合、2以上の楽音が同時に発音されることになる。そのため、ステップS101において、今回の楽音が和音演奏になると判定される。
【0048】
和音演奏の場合、特殊奏法での発音が生じにくい。また、鍵盤楽器である電子楽器1では、特殊奏法を和音演奏で行うこと(例えば複数の鍵を押しつつ指を平行移動させること)が難しい。そのため、今回の楽音が和音演奏になる場合(ステップS101:NO)、プロセッサ10は、今回の楽音を発音させるときの奏法として通常奏法を選択する(ステップS102)。
【0049】
プロセッサ10は、波形ROM22に記憶された複数の波形データのなかから、今回の楽音の押鍵イベント情報に応じた通常奏法の波形データの読み出しを音源LSI23に指示する。これにより、今回の楽音が通常奏法で発音される。
【0050】
プロセッサ10は、経過時間Toとして大きな値(例えば値10,000)を設定し(ステップS103)、変数Gnに1をインクリメントして(ステップS104)、図3に示される処理を終了する。ここで設定される経過時間Toは、次回の押鍵操作をトリガーとして実行される図3の処理時、第1情報の1つとして取り扱われる。
【0051】
ここで、図4に示される処理について説明する。図4に示される処理は、離鍵操作が行われると、図3に示される処理と並行して実行される。
【0052】
図4に示されるように、プロセッサ10は、離鍵操作に対応する所定のエンベロープを用いて、離鍵された鍵に対応する楽音の消音処理を行う(ステップS201)。
【0053】
プロセッサ10は、変数Gnから1をデクリメントする(ステップS202)。
【0054】
プロセッサ10は、変数Gn(すなわち、現在発音されている楽音の数)がゼロであるか否かを判定する(ステップS203)。変数Gnがゼロである(すなわち離鍵時の楽音が単音であった)場合(ステップS203:YES)、プロセッサ10は、経過時間Tfをゼロにリセットしたうえで、経過時間Tfの計測を開始して(ステップS204)、図4に示される処理を終了する。変数Gnがゼロでない場合(ステップS203:NO)、プロセッサ10は、経過時間Tfの計測を開始することなく、図4に示される処理を終了する。ここで計測が開始された経過時間Tfは、次回の押鍵操作をトリガーとして実行される図3の処理時、第1情報の1つとして取り扱われる。
【0055】
図3に示される処理の説明に戻る。今回の楽音が単音である場合(ステップS101:YES)、プロセッサ10は、ステップS105以降の処理を実行して、第1情報及び第2情報に基づいて、複数種類の奏法のなかから、今回の楽音を発音させるときの奏法を選択する。
【0056】
まず、プロセッサ10は、第1情報の1つである経過時間Tfに基づいて発生確率Paを取得する(ステップS105)。発生確率Paは、今回の楽音が特殊奏法で発音される確率を計算する際に用いられる。
【0057】
図5に、経過時間Tfと発生確率Paとの関係を示す関数を示す。図5に示される関数は、例えばフラッシュROM12に格納されている。図5中、縦軸が発生確率Pa(単位:%)を示し、横軸が経過時間Tf(単位:msec)を示す。上述したように、経過時間Tfは、前回の楽音(単音)を発音させた際の離弦からの経過時間を示す。
【0058】
ステップS105において、プロセッサ10は、図5に示される関数を用いて、現在の経過時間Tf(言い換えると、離弦されてから今回の楽音が発音されるまでの経過時間)に対応する発生確率Paを取得する。
【0059】
前回の楽音の離弦から今回の楽音が発音されるまでの時間間隔が短いほど(例えば速いパッセージを演奏する場合など)、例えば弦振動が収束しておらず発音のエネルギーが残存している状態にあるため、今回の楽音を通常通り(通常奏法で)発音することが物理的に困難になる。そのため、離弦からの経過時間が短いほど、発生確率Paが高い値に設定される。別の観点では、離弦からの経過時間が長いほど、弦振動が収束して発音のエネルギーがなくなるため、撥弦楽器において特殊奏法を行っても十分な音量で特殊奏法による楽音を発音させることが難しくなる。そのため、離弦からの経過時間が長いほど、発生確率Paが低い値に設定される。
【0060】
なお、本実施形態では、撥弦楽器において、離弦直後は、弦振動がほぼ減衰しておらず、発音のエネルギーがほぼ損失なく残存するものとみなす。そのため、図5中、最初の数十msecは、発生確率Paを100%に近い値とする。このように、経過時間Tfが極めて短い場合に発生確率Paを100%に近い値とすることにより、特殊奏法で発音される確率をより自然な確率に近付けることができる。
【0061】
ステップS105にて取得された発生確率Paが0%である場合(ステップS106:YES)、特殊奏法で発音される確率も0%となる。この場合、プロセッサ10は、今回の楽音を発音させるときの奏法として通常奏法を選択する(ステップS115)。
【0062】
ステップS105にて取得された発生確率Paが0%より大きい場合(ステップS106:NO)、プロセッサ10は、第1情報の1つである経過時間Toに基づいて発生確率Pbを取得する(ステップS107)。発生確率Pbも、今回の楽音が特殊奏法で発音される確率を計算する際に用いられる。
【0063】
図6に、経過時間Toと発生確率Pbとの関係を示す関数を示す。図6に示される関数は、例えばフラッシュROM12に格納されている。図6中、縦軸が発生確率Pb(単位:%)を示し、横軸が経過時間To(単位:msec)を示す。上述したように、経過時間Toは、前回の楽音(単音)が発音されてからの経過時間を示す。
【0064】
ステップS107において、プロセッサ10は、図6に示される関数を用いて、現在の経過時間To(言い換えると、前回の単音の楽音が発音されてから今回の楽音が発音されるまでの経過時間)に対応する発生確率Pbを取得する。
【0065】
離弦されていなくても、時間経過とともに弦振動が減衰して前回の楽音の発音のエネルギーも減少する。また、前回の楽音が発音されてから時間が経過するほど、演奏操作に対する余裕が演奏者に生まれるため、弦振動の減衰に拘わらず通常奏法で撥弦される可能性が高くなる。これらを考慮して、経過時間Toが短いほど、発生確率Pbが高い値に設定される。言い換えると、経過時間Toが長いほど、発生確率Pbが低い値に設定される。
【0066】
なお、演奏操作に対する余裕が演奏者にどの程度生まれたかによって、発生確率Pbは大きく変わる。そのため、主に、時間経過に応じた演奏操作の余裕度の変化を考慮して、図6に示される関数が決められている。
【0067】
和音演奏の次に特殊奏法で楽音が発音されるのは稀である。そのため、本実施形態では、経過時間Tf、Toの基点となる前回の楽音を単音としている。
【0068】
ステップS107にて取得された発生確率Pbが0%である場合(ステップS108:YES)、特殊奏法で発音される確率も0%となる。この場合も、プロセッサ10は、今回の楽音を発音させるときの奏法として通常奏法を選択する(ステップS115)。
【0069】
ステップS107にて取得された発生確率Pbが0%より大きい場合(ステップS108:NO)、プロセッサ10は、グリッサンド奏法判断処理を実行する(ステップS109)。
【0070】
図7は、図3のステップS109のグリッサンド奏法判断処理の詳細を示すサブルーチンである。図8は、前回の楽音のベロシティ値と今回の楽音のベロシティ値との差(言い換えると、音量差)(単位:%)と、楽音がグリッサンド奏法で発音される確率Pgv(単位:%)と、を関連付けたテーブルを示す。図9は、前回の楽音と今回の楽音との音程差(単位:フレット又は半音)と、楽音がグリッサンド奏法で発音される確率Pgp(単位:%)と、を関連付けたテーブルを示す。図8及び図9に示されるテーブルは、例えばフラッシュROM12に格納されている。
【0071】
上述したように、RAM11のワークエリアに保持された第1情報、第2情報には、それぞれ、前回の楽音のベロシティ値、今回の楽音のベロシティ値が含まれる。プロセッサ10は、これらのベロシティ値から、前回の楽音と今回の楽音との音量差を計算する(ステップS301)。
【0072】
前回の楽音のベロシティ値と今回の楽音のベロシティ値とが同じ場合、ステップS301にて計算される音量差は、ゼロとなる。今回の楽音のベロシティ値が前回の楽音のベロシティ値よりも高い場合、ステップS301にて計算される音量差は、プラスの値となる。今回の楽音のベロシティ値が前回の楽音のベロシティ値よりも低い場合、ステップS301にて計算される音量差は、マイナスの値となる。例えば、今回の楽音のベロシティ値が前回の楽音のベロシティ値の1.5倍の場合、図8において音量差は+50%で示される。
【0073】
プロセッサ10は、ステップS301にて計算された音量差に関連付けられた確率Pgvを図8に示されるテーブルから取得する(ステップS302)。
【0074】
前回の楽音の大きさに対して今回の楽音の大きさが近いほど(音量の変化が少ないほど)、今回の楽音がグリッサンド奏法で発音される確率が高くなる。附言するに、前回の楽音の発音時の弦振動に応じたエネルギーを利用して今回の楽音がグリッサンド奏法で発音されるという特性上、前回の楽音の大きさに対して今回の楽音の大きさが大きいほど、今回の楽音がグリッサンド奏法で発音される確率が低くなる。また、グリッサンド奏法によって楽音の大きさが前回より大きくなったり極端に小さくなったりすることが起こりにくい。そのため、図8において、音量差がゼロに近いほど、高い値の確率Pgvが関連付けられている。なお、特殊奏法中に連続して発音される楽音のうち、後に発音される楽音ほど音量が小さくなる傾向にある。そのため、図8では、音量差がマイナスとなる場合、音量差がプラスとなる場合と比べて、高い値の確率Pgvが関連付けられている。
【0075】
上述したように、RAM11のワークエリアに保持された第1情報、第2情報には、それぞれ、前回の楽音のキーナンバ、今回の楽音のキーナンバが含まれる。より詳細には、RAM11のワークエリアには、第1情報として、今回の楽音の1つ前に発音された楽音に関する情報だけでなく、複数の楽音(例えば、今回の楽音の2つ前に発音された楽音、今回の楽音の3つ前に発音された楽音など)に関する情報が保持される。
【0076】
プロセッサ10は、前回の楽音のキーナンバと今回の楽音のキーナンバとの差(すなわち音程差)を計算する(ステップS303)。ここでいう「前回の楽音」とは、RAM11のワークエリアに保持された複数の第1情報のそれぞれに対応する複数の第1の楽音のうち、通常奏法で最後に発音された楽音である。便宜上、この楽音を「前回の通常奏法楽音」と記す。
【0077】
前回の通常奏法楽音のキーナンバと今回の楽音のキーナンバとが同じ場合、ステップS303にて計算される音程差(図9中「移動フレット数」)は、ゼロとなる。今回の楽音のキーナンバが前回の通常奏法楽音のキーナンバよりも高い場合、ステップS303にて計算される音程差は、プラスの値となる。今回の楽音のキーナンバが前回の通常奏法楽音のキーナンバよりも低い場合、ステップS303にて計算される音程差は、マイナスの値となる。
【0078】
プロセッサ10は、ステップS303にて計算された音程差に関連付けられた確率Pgpを図9に示されるテーブルから取得する(ステップS304)。
【0079】
グリッサンド奏法には速度的な限界がある。撥弦楽器において、グリッサンド奏法で発音させる最初の楽音のキー(言い換えるとフレット)がその直前の通常奏法時のキー(言い換えるとフレット)から遠いほど、演奏者は、これら2つのフレット間で指等を瞬時に(具体的には、グリッサンド奏法で発音されるほどの速さで)移動させることが難しくなる。そのため、今回の楽音と前回の通常奏法楽音との音程差が大きいほど、今回の楽音がグリッサンド奏法で発音される確率が低くなる。
【0080】
従って、図9において、音程差がゼロに近いほど、高い値の確率Pgpが関連付けられている。但し、音程差がゼロの場合、グリッサンド奏法にはならない。そのため、この場合、確率Pgpはゼロとなり、楽音がグリッサンド奏法で発音される確率もゼロとなる。
【0081】
また、音程差が大きい場合、今回の楽音を発音させる弦が、前回の通常奏法楽音を発音させた弦と異なる可能性が高い。そこで、本実施形態では、音程差が±4半音以上の場合、グリッサンド奏法にならないものとみなす。この場合も、確率Pgpはゼロとなり、楽音がグリッサンド奏法で発音される確率もゼロとなる。
【0082】
プロセッサ10は、グリッサンド奏法の発生確率Rg(単位:%)を計算する(ステップS305)。具体的には、プロセッサ10は、次式により発生確率Rgを計算する。係数Cgは、ボリューム134Gの操作に応じて設定される値であり、例えば0~100の値を取る。
【0083】
Rg=Cg×(Pa×Pb×Pgv×Pgp)×10-6
【0084】
プロセッサ10は、ランダム関数により乱数を発生させる(ステップS306)。乱数は、0又は1の値を取る。より詳細には、ステップS306において、プロセッサ10は、ステップS305にて計算された発生確率Rgで値1が出るように乱数を発生させる。
【0085】
値1が出た場合(ステップS307:YES)、プロセッサ10は、今回の楽音を発音させるときの奏法としてグリッサンド奏法を選択して(ステップS308)、図7に示されるサブルーチンを終了する。グリッサンド奏法が選択されたため(ステップS110:YES)、プロセッサ10は、図3に示されるフローチャートを、ステップS116の処理に進める。
【0086】
また、プロセッサ10は、波形ROM22に記憶された複数の波形データのなかから、今回の楽音の押鍵イベント情報に応じたグリッサンド奏法の波形データの読み出しを音源LSI23に指示する。これにより、今回の楽音がグリッサンド奏法で発音される。
【0087】
値0が出た場合(ステップS307:NO)、プロセッサ10は、今回の楽音を発音させるときの奏法としてグリッサンド奏法を選択することなく、図7に示されるサブルーチンを終了する。グリッサンド奏法が選択されなかったため(ステップS110:NO)、プロセッサ10は、図3に示されるフローチャートを、ステップS111のハンマリングオン奏法判断処理に進める。
【0088】
このように、プロセッサ10は、離弦されてから今回の楽音が発音されるまでの経過時間Tfに基づいて、グリッサンド奏法が選択される確率を決定する。
【0089】
また、プロセッサ10は、前回の単音の楽音が発音されてから今回の楽音が発音されるまでの経過時間Toに基づいて、グリッサンド奏法が選択される確率を決定する。
【0090】
また、プロセッサ10は、経過時間Tf及びToが短いほど、グリッサンド奏法が選択される確率を高い値に決定する。
【0091】
更に、プロセッサ10は、前回の楽音の大きさと今回の楽音の大きさに基づいて、グリッサンド奏法が選択される確率を決定する。より詳細には、プロセッサ10は、ステップS301にて計算された音量差が小さいほど、グリッサンド奏法が選択される確率を高い値に決定する。
【0092】
また、プロセッサ10は、前回の楽音と今回の楽音との音程差に基づいて、グリッサンド奏法が選択される確率を決定する。より詳細には、プロセッサ10は、ステップS303にて計算された音程差が小さいほど、グリッサンド奏法が選択される確率を高い値に決定する。
【0093】
図10は、図3のステップS111のハンマリングオン奏法判断処理の詳細を示すサブルーチンである。図11は、ハンマリングオン奏法での楽音の連続発音回数(前回の楽音が発音された時点での連続回数)と、楽音がハンマリングオン奏法で発音される確率Poc(単位:%)と、を関連付けたテーブルを示す。図12は、前回の楽音のベロシティ値と今回の楽音のベロシティ値との差(言い換えると、音量差)(単位:%)と、楽音がハンマリングオン奏法で発音される確率Pov(単位:%)と、を関連付けたテーブルを示す。図13は、前回の通常奏法楽音と今回の楽音との音程差(単位:フレット又は半音)と、楽音がハンマリングオン奏法で発音される確率Pop(単位:%)と、を関連付けたテーブルを示す。図11図13に示されるテーブルは、例えばフラッシュROM12に格納されている。
【0094】
後述するステップS117の処理において、ハンマリングオン奏法での楽音の連続発音回数がカウントされる。プロセッサ10は、このカウント値を取得する(ステップS401)。
【0095】
プロセッサ10は、ステップS401にて取得された連続発音回数に関連付けられた確率Pocを図11に示されるテーブルから取得する(ステップS402)。
【0096】
撥弦楽器において、楽音をハンマリングオン奏法で発音させる場合、その連続発音回数には、演奏操作する指の本数による制約がある。例えば、人差し指で押弦して通常奏法楽音を発音させた場合を考える。この場合、ハンマリングオン奏法で音程を上げる際、中指、薬指、小指の3本を用いて最大で3回までしか連続で演奏することができない。そのため、この連続発音回数が多いほど、図11に示されるように、今回の楽音がハンマリングオン奏法で発音される確率が低くなる。
【0097】
プロセッサ10は、第1情報に含まれる前回の楽音のベロシティ値及び第2情報に含まれる今回の楽音のベロシティ値から、前回の楽音と今回の楽音との音量差を計算する(ステップS403)。
【0098】
プロセッサ10は、ステップS403にて計算された音量差に関連付けられた確率Povを図12に示されるテーブルから取得する(ステップS404)。なお、本サブルーチンにおいて、図7のステップS301にて計算された音量差を援用してもよい。この場合、ステップS403の処理を省略することができる。
【0099】
前回の楽音の大きさに対して今回の楽音の大きさが近いほど(音量の変化が少ないほど)、今回の楽音がハンマリングオン奏法で発音される確率が高くなる。附言するに、前回の楽音の発音時の弦振動に応じたエネルギーを利用して今回の楽音がハンマリングオン奏法で発音されるという特性上、前回の楽音の大きさに対して今回の楽音の大きさが大きいほど、今回の楽音がハンマリングオン奏法で発音される確率が低くなる。そのため、図12において、音量差がゼロに近いほど、高い値の確率Pgvが関連付けられている。
【0100】
プロセッサ10は、第1情報に含まれる前回の通常奏法楽音のキーナンバ及び第2情報に含まれる今回の楽音のキーナンバから、前回の楽音と今回の楽音との音程差を計算する(ステップS405)。
【0101】
プロセッサ10は、ステップS405にて計算された音程差に関連付けられた確率Popを図13に示されるテーブルから取得する(ステップS406)。なお、本サブルーチンにおいて、図7のステップS303にて計算された音程差を援用してもよい。この場合、ステップS405の処理を省略することができる。
【0102】
撥弦楽器において、楽音をハンマリングオン奏法で発音させる場合、演奏者は、2つのフレットを同時に押さえる必要がある。そのため、2つのフレットを同時に押さえる手の大きさが、ハンマリングオン奏法で達成できる音階の幅の制限につながる。そのため、今回の楽音と前回の通常奏法楽音との音程差が大きいほど、今回の楽音がハンマリングオン奏法で発音される確率が低くなる。
【0103】
従って、図13において、音程差がゼロに近いほど、高い値の確率Popが関連付けられている。但し、音程差がゼロの場合、ハンマリングオン奏法にはならない。そのため、この場合、確率Popはゼロとなり、楽音がハンマリングオン奏法で発音される確率もゼロとなる。
【0104】
プロセッサ10は、ハンマリングオン奏法の発生確率Ro(単位:%)を計算する(ステップS407)。具体的には、プロセッサ10は、次式により発生確率Roを計算する。係数Coは、ボリューム134Hの操作に応じて設定される値であり、例えば0~100の値を取る。
【0105】
Ro=Co×(Pa×Pb×Pov×Pop)×10-6
【0106】
プロセッサ10は、ステップS407にて計算された発生確率Roで値1が出るように乱数を発生させる(ステップS408)。
【0107】
値1が出た場合(ステップS409:YES)、プロセッサ10は、今回の楽音を発音させるときの奏法としてハンマリングオン奏法を選択して(ステップS410)、図10に示されるサブルーチンを終了する。ハンマリングオン奏法が選択されたため(ステップS112:YES)、プロセッサ10は、図3に示されるフローチャートを、ステップS116の処理に進める。
【0108】
また、プロセッサ10は、波形ROM22に記憶された複数の波形データのなかから、今回の楽音の押鍵イベント情報に応じたハンマリングオン奏法の波形データの読み出しを音源LSI23に指示する。これにより、今回の楽音がハンマリングオン奏法で発音される。
【0109】
値0が出た場合(ステップS409:NO)、プロセッサ10は、今回の楽音を発音させるときの奏法としてハンマリングオン奏法を選択することなく、図10に示されるサブルーチンを終了する。ハンマリングオン奏法が選択されなかったため(ステップS112:NO)、プロセッサ10は、図3に示されるフローチャートを、ステップS113のプリングオフ奏法判断処理に進める。
【0110】
このように、プロセッサ10は、離弦されてから今回の楽音が発音されるまでの経過時間Tfに基づいて、ハンマリングオン奏法が選択される確率を決定する。
【0111】
また、プロセッサ10は、前回の単音の楽音が発音されてから今回の楽音が発音されるまでの経過時間Toに基づいて、ハンマリングオン奏法が選択される確率を決定する。
【0112】
また、プロセッサ10は、経過時間Tf及びToが短いほど、ハンマリングオン奏法が選択される確率を高い値に決定する。
【0113】
更に、プロセッサ10は、ハンマリングオン奏法での楽音の連続発音回数を計測し、計測された連続発音回数に基づいて、ハンマリングオン奏法が選択される確率を決定する。
【0114】
また、プロセッサ10は、前回の楽音の大きさと今回の楽音の大きさに基づいて、ハンマリングオン奏法が選択される確率を決定する。より詳細には、プロセッサ10は、ステップS403にて計算された音量差が小さいほど、ハンマリングオン奏法が選択される確率を高い値に決定する。
【0115】
また、プロセッサ10は、前回の楽音と今回の楽音との音程差に基づいて、ハンマリングオン奏法が選択される確率を決定する。より詳細には、プロセッサ10は、前回の楽音に対して今回の楽音のキーナンバ(音高)が高いほど、ハンマリングオン奏法が選択される確率を低い値に決定する。
【0116】
図14は、図3のステップS113のプリングオフ奏法判断処理の詳細を示すサブルーチンである。図15は、プリングオフ奏法での楽音の連続発音回数(前回の楽音が発音された時点での連続回数)と、楽音がプリングオフ奏法で発音される確率Pfc(単位:%)と、を関連付けたテーブルを示す。図16は、前回の楽音のベロシティ値と今回の楽音のベロシティ値との差(言い換えると、音量差)(単位:%)と、楽音がプリングオフ奏法で発音される確率Pfv(単位:%)と、を関連付けたテーブルを示す。図17は、前回の通常奏法楽音と今回の楽音との音程差(単位:フレット又は半音)と、楽音がプリングオフ奏法で発音される確率Pfp(単位:%)と、を関連付けたテーブルを示す。図15図17に示されるテーブルは、例えばフラッシュROM12に格納されている。
【0117】
後述するステップS117の処理において、プリングオフ奏法での楽音の連続発音回数がカウントされる。プロセッサ10は、このカウント値を取得する(ステップS501)。
【0118】
プロセッサ10は、ステップS501にて取得された連続発音回数に関連付けられた確率Pfcを図15に示されるテーブルから取得する(ステップS502)。
【0119】
プリングオフ奏法においてもハンマリングオン奏法と同様に、その連続発音回数には、演奏操作する指の本数による制約がある。例えば、小指で押弦して通常奏法楽音を発音させた場合を考える。この場合、プリングオフ奏法で音程を下げる際、薬指、中指、人差し指の3本を用いて最大で3回までしか連続で演奏することができない。そのため、この連続発音回数が多いほど、図15に示されるように、今回の楽音がプリングオフ奏法で発音される確率が低くなる。
【0120】
プロセッサ10は、第1情報に含まれる前回の楽音のベロシティ値及び第2情報に含まれる今回の楽音のベロシティ値から、前回の楽音と今回の楽音との音量差を計算する(ステップS503)。
【0121】
プロセッサ10は、ステップS503にて計算された音量差に関連付けられた確率Pfvを図16に示されるテーブルから取得する(ステップS504)。なお、本サブルーチンにおいて、図7のステップS301にて計算された音量差を援用してもよい。この場合、ステップS503の処理を省略することができる。
【0122】
前回の楽音の大きさに対して今回の楽音の大きさが近いほど(音量の変化が少ないほど)、ハンマリングオン奏法と同様に、今回の楽音がプリングオフ奏法で発音される確率が高くなる。そのため、図16において、音量差がゼロに近いほど、高い値の確率Pfvが関連付けられている。
【0123】
プロセッサ10は、第1情報に含まれる前回の通常奏法楽音のキーナンバ及び第2情報に含まれる今回の楽音のキーナンバから、前回の楽音と今回の楽音との音程差を計算する(ステップS505)。
【0124】
プロセッサ10は、ステップS505にて計算された音程差に関連付けられた確率Pfpを図17に示されるテーブルから取得する(ステップS506)。なお、本サブルーチンにおいて、図7のステップS303にて計算された音程差を援用してもよい。この場合、ステップS505の処理を省略することができる。
【0125】
ハンマリングオン奏法と同様に、2つのフレットを同時に押さえる手の大きさが、プリングオフ奏法で達成できる音階の幅の制限につながる。そのため、今回の楽音と前回の通常奏法楽音との音程差が大きいほど、今回の楽音がプリングオフ奏法で発音される確率が低くなる。
【0126】
従って、図17において、音程差がゼロに近いほど、高い値の確率Pfpが関連付けられている。但し、音程差がゼロの場合、プリングオフ奏法にはならない。そのため、この場合、確率Pfpはゼロとなり、楽音がプリングオフ奏法で発音される確率もゼロとなる。
【0127】
プロセッサ10は、プリングオフ奏法の発生確率Rf(単位:%)を計算する(ステップS507)。具体的には、プロセッサ10は、次式により発生確率Rfを計算する。係数Cfは、ボリューム134Pの操作に応じて設定される値であり、例えば0~100の値を取る。
【0128】
Rf=Cf×(Pa×Pb×Pfv×Pfp)×10-6
【0129】
プロセッサ10は、ステップS507にて計算された発生確率Rfで値1が出るように乱数を発生させる(ステップS508)。
【0130】
値1が出た場合(ステップS509:YES)、プロセッサ10は、今回の楽音を発音させるときの奏法としてプリングオフ奏法を選択して(ステップS510)、図14に示されるサブルーチンを終了する。プリングオフ奏法が選択されたため(ステップS114:YES)、プロセッサ10は、図3に示されるフローチャートを、ステップS116の処理に進める。
【0131】
また、プロセッサ10は、波形ROM22に記憶された複数の波形データのなかから、今回の楽音の押鍵イベント情報に応じたプリングオフ奏法の波形データの読み出しを音源LSI23に指示する。これにより、今回の楽音がプリングオフ奏法で発音される。
【0132】
値0が出た場合(ステップS509:NO)、プロセッサ10は、今回の楽音を発音させるときの奏法としてプリングオフ奏法を選択することなく、図14に示されるサブルーチンを終了する。この場合、何れの特殊奏法も選択されなかったため(ステップS114:NO)、プロセッサ10は、今回の楽音を発音させるときの奏法として通常奏法を選択して(ステップS115)、ステップS116の処理に進む。
【0133】
このように、プロセッサ10は、離弦されてから今回の楽音が発音されるまでの経過時間Tfに基づいて、プリングオフ奏法が選択される確率を決定する。
【0134】
また、プロセッサ10は、前回の単音の楽音が発音されてから今回の楽音が発音されるまでの経過時間Toに基づいて、プリングオフ奏法が選択される確率を決定する。
【0135】
また、プロセッサ10は、経過時間Tf及びToが短いほど、プリングオフ奏法が選択される確率を高い値に決定する。
【0136】
更に、プロセッサ10は、プリングオフ奏法での楽音の連続発音回数を計測し、計測された連続発音回数に基づいて、プリングオフ奏法が選択される確率を決定する。
【0137】
また、プロセッサ10は、前回の楽音の大きさと今回の楽音の大きさに基づいて、プリングオフ奏法が選択される確率を決定する。より詳細には、プロセッサ10は、ステップS403にて計算された音量差が小さいほど、プリングオフ奏法が選択される確率を高い値に決定する。
【0138】
また、プロセッサ10は、前回の楽音と今回の楽音との音程差に基づいて、プリングオフ奏法が選択される確率を決定する。より詳細には、プロセッサ10は、前回の楽音に対して今回の楽音のキーナンバ(音高)が低いほど、プリングオフ奏法が選択される確率を低い値に決定する。
【0139】
ステップS116において、プロセッサ10は、経過時間Toをゼロにリセットしたうえで、経過時間Toの計測を開始する。
【0140】
プロセッサ10は、カウンタを更新する(ステップS117)。
【0141】
具体的には、図10のステップS410にてハンマリングオン奏法が選択された場合、プロセッサ10は、ハンマリングオン奏法に対応するカウンタのカウント値に1をインクリメントするとともに、プリングオフ奏法に対応するカウンタのカウント値をゼロにリセットする。図14のステップS510にてプリングオフ奏法が選択された場合、プロセッサ10は、プリングオフ奏法に対応するカウンタのカウント値に1をインクリメントするとともに、ハンマリングオン奏法に対応するカウンタのカウント値をゼロにリセットする。なお、グリッサンド奏法又は通常奏法が選択された場合、プロセッサ10は、両方のカウンタのカウント値をゼロにリセットする。
【0142】
プロセッサ10は、変数Gnに1をインクリメントして(ステップS104)、図3に示される処理を終了する。
【0143】
このように、本実施形態では、グリッサンド奏法、ハンマリングオン奏法、プリングオフ奏法等の特殊奏法による楽音が単純にランダムに発音されるわけではない。本実施形態では、各奏法による楽音の発生確率を計算し、計算された発生確率をもとに奏法を選択することにより、実際の演奏に近い頻度で各奏法による楽音を発音させることができる。そのため、本実施形態では、演奏に適した自然な奏法で楽音が発音される。
【0144】
その他、本発明は上述した実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、上述した実施形態で実行される機能は可能な限り適宜組み合わせて実施しても良い。上述した実施形態には種々の段階が含まれており、開示される複数の構成要件による適宜の組み合せにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、効果が得られるのであれば、この構成要件が削除された構成が発明として抽出され得る。
【0145】
上記においては、演奏操作によって生成される演奏データに応じた奏法で楽音を発音する構成を説明したが、例えばシリアルインタフェース21より入力されたMIDIデータ等の音楽データに応じた奏法で楽音を発音する構成も本発明の範疇である。
【0146】
以下、本願の出願当初の特許請求の範囲に記載された発明を付記する。
[付記1]
第1の楽音に関する第1情報を取得し、
前記第1の楽音よりも後に演奏された又は発音される第2の楽音に関する第2情報を取得し、
取得された前記第1情報及び前記第2情報に基づいた確率を取得し、
前記確率に応じて、複数種類の奏法のなかから、前記第2の楽音を発音させるときの奏法を選択する、
処理を実行する、制御部を備える、
情報処理装置。
[付記2]
前記複数種類の奏法は、通常奏法、特殊奏法を含む、
付記1に記載の情報処理装置。
[付記3]
前記確率は、前記特殊奏法が選択される確率であり、
前記制御部は、
前記第1情報及び前記第2情報に関する所定のパラメータに基づいて、前記確率を決定し、
決定された確率に応じて前記奏法を選択する、
付記2に記載の情報処理装置。
[付記4]
前記制御部は、
前記第1情報及び前記第2情報に基づいて前記第1の楽音を発音させた演奏操作子からの演奏手段の接触が解除されてから前記第2の楽音が発音されるまでの時間を前記パラメータとして取得し、
前記時間に基づいて、前記確率を決定する、
付記3に記載の情報処理装置。
[付記5]
前記制御部は、前記第1の楽音が発音されてから前記第2の楽音が発音されるまでの時間を前記パラメータとして取得し、
前記時間に基づいて、前記確率を決定する、
付記3又は付記4に記載の情報処理装置。
[付記6]
前記制御部は、前記時間が短いほど、前記確率を高い値に決定する、
付記4又は付記5に記載の情報処理装置。
[付記7]
前記制御部は、前記第1の楽音の大きさと前記第2の楽音の大きさに基づいて、前記確率を決定する、
付記3から付記6の何れか一項に記載の情報処理装置。
[付記8]
前記制御部は、前記第1の楽音の大きさと前記第2の楽音の大きさとの差を前記パラメータとして取得し、
前記差が小さいほど、前記確率を高い値に決定する、
付記7に記載の情報処理装置。
[付記9]
前記制御部は、前記第1の楽音と前記第2の楽音との音程差を前記パラメータとして取得し、
前記音程差に基づいて、前記確率を決定する、
付記3から付記8の何れか一項に記載の情報処理装置。
[付記10]
前記特殊奏法は、グリッサンド奏法を含み、
前記制御部は、前記音程差が小さいほど、前記グリッサンド奏法が選択される確率を高い値に決定する、
付記9に記載の情報処理装置。
[付記11]
前記特殊奏法は、ハンマリングオン奏法を含み、
前記制御部は、前記第1の楽音に対して前記第2の楽音の音高が高いほど、前記ハンマリングオン奏法が選択される確率を低い値に決定する、
付記9又は付記10に記載の情報処理装置。
[付記12]
前記特殊奏法は、ハンマリングオン奏法を含み、
前記制御部は、
前記ハンマリングオン奏法での楽音の連続発音回数を計測し、
前記計測された連続発音回数に基づいて、前記確率を決定する、
付記9から付記11の何れか一項に記載の情報処理装置。
[付記13]
前記特殊奏法は、プリングオフ奏法を含み、
前記制御部は、前記第1の楽音に対して前記第2の楽音の音高が低いほど、前記プリングオフ奏法が選択される確率を低い値に決定する、
付記9から付記12の何れか一項に記載の情報処理装置。
[付記14]
前記特殊奏法は、プリングオフ奏法を含み、
前記制御部は、
前記プリングオフ奏法での楽音の連続発音回数を計測し、
前記計測された連続発音回数に基づいて、前記確率を決定する、
付記9から付記13の何れか一項に記載の情報処理装置。
[付記15]
前記制御部は、
前記第2の楽音が単音か否かを判定し、
前記第2の楽音が単音である場合に、前記第1情報及び前記第2情報に基づいて、前記複数種類の奏法のなかから、前記第2の楽音を発音させるときの奏法を選択する、
付記1から付記14の何れか一項に記載の情報処理装置。
[付記16]
第1の楽音に関する第1情報を取得し、
前記第1の楽音よりも後に演奏された又は発音される第2の楽音に関する第2情報を取得し、
取得された前記第1情報及び前記第2情報に基づいた確率を取得し、
前記確率に応じて、複数種類の奏法のなかから、前記第2の楽音を発音させるときの奏法を選択する、
処理を、コンピュータに実行させる、
方法。
[付記17]
第1の楽音に関する第1情報を取得し、
前記第1の楽音よりも後に演奏された又は発音される第2の楽音に関する第2情報を取得し、
取得された前記第1情報及び前記第2情報に基づいた確率を取得し、
前記確率に応じて、複数種類の奏法のなかから、前記第2の楽音を発音させるときの奏法を選択する、
処理を、コンピュータに実行させる、
プログラム。
【符号の説明】
【0147】
1 :電子楽器
10 :プロセッサ
11 :RAM
12 :フラッシュROM
13 :回転ボリューム
14 :A/Dコンバータ
15 :スイッチパネル
16 :入出力インタフェース
17 :鍵盤
18 :キースキャナ
19 :LCD
20 :LCDコントローラ
21 :シリアルインタフェース
22 :波形ROM
23 :音源LSI
24 :D/Aコンバータ
25 :アンプ
26 :スピーカ
27 :バス
100 :プロセッサ
100A :第1情報取得部
100B :第2情報取得部
100C :確率決定部
100D :奏法選択部
120 :プログラム
132 :ボリューム
134G :ボリューム
134H :ボリューム
134P :ボリューム
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17