From f2db51607130a028bef5c82e6a5c8ece6abc5c62 Mon Sep 17 00:00:00 2001 From: Matthew Date: Fri, 14 Feb 2025 08:26:06 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E6=8B=8D=E7=9A=84=E6=97=B6=E9=97=B4?= =?UTF-8?q?=E5=A4=84=E7=90=86=E4=BF=9D=E6=8A=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 补拍应该不会存在拍照计划时间为0的情况,这儿这样处理,是为了外部特殊处理,故意把拍照计划时间置为0 --- app/src/main/cpp/PhoneDevice.cpp | 54 +++++++++++++++++++++++++------- 1 file changed, 42 insertions(+), 12 deletions(-) diff --git a/app/src/main/cpp/PhoneDevice.cpp b/app/src/main/cpp/PhoneDevice.cpp index 5cd1c5d7..76cf8a5c 100644 --- a/app/src/main/cpp/PhoneDevice.cpp +++ b/app/src/main/cpp/PhoneDevice.cpp @@ -1618,9 +1618,14 @@ bool CPhoneDevice::TakePhotoWithNetCamera(IDevice::PHOTO_INFO& localPhotoInfo, c } if (localPhotoInfo.remedy != 0) { - if ((takingTime - localPhotoInfo.scheduleTime) > 30) + time_t scheduleTime = localPhotoInfo.scheduleTime; + if (scheduleTime == 0) { - takingTime = localPhotoInfo.scheduleTime + localPhotoInfo.channel * 2; + scheduleTime = localPhotoInfo.requestTime; + } + if ((takingTime - scheduleTime) > 30) + { + takingTime = scheduleTime + localPhotoInfo.channel * 2; } } @@ -1857,9 +1862,14 @@ bool CPhoneDevice::TakePhoto(const IDevice::PHOTO_INFO& photoInfo, const vector< time_t takingTime = ts; if (localPhotoInfo.remedy != 0) { - if ((takingTime - localPhotoInfo.scheduleTime) > 30) + time_t scheduleTime = localPhotoInfo.scheduleTime; + if (scheduleTime == 0) + { + scheduleTime = localPhotoInfo.requestTime; + } + if ((takingTime - scheduleTime) > 30) { - takingTime = localPhotoInfo.scheduleTime + localPhotoInfo.channel * 2; + takingTime = scheduleTime + localPhotoInfo.channel * 2; } } IMAGE_DEF photo = { 0 }; @@ -2164,9 +2174,14 @@ bool CPhoneDevice::onOneCapture(std::shared_ptr characteristics time_t takingTime = time(NULL); if (mPhotoInfo.remedy != 0) { - if ((takingTime - mPhotoInfo.scheduleTime) > 30) + time_t scheduleTime = mPhotoInfo.scheduleTime; + if (scheduleTime == 0) + { + scheduleTime = mPhotoInfo.requestTime; + } + if ((takingTime - scheduleTime) > 30) { - takingTime = mPhotoInfo.scheduleTime + mPhotoInfo.channel * 2; + takingTime = scheduleTime + mPhotoInfo.channel * 2; } } mPhotoInfo.photoTime = takingTime; @@ -2295,9 +2310,14 @@ bool CPhoneDevice::onBurstCapture(std::shared_ptr characteristi time_t takingTime = time(NULL); if (mPhotoInfo.remedy != 0) { - if ((takingTime - mPhotoInfo.scheduleTime) > 30) + time_t scheduleTime = mPhotoInfo.scheduleTime; + if (scheduleTime == 0) { - takingTime = mPhotoInfo.scheduleTime + mPhotoInfo.channel * 2; + scheduleTime = mPhotoInfo.requestTime; + } + if ((takingTime - scheduleTime) > 30) + { + takingTime = scheduleTime + mPhotoInfo.channel * 2; } } mPhotoInfo.photoTime = takingTime; @@ -2667,9 +2687,14 @@ bool CPhoneDevice::onBurstCapture(std::shared_ptr characteristi time_t takingTime = time(NULL); if (mPhotoInfo.remedy != 0) { - if ((takingTime - mPhotoInfo.scheduleTime) > 30) + time_t scheduleTime = mPhotoInfo.scheduleTime; + if (scheduleTime == 0) + { + scheduleTime = mPhotoInfo.requestTime; + } + if ((takingTime - scheduleTime) > 30) { - takingTime = mPhotoInfo.scheduleTime + mPhotoInfo.channel * 2; + takingTime = scheduleTime + mPhotoInfo.channel * 2; } } mPhotoInfo.photoTime = takingTime; @@ -3006,9 +3031,14 @@ bool CPhoneDevice::OnImageReady(cv::Mat& mat) time_t takingTime = time(NULL); if (mPhotoInfo.remedy != 0) { - if ((takingTime - mPhotoInfo.scheduleTime) > 30) + time_t scheduleTime = mPhotoInfo.scheduleTime; + if (scheduleTime == 0) + { + scheduleTime = mPhotoInfo.requestTime; + } + if ((takingTime - scheduleTime) > 30) { - takingTime = mPhotoInfo.scheduleTime + mPhotoInfo.channel * 2; + takingTime = scheduleTime + mPhotoInfo.channel * 2; } } mPhotoInfo.photoTime = takingTime;