Fixed QtMultimedia port, replaced QSoundEffect by QMediaPlayer as all codecs were not supported by first class.

This commit is contained in:
xawotihs
2014-08-02 17:12:19 +02:00
parent c3d810bd3b
commit ac5c14b977
2 changed files with 12 additions and 12 deletions
+2 -1
View File
@@ -106,7 +106,8 @@ public:
unsigned long fileSize(); unsigned long fileSize();
#ifdef QT_CONFIG #ifdef QT_CONFIG
QSoundEffect effect; QMediaPlayer* effect;
// QSoundEffect effect;
void* mSample; void* mSample;
#elif defined (PSP) #elif defined (PSP)
WAVDATA *mSample; WAVDATA *mSample;
+10 -11
View File
@@ -76,7 +76,10 @@ JSample::JSample()
JSample::~JSample() JSample::~JSample()
{ {
#ifdef USE_PHONON #ifdef QT_CONFIG
if(effect)
delete effect;
#elif USE_PHONON
if(mOutput) if(mOutput)
delete mOutput; delete mOutput;
if(mMediaObject) if(mMediaObject)
@@ -160,7 +163,7 @@ JMusic *JSoundSystem::LoadMusic(const char *fileName)
music->player->setVolume(100); music->player->setVolume(100);
music->playlist = new QMediaPlaylist; music->playlist = new QMediaPlaylist;
music->fullpath = JFileSystem::GetInstance()->GetResourceFile(fileName); music->fullpath = JFileSystem::GetInstance()->GetResourceFile(fileName);
music->playlist->addMedia(QUrl(music->fullpath.c_str())); music->playlist->addMedia(QUrl::fromLocalFile(music->fullpath.c_str()));
music->playlist->setCurrentIndex(0); music->playlist->setCurrentIndex(0);
} }
#elif defined USE_PHONON #elif defined USE_PHONON
@@ -205,12 +208,8 @@ void JSoundSystem::PlayMusic(JMusic *music, bool looping)
if(looping) if(looping)
music->playlist->setPlaybackMode(QMediaPlaylist::Loop); music->playlist->setPlaybackMode(QMediaPlaylist::Loop);
// music->player->setPlaylist(music->playlist); music->player->setPlaylist(music->playlist);
music->player->setMedia(QUrl(music->fullpath.c_str()));
music->player->play(); music->player->play();
stringstream stream;
stream << "Player state : " << music->player->state();
DebugTrace(stream.str());
} }
#elif USE_PHONON #elif USE_PHONON
if (music && music->mMediaObject && music->mOutput) if (music && music->mMediaObject && music->mOutput)
@@ -305,9 +304,9 @@ JSample *JSoundSystem::LoadSample(const char *fileName)
if (sample) if (sample)
{ {
string fullpath = JFileSystem::GetInstance()->GetResourceFile(fileName); string fullpath = JFileSystem::GetInstance()->GetResourceFile(fileName);
sample->effect.setSource(QUrl::fromLocalFile(fullpath.c_str())); sample->effect = new QMediaPlayer;
sample->effect.setLoopCount(0); sample->effect->setMedia(QUrl::fromLocalFile(fullpath.c_str()));
sample->effect.setVolume(1); sample->effect->setVolume(100);
sample->mSample = &(sample->effect); sample->mSample = &(sample->effect);
} }
#elif (defined USE_PHONON) #elif (defined USE_PHONON)
@@ -351,7 +350,7 @@ void JSoundSystem::PlaySample(JSample *sample)
#ifdef QT_CONFIG #ifdef QT_CONFIG
if(sample) if(sample)
{ {
sample->effect.play(); sample->effect->play();
} }
#elif defined USE_PHONON #elif defined USE_PHONON
if (sample && sample->mMediaObject && sample->mOutput) if (sample && sample->mMediaObject && sample->mOutput)