summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/plugins/avfoundation/camera/avfimagecapturecontrol.mm3
-rw-r--r--src/plugins/avfoundation/camera/avfmediarecordercontrol.mm3
2 files changed, 5 insertions, 1 deletions
diff --git a/src/plugins/avfoundation/camera/avfimagecapturecontrol.mm b/src/plugins/avfoundation/camera/avfimagecapturecontrol.mm
index bad1b362b..dbaf3ed41 100644
--- a/src/plugins/avfoundation/camera/avfimagecapturecontrol.mm
+++ b/src/plugins/avfoundation/camera/avfimagecapturecontrol.mm
@@ -226,7 +226,8 @@ void AVFImageCaptureControl::cancelCapture()
void AVFImageCaptureControl::updateCaptureConnection()
{
- if (m_cameraControl->captureMode().testFlag(QCamera::CaptureStillImage)) {
+ if (m_session->videoCaptureDevice()
+ && m_cameraControl->captureMode().testFlag(QCamera::CaptureStillImage)) {
qDebugCamera() << Q_FUNC_INFO;
AVCaptureSession *captureSession = m_session->captureSession();
diff --git a/src/plugins/avfoundation/camera/avfmediarecordercontrol.mm b/src/plugins/avfoundation/camera/avfmediarecordercontrol.mm
index 02261027d..546eabf89 100644
--- a/src/plugins/avfoundation/camera/avfmediarecordercontrol.mm
+++ b/src/plugins/avfoundation/camera/avfmediarecordercontrol.mm
@@ -364,6 +364,9 @@ void AVFMediaRecorderControl::handleRecordingFailed(const QString &message)
void AVFMediaRecorderControl::setupSessionForCapture()
{
+ if (!m_session->videoCaptureDevice())
+ return;
+
//adding movie output causes high CPU usage even when while recording is not active,
//connect it only while video capture mode is enabled.
// Similarly, connect the Audio input only in that mode, since it's only necessary