aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Input/sndfile/decoder_sndfile.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/Input/sndfile/decoder_sndfile.cpp')
-rw-r--r--src/plugins/Input/sndfile/decoder_sndfile.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/plugins/Input/sndfile/decoder_sndfile.cpp b/src/plugins/Input/sndfile/decoder_sndfile.cpp
index 9195a8469..a5a8f93fc 100644
--- a/src/plugins/Input/sndfile/decoder_sndfile.cpp
+++ b/src/plugins/Input/sndfile/decoder_sndfile.cpp
@@ -65,6 +65,9 @@ bool DecoderSndFile::initialize()
m_totalTime = snd_info.frames * 1000 / m_freq;
m_bitrate = QFileInfo(m_path).size () * 8.0 / m_totalTime + 0.5;
+ if((snd_info.format & SF_FORMAT_SUBMASK) == SF_FORMAT_FLOAT)
+ sf_command (m_sndfile, SFC_SET_SCALE_FLOAT_INT_READ, NULL, SF_TRUE);
+
configure(m_freq, chan, Qmmp::PCM_S16LE);
qDebug("DecoderSndFile: detected format: %08X", snd_info.format);
qDebug("DecoderSndFile: initialize succes");