Probleme mit Flac Dateien

Hallo zusammen,

nachdem ich mir auch den ESPuino mit der mini-4L zusammengebaut habe, probierte ich unteranderen FLAC Dateien abzuspielen.
Allerdings blinkt der Neopixel nur einmal kurz rot und das wars. Die Flac Dateien habe ich mit EAC erstellt. Andere Flac Dateien dagegen funktionieren. Einen direkten Unterschied konnte ich jetzt so nicht feststellen.
Gibt es da bekannte Probleme oder Beschränkungen bei den Settings zur Erzeugung der Flac Dateien?
Im Log über die Weboberfläche steht für mich auch nichts erkennbares drin.

D [768325] Freier Speicher nach Aufräumen: 118528 Bytes
D [768343] Freier Speicher: 118528 Bytes
N [768343] Playlist-Generierung

I [768343] Dateimodus erkannt.

N [768344] Modus: Einzelner Track

N [768360] Neue Playlist mit 1 Titel(n) empfangen
D [768360] Free heap: 118528
I [768365] info        : buffers freed, free Heap: 118528 bytes
I [768366] info        : Reading file: "/Käpt'n Sharky und der Riesenkrake/02 Der Sturm.flac"
I [768395] info        : FLACDecoder has been initialized, free Heap: 118528 bytes , free stack 2976 DWORDs
N [768399] '/Käpt'n Sharky und der Riesenkrake/02 Der Sturm.flac' wird abgespielt (1 von 1)
D [768474] no cover image for SD-card audio

D [768479] no cover image for SD-card audio

Hier noch ein Auszug der aktuellen Softwareversionen

ESPuino Software-revision: 20240117-1
ESPuino Git-revision: aa3f72b-dirty
Arduino Version: 2.0.14 (ESP-IDF 4.4.6)
Hardware: ESP32-D0WD-V3, Revision 3, CPU: 240 MHZ
Freier Heap: 118528 Bytes
Größter freier Heap-Block: 3342324 Bytes
Freier PS-RAM: 3358963 Bytes

Jens

Ist das ggf. 24 bit flac? Die gehen nicht. Siehe z.B. Analyze file format online

Hallo,

ich habe mal die Files analysieren lassen. Ist aber 16bit, wenn ich das richtig sehe.
Dieses FLAC File funktioniert nicht:

Audio
Format : FLAC
Format/Info : Free Lossless Audio Codec
Duration : 1 min 12 s
Bit rate mode : Variable
Bit rate : 898 kb/s
Channel(s) : 2 channels
Channel layout : L R
Sampling rate : 44.1 kHz
Bit depth : 16 bits
Compression mode : Lossless
Stream size : 7.79 MiB (99%)
Writing library : libFLAC 1.3.2 (UTC 2017-01-01)

Bei dem FLAC File funktioniert es:

Audio
Format : FLAC
Format/Info : Free Lossless Audio Codec
Duration : 3 min 41 s
Bit rate mode : Variable
Bit rate : 939 kb/s
Channel(s) : 2 channels
Channel layout : L R
Sampling rate : 44.1 kHz
Bit depth : 16 bits
Compression mode : Lossless
Stream size : 24.8 MiB (100%)
Writing library : libFLAC 1.3.2 (UTC 2017-01-01)

Bis auf die Bit Rate sehe ich da erstmal keinen Unterschied.

Jens

Versuch mal die aktuelle dev version, da sind in der audio lib auch ein paar flac betreffende Änderungen dabei.

Ich habe gerade nochmal über die Terminal Console in VSC geschaut.
Hier bekomme ich noch eine weitere Meldung angezeigt.
Vielleicht erklärt das ja mein Problem mit den Flac Files.

[Audio.cpp:1334] read_FLAC_Header(): Magic String 'fLaC' not found in header
I [42498] info        : Closing audio file
[ 42499][E][Audio.cpp:1153] readAudioHeader(): Processing stopped due to invalid audio header
D [42540] no cover image for SD-card audio
D [42575] no cover image for SD-card audio
N [44481] Ende der Playlist erreicht.

Dann Teil doch mal eine der nicht funktionierenden Dateien

Bei mir spielte die Datei fehlerfrei ab (dev-Branch). Ich vermute daher entweder fehlerhafte Dateiübertragung auf SD Karte, oder schlechte Lötverbindung der SD-Pins (für den Fall dass du nicht die mini-Platine verwendest) oder sonstiges Problem mit der Karte. Vorausgesetzt du verwendest den aktuellen dev-Branch.

Ich bin auf dem aktuellen Master Branch.
Ich nutze die mini 4-L Platine. Da würde ich jetzt mal nicht von schlechten Lötverbindungen ausgehen.
Ich kann mal eine andere Karte verwenden. Mich wundert es nur das einige FLAC Dateien abgespielt werden und andere wiederum nicht.
Ich hatte vorhin auch mal versucht auf den DEV-Branch zu wechseln da habe ich aber beim Build diverse Warnungen bekommen und der Upload hat nicht funktioniert. Deswegen kann ich das noch nicht testen.

Probier mal die schnelle Lösung, nur die Audiobibliothek in deiner platform.ini zu aktualisieren:

https://github.com/schreibfaul1/ESP32-audioI2S.git#93b90f7 ;19.02.2024

Danach einen (full) build durchführen.

Ich kann leider aktuell nicht sagen was ich falsch mache. Ich habe in der platform.ini den Link zur Audio Lib ausgetauscht einen neuen Build erzeugt und hochgeladen.
Beim Build erstellen bekomme ich wieder diverse Warnungen ( unteranderem sowas wie im Bild ). Bin mir jetzt nicht sicher ob das vielleicht auch normal sein kann. Da ich den RFID Reader nicht nutze denke ich mal hat das keine Auswirkung auf die Funktion des Players?

grafik

Auf jeden Fall bleibt mein Problem bestehen.
Sehe ich irgendwo ob die geänderte Audio Lib auch benutzt wird?

Ich hatte jetzt nochmal versucht ein Re-encoding mit der Commandline Version von flac mit einer nicht funktionierenden Datei zu machen und da kam ein Fehler das die Datei einen ID3v2 Tag hätte. Keine Ahnung ob es da Limits gibt, oder ob es da noch mehr Unterschiede zwischen dem Master und dem DEV Branch gibt?

Ich habe jetzt mal den ID3v2 Tag entfernt. Damit funktioniert die Datei.