39 QPlatformMediaCaptureSession() =
default;
40 ~QPlatformMediaCaptureSession() override;
42 void setCaptureSession(QMediaCaptureSession *session) { m_session = session; }
43 QMediaCaptureSession *captureSession()
const {
return m_session; }
45 virtual QPlatformCamera *camera() = 0;
46 virtual void setCamera(QPlatformCamera *) {}
48 virtual QPlatformSurfaceCapture *screenCapture() {
return nullptr; }
49 virtual void setScreenCapture(QPlatformSurfaceCapture *) {}
51 virtual QPlatformSurfaceCapture *windowCapture() {
return nullptr; }
52 virtual void setWindowCapture(QPlatformSurfaceCapture *) { }
54 virtual QPlatformVideoFrameInput *videoFrameInput() {
return nullptr; }
55 virtual void setVideoFrameInput(QPlatformVideoFrameInput *) { }
57 virtual QPlatformImageCapture *imageCapture() = 0;
58 virtual void setImageCapture(QPlatformImageCapture *) {}
60 virtual QPlatformMediaRecorder *mediaRecorder() = 0;
61 virtual void setMediaRecorder(QPlatformMediaRecorder *) {}
63 virtual void setAudioInput(QPlatformAudioInput *input) = 0;
65 virtual void setAudioBufferInput(QPlatformAudioBufferInput *) { }
67 virtual void setVideoPreview(QVideoSink * ) {}
69 virtual void setAudioOutput(QPlatformAudioOutput *) {}
72 std::vector<QPlatformVideoSource *> activeVideoSources();
76 void screenCaptureChanged();
77 void windowCaptureChanged();
78 void videoFrameInputChanged();
79 void imageCaptureChanged();
80 void encoderChanged();
83 QMediaCaptureSession *m_session =
nullptr;