Hi! Ich will mit dem VS1011 (oder vergleichbar) einen MP3-Player aufbauen. Da ich einige externe Geräte damit steuern will (und das möglichst genau), suche ich eine Möglichkeit, die genaue Zeit aus dem Chip auszulesen. Laut Datenblatt ist es leider nur möglich, die Anzahl der Sekunden die seit Wiedergabebeginn vergangen sind zu erfahren. Hat jemand diesbezüglich schon Erfahrungen gesammelt? Ich bin bis jetzt nur auf zwei Möglichkeiten gestoßen: a) Ich zähle per Timer die Zeit mit die das Ding schon läuft. -> Ungünstig, da ich nicht weiß, wie lange sich der Chip aufhält bevor er anfängt meine Daten abzuspielen - er hat ja auch noch einen internen Puffer. b) Ich zähle die Anzahl der Samples die ich geschickt habe mit und weiß dann "ungefähr" wo ich bin. Auch nicht viel besser, alle Probleme von Lösung a bleiben mir erhalten.. Gibts eventuell auch einen entsprechenden Chip, bei dem ich die Anzahl Millisekunden seit Playerstart direkt auslesen kann? Ich hoffe es hat jemand von euch eine Idee.. Danke im Vorraus, Tobi
Ich denke, das Beste wird es sein, die Datenpakete zu zählen, die Du an den Chip seitens des Controllers geschickt hast. Dazu mußt Du aber die Auflösung und Bitrate des mp3s wissen. Wirklich samplegenau geht es nur, wenn Du echte PCM (Wave) Files anstelle von MP3s abspielst. Siehe hier: Beitrag "SD-Karten-Wave-Recorder"
Beim VS1053 kann man bei OGG und WMA die Zeit in ms auslesen. Bei MP3 geht auch nur sek.
Ja, leider brauche ich die Zeit bei MP3s.. da scheint das intern nicht vorgesehen zu sein. Hätte man eventuell eine Chance das über die Software-"Nachrüstung" zu machen? Ist halt die Frage ob man da dann eine genauere Zeitbasis mit hinkriegen würde..
Wenn Du nicht weißt, nach wievielen übertragenen Paketen der Chip mit der Wiedergabe beginnt, wird das nichts. Wenn die Pufferdauer hingegen immer konstant ist, kann man in der Tat Pakete zählen und Steuerimpulse vom Controller passend dazu generieren.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.