No me reconoce mi interfase de audio

  • 1
#1 por maghoxfr el 11/07/2010
Hola, me compré una interfase de audio Alesis Multimix 4 USB. Tras hablar con varios usuarios de de la misma que me aseguraron que les funcionó sin tener que configurar nada (pregunté en ubuntuforums y linuxmusicians), no corrí con la misma suerte. La conecto y, sin embargo, no la veo en jack, intenté grabar en Qtractor pero no tuve éxito. Estoy investigando a ver si puedo hacerla funcionar pero la verdad que disto mucho de ser un experto.

Si alguien puede ayudarme con este problema, le estaré muy agradecido.
Matías
Subir
#2 por Pablo_F el 11/07/2010
Matías, si la tarjeta es class compliant (plug and play, no necesita drivers para Windows/Mac) no debería haber ningún problema. En el setup de qjackctl aparecerá como usb audio o similar. Asegúrate de cómo la identifica alsa viendo la salida de:

cat /proc/asound/cards

y que tienes el módulo snd-usb-audio cargado, con

cat /proc/asound/modules
o
lsmod | grep snd

Según tu post de ubuntuforums.org

cat /proc/asound/cards
...
2 [default ]: USB-Audio - USB Audio CODEC

Ahora mismo, tu tarjeta es hw:2 pero es mejor que la identifiques por hw:default (no confundir con la interface (default)) para asegurarte que jack siempre tome la misma, pues alsa no da siempre la misma identificación numérica en cada arranque.

Prueba con:

jackd -dalsa -dhw:default -r48000

Posiblemente sea necesario -n3

Si no es class compliant no creo que funcione.

Saludos, Pablo
Subir
#3 por maghoxfr el 12/07/2010
Muchas gracias Pablo, creo que vos me respondiste en ubuntuforums, ¿no? Ahora tengo otro problema, ¡salgo de uno para meterme en otro! pero igual no cambio Linux por nada. Te paso el link de donde posteé mi duda, si podés ayudarme te lo agradezco muchísimo.

Te resumo lo que me pasa:

La salida de auriculares de la interfase no tiene volúmenes independientes para la señal cruda y la procesada, o sea que cuando utilizo Rakarrak por ejemplo, escucho mi guitarra limpia, y de fondo, más bajo y con una latencia, la señal con efecto. Lo que quiero hacer es separar las señales; la salida la quiero mandar a la salida del onboard. Intenté hacer eso desde Preferencias de sonido pero no sólo no tuve éxito, sino que ahora no puedo grabar, no puedo usar los efectos y tengo un ruido constante. Lo raro es que el medidor de entrada (en preferencias de sonido) muestra un comportamiento normal, sube cuanto toco la guitarra y cuando no produzco sonido no se ve que haya ruido. Mi redacción es un poco confusa, en ese link tengo fotos de la configuración. La tarjeta funciona porque, no sólo pude usarla en ubuntu hace un par de días, sino que la probé hace unos minutos en Windows con Audacity y grabé sin problemas.
En qjackctl nunca vi la tarjeta bajo ningún nombre sino que es el mismo "system" de siempre, no me pareció un problema ya que la pude usar simproblemas hasta que comencé a experimentar para resolver el problema antes mencionado.

http://ubuntuforums.org/showthread.php?t=1529635

¡Muchas gracias nuevamente!
Subir
#4 por Pablo_F el 13/07/2010
Hola Matías,

No entiendo del todo como ruteas las señales a nivel de hardware. ¿Cuál es la salida que llevas a la entrada del amplificador + altavoces? ¿La de la tarjeta integrada? ¿Llevas la la salida analógica de la Alesis a la entrada analógica de la integrada? ¿Lo que quieres es que la entrada de audio sea con la Alesis y la salida desde la integrada? ¿No sería más fácil llevar la salida main de la Alesis al sistema de audio y prescindir por completo de la integrada? ¿La idea es capturar con la Alesis y reproducir la señal procesada (salida de Rakarrack) con los altavoces y al mismo tiempo poder monitorizar la señal limpia con la Alesis con los auriculares, si he entendido bien?

La denominación "system" es genérica. Es la misma para cualquier tarjeta. Pero lo primero es aclarar lo de arriba...

Solemos entrar unos pocos, a veces, no a cualquier hora y no siempre disponibles, en el canal de chat IRC #musica-linux en el servidor irc.freenode.net

Puedes entrar a través de pidgin, xchat o similar o también desde tu navegador, dirección http://webchat.freenode.net/
Pones un nick, el nombre del canal (almohadilla incluida) y conectas. Si te ves solo, paciencia.

