aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Input
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/Input')
-rw-r--r--src/plugins/Input/sndfile/decoder_sndfile.cpp3
-rw-r--r--src/plugins/Input/sndfile/decodersndfilefactory.cpp2
2 files changed, 4 insertions, 1 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");
diff --git a/src/plugins/Input/sndfile/decodersndfilefactory.cpp b/src/plugins/Input/sndfile/decodersndfilefactory.cpp
index 8f428cc8d..771317abb 100644
--- a/src/plugins/Input/sndfile/decodersndfilefactory.cpp
+++ b/src/plugins/Input/sndfile/decodersndfilefactory.cpp
@@ -62,7 +62,7 @@ const DecoderProperties DecoderSndFileFactory::properties() const
DecoderProperties properties;
properties.name = tr("Sndfile Plugin");
properties.filters << "*.wav" << "*.au" << "*.snd" << "*.aif" << "*.aiff" << "*.8svx";
- properties.filters << "*.sph" << "*.sf" << "*.voc";
+ properties.filters << "*.sph" << "*.sf" << "*.voc" << "*.w64";
properties.description = tr("PCM Files");
//properties.contentType = "";
properties.shortName = "sndfile";