米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 楽器;音響 -> カシオ計算機株式会社

発明の名称 楽音制御装置および楽音制御処理のプログラム
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開2007−164016(P2007−164016A)
公開日 平成19年6月28日(2007.6.28)
出願番号 特願2005−362774(P2005−362774)
出願日 平成17年12月16日(2005.12.16)
代理人 【識別番号】100090619
【弁理士】
【氏名又は名称】長南 満輝男
発明者 佐藤 博毅
要約 課題
音楽の流れや統一性が失われることなくキースケーリングの制御を行うことができるようにする。

解決手段
CPU1は、キースキャナ6を介して鍵盤9の演奏によって入力されたキーナンバをRAM4のイベントリングバッファに記憶して、その入力されたキーナンバに対する発音のパラメータを設定し、イベントリングバッファに記憶されている過去の複数のキーナンバを選択し、入力された今回の演奏によるキーナンバに対して、設定した発音のパラメータを選択した過去の複数の演奏されたキーナンバの履歴情報に基づいて変更するようなキースケーリングの演算処理を行う。
特許請求の範囲
【請求項1】
入力された音高を含む演奏データを記憶する記憶手段と、
入力された演奏データに対する発音のパラメータを設定する設定手段と、
前記記憶手段に記憶されている過去の複数の演奏データを選択する選択手段と、
入力された今回の演奏データに対して前記設定手段によって設定されている発音のパラメータを前記選択手段によって選択された複数の演奏データの音高の履歴情報に基づいて変更するための演算処理を行う演算手段と、
を備えた楽音制御装置。
【請求項2】
前記演算手段は、前記選択手段によって選択された複数の演奏データの音高の平均値と基準値との差分に基づいて今回の演奏データに対する発音のパラメータを変更することを特徴とする請求項1に記載の楽音制御装置。
【請求項3】
前記演算手段は、前記選択手段によって選択された複数の演奏データの音高の平均値と今回の演奏データの音高との差分に基づいて今回の演奏データに対する発音のパラメータを変更することを特徴とする請求項1に記載の楽音制御装置。
【請求項4】
前記選択手段は、前記記憶手段に記憶されている過去の演奏データのうち前回の演奏データ以前の所定数の演奏データを選択することを特徴とする請求項1ないし3のいずれか1項に記載の楽音制御装置。
【請求項5】
前記選択手段は、前記記憶手段に記憶されている過去の演奏音高データのうち前回の演奏データ以前の一定時間内の演奏データを選択することを特徴とする請求項1ないし3のいずれか1項に記載の楽音制御装置。
【請求項6】
前記演算手段は、カットオフ周波数のパラメータを変更することを特徴とする請求項1に記載の楽音制御装置。
【請求項7】
前記演算手段は、フィルタレゾナンス特性のパラメータを変更することを特徴とする請求項1に記載の楽音制御装置。
【請求項8】
前記演算手段は、音高、音量、又は音色のエンベロープ特性のパラメータを変更することを特徴とする請求項1に記載の楽音制御装置。
【請求項9】
前記演算手段は、効果音付加処理のパラメータを変更することを特徴とする請求項1に記載の楽音制御装置。
【請求項10】
前記演算手段は、発振手段、増幅手段、又はフィルタ手段に入力する低周波発振特性のパラメータを変更することを特徴とする請求項9に記載の楽音制御装置。
【請求項11】
入力された音高を含む演奏データを記憶手段に記憶するステップAと、
入力された演奏データに対する発音のパラメータを設定するステップBと、
前記記憶手段に記憶されている過去の複数の演奏データを選択するステップCと、
入力された今回の演奏データに対して前記ステップBによって設定されている発音のパラメータを前記ステップCによって選択された複数の演奏データの音高の履歴情報に基づいて変更するための演算処理を行うステップDと、
をコンピュータに実行させる楽音制御処理のプログラム。
【請求項12】
前記ステップDは、前記ステップCによって選択された複数の演奏データの音高の平均値と基準値との差分に基づいて今回の演奏データに対する発音のパラメータを変更することを特徴とする請求項11に記載の楽音制御処理のプログラム。
【請求項13】
前記ステップDは、前記ステップCによって選択された複数の演奏データの音高の平均値と今回の演奏データの音高との差分に基づいて今回の演奏データに対する発音のパラメータを変更することを特徴とする請求項11に記載の楽音制御処理のプログラム。
【請求項14】
前記ステップCは、前記記憶手段に記憶されている過去の演奏データのうち前回の演奏データ以前の所定数の演奏データを選択することを特徴とする請求項11ないし13のうちいずれか1項に記載の楽音制御処理のプログラム。
【請求項15】
前記ステップCは、前記記憶手段に記憶されている過去の演奏音高データのうち前回の演奏データ以前の一定時間内の演奏データを選択することを特徴とする請求項11ないし13のうちいずれか1項に記載の楽音制御処理のプログラム。
【請求項16】
前記ステップDは、カットオフ周波数のパラメータを変更することを特徴とする請求項11に記載の楽音制御処理のプログラム。
【請求項17】
前記ステップDは、フィルタレゾナンス特性のパラメータを変更することを特徴とする請求項11に記載の楽音制御処理のプログラム。
【請求項18】
前記ステップDは、音高、音量、又は音色のエンベロープ特性のパラメータを変更することを特徴とする請求項11に記載の楽音制御処理のプログラム。
【請求項19】
前記ステップDは、効果音付加処理のパラメータを変更することを特徴とする請求項11に記載の楽音制御処理のプログラム。
【請求項20】
前記ステップDは、発振手段、増幅手段、又はフィルタ手段に入力する低周波発振特性のパラメータを変更することを特徴とする請求項19に記載の楽音制御処理のプログラム。
発明の詳細な説明
【技術分野】
【0001】
本発明は、楽音制御装置および楽音制御処理のプログラムに関し、特に、入力された演奏データの発音のパラメータを制御する楽音制御装置および楽音制御処理のプログラムに関するものである。
【背景技術】
【0002】
電子鍵盤楽器における演奏データの発音のパラメータを制御する方法としてキースケーリングがある。キースケーリングにおいては、キーナンバに応じて音色変化を得るために、演奏するキー(鍵)ごとにパラメータ値の増減を制御する。
例えば、ある特許文献における電子楽器のキースケーリングデータ表示装置では、いずれかの鍵に対応した少なくとも2つのポイントを指定して、そのポイントごとにキースケーリングデータを入力する入力手段と、入力手段により入力されたポイント毎のキースケーリングデータおよびそのポイント間を結ぶキースケーリングデータをグラフィック表示し得るデータ表示手段とを有し、直線によって結ばれたポイント間のキースケーリングデータを補間する構成になっている。(特許文献1参照)
また、別の特許文献におけるキースケーリング装置では、可変のキーナンバを入力する演奏入力手段と、演奏入力手段から入力されたキーナンバに対応する楽音を形成する音源手段とを備える電子楽器で用いられるキースケーリング装置において、少なくとも3つの異なるキーナンバを指定し、指定された各キーナンバにおけるキースケーリングデータを指定する基準データ入力手段と、基準データ入力手段により指定されたデータに基づいて演奏入力手段から入力されたキーナンバにおけるキースケーリングデータを演算する補間手段と、補間手段により演算されたキースケーリングデータに従って音源手段を調整する楽音調整手段と、を有する構成になっている。この場合において、補間手段は、直線補間又は非直線補間を実行する。(特許文献2参照)
また、別の特許文献における電子鍵盤楽器のキースケーリング装置では、キースケーリング指示手段と、所望の鍵位置の補間用の基準値の入力手段と、入力基準値の鍵割当手段と、割り当てられた鍵の位置の前後の所定範囲の補間方法選択手段と、選択される各補間方法のプログラムを記憶する補間方法テーブルと、選択された補間方法で所定区間の補間処理用の演算を行い各鍵への重み付けの割り当てを行う演算手段と、演算結果を展開するキースケーリングエディットバッファと、キースケーリングが終了するとキースケーリングエディットバッファに展開されたデータの確定処理を指示するライトリクエスト手段と、展開されたデータを記憶するキースケーリングバッファと、で構成されている。(特許文献3参照)
【0003】
【特許文献1】実開平1−173796号公報
【特許文献2】特開昭64−77095号公報
【特許文献3】特開平9−90943号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、キースケーリング機能は、あくまで演奏された鍵(キーナンバ)ごとの音色特性を調整するものであるので、エフェクタやLFO(低周波発振)などの音色に共通の特性を制御するのには適していない。例えば、前回演奏した鍵から離れた鍵をつぎに演奏したときに、その鍵の音色特性が前回の鍵の音色特定から大きく変化すると、音楽の流れや統一性が失われるおそれがある。
本発明は、このような従来の課題を解決するためのものであり、音楽の流れや統一性が失われることなくキースケーリングの制御を行うことを目的とする。
【課題を解決するための手段】
【0005】
請求項1に記載の楽音制御装置は、入力された音高を含む演奏データ(実施形態においては、キーナンバに相当する)を記憶する記憶手段(実施形態においては、図4のイベントリングバッファに相当する)と、入力された演奏データに対する発音のパラメータを設定する設定手段(実施形態においては、図1のCPU1に相当する)と、記憶手段に記憶されている過去の複数の演奏データを選択する選択手段(実施形態においては、図1のCPU1に相当する)と、入力された今回の演奏データに対して設定手段によって設定されている発音のパラメータを選択手段によって選択された複数の演奏データの音高の履歴情報に基づいて変更するための演算処理を行う演算手段(実施形態においては、図1のCPU1に相当する)と、を備えた構成になっている。
【0006】
請求項1の楽音制御装置において、請求項2に記載したように、演算手段は、選択手段によって選択された複数の演奏データの音高の平均値と基準値との差分に基づいて今回の演奏データに対する発音のパラメータを変更するような構成にしてもよい。
請求項1の楽音制御装置において、請求項3に記載したように、演算手段は、選択手段によって選択された複数の演奏データの音高の平均値と今回の演奏データの音高との差分に基づいて今回の演奏データに対する発音のパラメータを変更するような構成にしてもよい。
請求項1ないし3の楽音制御装置において、請求項4に記載したように、選択手段は、記憶手段に記憶されている過去の演奏データのうち前回の演奏データ以前の所定数の演奏データを選択するような構成にしてもよい。
請求項1ないし3の楽音制御装置において、請求項5に記載したように、選択手段は、記憶手段に記憶されている過去の演奏音高データのうち前回の演奏データ以前の一定時間内の演奏データを選択するような構成にしてもよい。
請求項1の楽音制御装置において、請求項6に記載したように、演算手段は、カットオフ周波数のパラメータを変更するような構成にしてもよい。
請求項1の楽音制御装置において、請求項7に記載したように、演算手段は、フィルタレゾナンス特性のパラメータを変更するような構成にしてもよい。
請求項1の楽音制御装置において、請求項8に記載したように、演算手段は、音高、音量、又は音色のエンベロープ特性のパラメータを変更するような構成にしてもよい。
請求項1の楽音制御装置において、請求項9に記載したように、演算手段は、効果音付加処理のパラメータを変更するような構成にしてもよい。
請求項9の楽音制御装置において、請求項10に記載したように、演算手段は、発振手段、増幅手段、又はフィルタ手段に入力する低周波発振特性のパラメータを変更するような構成にしてもよい。
【0007】
請求項11に記載の楽音制御処理のプログラムは、入力された音高を含む演奏データ(実施形態においては、キートナンバに相当する)を記憶手段(実施形態においては、図4のイベントリングバッファに相当する)に記憶するステップAと、入力された演奏データに対する発音のパラメータを設定するステップBと、記憶手段に記憶されている過去の複数の演奏データを選択するステップCと、入力された今回の演奏データに対してステップBによって設定されている発音のパラメータをステップCによって選択された複数の演奏データの音高の履歴情報に基づいて変更するための演算処理を行うステップDと、をコンピュータに実行させる。
ステップAないしステップDは、実施形態においては、図1のCPU1によって実行される処理に相当する。
【0008】
請求項11の演奏制御処理のプログラムにおいて、請求項12に記載したように、ステップDは、ステップCによって選択された複数の演奏データの音高の平均値と基準値との差分に基づいて今回の演奏データに対する発音のパラメータを変更するような構成にしてもよい。
請求項11の演奏制御処理のプログラムにおいて、請求項13に記載したように、ステップDは、ステップCによって選択された複数の演奏データの音高の平均値と今回の演奏データの音高との差分に基づいて今回の演奏データに対する発音のパラメータを変更するような構成にしてもよい。
請求項11ないし13の演奏制御処理のプログラムにおいて、請求項14に記載したように、ステップCは、記憶手段に記憶されている過去の演奏データのうち前回の演奏データ以前の所定数の演奏データを選択するような構成にしてもよい。
請求項11ないし13の演奏制御処理のプログラムにおいて、請求項15に記載したように、ステップCは、記憶手段に記憶されている過去の演奏音高データのうち前回の演奏データ以前の一定時間内の演奏データを選択するような構成にしてもよい。
請求項11の演奏制御処理のプログラムにおいて、請求項16に記載したように、ステップDは、カットオフ周波数のパラメータを変更するような構成にしてもよい。
請求項11の演奏制御処理のプログラムにおいて、請求項17に記載したように、ステップDは、フィルタレゾナンス特性のパラメータを変更するような構成にしてもよい。
請求項11の演奏制御処理のプログラムにおいて、請求項18に記載したように、ステップDは、音高、音量、又は音色のエンベロープ特性のパラメータを変更するような構成にしてもよい。
請求項11の演奏制御処理のプログラムにおいて、請求項19に記載したように、ステップDは、効果音付加処理のパラメータを変更するような構成にしてもよい。
請求項19の演奏制御処理のプログラムにおいて、請求項20に記載したように、ステップDは、発振手段、増幅手段、又はフィルタ手段に入力する低周波発振特性のパラメータを変更するような構成にしてもよい。
【発明の効果】
【0009】
本発明の楽音制御装置および楽音制御処理のプログラムによれば、音楽の流れや統一性が失われることなくキースケーリングの制御を行うことができるという効果が得られる。
【発明を実施するための最良の形態】
【0010】
以下、本発明の楽音制御装置におけるキースケーリングの実施の形態について、電子鍵盤楽器を例に採って、図面を参照しながら詳細に説明する。この実施形態においては、演奏すなわちイベントに応じてパラメータのモジュレーション(変調)値を発生するが、その発生方法として、4つの変調モードMode[0]ないしMode[3]があり、操作に応じていずれかのモードが選択される。
【0011】
図1は、実施の形態における電子鍵盤楽器のシステム構成図である。図1において、CPU1は、システムバス2を介して、ROM3、RAM4、スイッチ部5、キースキャナ6、音源LSI7、エフェクトLSI8に接続され、これら各部との間でデータやコマンドの授受を行ってこの電子鍵盤楽器を制御する。なお、図には示していないが、CPU1にはタイマが設けられている。キースキャナ6には鍵盤9が接続され、演奏に応じて各鍵のオン(押鍵)およびオフ(離鍵)の状態がキースキャナ6によって検出され、そのイベントデータがCPU1に入力される。音源LSI7には波形ROM10が接続され、音色に対応する波形データが記憶されている。エフェクトLSI8にはD/A変換回路11が接続され、デジタルの楽音信号をアナログに変換する。D/A変換回路11には出力回路12が接続され、楽音信号の増幅処理を行ってスピーカ(図示せず)に出力する。
【0012】
ROM3は、CPU1によって実行される楽音制御処理のプログラムおよび初期データを記憶している。RAM4は、CPU1のワークエリアであり、楽音制御処理のパラメータを記憶するエリアや入力されたイベントデータを順に記憶するイベントリングバッファを有する他、各種のデータや変数を記憶するレジスタ、ポインタ、フラグなどを有する。スイッチ部5は、パラメータ名選択スイッチ、パラメータ種選択スイッチ、数値データを入力するテンキーなどのスイッチ群で構成されている。音源LSI7は、CPU1からの発音コマンドおよびイベントデータに応じて、波形ROM10の波形データを読み出して楽音信号を生成する。エフェクトLSI8は、音源LSI7から入力される楽音信号に対して、CPU1から入力されるパラメータに応じたエフェクト処理を施して、D/A変換回路11に入力する。
【0013】
図2は、RAM4にストアされるキースケーリングのパラメータの変数を示す図である。変数kには、今回の演奏されたキーナンバ(鍵番号)がストアされる。変数Kには、キーナンバの基準値がストアされて設定される。変数Xには、観測すべき過去の演奏の発音イベント数が固定値としてストアされて設定される。変数Tには、観測すべき過去の演奏の時間がストアされて設定される。
【0014】
図3は、RAM4にストアされるキースケーリングの各パラメータにおけるパラメータ種の値を示す図である。この実施形態におけるパラメータ名は、インデックス[0],[1],[2],[3]によって特定され、フィルタカットオフ周波数、フィルタレゾナンス、エフェクトパラメータ1、およびエフェクトパラメータ2の4個のパラメータがある。それぞれのパラメータ種には、最小値、最大値、設定値、変調モード、変調深さ変数名、および変更後の値の変数名がある。
【0015】
図4は、RAM4におけるイベントリングバッファの構成を示している。イベントが発生するたびに、指定された書き込みポインタにイベントの発生した時刻とキーナンバを書き込む。図4に示すように、このイベントリングバッファは「0x00」から「0xFF」までの256個の書き込みエリアがあり、−127〜+127のモジュレーション値をストアすることができる。256個の書き込みエリアの全てにモジュレーション値が書き込まれた後に、新たにイベントが発生したときは、最も古いモジュレーション値に最新のモジュレーション値を上書きする。
【0016】
図5は、図1のCPU1によって実行されるメインルーチンのフローチャートである。所定のイニシャライズ(ステップSA1)の後、タイマをスタートさせる(ステップSA2)。そして、各スイッチのオン/オフを検出するスイッチ処理(ステップSA3)、キースキャナ6を介して鍵盤9の各鍵のオン/オフを検出する鍵盤処理(ステップSA4)、鍵盤9の演奏に応じたキースケーリングのパラメータ変調処理(ステップSA5)、およびその他の処理(ステップSA6)を繰り返し実行する。
【0017】
図6は、図5のメインルーチンにおけるステップSA3のスイッチ処理のフローチャートである。このスイッチ処理においては、パラメータ名選択スイッチ処理(ステップSB1)、パラメータ種選択スイッチ処理(ステップSB2)、データ入力スイッチ処理(ステップSB3)、およびその他のスイッチ処理(ステップSB4)を実行する。
図7は、パラメータ名選択スイッチ処理のフローチャートである。いずれかのパラメータ名スイッチがオンされたか否かを判別し(ステップSC1)、オンされたときは、オンにより選択されたパラメータ名をレジスタmにセットする(ステップSC2)。
図8は、パラメータ種選択スイッチ処理のフローチャートである。いずれかのパラメータ種スイッチがオンされたか否かを判別し(ステップSD1)、オンされたときは、オンにより選択されたパラメータ種をレジスタnにセットする(ステップSD2)。
図9は、データ入力スイッチ処理のフローチャートである。テンキーによって数値が入力されたか否かを判別し(ステップSE1)、数値データが入力されたときは、その入力数値をパラメータ名mとパラメータ種nによって特定される図3のエリアであるパラメータ(m)(n)に書き込む(ステップSE2)。
【0018】
図10は、図5のメインルーチンにおけるステップSA4の鍵盤処理のフローチャートである。鍵変化があるか否かを判別し(ステップSF1)、鍵変化がない場合にはメインルーチンに戻るが、オフからオンに鍵変化があったとき、すなわち押鍵がされたときは、その鍵番号に対応するノートオンイベントを作成して(ステップSF2)、そのノートオンイベントを音源LSI7に送付する(ステップSF3)。次に、ノートすなわち音高の値を図2の変数kにストアする(ステップSF4)。そして、タイマカウントの時刻をレジスタtimeにストアする(ステップSF5)。ステップSF1において、オンからオフに鍵変化があったとき、すなわち離鍵がされたときは、その鍵番号に対応するノートオフイベントを作成して(ステップSF6)、そのノートオフイベントを音源LSI7に送付する(ステップSF7)。
【0019】
図11は、図5のメインルーチンにおけるステップSA5のパラメータの変調処理のフローチャートである。レジスタkおよびレジスタtimeのキーナンバおよび時刻が新たに取得されたか否かを判別し(ステップSG1)、新たに取得されない場合にはメインルーチンに戻るが、キーナンバおよび時刻が新たに取得されたとき、すなわち、押鍵の演奏によるイベントが発生したときは、現時刻からT時間前のイベントのデータ数xを求める(ステップSG2)。すなわち、図4のイベントリングバッファから過去のT時間のデータxを検索して図2のレジスタxにストアする。次に、各変調モードに対応するモジュレーション値の演算処理であるm[0]演算処理(ステップSG3)、m[1]演算処理(ステップSG4)、m[2]演算処理(ステップSG5)、m[3]演算処理(ステップSG6)を実行する。
【0020】
次に、ポインタnの値を0にセットして(ステップSG7)、nの値をインクリメントしながら、ステップSG8ないしステップSG11のループ処理を実行する。すなわち、MVal[n]の計算を行い(ステップSG8)、音源エフェクタLSI8に送付する(ステップSG9)。そして、nの値をインクリメントして(ステップSG10)、nの値が3を超えたか否かを判別する(ステップSG11)。nの値が3以下である場合には、ステップSG8に移行してループ処理を繰り返す。nの値が3を超えたときは、レジスタkおよびレジスタtimeのキーナンバおよび時刻を図4のイベントリングバッファ内の指定された書き込みポイントに格納する(ステップSG12)。そして、図5のメインルーチンに戻る。
【0021】
図12は、図11のステップSG3のモード0におけるm[0]演算処理のフローチャートである。まず、発音イベント数を示すポインタaおよびキーナンバを示すレジスタKNを共に0にセットする(ステップSH1)。次に、イベントリングバッファから最新のデータのキーナンバを読み出し(ステップSH2)、ステップSH3からステップSH7までのループ処理を実行する。ループ処理においては、キーナンバの値とKNの値とを加算して所定のデータ数Xで除算した平均値を新たなKNの値として更新する(ステップSH3)。次に、aの値をインクリメントして(ステップSH4)、aの値がXの値を超えたか否かを判別する(ステップSH5)。aの値がXの値以下の場合には、次に新しいデータをイベントリングバッファから読み出し(ステップSH6)、そのキーナンバを読み出し(ステップSH7)、ステップSH3に移行してループ処理を繰り返す。ステップSH5において、aの値がXの値を超えたときは、最新のキーナンバであるKNの値から基準のキーナンバであるKの値を減算して、m[0]に代入する(ステップSH8)。
【0022】
図12のフローチャートは、下記の演算式m[0]によって表される。


