QCameraDevice Class

The QCameraDevice class provides general information about camera devices. 更多...

头: #include <QCameraDevice>
CMake: find_package(Qt6 REQUIRED COMPONENTS Multimedia)
target_link_libraries(mytarget PRIVATE Qt6::Multimedia)
qmake: QT += multimedia

公共类型

enum Position { UnspecifiedPosition, BackFace, FrontFace }

特性

公共函数

QCameraDevice ()
QCameraDevice (const QCameraDevice & other )
~QCameraDevice ()
QString description () const
QByteArray id () const
bool isDefault () const
bool isNull () const
QList<QSize> photoResolutions () const
QCameraDevice::Position position () const
QList<QCameraFormat> videoFormats () const
bool operator!= (const QCameraDevice & other ) const
QCameraDevice & operator= (const QCameraDevice & other )
bool operator== (const QCameraDevice & other ) const

详细描述

QCameraDevice represents a physical camera device and its properties.

You can discover what cameras are available on a system using the availableCameras() and defaultCamera() functions. These are contained within QtMultimedia::MediaDevices.

This example prints the name of all available cameras:

const QList<QCameraDevice> cameras = QMediaDevices::videoInputs();
for (const QCameraDevice &cameraDevice : cameras)
    qDebug() << cameraDevice.description();
					

A QCameraDevice can be used to construct a QCamera . The following example instantiates a QCamera whose camera device is named mycamera :

const QList<QCameraDevice> cameras = QMediaDevices::videoInputs();
for (const QCameraDevice &cameraDevice : cameras) {
    if (cameraDevice.description() == "mycamera")
        camera = new QCamera(cameraDevice);
}
					

You can also use QCameraDevice to get general information about a camera device such as description and physical position on the system.

QCamera myCamera;
QCameraDevice cameraDevice = camera->cameraDevice();
if (cameraDevice.position() == QCameraDevice::FrontFace)
    qDebug() << "The camera is on the front face of the hardware system.";
else if (cameraDevice.position() == QCameraDevice::BackFace)
    qDebug() << "The camera is on the back face of the hardware system.";
					

另请参阅 QCamera .

成员类型文档编制

enum QCameraDevice:: Position

This enum specifies the physical position of the camera on the system hardware.

常量 描述
QCameraDevice::UnspecifiedPosition 0 The camera position is unspecified or unknown.
QCameraDevice::BackFace 1 The camera is on the back face of the system hardware. For example on a mobile device, it means it is on the opposite side to that of the screen.
QCameraDevice::FrontFace 2 The camera is on the front face of the system hardware. For example on a mobile device, it means it is on the same side as that of the screen.

另请参阅 position ().

特性文档编制

[read-only] description : const QString

Returns the human-readable description of the camera.

Use this string to present the device to the user.

访问函数:

QString description () const

[read-only] id : const QByteArray

Returns the device id of the camera

This is a unique ID to identify the camera and may not be human-readable.

访问函数:

QByteArray id () const

[read-only] isDefault : const bool

Returns true if this is the default camera device.

访问函数:

bool isDefault () const

[read-only] position : const Position

Returns the physical position of the camera on the hardware system.

访问函数:

QCameraDevice::Position 位置 () const

[read-only] videoFormats : const QList < QCameraFormat >

Returns the video formats supported by the camera.

访问函数:

QList<QCameraFormat> videoFormats () const

成员函数文档编制

QCameraDevice:: QCameraDevice ()

Constructs a null camera device

QCameraDevice:: QCameraDevice (const QCameraDevice & other )

构造副本为 other .

QCameraDevice:: ~QCameraDevice ()

销毁 QCameraDevice .

bool QCameraDevice:: isNull () const

返回 true,若此 QCameraDevice is null or invalid.

QList < QSize > QCameraDevice:: photoResolutions () const

Returns a list of resolutions that the camera can use to capture still images.

另请参阅 QImageCapture .

bool QCameraDevice:: operator!= (const QCameraDevice & other ) const

返回 true,若此 QCameraDevice is different from other .

QCameraDevice &QCameraDevice:: operator= (const QCameraDevice & other )

设置 QCameraDevice 对象等于 other .

bool QCameraDevice:: operator== (const QCameraDevice & other ) const

返回 true,若此 QCameraDevice 等于 other .