Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
qffmpegimagecapture_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
5
#
ifndef
QFFMPEGIMAGECAPTURE_H
6
#
define
QFFMPEGIMAGECAPTURE_H
7
8
//
9
// W A R N I N G
10
// -------------
11
//
12
// This file is not part of the Qt API. It exists purely as an
13
// implementation detail. This header file may change from version to
14
// version without notice, or even be removed.
15
//
16
// We mean it.
17
//
18
19
#
include
<
QtMultimedia
/
private
/
qplatformimagecapture_p
.
h
>
20
#
include
<
QtFFmpegMediaPluginImpl
/
private
/
qffmpegmediacapturesession_p
.
h
>
21
22
#
include
<
QtCore
/
qpointer
.
h
>
23
#
include
<
qqueue
.
h
>
24
25
QT_BEGIN_NAMESPACE
26
27
class
QFFmpegImageCapture
:
public
QPlatformImageCapture
28
{
29
Q_OBJECT
30
public
:
31
QFFmpegImageCapture
(
QImageCapture
*
parent
);
32
~
QFFmpegImageCapture
()
override
;
33
34
bool
isReadyForCapture
()
const
override
;
35
int
capture
(
const
QString &fileName)
override
;
36
int
captureToBuffer
()
override
;
37
38
QImageEncoderSettings
imageSettings
()
const
override
;
39
void
setImageSettings
(
const
QImageEncoderSettings &settings)
override
;
40
41
void
setCaptureSession
(QPlatformMediaCaptureSession *session);
42
43
void
cancelPendingImage
(QImageCapture::Error error,
const
QString &errorMsg);
44
45
protected
:
46
virtual
int
doCapture
(
const
QString &fileName);
47
virtual
void
setupVideoSourceConnections
();
48
virtual
void
applySettingsToVideoSource
() { }
49
QPlatformVideoSource
*
videoSource
()
const
;
50
QFFmpegMediaCaptureSession
*
captureSession
()
const
{
return
m_session; }
51
void
updateReadyForCapture
();
52
53
protected
Q_SLOTS
:
54
void
newVideoFrame
(
const
QVideoFrame
&
frame
);
55
void
onVideoSourceChanged
();
56
57
private
:
58
QFFmpegMediaCaptureSession *m_session =
nullptr
;
59
QPointer<QPlatformVideoSource> m_videoSource;
60
int
m_lastId = 0;
61
QImageEncoderSettings m_settings;
62
63
struct
PendingImage {
64
int
id;
65
QString filename;
66
QMediaMetaData metaData;
67
};
68
69
QQueue<PendingImage> m_pendingImages;
70
bool
m_isReadyForCapture =
false
;
71
};
72
73
QT_END_NAMESPACE
74
75
#
endif
// QFFMPEGIMAGECAPTURE_H
QFFmpegImageCapture
Definition
qffmpegimagecapture_p.h:28
QFFmpegImageCapture::onVideoSourceChanged
void onVideoSourceChanged()
Definition
qffmpegimagecapture.cpp:271
QFFmpegImageCapture::setImageSettings
void setImageSettings(const QImageEncoderSettings &settings) override
Definition
qffmpegimagecapture.cpp:292
QFFmpegImageCapture::doCapture
virtual int doCapture(const QString &fileName)
Definition
qffmpegimagecapture.cpp:72
QFFmpegImageCapture::videoSource
QPlatformVideoSource * videoSource() const
Definition
qffmpegimagecapture.cpp:266
QFFmpegImageCapture::cancelPendingImage
void cancelPendingImage(QImageCapture::Error error, const QString &errorMsg)
Definition
qffmpegimagecapture.cpp:153
QFFmpegImageCapture::imageSettings
QImageEncoderSettings imageSettings() const override
Definition
qffmpegimagecapture.cpp:287
QFFmpegImageCapture::applySettingsToVideoSource
virtual void applySettingsToVideoSource()
Definition
qffmpegimagecapture_p.h:48
QFFmpegImageCapture::setCaptureSession
void setCaptureSession(QPlatformMediaCaptureSession *session)
Definition
qffmpegimagecapture.cpp:126
QFFmpegImageCapture::updateReadyForCapture
void updateReadyForCapture()
Definition
qffmpegimagecapture.cpp:169
QFFmpegImageCapture::capture
int capture(const QString &fileName) override
Definition
qffmpegimagecapture.cpp:61
QFFmpegImageCapture::captureToBuffer
int captureToBuffer() override
Definition
qffmpegimagecapture.cpp:67
QFFmpegImageCapture::~QFFmpegImageCapture
~QFFmpegImageCapture() override
QFFmpegImageCapture::setupVideoSourceConnections
virtual void setupVideoSourceConnections()
Definition
qffmpegimagecapture.cpp:260
QFFmpegImageCapture::captureSession
QFFmpegMediaCaptureSession * captureSession() const
Definition
qffmpegimagecapture_p.h:50
QFFmpegImageCapture::isReadyForCapture
bool isReadyForCapture() const override
Definition
qffmpegimagecapture.cpp:35
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qsequentialanimationgroup.cpp:47
MaxPendingImagesCount
static constexpr int MaxPendingImagesCount
Definition
qffmpegimagecapture.cpp:23
extensionForFormat
static const char * extensionForFormat(QImageCapture::FileFormat format)
Definition
qffmpegimagecapture.cpp:40
qCWarning
#define qCWarning(category,...)
Definition
qloggingcategory.h:164
qCDebug
#define qCDebug(category,...)
Definition
qloggingcategory.h:162
Q_STATIC_LOGGING_CATEGORY
#define Q_STATIC_LOGGING_CATEGORY(name,...)
Definition
qloggingcategory.h:154
qtmultimedia
src
plugins
multimedia
ffmpeg
qffmpegimagecapture_p.h
Generated on
for Qt by
1.18.0