[Android Software Development] ban.codrut:
Hope you like reading ^^ apparently I do like writing

The most common "bad" effect of applying effects and using Bluetooth headphones is the reduction of the sound stage in my experience. No matter the audio source or the intensity of the applied effect the sound stage was audible getting narrowed.

- Example from my experience: if I enable the effect leaving the FLAT preset, which will only process the sound but not altering it (no EQs, Virtualization, or Bass Enhancement applied), as soon as i moved the EQ graph (any band considered) up or down with a value as low as 0.1 the sound stage gets smashed down. the Bass Enhancement effects are the worst in this case, with Virtualization being the least worst but has very little audible effect (the sound stage doesn't get narrower, it gets all wrong but that's common to 3D stereo effect, giving more focus on the sound differentials rather than the common ground and SBC seems to handle this really bad with compression)

My guess is that the bitrate of the audio + effect gets higher that the original audio bitrate and the encoding algorithm for bluetooth has really limited bitrate (SBC caps at 345 kbit/s, considering stereo audio that's half per channel, the stereo-joint technique is welcomed at this numbers but bad for sound stage). This impacts the sound stage at first as it depends on how well defined is each stereo channel relative to the other, this translates to how much bitrate is per channel and the quality of the sound source. It can even distort/clip the audio depending on how SBC handels it and also on how it will get decoded on the other end(noticeable on the higher freq).

- Considering a quality sound source at bitrate X. If it gets passed to the BT codec directly it will get compressed let's say by 20%. If the sound source gets passed to an audio effect stack, this stack has to work faster than the rate of the sound source (higher bitrate of data processing) and also because of the misconception of higher is better it might also do upsamples and redefine the bit depth to 24bit producing an monstrous output of information (useless in BT case). The bitrates of that output can get really high, and besides modifications there isn't an actual improvement over quality #1, instead it gets even worse as the same quality has to get compressed even more to fit SBC, let's say it jumps from 20% to 60% compression rate, altering quality #1 a lot more and usually the first thing that gets sacrificed by SBC it's the sound differential (sound stage) focusing on the common ground (center) (not even joint-stereo would survive this)

-All the upsample and bit depth redefinition is good for the finality of D/A conversion (if the values are supported by it), as it gives you more space to play with the original sound source and do better transformation, where how much bitrate you gonna end up with doesn't matter (tho you are still "capped" , but not really, by the data bus)

I have a pair of Jaybird BlueBuds X, which are considere high quality BT headphones for their 16bit/44,1Khz DAC. Although they are useing a proprietary codec for decoding (based on A2DP standard SBC) and Bluetooth v2.1, I think this also applies to BT v3.0 and BT 4.x as there isn't any technical detail to make a difference. The only way around it is to have a device and headphones/speakers that they both use a (licensed) alternative audio codec for BT with higher bitrate cap (even aptX caps at 352 Kbit/sec, the only one standing out is LDAC by Sony which outputs at 990Kbit/sec).

P.S: I haven't quite get what you meant by "I have to consider" , too late for me to think about this now :)

DISCLAIMER: nothing in here is a critic on how you do your mods, your mods are still new to me and I still have to try out (sadly I can do only the last 2, generic ones, as I'm using Moto X Style not supported by you).