5#ifndef QFFMPEGIMAGECAPTURE_H
6#define QFFMPEGIMAGECAPTURE_H
19#include <QtMultimedia/private/qplatformimagecapture_p.h>
20#include <QtFFmpegMediaPluginImpl/private/qffmpegmediacapturesession_p.h>
22#include <QtCore/qpointer.h>
35 int capture(
const QString &fileName)
override;
46 virtual int doCapture(
const QString &fileName);
56 QFFmpegMediaCaptureSession *m_session =
nullptr;
57 QPointer<QPlatformVideoSource> m_videoSource;
59 QImageEncoderSettings m_settings;
64 QMediaMetaData metaData;
67 QQueue<PendingImage> m_pendingImages;
68 bool m_isReadyForCapture =
false;
void onVideoSourceChanged()
void setImageSettings(const QImageEncoderSettings &settings) override
virtual int doCapture(const QString &fileName)
QPlatformVideoSource * videoSource() const
void cancelPendingImage(QImageCapture::Error error, const QString &errorMsg)
QImageEncoderSettings imageSettings() const override
void setCaptureSession(QPlatformMediaCaptureSession *session)
void updateReadyForCapture()
int capture(const QString &fileName) override
int captureToBuffer() override
~QFFmpegImageCapture() override
virtual void setupVideoSourceConnections()
bool isReadyForCapture() const override
static constexpr int MaxPendingImagesCount
static const char * extensionForFormat(QImageCapture::FileFormat format)
#define qCDebug(category,...)
#define Q_STATIC_LOGGING_CATEGORY(name,...)