Ende des Titels wird nicht erkannt

Hatte das Problem, dass das Ende des Titels nicht erkannt wurde, d.h. am Ende wurde es natürlich still, der LedRing blieb auf maximale Anzeige Alle Leds von grün bis rot und im SerialLog wurde auch nichts protokolliert. Die Playlist blieb aktiv, denn die Taste FirstTrack spielte den Titel wieder von Anfang,
Die CardAction war „Einzelner Titel“
Aufgefallen ist mir das, weil die Box nicht mehr in den DeepSleep wegen Inaktivität ging.
Hatte schon viel Zeit verbracht das Problem zu lokalisieren und trat dann den Weg in dieses Forum an.
Ich wurde auf den Eintrag mit „Störgeräusche“ aufmerksam und testete gleich.
Damit wurde letztendlich dann auch mein hier beschriebenes Problem reproduzierbar gelöst.
Siehe: Störgeräusche beim Start eines Abspielvorgangs - #2 von Niko

D.h. du hast eine neue Version der Lib verwendet und damit wurde das Ende des Titels korrekt erkannt?

Ich dachte zuerst, das funktioniert jetzt auf Grund des commands: pio pkg update
deshalb hab ich es nochmals mit https://github.com/schreibfaul1/ESP32-audioI2S.git ohne explizite Angabe des spezifischen commits #b2b5312 versucht:
Problem war wieder da!
Darauf zurück zu:
https://github.com/schreibfaul1/ESP32-audioI2S.git#b2b5312
und nach Ende des Titels drehen sich wieder die 4 LEDs und nach Ablauf des Inaktivitätstimers geht die Box wieder in den DeepSleep.
Ich kann leider nicht genau sagen, seit wann dieses Phänomen auftritt, da ich beim Testen nie bis ans Ende gewartet habe. Erst gestern, begann ich mit diversen Endtests, darunter auch das automatische Abschalten nach dem Abspielen eines Titels und stellte dabei fest, dass die Box am Ende des Titels „hängen“ blieb. War für mich soweit reproduzierbar.

Ja, nur durch Compilieren mit oder ohne Angabe von #b2b5312 bei der audiolib tritt das Problem bei mir bzw. bei meinem Source auf oder nicht.

D.h. du hast eine neue Version der Lib verwendet und damit wurde das Ende des Titels korrekt erkannt?

Nein, nur im Zuge des Testens habe ich beim Zurückstellen der Lib mit der Ergänzung #b2b5312 compiliert und dann funktionierte auch die Endeerkennung wieder. Vor den Tests wegen neue AudioLib bezüglich Störgeräusche, wo mein Fehler noch auftrat, compilierte ich immer OHNE die Angabe von #b2b5312!

Tritt das immer auf oder nur bei einem speziellen File?
Welcher Playmodus?

So, ich habe jetzt tiefer recherchiert und getestet mit folgenden Erkenntnissen:

Ja sowohl File als auch Filetyp (mp3, aac) machen keinen Unterschied. Es tritt bei den verschiedenen getesteten Files immer auf. Ich gehe davon aus, dass das nicht relevant ist.

Was aber relevant ist, ist folgendes:
Nachdem ich immer das Ende testen wollte, habe ich immer mit dem command: CMD_SEEK_FORWARDS bis kurz vor das Ende „vorgespult“.
Deshalb lies ich dann die Titel nach dem Start einfach ungestört bis zum Ende durchlaufen und siehe da, dann beendet das auch korrekt!
Problem bei mir nun unter folgenden Bedingungen reproduzierbar:
Hardware: ESP32mini (ohne PSRAM), SD_MMC_1BIT_MODE
plattformio.ini: https://github.com/schreibfaul1/ESP32-audioI2S.git
Titel von SD abspielen (ich startete den Titel via WebGUI - RFID - Titel mit rechter Maustaste abspielen)
Nun ganz wichtig: Mindestens einmal das CMD_SEEK_FORWARDS ausführen (hab das auf eine Taste gelegt)
Lässt man das Stück ohne CMD_SEEK_FORWARDS ungestört durchlaufen, pass auch alles.

Und jetzt das Spannende, mit:
lattformio.ini: https://github.com/schreibfaul1/ESP32-audioI2S.git#b2b5312
gibt es dieses Problem nicht! Hab mehrfach beide Compilate getestet und war jedesmal wie beschrieben.

Nachtrag:
Hab nun auch rausgefunden, wenn man gleich oft CMD-SEEK_BACKWARDS ausführt wie …FORWARD, dann beendet das auch wieder korrekt!