VS1011 und Shoutcast

OP #1560359
Lesenswert?

Hi,
ich habe Probleme mit meinem Webradio-Projekt, bei denen ich nicht 
weiter komme.

Mein Vorhaben ist ein VS1011 (MP3-Dekoder Chip) mit Daten von einem 
Shoutcast stream zu füttern, sodass er sie dekodiert und abspielt. Das 
haben hier im Forum ja schon einige mit dem vs1053 gemacht.

Mein Problem ist, dass der VS1011 keinen Mux von sich gibt, wenn ich ihn 
mit den Shoutcast-Daten füttere. Ich habe den Chip selber schon 
getestet, indem ich ihm eine MP3-Datei zum Abspielen gegeben habe, dass 
funktioniert wunderbar. Muss ich die Daten vom Shoutcast-Server noch 
irgendwie bearbeitet, bevor ich sie an den Chip weiterleiten darf?

Soweit ich das verstanden habe, beginnen doch direkt nach dem 
htpp-Header des Shoutcast die Audio-Daten. Der Server auf den ich mich 
verbinde liefert mir als content-type "audio/mpeg", also sollte der 
VS1011 das auch abspielen können.

Hat jemand einen Tip, was ich vergessen habe oder noch beachten muss?
Gast #1560366
Lesenswert?

Ich habe auch grade ein Radio in Arbeit (allerdings mit Vs1053, 
funktionierte auf Anhieb)
Dort gebe ich die Daten 1:1 weiter, das sollte allerdings beim VS1011 
genauso gehen.

Evtl liegt Dein Problem ja woanders (TCP/IP).
OP #1560406
Lesenswert?

Die Metadaten hatte ich auch gleich in Verdacht und habe sie deshalb 
ausgeschaltet. Das hat aber keine Änderung gebracht.

Die Stream-Daten habe ich mir mal im Debugger angeschaut (soweit das 
Möglich ist bei den Mengen) und mit denen vom Wireshark verglichen, dass 
sieht erstmal gut aus.

@Andreas Watterott
Deinen Code (vom ARM webradio) habe ich natürlich auch schon gefunden. 
Was auffällt ist, dass du bei einem Stream (lt. Kommentar) zunächst 128 
Frames überspringst und dann bei MP3 vorspulst zu einem Sync-Byte. Was 
sind bei dir 128Frames, sind damit Bytes gemeint? Wozu die Suche nach 
dem Sync-Byte?

Sowas wie ein Sync-Byte suche ich momemtan nicht in den Daten, vllt. 
liegt es ja daran?
Persönliche Seite #1560421
Lesenswert?

Also einen VS1002 kann ich auch direkt mit den Shoutcast Daten füttern. 
Wenn man Metainformationen drinne hat, hört man die als seltsames 
"Zirpen" aber der Decoder spielt weiter. Am Anfang des Streams werden 
auch bei metadaten = 0 trotzdem Informationen zum Sender übertragen. 
Dump die Daten doch mal (zb mit wget auf dem PC in eine Datei) und 
probier die dann.
Persönliche Seite #1560585
Lesenswert?

Star Keeper schrieb:
> @Andreas Watterott
> Deinen Code (vom ARM webradio) habe ich natürlich auch schon gefunden.
> Was auffällt ist, dass du bei einem Stream (lt. Kommentar) zunächst 128
> Frames überspringst und dann bei MP3 vorspulst zu einem Sync-Byte. Was
> sind bei dir 128Frames, sind damit Bytes gemeint? Wozu die Suche nach
> dem Sync-Byte?

Manche Stationen wollen beim Starten einen Puffer von ca. 64-128kByte 
aufbauen. Da das Radio ohne F-RAM das nicht schafft, werden je nach 
Bitrate Pakete verworfen und anschließend wird wieder auf die Audiodaten 
synchronisiert. Das Synchronisieren ist bei einem MP3 Stream aber nicht 
so wichtig - bei Ogg und WMA ist es aber angebracht.

Gruß
Andreas

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren