与许多其他人类似,我一直受到蓝牙耳机(SONY WH-H900N)问题的困扰。我可以使用 A2DP 完美连接,甚至 LDAC 由于pulseaudio-modules-bt正在工作。但是,当我恢复质量以将耳机用作接收器和源时,我开始听到一些噪音(我认为这是这种低质量编解码器所预期的)但没有声音通过。
由于两个原因,我的问题本身与其他一些耳机问题不同:
- 它曾经工作过(最后一次测试是在大约 6 个月前)。
- 麦克风工作正常,只是声音输出不工作。
系统信息:
bram@bram-Zbook : ~ $ inxi -Fxz 系统: 内核: 5.8.0-48-generic x86_64 bits: 64编译器: N/A桌面: Gnome 3.36.7 Distro: Ubuntu 20.04.2 LTS (Focal Fossa) 机器:类型:笔记本电脑系统: HP产品: HP ZBook Studio G3 v: N/A序列号: <filter> Mobo: HP型号: 80D4 v: KBC 版本 11.75序列号: <filter> UEFI: HP v: N82 Ver. 01.52日期:10/28/2020 电池:ID-1: BAT0充电: 47.8 Wh状态: 49.1/64.0 Wh (77%)型号: Hewlett-Packard 主要状态:未知 CPU:拓扑:四核型号: Intel Core i7-6700HQ位: 64类型: MT MCP架构: Skylake-S rev: 3 L2 缓存: 6144 KiB 标志: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 41599 速度: 3262 MHz最小/最大: 800/3500 MHz核心速度(兆赫): 1: 3188 2: 3251 3: 3291 4: 3447 5: 3277 6: 3151 7: 3251 8: 3242 显卡: 设备 1: Intel HD Graphics 530供应商: Hewlett-Packard驱动程序: i915 v:内核总线 ID: 00: 02.0 设备 2: NVIDIA GM107GLM [Quadro M1000M]供应商:惠普驱动程序: nvidia v: 450.102.04总线 ID: 01:00.0 显示器: x11服务器:X.Org 1.20.9驱动程序:模式设置,nvidia卸载: fbdev,nouveau,vesa 分辨率: 1920x1080~60Hz,2560x1440~60Hz OpenGL: 渲染器: Mesa Intel HD Graphics 530 (SKL GT2) v: 4.6 Mesa 20.2.6直接渲染:是 音频:设备 1: Intel 100 系列/C230 系列家庭高清音频供应商:惠普驱动程序: snd_hda_intel v:内核 总线 ID: 00:1f.3 设备 2: NVIDIA GM107 高清音频 [GeForce 940MX]供应商:惠普驱动程序: snd_hda_intel v:内核总线 ID: 01:00.1 设备 3: Conexant Systems (Rockwell) HP Dock 音频类型: USB驱动程序: hid-generic、snd-usb-audio、usbhid 总线 ID: 3-2:3 声音服务器: ALSA v: k5.8.0-48-generic Network: Device-1: Intel Ethernet I219-LM vendor: Hewlett-Packard driver: e1000e v: 3.2.6-k port: efa0 bus ID: 00:1f.6 IF: enp0s31f6状态:关闭mac: <filter> Device-2: Intel Wireless 8260 driver: iwlwifi v: kernel port: 4000 bus ID: 03:00.0 IF: wlp3s0 state: up mac: <filter> Device-3: Broadcom 和子公司 NetXtreme BCM57762 Gigabit Ethernet PCIe驱动程序: tg3 v:内核端口: 4000 总线 ID: 3f:00.0 IF: enp63s0状态:上行速度: 1000 Mbps双工:全mac:<filter> 驱动器:本地存储: 总计: 2.29 TiB已使用: 284.32 GiB (12.2%) ID-1: /dev/nvme0n1供应商:三星型号: MZVPV256HDGL-00000大小: 238.47 GiB ID-2: /dev/sda供应商: SanDisk型号: SD7TN3Q-256G-1006大小: 238.47 GiB ID-3: /dev/sdb类型: USB供应商: Western Digital型号: WD My Passport 2626大小: 1.82 TiB 分区:ID-1: /大小: 226.34 GiB已用: 85.37 GiB (37.7%) fs: ext4 dev: /dev/nvme0n1p3 ID-2: /home大小: 233.73 GiB 已用: 197.74 GiB (84.6%) fs: ext4 dev: /dev/sda1 ID-3: swap- 1大小: 7.45 GiB 已使用: 6.2 MiB (0.1%) fs:交换开发: /dev/nvme0n1p2 传感器:系统温度: cpu: 60.0 C主板: 52.0 C 风扇速度 (RPM): N/A 信息:进程: 365正常运行时间: 19m内存: 7.56 GiB 已用: 3.51 GiB (46.4%)初始化: systemd运行级别: 5编译器: gcc: 9.3.0
蓝牙适配器是网络设备 2:英特尔无线 8260,用于驱动程序名为 iwlwifi。运行时inxi -Fxz
,pacmd list-sinks
耳机通过 A2DP 连接。
bram@bram-Zbook : ~ $ pacmd list-cards 4张卡可用。 ------ 删除设备 0 到 2 ------ 指数:3 名称:<bluez_card.04_5D_4B_66_7E_42> 驱动程序:<module-bluez5-device.c> 所有者模块:29 特性: device.description = "LE_WH-H900N" device.string = "04:5D:4B:66:7E:42" device.api = "bluez" device.class = "声音" device.bus = "蓝牙" device.form_factor = "耳机" bluez.path = "/org/bluez/hci0/dev_04_5D_4B_66_7E_42" bluez.class = "0x240404" bluez.alias = "LE_WH-H900N" device.icon_name = "音频耳机蓝牙" device.intended_roles = "电话" 简介: 耳机头单元:耳机头单元(HSP/HFP)(优先级30,可用:未知) a2dp_sink_sbc:高保真播放(A2DP Sink:SBC)(优先级 40,可用:未知) a2dp_sink_aac:高保真播放(A2DP Sink:AAC)(优先级 40,可用:未知) a2dp_sink_aptx:高保真播放(A2DP Sink:aptX)(优先级 40,可用:未知) a2dp_sink_aptx_hd:高保真播放(A2DP Sink:aptX HD)(优先级 40,可用:未知) a2dp_sink_ldac:高保真播放(A2DP Sink:LDAC)(优先级 40,可用:是) off:关闭(优先级 0,可用:是) 活动配置文件:<a2dp_sink_ldac> 汇: bluez_sink.04_5D_4B_66_7E_42.a2dp_sink/#11:LE_WH-H900N 来源: bluez_sink.04_5D_4B_66_7E_42.a2dp_sink.monitor/#16:LE_WH-H900N的监视器 端口: 耳机输出:耳机(优先级 0,延迟偏移 0 微秒,可用:是) 特性: 耳机输入:耳机(优先级 0,延迟偏移 0 微秒,可用:未知) 特性: bram@bram-Zbook : ~ $ pacmd list-sinks ------ 删除索引 1 到 4(然后跳转到 17) ------ * 指数:17 名称:<bluez_sink.04_5D_4B_66_7E_42.a2dp_sink> 驱动程序:<module-bluez5-device.c> 标志:硬件 DECIBEL_VOLUME LATENCY 状态:正在运行 暂停原因:(无) 优先级:9050 音量:左前:35863 / 55% / -15,71 dB,右前:35863 / 55% / -15,71 dB 余额 0,00 基本音量:65536 / 100% / 0,00 dB 卷步数:65537 静音:没有 当前延迟:33,13 毫秒 最大请求:2 KiB 最大倒带:0 KiB 监控源:25 样品规格:float32le 2ch 44100Hz 频道图:前左,前右 立体声 使用者:1 链接者:1 固定延迟:30,80 毫秒 卡:4 <bluez_card.04_5D_4B_66_7E_42> 模块:31 特性: bluetooth.protocol = "a2dp_sink" bluetooth.a2dp_codec = "LDAC" device.description = "LE_WH-H900N" device.string = "04:5D:4B:66:7E:42" device.api = "bluez" device.class = "声音" device.bus = "蓝牙" device.form_factor = "耳机" bluez.path = "/org/bluez/hci0/dev_04_5D_4B_66_7E_42" bluez.class = "0x240404" bluez.alias = "LE_WH-H900N" device.icon_name = "音频耳机蓝牙" device.intended_roles = "电话" 端口: 耳机输出:耳机(优先级 0,延迟偏移 0 微秒,可用:是) 特性: 活动端口:<耳机输出>
现在切换到 HSP/HFP 后:
(基础) bram@bram-Zbook : ~ $ pacmd list-cards 4张卡可用。 ------ 删除了设备 0、1 和 2 ------ 指数:3 名称:<bluez_card.04_5D_4B_66_7E_42> 驱动程序:<module-bluez5-device.c> 所有者模块:29 特性: device.description = "LE_WH-H900N" device.string = "04:5D:4B:66:7E:42" device.api = "bluez" device.class = "声音" device.bus = "蓝牙" device.form_factor = "耳机" bluez.path = "/org/bluez/hci0/dev_04_5D_4B_66_7E_42" bluez.class = "0x240404" bluez.alias = "LE_WH-H900N" device.icon_name = "音频耳机蓝牙" device.intended_roles = "电话" 简介: 耳机头单元:耳机头单元(HSP/HFP)(优先级30,可用:是) a2dp_sink_sbc:高保真播放(A2DP Sink:SBC)(优先级 40,可用:未知) a2dp_sink_aac:高保真播放(A2DP Sink:AAC)(优先级 40,可用:未知) a2dp_sink_aptx:高保真播放(A2DP Sink:aptX)(优先级 40,可用:未知) a2dp_sink_aptx_hd:高保真播放(A2DP Sink:aptX HD)(优先级 40,可用:未知) a2dp_sink_ldac:高保真播放(A2DP Sink:LDAC)(优先级 40,可用:未知) off:关闭(优先级 0,可用:是) 活动配置文件:<headset_head_unit> 汇: bluez_sink.04_5D_4B_66_7E_42.headset_head_unit/#14:LE_WH-H900N 来源: bluez_sink.04_5D_4B_66_7E_42.headset_head_unit.monitor/#21:LE_WH-H900N 的监视器 bluez_source.04_5D_4B_66_7E_42.headset_head_unit/#22:LE_WH-H900N 端口: 耳机输出:耳机(优先级 0,延迟偏移 0 微秒,可用:是) 特性: 耳机输入:耳机(优先级 0,延迟偏移 0 微秒,可用:是) 特性: bram@bram-Zbook : ~ $ pacmd list-sinks ------ 删除索引 1 到 4(然后跳转到 14) ------ * 指数:14 名称:<bluez_sink.04_5D_4B_66_7E_42.headset_head_unit> 驱动程序:<module-bluez5-device.c> 标志:硬件 HW_VOLUME_CTRL LATENCY 状态:正在运行 暂停原因:(无) 优先级:9050 音量:单声道:65136 / 99% 余额 0,00 基础体积:65536 / 100% 音量步数:16 静音:没有 当前延迟:36.49 毫秒 最大请求:0 KiB 最大倒带:0 KiB 监控源:21 样品规格:s16le 1ch 8000Hz 频道图:单声道 单核细胞增多症 使用者:1 链接者:1 固定延迟:31,00 毫秒 卡:3 <bluez_card.04_5D_4B_66_7E_42> 模块:29 特性: bluetooth.protocol = "headset_head_unit" device.intended_roles = "电话" device.description = "LE_WH-H900N" device.string = "04:5D:4B:66:7E:42" device.api = "bluez" device.class = "声音" device.bus = "蓝牙" device.form_factor = "耳机" bluez.path = "/org/bluez/hci0/dev_04_5D_4B_66_7E_42" bluez.class = "0x240404" bluez.alias = "LE_WH-H900N" device.icon_name = "音频耳机蓝牙" 端口: 耳机输出:耳机(优先级 0,延迟偏移 0 微秒,可用:是) 特性: 活动端口:<耳机输出>
在我看到麦克风在 Gnome 控制面板中接收到一些声音后,我确实打电话给一位朋友,他可以确认麦克风工作正常。在这个声音控制面板中,令我惊讶的是输出设备强度的颜色变成了蓝色并且停止了移动。
到目前为止,我已经尝试过玩blueman
,pavucontrol
但无济于事。
编辑 1:Journalctl
我已经监视了在 journalctl 中的配置文件之间切换的操作。结果如下:
bram@bram-Zbook : ~ $ journalctl -f -- 日志从星期一 2021-03-08 02:01:23 +03 开始。-- mrt 31 22:23:02 bram-Zbook /usr/lib/gdm3/gdm-x-session[1985]: (--) NVIDIA(GPU-0): DFP-1: 165.0 MHz 最大像素时钟 mrt 31 22: 23:02 bram-Zbook /usr/lib/gdm3/gdm-x-session [1985]: (--) NVIDIA(GPU-0): mrt 31 22:23:02 bram-Zbook /usr/lib/gdm3/ gdm-x-session[1985]: (--) NVIDIA(GPU-0): DFP-2: 断开 mrt 31 22:23:02 bram-Zbook /usr/lib/gdm3/gdm-x-session[1985] : (--) NVIDIA(GPU-0): DFP-2: 内部 DisplayPort mrt 31 22:23:02 bram-Zbook /usr/lib/gdm3/gdm-x-session[1985]: (--) NVIDIA( GPU-0): DFP-2: 960.0 MHz 最大像素时钟 mrt 31 22:23:02 bram-Zbook /usr/lib/gdm3/gdm-x-session[1985]: (--) NVIDIA(GPU-0) : mrt 31 22:23:02 bram-Zbook /usr/lib/gdm3/gdm-x-session[1985]:(--) NVIDIA(GPU-0): DFP-3: 断开 mrt 31 22:23:02 bram-Zbook /usr/lib/gdm3/gdm-x-session[1985]: (--) NVIDIA(GPU- 0): DFP-3: 内部 DisplayPort mrt 31 22:23:02 bram-Zbook /usr/lib/gdm3/gdm-x-session[1985]: (--) NVIDIA(GPU-0): DFP-3: 960.0 MHz 最大像素时钟 mrt 31 22:23:02 bram-Zbook /usr/lib/gdm3/gdm-x-session[1985]: (--) NVIDIA(GPU-0): mrt 31 22:23:13 bram-Zbook rtkit-daemon[1192]:监督 2 个用户的 3 个进程的 7 个线程。 mrt 31 22:23:13 bram-Zbook rtkit-daemon [1192]:成功地使进程 1900 的线程 13653 由“1000”RT 拥有,优先级为 5。 mrt 31 22:23:13 bram-Zbook rtkit-daemon[1192]:监督 2 个用户的 3 个进程的 8 个线程。 mrt 31 22:23:13 bram-Zbook gsd-media-keys [2356]:无法获取默认接收器 mrt 31 22:23:13 bram-Zbook gsd-media-keys [2356]:无法获取默认源 mrt 31 22:23:13 bram-Zbook 内核:蓝牙:hci0:未知连接句柄 0 mrt 31 的 SCO 数据包 22:23:13 bram-Zbook 内核:蓝牙:hci0:未知连接句柄 0 mrt 31 的 SCO 数据包 22:23: 13 bram-Zbook 内核:蓝牙:hci0:未知连接句柄 0 的 SCO 数据包 mrt 31 22:23:13 bram-Zbook 内核:蓝牙:hci0:未知连接句柄 0 的 SCO 数据包 mrt 31 22:23:20 bram-Zbook rtkit-daemon[1192]:监督 2 个用户的 3 个进程的 7 个线程。 mrt 31 22:23:20 bram-Zbook 内核:蓝牙:hci0:未知连接句柄 257 的 SCO 数据包 mrt 31 22:23:20 bram-Zbook rtkit-daemon[1192]:成功地使进程 1900 的线程 13656 由“1000”RT 拥有,优先级为 5。 mrt 31 22:23:20 bram-Zbook rtkit-daemon[1192]:监督 2 个用户的 3 个进程的 8 个线程。 mrt 31 22:23:20 bram-Zbook gsd-media-keys [2356]:无法获取默认接收器 mrt 31 22:23:20 bram-Zbook gsd-media-keys [2356]:无法获取默认源
- mrt 31 22:23:13 -> 从 A2DP 更改为 HSP/HFP(没有声音,但音频正常)
- mrt 31 22:23:20 -> 从 HSP/HFP 改回 A2DP(一切正常)
显然有一个错误:Bluetooth: hci0: SCO packet for unknown connection handle 0
这似乎在这里讨论。但我不确定这意味着什么。除了返回到正在工作的 A2DP 时会发生类似的错误,Bluetooth: hci0: SCO packet for unknown connection handle 257
. 但这只会出现一次。
编辑2:声音测试
受这个问题的启发,我进行了以下测试,它自动将耳机切换到 HSP/HFP 模式,并且再次没有声音。那里的用户发现他有蓝牙驱动程序问题,遗憾的是他没有解释他是如何解决这个问题的。他也没有实际显示 arecord 测试的输出。
bram@bram-Zbook : ~ $ arecord --channels=1 --format=S16_LE --rate=8000 --duration=6 --verbose --dump-hw-params --device=default voice.wav Opname WAVE 'voice.wav' :有符号 16 位 Little Endian,Frequentie 8000 Hz,单声道 设备“默认”的硬件参数: :-------------------- 访问:RW_INTERLEAVED 格式:U8 S16_LE S16_BE S24_LE S24_BE S32_LE S32_BE FLOAT_LE FLOAT_BE MU_LAW A_LAW S24_3LE S24_3BE 子格式:标准 SAMPLE_BITS:[8 32] FRAME_BITS:[8 1024] 频道:[1 32] 速率:[1 384000] PERIOD_TIME: (2 4294967295) PERIOD_SIZE: [1 1398102) PERIOD_BYTES:[128 1398102) 期间:[3 1024] BUFFER_TIME: (7 4294967295] 缓冲区大小:[3 4194304] 缓冲区字节:[384 4194304] TICK_TIME:全部 :-------------------- ALSA <-> PulseAudio PCM I/O 插件 它的设置是: 流:捕获 访问:RW_INTERLEAVED 格式:S16_LE 子格式:STD 频道:1 费率:8000 准确率:8000 (8000/1) 毫秒位:16 缓冲区大小:4000 周期大小:1000 周期时间:125000 tstamp_mode:无 tstamp_type : GETTIMEOFDAY period_step : 1 可用最小值:1000 期间事件:0 开始阈值:1 停止阈值:4000 静音阈值:0 沉默大小:0 边界:9007199254740992000