diff --git a/services/audioflinger/TrackMetrics.h b/services/audioflinger/TrackMetrics.h
index a1a0cfe..96a3309 100644
--- a/services/audioflinger/TrackMetrics.h
+++ b/services/audioflinger/TrackMetrics.h
@@ -72,9 +72,15 @@
         ++mIntervalCount;
         const auto& mActivityManager = getActivityManager();
         if (mActivityManager) {
-            mActivityManager->logFgsApiBegin(AUDIO_API,
-                mUid,
-                IPCThreadState::self() -> getCallingPid());
+            if (mIsOut) {
+                mActivityManager->logFgsApiBegin(AUDIO_API,
+                    mUid,
+                    IPCThreadState::self() -> getCallingPid());
+            } else {
+                mActivityManager->logFgsApiBegin(MICROPHONE_API,
+                    mUid,
+                    IPCThreadState::self() -> getCallingPid());
+            }
         }
     }
 
@@ -107,9 +113,15 @@
         }
         const auto& mActivityManager = getActivityManager();
         if (mActivityManager) {
-            mActivityManager->logFgsApiEnd(AUDIO_API,
-                mUid,
-                IPCThreadState::self() -> getCallingPid());
+            if (mIsOut) {
+                mActivityManager->logFgsApiEnd(AUDIO_API,
+                    mUid,
+                    IPCThreadState::self() -> getCallingPid());
+            } else {
+                mActivityManager->logFgsApiEnd(MICROPHONE_API,
+                    mUid,
+                    IPCThreadState::self() -> getCallingPid());
+            }
         }
     }
 
@@ -255,6 +267,7 @@
     const bool        mIsOut;  // if true, than a playback track, otherwise used for record.
 
     static constexpr int AUDIO_API = 5;
+    static constexpr int MICROPHONE_API = 6;
     const int         mUid;
 
     mutable           std::mutex mLock;