Saludos, Pablo
Subir
#5 por maghoxfr el 13/07/2010
Gracias por el link del chat, de seguro me va a ser muy útil.

Alguien escribió:
¿Lo que quieres es que la entrada de audio sea con la Alesis y la salida desde la integrada?¿La idea es capturar con la Alesis y reproducir la señal procesada (salida de Rakarrack) con los altavoces y al mismo tiempo poder monitorizar la señal limpia con la Alesis con los auriculares, si he entendido bien?


Exacto. Porque no puedo controlar los volúmenes independientes de ambas señales. La tarjeta tiene un volumen para audífonos pero ya está predeterminado que lo que se escucha es el main, por lo que cuando además la utilizo como salida de audio de la pc, escucho el main de la consola (tarjeta) y la señal procesada (out de la pc) a la vez, lo cual es incómodo porque además la señal sin procesar suena mucho más fuerte que la procesada. Todo esto es por USB.

La idea que yo tengo es utilizar la tarjeta como IN via USB y la tarjeta integrada como OUT analógico (conecto un equipo de audio). Creí que desde Preferencias de sonido, eligiendo qué dispositivo usar para IN y cuál para OUT lo podría hacer pero algo hice mal porque me sucedió lo que mencioné antes. Esas son las fotos que muestro en ubuntuforums.

Alguien escribió:
¿No sería más fácil llevar la salida main de la Alesis al sistema de audio y prescindir por completo de la integrada?


De esa forma estaría en la misma situación en la que estoy ahora, solamente que en lugar de escuchar con los audífonos conectados a la tarjeta, lo haría con los mismos conectados al sistema de audio, pero las señales estarían mezcladas de la misma forma porque la señal que escucho con los audífonos conectados a la tarjeta es el main out.

Te agradezco nuevamente, espero haber aclaradoo un poco más. Cualquier cosa avisame que no tengo problema en repetir. Adjunto un esquema de lo que quiero hacer.
Archivos adjuntos:
esquema.png
BBCode:
Subir
#6 por Pablo_F el 13/07/2010
Lo que creo que haces mal es usar las preferencias de sonido de gnome. Esto trabaja con pulseaudio. Deberías hacer todo desde jack.

Una posible opción es que Jack trabaje con la Alesis y usar la utilidad alsa_out para que las salidas de la integrada te aparezcan como conexiones de jack, como sugerí a Irwin en un hilo reciente (está más elaborado ahí, con un link al manual de alsa_in alsa_out).

Prueba esto a ver si te sirve, una vez que lances jack con la interfaz hw:default (usb-audio) ejecuta el comando:

alsa_out -jIntegrada -dhw:NVidia

Y haces las conexiones necesarias en qjacktl o patchage.

Saludos, Pablo
Subir
#7 por maghoxfr el 14/07/2010
Hola Pablo, muchas gracias de nuevo.
Alguien escribió:
Lo que creo que haces mal es usar las preferencias de sonido de gnome. Esto trabaja con pulseaudio. Deberías hacer todo desde jack.

Tenés razón, estaba haciendo los cambios en pulseaudio, eso explica por qué tienen efecto en el reproductor de música y no en jack.

La verdad se me complica usar la terminal de forma extensa, no la domino bien y no soy programador. Leí el link que le pasaste a irwin ero es demasiado para mi, al menos en este momento, el tiempo es tirano.

Encontré una solución que por ahora me deja satisfecho, a menos que surja una mejor o mas elegante. Te detallo lo que hice.

En este link http://manpages.ubuntu.com/manpages/lucid/man1/jackd.1.html hay un párrafo que decía exactamente lo que yo quería hacer, y de forma concisa.

Alguien escribió:
Run jackd in full-duplex mode using the ALSA hw:0,0 device for playback and the hw:0,2 device for capture.

jackd -d alsa -P hw:0,0 -C hw:0,2


A continuación averigué el nombre de mis tarjetas con el comando

[code]aplay -l[/code]

Una vez hecho esto sustituí los nombres en el comando mencionado en la cita. Como es un poco engorroso abrir una terminal y escribir el comando cada vez que quiera tocar la guitarra, hice un lanzador.

No me parece una solución elegante sino ingeniosa, me gustaría que de alguna forma la acción del comando fuera ejecutada automáticamente. Si sabés cómo hacer ésto o tenés una solución mejor, es muy bienvenida.

Muchas gracias nuevamente
Matías
Subir
#8 por Pablo_F el 14/07/2010
Muy bien!

Un dispositivo para captura y otro para reproducción. Yo esto lo he probado con una tarjeta única, como en el ejemplo del manual, porque algunas tarjetas tienen más de un "dispositivo" pero no lo había intentado con dos tarjetas diferentes y tenía dudas de que iba a funcionar. Pero si funciona, genial.

