项目二十三--Airplay网络音乐播放
AirPlay是苹果公司的在iOS4.2及OS X Mountain Lion中加入的一种播放技术,可以将iPhone、iPod touch、iPad及Mac(需要OS X Mountain Lion)上的视频镜像传送到支持Airplay的设备(如:音箱、Apple TV)中播放。使用Airplay需要iOS4.2版本的设备或Mac电脑上的iTunes10.1以上版本。视频镜像则需要iOS 5及OS X Mountain Lion。
材料准备
microWRT, USB声卡(需要支持openwrt),有源音箱或耳机
实现步骤
声卡支持
声卡支持是实现airplay的基础,需要安装两个软件包
kmod-usb-audio(需要编译的固件包含)
alsa-utils图形界面调节音量
root@OpenWrt:/#opkg install alsa-utils
音量设置
amixer set PCM 30%
其中30%为音量大小,可更改为其他数值 可开机自启动音量调节 在/etc/rc.local中添加amixer set PCM 30%
airplay实现
openwrt官方feed里包含shairport软件包,经测试有些不太好用,这里推荐下shairport-sync
shairport-sync的源码及说明
https://github.com/mikebrady/shairport-sync-for-openwrt
需要自己编译,这里提供编译好的固件包和软件包
文件:固件和软件
安装好之后,分别启动dbus,avahi-daemon,shairport-sync并设置开机自启动
root@microWrt:~# /etc/init.d/dbus start Unknown group "netdev" in message bus configuration file
root@microWrt:~# /etc/init.d/dbus enable root@microWrt:~# /etc/init.d/avahi-daemon enable root@microWrt:~# /etc/init.d/avahi-daemon start root@microWrt:~# /etc/init.d/shairport-sync enable root@microWrt:~# /etc/init.d/shairport-sync start
使用ps命令
ps
确保以下服务在运行
1478 root 1740 S /usr/sbin/dbus-daemon --system 1483 nobody 2144 S avahi-daemon: running [OpenWrt.local] 1526 root 6944 S shairport-sync -d
这时候使用iTunes或者iPhone、iPad、iPod等设备,便可以在airplay中选择Shairport Sync on XXX。
接下来播放音乐时,将会通过连接在microWRT上的USB声卡发声。