「PIC AVR 工作室」サイトの日記的なブログです。
サイトに挙げなかった他愛ないことを日記的に書き残してます。
PIC AVR 工作室 ブログ



ウクレレMIDI化の妄想を相変わらず匍匐前進中。

例によってあの本を読み進めて、ようやくFFTの
ところまで読み終わり。

とりあえず全体像は見えてきたんだけど、まだ
プログラムのロジックに落とせるところまでは
届いてないなぁ。あとでまた読み直そう。
読書百回だな。

でもおぼろげながら見えてきた。読む前は
虚数にはアレルギーがあったし、FFTの
計算原理も良く解ってなかったし。だいぶ
わかってきた感があるもんな。


現状とりあえず、どんな観点で設計していけば
イイのかはおおよそ見えてきたので、それを
いいことに少し机上計算(たぬきのなんとやら)
をやってみる。


「周波数分解能」「サンプル数」「処理速度」
あたりが三つ巴っぽいかな。周波数分解能を
向上しようとすればサンプル数(≒メモリ容量)
が増えちゃうし、処理速度も遅くなっちゃう。

サンプル数(メモリ量)を減らそうとすれば
周波数分解能も悪くなる。そんな感じ。


サンプル数を減らしても周波数分解能は落とさない
って方法も無いことは無いんだけど。
各弦個別にナイキスト周波数を設定しちゃう。
各弦が許すギリギリの周波数まで下げちゃう。
もちろん各弦の一番上のフレットよりは高くして
おかないとダメ。
そうすることで、サンプル数が同じでもΔFが
相対的に小さくなるって寸法ですよ。ロジックは
グチャグチャになっちゃうけど。


で、表計算ソフトを使って、128点、256点
を採用した場合に、C、C#、D、D#、E…と
それぞれの音程付近をカバーするスペクトルの
ポイントが幾つ取れるかがをひたすら計算して
みちゃう。

そもそも各音程にジャストフィットする周波数
のスペクトルを都合よく拾えるような仕組み
(例えば261.6255hzと440hzを
両立するような計算方法)があれば問題なし
なんだけど、そういう便利な処理方法は出来ない
ので、周波数分解能を有る程度細かく設定する
ことによって、各音程に相当する成分があるか
どうかを近似的に判別してしまおうという作戦です。
(人間の耳の周波数分解能って、そう考えると
 すごいもんだねぇ…)

というわけで、周波数が近いところに
       「数打ちゃ当る」
作戦なのだ。一応あの本にもそういう拾い方は
可能っぽい事が書いてあったから、やるだけやって
みればいいジャン。


で、皮算用の結果。
128点でグチャグチャのロジックを組むか、
256点でスマートなロジックで済ますか、
どっちかの作戦っぽいなという感じ。

128点だとすると、弦が4本だから4倍して
128×4=512個の変数が必要。
音質に拘る必要は無いから、サンプリングを
8ビットで行うとすると512バイト。
もうちょっと贅沢して16ビット幅を確保
するとなると1KB。

これに加えてFFT計算のワーク用にある程度
纏まった容量が必要。それに加え、FFT以外の
ロジック処理用(いわゆるアプリ部分)にもある程度
必要。最低でも2KBのRAMが無いとお話にならず。

256点だとすると、おおよそ倍と見て4KB
が必要になるだろうなぁ。


2KBならmega328、4KBなら以前秋月
で買ったまま放置プレイのmega644か、
この間作ったmega128CPUボードに
白羽の矢だな。

個人的には、容量の少ないmega328に
ギチギチに詰め込んだ押し寿司状態にしたいな。
300milでちっちゃいし。


とはいえまだFFTの根本まで理解出来た訳じゃ
ないので、まだまだ妄想君状態から抜け出れてません。
まずはFFTの理解をもうちょっと進めてから、
PC上の何らかの言語使ってシミュレーション
してみよう。
それが一番の近道じゃないかという気がする。


話しかわって。

オイラの大好きな「elements~
メンデレーエフの奇妙な棚~」シリーズを
チェックしたら、どうやらシーズン4が既に
出来てたのか!
http://sc-smn.jst.go.jp/4/series.asp?i_series_name=elements%81%60%83%81%83%93%83f%83%8C%81%5B%83G%83t%82%CC%8A%EF%96%AD%82%C8%92I%81%60

27~32話の欄が増えてる!でもネットでは
見れるようになってないのねぇ。
そのうちネットでも公開されるのか、それとも
されないのか…
そもそもうちの近所のケーブルテレビでは放送される
のかなぁ?

それにしてもシーズン1からもう4年目なんだねぇ。
面白いからずっと続くといいな。



コメント ( 0 )
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする



« たまごひこーき verocityの実験 »
 
コメント
 
コメントはありません。
コメントを投稿する
 
名前
タイトル
URL
コメント
コメント利用規約に同意の上コメント投稿を行ってください。

数字4桁を入力し、投稿ボタンを押してください。