Setting up a PC-based multichannel DSP system

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.

ra7

Member
Joined 2009
Paid Member
Hey guys, a quick update.

I was having trouble with variable delay during consecutive measurements through JRiver using Holm. I was using ASIO loopback in JRiver. The output of JRiver is the USBStreamer in ASIO mode.

The problem was that the offset in Holm was different even for consecutive measurements of the same driver. As a result, there was no way to do any crossover work, because you cannot get the relative phase between drivers.

When the output of JRiver is switched to WASAPI mode, however, the offset is more stable. I was getting a 5 to 6 sample offset for consecutive measurements. For example, if the first measurement offset was 32,000 samples, the next measurement, 1 minute later, would have an offset of 32,005 samples. Five samples at 44.1 kHz is 0.11 ms. Small and predictable.

Since resolving that problem, I have linearized the drivers and the phase in RePhase and developed a crossover. It all works very well. I must say that I am impressed by JRiver and it's interface. I'm sure Bodzio's UE is very competent and can achieve many of the same things I'm doing in one complete package. There are many options and many ways to accomplish a PC-based crossover. Many of them involve zero to little cost. This can only be good for us diyers.
 
"zero to little cost"

1. You need a capable multichannel DAC
2. You need 6 capable amps at least
3. You need 3*2 cabling
4. You need measurement equipment
5. You need knowledge
6. You need plenty of time and enthusiasm

and more...


I'm currently in the process to setup an active system myself.

There are tons of issues associated to the subject.

It's not a problem to get an average active system going.
To get a real good system going IMO is a major challenge.
I hope I'll manage after all those investments I've taken.

Enjoy.
 

ra7

Member
Joined 2009
Paid Member
Don't take it out of context man. I meant that there are several options to make a PC-based crossover work at zero to little cost. There are other ways to do a PC-based crossover system that can cost upwards of $1k. If you start buying software like Audiolense, and use pro soundcards, it can get pretty expensive. The USBStreamer is $100. I already had everything else, including amps and cables. Now, if you consider the other ways of building an active system, using for example the miniDSP Dirac units, or DEQX and other similar things, the incremental cost of a PC-based crossover system is next to nothing. Plus, there are virtually no limits on the number and type of filters.

Regarding points 4 through 6, they are applicable to all speaker design. If you don't like gaining new knowledge, and don't have enthusiasm, or if you don't have time, then you are limited to things that you can buy.
 
Hey guys, a quick update.

I was having trouble with variable delay during consecutive measurements through JRiver using Holm. I was using ASIO loopback in JRiver. The output of JRiver is the USBStreamer in ASIO mode.

The problem was that the offset in Holm was different even for consecutive measurements of the same driver. As a result, there was no way to do any crossover work, because you cannot get the relative phase between drivers.

When the output of JRiver is switched to WASAPI mode, however, the offset is more stable. I was getting a 5 to 6 sample offset for consecutive measurements. For example, if the first measurement offset was 32,000 samples, the next measurement, 1 minute later, would have an offset of 32,005 samples. Five samples at 44.1 kHz is 0.11 ms. Small and predictable.

Since resolving that problem, I have linearized the drivers and the phase in RePhase and developed a crossover. It all works very well. I must say that I am impressed by JRiver and it's interface. I'm sure Bodzio's UE is very competent and can achieve many of the same things I'm doing in one complete package. There are many options and many ways to accomplish a PC-based crossover. Many of them involve zero to little cost. This can only be good for us diyers.



Hi ra7,

I am not sure, that I understand your comments correctly, but assuming, that I do, I have the following to add.

I do not have any experience with Holm, but these timing problems seem to indicate, that Holm is a "single-channel" measurement system. Therefore, the PC internal timing processes manifest themselves as fluctuating IR position between consecutive measurements.

The 5 samples of error at 44.1kHz are actually 40deg phase error at 1kHz, or 90deg error at 2.2kHz or 180deg error at 4.41kHz. I certainly hope, that Holm has some settings or mechanism to deal with this problem, because it's not "small", and must be accounted for.

