Is there a reason why libffado's ALSA plugin is not built?

Adrian Knoth adi at drcomp.erfurt.thur.de
Fri Jul 23 11:31:06 UTC 2010


On Thu, Jul 22, 2010 at 05:51:26PM +0200, Luke Yelavich wrote:

> Hi all,

Hi!

> Just having a look at libffado, and saw that there is code for a
> libfado ALSA plugin. Is there any particular reason why this is not
> built? 

To my knowledge, it doesn't work. Given that upstream only talks about
jackd and never mentions this plugin, the indication seems rather clear.

Or were you able to get it running?

> I am also thinking of possibly building a pulseaudio ffado module so
> that firewire audio can be used directly in pulse without the need for
> jack.

Don't forget about the MIDI ports. With jackd, MIDI and audio are
perfectly aligned and handled (JACK-MIDI). If you do a
FFADO-pulse-module, you'd need to somehow provide the MIDI ports, which
in turn would very likely mean ALSA. In the end, you'd lose perfect
audio-midi-alignment due to different buffering in PA and ALSA seq.

The latter is especially a problem for pro-audio, given that those cards
are intended for audio production, IOW, studio integration with both,
MIDI and audio.

As nobody can ever know when data passing through ALSA seq is actually
being delivered to the ports, the whole ALSA/PA module idea is
cumbersome.

Note that there is at least one project (to my knowledge maybe even
three) that's working on bringing FFADO to the kernel. This way, the
additional kernel-userlevel switch will be avoided, the streaming code
can make use of firewire hardware interrupts, provide lower latency
while being more stable.

Right now, it's not entirely clear if this kernel-FFADO will use ALSA or
a specially tailored interface towards jackd to talk to userspace. While
ALSA may be beneficial for ordinary users, the same audio-MIDI alignment
problem holds true, at least to some degree.

So having a dedicated jackd kernel interface for pro-audio cards seems
to be a valid option. The RME driver guy is thinking about it for quite
some time. (Florian Faber)

OTOH, Clemens Ladisch (ALSA dev) has an AMDTP streaming in-kernel ALSA
driver, in other words, a leightweight in-kernel FFADO. It's already
available and ready for testing. (I never tried, "ready" as in "clone
his git kernel tree")


Long story short: lots of problems, and more or less no need for ALSA,
because pro-cards are used with jackd-based pro-apps anyway.


HTH

-- 
mail: adi at thur.de  	http://adi.thur.de	PGP/GPG: key via keyserver



More information about the pkg-multimedia-maintainers mailing list