[树莓派]手把手教你连接蓝牙耳机

2,793 阅读2分钟

前言

上一节我们说到了如何连接摄像头,这次我们来学一下树莓派如何连接蓝牙设备。

准备

  1. 树莓派 zero wh 一个
  2. 蓝牙耳机一个

蓝牙连接

0. 升级安装程序

sudo apt update
sudo apt upgrade

1. 安装软件

sudo apt-get install pulseaudio pulseaudio-module-bluetooth bluez  bluez-firmware

PulseAudio是一个声音服务器,一个后台进程从一个或多个音源(进程或输入设备)接受声音输入 然后重定向声音到一个或多个槽(声卡,远程网络PulseAudio服务,或其他进程)。

sudo apt-get install mplayer

MPlayer是一款轻便的播放器,软件小、启动快,消耗内存和CPU非常少。

2. 添加认证用户

sudo adduser root pulse-access    
sudo adduser pi pulse-access

image.png

3. 修改配置文件

a. /etc/dbus-1/system.d/bluetooth.conf

sudo vim /etc/dbus-1/system.d/bluetooth.conf

在之前添加如下内容

<policy user="pulse">
	<allow send_destination="org.bluez"/>
</policy>

b. /etc/pulse/system.pa

sudo vim /etc/pulse/system.pa

在文件的最后添加如下内容

### Bluetooth Support
.ifexists module-bluetooth-discover.so
load-module module-bluetooth-discover
load-module module-bluetooth-policy
.endif

c. /etc/pulse/default.pa

sudo vim /etc/pulse/default.pa 

在原文load-module module-native-protocol-tcp后面添加 auth-anonymous=1

load-module module-native-protocol-tcp auth-anonymous=1

d. 新增 pulseaudio.service 文件

sudo vim /etc/systemd/system/pulseaudio.service

写入如下内容:

[Unit]
Description=Pulse Audio
[Service]
Type=simple
ExecStart=/usr/bin/pulseaudio --system --disallow-exit --disable-shm --exit-idle-time=-1
[Install]
WantedBy=multi-user.target

4. 开启服务

a. 重启加载服务

sudo systemctl daemon-reload

b. 重启 bluetooth 服务

sudo systemctl restart bluetooth.service

c. 启动 pulseaudio 服务

sudo systemctl start pulseaudio.service 

d. pulseaudio 服务开机自启动

sudo systemctl enable pulseaudio.service
# 关闭开启自启 systemctl disable pulseaudio.service

e. 查看 bluetooth 进程状态

sudo systemctl status bluetooth.service

5. 连接蓝牙耳机

进入蓝牙控制台

sudo bluetoothctl
[bluetooth]$ power on # 开启
[bluetooth]$ agent on # 代理
[bluetooth]$ default-agent # 默认代理
[bluetooth]$ scan on # 扫描附近蓝牙设备
[NEW] Device 70:1C:E7:69:C0:DE huawei
[bluetooth]$ pair 70:1C:E7:69:C0:DE # 配对(后面是蓝牙地址)
[bluetooth]$ trust 70:1C:E7:69:C0:DE # 信任蓝牙设备
[bluetooth]$ connect 70:1C:E7:69:C0:DE # 连接蓝牙设备
[bluetooth]$ scan off # 关闭扫描
[bluetooth]$ exit # 退出
[bluetooth]$ power off # 断开连接

6. mplayer 播放音乐

播放音乐

sudo mplayer 奔跑.mp3

控制声音大小

sudo mplayer -af volume=-10 *.mp3
# volume 的范围可以是-200到+60,-200是静音,而+60是噪音

sudo mplayer -softvol -softvol-max 10 *.mp3
# 先用-softvol 启用软声卡,然后用 -softvol-max 限制软声卡的最大音量。这里我们把最大音量调为默认音量的 10%, 会变得很小声的。

sudo mplayer -af volume=-10 -softvol -softvol-max 200 *.mp3
# 我们把前两种方法综合起来.我们就可以让默认音量对应的值不是 100%,而且一启动就生效。

树莓派系统控制声音大小

alsamixer

参考

树莓派raspberrypi3安装蓝牙音箱及Mopidy

Mplayer 音量控制详解