Skip to the content.

Download Latest Windows Release

Source Code

screenshot

The Audio Spatialisation for Headphones Toolset is a set of tools for headphone correction and binaural synthesis of spatial audio systems on headphones.

Features

Windows Installation

  1. Download the latest release and run the installer or download the portable package and unzip to the location of your choice.
  2. When running the executable, if a Microsoft Defender Smartscreen warning is presented, click ‘More info’ and ‘Run anyway’. This warning may show on some releases due to the code signing certificate of the executable building reputation.
  3. (optional) If using Equalizer APO for audio processing, download Equalizer APO and follow the Equalizer APO installation tutorial.
  4. (optional) If using HeSuVi for audio processing, download HeSuVi and follow the installation and usage steps outlined in the HeSuVi Wiki.

Usage

Run the application as administrator to launch the GUI. It may take a few seconds for it to launch.

GUI Overview

The app contains the following 3 tabs:

Headphone Correction

In the ‘Quick Configuration’ tab, this tool is used to apply headphone correction in Equalizer APO. In the ‘Filter & Dataset export’ tab, this is used to export a set of correction filter files for a specific headphone which can then be loaded into audio processing software to apply headphone correction.

hpcf steps

  1. Select a headphone brand to filter down on the headphone list.
  2. Select a specific headphone.
  3. Select a specific sample. Note that in the ‘Filter & Dataset export’ tab, all samples will be exported for the selected headphone.
  4. (‘Filter & Dataset export’ tab only) Select which files to include in the export.
    • FIR Filters: Minimum phase FIRs in WAV format for convolution. 1 channel at specified sample rate and bit depth. This is filter type is required for the app to auto-configure ‘config.txt’ in Equalizer APO.
    • Stereo FIR Filters: Minimum phase FIRs in WAV format for convolution. 2 channels at specified sample rate and bit depth.
    • E-APO Configuration files: configuration files that can be loaded into Equalizer APO to perform convolution with the FIR filters. This feature is deprecated from V2.0.0 onwards due to inclusion of auto-configure ‘config.txt’ feature.
    • Graphic EQ Filters (127 bands): Graphic EQ configurations with 127 bands. Compatible with Equalizer APO and Wavelet
    • Graphic EQ Filters (31 bands): Graphic EQ configurations with 31 bands. Compatible with 31 band graphic equalizers including Equalizer APO
    • HeSuVi Filters: Graphic EQ configurations with 127 bands. Compatible with HeSuVi. Saved in HeSuVi\eq folder
  5. Select a sample rate for the WAV files. Available options are 44.1kHz, 48kHz, and 96kHz. Note: The sample rate of the generated fitlers should match the sample rate of the sound device.
  6. Select a bit depth for the WAV files. Available options are 24 bits per sample and 32 bits per sample.
  7. Click the ‘Apply Selection’ button to apply the selected filter in Equalizer APO or click the ‘Process’ button to export the selected filters to the output directory. By default this location will be C:\Program Files\EqualizerAPO\config\ASH-Outputs but can be changed using the change folder option.

Binaural Room Simulation over Headphones

Quick Configuration

In the ‘Quick Configuration’ tab, this tool is used to apply customised binaural room simulations over headphones in equalizer APO.

