summaryrefslogtreecommitdiffstats
path: root/core/jni/android_media_AudioTrack.cpp
diff options
context:
space:
mode:
authorGlenn Kasten <gkasten@google.com>2014-01-08 11:38:33 -0800
committerGlenn Kasten <gkasten@google.com>2014-01-09 09:55:54 -0800
commit659a9712f2072f0bb3fa39de23f252f2f97440b4 (patch)
tree98a361085b163999f12a527bd4fdaf5ab4eb466e /core/jni/android_media_AudioTrack.cpp
parent8a1b1e6fcd792d04139d1755dc83dd3f552a78a0 (diff)
downloadframeworks_base-659a9712f2072f0bb3fa39de23f252f2f97440b4.zip
frameworks_base-659a9712f2072f0bb3fa39de23f252f2f97440b4.tar.gz
frameworks_base-659a9712f2072f0bb3fa39de23f252f2f97440b4.tar.bz2
Improve error reporting in AudioTrack JNI
for android_media_AudioTrack_get_min_buff_size when it calls AudioTrack::getMinFrameCount. That AudioTrack API has been changed recently to guarantee that it will always return a valid frameCount if the return value == NO_ERROR. Change-Id: I8f7f850f1c30229ce77a02bdc963634cdbaf3aac
Diffstat (limited to 'core/jni/android_media_AudioTrack.cpp')
-rw-r--r--core/jni/android_media_AudioTrack.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/core/jni/android_media_AudioTrack.cpp b/core/jni/android_media_AudioTrack.cpp
index 225bf06..bc6dbb6 100644
--- a/core/jni/android_media_AudioTrack.cpp
+++ b/core/jni/android_media_AudioTrack.cpp
@@ -829,9 +829,12 @@ static jint android_media_AudioTrack_get_output_sample_rate(JNIEnv *env, jobjec
static jint android_media_AudioTrack_get_min_buff_size(JNIEnv *env, jobject thiz,
jint sampleRateInHertz, jint nbChannels, jint audioFormat) {
- size_t frameCount = 0;
- if (AudioTrack::getMinFrameCount(&frameCount, AUDIO_STREAM_DEFAULT,
- sampleRateInHertz) != NO_ERROR) {
+ size_t frameCount;
+ const status_t status = AudioTrack::getMinFrameCount(&frameCount, AUDIO_STREAM_DEFAULT,
+ sampleRateInHertz);
+ if (status != NO_ERROR) {
+ ALOGE("AudioTrack::getMinFrameCount() for sample rate %d failed with status %d",
+ sampleRateInHertz, status);
return -1;
}
return frameCount * nbChannels * (audioFormat == ENCODING_PCM_16BIT ? 2 : 1);