[[Vorlage(Überarbeitung, 29.2.2012, Internetradio_aufzeichnen, aasche)]] [[Vorlage(Getestet, oneiric, natty, maverick, lucid)]] {{{#!vorlage Wissen [:Pakete_installieren:Pakete installieren] [:Terminal: Ein Terminal öffnen] }}} [[Inhaltsverzeichnis(2)]] [[Bild(./record-internet-radio.png, align=left)]] In Zeiten des [:Internetradio:Internetradios] ersetzt der Computer den Kassettenrekorder. Radiosendungen und Musikstreams für den privaten Bedarf aufzuzeichnen ist eine legale Form, die eigene Musiksammlung zu erweitern. Neben Streamripper und Streamtuner leistet (vor allem für Windows-Streams) auch der [:MPlayer:] gute Dienste. = Streamripper = [http://streamripper.sourceforge.net/ Streamripper] {en} ist ein Werkzeug für die Kommandozeile, mit dem man Streams wie z.B. über [http://www.shoutcast.com SHOUTcast] {en} 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: {{{#!vorlage Paketinstallation streamripper, universe }}} 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. Wer eine grafische Oberfläche bevorzugt: mit dem Programm [#Streamtuner Streamtuner] und weiteren [#Alternativen Alternativen] kann man auch direkt per Mausklick Aufnahmen mit dem Streamripper starten. == Verwendung == Der Aufruf im Terminal [2] muss dazu mit Parametern versehen werden: {{{#!vorlage Befehl streamripper [URL] [-d [Pfad wo die Dateien gespeichert werden sollen]] [-p http://proxyip:port [falls ein Proxy verwendet werden soll]] [-l [Dauer der Aufnahme in Sekunden]] }}} ||<-2 cellstyle="background-color: #E2C890;" :> '''Optionen''' || || `-d ` || Ort, an dem die Aufnahme gespeichert wird || || `-l ` || 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 kleinen Dateien, funktioniert nur mit `-a` || || `-1` || Schreibt keine ID3V1 Tags || Siehe auch [http://streamripper.git.sourceforge.net/git/gitweb.cgi?p=streamripper/streamripper;a=blob_plain;f=README Streamripper-Readme] {en} == 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 [http://wiki.ubuntuusers.de/Rhythmbox#Record-Station 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: {{{#!vorlage Befehl streamripper [URL] [-d [Pfad wo die Dateien gespeichert werden sollen]] [-l [Dauer der Aufnahme in Sekunden]]> /dev/null 2>&1 }}} {{{#!vorlage Warnung [: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 [[Vorlage(Tasten, Strg+D)]] wird die Befehlszeile abgeschlossen. Beispiel: {{{#!vorlage Befehl 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> 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 [http://www.linux-user.de/ausgabe/2006/02/094-zubefehl/ Cron, At - Punktlandung] {de} 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: {{{#!vorlage Paketinstallation gnome-schedule, universe }}} 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. {{{#!code bash #!/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:mp3splt-gtk] kann man diese öffnen und muss nur noch Feineinstellungen betreiben, um die Dateien exakt in einzelne Titel zu schneiden. Dazu ein Beispielskript: {{{#!code bash #!/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. = Streamtuner = [[Bild(./streamtuner.png, 200, align=right)]] [http://www.nongnu.org/streamtuner/ Streamtuner] {en} ist ein kleines Werkzeug, welches direkt aus den offiziellen Paketquellen installiert werden kann. Es liest verschiedene Internetseiten wie z.B. das [http://dir.xiph.org/ Icecast Directory] {en} aus und zeigt diverse internationale Internet-Radiosender an. Streamtuner wird seit längerem nicht mehr weiter entwickelt. Die aktuelle Version ist von Dezember 2004, funktioniert bis auf [#Shoutcast-Kategorien-werden-nicht-gefunden SHOUTcast] und [#Live365 Live365] aber gut. == Installation == Es müssen die folgenden Pakete installiert werden [1]: {{{#!vorlage Paketinstallation streamtuner, universe streamripper, universe mpegdemux, universe gstreamer0.10-fluendo-mpegdemux, universe }}} Nach der Installation findet man unter ''"Anwendungsmenü -> Unterhaltungsmedien"'' einen Menüeintrag zum Start von Streamtuner. == Konfiguration == Nach dem ersten Start sollte die Konfiguration überprüft werden. Unter dem Menüpunkt ''"Bearbeiten -> Einstellungen -> Anwendungen"'' ist der Punkt ''"Einen Stream aufnehmen"'' aufgeführt. Den dort gesetzten Wert bitte kontrollieren bzw. durch: {{{ x-terminal-emulator -e streamripper %q -d /home//Musikordner -r -o never }}} ersetzen. Der Pfad `/home//Musikordner` muss an das eigene System angepasst werden. Der Parameter `-r` öffnet einen Relay-Port, auf dem der Stream durch "`streamripper`" gesendet wird. Mit diesem Parameter ist es möglich, einen Stream gleichzeitig aufzunehmen und anzuhören, ohne ihn zweimal (bzw. doppelt) herunterzuladen. Allerdings ist er nur auf dem eigenen Computer zu empfangen. Der Parameter `-o never` sorgt dafür, dass ältere Aufnahmen nicht versehentlich überschrieben werden. Sollte man zur Verbindung ins Internet einen Proxy-Server benötigen, so muss zu dieser Zeile auch noch ``-p http://proxyip:port`` hinzugefügt werden. Nachdem ein Radiokanal ausgewählt wurde, kann man nun auf ''"Aufnehmen"'' klicken. Daraufhin öffnet sich Streamripper in einem Terminal-Fenster und speichert den Stream. Nun kann man die Adresse "`http://localhost:8000`" z.B. mit dem Audioplayer [:Audacious:] öffnen, um den Stream, den Streamripper gerade aufzeichnet, anzuhören. Auch wenn man nichts aufnehmen will, sollte man unter ''"Bearbeiten -> Einstellungen -> Anwendungen"'' bei den Punkten: * ''"eine .m3u Datei anhören"'' * ''"Einen Stream anhören"'' den Audio-Player kontrollieren bzw. einstellen, gefolgt von einem `%q`. Also z.B. `audacious2 %q` für den Audio-Player [:Audacious:]. Sehr viel Auswahl bietet z.B. der Reiter ''"Xiph"'' (= Icecast Directory). Hier kann man nach bestimmten Stil- und Geschmacksrichtungen suchen. Klickt man im linken Fenster auf eine Stilrichtung, werden im rechten Fenster Sender aufgelistet, die entsprechende Musik (oder auch Nachrichten, Hörspiele usw.) streamen. Die Auswahl ist so groß, dass bestimmt für jeden etwas dabei ist. Hat man einen Sender gefunden, der dem eigenen Geschmack entspricht, so kann man diesen als Lesezeichen speichern. Hierzu genügt ein Rechtsklick auf den entsprechenden Eintrag. Im erscheinenden Kontextmenü wählt man ''"Lesezeichen hinzufügen"''. So kann man sich eine Liste seiner Lieblingssender zusammenstellen. == Probleme und Lösungen == === SHOUTcast-Kategorien werden nicht gefunden === In der Vergangenheit gab es immer wieder Probleme beim Zugriff auf SHOUTcast. Eine Zeitlang konnten noch diverse Tipps das Problem beheben. Inzwischen ist klar, dass sich daran aufgrund der Lizenzpolitik von SHOUTcast (siehe [http://www.videolan.org/press/2010-1.html Press Release about SHOUTcast Removal in VLC] {en}) nichts mehr ändern wird – sprich: '''SHOUTcast kann mit Streamtuner nicht mehr genutzt werden'''. Ab Dezember 2010 hat SHOUTcast eine neue API (Version 2.0) eingeführt. Dadurch kommt es auch zu Problemen bei Alternativen wie TunaPie, die bisher noch funktionierten. === Live365 === Ein ähnliches Problem wie mit SHOUTcast gibt es beim Anbieter [http://www.live365.com/ Live365] {en}. Eine Lösung ist nicht bekannt. = Alternativen = Eine alphabetische Liste. == KStreamRipper == Mit dem Programm [http://kde-apps.org/content/show.php/KStreamRipper?content=78068 KStreamRipper] {en} 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: {{{#!vorlage Paketinstallation kstreamripper, universe bis [:maverick:Kubuntu 10.10] }}} == MPlayer == Auch der [:MPlayer:] eignet sich zum [:Streams speichern: Mitschnitt von Streams]. Für Streams, deren URL nur als asx-Playlist bekannt ist, gibt es [:Streams_speichern#Streaming-Videos-von-der-ZDF-Mediathek-laden: hier] eine Lösung in der [:MPlayer#Konsole: Konsole]. == Rhythmbox-Radio-Browser == Für Rhythmbox existiert ein [:Rhythmbox#Rhythmbox-Radio-Browser: Radio-Browser-Plugin], welches die Wiedergabe und Aufzeichnung von Internetradio problemlos ermöglicht. Es basiert ebenfalls auf Streamripper. Durch das Plugin werden die Internetradio-Verzeichnisse von [http://dir.xiph.org/ Icecast] {en} und [http://www.shoutcast.com/ SHOUTcast] {en} 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 [user: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 seine "Lieblingssender" schnell wiederzufinden. Mit [:Rhythmbox#rhythmbox-shoutcast:rhythmbox-shoutcast] gibt es ein weiteres Plugin speziell für SHOUTcast. == StreamRipStar == [:StreamRipStar:] (ehemals Stripper) bietet eine grafische Oberfläche für die meisten Optionen von Streamripper an. Als Stream-Verzeichnis dient SHOUTcast, aber auch eigene Stationen können angelegt werden. Durch die Verwendung von [:Java:] plattformübergreifend. == Streamtuner2 == [:Streamtuner2:] ist eine in Python programmierte Neuentwicklung und ab [:Oneiric: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 [http://dir.xiph.org/ Icecast] {en} 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--.''' im Homeverzeichnis auf. = 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 * [http://www.linux-beginnerforum.de/smf/index.php?topic=3963.0 Onlinestreams für Radiosender] {de} - linux-beginnerforum.de * [http://mylinux.suzansworld.com/?p=38 Ganz legal MP3s aufnehmen mit Streamtuner und Streamripper] {de} * [http://www.linux-user.de/ausgabe/2005/06/043-streams/ Audiostreams aus dem Netz aufzeichnen] {de} - LinuxUser 06/2005 * [http://www.programmierecke.net/programmed/rhythmbox-radio-browser.html Rhythmbox-Radio-Browser] {en} # tag: Multimedia, Internet, Internetradio