diff options
author | Max Kellermann <max@duempel.org> | 2014-01-06 22:42:02 +0100 |
---|---|---|
committer | Max Kellermann <max@duempel.org> | 2014-01-06 23:08:49 +0100 |
commit | c75339edcc8ced25a71ab96a309736986c04465b (patch) | |
tree | 59f152918425469f4da7ce08cf1954d326636688 /src/pcm/FormatConverter.cxx | |
parent | b0b7244b3aa238e22136fd16095e2b8d452b2cec (diff) | |
download | mpd-c75339edcc8ced25a71ab96a309736986c04465b.tar.gz mpd-c75339edcc8ced25a71ab96a309736986c04465b.tar.xz mpd-c75339edcc8ced25a71ab96a309736986c04465b.zip |
pcm/Format: change parameters/return values to ConstBuffer
Diffstat (limited to '')
-rw-r--r-- | src/pcm/FormatConverter.cxx | 53 |
1 files changed, 19 insertions, 34 deletions
diff --git a/src/pcm/FormatConverter.cxx b/src/pcm/FormatConverter.cxx index 8886a8ab0..8ff8b8940 100644 --- a/src/pcm/FormatConverter.cxx +++ b/src/pcm/FormatConverter.cxx @@ -50,9 +50,6 @@ PcmFormatConverter::Close() ConstBuffer<void> PcmFormatConverter::Convert(ConstBuffer<void> src, Error &error) { - const void *result = nullptr; - size_t result_size = 0; - switch (dest_format) { case SampleFormat::UNDEFINED: assert(false); @@ -60,45 +57,33 @@ PcmFormatConverter::Convert(ConstBuffer<void> src, Error &error) case SampleFormat::S8: case SampleFormat::DSD: - result = nullptr; - break; + error.Format(pcm_domain, + "PCM conversion from %s to %s is not implemented", + sample_format_to_string(src_format), + sample_format_to_string(dest_format)); + return nullptr; case SampleFormat::S16: - result = pcm_convert_to_16(buffer, dither, - src_format, - src.data, src.size, - &result_size); - break; + return pcm_convert_to_16(buffer, dither, + src_format, + src).ToVoid(); case SampleFormat::S24_P32: - result = pcm_convert_to_24(buffer, - src_format, - src.data, src.size, - &result_size); - break; + return pcm_convert_to_24(buffer, + src_format, + src).ToVoid(); case SampleFormat::S32: - result = pcm_convert_to_32(buffer, - src_format, - src.data, src.size, - &result_size); - break; + return pcm_convert_to_32(buffer, + src_format, + src).ToVoid(); case SampleFormat::FLOAT: - result = pcm_convert_to_float(buffer, - src_format, - src.data, src.size, - &result_size); - break; - } - - if (result == nullptr) { - error.Format(pcm_domain, - "PCM conversion from %s to %s is not implemented", - sample_format_to_string(src_format), - sample_format_to_string(dest_format)); - return nullptr; + return pcm_convert_to_float(buffer, + src_format, + src).ToVoid(); } - return { result, result_size }; + assert(false); + gcc_unreachable(); } |