mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik uC-Mp3-Player Ablaufsteuerung


Autor: Johannes H. (menschenskind)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ih hab mir hier nen Player gebaut: Lesen von SD-karte in den Mega32 rein 
und der Stream dann an nen VS1001.
Nun geht es an die Funktionen wie Pause, Titel vor, Titel zurück und 
Shuffle.

Frage: Die Dateinamen sind dem Player ja nicht bekannt. Wie bekomm ich 
es also hin, dass der Player startet, sich die 1. Mp3-Datei schnappt und 
diese abspielt? Meine Idee wäre, Bei Adresse 0 zu beginnen, den 
Filepointer zu inkrementieren und dann immer ein Stück von 4 Byte mit 
".mp3" zu vergleichen um die Dateien zu finden.
Ich nutze das TinyFatFs von Chan und kenne mich mit der Datenverteilung 
auf nem Datenträger nicht wirklich aus.
Das Problem bei dieser Methode wäre ja dann auch: wenn ich also das Ende 
des Dateinamens ausfindig gemacht habe, wie ermittle ich dann den Rest 
des Dateinamens, um diese Datei dann öffnen zu können? Der kann ja 
unterschiedlich lang sein.

Zum Shuffle: Könnte ich da mittels eines Zufallswertes irgendwo in den 
Adressbereich des Datenträgers springen, wo Mp3-Daten vorhanden sind und 
dann entweder vor- oder rückwärtsgehen, bis ich wieder auf den 
Dateianfang einer Mp3 stoße und diese dann abspielen?

Klar hab ich hier einige Beispielprojekte rumliegen, aber in deren 
Quelltexten bin ich nicht so richtig fündig geworden. Teilweise sind die 
ziemlich kompliziert zu verstehen für mich als relativen Beginner.

Danke für Eure Hilfe.

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Die Dateinamen sind dem Player ja nicht bekannt.

Natürlich sind sie das, der Player liest das Inhaltsverzeichnis 
("Directory") der SD-Karte.

Dazu ist das von Dir erwähnte Dateisystem FAT und der Treiber TinyFatFS 
zuständig.

Wie das Inhaltsverzeichnis strukturiert ist, ist in der 
FAT-Dokumentation beschrieben.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.