JP3899927B2 - 楽音制御装置及び楽音制御処理プログラム - Google Patents

楽音制御装置及び楽音制御処理プログラム Download PDF

Info

Publication number
JP3899927B2
JP3899927B2 JP2001391228A JP2001391228A JP3899927B2 JP 3899927 B2 JP3899927 B2 JP 3899927B2 JP 2001391228 A JP2001391228 A JP 2001391228A JP 2001391228 A JP2001391228 A JP 2001391228A JP 3899927 B2 JP3899927 B2 JP 3899927B2
Authority
JP
Japan
Prior art keywords
touch
parameter
register
touch panel
axis
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2001391228A
Other languages
English (en)
Other versions
JP2003195867A5 (ja
JP2003195867A (ja
Inventor
仁嗣 加藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2001391228A priority Critical patent/JP3899927B2/ja
Publication of JP2003195867A publication Critical patent/JP2003195867A/ja
Publication of JP2003195867A5 publication Critical patent/JP2003195867A5/ja
Application granted granted Critical
Publication of JP3899927B2 publication Critical patent/JP3899927B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Electrophonic Musical Instruments (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、2次元平面上のタッチパネルをタッチすることにより、楽音の発生或いは発生すべき楽音のパラメータを制御する楽音制御装置及び楽音制御処理プログラムに関する。
【0002】
【従来の技術】
従来から、電子楽器等の楽音制御装置の操作子としては、鍵盤、スイッチ或いはホイール等がある。しかしながら、鍵盤、スイッチなどの操作子は1つの定まった楽音パラメータ(以降単にパラメータと称する)を入力するのには適しているが、値が連続的に変化するパラメータを入力するには適していない。また、ホイール等の操作子は、操作量が連続的に変えられるため、値が連続的に変化するパラメータを入力するには適しているが、1種類のパラメータしか制御できない点や、構成上複雑でありコスト高になる点などの問題がある。
【0003】
このため近年になって、2次元平面のタッチパネルを設け、このタッチパネル上のタッチ操作により楽音の発生の指示、或いはパラメータの制御を行なう方式が提案されている。例えば、特開平2000−56764号がそれである。
【0004】
この従来例によれば、押圧位置(タッチパネル上のX軸,Y軸の座標位置)及び押圧力Z軸上の位置)に基づいて夫々異なるパラメータを制御している。このような構成であれば、一つの操作で複数のパラメータを制御でき且つ、構造も従来のホイール等に比ベれば簡単である。
【0005】
【発明が解決しようとする課題】
しかし、上記のような演奏者のタッチにより入力操作をするものは、どうしても初動操作時、初めてタッチしたときの動作が不安定であるため、初動操作では、図25に示すようにタッチパネル61へのタッチの位置が601で示すようにぶれたり、押圧力が一定でなかったりする。こうした操作の不安定さはパラメータの振れに繋がり、これがそのまま発生する楽音に反映されるため、ノイズとして聞こえてしまう。
【0006】
また、タッチパネルの3次元の各軸には一つのパラメータしか割り当てられていなかったため、一度パラメータの割り当てを設定してしまうと、以降、タッチパネルでは、3個のパラメータしか制御することはできなかった。これでは、多数のパラメータを制御しなければ生成できない自然楽器の音をリアルに発生させることができない。だからといって、タッチパネルの各軸に多数のパラメータを割り当て多数のパラメータを制御可能にしても、各軸の制御対象のパラメータを切り換える操作を行わなければならない。これでは、演奏操作の他にパラメータを切り換えるためスイッチ操作が必要となり、肝心の演奏操作が中断されて支障を来すことになる。
【0007】
更に、図26に示すような2次元の平面のタッチパネル61上で、例えばX軸にベンダーを、Y軸にフィルタのパラメータを割り当てた場合、演奏者はタッチパネル61の中央付近にタッチして、X軸又はY軸方向にタッチ位置を動かすことにより、それぞれのパラメータの変化範囲を全て含んだ制御を行うことができる。しかし、最初のタッチ位置が偏っていると、例えばX軸の正方向にはタッチ位置を動かす距離が十分あるが、負方向にはタッチ位置を動かす距離が短く、直ぐにタッチパネル61の縁にぶつかってしまうような場合がある。
【0008】
例えば、一つのあるパラメータ(例えばフィルタ)に対して、タッチパネル面のタッチ位置が右に行けば行くほどその値が大きくなるものにおいて、最初にタッチパネル面の左端近くをタッチしてしまった場合を考える。この場合、フィルタの値を大きい値に変更しようとすれば、X軸の移動初期値611から右方向にタッチ位置を変更すればよいが、小さい方向に変更しようとしても、左方向にはパネル面がほとんどないため、タッチ位置を左方向にほとんど変更できず、フィルタ値をあまり小さい値に変更できないという状態が生じる。このような不都合はY軸の移動初期値612からの移動についても言え、例えばベンダー値を余り大きくすることができなくなる。
【0009】
本発明は、上述の如き従来の課題を解決するためになされたもので、その第1の目的は、タッチパネルへの初動操作の不安定さに起因するノイズの発生を抑えて、最初から円滑に楽音を発生することができる楽音制御装置及び楽音制御処理プログラムを提供することであり、第2の目的は、タッチパネルの一つの軸に複数のパラメータを設定でき且つ、演奏操作に影響を与えるような特別な操作をすることなく、これらパラメータを切り換えて制御することができる楽音制御装置及び楽音制御処理プログラムを提供することであり、第3の目的は、2次元の平面タッチパネル上で、起点のタッチ位置に拘らず、この起点からいずれの方向にタッチ位置を移動しても各軸に割り当ててあるパラメータの変化範囲を全てカバーできる制御を行うことができる楽音制御装置及び楽音制御処理プログラムを提供することである。
【0010】
【課題を解決するための手段】
この発明の手段は以下の通りである。
【0025】
請求項の発明は、タッチパネルと、当該タッチパネル上のタッチ位置を連続して検出するタッチ検出手段と、当該タッチ検出手段により検出された位置情報が供給されると、当該位置に基づいて発生すべき楽音を制御する楽音制御手段と、前記タッチ検出手段により最初に検出されたタッチ位置に基づいて、その後に検出されるタッチ位置の変化に基づく前記楽音制御の度合いを変更する変換手段と、を有することを特徴とする。
【0031】
請求項の発明は、タッチパネル上のタッチ位置を連続して検出するタッチ検出機能と、当該タッチ検出機能により検出された位置情報が供給されると、当該位置に基づいて発生すべき楽音を制御する楽音制御機能と、前記タッチ検出機能により最初に検出されたタッチ位置に基づいて、その後に検出されるタッチ位置の変化に基づく前記楽音制御の度合いを変更する変換機能と、をコンピュータに実現させることを特徴とする。
【0032】
【発明の実施の形態】
以下、本発明の実施の形態を図面に基づいて説明する。図1は、本発明の楽音制御装置の第1の実施の形態に係る構成例を示したブロック図である。本例の楽音制御装置は、タッチパネル4のタッチ位置を検出する等の個別制御及び装置全体の制御を行うCPU1、CPU1を制御するプログラムやデータを格納しているROM2、CPU1が動作する上で必要なデータを記憶するワークRAM3、演奏者がタッチして演奏情報を入力する3次元のタッチパネル4、パラメータの設定などに用いられるスイッチ(SW)部5、楽音を発生する音源6、音源6から発生された楽音を電力増幅して図示されないスピーカ等に出力する発音回路7を有している。
【0033】
図2は図1に示したワークRAM3のデータエリアの構成例を示した模式図である。ワークRAM3のデータエリアは、カレントパラメータエリア31、初期パラメータエリア32、ノートon時間エリア33を有している。カレントパラメータエリア31には、カレントパラメータとして、音高(1)、音量(2)、フィルタパラメータ(3)、ベロシティー(4)、音色NO.(5),エフェクトNO.(6)が保持されている。尚、各パラメータのカッコ内の数字はパラメータ番号である。初期パラメータエリア32には、初期パラメータとして、音高、音量、フィルタパラメータ、ベロシティー、音色NO.、エフェクトNO.が保持され、これら初期パラメータはROM2から転送されて、このワークRAM3に保持される。
【0034】
図3は図1に示した楽音制御装置を筐体に内蔵して組み立てた場合の外観例を示した図である。楽音制御装置10は、その前面に演奏者が指で触れて演奏する3次元のタッチパネル4と、パラメータの設定などに用いられるスイッチ部5及び楽音を出力するスピーカ111を有している。
【0035】
図4は図1に示した楽音制御装置の一部の構成のみを備えた楽音制御コントローラの外観例を示した図である。本例の楽音制御コントローラ11は、その前面に演奏者が指で触れて演奏する3次元のタッチパネル4と、パラメータの設定などに用いられるスイッチ部5を有し、音源搭載システム等にUSBケーブル12等で接続して使用される。
【0036】
図5はパソコン14で、図1に示したタッチパネル以外のCPU1、ROM2、ワークRAM3、スイッチ(SW)部5、音源6、発音回路7の機能を内蔵し、USBケーブル12によりタッチパネル4を接続している。発音回路7のスピーカはパソコン14のスピーカ142を用いる。従って、タッチパネル4とパソコン14をUSBケーブル12で接続することにより、図3に示した楽音制御装置10と同一の機能を有する楽音制御システムを構成することができる。
【0037】
次に、本実施の形態の主要な処理について図6に示したフローチャートを参照して説明する。装置の電源をオンにすると、ステップS1で、ワークRAM3に設定されているレジスタを初期化したり、或いはデフォルト値を設定するイニシャライズ処理が行われる。その後、ステップS2で、CPU1はスイッチ部5をスキャンして選択スイッチの操作を検出し、この選択スイッチの操作に応じたパラメータ選択処理を行う。
【0038】
ステップS3で、CPU1はタッチパネル4をスキャンし、演奏者のタッチを3次元軸上のタッチ位置として検出するタッチ検出処理を行い、ステップS4で、タッチ検出処理により検出した演奏者のタッチに応じて音源6を制御することにより、対応する楽音を生成し、生成した楽音を発音回路7に出力する音源処理を行う。その後、CPU1はステップS5で、時間カウントや音源処理の後処理等のその他の処理を行って、ステップS2の処理に戻る。
【0039】
図7は図6に示したイニシャライズ処理の詳細を示したサブルーチンである。まず、CPU1はステップS7で、ワークRAM3内の初期パラメータエリア32の内容をカレントパラメータエリア31にコピーする。次に、ステップS8で、ワークRAM3内のレジスタXPにパラメータ番号“1”を、レジスタYPにパラメータ番号“2”を書き込んで、タッチパネル4のX軸に音高を、Y軸に音量を割り当てる。その後、ステップS9で、ワークRAM3内のパラメータ選択フラグSELFに“0”を入れて、パラメータ選択モードでないようにすると共に、フラグXFに“1”を書き込み、更に、ステップS10で、イニシャルタッチフラグITFに“0”を書き込むと共に、タッチフラグTFに“0”を書き込む。最後に、ステップS11で、発音時間を設定するオンタイムレジスタONTIMEに所定値を書き込んで、リターン(復帰)する。
【0040】
ここで、上記したパラメータ選択フラグSELFは図8のパラメータ選択処理で、タッチパネル4のX軸とY軸に割り当ててあるパラメータを選択するモードとするかどうかを示すフラグで、SELFが“1”であるとパラメータの選択処理に入る。フラグXFはタッチパネル4のいずれの軸にパラメータを割り当てるかを切り換えるフラグで、XFが“1”であると、X軸にパラメータを割り当てる処理に入る。
【0041】
イニシャルタッチフラグITFは、図9、図10のタッチ検出処理で演奏者が最初にタッチパネル4にタッチした時の始点のタッチ位置情報処理と、それ以降のタッチ位置情報処理を切り分けるためのフラグであり、ITFが“0”であると、始点のタッチ位置情報の処理に入る。タッチフラグTFはタッチ検出処理で演奏者が最初にタッチパネル4にタッチした時点から後述する所定時間内、或いはタッチ位置の移動が後述する所定範囲内である場合の処理と、所定時間以上、或いは所定範囲以上の処理を切り分けるためのフラグであり、TFが“1”になると、所定時間以上、或いは所定範囲以上の処理に入る。
【0042】
図8は図6に示したパラメータ選択処理の詳細を示したサブルーチンである。まず、CPU1はステップS13でスイッチ部5をスキャンして、パラメータ選択キーがオンしているがどうか判断し、オンしていない場合はステップS15に進み、オンしている場合はステップS14に進む。ステップS14では、パラメータ選択フラグSELFの値を反転した後、ステップS15に進む。ここで、パラメータ選択フラグSELFのデフォルト値は“0”であるため、ステップS14の反転処理で、パラメータ選択フラグSELFは“1”になる。ステップS15では、パラメータ選択フラグSELFが“1”であるがどうかを判断し、“1”でない場合、即ち、パラメータ選択モードでない場合はリターンし、“1”でパラメータ選択モードである場合は、ステップS16に進む。
【0043】
ステップS16では、演奏者によりスイッチ部5に設けられているテンキーなどから選択するパラメータ番号が入力される。そこで、CPU1はステップS17で、フラグXFが“1”であるかどうかを判断し、“1”である場合はステップS18に進み、“1”でない場合はステップS19に進む。ステップS18に進んだ場合、レジスタXPに選択されたパラメータ番号を書き込み、ステップS20で、フラグXFの値を反転した後、ステップS13の処理に戻る。ステップS19に進んだ場合、レジスタYPに選択されたパラメータ番号を書き込み、ステップS20で、フラグXFの値を反転した後、ステップS13の処理に戻る。
【0044】
これにより、演奏者がスイッチ部5に設けられているテンキーを押せば、タッチパネル4のY軸とX軸に交互に、押されたテンキーに対応する番号のパラメータが割り当てられて設定される。
【0045】
図9は図6に示したタッチ検出処理の詳細を示したサブルーチンである。まず、CPU1はステップS22で、タッチパネル4をスキャン(走査)し、ステップS23で、演奏者がタッチパネル4にタッチしている(タッチオン)かどうかを判断し、タッチしていない場合は、ステップS39に進み、タッチしている場合はステップS24に進む。ステップS24では、タッチフラグTFが“1”であるかどうかを判断し、“1”である場合はステップS25に進み、“1”でない場合はステップS26に進む。ここで、演奏者が最初にタッチパネル4をタッチした場合、タッチフラグTFはデフォルト値の“0”であるため、ステップS26に進むことになる。
【0046】
ステップS26では、初期タッチフラグITFが“0”であるかどうかを判断し、“0”でない場合は図10のステップS31に進み、初期タッチフラグITFが“0”である場合はステップS27に進む。ここで、演奏者が最初にタッチパネル4をタッチした時点では、初期タッチフラグITFはデフォルト値の“0”であるため、ステップS27に進むことになる。
【0047】
ステップS27では、初期タッチフラグITFを“1”とし、ステップS28で、タッチパネル4の最初のタッチ位置の座標(x,y)をレジスタXI、レジスタYIに格納した後、ステップS29に進む。ステップS29では、レジスタONTIMEにレジスタYIの値を格納してノートオン時間を設定した後、ステップS30で、タイマー時間レジスタtを“0”にしてからリターンする。
【0048】
一方、ステップS26で初期タッチフラグITFが“0”でないと判断されて、図10のステップS31に進んだ場合、CPU1は単位時間経過したかどうかを判断し、経過していない場合はリターンし、経過した場合はステップS32で、タイマー時間レジスタtの値を+1インクリメントする。その後、ステップS33で、tが所定時間(この所定時間はROM2に設定されている)未満かどうか、即ち、演奏者が最初にタッチオンして所定時間経過したかどうかを判断する。
【0049】
ステップS33で、所定時間経過したと判断された場合はステップS35に進み、経過しない場合はステップS34で、現在のタッチパネル4のタッチ位置(x,y)と最初のタッチ位置(XI,YI)121との差が、図12のAで示す所定の範囲(2ΔX×2ΔY)以上になったかどうかを判断し、ならない場合はリターンし、なった場合はステップS35に進む。ステップS35では、初期タッチフラグITFを“0”とすると共に、タッチフラグTFを“1”とし、ステップS36では、レジスタX、レジスタYに現在のタッチ位置の座標(x,y)を書き込んでステップS37に進む。
【0050】
ここで、上記したステップS33〜S36の処理により、演奏者がタッチパネル4に最初にタッチしてから所定時間経つまでは、例え、タッチ位置が変化しても、これを無視し、検出したタッチ位置でパラメータの制御を行わない。しかし、前記所定時間内であっても、タッチ位置の変化が所定の範囲(2ΔX×2ΔY)以上の変化であった場合は、ステップS35、S36に進んで、現在の演奏者のタッチ位置でパラメータを制御する動作を開始する。
【0051】
ステップS37では、ワークRAM3のカレントパラメータエリア31のXP番目のパラメータエリアにレジスタXの値を書き込み、ステップS38では、YP番目のパラメータエリアにレジスタYの値を書き込んで、リターンする。
【0052】
ここで、上記の動作を図12に則してより具体的に説明すると、演奏者がタッチパネル4に最初にタッチオンしても、その直後の手ぶれ121等による移動範囲が、所定範囲A内にとどまる間は、所定時間過ぎなければタッチ位置によるパラメータの制御を行わなず、所定時間過ぎて手ぶれ等の不安定要因がなくなってからタッチ位置によるパラメータの制御を開始する。また、前記タッチ位置によりパラメータの制御を行わない所定時間内であっても、最初のタッチオン位置からタッチ位置が所定範囲Aを超えて変化した場合は、これは不安定要因によるタッチ位置のぶれでなく、演奏者が意識的にタッチ位置を動かしたと判断して、タッチ位置によるパラメータの制御を開始する。
【0053】
図9のステップS24でタッチフラグTFが“1”である場合はステップS25へ進み、現在の演奏者のタッチ位置の座標(x,y)をワークRAM3のレジスタX,レジスタYに書き込んだ後、図10のステップS37の処理に進む。
【0054】
一方、図9のステップS23で、タッチオンでない、即ち、タッチパネル4から演奏者が手を離したと判断された場合はステップS39に進んで、タッチフラグTFを“0”にし、ステップS40で初期タッチフラグITFを“0”にして、リターンする。
【0055】
図11は図6に示した音源処理の詳細を示したサブルーチンである。CPU1はステップS41で、発音指示があったかどうかを判断し、ない場合はステップS45に進み、発音指示があった場合はステップS42へ進む。ステップS42では、ワークRAM3内のカレントパラメータエリア31内のパラメータを音源6に送ると共に、発音指示を音源6に出す。
【0056】
これにより、音源6は送られてきた例えば音高、音量のパラメータ値に従った楽音信号を設定されたオンタイム間発生し、これを発音回路7に出力することにより、スピーカ111から楽音を発生する。
【0057】
その後、ステップS43で、ワークRAM3内のオンフラグONFを“1”とし、ステップS44でワークRAM3内のレジスタSに“0”を書き込んでから、ステップS45に進む。ステップS45では、オンフラグONF(ONFが“1”である場合は演奏者がタッチパネル4をタッチしていることを示すフラグ)が“1”であるかどうかを判断し、“1”でない場合は、演奏者がタッチパネル4をタッチしていないためリターンする。オンフラグONFが“1”である場合はステップS46へ進んで、単位時間経過したかどうかを判断し、経過していない場合はリターンし、単位時間経過した場合はステップS47に進み、ワークRAM3内のレジスタSの値を+1インクリメントする。この処理では、楽音が発生してからの時間経過を単位時間で計時している。
【0058】
その後、ステップS48でレジスタSの値がレジスタONTIMEの設定値以上になったかどうかを判断し、ならない場合はリターンし、設定値以上になった場合はステップS49に進む。ステップS49では、音源6に対して消音指示を出した後リターンする。これにより、音源6からは楽音信号が設定されたONTIME時間出力されることになる。
【0059】
本実施の形態によれば、演奏者がタッチパネル4に最初にタッチしても、その直後の手ぶれ等による移動範囲が、所定範囲A内にとどまる間は、所定時間過ぎなければ、タッチ位置によるパラメータの制御を行わず、所定時間過ぎて手ぶれ等の不安定要因がなくなってからタッチ位置によるパラメータの制御を開始して、タッチ位置に対応した楽音信号を音源6から発生することにより、演奏者が最初にタッチオンした時の手ぶれ等の不安定要因によるパラメータの変化を無視することができるので、最初にタッチした時のノイズの発生を抑制することができ、音出し初期にも常に雑音のない安定な楽音を発生することができる。
【0060】
また、演奏者がタッチパネル4にタッチして直ぐに楽音を発生させたい場合は、タッチ位置を直ちに移動させて所定範囲Aを超えれば、前記所定時間内であっても楽音を発生させることができるため、応答性の良好な演奏を行うこともできる。
【0061】
更に、演奏者がタッチパネル4に最初にタッチした位置のY軸の座標値で、ONTIMEの時間を設定し、その後、タッチ位置のぶれの無視時間或いは無視範囲を超えると、それ以降のタッチ位置のy座標で音高を制御し、x座標で音量を制御する動作に切り換えることができる。これにより、特別なパラメータ切り換え操作を行うことなく、極めて自然なタッチパネル4のタッチ操作の中で、例えばY軸でONTIMEと音高の2種類のパラメータを制御することができ、演奏に悪影響を与えることなく、円滑でバラエティーに富んだ演奏を容易に行うことができる。
【0062】
尚、演奏者が最初にタッチパネル4にタッチオンしてから手ぶれ等による変動を無視してタッチ位置によるパラメータの制御をしない範囲は、Y軸方向の2ΔYであっても良い。その場合、X軸方向は所定時間Δt内の移動が無視されてタッチ位置によるパラメータの制御をしないことになり、同様の効果を得ることができる。勿論、上記のY軸とX軸の設定を逆にしてもよい。
【0063】
図13は、本発明の楽音制御装置の第2の実施の形態に係るイニシャライズ処理を示したフローチャートである。但し、本実施の形態の構成は上記した第1の実施の形態と同様であるため、以下同一の構成を持つ各部については、その構成動作の説明を省略し、以下、その動作の特徴部分を説明する。
【0064】
CPU1はステップS51で、ワークRAM3内の初期パラメータエリア32の内容をカレントパラメータエリア31にコピーする。次にステップS52で、ワークRAM3内のレジスタXP1にパラメータ番号“1”を書き込み、レジスタXP2にパラメータ番号“2”を書き込み、ステップS53で、ワークRAM3内のレジスタYP1にパラメータ番号“3”を書き込むと共に、レジスタYP2にパラメータ番号“4”を書き込む。次に、ステップS54で、選択フラグSELFを“0”とすると共に、フラグXFを“1”とする。更に、ステップS55で、初期タッチフラグITFを“0”とすると共に、タッチフラグTFを“0”とする。最後に、ステップS56でレジスタONTIMEに所定値を書き込んでリターンする。
【0065】
図14は本実施の形態のパラメータ選択処理の詳細を示したサブルーチンである。まず、CPU1はステップS58でスイッチ部5をスキャンして、パラメータ選択スイッチがオンしているがどうか判断し、オンしていない場合はステップS60に進み、オンしている場合はステップS59に進む。ステップS59では、パラメータ選択フラグSELFを反転し、ステップS60に進む。ここで、パラメータ選択フラグSELFのデフォルト値は“0”であるため、ステップS59の反転処理で、パラメータ選択フラグSELFは“1”になる。
【0066】
ステップS60では、パラメータ選択フラグSELFが“1”であるがどうかを判断し、“1”でない場合、即ち、パラメータ選択モードでない場合はリターンし、“1”でパラメータ選択モードである場合は、ステップS61に進む。ステップS61では、演奏者によりスイッチ部5に設けられている図17に示すようなテンキー51や選択キー52を操作して、タッチパネル4のX軸、Y軸にそれぞれ2種類のパラメータを割り当てる操作を行う。
【0067】
上記演奏者のパラメータ選択処理を受けて、CPU1はステップS62で、図17のスイッチ部5の選択キー52(1番から4番)の中の操作されたキー番号(選択番号)をワークRAM3内のレジスタSPに書き込む。例えば、1番の選択キー52が押された場合、CPU1はレジスタSPに選択番号“1”を書き込む。
【0068】
次にステップS63では、レジスタSPの内容が“1”であるかどうかを判断し、“1”でない場合はステップS65に進み、“1”である場合はステップS64に進んで、レジスタXP1に上記ステップS61で選択されたパラメータ番号を書き込む。
【0069】
ステップS65では、レジスタSPの内容が“2”であるかどうかを判断し、“2”でない場合はステップS67に進み、“2”である場合はステップS66に進んで、レジスタXP2に選択されたパラメータ番号を書き込む。
【0070】
ステップS67では、レジスタSPの内容が“3”であるかどうかを判断し、“3”でない場合はステップS69に進み、“3”である場合はステップS68に進んで、レジスタYP1に選択されたパラメータ番号を書き込む。
【0071】
ステップS68では、レジスタSPの内容が“4”であるかどうかを判断し、“4”でない場合はステップS58の処理に戻り、“4”である場合はステップS70に進んで、レジスタYP2に選択されたパラメータ番号を書き込んだ後、ステップS58の処理に戻る。
【0072】
上記のステップS61からステップS70の処理により、タッチパネル4のX軸とY軸に2種類ずつのパラメータが割り当てられる。例えば、演奏者がテンキー51の5番を押すと、番号5のパラメータが選択され、次に選択キー52の3番を押すと、レジスタYP1に選択されたパラメータの番号、即ち5番が書き込まれて、タッチパネル4のY軸に5番のパラメータが割り当てられることになる。
【0073】
図15はタッチ検出処理の詳細を示したサブルーチン(実施例1)である。まず、CPU1はステップS72で、タッチパネル4をスキャン(走査)し、ステップS73で、演奏者がタッチパネル4にタッチしているかどうかを判断し、タッチしていない場合は、ステップS76に進み、タッチしている場合はステップS74に進む。ステップS74では、タッチフラグTFが“1”であるかどうかを判断し、“1”である場合はステップS75に進み、“1”でない場合はステップS78に進む。ここで、演奏者が最初にタッチパネル4をタッチした場合、タッチフラグTFはデフォルト値の“0”であるため、ステップS78に進むことになる。
【0074】
ステップS78では、初期タッチフラグITFが“0”であるかどうかを判断し、“0”でない場合は図16のステップS85に進み、初期タッチフラグITFが“0”である場合はステップS79に進む。ここで、演奏者が最初にタッチパネル4をタッチした場合、初期タッチフラグITFはデフォルト値の“0”であるため、ステップS79に進むことになる。
【0075】
ステップS79では、初期タッチフラグITFを“1”とし、ステップS80で、タッチパネル4の最初のタッチ位置の座標(x,y)をレジスタXI、レジスタYIに書き込んだ後、ステップS81に進む。ステップS81では、ワークRAM3内のカレントパラメータエリア31のXP1番目のパラメータエリアにレジスタXIの内容を書き込む。ステップS82では、同カレントパラメータエリア31のYP1番目のパラメータエリアにレジスタYIの内容を書き込んだ後、ステップS83でタイマー時間レジスタtを“0”にしてからリターンする。
【0076】
上記したステップS81とステップS82の処理では、最初のタッチ位置(x,y)により、タッチパネル4のX軸とY軸に割り当てた例えば音高と音量のパラメータが決定され、その後の音源処理で、これらパラメータが音源6に送られる。
【0077】
一方、ステップS78で初期タッチフラグITFが“0”でないと判断されて、図16のステップS85に進むと、CPU1は単位時間経過したかどうかを判断し、経過しない場合はリターンし、経過した場合はステップS86で、タイマー時間レジスタtの値を+1インクメントする。その後、ステップS87で、tが所定時間(この所定時間はROM2に設定されている)未満かどうか、即ち、演奏者が最初にタッチオンして所定時間経過したかどうかを判断する。
【0078】
ステップS87で、所定時間経過した場合はステップS89に進み、経過しない場合はステップS88で、現在のタッチパネル4のタッチ位置(x,y)と最初のタッチ位置(XI,YI)との差が、図18のAに示す所定の範囲(2ΔX×2ΔY)以上になったかどうかを判断し、ならない場合はリターンし、なった場合はステップS89に進む。ステップS89では、初期タッチフラグITFを“0”とすると共に、タッチフラグTFを“1”とし、ステップS90では、レジスタX、レジスタYに現在のタッチ位置の座標(x,y)を書き込んでステップS91に進む。
【0079】
上記したステップS87〜S90の処理により、演奏者がタッチパネル4に最初にタッチしてから所定時間経つまでは、例え、タッチ位置が変化しても、これを無視し、タッチ位置によるパラメータの制御をしない。しかし、前記所定時間内であっても、タッチ位置の変化が所定の範囲(2ΔX×2ΔY)以上の変化であった場合は、ステップS89、S90に進んで、現在の演奏者のタッチ位置によるパラメータの制御を開始する。
【0080】
ステップS91では、ワークRAM3のカレントパラメータエリア31のXP2番目のパラメータエリアにレジスタXの値を書き込み、ステップS92では、YP2番目のパラメータエリアにレジスタYの値を書き込んで、リターンする。
【0081】
上記したステップS91とステップS92の処理では、演奏者がタッチパネル4に最初にタッチオンして、所定範囲Aを超えて移動した場合、或いは所定時間経過した場合にタッチ位置によるパラメータの制御を開始するが、この制御を開始したタッチ位置に対応したX軸とY軸に割り当てた例えばフィルタとベロシティーのパラメータ値がその後の音源処理で音源6に送られる。
【0082】
一方、図15のステップS74で、タッチフラグTFが“1”であった場合、ステップS75に進んで、現在のタッチ位置の座標(x,y)をワークRAM3内のレジスタX、レジスタYに書き込み、図16のステップS91に進む。
【0083】
また、図15のステップS73で、タッチオンでない、即ち、タッチパネル4から演奏者が手を離したと判断された場合は、ステップS76に進んでタッチフラグTFを“0”にし、ステップS77で初期タッチフラグITFを“0”にしてリターンする。
【0084】
図19は本実施の形態の他のタッチ検出処理の詳細を示したサブルーチン(実施例2)である。まず、CPU1はステップS94で、タッチパネル4をスキャン(走査)し、ステップ95で、演奏者がタッチパネル4にタッチしているかどうかを判断し、タッチしていない場合は、ステップS100に進み、タッチしている場合はステップS96に進む。ステップS96では、タッチフラグTFが“1”であるかどうかを判断し、“1”である場合はステップS97に進み、“1”でない場合はステップS102に進む。ここで、演奏者が最初にタッチパネル4をタッチした場合、タッチフラグTFはデフォルト値の“0”であるため、ステップS102に進むことになる。
【0085】
ステップS102では、初期タッチフラグITFが“0”であるかどうかを判断し、“0”でない場合は図20のステップS107に進み、初期タッチフラグITFが“0”である場合はステップS103に進む。ここで、演奏者が最初にタッチパネル4をタッチした場合、初期タッチフラグITFはデフォルト値の“0”であるため、ステップS103に進むことになる。
【0086】
ステップS103では、初期タッチフラグITFを“1”とし、ステップS104で、タッチパネル4の最初のタッチ位置の座標(x,y)をレジスタXI、レジスタYIに書き込んだ後、ステップS105に進む。ステップS105では、ワークRAM3内のレジスタONTIMEにレジスタYIの値を書き込んだ後、ステップS106でタイマー時間レジスタtを“0”にした後、リターンする。
【0087】
上記したステップS104とステップS105の処理では、最初のタッチ位置のy座標により、例えば、タッチパネル4のY軸に割り当てたパラメータであるONTIMEの時間が決定され、その後の音源処理で、このONTIMEの時間を用いて音源6を制御することになる。
【0088】
一方、ステップS102で、初期タッチフラグITFが“0”でないと判断されて、図20のステップS107に進んだ場合、CPU1は単位時間経過したかどうかを判断し、経過しない場合はリターンし、経過した場合はステップS108で、タイマー時間レジスタtの値を+1インクメントする。その後、ステップS109で、tが所定時間(この所定時間はROM2に設定されている)未満かどうか、即ち、演奏者が最初にタッチオンして所定時間経過したかどうかを判断する。
【0089】
ステップS109で、所定時間経過したと判断された場合はステップS111に進み、経過しない場合はステップS110で、現在のタッチパネル4のタッチ位置(x,y)と最初のタッチ位置(XI,YI)との差が、図18に示すような所定の範囲(2ΔX×2ΔY)A以上になったかどうかを判断し、ならない場合はリターンし、所定の範囲以上になった場合はステップS111に進む。ステップS111では、初期タッチフラグITFを“0”とすると共に、タッチフラグTFを“1”とし、ステップS112では、レジスタX、レジスタYに現在のタッチ位置の座標(x,y)を書き込んでステップS113に進む。
【0090】
上記したステップS109〜S112の処理により、演奏者がタッチパネルに最初にタッチしてから所定時間経つまでは、例え、タッチ位置が変化しても、これを無視し、タッチ位置によるパラメータの制御をしない。しかし、前記所定時間内であっても、タッチ位置の変化が所定の範囲(2ΔX×2ΔY)以上の変化であった場合は、ステップS111、S112に進んで、現在の演奏者のタッチ位置によるパラメータの制御を開始する。
【0091】
ステップS113では、ワークRAM3のカレントパラメータエリア31のXP1番目のパラメータエリアにレジスタXの値を書き込み、ステップS114では、YP1番目のパラメータエリアにレジスタYの値を書き込んで、リターンする。
【0092】
上記したステップS113とステップS114の処理では、演奏者がタッチパネル4に最初にタッチオンして、所定範囲Aを超えて移動したり、或いは所定時間が経過してタッチ位置によるパラメータの制御を開始した直後に最初に得られたタッチ位置に対応したX軸とY軸に割り当てた、例えば音高と音量のパラメータがその後の音源処理で音源6に送られる。
【0093】
一方、図19のステップS96にて、タッチフラグTFが“1”であった場合、ステップS97に進み、レジスタX、レジスタYに現在のタッチ位置の座標(x,y)が書き込まれる。次に、ステップS98にて、ワークRAM3のカレントパラメータエリア31のXP2番目のパラメータエリアにレジスタXの値を書き込み、ステップS99では、YP2番目のパラメータエリアにレジスタYの値を書き込んでリターンする。
【0094】
上記したステップS97とステップS98の処理では、演奏者がタッチパネル4に最初にタッチオンして、所定範囲Aを超えて移動したり、或いは所定時間経過してタッチ位置によるパラメータの制御を開始してから、最初に得られたタッチ位置を除いたそれ以降のタッチ位置に対応したX軸とY軸に割り当てた例えばフィルタとベロシティのパラメータが、その後の音源処理で音源6に送られる。
【0095】
一方、図19のステップS95で、タッチオンでない、即ち、タッチパネル4から演奏者が手を離したと判断された場合は、ステップS100に進んでタッチフラグTFを“0”にし、ステップS101で初期タッチフラグITFを“0”にして、リターンする。
【0096】
本実施の形態によれば、予めタッチパネル4のX軸、Y軸にそれぞれ2種類ずつの制御すべきパラメータを設定しておくと、演奏者がタッチパネル4を最初にタッチした位置で、前記X軸、Y軸に設定した一つ目と2つ目のパラメータが決定され、その後、前記最初のタッチ位置が所定範囲を超えて移動したり、或いは所定時間経過した後にタッチ位置によるパラメータの制御を開始すると、この制御開始以降のタッチ位置に対応したX軸とY軸に割り当てられた三つ目と四つ目のパラメータが得られ、これら4つのパラメータで制御される楽音が音源6から発生され、発音回路7のスピーカ111から出力される。
【0097】
或いは、予めタッチパネル4のX軸に2つ、Y軸にそれぞれ3つの制御すべきパラメータを設定しておき、演奏者がタッチパネル4を最初にタッチした位置で、前記Y軸に設定した一つ目のパラメータが決定され、その後、前記最初のタッチ位置が所定範囲を超えて移動したり、或いは所定時間経過した後にタッチ位置によりパラメータの制御を開始した直後の最初のタッチ位置で、X軸に設定した一つ目のパラメータと、Y軸に設定した二つ目のパラメータとが決まり、更に、タッチ位置によるパラメータの制御を開始した後、最初に得られたタッチ位置を除いたそれ以降のタッチ位置でX軸に設定した二つ目のパラメータと、Y軸に設定した三つ目のパラメータが制御され、これら5つのパラメータで制御される楽音が音源6から発生され、発音回路7のスピーカ111から出力される。従って、タッチパネル4の各軸に複数のパラメータを設定した際に、演奏操作に影響を与えるような特別な操作をすることなく、これらパラメータを切り換えることができ、円滑でバラエティに富んだ演奏を行うことができる。
【0098】
図21は、本発明の楽音制御装置の第3の実施の形態に係るタッチ検出処理を示したフローチャートである。但し、本例の構成は上記した第1の実施の形態と同様であるため、以下同一の構成を持つ各部については、その構成動作の説明を省略し、以下、その動作の特徴部分を説明する。
【0099】
まず、CPU1はステップS115で、タッチパネル4をスキャン(走査)し、ステップS116で、演奏者がタッチパネル4にタッチしているかどうかを判断し、タッチしていない場合は、ステップS140に進み、タッチしている場合はステップS117に進む。ステップS117では、タッチフラグTFが“1”であるかどうかを判断し、“1”である場合はステップS131に進み、“1”でない場合はステップS118に進む。ここで、演奏者が最初にタッチパネル4をタッチした場合、タッチフラグTFはデフォルト値の“0”であるため、ステップS118に進むことになる。
【0100】
ステップS118では、初期タッチフラグITFが“0”であるかどうかを判断し、“0”でない場合は図22のステップS123に進み、初期タッチフラグITFが“0”である場合はステップS119に進む。ここで、演奏者が最初にタッチパネル4をタッチした場合、初期タッチフラグITFはデフォルト値の“0”であるため、ステップS119に進むことになる。
【0101】
ステップS119では、初期タッチフラグITFを“1”とし、ステップS120で、タッチパネル4の最初のタッチ位置の座標(x,y)をワークRAM3内のレジスタXI、レジスタYIに格納した後、ステップS121に進む。ステップS121では、レジスタONTIMEにレジスタYIの値を格納して、ノートON時間を設定した後、ステップS122で、タイマー時間レジスタtを“0”にしてからリターンする。
【0102】
一方、ステップS118で初期タッチフラグITFが“0”と判断されて、図22のステップS123に進むと、CPU1は単位時間経過したかどうかを判断し、経過しない場合はリターンし、経過した場合はステップS124で、タイマー時間レジスタtの値を+1インクメントする。その後、ステップS125で、tが所定時間(この所定時間はROM2に設定されている)未満かどうか、即ち、演奏者が最初にタッチオンして所定時間経過したかどうかを判断する。
【0103】
ステップS125で、所定時間経過したと判断された場合はステップS127に進み、経過しない場合はステップS126で、現在のタッチパネル4のタッチ位置(x,y)と最初のタッチ位置(XI,YI)との差が、所定の範囲(2ΔX×2ΔY)以上になったかどうかを判断し、ならない場合はリターンし、なった場合はステップS127に進む。ステップS127では、初期タッチフラグITFを“0”とすると共に、タッチフラグTFを“1”とし、ステップS128では、レジスタX0、レジスタY0に現在のタッチ位置の座標(x,y)を書き込んでステップS129に進む。
【0104】
ここで、レジスタX0、レジスタY0に書き込まれたタッチ位置は、上記した所定時間経った後、又は所定範囲からタッチ位置が出た直後の演奏者のタッチ位置である。このタッチ位置を起点として、タッチパネル4のX軸、或いはY軸に割り当ててあるパラメータが最大から最小の範囲で、これ以降のタッチ位置の変化に応じて変化されることになる。
【0105】
上記したステップS125〜S128の処理により、演奏者がタッチパネル4に最初にタッチしてから所定時間経つまでは、例え、タッチ位置が変化しても、これを無視し、タッチ位置によるパラメータの制御はしない。しかし、前記所定時間内であっても、タッチ位置の変化が所定範囲(2ΔX×2ΔY)以上の変化があった場合は、ステップS127、S128に進んで、現在の演奏者のタッチ位置によるパラメータの制御を開始する。
【0106】
ステップS129では、ワークRAM3のカレントパラメータエリア31のXP番目のパラメータエリアにXmax/2の値を書き込み、ステップS130では、YP番目のパラメータエリアにYmax/2の値を書き込んで、リターンする。ここで、Xmaxはタッチパネル4上でのX軸の最大値を示し、YmaxはY軸の最大値を示す。
【0107】
一方、図21のステップS117でタッチフラグTFが“1”である場合はステップS131へ進み、現在の演奏者のタッチ位置(x,y)をワークRAM3のレジスタX,レジスタYに書き込んだ後、ステップS132に進む。ステップS132では、レジスタXの値とレジスタX0の値を比較し、レジスタXの値がレジスタX0の値以上でない場合(上記した起点(レジスタX0とレジスタY0の値で決まる点)に対してタッチ位置がX軸の負方向に移動した場合)はステップS134に進み、レジスタXの値がレジスタX0以上の値であった場合(上記した起点に対してタッチ位置がX軸の正方向に移動した場合)はステップS133に進む。
【0108】
ステップS133では、(Xmax/2)×{1+(X−(X0−1))/(Xmax−(X0−1))}…(1)の計算値をレジスタXに書き込んだ後、図23のステップS135に進む。但し、上記計算式(1)で、X0はレジスタX0の値を示し、XはレジスタXの値を示している。従って、(1)式の計算は、上記起点からタッチ位置をX軸の正方向にタッチパネル4の端まで移動した時に、X軸に割り当ててあるパラメータの最大値が得られるように、タッチ位置のx座標値を変換する処理である。
【0109】
ステップS134では、(Xmax/2)×{X/(X0−Xmin)}…(2)の計算値をレジスタXに書き込んだ後、ステップS135に進む。但し、上記計算式(2)で、X0はレジスタX0の値を示し、XはレジスタXの値を示し、Xminはタッチパネル4上でのX軸の最小値を示している。従って、(2)式の計算は、上記起点からタッチ位置をX軸の負方向にタッチパネル4の端まで移動した時に、X軸に割り当ててあるパラメータの最小値が得られるように、タッチ位置のx座標値を変換する処理である。
【0110】
ステップS135では、レジスタYの値とレジスタY0の値を比較し、レジスタYの値がレジスタY0の値以上でない場合(上記した起点に対してタッチ位置がY軸の負方向に移動した場合)はステップS137に進み、レジスタYの値がレジスタY0以上の値であった場合(上記した起点に対してタッチ位置がY軸の正方向に移動した場合)はステップS136に進む。
【0111】
ステップS136では、(Ymax/2)×{1+(Y−(Y0−1))/(Ymax−(Y0−1))}…(3)の計算値をレジスタYに書き込んだ後、ステップS138に進む。但し、上記計算式(3)で、Y0はレジスタY0の値を示し、YはレジスタYの値を示している。従って、(3)式の計算は、上記起点からタッチ位置をY軸の正方向にタッチパネル4の端まで移動した時に、Y軸に割り当ててあるパラメータの最大値が得られるように、タッチ位置のy座標値を変換する処理である。
【0112】
ステップS137では、(Ymax/2)×{Y/(Y0−Ymin)}…(4)の計算値をレジスタYに書き込んだ後、ステップS138に進む。但し、上記計算式(4)で、Y0はレジスタY0の値を示し、YはレジスタYの値を示し、Yminはタッチパネル4上でのY軸の最小値を示している。従って、(4)式の計算は、上記起点からタッチ位置をY軸の負方向にタッチパネル4の端まで移動した時に、Y軸に割り当ててあるパラメータの最小値が得られるように、タッチ位置のy座標値を変換する処理である。
【0113】
ステップS138では、ワークRAM3のカレントパラメータエリア31のXP番目のパラメータエリアにレジスタXの値を書き込み、ステップS139では、YP番目のパラメータエリアにレジスタYの値を書き込んで、リターンする。
【0114】
一方、図21のステップS116で、演奏者がタッチパネル4にタッチしていない、即ち、タッチパネル4から演奏者が手を離したと判断された場合は、ステップS140に進んで、タッチフラグTFを“0”にし、ステップS141で初期タッチフラグITFを“0”にしてリターンする。
【0115】
図24は上記したステップS132からステップS137までの処理により、タッチパネル4のX軸、Y軸に割り当てられているパラメータを、これを制御するタッチ位置の起点に拘らず、即ち起点が中央でなくても、各軸に割り当てられているパラメータの最小値から最大値までを制御し得ることを示した図である。例えば、X軸の起点が261(X軸制御初期値)であった場合、X軸の正方向は動かす範囲が広く、負方向は動かす範囲が狭まっている。しかし上記処理によって、X軸の負方向に動かした場合も、タッチパネル4の縁で、X軸に割り当ててある例えばベンダー値を最小まで制御することができる。またX軸の正方向に動かした場合も、タッチパネル4の縁で、X軸に割り当ててある例えばベンダー値を最大まで制御することができる。同様にY軸においてもその起点262(Y軸制御初期値)から正方向或いは負方向いずれに動かしても、Y軸に割り当ててある例えばフィルタの係数を最大値から最小値まで制御することができる。
【0116】
本実施の形態によれば、タッチパネル4のX軸、Y軸に割り当ててあるパラメータを変化させるための起点がどこであっても、その起点からX軸方向或いはY軸方向の縁までタッチ位置を移動した際に、制御するパラメータの最大値から最小値までの変化が得られるように、前記起点に基づいてタッチ位置の変化割合を変更しているため、前記起点の位置に拘らずパラメータの値を最大値から最小値まで変更することができる。従って、起点が必ずしもタッチパネル4の中央でなくても良いため、初心者などの使い勝手を向上させることができる。
【0117】
尚、上記した第1乃至第3の実施の形態で示した楽音制御装置の各動作を楽音制御処理プログラムとしてプログラム化し、コンピュータに実行させることにより実施できる。その際、楽音制御処理プログラムはフロッピーディスクやハードディスク等のディスク型記録媒体、半導体メモリやカード型メモリ等の各種メモリ、或いは通信ネットワーク等の各種プログラム記録媒体を通じてコンピュータに供給することができる。
【0118】
また、本発明は上記実施の形態に限定されることなく、その要旨を逸脱しない範囲において、具体的な構成、機能、作用、効果において、他の種々の形態によっても実施することができる。
【0119】
【発明の効果】
以上詳細に説明したように、請求項1、請求項の発明によれば、演奏者がタッチパネルを最初にタッチした時に検出されるタッチ位置(起点)に基づいて、その後に検出されるタッチ位置の変化に基づく楽音制御の度合いを変更することにより、2次元平面のタッチパネル上で、前記起点のタッチ位置に拘らず、この起点からいずれの方向にタッチ位置を移動しても各軸に割り当ててあるパラメータの変化範囲を全てカバーできる制御を行うことができる。
【図面の簡単な説明】
【図1】本発明の楽音制御装置の第1の実施の形態に係る構成例を示したブロック図。
【図2】図1に示したワークRAMのデータエリアの構成例を示した模式図。
【図3】図1に示した楽音制御装置を筐体に内蔵して組み立てた場合の外観例を示した図。
【図4】図1に示した楽音制御装置の一部の構成のみを備えた楽音制御コントローラの外観例を示した図。
【図5】図4で示した楽音制御コントローラをパソコンに接続して構成した楽音制御システムの外観例を示した図。
【図6】図1に示した装置の主要な処理を示したフローチャート。
【図7】第1の実施の形態のイニシャライズ処理の詳細を示したサブルーチン。
【図8】第1の実施の形態のパラメータ選択処理の詳細を示したサブルーチン。
【図9】第1の実施の形態のタッチ検出処理の詳細を示したサブルーチン。
【図10】第1の実施の形態のタッチ検出処理の詳細を示したサブルーチン。
【図11】第1の実施の形態の音源処理の詳細を示したサブルーチン。
【図12】第1の実施の形態のタッチパネルのタッチ位置検出処理を説明する図。
【図13】本発明の楽音制御装置の第2の実施の形態に係るイニシャライズ処理を示したフローチャート。
【図14】第2の実施の形態のパラメータ選択処理の詳細を示したサブルーチン。
【図15】第2の実施の形態のタッチ検出処理の詳細を示したサブルーチン(実施例1)。
【図16】第2の実施の形態のタッチ検出処理の詳細を示したサブルーチン(実施例1)。
【図17】第2の実施の形態のスイッチ部の詳細例を示した図。
【図18】第2の実施の形態のタッチパネルのタッチ位置検出処理を説明する図。
【図19】第2の実施の形態の他のタッチ検出処理の詳細を示したサブルーチン(実施例2)。
【図20】第2の実施の形態の他のタッチ検出処理の詳細を示したサブルーチン(実施例2)。
【図21】本発明の楽音制御装置の第3の実施の形態に係るタッチ検出処理を示したフローチャート。
【図22】本発明の楽音制御装置の第3の実施の形態に係るタッチ検出処理を示したフローチャート。
【図23】本発明の楽音制御装置の第3の実施の形態に係るタッチ検出処理を示したフローチャート。
【図24】第3の実施の形態のタッチパネルのタッチ位置移動によるパラメータ制御例を説明する図。
【図25】従来のタッチパネルにおける演奏者のタッチ状態を説明する図。
【図26】従来のタッチパネルに対するタッチ位置移動によるパラメータ制御例を説明する図。
【符号の説明】
1 CPU
2 ROM
3 ワークRAM
4 タッチパネル
5 スイッチ(SW)部
6 音源
7 発音回路
10 楽音制御装置
11 楽音制御コントローラ
12 USBケーブル
14 パソコン
51 テンキー
52 選択キー
111、142 スピーカ
141 ディスプレイ

Claims (2)

  1. タッチパネルと、
    当該タッチパネル上のタッチ位置を連続して検出するタッチ検出手段と、
    当該タッチ検出手段により検出された位置情報が供給されると、当該位置に基づいて発生すべき楽音を制御する楽音制御手段と、
    前記タッチ検出手段により最初に検出されたタッチ位置に基づいて、その後に検出されるタッチ位置の変化に基づく前記楽音制御の度合いを変更する変換手段と、
    を有することを特徴とする楽音制御装置。
  2. タッチパネル上のタッチ位置を連続して検出するタッチ検出機能と、
    当該タッチ検出機能により検出された位置情報が供給されると、当該位置に基づいて発生すべき楽音を制御する楽音制御機能と、
    前記タッチ検出機能により最初に検出されたタッチ位置に基づいて、その後に検出されるタッチ位置の変化に基づく前記楽音制御の度合いを変更する変換機能と、
    をコンピュータに実現させることを特徴とする楽音制御プログラム。
JP2001391228A 2001-12-25 2001-12-25 楽音制御装置及び楽音制御処理プログラム Expired - Lifetime JP3899927B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001391228A JP3899927B2 (ja) 2001-12-25 2001-12-25 楽音制御装置及び楽音制御処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001391228A JP3899927B2 (ja) 2001-12-25 2001-12-25 楽音制御装置及び楽音制御処理プログラム

Publications (3)

Publication Number Publication Date
JP2003195867A JP2003195867A (ja) 2003-07-09
JP2003195867A5 JP2003195867A5 (ja) 2005-07-07
JP3899927B2 true JP3899927B2 (ja) 2007-03-28

Family

ID=27598883

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001391228A Expired - Lifetime JP3899927B2 (ja) 2001-12-25 2001-12-25 楽音制御装置及び楽音制御処理プログラム

Country Status (1)

Country Link
JP (1) JP3899927B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4613890B2 (ja) * 2006-07-20 2011-01-19 ヤマハ株式会社 電子音楽装置
JP2011128393A (ja) * 2009-12-18 2011-06-30 Korg Inc 電子楽器用コントローラ
JP6358554B2 (ja) * 2013-12-19 2018-07-18 カシオ計算機株式会社 楽音制御装置、楽音制御方法およびプログラム
JP7419903B2 (ja) * 2020-03-18 2024-01-23 ヤマハ株式会社 パラメータ制御装置、パラメータ制御方法およびプログラム

Also Published As

Publication number Publication date
JP2003195867A (ja) 2003-07-09

Similar Documents

Publication Publication Date Title
US7724236B2 (en) Methods and systems for providing programmable computerized interactors
US8125442B2 (en) System and method for manipulation of sound data using haptic feedback
CA2310058C (en) Sound generator and video game machine employing it
EP0751481B1 (en) Image processor and electronic apparatus
TW592756B (en) Recording medium, computer and method for selecting computer display items
CN109559720B (zh) 电子乐器及控制方法
US7607983B2 (en) Game program and game device using touch panel
JP2007317159A (ja) 電子装置の入力装置およびその入力方法
JP3804212B2 (ja) 情報入力装置
JP3899927B2 (ja) 楽音制御装置及び楽音制御処理プログラム
JP4406615B2 (ja) コマンド処理装置およびコマンド処理プログラム
JP3183385B2 (ja) 電子楽器の演奏情報入力装置
US5290966A (en) Control apparatus and electronic musical instrument using the same
JP3269443B2 (ja) 操作子の応答制御方法および操作子の応答制御プログラムを記録した記録媒体および操作子の応答制御装置
JP2019200428A (ja) 楽音発生装置、楽音発生方法、プログラムおよび電子楽器
JP3846298B2 (ja) 演奏情報表示装置及び演奏情報表示プログラム
JP2019061542A (ja) パラメータ制御装置、電子楽器、パラメータ制御方法及び制御プログラム
JP7430166B2 (ja) 情報処理プログラム、情報処理装置および情報処理方法
JPH09215859A (ja) テレビゲーム機及びその音響信号発生方法
Ogata et al. Keyboard Interface with Shape-Distortion Expression for Interactive Performance
JP2001100902A (ja) 図形入力装置
JP2000315083A (ja) 電子鍵盤楽器
JP2005099871A (ja) 演奏用パラメータ入力装置
JP2001259220A (ja) コンピュータを使用する方法、この方法を実行するプログラムを記録した記録媒体、並びにコンピュータ
JPH0734894U (ja) テレビゲーム機

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041104

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041104

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20060206

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060413

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060926

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20061010

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061113

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20061205

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061218

R150 Certificate of patent or registration of utility model

Ref document number: 3899927

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110112

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110112

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120112

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130112

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130112

Year of fee payment: 6

EXPY Cancellation because of completion of term