Alsa
De Arch Linux Comunidad Hispana
Tabla de contenidos |
[editar] Instalación
[editar] Drivers para el kernel
Alsa ya esta incluido en los kernels de la serie 2.6 y en todos los paquetes incluidos en kernel26*. Si compilas tu propio kernel, no olvides activar el driver alsa correcto.
Todos los modulos necesarios deberian ser detectados y cargados por udev. No deberia necesitar una configuración especial excepto en las tarjetas ISA. Nunca hay que usar alsaconf si se usa una tarjeta PCI o ISAPNP, ya que las entradas que se agregan al modprobe.conf podrian corromper la autodeteccion del udev.
[editar] Utilidades de Userspace
- Requerido para los programas nativos y la administración del alsa
# pacman -Sy alsa-lib alsa-utils
- Recomendado si quieres utilizar aplicaciones con soporte de sonido OSS en combinacion con dmix:
# pacman -S alsa-oss
Todos los programas de alsa tendrán muy probablemente alsa-lib como dependencia
[editar] Configuración
[editar] Asegurandote de que los modulos Alsa están cargados
Puedes asumir que el udev ha detectado tu tarjeta de sonido correctamente, incluyendo los módulos de la compatibilidad de OSS. Puedes comprobar esto con el comando
$ lsmod|grep '^snd' snd_usb_audio 69696 0 snd_usb_lib 13504 1 snd_usb_audio snd_rawmidi 20064 1 snd_usb_lib snd_hwdep 7044 1 snd_usb_audio snd_seq_oss 29412 0 snd_seq_midi_event 6080 1 snd_seq_oss snd_seq 46220 4 snd_seq_oss,snd_seq_midi_event snd_seq_device 6796 3 snd_rawmidi,snd_seq_oss,snd_seq snd_pcm_oss 45216 0 snd_mixer_oss 15232 1 snd_pcm_oss snd_intel8x0 27932 0 snd_ac97_codec 87648 1 snd_intel8x0 snd_ac97_bus 1792 1 snd_ac97_codec snd_pcm 76296 4 snd_usb_audio,snd_pcm_oss,snd_intel8x0,snd_ac97_codec snd_timer 19780 2 snd_seq,snd_pcm snd 43776 12 snd_usb_audio,snd_rawmidi,snd_hwdep,snd_seq_oss,snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_intel8x0,snd_ac97_codec,snd_pcm,snd_timer snd_page_alloc 7944 2 snd_intel8x0,snd_pcm
Si la salida parece similar, los drivers de sonido han sido detectados satisfactoriamente (notese que en este caso, snd_intel8x0 y snd_usb_audio son los drivers de los dispositivos de hardware). Se deberia comprobar que en el directorio /dev/snd existan los ficheros correctos del dispositivo:
$ ls -l /dev/snd/ total 0 crw-rw---- 1 root audio 116, 0 Apr 8 14:17 controlC0 crw-rw---- 1 root audio 116, 32 Apr 8 14:17 controlC1 crw-rw---- 1 root audio 116, 24 Apr 8 14:17 pcmC0D0c crw-rw---- 1 root audio 116, 16 Apr 8 14:17 pcmC0D0p crw-rw---- 1 root audio 116, 25 Apr 8 14:17 pcmC0D1c crw-rw---- 1 root audio 116, 56 Apr 8 14:17 pcmC1D0c crw-rw---- 1 root audio 116, 48 Apr 8 14:17 pcmC1D0p crw-rw---- 1 root audio 116, 1 Apr 8 14:17 seq crw-rw---- 1 root audio 116, 33 Apr 8 14:17 timer
Si existen al menos los dispositivos 'controlC0' y 'pcmC0D0p' o similares, los modulos de sonido han sido detectados y cargados correctamente.
Si este no es el caso, los modulos no han sido detectados. 'Si deseas alguna ayuda en el IRC o los foros, fijar por favor la salida de los comandos antedichos.' Para solucionar esto, puedes intentar cargar los modulos manualmente.
- Localiza el modulo de tu tarjeta de sonido: http://www.alsa-project.org/alsa-doc/ El modulo prefijado como snd- (por ejemplo: snd-via82xx).
- Carga los modulos
# modprobe snd-NAME-OF-MODULE # modprobe snd-pcm-oss
- Comprueba los ficheros de dispositivo en '/dev/snd'y/o comprueba si 'alsamixer' o 'amixer' tienen salida sonora
- Añade 'snd-pcm-oss' a la lista de modulos en '/etc/rc.conf' para asegurarte que se cargara la proxima vez
[editar] Comprobando la tarjeta de sonido
En esta seccion, asumimos que estas identificado como root. Si quieres realizar estos pasos como usuario sin privilegios, salta a la seccion Permisos de Configuracion.
- Dar sonido a los canales
Se recomienda usar 'alsamixer' 'NOTA:' Al usar 'alsamixer', pulsa M para quitar el mute
Tambien puedes usar 'amixer', pero es menos comodo
# amixer set Master 75 unmute # amixer set PCM 75 unmute
- Intenta reproducir un archivo wav
# aplay mywav.wav
- Permite a multiples programas reproducir audio a la vez
[editar] Permisos de Configuracion
Para poder usar la tarjeta de sonido, sigue los siguientes pasos
- Añade tu usuario al grupo de audio
# gpasswd -a USERNAME audio
- Desloguea del sistema a tu usuario y vuelve a entrar para comprobar que tienes permisos para usar el audio
[editar] Restaurar la configuracion de Alsa Mixer al inicio
- Ejecuta alsactl para que se cree '/etc/asound.state'
alsactl store
- Edita /etc/rc.conf y añade 'alsa' en la lista de demonios que se inician en el arranque. Esto guardará la configuracion y la cargará cuando se arranque el sistema.
[editar] ¿Sigue sin haber sonido?
Si tienes los drivers instalados correctamente, todo configurado y sigue sin haber sonido, añade la siguiente linea al /etc/modprobe.conf, esto deberia solucionar el problema (con el driver via82xx por lo menos)
options snd-NAME-OF-MODULE ac97_quirk=0
OTRA ALTERNATIVA
Si todo lo demas falla y no te preocupas de algun error que pueda surgir con udev (que son cuentos de viejas) usa alsaconf.
[editar] Obteniendo salida SPDIF
- En el control del volumen de Gnome, debajo de la pestaña de Opciones, cambia de IEC958 a PCM. Esta opción puede ser activada en las preferencias.
- Si no tienes el control de volumen de Gnome,
- Edita /etc/asound.state. Este archivo es donde se guarda la configuración de alsasound.
- Encuentra la línea que dice : 'IEC958 Playback Switch'. Cerca de ella encontraras una linea que dice: false. Cambia su valor a:true
- Ahora encuentra esta línea: 'IEC958 Playback AC97-SPSA' y cambia su valor a 0.
- Reinicia alsa.
Otra manera de activarlo al inicio de la sesión es:
- Agregar las siguientes líneas a /etc/rc.local:
# Use COAX-digital output amixer set 'IEC958 Optical' 100 unmute amixer set 'Audigy Analog/Digital Output Jack' on
Tu puedes ver las propiedades de tu tarjeta con:
amixer scontrols
[editar] ¿Pobre calidad de Sonido?
Si tienes baja calidad de sonido, intenta colocar el volumen de PCM (en alsamixer) a un nivel que el ganado (gain) sea 0.
[editar] Configuración de KDE
- Inicia KDE:
# startx
- Ajusta el volumen como lo deseas para el usuario actual (cada usuario tiene su propia configuración):
# alsamixer
- KDE 3.3 Ve al Menu KDE > Multimedia > KMix
- Escoge Preferencias > Configurar KMix...
- Desactiva la opción "Restore volumes on logon"
- Presiona OK, todo debería funcionar. Ahora el volumen será igual desde la consola como de KDE.

