admin 管理员组

文章数量: 1184232

在 Armbian 命令行下(无图形界面)可以使用蓝牙连接音箱并播放音乐,但需要手动配置几个组件,包括蓝牙连接、音频传输(A2DP),和音频输出。

板上无蓝牙模块,可以插入USB 蓝牙模块。

下面是完整的方案 ✅:


🎯 目标:在纯命令行中连接蓝牙音箱并播放音频


✅ 所需组件安装

请先安装必要的软件:

sudo apt update
sudo apt install pulseaudio pulseaudio-module-bluetooth bluez-tools bluetooth mpg123

pulseaudio:音频服务
pulseaudio-module-bluetooth:让 pulseaudio 支持蓝牙音箱(A2DP)
mpg123:用于播放 .mp3 文件的命令行播放器


✅ 启动 PulseAudio(用户级别)

运行以下命令以手动启动 PulseAudio:

pulseaudio --start

若你收到 “Daemon already running”,说明已经启动成功。


✅ 使用 bluetoothctl 配对音箱

bluetoothctl

在交互命令中输入:

power on
agent on
scan on

等待看到你的蓝牙音箱:

[NEW] Device 00:1D:43:6D:03:26 MySpeaker

然后输入:

pair 00:1D:43:6D:03:26
trust 00:1D:43:6D:03:26
connect 00:1D:43:6D:03:26

(注意:设备地址替换成你自己的)

如果成功连接,你会看到类似:

Connection successful

✅ 确保蓝牙设备作为音频输出(A2DP)

连接成功后,PulseAudio 应该会自动切换音频输出到蓝牙音箱。

你可以用如下命令确认是否加载了 A2DP 模块:

pactl list cards

找到你的音箱卡,确认有 profile: a2dp-sink

如果不是,运行:

pactl set-card-profile bluez_card.XX_XX_XX_XX_XX_XX a2dp_sink

(替换成你音箱的蓝牙地址)


✅ 播放音频

使用命令行播放音乐:

mpg123 yourmusic.mp3

你也可以使用其他工具如 aplaymplayer 等播放 .wav 或其他格式。


🧠 可选:让蓝牙音箱在启动时自动连接

可以把以下命令写入脚本并加入到开机项(例如 ~/.bashrc 或 systemd 服务):

bluetoothctl <<EOF
power on
agent on
connect XX:XX:XX:XX:XX:XX
EOF

✅ 小结

操作工具
蓝牙管理bluetoothctl
音频服务pulseaudio, pulseaudio-module-bluetooth
音乐播放mpg123, aplay, mplayer

下面是一个一键自动连接并播放音乐的脚本:

  1. 自动开蓝牙
  2. 连接指定蓝牙音箱
  3. 切换到 A2DP 输出模式
  4. 播放指定音乐文件

1. 请先确认:

  • 你的蓝牙音箱 MAC 地址,比如 00:1D:43:6D:03:26(请替换为你的设备地址)
  • 你想播放的音乐文件路径,比如 /home/link/music/song.mp3

2. 脚本示例 bt_play.sh

#!/bin/bash

# 你的蓝牙音箱MAC地址,替换成实际地址
BT_ADDR="00:1D:43:6D:03:26"

# 音乐文件路径,替换成实际路径
MUSIC_FILE="/home/link/music/song.mp3"

# 启动pulseaudio(如果还没启动)
pulseaudio --start

# 使用bluetoothctl连接蓝牙音箱
bluetoothctl <<EOF
power on
agent on
default-agent
connect $BT_ADDR
EOF

# 等待2秒给蓝牙时间连接
sleep 2

# 切换到A2DP模式
CARD=$(pactl list cards short | grep bluez_card | awk '{print $1}')
if [ -n "$CARD" ]; then
    pactl set-card-profile "$CARD" a2dp_sink
fi

# 播放音乐
mpg123 "$MUSIC_FILE"

3. 使用步骤

chmod +x bt_play.sh
./bt_play.sh

4. 注意事项

  • 第一次配对时,可能需要手动用 bluetoothctl 先配对并信任设备
  • pulseaudio 要运行在用户会话下,脚本默认在当前用户执行即可
  • 播放过程中你可以用 Ctrl+C 停止播放

修改具体蓝牙地址和音乐文件路径,把脚本里对应内容写好即可。

本文标签: 蓝牙 命令行 音箱 图形界面 音乐