OSS4, Open Sound System v. 4, es una actualización del viejo OSS que era el estándar de Linux antes de Alsa y PulseAudio, y que ahora es open source. Lo conocí porque me harté de la lentitud de PulseAudio en mi prehistórica computadora (es bajísima la latencia que tiene 😀 ), pero ya no lo dejé después de comprobar lo bueno de su sonido.
La guía original (una fusión simplificada de varias fuentes) es tan vieja como Ubuntu Hardy (el 8.04) pero actualizada cuando Lucid (el 10.04) y Precise (el 12.04), y ahora la actualizo para Trusty (el 14.04). Con cada versión de soporte a largo plazo, vaya. En cuanto a la más reciente LTS (Xenial, el 16.04), no tengo idea, pero sí me consta que OSS4 como viene no funciona bajo el kernel 4.4.0-36; sin embargo, hay parches y advertencias útiles para compilarlo para los kerneles 4.0 en esta página del foro de OSS4.
Las notas posteriores a Hardy van después del salto. Dedicada a LeonIrv, esperando que siga usando Linux.
05/11/2011, 03:06.
Manda a Pulse (y Alsa) al diablo: cómo instalar OSS4 con máxima calidad.
OSS4 suena mucho mejor, pero más de un programa puede no darles sonido (p. ej., Skype en Hardy no he logrado hacerlo sonar). Sé que Mplayer y Gstreamer son compatibles. Puede con los midis vía Timidity, pero hay que reconfigurar el programa para eso. La hibernación lo echa a perder sin más arreglo que el reinicio (de Hardy a Trusty, por lo menos), así que hay que desactivarlo antes y reactivarlo después. De todas formas, lo recomiendo en específico a los que valoran la calidad del sonido por sobre la comodidad.
Para probar, bien pueden bajar una de las versiones con licencia comercial: http://www.opensound.com/download.cgi (hay paquetes instalables ahí para varios sistemas operativos). Pero el mejor sonido se consigue con el código fuente. Por eso les presento esta guía semipulida para compilar con TODA la calidad habilitada. Traté de que fuera tan general que pudiera servir en todos los S. O. compatibles, pero trae también notas específicas de Ubuntu y Hardy en particular.
Fuentes:
Guía general de OSS4
Guía de OSS4 en Ubuntu
Guía para compilar OSS4 en Karmic con la máxima calidad habilitada
Guía de OSS4 en Lucid
Las páginas de man que vienen incluidas con OSS4. :p
Se necesita gcc o equivalente y los headers y -dev del kernel, aparte de las librerías de GTK para tener control gráfico. Si tienen gawk, mejor.
Pasos:
*Quitar PulseAudio. (Opcional).
*Quitar Alsa (SIN tocar alsa-base NI alsa-utils en Hardy).
*Pasarle el control a OSS y librarse de interferencias. En Ubuntu hay que ejecutar en terminal sudo dpkg-reconfigure linux-sound-base y escoger OSS, de Intrepid para abajo también habría que mandar a la lista negra de modprobe todos los módulos que comiencen con snd y soundcore.
*Conseguir el código fuente, ya sea del Mercurial (NO recomendable) o del último de los paquetes descargables, que vienen en dos sabores: testing o stable (escojan este último, no se pierden de mucho y funciona excelente). Más información sobre para qué sistemas operativos es cada división aquí. (Si da flojera revisar, informo que la versión GPL sirve para prácticamente todos y se puede descargar actualizado desde un mismo enlace: éste).
*En el archivo configure, cambiar el 3 de GRC_MAX_QUALITY=3 a 7.
*Crear una carpeta vacía y entrar a ella en terminal. Ejecutar su archivo «configure» así (puedes incluir más opciones):
NO_WARNING_CHECKS=yes /dondeelcódigofuente/configure –enable-libsalsa=NO
(La última opción, si estás en Linux).
*Modificar el archivo «./kernel/framework/include/local_config.h»: nuevamente cambiar el 3 a 7 en
#define CONFIG_OSS_GRC_MAX_QUALITY 3
*Compilar.
*Hacer el paquete (make package/make deb/make tarball) e instalarlo, o instalar directamente con make install, todo en terminal… y todo con sudo si estás en Ubuntu.
*Reiniciar.
*Ejecutar osstest (la prueba de sonido que viene incluida) en la terminal, para descartar problemas.
Para escoger las opciones que dan mejor sonido en la terminal (también puede hacerse en modo gráfico con ossxmix):
ossmix vmix0-src Production
ossmix spdout.pro Professional
(Oct. de 2016: El segundo comando ya no me funciona… Uso la versión 4.2 build 2011, si mal no recuerdo).
Pueden cambiar igualmente la tasa de muestreo (el sample rate) por defecto de cada dispositivo con [sudo] vmixctl rate dispositivo nuevatasademuestreo. Para saber cuáles son sus dispositivos, ejecuten un ossinfo -a (el que me interesaba en mi caso, los altavoces integrados, es el primero que aparece y viene aparte), si no saben las tasas de muestreo que permite su tarjeta de sonido pueden consultar en lo que les muestre ossinfo -a -v2 sobre los dispositivos.
Para guardar la configuración, ejecuten [sudo] savemixer. En el archivo «/usr/lib/oss/conf/osscore.conf» se pueden modificar varios parámetros que afectan la calidad de sonido: si lo modifican, que sea con MUCHO cuidado (guarden respaldo por si acaso).
Cuando requieren deshabilitar OSS4 (para probar un cambio en la configuración, por ejemplo), el comando que lo hace es [sudo] soundoff (el cual, por cierto, también ejecuta savemixer); si no funciona y muestra rutas es porque son programas que aún lo están usando y tienen que cortar su ejecución (p. ej., con killall programa). Se vuelve a cargar OSS4 con [sudo] soundon. Desgraciadamente, no sirve para arreglar el que OSS4 se estropee regresando de una hibernación (no en Hardy): después de intentarlo y checar con osstest, la música de prueba se corta de repente y el programa diagnóstico marca error.
Seguir leyendo →