使用 CLI 在 12.04 中通过蓝牙扬声器播放音频

使用 CLI 在 12.04 中通过蓝牙扬声器播放音频

我已经进行了一系列的尝试,设置通过蓝牙播放音频,但无法使其可靠地工作(即,让它工作了一次,但重启后就无法工作了)。

我可以看到蓝牙接口 (hciconfig),在 hcinconfig 扫描中可以看到扬声器 (D100 creative),但遇到了 bluez 问题。文档很糟糕,而且自那以后没有太大变化这家伙写了这篇文章。我真的不想再谈论或调试这个问题了。我在这个问题上已经筋疲力尽了。

但是,使用默认的 Ubuntu GUI 连接到 D100 似乎更成功。我可以通过蓝牙扬声器播放声音,单击“测试声音”按钮时可以听到声音。如何使用命令行执行相同的操作?在哪里可以找到后端蓝牙/声音应用程序使用什么来使其工作并播放 mp3/wav 文件?

答案1

我用它来连接(或断开)我的蓝牙收音机。

要找到蓝牙设备的 MAC 地址,您可以执行以下操作,它将显示与系统配对的设备的 MAC 地址和名称:

find /var/lib/bluetooth -name names | xargs cat

然后编辑mac=...此脚本中的那一行并尝试一下。

#!/bin/bash

mac="90:03:B7:17:00:08"  # replace with correct MAC address of your bluetooth speaker

if [ "$1" = "off" ]; then
    bt-audio -d "$mac"
    exit $?
fi

bt-audio -c "$mac"

sink=$(pactl list short sinks | grep bluez | awk '{print $2}')

if [ -n "$sink" ]; then
    pacmd set-default-sink "$sink" && echo OK
else
    echo could not find sink
fi

根据您的音乐播放器,您可能需要停止并重新启动播放以使其获取新的输出。

答案2

按如下方式配对您的蓝牙扬声器(替换XX:XX:XX:XX:XX:XX为您的扬声器的地址):

查找设备地址:

hcitool scan

加载蓝牙模块:

pactl load-module module-bluetooth-discover

连接到您的蓝牙扬声器:

pactl connect XX:XX:XX:XX:XX:XX

查找接收器名称:

pactl list short sinks

设置为默认接收器:

播放一些音频并验证它是通过蓝牙扬声器发出的。

相关内容