New API for querying audio properties

Bug: 6635041
Change-Id: I66e87c75af7c84cdb23cb25a958e79bba8e53baa
diff --git a/media/java/android/media/AudioManager.java b/media/java/android/media/AudioManager.java
index ea00ec8..c848f0f 100644
--- a/media/java/android/media/AudioManager.java
+++ b/media/java/android/media/AudioManager.java
@@ -2443,4 +2443,33 @@
             return null;
         }
     }
+
+    /**
+     * Used as a key for #getProperty to request the native or optimal output sample rate for
+     * this device, in decimal Hz.
+     * {@hide}
+     */
+    public static final String PROPERTY_OUTPUT_SAMPLE_RATE =
+            "android.media.property.OUTPUT_SAMPLE_RATE";
+
+    /**
+     * Used as a key for #getProperty to request the native or optimal output buffer size for
+     * this device, in decimal PCM frames.
+     * {@hide}
+     */
+    public static final String PROPERTY_OUTPUT_FRAMES_PER_BUFFER =
+            "android.media.property.OUTPUT_FRAMES_PER_BUFFER";
+
+    /**
+     * @param key One of the strings corresponding to a property key: either
+     *            #PROPERTY_OUTPUT_SAMPLE_RATE or #PROPERTY_OUTPUT_FRAMES_PER_BUFFER
+     * @return A string representing the associated value for that property key,
+     *         or null if there is no value for that key.
+     * {@hide}
+     */
+    public String getProperty(String key) {
+        // uses android.os.SystemProperties.get for selected keys, with suitable defaults
+        return null;
+    }
+
 }