brir steps

  1. Select Acoustic Space from a range of environments including audio labs, conference rooms, control rooms, seminar rooms, studios, and more. This will determine the listening environment of the simulation.
  2. Select Gain for Direct Sound in dB. Select a value between -10dB and 10dB. Higher values will result in lower perceived distance. Lower values result in higher perceived distance
  3. Select Room Target from a range of options including flat, ASH target, Harman target, and more. This will influence the overall balance of low and high frequencies. Flat is recommended if using headphone correction from other sources such as AutoEq. Variations of below targets with flat mid and high frequencies are also provided.
  4. Select Headphone Compensation from below options. The selected option should match the listener’s headphone type. High strength is selected by default. Reduce to low strength if sound localisation or timbre is compromised.
    • In-Ear Headphones, high strength
    • In-Ear Headphones, low strength
    • Over-Ear/On-Ear Headphones, high strength
    • Over-Ear/On-Ear Headphones, low strength
  5. Select Listener Type from below options.
    • Dummy Head / Head & Torso Simulator
    • Human Listener
    • User SOFA Input
  6. Select Dataset from available options. A number of public HRTF datasets will be listed here if ‘Listener Type’ is set to ‘Dummy Head / Head & Torso Simulator’ or ‘Human Listener’.
  7. Select Listener from available options. Some options will require an internet connection as the source dataset is not included and will be automatically downloaded from the web. If ‘Listener Type’ is set to ‘User SOFA Input’, user SOFA files will be automatically listed here. User SOFA files must be placed in the user data folder which is usually located at C:\Program Files (x86)\ASH Toolset\_internal\data\user\SOFA. Additional SOFA files can be found at the SOFA conventions repository.
  8. (optional) Select Subwoofer Crossover Frequency between 40Hz and 150Hz. Auto Select mode will select an optimal frequency for the selected acoustic space. This can be used to tune the integration of the cleaner subwoofer response and original room response. Higher values may result in a smoother bass response.
  9. Select Subwoofer Response from available options. A comparison of responses are available in the supporting information section below.
  10. (optional) Enable Additional EQ. Compensate Headphone Roll-off option will compensate the typical reduction in bass response below 100Hz in many headphones. This filter will result in a gain of approximately 4dB at 20Hz. Forward-Backward Filtering option will eliminate delay introduced by the filters, however can introduce edge artefacts in some cases.
  11. Select Sample Rate for the WAV files. Available options are 44.1kHz, 48kHz, and 96kHz. Note: The sample rate of the generated WAV files should match the sample rate of the sound device.
  12. Select Bit Depth for the WAV files. Available options are 24 bits per sample and 32 bits per sample.
  13. Click the ‘Apply Parameters’ button to apply the binaural simulation in Equalizer APO.

Filter & Dataset export

In the ‘Filter & Dataset export’ tab, this is used to export a customised binaural dataset containing binaural impulse responses in WAV or SOFA format which can then be loaded into audio processing software to apply room simulation.

