QVideoEncoderSettingsControl Class
The QVideoEncoderSettingsControl class provides access to the settings of a media service that performs video encoding. More...
Header: | #include <QVideoEncoderSettingsControl> |
qmake: | QT += multimedia |
Inherits: | QMediaControl |
Public Functions
virtual | ~QVideoEncoderSettingsControl() |
virtual void | setVideoSettings(const QVideoEncoderSettings &settings) = 0 |
virtual QList<qreal> | supportedFrameRates(const QVideoEncoderSettings &settings, bool *continuous = nullptr) const = 0 |
virtual QList<QSize> | supportedResolutions(const QVideoEncoderSettings &settings, bool *continuous = nullptr) const = 0 |
virtual QStringList | supportedVideoCodecs() const = 0 |
virtual QString | videoCodecDescription(const QString &codec) const = 0 |
virtual QVideoEncoderSettings | videoSettings() const = 0 |
Protected Functions
QVideoEncoderSettingsControl(QObject *parent = nullptr) |
Macros
Detailed Description
If a QMediaService supports encoding video data it will implement QVideoEncoderSettingsControl. This control provides information about the limits of restricted video encoder options and allows the selection of a set of video encoder settings as specified in a QVideoEncoderSettings object.
The functionality provided by this control is exposed to application code through the QMediaRecorder class.
The interface name of QVideoEncoderSettingsControl is org.qt-project.qt.videoencodersettingscontrol/5.0
as defined in QVideoEncoderSettingsControl_iid.
See also QMediaRecorder, QVideoEncoderSettings, and QMediaService::requestControl().
Member Function Documentation
[protected]
QVideoEncoderSettingsControl::QVideoEncoderSettingsControl(QObject *parent = nullptr)
Create a new video encoder settings control object with the given parent.
[virtual]
QVideoEncoderSettingsControl::~QVideoEncoderSettingsControl()
Destroys a video encoder settings control.
[pure virtual]
void QVideoEncoderSettingsControl::setVideoSettings(const QVideoEncoderSettings &settings)
Sets the selected video encoder settings.
See also videoSettings().
[pure virtual]
QList<qreal> QVideoEncoderSettingsControl::supportedFrameRates(const QVideoEncoderSettings &settings, bool *continuous = nullptr) const
Returns a list of supported frame rates.
If non null video settings parameter is passed, the returned list is reduced to frame rates supported with partial settings like video codec or video resolution applied.
If the encoder supports arbitrary frame rates within the supported range, *continuous is set to true, otherwise *continuous is set to false.
See also QVideoEncoderSettings::frameRate().
[pure virtual]
QList<QSize> QVideoEncoderSettingsControl::supportedResolutions(const QVideoEncoderSettings &settings, bool *continuous = nullptr) const
Returns a list of supported resolutions.
If non null video settings parameter is passed, the returned list is reduced to resolution supported with partial settings like video codec or frame rate applied.
If the encoder supports arbitrary resolutions within the supported resolutions range, *continuous is set to true, otherwise *continuous is set to false.
See also QVideoEncoderSettings::resolution().
[pure virtual]
QStringList QVideoEncoderSettingsControl::supportedVideoCodecs() const
Returns the list of supported video codecs.
[pure virtual]
QString QVideoEncoderSettingsControl::videoCodecDescription(const QString &codec) const
Returns a description of a video codec.
[pure virtual]
QVideoEncoderSettings QVideoEncoderSettingsControl::videoSettings() const
Returns the video encoder settings.
The returned value may be different tha passed to QVideoEncoderSettingsControl::setVideoSettings() if the settings contains the default or undefined parameters. In this case if the undefined parameters are already resolved, they should be returned.
See also setVideoSettings().
Macro Documentation
QVideoEncoderSettingsControl_iid
org.qt-project.qt.videoencodersettingscontrol/5.0
Defines the interface name of the QVideoEncoderSettingsControl class.
© 2020 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.