Single-channel measurement systems do not automatically correct for sound card and test amplifier amplitude and phase responses either, and you must remember, that phase response starts to deviate long before the SPL shows any deviations from flat.

UE has a "dual-channel" (measurement+reference) measurement system, where computer's internal timing issues are automatically eliminated and sound card and amplifier amplitude and phase responses are automatically corrected.

I have more comments, but prefer to deal with one issue at a time.

Best Regards,
Bohdan
 
What I havn't mentioned is the losses associated to digital filters and ususally "double" resampling.
And the measurement associated flaws that enter the process at the beginning do also have an impact.

Not to forget the usual limitations regarding higher samplerates and e.g. DSD/DxD.

Points 4.5.6 you need to add on top of classical speaker design knowledge.

Very often you'll depend on SW that you can't really influence.
You can influence that what the tool offers as features. And that's about it.
Obviously that's more then enough for most of us. One wrong setting and
your result goes down the drain.


Back to HW.

You don't seriously expect to get highest quality sound by using MiniDsp equipment, USB streamer or Hypex DSPs?? I'm not saying that you'd be much better off with DEQX stuff.


Since 2 months I'm trying to get a multichannel HW setup going, without
any filters in the loop, that can compete with my reference stereo setup.

I'll keep trying.

Enjoy.
 

ra7

Member
Joined 2009
Paid Member
I do not have any experience with Holm, but these timing problems seem to indicate, that Holm is a "single-channel" measurement system. Therefore, the PC internal timing processes manifest themselves as fluctuating IR position between consecutive measurements.

The 5 samples of error at 44.1kHz are actually 40deg phase error at 1kHz, or 90deg error at 2.2kHz or 180deg error at 4.41kHz. I certainly hope, that Holm has some settings or mechanism to deal with this problem, because it's not "small", and must be accounted for.

Single-channel measurement systems do not automatically correct for sound card and test amplifier amplitude and phase responses either, and you must remember, that phase response starts to deviate long before the SPL shows any deviations from flat.

UE has a "dual-channel" (measurement+reference) measurement system, where computer's internal timing issues are automatically eliminated and sound card and amplifier amplitude and phase responses are automatically corrected.

You may be right that Holm is a single channel measurement system. However, this has been sufficient in the past. When I was trying to find a solution to the timing problem, I ran a check using the output of the EMU soundcard directly into the amplifier. I got the exact same number of offset samples every single time. The addition of JRiver in Loopback mode produces the timing problem and Holm may have no way to account for it. I will check.

As for the phase, yes 5 samples in not insignificant in the HF. It worked for me because there is a passive crossover between the two KEF drivers. The small delay at 500 Hz has a smaller impact on phase. Besides, after flattening the phase and amplitude of individual drivers in rePhase and then measuring all drivers together with just the offset due to the convolution filter produced predictable response. Also, it is easy to manually adjust the offset in Holm.

I agree that this is not the cleanest solution though.
 

ra7

Member
Joined 2009
Paid Member
What I havn't mentioned is the losses associated to digital filters and ususally "double" resampling.
And the measurement associated flaws that enter the process at the beginning do also have an impact.

Not to forget the usual limitations regarding higher samplerates and e.g. DSD/DxD.

I'm not too worried about the effects of resampling. I'm satisfied if there are not gross distortions introduced by resampling. Good enough is good enough for me.

I believe JRiver can do DSD/DxD as well. But that is not a problem for me because I don't have any music in those formats nor do I plan to buy any in the near future. I'm quite satisfied with the bandwidth and headroom offered by 16/44.1.

You don't seriously expect to get highest quality sound by using MiniDsp equipment, USB streamer or Hypex DSPs?? I'm not saying that you'd be much better off with DEQX stuff.

There is absolutely nothing wrong with miniDSP's equipment. Noise may be an issue in some cases, but it can be reduced using proper gain structure.

