aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS2
-rw-r--r--src/decoder/DsfDecoderPlugin.cxx4
2 files changed, 4 insertions, 2 deletions
diff --git a/NEWS b/NEWS
index 998b43e21..a45017ee9 100644
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,6 @@
ver 0.18.2 (2013/??/??)
+* decoder:
+ - dsf: enable DSD128
* fix build failures due to missing includes
ver 0.18.1 (2013/11/04)
diff --git a/src/decoder/DsfDecoderPlugin.cxx b/src/decoder/DsfDecoderPlugin.cxx
index 065bc7958..0507f5047 100644
--- a/src/decoder/DsfDecoderPlugin.cxx
+++ b/src/decoder/DsfDecoderPlugin.cxx
@@ -128,12 +128,12 @@ dsf_read_metadata(Decoder *decoder, InputStream &is,
uint32_t samplefreq = FromLE32(dsf_fmt_chunk.sample_freq);
/* for now, only support version 1 of the standard, DSD raw stereo
- files with a sample freq of 2822400 Hz */
+ files with a sample freq of 2822400 or 5644800 Hz */
if (dsf_fmt_chunk.version != 1 || dsf_fmt_chunk.formatid != 0
|| dsf_fmt_chunk.channeltype != 2
|| dsf_fmt_chunk.channelnum != 2
- || samplefreq != 2822400)
+ || (samplefreq != 2822400 && samplefreq != 5644800))
return false;
uint32_t chblksize = FromLE32(dsf_fmt_chunk.block_size);