Background:
I recently upgraded a Samsung Galaxy S4 from Cyanogenmod 11 (KitKat) to Cyanogenmod 13 (Marshmallow). Everything seems to work fine except that AudioFX crashes several times in a row ("Unfortunately AudioFX has stopped working").
Since the crash message grabs the focus and this happens easily 4 to 6 times in a row, it is very disruptive. Oddly, AudioFX crashes have only happened while I am using Ingress: AudioFX doesn't always crash while I am using Ingress, but it only crashes while I am using Ingress. There doesn't seem to be any pattern to the crashes in terms of what I am doing or what Ingress is doing just before the crash happens.
I grabbed a logcat to see the specific error messages, and here is a representative crash log:
--------- beginning of crash
06-30 10:02:33.418 1425 1425 E AndroidRuntime: FATAL EXCEPTION: main
06-30 10:02:33.418 1425 1425 E AndroidRuntime: Process: org.cyanogenmod.audiofx, PID: 1425
06-30 10:02:33.418 1425 1425 E AndroidRuntime: Theme: themes:{default=overlay:com.material.black.theme, com.android.systemui=overlay:com.material.black.theme, com.android.systemui.navbar=overlay:com.material.black.theme}
06-30 10:02:33.418 1425 1425 E AndroidRuntime: java.lang.RuntimeException: Unable to start service org.cyanogenmod.audiofx.HeadsetService@bf433a3 with Intent { act=cyanogenmod.intent.action.ACTION_AUDIO_SESSIONS_CHANGED cmp=org.cyanogenmod.audiofx/.HeadsetService (has extras) }: java.lang.RuntimeException: Cannot initialize effect engine for type: 0bed4300-ddd6-11db-8f34-0002a5d5c51b Error: -3
06-30 10:02:33.418 1425 1425 E AndroidRuntime: at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:3061)
06-30 10:02:33.418 1425 1425 E AndroidRuntime: at android.app.ActivityThread.-wrap17(ActivityThread.java)
06-30 10:02:33.418 1425 1425 E AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1461)
06-30 10:02:33.418 1425 1425 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:102)
06-30 10:02:33.418 1425 1425 E AndroidRuntime: at android.os.Looper.loop(Looper.java:148)
06-30 10:02:33.418 1425 1425 E AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:5461)
06-30 10:02:33.418 1425 1425 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method)
06-30 10:02:33.418 1425 1425 E AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726)
06-30 10:02:33.418 1425 1425 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
06-30 10:02:33.418 1425 1425 E AndroidRuntime: Caused by: java.lang.RuntimeException: Cannot initialize effect engine for type: 0bed4300-ddd6-11db-8f34-0002a5d5c51b Error: -3
06-30 10:02:33.418 1425 1425 E AndroidRuntime: at android.media.audiofx.AudioEffect.<init>(AudioEffect.java:411)
06-30 10:02:33.418 1425 1425 E AndroidRuntime: at android.media.audiofx.Equalizer.<init>(Equalizer.java:139)
06-30 10:02:33.418 1425 1425 E AndroidRuntime: at org.cyanogenmod.audiofx.HeadsetService$EffectSet.<init>(HeadsetService.java:95)
06-30 10:02:33.418 1425 1425 E AndroidRuntime: at org.cyanogenmod.audiofx.HeadsetService.addSession(HeadsetService.java:208)
06-30 10:02:33.418 1425 1425 E AndroidRuntime: at org.cyanogenmod.audiofx.HeadsetService.addSession(HeadsetService.java:242)
06-30 10:02:33.418 1425 1425 E AndroidRuntime: at org.cyanogenmod.audiofx.HeadsetService.onStartCommand(HeadsetService.java:445)
06-30 10:02:33.418 1425 1425 E AndroidRuntime: at android.app.ActivityThread.handleServiceArgs(ActivityThread.java:3044)
06-30 10:02:33.418 1425 1425 E AndroidRuntime: ... 8 more
Troubleshooting steps I have taken are:
- reboot the phone
- disable AudioFX from within the app
- clearing the AudioFX cache
- setting up an AudioFX profile for every sound output device
None of these have prevented or reduced AudioFX crashes. I cannot disable the app from within Android (only from the app itself) since it is marked as a system app. I have looked at apps that uninstall system apps, they are listing AudioFX as a "Key Module."
The Question:
- Is it safe to uninstall AudioFX?
- Does AudioFX need to be replaced by another equivalent app?