summaryrefslogtreecommitdiffstats
path: root/media/java
diff options
context:
space:
mode:
authorJean-Michel Trivi <jmtrivi@google.com>2014-06-05 15:03:52 -0700
committerJean-Michel Trivi <jmtrivi@google.com>2014-06-10 12:44:04 -0700
commit8a21f5dd79e93aa4e4b08ab4f33b9255d7c06961 (patch)
treedb727a7633f06fd3721d4db06113a99a6a9dd62c /media/java
parent8c90ff3b8a31cd3ef0c740b5442abfd0b2881729 (diff)
downloadframeworks_base-8a21f5dd79e93aa4e4b08ab4f33b9255d7c06961.zip
frameworks_base-8a21f5dd79e93aa4e4b08ab4f33b9255d7c06961.tar.gz
frameworks_base-8a21f5dd79e93aa4e4b08ab4f33b9255d7c06961.tar.bz2
AudioManager: add ability to allocate a new session ID
Expose method to allocate a new session ID. Make the generic error code public. Change-Id: Iec93548292845e3a1b1a97be9bbe54e9fcf06f2d
Diffstat (limited to 'media/java')
-rw-r--r--media/java/android/media/AudioManager.java22
-rw-r--r--media/java/android/media/AudioSystem.java5
2 files changed, 26 insertions, 1 deletions
diff --git a/media/java/android/media/AudioManager.java b/media/java/android/media/AudioManager.java
index c3d5d94..ba6b214 100644
--- a/media/java/android/media/AudioManager.java
+++ b/media/java/android/media/AudioManager.java
@@ -1653,6 +1653,25 @@ public class AudioManager {
}
}
+
+ /**
+ * Return a new audio session identifier not associated with any player or effect.
+ * It can for instance be used to create one of the {@link android.media.audiofx.AudioEffect}
+ * objects.
+ * @return a new unclaimed and unused audio session identifier, or {@link #ERROR} when the
+ * system failed to allocate a new session.
+ */
+ public int allocateAudioSessionId() {
+ int session = AudioSystem.newAudioSessionId();
+ if (session > 0) {
+ return session;
+ } else {
+ Log.e(TAG, "Failure to allocate a new audio session ID");
+ return ERROR;
+ }
+ }
+
+
/*
* Sets a generic audio configuration parameter. The use of these parameters
* are platform dependant, see libaudio
@@ -2998,7 +3017,8 @@ public class AudioManager {
/** @hide
*/
public static final int SUCCESS = AudioSystem.SUCCESS;
- /** @hide
+ /**
+ * A default error code.
*/
public static final int ERROR = AudioSystem.ERROR;
/** @hide
diff --git a/media/java/android/media/AudioSystem.java b/media/java/android/media/AudioSystem.java
index c8d64ce..9fbcd18 100644
--- a/media/java/android/media/AudioSystem.java
+++ b/media/java/android/media/AudioSystem.java
@@ -130,6 +130,11 @@ public class AudioSystem
public static native boolean isSourceActive(int source);
/*
+ * Returns a new unused audio session ID
+ */
+ public static native int newAudioSessionId();
+
+ /*
* Sets a group generic audio configuration parameters. The use of these parameters
* are platform dependent, see libaudio
*