0

家にLEDがいくつか設置されていて、音楽に合わせて踊らせたいと思っています。

私のセットアップ:

  • USB経由でPCに接続されたPWM(48ステップ)によって制御される10個のRGB LEDストリップ(つまり30チャンネル)。
    • LED ストリップは物理的に 4 つのグループに配置されています
  • ハードウェアは Node.js によって制御されます。
  • 音楽は別のマシンで Traktor から再生されます。
    • Traktor は、マスター テンポとレベルを備えた MIDI データを出力します。
    • UDP経由でMIDIデータをノードサーバーに転送しました。

LED の制御を抽象化するライブラリを作成したので、Node では次のように呼び出すことができます。

channel[n].set(intensity, r, g, b);

...そして、USB バス経由で送信されるデータの最適化を処理します。

ノード サーバーでは、音楽のテンポとレベルのデータが入ってきており、それをライト ショーに変換したいと考えています。ノードは約 60 ミリ秒ごとに現在のオーディオ レベルを取得します。データは次のようになります (曲の途中からの 20 秒のサンプル。クリックすると大きくなります)。

http://josh3736.net/images/ledviz.gif

MIDI データは 0..127 のスケールで出力されます。この場合、テンポ値 42 は BPM 128 に対応します。

この質問には、対処できる複数の部分があります。

  • 最も重要なのは、このデータを使用して LED を制御するための最良のアプローチは何ですか?
    • 理想的には、その入力データがアニメーション/色間の遷移に影響を与える必要があります。ただし、ハードヒットでは、突然の変化/ストロボも良いかもしれません.
  • ノードに送信する必要がある Traktor からの他の MIDI データはありますか?
  • 4 つの物理グループのそれぞれを同じ色に偏らせるにはどうすればよいですか?

興味のあるリンク:

4

2 に答える 2

0
  1. 新しいデータサンプルが届いたら、画像全体を右または左にスクロールします
  2. Traktorによって報告されたテンポでLEDを点滅させます。

フィルタリング後のレベルのMIDIレポートを取得できますか?原色ごとに異なる周波数帯を使用できると思います。

于 2011-12-14T15:31:15.030 に答える