brir steps

  1. Select Acoustic Space from a range of environments including audio labs, conference rooms, control rooms, seminar rooms, studios, and more. This will determine the listening environment of the simulation.
  2. Select Gain for Direct Sound in dB. Select a value between -10dB and 10dB. Higher values will result in lower perceived distance. Lower values result in higher perceived distance
  3. Select Room Target from a range of options including flat, ASH target, Harman target, and more. This will influence the overall balance of low and high frequencies. Flat is recommended if using headphone correction from other sources such as AutoEq. Variations of below targets with flat mid and high frequencies are also provided.
  4. Select Headphone Compensation from below options. The selected option should match the listener’s headphone type. High strength is selected by default. Reduce to low strength if sound localisation or timbre is compromised.
    • In-Ear Headphones, high strength
    • In-Ear Headphones, low strength
    • Over-Ear/On-Ear Headphones, high strength
    • Over-Ear/On-Ear Headphones, low strength
  5. Select Spatial Resolution from below options. Increasing resolution will increase number of source directions available but will also increase processing time and dataset size. Low’ is recommended unless additional directions or SOFA export is required.
    • Low: Elevation angles ranging from -30 to 30 degrees in 15 degree steps. Azimuth angles ranging from 0 to 360 degrees in varying steps.
    • Medium: Elevation angles ranging from -45 to 45 degrees in 15 degree steps. Azimuth angles ranging from 0 to 360 degrees in varying steps.
    • High: Elevation angles ranging from -50 to 50 degrees (WAV export) or -60 to 60 degrees (SOFA export) in 5 degree steps. Azimuth angles ranging from 0 to 360 degrees in 5 degree steps.
    • Max: Elevation angles ranging from -40 to 40 degrees (WAV export) or -40 to 60 degrees (SOFA export) in 2 degree steps. Azimuth angles ranging from 0 to 360 degrees in 2 degree steps.
  6. Select Listener Type from below options.
    • Dummy Head / Head & Torso Simulator
    • Human Listener
    • User SOFA Input
  7. Select Dataset from available options. A number of public HRTF datasets will be listed here if ‘Listener Type’ is set to ‘Dummy Head / Head & Torso Simulator’ or ‘Human Listener’.
  8. Select Listener from available options. Some options will require an internet connection as the source dataset is not included and will be automatically downloaded from the web. If ‘Listener Type’ is set to ‘User SOFA Input’, user SOFA files will be automatically listed here. User SOFA files must be placed in the user data folder which is usually located at C:\Program Files (x86)\ASH Toolset\_internal\data\user\SOFA. Additional SOFA files can be found at the SOFA conventions repository.
  9. (optional) Select Subwoofer Crossover Frequency between 40Hz and 150Hz. Auto Select mode will select an optimal frequency for the selected acoustic space. This can be used to tune the integration of the cleaner subwoofer response and original room response. Higher values may result in a smoother bass response.
  10. Select Subwoofer Response from available options. A comparison of responses are available in the supporting information section below.
  11. (optional) Enable Additional EQ. Compensate Headphone Roll-off option will compensate the typical reduction in bass response below 100Hz in many headphones. This filter will result in a gain of approximately 4dB at 20Hz. Forward-Backward Filtering option will eliminate delay introduced by the filters, however can introduce edge artefacts in some cases.
  12. Select Sample Rate for the WAV or SOFA files. Available options are 44.1kHz, 48kHz, and 96kHz. Note: The sample rate of the generated WAV files should match the sample rate of the sound device.
  13. Select Bit Depth for the WAV files. Available options are 24 bits per sample and 32 bits per sample.
  14. Select which files to include in the export.
    • Direction specific WAV BRIRs: Binaural Room Impulse Responses (BRIRs) in WAV format for convolution. One file for each source direction and 2 channels per file at specified sample rate and bit depth. This is file type is required for the app to auto-configure ‘config.txt’ in Equalizer APO.
    • True Stereo WAV BRIRs: True Stereo BRIR in WAV format for convolution. One file with 4 channels representing L and R speakers (LL LR RL RR) at specified sample rate and bit depth.
    • HeSuVi WAV BRIRs: BRIRs in HeSuVi compatible WAV format. 14 channels, 24 or 32 bit depth, 44.1Khz and 48Khz. The directions of the channels can be configured in the ‘HeSuVi Channel Configuration’ tab on the right.
    • E-APO Configuration Files: configuration files that can be loaded into Equalizer APO to perform convolution with BRIRs. This feature is deprecated from V2.0.0 onwards due to inclusion of auto-configure ‘config.txt’ feature.
    • SOFA File: BRIR dataset file in SOFA (Spatially Oriented Format for Acoustics) format. The SOFA convention can be selected in the Misc. Settings section under ‘Additional Tools & Settings’ tab.
  15. Click the ‘Process’ button to export the binaural dataset to the output directory.

Using the Correction Filters and Binaural Simulations

The outputs can be used to create spatial surround sound on headphones by convolving an audio stream with a set of binaural impulse responses and a headphone correction filter. This requires IR Convolution software that supports stereo or true stereo processing such as Equalizer APO

Apply Filters and Simulations in Equalizer APO

V3.0.0 onwards of the toolset includes a ‘Quick Configuration’ tab which will auto-configure ‘config.txt’ to apply selected filters and binaural simulations in Equalizer APO. Ensure ‘Enable Headphone Correction’ and/or ‘Enable Binaural Room Simulation’ are ticked for the changes to apply. The audio channels can be configured in the ‘Channel Configuration’ tab on the right side of the app.

Equalizer APO example

7.1 Surround Virtualisation

If your audio device does not support a 7.1 surround channel configuration, a virtual audio device such as VB-Audio Virtual Cable or Voicemeeter can be used for audio processing in place of your regular audio playback device. Equalizer APO can be installed on the virtual audio device which can be configured for 7.1 audio, and the output of the virtual audio device can be sent to your regular audio playback device.

Apply Filters and Simulations in HeSuVi

As an alternative to above method in Equalizer APO, the generated filters can be applied using HeSuVi.

HeSuVi HPCF example HeSuVi BRIR example

  1. If using HeSuVi for the first time, download HeSuVi and follow the installation and usage steps outlined in the HeSuVi Wiki.
  2. Open or restart HeSuVi
  3. The binaural room simulations can be selected in the Virtualisation tab. The simulation can be found under the Common HRIRs section at the top of the list.
  4. The headphone correction filters can be selected in the Equalizer tab. The filters can be found under _HpCFs at the bottom of the list.

