mirror of
https://github.com/samsonjs/media.git
synced 2026-04-27 15:07:40 +00:00
Skip tests if device needs disable 8k workaround
PiperOrigin-RevId: 549967326
This commit is contained in:
parent
b1cf5fb320
commit
c2615a679f
2 changed files with 6 additions and 3 deletions
|
|
@ -21,6 +21,7 @@ import static androidx.media3.common.MimeTypes.VIDEO_H264;
|
||||||
import static androidx.media3.common.MimeTypes.VIDEO_H265;
|
import static androidx.media3.common.MimeTypes.VIDEO_H265;
|
||||||
import static androidx.media3.common.util.Assertions.checkNotNull;
|
import static androidx.media3.common.util.Assertions.checkNotNull;
|
||||||
import static androidx.media3.common.util.Assertions.checkState;
|
import static androidx.media3.common.util.Assertions.checkState;
|
||||||
|
import static androidx.media3.transformer.DefaultDecoderFactory.deviceNeedsDisableDecoding8kWorkaround;
|
||||||
|
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.graphics.Bitmap;
|
import android.graphics.Bitmap;
|
||||||
|
|
@ -853,7 +854,8 @@ public final class AndroidTestUtil {
|
||||||
MediaFormatUtil.maybeSetInteger(
|
MediaFormatUtil.maybeSetInteger(
|
||||||
mediaFormat, MediaFormat.KEY_PROFILE, codecProfileAndLevel.first);
|
mediaFormat, MediaFormat.KEY_PROFILE, codecProfileAndLevel.first);
|
||||||
}
|
}
|
||||||
return EncoderUtil.findCodecForFormat(mediaFormat, /* isDecoder= */ true) != null;
|
return EncoderUtil.findCodecForFormat(mediaFormat, /* isDecoder= */ true) != null
|
||||||
|
&& !deviceNeedsDisableDecoding8kWorkaround(format);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static boolean canEncode(Format format) {
|
private static boolean canEncode(Format format) {
|
||||||
|
|
|
||||||
|
|
@ -114,7 +114,7 @@ public final class DefaultDecoderFactory implements Codec.DecoderFactory {
|
||||||
format, /* reason= */ "Decoding HDR is not supported on this device.");
|
format, /* reason= */ "Decoding HDR is not supported on this device.");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (deviceNeedsDisable8kWorkaround(format)) {
|
if (deviceNeedsDisableDecoding8kWorkaround(format)) {
|
||||||
throw createExportException(
|
throw createExportException(
|
||||||
format, /* reason= */ "Decoding 8k is not supported on this device.");
|
format, /* reason= */ "Decoding 8k is not supported on this device.");
|
||||||
}
|
}
|
||||||
|
|
@ -159,7 +159,8 @@ public final class DefaultDecoderFactory implements Codec.DecoderFactory {
|
||||||
context, format, mediaFormat, mediaCodecName, /* isDecoder= */ true, outputSurface);
|
context, format, mediaFormat, mediaCodecName, /* isDecoder= */ true, outputSurface);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static boolean deviceNeedsDisable8kWorkaround(Format format) {
|
@VisibleForTesting
|
||||||
|
public static boolean deviceNeedsDisableDecoding8kWorkaround(Format format) {
|
||||||
// Fixed on API 31+. See http://b/278234847#comment40 for more information.
|
// Fixed on API 31+. See http://b/278234847#comment40 for more information.
|
||||||
return SDK_INT < 31
|
return SDK_INT < 31
|
||||||
&& format.width >= 7680
|
&& format.width >= 7680
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue