Provided by: jack-keyboard_2.7.2-1_amd64 bug


       jack-keyboard - A virtual keyboard for JACK MIDI


       jack-keyboard [ -C ] [ -G ] [ -K ] [ -T ] [ -V ] [ -a input port ] [ -k ] [ -r rate ] [ -t
       ] [ -u ] [ -c channel ] [ -b bank ] [ -p program ] [ -l layout ]


       -C     Enable "keyboard cue" - two horizontal lines over a part of  keyboard;  keys  under
              the  lower  line  are  mapped  to the lower row of your PC keyboard; keys under the
              upper line are mapped to the upper row.

       -G     Disable GUI.  It makes jack-keyboard look like it did before version 2.0.

       -K     Grab the keyboard.  This makes jack-keyboard receive keyboard events even  when  it
              does  not  have  focus.   In other words, you can play while mousing in a different

              Note: It's not reliable yet.  It does not work when some  other  application  keeps
              the  keyboard  grabbed.   It does not work with GNOME.  Even when it seems to work,
              some keyboard events may get lost.

       -T     Toggle titlebar, on which  channel/bank/program  information  is  shown.   With  -G
              option, it disables titlebar; otherwise it enables it.

       -V     Print version number to standard output and exit.

       -a input port
              Automatically  connect  to the named input port.  Note that this may cause problems
              with LASH.

       -k     Allow connecting to other instances of  jack-keyboard  (see  PIANOLA  MODE  below).
              Without  this option, jack-keyboard will refuse to connect to any JACK client whose
              name starts  in  "jack-keyboard";  this  is  to  prevent  loops.   Note  that  it's
              impossible  to  connect  instance of jack-keyboard to itself, even with this option

       -r rate
              Set rate limit to rate, in Kbaud.  Limit  defined  by  the  MIDI  specification  is
              31.25.  By default this parameter is zero, that is, rate limiting is disabled.

       -t     Send  all  MIDI  messages  with  zero time offset, making them play as soon as they
              reach the synth.  This was the default behavior before version 1.6.

       -u     By  default,  jack-keyboard  does  not  send  program/bank  change  messages  after
              reconnecting, so the newly connected instrument remains at previous settings.  This
              option changes that behaviour.

       -c channel
              Set initial MIDI channel to channel; by default it's 1.

       -b bank
              Set initial MIDI bank to bank.  With  this  option,  jack-keyboard  will  send  the
              bank/program change once, when it connects.

       -p program
              Set initial MIDI program to program.  With this option, jack-keyboard will send the
              bank/program change once, when it connects.

       -l layout
              Specify the layout of computer keyboard being used.  Valid  arguments  are  QWERTY,
              QWERTZ, AZERTY, and DVORAK.  Default is QWERTY.


       jack-keyboard  is  a  virtual  MIDI keyboard - a program that allows you to send JACK MIDI
       events (play ;-) using your PC keyboard.  It's somewhat similar to vkeybd, except it  uses
       JACK  MIDI  instead  of  ALSA,  and the keyboard mapping is much better - it uses the same
       layout as trackers (like Impulse Tracker) did, so you have two and half octaves under your


       Keyboard mapping is the same as in Impulse Tracker.  This is your QWERTY keyboard:

                    +----+----+    +----+----+----+    +----+----+
                    | 2  | 3  |    | 5  | 6  | 7  |    | 9  | 0  |
                 | Q  | W  | E  | R  | T  | Y  | U  | I  | O  | P  |
                        | S  | D  |    | G  | H  | J  |
                     | Z  | X  | C  | V  | B  | N  | M  |

       And this is MIDI mapping:

                    +----+----+    +----+----+----+    +----+----+
                    |C#5 |D#5 |    |F#5 |G#5 |A#5 |    |C#6 |D#6 |
                 | C5 | D5 | E5 | F5 | G5 | A5 | B5 | C6 | D6 | E6 |
                        |C#4 |D#4 |    |F#4 |G#4 |A#4 |
                     | C4 | D4 | E4 | F4 | G4 | A4 | B4 |

       Spacebar  is  a sustain key.  Holding it when pressing or releasing key will make that key
       sustained, i.e. Note Off MIDI event won't be sent after releasing  the  key.   To  release
       (stop) all the sustained notes, press and release spacebar.

       Holding  Shift  when  pressing  note will make it louder (it increases velocity).  Holding
       Ctrl will do the opposite.  You can change the default velocity  by  moving  the  Velocity
       slider.   You  can  change the "high" and "low" velocity values by moving the slider while
       holding Shift or Ctrl keys.

       Pressing "-" and "+" keys on numeric keypad changes the octave your keyboard is mapped to.
       Pressing "*" and "/" on numeric keypad changes MIDI program (instrument).  Pressing Insert
       or Delete keys will connect jack-keyboard to the next/previous MIDI input  port  (it  will
       cycle  between  running instances of ghostess, for example).  Home and End keys change the
       MIDI channel.  Page Up and Page Down keys switch the MIDI bank.

       Esc works as a panic key - when you press it, all sound stops.


       To switch directly to a channel, bank or program, enter its number on the  numeric  keypad
       (it  won't be shown in any way) and press Home or End (to change channel), Page Up or Page
       Down (to change bank) or "/" or "*" (to  change  program).   For  example,  to  change  to
       program number 123, type, on the numeric keypad, "123/", without quotes.


       When  -G  xor  -T  is given, some informational messages in the title bar appear. They are
       supposed to be self explanatory.  If you see "bank/program change not sent", it means that
       the  bank/program  numbers  as seen in the title bar were not sent.  In other words, synth
       the jack-keyboard is connected to may use different values.  This happens at  startup  and
       after switching between synths (using Insert/Delete keys).  To send bank/program change at
       startup, use -b and -p  parameters.   To  automatically  send  bank/program  change  after
       reconnect, use the -u option.


       In addition to the MIDI output port, jack-keyboard also opens MIDI input (listening) port.
       MIDI events going into this port will be passed to the output port unmodified, except  for
       channel  number, which will be set to the one jack-keyboard is configured to use.  Note On
       and Note Off MIDI events will cause visible effect (pressing and releasing) on keys,  just
       like if they were being pressed using keyboard or mouse.

       jack-keyboard  will  never  connect  to  it's own MIDI input port.  It will also refuse to
       connect to any other client whose name begins in "jack-keyboard", unless the  "-k"  option
       is given.  It is, however, possible to connect these ports manually, using jack_connect or
       qjackctl; this may create feedback loop.


       jackd(1), ghostess(1), qjackctl(1)


       Key grabbing is unreliable.

       Many PC keyboards have problems with polyphony.  For example, with the one I'm using right
       now, it's impossible to press "c", "v" and "b" at the same time.  It's a hardware problem,
       not the software one.

       The spin widgets used to set channel/bank/program number don't take focus,  so  the  value
       cannot  be  entered  into  them in the usual way.  It's because jack-keyboard already uses
       numeric keys for different purposes.  You can still directly enter channel/bank/program in
       a way described above.