家里有个JBL Pebbles音箱,原本是给家里的台式机用的,不过随着台式机的使用频率越来越低,音箱也处于常年闲置的状态。
这几天重新折腾树莓派,想着将音箱用到树莓派中,打造一个支持airplay的无线音箱。
确保音箱正常工作
- 将USB音箱插入树莓派
- 查看音箱是否被识别
1 | cat /proc/asound/cards |
- 切换声卡
修改/etc/modprobe.d/alsa-base.conf
文件
将options snd-usb-audio index=-2
注释
- 重启树莓派
- 查看声卡是否切换成功
1 | cat /proc/asound/cards |
可以看到声卡切换成功
安装airplay支持软件Shairport
在安装Shairport之前,修改/usr/share/alsa/alsa.conf
文件
将
1 | pcm.front cards.pcm.front |
修改为
1 | pcm.front cards.pcm.default |
Shairplay是一个可以把树莓派变成Airplay接收器的软件。它会模拟一个Airplay终端,这样你就可以选择它作为iTune、iPad或iPhone的音频输出。
依赖模块
首先安装一系列依赖模块:
1 | sudo apt-get install libao-dev libssl-dev git avahi-utils libwww-perl |
编译shairport
从github中获取最新的shairplay版本并编译安装
1 | git clone https://github.com/abrasive/shairport.git |
测试airplay功能是否生效
输入./shairport -a RaspberryPi
。
这时打开iPhone,从底部向上滑动,点击音乐,除了iPhone就可以看到一个raspberrypi的设备,点击就可以播放手机上的音乐。
安装shairport
输入sudo make install
安装shairport
执行
1 | sudo cp ./scripts/debian/init.d/shairport /etc/init.d/shairport |
安装shairport启动脚本