AudioTrack::setVolume Android crash

Hello! We have a crash on Android.
We use 2.02.27 FMOD version, C++ API, OpenSL output. Different and not old Android versions are affected.
We don’t know the way how to reproduce it.
Call stack of the crash:

* libaudioclient +0x79938 android::AudioTrack::setVolume
* libaudioclient +0xa7b64 android::TrackPlayerBase::playerSetVolume
* libaudioclient +0xa6cb8 android::PlayerBase::setVolume
* libaudioclient +0x4b99c android::media::BnPlayer::onTransact
* libbinder +0x4d6c0 android::BBinder::transact
* libbinder +0x59ea8 android::IPCThreadState::executeCommand
* libbinder +0x59a0c android::IPCThreadState::getAndExecuteCommand
* libbinder +0x5a154 android::IPCThreadState::joinThreadPool
* libbinder +0x80710 <unknown>
* libutils +0x1380c android::Thread::_threadLoop
* libandroid_runtime +0xc4854 android::AndroidRuntime::javaThreadShell
* libc +0xe4fd4 <unknown>
libc +0x84e18 <unknown>

Do you have any ideas how to fix it? Thanks in advance.

Hi,

Thank you for sharing the version number and stack trace!

Could I please get the exact Android version on the affected devices?

This crash appears to be a known issue in the Android audio system on certain versions and doesn’t seem to originate from FMOD.

I have found a similar discussion and you can read more about it here:

We have this crash on various Android versions, now it’s from 10 to 13.

Thanks for confirming the Android version.

It looks like this is the same Oboe issue on Android 12.

Since it’s actually a bug in the Android audio system and not something FMOD controls, there’s unfortunately nothing we can fix on our side.

One workaround you could try is updating to Android 15 to see if that resolves the issue.

Fixed here:

It doesn’t work, we set OPENSL output for all devices and vertsions and still have this issue.