• Welcome to ASR. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

[Beta Testing] Seeking Audiophile Feedback for New System-Wide Android DSP Engine

Florestan

Member
Audio Company
Joined
Jun 10, 2026
Messages
8
Likes
0
Hi everyone,

I’m currently developing a new system-wide Digital Signal Processor (DSP) for Android, and I’m looking for some experienced ears to help me refine it.

The engine provides high-fidelity audio processing across the entire system, featuring:
  • Auto-EQ functionality.
  • Personalized EQ via A/B testing.
  • Parametric EQ, loudness, bass boost, and volume boost.

I would really appreciate any insights you might have after testing it in your daily audio chain. If you are willing to take a look, it would be incredibly helpful to me if you could share your thoughts on:
  • The Highlights: What parts of the engine are performing well and providing the most value to your listening experience?
  • Areas for Improvement: Where is the processing falling short, or where could the UI/UX be more intuitive?
  • Feature Requests: If you have ideas for additional features, please include a brief explanation of why it is important, how you envision it being used, and its priority level for your workflow.
  • Bug Reports: Any technical issues or instability you encounter while using the application.

If you are interested in trying it out, you can join the testing program here: https://play.google.com/store/apps/details?id=com.gilapps.audiomatch
As a token of my appreciation for your time and feedback, you can use the promo code TESTME to unlock all features of the app for two months.

Thank you so much for your time and expertise!

screen-01.png
 
Hi Florestan,

Thank you for this! Do I understand correctly that your app processes any sound from any app without any restriction whatsoever (Spotify, Qobuz, Tidal, Netflix etc.)?

Feature Requests: If you have ideas for additional features, please include a brief explanation of why it is important, how you envision it being used, and its priority level for your workflow.
I suggest to implement so-called true stereo convolution in order to enable speaker virtualization on headphones based on personalized binaural room impulse responses (BRIR) that take into account the individual head-related transfer function (HRTF). Here is why:

while standard EQ and crossfeed for headphones can be very useful, it doesn't change the in-the-head sound and lack of soundstage typically associated with headphones. In contrast, convolution with personalized BRIR can create a speaker-like soundstage with lifelike fidelity. This personalized BRIR may come from us or from any other source, or is obtained by measurement with in-ear microphones using Impulcifer.
Me and many others consider this the final frontier in headphone listening.

With respect to signal processing, this feature would also separate your app from all the other apps that can do standard EQ and crossfeed only. However, I'm aware that the implementation of true stereo convolution is not simple. After all, mobile phones and tablets provide for the required processing power nowadays.
 
Thanks for the thoughtful suggestion — true stereo convolution with personalized BRIR/HRTF is genuinely the gold standard for headphone externalization, and you're right that it's what sets a "speaker-in-the-room" experience apart from EQ and crossfeed.

The honest answer is that we can't do real BRIR convolution in AudioMatch, and it's an architectural limit rather than a processing-power one. AudioMatch isn't a music player — it's a system-wide effect that enhances whatever app you're already listening in (Spotify, YouTube, local players, etc.). It does that through Android's audio-effect framework, which only lets us shape the sound with parametric tools; it never hands us the raw audio samples, and it has no convolution effect to plug into. Real convolution requires owning the playback path (decoding and outputting the audio ourselves), which would mean turning the app into its own player and giving up the "works with every app" model that's the whole point of AudioMatch.

So instead of faking that, we've focused on getting the most convincing soundstage we can within a system-wide effect — and the next version ships a substantially improved Sound Stage Extender with two independent controls:

  • Width — opens the stereo image well beyond the in-head line, using a frequency-balanced technique that widens without the volume imbalance or "thin/quiet" artifacts that simple wideners introduce.
  • Depth — adds a tuned sense of room and distance, pushing the sound out and away from your head rather than sitting between your ears.
It's not personalized convolution, and we're not going to pretend it is — but together Width + Depth get meaningfully closer to that out-of-head, speaker-like presentation, and they work with every app system-wide. We'd love your feedback on it once it's out
 
Fair enough, thank you for the detailed explanation.
 
I have it on my phone now and I've only just took a quick peak at it's set up and haven't input any codes or anything, I was thinking at 5:45am on a Friday would not be a good time to start any speaker testing and then I saw this is geared for headphones?

I didn't see that mentioned directly in your introduction, does this apply at all to speakers? I also see that this is only for use with the phone being the source, it isn't a testing tool as much as an enhancing tool.

By focusing on the phone being the source it may not be of much use for your intended users who are going for perfect sound and using a phone isn't even part of their system except to make changes using an app that's made to make adjustments to their system or change sources.

Using Bluetooth may not resonate well with some people either, I was a bit thrown off at first when I was thinking it is a system tuner and using the phone would just lead to an awful tune in the end, these are just my very first impressions I had come to mind. I'm no stranger to test apps and have not found 2 test apps that have ever given me the same results out of literally 70 or so that I've tried.

Since I can't find 2 apps or even 2 computer programs that can show me the same results, there's no "control" reference that can be stated as a basis for all readings to be accurate and agreed upon, this is the most basic form of science testing that can't be skipped and without it no results can be accepted as real.

I've used the same exact external mic used on 6 different phones all using the same app on each phone gives me 6 very drastically different results.

Since this is something that is phone based from start to finish and has no other use, I can't see me using it. But that's just me and I feel it could be a huge part of what you might expect to see.

People with good headphones are typically using an amp but I can't speak for anyone since I don't use headphones ever, I did 55 years ago but the last time I used them was 45 years ago or so and I'm sure they have evolved since then.

If I'm incorrect on anything I have stated, please fill me in on how it can be implemented in all ways possible. You're working against a pre set idea that phone based apps are usually, if not always, never going to provide what users are looking for when so many apps have not even worked as they should let alone make any improvements. Adding more enhancements through DSP has proven to me that DSP strips away the reality of the overall sound (at least units costing under $500 have had this problem) and when applied to headphones there must be a huge audible difference in the output.

I'm curious now if people aren't unwittingly altering the signal in every instance by incorporating DSP in the path and then trying to rebuild what's not there after DSP has removed things. I would suggest people try the cleanest best path from source to headphone and try to not put and software at all in the path before they start trying to "correct" the sound.

I hear so many saying they intend to use a mini DSP in their systems and that was the first one I tried and that's how I found out that DSP was ruining the sound. I moved on to others and they all had the same degredation in sound.

Now, I just run straight to amps and if I make any changes to the signal, it just doesn't sound correct. Most people have become used to hearing high treble output and they never shake that habit, then they wonder why they end up with a headache after 30 minutes of listening.

Just because a speaker can produce frequencies up to 40kHz doesn't mean that it's usable or even makes any sense to fabricate a driver to do this especially when amps made now are limited to 19999Hz to stop runaway oscillation. Recordings of music won't have much over 18kHz and if it does chances are 90% of people can't hear it but it is known that those high frequencies are a huge factor in headaches.

