Add IAudioManager methods for tracking client recording activity
audio_unique_id_t IAudioManager::trackRecorder(IBinder token)
- registers a client recorder withing Audio Service,
returns a unique tracking recording ID (RIID);
Audio Service tracks the lifetime of the recorder using
the provided token.
oneway recorderEvent(int riid, int event)
- updates the current state of the client;
only "started" and "stoped" states are considered.
Bug: 123312504
Test: android.media.cts.AudioRecordingConfigurationTest
AudioRecordTest#testAudioRecordInfoCallback
MediaRecorderTest#testAudioRecordInfoCallback
manual testing using Oboe and Solo test apps
Change-Id: Iddb1b91fff7127ab35ba1d33e3e6c32937ac3081
diff --git a/include/audiomanager/AudioManager.h b/include/audiomanager/AudioManager.h
index 009dc52..639df7a 100644
--- a/include/audiomanager/AudioManager.h
+++ b/include/audiomanager/AudioManager.h
@@ -20,7 +20,6 @@
namespace android {
// must be kept in sync with definitions in AudioPlaybackConfiguration.java
-
#define PLAYER_PIID_INVALID -1
typedef enum {
@@ -40,6 +39,15 @@
PLAYER_STATE_STOPPED = 4,
} player_state_t;
+// must be kept in sync with definitions in AudioManager.java
+#define RECORD_RIID_INVALID -1
+
+typedef enum {
+ RECORDER_STATE_UNKNOWN = -1,
+ RECORDER_STATE_STARTED = 0,
+ RECORDER_STATE_STOPPED = 1,
+} recorder_state_t;
+
}; // namespace android
#endif // ANDROID_AUDIOMANAGER_H