Puedes configurar todas las opciones y parámetros de jackd desde qjackctl, incluido lo que necesitas. No es necesario que crees un nuevo comando. La opción -P de jackd es el "dispositivo de salida" que eliges en el setup de qjackctl y la opción -C el "dispositivo de entrada". (En ventana de mensajes de qjackctl puedes ver el comando entero, al principio, después de la línea "Jack está iniciándose...")

Yo tampoco soy programador y mi comienzo fue mucho más torpe que el tuyo, pero me he dado cuenta de que la posibilidad de lanzar aplicaciones en línea de comandos es una gran ventaja. Es vital que exista la forma gráfica, intuitiva pero lenta, pero también es muy bueno que exista la línea de comandos para lanzar programas. No es intuitivo pero es muy eficiente porque así se pueden montar miniprogramas tipo "receta de cocina" a gusto y medida de cada uno en un lenguaje de programación muy sencillo (bash o shell scripting), de forma que puedes lanzar varias aplicaciones de una vez, al iniciar el ordenador o con un click de ratón.

Existe el término medio: Un truco es añadir "/usr/bin/qjackctl" a las "Aplicaciones al inicio" (en Sistema -> Preferencias) y en el setup, pestaña otras, "iniciar el servidor JACK al cargar qjackctl". De esta forma cuando arranques el ordenador ya tienes jack funcionando con las opciones que pusiste la última vez.

Saludos, Pablo
Subir
#9 por maghoxfr el 14/07/2010
Al asignar las respectivas tarjetas a entrada y salida en Qjackctl no me deja iniciar jack, supongo que debe ser alguna otra opción de configuración que estoy ignorando. Con el método que describí en el post anterior sigue funcionando bien, pero tenés razón, sería lo mismo que configurar desde ql setup de Qjackctl, por eso me parece raro que tenga éxito con el comando pero no con la GUI. Las opciones que siguen en el setup no sé lo que significan, "Canales de entrada", "Número de canales de salida", voy a tratar de averiguar cómo hacer esto sin usar el lanzador, si tenés idea soy todo oídos.

Ahora también tengo una lucha vs los drivers de mi tarjeta de video jaja.

Gracias de nuevo
Subir
#10 por Pablo_F el 14/07/2010
Hola Matías,

Ante la duda, la opción por defecto. Deja los canales de entrada / salida en default. No tengo claro qué utilidad tiene pero normalmente jack me ha fallado cuando he intentado poner algo diferente de default.

Si consigues lanzar un comando idéntico desde qjackctl (revísalo en la ventana de mensajes) al de la línea de comandos y éste funciona y aquél no... no sé qué puede pasar, puede ser un fallo. Si es así estaría bien comentarlo con el autor.
http://sourceforge.net/projects/qjackctl/

Si no te queda más remedio que usar tu lanzador, el tamaño del periodo por defecto, 1024, puede resultar demasiado alto (latencia alta). Lo puedes modificar con la opción -p. Por ejemplo, -p256 . Si quieres cambiar la frecuencia de muestreo por defecto (48000 Hz) usa la opción -r, por ejempo -r44100.

Eso sí, una vez lanzado el servidor con tu comando, puedes lanzar qjackctl (aparecerá "Activo" porque el servidor está activo) para hacer las conexiones entre clientes.

Saludos, Pablo
Subir
#11 por maghoxfr el 15/07/2010
Alguien escribió:
El tamaño del periodo por defecto, 1024, puede resultar demasiado alto (latencia alta). Lo puedes modificar con la opción -p. Por ejemplo, -p256 . Si quieres cambiar la frecuencia de muestreo por defecto (48000 Hz) usa la opción -r, por ejempo -r44100.

Cómo haría esto? Porque probé escribiendo
[code]jackd -d alsa -P hw:0,0 -C hw:2,0 -p256 -r44100[/code]
paro me da un error. La gran falla que tiene mi "solución" y que ya me la veía venir, es que cada vez que la tarjeta es conectada de nuevo (o reiniciada la pc) su nombre cambia y el lanzador es obsleto, tengo que hacer todo manualmente. Encontré algo sobre fijar los nombres de los dispositivos para que al ser conectados nuevamente mantengan su nombre, pero la verdad es que es demasiado para mi. En unos días capaz que si tengo un tiempo libre intento entender el procedimiento.

Buena idea la de escribirle al autor, ¿es el mismo de Qtractor no? Ayer solucioné mis problemas con la tarjeta de video...uno menos...
Subir
#12 por Pablo_F el 15/07/2010
Hola,

