Cómo solucionar problemas de sonido

Hank Lee, The Music y Audio SIG Versión F40 Last review: 2025-06-06
Esta página describe algunas técnicas básicas de resolución de problemas para ayudar a identificar la causa raíz del problema. También explica la información que debe incluirse al informar errores relacionados con el sonido.

Introducción

Sound problems in Fedora Linux can stem from various factors, including audio profiles, pairing procedures, device compatibility, or user misconfiguration. Typical issues users may encounter:

  • No sound output or input

  • Only “Dummy Output” is available

  • Microphones not being detected

  • Audio devices missing after updates

  • Broken Bluetooth audio connections

This guide provides a step-by-step approach to diagnosing and resolving these sound issues. It covers both general troubleshooting and specific fixes for input-related problems, such as missing microphones or inactive input devices.

Diagnosing the Problem

  • Determining if the issue is with the kernel, PipeWire, or specific applications.

  • Collecting logs and system information.

Check which Kernel driver is in use by PCI devices

To display kernel drivers handling each device, use the lspci (List PCI) command with the option -k. Searching for known issues specific to driver’s name and your hardware model before reporting issues to Ask Fedora.

$ sudo lspci -k

New hardware drivers are updated continuously. If you see a device listed as unknown, query your PCI device ID database.

$ sudo lspci -Q

And update your local PCI ID database by running the command update-pciids.

$ sudo update-pciids

ALSA Firmware

The ALSA Firmware package contains firmware for various third-party sound cards.

See which firmware is in use by running the following command.

$ sudo dnf list alsa-firmware

The regular ALSA Firmware will appear <alsa-firmware.noarch>.

If the regular firmware is not on the output, install the alsa-firmware.

$ sudo dnf install alsa-firmware

If any other firmware is installed, put them on blocklist on configuration directory for modprobe.

