From 18e975fc5ef68a89875c77974570884b9214a009 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Mon, 20 Jul 2009 17:34:17 +0200 Subject: merged --- src/pulse/sample.c | 41 +++++++++++++++++++++++++++++++++++++---- 1 file changed, 37 insertions(+), 4 deletions(-) (limited to 'src/pulse/sample.c') diff --git a/src/pulse/sample.c b/src/pulse/sample.c index 1e67b037..0f19f8eb 100644 --- a/src/pulse/sample.c +++ b/src/pulse/sample.c @@ -231,13 +231,46 @@ pa_sample_format_t pa_parse_sample_format(const char *format) { else if (strcasecmp(format, "s24re") == 0) return PA_SAMPLE_S24RE; else if (strcasecmp(format, "s24-32le") == 0) - return PA_SAMPLE_S24LE; + return PA_SAMPLE_S24_32LE; else if (strcasecmp(format, "s24-32be") == 0) - return PA_SAMPLE_S24BE; + return PA_SAMPLE_S24_32BE; else if (strcasecmp(format, "s24-32ne") == 0 || strcasecmp(format, "s24-32") == 0) - return PA_SAMPLE_S24NE; + return PA_SAMPLE_S24_32NE; else if (strcasecmp(format, "s24-32re") == 0) - return PA_SAMPLE_S24RE; + return PA_SAMPLE_S24_32RE; 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; +} -- cgit