特許第6372124号(P6372124)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ヤマハ株式会社の特許一覧

特許6372124楽音信号合成方法、プログラムおよび楽音信号合成装置
<>
  • 特許6372124-楽音信号合成方法、プログラムおよび楽音信号合成装置 図000032
  • 特許6372124-楽音信号合成方法、プログラムおよび楽音信号合成装置 図000033
  • 特許6372124-楽音信号合成方法、プログラムおよび楽音信号合成装置 図000034
  • 特許6372124-楽音信号合成方法、プログラムおよび楽音信号合成装置 図000035
  • 特許6372124-楽音信号合成方法、プログラムおよび楽音信号合成装置 図000036
  • 特許6372124-楽音信号合成方法、プログラムおよび楽音信号合成装置 図000037
  • 特許6372124-楽音信号合成方法、プログラムおよび楽音信号合成装置 図000038
  • 特許6372124-楽音信号合成方法、プログラムおよび楽音信号合成装置 図000039
  • 特許6372124-楽音信号合成方法、プログラムおよび楽音信号合成装置 図000040
  • 特許6372124-楽音信号合成方法、プログラムおよび楽音信号合成装置 図000041
  • 特許6372124-楽音信号合成方法、プログラムおよび楽音信号合成装置 図000042
  • 特許6372124-楽音信号合成方法、プログラムおよび楽音信号合成装置 図000043
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6372124
(24)【登録日】2018年7月27日
(45)【発行日】2018年8月15日
(54)【発明の名称】楽音信号合成方法、プログラムおよび楽音信号合成装置
(51)【国際特許分類】
   G10H 7/10 20060101AFI20180806BHJP
   G10H 7/00 20060101ALI20180806BHJP
【FI】
   G10H7/10
   G10H7/00