/etc/modprobe.d/*.conf

Add the line on configuration file.

blacklist <el módulo de listado de bloques en blanco>

La herramienta dracuf crea una imagen inicial utilizada por el kernel para precargar los módulos de dispositivo de bloque. La opción -f sobrescribe archivo initramfs existente.

$ sudo dracut -f

Rearranca su equipo para que tome efecto el cambio.

$ sudo reboot

Información del hardware

Siempre es útil para incluir información detallada en su hardware de sonido cuando rellene un defecto relativo al sonido. Para producir esta información, ejecute esta instrucción:

$ alsa-info.sh --no-upload

Esto generará un archivo conteniendo información detallada sobre su hardware de sonido con el nombre /tmp/alsa-info.txt. Adjunte este archivo a su informe del defecto.

¿Esto es PipeWire?

PipeWire es un medio de compartición de servidor, un framework multimedia de nivel bajo que le vale;

  • mejorar a mano sonido y vídeo bajo Linux

  • funcionar con todos los usuarios en cualesquiera niveles

  • ofrecer mantenimiento para aplicaciones basadas en PulseAudio, JACK (Kit de Conexión de Sonido JACK), y GStreamer

Comprobaciones visuales en puertos

Qpwgraph es un gestor gráfico dedicado para PipeWire.

Comprobantes visuales en puertos utilizando Qpwgraph ayudará a descubrir todos los enrutados entre aplicaciones y dispositivos y cambiar el enrutado como se necesite. Por ejemplo, si están conectadas y desconectadas múltiples aplicaciones y dispositivos como a continuación,

  • Firefox: aplicación de conferencia de vídeo utilizando el protocolo WebRTC

  • VLC: reproductor de medio

  • OBS Studio: flujo en vivo y grabación

  • Tarjetas de sonido USB o mezcladores: dispositivos

serán utilizados para aprender como los puertos están conectados para las aplicaciones y dispositivos gráficamente.

Puertos son direccionales, pueden ser:

  • Puertos origen (destino). Localizados en el hueco a la derecha de un nodo, generan un flujo de sonido/vídeo/mido.

  • Puertos pozo (entrada). Puestos más a la izquierda de un nodo, consume un flujo de sonido/vídeo/midi.

Los puertos tienen tipos diferentes:

  • Sonido: (color predet.: verde)

  • Vídeo (color predet.: azul)

  • MIDI PipeWire/JACK (color predet.: rojo)

  • MIDI ALSA (color predet.: púrpura)

Pueden ser conectados los puertos del mismo tipo y direcciones opuestas.

Compruebe la última documentación para la guía de usuario en la Guía de Usuario Qpwgraph.

Resolución de Problemas de Entrada de Sonido

Follow these steps to resolve most audio input issues.

Pasos de solución:

Paso 1: reinstalar PipeWire y Paquetes Relacionados

Asegúrese la necesidad de que los componentes PipeWire estén instalados y funcionando correctamente.

$ sudo dnf reinstall pipewire pipewire-pulseaudio pipewire-alsa wireplumber

Después rearranque su sistema.

Paso 2: compruebe el estado de servicio de sonido

Asegúrese que los servicios PipeWire y WirePlumber estén activos.

$ systemctl --user status pipewire
$ systemctl --user status pipewire-pulse
$ systemctl --user status wireplumber

Si no se están ejecutándose, inicie y habilítelos:

$ systemctl --user enable --now pipewire.socket
$ systemctl --user enable --now pipewire-pulse.socket
$ systemctl --user start  pipewire
$ systemctl --user start  pipewire-pulse
$ systemctl --user enable --now wireplumber

Paso 3: Verificar Permisos de Usuario

Compruebe que su usuario pertenece a los grupos correctos:

grupos

Si audio falta, añádalo:

$ sudo usermod -aG audio $USER

Paso 4: restablecer archivos de configuración

Si las configuraciones de sonido están corruptas, puede restablecerlas moviendo las carpetas anteriores de config:

----  $ mv ~/.config/pulse ~/.config/pulse_backup $ mv ~/.config/pipewire ~/.config/pipewire_backup
----

Después rearranque su sistema.

Paso 5: comprobar hardware

Si está utilizando un micrófono externo, intente reconectarlo o probar con un dispositivo diferente para regla externa de temas del hardware.

Problemas de Diagnóstico y Reparación de Sonido Bluetooth

Bluetooth audio issues can often be categorized into one of three categories: device detection, pairing, or missing audio profile. This section provides a structured guide to determine which of these stages the problem belongs to and how to resolve it.

Categoría 1: Dispositivo No Detectado

Symptoms

  • Bluetooth audio device does not appear in bluetoothctl or GNOME Settings.

  • No MAC address shown even while device is in pairing mode.

This usually means the Linux Bluetooth stack never received an advertisement packet from the device. Common causes include:

  • The Bluetooth adapter (HCI device) is not fully initialized or supported.

  • The device uses a newer Bluetooth version or chipset that requires kernel or firmware support not yet available.

Check

Use btmon to monitor Bluetooth traffic and look for LE Advertising Report event. When a Bluetooth device is detected properly, you will see lines like:

  $ sudo btmon
  Bluetooth monitor ver 5.81
  LE Advertising Report (0x02)
    Num reports: 1
    Event type: Connectable undirected - ADV_IND (0x00)
    Address type: Random (0x01)
    Address: C4:9D:61:BC:E7:09 (Static)
    Data length: 25
    16-bit Service UUIDs (partial): 1 entry
    Unknown (0xfd2a)
    Company: Sony Corporation (301)
    Data[17]: 13000130ed000000004001fffd1c91351c
    RSSI: -40 dBm (0xd8)
  • LE Advertising Report indicates the device is actively broadcasting (advertising).

  • Address is the MAC address of the detected device.

  • RSSI: Signal strength; a negative value of -40 dBm, means the device is nearby.

As a next step, run the bluetoothctl show command to display the current status and configuration of the Bluetooth adapter. It provides information such as adapter name, power status (on/off), discoverability (whether other devices can see it), and pairability.

  $ bluetoothctl show
    Controller A0:C5:89:3B:26:52 (public)
    Manufacturer: 0x0002 (2)
    Version: 0x08 (8)
    Name: hanku
    Alias: hanku
    Class: 0x007c010c (8126732)
    Powered: yes
    PowerState: on
    Discoverable: yes
    DiscoverableTimeout: 0x000000b4 (180)
    Pairable: yes

This is useful for checking if your Bluetooth adapter is properly initialized and ready for scanning, pairing, or connecting to devices.

If there is a problem, the output of bluetoothctl show or btmon may reveal signs like the adapter being powered off, not discoverable, or missing from the index entirely. For example, in btmon, if no LE Advertising Report appears, it may indicate the Bluetooth device is not broadcasting or not being detected.

To continue, start the Bluetooth control tool to list Bluetooth devices and their statuses.

  $ bluetoothctl
    Agent registered
    [CHG] Device 40:19:20:19:69:9F RSSI: 0xffffffb9 (-71)
    [CHG] Device 28:6B:B4:40:2F:87 RSSI: 0xffffffbd (-67)
    [CHG] Device 28:6B:B4:4C:82:E5 RSSI: 0xffffffb9 (-71)
    [WF-C710N]> scan on
    SetDiscoveryFilter success
    Discovery started
    [DEL] Device C4:9D:61:BC:E7:09 LE_WF-C710N
    [NEW] Device C4:9D:61:BC:E7:09 LE_WF-C710N
    [WF-C710N]>

Here’s a summary of what’s happening in your bluetoothctl session:

  • Agent registered: A Bluetooth agent (for pairing/authentication) has been successfully registered.

  • [CHG] Device …​ RSSI: 0xffffffb9 (-71): RSSI (signal strength) for a known device has changed. The value 0xffffffb9 is just a signed hex representation of -71 dBm — a moderate signal.

  • [WF-C710N]> scan on → You’ve started device discovery (scanning). WF-C710N is the device name, typically set by the manufacturer.

  • SetDiscoveryFilter success → Any filters for discovery (For example, only LE devices) were successfully applied. LE means Low Energy, which is common for Bluetooth audio devices.

  • Discovery started → The adapter began scanning for nearby devices.

  • [DEL] Device C4:9D:61:BC:E7:09 LE_WF-C710N → The device was removed from the internal cache/list temporarily — possibly due to reappearance or profile update.

  • [NEW] Device C4:9D:61:BC:E7:09 LE_WF-C710N → The device reappeared during scanning and is now listed as newly discovered.

If the device never appears in scans (no MAC shown), this is often not solvable by user-level configuration or re-pairing, and may indicate hardware or firmware-level incompatibility.

Recommendation

  • Test the device on other operating systems (Ubuntu LTS, Windows, macOS) to confirm functionality.

  • Search bug trackers (For example, kernel.org, Fedora Bugzilla, bluez mailing list) for known issues related to the specific device or chipset.

  • If no workaround exists, consider using another headset known to work well with Linux.

Comentario

  • In community forums, it’s helpful to distinguish device detection issues from pairing or profile switching problems. Many Bluetooth devices work well under Linux. However, some may exhibit issues—such as failing to pair or not switching audio profiles—because of unsupported codecs. Understanding the differences between these issue types helps users know what to expect and makes it easier for contributors to improve guidance and support.

Categoría 2: Emparejando Falla o Es Incompleto

Symptoms

  • Device is visible but cannot be paired or consistently fails to connect

  • Authorization timeouts or connection errors

Check

  • Use bluetoothctl for manual steps.

  $ bluetoothctl
    power on
    agent on
    default-agent
    scan on
    pair <MAC>
    trust <MAC>
    connect <MAC>

Fix

  • Remove device and retry pairing.

$ bluetoothctl remove <MAC>
  • Restart Bluetooth service.

$ sudo systemctl restart bluetooth

For some devices, make sure to hold the pairing button until rapid blinking starts.

Categoría 3: Perfiles de Sonido Faltan o Fallan

Symptoms

  • The device is paired but no usable audio profile (for example, A2DP, HSP) is shown or active.

  • Only HSP/HFP is available, A2DP (Advanced Audio Distribution Profile) is missing.

Check

  • Confirme que es utilizado PipeWire.

$ pactl info | grep Server

Salida de ejemplo:

  Server String: /run/user/1000/pulse/native
  Server Protocol Version: 35
  Server Name: PulseAudio (on PipeWire 1.4.2)
  Server Version: 15.0.0

This output shows that the system is using the PulseAudio compatibility layer on top of PipeWire. To further inspect the audio setup, the command pactl list cards short provides a concise summary of all audio cards recognized by PulseAudio. It’s useful for quickly identifying available audio devices without diving into detailed properties.

$ pactl list cards short

Salida de ejemplo:

  42 alsa_card.pci-0000_00_1f.3 alsa
  1092 bluez_card.14_06_A7_04_73_78 module-bluez5-device.c

The absence of Bluetooth-related cards (in the format bluez_card.XX_XX_XX_XX_XX_XX) in the output of the pactl list cards short command indicates that one or more issues may be present.

Next, the command below filters the output of pactl list cards to only show lines containing either profile or name, ignoring case;

$ pactl list cards | grep -i 'profile\|name:'

Salida de ejemplo:

  Name: alsa_card.pci-0000_00_1f.3
  api.acp.auto-profile = "false"
  Name: bluez_card.14_06_A7_04_73_78
  bluez5.profile = "off"
  Active Profile: a2dp-sink
    Part of profile(s): headset-head-unit-cvsd, headset-head-unit
    Part of profile(s): a2dp-sink-sbc, a2dp-sink-sbc_xq, a2dp-sink
    Part of profile(s): headset-head-unit-cvsd, headset-head-unit

Line-by-Line Explanation:

  • Name: alsa_card.pci-0000_00_1f.3 → This is a built-in or PCI-based audio card managed by ALSA.

  • api.acp.auto-profile = "false" → ACP (Advanced Configuration Profile) is disabled for this card; it won’t automatically switch profiles.

  • Name: bluez_card.14_06_A7_04_73_78 → This is a Bluetooth audio device, identified by its MAC address.

  • bluez5.profile = "off" → In PipeWire (especially with WirePlumber), this value can be outdated or not reflect the actual active state, since profiles can be switched dynamically and not always update the stored property.

  • Active Profile: a2dp-sink → This indicates that the A2DP (Advanced Audio Distribution Profile) is currently active, allowing high-quality audio streaming. It also supports HSP/HFP (headset mode) and multiple SBC-based A2DP variations. This structure helps PipeWire choose or switch profiles depending on use case (for example, music vs. calls)

If there is no Bluetooth audio card (for example, bluez_card) present and no Bluetooth-related active profile (such as a2dp-sink or headset-head-unit), this indicates a problem in the audio system, whether PulseAudio or PipeWire.

Recommendation

  • Test on a clean and latest Fedora system, preferably without having installed multiple conflicting Bluetooth/audio tools.

  • Make sure the Bluetooth audio device is in proper pairing mode—usually indicated by rapid blinking—by following the manufacturer’s instructions.

  • Avoid tweaking or reinstalling PipeWire/WirePlumber based on general forum advice, unless logs show actual service failure.

Opciones de Depuración Pipewire

Debugging usually starts after the bug has been identified, and works best when users are very familiar with the circumstances surrounding the bug.

PipeWire has its own debugging options. Please see the upstream documentation PipeWire debugging.

¿Necesita Más Ayuda?

Si los pasos anteriores no resuelven su tema, visite la comunidad Fedora:

Ayuda de contribuciones y retroalimentación mejoran la documentación de Fedora para cada uno.