diff options
author | Glenn Kasten <gkasten@google.com> | 2013-07-23 20:36:06 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2013-07-23 20:36:07 +0000 |
commit | 922a8c0aa8b9ea278c6d5dc21498930dab47ea75 (patch) | |
tree | 144d0835ba1439d0e805b910df8eb12b42d3f39e | |
parent | 270d1460d394e61255d5960ead505ccddd6b2d96 (diff) | |
parent | 5b1576ccbd9ab43d5e3238589cf5b43a4834447d (diff) | |
download | frameworks_base-922a8c0aa8b9ea278c6d5dc21498930dab47ea75.zip frameworks_base-922a8c0aa8b9ea278c6d5dc21498930dab47ea75.tar.gz frameworks_base-922a8c0aa8b9ea278c6d5dc21498930dab47ea75.tar.bz2 |
Merge "Use switch in callback handler for events, and no EVENT_MORE_DATA"
-rw-r--r-- | core/jni/android_media_AudioRecord.cpp | 12 | ||||
-rw-r--r-- | core/jni/android_media_AudioTrack.cpp | 13 |
2 files changed, 12 insertions, 13 deletions
diff --git a/core/jni/android_media_AudioRecord.cpp b/core/jni/android_media_AudioRecord.cpp index 44e43e7..77208b9 100644 --- a/core/jni/android_media_AudioRecord.cpp +++ b/core/jni/android_media_AudioRecord.cpp @@ -91,12 +91,9 @@ static void recorderCallback(int event, void* user, void *info) { } callbackInfo->busy = true; } - if (event == AudioRecord::EVENT_MORE_DATA) { - // set size to 0 to signal we're not using the callback to read more data - AudioRecord::Buffer* pBuff = (AudioRecord::Buffer*)info; - pBuff->size = 0; - } else if (event == AudioRecord::EVENT_MARKER) { + switch (event) { + case AudioRecord::EVENT_MARKER: { JNIEnv *env = AndroidRuntime::getJNIEnv(); if (user && env) { env->CallStaticVoidMethod( @@ -108,8 +105,9 @@ static void recorderCallback(int event, void* user, void *info) { env->ExceptionClear(); } } + } break; - } else if (event == AudioRecord::EVENT_NEW_POS) { + case AudioRecord::EVENT_NEW_POS: { JNIEnv *env = AndroidRuntime::getJNIEnv(); if (user && env) { env->CallStaticVoidMethod( @@ -121,7 +119,9 @@ static void recorderCallback(int event, void* user, void *info) { env->ExceptionClear(); } } + } break; } + { Mutex::Autolock l(sLock); callbackInfo->busy = false; diff --git a/core/jni/android_media_AudioTrack.cpp b/core/jni/android_media_AudioTrack.cpp index f2da865..a9a87d6 100644 --- a/core/jni/android_media_AudioTrack.cpp +++ b/core/jni/android_media_AudioTrack.cpp @@ -131,12 +131,8 @@ static void audioCallback(int event, void* user, void *info) { callbackInfo->busy = true; } - if (event == AudioTrack::EVENT_MORE_DATA) { - // set size to 0 to signal we're not using the callback to write more data - AudioTrack::Buffer* pBuff = (AudioTrack::Buffer*)info; - pBuff->size = 0; - - } else if (event == AudioTrack::EVENT_MARKER) { + switch (event) { + case AudioTrack::EVENT_MARKER: { JNIEnv *env = AndroidRuntime::getJNIEnv(); if (user && env) { env->CallStaticVoidMethod( @@ -148,8 +144,9 @@ static void audioCallback(int event, void* user, void *info) { env->ExceptionClear(); } } + } break; - } else if (event == AudioTrack::EVENT_NEW_POS) { + case AudioTrack::EVENT_NEW_POS: { JNIEnv *env = AndroidRuntime::getJNIEnv(); if (user && env) { env->CallStaticVoidMethod( @@ -161,7 +158,9 @@ static void audioCallback(int event, void* user, void *info) { env->ExceptionClear(); } } + } break; } + { Mutex::Autolock l(sLock); callbackInfo->busy = false; |