2017-05-05 9 views
-3

私は、音楽のためにファイルを取り込み、それを分析して、音楽を照明することができるようにしたいと考えています。唯一の問題は、私がビルドしたボードでは、Processingを使うと実行するコードが大きく遅れ、10ミリ秒の明らかなギャップがあることです。プログラムをArduinoに戻す方法、または応答時間を何とか短縮する方法が必要です。何か案は?ProcessingのMinimクラスに似たC++のArduinoのクラスはありますか?

+0

なぜこのタグはC++とjavaの両方ですか? – EJoshuaS

+0

@Matthew Bocharnikovはあなたのアプローチを共有しています。多分遅れが明らかになり、問題の核心に直接ジャンプする方が簡単になるでしょう。 (トピックから離れて、私は10msの遅れを知覚することはできないと思う:D(画面上の音や画像として)ので、コンピューティングを少なくするために知覚上の限界を使う機会かもしれない。 –

+1

@EJoshuaSデフォルトでは、処理は主に最小限のIDEを持つJavaライブラリのコレクションです。 Arduinoは主に、マイクロコントローラ開発用のC++ライブラリのコレクションです。どちらも、アーティスト/デザイナー/犯人がコーディングを容易にするのに便利です。この質問の文脈でArduino/Processingのコミュニケーションを取っているのはおそらく、その背後にあるjava/C++です。個人的に処理する/ arduinoはタグとしてうまくいっただろうが、私の感情はMatthewがstackoverflow –

答えて

0

シリアル通信をどのように処理しているのか、ボトルネックがどこに現れ始めているのかは不明です(音声処理/シリアル通信/両方/その他のものなど)。

Arduinoだけでサウンド分析をしたいのであれば、それは8ビットマイクロコントローラでFFT番号のクランチを行うために必要なリソースが非常に少ないので、難しいことです。

私は2つの方法のいずれかを行くだろう:

  1. は、コンピュータ上で可能な限り効率的と音解析を行うと、ソフトウェア(処理)のみのファームウェアに最小限のデータを送信しますので、ライトにマップ(アルドゥイーノを)(ちょうど軽いデータ、基礎を知る必要性に)。ばかばかしい光量がある場合は、より高いボーレートに対応できるシリアルコンバータを使用したいかもしれませんが、ほとんどの場合、それは必要ありません。

  2. Arduinoで最小限の音解析を行います。あなたのライトアニメーションを正しくお持ちならば、FFT/MFCや何か面白いものに入ることなく、振幅と少しのイージングを使って何かを反応させることができます。周波数に対する光の応答性を実際に求めたい場合は、MSGEQ7のような7バンド周波数アナライザチップの使用を検討してください。それを簡単にするArduinoのブレークアウトがあります。

関連する問題