8.9.2014
Ich hab mir schon öfters gewünscht, die Audio-Ausgabe der Soundkarte über WLAN auf ein Smartphone zu übertragen, und somit mit vorhandenen Mitteln Funkkopfhörer zu emulieren.
Ob es alltagstauglich ist, wird sich herausstellen.
Ich hab schon mal nach einem kleinen Tool gesucht, das das einfach so macht. Leider bin ich nicht fündig geworden.
Das ganze scheint etwas komplizierter zu sein:
Heute bin ich auf Icecast gestoßen. Das ist die eigentliche Server-Software. Aber die tut so noch nichts. Diese muss noch von so genannten „Source Clients“ mit Audio-Daten versorgt werden.
Für meinen Zweck läuft dann auf meinem Notebook einerseits der Icecast2-Server, und weiters noch der Source-Client Namens IceS. Der Sourc-Client hat als Audioquelle die Soundkarte. Auf dem Android-Telefon verbindet sich der VLC-Mediaplayer dann zum Notebook, und spielt dann den Audio-Stream.
sudo apt-get install icecast2
Das config-file liegt dann im Verzeichnis /etc/icecast2
Fürs erste braucht man nur die 3 Passwörter verändern.
Dann schreibt man das ENABLE-flag in
sudo kate /etc/default/icecast2
auf
ENABLE = true
um.
Mit
sudo /etc/init.d/icecast2 start
wird der Server gestartet und im Browser kann man das Webinterface unter
http://localhost:8000
aufrufen.
Unter
/etc/icecast2/
gibt es eine Datei namens icecast.xml
Diese kann man auf seine eigenen Bedürfnise anpassen.
Siehe http://icecast.org/docs/icecast-2.3.3/basic-setup.html
Edit-2014-11-11: Klickt man auf 'Admin Home', kommt ein Login-Fenster, bei dem man sich mit 'admin' und 'test123' anmelden kann. Soweit so gut.
sudo apt-get install ices2
Wir brauchen dann noch ein paar neue Verzeichnisse:
sudo mkdir /var/log/ices sudo mkdir /etc/ices2
Kubuntu verwendet standardmäßig das ALSA Audio System. Daher kopieren wir die entsprechende Vorlage:
sudo cp /usr/share/doc/ices2/examples/ices-alsa.xml /etc/ices2
Diese Config-Datei bearbeiten wir nun mit dem bevorzugten Editor:
sudo kate ices-alsa.xml
Dabei verändern wir folgendes:
<background>1<background> <param name="metadata">0</param>
In <instance>:
<password>*******</password> <mount>/lenovo-audio.ogg</mount> <yp>0</yp> <downmix>0</downmix>
Dann starten wir Ices
sudo ices2 /etc/ices2/ices-alsa.xml
Derzeit funktioniert das ganze noch nicht.
In der Log-Datei von IceS findet man folgenden Fehler:
EROR stream/ices_instance_stream Failed initial connect to localhost:8000 (Login failed: Success)
Vielleicht hat das etwas damit zu tun, dass auch der Admin-Login im Webinterface nicht funktioniert… Heute ist's schon spät…
11.11.2014
Nun läuft die Sache bereits. Ich glaub, dass ein neustart notwendig war. Denn ansonsten hab ich nichts geändert - soweit ich weiß.
Ich konnte mich mit meinem Android Telefon auf den Server im WLAN verbinden.
Die Audioübertragung hat eine sehr große Verzögerung von 7 Sekunden und mehr! Das sollte man angeblich im icecast.xml beheben können:
<burst-on-connect>0</burst-on-connect>
Diese Einstellung war zuvor auf 1. Aber das umstellen auf 0 hat auch nichts geholfen.
Um die Latenz zu verkürzen, ist sighttpd evt eine Lösung. (http://www.kfish.org/software/sighttpd/)
Darkice würde sich als stream-source anbieten. (siehe http://askubuntu.com/questions/28496/how-do-i-setup-an-icecast-server-for-broadcasting-audio-in-my-network)