sábado, 17 de enero de 2009

9 comentarios. ¡Te estamos esperando!

Sonido en Ubuntu Studio

Hace poco me instalé, en una partición libre de mi ordenador de sobremesa, la versión para músicos de Ubuntu: Ubuntu Studio. Su liberación pública fue anunciada oficialmente, a finales de octubre de 2008, pero no lo he instalado antes porque me he llevado chascos en versiones anteriores. Pero con Ubuntu Studio, basada en Intrepid Ibex, he conseguido, por fin, que el sonido funcione para lo que yo quiero: producir música por ordenador sin Windows.

Configuraremos el sonido para tal propósito, como dije al final de la instalación de Intrepid Ibex, y en una próxima entrega, conseguiremos hacer sonar Muse Score, el magnífico editor de partituras del que os hablé en su momento.

Voy a obviar el proceso de instalación de Ubuntu Studio. Aunque la instalación es en un entorno de texto, es muy similar a la de Intrepid Ibex, así que podéis consultar aquí dicho proceso.

Quienes estén interesados, aquí dejo un enlace para la página de descargas de Ubuntu Studio Intrepid Ibex. Además de las imágenes ISO de DVD, hay archivos de BitTorrent, para quienes preferís descargar con ese protocolo.

Tened muy en cuenta la arquitectura del ordenador donde lo instalaréis. Para una gran parte de las máquinas de escritorio valdrá la imagen que acaba en i386. Para los ordenadores basados en AMD64 y similares, hay una imagen de DVD propia. En mi caso concreto, lo instalé en mi AMD64.

Bueno, lo primero que hay que hacer para usar el sonido con fines semiprofesionales o profesionales, es entrar en la configuración del audio en Ubuntu:

Como siempre, puedes ver las imágenes en tamaño real pinchando en ellas. En Sistema/Preferencias/Sonido, te saldrá ésto:

Mi tarjeta de sonido es una Creative Sound Blaster Live! USB. Pero selecciono la opción ALSA - Advanced Linux Sound Architecture. Enseguida enteremos por qué he hecho ésto, en lugar de seleccionar mi tarjeta directamente. Ahora, vía menú, abrimos Jack:

¿Qué es Jack? Para los que entendéis de audio en Windows, es como si unierais lo mejor de ASIO con un ReWire mejorado. Me explico: por un lado, es un driver de baja latencia, pero también centraliza los flujos de audio y MIDI dentro de Linux.


Además, puedes reproducir, de manera sincronizada, varias aplicaciones de audio a la vez, como harías con ReWire, pero completamente centralizado en Jack. Enseguida veremos como funciona y lo entenderéis mejor.

Pero antes, vamos a hacer unos retoques a su configuración por defecto:

En esta imagen estamos asignando las entradas y salidas de audio a la tarjeta de sonido. Hay que comprobar este dato antes de arrancar Jack. Cada vez que inicia Ubuntu, asigna puertos a los diferentes dispositivos de audio conectados al PC. A veces me asigna como salida de audio mi teclado MIDI, en tal caso, no va a funcionar.

Si os fijáis más arriba, donde pone driver, está seleccionado ALSA. Por eso elegí esa opción en la configuración de sonido del sistema: Jack se servirá de mi tarjeta de sonido vía ALSA.

Guardamos con OK, y nos disponemos a arrancar Jack. Con arrancar, me refiero a poner en marcha el motor interno del programa. Hasta ahora sólo tenemos su interfaz gráfica abierta. Para arrancar, le damos al Play grande:


En este punto, recomiendo que cerréis el navegador de internet, o que cerréis pestañas o ventanas dentro de él, y cualquier programa pesado para la CPU y la RAM. De lo contrario, Jack no arrancará. Una vez tomadas dichas precauciones, arrancamos, y como en un coche viejo, tras unos segundos de suspense...

Starting... Pueden ser uno o dos segundos, pero se hacen eternos :P .


¡Jack ha arrancado! Si no lo hiciera, sabed que es, bien porque hay mucha carga en el ordenador en ese momento, bien porque no está correctamente configurado.

Ahora que hemos logrado hacer funcionar Jack, vamos a jugar un poco. Elijo el sinte ZynAddSubFX:


A continuación abrimos el panel de conexiones de Jack. Está en el botón Connect:

ZynAddSubFX se conecta por defecto a la salida principal de audio, pero al tocar con el teclado, no suena nada. Habrá que comprobar la conexión MIDI. La encontraremos en la pestaña ALSA:


Efectivamente, el teclado estaba sin conectar. Ésto se consigue arrastrando desde el nombre del teclado a la entrada MIDI del sinte. También se puede hacer seleccionando entrada y salida, y luego darle al botón connect.

