树莓派搭建AirPlay服务实现WiFi无线音响外放


升级系统:

sudo apt-get update
sudo apt-get upgrade

通常情况下树莓派的音频输出使用的是HDMI接口,我们需要下面的命令将其变更为普通音频输出口

sudo amixer cset numid=3 1

安装系统所必需的软件包:

sudo apt-get install git libao-dev libssl-dev
sudo apt-get install libcrypt-openssl-rsa-perl libio-socket-inet6-perl
sudo apt-get install libwww-perl avahi-utils libmodule-build-perl

安装Perl Net-SDP协议软件:

cd ~
git clone https://github.com/njh/perl-net-sdp.git --depth=1 perl-net-sdp
cd perl-net-sdp
perl Build.PL
sudo ./Build
sudo ./Build test
sudo ./Build install

使用Shairport将树莓派设置为AirPlay接收器:

cd ~
git clone https://github.com/hendrikw82/shairport.git --depth=1
cd shairport
make

启动Shairport以支持AirPlay

./shairport.pl -a raspberrypi

这里我们指定了一个名字叫做raspberrypi,大家可以根据实际进行修改,自此,你可以使用苹果设备来访问AirPlay了,当然每次使用这个命令略显不便,下面介绍如何将其变成系统服务。 将Shairport设置为系统服务:

cd shairport
sudo make install
sudo cp shairport.init.sample /etc/init.d/shairport

cd /etc/init.d
sudo chmod a+x shairport
sudo update-rc.d shairport defaults

好了,上面的步骤将移植Shairport到系统路径下,同时创建名称为shairport的服务,你可以使用sudo service控制这个服务。 接下来编辑这个启动文件:

sudo vim /etc/init.d/shairport

找到DAEMON_ARGS="-w $PIDFILE"这行,并且修改成DAEMON_ARGS="-w $PIDFILE -a raspberrypi",同样的这里raspberrypi为你的AirPlay名字。 启动服务:

sudo systemctl daemon-reload
sudo service shairport start

接下来就可以用手机连接播放了,如下图: ariplay