本文主要是介绍树莓派3B+ 云音乐(AirPlay),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
##树莓派3B+ 云音乐(AirPlay)
说到目前最流行的数码配件,无限音响绝对占有一席之地。至于无线标准,除了蓝牙,还有苹果设备专用的AirPlay标准。事实上,AirPlay是一种更加强大的无线音频流技术。
1.什么是AirPlay
AirPlay是由美国苹果公司推出的无线技术。2010年11月12日苹果公司发布的iTunes10.1软件全面支持AirPlay无线技术。
AirPlay无线技术允许用户在许可的扬声器底座、影音接收器和立体声系统等设备上使用整个iTunes资料库 无线同步播放音乐。
相比于蓝牙,AirPlay通过Wi-Fi不仅拥有更远的传输距离,还可以免除配对,随时将iPhone、iPad或是Mac上的音乐推迟到音响上进行播放。同时,音轨的数据文件包括艺术家、专辑、歌曲标題等内容也都能够通过AirPlay进行传输6这咋那足相比监 牙音响的优势。
不过,AirPlay无线音响的价格十分高昂,让许多人望而却步。今天, 我就来教大家借助树莓派将普通音响变身为“高大上”的AirPlay无线音响的方法。
2.前期准备
要想让 “普通音响” 变身为 “AirPlay无线音响” ,即实现“云音乐的功能,需要用到一款名叫 “shairport” 的 软件。在软件开始安装前,我们还需要做一些前期的准备。
首先进入树莓派命令行界面,输入命令。
// 安装shairport相应依赖
sudo apt-get install -y git libao-dev libssl-dev libcrypt-openssl-rsa-perl libio-socket-inet6-perl libwww-perl avahi-utils libmodule-build-perl
3.开始安装
脚本如下:
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
# 获取perl源码(如果未安装git,请先安装:sudo apt-get install git -y)
git clone https://github.com/njh/perl-net-sdp.git perl-net-sdp
# 进入目录
cd perl-net-sdp
# 执行版本探测
perl Build.PL
# 构建、编译、安装
./Build
./Build test
sudo ./Build install
# 返回上层目录
cd ..
# 下载shairprot源码
git clone https://github.com/hendrikw82/shairport.git
# 进入目录
cd shairport
# 构建、编译、安装
makecd ..
# 将3.5mm接口设置为音频输出
amixer cset numid=3 1
# 启动:
./shairport/shairport.pl -a AirPlayPi
执行显示如下为正常:
given is experimental at ./shairport/shairport.pl line 235.
when is experimental at ./shairport/shairport.pl line 236.
when is experimental at ./shairport/shairport.pl line 239.
Established under name 'FC46E6780625@AirPlayPi'
Mac右上角点击声音图标:
iPhone手机点击AirPlay显示:
4.设置开机自启
sudo vim /etc/rc.local
// 在 exit 0前添加如下:
# AirPlay开机自启脚本
#(如果是USB声卡输出,请删除‘sudo amixer cset numid=3 1’)
sudo amixer cset numid=3 1
nohup /home/pi/shairport/shairport.pl -a AirPlayPi >/dev/null 2>&1 &
5.扩展(USB声卡)
正如我们所听到的,树莓派自带的音频输出不理想,低噪太明显了,所以我们需要扩展一个外置声卡,这里我选择了一个免驱动的USB声卡。
// 由于新版的raspbian系统对声卡的图像设置有bug,所以这里要通过修改配置文件的形式,将USB声卡作为默认声卡。// 插上USB声卡后,查看USB声卡(如果不能识别,请检查供电是否足够)
cat /proc/asound/cards
#-----------查看结果---------------0 [ALSA ]: bcm2835 - bcm2835 ALSAbcm2835 ALSA1 [DAC ]: USB-Audio - USB AUDIO DACBurrBrown from Texas Instruments USB AUDIO DAC at usb-3f980000.usb-1.5, full// 看到 USB 声卡已经识别到了// 修改默认输出
sudo vim ~/.asoundrc
# -----内容如下------
Pcm.!default{type hwcard 1
}
Ctl.!default{type hwcard 1
}// 修改默认声卡
sudo vim /usr/share/alsa/alsa.conf#----修改如下(card0->card1)-------
Defaults.ctl.card 1Defaults.pcm.card 1
好了,现在声音默认从USB声卡输出了。
6.音乐播放软件推荐(moc)
在树莓派上一个方便播放各种格式的音乐播放器。不仅支持mp3格式,还支持flac、ape等无损格式,更支持直接的网络流媒体的播放。
// 安装
sudo apt-get install -y moc// 运行
mocp
一些其它操作快捷键
快捷键 | 作用 |
---|---|
q | 后台播放 |
Q | 退出播放 |
R | 单曲循环 |
S | 随机播放 |
n | 播放下一首 |
b | 播放上一首 |
SPACE[空格] | 暂停 |
C | 清空播放列表 |
这篇关于树莓派3B+ 云音乐(AirPlay)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!