diff options
-rw-r--r-- | src/plugins/multimedia/darwin/camera/qavfcamerabase.mm | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/src/plugins/multimedia/darwin/camera/qavfcamerabase.mm b/src/plugins/multimedia/darwin/camera/qavfcamerabase.mm index f9e353558..a11290a8d 100644 --- a/src/plugins/multimedia/darwin/camera/qavfcamerabase.mm +++ b/src/plugins/multimedia/darwin/camera/qavfcamerabase.mm @@ -456,7 +456,7 @@ void QAVFCameraBase::updateCameraConfiguration() } minimumZoomFactorChanged(captureDevice.minAvailableVideoZoomFactor); - maximumZoomFactorChanged(captureDevice.maxAvailableVideoZoomFactor); + maximumZoomFactorChanged(captureDevice.activeFormat.videoMaxZoomFactor); captureDevice.videoZoomFactor = zoomFactor(); @@ -570,7 +570,8 @@ void QAVFCameraBase::zoomTo(float factor, float rate) if (!captureDevice || !captureDevice.activeFormat) return; - factor = qBound(captureDevice.minAvailableVideoZoomFactor, factor, captureDevice.maxAvailableVideoZoomFactor); + factor = qBound(captureDevice.minAvailableVideoZoomFactor, factor, + captureDevice.activeFormat.videoMaxZoomFactor); const AVFConfigurationLock lock(captureDevice); if (!lock) { @@ -578,10 +579,10 @@ void QAVFCameraBase::zoomTo(float factor, float rate) return; } - if (rate < 0) + if (rate <= 0) captureDevice.videoZoomFactor = factor; - else - [captureDevice rampToVideoZoomFactor:factor withRate:rate]; + else + [captureDevice rampToVideoZoomFactor:factor withRate:rate]; #endif } |