aboutsummaryrefslogtreecommitdiffstats
path: root/src/pcm/PcmConvert.hxx
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2013-11-30 13:00:41 +0100
committerMax Kellermann <max@duempel.org>2013-11-30 13:00:41 +0100
commit3a666702af9a57c7e8dc5e266b28eaaa5835f5e5 (patch)
tree137fb813f0c7a7fd95c985e95355a07c01715b2f /src/pcm/PcmConvert.hxx
parent3c0c939689e25b56462c12330003f1b5da7b9887 (diff)
downloadmpd-3a666702af9a57c7e8dc5e266b28eaaa5835f5e5.tar.gz
mpd-3a666702af9a57c7e8dc5e266b28eaaa5835f5e5.tar.xz
mpd-3a666702af9a57c7e8dc5e266b28eaaa5835f5e5.zip
pcm/PcmConvert: add AudioFormat parameters
Don't use src_format. In the middle of Convert(), the current AudioFormat has already been modified, it's now something in between src_format and dest_format. This simplifies keeping track of what remains to be done.
Diffstat (limited to 'src/pcm/PcmConvert.hxx')
-rw-r--r--src/pcm/PcmConvert.hxx23
1 files changed, 12 insertions, 11 deletions
diff --git a/src/pcm/PcmConvert.hxx b/src/pcm/PcmConvert.hxx
index 74f4e350c..12c4b26f3 100644
--- a/src/pcm/PcmConvert.hxx
+++ b/src/pcm/PcmConvert.hxx
@@ -52,13 +52,6 @@ class PcmConvert {
AudioFormat src_format, dest_format;
- /**
- * Do we get DSD source data? Then this flag is true and
- * src_format.format is set to SampleFormat::FLOAT, because
- * the #PcmDsd class will convert it to floating point.
- */
- bool is_dsd;
-
public:
PcmConvert();
~PcmConvert();
@@ -92,10 +85,18 @@ public:
Error &error);
private:
- ConstBuffer<int16_t> Convert16(ConstBuffer<void> src, Error &error);
- ConstBuffer<int32_t> Convert24(ConstBuffer<void> src, Error &error);
- ConstBuffer<int32_t> Convert32(ConstBuffer<void> src, Error &error);
- ConstBuffer<float> ConvertFloat(ConstBuffer<void> src, Error &error);
+ ConstBuffer<int16_t> Convert16(ConstBuffer<void> src,
+ AudioFormat format,
+ Error &error);
+ ConstBuffer<int32_t> Convert24(ConstBuffer<void> src,
+ AudioFormat format,
+ Error &error);
+ ConstBuffer<int32_t> Convert32(ConstBuffer<void> src,
+ AudioFormat format,
+ Error &error);
+ ConstBuffer<float> ConvertFloat(ConstBuffer<void> src,
+ AudioFormat format,
+ Error &error);
};
extern const Domain pcm_convert_domain;