aboutsummaryrefslogtreecommitdiffstats
path: root/src/audio_format.h
diff options
context:
space:
mode:
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 2c86b70b9..5bb2ed9fb 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: