Internetradio aufzeichnen
Artikel wird überarbeitet
Dieser Artikel wird momentan überarbeitet.
Geplante Fertigstellung: 29.2.2012
Derzeitig gültiger Artikel: Internetradio aufzeichnen
Bearbeiter: aasche
Solltest du dir nicht sicher sein, ob an dieser Anleitung noch gearbeitet wird, kontrolliere das Datum der letzten Änderung und entscheide, wie du weiter vorgehst.
Achtung: Insbesondere heißt das, dass dieser Artikel noch nicht fertig ist und dass wichtige Teile fehlen oder sogar falsch sein können. Bitte diesen Artikel nicht als Anleitung für Problemlösungen benutzen!
Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:
Du möchtest den Artikel für eine weitere Ubuntu-Version testen? Mitarbeit im Wiki ist immer willkommen! Dazu sind die Hinweise zum Testen von Artikeln zu beachten.
Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:
In Zeiten des Internetradios ersetzt der Computer den Kassettenrekorder. Radiosendungen und Musikstreams für den privaten Bedarf aufzuzeichnen ist eine legale Form, die eigene Musiksammlung zu erweitern. Das Kommandozeilenprogramm Streamripper dient dabei häufig als Basis für Programme mit grafischen Oberflächen, mit denen man direkt per Mausklick Aufnahmen starten kann.
Da heute auch klassische Radiosender über Internet senden, muss man sich aber vor der Aufnahme über das Format eines Streams informieren. Während früher fast nur Wiedergabelisten mit MP3- oder OGG Vorbis Dateien verwendet wurden, benutzen manche Sender inzwischen auch proprietäre Lösungen wie Flash oder Techniken von Microsoft für ihr "Webradio"-Angebot. Hier leistet der MPlayer vor allem bei Windows-Streams gute Dienste (siehe auch Streams speichern), während Streamripper für die von Stream-Verzeichnissen wie Icecast 🇬🇧 oder SHOUTcast 🇬🇧 verwendeten Wiedergabelisten (.m3u, .pls) geeignet ist.
Streamripper¶
Streamripper 🇬🇧 ist ein Werkzeug für die Kommandozeile, mit dem man Streams wie z.B. über SHOUTcast oder LastFM aufnehmen und direkt als MP3 oder OGG (je nach Stream) auf der Festplatte speichern kann. Die Lieder werden automatisch nach dem Interpreten benannt und einzeln abgespeichert.
Installation¶
Streamripper kann über das folgende Paket installiert [1] werden:
streamripper (universe)
Befehl zum Installieren der Pakete:
sudo apt-get install streamripper
Oder mit apturl installieren, Link: apt://streamripper
Das Programm kann im Terminal [2] mit dem Befehl "streamripper
" ausgeführt werden. Gibt man keine weiteren Parameter ein, erhält man eine Liste der Funktionen.
Verwendung¶
Der Aufruf im Terminal muss dazu mit Parametern versehen werden:
streamripper URL OPTIONEN
Mit URL ist hier die Internet-Adresse eines Streams gemeint.
Optionen | |
Parameter | Zweck |
-d <dir> | Ort, an dem die Aufnahme gespeichert wird |
-l <seconds> | Dauer der Aufnahme in Sekunden |
-q | Nummeriert die einzelnen Dateien mit Präfix 001 bis 999 |
-a | Speichert den Stream zusätzlich am Stück in einer Datei und erstellt .cue Datei |
-A | Verhindert das Erstellen der .cue Dateien, funktioniert nur mit -a |
-1 | (minus eins) Schreibt keine ID3V1 Tags |
-r | Öffnet ein Relay auf Port 8000 , über den ein Stream während der Aufnahme empfangen werden kann |
-p <proxy> | Nutzung eines Proxys. Beispiel: -p http://proxyip:port |
-o ... | Sollen bereits vorhandene Titel ersetzt werden. Zur Auswahl stehen: never , always , larger und version . |
Siehe auch Streamripper-Readme 🇬🇧
Zeitgesteuerte Aufnahmen¶
Eine einfache Möglichkeit, um Internetradio zeitgesteuert aufzunehmen, ist das Plugin "record-station" für den Musik-Player Rhythmbox. Weitere Informationen gibt es im Artikel Rhythmbox unter Record Station.
Eine weitere Möglichkeit für Fans der Kommandozeile ist der Aufruf von Streamripper über Cron. Elegant geht das über ein Skript, hier ein Beispiel:
streamripper [URL] [-d [Pfad wo die Dateien gespeichert werden sollen]] [-l [Dauer der Aufnahme in Sekunden]]> /dev/null 2>&1
Achtung!
Cron-Jobs senden ihren Output zu "mail". Da bei Ubuntu "mailx" standardmäßig nicht installiert ist, führt der Aufruf von Streamripper über cron
nach ca. 5-6 Minuten zu einem Absturz. Abhilfe schafft das Installieren des Paketes mailx oder das Anfügen von > /dev/null 2>&1
in derselben Zeile im Skript.
Weniger elegant, aber einfach lässt sich die Startzeit im Terminal mit dem Befehl "at
" festlegen. Nach Eingabe der Startzeit gibt at
eine Warnung aus, worauf der eigentliche Befehl, in diesem Fall "streamripper
" mit der gewünschten Stream-Adresse (URL) und Aufnahmelänge, eingegeben wird. Mit der Tastenkombination
Strg +
D wird die Befehlszeile abgeschlossen. Beispiel:
at 20:10 warning: commands will be executed using /bin/sh at> streamripper http://dradio-ogg.t-bn.de/dkultur_high.ogg -l 3600 at> <EOT> job 1 at Tue Dec 1 20:10:00 2009
Um 20:10 Uhr wird "streamripper
" gestartet und zeichnet 3600 Sekunden lang den Stream von Deutschlandradio Kultur auf.
Auch komplexere Zeitangaben sind mit Hilfe des Linux-User Artikels Cron, At - Punktlandung 🇩🇪 möglich.
Alternativ bietet sich das Programm "Scheduled tasks" an, mit dem sich Systembefehle - und damit auch Streamripper - zeitgesteuert starten lassen. Auch wiederkehrende Ereignisse nach Kriterien wie z.B Tag, Woche oder Monat sind möglich. Installation:
gnome-schedule (universe)
Befehl zum Installieren der Pakete:
sudo apt-get install gnome-schedule
Oder mit apturl installieren, Link: apt://gnome-schedule
Ein Problem ist das als Resultat der Aufnahme eine Datei mit dem Namen "-.mp3" entsteht. Dies kann man mit einem Skript verhindern mit dem die Aufnahme nach ihrem Ende mit dem aktuellen Zeitstempel als Dateinamen versehen wird.
1 2 3 4 5 6 7 8 | #!/bin/bash # Skript zum Speichern eines Radio mp3-Streams # Wichtig! Ausfuehrbarmachen nicht vergessen! (chmod u+x) DATUM=`date +%Y-%m-%d_%RUhr` streamripper Streamadresse -D ~/radiorips -l 3300 && mv ~/radiorips/incomplete/*mp3 ~/radiorips/$DATUM.mp3 && rmdir ~/radiorips/incomplete/ && sudo shutdown -h +1 |
In diesem Beispiel wird die Aufnahme im Verzeichnis ~/radiorips/incomplete aufgezeichnet. Nach Abschluss der Aufnahme wird die Datei umbenannt in Zeitstempel.mp3 und im Verzeichnis ~/radiorips abgelegt. Anschließend wird der Ordner incomplete gelöscht und der Rechner heruntergefahren. Soll der Rechner nicht heruntergefahren werden, muss die Zeile "sudo shutdown -h +1" auskommentiert oder gelöscht werden, sowie die &&-Operatoren in der darüberliegenden Zeile gelöscht werden.
Stream mit Schnitt-Datei aufzeichnen¶
Da Streamripper einzelne Musikdateien nicht immer an der richtigen Stelle schneidet, ist es sinnvoll, an dieser Stelle selbst Hand anzulegen. Dazu zeichnet man den Radiosender als einzelnen Stream auf und lässt Streamripper zusätzlich eine Schnittpunkt-Datei anlegen. Mit mp3splt-gtk kann man diese öffnen und muss nur noch Feineinstellungen betreiben, um die Dateien exakt in einzelne Titel zu schneiden.
Dazu ein Beispielskript:
1 2 | #!/bin/bash streamripper http://www.foo.com/radio.php -a /home/foobar/$(date +%x_%X).mp3 -L /home/foobar/$(date +%x_%X) --xs2 |
Dieses Skript legt beim Ausführen im Ordner /home/foobar/ die eigentliche .mp3- oder .ogg-Datei des Radiosenders an und zusätzlich eine .cue-Datei, die die Schnittpunkte in Textform beinhaltet. Der Dateien werden durch "$(date +%x_%X)
" nach dem aktuellen Datum und der Uhrzeit benannt, damit man bei mehreren Aufnahmen keine (vorhandenen) Dateien überschreibt oder vertauschen kann.
Grafische Oberflächen¶
Prinzipiell kann hier zwischen auf Streamripper basierenden und unabhängigen Programmen unterschieden werden. Zu letzteren zählen z.B. der MPlayer und VLC. Eine alphabetische Liste.
KStreamRipper¶
Mit dem Programm KStreamRipper 🇬🇧 gibt es ein grafisches (KDE-)Frontend für Streamripper. Dieses ist allerdings auch unter GNOME und jedem anderen Fenstermanager lauffähig. Es lässt sich über das folgende Paket installieren:
kstreamripper (universe, bis Kubuntu 10.10)
Befehl zum Installieren der Pakete:
sudo apt-get install kstreamripper
Oder mit apturl installieren, Link: apt://kstreamripper
MPlayer¶
Auch der MPlayer eignet sich zum Mitschnitt von Streams. Für Streams, deren URL nur als asx-Playlist bekannt ist, gibt es hier eine Lösung in der Konsole.
Rhythmbox-Radio-Browser¶
Für Rhythmbox existiert eine Erweiterung Radio-Browser, die die Wiedergabe und Aufzeichnung von Internetradio problemlos ermöglicht. Es basiert ebenfalls auf Streamripper. Durch das Plugin werden die Internetradio-Verzeichnisse von Icecast und SHOUTcast zugänglich. Für etliche weitere Sender ist der Zugriff nach Ländern geordnet möglich (ständig wachsende Anzahl!). Wünsche für noch nicht verzeichnete Sender können an den Entwickler segler alex geschickt werden. Außerdem wird eine Liste der zuletzt gespielten Sender angezeigt und es können Lesezeichen ("Bookmarks") angelegt werden – sehr sinnvoll, um Lieblingssender schnell wiederzufinden.
Mit rhythmbox-shoutcast gibt es ein weiteres Plugin speziell für SHOUTcast.
StreamRipStar¶
StreamRipStar bietet eine grafische Oberfläche für die meisten Optionen von Streamripper an. Als Stream-Verzeichnis dient ausschließlich SHOUTcast, eigene Stationen können aber auch angelegt werden. Durch die Verwendung von Java plattformübergreifend.
Streamtuner¶
Der Klassiker Streamtuner ist ein kleines Werkzeug, das direkt aus den offiziellen Paketquellen installiert werden kann. Es bezieht seine Informationen aus verschiedenen Stream-Verzeichnissen wie z.B. Icecast und zeigt darüber diverse internationale Internet-Radiosender an. Streamtuner wird seit längerem nicht mehr weiter entwickelt. Die aktuelle Version ist von Dezember 2004, funktioniert aber immer noch hervorragend.
Streamtuner2¶
Streamtuner2 ist eine in Python programmierte Neuentwicklung und ab Ubuntu 11.10 in den offiziellen Paketquellen enthalten (für ältere Ubuntu-Versionen steht ein Fremdpaket zur Verfügung). Neben SHOUTcast werden noch eine Reihe weiterer Stream-Verzeichnisse berücksichtigt.
TunaPie¶
Eine weitere Alternative ist das Programm TunaPie. Es verwendet zur Aufnahme ebenfalls Streamripper und bietet die Top-Sender des Internetradio-Verzeichnisses von Icecast zur Wiedergabe/Aufnahme an. Außerdem lassen sich auch etliche Internet-"TV"-Sender wiedergeben. Zur Wiedergabe werden externe Player wie Audacious und VLC verwendet. Auch zeitgesteuerte Aufnahmen sind problemlos möglich.
VLC¶
Eine sehr einfache Möglichkeit zur Aufnahme von Streams bietet auch VLC. Unter Menü Ansicht die Erweiterte Steuerung aktivieren. Der rote Button in der neuen Leiste nimmt bei Klick alle Medien (Radio, Videos, DVDs...) in eine Datei vlc-record-<datum>-<streamname>.<format> im Homeverzeichnis auf.
Kommandozeile¶
fadecut¶
fadecut ist ein Shell-Skript, um mit Hilfe von Streamripper und anderen Kommandozeilenwerkzeugen Internetradio (Streams) aufzunehmen. Siehe Baustelle/fadecut.
Links¶
Internetradio/Stationen - Liste mit einigen Streams und Links zu Radiostationen-Verzeichnissen
LastFM-Streams aufnehmen
mp3splt - Aufnahmen im MP3- oder OGG-Format ohne Neukodierung schneiden
Onlinestreams für Radiosender 🇩🇪 - linux-beginnerforum.de
Ganz legal MP3s aufnehmen mit Streamtuner und Streamripper 🇩🇪
Audiostreams aus dem Netz aufzeichnen 🇩🇪 - LinuxUser 06/2005