Wie Du Deine eigene Webradio Station mit Icecast2 und Ices2 betreibst

Version 1.0
Author: Falko Timme <ft [at] falkotimme [dot] com>

Diese Anleitung veranschaulicht, wie man einen Audio Streaming Server mit Icecast2 einrichtet. Damit Icecast2 Hörfunk senden kann, installieren wir Ices2. Ices2 ist ein Programm, das Audio-Daten an einen Icecast2 Server sendet, um sie an Clients zu übertragen. Ices2 kann entweder Audio-Daten von der Festplatte lesen (Ogg Vorbis Dateien) oder Live Audio von der Soundkarte encoden und live wiedergeben. In dieser Anleitung werden wir Ices2 .ogg Dateien von der lokalen Festplatte lesen lassen.

Ich übernehme keine Garantie, dass dies auch bei Dir funktionieren wird!

1 Vorbemerkung

Wie in der Einleitung bereits erwähnt, kann Ices2 von mehreren Quellen lesen und Audio-Daten an den Icecast2 Server senden. In dieser Anleitung werden wir Ices2 .ogg Dateien von der lokalen Festplatte (Playlist Modus) lesen lassen und werden Icecast2 sowie Ices2 auf dem gleichen System installieren.

Ices2 unterstützt nur Ogg Vorbis Dateien. Wenn Du also .mp3 Dateien hast, die Du senden möchtest, solltest Du sie in .ogg konvertieren. (In füheren Versionen hat Ices auch MP3 Dateien unterstützt, aber diese Unterstützung wurde aufgegeben, da MP3 eine patentierte und proprietäre Kodierungstechnologie ist. Ogg Vorbis dagegen ist eine patentfreie Audio-Kodierungstechnologie.)

In diesem Beispiel verwendet mein System Debian Etch. Auf Ubuntu Systemen sollte diese Pozedur identisch sein. Mein System hat die IP Adresse 192.168.0.100.

2 Installation und Konfiguration von Icecast2

Um Icecast2 zu installieren führen wir einfach Folgendes aus

apt-get install icecast2

Danach müssen wir /etc/icecast2/icecast.xml bearbeiten. Die meisten Standardwerte sollten fürs Erste gut sein, Du solltest allerdings die Passwörter im  <authentication>…</authentication> Bereich ändern. Das Source-Passwort ist  das Passwort, das Ices2 später verwenden wird, um sich mit Icecast2 zu verbinden; das Admin-Passwort ist das Passwort, welches der Administrator in Icecast2s Web Interface verwenden wird; wir werden das Relay-Passwort nicht verwenden, Du solltest es jedoch trotzdem ändern.

vi /etc/icecast2/icecast.xml

[...]
    <authentication>
        <!-- Sources log in with username 'source' -->
        <source-password>password1</source-password>
        <!-- Relays log in username 'relay' -->
        <relay-password>password2</relay-password>

        <!-- Admin logs in with the username given below -->
        <admin-user>admin</admin-user>
        <admin-password>password3</admin-password>
    </authentication>
[...]

Bearbeite danach /etc/default/icecast2 und setze ENABLE zu true:

vi /etc/default/icecast2

# Defaults for icecast2 initscript
# sourced by /etc/init.d/icecast2
# installed at /etc/default/icecast2 by the maintainer scripts

#
# This is a POSIX shell fragment
#

# Full path to the server configuration file
CONFIGFILE="/etc/icecast2/icecast.xml"

# Name or ID of the user and group the daemon should run under
USERID=icecast2
GROUPID=icecast

# Edit /etc/icecast2/icecast.xml and change at least the passwords.
# Change this to true when done to enable the init.d script
ENABLE=true

Das war’s schon. Nun können wir den Icecast2 Server starten:

/etc/init.d/icecast2 start

Nun kannst Du Deinen Browser auf http://192.168.0.100:8000/ richten (ersetze 192.168.0.100 mit Deiner eigenen IP Adress oder FQDN) und durchblättere das Web Interface:

3 Installation und Konfiguration von Ices2

Um Ices2 zu installieren, führen wir dies aus

apt-get install ices2

Als Nächstes erstellen wir die Verzeichnisse /var/log/ices (für die Ices2 Log-Dateien), /etc/ices2 (in dem wir unsere Ices2 Konfigurationsdatei ablegen) und /etc/ices2/music (wo wir unsere .ogg Dateien ablegen):

mkdir /var/log/ices
mkdir /etc/ices2
mkdir /etc/ices2/music

Das Ices2 Paket hat drei Muster-Konfigurationsdateien, /usr/share/doc/ices2/examples/ices-alsa.xml, /usr/share/doc/ices2/examples/ices-oss.xml und /usr/share/doc/ices2/examples/ices-playlist.xml. Wir verwenden die letztere, da wir eine Playlist der lokalen .ogg Dateien erstellen werden, die wir Zuhörern übertragen möchten. Daher kopieren wir diese Datei nach /etc/ices2:

cp /usr/share/doc/ices2/examples/ices-playlist.xml /etc/ices2

Als Nächstes bearbeiten wir /etc/ices2/ices-playlist.xml. Die meisten Standardwerte sollten in Ordnung sein, jedoch ändern wir  <background>0</background> to <background>1</background> da wir wollen, dass Ices2 im Hintergrund ausgeführt wird (sonst würde es in der Kommandozeile warten bis Du es beendest). Wir ändern außerdem die Daten im <metadata>…</metadata> Bereich, wir richten den vollständigen Pfad zu unserer Playlist Datei im <input>…</input> Bereich und das korrekte Source-Passwort für unseren Icecast2 Server im <instance>…</instance>  Bereich ein (Du kannst außerdem die Bitrate Deines Audio Streams in diesem Bereich einstellen):

Das könnte dich auch interessieren …