Ardour runs on Linux and Mac OS X, and uses the Jack Audio Connection Kit (JACK) to interface with the computer's sound card, as well as with other audio applications running on the same system.
Using More Than One Audio Device.
Ardour will only use a single interface. If you want to use more than one interface you have two choices:
- If you want to use Ardour to start JACK (which handles all audio I/O) you will need to create a "fake" audio device on your computer the represents all the multiple devices you wish to use. How to do this is platform dependent and described below.
- Use a different tool to start JACK and manage all the devices.
Over time, these different clocks drift out of sync with each other, and cause glitches in the audio. You can't stop this drift, although in some cases the effects may be insignificant enough that some people might not care about them.
Thus in an ideal world you should not use multiple independent soundcards but instead use a single device with a single clock and all the inputs, outputs and other features that you need.
Of course, a lot of people don't live in an ideal world, and believe that software should make up for this.
If you are using a single typical 3rd party audio interface (such as those from Apogee, RME, Presonus, and many others), OR you are using JackPilot or a similar application to start JACK, you do not need to worry about this.
You will need to set up an aggregate device ONLY if either of the following conditions are true:
- You want to use two entirely separate devices AND want to start JACK using Ardour.
- You want to use your builtin audio device AND want to start JACK using Ardour.
- You want to use more than two entirely separate devices
The precise instructions for creating an "aggregate device" on OS X have varied from one released to another.
- OS X 10.5
- Please read http://support.apple.com/kb/HT1215
- OS X 10.6 or later
- Please read http://support.apple.com/kb/HT3956
This section of the manual collects together the collective wisdom of the user community regarding details of using Ardour on various specific platforms
Ubuntu Linux is the most popular variety of Linux in use on desktop and laptop systems. It has the backing of a for-profit corporation (Canonical Inc.), a defined philosophy and a huge and worldwide user base. As a result, it is a common platform for people who want to use Ardour and other tools for music creation and pro-audio work.
High Level Recommendations for Ubuntu Users.
Currently, installing pro audio applications on vanilla Ubuntu requires some configuration, in order for the user to gain realtime privilege (read below). Ubuntu Studio, which is an official flavor of Ubuntu, and thus shares the repositories with Ubuntu, has this already configured. Other distributions, such as KXStudio, and Dreamstudio are largely based on Ubuntu, and like Ubuntu Studio, has these settings preconfigured, while also containing customized versions of Ubuntu packages, which often are more up to date.
There may be unintended differences, and even bugs in Ubuntu native packages, as a result of a different building method. For this reason, Ardour developers highly recommend you to install the official ready-to-run version of the program that you can get from ardour.org, as Ubuntu native packages are not supported in official Ardour forums or other support channels.
Problems with the interaction between PulseAudio and JACK.
- Background Info .
- Like many distributions, Ubuntu has decide to use PulseAudio as the default audio system. PulseAudio is a rich and capable system that provides excellent services for typical users of Linux on the desktop. However, it is not capable of the type of performance that tools like Ardour require and in particular does not offer the possibility of sending audio between applications that can makes the Linux audio environment a very interesting one.
This would not a problem if it were not for the fact that JACK will not run correctly (if at all) if it needs to use the same soundcard/audio interface that PulseAudio is using. And since on Ubuntu, PulseAudio is configured by default to always use the (typically single) audio interface on your computer, this is a bit of a problem.
The developers of JACK and PulseAudio got together in 2009 and agreed upon a mechanism by which PulseAudio and JACK could cooperate in their use of a single soundcard. Whether or not PulseAudio is running by default, when JACK starts up it sends out a request to use the soundcard. If PulseAudio is running, it will give up its use of the soundcard to allow JACK to take over (and can optionally be told to route its own audio through JACK). When JACK finishes, it sends out another message, and PulseAudio can once again use the soundcard directly.
- What is the problem?
- The specific issues known at this time for all flavors of Ubuntu 12.04 and 12.10 are:
- a bug in PulseAudio that causes it not to give up the soundcard when JACK asks (LP: #1163638 (fixed in Ubuntu 13.04).
- Cannot start JACK (though see the next section for other causes of this)
- How to fix These bugs do not affect the upcoming 13.04 release, and earlier releases (12.04 and 12.10) are in the process of being fixed.
- Problems with JACK configuration.
- What is the problem?
- To function as intended, JACK needs to run with access to two operating system facilities called "realtime scheduling" and "memory locking". This means that you, the user who starts JACK, must be allowed access to these facilities. By default, Ubuntu does create a user group that has this permission but ... it does not put new users into this group by default. Read more about why here. Consequently, you will not have permission to run JACK in the way you should.
- Symptoms .
- A message like "Cannot lock down memory" in the output from JACK as it starts up. This output may be "hidden" in the Messages window of QJackctrl (aka JACK Control), so you should check there.
- How to fix
- Make sure the file /etc/security/limits.d/audio.conf exists. If it is named /etc/security/limits.d/audio.conf.disabled, rename it to the former. Run the command
sudo usermod -a -G audio YOUR-LOGIN-NAME. Then logout and login again. On Ubuntu Studio the user is a member of audio group by default, but not on other official flavors.