この演算式において、Xは観測すべき過去の演奏の発音イベント数、Kは基準のキーナンバ、KeyNumber[n]は過去の一定時間T内に発生したノートオンイベントのうちn番目のキーナンバである。
【0023】
図12のフローチャートおよび上記の演算式m[0]によって表されるように、発音イベントの発生時に、過去に演奏された所定数Xの押鍵のキーナンバの平均値を求め、その平均値と基準のキーナンバとの差分をモジュレーション値として、音量、音色、音高、エフェクトなどのパラメータを変調する。
【0024】
図13は、図11のステップSG4のモード1におけるm[1]演算処理のフローチャートである。まず、発音イベント数を示すポインタaおよびキーナンバを示すレジスタKNを共に0にセットする(ステップSJ1)。次に、イベントリングバッファから最新のデータのキーナンバを読み出し(ステップSJ2)、ステップSJ3からステップSJ7までのループ処理を実行する。ループ処理においては、キーナンバの値とKNの値とを加算して所定のデータ数Xで除算した平均値を新たなKNの値として更新する(ステップSJ3)。次に、aの値をインクリメントして(ステップSJ4)、aの値がXの値を超えたか否かを判別する(ステップSJ5)。aの値がXの値以下の場合には、次に新しいデータをイベントリングバッファから読み出し(ステップSJ6)、そのキーナンバを読み出し(ステップSJ7)、ステップSJ3に移行してループ処理を繰り返す。ステップSJ5において、aの値がXの値を超えたときは、最新のキーナンバであるKNの値から今回演奏されたキーナンバであるkの値を減算して、m[1]に代入する(ステップSJ8)。
【0025】
図13のフローチャートは、下記の演算式m[1]によって表される。


