Veuillez vous connecter ou créer un compte pour suivre ce topic
Ce topic est suivi par: coucougael94, Jerem971
Auteur Sujet: [Qt|Android|Win]Stocker dans une QImage une photo

coucougael94

Messages: 103

Salut a tous, je cherche avec l'appareil photo a l'arrière d'un androïde, a prendre une photo et a la stocker dans une QImage.
C'est ce que j'ai tenté de faire, ma webcam se lance puis rien ...
#include "mainwindow.h"#include "ui_mainwindow.h"

#include <QCamera>
#include <QCameraImageCapture>
#include <QMessageBox>
#include <QMediaRecorder>

MainWindow::MainWindow(QWidget *parent) :
   QMainWindow(parent),
   ui(new Ui::MainWindow)
{
   ui->setupUi(this);
   camera = new QCamera(QCamera::BackFace);//Position
   camera->load();

   //viewfinder->show();

   camera->start(); // to start the viewfinder
   imageCapture=new QCameraImageCapture(camera);

   camera->setCaptureMode(QCamera::CaptureStillImage);

   imageCapture->setCaptureDestination(QCameraImageCapture::CaptureToBuffer);
   if(imageCapture->availability()==QMultimedia::ServiceMissing)
      QMessageBox::information(this, QObject::tr("Erreur"), QObject::tr("La caméra (a l'arrière) n'a pas l'air fonctionnel, nos service ne la détecte pas."));
   else if(imageCapture->availability()==QMultimedia::ResourceError)
      QMessageBox::information(this, QObject::tr("Erreur"), QObject::tr("Le service n'a pas pu allouer les ressources requises pour fonctionner correctement."));

   QObject::connect(camera,SIGNAL(imageCaptured(int,QImage)),this, SLOT(photoSuccess(int,QImage)));

   imageCapture->capture(); // to start the viewfinder
QMessageBox::information(this, QObject::tr("Erreur"), QObject::tr("La caméra (a l'arrière) n'a pas l'air fonctionnel, nos service ne la détecte pas."));

}
void MainWindow:hotoSuccess(int id, const QImage &preview)
{
   ui->label->setPixmap(QPixmap::fromImage(preview));
   ui->label->setPixmap(QPixmap("tmp.img"));
}

MainWindow::~MainWindow()
{camera->stop();
   delete ui;
}

void MainWindow::on_pushButton_clicked()
{
   imageCapture->capture("tmp.img"); // to start the viewfinder
}
Je me perd beaucoup dans les docs...
Je précise que je développe pour finir sur android et que je ne connais pas android (c'est la première fois que je développe pour androïde).
Merci de votre aide.


Vous devez vous connecter ou créer un compte pour poster une réponse