aboutsummaryrefslogtreecommitdiffstats
path: root/src/audio_parser.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/audio_parser.c')
-rw-r--r--src/audio_parser.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/audio_parser.c b/src/audio_parser.c
index 8875239e1..7061e0e00 100644
--- a/src/audio_parser.c
+++ b/src/audio_parser.c
@@ -87,6 +87,18 @@ parse_sample_format(const char *src, bool mask,
return true;
}
+ if (memcmp(src, "dsd", 3) == 0) {
+ if (src[3] == 'l') {
+ *sample_format_r = SAMPLE_FORMAT_DSD_LSBFIRST;
+ *endptr_r = src + 4;
+ } else {
+ *sample_format_r = SAMPLE_FORMAT_DSD;
+ *endptr_r = src + 3;
+ }
+
+ return true;
+ }
+
value = strtoul(src, &endptr, 10);
if (endptr == src) {
g_set_error(error_r, audio_parser_quark(), 0,