Data AcQuisition And Real-Time Analysis
Scope - Spectrum - Spectrogram - Signal Generator
Software for Windows
Science with your Sound Card!
The following is from the Daqarta Help system:



Spectrum Analyzer

Signal Generator

(Absolutely FREE!)


Pitch Tracker


DaqMusiq Generator
(Free Music... Forever!)

Engine Simulator

LCR Meter

Remote Operation

DC Measurements

True RMS Voltmeter

Sound Level Meter

Frequency Counter
    Spectral Event

    MHz Frequencies

Data Logger

Waveform Averager


Post-Stimulus Time
Histogram (PSTH)

THD Meter

IMD Meter

Precision Phase Meter

Pulse Meter

Macro System

Multi-Trace Arrays

Trigger Controls


Spectral Peak Track

Spectrum Limit Testing

Direct-to-Disk Recording



Frequency response

Distortion measurement

Speech and music

Microphone calibration

Loudspeaker test

Auditory phenomena

Musical instrument tuning

Animal sound

Evoked potentials

Rotating machinery


Product test

Contact us about
your application!

AltSine.GEN Setup File for Manual Output Calibration

It is possible to perform a manual Attenuator Calibration of a sound card mixer even without measuring equipment, by using your ears. This is called the Match method, and its use is covered in the Match Measurements section under Meter / Match Mode Control.

The method is based upon the fact that attenuations can be created very accurately by scaling the waveform level while the signal is still in digital form. The Right attenuator is kept at maximum, but its waveform is reduced as needed to match each step on the Left attenuator. When a match is found, the Left attenuation is equal to the equivalent attenuation of the Right level.

Daqarta takes care of converting between levels and dB, but you need to be able to detect a match. This would be exceedingly difficult with identical tones, but there are two methods that make it much easier. The simplest is to create the two tones with opposite polarity, such that when they are identical in loudness they will exactly cancel. The InvSine.GEN setup is for use with this method.

The second approach, used by AltSine.GEN, is to set up alternating Left and Right tone bursts. The same exact tone is created in each output, with one fading up while the other is fading down in perfect synchrony. The tone will thus alternate back and forth between outputs, but if both have the same overall amplitude, then at any instant in time their sum will produce a single steady tone.

Note that the summation typically must be done electrically and fed to a single speaker, or, with some possible difficulties, to two speakers placed face to face very close together so the sound seems to originate from the gap between them as a single source.

The details of how to use this setup are covered in the Match calibration section noted above, but here we consider how the two tones are created.

Each output consists of a 440 Hz sine burst on its respective Stream 0. The bursts consist of 250 msec Rise and Fall times, with no Lag or High phases. The Cycle time is 500 msec, so there is no dead time after the burst. Each output is thus continuously rising and falling in amplitude.

In order to get one channel to be in its Fall stage while the other is in Rise, a Train Lag of 250 msec is used in the Right channel only. That means it is just starting its initial Rise at the point in time where the Left channel has just completed its Rise and is starting its Fall.

A critical feature of this technique is that the two burst sequences must sum to a single continuous tone. The total level is obviously 100% when one burst is at its peak while the other is off, but what about other times?

Consider the point where one output is midway through its Rise while the other is midway through its Fall. They will each be at 50% at this midpoint, so the sum is still 100%.

The key issue is the summation at other points in time than the midpoints or peaks. It turns out that you can only make this trick work if the rise/fall Shape is set to a simple cosine (Cos^1) or linear (Cos^0). Higher cosine powers like the default Cos^2 don't sum to unity.

This linear summation only works when both channels are producing the identical waveform in exact synchrony. It works with any of the repetitive Wave types, including Arb. Play doesn't work due to limitations in the current implementation of the code for Burst with Play waves.

Random wave sources can be made to work, since a source can be forced to track another exactly using the Copy option in the Random Timing dialog.

But what about two uncorrelated noise sources? For example, two White sources may not have identical waveforms, but they sound pretty much the same when listened to individually. The problem here is that they don't add linearly, so a different Burst Shape is needed. The GausWhit.GEN application note discusses use of the Cos^0.5 shape for comparing different noise distributions; the same shape would be used to compare loudness of sources with the same distribution.


Questions? Comments? Contact us!

We respond to ALL inquiries, typically within 24 hrs.
Over 35 Years of Innovative Instrumentation
© Copyright 2007 - 2023 by Interstellar Research
All rights reserved