Disponible PulseAudio 14 para mejorar la gestión de los dispositivos de sonido
freedesktop.org ha anunciado la publicación de PulseAudio 14, la última versión del servidor de sonido software libre y multiplataforma, si bien es conocido sobre todo por ser un componente básico del escritorio Linux. PulseAudio 14 llega con una gran cantidad de cambios que abarcan muchas áreas, desde el comportamiento de los dispositivos de audio hasta algunos aspectos concretos de los entornos de escritorio, siendo GNOME el beneficiado en esta ocasión.
Lo primero que se puede destacar es la inhabilitación por defecto del cambio de la salida hacia HDMI debido a que resultaba molesto para muchos usuarios. Los encargados del proyecto explican que la implementación base de PulseAudio no tiene este comportamiento, pero la realizada por algunas distribuciones sí. “Este cambio no fue intencional y provocó un comportamiento muy molesto en los casos en que la activación del monitor desde el modo de suspensión aparece como un evento de complemento en ALSA. Ahora ‘module-switch-on-connect’ tiene una lista negra configurable que de forma predeterminada evita el cambio a dispositivos HDMI.”
En segundo lugar tenemos cosas relacionadas con las transmisiones y los receptores, como el cambio de los nuevos flujos de transmisión que se enrutan del antiguo receptor predeterminado al nuevo (aunque esto no afectará a las transmisiones movidas manualmente), que a partir de ahora se interpreta como una eliminación manual el hecho de que el usuario mueva una transmisión de un receptor que no es el predeterminado a otro que sí lo es, el restablecimiento al transmisor por defecto cuando uno es eliminado o marcado como no disponible, se ha marcado el módulo ‘module-rescue-streams’ como obsoleto y se ha añadido la opción ‘rescue-streams’ en el fichero “daemon.conf”.
En lo que respecta a GNOME, se ha aplicado una solución en la configuración del sonido del entorno. Así, cuando un usuario intenta cambiar las transmisiones a un dispositivo que ha seleccionado, también se cambia la base de datos de enrutamiento para que las aplicaciones que no se están ejecutando se enruten hacia el nuevo dispositivo, ofreciendo de esta manera una experiencia consistente. Sin embargo, PulseAudio interpretaba esto como que todas las aplicaciones habían sido movidas manualmente por el usuario, lo que terminaba causando problemas cuando el usuario volvía al dispositivo predeterminado. Esto se hacía así debido a que la alternativa era peor, y era el hecho de que las transmisiones no se movieran al dispositivo predeterminado.
Debido a que PulseAudio 14 maneja los movimientos de transmisiones de forma automática, ya no hay razón para realizar un movimiento manual de las transmisiones y las modificaciones de la base de datos por parte de GNOME. Eso sí, hay tener en cuenta que es necesario introducir cambios en el entorno de escritorio para que pueda usar las mejoras implementadas servidor de sonido.
GNU/Linux lleva tiempo picando piedra (sobre todo por iniciativa de Valve) para convertirse en un sistema operativo para gaming, y si bien son los drivers gráficos los que suelen llevarse el protagonismo en esta materia, PulseAudio es otro componente a tener en cuenta a pesar de tener menos protagonismo en los medios. La decimocuarta versión mayor del servidor de sonido viene con un mejor soporte para los cascos/auriculares gaming que funcionan mediante interfaz USB. De hecho, soporta configuración personalizada para los siguientes modelos: HyperX Cloud Orbit S, LucidSound LS31, Razer Kraken Tournament Edition, SteelSeries Arctis 5 (2019 edition), SteelSeries Arctis Pro (2019 edition).
En lo que respecta a la interacción con ALSA, “en algunos equipos puede haber varios controles de ALSA mixer con el mismo nombre, en cuyo caso se distinguen por su índice. PulseAudio siempre ha usado solo el control con índice 0, pero ahora es posible escribir la configuración para hardware que requiere el uso de índices distintos al cero. Donde se podía usar un nombre de control del mezclador antes, ahora es posible agregar el índice al nombre usando una coma como separador. Por ejemplo: auriculares, 1.”
En PulseAudio 14 “es posible establecer las funciones previstas para los dispositivos en la configuración del perfil de ALSA”, para lo cual se ha añadido “una nueva opción ‘intended-roles’ en la sección [Mapping] de los archivos de configuración del conjunto de perfiles. La nueva opción se puede usar para establecer la propiedad ‘device.intended-roles’ para el receptor o la fuente a la que corresponde la asignación. Actualmente usamos esto para etiquetar el receptor de voz de los auriculares para juegos.”
Pero no solo características quiere ganar PulseAudio, sino también soltar lastre del que puede prescindir. Aquí se puede destacar el fin del soporte para GConf y EsounD, un proceso que de cumplirse los plazos previstos culminaría con el lanzamiento de la decimoquinta versión del servidor.
La forma más fácil de obtener PulseAudio 14 es usando alguna distribución rolling release con una política de actualizaciones agresiva como la de Arch Linux. El resto, sobre todo aquellos que usen distribuciones de lanzamiento puntual, tendrán que compilar desde el código fuente o esperar al lanzamiento de la próxima versión del sistema que estén usando, aunque la realidad es que la actualización de este componente no suele ser urgente para la inmensa mayoría de los usuarios. Para saber todos los detalles sobre este lanzamiento se pueden consultar las correspondientes notas.
Para terminar, y a pesar de seguir siendo un proyecto en desarrollo, el fin de PulseAudio podría no estar demasiado lejos, ya que en Fedora se ha propuesto usar PipeWire por defecto en la siguiente versión de la distribución. Ya se sabe, cuando Fedora da un paso, es cuestión de tiempo que las demás distribuciones la terminen siguiendo, pero esto es solo de momento una propuesta.
Imagen: Pixabay