JP5664185B2 - 楽音信号合成方法、プログラムおよび楽音信号合成装置 - Google Patents
楽音信号合成方法、プログラムおよび楽音信号合成装置 Download PDFInfo
- Publication number
- JP5664185B2 JP5664185B2 JP2010269812A JP2010269812A JP5664185B2 JP 5664185 B2 JP5664185 B2 JP 5664185B2 JP 2010269812 A JP2010269812 A JP 2010269812A JP 2010269812 A JP2010269812 A JP 2010269812A JP 5664185 B2 JP5664185 B2 JP 5664185B2
- Authority
- JP
- Japan
- Prior art keywords
- string
- information
- sound
- main body
- vibration
- 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.)
- Active
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Description
[電子楽器1の構成]
図1は、本発明の第1実施形態に係る電子楽器1の構成を示すブロック図である。電子楽器1は、例えば、電子ピアノであり、制御部11、記憶部12、ユーザ操作部13、演奏操作部15および放音部17を有している。これらの各部は、バス18を介して互いに接続されている。
この例においては、記憶部12は、特定の鍵が押下された場合の棚板音を示す波形データを、各鍵の位置に対応して複数記憶している。なお、各鍵の位置は、鍵番号およびシフトペダルの踏込量により規定される。波形データのデータ構成についての詳細は後述する。
次に、制御部11が制御プログラムを実行することによって実現される楽音信号合成部100および変換部110について図2、図3を用いて説明する。なお、以下に説明する楽音信号合成部100および変換部110における各構成の一部または全部については、ハードウエアによって実現してもよい。
図3は、楽音信号合成部100の構成を示すブロック図である。楽音信号合成部100は、以下で説明する複数モデル(ダンパモデル、ハンマモデル、弦モデル、本体モデル、空気モデル)から構成される物理モデルにより、擬似ピアノ音を示す楽音信号を合成する。標準的なピアノは、鍵盤には88個の鍵が備わっており、各鍵に対応して、ハンマが1個、弦が1〜3本、ダンパが0〜複数個(弦と複数点で接触することを意味する)、備わっている。なお、弦の本数、ダンパの個数については、音域毎に異なるものとなっている。
(仮定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)空気は渦無しであるとする。
ダンパモデル計算部102は、1番目の弦(iw=1)に対応するダンパについて計算するダンパモデル計算部102−1、2番目の弦(iw=2)に対応するダンパについて計算するダンパモデル計算部102−2を有する。以下の説明においては、弦のインデックスが異なるだけであるから、ダンパモデル計算部102として説明する。なお、弦が3本以上存在する場合には、上述したように、ダンパモデル計算部102−iw(iw=3,4,・・・)を弦(iw=3,4,・・・)に対応させて設ければよい。
以上が、ダンパモデル計算部102の説明である。
ハンマモデル計算部103は、入力信号2(VH(nΔt))および入力信号4(eS(nΔt))を取得し、また、後述するようにして弦モデル計算部104から出力されるu1(xH,nΔt)を取得し、これらを用いて、以下に示す計算を行った結果得られるfH(nΔt)を弦モデル計算部104に出力する。
弦モデル計算部104は、弦に及ぼす力となる、ダンパモデル計算部102から出力されるfDk(nΔt)(k=1,3)およびハンマモデル計算部103から出力されるfH(nΔt)、また、後述するようにして本体モデル計算部105から出力されるuBk(nΔt)(k=1,2,3)をそれぞれ取得し、これらを用いて、以下に示す計算を行った結果得られるfBk(nΔt)(k=1,2,3)を本体モデル計算部105に出力し、また、uk(xD,nΔt)(k=1,3)をダンパモデル計算部102に出力し、u1(xH,nΔt)をハンマモデル計算部103に出力する。
偏微分方程式(式(8)、(9)、(10))に式(13)を代入してから、sin(ikπx/l)(ik=1,2,・・・,Mk; k=1,2,3)をそれぞれ掛けて区間「0≦x≦l」で積分すると、以下に示す2階常微分方程式(式(14)、(15)、(16))が導かれる。
化粧音生成部200は、入力信号2(VH(nΔt))および入力信号4(eS(nΔt))を取得して、化粧音により弦支持端に及ぼす力FBk(nΔt)(k=1,2,3)を示す化粧音情報を生成する。そして、化粧音生成部200は、FBk(nΔt)に基づいて、弦モデル計算部104から出力されて本体モデル計算部105に入力されるfBk(nΔt)に対して補正を行う。この例においては、化粧音生成部200は、FBk(nΔt)を出力して、fBk(nΔt)に加算することにより補正する。このFBk(nΔt)は、fBk(nΔt)と同様に、iK、iW、iBのインデックスをもつ。なお、FBk(nΔt)において、k=2,3については、「0」として、加算の対象をk=1のみとしてもよい。また、fBk(nΔt)にFBk(nΔt)を単純に加算するのではなく、減算、重み付けをして加算、積算、除算などにより合成をすることで補正してもよい。
波形読出部220は、記憶部12に記憶されている波形データのうち、生成制御部210の制御により選択される波形データを読み出して出力する。ここで、記憶部12に記憶されている波形データについて説明する。
まず、鍵21aを押下したときに弦21eが振動しない状態にしておき、利用者は、変位を検出するセンサなどを用いて、特定の鍵21aを押下することにより生じた棚板音の振動が伝達される弦支持端(駒21eaおよびベアリング21eb)における変位を、全ての弦21eの支持端について検出する。弦21eが振動(発音)しない状態とは、例えば、弦21eを取り外した状態、ハンマ21cを取り外した状態、または弦21eをダンプした状態などであればよい。
検出を開始するタイミングは、鍵21aを押下し始めてから、棚板音が生じるまでの間のいずれかのタイミングとして規定しておけばよい。
記憶部12には、このように算出されたFBk(nΔt)に対応する波形データが、各鍵21aに対応して記憶されている。また、鍵21aと棚板21kとの衝突位置は、シフトペダル21nの踏込量によっても変化するため、これらの波形データは、シフトペダル21nの踏込量が「0」の場合だけでなく、シフトペダル21nの踏込量を変化させた場合についても、同様に踏込量に対応して記憶部12に記憶されている。すなわち、記憶部12は、各鍵21aの鍵番号(演奏情報の情報KCに対応)と、シフトペダル21nの踏込量(演奏情報の情報PSに対応)との組み合わせに対応して、波形データを記憶している。
DCF240は、波形データの高周波数成分を減衰させるローパスフィルタであって、生成制御部210が取得したVH(nΔt)に応じたカットオフ周波数が設定される。このカットオフ周波数は、この例においては、VH(nΔt)が示すハンマ速度が速いほど高い周波数になるように制御される。化粧音生成部200は、このようにDCA230およびDCF240において加工された波形データをFBk(nΔt)として出力する。
このようにして出力されるFBk(nΔt)が、弦モデル計算部104から出力されたfBk(nΔt)に加算されることにより、弦支持端に及ぼす力には、弦の振動による力だけでなく、棚板音の振動による力が含まれることになる。
以上が、化粧音生成部200の説明である。
本体モデル計算部105は、弦モデル計算部104から出力され、化粧音生成部200により補正されたfBk(nΔt)を取得し、これを用いて、以下に示す計算を行った結果得られるAC(nΔt)を空気モデル計算部106に出力し、uBk(nΔt)(k=1,2,3)を弦モデル計算部104に出力する。なお、空気モデル計算部106における説明において、入力される「fBk(nΔt)」については、弦モデル計算部104から出力された値そのものではなく、化粧音生成部200によって補正された後の値(弦および化粧音が弦支持端に及ぼす力)であるものとして説明する。
(参考文献2:長松昭男. モード解析. 培風館,1985.)
なお、弦支持端の変位は、以下の式(34)を用いることによって算出できる。
次に、上記の各モデルにおける運動方程式の解法の例について説明する。以下の説明では、ハンマの運動方程式(上記式(3))、弦のモード毎運動方程式(上記式(14)、(15)、(16))、および本体のモード毎運動方程式(上記式(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)、本体の各固有振動モードのモード座標上での変位AC [m](t)(m=1,2,・・・,M)に関する連立非線形常微分方程式となる。いま、初期条件として演奏前の状態、即ち、静止状態を設定することにより、ここで扱っている問題は、いわゆる「連立非線形常微分方程式の初期値問題」と考えることができる。「連立非線形常微分方程式の初期値問題」は、なんらかの数値積分法(参考文献3)を用いることで、連立非線形代数方程式を離散時間軸上で逐次解いていく問題に変換することができる。
(参考文献3:日本機械学会編. 数値積分法の基礎と応用. コロナ社,2003.)
以下に、いくつかの解法例を示す。
まず、ハンマモデル、弦モデル、本体モデルの運動方程式全体をまとめて解く方法を示す。上記の「ハンマ−弦−本体の運動方程式」(連立非線形常微分方程式)にニューマークβ法を適用すると、「ハンマ重心の加速度あるいは加速度増分」、「弦の各固有振動モードのモード座標上での加速度あるいは加速度増分」、および、「本体の各固有振動モードのモード座標上での加速度あるいは加速度増分」を未知量とする連立非線形代数方程式を導出することができる。ここで、「加速度あるいは加速度増分」と書いた理由は、ニューマークβ法として知られている数値積分法には、加速度を未知量とするアルゴリズムと、加速度増分を未知量とするアルゴリズムとの2通りが存在することによるものである。
演算部120は、上記のダンパモデル計算部102、ハンマモデル計算部103、弦モデル計算部104および本体モデル計算部105における計算をまとめた「ハンマ−弦−本体の運動方程式」を用いた演算を行う。演算部120は、比較部101からeD(nΔt)を取得し、また、入力信号2(VH(nΔt))および入力信号4(eS(nΔt))を取得し、化粧音生成部200からfBk(nΔt)を補正するためのFBk(nΔt)を取得し、これらの情報と「ハンマ−弦−本体の運動方程式」とを用いた演算により、上記の未知量を逐次算出して決定する。ここでは、未知量のうち、「本体の各固有振動モードのモード座標上での速度」を示す情報(d/dt(AC(nΔt)))を空気モデル計算部106Zに出力する。
続いて、ハンマモデル、弦モデル、本体モデルの運動方程式を部分構造(以下、ハンマモデル計算部103、弦モデル計算部104、本体モデル計算部105を総称して単に部分構造という)毎に解く方法を示す。この方法は、上述の「ハンマ−弦−本体の運動方程式」の説明において消去した部分構造間の相互作用を表す変数fH [iW](t)、fBk [iB](t)、u1(xH,t)、uk(xD [iD],t)、uBk [iB](t)の値を陽に計算し、部分構造間でそれらの値の授受を行いながら、部分構造毎に計算を進めるというものである。
ハンマの運動方程式(上記式(3))に対して、中央差分法を適用し、弦のモード毎運動方程式(上記式(14)、(15)、(16))および本体のモード毎運動方程式(上記式(32))に対して、双一次s−z変換法を適用することによって、一連の差分方程式が導出される。各差分方程式は、一般的な2次IIRフィルタ演算によって解くことができる。この方法では、「ハンマ重心の変位」、「弦の各固有振動モードのモード座標上での変位」、および、「本体の各固有振動モードのモード座標上での変位」を未知量として、それらの値を離散時間軸上で逐次決定していくことになる。
ハンマの運動方程式(上記式(3))、弦のモード毎運動方程式(上記式(14)、(15)、(16))および本体のモード毎運動方程式(上記式(32))に対して、時間に関する3次関数を試験関数とするガラーキン法(参考文献4)を適用することで、「ハンマ重心の加速度および加加速度」、「弦の各固有振動モードのモード座標上での加速度および加加速度」、「本体の各固有振動モードのモード座標上での加速度および加加速度」を未知量として、それらの値を離散時間軸上で、逐次決定するアルゴリズムが得られる。ここで、時間に関する3次関数ではなく4次関数を試験関数とするガラーキン法を用いた場合は、加速度、加加速度および加加加速度を未知量とするアルゴリズムが得られる。
(参考文献4:加川幸雄.有限要素法による振動・音響工学/基礎と応用. 培風館,1981.)
ハンマの運動方程式(上記式(3))、弦のモード毎運動方程式(上記式(14)、(15)、(16))および本体のモード毎運動方程式(上記式(32))に対して、ニューマークβ法を適用することで、「ハンマ重心の加速度あるいは加速度増分」、「弦の各固有振動モードのモード座標上での加速度あるいは加速度増分」、および、「本体の各固有振動モードのモード座標上での加速度あるいは加速度増分」を未知量として、それらの値を離散時間軸上で、逐次決定するアルゴリズムが得られる。
上記の「全体をまとめて解く方法」と「部分構造毎に解く方法」との中間の方法を用いることもできる。例えば、ハンマモデルと弦モデルとをまとめて、本体モデルは別に解く、あるいは、ハンマモデルをまず解いて、弦モデルと本体モデルとをまとめて解くという方法を用いてもよい。
空気モデル計算部106は、本体モデル計算部105から出力されるAC(nΔt)を取得し、これを用いて、以下に示す計算を行った結果得られるP(nΔt)を出力する。
以上が、楽音信号合成部100の構成の説明である。
変更することにより、リンギングサウンドのレベルをコントロールすることが可能となる。以下では、特に、このリンギングサウンドについて、式(15)を用いて説明する。ただし、ここでは説明を理解しやすくするために、式(15)において、弦支持端の変位、弦y方向の変位および弦の内部粘性減衰係数を省略した式(38)に従って説明することとする。
(参考文献5: J.Ellis. Longitudinal model in piano strings: Results of new research. Piano Technicians journal, pp.16-23, May 1998.)
第2実施形態においては、上述した第1実施形態における化粧音生成部200を用いずに構成される楽音信号合成部100Aについて説明する。
このように、楽音信号合成部100Aは、化粧音生成部200を用いない構成であるため、再現する擬似ピアノ音に、棚板音など化粧音を含ませたくない場合に好適である。
第3実施形態においては、上述した第1、第2実施形態における弦モデル計算部104における計算内容とは別の計算を行う場合について説明する。この例においては、第1実施形態における弦モデル計算部104を、別の計算を行う弦モデル計算部104Bに置き換えた楽音信号合成部100Bについて説明する。
図10(a)に示すように、第1WG計算部1041Bは、ディレイD1、D2、D3、D4、およびフィルタ1041B−Fを有する閉ループを有する。また、第1WG計算部1041Bは、閉ループに接続された力変換部1041B−1、1041B−2、および変位変換部1041B−3を有する。
なお、この例においては、ダンパ21fの弦21eへの接触点は2つ(iD=1、2)であるものとする。また、閉ループ中の各加算器は、実際の加算器による遅延分を、隣接するディレイ乃至フィルタに組み込むことにより、遅延がないものとされている。
fH(nΔt)は、ハンマ21cが弦21eと接触する位置に応じた閉ループ上の位置、すなわち、ディレイD2とD3との間の位置に入力される。このとき、fH(nΔt)は変位変換部1041B−3により変位に変換されて入力される。変位変換部1041B−3は、fH(nΔt)について、時間に関する積分を2回行うことにより変位に変換する。
ダンパモデル計算部102から出力されるfDk(nΔt)(k=1)については、フィルタ1041B−Fに入力され、フィルタ制御に用いられる。
fBk(nΔt)(k=1)は、上述のuBk(nΔt)(k=1)と同様に、fBk(nΔt)(k=1,iB=0)は、フィルタ1041B−FとディレイD1との間の位置、fBk(nΔt)(k=1,iB=1)は、ディレイD4とフィルタ1041B−Fとの間の位置から出力される。このとき、閉ループ上の巡回信号は変位を示しているため、力変換部1041B−1,1041B−2によりfBk(nΔt)(k=1)に変換される。力変換部1041B−1,1041B−2は、閉ループから出力される巡回信号が示す変位を、例えば、上述した式(25)を用いてfBk(nΔt)(k=1)に変換する。
u1(xH,nΔt)は、ハンマ21cが弦21eと接触する位置に応じた閉ループ上の位置、この例においては、ディレイD2とD3との間の位置から出力される。
図10(c)に示す第3WG計算部1043Bについては、第1WG計算部1041Bにおけるk=1をもつ各パラメータを、k=3をもつ各パラメータの入出力にしただけであるから、説明を省略する。また、第3WG計算部1043Bは、第2WG計算部1042Bと同様に、fH(nΔt)が入力されないため、変位変換部に相当する構成を有していない。
このようにすると、第1実施形態における場合に比べて、弦モデルの計算を簡易にすることができる。
以上、本発明の実施形態について説明したが、本発明は以下のように、さまざまな態様で実施可能である。
[変形例1]
上述した第1(第3)実施形態においては、波形データは、弦21eを振動しない状態にしておき、支持端の変位を検出した結果から作成されていたが、別の態様で作成されてもよい。
まず、弦21eを振動する状態にしておき、特定の鍵21aが特定の速度で押下された場合の弦支持端の変位を検出する。そして、同じ条件となるように、特定の鍵21aに対応する鍵(15b、15c)が特定の速度で押下された場合を想定して楽音信号合成部100において化粧音生成部200における補正無く計算されたfBk(nΔt)と、検出された弦支持端の変位から算出される力との差分を、FBk(nΔt)に対応する波形データとしてもよい。このようにすれば、本体モデル計算部105に入力されるfBk(nΔt)は、実際に検出された弦支持端の変位から算出される力に近いものに補正されることになる。
なお、FBk(nΔt)に対応する波形データは、棚板音が生じることによる本体21jの振動波形を物理的にモデル計算して生成されてもよい。
上述した第1(第3)実施形態においては、化粧音生成部200は、fBk(nΔt)の補正を行っていたが、fBk(nΔt)の補正を行わない構成とする一方、化粧音を示す楽音信号を生成し、楽音信号P(nΔt)と加算するなどして、楽音信号P(nΔt)と化粧音とを合成してもよい。この場合には、記憶部12に記憶される波形データは、弦21eが振動しない状態にしておき、特定の鍵21aを押下することにより生じた棚板音を空気中の任意の観測点(例えば、楽音信号P(nΔt)の算出に用いた観測点)において録音して得られる波形により生成されてもよい。
上述した第1(第3)実施形態においては、化粧音生成部200は、弦モデル計算部104から出力されて本体モデル計算部105に入力されるfBk(nΔt)に対して補正を行っていたが、本体モデル計算部105から出力され、弦モデル計算部104に入力されるuBk(nΔt)に対して補正を行うようにしてもよい。この場合には、化粧音生成部200は、波形データに基づいて、化粧音に応じた弦支持端の変位を示す化粧音情報を生成すればよい。なお、波形データが化粧音に応じた弦支持端の変位を示すものであってもよい。
上述した第1(第3)実施形態においては、化粧音生成部200は、fBk(nΔt)の補正を行っていたが、弦モデル計算部104の計算で用いられる「前記弦の各固有振動モードのモード座標上での変位または変位の時間に関するn階微分」に対して、補正をするようにしてもよい。この場合には、記憶部12に記憶される波形データは、ハンマ21cを取り外しておき、特定の鍵21aの押下による棚板音が伝達された弦21eについての振動を、センサを用いて検出した結果から作成されればよい。
上述した第1(第3)実施形態においては、化粧音生成部200において、fBk(nΔt)の補正を行っていたが、本体モデル計算部105において、変換部110からの信号を取得して、鍵21aと棚板との衝突により生じる棚板音による振動についてもモデル計算を行うようにしてもよい。
上述した第1(第3)実施形態においては、化粧音として棚板音を再現する構成を説明したが、ダンパペダル21m、シフトペダル22nの操作による動作音を再現する場合には、化粧音生成部200は、これらの操作により出力される演奏情報、eP(nΔt)、eS(nΔt)を取得するようにすればよい。このとき、化粧音生成部200は、ダンパペダル21m、シフトペダル22nの操作速度を算出してDCA230、DCF240などの制御に用いてもよい。
上述した第1、第2実施形態においては、運動方程式を用いて弦21eの振動を計算し、第3実施形態においては、遅延手段と特性制御手段とを有する閉ループを用いて弦21eの振動を計算したが、弦に及ぼす力および弦支持端の変位を用いて、弦21eの振動を計算する方法であれば、どのような方法を用いてもよい。
上述した第3実施形態においては、遅延手段と特性制御手段とを有する閉ループを用いて弦21eの振動を計算したが、このような閉ループを用いて本体21jの振動を計算するようにしてもよい。
上述した第1(第2、第3)実施形態において、弦モデル計算部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)との一方または双方については、他の計算方法により算出されたものを取得するようにしてもよい。また、第1(第2、第3)実施形態において、空気モデル計算部106は、本体モデル計算部105から出力されるAC(nΔt)に基づいて、空気モデルを用いた計算により楽音信号P(nΔt)を算出していたが、他の計算方法により楽音信号P(nΔt)を算出してもよい。
fDk(nΔt)(k=1,3)とfH(nΔt)との双方が他の計算方法により算出され、楽音信号P(nΔt)が空気モデル以外を用いた計算方法により算出される場合の構成について図11を用いて説明する。
力計算部107は、fH(nΔt)とに相当する情報を算出するに当たり、弦モデル計算部104Cからu1(xH,nΔt)を取得せず、予め決められたu1(xH,nΔt)を用いる。力計算部107は、このu1(xH,nΔt)を各入力信号に基づいて予め決められた算出式により算出してもよい。
また、力計算部107は、fDk(nΔt)(k=1,3)とに相当する情報を算出するに当たり、弦モデル計算部104Cからuk(xD,nΔt)(k=1,3)を取得せず、予め決められたuk(xD,nΔt)(k=1,3)を用いる。力計算部107は、このuk(xD,nΔt)(k=1,3)を各入力信号に基づいて予め決められた算出式により算出してもよい。
との一方または双方を用いずに、弦に及ぼす力が計算されるようにしてもよい。
上述した第1(第2、第3)実施形態において、シフトペダル16bが取り除かれた構成の電子楽器を用いてもよい。この場合の構成について、図12、図13を用いて説明する。
上述した第1(第2、第3)実施形態において、ダンパペダル16aが取り除かれた構成の電子楽器を用いてもよい。この場合の構成について、図14、図15を用いて説明する。
上述した第1(第2、第3)実施形態において、ダンパペダル16aおよびシフトペダル16bが取り除かれた構成の電子楽器を用いてもよい。この場合の構成について、図16、図17を用いて説明する。
上述した第1(第3)実施形態においては、化粧音生成部200は、化粧音により弦支持端に及ぼす力FBk(nΔt)を示す化粧音情報を生成し、これにより、fBk(nΔt)の補正を行っていたが、化粧音により本体の他の部分に及ぼす力を示す化粧音情報を生成するようにしてもよい。例えば、棚板音については、鍵21aと棚板21kとの衝突により生じるから、この衝突位置から本体に及ぼす力fEk(nΔt)が生成されるようにすればよい。以下、この場合における楽音信号合成部100Gの構成について、図18を用いて説明する。
ここで、化粧音生成部200Gの波形読出部により記憶部12から読み出される波形データについても、第1実施形態における波形データとは異なっている。すなわち、第1実施形態における波形データは、棚板音の振動波形を弦支持端の変位として検出して得られたものであったが、本変形例における波形データは、鍵と衝突する位置における本体の変位として検出して得られたものである点で異なっている。化粧音生成部200Gは、この波形データを加工して、鍵の衝突位置から本体に及ぼす力fEk(nΔt)を出力する。
なお、波形データは、変形例1の作成方法を適用して、波形データを作成してもよい。また、化粧音生成部200Gにおいて、物理モデルを用いて鍵21aの棚板21kへの衝突の際に生じる力を計算し、fEk(nΔt)として出力してもよい。この場合には、波形データを用いない構成とすることもできる。
上述した第1(第2、第3)実施形態においては、例えば、鍵盤部15a、ペダル部16の操作に応じて発音させる電子楽器1として機能させるために、リアルタイムに楽音信号合成処理を行っていたが、楽音制御データに応じて発音させる場合などにおいては、非リアルタイム処理としてもよい。
上述した第1(第2、第3)実施形態においては、楽音信号合成処理は、ピアノの音を模擬した楽音信号を合成処理するものであったが、ピアノに限らず、振動する弦と、弦を支持し、弦の振動が伝達されることによって空気中に音響を放射する本体とを有する3次元構造の楽器であれば、どのような楽器(例えば、チェンバロ、琴、ギターなど)であってもよい。なお、琴のように弦が張られた両端の間に柱(ピアノの駒に相当)が設けられるような場合には、弦支持端の一端は柱となる。
また、ピアノ以外の楽器の音を模擬するものであっても、楽音信号合成処理において、本体の振動により生じる音の一部を化粧音として含む楽音信号を合成処理することができる。例えば、ギターであれば、胴(本体)を叩いたときの胴と弦との連成振動を考慮した音の楽音信号が合成される。
上述した第1(第2、第3)実施形態における制御プログラムは、磁気記録媒体(磁気テープ、磁気ディスクなど)、光記録媒体(光ディスクなど)、光磁気記録媒体、半導体メモリなどのコンピュータ読み取り可能な記録媒体に記憶した状態で提供し得る。また、電子楽器1は、制御プログラムをネットワーク経由でダウンロードしてもよい。
Claims (10)
- 振動する弦と、前記弦を2つの弦支持端によって支持し、前記弦の振動が前記弦支持端の少なくとも一端を介して伝達される本体とを有する3次元構造の楽器から発せられる音の楽音信号を、入力される演奏情報に応じて生成する楽音信号合成方法であって、
制御部が、前記演奏情報に応じて算出される前記弦に及ぼす力を表す第1の情報、および前記弦支持端の少なくとも一端における変位または変位の時間に関するn階導関数(n=1,2,・・・)を表す第2の情報を取得し、前記第1の情報および前記第2の情報を用いた前記弦の振動を表す物理的なモデル計算により、前記弦の振動を表す第3の情報を算出し、前記第2の情報および前記第3の情報に基づいて、前記弦が前記弦支持端の少なくとも一端に及ぼす力を表す第4の情報を算出する弦モデル計算過程と、
制御部が、前記演奏情報に応じて、前記音の一部である化粧音により前記本体に及ぼす力を示す化粧音情報を生成して出力する化粧音生成過程と、
制御部が、前記第4の情報および前記化粧音情報用いた前記本体の振動を表す運動方程式に基づいて、前記本体の各固有振動モードのモード座標上での変位または変位の時間に関するn階導関数(n=1,2,・・・)を表す第5の情報を算出し、前記第5の情報に基づいて前記弦モデル計算過程において取得される前記第2の情報を算出する本体モデル計算過程と、
制御部が、前記第5の情報に基づいて、前記楽音信号を算出する楽音信号計算過程と
を備えることを特徴とする楽音信号合成方法。 - 前記化粧音情報が示す本体に及ぼす力は、前記弦支持端の少なくとも一端に及ぼす力であり、
前記本体の振動を表す運動方程式は、前記第4の情報を前記化粧音情報により補正して得られる前記弦支持端の少なくとも一端に及ぼす力を用いた運動方程式である
ことを特徴とする請求項1に記載の楽音信号合成方法。 - 前記弦モデル計算過程における前記物理的なモデル計算は、前記第1の情報および前記第2の情報を用いた前記弦の振動を表す運動方程式に基づく計算であり、
前記第3の情報は、前記弦の各固有振動モードのモード座標上での変位または変位の時間に関するn階導関数(n=1,2,・・・)を表す
ことを特徴とする請求項1または請求項2に記載の楽音信号合成方法。 - 前記弦モデル計算過程における前記物理的なモデル計算は、遅延手段および特性制御手段を有する閉ループに、前記第1の情報および前記第2の情報に応じた励起信号を入力し、前記閉ループに生成される前記弦の振動を表す巡回信号を前記第3の情報として算出する計算である
ことを特徴とする請求項1または請求項2に記載の楽音信号合成方法。 - 前記化粧音生成過程においては、制御部が、前記化粧音の振動波形を表す波形データを記憶する記憶手段から、前記演奏情報に応じて波形データを読み出し、読み出した波形データを前記演奏情報に応じて加工して、前記化粧音情報を生成する
ことを特徴とする請求項1乃至請求項4のいずれかに記載の楽音信号合成方法。 - 前記楽器は、押下されることにより前記本体に衝突する鍵、および前記鍵の押下により前記弦を打つハンマを有するピアノであり、
前記波形データは、前記ピアノから前記ハンマが取り外された状態で前記鍵を押下して当該鍵が前記本体に衝突することにより生じた、前記本体の振動を検出した結果に基づいて生成されたものである
ことを特徴とする請求項5に記載の楽音信号合成方法。 - 前記楽器は、押下されることにより前記本体に衝突する鍵、および前記鍵の押下により前記弦を打つハンマを有するピアノであり、
前記波形データは、前記弦が打弦されても発音しないようにダンプされた状態で前記鍵を押下して当該鍵が前記本体に衝突することにより生じた、前記本体の振動を検出した結果に基づいて生成されたものである
ことを特徴とする請求項5に記載の楽音信号合成方法。 - 前記楽器は、押下されることにより前記本体に衝突する鍵を有するピアノであり、
前記波形データは、前記鍵を押下して当該鍵が前記本体に衝突することにより生じる、前記本体の振動を物理的なモデル計算により生成されたものである
ことを特徴とする請求項5に記載の楽音信号合成方法。 - コンピュータに、振動する弦と、前記弦を2つの弦支持端によって支持し、前記弦の振動が前記弦支持端の少なくとも一端を介して伝達される本体とを有する3次元構造の楽器から発せられる音の楽音信号を、入力される演奏情報に応じて生成させるプログラムであって、
前記コンピュータを、
前記演奏情報に応じて算出される前記弦に及ぼす力を表す第1の情報、および前記弦支持端の少なくとも一端における変位または変位の時間に関するn階導関数(n=1,2,・・・)を表す第2の情報を取得し、前記第1の情報および前記第2の情報を用いた前記弦の振動を表す物理的なモデル計算により、前記弦の振動を表す第3の情報を算出し、前記第2の情報および前記第3の情報に基づいて、前記弦が前記弦支持端の少なくとも一端に及ぼす力を表す第4の情報を算出する弦モデル計算手段と、
前記演奏情報に応じて、前記音の一部である化粧音により前記本体に及ぼす力を示す化粧音情報を生成して出力する化粧音生成手段と、
前記第4の情報および前記化粧音情報用いた前記本体の振動を表す運動方程式に基づいて、前記本体の各固有振動モードのモード座標上での変位または変位の時間に関するn階導関数(n=1,2,・・・)を表す第5の情報を算出し、前記第5の情報に基づいて前記弦モデル計算手段において取得される前記第2の情報を算出する本体モデル計算手段と、
前記第5の情報に基づいて、前記楽音信号を算出する楽音信号計算手段
として機能させるためのプログラム。 - 振動する弦と、前記弦を2つの弦支持端によって支持し、前記弦の振動が前記弦支持端の少なくとも一端を介して伝達される本体とを有する3次元構造の楽器から発せられる音の楽音信号を、入力される演奏情報に応じて生成する楽音信号生成装置であって、
前記演奏情報に応じて算出される前記弦に及ぼす力を表す第1の情報、および前記弦支持端の少なくとも一端における変位または変位の時間に関するn階導関数(n=1,2,・・・)を表す第2の情報を取得し、前記第1の情報および前記第2の情報を用いた前記弦の振動を表す物理的なモデル計算により、前記弦の振動を表す第3の情報を算出し、前記第2の情報および前記第3の情報に基づいて、前記弦が前記弦支持端の少なくとも一端に及ぼす力を表す第4の情報を算出する弦モデル計算手段と、
前記演奏情報に応じて、前記音の一部である化粧音により前記本体に及ぼす力を示す化粧音情報を生成して出力する化粧音生成手段と、
前記第4の情報および前記化粧音情報用いた前記本体の振動を表す運動方程式に基づいて、に基づいて、前記本体の各固有振動モードのモード座標上での変位または変位の時間に関するn階導関数(n=1,2,・・・)を表す第5の情報を算出し、前記第5の情報に基づいて前記弦モデル計算手段において取得される前記第2の情報を算出する本体モデル計算手段と、
前記第5の情報に基づいて、前記楽音信号を算出する楽音信号計算手段と
を具備することを特徴とする楽音信号生成装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010269812A JP5664185B2 (ja) | 2010-12-02 | 2010-12-02 | 楽音信号合成方法、プログラムおよび楽音信号合成装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010269812A JP5664185B2 (ja) | 2010-12-02 | 2010-12-02 | 楽音信号合成方法、プログラムおよび楽音信号合成装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012118415A JP2012118415A (ja) | 2012-06-21 |
JP5664185B2 true JP5664185B2 (ja) | 2015-02-04 |
Family
ID=46501268
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010269812A Active JP5664185B2 (ja) | 2010-12-02 | 2010-12-02 | 楽音信号合成方法、プログラムおよび楽音信号合成装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5664185B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE112017008063T5 (de) | 2017-11-07 | 2020-07-23 | Yamaha Corporation | Klangquelle, musikalisches tasteninstrument und programm |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2820205B2 (ja) * | 1997-02-27 | 1998-11-05 | ヤマハ株式会社 | 楽音合成装置 |
JP3116894B2 (ja) * | 1998-03-27 | 2000-12-11 | ヤマハ株式会社 | 電子楽器 |
-
2010
- 2010-12-02 JP JP2010269812A patent/JP5664185B2/ja active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE112017008063T5 (de) | 2017-11-07 | 2020-07-23 | Yamaha Corporation | Klangquelle, musikalisches tasteninstrument und programm |
US11694665B2 (en) | 2017-11-07 | 2023-07-04 | Yamaha Corporation | Sound source, keyboard musical instrument, and method for generating sound signal |
Also Published As
Publication number | Publication date |
---|---|
JP2012118415A (ja) | 2012-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5605192B2 (ja) | 楽音信号合成方法、プログラムおよび楽音信号合成装置 | |
CN101908333B (zh) | 用于合成音调信号的方法和音调信号生成*** | |
JP5261385B2 (ja) | 鍵盤弦楽器の音響を表す信号の生成装置 | |
Bilbao et al. | Physical modeling, algorithms, and sound synthesis: The NESS project | |
Jiolat et al. | Toward a physical model of the clavichord | |
JP2006047451A (ja) | 電子楽器 | |
JP5664185B2 (ja) | 楽音信号合成方法、プログラムおよび楽音信号合成装置 | |
JP5716370B2 (ja) | 楽音信号合成方法、プログラムおよび楽音信号合成装置 | |
JP5716369B2 (ja) | 楽音信号合成方法、プログラムおよび楽音信号合成装置 | |
JP6372124B2 (ja) | 楽音信号合成方法、プログラムおよび楽音信号合成装置 | |
JP5614108B2 (ja) | 楽音信号合成方法、プログラムおよび楽音信号合成装置 | |
JP5614109B2 (ja) | 楽音信号合成方法、プログラムおよび楽音信号合成装置 | |
JP6736930B2 (ja) | 電子楽器および音信号生成方法 | |
JP5598291B2 (ja) | 楽音信号合成方法、プログラムおよび楽音信号合成装置 | |
JP6717017B2 (ja) | 電子楽器、音信号生成方法およびプログラム | |
JP5935252B2 (ja) | 電子鍵盤楽器 | |
Giordano | Numerical simulations of musical instruments | |
Papiotis et al. | KETTLE: A REAL-TIME MODEL FOR ORCHES-TRAL TIMPANI | |
JP2023143837A (ja) | 楽音信号合成方法、楽音信号合成装置およびプログラム | |
Christensen | An Interactive Musical Installation Using Physical Modeling and Algorithmic Composition | |
Evangelista | Synthesis of the Guitar and Player’s Interaction | |
Debut et al. | A PHYSICS-BASED MODELING APPROACH FOR VIBRATO ON FRETTED AND NON-FRETTED STRING INSTRUMENTS | |
JP2009168835A (ja) | 楽音合成装置およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20131022 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140825 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140902 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141021 |
|
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: 20141111 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141124 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5664185 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |