By Forrest Cook
December 22, 2009
The FFADO (Free FireWire Audio Drivers) project supports the connection of
FireWire-based
audio devices to Linux systems:
The FFADO project aims to provide a generic, open-source solution for the support of FireWire based audio devices for the Linux platform. It is the successor of the FreeBoB project.
FFADO is a volunteer-based community effort, trying to provide Linux with at least the same level of functionality that is present on the other operating systems.
The
About FFADO
document describes the wide goals of the project:
We try to support any FireWire device available out there. The FFADO codebase is a framework that has been built with this in mind. This however doesn't mean that all FireWire devices work with FFADO. In order to support a device, we need cooperation from manufacturers, or somebody that want's to reverse engineer the protocol.
Luckily we have support from the manufacturers of the three major platforms vendors build their devices around (BridgeCo, TC Applied Technologies and ECHO). The exact devices supported (or not supported) can be found on our device list.
The online
FFADO Manual and
FAQ
are somewhat out of date, the documentation recommends visiting the
wiki
for the most recent information. FFADO's roots can be traced to
this paper [PDF] entitled
FireWire (Pro-)Audio for Linux which
was presented at the 2007 Linux Audio Conference by Pieter Palmers.
Digging through the documentation
reveals some of the FFADO features including:
- Supports FireWire audio interfaces, MIDI devices, control surfaces and more.
- The Device List and Usage By Device documents show many supported devices.
- Works together with the JACK
audio connection kit and the Ardour multi-track audio workstation.
- Requires the Linux kernel version 2.6.21 or later.
- Uses the raw1394 kernel module.
- Supports up to four devices per IEEE-1394 controller.
FFADO support is relatively new, it showed up in the
Ubuntu Studio 9.04
distribution (April, 2009) and first worked with
JACK 0.109.0 and
QjackCtl 0.3.2.
Version 2.0 of FFADO was
announced
on December 19, 2009, this version of the software has been in the release
candidate state for over a year with
FFADO 2.0 release candidate 2
arriving on May 17, 2009 and
FFADO 2.0 release candidate 1
arriving on November 23, 2008.
From the release announcement:
As the release candidates have been around for almost one year now
without a significant amount of bug reports we feel confident that the
current code-base has matured. Around the end of november the 1000-th
device was registered as being used with FFADO, which seemed to be a
nice number to triggered the release.
Furthermore on December 2 the Linux kernel version 2.6.32 has been
released. This version fixes the new kernel FireWire drivers such that
they are compatible with FFADO. So once the distributions pick up this
kernel the old/new kernel stack confusion should be history.
The announcement also hints at what's to come in upcoming FFADO
releases:
Looking ahead to the 2.1 release we can announce that we have
implemented (basic) support for additional devices from Focusrite,
Behringer, Stanton and TC Electronic. We plan to move to beta-testing
2.1 fairly soon as development on it has been ongoing for more than a
year now. Additionally, work is being done on the RME devices, but its
not yet known when that will be finished. Support for some other vendors
is in the pipeline, so stay tuned for more announcements.
A second major development is the move of the streaming infrastructure
to kernel space. A kernel-space implementation will bring significant
improvements with respect to reliability and efficiency. Furthermore it
will allow to expose an ALSA interface, meaning that the scope of
FireWire audio on Linux is extended significantly.
Through its relatively short history, FFADO seems to be evolving,
becoming more generic and including support for an ever-growing list
of FireWire devices.
FFADO will allow Linux users to tap into a wide range of useful
devices, increasing the functionality of Linux-powered audio workstations.
Congratulations go out to the developers for their hard work.