【請求項の数】1
【全頁数】35
(21)【出願番号】特願2014-57850(P2014-57850)
(22)【出願日】2014年3月20日
(65)【公開番号】特開2015-184309(P2015-184309A)
(43)【公開日】2015年10月22日
【審査請求日】2017年1月20日
(73)【特許権者】
【識別番号】000004075
【氏名又は名称】ヤマハ株式会社
(74)【代理人】
【識別番号】110000752
【氏名又は名称】特許業務法人朝日特許事務所
(72)【発明者】
【氏名】蓑田 真
(72)【発明者】
【氏名】富永 英嗣
(72)【発明者】
【氏名】岡崎 雅嗣
(72)【発明者】
【氏名】劉 恩彩
【審査官】 大野 弘
(56)【参考文献】
【文献】 特開2012−118413(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G10H 7/10
G10H 7/00
(57)【特許請求の範囲】
【請求項1】
コンピュータが、振動する弦と、前記弦を2つの弦支持端によって支持し、前記弦の振動が前記弦支持端の少なくとも一端を介して伝達される本体とを有する3次元構造の楽器から発せられる音の楽音信号を、入力される演奏情報に応じて生成する楽音信号合成方法であって、
前記コンピュータが、前記演奏情報に応じて算出される前記弦に及ぼす力を表す第1の情報、および前記弦支持端の少なくとも一端における変位または変位の時間に関するn階導関数(n=1,2,・・・)を表す第2の情報を取得し、前記第1の情報および前記第2の情報を用いた前記弦の振動を表す第1運動方程式に基づいて、前記弦の各固有振動モードのモード座標上での変位または変位の時間に関するn階導関数(n=1,2,・・・)を表す第3の情報を算出し、前記第2の情報および前記第3の情報に基づいて、前記弦が前記弦支持端の少なくとも一端に及ぼす力を表す第4の情報を算出する弦モデル計算過程と、
前記コンピュータが、前記第4の情報を用いた前記本体の振動を表す第2運動方程式に基づいて、前記本体の各固有振動モードのモード座標上での変位または変位の時間に関するn階導関数(n=1,2,・・・)を求め、当該n階導関数(n=1,2,・・・)に基づいて前記弦モデル計算過程において取得される前記第2の情報を算出する本体モデル計算過程と、
前記コンピュータが、前記第4の情報に基づいて、前記楽音信号を算出する楽音信号計算過程と
を備えることを特徴とする楽音信号合成方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、自然楽器における発音機構(発音メカニズム)に立脚した所定の物理モデルに従って、シミュレーションを行うことにより楽音信号を合成する技術に関する。特に、弦および本体(弦を支持し、空気中に音響を放射する部品)を有する3次元構造の楽器から発せられる音が有する特質をリアルに表現した疑似楽器音を生成するのに好適な楽音信号合成方法、プログラムおよび楽音信号合成装置に関する。
【背景技術】
【0002】
従来から、汎用コンピュータ、DSP(Digital Signal Processor)等のデジタル信号処理装置、集積回路、大規模集積回路等を含んで構成された専用ハードウエア装置において、自然楽器の発音機構(発音メカニズム)に立脚した所定の物理モデルに従って、シミュレーションを行うことにより、自然楽器の楽音を疑似的(仮想的)に合成する方法が知られている。例えば、疑似ピアノ音を発生させたい場合、弦と響板の物理モデルに従って、汎用コンピュータでシミュレーション演算を実行させることにより、楽音信号を合成するということが行われている。このような方法を用いた楽音合成装置は、例えば、特許文献1に記載されている。また、特許文献2には、弦および本体を有する3次元構造の楽器から発せられる音が有する特質をリアルに表現した疑似楽器音を生成するための技術が記載されている。また、非特許文献1には、疑似ピアノ音の合成時に「弦の非線形振動機構」を取り入れることを試みた例が記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特表2009−544995号公報
【特許文献2】特開2012−118413号公報
【非特許文献】
【0004】
【非特許文献1】A Modal-Based Real-Time Piano Synthesizer, PUBLISHED IN IEEE TRANS. ON AUDIO, SPEECH, AND LANGUAGE PROCESSING, VOL. 18, NO. 4, PP. 809-821, MAY 2010
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献2に記載の技術では、楽器本体の各固有振動モードのモード座標上での変位または変位の時間に関するn階導関数(n=1,2,・・・)と観測点音圧との間のインパルス応答と、楽器本体の各固有振動モードのモード座標上での変位または変位の時間に関するn階導関数(n=1,2,・・・)との畳み込みで楽音信号を合成しているが、この畳み込みに要する演算量は膨大である。
【0006】
本発明は、上述の事情に鑑みてなされたものであり、弦および本体を有する3次元構造の楽器から発せられる音が有する特質をリアルに表現した疑似楽器音をより少ない演算量で生成することができる楽音信号合成方法、プログラムおよび楽音信号合成装置を提供することを目的とする。
【課題を解決するための手段】
【0007】
上述の課題を解決するため、本発明は、コンピュータが、振動する弦と、前記弦を2つの弦支持端によって支持し、前記弦の振動が前記弦支持端の少なくとも一端を介して伝達される本体とを有する3次元構造の楽器から発せられる音の楽音信号を、入力される演奏情報に応じて生成する楽音信号合成方法であって、前記コンピュータが、前記演奏情報に応じて算出される前記弦に及ぼす力を表す第1の情報、および前記弦支持端の少なくとも一端における変位または変位の時間に関するn階導関数(n=1,2,・・・)を表す第2の情報を取得し、前記第1の情報および前記第2の情報を用いた前記弦の振動を表す第1運動方程式に基づいて、前記弦の各固有振動モードのモード座標上での変位または変位の時間に関するn階導関数(n=1,2,・・・)を表す第3の情報を算出し、前記第2の情報および前記第3の情報に基づいて、前記弦が前記弦支持端の少なくとも一端に及ぼす力を表す第4の情報を算出する弦モデル計算過程と、前記コンピュータが、前記第4の情報を用いた前記本体の振動を表す第2運動方程式に基づいて、前記本体の各固有振動モードのモード座標上での変位または変位の時間に関するn階導関数(n=1,2,・・・)を求め、当該n階導関数(n=1,2,・・・)に基づいて前記弦モデル計算過程において取得される前記第2の情報を算出する本体モデル計算過程と、前記コンピュータが、前記第4の情報に基づいて、前記楽音信号を算出する楽音信号計算過程とを備えることを特徴とする楽音信号合成方法を提供する。
【0008】
また、別の好ましい態様において、前記弦は複数であり、前記弦モデル計算過程においては、前記演奏情報に応じて算出される各弦に対応する前記第1の情報、および各弦に対応する前記第2の情報を取得し、各弦に対応する前記第1運動方程式に基づいて、各弦に対応する前記第3の情報および前記第4の情報を算出し、前記本体モデル計算過程においては、各弦に対応する前記第4の情報を用いた前記第2運動方程式に基づいて前記本体の各固有振動モードのモード座標上での変位の時間に関するn階導関数(n=1,2,・・・)を求め、当該n階導関数(n=1,2,・・・)に基づいて各弦に対応する前記第2の情報を算出することを特徴とする。
【0009】
また、別の好ましい態様において、前記第1運動方程式は、前記弦の変位を、任意の時間関数を係数とする有限フーリエ正弦級数と前記2つの弦支持端を結んだ直線の変位との和により表していることを特徴とする。
【0010】
また、別の好ましい態様において、前記楽器は、前記弦を打つハンマを有し、前記弦モデル計算過程において取得する前記第1の情報には、前記演奏情報に応じて打弦する前記ハンマからの前記弦に及ぼす力が含まれることを特徴とする。
【0011】
また、別の好ましい態様において、前記楽器は、前記弦の振動を抑制するダンパを有し、前記弦モデル計算過程において取得する前記第1の情報には、前記演奏情報に応じて弦の振動を抑制する前記ダンパからの前記弦に及ぼす力が含まれることを特徴とする。
【0012】
また、本発明は、コンピュータに、振動する弦と、前記弦を2つの弦支持端によって支持し、前記弦の振動が前記弦支持端の少なくとも一端を介して伝達される本体とを有する3次元構造の楽器から発せられる音の楽音信号を、入力される演奏情報に応じて生成させるプログラムであって、前記コンピュータを、前記演奏情報に応じて算出される前記弦に及ぼす力を表す第1の情報、および前記弦支持端の少なくとも一端における変位または変位の時間に関するn階導関数(n=1,2,・・・)を表す第2の情報を取得し、前記第1の情報および前記第2の情報を用いた前記弦の振動を表す第1運動方程式に基づいて、前記弦の各固有振動モードのモード座標上での変位または変位の時間に関するn階導関数(n=1,2,・・・)を表す第3の情報を算出し、前記第2の情報および前記第3の情報に基づいて、前記弦が前記弦支持端の少なくとも一端に及ぼす力を表す第4の情報を算出する弦モデル計算手段と、前記第4の情報を用いた前記本体の振動を表す第2運動方程式に基づいて、前記本体の各固有振動モードのモード座標上での変位の時間に関するn階導関数(n=1,2,・・・)を求め、当該n階導関数(n=1,2,・・・)に基づいて前記弦モデル計算手段において取得される前記第2の情報を算出する本体モデル計算手段と、前記第4の情報に基づいて、前記楽音信号を算出する楽音信号計算手段として機能させるためのプログラムを提供する。
【0013】
また、本発明は、振動する弦と、前記弦を2つの弦支持端によって支持し、前記弦の振動が前記弦支持端の少なくとも一端を介して伝達される本体とを有する3次元構造の楽器から発せられる音の楽音信号を、入力される演奏情報に応じて生成する楽音信号生成装置であって、前記演奏情報に応じて算出される前記弦に及ぼす力を表す第1の情報、および前記弦支持端の少なくとも一端における変位または変位の時間に関するn階導関数(n=1,2,・・・)を表す第2の情報を取得し、前記第1の情報および前記第2の情報を用いた前記弦の振動を表す第1運動方程式に基づいて、前記弦の各固有振動モードのモード座標上での変位または変位の時間に関するn階導関数(n=1,2,・・・)を表す第3の情報を算出し、前記第2の情報および前記第3の情報に基づいて、前記弦が前記弦支持端の少なくとも一端に及ぼす力を表す第4の情報を算出する弦モデル計算手段と、前記第4の情報を用いた前記本体の振動を表す第2運動方程式に基づいて、前記本体の各固有振動モードのモード座標上での変位または変位の時間に関するn階導関数(n=1,2,・・・)を求め、当該n階導関数(n=1,2,・・・)に基づいて前記弦モデル計算手段において取得される前記第2の情報を算出する本体モデル計算手段と、前記第4の情報に基づいて、前記楽音信号を算出する楽音信号計算手段とを具備することを特徴とする楽音信号生成装置を提供する。
【発明の効果】
【0014】
本発明によれば、弦および本体を有する3次元構造の楽器から発せられる音が有する特質をリアルに表現した疑似楽器音をより少ない演算量で生成することができる楽音信号合成方法、プログラム
および楽音信号合成装置を提供することができる。
【図面の簡単な説明】
【0015】
図1】本発明の実施形態に係る電子楽器の構成を示すブロック図である。
図2】本発明の実施形態に係る変換部と楽音信号合成部との関係を説明する図である。
図3】本発明の実施形態に係る楽音信号合成部の構成を示すブロック図である。
図4】標準的なグランドピアノの構成を説明する図である。
図5】本発明の実施形態に係る演算部を有する楽音信号合成部の構成を示すブロック図である。
図6】本発明の変形例1に係る楽音信号合成部の構成を示すブロック図である。
図7】本発明の変形例2に係る電子楽器の構成を示すブロック図である。
図8】本発明の変形例2に係る楽音信号合成部の構成を示すブロック図である。
図9】本発明の変形例3に係る電子楽器の構成を示すブロック図である。
図10】本発明の変形例3に係る楽音信号合成部の構成を示すブロック図である。
図11】本発明の変形例4に係る電子楽器の構成を示すブロック図である。
図12】本発明の変形例4に係る楽音信号合成部の構成を示すブロック図である。
【発明を実施するための形態】
【0016】
<実施形態>
[電子楽器1の構成]
図1は、本発明の実施形態に係る電子楽器1の構成を示すブロック図である。電子楽器1は、例えば、電子ピアノであり、制御部11、記憶部12、ユーザ操作部13、演奏操作部15および放音部17を有している。これらの各部は、バス18を介して互いに接続
されている。
【0017】
制御部11は、CPU(Central Processing Unit)11a、DSP11b、他の図示しない周辺回路、ROM(Read Only Memory)11c、RAM(Random Access Memory)11d、信号インターフェイス11eおよび内部バス11fを有する。DMA(Direct Memory Access)コントローラ、ビデオプロセッサは他の周辺回路として含まれていてもよい。CPU11aは、ROM11cに記憶されている制御プログラムを読み出して、RAM11dにロードして実行することにより、電子楽器1の各部について、バス18を介して制御し、後述する楽音信号合成処理を行う楽音信号合成部100、演奏情報を楽音信号合成部100に入力される信号に変換する処理を行う変換部110などを実現する。また、RAM11dは、CPU11aが各データの加工などを行う際のワークエリアとして機能する。
【0018】
記憶部12は、例えば、ハードディスクなどの記憶手段であって、MIDI(Musical Instrument Digital Interface)データなどの楽音制御データ、後述する楽音信号合成処理により生成した楽音信号などを記憶する。楽音制御データは、この例においては、鍵の押込量、ダンパペダル踏込量、シフトペダル踏込量(さらに、ハンマ速度が含まれていてもよい)の時刻の進行に応じた変化を示すデータを含んでいる。これらのデータは、情報記憶媒体DP(例えば、コンパクトディスク)からロードされたり、ネットワークを介してサーバからダウンロードされたりしたものであってもよく、必ずしも記憶部12に記憶されていなくてもよい。
【0019】
ユーザ操作部13は、操作パネル13aおよび表示部14を有する。操作パネル13aには、例えば、マウス13b、操作スイッチ13c、キーボード13dなどである。ユーザがマウス13b、操作スイッチ13c、キーボード13dを操作するとその操作内容を表すデータが制御部11へ出力される。これにより、ユーザは電子楽器1に指示を行う。表示部14は、映像を画面に表示する液晶ディスプレイなどの表示デバイスであって、制御部11に制御され、メニュー画面などの各種画面を表示する。メニュー画面は、電子楽器1に電力が供給されると、自動的に表示されるようにしてもよい。
【0020】
演奏操作部15は、鍵盤部15aおよびペダル部16を有する。鍵盤部15aは、電子ピアノなどの鍵盤部分に相当するものであって、複数の鍵(黒鍵15b、白鍵15c)が並べられた鍵盤を有する。また、鍵盤部15aにおける各鍵15b、15cには、各鍵を押し込まれると、その鍵の押込量を表す情報を出力する鍵位置センサ15d、および押込速度を表す情報を出力する鍵速度センサ15eが設けられている。鍵盤部15aは、鍵の押込量を表す情報をアナログ形式からデジタル形式に変換した情報KSを出力し、また、押込速度を表す情報をアナログ形式からデジタル形式に変換した情報KVを、バス18を介して制御部11の信号インターフェイス11eまで定期的に出力する。鍵盤部15aは、これらの情報KS、KVを、押し込まれた鍵を表す情報KC(例えば、鍵番号)とともに出力する。このとき、ハンマ速度は、制御部11において、鍵盤部15aから出力される情報をもとに算出される。なお、押込速度については、鍵位置センサ15dから出力される鍵の押込量から算出されるようにして、鍵速度センサ15eについては設けられていなくてもよい。この場合には、鍵盤部15aに鍵の押込量から押込速度を算出する算出部を設けてもよい。また、制御部11のCPU11aにおいて、情報KSから押込速度を算出するようにしてもよい。鍵盤部15aから出力される情報には、押込加速度を示す情報が含まれていてもよい。
【0021】
ペダル部16は、ダンパペダル16aおよびシフトペダル16bに相当する複数のペダルを有する。また、ダンパペダル16aおよびシフトペダル16bには、ペダルが踏み込まれると、そのペダルの踏込量を表す情報を出力するペダル位置センサ16cが設けられている。ペダル部16は、ペダルの踏込量を表す情報をアナログ形式からデジタル形式に変換した情報PSを、バス18を介して制御部11の信号インターフェイス11eまで定期的に出力する。ペダル部16は、この情報PSを、踏込まれたペダルを表す情報PCとともに出力する。このように、鍵盤部15aおよびペダル部16は、操作されることにより、上記の各情報(演奏情報)を出力する。
【0022】
放音部17は、デジタルアナログ変換器17a、図示しないアンプおよびスピーカ17bを有する。制御部11の制御により入力される楽音信号は、デジタルアナログ変換器17aにおいてデジタル形式からアナログ形式に変換され、アンプで増幅され、スピーカ17bから音として出力される。この楽音信号は、この例においては、後述する楽音信号合成処理の結果生成されるものである。以上が、電子楽器1の構成の説明である。
【0023】
[変換部110の構成]
次に、制御部11が制御プログラムを実行することによって実現される楽音信号合成部100および変換部110について図2図3を用いて説明する。なお、以下に説明する楽音信号合成部100および変換部110における各構成の一部または全部については、ハードウエアによって実現してもよい。
【0024】
図2は、変換部110と楽音信号合成部100との関係を説明する図である。図2(a)に示すように、変換部110は、鍵盤部15aおよびペダル部16から出力される演奏情報を取得し、予め記憶されている変換テーブルに基づいて、楽音信号合成部100において用いられる信号に変換して出力する。このようにして変換部110から出力された信号は、楽音信号合成部100に入力される。楽音信号合成部100における入力信号としては、鍵盤部15aから出力される鍵の押込量を表す情報KS、KCに応じて生成される信号(以下、入力信号1(eK(nΔt))という)、鍵の押込速度(押込加速度であってもよい)を表す情報KV、KCに応じて生成されるハンマ速度を表す信号(以下、入力信号2(VH(nΔt))という)、ペダル部16から出力されるダンパペダルの踏込量を表す情報PS、PCに応じて生成される信号(以下、入力信号3(eP(nΔt))という)、シフトペダルの踏込量を表す情報PS、PCに応じて生成される信号(以下、入力信号4(eS(nΔt))という)の4信号である。これらの4信号はそれぞれ、離散時間軸(t=nΔt; n=0,1,2,・・・)上の信号として楽音信号合成部100に入力される。なお、これらの4信号は、制御部11が記憶部12に記憶されている楽音制御データを読み出して、変換部110において変換されたものであってもよい。
【0025】
変換部110における変換処理について、情報KSから入力信号1(eK(nΔt))への変換処理を代表して説明する。図2(b)は、変換部110が、あるタイミングに取得した情報KSに対応して入力信号1(図中においては「eK」)に変換するための変換テーブルの一例を示す図である。この例においては、eKは、鍵がレスト位置(rest)から一定量押込まれると「1」から減少し始め、エンド位置(end)に至る一定量前の段階で「0」に至るように決められている。このような変換テーブルは、各入力信号に対応して設けられている。
【0026】
[楽音信号合成部100の構成]
図3は、楽音信号合成部100の構成を示すブロック図である。楽音信号合成部100は、以下で説明する複数モデル(ダンパモデル、ハンマモデル、弦モデル、本体モデル、空気モデル)から構成される物理モデルにより、擬似ピアノ音を示す楽音信号を合成する。標準的なピアノは、鍵盤には88個の鍵が備わっており、各鍵に対応して、ハンマが1個、弦が1〜3本、ダンパが0〜複数個(弦と複数点で接触することを意味する)、備わっている。なお、弦の本数、ダンパの個数については、音域毎に異なるものとなっている。
【0027】
図4は、標準的なグランドピアノの構成を説明する図である。上記複数のモデルは、図4に示す標準的なグランドピアノ(アコースティックピアノ)21を前提としている。グランドピアノ21は、88の鍵21aを含む鍵盤21b、アクション機構21dを介して鍵21aと接続されたハンマ21c、弦21e、および弦21eと接触可能なダンパ21fを有する。弦21eは、その一端で駒21eaと、他端でベアリング21ebと接続されている。鍵21a、ハンマ21c、アクション機構21d、弦21e、ダンパ21fは、大部分がキャビネット21h内に収められている。弦21eの数およびダンパ21fの接触点の数は、音域によって変化する。キャビネット21h、フレーム、木製フレーム、駒21ea、ベアリング21ebおよびピアノ音を放射する他の振動部分(響板、支柱など)は、本体21jを構成する。以下の説明において、弦、ハンマ、ダンパおよび本体は、標準的なグランドピアノ21における構成を示し、電子楽器1に含まれている構成を示すものではない。
【0028】
図3に示す楽音信号合成部100は、比較部101、ダンパモデルを対応する弦毎に計算するダンパモデル計算部102−1、102−2、ハンマモデルを計算するハンマモデル計算部103、弦モデルを弦毎に計算する弦モデル計算部104−1、104−2及び本体モデルを計算する本体モデル計算部105を有する。
【0029】
ダンパモデル計算部102−1、102−2は、ダンパモデルにより、ある弦21eの振動を計算する。弦モデル計算部104−1、104−2は、弦モデルにより、ある弦21eの振動を計算する。ハンマモデル計算部103及び本体モデル計算部105は、それぞれハンマモデル、本体モデルにより、ある弦21eの振動を計算する。
【0030】
比較部101は、ダンパモデル計算部102−1、102−2に接続されている。ダンパモデル計算部102−1、102−2は、それぞれ、弦モデル計算部104−1、104−2に接続されている。ハンマモデル計算部103は、弦モデル計算部104−1、104−2の双方に接続されている。弦モデル計算部104−1、104−2は、本体モデル計算部105及び楽音信号計算部106と接続されている。楽音信号合成部100における出力信号は、楽音信号計算部106から出力される「空気中の観測点における音圧」の波形を示す楽音信号(以下、楽音信号(P(nΔt))という)である。
【0031】
楽音信号合成部100の楽音信号合成処理によって得られる楽音信号は、特定の鍵において、対応する弦が2本である場合の物理モデルによるものである。即ち、本体モデルを計算する本体モデル計算部105に対して、弦モデルを計算する弦モデル計算部104−1、104−2が並列に接続されている。ここで、弦が3本以上であれば、本体モデル計算部105に対して、並列に接続される弦モデル計算部104−iw(iw=3,4,・・・)および弦モデルに接続されるダンパモデル計算部102−iw(iw=3,4,・・・)を増やせばよい。また、鍵が複数存在する場合には、鍵の数に応じて、ダンパモデル計算部102、ハンマモデル計算部103および弦モデル計算部104の組を増やして、各鍵に対応する弦モデル計算部104を本体モデル計算部105及び楽音信号計算部106に接続すればよい。したがって、図3に示す楽音信号合成部100は、一般性を有している。
【0032】
まず、この例における楽音信号合成部100における楽音信号合成処理の物理モデルにおいては、以下に示す27の仮定がなされている。
(仮定1)重力は無視する。
(仮定2)軸力を受けて真っ直ぐに静止している状態(以下、静的平衡状態という)にある弦は細長い円柱形状であるものとする。
(仮定3)弦の太さは不変であるものとする。即ち、はり理論を採用するものとする。
(仮定4)弦の中心軸に垂直な断面は、変形後も平面を保ち、かつ中心軸に垂直であるものとする。即ち、ベルヌイ・オイラーの仮定を採用するものとする。
(仮定5)弦の振幅は小さいが、必ずしも微小ではないものとする。
(仮定6)弦は均質であるものとする。
(仮定7)弦の応力は、ひずみに比例する成分とひずみ速度に比例する成分の和として与えられるものとする。即ち、弦には内部粘性減衰(剛性比例粘性減衰ともいう)が働くものとする。
(仮定8)弦の一端は本体の一部であるベアリング上の点で支持され、他の一端は本体の一部である駒上の点で支持されているものとする。(弦は支持端において回転を拘束されないものとする。)
(仮定9)弦と空気との間の作用・反作用は無視する。
(仮定10)ハンマの弦に接触する部分(以下、ハンマ先端という)の形状は、円柱状であるものとし、その円柱の底面半径は無限小であるとし、その円柱の高さは他の弦と干渉
しない程度であるものとする。
(仮定11)1個のハンマに対応する弦が複数本ある場合には、それらの弦の静的平衡状態における中心軸は、同一平面上にあるものとする。
(仮定12)1個のハンマに対応する弦が複数本ある場合には、その1個のハンマは、それらの弦の数と同じ数のハンマ先端を有するものとする。
(仮定13)ハンマ先端(円柱)の中心軸の方向は、静的平衡状態にある弦(円柱)の中心軸の方向に直交するものとする。
(仮定14)ハンマ重心は1つの直線上でのみ運動するものとする。
(仮定15)ハンマ重心の運動方向は、ハンマ先端(円柱)の中心軸の方向と静的平衡状態にある弦(円柱)の中心軸の方向の両方に直交するものとする。
(仮定16)ハンマの変形する方向は、ハンマ重心の運動方向に一致しているものとする。
(仮定17)ハンマの圧縮力-圧縮量関係式は、指数を正の実数とするべき関数で与えられるものとする。
(仮定18)ハンマ先端と弦表面との間には摩擦は無いものとする。
(仮定19)ハンマと空気との間の作用・反作用は無視する。
(仮定20)ダンパが備わっている弦については、弦の曲げ振動を静止させようとするダンパによる抵抗力が、弦の中心軸上の点(以下、止音点という)に作用するものとする。
(仮定21)ダンパの抵抗力−速度関係式は、1次式で与えられるものとする。
(仮定22)本体の振幅は微小であるものとする。
(仮定23)本体は近似的に比例粘性減衰系として扱えるものとする。
(仮定24)本体が空気から受ける反作用は無視する。
(仮定25)空気は均質であるものとする。
(仮定26)空気の圧力-体積ひずみ関係式は、1次式で与えられるものとする。
(仮定27)空気は渦無しであるとする。
【0033】
また、この例における弦の物体座標の表現には、右手系(x,y,z)を用いる。ここで、静的平衡状態にある弦の中心軸にx軸を一致させ、ベアリング側支持端を原点(0,0,0)とし、駒側支持端がx>0なる領域に含まれる様にx軸の方向を定め、ハンマ重心の打弦時運動方向をz軸の正方向と定める。また、本体および空気の物体座標の表現には、右手系(X,Y,Z)を用いる。時刻の進行(時間変数)はtで表す。
【0034】
以下、この例において説明する各パラメータを表す記号について説明する。
【0035】
以下の「数1」から「数5」については、各モデルの計算にあたって入力される情報である。「数1」は、時刻の進行に伴い変動するパラメータ(時間変動パラメータ)である。一方、「数2」から「数5」は、時刻の進行に伴う変動が無いパラメータ(時間不変パラメータ)であって、予め設定されるものである。
【0036】
以下の「数1」は、演奏に関するパラメータ、即ち、楽音信号合成部100における入力信号に相当するものを示している。鍵、弦、ハンマ、ダンパ、本体は、それぞれ、標準的なグランドピアノ21の構成要素21a、21e、21c、21f、21jを示す。
【0037】
【数1】
【0038】
以下の「数2」は、設計に関するパラメータである。
【0039】
【数2】
【0040】
以下の「数3」は、本体の設計および空気中観測点の位置に関するパラメータである。
【0041】
【数3】
【0042】
以下の「数4」は、調律に関するパラメータである。
【0043】
【数4】
【0044】
以下の「数5」は、数値計算に関するパラメータである。
【0045】
【数5】
【0046】
以下の「数6」は、各モデルの計算により出力される情報、即ち、楽音信号である。
【0047】
【数6】
【0048】
以下の「数7」、「数8」、「数9」は、各モデルの計算上必要なその他のパラメータである。
【0049】
【数7】
【0050】
ここで、1個のハンマに対応する弦が1本の場合には、ZB、XB、YB、およびθH
が与えられると、βk'kは一意に定まる。1個のハンマに対応する弦が複数本ある場合
には、ZB、XB、YBが与えられると、βk'kは一意に定まる。
【0051】
【数8】
【0052】


【数9】
【0053】
以下の「数10」は、上記各パラメータにおいて上付き文字として記載されているインデックスの説明である。
【0054】
【数10】
【0055】
以下、この例における楽音信号合成部100の各部の処理内容について、図2を用いて順に説明する。なお、以後の説明においては、インデックスを全て書くと式が煩雑になって読みづらくなるため、説明上不可欠な場合を除いて、省略することとする。
【0056】
また、変数eK(t)、eP(t)、eS(t)には初期値(t=0における値)として「1」が設定されている。即ち、鍵(黒鍵15b、白鍵15c)の押し込み、ダンパペダル16a、シフトペダル16bの踏み込みはされていない状態として設定されている。また、その他の全ての「t」に関する変数には、初期値として「0」が設定されているものとする。
【0057】
比較部101は、入力信号1(eK(nΔt))および入力信号3(eP(nΔt))を取得し、小さい方の値をeD(nΔt)として出力する。これは、以下の式(1)で表される。
【0058】
【数11】
【0059】
[ダンパモデル] ダンパモデル計算部102は、1番目の弦(iw=1)に対応するダンパについて計算するダンパモデル計算部102−1、2番目の弦(iw=2)に対応するダンパについて計算するダンパモデル計算部102−2を有する。以下の説明においては、弦のインデックスが異なるだけであるから、ダンパモデル計算部102として説明する。なお、弦が3本以上存在する場合には、上述したように、ダンパモデル計算部102−iw(iw=3,4,・・・)を弦(iw=3,4,・・・)に対応させて設ければよい。
【0060】
弦モデル計算部104は、1番目の弦(iw=1)について計算する弦モデル計算部104−1、2番目の弦(iw=2)について計算する弦モデル計算部104−2を有する。以下の説明においては、弦のインデックスが異なるだけであるから、弦モデル計算部104として説明する。なお、弦が3本以上存在する場合には、上述したように、弦モデル計算部104−iw(iw=3,4,・・・)を、本体モデル部105に対して並列に設ければよい。(弦モデル計算部104の計算については、後述する。)
【0061】
ダンパモデル計算部102は、比較部101から出力されるeD(nΔt)、および後述するようにして弦モデル計算部104から出力されるuk(xD,nΔt)(k=1,3)を取得して、これらを用いて、以下に示す計算を行った結果得られるfDk(nΔt)を弦モデル計算部104に出力する。
【0062】
以下、ダンパモデル計算部102における計算について説明する。
【0063】
初期状態におけるピアノの弦は、ダンパによって振動を抑制された状態にある。ピアノの鍵を押し込んでいくと、対応するダンパが対応する弦から徐々に離れ出し、やがて弦はダンパの抵抗から完全に解放され、ハンマによる打弦に備える。また、ピアノにおいては、鍵の押込量だけでなくダンパペダルの踏込量によってもダンパと弦との接触度合を変えることができ、音の止まり方や弦共鳴の度合をきめ細かく制御することができる。
【0064】
このようなピアノにおけるダンパのメカニズムは、以下の式(2)に示すダンパの抵抗力fDk(t)とダンパ変形量uk(xD,t)との関係式をもって簡潔に表現することができる。
【0065】
【数12】
【0066】
この例においては、比較部101から出力されるeD(nΔt)を式(2)に代入することで、ダンパの粘性係数に相当する量「bDD(nΔt)」を離散時間軸(t=nΔt; n=0,1,2,・・・)上で逐次変化させるというアイデアにより、自然楽器のピアノと同様な自然で連続的な止音および弦共鳴の制御を可能にしている。
以上が、ダンパモデル計算部102の説明である。
【0067】
[ハンマモデル]
ハンマモデル計算部103は、入力信号2(VH(nΔt))および入力信号4(eS(nΔt))を取得し、また、後述するようにして弦モデル計算部104から出力されるu1(xH,nΔt)を取得し、これらを用いて、以下に示す計算を行った結果得られるfH(nΔt)を弦モデル計算部104に出力する。
【0068】
以下、ハンマモデル計算部103における計算について説明する。
【0069】
上述した物理モデルに関する仮定に、ニュートンの運動の法則を適用するとハンマの運動方程式は、式(3)のように書かれる。
【0070】
【数13】
【0071】
また、ハンマ先端が弦表面に及ぼす力とハンマ圧縮量の関係式は、式(4)のようになる。
【0072】
【数14】
【0073】
ただし、ハンマ先端が弦表面に接触しているときは式(5)、ハンマ先端が弦表面から離れているときは式(6)、(7)が適用される。
【0074】
【数15】
【0075】
演奏情報に基づいてハンマ速度VH(t)が与えられるとき、ハンマ先端が弦表面から離れているという条件のもとに、wH(t)=WH 、dwH(t)/dt=VH(t)として、ハンマの状態を初期化すればよい。
【0076】
さて、ピアノにおけるシフトペダルのメカニズムとは、それを踏み込むとハンマの位置が高音側へシフトし、ハンマの弦に接触する部分を変化させる、あるいは、ハンマと一部の弦との接触を不完全な状態にすることによって音色を制御するという機構であるが、この例においては、入力信号4(eS[iS](nΔt))を式(4)に代入することにより、ハンマの弾性係数に相当する量KHS[iS](nΔt)を離散時間軸(t=nΔt; n=0,1,2,・・・)上で逐次変化させるというアイデアにより、自然楽器のピアノと同様な自然で連続的な音色の制御を可能にしている。以上が、ハンマモデル計算部103の説明である。
【0077】
[弦モデル]
弦モデル計算部104は、弦に及ぼす力となる、ダンパモデル計算部102から出力されるfDk(nΔt)(k=1,3)(本発明における第1の情報)およびハンマモデル計算部103から出力されるfH(nΔt)(本発明における第1の情報)、また、後述するようにして本体モデル計算部105から出力されるuBk(nΔt)(k=1,2,3)(本発明における第2の情報)をそれぞれ取得し、これらを用いて、以下に示す計算を行った結果得られるfBk(nΔt)(k=1,2,3)(本発明における第4の情報)を本体モデル計算部105に出力し、また、uk(xD,nΔt)(k=1,3)をダンパモデル計算部102に出力し、u1(xH,nΔt)をハンマモデル計算部103に出力する。
【0078】
以下、弦モデル計算部104における計算について説明する。
【0079】
上述した物理モデルに関する仮定において、ニュートンの運動の法則を適用すると弦の運動方程式(本発明における第1運動方程式)は、式(8)、(9)、(10)のように書かれる。
【0080】
【数16】
【0081】
ただし、式(8)および式(10)において、有限振幅に起因する非線形項は、それによる効果が小さいため省略してある。同様に、式(9)において、ハンマが弦軸方向に与える力についても、それによる効果が小さいため省略してある。なお、式(8)はハンマ重心の運動方向に対応する弦の曲げ振動に、式(10)はハンマ重心の運動方向とは直交する方向に対応する弦の曲げ振動に、式(9)は弦の縦振動に、それぞれ対応している。
【0082】
また、弦の境界条件は、式(11)、(12)のように書かれる。
【0083】
【数17】
【0084】
いま、「弦の変位」を「2つの支持端を結んだ直線に対する相対変位」と「2つの支持端を結んだ直線の変位」との和によって表した上で、更に、「2つの支持端を結んだ直線に対する相対変位」を「任意の時間関数を係数とする有限フーリエ正弦級数」によって表すことにする。即ち、「弦の変位」を式(13)により表現する。ここで、式(13)に含まれる正弦関数は、弦中心軸の弦支持端における変位を拘束した場合の弦の固有振動モードに他ならない。また、「2つの支持端を結んだ直線の変位」とは、「弦支持端の変位による弦の静的な変位」を意味している。
【0085】
【数18】
【0086】
このとき、式(13)は任意の時刻tについて境界条件式(11)、(12)を満足している。
偏微分方程式(式(8)、(9)、(10))に式(13)を代入してから、sin(ikπx/l)(ik=1,2,・・・,Mk; k=1,2,3)をそれぞれ掛けて区間「0≦x≦l」で積分すると、以下に示す2階常微分方程式(式(14)、(15)、(16))が導かれる。
【0087】
【数19】
【0088】
【数20】
【0089】
弦が弦支持端に及ぼす力と支持端変位との関係式は、式(25)、(26)のように書かれる。
【0090】
【数21】
【0091】
更に、式(25)、(26)に式(13)を代入することによって、式(28)、(29)が導かれる。ただし、非線形項と回転慣性に関する項は省略した。
【0092】
【数22】
【0093】
また、打弦点および止音点の変位は、式(13)より、式(30)、(31)のように書かれる。
【0094】
【数23】
【0095】
以上が、弦モデル計算部104の説明である。
【0096】
[本体モデル]
本体モデル計算部105は、弦モデル計算部104から出力されるfBk(nΔt)(本発明における第4の情報)を取得し、これを用いて、以下に示す計算を行った結果得られるuBk(nΔt)(k=1,2,3)(本発明における第2の情報)を弦モデル計算部104に出力する。
【0097】
以下、本体モデル計算部105における計算について説明する。
【0098】
上述した物理モデルに関する仮定により、本体の運動方程式(本発明における第2運動方程式)は、以下のようなモード毎の2階常微分方程式(式(32))として記述することができる。
【0099】
【数24】
【0100】
ところで、ピアノの本体は、木材や金属などから構成されるが、このうち、木材は「低周波成分に比べ高周波成分の振動減衰能が大きい」という特徴を有しており、このことがピアノ(あるいは木材で本体を構成された楽器)特有の「耳に心地よく温かい響き」の原因ともなっている。このような木材の音響的性質は、木材を「弾性係数と構造減衰係数の両方に3次元直交異方性を有する材料」としてモデル化することによって説明することができる(例えば参考文献1:日本機械学会(編). 先端複合材料,pp.68-70. 技報堂出版,1990.)。
【0101】
「弾性係数と構造減衰係数の両方に3次元直交異方性を有する材料」を含むように構成された本体モデルは、一般構造減衰系(非比例構造減衰系、あるいは、一般ヒステリシス減衰系ともいう)となるため、実固有値解析によって減衰行列を対角化することができない(参考文献2)が、ここでは、減衰行列の非対角項を無視することによって、近似的に比例構造減衰系(比例ヒステリシス減衰系ともいう)とみなすことにする。(参考文献2:長松昭男. モード解析. 培風館,1985.)
【0102】
更に、比例構造減衰系を比例粘性減衰系で近似する、即ち、「モード構造減衰係数/2」でモード減衰比を表すこととする。このとき、式(32)に含まれる固有角振動数、モード減衰比、固有振動モードは、任意3次元形状の本体に対し、商用の有限要素法ソフトを用いた実固有値解析を行うことによって算出することができる。ここで、モード減衰比は、近似的モード減衰比というべきものであるが、ここでは、便宜上、単にモード減衰比ということとする。
なお、弦支持端の変位は、以下の式(34)を用いることによって算出できる。
【0103】
【数25】
【0104】
以上が、本体モデル計算部105の説明である。
【0105】
[運動方程式の求解]
次に、上記の各モデルにおける運動方程式の解法の例について説明する。以下の説明では、ハンマの運動方程式(上記式(3))、弦のモード毎運動方程式(第1運動方程式)(上記式(14)、(15)、(16))、および本体のモード毎運動方程(第2運動方程式)(上記式(32))をまとめて、「ハンマ−弦−本体の運動方程式」と呼ぶことにする。これらの運動方程式に、上記式(2)、(4)、(5)、(6)、(28)、(29)、(30)、(31)、(34)を代入することにより、部分構造間の相互作用を表す変数fDk[iD](t)、fH[iW](t)、we(t)、fBk[iB](t)、u1(xH,t)、uk(xD[iD],t)、uBk[iB](t)を消去すれば、「ハンマ−弦−本体の運動方程式」は、ハンマ重心の変位wH(t)、弦の各固有振動モードのモード座標上での変位Ak[mk](t)(mk=1,2,・・・,Mk; k=1,2,3)(本発明における第3の情報)、本体の各固有振動モードのモード座標上での変位AC[m](t)(m=1,2,・・・,M)に関する連立非線形常微分方程式となる。いま、初期条件として演奏前の状態、即ち、静止状態を設定することにより、ここで扱っている問題は、いわゆる「連立非線形常微分方程式の初期値問題」と考えることができる。「連立非線形常微分方程式の初期値問題」は、なんらかの数値積分法(参考文献3)を用いることで、連立非線形代数方程式を離散時間軸上で逐次解いていく問題に変換することができる。(参考文献3:日本機械学会編. 数値積分法の基礎と応用. コロナ社,2003.)
以下に、いくつかの解法例を示す。
【0106】
[全体をまとめて解く方法]
まず、ハンマモデル、弦モデル、本体モデルの運動方程式全体をまとめて解く方法を示す。上記の「ハンマ−弦−本体の運動方程式」(連立非線形常微分方程式)にニューマークβ法を適用すると、「ハンマ重心の加速度あるいは加速度増分」、「弦の各固有振動モードのモード座標上での加速度あるいは加速度増分」、および、「本体の各固有振動モードのモード座標上での加速度あるいは加速度増分」を未知量とする連立非線形代数方程式を導出することができる。ここで、「加速度あるいは加速度増分」と書いた理由は、ニューマークβ法として知られている数値積分法には、加速度を未知量とするアルゴリズムと
、加速度増分を未知量とするアルゴリズムとの2通りが存在することによるものである。
【0107】
この連立非線形代数方程式に、ニュートン法を適用するか、あるいは、区間線形化法(参考文献3)によって連立線形代数方程式を導出した上で、直接法(例えばLU分解法)
または反復法(例えば共役勾配法)を適用することで、以下に説明する演算部120は、上記の未知量を離散時間軸上で逐次決定することができる。このように、全体をまとめて解く方法で演算を行う場合の構成について、図5を用いて説明する。
【0108】
図5は、本発明の実施形態に係る演算部120を有する楽音信号合成部100の構成を示すブロック図である。全体をまとめて解く方法で演算を行う楽音信号合成部100は、比較部101、演算部120、および楽音信号計算部106を有する。
演算部120は、上記のダンパモデル計算部102、ハンマモデル計算部103、弦モデル計算部104および本体モデル計算部105における計算をまとめた「ハンマ−弦−本体の運動方程式」を用いた演算を行う。演算部120は、比較部101からeD(nΔt)を取得し、また、入力信号2(VH(nΔt))および入力信号4(eS(nΔt)を取得し、これらの情報と「ハンマ−弦−本体の運動方程式」とを用いた演算により、上記の未知量を逐次算出して決定する。ここでは、未知量のうち、「本体の各固有振動モードのモード座標上での速度」を示す情報(d/dt(AC(nΔt)))を空気モデル計算部106に出力する。
【0109】
ここで、「本体の各固有振動モードのモード座標上での速度」は、「本体の各固有振動モードのモード座標上での変位の時間に関するn階導関数(n=1,2,・・・)」であってもよい。なお、速度は、変位が既知である場合には、変位の数値微分として、加速度が既知である場合には、加速度の数値積分として、簡単に算出することができる。
【0110】
[部分構造毎に解く方法]
続いて、ハンマモデル、弦モデル、本体モデルの運動方程式を部分構造(以下、ハンマモデル計算部103、弦モデル計算部104、本体モデル計算部105を総称して単に部分構造という)毎に解く方法を示す。この方法は、上述の「ハンマ−弦−本体の運動方程式」の説明において消去した部分構造間の相互作用を表す変数fH[iW](t)、fBk[iB](t)、u1(xH,t)、uk(xD[iD],t)、uBk[iB](t)の値を陽に計算し、部分構造間でそれらの値の授受を行いながら、部分構造毎に計算を進めるというものである。
【0111】
この解法を用いるとき、ハンマの運動方程式(上記式(3))を解くときに、弦と本体に関する未知量が含まれ、弦のモード毎運動方程式(上記式(14)、(15)、(16))を解くときに、本体に関する未知量が含まれていることになるが、弦と本体に関する未知量を過去の値から外挿するなどして仮に定めておき、繰り返し計算を行うことで、安定に計算を進めることができる。以下に、数値積分法の違いによる3つの例を示す。
【0112】
第1の例として「差分方程式を導出する方法」について説明する。
ハンマの運動方程式(上記式(3))に対して、中央差分法を適用し、弦のモード毎運動方程式(上記式(14)、(15)、(16))および本体のモード毎運動方程式(上記式(32))に対して、双一次s−z変換法を適用することによって、一連の差分方程式が導出される。各差分方程式は、一般的な2次IIRフィルタ演算によって解くことができる。この方法では、「ハンマ重心の変位」、「弦の各固有振動モードのモード座標上での変位」、および、「本体の各固有振動モードのモード座標上での変位」を未知量として、それらの値を離散時間軸上で逐次決定していくことになる。
【0113】
第2の例として、「ガラーキン法」について説明する。
ハンマの運動方程式(上記式(3))、弦のモード毎運動方程式(上記式(14)、(15)、(16))および本体のモード毎運動方程式(上記式(32))に対して、時間に関する3次関数を試験関数とするガラーキン法(参考文献4)を適用することで、「ハンマ重心の加速度および加加速度」、「弦の各固有振動モードのモード座標上での加速度および加加速度」、「本体の各固有振動モードのモード座標上での加速度および加加速度」を未知量として、それらの値を離散時間軸上で、逐次決定するアルゴリズムが得られる。ここで、時間に関する3次関数ではなく4次関数を試験関数とするガラーキン法を用いた場合は、加速度、加加速度および加加加速度を未知量とするアルゴリズムが得られる。(参考文献4:加川幸雄.有限要素法による振動・音響工学/基礎と応用. 培風館,1981.)
【0114】
第3の例として、「ニューマークβ法」について説明する。
ハンマの運動方程式(上記式(3))、弦のモード毎運動方程式(上記式(14)、(15)、(16))および本体のモード毎運動方程式(上記式(32))に対して、ニューマークβ法を適用することで、「ハンマ重心の加速度あるいは加速度増分」、「弦の各
固有振動モードのモード座標上での加速度あるいは加速度増分」、および、「本体の各固有振動モードのモード座標上での加速度あるいは加速度増分」を未知量として、それらの値を離散時間軸上で、逐次決定するアルゴリズムが得られる。
【0115】
[全体をまとめて解く方法と部分構造毎に解く方法との中間の方法]
上記の「全体をまとめて解く方法」と「部分構造毎に解く方法」との中間の方法を用いることもできる。例えば、ハンマモデルと弦モデルとをまとめて、本体モデルは別に解く、あるいは、ハンマモデルをまず解いて、弦モデルと本体モデルとをまとめて解くという方法を用いてもよい。
【0116】
なお、上述のとおり、未知量である「ハンマ重心の変位」、「弦の各固有振動モードのモード座標上での変位」、および、「本体の各固有振動モードのモード座標上での変位」の各変位については、解法によって加速度、加加速度などである場合もある。更に、速度が変位の数値微分として、あるいは、加速度の数値積分として、簡単に算出できることも考慮すると、「ハンマ重心の変位」、「弦の各固有振動モードのモード座標上での変位」、および、「本体の各固有振動モードのモード座標上での変位」の各変位については、変位の時間に関するn階導関数(n=1,2,・・・)であってもよい。このことは、他の変位についても同様のことが言える。例えば、弦支持端の変位は、その変位の時間に関するn階導関数(n=1,2,・・・)であってもよい。
【0117】
[本体・空気モデル]
楽音信号計算部106は、弦モデル計算部104−1,104−2から出力されるfBK(nΔt)(本発明における第4の情報)を取得し、これを用いて、以下に示す計算を行った結果得られるP(nΔt)を楽音信号として出力する。
【0118】
以下、楽音信号計算部106における計算について説明する。
【0119】
任意3次元形状の本体から放射される空気中の任意の観測点における非定常音圧は、次式に示すような方法、即ち、「本体の力の入力点に対して入力される力と空気中の観測点における音圧との間のインパルス応答関数」と「本体の力の入力点に対して入力される力」との畳み込み積分を本体の固有振動モード毎に行い、それらの総和を計算するという方法によって算出することができる。
【0120】
【数26】
【0121】
式(37)に含まれるH[iP][iG](ω)、即ち、「本体の各音響放射要素の速度と空気中の観測点における音圧との間の周波数応答関数」は、任意3次元形状の本体に対し、商用の境界要素法ソフトを用いた周波数応答解析を離散周波数軸上で行うことによって算出することができる。また、式(36)は一般的なIFFT(Inverse Fast Fourier Transform)演算によって、式(35)に含まれる積分は一般的なFIR(Finite Impulse Response)フィルタの方法によって、それぞれ計算することができる。
【0122】
【0123】
かくして、弦モデル計算部104−1,104−2から出力されるfBk(nΔt)(本発明における第4の情報)を用いて、離散時間軸(t=nΔt; n=0,1,2,・・・)上における音圧P[iP](nΔt)(iP=1,2,・・・,IP)を逐次算出し、楽音信号として出力することができる。
【0124】
ここで、式(35)中の畳み込み演算を時間領域ではなく周波数領域で行う高速畳み込み(fast convolution)と呼ばれている手法を用いることによって、更に飛躍的な高速化をはかることができる。このとき、高速畳み込みに含まれるIFFT演算は、本体固有振動モード毎周波数領域畳み込み結果の総和をとった後に行えばよく、本体の固有振動モード毎に行う必要はない。
以上が、楽音信号合成部100の構成の説明である。
【0125】
このように、楽音信号合成部100は、楽器全体が3次元的に振動することによって生み出される豊かで立体的な響き、中低音域の弦を強打したときに聴こえるリンギングサウンド、鍵押し込み深さやペダル踏み込み深さに連動した多彩な音楽的ニュアンスなど、自然楽器のピアノ音が有する特質をリアルに表現する擬似ピアノ音を生成することができる。また、それらの特質を自然楽器のピアノと同じように、制御することが可能となる。
【0126】
具体的には、以下のようなものがある。例えば、弦長(=弦支持端間の距離)あるいは打弦比(=「弦長」/「ベアリング側弦支持端と打弦点との距離」)などのパラメータを変更することにより、リンギングサウンドのレベルをコントロールすることが可能となる。以下では、特に、このリンギングサウンドについて、式(15)を用いて説明する。ただし、ここでは説明を理解しやすくするために、式(15)において、弦支持端の変位、弦y方向の変位および弦の内部粘性減衰係数を省略した式(38)に従って説明することとする。
【0127】
【数27】
【0128】
式(38)は、弦の縦振動第i2次固有振動の運動方程式であるが、右辺を周期的外力と
みなすことにより、1自由度粘性減衰強制振動系の運動方程式として考えることができる。よく知られているように、この方程式の一般解は、減衰する自由振動解(斉次方程式の一般解)と持続する強制振動解(非斉次方程式の特解)の和によって構成されるが、強制振動解の性質とは、系が周期的外力の振動数で振動し、その振動数が系の固有振動数に近づくにつれ振幅が大きくなり、一致した時、共振するというものである。いま、弦の曲げ振動に関する各固有振動が調和振動であると仮定する、即ち、式(39)のように書くことにする。
【0129】
【数28】
【0130】
このとき、式(38)の右辺{ }内は、式(40)として導かれる。
【0131】
【数29】
【0132】
いま、i2を固定して、式(40)に含まれる項cos2π(f1[m1]+f1[m1+i2])tがつくる系列に着目し、「この系列の第(2m1+i2)次振動数f1[m1]+f1[m1+i2]の倍音系列周波数からのずれ」を計算すると、i2が小さいとき、その値が、「曲げ振動第(2m1+i2)次固有振動数f1[2m1+i2]の倍音系列周波数からのずれ」の約1/4であることが確認できる。自然楽器のピアノ音を分析することにより「ピアノの部分音の系列には、倍音系列からの周波数のずれが主系列の約1/4である副系列が存在する」ことが知られており、従って前記項がつくる系列こそが前記副系列にあてはまる。なお、i2が大きくなるにつれ、この"ずれ量"は少しずつ大きくなる。
【0133】
また、式(40)に含まれる項cos2π(f1[m1]+f1[i2-m1])tがつくる系列も上記副系列の形成に寄与していること、ただし、その寄与度は先の項よりも小さいことが理解できる。
【0134】
式(38)に式(40)を代入した式は、副系列の第(2m1+i2)次の振動数f1[m1]+f1[m1+i2]が弦の縦振動の第i2次固有振動数に一致したとき共振現象が起こることを表している。これは、自然楽器のピアノ音が有する特徴的な現象である、「ピアノの部分音の系列には、倍音系列からの周波数のずれが主系列の約1/4である副系列が存在する」ことに加えて、「副系列の奇数次部分音の周波数が、弦の縦振動の奇数次固有振動数に一致するとき、又は、副系列の偶数次部分音の周波数が、弦の縦振動の偶数次固有振動数に一致するとき、副系列部分音のレベルが増大し、これがリンギングサウンドとなる」こと、より分析的な表現に変えると「弦の曲げ振動の奇数次固有振動数と偶数次固有振動数の和が、弦の縦振動の奇数次固有振動数に一致するとき、又は、弦の曲げ振動の1組の奇数次固有振動数の和、あるいは、1組の偶数次固有振動数の和が弦の縦振動の偶数次固有振動数に一致するとき、リンギングサウンドが生成される」こと(参考文献5)に対する、数学的な説明を与えるものである。
(参考文献5: J.Ellis. Longitudinal model in piano strings: Results of new research. Piano Technicians journal, pp.16-23, May 1998.)
【0135】
更に、「リンリン」、「ヒンヒン」といった唸り現象については、例えば、副系列第15(=7+8=2×7+1)次と副系列第15(=6+9=2×6+3)次とでは、振動数が僅かに異なるために、その振動数差が唸りを生むとして説明することができる。なお、式(44)に含まれる項cos2π(f1[m1]−f1[m1+i2])tおよびcos2π(f1[m1]−f1[i2-m1])tは、曲げ振動の固有振動数よりも僅かに高い周波数を有する部分音の存在を示すものである。
【0136】
さて、弦の材料定数を固定して考えるとき、式(18)より、弦の縦振動固有振動数は、弦長にのみ依存する。なお、ピアノの低音域に通常使用される、巻弦(鋼鉄の芯線に銅線が巻かれている弦)については、この限りではない。
【0137】
標準的な88鍵ピアノのおよそ第30鍵からおよそ第40鍵までの音域においては、弦長の設定が原因となって、副系列第15(=7+8=2×7+1)次の振動数と弦の縦振動基本固有振動数が近接している場合がある。そのような場合でも、打弦比を「7」または「8」に設定することで、リンギングサウンドの過剰なレベル増大を回避することができる。
【0138】
なぜならば、副系列第15(=7+8=2×7+1)次は、曲げ振動の第7次固有振動と第8次固有振動による生成物であるが、打弦比を「7」または「8」に設定すると曲げ振動の第「7」次または第「8」次の固有振動は欠落してしまうため、副系列第15(=7+8=2×7+1)次は生成されないからである。この場合でも、依然として副系列第15(=6+9=2×6+3)次などは存在するが、これらが縦振動の基本固有振動と共振することは無い。
【0139】
以上、リンギングサウンドの発生メカニズムとそのレベルを制御する設計因子(弦長、打弦比)について説明したが、弦の縦振動そのものは、空気中に音響を放射する能力をほとんど持ち合わせていないから、リンギングサウンドが音として聴こえるためには、いま説明した「弦の非線形(有限振幅)振動機構」に加え、「弦と本体との3次元連成振動機構」(「弦の本体に対する取り付け角度」や「駒の形状」などの設計因子がこれに含まれる)および「本体の3次元音響放射機構」(「駒の形状」はこれにも含まれる)の考慮が不可欠であることは言うまでもない。
【0140】
ところで、自然楽器のピアノの開発現場において、ピアノ音の改良とは、ピアノという複雑なシステムの全体最適解を求めることに他ならないが、従来行われてきた試行錯誤的方法による最適解の模索は、ピアノのような多くの設計因子と誤差因子(天然材料の物性のばらつきや整音など人間による作業のばらつきなど)を有する巨大な音響構造体にとっては、特に、効率が悪い。本発明は、ピアノの仕様(原因)と音(結果)との因果関係を定量的に明らかにするものであるから、設計シミュレータとしてピアノ開発効率の向上にも貢献するものである。上記に加え、物理モデルによる楽音合成方法の利点は、現実のシミュレーションを超えた超自然的効果(例えば、現実には製作が困難な著しく大きなピアノなど)を仮想的に生成できる点にある。
【0141】
そして、音質(シミュレーション精度)と演算量のバランスをとるために、本体における固有振動モードの数、弦支持端の数、および、弦支持端毎の畳み込みに使用するインパルス応答関数の長さを適宜調整するような場合において、本体における固有振動モード毎の畳み込みの演算量が弦支持端ごとの畳み込みの演算量よりも増えることがある。このような場合に本実施形態を適用すれば、演算量の増大を抑制することが可能となる。
【0142】
<変形例>
以上、本発明の実施形態について説明したが、本発明は以下のように、さまざまな態様で実施可能である。
[変形例1]
上述した実施形態において、弦モデル計算部104は、弦に及ぼす力として、ダンパモデル計算部102から出力されるfDk(nΔt)(k=1,3)、ハンマモデル計算部103から出力されるfH(nΔt)、および本体モデル計算部105から出力されるuBk(nΔt)(k=1,2,3)をそれぞれ取得していたが、fDk(nΔt)(k=1,3)とfH(nΔt)との一方または双方については、他の計算方法により算出されたものを取得するようにしてもよい。
Dk(nΔt)(k=1,3)とfH(nΔt)との双方が他の計算方法により算出され、楽音信号P(nΔt)が空気モデル以外を用いた計算方法により算出される場合の構成について図6を用いて説明する。
【0143】
図6は、本発明の変形例1に係る楽音信号合成部100Aの構成を示すブロック図である。楽音信号合成部100Aは、実施形態における比較部101、ダンパモデル計算部102およびハンマモデル計算部103に代えて力計算部107を有する。
【0144】
力計算部107は、変換部110から出力され楽音信号合成部100Aに入力される各入力信号に基づいて、fDk(nΔt)(k=1,3)とfH(nΔt)とに相当する情報を算出して、弦モデル計算部104Aに出力する。
力計算部107は、fH(nΔt)とに相当する情報を算出するに当たり、弦モデル計算部104Aからu1(xH,nΔt)を取得せず、予め決められたu1(xH,nΔt)を用いる。力計算部107は、このu1(xH,nΔt)を各入力信号に基づいて予め決められた算出式により算出してもよい。
また、力計算部107は、fDk(nΔt)(k=1,3)とに相当する情報を算出するに当たり、弦モデル計算部104Aからuk(xD,nΔt)(k=1,3)を取得せず、予め決められたuk(xD,nΔt)(k=1,3)を用いる。力計算部107は、このuk(xD,nΔt)(k=1,3)を各入力信号に基づいて予め決められた算出式により算出してもよい。
【0145】
なお、力計算部107は、実施形態における比較部101、ダンパモデル計算部102およびハンマモデル計算部103と置き換えたものとして説明したが、ハンマモデル計算部103を実施形態と同じ構成として、比較部101およびダンパモデル計算部102を置き換えたものとしてもよい。逆に、力計算部107は、比較部101およびダンパモデル計算部102を実施形態と同じ構成として、ハンマモデル計算部103を置き換えたものとしてもよい。すなわち、弦モデル計算における結果のうち、実施形態において弦に及ぼす力の計算に用いられているu1(xH,nΔt)とuk(xD,nΔt)(k=1,3)との一方または双方を用いずに、弦に及ぼす力が計算されるようにしてもよい。
【0146】
楽音信号計算部108は、弦モデル計算部104A−1,104A−2から出力されるfbk(nΔt)に基づいて、楽音信号P(nΔt)を算出する。
【0147】
[変形例2]
上述した実施形態において、シフトペダル16bが取り除かれた構成の電子楽器を用いてもよい。この場合の構成について、図7図8を用いて説明する。
【0148】
図7は、本発明の変形例2に係る電子楽器1Bの構成を示すブロック図である。電子楽器1Bは、例えば、電子ピアノであり、制御部11B、記憶部12B、ユーザ操作部13B、演奏操作部15Bおよび放音部17Bを有している。これらの各部は、バス18Bを介して互いに接続されている。ユーザ操作部13B、放音部17Bおよびバス18Bは、実施形態に係る電子楽器1におけるユーザ操作部13、放音部17およびバス18と同様な機能を有するため、説明を省略する。
【0149】
演奏操作部15Bは、実施形態における演奏操作部15とは異なり、シフトペダル16bが取り除かれている。そのため、ペダル位置センサ16Bcは、ダンパペダル16aの踏込量を検出する。演奏操作部15Bにおける他の構成は、実施形態における演奏操作部15と同様な機能を有するため、説明を省略する。
【0150】
記憶部12Bは、実施形態における記憶部12とは異なり、ハンマ先端が弦表面に及ぼす力fH(nΔt)を記憶している。この値は、実施形態におけるシフトペダル16bが踏込まれていない状態(レスト位置)における値を示す。
【0151】
制御部11Bは、実施形態における制御部11とは異なり、制御プログラムを実行して実現される楽音信号合成部100のうち、ハンマモデル計算部103を用いない楽音信号合成部100Bを実現する。
【0152】
図8は、楽音信号合成部100Bの構成を示すブロック図である。図8に示すように、楽音信号合成部100Bには、ハンマモデル計算部103がない。弦モデル計算部104B−1、104B−2は、ハンマモデル計算部103から出力されるfH(nΔt)を取得するのではなく、記憶部12Bに記憶されたfH(nΔt)を取得する。楽音信号合成部100Bにおける他の構成については、実施形態における楽音信号合成部100と同様の機能を有するため、説明を省略する。
【0153】
なお、ハンマモデル計算部103が存在しない構成としなくても、実施形態における楽音信号合成部100において、eS(nΔt)=1に固定(シフトペダルがレスト位置に固定)された状態にすることにより、シフトペダルが存在しない場合を実現してもよい。
【0154】
[変形例3]
上述した実施形態において、ダンパペダル16aが取り除かれた構成の電子楽器を用いてもよい。この場合の構成について、図9図10を用いて説明する。
【0155】
図9は、本発明の変形例3に係る電子楽器1Cの構成を示すブロック図である。電子楽器1Cは、例えば、電子ピアノであり、制御部11C、記憶部12C、ユーザ操作部13C、演奏操作部15Cおよび放音部17Cを有している。これらの各部は、バス18Cを介して互いに接続されている。ユーザ操作部13C、放音部17Cおよびバス18Cは、実施形態に係る電子楽器1におけるユーザ操作部13、放音部17およびバス18と同様な機能を有するため、説明を省略する。
【0156】
演奏操作部15Cは、実施形態における演奏操作部15とは異なり、ダンパペダル16aが取り除かれている。そのため、ペダル位置センサ16Ccは、シフトペダル16bの踏込量を検出する。演奏操作部15Cにおける他の構成は、実施形態における演奏操作部15と同様な機能を有するため、説明を省略する。
【0157】
記憶部12Cは、実施形態における記憶部12とは異なり、ダンパの抵抗力fDk(nΔt)を記憶している。この値は、実施形態におけるダンパペダル16aが踏込まれていない状態(レスト位置)における値を示す。
【0158】
制御部11Cは、実施形態における制御部11とは異なり、制御プログラムを実行して実現される楽音信号合成部100のうち、比較部101およびダンパモデル計算部102−1、102−2を用いない楽音信号合成部100Cを実現する。
【0159】
図10は、楽音信号合成部100Cの構成を示すブロック図である。図10に示すように、楽音信号合成部100Cには、比較部101およびダンパモデル計算部102−1、102−2がない。弦モデル計算部104C−1、104C−2は、ダンパモデル計算部102から出力されるfDk(nΔt)を取得するのではなく、記憶部12Cに記憶されたfDk(nΔt)を取得する。楽音信号合成部100Cにおける他の構成については、実施形態における楽音信号合成部100と同様の機能を有するため、説明を省略する。
【0160】
なお、比較部101およびダンパモデル計算部102−1、102−2が存在しない構成としなくても、実施形態における楽音信号合成部100において、ep(nΔt)=1に固定(ダンパペダルがレスト位置に固定)された状態にすることにより、ダンパペダルが存在しない場合を実現してもよい。
【0161】
[変形例4]
上述した実施形態において、ダンパペダル16aおよびシフトペダル16bが取り除かれた構成の電子楽器を用いてもよい。この場合の構成について、図11図12を用いて説明する。
【0162】
図11は、本発明の変形例4に係る電子楽器1Dの構成を示すブロック図である。電子楽器1Dは、例えば、電子ピアノであり、制御部11D、記憶部12D、ユーザ操作部13D、演奏操作部15Dおよび放音部17Dを有している。これらの各部は、バス18Dを介して互いに接続されている。ユーザ操作部13D、放音部17Dおよびバス18Dは、実施形態に係る電子楽器1におけるユーザ操作部13、放音部17およびバス18と同様な機能を有するため、説明を省略する。
【0163】
演奏操作部15Dは、実施形態における演奏操作部15とは異なり、ペダル部16が取り除かれている。そのため、ペダル位置センサも存在しない。演奏操作部15Dにおける他の構成は、実施形態における演奏操作部15と同様な機能を有するため、説明を省略する。
【0164】
記憶部12Dは、実施形態における記憶部12とは異なり、ダンパの抵抗力fDk(nΔt)、およびハンマ先端が弦表面に及ぼす力fH(nΔt)を記憶している。これら値は、実施形態におけるダンパペダル16aおよびシフトペダル16bが踏込まれていない状態(レスト位置)における値を示す。
【0165】
制御部11Dは、実施形態における制御部11とは異なり、制御プログラムを実行して実現される楽音信号合成部100のうち、比較部101、ダンパモデル計算部102−1、102−2、およびハンマモデル計算部103を用いない楽音信号合成部100Dを実現する。
【0166】
図12は、楽音信号合成部100Dの構成を示すブロック図である。図12に示すように、楽音信号合成部100Dには、比較部101、ダンパモデル計算部102−1、102−2およびハンマモデル計算部103がない。弦モデル計算部104D−1、104D−2は、ダンパモデル計算部102から出力されるfDk(nΔt)およびハンマモデル計算部103から出力されるfH(nΔt)を取得するのではなく、記憶部12Dに記憶されたfDk(nΔt)およびfH(nΔt)を取得する。楽音信号合成部100Dにおける他の構成については、実施形態における楽音信号合成部100と同様の機能を有するため、説明を省略する。
【0167】
なお、比較部101、ダンパモデル計算部102−1、102−2およびハンマモデル計算部103が存在しない構成としなくても、実施形態における楽音信号合成部100において、eS(nΔt)=1に固定(シフトペダルがレスト位置に固定)、およびep(nΔt)=1に固定(ダンパペダルがレスト位置に固定)された状態にすることにより、シフトペダルおよびダンパペダルが存在しない場合を実現してもよい。
【0168】
[変形例5]
上述した実施形態においては、例えば、鍵盤部15a、ペダル部16の操作に応じて発音させる電子楽器1として機能させるために、リアルタイムに楽音信号合成処理を行っていたが、楽音制御データに応じて発音させる場合などにおいては、非リアルタイム処理としてもよい。
【0169】
この場合には、例えば、1曲分の楽音制御データを用いて、「楽器本体の固有振動モード毎の時間軸上速度データ」の算出を先に行っておき、そのデータと「本体の固有振動モードと空気中の観測点との間のインパルス応答または周波数応答のデータ」との畳み込み演算を後から行うということもできる。これは、観測点の位置のみ変更した場合の楽音合成が容易に行えることを意味する。
【0170】
[変形例6]
上述した実施形態においては、楽音信号合成処理は、ピアノの音を模擬した楽音信号を合成処理するものであったが、ピアノに限らず、振動する弦と、弦を2つの弦支持端によって支持し、弦の振動が弦支持端の少なくとも一端を介して伝達されることによって空気中に音響を放射する本体とを有する3次元構造の楽器であれば、どのような楽器(例えば、チェンバロ、琴、ギターなど)であってもよい。なお、琴のように弦が張られた両端の間に柱(ピアノの駒に相当)が設けられるような場合には、弦支持端の一端は柱となる。
【0171】
[変形例7]
上述した実施形態における制御プログラムは、磁気記録媒体(磁気テープ、磁気ディスクなど)、光記録媒体(光ディスクなど)、光磁気記録媒体、半導体メモリなどのコンピュータ読み取り可能な記録媒体に記憶した状態で提供し得る。また、電子楽器1は、制御プログラムをネットワーク経由でダウンロードしてもよい。
【符号の説明】
【0172】
1,1B,1C,1D…電子楽器、11,11B,11C,11D…制御部、11a…CPU、11b…DSP、11c…ROM、11d…RAM、11e…信号インターフェイス、11f…内部バス、12,12B,12C,12D…記憶部、13,13B,13C,13D…ユーザ操作部、13a…操作パネル、13b…マウス、13c…操作スイッチ、13d…キーボード、14…表示部、15,15B,15C,15D…演奏操作部、15a…鍵盤部、15b…黒鍵、15c…白鍵、15d…鍵位置センサ、15e…鍵速度センサ、16…ペダル部、16a…ダンパペダル、16b…シフトペダル、16c,16Bc,16Cc…ペダル位置センサ、17,17B,17C,17D…放音部、17a…デジタルアナログ変換器、17b…スピーカ、18,18B,18C,18D…バス、21…グランドピアノ、21a…鍵、21b…鍵盤、21c…ハンマ、21d…アクション機構、21e…弦、21ea…駒、21eb…ベアリング、21f…ダンパ、21h…キャビネット、21j…本体、100,100A,100B,100C,100D…楽音信号合成部、101…比較部、102−1、102−2…ダンパモデル計算部、103…ハンマモデル計算部、104−1,104A−1,104B−1,104C−1,104D−1,104−2,104A−2,104B−2,104C−2,104D−2…弦モデル計算部、105…本体モデル計算部、106…楽音信号計算部、107…力計算部、110…変換部、120…演算部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12