[Spirit FM] mikereidis:
OK, wow, this will take a bit of time to answer, so I'll edit this post bit by bit as I put my kids to bed...

As posted above, it looks like the latest Jan 15 Spirit1 Unlocked can work on some Sony's by setting Audio-> Method to "LG G2". I have a test release that should work better, maybe I'll put a new debug release on Play soon.

RDS IS station info. Do you see text showing the station type, station ID, etc ? That's RDS. But you say Spirit2 has it, so I guess you understand that ? And you're running Spirit2 on your unrooted phone and RDS works ?

AFAIR, the Sony FM app can't go through audio processing: EQ, bass boost etc.

But does this work with Spirit, using digital audio ? I think results have been mixed.

Spirit1 and Spirit2 digital audio have been mostly identical until recently.

Then I went on a 2 week adventure of switching Spirit2 to a new low level NDK OpenSL ES architecture that is alleged to be the one true way to try to achieve high performance, glitch free, low latency digital audio on Android. Playing audio files glitch-free on Android is easy; anything more sophisticated seems to require both luck (based on your ROM, kernel, Android build, with OEM ROMs being worst.) and detective skills and time to chase down whatever is creating the problem and coming up with some fix or workaround, and doing this all over again with every different audio architecture and/or generation of chips.

The new architecture, and matching native sample rates and buffer sizes, seemed to help, but visuals, EQ and other things were gone, though they maybe could be custom recreated from scratch with a whole bunch more code and time, LOL. But it turned out most of the benefit was from just matching native sample rates and buffer sizes and not from the OpenSL ES.

So I switched Spirit2 back to the old architecture, but with the new sample rates and buffer sizes, in cases where it didn't cause a problem. Here are the results for the new Feb10 Spirit2:

For Qualcomm devices (except HTC OneXL/S/Evo4G) such as yours, samplerate changed from 22050 to 48000. Buffer size increased from 320 to 3840 bytes. I've noted that my MotoG can handle this, but only if visualizer is off. EQ etc is OK.

BTW, you can change Spirit1 Unlocked sample rate for digital. See the end of the Digital settings. And if you don't use AF you can test buffer sizes while running with AF-> AF Period. Default 500 disables this.

Qualcomm HTC OneXL etc still can't handle 48000, and won't work at 24000, so I had to slow it down to the 22050 it's always been at. Buffer size still at the too small 320 because other values don't work as well.

Samsung devices from GS1 - Note2 have never had any digital problems, despite 3 different audio systems, and remain at their native 44100. Different buffer sizes are used, but they've never been fussy.

LG G2 is now at 48000 and it seems better (waiting for reports) than the previous 44100 default for all. But there is still audio interruption when turning display on/off at least.

HTC One I tried to change to 48000 but it just wouldn't work, so back to 44100.

And that's an unfortunate consequence of most stock ROM users not wanting to pay for an app, and Sony's relatively poor showing in popularity among ROMers at least.

I dunno. :) Some release of Spirit2, maybe soon, may allow enabling/disabling OEM API support on Sony. But I'm still seriously considering killing the stock Sony support in Spirit2, which continues to be a big pain for very little gain.

There are at least 2 software layers too many in Spirit2 right now, and all to support the stock Sony API, which was once the "proposed standard Android FM API" but which went nowhere. This might be the source of my HTC One troubles.

You say EQ, I think you mean visualizer. The latest Spirit2's disable visualize by default, but allow it to be re-enabled per start. It uses a bunch of CPU, even when it's invisible because Spirit1 is on main screen. AND it seems to create crashes from time to time on certain phones/ROMs.