Llegó la hora de la verdad, pruebo a tocar unas notas y...


¡Está sonando! Vale, vosotros no lo podéis oír ahora, pero podéis ver la barra azul que indica que el instrumento está generando sonido. Es un sonido de lo más soso, porque es el sonido por defecto, pero hay unos excelentes presets para empezar.

Aún no estoy en disposición de producir música. Aún tengo que aprender a utilizar los secuenciadores que se incluyen en el paquete como Ardour, Muse... Rosegarden no venía en el DVD preinstalado, lo digo por si esperáis encontrarlo. Lo tuve que descargar de aquí por separado.

Por cierto, os dejo un enlace donde encontraréis otros enlaces a páginas de software para GNU/Linux.

En la próxima entrega, cómo hice sonar MuseScore en Ubuntu Studio.

9 Comentarios - Haz el tuyo aquí:

Kaux dijo...

Excelente Jose. Este es un proyecto que tengo para en mi blog desde el principio, pero no he podido realizarlo, que bueno que lo haces vos. adelante.

Mijel GLLV dijo...

Excelente reseña! muy bien explicada y el incluir imagenes resulta genial.

Entonces... Jack utiliza muchos recursos de procesado?

Cada vez que arrancas el ubuntu hay que configurar salidas y entradas del hardware de audio?

Saludos José!

José GDF dijo...

Kaux, todo es cuestión de ponerse, aunque si algún día te decides a probar Ubuntu o cualquier distro de GNU/Linux, a no ser que tengas la suerte de que te reconozca a la primera todo el hardware, tienes un trabajo enorme por delante. Por eso he tardado tanto en publicar algo así, tengo que asegurarme que funciona antes de hacerlo, para ser coherente con mis objetivos.

Ánimo y a continuar adelante (tú sabes por qué lo digo).

Mijel: Jack no utiliza especialmente muchos recursos de procesado en principio, pero por la experiencia que tengo, si hay programas abiertos que demandan CPU, Jack no arranca, supongo que para asegurarse margen una vez iniciado. Tocando el sinte del ejemplo rondaba un 3% de uso de CPU, aproximadamente, sin oírse clics en ningún momento y sin nada de latencia, al menos para mi gusto (y soy muy exigente en el tema de la latencia).

En cuanto a lo de configurar salidas cada vez que inicia Ubuntu, sólo me refiero a la configuración de Jack. Hay algo de aleatorio en el proceso. Hay veces que intento arrancar Jack, no me deja, y es porque automáticamente se ha asignado como dispositivo de audio al teclado. Pero sólo es cambiar ésto manualmente y ya está, y tampoco pasa todas las veces.

Muchas gracias a los dos por vuestros comentarios. Valoro muy especialmente vuestras opiniones y planteamientos de dudas en este tipo de entradas.

Uve dijo...

mare mia :S
Esto es más complicado que el código html jajajjaa

Pero si lo que hice ayer era casi todo copiar y pegar!!! bueno... dedicarle mucho rato con las etiquetas eso si >< pero ya sabes: Situación actual personal + descansos + días sola= Bajón importante. Asi que es preferible no pensarlo mucho que llorando no se va a arreglar... y pues me entretengo con lo que pillo... y así así me fui metiendo en toda la plantila ja ja ja (pobre európides mira que si se la rompo :$) Un besote!

José GDF dijo...

Pues mira, Uve: a mi los códigos se me atragantan, pero los programas para producir música me encantan, aunque a veces me saquen de quicio...

Tú guarda siempre copia de seguridad antes de hacer nada. ¡Ah! Y si algún día quiero hacer un cambio radical al diseño de este bog, ya sé a quién recurrir ;)

Otro besote!

Irwin Céspedes B dijo...

Hola, no uso ubuntu studio, uso el Ubuntu Intrepid Ibex AMD64 y con Mixxx los efectos de compiz lo alteran en el Waveform. Ocurre lo mismo en Ubuntu Studio

José GDF dijo...

Hola, Irwin:

No te puedo contestar con propiedad a esta pregunta. El motivo es que no he conseguido activar los efectos visuales de Compiz en Ubuntu Studio en mi amd64, y creo que es un tema de drivers de la gráfica.

Como tampoco es una cosa que la necesite, no me lo he mirado, pero dentro de poco instalaré la última versión de Ubuntu en el portátil, y seguramente también en una partición libre del amd. Si quieres, instalo compiz, pruebo Mixxx y te cuento.

