This package aims to fix dramatically poor built-in speakers output of 2019 & 2020 16-inch MacBook Pro equipped with Apple T2 security chip in Windows 10 & 11 without affecting computer performance.
Warning
Only MacBookPro16,1 & MacBookPro16,4 models are supported. See this or this support article to identify your model. Do not attempt to use this with any other computer because it may lead to permanent speaker damage of your computer!
The solution in form of a system-wide equalization APO (audio processing object) configured with FIR (finite impulse response) convolution files is suggested. This method is latency-free and provides virtually no CPU usage hit since all equalization data is baked-in into two ready-made files (for tweeters and for woofers separately), so no realtime calculations are necessary (as if parametric filters are used).
Equalizer APO was selected as a high quality open source APO implementation to natively apply FIR convolution files exclusively designed for the specified computer models. The measurement data of the specified computer models' speakers output in Asahi Linux against macOS was used as a baseline for FIR convolution files development.
-
Launch Device Manager and disable the following devices:
- Audio inputs and outputs → Speakers (Apple Audio Device)
- Software components → DolbyAPO Software Device (HSA)
- Software components → DolbyAPO SWC Device
- Software devices → Microsoft GS Wavetable Synth
- Sound, video and game controllers → High Definition Audio Device
-
Download and extract the latest package from releases (use 7-Zip or any other unarchiver)
-
Download Equalizer APO from SourceForge and
Run as administrator
. Specify Destination Folder asC:\Program Files\Equalizer APO
when prompted (add a space to defaultEqualizerAPO
path) -
Once setup completes, an Equalizer APO Configurator is launched automatically and suggests selecting the playback devices. Select
Speakers
(Apple Audio Device)
and clickClose
-
Equalizer APO Configurator will suggest restarting the computer to apply changes, don't restart yet
-
Go to location where you extracted the latest package from releases to (in step
2
) , selectInstall.bat
andRun as administrator
. This will copy all required APO configuration files to%ProgramFiles%\Equalizer APO
and applyIncrease Bass
preset. -
Restart the computer
-
Play some tunes
Heat Waves by Glass Animals is a good example to see improvement if you don't have some bass-heavy track by hand. Please note it's recommended to test via local file or SoundCloud because YouTube applies Loudness Normalization by default. Before testing anything via YouTube make sure to install enhanced-h264ify extension and check
Disable Loudness Normalization
option (otherwise YouTube will do it's normalization and you won't hear high dynamic range this track features). You can compare how poorly Glass Animals track sounds on YouTube with the default Loudness Normalization applied by first playing it via SoundCloud if you don't want to install enhanced-h264ify extension or if your browser doesn't support extensions.
-
If you'll find sound output to be to be too heavy on the lower side (for example, too much bass in certain scenarios may lessen speech output quality if the speech source's quality is mediocre), you can switch to "default" APO configuration on the fly (at any time without restarting the computer):
- Pause any audio playback
- Open Equalizer APO Editor from Start
- Turn off
Increase Bass
preset (enabled by default) - Turn on
Default
preset - Optionally, close Equalizer APO Editor
- Play any audio
-
If you're happy with the result, launch
Start
→Windows Administrative Tools
→Services
, findDolby DAX API Service
, stop it and then disable (as you don't need it anymore)
Important
While you can enable speaker's system sound enhancements (like Bass Boost
and Loudness Equalization
) via Registy Editor (i.e. as described by Naozumi520), I strongly suggest you don't do it as it lessens sound quality system-wide in random ways. A better approach is to enable required effects on per-application basis, i.e. you can set loudness normalization in VLC's or foobar2000's preferences and so on.
This project uses lemmyg's built-in speakers output measurement data (macbook_pro_t2_16_1-48k_1.mdat) as a baseline as well as his corresponding FIR convolution files that are to match Asahi Linux raw sound output to macOS raw sound output and are produced from the measurement data. This project uses channel mapping model introduced by Naozumi520 in attempt to match built-in speakers output in Boot Camp to macOS. This project was inspired by chamed's project notes and dechamps' APO article. Thank you!
This project is licensed under the terms of the MIT License.
Measurement data used in this project was provided by lemmyg under the MIT License.