1 (edited by ramses 2026-08-20 19:21:50)

Topic: Headphone EQ Settings & Diagram Generator for oratory1990 Measurements

Hi everyone,

I built a small free Python tool for my headphone review and figured it might be useful here too.

Full description, screenshots, download: https://www.tonstudio-forum.de/blog/ent … nts-en-de/

New: Version 2.2.0 (100) is out with plenty of improvements.

Status: Works well for Windows; feedback is very welcome. Should work with Windows, macOS, Linux
and all major browsers, but it has only been tested with Windows 10 and Firefox so far.

  • Now GUI-based (the console tools remain available)

  • Mirroring headphone measurement data from GitHub

  • GUI for maintaining the configuration file

  • Diagram and EQ file creation for RME PEQ (ADI-2 Reference Converter) and RoomEQ (TotalMix FX)

  • Diagrams show what the EQ really does: the raw measurement, the applied correction, and (dashed) the full oratory1990 suggestion for comparison

  • Per group, three comparison diagrams: raw, oratory1990 EQ, and RME PEQ corrected - up to 6 headphones in one picture

  • Browser-based diagram browser for comparing headphones and EQ files, no web server needed

  • EQ preset files are ready to load (ADI-2 Remote .adieqpr, TotalMix FX .tmreq) and respect the documented value ranges of the devices; the browser also shows all values in device order, so you can type them into any EQ by hand

  • The treble band stays free: corrections end below your Treble control at 6.5 kHz, so you can still adjust the top end by ear

  • Optional compensation for the ADI-2's Slow DA filter (one PEQ band)

  • Stores all data in your user's profile to support easy updates without losing data

  • Supports up to 5 groups (A-E) and up to 6 headphones per group

  • One headphone can be selected for trying EQ corrections over 2 kHz up to ~6.5 kHz to prove the claim that corrections over 2 kHz do not sound good - you can hear and validate that claim for yourself, step by step

  • You can enter another EQ max frequency (200-6500 Hz, recommended: 2000 Hz), and then all diagrams, including the group diagrams, will be calculated with this max EQ value

  • Status messages at the bottom of every window and in a logging area

  • Runs on Windows, macOS, and Linux (Python; the GUI parts need PySide6)

New with 2.2.0(100):

  • Charts are now rendered at 300 dpi, which is good for 4K screens.

  • During runtime, you are offered to create a Windows desktop shortcut to Start.bat using the bundled icon.

  • A link named "data" in the program folder points to the applications data folder (Windows: directory junction which needs no admin rights; macOS and Linux: symbolic link).

  • Windows are always opened in front of other windows.

  • The headphone management window keeps track of unsaved changes and asks before closing and the short name follows the selected headphone (if multiple cutoff frequencies are selected)

  • Cleanup of folders: a new assets folder holds targets and icons

  • Misc cosmetic changes

Corrections stay below 2 kHz by default, for the reasons KaiS explained here a while back and Matthias Carstens covers in RME's own video: https://www.youtube.com/watch?v=_Nq9ZGAYTwU

The "killer feature":

With this new version, it is easy to hear for yourself that EQing over 2 kHz does not sound good.

You can hear it by selecting the different prepared EQ presets and at the same time, see the impact of EQ corrections over 2 kHz in the HTML browser.

How does this work?

You only have to select your headphones in the config file manager, then mark one of them for the additional EQ versions and give it a short name of max. 9 characters.

After that, the Diagram and Preset Generator creates the diagrams and the EQ presets for PEQ (RME Reference Converter) and RoomEQ (TotalMix FX), one preset per cutoff step for the selected headphone.

Then you only need to load those files into the ADI-2 Reference Converter or into RoomEQ, and by switching through them, you will hear for yourself what sounds good and what does not.

Some screenshots

GUI-based and user-friendly operation

Main Screen

https://www.tonstudio-forum.de/file-download/2699/

Mirroring of oratory1990 measurement files from GitHub.com

https://www.tonstudio-forum.de/file-download/2700/

GUI-Based Management of Headphone Configuration

https://www.tonstudio-forum.de/file-download/2702/

Create Diagrams and EQ Settings (RME PEQ, RoomEQ)

https://www.tonstudio-forum.de/file-download/2698/

HTML Overview - purely browser-based

https://www.tonstudio-forum.de/file-download/2701/

https://www.tonstudio-forum.de/file-download/2705/

https://www.tonstudio-forum.de/file-download/2703/


Import of PEQ Settings using ADI-2 Remote Software

https://www.tonstudio-forum.de/file-download/2708/

https://www.tonstudio-forum.de/file-download/2704/


Import of RoomEQ Settings using TotalMix FX

https://www.tonstudio-forum.de/file-download/2706/


