Diagnóstico de un problema HSP/HFP de auriculares Bluetooth con PipeWire - Ubuntu 20.04

Diagnóstico de un problema HSP/HFP de auriculares Bluetooth con PipeWire - Ubuntu 20.04

No, esta no es otra pregunta de "Tengo Ubuntu 20.04 y mi micrófono bluetooth no funciona".

Investigué un poco y descubrí los problemas de Pulseaudio y oFono. Probé muchas cosas, incluida la instalación del kernel 5.12.12; nada ayudó. Me di por vencido por un momento y saqué los viejos auriculares con cable del garaje. Luego instalé Fedora 34 en mi segunda computadora y, para mi sorpresa, descubrí que no había ningún problema con mis auriculares allí. Era como la luz al final del túnel. Supuse que era PipeWire, así que lo instalé en mi máquina principal. Lamentablemente, la situación no ha mejorado aquí.

Una vez instalado PipeWire, el sistema se comporta exactamente igual que antes, es decir:

  • Puedo elegir el perfil HSP/HFP tanto para entrada como para salida;
  • después de cambiar al perfil HSP/HFP, no puedo escuchar el sonido en los auriculares (solo un silencio sordo) y mi micrófono no capta ningún sonido;
  • Después de cambiar al perfil A2DP, puedo escuchar el sonido en los auriculares sin ningún problema.

Después de cambiar al perfil HSP/HFP pactl list cardsme aparece:

Card #37
    Name: bluez_card.38_18_4C_59_F1_6A
    Driver: module-bluez5-device.c
    Owner Module: n/a
    Properties:
        device.api = "bluez5"
        device.bus = "bluetooth"
        media.class = "Audio/Device"
        device.name = "bluez_card.38_18_4C_59_F1_6A"
        device.description = "WH-1000XM3"
        device.alias = "WH-1000XM3"
        device.form_factor = "headset"
        device.string = "38:18:4C:59:F1:6A"
        api.bluez5.icon = "audio-card"
        api.bluez5.path = "/org/bluez/hci0/dev_38_18_4C_59_F1_6A"
        api.bluez5.address = "38:18:4C:59:F1:6A"
        api.bluez5.device = ""
        api.bluez5.class = "0x240404"
        api.bluez5.connection = "connected"
        device.icon_name = "audio-headset-bluetooth"
        bluez5.auto-connect = "[ hfp_hf hsp_hs a2dp_sink ]"
        factory.id = "14"
        client.id = "30"
        object.id = "37"
    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)
    Active Profile: headset-head-unit-cvsd
    Ports:
        headset-input: Headset (priority: 0, latency offset: 0 usec, available)
            Properties:
                port.type = "headset"
            Part of profile(s): headset-head-unit, headset-head-unit-cvsd
        headset-output: Headset (priority: 0, latency offset: 0 usec, available)
            Properties:
                port.type = "headset"
            Part of profile(s): a2dp-sink, headset-head-unit, a2dp-sink-sbc, headset-head-unit-cvsd

pactl infome da:

Server String: /run/user/1001/pulse/native
Library Protocol Version: 33
Server Protocol Version: 35
Is Local: yes
Client Index: 37
Tile Size: 65472
User Name: kamyllus
Host Name: 
Server Name: PulseAudio (on PipeWire 0.3.30)
Server Version: 14.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.usb-DisplayLink_Dell_D3100_USB3.0_Dock_1712133780-02.iec958-stereo
Cookie: 0404:22f4

y cat /proc/versionda:

Linux version 5.8.0-55-generic (buildd@lgw01-amd64-050) (gcc (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0, GNU ld (GNU Binutils for Ubuntu) 2.34) #62~20.04.1-Ubuntu SMP Wed Jun 2 08:55:04 UTC 2021

Necesito ayuda para diagnosticar el problema. Estoy decidido a hacer callar a mis colegas de Windows que se ríen en mi cara mientras lucho.

Por favor dígame qué información puedo proporcionar también. También puedo comparar la configuración con Fedora, pero necesito saber dónde buscar. Necesito más datos para poder continuar la lucha (tal vez en otro foro más preciso).

Respuesta1

Desde la versión 0.3.28, los archivos conf se mueven al /usr/share/directorio desde /etc/. Tienes que copiarlos al /etc/directorio manualmente. Desde ahora /etc/pipewire/se puede utilizar como complemento de todo el sistema para archivos de configuración editados por el usuario. el comportamiento anulado de conffile es$HOME/.config/pipewire > /etc/pipewire > /usr/share/pipewire

Para copiar archivos de configuración de /usr/share/a /etc/:

sudo cp -vRa /usr/share/pipewire /etc/

Asegúrese de haber enmascarado PulseAudio y reinicie el servicio Pipewire usando:

systemctl --user mask pulseaudio
systemctl --user restart pipewire pipewire-pulse

Si aún no funciona, sugeriría la reinstalación usando el siguiente enlacehttps://pipewire-debian.github.io/pipewire-debian/

información relacionada