• WANTED: Happy members who like to discuss audio and other topics related to our interest. Desire to learn and share knowledge of science required. There are many reviews of audio hardware and expert members to help answer your questions. Click here to have your audio equipment measured for free!

Reasonably priced good quality 6 or 8 channel USB DAC?

Good points @JustIntonation.

And of course, you're spot on with this, at least in theory:
...a single device with multiple DACs all running from the same clock will more likely be OK as well compared to using several stereo DACs for multichannel audio.

Do you know of any attempts to measure clock drift in typical devices? Is drift of one whole sample between two identical clocks plausible? I'd be very interested to see how much of a problem this might actually be.

In terms of inter-channel differences, one sample would definitely be audible with headphones - not sure about loudspeakers, but would be inclined to agree with you that it probably wouldn't (used to know the answer but can't remember now where I read it).

The only thing I'm sceptical of are the subjective claims about Hypex plate amps. People will hear what they want to hear / think they should be able to hear when listening in an uncontrolled environment. This is not to say the claims are wrong, but these are the kinds of subjective statements I'd treat with caution...
 
Good points @JustIntonation.

And of course, you're spot on with this, at least in theory:


Do you know of any attempts to measure clock drift in typical devices? Is drift of one whole sample between two identical clocks plausible? I'd be very interested to see how much of a problem this might actually be.

In terms of inter-channel differences, one sample would definitely be audible with headphones - not sure about loudspeakers, but would be inclined to agree with you that it probably wouldn't (used to know the answer but can't remember now where I read it).

The only thing I'm sceptical of are the subjective claims about Hypex plate amps. People will hear what they want to hear / think they should be able to hear when listening in an uncontrolled environment. This is not to say the claims are wrong, but these are the kinds of subjective statements I'd treat with caution...

I don't know of examples, but if left "unchecked" I'm pretty sure any 2 clocks in the world will eventually be apart by hours/days/years. So it seems to me it is more about how clocks are "checked" periodically reset, syncing etc. But I'm really out of my knowledge here, I'm just following logic based on my limited understanding of things.

