You are not logged in.

#1 2010-07-09 12:09:53

ku
Member
Registered: 2008-03-20
Posts: 23

Missing ffado support in jack

When I enter "jackd -d firewire", I'm getting the "jackd: unknown driver 'firewire'" answer, which means that jack was compiled without ffado support. Apparently (from what I've got from searching for ffado in these forums) it is a quite new decision of the jack repo maintainer. Now, it all would be fine if jack would let build itself from svn, but it doesn't for me. I'm getting:

$ yaourt -S jack-audio-connection-kit-svn

[...]

[105/198] cxx: common/JackNetOneDriver.cpp -> build/default/common/JackNetOneDriver_7.o
../common/JackNetOneDriver.cpp: In member function 'void Jack::JackNetOneDriver::render_payload_to_jack_ports_celt(void*, jack_nframes_t, JSList*, JSList*, jack_nframes_t)':
../common/JackNetOneDriver.cpp:712:58: error: too few arguments to function 'int celt_decode_float(CELTDecoder*, const unsigned char*, int, float*, int)'
/usr/include/celt/celt.h:289:12: note: declared here
../common/JackNetOneDriver.cpp:714:65: error: too few arguments to function 'int celt_decode_float(CELTDecoder*, const unsigned char*, int, float*, int)'
/usr/include/celt/celt.h:289:12: note: declared here
../common/JackNetOneDriver.cpp: In member function 'void Jack::JackNetOneDriver::render_jack_ports_to_payload_celt(JSList*, JSList*, jack_nframes_t, void*, jack_nframes_t)':
../common/JackNetOneDriver.cpp:760:93: warning: passing NULL to non-pointer argument 3 of 'int celt_encode_float(CELTEncoder*, const float*, int, unsigned char*, int)'
Build failed
 -> task failed (err #1): 
    {task: cxx JackNetOneDriver.cpp -> JackNetOneDriver_7.o}

Any help with that?
Also, why isn't ffado supported by default in Arch?

Offline

#2 2010-07-12 13:42:40

habbe
Member
Registered: 2009-09-06
Posts: 45

Re: Missing ffado support in jack

Maybe it is easiest to use archaudio repositories, they enable FFADO because it is stupid not to:
http://archaudio.org/packages/

Offline

#3 2010-07-17 01:46:44

ku
Member
Registered: 2008-03-20
Posts: 23

Re: Missing ffado support in jack

Thank you, habbe!

However, now I'm getting another error message:

loading driver ..
libffado 2.0.0 built Mar 11 2010 01:37:49
firewire ERR: Error creating FFADO streaming device
cannot load driver module firewire
no message buffer overruns

EDIT: i've read about problems with newer kernels, so i downgraded but had same problem with 2.6.31-rt

Last edited by ku (2010-07-17 02:21:40)

Offline

#4 2010-07-19 20:57:03

schivmeister
Developer/TU
From: Singapore
Registered: 2007-05-17
Posts: 971
Website

Re: Missing ffado support in jack

Also, why isn't ffado supported by default in Arch?

Because it hasn't been brought into the repositories by anyone, and no-one has filed a feature request until only recently.

If it's alright, I'll take this chance to clear something up, and hopefully we'll see jack in [extra] with ffado support smile

Ensure that no other jack or ffado version exists on the system, and that you have our latest kernel and udev from [core] running.

1) Verify whether your device will work from http://www.ffado.org/?q=devicesupport/list

2) Get, build and install ffado or ffado-svn (if support for your device is not present in the releases) from AUR

3) Rebuild extra/jack-0.118.0-3 from ABS

4) Read the last 2 points at http://wiki.archlinux.org/index.php/ProAudio#FireWire (ignore mentions of raw1394)

Now, if your device is supposed to work, jack/ffado may still refuse to aknowledge that. This is due to device node permissions. Show us the output of:

ls -l /dev/fw*

/dev/fw0 need not be user/group writable (not so sure though), but any subdevice thereafter should have the group set, if it's A/V hardware. Else, the stock rules are not working as they are shipped and we might need to provide one like we did with raw1394 previously, or file for inclusion of proper device IDs upstream so the device-dependent permissions can actually work (matched with the "units" attribute).

Last edited by schivmeister (2010-07-27 07:35:40)


I need real, proper pen and paper for this.

Offline

#5 2010-07-26 12:05:13

Normalised
Member
Registered: 2010-07-26
Posts: 2

Re: Missing ffado support in jack

I followed these instructions and for the first time ever i've got jack / ffado working with my MOTU 828 MkII, but only when I run jackd as root.

ls -l /dev/fw*
crw------- 1 root root 252, 0 Jul 26 07:37 /dev/fw0
crw------- 1 root root 252, 1 Jul 26 10:41 /dev/fw1

let me know if you want more info. As it is im happy it works, i've tried numerous times in the past and its always ended in frustration, but it would be great to run jackd under my user account.

Offline

#6 2010-07-27 07:41:02

schivmeister
Developer/TU
From: Singapore
Registered: 2007-05-17
Posts: 971
Website

Re: Missing ffado support in jack

Thanks. For the meantime, you can chmod the nodes to your needs. Do it only for /dev/fw1 (tell us if this works), and then for fw0 as well.


I need real, proper pen and paper for this.

Offline

#7 2010-07-28 18:16:21

Normalised
Member
Registered: 2010-07-26
Posts: 2

Re: Missing ffado support in jack

great, it works fine if i chmod fw1, no need to change fw0

whats the best way to persist the fw1 permissions between reboots?

Offline

#8 2010-07-28 20:42:33

schivmeister
Developer/TU
From: Singapore
Registered: 2007-05-17
Posts: 971
Website

Re: Missing ffado support in jack

You can run the chmod via a startup script as root, which naturally implies rc.local smile The proper way would be to have udev rules take care of it:

http://wiki.archlinux.org/index.php/Udev
https://ieee1394.wiki.kernel.org/index. … ev.2Ffw.2A


I need real, proper pen and paper for this.

Offline

Board footer

Powered by FluxBB