From c08323d4295c863ffce7fb526fd4d78cdf546933 Mon Sep 17 00:00:00 2001 From: BlueMatthew Date: Sat, 27 Jan 2024 17:37:42 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E7=B1=BB=E5=9E=8B=E9=94=99?= =?UTF-8?q?=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/cpp/camera2/ndkcamera.cpp | 14 +++++++++----- app/src/main/cpp/camera2/ndkcamera.h | 4 ++-- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/app/src/main/cpp/camera2/ndkcamera.cpp b/app/src/main/cpp/camera2/ndkcamera.cpp index a4d6b7ce..cf66811d 100644 --- a/app/src/main/cpp/camera2/ndkcamera.cpp +++ b/app/src/main/cpp/camera2/ndkcamera.cpp @@ -751,32 +751,35 @@ void NdkCamera::on_image(const unsigned char* nv21, int nv21_width, int nv21_hei } else { - co = (camera_orientation - (m_params.orientation - 1) * 90 + 360) % 360; + co = (camera_orientation + (m_params.orientation - 1) * 90 + 360) % 360; } + + XYLOG(XYLOG_SEVERITY_DEBUG, "Orientation=%d Facing=%d", co, camera_facing); + // int co = 0; if (co == 0) { w = nv21_width; h = nv21_height; - rotate_type = camera_facing == 0 ? 2 : 1; + rotate_type = camera_facing == ACAMERA_LENS_FACING_FRONT ? 2 : 1; } else if (co == 90) { w = nv21_height; h = nv21_width; - rotate_type = camera_facing == 0 ? 5 : 6; + rotate_type = camera_facing == ACAMERA_LENS_FACING_FRONT ? 5 : 6; } else if (co == 180) { w = nv21_width; h = nv21_height; - rotate_type = camera_facing == 0 ? 4 : 3; + rotate_type = camera_facing == ACAMERA_LENS_FACING_FRONT ? 4 : 3; } else if (co == 270) { w = nv21_height; h = nv21_width; - rotate_type = camera_facing == 0 ? 7 : 8; + rotate_type = camera_facing == ACAMERA_LENS_FACING_FRONT ? 7 : 8; } nv21_rotated.create(h + h / 2, w, CV_8UC1); @@ -787,6 +790,7 @@ void NdkCamera::on_image(const unsigned char* nv21, int nv21_width, int nv21_hei { w = nv21_width; h = nv21_height; + XYLOG(XYLOG_SEVERITY_DEBUG, "NO Orientation Facing=%d", camera_facing); } // nv21_rotated to rgb diff --git a/app/src/main/cpp/camera2/ndkcamera.h b/app/src/main/cpp/camera2/ndkcamera.h index 840234d7..adc5b26f 100644 --- a/app/src/main/cpp/camera2/ndkcamera.h +++ b/app/src/main/cpp/camera2/ndkcamera.h @@ -73,8 +73,8 @@ public: unsigned int nightMode : 1; unsigned int autoFocus : 1; unsigned int autoExposure : 1; - unsigned int orientation:2; - unsigned int reserved : 26; + unsigned int orientation:3; + unsigned int reserved : 25; unsigned int exposureTime; // ms unsigned int sensibility; };