From c6c4365ddb0213c548b055f257dc8077389224fb Mon Sep 17 00:00:00 2001 From: Glenn Kasten Date: Mon, 24 Sep 2012 17:32:30 -0700 Subject: Implement android.media.AudioManager.getProperty() Bug: 6635041 Change-Id: I0e7d53b99559cdc89f2f107f23048e4b1a8dd383 --- media/java/android/media/AudioManager.java | 12 ++++++++++-- media/java/android/media/AudioSystem.java | 5 +++++ 2 files changed, 15 insertions(+), 2 deletions(-) (limited to 'media/java') diff --git a/media/java/android/media/AudioManager.java b/media/java/android/media/AudioManager.java index 270c88f..ee17bd3 100644 --- a/media/java/android/media/AudioManager.java +++ b/media/java/android/media/AudioManager.java @@ -2474,8 +2474,16 @@ public class AudioManager { * or null if there is no value for that key. */ public String getProperty(String key) { - // implementation to be written - return null; + if (PROPERTY_OUTPUT_SAMPLE_RATE.equals(key)) { + int outputSampleRate = AudioSystem.getPrimaryOutputSamplingRate(); + return outputSampleRate > 0 ? Integer.toString(outputSampleRate) : null; + } else if (PROPERTY_OUTPUT_FRAMES_PER_BUFFER.equals(key)) { + int outputFramesPerBuffer = AudioSystem.getPrimaryOutputFrameCount(); + return outputFramesPerBuffer > 0 ? Integer.toString(outputFramesPerBuffer) : null; + } else { + // null or unknown key + return null; + } } } diff --git a/media/java/android/media/AudioSystem.java b/media/java/android/media/AudioSystem.java index 129e84f..2cff4ff 100644 --- a/media/java/android/media/AudioSystem.java +++ b/media/java/android/media/AudioSystem.java @@ -381,4 +381,9 @@ public class AudioSystem public static native int setMasterMute(boolean mute); public static native boolean getMasterMute(); public static native int getDevicesForStream(int stream); + + // helpers for android.media.AudioManager.getProperty(), see description there for meaning + public static native int getPrimaryOutputSamplingRate(); + public static native int getPrimaryOutputFrameCount(); + } -- cgit v1.1