Der DockStar läuft mittlerweile sehr gut mit Debian Squeeze. Ein 3-€-USB-Sounddevice hängt auch dran, sodass ich mittlerweile schon ein bisschen mit Musikstreaming auf meine Heimkinoanlage im Wohnzimmer experimentiert habe. Der Artikel zu squeezeboxserver und squeezeslave folgt…
Nun gibt es aber ein weiteres cooles Stückchen Software für mich als Apple-User: shairport. Ein findiger US-Bastler hat seine alte AirportExpress-Basisstation auseinandergenommen und kurzerhand Apples privaten Schlüssel reverse-engineered. Damit hat er dann ein Perl-Skript geschrieben, dass das AirportExpress-Streaming in Software nachbildet.
Zur Installation auf dem DockStar mit Squeeze sind folgende Pakete notwendig:
openssl libao-common libao-dev libao4 libssl-dev libcrypt-openssl-rsa-perl pkg-config avahi-daemon avahi-utils libwww-perl libio-socket-inet6-perl
Dann das shairport-Paket runterladen, entpacken und erstmal das Makefile anpassen. Die Definition -D__i386 für den gcc gehört rausgeschmissen (wir sind ja auf armv5tel) und dann wird mit
make
auf durchkompiliert.
Nun kann man noch am Beginn der shairport.pl den Phantasie-Accesspointnamen umändern (Anzeigename im iTunes/iPhone) und dann das Ding starten.
./shairport.pl
Ich habe nun also shairport-0.03 installiert. Laufen tut es so aber leider noch nicht. Es taucht zwar im iTunes und am iPhone auf und lässt sich auch auswählen, beendet sich aber immer mit
new connection from fe80::210:xxxx:xxxx:xxxx REQ: ANNOUNCE REQ: SETUP launched decoder: 25043 on port: 6000 REQ: RECORD REQ: SET_PARAMETER missing frame. closed: IO::Socket::INET6=GLOB(0x178f640) Segmentation fault ***CHILD EXITED***
Mal schaun woran das liegen könnte. Eventuell fehlerhafter RTP-Stream mit iTunes 10.2.1? An IPv6 unter MacOS liegt’s auf jeden Fall nicht, denn unter Windows und vom iPhone habe ich das selbe Fehlerbild.
Eventuell ist die ARM-Architektur schuld, denn da gibt’s in alac.c nur eine generische Funktion count_leading_zeros.
Oder libao4 unter Squeeze anstelle der empfohlenen libao2 (nur unter Lenny).
Trotz Startschwierigkeiten schon Mal gebührenden Dank an James Laird!



