MediaMetadataRetrieverTest: Update AV1 decoder file for grid tests
Updated AV1 decoder tests to test the following cases
- Image Size: 1920x1080, grid: 2x4, frame size: 960x270
- Image size: 1920x1080, grid: 4x4, frame size: 480x270
- Image size: 1024x1024, grid: 2x2, frame size: 512x512
Bug: 289764331
Test: atest CtsMediaMiscTestCases:MediaMetadataRetrieverTest
(cherry picked from https://android-review.googlesource.com/q/commit:7c32d01f388f9b2dc1fb82e8bd415bdca1ab5a2b)
Merged-In: Icdedddc52c4a3a39d2fdbe0fe61474712471bfd3
Change-Id: Icdedddc52c4a3a39d2fdbe0fe61474712471bfd3
diff --git a/tests/tests/media/misc/AndroidTest.xml b/tests/tests/media/misc/AndroidTest.xml
index 1ed72c0..ed3133f 100644
--- a/tests/tests/media/misc/AndroidTest.xml
+++ b/tests/tests/media/misc/AndroidTest.xml
@@ -41,7 +41,7 @@
</target_preparer>
<target_preparer class="com.android.compatibility.common.tradefed.targetprep.MediaPreparer">
<option name="push-all" value="true" />
- <option name="media-folder-name" value="CtsMediaMiscTestCases-2.1" />
+ <option name="media-folder-name" value="CtsMediaMiscTestCases-2.2" />
<option name="dynamic-config-module" value="CtsMediaMiscTestCases" />
</target_preparer>
<target_preparer class="com.android.tradefed.targetprep.suite.SuiteApkInstaller">
diff --git a/tests/tests/media/misc/DynamicConfig.xml b/tests/tests/media/misc/DynamicConfig.xml
index 0918a54..ed21ce3 100644
--- a/tests/tests/media/misc/DynamicConfig.xml
+++ b/tests/tests/media/misc/DynamicConfig.xml
@@ -15,6 +15,6 @@
<dynamicConfig>
<entry key="media_files_url">
- <value>https://dl.google.com/android/xts/cts/tests/tests/media/misc/CtsMediaMiscTestCases-2.1.zip</value>
+ <value>https://dl.google.com/android/xts/cts/tests/tests/media/misc/CtsMediaMiscTestCases-2.2.zip</value>
</entry>
</dynamicConfig>
diff --git a/tests/tests/media/misc/copy_media.sh b/tests/tests/media/misc/copy_media.sh
index ca7f3cb..c838197 100755
--- a/tests/tests/media/misc/copy_media.sh
+++ b/tests/tests/media/misc/copy_media.sh
@@ -17,4 +17,4 @@
[ -z "$MEDIA_ROOT_DIR" ] && MEDIA_ROOT_DIR=$(dirname $0)/..
source $MEDIA_ROOT_DIR/common/copy_media_utils.sh
get_adb_options "$@"
-copy_media "misc" "CtsMediaMiscTestCases-2.1"
+copy_media "misc" "CtsMediaMiscTestCases-2.2"
diff --git a/tests/tests/media/misc/src/android/media/misc/cts/MediaMetadataRetrieverTest.java b/tests/tests/media/misc/src/android/media/misc/cts/MediaMetadataRetrieverTest.java
index 01e3caf..85e4e73 100644
--- a/tests/tests/media/misc/src/android/media/misc/cts/MediaMetadataRetrieverTest.java
+++ b/tests/tests/media/misc/src/android/media/misc/cts/MediaMetadataRetrieverTest.java
@@ -26,6 +26,7 @@
import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
+import static org.junit.Assume.assumeTrue;
import android.content.Context;
import android.content.pm.PackageManager;
@@ -1193,15 +1194,46 @@
1 /*imageCount*/, 0 /*primary*/, false /*useGrid*/, true /*checkColor*/);
}
+ /**
+ * Test AVIF (1024x1024 with 2x2 grid) decoding
+ */
@Test
- public void testGetImageAtIndexAvifGrid() throws Exception {
+ public void testGetImageAtIndexAvif1024x1024Grid2x2() throws Exception {
+ testGetImageAtIndexAvifGrid("sample_grid_1024x1024_2x2.avif", 1024 /* imageWidth */,
+ 1024 /* imageHeight */, 2 /* gridCols */, 2 /* gridRows */);
+ }
+
+ /**
+ * Test AVIF (1920x1080 with 2x4 grid) decoding
+ */
+ @Test
+ public void testGetImageAtIndexAvif1920x1080Grid2x4() throws Exception {
+ testGetImageAtIndexAvifGrid("sample_grid_1920x1080_2x4.avif", 1920 /* imageWidth */,
+ 1080 /* imageHeight */, 2 /* gridCols */, 4 /* gridRows */);
+ }
+
+ /**
+ * Test AVIF (1920x1080 with 4x4 grid) decoding
+ */
+ @Test
+ public void testGetImageAtIndexAvif1920x1080Grid4x4() throws Exception {
+ testGetImageAtIndexAvifGrid("sample_grid_1920x1080_4x4.avif", 1920 /* imageWidth */,
+ 1080 /* imageHeight */, 4 /* gridCols */, 4 /* gridRows */);
+ }
+
+ private void testGetImageAtIndexAvifGrid(final String res, int imageWidth, int imageHeight,
+ int gridCols, int gridRows) throws Exception {
if (!MediaUtils.check(mIsAtLeastS, "test needs Android 12")) return;
- if (!MediaUtils.canDecodeVideo(MediaFormat.MIMETYPE_VIDEO_AV1, 512, 512, 30)) {
- MediaUtils.skipTest("No AV1 codec for 512p");
+ int gridWidth = imageWidth / gridCols;
+ int gridHeight = imageHeight / gridRows;
+ if (!MediaUtils.canDecodeVideo(MediaFormat.MIMETYPE_VIDEO_AV1, gridWidth, gridHeight, 30)) {
+ MediaUtils.skipTest("No AV1 codec for " + gridWidth + " x " + gridHeight);
+ //TODO (b/224402585) Remove the following once MediaUtils.skipTest() calls assumeTrue
+ assumeTrue("No AV1 codec for " + gridWidth + " x " + gridHeight, false);
return;
}
- testGetImage("sample_grid2x4.avif", 1920, 1080, "image/avif", 0 /*rotation*/,
- 1 /*imageCount*/, 0 /*primary*/, true /*useGrid*/, true /*checkColor*/);
+ testGetImage(res, imageWidth, imageHeight, "image/avif", 0 /*rotation*/, 1 /*imageCount*/,
+ 0 /*primary*/, true /*useGrid*/, true /*checkColor*/);
}
/**
diff --git a/tests/tests/media/misc/src/android/media/misc/cts/WorkDir.java b/tests/tests/media/misc/src/android/media/misc/cts/WorkDir.java
index 183341e..6cbab7c 100644
--- a/tests/tests/media/misc/src/android/media/misc/cts/WorkDir.java
+++ b/tests/tests/media/misc/src/android/media/misc/cts/WorkDir.java
@@ -20,6 +20,6 @@
class WorkDir extends WorkDirBase {
public static final String getMediaDirString() {
- return getMediaDirString("CtsMediaMiscTestCases-2.1");
+ return getMediaDirString("CtsMediaMiscTestCases-2.2");
}
}