この演算式において、Xは観測すべき過去の演奏の発音イベント数、kは今回演奏されたキーナンバ、KeyNumber[n]は過去の一定時間T内に発生したノートオンイベントのうちn番目のキーナンバである。
【0026】
図13のフローチャートおよび上記の演算式m[1]によって表されるように、発音イベントの発生時に、過去に演奏された所定数Xの押鍵のキーナンバの平均値を求め、その平均値と今回演奏されたキーナンバとの差分をモジュレーション値として、音量、音色、音高、エフェクトなどのパラメータを変調する。
【0027】
図14は、図11のステップSG5のモード2におけるm[2]演算処理のフローチャートである。まず、発音イベント数を示すポインタaおよびキーナンバを示すレジスタKNを共に0にセットする(ステップSK1)。次に、イベントリングバッファから最新のデータのキーナンバを読み出し(ステップSK2)、ステップSK3からステップSK7までのループ処理を実行する。ループ処理においては、キーナンバの値とKNの値とを加算して過去の一定時間T内に発生したノートオンイベントの数xで除算した平均値を新たなKNの値として更新する(ステップSK3)。次に、aの値をインクリメントして(ステップSK4)、aの値がxの値を超えたか否かを判別する(ステップSK5)。aの値がxの値以下の場合には、次に新しいデータをイベントリングバッファから読み出し(ステップSK6)、そのキーナンバを読み出し(ステップSK7)、ステップSK3に移行してループ処理を繰り返す。ステップSK5において、aの値がxの値を超えたときは、最新のキーナンバであるKNの値から基準のキーナンバであるKの値を減算して、m[2]に代入する(ステップSK8)。
【0028】
図14のフローチャートは、下記の演算式m[2]によって表される。


