Die zentralste Library, die ESPuino verwendet, ist @Wolles ESP32-I2S. Diese hat bisher für ESP32-Chips ohne PSRAM 8 kB an Buffer verwendet und für solche mit PSRAM 300 kB. Nach einem PR kann das nun konfiguriert werden:
Die richtige Stelle, um damit in ESPuino zu experimentieren, dürfte hier in dem Bereich sein:
Das sähe dann so aus:
audio->setBufsize(int ram, int psram);
ram: Hauptspeicher in Bytes
psram: PSRAM in Bytes
D.h. man kann, wenn man z.B. bei PSRAM 0 setzt, die Nutzung von PSRAM bei einem ESP32-Chip mit PSRAM beeinflussen/deaktivieren. Der Ersteller des PRs sagt dazu:
instead of the fixed buffer size of 300000 for PSRAM and 8000 for
non-PSRAM setup, allow to configure the buffer sizes, example code
for that is
audio.setBuffersize(32768, 0);
which will set the RAM buffer size to 32k and disable PSRAM usage.
I am investigating „bad WiFi throughput with PSRAM“ issues and disabling
PSRAM is one workaround I found.
In ESPuino habe ich bisher keine Anpassungen vorgenommen.