Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
JACK-KEYBOARD(1)					      JACK-KEYBOARD(1)

NAME
       jack-keyboard - A virtual keyboard for JACK MIDI

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

OPTIONS
       -C     Enable "keyboard cue" - two horizontal lines over	a part of key-
	      board;  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 window.

	      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 en-
	      ables 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 PI-
	      ANOLA 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 set.

       -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 mes-
	      sages after reconnecting,	so the newly connected instrument  re-
	      mains 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 con-
	      nects.

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

DESCRIPTION
       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
       fingers.

KEY BINDINGS
       Keyboard	mapping	is the same as in Impulse Tracker.  This is  your  QW-
       ERTY 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  ve-
       locity).	  Holding  Ctrl	 will do the opposite.	You can	change the de-
       fault 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  be-
       tween  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.

SETTING	CHANNEL/BANK/PROGRAM NUMBER DIRECTLY
       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.

TITLEBAR
       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 parame-
       ters.  To automatically send bank/program change	after  reconnect,  use
       the -u option.

PIANOLA	MODE
       In  addition to the MIDI	output port, jack-keyboard also	opens MIDI in-
       put (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.

SEE ALSO
       jackd(1), ghostess(1), qjackctl(1)

BUGS
       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 fo-
       cus,  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.

jack-keyboard 2.4		 20 April 2008		      JACK-KEYBOARD(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=jack-keyboard&sektion=1&manpath=FreeBSD+Ports+15.0>

home | help