]> Shamusworld >> Repos - ardour-manual-diverged/blob - _manual/03_setting-up-your-system/08_platform-specifics/01_ubuntu-linux.html
more ubuntu edits
[ardour-manual-diverged] / _manual / 03_setting-up-your-system / 08_platform-specifics / 01_ubuntu-linux.html
1 ---
2 layout: default
3 title: Ubuntu Linux
4 ---                        
5
6 <p>
7   Ubuntu Linux is the most popular variety of Linux in use on desktop
8   and laptop systems. It has the backing of a for-profit corporation
9   (Canonical Inc.) behind it, a defined philosophy and a huge and
10   worldwide user base. As a result, it is a common platform for people
11   who want to use Ardour and other tools for music creation and
12   pro-audio work. 
13 </p>
14 <p>
15   Unfortunately, Ubuntu has repeatedly caused major headaches for
16   people who want to use Ardour. These problems have arisen from a
17   combination of two basic issues:
18
19   <ul>
20     <li>Badly built packages of Ardour</li>
21     <li>Poor system configuration related to JACK, which Ardour (and
22     most other pro-audio tools on Linux) uses for audio and MIDI I/O.
23     </li>
24   </ul>
25 </p>
26
27 <h2>Problems with Ardour Packages</h2>
28
29 <dl>
30 <dt>What is the problem?</dt>
31 <dd>
32 <p>
33   It is not possible to know whether the current package of Ardour
34   released by Ubuntu has been correctly built or not. Ubuntu has a
35   history of making packaging errors that lead to crashes, missing
36   functionality and odd behaviour that is not present in the
37   ready-to-run version of the program that you can get from ardour.org
38   (or in the packages released by other distributions)
39 </p>
40 <dt>Symptoms</dt>
41 <dd>
42 <p>
43   Ardour starts up and basically runs, but you encounter subtle
44   problems (for example, with plugin GUIs or with export, or with the
45   use of certain specific plugins), or are missing functionality, or
46   run into crashes.
47 </p>
48 </dd>
49 <dt>How to Fix</dt>
50 <dd>
51 <p>
52   Download the ready-to-run version from ardour.org. Ardour's lead
53   developer (and many of the most active members of our user
54   community) will not provide support for, and will not investigate
55   bugs reported for, Ubuntu's own packages of Ardour. The ardour.org
56   packages install along side your distribution versions, and do not
57   interfere or interact in anyway other than sharing your own personal
58   Ardour settings and configuration choices.
59 </p>
60 </dd>
61 </dl>
62
63 <h2>Problems with the interaction between PulseAudio and JACK</h2>
64
65 <dl>
66 <dt>Background Info</dt>
67 <dd>
68 <p>
69   Like many distributions, Ubuntu has decide to use PulseAudio as the
70   default audio system. PulseAudio is a rich and capable system that
71   provides excellent services for typical users of Linux on the
72   desktop. However, it is not capable of the type of performance that
73   tools like Ardour require and in particular does not offer the
74   possibility of sending audio between applications that can makes the
75   Linux audio environment a very interesting one.
76 </p>
77 <p>
78   This would not a problem if it were not for the fact that JACK will
79   not run correctly (if at all) if it needs to use the same
80   soundcard/audio interface that PulseAudio is using. And since on
81   Ubuntu, PulseAudio is configured by default to always use the
82   (typically single) audio interface on your computer, this is a bit
83   of a problem.
84 </p>
85 <p>
86   The developers of JACK and PulseAudio got together in 2009 and
87   agreed upon a mechanism by which PulseAudio and JACK could cooperate
88   in their use of a single soundcard. Whether or not PulseAudio is running by
89   default, when JACK starts up it sends out a request to use the
90   soundcard. If PulseAudio is running, it will give up its use of the
91   soundcard to allow JACK to take over (and can optionally be told to
92   route its own audio through JACK). When JACK finishes, it sends out
93   another message, and PulseAudio can once again use the soundcard
94   directly.
95 </p>
96 </dd>
97 <dt>What is the problem?</dt>
98 <dd>
99 <p>
100   This relatively simple system ought to be the basis for excellent
101   cooperation between PulseAudio and JACK. Unfortunately, it relies on
102   everything being correctly configured for it to work, and Ubuntu
103   have repeatedly failed to get this configuration correct.
104 </p>
105 <p>
106   The specific issues known at this time (spring 2013) are:
107   <ul>
108     <li>a bug in PulseAudio that causes it not to give up the
109       soundcard when JACK asks</li>
110     <li>bad package dependency information that causes a critical
111       package to be missing even when JACK and PulseAudio are
112       installed</li>
113     <li>a bug that causes JACK to freeze up when told to stop, 
114       causing issues with restarting</li>
115   </ul>
116 </dd>
117 <dt>Symptoms</dt>
118 <dd>
119 <p>
120   <ul>
121     <li>Cannot start JACK (though see the next section for other
122       causes of this)</li>
123     <li>JACK starts but there is no sound coming from Ardour or other
124     applications that use JACK.</li>
125   </ul>
126 </p>
127 </dd>
128 <dt>How to fix</dt>
129 <dd>
130 </dd>
131 </dl>
132
133 <h2>Problems with JACK configuration</h2>
134
135 <dl>
136   <dt>What is the problem?</dt>
137   <dd>
138     <p>
139       To function as intended, JACK needs to run with access to two
140       operating system facilities called "realtime scheduling" and "memory
141       locking". This means that you, the user who starts JACK, must be
142       allowed access to these facilities. By default, Ubuntu does create a
143       user group that has this permission but ... it does not put new
144       users into this group by default. Consequently, you will not have
145       permission to run JACK in the way you should.
146     </p>
147   </dd>
148   <dt>Symptoms</dt>
149   <dd>
150     <p>
151       A message like "Cannot lock down memory" in the output from JACK as
152       it starts up. This output may be "hidden" in the Messages window of
153       QJackctrl (aka JACK Control), so you should check there.
154     </p>
155   </dd>
156   <dt>How to fix</dt>
157   <dd>
158     <p>
159       Run the command <code>sudo usermod -a -G
160         audio <em>YOUR-LOGIN-NAME</em></code>. Then logout and login again.
161     </p>
162   </dd>
163 </dl>
164