On 05.04.2013 22:53, Jussi Laako wrote:
On 04/05/2013 10:59 PM, Andreas Koch wrote: However, they are interpreting the ASIO spec for DSD differently. They express buffer size in samples, which means that for DSD it is measured in bits.
One more thing.. So the logic should go like this:
DSD sample -> 1-bit -> sample rates in bits per second -> buffer and latency sizes in bits.
...or...
DSD sample -> 8-bit -> sample rates in bytes per second -> buffer and latency sizes in bytes.
But please, please, don't mix bits and bytes in the API, always use only either of these.
Well, we don't care for the ASIO spec of course, as we do not share any compatibility layer with them. So we can define whatever we think is useful and consistent.
All audio formats are specified in *bytes* for sample and buffer sizes, so we will also keep it that way for DSD. Plus, that way we do not have to fiddle with sample rate translations but always keep the hardware state in sync to the user space API. Everything will end in utter confusion at some point.
I will, however, add 'DOP' to the data type names, so it's clear that the application stack has to deal with the padding bytes.
I'll send out new patches in a minute.
Thanks, Daniel