- Qt 5.15
- Qt Multimedia
- C++ Classes
- QCameraExposureControl
- Qt 5.15.18 Reference Documentation

# QCameraExposureControl Class

The QCameraExposureControl class allows controlling camera exposure parameters. More...

Header: | #include <QCameraExposureControl>
qmake: | QT += multimedia
Inherits: | QMediaControl

This class is obsolete. It is provided to keep old source code working. We strongly advise against using it in new code.

- List of all members, including inherited members

## Public Types

enum | ExposureParameter { ISO, Aperture, ShutterSpeed, ExposureCompensation, FlashPower, …, ExtendedExposureParameter }

## Public Functions

virtual | ~QCameraExposureControl()
virtual QVariant | actualValue(ExposureParameter parameter) const = 0
virtual bool | isParameterSupported(ExposureParameter parameter) const = 0
virtual QVariant | requestedValue(ExposureParameter parameter) const = 0
virtual bool | setValue(ExposureParameter parameter, const QVariant &value) = 0
virtual QVariantList | supportedParameterRange(ExposureParameter parameter, bool *continuous = 0) const = 0

## Signals

void | actualValueChanged(int parameter)
void | parameterRangeChanged(int parameter)
void | requestedValueChanged(int parameter)

## Protected Functions

| QCameraExposureControl(QObject *parent = nullptr)

## Macros

| QCameraExposureControl_iid

## Detailed Description

The QCameraExposure class is the usual method of adjusting exposure related parameters when using camera functionality. This class provides a more complete but less easy to use interface, and also forms the interface to implement when writing a new implementation of QCamera functionality.

You can adjust a number of parameters that will affect images and video taken with the corresponding QCamera object - see the ExposureParameter enumeration.

The interface name of QCameraExposureControl is `org.qt-project.qt.cameraexposurecontrol/5.0` as defined in QCameraExposureControl_iid.

See also QCameraExposure and QCamera.

## Member Type Documentation

### enum QCameraExposureControl::ExposureParameter

Constant | Value | Description
--- | --- | ---
`QCameraExposureControl::ISO` | `0` | Camera ISO sensitivity, specified as integer value.
`QCameraExposureControl::Aperture` | `1` | Lens aperture is specified as an qreal F number. The supported apertures list can change depending on the focal length, in such a case the exposureParameterRangeChanged() signal is emitted.
`QCameraExposureControl::ShutterSpeed` | `2` | Shutter speed in seconds, specified as qreal.
`QCameraExposureControl::ExposureCompensation` | `3` | Exposure compensation, specified as qreal EV value.
`QCameraExposureControl::FlashPower` | `4` | Manual flash power, specified as qreal value. Accepted power range is [0..1.0], with 0 value means no flash and 1.0 corresponds to full flash power.

This value is only used in the manual flash mode.

Constant | Value | Description
--- | --- | ---
`QCameraExposureControl::TorchPower` | `6` | Manual torch power, specified as qreal value. Accepted power range is [0..1.0], with 0 value means no light and 1.0 corresponds to full torch power.

This value is only used in the torch flash mode.

Constant | Value | Description
--- | --- | ---
`QCameraExposureControl::FlashCompensation` | `5` | Flash compensation, specified as qreal EV value.
`QCameraExposureControl::SpotMeteringPoint` | `7` | The relative frame coordinate of the point to use for exposure metering in spot metering mode, specified as a QPointF.
`QCameraExposureControl::ExposureMode` | `8` | Camera exposure mode.
`QCameraExposureControl::MeteringMode` | `9` | Camera metering mode.
`QCameraExposureControl::ExtendedExposureParameter` | `1000` | The base value for platform specific extended parameters. For such parameters the sequential values starting from ExtendedExposureParameter should be used.

## Member Function Documentation

### `[protected]` QCameraExposureControl::QCameraExposureControl(QObject *parent = nullptr)

Constructs a camera exposure control object with parent.

### `[signal]` void QCameraExposureControl::actualValueChanged(int parameter)

Signal emitted when the actual exposure parameter value has changed, usually in result of auto exposure algorithms or manual exposure parameter applied.

This function was introduced in Qt 5.0.

### `[signal]` void QCameraExposureControl::parameterRangeChanged(int parameter)

Signal emitted when the supported range of exposure parameter values has changed.

This function was introduced in Qt 5.0.

### `[signal]` void QCameraExposureControl::requestedValueChanged(int parameter)

Signal emitted when the requested exposure parameter value has changed, usually in result of setValue() call.

This function was introduced in Qt 5.0.

### `[virtual]` QCameraExposureControl::~QCameraExposureControl()

Destroys the camera exposure control object.

### `[pure virtual]` QVariant QCameraExposureControl::actualValue(ExposureParameter parameter) const

Returns the actual exposure parameter value, or invalid QVariant() if the value is unknown or not supported.

The actual parameter value may differ for the requested one if automatic mode is selected or camera supports only limited set of values within the supported range.

This function was introduced in Qt 5.0.

### `[pure virtual]` bool QCameraExposureControl::isParameterSupported(ExposureParameter parameter) const

Returns true is exposure parameter is supported by backend.

This function was introduced in Qt 5.0.

### `[pure virtual]` QVariant QCameraExposureControl::requestedValue(ExposureParameter parameter) const

Returns the requested exposure parameter value.

This function was introduced in Qt 5.0.

### `[pure virtual]` bool QCameraExposureControl::setValue(ExposureParameter parameter, const QVariant &value)

Set the exposure parameter to value. If a null or invalid QVariant is passed, backend should choose the value automatically, and if possible report the actual value to user with QCameraExposureControl::actualValue().

Returns true if parameter is supported and value is correct.

This function was introduced in Qt 5.0.

### `[pure virtual]` QVariantList QCameraExposureControl::supportedParameterRange(ExposureParameter parameter, bool *continuous = 0) const

Returns the list of supported parameter values;

If the camera supports arbitrary exposure parameter value within the supported range, *continuous is set to true, otherwise *continuous is set to false.

This function was introduced in Qt 5.0.

## Macro Documentation

### QCameraExposureControl_iid

`org.qt-project.qt.cameraexposurecontrol/5.0`

Defines the interface name of the QCameraExposureControl class.