Forum: Mikrocontroller und Digitale Elektronik Komplexer Selbstbau-MP3-Player


von Michael S. (rbs_phoenix)


Lesenswert?

Hallo zusammen. Ich hab da mal eine Frage.
Ich hab ein Projekt, einen MP3-Player zu bauen.

Grob zur GEPLANTEN Funktion: Die Dateien sollen vom USB-Stick, SD-Karte 
und interner IDE-Festplatte abspielbar sein. Zusätzlich soll ein 
USB-Anschluss und Ethernetbuchse dazu dienen, die Daten auf die interne 
Festplatte zu bekommen, also via Wechseldatenträger a la externe 
Festplatte oder aber via FTP über LAN. Abspielbare Formate: Wave, MP3 
(bis 320kbit), AAC, WMA, OGG und FLAC. Bedienung am Gerät und 
iR-Fernbedienung, Anzeige über kleines Grafik-Display am Gerät und auch 
Ausgang über Composite (um zusätzlich mit den 2 Audio-Chinch-Steckern an 
einen Fernseher gehen zu können).

Das ist erstmal geplant. Worauf ich in sozusagen v1.0 verzichten kann, 
ist die interne Festplatte (und somit auch den 2. USB-Anschluss sowie 
Ethernet) und die Unterstützung von AAC, WMA, OGG und FLAC.

Die Wiedergabereihenfolge soll quasi wie im Windowsexplorer erfolgen. 
D.h.: Die Ordner sind alphabetisch sortiert, die Lieder/Dateien darin 
auch. Der erste Ordner ist, sofern Lieder dort vorhanden sind, der 
Root-Ordner, der auch immer so heißt.

Auf dem Grafikdisplay am Gerät soll der Ordnername stehen, sowie die 
Stücknummer (von den Dateien in diesem Ordner) und der Titel (Dateiname 
oder falls vorhanden ID3v1/2-Tag). Über den Composite-Ausgang soll eine 
Art Explorer ausgegeben werden. Sprich man kann sich Frei in den 
Ordnerstrukturen der Devices bewegen und einzelne Lieder auswählen.

Am Gerät selber soll es Tasten geben, mit denen man Lied vor/zurück und 
Ordner vor/zurück machen kann, vorwärts und rückwärts Spulen kann, sowie 
Play/Pause und Stop. Zusätzlich zu diesen Funktionen soll auf der 
Fernbedienung ein Steuerkreuz sein (hoch, runter, links, rechts, enter), 
um im Explorer "auf dem Fernseher" navigieren zu können.

Wenn das letzte Lied eines Ordners vorbei ist, soll automatisch das 
erste vom nächsten Ordner abgespielt werden. Ist es das letzte Lied vom 
letzten Ordner, dann halt das erste Lied vom ersten Ordner.


Meine eigentliche Frage zu diesem Projekt ist, wie ich das am besten 
Hard-/Softwareseitig realisiere. Die Gedanken, die ich hatte waren 
folgende:
- ein ARM mir externem Audio-DAC und eigener Software
- ein komplettes Multimedia-Board mit ARM, Audio-DAC und Video-Output 
onboard (somit könnte ich auch evtl "größere" ARMs nehmen, die schon 
verlötet sind, da ich ein BGA wohl nicht verbaut bekomme), dazu selbst 
programmierte Software
- ein gleiches/ähnliches Board, jedoch mit Linux (oder vergleichbares) 
drauf, somit könnte ich doch die für Linux vorhandenen decoder für die 
Audio-Formate benutzen!? Mit passendem Treiber ginge meines Wissens doch 
auch die Ausgabe via Composite einfacher, oder? Genau so mit Ethernet 
und FTP.

Gibt es andere, ggf. besser geeignete Kombinationen bzw Vorschläge? 
(Außer, ich solls einfach fertig kaufen) Wie sieht das mit externem 
Decoder aus (wie dem VS1053)? Machen diese bei leistungsstarken ARMs 
sinn? Die Multimedia-Systeme müssen das ja auch irgendwie hinbekommen.

Um schonmal was vorzugreifen. Ich hab sicherlich noch nicht das Wissen, 
so etwas aus dem Hut zaubern zu können, doch ich will mich jetzt nicht 
auf z.B. Linux versteifen, wenn es anders evtl einfacher und/oder besser 
gehen würde und ich dann meine Zeit in die "flasche" Richtung gesteckt 
habe.

Vielen Dank schonmal für jeden Tipp/Hinweis/Anregung.

von Hans W. (stampede)


Lesenswert?

Baue ich gerade, aber die IDE Schnittstelle habe ich wieder 
rausgeschmissen. War in der alten Version meines Boards drin.

http://www.hifi-forum.de/index.php?action=browseT&back=1&sort=lpost&forum_id=71&thread=9872

von Michael S. (rbs_phoenix)


Lesenswert?

Ich habe auch was vom (sehnlichst erwartendem) Raspberry PI gelesen, in 
Verbindung mit XBMC (wo auch noch extra eine angepasste Version für das 
R.PI gemacht werden soll) ist das ja schon ziemlich das, was ich möchte 
(und noch mehr). Über SPI könnte man noch einen anderen µC annbinden, 
der sich um das kleine Grafikdisplay kümmert und die 
Tasten/Fernbedienung auswertet. Doch ich stell mir die Frage, wie 
einfach man sowas dort einbetten kann, also dass ich sozusagen über SPI 
die Bibliothek steuern kann. Wobei ich mir das einfacher vorstelle, als 
das + dem Rest zu machen.

von Purzel H. (hacky)


Lesenswert?

Mir scheint das Projekt zu komplex. Wenn man's nicht aus dem Hut ziehen 
kann, ist es eh zu kompliziert. Proobier's mal mit einem Evalkit von 
irgendwas, das diese Funktionalitaet schon (fast) hat. zB einem Cyclone3 
Board.

von Karol B. (johnpatcher)


Lesenswert?

Michael Skropski schrieb:
> Doch ich stell mir die Frage, wie
> einfach man sowas dort einbetten kann, also dass ich sozusagen über SPI
> die Bibliothek steuern kann. Wobei ich mir das einfacher vorstelle, als
> das + dem Rest zu machen.

Das dürfte definitiv machbar sein. XBMC bringt sogar von Haus aus schon 
Support für LCDs mit. Da bedarf es also nur ein wenig Anpassung.

Was die Fernbedienung angeht: Entweder auf Bluetooth Tastaturen setzen 
(mit entsprechendem Dongle) oder halt wirklich was selbstgeschnitzes 
über IR. Selbst da gibt es hier im Forum schon Vorgefertigtes, z.B. 
Beitrag "USB IR Remote Receiver (V-USB + IRMP)"

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.