diff options
author | Jurgen Kramer <gtmkramer@xs4all.nl> | 2014-07-04 14:15:09 +0200 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2014-08-16 18:40:53 +0200 |
commit | 9b9d189a333705818783e51da10d21511379124f (patch) | |
tree | becd8f1e7d541e93d504f1779a0dd221064cdec4 /src/decoder/plugins/DsdLib.cxx | |
parent | 7c3af4f56f7171aacbe9bd26f2b30bb4f94e88f2 (diff) | |
download | mpd-9b9d189a333705818783e51da10d21511379124f.tar.gz mpd-9b9d189a333705818783e51da10d21511379124f.tar.xz mpd-9b9d189a333705818783e51da10d21511379124f.zip |
decoder/dsf: Allow up to DSD512. Enable DSD rates based on Fs=48kHz
Diffstat (limited to 'src/decoder/plugins/DsdLib.cxx')
-rw-r--r-- | src/decoder/plugins/DsdLib.cxx | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/decoder/plugins/DsdLib.cxx b/src/decoder/plugins/DsdLib.cxx index 0f10b20e9..086f9d4d6 100644 --- a/src/decoder/plugins/DsdLib.cxx +++ b/src/decoder/plugins/DsdLib.cxx @@ -82,6 +82,25 @@ dsdlib_skip(Decoder *decoder, InputStream &is, return decoder_skip(decoder, is, delta); } +bool +dsdlib_valid_freq(uint32_t samplefreq) +{ + switch (samplefreq) { + case 2822400: /* DSD64, 64xFs, Fs = 44.100kHz */ + case 3072000: /* DSD64 with Fs = 48.000 kHz */ + case 5644800: + case 6144000: + case 11289600: + case 12288000: + case 22579200:/* DSD512 */ + case 24576000: + return true; + + default: + return false; + } +} + #ifdef HAVE_ID3TAG void dsdlib_tag_id3(InputStream &is, |