File Naming and Structure

Outputs (excluding HeSuVi files) are saved within the ASH-Outputs child folder under the output directory. This will be in the Equalizer APO config directory (e.g. C:\Program Files\EqualizerAPO\config\ASH-Outputs) by default. HeSuVi files will be saved within the HeSuVi folder (e.g. C:\Program Files\EqualizerAPO\config\HeSuVi) by default. If required, the output directory can be changed using the directory selector. The EqualizerAPO\config directory should be selected if using Equalizer APO to ensure the filters and configurations can be read by Equalizer APO.

Binaural Room Impulse Responses

Headphone Correction Filters

Equalizer APO Configurations (deprecated)

Supporting Information

Supported SOFA Conventions

Convention Version SOFAConventionsVersion Read Write
GeneralFIR 2.1 1 Yes No
GeneralFIR 1 1 Yes Yes
SimpleFreeFieldHRIR 2.1 1 Yes No
SimpleFreeFieldHRIR 1 1 Yes Yes
SimpleFreeFieldHRIR 0.6 0.4 Yes No
SimpleFreeFieldHRIR 0.5 0.3 Yes No
GeneralFIRE 1 1 Yes No
GeneralFIRE 0.6 0.1 Yes No
GeneralFIR-E 2.1 2 Yes No
FreeFieldHRIR 2.1 1 Yes No

Acoustic Spaces

Name Estimated RT60 (ms) Name Estimated RT60 (ms)
Atrium 2894 Listening Room D 312
Audio Lab A 305 Listening Room E 824
Audio Lab B 413 Listening Room F 771
Audio Lab C 508 Listening Room G 233
Audio Lab D 193 Office A 408
Audio Lab E 442 Office B 496
Audio Lab F 631 Outdoors A 1935
Audio Lab G 360 Outdoors B 1183
Audio Lab H 528 Seminar Room A 839
Audio Lab I 539 Seminar Room B 710
Auditorium A 1455 Seminar Room C 705
Auditorium B 901 Seminar Room D 685
Broadcast Studio A 1183 Small Room A 500
Broadcast Studio B 1241 Small Room B 437
Concert Hall 1599 Small Room C 467
Conference Room 467 Small Room D 463
Control Room 260 Small Room E 476
Hall 1418 Small Room F 474
Large Room A 624 Studio A 398
Large Room B 576 Studio B 351
Lecture Room 704 Studio C 723
Listening Room A 221 Studio D 739
Listening Room B 379 Tatami Room 513
Listening Room C 562    

Subwoofer Responses

Name Acoustic space Estimated rt60 Frequency Range Tolerance Comments
Subwoofer Response A Audio Lab 320 3Hz-150Hz 20Hz-120Hz +/-0.8dB Primary response used in v3.1.2
Subwoofer Response B Audio Lab 340 0Hz-150Hz 20Hz-120Hz +/-1.0dB Newly added in v3.2.0
Subwoofer Response C Listening Room 350 5Hz-150Hz 20Hz-120Hz +/-1.4dB Previously used in ASH-Listening-Set
Subwoofer Response D Studio 240 0Hz-150Hz 20Hz-120Hz +/-1.0dB Newly added in v3.2.0

Changelog

Version 3.2.0:

Version 3.1.2:

Version 3.1.1:

Version 3.1.0:

Version 3.0.4:

Version 3.0.3:

Version 3.0.2:

Version 3.0.1:

Version 3.0.0:

Version 2.4.0:

Version 2.3.0:

Version 2.2.0:

Version 2.1.0:

Version 2.0.0:

Version 1.2.0:

Version 1.1.0:

Version 1.0.0:

License

ASH-Toolset is distributed under the terms of the GNU Affero General Public License v3.0 (AGPL-3.0). A copy of this license is provided in the file LICENSE.

Contact

Shanon Pearce - srpearce55@gmail.com

Project Link: https://github.com/ShanonPearce/ASH-Toolset

Acknowledgments

This project makes use of various publicly available HRIR, RIR, and BRIR datasets. Refer to the sheets provided in the github docs folder for information on the raw datasets used in this project. Further information on the HRTF datasets can be found at the SOFA conventions repository.