Author Topic: Decibel-LED mit SoundIntensity vs SoundPressure  (Read 3260 times)

yuna

  • Full Member
  • ***
  • Posts: 107
  • Java fun AI Developer
    • View Profile
Decibel-LED mit SoundIntensity vs SoundPressure
« on: July 30, 2019, 10:38:57 »
Hallo,

vorweg - ich habe nur wenig Ahnung von Tontechnik.
ich habe SoundIntensity und SoundPressure Bricklets im Einsatz, um LEDs nach Dezibel aufleuchten zu lassen.

* Beim SoundIntensity Bricklet schaut es genial aus. LED flackert sehr fein. Die Dezibel Anzeige tanzt auch schön auf und ab
* Beim SoundPressure Bricklet schaut es nicht so schön aus. Die Dezibel bleiben auf einem Level und die LEDs flackern/tanzen nicht so schön.

Kann jemand helfen wie ich die LEDs auch beim SoundPressure tanzen lassen kann? Ich weis das ich spectrumChunkData, spectrumChunkOffset und spectrumLength bekomme. weis aber nicht wie ich das verwerten kann - habe nichts in Wikipedia darüber gefunden :(...
humans are the only creature which have pay to live on the planet

photron

  • Tinkerforge Staff
  • Administrator
  • Hero Member
  • *****
  • Posts: 2.467
    • View Profile
Re: Decibel-LED mit SoundIntensity vs SoundPressure
« Reply #1 on: July 30, 2019, 14:28:40 »
Hast du beim Sound Pressure Level Bricklet mal die verschiedenen Gewichtungen durchprobiert?

Du solltest getSpectrum() Aufrufen, nicht getSpectrumLowLevel(). Das Spektrum ist zu groß um ein einem Packet übertragen zu werden. Die getSpectrumLowLevel() gibt das Spektrum in Stücken (Chunks) aus. Die getSpectrum() nutzt intern die getSpectrumLowLevel() Funktion und setzt das vollständige Spektrum aus Chunks zusammen.

Wie die Dokumentation für die getSpectrum() Funktion beschreibt gibt dieses das Frequenzspektrum in form eines FFT aus. Daraus kannst du dir verschiedenste Darstellung ableiten.

yuna

  • Full Member
  • ***
  • Posts: 107
  • Java fun AI Developer
    • View Profile
Re: Decibel-LED mit SoundIntensity vs SoundPressure
« Reply #2 on: August 03, 2019, 12:27:22 »
Hi Photron,

ich habe nun viel versucht zu lesen und zu verstehen. Ich verstehe dennoch nicht wie ich die LEDs wieder flackern lassen kann wie beim Sound Intensity Bricklet. Sobald ich die Werte von getSpectrum() in dB umrechne flackern die LEDs nicht mehr. Klar kann ich einfach ohne dB Umrechnung die LEDs super flackern lassen, aber dann verstehe ich diese random FFT zahlen nicht.

Für das BrickletSoundPressureLevel:
Welche config (fftSize : weighting) benötige ich?
Welchen Wert von BrickletSoundPressureLevel.getSpectrum() benötige ich, um den Wert von BrickletSoundIntensity.getIntensity() nachzustellen?
humans are the only creature which have pay to live on the planet

photron

  • Tinkerforge Staff
  • Administrator
  • Hero Member
  • *****
  • Posts: 2.467
    • View Profile
Re: Decibel-LED mit SoundIntensity vs SoundPressure
« Reply #3 on: August 08, 2019, 12:42:49 »
Das Sound Intensity Bricklet und das Sound Pressure Level Bricklet sind da nicht so einfach zu vergleichen. Das alte Bricklet hat die Bestimmung der Intensity analog in Hardware gemacht. Das neue Bricklet macht die SPL Bestimmung digital in Software.

Mit den verschiedenen Weighting wird versucht das menschliche Hörvermögen nachzubilden. Außer db(Z), dabei wird keine Gewichtung vorgenommen und die Daten vom Mikrofon unverändert verwendet.

Ich habe gerade kein Sound Pressure Level Bricklet zur Hand, da die gerade ausverkauft sind. Daher mal ins Blaue: db(A) mit 256er FFT und dann über die Spektrumwerte einen Mittelwert bilden, dabei den ersten Wert im Spektrum ignorieren, da dies das DC Offset ist.

Alternativ, schau dir das Spektrum in Brick Viewer an und nimmt dann den Teil des Spektrums der sich am meisten bewegt. Den fasst du dann über Maximum oder Mittelwert zusammen.

Ich denke du musst da einfach mal verschiedenes ausprobieren.

yuna

  • Full Member
  • ***
  • Posts: 107
  • Java fun AI Developer
    • View Profile
Re: Decibel-LED mit SoundIntensity vs SoundPressure
« Reply #4 on: August 11, 2019, 08:02:11 »
Okay danke :) dann werde ich dies versuchen
humans are the only creature which have pay to live on the planet

yuna

  • Full Member
  • ***
  • Posts: 107
  • Java fun AI Developer
    • View Profile
Re: Decibel-LED mit SoundIntensity vs SoundPressure
« Reply #5 on: September 05, 2019, 22:48:39 »
Hi, ich habe nun verschiedene Varianten probiert. Leider klappt es nicht wirklich. Es geht nur wenn absolut stille in der Umgebung herrscht. Für mich hat es den Anschein, als würde das Sound Pressure nicht ganz mitbekommen welcher Ton wie weit weg ist. Ich kann die LEDs nach Musik tanzen lassen, jedoch wenn draußen auf der Straße Leute sprechen oder eine Auto vorbei kommt, dann bekommt es das SoundPressure Bricklet mit und überlagert die sehr viel Lautere Musik. Auch bei geschlossenen Fenster. Vor allem Menschliche Sprache überlagert alles. Ich habe drei verschiedene Boxen ausprobiert. leider immer das selbe Ergebnis. Egal welche Frequenz, die nicht Lautsprechertöne überragen alles.
humans are the only creature which have pay to live on the planet