1JACK-KEYBOARD(1) JACK-KEYBOARD(1)
2
3
4
6 jack-keyboard - A virtual keyboard for JACK MIDI
7
9 jack-keyboard [ -C ] [ -G ] [ -K ] [ -T ] [ -V ] [ -a input port ] [ -k
10 ] [ -r rate ] [ -t ] [ -u ] [ -c channel ] [ -b bank ] [ -p program ] [
11 -l layout ]
12
13
15 -C Enable "keyboard cue" - two horizontal lines over a part of key‐
16 board; keys under the lower line are mapped to the lower row of
17 your PC keyboard; keys under the upper line are mapped to the
18 upper row.
19
20 -G Disable GUI. It makes jack-keyboard look like it did before
21 version 2.0.
22
23 -K Grab the keyboard. This makes jack-keyboard receive keyboard
24 events even when it does not have focus. In other words, you
25 can play while mousing in a different window.
26
27 Note: It's not reliable yet. It does not work when some other
28 application keeps the keyboard grabbed. It does not work with
29 GNOME. Even when it seems to work, some keyboard events may get
30 lost.
31
32 -T Toggle titlebar, on which channel/bank/program information is
33 shown. With -G option, it disables titlebar; otherwise it
34 enables it.
35
36 -V Print version number to standard output and exit.
37
38 -a input port
39 Automatically connect to the named input port. Note that this
40 may cause problems with LASH.
41
42 -k Allow connecting to other instances of jack-keyboard (see
43 PIANOLA MODE below). Without this option, jack-keyboard will
44 refuse to connect to any JACK client whose name starts in "jack-
45 keyboard"; this is to prevent loops. Note that it's impossible
46 to connect instance of jack-keyboard to itself, even with this
47 option set.
48
49 -r rate
50 Set rate limit to rate, in Kbaud. Limit defined by the MIDI
51 specification is 31.25. By default this parameter is zero, that
52 is, rate limiting is disabled.
53
54 -t Send all MIDI messages with zero time offset, making them play
55 as soon as they reach the synth. This was the default behavior
56 before version 1.6.
57
58 -u By default, jack-keyboard does not send program/bank change mes‐
59 sages after reconnecting, so the newly connected instrument
60 remains at previous settings. This option changes that behav‐
61 iour.
62
63 -c channel
64 Set initial MIDI channel to channel; by default it's 1.
65
66 -b bank
67 Set initial MIDI bank to bank. With this option, jack-keyboard
68 will send the bank/program change once, when it connects.
69
70 -p program
71 Set initial MIDI program to program. With this option, jack-
72 keyboard will send the bank/program change once, when it con‐
73 nects.
74
75 -l layout
76 Specify the layout of computer keyboard being used. Valid argu‐
77 ments are QWERTY, QWERTZ, AZERTY, and DVORAK. Default is
78 QWERTY.
79
81 jack-keyboard is a virtual MIDI keyboard - a program that allows you to
82 send JACK MIDI events (play ;-) using your PC keyboard. It's somewhat
83 similar to vkeybd, except it uses JACK MIDI instead of ALSA, and the
84 keyboard mapping is much better - it uses the same layout as trackers
85 (like Impulse Tracker) did, so you have two and half octaves under your
86 fingers.
87
89 Keyboard mapping is the same as in Impulse Tracker. This is your
90 QWERTY keyboard:
91
92 +----+----+ +----+----+----+ +----+----+
93 | 2 | 3 | | 5 | 6 | 7 | | 9 | 0 |
94 +----+----+----+----+----+----+----+----+----+----+
95 | Q | W | E | R | T | Y | U | I | O | P |
96 +----+----+----+----+----+----+----+----+----+----+
97 | S | D | | G | H | J |
98 +----+----+----+----+----+----+----+
99 | Z | X | C | V | B | N | M |
100 +----+----+----+----+----+----+----+
101
102 And this is MIDI mapping:
103
104 +----+----+ +----+----+----+ +----+----+
105 |C#5 |D#5 | |F#5 |G#5 |A#5 | |C#6 |D#6 |
106 +----+----+----+----+----+----+----+----+----+----+
107 | C5 | D5 | E5 | F5 | G5 | A5 | B5 | C6 | D6 | E6 |
108 +----+----+----+----+----+----+----+----+----+----+
109 |C#4 |D#4 | |F#4 |G#4 |A#4 |
110 +----+----+----+----+----+----+----+
111 | C4 | D4 | E4 | F4 | G4 | A4 | B4 |
112 +----+----+----+----+----+----+----+
113
114
115 Spacebar is a sustain key. Holding it when pressing or releasing key
116 will make that key sustained, i.e. Note Off MIDI event won't be sent
117 after releasing the key. To release (stop) all the sustained notes,
118 press and release spacebar.
119
120 Holding Shift when pressing note will make it louder (it increases
121 velocity). Holding Ctrl will do the opposite. You can change the
122 default velocity by moving the Velocity slider. You can change the
123 "high" and "low" velocity values by moving the slider while holding
124 Shift or Ctrl keys.
125
126 Pressing "-" and "+" keys on numeric keypad changes the octave your
127 keyboard is mapped to. Pressing "*" and "/" on numeric keypad changes
128 MIDI program (instrument). Pressing Insert or Delete keys will connect
129 jack-keyboard to the next/previous MIDI input port (it will cycle
130 between running instances of ghostess, for example). Home and End keys
131 change the MIDI channel. Page Up and Page Down keys switch the MIDI
132 bank.
133
134 Esc works as a panic key - when you press it, all sound stops.
135
137 To switch directly to a channel, bank or program, enter its number on
138 the numeric keypad (it won't be shown in any way) and press Home or End
139 (to change channel), Page Up or Page Down (to change bank) or "/" or
140 "*" (to change program). For example, to change to program number 123,
141 type, on the numeric keypad, "123/", without quotes.
142
144 When -G xor -T is given, some informational messages in the title bar
145 appear. They are supposed to be self explanatory. If you see
146 "bank/program change not sent", it means that the bank/program numbers
147 as seen in the title bar were not sent. In other words, synth the
148 jack-keyboard is connected to may use different values. This happens
149 at startup and after switching between synths (using Insert/Delete
150 keys). To send bank/program change at startup, use -b and -p parame‐
151 ters. To automatically send bank/program change after reconnect, use
152 the -u option.
153
155 In addition to the MIDI output port, jack-keyboard also opens MIDI
156 input (listening) port. MIDI events going into this port will be
157 passed to the output port unmodified, except for channel number, which
158 will be set to the one jack-keyboard is configured to use. Note On and
159 Note Off MIDI events will cause visible effect (pressing and releasing)
160 on keys, just like if they were being pressed using keyboard or mouse.
161
162 jack-keyboard will never connect to it's own MIDI input port. It will
163 also refuse to connect to any other client whose name begins in "jack-
164 keyboard", unless the "-k" option is given. It is, however, possible
165 to connect these ports manually, using jack_connect or qjackctl; this
166 may create feedback loop.
167
169 jackd(1), ghostess(1), qjackctl(1)
170
172 Key grabbing is unreliable.
173
174 Many PC keyboards have problems with polyphony. For example, with the
175 one I'm using right now, it's impossible to press "c", "v" and "b" at
176 the same time. It's a hardware problem, not the software one.
177
178 The spin widgets used to set channel/bank/program number don't take
179 focus, so the value cannot be entered into them in the usual way. It's
180 because jack-keyboard already uses numeric keys for different purposes.
181 You can still directly enter channel/bank/program in a way described
182 above.
183
184
185
186jack-keyboard 2.4 20 April 2008 JACK-KEYBOARD(1)