Audio Firewire en Linux

Imprescindibles si queremos que las creaciones HUM tengan calidad y sentido.
Avatar de Usuario
wynton
Admin
Mensajes: 3065
Registrado: Vie 26 Nov 2004 , 9:05
Ubicación: Madrid

Audio Firewire en Linux

Mensaje por wynton »

Siguiendo con los temas menores voy a contar, para aquellos que puedan estar interesados, mis últimas experiencias en linux con la tarjeta de sonido externa IEEE1394 (Firewire):

http://www.esi-pro.com/viewProduct.php?pid=16&page=1

Comprada aquí (la foto no es correcta, la correcta es la anterior):

http://www.musicstorekoeln.de/es/global ... store.html

Está tarjeta lleva el chip BeBob de BridgeCo:

http://www.bridgeco.net/index.php?optio ... &Itemid=42

Sobre el cual un grupo de desarrolladores está programando un driver para linux:

http://freebob.sourceforge.net/index.php/Main_Page

Pues bien, se ha probado en un portatil Portatil Fujitsu-Siemens Amilo Pro V2060

http://www.fujitsu-siemens.com/products ... ition.html

Con Sistema Operativo GNU/Linux Debian Etch con kernel "vanilla version" 2.6.15.6.
Para instalar el sofware necesario se ha recurrido al empaquetado para Debian de:

http://freebob.sourceforge.net/index.ph ... _GNU/Linux

De momento se ha probado en la siguiente configuración:

- Entrada digital coaxial a 44100 Hz y empleando simultaneamente las 8 salidas analógicas.
- Gestor de sonido jackd configurado con 3 buffers de 32 muestras (2 milisegundos de latencia interna, la latencia real andará en torno a unos 8/10 milisegundos).
- Filtrado por convolución en 6 de los 8 canales empleados mediante brutefir.
- Underclocking de la CPU Intel Centrino a 600 MHz.

Y ha funcionado a pleno rendimiento (0 xruns salvo que simultaneamente se emplee el navegador web).

Todos aquellos que estuvieran pensando en soluciones basadas en linux para incorporar tratamiento digital a sus equipos domésticos tienen una nueva opción más.

Respecto a la calidad de sonido, pues solo puedo decir que la ESI Quatafire suena bien. Suena "mejor" que la Terratec Phase 26 por la simple razón de que el nivel máximo de salida de la ESI Quatafire es más alto.

Está tarde pongo capturas de pantalla de la configuración de jackd empleada (mediante el gestor gráfico para qjackctl).

Solo destacar una vez más el impresionante nivel y capacidad de trabajo de estos grupos de desarrolladores voluntarios que generan código de tan alta calidad para sostener Linux como el Sistema Operativo Libre por excelencia. En el caso del Proyecto FreeBob, el nombre de los campeones es Pieter Palmers y Daniel Wagner.
Avatar de Usuario
wynton
Admin
Mensajes: 3065
Registrado: Vie 26 Nov 2004 , 9:05
Ubicación: Madrid

Mensaje por wynton »

Un par de imagenes del gestor de I/O jackd de audio con la ESI Quatafire y brutefir ecualizando:

Imagen

Imagen

Una entrada (SPDIF coaxial desde el DVD) y dos salidas analógicas, una con una ecualización para auriculares y otra con la de los altavoces.
RR
Mensajes: 370
Registrado: Jue 25 Nov 2004 , 21:55

Mensaje por RR »

Esto es cojonudo, se abren un montón de posibilidades, sobre todo para los que quieran probar el filtrado digital con un portátil, por ejemplo.

Yo ya me he pedido otra tarjeta PCI, si llego a saber esto hace una semana...

Gracias, tomo buena nota.
R :|
No tengo nada que decir sobre este asunto. Pero nada.
isabido
Mensajes: 515
Registrado: Jue 15 Ene 2004 , 19:26

Mensaje por isabido »

Wyn imagino que no habra problema en usar, el mismo Linux-PC como jukebox-reproductor no?

