diff options
author | Max Kellermann <max@duempel.org> | 2014-09-26 10:52:46 +0200 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2014-09-26 12:17:47 +0200 |
commit | 3120958a17f1fcbfc90d0c2ee2ede9e31c4cf09d (patch) | |
tree | bf4676aedfb4f6a1a900d8563c2448a30886d558 /src/pcm | |
parent | 052726ed50f1600d5ffca41291528364435ff65e (diff) |
pcm: --disable-dsd also disables the dsd2pcm library
Diffstat (limited to 'src/pcm')
-rw-r--r-- | src/pcm/PcmConvert.cxx | 4 | ||||
-rw-r--r-- | src/pcm/PcmConvert.hxx | 8 |
2 files changed, 11 insertions, 1 deletions
diff --git a/src/pcm/PcmConvert.cxx b/src/pcm/PcmConvert.cxx index bbc5fc638..2b7cfe7f0 100644 --- a/src/pcm/PcmConvert.cxx +++ b/src/pcm/PcmConvert.cxx @@ -109,7 +109,9 @@ PcmConvert::Close() if (enable_resampler) resampler.Close(); +#ifdef ENABLE_DSD dsd.Reset(); +#endif #ifndef NDEBUG src_format.Clear(); @@ -120,6 +122,7 @@ PcmConvert::Close() ConstBuffer<void> PcmConvert::Convert(ConstBuffer<void> buffer, Error &error) { +#ifdef ENABLE_DSD if (src_format.format == SampleFormat::DSD) { auto s = ConstBuffer<uint8_t>::FromVoid(buffer); auto d = dsd.ToFloat(src_format.channels, s); @@ -131,6 +134,7 @@ PcmConvert::Convert(ConstBuffer<void> buffer, Error &error) buffer = d.ToVoid(); } +#endif if (enable_resampler) { buffer = resampler.Resample(buffer, error); diff --git a/src/pcm/PcmConvert.hxx b/src/pcm/PcmConvert.hxx index 9d63e07c9..26ab02923 100644 --- a/src/pcm/PcmConvert.hxx +++ b/src/pcm/PcmConvert.hxx @@ -20,13 +20,17 @@ #ifndef PCM_CONVERT_HXX #define PCM_CONVERT_HXX -#include "PcmDsd.hxx" +#include "check.h" #include "PcmBuffer.hxx" #include "FormatConverter.hxx" #include "ChannelsConverter.hxx" #include "GlueResampler.hxx" #include "AudioFormat.hxx" +#ifdef ENABLE_DSD +#include "PcmDsd.hxx" +#endif + #include <stddef.h> template<typename T> struct ConstBuffer; @@ -39,7 +43,9 @@ class Domain; * conversions. */ class PcmConvert { +#ifdef ENABLE_DSD PcmDsd dsd; +#endif GluePcmResampler resampler; PcmFormatConverter format_converter; |