Importing Loudspeaker Measurements

Supported Audio File Formats

All Eclipse Audio software uses imported measurements as the basis for DSP filter design.

Speaker measurements (or measurement data from any audio playback device) can be loaded into our software tools in a variety of text based and binary file formats. Imported data can be in the form of impulse response sample vectors or transfer functions (freq/mag/phase/coherence).

The Import Tab is used to load all audio measurements.

Non-destructive resampling of imported measurements will be automatically applied, so you can measure at one sample rate and export filters at a different sample rate.

The following information outlines supported import file formats and loading instructions for data from various audio measurement tools, along with guidance for more generic file formats (Wave, FRD, Text & CSV).

Using the Import tab to load measurements into FIR Designer

Choose Your Measurement Software:

Smaart logo
SysTune logo
EASERA logo
Klippel logo
REW logo
Four Audio logo
Audiomatica measurements can be imported into FIR Designer for DSP design
minidsp logo

Before using imported measurements

Optionally apply Windowing or Averaging to refine imported measurements before DSP design, unless your measurement software has already performed these steps.

Multiple measurements can be averaged in the FIR Designer & FIR Designer M ‘Averaging’ tab, or by using the free Averager software.

Windowing removes unwanted portions at the start &/or end of the response, by applying specific fade-in & fade-out characteristics.

Smaart logo

.srf & .trf

Import Smaart Spectrum or Transfer Function files via the standard Import tab (manual) process, or stream them directly into FIR Designer via Smaart Control.

Smaart Control measurement import

Smaart Control enables loudspeaker measurements in Rational Acoustic’s Smaart software to be controlled by FIR Designer, captured in real-time & seamlessly integrated into the FIR Designer workflow for use in filter & preset creation.

Smaart Control is available in FIR Designer, FIR Designer M & FIR Creator EX.

Standard Measurement Import

Pre-exisiting saved Smaart measurement file formats can also be manually imported:

Smaart Spectrum (*.srf) files – both single channel and average – contain a magnitude only spectrum. The magnitude spectrum is loaded as frequency (Hz) and magnitude (dB) and the phase is set to 0 (degrees). The file does not contain coherence.

Smaart Transfer Function (*.trf) files contain various data elements including the complex spectrum. The complex spectrum is loaded as frequency (Hz), magnitude (dB) and phase (degrees). The coherence spectrum is also loaded.

Smaart is a registered trademark of Rational Acoustics LLC, Connecticut, USA.


.txt

.csv

The following checks are run when importing text (*.txt or *.csv) files.

  • If the file contains only 1 or 2 columns of numbers, the file is assumed to contain impulse response samples.
  • If the file contains 3 to 9 columns, the columns are assumed to start with frequency, magnitude, phase and optionally coherence.
  • If the file contains 10 or more columns, the 1st line is assumed to contain impulse response samples.

Values should be separated by a ” ” (space) or “,” (comma).

The decimal mark should be a “.” (dot, full-stop or period) and not a “,” (comma).

Optional comment lines, before the data, can begin with “#” or “/*” (without the quotes) and are ignored.

Columns

Rows

Data Description

Comments

1

Impulse response samples (-1.0 to 1.0)

See notes 1 & 2

2

Column 1 : Ignored

Column 2 : Impulse response samples (-1.0 to 1.0)

See notes 1 & 2

3-9

Column 1 : Frequency (Hz)

Column 2 : Magnitude (dB)

Column 3 : Phase (degrees)

Column 4 (optional) : Coherence (0.0 to 1.0)

Columns 5 to 9, if present, are ignored

Impulse response samples (-1.0 to 1.0)

See notes 1 & 2. Any subsequent rows are ignored.

Note 1: FIR Designer & Creator use the “Design sample rate” value at the moment of importing. After importing, the “Design sample rate” can be changed to the desired rate for the FIR filter design.

