On 17.04.2013 12:59, Takashi Iwai wrote:
At Wed, 17 Apr 2013 00:01:35 +0800, Daniel Mack wrote:
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 supports.
I also wrote a very basic test tool which I published here:
https://github.com/zonque/alsa-dsd-player
Thanks, Daniel
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
All patches look OK to me through a quick glance, so I'm going to apply them later, unless anyone has objection.
I'd like to wait for another day or so for Jussi to state his oppinion. He seems to be the only one on this list who has ever dealt with DSD on Linux, so we should listen to him ;)
Thanks, Daniel