MidiWave is a Windows program which allows "conversion" of a WAV file into a MIDI file. The word conversion is in quotes here because there is no well-defined or unequivocally right way to do this translation; and in general it involves as much art as science. The intent of MidiWave is to be a musician's amanuensis, allowing a musician, experienced or inexperienced, to convert a recorded sound into musical notes on a staff. The ideal would be for the user to be able to hum a tune into a microphone, and have the tune translated directly to notes on a staff, and thence to a MIDI file. MidiWave is still quite a ways from meeting this ideal, but it is can do a large part of the work of such a conversion, and is also an educational and fun program to experiment with.
Shown above is the main window of the MidiWave application.
Various menu choices allow the user to load and play WAV files, parse them into notes and chords, and convert the results into MIDI format so that it can be saved to a file. The main functions of MidiWave are also more easily accessible from the context-sensitive buttons shown in the display above.
MidiWave displays the waveform of the WAV file in its lower Time Domain window. Directly above that, in the Score window, it can display the musical score associated with this time history, which is derived from its parsing and note assignment process. The upper two windows show information about the waveform, or a sample of it, in terms of its frequency content. The Frequency Domain window displays the Fourier transform, or frequency spectrum, of the selected sample of the waveform. The peaks in this spectrum point to the notes in the Keyboard window to which they correspond. MidiWave's note selection process is based on looking at these peaks and choosing which notes should go into the score. It may be seen that MidiWave's display gives a nice intuitive feel for the meaning of a frequency spectrum.
A large part of MidiWave's operation in parsing a waveform and choosing notes is automated, but the automatic operation can be overridden and extended by the user, allowing great flexibility in its use. The Auto Parse function performs an automatic decomposition of the waveform into parse segments, which MidiWave interprets as individual notes or chords. The Auto FFT function then assigns a note or combination of notes (chord) to each of these parse segments based on the most prominent peaks seen in the frequency spectrum. The parameters and sensitivity of both the parsing and note/chord selection processes can be manually adjusted by the user.
Both parsing and note/chord selection can also be done completely manually or by a combination of automatic and manual operation. Manual Parse mode allows the user to insert, remove, and move parse segment boundaries manually using the mouse. In addition, double-clicking on a note or chord in the Score window allows its properties to be edited: Notes added or removed, pitch and volume changed, or instrument patches changed. The Keyboard window is an aid in this process since it may be played with the mouse just like a real piano keyboard.
The download file is an installation program. Download it to your hard disk and then double click it to install MidiWave and its help file. An uninstall option is provided.
After downloading and installing MidiWave, the quickest way to learn how to use it is to go to the 5-Minute Introduction in the Help file. This help page gives a quick introduction to the basic capabilities and operation of MidiWave. After invoking MidiWave, it will be helpful if you position this help window and the MidiWave application window so that you can see both windows at the same time, and then just work through the steps in the help file.