diff options
author | Max Kellermann <max@musicpd.org> | 2017-01-17 11:02:11 +0100 |
---|---|---|
committer | Max Kellermann <max@musicpd.org> | 2017-01-17 22:01:01 +0100 |
commit | de3e0585f1b32215861d5d7bb6629882562a2493 (patch) | |
tree | f93ce92f06511281b6bcdf009869c164def29fe4 /src/AudioFormat.hxx | |
parent | f85f25ba82bcef57fc7824d7b4b3f05683286c00 (diff) |
AudioFormat: move enum SampleFormat to pcm/SampleFormat.hxx
Diffstat (limited to 'src/AudioFormat.hxx')
-rw-r--r-- | src/AudioFormat.hxx | 99 |
1 files changed, 1 insertions, 98 deletions
diff --git a/src/AudioFormat.hxx b/src/AudioFormat.hxx index 905dd5229..f39dc21e7 100644 --- a/src/AudioFormat.hxx +++ b/src/AudioFormat.hxx @@ -20,48 +20,12 @@ #ifndef MPD_AUDIO_FORMAT_HXX #define MPD_AUDIO_FORMAT_HXX +#include "pcm/SampleFormat.hxx" #include "Compiler.h" #include <stdint.h> #include <assert.h> -#if defined(WIN32) && GCC_CHECK_VERSION(4,6) -/* on WIN32, "FLOAT" is already defined, and this triggers -Wshadow */ -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wshadow" -#endif - -enum class SampleFormat : uint8_t { - UNDEFINED = 0, - - S8, - S16, - - /** - * Signed 24 bit integer samples, packed in 32 bit integers - * (the most significant byte is filled with the sign bit). - */ - S24_P32, - - S32, - - /** - * 32 bit floating point samples in the host's format. The - * range is -1.0f to +1.0f. - */ - FLOAT, - - /** - * Direct Stream Digital. 1-bit samples; each frame has one - * byte (8 samples) per channel. - */ - DSD, -}; - -#if defined(WIN32) && GCC_CHECK_VERSION(4,6) -#pragma GCC diagnostic pop -#endif - static constexpr unsigned MAX_CHANNELS = 8; /** @@ -202,28 +166,6 @@ audio_valid_sample_rate(unsigned sample_rate) } /** - * Checks whether the sample format is valid. - */ -static inline bool -audio_valid_sample_format(SampleFormat format) -{ - switch (format) { - case SampleFormat::S8: - case SampleFormat::S16: - case SampleFormat::S24_P32: - case SampleFormat::S32: - case SampleFormat::FLOAT: - case SampleFormat::DSD: - return true; - - case SampleFormat::UNDEFINED: - break; - } - - return false; -} - -/** * Checks whether the number of channels is valid. */ static constexpr inline bool @@ -258,34 +200,6 @@ AudioFormat::IsMaskValid() const (channels == 0 || audio_valid_channel_count(channels)); } -gcc_const -static inline unsigned -sample_format_size(SampleFormat format) -{ - switch (format) { - case SampleFormat::S8: - return 1; - - case SampleFormat::S16: - return 2; - - case SampleFormat::S24_P32: - case SampleFormat::S32: - case SampleFormat::FLOAT: - return 4; - - case SampleFormat::DSD: - /* each frame has 8 samples per channel */ - return 1; - - case SampleFormat::UNDEFINED: - return 0; - } - - assert(false); - gcc_unreachable(); -} - inline unsigned AudioFormat::GetSampleSize() const { @@ -305,17 +219,6 @@ AudioFormat::GetTimeToSize() const } /** - * Renders a #SampleFormat enum into a string, e.g. for printing it - * in a log file. - * - * @param format a #SampleFormat enum value - * @return the string - */ -gcc_pure gcc_malloc -const char * -sample_format_to_string(SampleFormat format); - -/** * Renders the #AudioFormat object into a string, e.g. for printing * it in a log file. * |