hotti: (Multimedia) Stream Ripper (mal zum Testen)

hi,

eine kleine Bitte hab ich, untenstehendes Script schneidet einen Stream mit, mein Player spielt die Datei einwandfrei ab, kann das mal jemand mit einem beliebigen Player testen?

  
#!/usr/bin/perl  
  
###########################################################################  
# VARs  
my $host = '88.191.90.189';  
my $port = 8083;  
###########################################################################  
use strict;  
use IO::Socket;  
  
$| = 1;  
  
# socket handle erstellen  
my $socket = new IO::Socket::INET (  
	PeerAddr => $host,  
	PeerPort => $port,  
	Proto    => 'tcp'  
);  
  
print $socket "GET / HTTP/1.0\n\n";  
  
open(OUT, ">test.mpeg");  
binmode OUT;  
while(my $s = read($socket, my $buffer, 1024)){  
	print OUT $buffer;  
}  
  
close OUT;  

Evntl. muss die Dateierweiterung angepasst werden.

Danke und viele Grüße,
Hotti ;-)

  1. hi,

    also, ich hoffe, dass ich meine Begeisterung fürs InternetRadio hier ein bischen teilen kann ;-)

    Nachdem die Zeile
    print $socket "GET / HTTP/1.0\n\n";

    in das Socket geschrieben wurde kommt der Header, der sieht so aus:

    ICY 200 OK
    icy-notice1:<BR>This stream requires <a href="http://www.winamp.com/">Winamp</a><BR>
    icy-notice2:SHOUTcast Distributed Network Audio Server/Linux v1.9.8<BR>
    icy-name:DIVA FUNK - FUNK MUSIC PARADISE - DEEVARADIO.NET - ALSO ON AAC+
    icy-genre:Funk Disco 80s RnB Rap Soul
    icy-url:http://deevaradio.net
    content-type:audio/mpeg
    icy-pub:1
    icy-br:128

    und dem Header folgt nach einer Leerzeile der Stream. Das RTSP ist dem HTTP sehr ähnlich und das SYN/ACK Geschnatter per TCP übernimmt IO::Socket. Ich hab mir das vorher natürlich mal mit einem Netzwerk-Analysetool (Ethereal) angeschaut, es ist tatsächlich recht einfach. Meine Befürchtungen, dass der Klartext-Header in der geschriebenen mp3-Datei stören würde, haben sich nicht bestätigt, andere Player spielen die Datei und gebrannt werden kann die auch.

    Aber nicht, dass Ihr jetzt alle Eure Platten mit mp3's zumüllt ;-)

    Horst Sockenschuss