29 Q_PROPERTY(QAudioInput *audioInput READ audioInput WRITE setAudioInput NOTIFY audioInputChanged)
30 Q_PROPERTY(QAudioBufferInput *audioBufferInput READ audioBufferInput WRITE setAudioBufferInput
31 NOTIFY audioBufferInputChanged REVISION(6, 8))
32 Q_PROPERTY(QAudioOutput *audioOutput READ audioOutput WRITE setAudioOutput NOTIFY audioOutputChanged)
33 Q_PROPERTY(QCamera *camera READ camera WRITE setCamera NOTIFY cameraChanged)
34 Q_PROPERTY(QObject *nativeVideoSource READ nativeVideoSource WRITE setNativeVideoSource NOTIFY
35 nativeVideoSourceChanged REVISION(6, 12))
37 QScreenCapture *screenCapture READ screenCapture WRITE setScreenCapture NOTIFY screenCaptureChanged)
38 Q_PROPERTY(QWindowCapture *windowCapture READ windowCapture WRITE setWindowCapture NOTIFY
40 Q_PROPERTY(QVideoFrameInput *videoFrameInput READ videoFrameInput WRITE setVideoFrameInput
41 NOTIFY videoFrameInputChanged REVISION(6, 8))
42 Q_PROPERTY(QImageCapture *imageCapture READ imageCapture WRITE setImageCapture NOTIFY imageCaptureChanged)
43 Q_PROPERTY(QMediaRecorder *recorder READ recorder WRITE setRecorder NOTIFY recorderChanged)
44 Q_PROPERTY(QObject *videoOutput READ videoOutput WRITE setVideoOutput NOTIFY videoOutputChanged)
46 explicit QMediaCaptureSession(QObject *parent =
nullptr);
47 ~QMediaCaptureSession() override;
49 QAudioInput *audioInput()
const;
50 void setAudioInput(QAudioInput *input);
52 QAudioBufferInput *audioBufferInput()
const;
53 void setAudioBufferInput(QAudioBufferInput *input);
55 QCamera *camera()
const;
56 void setCamera(QCamera *camera);
58 QObject *nativeVideoSource()
const;
59 void setNativeVideoSource(QObject *videoSource);
61 QImageCapture *imageCapture();
62 void setImageCapture(QImageCapture *imageCapture);
64 QScreenCapture *screenCapture();
65 void setScreenCapture(QScreenCapture *screenCapture);
67 QWindowCapture *windowCapture();
68 void setWindowCapture(QWindowCapture *windowCapture);
70 QVideoFrameInput *videoFrameInput()
const;
71 void setVideoFrameInput(QVideoFrameInput *input);
73 QMediaRecorder *recorder();
74 void setRecorder(QMediaRecorder *recorder);
76 void setVideoOutput(QObject *output);
77 QObject *videoOutput()
const;
79 void setVideoSink(QVideoSink *sink);
80 QVideoSink *videoSink()
const;
82 void setAudioOutput(QAudioOutput *output);
83 QAudioOutput *audioOutput()
const;
85 QPlatformMediaCaptureSession *platformSession()
const;
88 void audioInputChanged();
89 Q_REVISION(6, 8)
void audioBufferInputChanged();
91 Q_REVISION(6, 12)
void nativeVideoSourceChanged();
92 void screenCaptureChanged();
93 void windowCaptureChanged();
94 Q_REVISION(6, 8)
void videoFrameInputChanged();
95 void imageCaptureChanged();
96 void recorderChanged();
97 void videoOutputChanged();
98 void audioOutputChanged();
101 friend class QPlatformMediaCaptureSession;
106 template <
typename Object>
107 void setObject(Object *);
110 QT6_ONLY(Q_DECL_UNUSED_MEMBER
void *unused =
nullptr;)
112 Q_DISABLE_COPY(QMediaCaptureSession)
113 Q_DECLARE_PRIVATE(QMediaCaptureSession)