summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGlenn Kasten <gkasten@android.com>2015-04-10 12:53:47 -0700
committerGlenn Kasten <gkasten@android.com>2015-04-10 12:54:48 -0700
commit092520b257628fc7e69d1cec14a65ccc50067e60 (patch)
tree245ba140149b362f4a0b0343eeecd09b9dae268e
parented142125efc1084febeb42e7de60eaff697e385a (diff)
downloaddrrickorang-092520b257628fc7e69d1cec14a65ccc50067e60.tar.gz
Allow running on pre Jellybean MR1
-rw-r--r--LoopbackApp/app/src/main/java/org/drrickorang/loopback/LoopbackApplication.java15
1 files changed, 12 insertions, 3 deletions
diff --git a/LoopbackApp/app/src/main/java/org/drrickorang/loopback/LoopbackApplication.java b/LoopbackApp/app/src/main/java/org/drrickorang/loopback/LoopbackApplication.java
index 0071f2d..9460a0c 100644
--- a/LoopbackApp/app/src/main/java/org/drrickorang/loopback/LoopbackApplication.java
+++ b/LoopbackApp/app/src/main/java/org/drrickorang/loopback/LoopbackApplication.java
@@ -160,9 +160,14 @@ public class LoopbackApplication extends Application {
if( mAudioThreadType == AUDIO_THREAD_TYPE_NATIVE) {
- AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
- String value = am.getProperty(AudioManager.PROPERTY_OUTPUT_FRAMES_PER_BUFFER);
- int minBufferSizeInFrames = Integer.parseInt(value);
+ int minBufferSizeInFrames;
+ if (isSafeToUseGetProperty()) {
+ AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
+ String value = am.getProperty(AudioManager.PROPERTY_OUTPUT_FRAMES_PER_BUFFER);
+ minBufferSizeInFrames = Integer.parseInt(value);
+ } else {
+ minBufferSizeInFrames = 1024;
+ }
int minBufferSizeInBytes = BYTES_PER_FRAME * minBufferSizeInFrames;
setPlayBufferSizeInBytes(minBufferSizeInBytes);
@@ -203,6 +208,10 @@ public class LoopbackApplication extends Application {
return Build.VERSION.SDK_INT >= Build.VERSION_CODES.GINGERBREAD;
}
+ boolean isSafeToUseGetProperty() {
+ return Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1;
+ }
+
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);