From d37081a45abbab8d92a0d5d7308977cee452ba71 Mon Sep 17 00:00:00 2001 From: tengxc Date: Tue, 16 Jun 2020 10:05:31 +0800 Subject: [PATCH 1/2] fix Camera2Loader, replace or with || --- .../cyberagent/android/gpuimage/sample/utils/Camera2Loader.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sample/src/main/java/jp/co/cyberagent/android/gpuimage/sample/utils/Camera2Loader.kt b/sample/src/main/java/jp/co/cyberagent/android/gpuimage/sample/utils/Camera2Loader.kt index 6d60754b3..08589a13c 100644 --- a/sample/src/main/java/jp/co/cyberagent/android/gpuimage/sample/utils/Camera2Loader.kt +++ b/sample/src/main/java/jp/co/cyberagent/android/gpuimage/sample/utils/Camera2Loader.kt @@ -125,8 +125,8 @@ class Camera2Loader(private val activity: Activity) : CameraLoader() { ?.getOutputSizes(ImageFormat.YUV_420_888) val orientation = getCameraOrientation() - val maxPreviewWidth = if (orientation == 90 or 270) viewHeight else viewWidth - val maxPreviewHeight = if (orientation == 90 or 270) viewWidth else viewHeight + val maxPreviewWidth = if (orientation == 90 || orientation == 270) viewHeight else viewWidth + val maxPreviewHeight = if (orientation == 90 || orientation == 270) viewWidth else viewHeight return outputSizes?.filter { it.width < maxPreviewWidth / 2 && it.height < maxPreviewHeight / 2 From ff7a0e8c28201606bbd64984053d603fbc158b6f Mon Sep 17 00:00:00 2001 From: tengxc Date: Mon, 22 Jun 2020 17:42:49 +0800 Subject: [PATCH 2/2] fix adjustImageScaling to get correct vertex coordinates --- .../jp/co/cyberagent/android/gpuimage/GPUImageRenderer.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/library/src/main/java/jp/co/cyberagent/android/gpuimage/GPUImageRenderer.java b/library/src/main/java/jp/co/cyberagent/android/gpuimage/GPUImageRenderer.java index e8cd690b7..a986ea3fd 100644 --- a/library/src/main/java/jp/co/cyberagent/android/gpuimage/GPUImageRenderer.java +++ b/library/src/main/java/jp/co/cyberagent/android/gpuimage/GPUImageRenderer.java @@ -300,6 +300,11 @@ private void adjustImageScaling() { addDistance(textureCords[6], distHorizontal), addDistance(textureCords[7], distVertical), }; } else { + if (rotation == Rotation.ROTATION_270 || rotation == Rotation.ROTATION_90) { + ratioWidth = ratioWidth + ratioHeight; + ratioHeight = ratioWidth - ratioHeight; + ratioWidth = ratioWidth - ratioHeight; + } cube = new float[]{ CUBE[0] / ratioHeight, CUBE[1] / ratioWidth, CUBE[2] / ratioHeight, CUBE[3] / ratioWidth,