Der Processing Sketch
Zum Abspielen und Analysieren der Musik verwende ich die Standard-Audiobibliothek von Processing, minim. Diese ist schon vorinstalliert und muss deshalb nur über import ddf.minim.*; nachgeladen werden. Anschließend startet man den Player und lädt ein Musikstück. Dieses sollte im Ordner des Sketches sein. Über namedesplayers.mix.level() kann man den akutellen Pegel abfragen. Das ist ein Wert zwischen 0 und 1, also beispielsweise 0.23. Diesen Wert multipliziert man dann mit 250, da eine LED eine Stärke von 0 bis 255 haben kann. Diesen Wert schickt man dann über die serielle Verbindung an den Arduino. Falls du Processing in Verbindung mit dem Arduino noch nicht kennst, empfehle ich dir meine Artikel dazu. Der ganze Sketch sieht dann so aus:
Der Arduino Sketch
Der Arduino Sketch muss ständig überprüfen, ob er etwas über die serielle Verbindung empfangen hat, dann den Wert auslesen und die Funktion leds_schalten aufrufen. Diese schaltet die LEDs entsprechend dem empfangenen Wert. Wie man eine Funktion definiert, erfährst du hier. Der Arduino Disco Sketch sieht dann so aus:
Die Verkabelung
Der Arduino Uno unterstüzt 6 PWM Ausgänge. Das sind Pin 3, 5, 6, 9, 10 und 11. An diese muss man dann die gewünschten LEDs anschließen.
Nun musst du nur noch ein schönes Musikstück finden und in den Sketchordner des Processing Sketches kopieren. Denn Namen des Musikstücks gibst du dann im Sketch an.
Bei mir sind das 4 Rote und 2 sehr starke Weiße.
Übrigens: Du kannst auch einen Radiolivestream als Quelle angeben.
Wenn du nun beide Sketches hochlädst/startest, startet die Musikwiedergabe und die LEDs blinken gemäß der Lautstärke. In einer weitern Ausbaustufe könnte man nun einen ganzen Musikplayer bauen. Hier habe ich bereits erklärt, wie man eine grafische Oberfläche mit Processing baut.
Keine Kommentare:
Kommentar veröffentlichen
Mit dem Veröffentlichen eines Kommentars erklären Sie sich mit unserer Datenschutzerklärung einverstanden.
https://michaelsarduino.blogspot.de/p/datenschutzerklarung.html