De momento, te queda la solución temporal de desactivar los efectos visuales mientras pinchas con Mixxx, para poder visualizar correctamente las formas de onda para sincronizarlas... O sincronizar las canciones de oído con unos cascos, si tu tarjeta de sonido lo soporta.

Yo lo intenté con la mía una vez y me salió bien.

Por cierto, gran programa para pinchar.

Saludos, Irwin :H

Pablo dijo...

Hola José,

En el setup de jack, campo interfaz, puedes escribir el código alfanumérico de identificación de tu tarjeta, en lugar del número que, como has observado, puede cambiar en diferentes arranques del ordenador. Esta identificación es la que aparece entre corchetes en la salida del comando "cat /proc/asound/cards". Supón que pone [Tarjeta ]. Entonces pones en el campo de interfaz hw:Tarjeta
Ejemplos:
hw:M2496
hw:Intel

También hay formas de conseguir que los números de tarjeta no cambien nunca editando un archivo de configuración de alsa pero lo explicado arriba es lo más limpio, sencillo e infalible.

Esto es importante porque es un problema muy común y es motivo de desesperación y frustración. ¿Y ahora por qué no funciona jack? Hasta que te das cuenta de que el hw:0 ya no es lo que era antes, a cambiarlo... Y luego el rollo de tener que comprobar cada vez por que sabes que cuando menos lo piensas se van a cambiar otra vez los números de tarjeta... No más rollo con el truco de arriba.

Otra cosa que te voy a corregir si no te importa, con todo mi agradecimiento y admiración por el gran trabajo que haces: Jack pasa olímpicamente de cualquier cosa que selecciones en el applet de sonido de gnome. No es necesario abrirlo.

Saludos, Pablo

José GDF dijo...

Muy buena aportación, Pablo. No conocía ese truco.

En mi caso, la salida de la línea de comandos me da esto:

cat /proc/asound/cards
0 [Xboard49 ]: USB-Audio - E-MU Xboard49
E-MU Systems, Inc. E-MU Xboard49 at usb-0000:00:13.1-2, full speed
1 [External ]: USB-Audio - SB Live! 24-bit External
Creative Technology SB Live! 24-bit External at usb-0000:00:13.1-1, full speed
2 [Track ]: USB-Audio - Fast Track
M-Audio Fast Track at usb-0000:00:13.2-1, full speed


Está claro que si quiero que solo funcione la Fast Track, tengo que poner hw:Track. Eso estoy haciendo, y sin problemas. Ahora ya sé que va a funcionar siempre Jack con la Fast Track, aunque conecte o desconecte dispositivos.

En cuanto al gestor de sonido de Gnome, estoy completamente de acuerdo contigo. Si tienes bien configurado Jack, ese paso sobra. Lo que pasa es que alguien puede tener mi mismo caso: portátil, con tarjeta interna, al que le enchufa una externa. Para tener el control del sonido todo por la externa, prefiero hacerlo así.

Más que nada para no volverme loco, como me ha pasado, bajando el volumen (o subiendolo) desde el icono del altavoz, y que no pase nada. Por ejemplo, si quiero ver un video en YouTube.

En una sola frase: asegurarme que todo el sonido del sistema pase por la misma tarjeta. No sé si me he explicado bien.

Un saludo y gracias por ese magnífico truco que no conocía de Jack. :)

IMPORTANTE, antes de comentar, lee ésto:

Si tu comentario es una consulta, intentaré contestarte a la mayor brevedad posible.

Cualquier persona puede comentar en este blog. Si no estás registrad@ en ningunos de los servicios indicados y tampoco tienes web o blog, usa la opción Nombre/URL, pon tu nombre o nick y deja URL en blanco.

Si comentas con el perfil de Blogger activado, marca la casilla Enviar por correo electrónico comentarios de seguimiento. Así, si preguntas algo, sabrás de mi respuesta inmediatamente a través de tu e-mail.

Si lo que quieres es ponerte en contacto directamente conmigo, dispones para ello de un formulario de contacto.

En cualquiera de los casos, se agradecen tus aportaciones.

Aviso: Se borrarán todos los comentarios con publicidad descarada y enlaces que no aporten nada de interés (spam).

Para comentar, usa una de estas opciones:

 
Creative Commons License
Ni soy Informático, ni soy Músico
de José GDF
está bajo una licencia
Creative Commons Reconocimiento-No comercial-Compartir bajo la misma licencia 3.0 España.

Versión móvil | Este blog ha sido visitado Contador de visitas únicas veces desde el 1 de enero de 2011.

Diseño original de BloggerThemes
Completamente destrozado por José GDF

Logo por Bonzu