¿Cómo corrijo el sonido del Realtek ALC892 en Ubuntu 20.04LTS? ¡Descamisados! Siempre he dicho que llevo en mis oídos la más maravillosa música, que es para mí la palabra del Pueblo Argentino. Pero esto es así porque uso auriculares y software para escuchar música liberaedo bajo Licencia GPLv3 . El camino de la Liberación no es ajeno a los escollos y al barro. Quien no lo comprenda, tenderá a fracasar. Es un verdadero Conductor aquél que aprende a superar las lides y determinar con su acción luminosa el sendero que los demás habrán de seguir. Pues bien señores, en Ubuntu Mate 20.04LTS Focal Fossa, un inconveniente nublaba mi día peronista. Al reproducir audio de cualquier tipo, y tras detener la reproducción, notaba que a los pocos instantes comenzaban a oírse a través de los cascos una serie de sonidos intermitentes o clics, similares a los que se obtienen cuando se conecta un audífono cuando los altavoces están encendidos. Al producirse aproximadamente cada medio segundo, se hacía algo extremadamente molesto. Asimismo, podía notarse en repetidas ocasiones "saltos" en el control de volumen, sobre todo cuando se alcanzaba un "pico" en el sonido. Esto se producía ya sea en la terminal (ya sea con los controles de volúmen pulsemixer o el Alsamixer) o en el control gráfico de Ubuntu. Notablemente, se hizo totalmente inefectivo el control de "automute" de Alsamixer. Un problema de este tipo requiere una acción decidida, y para solucionar estos "pop-pop-pops" no cardíacos habremos recurrir a una acción de conjunto, que es la manera en la cual deben hacerse las cosas. En primer lugar es definir qué dispositivo de audio es el que tenemos instalado en nuestro sistema. Esto es así porque la mayoría de las veces, se utilizan meros "chipsets" integrados en la placa madre, en lugar de las añoradas plaquetas de sonido. Para ello abrimos una terminal con Ctrl+Alt+t y nos informámos de qué módulo de audio está cargado en memoria. Ello lo haremos con: cat /proc/asound/modules En este caso, se nos informa que es el inefable snd_hda_intel, empleado por multitud de dispositivos de audio integrado diferentes. También podríamos chequear el nombre técnico del dispositivo para el sistema con: lspci | grep Audio 00:1b.0 Audio device: Intel Corporation 5 Series/3400 Series Chipset High Definition Audio (rev 06) En este caso he logrado rastrear al culpable de los "saltos" y "pops": se trata de la rutina de ahorro de energía del controlador de sonido snd_hda_intel, el cual parecería intentar apagar y reencender las salidas de audio, con el molesto resultado que os he descripto anteriormente. Es posible modificar a mano la configuración de la funcionalidad de ahorro energético para que no haga el "latido intermitente", modificando el archivo /sys/module/snd_hda_intel/parameters/power_save. Siendo un fichero "binario", el mismo contiene un simple 1 si la funcionalidad de ahorro de energía está activada, o un 0 si la misma está apagada. Siguiendo este camino, bien podríamos resolver el problema ingresando en nuestra terminal el siguiente Comando de Organización: sudo echo 0 > /sys/module/snd_hda_intel/parameters/power_save ...y tras ingresar nuestra contraseña de conductor, la función de ahorro de energía debería desactivarse. Ahora bien, esto funcionará hasta reiniciar el sistema, momento en el cual deberemos repetir esta acción. Nuestro Movimiento debe buscar soluciones permanentes a los problemas permanentes. Es increíblemente molesto hacer esto, pues deberíamos realizarlo toda vez que arrancamos nuestro sistema de cómputo, debiendo además tener que ingresar nuestra contraseña de Conductor para que surta efecto. Para evitar ello y realizar lo procedente de forma automática, en Ubuntu 20.04LTS Focal Fossa no tendremos más remedio que reactivar la olvidada funcionalidad del archivo /etc/rc.local. Este se trataba de un fichero de configuración que se autoejecutaba después de dar inicio al sistema, pero antes de que el o los usuarios ingresaran a su propia sesión de trabajo. En el Ubuntu actual el fichero rc.local ya no viene activado por defecto, pero podremos activarlo como os he explicado detalladamente aquí. Conforme hayamos realizado lo allí indicado, y comprobado el funcionamiento, podremos editar el archivo /etc/rc.local por medio del siguiente comando: sudo nano /etc/rc.local Esto abrirá el editor peronista GNU Nano con fichero /etc/rc.local. Para agregar el comando que desactive el ahorro de energía del controlador snd_hda_intel toda vez que se inicie el sistema, agregamos antes de la última línea - la cual siempre debe contener "exit 0" - el consabido comando: echo 0 > /sys/module/snd_hda_intel/parameters/power_save Una vez editado, podremos guardar el archivo /etc/rc.local con Ctrl+o y salir del editor GNU Nano con Ctrl+x. Eso es lo más complejo y ya lo hemos realizado. El último paso podría ser opcional, pero también he tenido que hacerlo en mi caso, con el adaptador Realtek ALC892 en Ubuntu. Consiste en editar el archivo de configuración alsa-base.conf. Ingresamos el comando: sudo nano /etc/modprobe.d/alsa-base.conf Se abrirá el editor Nano, y al final del mismo agrego el siguiente contenido: # código peronista para que no se entrecorte el audio # al máximo con la Realtek ALC892 en Ubuntu 16.04LTS: options snd-hda-intel model=asus-mode5 Guardamos y salimos con Ctrl+o y Ctrl+x. Naturalmente, para que todo lo realizado surta efecto, debemos reiniciar el equipo. Podremos hacerlo desde la terminal con: sudo reboot Y ya tendremos sonido Realtek ALC892 sin cortes en Ubuntu. Si no fuese la solución en su adaptador de sonido en particular, podrçian revertir o modificar el cambio realizado en alsa-base.conf.