To be honest, I think the quality of most DACs and ADCs out there is good enough. Nobody is going to willingly use poor quality parts in their design. I trust the miniDSP guys are doing their job well.

Besides, the main advantage in all of these active solutions is the control over loudspeakers. As much we like to believe that every component has an impact on sound, the reality is that loudspeakers are the primary sources of distortion. Anything you can do to improve the linearity (smoothness and flatness of the on and off-axis response) of loudspeakers is going to have an audible influence on the sound. Things like resampling filters, DACs, ADCs, even amplifiers to some extent have a secondary role in the sound, IMO. This is why I'm chasing a PC-based solution.

If it is important for you to have the best 'equipment' then maybe this is not the right option. I would challenge anyone who claims to hear differences in modern, well designed DACs, or even resampling filters to a blind listening test. The differences, if any, will be swamped by the performance of the loudspeakers.

What I can tell you though is that having this flexibility has definitely allowed me to audibly improve the sound of my system. At the same time, it is not just about active or passive. The drivers, the layout of the loudspeakers and the room is equally, if not more, important.
 

ra7

Member
Joined 2009
Paid Member
It's not unexplored anymore. I did it from zero experience to a full functional system within a month. There is lots of information as well as products, tutorials, guides, etc. It may not be easy, but with a little care you can get it right.
 
This thread has been very interesting last days! :)

I share many "point of views" of others here, but I really think that this system is a very capable system. It's limited by the software, like any other PC-Based system.
About hardware, my only question is regarding about the use of two (or more) USBStreamers together. But this issue, maybe it's only concerned to me, because I need more channels.

About software I would like to know if you can play 3D Blu-Ray through JRiver. Last time a tried I could not do it.
And if it's not possible, do you know is there is any way to send the sound from TMT5 or PowerDVD to JRiver ?
If not, any other method to play 3D Blu-Ray with a system like yours?

Very thanks and I wish all works very well for you.
 
'
You can use the loopback feature in MC to grab the audio sent to the Windows driver if you're using an external video sw. The only problem I have with that is huge lip sync issues when using convolution.

Very thanks for your reply natehansen66.

I will try it, but I'm thinking how MC loop-back works. Did MC creates a virtual audio card?

And for lip sync issues, did you test it with min-phase filters?
If you want linear or mixed-phase filters Powerdvd has an option to delay the video, have you tried it?

Edit:
Sorry I don't understand the meaning of "external video sw", maybe it's a stand alone player out of the PC and this is why I say so.
 
Last edited:
External software would be PowerDVD or the like......External to MC.

The loopback works by "grabbing" the audio stream sent to the Windows audio driver and processing it through MC's dsp. This way you can use MC to process any audio on your PC. No virtual driver used but I hear it's in the works.

I've never tried min phase filters with convolution.....I use the peq for that but I'm sure latency issues would be more manageable. I played with the delay in media payer classic while using linear phase convolution but I could never get it right.
 

ra7

Member
Joined 2009
Paid Member
Interesting thoughts guys. I haven't yet reached the point of playing video through the system. Regarding more channels, again, I haven't got to that point yet. But I believe the development team at miniDSP said that you can combine two USBStreamers to function as one soundcard under Windows.

The loopback through JRiver has been problematic for me. It works fine when playing music or sweeping an entire loudspeaker. But it has severe latency issues. Even with convolution disabled, its latency varies with time. For measurements, I ended up measuring the raw response and convolving the filter response in Holm. So, the steps are:
1. Measure raw driver response bypassing JRiver and USBStreamer altogether. Capture relative phase between drivers.
2. Import raw response in rePhase. Create filters. Export filter response from rePhase as .txt file.
3. Import filter into Holm.
4. Convolve to see the final response in Holm (C = A*B).

Then after you've got the amplitude and phase for all drivers lined up correctly in Holm, set up JRiver and do a final sweep with all drivers playing and see if it matches up. It usually does.
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.