![]()
Linux und Streamripper
Streamripper ist ein Programm zum Mitschneiden von Internetradio. Das gibt es für Windows, auch mit grafischer Benutzeroberfläche und natürlich als vollautomatisches Programm für Linux.
Installation bei ArchLinux wie üblich: pacman -S streamripper.
Streamripper kümmert sich um Shoutcast-Streams, was immer das sein mag, jedenfalls muß nicht die eigene Lieblings-Radiostation dieses Format benutzen, das kann dann schade sein. Es gibt aber genügend andere Webradios die als Shoutcast zu haben sind, man suche unter www.shoutcast.com
Bevor Streamripper aufgerufen wird, sollte ein Webradio-User eingerichtet werden.
Einen neuen Benutzer = User hinzufügen mit adduser
Beispiel:
[root@bigserv ~]# adduser
Login name for new user []:
An dieser Stelle den Namen des neuen Benutzers eingeben, z.B. webradio, oder schnoesel.
Nach der Vergabe des neuen Benutzernamens kommen noch weitere Eingabeaufforderungen dazu, einfach alle bestätigen bzw. was nettes eintragen, z.B. bei Telefonnummer 12345678. Beim Passwort kann auch webradio eingetragen werden sofern es sicher ist, daß kein Bösewicht an den Computer kommt, sonst eben was ordentliches nach eigenem Geschmack.
Der root sollte den Streamripper nicht in Gang setzen, auch wenn das ein einfacher Weg ist. Der Streamripper ist üblicherweise bis zu mehreren Tagen bei der Arbeit und dabei pausenlos mit dem Internet verbunden, das wäre im Prinzip eine gute Gelegenheit für Angriffe von außen. Ein root geht auch nicht ins Internet, außer für Installationen.
Der Webradio-User hat ein eigenes Verzeichnis, standardmäßig /home/webradio/ wenn der Webradio-User auch den Namen webradio bekommen hat.
Es geht los, der User webradio meldet sich an mit Benutzername und Passwort.
Der Aufruf von Streamripper ist z.B. so wie nachfolgend:
[webradio@bigserv ~]$ streamripper http://80.237.152.110:9000/ -k 1 -s -t -d /home/webradio/WRT --quiet --xs_padding=2000:500 &
Danach kann sich der Benutzer webradio abmelden oder was anderes machen.
Die Parameter sind:
http://80.237.152.110:9000/ die Adresse der Radiostation, es gibt nicht nur diese sondern viele andere, die Zahl hinter dem Doppelpunkt ist eine Portnummer, es gibt auch 8000 oder 8050 oder was auch immer, das hängt von der Station ab.
Die hier als Beispiel angegebene Station hat einige Zeit die Musikstücke ganz ordentlich mit den richtigen Kennungen versehen. Zu der Zeit zu der genau dieser Text entstanden ist, wurde allerdings alles was gespielt wurde, gnadenlos zerhackt, mit anderen Worten, schlichtweg unbrauchbar. Vermutlich muß man eine andere Station ausprobieren.
-k 1 der erste Titel wird übersprungen, bei einer 2 wären es zwei Titel und so weiter.
-s damit wird das Verzeichnis welches die Radiostation liefert unterdrückt, deren Namen sind oft sehr unhandlich.
-t es gibt ein Verzeichnis "Incomplete" in dem mit dieser Option dann keine Titel von gleichnamigen Titeln überschrieben werden, stattdessen gibt es zusätzliche Nummern.
-d /home/webradio/WRT dieses Verzeichnis wird erstellt und da hinein werden die Titel gespeichert.
--quiet der stille Modus, es gibt keine Meldungen von Streamripper auf die Console.
--xs_padding=2000:500 mein Lieblingsparameter, 2000 ms Nachlauf und 500 ms Vorlauf, um diese Zeit werden die Titel verlängert, die Zahlen dürfen auch andere sein, 1000 ms = 1 Sekunde. Webradio ist eine etwas ungenaue Wissenschaft, zum späteren Zurechtschneiden braucht man etwas mehr Material. Es steht so in man streamripper, keine Ahnung warum die erste Zahl die Nachlaufzeit beschreibt und die zweite die Vorlaufzeit...
& damit wird nur das Programm gestartet und die Console wieder freigegeben, das Programm läuft im Hintergrund weiter.
Hier die Ausgabe von Streamripper ohne Parameter:
[webradio@bigserv ~]$ streamripper
Usage: streamripper URL [OPTIONS]
Opts: -h - Print this listing
-v - Print version info and quit
-a [file] - Rip to single file, default name is timestamped
-A - Don't write individual tracks
-d dir - The destination directory
-D pattern - Write files using specified pattern
-s - Don't create a directory for each stream
-r [[ip:]port] - Create relay server on base ip:port, default
port 8000
-R #connect - Max connections to relay, default 1, -R 0 is no
limit
-L file - Create a relay playlist file
-z - Don't scan for free ports if base port is not avail
-p url - Use HTTP proxy server at <url>
-o always - Always overwrite tracks in complete
-o never - Never overwrite tracks in complete
-t - Don't overwrite tracks in incomplete
-c - Don't auto-reconnect
-l seconds - Number of seconds to run, otherwise runs forever
-M megabytes - Stop ripping after this many megabytes
-q [start] - Add sequence number to output file
-i - Don't add ID3 tags to output file
-u useragent - Use a different UserAgent than "Streamripper"
-w rulefile - Parse metadata using rules in file.
-m timeout - Number of seconds before force-closing stalled conn
-k count - Skip over first <count> tracks before starting
to rip
-I interface - Rip from specified interface (e.g. eth0)
-T - Truncate duplicated tracks in incomplete
-E command - Run external command to fetch metadata
--quiet - Don't print ripping status to console
--debug - Save debugging trace
--xs_??? - Invoke splitpoint detection rules (see README/man page)
[webradio@bigserv ~]$ streamripper
Um Streamripper wieder zu stoppen muß dessen PID ermittelt werden und dann ein kill PID erfolgen.
Das geht mit ps x.
[webradio@bigserv ~]$ ps x
PID TTY STAT TIME COMMAND
4261 ? Sl 9:37 streamripper http://80.237.152.110:9000/
-k 1 -s -t -
6544 ? S 0:00 sshd: webradio@pts/1
6545 pts/1 Ss 0:00 -bash
6549 pts/1 R+ 0:00 ps x
Dieser Streamripper hat die PID 4261
Soll Streamripper beendet werden schreibt man hier kill 4261.
[webradio@bigserv ~]$ kill 4261
Keine Hast dabei, das dauert eine kleine Zeit aber es funktioniert, zu überprüfen mit einem weiteren ps x.
[webradio@bigserv ~]$ ps x
PID TTY STAT TIME COMMAND
6544 ? S 0:00 sshd: webradio@pts/1
6545 pts/1 Ss 0:00 -bash
6551 pts/1 R+ 0:00 ps x
[webradio@bigserv ~]$
Hier noch einige Radiostationen zum üben
http://radio1.nightline-radio.de:8000
http://85.31.186.154:8030
http://streaming01.punk-radio.de:8100/punk
http://streaming01.punk-radio.de:8000
http://streaming02.punk-radio.de:8000
http://streaming03.punk-radio.de:8000
http://bigvibez.com:7000
http://radio.bigupradio.com:8005 # Reggae
25.05.2007-11.04.2008