Linearizing headphones is fun using this tool; the creation of PEQ and RoomEQ EQ files saves a lot of time.

Please note: If you do not have an RME Reference Converter but have an RME recording interface with RoomEQ, then you can use RoomEQ to bring your headphones closer to the Harman curve if you like.

Enjoy!

BR Ramses - HDSPe MADI FX, M-1620 Pro D, 12Mic, UFX III, ADI-2 Pro FS R BE, Nuendo 15, Win10 IoT Ent

2 (edited by KaiS 2026-08-02 08:35:30)

Re: Headphone EQ Settings & Diagram Generator for oratory1990 Measurements

Maybe a global treble energy compensation for the range above 2 kHz in form of a shelving band would be useful.

It could be based on a wide-band smoothing of that range, e.g. a two-octave sliding average.
A course approximation to the resulting curve, using a single treble shelf band's Gain, F an Q would be enough.

If someone wants to read my posting about the validity of headphone measurements above 2 kHz:
https://forum.rme-audio.de/viewtopic.ph … 56#p193056

3 (edited by ramses 2026-08-02 20:53:57)

Re: Headphone EQ Settings & Diagram Generator for oratory1990 Measurements

Hello Kai, thanks for the suggestion.

Would you bind this to the ADI-2's Treble control, or assign it to one of the PEQ bands? I think we still want the Treble control itself sitting at 6.5 kHz and free for the user to adjust by ear, which means we have to put the compensation on a different band.

There is a hard reason against the Treble control anyway: its frequency range on the ADI-2 stops at 3 kHz at the low end, so a compensation meant to start around 2 kHz cannot be dialed in there at all. Band 5 has no such problem; it reaches down to 200 Hz.

But then we need to be careful with handing out bands for special purposes like this. I am already using Band 5 for an optional slow filter compensation at 44.1 kHz. I already had feedback that spending a band on that is wasteful, so it is no longer the default.

That criticism is fair, as the Meze Elite Tungsten needs 8 EQ adjustments below 2 kHz. The software already had to drop the two corrections with the smallest gain; you can see which ones are documented on the graph on the right.

https://www.tonstudio-forum.de/file-download/2594/

So I suggest using either "slow" or "treble energy" compensation. The config file already has one field per headphone for slow filter compensation. That field could become a single either/or choice:
- "slowcompensation",
- "treblecompensation" or
- "none"

Both are high-shelf filters, so they can share the same slot, and the user never pays more than one band for either. The Treble control then stays untouched at 6.5 kHz and remains available for adjusting treble by taste.

One thing I would like your view on. In your proposal, the shelf frequency is not something we choose in advance.
It falls out of fitting the smoothed error curve, so it will differ from headphone to headphone.
For a headphone whose treble error already starts around 2 kHz, the best fit would put the corner frequency down at roughly 2.5 to 3 kHz.
A shelf sitting that low does not act on treble alone anymore; it reaches right into the presence region around 3 kHz, where the Harman target has its ear gain peak, and which is tonally the most sensitive part of the range.
It is also the region where measurements are least reliable in the first place because of fit and individual ear canal geometry, which is the very reason we stop correcting at 2 kHz.

So my question is: do you consider it essential that the compensation cover the range starting right at 2 kHz, or would it serve the same purpose if it only started above the ear gain peak, say from 4 or 5 kHz upward?

RME's own factory presets appear to lean towards the latter. The HD800S preset carries a high shelf at 8 kHz, Q 2.0, +3 dB. The HD650 and Heddphone presets pull the treble down broadly using the Treble control at 10 kHz, by -5 and -3 dB, respectively. None of the four headphone presets attempts anything of that kind, starting as low as 2 kHz.

BTW, while we were discussing this, I noticed something in my own code: in the Room EQ export, I am writing Band 9, the counterpart of the ADI-2's Treble control, as a Peak filter rather than a shelf. It sits at 6.5 kHz with 0 dB, so it is inert as shipped, but the moment someone turns it up, it would behave differently from the ADI-2 for the same preset. I have since worked out the value the format uses, 1 for Shelving and 0 for Bell, so the fix is a single character.

This will not go into the next release, by the way. I am working through a code review of the tool first and want that finished before adding new features.

BR Ramses - HDSPe MADI FX, M-1620 Pro D, 12Mic, UFX III, ADI-2 Pro FS R BE, Nuendo 15, Win10 IoT Ent

4 (edited by KaiS 2026-08-03 07:05:00)

Re: Headphone EQ Settings & Diagram Generator for oratory1990 Measurements

I'd think a double solution is the way to solve the dilemma:

1. Extend the basic working range to 3 kHz.

2. Use the treble band for the HF energy compensation.
A shelf filter tuned to 3 kHz still has a significant effect below, should be enough overlap to handle a largely smoothed curve.
The user, adjusting this treble gain by taste, gets exactly the fitting range for each headphone.


