From ce8ace7e5b8322310a506bcee0c2e0f5ecaef4f5 Mon Sep 17 00:00:00 2001 From: Chong Zhang Date: Wed, 8 Jan 2020 10:31:40 -0800 Subject: [PATCH] Add @IntRange to MediaMetadataRetriever#getScaledFrameAtTime bug: 147321077 test: builds Change-Id: I4aa3ce25e86debad0cfe38dd357746c048d92d16 --- api/current.txt | 4 ++-- media/java/android/media/MediaMetadataRetriever.java | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/api/current.txt b/api/current.txt index ac69f6fa6b602..e98dccfb78891 100644 --- a/api/current.txt +++ b/api/current.txt @@ -25779,8 +25779,8 @@ package android.media { method @Nullable public android.graphics.Bitmap getImageAtIndex(int); method @Nullable public android.graphics.Bitmap getPrimaryImage(@NonNull android.media.MediaMetadataRetriever.BitmapParams); method @Nullable public android.graphics.Bitmap getPrimaryImage(); - method @Nullable public android.graphics.Bitmap getScaledFrameAtTime(long, int, int, int); - method @Nullable public android.graphics.Bitmap getScaledFrameAtTime(long, int, int, int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); + method @Nullable public android.graphics.Bitmap getScaledFrameAtTime(long, int, @IntRange(from=1) int, @IntRange(from=1) int); + method @Nullable public android.graphics.Bitmap getScaledFrameAtTime(long, int, @IntRange(from=1) int, @IntRange(from=1) int, @NonNull android.media.MediaMetadataRetriever.BitmapParams); method public void release(); method public void setDataSource(String) throws java.lang.IllegalArgumentException; method public void setDataSource(String, java.util.Map) throws java.lang.IllegalArgumentException; diff --git a/media/java/android/media/MediaMetadataRetriever.java b/media/java/android/media/MediaMetadataRetriever.java index 7fca03cdfd577..4cd581b6628c1 100644 --- a/media/java/android/media/MediaMetadataRetriever.java +++ b/media/java/android/media/MediaMetadataRetriever.java @@ -17,6 +17,7 @@ package android.media; import android.annotation.IntDef; +import android.annotation.IntRange; import android.annotation.NonNull; import android.annotation.Nullable; import android.compat.annotation.UnsupportedAppUsage; @@ -354,8 +355,8 @@ public class MediaMetadataRetriever implements AutoCloseable { * is less than or equal to 0. * @see {@link #getScaledFrameAtTime(long, int, int, int, BitmapParams)} */ - public @Nullable Bitmap getScaledFrameAtTime( - long timeUs, @Option int option, int dstWidth, int dstHeight) { + public @Nullable Bitmap getScaledFrameAtTime(long timeUs, @Option int option, + @IntRange(from=1) int dstWidth, @IntRange(from=1) int dstHeight) { validate(option, dstWidth, dstHeight); return _getFrameAtTime(timeUs, option, dstWidth, dstHeight, null); } @@ -400,7 +401,8 @@ public class MediaMetadataRetriever implements AutoCloseable { * @see {@link #getScaledFrameAtTime(long, int, int, int)} */ public @Nullable Bitmap getScaledFrameAtTime(long timeUs, @Option int option, - int dstWidth, int dstHeight, @NonNull BitmapParams params) { + @IntRange(from=1) int dstWidth, @IntRange(from=1) int dstHeight, + @NonNull BitmapParams params) { validate(option, dstWidth, dstHeight); return _getFrameAtTime(timeUs, option, dstWidth, dstHeight, params); }