Al instalar FreeBSD-13.2 hay que veces en que el sonido no funciona adecuadamente ya sea por que está mal configurado o porque no se han cargados los drivers adecuados, pero el general debería funcionar bien, sin embargo cuando tenemos problemas debemos tener en cuenta, algunos detalles que debemos considerar.
Cuando nuestro sistema tiene varias salidas de audio, seguro que la salida por defecto que el sistema toma por defecto es la salida que no queremos o que no usamos, ahora veremos como reconfigurar el sonido en FreeBSD.
Para saber que sistema de sonido tenemos en nuestro sistema, debemos trabajar con la cuenta de root
y ejecutar en una terminal los siguientes comandos:
# dmesg | grep pcm pcm0: <Intel Haswell (HDMI/DP 8ch)> at nid 3 on hdaa0 pcm1: <Realtek ALC283 (Left Analog)> at nid 33 and 25 on hdaa1 pcm2: <Realtek ALC283 (Internal Analog Mic)> at nid 18 on hdaa1
Con esto nos damos cuenta que tenemos en salidas de audio de nuestro sistema, la salida HDMI de Intel y Realtek ALC283, esto es lo que ha detectado nuestro sistema operativo sobre nuestro hardware. Ahora deberemos configurar sobre que salida sacaremos el audio de nuestro sistema, para ello debemos saber como está configurado por defecto, para saber esto ejecutamos lo siguiente:
# cat /dev/sndstat Installed devices: pcm0: <Intel Haswell (HDMI/DP 8ch)> (play) default pcm1: <Realtek ALC283 (Left Analog)> (play/rec) pcm2: <Realtek ALC283 (Internal Analog Mic)> (rec) No devices installed from userspace.
Tal como podemos ver en la salida del comando, que nos muestra el estado actual de todos los controladores y canales PCM, tenemos definida la salida HDMI por defecto, lo que permite que el sonido salga por la interfaz HDMI al ser conectada a un dispositivo HDMI.
Lo que necesitamos hacer es redefinir la salida y que esta salga por el dispositivo pcm1 que es la salida de los auriculares que necesitamos utilizar.
# sysctl hw.snd.default_unit=1
Pero si tuviesemos otros dispositivos en nuestro hardware, como por ejemplo un dispositivo pcm7 para habilitarlo debemos poner en nuestra configuracion, lo siguiente:
# sysctl hw.snd.default_unit=7
Con esto probamos que el sonido funcione en nuestro sistema, pero no hemos dejado permanente este cambio, sólo hemos redefinido la salida y probado que está funcionando, que en este ejemplo hemos redefinido la salida al dispositivo numero 7 de los dispositivos de audio de nuestro hardware.
Para alterar esto necesitamos modificar la variable del kernel que define la salida, esto es la variable hw.snd.default_unit
que debemos modificar en el archivo /etc/sysctl.conf
, debemos poner la siguiente línea en el archivo:
# vim /etc/sysctl.conf hw.snd.default_unit=1
Con esto hemos dejado el cambio definitivo y al reiniciar la maquina no vamos a volver a tener problemas nuevamente, por lo que podremos utilizar esa salida de audio sin problemas.