Qt 5.9 | Qt Multimedia | C++ Classes | QVideoEncoderSettingsControl

Qt 5.9.4 Reference Documentation

# 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

- List of all members, including inherited members

## Public Functions

virtual | ~QVideoEncoderSettingsControl()
virtual void | setVideoSettings(const QVideoEncoderSettings &settings) = 0
virtual QList<qreal> | supportedFrameRates(const QVideoEncoderSettings &settings, bool *continuous = Q_NULLPTR) const = 0
virtual QList<QSize> | supportedResolutions(const QVideoEncoderSettings &settings, bool *continuous = Q_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 = Q_NULLPTR)

## Macros

| QVideoEncoderSettingsControl_iid

## Detailed Description

The QVideoEncoderSettingsControl class provides access to the settings of a media service that performs video encoding.

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 = Q_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 = Q_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 = Q_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.