*** Welcome to piglix ***

Windows legacy audio components


This article describes audio APIs and components in Microsoft Windows which are now obsolete or deprecated.

The MME API or the Windows Multimedia API (also known as WinMM) was the first universal and standardized Windows audio API. Wave sound events played in Windows (up to Windows XP) and MIDI I/O use MME. The devices listed in the Multimedia/Sounds and Audio control panel applet represent the MME API of the sound card driver.

The Multimedia Extensions (WaveIn/WaveOut interfaces) were released in autumn 1991 to support sound cards, as well as CD-ROM drives, which were then becoming increasingly available. The Multimedia Extensions were released to Original Equipment Manufacturers (OEMs), mainly CD-ROM drive and sound card manufacturers, and added basic multimedia support for audio input and output and a CD audio player application to Windows 3.0. The Multimedia Extensions' new features were not available in Windows 3.0 real mode, only in standard and 386 enhanced mode. Windows 3.1x would later incorporate many of its features. Microsoft developed the Windows Sound System sound card specification to complement these extensions.

MME lacks mixing multiple audio streams during playback and device sharing, so only one audio stream can be rendered at a time. But some sound card drivers can emulate more than one MME device so it could work with MME too. MME supports up to two channels of recording, 16-bit audio bit depth and sampling rates of up to 44.1 kHz with all the audio being mixed and sampled to 44.1 kHz.

Prior to Windows XP, the number of MME/WinMM device interfaces (waveIn, waveOut, midiIn, midiOut, mixer, and aux) is restricted to 10. This limit is raised from 10 to 32 in Windows XP.

A fault in the MME WaveIn/WaveOut emulation was introduced in Windows Vista: if sample rate conversion is needed, audible noise is sometimes introduced, such as when playing audio in a web browser that uses these APIs. This is because the internal resampler, which is no longer configurable, defaults to a fast integer-based linear interpolation (e.g. new sample is taken as an exact duplicate of the nearest sample instead of a varying portion of the two nearest samples), which was the lowest-quality conversion mode that could be set in previous versions of Windows. The resampler can be set to a high-quality mode via a hotfix for Windows 7 and Windows Server 2008 only.


...
Wikipedia

...