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 installing the official ready-to-run version of the program that can be downloaded from ardour.org, as Ubuntu native packages are not supported in the official Ardour forums or other support channels.
Follow these steps to install the latest version of Ardour:
- Download the latest release from ardour.org.
- Right-click the downloaded file and choose properties.
- Click the Permissions tab and check the option "Allow this file to run as a program".
- Close the dialog and double-click the file.
- Follow the prompts.
Problems with the interaction between PulseAudio and JACK
Like many distributions, Ubuntu has decided 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 make the Linux audio environment a very interesting one.
This would not be 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, PulseAudio on Ubuntu is configured by default to always use the (typically single) audio interface on the 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).
A message like Cannot start JACK in the output from JACK as it starts up (though see the next section for other causes of this). This output may be hidden in the Messages window of QJackCtl (aka JACK Control), so one should check there.
How to fix
These bugs do not affect releases from 13.04, 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 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, the user will not have permission to run JACK in the way they should.
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 QJackCtl (aka JACK Control), so one 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 log out and log in again. On Ubuntu Studio the user is a member of audio group by default, but not on other official flavors.
Given the difficulties in supporting Ubuntu and the limited time and resources of the Ardour team, the Ubuntu Studio Project has requested that issues and bug reports related to Ubuntu, Ubuntu Studio and other derivitives be directed to them.
Contact Information for Ubuntu Studio
Information on the Ubuntu Studio IRC channel. #ubuntustudio on irc.freenode.net