この演算式において、xは過去の一定時間T内に発生した発音イベント数、Kは基準のキーナンバ、KeyNumber[n]は過去の一定時間T内に発生したノートオンイベントのうちn番目のキーナンバである。
【0029】
図14のフローチャートおよび上記の演算式m[2]によって表されるように、発音イベントの発生時に、過去の一定時間T内に発生したノートオンイベントのキーナンバの平均値を求め、その平均値と基準のキーナンバとの差分をモジュレーション値として、音量、音色、音高、エフェクトなどのパラメータを変調する。
【0030】
図15は、図11のステップSG6のモード3におけるm[3]演算処理のフローチャートである。まず、発音イベント数を示すポインタaおよびキーナンバを示すレジスタKNを共に0にセットする(ステップSL1)。次に、イベントリングバッファから最新のデータのキーナンバを読み出し(ステップSL2)、ステップSL3からステップSL7までのループ処理を実行する。ループ処理においては、キーナンバの値とKNの値とを加算して過去の一定時間T内に発生したデータ数xで除算した平均値を新たなKNの値として更新する(ステップSL3)。次に、aの値をインクリメントして(ステップSL4)、aの値がxの値を超えたか否かを判別する(ステップSL5)。aの値がxの値以下の場合には、次に新しいデータをイベントリングバッファから読み出し(ステップSL6)、そのキーナンバを読み出し(ステップSL7)、ステップSL3に移行してループ処理を繰り返す。ステップSL5において、aの値がxの値を超えたときは、最新のキーナンバであるKNの値から今回演奏されたキーナンバであるkの値を減算して、m[3]に代入する(ステップSL8)。
【0031】
図15のフローチャートは、下記の演算式m[3]によって表される。


この演算式において、xは過去の一定時間T内に発生したデータ数、kは今回演奏されたキーナンバ、KeyNumber[n]は過去の一定時間T内に発生したノートオンイベントのうちn番目のキーナンバである。
【0032】
図15のフローチャートおよび上記の演算式m[3]によって表されるように、発音イベントの発生時に、過去に演奏された所定数Xの押鍵のキーナンバの平均値を求め、その平均値と基準のキーナンバとの差分をモジュレーション値として、音量、音色、音高、エフェクトなどのパラメータを変調する。
【0033】
この実施形態におけるモジュレーション動作は、各パラメータごとにモジュレーションを選択し、モード[0]ないしモード[3]で求められたモジュレーション値であるm[Mode[n]]によって、図3の各パラメータの設定値をモディファイすることで実行される。例えば、n番目のパラメータCVal[n]の設定値が、モジュレーション値m[Mode[n]]によって、最終的な値であるMVal[n]に変更される状態は、下記の演算式によって表される。


【0034】
以上のように、この実施形態によれば、CPU1は、キースキャナ6を介して鍵盤9の演奏によって入力されたキーナンバをRAM4のイベントリングバッファに記憶して、その入力されたキーナンバに対する発音のパラメータを設定し、イベントリングバッファに記憶されている過去の複数のキーナンバを選択し、入力された今回の演奏によるキーナンバに対して、設定した発音のパラメータを選択した過去の複数の演奏されたキーナンバの履歴情報に基づいて変更するようなキースケーリングの演算処理を行う。
したがって、音楽の流れや統一性が失われることなくキースケーリングの制御を行うことができる。
【0035】
この場合において、CPU1は、モード[0]およびモード[2]のように、選択した過去の複数の演奏されたキーナンバの平均値と基準のキーナンバKとの差分に基づいて今回の演奏データに対する発音のパラメータを変更する。
あるいは、CPU1は、モード[1]およびモード[3]のように、選択した過去の複数の演奏されたキーナンバの平均値と今回の演奏されたキーナンバkとの差分に基づいて今回のキーナンバに対する発音のパラメータを変更する。
【0036】
さらに、CPU1は、モード[0]およびモード[1]の場合には、RAM4のイベントリングバッファに記憶されている過去の演奏されたキーナンバのうち、前回の演奏されたキーナンバ以前の所定数Xの演奏されたキーナンバを選択する。
あるいは、CPU1は、モード[2]およびモード[3]の場合には、RAM4のイベントリングバッファに記憶されている過去の演奏されたキーナンバのうち、前回の演奏データ以前の一定時間T内のキーナンバを選択する。
【0037】
CPU1は、図3のインデックス[0],[1],[2],[3]によって指定されたパラメータを下記のように変更する。
インデックス[0]の場合には、CPU1は、カットオフ周波数のパラメータを変更する。
インデックス[1]の場合には、CPU1は、フィルタレゾナンス特性のパラメータを変更する。
インデックス[2]の場合には、CPU1は、音高、音量、又は音色のエンベロープ特性のパラメータを変更する。
インデックス[3]の場合には、CPU1は、効果音付加処理のパラメータを変更する。例えば、DCO(デジタル制御発振回路)、DCA(デジタル制御増幅回路)、又はDCF(デジタル制御フィルタ回路)に入力する0.1〜30Hzの三角波、矩形波、鋸歯状波などの低周波発振特性のパラメータであるLFOを変更する。LFOの出力を制御信号としてDCOに入力した場合にはビブラートの効果音が付加される。LFOの出力を制御信号としてDCAに入力した場合にはトレモロの効果音が付加される。LFOの出力を制御信号としてDCFに入力した場合にはワウの効果音が付加される。
【0038】
上記実施形態において、鍵盤9の演奏における押鍵の強さであるベロシティ値に応じて、キースケーリングの演算処理の際に重み付けを行う構成にしてもよい。図4のイベントリングバッファにベロシティ値をストアして、例えば、ベロシティ値を強、中、および弱の3段階に分類する。そして、押鍵のキーナンバの平均値を求める際に、ベロシティ値が強の場合にはそのキーナンバを3回カウントし、ベロシティ値が中の場合にはそのキーナンバを2回カウントし、ベロシティ値が弱の場合にはそのキーナンバを1回カウントするような構成にしてもよい。
したがってこの場合には、演奏者が強く押鍵するほどその演奏のパラメータの履歴情報が後の演奏のパラメータにより強く反映されるので、音楽の流れや統一性が失われることなくキースケーリングの制御を行うとともに、演奏者の意志もキースケーリングの制御に反映することができる。
【0039】
なお、上記実施形態においては、ROM3にあらかじめ記憶されている楽音制御処理のプログラムをCPU1が実行する装置の発明について説明したが、フレキシブルディスク(FD)、CD、メモリカードなどの外部記憶媒体に記憶された楽音制御処理のプログラム、又は、インターネットなどのネットワークからダウンロードした楽音制御処理のプログラムをRAM4あるいは別途設けたフラッシュROMなどの不揮発性メモリにインストールして、CPU1がそのプログラムを実行する構成も可能である。この場合には、プログラムの発明および記憶媒体の発明を実現できる。
【0040】
すなわち、本発明の楽音制御処理のプログラムは、
入力された音高を含む演奏データを記憶手段に記憶するステップAと、入力された演奏データに対する発音のパラメータを設定するステップBと、前記記憶手段に記憶されている過去の複数の演奏データを選択するステップCと、入力された今回の演奏データに対して前記ステップBによって設定されている発音のパラメータを前記ステップCによって選択された複数の演奏データの音高の履歴情報に基づいて変更するための演算処理を行うステップDと、をコンピュータに実行させる。
【0041】
前記ステップDは、前記ステップCによって選択された複数の演奏データの音高の平均値と基準値との差分に基づいて今回の演奏データに対する発音のパラメータを変更する。
前記ステップDは、前記ステップCによって選択された複数の演奏データの音高の平均値と今回の演奏データの音高との差分に基づいて今回の演奏データに対する発音のパラメータを変更する。
前記ステップCは、前記記憶手段に記憶されている過去の演奏データのうち前回の演奏データ以前の所定数の演奏データを選択する。
前記ステップCは、前記記憶手段に記憶されている過去の演奏音高データのうち前回の演奏データ以前の一定時間内の演奏データを選択する。
前記ステップDは、カットオフ周波数のパラメータを変更することを特徴とする。
前記ステップDは、フィルタレゾナンス特性のパラメータを変更する。
前記ステップDは、音高、音量、又は音色のエンベロープ特性のパラメータを変更する。
前記ステップDは、効果音付加処理のパラメータを変更することを特徴とする。
前記ステップDは、発振手段、増幅手段、又はフィルタ手段に入力する低周波発振特性のパラメータを変更する。
【図面の簡単な説明】
【0042】
【図1】本発明の楽音制御装置を適用した実施形態における電子鍵盤楽器のシステム構成を示すブロック図。
【図2】図1のRAMにストアされるキースケーリングのパラメータの変数を示す図。
【図3】図1のRAMにストアされる各パラメータのパラメータ種ごとの値をストアするエリアを示す図。
【図4】図1のRAMにおけるイベントリングバッファの構成を示す図。
【図5】CPUのメインルーチンのフローチャート。
【図6】図4のメインルーチンにおけるスイッチ処理のフローチャート。
【図7】図5のスイッチ処理におけるパラメータ名選択スイッチ処理のフローチャート。
【図8】図5のスイッチ処理におけるパラメータ種選択スイッチ処理のフローチャート。
【図9】図5のスイッチ処理におけるデータ入力スイッチ処理のフローチャート。
【図10】図4のメインルーチンにおける鍵盤処理のフローチャート。
【図11】図4のメインルーチンにおけるパラメータの変調処理のフローチャート。
【図12】図11のパラメータの変調処理におけるm[0]演算処理のフローチャート。
【図13】図11のパラメータの変調処理におけるm[1]演算処理のフローチャート。
【図14】図11のパラメータの変調処理におけるm[2]演算処理のフローチャート。
【図15】図11のパラメータの変調処理におけるm[3]演算処理のフローチャート。
【符号の説明】
【0043】
1 CPU
3 ROM
4 RAM
5 スイッチ部
6 キースキャナ
7 音源LSI
8 エフェクトLSI
9 鍵盤
10 波形ROM
11 D/A変換回路
12 出力回路




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013