Para evitar el problema del "baile" de las tarjetas, o les das números fijos en un archivo de configuración de alsa o bien, más fácil, las identificas con el nombre en lugar del número y así aciertas siempre y puedes fijar el comando. El nombre lo puedes ver en la salida de "aplay -l" o "cat /proc/asound/cards" y en tu caso, si no recuerdo mal sería, por ejemplo:

jackd -d alsa -P hw:NVidia -C hw:default

Si no te arranca con p=256 puede ser porque es demasiado bajo. ¿Qué kernel estás usando? ¿uname -r?

Sí, es el mismo de qtractor. http://www.rncbc.org/

Saludos, Pablo
Subir
#13 por maghoxfr el 15/07/2010
Alguien escribió:
Para evitar el problema del "baile" de las tarjetas, o les das números fijos en un archivo de configuración de alsa o bien, más fácil, las identificas con el nombre en lugar del número y así aciertas siempre y puedes fijar el comando. El nombre lo puedes ver en la salida de "aplay -l"

Gracias, parece bastante simple, me hubiera llevado un tiempo que no tengo leer todo los links sobre esto. No me queda clara una cosa, el comando que te mostré antes:
[code]jackd -d alsa -P hw:0,0 -C hw:2,0 -p256 -r44100[/code]
está bien escrito? la sintaxis o el orden es a lo que me refiero. Sé que la tarjeta que voy a usar para captura soporta 44100, 16-bit. La verdad que como está todo configurado por defecto, 1024, 48000, tiene latencia y se nota, no es mucha pero suena defasado y se complica con los tiempos para grabar. En el setup de Jack, logré bajar la latencia a 5,7ms, lo cual es bajo me parece, pero no es la configuración que usa porque al lanzar el comando del lanzador toma esa configuración (1024, 48000) que es la que tengo que cambiar.

Hasta la noche no vuelvo a mi computadora, cuando llegue pruebo las sugerencias que me diste y te digo qué kernel estoy usando porque no me acuerdo. También voy a postear en el foro de qjackctl en la página de Rui a ver si obtengo alguna respuesta. Igual te digo que con los avances quue estoy haciendo gracias a vos ¡ya estoy satisfecho!

Ayer estuve probando bastante el Qtractor, Rakarracak, Guitarix, Meterbridge y me encantó. Los tenía instalados hacía unos meses pero sin entrada no los podía probar. Quisiera configurar todo para que quede óptimo y empezar a grabar.
Subir
#14 por Pablo_F el 16/07/2010
Hola Matías,

Supongo que ya ha quedado claro pero si usas tu lanzador, se pone en marcha el servidor jack y a partir de ahí da igual lo que pongas en el setup de qjackctl. Lo ideal sería encontrar la combinación correcta en el setup de qjackctl y entonces, por supuesto, no usar tu lanzador. Por supuesto, siempre que cambies el setup, después de confirmar el cambio debes detener e iniciar (el servidor jack, se entiende) en qjackctl.

El comando de jack es complicadillo y por eso se recomienda usar qjackctl. Sí importa el orden y te lo debí dar mal. A ver si ahora acertamos.

En tu caso yo intentaría con esto:

http://imagebin.org/105549

(con 128 cuadros por periodo, puede resultar demasiado bajo, ojo)

que traducido a línea de comandos, es:

jackd -dalsa -r44100 -p128 -n2 -D -Chw:default -Phw:NVidia

La opción -D es para indicar "duplex" (captura y reproducción). Sin embargo, insisto, no haría falta lanzar el comando. Lo he copiado de la ventana de mensajes (omito la ruta completa del ejecutable que no es necesaria).

Otra opción, que no sé si es aceptable, es preparar un preset para "sólo captura", con la Alesis. Es que trabajar en duplex con dos tarjetas diferentes... Es un poco raro, pero si consigues que funcione, pues adelante.

Saludos, Pablo
Subir
#15 por maghoxfr el 16/07/2010
Gracias, no me preguntes por qué o qué hice pero ahora me funcionan las dos tarjetas, (USB para entrada y onboard para salida) desde Qjackctl. Puedo modificar los parámetros desde la GUI y me funciona bien, lo que sí tengo que considerar es cambiar el nombre de la tarjeta USB cada vez que la conecto, pero no es problema. Lo que hice fue unir al usuario al grupo "audio", ¿eso puede haber sido la solución?

Me queda mucho por aprender sobre linux y audio en linux, si bien había leído bastante sobre el tema antes de comprar la tarjeta y el teclado, no hay como experimentar una vez que podés poner las manos a la obra.

Muchas gracias Pablo.
Subir
Respuesta rápida

Regístrate o para poder postear en este hilo