Tracking Down Audio Glitches

Settings and troubleshooting hints to use when  your computer and soundcard is missing samples, losing synch, or stuttering.


You may have experienced recording or playback sampling problems when using your computer soundcard for measurements or for sound recording.  You need a steady, un-interrupted stream of samples, but one of these symptoms may instead occur:

The problems above can occur from several causes.  Most likely this will be from Windows not keeping up with all the data to or from the soundcard.  Other causes can be hardware conflicts, a problem with the soundcard driver, or a problem with the soundcard or motherboard, or even loose cables or connectors.

Cables and connectors
If the dropouts you are experiencing are for relatively long periods and seem to occur when cables are moved, the problem could be mechanical.  The small connectors used for most soundcards (and with the PRAXIS AudPod) utilize relatively small contact areas and are susceptible to dust and films, which can result in intermittent operation.  This is surprisingly easy to resolve with a one-drop application of a contact treatment such as CAIG "DeoxIT" D100L.  Apply it over all metal areas of the plug, and work it into the socket a few times.  DeoxIT can be obtained at hardware stores or RadioShack, and a small tube is included in recent PRAXIS AudPod shipments.  Such treatments should not be viewed as just being a "patch" -- they should be used when reliable small-signal electrical contact is required with any connector.

Soundcard Driver issues
There's not much that can be said here, except that you should check with the soundcard manufacturer for driver updates.  A compatibility problem between a soundcard model and devices can occur, and it may be possible for this to be handled or mitigated with driver changes.  Early versions of drivers for a sound card may have bugs or may have difficulties with certain operating systems.

DirectX
One "driver" that is often neglected is Microsoft's "DirectX".  This is used by a number of soundcards, and you should make sure that your version of DirectX is up to date.  Some soundcards won't even work at all without a given version of DirectX being available!  To find out what version of DirectX is on your computer now, do this:

  1. Use the Windows START Menu, select RUN, type "dxdiag", click on the "OK" button.

  2. A "DirectX Diagnostic Tool" form will appear and the version number will appear under "System Information".

  3. To find out what the latest version of DirectX is and/or to  update, go to www.microsoft.com/windows/directx/downloads/default.asp

Microsoft Windows
There are sometimes patches or Service Packs for Windows versions that can affect soundcard operation.  Unless your machine is very new, you should install these, particularly if you are using a recently designed soundcard.

The idea that Windows may be getting behind in its audio data handling may seem unlikely when you have a computer with a several GHz clock speed and when there is nothing else apparently going on in the machine.  Faster processors are better, but Windows still always has the processor doing a number of things that are not obvious.  Having a fast processor may not be relevant if an operation involving the hard drive, a serial bus, network card,  or some other slower hardware manages to dominate the system for a short period, letting a few audio buffers get lost on occaision.

If the problem seems to occur in PRAXIS only at higher sample rates, that is a clue that the problem is likely from insufficient promptness in servicing of audio buffers.  Varying bit resolution (24 vs 16) can also have an effect, as 50% more samples need to be handled per second with 24 bits.

There are some really good articles on how to optimize Windows for sound at SoundOnSound's web site.  One highly recomended one  is

http://www.soundonsound.com/sos/Jul03/articles/pcmusician0703.asp
(note: the sections on optimizing the hard disk speed and separate hard disk partitions are not generally relevant to PRAXIS operation, as PRAXIS normally works only with the soundcard and RAM memory)

Also, for a quick checklist of Windows settings you can optimize, see:

http://www.musicxp.net/tuning_tips.php

www.musicxp.net

PRAXIS settings, general
There are several settings within PRAXIS that can affect how Windows handles soundcard data. 

In general, the larger the size of the data buffers (chunks of samples that Windows deals with each time it gets back to handling sound data), the more time that Windows can afford to be busy without losing track of any.  Pro Audio people like to keep their buffer sizes low to minimize latency, but latency is not a major consideration in a measurement system.  In PRAXIS it is a good idea to use larger buffer sizes. 

These are the settings to adjust the buffer sizes that PRAXIS will try to use:

Your soundcard's "Custom Mixer" (usually a small applet that you get to by clicking an icon at the right of the task bar) may also have a buffer size setting which may have effect.

PRAXIS settings, synchronous stimuli only
When PRAXIS operates in synchronous mode, special synchronization signals are sent through the right channel of the sound card o match up the record with the playback streams.  This is so that measurement signals sent out and recorded back into the left channel can be time aligned..  In this mode, PRAXIS is always checking that the synchronization signal stays where it should be (i.e., that it does not move forward or back in time, such as from lost samples).  When loss of synchronization is detected, the bar at the bottom of the Main Form will flash in a yellow color, and the system will resychronize and attempt to continue.  There are some PRAXIS settings that can affect synchronization performance:

Remember that synchronization is not likely to work at all unless PRAXIS calibration of the AudPod and soundcard has been successful!

Special note for SoundBlaster type cards: These cards typically operate only at a fixed internal sample rate (48kHz or 96kHz), and other sample rates are handled via an irregularly timed sample rate conversion..  This means that synchronous operation of these cards can usually only be done when running at the internal (unconverted) sample rate.