PythonでFFT/iFFTを行ってきたけど、うまくいかず。
理解のないまま、取り組んでいたため、ギターの周波数成分を取り出して逆変換しても、たぶん時間推移が(減衰波にならなかった…exp^(-a*t)の波形を掛ければいいのか?)再現できないために、ギターの音にはならなかった。
リアルタイムでこれをやるのは不可能だし、どうやっていいのかもわからず。
続いて、フィルタを使って、ローパス、ハイパス、バンドパス、など、いろんなのを試したけど、弦の音だけ取り出すことは最終的に出来なかった。
大敗北宣言!
ネット上では無音状態の時のノイズを拾ってきて、音が出ている時の信号からノイズ成分を引いてやってノイズキャンセリングしている人もいたけど、実用には遠いらしく、諦めた。
ギターエフェクタ?とか、ソフトを使って出来なかったことは、オラのプログラミング技術では回避不能で、諦めざるを得なかった。
残りはSuperCollider。
もしくはPureData。
SuperColliderでの楽器作りを通して、ギターのレーザーピックアップ見直す方法。
これなら突破口を見つけられるような気がしている。
楽器作りに関して、いろんなサンプルプログラムがあったので、それを試してみて改良を加えたい。
連休中が踏ん張りどころだ。
プロジェクト破綻寸前!
レーザーピックアップを廃止することが開発の選択と集中で最善の策なんだけど。
ギターのピックをケーブルでArduinoに繋げて、電化した弦とスイッチにしてやれば、弦がはじかれたかどうかの確認にはなると思った。
どこまでできるか分からないけどSuperColliderに託してみるのは悪くないと思っている。