opensles: call setCallerName() for MediaMetrics am: 4b182d70a8 am: 8a01fb471e
Change-Id: I6b29deeac1ada9e7d0ea08930c6d9a147753735e
diff --git a/src/android/AudioPlayer_to_android.cpp b/src/android/AudioPlayer_to_android.cpp
index d8940b8..9dc0a8a 100644
--- a/src/android/AudioPlayer_to_android.cpp
+++ b/src/android/AudioPlayer_to_android.cpp
@@ -1695,6 +1695,10 @@
(void *) pAudioPlayer, // user
notificationFrames, // see comment above
pAudioPlayer->mSessionId);
+
+ // Set it here so it can be logged by the destructor if the open failed.
+ pat->setCallerName(ANDROID_OPENSLES_CALLER_NAME);
+
android::status_t status = pat->initCheck();
if (status != android::NO_ERROR) {
// AudioTracks are meant to be refcounted, so their dtor is protected.
diff --git a/src/android/AudioRecorder_to_android.cpp b/src/android/AudioRecorder_to_android.cpp
index 4e2f31d..2595112 100644
--- a/src/android/AudioRecorder_to_android.cpp
+++ b/src/android/AudioRecorder_to_android.cpp
@@ -703,6 +703,9 @@
// transfer type
policy); // audio_input_flags_t
+ // Set it here so it can be logged by the destructor if the open failed.
+ ar->mAudioRecord->setCallerName(ANDROID_OPENSLES_CALLER_NAME);
+
android::status_t status = ar->mAudioRecord->initCheck();
if (android::NO_ERROR != status) {
SL_LOGE("android_audioRecorder_realize(%p) error creating AudioRecord object; status %d",
diff --git a/src/android/android_defs.h b/src/android/android_defs.h
index 8b28983..daa7b70 100644
--- a/src/android/android_defs.h
+++ b/src/android/android_defs.h
@@ -221,5 +221,7 @@
ANDROID_PERFORMANCE_MODE_NONE | \
ANDROID_PERFORMANCE_MODE_POWER_SAVING)
+// This is used for exact matching by MediaMetrics. So do not change it.
+#define ANDROID_OPENSLES_CALLER_NAME "opensles"
} // namespace android