4#ifndef QSCKWINDOWCAPTURE_H
5#define QSCKWINDOWCAPTURE_H
18#include <QtMultimedia/private/qplatformsurfacecapture_p.h>
20#include <QtFFmpegMediaPluginImpl/private/qmacscreencapturekit_p.h>
51 int64_t m_streamIdTracker = 0;
54 int64_t streamId = -1;
55 AVFScopedPointer<SCWindow> scWindow;
56 std::unique_ptr<QMacScreenCaptureKit> macScreenCaptureKit;
59 std::unique_ptr<ActiveData> m_activeData;
61 std::optional<QVideoFrameFormat> m_videoFrameFormat;
63 [[nodiscard]] std::optional<int64_t> activeStreamId()
const noexcept {
65 return m_activeData->streamId;
void onNewFrameFormatReceived(int64_t streamId, const QVideoFrameFormat &)
std::optional< int > ffmpegHWPixelFormat() const override
QVideoFrameFormat frameFormat() const override
void onStreamStoppedWithErrorEvent(int64_t streamId, const QString &)
bool setActiveInternal(bool active) override
~QSckWindowCapture() override=default
QT_MANGLE_NAMESPACE(QMacScreenCaptureStreamDelegate) QMacScreenCaptureStreamDelegate
std::unique_ptr< QPlatformSurfaceCapture > makeQSckWindowCapture()