Note 2: The impulse response samples are loaded in one of two ways:

  • If the filename ends in an integer number, for example “my measurement 213.txt”, the number is used as the [zero-based] sample index for time=0. During importing, the measurement is time-advanced or shifted by the sample index. Also, the import process loads impulse response samples from N/2 samples before the sample index, or the first sample of the impulse response – whichever is closer to the sample index.
  • If the filename does not end in an integer number, the import process finds the sample index of the peak in the impulse response, then loads samples starting from 1500 samples before the peak, or the start of the impulse response – whichever is closer to the peak. Time=0 is assumed to be the first sample loaded; i.e. no time advancement or shift is applied.

This “filename ends in an integer number” is useful for maintaining time alignment of measurements when designing filters for a multi-way loudspeaker. To maintain relative time alignment between measurements (and prevent peak finding), ensure the filenames have the same integer number. (“0” is also valid.)


.wav

FIR Designer & Creator can import 16, 24 and 32 bit integer, and 32 bit float WAV files.

Only the first channel is loaded. Other channels are ignored.

Note: The impulse response samples are loaded in one of two ways:

  • If the filename ends in an integer number, for example “my measurement 213.wav”, the number is used as the [zero-based] sample index for time=0. During importing, the measurement is time-advanced or shifted by the sample index. Also, the import process loads impulse response samples from N/2 samples before the sample index, or the first sample of the impulse response – whichever is closer to the sample index.
  • If the filename does not end in an integer number, the import process finds the sample index of the peak in the impulse response, then loads samples starting from 1500 samples before the peak, or the start of the impulse response – whichever is closer to the peak. Time=0 is assumed to be the first sample loaded; i.e. no time advancement or shift is applied.

This “filename ends in an integer number” is useful for maintaining time alignment of measurements when designing filters for a multi-way loudspeaker. To maintain relative time alignment between measurements (and prevent peak finding), ensure the filenames have the same integer number. (“0” is also valid.)


.frd

FRD text files contains columns of frequency (Hz), magnitude (dB), phase (deg) and (optionally) coherence; similar to column TXT and CSV files (above).

The complex spectrum is loaded from this data.

A variety of measurement tools output this format including Open Sound Meter.


SysTune logo

.sto

SysTune overlay files contains measurement, reference and impulse response data along with metadata including the measurement sample rate.

The impulse response data is loaded as is; that is, with no time adjustment.

The coherence spectrum is also loaded.

(Since the SysTune impulse response is the result of a DFT/FFT calculation, the last 5% of the impulse response is moved to the end of the FIR Designer internal transform, to ensure the SysTune impulse response lead-in (prior to time=0) is maintained correctly.)


EASERA logo

.etm & .efr

EASERA ETM files contain various data elements and metadata; including the measured impulse data and the sample rate.

The impulse response data is loaded as is; that is, with no time adjustment.

(Since the EASERA impulse response is the result of a DFT/FFT calculation, the last 5% of the impulse response is moved to the end of the FIR Designer internal transform, to ensure the EASERA impulse response lead-in (prior to time=0) is maintained correctly.)


Klippel logo

.txt

Two different methods are supported.

1. Impulse Response

To load a loudspeaker measurement from Klippel‘s dB-Lab software into FIR Designer….

In dB-Lab, open an “Impulse response h(t)” plot. Right-click on the plot and in the pop-up menu, select “Customise…”

Loudspeaker Measurement Import: Klippel dB-lab Impulse Response plot

In the “Impulse Response h(t) Customization…” Dialog, select the “Subsets” tab and select either “Measured” or “Windowed.” Press “Apply” and “Ok” to close the dialog.

Loudspeaker Measurement Import: Klippel dB-lab Impulse Response plot Customize

Rick-click on the plot and in the pop-up menu, select “Export & Print…” In the “Export Graph” dialog, select Export “txt (For excel import)” and To “File.” Press “Save…” to save the text file.

Loudspeaker Measurement Import: Klippel dB-lab Impulse Response plot Export

In FIR Designer, load the txt file on the “Import” tab.

2. Transfer Function Mag and Phase

From dB-Lab, separately copy Mag and Phase data into a TXT file via the Windows clipboard. (The order is not important.) The TXT file will look like:

SourceDesc='dB-Lab_Clipboard_data';
GraphTitle = 'Setup - TRF transfer function - Magnitude';
GraphColor = 8355584;
GraphLineType = 9;
Data_Legend = 'Setup - TRF transfer function - Magnitude';
Data_Format = 'LevelDB';
Data_Domain = 'Frequency';
Data_AbscUnit = 'Hz';
Data_BaseUnit = 'SCI';
Curve = [
52.734375 96.369041
55.664063 97.268364
58.59375 98.123604
61.523438 98.936913
64.453125 99.710037
67.382813 100.44443
...
19989.258 109.37486
19992.188 109.37121
19995.117 109.36765
19998.047 109.36416];

SourceDesc='dB-Lab_Clipboard_data';
GraphTitle = 'Setup - TRF transfer function - Phase';
GraphColor = 8355584;
GraphLineType = 5;
Data_Legend = 'Setup - TRF transfer function - Phase';
Data_Format = 'LevelDB';
Data_Domain = 'Frequency';
Data_AbscUnit = 'Hz';
Data_BaseUnit = 'deg';
Curve = [
52.734375 71.145462
55.664063 65.04187
58.59375 59.046017
61.523438 53.160267
64.453125 47.386101
67.382813 41.724197
...
19983.398 -376.05197
19986.328 -376.0488
19989.258 -376.04559
19992.188 -376.04227
19995.117 -376.03882
19998.047 -376.03522];

Four Audio logo

.spk

Monkey Forest measurement files contain various elements including the complex spectrum.

The complex spectrum is loaded as frequency (Hz), real and imaginary data.

The file does not contain coherence.

See more info.


Audiomatica measurements can be imported into FIR Designer for DSP design

.mls .txt .csv

The CLIO .mls file is a proprietary binary file format that contains impulse response data.

The CLIO SPL file (*.txt or *.csv) contains frequency and dB SPL vectors.

Freq[Hz] THD[dBSPL]
25.07 83.27
25.16 83.20
25.26 83.13
25.35 83.05
25.45 82.97
25.54 82.89
25.64 82.81
25.74 82.73
25.84 82.64
25.93 82.55
26.03 82.46
26.13 82.37
...
...

minidsp logo

.bin

MiniDSP Binary (*.bin) files, compatible with miniDSP FIR importing, contain an impulse response as a sample vector of 32bit floats.

The impulse response samples are loaded directly and at the “Design sample rate”.


REW logo

.txt

REW .txt files can contain either impulse response or magnitude phase data.

Impulse Response Example

(Note the “start time” is used to align the IR peak to time=0.)

* Impulse Response data saved by REW V5.20 Beta 27
* IR is normalised
* IR window has not been applied
* IR is not the min phase version
* Source: ASIO Yamaha Steinberg USB ASIO, UR22mkII Input 1
* Dated: 08 Oct 2019 1:09:42 AM
* Measurement: SW REF
* Excitation: 128k Log Swept Sine, 1 sweep at -24.5 dBFS Using a loopback as a timing reference
* Response measured over: 5.1 to 20,000.2 Hz
0.0014201122103258967 // Peak value before normalisation
48000 // Peak index
131072 // Response length
2.0833333333333333E-5 // Sample interval (seconds)
-0.9840179036458333 // Start time (seconds)
* Data start
0.0010222907
0.002079226
-0.0021840518
0.0015959048
0.0018568245
-0.003428314
-0.006229863
-0.0054652207
0.008093421
-0.0042044367
0.0053430125
-0.0034052574
0.0064650467
...
...

Magnitude Phase Example

Phase is missing from the example but the phase column is loaded if present.

