(57)【要約】   【課題】  ダンパペダルの操作に応じた適切な共鳴音を発生させる。  【解決手段】  共鳴音生成回路２８は、時間軸上の一連の楽音波形データと、第１のインパルス応答データに含まれる第１のインパルス応答係数とを積和演算する畳み込み演算回路４１を有する。畳み込み演算回路４１は、楽音波形データを遅延させる遅延回路５１、第１のインパルス応答係数と楽音波形データとを乗算する乗算回路５２および乗算回路５２の出力を加算する加算回路５４を含む。ＣＰＵ１４は、ダンパペダルの操作履歴に基づいて、畳み込み演算回路４１において実行すべき積和演算の段数を示す積和演算数を算出して、畳み込み演算手段に出力する。【選択図】  図４
2010117536.tif 000002
【特許請求の範囲】
【請求項１】
共鳴音を、楽音波形データに付加する共鳴音付加装置であって、
複数の第１のインパルス応答係数からなる第１のインパルス応答データを記憶したインパルス応答データ記憶手段と、
前記記憶手段に格納された第１のインパルス応答データを読み出して、時間軸上の一連の楽音波形データと、前記第１のインパルス応答データに含まれる第１のインパルス応答係数とで、所定回数の積和演算を実行する第１の積和演算手段を有する共鳴音生成手段と、
少なくともオン、オフの何れかの状態をとる操作子の操作履歴に基づいて、前記共鳴音生成手段において実行すべき積和演算の回数を示す積和演算数を算出し、当該積和演算数を前記共鳴音生成手段に出力する制御手段と、を備え、
前記共鳴音生成手段の第１の積和演算手段において、前記積和演算数に基づいて、楽音波形データと第１のインパルス応答係数との積和演算が実行されることを特徴とする共鳴音付加装置。
【請求項２】
前記制御手段が、現在オン状態の前記操作子が、現在に至るまでオン状態を継続していた時間間隔を算出し、当該時間間隔に含まれる楽音波形データの数に基づき、前記積和演算数を算出し、
前記共鳴音生成手段の第１の積和演算手段において、現在の楽音波形データおよび前記時間間隔に含まれる時間だけ遅延された楽音波形データと、対応するインパルス応答係数との積和演算が実行されることを特徴とする請求項１に記載の共鳴音付加装置。
【請求項３】
前記操作子が、オン状態において、その押下量を出力可能に構成され、
前記第１の積和演算手段から出力されたデータのレベルを調整する調整手段を備え、
前記制御手段が、前記押下量が大きくなるのにしたがって、データのレベルが大きくなるように前記調整手段のレベルを調整することを特徴とする請求項１または２に記載の共鳴音付加装置。
【請求項４】
前記インパルス応答データ記憶手段が、複数の第２のインパルス応答係数からなる第２のインパルス応答データを記憶し、
前記共鳴音生成手段が、前記記憶手段に記憶された前記第２のインパルス応答係数を読み出して、前記楽音波形データと、前記第２のインパルス応答データに含まれる第２のインパルス応答係数とを積和演算する第２の積和演算手段を有することを特徴とする請求項１または２に記載の共鳴音付加装置。
【請求項５】
前記第２の積和演算手段における積和演算数は、前記第１の積和演算手段における最大の積和演算数より小さいことを特徴とする請求項４に記載の共鳴音付加装置。
【請求項６】
前記第１のインパルス応答係数が、ピアノの弦共鳴音についてのインパルス応答特性を表す時間軸上の値であり、前記第２のインパルス応答係数が、ピアノの箱鳴り音についてのインパルス応答特性を表す時間軸上の値であることを特徴とする請求項４または５に記載の共鳴音付加装置。
【請求項７】
請求項１ないし６の何れか一項に記載の共鳴音付加装置と、
鍵盤と、
前記鍵盤を構成する鍵のうち、押鍵された鍵の音高の楽音波形データを生成する発音手段と、を備え、
前記操作子が、ダンパペダルであることを特徴とする電子楽器。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、楽音に共鳴音を付加する共鳴音付加装置および電子楽器に関する。
【背景技術】
【０００２】
電子楽器にダンパペダルを接続し、ダンパペダルを踏み込むことにより、楽音を変更させるような技術が従前から知られている。
【０００３】
たとえば、共鳴音生成装置（共鳴音付加装置）は、ディジタルの楽音波形データを受け入れて、楽音波形データにディジタルフィルタによるフィルタ処理を施すのが一般的である。フィルタ処理においては、ＦＩＲ（有限インパルス応答：Finite Impulse Response）フィルタ或いはＩＩＲ（無限インパルス応答：Infinite Impulse
Response）フィルタが利用される。ダンパペダルを踏み込みむことにより、共鳴音生成装置を作動させて共鳴音でータを生成し、これを楽音波形データに付加することにより、ダンパペダルの踏み込みにより残響が増大したような楽音を発生することができる。
【０００４】
ＦＩＲフィルタを利用する場合には、入力された楽音信号のデータｘ（ｎ−ｋ）（ｋ＝０，１，２，・・・，ｎ−１）と、音楽ホールの残響特性などから得たインパルス応答ａ（ｋ）を畳み込み演算することで、共鳴音のデータｙｏｕｔ（ｎ）＝Σｘ（ｎ−ｋ）×ａ（ｋ）を得ることができる。
【０００５】
また、特許文献１には、ペダルの踏み込み量にしたがって、楽音波形データのエンベロープを変更することで、特にハーフペダルのときの楽音を発生させることができる電子楽器が開示されている。
【０００６】
特許文献２には、楽音波形に対応する波形データＳＷＤに基づいて共鳴音データＲＷＤを生成する共鳴音作成装置を備え、ダンパペダルの踏み込みに伴って、ダンパペダル踏み込み量の検知出力が最小値０から最大値１に向けていく過程において波形データＳＷＤが乗算器により振幅レベルが減少するように制御されるとともに、共鳴音作成装置からの共鳴音データＲＷＤが、乗算器により振幅レベルが増加するように制御されることが開示されている。
【０００７】
特に、ピアノの共鳴音は複雑であり、ピアノの弦の共鳴音を生成するための技術が提案されている。
【０００８】
特許文献３には、音名ごとの倍音に相当する共振周波数を有するディジタルフィルタである複数の弦共鳴回路をグルーピングした弦共鳴回路群を有し、各弦共鳴回路の出力を畳み込み演算することでピアノの弦の共鳴音に類似する共鳴音を生成する技術が提案されている。
【特許文献１】特開平７−８４５７４号公報
【特許文献２】特許第２６９２６７２号公報
【特許文献３】特開２００７−１９３１２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
特許文献１のように、楽音波形データのエンベロープを変更するだけでは、ピアノのダンパペダルを踏み込んだときの残響音を含む共鳴音を、電子楽器で再現することができない。
【００１０】
また、特許文献２に提案された技術においては、いわゆるクロスフェードにより共鳴音との混合比を変更しているが、共鳴音自体は変わらないため、ペダルの踏み込みに伴う共鳴音の変化に乏しいという問題点があった。
【００１１】
また、特許文献３に提案された技術においては、鍵域ごとに複数の弦共鳴回路を備えるため、大規模な回路を要するという問題点があった。また、ピアノの構造を考慮した共鳴音の生成をしているわけではないため、回路規模が大きい割りには、十分に共鳴音を再現することができないという問題点があった。
【００１２】
さらに、実際のピアノ演奏においては、演奏中にダンパペダルがいったん戻され、ペダルがオフの状態となり、その直後にさらに、再度ダンパペダルが踏み込まれる場合がある。しかしながら、インパルス応答係数を用いた畳み込み演算では、過去の波形データとインパルス応答係数との乗算結果が累算されて出力されるため、上記ダンパペダルのオフおよびオンがあっても、ダンパペダルがいったんオフにされた以前の波形データに基づく共鳴音が含まれる可能性がある。
【００１３】
本発明は、ダンパペダルの操作に応じた適切な共鳴音を発生させることができる共鳴音付加装置および当該共鳴音付加装置を備えた電子楽器を提供することを目的とする。
【課題を解決するための手段】
【００１４】
本発明の目的は、共鳴音を、楽音波形データに付加する共鳴音付加装置であって、
複数の第１のインパルス応答係数からなる第１のインパルス応答データを記憶したインパルス応答データ記憶手段と、
前記記憶手段に格納された第１のインパルス応答データを読み出して、時間軸上の一連の楽音波形データと、前記第１のインパルス応答データに含まれる第１のインパルス応答係数とで、所定回数の積和演算を実行する第１の積和演算手段を有する共鳴音生成手段と、
少なくともオン、オフの何れかの状態をとる操作子の操作履歴に基づいて、前記共鳴音生成手段において実行すべき積和演算の回数を示す積和演算数を算出し、当該積和演算数を前記共鳴音生成手段に出力する制御手段と、を備え、
前記共鳴音生成手段の第１の積和演算手段において、前記積和演算数に基づいて、楽音波形データと第１のインパルス応答係数との積和演算が実行されることを特徴とする共鳴音付加装置により達成される。
【００１５】
好ましい実施態様においては、前記制御手段が、現在オン状態の前記操作子が、現在に至るまでオン状態を継続していた時間間隔を算出し、当該時間間隔に含まれる楽音波形データの数に基づき、前記積和演算数を算出し、
前記共鳴音生成手段の第１の積和演算手段において、現在の楽音波形データおよび前記時間間隔に含まれる時間だけ遅延された楽音波形データと、対応するインパルス応答係数との積和演算が実行される。
【００１６】
別の好ましい実施態様においては、前記操作子が、オン状態において、その押下量を出力可能に構成され、
前記第１の積和演算手段から出力されたデータのレベルを調整する調整手段を備え、
前記制御手段が、前記押下量が大きくなるのにしたがって、データのレベルが大きくなるように前記調整手段のレベルを調整する。
【００１７】
さらに別の好ましい実施態様においては、前記インパルス応答データ記憶手段が、複数の第２のインパルス応答係数からなる第２のインパルス応答データを記憶し、
前記共鳴音生成手段が、前記記憶手段に記憶された前記第２のインパルス応答係数を読み出して、前記楽音波形データと、前記第２のインパルス応答データに含まれる第２のインパルス応答係数とを積和演算する第２の積和演算手段を有する。
【００１８】
また、好ましい実施態様においては、前記第２の積和演算手段における積和演算数は、前記第１の積和演算手段における最大の積和演算数より小さい。
【００１９】
より好ましい実施態様においては、前記第１のインパルス応答係数が、ピアノの弦共鳴音についてのインパルス応答特性を表す時間軸上の値であり、前記第２のインパルス応答係数が、ピアノの箱鳴り音についてのインパルス応答特性を表す時間軸上の値である。
【００２０】
また、本発明の目的は、上述した共鳴音付加装置と、
鍵盤と、
前記鍵盤を構成する鍵のうち、押鍵された鍵の音高の楽音波形データを生成する発音手段と、を備え、
前記操作子は、ダンパペダルを備えた電子楽器により達成される。
【発明の効果】
【００２１】
本発明によれば、適切に共鳴音を発生させることができる共鳴音付加装置および当該共鳴音付加装置を備えた電子楽器を提供することが可能となる。
【発明を実施するための最良の形態】
【００２２】
以下、添付図面を参照して、本発明の実施の形態について説明する。図１は、本発明の第１の実施の形態にかかる電子楽器の構成を示すブロックダイヤグラムである。
【００２３】
図１に示すように、本実施の形態にかかる電子楽器１０は、鍵盤１２、ＣＰＵ１４、ＲＯＭ１６、ＲＡＭ１８、楽音生成部２０、操作子群２２、ダンパペダル２４を有する。鍵盤１２、ＣＰＵ１４、ＲＯＭ１６、ＲＡＭ１８、楽音生成部２０および操作子群２２は、バス１９を介して接続される。楽音生成部２０は、発音回路２５、共鳴音付加回路２６および音響システム２７を有する。本実施の形態にかかる電子楽器１０は、ピアノ音色の楽音を生成するのに適しており、共鳴音付加回路２６も、ピアノの弦の共鳴音、および、ピアノの響板や反響板によるいわゆる箱鳴りに相当する共鳴音を生成するように構成されている。
【００２４】
鍵盤１２は、演奏者の押鍵操作に応じて、押鍵された鍵を特定する情報および押鍵された鍵のベロシティを示す情報をＣＰＵ１４に伝達することができる。
【００２５】
ＣＰＵ１４は、システム制御、押鍵された鍵に応じた音高の楽音波形データを生成するための楽音生成部２０の発音回路２５に与える種々の制御信号の生成、共鳴音付加回路２６に与える制御信号の生成などを実行する。ＲＯＭ１６は、楽音波形データを生成するためのプログラム、共鳴音データの生成のためのプログラムや、プログラムの実行の際に使用される定数を格納する。また、ＲＯＭ１６は、楽音生成部２０により生成される楽音波形データのもととなる波形データ、共鳴音付加回路２６にて用いられるインパルス応答データなどを記憶する。後述する波形データ記憶部３０およびインパルス応答データ記憶部３１はＲＯＭ１６に設けられる。ＲＡＭ１８は、プログラムの実行の過程で必要な変数、パラメータ、入力データ、出力データなどを一時的に記憶する。ＲＡＭ１８には、ダンパペダルの踏み込み状態を示すダンパペダル履歴データが記憶される。すなわち、後述するダンパペダル履歴記憶部３８は、ＲＡＭ１８中に設けられる。
【００２６】
本実施の形態において、ダンパペダル２４は、オン・オフのみではなくその中間の段階を示す信号を出力することができる。たとえば、本実施の形態においては、ダンパペダル２４は、縦方向（ペダルの回動軸と垂直方向）に複数のスイッチ（図示せず）が配置されている。ダンパペダル２４が踏み込まれるのにしたがって、複数のスイッチが順次オン状態となる。したがって、何れのスイッチがオン状態であるかを検出することにより、ペダルの踏み込み量を取得することができる。或いは、ダンパペダル２４は、その踏み込み量に応じて抵抗値が変更される可変抵抗値（図示せず）を備え、抵抗値に応じた信号を出力することができるように構成しても良い。
【００２７】
図２は、本実施の形態にかかる発音回路、共鳴音付加回路およびこれらに関連する構成部材の例を示すブロックダイヤグラムである。図１および図２に示すように、発音回路２５は、ＣＰＵ１４から与えられた、発音すべき楽音の音色を示す音色情報、発音すべき音高を示す音高情報およびベロシティ情報に基づいて、波形データ記憶部３０に記憶された波形データを読み出し、所定の音色で、かつ、所定の音高の楽音波形データを出力する。上記音色情報、音高情報およびベロシティ情報が、第１の制御信号を構成する。
【００２８】
図３は、発音回路２５および発音回路２５に関連する構成部分をより詳細に示すブロックダイヤグラムである。図３に示すように、本実施の形態にかかる発音回路２５は、波形再生回路３５、エンベロープ生成回路３６および乗算回路３７を有する。
【００２９】
波形データ記憶部３０には、たとえば、ピアノ系の音色の波形データが記憶されている。本実施の形態においてはピアノ系の音色の波形データは、基本的に、ピアノの打弦による弦鳴り音がサンプリングされたものである。
【００３０】
波形再生回路３５は、波形データ記憶部３０に記憶された波形データから、ＣＰＵ１４から与えられる第１の制御信号に含まれる音色情報にしたがって、所定の種別の波形データを、音高情報にしたがって読み出す。また、エンベロープ生成回路３６は、ベロシティ情報にしたがったエンベロープデータを出力する。波形データとエンベロープデータとは、乗算回路３７において乗算され、楽音波形データが出力される。なお、発音回路２５から出力される楽音波形データは、単一の鍵を押鍵されたときの単一のデータだけではく、複数の鍵が押鍵されているときには、押鍵された複数の鍵の楽音波形データの合成データが、楽音波形データとして出力される。
【００３１】
第１の制御信号に含まれる音高情報およびベロシティ情報は、鍵盤１２からの信号に基づいて、ＣＰＵ１４により生成される。また、第１の制御信号に含まれる音色情報は、演奏者による操作子群２２に含まれる操作子を操作した情報に基づいて、ＣＰＵ１４により生成される。
【００３２】
図２に示すように、共鳴音付加回路２６は、共鳴音生成回路２８および加算回路２９を備える。共鳴音生成回路２６は、楽音波形データおよびインパルス応答データ記憶部３１から読み出されたインパルス応答データに基づいて、畳み込み演算を実行して共鳴音データを生成する。共鳴音データおよび楽音波形データは、加算回路２９において加算される。後述するように、本実施の形態においては、共鳴音生成回路２８は、２つの畳み込み演算回路を有し、第１群のインパルス応答係数と楽音波形データとを畳み込み演算した結果得られる第１の共鳴音データＹ、および、第２群のインパルス応答係数と楽音波形データとを畳み込み演算した結果得られる第２の共鳴音データＺが生成される。
【００３３】
音響システム２７は、Ｄ／Ａ変換器３２、増幅回路３３およびスピーカ３４を有し、加算回路２９から出力された合成データをアナログ信号に変換して、アナログ信号を増幅し、スピーカから放音する。
【００３４】
図４は、本実施の形態にかかる共鳴音生成回路および関連する構成部分をより詳細に示すブロックダイヤグラムである。図４に示すように、共鳴音生成回路２８は、畳み込み演算回路４１と、音量調節回路４２を有する。本実施の形態において、畳み込み演算回路４１は、楽音波形データに基づいて、２つの共鳴音データを生成することができる。すなわち、畳み込み演算回路４１は、実質的に２つの積和演算回路を有する。一方の積和演算回路（第１の積和演算回路）には、インパルス応答データ記憶部３１から第１群のインパルス応答係数（ａｉ）が与えられて、楽音波形データと、第１のインパルス応答係数（ａｉ）とで、後述する所定回数の積和演算（畳み込み演算）が実行され、第１の共鳴音データＹが生成される。また、他方の積和演算回路（第２の積和演算回路）には、インパルス応答データ記憶部３１から第２群のインパルス応答係数（ｂｉ）が与えられて、楽音波形データと、第２のインパルス応答係数（ｂｉ）とで、上記所定回数とは別の所定回数の積和演算（畳み込み演算）が実行され、第２の共鳴音データＺが生成される。
【００３５】
第１の共鳴音データは、弦の共鳴音に関する。また、第２の共鳴音データは、いわゆる箱鳴りに相当する共鳴音に関する。箱鳴りに相当する共鳴音は、ダンパペダル２４の状態（オン・オフ）にかかわらず一定の時間だけ存在し得る。その一方、弦の共鳴音はダンパペダル２４の状態により変化する。本実施の形態においては、ダンパペダル２４の状態をダンパペダル履歴記憶部３８に格納しておき、記憶されたダンパペダルの履歴データに基づいて、適切な弦の共鳴音を生成することができる。
【００３６】
図５は、本実施の形態にかかる畳み込み演算回路の例をより詳細に示す図である。図５に示すように、畳み込み演算回路４１は、楽音波形データＸを受け入れて、当該楽音波形データを順次遅延させる複数（Ｂ個）の遅延回路５１−１〜５１−Ｂと、楽音波形データおよび遅延回路５１により遅延された楽音波形データをそれぞれ受け入れて、楽音波形データのそれぞれと、第１群のインパルス応答係数中の対応するインパルス応答係数（ａｉ）とを乗算する複数（Ｂ＋１個）の乗算回路５２−０〜５２−Ｂと、乗算回路５２−０〜５２−Ｂの乗算結果を加算する加算回路５４と、楽音波形データおよび遅延回路５１により遅延された楽音波形データを受け入れて、楽音波形データのそれぞれと、第２群のインパルス応答係数中の対応するインパルス応答係数ｂｉとを乗算する複数（Ａ＋１個）の乗算回路５５−０〜５５−Ａと、乗算回路５５−０〜５５−Ａの乗算結果を加算する加算回路５６とを有している。なお、乗算回路５２−０〜５２−Ｂを、第１群の乗算回路とも称し、また、乗算回路５５−０〜５５−Ａを第２群の乗算回路とも称する。
【００３７】
遅延回路５１−１〜５１−Ｂ、第１群の乗算回路および加算回路５４によって、第１の積和演算回路が構成され、遅延回路５５−１〜５５−Ａ、第２群の乗算回路および加算回路５６によって第２の積和演算回路が構成される。
【００３８】
本実施の形態においては、Ｂ＋１＝１７６０００として、サンプリング周波数を４４ＫＨｚとした場合に、第１群の畳み込み演算回路において、最大で４秒分の楽音波形データとの畳み込み演算が可能である。また、本実施の形態においては、Ａ＋１＝４４０００として、第２群の畳み込み演算回路において、１秒分の楽音波形データとの畳み込み演算が可能である。
【００３９】
さらに、本実施の形態においては、第１の積和演算回路においては、ダンパペダル履歴データに基づいて、Ｂ＋１個の乗算回路５１−０〜５１−Ｂのうち、所定のｐ＋１個（ｐ≦Ｂ＋１）の乗算回路５１−０〜５１−ｐのみによる畳み込み演算が実行されるようになっている。本実施の形態にかかる第２の積和演算回路による畳み込み演算については後に詳述する。
【００４０】
図６は、本実施の形態にかかる電子楽器において実行される処理を概略的に示すフローチャートである。図６に示すように、電子楽器１０のＣＰＵ１４は、たとえば、ＲＡＭ１８に一時的に記憶された鍵盤１２の鍵のオン時刻およびオフ時刻を含む押鍵情報、ダンパペダル履歴データなどのクリアを含むイニシャライズ処理を行う（ステップ６０１）。ダンパペダル履歴データのクリアには、後述する積和演算数を示すパラメータｐのクリアも含まれる。
【００４１】
イニシャライズ処理（ステップ６０１）が終了すると、ＣＰＵ１４は、操作子群２２の各スイッチの操作を検出し、検出された操作にしたがった処理を実行するスイッチ処理を実行する（ステップ６０２）。
【００４２】
スイッチ処理においては、音色指定スイッチ（図示せず）の切り替えなどが検出される。スイッチ処理（ステップ６０２）で検出されたスイッチの状態にしたがって、音色情報などはＲＡＭ１８の所定の領域に格納される。また、ダンパペダル２４のオン、オフを含む踏み込み状態もスイッチ処理において検出され、ダンパペダル２４の踏み込み状態を示すデータが、ダンパペダル履歴データの一部としてＲＡＭ１８に格納される。
【００４３】
次いで、ＣＰＵ１４は、鍵盤１２の各鍵のオン・オフ状態を検出する(ステップ６０３)。新たにオンされた鍵については、オン状態となった時刻をＲＡＭ１８に格納する。本実施の形態においては、鍵は２つスイッチを有し、鍵の押下に伴って２つのスイッチが順次オンされるようになっている。したがって、ＣＰＵ１４は、各鍵について２つのスイッチのそれぞれのオン時刻をＲＡＭ１８に格納する。この２つのオン時刻の時間差に基づいて、いわゆるベロシティが算出される。また、ＣＰＵ１４は、新たにオフ状態となったスイッチについても、オフ状態となった時刻をＲＡＭ１８に格納する。
【００４４】
次に、ＣＰＵ１４は、ダンパペダルの状態にしたがって第１の積和演算回路における積和演算数を示すパラメータｐを決定するための処理（ダンパペダル処理６０４）を実行する。ダンパペダル処理６０４については後に詳述する。
【００４５】
次いで、ＣＰＵ１４は、押鍵された鍵にしたがって、所定の音高、音色およびベロシティで楽音信号データを生成させるための、第１の制御信号を楽音生成部２０の発音回路２５に出力する（ステップ６０５）。ステップ６０５の演奏処理において、発音回路２５は、ＣＰＵ１４から第１の制御信号を受理すると、音色情報にしたがった所定の波形データをＲＯＭ１６のデータエリアから、音高情報にしたがった速度で読み出し、かつ、ベロシティにしたがったレベルの楽音波形データを生成する。その後、ＣＰＵ１４は、その他、電子楽器１０を作動させるための他の必要な処理を実行して（ステップ６０６）、ステップ６０２に戻る。ステップ６０６で実行される処理には、たとえば、表示装置（図示せず）の画面上に表示すべき画像データを生成および表示するや、ＬＥＤ（図示せず）のオン・オフが含まれる。
【００４６】
図６（ｂ）は、サンプリング周期（本実施の形態においては、たとえば１／４４ミリ秒）ごとに実行されるフラグ処理を示すフローチャートである。サンプリング周期（１／４４ミリ秒）が経過すると（ステップ６１１）、ＣＰＵ１４は、ＲＡＭ１８に格納されたダンパペダル履歴データに含まれるパラメータ算出実行フラグをオンする。このパラメータ算出実行フラグは、以下に説明するダンパペダル処理において参照される。
【００４７】
次に、ダンパペダル処理（ステップ６０４）についてより詳細に説明する。図７は、本実施の形態にかかるダンパペダル処理の例をより詳細に示すフローチャートである。図７に示すように、ＣＰＵ１４は、ＲＡＭ１８のダンパペダル履歴データに含まれるパラメータ算出実行フラグを参照して、パラメータ算出実行フラグがオンであるか否かを判断する（ステップ７０１）。パラメータ算出実行フラグがオンであるとき（ステップ７０１でＹｅｓ）には、ＣＰＵ１４は、パラメータ算出実行フラグをオフにして（ステップ７０２）、積和演算数を示すパラメータｐに関するステップ７０３以降の処理を開始する。すなわち、ステップ７０３以降の処理は、サンプリング周期の経過ごとに実行されることになる。
【００４８】
ＣＰＵ１４は、ダンパペダル２４がオンか否かを判断する（ステップ７０３）。ダンパペダル２４の踏み込み状態を示すデータは、スイッチ処理（ステップ６０２）においてダンパペダル履歴データの一部としてＲＡＭ１８に記憶されている。したがって、ＣＰＵ１４は、ＲＡＭ１８に格納されたデータを参照すれば良い。ダンパペダルがオフ状態であった場合には（ステップ７０３でＮｏ）、ＣＰＵ１４は、積和演算数を示すパラメータｐを「０」にクリアして（ステップ７０４）、処理を終了する。積和演算数を示すパラメータｐは、第２の制御信号の部分として畳み込み演算回路４１に与えられるとともに、ＲＡＭ１８の所定の領域に格納される。
【００４９】
ステップ７０３でＹｅｓと判断された場合には、ＣＰＵ１４は、積和演算数を示すパラメータｐが、第１の積和演算回路における最大の積和演算数Ｂ（本実施の形態では、１７６０００）であるか否かを判断する（ステップ７０５）。ステップ７０５でＮｏと判断された場合には、ＣＰＵ１４は、積和演算数を示すパラメータｐをインクリメントする（ステップ７０６）。積和演算数を示すパラメータｐは、第２の制御信号の部分として畳み込み演算回路４１に与えられるとともに、ＲＡＭ１８の所定の領域に格納される。ステップ７０５でＹｅｓと判断された場合には、ＣＰＵ１４は処理を終了する。
【００５０】
ダンパペダル処理によれば、サンプリング周期ごとに、ダンパペダルがオン状態であれば、積和演算数の最大値に至るまで、積和演算数を示すパラメータｐがインクリメントされる。その一方、ダンパペダルがオフ状態となった時点で、パラメータｐは「０」にクリアされる。
【００５１】
積和演算数を示すパラメータｐを含む第２の制御信号にしたがった畳み込み演算回路４１の動作について説明する。本実施の形態にかかる畳み込み演算回路４１では、第１の積和演算回路により、弦の共鳴音のデータである第１の共鳴音データが生成される。第１の共鳴音データＹは、以下の式によって生成される。
【００５２】
【数１】
2010117536.tif 000003
ここに、ｘｎは、楽音波形データであり、ｘ０が最新のもの、ｎが大きくなるのにしたがってより古い時刻のデータとなる。ｐは、上述した積和演算数を示すパラメータであり、本実施の形態においては最大で１７６０００である。また、ａｎは、第１群のインパルス応答係数である。パラメータｐは、現時点でオン状態であるダンパペダルについて、直近にオンされた時刻と現時点との間の時間間隔に基づいている。すなわち、上記時間間隔が１．５秒であれば（つまり、１．５秒前にダンパペダルがオンされたのであれば）、ｐ＝６６０００となる。
【００５３】
また、畳み込み演算回路４１では、第２の積和演算回路により、箱鳴り音に相当する共鳴音のデータである第２の共鳴音データが生成される。第２の共鳴音データＺは、以下の式にしたがって生成される。
【００５４】
【数２】
2010117536.tif 000004
ここに、第１の共鳴音データと同様に、ｘｍは、楽音波形データであり、ｘ０が最新のもの、ｍが大きくなるのにしたがってより古い時刻のデータとなる。また、ｂｍは、第２群のインパルス応答係数である。本実施の形態においては、たとえば、Ａ＝４４０００であり、サンプリング周波数が４４ｋＨｚの楽音波形データの１秒分の残響音に相当する。
【００５５】
図８（ａ）、（ｂ）は、それぞれ、時間ごとのダンパペダル踏み込み量の例を示すグラフである。この例では、ダンパペダル２４は、オフ状態（０％）のほか、４段階の踏み込み量（２５％、５０％、７５％、１００％）を示すことができるようになっている。図８（ａ）の例では、現時点から３．７５秒過去の時点（時刻ｔ０）でダンパペダル２４がオフ状態からオン状態となり、その後現時点まで継続してオン状態となっている（符号８０１、８０２参照）。この場合には、積和演算数を示すパラメータｐ＝１６５０００となり、生成される第１の共鳴音でータは、楽音波形データの３．７５秒分の残響音に相当する。
【００５６】
図８（ｂ）の例では、現時点から３．７５秒過去の時点（時刻ｔ０）でダンパペダル２４がオン状態となったが、その後、現時点から１．７５秒過去の時点（時刻ｔ１）で、ダンパペダル２４はいったんオフ状態となっている（符号８１１、８１３参照）。その後、現時点から１．２５秒過去の時点（時刻ｔ２）で再度ダンパペダルはオン状態となり、現時点に至っている（符号８１２、８１４参照）。この場合には、現時点から１．２５秒過去の時点までの１．２５秒のダンパペダルのオン状態が有効となる。したがって、積和演算数を示すパラメータｐ＝５５０００となり、生成される第１の共鳴音でータは、楽音波形データの１．２５秒分の残響音に相当する。
【００５７】
畳み込み演算回路４１において生成された第２の共鳴音データＺは、そのまま加算回路２９に与えられる。その一方、第１の共鳴音データＹは、音量調整回路４２において、第３の制御信号にしたがって乗算されて、加算回路２９に与えられる。第３の制御信号には、ダンパペダル２４の踏み込み量が大きくなるのにしたがって、値が大きくなるような乗算係数が含まれる。ダンパペダル２４がオフ状態のときには、最低値（たとえば、０．１）、ダンパペダル２４が完全に踏み込まれた状態（１００％）のときには、最高値（たとえば、１．０）となっている。なお、ダンパペダル２４の踏み込み状態の変化により、第３の制御信号に含まれる乗算係数の急激な変化を避けるために、以下のような処理を実行しても良い。
【００５８】
図９は、本実施の形態にかかる乗算係数算出処理の例を示すフローチャートである。乗算係数算出処理は、たとえば、演奏処理（ステップ６０５）において実行される。図９に示すように、ＣＰＵ１４は、現時点でダンパペダル２４がオン状態であるか否かを判断する（ステップ９０１）。ダンパペダルがオン状態の場合（ステップ９０１でＹｅｓ）には、ＣＰＵ１４は、ダンパペダルの踏み込み量に変化があったか否かを判断する（ステップ９０２）。踏み込み量に変化があった場合（ステップ９０２でＹｅｓ）には、ＣＰＵ踏み込み量に応じた目標値を取得する。目標値は、たとえば、ダンパペダルの踏み込み量が、１００％、７５％、５０％、２５％のそれぞれで、１．０、０．７５、０．５、０．２５というように設定され、予めＲＯＭ１６に格納されている。
【００５９】
次いで、目標値と、乗算係数の現在値とが比較され、「目標値＞現在値」であった場合には（ステップ９０４でＹｅｓ）、ＣＰＵ１４は、現在値を所定の値ｓだけ増加させる（ステップ９０５）。また、「目標値＜現在値」であった場合には（ステップ９０６でＹｅｓ）、ＣＰＵ１４は、現在値を所定の値ｓだけ減少させる（ステップ９０７）。算出された現在値は、ＲＡＭ１８に格納される。
【００６０】
上述したように、音量調整回路４２によって、弦の共鳴音についての第１の共鳴音データＹを、ダンパペダル２４の踏み込み量にしたがった音量レベルとすることができる。
【００６１】
第１の実施の形態によれば、ダンパペダル２４の操作履歴に基づいて、第１の積和演算回路における積和演算の段数が決定され、所定数の乗算回路において、楽音波形データ或いは遅延された楽音波形データと対応する第１のインパルス応答係数とが乗算され、乗算結果が加算される。これにより、ダンパペダル２４の過去の操作状況を考慮した積和演算が実現できる。
【００６２】
特に、ＣＰＵ１４は、現在オン状態のダンパペダル２４が、現在に至るまでオン状態を継続していた時間間隔を算出し、当該時間間隔に含まれる楽音波形データの数に基づき、前記積和演算数を示すパラメータｐを算出し、第１の積和演算回路において、上述した数１に示すように、ｐ＋１個の乗算回路５２−０〜５２−ｐにより、乗算が行なわれる。したがって、ダンパペダルがオン状態であったときの楽音波形データについて積和演算が行なわれ、アコースティックピアノのダンパペダル操作により近似した共鳴音を生成することが可能となる。
【００６３】
また、第１の実施の形態においては、音量調整回路４２が、ペダルの踏み込み量が大きくなるのにしたがって、第１の共鳴音データの出力レベルを大きくするようにレベル調整を行なう。これにより、ダンパペダルの踏み込み量を考慮した共鳴音を生成することが可能となる。
【００６４】
さらに、第１の実施の形態においては、積和演算数が固定の第２の積和演算回路を設け、第１の積和演算回路の出力（第１の共鳴音データ）と、第２の積和演算回路の出力（第２の共鳴音データ）とを加算する。したがって、ダンパペダルの操作により変化する共鳴音とダンパペダルの操作により変化しない共鳴音との合成音を出力することができる。これにより、共鳴音をより多彩にすることが可能となる。
【００６５】
たとえば、第２の積和演算回路における積和演算数は、前記第１の積和演算回路における最大の積和演算数より小さい。たとえば、第２の積和演算回路において使用される第２のインパルス応答係数をピアノの箱鳴り音についてのインパルス応答特性を表す時間軸上の値とし、第１の積和演算回路において使用される第１のインパルス応答回数をピアノの弦共鳴音についてのインパルス応答特性を表す時間軸上の値とする。ピアノの箱鳴り音はダンパペダルのオン・オフにかかわらず発生するが、箱鳴り音が発生する時間は比較的短い。そこで、第１の積和演算回路における最大の積和演算数より小さい積和演算数であっても適切な箱鳴り音を生成することが可能となる。
【００６６】
本発明は、以上の実施の形態に限定されることなく、特許請求の範囲に記載された発明の範囲内で、種々の変更が可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【００６７】
たとえば上記第１の実施の形態においては、畳み込み演算回路４１は、積和演算数が固定の第２の積和演算回路と、積和演算数がダンパペダル履歴に応じて変化する第１の積和演算回路とを有しているが、これに限定されず、畳み込み演算回路４１が、積和演算数がダンパペダル履歴に応じて変化する、単一の畳み込み演算回路（上記第１の積和演算回路に相当する）であっても良い。図１０は、本発明の第２の実施の形態にかかる共鳴音生成回路および関連する構成部分をより詳細に示すブロックダイヤグラムである。図１０において、図４に示す構成部分と同一の構成部分には同一の符号を付している。図１０に示すように、共鳴音生成回路１２８は、畳み込み演算回路１４１および音量調整回路４２を有する。畳み込み演算回路１４１は、図４および図５に示す畳み込み演算回路のうち、第１の積和演算回路に相当する構成部分を有し、これにより、第１の共鳴音データに相当する共鳴音データＹを生成することができる。
【００６８】
畳み込み演算回路１４１により生成された共鳴音データＹは、音量調整回路４２において乗算係数と乗算され、レベル調整される。レベル調整された共鳴音データと、楽音波形データとは、加算回路２９において加算されて出力される。
【００６９】
図１１は、第２の実施の形態にかかる畳み込み演算回路の例をより詳細に示す図である。図１１において、図５に示す畳み込み演算回路４１と同一の構成部分には同一の符号を付している。図１１に示すように、畳み込み演算回路１４１は、畳み込み演算回路の例をより詳細に示す図である。図１１に示すように、畳み込み演算回路１４１は、楽音波形データＸを受け入れて、当該楽音波形データを順次遅延させる複数（Ｂ個）の遅延回路５１−１〜５１−Ｂと、楽音波形データおよび遅延回路５１により遅延された楽音波形データをそれぞれ受け入れて、楽音波形データのそれぞれと、インパルス応答係数中の対応するインパルス応答係数とを乗算する複数（Ｂ＋１個）の乗算回路５２−０〜５２−Ｂと、乗算回路５２−０〜５２−Ｂの乗算結果を加算する加算回路５４とを有する。なお、乗算回路５２−０〜５２−Ｂにおいて乗算されるインパルス応答係数は、第１の実施の形態における第１群のインパルス応答係数に含まれるインパルス応答係数ａｉに相当する。
【００７０】
第２の実施の形態にかかる畳み込み演算回路１４１においても、ダンパペダル処理（図７）において算出された積和演算数を示すパラメータｐに基づいて、Ｂ＋１個の乗算回路５１−０〜５１−Ｂのうち、所定のｐ＋１個（ｐ≦Ｂ＋１）の乗算回路５１−０〜５１−ｐによる畳み込み演算が実行されるようになっている。
【図面の簡単な説明】
【００７１】
【図１】図１は、本発明の第１の実施の形態にかかる電子楽器の構成を示すブロックダイヤグラムである。
【図２】図２は、本実施の形態にかかる発音回路、共鳴音付加回路およびこれらに関連する構成部材の例を示すブロックダイヤグラムである。
【図３】図３は、発音回路２５および発音回路２５に関連する構成部分をより詳細に示すブロックダイヤグラムである。
【図４】図４は、本実施の形態にかかる共鳴音生成回路および関連する構成部分をより詳細に示すブロックダイヤグラムである。
【図５】図５は、本実施の形態にかかる畳み込み演算回路の例をより詳細に示す図である。
【図６】図６（ａ）は、本実施の形態にかかる電子楽器において実行される処理を概略的に示すフローチャート、図６（ｂ）は、サンプリング周期ごとに実行されるフラグ処理を示すフローチャートである。
【図７】図７は、本実施の形態にかかるダンパペダル処理の例をより詳細に示すフローチャートである。
【図８】図８（ａ）、（ｂ）は、それぞれ、時間ごとのダンパペダル踏み込み量の例を示すグラフである。
【図９】図９は、本実施の形態にかかる乗算係数算出処理の例を示すフローチャートである。
【図１０】図１０は、本発明の第２の実施の形態にかかる共鳴音生成回路および関連する構成部分をより詳細に示すブロックダイヤグラムである。
【図１１】図１１は、第２の実施の形態にかかる畳み込み演算回路の例をより詳細に示す図である。
【符号の説明】
【００７２】
１０        電子楽器
１２        鍵盤
１４        ＣＰＵ
１６        ＲＯＭ
１８        ＲＡＭ
２０        楽音生成部
２２        操作子群
２４        ダンパペダル
２５        発音回路
２６        共鳴音付加回路
２７        音響システム
２８        共鳴音生成回路
２９        加算回路
３０        波形データ記憶部
３１        インパルス応答データ記憶部
３８        ダンパペダル履歴記憶部
【図１】
2010117536.tif 000005
【図２】
2010117536.tif 000006
【図３】
2010117536.tif 000007
【図４】
2010117536.tif 000008
【図５】
2010117536.tif 000009
【図６】
2010117536.tif 000010
【図７】
2010117536.tif 000011
【図８】
2010117536.tif 000012
【図９】
2010117536.tif 000013
【図１０】
2010117536.tif 000014
【図１１】
2010117536.tif 000015