MIDIKeys is a MIDI piano keyboard control surface for the iPhone .
MIDIKeys doesn't produce any sound on its own, it is for playing hardware or software VST-style MIDI synthesizers via MIDI hardware interfaces connected to the iPhone dock connector or virtual MIDI instruments like IK Multimedia SampleTank® for iOS or ThumbJam running in the background on your iPhone.
The entire range may be transposed up or down up to one octave in semitone increments using the "Transpose (semitones)" slider on the settings page or shifted a full octave (up to the two octave limit) by touching the 8va -/+ buttons on the main screen.
Both fixed or variable note MIDI Note On event velocity based on touch position within the key are available as options on the settings page.
While playing, you may also optionally send real-time volume, expression, modulation, or wind controller MIDI messages by tilting the iPhone/iPod Touch to the right or left.
Set the transmit channel using the MIDI Channel slider. Any channel from 1-16 may be selected. Channel 1 is the default.
Choose between "Omni" sending MIDI data to all CoreMIDI apps or "Virtual Port" sending to a named CoreMIDI virtual output port. When the "Virtual Port option is selected, MIDIKeys will show up as an input option labeled "MIDIKeys" in apps that support virtual ports like Sonosaurus ThumbJam and MIDIBridge. "Omni" mode is selected by default.
If you want to transpose the pitches being sent out, you may set a transpose value up to +/- one octaves in semitone increments on the Transpose (semitones) slider. No transpose is the default.
Note-on events may be sent with either a fixed or variable velocity based on where you touch on the key. Set the maximum velocity using the Velocity slider. Any value from 0-127 may be selected. Default value is 100.
Select between fixed or variable velocity mapped to the touch position using the selector. When the velocity is mapped to touch, the minimum velocity is approximately 20% of the value set on the Velocity slider and the max is 100% of the value. Touching lower or higher on the key (area below the black keys only for the white keys) results in lower or higher velocity values sent in the MIDI Note On event for the key.
MIDIKeys can send Volume, Expression, Modulation, or Breath Control message by tilting the device to the right or left.
Select a controller on the Tilt Controller selector. Default is no controller messages.
When a controller is enabled, tilting the device to the right or left will send the selected controller messages to the external device. Values increase as the device is tilted farther to the right.
You may set the tilt sensitivity using the Tilt Sensitivity slider. The range is from 1 to 4, with higher values being more sensitive. Default value is 1.5.
If you ever have "stuck" notes, you may touch the "Shhh" icon on the main screen to send a MIDI "All Notes Off" message and stop the sounds.
All settings are saved when exiting MIDIKeys and restored the next time it is run.