Please see my edit regarding the one sample difference.
I think that in my future speakers / listening environment it is even more critical than with headphones so I think it depends on what the listening situation is. (often normal hifi home listening doesn't even have much of a center image to start with..)

And agreed user quotes are indeed to be treated with great caution. And not giving Hypex a bad name, for sure they are one of the highest quality audio equipment producers. And even the Grimm LS1 uses the same scheme as used in the Hypex Fusion plate amps. Well that one certainly got enough glowing reviews.
 
I had a discussion with a digital engineer, and he said that using his stereo DACs on a multi channel system would work fine - any clock differences would be incredibly small, in the nanoseconds.

In order to be audible the timing difference would need to be in the milliseconds - that would then change how the crossover worked. There are many orders of magnitude difference between nano and milli.

That said, I think that having a single clock is still a much more elegant solution, both technically and to reduce box count and cabling!
 
I don't know of examples, but if left "unchecked" I'm pretty sure any 2 clocks in the world will eventually be apart by hours/days/years. So it seems to me it is more about how clocks are "checked" periodically reset, syncing etc.

That's true of course in theory. But if a clock has theoretically drifted 1 hour following 1 year of operation, it will not insert a one hour delay before clocking a new block of data.

So my thinking (and I'm also admittedly out of my depth here) is that you need to consider how far the clocks may drift from each other between buffers of the datastream (apologies for the probably technically incorrect wording).

I'm not sure how significant a drift might be in this context. I've heard 50ppm = approx. 2.4 samples/second = approx. 0.05 ms/s given as a typical timebase drift for an average oscillator. That seems like something that could be audible if the datastream is buffered less frequently than about once per 0.2 seconds (based on an inter-aural time difference audibility threshold of 0.01 ms).

Could someone who's better informed on these topics fix up all the errors in my reasoning please? :)
 
The miniDSP USBstreamer is supposed to mate with the DAC8. In the diyaudio.com thread they report using it for testing.
This is the configuration they should send to Amir for testing.

If 24/192kHz PCM is all you need I agree that the miniDSP USBStreamer is the way to go. The Singxer may very well be overkill for the Okto DAC8.


1540818192380.png
 
On the other hand the USBstreamer let you use 8 channels, which is important here.
 
I had a discussion with a digital engineer, and he said that using his stereo DACs on a multi channel system would work fine - any clock differences would be incredibly small, in the nanoseconds.

In order to be audible the timing difference would need to be in the milliseconds - that would then change how the crossover worked. There are many orders of magnitude difference between nano and milli.

That said, I think that having a single clock is still a much more elegant solution, both technically and to reduce box count and cabling!
I think the engineer is mistaken here about the crossover.
I'm sure 1 sample at 44.1 kHz is enough to make an audible difference for for instance a 3kHz 12dB/oct Butterworth crossover. I did testing earlier with crossovers and at which angle phasing becomes audible and could give rough calculations when it would become audible at different filter slopes at different frequencies and different listening angles and different crossover topologies. But I'm sure in the above case it would be audible at 1 sample (perhaps quite a bit earlier even).
I've tested myself that for even a 2kHz 24dB/oct Linkwitz-Riley on-axis listening crossover to become audible the time difference needs to be only 0.06 millisecond. For the other example above it is at least 10 times more sensitive so about 0.006 millisecond deviation would be enough to become an audible difference (under ideal critical listening conditions).
Realize that even for a fairly low 2000 Hz crossover frequency the time for full cancellation is half the wavelength. Since 2000 Hz means 2000 times per second which is once per 0.5 millisecond, then half wavelength is 0.25 millisecond (to give full cancellation axis of the 2000Hz crossover).
Btw, one sample at 44.1kHz is 1second / 44100 = ~0.002 milliseconds. Oops.. made an error before apparently, this is not yet audible at normal mid-tweeter crossovers. Would only be audible in the higher treble when running 2 tweeters off by this much..
 
If 24/192kHz PCM is all you need I agree that the miniDSP USBStreamer is the way to go. The Singxer may very well be overkill for the Okto DAC8.


View attachment 16977

Yes, MiniDSP USBStreamer is first choice right now :)
I had a bit of a look at the NanoSHARC as well but it has an asynchronous resampler also for the USB input and this ASRC doesn't seem to be very good, set at 96kHz which as far as I understand is bad engineering which should give audible artifacts with at least 48kHz 96kHz 192kHz.
Don't really trust the USBStreamer when it comes to jitter and it doesn't have isolation from the computer, but as far as jitter is concerned I believe this should be taken care of by the ES9028 chip of the Okto DAC8 in default i2s slave mode.
I'll send an email to Okto Research that I wish to order a board and which USB to i2s interface they can recommend.
 
I'll send an email to Okto Research that I wish to order a board and which USB to i2s interface they can recommend.
So have I. They have not been very helpful about a multichannel interface board.
Can't find much info on the Singxer. Does this support 8channel USB to i2s? Is there an ASIO driver supplied with it as well?
Not much info indeed even in the user's manual.
 
Btw, one sample at 44.1kHz is 1second / 44100 = ~0.002 milliseconds. Oops.. made an error before apparently, this is not yet audible at normal mid-tweeter crossovers. Would only be audible in the higher treble when running 2 tweeters off by this much..

I calculate it at a bit over 0.02 ms:

1 / 44,100 = 0.0000227
*1000
= 0.027

So I think your original calculation of 0.02 ms was about right.

Or am I making a stupid mistake here?

A conservative figure for audibility of inter-aural delay is around 10 microseconds = 0.01 ms. And that’s about the same amount of time difference that might start being audible between drivers in a crossover (like you first estimated).

The question I think is whether a timing difference of that magnitude between decent identical DACs is likely going to happen in the first place...
 
I calculate it at a bit over 0.02 ms:

1 / 44,100 = 0.0000227
*1000
= 0.027

So I think your original calculation of 0.02 ms was about right.

Or am I making a stupid mistake here?

A conservative figure for audibility of inter-aural delay is around 10 microseconds = 0.01 ms. And that’s about the same amount of time difference that might start being audible between drivers in a crossover (like you first estimated).

The question I think is whether a timing difference of that magnitude between decent identical DACs is likely going to happen in the first place...
Haha thanks, no you're right and I was right too before messing it up :)
Oh and is that really a figure for audibility of inter aural delay? That's interesting. And another reason to get it very tight on the DAC side for imaging as well.
I think that much smaller values are audible as well under special test circumstances if the drift were to persist, take for instance 2 unfiltered saw waves at even 100Hz, if they very slowly drift apart it is audible as at one point they'll cancel but it's audible long before that when very high harmonics start to cancel. Perhaps the inter aural delay of 10 microseconds corresponds to a 3dB reduction at around 10kHz or something which seems reasonable. 1000milliseconds / 10000Hz / 8 = 0.0125 yep that's in the ballpark.

If this timing difference is going to happen depends on the way those specific DACs work it seems to me. Can't help much there. And then it also matters for how long this error is there it seems to me. I think it's pretty certain this timing error will be there between 2 Fusion plate amps, but it will be there for only about max 1 sample of the ASRC and then there's another error for the next sample. The average error should however be around 0.01 milliseconds.. So if the average error matters here it is perhaps borderline audible, very slightly degrading for imaging / the center image. Don't know if it'll be the case but in theory it isn't impossible.
edit: hmm you could also say is moving your head about a cm audible for imaging. It is under very critical listening conditions. Seems like with 2 Fusion plate amps this is about what is happening all the time, moving your head 1cm at crazy speeds. Why did they design it like this then? I think they didn't have much of a choice at this price point for plate amps. They have to have ASRC for the DSP to run at a specific sample rate, they have to have everything in one plate for multichannel 7.1 setups etc, it's not yet cheap to sync the ASRC clocks of different plates (will surely be in the future), and it's too expensive to get an ASRC that runs at very high sample rates to reduce the error. Actually perhaps that would have been possible at a slight extra cost and then do a synchronous downsample for the DSP, don't know. edit2: nope being stupid again, the whole DSP and DACs would have to work at a higher sample rate or you'll re-introduce the higher error by downsampling so they didn't really have another option at this price point for a plate amp with DSP.
 
Last edited:
You can test for your own audibility threshold using a DAW. I'm gonna try this later when I have a chance actually. My idea is to use two identical mono signals in two separate DAW channels, one panned hard left and the other hard right, then automate one to drift slowly from 0.00 ms to say 0.02 ms. Ideally you would do this blind... Still thinking through how to arrange that - the only way I can think of is with someone else's help.

Anyway I've just done a simpler version of this (without the drift), setting up the two identical music signals and creating fixed differences of 0.01 ms and then 0.02 ms. To my ears, 0.02 ms is clearly audible (presents as a slight shift in the image centre), whereas I'm not sure whether I can hear an 0.01 ms difference (need to blind test to find out). I suspect maybe I can with some signals. This is with a sample of music and headphones, which has to be a worst-case scenario because:
  • the drivers are held at a fixed distance from the ears (this is impossible with speakers due to constant unintentional head movement e.g. as a result of breathing)
  • there is no reverberation
I think it's pretty certain this timing error will be there between 2 Fusion plate amps, but it will be there for only about max 1 sample of the ASRC and then there's another error for the next sample. The average error should however be around 0.01

I'm not sure what you based your figures of 1 sample / ASRC and 0.01 ms average on for this particular unit - could you explain?

They have to have ASRC for the DSP to run at a specific sample rate, they have to have everything in one plate for multichannel 7.1 setups etc, it's not yet cheap to sync the ASRC clocks of different plates (will surely be in the future), and it's too expensive to get an ASRC that runs at very high sample rates to reduce the error. Actually perhaps that would have been possible at a slight extra cost and then do a synchronous downsample for the DSP, don't know. edit2: nope being stupid again, the whole DSP and DACs would have to work at a higher sample rate or you'll re-introduce the higher error by downsampling so they didn't really have another option at this price point for a plate amp with DSP.

Yep, agree, it must have been deemed too expensive / not worth it. The solution would have been to include an AES3 word clock input I would have thought.
 
I'm not sure what you based your figures of 1 sample / ASRC and 0.01 ms average on for this particular unit - could you explain?
Cool test :)
I'm going for the Okto DAC8 for sure btw. Sent them an email how much a pre-build (they offer this I read) costs including volume control of the ES9028 and USBStreamer built in, if too much I'll build it myself. (but won't be as neat as I'm sure I won't do holes very neatly in a metal case :) )

For the Fusion plate amps I calculated as follows.
It has an ASRC running at 93kHz (93 something actually). If the incoming spdif is at 44.1kHz arriving simulateously at both plates (as I was told is the case with linking the plates, no delay) then we have one ASRC running freely at 93kHz in one plate and a completely unsynced ASRC running free at 93kHz at the other plate. Now there is no way these two plates will go magically in sync by themselves so they will go from being accidently in sync to being exactly out of sync and everything inbetween. It doesn't even matter much how fast they will do this as we'll see.
If the next sample of the 44.1kHz spdif has arrived at both plates, then we will have the situation that at that same moment the ASRC of one plate is sampling the new value, while the other plate has just sampled the old value right before it switched. So at that moment in time the ASRC of one plate has the new value and the other plate has the old value. It takes a maximum of 1 sample at 93kHz for the other plate to catch up and also sample the new value, so the plates are off for 1 second / 93,000. This doesn't last though as the next sample spdif sample is not synchronous with the ASRC and a new ofset is there relative to the ASRC's and the spdif sample rate. But the plates can be off by a max of 1/93,000 seconds, and this goes both ways so they have a range of being off by +- 1/93,000 which is 1/46,500 or so which is about 0.0215 millisecond. The average error is half this.
 
Well, my suggestion is the OPPO UDP-205. And it's done for everything. Blue-ray, Stereo, Multi-channel, and SACD Multi-channel!
 
Well, my suggestion is the OPPO UDP-205. And it's done for everything. Blue-ray, Stereo, Multi-channel, and SACD Multi-channel!
1800 Euro here in the Netherlands.. Not really an option for me.
Okto DAC8 + Okto PSU + USBStreamer = total of about 675 Euro + case.
 
Cool test :)
I'm going for the Okto DAC8 for sure btw. Sent them an email how much a pre-build (they offer this I read) costs including volume control of the ES9028 and USBStreamer built in, if too much I'll build it myself. (but won't be as neat as I'm sure I won't do holes very neatly in a metal case :) )

Good choice of DAC I think :)

