axelvdk
Messages postés41Date d'inscriptiondimanche 26 août 2012StatutMembreDernière intervention30 mai 2013
-
5 janv. 2013 à 15:36
axelvdk
Messages postés41Date d'inscriptiondimanche 26 août 2012StatutMembreDernière intervention30 mai 2013
-
5 janv. 2013 à 17:00
Bonjour,
J'essaye de coder un lecteur Audio tout simple, avec une fenêtre où il y a deux boutons (play / stop). Malheureusement, j'ai ce message d'erreur qui revient : iso c++ forbids declaration of 'QAudioOutPut' with no type.
J'utilise Qt creator et j'ai suivi le code qu'il donne sur le site de doc de Qt (digia.com) pour créer ce que j'ai fait.
Voici le mainwindow.h :
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QAudioOutput>
#include <QFile>
#include <QAudioFormat>
#include <QAudioDeviceInfo>
class QAudioOutput;
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
public slots :
void pushPlay();
void pushStop();
private:
Ui::MainWindow *ui;
QFile chanson;
QAudioOutPut *audio ; // c'est concernant cette ligne que le //msg d'erreur apparaît, il ajoute aussi un : expected ; before * token
QAudioFormat format;
};
#endif // MAINWINDOW_H
Et le mainwindow.cpp :
#include "mainwindow.h"
#include "ui_mainwindow.h"
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow :: pushPlay()
{
QFile chanson;
QAudioOutPut *audio;
chanson.setFileName("C:/Ticket.MPEG3");
chanson.open(QIODevice::ReadOnly);
QAudioFormat format;
format.setFrequency(8000);
format.setChannels(1);
format.setSampleSize(8);
format.setCodec("audio/pcm");
format.setByteOrder(QAudioFormat::LittleEndian);
format.setSampleType(QAudioFormat::UnSignedInt);
QAudioDeviceInfo info(QAudioDeviceInfo::defaultOutputDevice());
if (!info.isFormatSupported(format))
{
qWarning()<<"MPEG3 est un format pas supporté par ce lecteur" ;
return;
}
audio = new QAudioFormat(format,this);
auio->start(&chanson);
}
void MainWindow :: pushStop()
{
}
J'ai mis tout le code mais c'est sans doute pas nécessaire. J'ai plusieurs fois regarder sur le net pour corriger ce prob mais les solutions données pour ce message d'erreur sont multiples et aucune n'ont fonctionné. J'ai vraiment pas d'idées mais je pense que le code mis est correcte, il est tiré du site, j'imagine que l'erreur se trouve au niveau du fichier h ou de l'entête du cpp.
Dans mon fichier .pro, j'ai ajouter la ligne Qt +=multimedia; sans succes...
Si quelqu'un avait une piste, ce serait vraiment sympa de m'en faire part.
Un grand merci de m'avoir lu,
Axel
Les petits ruisseaux font les grands fleuves...
A voir également:
Error: no type named ‘type’ in ‘struct std::enable_if<false, std::basic_ostream<char>&>’
axelvdk
Messages postés41Date d'inscriptiondimanche 26 août 2012StatutMembreDernière intervention30 mai 20131 5 janv. 2013 à 17:00
J'ai trouvé moi-même la solution (je vais d'ailleurs me récompenser en mangeant un chocolat... :-))
Le QAudioOutPut comme je l'avais déclarer s'écrit QAudioOutput...
Ca ne marche pas malgré tout mais y a plus de message d'erreur