米国特許情報 | 欧州特許情報 | 国際公開(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−57725(P2007−57725A)
公開日 平成19年3月8日(2007.3.8)
出願番号 特願2005−241933(P2005−241933)
出願日 平成17年8月24日(2005.8.24)
代理人 【識別番号】100090619
【弁理士】
【氏名又は名称】長南 満輝男
発明者 佐藤 博毅
要約 課題
基準位置を中心とする所定範囲が不感帯になっているピッチベンド操作子を備えた電子鍵盤楽器などにおいて、フローティングタイプトレモロの演奏を可能にする。

解決手段
CPU1は、音高を連続的に変化させるピッチベンド操作子7の位置を基準位置からの変位量として検出して、ボリューム8の抵抗値として出力し、その変位量が基準位置から所定の範囲内の不感帯である場合には変位量を無効とし、その変化量が所定の範囲を超えた場合には変位量を有効にする絶対的変位値を生成するとともに、ピッチベンド操作子7の変位量の変化率を検出して、その変化率に基づいて相対的変位値を生成し、絶対的変位値と相対的変位値とを合成してピッチベンドデータを音源LSI10に供給する。
特許請求の範囲
【請求項1】
音高を連続的に変化させるピッチベンド操作子の位置を基準位置からの変位量として検出して変位信号を出力する変位検出手段と、
前記変位検出手段によって出力された変位信号の示す変位量が前記基準位置から所定の範囲内である場合には変位信号を無効とし、当該変化量が当該所定の範囲を超えた場合には変位信号を有効とする第1の制御信号を生成する第1の信号生成手段と、
前記変位検出手段によって検出された変位量の変化率を検出する変化率検出手段と、
前記変化率検出手段によって検出された変化率に基づいて第2の制御信号を生成する第2の信号生成手段と、
第1の制御信号および第2の制御信号からピッチベンド制御信号を合成する信号合成手段と、
を備えた楽音制御装置。
【請求項2】
前記第2の信号生成手段は、前記変位検出手段によって出力された変位信号の示す変位量に基づく係数と前記変化率検出手段によって検出された変化率とを乗算して第2の制御信号を生成する乗算手段を有することを特徴とする請求項1に記載の楽音制御装置。
【請求項3】
前記第2の信号生成手段は、前記変化率検出手段によって検出された変化率に対してローパスフィルタ処理を施すフィルタ手段をさらに有することを特徴とする請求項1に記載の楽音制御装置。
【請求項4】
前記第2の信号生成手段は、前記変化率検出手段によって検出された変化率に対して遅延処理を施す遅延手段をさらに有することを特徴とする請求項1又は3に記載の楽音制御装置。
【請求項5】
前記第2の信号生成手段は、前記変化率検出手段によって検出された変化率のエンベロープ値を算出するエンベロープ算出手段と、当該エンベロープ算出手段によって算出されたエンベロープ値と前記変位検出手段によって出力された変位信号の示す変位量とを乗算する第1の乗算手段と、前記変位検出手段によって出力された変位信号の示す変位量に基づく係数と前記第1の乗算手段によって乗算された値とを乗算して第2の制御信号を生成する第2の乗算手段を有することを特徴とする請求項1に記載の楽音制御装置。
【請求項6】
音高を連続的に変化させるピッチベンド操作子の位置を基準位置からの変位量として検出して変位信号を出力するステップAと、
前記ステップAによって出力された変位信号の示す変位量が前記基準位置から所定の範囲内である場合には変位信号を無効とし、当該変化量が当該所定の範囲を超えた場合には変位信号を有効とする第1の制御信号を生成するステップBと、
前記ステップAによって検出された変位量の変化率を検出するステップCと、
前記ステップCによって検出された変化率に基づいて第2の制御信号を生成するステップDと、
前記ステップBによって生成された第1の制御信号および前記ステップDによって生成された第2の制御信号からピッチベンド制御信号を合成するステップEと、
をコンピュータに実行させる楽音制御処理のプログラム。
【請求項7】
前記ステップDは、前記ステップAによって出力された変位信号の示す変位量に基づく係数と前記ステップCによって検出された変化率とを乗算して第2の制御信号を生成することを特徴とする請求項6に記載の楽音制御処理のプログラム。
【請求項8】
前記ステップDは、前記ステップCによって検出された変化率に対してローパスフィルタ処理を施すことを特徴とする請求項6に記載の楽音制御処理のプログラム。
【請求項9】
前記ステップDは、前記ステップCによって検出された変化率に対して遅延処理を施すことを特徴とする請求項6又は8に記載の楽音制御処理のプログラム。
【請求項10】
前記ステップDは、前記ステップCによって検出された変化率のエンベロープ値を算出して、当該エンベロープ値と前記ステップAによって出力された変位信号の示す変位量とを乗算し、当該乗算結果と前記ステップAによって出力された変位信号の示す変位量に基づく係数とを乗算して第2の制御信号を生成することを特徴とする請求項6に記載の楽音制御処理のプログラム。
発明の詳細な説明
【技術分野】
【0001】
本発明は、楽音制御装置および楽音制御処理のプログラムに関し、特に、音高を連続的に変化させるピッチベンド操作を楽音に反映させる楽音制御装置および楽音制御処理のプログラムに関するものである。
【背景技術】
【0002】
電子鍵盤楽器などの鍵盤を有する演奏装置の中には、ギターなどの弦楽器におけるチョーキング演奏やトレモロアーム演奏によるフレーズを模倣して、発生する楽音の音高を連続的に変化させるピッチベンド効果を持たせたものがある。このピッチベンド効果のために、鍵盤の左側にホイール型又はレバー型のピッチベンド操作子が設けられている。演奏者は、右手で鍵盤を演奏しながら左手でピッチベンド操作子を操作することにより、発生する楽音の音高を変化させてチョーキング演奏やトレモロアーム演奏を行うことができる。このようなピッチベンド操作子は、基準位置(ニュートラル位置)からの変位量に応じて音高を変化させる構造になっている。この場合に、わずかな振動などで誤動作が起きないように、基準位置を中心とする所定範囲を不感帯に設定して、ピッチベンド操作子の出力を無効にするような構成になっている。
【0003】
ある特許文献の電子楽器の制御装置においては、操作子(ピッチベンド操作子)の予め定められた中心位置データとイニシャライズ時における操作子の自動復帰位置に対応する検出値との差が、所定範囲外である場合には、中心位置データに対応する操作子の位置を中心とする所定範囲を不感帯に設定する。(特許文献1参照)
【特許文献1】実公平3−6957号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
音高を低い方向にのみ変化させるトレモロアームに対して、音高を変化させるギターのトレモロアームは、弦の張力とスプリングの弾性とが釣り合った状態を基準位置とする構造で、フローティングタイプトレモロと呼ばれている。フローティングタイプトレモロにおいては、わずかな操作を加えただけでも弦の張力とスプリングの弾性との釣り合いが崩れて弦の振動に影響を与えるので、極めて微妙な音高の揺れを表現することができる。しかしながら、上記特許文献1を含む従来の技術においては、トレモロアームの代用としてのピッチベンド操作子の基準位置を中心とする所定範囲が不感帯になっているので、基準位置を中心としてピッチベンド操作子を振動させる操作を行っても、フローティングタイプトレモロの演奏ができないという課題があった。
本発明は、このような従来の課題を解決するためのものであり、基準位置を中心とする所定範囲が不感帯になっているピッチベンド操作子を備えた電子鍵盤楽器などにおいて、フローティングタイプトレモロの演奏を可能にすることを目的とする。
【課題を解決するための手段】
【0005】
請求項1に記載の楽音制御装置は、音高を連続的に変化させるピッチベンド操作子の位置を基準位置からの変位量として検出して変位信号(実施形態においては、図1のボリューム8の抵抗値p1に相当する)を出力する変位検出手段(実施形態においては、図1のA/D変換回路5およびCPU1に相当する)と、変位検出手段によって出力された変位信号の示す変位量が基準位置から所定の範囲(実施形態においては、不感帯に相当する)内である場合には変位信号を無効とし、当該変化量が当該所定の範囲を超えた場合には変位信号を有効とする第1の制御信号(実施形態においては、図4および図14の絶対的変位値p2に相当する)を生成する第1の信号生成手段(実施形態においては、図1のCPU1の機能としての図4および図14の変位量変換101に相当する)と、変位検出手段によって検出された変位量の変化率を検出する変化率検出手段(実施形態においては、図1のCPU1の機能としての図4および図14のHPF102に相当する)と、変化率検出手段によって検出された変化率に基づいて第2の制御信号(実施形態においては、図4および図14の相対的変位値p5に相当する)を生成する第2の信号生成手段(実施形態においては、図1のCPU1の機能に相当する)と、第1の制御信号および第2の制御信号からピッチベンド制御信号(実施形態においては、図4および図14のピッチベンドデータp6に相当する)を合成する信号合成手段(実施形態においては、図1のCPU1の機能としての図4および図14の加算子107に相当する)と、を備えた構成になっている。
【0006】
請求項1の楽音制御装置において、請求項2に記載したように、第2の信号生成手段は、変位検出手段によって出力された変位信号の示す変位量に基づく係数(実施形態においては、図1のCPU1の機能としての図4および図14の比率算出105の出力に相当する)と変化率検出手段によって検出された変化率とを乗算して第2の制御信号を生成する乗算手段(実施形態においては、図1のCPU1の機能としての図4および図14の乗算子106に相当する)を有する構成にしてもよい。
【0007】
請求項1の楽音制御装置において、請求項3に記載したように、第2の信号生成手段は、変化率検出手段によって検出された変化率に対してローパスフィルタ処理を施すフィルタ手段(実施形態においては、図1のCPU1の機能としての図4のLPF103に相当する)をさらに有する構成にしてもよい。
【0008】
請求項1又は3の楽音制御装置において、請求項4に記載したように、第2の信号生成手段は、変化率検出手段によって検出された変化率に対して遅延処理を施す遅延手段(実施形態においては、図1のCPU1の機能としての図4の遅延104に相当する)をさらに有する構成にしてもよい。
【0009】
請求項1の楽音制御装置において、請求項5に記載したように、第2の信号生成手段は、変化率検出手段によって検出された変化率のエンベロープ値を算出するエンベロープ算出手段(実施形態においては、図1のCPU1の機能としての図14のABS108およびLPF103に相当する)と、当該エンベロープ算出手段によって算出されたエンベロープ値と変位検出手段によって出力された変位信号の示す変位量とを乗算する第1の乗算手段(実施形態においては、図1のCPU1の機能としての図14の乗算子109に相当する)と、変位検出手段によって出力された変位信号の示す変位量に基づく係数と第1の乗算手段によって乗算された値とを乗算して第2の制御信号を生成する第2の乗算手段(実施形態においては、図1のCPU1の機能としての図14の乗算子106に相当する)を有する構成にしてもよい。
【0010】
請求項6に記載の楽音制御処理のプログラムは、音高を連続的に変化させるピッチベンド操作子の位置を基準位置からの変位量として検出して変位信号(実施形態においては、図1のボリューム8の抵抗値に相当する)を出力するステップAと、ステップAによって出力された変位信号の示す変位量が基準位置から所定の範囲(実施形態においては、不感帯に相当する)内である場合には変位信号を無効とし、当該変化量が当該所定の範囲を超えた場合には変位信号を有効とする第1の制御信号(実施形態においては、図4および図14の絶対的変位値p2に相当する)を生成するステップBと、ステップAによって検出された変位量の変化率を検出するステップCと、ステップCによって検出された変化率に基づいて第2の制御信号(実施形態においては、図4および図14の相対的変位値p5に相当する)を生成するステップDと、ステップBによって生成された第1の制御信号およびステップDによって生成された第2の制御信号からピッチベンド制御信号(実施形態においては、図4および図14のピッチベンドデータp6に相当する)を合成するステップEと、をコンピュータに実行させる。
ステップAないしステップDは、実施形態においては、図1のCPU1によって実行される処理に相当する。
【0011】
請求項6の楽音制御処理のプログラムにおいて、請求項7に記載したように、ステップDは、ステップAによって出力された変位信号の示す変位量に基づく係数とステップCによって検出された変化率とを乗算して第2の制御信号を生成する構成にしてもよい。
【0012】
請求項6の楽音制御処理のプログラムにおいて、請求項8に記載したように、ステップDは、ステップCによって検出された変化率に対してローパスフィルタ処理を施す構成にしてもよい。
【0013】
請求項6又は8の楽音制御処理のプログラムにおいて、請求項9に記載したように、ステップDは、ステップCによって検出された変化率に対して遅延処理を施す構成にしてもよい。
【0014】
請求項6の楽音制御処理のプログラムにおいて、請求項10に記載したように、ステップDは、ステップCによって検出された変化率のエンベロープ値を算出して、当該エンベロープ値とステップAによって出力された変位信号の示す変位量とを乗算し、当該乗算結果とステップAによって出力された変位信号の示す変位量に基づく係数とを乗算して第2の制御信号を生成する構成にしてもよい。
【発明の効果】
【0015】
本発明の楽音制御装置および楽音制御処理のプログラムによれば、基準位置を中心とする所定範囲が不感帯になっているピッチベンド操作子を備えた電子鍵盤楽器などにおいて、フローティングタイプトレモロの演奏を可能にするという効果が得られる。
【発明を実施するための最良の形態】
【0016】
以下、本発明による楽音制御装置の第1実施形態および第2実施形態について、電子鍵盤楽器を例に採って、図1ないし図16を参照して説明する。
図1は、各実施形態における電子鍵盤楽器の構成を示すブロック図である。図1において、CPU1は、システムバスを介して、ROM2、RAM3、キースキャナ4、A/D変換回路5、スイッチ9などに接続され、これら各部との間でコマンドおよびデータを授受して、この電子鍵盤楽器を全体的に制御する。
【0017】
ROM2は、CPU1によって実行される楽音制御処理のプログラムおよび初期データをあらかじめ格納している。RAM3は、CPU1のワークエリアであり、後述するように、各種のレジスタ、入力バッファ、出力バッファを有する。キースキャナ4は、鍵盤6の押鍵状態および離鍵状態を検出してCPU1に入力する。A/D変換回路5は、ピッチベンド操作子7の操作に連動するボリューム8の抵抗値の変化をアナログからデジタルに変換してCPU1に入力する。スイッチ9は、電源スイッチ、フローティングタイプトレモロスイッチ、遅延時間設定スイッチ、および、音色設定スイッチなどのその他のスイッチで構成され、そのオン操作およびオフ操作を検出してCPU1に入力する。
【0018】
また、CPU1の入出力ポートには音源LSI10が接続されている。音源LSI10は、CPU1から出力される発音指示および音高データ、ベロシティデータ、音色データ、ピッチベンドデータなどの演奏情報に応じて、発音パラメータを生成するための演算処理を行い、波形ROM11から波形データを読み出して楽音信号を発生して、D/A変換回路12に出力する。D/A変換回路12は、音源LSI10で発生された楽音信号をデジタルからアナログに変換して出力回路13に供給する。出力回路13は、フィルタ回路や増幅回路などを有するサウンドシステムであり、D/A変換回路12から供給される楽音信号に対してフィルタ処理や増幅処理を施してスピーカ(図示せず)から発音させる。
【0019】
図2は、図1のピッチベンド操作子7およびボリューム8の構造を示す図である。図2(1)において、ピッチベンド操作子7は、ボリューム8の回転軸8aに固定されている。したがって、ピッチベンド操作子7の回転に連動してボリューム8も回転する。ボリューム8の回転に応じて、その端子8bにおける抵抗値が変化する。上記したように、この抵抗値の変化はA/D変換回路5を介してCPU1に入力される。図2(2)において、ピッチベンド操作子7は、操作されないニュートラル状態においては、スプリング7aによって基準位置に静止している。すなわち、スプリング7aの弾性に抗して手で操作してピッチベンド操作子7を回転させた後に、ピッチベンド操作子7から手を離したときは、ピッチベンド操作子7はスプリング7aの弾性の復元力によって自動的に基準位置に戻る。
【0020】
ピッチベンド操作子7が基準位置に戻る際には、ピッチベンド操作子7の慣性モーメントとスプリング7aの弾性によって振動が発生する。また、ピッチベンド操作子7を上限(プラス100%)又は下限(マイナス100%)まで回転した際も、ストッパ機構(図示せず)によって回転が停止されたときは振動が発生する。このような振動の影響を吸収するために、不感帯が設定されている。図3は、ピッチベンド操作子7の不感帯を示す図である。ピッチベンド操作子7の回転に比例してボリューム8の抵抗値VRは図の点線で示すように変化するが、基準位置(中央位置)、上限、および下限において、図の実線で示すように、抵抗値の変化を無効にする不感帯が設定されている。
【0021】
次に、第1実施形態における電子鍵盤楽器の機能および動作について、図4ないし図13を参照して説明する。
図4は、第1実施形態における電子鍵盤楽器の機能を示すブロック図である。この機能はCPU1によって実行されるが、専用のハードウェアであるDSP(デジタル・シグナル・プロセッサ)によっても実現される。図4に基づいて、第1実施形態の動作を概略的に説明する。
変位量変換101は、A/D変換回路5から入力されたピッチベンド操作子7の変位量を示すボリューム8の抵抗値p1を、ROM2の変換テーブルに従って、図3に示した不感帯の特性をもつ絶対的変位値p2に変換する。HPF102は抵抗値p1を微分してピッチベンド操作子7の変位量の変化率p3を出力する。変化率p3は抵抗値p1と比べて、直流成分が除去されるとともに、微小な変動がより強調された波形の特徴を有する。LPF103はHPF102から出力された変化率p3の高域成分を除去して滑らかな波形に整形して出力する。遅延104はLPF103から出力された変化率に対してピッチベンド操作子7の操作による振動を適切な時間遅らせて実際のピッチ振動に反映させるために遅延処理を施して出力する。
比率算出105は抵抗値p1に応じた比率を生成する。図5は、点線で示すボリューム8の抵抗値と実線で示す比率との関係を示す図である。中央の不感帯付近ほど比率が大きくなっている。乗算子106は遅延104から出力された変化率と比率算出105から出力された比率とを乗算し、相対的変位値p5を出力する。加算子107は変位量変換101から出力された絶対的変位値p2と乗算子106から出力された相対的変位値p5とを合成して、最終的なピッチベンドデータp6を音源LSI10に出力する。
【0022】
次に、第1実施形態の電子鍵盤楽器の詳細な動作について、RAM3の構成、CPU1のフローチャート、および信号波形に基づいて説明する。
図6は、RAM3の各種のレジスタやバッファの構成を示す図である。FTTは、フローティングタイプトレモロ実行フラグであり、0は不実行を表し、1は実行を表す。DELAYは遅延時間をストアするレジスタである。VRは現在のボリューム8の抵抗値をストアするレジスタである。VRPは前処理(前回)のボリューム8の抵抗値をストアするレジスタである。BDAは絶対的変位値をストアするレジスタである。BI[0]〜BI[BISIZE−1]は入力バッファ(リングバッファ)である。BO[0]〜BO[BOSIZE−1]は出力バッファ(リングバッファ)である。IRは入力バッファBIの読出エリアを指定する入力バッファ読出インデックスである。IWは入力バッファBIの書込エリアを指定する入力バッファ書込インデックスである。ORは出力バッファBOの読出エリアを指定する出力バッファ読出インデックスである。OWは出力バッファBOの書込エリアを指定する出力バッファ書込インデックスである。
【0023】
図7は、CPU1のメインルーチンのフローチャートである。所定の初期処理(ステップSA1)の後、スイッチ処理(ステップSA2)、鍵盤処理(ステップSA3)、その他の処理(ステップSA4)を繰り返し実行する。初期処理においては、FTTを0にリセットし、DELAYの遅延時間を典型的なフローティングタイプトレモロの演奏におけるトレモロアームの振動周期に対応した時間に設定する。
【0024】
図8は、メインルーチンにおけるステップSA2のスイッチ処理のフローチャートである。フローティングタイプトレモロスイッチがオンされたか否かを判別し(ステップSB1)、このスイッチがオンされたときは、フラグFTTの値を反転する(ステップSB2)。そして、FTTが1であるか又は0であるかを判別する(ステップSB3)。FTTが1である場合には、入力バッファBI[0〜(BISIZE−1)]、出力バッファBO[0〜(BOSIZE−1)]をクリアし、入力バッファ読出インデックスIRを0にセットし、入力バッファ書込インデックスIWを0にセットし、出力バッファ読出インデックスORを0にセットし、VRPに現在の抵抗値VRをストアする(ステップSB4)。次に、出力バッファBOにおいて、出力バッファ書込インデックスOWの位置を、DELAYの遅延時間に対応する間隔だけ、ORの位置よりも先の位置に設定する(ステップSB5)。これにより出力バッファのエリアBO[OW]に書き込まれたデータは、DELAYの遅延時間が経過したタイミングで読み出されることになる。
【0025】
ステップSB1においてフローティングタイプトレモロスイッチがオンでない場合には、遅延時間設定スイッチがオンされたか否かを判別し(ステップSB6)、このスイッチがオンされて遅延時間が変更されたときは、その遅延時間をDELAYにストアする(ステップSB7)。遅延時間の変更によって、例えば、ピッチベンド操作子7に対して一定の周期での振動操作を行う場合に、その振動開始後に数周期の間隔をおいて、ピッチベンド操作子7の振動と実際のピッチ振動を同位相で同期させたり、あるいは逆位相で同期させたりすることが可能になる。遅延時間をストアした後は、ステップSB5に移行して、出力バッファ書込インデックスOWの位置をDELAYの遅延時間に対応する間隔だけ、ORの位置よりも先の位置に設定する。
ステップSB6において遅延時間設定スイッチがオンでない場合には、他のスイッチ処理を行う(ステップSB8)。
ステップSB3においてFTTが0である場合、すなわち、フローティングタイプトレモロの演奏を停止した場合、若しくは、ステップSB5において出力バッファ書込インデックスOWの位置を設定した後、又は、ステップSB8において他のスイッチ処理を行った後は、図7のメインルーチンに戻る。
【0026】
図9は、メインルーチンにおけるステップSA3の鍵盤処理のフローチャートである。キースキャナ4によって鍵盤6の押鍵・離鍵状態を判別し(ステップSC1)、押鍵があったときは、押鍵対応のノートオンデータおよび発音コマンドを作成して音源LSI10に送信する(ステップSC2)。離鍵があったときは、離鍵対応のノートオフデータおよび消音コマンドを作成して音源LSI10に送信する(ステップSC3)。音源LSI10にコマンドを送信した後、又は、押鍵も離鍵もされない場合には、図7のメインルーチンに戻る。
【0027】
図10は、メインルーチンを中断して定期的に実行されるタイマ処理であるベンダホイール入力処理のフローチャートである。レジスタVRにボリューム8の抵抗値p1をストアし(ステップSD1)、変位量変換101によって、図3の関係を表したROM2の変換テーブルATBL[ ]を用いて、VRの抵抗値に対応するATBL[VR]を指定することにより、不感帯が設定された絶対的変位値p2をレジスタBDAにストアする(ステップSD2)。次に、フラグFTTが0であるか又は1であるかを判別する(ステップSD3)。FTTが0である場合にはメインルーチンに戻るが、FTTが1(トレモロ演奏実行)である場合には、現在のVRの抵抗値から前回のVRPの抵抗値を減算した値、すなわち、ピッチベンド操作子7の変位量を示すボリューム8の抵抗値の変化をレジスタaにセットする(ステップSD4)。
【0028】
次に、変数nに初期値0をセットし(ステップSD5)、nの値をインクリメントしながら、ベンダホイール入力処理の1間隔内で実行されるベンドデータ出力処理(後述)の回数(IOR回)分のデータ書き込みを実行する。すなわち、aの値を実行回数IORで除算した値を、入力バッファBIの入力バッファ書込インデックスIWで指定するエリアBI[IW]に書き込み、IWを更新し、nの値をインクリメントする(ステップSD6)。そして、インクリメントしたnの値がIORに達したか否かを判別する(ステップSD7)。nの値がIORに達しない場合には、ステップSD6の処理を繰り返す。nの値がIORに達したときは、そのときのVRの抵抗値をVRPにストアして更新する(ステップSD8)。この後は、メインルーチンに戻る。したがって、ピッチベンド操作子7の操作に応じたボリューム8の抵抗値の変位量がIOR個分入力バッファBIに書き込まれる。
【0029】
図11は、メインルーチンを中断して定期的に実行されるタイマ処理であるベンドデータ出力処理のフローチャートである。滑らかなピッチベンド効果を実現するために、前述したように、ベンドデータ出力処理はベンダホイール入力処理のIOR倍の頻度で実行される。レジスタbdにBDAの絶対的変位値をストアし(ステップSE1)、FTTが0であるか又は1であるかを判別する(ステップSE2)。FTTが1である場合には、入力バッファ読出インデックスIRで指定される入力バッファBI[IR]の変位量をレジスタaにストアし、IRを更新し、出力バッファ書込インデックスOWで指定される出力バッファBO[OW]の値にaの値を加算して更新した値をレジスタbにストアする(ステップSE3)。すなわち、入力バッファBIから順次読み出した変位量に平滑処理を施してピッチベンドデータに適するように、図4のLPF103の機能であるローパスフィルタ処理を行う。そして、OWを更新し、BO[OW]にローパスフィルタ処理したbの変位量をストアする(ステップSE4)。
【0030】
次に、出力バッファ書込インデックスOWからDELAYの遅延時間に対応する間隔だけ離れた、出力バッファ読出インデックスORで指定される出力バッファBO[OR]の変位量を読み出してレジスタaにストアし、図4の遅延104の機能である遅延処理を行う(ステップSE5)。さらに、図5の関係を表したROM2の変換テーブルRR[ ]を用いて、VRの抵抗値に対応する比率RR[VR]を指定することにより、図4の比率算出105の機能である比率を生成し、その比率RR[VR]をaの値に乗算して、図4の乗算子106の機能である相対的変位値p5を得る(ステップSE6)。次に、bdの絶対的変位値とaの相対的変位値とを加算してbdの値とし、図4の加算子107の機能であるピッチベンドデータp6を出力する(ステップSE7)。そして、出力バッファ読出インデックスORを更新する(ステップSE8)。
【0031】
ステップSE8の更新処理の後は、bdよりフローティングタイプトレモロのピッチベンドのコマンドを作成し、音源LSI10に送信する(ステップSE9)。あるいは、ステップSE2においてFTTが0である場合には、ステップSE1でBDAからストアしたbdの絶対的変位値のピッチベンドのコマンドを作成し、音源LSI10に送信する(ステップSE9)。いずれかのコマンドを送信した後は、メインルーチンに戻る。
【0032】
図12は、ピッチベンド操作子7の操作によって変化するボリューム8の抵抗値に対して、図4の変位量変換101、HPF102の機能による信号処理について不感帯付近を拡大して示した図である。また、図13は、図12の信号処理に続いて、さらに図4のLPF103および遅延104の機能による信号処理について示した図である。
図12において、点線で示す信号波形はボリューム8の抵抗値p1を表している。この抵抗値p1が不感帯の範囲内にある場合には、変位量変換101から出力される絶対的変位値p2は、実線で示すように0の値であり、不感帯の範囲を超えたときに、正又は負の値(図12では正の値)となる。また、HPF102によってハイパスフィルタ処理された変位値p3は、抵抗値p1の傾きに対応する波高値とタイマ処理の間隔に対応する周期とを有し、図12の一点鎖線で示すような矩形の波形になる。さらに、LPF103および遅延104によってローパスフィルタ処理および遅延処理された変位値p4は、図13に示す一点鎖線の滑らかな曲線の波形になる。
【0033】
以上のように、この第1実施形態によれば、CPU1は、音高を連続的に変化させるピッチベンド操作子7の位置を基準位置からの変位量として検出して、ボリューム8の抵抗値として出力し、その変位量が基準位置から所定の範囲内の不感帯である場合には変位量を無効とし、その変化量が所定の範囲を超えた場合には変位量を有効にする絶対的変位値を生成するとともに、ピッチベンド操作子7の変位量の変化率を検出して、その変化率に基づいて相対的変位値を生成し、絶対的変位値と相対的変位値とを合成してピッチベンドデータを音源LSI10に供給する。
したがって、基準位置を中心とする所定範囲が不感帯になっているピッチベンド操作子7を不感帯で操作した場合でも、フローティングタイプトレモロの演奏を可能にする。
【0034】
この第1実施形態において、CPU1は、ピッチベンド操作子7の変位位置(ボリューム8の抵抗値)に応じた比率と検出した変化率とを乗算して、相対的変位値p5を生成する。
したがって、図5に示したように、不感帯の中央付近で乗算比率を大きくすることで、フローティングタイプトレモロ演奏の微妙な振動を効果的に楽音に反映することができる。
また、第1実施形態において、CPU1は、検出したされたピッチベンド操作子7の変位量の変化率に対してローパスフィルタ処理を施す。
したがって、ピッチベンドデータに適するような滑らかな信号波形を生成することができる。
また、第1実施形態において、CPU1は、検出したされたピッチベンド操作子7の変位量の変化率に対して遅延処理を施す。
したがって、ピッチベンド操作子7の振動操作と実際のピッチ振動との間で、同位相での同期、あるいは逆位相での同期など、様々な関係を持つ信号波形を生成することができる。
【0035】
次に、本発明の第2実施形態について、図14ないし図16に基づいて説明する。図14は、第2実施形態における電子鍵盤楽器の機能を示すブロック図である。第1実施形態と同様に、この機能はCPU1によって実行されるが、専用のハードウェアであるDSPによっても実現される。図14に基づいて、第2実施形態の動作を概略的に説明する。なお、図14の構成において、図4に示した第1実施形態の構成と同じものは同一の符号で表すとともに、重複した説明は省略する。
【0036】
図14において、ABS108は、HPF102によってピッチベンド操作子7の変位量を表すボリューム8の抵抗値p1がハイパスフィルタ処理された変位量p3を絶対値化して、変位量p7を出力する。LPF103は、ABS108から出力された変位量p7をローパスフィルタ処理して、変位量のエンベロープ値p8を出力する。乗算子109は、抵抗値p1とエンベロープ値p8とを乗算して、乗算結果の値p9を乗算子106に出力する。乗算子106は、第1実施形態と同様に、乗算子106の出力と比率算出105の出力とをさらに乗算して、相対的変位値p5を出力する。
【0037】
次に、第2実施形態の電子鍵盤楽器の詳細な動作について、CPU1のフローチャートに基づいて説明する。
CPU1の楽音制御処理のフローチャートにおいて、メインルーチン、スイッチ処理、および鍵盤処理については、図7、図8、および図9に示した第1実施形態のフローチャートと同じである。
図15は、メインルーチンを中断して定期的に実行されるタイマ処理であるベンダホイール入力処理のフローチャートである。レジスタVRにボリューム8の抵抗値p1をストアし(ステップSF1)、VRの抵抗値を変位量変換101によって変換し、不感帯が設定された絶対的変位値p2をレジスタBDAにストアする(ステップSF2)。次に、フラグFTTが0であるか又は1であるかを判別する(ステップSF3)。FTTが0である場合にはメインルーチンに戻るが、FTTが1(トレモロ演奏実行)である場合には、現在のVRの抵抗値から前回のVRPの抵抗値を減算した値、すなわち、ピッチベンド操作子7の抵抗値の変化量をレジスタaにセットする(ステップSF4)。さらに、aの値を絶対値化する(ステップSF9)。
【0038】
次に、変数nに初期値0をセットし(ステップSF5)、nの値をインクリメントしながら、ベンダホイール入力処理の1間隔内で実行されるベンドデータ出力処理(後述)の回数(IOR回)分のデータ書き込みを実行する。すなわち、aの値を実行回数IORで除算した値を、入力バッファBIの入力バッファ書込インデックスIWで指定するエリアBI[IW]に書き込み、IWを更新し、nの値をインクリメントする(ステップSF6)。そして、インクリメントしたnの値がIORに達したか否かを判別する(ステップSF7)。nの値がIORに達しない場合には、ステップSF6の処理を繰り返す。nの値がIORに達したときは、そのときのVRの抵抗値をVRPにストアして更新する(ステップSF8)。この後は、メインルーチンに戻る。したがって、ピッチベンド操作子7の操作に応じたボリューム8の抵抗値の変位量がIOR個分入力バッファBIに書き込まれる。
【0039】
図16は、メインルーチンを中断して定期的に実行されるタイマ処理であるベンドデータ出力処理のフローチャートである。レジスタbdにBDAの絶対的変位値をストアし(ステップSG1)、FTTが0であるか又は1であるかを判別する(ステップSG2)。FTTが1である場合には、入力バッファ読出インデックスIRで指定される入力バッファBI[IR]の変位量をレジスタaにストアし、IRを更新し、その更新されたIRで指定される入力バッファBI[IR]の値とaの値との平均値をaの値として更新する(ステップSG3)。すなわち、ピッチベンドデータに適するように、図15のステップSF9において絶対値化されたaの変位量のエンベロープ値を、図14のLPF103のローパフフィルタ処理の機能で算出する。
【0040】
次に、図14の乗算子109の機能によって、レジスタaのエンベロープ値とVRの抵抗値との乗算値(p9)をaの値として更新する(ステップSG10)。さらに、VRの抵抗値に対応する比率RR[VR]をaの値に乗算して、図14の乗算子106の機能である相対的変位値p5を得る(ステップSG6)。次に、bdの絶対的変位値p2とaの相対的変位値p5とを加算してbdの値とし、図14の加算子107の機能であるピッチベンドデータp6を出力する(ステップSG7)。そして、bdよりフローティングタイプトレモロのピッチベンドのコマンドを作成し、音源LSI10に送信する(ステップSG9)。あるいは、ステップSG2においてFTTが0である場合には、ステップSG1でBDAからストアしたbdの絶対的変位値のピッチベンドのコマンドを作成し、音源LSI10に送信する(ステップSG9)。いずれかのコマンドを送信した後は、メインルーチンに戻る。
【0041】
以上のように、この第2実施形態によれば、CPU1は、検出した変化率のエンベロープ値を算出して、そのエンベロープ値とボリューム8の抵抗値とを乗算し、さらに、その乗算結果とボリューム8の抵抗値に応じた比率とを乗算して相対的変位値を生成する。
したがって、第1実施形態と同様に、ピッチベンドデータに適するような滑らかな信号波形を生成することができるとともに、第1実施形態のような遅延処理を行うことなく、現在のボリューム8の抵抗値p1に応じた信号波形を生成することができる。
【0042】
なお、上記各実施形態においては、ROM2にあらかじめ記憶されている楽音制御処理のプログラムをCPU1が実行する装置の発明について説明したが、FD(フレキシブルディスク)やCD−ROMなどの外部記憶媒体から読み込んだ楽音制御処理のプログラム、又は、ネットワークからダウンロードした楽音制御処理のプログラムを、フラッシュROMなどの不揮発性メモリにインストールして、CPU1が実行する構成も可能である。この場合には、プログラムの発明、記憶媒体の発明を実現することができる。
【0043】
すなわち、その楽音制御処理のプログラムは、
音高を連続的に変化させるピッチベンド操作子の位置を基準位置からの変位量として検出して変位信号を出力するステップAと、前記ステップAによって出力された変位信号の示す変位量が前記基準位置から所定の範囲内である場合には変位信号を無効とし、当該変化量が当該所定の範囲を超えた場合には変位信号を有効とする第1の制御信号を生成するステップBと、前記ステップAによって検出された変位量の変化率を検出するステップCと、前記ステップCによって検出された変化率に基づいて第2の制御信号を生成するステップDと、前記ステップBによって生成された第1の制御信号および前記ステップDによって生成された第2の制御信号からピッチベンド制御信号を合成するステップEと、をコンピュータに実行させる。
【0044】
前記ステップDは、前記ステップAによって出力された変位信号の示す変位量に基づく係数と前記ステップCによって検出された変化率とを乗算して第2の制御信号を生成することを特徴とする。
【0045】
前記ステップDは、前記ステップCによって検出された変化率に対してローパスフィルタ処理を施すことを特徴とする。
【0046】
前記ステップDは、前記ステップCによって検出された変化率に対して遅延処理を施すことを特徴とする。
【0047】
前記ステップDは、前記ステップCによって検出された変化率のエンベロープ値を算出して、当該エンベロープ値と前記ステップAによって出力された変位信号の示す変位量とを乗算し、当該乗算結果と前記ステップAによって出力された変位信号の示す変位量に基づく係数とを乗算して第2の制御信号を生成することを特徴とする。
【図面の簡単な説明】
【0048】
【図1】本発明の楽音制御装置を適用した実施形態における電子鍵盤楽器の構成を示すブロック図。
【図2】図1のピッチベンド操作子およびボリュームの構造を示す図。
【図3】図1のピッチベンド操作子の不感帯を示す図。
【図4】第1実施形態における電子鍵盤楽器の機能を示す図。
【図5】図1のボリュームの抵抗値とそれに乗算する比率との関係を示す図。
【図6】図1のRAMの構成を示す図。
【図7】図1のCPUのメインルーチンのフローチャート。
【図8】図7におけるスイッチ処理のフローチャート。
【図9】図7における鍵盤処理のフローチャート。
【図10】第1実施形態におけるベンダホイール入力処理のフローチャート。
【図11】第1実施形態におけるベンドデータ出力処理のフローチャート。
【図12】第1実施形態においてボリュームの抵抗値に対するCPUの信号処理で生成された信号波形との関係を示す図。
【図13】図12の一点鎖線でしめす変位値に対してローパスフィルタ処理を施した信号波形とボリュームの抵抗値との関係を示す図。
【図14】第2実施形態における電子鍵盤楽器の機能を示す図。
【図15】第2実施形態におけるベンダホイール入力処理のフローチャート。
【図16】第2実施形態におけるベンドデータ出力処理のフローチャート。
【符号の説明】
【0049】
1 CPU
2 ROM
3 RAM
4 キースキャナ
5 A/D変換回路
6 鍵盤
7 ピッチベンド操作子
8 ボリューム
9 スイッチ
10 音源LSI
11 波形ROM
12 D/A変換回路
13 出力回路




 

 


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

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


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