Multitone v1.0 is the initial beta release of this software. Use at your own risk!




Download Multitone

Download Multitone for 64-bit Windows v1.0.6

You may also be interested in these:

  • DeltaWave - Audio null analyzer and audibility tester
  • DISTORT - Your personal simulation of what various distortions do to audio
  • PKHarmonic VST Plugin - VST Plugin to add the desired level of 2nd and other harmonics
  • Earful - An audiophile Hearing Test

Support forum

During the development and beta-testing of Multitone Analyzer, you can report issues, ask questions and make suggestions on the ASR forum here.

What is it?

Multitone Analyzer is an app designed to explore audio electronics performance by producing quick measurements using a simple loop-back configuration. MA produces a specific set of test tones that are sent to a digital-to-analog converter (DAC) that are then passed through one or more analog components and then received by MA and analyzed. MA both, plays the signals and records them for analysis. DAC and ADC are required for this to work.

  • Measurements that MA can produce: TD+N, IMD, N+D, delay, clock drift, frequency response, etc.
  • Audio support for WASAPI, ASIO, and Direct Audio devices with sampling rates of up to 384kHz/32 bits
  • Test signals: arbitrarily large multi-tone signal, simple sine waves, two-tone IMD test signals, 3-tone IMD test signals, square wave, triangle wave
  • FFT sizes of up to 1M
  • For distortion measurements a range of frequencies to measure can be selected

How not to use it!

Don’t use this with your speakers or headphones! The test signals are designed for electronic device testing only, and levels and frequencies of the test can be enough to cause damage to the equipment, or worse yet, your ears. Be warned!

How to use it

  • Make sure a DAC and an ADC are connected and working with the PC running Multitone Analyzer. Connect the DAC output to another device you want to test, and then connect the output of that (or the output of the DAC) to the input of the ADC
  • Select the correct devices from the two drop-down lists at the top of MA screen
  • Select the desired test signal, pick a level and press the red record button
  • Let Multitone Analyzer do the rest. The sequence will be Generate, Record, and then Process. Results will be displayed when the recorded signal is captured and analyzed


A few things to know

  1. All the lists and drop-downs on the main MA screen are editable. You can change frequencies, amplitude ranges, or type in frequencies that are not already in the drop down. In effect, you can create completely new tests consisting of different tone combinations.
  2. The little gear button at top right provides a few useful settings and is worth checking out
  3. If you’re familiar with my DeltaWave or Distort apps, you can use the same key and mouse combinations in the charts to zoom-in, pan around, or even draw your own annotations
  4. Larger FFT sizes might take a bit of time to generate the first time you use them. Be patient the very first time, as the next time you use the same FFT size, it will go a lot quicker. This is true even after you close and restart MA, or even restart your computer. It’ll be a bit slow the very first time.
  5. Both, DAC and ADC must use the same sampling rate. Make sure you configure this in Windows audio device settings. MA will detect the correct sampling rate for the device and use it for WASAPI devices. For ASIO devices, please set the desired sampling rate in settings, under the gear icon.


Tips to make it work better

  1. Larger FFT sizes are necessary for higher resolution frequency analysis. This is especially true for multi-tone testing. If the tones in the result are overlapping, touching, or look deformed, increase FFT size to make sure they are properly resolved. For anything more than 10 tone signal, I recommend using 1M FFT
  2. Larger sampling rates will take time to capture signal when processing with the same FFT size. 96kHz capture will be twice as fast as 48kHz capture. Larger FFT sizes will generate and record a longer test signal than shorter FFT sizes.
  3. If you’re not in a rush, it’s nearly always better to set the FFT size to the largest available
  4. The Frequency Response chart is only generated with large-size multi-tone test signals (greater than 5 tones). It will be blank for all other test signals.


Adding custom test signals

You can design a completely custom test signal by just editing in the parameters on the MA main window. To save the new test, press the + button next to the edit box. The test will be available next time you restart Multitone Analyzer, just pick it from the drop-down list. If you need to remove a previously saved custom test, select it from the list and click the ‘-‘ button next to the edit box.