Yo es que todo el material de escucha lo tengo en mp3 y demas. :wink:
Avatar de Usuario
wynton
Admin
Mensajes: 3065
Registrado: Vie 26 Nov 2004 , 9:05
Ubicación: Madrid

Mensaje por wynton »

isabido escribió:Wyn imagino que no habra problema en usar, el mismo Linux-PC como jukebox-reproductor no?

Yo es que todo el material de escucha lo tengo en mp3 y demas. :wink:
Pues claro que se puede. Yo suelo hacerlo.

Necesitas un reproductor de audio que se conecte con el servidor de sonido jack. Yo empleo xmms con el plugin' de salida para jack.

Otra opción entretenida es disponer de todo el material-mp3 en un PC-jukebox y el software de filtrado digital y ecualización en otro (PC-FIRtro).

De tal forma que se puede configurar en el PC-jukebox una emisora de música por la red local y en el PC-FIRtro un receptor de esta señal. En una red local con wifi es muy práctico, puedes escuchar la música donde te de la gana.

Yo he empleado:

http://www.icecast.org/index.php

Como servidor central en el PC-jukebox. Y luego:

http://www.icecast.org/ezstream.php

Como emisor de música hacia icecast en el PC-jukebox.
Y xmms como reproductor en el PC-FIRtro.

Si quieres más detalles te comento como lo tengo configurado.
Avatar de Usuario
wynton
Admin
Mensajes: 3065
Registrado: Vie 26 Nov 2004 , 9:05
Ubicación: Madrid

Mensaje por wynton »

RR escribió: Yo ya me he pedido otra tarjeta PCI, si llego a saber esto hace una semana...
Pues justo la pedí la semana pasada, me llegó este lunes y termine de ajustar el sistema el miercoles.

En fin... De todas formas está tarjeta a este precio es por si sola una oferta irresistible.
isabido
Mensajes: 515
Registrado: Jue 15 Ene 2004 , 19:26

Mensaje por isabido »

Wyn tengo una M-AUDIO Firewire 410

http://la.m-audio.com/index.php?do=prod ... ATICPAGE=1


Le echo cojones? o no ira? En la lista no aparece creo.

En la debian etch instalas el base y luego vas añadiendo lo que necesitas no?

Podrias hacerme un resumen de lineas apt que usas despues de la instalacion base.

Saludos!
isabido
Mensajes: 515
Registrado: Jue 15 Ene 2004 , 19:26

Mensaje por isabido »

Casi que me contesto....

The FireWire Solo is the latest in a family of M-Audio breakout boxes that use BridgeCo technology. M-Audio’s FireWire 410™, FireWire 1814™, and FireWire Audiophile™ products all employ BridgeCo's BeBoB processor/firmware platform. M-Audio’s FireWire Solo interface offers six audio inputs and four outputs, MIDI I/O and digital I/O, each with 24-bit/96kHz sample rate conversion.

FUENTE: http://mixonline.com/news/headline/maud ... index.html

Asi que creo que deberia de poder hacerle rular perfectamente... No crees Wyn?

:wink:


EDITO PARA AÑADIR:

Will the M-Audio 410 / 1814 be supported?

Maybe. The problem is that the M-Audio 410 / 1814 does not support the AV/C commandos for device discovering. Though for transporting the signals the IEC 618863-6 standard is used. So that means that streaming is no problem while controlling the device is.

YA no lo tengo tan claro :oops:
Avatar de Usuario
wynton
Admin
Mensajes: 3065
Registrado: Vie 26 Nov 2004 , 9:05
Ubicación: Madrid

Mensaje por wynton »

isabido escribió:Wyn tengo una M-AUDIO Firewire 410

http://la.m-audio.com/index.php?do=prod ... ATICPAGE=1


Le echo cojones? o no ira? En la lista no aparece creo.

En la debian etch instalas el base y luego vas añadiendo lo que necesitas no?

Podrias hacerme un resumen de lineas apt que usas despues de la instalacion base.
Evidentemente si ya la tienes, pues hay que echarle cojones ¿no?

