![]() |
Qt 6.x
The Qt SDK
|
\inmodule QtMultimedia More...
#include <qimagecapture.h>
Public Types | |
enum | Error { NoError , NotReadyError , ResourceError , OutOfSpaceError , NotSupportedFeatureError , FormatError } |
\value NoError No Errors. More... | |
enum | Quality { VeryLowQuality , LowQuality , NormalQuality , HighQuality , VeryHighQuality } |
Enumerates quality encoding levels. More... | |
enum | FileFormat { UnspecifiedFormat , JPEG , PNG , WebP , Tiff , LastFileFormat = Tiff } |
Choose one of the following image formats: More... | |
Public Slots | |
int | captureToFile (const QString &location=QString()) |
Capture the image and save it to file. | |
int | capture () |
Capture the image and make it available as a QImage. | |
![]() | |
void | deleteLater () |
\threadsafe | |
Signals | |
void | errorChanged () |
void | errorOccurred (int id, QImageCapture::Error error, const QString &errorString) |
Signals that the capture request id has failed with an error and errorString description. | |
void | readyForCaptureChanged (bool ready) |
Signals that a camera's ready for capture state has changed. | |
void | metaDataChanged () |
void | fileFormatChanged () |
void | qualityChanged () |
void | resolutionChanged () |
Signals when the image resolution changes. | |
void | imageExposed (int id) |
Signal emitted when the frame with request id was exposed. | |
void | imageCaptured (int id, const QImage &preview) |
Signal emitted when the frame with request id was captured, but not processed and saved yet. | |
void | imageMetadataAvailable (int id, const QMediaMetaData &metaData) |
Signals that an image identified by id has metaData. | |
void | imageAvailable (int id, const QVideoFrame &frame) |
Signal emitted when the frame with request id is available. | |
void | imageSaved (int id, const QString &fileName) |
Signal emitted when QImageCapture::CaptureToFile is set and the frame with request id was saved to fileName. | |
![]() | |
void | destroyed (QObject *=nullptr) |
This signal is emitted immediately before the object obj is destroyed, after any instances of QPointer have been notified, and cannot be blocked. | |
void | objectNameChanged (const QString &objectName, QPrivateSignal) |
This signal is emitted after the object's name has been changed. | |
Public Member Functions | |
QImageCapture (QObject *parent=nullptr) | |
Constructs a image capture object, from a parent, that can capture individual still images produced by a camera. | |
~QImageCapture () | |
Destroys images capture object. | |
bool | isAvailable () const |
Returns true if the images capture service ready to use. | |
QMediaCaptureSession * | captureSession () const |
Returns the capture session this camera is connected to, or a nullptr if the camera is not connected to a capture session. | |
Error | error () const |
QString | errorString () const |
bool | isReadyForCapture () const |
FileFormat | fileFormat () const |
void | setFileFormat (FileFormat format) |
Sets the image format. | |
QSize | resolution () const |
Returns the resolution of the encoded image. | |
void | setResolution (const QSize &) |
Sets the resolution of the encoded image. | |
void | setResolution (int width, int height) |
Sets the width and height of the resolution of the encoded image. | |
Quality | quality () const |
void | setQuality (Quality quality) |
Sets the image encoding quality. | |
QMediaMetaData | metaData () const |
void | setMetaData (const QMediaMetaData &metaData) |
Replaces any existing meta data, to be embedded into the captured image, with a set of metaData. | |
void | addMetaData (const QMediaMetaData &metaData) |
Adds additional metaData to any existing meta data, that is embedded into the captured image. | |
![]() | |
Q_INVOKABLE | QObject (QObject *parent=nullptr) |
Constructs an object with parent object parent. | |
virtual | ~QObject () |
Destroys the object, deleting all its child objects. | |
virtual bool | event (QEvent *event) |
This virtual function receives events to an object and should return true if the event e was recognized and processed. | |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
Filters events if this object has been installed as an event filter for the watched object. | |
QString | objectName () const |
Q_WEAK_OVERLOAD void | setObjectName (const QString &name) |
Sets the object's name to name. | |
void | setObjectName (QAnyStringView name) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
QBindable< QString > | bindableObjectName () |
bool | isWidgetType () const |
Returns true if the object is a widget; otherwise returns false . | |
bool | isWindowType () const |
Returns true if the object is a window; otherwise returns false . | |
bool | isQuickItemType () const |
Returns true if the object is a QQuickItem; otherwise returns false . | |
bool | signalsBlocked () const noexcept |
Returns true if signals are blocked; otherwise returns false . | |
bool | blockSignals (bool b) noexcept |
If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it). | |
QThread * | thread () const |
Returns the thread in which the object lives. | |
void | moveToThread (QThread *thread) |
Changes the thread affinity for this object and its children. | |
int | startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer) |
This is an overloaded function that will start a timer of type timerType and a timeout of interval milliseconds. | |
int | startTimer (std::chrono::milliseconds time, Qt::TimerType timerType=Qt::CoarseTimer) |
void | killTimer (int id) |
Kills the timer with timer identifier, id. | |
template<typename T > | |
T | findChild (const QString &aName=QString(), Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
Returns the child of this object that can be cast into type T and that is called name, or \nullptr if there is no such object. | |
template<typename T > | |
QList< T > | findChildren (const QString &aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects. | |
template<typename T > | |
QList< T > | findChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
const QObjectList & | children () const |
Returns a list of child objects. | |
void | setParent (QObject *parent) |
Makes the object a child of parent. | |
void | installEventFilter (QObject *filterObj) |
Installs an event filter filterObj on this object. | |
void | removeEventFilter (QObject *obj) |
Removes an event filter object obj from this object. | |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const |
bool | disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const |
bool | disconnect (const QObject *receiver, const char *member=nullptr) const |
void | dumpObjectTree () const |
Dumps a tree of children to the debug output. | |
void | dumpObjectInfo () const |
Dumps information about signal connections, etc. | |
bool | setProperty (const char *name, const QVariant &value) |
Sets the value of the object's name property to value. | |
bool | setProperty (const char *name, QVariant &&value) |
QVariant | property (const char *name) const |
Returns the value of the object's name property. | |
QList< QByteArray > | dynamicPropertyNames () const |
QBindingStorage * | bindingStorage () |
const QBindingStorage * | bindingStorage () const |
QObject * | parent () const |
Returns a pointer to the parent object. | |
bool | inherits (const char *classname) const |
Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false . | |
Static Public Member Functions | |
static QList< FileFormat > | supportedFormats () |
Returns a list of supported file formats. | |
static QString | fileFormatName (FileFormat c) |
Returns the name of the given format, f. | |
static QString | fileFormatDescription (FileFormat c) |
Returns the description of the given file format, f. | |
![]() | |
static QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection) |
\threadsafe | |
static QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection) |
template<typename Func1 , typename Func2 > | |
static QMetaObject::Connection | connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::ContextTypeForFunctor< Func2 >::ContextType *context, Func2 &&slot, Qt::ConnectionType type=Qt::AutoConnection) |
template<typename Func1 , typename Func2 > | |
static QMetaObject::Connection | connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 &&slot) |
static bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member) |
\threadsafe | |
static bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member) |
static bool | disconnect (const QMetaObject::Connection &) |
Disconnect a connection. | |
template<typename Func1 , typename Func2 > | |
static bool | disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot) |
template<typename Func1 > | |
static bool | disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero) |
Properties | |
bool | readyForCapture |
Holds true if the camera is ready to capture an image immediately. | |
QMediaMetaData | metaData |
The meta data that will get embedded into the image. | |
Error | error |
Returns the current error state. | |
QString | errorString |
Returns a string describing the current error state. | |
FileFormat | fileFormat |
The image format. | |
Quality | quality |
The image encoding quality. | |
![]() | |
QString | objectName |
the name of this object | |
Friends | |
class | QMediaCaptureSession |
Additional Inherited Members | |
![]() | |
QObject * | sender () const |
Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr. | |
int | senderSignalIndex () const |
int | receivers (const char *signal) const |
Returns the number of receivers connected to the signal. | |
bool | isSignalConnected (const QMetaMethod &signal) const |
virtual void | timerEvent (QTimerEvent *event) |
This event handler can be reimplemented in a subclass to receive timer events for the object. | |
virtual void | childEvent (QChildEvent *event) |
This event handler can be reimplemented in a subclass to receive child events. | |
virtual void | customEvent (QEvent *event) |
This event handler can be reimplemented in a subclass to receive custom events. | |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
QObject (QObjectPrivate &dd, QObject *parent=nullptr) | |
![]() | |
QScopedPointer< QObjectData > | d_ptr |
![]() | |
template< class T > T | qobject_cast (const QObject *object) |
Returns the given object cast to type T if the object is of type T (or of a subclass); otherwise returns \nullptr. | |
template< typename T > T | qFindChildqFindChildren (const QObject *obj, const QString &name)() |
template< typename T > QList< T > | qFindChildrenqFindChildren (const QObject *obj, const QString &name)() |
QObjectList | |
\macro Q_CLASSINFO(Name, Value) | |
\inmodule QtMultimedia
The QImageCapture class is used for the recording of media content.
The QImageCapture class is a high level images recording class. It's not intended to be used alone but for accessing the media recording functions of other media objects, like QCamera.
Definition at line 25 of file qimagecapture.h.
enum QImageCapture::Error |
\value NoError No Errors.
\value NotReadyError The service is not ready for capture yet. \value ResourceError Device is not ready or not available. \value OutOfSpaceError No space left on device. \value NotSupportedFeatureError Device does not support stillimages capture. \value FormatError Current format is not supported.
Enumerator | |
---|---|
NoError | |
NotReadyError | |
ResourceError | |
OutOfSpaceError | |
NotSupportedFeatureError | |
FormatError |
Definition at line 35 of file qimagecapture.h.
Choose one of the following image formats:
\value UnspecifiedFormat No format specified \value JPEG .jpg or
.jpeg format \value PNG
.png format \value WebP
.webp format \value Tiff
.tiff format \omitvalue LastFileFormat
Enumerator | |
---|---|
UnspecifiedFormat | |
JPEG | |
PNG | |
WebP | |
Tiff | |
LastFileFormat |
Definition at line 56 of file qimagecapture.h.
Enumerates quality encoding levels.
\value VeryLowQuality \value LowQuality \value NormalQuality \value HighQuality \value VeryHighQuality
Enumerator | |
---|---|
VeryLowQuality | |
LowQuality | |
NormalQuality | |
HighQuality | |
VeryHighQuality |
Definition at line 46 of file qimagecapture.h.
Constructs a image capture object, from a parent, that can capture individual still images produced by a camera.
You must connect both an image capture object and a QCamera to a capture session to capture images.
Definition at line 80 of file qimagecapture.cpp.
References QObject::connect(), QPlatformMediaIntegration::createImageCapture(), d, error, imageAvailable(), imageCaptured(), imageExposed(), imageMetadataAvailable(), imageSaved(), QPlatformMediaIntegration::instance(), NotReadyError, qWarning, readyForCaptureChanged(), SIGNAL, and SLOT.
QImageCapture::~QImageCapture | ( | ) |
Destroys images capture object.
Definition at line 130 of file qimagecapture.cpp.
References QImageCapturePrivate::captureSession, and QMediaCaptureSession::setImageCapture().
void QImageCapture::addMetaData | ( | const QMediaMetaData & | metaData | ) |
Adds additional metaData to any existing meta data, that is embedded into the captured image.
Definition at line 213 of file qimagecapture.cpp.
References d, QMediaMetaData::keys(), metaData, setMetaData(), and QMediaMetaData::value().
|
slot |
Capture the image and make it available as a QImage.
This operation is asynchronous in majority of cases, followed by signals QImageCapture::imageExposed(), QImageCapture::imageCaptured() or QImageCapture::error().
QImageCapture::capture returns the capture Id parameter, used with imageExposed(), imageCaptured() and imageSaved() signals.
Definition at line 298 of file qimagecapture.cpp.
References d.
Referenced by camera_blah(), and overview_still().
QMediaCaptureSession * QImageCapture::captureSession | ( | ) | const |
Returns the capture session this camera is connected to, or a nullptr if the camera is not connected to a capture session.
Use QMediaCaptureSession::setImageCapture() to connect the image capture to a session.
Definition at line 152 of file qimagecapture.cpp.
References QImageCapturePrivate::captureSession.
Referenced by QMediaCaptureSession::setImageCapture().
Capture the image and save it to file.
This operation is asynchronous in majority of cases, followed by signals QImageCapture::imageExposed(), QImageCapture::imageCaptured(), QImageCapture::imageSaved() or QImageCapture::error().
If an empty file is passed, the camera back end chooses the default location and naming scheme for photos on the system, if only file name without full path is specified, the image will be saved to the default directory, with a full path reported with imageCaptured() and imageSaved() signals.
QCamera saves all the capture parameters like exposure settings or image processing parameters, so changes to camera parameters after capture() is called do not affect previous capture requests.
QImageCapture::capture returns the capture Id parameter, used with imageExposed(), imageCaptured() and imageSaved() signals.
Definition at line 268 of file qimagecapture.cpp.
References d, file, isReadyForCapture(), NotReadyError, and tr.
QImageCapture::Error QImageCapture::error | ( | ) | const |
Definition at line 165 of file qimagecapture.cpp.
|
signal |
|
signal |
Signals that the capture request id has failed with an error and errorString description.
QString QImageCapture::errorString | ( | ) | const |
Definition at line 178 of file qimagecapture.cpp.
QImageCapture::FileFormat QImageCapture::fileFormat | ( | ) | const |
Definition at line 373 of file qimagecapture.cpp.
References d, and UnspecifiedFormat.
|
signal |
|
static |
Returns the description of the given file format, f.
Definition at line 434 of file qimagecapture.cpp.
References QString::fromUtf8(), JPEG, PNG, Tiff, UnspecifiedFormat, and WebP.
|
static |
Returns the name of the given format, f.
Definition at line 408 of file qimagecapture.cpp.
References QString::fromUtf8(), JPEG, PNG, Tiff, UnspecifiedFormat, and WebP.
Referenced by QQnxImageCapture::capture().
|
signal |
Signal emitted when the frame with request id is available.
Referenced by QImageCapture().
|
signal |
Signal emitted when the frame with request id was captured, but not processed and saved yet.
Frame preview can be displayed to user.
Referenced by QImageCapture(), and QQuickImageCapture::QQuickImageCapture().
|
signal |
Signal emitted when the frame with request id was exposed.
Referenced by QImageCapture().
|
signal |
Signals that an image identified by id has metaData.
Referenced by QImageCapture().
|
signal |
Signal emitted when QImageCapture::CaptureToFile is set and the frame with request id was saved to fileName.
Referenced by QImageCapture().
bool QImageCapture::isAvailable | ( | ) | const |
Returns true if the images capture service ready to use.
Definition at line 140 of file qimagecapture.cpp.
bool QImageCapture::isReadyForCapture | ( | ) | const |
Definition at line 229 of file qimagecapture.cpp.
References camera, d, and QCamera::isActive().
Referenced by captureToFile().
QMediaMetaData QImageCapture::metaData | ( | ) | const |
Definition at line 190 of file qimagecapture.cpp.
References d.
|
signal |
QImageCapture::Quality QImageCapture::quality | ( | ) | const |
Definition at line 518 of file qimagecapture.cpp.
References d, and NormalQuality.
|
signal |
|
signal |
Signals that a camera's ready for capture state has changed.
Referenced by QImageCapture().
QSize QImageCapture::resolution | ( | ) | const |
Returns the resolution of the encoded image.
Definition at line 461 of file qimagecapture.cpp.
References d.
Referenced by setResolution().
|
signal |
Signals when the image resolution changes.
Referenced by setQuality(), and setResolution().
void QImageCapture::setFileFormat | ( | QImageCapture::FileFormat | format | ) |
Sets the image format.
Definition at line 382 of file qimagecapture.cpp.
References d, emit, fileFormatChanged(), and fmt.
void QImageCapture::setMetaData | ( | const QMediaMetaData & | metaData | ) |
Replaces any existing meta data, to be embedded into the captured image, with a set of metaData.
Definition at line 200 of file qimagecapture.cpp.
References d, emit, metaData, and metaDataChanged().
Referenced by addMetaData().
Sets the image encoding quality.
Definition at line 527 of file qimagecapture.cpp.
References d, emit, fmt, quality, and resolutionChanged().
Sets the resolution of the encoded image.
An empty QSize indicates the encoder should make an optimal choice based on what is available from the image source and the limitations of the codec.
Definition at line 479 of file qimagecapture.cpp.
References d, emit, fmt, resolution(), and resolutionChanged().
Referenced by setResolution().
void QImageCapture::setResolution | ( | int | width, |
int | height | ||
) |
Sets the width and height of the resolution of the encoded image.
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 497 of file qimagecapture.cpp.
References setResolution().
|
static |
Returns a list of supported file formats.
Definition at line 400 of file qimagecapture.cpp.
References QPlatformMediaIntegration::formatInfo(), QPlatformMediaFormatInfo::imageFormats, and QPlatformMediaIntegration::instance().
|
friend |
Definition at line 121 of file qimagecapture.h.
|
read |
Returns the current error state.
Definition at line 130 of file qimagecapture.h.
Referenced by QImageCapture().
|
read |
Returns a string describing the current error state.
Definition at line 130 of file qimagecapture.h.
|
read |
The image format.
Definition at line 130 of file qimagecapture.h.
|
readwrite |
The meta data that will get embedded into the image.
Definition at line 130 of file qimagecapture.h.
Referenced by addMetaData(), and setMetaData().
|
read |
The image encoding quality.
Definition at line 130 of file qimagecapture.h.
Referenced by setQuality().
|
read |
Holds true
if the camera is ready to capture an image immediately.
Calling capture() while readyForCapture
is false
is not permitted and results in an error.
Definition at line 130 of file qimagecapture.h.