Проблема с подключением к камере в Qt CPP - PullRequest
0 голосов
/ 09 мая 2020

Я запускаю простую программу в Qt Creator для подключения к камере. Когда я запускаю программу, появляется следующая проблема:

График не смог подключить фильтры -2147467259 [0x0] Не удалось подключить граф (операция успешно завершена.)

Может кто-нибудь сказать мне, что проблема в?! Любое решение будет оценено по достоинству. Спасибо

1 Ответ

0 голосов
/ 09 мая 2020

Я перешел по указанной вами ссылке. Но я не понял точного способа решения проблемы.

Вот код, который я использовал для подключения к камере:

#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);

    connected = false;
    camera = new QCamera();

    qDebug() << "Number of cameras found:" << QCameraInfo::availableCameras().count();

    QList<QCameraInfo> cameras = QCameraInfo::availableCameras();
    foreach (const QCameraInfo &cameraInfo, cameras)
    {
        qDebug() << "Camera info:" << cameraInfo.deviceName() << cameraInfo.description() << cameraInfo.position();
        ui->comboBox->addItem(cameraInfo.description());
    }
}

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

void MainWindow::on_pushButton_clicked()
{
    if(!connected)
        connectCamera();
    else {
        camera->stop();
        viewfinder->deleteLater();
        ui->pushButton->setText("Connect");
        connected = false;
    }
}

void MainWindow::connectCamera()
{
    QList<QCameraInfo> cameras = QCameraInfo::availableCameras();

    foreach (const QCameraInfo &cameraInfo, cameras)
    {
        qDebug() << cameraInfo.description() << ui->comboBox->currentText();
        if(cameraInfo.description()==ui->comboBox->currentText()) {
            camera = new QCamera(cameraInfo, this);
            viewfinder = new QCameraViewfinder(this);
            camera->setViewfinder(viewfinder);

            ui->horizontalLayout_2->addWidget(viewfinder);

            connected = true;
            ui->pushButton->setText("Disconnect");
            camera->start();
            return;
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...