aboutsummaryrefslogtreecommitdiff
path: root/src/audio_format.h
diff options
context:
space:
mode:
authorMax Kellermann <max@duempel.org>2012-03-18 18:33:26 +0100
committerMax Kellermann <max@duempel.org>2012-03-19 23:49:29 +0100
commit08ce24ec3fb094f653b3f3421388edec02f1dced (patch)
tree30a4bfc4a4e88521b48396396bcff3416a9b5211 /src/audio_format.h
parent281b8714efbf930a80eb3ab6056240ae0882aa22 (diff)
audio_format: basic support for DSD-over-USB
Diffstat (limited to 'src/audio_format.h')
-rw-r--r--src/audio_format.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/audio_format.h b/src/audio_format.h
index 2c86b70b..5bb2ed9f 100644
--- a/src/audio_format.h
+++ b/src/audio_format.h
@@ -61,6 +61,13 @@ enum sample_format {
* comes first.
*/
SAMPLE_FORMAT_DSD_LSBFIRST,
+
+ /**
+ * DSD packed in 24 bit samples (no padding), according to the
+ * dCS suggested standard:
+ * http://www.dcsltd.co.uk/page/assets/DSDoverUSB.pdf
+ */
+ SAMPLE_FORMAT_DSD_OVER_USB,
};
static const unsigned MAX_CHANNELS = 8;
@@ -189,6 +196,7 @@ audio_valid_sample_format(enum sample_format format)
case SAMPLE_FORMAT_FLOAT:
case SAMPLE_FORMAT_DSD:
case SAMPLE_FORMAT_DSD_LSBFIRST:
+ case SAMPLE_FORMAT_DSD_OVER_USB:
return true;
case SAMPLE_FORMAT_UNDEFINED:
@@ -258,6 +266,7 @@ sample_format_size(enum sample_format format)
return 2;
case SAMPLE_FORMAT_S24:
+ case SAMPLE_FORMAT_DSD_OVER_USB:
return 3;
case SAMPLE_FORMAT_S24_P32: