4#include <QtCore/qvariant.h>
5#include <QtCore/qdebug.h>
14#include <qmediadevices.h>
15#include <private/qplatformaudioinput_p.h>
16#include <private/qplatformaudiooutput_p.h>
17#include <qaudioinput.h>
18#include <qaudiooutput.h>
22AVFCameraService::AVFCameraService()
24 m_session =
new AVFCameraSession(
this);
35 return m_cameraControl;
40 AVFCamera *control =
static_cast<AVFCamera *>(camera);
41 if (m_cameraControl == control)
44 if (m_cameraControl) {
46 m_cameraControl->disconnect(m_encoder);
47 m_cameraControl->setCaptureSession(
nullptr);
50 m_cameraControl = control;
53 m_cameraControl->setCaptureSession(
this);
60 return m_imageCaptureControl;
66 if (m_imageCaptureControl == control)
69 if (m_imageCaptureControl)
70 m_imageCaptureControl->setCaptureSession(
nullptr);
72 m_imageCaptureControl = control;
73 if (m_imageCaptureControl)
74 m_imageCaptureControl->setCaptureSession(
this);
85 if (m_encoder == control)
89 m_encoder->setCaptureSession(
nullptr);
93 m_encoder->setCaptureSession(
this);
95 emit encoderChanged();
100 if (m_audioInput == input)
103 m_audioInput->q->disconnect(
this);
105 m_audioInput = input;
108 connect(m_audioInput->q, &QAudioInput::destroyed,
this, &AVFCameraService::audioInputDestroyed);
109 connect(m_audioInput->q, &QAudioInput::deviceChanged,
this, &AVFCameraService::audioInputChanged);
118 if (m_audioOutput == output)
121 m_audioOutput->q->disconnect(
this);
123 m_audioOutput = output;
169#include "moc_avfcameraservice_p.cpp"
void audioOutputDestroyed()
void setImageCapture(QPlatformImageCapture *imageCapture) override
void setAudioOutputMuted(bool muted)
QPlatformMediaRecorder * mediaRecorder() override
void audioOutputChanged()
void setVideoPreview(QVideoSink *sink) override
void setCamera(QPlatformCamera *camera) override
void setMediaRecorder(QPlatformMediaRecorder *recorder) override
void setAudioInputMuted(bool muted)
~AVFCameraService() override
void setAudioOutputVolume(float volume)
QPlatformImageCapture * imageCapture() override
QPlatformCamera * camera() override
void setAudioInputVolume(float volume)
void setAudioOutputMuted(bool muted)
void setAudioInputVolume(float volume)
void setVideoSink(QVideoSink *sink)
void setAudioOutputVolume(float volume)
void setAudioInputMuted(bool muted)