I'm just pointing out what I see with people's habits and how much of audio is misunderstood and people think in their own ways, they have that right and if the insist on using software that alters the signal they need to understand exactly what it's doing . Most people don't own speakers good enough to hear the DSP losses but it's very obvious once you hear it. I've heard it recently in a Topping DX5 ii headphone amp/preamp (I used it as a pre into an active crossover with 2 big Carver amps powering a set of modified Martin Logan Prodigy's) that is a newer piece and people never mention hearing the loss here. I returned it after 20 minutes of listening. That just shows that people are used to hearing degraded signals and don't even realize it.

Software alterations never work to improve the sound they just alter and since you can't "add" resolution to any signal you're just changing it and the process always leads to loss of signal in some form it's just common sense.

I do appreciate your work on the app, I know that in itself takes a huge commitment to see it to fruition, I also thank you for offering it to text and I'm sure you'll get feedback that oertsins directly to the app as you're seeking. I'm not trying to put down anything you've done and there may very well be a large number of people who are looking for this exact app. I wish you the best and I hope it takes off! It's always nice to have creative people here on this site, you obviously know how to program and you can always adapt your ideas to the ever changing landscape that this hobby brings. If it was easy and there was 1 obvious best way to do it, I probably would have lost interest years ago.
 
I have it on my phone now and I've only just took a quick peak at it's set up and haven't input any codes or anything, I was thinking at 5:45am on a Friday would not be a good time to start any speaker testing and then I saw this is geared for headphones?

I didn't see that mentioned directly in your introduction, does this apply at all to speakers? I also see that this is only for use with the phone being the source, it isn't a testing tool as much as an enhancing tool.

By focusing on the phone being the source it may not be of much use for your intended users who are going for perfect sound and using a phone isn't even part of their system except to make changes using an app that's made to make adjustments to their system or change sources.

Using Bluetooth may not resonate well with some people either, I was a bit thrown off at first when I was thinking it is a system tuner and using the phone would just lead to an awful tune in the end, these are just my very first impressions I had come to mind. I'm no stranger to test apps and have not found 2 test apps that have ever given me the same results out of literally 70 or so that I've tried.

Since I can't find 2 apps or even 2 computer programs that can show me the same results, there's no "control" reference that can be stated as a basis for all readings to be accurate and agreed upon, this is the most basic form of science testing that can't be skipped and without it no results can be accepted as real.

I've used the same exact external mic used on 6 different phones all using the same app on each phone gives me 6 very drastically different results.

Since this is something that is phone based from start to finish and has no other use, I can't see me using it. But that's just me and I feel it could be a huge part of what you might expect to see.

People with good headphones are typically using an amp but I can't speak for anyone since I don't use headphones ever, I did 55 years ago but the last time I used them was 45 years ago or so and I'm sure they have evolved since then.

If I'm incorrect on anything I have stated, please fill me in on how it can be implemented in all ways possible. You're working against a pre set idea that phone based apps are usually, if not always, never going to provide what users are looking for when so many apps have not even worked as they should let alone make any improvements. Adding more enhancements through DSP has proven to me that DSP strips away the reality of the overall sound (at least units costing under $500 have had this problem) and when applied to headphones there must be a huge audible difference in the output.

I'm curious now if people aren't unwittingly altering the signal in every instance by incorporating DSP in the path and then trying to rebuild what's not there after DSP has removed things. I would suggest people try the cleanest best path from source to headphone and try to not put and software at all in the path before they start trying to "correct" the sound.

I hear so many saying they intend to use a mini DSP in their systems and that was the first one I tried and that's how I found out that DSP was ruining the sound. I moved on to others and they all had the same degredation in sound.

Now, I just run straight to amps and if I make any changes to the signal, it just doesn't sound correct. Most people have become used to hearing high treble output and they never shake that habit, then they wonder why they end up with a headache after 30 minutes of listening.

Just because a speaker can produce frequencies up to 40kHz doesn't mean that it's usable or even makes any sense to fabricate a driver to do this especially when amps made now are limited to 19999Hz to stop runaway oscillation. Recordings of music won't have much over 18kHz and if it does chances are 90% of people can't hear it but it is known that those high frequencies are a huge factor in headaches.

I'm just pointing out what I see with people's habits and how much of audio is misunderstood and people think in their own ways, they have that right and if the insist on using software that alters the signal they need to understand exactly what it's doing . Most people don't own speakers good enough to hear the DSP losses but it's very obvious once you hear it. I've heard it recently in a Topping DX5 ii headphone amp/preamp (I used it as a pre into an active crossover with 2 big Carver amps powering a set of modified Martin Logan Prodigy's) that is a newer piece and people never mention hearing the loss here. I returned it after 20 minutes of listening. That just shows that people are used to hearing degraded signals and don't even realize it.

Software alterations never work to improve the sound they just alter and since you can't "add" resolution to any signal you're just changing it and the process always leads to loss of signal in some form it's just common sense.

I do appreciate your work on the app, I know that in itself takes a huge commitment to see it to fruition, I also thank you for offering it to text and I'm sure you'll get feedback that oertsins directly to the app as you're seeking. I'm not trying to put down anything you've done and there may very well be a large number of people who are looking for this exact app. I wish you the best and I hope it takes off! It's always nice to have creative people here on this site, you obviously know how to program and you can always adapt your ideas to the ever changing landscape that this hobby brings. If it was easy and there was 1 obvious best way to do it, I probably would have lost interest years ago.
Hi Zinda,

First off, thank you — genuinely. You didn't have to spend that much time with it, let alone write up such a detailed, thoughtful review. That kind of feedback is worth far more to me than a quick "looks good," and I really appreciate you taking the app for a look and sharing your honest first impressions.

You actually put your finger on the single most useful thing you could have told me: if someone with your background opens the app and can't immediately tell what it is or who it's for, that's on my description, not on you. So let me clarify where you're spot-on and where the app may be a bit different than it first appeared.

You're completely right on a few points:

  • It is geared toward headphones, with the phone as the source. It's an enhancement tool, not a room/system measurement or testing tool — and I should say that plainly on the very first screen. I'm going to fix that.
  • For your kind of setup — serious speakers, amps, active crossovers, the phone nowhere in the signal path — you're honestly not the target user, and that's fine. I'd never claim a phone belongs in a Martin Logan chain.
Where the app may surprise you:

  • There is a measurement side to it, but not the kind that's burned you 70 times. It doesn't use a mic trying to hit some objective target that no two apps agree on. Instead it does blind A/B listening tests — you pick which of two sounds better, over and over, and it learns your personal preference. So the "there's no control reference to trust" problem doesn't really apply, because the reference isn't an external absolute — it's your own ears. Nothing to disagree with across mics or phones; it's calibrating to you, not to a standard.
  • On DSP: I share more of your skepticism than you'd expect. A poorly implemented DSP absolutely alters and degrades. The goal here isn't to "add" anything — it's to correct a headphone's known deviations from neutral so you're hearing closer to the recording, not further from it. And there's a straightforward on/off compare built in, because I agree the only thing worth trusting is what you can hear switch in and out. When it's off, it's meant to be a clean passthrough — nothing left in the path.
Your point about Bluetooth is fair too, and I take it seriously — the cleanest results are on a wired/high-quality connection, and that's worth me making clearer.

I won't pretend the app is for everyone, and I'd never try to talk a straight-to-amp purist out of a philosophy that's clearly served your ears well for decades. But your review genuinely made the app better, because it told me exactly where I'm failing to explain myself up front.

Thank you again for the time, the honesty, and the kind words at the end — they mean a lot. Wishing you great listening.
 
Hi everyone,

I’m currently developing a new system-wide Digital Signal Processor (DSP) for Android, and I’m looking for some experienced ears to help me refine it.

The engine provides high-fidelity audio processing across the entire system, featuring:
  • Auto-EQ functionality.
  • Personalized EQ via A/B testing.
  • Parametric EQ, loudness, bass boost, and volume boost.

I would really appreciate any insights you might have after testing it in your daily audio chain. If you are willing to take a look, it would be incredibly helpful to me if you could share your thoughts on:
  • The Highlights: What parts of the engine are performing well and providing the most value to your listening experience?
  • Areas for Improvement: Where is the processing falling short, or where could the UI/UX be more intuitive?
  • Feature Requests: If you have ideas for additional features, please include a brief explanation of why it is important, how you envision it being used, and its priority level for your workflow.
  • Bug Reports: Any technical issues or instability you encounter while using the application.

If you are interested in trying it out, you can join the testing program here: https://play.google.com/store/apps/details?id=com.gilapps.audiomatch
As a token of my appreciation for your time and feedback, you can use the promo code TESTME to unlock all features of the app for two months.

Thank you so much for your time and expertise!

View attachment 538068
I'm very interested in something like this, but I've been burned by the 2 other options for Android EQ that I know of. Wavelet is fine for most things but lacks precision in the treble (possibly due to the import format), which makes correcting a resonance on my custom IEMs impossible. Poweramp EQ has been measured over on @oratory1990 's subreddit and doesn't accurately implement the parametric filters.

If your app is accurate (which I'd describe as comparable to EqualizerAPO's results on PC) and reliable, I'd not just try it but I'd buy it almost immediately!
 
Last edited:
Hey @Adamant11746 , I appreciate how specific this is. Someone who can actually measure the difference is exactly the kind of user I want feedback from, so let me answer properly instead of pitching you.

You're right, this has been Android's weak spot for years, and I'll admit it was mine too: parametric bands were capped at Q 3, which just can't touch a narrow IEM resonance. That's the headline fix in the version coming out July 11. Per-band Q now goes up to 5, and high-Q bells get denser internal sampling so the curve you dial in is the curve you actually get, not a slider that says Q 5 while quietly playing something wider. I didn't want to ship a number that lies.

Since you'll care about what's under the hood, and I'd rather you hear it from me: the EQ runs on Android's DynamicsProcessing engine, which is the only way to process other apps' audio system-wide, so it's not a biquad cascade like EqualizerAPO. It's a magnitude-accurate realization of the bell rather than a bit-identical peaking filter. For taming a resonance that's what matters, but I won't claim APO parity outright, and the exact response can vary a touch between OEM audio HALs. On the correction side, the headphone curves run on a separate 127-band grid, which keeps a lot more treble detail than what survives Wavelet's import.

Where I'll be straight with you: if your resonance needs Q 8-10, Q 5 will tame it but not surgically notch it. Tell me the center frequency and rough Q you're fighting and I'll tell you honestly whether this build nails it or only gets close. And if it's the latter, you've just told me what to build next.

If you do try it, please measure it. I'd rather your rig finds a problem than have you feel burned a third time :)
 
How does it adjust for various playback volume?
Great question! AudioMatch adjusts for playback volume with its Equal-Loudness Compensation feature.

Human hearing naturally loses sensitivity to bass and treble as sound gets quieter — that's why music sounds "thin" or flat at low volume. Equal-Loudness counteracts this automatically:

  • The app continuously tracks your device's media volume, so it reacts instantly when you use the volume keys.
  • You set an anchor volume (default 75%) — the level where the sound is considered "correct." At or above the anchor, no compensation is applied.
  • As you turn the volume down below the anchor, the app progressively boosts the bass (centered around 100 Hz, up to a limit you choose, 7 dB by default) and the treble (around 4.5 kHz, up to 3.5 dB). The quieter you listen, the more it compensates, so the tonal balance you hear stays the same at any volume.
  • You can also adjust the overall strength (0–200%) to make the effect subtler or stronger, and all changes are ramped smoothly so nothing jumps audibly when you change volume.
And don't worry about the added boost causing distortion — AudioMatch's auto-headroom and brickwall limiter sit at the end of the chain and guarantee the output never clips, even at higher volumes with heavy boosts.

You'll find it under Effects → Equal Loudness (it's a Premium feature).
 
Great question! AudioMatch adjusts for playback volume with its Equal-Loudness Compensation feature.

Human hearing naturally loses sensitivity to bass and treble as sound gets quieter — that's why music sounds "thin" or flat at low volume. Equal-Loudness counteracts this automatically:

  • The app continuously tracks your device's media volume, so it reacts instantly when you use the volume keys.
  • You set an anchor volume (default 75%) — the level where the sound is considered "correct." At or above the anchor, no compensation is applied.
  • As you turn the volume down below the anchor, the app progressively boosts the bass (centered around 100 Hz, up to a limit you choose, 7 dB by default) and the treble (around 4.5 kHz, up to 3.5 dB). The quieter you listen, the more it compensates, so the tonal balance you hear stays the same at any volume.
  • You can also adjust the overall strength (0–200%) to make the effect subtler or stronger, and all changes are ramped smoothly so nothing jumps audibly when you change volume.
And don't worry about the added boost causing distortion — AudioMatch's auto-headroom and brickwall limiter sit at the end of the chain and guarantee the output never clips, even at higher volumes with heavy boosts.

You'll find it under Effects → Equal Loudness (it's a Premium feature).
I asked the question because of the way we hear various frequencies at various volumes. Maybe I missed something, but without a microphone how is it determining volume? Percentage would be of what particularly? I don't generally use an android device except to direct a stream myself, and so far don't see how this would work for me (plus am not a headphone user).
 