3. A more general approach that would simplify the whole process would be:
Before running the EQ calculations, increase the smoothing of the measurement curve with rising frequency, starting at about 1 kHz (where the concha-gain starts to take effect), reaching full and high amounts of smoothing at 4 kHz, where different individuals' HRTFs reach their maximum divergence.
The smoothing should approach the amount of smoothing the (Harman or whatever) target carries, as a compensation can't be more precise than the target's precision.
This way you might not need to limit the EQ creation range at all.

4. The Slow Filter HF compensation might be academically for most, as few people will recognize the difference I guess, so it's indeed better to spend resources to more audible changes.

5. Quite often, when running out of EQ bands, I've freed some by approximating the result with lesser number of bands.
My approach was, to do a measurement (just the EQ directly in the digital domain, not via headphones) and then try to reach the same curve as close as possible with lower number of bands. That usually was possible within a range of less than 0.5 dB deviation.

5 (edited by ramses 2026-08-14 10:46:39)

Re: Headphone EQ Settings & Diagram Generator for oratory1990 Measurements

Version 2.0.0 (build 39) is available.
GUI-based and with a lot of new and cool features

The 1st posting has been updated: https://forum.rme-audio.de/viewtopic.ph … 63#p253663

@KaiS: Regarding your ideas, more was not possible at this time.

BR Ramses - HDSPe MADI FX, M-1620 Pro D, 12Mic, UFX III, ADI-2 Pro FS R BE, Nuendo 15, Win10 IoT Ent

6 (edited by ramses 2026-08-18 00:01:45)

Re: Headphone EQ Settings & Diagram Generator for oratory1990 Measurements

Current Version: 2.1.0 (build 84)

This software has been enhanced a lot; see the long feature list in the start posting.
https://forum.rme-audio.de/viewtopic.ph … 63#p253663

The "killer feature":

With this new version, it is easy to hear for yourself that EQing over 2 kHz does not sound good.

You can hear it by selecting the different prepared EQ presets and at the same time, see the impact of EQ corrections over 2 kHz in the HTML browser.

How does this work?

You only have to select your headphones in the config file manager, then mark one of them for the additional EQ versions and give it a short name of max. 9 characters.

After that, the Diagram and Preset Generator creates the diagrams and the EQ presets for PEQ (RME Reference Converter) and RoomEQ (TotalMix FX), one preset per cutoff step for the selected headphone.

Then you only need to load those files into the ADI-2 Reference Converter or into RoomEQ, and by switching through them, you will hear for yourself what sounds good and what does not.

BR Ramses - HDSPe MADI FX, M-1620 Pro D, 12Mic, UFX III, ADI-2 Pro FS R BE, Nuendo 15, Win10 IoT Ent

7 (edited by ramses 2026-08-20 09:23:10)

Re: Headphone EQ Settings & Diagram Generator for oratory1990 Measurements

[Cloudflare issues solved]

BR Ramses - HDSPe MADI FX, M-1620 Pro D, 12Mic, UFX III, ADI-2 Pro FS R BE, Nuendo 15, Win10 IoT Ent

8 (edited by ramses 2026-08-20 09:17:39)

Re: Headphone EQ Settings & Diagram Generator for oratory1990 Measurements

Version 2.2.0 (100) is out with a lot of improvements.

New with 2.2.0(100):

  • Charts are now rendered at 300 dpi, which is good for 4K screens.

  • During runtime, you are offered to create a Windows desktop shortcut to Start.bat using the bundled icon.

  • A link named "data" in the program folder points to the applications data folder (Windows: directory junction which needs no admin rights; macOS and Linux: symbolic link).

  • Windows are always opened in front of other windows.

  • The headphone management window keeps track of unsaved changes and asks before closing and the short name follows the selected headphone (if multiple cutoff frequencies are selected)

  • Cleanup of folders: a new assets folder holds targets and icons

  • Misc cosmetic changes

The 1st posting has been updated
https://forum.rme-audio.de/viewtopic.ph … 63#p253663

BR Ramses - HDSPe MADI FX, M-1620 Pro D, 12Mic, UFX III, ADI-2 Pro FS R BE, Nuendo 15, Win10 IoT Ent

9

Re: Headphone EQ Settings & Diagram Generator for oratory1990 Measurements

Congratulations Ramses, what a terrific project!

Regards
Matthias Carstens
RME

Re: Headphone EQ Settings & Diagram Generator for oratory1990 Measurements

MC wrote:

Congratulations Ramses, what a terrific project!

Thanks Matthias wink

BR Ramses - HDSPe MADI FX, M-1620 Pro D, 12Mic, UFX III, ADI-2 Pro FS R BE, Nuendo 15, Win10 IoT Ent