Clicking Noises While Playing Sounds on Sound Blaster Feature

Last reviewed: November 22, 1994
Article ID: Q76805
The information in this article applies to:
  • Microsoft Windows with Multimedia Extensions version 1.0

SYMPTOMS

While playing some sounds on the Sound Blaster card, you may notice periodic popping or clicking sounds. This generally occurs only when running under enhanced mode Multimedia Windows.

STATUS

Microsoft is researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.

CAUSE

If a Sound Blaster board with versions 1.x of the Digital Signal Processor (DSP) is installed and Multimedia Windows is running in enhanced mode, a periodic click is audible when playing a wave file. This is caused by interrupt latency, meaning that interrupts are not serviced immediately. This causes the Sound Blaster to click because the versions 1.x DSPs produce an interrupt when the current Direct Memory Access (DMA) buffer is exhausted. The click is the time it takes for the interrupt to be serviced by the Sound Blaster driver (which is delayed by enhanced mode Windows).

MORE INFORMATION

The click is still present in standard mode, although it is much less pronounced because the interrupt latency is less. The click is more pronounced for pure tones.

The version 2.0 DSP solves this problem by using the auto-initialize mode of the DMA controller (the 8237). In this mode, the DMA controller automatically reloads the start address and count registers with the original values. In this way, the Sound Blaster driver can allocate a 4K DMA buffer; using the lower 2K as the "ping" buffer and the upper 2K as the "pong" buffer.

While the DMA controller is working on the ping buffer, the pong buffer can be updated; and vice versa. Therefore, when the DMA controller auto-initializes, it will already have valid data available. This removes the click from the output sound.

However, Windows 3.0 enhanced mode does not support the auto-initialize mode of the DMA controller. Therefore, Multimedia Windows provides a virtual device driver (VxD) called VADMAD.386 (virtual auto-initialize DMA device) that attaches itself to the virtual DMA device (VDMAD). Its purpose, as the name implies, is to support the auto-initialize mode of the DMA controller. However, VADMAD.386 does not FULLY support this mode -- it was designed only to correct the problem with the Sound Blaster.

Sound Blaster is manufactured by Creative Labs, a vendor independent of Microsoft; we make no warranty, implied or otherwise, regarding this product's performance or reliability.


KBCategory: kbmm kbsound
KBSubcategory: win31
Additional reference words: 1.00 auto initialize autoinitialize MMWIN
kbmm


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: November 22, 1994
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.