aboutsummaryrefslogtreecommitdiffstats
path: root/src/audio_parser.c
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2011-10-08 10:25:06 +0200
committerMax Kellermann <max@duempel.org>2011-10-20 02:32:39 +0200
commit545685bc3209d9cfdf6c4b9aeee4715edd453dc1 (patch)
treea8c1eea32702dcb319bae836581f1938c8bc6152 /src/audio_parser.c
parent13ad2b4dc2a11ab7bad3703cdca050dd55243b6b (diff)
downloadmpd-545685bc3209d9cfdf6c4b9aeee4715edd453dc1.tar.gz
mpd-545685bc3209d9cfdf6c4b9aeee4715edd453dc1.tar.xz
mpd-545685bc3209d9cfdf6c4b9aeee4715edd453dc1.zip
audio_format: basic support for floating point samples
Support for conversion from float to 16, 24 and 32 bit integer samples.
Diffstat (limited to 'src/audio_parser.c')
-rw-r--r--src/audio_parser.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/audio_parser.c b/src/audio_parser.c
index 80bf9a5d7..8875239e1 100644
--- a/src/audio_parser.c
+++ b/src/audio_parser.c
@@ -81,6 +81,12 @@ parse_sample_format(const char *src, bool mask,
return true;
}
+ if (*src == 'f') {
+ *sample_format_r = SAMPLE_FORMAT_FLOAT;
+ *endptr_r = src + 1;
+ return true;
+ }
+
value = strtoul(src, &endptr, 10);
if (endptr == src) {
g_set_error(error_r, audio_parser_quark(), 0,