If the next sample of the 44.1kHz spdif has arrived at both plates, then we will have the situation that at that same moment the ASRC of one plate is sampling the new value, while the other plate has just sampled the old value right before it switched. So at that moment in time the ASRC of one plate has the new value and the other plate has the old value. It takes a maximum of 1 sample at 93kHz for the other plate to catch up and also sample the new value, so the plates are off for 1 second / 93,000.

I'm not sure about your assumptions re: the sync error though. Let's start with the assumption that the two clocks are in sync at 44.1KHz as is apparently the case when the plates are linked.

In this case, the oscillators in each plate begin switching at the same moment each time they receive a new 44.1KHz sample via SPDIF, and the average difference between them will be calculable with reference to their average drift per incoming sample.

If their drift is reasonably low (for argument's sake let's assume that figure of 50 ppm), their average drift will also be extremely low, as 50 ppm would translate into an average error 0.05 ms/second. Divide this by 1/44,100 and you get roughly 0.00000134 ms.

...I think ;)

And again, sorry I know this is very off-topic here...
 
Good choice of DAC I think :)



I'm not sure about your assumptions re: the sync error though. Let's start with the assumption that the two clocks are in sync at 44.1KHz as is apparently the case when the plates are linked.

In this case, the oscillators in each plate begin switching at the same moment each time they receive a new 44.1KHz sample via SPDIF, and the average difference between them will be calculable with reference to their average drift per incoming sample.

