diff options
author | Lennart Poettering <lennart@poettering.net> | 2009-05-25 23:49:47 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2009-05-25 23:49:47 +0200 |
commit | 346a708c2c079e646ced407ea15b1475ae9129ad (patch) | |
tree | 59165ee8221f69c8d873291ffcf3e889843dfaf8 /src/pulse/sample.c | |
parent | 3533599579b64d7124451bd60ea57c6f70dd9f35 (diff) |
sample: introduce pa_sample_format_is_{le,be,ne,re}()
Diffstat (limited to 'src/pulse/sample.c')
-rw-r--r-- | src/pulse/sample.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/pulse/sample.c b/src/pulse/sample.c index ed7b1b08..0f19f8eb 100644 --- a/src/pulse/sample.c +++ b/src/pulse/sample.c @@ -241,3 +241,36 @@ pa_sample_format_t pa_parse_sample_format(const char *format) { return -1; } + +int pa_sample_format_is_le(pa_sample_format_t f) { + pa_assert(f >= PA_SAMPLE_U8); + pa_assert(f < PA_SAMPLE_MAX); + + switch (f) { + case PA_SAMPLE_S16LE: + case PA_SAMPLE_S24LE: + case PA_SAMPLE_S32LE: + case PA_SAMPLE_S24_32LE: + case PA_SAMPLE_FLOAT32LE: + return 1; + + case PA_SAMPLE_S16BE: + case PA_SAMPLE_S24BE: + case PA_SAMPLE_S32BE: + case PA_SAMPLE_S24_32BE: + case PA_SAMPLE_FLOAT32BE: + return 0; + + default: + return -1; + } +} + +int pa_sample_format_is_be(pa_sample_format_t f) { + int r; + + if ((r = pa_sample_format_is_le(f)) < 0) + return r; + + return !r; +} |