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.
Konstante | Wert | Beschreibung |
---|---|---|
QCameraDevice::UnspecifiedPosition | 0 | Die Kameraposition ist nicht spezifiziert oder unbekannt. |
QCameraDevice::BackFace | 1 | Die 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::FrontFace | 2 | Die 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.
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.