If their drift is reasonably low (for argument's sake let's assume that figure of 50 ppm), their average drift will also be extremely low, as 50 ppm would translate into an average error 0.05 ms/second. Divide this by 1/44,100 and you get roughly 0.00000134 ms.

...I think ;)

And again, sorry I know this is very off-topic here...
No that isn't how ASRC works. There is no relation of the ASRC clocks to the incoming spdif signal at all.
The ASRC clocks are completely free running clocks not synced to anything not starting at any specific time or anything like that. Just completely free running clocks which are never reset. It doesn't matter either what sample rate comes in through spdif. It could be 44.1, 48, whatever kHz the ASRC doesn't matter it just does its own thing, sampling according to it's own clock of 93kHz whatever is at the input at that moment of time. (I mean, the ASRC doesn't even know at which point exact the spdif input value changes, it will only know this when it takes another sample of the input according to its own sample rate of 93kHz)

Btw, I don't mind threads going off-topic at all myself :)
 
No that isn't how ASRC works. There is no relation of the ASRC clocks to the incoming spdif signal at all.
The ASRC clocks are completely free running clocks not synced to anything not starting at any specific time or anything like that. Just completely free running clocks which are never reset. It doesn't matter either what sample rate comes in through spdif. It could be 44.1, 48, whatever kHz the ASRC doesn't matter it just does its own thing, sampling according to it's own clock of 93kHz whatever is at the input at that moment of time. (I mean, the ASRC doesn't even know at which point exact the spdif input value changes, it will only know this when it takes another sample of the input according to its own sample rate of 93kHz)

Btw, I don't mind threads going off-topic at all myself :)

Ok, that's good to know, thanks :)

PS. I've been trying to find some articles on ITD audibility but now I can't remember where I read the research. I think it may have actually been in a book. If I find anything I'll send it your way...
 
Ok, that's good to know, thanks :)

PS. I've been trying to find some articles on ITD audibility but now I can't remember where I read the research. I think it may have actually been in a book. If I find anything I'll send it your way...
Aah thanks but for me not needed. I've already decided upon a single multichannel DAC.
My speaker build is not a theoretical thing for me, only do theory when it is needed for coming to the right design I'm lazy otherwise :)
 
Back
Top Bottom