Enter recording software. Recording software ranges from basic packages — even the most modest of which will exceed the recording capabilities of most digital pianos — to applications that can handle complete movie scores, including film synchronization. The higher-end applications are called Digital Audio Workstations (DAWs). These software applications cost more than many of the lower-priced digital pianos, and can be used to record, edit, and mix combinations of MIDI and audio tracks, limited only by the processing power and storage capacity of the computer. If you have an opportunity to look inside a modern recording studio, you'll find that computers running DAW software have replaced multi-track tape recorders.

Virtual instrument software can be controlled, or "played," by your digital piano via MIDI, and can also be played by recording software that resides on the computer. Virtual instruments can take the form of standalone software or plug-ins. Standalone instrumental software doesn't rely on other software, but plug-ins require a host application such as the DAW software described above, or other software developed specifically as a plug-in host. Virtual instruments can be sample sets for strings, horns, or even pianos, or they can accurately emulate the sonic textures and controls of popular electronic instruments that are no longer produced, such as certain legacy synthesizers. (A number of piano-specific virtual instruments are explored in the article "My Other Piano is a Computer," elsewhere in this issue.) While virtual instruments allow you to expand your sound palette beyond the onboard voices of your digital piano, they can place heavy demands on your computer's processor and memory. A mismatch of software demand and hardware capability can result in latency — audible delay between the time the key is played and the time the sound is heard. If both the digital piano's onboard voices and the virtual instrument's sounds are played simultaneously, there could be a time gap between the two outputs that would make the result unusable. Virtual instruments can be an exciting addition, but be prepared for the technical implications.

Notation applications are the word processors of music. If you have a tune in your head and want to share it, simply recording it will allow others to hear it. But in order for most people to play your music, it must be written out in standard notation. In the early days of notation software, it was necessary to place each note on the staff individually using the computer's keyboard and mouse. The advent of MIDI created the ability to play a note on a musical keyboard and have it appear on the computer screen. Today's notation programs virtually take musical dictation: you play it, and it appears on the screen.

But there's a slight hitch that must be addressed. The computer's capacity to accurately capture the timing of your playing, down to tiny fractions of a second, allows it to reproduce subtle nuances with great precision. In a recording, this is a great asset; in notation, it can be a complete disaster. If — in the computer's cold calculations — you've just played a passage involving dotted 128th-note triplets, the software will happily display them. Unless notation applications are told otherwise, they are perfectly capable of creating notation that is absolutely accurate and absolutely unreadable. This is where quantization comes in. Quantization — also applicable to the recording capabilities of higher-end digital pianos — allows you to specify, as a note value, the level of timing detail you desire. If the software is told to quantize at the eighth-note level, the printed music will contain no 16th notes — nothing shorter than an eighth note will be scored. If quantization is set at 16th notes, there will be more detail; if set to quarter notes, the music will be devoid of any timing detail beyond that value. This must be used judiciously; too much quantization and musical detail is lost, too little and the notation becomes an indecipherable pile of notes (for a good laugh, Google "Prelude and The Last Hope in C and C# Minor"). As with recording applications, there is a wide range of capabilities available, from programs that will let you capture simple melodies, to applications that will easily ingest the most complex symphonic works, transpose and separate the individual instrumental parts, and print them out.

The final category we'll discuss is educational software. Just as there are educational programs and games to assist in learning math or reading, there are applications that use the MIDI connection between your instrument and computer to help you learn different aspects of music. A music-reading program may display a note, chord, or passage on the screen; you play the displayed notes on the digital piano and the software keeps track of your accuracy and helps you improve. An ear-training application may play for you an interval that you then try to play yourself on the keyboard. The application will tell you what you did right or wrong and help you improve your ear. Other types teach music history and music theory. While many of these applications are geared to specific levels or ages, some can be set to multiple levels as you progress, or for use by multiple players.