Sanjay's Piano application

The applet should run now in its own window; you will need the latest version of Java. This Java piano offers the following features:
  • Use your computer's QWERTY keyboard to play the piano
  • External MIDI keyboard support (needs Java 1.4.2)
  • Scaleable scrollable image of keyboard, over which you can click or drag over to play notes
  • Select from your sound card's instrument banks, modify MIDI controllers
  • Limit to notes from given scales - test 10 scale patterns in every key
  • Choose your temperament, including 1/4 comma mean tone, Pythagorean and Werckmeister; transpose
  • Chord recognition - analyses and suggests names for chords you play
  • Select and play chords from a comprehensive list of classical and jazz chords; alter chord voicing and inversion.
  • Experimental feature: analyses the counterpoint as you play. Spots parallel fifths, octaves etc.
  • Store a sequence of chords, and play them back. Automatically chooses appropriate voicings depending on the chords's context.
  • Experimental feature: listens through the computer's microphone, and displays what it hears as notes on the keyboard. (May not work through a web browser. Run applet separately using the file Apps.jar using the command line java -jar Apps.jar piano.PianoApp
  • Configurable look and feel
Click anywhere on the piano, then press keys on your keyboard to play notes.

Keyboard layout:

 a s   f g h   k l   ' 1 2   4 5   7 8 9   - =
\ Z X C V B N M , . / t Q W E R T Y U I O P [ ]


Filter keyboard notes: disallows keypresses that do not fit into the currently selected scale.
Filter MIDI input: blocks MIDI events from external source that do not fit into the currently selected scale.


The tonal centre is the scale selected in the Scale tab.

Written in Sun Java
Dr. Sanjay Manohar 2005