Shairport AirТunes приемник


Скорошното разбиване на използваната криптография от AirTunes протокола вече позволява всяко устройство с Windows, Linux или Mac OS и звукова карта да бъде използвано като AirTunes приемник (какъвто е например AirPort Express).

Това означава, че вече може да излъчвате и слушате безжично музика от вашия iPhone, iPod Touch, компютър с iTunes или друг сходен софтуер, без да имате AirPort Express. Достатъчно е да имате компютър с включено в него озвучаване и да инсталирате версия на описания по-долу софтуер.

1. Инсталация на Windows

Инсталацията на Windows е много лесна. Нужни са ви само два компонента:

  1. Bonjour-услугата за Windows. Ако имате вече инсталиран iTunes, вероятно имате и Bonjour. В противен случай, свалете и инсталирайте пакета “Bonjour Print Services for Windows” от тук: http://support.apple.com/en_US/downloads/#bonjour for windows.
  2. Свалете Shairport4w от тук: http://sf.net/projects/shairport4w и стартирайте сваления .exe файл. Готово! Компютърът ви ще се появи като редовен AirPort Express приемник във вашата локална мрежа.

2. Инсталация на Mac OS X

Тук нещата са малко по-трудни. Ако имате package manager от типа на Fink, MacPorts или нещо сходно, ще ви е по-лесно. Преди да се захванете със стъпките по-долу, вижте края на точка две, където предлагам алтернативно решение, което може да се окаже и по-лесно. Аз лично, воден от напътствията за Mac OS тук минах по този път:

  1. Сложих си Fink, следвайки инструкциите тук: http://www.finkproject.org/download/srcdist.php. Инсталацията мина без проблеми. Инсталирах 32-битовата версия.
  2. След това fink install libao4 инсталира необходимата Audio Output библиотека.
  3. Свалих си кода на ShairTunes: git clone git://github.com/albertz/shairport.git && cd shairport
  4. Редактирах Makefile на вече сваления код и смених реда с LDFLAGS на: LDFLAGS:=-lm -lpthread -arch i386. След това изпълних make, за да го компилирам.
  5. Инсталирах следните два Perl модула: sudo perl -MCPAN -e 'install Crypt::OpenSSL::RSA' и sudo perl -MCPAN -e 'install IO::Socket::INET6'. При мен тази стъпка имаше проблем и затова се наложи преди това да изпълня следващата стъпка.
  6. Пропуснете това, ако Perl-модулите от предната стъпка са се инсталирали успешно при вас. Във файла /System/Library/Perl/5.10.0/darwin-thread-multi-2level/Config_heavy.pl премахнах всички срещания на --arch ppc. При мен имаше само едно. Това се наложи, понеже Perl CPAN не искаше да инсталира Crypt::OpenSSL::RSA. Правете тази стъпка на собствен риск и само ако Perl ви дава следната грешка при инсталация на този модул:
    lipo: can't open input file: /var/tmp//ccOyL15d.out (No such file or directory)
    make: *** [Random.o] Error 2
      IROBERTS/Crypt-OpenSSL-Random-0.04.tar.gz
      /usr/bin/make -- NOT OK
    Running make test
      Can't test without successful make
    Running make install
      Make had returned bad status, install seems impossible
    
  7. perl shairport.pl --apname=MyCoolNameHere и сте в играта.

Известно ми е за съществуването на два допълнителни проекта за Mac OS и ShairTunes:

  • https://github.com/rcarlsen/MacShairport, чиято цел е да спести голяма част от мъките, които съм описал по-горе. Аз лично не успях да го компилирам, но не съм се мъчил много :)
  • https://github.com/rcarlsen/ShairPortMenu е проект, който има за цел да ви създаде удобен меню-елемент, с който да спирате/пускате сървъра. Не успях да го подкарам.

3. Инсталация на Linux

Под Linux трудността на задачата зависи от дистрибуцията ви, но като цяло, нещата би трябвало да са праволинейни. Следвайте инструкциите, дадени в INSTALL-файла тук. Аз лично направих бърз тест на Debian дистрибуция и понеже Perl там беше версия 5.8.8, а Shairport изисква 5.10+, минах по следния път:

wget 'http://downloads.activestate.com/ActivePerl/releases/5.10.1.1008/ActivePerl-5.10.1.1008-x86_64-linux-glibc-2.3.5-294165.tar.gz'
tar xzvf ActivePerl-5.10.1.1008-x86_64-linux-glibc-2.3.5-294165.tar.gz
rm -f ActivePerl-5.10.1.1008-x86_64-linux-glibc-2.3.5-294165.tar.gz
cd ./ActivePerl-5.10.1.1008-x86_64-linux-glibc-2.3.5-294165/
./install.sh # слагайки новата версия на Perl в /opt/ActivePerl-5.10
apt-get install libssl-dev libao2 libao-dev avahi-utils git-core pkg-config
git clone git://github.com/albertz/shairport.git
cd shairport && make
/opt/ActivePerl-5.10/bin/perl -MCPAN -e 'install Crypt::OpenSSL::RSA'
/opt/ActivePerl-5.10/bin/perl -MCPAN -e 'install IO::Socket::INET6'
/opt/ActivePerl-5.10/bin/perl ./shairport.pl --apname="ShairPort Rocks"

Успех и приятно слушане! :)

Източници:

Comments are closed.