Bueno, el caso es que parece ser que el método para detectar el dispositivo Firewire no responde a comandos AV/C (no me preguntes que es eso) sino que tiene un sistema "propietario". Si jackd no es capaz de conocer la configuración de la tarjeta (número de streams de entrada y de salida) no es capaz de enrutarla nada.

Y parece ser que esto se puede puentear incluyendo la configuración del dispositivo a piñon (¿en el código?).

En fin, que NPI.

En cuanto a los paquetes necesarios en Debian, para hacer andar el dispositivo firewire, los ofrecidos en http://freebob.sourceforge.net/index.ph ... _GNU/Linux
son "autosuficientes".

En caso de apuro si apt no se deja follar por asuntos de compatibilidades de versiones, se pueden enchufar a base de dpkg -i de los paquetes punto-deb de la web http://pkg-freebob.alioth.debian.org/debian/ a lo salvaje.

Aunque ya sabes que una vez que te saltas las normas de compatibilidades del apt, el sistema se encabrona y es dificil de actualizar.

Con lo cual otra opción es compilar de cero los tar.gz necesarios:

http://freebob.sourceforge.net/index.ph ... _SVN_HOWTO

En informática los cojones se emplean para cosas como esta.

Lo que hasta ahora no he conseguido es encontrar un kernel Realtime-Preemptive que sea compatible con freebob. Y con compatibilidad me refiero a que no se quede completamente "congelado" el PC.

Y creo que se me ha jodido el cable firewire 6 pines-4 pines porque en cuanto lo toco un poco el bus IEEE1394 se desconecta. Y tengo "fritos" a ratos. ¿Será importante el cable en una comunicación serie a 400 Mb/s?

Todo esto lo comento para que no haya equivocos, que la cosa no es plug&play ni se parece.

Seguiremos informando.
isabido
Mensajes: 515
Registrado: Jue 15 Ene 2004 , 19:26

Mensaje por isabido »

Bueno pues ya tengo la debian etch toda preparadita con los freebob.

Ahora cuando llegue a casa le pincho la tarjeta, a ver q pasa.

:wink:

Gracias Wyn.

Tengo poca idea de jack y brutefir. Alguna prueba rapida? para ver q tal responde.
Avatar de Usuario
wynton
Admin
Mensajes: 3065
Registrado: Vie 26 Nov 2004 , 9:05
Ubicación: Madrid

Mensaje por wynton »

isabido escribió: Tengo poca idea de jack y brutefir. Alguna prueba rapida? para ver q tal responde.
Para jackd:

jackd -v -R -P70 -dfreebob -r44100 -p512 -n3

Y a ver que te dice.

Carga antes: modprobe snd-seq

Y para acceder al dispositivo /dev/raw1394 (que es donde está enganchada la tarjeta) como usuario no root tienes que pertenecer al grupo disk: adduser isabido disk

Para brutefir mira en el hilo del taller de DRC, he puesto por ahí un ejemplo. (jodete jejejejejej....)
isabido
Mensajes: 515
Registrado: Jue 15 Ene 2004 , 19:26

Mensaje por isabido »

con eso me vale warrillo.... tienes ante ti un Guru de esos. 8) :wink:
isabido
Mensajes: 515
Registrado: Jue 15 Ene 2004 , 19:26

Mensaje por isabido »

Ta la cosa jodia Wyn.....

Esto es lo que dice cuando le enchufo la tarjeta.

Jun 19 20:14:55 debian kernel: ieee1394: Node added: ID:BUS[0-00:1023] GUID[000d6c0110b73514]
Jun 19 20:14:55 debian kernel: ieee1394: Node changed: 0-00:1023 -> 0-01:1023


Y esto cuando la saco:

Jun 19 20:17:45 debian kernel: ieee1394: Node changed: 0-01:1023 -> 0-00:1023
Jun 19 20:17:45 debian kernel: ieee1394: Node suspended: ID:BUS[0-00:1023] GUID[000d6c0110b73514]


Esto cuando ejecuto el jackd...

