Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
avfcameraservice_p.h
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef AVFCAMERASERVICE_H
5#define AVFCAMERASERVICE_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists purely as an
12// implementation detail. This header file may change from version to
13// version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include <QtCore/qobject.h>
19#include <QtCore/qset.h>
20#include <private/qplatformmediacapture_p.h>
21
23
25class QPlatformCamera;
27class AVFCamera;
28class AVFImageCapture;
30class AVFMediaEncoder;
31
33{
35public:
38
39 QPlatformCamera *camera() override;
40 void setCamera(QPlatformCamera *camera) override;
41
44
47
48 void setAudioInput(QPlatformAudioInput *) override;
49 void setAudioOutput(QPlatformAudioOutput *) override;
50
51 void setVideoPreview(QVideoSink *sink) override;
52
53 AVFCameraSession *session() const { return m_session; }
54 AVFCamera *avfCameraControl() const { return m_cameraControl; }
55 AVFMediaEncoder *recorderControl() const { return m_encoder; }
56 AVFImageCapture *avfImageCaptureControl() const { return m_imageCaptureControl; }
57
58 QPlatformAudioInput *audioInput() { return m_audioInput; }
59 QPlatformAudioOutput *audioOutput() { return m_audioOutput; }
60
61public Q_SLOTS:
63 void audioInputChanged();
65 void audioOutputChanged();
66
67 void setAudioInputMuted(bool muted);
68 void setAudioInputVolume(float volume);
69 void setAudioOutputMuted(bool muted);
70 void setAudioOutputVolume(float volume);
71
72private:
73 QPlatformAudioInput *m_audioInput = nullptr;
74 QPlatformAudioOutput *m_audioOutput = nullptr;
75
76 AVFCameraSession *m_session = nullptr;
77 AVFCamera *m_cameraControl = nullptr;
78 AVFMediaEncoder *m_encoder = nullptr;
79 AVFImageCapture *m_imageCaptureControl = nullptr;
80};
81
83
84#endif
AVFMediaEncoder * recorderControl() const
QPlatformAudioOutput * audioOutput()
void setAudioInput(QPlatformAudioInput *) override
AVFCamera * avfCameraControl() const
AVFCameraSession * session() const
void setImageCapture(QPlatformImageCapture *imageCapture) override
void setAudioOutputMuted(bool muted)
QPlatformMediaRecorder * mediaRecorder() override
void setAudioOutput(QPlatformAudioOutput *) override
void setVideoPreview(QVideoSink *sink) override
void setCamera(QPlatformCamera *camera) override
AVFImageCapture * avfImageCaptureControl() const
void setMediaRecorder(QPlatformMediaRecorder *recorder) override
void setAudioInputMuted(bool muted)
void setAudioOutputVolume(float volume)
QPlatformImageCapture * imageCapture() override
QPlatformCamera * camera() override
QPlatformAudioInput * audioInput()
void setAudioInputVolume(float volume)
The QVideoSink class represents a generic sink for video data.
Definition qvideosink.h:22
QMediaRecorder * recorder
Definition camera.cpp:20
Combined button and popup list for selecting options.
#define Q_FORWARD_DECLARE_OBJC_CLASS(classname)
GLsizei GLenum GLboolean sink
#define Q_OBJECT
#define Q_SLOTS