【QT】QT调用电脑摄像头并拍照
建议搭配视频食用:
【【QT】QT调用电脑摄像头并拍照】 https://www.bilibili.com/video/BV1pc411G7qy/?share_source=copy_web&vd_source=c0d9dd4e64b88e4dbf93ac009c2010dc
一、在pro文件中添加‘multimedia multimediawidgets’
二、在ui界面创建一个widget并改名为camera用于展示摄像头内容和pushbutton 用于拍照,并右键pushbutton点击转到槽备用
三、对.h文件的操作
添加头文件
//摄像头 #include <QCameraImageCapture> #include <QCamera>
在private中创建两个摄像头对象
//创建两个摄像头对象 QCamera *ca; QCameraImageCapture *capture;
四、对.cpp文件的操作
添加头文件
//调用摄像头 #include <QCameraInfo> #include <QCamera> #include <QCameraViewfinder> #include <QCameraImageCapture> #include <QPixmap> //弹窗 #include <QMessageBox>
编写调用摄像头代码
//获取可用摄像头设备并输出在控制台 QList<QCameraInfo> infos = QCameraInfo::availableCameras(); qDebug() << infos.value(0).deviceName() << ":" <<infos.value(0).description(); QString camera = infos.value(0).deviceName(); qDebug() << camera; //显示摄像头 ca =new QCamera(camera.toUtf8() ,this ); ui->camera->show(); QCameraViewfinder *v2 = new QCameraViewfinder(ui->camera); v2->resize(ui->camera->size()); ca->setViewfinder(v2); v2->show(); ca->start();
编写点击按钮时的拍照代码
五、最后运行
补档
添加头文件
#include <QDateTime>
将点击事件函数改为如下格式