@@ -6,6 +6,7 @@ import android.content.Intent
66import android.content.IntentFilter
77import android.media.audiofx.AudioEffect
88import android.media.audiofx.AudioEffectHidden
9+ import me.timschneeberger.rootlessjamesdsp.MainApplication
910import me.timschneeberger.rootlessjamesdsp.interop.structure.EelVmVariable
1011import me.timschneeberger.rootlessjamesdsp.utils.Constants
1112import me.timschneeberger.rootlessjamesdsp.utils.extensions.AudioEffectExtensions.getParameterInt
@@ -14,6 +15,7 @@ import me.timschneeberger.rootlessjamesdsp.utils.extensions.AudioEffectExtension
1415import me.timschneeberger.rootlessjamesdsp.utils.extensions.AudioEffectExtensions.setParameterFloatArray
1516import me.timschneeberger.rootlessjamesdsp.utils.extensions.AudioEffectExtensions.setParameterImpulseResponseBuffer
1617import me.timschneeberger.rootlessjamesdsp.utils.extensions.ContextExtensions.registerLocalReceiver
18+ import me.timschneeberger.rootlessjamesdsp.utils.extensions.ContextExtensions.showAlert
1719import me.timschneeberger.rootlessjamesdsp.utils.extensions.ContextExtensions.toast
1820import me.timschneeberger.rootlessjamesdsp.utils.extensions.ContextExtensions.unregisterLocalReceiver
1921import me.timschneeberger.rootlessjamesdsp.utils.extensions.crc
@@ -300,26 +302,22 @@ class JamesDspRemoteEngine(
300302 private val EFFECT_JAMESDSP = UUID .fromString(" f27317f4-c984-4de6-9a90-545759495bf2" )
301303
302304 fun isPluginInstalled (): PluginState {
303- return PluginState .Available
304-
305- // TODO This method doesn't seem to work with new AIDL jamesdsp lib patch; investigate using emulator
306305 return try {
307306 AudioEffect
308307 .queryEffects()
309308 .orEmpty()
310- .filter { it.uuid == EFFECT_JAMESDSP }
311- .firstOrNull { it.name.contains(" JamesDSP" ) }
312- .let {
313- if (it == null )
314- PluginState .Unavailable
315- else if (it.name.contains(" v3" ))
316- PluginState .Unsupported
317- else
318- PluginState .Available
319- }
309+ .firstOrNull { it.uuid == EFFECT_JAMESDSP }
310+ ?.run {
311+ if (name.contains(" v3" )) PluginState .Unsupported else PluginState .Available
312+ } ? : PluginState .Unavailable
320313 } catch (e: Exception ) {
321314 Timber .e(" isPluginInstalled: exception raised" )
322315 Timber .e(e)
316+ MainApplication .instance.showAlert(
317+ " Error while checking audio effect status" ,
318+ " Unexpected error while checking whether JamesDSP's audio effect library is installed. \n\n " +
319+ " Error: $e " ,
320+ )
323321 PluginState .Unavailable
324322 }
325323 }
0 commit comments