Verzögerung nach Auflegen des Tags mit vielen Hörspielen

Ich habe meinen Espuino heute mal zum Test mit ca. 160 Hörspielen betankt und dann ausprobiert. Leider musste ich feststellen, dass der Espuino nun mehrere Sekunden (gefühlt zwischen drei und zehn Sekunden) benötigt, um ein Hörspiel zu starten.

Wenn ich den Tag etwas ungeduldig Tag mehrfach aufgelegt habe, hat dann das Hörspiel mehrfach hintereinander neu gestartet.

Wenn auf der SD Karte nur wenige Ordner sind, gibt es das Problem nicht.

Hat/hatte noch jemand dasselbe Problem?

160 habe ich hier nicht, aber gut 80. Das macht da keine Probleme.
Reden wir da von Hörspielen, die aus vielen Dateien bestehen? Weil das Generieren der Playlist dauert dann halt länger. Also je mehr Titel in einer Playlist, desto länger dauert es.

Hey,

im Nachbarforum wird gerne auf diese Tool verwiesen.
Hat bei mir auch schon geklappt… Ich würde sagen, ein Versuch schadet nicht.

Viele Grüße
Stefan

Auf der SD Karte sind sowohl Hörspiele als auch Musik-Alben drauf. Die Hörspiele bestehen aus 20 bis 40 Titeln. Ich meine, dass es das Problem bei beidem gab. Ich teste das zur Sicherheit noch mal.

Ich hatte zunächst ganz blauäugig die SD Karte vom Tonuino rein gesteckt. Da haben viele Ordner annähernd 255 mp3s. Damit kam der Espuino gar nicht klar. Die WebSocket Verbindung der Web-Oberfläche ist alle paar Sekunden zusammen gebrochen und der Espuino hat sich nach ca. 20 bis 30 Sekunden neu gestartet.

im Nachbarforum wird gerne auf diese Tool verwiesen.

Danke, das werde ich auf jeden Fall ausprobieren und dann berichten.

Viele Grüße,
Alex

Puh, so viele Files hatte ich tatsächlich noch nie in einem Ordner. Also ich habe hier einen Ordner, da sind ca. 70 mp3s drin. Denke mal das dauert so 3-4s, bis die Playlist erstellt wurde. Das macht’s bei 255 mp3s natürlich nicht besser, wobei die Dateinamen dort ja immerhin kurz sind und deswegen nicht so viel Heap-Speicher gefressen wird. Habe es gerade mal mit „Peter und der Wolf“ getestet; das sind 42 mp3s, die jedoch fast allesamt ziemlich kurz sind. Das dauert 1,x Sekunden.

Sind die Dateien denn groß, die du da im Ordner hast? Ich rede bei meinen von paar hundert kB bis vielleicht 5 MB.

Ich habe den ganzen Kram auf jeden Fall in Ordnern sortiert. Ja, viele Dateien in einem Ordner und die vielleicht auch noch in groß… gut möglich, dass das auf dem ESPuino nicht so gut skaliert.

Ich frage mich allerdings, ob man hier irgendwas drehen kann: Integrate new SdFat Library instead of SD · Issue #111 · schreibfaul1/ESP32-audioI2S · GitHub
Hatte das demletzt schon gelesen (und auch kommentiert)…

Ich habe nicht vor 255 Dateien in einen Ordner zu legen. Habe es einfach heute nur ausprobiert, weil die SD Karte noch rumlag.

Auf der „richtigen“ Karte habe ich zwei Ebenen. Auf der obersten Ebene sind Ordner wie „Benjamin Blümchen“ oder „Bibi und Tina“ und darin enthalten ist dann ein Ordner je Hörspiel.

Die Dateien sind zwischen 1 und 2 MB groß.

Verstehe ich das richtig, dass kurze Dateinamen von Vorteil sind?

Also jetzt nicht von der Performance, aber lange Dateinamen kosten mehr Speicher. So eine Playlist ist quasi ein Verzeichnis, das z.B. so aussieht:

5
/mp3/pfad/zu/datei1.mp3
/mp3/pfad/zu/datei2.mp3
/mp3/pfad/zu/datei3.mp3
/mp3/pfad/zu/datei4.mp3
/mp3/pfad/zu/datei5.mp3

Ganz oben steht die Anzahl der Elemente und dann werden die Elemente gelistet mit ihrem kompletten Pfad. Ja und je länger das ist, desto mehr Speicher wird gebraucht. Allerdings, wenn ich so drüber nachdenke, dann wäre es vielleicht gut, es mal so zu probieren:

5
/mp3/pfad/zu/
datei1.mp3
datei2.mp3
datei3.mp3
datei4.mp3
datei5.mp3

Das würde Speicher sparen. Ich muss es am Ende nur wieder richtig zusammenbauen, aber das ist kein Problem. Ach ich glaube das mache ich mal :slight_smile:
Allerdings wird das leider nix an dem Problem nennen, das du hier berichtet hast. Außer der Dateipfad bei deinen 255 Files war super lang. Weil maßgebend ist halt die Gesamtlänge von Pfad + Dateiname.

Nach der Formatierung mit dem Tool SD Memory Card Formatter | SD Association geht das Laden eines Hörbuchs nun deutlich schneller. Vielen Dank für diesen Hinweis :grinning:

1 „Gefällt mir“

Das nehme ich mal an die FAQ auf. Danke für den Hinweis.

Hi Alex, in welchem Format hast Du denn die SD Karte formatiert? Ich bekomme mit meiner PCB https://github.com/biologist79/ESPuino/tree/master/PCBs/Wemos%20Lolin%20D32 immer einen Fehler, dass die SD Karte nicht gefunden werden kann unser ESP startet dann neu.
Danke

@onkelbobby Miss am SD-Board mal die Spannung zwischen 3.3V und GND. Also der PCB funktioniert, ich habe ihn beim Sohnemann hier im Einsatz. Allerdings hatte ein User auch genau dieses Problem und da hat der N-Channel-Mosfet nicht durchgesteuert. Das war für mich der Anlass, inzwischen eher IRL3103 anstelle von IRF530N zu empfehlen. Wobei ich allerdings gerade am Wochenende wieder einen IRF530N verbaut habe und es keine Probleme gab.

Danke für das Feedback! Gemessen habe ich noch nicht, werde ich noch machen. Hab aber eh schon nen IRL3103 verbaut… Neopixel und der RC522 leuchten. Weiter bin ich allerdings noch nicht gekommen, da der ESP immer neu bootet.
Ich wollte diesen Threat hier nicht für die Problemlösung bei PCB‘s missbrauchen, dachte nur, dass vielleicht die Formatierung die Ursache sein könnte.
@biologist wenn du das verschieben möchtest, please feel free :blush:

Bei „Formatting Options“ habe ich „Overwrite format“ ausgewählt. Die Option „Quick format“ habe ich nicht ausprobiert. Kann also nicht sagen, ob diese Option dieselbe Verbesserung gebracht hätte.

Danke… ich meinte, das verwendete Dateiformat: FAT32, exFAT oder NTFS

Das Dateisystem kann ich in der Software nicht wählen. Die Karte wurde mit Fat32 formatiert.

Ja ok. Also wenn die gehen, dann liegt es an der Mosfet-Schaltung nicht. Also würde mich wundern, wenn da nicht 3.3V am Start wären am SD-Reader :slight_smile:
Ansonsten gleiche nochmal die GPIO-Tabelle mit deinen settings-Konfigurationen ab. Das habe ich auch selbst mitunter schon verkackt :joy: