Icecast

Aus Freifunk Leipzig
Wechseln zu: Navigation, Suche

Inhaltsverzeichnis

Vorwort

Zum Streamen von Audio ins Freifunknetz benötigst du:

Oddsock.png
  • Encoder zum komprimieren des Audiosignals (oddcast, Winamp DSP-Plugin)
  • Server zum Verteilen der Audiodaten (Icecast-Server)

Als Encoder musst du nicht zwangsläufig Winamp samt Plugin verwenden, es gibt viele Alternativen.

Icecast-Serverinstallation auf Freifunk-Node

Hier die Anleitung, getestet mit der Freifunk-Version 1.4.5l. Bevor du mit der Installation beginnst, schau mit df -h ob noch mindestens 1,7 MB in /dev/mtdblock/4 frei sind. Zum Ändern der unten genannten Dateien kann der Vi-Editor oder der Dateimanager WinSCP verwendet werden. Die beschriebenen Änderungen beziehen sich jedoch auf den Vi-Editor. Achtung: Nach dem Starten von WinSCP befindet ihr euch im Verzeichnis tmp.

ipkg

edit /etc/ipkg.conf

Folgende zusätzliche Zeile am Ende der anderen Repositories, vor dest root / hinzufügen ("i" drücken):

src rc6 http://downloads.openwrt.org/backports/rc6

Mit "ESC", dann ":", "x" und "ENTER" speichern und Editor verlassen.

Paketelisten aktualisieren

ipkg update

Icecast-Pakete installieren

ipkg install icecast

Die Installation dauert eine ganze Weile, nicht gleich verzweifeln, wenn sich in der Konsole erst mal nix tun sollte.

zusätzlichen Nutzer hinzufügen

edit /etc/passwd

Dort 2x "y" und einmal "p" drücken, dann "i" und in der zweiten Zeile manuell ersetzen:

* "root" durch "ice" (2x)
* ":0:0:" durch ":10:10:"

Dann noch die Gruppen erweitern:

edit /etc/group

Dort 2x "y" und einmal "p" drücken, dann "i" und in der zweiten Zeile manuell ersetzen:

* "root" durch "ice" (1x)
* "0" durch "10" (auch 1x)

Icecast-Konfigurationsdatei ändern

edit /etc/icecast.xml

Am Ende der Datei muss die Security-Sektion folgendermassen bearbeitet werden:

   <security>
       <chroot>0</chroot>
       <changeowner>
           <user>ice</user>
           <group>ice</group>
       </changeowner>
   </security>


Für weitere Konfigurationen der icecast.xml empfiehlt sich die Icecast Dokumentation.

Server starten

Teststart

mkdir /var/log/icecast
touch /var/log/icecast/error.log
touch /var/log/icecast/access.log
chmod 666 /var/log/icecast/*
icecast -c /etc/icecast.xml

In der Konsole erscheint:

Changed groupid to 10.
Changed userid to 10.

Der Server läuft...

Icecast Startscript

Damit startet der Server nach dem Booten automatisch.

cd /etc/init.d
edit S92icecast

dort kommt rein:

#!/bin/sh

test -n "$FAILSAFE" && exit
mkdir /var/log/icecast
touch /var/log/icecast/error.log
touch /var/log/icecast/access.log
chmod 666 /var/log/icecast/*
icecast -b -c /etc/icecast.xml

und Datei ausführbar machen:

chmod 755 S92icecast

Relay von anderem Server beziehen

das hier kann man z. B. in der config platzieren:

    <relay>
        <server>streaming2.leipzig.freifunk.net</server>
        <port>8000</port>
        <mount>/freifunk23-kekssound.mp3</mount>
        <local-mount>/freifunk23-kekssound-relay.mp3</local-mount>
        <on-demand>1</on-demand>

        <relay-shoutcast-metadata>0</relay-shoutcast-metadata>
    </relay>



Winamp & Encoder

Herunterladen und Installieren

Beim Installieren von oddcast darauf achten, dass es im Winamp-Verzeichnis landet. Bei Bedarf noch den Lame- und AACplus-Encoder (ddls) herunterladen und ins Stammverzeichnis von Winamp kopieren.

Konfigurieren

Oddcast-config.jpg
  1. Winamp starten
  2. Winamp-Einstellungen (Strg+P) --> Allgemeine Einstellungen --> Hacken bei Mehrfaches Aufrufen von Winamp ermöglichen machen
  3. zweites Winamp starten (liegt über dem ersten)
  4. Gehe in die Winamp-Einstellungen (Strg+P) --> Plugins --> DSP/Effekte und wähle dort oddcast DSP v3 aus. Danach erscheint das Encoder-Fenster.
  5. auf Encoder unten in Liste doppelklicken
  6. Einstellungen bearbeiten (Servertyp: Icecast, Encoder-Type: OggVorbis, Server IP: die IP deines Routers, Port: 8000, Encoder Password: hackme Mountpoint: Endung entsprechend des Encoders)
  7. Connect

Stream anhören

Anmerkung

Shoutcast und Icecast vertragen sich nicht, daher nur oddcast in Kombination mit Icecast verwenden!

Links