@EQ

Your speakers follow your screen, automatically.

What is @EQ?

@EQ is a simple app designed to do one simple thing: Switch your speaker setup when you switch your primary monitor.

You could also use it as a preset-capable audio equaliser, but auto-switching is @EQ's main purpose, for folk like me who use their PC also as their movie player (or whatever) on a different screen, with different speakers.

I used to use Equalizer APO for this, but I could never get the darned thing to work automatically, and having to switch EQ & preamp levels manually when we switch to the "movie screen" was becoming tedious (my desktop speakers sound very different to our "movie" speakers, without EQ adjustment). And of course, switching back again.

@EQ, once setup, will automatically and painlessly set your audio output, EQ + preamp levels and audio channels on a per-monitor basis, with zero user interaction.

@EQ comes in two parts. A listener which runs in the background (using minimal resources), and a font-end editor, which you can use to make changes to your settings, load and save presets, etc..

Stereo-only, for now.

Components..



CABLE setup:

First, install the VB-Audio virtual cable as Admin. It adds two sound devices to your system audio setup: CABLE Input (ignore the 16ch variant) on the playback side and CABLE Output on the recording side. You will need to reboot to complete the installation.

Once CABLE is installed:

Any issues, check the @EQListener.log (in %APPDATA%\corz\@EQ) for details.

@EQ App:


The Listener:

The listener accepts a few command-line parameters:

@EQListener never writes to your ini file, it only reads. When the @EQ app is open it does this every 500ms, so your changes happen live.

As mentioned, the listener logs to %APPDATA%\corz\@EQ. This log is wiped on every launch.

@EQListener.exe runs as a Windows app, but in the background, which is why if you try run it in a shell, you won't see any output.

If you want to capture the output from the listener, do something like this:

python -c "import subprocess; print(subprocess.run([r'C:\Program Files\corz\@EQ\@EQListener.exe', '--help'], capture_output=True, text=True).stdout, end='')"

In operation..

When you switch screens, the listener reads the new screen ID, looks up its link in your @EQ.ini (config) file, opens the linked audio output and then loads your saved slider values (with a brief crossfade). This all happens in milliseconds.

The listener watches for monitor changes, sound device changes and default device changes; so docking, undocking, and display switches are (hopefully!) all covered.

Note: If a screen has no linked audio output, you get silence, and in @EQ, an annoying message telling you how to fix this (basically; select a Monitor, select an Output, Link them).

Requirements:



Download..

Download and use EQ, for free..

click to see zip archive contents

LIVE MD5+SHA1 Multi-Hashes..
# made with checksum.. 64-bit edition. # from corz.org.. https://corz.org/windows/software/checksum/ # #sha2#@EQ.zip#2026.11.05@10.19:09 82c8a05ab8d087a6f389333f5862ea39e77ee0502521d7ddebc676e9c9821f0b *@EQ.zip

Welcome to autoconfig.corz.org!

Downloads @ /machine are offline while I update the server. Need something NOW, Mail Me!