diff --git a/libraries/transformer/src/androidTest/java/androidx/media3/transformer/mh/HdrCapabilitiesUtil.java b/libraries/transformer/src/androidTest/java/androidx/media3/transformer/mh/HdrCapabilitiesUtil.java index e5eb9799e9..a4116ed412 100644 --- a/libraries/transformer/src/androidTest/java/androidx/media3/transformer/mh/HdrCapabilitiesUtil.java +++ b/libraries/transformer/src/androidTest/java/androidx/media3/transformer/mh/HdrCapabilitiesUtil.java @@ -74,5 +74,21 @@ public final class HdrCapabilitiesUtil { } } + /** + * Assumes that the device does not support HDR editing for the given {@code colorInfo}. + * + * @throws AssumptionViolatedException if the device does support HDR editing. + */ + public static void assumeDeviceDoesNotSupportHdrEditing(String testId, Format format) + throws JSONException, IOException { + checkState(ColorInfo.isTransferHdr(format.colorInfo)); + if (!EncoderUtil.getSupportedEncodersForHdrEditing(format.sampleMimeType, format.colorInfo) + .isEmpty()) { + String skipReason = "HDR editing support for " + format.colorInfo; + recordTestSkipped(getApplicationContext(), testId, skipReason); + throw new AssumptionViolatedException(skipReason); + } + } + private HdrCapabilitiesUtil() {} } diff --git a/libraries/transformer/src/androidTest/java/androidx/media3/transformer/mh/HdrEditingTest.java b/libraries/transformer/src/androidTest/java/androidx/media3/transformer/mh/HdrEditingTest.java index e44c072507..4aeebe5574 100644 --- a/libraries/transformer/src/androidTest/java/androidx/media3/transformer/mh/HdrEditingTest.java +++ b/libraries/transformer/src/androidTest/java/androidx/media3/transformer/mh/HdrEditingTest.java @@ -15,7 +15,6 @@ */ package androidx.media3.transformer.mh; -import static androidx.media3.common.util.Assertions.checkState; import static androidx.media3.test.utils.TestUtil.retrieveTrackFormat; import static androidx.media3.transformer.AndroidTestUtil.FORCE_TRANSCODE_VIDEO_EFFECTS; import static androidx.media3.transformer.AndroidTestUtil.MP4_ASSET_1080P_5_SECOND_HLG10; @@ -27,21 +26,19 @@ import static androidx.media3.transformer.AndroidTestUtil.MP4_ASSET_DOLBY_VISION import static androidx.media3.transformer.AndroidTestUtil.recordTestSkipped; import static androidx.media3.transformer.Composition.HDR_MODE_KEEP_HDR; import static androidx.media3.transformer.Composition.HDR_MODE_TONE_MAP_HDR_TO_SDR_USING_OPEN_GL; +import static androidx.media3.transformer.mh.HdrCapabilitiesUtil.assumeDeviceDoesNotSupportHdrEditing; import static androidx.media3.transformer.mh.HdrCapabilitiesUtil.assumeDeviceSupportsHdrEditing; -import static androidx.test.core.app.ApplicationProvider.getApplicationContext; import static com.google.common.truth.Truth.assertThat; import android.content.Context; import android.net.Uri; import androidx.media3.common.C; -import androidx.media3.common.ColorInfo; import androidx.media3.common.Format; import androidx.media3.common.MediaItem; import androidx.media3.common.util.Util; import androidx.media3.transformer.AndroidTestUtil; import androidx.media3.transformer.Composition; import androidx.media3.transformer.EditedMediaItem; -import androidx.media3.transformer.EncoderUtil; import androidx.media3.transformer.ExportException; import androidx.media3.transformer.ExportTestResult; import androidx.media3.transformer.TransformationRequest; @@ -49,12 +46,9 @@ import androidx.media3.transformer.Transformer; import androidx.media3.transformer.TransformerAndroidTestRunner; import androidx.test.core.app.ApplicationProvider; import androidx.test.ext.junit.runners.AndroidJUnit4; -import java.io.IOException; import java.util.Objects; import java.util.concurrent.atomic.AtomicBoolean; import org.checkerframework.checker.nullness.qual.Nullable; -import org.json.JSONException; -import org.junit.AssumptionViolatedException; import org.junit.Before; import org.junit.Rule; import org.junit.Test; @@ -348,20 +342,4 @@ public final class HdrEditingTest { throw exception; } } - - /** - * Assumes that the device does not support HDR editing for the given {@code colorInfo}. - * - * @throws AssumptionViolatedException if the device does support HDR editing. - */ - private static void assumeDeviceDoesNotSupportHdrEditing(String testId, Format format) - throws JSONException, IOException { - checkState(ColorInfo.isTransferHdr(format.colorInfo)); - if (!EncoderUtil.getSupportedEncodersForHdrEditing(format.sampleMimeType, format.colorInfo) - .isEmpty()) { - String skipReason = "HDR editing support for " + format.colorInfo; - recordTestSkipped(getApplicationContext(), testId, skipReason); - throw new AssumptionViolatedException(skipReason); - } - } } diff --git a/libraries/transformer/src/androidTest/java/androidx/media3/transformer/mh/TransformerSequenceEffectTestWithHdr.java b/libraries/transformer/src/androidTest/java/androidx/media3/transformer/mh/TransformerSequenceEffectTestWithHdr.java index 2f6b4d8292..4274d89b9f 100644 --- a/libraries/transformer/src/androidTest/java/androidx/media3/transformer/mh/TransformerSequenceEffectTestWithHdr.java +++ b/libraries/transformer/src/androidTest/java/androidx/media3/transformer/mh/TransformerSequenceEffectTestWithHdr.java @@ -27,6 +27,7 @@ import static androidx.media3.transformer.SequenceEffectTestUtil.SINGLE_30_FPS_V import static androidx.media3.transformer.SequenceEffectTestUtil.assertBitmapsMatchExpectedAndSave; import static androidx.media3.transformer.SequenceEffectTestUtil.clippedVideo; import static androidx.media3.transformer.SequenceEffectTestUtil.createComposition; +import static androidx.media3.transformer.mh.HdrCapabilitiesUtil.assumeDeviceDoesNotSupportHdrEditing; import static androidx.media3.transformer.mh.HdrCapabilitiesUtil.assumeDeviceSupportsHdrEditing; import static androidx.media3.transformer.mh.HdrCapabilitiesUtil.assumeDeviceSupportsOpenGlToneMapping; import static com.google.common.truth.Truth.assertThat; @@ -108,7 +109,7 @@ public final class TransformerSequenceEffectTestWithHdr { * after already being configured for HDR output. */ @Test - public void export_withHdrThenSdr_throws_whenHdrEditingSupported() throws Exception { + public void export_withHdrThenSdr_whenHdrEditingSupported_throws() throws Exception { assumeDeviceSupportsHdrEditing(testId, MP4_ASSET_720P_4_SECOND_HDR10_FORMAT); assumeFalse( skipAndLogIfFormatsUnsupported( @@ -148,7 +149,7 @@ public final class TransformerSequenceEffectTestWithHdr { */ @Test public void export_withHdrThenSdr_whenHdrEditingUnsupported() throws Exception { - assumeDeviceSupportsHdrEditing(testId, MP4_ASSET_720P_4_SECOND_HDR10_FORMAT); + assumeDeviceDoesNotSupportHdrEditing(testId, MP4_ASSET_720P_4_SECOND_HDR10_FORMAT); assumeDeviceSupportsOpenGlToneMapping( testId, /* inputFormat= */ MP4_ASSET_720P_4_SECOND_HDR10_FORMAT); assumeFalse(