The test tone specification format is fairly simple: test name, followed by one or more frequencies, optionally followed by amplitude ratios.

The name of new test signal must contain no spaces. Frequency can be entered using Hz or kHz or k as a suffix: for example 100Hz, 0.1kHz, or 0.1k are all equivalent. If a modifier is omitted, Hz is assumed.

Modifying existing test signals

You can change the parameters of any of the existing test signals and save that as a new test.

For example, starting with Multitone 32, you can change it to Multitone 55. The name of the signal, Multitone, must not be changed in this case but you can change the number of tones to any desired value.

Or, starting with SMPTE 60Hz/7k 4:1 you can modify the two frequencies or the amplitude ratios to produce new test signals. Or you can even add another frequency or two into the mix.

SMPTE 100Hz/7.123k 4:1
SMPTE 25Hz/7k 5:1
SMPTE 30/60/1k/7k/13k 4:4:1:1

Similarly, you can modify the standard DIN tests:

DIN 300Hz/7k 4:1
DIN 250/1k/7k 4:1:1

A single sinewave at a specific frequency

Format: Name freq


Sin_100hz 100
MySine 100Hz
NewTest 15kHz
Test_15k 15k

Multiple sinewaves

Multiple sine frequencies can be specified by separataing them with a forward slash:

Format: Name freq1/freq2/.../freqN

If you want to change the amplitude ratios between the multiple frequencies, these can be added after the frequency list, separated by ‘:’

Format: Name freq1/freq2/.../freqN ratio1:ratio2:...:ratioN

Ratio 4:1 for example specifies that the first sinewave will have 4x the amplitude of the second one. If ratios are omitted, all sinewaves specified will have the same amplitudes (equivalent to 1:1:…:1)


MT_Test1 100Hz/13kHz
MT_Test2 20/100/13k/13.1k/15k
MT_Test3 100Hz/13kHz 4:1
MT_Test4 20/100/13k/13.1k/15k 1:4:1:1:1

Adding a square wave

You can specify at most one square wave frequency in your test signal. This is done by preceding the very first frequency with ‘sq:’. One square wave can be mixed with multiple sinewaves, if desired.


SQT_OneSqWave sq:100.5Hz
SQT_OneSqWave_and_3_sines sq:100/13k/13.1k/15k
SQT_Test3 sq:1000Hz/13kHz 4:1
SQT_Test4 20/100/13k/13.1k/15k 1:4:1:1:1

Changes in 1.0.6

  • Added an additional pass of crest factor optimization to multitone generator
  • Crest factor is now displayed for all test waveforms

Changes in 1.0.5

  • Added support for saving/removing custom test signals
  • Added additional metrics (frequency, THD, SNR, and ENOB) to a single-tone test result
  • Added current FFT window on the main display above the FFT size
  • Changed “Dirichlet” FFT window name to “Dirichlet (Rect)”

Changes in 1.0.4

  • Added support for using the same ASIO driver for input and output
  • Added Harmonics display to the spectrum plot when testing with a single frequency
  • Added support for TIM-type test signals consisting of a combination of a square and sine waves
  • Fixed history plots not displaying properly when only a single test tone was recorded
  • Some minor clean-up of functionality and display

Changes in 1.0.3

  • Added Measurement History window to compare results
  • Added dither test signal option to settings
  • Added clear plots button
  • Changed multi-tone generation for better separation in lower frequencies
  • Fix an error when enumerating audio devices that don’t report their settings

Changes in 1.0.2

  • Fixed occasional crash with a single ASIO device
  • Added option to turn on or off distortions and signal in spectrum and wave plots
  • Added option to display in auto-dBr
  • Added auto-update option when new versions of Multitone are released
  • Added Multitone 32 (AP) test signal to reproduce AudioPrecision 32 tone test

Changes in 1.0.1

  • Added option to invert L or R channel in settings
  • Fixed an issue with averages that caused lower overal signal level

Changes in 1.0.0

  • The initial public beta release of Multitone Analyzer