diff --git a/api/current.txt b/api/current.txt
index 092fe16..ed19834 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -11883,6 +11883,7 @@
     ctor public MediaExtractor();
     method public boolean advance();
     method public long getCachedDuration();
+    method public java.util.Map<java.util.UUID, byte[]> getPsshInfo();
     method public boolean getSampleCryptoInfo(android.media.MediaCodec.CryptoInfo);
     method public int getSampleFlags();
     method public long getSampleTime();
diff --git a/media/java/android/media/MediaExtractor.java b/media/java/android/media/MediaExtractor.java
index cf159f0..e558c07 100644
--- a/media/java/android/media/MediaExtractor.java
+++ b/media/java/android/media/MediaExtractor.java
@@ -199,9 +199,9 @@
     public native final int getTrackCount();
 
     /**
-     * Get the PSSH info if present. This returns a map of uuid-to-bytes, with the uuid specifying
+     * Get the PSSH info if present.
+     * @return a map of uuid-to-bytes, with the uuid specifying
      * the crypto scheme, and the bytes being the data specific to that scheme.
-     * {@hide}
      */
     public Map<UUID, byte[]> getPsshInfo() {
         Map<UUID, byte[]> psshMap = null;
