aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2009-12-17 21:26:32 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2009-12-17 21:26:32 +0000
commit53cf6a45c775f5e1d9b7d99bb86f14b64a9b47a8 (patch)
tree49ab7a726facf76ccc697b2f554420d6317a06e9
parent234f6abfa30c49535ee2e2683121fc99aa20a1a1 (diff)
downloadqmmp-53cf6a45c775f5e1d9b7d99bb86f14b64a9b47a8.tar.gz
qmmp-53cf6a45c775f5e1d9b7d99bb86f14b64a9b47a8.tar.bz2
qmmp-53cf6a45c775f5e1d9b7d99bb86f14b64a9b47a8.zip
fixed bug with equalizer
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@1447 90c681e8-e032-0410-971d-27865f9a5e38
-rw-r--r--src/qmmp/abstractengine.cpp5
-rw-r--r--src/qmmp/abstractengine.h3
-rw-r--r--src/qmmp/soundcore.cpp8
3 files changed, 14 insertions, 2 deletions
diff --git a/src/qmmp/abstractengine.cpp b/src/qmmp/abstractengine.cpp
index be7c0c4e3..400551480 100644
--- a/src/qmmp/abstractengine.cpp
+++ b/src/qmmp/abstractengine.cpp
@@ -40,6 +40,11 @@ QWaitCondition *AbstractEngine::cond()
return &m_waitCondition;
}
+void AbstractEngine::setReplayGainSettings(const ReplayGainSettings &settings)
+{
+ Q_UNUSED(settings);
+}
+
// static methods
QList<EngineFactory*> *AbstractEngine::m_factories = 0;
QStringList AbstractEngine::m_files;
diff --git a/src/qmmp/abstractengine.h b/src/qmmp/abstractengine.h
index cdb005310..679230350 100644
--- a/src/qmmp/abstractengine.h
+++ b/src/qmmp/abstractengine.h
@@ -26,6 +26,7 @@
#include <QThread>
#include <QStringList>
#include "enginefactory.h"
+#include "replaygainsettings.h"
class QIODevice;
class InputSource;
@@ -85,6 +86,8 @@ public:
* Subclass with own equalizer should reimplement this function.
*/
virtual void setEQEnabled(bool on) = 0;
+
+ virtual void setReplayGainSettings(const ReplayGainSettings &settings);
/*!
* Returns a list of decoder factories.
*/
diff --git a/src/qmmp/soundcore.cpp b/src/qmmp/soundcore.cpp
index 5f7f17987..10809c1c6 100644
--- a/src/qmmp/soundcore.cpp
+++ b/src/qmmp/soundcore.cpp
@@ -243,6 +243,7 @@ bool SoundCore::enqueue(InputSource *s)
setEQ(m_bands, m_preamp);
setEQEnabled(m_useEQ);
+ setReplayGainSettings(m_replayGainSettings);
if(m_engine->enqueue(s))
{
m_source = s->url();
@@ -279,6 +280,9 @@ bool SoundCore::enqueue(InputSource *s)
return FALSE;
}
connect(engine, SIGNAL(playbackFinished()), SIGNAL(finished()));
+ engine->setEQ(m_bands, m_preamp);
+ engine->setEQEnabled(m_useEQ);
+ engine->setReplayGainSettings(m_replayGainSettings);
if (m_handler->state() == Qmmp::Playing || m_handler->state() == Qmmp::Paused)
{
if(m_pendingEngine)
@@ -292,9 +296,7 @@ bool SoundCore::enqueue(InputSource *s)
m_engine->play();
m_pendingEngine = 0;
}
- return FALSE;
}
-
return TRUE;
}
@@ -318,6 +320,8 @@ ReplayGainSettings SoundCore::replayGainSettings() const
void SoundCore::setReplayGainSettings(const ReplayGainSettings &settings)
{
m_replayGainSettings = settings;
+ if(m_engine)
+ m_engine->setReplayGainSettings(settings);
}
SoundCore* SoundCore::instance()