Wave Editor using the MCI API - Version 1.0
This project is a more complex demonstration of the features of my CWave class.
Due to the limitations of the MCI API it does only have some basic features of a Wave Editor:
- Load and Save wave files
- Play and Record.
- Delete parts of the wave file.
- Show the waveform
- Play only selected part of the wave.
- Zoom in and out.
- Change colors of displayed waveform.
The waveform is displayed by loading all samples into memory and drawing lines between the maximum to minimum level of the samples. Depending on the available resolution only parts of the waveform are painted. By using the zoom function you can take a closer look at the waveform.
- When using MCI you have little control over the wave, so only limited functionality is available.
- The wave file is loaded twice in memory: for the display and for playback.
- Bigger files are extremely slow.
A better way to implement this wave editor would be using the low level multimedia API and probably I will someday...
See also: CWave.
Download zipped executable
Download source code
This class is part of the Pablo Software Solutions MFC Extension Package - Controls Edition