Hey @Adamant11746 , I appreciate how specific this is. Someone who can actually measure the difference is exactly the kind of user I want feedback from, so let me answer properly instead of pitching you.

You're right, this has been Android's weak spot for years, and I'll admit it was mine too: parametric bands were capped at Q 3, which just can't touch a narrow IEM resonance. That's the headline fix in the version coming out July 11. Per-band Q now goes up to 5, and high-Q bells get denser internal sampling so the curve you dial in is the curve you actually get, not a slider that says Q 5 while quietly playing something wider. I didn't want to ship a number that lies.

Since you'll care about what's under the hood, and I'd rather you hear it from me: the EQ runs on Android's DynamicsProcessing engine, which is the only way to process other apps' audio system-wide, so it's not a biquad cascade like EqualizerAPO. It's a magnitude-accurate realization of the bell rather than a bit-identical peaking filter. For taming a resonance that's what matters, but I won't claim APO parity outright, and the exact response can vary a touch between OEM audio HALs. On the correction side, the headphone curves run on a separate 127-band grid, which keeps a lot more treble detail than what survives Wavelet's import.

Where I'll be straight with you: if your resonance needs Q 8-10, Q 5 will tame it but not surgically notch it. Tell me the center frequency and rough Q you're fighting and I'll tell you honestly whether this build nails it or only gets close. And if it's the latter, you've just told me what to build next.

