Cómo instalar y configurar ALSA en Linux: Guía paso a paso
Introducción
El Advanced Linux Sound Architecture (ALSA) es una arquitectura de sonido diseñada para reemplazar al Open Sound System (OSS), el cual es el estándar actual para los servicios de sonido en Linux. La arquitectura de ALSA ofrece varias ventajas importantes sobre los controladores estándar:
- ALSA es más modular que los controladores de tarjeta de sonido estándar de Linux.
- ALSA es más fácil de instalar que otras arquitecturas de configuración de sonido en Linux.
- ALSA puede emular los controladores de sonido estándar de OSS.
- ALSA simplifica el proceso de configurar más de una tarjeta de sonido en tu sistema.
- ALSA utiliza una interfaz muy flexible, lo que facilita el desarrollo de aplicaciones que utilizan el sonido.
- ALSA se puede configurar como un controlador ficticio en sistemas que no tienen instalada una tarjeta de sonido.
Requisitos previos
- Una versión 2.2 o más reciente del kernel de Linux en un ordenador x86
- Un conocimiento básico de la terminal en Linux
- Experiencia en compilar e instalar el kernel de Linux
Con este conocimiento y experiencia, estás listo para empezar. La instalación de ALSA es un proceso de siete pasos:
- Descargar ALSA
- Determinar el tipo de tarjeta de sonido que utiliza tu sistema
- Compilar el kernel con soporte para sonido
- Instalar los controladores de ALSA
- Crear los archivos de dispositivo necesarios para ALSA
- Configurar ALSA para utilizar tu tarjeta de sonido
- Probar ALSA en tu sistema
Paso uno: Descargar ALSA
Desafortunadamente, los paquetes de ALSA todavía no están disponibles como programas ejecutables binarios. El código fuente de los paquetes de ALSA debe ser descargado desde el sitio web del proyecto ALSA.
Cómo utilizar Isearch para buscar archivos de texto en LinuxHay cuatro paquetes que necesitas instalar para ALSA:
- Alsa-driver: Los módulos del kernel de ALSA
- Alsaconf: La utilidad de configuración de ALSA
- Alsa-utils: La utilidad de configuración de tarjetas de sonido
- Alsa-lib: La interfaz para ALSA
Paso dos: Identificar tu tarjeta de sonido
Una vez descargado ALSA, el siguiente paso es identificar tu tarjeta de sonido. El sitio web de ALSA proporciona una lista de tarjetas y chipsets actualmente compatibles con ALSA. Si ya sabes qué tipo de tarjeta tienes, verifica en la matriz de tarjetas de sonido en el sitio web de ALSA para confirmar qué módulo se requiere. La instalación de ALSA también incluye una capacidad de autodetección, pero si este método no detecta tu tarjeta correctamente, utiliza uno de los siguientes métodos para determinar el tipo de tarjeta de sonido que tienes. En particular, necesitarás saber el chipset que utiliza la tarjeta para cargar el módulo correcto en el kernel.
Si utilizas una tarjeta de sonido PCI, utiliza el siguiente comando:
lspci
Este comando está incluido en el paquete pciutils y proporcionará información útil.
Guía para entender y gestionar los permisos de archivos y directorios en LinuxSi utilizas una tarjeta ISA, utiliza el comando:
pnpdump
Este comando forma parte del paquete isapnptools.
Si utilizas un sistema de arranque dual con Linux y Windows instalados, ejecuta Windows y ve a Inicio | Configuración | Panel de control | Sistema | Administrador de dispositivos para identificar tu tarjeta de sonido.
Una vez que hayas identificado tu tarjeta de sonido, estás listo para compilar el kernel de Linux con soporte para sonido.
Paso tres: Compilar el kernel con soporte para sonido
Cómo configurar un servidor Linux como puerta de enlace para una red localPara habilitar el soporte de sonido en un sistema Linux, se necesitan compilar dos características en el kernel:
- Soporte para módulos cargables
- Soporte para sonido
Este artículo no cubrirá los pasos necesarios para compilar e instalar un nuevo kernel de Linux. Se asume que tienes la experiencia necesaria para compilar el kernel con el soporte requerido.
Nota
Cuando compiles el kernel, elimina cualquier controlador de tarjeta de sonido del kernel antes de compilar. ALSA cargará el controlador requerido por tu tarjeta de sonido más adelante.
Paso cuatro: Instalar los controladores de ALSA
Una vez que se haya compilado e instalado el kernel, el siguiente paso es instalar los controladores de ALSA. Primero, extrae y descomprime el paquete alsa-driver con el comando:
Windows al alcance de Linux: Accede a recursos con smbmount y smbclienttar –Ixvf alsa-driver-0.5.10a.tar.bz2
El siguiente paso es ingresar al directorio que contiene el paquete alsa-driver con el comando:
cd alsa-driver-0.5.10a
Antes de ejecutar el script de configuración en este directorio, asegúrate de las opciones de configuración que necesitas. El paquete alsa-driver admite las siguientes opciones:
- -with-isapnp=yes/no/auto: Selecciona la utilidad ALSA isapnp o la herramienta de isapnp estándar de Linux. Si no utilizas una tarjeta de sonido ISA, selecciona "no".
- -with-sequencer=yes/no: Selecciona "yes" si se requiere un controlador MIDI.
- -with-oss=yes/no: Selecciona "yes" para que ALSA emule el sistema de sonido OSS.
- -with-cards: Proporciona una lista separada por comas de la tarjeta o tarjetas para las que ALSA proporcionará soporte. La opción "ALL" proporcionará soporte para todas las tarjetas de sonido compatibles con ALSA. La opción "dummy" se puede utilizar si no tienes instalada una tarjeta de sonido, pero necesitas soporte de sonido.
- -with-prefix=directorio: El paquete de directorio ALSA incluye archivos de encabezado en C que se utilizan para construir otras utilidades de ALSA. La ubicación predeterminada es /usr/include. Si se requiere otra ubicación, ingresa la ruta del directorio a esa ubicación (por ejemplo, /usr/local/include).
En mi sistema, utilizo una tarjeta de sonido Creative SoundBlaster ensoniq PCI, basada en el chipset ens1371. No necesito el paquete isapnp y no utilizo la emulación de OSS. Sin embargo, necesito soporte para MIDI y utilizo la ubicación predeterminada para los archivos de encabezado en C. Para configurar ALSA con estas opciones, utilizo el siguiente comando:
./configure –with-isapnp=no –with-sequencer=yes –with-oss=no –with-cards=ens1371
El siguiente paso es construir e instalar los módulos con los siguientes dos comandos:
make
make install
Los controladores y archivos de encabezado de ALSA se instalarán y se generará un script para cargar y descargar ALSA cuando se inicie y apague el sistema.
Paso cinco: Crear los archivos de dispositivo de ALSA
El siguiente paso es crear los archivos de dispositivo de ALSA. El paquete alsa-driver utiliza el script snddevices para crear estos archivos. El procedimiento que ALSA utiliza para interactuar con tu tarjeta de sonido depende en gran medida del sistema de archivos /proc. El script snddevices crea archivos de dispositivo dinámicos en /proc/asound/dev.
El script snddevices vincula /proc/asound/dev a /dev/snd y también crea entradas en /dev para proporcionar emulación de OSS. Para ejecutar el script snddevices, ejecuta el siguiente comando desde el directorio del paquete alsa-driver como root:
Consejos rápidos para la navegación de directorios en Linux: cd y pushd./snddevices
Nota
En la mayoría de las distribuciones de Linux, el grupo "audio" será el propietario de los archivos de dispositivo creados por este proceso. Solo los usuarios que sean miembros de este grupo podrán leer y escribir en el hardware de audio (tarjeta de sonido). Los usuarios que necesiten la capacidad de configurar la tarjeta de sonido deberán ser miembros de este grupo.
Paso seis: Configurar ALSA con alsaconf
La utilidad alsaconf facilita el proceso de configuración de ALSA. Esta utilidad es en realidad un script que permite al usuario seleccionar la tarjeta de sonido y luego genera automáticamente los archivos de configuración necesarios.
Recuerda que ALSA también requiere que los módulos del kernel se carguen para proporcionar soporte para una tarjeta de sonido específica. Hay dos formas comunes de cargar módulos del kernel. La primera es utilizar el comando modprobe para cargar el módulo adecuado cada vez que se requiera el soporte para la tarjeta de sonido. En mi sistema, ejecutaría el siguiente comando como root para cargar el módulo del kernel de mi tarjeta de sonido:
Cómo configurar y optimizar el enrutamiento estático en Linuxmodprobe snd-card-ens1371
Desafortunadamente, este método requiere que el módulo del kernel para tu tarjeta de sonido se cargue cada vez que arranques tu sistema. Otra forma de asegurarte de que se cargue el módulo del kernel adecuado al iniciar el sistema es asegurarte de que el módulo esté asociado con el sonido en el archivo /etc/modules.conf. Este archivo se lee cuando se inicia el sistema y le dice a modprobe qué módulos están asociados con qué dispositivo en tu sistema. La utilidad alsaconf se utiliza para automatizar el proceso de crear la entrada correcta en el archivo /etc/modules.conf. El primer paso es extraer y descomprimir el paquete alsaconf con el siguiente comando:
tar –zxvf alsaconf-0.4.3b.tar.gz
Luego, ejecuta el comando
cd alsaconf-0.4.3b
y luego ejecuta el comando
Cómo utilizar select() y poll() para multiplexar sockets de red./alsaconf
Cuando se ejecute alsaconf, sigue los siguientes pasos:
- Selecciona el tipo de tarjeta de sonido correcto para tu sistema.
- Elige un identificador para tu tarjeta o selecciona el predeterminado CARD_0.
- Selecciona "no more cards" cuando hayas hecho tus elecciones.
- El script alsaconf generará el archivo de configuración de /etc/conf.modules adecuado para tu sistema y tratará de iniciar ALSA.
Paso siete: Probar ALSA en tu sistema
Suponiendo que ALSA se inicie correctamente, se creará el directorio /proc/asound. Para confirmar que este directorio existe, ejecuta el comando
cat /proc/asound/devices
Si el directorio se ha creado, la salida de dicho comando será similar a la siguiente:
Cómo convertir una caja de Linux en un router OSPF y BGP0: | [0]: | Control |
6: | [0- 0]: | Mixer |
16: | [0- 0]: | Reproducción de audio digital |
24: | [0- 0]: | Captura de audio digital |
33: | : | Temporizador |
La salida exacta de este comando dependerá de la tarjeta de sonido que estés utilizando y sus capacidades.
Cuando ALSA se ejecuta por primera vez, todos los canales de audio se silencian por defecto. Esto significa que debes ajustar el nivel de volumen antes de poder escuchar cualquier sonido. Casi todas las tarjetas de sonido vienen con sus propios paquetes de reproducción y grabación, y en sistemas Linux, todas estas herramientas son controladas por ALSA. Con ALSA, puedes utilizar la utilidad de consola alsamix o el programa basado en GTK gamix para controlar el volumen de sonido y la configuración de grabación de tu sistema.
Si ejecutas GMIX (la herramienta de mezcla de GNOME), simplemente desactiva la configuración de silencio y ajusta los niveles de volumen de los canales que vayas a utilizar. Una vez que hayas configurado los ajustes deseados, guarda tu configuración con el comando
alsactl store
La utilidad aplay es una herramienta de consola que te permitirá reproducir sonidos de ejemplo en varios formatos. Si tienes Gnome instalado, prueba el comando
aplay /usr/share/sounds/startup1.wav
Si no escuchas ningún sonido, no te preocupes. Solucionar problemas de sonido en sistemas Linux no siempre es fácil, pero no es imposible. Primero, verifica tus altavoces. Asegúrate de que tengan energía y estén conectados correctamente a tu tarjeta de sonido. Si eso no funciona, lee las preguntas frecuentes de ALSA para posibles soluciones. Luego, revisa todo en el sistema.
Conclusión
ALSA es un proyecto en curso que tiene como objetivo reemplazar a OSS como el estándar de sonido en Linux. En este artículo, hemos cubierto un proceso paso a paso para instalar ALSA en tu sistema Linux. Hemos cubierto los paquetes necesarios para instalar ALSA, los procedimientos involucrados en la instalación de cada uno de estos paquetes y cómo utilizar las utilidades alsaconf y aplay para configurar y probar el sonido basado en ALSA en tu sistema.
En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Código abierto, allí encontraras muchos artículos similares a Cómo instalar y configurar ALSA en Linux: Guía paso a paso , tenemos lo ultimo en tecnología 2023.
Artículos Relacionados