QCameraDevice Class

Die Klasse QCameraDevice liefert allgemeine Informationen über Kamerageräte. Mehr...

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

Öffentliche Typen

enum Position { UnspecifiedPosition, BackFace, FrontFace }

Eigenschaften

Öffentliche Funktionen

QCameraDevice()
QCameraDevice(const QCameraDevice &other)
~QCameraDevice()
QtVideo::Rotation correctionAngle() const
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

Detaillierte Beschreibung

QCameraDevice repräsentiert ein physisches Kameragerät und seine Eigenschaften.

Sie können herausfinden, welche Kameras auf einem System verfügbar sind, indem Sie die Funktionen availableCameras() und defaultCamera() verwenden. Diese sind in QtMultimedia::MediaDevices enthalten.

Dieses Beispiel gibt den Namen aller verfügbaren Kameras aus:

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

Ein QCameraDevice kann verwendet werden, um ein QCamera zu konstruieren. Das folgende Beispiel instanziiert ein QCamera, dessen Kameragerät den Namen mycamera trägt:

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

Sie können QCameraDevice auch verwenden, um allgemeine Informationen über ein Kameragerät zu erhalten, wie z.B. die Beschreibung und die physische Position auf dem 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.";

Siehe auch QCamera.

Dokumentation der Mitgliedsarten

enum QCameraDevice::Position

Diese Aufzählung gibt die physische Position der Kamera auf der Systemhardware an.

KonstanteWertBeschreibung
QCameraDevice::UnspecifiedPosition0Die Kameraposition ist nicht spezifiziert oder unbekannt.
QCameraDevice::BackFace1Die Kamera befindet sich auf der Rückseite der Systemhardware. Bei einem mobilen Gerät bedeutet dies beispielsweise, dass sie sich auf der dem Bildschirm gegenüberliegenden Seite befindet.
QCameraDevice::FrontFace2Die Kamera befindet sich auf der Vorderseite der Systemhardware. Bei einem mobilen Gerät zum Beispiel befindet sie sich auf der gleichen Seite wie der Bildschirm. Frontkameras erzeugen Videoframes mit der Eigenschaft QVideoFrame::mirrored, die auf true gesetzt ist. Das bedeutet, dass die Darstellung dieser Frames um die vertikale Achse gespiegelt wird, um die Videoausgabe spiegelverkehrt darzustellen, während die Aufzeichnung nur die unter QVideoFrame::surfaceFormat angegebenen Transformationen der Oberfläche berücksichtigt.

Siehe auch position().

Dokumentation der Eigenschaft

[read-only, since 6.7] correctionAngle : const QtVideo::Rotation

Gibt den Drehwinkel zurück, der erforderlich ist, um die physische Kameradrehung der Kamera im Vergleich zu ihrer ursprünglichen Ausrichtung auszugleichen. Mit anderen Worten: Die Eigenschaft stellt den Winkel im Uhrzeigersinn dar, um den das Ausgabebild gedreht werden muss, um auf dem Bildschirm des Geräts in seiner nativen Ausrichtung aufrecht zu stehen. Da correctionAngle sich auf die ursprüngliche Ausrichtung bezieht, ändert sich dieser Wert nicht, wenn die Ausrichtung des Geräts (Hochformat/Landschaft) geändert wird. Der Korrekturwinkel kann ungleich Null sein, vor allem bei Android, wo die native Ausrichtung und die Kameraausrichtung vom Hersteller definiert werden.

Example with 90 degrees \a correctionAngle

Diese Eigenschaft wurde in Qt 6.7 eingeführt.

Zugriffsfunktionen:

QtVideo::Rotation correctionAngle() const

[read-only] description : const QString

Gibt die von Menschen lesbare Beschreibung der Kamera zurück.

Verwenden Sie diese Zeichenkette, um das Gerät dem Benutzer vorzustellen.

Zugriffsfunktionen:

QString description() const

[read-only] id : const QByteArray

Gibt die Geräte-ID der Kamera zurück

Es handelt sich um eine eindeutige ID zur Identifizierung der Kamera, die möglicherweise nicht von Menschen gelesen werden kann.

Zugriffsfunktionen:

QByteArray id() const

[read-only] isDefault : const bool

Gibt true zurück, wenn dies das Standard-Kameragerät ist.

Zugriffsfunktionen:

bool isDefault() const

[read-only] position : const Position

Gibt die physische Position der Kamera auf dem Hardwaresystem zurück.

Zugriffsfunktionen:

QCameraDevice::Position position() const

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

Gibt die von der Kamera unterstützten Videoformate zurück.

Zugriffsfunktionen:

QList<QCameraFormat> videoFormats() const

Dokumentation der Mitgliedsfunktionen

QCameraDevice::QCameraDevice()

Konstruiert ein Null-Kamera-Gerät

QCameraDevice::QCameraDevice(const QCameraDevice &other)

Konstruiert eine Kopie von other.

[noexcept] QCameraDevice::~QCameraDevice()

Zerstört die QCameraDevice.

bool QCameraDevice::isNull() const

Gibt true zurück, wenn diese QCameraDevice null oder ungültig ist.

QList<QSize> QCameraDevice::photoResolutions() const

Gibt eine Liste der Auflösungen zurück, die die Kamera für die Aufnahme von Standbildern verwenden kann.

Siehe auch QImageCapture.

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

Gibt true zurück, wenn sich dieses QCameraDevice von other unterscheidet.

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

Setzt das Objekt QCameraDevice auf den Wert other.

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

Gibt true zurück, wenn diese QCameraDevice gleich other ist.

© 2025 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.