Gibt es einen MP3 Decoder...

Gast #182478
Lesenswert?
• ▲
▼
... der nur als Software ohne weitere MP3 Hardware auskommt? Die Idee
wäre, z.B. einen uC der analoge Ein- und Ausgänge bestitzt zu
programmieren um MP3 hören zu können. Natürlich muss das decodieren
relativ schnell gehen (evt. mit einem ARM7 der bis zu 60 MHz getacktet
wird?

Oder ist das totaler Unsinn, da für so etwas ein DSP verwendet wird?
Gibt es auch schon fertige C-Sourcen für die Decodierung? Habe zwar
schon "gegoogelt" aber meiner Meinung nichts brauchbares gefunden.

P.S. Forensuche verwendet, nichts gefunden :-(

P.P.S. Wer Schreibfehler findet, darf sie behalten !
Admin Persönliche Seite #182479
Lesenswert?
• ▲
▼
Es gibt einen fuer ARM optimierten Open Source Decoder von Real. Ich
habe mal ein Beispielprogramm fuer den LPC2106 gebastelt, siehe Anhang.
Das Dekodieren braucht ca. 30 MHz. Das eigentliche Problem an der Sache
ist es den Ton nach draussen zu bekommen; gaengige Audio-DACs lassen
sich nicht an den LPC2106 anschliessen da man I2S nicht mit dem
SPI-Port emulieren kann.
Angehängte Dateien:
Gast #182481
Lesenswert?
• ▲
▼
@Rufus T. Firefly
Super! Danke für die Antworten. Ich verwende z.Zt. den LPC2138 der ja
interne AD/DA Wandler hat und auch bis 60 MHz taktbar ist. Ich werde
mir die Sourcen mal ansehen und es damit versuchen.


P.S. Wann gibt es endlich die edit Funktion???
Gast #182483
Lesenswert?
• ▲
▼
@Andreas Schwarz
Also Tiefpass plus ein kleiner Verstärkerbaustein sollte doch reichen,
oder? Wie kann ich den benötigten Tiefpass berechnen (also von welcher
Grenzfrequenz sollte ich ausgehen (1MHz?))?
Gast #182484
Lesenswert?
• ▲
▼
Wieso 1MHz? Du hast eine Abtastfrequenz von vielleicht 48kHz (oder
44,1kHz) und eine maximale Signalfrequenz (Musik) von 20kHz. Das heisst
die ersten unerwünschten Mischprodukte treten bei 48-20= 28kHz auf und
die sollten weg! Natürlich möglichst ohne die 20kHz zu beeinflussen.
In einem CD-Spieler der allerersten Generation hab ich mal ein
Tiefpass 8. Ordnung mit 20kHz Eckfrequenz gefunden! Der filterte zwar
gut, erzeugte aber heftige Phasendrehungen im Audiobereich...
Deshalb wurden digitale Oversampling-Filter erfunden!
Gast #182487
Lesenswert?
• ▲
▼
Hi,

ich spiele gerade ein bischen mit einem ARM9 mit embedded Linux rum.

Ich habe nun auf der Benutzerebene die I2S Schnittstelle so
konfiguriert, dass ich WAV-Datein direkt an diese senden kann.
Als nächsten Schritt möchte ich gerne MP3 Dateien direkt an die I2S
Schnittstelle senden.

Hierzu bräuchte ich einen einfachen Decoder der mir Mp3 Dateien
einließt und die Daten direkt als PCM wieder ausgibt. Die meisten
Decoder geben die Daten direkt an einen Soundtreiber weiter. Da ich
noch nie einen Treiber programmiert habe. Möchte ich mich da auch nicht
gerade dranwagen, sondern die Daten vorerst direkt an I2S weitergeben.

Also ich würde quwasi den Quellcode für einen Mp3 zu PCM converter
benötigen. Weis jemand wo ich sowas finde.

Viele Grüße

Ford

Antwort schreiben

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.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.