首先复制我编辑的文件

首先复制我编辑的文件

我有一个 FSL Zero 蓝牙耳机,在最近更新之前,它一直与 Ubuntu 配合良好。我使用的是 Ubuntu 15.04。耳机被识别为蓝牙设备并连接,但未出现在“声音设置”中。当我执行以下命令时,它会出现在“声音设置”中,但无法切换到 A2DP(即使显示了该选项),因此无法使用:

sudo -i pactl load-module module-bluetooth-discover

我已经用其他设备测试了耳机,以确保耳机没有故障。

我该如何让耳机出现自动地在声音设置中,就像在最近更新之前一样?如何让耳机与 A2DP 一起使用?

答案1

我遇到了同样的问题,几个月来我尝试了所有可能的解决方案但都无济于事,......直到今天!

我在以下帖子#17中找到了解决方案https://bbs.archlinux.org/viewtopic.php?pid=1526534#p1526534(感谢 SimFox3)

我做了什么:

首先复制我编辑的文件

sudo cp /etc/bluetooth/audio.conf /etc/bluetooth/audio.conf_tmp
sudo cp /etc/pulse/default.pa /etc/pulse/default.pa_tmp
sudo cp /usr/bin/start-pulseaudio-x11 /usr/bin/start-pulseaudio-x11_tmp

编辑 /etc/bluetooth/audio.conf

sudo nano /etc/bluetooth/audio.conf

这是我的 audio.conf 中的内容

# Configuration file for the audio service
# This section contains options which are not specific to any
# particular interface
[General]
Enable=Gateway,Source

# Switch to master role for incoming connections (defaults to true)
Master=true

# If we want to disable support for specific services
# Defaults to supporting all implemented services
#Disable=Gateway,Source,Socket
Disable=Socket

# SCO routing. Either PCM or HCI (in which case audio is routed to/from ALSA)
# Defaults to HCI
#SCORouting=HCI

# Automatically connect both A2DP and HFP/HSP profiles for incoming
# connections. Some headsets that support both profiles will only connect the
# other one automatically so the default setting of true is usually a good
# idea.
AutoConnect=true

# Headset interface specific options (i.e. options which affect how the audio
# service interacts with remote headset devices)
[Headset]

# Set to true to support HFP, false means only HSP is supported
# Defaults to true
HFP=true

# Maximum number of connected HSP/HFP devices per adapter. Defaults to 1
MaxConnected=2

# Set to true to enable use of fast connectable mode (faster page scanning)
# for HFP when incoming call starts. Default settings are restored after
# call is answered or rejected. Page scan interval is much shorter and page
# scan type changed to interlaced. Such allows faster connection initiated
# by a headset.
FastConnectable=true

# Just an example of potential config options for the other interfaces
#[A2DP]
#SBCSources=1
#MPEG12Sources=0

编辑 /etc/pulse/default.pa

sudo nano /etc/pulse/default.pa

注释掉(在行首使用 # 号)以下行 #load-module module-bluetooth-discover

现在编辑 /usr/bin/start-pulseaudio-x11

sudo nano /usr/bin/start-pulseaudio-x11

在以下行之后

if [ x”$SESSION_MANAGER” != x ] ; then
        /usr/bin/pactl load-module module-x11-xsmp “display=$DISPLAY session_manager=$SESSION_MANAGER” > /dev/null
fi

添加以下内容

/usr/bin/pactl load-module module-bluetooth-discover

重新启动后我终于可以切换到 A2DP

希望它也适合你。

答案2

我的蓝牙耳机也遇到过类似的问题,之前 LDAC 一直在工作,但突然就卡在免提模式了,其他所有协议都被 pavucontrol 标记为“不可用”。

删除/var/lib/bluetooth文件夹并重新启动蓝牙 systemd 服务对我来说很有效。请记住,这样做还会删除您可能设置的所有其他蓝牙连接和设置。

答案3

在较新版本的 Ubuntu 上,大多数蓝牙音频设备无法自动连接的问题都是由于 bluetoothd 作为 systemd 服务启动,而 pulseaudio 由桌面管理器(通常是 gdm)作为 XDG AutoStart 服务启动所致。这意味着 bluetoothd 在 pulseaudio 运行之前尝试连接到音频设备。这总是会失败。

解决此问题的快速方法如下。

  1. 编写一行 shell 脚本来重新启动 bluetoothd。我通常将其称为 kick-bluetooth。
#!/usr/bin/env bash
sudo systemctl restart bluetooth
  1. 将其粘贴到您的 $PATH 的某个位置。例如,在您的个人 ~/bin 目录中。

  2. 在 ~/.local/autostart 中创建一个 kick-bluetooth.desktop 文件

[Desktop Entry]
Version=1.0
Name=Kick bluetooth
Exec=kick-bluetooth
Terminal=false
Type=Application

这将在您登录时重新启动蓝牙守护进程。根据我的经验,只要您已完成通常提到的配置 pulseaudio 以连接到蓝牙设备的操作,这将确保您的耳机/扬声器已连接。

在非 Gnome 桌面上,如果不进行修改,此方法可能无法始终有效。有关此方法的详细信息,请参见此处 [https://www.freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Startup/]。解决此问题的方法可能是将一个与 pulseaudio 桌面文件同名的文件放在 .local/autostart 目录中的 /etc/xdg/autostart 中,此桌面文件的 Hidden= 属性必须设置为 true。然后应将原始文件中 Exec= 属性的内容转换为添加到 kick-bluetooth 脚本前面的 shell 命令。我还没有尝试过!

答案4

抱歉回复晚了,但我希望我的帖子能够对某些人有所帮助。

显然,就我而言,在 ubuntu-mate 14.04 上,问题出在 blueman 的旧版本(GUI 蓝牙管理器)上

我刚刚安装了 blueman 的 ppa,并为我的 ubuntu 版本安装了最新版本。

瞧!

相关内容