2011-12-18 6 views
0

ここでこの質問をするべきかどうかはわかりません。 私はアートプロジェクトを作りたいです。 入力として音声を使用し、出力として画像を使用します。 音に応じて画像が変化します。リアルタイムアートプロジェクト---入力:音---出力:画像(より良いタイトル?)

どうすれば実現できますか?リアルタイムまたは50ミリ秒以下の遅延が必要なためです。 まず、マイクロコントローラを使用する方がよいでしょう。 しかし、私は巨大な画像を計算したい、私は多分マイクロコントローラはこれを行うことはできません。 たとえば、10.000の移動オブジェクトを計算したいとします。 windows/linux/mircocontrollerでこれを実現できますか?

私はPythonを使用することができれば非常に良いでしょう。 あなたの処理はより良い選択ですか?

詳細が必要ですか?

答えて

5

Pure Data(Pd)やMaxのようなグラフィカルなデータフロー環境を使用することを考えましたか? Maxは市販品ですが、Pdは無料です。

最終プロジェクトにPdを使用しても、優れたラピッドプロトタイピングツールが作成されます。 Pdのグラフィックス処理機能は限られていますが、GridflowGemなどの拡張機能があります。確かにPdでは、[fiddle〜]オブジェクトを使用して着信音を分析することができます。これにより、個々の部分音の全体的なピッチと周波数/振幅と、RMS振幅を与える[env〜]オブジェクトが得られます。 GemやGridflowでは、音色(音程、振幅、音色)の変化を、色、形、要素数などの画像のさまざまなプロパティに非常に簡単にマッピングできます。

最近のデスクトップGPUでも、10kの動きのあるオブジェクトが多く聞こえるように聞こえます。オンザフライでこれらの位置をすべて計算すると、のリソースが消費されます。私はopenFrameworksのような専用のC++グラフィックスライブラリでも、これは苦労かもしれないと思います。イメージのレンダリング前のような最適化戦略を検討し、リアルタイムのオーディオコントロールを使用して、事前レンダリングされたコンポーネントをいつでも表示することができます。実際には多くのオブジェクトがプリレンダリングされている場合、これは10k個のオブジェクトに対する制御の錯覚を与えるかもしれません。

幸運を祈る!

+0

あなたの投稿は私に多くを助けます。ありがとうございました! :) – kame

1

上記の答えは良いことですが、PDは非常に柔軟ですが、MCUとのミキシングに適したコード指向の方が望ましい場合は、処理が優れている可能性があります。

CsoundをCsound Python APIで使用するとよいでしょう。 Csoundの学習曲線は急峻ですが、数多くのオーディオ分析機能があり、低レイテンシーで動作するのに非常に適しています。リアルタイムで入力信号を分析し、制御値をグラフィック環境に送り、両方をPythonでスクリプト化することができます。

関連する問題