ubuntu18.04 PulseAudio蓝牙耳机开启mic的解决办法
一、背景
- 基于Linux音频服务子系统PulseAudio(Linux默认声音服务器)进行音频开发,包括采集(record)和播放(playback);
- 测试中发现笔记本(ubuntu 18.04)连接蓝牙后无法读取record设备,只能识别到playback设备,经过一番折腾,发现native PulseAudio不支持HSP/HFP, 连接蓝牙耳机后,输入指令
pactl list cards
查看声卡信息:
查看蓝牙耳机声卡Profiles:
Profiles:
off: Off (sinks: 0, sources: 0, priority: 0, available: yes)
a2dp-sink: High Fidelity Playback (A2DP Sink) (sinks: 1, sources: 0, priority: 0, available: yes)
headset-head-unit: Headset Head Unit (HSP/HFP) (sinks: 1, sources: 1, priority: 0, available: no)
可以看出此时默认只支持A2DP协议,不支持HSP/HFP,解释如下:
a2dp-sink: High Fidelity Playback (A2DP Sink) (sinks: 1, sources: 0, priority: 0, available: yes)
A2DP是单向的,只支持播放(sink),不支持录制(source);headset-head-unit: Headset Head Unit (HSP/HFP) (sinks: 1, sources: 1, priority: 0, available: no)
HSP/HFP是双向的,同时支持播放(sink)和录制(source);
结论:当前系统环境下无法支持蓝牙耳机录制,就算从PulseAudio Volume Control工具下切换Configuration也是毫无意义的。
二、解决方案
查阅资料发现,可以通过安装pipewire(参考
PipeWire: The Linux audio/video bus)让PulseAudio工作在pipewire上。
详细操作可以参考How to Enable PipeWire Audio Service to Replace PulseAudio in Ubuntu 21.10 & 21.04
步骤如下:
1. 通过ppa安装pipewire
sudo add-apt-repository ppa:pipewire-debian/pipewire-upstream
sudo apt install pipewire
sudo apt install libspa-0.2-bluetooth
2. 重启系统
3. 验证pipewire是否正常安装
pactl info
sam@sam-ThinkPad-Edge-E440:~$ pactl info
Server String: /run/user/1000/pulse/native
Library Protocol Version: 32
Server Protocol Version: 35
Is Local: yes
Client Index: 74
Tile Size: 65472
User Name: sam
Host Name: sam-ThinkPad-Edge-E440
Server Name: PulseAudio (on PipeWire 0.3.39)
Server Version: 15.0.0
Default Sample Specification: float32le 2ch 48000Hz
Default Channel Map: front-left,front-right
Default Sink: alsa_output.pci-0000_00_1b.0.analog-stereo
Default Source: alsa_input.pci-0000_00_1b.0.analog-stereo
Cookie: 2c95:ace7
查看Server Name出现PipeWire说明安装完成
Server Name: PulseAudio (on PipeWire 0.3.39)
4. 查看声卡Profiles
pactl list cards
Profiles:
off: Off (sinks: 0, sources: 0, priority: 0, available: yes)
a2dp-sink: High Fidelity Playback (A2DP Sink) (sinks: 1, sources: 0, priority: 0, available: yes)
headset-head-unit: Headset Head Unit (HSP/HFP) (sinks: 1, sources: 1, priority: 0, available: yes)
a2dp-sink-sbc: High Fidelity Playback (A2DP Sink, codec SBC) (sinks: 1, sources: 0, priority: 0, available: yes)
headset-head-unit-cvsd: Headset Head Unit (HSP/HFP, codec CVSD) (sinks: 1, sources: 1, priority: 0, available: yes)
现在看到A2DP和HSP/HFP都支持了,现在移步到系统Settings或使用PulseAudio Volume Control工具去配置蓝牙耳机的profile为HSP/HFP,即可使用蓝牙耳机的mic功能。
ubuntu18.04 PulseAudio蓝牙耳机开启mic的解决办法相关推荐
- ubuntu18.04无法安装最新显卡驱动解决办法
ubuntu18.04无法安装最新显卡驱动解决办法 一,问题描述 安装驱动时,打开软件和更新---->附加驱动,显示的显卡驱动版本与官网最新版本不同.例如我的显示390,但是官网显示最新为430 ...
- ubuntu18.04 wifi适配器打不开解决办法
笔记本:联想y7000p 系统:win10 + ubuntu18.04 网卡:rtl8822ce -------------- 参考博客: https://blog.csdn.net/qq_33591 ...
- Ubuntu18.04 没有有以太网连接的解决办法
在重装了 Ubuntu 和 win10 的双系统之后,我发现,win10 可以正常上网,但新装好的 ubuntu 是没有以太网连接的,也就是没有 "有线连接" 的选项,具体表现为在 ...
- 虚拟机Ubuntu18.04开机后没有网络的解决办法
总共四步:详细过程在后面 ①cat /var/lib/NetworkManager/NetworkManager.state ②sudo service network-manager stop ③s ...
- Ubuntu18.04网络图标不见了,解决办法
1.删除NetworkManager缓存文件 service NetworkManager stop sudo rm /var/lib/NetworkManager/NetworkManager.st ...
- 解决Ubuntu18.04下VMware开启虚拟网络编辑器无反应
解决Ubuntu18.04下VMware开启虚拟网络编辑器无反应 我确信原来vmware->Edit->Virtual Network Editor 肯定是可以工作的. 可是现在点击却没有 ...
- 树莓派4B安装ubuntu18.04 Wifi热点开启
树莓派4B安装ubuntu18.04 Wifi热点开启 最近开发需要以树莓派为主机开启Wifi热点,经过网上搜寻,采用create_ap 来开启,遇到了些坑,在这里和大家一起分享一下: 首先,需要安装 ...
- ubuntu18.04 ssh 远程系统拒绝连接 解决方法
ubuntu18.04 ssh 远程系统拒绝连接 解决方法 参考文章: (1)ubuntu18.04 ssh 远程系统拒绝连接 解决方法 (2)https://www.cnblogs.com/jiuj ...
- Ubuntu18.04安装搜狗拼音输入法皮肤透明解决方法
Ubuntu18.04安装搜狗拼音输入法皮肤透明解决方法 参考文章: (1)Ubuntu18.04安装搜狗拼音输入法皮肤透明解决方法 (2)https://www.cnblogs.com/darkli ...
最新文章
- mysql的left join和inner join的效率对比,以及如何优化
- 七步带你认识计算机视觉
- 【每日SQL打卡】​​​​​​​​​​​​​​​DAY 4丨员工薪水中位数【难度困难】
- 打印ASCII码(信息学奥赛一本通-T1020)
- 基于windows PE文件的恶意代码分析;使用SystemInternal工具与内核调试器研究windows用户空间与内核空间...
- 张口就问“CCIE”月薪多少
- [Unity][AssetStore][PacakageManager]2020.1版本后的AssetStore如何下载资源并导入编辑器以及Error refreshing packages解决办法
- c4d在运行时候显示计算机内存不足,打开c4d电脑电脑卡死怎么办
- matlab线性规划求解函数:linprog
- 分组卷积和深度可分离卷积
- 文本信息过滤中的变体词识别(一)
- VBA 字典方法及属性介绍
- php 回车符替换,php怎么替换回车符
- java中,判断当前时间是否处于某个一个时间段内
- 3d打印模型为什么文件格式必须是stl和stp的?
- 传世基本架构-客户端(全局变量与总体执行流程)
- 【C51开发应用】基于C51单片机开发的循迹灭火机器人
- sudo su后获取不到JAVA_HOME环境变量的解决方案
- java 多线程 map_多线程Map并发读后修改
- Excel的SUMPRODUCT函数及其用法
热门文章
- 一眼看懂promise与async await的区别
- 获取Android手机上音乐播放器状态
- js inArray() jQuery.inArray( value, array )
- python脚本 游戏赚金币兑换钱_一种王者荣耀刷金币方法(python脚本)
- 基于MATLAB的频率分析
- 非越狱砸壳方式总结及坑
- 一探前端开发中的JS调试技巧
- 小米物联网世界第一_中国充电宝隐形冠军,自主品牌无人问津,却帮小米成为全球第一...
- 自考计算机网络工程本科考哪些科,自考网络工程本科考试科目有哪些
- 万字长文|Hashtable源码深度解析以及与HashMap的区别