在Qt中,没有名为QMediaDevices或QCameraDevice的类。正确的类是QCamera和QCameraInfo。
以下是使用QCamera和QCameraInfo获取可用摄像头分辨率列表的示例代码:
#include <QCoreApplication>
#include <QDebug>
#include <QCameraInfo>
#include <QStringList>
int main(int argc, char *argv[]) {
QCoreApplication app(argc, argv);
QList<QCameraInfo> cameras = QCameraInfo::availableCameras();
foreach (const QCameraInfo &cameraInfo, cameras) {
qDebug() << "Device Name:" << cameraInfo.deviceName();
qDebug() << "Description:" << cameraInfo.description();
qDebug() << "Supported Resolutions:";
// 获取相机对象
QCamera camera(cameraInfo);
// 获取支持的分辨率列表
QList<QSize> resolutions = camera.supportedViewfinderResolutions();
foreach (const QSize &resolution, resolutions) {
qDebug() << resolution;
}
}
return app.exec();
}
这段代码会列出所有可用摄像头设备的设备名称、描述以及支持的分辨率列表。
请确保已正确包含必要的头文件,并链接相应的库。如果仍然遇到问题,请检查您使用的Qt版本和相关文档,以了解如何操作多媒体设备。
内容由零声教学AI助手提供,问题来源于学员提问