debian:~# jackd -v -R -P70 -dfreebob -r44100 -p512 -n3
getting driver descriptor from /usr/lib/libjack0.100.0-0/jack_alsa.so
getting driver descriptor from /usr/lib/libjack0.100.0-0/jack_dummy.so
getting driver descriptor from /usr/lib/libjack0.100.0-0/jack_oss.so
getting driver descriptor from /usr/lib/libjack0.100.0-0/jack_freebob.so
jackd 0.102.10
Copyright 2001-2005 Paul Davis and others.
jackd comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details

JACK compiled with System V SHM support.
server `default' registered
loading driver ..
registered builtin port type 32 bit float mono audio
registered builtin port type 8 bit raw midi
clock source = system clock via gettimeofday
running with uid=0 and euid=0, will not try to use capabilites
new client: freebob_pcm, id = 1 type 1 @ 0x806fbb0 fd = -1
Freebob using Firewire port 0, node -1
new buffer size 512
Root node has no children!
Root node has no children!
FreeBoB ERR: FREEBOB: Error creating virtual device
cannot load driver module freebob
starting server engine shutdown
freeing shared port segments
stopping server thread
stopping watchdog thread
Violación de segmento

Que me joda ehhh....
:lol:
Avatar de Usuario
wynton
Admin
Mensajes: 3065
Registrado: Vie 26 Nov 2004 , 9:05
Ubicación: Madrid

Mensaje por wynton »

isabido escribió: Que me joda ehhh....
:lol:
No hombre no....

Que no se hizo linux en una hora.

Yo creo que lo suyo es mirar y participar en:

http://sourceforge.net/mailarchive/foru ... m_id=42046

Hay bastante actividad.
Avatar de Usuario
wynton
Admin
Mensajes: 3065
Registrado: Vie 26 Nov 2004 , 9:05
Ubicación: Madrid

Mensaje por wynton »

Lo primero que hay que comprobar es que cuando enchufas la MAudio, el sistema operativo te crea el dispositivo /dev/raw1394.

Debería crearlo automáticamente udev, y debería indicarlo con un mensaje.
isabido
Mensajes: 515
Registrado: Jue 15 Ene 2004 , 19:26

Mensaje por isabido »

Poca solucion hay de momento por lo que puedo leer entre lineas.

Quizas el mensaje mas concluyente y nuevo sea este

http://sourceforge.net/mailarchive/foru ... m_id=42046
After the 1.0 release we will introduce the 'cached' discovering which
would allow us to support the 410 very simple with writing the model
down by hand (opposed to the automatic discovering). This would work
because the streaming part is completely identical to the BoBoB's.

One problem which remains to be solved is how we going to implement the
various vendor specific commands into our code.

daniel
Avatar de Usuario
wynton
Admin
Mensajes: 3065
Registrado: Vie 26 Nov 2004 , 9:05
Ubicación: Madrid

Mensaje por wynton »

Ya he leido el mensaje.

Ajo y agua. Es lo malo de los sistemas "propietarios".
isabido
Mensajes: 515
Registrado: Jue 15 Ene 2004 , 19:26

Mensaje por isabido »

De momento podre tirar con mi DCX 8)
Avatar de Usuario
wynton
Admin
Mensajes: 3065
Registrado: Vie 26 Nov 2004 , 9:05
Ubicación: Madrid

Mensaje por wynton »

wynton escribió:
isabido escribió: Que me joda ehhh....
:lol:
No hombre no....

Que no se hizo linux en una hora.

Yo creo que lo suyo es mirar y participar en:

http://sourceforge.net/mailarchive/foru ... m_id=42046

Hay bastante actividad.

Venga Nachete que son pocos y cobardes. No pierdas la esperanza en los chicos del Free Software:

http://sourceforge.net/mailarchive/foru ... m_id=42073


La SVN 299 parece que ya soporta tú tarjeta. Lo que han hecho es meter la configuración de los canales en un XML al efecto, saltandose el código de discovering a base de comandos AV/C.

Pruébala y tira a la basura el DCX que no da más que disgustos. :wink:
Avatar de Usuario
luisggarcia
Mensajes: 802
Registrado: Vie 16 Jul 2004 , 9:28

Mensaje por luisggarcia »

Oye si te enteras de algo para Usb avisa. Especialmente si es para M-audio.
Responder