C 语言

关注公众号 jb51net

关闭
首页 > 软件编程 > C 语言 > QT连接USB摄像头

使用QT连接USB摄像头的方法

作者:vhcjgc

这篇文章主要为大家详细介绍了使用QT连接USB摄像头的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了使用QT连接USB摄像头的具体代码,供大家参考,具体内容如下

功能:使用QT连接USB摄像头,点击按钮显示画面

QT += multimedia
QT += multimediawidgets

#include "camera.h"
#include "ui_camera.h"

Camera::Camera(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Camera)
{
    ui->setupUi(this);
    iniCamera();
}

Camera::~Camera()
{
    delete ui;
}

void Camera::iniCamera()
{

    cameras = QCameraInfo::availableCameras();//获取摄像头列表
    qDebug()<<cameras.size();

    for(int i = 0;i<cameras.size();i++)
        ui->comboCamera->addItem(cameras[i].description());//摄像头描述

}

void Camera::on_camStartBtn_clicked()
{
    curCamera=new QCamera(cameras[ui->comboCamera->currentIndex()],this);//新建QCamera
    curCamera->setViewfinder(ui->widget); //设置取景框预览
    curCamera->start();
}
#ifndef CAMERA_H
#define CAMERA_H

#include <QWidget>
#include <QCameraInfo>
#include <QCamera>
#include <QLabel>

#include <QCameraViewfinder>
#include <QCameraImageCapture>
#include <QMediaRecorder>

namespace Ui {
class Camera;
}

class Camera : public QWidget
{
    Q_OBJECT

public:
    explicit Camera(QWidget *parent = nullptr);
    ~Camera();
    void iniCamera();//摄像头初始化

    QCamera *curCamera=Q_NULLPTR;//
    QList<QCameraInfo> cameras;//可用相机列表

    QCameraImageCapture *imageCapture; //抓图
    QMediaRecorder* mediaRecorder;//录像

private slots:
    void on_camStartBtn_clicked();

private:
    Ui::Camera *ui;
};

#endif // CAMERA_H

实现效果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文