aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/plugins/Input/cue/decoder_cue.cpp6
-rw-r--r--src/qmmp/decoder.cpp5
-rw-r--r--src/qmmp/decoder.h5
3 files changed, 12 insertions, 4 deletions
diff --git a/src/plugins/Input/cue/decoder_cue.cpp b/src/plugins/Input/cue/decoder_cue.cpp
index 226e0749e..14df92942 100644
--- a/src/plugins/Input/cue/decoder_cue.cpp
+++ b/src/plugins/Input/cue/decoder_cue.cpp
@@ -1,5 +1,5 @@
/***************************************************************************
- * Copyright (C) 2008-2014 by Ilya Kotov *
+ * Copyright (C) 2008-2016 by Ilya Kotov *
* forkotov02@hotmail.ru *
* *
* This program is free software; you can redistribute it and/or modify *
@@ -96,9 +96,7 @@ bool DecoderCUE::initialize()
}
m_decoder->seek(m_offset);
- configure(m_decoder->audioParameters().sampleRate(),
- m_decoder->audioParameters().channelMap(),
- m_decoder->audioParameters().format());
+ configure(m_decoder->audioParameters());
setReplayGainInfo(m_parser->replayGain(m_track));
length_in_bytes = audioParameters().sampleRate() *
audioParameters().channels() *
diff --git a/src/qmmp/decoder.cpp b/src/qmmp/decoder.cpp
index 5acdb0991..e1014ab62 100644
--- a/src/qmmp/decoder.cpp
+++ b/src/qmmp/decoder.cpp
@@ -42,6 +42,11 @@ void Decoder::configure(quint32 srate, int channels, Qmmp::AudioFormat f)
m_parameters = AudioParameters(srate, ChannelMap(channels), f);
}
+void Decoder::configure(const AudioParameters &p)
+{
+ m_parameters = p;
+}
+
void Decoder::next()
{}
diff --git a/src/qmmp/decoder.h b/src/qmmp/decoder.h
index 87412b502..eff341e13 100644
--- a/src/qmmp/decoder.h
+++ b/src/qmmp/decoder.h
@@ -170,6 +170,11 @@ protected:
* @param f Audio format.
*/
void configure(quint32 srate, int channels, Qmmp::AudioFormat f = Qmmp::PCM_S16LE);
+ /*!
+ * Use this function inside initialize() reimplementation to tell other plugins about audio parameters.
+ * @param p Audio parameters.
+ */
+ void configure(const AudioParameters &p);
private:
static void loadPlugins();