Guten Tag,
ich habe in meinem Zimmer RGB Lampen von MiLight verbaut, die über eine Wifi-Bridge mit meinem LAN verbunden sind. Diese kann man per UDP und speziellen Hex Codes ansteuern.
Nun wollte ich meine Lampen passend zur Musik in verschiedenen Lampen leuchten Lassen. Das ist mir auch gelungen und zwar folgender Weise:
Ich habe die CSCore.dll eingebaut und folgenden Code verwendet:
Damit lese ich alle 10ms meinen Audioausgang und bestimme die Lautstärke um diese dann in eine Hex Zahl um zu rechnen um diese an meine Lampen zu senden.
Das ganze funktioniert auch einbahnfrei, nur ist es aufgrund der Tatsache, dass Musik ziemlich ruckig ist, wenn man sie alle 10ms liest nichts für Eleptiker.
Was ich damit sagen will ist, dass ich das ganze etwas smoother haben möchte.
Irgendjemand eine Idee?
Vielen Dank im Vorraus
Florian
ich habe in meinem Zimmer RGB Lampen von MiLight verbaut, die über eine Wifi-Bridge mit meinem LAN verbunden sind. Diese kann man per UDP und speziellen Hex Codes ansteuern.
Nun wollte ich meine Lampen passend zur Musik in verschiedenen Lampen leuchten Lassen. Das ist mir auch gelungen und zwar folgender Weise:
Ich habe die CSCore.dll eingebaut und folgenden Code verwendet:
VB.NET-Quellcode
- Private Sub Timer2_Tick(sender As Object, e As EventArgs) Handles Timer2.Tick
- If audioMeter Is Nothing Then
- audioMeter = AudioMeterInformation.FromDevice(MMDeviceEnumerator.DefaultAudioEndpoint(DataFlow.Render, Role.Multimedia))
- End If
- Dim meter As Integer
- meter = "&H" & Hex(255 / 100 * (audioMeter.PeakValue * 100))
- udpClient.Send(New Byte() {&H40, meter, &H55}, 3)
- End Sub
Damit lese ich alle 10ms meinen Audioausgang und bestimme die Lautstärke um diese dann in eine Hex Zahl um zu rechnen um diese an meine Lampen zu senden.
Das ganze funktioniert auch einbahnfrei, nur ist es aufgrund der Tatsache, dass Musik ziemlich ruckig ist, wenn man sie alle 10ms liest nichts für Eleptiker.
Was ich damit sagen will ist, dass ich das ganze etwas smoother haben möchte.
Irgendjemand eine Idee?
Vielen Dank im Vorraus
Florian