当前位置: 首页>>技术教程>>正文


PulseAudio无法自动检测到蓝牙耳机

, ,

问题描述

在我的Xubuntu 13.10上的Pavucontrol可以检测到我的蓝牙耳机,但是只有在键入以下命令之后:

pulseaudio -k
sudo alsa force-reload

几秒钟后,耳机将出现在“配置”选项卡中。

我也尝试插入线

load-module module-switch-on-connect

在/etc/pulse/default.pa中,但这无济于事。我尝试清除,自动删除并重新安装所有内容,从alsa到Pulseaudio和pulseaudio-module-bluetooth。什么都行不通。

有没有解决方法来在不使用命令force-reload的情况下加载耳机?要使pulseaudio守护程序自动识别设备?

我尝试添加:

    pcm.bluetooth {
    type bluetooth
    device "XX:XX:XX:XX:XX:XX"
    profile "auto"
   }

到我的主目录中的文件.asoundrc,但没有任何区别

杀死pulseaudio守护程序之后,我的偶数音量热键停止工作。我要分配

amixer set Master 4%- -q unmute
amixer set Master 4%+ -q unmute

到其他组合键来管理键盘上的音量。将命令分配给热键不起作用。卷键如何绑定到守护程序?还有其他将键绑定到新守护程序的方法(重新启动之后)吗?

更新

找到了问题。使用命令

pactl list | grep -i module-bluetooth-discover

我发现蓝牙发现模块未加载。

但是我的/etc /pulse中的default.pa文件包含以下行

.ifexists module-bluetooth-discover.so
load-module module-bluetooth-discover
.endif

那么,为什么在pulseaudio启动时不加载该模块?

发出命令后

sudo pactl load-module module-bluetooth-discover

蓝牙耳机正常工作并自动检测到,而不会杀死并重新启动alsa。

最佳回答

我在另一个答案上找到了针对此问题的解决方案,问题是在X11之前加载了pulseaudio蓝牙模块,更改了几个配置文件就可以了:PulseAudio can not load bluetooth module 15.10/16.04/16.10

vim /etc/pulse/default.pa

注释掉以下行(在行首带有#):

#load-module module-bluetooth-policy
#load-module module-bluetooth-discover

现在编辑文件/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

并将其更改为此:

   if [ x"$SESSION_MANAGER" != x ] ; then
    /usr/bin/pactl load-module module-x11-xsmp "display=$DISPLAY session_manager=$SESSION_MANAGER" > /dev/null
   #
   # Added per StackExchange http://askubuntu.com/questions/366032/pulseaudio-not-detecting-bluetooth-headset-automatically
   #
    /usr/bin/pactl load-module module-bluetooth-policy
    /usr/bin/pactl load-module module-bluetooth-discover
   fi

这样,Pulse音频的蓝牙模块将不会在启动时下载,而会在x11启动后下载。

此修复程序违反了当前建议:https://freedesktop.org/wiki/Software/PulseAudio/Documentation/User/Bluetooth/

次佳回答

这:

sudo apt-get install pulseaudio-module-bluetooth 
sudo pactl load-module module-bluetooth-discover

在Ubuntu 14.10(Lenovo x240)上为我工作,至少在pulseaudio中列出了我的蓝牙设备。

第三种回答

似乎Blueman中的某些(旧版?)代码存在问题,该代码有意在启动时卸载module-bluetooth-discover(即,从/etc/pulse/default.pa加载后。有关更多详细信息,请参见此处:https://github.com/blueman-project/blueman/issues/64)。

第四种回答

我知道这是一个旧帖子。但是,由于我最近遇到了同样的问题,因此遇到了一个相当简单的解决方案:只需安装pulseaudio-module-bluetooth

sudo apt-get install pulseaudio-module-bluetooth

http://ubuntuforums.org/showthread.php?t=1909957

祝你好运:)

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/11834.html,未经允许,请勿转载。