Virtual MIDI Piano Keyboard Icon

Virtual MIDI Piano Keyboard

Virtual MIDI controller for Linux, Windows and OSX

4.9 Stars (39)
3,115 Downloads (This Week)
Last Update:
Download vmpk-0.6.2a.tar.bz2
Browse All Files
Windows Mac Linux



VMPK is a virtual MIDI piano keyboard for Linux, Windows and OSX. Based on Qt and Drumstick the program is a MIDI event generator using the computer's alphanumeric keyboard and the mouse. It may be used also to display received MIDI notes.

Virtual MIDI Piano Keyboard Web Site


  • 1 MIDI IN port
  • 1 MIDI OUT/THRU port
  • MIDI standards compliant
  • Configurable number of keys/octaves
  • Configurable starting note
  • Configurable key size
  • Configurable computer keyboard mappings
  • Touch screen support
  • MIDI output to Internal synthesizer, using FluidSynth soundfont (.sf2) synth
  • MIDI input and output to network, using an ipMIDI compatible protocol
  • MIDI input and output to OS native drivers (Windows, Linux and Mac OSX)
  • Translations to many languages


User Ratings

ease 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
features 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
design 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
support 1 of 5 2 of 5 3 of 5 4 of 5 5 of 5 4 / 5
Write a Review

User Reviews

  • wph1
    1 of 5 2 of 5 3 of 5 4 of 5 5 of 5

    This works really well after installing "coolsoft VirtualMIDISynth". I had to adjust the options for voices/reverb/chorus and lower the values to 48/10/10 - because my computer is not very good. And I lowered the latency to 50 as well - after which the timing worked perfect. It took a bit of exploring options in both but I got my 25 key midi xKey to work. Great free program! Thanks!

    Posted 08/25/2015
  • gujaratikanudo
    1 of 5 2 of 5 3 of 5 4 of 5 5 of 5

    good... but need some tune improvements for HP Envy x360 Touch Screen Laptops.

    Posted 07/13/2015
  • cpumeshman
    1 of 5 2 of 5 3 of 5 4 of 5 5 of 5

    In response to the latency complaints . . . . The src is to the least, superb but in its structure subdued to gcc issues, observe not any gcc bugs !, only. Build QT with full -O3 -fno-gcse -mtune=(some cpu), all mtunes are cpu portable, but at it's best on the target tuned hardvare host. Then build vmpk with -03 -fno-gcse -fno-guess-branch-probability -mtune=(your choice) And all latency disappears, even on comparatively slow ten year + old machines, driving an equally built timidity++ driver. One tip with Timidity++drv. Search and replace -mms-bitfields with -mno-ms-bitfields in the build files, as it causes squeeks'nscratching. There is no need to provide MSVC linking support for a driver. and link -static-libgcc otherwise the driver can hook on other gcc built executables and cause a msvcrt splash screens on exit. Tested with Hydrogen, Lmms, Qsynth, Mscore, 2 mention a few, with gcc 4.8,a bit custombuilt one . . but there shall be no difference with a regular say 4.8.1 and up. This counts for all "ïntel like arch" builds

    Posted 08/22/2014
  • plcl
    1 of 5 2 of 5 3 of 5 4 of 5 5 of 5

    This is the author, answering to the former reviewer, someone called Paweł Audionysos. VMPK is not responsible for the bad latency of the Microsoft GS Wavetable Synth, or any other synth that you may connect to the program. Many people asked me politely about the latency problem of this synth, which I've always replied. The web page has a clue for Windows users, recommending CoolSoft Virtual MIDI Synth instead, which can be configured with an output buffer of 0ms, easily solving the problem on Windows.

    Posted 01/05/2014
Read more reviews

Additional Project Details


French, Czech, English, Serbian, Galician, Swedish, German, Spanish, Russian

Intended Audience

End Users/Desktop

User Interface


Programming Language



Screenshots can attract more users to your project.
Features can attract more users to your project.