From 959bb219dab3685bb721c3b13a99666cf3a4b223 Mon Sep 17 00:00:00 2001 From: Lajos Molnar Date: Thu, 21 Oct 2021 11:04:06 -0700 Subject: [PATCH] camera: allow GPU usage for isSurfaceForHwVideoEncoder Modern video encoders rely on GPU for some of their preprocessing, so video encoder buffers will be allocated with GPU usage set. Bug: 193772557 Bug: 204504047 Change-Id: I84b60fdd3f9d511b39185c1a31799f2b1514e166 --- core/java/android/hardware/camera2/utils/SurfaceUtils.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/java/android/hardware/camera2/utils/SurfaceUtils.java b/core/java/android/hardware/camera2/utils/SurfaceUtils.java index fd1a331617400..6c83057fdf297 100644 --- a/core/java/android/hardware/camera2/utils/SurfaceUtils.java +++ b/core/java/android/hardware/camera2/utils/SurfaceUtils.java @@ -78,7 +78,7 @@ public class SurfaceUtils { public static boolean isSurfaceForHwVideoEncoder(Surface surface) { checkNotNull(surface); long usageFlags = nativeDetectSurfaceUsageFlags(surface); - long disallowedFlags = HardwareBuffer.USAGE_GPU_SAMPLED_IMAGE | USAGE_HW_COMPOSER + long disallowedFlags = USAGE_HW_COMPOSER | USAGE_RENDERSCRIPT | HardwareBuffer.USAGE_CPU_READ_OFTEN; long allowedFlags = HardwareBuffer.USAGE_VIDEO_ENCODE; boolean videoEncoderConsumer = ((usageFlags & disallowedFlags) == 0