mikrocontroller.net

Forum: Compiler & IDEs Gibt es einen MP3 Decoder...


Autor: Ralf (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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 !

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht 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.

Autor: Rufus T. Firefly (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, sowas gibt es in der Tat:
http://www.underbit.com/products/mad/

Das besondere ist, daß dieser Decoder mit 32Bit-Integer-Arithmetik
auskommt. Eine ARM-Portierung soll dabei sein.

Viel Erfolg!

Autor: Ralf (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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???

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bei der Nutzung der internen DACs nicht vergessen dass man im Gegensatz
zu Audio-DACs noch ein Rekonstruktionsfilter (Tiefpass) am Ausgang
braucht, sonst hat man hochfrequenten Dreck im Signal.

Autor: Ralf (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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?))?

Autor: Uwe Nagel (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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!

Autor: Jonas H (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
...gibt es so einen Code evt. auch für OggVorbis ??

Autor: ejd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> ...gibt es so einen Code evt. auch für OggVorbis ??

Ich würde sagen Tremor (http://www.xiph.org/ogg/vorbis/).

mfG,

                                ejd

Autor: Ford (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

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.