抱歉,我之前的回答中有一个错误。在Qt 6中,QCamera类已被弃用,推荐使用QCameraDevice类来获取摄像头的分辨率列表。以下是示例代码:
#include <QCameraInfo>
#include <QDebug>
// 获取可用的摄像头列表
QList<QCameraInfo> cameras = QCameraInfo::availableCameras();
// 遍历每个摄像头
for (const QCameraInfo& camera : cameras) {
qDebug() << "Camera: " << camera.deviceName();
// 获取当前摄像头设备
QCameraDevice cameraDevice(camera);
// 获取当前摄像头支持的预览分辨率列表
QList<QSize> supportedResolutions = cameraDevice.supportedViewfinderResolutions();
// 输出每个分辨率信息
for (const QSize& resolution : supportedResolutions) {
qDebug() << "Resolution: " << resolution.width() << "x" << resolution.height();
}
}
这段代码与之前相似,但使用了QCameraDevice类而不是弃用的QCamera类。通过创建QCameraDevice对象并传入对应的QCameraInfo对象,我们可以获取特定摄像头设备,并使用supportedViewfinderResolutions()
方法获取支持的预览分辨率列表。
同样,请确保正确配置和链接Qt库,并将必要的包含文件添加到您的项目中。
内容由零声教学AI助手提供,问题来源于学员提问