Jack/ffado incompatibility

I’m glad this forum is full of willing people, in previous threads I solved 3 annoying software related issues because the forum’s helpful people. This is also an annoying bug which doesn’t let me use my firewire audio interfaces. It seems the FFADO version in “Current” repositories is too old for the jack package in the same repositories.

luispa@linux-masr:~> ffado-test ListDevices
-----------------------------------------------
FFADO test and diagnostic utility
Part of the FFADO project -- www.ffado.org
Version: 2.1.0-
(C) 2008, Daniel Wagner, Pieter Palmers
This program comes with ABSOLUTELY NO WARRANTY.
-----------------------------------------------

=== 1394 PORT 0 ===
  Node id  GUID                  VendorId     ModelId   Vendor - Model
   1       0x00a0de00000224a7  0x0000A0DE  0x0010000C   YAMAHA - GO46 
no message buffer overruns
luispa@linux-masr:~> jackd -dfirewire
jackdmp 1.9.8
Copyright 2001-2005 Paul Davis and others.
Copyright 2004-2011 Grame.
jackdmp 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
no message buffer overruns
no message buffer overruns
no message buffer overruns
JACK server starting in realtime mode with priority 10
firewire ERR: Incompatible libffado version! (libffado 2.1.0-)
Cannot initialize driver
JackServer::Open() failed with -1
no message buffer overruns
Failed to open server

FFADO seems to work OK because “ffado-test ListDevices” shows the connected firewire device and “FFADO Mixer” shows the right controls. Jack also works OK if I do “jackd -dalsa” but when I do “jackd -dfirewire” it crash due a version incompatibility.

It seems there’s a dependency problem. And since I’m referring to the current repositories I’m afraid this is affecting everybody using OpenSUSE 12.3. Is there anybody trying to use firewire audio devices with OpenSUSE 12.3?

I could solve this by installing jack and FFADO from “Factory” repos but I do prefer to not use this repo.

Thank you very much in advance.

It seems like ffado is compiled against a JACK version different from the one in the repo, if so it’s no go with that version. You might try compile ffado yourself or you could ask someone, wolfi323 perhaps, if he would provide the packages for you.

Hm, I don’t think ffado is too old. It’s 2.1.0 which is the latest upstream version.
See ffado.org | Free Firewire Audio Drivers

But after having a look at your output, it seems it reports its version as ‘2.1.0-’.
Maybe that ‘-’ confuses jack and it regards it as incompatible version?

I will take a look at this…

By the way, are you on OS 12.3 now?

In any case, you might try to use the ffado packages in the official OS 12.2 repo and keep JACK as it is. Both OS 12.2 and 12.3 uses version JACK 1.9.8. One possible drawback might be that the ffado version is older, but just a one version rollback. If your hardware isn’t brand new, however, that might not be of any crucial consequence.
Might be worth a try? And it shouldn’t do any harm if it doesn’t work.

OK, I found the issue: jack is too old! (or ffado is too new ;))
The version of jack in openSUSE 12.3 has this:

#define FIREWIRE_REQUIRED_FFADO_API_VERSION 8

and requires exactly this version.
But ffado-2.1.0 has FFADO_API_VERSION of 9!

So your best bet would be to upgrade jack to the version in multimedia:libs. That one is newer and does support ffado-2.1.0…

And this (12.3’s jack doesn’t support ffado-2.1.0) should be reported on http://bugzilla.novell.com/ (same login as here). I will do so if you prefer.

Oh and since you’re using Tumbleweed, you could ask on the openSUSE-Factory mailinglist for the latest jack from multimedia:libs to be included in the Tumbleweed repo.
http://lists.opensuse.org/opensuse-factory

That would also solve your problem…

I have patched 12.3’s jack to accept FFADO_API_VERSION >= 8.

Packages for Tumbleweed can be found here:
Index of /repositories/home:/wolfi323:/branches:/openSUSE:/12.3:/Update/openSUSE_Tumbleweed

Please test them and report back!
If they work fine, they could be released as online update for 12.3 maybe…
(releasing jack-0.9.9.5 as online update would be against openSUSE’s policies as there are massive changes)

It works great!

Great!
To release it as online update for 12.3, we would need a bug report though.

Do you want to create one? (I could do it as well, but I don’t even have MIDI devices)
http://bugzilla.novell.com/
(same username/password as here in the forums)

Oops, I meant “FireWire devices” of course…:shame:

I filled a bug:
https://bugzilla.novell.com/show_bug.cgi?id=827526

Thank you!

I have attached my patch to the bug report.

Thank you for your help. I use Linux since almost ten years ago and since then I installed and used all the mainstream distros (OpenSUSE, Mandriva, —buntus, Mageia, Siduction, Sidux, Aptosid, ARCH, Slackware, Red Hat, Fedora, Sabayon, Gentoo, Mint, Snowlinux, etc.) and I participated in most of their forums. I think this is one the most friendly forums.