[alsa-devel] [PATCH v3 0/5] ALSA: snd-usb: add support for DSD

Daniel Mack zonque at gmail.com
Tue Apr 16 18:01:35 CEST 2013

In contrast to the first two approaches, this one keeps the userspace
unaware of the actual transport on the bus.

More specifically, the DSD_U16_LE format may be implemented to actually
send DOP samples to the device, depending on the quirks entries.

Also, as there is quite some confusion in both data file formats as
well as hardware sample formats about whether to stuff the oldest bit
in the MSB or the LSB of a byte, ALSA defines that now to be in the
MSB, as far as the ALSA userspace layer is concerned. The driver
learned functions to re-encode the bytes according to what the hardware

I also wrote a very basic test tool which I published here:



Daniel Mack (5):
  ALSA: add DSD formats
  ALSA: snd-usb: use ep->stride from urb callbacks
  ALSA: snd-usb: add support for DSD DOP stream transport
  ALSA: snd-usb: add support for bit-reversed byte formats
  ALSA: snd-usb: add quirks handler for DSD streams

 include/sound/pcm.h         |    2 +
 include/uapi/sound/asound.h |    4 +-
 sound/core/pcm.c            |    2 +
 sound/core/pcm_misc.c       |    8 +++
 sound/usb/card.h            |    8 +++
 sound/usb/endpoint.c        |    9 ++++
 sound/usb/format.c          |    3 ++
 sound/usb/pcm.c             |  118 ++++++++++++++++++++++++++++++++++++-------
 sound/usb/quirks.c          |   28 ++++++++++
 sound/usb/quirks.h          |    4 ++
 10 files changed, 167 insertions(+), 19 deletions(-)


More information about the Alsa-devel mailing list