* Measurement data measured by REW V5.20.5
* Source: EQ window target shape
* Format: 
* Dated: Feb 27, 2022 11:39:39 AM
* REW Settings:
*  C-weighting compensation: Off
*  Target level: 75.0 dB
* Note: 
* Measurement: Target Main Native
* Smoothing: 1/48 octave
* Frequency Step: 96 ppo
* Start Frequency: 2.5 Hz
*
* Freq(Hz), dBFS(dBFS)
2.500000, -125.155
2.518116, -124.904
2.536363, -124.653
2.554743, -124.402
2.573256, -124.151
2.591902, -123.900
2.610684, -123.649
2.629602, -123.399
2.648658, -123.148
2.667851, -122.897
2.687183, -122.646
2.706656, -122.395
2.726269, -122.144
2.746025, -121.893
2.765924, -121.643
2.785967, -121.392
2.806155, -121.141
2.826489, -120.890
2.846971, -120.639
2.867602, -120.388
...
...

FIR Designer cannot directly import *.MDAT measurement files from Room EQ Wizard (REW), so these files should be converted to text files prior to import.
In REW select “Export -> Measurement as Text”, save the file, then import the *.txt file into FIR Designer.


FIR Designer software logo

.fdt

The ‘FIR Designer Target’ is an intermediate file format specifically for use in FIR Designer. FIR filters can be designed in “Direct Design” mode, exported in this format, and re-imported on the Target tab in the default mode or workflow.

The format includes the sample rate and the bulk impulse response delay – the peak index of the FIR filter impulse response – so that the bulk delay can be removed.


Related Questions

Can FIR Designer measure loudspeakers or take acoustic room measurements?


No. FIR Designer enables audio professionals to design custom DSP using measurement data captured by their preferred audio measurement tool. However, for users with a Smaart® license, measurements can be streamed directly into FIR Designer via the Smaart Control feature.

Can I create custom DSP without importing measurements?


Yes. Most Eclipse Audio tools have a ‘Direct Design’ mode, allowing you to create custom FIR filters, mixed FIR+IIR filters and complete DSP presets without importing any loudspeaker measurements. Direct Design is available in all Eclipse Audio DSP design tools except the multi-channel FIR Designer M.

Should I import impulse response or frequency response measurements?


FIR Designer supports both. Depending on your measurement application, you can import impulse response (time-domain) data or transfer function data containing frequency, magnitude, phase and, in some cases, coherence.

In practice, the resolution and quality of the measurement (that is, the number and accuracy of the data points) are generally more important than the type of measurement data being imported. For example, transfer function data is not necessarily preferable to an impulse response. Most established acoustic measurement applications produce measurement data that is well suited to DSP design, regardless of the export format.

Additional information captured by some measurement applications—such as microphone calibration details, measurement notes, timestamps, GPS or location data, hardware settings and other application-specific metadata—is ignored by FIR Designer because it isn’t required for DSP filter design.

Can I combine multiple audio measurements before using them for filter design?


Yes. Both FIR Designer and FIR Designer M can average an unlimited number of imported measurements from any supported file format. Averaging measurements taken at different microphone positions can produce a more representative loudspeaker response for DSP filter design. The same functionality is also available in the free Eclipse Audio Averager utility.

You can also use the ‘Moving Microphone Measurement Method‘ within the Smaart Control function in FIR Designer to combine measurements into a spatially averaged response that is an ideal starting point for custom DSP filter design.

Many acoustic measurement applications can average multiple measurements before export. If you’ve already used this feature, additional averaging in FIR Designer is usually unnecessary.

Does the measurement sample rate need to match the DSP processor sample rate?


No. FIR Designer stores imported measurements in their original format and sample rate. During DSP design, the measurements are automatically resampled to match the selected FIR filter sample rate. This allows the same measurements to be used when creating DSP presets for processors operating at 12, 24, 44.1, 48, 88.2, 93.75, 96, 176.4 or 192 kHz, without needing to repeat the acoustic measurements.

Can I import measurements without coherence data?


Yes. Coherence data is not required for DSP design in FIR Designer. If coherence information is present in the imported measurement file, FIR Designer will import and display it where appropriate. Coherence data can optionally be used in some smoothing functions to give more weight to frequency areas with higher coherence. However, measurements that do not include coherence data can still be used to design custom FIR filters, mixed FIR+IIR filters and complete DSP presets.