PDA

View Full Version : Background music



hema
19th April 2011, 18:39
i am beginner for qt
i want to play background music in my app.i have used phonon api.when i tried to run no error and no music.
Mainwindow.cpp
Phonon::MediaObject *mediaObject=new Phonon::MediaObject(this);
Phonon::AudioOutput *audioOutput=new Phonon::AudioOutput(Phonon::MusicCategory,this);
Phonon::createPath(mediaObject,audioOutput);
QString fileName("Kalimba.mp3");
mediaObject->setCurrentSource(fileName);
mediaObject->play();
main.cpp
QApplication a(argc, argv);
Q_INIT_RESOURCE(BmiRc);
MainWindow w;
w.show();
return a.exec();
help me in correction of my app.

squidge
19th April 2011, 19:27
Please post the full files, using code tags.

hema
20th April 2011, 04:43
mainwindow.cpp


#include "mainwindow.h"
#include <Phonon/MediaObject>
#include <Phonon/AudioOutput>
#include <Phonon/MediaSource>
#include <Phonon/BackendCapabilities>

MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
qDebug()<<"sample program";
qDebug() << Phonon::BackendCapabilities::availableAudioOutputD evices();

Phonon::MediaObject *mediaObject=new Phonon::MediaObject(this);
Phonon::AudioOutput *audioOutput=new Phonon::AudioOutput(Phonon::MusicCategory,this);
Phonon::createPath(mediaObject,audioOutput);
qDebug()<<"playing";
QString fileName("/Kalimba.mp3");
mediaObject->setCurrentSource(fileName);

qDebug()<<"played";
connect(mediaObject,SIGNAL(aboutToFinish()),SLOT(c lose()));
mediaObject->play();
}
void close()
{
qDebug()<<"closed";
}

MainWindow::~MainWindow()
{

}



main.cpp




#include <QtGui/QApplication>
#include "mainwindow.h"

int main(int argc, char *argv[])
{
QApplication a(argc, argv);
Q_INIT_RESOURCE(rsc3);
a.setApplicationName("Sample Program");
a.setQuitOnLastWindowClosed(true);

MainWindow w;
w.show();

return a.exec();
}




output


sample program
("Default DirectSound Device", "DirectSound: Speakers / Headphones (IDT High Definition Audio CODEC)", "Speakers / Headphones (IDT High", "{4672319F-A9E7-4557-B6D3-D375388A529B}", "Default WaveOut Device")
playing
played