有没有办法在 Ubuntu 中设置蓝牙以在它打开时自动连接到它配对的设备。此外,有没有办法在连接时自动将声音输出更改为蓝牙耳机?
作为笔记本电脑用户,我相信很多人,即使是使用上网本的人,都会遇到这个问题。尤其是在听播客时,并以它为例,声音可能有响亮的时刻和安静的时刻,在同一集中,一个人大声说话,另一个人说话非常安静。因此,我一直希望在系统范围内压缩声音,前几天我刚刚注意到,在 Windows 中,一些 Realtek 驱动程序已经提供了这个功能。
我们已经有一个用于系统范围均衡的pulseaudio插件,虽然它仍然存在一些问题,比如不允许我们改变它的值并实时聆听变化,或者在改变脉冲音量时破解声音,但我确实喜欢它并使用它。现在我只是缺少一些东西来将声音保持在 0db 左右(或接近您正在使用的音量级别)作为脉冲音频的调平器插件。
有什么建议吗?
我有一个很好的蓝牙音频接收器连接到我的 HiFi 立体声系统,我曾经能够在 14.04 中将它连接为质量很好的 A2DP 接收器。
升级到 16.04 后,该设备仅作为耳机连接,当尝试将其切换为 A2DP 模式时,我的系统日志中出现此错误:
May 21 11:35:50 RRyS pulseaudio[6159]: [pulseaudio] module-bluez5-device.c: Refused to switch profile to a2dp_sink: Not connected
Run Code Online (Sandbox Code Playgroud)
并且音频质量很差。我该如何解决?
我正在使用 Ubuntu 12.04 和 Skype。
我的麦克风不工作。我的系统上连接了 1 个麦克风,耳机中连接了另一个(Beats by Dr. Dre)。
我按照以下步骤操作:
关闭 PulseAudio 自动生成,通常: $ echo "autospawn = no" > ~/.pulse/client.conf
killall pulseaudio
Run Code Online (Sandbox Code Playgroud)
但这对我没有帮助,它在我的系统重新启动后禁用了我的声音。然后我尝试
echo "autospawn = yes" > ~/.pulse/client.conf
Run Code Online (Sandbox Code Playgroud)
然后
pulseaudio -D
Run Code Online (Sandbox Code Playgroud)
它修复了我的系统声音,但 Skype 麦克风仍然没有声音。
之后,我尝试了这个命令
echo "options snd-hda-intel model=acer" | sudo tee -a /etc/modprobe.d/alsa-base.conf > /dev/null
Run Code Online (Sandbox Code Playgroud)
我还通过运行以下命令升级了alsa声音驱动程序:
sudo add-apt-repository ppa:ubuntu-audio-dev/ppa
sudo apt-get update
sudo apt-get install linux-alsa-driver-modules-$(uname -r)
Run Code Online (Sandbox Code Playgroud)
但是在最后一个命令上:
sudo apt-get install linux-alsa-driver-modules-$(uname -r)
[sudo] password for gaurav:
Reading package lists... Done
Building dependency tree …Run Code Online (Sandbox Code Playgroud) 我正在尝试收听特定进程 (A) 和另一个进程 (B) 的音频输出,同时将 A 的音频输出重定向到 B 的音频输入。这相当于在 Skype 中播放音乐,同时聆听音乐和您的朋友,并且让您的朋友能够听到您的声音。
我已经尝试按照关于它的 openSUSE 教程(谷歌“寻找(也许)用于与脉冲音频一起使用的音频混合器”),甚至多次观看视频。我之前尝试过 JACK 却发现它无法识别我的耳机 Logitech G35。
我能够播放音乐,让我的朋友和我都听到它,但我不能同时发送我的声音。不是我的声音就是我朋友听到的音乐。我怎样才能发送我的声音?
我的设置的一些图片(使用一个空输出):
播放选项卡: 
录音选项卡: 
我刚刚升级到 18.04,我注意到我的耳机发出的声音,无论是插入前端口还是后端口,都非常噼啪声和缓慢/延迟。此问题在 17.04/10 上不存在。它也不会影响通过 Radeon 560 GPU 来自 HDMI 的音频,只会影响耳机/板载音频。相关设备是:
00:1f.3 Audio device: Intel Corporation Sunrise Point-H HD Audio (rev 31)
Run Code Online (Sandbox Code Playgroud)
我尝试了一系列针对我在谷歌上搜索的 pulseaudio 修复程序,包括这个和这个。两者都没有帮助。
我发现了一些至少使它可听的东西 - 在 /etc/pulse/daemon.conf 中将“default-fragment-size-msec”从 25 更改为 5。它使它好多了,但时不时还是有点噼啪作响。
我现在已经用谷歌搜索了 30 分钟或更长时间,但没有找到任何似乎是最近的和相关的东西,所以想知道我是否应该打开一个错误,或者我是否在这里忽略了一些东西。
我最近从 18.04 lts 升级到 Ubuntu 20.04 lts。重新启动后音频不起作用。我尝试重新安装pulseaudio,alsa但仍然无法正常工作。
sudo apt-get install --reinstall alsa-base pulseaudio
sudo alsa force-reload
还是行不通。
输出
??? inxi -SMA
System: Host: Wizard Kernel: 5.4.0-26-generic x86_64 bits: 64 Desktop: Gnome 3.36.1 Distro: Ubuntu 20.04 LTS (Focal Fossa)
Machine: Type: Portable System: Dell product: Vostro 2520 v: N/A serial: <superuser/root required>
Mobo: Dell model: 0V1NDP v: A11 serial: <superuser/root required> BIOS: Dell v: A11 date: 02/24/2014
Audio: Device-1: Intel 7 Series/C216 Family High Definition Audio driver: …Run Code Online (Sandbox Code Playgroud) 每次重新启动时,PulseAudio 都会将接收器(在我的情况下为“HDMI 音频输出”)设置为默认值。
因此,在每次重新启动时,我听不到任何声音,并且每次都需要将默认接收器重新配置为“模拟输出”。
如何删除/禁用特定接收器(例如 HDMI),或设置覆盖现有接收器的默认接收器?
我的 Xubuntu 13.10 上的 Pavucontrol 检测到我的蓝牙耳机,但只有在我输入命令后:
pulseaudio -k
sudo alsa force-reload
Run Code Online (Sandbox Code Playgroud)
几秒钟后,耳机出现在配置选项卡中。
我也试过插入行
load-module module-switch-on-connect
Run Code Online (Sandbox Code Playgroud)
在 /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"
}
Run Code Online (Sandbox Code Playgroud)
到我的主目录中的文件 .asoundrc 但它没有区别
杀死pulseaudio守护进程后,我的偶数音量热键停止工作。我必须分配
amixer set Master 4%- -q unmute
amixer set Master 4%+ -q unmute
Run Code Online (Sandbox Code Playgroud)
到其他一些组合键来管理键盘的音量。将命令分配给热键不起作用。音量键是如何绑定到守护进程的?有没有其他方法可以将密钥绑定到新的守护进程(重新启动后)?
更新
发现问题了。使用命令
pactl list | grep -i module-bluetooth-discover
Run Code Online (Sandbox Code Playgroud)
我发现蓝牙发现模块没有加载。
但是我在 /etc/pulse 中的 default.pa 文件包含这些行
.ifexists module-bluetooth-discover.so
load-module module-bluetooth-discover
.endif
Run Code Online (Sandbox Code Playgroud)
那么为什么模块没有在pulseaudio启动时加载?
发出命令后
sudo pactl load-module module-bluetooth-discover
Run Code Online (Sandbox Code Playgroud)
蓝牙耳机正常工作并自动检测,无需杀死并重新启动alsa。
安装了 Ubuntu 20.04 但我没有声音。
我已经尝试了很多方法来解决它,但问题仍然存在。当我运行 alsa 混合器时,它会出现。

pulseaudio ×10
sound ×9
bluetooth ×3
alsa ×2
skype ×2
12.04 ×1
16.04 ×1
18.04 ×1
20.04 ×1
compression ×1
drivers ×1
hdmi ×1
microphone ×1
pavucontrol ×1
system ×1
upgrade ×1