]> Shamusworld >> Repos - ardour-manual/blob - include/midi-on-linux.html
First pass at cleanup of Part II.
[ardour-manual] / include / midi-on-linux.html
1
2 <p>
3   The right approach for using MIDI on Linux depends on which version of JACK
4   is in use. The world divides into:
5 </p>
6
7 <table class="dl">
8   <tr><th>Systems using JACK 1, versions 0.124 or later</th>
9   <td>On these systems, simply start JACK with the <code>-X alsa_midi</code>
10   server argument. To support legacy control applications, the <code>-X
11   seq</code> argument to the ALSA backend of JACK can also be used to get the
12   exact same results.</td></tr>
13   <tr><th>All others</th>
14   <td>Use a2jmidid to act as a bridge between ALSA MIDI and JACK. Do not use
15   the <code>-X seq</code> or <code>-X raw</code> arguments&mdash;the timing and
16   performance of these options is unacceptable.</td></tr>
17 </table>
18
19 <h2>Using a2jmidid</h2>
20
21 <p>
22   <dfn>a2jmidid</dfn> is an application that bridges between the system
23   <abbr title="Musical Instrument Digital Interface">MIDI</abbr> ports and
24   <abbr title="JACK Audio Connection Kit">JACK</abbr>.
25 </p>
26
27 <p>
28   First it must be ensured that there is no ALSA sequencer support enabled in
29   JACK. To check that, open QJackCtl's <kbd class="menu">Setup</kbd> window.
30   Set <kbd class="menu">Settings &gt; MIDI Driver</kbd> to <kbd
31   class="input">none</kbd>. Then uncheck the <kbd class="optoff">Misc &gt;
32   Enable ALSA Sequencer support</kbd> option. Now restart the jack server
33   before going on.
34 </p>
35
36 <h3>Check for a2jmidid availability</h3>
37
38 <p>
39   Next, check whether a2jmidid is already installed. After starting the JACK
40   server, go to the command line and type:
41 </p>
42
43 <kbd class="cmd lin">a2jmidid -e</kbd>
44
45 <p>
46   If a2jmidid does not exist, install it with the software manager of the
47   Linux distribution in use and try again.
48 </p>
49
50 <h2>Check available MIDI ports</h2>
51
52 <p>
53   If JACK is correctly configured for MIDI, then the MIDI ports should appear
54   in qjackctl under <kbd class="menu">Connections &gt; MIDI</kbd>.
55 </p>
56
57 <h3>Making it automatic</h3>
58
59 <p>
60   Once it has been verified that the ports appear in JACK as expected, this can
61   be made to happen whenever JACK is started:
62 </p>
63
64 <ul>
65   <li>If a newer version of JACK 1 is in use, just make sure the <code>-X
66   alsa_midi</code> or <code>-X seq</code> options are enabled for whatever
67   technique is being used to start JACK.</li>
68   <li>For other versions of JACK, add <code>a2jmidid -e &amp;</code> as an
69   "after start-up" script in the <kbd class="menu">Setup &gt; Options</kbd> tab
70   of QJackCtl, so that it is started automatically whenever JACK is
71   started.</li>
72 </ul>
73