(57)【特許請求の範囲】
【請求項１】
押鍵強度に応じて変化する時間であって、押鍵されてから打弦音が発生するまでの第１の遅延時間と、押鍵強度に応じて変化する時間であって、押鍵されてから棚板衝突音が発生するまでの第２の遅延時間とを含む遅延特性を複数種記憶する遅延特性記憶手段と、
前記遅延特性記憶手段に記憶される複数種の遅延特性のいずれかを選択する選択手段と、
前記選択手段により前記遅延特性記憶手段から選択される遅延特性において、押鍵操作で生じる押鍵強度に対応した第１および第２の遅延時間を前記遅延特性記憶手段から抽出する抽出手段と、
押鍵操作に応じた音高の打弦音を、押鍵されてから前記抽出手段により抽出された第１の遅延時間が経過した時に発生する打弦音発生手段と、
前記抽出手段により抽出された第２の遅延時間が経過した時に棚板衝突音を発生する棚板衝突音発生手段と、
前記打弦音発生手段が生成する打弦音と、前記棚板衝突音発生手段が生成する棚板衝突音とを加算した楽音を発生する楽音発生手段と
を具備することを特徴とする電子楽器。
【請求項２】
押鍵強度に応じて変化する時間であって、押鍵されてから打弦音が発生するまでの第１の遅延時間と、押鍵強度に応じて変化する時間であって、押鍵されてから棚板衝突音が発生するまでの第２の遅延時間とを含む遅延特性を複数種記憶しておき、これら複数種の遅延特性のいずれかを選択する選択処理と、
前記選択処理にて選択された遅延特性において、押鍵操作で生じる押鍵強度に対応した第１および第２の遅延時間を抽出する抽出処理と、
押鍵操作に応じた音高の打弦音を、押鍵されてから前記抽出処理にて抽出された第１の遅延時間が経過した時に発生する打弦音発生処理と、
押鍵されてから前記抽出処理にて抽出された第２の遅延時間が経過した時に棚板衝突音を発生する棚板衝突音発生処理と、
前記打弦音発生処理で生成された打弦音と、前記棚板衝突音発生処理で生成された棚板衝突音とを加算した楽音を発生する楽音発生処理と
をコンピュータで実行させることを特徴とする電子楽器の処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、アコースティックピアノの音色変化を再現する電子楽器および電子楽器の処理プログラムに関する。
【背景技術】
【０００２】
近年、実際のアコースティック楽器の音色変化をシミュレートする電子楽器が各種開発されている。例えば、特許文献１には、打弦により生じる打弦衝撃音とこれに続く弦振動音とを複数の異なる弦毎に対応させて記憶しておき、発音操作に応じて、発音操作された弦の打弦衝撃音とこれに続く弦振動音とを読み出す一方、発音操作されない他の弦の弦振動音を読み出し、これらを合成することによって、発音操作された弦が発する直接音と発音操作されない他の弦が発する共鳴音との音質の相違（音色変化）を得る技術が開示されている。
【０００３】
【特許文献１】特開２００４−３１７６１５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、上記特許文献１に開示の技術は、発音操作された弦が発する直接音と発音操作されない他の弦が発する共鳴音との音質の相違を得るだけなので、実際のアコースティックピアノにおいて押鍵時に生じる音色変化を再現することができない、という問題がある。
本発明は、事情に鑑みてなされたもので、アコースティックピアノの音色変化を再現することができる電子楽器および電子楽器の処理プログラムを提供することを目的としている。
【課題を解決するための手段】
【０００７】
請求項１に記載の発明では、押鍵強度に応じて変化する時間であって、押鍵されてから打弦音が発生するまでの第１の遅延時間と、押鍵強度に応じて変化する時間であって、押鍵されてから棚板衝突音が発生するまでの第２の遅延時間とを含む遅延特性を複数種記憶する遅延特性記憶手段と、前記遅延特性記憶手段に記憶される複数種の遅延特性のいずれかを選択する選択手段と、前記選択手段により前記遅延特性記憶手段から選択される遅延特性において、押鍵操作で生じる押鍵強度に対応した第１および第２の遅延時間を前記遅延特性記憶手段から抽出する抽出手段と、押鍵操作に応じた音高の打弦音を、押鍵されてから前記抽出手段により抽出された第１の遅延時間が経過した時に発生する打弦音発生手段と、押鍵されてから前記抽出手段により抽出された第２の遅延時間が経過した時に棚板衝突音を発生する棚板衝突音発生手段と、前記打弦音発生手段が生成する打弦音と、前記棚板衝突音発生手段が生成する棚板衝突音とを加算した楽音を発生する楽音発生手段とを具備することを特徴とする。
【００１０】
請求項２に記載の発明では、押鍵強度に応じて変化する時間であって、押鍵されてから打弦音が発生するまでの第１の遅延時間と、押鍵強度に応じて変化する時間であって、押鍵されてから棚板衝突音が発生するまでの第２の遅延時間とを含む遅延特性を複数種記憶しておき、これら複数種の遅延特性のいずれかを選択する選択処理と、前記選択処理にて選択された遅延特性において、押鍵操作で生じる押鍵強度に対応した第１および第２の遅延時間を抽出する抽出処理と、押鍵操作に応じた音高の打弦音を、押鍵されてから前記抽出処理にて抽出された第１の遅延時間が経過した時に発生する打弦音発生処理と、押鍵されてから前記抽出処理にて抽出された第２の遅延時間が経過した時に棚板衝突音を発生する棚板衝突音発生処理と、前記打弦音発生処理で生成された打弦音と、前記棚板衝突音発生処理で生成された棚板衝突音とを加算した楽音を発生する楽音発生処理とをコンピュータで実行させることを特徴とする。
【発明の効果】
【００１１】
本発明では、発音音量に応じて変化する時間であって、発音指示されてから打弦音が発生するまでの第１の遅延時間と、発音音量に応じて変化する時間であって、発音指示されてから棚板衝突音が発生するまでの第２の遅延時間とを記憶しておき、それら内から発音指示操作で指定される発音音量に対応した第１および第２の遅延時間を抽出すると、抽出された第１の遅延時間が経過した時に発音指示操作で指定される音高の打弦音と、抽出された第２の遅延時間が経過した時に棚板衝突音とを生成して混合した楽音を発生するので、棚板衝突音とハンマー打弦音との関係をシミュレートしてアコースティックピアノの音色変化を再現することができる。
【発明を実施するための最良の形態】
【００１２】
以下では、最初に本発明の原理を説明した後、その発明原理に基づく実施の形態について述べる。
［発明の原理］  
図１は、本発明の原理を説明するための図であり、アコースティックピアノのアクション機構の概略を示す構造図である。周知のように、アクション機構は、図１に図示する通り、押鍵操作に応じて揺動する鍵１００と、鍵１００の揺動により上昇するキャプスタンスクリュー１０１と、キャプスタンスクリュー１０１の上昇により回動するウィッペン１０２と、セットオフボタン１０４に当接するまでウィッペン１０２と共に回動上昇するジャック１０３と、ハンマーローラ１０６を介してジャック１０３により押上げられ、シャンクフレンジ１０５に対して回動するハンマーシャンク１０７とを備え、ハンマーシャンク１０７の回動によりハンマーフェルトが打弦するようになっている。
【００１３】
さて、このようなアクション機構を備えるアコースティックピアノでは、上記構造によりハンマーがピアノ弦を叩くことによってハンマー打弦音を発生させる他、押鍵時に鍵１００が棚板に衝突して副次的なノイズ音（以下、棚板衝突音と称す）を発生する。棚板衝突音は、一見、ハンマー打弦音に比べ無視出来る存在のようにも思えるが、この音がピアノの音色変化を特徴付ける大きな要因となっている。
【００１４】
棚板衝突音がピアノの音色変化を特徴付ける要因として、その発生時期が押鍵強度（発音音量）に依存して変化することが挙げられる。実際のアコースティックピアノでは、図２に図示するように、押鍵強度が弱い（例えば発音音量がピアノｐ）場合は、ハンマーの打弦タイミングよりも鍵１００の下部が棚板に衝突するタイミングが先行する結果、棚板衝突音がハンマー打弦音にマスクされ難くなり、棚板衝突音の存在が顕著になる。
【００１５】
また、押鍵強度が中程度（例えば発音音量がメゾフォルテｍｆ）の場合は、ハンマーの打弦タイミングと鍵１００の下部が棚板に衝突するタイミングとがほぼ同時になる。さらに、押鍵強度が強い（例えば発音音量がフォルテｆ）場合には、ハンマー打弦の後に鍵１００の下部が棚板に衝突するので、棚板衝突音はハンマー打弦音にマスクされる。本発明では、こうした棚板衝突音とハンマー打弦音との関係をシミュレートしてアコースティックピアノの音色変化を再現するものである。
【００１６】
［第１実施形態］
Ａ．構成
図３は、本発明の第１実施形態による電子楽器の全体構成を示すブロック図である。この図において、鍵盤１０は、押離鍵操作（演奏操作）に応じたキーオン／キーオフイベント、鍵番号およびベロシティ（押鍵強度）からなる演奏情報を発生する。スイッチ部１１は、楽器パネルに配設される各種操作スイッチから構成され、操作されるスイッチ種に対応したスイッチイベントを発生する。表示部１２は、ＬＣＤパネル等から構成され、ＣＰＵ１３から供給される表示制御信号に応じて楽器各部の設定状態や動作モード等を表示する。
【００１７】
ＣＰＵ１３は、スイッチ部１１から供給されるスイッチイベントに基づき楽器各部の動作状態を設定したり、鍵盤１０から供給される演奏情報に応じたコマンド（例えば発音を指示するノートオンコマンドや消音を指示するノートオフコマンド等）を生成して音源１６に送出する。本発明の要旨に係わるＣＰＵ１４の処理については追って述べる。ＲＯＭ１４は、プログラムエリアおよびデータエリアを備える。ＲＯＭ１４のプログラムエリアには、ＣＰＵ１３により実行される各種制御プログラムが格納される。各種制御プログラムには、後述するメインルーチンが含まれる。
【００１８】
ＲＯＭ１４のデータエリアには、遅延時間テーブルＴＢＬが格納される。遅延時間テーブルＴＢＬとは、上述した棚板衝突音とハンマー打弦音との関係をシミュレートするためのテーブルである。具体的には、図４に図示する通り、押鍵強度（ベロシティ）に応じて、楽音遅延時間Ｔ１および衝突遅延時間Ｔ２を読み出すテーブルである。楽音遅延時間Ｔ１とは、押鍵し始めてから実際にハンマー打弦音が発生するまでの時間である。衝突遅延時間Ｔ２とは、押鍵し始めてから実際に棚板衝突音が発生するまでの時間である。
【００１９】
したがって、上述した発明の原理で説明した通り、押鍵強度が弱い（例えば発音音量がピアノｐ）場合には、ハンマーの打弦タイミングよりも鍵下部が棚板に衝突するタイミングが先行するので、遅延時間テーブルＴＢＬから読み出される楽音遅延時間Ｔ１と衝突遅延時間Ｔ２との関係はＴ１＞Ｔ２となる。また、押鍵強度が中程度（例えば発音音量がメゾフォルテｍｆ）の場合には、ハンマーの打弦タイミングと鍵下部が棚板に衝突するタイミングとがほぼ同時になるので、遅延時間テーブルＴＢＬから読み出される楽音遅延時間Ｔ１と衝突遅延時間Ｔ２との関係はＴ１＝Ｔ２になる。さらに、押鍵強度が強い（例えば発音音量がフォルテｆ）場合には、ハンマーによる打弦が行われた後に鍵下部が棚板に衝突するので、遅延時間テーブルＴＢＬから読み出される楽音遅延時間Ｔ１と衝突遅延時間Ｔ２との関係はＴ１＜Ｔ２になる。
【００２０】
次に、再び図１を参照して実施形態の構成について説明を進める。図１において、ＲＡＭ１５は、ＣＰＵ１３のワークエリアとして設けられ、各種レジスタやフラグデータを一時記憶する。音源１６は、周知の波形メモリ読み出し方式にて構成される。音源１６の内部に備える波形メモリには、ハンマー打弦音を発生させる楽音波形データがベロシティに対応付けて複数種格納される共に、棚板衝突音を発生させる衝突波形データが格納される。
【００２１】
音源１６は、ＣＰＵ１３から供給されるベロシティに応じて遅延時間テーブルＴＢＬから読み出される楽音遅延時間Ｔ１が経過した時点に、当該ベロシティに対応して選択される楽音波形データからハンマー打弦音を生成する一方、当該ベロシティに応じて遅延時間テーブルＴＢＬから読み出される衝突遅延時間Ｔ２が経過した時点に、衝突波形データから棚板衝突音を生成し、生成されたハンマー打弦音と棚板衝突音とを加算して出力する。本発明の要旨に係わる音源１６の処理については追って詳述する。サウンドシステム１７は、音源１６の出力をアナログ波形信号に変換した後、このアナログ波形信号から不要ノイズを除去する等のフィルタリングを施してからレベル増幅してスピーカから発音させる。
【００２２】
Ｂ．動作
次に、図５〜図８を参照して上記構成による第１実施形態の動作について説明する。以下では、最初にＣＰＵ１３が実行するメインルーチンの動作を説明した後、音源１６が実行する音源処理の動作について説明する。
【００２３】
（１）メインルーチンの動作
電源スイッチ操作によりパワーオンされると、ＣＰＵ１３は図５に図示するメインルーチンを実行してステップＳＡ１に処理を進め、ＲＡＭ１５に格納される各種レジスタやフラグをリセットしたり初期値をセットするイニシャライズを行う。また、このステップＳＡ１では、音源１６に対して各種レジスタやフラグ類を初期化するよう指示する。そして、イニシャライズが完了すると、ＣＰＵ１０はステップＳＡ２に処理を進め、鍵盤１０が発生する演奏情報に基づきキー変化を判別する。
【００２４】
鍵操作が行われず、鍵盤１０にキー変化が無ければ、ステップＳＡ２のキー変化判別を繰り返す。そして、鍵盤１０のいずれかの鍵が押鍵され、キーオンイベントが発生したとする。そうすると、ステップＳＡ３に進み、押鍵操作に応じて発生する演奏情報中の鍵番号をレジスタＮＯＴＥにストアする。次いで、ステップＳＡ４では、押鍵操作に応じて発生する演奏情報中のベロシティをレジスタＶＥＬにストアする。続いて、ステップＳＡ５では、レジスタＮＯＴＥに格納された鍵番号と、レジスタＶＥＬに格納されたベロシティとに基づきノートオンコマンドを作成する。次いで、ステップＳＡ６では、作成したノートオンコマンドを音源１６に送付した後、上述したステップＳＡ２に処理を戻す。
【００２５】
そして、押鍵中にあるいずれかの鍵が離鍵され、キーオンイベントが発生したとする。そうすると、ステップＳＡ７に進み、離鍵操作に応じて発生する演奏情報中の鍵番号をレジスタＮＯＴＥにストアする。次いで、ステップＳＡ８では、レジスタＶＥＬをゼロリセットする。続いて、ステップＳＡ９では、レジスタＮＯＴＥの離鍵された鍵の鍵番号と、ゼロリセットされたレジスタＶＥＬとに基づきノートオフコマンドを作成する。そして、ステップＳＡ６に進み、作成したノートオフコマンドを音源１６に送付した後、上述したステップＳＡ２に処理を戻し、キー変化を判別する状態に復帰する。
【００２６】
（２）音源処理の動作  
次に、図６〜図８を参照して音源１６が実行する音源処理の動作を説明する。音源１６は、電源投入に応じて図６に図示する音源処理を実行してステップＳＢ１に処理を進め、コマンド受信の有無を判断する。以下、ＣＰＵ１３からコマンドを受信した場合と、コマンドを受信していない場合とに分けて動作を説明する。
【００２７】
＜コマンドを受信した場合＞
ＣＰＵ１３からコマンドを受信すると、上記ステップＳＢ１の判断結果が「ＹＥＳ」になり、ステップＳＢ２に進む。ステップＳＢ２では、受信したコマンドがノートオンコマンドであるか否かを判断する。
【００２８】
ａ．ノートオンコマンドを受信した場合
この場合、ステップＳＢ２の判断結果が「ＹＥＳ」になり、ステップＳＢ３に進む。ステップＳＢ３では、ＣＰＵ１３から受信したノートオンコマンド中のベロシティＶＥＬに対応した楽音波形データを選択する。続いて、ステップＳＢ４では、ＣＰＵ１３から受信したノートオンコマンド中のベロシティＶＥＬに応じて、ＲＯＭ１４のデータエリアに格納される遅延時間テーブルＴＢＬから楽音遅延時間Ｔ１および衝突遅延時間Ｔ２を読み出す。なお、前述したように、楽音遅延時間Ｔ１は押鍵し始めてから実際にハンマー打弦音が発生するまでの時間を指し、一方、衝突遅延時間Ｔ２は押鍵し始めてから実際に棚板衝突音が発生するまでの時間を指す。
【００２９】
次いで、ステップＳＢ５では、ＣＰＵ１３から受信したノートオンコマンド中の鍵番号ＮＯＴＥに基づき、上記ステップＳＢ３にて選択した楽音波形データの読み出し速度を決定する。そして、ステップＳＢ６に進み、タイマカウントを開始する。これにより、音源１６では、図示されていないタイマインタラプト処理を実行してタイマクロックを発生する。続いて、ステップＳＢ７では、フラグＳＴＦ１、ＳＴＦ２をそれぞれゼロリセットした後、上述したステップＳＢ１に処理を戻す。
【００３０】
なお、フラグＳＴＦ１は「１」の場合に楽音波形データが読み出されている状態（以下、楽音波形データ読み出し状態と称す）を表し、「０」の場合に楽音波形データの読み出しが停止している状態（以下、楽音波形データ読み出し停止状態と称す）を表す。また、フラグＳＴＦ２は「１」の場合に衝突波形データが読み出されている状態（以下、衝突波形データ読み出し状態と称す）を表し、「０」の場合に衝突波形データの読み出しが停止している状態（以下、衝突波形データ読み出し停止状態と称す）を表す。
【００３１】
ｂ．ノートオフコマンドを受信した場合
この場合、ステップＳＢ８の判断結果が「ＹＥＳ」になり、ステップＳＢ９に進む。ステップＳＢ９では、生成中の楽音に乗算するエンベロープをリリース波形に変更する。この後、ステップＳＢ１０に進み、フラグＲＦに「１」をセットしてリリース状態であることを表した後、上述したステップＳＢ１に処理に戻す。
【００３２】
＜コマンドを受信していない場合＞
一方、ＣＰＵ１３からコマンドを受信していなければ、上述したステップＳＢ１の判断結果が「ＮＯ」となり、図７に図示するステップＳＢ１１に処理を進める。ステップＳＢ１１では、最小単位時間が経過したか否かを判断する。最小単位時間とは、タイマクロック１周期分の時間を指す。最小単位時間が経過していなければ、ここでの判断結果は「ＮＯ」となり、図６に図示するステップＳＢ１に処理を戻す。
【００３３】
これに対し、最小単位時間が経過すると、上記ステップＳＢ１１の判断結果は「ＹＥＳ」になり、ステップＳＢ１２に進む。ステップＳＢ１２では、フラグＳＴＦ１が「０」、すなわち楽音波形データ読み出し停止状態であるか否かを判断する。楽音波形データ読み出し状態（フラグＳＴＦ１が「１」）ならば、判断結果は「ＮＯ」になり、後述のステップＳＢ１８に進む。
【００３４】
一方、楽音波形データ読み出し停止状態であると、上記ステップＳＢ１２の判断結果は「ＹＥＳ」になり、ステップＳＢ１３に進む。ステップＳＢ１３では、前述したステップＳＢ４（図６参照）において遅延時間テーブルＴＢＬから読み出した楽音遅延時間Ｔ１をデクリメントする。次いで、ステップＳＢ１４では、デクリメントされた楽音遅延時間Ｔ１が「０」、すなわちハンマー打弦音の発音タイミングに達したかどうかを判断する。ハンマー打弦音の発音タイミングに達していなければ、判断結果は「ＮＯ」になり、後述するステップＳＢ１８に進む。
【００３５】
これに対し、ハンマー打弦音の発音タイミングに達すると、上記ステップＳＢ１４の判断結果が「ＹＥＳ」になり、ステップＳＢ１５に進み、楽音波形データの読み出しを開始する。そして、ステップＳＢ１６では、読み出された楽音波形データに乗算するエンベロープ波形をスタートさせる。なお、エンベロープ波形は、公知のＡＤＳＲ制御が施される。続いて、ステップＳＢ１７では、フラグＳＴＦ１に「１」をセットして楽音波形データ読み出し状態に設定する。
【００３６】
そして、ステップＳＢ１８に進み、フラグＳＴＦ２が「０」、すなわち衝突波形データ読み出し停止状態であるか否かを判断する。衝突波形データ読み出し停止状態ならば、判断結果は「ＹＥＳ」になり、ステップＳＢ１９に進む。ステップＳＢ１９では、前述したステップＳＢ４（図６参照）において遅延時間テーブルＴＢＬから読み出した衝突遅延時間Ｔ２をデクリメントする。続いて、ステップＳＢ２０では、デクリメントされた衝突遅延時間Ｔ２が「０」、つまり棚板衝突音の発音タイミングに達したかどうかを判断する。棚板衝突音の発音タイミングに達していなければ、判断結果は「ＮＯ」になり、後述のステップＳＢ２３（図８参照）に進む。
【００３７】
一方、衝突遅延時間Ｔ２が経過して棚板衝突音の発音タイミングに達すると、上記ステップＳＢ２０の判断結果は「ＹＥＳ」になり、ステップＳＢ２１に進み、衝突波形データの読み出しを開始させる。そして、ステップＳＢ２２では、フラグＳＴＦ２に「１」をセットして衝突波形データ読み出し状態に設定した後、前述したステップＳＢ１（図６参照）に処理を戻す。
【００３８】
さて、衝突波形データ読み出し状態（フラグＳＴＦ２が「１」）であると、上記ステップＳＢ１８の判断結果が「ＮＯ」になり、図８に図示するステップＳＢ２３に処理を進める。ステップＳＢ２３では、楽音波形データ読み出し状態（フラグＳＴＦ１が「１」）であるか否かを判断する。楽音波形データ読み出し状態ならば、判断結果は「ＹＥＳ」になり、ステップＳＢ２４に進み、楽音波形データの読み出しを進める。次いで、ステップＳＢ２５では、読み出された楽音波形データにエンベロープ波形を乗算する。
【００３９】
続いて、ステップＳＢ２６では、フラグＲＦが「１」であるか否か、つまりノートオフコマンドによりリリース状態に設定されたかどうかを判断する。リリース状態に設定されていなければ、判断結果は「ＮＯ」になり、後述のステップＳＢ３０に処理を進める。一方、リリース状態ならば、判断結果は「ＹＥＳ」になり、次のステップＳＢ２７に進む。
【００４０】
ステップＳＢ２７では、リリース状態下のエンベロープレベルが「０」に達したか否かを判断する。エンベロープレベルが「０」に達していなければ、判断結果は「ＮＯ」になり、前述したステップＳＢ１（図６参照）に処理を戻す。一方、エンベロープレベルが「０」に達すると、判断結果は「ＹＥＳ」になり、ステップＳＢ２８に進む。そして、ステップＳＢ２８〜ＳＢ２９では、フラグＳＴＦ１、フラグＳＴＦ２およびフラグＲＦをそれぞれゼロリセットした後、前述したステップＳＢ１（図６参照）に処理を戻す。
【００４１】
これに対し、楽音波形データ読み出し停止状態（フラグＳＴＦ１が「０」）であると、上記ステップＳＢ２３の判断結果が「ＹＥＳ」になり、ステップＳＢ３０に進む。ステップＳＢ３０では、衝突波形データ読み出し状態（フラグＳＴＦ２が「１」）であるか否かを判断する。衝突波形データ読み出し停止状態であると、判断結果は「ＮＯ」になり、後述のステップＳＢ３３に進む。
【００４２】
一方、衝突波形データ読み出し状態ならば、上記ステップＳＢ３０の判断結果が「ＹＥＳ」になり、ステップＳＢ３１に進み、衝突波形データの読み出しを進める。続いて、ステップＳＢ３２では、読み出された衝突波形データと、上記ステップＳＢ２５にてエンベロープ乗算された楽音波形データとを加算する。そして、ステップＳＢ３３に進み、フラグＳＴＦ１またはフラグＳＴＦ２のいずれかが「１」、すなわち楽音波形データあるいは衝突波形データのいずれかが読み出し状態であるかどうかを判断する。
【００４３】
楽音波形データおよび衝突波形データが共に読み出し停止状態ならば、判断結果は「ＮＯ」になり、図６に図示するステップＳＢ１に処理を戻す。これに対し、楽音波形データあるいは衝突波形データのいずれかが読み出し状態であると、上記ステップＳＢ３３の判断結果が「ＹＥＳ」になり、ステップＳＢ３４に進む。ステップＳＢ３４では、上記ステップＳＢ３２において加算された加算波形を、ベロシティＶＥＬに応じてレベル制御する。続いて、ステップＳＢ３５では、このレベル制御された加算波形をサウンドシステム１７に出力した後、図６に図示するステップＳＢ１に処理を戻す。
【００４４】
以上のように、本実施形態では、ベロシティに応じて遅延時間テーブルＴＢＬから読み出される楽音遅延時間Ｔ１が経過した時に、当該ベロシティに対応して選択される楽音波形データからハンマー打弦音を生成する一方、当該ベロシティに応じて遅延時間テーブルＴＢＬから読み出される衝突遅延時間Ｔ２が経過した時点に、衝突波形データから棚板衝突音を生成し、生成されたハンマー打弦音と棚板衝突音とを加算して出力するので、棚板衝突音とハンマー打弦音との関係をシミュレートしてアコースティックピアノの音色変化を再現し得るようになる。
【００４５】
［第２実施形態］
次に、図９〜図１１を参照して第２実施形態について説明する。第２実施形態が上述の第１実施形態と相違する点は、遅延特性が異なる複数の遅延時間テーブルＴＢＬをＲＯＭ１４のデータエリアに設け、それらの内から楽音形成に使用するものをユーザが任意に選択可能にしたことにある。
【００４６】
第２実施形態による遅延時間テーブルＴＢＬの一例を図９に図示する。図９は、楽音遅延時間Ｔ１を読み出すハンマー打弦音の遅延特性および衝突遅延時間Ｔ２を読み出す棚板衝突音の遅延特性を備える第１の遅延時間テーブルＴＢＬと、楽音遅延時間Ｔ１を読み出すハンマー打弦音の遅延特性および衝突遅延時間Ｔ２’を読み出す棚板衝突音の遅延特性を備える第２の遅延時間テーブルＴＢＬとを重ねて１つのテーブルとして表現している。
【００４７】
第２実施形態では、複数の遅延時間テーブルＴＢＬのいずれかを選択する時間設定スイッチをスイッチ部１１に備える。また、この時間設定スイッチの操作に応じて、ＣＰＵ１３が遅延時間テーブルＴＢＬを選択する時間設定スイッチ処理を、上述した第１実施形態のメインルーチン（図５参照）中のステップＳＡ１とステップＳＡ２との間に設ける。図１０は、第２実施形態による時間設定スイッチ処理の動作を示すフローチャートである。
【００４８】
この図に示すように、時間設定スイッチの操作に応じてメインルーチンから本処理がコールされると、ＣＰＵ１３は、図１０に図示するステップＳＣ１に進み、時間設定スイッチの操作で設定されるテーブル選択番号をレジスタＴＡＢＬＥにストアする。次いで、ステップＳＣ２にでは、レジスタＴＡＢＬＥにストアされたテーブル選択番号を含むテーブルコマンドを作成し、続くステップＳＣ３では、その作成されたテーブルコマンドを音源１６に送付して本処理を終える。
【００４９】
一方、音源１６では、図１１に図示する音源処理を実行する。上述した第１実施形態と同様、先ずステップＳＤ１に処理を進め、コマンド受信の有無を判断する。ＣＰＵ１３からコマンドを受信していない場合には、ステップＳＤ１の判断結果が「ＮＯ」となり、第１実施形態と同様、図７に図示するステップＳＢ１１以降を実行する。これに対し、ＣＰＵ１３からコマンドを受信すると、ステップＳＤ１の判断結果が「ＹＥＳ」になり、ステップＳＤ２に進む。
【００５０】
ステップＳＤ２では、ＣＰＵ１３から受信したコマンドがテーブルコマンドであるか否かを判断する。受信したコマンドがテーブルコマンドでなければ、判断結果は「ＮＯ」となり、第１実施形態のステップＳＢ２（図６参照）に進む。受信したコマンドがテーブルコマンドならば、判断結果が「ＹＥＳ」となり、ステップＳＤ３に進む。ステップＳＤ３では、受信したテーブルコマンドに含まれるテーブル選択番号に従って使用する遅延時間テーブルＴＢＬを指定した後、上記ステップＳＤ１に処理を戻す。これにより、音源１６では、第１実施形態と同様、ステップＳＢ４（図６参照）において、指定された遅延時間テーブルＴＢＬを用いて、ベロシティＶＥＬに対応した楽音遅延時間Ｔ１および衝突遅延時間Ｔ２を読み出すことになる。
【００５１】
このように、第２実施形態では、遅延特性が異なる複数の遅延時間テーブルＴＢＬをＲＯＭ１４のデータエリアに設け、それらの内から楽音形成に使用するものをユーザが任意に選択可能にするので、棚板衝突音とハンマー打弦音との関係をシミュレートしてアコースティックピアノの音色変化を、演奏者の好みに応じて再現させることができる。
【図面の簡単な説明】
【００５２】
【図１】図１は、アコースティックピアノのアクション機構の概略を示す構造図である。
【図２】本発明の概要を説明するための図である。
【図３】第１実施形態の構成を示すブロック図である。
【図４】遅延時間テーブルＴＢＬの遅延特性の一例を示す図である。
【図５】メインルーチンの動作を示すフローチャートである。
【図６】音源処理の動作を示すフローチャートである。
【図７】音源処理の動作を示すフローチャートである。
【図８】音源処理の動作を示すフローチャートである。
【図９】第２実施形態による遅延時間テーブルＴＢＬの一例を示す図である。
【図１０】第２実施形態による時間設定スイッチ処理の動作を示すフローチャートである。
【図１１】第２実施形態による音源処理の動作を示すフローチャートである。
【符号の説明】
【００５３】
１０  鍵盤
１１  スイッチ部
１２  表示部
１３  ＣＰＵ
１４  ＲＯＭ
１５  ＲＡＭ
１６  音源
１７  サウンドシステム
【図１】
0004636272.tif 000002
【図２】
0004636272.tif 000003
【図３】
0004636272.tif 000004
【図４】
0004636272.tif 000005
【図５】
0004636272.tif 000006
【図６】
0004636272.tif 000007
【図７】
0004636272.tif 000008
【図８】
0004636272.tif 000009
【図９】
0004636272.tif 000010
【図１０】
0004636272.tif 000011
【図１１】
0004636272.tif 000012