Bass und Höhen einstellen

Ich bin gerade beim Aufbau meines Espuino für meine Tochter.
Verwende dazu einen Breitbandlautsprecher welchen ich noch im Keller hatte.
Der LS kann tiefen gut wiedergeben, nur an den Höhen fehlt es. Hier würde eine Art Equalizer helfen.
In der audio_i2s lib habe ich folgende Funktion entdeckt:

setTone(int8_t gainLowPass, int8_t gainBandPass, int8_t gainHighPass)

Soweit ich das verstehe lässt sich dies recht simpel einbauen.

Wäre das möglich?

Schau mal hier, da wird der Bass sogar eh schon ein bisschen angehoben im Mono-Modus:

Vielleicht überschreibst du das einfach in der aktuell leeren Zeile 317 mit Einstellungen, wie du das gerne hättest. Kopierst dir einfach die Zeile nach unten und setzt dir passende Werte.
Kann man auch drüber nachdenken, das irgendwann mal in die GUI zu ziehen. Aber aktuell wird die neu gemacht und da möchte ich das nicht auch ändern.

1 „Gefällt mir“

Hab ein ähnliches Problem. Es gibt anscheinend bereits eine Bassanhebung in der audioplayer.cpp vielleicht hilft es dir diese rauszunehmen…

1 „Gefällt mir“

Da war ich wohl zu langsam.

Nochmal ein Nachtrag: in der audio_i2s lib sind die Grenzfrequenzen für die 3 Filter fest definiert (500, 3000 und 6000). Die 500 für den lowPass sind aber glaube ich zu hoch, weshalb der Sound eher dumpf klingt und man die Höhen vermisst. Wenn man sich den Frequenzgang gänginger Breitbänder in kleinen Gehäusen anschaut, würde ich eher was bei 100hz versuchen…

Moin, wie würde man den die lib über Platformio anpassen ?

In der AudioPlayer.cpp anpassen, neu kompilieren und hochladen.