Waveform Windowing

This sequence demonstrates how SoundCheck’s Windowing post-processing function is applied to waveforms to remove measurement artifacts that might otherwise create false auto delay values and subsequent analysis errors.

This sequence uses data from a customer who was measuring the directivity of a hearing aid-type device by mounting it on a rotating HATS and using a short duration log sweep. The DUT does not have a perfect seal in the HATS ear and the devices signal processing produces a latency of around 35ms. When viewing the Recorded Time waveforms, both the leakage signal and the amplified signal can be seen. As the DUT approaches 180° the magnitude of the leakage into the HATS ear exceeds that of the amplified signal, creating false Record Delay values and subsequent analysis errors. This sequence applies a window to the Recorded Time Waveform to remove the early-arrival leakage, and calculates the true Record Delay values of the amplified signal, obtaining consistent analysis results at all angles of rotation. This sequence can be adapted to your other requirements, for example, removing early arrival signals from a waveform or editing out excessive delay in a waveform.


External Control of SoundCheck via TCP/IP

TCP/IP control of SoundCheck provides a powerful and expandable command format for controlling and interacting with SoundCheck via any programming language (C#, C++, MATLAB, VB.net, LabVIEW, Python, etc.), on any operating system, either locally or through a network. This is valuable for anyone wishing to control SoundCheck from an external program, e.g. as part of an overall test plan or for factory automation. Using this feature, a single computer can control multiple SoundCheck systems, simplifying production line measurements.

The ability to connect to, and control SoundCheck via TCP/IP first appeared in SoundCheck over 3 years ago, but for version 18, it has been enhanced with the ability to pass test configuration data into the memory list from external programs. This means, for example, that by externally storing parameters such as limits, test levels, and test signals, a single sequence can be used for multiple products, or testing the same product multiple times, simplifying sequence maintenance, and reducing test configuration time.

This application note and accompanying demo scripts walk you through how to use Python to:

  • Control a simple loudspeaker test setup, launching SoundCheck and running a sequence
  • Run a simple frequency response sequence from a command line interface, creating placeholder curves, values, results and waveforms in the MemoryList and pass values into the placeholders via external control.
  • Read a WAV file and use it as a stimulus for performing an FFT Spectrum measurement in SoundCheck


Prediction of Listener Preference of In-Ear Headphones (Harman Model)

This sequence, inspired by AES papers on statistical models to predict listener preference by Sean E. Olive, Todd Welti, and Omid Khonsaripour of Harman International, applies the Harman target curve for in-ear, on-ear and over-ear headphones to a measurement made in SoundCheck to yield the predicted user preference for the device under test. The measurements are made in SoundCheck and then saved to an Excel template which performs the necessary calculations to produce a Predicted Preference score using a scale of 0 to 100. The spreadsheet calculates an Error curve which is derived from subtracting the target curve from an average of the headphone left/right response. The standard deviation, slope and average of the Error curve are calculated and used to calculate the predicted preference score. The sequence also provides the option to recall data rather than making a measurement, which saves time for engineers who already have large quantities of saved data, and enables historical comparison with obsolete products.


Microphone SNR Measurement (Background Noise Method)

This sequence characterizes a microphone’s ability to passively and/or actively reject noise in the user’s environment.  Unlike traditional microphone SNR measurements which calculate a ratio based upon a reference signal and the microphone’s noise floor, this method utilizes a signal (speech played from a mouth simulator) and noise (background noise played from two or more equalized source speakers) captured by both a reference microphone and the DUT microphone.

First a recording of the baseline ambient noise in the test environment is made and a 1/3 octave RTA spectrum is calculated from the recording. Next, the speech signal (mouth simulator) and noise signals (Left and Right speakers) are played consecutively and recorded separately using the reference microphone. A 1/3 octave RTA spectrum is calculated from each recorded time waveform. Next the same measurements are repeated using the DUT microphone. The resulting RTA spectra are then post processed to produce a signal gain spectrum and a noise gain spectrum which are then used to derive the SNR spectrum of the DUT mic. For best accuracy, the Signal and Noise spectra should be at least 5 dB above the ambient noise floor of the measurement environment.


Triggered Record Using Chirp Trigger and WAV File (Version 17 and later)

This test sequence demonstrates SoundCheck’s Triggered Record – Chirp Trigger function for open loop testing of devices without analog inputs such as smart speakers, wearables, smart home devices, tablets and cellphones.  A stimulus WAV file is created in SoundCheck and transferred to the device under test, where it is played back and the response recorded in SoundCheck as if the stimulus were played directly from SoundCheck. The Acquisition step is triggered by the chirp in the stimulus file. Chirp triggers are more robust than level and frequency triggers which are susceptible to false triggering due to background noise.


Measuring Max SPL versus Frequency

This sequence measures the Max SPL of a transducer versus frequency that a device can play back with acceptable distortion. It is particularly valuable for designers using DSP algorithms to optimize the performance of their speakers.

It characterizes the Max SPL of a transducer by setting limits on specific metrics (THD, Rub & Buzz, Perceptual Rub & Buzz, Input Voltage and Compression) and then driving the transducer at a series of standard ISO frequencies, increasing the stimulus level until the one of the limits is surpassed. The sequence begins by measuring the frequency response and impedance of the DUT. The user is asked if they wish to use the -3dB from resonance frequency as the test Start Frequency or manually enter another value. The user is then prompted to enter a Stop Frequency, initial test level and limit values for the metrics of interest. The sequence then plays the stimulus Start Frequency in a loop, increasing the level +3dB with each loop iteration until one of the limits is exceeded.  The stimulus level is then adjusted -3dB and the sequence continues to a second loop which increases the stimulus level +0.5 dB with each loop iteration until the limit is exceeded. At this point, the limit results are saved to an Excel file, the stimulus frequency is incremented by a constant multiplication step and the process is repeated until the Stop Frequency is achieved. Every time the main loop is completed, the individual SPL and Stimulus Level x-y pairs are concatenated to master curves. At the end of the sequence, the Max SPL and Stimulus Level curves are autosaved in .dat format.


TIA-920-B Sequence for Measurement of Narrowband and Wideband Digital Phones

This sequence tests to TIA 920-B, a comprehensive US dual-bandwidth standard that applies to both narrowband (NB) and wideband (WB) devices. It also allows a choice between Free Field (FF) and Diffuse Field (DF) as the Listener Reference Point (LRP). The current release of this sequence measures digital communications devices with handset features, according to TIA-920.110-B and speakerphones, according to TIA-920.120-B. Support for headset measurements, according to TIA-920.130-B will be added in a future release.

This module is a large structured set of sequences and subsequences which perform all the measurements. Curves and values are shown on the screen, tolerance checks are performed, and data is saved to Excel spreadsheet files. Completely prompted sequences for calibration of all the transducers are included. After a one-time setup with a sound card and other user-specific interfaces, the sequences are automatic. They run by simply selecting, pressing start, and following prompts where user interaction with the device under test is required. The sequence works with approved sound cards for connection to the transducers. Windows audio devices such as USB headsets work directly with SoundCheck®. VoIP softphones also work with SoundCheck, by means of a recommended third-party Windows audio application.


Triggered Record Using WAV File (Version 16.1 and later)

This sequence allows you to test devices without an analog input such as smart speakers, tablets, cellphones and MP3 players using SoundCheck’s frequency-based trigger functionality. This method offers improved accuracy over previous level-based triggering, especially in noisy environments. A stimulus WAV file is created in SoundCheck, and copied to the device under test, where it is played and the response recorded in SoundCheck as if the stimulus were played directly from SoundCheck. The stimulus WAV file to be used on the device under test (DUT) may be customized in the stimulus step.

Note that this sequence uses the level-based trigger available in SoundCheck 16.1 and later. If you are using version 16.0 or earlier, please see the level-based trigger sequence.



Background Noise Simulation to ETSI ES 202 396-1 Standard

Background_noise_simulation_screenshotThis Background Noise Simulation sequence follows the ETSI ES 202 396-1 standard.  It will automatically calibrate a standardized 4.1 speaker / subwoofer setup in accordance to the ETSI ES 202 396-1 standard “Loudspeaker Setup for Background Noise Simulation” and provide an equalized, calibrated playback solution to stress your device in a standardized and repeatable way.

Included with the sequence is a library of real world binaural recordings from the ETSI standard: cafeteria, pub, crossroad, vehicle, single voice distractor, and office noises.  Custom or user-defined  binaural recordings can also be used to create background noise tests directly applicable to your product. This sequence has many applications including evaluating ANC on headphones, noise  suppression on communication devices, voice recognition testing of smart speakers / IoT, SNR optimization of microphones on telepresence devices and beamforming directionality studies of microphone arrays.


Triggered Record Using WAV File and 6 Mic Array

This sequence allows you to measure a playback system without analog inputs using a 6 microphone array. Specifically, the sequence is designed to measure an in-car audio system. A stimulus WAV file is created in SoundCheck and transferred to the device under test (DUT) where it is played back and the response captured by SoundCheck using a triggered record function. The 6 recordings are batch analyzed to produce individual fundamental curves and the curves are post-processed to produce a single average curve from which an average sensitivity value is calculated.

Final display for Triggered Record Sequence

Final display for Triggered Record Sequence