CMMSystem

A set of MFC classes encapsulating the Win32 Multimedia APIs
Download

CMMSystem Ranking & Summary

Advertisement

  • Rating:
  • License:
  • Freeware
  • Publisher Name:
  • Naughter Software
  • Operating Systems:
  • Windows All
  • File Size:
  • 72 KB

CMMSystem Tags


CMMSystem Description

CMMSystem provides a collection of MFC classes to encapsulate some of the Win32 Multimedia APIs. Areas covered include the waveOut, waveIn, mmio and mixer APIs Ever since studying Audio Signal Processing in college, I've always been interested in computer based audio. These classes are the results of my investigations into base Win32 support for this area. The classes which constitute CMMSystem are: CMMIOFile: This class implements a very simple wrapper for the "mmio..." functions. These functions provide for reading and writing of RIFF files, which the common .wav file is one instance of. Like all the classes in CMMSystem it is exception based and will throw an MFC style "CMMIOException" exception when any errors occur. For an example on how easy it is to use this class, check out the code for the PlayWav and RecordWav sample projects included in the download. CWaveOut: This implements a wrapper for the "waveOut.." functions. This was the first class developed in CMMSystem and was based on the great tutorial on audio input processing from David Overton. If you are new to audio processing on Windows, then I'd recommend you check out this very good introduction. The class internally looks after all the details of buffer management and provides a very simple Write method to send audio data to it. Again any errors which occur in the class are reported as standard MFC style "CWaveOutException" exceptions. CWaveIn: This is the corollary class to CWaveOut and provides support for recording audio data. Again the details of buffer management is handled by the class and a simple Read method is provided to obtain the recorded audio data. Any errors will cause an MFC style "CWaveInException" exception to be thrown. CMixer: The final class in CMMSystem, CMixer provides a thin veneer over the very complicated area of the mixer APIs. I do not claim to be any expert on this particular area and the wrapping provided is very thin. Again any errors which occur internally will cause an MFC style "CMixerException" to be thrown.


CMMSystem Related Software