使用Qt的QCameraInfo类可以获取摄像头可用分辨率。下面是一个示例代码,演示如何使用QCameraInfo获取摄像头设备的可用分辨率:
#include <QCoreApplication>
#include <QDebug>
#include <QCameraInfo>
#include <QStringList>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
// 获取可用的摄像头设备列表
QList<QCameraInfo> cameras = QCameraInfo::availableCameras();
for (const QCameraInfo& camera : cameras) {
qDebug() << "Device Name: " << camera.deviceName();
qDebug() << "Description: " << camera.description();
// 创建临时相机对象以获取支持的配置
QCamera tempCamera(camera);
// 获取支持的配置
QList<QSize> supportedResolutions = tempCamera.supportedViewfinderResolutions();
qDebug() << "Supported Resolutions: ";
for (const QSize& resolution : supportedResolutions) {
qDebug() << resolution.width() << "x" << resolution.height();
}
qDebug() << "\n";
}
return a.exec();
}
请注意,这段代码基于Qt框架,并依赖于QtMultimedia模块。确保在编译时链接正确的Qt库文件,并根据需要进行适当的调整和修改。运行该程序将输出每个摄像头设备的名称、描述以及支持的分辨率列表。
内容由零声教学AI助手提供,问题来源于学员提问