Using two soundcards at the same time?

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
That explains why some VIA soundcard support MClock from SPDIF-in

JJKXC95.png
 
Is an offset clock such a big (audible) problem?


@Markw4: Do you really think, that for example this soundcard (Creative Sound Blaster Z PCIe - Bulk) sounds bad in way you can hear it?

Yes, I'm sure. I have done a lot of work with DACs and actually have a number of different ones here. They all sound different, mostly in terms of distortion. Some people would say listening fatigue, but it's distortion. There are various kinds of distortion too, some linear, some easily quantifiable non-linear, and some more difficult to pin down in that they depend on certain particulars, such as clock jitter distortion. Some of the better DACs may let the user select from a choice of reconstruction filters. Why? Because they are all audible. Some pre-ring, some allow aliasing. Take your pick. There are ways to fix that but they get complex and expensive. The best DAC here is a Benchmark DAC-3 which is audibly superior to the others.

Regarding clock synchronization, if using different clocks you probably wouldn't notice a problem for awhile. Maybe a few minutes, hours, a day, whatever. Eventually they will be out of time with each other with one playing sound before the other because one clock finally got audibly ahead of the other. With cheap sound card clock years ago it could be a problem by the end of one song. Presumably they are better now and it would take longer.

It's not a problem with ESS Sabre based DACs or if there is an ASRC before the DAC and you drive it with, say, SPDIF or TOSLINK. In that case the ASRC will adjust the clock rate to match the DAC clock and the sound will play at the rate you send it to the DAC. That is probably a better solution than a central clock in that clock signals tend to pick up timing noise which results in jitter at the receiving end. It can be done, such as using Word Clock, with clock recovery using PLLs, but PLLs are difficult or impossible to get to to perform at a level good enough to compete with the best low-jitter crystal clocks.

If you think about jitter, sampling theory assumes samples are equally spaced along the time axis. So, we mostly study what happens with the amplitude axis. But errors in either axis put the sample points in the wrong place in the time-amplitude plane and cause distortion. What happens with most clocks is the frequency averages out to be the very stable over a few minutes or an hour, but from cycle to cycle there can be a lot of phase noise and that is where the problems arise.
 
Last edited:
Are the DACs in soundcards so much worse than the ones in mid level AVRs?

Couldn't say, don't follow that stuff.

I do know that doing an ES9038Q2M mobile dac the way ESS says is best can produce pretty good sound but it isn't cheap to do. It takes ultra-clean power supplies with pre-regulation before final regulation, ultra-low jitter clocking, proper power pin bypassing for opamps and other ICs, C0G caps and quality thin film resistors in signal path, and very careful PCB layout.

That's for a simple no-frills reasonably clean dac. It helps to upsample a bit higher than the highest playback sample rate and use a Sharc chip for interpolation filtering, but even if those things are skipped it adds up cost.

ESS would have the builder use a lot of AD797 opamps at $10 each. Turns out LME49720 are good enough, but nothing less than that. Most implementations cut too many corners. The reality is products are built to a price point and most buyers will go for more bells and whistles type features over improved sound quality. Seems there is very little market for low-cost, high-sound quality, otherwise no-frills DACs. As a result to only top of the line equipment gets decent data converters. Don't know what to do about that. I have been helping people mod some cheap stereo Chinese DACs into pretty high performing units, but it is a lot of work to do just one.
 
Another vote for Voicemeeter Banana. I've been using it for some time now.
It's 8 channels per soundcard. You can also route audio to an external controller in addition to this. There is also a system to route audio via network protocol for multi-room solutions.

One of the cheapest solutions for good quality sound is the Sound BlasterX AE-5. I know there is a lot of prejudice towards Creative, but this soundcard utilizes the ESS ES9016K2M and it's probably one of the very few soundcards they have made that are actually good.
Sound BlasterX AE-5 Review: An Uncompromising Gaming Sound Card For Audiophiles | HotHardware
 
Last edited:
Eventually they will be out of time with each other with one playing sound before the other because one clock finally got audibly ahead of the other.

Actually, the problem is not about one soundcard getting audibly ahead of the other. It is about the player which outputs all channels samples at the same time, while soundcards consume their corresponding streams at different rates. After some time the buffer in between for each card overflows/underflows and that card or the whole chain will get stuck. Unless properly accounted for.

It's not a problem with ESS Sabre based DACs or if there is an ASRC before the DAC and you drive it with, say, SPDIF or TOSLINK. In that case the ASRC will adjust the clock rate to match the DAC clock and the sound will play at the rate you send it to the DAC.

Still you need to create that multichannel SPDIF signal from the PC through some audio interface.
 
E: if that banana software is designed to run multiple soundcards, shouldn't it do the synchronization for you (so no hardware mod is required)?

From Banana UG:
Output A1, A2 and A3 are not exactly synchronized. On Voicemeeter every i/o are independent and we can hear more or less delay between them, especially when using 3 audio outputs: if A1,A2 and/or A2 are routed to 2 or 3 audio devices, the sound might be not exactly synchronized (one speaker output can be late and produce a small echo with other speaker output). This is normal (according technical constraint) but can be corrected by compensate one audio output with a delay line (see System Settings Dialog Box).
 
@Mark: But the earlier mentioned prices are out of my reach, so I have to go with smth cheaper. What I have a hard time believing: Are the DACs in soundcards so much worse than the ones in mid level AVRs?


...

Since its just for crossover use, don't worry 'bout those quality matters they are now confusing you with (speakers are usually crap compared to soundcards).

To keep the crossover system simple just get one audio interface with enough analog outputs so you don't need to fight with sync issues.
 
It can be. Saw it happen before. Each card had its own driver and buffers. Application was also designed to work with multiple cards. But, sure, if a shared buffer then it could happen as you describe.

Of course each card has its own buffer (it reads data via DMA from the buffer), the system must split the incoming multichannel stream into corresponding buffers for each soundcard. For DAW these buffers are small (single milliseconds) to avoid large latency.

If an application was intended to work with multiple cards with independent clocks and did not provide any form of adaptive clock synchronization, it was simply faulty.
 
To keep the crossover system simple just get one audio interface with enough analog outputs so you don't need to fight with sync issues.
But the reason for this topic is the fact, that I couldn't find an affordable one with enough outputs...

Of course I can look out for the suggestions, but I have to buy them used. And currently no one is selling (here in Germany).

Or I go with phofman's suggestion: " pulseaudio, alsasink of gstreamer, netjack for jackd"

Those should be able to synchronize I assume. What kind of DSP Software do you use @phofman?
 
If this is for a speaker crossover then sound quality it just as critical as for any audio output. You will be listening to what comes out, right? Also, if using the computer as a sound source, there is no reason to use analog inputs. Better to use digital inputs and skip the extra distortion from too many repeated data conversions. A sound card with 10 outputs that stay synchronized together is only available in professional recording interfaces. It could have 10 inputs too, but better not use analog inputs if you don't have to. Of course if you have 10 outputs from a digital speaker crossover you would also need 10 power amplifier channels, which is a total of 5 stereo amplifiers. How to afford that?
 
Good point Mark, but I already own the amplifiers :) They cost me ~700 $ total over the years (bought used class-d amps from private persons).

On the second page you wrote:
That still costs around $500 - $1,000 per channel for DAC only,
That is in no relation to the amplifier cost :)

The input thing might have been a misunderstanding. I don't want an analog input.

The perfect solution for me would be either a pcie or USB/firewire soundcard with 10 outputs that I can rout any (digital) input channels to.
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.