If you do try it, please measure it. I'd rather your rig finds a problem than have you feel burned a third time :)
Unfortunately I don't know how to measure the results, I just trust the couple of people who have. If I try your app, which I probably will since you gave that testing code, I'd have to compare between it and EqualizerAPO using my ears. It will take too long to swap between PC and phone to be super accurate, but I can at least check for major differences. Hopefully you can find someone who does know how to measure, because that's the only reliable way to know what the actual output is.

Also, the correction filter I need for the high frequency resonance is actually fairly wide due to how hard pinpointing it is. Filter parameters are 16700hz, -12db, but the Q is only 3. However, there is another filter in the same EQ that is sharper, at 4575hz, -4.5db, and Q 5.9. It corrects a different peak built into the IEM's response rather than one resulting from an interaction with my ears. When I get back to the computer I'll play with squig.link and see if I can lower the Q on that filter. It might be possible because I have an EQ to a different target that I was trying out and that same filter was a Q of 4 in that one.

By the way, I'm sure you are wondering why I have to do such extensive corrections to my IEMs, and the reason is fit problems. I had to get custom molded IEMs in order to get a comfortable fit, and there are very few choices that have been measured in custom form rather than as a universal demo. Without those measurements I wouldn't have known where to start when it came to correcting them.
 
I asked the question because of the way we hear various frequencies at various volumes. Maybe I missed something, but without a microphone how is it determining volume? Percentage would be of what particularly? I don't generally use an android device except to direct a stream myself, and so far don't see how this would work for me (plus am not a headphone user).
You're right that there's no microphone involved — and that's a fair catch. The app isn't measuring actual sound pressure in the room. Here's what it actually does:

What "volume" means here: Android exposes the media volume as a number of steps (e.g. 0–15 on many phones). The percentage is simply your current volume position out of the device's maximum = the position of the volume slider, nothing more.

How that can work without knowing real loudness: You're correct that the same slider position produces very different real-world loudness depending on the speaker or amp. That's exactly why the feature has an anchor volume you set yourself. You pick the slider position where the tonal balance sounds right on your gear — that's your calibration point. From there, the app only reacts to relative changes: as you move the slider below your anchor, it gradually lifts bass and treble to counter the ear's reduced sensitivity at lower levels (the equal-loudness/Fletcher–Munson effect you're describing). So it's a practical approximation anchored to your own setup, not a lab-calibrated implementation of the loudness contours. And it works the same on speakers as headphones — nothing about it is headphone-specific.

For your use case, though, an honest caveat: the feature only helps if the Android volume slider is what actually controls your listening level. If you direct a stream to external equipment and set the loudness on the amp or the receiving device (or the phone's volume is fixed/maxed for a clean line-out), the phone has no idea how loud you're actually listening, and the compensation won't track it. Also, if you're casting (Chromecast-style), the audio is rendered on the receiving device, not the phone, so the app's processing doesn't apply to that stream at all - it works when the phone itself renders the audio (wired out, Bluetooth, or the phone's speaker). In a setup like yours, you'd get more value from setting a fixed bass/treble lift with the EQ to taste than from the automatic volume-tracking feature.
 
Unfortunately I don't know how to measure the results, I just trust the couple of people who have. If I try your app, which I probably will since you gave that testing code, I'd have to compare between it and EqualizerAPO using my ears. It will take too long to swap between PC and phone to be super accurate, but I can at least check for major differences. Hopefully you can find someone who does know how to measure, because that's the only reliable way to know what the actual output is.

Also, the correction filter I need for the high frequency resonance is actually fairly wide due to how hard pinpointing it is. Filter parameters are 16700hz, -12db, but the Q is only 3. However, there is another filter in the same EQ that is sharper, at 4575hz, -4.5db, and Q 5.9. It corrects a different peak built into the IEM's response rather than one resulting from an interaction with my ears. When I get back to the computer I'll play with squig.link and see if I can lower the Q on that filter. It might be possible because I have an EQ to a different target that I was trying out and that same filter was a Q of 4 in that one.

By the way, I'm sure you are wondering why I have to do such extensive corrections to my IEMs, and the reason is fit problems. I had to get custom molded IEMs in order to get a comfortable fit, and there are very few choices that have been measured in custom form rather than as a universal demo. Without those measurements I wouldn't have known where to start when it came to correcting them.
Thanks for sharing the actual filter parameters, that lets me give you a concrete answer instead of a hedge. And the custom-mold context explains a lot. You're working without the safety net of published measurements, so the correction being right matters more for you than for almost anyone.

Good news on the big one: the 16.7 kHz, -12 dB, Q 3 filter fits comfortably in the new build. That frequency range is exactly where Wavelet's import falls apart, and it's where our band grid stays dense, so this is the filter I'd most expect you to hear the difference on. One small technical honesty note: since your center is close to 20 kHz, the very top of the bell's upper skirt gets trimmed at the edge of the range. That part is above audibility, and everything from the low skirt up through your center frequency renders fully.

The 4575 Hz one is where I owe you precision: your Q 5.9 is just past my new cap of 5. At Q 5 the notch lands at the same center and depth but slightly wider, so frequencies a few hundred Hz to either side catch a fraction of a dB more cut than they should. With a -4.5 dB filter that difference is small, and if your other target's Q 4 version works like you suspect, it fits with room to spare. But I'd rather tell you it's a 95% match than let you discover it and wonder what else I rounded off.

On measurement, you're right, and it's already in motion: I'm building an automated check that renders the engine's actual output and compares it against the ideal filter response, so accuracy claims come with data instead of promises. In the meantime your by-ear A/B against APO is still useful to me. One tip if you do it: match levels as closely as you can between phone and PC first, since even half a dB of level difference reads as a tonal difference to the ear.

Honestly, your two filters are going straight into my test suite. If the app can't reproduce the correction that makes your IEMs listenable, that's the benchmark that matters.
 
Thanks for sharing the actual filter parameters, that lets me give you a concrete answer instead of a hedge. And the custom-mold context explains a lot. You're working without the safety net of published measurements, so the correction being right matters more for you than for almost anyone.

Good news on the big one: the 16.7 kHz, -12 dB, Q 3 filter fits comfortably in the new build. That frequency range is exactly where Wavelet's import falls apart, and it's where our band grid stays dense, so this is the filter I'd most expect you to hear the difference on. One small technical honesty note: since your center is close to 20 kHz, the very top of the bell's upper skirt gets trimmed at the edge of the range. That part is above audibility, and everything from the low skirt up through your center frequency renders fully.

The 4575 Hz one is where I owe you precision: your Q 5.9 is just past my new cap of 5. At Q 5 the notch lands at the same center and depth but slightly wider, so frequencies a few hundred Hz to either side catch a fraction of a dB more cut than they should. With a -4.5 dB filter that difference is small, and if your other target's Q 4 version works like you suspect, it fits with room to spare. But I'd rather tell you it's a 95% match than let you discover it and wonder what else I rounded off.

On measurement, you're right, and it's already in motion: I'm building an automated check that renders the engine's actual output and compares it against the ideal filter response, so accuracy claims come with data instead of promises. In the meantime your by-ear A/B against APO is still useful to me. One tip if you do it: match levels as closely as you can between phone and PC first, since even half a dB of level difference reads as a tonal difference to the ear.

Honestly, your two filters are going straight into my test suite. If the app can't reproduce the correction that makes your IEMs listenable, that's the benchmark that matters.
Thanks! That's reassuring, and some quick experimentation I did using squig.link on my phone right now supports your claim of very small differences. I'll download Audiomatch now and test it out when I have time to compare with my PC. If it's reliable and mostly accurate it should be what I needed. It will also be a whole lot cheaper than buying a Qudelix 5K, which is the only other way I know to get 10 bands of accurate PEQ on a phone (Fiio has some cheaper options but I don't know how accurate they are, and what I have currently is only 8 bands which isn't quite enough for a lower end custom).

Edit: I just thought of something. Do you want the full 10 band EQ I'm using?
 
Thanks! That's reassuring, and some quick experimentation I did using squig.link on my phone right now supports your claim of very small differences. I'll download Audiomatch now and test it out when I have time to compare with my PC. If it's reliable and mostly accurate it should be what I needed. It will also be a whole lot cheaper than buying a Qudelix 5K, which is the only other way I know to get 10 bands of accurate PEQ on a phone (Fiio has some cheaper options but I don't know how accurate they are, and what I have currently is only 8 bands which isn't quite enough for a lower end custom).

Edit: I just thought of something. Do you want the full 10 band EQ I'm using?
@Florestan Unfortunately I seem to have already found a severe limitation. Shelf filters don't seem to be available. I also couldn't figure out how to use the TESTME code, so I can't try the premium features.

Edit: A couple other things that I was able to find before I ran into a 4 band limit that requires premium to bypass. First, the Parametric EQ has a -36 in between the boost/cut amount and the Q value. Also, the Q value displayed only updates if you use the +/- buttons to edit it. If you enter the number manually it stays at the default. Last, the Pregain is very hard to adjust because there's no text input for it. You have to slide it to make any adjustments, so it's very easy to overshoot.
 
Last edited:
You're right that there's no microphone involved — and that's a fair catch. The app isn't measuring actual sound pressure in the room. Here's what it actually does:

What "volume" means here: Android exposes the media volume as a number of steps (e.g. 0–15 on many phones). The percentage is simply your current volume position out of the device's maximum = the position of the volume slider, nothing more.

How that can work without knowing real loudness: You're correct that the same slider position produces very different real-world loudness depending on the speaker or amp. That's exactly why the feature has an anchor volume you set yourself. You pick the slider position where the tonal balance sounds right on your gear — that's your calibration point. From there, the app only reacts to relative changes: as you move the slider below your anchor, it gradually lifts bass and treble to counter the ear's reduced sensitivity at lower levels (the equal-loudness/Fletcher–Munson effect you're describing). So it's a practical approximation anchored to your own setup, not a lab-calibrated implementation of the loudness contours. And it works the same on speakers as headphones — nothing about it is headphone-specific.

For your use case, though, an honest caveat: the feature only helps if the Android volume slider is what actually controls your listening level. If you direct a stream to external equipment and set the loudness on the amp or the receiving device (or the phone's volume is fixed/maxed for a clean line-out), the phone has no idea how loud you're actually listening, and the compensation won't track it. Also, if you're casting (Chromecast-style), the audio is rendered on the receiving device, not the phone, so the app's processing doesn't apply to that stream at all - it works when the phone itself renders the audio (wired out, Bluetooth, or the phone's speaker). In a setup like yours, you'd get more value from setting a fixed bass/treble lift with the EQ to taste than from the automatic volume-tracking feature.
Meh then. Arbitrary markings on phone volume certainly don't help. Good luck with this.
 
You're right that there's no microphone involved — and that's a fair catch. The app isn't measuring actual sound pressure in the room. Here's what it actually does:

What "volume" means here: Android exposes the media volume as a number of steps (e.g. 0–15 on many phones). The percentage is simply your current volume position out of the device's maximum = the position of the volume slider, nothing more.

How that can work without knowing real loudness: You're correct that the same slider position produces very different real-world loudness depending on the speaker or amp. That's exactly why the feature has an anchor volume you set yourself. You pick the slider position where the tonal balance sounds right on your gear — that's your calibration point. From there, the app only reacts to relative changes: as you move the slider below your anchor, it gradually lifts bass and treble to counter the ear's reduced sensitivity at lower levels (the equal-loudness/Fletcher–Munson effect you're describing). So it's a practical approximation anchored to your own setup, not a lab-calibrated implementation of the loudness contours. And it works the same on speakers as headphones — nothing about it is headphone-specific.

For your use case, though, an honest caveat: the feature only helps if the Android volume slider is what actually controls your listening level. If you direct a stream to external equipment and set the loudness on the amp or the receiving device (or the phone's volume is fixed/maxed for a clean line-out), the phone has no idea how loud you're actually listening, and the compensation won't track it. Also, if you're casting (Chromecast-style), the audio is rendered on the receiving device, not the phone, so the app's processing doesn't apply to that stream at all - it works when the phone itself renders the audio (wired out, Bluetooth, or the phone's speaker). In a setup like yours, you'd get more value from setting a fixed bass/treble lift with the EQ to taste than from the automatic volume-tracking feature.
Just a note on "anchor" volume might mean....it could mean anything if there's no standard/measurement involved. Makes it somewhat useless. Actually these days my "connect" apps tend to simply change my avr volume via the volume adjustment on the android device....wasn't always that way.
 
@Florestan Unfortunately I seem to have already found a severe limitation. Shelf filters don't seem to be available. I also couldn't figure out how to use the TESTME code, so I can't try the premium features.

Edit: A couple other things that I was able to find before I ran into a 4 band limit that requires premium to bypass. First, the Parametric EQ has a -36 in between the boost/cut amount and the Q value. Also, the Q value displayed only updates if you use the +/- buttons to edit it. If you enter the number manually it stays at the default. Last, the Pregain is very hard to adjust because there's no text input for it. You have to slide it to make any adjustments, so it's very easy to overshoot.
Thanks for the really thorough write-up — this is exactly the kind of feedback that helps, and I've gone through every point:

  • Shelf filters: These will be there in the update that's rolling out very soon — you'll have them shortly.
  • Parametric EQ "-36" showing between the boost/cut and Q: Fixed.
  • Q value not updating on manual entry: Fixed — typing a value now applies it directly, not just the +/− buttons.
  • Pregain being hard to nudge: You can now tap it to open a dialog for fine-tuning, so you can dial in an exact value instead of fighting the slider and overshooting.
All of the above are in the next update, which should be live very soon.

On the code: the original TESTME was time-limited and had expired by the time you got to it — sorry about that. I've set up a fresh one, TESTME2, good through July 18. Just open this link to redeem it:

play.google.com/redeem?code=TESTME2

Then go into the app and start the Premium subscription — the code makes it free for 30 days. After that it'll roll into a subscription automatically, but you can cancel anytime before then, and Google will send you a reminder before any charge happens.

Thanks again for taking the time — really appreciate it.
 
Thanks for the really thorough write-up — this is exactly the kind of feedback that helps, and I've gone through every point:

  • Shelf filters: These will be there in the update that's rolling out very soon — you'll have them shortly.
  • Parametric EQ "-36" showing between the boost/cut and Q: Fixed.
  • Q value not updating on manual entry: Fixed — typing a value now applies it directly, not just the +/− buttons.
  • Pregain being hard to nudge: You can now tap it to open a dialog for fine-tuning, so you can dial in an exact value instead of fighting the slider and overshooting.
All of the above are in the next update, which should be live very soon.

On the code: the original TESTME was time-limited and had expired by the time you got to it — sorry about that. I've set up a fresh one, TESTME2, good through July 18. Just open this link to redeem it:

play.google.com/redeem?code=TESTME2

Then go into the app and start the Premium subscription — the code makes it free for 30 days. After that it'll roll into a subscription automatically, but you can cancel anytime before then, and Google will send you a reminder before any charge happens.

Thanks again for taking the time — really appreciate it.
Thanks for the new code, I was finally able to test the full PEQ. However, there is a massive difference between Audiomatch and my PC. I can't tell you exactly what's wrong, but it likely spans the entire frequency range. I think you really need to find a way to measure the output and compare it to the expected result. The UI is decent, and the device detection works well, but the EQ is the main feature and it just isn't ready.
 
Back
Top Bottom