README: markdown, screenshot, contact
This commit is contained in:
parent
4d57549bbb
commit
93d31d76d5
127
README.md
Normal file
127
README.md
Normal file
@ -0,0 +1,127 @@
|
||||
# jack-keyboard
|
||||
|
||||
![Screenshot of jack-keyboard](jack-keyboard)
|
||||
|
||||
## What is it?
|
||||
|
||||
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.
|
||||
|
||||
## How to compile it?
|
||||
|
||||
If you're using FreeBSD, install from ports - audio/jack-keyboard.
|
||||
|
||||
Otherwise, you need JACK with MIDI support, gtk+ 2.6 or higher,
|
||||
make(1), gcc and all the standard headers. Untar the file, type
|
||||
'make install' and that's it. If there is any problem, drop me
|
||||
an email (trasz@FreeBSD.org) and I will help you. Really.
|
||||
|
||||
## How to use it?
|
||||
|
||||
You need JACK with MIDI support and some softsynth that accepts
|
||||
JACK MIDI as input. Ghostess, http://home.jps.net/~musound/,
|
||||
is a good choice. Of course you will also need some DSSI plugin
|
||||
that will make the actual sound. WhySynth is nice.
|
||||
|
||||
When you have all of these installed: first, run jackd. Then run
|
||||
ghostess with a plugin of choice. Then run jack-keyboard. Press
|
||||
'z' key. You should hear sound.
|
||||
|
||||
## Keyboard
|
||||
|
||||
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.
|
||||
|
||||
## 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
|
||||
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.
|
||||
|
||||
## License
|
||||
|
||||
JACK Keyboard is distributed under the BSD license, two clause.
|
||||
|
||||
## Contact
|
||||
|
||||
If you have any questions, comments, suggestions, patches or anything,
|
||||
let us know:
|
||||
* Edward Tomasz Napierala <trasz@FreeBSD.org> (initial version)
|
||||
* Hans Petter Selasky <hselasky@FreeBSD.org> (further development, gtk3)
|
||||
* Markus Schmidt <schmidt@boomshop.net> (further development, UX/UI)
|
BIN
jack_keyboard.png
Normal file
BIN
jack_keyboard.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 21 KiB |
Loading…
Reference in New Issue
Block a user