Corrección de errores: distorsión de audio y bloqueo de PipeWire (Linux)¶
Este documento describe cómo resolver la distorsión de audio (“klirren”), artefactos de voz robótica y bloqueos de audio del sistema que pueden ocurrir al usar SL5-aura-service junto con otras aplicaciones multimedia como OBS, AnyDesk o transmisiones TTS de alta frecuencia.
Síntomas¶
La salida/entrada de voz suena distorsionada, metálica o “chirriante”.
El audio del sistema se bloquea con el mensaje: “Estableciendo conexión con PulseAudio” o “Espere”.
Pérdida total de audio después de una carga alta de CPU o uso simultáneo de transmisión.
Los registros del diario muestran:
spa.alsa: hw:X: snd_pcm_status error: No existe tal dispositivo.
Causa principal¶
En Manjaro y otras distribuciones modernas de Linux, PipeWire gestiona el audio. La distorsión suele deberse a:
Insuficiencia del búfer: Conflicto entre transmisiones simultáneas (p. ej., AnyDesk captura audio mientras se ejecuta TTS/OBS).
Frecuencia de muestreo no coincidente: Cambio frecuente entre 44,1 kHz y 48 kHz.
Problemas de sincronización USB: La alta carga del bus hace que los auriculares USB (como Plantronics/Poly) se desconecten temporalmente.
Soluciones¶
1. Recuperación Inmediata (El Reinicio “Nuclear”)¶
Si la pila de audio está congelada o distorsionada, elimine todos los procesos relacionados con el audio. Se reiniciarán automáticamente inmediatamente.
# Force kill PipeWire and its PulseAudio compatibility layer
killall -9 pulseaudio pipewire pipewire-pulse
2. Configuración de prevención y estabilidad¶
Deshabilitar el audio de AnyDesk¶
AnyDesk a menudo intenta conectarse al dispositivo de audio, lo que provoca conflictos de hardware.
Acción: Abra la configuración de AnyDesk -> Audio -> Deshabilite “Transmitir audio” y “Reproducir audio”.
Arreglar la frecuencia de muestreo de PipeWire (recomendado)¶
Fuerce a PipeWire a permanecer en 48 kHz para evitar artefactos de remuestreo durante la reproducción TTS.
Cree el directorio de configuración:
mkdir -p ~/.config/pipewireCopie la configuración predeterminada:
cp /usr/share/pipewire/pipewire.conf ~/.config/pipewire/Edite
~/.config/pipewire/pipewire.confy configure:default.clock.rate = 48000
Reiniciar los servicios:
systemctl --user restart pipewire pipewire-pulse wireplumber
3. Recuperación de posproducción (FFmpeg)¶
Si grabó una sesión y el audio está distorsionado (“clirring”), use la siguiente cadena de filtros ffmpeg para reparar el archivo.
Comando de reparación recomendado¶
Este comando aplica un eliminador de recortes, reducción de ruido y un filtro de paso bajo para eliminar artefactos digitales de alta frecuencia sin volver a codificar el vídeo.
probado y muy bueno:
ffmpeg -i input_video.mp4
-af "adeclip, afftdn, lowpass=f=5000, volume=1.5" \
-c:v copy reparatur_output.mp4
puede ser mejor con (no probado):
ffmpeg -i input_video.mp4 \
-af "adeclip, afftdn, lowpass=f=3500, volume=1.8" \
-c:v copy repaired_audio_output.mp4
no probado:
ffmpeg -i input_video.mp4 -af "arnndn=m=cb.rnnn, lowpass=f=5000" -c:v copy ki_reparatur.mp4
Desglose del filtro:
adeclip: Redondea los picos de recorte digital.afftdn: Reduce el ruido digital basado en FFT.lowpass=f=3500: Corta las frecuencias superiores a 3,5 kHz donde se produce la mayor parte del “clic” (hace que la voz sea más clara/cálida).volume=1.8: Compensa la pérdida de volumen durante el filtrado.-c:v copy: Mantiene la calidad del vídeo original (extremadamente rápido).
Herramientas de depuración¶
Para monitorear el estado del audio en tiempo real durante el desarrollo:
pw-top: Muestra errores en tiempo real (columna ERR) y el estado del buffer.journalctl --user -u pipewire: comprueba si hay desconexiones de hardware.