LiveEffect: use isAAudioRecommended()
The old code was using isAAudioSupported.
AAudio is supported on Android 8.0 but is
not recommended because it can crash.
Fixes #1192
diff --git a/samples/LiveEffect/src/main/cpp/LiveEffectEngine.cpp b/samples/LiveEffect/src/main/cpp/LiveEffectEngine.cpp
index 8c873f8..122e975 100644
--- a/samples/LiveEffect/src/main/cpp/LiveEffectEngine.cpp
+++ b/samples/LiveEffect/src/main/cpp/LiveEffectEngine.cpp
@@ -31,14 +31,12 @@
mPlaybackDeviceId = deviceId;
}
-bool LiveEffectEngine::isAAudioSupported() {
- oboe::AudioStreamBuilder builder;
- return builder.isAAudioSupported();
+bool LiveEffectEngine::isAAudioRecommended() {
+ return oboe::AudioStreamBuilder::isAAudioRecommended();
}
bool LiveEffectEngine::setAudioApi(oboe::AudioApi api) {
if (mIsEffectOn) return false;
-
mAudioApi = api;
return true;
}
diff --git a/samples/LiveEffect/src/main/cpp/LiveEffectEngine.h b/samples/LiveEffect/src/main/cpp/LiveEffectEngine.h
index c12cbdb..962b16f 100644
--- a/samples/LiveEffect/src/main/cpp/LiveEffectEngine.h
+++ b/samples/LiveEffect/src/main/cpp/LiveEffectEngine.h
@@ -49,7 +49,7 @@
void onErrorAfterClose(oboe::AudioStream *oboeStream, oboe::Result error) override;
bool setAudioApi(oboe::AudioApi);
- bool isAAudioSupported(void);
+ bool isAAudioRecommended(void);
private:
FullDuplexPass mFullDuplexPass;
diff --git a/samples/LiveEffect/src/main/cpp/jni_bridge.cpp b/samples/LiveEffect/src/main/cpp/jni_bridge.cpp
index eb70e6d..ad9172e 100644
--- a/samples/LiveEffect/src/main/cpp/jni_bridge.cpp
+++ b/samples/LiveEffect/src/main/cpp/jni_bridge.cpp
@@ -112,7 +112,7 @@
}
JNIEXPORT jboolean JNICALL
-Java_com_google_oboe_samples_liveEffect_LiveEffectEngine_isAAudioSupported(
+Java_com_google_oboe_samples_liveEffect_LiveEffectEngine_isAAudioRecommended(
JNIEnv *env, jclass type) {
if (engine == nullptr) {
LOGE(
@@ -120,7 +120,7 @@
"before calling this method");
return JNI_FALSE;
}
- return engine->isAAudioSupported() ? JNI_TRUE : JNI_FALSE;
+ return engine->isAAudioRecommended() ? JNI_TRUE : JNI_FALSE;
}
JNIEXPORT void JNICALL
diff --git a/samples/LiveEffect/src/main/java/com/google/oboe/samples/liveEffect/LiveEffectEngine.java b/samples/LiveEffect/src/main/java/com/google/oboe/samples/liveEffect/LiveEffectEngine.java
index fe2cbb3..7775de4 100644
--- a/samples/LiveEffect/src/main/java/com/google/oboe/samples/liveEffect/LiveEffectEngine.java
+++ b/samples/LiveEffect/src/main/java/com/google/oboe/samples/liveEffect/LiveEffectEngine.java
@@ -30,7 +30,7 @@
// Native methods
static native boolean create();
- static native boolean isAAudioSupported();
+ static native boolean isAAudioRecommended();
static native boolean setAPI(int apiType);
static native boolean setEffectOn(boolean isEffectOn);
static native void setRecordingDeviceId(int deviceId);
diff --git a/samples/LiveEffect/src/main/java/com/google/oboe/samples/liveEffect/MainActivity.java b/samples/LiveEffect/src/main/java/com/google/oboe/samples/liveEffect/MainActivity.java
index fad59b1..1c1de6a 100644
--- a/samples/LiveEffect/src/main/java/com/google/oboe/samples/liveEffect/MainActivity.java
+++ b/samples/LiveEffect/src/main/java/com/google/oboe/samples/liveEffect/MainActivity.java
@@ -54,7 +54,7 @@
private boolean isPlaying = false;
private int apiSelection = OBOE_API_AAUDIO;
- private boolean aaudioSupported = true;
+ private boolean mAAudioRecommended = true;
@Override
protected void onCreate(Bundle savedInstanceState) {
@@ -125,12 +125,12 @@
}
private void EnableAudioApiUI(boolean enable) {
- if(apiSelection == OBOE_API_AAUDIO && !aaudioSupported)
+ if(apiSelection == OBOE_API_AAUDIO && !mAAudioRecommended)
{
apiSelection = OBOE_API_OPENSL_ES;
}
findViewById(R.id.slesButton).setEnabled(enable);
- if(!aaudioSupported) {
+ if(!mAAudioRecommended) {
findViewById(R.id.aaudioButton).setEnabled(false);
} else {
findViewById(R.id.aaudioButton).setEnabled(enable);
@@ -150,7 +150,7 @@
protected void onResume() {
super.onResume();
LiveEffectEngine.create();
- aaudioSupported = LiveEffectEngine.isAAudioSupported();
+ mAAudioRecommended = LiveEffectEngine.isAAudioRecommended();
EnableAudioApiUI(true);
LiveEffectEngine.setAPI(apiSelection);
}